UNPKG

@spartacus/user

Version:

User feature library for Spartacus

32 lines 4.55 kB
import { Injectable } from '@angular/core'; import { UserAccountChangedEvent, } from '@spartacus/user/account/root'; import { LoginEvent, LogoutEvent, } from '@spartacus/core'; import { switchMap } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "../connectors/user-account.connector"; import * as i2 from "@spartacus/core"; export class UserAccountService { constructor(userAccountConnector, userIdService, query) { this.userAccountConnector = userAccountConnector; this.userIdService = userIdService; this.query = query; this.userQuery = this.query.create(() => this.userIdService .takeUserId(true) .pipe(switchMap((userId) => this.userAccountConnector.get(userId))), { reloadOn: [UserAccountChangedEvent], resetOn: [LoginEvent, LogoutEvent], }); } /** * Returns the current user. */ get() { return this.userQuery.get(); } } UserAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: UserAccountService, deps: [{ token: i1.UserAccountConnector }, { token: i2.UserIdService }, { token: i2.QueryService }], target: i0.ɵɵFactoryTarget.Injectable }); UserAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: UserAccountService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: UserAccountService, decorators: [{ type: Injectable }], ctorParameters: function () { return [{ type: i1.UserAccountConnector }, { type: i2.UserIdService }, { type: i2.QueryService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9mZWF0dXJlLWxpYnMvdXNlci9hY2NvdW50L2NvcmUvZmFjYWRlL3VzZXItYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUVMLHVCQUF1QixHQUV4QixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFDTCxVQUFVLEVBQ1YsV0FBVyxHQUlaLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBSTNDLE1BQU0sT0FBTyxrQkFBa0I7SUFZN0IsWUFDWSxvQkFBMEMsRUFDMUMsYUFBNEIsRUFDNUIsS0FBbUI7UUFGbkIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBZHJCLGNBQVMsR0FBZ0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ2xELEdBQUcsRUFBRSxDQUNILElBQUksQ0FBQyxhQUFhO2FBQ2YsVUFBVSxDQUFDLElBQUksQ0FBQzthQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFDdkU7WUFDRSxRQUFRLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztZQUNuQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDO1NBQ25DLENBQ0YsQ0FBQztJQU1DLENBQUM7SUFFSjs7T0FFRztJQUNILEdBQUc7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQzs7K0dBdkJVLGtCQUFrQjttSEFBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBVc2VyLFxuICBVc2VyQWNjb3VudENoYW5nZWRFdmVudCxcbiAgVXNlckFjY291bnRGYWNhZGUsXG59IGZyb20gJ0BzcGFydGFjdXMvdXNlci9hY2NvdW50L3Jvb3QnO1xuaW1wb3J0IHtcbiAgTG9naW5FdmVudCxcbiAgTG9nb3V0RXZlbnQsXG4gIFF1ZXJ5LFxuICBRdWVyeVNlcnZpY2UsXG4gIFVzZXJJZFNlcnZpY2UsXG59IGZyb20gJ0BzcGFydGFjdXMvY29yZSc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBVc2VyQWNjb3VudENvbm5lY3RvciB9IGZyb20gJy4uL2Nvbm5lY3RvcnMvdXNlci1hY2NvdW50LmNvbm5lY3Rvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBVc2VyQWNjb3VudFNlcnZpY2UgaW1wbGVtZW50cyBVc2VyQWNjb3VudEZhY2FkZSB7XG4gIHByb3RlY3RlZCB1c2VyUXVlcnk6IFF1ZXJ5PFVzZXI+ID0gdGhpcy5xdWVyeS5jcmVhdGUoXG4gICAgKCkgPT5cbiAgICAgIHRoaXMudXNlcklkU2VydmljZVxuICAgICAgICAudGFrZVVzZXJJZCh0cnVlKVxuICAgICAgICAucGlwZShzd2l0Y2hNYXAoKHVzZXJJZCkgPT4gdGhpcy51c2VyQWNjb3VudENvbm5lY3Rvci5nZXQodXNlcklkKSkpLFxuICAgIHtcbiAgICAgIHJlbG9hZE9uOiBbVXNlckFjY291bnRDaGFuZ2VkRXZlbnRdLFxuICAgICAgcmVzZXRPbjogW0xvZ2luRXZlbnQsIExvZ291dEV2ZW50XSxcbiAgICB9XG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHVzZXJBY2NvdW50Q29ubmVjdG9yOiBVc2VyQWNjb3VudENvbm5lY3RvcixcbiAgICBwcm90ZWN0ZWQgdXNlcklkU2VydmljZTogVXNlcklkU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgcXVlcnk6IFF1ZXJ5U2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgdXNlci5cbiAgICovXG4gIGdldCgpOiBPYnNlcnZhYmxlPFVzZXIgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy51c2VyUXVlcnkuZ2V0KCk7XG4gIH1cbn1cbiJdfQ==