@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
63 lines • 9.56 kB
JavaScript
import { Injectable } from '@angular/core';
import { AbstractResourceService } from '../../resources/abstract-endpoint/abstract-resource.service';
import { map } from 'rxjs/operators';
import * as i0 from "@angular/core";
import * as i1 from "../../resources/resource-provider.service";
import * as i2 from "../../configuration/configuration.service";
/**
* Service for accessing backend resource to resolve URI objects
* */
export class UriResourceService extends AbstractResourceService {
constructor(provider, configService) {
super('petrinet', provider, configService);
}
getRoot() {
return this._resourceProvider.get$('uri/root', this.SERVER_URL).pipe(map(r => this.changeType(r, 'uriNode')), map((r) => {
if (r.path) {
r.uriPath = r.path;
r.id = r.path;
}
return r;
}));
}
getByLevel(level) {
return this._resourceProvider.get$('uri/level/' + level, this.SERVER_URL).pipe(map(r => this.changeType(r, 'uriNodes')), map((ar) => {
return ar.map(r => {
if (r.path) {
r.uriPath = r.path;
r.id = r.path;
}
return r;
});
}));
}
getNodesByParent(parentId) {
return this._resourceProvider.get$('uri/parent/' + parentId, this.SERVER_URL).pipe(map(r => this.changeType(r, 'uriNodes')), map((ar) => {
return ar.map(r => {
if (r.path) {
r.uriPath = r.path;
r.id = r.path;
}
return r;
});
}));
}
getNodeByUri(uriPath) {
return this._resourceProvider.get$('uri/' + btoa(uriPath), this.SERVER_URL).pipe(map(r => this.changeType(r, 'uriNode')), map((r) => {
if (r.path) {
r.uriPath = r.path;
r.id = r.path;
}
return r;
}));
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UriResourceService, deps: [{ token: i1.ResourceProvider }, { token: i2.ConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UriResourceService, providedIn: 'root' });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UriResourceService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: () => [{ type: i1.ResourceProvider }, { type: i2.ConfigurationService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL25hdmlnYXRpb24vc2VydmljZS91cmktcmVzb3VyY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDO0FBS3BHLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUVuQzs7S0FFSztBQUlMLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSx1QkFBdUI7SUFFM0QsWUFBWSxRQUEwQixFQUFFLGFBQW1DO1FBQ3ZFLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxPQUFPO1FBQ1YsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUNoRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUN2QyxHQUFHLENBQUMsQ0FBQyxDQUFrQixFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFO2dCQUNSLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDbkIsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQ2pCO1lBQ0QsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1osQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFhO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQzFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEVBQ3hDLEdBQUcsQ0FBQyxDQUFDLEVBQTBCLEVBQUUsRUFBRTtZQUMvQixPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFO29CQUNSLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFDbkIsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO2lCQUNqQjtnQkFDRCxPQUFPLENBQUMsQ0FBQztZQUNiLENBQUMsQ0FBQyxDQUFBO1FBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUM5RSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxFQUN4QyxHQUFHLENBQUMsQ0FBQyxFQUEwQixFQUFFLEVBQUU7WUFDL0IsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNkLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtvQkFDUixDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ25CLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztpQkFDakI7Z0JBQ0QsT0FBTyxDQUFDLENBQUM7WUFDYixDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDWixDQUFDO0lBRU0sWUFBWSxDQUFDLE9BQWU7UUFDL0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FDNUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFDdkMsR0FBRyxDQUFDLENBQUMsQ0FBa0IsRUFBRSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtnQkFDUixDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQzthQUNqQjtZQUNELE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNaLENBQUM7d0dBeERRLGtCQUFrQjs0R0FBbEIsa0JBQWtCLGNBRmYsTUFBTTs7NEZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0UmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvYWJzdHJhY3QtZW5kcG9pbnQvYWJzdHJhY3QtcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1Jlc291cmNlUHJvdmlkZXJ9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9yZXNvdXJjZS1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7Q29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL2NvbmZpZ3VyYXRpb24vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7VXJpTm9kZVJlc291cmNlfSBmcm9tICcuLi9tb2RlbC91cmktcmVzb3VyY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogU2VydmljZSBmb3IgYWNjZXNzaW5nIGJhY2tlbmQgcmVzb3VyY2UgdG8gcmVzb2x2ZSBVUkkgb2JqZWN0c1xuICogKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVXJpUmVzb3VyY2VTZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RSZXNvdXJjZVNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IocHJvdmlkZXI6IFJlc291cmNlUHJvdmlkZXIsIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCdwZXRyaW5ldCcsIHByb3ZpZGVyLCBjb25maWdTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Um9vdCgpOiBPYnNlcnZhYmxlPFVyaU5vZGVSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCd1cmkvcm9vdCcsIHRoaXMuU0VSVkVSX1VSTCkucGlwZShcbiAgICAgICAgICAgIG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAndXJpTm9kZScpKSxcbiAgICAgICAgICAgIG1hcCgocjogVXJpTm9kZVJlc291cmNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHIucGF0aCkge1xuICAgICAgICAgICAgICAgICAgICByLnVyaVBhdGggPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgICAgIHIuaWQgPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiByO1xuICAgICAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRCeUxldmVsKGxldmVsOiBudW1iZXIpOiBPYnNlcnZhYmxlPEFycmF5PFVyaU5vZGVSZXNvdXJjZT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0JCgndXJpL2xldmVsLycgKyBsZXZlbCwgdGhpcy5TRVJWRVJfVVJMKS5waXBlKFxuICAgICAgICAgICAgbWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICd1cmlOb2RlcycpKSxcbiAgICAgICAgICAgIG1hcCgoYXI6IEFycmF5PFVyaU5vZGVSZXNvdXJjZT4pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXIubWFwKHIgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoci5wYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByLnVyaVBhdGggPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICByLmlkID0gci5wYXRoO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE5vZGVzQnlQYXJlbnQocGFyZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8VXJpTm9kZVJlc291cmNlPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCd1cmkvcGFyZW50LycgKyBwYXJlbnRJZCwgdGhpcy5TRVJWRVJfVVJMKS5waXBlKFxuICAgICAgICAgICAgbWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICd1cmlOb2RlcycpKSxcbiAgICAgICAgICAgIG1hcCgoYXI6IEFycmF5PFVyaU5vZGVSZXNvdXJjZT4pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXIubWFwKHIgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoci5wYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByLnVyaVBhdGggPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICByLmlkID0gci5wYXRoO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE5vZGVCeVVyaSh1cmlQYXRoOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFVyaU5vZGVSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCd1cmkvJyArIGJ0b2EodXJpUGF0aCksIHRoaXMuU0VSVkVSX1VSTCkucGlwZShcbiAgICAgICAgICAgIG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAndXJpTm9kZScpKSxcbiAgICAgICAgICAgIG1hcCgocjogVXJpTm9kZVJlc291cmNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHIucGF0aCkge1xuICAgICAgICAgICAgICAgICAgICByLnVyaVBhdGggPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgICAgIHIuaWQgPSByLnBhdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiByO1xuICAgICAgICAgICAgfSkpO1xuICAgIH1cbn1cbiJdfQ==