UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

55 lines 6.49 kB
import { Injectable } from '@angular/core'; import { of, ReplaySubject } from 'rxjs'; import { User } from '../../../user/models/user'; import * as i0 from "@angular/core"; export class MockUserService { _userChange$; _user; constructor() { this._userChange$ = new ReplaySubject(1); } get user$() { return this._userChange$.asObservable(); } get user() { return this._user; } set user(user) { this._user = user; } hasRoleById(roleStringId) { if (!roleStringId || !this._user.roles) { return false; } return this._user.roles.some(r => r.stringId === roleStringId); } hasRoleByName(roleName, netIdentifier) { if (!roleName || !netIdentifier || !this._user.roles) { return false; } return this._user.roles.some(r => r.stringId === roleName && r.netImportId === netIdentifier); } hasAuthority() { return true; } isUserEmpty(user) { return !user || (!user.id && user.roles.length === 0); } isCurrentUserEmpty() { return this.isUserEmpty(this.user); } logout() { this._user = this.emptyUser(); this._userChange$.next(this._user); return of({}); } emptyUser() { return new User('', '', '', '', '', '', [], [], [], []); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MockUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MockUserService }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MockUserService, decorators: [{ type: Injectable }], ctorParameters: () => [] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay11c2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3V0aWxpdHkvdGVzdHMvbW9ja3MvbW9jay11c2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQWEsRUFBRSxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7O0FBRy9DLE1BQU0sT0FBTyxlQUFlO0lBRWQsWUFBWSxDQUFzQjtJQUNsQyxLQUFLLENBQU87SUFFdEI7UUFDSSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksYUFBYSxDQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBVTtRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxXQUFXLENBQUMsWUFBb0I7UUFDbkMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQ3BDLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLFlBQVksQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxhQUFhLENBQUMsUUFBZ0IsRUFBRSxhQUFxQjtRQUN4RCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDbEQsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxXQUFXLEtBQUssYUFBYSxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELFlBQVk7UUFDUixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sV0FBVyxDQUFDLElBQVU7UUFDekIsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU0sa0JBQWtCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdEMsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVTLFNBQVM7UUFDZixPQUFPLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7d0dBdkRRLGVBQWU7NEdBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7VXNlcn0gZnJvbSAnLi4vLi4vLi4vdXNlci9tb2RlbHMvdXNlcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNb2NrVXNlclNlcnZpY2Uge1xuXG4gICAgcHJvdGVjdGVkIF91c2VyQ2hhbmdlJDogUmVwbGF5U3ViamVjdDxVc2VyPjtcbiAgICBwcm90ZWN0ZWQgX3VzZXI6IFVzZXI7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5fdXNlckNoYW5nZSQgPSBuZXcgUmVwbGF5U3ViamVjdDxVc2VyPigxKTtcbiAgICB9XG5cbiAgICBnZXQgdXNlciQoKTogT2JzZXJ2YWJsZTxVc2VyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyQ2hhbmdlJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBnZXQgdXNlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZXI7XG4gICAgfVxuXG4gICAgc2V0IHVzZXIodXNlcjogVXNlcikge1xuICAgICAgICB0aGlzLl91c2VyID0gdXNlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFzUm9sZUJ5SWQocm9sZVN0cmluZ0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFyb2xlU3RyaW5nSWQgfHwgIXRoaXMuX3VzZXIucm9sZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fdXNlci5yb2xlcy5zb21lKHIgPT4gci5zdHJpbmdJZCA9PT0gcm9sZVN0cmluZ0lkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFzUm9sZUJ5TmFtZShyb2xlTmFtZTogc3RyaW5nLCBuZXRJZGVudGlmaWVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFyb2xlTmFtZSB8fCAhbmV0SWRlbnRpZmllciB8fCAhdGhpcy5fdXNlci5yb2xlcykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyLnJvbGVzLnNvbWUociA9PiByLnN0cmluZ0lkID09PSByb2xlTmFtZSAmJiByLm5ldEltcG9ydElkID09PSBuZXRJZGVudGlmaWVyKTtcbiAgICB9XG5cbiAgICBoYXNBdXRob3JpdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1VzZXJFbXB0eSh1c2VyOiBVc2VyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdXNlciB8fCAoIXVzZXIuaWQgJiYgdXNlci5yb2xlcy5sZW5ndGggPT09IDApO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0N1cnJlbnRVc2VyRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVXNlckVtcHR5KHRoaXMudXNlcilcbiAgICB9XG5cbiAgICBsb2dvdXQoKSB7XG4gICAgICAgIHRoaXMuX3VzZXIgPSB0aGlzLmVtcHR5VXNlcigpXG4gICAgICAgIHRoaXMuX3VzZXJDaGFuZ2UkLm5leHQodGhpcy5fdXNlcik7XG4gICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGVtcHR5VXNlcigpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBVc2VyKCcnLCAnJywgJycsICcnLCAnJywgJycsIFtdLCBbXSwgW10sIFtdKTtcbiAgICB9XG59XG4iXX0=