ngx-edu-sharing-ui 9.1.2 → 9.1.3
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.
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { MdsHelperService } from "../mds/mds-helper.service";
|
|
3
|
+
import { MdsService } from 'ngx-edu-sharing-api';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class SearchHelperService {
|
|
6
|
+
static { this.MAX_QUERY_CONCAT_PARAMS = 400; }
|
|
7
|
+
constructor() { }
|
|
8
|
+
/**
|
|
9
|
+
* converts given filter criteria and converts them for a body to be used for a search request
|
|
10
|
+
* @param properties
|
|
11
|
+
* @param mdsWidgets
|
|
12
|
+
* @param unfoldTrees
|
|
13
|
+
*/
|
|
14
|
+
convertCritieria(properties, mdsWidgets, unfoldTrees = true) {
|
|
15
|
+
const criteria = [];
|
|
16
|
+
// deep copy
|
|
17
|
+
properties = JSON.parse(JSON.stringify(properties));
|
|
18
|
+
for (const property in properties) {
|
|
19
|
+
let widget = MdsHelperService.getWidget(property, undefined, mdsWidgets);
|
|
20
|
+
if (widget && widget.type == 'multivalueTree' && unfoldTrees) {
|
|
21
|
+
let attach = MdsService.unfoldTreeChilds(properties[property], widget);
|
|
22
|
+
if (attach) {
|
|
23
|
+
if (attach.length > SearchHelperService.MAX_QUERY_CONCAT_PARAMS) {
|
|
24
|
+
console.info('param ' +
|
|
25
|
+
property +
|
|
26
|
+
' has too many unfold childs (' +
|
|
27
|
+
attach.length +
|
|
28
|
+
'), falling back to basic prefix-based search');
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
properties[property] = properties[property].concat(attach);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (properties[property]?.length && properties[property].every((p) => p != null && !!p))
|
|
36
|
+
criteria.push({
|
|
37
|
+
property: property,
|
|
38
|
+
values: properties[property],
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return criteria;
|
|
42
|
+
}
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
44
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, providedIn: 'root' }); }
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, decorators: [{
|
|
47
|
+
type: Injectable,
|
|
48
|
+
args: [{
|
|
49
|
+
providedIn: 'root'
|
|
50
|
+
}]
|
|
51
|
+
}], ctorParameters: function () { return []; } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlbHBlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9zZXJ2aWNlcy9zZWFyY2gtaGVscGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsVUFBVSxFQUFZLE1BQU0scUJBQXFCLENBQUM7O0FBTzFELE1BQU0sT0FBTyxtQkFBbUI7YUFDWiw0QkFBdUIsR0FBRyxHQUFHLENBQUM7SUFFOUMsZ0JBQWUsQ0FBQztJQUdoQjs7Ozs7T0FLRztJQUNILGdCQUFnQixDQUFDLFVBQWtCLEVBQUUsVUFBdUIsRUFBRSxXQUFXLEdBQUcsSUFBSTtRQUM1RSxNQUFNLFFBQVEsR0FHUixFQUFFLENBQUM7UUFDVCxZQUFZO1FBQ1osVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3BELEtBQUssTUFBTSxRQUFRLElBQUksVUFBVSxFQUFFO1lBQy9CLElBQUksTUFBTSxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3pFLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksZ0JBQWdCLElBQUksV0FBVyxFQUFFO2dCQUMxRCxJQUFJLE1BQU0sR0FBRyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLE1BQU0sRUFBRTtvQkFDUixJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsbUJBQW1CLENBQUMsdUJBQXVCLEVBQUU7d0JBQzdELE9BQU8sQ0FBQyxJQUFJLENBQ1IsUUFBUTs0QkFDUixRQUFROzRCQUNSLCtCQUErQjs0QkFDL0IsTUFBTSxDQUFDLE1BQU07NEJBQ2IsOENBQThDLENBQ2pELENBQUM7cUJBQ0w7eUJBQU07d0JBQ0gsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7cUJBQzlEO2lCQUNKO2FBQ0o7WUFDRCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNuRixRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNWLFFBQVEsRUFBRSxRQUFRO29CQUNsQixNQUFNLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztpQkFDL0IsQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDOzhHQTVDUSxtQkFBbUI7a0hBQW5CLG1CQUFtQixjQUZoQixNQUFNOzsyRkFFVCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWRzSGVscGVyU2VydmljZX0gZnJvbSBcIi4uL21kcy9tZHMtaGVscGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7TWRzU2VydmljZSwgTWRzV2lkZ2V0fSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcblxuZXhwb3J0IHR5cGUgVmFsdWVzID0gIHsgW3A6IHN0cmluZ106IHN0cmluZ1tdIH07XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoSGVscGVyU2VydmljZSB7XG4gICAgc3RhdGljIHJlYWRvbmx5IE1BWF9RVUVSWV9DT05DQVRfUEFSQU1TID0gNDAwO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG5cbiAgICAvKipcbiAgICAgKiBjb252ZXJ0cyBnaXZlbiBmaWx0ZXIgY3JpdGVyaWEgYW5kIGNvbnZlcnRzIHRoZW0gZm9yIGEgYm9keSB0byBiZSB1c2VkIGZvciBhIHNlYXJjaCByZXF1ZXN0XG4gICAgICogQHBhcmFtIHByb3BlcnRpZXNcbiAgICAgKiBAcGFyYW0gbWRzV2lkZ2V0c1xuICAgICAqIEBwYXJhbSB1bmZvbGRUcmVlc1xuICAgICAqL1xuICAgIGNvbnZlcnRDcml0aWVyaWEocHJvcGVydGllczogVmFsdWVzLCBtZHNXaWRnZXRzOiBNZHNXaWRnZXRbXSwgdW5mb2xkVHJlZXMgPSB0cnVlKSB7XG4gICAgICAgIGNvbnN0IGNyaXRlcmlhOntcbiAgICAgICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgICAgICB2YWx1ZXM6IHN0cmluZ1tdLFxuICAgICAgICB9W10gPSBbXTtcbiAgICAgICAgLy8gZGVlcCBjb3B5XG4gICAgICAgIHByb3BlcnRpZXMgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHByb3BlcnRpZXMpKTtcbiAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICBsZXQgd2lkZ2V0ID0gTWRzSGVscGVyU2VydmljZS5nZXRXaWRnZXQocHJvcGVydHksIHVuZGVmaW5lZCwgbWRzV2lkZ2V0cyk7XG4gICAgICAgICAgICBpZiAod2lkZ2V0ICYmIHdpZGdldC50eXBlID09ICdtdWx0aXZhbHVlVHJlZScgJiYgdW5mb2xkVHJlZXMpIHtcbiAgICAgICAgICAgICAgICBsZXQgYXR0YWNoID0gTWRzU2VydmljZS51bmZvbGRUcmVlQ2hpbGRzKHByb3BlcnRpZXNbcHJvcGVydHldLCB3aWRnZXQpO1xuICAgICAgICAgICAgICAgIGlmIChhdHRhY2gpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGF0dGFjaC5sZW5ndGggPiBTZWFyY2hIZWxwZXJTZXJ2aWNlLk1BWF9RVUVSWV9DT05DQVRfUEFSQU1TKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmluZm8oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3BhcmFtICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5ICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnIGhhcyB0b28gbWFueSB1bmZvbGQgY2hpbGRzICgnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRhY2gubGVuZ3RoICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKSwgZmFsbGluZyBiYWNrIHRvIGJhc2ljIHByZWZpeC1iYXNlZCBzZWFyY2gnLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXNbcHJvcGVydHldID0gcHJvcGVydGllc1twcm9wZXJ0eV0uY29uY2F0KGF0dGFjaCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocHJvcGVydGllc1twcm9wZXJ0eV0/Lmxlbmd0aCAmJiBwcm9wZXJ0aWVzW3Byb3BlcnR5XS5ldmVyeSgocCkgPT4gcCAhPSBudWxsICYmICEhcCkpXG4gICAgICAgICAgICAgICAgY3JpdGVyaWEucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIHByb3BlcnR5OiBwcm9wZXJ0eSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVzOiBwcm9wZXJ0aWVzW3Byb3BlcnR5XSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY3JpdGVyaWE7XG4gICAgfVxufVxuIl19
|
package/esm2022/module.mjs
CHANGED
|
@@ -81,4 +81,5 @@ export * from './lib/util/rest-helper';
|
|
|
81
81
|
export * from './lib/util/ui-animation';
|
|
82
82
|
export * from './lib/util/ui-constants';
|
|
83
83
|
export * from './lib/mds/mds-helper.service';
|
|
84
|
-
|
|
84
|
+
export * from './lib/services/search-helper.service';
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBlZHUtc2hhcmluZy11aVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbmJhci9hY3Rpb25iYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbW1vbi9lZHUtc2hhcmluZy11aS1jb21tb24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21kcy9tZHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvYm9yZGVyLWJveC1vYnNlcnZlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9jaGVjay10ZXh0LW92ZXJmbG93LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2RyYWctbm9kZXMvZHJhZy1ub2Rlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2RyYWctbm9kZXMvbm9kZXMtZHJhZy1zb3VyY2UuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZHJhZy1ub2Rlcy9ub2Rlcy1kcmFnLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2RyYWctbm9kZXMvbm9kZXMtZHJvcC10YXJnZXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZm9jdXMtc3RhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvaWNvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lZHUtc2hhcmluZy11aS1jb25maWd1cmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VkdS1zaGFyaW5nLXVpLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LWl0ZW1zL2Zvcm1hdC1kdXJhdGlvbi5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpc3QtaXRlbXMvbGlzdC1iYXNlL2xpc3QtYmFzZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGlzdC1pdGVtcy9saXN0LWNvdW50cy9saXN0LWNvdW50cy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGlzdC1pdGVtcy9saXN0LWl0ZW1zLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LWl0ZW1zL2xpc3QtdGV4dC9saXN0LXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpc3QtaXRlbXMvbm9kZS1yb3cvbm9kZS1yb3cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vZGUtZW50cmllcy9jb21iaW5lZC1kYXRhLXNvdXJjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvY3VzdG9tLXRlbXBsYXRlcy1kYXRhLXNvdXJjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvZW50cmllcy1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvaXRlbXMtY2FwJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vZGUtZW50cmllcy9saXN0LWl0ZW0tbGFiZWwucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1jYWNoZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1kYXRhLXNvdXJjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1kYXRhLXNvdXJjZS1yZW1vdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy1nbG9iYWwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1lbnRyaWVzLXdyYXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vZGUtZW50cmllcy9ub2RlLWVudHJpZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25vZGUtdXJsL25vZGUtdXJsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9wcm9wZXJ0eS1zbHVnLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZmlsZS1zaXplLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZm9ybWF0LWRhdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9ub2RlLWljb24ucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9ub2RlLWltYWdlLXNpemUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9ub2RlLWltYWdlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvbm9kZS1wZXJzb24tbmFtZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL25vZGUtdGl0bGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy92Y2FyZC1uYW1lLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYWJzdHJhY3QvYXBwLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYWJzdHJhY3Qva2V5Ym9hcmQtc2hvcnRjdXRzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYWJzdHJhY3Qvb3B0aW9ucy1oZWxwZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hYnN0cmFjdC90b2FzdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FjY2Vzc2liaWxpdHkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcHAtY29udGFpbmVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbG9jYWwtZXZlbnRzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbm9kZS1oZWxwZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9ub2Rlcy1kcmFnLWRyb3Auc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9vcHRpb25zLWhlbHBlci1kYXRhLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmVwby11cmwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy90ZW1wb3Jhcnktc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3VpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc29ydC1kcm9wZG93bi9zb3J0LWRyb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zcGlubmVyL3NwaW5uZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RyYW5zbGF0aW9ucy9mYWxsYmFjay10cmFuc2xhdGlvbi1oYW5kbGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RyYW5zbGF0aW9ucy90cmFuc2xhdGlvbi1sb2FkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHJhbnNsYXRpb25zL3RyYW5zbGF0aW9ucy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHJhbnNsYXRpb25zL3RyYW5zbGF0aW9ucy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzL2FwaS1tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMvYWNjZXNzaWJpbGxpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMvZHJhZy1kcm9wJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzL2luamVjdGlvbi10b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMva2V5Ym9hcmQtc2hvcnRjdXRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzL2xpc3QtaXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcy9vcHRpb24taXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcy93b3JrZmxvdyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL0RhdGVIZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbC9WQ2FyZCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL2NvbG9yLWhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL2R1cmF0aW9uLWhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL2Z1bmN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL2hlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL2lzTnVtZXJpYyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlsL3Jlc3QtaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWwvdWktYW5pbWF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWwvdWktY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21kcy9tZHMtaGVscGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2VhcmNoLWhlbHBlci5zZXJ2aWNlJztcbiJdfQ==
|
|
@@ -18,7 +18,7 @@ import { MatTooltipModule } from '@angular/material/tooltip';
|
|
|
18
18
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
19
19
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
20
20
|
import * as i2 from 'ngx-edu-sharing-api';
|
|
21
|
-
import { RestConstants, LANGUAGES, ME, ConfigService } from 'ngx-edu-sharing-api';
|
|
21
|
+
import { RestConstants, LANGUAGES, ME, ConfigService, MdsService } from 'ngx-edu-sharing-api';
|
|
22
22
|
import * as i3$2 from '@angular/material/core';
|
|
23
23
|
import { MatRippleModule } from '@angular/material/core';
|
|
24
24
|
import * as i2$1 from '@angular/router';
|
|
@@ -7161,6 +7161,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
7161
7161
|
type: SkipSelf
|
|
7162
7162
|
}] }]; } });
|
|
7163
7163
|
|
|
7164
|
+
class SearchHelperService {
|
|
7165
|
+
static { this.MAX_QUERY_CONCAT_PARAMS = 400; }
|
|
7166
|
+
constructor() { }
|
|
7167
|
+
/**
|
|
7168
|
+
* converts given filter criteria and converts them for a body to be used for a search request
|
|
7169
|
+
* @param properties
|
|
7170
|
+
* @param mdsWidgets
|
|
7171
|
+
* @param unfoldTrees
|
|
7172
|
+
*/
|
|
7173
|
+
convertCritieria(properties, mdsWidgets, unfoldTrees = true) {
|
|
7174
|
+
const criteria = [];
|
|
7175
|
+
// deep copy
|
|
7176
|
+
properties = JSON.parse(JSON.stringify(properties));
|
|
7177
|
+
for (const property in properties) {
|
|
7178
|
+
let widget = MdsHelperService.getWidget(property, undefined, mdsWidgets);
|
|
7179
|
+
if (widget && widget.type == 'multivalueTree' && unfoldTrees) {
|
|
7180
|
+
let attach = MdsService.unfoldTreeChilds(properties[property], widget);
|
|
7181
|
+
if (attach) {
|
|
7182
|
+
if (attach.length > SearchHelperService.MAX_QUERY_CONCAT_PARAMS) {
|
|
7183
|
+
console.info('param ' +
|
|
7184
|
+
property +
|
|
7185
|
+
' has too many unfold childs (' +
|
|
7186
|
+
attach.length +
|
|
7187
|
+
'), falling back to basic prefix-based search');
|
|
7188
|
+
}
|
|
7189
|
+
else {
|
|
7190
|
+
properties[property] = properties[property].concat(attach);
|
|
7191
|
+
}
|
|
7192
|
+
}
|
|
7193
|
+
}
|
|
7194
|
+
if (properties[property]?.length && properties[property].every((p) => p != null && !!p))
|
|
7195
|
+
criteria.push({
|
|
7196
|
+
property: property,
|
|
7197
|
+
values: properties[property],
|
|
7198
|
+
});
|
|
7199
|
+
}
|
|
7200
|
+
return criteria;
|
|
7201
|
+
}
|
|
7202
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
7203
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, providedIn: 'root' }); }
|
|
7204
|
+
}
|
|
7205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SearchHelperService, decorators: [{
|
|
7206
|
+
type: Injectable,
|
|
7207
|
+
args: [{
|
|
7208
|
+
providedIn: 'root'
|
|
7209
|
+
}]
|
|
7210
|
+
}], ctorParameters: function () { return []; } });
|
|
7211
|
+
|
|
7164
7212
|
/*
|
|
7165
7213
|
* Public API Surface of edu-sharing-ui
|
|
7166
7214
|
*/
|
|
@@ -7169,5 +7217,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
7169
7217
|
* Generated bundle index. Do not edit.
|
|
7170
7218
|
*/
|
|
7171
7219
|
|
|
7172
|
-
export { ASSETS_BASE_PATH, AccessibilityService, AccessibilitySettings, ActionbarComponent, AppContainerService, AppService, BorderBoxObserverDirective, CheckTextOverflowDirective, ClickSource, ColorHelper, CombinedDataSource, Constrain, CustomFieldSpecialType, CustomOptions, CustomTemplatesDataSource, DateHelper, DefaultGroups, DropdownComponent, DurationFormat, DurationHelper, EDU_SHARING_UI_CONFIG, EduSharingUiCommonModule, EduSharingUiConfiguration, EduSharingUiModule, ElementType, FallbackTranslationHandler, FocusStateDirective, FormatDatePipe, FormatDurationPipe, FormatOptions, FormatSizePipe, Helper, HideMode, IconDirective, InfiniteScrollDirective, InteractionType, ItemsCap, KeyboardShortcutsService, ListBaseComponent, ListCountsComponent, ListItem, ListItemLabelPipe, ListItemSort, ListItemsModule, ListTextComponent, LocalEventsService, MdsHelperService, MdsModule, NodeCache, NodeDataSource, NodeDataSourceRemote, NodeEntriesDisplayType, NodeEntriesGlobalService, NodeEntriesModule, NodeEntriesWrapperComponent, NodeHelperService, NodeIconPipe, NodeImagePipe, NodeImageSizePipe, NodePersonNamePipe, NodeRowComponent, NodeTitlePipe, NodeUrlComponent, NodesDragDirective, NodesDragDropService, NodesDragSourceDirective, NodesDropTargetDirective, NodesRightMode, OPEN_URL_MODE, OptionGroup, OptionItem, OptionsHelperDataService, OptionsHelperService, PreferredColor, PropertySlugPipe, RelativeMode, RepoUrlService, RestHelper, Scope, SortDropdownComponent, SortEvent, SpinnerComponent, TRANSLATION_LIST, Target, TemporaryStorageService, Toast, ToastDuration, TranslationLoader, TranslationsModule, TranslationsService, UIAnimation, UIConstants, UIService, VCard, VCardNamePipe, WORKFLOW_STATUS_CHECKED, WORKFLOW_STATUS_HASFLAWS, WORKFLOW_STATUS_TO_CHECK, WORKFLOW_STATUS_UNCHECKED, clearDraggedNodes, dragNodesTransferType, getConfigProvider, isNumeric, isTrue, macroTick, matchesShortcutCondition, microTick, notNull, readDraggedNodes, saveDraggedNodes };
|
|
7220
|
+
export { ASSETS_BASE_PATH, AccessibilityService, AccessibilitySettings, ActionbarComponent, AppContainerService, AppService, BorderBoxObserverDirective, CheckTextOverflowDirective, ClickSource, ColorHelper, CombinedDataSource, Constrain, CustomFieldSpecialType, CustomOptions, CustomTemplatesDataSource, DateHelper, DefaultGroups, DropdownComponent, DurationFormat, DurationHelper, EDU_SHARING_UI_CONFIG, EduSharingUiCommonModule, EduSharingUiConfiguration, EduSharingUiModule, ElementType, FallbackTranslationHandler, FocusStateDirective, FormatDatePipe, FormatDurationPipe, FormatOptions, FormatSizePipe, Helper, HideMode, IconDirective, InfiniteScrollDirective, InteractionType, ItemsCap, KeyboardShortcutsService, ListBaseComponent, ListCountsComponent, ListItem, ListItemLabelPipe, ListItemSort, ListItemsModule, ListTextComponent, LocalEventsService, MdsHelperService, MdsModule, NodeCache, NodeDataSource, NodeDataSourceRemote, NodeEntriesDisplayType, NodeEntriesGlobalService, NodeEntriesModule, NodeEntriesWrapperComponent, NodeHelperService, NodeIconPipe, NodeImagePipe, NodeImageSizePipe, NodePersonNamePipe, NodeRowComponent, NodeTitlePipe, NodeUrlComponent, NodesDragDirective, NodesDragDropService, NodesDragSourceDirective, NodesDropTargetDirective, NodesRightMode, OPEN_URL_MODE, OptionGroup, OptionItem, OptionsHelperDataService, OptionsHelperService, PreferredColor, PropertySlugPipe, RelativeMode, RepoUrlService, RestHelper, Scope, SearchHelperService, SortDropdownComponent, SortEvent, SpinnerComponent, TRANSLATION_LIST, Target, TemporaryStorageService, Toast, ToastDuration, TranslationLoader, TranslationsModule, TranslationsService, UIAnimation, UIConstants, UIService, VCard, VCardNamePipe, WORKFLOW_STATUS_CHECKED, WORKFLOW_STATUS_HASFLAWS, WORKFLOW_STATUS_TO_CHECK, WORKFLOW_STATUS_UNCHECKED, clearDraggedNodes, dragNodesTransferType, getConfigProvider, isNumeric, isTrue, macroTick, matchesShortcutCondition, microTick, notNull, readDraggedNodes, saveDraggedNodes };
|
|
7173
7221
|
//# sourceMappingURL=ngx-edu-sharing-ui.mjs.map
|