{ "version": 3, "sources": ["libs/proman/src/lib/store/docs-id/docs-id.selectors.ts", "libs/proman/src/lib/store/docs-id/docs-id.actions.ts", "libs/proman/src/lib/store/docs-id/docs-id.reducer.ts", "libs/proman/src/lib/store/currency/currency.actions.ts", "libs/proman/src/lib/store/currency/currency.reducer.ts", "apps/frontend/src/app/app-resolvers.ts", "apps/frontend/src/app/guards/guards-acl.service.ts"], "sourcesContent": ["import { createFeatureSelector, createSelector } from '@ngrx/store';\nimport { DocsIdType } from './docs-id.reducer';\n\nexport const docsIdKey: string = 'docsId';\n\nexport const selectDocsIdState = createFeatureSelector(docsIdKey);\n\nexport const getDocsIdData = createSelector(\n selectDocsIdState, (state: DocsIdType) => state.data,\n);\n", "import { createAction, props } from '@ngrx/store';\n\nimport { DocsIdType } from './docs-id.reducer';\n\nexport enum DocsIdActions {\n SetData = `[DocsId] Set Data`,\n}\n\nexport const setDocsIdData = createAction(\n DocsIdActions.SetData,\n props<{ payload: DocsIdType }>()\n);\n", "import { Action, createReducer, on } from '@ngrx/store';\nimport { setDocsIdData } from './docs-id.actions';\n\nexport interface DocsIdValues {\n title: string;\n firstParagraph: string;\n path: string;\n}\n\nexport interface DocsIdType {\n [key: string]: DocsIdValues;\n}\n\nexport interface DocsIdData {\n data: DocsIdType;\n}\n\nexport const initialState: DocsIdData = {\n data: {}\n};\n\nexport const docsIdReducer = createReducer(\n initialState,\n on(setDocsIdData, (state: DocsIdData, action) => ({ data: action.payload }),\n )\n);\n\nexport function reducer(state: DocsIdData, action: Action): DocsIdData {\n return docsIdReducer(state, action);\n}\n", "import { createAction, props } from '@ngrx/store';\nimport { Currency, UserMenu, UserMenuGroup } from '../../interfaces/entity-interfaces';\nimport { Money } from '../../interfaces/common.interface';\nimport { CurrUser } from '../../interfaces/object-interfaces';\n\nexport interface CurrencyData {\n data: Currency[];\n getZeroPrice?: (currency?: string) => Money;\n base?: Currency;\n dataMappedByName?: { [key: string]: Currency };\n dataMappedById?: { [key: number]: Currency };\n zeroPrice?: Money;\n}\n\nexport interface CurrUserStateType {\n data: CurrUser;\n entityFilters: { [entity: string]: any };\n uiPrefs?: { [key: string]: boolean };\n userMenu: { unassigned: UserMenu[], groups: UserMenuGroup[] };\n}\n\nexport enum CurrencyActions {\n SetCurrency = `[Currency] Set Currency`,\n LoadCurrency = `[Currency] Load Currency`,\n}\n\nexport const setCurrency = createAction(\n CurrencyActions.SetCurrency,\n props<{ payload: Currency[] }>()\n);\n\nexport const loadCurrency = createAction(\n CurrencyActions.LoadCurrency\n);\n", "import { Action, createReducer, on } from '@ngrx/store';\nimport { CurrencyData, setCurrency } from './currency.actions';\n\nexport const initialState: CurrencyData = {\n data: [],\n};\n\nexport const currencyReducer = createReducer(\n initialState,\n on(setCurrency, (state: CurrencyData, action) => {\n return { ...state, data: action.payload }\n })\n);\n\nexport function reducer(state: CurrencyData, action: Action): CurrencyData {\n return currencyReducer(state, action);\n}\n", "import { Resolve, Router } from '@angular/router';\nimport { RequestService } from '@proman/services/request.service';\nimport { Inject, Injectable } from '@angular/core';\nimport { PreferencesService } from '@proman/services/preferences.service';\nimport { ACL } from '@proman/services/acl.service';\nimport { WebsocketService } from '@proman/services/websocket.service';\nimport { AuthService } from '@proman/services/auth.service';\nimport { Location } from '@angular/common';\nimport { AppInitService } from '@proman/services/app-init.service';\nimport { PromanStateService } from '@frontend/shared/services/proman-state.service';\nimport { COOKIE_AUTHORIZATION, CookiesService } from '@proman/services/cookies.service';\nimport { LanguageConfigService } from '@proman/services/language-config.service';\nimport { Entity } from '@proman/services/entity.service';\nimport {\n UI_HIDE_WARNINGS,\n UI_TABLE_SAVED_FILTERS,\n UiPreferencesService\n} from '@proman/services/ui-preferences.service';\nimport { CurrUser } from '@proman/interfaces/object-interfaces';\nimport { isDefined, isDefinedNotNull, isLocalhost } from '@proman/utils';\nimport { Store } from '@ngrx/store';\nimport { getCurrUser } from '@proman/store/curr-user';\nimport { filter, take } from '@proman/rxjs-common';\nimport { setDocsIdData, DocsIdValues } from '@proman/store/docs-id';\nimport { setCurrUser } from '@proman/store/curr-user';\nimport { getSystemOptions, loadSystemOptions } from '@proman/store/system-options';\nimport { getCurrencies, loadCurrency } from '@proman/store/currency';\nimport { forkJoin } from 'rxjs';\nimport { CONFIG } from '@proman/config';\nimport { FRONTEND_ENTITY_TABLE_UI_PREFS_KEY } from './constants';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n\n constructor(\n @Inject(RequestService) private Request: RequestService,\n @Inject(PreferencesService) private Prefs: PreferencesService,\n @Inject(Router) private Router: Router,\n @Inject(ACL) private ACL: ACL,\n @Inject(Entity) private Entity: Entity,\n @Inject(Location) private Location: Location,\n @Inject(AuthService) private Auth: AuthService,\n @Inject(WebsocketService) private Websocket: WebsocketService,\n @Inject(AppInitService) private AppInit: AppInitService,\n @Inject(PromanStateService) private PromanState: PromanStateService,\n @Inject(CookiesService) private Cookies: CookiesService,\n @Inject(LanguageConfigService) private LangConfig: LanguageConfigService,\n @Inject(UiPreferencesService) private UiPrefs: UiPreferencesService,\n @Inject(Store) private store: Store,\n ) {\n\n }\n\n private loadUser(): Promise {\n return new Promise((resolve) => {\n this.store.select(getCurrUser)\n .pipe(take(1))\n .subscribe((value) => {\n if (this.isValidUser(value)) {\n resolve(value);\n } else {\n resolve(this.Request.loadUser());\n }\n });\n });\n }\n\n isValidUser = (userData: CurrUser) => {\n return !!userData && (userData.isEmployee && userData.person || userData.isCustomer && userData.person || userData.isAgent && userData.person);\n };\n\n resolve(): Promise {\n const bareToken = this.Cookies.get(COOKIE_AUTHORIZATION);\n\n return new Promise((resolve) => {\n\n forkJoin([\n this.store.select(getCurrUser)\n .pipe(take(1)),\n this.store.select(getSystemOptions)\n .pipe(take(1)),\n ])\n\n .subscribe(([currUser, systemOptions]) => {\n if (!!currUser && this.isValidUser(currUser) && !!systemOptions.id) {\n resolve(currUser);\n\n } else {\n this.loadUser()\n .then(async (response: CurrUser) => {\n if (!response) {\n return;\n }\n\n if (!isLocalhost() && isDefinedNotNull(response.allowFrontend) && response.allowFrontend === false) {\n window.location.replace(`${CONFIG.root}shop`);\n return;\n }\n\n this.Cookies.set(COOKIE_AUTHORIZATION, bareToken);\n\n if (response.language !== this.AppInit.currentLang) {\n this.Prefs.language(response.language);\n await this.LangConfig.loadLanguage(response.language);\n\n }\n\n this.store.dispatch(setCurrUser({ payload: response }));\n this.store.select(getCurrUser)\n .pipe(filter((value) => !!value), take(1))\n .subscribe(() => this.Websocket.startSession());\n\n\n this.store.dispatch(loadSystemOptions());\n this.store.dispatch(loadCurrency());\n await new Promise((resolve2) => {\n this.store.select(getSystemOptions)\n .pipe(\n filter((systemOptions) => !!systemOptions.id),\n take(1),\n )\n .subscribe(() => resolve2());\n });\n await new Promise((resolve3) => {\n this.store.select(getCurrencies)\n .pipe(\n filter((currencies) => !!currencies && !!currencies.length),\n take(1),\n )\n .subscribe(() => resolve3());\n });\n const tableSettings = response.person.tableSettings || {};\n\n const handleJsonData = (data: any) => {\n if (data) {\n return JSON.parse(\n JSON.stringify(data)\n .split('\"false\"')\n .join('false')\n .split('\"true\"')\n .join('true')\n );\n }\n\n };\n\n this.UiPrefs.set(UI_TABLE_SAVED_FILTERS, handleJsonData(tableSettings.filters || {}));\n this.UiPrefs.set(FRONTEND_ENTITY_TABLE_UI_PREFS_KEY, handleJsonData(tableSettings.settings || {}));\n\n const settings = handleJsonData(response.person.settings);\n\n if (settings && isDefined(settings[UI_HIDE_WARNINGS])) {\n this.UiPrefs.set(UI_HIDE_WARNINGS, settings[UI_HIDE_WARNINGS]);\n }\n\n this.Request\n .get(`${CONFIG.helpUrl}upload/summary/doc-summary-${response.language}.json`)\n .then((res: {\n collection: DocsIdValues[];\n head: { locale: string; time: string };\n }) => {\n const payload = res.collection.reduce((a, b) => {\n a[b.title] = b;\n return a;\n }, {});\n\n this.store.dispatch(setDocsIdData({ payload }));\n })\n .catch(() => {});\n\n resolve(response);\n })\n .catch((error) => {\n this.Router.navigate(['login']);\n });\n }\n });\n });\n }\n}\n", "import { Inject, Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { ACL } from '@proman/services/acl.service';\nimport { isDefined } from '@proman/utils';\nimport { PromanStateService } from '@frontend/shared/services/proman-state.service';\nimport { UserResolver } from '../app-resolvers';\nimport { ToastService } from '@proman/services/toast.service';\nimport { take } from '@proman/rxjs-common';\nimport { Store } from '@ngrx/store';\nimport { loadCurrUser } from '@proman/store/curr-user';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GuardsAclService implements CanActivate {\n constructor(\n private ACL: ACL,\n private PromanState: PromanStateService,\n private Toast: ToastService,\n private Router: Router,\n private store: Store,\n @Inject(UserResolver) private userResolver: UserResolver,\n ) {\n }\n\n async canActivate(\n route: ActivatedRouteSnapshot,\n ): Promise {\n\n if (!isDefined(this.ACL.permissions)) {\n await this.userResolver.resolve();\n\n }\n const data = route.data;\n\n if (!Object.keys(this.ACL.permissions || {}).length) {\n this.store.dispatch(loadCurrUser());\n await new Promise((resolve) => {\n this.ACL.isLoaded$\n .pipe(take(1))\n .subscribe(() => {\n resolve();\n });\n });\n }\n\n const isAllowed = isDefined(data.acl) ? this.ACL.check(data.acl) : true;\n if (!isAllowed) {\n const noAclMsg = `ACL disabled: '${data.acl}'`\n console.warn(noAclMsg);\n this.Toast.pop('error', noAclMsg);\n if (data.redirect) this.PromanState.to(data.redirect);\n if (this.Router.url.match('/')) {\n this.PromanState.go();\n }\n\n }\n return isAllowed;\n\n }\n}\n"], "mappings": "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", "names": ["docsIdKey", "selectDocsIdState", "createFeatureSelector", "getDocsIdData", "createSelector", "state", "data", "DocsIdActions", "setDocsIdData", "createAction", "SetData", "props", "initialState", "data", "docsIdReducer", "createReducer", "on", "setDocsIdData", "state", "action", "payload", "reducer", "CurrencyActions", "setCurrency", "createAction", "SetCurrency", "props", "loadCurrency", "LoadCurrency", "initialState", "data", "currencyReducer", "createReducer", "on", "setCurrency", "state", "action", "__spreadProps", "__spreadValues", "payload", "reducer", "UserResolver", "constructor", "Request", "Prefs", "Router", "ACL", "Entity", "Location", "Auth", "Websocket", "AppInit", "PromanState", "Cookies", "LangConfig", "UiPrefs", "store", "isValidUser", "userData", "isEmployee", "person", "isCustomer", "isAgent", "loadUser", "Promise", "resolve", "select", "getCurrUser", "pipe", "take", "subscribe", "value", "bareToken", "get", "COOKIE_AUTHORIZATION", "forkJoin", "getSystemOptions", "currUser", "systemOptions", "id", "then", "response", "__async", "isLocalhost", "isDefinedNotNull", "allowFrontend", "window", "location", "replace", "CONFIG", "root", "set", "language", "currentLang", "loadLanguage", "dispatch", "setCurrUser", "payload", "filter", "startSession", "loadSystemOptions", "loadCurrency", "resolve2", "resolve3", "getCurrencies", "currencies", "length", "tableSettings", "handleJsonData", "data", "JSON", "parse", "stringify", "split", "join", "UI_TABLE_SAVED_FILTERS", "filters", "FRONTEND_ENTITY_TABLE_UI_PREFS_KEY", "settings", "isDefined", "UI_HIDE_WARNINGS", "helpUrl", "res", "collection", "reduce", "a", "b", "title", "setDocsIdData", "catch", "error", "navigate", "\u0275\u0275inject", "RequestService", "PreferencesService", "AuthService", "WebsocketService", "AppInitService", "PromanStateService", "CookiesService", "LanguageConfigService", "UiPreferencesService", "Store", "factory", "\u0275fac", "GuardsAclService", "constructor", "ACL", "PromanState", "Toast", "Router", "store", "userResolver", "canActivate", "route", "__async", "isDefined", "permissions", "resolve", "data", "Object", "keys", "length", "dispatch", "loadCurrUser", "Promise", "isLoaded$", "pipe", "take", "subscribe", "isAllowed", "acl", "check", "noAclMsg", "console", "warn", "pop", "redirect", "to", "url", "match", "go", "\u0275\u0275inject", "PromanStateService", "ToastService", "Store", "UserResolver", "factory", "\u0275fac", "providedIn"] }