@alfresco/adf-content-services
Version:
Alfresco ADF content services
66 lines • 8.94 kB
JavaScript
/*!
* @license
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class ContentNodeSelectorPanelService {
constructor() {
this.propertyTypes = ['d:text', 'd:date', 'd:datetime'];
this.modelPropertyTypeToSearchFilterTypeMap = new Map();
this.modelPropertyTypeToSearchFilterTypeMap.set(this.propertyTypes[0], 'text');
this.modelPropertyTypeToSearchFilterTypeMap.set(this.propertyTypes[1], 'date-range');
this.modelPropertyTypeToSearchFilterTypeMap.set(this.propertyTypes[2], 'datetime-range');
}
convertCustomModelPropertiesToSearchCategories() {
const searchConfig = [];
this.customModels?.forEach((propertyModel) => {
searchConfig.push(this.convertModelPropertyIntoSearchFilter(propertyModel));
});
return searchConfig;
}
convertModelPropertyIntoSearchFilter(modelProperty) {
let filterSearch;
if (this.isTypeSupported(modelProperty.dataType)) {
filterSearch = {
id: modelProperty.prefixedName,
name: modelProperty.prefixedName,
expanded: false,
enabled: true,
component: {
selector: this.modelPropertyTypeToSearchFilterTypeMap.get(modelProperty.dataType),
settings: {
pattern: `${modelProperty.prefixedName}:'(.*?)'`,
field: `${modelProperty.prefixedName}`,
placeholder: `Enter the ${modelProperty.name}`
}
}
};
}
return filterSearch;
}
isTypeSupported(dataType) {
return this.propertyTypes.includes(dataType);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentNodeSelectorPanelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentNodeSelectorPanelService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentNodeSelectorPanelService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: () => [] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1ub2RlLXNlbGVjdG9yLXBhbmVsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29udGVudC1zZXJ2aWNlcy9zcmMvbGliL2NvbnRlbnQtbm9kZS1zZWxlY3Rvci9jb250ZW50LW5vZGUtc2VsZWN0b3ItcGFuZWwvY29udGVudC1ub2RlLXNlbGVjdG9yLXBhbmVsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNM0MsTUFBTSxPQUFPLCtCQUErQjtJQUt4QztRQUpBLGtCQUFhLEdBQUcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ25ELDJDQUFzQyxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO1FBSS9ELElBQUksQ0FBQyxzQ0FBc0MsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsc0NBQXNDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELDhDQUE4QztRQUMxQyxNQUFNLFlBQVksR0FBcUIsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDekMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0NBQW9DLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNoRixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxvQ0FBb0MsQ0FBQyxhQUFrQjtRQUNuRCxJQUFJLFlBQTRCLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQy9DLFlBQVksR0FBRztnQkFDWCxFQUFFLEVBQUUsYUFBYSxDQUFDLFlBQVk7Z0JBQzlCLElBQUksRUFBRSxhQUFhLENBQUMsWUFBWTtnQkFDaEMsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsU0FBUyxFQUFFO29CQUNQLFFBQVEsRUFBRSxJQUFJLENBQUMsc0NBQXNDLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7b0JBQ2pGLFFBQVEsRUFBRTt3QkFDTixPQUFPLEVBQUUsR0FBRyxhQUFhLENBQUMsWUFBWSxVQUFVO3dCQUNoRCxLQUFLLEVBQUUsR0FBRyxhQUFhLENBQUMsWUFBWSxFQUFFO3dCQUN0QyxXQUFXLEVBQUUsYUFBYSxhQUFhLENBQUMsSUFBSSxFQUFFO3FCQUNqRDtpQkFDSjthQUNKLENBQUM7UUFDTixDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxRQUFnQjtRQUM1QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7OEdBM0NRLCtCQUErQjtrSEFBL0IsK0JBQStCLGNBRjVCLE1BQU07OzJGQUVULCtCQUErQjtrQkFIM0MsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlYXJjaENhdGVnb3J5IH0gZnJvbSAnLi4vLi4vc2VhcmNoL21vZGVscy9zZWFyY2gtY2F0ZWdvcnkuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50Tm9kZVNlbGVjdG9yUGFuZWxTZXJ2aWNlIHtcbiAgICBwcm9wZXJ0eVR5cGVzID0gWydkOnRleHQnLCAnZDpkYXRlJywgJ2Q6ZGF0ZXRpbWUnXTtcbiAgICBtb2RlbFByb3BlcnR5VHlwZVRvU2VhcmNoRmlsdGVyVHlwZU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgY3VzdG9tTW9kZWxzOiBhbnlbXTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLm1vZGVsUHJvcGVydHlUeXBlVG9TZWFyY2hGaWx0ZXJUeXBlTWFwLnNldCh0aGlzLnByb3BlcnR5VHlwZXNbMF0sICd0ZXh0Jyk7XG4gICAgICAgIHRoaXMubW9kZWxQcm9wZXJ0eVR5cGVUb1NlYXJjaEZpbHRlclR5cGVNYXAuc2V0KHRoaXMucHJvcGVydHlUeXBlc1sxXSwgJ2RhdGUtcmFuZ2UnKTtcbiAgICAgICAgdGhpcy5tb2RlbFByb3BlcnR5VHlwZVRvU2VhcmNoRmlsdGVyVHlwZU1hcC5zZXQodGhpcy5wcm9wZXJ0eVR5cGVzWzJdLCAnZGF0ZXRpbWUtcmFuZ2UnKTtcbiAgICB9XG5cbiAgICBjb252ZXJ0Q3VzdG9tTW9kZWxQcm9wZXJ0aWVzVG9TZWFyY2hDYXRlZ29yaWVzKCk6IFNlYXJjaENhdGVnb3J5W10ge1xuICAgICAgICBjb25zdCBzZWFyY2hDb25maWc6IFNlYXJjaENhdGVnb3J5W10gPSBbXTtcbiAgICAgICAgdGhpcy5jdXN0b21Nb2RlbHM/LmZvckVhY2goKHByb3BlcnR5TW9kZWwpID0+IHtcbiAgICAgICAgICAgIHNlYXJjaENvbmZpZy5wdXNoKHRoaXMuY29udmVydE1vZGVsUHJvcGVydHlJbnRvU2VhcmNoRmlsdGVyKHByb3BlcnR5TW9kZWwpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHNlYXJjaENvbmZpZztcbiAgICB9XG5cbiAgICBjb252ZXJ0TW9kZWxQcm9wZXJ0eUludG9TZWFyY2hGaWx0ZXIobW9kZWxQcm9wZXJ0eTogYW55KTogU2VhcmNoQ2F0ZWdvcnkge1xuICAgICAgICBsZXQgZmlsdGVyU2VhcmNoOiBTZWFyY2hDYXRlZ29yeTtcbiAgICAgICAgaWYgKHRoaXMuaXNUeXBlU3VwcG9ydGVkKG1vZGVsUHJvcGVydHkuZGF0YVR5cGUpKSB7XG4gICAgICAgICAgICBmaWx0ZXJTZWFyY2ggPSB7XG4gICAgICAgICAgICAgICAgaWQ6IG1vZGVsUHJvcGVydHkucHJlZml4ZWROYW1lLFxuICAgICAgICAgICAgICAgIG5hbWU6IG1vZGVsUHJvcGVydHkucHJlZml4ZWROYW1lLFxuICAgICAgICAgICAgICAgIGV4cGFuZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDoge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RvcjogdGhpcy5tb2RlbFByb3BlcnR5VHlwZVRvU2VhcmNoRmlsdGVyVHlwZU1hcC5nZXQobW9kZWxQcm9wZXJ0eS5kYXRhVHlwZSksXG4gICAgICAgICAgICAgICAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuOiBgJHttb2RlbFByb3BlcnR5LnByZWZpeGVkTmFtZX06JyguKj8pJ2AsXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZDogYCR7bW9kZWxQcm9wZXJ0eS5wcmVmaXhlZE5hbWV9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBgRW50ZXIgdGhlICR7bW9kZWxQcm9wZXJ0eS5uYW1lfWBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbHRlclNlYXJjaDtcbiAgICB9XG5cbiAgICBpc1R5cGVTdXBwb3J0ZWQoZGF0YVR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wZXJ0eVR5cGVzLmluY2x1ZGVzKGRhdGFUeXBlKTtcbiAgICB9XG59XG4iXX0=