@net7/boilerplate-common 3.0.1-rc.2 → 3.2.0
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.
- package/esm2020/lib/components/smart-pagination/smart-pagination.mjs +4 -4
- package/esm2020/lib/config-types/common.mjs +1 -1
- package/esm2020/lib/data-sources/breadcrumbs.ds.mjs +2 -2
- package/esm2020/lib/data-sources/facets.ds.mjs +2 -2
- package/esm2020/lib/data-sources/footer.ds.mjs +2 -2
- package/esm2020/lib/data-sources/header.ds.mjs +2 -2
- package/esm2020/lib/data-sources/smart-pagination.ds.mjs +2 -2
- package/esm2020/lib/data-sources/subnav.ds.mjs +2 -2
- package/esm2020/lib/event-handlers/breadcrumbs.eh.mjs +2 -2
- package/esm2020/lib/event-handlers/footer.eh.mjs +2 -2
- package/esm2020/lib/event-handlers/header.eh.mjs +2 -2
- package/esm2020/lib/event-handlers/smart-pagination.eh.mjs +2 -2
- package/esm2020/lib/event-handlers/subnav.eh.mjs +2 -2
- package/esm2020/lib/layouts/main-layout/main-layout.ds.mjs +2 -2
- package/esm2020/lib/layouts/main-layout/main-layout.eh.mjs +2 -2
- package/esm2020/lib/layouts/main-layout/main-layout.mjs +4 -4
- package/esm2020/lib/layouts/page404-layout/page404-layout.ds.mjs +2 -2
- package/esm2020/lib/layouts/page404-layout/page404-layout.eh.mjs +2 -2
- package/esm2020/lib/layouts/page404-layout/page404-layout.mjs +3 -3
- package/esm2020/lib/models/abstract-layout.mjs +2 -2
- package/esm2020/lib/n7-boilerplate-common.module.mjs +6 -6
- package/esm2020/lib/services/communication-providers/apollo.provider.mjs +3 -3
- package/esm2020/lib/services/communication-providers/rest.provider.mjs +3 -3
- package/esm2020/lib/services/communication.service.mjs +3 -3
- package/esm2020/lib/services/configuration.service.mjs +3 -3
- package/esm2020/lib/services/json-config.service.mjs +3 -3
- package/esm2020/lib/services/layouts-configuration.service.mjs +3 -3
- package/esm2020/lib/services/local-config.service.mjs +3 -3
- package/esm2020/lib/services/main-state.service.mjs +3 -3
- package/fesm2015/net7-boilerplate-common.mjs +40 -40
- package/fesm2015/net7-boilerplate-common.mjs.map +1 -1
- package/fesm2020/net7-boilerplate-common.mjs +40 -40
- package/fesm2020/net7-boilerplate-common.mjs.map +1 -1
- package/lib/config-types/common.d.ts +1 -1
- package/lib/data-sources/breadcrumbs.ds.d.ts +2 -2
- package/lib/data-sources/facets.ds.d.ts +1 -1
- package/lib/data-sources/footer.ds.d.ts +1 -1
- package/lib/data-sources/header.ds.d.ts +2 -2
- package/lib/data-sources/smart-pagination.ds.d.ts +1 -1
- package/lib/data-sources/subnav.ds.d.ts +1 -1
- package/lib/event-handlers/breadcrumbs.eh.d.ts +1 -1
- package/lib/event-handlers/footer.eh.d.ts +1 -1
- package/lib/event-handlers/header.eh.d.ts +1 -1
- package/lib/event-handlers/smart-pagination.eh.d.ts +1 -1
- package/lib/event-handlers/subnav.eh.d.ts +1 -1
- package/lib/layouts/main-layout/main-layout.ds.d.ts +1 -1
- package/lib/layouts/main-layout/main-layout.eh.d.ts +1 -1
- package/lib/layouts/page404-layout/page404-layout.ds.d.ts +1 -1
- package/lib/layouts/page404-layout/page404-layout.eh.d.ts +1 -1
- package/lib/n7-boilerplate-common.module.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"net7-boilerplate-common.mjs","sources":["../../../projects/n7-boilerplate-common/src/lib/services/configuration.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/layouts-configuration.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/main-state.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication-providers/apollo.provider.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication-providers/rest.provider.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication.service.ts","../../../projects/n7-boilerplate-common/src/lib/models/abstract-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.ds.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.eh.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/header.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/subnav.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/breadcrumbs.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/facets.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/footer.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/smart-pagination.ds.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/header.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/subnav.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/breadcrumbs.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/footer.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/smart-pagination.eh.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.config.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.html","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.ds.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.eh.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.config.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.html","../../../projects/n7-boilerplate-common/src/lib/components/smart-pagination/smart-pagination.ts","../../../projects/n7-boilerplate-common/src/lib/components/smart-pagination/smart-pagination.html","../../../projects/n7-boilerplate-common/src/lib/n7-boilerplate-common.module.ts","../../../projects/n7-boilerplate-common/src/lib/services/json-config.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/local-config.service.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/index.ts","../../../projects/n7-boilerplate-common/src/lib/helpers.ts","../../../projects/n7-boilerplate-common/src/public-api.ts","../../../projects/n7-boilerplate-common/src/net7-boilerplate-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigurationService {\n private defaults: any = {};\n\n public get = (key) => this.defaults[key];\n\n public set = (key, value) => { this.defaults[key] = value; }\n}\n","import { Injectable, Inject } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LayoutsConfigurationService {\n private defaults: any = {};\n\n constructor(@Inject('config') private config: any) {\n if (this.config?.layouts) {\n Object.keys(this.config.layouts).forEach((key) => {\n this.set(key, this.config.layouts[key]);\n });\n }\n }\n\n public get = (key) => this.defaults[key];\n\n public set = (key, value) => { this.defaults[key] = value; }\n}\n","import { Injectable } from '@angular/core';\nimport { ReplaySubject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MainStateService {\n // custom streams\n private custom: any = {};\n\n // default streams\n private default: {\n headTitle: ReplaySubject<any>;\n pageTitle: ReplaySubject<any>;\n subnav: ReplaySubject<any>;\n breadcrumbs: ReplaySubject<any>;\n filters: ReplaySubject<any>;\n header: ReplaySubject<any>;\n } = {\n headTitle: new ReplaySubject(),\n pageTitle: new ReplaySubject(),\n subnav: new ReplaySubject(),\n breadcrumbs: new ReplaySubject(),\n filters: new ReplaySubject(),\n header: new ReplaySubject(),\n };\n\n public get$ = (key: string) => this._get('default', key);\n\n public getCustom$ = (key: string) => this._get('custom', key);\n\n public update = (key: string, newValue: any) => this._update('default', key, newValue);\n\n public updateCustom = (key: string, newValue: any) => this._update('custom', key, newValue);\n\n public has = (key: string) => !!this.default[key];\n\n public hasCustom = (key: string) => !!this.custom[key];\n\n public addCustom(key: string, stream$: ReplaySubject<any>) {\n if (this.custom[key]) throw Error(`custom stream ${key} exists!`);\n\n this.custom[key] = stream$;\n }\n\n private _update(type: string, key: string, newValue: any) {\n if (!this[type]) throw Error(`${type} stream group does not exists!`);\n if (!this[type][key]) throw Error(`${type} stream ${key} does not exists!`);\n\n this[type][key].next(newValue);\n }\n\n private _get(type: string, key: string) {\n if (!this[type]) throw Error(`${type} stream group does not exists!`);\n if (!this[type][key]) throw Error(`${type} stream ${key} does not exists!`);\n\n return this[type][key];\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\nimport { Observable } from 'rxjs';\nimport { CommunicationProvider } from './communication-provider.interface';\nimport { ConfigurationService } from '../configuration.service';\n\nconst DEFAULT_TREE_DEPTH = 15;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApolloProvider implements CommunicationProvider {\n constructor(\n private http: HttpClient,\n private configuration: ConfigurationService,\n ) {}\n\n request$(providerConfig, requestId: string, options) {\n const { params, method, httpOptions } = options;\n const treeDepth = this.configuration.get('treeDepth') || DEFAULT_TREE_DEPTH;\n const config = providerConfig.config ? providerConfig.config(treeDepth) : {};\n let query;\n\n if (config && config[requestId]) {\n query = config[requestId];\n }\n\n query = query || {};\n const { queryName } = query;\n let { queryBody } = query;\n\n // config query control\n if (!queryName || !queryBody) {\n throw Error(`No config found for requestId '${requestId}'`);\n }\n\n if (params) {\n const paramsStr = this.makeParamsStr(params);\n queryBody = queryBody.replace('__PARAMS__', paramsStr);\n } else {\n queryBody = queryBody.replace('(__PARAMS__)', '');\n }\n\n let source$: Observable<any>;\n\n if (method && method === 'GET') {\n source$ = this.http.get(providerConfig.baseUrl);\n } else {\n source$ = this.http.post(\n providerConfig.baseUrl,\n { query: queryBody },\n httpOptions,\n );\n }\n\n return source$.pipe(map((response: any) => response.data[queryName]));\n }\n\n private makeParamsStr(params) {\n const paramsStr = [];\n Object.keys(params).forEach((key) => {\n if (Array.isArray(params[key])) {\n const arrStr = [];\n params[key].forEach((val) => {\n if (typeof val === 'object') {\n const subParamsStr = this.makeParamsStr(val);\n arrStr.push(`{ ${subParamsStr} }`);\n } else if (typeof val === 'number' || typeof val === 'boolean' || val === null) {\n arrStr.push(`${val}`);\n } else {\n arrStr.push(`\"${val}\"`);\n }\n });\n paramsStr.push(`${key}: [${arrStr.join(',')}]`);\n } else if (typeof params[key] === 'object' && params[key]) {\n const subParamsStr = this.makeParamsStr(params[key]);\n paramsStr.push(`${key}: { ${subParamsStr} }`);\n } else if (typeof params[key] === 'string' && key.indexOf('$') === 0) {\n paramsStr.push(`${key.replace('$', '')}: ${params[key]}`);\n } else if (typeof params[key] === 'number' || typeof params[key] === 'boolean' || params[key] === null) {\n paramsStr.push(`${key}: ${params[key]}`);\n } else {\n paramsStr.push(`${key}: \"${params[key]}\"`);\n }\n });\n return paramsStr.join(' ');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { CommunicationProvider } from './communication-provider.interface';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestProvider implements CommunicationProvider {\n constructor(\n private http: HttpClient,\n ) {}\n\n request$(providerConfig, requestId, options: any = {}) {\n const {\n params, httpOptions, urlParams = '',\n } = options;\n let { method } = options;\n let point;\n\n // default method\n if (!method) { method = providerConfig.defaultMethod || 'GET'; }\n\n if (providerConfig.config && providerConfig.config[requestId]) {\n point = providerConfig.config[requestId];\n }\n\n // config point control\n if (!point) {\n throw Error(`No config found for requestId \"${requestId}\"`);\n }\n if (method === 'POST' || method === 'PUT') {\n return this.http[method.toLowerCase()](\n providerConfig.baseUrl + point + urlParams, params, httpOptions,\n );\n } if (method === 'GET' || method === 'DELETE') {\n return this.http[method.toLowerCase()](\n providerConfig.baseUrl + point + urlParams, httpOptions,\n );\n }\n throw Error(`Rest method ${method} not supported`);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { catchError } from 'rxjs/operators';\nimport { Observable, empty } from 'rxjs';\nimport { ConfigurationService } from './configuration.service';\nimport { ApolloProvider } from './communication-providers/apollo.provider';\nimport { RestProvider } from './communication-providers/rest.provider';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CommunicationService {\n private defaultProvider: string;\n\n private communicationConfig: any;\n\n constructor(\n private config: ConfigurationService,\n private apollo: ApolloProvider,\n private rest: RestProvider,\n ) {\n try {\n this.communicationConfig = this.config.get('communication');\n this.defaultProvider = this.communicationConfig.defaultProvider;\n } catch (err) {\n throw Error('No communications.defaultProvider setted in config');\n }\n }\n\n request$(requestId, options: any = {}, provider?) {\n const activeProvider = provider || this.defaultProvider;\n const activeProviderConfig = this.communicationConfig.providers[activeProvider];\n\n if (!activeProviderConfig) {\n throw Error(`There is no config for \"${activeProvider}\" provider`);\n }\n\n // provider.type control for retrocompatibility\n const activeProviderType = activeProviderConfig.type || activeProvider;\n\n if (!this[activeProviderType]) {\n throw Error(`There is no \"${activeProviderType}\" provider type`);\n }\n\n const { onError } = options;\n return this[activeProviderType].request$(activeProviderConfig, requestId, options)\n .pipe(\n catchError((error) => this.handleError(error, onError)),\n );\n }\n\n handleError(error, onError): Observable<any> {\n if (onError) {\n onError(error);\n } else {\n console.warn('No error handler for communication request', error);\n }\n\n return empty();\n }\n}\n","import { LayoutBuilder } from '@n7-frontend/core';\n\nexport abstract class AbstractLayout {\n protected config: any;\n\n protected widgets: any[];\n\n public lb: any;\n\n constructor(config: any) {\n this.config = config;\n this.widgets = this.config.widgets;\n this.lb = new LayoutBuilder(this.config.layoutId);\n }\n\n protected abstract initPayload(): any;\n\n protected onInit() {\n // on ready\n this.lb.ready$.subscribe(() => {\n this.lb.eventHandler.emitInner('init', this.initPayload());\n });\n\n const LayoutDS = this.config.layoutDS;\n const LayoutEH = this.config.layoutEH;\n this.lb.init({\n widgetsConfig: this.widgets,\n widgetsDataSources: this.config.widgetsDataSources,\n widgetsEventHandlers: this.config.widgetsEventHandlers,\n dataSource: new LayoutDS(),\n eventHandler: new LayoutEH(),\n });\n }\n\n protected onDestroy() {\n this.lb.eventHandler.emitInner('destroy');\n }\n}\n","import { LayoutDataSource } from '@n7-frontend/core';\nimport { hideAll } from 'tippy.js';\n\nexport class MainLayoutDS extends LayoutDataSource {\n protected configuration: any;\n\n protected mainState: any;\n\n protected router: any;\n\n protected route: any;\n\n protected titleService: any;\n\n public options: any;\n\n public pageTitle: string;\n\n onInit({\n configuration, mainState, router, options, titleService, route,\n }) {\n this.configuration = configuration;\n this.mainState = mainState;\n this.router = router;\n this.route = route;\n this.titleService = titleService;\n this.options = options;\n\n // update header\n if (this.configuration.get('header')) {\n this.one('header').update(this.configuration.get('header'));\n }\n\n if (this.configuration.get('footer')) {\n this.one('footer').update(this.configuration.get('footer'));\n }\n\n // main state updates\n this.mainState.get$('headTitle').subscribe((val) => {\n this.titleService.setTitle(val);\n });\n this.mainState.get$('pageTitle').subscribe((val) => {\n this.pageTitle = val;\n });\n this.mainState.get$('subnav').subscribe((val) => {\n this.one('subnav').update(val);\n });\n this.mainState.get$('breadcrumbs').subscribe((val) => {\n this.one('breadcrumbs').update(val);\n });\n this.mainState.get$('header').subscribe((val) => {\n this.one('header').update(val);\n });\n\n // mainState test\n /* this.mainState.addCustom('customNav', new Subject());\n this.mainState.get$('pageTitle').subscribe(val => console.log('pageTitle', val));\n this.mainState.getCustom$('customNav').subscribe(val => console.log('customNav', val));\n\n this.mainState.update('pageTitle', 'hola');\n this.mainState.updateCustom('customNav', {'hello': 'mundo!'});\n\n setTimeout(() => {\n this.mainState.update('pageTitle', 'chao');\n this.mainState.updateCustom('customNav', {'hello': 'world!'});\n console.log('has', {\n 'pageSubTitle' : this.mainState.has('pageSubTitle'),\n 'customNav' : this.mainState.hasCustom('customNav'),\n 'customNavs' : this.mainState.has('customNavs'),\n });\n }, 5000); */\n }\n\n // navigate emitter (click) handler\n onNavigate(payload) {\n // router navigation\n if (payload.handler === 'router') {\n const { path, queryParams } = payload;\n\n // path control\n if (!path) throw Error('onNavigate: no path for router navigate');\n\n if (queryParams) {\n this.router.navigate(path, {\n relativeTo: this.route,\n queryParams,\n queryParamsHandling: 'merge',\n });\n } else {\n this.router.navigate(path);\n }\n\n // on change\n this._onRouterNavigate();\n }\n }\n\n // links routerLink change handler\n onRouterChanged() {\n hideAll();\n }\n\n private _onRouterNavigate() {\n // hide tippy\n hideAll();\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil, filter } from 'rxjs/operators';\nimport { NavigationStart } from '@angular/router';\n\nexport class MainLayoutEH extends EventHandler {\n private destroyed$: Subject<any> = new Subject();\n\n private route: any;\n\n private router: any;\n\n private mainState: any;\n\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'main-layout.init':\n this.dataSource.onInit(payload);\n this.mainState = payload.mainState;\n this.route = payload.route;\n this.router = payload.router;\n\n this._listenRouterChanges();\n this._listenMainStateChanges();\n break;\n\n case 'main-layout.destroy':\n this.destroyed$.next();\n break;\n\n default:\n break;\n }\n });\n\n // listen to global events\n EventHandler.globalEvents$.pipe(\n takeUntil(this.destroyed$),\n ).subscribe(({ type, payload }) => {\n switch (type) {\n case 'global.navigate':\n this.dataSource.onNavigate(payload);\n break;\n\n default:\n break;\n }\n });\n }\n\n private _listenRouterChanges() {\n this.route.queryParams.pipe(\n filter((params) => {\n if (Object.keys(params).length) return true;\n return false;\n }),\n ).subscribe((params) => {\n this.emitGlobal('queryparams', params);\n });\n // router changed\n this.router.events.pipe(\n filter((event) => event instanceof NavigationStart),\n ).subscribe(() => {\n this.emitOuter('routerchange');\n this.dataSource.onRouterChanged();\n });\n }\n\n private _listenMainStateChanges() {\n this.mainState.addCustom('currentNav', new Subject());\n this.mainState.getCustom$('currentNav').subscribe((val) => {\n this.emitOuter('currentnavchange', val);\n });\n }\n}\n","import { DataSource } from '@n7-frontend/core';\nimport { HeaderData } from '@n7-frontend/components';\n\nconst MOBILE_CLASS = 'is-mobile-nav-displayed';\n\nconst ACTIVE_CLASS = 'is-active';\n\nexport class HeaderDS extends DataSource {\n protected transform(data): HeaderData {\n if (!data) {\n return null;\n }\n\n return {\n ...data,\n menuToggle: {\n open: {\n payload: 'mobile-open'\n },\n close: {\n payload: 'mobile-close'\n }\n }\n };\n }\n\n public onCurrentNavChange(payload) {\n this.output.nav.items.forEach((item) => {\n this.updateItemClass(item, payload);\n if (item.subnav) {\n item.subnav.forEach((subNavItem) => {\n this.updateItemClass(subNavItem, payload);\n });\n }\n });\n }\n\n public onRouterChange() {\n if (!this.output) {\n return;\n }\n let { classes } = this.output;\n classes = classes || '';\n classes = classes.split(' ');\n\n if (classes.includes(MOBILE_CLASS)) {\n classes.splice(classes.indexOf(MOBILE_CLASS), 1);\n this.output.classes = classes.join(' ');\n }\n }\n\n public onClick(payload) {\n // mobile control\n if (['mobile-open', 'mobile-close'].includes(payload)) {\n let { classes } = this.output;\n classes = classes || '';\n classes = classes.split(' ');\n\n if (classes.includes(MOBILE_CLASS)) {\n classes.splice(classes.indexOf(MOBILE_CLASS), 1);\n } else {\n classes.push(MOBILE_CLASS);\n }\n this.output.classes = classes.join(' ');\n }\n }\n\n private updateItemClass(item, payload) {\n let itemClasses = [];\n if (item.classes) {\n itemClasses = itemClasses.concat(item.classes.split(' '));\n }\n if (item._meta.id === payload && !itemClasses.includes(ACTIVE_CLASS)) {\n itemClasses.push(ACTIVE_CLASS);\n } else if (itemClasses.includes(ACTIVE_CLASS)) {\n itemClasses.splice(itemClasses.indexOf(ACTIVE_CLASS, 1));\n }\n item.classes = itemClasses.join(' ');\n }\n}\n","import { DataSource } from '@n7-frontend/core';\n\nexport class SubnavDS extends DataSource {\n protected transform(data) {\n return {\n classes: 'main-subnav',\n items: data,\n };\n }\n\n setActive(id) {\n this.output.items.forEach((item) => {\n if (item._meta.id === id) {\n item.classes = 'is-current';\n item._meta.isActive = true;\n } else {\n item.classes = '';\n item._meta.isActive = false;\n }\n });\n }\n\n getActive() {\n return this.output.items.filter((item) => item._meta.isActive)[0] || null;\n }\n}\n","import { DataSource } from '@n7-frontend/core';\nimport { BreadcrumbsData } from '@n7-frontend/components';\n\nexport class BreadcrumbsDS extends DataSource {\n protected transform(data): BreadcrumbsData | null {\n return data;\n }\n}\n","import { DataSource } from '@n7-frontend/core';\n\nexport class FacetsDS extends DataSource {\n public searchModel: any;\n\n protected transform({ fields }) {\n const { searchModel } = this.options;\n this.searchModel = searchModel;\n\n return fields;\n }\n}\n","import { DataSource } from '@n7-frontend/core';\n\nexport class FooterDS extends DataSource {\n protected transform(data): any {\n if (!data) {\n return null;\n }\n return data;\n }\n}\n","import { DataSource, _t } from '@n7-frontend/core';\n\nexport class SmartPaginationDS extends DataSource {\n protected transform(data) {\n const {\n totalPages, currentPage, pageLimit, sizes\n } = data;\n const { mode, href, queryParams } = this.options;\n // ===== WARNINGS =====\n if (!['href', 'payload'].includes(mode)) {\n console.warn('(smart-pagination) The \"mode\" option is incorrect. Please specify \"href\" or \"payload\" as the mode option.');\n }\n\n const {\n links, first, prev, next, last,\n } = this.paginationBuilder(\n totalPages, +currentPage, pageLimit,\n mode, href, queryParams,\n );\n return {\n first,\n prev,\n next,\n last,\n links,\n select: sizes ? {\n label: sizes.label || _t('search#resultsamount'),\n options: sizes.list.map((s) => ({\n text: s,\n selected: s === sizes.active,\n })),\n payload: 'select-size',\n } : null,\n };\n }\n\n private paginationBuilder = (tp, cp: number, pl, m, href, qp) => {\n const result = [];\n /*\n tp - total pages\n cp - current page\n pl - page limit\n m - pagination mode (href or payloads)\n href - href for anchor wrapper\n qp - query params for pagination\n */\n let limit = pl;\n if (tp <= limit) {\n limit = tp - 1;\n }\n if (limit) {\n let\n lp: number; // last page\n let fp: number; // first page\n if (cp > Math.floor(limit / 2)) {\n if (tp === 2) {\n lp = tp;\n fp = 1;\n // when currentPage is after half-point\n // (example: [ 14 ][ 15 ][!16!][ 17 ][ 18 ])\n } else if (cp < (tp - Math.floor(limit / 2))) {\n lp = cp / 1 + Math.floor(limit / 2);\n fp = cp / 1 - Math.floor(limit / 2);\n } else {\n lp = tp;\n fp = cp - limit + (tp - cp);\n }\n } else {\n // when currentPage is before half-point\n // (example: [ 1 ][!2!][ 3 ][ 4 ][ 5 ])\n lp = limit + 1;\n fp = 1;\n }\n for (let i = fp; i <= lp; i += 1) {\n result.push({\n text: String(i),\n classes: cp === i ? 'is-active' : '',\n anchor: cp !== i ? this._getPaginationAnchor(i, m, href, qp) : null,\n });\n }\n } else {\n result.push({\n text: '1',\n classes: cp === 1 ? 'is-active' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(1, m, href, qp) : null,\n });\n for (let i = 1; i < tp; i += 1) {\n result.push({\n text: String(i + 1),\n classes: cp === i + 1 ? 'is-active' : '',\n anchor: cp !== i + 1 ? this._getPaginationAnchor(i + 1, m, href, qp) : null,\n });\n }\n }\n return {\n links: result,\n first: {\n classes: cp === 1 ? 'is-disabled' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(1, m, href, qp) : null,\n },\n prev: {\n classes: cp === 1 ? 'is-disabled' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(cp / 1 - 1, m, href, qp) : null,\n },\n next: {\n classes: cp === tp ? 'is-disabled' : '',\n anchor: cp !== tp ? this._getPaginationAnchor(cp / 1 + 1, m, href, qp) : null,\n },\n last: {\n classes: cp === tp ? 'is-disabled' : '',\n anchor: cp !== tp ? this._getPaginationAnchor(tp, m, href, qp) : null,\n },\n };\n }\n\n private _getPaginationAnchor(page, mode, href, queryParams) {\n switch (mode) {\n case 'payload':\n return {\n payload: { source: 'pagination', page },\n };\n case 'href':\n return {\n href: queryParams ? href : href + page,\n queryParams: queryParams ? {\n ...queryParams,\n page,\n } : null,\n };\n default:\n break;\n }\n return {};\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\n\nexport class HeaderEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'header.click':\n this.dataSource.onClick(payload);\n break;\n\n default:\n break;\n }\n });\n this.outerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'main-layout.currentnavchange':\n this.dataSource.onCurrentNavChange(payload);\n break;\n\n case 'main-layout.routerchange':\n this.dataSource.onRouterChange();\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\n\nexport class SubnavEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'subnav.click':\n // navigate control\n if (payload.source === 'navigate') {\n this.emitGlobal('navigate', payload);\n }\n\n // global signal\n this.emitGlobal(type, payload);\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\n\nexport class BreadcrumbsEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'breadcrumbs.click':\n // navigate control\n if (payload.source === 'navigate') {\n this.emitGlobal('navigate', payload);\n }\n\n // global signal\n this.emitGlobal(type, payload);\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\n\nexport class FooterEH extends EventHandler {\n public listen() {\n // no events\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\n\nexport class SmartPaginationEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'n7-smart-pagination.change':\n this.emitOuter('change', payload);\n break;\n\n case 'n7-smart-pagination.click':\n this.emitOuter('click', payload);\n break;\n\n default:\n console.warn('unhandled inner event of type', type);\n break;\n }\n });\n }\n}\n","import { MainLayoutDS } from './main-layout.ds';\nimport { MainLayoutEH } from './main-layout.eh';\nimport * as DS from '../../data-sources';\nimport * as EH from '../../event-handlers';\n\nexport const MainLayoutConfig = {\n layoutId: 'main-layout',\n widgets: [{\n id: 'header',\n }, {\n id: 'subnav',\n }, {\n id: 'breadcrumbs',\n }, {\n id: 'footer',\n }],\n layoutDS: MainLayoutDS,\n layoutEH: MainLayoutEH,\n widgetsDataSources: DS,\n widgetsEventHandlers: EH,\n options: {\n // TODO\n },\n};\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\nimport { AbstractLayout } from '../../models/abstract-layout';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { LayoutsConfigurationService } from '../../services/layouts-configuration.service';\nimport { MainStateService } from '../../services/main-state.service';\nimport { MainLayoutConfig as config } from './main-layout.config';\n\n@Component({\n selector: 'main-layout',\n templateUrl: './main-layout.html',\n})\nexport class MainLayoutComponent extends AbstractLayout implements OnInit, OnDestroy {\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private configuration: ConfigurationService,\n private layoutsConfiguration: LayoutsConfigurationService,\n private mainState: MainStateService,\n private titleService: Title,\n ) {\n super(layoutsConfiguration.get('MainLayoutConfig') || config);\n }\n\n protected initPayload() {\n return {\n configuration: this.configuration,\n mainState: this.mainState,\n router: this.router,\n route: this.route,\n titleService: this.titleService,\n options: this.config.options || {},\n };\n }\n\n ngOnInit() {\n this.onInit();\n }\n\n ngOnDestroy() {\n this.onDestroy();\n }\n}\n","<div class=\"n7-main-layout\" id=\"main-layout\">\n <div class=\"n7-page-content\">\n <n7-header\n [data]=\"lb.widgets['header'].ds.out$ | async\"\n [emit]=\"lb.widgets['header'].emit\">\n </n7-header>\n <main class=\"n7-content\">\n <div class=\"n7-top-page-bar\">\n <div class=\"n7-top-page-bar__main\"></div>\n </div>\n <div class=\"n7-alert-bar\">\n <!--<n7-alert\n [attr.id]=\"'main-layout-alert'\"\n [data]=\"lb.dataSource.alertData$ | async\"\n [emit]=\"lb.dataSource.closeAlert.bind(lb.dataSource)\"></n7-alert>-->\n </div>\n <ng-content></ng-content>\n </main>\n </div>\n <n7-footer\n [data]=\"lb.widgets['footer'].ds.out$ | async\"\n [emit]=\"lb.widgets['footer'].emit\">\n </n7-footer>\n</div>\n","import { LayoutDataSource } from '@n7-frontend/core';\n\nexport class Page404LayoutDS extends LayoutDataSource {\n public options: any;\n\n onInit({ options }) {\n this.options = options;\n }\n}\n","import { EventHandler } from '@n7-frontend/core';\nimport { Subject } from 'rxjs';\n\nexport class Page404LayoutEH extends EventHandler {\n private destroyed$: Subject<any> = new Subject();\n\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'n7-page404-layout.init':\n this.dataSource.onInit(payload);\n break;\n\n case 'n7-page404-layout.destroy':\n this.destroyed$.next();\n break;\n\n default:\n break;\n }\n });\n\n // listen to global events\n /* EventHandler.globalEvents$.pipe(\n takeUntil(this.destroyed$)\n ).subscribe(({type, payload}) => {\n switch(type){\n case 'global.navigate':\n this.dataSource.onNavigate(payload);\n break;\n\n default:\n break;\n }\n }); */\n }\n}\n","import { Page404LayoutDS } from './page404-layout.ds';\nimport { Page404LayoutEH } from './page404-layout.eh';\nimport * as DS from '../../data-sources';\nimport * as EH from '../../event-handlers';\n\nexport const Page404LayoutConfig = {\n layoutId: 'n7-page404-layout',\n widgets: [],\n layoutDS: Page404LayoutDS,\n layoutEH: Page404LayoutEH,\n widgetsDataSources: DS,\n widgetsEventHandlers: EH,\n options: {\n // TODO\n },\n};\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { AbstractLayout } from '../../models/abstract-layout';\nimport { LayoutsConfigurationService } from '../../services/layouts-configuration.service';\nimport { Page404LayoutConfig as config } from './page404-layout.config';\n\n@Component({\n selector: 'n7-page404-layout',\n templateUrl: './page404-layout.html',\n})\nexport class Page404LayoutComponent extends AbstractLayout implements OnInit, OnDestroy {\n constructor(\n layoutsConfiguration: LayoutsConfigurationService,\n ) {\n super(layoutsConfiguration.get('Page404LayoutConfig') || config);\n }\n\n protected initPayload() {\n return {\n options: this.config.options || {},\n };\n }\n\n ngOnInit() {\n this.onInit();\n }\n\n ngOnDestroy() {\n this.onDestroy();\n }\n}\n","<div class=\"n7-page404-layout\">\n 404 - Resource not found\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'n7-smart-pagination',\n templateUrl: './smart-pagination.html',\n})\n\nexport class SmartPaginationComponent {\n @Input() data: any;\n\n @Input() emit: any;\n\n constructor() {\n this.handlePaginationEvent.bind(this);\n }\n\n handlePaginationEvent(type, payload) {\n if (!this.emit) return;\n this.emit('change', payload);\n }\n}\n","<div class=\"n7-smart-pagination\" *ngIf=\"data\">\n <n7-pagination\n [data]=\"data\"\n [emit]=\"emit\">\n </n7-pagination>\n</div>","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { DvComponentsLibModule } from '@n7-frontend/components';\n\n// services\nimport { ConfigurationService } from './services/configuration.service';\nimport { LayoutsConfigurationService } from './services/layouts-configuration.service';\nimport { MainStateService } from './services/main-state.service';\nimport { CommunicationService } from './services/communication.service';\n\n// layouts\nimport { MainLayoutComponent } from './layouts/main-layout/main-layout';\nimport { Page404LayoutComponent } from './layouts/page404-layout/page404-layout';\n\n// components\nimport { SmartPaginationComponent } from './components/smart-pagination/smart-pagination';\n\nconst COMPONENTS = [\n MainLayoutComponent,\n Page404LayoutComponent,\n SmartPaginationComponent,\n];\n\n@NgModule({\n declarations: COMPONENTS,\n imports: [\n CommonModule,\n HttpClientModule,\n DvComponentsLibModule,\n ],\n providers: [],\n exports: COMPONENTS\n})\nexport class N7BoilerplateCommonModule {\n static forRoot(config?: any): ModuleWithProviders<N7BoilerplateCommonModule> {\n return {\n ngModule: N7BoilerplateCommonModule,\n providers: [\n MainStateService,\n ConfigurationService,\n LayoutsConfigurationService,\n CommunicationService,\n { provide: 'config', useValue: config },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { tap, catchError } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { merge } from 'lodash';\nimport { ConfigurationService } from './configuration.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class JsonConfigService {\n constructor(\n private http: HttpClient,\n private config: ConfigurationService,\n ) {}\n\n load(path): Promise<any> {\n return this.http.get(path).pipe(\n catchError(() => of({})),\n tap((response) => this._handleResponse(response)),\n ).toPromise();\n }\n\n private _handleResponse(response) {\n // set loaded json config\n if (response) {\n Object.keys(response).forEach((key) => {\n const oldValue = this.config.get(key);\n const newValue = response[key];\n this.config.set(key, merge(oldValue, newValue));\n });\n\n // config keys colors\n if (response['config-keys']) {\n const headTag = document.querySelector('head');\n const styleElement = document.createElement('style');\n\n const styles = [];\n\n Object.keys(response['config-keys']).forEach((key) => {\n const configKey = response['config-keys'][key] || {};\n const className = configKey['class-name'];\n\n if (configKey.color && configKey.color.hex) {\n // add css class\n styles.push(`--color-${className}: ${configKey.color.hex};`);\n }\n });\n\n if (styles.length) {\n styles.unshift(':root {');\n styles.push('}');\n styleElement.appendChild(document.createTextNode(styles.join('\\n')));\n headTag.appendChild(styleElement);\n }\n }\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { tap } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { ConfigurationService } from './configuration.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalConfigService {\n constructor(\n private config: ConfigurationService,\n ) {}\n\n load(config): Promise<any> {\n return of(true).pipe(\n tap(() => {\n if (config) {\n Object.keys(config).forEach((key) => this.config.set(key, config[key]));\n\n // config keys colors\n if (config['config-keys']) {\n const headTag = document.querySelector('head');\n const styleElement = document.createElement('style');\n\n const styles = [];\n\n Object.keys(config['config-keys']).forEach((key) => {\n const configKey = config['config-keys'][key] || {};\n const className = configKey['class-name'];\n\n if (configKey.color && configKey.color.hex) {\n // add css class\n styles.push(`--color-${className}: ${configKey.color.hex};`);\n }\n });\n\n if (styles.length) {\n styles.unshift(':root {');\n styles.push('}');\n styleElement.appendChild(document.createTextNode(styles.join('\\n')));\n headTag.appendChild(styleElement);\n }\n }\n }\n }),\n ).toPromise();\n }\n}\n","// main layout\nexport * from './main-layout/main-layout';\nexport * from './main-layout/main-layout.ds';\nexport * from './main-layout/main-layout.eh';\nexport * from './main-layout/main-layout.config';\n\n// page404 layout\nexport * from './page404-layout/page404-layout';\nexport * from './page404-layout/page404-layout.ds';\nexport * from './page404-layout/page404-layout.eh';\nexport * from './page404-layout/page404-layout.config';\n","// eslint-disable-next-line import/no-extraneous-dependencies\nimport slugify from 'slugify';\n\nconst domParser = new DOMParser();\n\nexport const helpers = {\n prettifySnakeCase(key: string, label?: string) {\n if (typeof label === 'string') {\n return label;\n }\n return (key || '').split('_').map((word, index) => (index === 0 ? this.ucFirst(word) : word)).join(' ');\n },\n ucFirst(str: string) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n },\n slugify(str: string) {\n if (!str) {\n return '';\n }\n const parsedDoc = domParser.parseFromString(str, 'text/html');\n let parsedString = parsedDoc.body.textContent || '';\n // custom replacements\n parsedString = parsedString.replace(/\\//g, '-');\n return slugify(parsedString, {\n remove: /[*+~.()'\"!:@,]/g,\n lower: true\n });\n },\n browserIsIE() {\n return window.navigator.userAgent.match(/(MSIE|Trident)/);\n },\n escapeQuotes(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str\n .replace(/\"/g, '\\\\\\\\\\\\\"')\n .replace(/'/g, '\\\\\\\\\\'');\n },\n unescapeQuotes(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str\n .replace(/\\\\\\\\\\\\\"/g, '\"')\n .replace(/\\\\\\\\'/g, '\\'');\n },\n escapeDoubleQuotes(str) {\n if (str.search(/\\\\?(\")([\\w\\s]+)\\\\?(\")/g) >= 0) {\n // match piece of string between double quotes\n return str.replace(/\\\\?(\")([\\w\\s]+)\\\\?(\")/g, '\\\\$1$2\\\\$3'); // thanks @slevithan!\n }\n return str.replace(/\\\\([\\s\\S])|(\")/g, '\\\\\\\\\\\\$1$2'); // thanks @slevithan!\n },\n unescapeDoubleQuotes(str) {\n return (str && str !== '') ? str.replace(/\\\\*(\")/g, '$1') : str; // thanks @slevithan!\n },\n striptags(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str.replace(/(<([^>]+)>)/gi, '');\n },\n isElementInViewport(el: HTMLElement): boolean {\n if (!el) {\n throw Error('There is no element');\n }\n const rect = el.getBoundingClientRect();\n\n return rect.bottom > 0\n && rect.right > 0\n && rect.left < (window.innerWidth || document.documentElement.clientWidth)\n && rect.top < (window.innerHeight || document.documentElement.clientHeight);\n },\n /** Return true if an object is empty */\n isEmpty: (obj) => (\n typeof obj === 'object'\n && Object.keys(obj).length === 0\n )\n};\n","/*\n * Public API Surface of n7-boilerplate-common\n */\n\n// common\nexport * from './lib/n7-boilerplate-common.module';\nexport * from './lib/config-types';\nexport * from './lib/services';\nexport * from './lib/models';\nexport * from './lib/data-sources';\nexport * from './lib/event-handlers';\nexport * from './lib/layouts';\nexport * from './lib/components';\nexport * from './lib/helpers';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["config"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"net7-boilerplate-common.mjs","sources":["../../../projects/n7-boilerplate-common/src/lib/services/configuration.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/layouts-configuration.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/main-state.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication-providers/apollo.provider.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication-providers/rest.provider.ts","../../../projects/n7-boilerplate-common/src/lib/services/communication.service.ts","../../../projects/n7-boilerplate-common/src/lib/models/abstract-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.ds.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.eh.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/header.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/subnav.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/breadcrumbs.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/facets.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/footer.ds.ts","../../../projects/n7-boilerplate-common/src/lib/data-sources/smart-pagination.ds.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/header.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/subnav.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/breadcrumbs.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/footer.eh.ts","../../../projects/n7-boilerplate-common/src/lib/event-handlers/smart-pagination.eh.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.config.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/main-layout/main-layout.html","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.ds.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.eh.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.config.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/page404-layout/page404-layout.html","../../../projects/n7-boilerplate-common/src/lib/components/smart-pagination/smart-pagination.ts","../../../projects/n7-boilerplate-common/src/lib/components/smart-pagination/smart-pagination.html","../../../projects/n7-boilerplate-common/src/lib/n7-boilerplate-common.module.ts","../../../projects/n7-boilerplate-common/src/lib/services/json-config.service.ts","../../../projects/n7-boilerplate-common/src/lib/services/local-config.service.ts","../../../projects/n7-boilerplate-common/src/lib/layouts/index.ts","../../../projects/n7-boilerplate-common/src/lib/helpers.ts","../../../projects/n7-boilerplate-common/src/public-api.ts","../../../projects/n7-boilerplate-common/src/net7-boilerplate-common.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigurationService {\n private defaults: any = {};\n\n public get = (key) => this.defaults[key];\n\n public set = (key, value) => { this.defaults[key] = value; }\n}\n","import { Injectable, Inject } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LayoutsConfigurationService {\n private defaults: any = {};\n\n constructor(@Inject('config') private config: any) {\n if (this.config?.layouts) {\n Object.keys(this.config.layouts).forEach((key) => {\n this.set(key, this.config.layouts[key]);\n });\n }\n }\n\n public get = (key) => this.defaults[key];\n\n public set = (key, value) => { this.defaults[key] = value; }\n}\n","import { Injectable } from '@angular/core';\nimport { ReplaySubject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MainStateService {\n // custom streams\n private custom: any = {};\n\n // default streams\n private default: {\n headTitle: ReplaySubject<any>;\n pageTitle: ReplaySubject<any>;\n subnav: ReplaySubject<any>;\n breadcrumbs: ReplaySubject<any>;\n filters: ReplaySubject<any>;\n header: ReplaySubject<any>;\n } = {\n headTitle: new ReplaySubject(),\n pageTitle: new ReplaySubject(),\n subnav: new ReplaySubject(),\n breadcrumbs: new ReplaySubject(),\n filters: new ReplaySubject(),\n header: new ReplaySubject(),\n };\n\n public get$ = (key: string) => this._get('default', key);\n\n public getCustom$ = (key: string) => this._get('custom', key);\n\n public update = (key: string, newValue: any) => this._update('default', key, newValue);\n\n public updateCustom = (key: string, newValue: any) => this._update('custom', key, newValue);\n\n public has = (key: string) => !!this.default[key];\n\n public hasCustom = (key: string) => !!this.custom[key];\n\n public addCustom(key: string, stream$: ReplaySubject<any>) {\n if (this.custom[key]) throw Error(`custom stream ${key} exists!`);\n\n this.custom[key] = stream$;\n }\n\n private _update(type: string, key: string, newValue: any) {\n if (!this[type]) throw Error(`${type} stream group does not exists!`);\n if (!this[type][key]) throw Error(`${type} stream ${key} does not exists!`);\n\n this[type][key].next(newValue);\n }\n\n private _get(type: string, key: string) {\n if (!this[type]) throw Error(`${type} stream group does not exists!`);\n if (!this[type][key]) throw Error(`${type} stream ${key} does not exists!`);\n\n return this[type][key];\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\nimport { Observable } from 'rxjs';\nimport { CommunicationProvider } from './communication-provider.interface';\nimport { ConfigurationService } from '../configuration.service';\n\nconst DEFAULT_TREE_DEPTH = 15;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApolloProvider implements CommunicationProvider {\n constructor(\n private http: HttpClient,\n private configuration: ConfigurationService,\n ) {}\n\n request$(providerConfig, requestId: string, options) {\n const { params, method, httpOptions } = options;\n const treeDepth = this.configuration.get('treeDepth') || DEFAULT_TREE_DEPTH;\n const config = providerConfig.config ? providerConfig.config(treeDepth) : {};\n let query;\n\n if (config && config[requestId]) {\n query = config[requestId];\n }\n\n query = query || {};\n const { queryName } = query;\n let { queryBody } = query;\n\n // config query control\n if (!queryName || !queryBody) {\n throw Error(`No config found for requestId '${requestId}'`);\n }\n\n if (params) {\n const paramsStr = this.makeParamsStr(params);\n queryBody = queryBody.replace('__PARAMS__', paramsStr);\n } else {\n queryBody = queryBody.replace('(__PARAMS__)', '');\n }\n\n let source$: Observable<any>;\n\n if (method && method === 'GET') {\n source$ = this.http.get(providerConfig.baseUrl);\n } else {\n source$ = this.http.post(\n providerConfig.baseUrl,\n { query: queryBody },\n httpOptions,\n );\n }\n\n return source$.pipe(map((response: any) => response.data[queryName]));\n }\n\n private makeParamsStr(params) {\n const paramsStr = [];\n Object.keys(params).forEach((key) => {\n if (Array.isArray(params[key])) {\n const arrStr = [];\n params[key].forEach((val) => {\n if (typeof val === 'object') {\n const subParamsStr = this.makeParamsStr(val);\n arrStr.push(`{ ${subParamsStr} }`);\n } else if (typeof val === 'number' || typeof val === 'boolean' || val === null) {\n arrStr.push(`${val}`);\n } else {\n arrStr.push(`\"${val}\"`);\n }\n });\n paramsStr.push(`${key}: [${arrStr.join(',')}]`);\n } else if (typeof params[key] === 'object' && params[key]) {\n const subParamsStr = this.makeParamsStr(params[key]);\n paramsStr.push(`${key}: { ${subParamsStr} }`);\n } else if (typeof params[key] === 'string' && key.indexOf('$') === 0) {\n paramsStr.push(`${key.replace('$', '')}: ${params[key]}`);\n } else if (typeof params[key] === 'number' || typeof params[key] === 'boolean' || params[key] === null) {\n paramsStr.push(`${key}: ${params[key]}`);\n } else {\n paramsStr.push(`${key}: \"${params[key]}\"`);\n }\n });\n return paramsStr.join(' ');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { CommunicationProvider } from './communication-provider.interface';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestProvider implements CommunicationProvider {\n constructor(\n private http: HttpClient,\n ) {}\n\n request$(providerConfig, requestId, options: any = {}) {\n const {\n params, httpOptions, urlParams = '',\n } = options;\n let { method } = options;\n let point;\n\n // default method\n if (!method) { method = providerConfig.defaultMethod || 'GET'; }\n\n if (providerConfig.config && providerConfig.config[requestId]) {\n point = providerConfig.config[requestId];\n }\n\n // config point control\n if (!point) {\n throw Error(`No config found for requestId \"${requestId}\"`);\n }\n if (method === 'POST' || method === 'PUT') {\n return this.http[method.toLowerCase()](\n providerConfig.baseUrl + point + urlParams, params, httpOptions,\n );\n } if (method === 'GET' || method === 'DELETE') {\n return this.http[method.toLowerCase()](\n providerConfig.baseUrl + point + urlParams, httpOptions,\n );\n }\n throw Error(`Rest method ${method} not supported`);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { catchError } from 'rxjs/operators';\nimport { Observable, empty } from 'rxjs';\nimport { ConfigurationService } from './configuration.service';\nimport { ApolloProvider } from './communication-providers/apollo.provider';\nimport { RestProvider } from './communication-providers/rest.provider';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CommunicationService {\n private defaultProvider: string;\n\n private communicationConfig: any;\n\n constructor(\n private config: ConfigurationService,\n private apollo: ApolloProvider,\n private rest: RestProvider,\n ) {\n try {\n this.communicationConfig = this.config.get('communication');\n this.defaultProvider = this.communicationConfig.defaultProvider;\n } catch (err) {\n throw Error('No communications.defaultProvider setted in config');\n }\n }\n\n request$(requestId, options: any = {}, provider?) {\n const activeProvider = provider || this.defaultProvider;\n const activeProviderConfig = this.communicationConfig.providers[activeProvider];\n\n if (!activeProviderConfig) {\n throw Error(`There is no config for \"${activeProvider}\" provider`);\n }\n\n // provider.type control for retrocompatibility\n const activeProviderType = activeProviderConfig.type || activeProvider;\n\n if (!this[activeProviderType]) {\n throw Error(`There is no \"${activeProviderType}\" provider type`);\n }\n\n const { onError } = options;\n return this[activeProviderType].request$(activeProviderConfig, requestId, options)\n .pipe(\n catchError((error) => this.handleError(error, onError)),\n );\n }\n\n handleError(error, onError): Observable<any> {\n if (onError) {\n onError(error);\n } else {\n console.warn('No error handler for communication request', error);\n }\n\n return empty();\n }\n}\n","import { LayoutBuilder } from '@net7/core';\n\nexport abstract class AbstractLayout {\n protected config: any;\n\n protected widgets: any[];\n\n public lb: any;\n\n constructor(config: any) {\n this.config = config;\n this.widgets = this.config.widgets;\n this.lb = new LayoutBuilder(this.config.layoutId);\n }\n\n protected abstract initPayload(): any;\n\n protected onInit() {\n // on ready\n this.lb.ready$.subscribe(() => {\n this.lb.eventHandler.emitInner('init', this.initPayload());\n });\n\n const LayoutDS = this.config.layoutDS;\n const LayoutEH = this.config.layoutEH;\n this.lb.init({\n widgetsConfig: this.widgets,\n widgetsDataSources: this.config.widgetsDataSources,\n widgetsEventHandlers: this.config.widgetsEventHandlers,\n dataSource: new LayoutDS(),\n eventHandler: new LayoutEH(),\n });\n }\n\n protected onDestroy() {\n this.lb.eventHandler.emitInner('destroy');\n }\n}\n","import { LayoutDataSource } from '@net7/core';\nimport { hideAll } from 'tippy.js';\n\nexport class MainLayoutDS extends LayoutDataSource {\n protected configuration: any;\n\n protected mainState: any;\n\n protected router: any;\n\n protected route: any;\n\n protected titleService: any;\n\n public options: any;\n\n public pageTitle: string;\n\n onInit({\n configuration, mainState, router, options, titleService, route,\n }) {\n this.configuration = configuration;\n this.mainState = mainState;\n this.router = router;\n this.route = route;\n this.titleService = titleService;\n this.options = options;\n\n // update header\n if (this.configuration.get('header')) {\n this.one('header').update(this.configuration.get('header'));\n }\n\n if (this.configuration.get('footer')) {\n this.one('footer').update(this.configuration.get('footer'));\n }\n\n // main state updates\n this.mainState.get$('headTitle').subscribe((val) => {\n this.titleService.setTitle(val);\n });\n this.mainState.get$('pageTitle').subscribe((val) => {\n this.pageTitle = val;\n });\n this.mainState.get$('subnav').subscribe((val) => {\n this.one('subnav').update(val);\n });\n this.mainState.get$('breadcrumbs').subscribe((val) => {\n this.one('breadcrumbs').update(val);\n });\n this.mainState.get$('header').subscribe((val) => {\n this.one('header').update(val);\n });\n\n // mainState test\n /* this.mainState.addCustom('customNav', new Subject());\n this.mainState.get$('pageTitle').subscribe(val => console.log('pageTitle', val));\n this.mainState.getCustom$('customNav').subscribe(val => console.log('customNav', val));\n\n this.mainState.update('pageTitle', 'hola');\n this.mainState.updateCustom('customNav', {'hello': 'mundo!'});\n\n setTimeout(() => {\n this.mainState.update('pageTitle', 'chao');\n this.mainState.updateCustom('customNav', {'hello': 'world!'});\n console.log('has', {\n 'pageSubTitle' : this.mainState.has('pageSubTitle'),\n 'customNav' : this.mainState.hasCustom('customNav'),\n 'customNavs' : this.mainState.has('customNavs'),\n });\n }, 5000); */\n }\n\n // navigate emitter (click) handler\n onNavigate(payload) {\n // router navigation\n if (payload.handler === 'router') {\n const { path, queryParams } = payload;\n\n // path control\n if (!path) throw Error('onNavigate: no path for router navigate');\n\n if (queryParams) {\n this.router.navigate(path, {\n relativeTo: this.route,\n queryParams,\n queryParamsHandling: 'merge',\n });\n } else {\n this.router.navigate(path);\n }\n\n // on change\n this._onRouterNavigate();\n }\n }\n\n // links routerLink change handler\n onRouterChanged() {\n hideAll();\n }\n\n private _onRouterNavigate() {\n // hide tippy\n hideAll();\n }\n}\n","import { EventHandler } from '@net7/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil, filter } from 'rxjs/operators';\nimport { NavigationStart } from '@angular/router';\n\nexport class MainLayoutEH extends EventHandler {\n private destroyed$: Subject<any> = new Subject();\n\n private route: any;\n\n private router: any;\n\n private mainState: any;\n\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'main-layout.init':\n this.dataSource.onInit(payload);\n this.mainState = payload.mainState;\n this.route = payload.route;\n this.router = payload.router;\n\n this._listenRouterChanges();\n this._listenMainStateChanges();\n break;\n\n case 'main-layout.destroy':\n this.destroyed$.next();\n break;\n\n default:\n break;\n }\n });\n\n // listen to global events\n EventHandler.globalEvents$.pipe(\n takeUntil(this.destroyed$),\n ).subscribe(({ type, payload }) => {\n switch (type) {\n case 'global.navigate':\n this.dataSource.onNavigate(payload);\n break;\n\n default:\n break;\n }\n });\n }\n\n private _listenRouterChanges() {\n this.route.queryParams.pipe(\n filter((params) => {\n if (Object.keys(params).length) return true;\n return false;\n }),\n ).subscribe((params) => {\n this.emitGlobal('queryparams', params);\n });\n // router changed\n this.router.events.pipe(\n filter((event) => event instanceof NavigationStart),\n ).subscribe(() => {\n this.emitOuter('routerchange');\n this.dataSource.onRouterChanged();\n });\n }\n\n private _listenMainStateChanges() {\n this.mainState.addCustom('currentNav', new Subject());\n this.mainState.getCustom$('currentNav').subscribe((val) => {\n this.emitOuter('currentnavchange', val);\n });\n }\n}\n","import { DataSource } from '@net7/core';\nimport { HeaderData } from '@net7/components';\n\nconst MOBILE_CLASS = 'is-mobile-nav-displayed';\n\nconst ACTIVE_CLASS = 'is-active';\n\nexport class HeaderDS extends DataSource {\n protected transform(data): HeaderData {\n if (!data) {\n return null;\n }\n\n return {\n ...data,\n menuToggle: {\n open: {\n payload: 'mobile-open'\n },\n close: {\n payload: 'mobile-close'\n }\n }\n };\n }\n\n public onCurrentNavChange(payload) {\n this.output.nav.items.forEach((item) => {\n this.updateItemClass(item, payload);\n if (item.subnav) {\n item.subnav.forEach((subNavItem) => {\n this.updateItemClass(subNavItem, payload);\n });\n }\n });\n }\n\n public onRouterChange() {\n if (!this.output) {\n return;\n }\n let { classes } = this.output;\n classes = classes || '';\n classes = classes.split(' ');\n\n if (classes.includes(MOBILE_CLASS)) {\n classes.splice(classes.indexOf(MOBILE_CLASS), 1);\n this.output.classes = classes.join(' ');\n }\n }\n\n public onClick(payload) {\n // mobile control\n if (['mobile-open', 'mobile-close'].includes(payload)) {\n let { classes } = this.output;\n classes = classes || '';\n classes = classes.split(' ');\n\n if (classes.includes(MOBILE_CLASS)) {\n classes.splice(classes.indexOf(MOBILE_CLASS), 1);\n } else {\n classes.push(MOBILE_CLASS);\n }\n this.output.classes = classes.join(' ');\n }\n }\n\n private updateItemClass(item, payload) {\n let itemClasses = [];\n if (item.classes) {\n itemClasses = itemClasses.concat(item.classes.split(' '));\n }\n if (item._meta.id === payload && !itemClasses.includes(ACTIVE_CLASS)) {\n itemClasses.push(ACTIVE_CLASS);\n } else if (itemClasses.includes(ACTIVE_CLASS)) {\n itemClasses.splice(itemClasses.indexOf(ACTIVE_CLASS, 1));\n }\n item.classes = itemClasses.join(' ');\n }\n}\n","import { DataSource } from '@net7/core';\n\nexport class SubnavDS extends DataSource {\n protected transform(data) {\n return {\n classes: 'main-subnav',\n items: data,\n };\n }\n\n setActive(id) {\n this.output.items.forEach((item) => {\n if (item._meta.id === id) {\n item.classes = 'is-current';\n item._meta.isActive = true;\n } else {\n item.classes = '';\n item._meta.isActive = false;\n }\n });\n }\n\n getActive() {\n return this.output.items.filter((item) => item._meta.isActive)[0] || null;\n }\n}\n","import { DataSource } from '@net7/core';\nimport { BreadcrumbsData } from '@net7/components';\n\nexport class BreadcrumbsDS extends DataSource {\n protected transform(data): BreadcrumbsData | null {\n return data;\n }\n}\n","import { DataSource } from '@net7/core';\n\nexport class FacetsDS extends DataSource {\n public searchModel: any;\n\n protected transform({ fields }) {\n const { searchModel } = this.options;\n this.searchModel = searchModel;\n\n return fields;\n }\n}\n","import { DataSource } from '@net7/core';\n\nexport class FooterDS extends DataSource {\n protected transform(data): any {\n if (!data) {\n return null;\n }\n return data;\n }\n}\n","import { DataSource, _t } from '@net7/core';\n\nexport class SmartPaginationDS extends DataSource {\n protected transform(data) {\n const {\n totalPages, currentPage, pageLimit, sizes\n } = data;\n const { mode, href, queryParams } = this.options;\n // ===== WARNINGS =====\n if (!['href', 'payload'].includes(mode)) {\n console.warn('(smart-pagination) The \"mode\" option is incorrect. Please specify \"href\" or \"payload\" as the mode option.');\n }\n\n const {\n links, first, prev, next, last,\n } = this.paginationBuilder(\n totalPages, +currentPage, pageLimit,\n mode, href, queryParams,\n );\n return {\n first,\n prev,\n next,\n last,\n links,\n select: sizes ? {\n label: sizes.label || _t('search#resultsamount'),\n options: sizes.list.map((s) => ({\n text: s,\n selected: s === sizes.active,\n })),\n payload: 'select-size',\n } : null,\n };\n }\n\n private paginationBuilder = (tp, cp: number, pl, m, href, qp) => {\n const result = [];\n /*\n tp - total pages\n cp - current page\n pl - page limit\n m - pagination mode (href or payloads)\n href - href for anchor wrapper\n qp - query params for pagination\n */\n let limit = pl;\n if (tp <= limit) {\n limit = tp - 1;\n }\n if (limit) {\n let\n lp: number; // last page\n let fp: number; // first page\n if (cp > Math.floor(limit / 2)) {\n if (tp === 2) {\n lp = tp;\n fp = 1;\n // when currentPage is after half-point\n // (example: [ 14 ][ 15 ][!16!][ 17 ][ 18 ])\n } else if (cp < (tp - Math.floor(limit / 2))) {\n lp = cp / 1 + Math.floor(limit / 2);\n fp = cp / 1 - Math.floor(limit / 2);\n } else {\n lp = tp;\n fp = cp - limit + (tp - cp);\n }\n } else {\n // when currentPage is before half-point\n // (example: [ 1 ][!2!][ 3 ][ 4 ][ 5 ])\n lp = limit + 1;\n fp = 1;\n }\n for (let i = fp; i <= lp; i += 1) {\n result.push({\n text: String(i),\n classes: cp === i ? 'is-active' : '',\n anchor: cp !== i ? this._getPaginationAnchor(i, m, href, qp) : null,\n });\n }\n } else {\n result.push({\n text: '1',\n classes: cp === 1 ? 'is-active' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(1, m, href, qp) : null,\n });\n for (let i = 1; i < tp; i += 1) {\n result.push({\n text: String(i + 1),\n classes: cp === i + 1 ? 'is-active' : '',\n anchor: cp !== i + 1 ? this._getPaginationAnchor(i + 1, m, href, qp) : null,\n });\n }\n }\n return {\n links: result,\n first: {\n classes: cp === 1 ? 'is-disabled' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(1, m, href, qp) : null,\n },\n prev: {\n classes: cp === 1 ? 'is-disabled' : '',\n anchor: cp !== 1 ? this._getPaginationAnchor(cp / 1 - 1, m, href, qp) : null,\n },\n next: {\n classes: cp === tp ? 'is-disabled' : '',\n anchor: cp !== tp ? this._getPaginationAnchor(cp / 1 + 1, m, href, qp) : null,\n },\n last: {\n classes: cp === tp ? 'is-disabled' : '',\n anchor: cp !== tp ? this._getPaginationAnchor(tp, m, href, qp) : null,\n },\n };\n }\n\n private _getPaginationAnchor(page, mode, href, queryParams) {\n switch (mode) {\n case 'payload':\n return {\n payload: { source: 'pagination', page },\n };\n case 'href':\n return {\n href: queryParams ? href : href + page,\n queryParams: queryParams ? {\n ...queryParams,\n page,\n } : null,\n };\n default:\n break;\n }\n return {};\n }\n}\n","import { EventHandler } from '@net7/core';\n\nexport class HeaderEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'header.click':\n this.dataSource.onClick(payload);\n break;\n\n default:\n break;\n }\n });\n this.outerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'main-layout.currentnavchange':\n this.dataSource.onCurrentNavChange(payload);\n break;\n\n case 'main-layout.routerchange':\n this.dataSource.onRouterChange();\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@net7/core';\n\nexport class SubnavEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'subnav.click':\n // navigate control\n if (payload.source === 'navigate') {\n this.emitGlobal('navigate', payload);\n }\n\n // global signal\n this.emitGlobal(type, payload);\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@net7/core';\n\nexport class BreadcrumbsEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'breadcrumbs.click':\n // navigate control\n if (payload.source === 'navigate') {\n this.emitGlobal('navigate', payload);\n }\n\n // global signal\n this.emitGlobal(type, payload);\n break;\n\n default:\n break;\n }\n });\n }\n}\n","import { EventHandler } from '@net7/core';\n\nexport class FooterEH extends EventHandler {\n public listen() {\n // no events\n }\n}\n","import { EventHandler } from '@net7/core';\n\nexport class SmartPaginationEH extends EventHandler {\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'n7-smart-pagination.change':\n this.emitOuter('change', payload);\n break;\n\n case 'n7-smart-pagination.click':\n this.emitOuter('click', payload);\n break;\n\n default:\n console.warn('unhandled inner event of type', type);\n break;\n }\n });\n }\n}\n","import { MainLayoutDS } from './main-layout.ds';\nimport { MainLayoutEH } from './main-layout.eh';\nimport * as DS from '../../data-sources';\nimport * as EH from '../../event-handlers';\n\nexport const MainLayoutConfig = {\n layoutId: 'main-layout',\n widgets: [{\n id: 'header',\n }, {\n id: 'subnav',\n }, {\n id: 'breadcrumbs',\n }, {\n id: 'footer',\n }],\n layoutDS: MainLayoutDS,\n layoutEH: MainLayoutEH,\n widgetsDataSources: DS,\n widgetsEventHandlers: EH,\n options: {\n // TODO\n },\n};\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\nimport { AbstractLayout } from '../../models/abstract-layout';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { LayoutsConfigurationService } from '../../services/layouts-configuration.service';\nimport { MainStateService } from '../../services/main-state.service';\nimport { MainLayoutConfig as config } from './main-layout.config';\n\n@Component({\n selector: 'main-layout',\n templateUrl: './main-layout.html',\n})\nexport class MainLayoutComponent extends AbstractLayout implements OnInit, OnDestroy {\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private configuration: ConfigurationService,\n private layoutsConfiguration: LayoutsConfigurationService,\n private mainState: MainStateService,\n private titleService: Title,\n ) {\n super(layoutsConfiguration.get('MainLayoutConfig') || config);\n }\n\n protected initPayload() {\n return {\n configuration: this.configuration,\n mainState: this.mainState,\n router: this.router,\n route: this.route,\n titleService: this.titleService,\n options: this.config.options || {},\n };\n }\n\n ngOnInit() {\n this.onInit();\n }\n\n ngOnDestroy() {\n this.onDestroy();\n }\n}\n","<div class=\"n7-main-layout\" id=\"main-layout\">\n <div class=\"n7-page-content\">\n <n7-header\n [data]=\"lb.widgets['header'].ds.out$ | async\"\n [emit]=\"lb.widgets['header'].emit\">\n </n7-header>\n <main class=\"n7-content\">\n <div class=\"n7-top-page-bar\">\n <div class=\"n7-top-page-bar__main\"></div>\n </div>\n <div class=\"n7-alert-bar\">\n <!--<n7-alert\n [attr.id]=\"'main-layout-alert'\"\n [data]=\"lb.dataSource.alertData$ | async\"\n [emit]=\"lb.dataSource.closeAlert.bind(lb.dataSource)\"></n7-alert>-->\n </div>\n <ng-content></ng-content>\n </main>\n </div>\n <n7-footer\n [data]=\"lb.widgets['footer'].ds.out$ | async\"\n [emit]=\"lb.widgets['footer'].emit\">\n </n7-footer>\n</div>\n","import { LayoutDataSource } from '@net7/core';\n\nexport class Page404LayoutDS extends LayoutDataSource {\n public options: any;\n\n onInit({ options }) {\n this.options = options;\n }\n}\n","import { EventHandler } from '@net7/core';\nimport { Subject } from 'rxjs';\n\nexport class Page404LayoutEH extends EventHandler {\n private destroyed$: Subject<any> = new Subject();\n\n public listen() {\n this.innerEvents$.subscribe(({ type, payload }) => {\n switch (type) {\n case 'n7-page404-layout.init':\n this.dataSource.onInit(payload);\n break;\n\n case 'n7-page404-layout.destroy':\n this.destroyed$.next();\n break;\n\n default:\n break;\n }\n });\n\n // listen to global events\n /* EventHandler.globalEvents$.pipe(\n takeUntil(this.destroyed$)\n ).subscribe(({type, payload}) => {\n switch(type){\n case 'global.navigate':\n this.dataSource.onNavigate(payload);\n break;\n\n default:\n break;\n }\n }); */\n }\n}\n","import { Page404LayoutDS } from './page404-layout.ds';\nimport { Page404LayoutEH } from './page404-layout.eh';\nimport * as DS from '../../data-sources';\nimport * as EH from '../../event-handlers';\n\nexport const Page404LayoutConfig = {\n layoutId: 'n7-page404-layout',\n widgets: [],\n layoutDS: Page404LayoutDS,\n layoutEH: Page404LayoutEH,\n widgetsDataSources: DS,\n widgetsEventHandlers: EH,\n options: {\n // TODO\n },\n};\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { AbstractLayout } from '../../models/abstract-layout';\nimport { LayoutsConfigurationService } from '../../services/layouts-configuration.service';\nimport { Page404LayoutConfig as config } from './page404-layout.config';\n\n@Component({\n selector: 'n7-page404-layout',\n templateUrl: './page404-layout.html',\n})\nexport class Page404LayoutComponent extends AbstractLayout implements OnInit, OnDestroy {\n constructor(\n layoutsConfiguration: LayoutsConfigurationService,\n ) {\n super(layoutsConfiguration.get('Page404LayoutConfig') || config);\n }\n\n protected initPayload() {\n return {\n options: this.config.options || {},\n };\n }\n\n ngOnInit() {\n this.onInit();\n }\n\n ngOnDestroy() {\n this.onDestroy();\n }\n}\n","<div class=\"n7-page404-layout\">\n 404 - Resource not found\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'n7-smart-pagination',\n templateUrl: './smart-pagination.html',\n})\n\nexport class SmartPaginationComponent {\n @Input() data: any;\n\n @Input() emit: any;\n\n constructor() {\n this.handlePaginationEvent.bind(this);\n }\n\n handlePaginationEvent(type, payload) {\n if (!this.emit) return;\n this.emit('change', payload);\n }\n}\n","<div class=\"n7-smart-pagination\" *ngIf=\"data\">\n <n7-pagination\n [data]=\"data\"\n [emit]=\"emit\">\n </n7-pagination>\n</div>","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { DvComponentsLibModule } from '@net7/components';\n\n// services\nimport { ConfigurationService } from './services/configuration.service';\nimport { LayoutsConfigurationService } from './services/layouts-configuration.service';\nimport { MainStateService } from './services/main-state.service';\nimport { CommunicationService } from './services/communication.service';\n\n// layouts\nimport { MainLayoutComponent } from './layouts/main-layout/main-layout';\nimport { Page404LayoutComponent } from './layouts/page404-layout/page404-layout';\n\n// components\nimport { SmartPaginationComponent } from './components/smart-pagination/smart-pagination';\n\nconst COMPONENTS = [\n MainLayoutComponent,\n Page404LayoutComponent,\n SmartPaginationComponent,\n];\n\n@NgModule({\n declarations: COMPONENTS,\n imports: [\n CommonModule,\n HttpClientModule,\n DvComponentsLibModule,\n ],\n providers: [],\n exports: COMPONENTS\n})\nexport class N7BoilerplateCommonModule {\n static forRoot(config?: any): ModuleWithProviders<N7BoilerplateCommonModule> {\n return {\n ngModule: N7BoilerplateCommonModule,\n providers: [\n MainStateService,\n ConfigurationService,\n LayoutsConfigurationService,\n CommunicationService,\n { provide: 'config', useValue: config },\n ],\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { tap, catchError } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { merge } from 'lodash';\nimport { ConfigurationService } from './configuration.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class JsonConfigService {\n constructor(\n private http: HttpClient,\n private config: ConfigurationService,\n ) {}\n\n load(path): Promise<any> {\n return this.http.get(path).pipe(\n catchError(() => of({})),\n tap((response) => this._handleResponse(response)),\n ).toPromise();\n }\n\n private _handleResponse(response) {\n // set loaded json config\n if (response) {\n Object.keys(response).forEach((key) => {\n const oldValue = this.config.get(key);\n const newValue = response[key];\n this.config.set(key, merge(oldValue, newValue));\n });\n\n // config keys colors\n if (response['config-keys']) {\n const headTag = document.querySelector('head');\n const styleElement = document.createElement('style');\n\n const styles = [];\n\n Object.keys(response['config-keys']).forEach((key) => {\n const configKey = response['config-keys'][key] || {};\n const className = configKey['class-name'];\n\n if (configKey.color && configKey.color.hex) {\n // add css class\n styles.push(`--color-${className}: ${configKey.color.hex};`);\n }\n });\n\n if (styles.length) {\n styles.unshift(':root {');\n styles.push('}');\n styleElement.appendChild(document.createTextNode(styles.join('\\n')));\n headTag.appendChild(styleElement);\n }\n }\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { tap } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { ConfigurationService } from './configuration.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalConfigService {\n constructor(\n private config: ConfigurationService,\n ) {}\n\n load(config): Promise<any> {\n return of(true).pipe(\n tap(() => {\n if (config) {\n Object.keys(config).forEach((key) => this.config.set(key, config[key]));\n\n // config keys colors\n if (config['config-keys']) {\n const headTag = document.querySelector('head');\n const styleElement = document.createElement('style');\n\n const styles = [];\n\n Object.keys(config['config-keys']).forEach((key) => {\n const configKey = config['config-keys'][key] || {};\n const className = configKey['class-name'];\n\n if (configKey.color && configKey.color.hex) {\n // add css class\n styles.push(`--color-${className}: ${configKey.color.hex};`);\n }\n });\n\n if (styles.length) {\n styles.unshift(':root {');\n styles.push('}');\n styleElement.appendChild(document.createTextNode(styles.join('\\n')));\n headTag.appendChild(styleElement);\n }\n }\n }\n }),\n ).toPromise();\n }\n}\n","// main layout\nexport * from './main-layout/main-layout';\nexport * from './main-layout/main-layout.ds';\nexport * from './main-layout/main-layout.eh';\nexport * from './main-layout/main-layout.config';\n\n// page404 layout\nexport * from './page404-layout/page404-layout';\nexport * from './page404-layout/page404-layout.ds';\nexport * from './page404-layout/page404-layout.eh';\nexport * from './page404-layout/page404-layout.config';\n","// eslint-disable-next-line import/no-extraneous-dependencies\nimport slugify from 'slugify';\n\nconst domParser = new DOMParser();\n\nexport const helpers = {\n prettifySnakeCase(key: string, label?: string) {\n if (typeof label === 'string') {\n return label;\n }\n return (key || '').split('_').map((word, index) => (index === 0 ? this.ucFirst(word) : word)).join(' ');\n },\n ucFirst(str: string) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n },\n slugify(str: string) {\n if (!str) {\n return '';\n }\n const parsedDoc = domParser.parseFromString(str, 'text/html');\n let parsedString = parsedDoc.body.textContent || '';\n // custom replacements\n parsedString = parsedString.replace(/\\//g, '-');\n return slugify(parsedString, {\n remove: /[*+~.()'\"!:@,]/g,\n lower: true\n });\n },\n browserIsIE() {\n return window.navigator.userAgent.match(/(MSIE|Trident)/);\n },\n escapeQuotes(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str\n .replace(/\"/g, '\\\\\\\\\\\\\"')\n .replace(/'/g, '\\\\\\\\\\'');\n },\n unescapeQuotes(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str\n .replace(/\\\\\\\\\\\\\"/g, '\"')\n .replace(/\\\\\\\\'/g, '\\'');\n },\n escapeDoubleQuotes(str) {\n if (str.search(/\\\\?(\")([\\w\\s]+)\\\\?(\")/g) >= 0) {\n // match piece of string between double quotes\n return str.replace(/\\\\?(\")([\\w\\s]+)\\\\?(\")/g, '\\\\$1$2\\\\$3'); // thanks @slevithan!\n }\n return str.replace(/\\\\([\\s\\S])|(\")/g, '\\\\\\\\\\\\$1$2'); // thanks @slevithan!\n },\n unescapeDoubleQuotes(str) {\n return (str && str !== '') ? str.replace(/\\\\*(\")/g, '$1') : str; // thanks @slevithan!\n },\n striptags(str) {\n if (typeof str !== 'string') {\n return '';\n }\n return str.replace(/(<([^>]+)>)/gi, '');\n },\n isElementInViewport(el: HTMLElement): boolean {\n if (!el) {\n throw Error('There is no element');\n }\n const rect = el.getBoundingClientRect();\n\n return rect.bottom > 0\n && rect.right > 0\n && rect.left < (window.innerWidth || document.documentElement.clientWidth)\n && rect.top < (window.innerHeight || document.documentElement.clientHeight);\n },\n /** Return true if an object is empty */\n isEmpty: (obj) => (\n typeof obj === 'object'\n && Object.keys(obj).length === 0\n )\n};\n","/*\n * Public API Surface of n7-boilerplate-common\n */\n\n// common\nexport * from './lib/n7-boilerplate-common.module';\nexport * from './lib/config-types';\nexport * from './lib/services';\nexport * from './lib/models';\nexport * from './lib/data-sources';\nexport * from './lib/event-handlers';\nexport * from './lib/layouts';\nexport * from './lib/components';\nexport * from './lib/helpers';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["config"],"mappings":"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"}
|
|
@@ -4,11 +4,11 @@ import * as i7 from '@angular/common';
|
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1 from '@angular/common/http';
|
|
6
6
|
import { HttpClientModule } from '@angular/common/http';
|
|
7
|
-
import * as i6 from '@
|
|
8
|
-
import { DvComponentsLibModule } from '@
|
|
7
|
+
import * as i6 from '@net7/components';
|
|
8
|
+
import { DvComponentsLibModule } from '@net7/components';
|
|
9
9
|
import { ReplaySubject, empty, Subject, of } from 'rxjs';
|
|
10
10
|
import { map, catchError, takeUntil, filter, tap } from 'rxjs/operators';
|
|
11
|
-
import { LayoutBuilder, LayoutDataSource, EventHandler, DataSource, _t } from '@
|
|
11
|
+
import { LayoutBuilder, LayoutDataSource, EventHandler, DataSource, _t } from '@net7/core';
|
|
12
12
|
import { hideAll } from 'tippy.js';
|
|
13
13
|
import * as i1$1 from '@angular/router';
|
|
14
14
|
import { NavigationStart } from '@angular/router';
|
|
@@ -23,9 +23,9 @@ class ConfigurationService {
|
|
|
23
23
|
this.set = (key, value) => { this.defaults[key] = value; };
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
ConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
27
|
-
ConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
26
|
+
ConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ConfigurationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
27
|
+
ConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ConfigurationService, providedIn: 'root' });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ConfigurationService, decorators: [{
|
|
29
29
|
type: Injectable,
|
|
30
30
|
args: [{
|
|
31
31
|
providedIn: 'root',
|
|
@@ -45,9 +45,9 @@ class LayoutsConfigurationService {
|
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
|
-
LayoutsConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
49
|
-
LayoutsConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
50
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
48
|
+
LayoutsConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LayoutsConfigurationService, deps: [{ token: 'config' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
|
+
LayoutsConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LayoutsConfigurationService, providedIn: 'root' });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LayoutsConfigurationService, decorators: [{
|
|
51
51
|
type: Injectable,
|
|
52
52
|
args: [{
|
|
53
53
|
providedIn: 'root',
|
|
@@ -97,9 +97,9 @@ class MainStateService {
|
|
|
97
97
|
return this[type][key];
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
|
-
MainStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
101
|
-
MainStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
100
|
+
MainStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: MainStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
101
|
+
MainStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: MainStateService, providedIn: 'root' });
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: MainStateService, decorators: [{
|
|
103
103
|
type: Injectable,
|
|
104
104
|
args: [{
|
|
105
105
|
providedIn: 'root',
|
|
@@ -179,9 +179,9 @@ class ApolloProvider {
|
|
|
179
179
|
return paramsStr.join(' ');
|
|
180
180
|
}
|
|
181
181
|
}
|
|
182
|
-
ApolloProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
183
|
-
ApolloProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
184
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
182
|
+
ApolloProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ApolloProvider, deps: [{ token: i1.HttpClient }, { token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
183
|
+
ApolloProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ApolloProvider, providedIn: 'root' });
|
|
184
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ApolloProvider, decorators: [{
|
|
185
185
|
type: Injectable,
|
|
186
186
|
args: [{
|
|
187
187
|
providedIn: 'root',
|
|
@@ -216,9 +216,9 @@ class RestProvider {
|
|
|
216
216
|
throw Error(`Rest method ${method} not supported`);
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
RestProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
220
|
-
RestProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
221
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
219
|
+
RestProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: RestProvider, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
220
|
+
RestProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: RestProvider, providedIn: 'root' });
|
|
221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: RestProvider, decorators: [{
|
|
222
222
|
type: Injectable,
|
|
223
223
|
args: [{
|
|
224
224
|
providedIn: 'root',
|
|
@@ -263,9 +263,9 @@ class CommunicationService {
|
|
|
263
263
|
return empty();
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
|
-
CommunicationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
267
|
-
CommunicationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
268
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
266
|
+
CommunicationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CommunicationService, deps: [{ token: ConfigurationService }, { token: ApolloProvider }, { token: RestProvider }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
267
|
+
CommunicationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CommunicationService, providedIn: 'root' });
|
|
268
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CommunicationService, decorators: [{
|
|
269
269
|
type: Injectable,
|
|
270
270
|
args: [{
|
|
271
271
|
providedIn: 'root',
|
|
@@ -837,9 +837,9 @@ class MainLayoutComponent extends AbstractLayout {
|
|
|
837
837
|
this.onDestroy();
|
|
838
838
|
}
|
|
839
839
|
}
|
|
840
|
-
MainLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
841
|
-
MainLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
842
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
840
|
+
MainLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: MainLayoutComponent, deps: [{ token: i1$1.Router }, { token: i1$1.ActivatedRoute }, { token: ConfigurationService }, { token: LayoutsConfigurationService }, { token: MainStateService }, { token: i5.Title }], target: i0.ɵɵFactoryTarget.Component });
|
|
841
|
+
MainLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: MainLayoutComponent, selector: "main-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"n7-main-layout\" id=\"main-layout\">\n <div class=\"n7-page-content\">\n <n7-header\n [data]=\"lb.widgets['header'].ds.out$ | async\"\n [emit]=\"lb.widgets['header'].emit\">\n </n7-header>\n <main class=\"n7-content\">\n <div class=\"n7-top-page-bar\">\n <div class=\"n7-top-page-bar__main\"></div>\n </div>\n <div class=\"n7-alert-bar\">\n <!--<n7-alert\n [attr.id]=\"'main-layout-alert'\"\n [data]=\"lb.dataSource.alertData$ | async\"\n [emit]=\"lb.dataSource.closeAlert.bind(lb.dataSource)\"></n7-alert>-->\n </div>\n <ng-content></ng-content>\n </main>\n </div>\n <n7-footer\n [data]=\"lb.widgets['footer'].ds.out$ | async\"\n [emit]=\"lb.widgets['footer'].emit\">\n </n7-footer>\n</div>\n", components: [{ type: i6.HeaderComponent, selector: "n7-header", inputs: ["data", "emit"] }, { type: i6.FooterComponent, selector: "n7-footer", inputs: ["data", "emit"] }], pipes: { "async": i7.AsyncPipe } });
|
|
842
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: MainLayoutComponent, decorators: [{
|
|
843
843
|
type: Component,
|
|
844
844
|
args: [{ selector: 'main-layout', template: "<div class=\"n7-main-layout\" id=\"main-layout\">\n <div class=\"n7-page-content\">\n <n7-header\n [data]=\"lb.widgets['header'].ds.out$ | async\"\n [emit]=\"lb.widgets['header'].emit\">\n </n7-header>\n <main class=\"n7-content\">\n <div class=\"n7-top-page-bar\">\n <div class=\"n7-top-page-bar__main\"></div>\n </div>\n <div class=\"n7-alert-bar\">\n <!--<n7-alert\n [attr.id]=\"'main-layout-alert'\"\n [data]=\"lb.dataSource.alertData$ | async\"\n [emit]=\"lb.dataSource.closeAlert.bind(lb.dataSource)\"></n7-alert>-->\n </div>\n <ng-content></ng-content>\n </main>\n </div>\n <n7-footer\n [data]=\"lb.widgets['footer'].ds.out$ | async\"\n [emit]=\"lb.widgets['footer'].emit\">\n </n7-footer>\n</div>\n" }]
|
|
845
845
|
}], ctorParameters: function () { return [{ type: i1$1.Router }, { type: i1$1.ActivatedRoute }, { type: ConfigurationService }, { type: LayoutsConfigurationService }, { type: MainStateService }, { type: i5.Title }]; } });
|
|
@@ -912,9 +912,9 @@ class Page404LayoutComponent extends AbstractLayout {
|
|
|
912
912
|
this.onDestroy();
|
|
913
913
|
}
|
|
914
914
|
}
|
|
915
|
-
Page404LayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
916
|
-
Page404LayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
917
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
915
|
+
Page404LayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: Page404LayoutComponent, deps: [{ token: LayoutsConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
916
|
+
Page404LayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: Page404LayoutComponent, selector: "n7-page404-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"n7-page404-layout\">\n 404 - Resource not found\n</div>" });
|
|
917
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: Page404LayoutComponent, decorators: [{
|
|
918
918
|
type: Component,
|
|
919
919
|
args: [{ selector: 'n7-page404-layout', template: "<div class=\"n7-page404-layout\">\n 404 - Resource not found\n</div>" }]
|
|
920
920
|
}], ctorParameters: function () { return [{ type: LayoutsConfigurationService }]; } });
|
|
@@ -929,9 +929,9 @@ class SmartPaginationComponent {
|
|
|
929
929
|
this.emit('change', payload);
|
|
930
930
|
}
|
|
931
931
|
}
|
|
932
|
-
SmartPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
933
|
-
SmartPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.
|
|
934
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
932
|
+
SmartPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SmartPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
933
|
+
SmartPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: SmartPaginationComponent, selector: "n7-smart-pagination", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div class=\"n7-smart-pagination\" *ngIf=\"data\">\n <n7-pagination\n [data]=\"data\"\n [emit]=\"emit\">\n </n7-pagination>\n</div>", components: [{ type: i6.PaginationComponent, selector: "n7-pagination", inputs: ["data", "emit"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
934
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SmartPaginationComponent, decorators: [{
|
|
935
935
|
type: Component,
|
|
936
936
|
args: [{ selector: 'n7-smart-pagination', template: "<div class=\"n7-smart-pagination\" *ngIf=\"data\">\n <n7-pagination\n [data]=\"data\"\n [emit]=\"emit\">\n </n7-pagination>\n</div>" }]
|
|
937
937
|
}], ctorParameters: function () { return []; }, propDecorators: { data: [{
|
|
@@ -959,20 +959,20 @@ class N7BoilerplateCommonModule {
|
|
|
959
959
|
};
|
|
960
960
|
}
|
|
961
961
|
}
|
|
962
|
-
N7BoilerplateCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
963
|
-
N7BoilerplateCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.
|
|
962
|
+
N7BoilerplateCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: N7BoilerplateCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
963
|
+
N7BoilerplateCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: N7BoilerplateCommonModule, declarations: [MainLayoutComponent,
|
|
964
964
|
Page404LayoutComponent,
|
|
965
965
|
SmartPaginationComponent], imports: [CommonModule,
|
|
966
966
|
HttpClientModule,
|
|
967
967
|
DvComponentsLibModule], exports: [MainLayoutComponent,
|
|
968
968
|
Page404LayoutComponent,
|
|
969
969
|
SmartPaginationComponent] });
|
|
970
|
-
N7BoilerplateCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.
|
|
970
|
+
N7BoilerplateCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: N7BoilerplateCommonModule, providers: [], imports: [[
|
|
971
971
|
CommonModule,
|
|
972
972
|
HttpClientModule,
|
|
973
973
|
DvComponentsLibModule,
|
|
974
974
|
]] });
|
|
975
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
975
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: N7BoilerplateCommonModule, decorators: [{
|
|
976
976
|
type: NgModule,
|
|
977
977
|
args: [{
|
|
978
978
|
declarations: COMPONENTS,
|
|
@@ -1025,9 +1025,9 @@ class JsonConfigService {
|
|
|
1025
1025
|
}
|
|
1026
1026
|
}
|
|
1027
1027
|
}
|
|
1028
|
-
JsonConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
1029
|
-
JsonConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
1030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
1028
|
+
JsonConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: JsonConfigService, deps: [{ token: i1.HttpClient }, { token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1029
|
+
JsonConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: JsonConfigService, providedIn: 'root' });
|
|
1030
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: JsonConfigService, decorators: [{
|
|
1031
1031
|
type: Injectable,
|
|
1032
1032
|
args: [{
|
|
1033
1033
|
providedIn: 'root',
|
|
@@ -1066,9 +1066,9 @@ class LocalConfigService {
|
|
|
1066
1066
|
})).toPromise();
|
|
1067
1067
|
}
|
|
1068
1068
|
}
|
|
1069
|
-
LocalConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.
|
|
1070
|
-
LocalConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.
|
|
1071
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.
|
|
1069
|
+
LocalConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LocalConfigService, deps: [{ token: ConfigurationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1070
|
+
LocalConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LocalConfigService, providedIn: 'root' });
|
|
1071
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: LocalConfigService, decorators: [{
|
|
1072
1072
|
type: Injectable,
|
|
1073
1073
|
args: [{
|
|
1074
1074
|
providedIn: 'root',
|