{"version":3,"file":"acknow-srl-ack6-lib-lib.mjs","sources":["../../../projects/ack6-lib/lib/injection/injection.token.ts","../../../projects/ack6-lib/lib/services/config.service.ts","../../../projects/ack6-lib/lib/interceptors/endpoint.interceptor.ts","../../../projects/ack6-lib/lib/interceptors/token.interceptor.ts","../../../projects/ack6-lib/lib/assets/locale.it.ts","../../../projects/ack6-lib/lib/components/ag-action-button/ag-action-button.component.ts","../../../projects/ack6-lib/lib/components/ag-action-button/ag-action-button.component.html","../../../projects/ack6-lib/lib/services/ag-tools.service.ts","../../../projects/ack6-lib/lib/containers/paginator/paginator.component.ts","../../../projects/ack6-lib/lib/containers/paginator/paginator.component.html","../../../projects/ack6-lib/lib/containers/lookup-search/lookup-search.component.ts","../../../projects/ack6-lib/lib/containers/lookup-search/lookup-search.component.html","../../../projects/ack6-lib/lib/pipes/coerce-array.pipe.ts","../../../projects/ack6-lib/lib/containers/lookup/lookup.component.ts","../../../projects/ack6-lib/lib/containers/lookup/lookup.component.html","../../../projects/ack6-lib/lib/shared/shared.module.ts","../../../projects/ack6-lib/lib/pipes/iso-to-date.pipe.ts","../../../projects/ack6-lib/lib/interceptors/date-http.interceptor.ts","../../../projects/ack6-lib/lib/store/actions/http-error.actions.ts","../../../projects/ack6-lib/lib/interceptors/error.interceptor.ts","../../../projects/ack6-lib/lib/ack6-lib.module.ts","../../../projects/ack6-lib/lib/graphql.module.ts","../../../projects/ack6-lib/lib/models/lookup-inline-search.model.ts","../../../projects/ack6-lib/lib/acknow-srl-ack6-lib-lib.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const GRAPH_NAME = new InjectionToken<string>('GraphName');\n\n","import { HttpBackend, HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport * as LuigiClient from '@luigi-project/client';\nimport { BehaviorSubject, forkJoin, from, Observable } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\nimport { GRAPH_NAME } from '../injection/injection.token';\n\ninterface Config {\n  baseUrl: string;\n  graphEndPoint: {[key: string]: string};\n  accessToken?: string;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ConfigService implements Config {\n\n  private customMsgId!: string;\n  private timeoutId!: any;\n  private timeout = 500;\n  private http: HttpClient;\n  private authData: any;\n\n  baseUrl!: string;\n  graphEndPoint!: {[key: string]: string};\n  accessToken?: string;\n  graphUrl!: string;\n  rawConfig: any;\n\n  private settingsSbj$: BehaviorSubject<Config | null>;\n\n  constructor(\n    @Optional() @Inject(GRAPH_NAME) private graphName: string,\n    private httpBackend: HttpBackend) {\n    this.http = new HttpClient(this.httpBackend);\n    this.settingsSbj$ = new BehaviorSubject<Config | null>(null);\n  }\n\n  private getConfig$ = () => this.http.get<Config>('config/settings.json');\n\n  public get settings$(): Observable<Config | null> {\n    return this.settingsSbj$.asObservable().pipe(\n      filter(settings => !!settings)\n    );\n  }\n\n  public init = (): Promise<void> =>\n    forkJoin([this.getConfig$(), this.getAuthData$()]).pipe(map(([config, authdata]) => {\n\n      this.rawConfig = config;\n\n      this.baseUrl = config.baseUrl;\n      this.graphEndPoint = config.graphEndPoint;\n      this.graphUrl = config.graphEndPoint && config.graphEndPoint[this.graphName];\n      this.accessToken = config.accessToken;\n      if (authdata && this.graphName) {\n        this.authData = authdata;\n        this.graphUrl = `${authdata.me[this.graphName].endpoint}`;\n        this.accessToken = authdata.accessToken;\n      }\n\n      const cfg: Config = {\n        baseUrl: this.baseUrl,\n        graphEndPoint: this.graphEndPoint,\n        accessToken: this.accessToken\n      };\n\n      this.settingsSbj$.next(cfg);\n\n    })).toPromise()\n\n  public getGraphEndpoint(key: string): string {\n\n    if (this.authData) {\n      const obj = this.authData && this.authData.me && this.authData.me[key];\n\n      return obj && obj.endpoint;\n    } else {\n      return this.graphEndPoint && this.graphEndPoint[key];\n    }\n\n  }\n\n  public getAuthData$ = () => from(new Promise<any>((resolve) => {\n\n    // In case I lived outside Luigi\n    this.timeoutId = setTimeout(() => {\n      LuigiClient.removeCustomMessageListener(this.customMsgId);\n      resolve(null);\n    }, this.timeout);\n\n    this.customMsgId = LuigiClient.addCustomMessageListener(('authdata.response'), (message) => {\n      LuigiClient.removeCustomMessageListener(this.customMsgId);\n      clearTimeout(this.timeoutId);\n      resolve(message);\n    });\n\n    if (LuigiClient.isLuigiClientInitialized()) {\n      LuigiClient.sendCustomMessage({ id: 'authdata.request' });\n    } else {\n      const listener = LuigiClient.addInitListener(() => {\n        LuigiClient.removeInitListener(listener);\n        LuigiClient.sendCustomMessage({ id: 'authdata.request' });\n      });\n    }\n\n  }))\n\n}\n\n","import { Injectable } from '@angular/core';\nimport {\n  HttpRequest,\n  HttpHandler,\n  HttpEvent,\n  HttpInterceptor\n} from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { ConfigService } from '../services/config.service';\n\n@Injectable()\nexport class EndpointInterceptor implements HttpInterceptor {\n\n  constructor(private configService: ConfigService) { }\n\n  intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>> {\n\n    // Avoid attach API URL for application.\n    if (req.url.startsWith('assets')) { return next.handle(req); }\n\n    // Avoid attach API URL if address is already complete (for example, identity server).\n    if (req.url.startsWith('http')) { return next.handle(req); }\n\n    // Avoid attach API URL for config stuff.\n    if (req.url.startsWith('config')) { return next.handle(req); }\n\n    if (req.url.startsWith('i18n')) { return next.handle(req); }\n\n    // Prepend base URL to action.\n    let action = req.url;\n\n    if (!action.startsWith('/')) {\n      action = `/${action}`;\n    }\n\n    let endpoint = this.configService.baseUrl;\n\n    if (this.configService.baseUrl.endsWith('/')) {\n      endpoint = endpoint.substring(0, endpoint.length - 1);\n    }\n\n    req = req.clone({ url: `${endpoint}${action}` });\n    return next.handle(req);\n\n\n  }\n}\n","import { Injectable } from '@angular/core';\nimport {\n  HttpRequest,\n  HttpHandler,\n  HttpEvent,\n  HttpInterceptor\n} from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { ConfigService } from '../services/config.service';\nimport { getToken } from '@luigi-project/client';\n\n@Injectable()\nexport class TokenInterceptor implements HttpInterceptor {\n\n  constructor(private configService: ConfigService) { }\n\n  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n\n    if (req.headers.has('x-skip-auth')) {\n      return next.handle(req);\n    }\n\n    // Check if token exist.\n    let token = getToken();\n    if (!token) {\n      token = this.configService.accessToken;\n    }\n\n    if (!token || req.url.endsWith('/token')) { return next.handle(req); }\n\n    const authReq = req.clone({ headers: req.headers.set('Authorization', `Bearer ${token}`) });\n\n    return next.handle(authReq);\n\n  }\n}\n","export const AG_GRID_LOCALE_IT: any = {\n    // Set Filter\n    selectAll: '(Seleziona tutto)',\n    selectAllSearchResults: '(Seleziona tutti i risultati della ricerca)',\n    searchOoo: 'Ricerca...',\n    blanks: '(Blanks)',\n    noMatches: 'Nessuna corrispondenza',\n\n    // Number Filter & Text Filter\n    filterOoo: 'Filtro...',\n    equals: 'Uguale',\n    notEqual: 'Non uguale',\n    empty: 'Scegline uno',\n\n    // Number Filter\n    lessThan: 'Minore di',\n    greaterThan: 'Maggiore di',\n    lessThanOrEqual: 'Minore o uguale',\n    greaterThanOrEqual: 'Maggiore o uguale',\n    inRange: 'Nel mezzo di',\n    inRangeStart: 'da',\n    inRangeEnd: 'ad',\n\n    // Text Filter\n    contains: 'Contiene',\n    notContains: 'Non Contiene',\n    startsWith: 'Inizia con',\n    endsWith: 'Finisce con',\n\n    // Date Filter\n    dateFormatOoo: 'dd-mm-yyyy',\n\n    // Filter Conditions\n    andCondition: 'AND',\n    orCondition: 'OR',\n\n    // Filter Buttons\n    applyFilter: 'Applica',\n    resetFilter: 'Ripristina',\n    clearFilter: 'Pulisci',\n    cancelFilter: 'Cancella',\n\n    // Filter Titles\n    textFilter: 'Filtro testuale',\n    numberFilter: 'Filtro numerico',\n    dateFilter: 'Filtro per data',\n    setFilter: 'Filtro per insiemi',\n\n    // Side Bar\n    columns: 'Colonne',\n    filters: 'Filtri',\n\n    // columns tool panel\n    pivotMode: 'Pivot Mode',\n    groups: 'Row Groups',\n    rowGroupColumnsEmptyMessage: 'Drag here to set row groups',\n    values: 'Values',\n    valueColumnsEmptyMessage: 'Drag here to aggregate',\n    pivots: 'Column Labels',\n    pivotColumnsEmptyMessage: 'Drag here to set column labels',\n\n    // Header of the Default Group Column\n    group: 'Group',\n\n    // Other\n    loadingOoo: 'Caricamento...',\n    noRowsToShow: 'Non ci sono righe da visualizzare',\n    enabled: 'Abilitato',\n\n    // Menu\n    pinColumn: 'Blocca la colonna',\n    pinLeft: 'Blocca a sinistra',\n    pinRight: 'Blocca a destra',\n    noPin: 'Sblocca',\n    valueAggregation: 'aggregazione del valore',\n    autosizeThiscolumn: 'Ridimensiona automaticamente questa colonna',\n    autosizeAllColumns: 'Ridimensiona automaticamente queste colonne',\n    groupBy: 'Group by',\n    ungroupBy: 'Un-Group by',\n    resetColumns: 'Reset Columns',\n    expandAll: 'Expand All',\n    collapseAll: 'Close All',\n    copy: 'Copy',\n    ctrlC: 'Ctrl+C',\n    copyWithHeaders: 'Copy With Headers',\n    paste: 'Paste',\n    ctrlV: 'Ctrl+V',\n    export: 'Export',\n    csvExport: 'CSV Export',\n    excelExport: 'Excel Export',\n\n    // Enterprise Menu Aggregation and Status Bar\n    sum: 'Sum',\n    min: 'Min',\n    max: 'Max',\n    none: 'None',\n    count: 'Count',\n    avg: 'Average',\n    filteredRows: 'Filtered',\n    selectedRows: 'Selected',\n    totalRows: 'Total Rows',\n    totalAndFilteredRows: 'Rows',\n    more: 'More',\n    to: 'to',\n    of: 'of',\n    page: 'Page',\n    nextPage: 'Next Page',\n    lastPage: 'Last Page',\n    firstPage: 'First Page',\n    previousPage: 'Previous Page',\n\n    // Enterprise Menu (Charts)\n    pivotChartAndPivotMode: 'Pivot Chart & Pivot Mode',\n    pivotChart: 'Pivot Chart',\n    chartRange: 'Chart Range',\n\n    columnChart: 'Column',\n    groupedColumn: 'Grouped',\n    stackedColumn: 'Stacked',\n    normalizedColumn: '100% Stacked',\n\n    barChart: 'Bar',\n    groupedBar: 'Grouped',\n    stackedBar: 'Stacked',\n    normalizedBar: '100% Stacked',\n\n    pieChart: 'Pie',\n    pie: 'Pie',\n    doughnut: 'Doughnut',\n\n    line: 'Line',\n\n    xyChart: 'X Y (Scatter)',\n    scatter: 'Scatter',\n    bubble: 'Bubble',\n\n    areaChart: 'Area',\n    area: 'Area',\n    stackedArea: 'Stacked',\n    normalizedArea: '100% Stacked',\n\n    histogramChart: 'Histogram',\n\n    // Charts\n    pivotChartTitle: 'Pivot Chart',\n    rangeChartTitle: 'Range Chart',\n    settings: 'Settings',\n    data: 'Data',\n    format: 'Format',\n    categories: 'Categories',\n    defaultCategory: '(None)',\n    series: 'Series',\n    xyValues: 'X Y Values',\n    paired: 'Paired Mode',\n    axis: 'Axis',\n    navigator: 'Navigator',\n    color: 'Color',\n    thickness: 'Thickness',\n    xType: 'X Type',\n    automatic: 'Automatic',\n    category: 'Category',\n    number: 'Number',\n    time: 'Time',\n    xRotation: 'X Rotation',\n    yRotation: 'Y Rotation',\n    ticks: 'Ticks',\n    width: 'Width',\n    height: 'Height',\n    length: 'Length',\n    padding: 'Padding',\n    spacing: 'Spacing',\n    chart: 'Chart',\n    title: 'Title',\n    titlePlaceholder: 'Chart title - double click to edit',\n    background: 'Background',\n    font: 'Font',\n    top: 'Top',\n    right: 'Right',\n    bottom: 'Bottom',\n    left: 'Left',\n    labels: 'Labels',\n    size: 'Size',\n    minSize: 'Minimum Size',\n    maxSize: 'Maximum Size',\n    legend: 'Legend',\n    position: 'Position',\n    markerSize: 'Marker Size',\n    markerStroke: 'Marker Stroke',\n    markerPadding: 'Marker Padding',\n    itemSpacing: 'Item Spacing',\n    itemPaddingX: 'Item Padding X',\n    itemPaddingY: 'Item Padding Y',\n    layoutHorizontalSpacing: 'Horizontal Spacing',\n    layoutVerticalSpacing: 'Vertical Spacing',\n    strokeWidth: 'Stroke Width',\n    offset: 'Offset',\n    offsets: 'Offsets',\n    tooltips: 'Tooltips',\n    callout: 'Callout',\n    markers: 'Markers',\n    shadow: 'Shadow',\n    blur: 'Blur',\n    xOffset: 'X Offset',\n    yOffset: 'Y Offset',\n    lineWidth: 'Line Width',\n    normal: 'Normal',\n    bold: 'Bold',\n    italic: 'Italic',\n    boldItalic: 'Bold Italic',\n    predefined: 'Predefined',\n    fillOpacity: 'Fill Opacity',\n    strokeOpacity: 'Line Opacity',\n    histogramBinCount: 'Bin count',\n    columnGroup: 'Column',\n    barGroup: 'Bar',\n    pieGroup: 'Pie',\n    lineGroup: 'Line',\n    scatterGroup: 'X Y (Scatter)',\n    areaGroup: 'Area',\n    histogramGroup: 'Histogram',\n    groupedColumnTooltip: 'Grouped',\n    stackedColumnTooltip: 'Stacked',\n    normalizedColumnTooltip: '100% Stacked',\n    groupedBarTooltip: 'Grouped',\n    stackedBarTooltip: 'Stacked',\n    normalizedBarTooltip: '100% Stacked',\n    pieTooltip: 'Pie',\n    doughnutTooltip: 'Doughnut',\n    lineTooltip: 'Line',\n    groupedAreaTooltip: 'Area',\n    stackedAreaTooltip: 'Stacked',\n    normalizedAreaTooltip: '100% Stacked',\n    scatterTooltip: 'Scatter',\n    bubbleTooltip: 'Bubble',\n    histogramTooltip: 'Histogram',\n    noDataToChart: 'No data available to be charted.',\n    pivotChartRequiresPivotMode: 'Pivot Chart requires Pivot Mode enabled.',\n    chartSettingsToolbarTooltip: 'Menu',\n    chartLinkToolbarTooltip: 'Linked to Grid',\n    chartUnlinkToolbarTooltip: 'Unlinked from Grid',\n    chartDownloadToolbarTooltip: 'Download Chart',\n\n    // ARIA\n    ariaHidden: 'hidden',\n    ariaVisible: 'visible',\n    ariaChecked: 'checked',\n    ariaUnchecked: 'unchecked',\n    ariaIndeterminate:'indeterminate',\n    ariaColumnSelectAll: 'Toggle Select All Columns',\n    ariaInputEditor: 'Input Editor',\n    ariaDateFilterInput: 'Date Filter Input',\n    ariaFilterInput: 'Filter Input',\n    ariaFilterColumnsInput: 'Filter Columns Input',\n    ariaFilterValue: 'Filter Value',\n    ariaFilterFromValue: 'Filter from value',\n    ariaFilterToValue: 'Filter to value',\n    ariaFilteringOperator: 'Filtering Operator',\n    ariaColumnToggleVisibility: 'column toggle visibility',\n    ariaColumnGroupToggleVisibility: 'column group toggle visibility',\n    ariaRowSelect: 'Press SPACE to select this row',\n    ariaRowDeselect: 'Press SPACE to deselect this row',\n    ariaRowToggleSelection: 'Press Space to toggle row selection',\n    ariaRowSelectAll: 'Press Space to toggle all rows selection',\n    ariaSearch: 'Search',\n    ariaSearchFilterValues: 'Search filter values'\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams, IAfterGuiAttachedParams } from 'ag-grid-community';\n\n@Component({\n  selector: 'app-ag-action-button',\n  templateUrl: './ag-action-button.component.html',\n  styleUrls: ['./ag-action-button.component.scss']\n})\nexport class AgActionButtonComponent implements OnInit, ICellRendererAngularComp {\n\n  params!: ICellRendererParams & { [key: string]: any };\n\n  constructor() { }\n\n  ngOnInit(): void {\n  }\n\n  refresh(params: ICellRendererParams & { [key: string]: any }): boolean {\n    return false;\n  }\n\n  agInit(params: ICellRendererParams & { [key: string]: any }): void {\n    this.params = params;\n  }\n\n  afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\n  }\n\n}\n","<button *ngFor=\"let action of params.actions\" pButton pRipple type=\"button\" icon=\"{{action.icon}}\" class=\"p-button-rounded p-button-text\"\n  (click)=\"action.command(params.data)\" pTooltip=\"{{action.label}}\" tooltipPosition=\"bottom\"></button>\n","import { Injectable } from '@angular/core';\nimport { cloneDeep, compact, isString, set, toPairs } from 'lodash';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class AgToolsService {\n\n  constructor() { }\n\n  ackTrim = (item: any) => Object.keys(cloneDeep(item)).reduce<any>((acc, curr) => {\n    acc[curr] =\n      item[curr] && isString(item[curr]) ? item[curr].trim() : item[curr];\n    return acc;\n  }, {});\n\n  checkIndicator = (params: any) => {\n    const element = document.createElement('span');\n    if (params.value) element.className = 'pi pi-check';\n    return element;\n  };\n\n  parseFilter = <T extends { [key: string]: any }>(filterModel: { [key: string]: any }) => {\n    const filters = toPairs(filterModel).map<[string, any[]]>(f => {\n      const field = f[0];\n      const values = [];\n      if (f[1].condition1 && f[1].condition2) {\n        values.push({\n          matchMode: f[1].condition1.type,\n          operator: f[1].operator,\n          value:\n            f[1].condition1.filter !== null && f[1].condition1.filter !== undefined ? f[1].condition1.filter : f[1].condition1.dateFrom,\n          valueTo: f[1].condition1.filterTo ? f[1].condition1.filterTo : f[1].condition1.dateTo\n        });\n        values.push({\n          matchMode: f[1].condition2.type,\n          operator: f[1].operator,\n          value:\n            f[1].condition2.filter !== null && f[1].condition1.filter !== undefined ? f[1].condition2.filter : f[1].condition2.dateFrom,\n          valueTo: f[1].condition2.filterTo ? f[1].condition2.filterTo : f[1].condition2.dateTo\n        });\n      } else {\n        values.push({\n          matchMode: f[1].type,\n          operator: 'and',\n          value: f[1].filter !== null && f[1].filter !== undefined ? f[1].filter : f[1].dateFrom,\n          valueTo: f[1].filterTo ? f[1].filterTo : f[1].dateTo\n        });\n      }\n      return [field, values];\n    });\n\n    const filter = filters.reduce<any>((acc, curr) => {\n      const path = curr[0];\n      const operator = curr[1].reduce<string>((prev, filterMD) => filterMD.operator, 'and');\n      const matches = curr[1].map(filterMD => {\n        if (filterMD.value === undefined || filterMD.value === null) {\n          return {};\n        }\n        switch (filterMD.matchMode) {\n          case 'startsWith':\n            return { startsWithInsensitive: filterMD.value };\n          case 'contains':\n            return set({}, path, { includesInsensitive: filterMD.value });\n          case 'notContains':\n            return set({}, path, { notIncludesInsensitive: filterMD.value });\n          case 'endsWith':\n            return set({}, path, { endsWithInsensitive: filterMD.value });\n          case 'equals':\n            return set({}, path, { equalTo: filterMD.value });\n          case 'notEqual':\n            return set({}, path, { notEqualTo: filterMD.value });\n          case 'lessThan':\n            return set({}, path, { lessThan: filterMD.value });\n          case 'lessThanOrEqual':\n            return set({}, path, { lessThanOrEqualTo: filterMD.value });\n          case 'greaterThan':\n            return set({}, path, { greaterThan: filterMD.value });\n          case 'greaterThanOrEqual':\n            return set({}, path, { greaterThanOrEqualTo: filterMD.value });\n          case 'inRange':\n            return {\n              and: [\n                set({}, path, { greaterThanOrEqualTo: filterMD.value }),\n                set({}, path, { lessThanOrEqualTo: filterMD.valueTo })\n              ]\n            };\n          default:\n            return {};\n        }\n      });\n      const conditions = compact(matches);\n      if (operator === 'and') {\n        acc.and.push({ and: conditions });\n      } else {\n        acc.and.push({ or: conditions });\n      }\n      return acc;\n    }, { and: [] });\n\n    return filter as T;\n  };\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageInfo } from '../../models/page-info.model';\n\n@Component({\n  selector: 'ack6-paginator',\n  templateUrl: './paginator.component.html',\n  styleUrls: ['./paginator.component.scss']\n})\nexport class PaginatorComponent implements OnInit {\n\n  @Input()\n  get page(): number { return this.internalPage; }\n  set page(value: number) { this.internalPage = value; }\n  private internalPage = 1;\n\n  @Input()\n  get pageSize(): number { return this.internalPageSize; }\n  set pageSize(value: number) { this.internalPageSize = value; }\n  private internalPageSize = 10;\n\n  @Input()\n  pageLinkSize = 5;\n\n  @Input()\n  get pageSizeOptions(): number[] { return this.internalPageSizeOptions; }\n  set pageSizeOptions(value: number[]) { this.internalPageSizeOptions = value; }\n  private internalPageSizeOptions: number[] = [10,20,40,60,80,100];\n\n  @Input()\n  pageInfo!: PageInfo;\n\n  @Output()\n  pageChange: EventEmitter<any> = new EventEmitter();\n\n\n  pageLinks: number[] = [];\n\n  constructor() { }\n\n  ngOnInit(): void {\n    this.updatePageLinks();\n  }\n\n  pageStart = () => {\n    this.page = 1;\n    this.updatePageLinks();\n    this.onPagechange();\n  }\n\n  pageDown = () => {\n    if (this.page > 1) {\n      this.page--;\n    }\n    this.updatePageLinks();\n    this.onPagechange();\n  }\n\n  pageUp = () => {\n    this.page++;\n    this.updatePageLinks();\n    this.onPagechange();\n  }\n\n  selectPage = (item: number) => {\n    this.page = item;\n    this.updatePageLinks();\n    this.onPagechange();\n  }\n\n\n  calculatePageLinkBoundaries = () => {\n    let start = 1;\n    let end = start + this.pageLinkSize - 1;\n    const half = Math.floor(this.pageLinkSize / 2);\n    if (this.page > half) {\n      start = this.page - half;\n      end = this.page + half;\n    }\n    return [start, end];\n  }\n\n  updatePageLinks = () => {\n    this.pageLinks = [];\n    const boundaries = this.calculatePageLinkBoundaries();\n    const start = boundaries[0];\n    const end = boundaries[1];\n    for (let i = start; i <= end; i++) {\n      this.pageLinks.push(i);\n    }\n  }\n\n  changePageSize = (event: any) => {\n    this.pageSize = event.value;\n    this.pageStart();\n  }\n\n  onPagechange = () => this.pageChange.emit({\n    first: (this.page - 1) * this.pageSize,\n    rows: this.pageSize\n  })\n\n}\n","<div class=\"p-paginator p-component ack6-paginator\">\n  <button type=\"button\" pRipple class=\"p-paginator-first p-paginator-element p-link\" (click)=\"pageStart()\">\n    <span class=\"p-paginator-icon pi pi-angle-double-left\"></span>\n  </button>\n  <button type=\"button\" pRipple class=\"p-paginator-prev p-paginator-element p-link\" (click)=\"pageDown()\">\n    <span class=\"p-paginator-icon pi pi-angle-left\"></span>\n  </button>\n  <span class=\"p-paginator-pages\">\n    <button type=\"button\" *ngFor=\"let pageLink of pageLinks\" class=\"p-paginator-page p-paginator-element p-link\" [ngClass]=\"{'p-highlight': (pageLink === page)}\" (click)=\"selectPage(pageLink)\" pRipple>{{pageLink}}</button>\n  </span>\n  <button type=\"button\" pRipple class=\"p-paginator-next p-paginator-element p-link\" (click)=\"pageUp()\">\n    <span class=\"p-paginator-icon pi pi-angle-right\"></span>\n  </button>\n  <p-dropdown styleClass=\"selectRowsPerPage\" *ngIf=\"pageSizeOptions.length > 0\" [options]=\"pageSizeOptions\" [(ngModel)]=\"pageSize\" appendTo=\"body\" (onChange)=\"changePageSize($event)\"></p-dropdown>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ColDef, ColumnApi, FilterChangedEvent, GridApi, GridReadyEvent, SortChangedEvent } from 'ag-grid-community';\nimport { isEqual, snakeCase, toUpper, isEmpty, find } from 'lodash';\nimport { ConfirmationService } from 'primeng/api';\nimport { BehaviorSubject, Observable, of } from 'rxjs';\nimport { distinctUntilChanged, finalize, map, switchMap, tap } from 'rxjs/operators';\nimport { DocumentNode, FieldNode, OperationDefinitionNode } from 'graphql';\nimport { AG_GRID_LOCALE_IT } from '../../assets/locale.it';\nimport { AgToolsService } from '../../services/ag-tools.service';\nimport { Apollo } from 'apollo-angular';\nimport { AgActionButtonComponent } from '../../components/ag-action-button/ag-action-button.component';\n\n@Component({\n  selector: 'ack6-lookup-search',\n  templateUrl: './lookup-search.component.html',\n  styleUrls: ['./lookup-search.component.scss'],\n  providers: [ConfirmationService]\n})\nexport class LookupSearchComponent implements OnInit {\n\n  frameworkComponents: any;\n\n  @Input() query!: DocumentNode;\n\n  @Output() seletectedEvent = new EventEmitter<any>();\n\n  items$: Observable<any[]>;\n\n  @Input() columnsDef: ColDef[] = [];\n\n  defaultColDef: ColDef;\n  gridApi!: GridApi;\n  gridColumnApi!: ColumnApi;\n  pageSize = 20;\n  pageInfo: any = {\n    hasNextPage: false,\n    hasPreviousPage: false,\n  };\n\n  private subject = new BehaviorSubject<{\n    offset: number;\n    first: number;\n    orderBy: any | any[];\n    filter: any;\n  }>({\n    filter: {and: []},\n    first: 20,\n    offset: 0,\n    orderBy: ['NATURAL']\n  });\n\n  isEmpty = isEmpty;\n\n  constructor(\n    private apollo: Apollo,\n    private agToolsService: AgToolsService\n  ) {\n    this.items$ = of([]);\n\n    this.frameworkComponents = {\n      agActionButtonComponent: AgActionButtonComponent\n    };\n\n    this.defaultColDef = {\n      comparator: (a, b, na, nb, isInverted) => {\n        return 0;\n      },\n      filterParams: {\n        buttons: ['reset', 'apply'],\n        closeOnApply: true,\n        newRowsAction: 'keep',\n        inRangeInclusive: true,\n        textCustomComparator: (filter: string, value: string, filterText: string) => true\n      },\n      resizable: true,\n      sortable: true\n    };\n\n  }\n\n  ngOnInit(): void {\n\n    if (find(this.columnsDef, (col) => col.colId==='ack6-col-select')) this.columnsDef.shift();\n\n    this.columnsDef.unshift({\n      colId: 'ack6-col-select',\n      headerName: '',\n      cellRenderer: 'agActionButtonComponent',\n      cellRendererParams: {\n        actions: [\n          {\n            label: 'Seleziona',\n            icon: 'pi pi-check-circle',\n            command: (event: any) => {\n              this.select(event);\n            }\n          }\n        ]\n      },\n      resizable: false,\n      sortable: false,\n      pinned: 'left',\n      maxWidth: 40,\n      cellClass: ['button-select'],\n      lockPinned: true,\n      lockPosition: true\n    });\n\n    const operationDefinitionNode = this.query.definitions[0] as OperationDefinitionNode;\n    const fieldName = (operationDefinitionNode.selectionSet.selections[0] as FieldNode).name.value;\n    this.items$ = this.subject.pipe(\n      distinctUntilChanged(isEqual),\n      switchMap(\n        (variables) => this.apollo.query<any>({\n          query: this.query,\n          fetchPolicy: 'network-only',\n          variables\n        }).pipe(\n          tap((result) => {\n            this.pageInfo = result.data[fieldName].pageInfo;\n          }),\n          map((result) => result.data[fieldName].nodes.map(this.agToolsService.ackTrim)),\n          finalize(() => {})\n        )\n      )\n    );\n\n  }\n\n  localeTextFunc = (key: string, defaultValue: string) => AG_GRID_LOCALE_IT[key] || defaultValue;\n\n  fit = () => this.gridColumnApi.autoSizeAllColumns();\n\n  resetFilter = () => this.gridApi.setFilterModel(null);\n\n  onGridReady = (params: GridReadyEvent) => {\n    this.gridApi = params.api;\n    this.gridColumnApi = params.columnApi;\n  }\n\n  sortChanged = ($event: SortChangedEvent) => {\n    const current = { ...this.subject.value };\n    const sortModel =\n      $event.columnApi.getColumnState().filter(cs => cs.sortIndex !== null).sort((cs1, cs2) => (cs1?.sortIndex && cs2?.sortIndex)? cs1.sortIndex - cs2.sortIndex : 0);\n    const orderBy = sortModel\n      .map(sort => toUpper((sort.colId)? `${sort.colId.split('.').map(token => snakeCase(token)).join('__')}_${sort.sort}` : ''))\n      .map(sort => sort as any);\n    if (orderBy.length === 0) {\n      orderBy.push('NATURAL');\n    }\n    current.orderBy = orderBy;\n    this.subject.next(current);\n  }\n\n  filterChanged = ($event: FilterChangedEvent) => {\n    const filter = this.agToolsService.parseFilter<any>($event.api.getFilterModel());\n    const current = { ...this.subject.value };\n    if (!isEqual(current.filter, filter)) {\n      current.filter = filter;\n      current.offset = 0;\n      current.first = this.pageSize;\n      this.subject.next(current);\n    }\n  }\n\n  paginate = (event: any) => {\n    this.pageSize = event.rows;\n    const current = { ...this.subject.value };\n    current.offset = event.first;\n    current.first = event.rows;\n    this.subject.next(current);\n  }\n\n  select = (row: any) => this.seletectedEvent.emit(row.id);\n\n}\n","<div class=\"py-2 flex justify-content-between align-items-center\">\n  <div>\n    <button type=\"button\" pButton label=\"Fit\" icon=\"pi pi-pause\" class=\"mr-1 p-button-text\" (click)=\"fit()\"></button>\n  </div>\n  <div>\n    <button type=\"button\" pButton label=\"Nessun filtro\" icon=\"pi pi-filter-slash\" class=\"p-button-text\" (click)=\"resetFilter()\" [disabled]=\"!gridApi || isEmpty(gridApi.getFilterModel())\"></button>\n  </div>\n</div>\n<div class=\"ack6-lookup-content\">\n  <ag-grid-angular\n    [localeTextFunc]=\"localeTextFunc\"\n    style=\"width: 100%; height: 100%;\"\n    class=\"ag-theme-balham\"\n    [rowData]=\"items$ | async\"\n    [columnDefs]=\"columnsDef\"\n    [defaultColDef]=\"defaultColDef\"\n    [frameworkComponents]=\"frameworkComponents\"\n    (sortChanged)=\"sortChanged($event)\"\n    (filterChanged)=\"filterChanged($event)\"\n    (gridReady)=\"onGridReady($event)\"\n    [suppressRowClickSelection]=\"true\"\n    [suppressColumnVirtualisation]=\"true\"\n  >\n  </ag-grid-angular>\n</div>\n<p-footer>\n  <div class=\"py-1 flex justify-content-end align-items-center\">\n    <ack6-paginator [pageInfo]=\"pageInfo\" [pageSizeOptions]=\"[10, 20, 40, 60, 80, 100]\" [pageSize]=\"pageSize\" (pageChange)=\"paginate($event)\"></ack6-paginator>\n  </div>\n</p-footer>\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n  name: 'coerceArray'\n})\nexport class CoerceArrayPipe implements PipeTransform {\n  transform(value: any[] | null, ...args: unknown[]): any[] {\n    return value ?? [];\n  }\n\n}\n","import { AfterViewInit, Component, ContentChildren, forwardRef, Input, OnInit, QueryList, TemplateRef, ViewChild } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Apollo } from 'apollo-angular';\nimport { DocumentNode, FieldNode, OperationDefinitionNode } from 'graphql';\nimport { each, isString, snakeCase, toUpper } from 'lodash';\nimport { PrimeTemplate } from 'primeng/api';\nimport { Observable, Subject } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { ColDef } from 'ag-grid-community';\nimport { LookupInlineSearch } from '../../models/lookup-inline-search.model';\n\n@Component({\n  selector: 'ack6-lookup',\n  templateUrl: './lookup.component.html',\n  styleUrls: ['./lookup.component.scss'],\n  providers: [{\n    provide: NG_VALUE_ACCESSOR,\n    useExisting: forwardRef(() => LookupComponent),\n    multi: true\n  }]\n})\nexport class LookupComponent implements OnInit, ControlValueAccessor, AfterViewInit {\n\n  /**\n   * Titolo della finestra di dialogo [default='Lookup']\n   */\n  @Input()\n  get header(): string { return this.internalHeader; }\n  set header(value: string) { this.internalHeader = value; }\n\n  constructor(private apollo: Apollo) {\n    this.idKey = this.idKey ?? 'id';\n    this.orderKey = this.orderKey ?? 'description';\n    this.displayKey = this.displayKey ?? 'description';\n    this.decodeKey = this.decodeKey ?? 'description';\n  }\n\n  @ContentChildren(PrimeTemplate) templates!: QueryList<any>;\n\n  @ViewChild('defaultLookupSearch', { read: TemplateRef }) defaultLookupSearch!: TemplateRef<any>;\n\n\n  lookupTemplate!: TemplateRef<any>;\n\n  /**\n   * Query gql per il recupero dei dati da visualizzare nella lista di autocompletamento\n   * e nella tabella di lookup\n   * ES: gql`query Items($filter: any){ ..... }\n   * }\n   */\n  @Input()\n  query!: DocumentNode;\n\n  /**\n   * Query gql per il recupero del singolo elemento in decodifica\n   * ES: gql`query ItemById($id: String!){ ..... }\n   * }\n   */\n  @Input()\n  queryById!: DocumentNode;\n\n\n  /**\n   * Definizione delle colonne in visualizzazione nella tabella di lookup\n   * ES: gql`query Items($filter: any){ ..... }\n   * }\n   */\n  @Input()\n  columnsDef!: ColDef[];\n\n  /**\n   * Campi in cui effettuare la ricerca durante la digitazione e tipi di filtri\n   */\n\n  @Input()\n  searchIn!: LookupInlineSearch[];\n\n  /**\n   * Data la lista degli oggetti recuperati dalla query, la proprietà 'idKey'\n   * è la chiave di identificazione dell'oggetto da porre come selezioanto [default='id']\n   */\n  @Input()\n  idKey!: string;\n\n  /**\n   * Data la lista degli oggetti recuperati dalla query, la proprietà 'displayKey'\n   * viene usata come campo di visualizzazine nella lista [default='description']\n   */\n  @Input()\n  displayKey!: string;\n\n  /**\n   * Data la lista degli oggetti recuperati dalla query, la proprietà 'orderKey'\n   * viene usata come campo di ordinamento [default='description']\n   */\n  @Input()\n  orderKey!: string;\n\n  /**\n   * Data la lista degli oggetti recuperati dalla query, la proprietà 'decodeKey'\n   * viene usata come valore in visualizzazione nel campo di decodifica [default='description']\n   */\n  @Input()\n  decodeKey!: string;\n  private internalHeader = 'Lookup';\n\n  selected!: any;\n\n  results$!: Observable<any[]>;\n  subject = new Subject<any>();\n\n  showLookup = false;\n\n  inputStyle = { 'p-inputtext-sm': true, 'zacca': true };\n\n  ctx = {\n    selectElement: async (event: any) => {\n      await this.writeValue(event);\n      this.onModelChange(event);\n      this.showLookup = false;\n    }\n  };\n\n  onModelChange = (_: any) => { };\n  onModelTouched = (_: any) => { };\n\n  ngOnInit(): void {\n    const operationDefinitionNode = this.query.definitions[0] as OperationDefinitionNode;\n    const fieldName = (operationDefinitionNode.selectionSet.selections[0] as FieldNode).name.value;\n\n    const orderBy = toUpper(`${this.orderKey.split('.').map(token => snakeCase(token)).join('__')}_ASC`)\n    const variables = { filter: {and: []}, first: 20, offset: 0, orderBy };\n\n    this.results$ = this.subject.pipe(\n      switchMap(value => this.apollo.query<any>({\n        query: this.query,\n        fetchPolicy: 'cache-first',\n        variables: { ...variables, filter: value }\n      }).pipe(\n        map(\n          (items: any) =>\n            (items.data[fieldName].nodes as any[])\n              .map(obj => Object.keys(obj).reduce<any>((acc, curr) => {\n                acc[curr] = obj[curr] && isString(obj[curr]) ? obj[curr].trim() : obj[curr];\n                return acc;\n              }, {})\n              )\n        )\n      )\n      )\n    );\n  }\n\n  ngAfterViewInit(): void {\n    setTimeout(() => {\n      this.lookupTemplate = this.defaultLookupSearch;\n      this.templates.forEach((item) => {\n        switch (item.getType()) {\n          case 'lookup':\n            this.lookupTemplate = item.template;\n            break;\n\n          default:\n            this.lookupTemplate = this.defaultLookupSearch;\n            break;\n        }\n      });\n    });\n\n  }\n\n  writeValue = async (id: string) => {\n    if (id) {\n      const operationDefinitionNode = this.queryById.definitions[0] as OperationDefinitionNode;\n      const fieldName = (operationDefinitionNode.selectionSet.selections[0] as FieldNode).name.value;\n      this.selected = await this.apollo.query<any>({\n        query: this.queryById,\n        fetchPolicy: 'cache-first',\n        variables: { id }\n      }).pipe(map((result: any) => {\n        const item = result.data[fieldName];\n        return Object.keys(item).reduce<any>((acc, curr) => {\n          acc[curr] = isString(item[curr]) ? item[curr].trim() : item[curr];\n          return acc;\n        }, {});\n      })).toPromise();\n    }\n  }\n\n  registerOnChange = (fn: any) => this.onModelChange = fn;\n  registerOnTouched = (fn: any) => this.onModelTouched = fn;\n\n  search = (event: any) => {\n\n    const filters: any = [];\n\n    each(this.searchIn, (search: LookupInlineSearch) => {\n      const field = search.field;\n      const filter = search.filter || 'equalTo';\n      const value = (search.type && search.type==='number')? Number(event.query) : String(event.query);\n      const filterData: any = {};\n      filterData[field] = {};\n      filterData[field][filter] = value;\n      filters.push(filterData);\n    });\n\n    const filter = { or: filters };\n    this.subject.next(filter);\n  }\n\n  delete = () => {\n    this.selected = null;\n    this.onModelChange(this.selected);\n  }\n\n  onSelect = (event: any) => this.onModelChange(event[this.idKey]);\n\n  lookup = () => this.showLookup = true;\n\n}\n","<div class=\"p-inputgroup ack6-inputlookup-group\">\n  <p-autoComplete [(ngModel)]=\"selected\" [suggestions]=\"results$ | async | coerceArray\" (completeMethod)=\"search($event)\"\n    [field]=\"decodeKey\" (onSelect)=\"onSelect($event)\" (onClear)=\"delete()\" [autoHighlight]=\"true\" class=\"ack6-inputlookup\" autocomplete=\"off\" autocapitalize=\"off\" spellcheck=\"false\">\n    <ng-template let-item pTemplate=\"item\">\n      <strong>{{item[idKey]}}</strong>: {{item[displayKey]}}\n    </ng-template>\n  </p-autoComplete>\n  <div class=\"ack6-inputlookup-button-group\">\n    <!--<button pButton pRipple type=\"button\" icon=\"pi pi-times\" (click)=\"delete()\" class=\"p-button-text cancel\" [disabled]=\"!selected\"></button>-->\n    <button pButton pRipple type=\"button\" icon=\"pi pi-search\" (click)=\"lookup()\" class=\"p-button-text search\"></button>\n  </div>\n</div>\n\n<p-dialog [header]=\"header\" [(visible)]=\"showLookup\" [draggable]=\"true\" [resizable]=\"false\" [modal]=\"true\" styleClass=\"ack6-lookup-dialog\" [style]=\"{width: '64vw'}\" appendTo=\"body\" [maximizable]=\"true\">\n  <ng-container *ngTemplateOutlet=\"lookupTemplate; context:ctx\"></ng-container>\n</p-dialog>\n\n<ng-template #defaultLookupSearch let-selectElement=\"selectElement\">\n  <ack6-lookup-search [query]=\"query\" [columnsDef]=\"columnsDef\" (seletectedEvent)=\"selectElement($event)\"></ack6-lookup-search>\n</ng-template>\n","import { ModuleWithProviders, NgModule, Type } from '@angular/core';\n\nimport { ButtonModule } from 'primeng/button';\nimport { TableModule } from 'primeng/table';\nimport { PaginatorModule } from 'primeng/paginator';\nimport { ToolbarModule } from 'primeng/toolbar';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\nimport { ColorPickerModule } from 'primeng/colorpicker';\nimport { RippleModule } from 'primeng/ripple';\nimport { CommonModule } from '@angular/common';\nimport { ChipModule } from 'primeng/chip';\nimport { DynamicDialogModule } from 'primeng/dynamicdialog';\nimport { DividerModule } from 'primeng/divider';\nimport { AutoCompleteModule } from 'primeng/autocomplete';\nimport { DialogModule } from 'primeng/dialog';\nimport { PanelModule } from 'primeng/panel';\n\nconst exportModules: (any[] | Type<any>)[] = [\n  DynamicDialogModule,\n  ButtonModule,\n  TableModule,\n  PaginatorModule,\n  ToolbarModule,\n  TooltipModule,\n  InputTextModule,\n  OverlayPanelModule,\n  ColorPickerModule,\n  ChipModule,\n  DividerModule,\n  DialogModule,\n  AutoCompleteModule,\n  PanelModule,\n  RippleModule\n];\n\n@NgModule({\n  imports: [\n    CommonModule,\n    ...exportModules\n  ],\n  exports: [\n    CommonModule,\n    ...exportModules\n  ]\n})\nexport class SharedModule {\n\n  static forRoot(): ModuleWithProviders<SharedModule> {\n    return {\n      ngModule: SharedModule,\n      providers: []\n    };\n  }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport moment from 'moment';\n\n@Pipe({ name: 'isoToDate' })\nexport class IsoToDatePipe implements PipeTransform {\n\n  iso8601 = /^\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(([+-]\\d\\d:\\d\\d)|Z)?$/;\n\n  transform(value: string): Date|null {\n    if (this.isIso8601(value)) {\n      const result = this.iso8601.exec(value);\n      const dataString = result ? result[0] : undefined;\n      return moment(dataString).toDate();\n    }\n    return null;\n  }\n\n  isIso8601(value: any) {\n    if (value === null || value === undefined) {\n      return false;\n    }\n    return this.iso8601.test(value);\n  }\n\n}\n","import { Injectable } from '@angular/core';\nimport {\n  HttpRequest,\n  HttpHandler,\n  HttpEvent,\n  HttpInterceptor,\n  HttpResponse,\n  HttpErrorResponse\n} from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport moment from 'moment';\n\n// https://gist.github.com/martinobordin/39bb1fe3400a29c1078dec00ff76bba9\n\n@Injectable()\nexport class DateHttpInterceptor implements HttpInterceptor {\n\n  constructor() { }\n\n  iso8601 = /^(\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d{1,3})?(([+-]\\d\\d:\\d\\d)|Z)?)|(\\d{4}-\\d\\d-\\d\\d)$/;\n\n  public intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n    return next.handle(req).pipe(\n      tap((event: HttpEvent<any>) => {\n        if (event instanceof HttpResponse) {\n          const body = event.body;\n          this.convertToDate(body);\n        }\n      }, (err: any) => {\n        if (err instanceof HttpErrorResponse) {\n          if (err.status === 401) {\n          }\n        }\n      }),\n    );\n  }\n\n  convertToDate(body: any) {\n    if (body === null || body === undefined) {\n      return body;\n    }\n\n    if (typeof body !== 'object') {\n      return body;\n    }\n\n    for (const key of Object.keys(body)) {\n      const value = body[key];\n      if (typeof value === 'object') {\n        this.convertToDate(value);\n      } else if (this.isIso8601(value)) {\n        body[key] = moment(value).toDate();\n      }\n\n\n      // if (this.isIso8601(value)) {\n      //   body[key] = new Date(value);\n      // } else if (typeof value === 'object') {\n      //   this.convertToDate(value);\n      // }\n    }\n  }\n\n  isIso8601(value: any) {\n    if (value === null || value === undefined) {\n      return false;\n    }\n    return this.iso8601.test(value);\n  }\n}\n","import { createAction, props } from '@ngrx/store';\n\nexport const httpError = createAction('[APPLICATION/HTTP ERROR] Http error', props<{\n  payload: any, body?: any, params?: any, fromAction?: string, reqUrl?: string }>());\n","import { Injectable } from '@angular/core';\nimport {\n  HttpRequest,\n  HttpHandler,\n  HttpEvent,\n  HttpInterceptor,\n  HttpResponse,\n  HttpErrorResponse\n} from '@angular/common/http';\nimport { Store } from '@ngrx/store';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, filter, tap } from 'rxjs/operators';\nimport { HttpErrorActions } from '../store/actions';\n\n@Injectable()\nexport class ErrorInterceptor implements HttpInterceptor {\n\n  constructor(\n    private store: Store<any>\n  ) { }\n\n  intercept(request: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>> {\n\n    return next.handle(request).pipe(\n      filter(res => res instanceof HttpResponse),\n      catchError((err: HttpErrorResponse) => {\n\n        this.store.dispatch(HttpErrorActions.httpError({ payload: err, body: request.body, params: request.params, reqUrl: request.url }));\n\n        return throwError(err);\n\n      })\n    );\n  }\n}\n","import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core';\nimport { EndpointInterceptor } from './interceptors/endpoint.interceptor';\nimport { TokenInterceptor } from './interceptors/token.interceptor';\nimport { ConfigService } from './services/config.service';\n\nimport { LookupComponent } from './containers/lookup/lookup.component';\nimport { SharedModule } from './shared/shared.module';\nimport { LookupSearchComponent } from './containers/lookup-search/lookup-search.component';\nimport { PaginatorComponent } from './containers/paginator/paginator.component';\nimport { IsoToDatePipe } from './pipes/iso-to-date.pipe';\nimport { CoerceArrayPipe } from './pipes/coerce-array.pipe';\nimport { DateHttpInterceptor } from './interceptors/date-http.interceptor';\nimport { CommonModule } from '@angular/common';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { AgActionButtonComponent } from './components/ag-action-button/ag-action-button.component';\nimport { ErrorInterceptor } from './interceptors/error.interceptor';\n\n// https://stackoverflow.com/questions/57594723/angular-metadata-collected-contains-an-error-that-will-be-reported-at-runtime\nexport function useFactory(configService: ConfigService) {\n  const res = () => configService.init();\n  return res;\n};\n\n@NgModule({\n  declarations: [AgActionButtonComponent, LookupComponent, LookupSearchComponent, PaginatorComponent, IsoToDatePipe, CoerceArrayPipe],\n  imports: [\n    CommonModule,\n    HttpClientModule,\n    SharedModule,\n    AgGridModule.withComponents([AgActionButtonComponent])\n  ],\n  exports: [LookupComponent, LookupSearchComponent, PaginatorComponent, IsoToDatePipe, CoerceArrayPipe],\n  providers: [\n    {\n      provide: APP_INITIALIZER,\n      useFactory,\n      deps: [ConfigService],\n      multi: true\n    },\n    {\n      provide: HTTP_INTERCEPTORS,\n      useClass: EndpointInterceptor,\n      multi: true\n    },\n    {\n      provide: HTTP_INTERCEPTORS,\n      useClass: TokenInterceptor,\n      multi: true\n    },\n    {\n      provide: HTTP_INTERCEPTORS,\n      useClass: DateHttpInterceptor,\n      multi: true\n    },\n    {\n      provide: HTTP_INTERCEPTORS,\n      useClass: ErrorInterceptor,\n      multi: true\n    }\n  ]\n})\nexport class Ack6LibModule {\n  static forRoot(): ModuleWithProviders<Ack6LibModule> {\n    return {\n      ngModule: Ack6LibModule,\n      providers: []\n    };\n  }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { APOLLO_NAMED_OPTIONS, APOLLO_OPTIONS } from 'apollo-angular';\nimport { HttpLink } from 'apollo-angular/http';\nimport { ConfigService } from './services/config.service';\nimport { ApolloClientOptions, InMemoryCache } from '@apollo/client/core';\nimport { GRAPH_NAME } from './injection/injection.token';\n\nexport function createApollo(httpLink: HttpLink, configService: ConfigService): ApolloClientOptions<any> {\n  return {\n    link: httpLink.create({ uri: configService.graphUrl }),\n    cache: new InMemoryCache(),\n    connectToDevTools: true\n  };\n}\n\nexport function createNamedApollo(namedGraphNames: string[]):\n  (httpLink: HttpLink, configService: ConfigService) => Record<string, ApolloClientOptions<any>> | null {\n\n  const fn = (httpLink: HttpLink, configService: ConfigService): Record<string, ApolloClientOptions<any>> | null => {\n\n    if (namedGraphNames && namedGraphNames.length) {\n\n      const result: Record<string, ApolloClientOptions<any>> = {};\n\n      for (const key of namedGraphNames) {\n\n        if (!configService.getGraphEndpoint(key)) {\n          continue;\n        }\n\n        result[key] = {\n          name: key,\n          link: httpLink.create({ uri: configService.getGraphEndpoint(key) }),\n          cache: new InMemoryCache(),\n          connectToDevTools: true\n        };\n\n      }\n\n      return result;\n\n    } else {\n      return null;\n    }\n\n  };\n\n  return fn;\n\n}\n\n\n@NgModule()\nexport class GraphQLModule {\n  static forRoot(graphName: string, ...namedGraphNames: string[]): ModuleWithProviders<GraphQLModule> {\n    return {\n      ngModule: GraphQLModule,\n      providers: [\n        { provide: GRAPH_NAME, useValue: graphName },\n        {\n          provide: APOLLO_OPTIONS,\n          useFactory: createApollo,\n          deps: [HttpLink, ConfigService],\n        },\n        {\n          provide: APOLLO_NAMED_OPTIONS,\n          useFactory: createNamedApollo(namedGraphNames),\n          deps: [HttpLink, ConfigService],\n        }\n      ]\n    };\n  }\n}\n","export class LookupInlineSearch {\n  field!: string;\n  filter?: string;\n  type?: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ConfigService","i1","i3","i2","i4","i2.AgToolsService","i5.PaginatorComponent","i6","i7","i4.LookupSearchComponent","i5","i8","i9","i10.CoerceArrayPipe","HttpErrorActions.httpError"],"mappings":"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"}