@alfresco/adf-content-services 8.1.0-15902121227 → 8.1.0-15972188736
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/adf-content-services.mjs +808 -829
- package/fesm2022/adf-content-services.mjs.map +1 -1
- package/lib/new-version-uploader/new-version-uploader.dialog.scss +1 -1
- package/lib/upload/components/base-upload/upload-base.d.ts +1 -1
- package/package.json +4 -6
- package/esm2022/adf-content-services.mjs +0 -5
- package/esm2022/lib/agent/index.mjs +0 -18
- package/esm2022/lib/agent/public-api.mjs +0 -18
- package/esm2022/lib/agent/services/agent.service.mjs +0 -60
- package/esm2022/lib/alfresco-icon/alfresco-icon.component.mjs +0 -27
- package/esm2022/lib/api-factories/alfresco-api-no-auth.service.mjs +0 -42
- package/esm2022/lib/api-factories/alfresco-api-v2-loader.service.mjs +0 -77
- package/esm2022/lib/api-factories/index.mjs +0 -18
- package/esm2022/lib/api-factories/public-api.mjs +0 -19
- package/esm2022/lib/aspect-list/aspect-list-dialog-data.interface.mjs +0 -18
- package/esm2022/lib/aspect-list/aspect-list-dialog.component.mjs +0 -78
- package/esm2022/lib/aspect-list/aspect-list.component.mjs +0 -140
- package/esm2022/lib/aspect-list/aspect-list.module.mjs +0 -35
- package/esm2022/lib/aspect-list/index.mjs +0 -18
- package/esm2022/lib/aspect-list/public-api.mjs +0 -24
- package/esm2022/lib/aspect-list/services/aspect-list.service.mjs +0 -83
- package/esm2022/lib/aspect-list/services/dialog-aspect-list.service.mjs +0 -86
- package/esm2022/lib/aspect-list/services/node-aspect.service.mjs +0 -52
- package/esm2022/lib/auth-loader/content-auth-loader-factory.mjs +0 -26
- package/esm2022/lib/auth-loader/content-auth-loader.service.mjs +0 -42
- package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +0 -167
- package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +0 -35
- package/esm2022/lib/breadcrumb/dropdown-breadcrumb.component.mjs +0 -66
- package/esm2022/lib/breadcrumb/index.mjs +0 -18
- package/esm2022/lib/breadcrumb/public-api.mjs +0 -20
- package/esm2022/lib/category/categories-management/categories-management-mode.mjs +0 -22
- package/esm2022/lib/category/categories-management/categories-management.component.mjs +0 -309
- package/esm2022/lib/category/category.module.mjs +0 -33
- package/esm2022/lib/category/index.mjs +0 -18
- package/esm2022/lib/category/models/category-node.interface.mjs +0 -18
- package/esm2022/lib/category/public-api.mjs +0 -23
- package/esm2022/lib/category/services/category-tree-datasource.service.mjs +0 -80
- package/esm2022/lib/category/services/category.service.mjs +0 -159
- package/esm2022/lib/common/events/file.event.mjs +0 -46
- package/esm2022/lib/common/index.mjs +0 -18
- package/esm2022/lib/common/interfaces/saved-search.interface.mjs +0 -18
- package/esm2022/lib/common/interfaces/search-configuration.interface.mjs +0 -18
- package/esm2022/lib/common/mocks/ecm-user.service.mock.mjs +0 -37
- package/esm2022/lib/common/models/allowable-operations.enum.mjs +0 -30
- package/esm2022/lib/common/models/ecm-company.model.mjs +0 -19
- package/esm2022/lib/common/models/ecm-user.model.mjs +0 -45
- package/esm2022/lib/common/models/file.model.mjs +0 -53
- package/esm2022/lib/common/models/node-metadata.model.mjs +0 -23
- package/esm2022/lib/common/models/permissions.enum.mjs +0 -32
- package/esm2022/lib/common/public-api.mjs +0 -37
- package/esm2022/lib/common/services/card-view-content-update.service.mjs +0 -55
- package/esm2022/lib/common/services/content.service.mjs +0 -180
- package/esm2022/lib/common/services/discovery-api.service.mjs +0 -79
- package/esm2022/lib/common/services/favorites-api.service.mjs +0 -84
- package/esm2022/lib/common/services/nodes-api.service.mjs +0 -251
- package/esm2022/lib/common/services/people-content.service.mjs +0 -138
- package/esm2022/lib/common/services/rendition.service.mjs +0 -270
- package/esm2022/lib/common/services/saved-searches.service.mjs +0 -206
- package/esm2022/lib/common/services/sites.service.mjs +0 -243
- package/esm2022/lib/common/services/upload.service.mjs +0 -391
- package/esm2022/lib/content-metadata/components/content-metadata/content-metadata-header.component.mjs +0 -55
- package/esm2022/lib/content-metadata/components/content-metadata/content-metadata.component.mjs +0 -491
- package/esm2022/lib/content-metadata/components/content-metadata-card/content-metadata-card.component.mjs +0 -129
- package/esm2022/lib/content-metadata/content-metadata.module.mjs +0 -36
- package/esm2022/lib/content-metadata/index.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/aspect-oriented-config.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/card-view-group.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/content-metadata-config.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/content-metadata-custom-panel.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/content-metadata-panel.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/content-metadata.interfaces.mjs +0 -28
- package/esm2022/lib/content-metadata/interfaces/indifferent-config.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/layout-oriented-config.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/organised-property-group.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/preset-config.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/property-group.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/interfaces/property.interface.mjs +0 -18
- package/esm2022/lib/content-metadata/public-api.mjs +0 -31
- package/esm2022/lib/content-metadata/services/basic-properties.service.mjs +0 -107
- package/esm2022/lib/content-metadata/services/config/aspect-oriented-config.service.mjs +0 -106
- package/esm2022/lib/content-metadata/services/config/content-metadata-config.factory.mjs +0 -76
- package/esm2022/lib/content-metadata/services/config/indifferent-config.service.mjs +0 -40
- package/esm2022/lib/content-metadata/services/config/layout-oriented-config.service.mjs +0 -108
- package/esm2022/lib/content-metadata/services/config/property-group-reader.mjs +0 -33
- package/esm2022/lib/content-metadata/services/content-metadata.service.mjs +0 -99
- package/esm2022/lib/content-metadata/services/content-type-property.service.mjs +0 -134
- package/esm2022/lib/content-metadata/services/property-descriptors.service.mjs +0 -52
- package/esm2022/lib/content-metadata/services/property-groups-translator.service.mjs +0 -169
- package/esm2022/lib/content-node-selector/content-node-dialog.service.mjs +0 -256
- package/esm2022/lib/content-node-selector/content-node-selector-panel/content-node-selector-panel.component.mjs +0 -618
- package/esm2022/lib/content-node-selector/content-node-selector-panel/content-node-selector-panel.service.mjs +0 -66
- package/esm2022/lib/content-node-selector/content-node-selector.component-data.interface.mjs +0 -18
- package/esm2022/lib/content-node-selector/content-node-selector.component.mjs +0 -206
- package/esm2022/lib/content-node-selector/content-node-selector.module.mjs +0 -50
- package/esm2022/lib/content-node-selector/index.mjs +0 -18
- package/esm2022/lib/content-node-selector/name-location-cell/name-location-cell.component.mjs +0 -48
- package/esm2022/lib/content-node-selector/public-api.mjs +0 -25
- package/esm2022/lib/content-node-selector/site-dropdown/sites-dropdown.component.mjs +0 -168
- package/esm2022/lib/content-node-share/content-node-share.dialog.mjs +0 -288
- package/esm2022/lib/content-node-share/content-node-share.directive.mjs +0 -102
- package/esm2022/lib/content-node-share/content-node-share.module.mjs +0 -35
- package/esm2022/lib/content-node-share/content-node-share.settings.mjs +0 -18
- package/esm2022/lib/content-node-share/index.mjs +0 -18
- package/esm2022/lib/content-node-share/public-api.mjs +0 -22
- package/esm2022/lib/content-node-share/services/shared-links-api.service.mjs +0 -83
- package/esm2022/lib/content-type/content-type-dialog.component.mjs +0 -58
- package/esm2022/lib/content-type/content-type-metadata.interface.mjs +0 -18
- package/esm2022/lib/content-type/content-type.service.mjs +0 -52
- package/esm2022/lib/content-type/index.mjs +0 -20
- package/esm2022/lib/content.module.mjs +0 -277
- package/esm2022/lib/dialogs/category-selector/category-selector.dialog.mjs +0 -52
- package/esm2022/lib/dialogs/dialog.module.mjs +0 -52
- package/esm2022/lib/dialogs/download-zip/download-zip.dialog.mjs +0 -111
- package/esm2022/lib/dialogs/download-zip/download-zip.dialog.module.mjs +0 -38
- package/esm2022/lib/dialogs/download-zip/services/download-zip.service.mjs +0 -66
- package/esm2022/lib/dialogs/folder/folder-name.validators.mjs +0 -44
- package/esm2022/lib/dialogs/folder/folder.dialog.mjs +0 -147
- package/esm2022/lib/dialogs/index.mjs +0 -18
- package/esm2022/lib/dialogs/library/library.dialog.mjs +0 -225
- package/esm2022/lib/dialogs/node-lock/node-lock.dialog.mjs +0 -116
- package/esm2022/lib/dialogs/public-api.mjs +0 -25
- package/esm2022/lib/directives/auto-focus.directive.mjs +0 -38
- package/esm2022/lib/directives/check-allowable-operation.directive.mjs +0 -126
- package/esm2022/lib/directives/content-directive.module.mjs +0 -75
- package/esm2022/lib/directives/index.mjs +0 -18
- package/esm2022/lib/directives/library-favorite.directive.mjs +0 -119
- package/esm2022/lib/directives/library-membership.directive.mjs +0 -202
- package/esm2022/lib/directives/node-counter.directive.mjs +0 -60
- package/esm2022/lib/directives/node-delete.directive.mjs +0 -177
- package/esm2022/lib/directives/node-download.directive.mjs +0 -138
- package/esm2022/lib/directives/node-favorite.directive.mjs +0 -193
- package/esm2022/lib/directives/node-lock.directive.mjs +0 -57
- package/esm2022/lib/directives/node-restore.directive.mjs +0 -218
- package/esm2022/lib/directives/public-api.mjs +0 -28
- package/esm2022/lib/document-list/components/content-action/content-action-list.component.mjs +0 -60
- package/esm2022/lib/document-list/components/content-action/content-action.component.mjs +0 -196
- package/esm2022/lib/document-list/components/document-list.component.mjs +0 -964
- package/esm2022/lib/document-list/components/document-list.token.mjs +0 -21
- package/esm2022/lib/document-list/components/file-auto-download/file-auto-download.component.mjs +0 -43
- package/esm2022/lib/document-list/components/filter-header/filter-header.component.mjs +0 -107
- package/esm2022/lib/document-list/components/library-name-column/library-name-column.component.mjs +0 -133
- package/esm2022/lib/document-list/components/library-role-column/library-role-column.component.mjs +0 -93
- package/esm2022/lib/document-list/components/library-status-column/library-status-column.component.mjs +0 -88
- package/esm2022/lib/document-list/components/name-column/name-column.component.mjs +0 -120
- package/esm2022/lib/document-list/components/node.event.mjs +0 -30
- package/esm2022/lib/document-list/components/trashcan-name-column/trashcan-name-column.component.mjs +0 -83
- package/esm2022/lib/document-list/data/image-resolver.model.mjs +0 -18
- package/esm2022/lib/document-list/data/row-filter.model.mjs +0 -18
- package/esm2022/lib/document-list/data/share-data-row.model.mjs +0 -102
- package/esm2022/lib/document-list/data/share-datatable-adapter.mjs +0 -258
- package/esm2022/lib/document-list/document-list.module.mjs +0 -79
- package/esm2022/lib/document-list/index.mjs +0 -18
- package/esm2022/lib/document-list/interfaces/document-list-loader.interface.mjs +0 -18
- package/esm2022/lib/document-list/models/content-action.model.mjs +0 -59
- package/esm2022/lib/document-list/models/document-folder.model.mjs +0 -23
- package/esm2022/lib/document-list/models/node-action.enum.mjs +0 -27
- package/esm2022/lib/document-list/models/permissions-style.model.mjs +0 -27
- package/esm2022/lib/document-list/models/permissions.model.mjs +0 -26
- package/esm2022/lib/document-list/models/preset.model.mjs +0 -257
- package/esm2022/lib/document-list/public-api.mjs +0 -47
- package/esm2022/lib/document-list/services/custom-resources.service.mjs +0 -378
- package/esm2022/lib/document-list/services/document-actions.service.mjs +0 -142
- package/esm2022/lib/document-list/services/document-list.service.mjs +0 -175
- package/esm2022/lib/document-list/services/folder-actions.service.mjs +0 -137
- package/esm2022/lib/document-list/services/lock.service.mjs +0 -72
- package/esm2022/lib/document-list/services/node-actions.service.mjs +0 -122
- package/esm2022/lib/group/index.mjs +0 -18
- package/esm2022/lib/group/public-api.mjs +0 -18
- package/esm2022/lib/group/services/group.service.mjs +0 -84
- package/esm2022/lib/infinite-scroll-datasource/index.mjs +0 -18
- package/esm2022/lib/infinite-scroll-datasource/infinite-scroll-datasource.mjs +0 -69
- package/esm2022/lib/infinite-scroll-datasource/public-api.mjs +0 -18
- package/esm2022/lib/interfaces/base-card-view-content-update.interface.mjs +0 -18
- package/esm2022/lib/interfaces/index.mjs +0 -18
- package/esm2022/lib/interfaces/library-entity.interface.mjs +0 -18
- package/esm2022/lib/interfaces/library-membership-error-event.interface.mjs +0 -18
- package/esm2022/lib/interfaces/library-membership-toggle-event.interface.mjs +0 -18
- package/esm2022/lib/interfaces/node-allowable-operation-subject.interface.mjs +0 -18
- package/esm2022/lib/interfaces/public-api.mjs +0 -23
- package/esm2022/lib/interfaces/restore-message-model.interface.mjs +0 -19
- package/esm2022/lib/legal-hold/index.mjs +0 -18
- package/esm2022/lib/legal-hold/public-api.mjs +0 -18
- package/esm2022/lib/legal-hold/services/legal-hold.service.mjs +0 -136
- package/esm2022/lib/material.module.mjs +0 -183
- package/esm2022/lib/mock/alfresco-api.service.mock.mjs +0 -43
- package/esm2022/lib/mock/date-range-search-filter.mock.mjs +0 -65
- package/esm2022/lib/mock/document-library.model.mock.mjs +0 -84
- package/esm2022/lib/mock/document-list.component.mock.mjs +0 -364
- package/esm2022/lib/mock/index.mjs +0 -18
- package/esm2022/lib/mock/new-version-uploader.service.mock.mjs +0 -161
- package/esm2022/lib/mock/public-api.mjs +0 -27
- package/esm2022/lib/mock/search-filter-mock.mjs +0 -637
- package/esm2022/lib/mock/search-query.mock.mjs +0 -40
- package/esm2022/lib/mock/search.component.mock.mjs +0 -165
- package/esm2022/lib/mock/search.service.mock.mjs +0 -61
- package/esm2022/lib/mock/sites-dropdown.component.mock.mjs +0 -281
- package/esm2022/lib/new-version-uploader/index.mjs +0 -18
- package/esm2022/lib/new-version-uploader/models/index.mjs +0 -18
- package/esm2022/lib/new-version-uploader/models/new-version-uploader.model.mjs +0 -24
- package/esm2022/lib/new-version-uploader/new-version-uploader.dialog.mjs +0 -75
- package/esm2022/lib/new-version-uploader/new-version-uploader.module.mjs +0 -33
- package/esm2022/lib/new-version-uploader/new-version-uploader.service.mjs +0 -103
- package/esm2022/lib/new-version-uploader/public-api.mjs +0 -21
- package/esm2022/lib/node-comments/index.mjs +0 -18
- package/esm2022/lib/node-comments/node-comments.component.mjs +0 -44
- package/esm2022/lib/node-comments/node-comments.module.mjs +0 -33
- package/esm2022/lib/node-comments/public-api.mjs +0 -20
- package/esm2022/lib/node-comments/services/node-comments.service.mjs +0 -85
- package/esm2022/lib/permission-manager/components/add-permission/add-permission-dialog-data.interface.mjs +0 -18
- package/esm2022/lib/permission-manager/components/add-permission/add-permission-dialog.component.mjs +0 -124
- package/esm2022/lib/permission-manager/components/add-permission/add-permission-panel.component.mjs +0 -103
- package/esm2022/lib/permission-manager/components/add-permission/add-permission.component.mjs +0 -70
- package/esm2022/lib/permission-manager/components/add-permission/search-config-permission.service.mjs +0 -45
- package/esm2022/lib/permission-manager/components/inherited-button.directive.mjs +0 -67
- package/esm2022/lib/permission-manager/components/node-path-column/node-path-column.component.mjs +0 -56
- package/esm2022/lib/permission-manager/components/permission-container/permission-container.component.mjs +0 -103
- package/esm2022/lib/permission-manager/components/permission-list/permission-list.component.mjs +0 -88
- package/esm2022/lib/permission-manager/components/permission-list/permission-list.service.mjs +0 -219
- package/esm2022/lib/permission-manager/components/pop-over.directive.mjs +0 -134
- package/esm2022/lib/permission-manager/components/user-icon-column/user-icon-column.component.mjs +0 -88
- package/esm2022/lib/permission-manager/components/user-name-column/user-name-column.component.mjs +0 -82
- package/esm2022/lib/permission-manager/components/user-role-column/user-role-column.component.mjs +0 -112
- package/esm2022/lib/permission-manager/index.mjs +0 -18
- package/esm2022/lib/permission-manager/models/member.model.mjs +0 -59
- package/esm2022/lib/permission-manager/models/permission.model.mjs +0 -29
- package/esm2022/lib/permission-manager/models/role.model.mjs +0 -18
- package/esm2022/lib/permission-manager/permission-manager.module.mjs +0 -84
- package/esm2022/lib/permission-manager/public-api.mjs +0 -36
- package/esm2022/lib/permission-manager/services/node-permission-dialog.service.mjs +0 -78
- package/esm2022/lib/permission-manager/services/node-permission.service.mjs +0 -299
- package/esm2022/lib/pipes/content-pipe.module.mjs +0 -37
- package/esm2022/lib/pipes/index.mjs +0 -18
- package/esm2022/lib/pipes/node-name-tooltip.pipe.mjs +0 -69
- package/esm2022/lib/pipes/public-api.mjs +0 -19
- package/esm2022/lib/prediction/index.mjs +0 -18
- package/esm2022/lib/prediction/public-api.mjs +0 -18
- package/esm2022/lib/prediction/services/index.mjs +0 -18
- package/esm2022/lib/prediction/services/prediction.service.mjs +0 -57
- package/esm2022/lib/search/components/empty-search-result.component.mjs +0 -27
- package/esm2022/lib/search/components/index.mjs +0 -43
- package/esm2022/lib/search/components/reset-search.directive.mjs +0 -41
- package/esm2022/lib/search/components/search-check-list/index.mjs +0 -18
- package/esm2022/lib/search/components/search-check-list/search-check-list.component.mjs +0 -159
- package/esm2022/lib/search/components/search-chip-autocomplete-input/index.mjs +0 -18
- package/esm2022/lib/search/components/search-chip-autocomplete-input/search-chip-autocomplete-input.component.mjs +0 -170
- package/esm2022/lib/search/components/search-chip-list/search-chip-list.component.mjs +0 -47
- package/esm2022/lib/search/components/search-control.component.mjs +0 -181
- package/esm2022/lib/search/components/search-date-range-tabbed/index.mjs +0 -22
- package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/date-range-type.mjs +0 -23
- package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/in-last-date-type.mjs +0 -23
- package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/search-date-range.component.mjs +0 -197
- package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range/search-date-range.mjs +0 -18
- package/esm2022/lib/search/components/search-date-range-tabbed/search-date-range-tabbed.component.mjs +0 -201
- package/esm2022/lib/search/components/search-datetime-range/index.mjs +0 -18
- package/esm2022/lib/search/components/search-datetime-range/search-datetime-range.component.mjs +0 -224
- package/esm2022/lib/search/components/search-facet-field/index.mjs +0 -18
- package/esm2022/lib/search/components/search-facet-field/search-facet-field.component.mjs +0 -133
- package/esm2022/lib/search/components/search-filter/index.mjs +0 -19
- package/esm2022/lib/search/components/search-filter/search-filter-card/search-filter-card.component.mjs +0 -46
- package/esm2022/lib/search/components/search-filter/search-filter.component.mjs +0 -81
- package/esm2022/lib/search/components/search-filter-autocomplete-chips/index.mjs +0 -18
- package/esm2022/lib/search/components/search-filter-autocomplete-chips/search-filter-autocomplete-chips.component.mjs +0 -155
- package/esm2022/lib/search/components/search-filter-chips/index.mjs +0 -23
- package/esm2022/lib/search/components/search-filter-chips/search-facet-chip/search-facet-chip.component.mjs +0 -105
- package/esm2022/lib/search/components/search-filter-chips/search-facet-chip-tabbed/search-facet-chip-tabbed.component.mjs +0 -110
- package/esm2022/lib/search/components/search-filter-chips/search-facet-chip-tabbed/search-facet-tabbed-content.component.mjs +0 -129
- package/esm2022/lib/search/components/search-filter-chips/search-filter-chips.component.mjs +0 -64
- package/esm2022/lib/search/components/search-filter-chips/search-filter-menu-card/search-filter-menu-card.component.mjs +0 -44
- package/esm2022/lib/search/components/search-filter-chips/search-widget-chip/search-widget-chip.component.mjs +0 -110
- package/esm2022/lib/search/components/search-filter-container/index.mjs +0 -18
- package/esm2022/lib/search/components/search-filter-container/search-filter-container.component.mjs +0 -123
- package/esm2022/lib/search/components/search-filter-tabbed/index.mjs +0 -19
- package/esm2022/lib/search/components/search-filter-tabbed/search-filter-tab.directive.mjs +0 -36
- package/esm2022/lib/search/components/search-filter-tabbed/search-filter-tabbed.component.mjs +0 -64
- package/esm2022/lib/search/components/search-form/index.mjs +0 -18
- package/esm2022/lib/search/components/search-form/search-form.component.mjs +0 -53
- package/esm2022/lib/search/components/search-input/index.mjs +0 -18
- package/esm2022/lib/search/components/search-input/search-input.component.mjs +0 -109
- package/esm2022/lib/search/components/search-logical-filter/index.mjs +0 -18
- package/esm2022/lib/search/components/search-logical-filter/search-logical-filter.component.mjs +0 -164
- package/esm2022/lib/search/components/search-number-range/index.mjs +0 -18
- package/esm2022/lib/search/components/search-number-range/search-number-range.component.mjs +0 -155
- package/esm2022/lib/search/components/search-panel/index.mjs +0 -18
- package/esm2022/lib/search/components/search-panel/search-panel.component.mjs +0 -44
- package/esm2022/lib/search/components/search-properties/file-size-condition.mjs +0 -18
- package/esm2022/lib/search/components/search-properties/file-size-operator.enum.mjs +0 -23
- package/esm2022/lib/search/components/search-properties/file-size-unit.enum.mjs +0 -26
- package/esm2022/lib/search/components/search-properties/index.mjs +0 -22
- package/esm2022/lib/search/components/search-properties/search-properties.component.mjs +0 -244
- package/esm2022/lib/search/components/search-properties/search-properties.mjs +0 -18
- package/esm2022/lib/search/components/search-radio/index.mjs +0 -18
- package/esm2022/lib/search/components/search-radio/search-radio.component.mjs +0 -146
- package/esm2022/lib/search/components/search-slider/index.mjs +0 -18
- package/esm2022/lib/search/components/search-slider/search-slider.component.mjs +0 -120
- package/esm2022/lib/search/components/search-sorting-picker/index.mjs +0 -18
- package/esm2022/lib/search/components/search-sorting-picker/search-sorting-picker.component.mjs +0 -77
- package/esm2022/lib/search/components/search-text/index.mjs +0 -18
- package/esm2022/lib/search/components/search-text/search-text.component.mjs +0 -135
- package/esm2022/lib/search/components/search-widget-container/index.mjs +0 -18
- package/esm2022/lib/search/components/search-widget-container/search-widget-container.component.mjs +0 -113
- package/esm2022/lib/search/components/search.component.mjs +0 -153
- package/esm2022/lib/search/forms/index.mjs +0 -19
- package/esm2022/lib/search/forms/live-error-state-matcher.mjs +0 -23
- package/esm2022/lib/search/forms/search-term-validator.mjs +0 -26
- package/esm2022/lib/search/index.mjs +0 -18
- package/esm2022/lib/search/mocks/index.mjs +0 -18
- package/esm2022/lib/search/mocks/search.service.mock.mjs +0 -56
- package/esm2022/lib/search/models/autocomplete-option.interface.mjs +0 -22
- package/esm2022/lib/search/models/facet-field-bucket.interface.mjs +0 -18
- package/esm2022/lib/search/models/facet-field.interface.mjs +0 -29
- package/esm2022/lib/search/models/facet-query.interface.mjs +0 -18
- package/esm2022/lib/search/models/facet-widget.interface.mjs +0 -18
- package/esm2022/lib/search/models/filter-query.interface.mjs +0 -18
- package/esm2022/lib/search/models/filter-search.interface.mjs +0 -18
- package/esm2022/lib/search/models/index.mjs +0 -34
- package/esm2022/lib/search/models/response-facet-query-list.model.mjs +0 -31
- package/esm2022/lib/search/models/search-category.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-configuration.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-filter-list.model.mjs +0 -148
- package/esm2022/lib/search/models/search-form.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-range.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-sorting-definition.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-widget-settings.interface.mjs +0 -18
- package/esm2022/lib/search/models/search-widget.interface.mjs +0 -18
- package/esm2022/lib/search/models/tabbed-facet-field.interface.mjs +0 -18
- package/esm2022/lib/search/public-api.mjs +0 -24
- package/esm2022/lib/search/search-configuration.token.mjs +0 -19
- package/esm2022/lib/search/search.module.mjs +0 -192
- package/esm2022/lib/search/services/base-query-builder.service.mjs +0 -509
- package/esm2022/lib/search/services/index.mjs +0 -24
- package/esm2022/lib/search/services/search-configuration.service.mjs +0 -50
- package/esm2022/lib/search/services/search-facet-filters.service.mjs +0 -374
- package/esm2022/lib/search/services/search-filter.service.mjs +0 -56
- package/esm2022/lib/search/services/search-header-query-builder.service.mjs +0 -136
- package/esm2022/lib/search/services/search-query-builder.service.mjs +0 -48
- package/esm2022/lib/search/services/search.service.mjs +0 -89
- package/esm2022/lib/search-ai/index.mjs +0 -18
- package/esm2022/lib/search-ai/models/search-ai-input-state.mjs +0 -18
- package/esm2022/lib/search-ai/public-api.mjs +0 -19
- package/esm2022/lib/search-ai/services/search-ai.service.mjs +0 -103
- package/esm2022/lib/security/index.mjs +0 -18
- package/esm2022/lib/security/public-api.mjs +0 -18
- package/esm2022/lib/security/services/models/security-controls-group-response.interface.mjs +0 -18
- package/esm2022/lib/security/services/models/security-controls-mark-response.interface.mjs +0 -18
- package/esm2022/lib/security/services/security-controls-groups-marks-security.service.mjs +0 -274
- package/esm2022/lib/security-options-loader/security-options-loader.service.mjs +0 -43
- package/esm2022/lib/services/alfresco-api.interface.mjs +0 -18
- package/esm2022/lib/services/alfresco-api.service.mjs +0 -120
- package/esm2022/lib/services/index.mjs +0 -18
- package/esm2022/lib/services/public-api.mjs +0 -18
- package/esm2022/lib/tag/index.mjs +0 -18
- package/esm2022/lib/tag/public-api.mjs +0 -24
- package/esm2022/lib/tag/services/tag.service.mjs +0 -171
- package/esm2022/lib/tag/tag-actions/tag-actions.component.mjs +0 -115
- package/esm2022/lib/tag/tag-list/tag-list.component.mjs +0 -98
- package/esm2022/lib/tag/tag-node-list/tag-node-list.component.mjs +0 -80
- package/esm2022/lib/tag/tag.module.mjs +0 -37
- package/esm2022/lib/tag/tags-creator/tags-creator-mode.mjs +0 -27
- package/esm2022/lib/tag/tags-creator/tags-creator.component.mjs +0 -371
- package/esm2022/lib/testing/content.testing.module.mjs +0 -56
- package/esm2022/lib/tree/components/tree.component.mjs +0 -313
- package/esm2022/lib/tree/index.mjs +0 -18
- package/esm2022/lib/tree/models/tree-context-menu-result.interface.mjs +0 -18
- package/esm2022/lib/tree/models/tree-node.interface.mjs +0 -22
- package/esm2022/lib/tree/models/tree-response.interface.mjs +0 -18
- package/esm2022/lib/tree/public-api.mjs +0 -23
- package/esm2022/lib/tree/services/tree.service.mjs +0 -134
- package/esm2022/lib/tree/tree.module.mjs +0 -33
- package/esm2022/lib/tree-view/components/tree-view.component.mjs +0 -76
- package/esm2022/lib/tree-view/data/tree-view-datasource.mjs +0 -99
- package/esm2022/lib/tree-view/index.mjs +0 -18
- package/esm2022/lib/tree-view/models/tree-view.model.mjs +0 -28
- package/esm2022/lib/tree-view/public-api.mjs +0 -22
- package/esm2022/lib/tree-view/services/tree-view.service.mjs +0 -38
- package/esm2022/lib/tree-view/tree-view.module.mjs +0 -33
- package/esm2022/lib/upload/components/base-upload/upload-base.mjs +0 -176
- package/esm2022/lib/upload/components/file-uploading-dialog.component.mjs +0 -191
- package/esm2022/lib/upload/components/file-uploading-list-row.component.mjs +0 -93
- package/esm2022/lib/upload/components/file-uploading-list.component.mjs +0 -124
- package/esm2022/lib/upload/components/upload-button.component.mjs +0 -134
- package/esm2022/lib/upload/components/upload-drag-area.component.mjs +0 -112
- package/esm2022/lib/upload/components/upload-files.event.mjs +0 -41
- package/esm2022/lib/upload/components/upload-version-button.component.mjs +0 -55
- package/esm2022/lib/upload/directives/file-draggable.directive.mjs +0 -154
- package/esm2022/lib/upload/directives/toggle-icon.directive.mjs +0 -75
- package/esm2022/lib/upload/index.mjs +0 -18
- package/esm2022/lib/upload/pipes/file-upload-error.pipe.mjs +0 -39
- package/esm2022/lib/upload/public-api.mjs +0 -29
- package/esm2022/lib/upload/upload.module.mjs +0 -72
- package/esm2022/lib/version-compatibility/index.mjs +0 -18
- package/esm2022/lib/version-compatibility/public-api.mjs +0 -20
- package/esm2022/lib/version-compatibility/version-compatibility-factory.mjs +0 -26
- package/esm2022/lib/version-compatibility/version-compatibility.directive.mjs +0 -53
- package/esm2022/lib/version-compatibility/version-compatibility.module.mjs +0 -33
- package/esm2022/lib/version-compatibility/version-compatibility.service.mjs +0 -76
- package/esm2022/lib/version-manager/content-version.service.mjs +0 -53
- package/esm2022/lib/version-manager/index.mjs +0 -18
- package/esm2022/lib/version-manager/public-api.mjs +0 -23
- package/esm2022/lib/version-manager/version-comparison.component.mjs +0 -43
- package/esm2022/lib/version-manager/version-list.component.mjs +0 -216
- package/esm2022/lib/version-manager/version-manager.component.mjs +0 -146
- package/esm2022/lib/version-manager/version-manager.module.mjs +0 -48
- package/esm2022/lib/version-manager/version-upload.component.mjs +0 -155
- package/esm2022/lib/viewer/alfresco-viewer.module.mjs +0 -33
- package/esm2022/lib/viewer/components/alfresco-viewer.component.mjs +0 -409
- package/esm2022/lib/viewer/index.mjs +0 -18
- package/esm2022/lib/viewer/public-api.mjs +0 -19
- package/esm2022/public-api.mjs +0 -56
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { Injectable } from '@angular/core';
|
|
18
|
-
import { BasicPropertiesService } from './basic-properties.service';
|
|
19
|
-
import { of, iif, Subject } from 'rxjs';
|
|
20
|
-
import { PropertyGroupTranslatorService } from './property-groups-translator.service';
|
|
21
|
-
import { ContentMetadataConfigFactory } from './config/content-metadata-config.factory';
|
|
22
|
-
import { PropertyDescriptorsService } from './property-descriptors.service';
|
|
23
|
-
import { map, switchMap } from 'rxjs/operators';
|
|
24
|
-
import { ContentTypePropertiesService } from './content-type-property.service';
|
|
25
|
-
import * as i0 from "@angular/core";
|
|
26
|
-
import * as i1 from "./basic-properties.service";
|
|
27
|
-
import * as i2 from "./config/content-metadata-config.factory";
|
|
28
|
-
import * as i3 from "./property-groups-translator.service";
|
|
29
|
-
import * as i4 from "./property-descriptors.service";
|
|
30
|
-
import * as i5 from "./content-type-property.service";
|
|
31
|
-
export class ContentMetadataService {
|
|
32
|
-
constructor(basicPropertiesService, contentMetadataConfigFactory, propertyGroupTranslatorService, propertyDescriptorsService, contentTypePropertyService) {
|
|
33
|
-
this.basicPropertiesService = basicPropertiesService;
|
|
34
|
-
this.contentMetadataConfigFactory = contentMetadataConfigFactory;
|
|
35
|
-
this.propertyGroupTranslatorService = propertyGroupTranslatorService;
|
|
36
|
-
this.propertyDescriptorsService = propertyDescriptorsService;
|
|
37
|
-
this.contentTypePropertyService = contentTypePropertyService;
|
|
38
|
-
this.error = new Subject();
|
|
39
|
-
}
|
|
40
|
-
getBasicProperties(node) {
|
|
41
|
-
return of(this.basicPropertiesService.getProperties(node));
|
|
42
|
-
}
|
|
43
|
-
getContentTypeProperty(node) {
|
|
44
|
-
return this.contentTypePropertyService.getContentTypeCardItem(node);
|
|
45
|
-
}
|
|
46
|
-
openConfirmDialog(changedProperties) {
|
|
47
|
-
return this.contentTypePropertyService.openContentTypeDialogConfirm(changedProperties.nodeType);
|
|
48
|
-
}
|
|
49
|
-
getGroupedProperties(node, preset = 'default') {
|
|
50
|
-
let groupedProperties = of([]);
|
|
51
|
-
if (node.aspectNames) {
|
|
52
|
-
let contentMetadataConfig;
|
|
53
|
-
if (typeof preset === 'string') {
|
|
54
|
-
contentMetadataConfig = this.contentMetadataConfigFactory.get(preset);
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
contentMetadataConfig = this.contentMetadataConfigFactory.createConfig(preset);
|
|
58
|
-
}
|
|
59
|
-
const groupNames = node.aspectNames.concat(node.nodeType).filter((groupName) => contentMetadataConfig.isGroupAllowed(groupName));
|
|
60
|
-
if (groupNames.length > 0) {
|
|
61
|
-
groupedProperties = this.propertyDescriptorsService.load(groupNames).pipe(switchMap((groups) => iif(() => contentMetadataConfig.isIncludeAllEnabled(), of(contentMetadataConfig.appendAllPreset(groups).concat(contentMetadataConfig.reorganiseByConfig(groups))), of(contentMetadataConfig.reorganiseByConfig(groups)))), map((groups) => contentMetadataConfig.filterExcludedPreset(groups)), map((groups) => this.filterEmptyPreset(groups)), map((groups) => this.setTitleToNameIfNotSet(groups)), map((groups) => this.propertyGroupTranslatorService.translateToCardViewGroups(groups, node.properties, node.definition)));
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return groupedProperties;
|
|
65
|
-
}
|
|
66
|
-
setTitleToNameIfNotSet(propertyGroups) {
|
|
67
|
-
const propertyGroupsTitles = [];
|
|
68
|
-
propertyGroups.map((propertyGroup) => {
|
|
69
|
-
const title = propertyGroup.title;
|
|
70
|
-
const name = propertyGroup.name;
|
|
71
|
-
if (title) {
|
|
72
|
-
if (propertyGroupsTitles.includes(title)) {
|
|
73
|
-
propertyGroup.title = name ? `${title} (${name})` : title;
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
propertyGroup.title = title;
|
|
77
|
-
}
|
|
78
|
-
propertyGroupsTitles.push(title);
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
propertyGroup.title = name;
|
|
82
|
-
propertyGroupsTitles.push(name);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
return propertyGroups;
|
|
86
|
-
}
|
|
87
|
-
filterEmptyPreset(propertyGroups) {
|
|
88
|
-
return propertyGroups.filter((props) => props.properties.length);
|
|
89
|
-
}
|
|
90
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentMetadataService, deps: [{ token: i1.BasicPropertiesService }, { token: i2.ContentMetadataConfigFactory }, { token: i3.PropertyGroupTranslatorService }, { token: i4.PropertyDescriptorsService }, { token: i5.ContentTypePropertiesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
91
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentMetadataService, providedIn: 'root' }); }
|
|
92
|
-
}
|
|
93
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentMetadataService, decorators: [{
|
|
94
|
-
type: Injectable,
|
|
95
|
-
args: [{
|
|
96
|
-
providedIn: 'root'
|
|
97
|
-
}]
|
|
98
|
-
}], ctorParameters: () => [{ type: i1.BasicPropertiesService }, { type: i2.ContentMetadataConfigFactory }, { type: i3.PropertyGroupTranslatorService }, { type: i4.PropertyDescriptorsService }, { type: i5.ContentTypePropertiesService }] });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1tZXRhZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvbnRlbnQtc2VydmljZXMvc3JjL2xpYi9jb250ZW50LW1ldGFkYXRhL3NlcnZpY2VzL2NvbnRlbnQtbWV0YWRhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUd0RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN4RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7O0FBSS9FLE1BQU0sT0FBTyxzQkFBc0I7SUFHL0IsWUFDWSxzQkFBOEMsRUFDOUMsNEJBQTBELEVBQzFELDhCQUE4RCxFQUM5RCwwQkFBc0QsRUFDdEQsMEJBQXdEO1FBSnhELDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtRQUMxRCxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBNEI7UUFDdEQsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE4QjtRQVBwRSxVQUFLLEdBQUcsSUFBSSxPQUFPLEVBQTJD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QUFhLENBQUMsSUFBSSxDQUFDO1lBQ2hDLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1IsSUFBSSxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDdkMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxLQUFLLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7Z0JBQzlELENBQUM7cUJBQU0sQ0FBQztvQkFDSixhQUFhLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztnQkFDaEMsQ0FBQztnQkFDRCxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckMsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLGFBQWEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxjQUFjLENBQUM7SUFDMUIsQ0FBQztJQUVELGlCQUFpQixDQUFDLGNBQXdDO1FBQ3RELE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRSxDQUFDOytHQTlFUSxzQkFBc0I7bUhBQXRCLHNCQUFzQixjQUZuQixNQUFNOzs0RkFFVCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBCYXNpY1Byb3BlcnRpZXNTZXJ2aWNlIH0gZnJvbSAnLi9iYXNpYy1wcm9wZXJ0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIGlpZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUHJvcGVydHlHcm91cFRyYW5zbGF0b3JTZXJ2aWNlIH0gZnJvbSAnLi9wcm9wZXJ0eS1ncm91cHMtdHJhbnNsYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IENhcmRWaWV3SXRlbSB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBDYXJkVmlld0dyb3VwLCBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwLCBQcmVzZXRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbnRlbnQtbWV0YWRhdGEuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDb250ZW50TWV0YWRhdGFDb25maWdGYWN0b3J5IH0gZnJvbSAnLi9jb25maWcvY29udGVudC1tZXRhZGF0YS1jb25maWcuZmFjdG9yeSc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlc2NyaXB0b3JzU2VydmljZSB9IGZyb20gJy4vcHJvcGVydHktZGVzY3JpcHRvcnMuc2VydmljZSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRlbnRUeXBlUHJvcGVydGllc1NlcnZpY2UgfSBmcm9tICcuL2NvbnRlbnQtdHlwZS1wcm9wZXJ0eS5zZXJ2aWNlJztcbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudE1ldGFkYXRhU2VydmljZSB7XG4gICAgZXJyb3IgPSBuZXcgU3ViamVjdDx7IHN0YXR1c0NvZGU6IG51bWJlcjsgbWVzc2FnZTogc3RyaW5nIH0+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBiYXNpY1Byb3BlcnRpZXNTZXJ2aWNlOiBCYXNpY1Byb3BlcnRpZXNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbnRlbnRNZXRhZGF0YUNvbmZpZ0ZhY3Rvcnk6IENvbnRlbnRNZXRhZGF0YUNvbmZpZ0ZhY3RvcnksXG4gICAgICAgIHByaXZhdGUgcHJvcGVydHlHcm91cFRyYW5zbGF0b3JTZXJ2aWNlOiBQcm9wZXJ0eUdyb3VwVHJhbnNsYXRvclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcHJvcGVydHlEZXNjcmlwdG9yc1NlcnZpY2U6IFByb3BlcnR5RGVzY3JpcHRvcnNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbnRlbnRUeXBlUHJvcGVydHlTZXJ2aWNlOiBDb250ZW50VHlwZVByb3BlcnRpZXNTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgZ2V0QmFzaWNQcm9wZXJ0aWVzKG5vZGU6IE5vZGUpOiBPYnNlcnZhYmxlPENhcmRWaWV3SXRlbVtdPiB7XG4gICAgICAgIHJldHVybiBvZih0aGlzLmJhc2ljUHJvcGVydGllc1NlcnZpY2UuZ2V0UHJvcGVydGllcyhub2RlKSk7XG4gICAgfVxuXG4gICAgZ2V0Q29udGVudFR5cGVQcm9wZXJ0eShub2RlOiBOb2RlKTogT2JzZXJ2YWJsZTxDYXJkVmlld0l0ZW1bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50VHlwZVByb3BlcnR5U2VydmljZS5nZXRDb250ZW50VHlwZUNhcmRJdGVtKG5vZGUpO1xuICAgIH1cblxuICAgIG9wZW5Db25maXJtRGlhbG9nKGNoYW5nZWRQcm9wZXJ0aWVzKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudFR5cGVQcm9wZXJ0eVNlcnZpY2Uub3BlbkNvbnRlbnRUeXBlRGlhbG9nQ29uZmlybShjaGFuZ2VkUHJvcGVydGllcy5ub2RlVHlwZSk7XG4gICAgfVxuXG4gICAgZ2V0R3JvdXBlZFByb3BlcnRpZXMobm9kZTogTm9kZSwgcHJlc2V0OiBzdHJpbmcgfCBQcmVzZXRDb25maWcgPSAnZGVmYXVsdCcpOiBPYnNlcnZhYmxlPENhcmRWaWV3R3JvdXBbXT4ge1xuICAgICAgICBsZXQgZ3JvdXBlZFByb3BlcnRpZXMgPSBvZihbXSk7XG5cbiAgICAgICAgaWYgKG5vZGUuYXNwZWN0TmFtZXMpIHtcbiAgICAgICAgICAgIGxldCBjb250ZW50TWV0YWRhdGFDb25maWc7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHByZXNldCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50TWV0YWRhdGFDb25maWcgPSB0aGlzLmNvbnRlbnRNZXRhZGF0YUNvbmZpZ0ZhY3RvcnkuZ2V0KHByZXNldCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRlbnRNZXRhZGF0YUNvbmZpZyA9IHRoaXMuY29udGVudE1ldGFkYXRhQ29uZmlnRmFjdG9yeS5jcmVhdGVDb25maWcocHJlc2V0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgZ3JvdXBOYW1lcyA9IG5vZGUuYXNwZWN0TmFtZXMuY29uY2F0KG5vZGUubm9kZVR5cGUpLmZpbHRlcigoZ3JvdXBOYW1lKSA9PiBjb250ZW50TWV0YWRhdGFDb25maWcuaXNHcm91cEFsbG93ZWQoZ3JvdXBOYW1lKSk7XG5cbiAgICAgICAgICAgIGlmIChncm91cE5hbWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBncm91cGVkUHJvcGVydGllcyA9IHRoaXMucHJvcGVydHlEZXNjcmlwdG9yc1NlcnZpY2UubG9hZChncm91cE5hbWVzKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKGdyb3VwcykgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlpZihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiBjb250ZW50TWV0YWRhdGFDb25maWcuaXNJbmNsdWRlQWxsRW5hYmxlZCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mKGNvbnRlbnRNZXRhZGF0YUNvbmZpZy5hcHBlbmRBbGxQcmVzZXQoZ3JvdXBzKS5jb25jYXQoY29udGVudE1ldGFkYXRhQ29uZmlnLnJlb3JnYW5pc2VCeUNvbmZpZyhncm91cHMpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YoY29udGVudE1ldGFkYXRhQ29uZmlnLnJlb3JnYW5pc2VCeUNvbmZpZyhncm91cHMpKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBtYXAoKGdyb3VwcykgPT4gY29udGVudE1ldGFkYXRhQ29uZmlnLmZpbHRlckV4Y2x1ZGVkUHJlc2V0KGdyb3VwcykpLFxuICAgICAgICAgICAgICAgICAgICBtYXAoKGdyb3VwcykgPT4gdGhpcy5maWx0ZXJFbXB0eVByZXNldChncm91cHMpKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKChncm91cHMpID0+IHRoaXMuc2V0VGl0bGVUb05hbWVJZk5vdFNldChncm91cHMpKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKChncm91cHMpID0+IHRoaXMucHJvcGVydHlHcm91cFRyYW5zbGF0b3JTZXJ2aWNlLnRyYW5zbGF0ZVRvQ2FyZFZpZXdHcm91cHMoZ3JvdXBzLCBub2RlLnByb3BlcnRpZXMsIG5vZGUuZGVmaW5pdGlvbikpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBncm91cGVkUHJvcGVydGllcztcbiAgICB9XG5cbiAgICBzZXRUaXRsZVRvTmFtZUlmTm90U2V0KHByb3BlcnR5R3JvdXBzOiBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwW10pOiBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwW10ge1xuICAgICAgICBjb25zdCBwcm9wZXJ0eUdyb3Vwc1RpdGxlcyA9IFtdO1xuICAgICAgICBwcm9wZXJ0eUdyb3Vwcy5tYXAoKHByb3BlcnR5R3JvdXApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRpdGxlID0gcHJvcGVydHlHcm91cC50aXRsZTtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBwcm9wZXJ0eUdyb3VwLm5hbWU7XG4gICAgICAgICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJvcGVydHlHcm91cHNUaXRsZXMuaW5jbHVkZXModGl0bGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHByb3BlcnR5R3JvdXAudGl0bGUgPSBuYW1lID8gYCR7dGl0bGV9ICgke25hbWV9KWAgOiB0aXRsZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eUdyb3VwLnRpdGxlID0gdGl0bGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHByb3BlcnR5R3JvdXBzVGl0bGVzLnB1c2godGl0bGUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eUdyb3VwLnRpdGxlID0gbmFtZTtcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eUdyb3Vwc1RpdGxlcy5wdXNoKG5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHByb3BlcnR5R3JvdXBzO1xuICAgIH1cblxuICAgIGZpbHRlckVtcHR5UHJlc2V0KHByb3BlcnR5R3JvdXBzOiBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwW10pOiBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwW10ge1xuICAgICAgICByZXR1cm4gcHJvcGVydHlHcm91cHMuZmlsdGVyKChwcm9wcykgPT4gcHJvcHMucHJvcGVydGllcy5sZW5ndGgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { Injectable } from '@angular/core';
|
|
18
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
19
|
-
import { CardViewSelectItemModel, CardViewTextItemModel } from '@alfresco/adf-core';
|
|
20
|
-
import { of, Subject, zip } from 'rxjs';
|
|
21
|
-
import { distinctUntilChanged, map } from 'rxjs/operators';
|
|
22
|
-
import { ContentTypeDialogComponent } from '../../content-type/content-type-dialog.component';
|
|
23
|
-
import { ContentTypeService } from '../../content-type/content-type.service';
|
|
24
|
-
import { PropertyGroupTranslatorService } from './property-groups-translator.service';
|
|
25
|
-
import { VersionCompatibilityService } from '../../version-compatibility/version-compatibility.service';
|
|
26
|
-
import * as i0 from "@angular/core";
|
|
27
|
-
import * as i1 from "../../content-type/content-type.service";
|
|
28
|
-
import * as i2 from "@angular/material/dialog";
|
|
29
|
-
import * as i3 from "../../version-compatibility/version-compatibility.service";
|
|
30
|
-
import * as i4 from "./property-groups-translator.service";
|
|
31
|
-
export class ContentTypePropertiesService {
|
|
32
|
-
constructor(contentTypeService, dialog, versionCompatibilityService, propertyGroupTranslatorService) {
|
|
33
|
-
this.contentTypeService = contentTypeService;
|
|
34
|
-
this.dialog = dialog;
|
|
35
|
-
this.versionCompatibilityService = versionCompatibilityService;
|
|
36
|
-
this.propertyGroupTranslatorService = propertyGroupTranslatorService;
|
|
37
|
-
}
|
|
38
|
-
getContentTypeCardItem(node) {
|
|
39
|
-
if (this.versionCompatibilityService.isVersionSupported('7')) {
|
|
40
|
-
return this.contentTypeService.getContentTypeByPrefix(node.nodeType).pipe(map((contentType) => {
|
|
41
|
-
const contentTypesOptions$ = this.getContentTypesAsSelectOption(contentType);
|
|
42
|
-
const contentTypeCard = this.buildContentTypeSelectCardModel(contentType.entry.id, contentTypesOptions$);
|
|
43
|
-
const filteredProperties = this.getContentTypeSpecificProperties(contentType);
|
|
44
|
-
const propertiesCard = this.buildCardItemsFromPropertyList(filteredProperties, node.properties);
|
|
45
|
-
return [contentTypeCard, ...propertiesCard];
|
|
46
|
-
}));
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
return of([this.buildContentTypeTextCardModel(node.nodeType)]);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
buildCardItemsFromPropertyList(properties, currentProperties) {
|
|
53
|
-
return properties.map((property) => {
|
|
54
|
-
const propertyValue = currentProperties ? currentProperties[property.id] : null;
|
|
55
|
-
return this.buildCardItemFromProperty(property, propertyValue);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
buildCardItemFromProperty(property, propertyValue) {
|
|
59
|
-
return this.propertyGroupTranslatorService.translateProperty(property, propertyValue, true);
|
|
60
|
-
}
|
|
61
|
-
getContentTypeSpecificProperties(contentType) {
|
|
62
|
-
return contentType.entry.properties.filter((property) => property.id.startsWith(contentType.entry.model.namespacePrefix));
|
|
63
|
-
}
|
|
64
|
-
buildContentTypeTextCardModel(currentValue) {
|
|
65
|
-
const contentTypeCard = new CardViewTextItemModel({
|
|
66
|
-
label: 'CORE.METADATA.BASIC.CONTENT_TYPE',
|
|
67
|
-
value: currentValue,
|
|
68
|
-
key: 'nodeType',
|
|
69
|
-
editable: false
|
|
70
|
-
});
|
|
71
|
-
return contentTypeCard;
|
|
72
|
-
}
|
|
73
|
-
buildContentTypeSelectCardModel(currentValue, options$) {
|
|
74
|
-
const contentTypeCard = new CardViewSelectItemModel({
|
|
75
|
-
label: 'CORE.METADATA.BASIC.CONTENT_TYPE',
|
|
76
|
-
value: currentValue,
|
|
77
|
-
key: 'nodeType',
|
|
78
|
-
editable: true,
|
|
79
|
-
options$,
|
|
80
|
-
displayNoneOption: false
|
|
81
|
-
});
|
|
82
|
-
return contentTypeCard;
|
|
83
|
-
}
|
|
84
|
-
getContentTypesAsSelectOption(currentType) {
|
|
85
|
-
const childrenTypes$ = this.contentTypeService.getContentTypeChildren(currentType.entry.id);
|
|
86
|
-
return zip(childrenTypes$, of(currentType)).pipe(distinctUntilChanged(), map(([contentTypesEntries, currentContentType]) => {
|
|
87
|
-
const updatedTypes = this.appendCurrentType(currentContentType, contentTypesEntries);
|
|
88
|
-
return updatedTypes.map((contentType) => ({ key: contentType.entry.id, label: contentType.entry.title ?? contentType.entry.id }));
|
|
89
|
-
}));
|
|
90
|
-
}
|
|
91
|
-
appendCurrentType(currentType, contentTypesEntries) {
|
|
92
|
-
const resultTypes = [...contentTypesEntries];
|
|
93
|
-
const currentTypePresent = contentTypesEntries.find((type) => type.entry.id === currentType.entry.id);
|
|
94
|
-
if (!currentTypePresent) {
|
|
95
|
-
resultTypes.push(currentType);
|
|
96
|
-
}
|
|
97
|
-
return resultTypes;
|
|
98
|
-
}
|
|
99
|
-
openContentTypeDialogConfirm(nodeType) {
|
|
100
|
-
const select = new Subject();
|
|
101
|
-
select.subscribe({
|
|
102
|
-
complete: this.close.bind(this)
|
|
103
|
-
});
|
|
104
|
-
const data = {
|
|
105
|
-
title: 'CORE.METADATA.CONTENT_TYPE.DIALOG.TITLE',
|
|
106
|
-
description: 'CORE.METADATA.CONTENT_TYPE.DIALOG.DESCRIPTION',
|
|
107
|
-
confirmMessage: 'CORE.METADATA.CONTENT_TYPE.DIALOG.CONFIRM',
|
|
108
|
-
select,
|
|
109
|
-
nodeType
|
|
110
|
-
};
|
|
111
|
-
this.openDialog(data, 'adf-content-type-dialog', '600px');
|
|
112
|
-
return select;
|
|
113
|
-
}
|
|
114
|
-
close() {
|
|
115
|
-
this.dialog.closeAll();
|
|
116
|
-
}
|
|
117
|
-
openDialog(data, panelClass, width) {
|
|
118
|
-
this.dialog.open(ContentTypeDialogComponent, {
|
|
119
|
-
data,
|
|
120
|
-
panelClass,
|
|
121
|
-
width,
|
|
122
|
-
disableClose: true
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentTypePropertiesService, deps: [{ token: i1.ContentTypeService }, { token: i2.MatDialog }, { token: i3.VersionCompatibilityService }, { token: i4.PropertyGroupTranslatorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
126
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentTypePropertiesService, providedIn: 'root' }); }
|
|
127
|
-
}
|
|
128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContentTypePropertiesService, decorators: [{
|
|
129
|
-
type: Injectable,
|
|
130
|
-
args: [{
|
|
131
|
-
providedIn: 'root'
|
|
132
|
-
}]
|
|
133
|
-
}], ctorParameters: () => [{ type: i1.ContentTypeService }, { type: i2.MatDialog }, { type: i3.VersionCompatibilityService }, { type: i4.PropertyGroupTranslatorService }] });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC10eXBlLXByb3BlcnR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2NvbnRlbnQtbWV0YWRhdGEvc2VydmljZXMvY29udGVudC10eXBlLXByb3BlcnR5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFnQix1QkFBdUIsRUFBNEIscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM1SCxPQUFPLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRTdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDOzs7Ozs7QUFLeEcsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxZQUNZLGtCQUFzQyxFQUN0QyxNQUFpQixFQUNqQiwyQkFBd0QsRUFDeEQsOEJBQThEO1FBSDlELHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO1FBQ3hELG1DQUE4QixHQUE5Qiw4QkFBOEIsQ0FBZ0M7SUFDdkUsQ0FBQztJQUVK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QUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDbEMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQW1DO1lBQ3pDLEtBQUssRUFBRSx5Q0FBeUM7WUFDaEQsV0FBVyxFQUFFLCtDQUErQztZQUM1RCxjQUFjLEVBQUUsMkNBQTJDO1lBQzNELE1BQU07WUFDTixRQUFRO1NBQ1gsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLHlCQUF5QixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzFELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sVUFBVSxDQUFDLElBQW9DLEVBQUUsVUFBa0IsRUFBRSxLQUFhO1FBQ3RGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQ3pDLElBQUk7WUFDSixVQUFVO1lBQ1YsS0FBSztZQUNMLFlBQVksRUFBRSxJQUFJO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBbkhRLDRCQUE0QjttSEFBNUIsNEJBQTRCLGNBRnpCLE1BQU07OzRGQUVULDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBDYXJkVmlld0l0ZW0sIENhcmRWaWV3U2VsZWN0SXRlbU1vZGVsLCBDYXJkVmlld1NlbGVjdEl0ZW1PcHRpb24sIENhcmRWaWV3VGV4dEl0ZW1Nb2RlbCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgemlwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29udGVudFR5cGVEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb250ZW50LXR5cGUvY29udGVudC10eXBlLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29udGVudFR5cGVEaWFsb2dDb21wb25lbnREYXRhIH0gZnJvbSAnLi4vLi4vY29udGVudC10eXBlL2NvbnRlbnQtdHlwZS1tZXRhZGF0YS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29udGVudFR5cGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29udGVudC10eXBlL2NvbnRlbnQtdHlwZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGUsIFByb3BlcnR5LCBUeXBlRW50cnkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IFByb3BlcnR5R3JvdXBUcmFuc2xhdG9yU2VydmljZSB9IGZyb20gJy4vcHJvcGVydHktZ3JvdXBzLXRyYW5zbGF0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBWZXJzaW9uQ29tcGF0aWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi92ZXJzaW9uLWNvbXBhdGliaWxpdHkvdmVyc2lvbi1jb21wYXRpYmlsaXR5LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRUeXBlUHJvcGVydGllc1NlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNvbnRlbnRUeXBlU2VydmljZTogQ29udGVudFR5cGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICBwcml2YXRlIHZlcnNpb25Db21wYXRpYmlsaXR5U2VydmljZTogVmVyc2lvbkNvbXBhdGliaWxpdHlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHByb3BlcnR5R3JvdXBUcmFuc2xhdG9yU2VydmljZTogUHJvcGVydHlHcm91cFRyYW5zbGF0b3JTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgZ2V0Q29udGVudFR5cGVDYXJkSXRlbShub2RlOiBOb2RlKTogT2JzZXJ2YWJsZTxDYXJkVmlld0l0ZW1bXT4ge1xuICAgICAgICBpZiAodGhpcy52ZXJzaW9uQ29tcGF0aWJpbGl0eVNlcnZpY2UuaXNWZXJzaW9uU3VwcG9ydGVkKCc3JykpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRUeXBlU2VydmljZS5nZXRDb250ZW50VHlwZUJ5UHJlZml4KG5vZGUubm9kZVR5cGUpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChjb250ZW50VHlwZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50VHlwZXNPcHRpb25zJCA9IHRoaXMuZ2V0Q29udGVudFR5cGVzQXNTZWxlY3RPcHRpb24oY29udGVudFR5cGUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50VHlwZUNhcmQgPSB0aGlzLmJ1aWxkQ29udGVudFR5cGVTZWxlY3RDYXJkTW9kZWwoY29udGVudFR5cGUuZW50cnkuaWQsIGNvbnRlbnRUeXBlc09wdGlvbnMkKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsdGVyZWRQcm9wZXJ0aWVzID0gdGhpcy5nZXRDb250ZW50VHlwZVNwZWNpZmljUHJvcGVydGllcyhjb250ZW50VHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXNDYXJkID0gdGhpcy5idWlsZENhcmRJdGVtc0Zyb21Qcm9wZXJ0eUxpc3QoZmlsdGVyZWRQcm9wZXJ0aWVzLCBub2RlLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW2NvbnRlbnRUeXBlQ2FyZCwgLi4ucHJvcGVydGllc0NhcmRdO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG9mKFt0aGlzLmJ1aWxkQ29udGVudFR5cGVUZXh0Q2FyZE1vZGVsKG5vZGUubm9kZVR5cGUpXSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBidWlsZENhcmRJdGVtc0Zyb21Qcm9wZXJ0eUxpc3QocHJvcGVydGllczogUHJvcGVydHlbXSwgY3VycmVudFByb3BlcnRpZXM6IGFueSk6IENhcmRWaWV3SXRlbVtdIHtcbiAgICAgICAgcmV0dXJuIHByb3BlcnRpZXMubWFwKChwcm9wZXJ0eSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlWYWx1ZSA9IGN1cnJlbnRQcm9wZXJ0aWVzID8gY3VycmVudFByb3BlcnRpZXNbcHJvcGVydHkuaWRdIDogbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmJ1aWxkQ2FyZEl0ZW1Gcm9tUHJvcGVydHkocHJvcGVydHksIHByb3BlcnR5VmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGJ1aWxkQ2FyZEl0ZW1Gcm9tUHJvcGVydHkocHJvcGVydHk6IFByb3BlcnR5LCBwcm9wZXJ0eVZhbHVlOiBhbnkpOiBDYXJkVmlld0l0ZW0ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wZXJ0eUdyb3VwVHJhbnNsYXRvclNlcnZpY2UudHJhbnNsYXRlUHJvcGVydHkocHJvcGVydHksIHByb3BlcnR5VmFsdWUsIHRydWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29udGVudFR5cGVTcGVjaWZpY1Byb3BlcnRpZXMoY29udGVudFR5cGU6IFR5cGVFbnRyeSk6IFByb3BlcnR5W10ge1xuICAgICAgICByZXR1cm4gY29udGVudFR5cGUuZW50cnkucHJvcGVydGllcy5maWx0ZXIoKHByb3BlcnR5KSA9PiBwcm9wZXJ0eS5pZC5zdGFydHNXaXRoKGNvbnRlbnRUeXBlLmVudHJ5Lm1vZGVsLm5hbWVzcGFjZVByZWZpeCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYnVpbGRDb250ZW50VHlwZVRleHRDYXJkTW9kZWwoY3VycmVudFZhbHVlOiBzdHJpbmcpOiBDYXJkVmlld1RleHRJdGVtTW9kZWwge1xuICAgICAgICBjb25zdCBjb250ZW50VHlwZUNhcmQgPSBuZXcgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsKHtcbiAgICAgICAgICAgIGxhYmVsOiAnQ09SRS5NRVRBREFUQS5CQVNJQy5DT05URU5UX1RZUEUnLFxuICAgICAgICAgICAgdmFsdWU6IGN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgIGtleTogJ25vZGVUeXBlJyxcbiAgICAgICAgICAgIGVkaXRhYmxlOiBmYWxzZVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gY29udGVudFR5cGVDYXJkO1xuICAgIH1cblxuICAgIHByaXZhdGUgYnVpbGRDb250ZW50VHlwZVNlbGVjdENhcmRNb2RlbChcbiAgICAgICAgY3VycmVudFZhbHVlOiBzdHJpbmcsXG4gICAgICAgIG9wdGlvbnMkOiBPYnNlcnZhYmxlPENhcmRWaWV3U2VsZWN0SXRlbU9wdGlvbjxzdHJpbmc+W10+XG4gICAgKTogQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWw8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlQ2FyZCA9IG5ldyBDYXJkVmlld1NlbGVjdEl0ZW1Nb2RlbCh7XG4gICAgICAgICAgICBsYWJlbDogJ0NPUkUuTUVUQURBVEEuQkFTSUMuQ09OVEVOVF9UWVBFJyxcbiAgICAgICAgICAgIHZhbHVlOiBjdXJyZW50VmFsdWUsXG4gICAgICAgICAgICBrZXk6ICdub2RlVHlwZScsXG4gICAgICAgICAgICBlZGl0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIG9wdGlvbnMkLFxuICAgICAgICAgICAgZGlzcGxheU5vbmVPcHRpb246IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBjb250ZW50VHlwZUNhcmQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDb250ZW50VHlwZXNBc1NlbGVjdE9wdGlvbihjdXJyZW50VHlwZTogVHlwZUVudHJ5KTogT2JzZXJ2YWJsZTxDYXJkVmlld1NlbGVjdEl0ZW1PcHRpb248c3RyaW5nPltdPiB7XG4gICAgICAgIGNvbnN0IGNoaWxkcmVuVHlwZXMkID0gdGhpcy5jb250ZW50VHlwZVNlcnZpY2UuZ2V0Q29udGVudFR5cGVDaGlsZHJlbihjdXJyZW50VHlwZS5lbnRyeS5pZCk7XG4gICAgICAgIHJldHVybiB6aXAoY2hpbGRyZW5UeXBlcyQsIG9mKGN1cnJlbnRUeXBlKSkucGlwZShcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICBtYXAoKFtjb250ZW50VHlwZXNFbnRyaWVzLCBjdXJyZW50Q29udGVudFR5cGVdKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZFR5cGVzID0gdGhpcy5hcHBlbmRDdXJyZW50VHlwZShjdXJyZW50Q29udGVudFR5cGUsIGNvbnRlbnRUeXBlc0VudHJpZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiB1cGRhdGVkVHlwZXMubWFwKChjb250ZW50VHlwZSkgPT4gKHsga2V5OiBjb250ZW50VHlwZS5lbnRyeS5pZCwgbGFiZWw6IGNvbnRlbnRUeXBlLmVudHJ5LnRpdGxlID8/IGNvbnRlbnRUeXBlLmVudHJ5LmlkIH0pKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcHBlbmRDdXJyZW50VHlwZShjdXJyZW50VHlwZTogVHlwZUVudHJ5LCBjb250ZW50VHlwZXNFbnRyaWVzOiBUeXBlRW50cnlbXSk6IFR5cGVFbnRyeVtdIHtcbiAgICAgICAgY29uc3QgcmVzdWx0VHlwZXMgPSBbLi4uY29udGVudFR5cGVzRW50cmllc107XG4gICAgICAgIGNvbnN0IGN1cnJlbnRUeXBlUHJlc2VudCA9IGNvbnRlbnRUeXBlc0VudHJpZXMuZmluZCgodHlwZSkgPT4gdHlwZS5lbnRyeS5pZCA9PT0gY3VycmVudFR5cGUuZW50cnkuaWQpO1xuICAgICAgICBpZiAoIWN1cnJlbnRUeXBlUHJlc2VudCkge1xuICAgICAgICAgICAgcmVzdWx0VHlwZXMucHVzaChjdXJyZW50VHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdFR5cGVzO1xuICAgIH1cblxuICAgIG9wZW5Db250ZW50VHlwZURpYWxvZ0NvbmZpcm0obm9kZVR5cGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICAgICAgc2VsZWN0LnN1YnNjcmliZSh7XG4gICAgICAgICAgICBjb21wbGV0ZTogdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGRhdGE6IENvbnRlbnRUeXBlRGlhbG9nQ29tcG9uZW50RGF0YSA9IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQ09SRS5NRVRBREFUQS5DT05URU5UX1RZUEUuRElBTE9HLlRJVExFJyxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQ09SRS5NRVRBREFUQS5DT05URU5UX1RZUEUuRElBTE9HLkRFU0NSSVBUSU9OJyxcbiAgICAgICAgICAgIGNvbmZpcm1NZXNzYWdlOiAnQ09SRS5NRVRBREFUQS5DT05URU5UX1RZUEUuRElBTE9HLkNPTkZJUk0nLFxuICAgICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgICAgbm9kZVR5cGVcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLm9wZW5EaWFsb2coZGF0YSwgJ2FkZi1jb250ZW50LXR5cGUtZGlhbG9nJywgJzYwMHB4Jyk7XG4gICAgICAgIHJldHVybiBzZWxlY3Q7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nLmNsb3NlQWxsKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvcGVuRGlhbG9nKGRhdGE6IENvbnRlbnRUeXBlRGlhbG9nQ29tcG9uZW50RGF0YSwgcGFuZWxDbGFzczogc3RyaW5nLCB3aWR0aDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nLm9wZW4oQ29udGVudFR5cGVEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBwYW5lbENsYXNzLFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { Injectable } from '@angular/core';
|
|
18
|
-
import { AlfrescoApiService } from '../../services/alfresco-api.service';
|
|
19
|
-
import { defer, forkJoin } from 'rxjs';
|
|
20
|
-
import { map } from 'rxjs/operators';
|
|
21
|
-
import { ClassesApi } from '@alfresco/js-api';
|
|
22
|
-
import * as i0 from "@angular/core";
|
|
23
|
-
import * as i1 from "../../services/alfresco-api.service";
|
|
24
|
-
export class PropertyDescriptorsService {
|
|
25
|
-
get classesApi() {
|
|
26
|
-
this._classesApi = this._classesApi ?? new ClassesApi(this.alfrescoApiService.getInstance());
|
|
27
|
-
return this._classesApi;
|
|
28
|
-
}
|
|
29
|
-
constructor(alfrescoApiService) {
|
|
30
|
-
this.alfrescoApiService = alfrescoApiService;
|
|
31
|
-
}
|
|
32
|
-
load(groupNames) {
|
|
33
|
-
const groupFetchStreams = groupNames
|
|
34
|
-
.map((groupName) => groupName.replace(':', '_'))
|
|
35
|
-
.map((groupName) => defer(() => this.classesApi.getClass(groupName)));
|
|
36
|
-
return forkJoin(groupFetchStreams).pipe(map(this.convertToObject));
|
|
37
|
-
}
|
|
38
|
-
convertToObject(propertyGroupsArray) {
|
|
39
|
-
return propertyGroupsArray.reduce((propertyGroups, propertyGroup) => Object.assign({}, propertyGroups, {
|
|
40
|
-
[propertyGroup.name]: propertyGroup
|
|
41
|
-
}), {});
|
|
42
|
-
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyDescriptorsService, deps: [{ token: i1.AlfrescoApiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
44
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyDescriptorsService, providedIn: 'root' }); }
|
|
45
|
-
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyDescriptorsService, decorators: [{
|
|
47
|
-
type: Injectable,
|
|
48
|
-
args: [{
|
|
49
|
-
providedIn: 'root'
|
|
50
|
-
}]
|
|
51
|
-
}], ctorParameters: () => [{ type: i1.AlfrescoApiService }] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZGVzY3JpcHRvcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvY29udGVudC1tZXRhZGF0YS9zZXJ2aWNlcy9wcm9wZXJ0eS1kZXNjcmlwdG9ycy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFjLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBSzlDLE1BQU0sT0FBTywwQkFBMEI7SUFFbkMsSUFBSSxVQUFVO1FBQ1YsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFBb0Isa0JBQXNDO1FBQXRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7SUFBRyxDQUFDO0lBRTlELElBQUksQ0FBQyxVQUFvQjtRQUNyQixNQUFNLGlCQUFpQixHQUFHLFVBQVU7YUFDL0IsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUMvQyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUUsT0FBTyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxlQUFlLENBQUMsbUJBQW9DO1FBQ3hELE9BQU8sbUJBQW1CLENBQUMsTUFBTSxDQUM3QixDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxjQUFjLEVBQUU7WUFDOUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsYUFBYTtTQUN0QyxDQUFDLEVBQ04sRUFBRSxDQUNMLENBQUM7SUFDTixDQUFDOytHQXpCUSwwQkFBMEI7bUhBQTFCLDBCQUEwQixjQUZ2QixNQUFNOzs0RkFFVCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hbGZyZXNjby1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBkZWZlciwgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFByb3BlcnR5R3JvdXAsIFByb3BlcnR5R3JvdXBDb250YWluZXIgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbnRlbnQtbWV0YWRhdGEuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDbGFzc2VzQXBpIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUHJvcGVydHlEZXNjcmlwdG9yc1NlcnZpY2Uge1xuICAgIHByaXZhdGUgX2NsYXNzZXNBcGk6IENsYXNzZXNBcGk7XG4gICAgZ2V0IGNsYXNzZXNBcGkoKTogQ2xhc3Nlc0FwaSB7XG4gICAgICAgIHRoaXMuX2NsYXNzZXNBcGkgPSB0aGlzLl9jbGFzc2VzQXBpID8/IG5ldyBDbGFzc2VzQXBpKHRoaXMuYWxmcmVzY29BcGlTZXJ2aWNlLmdldEluc3RhbmNlKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy5fY2xhc3Nlc0FwaTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFsZnJlc2NvQXBpU2VydmljZTogQWxmcmVzY29BcGlTZXJ2aWNlKSB7fVxuXG4gICAgbG9hZChncm91cE5hbWVzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8UHJvcGVydHlHcm91cENvbnRhaW5lcj4ge1xuICAgICAgICBjb25zdCBncm91cEZldGNoU3RyZWFtcyA9IGdyb3VwTmFtZXNcbiAgICAgICAgICAgIC5tYXAoKGdyb3VwTmFtZSkgPT4gZ3JvdXBOYW1lLnJlcGxhY2UoJzonLCAnXycpKVxuICAgICAgICAgICAgLm1hcCgoZ3JvdXBOYW1lKSA9PiBkZWZlcigoKSA9PiB0aGlzLmNsYXNzZXNBcGkuZ2V0Q2xhc3MoZ3JvdXBOYW1lKSkpO1xuXG4gICAgICAgIHJldHVybiBmb3JrSm9pbihncm91cEZldGNoU3RyZWFtcykucGlwZShtYXAodGhpcy5jb252ZXJ0VG9PYmplY3QpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbnZlcnRUb09iamVjdChwcm9wZXJ0eUdyb3Vwc0FycmF5OiBQcm9wZXJ0eUdyb3VwW10pOiBQcm9wZXJ0eUdyb3VwQ29udGFpbmVyIHtcbiAgICAgICAgcmV0dXJuIHByb3BlcnR5R3JvdXBzQXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgKHByb3BlcnR5R3JvdXBzLCBwcm9wZXJ0eUdyb3VwKSA9PlxuICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oe30sIHByb3BlcnR5R3JvdXBzLCB7XG4gICAgICAgICAgICAgICAgICAgIFtwcm9wZXJ0eUdyb3VwLm5hbWVdOiBwcm9wZXJ0eUdyb3VwXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB7fVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { inject, Injectable, Injector, runInInjectionContext } from '@angular/core';
|
|
18
|
-
import { AppConfigService, CardViewBoolItemModel, CardViewDateItemModel, CardViewDatetimeItemModel, CardViewFloatItemModel, CardViewIntItemModel, CardViewLongItemModel, CardViewSelectItemModel, CardViewTextItemModel, DecimalNumberPipe, LogService, MultiValuePipe, UserPreferencesService } from '@alfresco/adf-core';
|
|
19
|
-
import { of } from 'rxjs';
|
|
20
|
-
import * as i0 from "@angular/core";
|
|
21
|
-
const D_TEXT = 'd:text';
|
|
22
|
-
const D_MLTEXT = 'd:mltext';
|
|
23
|
-
const D_DATE = 'd:date';
|
|
24
|
-
const D_DATETIME = 'd:datetime';
|
|
25
|
-
const D_INT = 'd:int';
|
|
26
|
-
const D_LONG = 'd:long';
|
|
27
|
-
const D_FLOAT = 'd:float';
|
|
28
|
-
const D_DOUBLE = 'd:double';
|
|
29
|
-
const D_BOOLEAN = 'd:boolean';
|
|
30
|
-
export const RECOGNISED_ECM_TYPES = [D_TEXT, D_MLTEXT, D_DATE, D_DATETIME, D_INT, D_LONG, D_FLOAT, D_DOUBLE, D_BOOLEAN];
|
|
31
|
-
export class PropertyGroupTranslatorService {
|
|
32
|
-
constructor() {
|
|
33
|
-
this.userPreferenceService = inject(UserPreferencesService);
|
|
34
|
-
this.appConfig = inject(AppConfigService);
|
|
35
|
-
this.logService = inject(LogService);
|
|
36
|
-
this.injector = inject(Injector);
|
|
37
|
-
this.valueSeparator = this.appConfig.get('content-metadata.multi-value-pipe-separator');
|
|
38
|
-
}
|
|
39
|
-
translateToCardViewGroups(propertyGroups, propertyValues, definition) {
|
|
40
|
-
return propertyGroups.map((propertyGroup) => {
|
|
41
|
-
const translatedPropertyGroup = Object.assign({}, propertyGroup);
|
|
42
|
-
translatedPropertyGroup.properties = this.translateArray(propertyGroup.properties, propertyValues, definition);
|
|
43
|
-
translatedPropertyGroup.editable = translatedPropertyGroup.properties.some((property) => property.editable);
|
|
44
|
-
return translatedPropertyGroup;
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
translateProperty(property, startValue, allowEditing = false) {
|
|
48
|
-
this.checkECMTypeValidity(property.dataType);
|
|
49
|
-
const prefix = 'properties.';
|
|
50
|
-
const propertyDefinition = {
|
|
51
|
-
label: property.title || property.id,
|
|
52
|
-
value: startValue ? startValue : property.defaultValue,
|
|
53
|
-
key: `${prefix}${property.id}`,
|
|
54
|
-
default: property.defaultValue,
|
|
55
|
-
editable: property.isProtected ? false : allowEditing,
|
|
56
|
-
constraints: property?.constraints
|
|
57
|
-
};
|
|
58
|
-
return this.transform(propertyDefinition, property.dataType, property.isMultiValued);
|
|
59
|
-
}
|
|
60
|
-
translateArray(properties, propertyValues, definition) {
|
|
61
|
-
return properties.map((property) => this.translate(property, propertyValues, this.getPropertyConstraints(property.name, definition)));
|
|
62
|
-
}
|
|
63
|
-
translate(property, propertyValues, constraints) {
|
|
64
|
-
let propertyValue;
|
|
65
|
-
if (propertyValues && !this.isEmpty(propertyValues[property.name])) {
|
|
66
|
-
propertyValue = propertyValues[property.name];
|
|
67
|
-
}
|
|
68
|
-
this.checkECMTypeValidity(property.dataType);
|
|
69
|
-
const prefix = 'properties.';
|
|
70
|
-
const propertyDefinition = {
|
|
71
|
-
label: property.title || property.name,
|
|
72
|
-
value: propertyValue,
|
|
73
|
-
key: `${prefix}${property.name}`,
|
|
74
|
-
default: property.defaultValue,
|
|
75
|
-
editable: property.protected ? false : property.editable !== undefined ? property.editable : true,
|
|
76
|
-
constraints
|
|
77
|
-
};
|
|
78
|
-
return this.transform(propertyDefinition, property.dataType, property.multiValued);
|
|
79
|
-
}
|
|
80
|
-
transform(propertyDefinition, dataType, isMultiValued) {
|
|
81
|
-
let cardViewItemProperty;
|
|
82
|
-
if (this.isListOfValues(propertyDefinition.constraints)) {
|
|
83
|
-
const options = propertyDefinition.constraints[0].parameters.allowedValues.map((value) => ({ key: value, label: value }));
|
|
84
|
-
const properties = Object.assign(propertyDefinition, { options$: of(options) });
|
|
85
|
-
cardViewItemProperty = new CardViewSelectItemModel(properties);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
switch (dataType) {
|
|
89
|
-
case D_MLTEXT:
|
|
90
|
-
cardViewItemProperty = new CardViewTextItemModel(Object.assign(propertyDefinition, {
|
|
91
|
-
multiline: true
|
|
92
|
-
}));
|
|
93
|
-
break;
|
|
94
|
-
case D_INT:
|
|
95
|
-
cardViewItemProperty = new CardViewIntItemModel(Object.assign(propertyDefinition, {
|
|
96
|
-
multivalued: isMultiValued,
|
|
97
|
-
pipes: [{ pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
98
|
-
}));
|
|
99
|
-
break;
|
|
100
|
-
case D_LONG:
|
|
101
|
-
cardViewItemProperty = new CardViewLongItemModel(Object.assign(propertyDefinition, {
|
|
102
|
-
multivalued: isMultiValued,
|
|
103
|
-
pipes: [{ pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
104
|
-
}));
|
|
105
|
-
break;
|
|
106
|
-
case D_FLOAT:
|
|
107
|
-
case D_DOUBLE:
|
|
108
|
-
cardViewItemProperty = new CardViewFloatItemModel(Object.assign(propertyDefinition, {
|
|
109
|
-
multivalued: isMultiValued,
|
|
110
|
-
pipes: [{ pipe: this.getDecimalNumberPipe() }, { pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
111
|
-
}));
|
|
112
|
-
break;
|
|
113
|
-
case D_DATE:
|
|
114
|
-
cardViewItemProperty = new CardViewDateItemModel(Object.assign(propertyDefinition, {
|
|
115
|
-
multivalued: isMultiValued,
|
|
116
|
-
pipes: [{ pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
117
|
-
}));
|
|
118
|
-
break;
|
|
119
|
-
case D_DATETIME:
|
|
120
|
-
cardViewItemProperty = new CardViewDatetimeItemModel(Object.assign(propertyDefinition, {
|
|
121
|
-
multivalued: isMultiValued,
|
|
122
|
-
pipes: [{ pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
123
|
-
}));
|
|
124
|
-
break;
|
|
125
|
-
case D_BOOLEAN:
|
|
126
|
-
cardViewItemProperty = new CardViewBoolItemModel(propertyDefinition);
|
|
127
|
-
break;
|
|
128
|
-
case D_TEXT:
|
|
129
|
-
default:
|
|
130
|
-
cardViewItemProperty = new CardViewTextItemModel(Object.assign(propertyDefinition, {
|
|
131
|
-
multivalued: isMultiValued,
|
|
132
|
-
multiline: isMultiValued,
|
|
133
|
-
pipes: [{ pipe: new MultiValuePipe(), params: [this.valueSeparator] }]
|
|
134
|
-
}));
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
return cardViewItemProperty;
|
|
138
|
-
}
|
|
139
|
-
isListOfValues(constraint) {
|
|
140
|
-
return constraint?.[0]?.type === 'LIST';
|
|
141
|
-
}
|
|
142
|
-
getPropertyConstraints(propertyName, definition) {
|
|
143
|
-
return definition?.properties.find((item) => item.id === propertyName)?.constraints ?? [];
|
|
144
|
-
}
|
|
145
|
-
checkECMTypeValidity(ecmPropertyType) {
|
|
146
|
-
if (RECOGNISED_ECM_TYPES.indexOf(ecmPropertyType) === -1) {
|
|
147
|
-
this.logService.error(`Unknown type for mapping: ${ecmPropertyType}`);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
isEmpty(value) {
|
|
151
|
-
return value === undefined || value === null || value === '';
|
|
152
|
-
}
|
|
153
|
-
getDecimalNumberPipe() {
|
|
154
|
-
let decimalNumberPipe;
|
|
155
|
-
runInInjectionContext(this.injector, () => {
|
|
156
|
-
decimalNumberPipe = new DecimalNumberPipe(this.userPreferenceService, this.appConfig);
|
|
157
|
-
});
|
|
158
|
-
return decimalNumberPipe;
|
|
159
|
-
}
|
|
160
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyGroupTranslatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
161
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyGroupTranslatorService, providedIn: 'root' }); }
|
|
162
|
-
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PropertyGroupTranslatorService, decorators: [{
|
|
164
|
-
type: Injectable,
|
|
165
|
-
args: [{
|
|
166
|
-
providedIn: 'root'
|
|
167
|
-
}]
|
|
168
|
-
}], ctorParameters: () => [] });
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JvdXBzLXRyYW5zbGF0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb250ZW50LXNlcnZpY2VzL3NyYy9saWIvY29udGVudC1tZXRhZGF0YS9zZXJ2aWNlcy9wcm9wZXJ0eS1ncm91cHMtdHJhbnNsYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIseUJBQXlCLEVBQ3pCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFHcEIscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDVixjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHMUIsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBQ3hCLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUM1QixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFDeEIsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDO0FBQ2hDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQztBQUN0QixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFDeEIsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDO0FBQzFCLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUM1QixNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUM7QUFFOUIsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE1B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QixjQUYzQixNQUFNOzs0RkFFVCw4QkFBOEI7a0JBSDFDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBydW5JbkluamVjdGlvbkNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQXBwQ29uZmlnU2VydmljZSxcbiAgICBDYXJkVmlld0Jvb2xJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdEYXRlSXRlbU1vZGVsLFxuICAgIENhcmRWaWV3RGF0ZXRpbWVJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdGbG9hdEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0ludEl0ZW1Nb2RlbCxcbiAgICBDYXJkVmlld0l0ZW0sXG4gICAgQ2FyZFZpZXdJdGVtUHJvcGVydGllcyxcbiAgICBDYXJkVmlld0xvbmdJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdTZWxlY3RJdGVtTW9kZWwsXG4gICAgQ2FyZFZpZXdUZXh0SXRlbU1vZGVsLFxuICAgIERlY2ltYWxOdW1iZXJQaXBlLFxuICAgIExvZ1NlcnZpY2UsXG4gICAgTXVsdGlWYWx1ZVBpcGUsXG4gICAgVXNlclByZWZlcmVuY2VzU2VydmljZVxufSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgQ2FyZFZpZXdHcm91cCwgT3JnYW5pc2VkUHJvcGVydHlHcm91cCwgUHJvcGVydHkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbnRlbnQtbWV0YWRhdGEuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29uc3RyYWludCwgRGVmaW5pdGlvbiwgUHJvcGVydHkgYXMgUHJvcGVydHlCYXNlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5cbmNvbnN0IERfVEVYVCA9ICdkOnRleHQnO1xuY29uc3QgRF9NTFRFWFQgPSAnZDptbHRleHQnO1xuY29uc3QgRF9EQVRFID0gJ2Q6ZGF0ZSc7XG5jb25zdCBEX0RBVEVUSU1FID0gJ2Q6ZGF0ZXRpbWUnO1xuY29uc3QgRF9JTlQgPSAnZDppbnQnO1xuY29uc3QgRF9MT05HID0gJ2Q6bG9uZyc7XG5jb25zdCBEX0ZMT0FUID0gJ2Q6ZmxvYXQnO1xuY29uc3QgRF9ET1VCTEUgPSAnZDpkb3VibGUnO1xuY29uc3QgRF9CT09MRUFOID0gJ2Q6Ym9vbGVhbic7XG5cbmV4cG9ydCBjb25zdCBSRUNPR05JU0VEX0VDTV9UWVBFUyA9IFtEX1RFWFQsIERfTUxURVhULCBEX0RBVEUsIERfREFURVRJTUUsIERfSU5ULCBEX0xPTkcsIERfRkxPQVQsIERfRE9VQkxFLCBEX0JPT0xFQU5dO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JvdXBUcmFuc2xhdG9yU2VydmljZSB7XG4gICAgcHJpdmF0ZSB1c2VyUHJlZmVyZW5jZVNlcnZpY2UgPSBpbmplY3QoVXNlclByZWZlcmVuY2VzU2VydmljZSk7XG4gICAgcHJpdmF0ZSBhcHBDb25maWcgPSBpbmplY3QoQXBwQ29uZmlnU2VydmljZSk7XG4gICAgcHJpdmF0ZSBsb2dTZXJ2aWNlID0gaW5qZWN0KExvZ1NlcnZpY2UpO1xuXG4gICAgdmFsdWVTZXBhcmF0b3I6IHN0cmluZztcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMudmFsdWVTZXBhcmF0b3IgPSB0aGlzLmFwcENvbmZpZy5nZXQ8c3RyaW5nPignY29udGVudC1tZXRhZGF0YS5tdWx0aS12YWx1ZS1waXBlLXNlcGFyYXRvcicpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0cmFuc2xhdGVUb0NhcmRWaWV3R3JvdXBzKHByb3BlcnR5R3JvdXBzOiBPcmdhbmlzZWRQcm9wZXJ0eUdyb3VwW10sIHByb3BlcnR5VmFsdWVzLCBkZWZpbml0aW9uOiBEZWZpbml0aW9uKTogQ2FyZFZpZXdHcm91cFtdIHtcbiAgICAgICAgcmV0dXJuIHByb3BlcnR5R3JvdXBzLm1hcCgocHJvcGVydHlHcm91cCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNsYXRlZFByb3BlcnR5R3JvdXA6IGFueSA9IE9iamVjdC5hc3NpZ24oe30sIHByb3BlcnR5R3JvdXApO1xuICAgICAgICAgICAgdHJhbnNsYXRlZFByb3BlcnR5R3JvdXAucHJvcGVydGllcyA9IHRoaXMudHJhbnNsYXRlQXJyYXkocHJvcGVydHlHcm91cC5wcm9wZXJ0aWVzLCBwcm9wZXJ0eVZhbHVlcywgZGVmaW5pdGlvbik7XG4gICAgICAgICAgICB0cmFuc2xhdGVkUHJvcGVydHlHcm91cC5lZGl0YWJsZSA9IHRyYW5zbGF0ZWRQcm9wZXJ0eUdyb3VwLnByb3BlcnRpZXMuc29tZSgocHJvcGVydHkpID0+IHByb3BlcnR5LmVkaXRhYmxlKTtcbiAgICAgICAgICAgIHJldHVybiB0cmFuc2xhdGVkUHJvcGVydHlHcm91cDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHRyYW5zbGF0ZVByb3BlcnR5KHByb3BlcnR5OiBQcm9wZXJ0eUJhc2UsIHN0YXJ0VmFsdWU/OiBhbnksIGFsbG93RWRpdGluZzogYm9vbGVhbiA9IGZhbHNlKTogQ2FyZFZpZXdJdGVtIHtcbiAgICAgICAgdGhpcy5jaGVja0VDTVR5cGVWYWxpZGl0eShwcm9wZXJ0eS5kYXRhVHlwZSk7XG5cbiAgICAgICAgY29uc3QgcHJlZml4ID0gJ3Byb3BlcnRpZXMuJztcblxuICAgICAgICBjb25zdCBwcm9wZXJ0eURlZmluaXRpb246IENhcmRWaWV3SXRlbVByb3BlcnRpZXMgPSB7XG4gICAgICAgICAgICBsYWJlbDogcHJvcGVydHkudGl0bGUgfHwgcHJvcGVydHkuaWQsXG4gICAgICAgICAgICB2YWx1ZTogc3RhcnRWYWx1ZSA/IHN0YXJ0VmFsdWUgOiBwcm9wZXJ0eS5kZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICBrZXk6IGAke3ByZWZpeH0ke3Byb3BlcnR5LmlkfWAsXG4gICAgICAgICAgICBkZWZhdWx0OiBwcm9wZXJ0eS5kZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICBlZGl0YWJsZTogcHJvcGVydHkuaXNQcm90ZWN0ZWQgPyBmYWxzZSA6IGFsbG93RWRpdGluZyxcbiAgICAgICAgICAgIGNvbnN0cmFpbnRzOiBwcm9wZXJ0eT8uY29uc3RyYWludHNcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ocHJvcGVydHlEZWZpbml0aW9uLCBwcm9wZXJ0eS5kYXRhVHlwZSwgcHJvcGVydHkuaXNNdWx0aVZhbHVlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVBcnJheShwcm9wZXJ0aWVzOiBQcm9wZXJ0eVtdLCBwcm9wZXJ0eVZhbHVlczogYW55LCBkZWZpbml0aW9uOiBEZWZpbml0aW9uKTogQ2FyZFZpZXdJdGVtW10ge1xuICAgICAgICByZXR1cm4gcHJvcGVydGllcy5tYXAoKHByb3BlcnR5KSA9PiB0aGlzLnRyYW5zbGF0ZShwcm9wZXJ0eSwgcHJvcGVydHlWYWx1ZXMsIHRoaXMuZ2V0UHJvcGVydHlDb25zdHJhaW50cyhwcm9wZXJ0eS5uYW1lLCBkZWZpbml0aW9uKSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdHJhbnNsYXRlKHByb3BlcnR5OiBQcm9wZXJ0eSwgcHJvcGVydHlWYWx1ZXM6IGFueSwgY29uc3RyYWludHM6IENvbnN0cmFpbnRbXSk6IENhcmRWaWV3SXRlbSB7XG4gICAgICAgIGxldCBwcm9wZXJ0eVZhbHVlOiBhbnk7XG4gICAgICAgIGlmIChwcm9wZXJ0eVZhbHVlcyAmJiAhdGhpcy5pc0VtcHR5KHByb3BlcnR5VmFsdWVzW3Byb3BlcnR5Lm5hbWVdKSkge1xuICAgICAgICAgICAgcHJvcGVydHlWYWx1ZSA9IHByb3BlcnR5VmFsdWVzW3Byb3BlcnR5Lm5hbWVdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jaGVja0VDTVR5cGVWYWxpZGl0eShwcm9wZXJ0eS5kYXRhVHlwZSk7XG5cbiAgICAgICAgY29uc3QgcHJlZml4ID0gJ3Byb3BlcnRpZXMuJztcblxuICAgICAgICBjb25zdCBwcm9wZXJ0eURlZmluaXRpb246IENhcmRWaWV3SXRlbVByb3BlcnRpZXMgPSB7XG4gICAgICAgICAgICBsYWJlbDogcHJvcGVydHkudGl0bGUgfHwgcHJvcGVydHkubmFtZSxcbiAgICAgICAgICAgIHZhbHVlOiBwcm9wZXJ0eVZhbHVlLFxuICAgICAgICAgICAga2V5OiBgJHtwcmVmaXh9JHtwcm9wZXJ0eS5uYW1lfWAsXG4gICAgICAgICAgICBkZWZhdWx0OiBwcm9wZXJ0eS5kZWZhdWx0VmFsdWUsXG4gICAgICAgICAgICBlZGl0YWJsZTogcHJvcGVydHkucHJvdGVjdGVkID8gZmFsc2UgOiBwcm9wZXJ0eS5lZGl0YWJsZSAhPT0gdW5kZWZpbmVkID8gcHJvcGVydHkuZWRpdGFibGUgOiB0cnVlLFxuICAgICAgICAgICAgY29uc3RyYWludHNcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ocHJvcGVydHlEZWZpbml0aW9uLCBwcm9wZXJ0eS5kYXRhVHlwZSwgcHJvcGVydHkubXVsdGlWYWx1ZWQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdHJhbnNmb3JtKHByb3BlcnR5RGVmaW5pdGlvbjogQ2FyZFZpZXdJdGVtUHJvcGVydGllcywgZGF0YVR5cGU6IHN0cmluZywgaXNNdWx0aVZhbHVlZDogYm9vbGVhbik6IENhcmRWaWV3SXRlbSB7XG4gICAgICAgIGxldCBjYXJkVmlld0l0ZW1Qcm9wZXJ0eTogQ2FyZFZpZXdJdGVtO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTGlzdE9mVmFsdWVzKHByb3BlcnR5RGVmaW5pdGlvbi5jb25zdHJhaW50cykpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSBwcm9wZXJ0eURlZmluaXRpb24uY29uc3RyYWludHNbMF0ucGFyYW1ldGVycy5hbGxvd2VkVmFsdWVzLm1hcCgodmFsdWUpID0+ICh7IGtleTogdmFsdWUsIGxhYmVsOiB2YWx1ZSB9KSk7XG4gICAgICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gT2JqZWN0LmFzc2lnbihwcm9wZXJ0eURlZmluaXRpb24sIHsgb3B0aW9ucyQ6IG9mKG9wdGlvbnMpIH0pO1xuXG4gICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld1NlbGVjdEl0ZW1Nb2RlbChwcm9wZXJ0aWVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN3aXRjaCAoZGF0YVR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlIERfTUxURVhUOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHByb3BlcnR5RGVmaW5pdGlvbiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZTogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIERfSU5UOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld0ludEl0ZW1Nb2RlbChcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24ocHJvcGVydHlEZWZpbml0aW9uLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGl2YWx1ZWQ6IGlzTXVsdGlWYWx1ZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGlwZXM6IFt7IHBpcGU6IG5ldyBNdWx0aVZhbHVlUGlwZSgpLCBwYXJhbXM6IFt0aGlzLnZhbHVlU2VwYXJhdG9yXSB9XVxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIERfTE9ORzpcbiAgICAgICAgICAgICAgICAgICAgY2FyZFZpZXdJdGVtUHJvcGVydHkgPSBuZXcgQ2FyZFZpZXdMb25nSXRlbU1vZGVsKFxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwcm9wZXJ0eURlZmluaXRpb24sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXZhbHVlZDogaXNNdWx0aVZhbHVlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXBlczogW3sgcGlwZTogbmV3IE11bHRpVmFsdWVQaXBlKCksIHBhcmFtczogW3RoaXMudmFsdWVTZXBhcmF0b3JdIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgRF9GTE9BVDpcbiAgICAgICAgICAgICAgICBjYXNlIERfRE9VQkxFOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld0Zsb2F0SXRlbU1vZGVsKFxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwcm9wZXJ0eURlZmluaXRpb24sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXZhbHVlZDogaXNNdWx0aVZhbHVlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXBlczogW3sgcGlwZTogdGhpcy5nZXREZWNpbWFsTnVtYmVyUGlwZSgpIH0sIHsgcGlwZTogbmV3IE11bHRpVmFsdWVQaXBlKCksIHBhcmFtczogW3RoaXMudmFsdWVTZXBhcmF0b3JdIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgRF9EQVRFOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld0RhdGVJdGVtTW9kZWwoXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHByb3BlcnR5RGVmaW5pdGlvbiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpdmFsdWVkOiBpc011bHRpVmFsdWVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpcGVzOiBbeyBwaXBlOiBuZXcgTXVsdGlWYWx1ZVBpcGUoKSwgcGFyYW1zOiBbdGhpcy52YWx1ZVNlcGFyYXRvcl0gfV1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSBEX0RBVEVUSU1FOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld0RhdGV0aW1lSXRlbU1vZGVsKFxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwcm9wZXJ0eURlZmluaXRpb24sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXZhbHVlZDogaXNNdWx0aVZhbHVlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXBlczogW3sgcGlwZTogbmV3IE11bHRpVmFsdWVQaXBlKCksIHBhcmFtczogW3RoaXMudmFsdWVTZXBhcmF0b3JdIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgRF9CT09MRUFOOlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld0Jvb2xJdGVtTW9kZWwocHJvcGVydHlEZWZpbml0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIERfVEVYVDpcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBjYXJkVmlld0l0ZW1Qcm9wZXJ0eSA9IG5ldyBDYXJkVmlld1RleHRJdGVtTW9kZWwoXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHByb3BlcnR5RGVmaW5pdGlvbiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpdmFsdWVkOiBpc011bHRpVmFsdWVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZTogaXNNdWx0aVZhbHVlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXBlczogW3sgcGlwZTogbmV3IE11bHRpVmFsdWVQaXBlKCksIHBhcmFtczogW3RoaXMudmFsdWVTZXBhcmF0b3JdIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNhcmRWaWV3SXRlbVByb3BlcnR5O1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNMaXN0T2ZWYWx1ZXMoY29uc3RyYWludDogQ29uc3RyYWludFtdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBjb25zdHJhaW50Py5bMF0/LnR5cGUgPT09ICdMSVNUJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByb3BlcnR5Q29uc3RyYWludHMocHJvcGVydHlOYW1lOiBzdHJpbmcsIGRlZmluaXRpb246IERlZmluaXRpb24pOiBDb25zdHJhaW50W10ge1xuICAgICAgICByZXR1cm4gZGVmaW5pdGlvbj8ucHJvcGVydGllcy5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBwcm9wZXJ0eU5hbWUpPy5jb25zdHJhaW50cyA/PyBbXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrRUNNVHlwZVZhbGlkaXR5KGVjbVByb3BlcnR5VHlwZTogc3RyaW5nKSB7XG4gICAgICAgIGlmIChSRUNPR05JU0VEX0VDTV9UWVBFUy5pbmRleE9mKGVjbVByb3BlcnR5VHlwZSkgPT09IC0xKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ1NlcnZpY2UuZXJyb3IoYFVua25vd24gdHlwZSBmb3IgbWFwcGluZzogJHtlY21Qcm9wZXJ0eVR5cGV9YCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlzRW1wdHkodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREZWNpbWFsTnVtYmVyUGlwZSgpOiBEZWNpbWFsTnVtYmVyUGlwZSB7XG4gICAgICAgIGxldCBkZWNpbWFsTnVtYmVyUGlwZTogRGVjaW1hbE51bWJlclBpcGU7XG4gICAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dCh0aGlzLmluamVjdG9yLCAoKSA9PiB7XG4gICAgICAgICAgICBkZWNpbWFsTnVtYmVyUGlwZSA9IG5ldyBEZWNpbWFsTnVtYmVyUGlwZSh0aGlzLnVzZXJQcmVmZXJlbmNlU2VydmljZSwgdGhpcy5hcHBDb25maWcpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGRlY2ltYWxOdW1iZXJQaXBlO1xuICAgIH1cbn1cbiJdfQ==
|