@acorex/data-grid 16.19.58 → 16.20.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/fesm2022/acorex-data-grid.mjs +79 -79
- package/fesm2022/acorex-data-grid.mjs.map +1 -1
- package/index.d.ts +543 -19
- package/package.json +1 -1
- package/lib/data-grid/columns/check-column.component.d.ts +0 -37
- package/lib/data-grid/columns/column-groups.component.d.ts +0 -9
- package/lib/data-grid/columns/column.component.d.ts +0 -37
- package/lib/data-grid/columns/command-column.component.d.ts +0 -27
- package/lib/data-grid/columns/date-column.component.d.ts +0 -32
- package/lib/data-grid/columns/row-number-column.component.d.ts +0 -9
- package/lib/data-grid/columns/selection-column.component.d.ts +0 -13
- package/lib/data-grid/columns/text-column.component.d.ts +0 -25
- package/lib/data-grid/datagrid.component.d.ts +0 -180
- package/lib/data-grid/datagrid.events.d.ts +0 -20
- package/lib/data-grid/datagrid.model.d.ts +0 -8
- package/lib/data-grid/datagrid.module.d.ts +0 -24
- package/lib/data-grid/datagrid.token.d.ts +0 -4
- package/lib/data-grid/filters/filter.component.d.ts +0 -5
- package/lib/data-grid/templates/cell-template.component.d.ts +0 -22
- package/lib/data-grid/templates/detail-template.component.d.ts +0 -19
- package/lib/data-grid/templates/row-template.component.d.ts +0 -20
- package/lib/data-lov/data-lov-popup/data-lov-popup.component.d.ts +0 -41
- package/lib/data-lov/data-lov.component.d.ts +0 -51
- package/lib/data-lov/data-lov.module.d.ts +0 -12
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-data-grid.mjs","sources":["../../../../libs/data-grid/src/lib/data-grid/templates/cell-template.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/column.component.ts","../../../../libs/data-grid/src/lib/data-grid/filters/filter.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/check-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/column-groups.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/command-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/date-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/selection-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/text-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/columns/row-number-column.component.ts","../../../../libs/data-grid/src/lib/data-grid/datagrid.token.ts","../../../../libs/data-grid/src/lib/data-grid/templates/detail-template.component.ts","../../../../libs/data-grid/src/lib/data-grid/templates/row-template.component.ts","../../../../libs/data-grid/src/lib/data-grid/datagrid.component.ts","../../../../libs/data-grid/src/lib/data-grid/datagrid.component.html","../../../../libs/data-grid/src/lib/data-grid/datagrid.module.ts","../../../../libs/data-grid/src/lib/data-lov/data-lov-popup/data-lov-popup.component.ts","../../../../libs/data-grid/src/lib/data-lov/data-lov-popup/data-lov-popup.component.html","../../../../libs/data-grid/src/lib/data-lov/data-lov.component.ts","../../../../libs/data-grid/src/lib/data-lov/data-lov.component.html","../../../../libs/data-grid/src/lib/data-lov/data-lov.module.ts","../../../../libs/data-grid/src/acorex-data-grid.ts"],"sourcesContent":["import { Component, ContentChild, TemplateRef, ChangeDetectionStrategy } from '@angular/core';\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\n@Component({\n selector: 'ax-cell-template',\n template: `<ng-content></ng-content>\n `,\n standalone: false\n})\n\nexport class AXDataGridCellTemplateComponent {\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\n renderer: any;\n params: any;\n constructor() {\n this.renderer = AXDataGridCellTemplateRenderer;\n }\n ngOnInit(): void {\n this.params = {\n templateRef: this.templateRef\n }\n }\n}\n\n@Component({\n template: `\n <ng-container *ngTemplateOutlet='templateRef; context: { $implicit: rowData }'>\n </ng-container>\n `,\n standalone: false\n})\n\nexport class AXDataGridCellTemplateRenderer implements ICellRendererAngularComp {\n rowData: any;\n templateRef: TemplateRef<any>;\n\n constructor() { }\n\n agInit(params: ICellRendererParams): void {\n this.rowData = params.data;\n this.templateRef = (params as any).templateRef;\n }\n\n refresh(params: ICellRendererParams): boolean {\n this.rowData = params.data;\n return true;\n }\n}","import { AXConfig } from '@acorex/core';\nimport { ContentChild, Directive, input, Input } from '@angular/core';\nimport { AXGridCellParams } from '../datagrid.events';\nimport { AXDataGridCellTemplateComponent } from '../templates/cell-template.component';\nimport { AXDataGridFilterPharams, AXFilterType } from '../datagrid.model';\n\n@Directive()\nexport abstract class AXGridDataColumn {\n @ContentChild(AXDataGridCellTemplateComponent)\n cellTemplate: AXDataGridCellTemplateComponent;\n\n @Input()\n width: number = 100;\n\n @Input()\n maxWidth: number;\n\n @Input()\n minWidth: number;\n\n @Input()\n pinned: 'start' | 'end' | null = null;\n\n @Input()\n allowSorting: boolean = true;\n\n @Input()\n allowFiltering: boolean = AXConfig.get('datagrid.allowFiltering') || false;\n\n @Input()\n cellClass: (\n params: AXGridCellParams\n ) => (string | string[]) | (string | string[]);\n\n @Input()\n sort: 'asc' | 'desc' | null = null;\n\n @Input()\n field: string = '';\n\n @Input()\n caption: string = '';\n\n @Input()\n cellRendererParams: any;\n\n @Input()\n checkbox: boolean = false;\n\n @Input()\n groupIndex: number = -1;\n\n @Input()\n treeIndex: number = -1;\n\n @Input()\n enableRowGroup: boolean = false;\n\n @Input()\n hide: boolean = false;\n\n @Input()\n floatingFilter: boolean = AXConfig.get('datagrid.floatingFilter') || false;\n\n @Input()\n disableMenu: boolean = false;\n\n @Input()\n resizable: boolean = true;\n\n @Input()\n menuColumnDisable: boolean = false;\n\n @Input()\n menuItemDisable: boolean = false;\n\n @Input()\n columnGroupShow: 'open' | 'closed';\n\n @Input()\n wrapText = false;\n\n @Input()\n cellStyle: Object = {};\n\n filter = input<AXFilterType>('textColumnFilter');\n\n filterParams = input<AXDataGridFilterPharams>({\n values: [],\n debounceMs: 100,\n suppressSelectAll: true,\n applyMiniFilterWhileTyping: true,\n suppressMiniFilter: true,\n });\n\n constructor() {}\n\n render(): any {\n const col: any = {\n field: this.field,\n width: this.width,\n };\n\n col.resizable = this.resizable;\n\n col.suppressHeaderMenuButton = this.disableMenu;\n\n col.menuTabs = ['filterMenuTab', 'columnsMenuTab', 'generalMenuTab'];\n\n col.floatingFilter = this.floatingFilter;\n\n col.suppressHeaderFilterButton = true;\n\n if (this.filterParams().values.length) {\n col.suppressHeaderFilterButton = false;\n }\n\n if (this.wrapText) {\n col.wrapText = true;\n\n col.autoHeight = true;\n\n col.wrapHeaderText = true;\n\n col.autoHeaderHeight = true;\n }\n if (!this.allowFiltering) {\n col.filter = false;\n col.menuTabs = col.menuTabs.filter((c) => c != 'filterMenuTab');\n col.floatingFilter = false;\n } else {\n col.filterParams = {\n ...this.filterParams(),\n };\n }\n\n if (this.menuColumnDisable == true) {\n col.menuTabs = col.menuTabs.filter((c) => c != 'columnsMenuTab');\n }\n\n if (this.menuItemDisable == true) {\n col.menuTabs = col.menuTabs.filter((c) => c != 'generalMenuTab');\n }\n\n if (this.caption) {\n col.headerName = this.caption;\n }\n\n if (this.minWidth) {\n col.minWidth = this.minWidth;\n }\n\n if (this.maxWidth) {\n col.maxWidth = this.maxWidth;\n }\n\n if (this.pinned) {\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\n // TODO: Change based on layout\n }\n\n col.sortable = this.allowSorting;\n\n if (this.sort) {\n col.sort = this.sort;\n }\n\n if (this.groupIndex >= 0) {\n col.rowGroupIndex = this.groupIndex;\n col.rowGroup = true;\n this.enableRowGroup = true;\n }\n\n if (this.treeIndex >= 0) {\n col.rowGroupIndex = this.treeIndex;\n col.rowGroup = false;\n }\n\n if (this.hide) {\n col.hide = true;\n }\n\n if (this.enableRowGroup) {\n col.enableRowGroup = this.enableRowGroup;\n }\n\n if (this.cellClass) {\n const THAT = this;\n if (this.cellClass instanceof Function) {\n col.cellClass = (p) => {\n return THAT.cellClass({\n column: THAT,\n rowIndex: p.node.rowIndex,\n rowLevel: p.node.level,\n data: p.data,\n value: p.value,\n });\n };\n } else {\n col.cellClass = this.cellClass;\n }\n }\n\n if (Object.keys(this.cellStyle)?.length) {\n col.cellStyle = this.cellStyle;\n }\n\n if (this.cellTemplate != null) {\n col.cellRenderer = this.cellTemplate.renderer;\n col.cellRendererParams = this.cellTemplate.params;\n }\n\n if (this.columnGroupShow) {\n col.columnGroupShow = this.columnGroupShow;\n }\n\n if (this.checkbox) {\n col.checkboxSelection = (params) => {\n return true;\n };\n }\n\n return col;\n }\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n\n@Component({\n selector: 'ax-data-grid-filter',\n template: `\n <div class='ax-grid-filter-container'>\n <ng-content></ng-content>\n <div class='btn-group' role='group'>\n <button type='button' class='btn btn-primary btn-sm'>\n <i class='fas fa-filter'></i>\n </button>\n <button type='button' class='btn btn-danger btn-sm'>\n <i class='fas fa-trash-alt'></i>\n </button>\n </div>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n standalone: false\n})\nexport class AXDataGridFilterComponent {}\n","import {\n Component,\n ChangeDetectionStrategy,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport { ICellRendererAngularComp, IFilterAngularComp } from 'ag-grid-angular';\nimport {\n ICellRendererParams,\n IFilterParams,\n RowNode,\n IDoesFilterPassParams,\n IAfterGuiAttachedParams,\n} from 'ag-grid-community';\n\n@Component({\n selector: 'ax-check-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AXGridCheckColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n\n render() {\n const col = super.render();\n if (!col.cellRenderer) {\n col.cellRenderer = BooleanRenderer;\n }\n if (this.allowFiltering) {\n col.filterFramework = BooleanFilterRenderer;\n }\n return col;\n }\n}\n\n@Component({\n template: ` <ax-check-box [value]=\"value\" readonly=\"true\"></ax-check-box> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class BooleanRenderer implements ICellRendererAngularComp {\n value: boolean;\n constructor() {}\n agInit(params: ICellRendererParams): void {\n if (params.value === 1) {\n params.value = true;\n } else if (params.value === 0) {\n params.value = false;\n }\n this.value = params.value;\n }\n refresh(params: ICellRendererParams): boolean {\n this.value = params.value;\n return true;\n }\n}\n\n@Component({\n template: `\n <ax-data-grid-filter>\n <ax-select-box label=\"Select Box\" [items]=\"selectItem\"></ax-select-box>\n </ax-data-grid-filter>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class BooleanFilterRenderer implements IFilterAngularComp {\n public value?: boolean = null;\n private params: IFilterParams;\n private valueGetter: (rowNode: RowNode) => any;\n @ViewChild('input', { static: true, read: ViewContainerRef }) public input;\n\n selectItem = [\n { value: 0, label: 'True' },\n { value: 1, label: 'False' },\n ];\n\n agInit(params: any): void {\n this.params = params;\n\n this.valueGetter = params.valueGetter;\n }\n\n isFilterActive(): boolean {\n return this.value !== null && this.value !== undefined;\n }\n\n doesFilterPass(params: IDoesFilterPassParams | any): boolean {\n return this.value === this.valueGetter(params.node);\n }\n\n getModel(): any {\n return { value: this.value };\n }\n\n setModel(model: any): void {\n this.value = model ? model.value : null;\n }\n\n ngAfterViewInit(params: IAfterGuiAttachedParams): void {\n window.setTimeout(() => {\n this.input.element.nativeElement.focus();\n });\n }\n\n onChange(newValue): void {\n if (this.value !== newValue) {\n this.value = newValue;\n this.params.filterChangedCallback();\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n QueryList,\n} from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\n\n@Component({\n selector: 'ax-column-group',\n template: '<ng-content></ng-content>',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXColumnGroupComponent },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class AXColumnGroupComponent extends AXGridDataColumn {\n @ContentChildren(AXGridDataColumn)\n columns: QueryList<AXGridDataColumn>;\n\n render() {\n const col = super.render();\n col.children = [];\n this.columns.forEach((elm) => {\n col.children.push(elm.render());\n });\n return col;\n }\n}\n","import { AXMenuItem } from '@acorex/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\nimport { AXGridRowCommandEvent } from '../datagrid.events';\nimport { AXGridDataColumn } from './column.component';\n\nexport type AXGridRowCommandFunction = (row: any) => AXMenuItem[];\n\n@Component({\n selector: 'ax-command-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCommandColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: false\n})\nexport class AXGridCommandColumn extends AXGridDataColumn {\n @Input()\n items: AXMenuItem[] | AXGridRowCommandFunction = [];\n\n @Output()\n onItemClick: EventEmitter<AXGridRowCommandEvent> =\n new EventEmitter<AXGridRowCommandEvent>();\n\n render() {\n const col = super.render();\n if (!col.cellRenderer) {\n col.cellRenderer = CommandRenderer;\n }\n col.cellRendererParams = {\n items: this.items,\n onClick: (e) => {\n this.onItemClick.emit({\n command: e.name,\n data: e.data,\n rowIndex: e.rowIndex,\n rowLevel: e.rowLevel,\n htmlEvent: e.htmlEvent,\n });\n },\n };\n col.sortable = false;\n col.filter = false;\n col.valueGetter = (params) => {\n return this.items;\n };\n return col;\n }\n}\n\n@Component({\n selector: 'ax-command-cell',\n template: `\n <ng-container *ngFor=\"let item of items; let i = index\">\n <button\n *ngIf=\"item.visible !== false\"\n class=\"ax button md ax-grid-command-button {{\n item.style || 'ax primary blank'\n }}\"\n [class.disabled]=\"item.disable\"\n type=\"button\"\n [title]=\"item.tooltip\"\n [attr.tabindex]=\"i\"\n (click)=\"onClick(item, $event)\"\n >\n <i [ngClass]=\"item.icon\"></i>{{ item.text }}\n </button>\n </ng-container>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class CommandRenderer implements ICellRendererAngularComp {\n items: AXMenuItem[] | AXGridRowCommandFunction = [];\n node: any;\n private clickCallback: Function;\n\n constructor() {}\n\n agInit(params: ICellRendererParams): void {\n this.mapParams(params);\n }\n\n refresh(params: ICellRendererParams): boolean {\n this.mapParams(params);\n return true;\n }\n\n private mapParams(params: any) {\n this.node = params.node;\n this.items =\n typeof params.items == 'function'\n ? params.items({ data: this.node.data })\n : Array.isArray(params.items)\n ? params.items\n : [];\n this.clickCallback = params.onClick;\n }\n\n onClick(item: AXMenuItem, e: MouseEvent) {\n if (this.clickCallback && !item.disable) {\n this.clickCallback({\n name: item.name,\n rowLevel: this.node.level,\n rowIndex: this.node.rowIndex,\n data: this.node.data,\n htmlEvent: e,\n });\n }\n }\n}\n","import { AXDatePickerComponent } from '@acorex/components';\nimport { AXCalendarType, AXConfig, AXDateTime } from '@acorex/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\n@Component({\n selector: 'ax-date-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridDateColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class AXGridDateColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n\n @Input()\n format: string;\n\n @Input()\n type: AXCalendarType = AXConfig.get('dateTime.type');\n\n render() {\n const col = super.render();\n col.cellRendererParams = {\n format: this.format,\n };\n\n col.comparator = (valueA: any, valueB: any) => {\n const date1 = AXDateTime.convert(valueA);\n const date2 = AXDateTime.convert(valueB);\n //\n if (date1 === null && date2 === null) {\n return 0;\n }\n if (date1 === null) {\n return -1;\n }\n if (date2 === null) {\n return 1;\n }\n return date1.date.getTime() - date2.date.getTime();\n };\n\n col.valueFormatter = (params) => {\n const date: AXDateTime = AXDateTime.convert(params.value, this.type);\n if (date) {\n return date.format(this.format);\n } else {\n return null;\n }\n };\n col.filter = 'agDateColumnFilter';\n\n col.cellStyle = { 'text-align': 'left' };\n\n col.floatingFilterComponent = AXDatePickerFilterComponent;\n\n return col;\n }\n}\n\n@Component({\n selector: 'ax-data-picker-filter',\n template: `<ax-date-picker\n [selectableHoliday]=\"selectableHoliday\"\n [allowClear]=\"true\"\n (onValueChanged)=\"onValueChanged($event)\"\n size=\"sm\"\n >\n </ax-date-picker>`,\n host: {},\n encapsulation: ViewEncapsulation.None,\n standalone: false\n})\nexport class AXDatePickerFilterComponent {\n @ViewChild(AXDatePickerComponent)\n datePicker: AXDatePickerComponent;\n @ViewChild('div', { read: ElementRef }) div: ElementRef;\n selectableHoliday: boolean = false;\n type: string = 'jalali';\n date: Date;\n params: any;\n picker: any;\n\n agInit(params: any): void {\n this.params = params;\n }\n\n ngAfterViewInit() {}\n ngOnDestroy() {}\n\n onDateChanged(selectedDates) {\n this.params.parentFilterInstance((instance) => {\n instance.onFloatingFilterChanged('equal', selectedDates);\n });\n //this.date = selectedDates[0] || null;\n // this.params.onDateChanged();\n }\n\n getDate(): Date {\n return this.date;\n }\n\n setDate(date: Date): void {\n this.date = date || null;\n //this.picker.setDate(date);\n }\n\n setInputPlaceholder(placeholder: string): void {\n //this.div.nativeElement.setAttribute('placeholder', placeholder);\n }\n onValueChanged(e) {\n this.setDate(e.value);\n this.onDateChanged(e.value);\n }\n}\n","import { AXGridDataColumn } from './column.component';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'ax-selection-column',\n template: '',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXGridSelectionColumn },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AXGridSelectionColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n\n @Input()\n condition: (params) => boolean;\n\n @Input()\n headerCheckbox: boolean = false;\n\n @Input()\n pinned: 'start' | 'end' = 'start';\n\n @Input()\n width: number = 40;\n\n @Input()\n rowSelectableConditionField: string;\n\n render() {\n const col = super.render();\n\n col.checkboxSelection = this.condition ? this.condition : true;\n\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\n\n col.filter = false;\n\n col.resizable = true;\n\n col.sortable = false;\n\n col.minWidth = 5;\n\n col.width = this.width;\n\n col.floatingFilter = false;\n\n if (this.headerCheckbox) {\n col.headerCheckboxSelection = this.headerCheckbox;\n }\n return col;\n }\n}\n","import { AXTextBoxComponent } from '@acorex/components';\nimport { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';\nimport { IFilterAngularComp } from 'ag-grid-angular';\nimport {\n IAfterGuiAttachedParams,\n IDoesFilterPassParams,\n IFilterParams,\n RowNode,\n} from 'ag-grid-community';\nimport { AXGridDataColumn } from './column.component';\n\n@Component({\n selector: 'ax-text-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridTextColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AXGridTextColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n\n render() {\n const col = super.render();\n\n switch (this.filter()) {\n case 'textColumnFilter':\n col.filter = 'agTextColumnFilter';\n break;\n case 'columnFilter':\n col.filter = 'agSetColumnFilter';\n break;\n case 'dateColumnFilter':\n break;\n case 'numberColumnFilter':\n col.filter = 'agNumberColumnFilter';\n break;\n default:\n break;\n }\n return col;\n }\n}\n\n@Component({\n template: `\n <ax-data-grid-filter>\n <ax-text-box\n label=\"Filter\"\n allowClear=\"true\"\n (textChange)=\"onChange($event)\"\n >\n </ax-text-box>\n </ax-data-grid-filter>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class TextFilterRenderer implements IFilterAngularComp {\n public value?: string = null;\n\n private params: IFilterParams;\n\n private valueGetter: (rowNode: RowNode) => any;\n\n @ViewChild(AXTextBoxComponent, { static: true })\n private input: AXTextBoxComponent;\n\n agInit(params: any): void {\n this.params = params;\n this.valueGetter = params.valueGetter;\n }\n\n isFilterActive(): boolean {\n return this.value !== null && this.value !== undefined;\n }\n\n doesFilterPass(params: IDoesFilterPassParams | any): boolean {\n return this.value === this.valueGetter(params.node);\n }\n\n getModel(): any {\n return { value: this.value };\n }\n\n setModel(model: any): void {\n this.onChange(model ? model.value : null);\n }\n\n ngAfterViewInit(params: IAfterGuiAttachedParams): void {\n window.setTimeout(() => {\n this.input.focus();\n });\n }\n\n onChange(newValue): void {\n if (this.value !== newValue) {\n this.value = newValue;\n if (this.value === '') {\n this.value = null;\n }\n this.params.filterChangedCallback();\n }\n }\n}\n","import { AXGridDataColumn } from './column.component';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { AXConfig } from '@acorex/core';\n\n@Component({\n selector: 'ax-row-number-column',\n template: '',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXGridRowNumberColumn },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class AXGridRowNumberColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n\n @Input()\n condition: (params) => boolean;\n\n render() {\n const col = super.render();\n\n (col.headerName = this.caption\n ? this.caption\n : AXConfig.get('layout.rtl')\n ? 'ردیف'\n : 'Row'),\n (col.valueGetter = (params) => {\n if (!params.data) return null;\n if (params.data.rowNumber == null && params.node) {\n params.data.rowNumber = params.node.rowIndex + 1;\n }\n return params.data.rowNumber;\n });\n\n (col.pinned =\n this.pinned == null ? null : this.pinned === 'start' ? 'right' : 'left'),\n (col.filter = false);\n col.resizable = true;\n col.sortable = false;\n col.width = this.width;\n\n return col;\n }\n}\n","export abstract class AXDataGridStateService {\n abstract save(\n gridId: string,\n settings: Record<string, unknown>\n ): Promise<void>;\n abstract load(gridId: string): Promise<Record<string, unknown>>;\n}\n","import { Component, ContentChild, Input, TemplateRef } from '@angular/core';\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\n\n@Component({\n selector: 'ax-grid-detail-template',\n template: `<ng-content></ng-content>`,\n standalone: false,\n})\nexport class AXDataGridDetailTemplateComponent {\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\n renderer = AXDataGridDetailTemplateRenderer;\n\n @Input() height: number = 100;\n}\n\n@Component({\n template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`,\n standalone: false,\n})\nexport class AXDataGridDetailTemplateRenderer\n implements ICellRendererAngularComp\n{\n templateRef: TemplateRef<any>;\n data: any;\n customData: any;\n\n agInit(params: any): void {\n this.templateRef = params.templateRef;\n this.data = params.data;\n this.customData = params.customData;\n }\n\n refresh(): boolean {\n return false;\n }\n}\n","import { Component, ContentChild, TemplateRef } from '@angular/core';\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\n\n@Component({\n selector: 'ax-row-template',\n template: `<ng-content></ng-content>`,\n standalone: false,\n})\nexport class AXDataGridRowTemplateComponent {\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\n renderer: any;\n params: any;\n constructor() {\n this.renderer = AXDataGridRowTemplateRenderer;\n }\n ngOnInit(): void {\n this.params = {\n templateRef: this.templateRef,\n };\n }\n}\n\n@Component({\n template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`,\n standalone: false,\n})\nexport class AXDataGridRowTemplateRenderer implements ICellRendererAngularComp {\n templateRef: TemplateRef<any>;\n\n data: any;\n\n refresh(params: any): boolean {\n return false;\n }\n\n agInit(params: any): void {\n this.data = params.data.callRecords;\n this.templateRef = params.templateRef;\n }\n}\n","import {\n AXDataSourceComponent,\n AXDataSourceReadParams,\n} from '@acorex/components';\nimport {\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n output,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n CellClickedEvent,\n FilterChangedEvent,\n FirstDataRenderedEvent,\n GetMainMenuItemsParams,\n GridApi,\n GridOptions,\n GridSizeChangedEvent,\n RowClickedEvent,\n} from 'ag-grid-community';\nimport { AXGridDataColumn } from './columns/column.component';\n\nimport { ViewEncapsulation } from '@angular/core';\nimport { LicenseManager } from 'ag-grid-enterprise';\nimport {\n AXGridCellEvent,\n AXGridRowEvent,\n AXGridRowParams,\n AXGridRowSelectionEvent,\n} from './datagrid.events';\n\nimport {\n AXDataEvent,\n AXToolbarComponent,\n AXToolbarSearchComponent,\n AXValueEvent,\n} from '@acorex/components';\nimport { AXConfig, AXTranslator } from '@acorex/core';\nimport { debounceTime, Subject, Subscription } from 'rxjs';\nimport { AXDatePickerFilterComponent } from './columns/date-column.component';\nimport { AXDataGridStateService } from './datagrid.token';\nimport {\n AXDataGridDetailTemplateComponent,\n AXDataGridDetailTemplateRenderer,\n} from './templates/detail-template.component';\nimport { AXDataGridRowTemplateComponent } from './templates/row-template.component';\n\nLicenseManager.prototype.isDisplayWatermark = () => {\n return false;\n};\nLicenseManager.prototype.validateLicense = function () {\n //console.info('Cracked by Arash Oshnoudi!');\n};\n\nexport class AXDataGridColumnsChangeEvent extends AXValueEvent<\n AXGridDataColumn[]\n> {\n declare component: AXDataGridComponent;\n}\nexport class AXDataGridCellEvent extends AXDataEvent<AXGridCellEvent> {\n declare component: AXDataGridComponent;\n}\nexport class AXDaagridRowClickEvent extends AXDataEvent<AXGridRowEvent> {\n declare component: AXDataGridComponent;\n}\n\nexport class AXDataGridSelectionChangeEvent extends AXDataEvent<AXGridRowSelectionEvent> {\n declare component: AXDataGridComponent;\n}\n\nexport class AXDataGridRowSelectionChangeEvent extends AXDataEvent<any> {\n declare component: AXDataGridComponent;\n declare selected: boolean;\n}\n\n@Component({\n selector: 'ax-data-grid',\n templateUrl: './datagrid.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n})\nexport class AXDataGridComponent {\n private saveSatate$ = new Subject();\n\n private saveStateSubscription!: Subscription;\n\n private stateService = inject(AXDataGridStateService, { optional: true });\n\n private settings = null;\n\n async load() {\n if (this.stateService && this.id) {\n this.settings = await this.stateService.load(this.id);\n\n if (this.settings) {\n this.gridApi.setState(this.settings);\n }\n }\n }\n\n async save() {\n const gridState = this.gridApi.getState();\n\n await this.stateService.save(this.id, gridState);\n }\n\n private gridApi;\n private dataSourceSuccessCallback;\n localeText: any;\n\n private isInitialLoad = true;\n\n gridOptions: GridOptions;\n columnDefs: any[] = [];\n rowModelType = 'clientSide';\n fullWidthCellRendererFramework: any;\n fullWidthCellRendererParams: any;\n frameworkComponents: any = {};\n isFullWidthCell: Function;\n internalHeight = '100%';\n detailCellRenderer: any;\n detailCellRendererParams: any;\n detailRowHeight: number;\n masterDetail = false;\n treeData = false;\n enabelSelect = false;\n gridView = false;\n oldSelectionNodes: any[] = [];\n autoGroupColumnDef: any = {};\n currentPage = 1;\n\n @Input()\n id: string;\n\n @Input()\n paginationPageSizeSelector: number[] | boolean = [10, 20];\n\n @Input()\n paginationAutoPageSize = false;\n\n @Input()\n paginationPageSize = 20;\n\n cacheBlockSize = this.paginationPageSize;\n\n @Input()\n public remoteOperation = false;\n\n @Input()\n public rowMultiSelectWithClick = false;\n\n @Input()\n public suppressRowClickSelection = true;\n\n @Input()\n public suppressCellSelection = false;\n\n @Input()\n public sizeColumnsToFit = true;\n\n @Input()\n showCheckBox = true;\n\n @Input()\n floatingFilter = false;\n\n @Input()\n autoExpand = false;\n\n @Input()\n rowSelectableConditionField: string;\n\n @Input()\n hideDisabledCheckboxes: boolean;\n\n @Input()\n selectionMode: 'single' | 'multiple' = 'single';\n\n @Input()\n pagination: boolean = true;\n\n @Input()\n selectRow: any[] = [];\n\n @Input()\n rowGroupPanelShow: 'always' | 'never' = 'never';\n\n @Input()\n loadOnInit: boolean = true;\n\n @Input()\n enableRangeSelection = false;\n\n @Input()\n keyField: string = 'null';\n\n @Input()\n hasChildField: string = 'null';\n\n @Input()\n rowHeight = 28;\n\n @Input()\n groupHideOpenParents: boolean = false;\n\n @Input()\n maxConcurrentDatasourceRequests: number;\n\n @Input()\n blockLoadDebounceMillis: number;\n\n @Input()\n showRefreshButton = true;\n\n @Input()\n autoNavigatePage = false;\n\n @Input()\n isRowMasterField: string = null;\n\n onFilterChanged = output<any>();\n\n @Input()\n rowClass?: (\n params: AXGridRowParams\n ) => (string | string[]) | (string | string[]);\n\n @Input()\n rtl: boolean = AXConfig.get('layout.rtl');\n\n private _searchText: string;\n @Input()\n public get searchText(): string {\n return this._searchText;\n }\n public set searchText(v: string) {\n if (v !== this._searchText) {\n this._searchText = v;\n if (this.gridApi) {\n this.refresh();\n this.gridApi.setQuickFilter(this.searchText);\n }\n }\n }\n\n private _filter: any[];\n @Input()\n public get filter(): any[] {\n return this._filter;\n }\n public set filter(v: any[]) {\n if (v !== this._filter) {\n this._filter = v;\n this._filter.forEach((f) => {\n const fc = this.gridApi.getFilterInstance(f.field);\n if (fc) {\n const ff = fc.getFrameworkComponentInstance();\n ff.setModel(f);\n }\n });\n }\n }\n\n rowSelection = {\n mode: 'singleRow',\n\n groupSelects: 'self',\n enableSelectionWithoutKeys: false,\n\n enableClickSelection: false,\n\n checkboxes: false,\n\n headerCheckbox: false,\n\n copySelectedRows: false,\n\n hideDisabledCheckboxes: false,\n\n isRowSelectable: (rowData) => {\n return rowData.data[this.rowSelectableConditionField];\n },\n };\n\n @ContentChildren(AXGridDataColumn)\n private _inlineColumns: QueryList<AXGridDataColumn>;\n\n @Output()\n columnsChange: EventEmitter<AXDataGridColumnsChangeEvent> =\n new EventEmitter<AXDataGridColumnsChangeEvent>();\n\n private _columns: AXGridDataColumn[] = [];\n @Input()\n public get columns(): AXGridDataColumn[] {\n return this._inlineColumns\n ? [...this._columns, ...this._inlineColumns.toArray()]\n : this._columns;\n }\n\n public set columns(val: AXGridDataColumn[]) {\n if (val && val.length) {\n let old = this._columns;\n this._columns = val;\n this.columnsChange.emit({\n component: this,\n value: val,\n oldValue: old,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n\n defaultColDef: any = {\n filter: true,\n floatingFilter: true,\n };\n\n @ContentChild(AXToolbarSearchComponent, { static: true })\n searchInput: AXToolbarSearchComponent;\n\n @ContentChild(AXToolbarComponent, { static: true })\n toolbar: AXToolbarComponent;\n\n @ContentChild(AXDataGridRowTemplateComponent, { static: true })\n rowTemplate: AXDataGridRowTemplateComponent;\n\n @ContentChild(AXDataGridDetailTemplateComponent, { static: true })\n gridDetailTemplate: AXDataGridDetailTemplateComponent;\n\n @ContentChild(AXDataSourceComponent, { static: true })\n private _contentDataSource: AXDataSourceComponent;\n\n private _dataSource: AXDataSourceComponent;\n\n @Input()\n public get dataSource(): AXDataSourceComponent {\n return this._dataSource ? this._dataSource : this._contentDataSource;\n }\n\n public set dataSource(v: AXDataSourceComponent) {\n this._dataSource = v;\n }\n\n @Output()\n cellClick: EventEmitter<AXDataGridCellEvent> =\n new EventEmitter<AXDataGridCellEvent>();\n\n @Output()\n cellDbClick: EventEmitter<AXDataGridCellEvent> =\n new EventEmitter<AXDataGridCellEvent>();\n\n @Output()\n cellFocuse: EventEmitter<AXDataGridCellEvent> =\n new EventEmitter<AXDataGridCellEvent>();\n\n @Output()\n rowClick: EventEmitter<AXDaagridRowClickEvent> =\n new EventEmitter<AXDaagridRowClickEvent>();\n\n @Output()\n rowDbClick: EventEmitter<AXDaagridRowClickEvent> =\n new EventEmitter<AXDaagridRowClickEvent>();\n\n @Output()\n selectionChanged: EventEmitter<AXDataGridSelectionChangeEvent> =\n new EventEmitter<AXDataGridSelectionChangeEvent>();\n\n @Output()\n rowSelectionChange: EventEmitter<AXDataGridSelectionChangeEvent> =\n new EventEmitter<AXDataGridSelectionChangeEvent>();\n\n @Output()\n onRowSelectionChanged: EventEmitter<AXDataGridRowSelectionChangeEvent> =\n new EventEmitter<AXDataGridRowSelectionChangeEvent>();\n\n constructor(\n private ref: ElementRef<HTMLDivElement>,\n private cdr: ChangeDetectorRef\n ) {\n this.localeText = AXTranslator.get('dataGrid');\n }\n\n private calcHeight(): void {\n if (this.toolbar) {\n this.internalHeight = `calc(100% - ${40}px)`;\n } else {\n this.internalHeight = '100%';\n }\n }\n\n private get intenalGridDataSource() {\n const that = this;\n return {\n rowCount: null,\n getRows: (params) => {\n that.dataSourceSuccessCallback = params.success;\n\n const loadParams: AXDataSourceReadParams = {};\n\n loadParams.searchText = that.searchText;\n\n loadParams.skip = params.request.startRow;\n\n loadParams.take = params.request.endRow - params.request.startRow;\n\n loadParams.sort = params.request.sortModel.map((c) => {\n return {\n field: c.colId,\n dir: c.sort,\n };\n });\n\n loadParams.group = {\n fields: params.request.rowGroupCols.map((r) => r.field),\n keys: params.request.groupKeys,\n parentData: params.parentNode.data,\n };\n\n loadParams.filter = params.request.filterModel;\n\n that.dataSource.fetch(loadParams);\n },\n };\n }\n\n ngOnDestroy(): void {\n if (this.saveStateSubscription) {\n this.save();\n\n this.saveStateSubscription.unsubscribe();\n }\n this.gridApi.destroy();\n }\n\n isServerSideGroup = (e) => {\n return e[this.hasChildField];\n };\n\n getColumnDefs = () => {\n return this.gridApi.getColumnDefs();\n };\n\n getCurrentPageNumber = () => {\n return {\n current: this.gridApi.paginationGetCurrentPage() + 1,\n total: this.gridApi.paginationGetTotalPages(),\n };\n };\n\n paginationGoToPage(number) {\n this.gridApi.paginationGoToPage(number - 1);\n }\n\n getServerSideGroupKey = (e) => {\n return e[this.keyField];\n };\n internalGridReady(gridOptions) {\n this.gridApi = gridOptions.api;\n setTimeout(() => {\n this.load();\n this.isInitialLoad = false;\n }, 500);\n this.rowSelection.mode =\n this.selectionMode === 'single' ? 'singleRow' : 'multiRow';\n\n this.rowSelection.enableSelectionWithoutKeys = this.rowMultiSelectWithClick;\n\n this.rowSelection.enableClickSelection = this.suppressRowClickSelection;\n\n this.rowSelection.hideDisabledCheckboxes = this.hideDisabledCheckboxes;\n\n this.mapColumns();\n this.calcHeight();\n\n if (!this.loadOnInit) {\n this.loadOnInit = true;\n return;\n }\n\n if (this.remoteOperation) {\n this.gridApi.setGridOption(\n 'serverSideDatasource',\n this.intenalGridDataSource\n );\n }\n\n if (!this.remoteOperation) {\n this.refresh();\n }\n\n if (this.showRefreshButton) {\n this.makeRefreshBtn();\n }\n }\n ngAfterContentInit(): void {\n const that = this;\n if (this.rowTemplate) {\n this.fullWidthCellRendererFramework = this.rowTemplate.renderer;\n this.fullWidthCellRendererParams = this.rowTemplate.params;\n }\n\n this.frameworkComponents.agDateInput = AXDatePickerFilterComponent;\n\n if (this.gridDetailTemplate) {\n this.masterDetail = true;\n this.detailCellRenderer = AXDataGridDetailTemplateRenderer;\n\n this.detailCellRendererParams = {\n templateRef: this.gridDetailTemplate.templateRef,\n };\n\n this.detailRowHeight = +this.gridDetailTemplate.height;\n }\n\n this.isFullWidthCell = () => {\n return that.rowTemplate != null;\n };\n }\n\n ngOnInit(): void {\n if (this.selectionMode === 'single') {\n this.rowSelection.groupSelects = 'self';\n }\n if (this.keyField !== 'null' && this.hasChildField !== 'null') {\n this.rowGroupPanelShow = 'never';\n this.treeData = true;\n }\n if (this.remoteOperation) {\n this.rowModelType = 'serverSide';\n }\n //\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n\n if (this.stateService) {\n this.saveStateSubscription = this.saveSatate$\n .pipe(debounceTime(1000))\n .subscribe({\n next: () => {\n this.save();\n },\n });\n }\n }\n\n gridSelectRow() {\n if (this.gridApi) {\n if (\n this.selectRow &&\n this.selectRow.length > 0 &&\n this.gridApi !== undefined &&\n typeof this.selectRow[0] != 'object'\n ) {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select: boolean = false;\n this.selectRow.forEach((id) => {\n if (node.data[this.keyField] === id) {\n select = true;\n node.setSelected(select);\n }\n });\n }\n });\n } else {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select: boolean = false;\n if (this.selectRow.length) {\n this.selectRow.forEach((item) => {\n if (item.rowIndex != undefined && item.rowLevel != undefined) {\n if (node.data[this.keyField] === item.data[this.keyField]) {\n select = true;\n }\n } else {\n if (\n this.keyField !== 'null' &&\n node.data[this.keyField] === item[this.keyField]\n ) {\n select = true;\n }\n }\n });\n }\n if (this.rowSelectableConditionField) {\n node.setRowSelectable(\n node.data[this.rowSelectableConditionField]\n );\n }\n node.setSelected(select);\n }\n });\n }\n }\n }\n\n rebuildGrid() {\n this.mapColumns();\n setTimeout(() => {\n if (this.sizeColumnsToFit) {\n this.gridApi.sizeColumnsToFit();\n }\n }, 10);\n }\n\n getMainMenuItems = (params: GetMainMenuItemsParams) => {\n const colDef = params.column.getColDef();\n const menuItems: string[] = [];\n\n const hasFilter =\n Array.isArray(colDef.filterParams?.values) &&\n colDef.filterParams.values.length > 0;\n const hasSort = !!colDef.sortable;\n\n if (hasFilter) {\n menuItems.push('columnFilter');\n }\n\n if (hasSort) {\n menuItems.push('sortAscending', 'sortDescending', 'sortUnSort');\n }\n\n menuItems.push('pinSubMenu', 'columnChooser');\n\n return menuItems;\n };\n\n ngAfterViewInit(): void {\n if (this.selectionMode === 'multiple') {\n this.rowSelection.enableClickSelection = true;\n }\n if (this.treeData === true) {\n this.columnDefs = this.columns.map((c) => c.render());\n\n const groupColumn = this.columnDefs.find(\n (c) => c.rowGroupIndex == '0' && c.field !== ''\n );\n\n this.autoGroupColumnDef = {\n headerName: groupColumn.headerName,\n width: groupColumn.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: groupColumn.field,\n };\n\n this.columnDefs.forEach((elm) => {\n if (elm.rowGroupIndex > -1) {\n elm.hide = true;\n }\n });\n }\n this.gridView = true;\n\n this.enabelSelect = true;\n this.dataSource.onDataReceived.subscribe((_data) => {\n const result = _data.data.result;\n this.hideLoading();\n let items: any[];\n let totalCount: number;\n if (Array.isArray(result)) {\n items = result;\n totalCount = result.length;\n } else {\n items = result.items;\n totalCount = result.totalCount;\n }\n if (this.dataSourceSuccessCallback) {\n if (!this.loadOnInit) {\n this.dataSourceSuccessCallback({\n rowData: [],\n rowCount: 0,\n });\n } else {\n this.dataSourceSuccessCallback({\n rowData: items,\n rowCount: totalCount,\n });\n }\n } else {\n if (!this.loadOnInit && this.gridApi !== undefined) {\n this.gridApi.setGridOption('rowData', []);\n } else if (this.gridApi !== undefined) {\n this.gridApi.setGridOption('rowData', items);\n }\n }\n\n if (this.autoNavigatePage) {\n this.paginationGoToPage(this.currentPage);\n }\n this.gridSelectRow();\n });\n\n this.showLoading(true);\n this.dataSource.onFetchStart.subscribe(() => {\n this.showLoading(false);\n });\n\n if (this.searchInput) {\n this.searchInput.onValueChanged.subscribe((c) => {\n this.searchText = c.value;\n });\n }\n this.cdr.detectChanges();\n }\n\n mapColumns() {\n this.columnDefs = this.columns.map((c) => c.render());\n\n const headerCheckboxSelection = this.columnDefs.find(\n (x) => x.headerCheckboxSelection\n );\n\n if (headerCheckboxSelection) {\n this.rowSelection.headerCheckbox =\n headerCheckboxSelection.headerCheckboxSelection;\n }\n\n const isSelection = this.columnDefs.find((x) => x.checkboxSelection);\n\n if (isSelection) {\n this.rowSelection.checkboxes = isSelection.checkboxSelection;\n\n if (isSelection.rowSelectableConditionField) {\n this.rowSelectableConditionField =\n isSelection.rowSelectableConditionField;\n }\n\n this.columnDefs = this.columnDefs.filter((x) => !x.checkboxSelection);\n }\n\n if (this.gridDetailTemplate) {\n if (\n this.columnDefs[0].checkboxSelection === true &&\n this.columnDefs[0].field === ''\n ) {\n this.columnDefs[1].cellRenderer = 'agGroupCellRenderer';\n } else {\n this.columnDefs[0].cellRenderer = 'agGroupCellRenderer';\n }\n }\n\n if (this.hasChildField === 'null') {\n const groupColumn = this.columnDefs.find(\n (c) => c.rowGroupIndex === undefined && c.field !== ''\n );\n if (groupColumn && this.groupHideOpenParents == false) {\n this.autoGroupColumnDef = {\n headerName: groupColumn.headerName,\n width: groupColumn.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: groupColumn.field,\n };\n }\n }\n\n this.columnDefs.forEach((elm) => {\n if (elm.rowGroupIndex > -1) {\n elm.hide = true;\n }\n });\n }\n\n displayedColumnsChanged(e) {\n if (this.hasChildField === 'null') {\n const ee = e.columnApi.getAllDisplayedColumnGroups();\n const eee = ee.find(\n (c) => c.colId !== 'ag-Grid-AutoColumn' && c.colId !== '0'\n );\n if (eee && eee.colId) {\n this.autoGroupColumnDef = {\n headerName: eee.colDef.headerName,\n width: eee.colDef.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: eee.colDef.field,\n };\n }\n }\n }\n\n refresh(route: any[] = []) {\n if (this.remoteOperation && this.gridApi !== undefined) {\n // this.gridApi.purgeServerSideCache(route);\n this.gridApi.setGridOption(\n 'serverSideDatasource',\n this.intenalGridDataSource\n );\n } else {\n this.dataSource.fetch(null);\n }\n }\n\n internalGridCellClicked(e: CellClickedEvent) {\n this.cellClick.emit({\n data: this.mapCellEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n\n internalGridCellDoubleClicked(e: CellClickedEvent) {\n this.cellDbClick.emit({\n data: this.mapCellEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n\n internalGridCellFocused(e: CellClickedEvent) {\n this.cellFocuse.emit({\n data: this.mapCellEvent(e),\n htmlElement: this.ref.nativeElement,\n component: this,\n });\n }\n\n internalGridRowClicked(e: RowClickedEvent) {\n if (!e.node.group) {\n this.rowClick.emit({\n data: this.mapRowEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n\n internalGridRowDoubleClicked(e: CellClickedEvent) {\n if (!e.node.group) {\n this.rowDbClick.emit({\n data: this.mapRowEvent(e),\n htmlElement: this.ref.nativeElement,\n component: this,\n });\n }\n }\n\n differenceOf2Arrays(array1: any, array2: any) {\n const temp = [];\n for (const i in array1) {\n if (array2.indexOf(array1[i]) === -1) {\n temp.push(array1[i]);\n }\n }\n for (const i in array2) {\n if (array1.indexOf(array2[i]) === -1) {\n temp.push(array2[i]);\n }\n }\n return temp.sort((a, b) => a - b);\n }\n\n rowSelectionChanged(e) {\n if (e.node.isSelected()) {\n this.selectRow = this.selectRow.filter(\n (c) => c[this.keyField] != e.data[this.keyField]\n );\n this.selectRow.push(e.data);\n } else {\n this.selectRow = this.selectRow.filter(\n (c) => c[this.keyField] != e.data[this.keyField]\n );\n }\n this.rowSelectionChange.emit({\n component: this,\n data: e,\n htmlElement: this.ref.nativeElement,\n });\n }\n\n internalGridSelectionChanged(e: any) {\n const args: AXGridRowSelectionEvent = { items: [] };\n const oldNodes = this.oldSelectionNodes;\n const nodes = this.gridApi.getSelectedNodes();\n\n if (this.autoExpand) {\n const unselectedNodes = oldNodes.filter(\n (oldNode) => !nodes.some((newNode) => newNode === oldNode)\n );\n unselectedNodes.forEach((el) => {\n el.setExpanded(false);\n });\n }\n\n if (this.remoteOperation) {\n const isSelectAllServerSide: boolean =\n e.api.getServerSideSelectionState().selectAll;\n if (isSelectAllServerSide) {\n this.gridApi.forEachNode((node: any) => {\n if (node.isSelected()) {\n args.items.push({\n rowIndex: node.rowIndex,\n rowLevel: node.level,\n data: node.data,\n });\n }\n });\n } else {\n args.items = this.handleNodeSelected(nodes);\n }\n } else {\n args.items = this.handleNodeSelected(nodes);\n }\n\n this.selectionChanged.emit({\n data: args,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n let action = nodes.length > oldNodes.length ? true : false;\n const node = this.differenceOf2Arrays(nodes, oldNodes);\n this.onRowSelectionChanged.emit({\n component: this,\n selected: action,\n data: node,\n htmlElement: this.ref.nativeElement,\n });\n this.oldSelectionNodes = nodes;\n }\n\n private mapCellEvent(e): AXGridCellEvent {\n return {\n rowLevel: 0,\n column: e.column,\n data: e.data,\n rowIndex: e.rowIndex,\n value: e.value,\n };\n }\n\n private mapRowEvent(e): AXGridRowEvent {\n return {\n rowLevel: 0,\n data: e.data,\n rowIndex: e.rowIndex,\n };\n }\n\n public deselectAll() {\n this.gridApi.deselectAll();\n }\n\n public deselectByKeyField(keyField) {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select: boolean = false;\n if (node.data[this.keyField] === keyField) {\n node.setSelected(select);\n this.selectRow = this.selectRow.filter(\n (c) => c[this.keyField] != keyField\n );\n }\n }\n });\n }\n\n internalGetRowClass = (p: any) => {\n if (this.rowClass) {\n if (this.rowClass instanceof Function) {\n return this.rowClass({\n rowIndex: p.node.rowIndex,\n rowLevel: p.node.level,\n data: p.data,\n });\n } else {\n return this.rowClass;\n }\n }\n };\n\n showLoading(value: boolean): void {\n if (this.gridApi) {\n this.gridApi.setGridOption('loading', value);\n }\n }\n\n hideLoading(): void {\n if (this.gridApi) {\n this.gridApi.hideOverlay();\n }\n }\n\n internalGridSizeChanged(e: GridSizeChangedEvent) {\n if (e.clientWidth > 0 && e.clientHeight > 0) {\n this.performSizeColumnsToFit(e.api);\n }\n }\n\n internalGridFirstDataRendered(e: FirstDataRenderedEvent) {\n this.performSizeColumnsToFit(e.api);\n this.headerHeightSetter();\n }\n\n handleColumnResized(e) {\n this.headerHeightSetter();\n }\n\n private performSizeColumnsToFit(api: GridApi) {\n if (this.id && this.stateService && this.settings) {\n return;\n }\n if (this.sizeColumnsToFit) {\n api.sizeColumnsToFit();\n }\n }\n\n private headerHeightSetter() {\n const padding = 20;\n const height = this.headerHeightGetter() + padding;\n this.gridApi.setGridOption('headerHeight', height);\n }\n\n private headerHeightGetter() {\n const columnHeaderTexts = [\n ...(document.querySelectorAll('.ag-header-cell-text') as any),\n ];\n\n const clientHeights = columnHeaderTexts.map(\n (headerText) => headerText.clientHeight\n );\n const tallestHeaderTextHeight = Math.max(...clientHeights);\n\n return tallestHeaderTextHeight;\n }\n\n private makeRefreshBtn() {\n const pagingPanel =\n this.ref.nativeElement.querySelector('.ag-paging-panel');\n\n const refBtn = document.createElement('span');\n\n refBtn.classList.add('far');\n refBtn.classList.add('fa-sync');\n\n refBtn.style.cursor = 'pointer';\n\n refBtn.title = AXTranslator.get('common.refresh');\n\n refBtn.addEventListener('click', () => {\n this.currentPage = this.getCurrentPageNumber().current;\n this.refresh();\n });\n\n pagingPanel.appendChild(refBtn);\n }\n\n private handleNodeSelected(nodes) {\n return nodes.map((i) => {\n if (this.autoExpand) {\n i.setExpanded(true);\n }\n return {\n rowLevel: i.level,\n rowIndex: i.rowIndex,\n data: i.data,\n };\n });\n }\n\n protected async handleFilterChanged(event: FilterChangedEvent) {\n const colId = event.columns[0].getColId();\n const filterInstance = await this.gridApi.getColumnFilterInstance(colId);\n if (filterInstance) {\n const model = filterInstance.getModel();\n const values = filterInstance.getFilterValues();\n const appliedValues = filterInstance.getModel()?.values || [];\n\n if (appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: appliedValues },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n } else if (!model && !appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: values },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n } else if (model && !appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: [] },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n }\n\n onPaginationChanged(e) {\n if (this.autoNavigatePage && this.getCurrentPageNumber().current > 1) {\n this.currentPage = this.getCurrentPageNumber().current;\n }\n }\n\n isRowMaster = (data: any) => {\n if (this.isRowMasterField) {\n return data[this.isRowMasterField];\n } else {\n return true;\n }\n };\n\n emitState() {\n if (this.isInitialLoad) {\n return;\n }\n this.saveSatate$.next(null);\n }\n}\n","<div class=\"ax-grid-toolbar\" *ngIf=\"toolbar\">\n <ng-content select=\"ax-toolbar\"></ng-content>\n</div>\n<!-- [enableSorting]=\"true\" [enableColResize]=\"true\" [enableFilter]=\"allowFiltering\" -->\n\n@if (gridView) {\n\n<ag-grid-angular\n class=\"ag-theme-balham\"\n [getRowClass]=\"internalGetRowClass\"\n [cellSelection]=\"enableRangeSelection\"\n [serverSideStoreType]=\"'partial'\"\n [style.height]=\"internalHeight\"\n [columnDefs]=\"columnDefs\"\n [enableRtl]=\"rtl\"\n [pagination]=\"pagination\"\n [rowGroupPanelShow]=\"rowGroupPanelShow\"\n [rowModelType]=\"rowModelType\"\n [detailRowHeight]=\"detailRowHeight\"\n [rowHeight]=\"rowHeight\"\n [paginationAutoPageSize]=\"paginationAutoPageSize\"\n [paginationPageSize]=\"paginationPageSize\"\n [paginationPageSizeSelector]=\"paginationPageSizeSelector\"\n [suppressMenuHide]=\"true\"\n [maxConcurrentDatasourceRequests]=\"maxConcurrentDatasourceRequests\"\n [blockLoadDebounceMillis]=\"blockLoadDebounceMillis\"\n [frameworkComponents]=\"frameworkComponents\"\n [isFullWidthCell]=\"isFullWidthCell\"\n [rowSelection]=\"rowSelection\"\n [fullWidthCellRendererFramework]=\"fullWidthCellRendererFramework\"\n [cacheBlockSize]=\"cacheBlockSize\"\n [fullWidthCellRendererParams]=\"fullWidthCellRendererParams\"\n (columnResized)=\"handleColumnResized($event)\"\n (cellClicked)=\"internalGridCellClicked($event)\"\n (cellDoubleClicked)=\"internalGridCellDoubleClicked($event)\"\n (cellFocused)=\"internalGridCellFocused($event)\"\n (rowClicked)=\"internalGridRowClicked($event)\"\n (selectionChanged)=\"internalGridSelectionChanged($event)\"\n (rowSelected)=\"rowSelectionChanged($event)\"\n (rowDoubleClicked)=\"internalGridRowDoubleClicked($event)\"\n (gridReady)=\"internalGridReady($event)\"\n [suppressCellSelection]=\"suppressCellSelection\"\n [autoGroupColumnDef]=\"autoGroupColumnDef\"\n [suppressAggFuncInHeader]=\"true\"\n [treeData]=\"treeData\"\n [animateRows]=\"true\"\n [isServerSideGroup]=\"isServerSideGroup\"\n [getServerSideGroupKey]=\"getServerSideGroupKey\"\n [masterDetail]=\"masterDetail\"\n [isRowMaster]=\"isRowMaster\"\n [detailCellRendererParams]=\"detailCellRendererParams\"\n [detailCellRenderer]=\"detailCellRenderer\"\n (gridSizeChanged)=\"internalGridSizeChanged($event)\"\n (firstDataRendered)=\"internalGridFirstDataRendered($event)\"\n [localeText]=\"localeText\"\n [groupHideOpenParents]=\"groupHideOpenParents\"\n [getMainMenuItems]=\"getMainMenuItems\"\n [allowContextMenuWithControlKey]=\"false\"\n (paginationChanged)=\"onPaginationChanged($event)\"\n (columnResized)=\"emitState()\"\n (columnMoved)=\"emitState()\"\n (columnPinned)=\"emitState()\"\n (columnVisible)=\"emitState()\"\n (sortChanged)=\"emitState()\"\n (filterChanged)=\"handleFilterChanged($event)\"\n>\n</ag-grid-angular>\n}\n\n<!-- (displayedColumnsChanged)=\"displayedColumnsChanged($event)\" -->\n","import {\n AXButtonModule,\n AXCheckBoxModule,\n AXDataSourceModule,\n AXDatePickerModule,\n AXSelectBoxModule,\n AXTextBoxModule,\n} from '@acorex/components';\nimport { AXCoreModule } from '@acorex/core';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AgGridModule } from 'ag-grid-angular';\nimport 'ag-grid-enterprise';\nimport {\n AXGridCheckColumn,\n BooleanFilterRenderer,\n BooleanRenderer,\n} from './columns/check-column.component';\nimport { AXColumnGroupComponent } from './columns/column-groups.component';\nimport {\n AXGridCommandColumn,\n CommandRenderer,\n} from './columns/command-column.component';\nimport {\n AXDatePickerFilterComponent,\n AXGridDateColumn,\n} from './columns/date-column.component';\nimport { AXGridRowNumberColumn } from './columns/row-number-column.component';\nimport { AXGridSelectionColumn } from './columns/selection-column.component';\nimport {\n AXGridTextColumn,\n TextFilterRenderer,\n} from './columns/text-column.component';\nimport { AXDataGridComponent } from './datagrid.component';\nimport { AXDataGridFilterComponent } from './filters/filter.component';\nimport {\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n} from './templates/cell-template.component';\nimport {\n AXDataGridDetailTemplateComponent,\n AXDataGridDetailTemplateRenderer,\n} from './templates/detail-template.component';\nimport {\n AXDataGridRowTemplateComponent,\n AXDataGridRowTemplateRenderer,\n} from './templates/row-template.component';\n\n@NgModule({\n declarations: [\n AXDataGridComponent,\n AXGridTextColumn,\n AXGridCheckColumn,\n AXGridSelectionColumn,\n AXGridDateColumn,\n AXGridRowNumberColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n TextFilterRenderer,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXDatePickerFilterComponent,\n CommandRenderer,\n AXColumnGroupComponent,\n ],\n imports: [\n CommonModule,\n AXCoreModule,\n FormsModule,\n //AgGridModule,\n AXTextBoxModule,\n AXCheckBoxModule,\n AXSelectBoxModule,\n AXDataSourceModule,\n AXButtonModule,\n AXDatePickerModule,\n AgGridModule,\n ],\n exports: [\n AXColumnGroupComponent,\n AXDataGridComponent,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXGridTextColumn,\n AXGridRowNumberColumn,\n AXGridCheckColumn,\n AXGridDateColumn,\n AXGridSelectionColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n CommandRenderer,\n ],\n providers: [],\n})\nexport class AXDataGridModule {}\n","import {\n AXBasePopupPageComponent,\n AXDataSourceComponent,\n AXMenuItemClickEvent,\n AXToolbarSearchComponent,\n} from '@acorex/components';\nimport { AXButtonItem, AXConfig, AXTranslator } from '@acorex/core';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewChild,\n} from '@angular/core';\nimport { AXGridDataColumn } from '../../data-grid/columns/column.component';\nimport { AXDataGridComponent } from '../../data-grid/datagrid.component';\n\n@Component({\n templateUrl: './data-lov-popup.component.html',\n standalone: false,\n})\nexport class AXDataLovPopupComponent extends AXBasePopupPageComponent {\n @ViewChild('grid', { static: true })\n grid: AXDataGridComponent;\n\n @ViewChild('searchBox')\n searchBox: AXToolbarSearchComponent;\n\n columns: AXGridDataColumn[] = [];\n\n selectedItems: any[] = [];\n\n keyField: string = '';\n allowNull: boolean = true;\n\n hasChildField: string;\n rtl: boolean = AXConfig.get('layout.rtl');\n\n selectedRows: any[] = [];\n pagination: boolean = true;\n\n paginationAutoPageSize: boolean;\n\n paginationPageSize: number = 20;\n\n maxConcurrentDatasourceRequests: number;\n\n blockLoadDebounceMillis: number;\n\n paginationPageSizeSelector: number[] | boolean = [10, 20];\n\n suppressRowClickSelection: boolean;\n\n remoteOperation: boolean;\n\n headerCheckbox: boolean;\n\n constructor(private cdr: ChangeDetectorRef, private ref: ElementRef) {\n super();\n }\n\n dataSource: AXDataSourceComponent;\n\n selectionMode: string;\n\n ngOnInit(): void {\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n }\n\n onDoneClick() {\n if (this.selectedItems) {\n this.close(this.selectedItems);\n } else {\n this.close();\n }\n }\n\n rowDoubleClicked(e) {\n if (this.selectionMode == 'single') {\n this.selectedItems = [];\n }\n\n this.selectedItems = this.selectedItems.filter(\n (c) => c[this.keyField] != e.data.data[this.keyField]\n );\n this.selectedItems.push(e.data.data);\n\n this.onDoneClick();\n }\n\n onCancelClick() {\n this.close();\n }\n\n rowSelectionChange(e) {\n if (e.data.node.isSelected()) {\n this.selectedItems = this.selectedItems.filter(\n (c) => c[this.keyField] != e.data.node.data[this.keyField]\n );\n this.selectedItems.push(e.data.node.data);\n } else {\n if (\n this.allowNull == true ||\n (this.allowNull == false && this.selectedItems.length > 1)\n ) {\n this.selectedItems = this.selectedItems.filter(\n (c) => c[this.keyField] != e.data.node.data[this.keyField]\n );\n }\n }\n }\n\n ngAfterViewInit() {\n this.selectedItems.forEach((ele) => {\n this.selectedRows.push(ele);\n });\n this.searchBox.focus();\n if (this.dataSource.onDataReceived) {\n this.dataSource.onDataReceived.subscribe((arg) => {\n this.cdr.markForCheck();\n this.cdr.detectChanges();\n });\n }\n }\n\n // onValueSearchChanged(e) {\n\n // const params: AXDataSourceReadParams = {}\n // params.searchText = e.value;\n // // params.take = 100;\n // // params.skip = 0\n // this.dataSource.fetch(params);\n // }\n\n getFooterButtons(): AXButtonItem[] {\n return [\n {\n text: AXTranslator.get('common.confirm'),\n name: 'confirm',\n style: 'ax primary',\n icon: 'far fa-check-circle',\n },\n {\n text: AXTranslator.get('common.cancel'),\n name: 'cancel',\n style: 'ax light',\n icon: 'far fa-times',\n },\n ];\n }\n\n onFooterButtonClick(e: AXMenuItemClickEvent) {\n if (e.name === 'confirm') {\n this.onDoneClick();\n }\n if (e.name === 'cancel') {\n this.onCancelClick();\n }\n }\n}\n","<div style=\"height: 70vh; padding: 0.5em\">\n <div style=\"height: calc(98%)\">\n <ax-data-grid\n [remoteOperation]=\"remoteOperation\"\n [showRefreshButton]=\"false\"\n [paginationPageSizeSelector]=\"paginationPageSizeSelector\"\n [pagination]=\"pagination\"\n [suppressRowClickSelection]=\"suppressRowClickSelection\"\n [paginationAutoPageSize]=\"paginationAutoPageSize\"\n [paginationPageSize]=\"paginationPageSize\"\n [rtl]=\"rtl\"\n [maxConcurrentDatasourceRequests]=\"maxConcurrentDatasourceRequests\"\n [blockLoadDebounceMillis]=\"blockLoadDebounceMillis\"\n [keyField]=\"keyField\"\n [hasChildField]=\"hasChildField\"\n [selectRow]=\"selectedItems\"\n #grid\n [columns]=\"columns\"\n [selectionMode]=\"selectionMode\"\n (rowDbClick)=\"rowDoubleClicked($event)\"\n (rowSelectionChange)=\"rowSelectionChange($event)\"\n [dataSource]=\"dataSource\"\n >\n <ax-toolbar>\n <ax-toolbar-search #searchBox style=\"width: 100%\"></ax-toolbar-search>\n </ax-toolbar>\n <ax-selection-column\n [headerCheckbox]=\"headerCheckbox\"\n *ngIf=\"selectionMode == 'single' ? false : true\"\n ></ax-selection-column>\n <!-- <ax-data-source [provideData]=\"dataSource.provideData\">\n </ax-data-source> -->\n </ax-data-grid>\n </div>\n</div>\n","import {\n AXBaseInputComponent,\n AXBaseSizableComponent,\n AXDataEvent,\n AXDataSourceComponent,\n AXElementSize,\n AXPopupService,\n AXSelectBoxComponent,\n AXValidatableComponent,\n AXValidation,\n} from '@acorex/components';\nimport { AXConfig } from '@acorex/core';\nimport {\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXGridDataColumn } from '../data-grid/columns/column.component';\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\n\n@Component({\n selector: 'ax-lov',\n templateUrl: './data-lov.component.html',\n encapsulation: ViewEncapsulation.None,\n host: { style: 'width: 100%' },\n providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }],\n standalone: false,\n})\nexport class AXLOVComponent\n extends AXValidatableComponent\n implements AXBaseSizableComponent, AXBaseInputComponent\n{\n @ContentChild(AXValidation, { static: true })\n private _contentValidation: AXValidation;\n private _validation: AXValidation;\n\n @Input()\n public get validation(): AXValidation {\n return this._validation ? this._validation : this._contentValidation;\n }\n public set validation(v: AXValidation) {\n this._validation = v;\n }\n\n componentName = 'lov';\n\n constructor(private popup: AXPopupService, private ref: ElementRef) {\n super();\n }\n\n @ViewChild('selectBox', { static: true })\n selectBox: AXSelectBoxComponent;\n\n @ContentChild(AXDataSourceComponent, { static: true })\n dataSource: AXDataSourceComponent;\n\n @ContentChildren(AXGridDataColumn)\n private columns: QueryList<AXGridDataColumn>;\n\n @ContentChild('itemTemplate', { static: true })\n rowTemplate: TemplateRef<any>;\n\n @Input()\n textField: string = '';\n\n @Input()\n allowSearch: boolean = true;\n\n @Input()\n valueField: string = '';\n\n @Input()\n hasChildField: string = 'null';\n\n @Input()\n allowNull: boolean = true;\n\n @Input()\n popupSize: 'sm' | 'md' | 'lg' | 'full' = 'md';\n\n @Input()\n pagination: boolean = true;\n @Input()\n selectedItems: any[] = [];\n\n @Input()\n paginationAutoPageSize = false;\n\n @Input()\n paginationPageSize: number = 20;\n\n // @Input()\n // selectedValues: any[] = [];\n\n @Input()\n maxConcurrentDatasourceRequests: number;\n\n @Input()\n blockLoadDebounceMillis: number;\n\n @Input()\n readonly: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n @Input()\n chipsWidth: string = '';\n\n @Input()\n size: AXElementSize = 'md';\n\n @Input()\n caption: string;\n\n @Input()\n mode: 'single' | 'multiple' = 'single';\n\n @Input()\n placeholder: string;\n\n @Output()\n onSelectionChange: EventEmitter<AXDataEvent<any>> = new EventEmitter<\n AXDataEvent<any>\n >();\n\n @Input()\n rtl: boolean = AXConfig.get('layout.rtl');\n\n @Input() multiLine = false;\n\n @Input()\n paginationPageSizeSelector: number[] | boolean = [10, 20];\n\n @Input()\n remoteOperation = true;\n\n @Input()\n headerCheckbox = false;\n\n focus(): void {\n this.selectBox.focus();\n }\n\n refresh() {\n this.selectBox.refresh();\n }\n\n handleButtonClick() {\n this.open();\n }\n\n ngOnInit(): void {\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n // this.selectVal = this.selectedValues;\n this.onSelectionChange.subscribe((c) => {\n this.clearValidationStyle(this.ref.nativeElement);\n });\n }\n\n ngAfterContentInit(): void {\n this.initValidation(this.ref, 'selectedItems', this.validation);\n }\n\n handleSelectChange(e) {\n this.selectedItems = e.selectedItems;\n this.onSelectionChange.emit({\n data: this.selectedItems,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n\n public open(): Promise<any> {\n return new Promise((resolve) => {\n this.selectBox.dropdown.close();\n this.popup\n .open(AXDataLovPopupComponent, {\n size: this.popupSize,\n // closable: false,\n data: {\n remoteOperation: this.remoteOperation,\n suppressRowClickSelection: this.mode === 'multiple' ? false : true,\n dataSource: this.dataSource,\n selectionMode: this.mode,\n columns: this.columns.toArray(),\n selectedItems: this.selectedItems,\n keyField: this.valueField,\n allowNull: this.allowNull,\n hasChildField: this.hasChildField,\n rtl: this.rtl,\n pagination: this.pagination,\n paginationAutoPageSize: this.paginationAutoPageSize,\n paginationPageSize: this.paginationPageSize,\n maxConcurrentDatasourceRequests:\n this.maxConcurrentDatasourceRequests,\n blockLoadDebounceMillis: this.blockLoadDebounceMillis,\n paginationPageSizeSelector: this.paginationPageSizeSelector,\n headerCheckbox: this.headerCheckbox,\n },\n title: this.caption,\n // size: this.size,\n })\n .then((c) => {\n if (c.data) {\n // this.selectedValues = [];\n this.selectedItems = [];\n c.data.forEach((elm) => {\n this.selectedItems.push(elm);\n });\n // this.selectedItems = c.data;\n // this.selectBox.refresh();\n this.onSelectionChange.emit({\n data: this.selectedItems,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n if (resolve) {\n resolve(c.data);\n }\n } else {\n if (resolve) {\n resolve(this.selectedItems);\n }\n }\n\n this.selectBox.refresh();\n });\n });\n }\n}\n","<ax-select-box\n [rowInputTemplate]=\"rowTemplate\"\n [multiLine]=\"multiLine\"\n [rtl]=\"rtl\"\n [allowSearch]=\"allowSearch\"\n #selectBox\n [showDropDownButton]=\"false\"\n [allowNull]=\"allowNull\"\n [remoteOperation]=\"remoteOperation\"\n [placeholder]=\"placeholder\"\n [size]=\"size\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [disabled]=\"disabled\"\n [mode]=\"mode\"\n [(selectedItems)]=\"selectedItems\"\n (selectionChanged)=\"handleSelectChange($event)\"\n [dataSource]=\"dataSource\"\n>\n <ng-container start>\n <ng-content select=\"[start]\"> </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button\n icon=\"far fa-bars icon\"\n [disabled]=\"disabled\"\n type=\"light blank\"\n (click)=\"handleButtonClick()\"\n end\n [tabIndex]=\"-1\"\n >\n </ax-button>\n <ng-content select=\"[end]\"> </ng-content>\n </ng-container>\n</ax-select-box>\n\n<!-- <ax-select-box2 [rtl]=\"rtl\" [allowSearch]=\"allowSearch\" #selectBox [showDropDownButton]=\"false\" [allowNull]=\"allowNull\"\n [remoteOperation]=\"true\" [placeholder]=\"placeholder\" [size]=\"size\" [textField]=\"textField\" [valueField]=\"valueField\"\n [disabled]=\"disabled\" [selectionMode]=\"mode\" (onValueChanged)=\"handleSelectChange($event)\" [dataSource]=\"dataSource\"\n [(value)]=\"selectedItems\" selectionDataMode=\"item\">\n <ng-container start>\n <ng-content select=\"[start]\">\n </ng-content>\n </ng-container>\n <ng-container end>\n <ax-button icon=\"far fa-bars icon\" [disabled]=\"disabled\" type=\"primary blank\" (click)=\"handleButtonClick()\" end\n [tabIndex]=\"-1\">\n </ax-button>\n <ng-content select=\"[end]\">\n </ng-content>\n </ng-container>\n</ax-select-box2> -->\n\n<!-- <div class=\"ax-lov-box\" [style.display]=\"mode=='hidden' ? 'none':'unset'\">\n <div class=\"ax-field-set\">\n <div class=\"ax-field-set-wrapper\" [ngClass]=\"{ 'no-label': !label }\">\n <fieldset [ngClass]=\"{ 'input-focused': isFocused, 'input-error': errorText }\">\n <legend *ngIf=\"label\">\n {{ label }}\n </legend>\n </fieldset>\n <input type=\"text\" [(ngModel)]=\"text\" [placeholder]=\"placeholder\" (keyup)=\"handleKeyEvent($event)\"\n (blur)=\"handleBlurEvent($event)\" (focus)=\"handleFocusEvent($event)\" class=\"ax-text-box\" disabled />\n <div class=\"ax-field-set-button\">\n <button *ngIf=\"text && allowClear\" type=\"button\" class=\"btn btn-light\" (click)=\"clearText()\">\n <i class=\"far fa-times\"></i>\n </button>\n <button type=\"button\" class=\" btn btn-primary\" (click)=\"handleButtonClick($event)\">\n <i class=\"far fa-check-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n <div class=\"validation-text\" *ngIf=\"errorText\">\n {{ errorText }}\n </div>\n\n</div> -->\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXLOVComponent } from './data-lov.component';\nimport { FormsModule } from '@angular/forms';\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\nimport { AXDataGridModule } from '../data-grid/datagrid.module';\nimport { AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSearchBoxModule, AXSelectBoxModule } from '@acorex/components';\n\n\n@NgModule({\n declarations: [AXLOVComponent, AXDataLovPopupComponent],\n imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule],\n exports: [AXLOVComponent, AXDataLovPopupComponent],\n providers: []\n})\nexport class AXLOVModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.AXDataGridFilterComponent","i2.AXDataGridComponent","i3.AXGridSelectionColumn","i4"],"mappings":";;;;;;;;;;;;;MAWa,+BAA+B,CAAA;AACK,IAAA,WAAW;AACxD,IAAA,QAAQ;AACR,IAAA,MAAM;AACN,IAAA,WAAA,GAAA;AACI,QAAA,IAAI,CAAC,QAAQ,GAAG,8BAA8B;IAClD;IACA,QAAQ,GAAA;QACJ,IAAI,CAAC,MAAM,GAAG;YACV,WAAW,EAAE,IAAI,CAAC;SACrB;IACL;uGAXS,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA/B,+BAA+B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAC1B,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANf,CAAA;AACV,GAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAIS,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAP3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,CAAA;AACV,GAAA,CAAA;AACA,oBAAA,UAAU,EAAE;AACf,iBAAA;wDAGgD,WAAW,EAAA,CAAA;sBAAvD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;MAqBlC,8BAA8B,CAAA;AACvC,IAAA,OAAO;AACP,IAAA,WAAW;AAEX,IAAA,WAAA,GAAA,EAAgB;AAEhB,IAAA,MAAM,CAAC,MAA2B,EAAA;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAI,MAAc,CAAC,WAAW;IAClD;AAEA,IAAA,OAAO,CAAC,MAA2B,EAAA;AAC/B,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI;AAC1B,QAAA,OAAO,IAAI;IACf;uGAdS,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA9B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAP7B;;;AAGT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAIQ,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAR1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE;;;AAGT,IAAA,CAAA;AACD,oBAAA,UAAU,EAAE;AACf,iBAAA;;;MCxBqB,gBAAgB,CAAA;AAEpC,IAAA,YAAY;IAGZ,KAAK,GAAW,GAAG;AAGnB,IAAA,QAAQ;AAGR,IAAA,QAAQ;IAGR,MAAM,GAA2B,IAAI;IAGrC,YAAY,GAAY,IAAI;IAG5B,cAAc,GAAY,QAAQ,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,KAAK;AAG1E,IAAA,SAAS;IAKT,IAAI,GAA0B,IAAI;IAGlC,KAAK,GAAW,EAAE;IAGlB,OAAO,GAAW,EAAE;AAGpB,IAAA,kBAAkB;IAGlB,QAAQ,GAAY,KAAK;IAGzB,UAAU,GAAW,CAAC,CAAC;IAGvB,SAAS,GAAW,CAAC,CAAC;IAGtB,cAAc,GAAY,KAAK;IAG/B,IAAI,GAAY,KAAK;IAGrB,cAAc,GAAY,QAAQ,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,KAAK;IAG1E,WAAW,GAAY,KAAK;IAG5B,SAAS,GAAY,IAAI;IAGzB,iBAAiB,GAAY,KAAK;IAGlC,eAAe,GAAY,KAAK;AAGhC,IAAA,eAAe;IAGf,QAAQ,GAAG,KAAK;IAGhB,SAAS,GAAW,EAAE;AAEtB,IAAA,MAAM,GAAG,KAAK,CAAe,kBAAkB,CAAC;IAEhD,YAAY,GAAG,KAAK,CAA0B;AAC5C,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,iBAAiB,EAAE,IAAI;AACvB,QAAA,0BAA0B,EAAE,IAAI;AAChC,QAAA,kBAAkB,EAAE,IAAI;AACzB,KAAA,CAAC;AAEF,IAAA,WAAA,GAAA,EAAe;IAEf,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAQ;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB;AAED,QAAA,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;AAE9B,QAAA,GAAG,CAAC,wBAAwB,GAAG,IAAI,CAAC,WAAW;QAE/C,GAAG,CAAC,QAAQ,GAAG,CAAC,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;AAEpE,QAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;AAExC,QAAA,GAAG,CAAC,0BAA0B,GAAG,IAAI;QAErC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;AACrC,YAAA,GAAG,CAAC,0BAA0B,GAAG,KAAK;QACxC;AAEA,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,GAAG,CAAC,QAAQ,GAAG,IAAI;AAEnB,YAAA,GAAG,CAAC,UAAU,GAAG,IAAI;AAErB,YAAA,GAAG,CAAC,cAAc,GAAG,IAAI;AAEzB,YAAA,GAAG,CAAC,gBAAgB,GAAG,IAAI;QAC7B;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AACxB,YAAA,GAAG,CAAC,MAAM,GAAG,KAAK;AAClB,YAAA,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC;AAC/D,YAAA,GAAG,CAAC,cAAc,GAAG,KAAK;QAC5B;aAAO;YACL,GAAG,CAAC,YAAY,GAAG;gBACjB,GAAG,IAAI,CAAC,YAAY,EAAE;aACvB;QACH;AAEA,QAAA,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,EAAE;AAClC,YAAA,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC;QAClE;AAEA,QAAA,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;AAChC,YAAA,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC;QAClE;AAEA,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO;QAC/B;AAEA,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;QAC9B;AAEA,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;QAC9B;AAEA,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM;;QAEzD;AAEA,QAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY;AAEhC,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,YAAA,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;QACtB;AAEA,QAAA,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE;AACxB,YAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU;AACnC,YAAA,GAAG,CAAC,QAAQ,GAAG,IAAI;AACnB,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;QAC5B;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE;AACvB,YAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS;AAClC,YAAA,GAAG,CAAC,QAAQ,GAAG,KAAK;QACtB;AAEA,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,YAAA,GAAG,CAAC,IAAI,GAAG,IAAI;QACjB;AAEA,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc;QAC1C;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,IAAI,GAAG,IAAI;AACjB,YAAA,IAAI,IAAI,CAAC,SAAS,YAAY,QAAQ,EAAE;AACtC,gBAAA,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,KAAI;oBACpB,OAAO,IAAI,CAAC,SAAS,CAAC;AACpB,wBAAA,MAAM,EAAE,IAAI;AACZ,wBAAA,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;AACzB,wBAAA,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;wBACtB,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;AACf,qBAAA,CAAC;AACJ,gBAAA,CAAC;YACH;iBAAO;AACL,gBAAA,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;YAChC;QACF;QAEA,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE;AACvC,YAAA,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QAChC;AAEA,QAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE;YAC7B,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC7C,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM;QACnD;AAEA,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe;QAC5C;AAEA,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,GAAG,CAAC,iBAAiB,GAAG,CAAC,MAAM,KAAI;AACjC,gBAAA,OAAO,IAAI;AACb,YAAA,CAAC;QACH;AAEA,QAAA,OAAO,GAAG;IACZ;uGAxNoB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,yiHACtB,+BAA+B,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FADzB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBADrC;wDAGC,YAAY,EAAA,CAAA;sBADX,YAAY;uBAAC,+BAA+B;gBAI7C,KAAK,EAAA,CAAA;sBADJ;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,MAAM,EAAA,CAAA;sBADL;gBAID,YAAY,EAAA,CAAA;sBADX;gBAID,cAAc,EAAA,CAAA;sBADb;gBAID,SAAS,EAAA,CAAA;sBADR;gBAMD,IAAI,EAAA,CAAA;sBADH;gBAID,KAAK,EAAA,CAAA;sBADJ;gBAID,OAAO,EAAA,CAAA;sBADN;gBAID,kBAAkB,EAAA,CAAA;sBADjB;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,cAAc,EAAA,CAAA;sBADb;gBAID,IAAI,EAAA,CAAA;sBADH;gBAID,cAAc,EAAA,CAAA;sBADb;gBAID,WAAW,EAAA,CAAA;sBADV;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,iBAAiB,EAAA,CAAA;sBADhB;gBAID,eAAe,EAAA,CAAA;sBADd;gBAID,eAAe,EAAA,CAAA;sBADd;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,SAAS,EAAA,CAAA;sBADR;;;MC7DU,yBAAyB,CAAA;uGAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAzB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAhBxB;;;;;;;;;;;;AAYX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAIU,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAlBrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYX,EAAA,CAAA;oBACC,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,UAAU,EAAE;AACf,iBAAA;;;ACGK,MAAO,iBAAkB,SAAQ,gBAAgB,CAAA;AACrD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;IAEA,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACrB,YAAA,GAAG,CAAC,YAAY,GAAG,eAAe;QACpC;AACA,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,GAAG,CAAC,eAAe,GAAG,qBAAqB;QAC7C;AACA,QAAA,OAAO,GAAG;IACZ;uGAdW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,SAAA,EAJjB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,iDADhE,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAKD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,iBAAmB,EAAE,CAAC;oBAC1E,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;MAuBY,eAAe,CAAA;AAC1B,IAAA,KAAK;AACL,IAAA,WAAA,GAAA,EAAe;AACf,IAAA,MAAM,CAAC,MAA2B,EAAA;AAChC,QAAA,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE;AACtB,YAAA,MAAM,CAAC,KAAK,GAAG,IAAI;QACrB;AAAO,aAAA,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE;AAC7B,YAAA,MAAM,CAAC,KAAK,GAAG,KAAK;QACtB;AACA,QAAA,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;IAC3B;AACA,IAAA,OAAO,CAAC,MAA2B,EAAA;AACjC,QAAA,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;AACzB,QAAA,OAAO,IAAI;IACb;uGAdW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,yEAJhB,CAAA,+DAAA,CAAiE,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,aAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAIhE,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA,+DAAA,CAAiE;oBAC3E,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;MA2BY,qBAAqB,CAAA;IACzB,KAAK,GAAa,IAAI;AACrB,IAAA,MAAM;AACN,IAAA,WAAW;AACkD,IAAA,KAAK;AAE1E,IAAA,UAAU,GAAG;AACX,QAAA,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;AAC3B,QAAA,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE;KAC7B;AAED,IAAA,MAAM,CAAC,MAAW,EAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AAEpB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;IACvC;IAEA,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;IACxD;AAEA,IAAA,cAAc,CAAC,MAAmC,EAAA;AAChD,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;IACrD;IAEA,QAAQ,GAAA;AACN,QAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;IAC9B;AAEA,IAAA,QAAQ,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI;IACzC;AAEA,IAAA,eAAe,CAAC,MAA+B,EAAA;AAC7C,QAAA,MAAM,CAAC,UAAU,CAAC,MAAK;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE;AAC1C,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,QAAQ,CAAC,QAAQ,EAAA;AACf,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;AAC3B,YAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;AACrB,YAAA,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE;QACrC;IACF;uGA5CW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAArB,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAIU,gBAAgB,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZhD;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,KAAA,EAAA,UAAA,EAAA,aAAA,EAAA,MAAA,EAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,eAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAIU,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBATjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE;;;;AAIT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;8BAKsE,KAAK,EAAA,CAAA;sBAAzE,SAAS;uBAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE;;;AC1DxD,MAAO,sBAAuB,SAAQ,gBAAgB,CAAA;AAE1D,IAAA,OAAO;IAEP,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAC1B,QAAA,GAAG,CAAC,QAAQ,GAAG,EAAE;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;YAC3B,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;AACjC,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,GAAG;IACZ;uGAXW,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,SAAA,EANpB;AACP,YAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACrE,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAKc,gBAAgB,oDARrB,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAO5B,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBATlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,SAAS,EAAE;AACP,wBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,wBAAwB,EAAE;AACrE,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE;AACf,iBAAA;8BAGC,OAAO,EAAA,CAAA;sBADN,eAAe;uBAAC,gBAAgB;;;ACM7B,MAAO,mBAAoB,SAAQ,gBAAgB,CAAA;IAEvD,KAAK,GAA4C,EAAE;AAGnD,IAAA,WAAW,GACT,IAAI,YAAY,EAAyB;IAE3C,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACrB,YAAA,GAAG,CAAC,YAAY,GAAG,eAAe;QACpC;QACA,GAAG,CAAC,kBAAkB,GAAG;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,YAAA,OAAO,EAAE,CAAC,CAAC,KAAI;AACb,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;oBACpB,OAAO,EAAE,CAAC,CAAC,IAAI;oBACf,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,SAAS,EAAE,CAAC,CAAC,SAAS;AACvB,iBAAA,CAAC;YACJ,CAAC;SACF;AACD,QAAA,GAAG,CAAC,QAAQ,GAAG,KAAK;AACpB,QAAA,GAAG,CAAC,MAAM,GAAG,KAAK;AAClB,QAAA,GAAG,CAAC,WAAW,GAAG,CAAC,MAAM,KAAI;YAC3B,OAAO,IAAI,CAAC,KAAK;AACnB,QAAA,CAAC;AACD,QAAA,OAAO,GAAG;IACZ;uGA/BW,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EALjB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,iDADlE,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAMH,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,mBAAqB,EAAE,CAAC;oBAC5E,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,UAAU,EAAE;AACf,iBAAA;8BAGC,KAAK,EAAA,CAAA;sBADJ;gBAID,WAAW,EAAA,CAAA;sBADV;;MAqDU,eAAe,CAAA;IAC1B,KAAK,GAA4C,EAAE;AACnD,IAAA,IAAI;AACI,IAAA,aAAa;AAErB,IAAA,WAAA,GAAA,EAAe;AAEf,IAAA,MAAM,CAAC,MAA2B,EAAA;AAChC,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACxB;AAEA,IAAA,OAAO,CAAC,MAA2B,EAAA;AACjC,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AACtB,QAAA,OAAO,IAAI;IACb;AAEQ,IAAA,SAAS,CAAC,MAAW,EAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;AACvB,QAAA,IAAI,CAAC,KAAK;AACR,YAAA,OAAO,MAAM,CAAC,KAAK,IAAI;AACrB,kBAAE,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;kBACrC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;sBAC1B,MAAM,CAAC;sBACP,EAAE;AACR,QAAA,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO;IACrC;IAEA,OAAO,CAAC,IAAgB,EAAE,CAAa,EAAA;QACrC,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACvC,IAAI,CAAC,aAAa,CAAC;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,gBAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;AACzB,gBAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;AAC5B,gBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;AACpB,gBAAA,SAAS,EAAE,CAAC;AACb,aAAA,CAAC;QACJ;IACF;uGArCW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EArBd;;;;;;;;;;;;;;;;AAgBX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAKU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAvB3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;AAgBX,EAAA,CAAA;oBACC,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE;AACf,iBAAA;;;AC9DK,MAAO,gBAAiB,SAAQ,gBAAgB,CAAA;AACpD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;AAGA,IAAA,MAAM;AAGN,IAAA,IAAI,GAAmB,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC;IAEpD,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;QAC1B,GAAG,CAAC,kBAAkB,GAAG;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;QAED,GAAG,CAAC,UAAU,GAAG,CAAC,MAAW,EAAE,MAAW,KAAI;YAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;YACxC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;;YAExC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE;AACpC,gBAAA,OAAO,CAAC;YACV;AACA,YAAA,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,OAAO,CAAC,CAAC;YACX;AACA,YAAA,IAAI,KAAK,KAAK,IAAI,EAAE;AAClB,gBAAA,OAAO,CAAC;YACV;AACA,YAAA,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE;AACpD,QAAA,CAAC;AAED,QAAA,GAAG,CAAC,cAAc,GAAG,CAAC,MAAM,KAAI;AAC9B,YAAA,MAAM,IAAI,GAAe,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC;YACpE,IAAI,IAAI,EAAE;gBACR,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACjC;iBAAO;AACL,gBAAA,OAAO,IAAI;YACb;AACF,QAAA,CAAC;AACD,QAAA,GAAG,CAAC,MAAM,GAAG,oBAAoB;QAEjC,GAAG,CAAC,SAAS,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE;AAExC,QAAA,GAAG,CAAC,uBAAuB,GAAG,2BAA2B;AAEzD,QAAA,OAAO,GAAG;IACZ;uGAhDW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAJd,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,iDAD/D,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAKH,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,gBAAkB,EAAE,CAAC;oBACzE,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE;AACf,iBAAA;wDAOC,MAAM,EAAA,CAAA;sBADL;gBAID,IAAI,EAAA,CAAA;sBADH;;MAwDU,2BAA2B,CAAA;AAEtC,IAAA,UAAU;AAC8B,IAAA,GAAG;IAC3C,iBAAiB,GAAY,KAAK;IAClC,IAAI,GAAW,QAAQ;AACvB,IAAA,IAAI;AACJ,IAAA,MAAM;AACN,IAAA,MAAM;AAEN,IAAA,MAAM,CAAC,MAAW,EAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;IACtB;AAEA,IAAA,eAAe,KAAI;AACnB,IAAA,WAAW,KAAI;AAEf,IAAA,aAAa,CAAC,aAAa,EAAA;QACzB,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,QAAQ,KAAI;AAC5C,YAAA,QAAQ,CAAC,uBAAuB,CAAC,OAAO,EAAE,aAAa,CAAC;AAC1D,QAAA,CAAC,CAAC;;;IAGJ;IAEA,OAAO,GAAA;QACL,OAAO,IAAI,CAAC,IAAI;IAClB;AAEA,IAAA,OAAO,CAAC,IAAU,EAAA;AAChB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI;;IAE1B;AAEA,IAAA,mBAAmB,CAAC,WAAmB,EAAA;;IAEvC;AACA,IAAA,cAAc,CAAC,CAAC,EAAA;AACd,QAAA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7B;uGAxCW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAC3B,qBAAqB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,KAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAEN,UAAU,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAdxB,CAAA;;;;;;AAMM,mBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,KAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,gBAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAKP,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAbvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMM,mBAAA,CAAA;AAChB,oBAAA,IAAI,EAAE,EAAE;oBACR,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,UAAU,EAAE;AACf,iBAAA;8BAGC,UAAU,EAAA,CAAA;sBADT,SAAS;uBAAC,qBAAqB;gBAEQ,GAAG,EAAA,CAAA;sBAA1C,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;;;ACzElC,MAAO,qBAAsB,SAAQ,gBAAgB,CAAA;AACzD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;AAGA,IAAA,SAAS;IAGT,cAAc,GAAY,KAAK;IAG/B,MAAM,GAAoB,OAAO;IAGjC,KAAK,GAAW,EAAE;AAGlB,IAAA,2BAA2B;IAE3B,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAE1B,QAAA,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI;AAE9D,QAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM;AAEvD,QAAA,GAAG,CAAC,MAAM,GAAG,KAAK;AAElB,QAAA,GAAG,CAAC,SAAS,GAAG,IAAI;AAEpB,QAAA,GAAG,CAAC,QAAQ,GAAG,KAAK;AAEpB,QAAA,GAAG,CAAC,QAAQ,GAAG,CAAC;AAEhB,QAAA,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;AAEtB,QAAA,GAAG,CAAC,cAAc,GAAG,KAAK;AAE1B,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,YAAA,GAAG,CAAC,uBAAuB,GAAG,IAAI,CAAC,cAAc;QACnD;AACA,QAAA,OAAO,GAAG;IACZ;uGA3CW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,OAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,EAAA,SAAA,EANrB;AACT,YAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,qBAAqB,EAAE;AAClE,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAHS,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAOD,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBATjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,EAAE;AACZ,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,uBAAuB,EAAE;AAClE,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;wDAOC,SAAS,EAAA,CAAA;sBADR;gBAID,cAAc,EAAA,CAAA;sBADb;gBAID,MAAM,EAAA,CAAA;sBADL;gBAID,KAAK,EAAA,CAAA;sBADJ;gBAID,2BAA2B,EAAA,CAAA;sBAD1B;;;ACXG,MAAO,gBAAiB,SAAQ,gBAAgB,CAAA;AACpD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;IAEA,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAE1B,QAAA,QAAQ,IAAI,CAAC,MAAM,EAAE;AACnB,YAAA,KAAK,kBAAkB;AACrB,gBAAA,GAAG,CAAC,MAAM,GAAG,oBAAoB;gBACjC;AACF,YAAA,KAAK,cAAc;AACjB,gBAAA,GAAG,CAAC,MAAM,GAAG,mBAAmB;gBAChC;AACF,YAAA,KAAK,kBAAkB;gBACrB;AACF,YAAA,KAAK,oBAAoB;AACvB,gBAAA,GAAG,CAAC,MAAM,GAAG,sBAAsB;gBACnC;AACF,YAAA;gBACE;;AAEJ,QAAA,OAAO,GAAG;IACZ;uGAxBW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,SAAA,EAJhB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,iDAD/D,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAKD,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,gBAAkB,EAAE,CAAC;oBACzE,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;MA0CY,kBAAkB,CAAA;IACtB,KAAK,GAAY,IAAI;AAEpB,IAAA,MAAM;AAEN,IAAA,WAAW;AAGX,IAAA,KAAK;AAEb,IAAA,MAAM,CAAC,MAAW,EAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;IACvC;IAEA,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;IACxD;AAEA,IAAA,cAAc,CAAC,MAAmC,EAAA;AAChD,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;IACrD;IAEA,QAAQ,GAAA;AACN,QAAA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;IAC9B;AAEA,IAAA,QAAQ,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IAC3C;AAEA,IAAA,eAAe,CAAC,MAA+B,EAAA;AAC7C,QAAA,MAAM,CAAC,UAAU,CAAC,MAAK;AACrB,YAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;AACpB,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,QAAQ,CAAC,QAAQ,EAAA;AACf,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;AAC3B,YAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;AACrB,YAAA,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,EAAE;AACrB,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;YACnB;AACA,YAAA,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE;QACrC;IACF;uGA7CW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAOlB,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBnB;;;;;;;;;AAST,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,WAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAIU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAd9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE;;;;;;;;;AAST,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;8BASS,KAAK,EAAA,CAAA;sBADZ,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;ACrD3C,MAAO,qBAAsB,SAAQ,gBAAgB,CAAA;AACzD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;AAGA,IAAA,SAAS;IAET,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;AAE1B,QAAA,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC;cACnB,IAAI,CAAC;AACP,cAAE,QAAQ,CAAC,GAAG,CAAC,YAAY;AAC3B,kBAAE;kBACA,KAAK;AACP,aAAC,GAAG,CAAC,WAAW,GAAG,CAAC,MAAM,KAAI;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI;AAAE,oBAAA,OAAO,IAAI;AAC7B,gBAAA,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE;AAChD,oBAAA,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC;gBAClD;AACA,gBAAA,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS;AAC9B,YAAA,CAAC,CAAC;QAEJ,CAAC,GAAG,CAAC,MAAM;YACT,IAAI,CAAC,MAAM,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM;AACvE,aAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;AACtB,QAAA,GAAG,CAAC,SAAS,GAAG,IAAI;AACpB,QAAA,GAAG,CAAC,QAAQ,GAAG,KAAK;AACpB,QAAA,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;AAEtB,QAAA,OAAO,GAAG;IACZ;uGAhCW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EANrB;AACT,YAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,qBAAqB,EAAE;AAClE,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAHS,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAOD,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBATjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,QAAQ,EAAE,EAAE;AACZ,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,uBAAuB,EAAE;AAClE,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;wDAOC,SAAS,EAAA,CAAA;sBADR;;;MClBmB,sBAAsB,CAAA;AAM3C;;MCEY,iCAAiC,CAAA;AACC,IAAA,WAAW;IACxD,QAAQ,GAAG,gCAAgC;IAElC,MAAM,GAAW,GAAG;uGAJlB,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjC,iCAAiC,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAC9B,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJf,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAG1B,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAL7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;AACrC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;8BAE8C,WAAW,EAAA,CAAA;sBAAvD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAGlC,MAAM,EAAA,CAAA;sBAAd;;MASU,gCAAgC,CAAA;AAG3C,IAAA,WAAW;AACX,IAAA,IAAI;AACJ,IAAA,UAAU;AAEV,IAAA,MAAM,CAAC,MAAW,EAAA;AAChB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;AACrC,QAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;AACvB,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;IACrC;IAEA,OAAO,GAAA;AACL,QAAA,OAAO,KAAK;IACd;uGAfW,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhC,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EALjC,CAAA;;AAEO,kBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAGN,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAN5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;AAEO,kBAAA,CAAA;AACjB,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCZY,8BAA8B,CAAA;AACI,IAAA,WAAW;AACxD,IAAA,QAAQ;AACR,IAAA,MAAM;AACN,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,QAAQ,GAAG,6BAA6B;IAC/C;IACA,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,GAAG;YACZ,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B;IACH;uGAXW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA9B,8BAA8B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAC3B,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJf,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA;;2FAG1B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAL1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;AACrC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;wDAE8C,WAAW,EAAA,CAAA;sBAAvD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;MAmBhC,6BAA6B,CAAA;AACxC,IAAA,WAAW;AAEX,IAAA,IAAI;AAEJ,IAAA,OAAO,CAAC,MAAW,EAAA;AACjB,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,MAAM,CAAC,MAAW,EAAA;QAChB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW;AACnC,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;IACvC;uGAZW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA7B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAL9B,CAAA;;AAEO,kBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAGN,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBANzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;AAEO,kBAAA,CAAA;AACjB,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;AC2BD,cAAc,CAAC,SAAS,CAAC,kBAAkB,GAAG,MAAK;AACjD,IAAA,OAAO,KAAK;AACd,CAAC;AACD,cAAc,CAAC,SAAS,CAAC,eAAe,GAAG,YAAA;;AAE3C,CAAC;AAEK,MAAO,4BAA6B,SAAQ,YAEjD,CAAA;AAEA;AACK,MAAO,mBAAoB,SAAQ,WAA4B,CAAA;AAEpE;AACK,MAAO,sBAAuB,SAAQ,WAA2B,CAAA;AAEtE;AAEK,MAAO,8BAA+B,SAAQ,WAAoC,CAAA;AAEvF;AAEK,MAAO,iCAAkC,SAAQ,WAAgB,CAAA;AAGtE;MAQY,mBAAmB,CAAA;AAuSpB,IAAA,GAAA;AACA,IAAA,GAAA;AAvSF,IAAA,WAAW,GAAG,IAAI,OAAO,EAAE;AAE3B,IAAA,qBAAqB;IAErB,YAAY,GAAG,MAAM,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEjE,QAAQ,GAAG,IAAI;AAEvB,IAAA,MAAM,IAAI,GAAA;QACR,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,EAAE;AAChC,YAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAErD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtC;QACF;IACF;AAEA,IAAA,MAAM,IAAI,GAAA;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;AAEzC,QAAA,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC;IAClD;AAEQ,IAAA,OAAO;AACP,IAAA,yBAAyB;AACjC,IAAA,UAAU;IAEF,aAAa,GAAG,IAAI;AAE5B,IAAA,WAAW;IACX,UAAU,GAAU,EAAE;IACtB,YAAY,GAAG,YAAY;AAC3B,IAAA,8BAA8B;AAC9B,IAAA,2BAA2B;IAC3B,mBAAmB,GAAQ,EAAE;AAC7B,IAAA,eAAe;IACf,cAAc,GAAG,MAAM;AACvB,IAAA,kBAAkB;AAClB,IAAA,wBAAwB;AACxB,IAAA,eAAe;IACf,YAAY,GAAG,KAAK;IACpB,QAAQ,GAAG,KAAK;IAChB,YAAY,GAAG,KAAK;IACpB,QAAQ,GAAG,KAAK;IAChB,iBAAiB,GAAU,EAAE;IAC7B,kBAAkB,GAAQ,EAAE;IAC5B,WAAW,GAAG,CAAC;AAGf,IAAA,EAAE;AAGF,IAAA,0BAA0B,GAAuB,CAAC,EAAE,EAAE,EAAE,CAAC;IAGzD,sBAAsB,GAAG,KAAK;IAG9B,kBAAkB,GAAG,EAAE;AAEvB,IAAA,cAAc,GAAG,IAAI,CAAC,kBAAkB;IAGjC,eAAe,GAAG,KAAK;IAGvB,uBAAuB,GAAG,KAAK;IAG/B,yBAAyB,GAAG,IAAI;IAGhC,qBAAqB,GAAG,KAAK;IAG7B,gBAAgB,GAAG,IAAI;IAG9B,YAAY,GAAG,IAAI;IAGnB,cAAc,GAAG,KAAK;IAGtB,UAAU,GAAG,KAAK;AAGlB,IAAA,2BAA2B;AAG3B,IAAA,sBAAsB;IAGtB,aAAa,GAA0B,QAAQ;IAG/C,UAAU,GAAY,IAAI;IAG1B,SAAS,GAAU,EAAE;IAGrB,iBAAiB,GAAuB,OAAO;IAG/C,UAAU,GAAY,IAAI;IAG1B,oBAAoB,GAAG,KAAK;IAG5B,QAAQ,GAAW,MAAM;IAGzB,aAAa,GAAW,MAAM;IAG9B,SAAS,GAAG,EAAE;IAGd,oBAAoB,GAAY,KAAK;AAGrC,IAAA,+BAA+B;AAG/B,IAAA,uBAAuB;IAGvB,iBAAiB,GAAG,IAAI;IAGxB,gBAAgB,GAAG,KAAK;IAGxB,gBAAgB,GAAW,IAAI;IAE/B,eAAe,GAAG,MAAM,EAAO;AAG/B,IAAA,QAAQ;AAKR,IAAA,GAAG,GAAY,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;AAEjC,IAAA,WAAW;AACnB,IAAA,IACW,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,WAAW;IACzB;IACA,IAAW,UAAU,CAAC,CAAS,EAAA;AAC7B,QAAA,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,OAAO,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC;YAC9C;QACF;IACF;AAEQ,IAAA,OAAO;AACf,IAAA,IACW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,OAAO;IACrB;IACA,IAAW,MAAM,CAAC,CAAQ,EAAA;AACxB,QAAA,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;AACtB,YAAA,IAAI,CAAC,OAAO,GAAG,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AACzB,gBAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC;gBAClD,IAAI,EAAE,EAAE;AACN,oBAAA,MAAM,EAAE,GAAG,EAAE,CAAC,6BAA6B,EAAE;AAC7C,oBAAA,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAChB;AACF,YAAA,CAAC,CAAC;QACJ;IACF;AAEA,IAAA,YAAY,GAAG;AACb,QAAA,IAAI,EAAE,WAAW;AAEjB,QAAA,YAAY,EAAE,MAAM;AACpB,QAAA,0BAA0B,EAAE,KAAK;AAEjC,QAAA,oBAAoB,EAAE,KAAK;AAE3B,QAAA,UAAU,EAAE,KAAK;AAEjB,QAAA,cAAc,EAAE,KAAK;AAErB,QAAA,gBAAgB,EAAE,KAAK;AAEvB,QAAA,sBAAsB,EAAE,KAAK;AAE7B,QAAA,eAAe,EAAE,CAAC,OAAO,KAAI;YAC3B,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC;QACvD,CAAC;KACF;AAGO,IAAA,cAAc;AAGtB,IAAA,aAAa,GACX,IAAI,YAAY,EAAgC;IAE1C,QAAQ,GAAuB,EAAE;AACzC,IAAA,IACW,OAAO,GAAA;QAChB,OAAO,IAAI,CAAC;AACV,cAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;AACrD,cAAE,IAAI,CAAC,QAAQ;IACnB;IAEA,IAAW,OAAO,CAAC,GAAuB,EAAA;AACxC,QAAA,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE;AACrB,YAAA,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ;AACvB,YAAA,IAAI,CAAC,QAAQ,GAAG,GAAG;AACnB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;AACtB,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,KAAK,EAAE,GAAG;AACV,gBAAA,QAAQ,EAAE,GAAG;AACb,gBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,aAAA,CAAC;QACJ;IACF;AAEA,IAAA,aAAa,GAAQ;AACnB,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,cAAc,EAAE,IAAI;KACrB;AAGD,IAAA,WAAW;AAGX,IAAA,OAAO;AAGP,IAAA,WAAW;AAGX,IAAA,kBAAkB;AAGV,IAAA,kBAAkB;AAElB,IAAA,WAAW;AAEnB,IAAA,IACW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB;IACtE;IAEA,IAAW,UAAU,CAAC,CAAwB,EAAA;AAC5C,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;IACtB;AAGA,IAAA,SAAS,GACP,IAAI,YAAY,EAAuB;AAGzC,IAAA,WAAW,GACT,IAAI,YAAY,EAAuB;AAGzC,IAAA,UAAU,GACR,IAAI,YAAY,EAAuB;AAGzC,IAAA,QAAQ,GACN,IAAI,YAAY,EAA0B;AAG5C,IAAA,UAAU,GACR,IAAI,YAAY,EAA0B;AAG5C,IAAA,gBAAgB,GACd,IAAI,YAAY,EAAkC;AAGpD,IAAA,kBAAkB,GAChB,IAAI,YAAY,EAAkC;AAGpD,IAAA,qBAAqB,GACnB,IAAI,YAAY,EAAqC;IAEvD,WAAA,CACU,GAA+B,EAC/B,GAAsB,EAAA;QADtB,IAAA,CAAA,GAAG,GAAH,GAAG;QACH,IAAA,CAAA,GAAG,GAAH,GAAG;QAEX,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;IAChD;IAEQ,UAAU,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,cAAc,GAAG,CAAA,YAAA,EAAe,EAAE,KAAK;QAC9C;aAAO;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,MAAM;QAC9B;IACF;AAEA,IAAA,IAAY,qBAAqB,GAAA;QAC/B,MAAM,IAAI,GAAG,IAAI;QACjB,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,OAAO,EAAE,CAAC,MAAM,KAAI;AAClB,gBAAA,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC,OAAO;gBAE/C,MAAM,UAAU,GAA2B,EAAE;AAE7C,gBAAA,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;gBAEvC,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ;AAEzC,gBAAA,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ;AAEjE,gBAAA,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;oBACnD,OAAO;wBACL,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,GAAG,EAAE,CAAC,CAAC,IAAI;qBACZ;AACH,gBAAA,CAAC,CAAC;gBAEF,UAAU,CAAC,KAAK,GAAG;AACjB,oBAAA,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AACvD,oBAAA,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;AAC9B,oBAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI;iBACnC;gBAED,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW;AAE9C,gBAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;YACnC,CAAC;SACF;IACH;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,IAAI,CAAC,IAAI,EAAE;AAEX,YAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE;QAC1C;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;IACxB;AAEA,IAAA,iBAAiB,GAAG,CAAC,CAAC,KAAI;AACxB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;AAC9B,IAAA,CAAC;IAED,aAAa,GAAG,MAAK;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;AACrC,IAAA,CAAC;IAED,oBAAoB,GAAG,MAAK;QAC1B,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,CAAC;AACpD,YAAA,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE;SAC9C;AACH,IAAA,CAAC;AAED,IAAA,kBAAkB,CAAC,MAAM,EAAA;QACvB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7C;AAEA,IAAA,qBAAqB,GAAG,CAAC,CAAC,KAAI;AAC5B,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;AACzB,IAAA,CAAC;AACD,IAAA,iBAAiB,CAAC,WAAW,EAAA;AAC3B,QAAA,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG;QAC9B,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK;QAC5B,CAAC,EAAE,GAAG,CAAC;QACP,IAAI,CAAC,YAAY,CAAC,IAAI;AACpB,YAAA,IAAI,CAAC,aAAa,KAAK,QAAQ,GAAG,WAAW,GAAG,UAAU;QAE5D,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,IAAI,CAAC,uBAAuB;QAE3E,IAAI,CAAC,YAAY,CAAC,oBAAoB,GAAG,IAAI,CAAC,yBAAyB;QAEvE,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB;QAEtE,IAAI,CAAC,UAAU,EAAE;QACjB,IAAI,CAAC,UAAU,EAAE;AAEjB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;YACtB;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,OAAO,CAAC,aAAa,CACxB,sBAAsB,EACtB,IAAI,CAAC,qBAAqB,CAC3B;QACH;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,OAAO,EAAE;QAChB;AAEA,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,cAAc,EAAE;QACvB;IACF;IACA,kBAAkB,GAAA;QAChB,MAAM,IAAI,GAAG,IAAI;AACjB,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ;YAC/D,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM;QAC5D;AAEA,QAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,GAAG,2BAA2B;AAElE,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AACxB,YAAA,IAAI,CAAC,kBAAkB,GAAG,gCAAgC;YAE1D,IAAI,CAAC,wBAAwB,GAAG;AAC9B,gBAAA,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW;aACjD;YAED,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM;QACxD;AAEA,QAAA,IAAI,CAAC,eAAe,GAAG,MAAK;AAC1B,YAAA,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI;AACjC,QAAA,CAAC;IACH;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE;AACnC,YAAA,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM;QACzC;AACA,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM,EAAE;AAC7D,YAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO;AAChC,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;QACtB;AACA,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,IAAI,CAAC,YAAY,GAAG,YAAY;QAClC;;AAEA,QAAA,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;AACpB,YAAA,IAAI,CAAC,GAAG;gBACN;qBACG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI;AAC7C,qBAAA,gBAAgB,CAAC,WAAW,CAAC,KAAK,KAAK;QAC9C;AAEA,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;AAC/B,iBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACvB,iBAAA,SAAS,CAAC;gBACT,IAAI,EAAE,MAAK;oBACT,IAAI,CAAC,IAAI,EAAE;gBACb,CAAC;AACF,aAAA,CAAC;QACN;IACF;IAEA,aAAa,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IACE,IAAI,CAAC,SAAS;AACd,gBAAA,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBACzB,IAAI,CAAC,OAAO,KAAK,SAAS;gBAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,EACpC;gBACA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,KAAI;AAChC,oBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;wBAC3B,IAAI,MAAM,GAAY,KAAK;wBAC3B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,KAAI;4BAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE;gCACnC,MAAM,GAAG,IAAI;AACb,gCAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;4BAC1B;AACF,wBAAA,CAAC,CAAC;oBACJ;AACF,gBAAA,CAAC,CAAC;YACJ;iBAAO;gBACL,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,KAAI;AAChC,oBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;wBAC3B,IAAI,MAAM,GAAY,KAAK;AAC3B,wBAAA,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;4BACzB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC9B,gCAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;AAC5D,oCAAA,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;wCACzD,MAAM,GAAG,IAAI;oCACf;gCACF;qCAAO;AACL,oCAAA,IACE,IAAI,CAAC,QAAQ,KAAK,MAAM;AACxB,wCAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAChD;wCACA,MAAM,GAAG,IAAI;oCACf;gCACF;AACF,4BAAA,CAAC,CAAC;wBACJ;AACA,wBAAA,IAAI,IAAI,CAAC,2BAA2B,EAAE;AACpC,4BAAA,IAAI,CAAC,gBAAgB,CACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAC5C;wBACH;AACA,wBAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBAC1B;AACF,gBAAA,CAAC,CAAC;YACJ;QACF;IACF;IAEA,WAAW,GAAA;QACT,IAAI,CAAC,UAAU,EAAE;QACjB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,gBAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACjC;QACF,CAAC,EAAE,EAAE,CAAC;IACR;AAEA,IAAA,gBAAgB,GAAG,CAAC,MAA8B,KAAI;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE;QACxC,MAAM,SAAS,GAAa,EAAE;QAE9B,MAAM,SAAS,GACb,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC;YAC1C,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;AACvC,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ;QAEjC,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;QAChC;QAEA,IAAI,OAAO,EAAE;YACX,SAAS,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,EAAE,YAAY,CAAC;QACjE;AAEA,QAAA,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC;AAE7C,QAAA,OAAO,SAAS;AAClB,IAAA,CAAC;IAED,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE;AACrC,YAAA,IAAI,CAAC,YAAY,CAAC,oBAAoB,GAAG,IAAI;QAC/C;AACA,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AAC1B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YAErD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CACtC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,IAAI,GAAG,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,CAChD;YAED,IAAI,CAAC,kBAAkB,GAAG;gBACxB,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,KAAK,EAAE,WAAW,CAAC,KAAK;AACxB,gBAAA,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE;gBACnD,KAAK,EAAE,WAAW,CAAC,KAAK;aACzB;YAED,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC9B,gBAAA,IAAI,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE;AAC1B,oBAAA,GAAG,CAAC,IAAI,GAAG,IAAI;gBACjB;AACF,YAAA,CAAC,CAAC;QACJ;AACA,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AAEpB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;QACxB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;AACjD,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM;YAChC,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,KAAY;AAChB,YAAA,IAAI,UAAkB;AACtB,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACzB,KAAK,GAAG,MAAM;AACd,gBAAA,UAAU,GAAG,MAAM,CAAC,MAAM;YAC5B;iBAAO;AACL,gBAAA,KAAK,GAAG,MAAM,CAAC,KAAK;AACpB,gBAAA,UAAU,GAAG,MAAM,CAAC,UAAU;YAChC;AACA,YAAA,IAAI,IAAI,CAAC,yBAAyB,EAAE;AAClC,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACpB,IAAI,CAAC,yBAAyB,CAAC;AAC7B,wBAAA,OAAO,EAAE,EAAE;AACX,wBAAA,QAAQ,EAAE,CAAC;AACZ,qBAAA,CAAC;gBACJ;qBAAO;oBACL,IAAI,CAAC,yBAAyB,CAAC;AAC7B,wBAAA,OAAO,EAAE,KAAK;AACd,wBAAA,QAAQ,EAAE,UAAU;AACrB,qBAAA,CAAC;gBACJ;YACF;iBAAO;gBACL,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;oBAClD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC3C;AAAO,qBAAA,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;oBACrC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC;gBAC9C;YACF;AAEA,YAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,gBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;YAC3C;YACA,IAAI,CAAC,aAAa,EAAE;AACtB,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,MAAK;AAC1C,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACzB,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC9C,gBAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK;AAC3B,YAAA,CAAC,CAAC;QACJ;AACA,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;IAC1B;IAEA,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;AAErD,QAAA,MAAM,uBAAuB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAClD,CAAC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CACjC;QAED,IAAI,uBAAuB,EAAE;YAC3B,IAAI,CAAC,YAAY,CAAC,cAAc;gBAC9B,uBAAuB,CAAC,uBAAuB;QACnD;AAEA,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC;QAEpE,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,WAAW,CAAC,iBAAiB;AAE5D,YAAA,IAAI,WAAW,CAAC,2BAA2B,EAAE;AAC3C,gBAAA,IAAI,CAAC,2BAA2B;oBAC9B,WAAW,CAAC,2BAA2B;YAC3C;AAEA,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACvE;AAEA,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,IACE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,KAAK,IAAI;gBAC7C,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,EAC/B;gBACA,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,qBAAqB;YACzD;iBAAO;gBACL,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,qBAAqB;YACzD;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM,EAAE;YACjC,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CACtC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,CACvD;YACD,IAAI,WAAW,IAAI,IAAI,CAAC,oBAAoB,IAAI,KAAK,EAAE;gBACrD,IAAI,CAAC,kBAAkB,GAAG;oBACxB,UAAU,EAAE,WAAW,CAAC,UAAU;oBAClC,KAAK,EAAE,WAAW,CAAC,KAAK;AACxB,oBAAA,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE;oBACnD,KAAK,EAAE,WAAW,CAAC,KAAK;iBACzB;YACH;QACF;QAEA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC9B,YAAA,IAAI,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE;AAC1B,gBAAA,GAAG,CAAC,IAAI,GAAG,IAAI;YACjB;AACF,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,uBAAuB,CAAC,CAAC,EAAA;AACvB,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM,EAAE;YACjC,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,2BAA2B,EAAE;YACpD,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CACjB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,oBAAoB,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAC3D;AACD,YAAA,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE;gBACpB,IAAI,CAAC,kBAAkB,GAAG;AACxB,oBAAA,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU;AACjC,oBAAA,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK;AACvB,oBAAA,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE;AACnD,oBAAA,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK;iBACxB;YACH;QACF;IACF;IAEA,OAAO,CAAC,QAAe,EAAE,EAAA;QACvB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;;YAEtD,IAAI,CAAC,OAAO,CAAC,aAAa,CACxB,sBAAsB,EACtB,IAAI,CAAC,qBAAqB,CAC3B;QACH;aAAO;AACL,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B;IACF;AAEA,IAAA,uBAAuB,CAAC,CAAmB,EAAA;AACzC,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AAClB,YAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;AAC1B,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;IACJ;AAEA,IAAA,6BAA6B,CAAC,CAAmB,EAAA;AAC/C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AACpB,YAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;AAC1B,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;IACJ;AAEA,IAAA,uBAAuB,CAAC,CAAmB,EAAA;AACzC,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;AACnB,YAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;AAC1B,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACnC,YAAA,SAAS,EAAE,IAAI;AAChB,SAAA,CAAC;IACJ;AAEA,IAAA,sBAAsB,CAAC,CAAkB,EAAA;AACvC,QAAA,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjB,gBAAA,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;AACzB,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,aAAA,CAAC;QACJ;IACF;AAEA,IAAA,4BAA4B,CAAC,CAAmB,EAAA;AAC9C,QAAA,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AACjB,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;AACnB,gBAAA,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;AACzB,gBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACnC,gBAAA,SAAS,EAAE,IAAI;AAChB,aAAA,CAAC;QACJ;IACF;IAEA,mBAAmB,CAAC,MAAW,EAAE,MAAW,EAAA;QAC1C,MAAM,IAAI,GAAG,EAAE;AACf,QAAA,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;AACtB,YAAA,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB;QACF;AACA,QAAA,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;AACtB,YAAA,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB;QACF;AACA,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC;AAEA,IAAA,mBAAmB,CAAC,CAAC,EAAA;AACnB,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;AACvB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CACpC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CACjD;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7B;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CACpC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CACjD;QACH;AACA,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;AAC3B,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,IAAI,EAAE,CAAC;AACP,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;IACJ;AAEA,IAAA,4BAA4B,CAAC,CAAM,EAAA;AACjC,QAAA,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,EAAE,EAAE;AACnD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;AAE7C,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CACrC,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,KAAK,OAAO,CAAC,CAC3D;AACD,YAAA,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,KAAI;AAC7B,gBAAA,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;AACvB,YAAA,CAAC,CAAC;QACJ;AAEA,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,MAAM,qBAAqB,GACzB,CAAC,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC,SAAS;YAC/C,IAAI,qBAAqB,EAAE;gBACzB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAS,KAAI;AACrC,oBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACrB,wBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;4BACd,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,QAAQ,EAAE,IAAI,CAAC,KAAK;4BACpB,IAAI,EAAE,IAAI,CAAC,IAAI;AAChB,yBAAA,CAAC;oBACJ;AACF,gBAAA,CAAC,CAAC;YACJ;iBAAO;gBACL,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;YAC7C;QACF;aAAO;YACL,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;QAC7C;AAEA,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;AACF,QAAA,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,GAAG,KAAK;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC;AACtD,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;AAC9B,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;IAChC;AAEQ,IAAA,YAAY,CAAC,CAAC,EAAA;QACpB,OAAO;AACL,YAAA,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,KAAK,EAAE,CAAC,CAAC,KAAK;SACf;IACH;AAEQ,IAAA,WAAW,CAAC,CAAC,EAAA;QACnB,OAAO;AACL,YAAA,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB;IACH;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;IAC5B;AAEO,IAAA,kBAAkB,CAAC,QAAQ,EAAA;QAChC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,KAAI;AAChC,YAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC3B,IAAI,MAAM,GAAY,KAAK;gBAC3B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE;AACzC,oBAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CACpC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CACpC;gBACH;YACF;AACF,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,mBAAmB,GAAG,CAAC,CAAM,KAAI;AAC/B,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,IAAI,CAAC,QAAQ,YAAY,QAAQ,EAAE;gBACrC,OAAO,IAAI,CAAC,QAAQ,CAAC;AACnB,oBAAA,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;AACzB,oBAAA,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;oBACtB,IAAI,EAAE,CAAC,CAAC,IAAI;AACb,iBAAA,CAAC;YACJ;iBAAO;gBACL,OAAO,IAAI,CAAC,QAAQ;YACtB;QACF;AACF,IAAA,CAAC;AAED,IAAA,WAAW,CAAC,KAAc,EAAA;AACxB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC;QAC9C;IACF;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;QAC5B;IACF;AAEA,IAAA,uBAAuB,CAAC,CAAuB,EAAA;AAC7C,QAAA,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC,EAAE;AAC3C,YAAA,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC;QACrC;IACF;AAEA,IAAA,6BAA6B,CAAC,CAAyB,EAAA;AACrD,QAAA,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,kBAAkB,EAAE;IAC3B;AAEA,IAAA,mBAAmB,CAAC,CAAC,EAAA;QACnB,IAAI,CAAC,kBAAkB,EAAE;IAC3B;AAEQ,IAAA,uBAAuB,CAAC,GAAY,EAAA;AAC1C,QAAA,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjD;QACF;AACA,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,GAAG,CAAC,gBAAgB,EAAE;QACxB;IACF;IAEQ,kBAAkB,GAAA;QACxB,MAAM,OAAO,GAAG,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,GAAG,OAAO;QAClD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,MAAM,CAAC;IACpD;IAEQ,kBAAkB,GAAA;AACxB,QAAA,MAAM,iBAAiB,GAAG;AACxB,YAAA,GAAI,QAAQ,CAAC,gBAAgB,CAAC,sBAAsB,CAAS;SAC9D;AAED,QAAA,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CACzC,CAAC,UAAU,KAAK,UAAU,CAAC,YAAY,CACxC;QACD,MAAM,uBAAuB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC;AAE1D,QAAA,OAAO,uBAAuB;IAChC;IAEQ,cAAc,GAAA;AACpB,QAAA,MAAM,WAAW,GACf,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,kBAAkB,CAAC;QAE1D,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;AAE7C,QAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AAC3B,QAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AAE/B,QAAA,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS;QAE/B,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAEjD,QAAA,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAK;YACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,OAAO;YACtD,IAAI,CAAC,OAAO,EAAE;AAChB,QAAA,CAAC,CAAC;AAEF,QAAA,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;IACjC;AAEQ,IAAA,kBAAkB,CAAC,KAAK,EAAA;AAC9B,QAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;AACrB,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,gBAAA,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;YACrB;YACA,OAAO;gBACL,QAAQ,EAAE,CAAC,CAAC,KAAK;gBACjB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,IAAI,EAAE,CAAC,CAAC,IAAI;aACb;AACH,QAAA,CAAC,CAAC;IACJ;IAEU,MAAM,mBAAmB,CAAC,KAAyB,EAAA;QAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QACzC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC;QACxE,IAAI,cAAc,EAAE;AAClB,YAAA,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE;AACvC,YAAA,MAAM,MAAM,GAAG,cAAc,CAAC,eAAe,EAAE;YAC/C,MAAM,aAAa,GAAG,cAAc,CAAC,QAAQ,EAAE,EAAE,MAAM,IAAI,EAAE;AAE7D,YAAA,IAAI,aAAa,CAAC,MAAM,EAAE;AACxB,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;oBACxB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE;AAC5C,oBAAA,SAAS,EAAE,IAAI;AACf,oBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,iBAAA,CAAC;YACJ;iBAAO,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1C,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;oBACxB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE;AACrC,oBAAA,SAAS,EAAE,IAAI;AACf,oBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,iBAAA,CAAC;YACJ;AAAO,iBAAA,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;AACzC,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;oBACxB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;AACjC,oBAAA,SAAS,EAAE,IAAI;AACf,oBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,iBAAA,CAAC;YACJ;QACF;IACF;AAEA,IAAA,mBAAmB,CAAC,CAAC,EAAA;AACnB,QAAA,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;YACpE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,OAAO;QACxD;IACF;AAEA,IAAA,WAAW,GAAG,CAAC,IAAS,KAAI;AAC1B,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACpC;aAAO;AACL,YAAA,OAAO,IAAI;QACb;AACF,IAAA,CAAC;IAED,SAAS,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB;QACF;AACA,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;IAC7B;uGArgCW,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,SAAA,EAAA,WAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,+BAAA,EAAA,iCAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,GAAA,EAAA,KAAA,EAAA,UAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EA4OhB,wBAAwB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGxB,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGlB,8BAA8B,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAG9B,iCAAiC,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGjC,qBAAqB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,SAAA,EA7ClB,gBAAgB,6BCnSnC,+2FAsEA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,6BAAA,EAAA,gCAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,uBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,wBAAA,EAAA,6BAAA,EAAA,oBAAA,EAAA,6BAAA,EAAA,8BAAA,EAAA,8BAAA,EAAA,wBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,YAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,8BAAA,EAAA,0BAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,wBAAA,EAAA,sBAAA,EAAA,+BAAA,EAAA,wBAAA,EAAA,6BAAA,EAAA,gCAAA,EAAA,+BAAA,EAAA,sCAAA,EAAA,uCAAA,EAAA,8BAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,gCAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,+BAAA,EAAA,0BAAA,EAAA,mCAAA,EAAA,8BAAA,EAAA,qBAAA,EAAA,0BAAA,EAAA,wBAAA,EAAA,mBAAA,EAAA,0BAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,mCAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,kCAAA,EAAA,sCAAA,EAAA,sBAAA,EAAA,kBAAA,EAAA,sCAAA,EAAA,sBAAA,EAAA,6BAAA,EAAA,sBAAA,EAAA,4BAAA,EAAA,4BAAA,EAAA,sBAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,qBAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,SAAA,EAAA,cAAA,EAAA,UAAA,EAAA,WAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,+BAAA,EAAA,4BAAA,EAAA,yBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,wBAAA,EAAA,yBAAA,EAAA,+BAAA,EAAA,wBAAA,EAAA,uBAAA,EAAA,wBAAA,EAAA,8BAAA,EAAA,uBAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,4BAAA,EAAA,wBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,0BAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,+BAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,yBAAA,EAAA,4BAAA,EAAA,6BAAA,EAAA,yBAAA,EAAA,2CAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,4BAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,8BAAA,EAAA,mCAAA,EAAA,2BAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,6BAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,2BAAA,EAAA,iCAAA,EAAA,uBAAA,EAAA,6BAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,8BAAA,EAAA,2BAAA,EAAA,iCAAA,EAAA,sBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,wBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,uBAAA,EAAA,2BAAA,EAAA,yBAAA,EAAA,sBAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,aAAA,EAAA,cAAA,EAAA,SAAA,EAAA,4BAAA,EAAA,2CAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,uCAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,iCAAA,EAAA,yBAAA,EAAA,qBAAA,EAAA,sBAAA,EAAA,yBAAA,EAAA,gCAAA,EAAA,qCAAA,EAAA,qCAAA,EAAA,oBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,4BAAA,EAAA,0BAAA,EAAA,2BAAA,EAAA,0BAAA,EAAA,yBAAA,EAAA,iCAAA,EAAA,wBAAA,EAAA,4BAAA,EAAA,oCAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,eAAA,EAAA,yBAAA,EAAA,wBAAA,EAAA,2BAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,6BAAA,EAAA,yBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,8BAAA,EAAA,cAAA,EAAA,cAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,+BAAA,EAAA,OAAA,EAAA,WAAA,EAAA,UAAA,EAAA,UAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,sBAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,OAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,wBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,gCAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,yBAAA,EAAA,wBAAA,EAAA,sBAAA,EAAA,sBAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,aAAA,EAAA,2BAAA,EAAA,gBAAA,EAAA,sBAAA,EAAA,6BAAA,EAAA,6BAAA,EAAA,0BAAA,EAAA,+BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,+BAAA,EAAA,gCAAA,EAAA,8BAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,sBAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,wBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,yBAAA,EAAA,sBAAA,EAAA,0BAAA,EAAA,2BAAA,EAAA,UAAA,EAAA,QAAA,EAAA,YAAA,EAAA,UAAA,EAAA,eAAA,EAAA,cAAA,EAAA,eAAA,EAAA,aAAA,EAAA,oBAAA,EAAA,wBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,yBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,wBAAA,EAAA,qBAAA,EAAA,yBAAA,EAAA,uBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,0BAAA,EAAA,wBAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,cAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,yBAAA,EAAA,qCAAA,EAAA,aAAA,EAAA,cAAA,EAAA,4BAAA,EAAA,qBAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,eAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,aAAA,EAAA,cAAA,EAAA,YAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,uBAAA,EAAA,gBAAA,EAAA,qBAAA,EAAA,yBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,0BAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,eAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FDkBa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAAA,aAAA,EAET,iBAAiB,CAAC,IAAI,cACzB,KAAK,EAAA,QAAA,EAAA,+2FAAA,EAAA;+GAqDjB,EAAE,EAAA,CAAA;sBADD;gBAID,0BAA0B,EAAA,CAAA;sBADzB;gBAID,sBAAsB,EAAA,CAAA;sBADrB;gBAID,kBAAkB,EAAA,CAAA;sBADjB;gBAMM,eAAe,EAAA,CAAA;sBADrB;gBAIM,uBAAuB,EAAA,CAAA;sBAD7B;gBAIM,yBAAyB,EAAA,CAAA;sBAD/B;gBAIM,qBAAqB,EAAA,CAAA;sBAD3B;gBAIM,gBAAgB,EAAA,CAAA;sBADtB;gBAID,YAAY,EAAA,CAAA;sBADX;gBAID,cAAc,EAAA,CAAA;sBADb;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,2BAA2B,EAAA,CAAA;sBAD1B;gBAID,sBAAsB,EAAA,CAAA;sBADrB;gBAID,aAAa,EAAA,CAAA;sBADZ;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,iBAAiB,EAAA,CAAA;sBADhB;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,oBAAoB,EAAA,CAAA;sBADnB;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,aAAa,EAAA,CAAA;sBADZ;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,oBAAoB,EAAA,CAAA;sBADnB;gBAID,+BAA+B,EAAA,CAAA;sBAD9B;gBAID,uBAAuB,EAAA,CAAA;sBADtB;gBAID,iBAAiB,EAAA,CAAA;sBADhB;gBAID,gBAAgB,EAAA,CAAA;sBADf;gBAID,gBAAgB,EAAA,CAAA;sBADf;gBAMD,QAAQ,EAAA,CAAA;sBADP;gBAMD,GAAG,EAAA,CAAA;sBADF;gBAKU,UAAU,EAAA,CAAA;sBADpB;gBAgBU,MAAM,EAAA,CAAA;sBADhB;gBAuCO,cAAc,EAAA,CAAA;sBADrB,eAAe;uBAAC,gBAAgB;gBAIjC,aAAa,EAAA,CAAA;sBADZ;gBAMU,OAAO,EAAA,CAAA;sBADjB;gBA0BD,WAAW,EAAA,CAAA;sBADV,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,wBAAwB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAIxD,OAAO,EAAA,CAAA;sBADN,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAIlD,WAAW,EAAA,CAAA;sBADV,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,8BAA8B,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAI9D,kBAAkB,EAAA,CAAA;sBADjB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,iCAAiC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAIzD,kBAAkB,EAAA,CAAA;sBADzB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,qBAAqB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAM1C,UAAU,EAAA,CAAA;sBADpB;gBAUD,SAAS,EAAA,CAAA;sBADR;gBAKD,WAAW,EAAA,CAAA;sBADV;gBAKD,UAAU,EAAA,CAAA;sBADT;gBAKD,QAAQ,EAAA,CAAA;sBADP;gBAKD,UAAU,EAAA,CAAA;sBADT;gBAKD,gBAAgB,EAAA,CAAA;sBADf;gBAKD,kBAAkB,EAAA,CAAA;sBADjB;gBAKD,qBAAqB,EAAA,CAAA;sBADpB;;;ME/QU,gBAAgB,CAAA;uGAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBAxDzB,mBAAmB;YACnB,gBAAgB;YAChB,iBAAiB;YACjB,qBAAqB;YACrB,gBAAgB;YAChB,qBAAqB;YACrB,mBAAmB;YACnB,eAAe;YACf,qBAAqB;YACrB,kBAAkB;YAClB,yBAAyB;YACzB,8BAA8B;YAC9B,iCAAiC;YACjC,6BAA6B;YAC7B,gCAAgC;YAChC,+BAA+B;YAC/B,8BAA8B;YAC9B,2BAA2B;YAC3B,eAAe;AACf,YAAA,sBAAsB,aAGtB,YAAY;YACZ,YAAY;YACZ,WAAW;;YAEX,eAAe;YACf,gBAAgB;YAChB,iBAAiB;YACjB,kBAAkB;YAClB,cAAc;YACd,kBAAkB;AAClB,YAAA,YAAY,aAGZ,sBAAsB;YACtB,mBAAmB;YACnB,yBAAyB;YACzB,8BAA8B;YAC9B,iCAAiC;YACjC,6BAA6B;YAC7B,gCAAgC;YAChC,+BAA+B;YAC/B,8BAA8B;YAC9B,gBAAgB;YAChB,qBAAqB;YACrB,iBAAiB;YACjB,gBAAgB;YAChB,qBAAqB;YACrB,mBAAmB;YACnB,eAAe;YACf,qBAAqB;YACrB,eAAe,CAAA,EAAA,CAAA;AAIN,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAlCzB,YAAY;YACZ,YAAY;YACZ,WAAW;;YAEX,eAAe;YACf,gBAAgB;YAChB,iBAAiB;YACjB,kBAAkB;YAClB,cAAc;YACd,kBAAkB;YAClB,YAAY,CAAA,EAAA,CAAA;;2FAwBH,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBA1D5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,gBAAgB;wBAChB,iBAAiB;wBACjB,qBAAqB;wBACrB,gBAAgB;wBAChB,qBAAqB;wBACrB,mBAAmB;wBACnB,eAAe;wBACf,qBAAqB;wBACrB,kBAAkB;wBAClB,yBAAyB;wBACzB,8BAA8B;wBAC9B,iCAAiC;wBACjC,6BAA6B;wBAC7B,gCAAgC;wBAChC,+BAA+B;wBAC/B,8BAA8B;wBAC9B,2BAA2B;wBAC3B,eAAe;wBACf,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,YAAY;wBACZ,WAAW;;wBAEX,eAAe;wBACf,gBAAgB;wBAChB,iBAAiB;wBACjB,kBAAkB;wBAClB,cAAc;wBACd,kBAAkB;wBAClB,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,sBAAsB;wBACtB,mBAAmB;wBACnB,yBAAyB;wBACzB,8BAA8B;wBAC9B,iCAAiC;wBACjC,6BAA6B;wBAC7B,gCAAgC;wBAChC,+BAA+B;wBAC/B,8BAA8B;wBAC9B,gBAAgB;wBAChB,qBAAqB;wBACrB,iBAAiB;wBACjB,gBAAgB;wBAChB,qBAAqB;wBACrB,mBAAmB;wBACnB,eAAe;wBACf,qBAAqB;wBACrB,eAAe;AAChB,qBAAA;AACD,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA;;;ACtFK,MAAO,uBAAwB,SAAQ,wBAAwB,CAAA;AAoC/C,IAAA,GAAA;AAAgC,IAAA,GAAA;AAlCpD,IAAA,IAAI;AAGJ,IAAA,SAAS;IAET,OAAO,GAAuB,EAAE;IAEhC,aAAa,GAAU,EAAE;IAEzB,QAAQ,GAAW,EAAE;IACrB,SAAS,GAAY,IAAI;AAEzB,IAAA,aAAa;AACb,IAAA,GAAG,GAAY,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;IAEzC,YAAY,GAAU,EAAE;IACxB,UAAU,GAAY,IAAI;AAE1B,IAAA,sBAAsB;IAEtB,kBAAkB,GAAW,EAAE;AAE/B,IAAA,+BAA+B;AAE/B,IAAA,uBAAuB;AAEvB,IAAA,0BAA0B,GAAuB,CAAC,EAAE,EAAE,EAAE,CAAC;AAEzD,IAAA,yBAAyB;AAEzB,IAAA,eAAe;AAEf,IAAA,cAAc;IAEd,WAAA,CAAoB,GAAsB,EAAU,GAAe,EAAA;AACjE,QAAA,KAAK,EAAE;QADW,IAAA,CAAA,GAAG,GAAH,GAAG;QAA6B,IAAA,CAAA,GAAG,GAAH,GAAG;IAEvD;AAEA,IAAA,UAAU;AAEV,IAAA,aAAa;IAEb,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;AACpB,YAAA,IAAI,CAAC,GAAG;gBACN;qBACG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI;AAC7C,qBAAA,gBAAgB,CAAC,WAAW,CAAC,KAAK,KAAK;QAC9C;IACF;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;QAChC;aAAO;YACL,IAAI,CAAC,KAAK,EAAE;QACd;IACF;AAEA,IAAA,gBAAgB,CAAC,CAAC,EAAA;AAChB,QAAA,IAAI,IAAI,CAAC,aAAa,IAAI,QAAQ,EAAE;AAClC,YAAA,IAAI,CAAC,aAAa,GAAG,EAAE;QACzB;AAEA,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAC5C,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CACtD;QACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEpC,IAAI,CAAC,WAAW,EAAE;IACpB;IAEA,aAAa,GAAA;QACX,IAAI,CAAC,KAAK,EAAE;IACd;AAEA,IAAA,kBAAkB,CAAC,CAAC,EAAA;QAClB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;AAC5B,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAC5C,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC3D;AACD,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3C;aAAO;AACL,YAAA,IACE,IAAI,CAAC,SAAS,IAAI,IAAI;AACtB,iBAAC,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,EAC1D;AACA,gBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAC5C,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC3D;YACH;QACF;IACF;IAEA,eAAe,GAAA;QACb,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACjC,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;AAC7B,QAAA,CAAC,CAAC;AACF,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;AACtB,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;YAClC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,GAAG,KAAI;AAC/C,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACvB,gBAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;AAC1B,YAAA,CAAC,CAAC;QACJ;IACF;;;;;;;;IAWA,gBAAgB,GAAA;QACd,OAAO;AACL,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC;AACxC,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,KAAK,EAAE,YAAY;AACnB,gBAAA,IAAI,EAAE,qBAAqB;AAC5B,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC;AACvC,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,KAAK,EAAE,UAAU;AACjB,gBAAA,IAAI,EAAE,cAAc;AACrB,aAAA;SACF;IACH;AAEA,IAAA,mBAAmB,CAAC,CAAuB,EAAA;AACzC,QAAA,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;YACxB,IAAI,CAAC,WAAW,EAAE;QACpB;AACA,QAAA,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;YACvB,IAAI,CAAC,aAAa,EAAE;QACtB;IACF;uGA9IW,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAvB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,qSCpBpC,q3CAmCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,4BAAA,EAAA,wBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,uBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,6BAAA,EAAA,wBAAA,EAAA,eAAA,EAAA,YAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,UAAA,EAAA,eAAA,EAAA,WAAA,EAAA,sBAAA,EAAA,iCAAA,EAAA,yBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,qBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,OAAA,EAAA,6BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FDfa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;iCAEI,KAAK,EAAA,QAAA,EAAA,q3CAAA,EAAA;+GAIjB,IAAI,EAAA,CAAA;sBADH,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAInC,SAAS,EAAA,CAAA;sBADR,SAAS;uBAAC,WAAW;;;AEYlB,MAAO,cACX,SAAQ,sBAAsB,CAAA;AAiBV,IAAA,KAAA;AAA+B,IAAA,GAAA;AAb3C,IAAA,kBAAkB;AAClB,IAAA,WAAW;AAEnB,IAAA,IACW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB;IACtE;IACA,IAAW,UAAU,CAAC,CAAe,EAAA;AACnC,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;IACtB;IAEA,aAAa,GAAG,KAAK;IAErB,WAAA,CAAoB,KAAqB,EAAU,GAAe,EAAA;AAChE,QAAA,KAAK,EAAE;QADW,IAAA,CAAA,KAAK,GAAL,KAAK;QAA0B,IAAA,CAAA,GAAG,GAAH,GAAG;IAEtD;AAGA,IAAA,SAAS;AAGT,IAAA,UAAU;AAGF,IAAA,OAAO;AAGf,IAAA,WAAW;IAGX,SAAS,GAAW,EAAE;IAGtB,WAAW,GAAY,IAAI;IAG3B,UAAU,GAAW,EAAE;IAGvB,aAAa,GAAW,MAAM;IAG9B,SAAS,GAAY,IAAI;IAGzB,SAAS,GAAgC,IAAI;IAG7C,UAAU,GAAY,IAAI;IAE1B,aAAa,GAAU,EAAE;IAGzB,sBAAsB,GAAG,KAAK;IAG9B,kBAAkB,GAAW,EAAE;;;AAM/B,IAAA,+BAA+B;AAG/B,IAAA,uBAAuB;IAGvB,QAAQ,GAAY,KAAK;IAGzB,QAAQ,GAAY,KAAK;IAGzB,UAAU,GAAW,EAAE;IAGvB,IAAI,GAAkB,IAAI;AAG1B,IAAA,OAAO;IAGP,IAAI,GAA0B,QAAQ;AAGtC,IAAA,WAAW;AAGX,IAAA,iBAAiB,GAAmC,IAAI,YAAY,EAEjE;AAGH,IAAA,GAAG,GAAY,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;IAEhC,SAAS,GAAG,KAAK;AAG1B,IAAA,0BAA0B,GAAuB,CAAC,EAAE,EAAE,EAAE,CAAC;IAGzD,eAAe,GAAG,IAAI;IAGtB,cAAc,GAAG,KAAK;IAEtB,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;IACxB;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;IAC1B;IAEA,iBAAiB,GAAA;QACf,IAAI,CAAC,IAAI,EAAE;IACb;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;AACpB,YAAA,IAAI,CAAC,GAAG;gBACN;qBACG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI;AAC7C,qBAAA,gBAAgB,CAAC,WAAW,CAAC,KAAK,KAAK;QAC9C;;QAEA,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;YACrC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC;AACnD,QAAA,CAAC,CAAC;IACJ;IAEA,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC;IACjE;AAEA,IAAA,kBAAkB,CAAC,CAAC,EAAA;AAClB,QAAA,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;AACpC,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,aAAa;AACxB,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,SAAA,CAAC;IACJ;IAEO,IAAI,GAAA;AACT,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;AAC7B,YAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE;AAC/B,YAAA,IAAI,CAAC;iBACF,IAAI,CAAC,uBAAuB,EAAE;gBAC7B,IAAI,EAAE,IAAI,CAAC,SAAS;;AAEpB,gBAAA,IAAI,EAAE;oBACJ,eAAe,EAAE,IAAI,CAAC,eAAe;AACrC,oBAAA,yBAAyB,EAAE,IAAI,CAAC,IAAI,KAAK,UAAU,GAAG,KAAK,GAAG,IAAI;oBAClE,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,aAAa,EAAE,IAAI,CAAC,IAAI;AACxB,oBAAA,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;oBAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,QAAQ,EAAE,IAAI,CAAC,UAAU;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;oBACnD,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;oBAC3C,+BAA+B,EAC7B,IAAI,CAAC,+BAA+B;oBACtC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;oBACrD,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;oBAC3D,cAAc,EAAE,IAAI,CAAC,cAAc;AACpC,iBAAA;gBACD,KAAK,EAAE,IAAI,CAAC,OAAO;;aAEpB;AACA,iBAAA,IAAI,CAAC,CAAC,CAAC,KAAI;AACV,gBAAA,IAAI,CAAC,CAAC,IAAI,EAAE;;AAEV,oBAAA,IAAI,CAAC,aAAa,GAAG,EAAE;oBACvB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACrB,wBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9B,oBAAA,CAAC,CAAC;;;AAGF,oBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;wBAC1B,IAAI,EAAE,IAAI,CAAC,aAAa;AACxB,wBAAA,SAAS,EAAE,IAAI;AACf,wBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;AACpC,qBAAA,CAAC;oBACF,IAAI,OAAO,EAAE;AACX,wBAAA,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;oBACjB;gBACF;qBAAO;oBACL,IAAI,OAAO,EAAE;AACX,wBAAA,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;oBAC7B;gBACF;AAEA,gBAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;AAC1B,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACJ;uGA9MW,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAJ,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,45BAHd,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,0EAO/D,YAAY,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAqBZ,qBAAqB,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,cAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAGlB,gBAAgB,0KChEnC,uhGA8EA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,KAAA,EAAA,UAAA,EAAA,aAAA,EAAA,MAAA,EAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,eAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FD1Ca,cAAc,EAAA,UAAA,EAAA,CAAA;kBAR1B,SAAS;+BACE,QAAQ,EAAA,aAAA,EAEH,iBAAiB,CAAC,IAAI,QAC/B,EAAE,KAAK,EAAE,aAAa,EAAE,EAAA,SAAA,EACnB,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAA,cAAgB,EAAE,CAAC,EAAA,UAAA,EACjE,KAAK,EAAA,QAAA,EAAA,uhGAAA,EAAA;8GAOT,kBAAkB,EAAA,CAAA;sBADzB,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAKjC,UAAU,EAAA,CAAA;sBADpB;gBAeD,SAAS,EAAA,CAAA;sBADR,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAIxC,UAAU,EAAA,CAAA;sBADT,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,qBAAqB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAI7C,OAAO,EAAA,CAAA;sBADd,eAAe;uBAAC,gBAAgB;gBAIjC,WAAW,EAAA,CAAA;sBADV,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAI9C,SAAS,EAAA,CAAA;sBADR;gBAID,WAAW,EAAA,CAAA;sBADV;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,aAAa,EAAA,CAAA;sBADZ;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,SAAS,EAAA,CAAA;sBADR;gBAID,UAAU,EAAA,CAAA;sBADT;gBAGD,aAAa,EAAA,CAAA;sBADZ;gBAID,sBAAsB,EAAA,CAAA;sBADrB;gBAID,kBAAkB,EAAA,CAAA;sBADjB;gBAOD,+BAA+B,EAAA,CAAA;sBAD9B;gBAID,uBAAuB,EAAA,CAAA;sBADtB;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,QAAQ,EAAA,CAAA;sBADP;gBAID,UAAU,EAAA,CAAA;sBADT;gBAID,IAAI,EAAA,CAAA;sBADH;gBAID,OAAO,EAAA,CAAA;sBADN;gBAID,IAAI,EAAA,CAAA;sBADH;gBAID,WAAW,EAAA,CAAA;sBADV;gBAID,iBAAiB,EAAA,CAAA;sBADhB;gBAMD,GAAG,EAAA,CAAA;sBADF;gBAGQ,SAAS,EAAA,CAAA;sBAAjB;gBAGD,0BAA0B,EAAA,CAAA;sBADzB;gBAID,eAAe,EAAA,CAAA;sBADd;gBAID,cAAc,EAAA,CAAA;sBADb;;;MElIU,WAAW,CAAA;uGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAX,WAAW,EAAA,YAAA,EAAA,CALL,cAAc,EAAE,uBAAuB,aAC5C,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACtI,cAAc,EAAE,uBAAuB,CAAA,EAAA,CAAA;AAGxC,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,EAAA,OAAA,EAAA,CAJV,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,CAAA,EAAA,CAAA;;2FAIvI,WAAW,EAAA,UAAA,EAAA,CAAA;kBANvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE,CAAC,cAAc,EAAE,uBAAuB,CAAC;AACvD,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,CAAC;AACjJ,oBAAA,OAAO,EAAE,CAAC,cAAc,EAAE,uBAAuB,CAAC;AAClD,oBAAA,SAAS,EAAE;AACd,iBAAA;;;ACdD;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"acorex-data-grid.mjs","sources":["../tmp-esm2022/lib/data-grid/templates/cell-template.component.js","../tmp-esm2022/lib/data-grid/columns/column.component.js","../tmp-esm2022/lib/data-grid/filters/filter.component.js","../tmp-esm2022/lib/data-grid/columns/check-column.component.js","../tmp-esm2022/lib/data-grid/columns/column-groups.component.js","../tmp-esm2022/lib/data-grid/columns/command-column.component.js","../tmp-esm2022/lib/data-grid/columns/date-column.component.js","../tmp-esm2022/lib/data-grid/columns/selection-column.component.js","../tmp-esm2022/lib/data-grid/columns/text-column.component.js","../tmp-esm2022/lib/data-grid/columns/row-number-column.component.js","../tmp-esm2022/lib/data-grid/datagrid.token.js","../tmp-esm2022/lib/data-grid/templates/detail-template.component.js","../tmp-esm2022/lib/data-grid/templates/row-template.component.js","../tmp-esm2022/lib/data-grid/datagrid.component.js","../tmp-esm2022/lib/data-grid/datagrid.module.js","../tmp-esm2022/lib/data-lov/data-lov-popup/data-lov-popup.component.js","../tmp-esm2022/lib/data-lov/data-lov.component.js","../tmp-esm2022/lib/data-lov/data-lov.module.js","../tmp-esm2022/acorex-data-grid.js"],"sourcesContent":["import { Component, ContentChild, TemplateRef } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class AXDataGridCellTemplateComponent {\n templateRef;\n renderer;\n params;\n constructor() {\n this.renderer = AXDataGridCellTemplateRenderer;\n }\n ngOnInit() {\n this.params = {\n templateRef: this.templateRef\n };\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridCellTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridCellTemplateComponent, isStandalone: false, selector: \"ax-cell-template\", queries: [{ propertyName: \"templateRef\", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: `<ng-content></ng-content>\n `, isInline: true });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridCellTemplateComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-cell-template',\n template: `<ng-content></ng-content>\n `,\n standalone: false\n }]\n }], ctorParameters: () => [], propDecorators: { templateRef: [{\n type: ContentChild,\n args: [TemplateRef, { static: true }]\n }] } });\nexport class AXDataGridCellTemplateRenderer {\n rowData;\n templateRef;\n constructor() { }\n agInit(params) {\n this.rowData = params.data;\n this.templateRef = params.templateRef;\n }\n refresh(params) {\n this.rowData = params.data;\n return true;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridCellTemplateRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridCellTemplateRenderer, isStandalone: false, selector: \"ng-component\", ngImport: i0, template: `\n <ng-container *ngTemplateOutlet='templateRef; context: { $implicit: rowData }'>\n </ng-container>\n `, isInline: true, dependencies: [{ kind: \"directive\", type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridCellTemplateRenderer, decorators: [{\n type: Component,\n args: [{\n template: `\n <ng-container *ngTemplateOutlet='templateRef; context: { $implicit: rowData }'>\n </ng-container>\n `,\n standalone: false\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtZ3JpZC90ZW1wbGF0ZXMvY2VsbC10ZW1wbGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUEyQixNQUFNLGVBQWUsQ0FBQzs7O0FBVzlGLE1BQU0sT0FBTywrQkFBK0I7SUFDSyxXQUFXLENBQW1CO0lBQzNFLFFBQVEsQ0FBTTtJQUNkLE1BQU0sQ0FBTTtJQUNaO1FBQ0ksSUFBSSxDQUFDLFFBQVEsR0FBRyw4QkFBOEIsQ0FBQztJQUNuRCxDQUFDO0lBQ0QsUUFBUTtRQUNKLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDVixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDaEMsQ0FBQTtJQUNMLENBQUM7dUdBWFEsK0JBQStCOzJGQUEvQiwrQkFBK0Isc0hBQzFCLFdBQVcsOERBTmY7SUFDVjs7MkZBSVMsK0JBQStCO2tCQVAzQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTtJQUNWO29CQUNBLFVBQVUsRUFBRSxLQUFLO2lCQUNwQjt3REFHZ0QsV0FBVztzQkFBdkQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOztBQXFCL0MsTUFBTSxPQUFPLDhCQUE4QjtJQUN2QyxPQUFPLENBQU07SUFDYixXQUFXLENBQW1CO0lBRTlCLGdCQUFnQixDQUFDO0lBRWpCLE1BQU0sQ0FBQyxNQUEyQjtRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBSSxNQUFjLENBQUMsV0FBVyxDQUFDO0lBQ25ELENBQUM7SUFFRCxPQUFPLENBQUMsTUFBMkI7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzNCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7dUdBZFEsOEJBQThCOzJGQUE5Qiw4QkFBOEIseUVBUDdCOzs7S0FHVDs7MkZBSVEsOEJBQThCO2tCQVIxQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRTs7O0tBR1Q7b0JBQ0QsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIFRlbXBsYXRlUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IElDZWxsUmVuZGVyZXJQYXJhbXMgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXgtY2VsbC10ZW1wbGF0ZScsXG4gICAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICBgLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZUNvbXBvbmVudCB7XG4gICAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZiwgeyBzdGF0aWM6IHRydWUgfSkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcmVuZGVyZXI6IGFueTtcbiAgICBwYXJhbXM6IGFueTtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlciA9IEFYRGF0YUdyaWRDZWxsVGVtcGxhdGVSZW5kZXJlcjtcbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGFyYW1zID0ge1xuICAgICAgICAgICAgdGVtcGxhdGVSZWY6IHRoaXMudGVtcGxhdGVSZWZcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD0ndGVtcGxhdGVSZWY7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiByb3dEYXRhIH0nPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZVJlbmRlcmVyIGltcGxlbWVudHMgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIHtcbiAgICByb3dEYXRhOiBhbnk7XG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gICAgYWdJbml0KHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvd0RhdGEgPSBwYXJhbXMuZGF0YTtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZVJlZiA9IChwYXJhbXMgYXMgYW55KS50ZW1wbGF0ZVJlZjtcbiAgICB9XG5cbiAgICByZWZyZXNoKHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IGJvb2xlYW4ge1xuICAgICAgICB0aGlzLnJvd0RhdGEgPSBwYXJhbXMuZGF0YTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufSJdfQ==","import { AXConfig } from '@acorex/core';\nimport { ContentChild, Directive, input, Input } from '@angular/core';\nimport { AXDataGridCellTemplateComponent } from '../templates/cell-template.component';\nimport * as i0 from \"@angular/core\";\nexport class AXGridDataColumn {\n cellTemplate;\n width = 100;\n maxWidth;\n minWidth;\n pinned = null;\n allowSorting = true;\n allowFiltering = AXConfig.get('datagrid.allowFiltering') || false;\n cellClass;\n sort = null;\n field = '';\n caption = '';\n cellRendererParams;\n checkbox = false;\n groupIndex = -1;\n treeIndex = -1;\n enableRowGroup = false;\n hide = false;\n floatingFilter = AXConfig.get('datagrid.floatingFilter') || false;\n disableMenu = false;\n resizable = true;\n menuColumnDisable = false;\n menuItemDisable = false;\n columnGroupShow;\n wrapText = false;\n cellStyle = {};\n filter = input('textColumnFilter', ...(ngDevMode ? [{ debugName: \"filter\" }] : []));\n filterParams = input({\n values: [],\n debounceMs: 100,\n suppressSelectAll: true,\n applyMiniFilterWhileTyping: true,\n suppressMiniFilter: true,\n }, ...(ngDevMode ? [{ debugName: \"filterParams\" }] : []));\n constructor() { }\n render() {\n const col = {\n field: this.field,\n width: this.width,\n };\n col.resizable = this.resizable;\n col.suppressHeaderMenuButton = this.disableMenu;\n col.menuTabs = ['filterMenuTab', 'columnsMenuTab', 'generalMenuTab'];\n col.floatingFilter = this.floatingFilter;\n col.suppressHeaderFilterButton = true;\n if (this.filterParams().values.length) {\n col.suppressHeaderFilterButton = false;\n }\n if (this.wrapText) {\n col.wrapText = true;\n col.autoHeight = true;\n col.wrapHeaderText = true;\n col.autoHeaderHeight = true;\n }\n if (!this.allowFiltering) {\n col.filter = false;\n col.menuTabs = col.menuTabs.filter((c) => c != 'filterMenuTab');\n col.floatingFilter = false;\n }\n else {\n col.filterParams = {\n ...this.filterParams(),\n };\n }\n if (this.menuColumnDisable == true) {\n col.menuTabs = col.menuTabs.filter((c) => c != 'columnsMenuTab');\n }\n if (this.menuItemDisable == true) {\n col.menuTabs = col.menuTabs.filter((c) => c != 'generalMenuTab');\n }\n if (this.caption) {\n col.headerName = this.caption;\n }\n if (this.minWidth) {\n col.minWidth = this.minWidth;\n }\n if (this.maxWidth) {\n col.maxWidth = this.maxWidth;\n }\n if (this.pinned) {\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\n // TODO: Change based on layout\n }\n col.sortable = this.allowSorting;\n if (this.sort) {\n col.sort = this.sort;\n }\n if (this.groupIndex >= 0) {\n col.rowGroupIndex = this.groupIndex;\n col.rowGroup = true;\n this.enableRowGroup = true;\n }\n if (this.treeIndex >= 0) {\n col.rowGroupIndex = this.treeIndex;\n col.rowGroup = false;\n }\n if (this.hide) {\n col.hide = true;\n }\n if (this.enableRowGroup) {\n col.enableRowGroup = this.enableRowGroup;\n }\n if (this.cellClass) {\n const THAT = this;\n if (this.cellClass instanceof Function) {\n col.cellClass = (p) => {\n return THAT.cellClass({\n column: THAT,\n rowIndex: p.node.rowIndex,\n rowLevel: p.node.level,\n data: p.data,\n value: p.value,\n });\n };\n }\n else {\n col.cellClass = this.cellClass;\n }\n }\n if (Object.keys(this.cellStyle)?.length) {\n col.cellStyle = this.cellStyle;\n }\n if (this.cellTemplate != null) {\n col.cellRenderer = this.cellTemplate.renderer;\n col.cellRendererParams = this.cellTemplate.params;\n }\n if (this.columnGroupShow) {\n col.columnGroupShow = this.columnGroupShow;\n }\n if (this.checkbox) {\n col.checkboxSelection = (params) => {\n return true;\n };\n }\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridDataColumn, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: AXGridDataColumn, isStandalone: true, inputs: { width: { classPropertyName: \"width\", publicName: \"width\", isSignal: false, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: \"maxWidth\", publicName: \"maxWidth\", isSignal: false, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: \"minWidth\", publicName: \"minWidth\", isSignal: false, isRequired: false, transformFunction: null }, pinned: { classPropertyName: \"pinned\", publicName: \"pinned\", isSignal: false, isRequired: false, transformFunction: null }, allowSorting: { classPropertyName: \"allowSorting\", publicName: \"allowSorting\", isSignal: false, isRequired: false, transformFunction: null }, allowFiltering: { classPropertyName: \"allowFiltering\", publicName: \"allowFiltering\", isSignal: false, isRequired: false, transformFunction: null }, cellClass: { classPropertyName: \"cellClass\", publicName: \"cellClass\", isSignal: false, isRequired: false, transformFunction: null }, sort: { classPropertyName: \"sort\", publicName: \"sort\", isSignal: false, isRequired: false, transformFunction: null }, field: { classPropertyName: \"field\", publicName: \"field\", isSignal: false, isRequired: false, transformFunction: null }, caption: { classPropertyName: \"caption\", publicName: \"caption\", isSignal: false, isRequired: false, transformFunction: null }, cellRendererParams: { classPropertyName: \"cellRendererParams\", publicName: \"cellRendererParams\", isSignal: false, isRequired: false, transformFunction: null }, checkbox: { classPropertyName: \"checkbox\", publicName: \"checkbox\", isSignal: false, isRequired: false, transformFunction: null }, groupIndex: { classPropertyName: \"groupIndex\", publicName: \"groupIndex\", isSignal: false, isRequired: false, transformFunction: null }, treeIndex: { classPropertyName: \"treeIndex\", publicName: \"treeIndex\", isSignal: false, isRequired: false, transformFunction: null }, enableRowGroup: { classPropertyName: \"enableRowGroup\", publicName: \"enableRowGroup\", isSignal: false, isRequired: false, transformFunction: null }, hide: { classPropertyName: \"hide\", publicName: \"hide\", isSignal: false, isRequired: false, transformFunction: null }, floatingFilter: { classPropertyName: \"floatingFilter\", publicName: \"floatingFilter\", isSignal: false, isRequired: false, transformFunction: null }, disableMenu: { classPropertyName: \"disableMenu\", publicName: \"disableMenu\", isSignal: false, isRequired: false, transformFunction: null }, resizable: { classPropertyName: \"resizable\", publicName: \"resizable\", isSignal: false, isRequired: false, transformFunction: null }, menuColumnDisable: { classPropertyName: \"menuColumnDisable\", publicName: \"menuColumnDisable\", isSignal: false, isRequired: false, transformFunction: null }, menuItemDisable: { classPropertyName: \"menuItemDisable\", publicName: \"menuItemDisable\", isSignal: false, isRequired: false, transformFunction: null }, columnGroupShow: { classPropertyName: \"columnGroupShow\", publicName: \"columnGroupShow\", isSignal: false, isRequired: false, transformFunction: null }, wrapText: { classPropertyName: \"wrapText\", publicName: \"wrapText\", isSignal: false, isRequired: false, transformFunction: null }, cellStyle: { classPropertyName: \"cellStyle\", publicName: \"cellStyle\", isSignal: false, isRequired: false, transformFunction: null }, filter: { classPropertyName: \"filter\", publicName: \"filter\", isSignal: true, isRequired: false, transformFunction: null }, filterParams: { classPropertyName: \"filterParams\", publicName: \"filterParams\", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: \"cellTemplate\", first: true, predicate: AXDataGridCellTemplateComponent, descendants: true }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridDataColumn, decorators: [{\n type: Directive\n }], ctorParameters: () => [], propDecorators: { cellTemplate: [{\n type: ContentChild,\n args: [AXDataGridCellTemplateComponent]\n }], width: [{\n type: Input\n }], maxWidth: [{\n type: Input\n }], minWidth: [{\n type: Input\n }], pinned: [{\n type: Input\n }], allowSorting: [{\n type: Input\n }], allowFiltering: [{\n type: Input\n }], cellClass: [{\n type: Input\n }], sort: [{\n type: Input\n }], field: [{\n type: Input\n }], caption: [{\n type: Input\n }], cellRendererParams: [{\n type: Input\n }], checkbox: [{\n type: Input\n }], groupIndex: [{\n type: Input\n }], treeIndex: [{\n type: Input\n }], enableRowGroup: [{\n type: Input\n }], hide: [{\n type: Input\n }], floatingFilter: [{\n type: Input\n }], disableMenu: [{\n type: Input\n }], resizable: [{\n type: Input\n }], menuColumnDisable: [{\n type: Input\n }], menuItemDisable: [{\n type: Input\n }], columnGroupShow: [{\n type: Input\n }], wrapText: [{\n type: Input\n }], cellStyle: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9saWIvZGF0YS1ncmlkL2NvbHVtbnMvY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBSXZGLE1BQU0sT0FBZ0IsZ0JBQWdCO0lBRXBDLFlBQVksQ0FBa0M7SUFHOUMsS0FBSyxHQUFXLEdBQUcsQ0FBQztJQUdwQixRQUFRLENBQVM7SUFHakIsUUFBUSxDQUFTO0lBR2pCLE1BQU0sR0FBMkIsSUFBSSxDQUFDO0lBR3RDLFlBQVksR0FBWSxJQUFJLENBQUM7SUFHN0IsY0FBYyxHQUFZLFFBQVEsQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsSUFBSSxLQUFLLENBQUM7SUFHM0UsU0FBUyxDQUVzQztJQUcvQyxJQUFJLEdBQTBCLElBQUksQ0FBQztJQUduQyxLQUFLLEdBQVcsRUFBRSxDQUFDO0lBR25CLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFHckIsa0JBQWtCLENBQU07SUFHeEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUcxQixVQUFVLEdBQVcsQ0FBQyxDQUFDLENBQUM7SUFHeEIsU0FBUyxHQUFXLENBQUMsQ0FBQyxDQUFDO0lBR3ZCLGNBQWMsR0FBWSxLQUFLLENBQUM7SUFHaEMsSUFBSSxHQUFZLEtBQUssQ0FBQztJQUd0QixjQUFjLEdBQVksUUFBUSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUczRSxXQUFXLEdBQVksS0FBSyxDQUFDO0lBRzdCLFNB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QUFFLENBQUM7WUFDbEIsR0FBRyxDQUFDLGlCQUFpQixHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pDLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQzt1R0F4Tm1CLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLHlpSEFDdEIsK0JBQStCOzsyRkFEekIsZ0JBQWdCO2tCQURyQyxTQUFTO3dEQUdSLFlBQVk7c0JBRFgsWUFBWTt1QkFBQywrQkFBK0I7Z0JBSTdDLEtBQUs7c0JBREosS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFNTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb25maWcgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudENoaWxkLCBEaXJlY3RpdmUsIGlucHV0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhHcmlkQ2VsbFBhcmFtcyB9IGZyb20gJy4uL2RhdGFncmlkLmV2ZW50cyc7XG5pbXBvcnQgeyBBWERhdGFHcmlkQ2VsbFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGVtcGxhdGVzL2NlbGwtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEFYRGF0YUdyaWRGaWx0ZXJQaGFyYW1zLCBBWEZpbHRlclR5cGUgfSBmcm9tICcuLi9kYXRhZ3JpZC5tb2RlbCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYR3JpZERhdGFDb2x1bW4ge1xuICBAQ29udGVudENoaWxkKEFYRGF0YUdyaWRDZWxsVGVtcGxhdGVDb21wb25lbnQpXG4gIGNlbGxUZW1wbGF0ZTogQVhEYXRhR3JpZENlbGxUZW1wbGF0ZUNvbXBvbmVudDtcblxuICBASW5wdXQoKVxuICB3aWR0aDogbnVtYmVyID0gMTAwO1xuXG4gIEBJbnB1dCgpXG4gIG1heFdpZHRoOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgbWluV2lkdGg6IG51bWJlcjtcblxuICBASW5wdXQoKVxuICBwaW5uZWQ6ICdzdGFydCcgfCAnZW5kJyB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIGFsbG93U29ydGluZzogYm9vbGVhbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgYWxsb3dGaWx0ZXJpbmc6IGJvb2xlYW4gPSBBWENvbmZpZy5nZXQoJ2RhdGFncmlkLmFsbG93RmlsdGVyaW5nJykgfHwgZmFsc2U7XG5cbiAgQElucHV0KClcbiAgY2VsbENsYXNzOiAoXG4gICAgcGFyYW1zOiBBWEdyaWRDZWxsUGFyYW1zXG4gICkgPT4gKHN0cmluZyB8IHN0cmluZ1tdKSB8IChzdHJpbmcgfCBzdHJpbmdbXSk7XG5cbiAgQElucHV0KClcbiAgc29ydDogJ2FzYycgfCAnZGVzYycgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBmaWVsZDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgY2FwdGlvbjogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgY2VsbFJlbmRlcmVyUGFyYW1zOiBhbnk7XG5cbiAgQElucHV0KClcbiAgY2hlY2tib3g6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBncm91cEluZGV4OiBudW1iZXIgPSAtMTtcblxuICBASW5wdXQoKVxuICB0cmVlSW5kZXg6IG51bWJlciA9IC0xO1xuXG4gIEBJbnB1dCgpXG4gIGVuYWJsZVJvd0dyb3VwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgaGlkZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGZsb2F0aW5nRmlsdGVyOiBib29sZWFuID0gQVhDb25maWcuZ2V0KCdkYXRhZ3JpZC5mbG9hdGluZ0ZpbHRlcicpIHx8IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVNZW51OiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcmVzaXphYmxlOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBtZW51Q29sdW1uRGlzYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG1lbnVJdGVtRGlzYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGNvbHVtbkdyb3VwU2hvdzogJ29wZW4nIHwgJ2Nsb3NlZCc7XG5cbiAgQElucHV0KClcbiAgd3JhcFRleHQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBjZWxsU3R5bGU6IE9iamVjdCA9IHt9O1xuXG4gIGZpbHRlciA9IGlucHV0PEFYRmlsdGVyVHlwZT4oJ3RleHRDb2x1bW5GaWx0ZXInKTtcblxuICBmaWx0ZXJQYXJhbXMgPSBpbnB1dDxBWERhdGFHcmlkRmlsdGVyUGhhcmFtcz4oe1xuICAgIHZhbHVlczogW10sXG4gICAgZGVib3VuY2VNczogMTAwLFxuICAgIHN1cHByZXNzU2VsZWN0QWxsOiB0cnVlLFxuICAgIGFwcGx5TWluaUZpbHRlcldoaWxlVHlwaW5nOiB0cnVlLFxuICAgIHN1cHByZXNzTWluaUZpbHRlcjogdHJ1ZSxcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHJlbmRlcigpOiBhbnkge1xuICAgIGNvbnN0IGNvbDogYW55ID0ge1xuICAgICAgZmllbGQ6IHRoaXMuZmllbGQsXG4gICAgICB3aWR0aDogdGhpcy53aWR0aCxcbiAgICB9O1xuXG4gICAgY29sLnJlc2l6YWJsZSA9IHRoaXMucmVzaXphYmxlO1xuXG4gICAgY29sLnN1cHByZXNzSGVhZGVyTWVudUJ1dHRvbiA9IHRoaXMuZGlzYWJsZU1lbnU7XG5cbiAgICBjb2wubWVudVRhYnMgPSBbJ2ZpbHRlck1lbnVUYWInLCAnY29sdW1uc01lbnVUYWInLCAnZ2VuZXJhbE1lbnVUYWInXTtcblxuICAgIGNvbC5mbG9hdGluZ0ZpbHRlciA9IHRoaXMuZmxvYXRpbmdGaWx0ZXI7XG5cbiAgICBjb2wuc3VwcHJlc3NIZWFkZXJGaWx0ZXJCdXR0b24gPSB0cnVlO1xuXG4gICAgaWYgKHRoaXMuZmlsdGVyUGFyYW1zKCkudmFsdWVzLmxlbmd0aCkge1xuICAgICAgY29sLnN1cHByZXNzSGVhZGVyRmlsdGVyQnV0dG9uID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMud3JhcFRleHQpIHtcbiAgICAgIGNvbC53cmFwVGV4dCA9IHRydWU7XG5cbiAgICAgIGNvbC5hdXRvSGVpZ2h0ID0gdHJ1ZTtcblxuICAgICAgY29sLndyYXBIZWFkZXJUZXh0ID0gdHJ1ZTtcblxuICAgICAgY29sLmF1dG9IZWFkZXJIZWlnaHQgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuYWxsb3dGaWx0ZXJpbmcpIHtcbiAgICAgIGNvbC5maWx0ZXIgPSBmYWxzZTtcbiAgICAgIGNvbC5tZW51VGFicyA9IGNvbC5tZW51VGFicy5maWx0ZXIoKGMpID0+IGMgIT0gJ2ZpbHRlck1lbnVUYWInKTtcbiAgICAgIGNvbC5mbG9hdGluZ0ZpbHRlciA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb2wuZmlsdGVyUGFyYW1zID0ge1xuICAgICAgICAuLi50aGlzLmZpbHRlclBhcmFtcygpLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tZW51Q29sdW1uRGlzYWJsZSA9PSB0cnVlKSB7XG4gICAgICBjb2wubWVudVRhYnMgPSBjb2wubWVudVRhYnMuZmlsdGVyKChjKSA9PiBjICE9ICdjb2x1bW5zTWVudVRhYicpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1lbnVJdGVtRGlzYWJsZSA9PSB0cnVlKSB7XG4gICAgICBjb2wubWVudVRhYnMgPSBjb2wubWVudVRhYnMuZmlsdGVyKChjKSA9PiBjICE9ICdnZW5lcmFsTWVudVRhYicpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNhcHRpb24pIHtcbiAgICAgIGNvbC5oZWFkZXJOYW1lID0gdGhpcy5jYXB0aW9uO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1pbldpZHRoKSB7XG4gICAgICBjb2wubWluV2lkdGggPSB0aGlzLm1pbldpZHRoO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1heFdpZHRoKSB7XG4gICAgICBjb2wubWF4V2lkdGggPSB0aGlzLm1heFdpZHRoO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnBpbm5lZCkge1xuICAgICAgY29sLnBpbm5lZCA9IHRoaXMucGlubmVkID09PSAnc3RhcnQnID8gJ3JpZ2h0JyA6ICdsZWZ0JztcbiAgICAgIC8vIFRPRE86IENoYW5nZSBiYXNlZCBvbiBsYXlvdXRcbiAgICB9XG5cbiAgICBjb2wuc29ydGFibGUgPSB0aGlzLmFsbG93U29ydGluZztcblxuICAgIGlmICh0aGlzLnNvcnQpIHtcbiAgICAgIGNvbC5zb3J0ID0gdGhpcy5zb3J0O1xuICAgIH1cblxuICAgIGlmICh0aGlzLmdyb3VwSW5kZXggPj0gMCkge1xuICAgICAgY29sLnJvd0dyb3VwSW5kZXggPSB0aGlzLmdyb3VwSW5kZXg7XG4gICAgICBjb2wucm93R3JvdXAgPSB0cnVlO1xuICAgICAgdGhpcy5lbmFibGVSb3dHcm91cCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHJlZUluZGV4ID49IDApIHtcbiAgICAgIGNvbC5yb3dHcm91cEluZGV4ID0gdGhpcy50cmVlSW5kZXg7XG4gICAgICBjb2wucm93R3JvdXAgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5oaWRlKSB7XG4gICAgICBjb2wuaGlkZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW5hYmxlUm93R3JvdXApIHtcbiAgICAgIGNvbC5lbmFibGVSb3dHcm91cCA9IHRoaXMuZW5hYmxlUm93R3JvdXA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2VsbENsYXNzKSB7XG4gICAgICBjb25zdCBUSEFUID0gdGhpcztcbiAgICAgIGlmICh0aGlzLmNlbGxDbGFzcyBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgICAgIGNvbC5jZWxsQ2xhc3MgPSAocCkgPT4ge1xuICAgICAgICAgIHJldHVybiBUSEFULmNlbGxDbGFzcyh7XG4gICAgICAgICAgICBjb2x1bW46IFRIQVQsXG4gICAgICAgICAgICByb3dJbmRleDogcC5ub2RlLnJvd0luZGV4LFxuICAgICAgICAgICAgcm93TGV2ZWw6IHAubm9kZS5sZXZlbCxcbiAgICAgICAgICAgIGRhdGE6IHAuZGF0YSxcbiAgICAgICAgICAgIHZhbHVlOiBwLnZhbHVlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29sLmNlbGxDbGFzcyA9IHRoaXMuY2VsbENsYXNzO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyh0aGlzLmNlbGxTdHlsZSk/Lmxlbmd0aCkge1xuICAgICAgY29sLmNlbGxTdHlsZSA9IHRoaXMuY2VsbFN0eWxlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNlbGxUZW1wbGF0ZSAhPSBudWxsKSB7XG4gICAgICBjb2wuY2VsbFJlbmRlcmVyID0gdGhpcy5jZWxsVGVtcGxhdGUucmVuZGVyZXI7XG4gICAgICBjb2wuY2VsbFJlbmRlcmVyUGFyYW1zID0gdGhpcy5jZWxsVGVtcGxhdGUucGFyYW1zO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbHVtbkdyb3VwU2hvdykge1xuICAgICAgY29sLmNvbHVtbkdyb3VwU2hvdyA9IHRoaXMuY29sdW1uR3JvdXBTaG93O1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNoZWNrYm94KSB7XG4gICAgICBjb2wuY2hlY2tib3hTZWxlY3Rpb24gPSAocGFyYW1zKSA9PiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29sO1xuICB9XG59XG4iXX0=","import { Component, ViewEncapsulation } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXDataGridFilterComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridFilterComponent, isStandalone: false, selector: \"ax-data-grid-filter\", ngImport: i0, template: `\n <div class='ax-grid-filter-container'>\n <ng-content></ng-content>\n <div class='btn-group' role='group'>\n <button type='button' class='btn btn-primary btn-sm'>\n <i class='fas fa-filter'></i>\n </button>\n <button type='button' class='btn btn-danger btn-sm'>\n <i class='fas fa-trash-alt'></i>\n </button>\n </div>\n </div>\n `, isInline: true, encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridFilterComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-data-grid-filter',\n template: `\n <div class='ax-grid-filter-container'>\n <ng-content></ng-content>\n <div class='btn-group' role='group'>\n <button type='button' class='btn btn-primary btn-sm'>\n <i class='fas fa-filter'></i>\n </button>\n <button type='button' class='btn btn-danger btn-sm'>\n <i class='fas fa-trash-alt'></i>\n </button>\n </div>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n standalone: false\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9saWIvZGF0YS1ncmlkL2ZpbHRlcnMvZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQXFCN0QsTUFBTSxPQUFPLHlCQUF5Qjt1R0FBekIseUJBQXlCOzJGQUF6Qix5QkFBeUIsZ0ZBaEJ4Qjs7Ozs7Ozs7Ozs7O0dBWVg7OzJGQUlVLHlCQUF5QjtrQkFsQnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7R0FZWDtvQkFDQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXgtZGF0YS1ncmlkLWZpbHRlcicsXG4gICAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPSdheC1ncmlkLWZpbHRlci1jb250YWluZXInPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPGRpdiBjbGFzcz0nYnRuLWdyb3VwJyByb2xlPSdncm91cCc+XG4gICAgICAgIDxidXR0b24gdHlwZT0nYnV0dG9uJyBjbGFzcz0nYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSc+XG4gICAgICAgICAgPGkgY2xhc3M9J2ZhcyBmYS1maWx0ZXInPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT0nYnV0dG9uJyBjbGFzcz0nYnRuIGJ0bi1kYW5nZXIgYnRuLXNtJz5cbiAgICAgICAgICA8aSBjbGFzcz0nZmFzIGZhLXRyYXNoLWFsdCc+PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZEZpbHRlckNvbXBvbmVudCB7fVxuIl19","import { Component, ChangeDetectionStrategy, ViewChild, ViewContainerRef, } from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components\";\nimport * as i2 from \"../filters/filter.component\";\nexport class AXGridCheckColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n render() {\n const col = super.render();\n if (!col.cellRenderer) {\n col.cellRenderer = BooleanRenderer;\n }\n if (this.allowFiltering) {\n col.filterFramework = BooleanFilterRenderer;\n }\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridCheckColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridCheckColumn, isStandalone: false, selector: \"ax-check-column\", providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridCheckColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-check-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], ctorParameters: () => [] });\nexport class BooleanRenderer {\n value;\n constructor() { }\n agInit(params) {\n if (params.value === 1) {\n params.value = true;\n }\n else if (params.value === 0) {\n params.value = false;\n }\n this.value = params.value;\n }\n refresh(params) {\n this.value = params.value;\n return true;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: BooleanRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: BooleanRenderer, isStandalone: false, selector: \"ng-component\", ngImport: i0, template: ` <ax-check-box [value]=\"value\" readonly=\"true\"></ax-check-box> `, isInline: true, dependencies: [{ kind: \"component\", type: i1.AXCheckBoxComponent, selector: \"ax-check-box\", inputs: [\"readonly\", \"disabled\", \"size\", \"label\", \"tabIndex\", \"indeterminate\", \"value\"], outputs: [\"onValueChanged\", \"valueChange\", \"onClick\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: BooleanRenderer, decorators: [{\n type: Component,\n args: [{\n template: ` <ax-check-box [value]=\"value\" readonly=\"true\"></ax-check-box> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], ctorParameters: () => [] });\nexport class BooleanFilterRenderer {\n value = null;\n params;\n valueGetter;\n input;\n selectItem = [\n { value: 0, label: 'True' },\n { value: 1, label: 'False' },\n ];\n agInit(params) {\n this.params = params;\n this.valueGetter = params.valueGetter;\n }\n isFilterActive() {\n return this.value !== null && this.value !== undefined;\n }\n doesFilterPass(params) {\n return this.value === this.valueGetter(params.node);\n }\n getModel() {\n return { value: this.value };\n }\n setModel(model) {\n this.value = model ? model.value : null;\n }\n ngAfterViewInit(params) {\n window.setTimeout(() => {\n this.input.element.nativeElement.focus();\n });\n }\n onChange(newValue) {\n if (this.value !== newValue) {\n this.value = newValue;\n this.params.filterChangedCallback();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: BooleanFilterRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: BooleanFilterRenderer, isStandalone: false, selector: \"ng-component\", viewQueries: [{ propertyName: \"input\", first: true, predicate: [\"input\"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `\n <ax-data-grid-filter>\n <ax-select-box label=\"Select Box\" [items]=\"selectItem\"></ax-select-box>\n </ax-data-grid-filter>\n `, isInline: true, dependencies: [{ kind: \"component\", type: i1.AXSelectBoxComponent, selector: \"ax-select-box\", inputs: [\"showDropDownButton\", \"rowInputTemplate\", \"showCheckBox\", \"readonly\", \"rtl\", \"disabled\", \"placeholder\", \"size\", \"allowNull\", \"textAlign\", \"bufferSize\", \"remoteOperation\", \"fitParent\", \"dropdownWidth\", \"multiLine\", \"onDemandTranslate\", \"dataSource\", \"validation\", \"disabledCallback\", \"allowSearch\", \"textField\", \"valueField\", \"disabledField\", \"mode\", \"items\", \"selectedItems\", \"selectedValues\"], outputs: [\"dropdownToggle\", \"itemsChange\", \"onBlur\", \"onFocus\", \"selectionChanged\", \"selectedItemsChange\", \"selectedValuesChange\"] }, { kind: \"component\", type: i2.AXDataGridFilterComponent, selector: \"ax-data-grid-filter\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: BooleanFilterRenderer, decorators: [{\n type: Component,\n args: [{\n template: `\n <ax-data-grid-filter>\n <ax-select-box label=\"Select Box\" [items]=\"selectItem\"></ax-select-box>\n </ax-data-grid-filter>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], propDecorators: { input: [{\n type: ViewChild,\n args: ['input', { static: true, read: ViewContainerRef }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9saWIvZGF0YS1ncmlkL2NvbHVtbnMvY2hlY2stY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBaUJ0RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBQ3JEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsTUFBTTtRQUNKLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsZUFBZSxDQUFDO1FBQ3JDLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixHQUFHLENBQUMsZUFBZSxHQUFHLHFCQUFxQixDQUFDO1FBQzlDLENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7dUdBZFUsaUJBQWlCOzJGQUFqQixpQkFBaUIsK0RBSmpCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLENBQUMsaURBRGhFLEVBQUU7OzJGQUtELGlCQUFpQjtrQkFQN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsRUFBRTtvQkFDWixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLG1CQUFtQixFQUFFLENBQUM7b0JBQzFF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QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjs4QkFLc0UsS0FBSztzQkFBekUsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi9jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCwgSUZpbHRlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7XG4gIElDZWxsUmVuZGVyZXJQYXJhbXMsXG4gIElGaWx0ZXJQYXJhbXMsXG4gIFJvd05vZGUsXG4gIElEb2VzRmlsdGVyUGFzc1BhcmFtcyxcbiAgSUFmdGVyR3VpQXR0YWNoZWRQYXJhbXMsXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY2hlY2stY29sdW1uJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYR3JpZERhdGFDb2x1bW4sIHVzZUV4aXN0aW5nOiBBWEdyaWRDaGVja0NvbHVtbiB9XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBWEdyaWRDaGVja0NvbHVtbiBleHRlbmRzIEFYR3JpZERhdGFDb2x1bW4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGNvbCA9IHN1cGVyLnJlbmRlcigpO1xuICAgIGlmICghY29sLmNlbGxSZW5kZXJlcikge1xuICAgICAgY29sLmNlbGxSZW5kZXJlciA9IEJvb2xlYW5SZW5kZXJlcjtcbiAgICB9XG4gICAgaWYgKHRoaXMuYWxsb3dGaWx0ZXJpbmcpIHtcbiAgICAgIGNvbC5maWx0ZXJGcmFtZXdvcmsgPSBCb29sZWFuRmlsdGVyUmVuZGVyZXI7XG4gICAgfVxuICAgIHJldHVybiBjb2w7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgIDxheC1jaGVjay1ib3ggW3ZhbHVlXT1cInZhbHVlXCIgcmVhZG9ubHk9XCJ0cnVlXCI+PC9heC1jaGVjay1ib3g+IGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQm9vbGVhblJlbmRlcmVyIGltcGxlbWVudHMgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIHtcbiAgdmFsdWU6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKCkge31cbiAgYWdJbml0KHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuICAgIGlmIChwYXJhbXMudmFsdWUgPT09IDEpIHtcbiAgICAgIHBhcmFtcy52YWx1ZSA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChwYXJhbXMudmFsdWUgPT09IDApIHtcbiAgICAgIHBhcmFtcy52YWx1ZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLnZhbHVlID0gcGFyYW1zLnZhbHVlO1xuICB9XG4gIHJlZnJlc2gocGFyYW1zOiBJQ2VsbFJlbmRlcmVyUGFyYW1zKTogYm9vbGVhbiB7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy52YWx1ZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8YXgtZGF0YS1ncmlkLWZpbHRlcj5cbiAgICAgIDxheC1zZWxlY3QtYm94IGxhYmVsPVwiU2VsZWN0IEJveFwiIFtpdGVtc109XCJzZWxlY3RJdGVtXCI+PC9heC1zZWxlY3QtYm94PlxuICAgIDwvYXgtZGF0YS1ncmlkLWZpbHRlcj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCb29sZWFuRmlsdGVyUmVuZGVyZXIgaW1wbGVtZW50cyBJRmlsdGVyQW5ndWxhckNvbXAge1xuICBwdWJsaWMgdmFsdWU/OiBib29sZWFuID0gbnVsbDtcbiAgcHJpdmF0ZSBwYXJhbXM6IElGaWx0ZXJQYXJhbXM7XG4gIHByaXZhdGUgdmFsdWVHZXR0ZXI6IChyb3dOb2RlOiBSb3dOb2RlKSA9PiBhbnk7XG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgcHVibGljIGlucHV0O1xuXG4gIHNlbGVjdEl0ZW0gPSBbXG4gICAgeyB2YWx1ZTogMCwgbGFiZWw6ICdUcnVlJyB9LFxuICAgIHsgdmFsdWU6IDEsIGxhYmVsOiAnRmFsc2UnIH0sXG4gIF07XG5cbiAgYWdJbml0KHBhcmFtczogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG5cbiAgICB0aGlzLnZhbHVlR2V0dGVyID0gcGFyYW1zLnZhbHVlR2V0dGVyO1xuICB9XG5cbiAgaXNGaWx0ZXJBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWUgIT09IG51bGwgJiYgdGhpcy52YWx1ZSAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZG9lc0ZpbHRlclBhc3MocGFyYW1zOiBJRG9lc0ZpbHRlclBhc3NQYXJhbXMgfCBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZSA9PT0gdGhpcy52YWx1ZUdldHRlcihwYXJhbXMubm9kZSk7XG4gIH1cblxuICBnZXRNb2RlbCgpOiBhbnkge1xuICAgIHJldHVybiB7IHZhbHVlOiB0aGlzLnZhbHVlIH07XG4gIH1cblxuICBzZXRNb2RlbChtb2RlbDogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IG1vZGVsID8gbW9kZWwudmFsdWUgOiBudWxsO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KHBhcmFtczogSUFmdGVyR3VpQXR0YWNoZWRQYXJhbXMpOiB2b2lkIHtcbiAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmlucHV0LmVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH0pO1xuICB9XG5cbiAgb25DaGFuZ2UobmV3VmFsdWUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52YWx1ZSAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMucGFyYW1zLmZpbHRlckNoYW5nZWRDYWxsYmFjaygpO1xuICAgIH1cbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, ContentChildren, QueryList, } from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport * as i0 from \"@angular/core\";\nexport class AXColumnGroupComponent extends AXGridDataColumn {\n columns;\n render() {\n const col = super.render();\n col.children = [];\n this.columns.forEach((elm) => {\n col.children.push(elm.render());\n });\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXColumnGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXColumnGroupComponent, isStandalone: false, selector: \"ax-column-group\", providers: [\n { provide: AXGridDataColumn, useExisting: AXColumnGroupComponent },\n ], queries: [{ propertyName: \"columns\", predicate: AXGridDataColumn }], usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXColumnGroupComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-column-group',\n template: '<ng-content></ng-content>',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXColumnGroupComponent },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n }]\n }], propDecorators: { columns: [{\n type: ContentChildren,\n args: [AXGridDataColumn]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWdyb3Vwcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtZ3JpZC9jb2x1bW5zL2NvbHVtbi1ncm91cHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBV3RELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFFMUQsT0FBTyxDQUE4QjtJQUVyQyxNQUFNO1FBQ0osTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDM0IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7dUdBWFUsc0JBQXNCOzJGQUF0QixzQkFBc0IsK0RBTnBCO1lBQ1AsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFO1NBQ3JFLGtEQUtjLGdCQUFnQixvREFSckIsMkJBQTJCOzsyRkFPNUIsc0JBQXNCO2tCQVRsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDUCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLHdCQUF3QixFQUFFO3FCQUNyRTtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCOzhCQUdDLE9BQU87c0JBRE4sZUFBZTt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi9jb2x1bW4uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdheC1jb2x1bW4tZ3JvdXAnLFxuICAgIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogQVhHcmlkRGF0YUNvbHVtbiwgdXNlRXhpc3Rpbmc6IEFYQ29sdW1uR3JvdXBDb21wb25lbnQgfSxcbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29sdW1uR3JvdXBDb21wb25lbnQgZXh0ZW5kcyBBWEdyaWREYXRhQ29sdW1uIHtcbiAgQENvbnRlbnRDaGlsZHJlbihBWEdyaWREYXRhQ29sdW1uKVxuICBjb2x1bW5zOiBRdWVyeUxpc3Q8QVhHcmlkRGF0YUNvbHVtbj47XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGNvbCA9IHN1cGVyLnJlbmRlcigpO1xuICAgIGNvbC5jaGlsZHJlbiA9IFtdO1xuICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKChlbG0pID0+IHtcbiAgICAgIGNvbC5jaGlsZHJlbi5wdXNoKGVsbS5yZW5kZXIoKSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbDtcbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class AXGridCommandColumn extends AXGridDataColumn {\n items = [];\n onItemClick = new EventEmitter();\n render() {\n const col = super.render();\n if (!col.cellRenderer) {\n col.cellRenderer = CommandRenderer;\n }\n col.cellRendererParams = {\n items: this.items,\n onClick: (e) => {\n this.onItemClick.emit({\n command: e.name,\n data: e.data,\n rowIndex: e.rowIndex,\n rowLevel: e.rowLevel,\n htmlEvent: e.htmlEvent,\n });\n },\n };\n col.sortable = false;\n col.filter = false;\n col.valueGetter = (params) => {\n return this.items;\n };\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridCommandColumn, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridCommandColumn, isStandalone: false, selector: \"ax-command-column\", inputs: { items: \"items\" }, outputs: { onItemClick: \"onItemClick\" }, providers: [{ provide: AXGridDataColumn, useExisting: AXGridCommandColumn }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridCommandColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-command-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCommandColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: false\n }]\n }], propDecorators: { items: [{\n type: Input\n }], onItemClick: [{\n type: Output\n }] } });\nexport class CommandRenderer {\n items = [];\n node;\n clickCallback;\n constructor() { }\n agInit(params) {\n this.mapParams(params);\n }\n refresh(params) {\n this.mapParams(params);\n return true;\n }\n mapParams(params) {\n this.node = params.node;\n this.items =\n typeof params.items == 'function'\n ? params.items({ data: this.node.data })\n : Array.isArray(params.items)\n ? params.items\n : [];\n this.clickCallback = params.onClick;\n }\n onClick(item, e) {\n if (this.clickCallback && !item.disable) {\n this.clickCallback({\n name: item.name,\n rowLevel: this.node.level,\n rowIndex: this.node.rowIndex,\n data: this.node.data,\n htmlEvent: e,\n });\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: CommandRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: CommandRenderer, isStandalone: false, selector: \"ax-command-cell\", ngImport: i0, template: `\n <ng-container *ngFor=\"let item of items; let i = index\">\n <button\n *ngIf=\"item.visible !== false\"\n class=\"ax button md ax-grid-command-button {{\n item.style || 'ax primary blank'\n }}\"\n [class.disabled]=\"item.disable\"\n type=\"button\"\n [title]=\"item.tooltip\"\n [attr.tabindex]=\"i\"\n (click)=\"onClick(item, $event)\"\n >\n <i [ngClass]=\"item.icon\"></i>{{ item.text }}\n </button>\n </ng-container>\n `, isInline: true, dependencies: [{ kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"directive\", type: i1.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }, { kind: \"directive\", type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: CommandRenderer, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-command-cell',\n template: `\n <ng-container *ngFor=\"let item of items; let i = index\">\n <button\n *ngIf=\"item.visible !== false\"\n class=\"ax button md ax-grid-command-button {{\n item.style || 'ax primary blank'\n }}\"\n [class.disabled]=\"item.disable\"\n type=\"button\"\n [title]=\"item.tooltip\"\n [attr.tabindex]=\"i\"\n (click)=\"onClick(item, $event)\"\n >\n <i [ngClass]=\"item.icon\"></i>{{ item.text }}\n </button>\n </ng-container>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvY29sdW1ucy9jb21tYW5kLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFZdEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGdCQUFnQjtJQUV2RCxLQUFLLEdBQTRDLEVBQUUsQ0FBQztJQUdwRCxXQUFXLEdBQ1QsSUFBSSxZQUFZLEVBQXlCLENBQUM7SUFFNUMsTUFBTTtRQUNKLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsZUFBZSxDQUFDO1FBQ3JDLENBQUM7UUFDRCxHQUFHLENBQUMsa0JBQWtCLEdBQUc7WUFDdkIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO29CQUNwQixPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUk7b0JBQ2YsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJO29CQUNaLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTtvQkFDcEIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO29CQUNwQixTQUFTLEVBQUUsQ0FBQyxDQUFDLFNBQVM7aUJBQ3ZCLENBQUMsQ0FBQztZQUNMLENBQUM7U0FDRixD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aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNZW51SXRlbSB9IGZyb20gJ0BhY29yZXgvY29yZSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBJQ2VsbFJlbmRlcmVyUGFyYW1zIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgQVhHcmlkUm93Q29tbWFuZEV2ZW50IH0gZnJvbSAnLi4vZGF0YWdyaWQuZXZlbnRzJztcbmltcG9ydCB7IEFYR3JpZERhdGFDb2x1bW4gfSBmcm9tICcuL2NvbHVtbi5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBBWEdyaWRSb3dDb21tYW5kRnVuY3Rpb24gPSAocm93OiBhbnkpID0+IEFYTWVudUl0ZW1bXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdheC1jb21tYW5kLWNvbHVtbicsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhHcmlkRGF0YUNvbHVtbiwgdXNlRXhpc3Rpbmc6IEFYR3JpZENvbW1hbmRDb2x1bW4gfV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBBWEdyaWRDb21tYW5kQ29sdW1uIGV4dGVuZHMgQVhHcmlkRGF0YUNvbHVtbiB7XG4gIEBJbnB1dCgpXG4gIGl0ZW1zOiBBWE1lbnVJdGVtW10gfCBBWEdyaWRSb3dDb21tYW5kRnVuY3Rpb24gPSBbXTtcblxuICBAT3V0cHV0KClcbiAgb25JdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxBWEdyaWRSb3dDb21tYW5kRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYR3JpZFJvd0NvbW1hbmRFdmVudD4oKTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgY29sID0gc3VwZXIucmVuZGVyKCk7XG4gICAgaWYgKCFjb2wuY2VsbFJlbmRlcmVyKSB7XG4gICAgICBjb2wuY2VsbFJlbmRlcmVyID0gQ29tbWFuZFJlbmRlcmVyO1xuICAgIH1cbiAgICBjb2wuY2VsbFJlbmRlcmVyUGFyYW1zID0ge1xuICAgICAgaXRlbXM6IHRoaXMuaXRlbXMsXG4gICAgICBvbkNsaWNrOiAoZSkgPT4ge1xuICAgICAgICB0aGlzLm9uSXRlbUNsaWNrLmVtaXQoe1xuICAgICAgICAgIGNvbW1hbmQ6IGUubmFtZSxcbiAgICAgICAgICBkYXRhOiBlLmRhdGEsXG4gICAgICAgICAgcm93SW5kZXg6IGUucm93SW5kZXgsXG4gICAgICAgICAgcm93TGV2ZWw6IGUucm93TGV2ZWwsXG4gICAgICAgICAgaHRtbEV2ZW50OiBlLmh0bWxFdmVudCxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH07XG4gICAgY29sLnNvcnRhYmxlID0gZmFsc2U7XG4gICAgY29sLmZpbHRlciA9IGZhbHNlO1xuICAgIGNvbC52YWx1ZUdldHRlciA9IChwYXJhbXMpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zO1xuICAgIH07XG4gICAgcmV0dXJuIGNvbDtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2F4LWNvbW1hbmQtY2VsbCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiaXRlbS52aXNpYmxlICE9PSBmYWxzZVwiXG4gICAgICAgIGNsYXNzPVwiYXggYnV0dG9uIG1kIGF4LWdyaWQtY29tbWFuZC1idXR0b24ge3tcbiAgICAgICAgICBpdGVtLnN0eWxlIHx8ICdheCBwcmltYXJ5IGJsYW5rJ1xuICAgICAgICB9fVwiXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJpdGVtLmRpc2FibGVcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW3RpdGxlXT1cIml0ZW0udG9vbHRpcFwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cImlcIlxuICAgICAgICAoY2xpY2spPVwib25DbGljayhpdGVtLCAkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPGkgW25nQ2xhc3NdPVwiaXRlbS5pY29uXCI+PC9pPnt7IGl0ZW0udGV4dCB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBDb21tYW5kUmVuZGVyZXIgaW1wbGVtZW50cyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAge1xuICBpdGVtczogQVhNZW51SXRlbVtdIHwgQVhHcmlkUm93Q29tbWFuZEZ1bmN0aW9uID0gW107XG4gIG5vZGU6IGFueTtcbiAgcHJpdmF0ZSBjbGlja0NhbGxiYWNrOiBGdW5jdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgYWdJbml0KHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMubWFwUGFyYW1zKHBhcmFtcyk7XG4gIH1cblxuICByZWZyZXNoKHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IGJvb2xlYW4ge1xuICAgIHRoaXMubWFwUGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIG1hcFBhcmFtcyhwYXJhbXM6IGFueSkge1xuICAgIHRoaXMubm9kZSA9IHBhcmFtcy5ub2RlO1xuICAgIHRoaXMuaXRlbXMgPVxuICAgICAgdHlwZW9mIHBhcmFtcy5pdGVtcyA9PSAnZnVuY3Rpb24nXG4gICAgICAgID8gcGFyYW1zLml0ZW1zKHsgZGF0YTogdGhpcy5ub2RlLmRhdGEgfSlcbiAgICAgICAgOiBBcnJheS5pc0FycmF5KHBhcmFtcy5pdGVtcylcbiAgICAgICAgPyBwYXJhbXMuaXRlbXNcbiAgICAgICAgOiBbXTtcbiAgICB0aGlzLmNsaWNrQ2FsbGJhY2sgPSBwYXJhbXMub25DbGljaztcbiAgfVxuXG4gIG9uQ2xpY2soaXRlbTogQVhNZW51SXRlbSwgZTogTW91c2VFdmVudCkge1xuICAgIGlmICh0aGlzLmNsaWNrQ2FsbGJhY2sgJiYgIWl0ZW0uZGlzYWJsZSkge1xuICAgICAgdGhpcy5jbGlja0NhbGxiYWNrKHtcbiAgICAgICAgbmFtZTogaXRlbS5uYW1lLFxuICAgICAgICByb3dMZXZlbDogdGhpcy5ub2RlLmxldmVsLFxuICAgICAgICByb3dJbmRleDogdGhpcy5ub2RlLnJvd0luZGV4LFxuICAgICAgICBkYXRhOiB0aGlzLm5vZGUuZGF0YSxcbiAgICAgICAgaHRtbEV2ZW50OiBlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=","import { AXDatePickerComponent } from '@acorex/components';\nimport { AXConfig, AXDateTime } from '@acorex/core';\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, ViewEncapsulation, } from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components\";\nexport class AXGridDateColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n format;\n type = AXConfig.get('dateTime.type');\n render() {\n const col = super.render();\n col.cellRendererParams = {\n format: this.format,\n };\n col.comparator = (valueA, valueB) => {\n const date1 = AXDateTime.convert(valueA);\n const date2 = AXDateTime.convert(valueB);\n //\n if (date1 === null && date2 === null) {\n return 0;\n }\n if (date1 === null) {\n return -1;\n }\n if (date2 === null) {\n return 1;\n }\n return date1.date.getTime() - date2.date.getTime();\n };\n col.valueFormatter = (params) => {\n const date = AXDateTime.convert(params.value, this.type);\n if (date) {\n return date.format(this.format);\n }\n else {\n return null;\n }\n };\n col.filter = 'agDateColumnFilter';\n col.cellStyle = { 'text-align': 'left' };\n col.floatingFilterComponent = AXDatePickerFilterComponent;\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridDateColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridDateColumn, isStandalone: false, selector: \"ax-date-column\", inputs: { format: \"format\", type: \"type\" }, providers: [{ provide: AXGridDataColumn, useExisting: AXGridDateColumn }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridDateColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-date-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridDateColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n }]\n }], ctorParameters: () => [], propDecorators: { format: [{\n type: Input\n }], type: [{\n type: Input\n }] } });\nexport class AXDatePickerFilterComponent {\n datePicker;\n div;\n selectableHoliday = false;\n type = 'jalali';\n date;\n params;\n picker;\n agInit(params) {\n this.params = params;\n }\n ngAfterViewInit() { }\n ngOnDestroy() { }\n onDateChanged(selectedDates) {\n this.params.parentFilterInstance((instance) => {\n instance.onFloatingFilterChanged('equal', selectedDates);\n });\n //this.date = selectedDates[0] || null;\n // this.params.onDateChanged();\n }\n getDate() {\n return this.date;\n }\n setDate(date) {\n this.date = date || null;\n //this.picker.setDate(date);\n }\n setInputPlaceholder(placeholder) {\n //this.div.nativeElement.setAttribute('placeholder', placeholder);\n }\n onValueChanged(e) {\n this.setDate(e.value);\n this.onDateChanged(e.value);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDatePickerFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDatePickerFilterComponent, isStandalone: false, selector: \"ax-data-picker-filter\", viewQueries: [{ propertyName: \"datePicker\", first: true, predicate: AXDatePickerComponent, descendants: true }, { propertyName: \"div\", first: true, predicate: [\"div\"], descendants: true, read: ElementRef }], ngImport: i0, template: `<ax-date-picker\n [selectableHoliday]=\"selectableHoliday\"\n [allowClear]=\"true\"\n (onValueChanged)=\"onValueChanged($event)\"\n size=\"sm\"\n >\n </ax-date-picker>`, isInline: true, dependencies: [{ kind: \"component\", type: i1.AXDatePickerComponent, selector: \"ax-date-picker\", inputs: [\"selectedDates\", \"dayStyle\", \"dayMinMaxResoan\", \"validation\", \"placeholder\", \"min\", \"max\", \"readonly\", \"disabled\", \"allowClear\", \"textAlign\", \"showToday\", \"selectableHoliday\", \"dateType\", \"showTodayButton\", \"openByClick\", \"size\", \"type\", \"value\"], outputs: [\"typeChange\", \"onValueChanged\", \"valueChange\"] }], encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDatePickerFilterComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-data-picker-filter',\n template: `<ax-date-picker\n [selectableHoliday]=\"selectableHoliday\"\n [allowClear]=\"true\"\n (onValueChanged)=\"onValueChanged($event)\"\n size=\"sm\"\n >\n </ax-date-picker>`,\n host: {},\n encapsulation: ViewEncapsulation.None,\n standalone: false\n }]\n }], propDecorators: { datePicker: [{\n type: ViewChild,\n args: [AXDatePickerComponent]\n }], div: [{\n type: ViewChild,\n args: ['div', { read: ElementRef }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvY29sdW1ucy9kYXRlLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFrQixRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBUXRELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxnQkFBZ0I7SUFDcEQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFHRCxNQUFNLENBQVM7SUFHZixJQUFJLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFckQsTUFBTTtRQUNKLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixHQUFHLENBQUMsa0JBQWtCLEdBQUc7WUFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUM7UUFFRixHQUFHLENBQUMsVUFBVSxHQUFHLENBQUMsTUFBVyxFQUFFLE1BQVcsRUFBRSxFQUFFO1lBQzVDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN6QyxFQUFFO1lBQ0YsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtB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Q0FBQztRQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO3VHQXhDVSwyQkFBMkI7MkZBQTNCLDJCQUEyQiw4SEFDM0IscUJBQXFCLHdHQUVOLFVBQVUsNkJBZHhCOzs7Ozs7b0JBTU07OzJGQUtQLDJCQUEyQjtrQkFidkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUU7Ozs7OztvQkFNTTtvQkFDaEIsSUFBSSxFQUFFLEVBQUU7b0JBQ1IsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFVBQVUsRUFBRSxLQUFLO2lCQUNwQjs4QkFHQyxVQUFVO3NCQURULFNBQVM7dUJBQUMscUJBQXFCO2dCQUVRLEdBQUc7c0JBQTFDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGF0ZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBWENhbGVuZGFyVHlwZSwgQVhDb25maWcsIEFYRGF0ZVRpbWUgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhHcmlkRGF0YUNvbHVtbiB9IGZyb20gJy4vY29sdW1uLmNvbXBvbmVudCc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2F4LWRhdGUtY29sdW1uJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWEdyaWREYXRhQ29sdW1uLCB1c2VFeGlzdGluZzogQVhHcmlkRGF0ZUNvbHVtbiB9XSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBBWEdyaWREYXRlQ29sdW1uIGV4dGVuZHMgQVhHcmlkRGF0YUNvbHVtbiB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBmb3JtYXQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICB0eXBlOiBBWENhbGVuZGFyVHlwZSA9IEFYQ29uZmlnLmdldCgnZGF0ZVRpbWUudHlwZScpO1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBjb2wgPSBzdXBlci5yZW5kZXIoKTtcbiAgICBjb2wuY2VsbFJlbmRlcmVyUGFyYW1zID0ge1xuICAgICAgZm9ybWF0OiB0aGlzLmZvcm1hdCxcbiAgICB9O1xuXG4gICAgY29sLmNvbXBhcmF0b3IgPSAodmFsdWVBOiBhbnksIHZhbHVlQjogYW55KSA9PiB7XG4gICAgICBjb25zdCBkYXRlMSA9IEFYRGF0ZVRpbWUuY29udmVydCh2YWx1ZUEpO1xuICAgICAgY29uc3QgZGF0ZTIgPSBBWERhdGVUaW1lLmNvbnZlcnQodmFsdWVCKTtcbiAgICAgIC8vXG4gICAgICBpZiAoZGF0ZTEgPT09IG51bGwgJiYgZGF0ZTIgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG4gICAgICBpZiAoZGF0ZTEgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgfVxuICAgICAgaWYgKGRhdGUyID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGRhdGUxLmRhdGUuZ2V0VGltZSgpIC0gZGF0ZTIuZGF0ZS5nZXRUaW1lKCk7XG4gICAgfTtcblxuICAgIGNvbC52YWx1ZUZvcm1hdHRlciA9IChwYXJhbXMpID0+IHtcbiAgICAgIGNvbnN0IGRhdGU6IEFYRGF0ZVRpbWUgPSBBWERhdGVUaW1lLmNvbnZlcnQocGFyYW1zLnZhbHVlLCB0aGlzLnR5cGUpO1xuICAgICAgaWYgKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIGRhdGUuZm9ybWF0KHRoaXMuZm9ybWF0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH07XG4gICAgY29sLmZpbHRlciA9ICdhZ0RhdGVDb2x1bW5GaWx0ZXInO1xuXG4gICAgY29sLmNlbGxTdHlsZSA9IHsgJ3RleHQtYWxpZ24nOiAnbGVmdCcgfTtcblxuICAgIGNvbC5mbG9hdGluZ0ZpbHRlckNvbXBvbmVudCA9IEFYRGF0ZVBpY2tlckZpbHRlckNvbXBvbmVudDtcblxuICAgIHJldHVybiBjb2w7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdheC1kYXRhLXBpY2tlci1maWx0ZXInLFxuICAgIHRlbXBsYXRlOiBgPGF4LWRhdGUtcGlja2VyXG4gICAgW3NlbGVjdGFibGVIb2xpZGF5XT1cInNlbGVjdGFibGVIb2xpZGF5XCJcbiAgICBbYWxsb3dDbGVhcl09XCJ0cnVlXCJcbiAgICAob25WYWx1ZUNoYW5nZWQpPVwib25WYWx1ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgc2l6ZT1cInNtXCJcbiAgPlxuICA8L2F4LWRhdGUtcGlja2VyPmAsXG4gICAgaG9zdDoge30sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBBWERhdGVQaWNrZXJGaWx0ZXJDb21wb25lbnQge1xuICBAVmlld0NoaWxkKEFYRGF0ZVBpY2tlckNvbXBvbmVudClcbiAgZGF0ZVBpY2tlcjogQVhEYXRlUGlja2VyQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdkaXYnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgZGl2OiBFbGVtZW50UmVmO1xuICBzZWxlY3RhYmxlSG9saWRheTogYm9vbGVhbiA9IGZhbHNlO1xuICB0eXBlOiBzdHJpbmcgPSAnamFsYWxpJztcbiAgZGF0ZTogRGF0ZTtcbiAgcGFyYW1zOiBhbnk7XG4gIHBpY2tlcjogYW55O1xuXG4gIGFnSW5pdChwYXJhbXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge31cbiAgbmdPbkRlc3Ryb3koKSB7fVxuXG4gIG9uRGF0ZUNoYW5nZWQoc2VsZWN0ZWREYXRlcykge1xuICAgIHRoaXMucGFyYW1zLnBhcmVudEZpbHRlckluc3RhbmNlKChpbnN0YW5jZSkgPT4ge1xuICAgICAgaW5zdGFuY2Uub25GbG9hdGluZ0ZpbHRlckNoYW5nZWQoJ2VxdWFsJywgc2VsZWN0ZWREYXRlcyk7XG4gICAgfSk7XG4gICAgLy90aGlzLmRhdGUgPSBzZWxlY3RlZERhdGVzWzBdIHx8IG51bGw7XG4gICAgLy8gdGhpcy5wYXJhbXMub25EYXRlQ2hhbmdlZCgpO1xuICB9XG5cbiAgZ2V0RGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlO1xuICB9XG5cbiAgc2V0RGF0ZShkYXRlOiBEYXRlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRlID0gZGF0ZSB8fCBudWxsO1xuICAgIC8vdGhpcy5waWNrZXIuc2V0RGF0ZShkYXRlKTtcbiAgfVxuXG4gIHNldElucHV0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vdGhpcy5kaXYubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3BsYWNlaG9sZGVyJywgcGxhY2Vob2xkZXIpO1xuICB9XG4gIG9uVmFsdWVDaGFuZ2VkKGUpIHtcbiAgICB0aGlzLnNldERhdGUoZS52YWx1ZSk7XG4gICAgdGhpcy5vbkRhdGVDaGFuZ2VkKGUudmFsdWUpO1xuICB9XG59XG4iXX0=","import { AXGridDataColumn } from './column.component';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXGridSelectionColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n condition;\n headerCheckbox = false;\n pinned = 'start';\n width = 40;\n rowSelectableConditionField;\n render() {\n const col = super.render();\n col.checkboxSelection = this.condition ? this.condition : true;\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\n col.filter = false;\n col.resizable = true;\n col.sortable = false;\n col.minWidth = 5;\n col.width = this.width;\n col.floatingFilter = false;\n if (this.headerCheckbox) {\n col.headerCheckboxSelection = this.headerCheckbox;\n }\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridSelectionColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridSelectionColumn, isStandalone: false, selector: \"ax-selection-column\", inputs: { condition: \"condition\", headerCheckbox: \"headerCheckbox\", pinned: \"pinned\", width: \"width\", rowSelectableConditionField: \"rowSelectableConditionField\" }, providers: [\n { provide: AXGridDataColumn, useExisting: AXGridSelectionColumn },\n ], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridSelectionColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-selection-column',\n template: '',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXGridSelectionColumn },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], ctorParameters: () => [], propDecorators: { condition: [{\n type: Input\n }], headerCheckbox: [{\n type: Input\n }], pinned: [{\n type: Input\n }], width: [{\n type: Input\n }], rowSelectableConditionField: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtZ3JpZC9jb2x1bW5zL3NlbGVjdGlvbi1jb2x1bW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVcxRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZ0JBQWdCO0lBQ3pEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBR0QsU0FBUyxDQUFzQjtJQUcvQixjQUFjLEdBQVksS0FBSyxDQUFDO0lBR2hDLE1BQU0sR0FBb0IsT0FBTyxDQUFDO0lBR2xDLEtBQUssR0FBVyxFQUFFLENBQUM7SUFHbkIsMkJBQTJCLENBQVM7SUFFcEMsTUFBTTtRQUNKLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUUzQixHQUFHLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRS9ELEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBRXhELEdBQUcsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBRW5CLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXJCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXJCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRWpCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV2QixHQUFHLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixHQUFHLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO3VHQTNDVSxxQkFBcUI7MkZBQXJCLHFCQUFxQix1T0FOckI7WUFDVCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUU7U0FDbEUsaURBSFMsRUFBRTs7MkZBT0QscUJBQXFCO2tCQVRqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRSxFQUFFO29CQUNaLFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLHVCQUF1QixFQUFFO3FCQUNsRTtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCO3dEQU9DLFNBQVM7c0JBRFIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTiwyQkFBMkI7c0JBRDFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi9jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXNlbGVjdGlvbi1jb2x1bW4nLFxuICB0ZW1wbGF0ZTogJycsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQVhHcmlkRGF0YUNvbHVtbiwgdXNlRXhpc3Rpbmc6IEFYR3JpZFNlbGVjdGlvbkNvbHVtbiB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEFYR3JpZFNlbGVjdGlvbkNvbHVtbiBleHRlbmRzIEFYR3JpZERhdGFDb2x1bW4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgQElucHV0KClcbiAgY29uZGl0aW9uOiAocGFyYW1zKSA9PiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckNoZWNrYm94OiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGlubmVkOiAnc3RhcnQnIHwgJ2VuZCcgPSAnc3RhcnQnO1xuXG4gIEBJbnB1dCgpXG4gIHdpZHRoOiBudW1iZXIgPSA0MDtcblxuICBASW5wdXQoKVxuICByb3dTZWxlY3RhYmxlQ29uZGl0aW9uRmllbGQ6IHN0cmluZztcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgY29sID0gc3VwZXIucmVuZGVyKCk7XG5cbiAgICBjb2wuY2hlY2tib3hTZWxlY3Rpb24gPSB0aGlzLmNvbmRpdGlvbiA/IHRoaXMuY29uZGl0aW9uIDogdHJ1ZTtcblxuICAgIGNvbC5waW5uZWQgPSB0aGlzLnBpbm5lZCA9PT0gJ3N0YXJ0JyA/ICdyaWdodCcgOiAnbGVmdCc7XG5cbiAgICBjb2wuZmlsdGVyID0gZmFsc2U7XG5cbiAgICBjb2wucmVzaXphYmxlID0gdHJ1ZTtcblxuICAgIGNvbC5zb3J0YWJsZSA9IGZhbHNlO1xuXG4gICAgY29sLm1pbldpZHRoID0gNTtcblxuICAgIGNvbC53aWR0aCA9IHRoaXMud2lkdGg7XG5cbiAgICBjb2wuZmxvYXRpbmdGaWx0ZXIgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLmhlYWRlckNoZWNrYm94KSB7XG4gICAgICBjb2wuaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb24gPSB0aGlzLmhlYWRlckNoZWNrYm94O1xuICAgIH1cbiAgICByZXR1cm4gY29sO1xuICB9XG59XG4iXX0=","import { AXTextBoxComponent } from '@acorex/components';\nimport { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';\nimport { AXGridDataColumn } from './column.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components\";\nimport * as i2 from \"../filters/filter.component\";\nexport class AXGridTextColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n render() {\n const col = super.render();\n switch (this.filter()) {\n case 'textColumnFilter':\n col.filter = 'agTextColumnFilter';\n break;\n case 'columnFilter':\n col.filter = 'agSetColumnFilter';\n break;\n case 'dateColumnFilter':\n break;\n case 'numberColumnFilter':\n col.filter = 'agNumberColumnFilter';\n break;\n default:\n break;\n }\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridTextColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridTextColumn, isStandalone: false, selector: \"ax-text-column\", providers: [{ provide: AXGridDataColumn, useExisting: AXGridTextColumn }], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridTextColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-text-column',\n template: '',\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridTextColumn }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], ctorParameters: () => [] });\nexport class TextFilterRenderer {\n value = null;\n params;\n valueGetter;\n input;\n agInit(params) {\n this.params = params;\n this.valueGetter = params.valueGetter;\n }\n isFilterActive() {\n return this.value !== null && this.value !== undefined;\n }\n doesFilterPass(params) {\n return this.value === this.valueGetter(params.node);\n }\n getModel() {\n return { value: this.value };\n }\n setModel(model) {\n this.onChange(model ? model.value : null);\n }\n ngAfterViewInit(params) {\n window.setTimeout(() => {\n this.input.focus();\n });\n }\n onChange(newValue) {\n if (this.value !== newValue) {\n this.value = newValue;\n if (this.value === '') {\n this.value = null;\n }\n this.params.filterChangedCallback();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: TextFilterRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: TextFilterRenderer, isStandalone: false, selector: \"ng-component\", viewQueries: [{ propertyName: \"input\", first: true, predicate: AXTextBoxComponent, descendants: true, static: true }], ngImport: i0, template: `\n <ax-data-grid-filter>\n <ax-text-box\n label=\"Filter\"\n allowClear=\"true\"\n (textChange)=\"onChange($event)\"\n >\n </ax-text-box>\n </ax-data-grid-filter>\n `, isInline: true, dependencies: [{ kind: \"component\", type: i1.AXTextBoxComponent, selector: \"ax-text-box\", inputs: [\"mask\", \"showMask\", \"type\", \"maxLength\", \"maskGuid\", \"maskPlaceholder\", \"maskKeepCharPositions\", \"leadZeroDateTime\"] }, { kind: \"component\", type: i2.AXDataGridFilterComponent, selector: \"ax-data-grid-filter\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: TextFilterRenderer, decorators: [{\n type: Component,\n args: [{\n template: `\n <ax-data-grid-filter>\n <ax-text-box\n label=\"Filter\"\n allowClear=\"true\"\n (textChange)=\"onChange($event)\"\n >\n </ax-text-box>\n </ax-data-grid-filter>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], propDecorators: { input: [{\n type: ViewChild,\n args: [AXTextBoxComponent, { static: true }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvY29sdW1ucy90ZXh0LWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFROUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFTdEQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQUNwRDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFM0IsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUN0QixLQUFLLGtCQUFrQjtnQkFDckIsR0FBRyxDQUFDLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQztnQkFDbEMsTUFBTTtZQUNSLEtBQUssY0FBYztnQkFDakIsR0FBRyxDQUFDLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQztnQkFDakMsTUFBTTtZQUNSLEtBQUssa0JBQWtCO2dCQUNyQixNQUFNO1lBQ1IsS0FBSyxvQkFBb0I7Z0JBQ3ZCLEdBQUcsQ0FBQyxNQUFNLEdBQUcsc0JBQXNCLENBQUM7Z0JBQ3BDLE1BQU07WUFDUjtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQzt1R0F4QlUsZ0JBQWdCOzJGQUFoQixnQkFBZ0IsOERBSmhCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLENBQUMsaURBRC9ELEVBQUU7OzJGQUtELGdCQUFnQjtrQkFQNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsRUFBRTtvQkFDWixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLGtCQUFrQixFQUFFLENBQUM7b0JBQ3pFLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsS0FBSztpQkFDbEI7O0FBMENELE1BQU0sT0FBTyxrQkFBa0I7SUFDdEIsS0FBSyxHQUFZLElBQUksQ0FBQztJQUVyQixNQUFNLENBQWdCO0lBRXRCLFdBQVcsQ0FBNEI7SUFHdkMsS0FBSyxDQUFxQjtJQUVsQyxNQUFNLENBQUMsTUFBVztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFDeEMsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQ3pELENBQUM7SUFFRCxjQUFjLENBQUMsTUFBbUM7UUFDaEQsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQStCO1FBQzdDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQVE7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7WUFDdEIsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNwQixDQUFDO1lBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO3VHQTdDVSxrQkFBa0I7MkZBQWxCLGtCQUFrQixnSEFPbEIsa0JBQWtCLDhEQXBCbkI7Ozs7Ozs7OztHQVNUOzsyRkFJVSxrQkFBa0I7a0JBZDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7R0FTVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCOzhCQVNTLEtBQUs7c0JBRFosU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFRleHRCb3hDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRmlsdGVyQW5ndWxhckNvbXAgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHtcbiAgSUFmdGVyR3VpQXR0YWNoZWRQYXJhbXMsXG4gIElEb2VzRmlsdGVyUGFzc1BhcmFtcyxcbiAgSUZpbHRlclBhcmFtcyxcbiAgUm93Tm9kZSxcbn0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgQVhHcmlkRGF0YUNvbHVtbiB9IGZyb20gJy4vY29sdW1uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXRleHQtY29sdW1uJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYR3JpZERhdGFDb2x1bW4sIHVzZUV4aXN0aW5nOiBBWEdyaWRUZXh0Q29sdW1uIH1dLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEFYR3JpZFRleHRDb2x1bW4gZXh0ZW5kcyBBWEdyaWREYXRhQ29sdW1uIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBjb2wgPSBzdXBlci5yZW5kZXIoKTtcblxuICAgIHN3aXRjaCAodGhpcy5maWx0ZXIoKSkge1xuICAgICAgY2FzZSAndGV4dENvbHVtbkZpbHRlcic6XG4gICAgICAgIGNvbC5maWx0ZXIgPSAnYWdUZXh0Q29sdW1uRmlsdGVyJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdjb2x1bW5GaWx0ZXInOlxuICAgICAgICBjb2wuZmlsdGVyID0gJ2FnU2V0Q29sdW1uRmlsdGVyJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkYXRlQ29sdW1uRmlsdGVyJzpcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdudW1iZXJDb2x1bW5GaWx0ZXInOlxuICAgICAgICBjb2wuZmlsdGVyID0gJ2FnTnVtYmVyQ29sdW1uRmlsdGVyJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIGNvbDtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8YXgtZGF0YS1ncmlkLWZpbHRlcj5cbiAgICAgIDxheC10ZXh0LWJveFxuICAgICAgICBsYWJlbD1cIkZpbHRlclwiXG4gICAgICAgIGFsbG93Q2xlYXI9XCJ0cnVlXCJcbiAgICAgICAgKHRleHRDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICA8L2F4LXRleHQtYm94PlxuICAgIDwvYXgtZGF0YS1ncmlkLWZpbHRlcj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0RmlsdGVyUmVuZGVyZXIgaW1wbGVtZW50cyBJRmlsdGVyQW5ndWxhckNvbXAge1xuICBwdWJsaWMgdmFsdWU/OiBzdHJpbmcgPSBudWxsO1xuXG4gIHByaXZhdGUgcGFyYW1zOiBJRmlsdGVyUGFyYW1zO1xuXG4gIHByaXZhdGUgdmFsdWVHZXR0ZXI6IChyb3dOb2RlOiBSb3dOb2RlKSA9PiBhbnk7XG5cbiAgQFZpZXdDaGlsZChBWFRleHRCb3hDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgaW5wdXQ6IEFYVGV4dEJveENvbXBvbmVudDtcblxuICBhZ0luaXQocGFyYW1zOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgICB0aGlzLnZhbHVlR2V0dGVyID0gcGFyYW1zLnZhbHVlR2V0dGVyO1xuICB9XG5cbiAgaXNGaWx0ZXJBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWUgIT09IG51bGwgJiYgdGhpcy52YWx1ZSAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZG9lc0ZpbHRlclBhc3MocGFyYW1zOiBJRG9lc0ZpbHRlclBhc3NQYXJhbXMgfCBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZSA9PT0gdGhpcy52YWx1ZUdldHRlcihwYXJhbXMubm9kZSk7XG4gIH1cblxuICBnZXRNb2RlbCgpOiBhbnkge1xuICAgIHJldHVybiB7IHZhbHVlOiB0aGlzLnZhbHVlIH07XG4gIH1cblxuICBzZXRNb2RlbChtb2RlbDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZShtb2RlbCA/IG1vZGVsLnZhbHVlIDogbnVsbCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQocGFyYW1zOiBJQWZ0ZXJHdWlBdHRhY2hlZFBhcmFtcyk6IHZvaWQge1xuICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaW5wdXQuZm9jdXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ2hhbmdlKG5ld1ZhbHVlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gbmV3VmFsdWU7XG4gICAgICBpZiAodGhpcy52YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgICB9XG4gICAgICB0aGlzLnBhcmFtcy5maWx0ZXJDaGFuZ2VkQ2FsbGJhY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { AXGridDataColumn } from './column.component';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { AXConfig } from '@acorex/core';\nimport * as i0 from \"@angular/core\";\nexport class AXGridRowNumberColumn extends AXGridDataColumn {\n constructor() {\n super();\n }\n condition;\n render() {\n const col = super.render();\n (col.headerName = this.caption\n ? this.caption\n : AXConfig.get('layout.rtl')\n ? 'ردیف'\n : 'Row'),\n (col.valueGetter = (params) => {\n if (!params.data)\n return null;\n if (params.data.rowNumber == null && params.node) {\n params.data.rowNumber = params.node.rowIndex + 1;\n }\n return params.data.rowNumber;\n });\n (col.pinned =\n this.pinned == null ? null : this.pinned === 'start' ? 'right' : 'left'),\n (col.filter = false);\n col.resizable = true;\n col.sortable = false;\n col.width = this.width;\n return col;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridRowNumberColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXGridRowNumberColumn, isStandalone: false, selector: \"ax-row-number-column\", inputs: { condition: \"condition\" }, providers: [\n { provide: AXGridDataColumn, useExisting: AXGridRowNumberColumn },\n ], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXGridRowNumberColumn, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-row-number-column',\n template: '',\n providers: [\n { provide: AXGridDataColumn, useExisting: AXGridRowNumberColumn },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n }]\n }], ctorParameters: () => [], propDecorators: { condition: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LW51bWJlci1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvY29sdW1ucy9yb3ctbnVtYmVyLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFXeEMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGdCQUFnQjtJQUN6RDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUdELFNBQVMsQ0FBc0I7SUFFL0IsTUFBTTtRQUNKLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUUzQixDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU87WUFDNUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQ2QsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO2dCQUM1QixDQUFDLENBQUMsTUFBTTtnQkFDUixDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ1IsQ0FBQyxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTtvQkFBRSxPQUFPLElBQUksQ0FBQztnQkFDOUIsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNqRCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7Z0JBQ25ELENBQUM7Z0JBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FBQztRQUVMLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDVCxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDeEUsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV2QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7dUdBaENVLHFCQUFxQjsyRkFBckIscUJBQXFCLHdHQU5yQjtZQUNULEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRTtTQUNsRSxpREFIUyxFQUFFOzsyRkFPRCxxQkFBcUI7a0JBVGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLEVBQUU7b0JBQ1osU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsdUJBQXVCLEVBQUU7cUJBQ2xFO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsS0FBSztpQkFDbEI7d0RBT0MsU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhHcmlkRGF0YUNvbHVtbiB9IGZyb20gJy4vY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDb25maWcgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1yb3ctbnVtYmVyLWNvbHVtbicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBBWEdyaWREYXRhQ29sdW1uLCB1c2VFeGlzdGluZzogQVhHcmlkUm93TnVtYmVyQ29sdW1uIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhHcmlkUm93TnVtYmVyQ29sdW1uIGV4dGVuZHMgQVhHcmlkRGF0YUNvbHVtbiB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBjb25kaXRpb246IChwYXJhbXMpID0+IGJvb2xlYW47XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGNvbCA9IHN1cGVyLnJlbmRlcigpO1xuXG4gICAgKGNvbC5oZWFkZXJOYW1lID0gdGhpcy5jYXB0aW9uXG4gICAgICA/IHRoaXMuY2FwdGlvblxuICAgICAgOiBBWENvbmZpZy5nZXQoJ2xheW91dC5ydGwnKVxuICAgICAgPyAn2LHYr9uM2YEnXG4gICAgICA6ICdSb3cnKSxcbiAgICAgIChjb2wudmFsdWVHZXR0ZXIgPSAocGFyYW1zKSA9PiB7XG4gICAgICAgIGlmICghcGFyYW1zLmRhdGEpIHJldHVybiBudWxsO1xuICAgICAgICBpZiAocGFyYW1zLmRhdGEucm93TnVtYmVyID09IG51bGwgJiYgcGFyYW1zLm5vZGUpIHtcbiAgICAgICAgICBwYXJhbXMuZGF0YS5yb3dOdW1iZXIgPSBwYXJhbXMubm9kZS5yb3dJbmRleCArIDE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcmFtcy5kYXRhLnJvd051bWJlcjtcbiAgICAgIH0pO1xuXG4gICAgKGNvbC5waW5uZWQgPVxuICAgICAgdGhpcy5waW5uZWQgPT0gbnVsbCA/IG51bGwgOiB0aGlzLnBpbm5lZCA9PT0gJ3N0YXJ0JyA/ICdyaWdodCcgOiAnbGVmdCcpLFxuICAgICAgKGNvbC5maWx0ZXIgPSBmYWxzZSk7XG4gICAgY29sLnJlc2l6YWJsZSA9IHRydWU7XG4gICAgY29sLnNvcnRhYmxlID0gZmFsc2U7XG4gICAgY29sLndpZHRoID0gdGhpcy53aWR0aDtcblxuICAgIHJldHVybiBjb2w7XG4gIH1cbn1cbiJdfQ==","export class AXDataGridStateService {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWdyaWQudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtZ3JpZC9kYXRhZ3JpZC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQWdCLHNCQUFzQjtDQU0zQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWERhdGFHcmlkU3RhdGVTZXJ2aWNlIHtcbiAgYWJzdHJhY3Qgc2F2ZShcbiAgICBncmlkSWQ6IHN0cmluZyxcbiAgICBzZXR0aW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgKTogUHJvbWlzZTx2b2lkPjtcbiAgYWJzdHJhY3QgbG9hZChncmlkSWQ6IHN0cmluZyk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xufVxuIl19","import { Component, ContentChild, Input, TemplateRef } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class AXDataGridDetailTemplateComponent {\n templateRef;\n renderer = AXDataGridDetailTemplateRenderer;\n height = 100;\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridDetailTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridDetailTemplateComponent, isStandalone: false, selector: \"ax-grid-detail-template\", inputs: { height: \"height\" }, queries: [{ propertyName: \"templateRef\", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridDetailTemplateComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-grid-detail-template',\n template: `<ng-content></ng-content>`,\n standalone: false,\n }]\n }], propDecorators: { templateRef: [{\n type: ContentChild,\n args: [TemplateRef, { static: true }]\n }], height: [{\n type: Input\n }] } });\nexport class AXDataGridDetailTemplateRenderer {\n templateRef;\n data;\n customData;\n agInit(params) {\n this.templateRef = params.templateRef;\n this.data = params.data;\n this.customData = params.customData;\n }\n refresh() {\n return false;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridDetailTemplateRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridDetailTemplateRenderer, isStandalone: false, selector: \"ng-component\", ngImport: i0, template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`, isInline: true, dependencies: [{ kind: \"directive\", type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridDetailTemplateRenderer, decorators: [{\n type: Component,\n args: [{\n template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`,\n standalone: false,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9saWIvZGF0YS1ncmlkL3RlbXBsYXRlcy9kZXRhaWwtdGVtcGxhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVE1RSxNQUFNLE9BQU8saUNBQWlDO0lBQ0MsV0FBVyxDQUFtQjtJQUMzRSxRQUFRLEdBQUcsZ0NBQWdDLENBQUM7SUFFbkMsTUFBTSxHQUFXLEdBQUcsQ0FBQzt1R0FKbkIsaUNBQWlDOzJGQUFqQyxpQ0FBaUMsMkpBQzlCLFdBQVcsOERBSmYsMkJBQTJCOzsyRkFHMUIsaUNBQWlDO2tCQUw3QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjs4QkFFOEMsV0FBVztzQkFBdkQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdsQyxNQUFNO3NCQUFkLEtBQUs7O0FBU1IsTUFBTSxPQUFPLGdDQUFnQztJQUczQyxXQUFXLENBQW1CO0lBQzlCLElBQUksQ0FBTTtJQUNWLFVBQVUsQ0FBTTtJQUVoQixNQUFNLENBQUMsTUFBVztRQUNoQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzt1R0FmVSxnQ0FBZ0M7MkZBQWhDLGdDQUFnQyx5RUFMakM7O21CQUVPOzsyRkFHTixnQ0FBZ0M7a0JBTjVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzttQkFFTztvQkFDakIsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZ3JpZC1kZXRhaWwtdGVtcGxhdGUnLFxuICB0ZW1wbGF0ZTogYDxuZy1jb250ZW50PjwvbmctY29udGVudD5gLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZERldGFpbFRlbXBsYXRlQ29tcG9uZW50IHtcbiAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZiwgeyBzdGF0aWM6IHRydWUgfSkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gIHJlbmRlcmVyID0gQVhEYXRhR3JpZERldGFpbFRlbXBsYXRlUmVuZGVyZXI7XG5cbiAgQElucHV0KCkgaGVpZ2h0OiBudW1iZXIgPSAxMDA7XG59XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxuZy1jb250YWluZXJcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlUmVmOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZGF0YSB9XCJcbiAgPjwvbmctY29udGFpbmVyPmAsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBWERhdGFHcmlkRGV0YWlsVGVtcGxhdGVSZW5kZXJlclxuICBpbXBsZW1lbnRzIElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcFxue1xuICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgZGF0YTogYW55O1xuICBjdXN0b21EYXRhOiBhbnk7XG5cbiAgYWdJbml0KHBhcmFtczogYW55KTogdm9pZCB7XG4gICAgdGhpcy50ZW1wbGF0ZVJlZiA9IHBhcmFtcy50ZW1wbGF0ZVJlZjtcbiAgICB0aGlzLmRhdGEgPSBwYXJhbXMuZGF0YTtcbiAgICB0aGlzLmN1c3RvbURhdGEgPSBwYXJhbXMuY3VzdG9tRGF0YTtcbiAgfVxuXG4gIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=","import { Component, ContentChild, TemplateRef } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class AXDataGridRowTemplateComponent {\n templateRef;\n renderer;\n params;\n constructor() {\n this.renderer = AXDataGridRowTemplateRenderer;\n }\n ngOnInit() {\n this.params = {\n templateRef: this.templateRef,\n };\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridRowTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridRowTemplateComponent, isStandalone: false, selector: \"ax-row-template\", queries: [{ propertyName: \"templateRef\", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridRowTemplateComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ax-row-template',\n template: `<ng-content></ng-content>`,\n standalone: false,\n }]\n }], ctorParameters: () => [], propDecorators: { templateRef: [{\n type: ContentChild,\n args: [TemplateRef, { static: true }]\n }] } });\nexport class AXDataGridRowTemplateRenderer {\n templateRef;\n data;\n refresh(params) {\n return false;\n }\n agInit(params) {\n this.data = params.data.callRecords;\n this.templateRef = params.templateRef;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridRowTemplateRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataGridRowTemplateRenderer, isStandalone: false, selector: \"ng-component\", ngImport: i0, template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`, isInline: true, dependencies: [{ kind: \"directive\", type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridRowTemplateRenderer, decorators: [{\n type: Component,\n args: [{\n template: `<ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: data }\"\n ></ng-container>`,\n standalone: false,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9saWIvZGF0YS1ncmlkL3RlbXBsYXRlcy9yb3ctdGVtcGxhdGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUXJFLE1BQU0sT0FBTyw4QkFBOEI7SUFDSSxXQUFXLENBQW1CO0lBQzNFLFFBQVEsQ0FBTTtJQUNkLE1BQU0sQ0FBTTtJQUNaO1FBQ0UsSUFBSSxDQUFDLFFBQVEsR0FBRyw2QkFBNkIsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDOUIsQ0FBQztJQUNKLENBQUM7dUdBWFUsOEJBQThCOzJGQUE5Qiw4QkFBOEIscUhBQzNCLFdBQVcsOERBSmYsMkJBQTJCOzsyRkFHMUIsOEJBQThCO2tCQUwxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjt3REFFOEMsV0FBVztzQkFBdkQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOztBQW1CN0MsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxXQUFXLENBQW1CO0lBRTlCLElBQUksQ0FBTTtJQUVWLE9BQU8sQ0FBQyxNQUFXO1FBQ2pCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFXO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDcEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQ3hDLENBQUM7dUdBWlUsNkJBQTZCOzJGQUE3Qiw2QkFBNkIseUVBTDlCOzttQkFFTzs7MkZBR04sNkJBQTZCO2tCQU56QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRTs7bUJBRU87b0JBQ2pCLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtcm93LXRlbXBsYXRlJyxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEFYRGF0YUdyaWRSb3dUZW1wbGF0ZUNvbXBvbmVudCB7XG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYsIHsgc3RhdGljOiB0cnVlIH0pIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICByZW5kZXJlcjogYW55O1xuICBwYXJhbXM6IGFueTtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IEFYRGF0YUdyaWRSb3dUZW1wbGF0ZVJlbmRlcmVyO1xuICB9XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFyYW1zID0ge1xuICAgICAgdGVtcGxhdGVSZWY6IHRoaXMudGVtcGxhdGVSZWYsXG4gICAgfTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGA8bmctY29udGFpbmVyXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZVJlZjsgY29udGV4dDogeyAkaW1wbGljaXQ6IGRhdGEgfVwiXG4gID48L25nLWNvbnRhaW5lcj5gLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZFJvd1RlbXBsYXRlUmVuZGVyZXIgaW1wbGVtZW50cyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAge1xuICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBkYXRhOiBhbnk7XG5cbiAgcmVmcmVzaChwYXJhbXM6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGFnSW5pdChwYXJhbXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZGF0YSA9IHBhcmFtcy5kYXRhLmNhbGxSZWNvcmRzO1xuICAgIHRoaXMudGVtcGxhdGVSZWYgPSBwYXJhbXMudGVtcGxhdGVSZWY7XG4gIH1cbn1cbiJdfQ==","import { AXDataSourceComponent, } from '@acorex/components';\nimport { ChangeDetectorRef, Component, ContentChild, ContentChildren, ElementRef, EventEmitter, inject, Input, output, Output, QueryList, } from '@angular/core';\nimport { AXGridDataColumn } from './columns/column.component';\nimport { ViewEncapsulation } from '@angular/core';\nimport { LicenseManager } from 'ag-grid-enterprise';\nimport { AXDataEvent, AXToolbarComponent, AXToolbarSearchComponent, AXValueEvent, } from '@acorex/components';\nimport { AXConfig, AXTranslator } from '@acorex/core';\nimport { debounceTime, Subject } from 'rxjs';\nimport { AXDatePickerFilterComponent } from './columns/date-column.component';\nimport { AXDataGridStateService } from './datagrid.token';\nimport { AXDataGridDetailTemplateComponent, AXDataGridDetailTemplateRenderer, } from './templates/detail-template.component';\nimport { AXDataGridRowTemplateComponent } from './templates/row-template.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"ag-grid-angular\";\nLicenseManager.prototype.isDisplayWatermark = () => {\n return false;\n};\nLicenseManager.prototype.validateLicense = function () {\n //console.info('Cracked by Arash Oshnoudi!');\n};\nexport class AXDataGridColumnsChangeEvent extends AXValueEvent {\n}\nexport class AXDataGridCellEvent extends AXDataEvent {\n}\nexport class AXDaagridRowClickEvent extends AXDataEvent {\n}\nexport class AXDataGridSelectionChangeEvent extends AXDataEvent {\n}\nexport class AXDataGridRowSelectionChangeEvent extends AXDataEvent {\n}\nexport class AXDataGridComponent {\n ref;\n cdr;\n saveSatate$ = new Subject();\n saveStateSubscription;\n stateService = inject(AXDataGridStateService, { optional: true });\n settings = null;\n async load() {\n if (this.stateService && this.id) {\n this.settings = await this.stateService.load(this.id);\n if (this.settings) {\n this.gridApi.setState(this.settings);\n }\n }\n }\n async save() {\n const gridState = this.gridApi.getState();\n await this.stateService.save(this.id, gridState);\n }\n gridApi;\n dataSourceSuccessCallback;\n localeText;\n isInitialLoad = true;\n gridOptions;\n columnDefs = [];\n rowModelType = 'clientSide';\n fullWidthCellRendererFramework;\n fullWidthCellRendererParams;\n frameworkComponents = {};\n isFullWidthCell;\n internalHeight = '100%';\n detailCellRenderer;\n detailCellRendererParams;\n detailRowHeight;\n masterDetail = false;\n treeData = false;\n enabelSelect = false;\n gridView = false;\n oldSelectionNodes = [];\n autoGroupColumnDef = {};\n currentPage = 1;\n id;\n paginationPageSizeSelector = [10, 20];\n paginationAutoPageSize = false;\n paginationPageSize = 20;\n cacheBlockSize = this.paginationPageSize;\n remoteOperation = false;\n rowMultiSelectWithClick = false;\n suppressRowClickSelection = true;\n suppressCellSelection = false;\n sizeColumnsToFit = true;\n showCheckBox = true;\n floatingFilter = false;\n autoExpand = false;\n rowSelectableConditionField;\n hideDisabledCheckboxes;\n selectionMode = 'single';\n pagination = true;\n selectRow = [];\n rowGroupPanelShow = 'never';\n loadOnInit = true;\n enableRangeSelection = false;\n keyField = 'null';\n hasChildField = 'null';\n rowHeight = 28;\n groupHideOpenParents = false;\n maxConcurrentDatasourceRequests;\n blockLoadDebounceMillis;\n showRefreshButton = true;\n autoNavigatePage = false;\n isRowMasterField = null;\n onFilterChanged = output();\n rowClass;\n rtl = AXConfig.get('layout.rtl');\n _searchText;\n get searchText() {\n return this._searchText;\n }\n set searchText(v) {\n if (v !== this._searchText) {\n this._searchText = v;\n if (this.gridApi) {\n this.refresh();\n this.gridApi.setQuickFilter(this.searchText);\n }\n }\n }\n _filter;\n get filter() {\n return this._filter;\n }\n set filter(v) {\n if (v !== this._filter) {\n this._filter = v;\n this._filter.forEach((f) => {\n const fc = this.gridApi.getFilterInstance(f.field);\n if (fc) {\n const ff = fc.getFrameworkComponentInstance();\n ff.setModel(f);\n }\n });\n }\n }\n rowSelection = {\n mode: 'singleRow',\n groupSelects: 'self',\n enableSelectionWithoutKeys: false,\n enableClickSelection: false,\n checkboxes: false,\n headerCheckbox: false,\n copySelectedRows: false,\n hideDisabledCheckboxes: false,\n isRowSelectable: (rowData) => {\n return rowData.data[this.rowSelectableConditionField];\n },\n };\n _inlineColumns;\n columnsChange = new EventEmitter();\n _columns = [];\n get columns() {\n return this._inlineColumns\n ? [...this._columns, ...this._inlineColumns.toArray()]\n : this._columns;\n }\n set columns(val) {\n if (val && val.length) {\n let old = this._columns;\n this._columns = val;\n this.columnsChange.emit({\n component: this,\n value: val,\n oldValue: old,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n defaultColDef = {\n filter: true,\n floatingFilter: true,\n };\n searchInput;\n toolbar;\n rowTemplate;\n gridDetailTemplate;\n _contentDataSource;\n _dataSource;\n get dataSource() {\n return this._dataSource ? this._dataSource : this._contentDataSource;\n }\n set dataSource(v) {\n this._dataSource = v;\n }\n cellClick = new EventEmitter();\n cellDbClick = new EventEmitter();\n cellFocuse = new EventEmitter();\n rowClick = new EventEmitter();\n rowDbClick = new EventEmitter();\n selectionChanged = new EventEmitter();\n rowSelectionChange = new EventEmitter();\n onRowSelectionChanged = new EventEmitter();\n constructor(ref, cdr) {\n this.ref = ref;\n this.cdr = cdr;\n this.localeText = AXTranslator.get('dataGrid');\n }\n calcHeight() {\n if (this.toolbar) {\n this.internalHeight = `calc(100% - ${40}px)`;\n }\n else {\n this.internalHeight = '100%';\n }\n }\n get intenalGridDataSource() {\n const that = this;\n return {\n rowCount: null,\n getRows: (params) => {\n that.dataSourceSuccessCallback = params.success;\n const loadParams = {};\n loadParams.searchText = that.searchText;\n loadParams.skip = params.request.startRow;\n loadParams.take = params.request.endRow - params.request.startRow;\n loadParams.sort = params.request.sortModel.map((c) => {\n return {\n field: c.colId,\n dir: c.sort,\n };\n });\n loadParams.group = {\n fields: params.request.rowGroupCols.map((r) => r.field),\n keys: params.request.groupKeys,\n parentData: params.parentNode.data,\n };\n loadParams.filter = params.request.filterModel;\n that.dataSource.fetch(loadParams);\n },\n };\n }\n ngOnDestroy() {\n if (this.saveStateSubscription) {\n this.save();\n this.saveStateSubscription.unsubscribe();\n }\n this.gridApi.destroy();\n }\n isServerSideGroup = (e) => {\n return e[this.hasChildField];\n };\n getColumnDefs = () => {\n return this.gridApi.getColumnDefs();\n };\n getCurrentPageNumber = () => {\n return {\n current: this.gridApi.paginationGetCurrentPage() + 1,\n total: this.gridApi.paginationGetTotalPages(),\n };\n };\n paginationGoToPage(number) {\n this.gridApi.paginationGoToPage(number - 1);\n }\n getServerSideGroupKey = (e) => {\n return e[this.keyField];\n };\n internalGridReady(gridOptions) {\n this.gridApi = gridOptions.api;\n setTimeout(() => {\n this.load();\n this.isInitialLoad = false;\n }, 500);\n this.rowSelection.mode =\n this.selectionMode === 'single' ? 'singleRow' : 'multiRow';\n this.rowSelection.enableSelectionWithoutKeys = this.rowMultiSelectWithClick;\n this.rowSelection.enableClickSelection = this.suppressRowClickSelection;\n this.rowSelection.hideDisabledCheckboxes = this.hideDisabledCheckboxes;\n this.mapColumns();\n this.calcHeight();\n if (!this.loadOnInit) {\n this.loadOnInit = true;\n return;\n }\n if (this.remoteOperation) {\n this.gridApi.setGridOption('serverSideDatasource', this.intenalGridDataSource);\n }\n if (!this.remoteOperation) {\n this.refresh();\n }\n if (this.showRefreshButton) {\n this.makeRefreshBtn();\n }\n }\n ngAfterContentInit() {\n const that = this;\n if (this.rowTemplate) {\n this.fullWidthCellRendererFramework = this.rowTemplate.renderer;\n this.fullWidthCellRendererParams = this.rowTemplate.params;\n }\n this.frameworkComponents.agDateInput = AXDatePickerFilterComponent;\n if (this.gridDetailTemplate) {\n this.masterDetail = true;\n this.detailCellRenderer = AXDataGridDetailTemplateRenderer;\n this.detailCellRendererParams = {\n templateRef: this.gridDetailTemplate.templateRef,\n };\n this.detailRowHeight = +this.gridDetailTemplate.height;\n }\n this.isFullWidthCell = () => {\n return that.rowTemplate != null;\n };\n }\n ngOnInit() {\n if (this.selectionMode === 'single') {\n this.rowSelection.groupSelects = 'self';\n }\n if (this.keyField !== 'null' && this.hasChildField !== 'null') {\n this.rowGroupPanelShow = 'never';\n this.treeData = true;\n }\n if (this.remoteOperation) {\n this.rowModelType = 'serverSide';\n }\n //\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n if (this.stateService) {\n this.saveStateSubscription = this.saveSatate$\n .pipe(debounceTime(1000))\n .subscribe({\n next: () => {\n this.save();\n },\n });\n }\n }\n gridSelectRow() {\n if (this.gridApi) {\n if (this.selectRow &&\n this.selectRow.length > 0 &&\n this.gridApi !== undefined &&\n typeof this.selectRow[0] != 'object') {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select = false;\n this.selectRow.forEach((id) => {\n if (node.data[this.keyField] === id) {\n select = true;\n node.setSelected(select);\n }\n });\n }\n });\n }\n else {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select = false;\n if (this.selectRow.length) {\n this.selectRow.forEach((item) => {\n if (item.rowIndex != undefined && item.rowLevel != undefined) {\n if (node.data[this.keyField] === item.data[this.keyField]) {\n select = true;\n }\n }\n else {\n if (this.keyField !== 'null' &&\n node.data[this.keyField] === item[this.keyField]) {\n select = true;\n }\n }\n });\n }\n if (this.rowSelectableConditionField) {\n node.setRowSelectable(node.data[this.rowSelectableConditionField]);\n }\n node.setSelected(select);\n }\n });\n }\n }\n }\n rebuildGrid() {\n this.mapColumns();\n setTimeout(() => {\n if (this.sizeColumnsToFit) {\n this.gridApi.sizeColumnsToFit();\n }\n }, 10);\n }\n getMainMenuItems = (params) => {\n const colDef = params.column.getColDef();\n const menuItems = [];\n const hasFilter = Array.isArray(colDef.filterParams?.values) &&\n colDef.filterParams.values.length > 0;\n const hasSort = !!colDef.sortable;\n if (hasFilter) {\n menuItems.push('columnFilter');\n }\n if (hasSort) {\n menuItems.push('sortAscending', 'sortDescending', 'sortUnSort');\n }\n menuItems.push('pinSubMenu', 'columnChooser');\n return menuItems;\n };\n ngAfterViewInit() {\n if (this.selectionMode === 'multiple') {\n this.rowSelection.enableClickSelection = true;\n }\n if (this.treeData === true) {\n this.columnDefs = this.columns.map((c) => c.render());\n const groupColumn = this.columnDefs.find((c) => c.rowGroupIndex == '0' && c.field !== '');\n this.autoGroupColumnDef = {\n headerName: groupColumn.headerName,\n width: groupColumn.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: groupColumn.field,\n };\n this.columnDefs.forEach((elm) => {\n if (elm.rowGroupIndex > -1) {\n elm.hide = true;\n }\n });\n }\n this.gridView = true;\n this.enabelSelect = true;\n this.dataSource.onDataReceived.subscribe((_data) => {\n const result = _data.data.result;\n this.hideLoading();\n let items;\n let totalCount;\n if (Array.isArray(result)) {\n items = result;\n totalCount = result.length;\n }\n else {\n items = result.items;\n totalCount = result.totalCount;\n }\n if (this.dataSourceSuccessCallback) {\n if (!this.loadOnInit) {\n this.dataSourceSuccessCallback({\n rowData: [],\n rowCount: 0,\n });\n }\n else {\n this.dataSourceSuccessCallback({\n rowData: items,\n rowCount: totalCount,\n });\n }\n }\n else {\n if (!this.loadOnInit && this.gridApi !== undefined) {\n this.gridApi.setGridOption('rowData', []);\n }\n else if (this.gridApi !== undefined) {\n this.gridApi.setGridOption('rowData', items);\n }\n }\n if (this.autoNavigatePage) {\n this.paginationGoToPage(this.currentPage);\n }\n this.gridSelectRow();\n });\n this.showLoading(true);\n this.dataSource.onFetchStart.subscribe(() => {\n this.showLoading(false);\n });\n if (this.searchInput) {\n this.searchInput.onValueChanged.subscribe((c) => {\n this.searchText = c.value;\n });\n }\n this.cdr.detectChanges();\n }\n mapColumns() {\n this.columnDefs = this.columns.map((c) => c.render());\n const headerCheckboxSelection = this.columnDefs.find((x) => x.headerCheckboxSelection);\n if (headerCheckboxSelection) {\n this.rowSelection.headerCheckbox =\n headerCheckboxSelection.headerCheckboxSelection;\n }\n const isSelection = this.columnDefs.find((x) => x.checkboxSelection);\n if (isSelection) {\n this.rowSelection.checkboxes = isSelection.checkboxSelection;\n if (isSelection.rowSelectableConditionField) {\n this.rowSelectableConditionField =\n isSelection.rowSelectableConditionField;\n }\n this.columnDefs = this.columnDefs.filter((x) => !x.checkboxSelection);\n }\n if (this.gridDetailTemplate) {\n if (this.columnDefs[0].checkboxSelection === true &&\n this.columnDefs[0].field === '') {\n this.columnDefs[1].cellRenderer = 'agGroupCellRenderer';\n }\n else {\n this.columnDefs[0].cellRenderer = 'agGroupCellRenderer';\n }\n }\n if (this.hasChildField === 'null') {\n const groupColumn = this.columnDefs.find((c) => c.rowGroupIndex === undefined && c.field !== '');\n if (groupColumn && this.groupHideOpenParents == false) {\n this.autoGroupColumnDef = {\n headerName: groupColumn.headerName,\n width: groupColumn.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: groupColumn.field,\n };\n }\n }\n this.columnDefs.forEach((elm) => {\n if (elm.rowGroupIndex > -1) {\n elm.hide = true;\n }\n });\n }\n displayedColumnsChanged(e) {\n if (this.hasChildField === 'null') {\n const ee = e.columnApi.getAllDisplayedColumnGroups();\n const eee = ee.find((c) => c.colId !== 'ag-Grid-AutoColumn' && c.colId !== '0');\n if (eee && eee.colId) {\n this.autoGroupColumnDef = {\n headerName: eee.colDef.headerName,\n width: eee.colDef.width,\n cellRendererParams: { checkbox: this.showCheckBox },\n field: eee.colDef.field,\n };\n }\n }\n }\n refresh(route = []) {\n if (this.remoteOperation && this.gridApi !== undefined) {\n // this.gridApi.purgeServerSideCache(route);\n this.gridApi.setGridOption('serverSideDatasource', this.intenalGridDataSource);\n }\n else {\n this.dataSource.fetch(null);\n }\n }\n internalGridCellClicked(e) {\n this.cellClick.emit({\n data: this.mapCellEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n internalGridCellDoubleClicked(e) {\n this.cellDbClick.emit({\n data: this.mapCellEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n internalGridCellFocused(e) {\n this.cellFocuse.emit({\n data: this.mapCellEvent(e),\n htmlElement: this.ref.nativeElement,\n component: this,\n });\n }\n internalGridRowClicked(e) {\n if (!e.node.group) {\n this.rowClick.emit({\n data: this.mapRowEvent(e),\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n internalGridRowDoubleClicked(e) {\n if (!e.node.group) {\n this.rowDbClick.emit({\n data: this.mapRowEvent(e),\n htmlElement: this.ref.nativeElement,\n component: this,\n });\n }\n }\n differenceOf2Arrays(array1, array2) {\n const temp = [];\n for (const i in array1) {\n if (array2.indexOf(array1[i]) === -1) {\n temp.push(array1[i]);\n }\n }\n for (const i in array2) {\n if (array1.indexOf(array2[i]) === -1) {\n temp.push(array2[i]);\n }\n }\n return temp.sort((a, b) => a - b);\n }\n rowSelectionChanged(e) {\n if (e.node.isSelected()) {\n this.selectRow = this.selectRow.filter((c) => c[this.keyField] != e.data[this.keyField]);\n this.selectRow.push(e.data);\n }\n else {\n this.selectRow = this.selectRow.filter((c) => c[this.keyField] != e.data[this.keyField]);\n }\n this.rowSelectionChange.emit({\n component: this,\n data: e,\n htmlElement: this.ref.nativeElement,\n });\n }\n internalGridSelectionChanged(e) {\n const args = { items: [] };\n const oldNodes = this.oldSelectionNodes;\n const nodes = this.gridApi.getSelectedNodes();\n if (this.autoExpand) {\n const unselectedNodes = oldNodes.filter((oldNode) => !nodes.some((newNode) => newNode === oldNode));\n unselectedNodes.forEach((el) => {\n el.setExpanded(false);\n });\n }\n if (this.remoteOperation) {\n const isSelectAllServerSide = e.api.getServerSideSelectionState().selectAll;\n if (isSelectAllServerSide) {\n this.gridApi.forEachNode((node) => {\n if (node.isSelected()) {\n args.items.push({\n rowIndex: node.rowIndex,\n rowLevel: node.level,\n data: node.data,\n });\n }\n });\n }\n else {\n args.items = this.handleNodeSelected(nodes);\n }\n }\n else {\n args.items = this.handleNodeSelected(nodes);\n }\n this.selectionChanged.emit({\n data: args,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n let action = nodes.length > oldNodes.length ? true : false;\n const node = this.differenceOf2Arrays(nodes, oldNodes);\n this.onRowSelectionChanged.emit({\n component: this,\n selected: action,\n data: node,\n htmlElement: this.ref.nativeElement,\n });\n this.oldSelectionNodes = nodes;\n }\n mapCellEvent(e) {\n return {\n rowLevel: 0,\n column: e.column,\n data: e.data,\n rowIndex: e.rowIndex,\n value: e.value,\n };\n }\n mapRowEvent(e) {\n return {\n rowLevel: 0,\n data: e.data,\n rowIndex: e.rowIndex,\n };\n }\n deselectAll() {\n this.gridApi.deselectAll();\n }\n deselectByKeyField(keyField) {\n this.gridApi.forEachNode((node) => {\n if (node.data !== undefined) {\n let select = false;\n if (node.data[this.keyField] === keyField) {\n node.setSelected(select);\n this.selectRow = this.selectRow.filter((c) => c[this.keyField] != keyField);\n }\n }\n });\n }\n internalGetRowClass = (p) => {\n if (this.rowClass) {\n if (this.rowClass instanceof Function) {\n return this.rowClass({\n rowIndex: p.node.rowIndex,\n rowLevel: p.node.level,\n data: p.data,\n });\n }\n else {\n return this.rowClass;\n }\n }\n };\n showLoading(value) {\n if (this.gridApi) {\n this.gridApi.setGridOption('loading', value);\n }\n }\n hideLoading() {\n if (this.gridApi) {\n this.gridApi.hideOverlay();\n }\n }\n internalGridSizeChanged(e) {\n if (e.clientWidth > 0 && e.clientHeight > 0) {\n this.performSizeColumnsToFit(e.api);\n }\n }\n internalGridFirstDataRendered(e) {\n this.performSizeColumnsToFit(e.api);\n this.headerHeightSetter();\n }\n handleColumnResized(e) {\n this.headerHeightSetter();\n }\n performSizeColumnsToFit(api) {\n if (this.id && this.stateService && this.settings) {\n return;\n }\n if (this.sizeColumnsToFit) {\n api.sizeColumnsToFit();\n }\n }\n headerHeightSetter() {\n const padding = 20;\n const height = this.headerHeightGetter() + padding;\n this.gridApi.setGridOption('headerHeight', height);\n }\n headerHeightGetter() {\n const columnHeaderTexts = [\n ...document.querySelectorAll('.ag-header-cell-text'),\n ];\n const clientHeights = columnHeaderTexts.map((headerText) => headerText.clientHeight);\n const tallestHeaderTextHeight = Math.max(...clientHeights);\n return tallestHeaderTextHeight;\n }\n makeRefreshBtn() {\n const pagingPanel = this.ref.nativeElement.querySelector('.ag-paging-panel');\n const refBtn = document.createElement('span');\n refBtn.classList.add('far');\n refBtn.classList.add('fa-sync');\n refBtn.style.cursor = 'pointer';\n refBtn.title = AXTranslator.get('common.refresh');\n refBtn.addEventListener('click', () => {\n this.currentPage = this.getCurrentPageNumber().current;\n this.refresh();\n });\n pagingPanel.appendChild(refBtn);\n }\n handleNodeSelected(nodes) {\n return nodes.map((i) => {\n if (this.autoExpand) {\n i.setExpanded(true);\n }\n return {\n rowLevel: i.level,\n rowIndex: i.rowIndex,\n data: i.data,\n };\n });\n }\n async handleFilterChanged(event) {\n const colId = event.columns[0].getColId();\n const filterInstance = await this.gridApi.getColumnFilterInstance(colId);\n if (filterInstance) {\n const model = filterInstance.getModel();\n const values = filterInstance.getFilterValues();\n const appliedValues = filterInstance.getModel()?.values || [];\n if (appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: appliedValues },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n else if (!model && !appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: values },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n else if (model && !appliedValues.length) {\n this.onFilterChanged.emit({\n data: { field: colId, value: [] },\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n }\n }\n onPaginationChanged(e) {\n if (this.autoNavigatePage && this.getCurrentPageNumber().current > 1) {\n this.currentPage = this.getCurrentPageNumber().current;\n }\n }\n isRowMaster = (data) => {\n if (this.isRowMasterField) {\n return data[this.isRowMasterField];\n }\n else {\n return true;\n }\n };\n emitState() {\n if (this.isInitialLoad) {\n return;\n }\n this.saveSatate$.next(null);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.3\", type: AXDataGridComponent, isStandalone: false, selector: \"ax-data-grid\", inputs: { id: \"id\", paginationPageSizeSelector: \"paginationPageSizeSelector\", paginationAutoPageSize: \"paginationAutoPageSize\", paginationPageSize: \"paginationPageSize\", remoteOperation: \"remoteOperation\", rowMultiSelectWithClick: \"rowMultiSelectWithClick\", suppressRowClickSelection: \"suppressRowClickSelection\", suppressCellSelection: \"suppressCellSelection\", sizeColumnsToFit: \"sizeColumnsToFit\", showCheckBox: \"showCheckBox\", floatingFilter: \"floatingFilter\", autoExpand: \"autoExpand\", rowSelectableConditionField: \"rowSelectableConditionField\", hideDisabledCheckboxes: \"hideDisabledCheckboxes\", selectionMode: \"selectionMode\", pagination: \"pagination\", selectRow: \"selectRow\", rowGroupPanelShow: \"rowGroupPanelShow\", loadOnInit: \"loadOnInit\", enableRangeSelection: \"enableRangeSelection\", keyField: \"keyField\", hasChildField: \"hasChildField\", rowHeight: \"rowHeight\", groupHideOpenParents: \"groupHideOpenParents\", maxConcurrentDatasourceRequests: \"maxConcurrentDatasourceRequests\", blockLoadDebounceMillis: \"blockLoadDebounceMillis\", showRefreshButton: \"showRefreshButton\", autoNavigatePage: \"autoNavigatePage\", isRowMasterField: \"isRowMasterField\", rowClass: \"rowClass\", rtl: \"rtl\", searchText: \"searchText\", filter: \"filter\", columns: \"columns\", dataSource: \"dataSource\" }, outputs: { onFilterChanged: \"onFilterChanged\", columnsChange: \"columnsChange\", cellClick: \"cellClick\", cellDbClick: \"cellDbClick\", cellFocuse: \"cellFocuse\", rowClick: \"rowClick\", rowDbClick: \"rowDbClick\", selectionChanged: \"selectionChanged\", rowSelectionChange: \"rowSelectionChange\", onRowSelectionChanged: \"onRowSelectionChanged\" }, queries: [{ propertyName: \"searchInput\", first: true, predicate: AXToolbarSearchComponent, descendants: true, static: true }, { propertyName: \"toolbar\", first: true, predicate: AXToolbarComponent, descendants: true, static: true }, { propertyName: \"rowTemplate\", first: true, predicate: AXDataGridRowTemplateComponent, descendants: true, static: true }, { propertyName: \"gridDetailTemplate\", first: true, predicate: AXDataGridDetailTemplateComponent, descendants: true, static: true }, { propertyName: \"_contentDataSource\", first: true, predicate: AXDataSourceComponent, descendants: true, static: true }, { propertyName: \"_inlineColumns\", predicate: AXGridDataColumn }], ngImport: i0, template: \"<div class=\\\"ax-grid-toolbar\\\" *ngIf=\\\"toolbar\\\">\\n <ng-content select=\\\"ax-toolbar\\\"></ng-content>\\n</div>\\n<!-- [enableSorting]=\\\"true\\\" [enableColResize]=\\\"true\\\" [enableFilter]=\\\"allowFiltering\\\" -->\\n\\n@if (gridView) {\\n\\n<ag-grid-angular\\n class=\\\"ag-theme-balham\\\"\\n [getRowClass]=\\\"internalGetRowClass\\\"\\n [cellSelection]=\\\"enableRangeSelection\\\"\\n [serverSideStoreType]=\\\"'partial'\\\"\\n [style.height]=\\\"internalHeight\\\"\\n [columnDefs]=\\\"columnDefs\\\"\\n [enableRtl]=\\\"rtl\\\"\\n [pagination]=\\\"pagination\\\"\\n [rowGroupPanelShow]=\\\"rowGroupPanelShow\\\"\\n [rowModelType]=\\\"rowModelType\\\"\\n [detailRowHeight]=\\\"detailRowHeight\\\"\\n [rowHeight]=\\\"rowHeight\\\"\\n [paginationAutoPageSize]=\\\"paginationAutoPageSize\\\"\\n [paginationPageSize]=\\\"paginationPageSize\\\"\\n [paginationPageSizeSelector]=\\\"paginationPageSizeSelector\\\"\\n [suppressMenuHide]=\\\"true\\\"\\n [maxConcurrentDatasourceRequests]=\\\"maxConcurrentDatasourceRequests\\\"\\n [blockLoadDebounceMillis]=\\\"blockLoadDebounceMillis\\\"\\n [frameworkComponents]=\\\"frameworkComponents\\\"\\n [isFullWidthCell]=\\\"isFullWidthCell\\\"\\n [rowSelection]=\\\"rowSelection\\\"\\n [fullWidthCellRendererFramework]=\\\"fullWidthCellRendererFramework\\\"\\n [cacheBlockSize]=\\\"cacheBlockSize\\\"\\n [fullWidthCellRendererParams]=\\\"fullWidthCellRendererParams\\\"\\n (columnResized)=\\\"handleColumnResized($event)\\\"\\n (cellClicked)=\\\"internalGridCellClicked($event)\\\"\\n (cellDoubleClicked)=\\\"internalGridCellDoubleClicked($event)\\\"\\n (cellFocused)=\\\"internalGridCellFocused($event)\\\"\\n (rowClicked)=\\\"internalGridRowClicked($event)\\\"\\n (selectionChanged)=\\\"internalGridSelectionChanged($event)\\\"\\n (rowSelected)=\\\"rowSelectionChanged($event)\\\"\\n (rowDoubleClicked)=\\\"internalGridRowDoubleClicked($event)\\\"\\n (gridReady)=\\\"internalGridReady($event)\\\"\\n [suppressCellSelection]=\\\"suppressCellSelection\\\"\\n [autoGroupColumnDef]=\\\"autoGroupColumnDef\\\"\\n [suppressAggFuncInHeader]=\\\"true\\\"\\n [treeData]=\\\"treeData\\\"\\n [animateRows]=\\\"true\\\"\\n [isServerSideGroup]=\\\"isServerSideGroup\\\"\\n [getServerSideGroupKey]=\\\"getServerSideGroupKey\\\"\\n [masterDetail]=\\\"masterDetail\\\"\\n [isRowMaster]=\\\"isRowMaster\\\"\\n [detailCellRendererParams]=\\\"detailCellRendererParams\\\"\\n [detailCellRenderer]=\\\"detailCellRenderer\\\"\\n (gridSizeChanged)=\\\"internalGridSizeChanged($event)\\\"\\n (firstDataRendered)=\\\"internalGridFirstDataRendered($event)\\\"\\n [localeText]=\\\"localeText\\\"\\n [groupHideOpenParents]=\\\"groupHideOpenParents\\\"\\n [getMainMenuItems]=\\\"getMainMenuItems\\\"\\n [allowContextMenuWithControlKey]=\\\"false\\\"\\n (paginationChanged)=\\\"onPaginationChanged($event)\\\"\\n (columnResized)=\\\"emitState()\\\"\\n (columnMoved)=\\\"emitState()\\\"\\n (columnPinned)=\\\"emitState()\\\"\\n (columnVisible)=\\\"emitState()\\\"\\n (sortChanged)=\\\"emitState()\\\"\\n (filterChanged)=\\\"handleFilterChanged($event)\\\"\\n>\\n</ag-grid-angular>\\n}\\n\\n<!-- (displayedColumnsChanged)=\\\"displayedColumnsChanged($event)\\\" -->\\n\", dependencies: [{ kind: \"directive\", type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { kind: \"component\", type: i2.AgGridAngular, selector: \"ag-grid-angular\", inputs: [\"gridOptions\", \"modules\", \"statusBar\", \"sideBar\", \"suppressContextMenu\", \"preventDefaultOnContextMenu\", \"allowContextMenuWithControlKey\", \"columnMenu\", \"suppressMenuHide\", \"enableBrowserTooltips\", \"tooltipTrigger\", \"tooltipShowDelay\", \"tooltipHideDelay\", \"tooltipMouseTrack\", \"tooltipShowMode\", \"tooltipInteraction\", \"popupParent\", \"copyHeadersToClipboard\", \"copyGroupHeadersToClipboard\", \"clipboardDelimiter\", \"suppressCopyRowsToClipboard\", \"suppressCopySingleCellRanges\", \"suppressLastEmptyLineOnPaste\", \"suppressClipboardPaste\", \"suppressClipboardApi\", \"suppressCutToClipboard\", \"columnDefs\", \"defaultColDef\", \"defaultColGroupDef\", \"columnTypes\", \"dataTypeDefinitions\", \"maintainColumnOrder\", \"enableStrictPivotColumnOrder\", \"suppressFieldDotNotation\", \"headerHeight\", \"groupHeaderHeight\", \"floatingFiltersHeight\", \"pivotHeaderHeight\", \"pivotGroupHeaderHeight\", \"hidePaddedHeaderRows\", \"allowDragFromColumnsToolPanel\", \"suppressMovableColumns\", \"suppressColumnMoveAnimation\", \"suppressMoveWhenColumnDragging\", \"suppressDragLeaveHidesColumns\", \"suppressGroupChangesColumnVisibility\", \"suppressMakeColumnVisibleAfterUnGroup\", \"suppressRowGroupHidesColumns\", \"colResizeDefault\", \"suppressAutoSize\", \"autoSizePadding\", \"skipHeaderOnAutoSize\", \"autoSizeStrategy\", \"components\", \"editType\", \"suppressStartEditOnTab\", \"getFullRowEditValidationErrors\", \"invalidEditValueMode\", \"singleClickEdit\", \"suppressClickEdit\", \"readOnlyEdit\", \"stopEditingWhenCellsLoseFocus\", \"enterNavigatesVertically\", \"enterNavigatesVerticallyAfterEdit\", \"enableCellEditingOnBackspace\", \"undoRedoCellEditing\", \"undoRedoCellEditingLimit\", \"defaultCsvExportParams\", \"suppressCsvExport\", \"defaultExcelExportParams\", \"suppressExcelExport\", \"excelStyles\", \"findSearchValue\", \"findOptions\", \"quickFilterText\", \"cacheQuickFilter\", \"includeHiddenColumnsInQuickFilter\", \"quickFilterParser\", \"quickFilterMatcher\", \"applyQuickFilterBeforePivotOrAgg\", \"excludeChildrenWhenTreeDataFiltering\", \"enableAdvancedFilter\", \"alwaysPassFilter\", \"includeHiddenColumnsInAdvancedFilter\", \"advancedFilterParent\", \"advancedFilterBuilderParams\", \"advancedFilterParams\", \"suppressAdvancedFilterEval\", \"suppressSetFilterByDefault\", \"enableFilterHandlers\", \"filterHandlers\", \"enableCharts\", \"chartThemes\", \"customChartThemes\", \"chartThemeOverrides\", \"chartToolPanelsDef\", \"chartMenuItems\", \"loadingCellRenderer\", \"loadingCellRendererParams\", \"loadingCellRendererSelector\", \"localeText\", \"masterDetail\", \"keepDetailRows\", \"keepDetailRowsCount\", \"detailCellRenderer\", \"detailCellRendererParams\", \"detailRowHeight\", \"detailRowAutoHeight\", \"context\", \"alignedGrids\", \"tabIndex\", \"rowBuffer\", \"valueCache\", \"valueCacheNeverExpires\", \"enableCellExpressions\", \"suppressTouch\", \"suppressFocusAfterRefresh\", \"suppressBrowserResizeObserver\", \"suppressPropertyNamesCheck\", \"suppressChangeDetection\", \"debug\", \"loading\", \"overlayLoadingTemplate\", \"loadingOverlayComponent\", \"loadingOverlayComponentParams\", \"suppressLoadingOverlay\", \"overlayNoRowsTemplate\", \"noRowsOverlayComponent\", \"noRowsOverlayComponentParams\", \"suppressNoRowsOverlay\", \"pagination\", \"paginationPageSize\", \"paginationPageSizeSelector\", \"paginationAutoPageSize\", \"paginateChildRows\", \"suppressPaginationPanel\", \"pivotMode\", \"pivotPanelShow\", \"pivotMaxGeneratedColumns\", \"pivotDefaultExpanded\", \"pivotColumnGroupTotals\", \"pivotRowTotals\", \"pivotSuppressAutoColumn\", \"suppressExpandablePivotGroups\", \"functionsReadOnly\", \"aggFuncs\", \"suppressAggFuncInHeader\", \"alwaysAggregateAtRootLevel\", \"aggregateOnlyChangedColumns\", \"suppressAggFilteredOnly\", \"removePivotHeaderRowWhenSingleValueColumn\", \"animateRows\", \"cellFlashDuration\", \"cellFadeDuration\", \"allowShowChangeAfterFilter\", \"domLayout\", \"ensureDomOrder\", \"enableCellSpan\", \"enableRtl\", \"suppressColumnVirtualisation\", \"suppressMaxRenderedRowRestriction\", \"suppressRowVirtualisation\", \"rowDragManaged\", \"rowDragInsertDelay\", \"suppressRowDrag\", \"suppressMoveWhenRowDragging\", \"rowDragEntireRow\", \"rowDragMultiRow\", \"rowDragText\", \"dragAndDropImageComponent\", \"dragAndDropImageComponentParams\", \"fullWidthCellRenderer\", \"fullWidthCellRendererParams\", \"embedFullWidthRows\", \"groupDisplayType\", \"groupDefaultExpanded\", \"autoGroupColumnDef\", \"groupMaintainOrder\", \"groupSelectsChildren\", \"groupLockGroupColumns\", \"groupAggFiltering\", \"groupTotalRow\", \"grandTotalRow\", \"suppressStickyTotalRow\", \"groupSuppressBlankHeader\", \"groupSelectsFiltered\", \"showOpenedGroup\", \"groupHideParentOfSingleChild\", \"groupRemoveSingleChildren\", \"groupRemoveLowestSingleChildren\", \"groupHideOpenParents\", \"groupAllowUnbalanced\", \"rowGroupPanelShow\", \"groupRowRenderer\", \"groupRowRendererParams\", \"treeData\", \"treeDataChildrenField\", \"treeDataParentIdField\", \"rowGroupPanelSuppressSort\", \"suppressGroupRowsSticky\", \"groupHierarchyConfig\", \"pinnedTopRowData\", \"pinnedBottomRowData\", \"enableRowPinning\", \"isRowPinnable\", \"isRowPinned\", \"rowModelType\", \"rowData\", \"asyncTransactionWaitMillis\", \"suppressModelUpdateAfterUpdateTransaction\", \"datasource\", \"cacheOverflowSize\", \"infiniteInitialRowCount\", \"serverSideInitialRowCount\", \"suppressServerSideFullWidthLoadingRow\", \"cacheBlockSize\", \"maxBlocksInCache\", \"maxConcurrentDatasourceRequests\", \"blockLoadDebounceMillis\", \"purgeClosedRowNodes\", \"serverSideDatasource\", \"serverSideSortAllLevels\", \"serverSideEnableClientSideSort\", \"serverSideOnlyRefreshFilteredGroups\", \"serverSidePivotResultFieldSeparator\", \"viewportDatasource\", \"viewportRowModelPageSize\", \"viewportRowModelBufferSize\", \"alwaysShowHorizontalScroll\", \"alwaysShowVerticalScroll\", \"debounceVerticalScrollbar\", \"suppressHorizontalScroll\", \"suppressScrollOnNewData\", \"suppressScrollWhenPopupsAreOpen\", \"suppressAnimationFrame\", \"suppressMiddleClickScrolls\", \"suppressPreventDefaultOnMouseWheel\", \"scrollbarWidth\", \"rowSelection\", \"cellSelection\", \"rowMultiSelectWithClick\", \"suppressRowDeselection\", \"suppressRowClickSelection\", \"suppressCellFocus\", \"suppressHeaderFocus\", \"selectionColumnDef\", \"rowNumbers\", \"suppressMultiRangeSelection\", \"enableCellTextSelection\", \"enableRangeSelection\", \"enableRangeHandle\", \"enableFillHandle\", \"fillHandleDirection\", \"suppressClearOnFillReduction\", \"sortingOrder\", \"accentedSort\", \"unSortIcon\", \"suppressMultiSort\", \"alwaysMultiSort\", \"multiSortKey\", \"suppressMaintainUnsortedOrder\", \"icons\", \"rowHeight\", \"rowStyle\", \"rowClass\", \"rowClassRules\", \"suppressRowHoverHighlight\", \"suppressRowTransform\", \"columnHoverHighlight\", \"gridId\", \"deltaSort\", \"treeDataDisplayType\", \"enableGroupEdit\", \"initialState\", \"theme\", \"loadThemeGoogleFonts\", \"themeCssLayer\", \"styleNonce\", \"themeStyleContainer\", \"getContextMenuItems\", \"getMainMenuItems\", \"postProcessPopup\", \"processUnpinnedColumns\", \"processCellForClipboard\", \"processHeaderForClipboard\", \"processGroupHeaderForClipboard\", \"processCellFromClipboard\", \"sendToClipboard\", \"processDataFromClipboard\", \"isExternalFilterPresent\", \"doesExternalFilterPass\", \"getChartToolbarItems\", \"createChartContainer\", \"focusGridInnerElement\", \"navigateToNextHeader\", \"tabToNextHeader\", \"navigateToNextCell\", \"tabToNextCell\", \"getLocaleText\", \"getDocument\", \"paginationNumberFormatter\", \"getGroupRowAgg\", \"isGroupOpenByDefault\", \"ssrmExpandAllAffectsAllRows\", \"initialGroupOrderComparator\", \"processPivotResultColDef\", \"processPivotResultColGroupDef\", \"getDataPath\", \"getChildCount\", \"getServerSideGroupLevelParams\", \"isServerSideGroupOpenByDefault\", \"isApplyServerSideTransaction\", \"isServerSideGroup\", \"getServerSideGroupKey\", \"getBusinessKeyForNode\", \"getRowId\", \"resetRowDataOnUpdate\", \"processRowPostCreate\", \"isRowSelectable\", \"isRowMaster\", \"fillOperation\", \"postSortRows\", \"getRowStyle\", \"getRowClass\", \"getRowHeight\", \"isFullWidthRow\", \"isRowValidDropPosition\"], outputs: [\"toolPanelVisibleChanged\", \"toolPanelSizeChanged\", \"columnMenuVisibleChanged\", \"contextMenuVisibleChanged\", \"cutStart\", \"cutEnd\", \"pasteStart\", \"pasteEnd\", \"columnVisible\", \"columnPinned\", \"columnResized\", \"columnMoved\", \"columnValueChanged\", \"columnPivotModeChanged\", \"columnPivotChanged\", \"columnGroupOpened\", \"newColumnsLoaded\", \"gridColumnsChanged\", \"displayedColumnsChanged\", \"virtualColumnsChanged\", \"columnEverythingChanged\", \"columnsReset\", \"columnHeaderMouseOver\", \"columnHeaderMouseLeave\", \"columnHeaderClicked\", \"columnHeaderContextMenu\", \"componentStateChanged\", \"cellValueChanged\", \"cellEditRequest\", \"rowValueChanged\", \"cellEditingStarted\", \"cellEditingStopped\", \"rowEditingStarted\", \"rowEditingStopped\", \"bulkEditingStarted\", \"bulkEditingStopped\", \"batchEditingStarted\", \"batchEditingStopped\", \"undoStarted\", \"undoEnded\", \"redoStarted\", \"redoEnded\", \"cellSelectionDeleteStart\", \"cellSelectionDeleteEnd\", \"rangeDeleteStart\", \"rangeDeleteEnd\", \"fillStart\", \"fillEnd\", \"filterOpened\", \"filterChanged\", \"filterModified\", \"filterUiChanged\", \"floatingFilterUiChanged\", \"advancedFilterBuilderVisibleChanged\", \"findChanged\", \"chartCreated\", \"chartRangeSelectionChanged\", \"chartOptionsChanged\", \"chartDestroyed\", \"cellKeyDown\", \"gridReady\", \"firstDataRendered\", \"gridSizeChanged\", \"modelUpdated\", \"virtualRowRemoved\", \"viewportChanged\", \"bodyScroll\", \"bodyScrollEnd\", \"dragStarted\", \"dragStopped\", \"dragCancelled\", \"stateUpdated\", \"paginationChanged\", \"rowDragEnter\", \"rowDragMove\", \"rowDragLeave\", \"rowDragEnd\", \"rowDragCancel\", \"rowResizeStarted\", \"rowResizeEnded\", \"columnRowGroupChanged\", \"rowGroupOpened\", \"expandOrCollapseAll\", \"pivotMaxColumnsExceeded\", \"pinnedRowDataChanged\", \"pinnedRowsChanged\", \"rowDataUpdated\", \"asyncTransactionsFlushed\", \"storeRefreshed\", \"headerFocused\", \"cellClicked\", \"cellDoubleClicked\", \"cellFocused\", \"cellMouseOver\", \"cellMouseOut\", \"cellMouseDown\", \"rowClicked\", \"rowDoubleClicked\", \"rowSelected\", \"selectionChanged\", \"cellContextMenu\", \"rangeSelectionChanged\", \"cellSelectionChanged\", \"tooltipShow\", \"tooltipHide\", \"sortChanged\"] }], encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-data-grid', encapsulation: ViewEncapsulation.None, standalone: false, template: \"<div class=\\\"ax-grid-toolbar\\\" *ngIf=\\\"toolbar\\\">\\n <ng-content select=\\\"ax-toolbar\\\"></ng-content>\\n</div>\\n<!-- [enableSorting]=\\\"true\\\" [enableColResize]=\\\"true\\\" [enableFilter]=\\\"allowFiltering\\\" -->\\n\\n@if (gridView) {\\n\\n<ag-grid-angular\\n class=\\\"ag-theme-balham\\\"\\n [getRowClass]=\\\"internalGetRowClass\\\"\\n [cellSelection]=\\\"enableRangeSelection\\\"\\n [serverSideStoreType]=\\\"'partial'\\\"\\n [style.height]=\\\"internalHeight\\\"\\n [columnDefs]=\\\"columnDefs\\\"\\n [enableRtl]=\\\"rtl\\\"\\n [pagination]=\\\"pagination\\\"\\n [rowGroupPanelShow]=\\\"rowGroupPanelShow\\\"\\n [rowModelType]=\\\"rowModelType\\\"\\n [detailRowHeight]=\\\"detailRowHeight\\\"\\n [rowHeight]=\\\"rowHeight\\\"\\n [paginationAutoPageSize]=\\\"paginationAutoPageSize\\\"\\n [paginationPageSize]=\\\"paginationPageSize\\\"\\n [paginationPageSizeSelector]=\\\"paginationPageSizeSelector\\\"\\n [suppressMenuHide]=\\\"true\\\"\\n [maxConcurrentDatasourceRequests]=\\\"maxConcurrentDatasourceRequests\\\"\\n [blockLoadDebounceMillis]=\\\"blockLoadDebounceMillis\\\"\\n [frameworkComponents]=\\\"frameworkComponents\\\"\\n [isFullWidthCell]=\\\"isFullWidthCell\\\"\\n [rowSelection]=\\\"rowSelection\\\"\\n [fullWidthCellRendererFramework]=\\\"fullWidthCellRendererFramework\\\"\\n [cacheBlockSize]=\\\"cacheBlockSize\\\"\\n [fullWidthCellRendererParams]=\\\"fullWidthCellRendererParams\\\"\\n (columnResized)=\\\"handleColumnResized($event)\\\"\\n (cellClicked)=\\\"internalGridCellClicked($event)\\\"\\n (cellDoubleClicked)=\\\"internalGridCellDoubleClicked($event)\\\"\\n (cellFocused)=\\\"internalGridCellFocused($event)\\\"\\n (rowClicked)=\\\"internalGridRowClicked($event)\\\"\\n (selectionChanged)=\\\"internalGridSelectionChanged($event)\\\"\\n (rowSelected)=\\\"rowSelectionChanged($event)\\\"\\n (rowDoubleClicked)=\\\"internalGridRowDoubleClicked($event)\\\"\\n (gridReady)=\\\"internalGridReady($event)\\\"\\n [suppressCellSelection]=\\\"suppressCellSelection\\\"\\n [autoGroupColumnDef]=\\\"autoGroupColumnDef\\\"\\n [suppressAggFuncInHeader]=\\\"true\\\"\\n [treeData]=\\\"treeData\\\"\\n [animateRows]=\\\"true\\\"\\n [isServerSideGroup]=\\\"isServerSideGroup\\\"\\n [getServerSideGroupKey]=\\\"getServerSideGroupKey\\\"\\n [masterDetail]=\\\"masterDetail\\\"\\n [isRowMaster]=\\\"isRowMaster\\\"\\n [detailCellRendererParams]=\\\"detailCellRendererParams\\\"\\n [detailCellRenderer]=\\\"detailCellRenderer\\\"\\n (gridSizeChanged)=\\\"internalGridSizeChanged($event)\\\"\\n (firstDataRendered)=\\\"internalGridFirstDataRendered($event)\\\"\\n [localeText]=\\\"localeText\\\"\\n [groupHideOpenParents]=\\\"groupHideOpenParents\\\"\\n [getMainMenuItems]=\\\"getMainMenuItems\\\"\\n [allowContextMenuWithControlKey]=\\\"false\\\"\\n (paginationChanged)=\\\"onPaginationChanged($event)\\\"\\n (columnResized)=\\\"emitState()\\\"\\n (columnMoved)=\\\"emitState()\\\"\\n (columnPinned)=\\\"emitState()\\\"\\n (columnVisible)=\\\"emitState()\\\"\\n (sortChanged)=\\\"emitState()\\\"\\n (filterChanged)=\\\"handleFilterChanged($event)\\\"\\n>\\n</ag-grid-angular>\\n}\\n\\n<!-- (displayedColumnsChanged)=\\\"displayedColumnsChanged($event)\\\" -->\\n\" }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { id: [{\n type: Input\n }], paginationPageSizeSelector: [{\n type: Input\n }], paginationAutoPageSize: [{\n type: Input\n }], paginationPageSize: [{\n type: Input\n }], remoteOperation: [{\n type: Input\n }], rowMultiSelectWithClick: [{\n type: Input\n }], suppressRowClickSelection: [{\n type: Input\n }], suppressCellSelection: [{\n type: Input\n }], sizeColumnsToFit: [{\n type: Input\n }], showCheckBox: [{\n type: Input\n }], floatingFilter: [{\n type: Input\n }], autoExpand: [{\n type: Input\n }], rowSelectableConditionField: [{\n type: Input\n }], hideDisabledCheckboxes: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], pagination: [{\n type: Input\n }], selectRow: [{\n type: Input\n }], rowGroupPanelShow: [{\n type: Input\n }], loadOnInit: [{\n type: Input\n }], enableRangeSelection: [{\n type: Input\n }], keyField: [{\n type: Input\n }], hasChildField: [{\n type: Input\n }], rowHeight: [{\n type: Input\n }], groupHideOpenParents: [{\n type: Input\n }], maxConcurrentDatasourceRequests: [{\n type: Input\n }], blockLoadDebounceMillis: [{\n type: Input\n }], showRefreshButton: [{\n type: Input\n }], autoNavigatePage: [{\n type: Input\n }], isRowMasterField: [{\n type: Input\n }], rowClass: [{\n type: Input\n }], rtl: [{\n type: Input\n }], searchText: [{\n type: Input\n }], filter: [{\n type: Input\n }], _inlineColumns: [{\n type: ContentChildren,\n args: [AXGridDataColumn]\n }], columnsChange: [{\n type: Output\n }], columns: [{\n type: Input\n }], searchInput: [{\n type: ContentChild,\n args: [AXToolbarSearchComponent, { static: true }]\n }], toolbar: [{\n type: ContentChild,\n args: [AXToolbarComponent, { static: true }]\n }], rowTemplate: [{\n type: ContentChild,\n args: [AXDataGridRowTemplateComponent, { static: true }]\n }], gridDetailTemplate: [{\n type: ContentChild,\n args: [AXDataGridDetailTemplateComponent, { static: true }]\n }], _contentDataSource: [{\n type: ContentChild,\n args: [AXDataSourceComponent, { static: true }]\n }], dataSource: [{\n type: Input\n }], cellClick: [{\n type: Output\n }], cellDbClick: [{\n type: Output\n }], cellFocuse: [{\n type: Output\n }], rowClick: [{\n type: Output\n }], rowDbClick: [{\n type: Output\n }], selectionChanged: [{\n type: Output\n }], rowSelectionChange: [{\n type: Output\n }], onRowSelectionChanged: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvZGF0YWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvZGF0YWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHFCQUFxQixHQUV0QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBV3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFRcEQsT0FBTyxFQUNMLFdBQVcsRUFDWCxrQkFBa0IsRUFDbEIsd0JBQXdCLEVBQ3hCLFlBQVksR0FDYixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsaUNBQWlDLEVBQ2pDLGdDQUFnQyxHQUNqQyxNQUFNLHVDQUF1QyxDQUFDO0FB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QkFJTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFNTixRQUFRO3NCQURQLEtBQUs7Z0JBTU4sR0FBRztzQkFERixLQUFLO2dCQUtLLFVBQVU7c0JBRHBCLEtBQUs7Z0JBZ0JLLE1BQU07c0JBRGhCLEtBQUs7Z0JBdUNFLGNBQWM7c0JBRHJCLGVBQWU7dUJBQUMsZ0JBQWdCO2dCQUlqQyxhQUFhO3NCQURaLE1BQU07Z0JBTUksT0FBTztzQkFEakIsS0FBSztnQkEwQk4sV0FBVztzQkFEVixZQUFZO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJeEQsT0FBTztzQkFETixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJbEQsV0FBVztzQkFEVixZQUFZO3VCQUFDLDhCQUE4QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJOUQsa0JBQWtCO3NCQURqQixZQUFZO3VCQUFDLGlDQUFpQyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJekQsa0JBQWtCO3NCQUR6QixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFNMUMsVUFBVTtzQkFEcEIsS0FBSztnQkFVTixTQUFTO3NCQURSLE1BQU07Z0JBS1AsV0FBVztzQkFEVixNQUFNO2dCQUtQLFVBQVU7c0JBRFQsTUFBTTtnQkFLUCxRQUFRO3NCQURQLE1BQU07Z0JBS1AsVUFBVTtzQkFEVCxNQUFNO2dCQUtQLGdCQUFnQjtzQkFEZixNQUFNO2dCQUtQLGtCQUFrQjtzQkFEakIsTUFBTTtnQkFLUCxxQkFBcUI7c0JBRHBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBWERhdGFTb3VyY2VDb21wb25lbnQsXG4gIEFYRGF0YVNvdXJjZVJlYWRQYXJhbXMsXG59IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cyc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBvdXRwdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENlbGxDbGlja2VkRXZlbnQsXG4gIEZpbHRlckNoYW5nZWRFdmVudCxcbiAgRmlyc3REYXRhUmVuZGVyZWRFdmVudCxcbiAgR2V0TWFpbk1lbnVJdGVtc1BhcmFtcyxcbiAgR3JpZEFwaSxcbiAgR3JpZE9wdGlvbnMsXG4gIEdyaWRTaXplQ2hhbmdlZEV2ZW50LFxuICBSb3dDbGlja2VkRXZlbnQsXG59IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IEFYR3JpZERhdGFDb2x1bW4gfSBmcm9tICcuL2NvbHVtbnMvY29sdW1uLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaWNlbnNlTWFuYWdlciB9IGZyb20gJ2FnLWdyaWQtZW50ZXJwcmlzZSc7XG5pbXBvcnQge1xuICBBWEdyaWRDZWxsRXZlbnQsXG4gIEFYR3JpZFJvd0V2ZW50LFxuICBBWEdyaWRSb3dQYXJhbXMsXG4gIEFYR3JpZFJvd1NlbGVjdGlvbkV2ZW50LFxufSBmcm9tICcuL2RhdGFncmlkLmV2ZW50cyc7XG5cbmltcG9ydCB7XG4gIEFYRGF0YUV2ZW50LFxuICBBWFRvb2xiYXJDb21wb25lbnQsXG4gIEFYVG9vbGJhclNlYXJjaENvbXBvbmVudCxcbiAgQVhWYWx1ZUV2ZW50LFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQVhDb25maWcsIEFYVHJhbnNsYXRvciB9IGZyb20gJ0BhY29yZXgvY29yZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhEYXRlUGlja2VyRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL2RhdGUtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWERhdGFHcmlkU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9kYXRhZ3JpZC50b2tlbic7XG5pbXBvcnQge1xuICBBWERhdGFHcmlkRGV0YWlsVGVtcGxhdGVDb21wb25lbnQsXG4gIEFYRGF0YUdyaWREZXRhaWxUZW1wbGF0ZVJlbmRlcmVyLFxufSBmcm9tICcuL3RlbXBsYXRlcy9kZXRhaWwtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEFYRGF0YUdyaWRSb3dUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vdGVtcGxhdGVzL3Jvdy10ZW1wbGF0ZS5jb21wb25lbnQnO1xuXG5MaWNlbnNlTWFuYWdlci5wcm90b3R5cGUuaXNEaXNwbGF5V2F0ZXJtYXJrID0gKCkgPT4ge1xuICByZXR1cm4gZmFsc2U7XG59O1xuTGljZW5zZU1hbmFnZXIucHJvdG90eXBlLnZhbGlkYXRlTGljZW5zZSA9IGZ1bmN0aW9uICgpIHtcbiAgLy9jb25zb2xlLmluZm8oJ0NyYWNrZWQgYnkgQXJhc2ggT3Nobm91ZGkhJyk7XG59O1xuXG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZENvbHVtbnNDaGFuZ2VFdmVudCBleHRlbmRzIEFYVmFsdWVFdmVudDxcbiAgQVhHcmlkRGF0YUNvbHVtbltdXG4+IHtcbiAgZGVjbGFyZSBjb21wb25lbnQ6IEFYRGF0YUdyaWRDb21wb25lbnQ7XG59XG5leHBvcnQgY2xhc3MgQVhEYXRhR3JpZENlbGxFdmVudCBleHRlbmRzIEFYRGF0YUV2ZW50PEFYR3JpZENlbGxFdmVudD4ge1xuICBkZWNsYXJlIGNvbXBvbmVudDogQVhEYXRhR3JpZENvbXBvbmVudDtcbn1cbmV4cG9ydCBjbGFzcyBBWERhYWdyaWRSb3dDbGlja0V2ZW50IGV4dGVuZHMgQVhEYXRhRXZlbnQ8QVhHcmlkUm93RXZlbnQ+IHtcbiAgZGVjbGFyZSBjb21wb25lbnQ6IEFYRGF0YUdyaWRDb21wb25lbnQ7XG59XG5cbmV4cG9ydCBjbGFzcyBBWERhdGFHcmlkU2VsZWN0aW9uQ2hhbmdlRXZlbnQgZXh0ZW5kcyBBWERhdGFFdmVudDxBWEdyaWRSb3dTZWxlY3Rpb25FdmVudD4ge1xuICBkZWNsYXJlIGNvbXBvbmVudDogQVhEYXRhR3JpZENvbXBvbmVudDtcbn1cblxuZXhwb3J0IGNsYXNzIEFYRGF0YUdyaWRSb3dTZWxlY3Rpb25DaGFuZ2VFdmVudCBleHRlbmRzIEFYRGF0YUV2ZW50PGFueT4ge1xuICBkZWNsYXJlIGNvbXBvbmVudDogQVhEYXRhR3JpZENvbXBvbmVudDtcbiAgZGVjbGFyZSBzZWxlY3RlZDogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZGF0YS1ncmlkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGFncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEFYRGF0YUdyaWRDb21wb25lbnQge1xuICBwcml2YXRlIHNhdmVTYXRhdGUkID0gbmV3IFN1YmplY3QoKTtcblxuICBwcml2YXRlIHNhdmVTdGF0ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIHN0YXRlU2VydmljZSA9IGluamVjdChBWERhdGFHcmlkU3RhdGVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByaXZhdGUgc2V0dGluZ3MgPSBudWxsO1xuXG4gIGFzeW5jIGxvYWQoKSB7XG4gICAgaWYgKHRoaXMuc3RhdGVTZXJ2aWNlICYmIHRoaXMuaWQpIHtcbiAgICAgIHRoaXMuc2V0dGluZ3MgPSBhd2FpdCB0aGlzLnN0YXRlU2VydmljZS5sb2FkKHRoaXMuaWQpO1xuXG4gICAgICBpZiAodGhpcy5zZXR0aW5ncykge1xuICAgICAgICB0aGlzLmdyaWRBcGkuc2V0U3RhdGUodGhpcy5zZXR0aW5ncyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2F2ZSgpIHtcbiAgICBjb25zdCBncmlkU3RhdGUgPSB0aGlzLmdyaWRBcGkuZ2V0U3RhdGUoKTtcblxuICAgIGF3YWl0IHRoaXMuc3RhdGVTZXJ2aWNlLnNhdmUodGhpcy5pZCwgZ3JpZFN0YXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ3JpZEFwaTtcbiAgcHJpdmF0ZSBkYXRhU291cmNlU3VjY2Vzc0NhbGxiYWNrO1xuICBsb2NhbGVUZXh0OiBhbnk7XG5cbiAgcHJpdmF0ZSBpc0luaXRpYWxMb2FkID0gdHJ1ZTtcblxuICBncmlkT3B0aW9uczogR3JpZE9wdGlvbnM7XG4gIGNvbHVtbkRlZnM6IGFueVtdID0gW107XG4gIHJvd01vZGVsVHlwZSA9ICdjbGllbnRTaWRlJztcbiAgZnVsbFdpZHRoQ2VsbFJlbmRlcmVyRnJhbWV3b3JrOiBhbnk7XG4gIGZ1bGxXaWR0aENlbGxSZW5kZXJlclBhcmFtczogYW55O1xuICBmcmFtZXdvcmtDb21wb25lbnRzOiBhbnkgPSB7fTtcbiAgaXNGdWxsV2lkdGhDZWxsOiBGdW5jdGlvbjtcbiAgaW50ZXJuYWxIZWlnaHQgPSAnMTAwJSc7XG4gIGRldGFpbENlbGxSZW5kZXJlcjogYW55O1xuICBkZXRhaWxDZWxsUmVuZGVyZXJQYXJhbXM6IGFueTtcbiAgZGV0YWlsUm93SGVpZ2h0OiBudW1iZXI7XG4gIG1hc3RlckRldGFpbCA9IGZhbHNlO1xuICB0cmVlRGF0YSA9IGZhbHNlO1xuICBlbmFiZWxTZWxlY3QgPSBmYWxzZTtcbiAgZ3JpZFZpZXcgPSBmYWxzZTtcbiAgb2xkU2VsZWN0aW9uTm9kZXM6IGFueVtdID0gW107XG4gIGF1dG9Hcm91cENvbHVtbkRlZjogYW55ID0ge307XG4gIGN1cnJlbnRQYWdlID0gMTtcblxuICBASW5wdXQoKVxuICBpZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yOiBudW1iZXJbXSB8IGJvb2xlYW4gPSBbMTAsIDIwXTtcblxuICBASW5wdXQoKVxuICBwYWdpbmF0aW9uQXV0b1BhZ2VTaXplID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGFnaW5hdGlvblBhZ2VTaXplID0gMjA7XG5cbiAgY2FjaGVCbG9ja1NpemUgPSB0aGlzLnBhZ2luYXRpb25QYWdlU2l6ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVtb3RlT3BlcmF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvd011bHRpU2VsZWN0V2l0aENsaWNrID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHN1cHByZXNzUm93Q2xpY2tTZWxlY3Rpb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdXBwcmVzc0NlbGxTZWxlY3Rpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2l6ZUNvbHVtbnNUb0ZpdCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgc2hvd0NoZWNrQm94ID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBmbG9hdGluZ0ZpbHRlciA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGF1dG9FeHBhbmQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICByb3dTZWxlY3RhYmxlQ29uZGl0aW9uRmllbGQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBoaWRlRGlzYWJsZWRDaGVja2JveGVzOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNlbGVjdGlvbk1vZGU6ICdzaW5nbGUnIHwgJ211bHRpcGxlJyA9ICdzaW5nbGUnO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHNlbGVjdFJvdzogYW55W10gPSBbXTtcblxuICBASW5wdXQoKVxuICByb3dHcm91cFBhbmVsU2hvdzogJ2Fsd2F5cycgfCAnbmV2ZXInID0gJ25ldmVyJztcblxuICBASW5wdXQoKVxuICBsb2FkT25Jbml0OiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBlbmFibGVSYW5nZVNlbGVjdGlvbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGtleUZpZWxkOiBzdHJpbmcgPSAnbnVsbCc7XG5cbiAgQElucHV0KClcbiAgaGFzQ2hpbGRGaWVsZDogc3RyaW5nID0gJ251bGwnO1xuXG4gIEBJbnB1dCgpXG4gIHJvd0hlaWdodCA9IDI4O1xuXG4gIEBJbnB1dCgpXG4gIGdyb3VwSGlkZU9wZW5QYXJlbnRzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgbWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0czogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGJsb2NrTG9hZERlYm91bmNlTWlsbGlzOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgc2hvd1JlZnJlc2hCdXR0b24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGF1dG9OYXZpZ2F0ZVBhZ2UgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBpc1Jvd01hc3RlckZpZWxkOiBzdHJpbmcgPSBudWxsO1xuXG4gIG9uRmlsdGVyQ2hhbmdlZCA9IG91dHB1dDxhbnk+KCk7XG5cbiAgQElucHV0KClcbiAgcm93Q2xhc3M/OiAoXG4gICAgcGFyYW1zOiBBWEdyaWRSb3dQYXJhbXNcbiAgKSA9PiAoc3RyaW5nIHwgc3RyaW5nW10pIHwgKHN0cmluZyB8IHN0cmluZ1tdKTtcblxuICBASW5wdXQoKVxuICBydGw6IGJvb2xlYW4gPSBBWENvbmZpZy5nZXQoJ2xheW91dC5ydGwnKTtcblxuICBwcml2YXRlIF9zZWFyY2hUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgc2VhcmNoVGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zZWFyY2hUZXh0O1xuICB9XG4gIHB1YmxpYyBzZXQgc2VhcmNoVGV4dCh2OiBzdHJpbmcpIHtcbiAgICBpZiAodiAhPT0gdGhpcy5fc2VhcmNoVGV4dCkge1xuICAgICAgdGhpcy5fc2VhcmNoVGV4dCA9IHY7XG4gICAgICBpZiAodGhpcy5ncmlkQXBpKSB7XG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgICAgICB0aGlzLmdyaWRBcGkuc2V0UXVpY2tGaWx0ZXIodGhpcy5zZWFyY2hUZXh0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXI6IGFueVtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGZpbHRlcigpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcbiAgfVxuICBwdWJsaWMgc2V0IGZpbHRlcih2OiBhbnlbXSkge1xuICAgIGlmICh2ICE9PSB0aGlzLl9maWx0ZXIpIHtcbiAgICAgIHRoaXMuX2ZpbHRlciA9IHY7XG4gICAgICB0aGlzLl9maWx0ZXIuZm9yRWFjaCgoZikgPT4ge1xuICAgICAgICBjb25zdCBmYyA9IHRoaXMuZ3JpZEFwaS5nZXRGaWx0ZXJJbnN0YW5jZShmLmZpZWxkKTtcbiAgICAgICAgaWYgKGZjKSB7XG4gICAgICAgICAgY29uc3QgZmYgPSBmYy5nZXRGcmFtZXdvcmtDb21wb25lbnRJbnN0YW5jZSgpO1xuICAgICAgICAgIGZmLnNldE1vZGVsKGYpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICByb3dTZWxlY3Rpb24gPSB7XG4gICAgbW9kZTogJ3NpbmdsZVJvdycsXG5cbiAgICBncm91cFNlbGVjdHM6ICdzZWxmJyxcbiAgICBlbmFibGVTZWxlY3Rpb25XaXRob3V0S2V5czogZmFsc2UsXG5cbiAgICBlbmFibGVDbGlja1NlbGVjdGlvbjogZmFsc2UsXG5cbiAgICBjaGVja2JveGVzOiBmYWxzZSxcblxuICAgIGhlYWRlckNoZWNrYm94OiBmYWxzZSxcblxuICAgIGNvcHlTZWxlY3RlZFJvd3M6IGZhbHNlLFxuXG4gICAgaGlkZURpc2FibGVkQ2hlY2tib3hlczogZmFsc2UsXG5cbiAgICBpc1Jvd1NlbGVjdGFibGU6IChyb3dEYXRhKSA9PiB7XG4gICAgICByZXR1cm4gcm93RGF0YS5kYXRhW3RoaXMucm93U2VsZWN0YWJsZUNvbmRpdGlvbkZpZWxkXTtcbiAgICB9LFxuICB9O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQVhHcmlkRGF0YUNvbHVtbilcbiAgcHJpdmF0ZSBfaW5saW5lQ29sdW1uczogUXVlcnlMaXN0PEFYR3JpZERhdGFDb2x1bW4+O1xuXG4gIEBPdXRwdXQoKVxuICBjb2x1bW5zQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhEYXRhR3JpZENvbHVtbnNDaGFuZ2VFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8QVhEYXRhR3JpZENvbHVtbnNDaGFuZ2VFdmVudD4oKTtcblxuICBwcml2YXRlIF9jb2x1bW5zOiBBWEdyaWREYXRhQ29sdW1uW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGdldCBjb2x1bW5zKCk6IEFYR3JpZERhdGFDb2x1bW5bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2lubGluZUNvbHVtbnNcbiAgICAgID8gWy4uLnRoaXMuX2NvbHVtbnMsIC4uLnRoaXMuX2lubGluZUNvbHVtbnMudG9BcnJheSgpXVxuICAgICAgOiB0aGlzLl9jb2x1bW5zO1xuICB9XG5cbiAgcHVibGljIHNldCBjb2x1bW5zKHZhbDogQVhHcmlkRGF0YUNvbHVtbltdKSB7XG4gICAgaWYgKHZhbCAmJiB2YWwubGVuZ3RoKSB7XG4gICAgICBsZXQgb2xkID0gdGhpcy5fY29sdW1ucztcbiAgICAgIHRoaXMuX2NvbHVtbnMgPSB2YWw7XG4gICAgICB0aGlzLmNvbHVtbnNDaGFuZ2UuZW1pdCh7XG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgdmFsdWU6IHZhbCxcbiAgICAgICAgb2xkVmFsdWU6IG9sZCxcbiAgICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBkZWZhdWx0Q29sRGVmOiBhbnkgPSB7XG4gICAgZmlsdGVyOiB0cnVlLFxuICAgIGZsb2F0aW5nRmlsdGVyOiB0cnVlLFxuICB9O1xuXG4gIEBDb250ZW50Q2hpbGQoQVhUb29sYmFyU2VhcmNoQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBzZWFyY2hJbnB1dDogQVhUb29sYmFyU2VhcmNoQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoQVhUb29sYmFyQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0b29sYmFyOiBBWFRvb2xiYXJDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChBWERhdGFHcmlkUm93VGVtcGxhdGVDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJvd1RlbXBsYXRlOiBBWERhdGFHcmlkUm93VGVtcGxhdGVDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChBWERhdGFHcmlkRGV0YWlsVGVtcGxhdGVDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIGdyaWREZXRhaWxUZW1wbGF0ZTogQVhEYXRhR3JpZERldGFpbFRlbXBsYXRlQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoQVhEYXRhU291cmNlQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcml2YXRlIF9jb250ZW50RGF0YVNvdXJjZTogQVhEYXRhU291cmNlQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgX2RhdGFTb3VyY2U6IEFYRGF0YVNvdXJjZUNvbXBvbmVudDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogQVhEYXRhU291cmNlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVNvdXJjZSA/IHRoaXMuX2RhdGFTb3VyY2UgOiB0aGlzLl9jb250ZW50RGF0YVNvdXJjZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGF0YVNvdXJjZSh2OiBBWERhdGFTb3VyY2VDb21wb25lbnQpIHtcbiAgICB0aGlzLl9kYXRhU291cmNlID0gdjtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBjZWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkQ2VsbEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkQ2VsbEV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBjZWxsRGJDbGljazogRXZlbnRFbWl0dGVyPEFYRGF0YUdyaWRDZWxsRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYRGF0YUdyaWRDZWxsRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGNlbGxGb2N1c2U6IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkQ2VsbEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkQ2VsbEV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICByb3dDbGljazogRXZlbnRFbWl0dGVyPEFYRGFhZ3JpZFJvd0NsaWNrRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYRGFhZ3JpZFJvd0NsaWNrRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJvd0RiQ2xpY2s6IEV2ZW50RW1pdHRlcjxBWERhYWdyaWRSb3dDbGlja0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWERhYWdyaWRSb3dDbGlja0V2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBzZWxlY3Rpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhEYXRhR3JpZFNlbGVjdGlvbkNoYW5nZUV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkU2VsZWN0aW9uQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJvd1NlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPEFYRGF0YUdyaWRTZWxlY3Rpb25DaGFuZ2VFdmVudD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8QVhEYXRhR3JpZFNlbGVjdGlvbkNoYW5nZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBvblJvd1NlbGVjdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWERhdGFHcmlkUm93U2VsZWN0aW9uQ2hhbmdlRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYRGF0YUdyaWRSb3dTZWxlY3Rpb25DaGFuZ2VFdmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHRoaXMubG9jYWxlVGV4dCA9IEFYVHJhbnNsYXRvci5nZXQoJ2RhdGFHcmlkJyk7XG4gIH1cblxuICBwcml2YXRlIGNhbGNIZWlnaHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudG9vbGJhcikge1xuICAgICAgdGhpcy5pbnRlcm5hbEhlaWdodCA9IGBjYWxjKDEwMCUgLSAkezQwfXB4KWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxIZWlnaHQgPSAnMTAwJSc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaW50ZW5hbEdyaWREYXRhU291cmNlKCkge1xuICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgIHJldHVybiB7XG4gICAgICByb3dDb3VudDogbnVsbCxcbiAgICAgIGdldFJvd3M6IChwYXJhbXMpID0+IHtcbiAgICAgICAgdGhhdC5kYXRhU291cmNlU3VjY2Vzc0NhbGxiYWNrID0gcGFyYW1zLnN1Y2Nlc3M7XG5cbiAgICAgICAgY29uc3QgbG9hZFBhcmFtczogQVhEYXRhU291cmNlUmVhZFBhcmFtcyA9IHt9O1xuXG4gICAgICAgIGxvYWRQYXJhbXMuc2VhcmNoVGV4dCA9IHRoYXQuc2VhcmNoVGV4dDtcblxuICAgICAgICBsb2FkUGFyYW1zLnNraXAgPSBwYXJhbXMucmVxdWVzdC5zdGFydFJvdztcblxuICAgICAgICBsb2FkUGFyYW1zLnRha2UgPSBwYXJhbXMucmVxdWVzdC5lbmRSb3cgLSBwYXJhbXMucmVxdWVzdC5zdGFydFJvdztcblxuICAgICAgICBsb2FkUGFyYW1zLnNvcnQgPSBwYXJhbXMucmVxdWVzdC5zb3J0TW9kZWwubWFwKChjKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZpZWxkOiBjLmNvbElkLFxuICAgICAgICAgICAgZGlyOiBjLnNvcnQsXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbG9hZFBhcmFtcy5ncm91cCA9IHtcbiAgICAgICAgICBmaWVsZHM6IHBhcmFtcy5yZXF1ZXN0LnJvd0dyb3VwQ29scy5tYXAoKHIpID0+IHIuZmllbGQpLFxuICAgICAgICAgIGtleXM6IHBhcmFtcy5yZXF1ZXN0Lmdyb3VwS2V5cyxcbiAgICAgICAgICBwYXJlbnREYXRhOiBwYXJhbXMucGFyZW50Tm9kZS5kYXRhLFxuICAgICAgICB9O1xuXG4gICAgICAgIGxvYWRQYXJhbXMuZmlsdGVyID0gcGFyYW1zLnJlcXVlc3QuZmlsdGVyTW9kZWw7XG5cbiAgICAgICAgdGhhdC5kYXRhU291cmNlLmZldGNoKGxvYWRQYXJhbXMpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2F2ZVN0YXRlU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnNhdmUoKTtcblxuICAgICAgdGhpcy5zYXZlU3RhdGVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5ncmlkQXBpLmRlc3Ryb3koKTtcbiAgfVxuXG4gIGlzU2VydmVyU2lkZUdyb3VwID0gKGUpID0+IHtcbiAgICByZXR1cm4gZVt0aGlzLmhhc0NoaWxkRmllbGRdO1xuICB9O1xuXG4gIGdldENvbHVtbkRlZnMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuZ3JpZEFwaS5nZXRDb2x1bW5EZWZzKCk7XG4gIH07XG5cbiAgZ2V0Q3VycmVudFBhZ2VOdW1iZXIgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGN1cnJlbnQ6IHRoaXMuZ3JpZEFwaS5wYWdpbmF0aW9uR2V0Q3VycmVudFBhZ2UoKSArIDEsXG4gICAgICB0b3RhbDogdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25HZXRUb3RhbFBhZ2VzKCksXG4gICAgfTtcbiAgfTtcblxuICBwYWdpbmF0aW9uR29Ub1BhZ2UobnVtYmVyKSB7XG4gICAgdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25Hb1RvUGFnZShudW1iZXIgLSAxKTtcbiAgfVxuXG4gIGdldFNlcnZlclNpZGVHcm91cEtleSA9IChlKSA9PiB7XG4gICAgcmV0dXJuIGVbdGhpcy5rZXlGaWVsZF07XG4gIH07XG4gIGludGVybmFsR3JpZFJlYWR5KGdyaWRPcHRpb25zKSB7XG4gICAgdGhpcy5ncmlkQXBpID0gZ3JpZE9wdGlvbnMuYXBpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB0aGlzLmlzSW5pdGlhbExvYWQgPSBmYWxzZTtcbiAgICB9LCA1MDApO1xuICAgIHRoaXMucm93U2VsZWN0aW9uLm1vZGUgPVxuICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlID09PSAnc2luZ2xlJyA/ICdzaW5nbGVSb3cnIDogJ211bHRpUm93JztcblxuICAgIHRoaXMucm93U2VsZWN0aW9uLmVuYWJsZVNlbGVjdGlvbldpdGhvdXRLZXlzID0gdGhpcy5yb3dNdWx0aVNlbGVjdFdpdGhDbGljaztcblxuICAgIHRoaXMucm93U2VsZWN0aW9uLmVuYWJsZUNsaWNrU2VsZWN0aW9uID0gdGhpcy5zdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uO1xuXG4gICAgdGhpcy5yb3dTZWxlY3Rpb24uaGlkZURpc2FibGVkQ2hlY2tib3hlcyA9IHRoaXMuaGlkZURpc2FibGVkQ2hlY2tib3hlcztcblxuICAgIHRoaXMubWFwQ29sdW1ucygpO1xuICAgIHRoaXMuY2FsY0hlaWdodCgpO1xuXG4gICAgaWYgKCF0aGlzLmxvYWRPbkluaXQpIHtcbiAgICAgIHRoaXMubG9hZE9uSW5pdCA9IHRydWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVtb3RlT3BlcmF0aW9uKSB7XG4gICAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbihcbiAgICAgICAgJ3NlcnZlclNpZGVEYXRhc291cmNlJyxcbiAgICAgICAgdGhpcy5pbnRlbmFsR3JpZERhdGFTb3VyY2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnJlbW90ZU9wZXJhdGlvbikge1xuICAgICAgdGhpcy5yZWZyZXNoKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2hvd1JlZnJlc2hCdXR0b24pIHtcbiAgICAgIHRoaXMubWFrZVJlZnJlc2hCdG4oKTtcbiAgICB9XG4gIH1cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xuICAgIGlmICh0aGlzLnJvd1RlbXBsYXRlKSB7XG4gICAgICB0aGlzLmZ1bGxXaWR0aENlbGxSZW5kZXJlckZyYW1ld29yayA9IHRoaXMucm93VGVtcGxhdGUucmVuZGVyZXI7XG4gICAgICB0aGlzLmZ1bGxXaWR0aENlbGxSZW5kZXJlclBhcmFtcyA9IHRoaXMucm93VGVtcGxhdGUucGFyYW1zO1xuICAgIH1cblxuICAgIHRoaXMuZnJhbWV3b3JrQ29tcG9uZW50cy5hZ0RhdGVJbnB1dCA9IEFYRGF0ZVBpY2tlckZpbHRlckNvbXBvbmVudDtcblxuICAgIGlmICh0aGlzLmdyaWREZXRhaWxUZW1wbGF0ZSkge1xuICAgICAgdGhpcy5tYXN0ZXJEZXRhaWwgPSB0cnVlO1xuICAgICAgdGhpcy5kZXRhaWxDZWxsUmVuZGVyZXIgPSBBWERhdGFHcmlkRGV0YWlsVGVtcGxhdGVSZW5kZXJlcjtcblxuICAgICAgdGhpcy5kZXRhaWxDZWxsUmVuZGVyZXJQYXJhbXMgPSB7XG4gICAgICAgIHRlbXBsYXRlUmVmOiB0aGlzLmdyaWREZXRhaWxUZW1wbGF0ZS50ZW1wbGF0ZVJlZixcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuZGV0YWlsUm93SGVpZ2h0ID0gK3RoaXMuZ3JpZERldGFpbFRlbXBsYXRlLmhlaWdodDtcbiAgICB9XG5cbiAgICB0aGlzLmlzRnVsbFdpZHRoQ2VsbCA9ICgpID0+IHtcbiAgICAgIHJldHVybiB0aGF0LnJvd1RlbXBsYXRlICE9IG51bGw7XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdzaW5nbGUnKSB7XG4gICAgICB0aGlzLnJvd1NlbGVjdGlvbi5ncm91cFNlbGVjdHMgPSAnc2VsZic7XG4gICAgfVxuICAgIGlmICh0aGlzLmtleUZpZWxkICE9PSAnbnVsbCcgJiYgdGhpcy5oYXNDaGlsZEZpZWxkICE9PSAnbnVsbCcpIHtcbiAgICAgIHRoaXMucm93R3JvdXBQYW5lbFNob3cgPSAnbmV2ZXInO1xuICAgICAgdGhpcy50cmVlRGF0YSA9IHRydWU7XG4gICAgfVxuICAgIGlmICh0aGlzLnJlbW90ZU9wZXJhdGlvbikge1xuICAgICAgdGhpcy5yb3dNb2RlbFR5cGUgPSAnc2VydmVyU2lkZSc7XG4gICAgfVxuICAgIC8vXG4gICAgaWYgKHRoaXMucnRsID09IG51bGwpIHtcbiAgICAgIHRoaXMucnRsID1cbiAgICAgICAgd2luZG93XG4gICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5yZWYubmF0aXZlRWxlbWVudCwgbnVsbClcbiAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnZGlyZWN0aW9uJykgPT09ICdydGwnO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnN0YXRlU2VydmljZSkge1xuICAgICAgdGhpcy5zYXZlU3RhdGVTdWJzY3JpcHRpb24gPSB0aGlzLnNhdmVTYXRhdGUkXG4gICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDAwKSlcbiAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zYXZlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgZ3JpZFNlbGVjdFJvdygpIHtcbiAgICBpZiAodGhpcy5ncmlkQXBpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuc2VsZWN0Um93ICYmXG4gICAgICAgIHRoaXMuc2VsZWN0Um93Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgdGhpcy5ncmlkQXBpICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgdHlwZW9mIHRoaXMuc2VsZWN0Um93WzBdICE9ICdvYmplY3QnXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgaWYgKG5vZGUuZGF0YSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBsZXQgc2VsZWN0OiBib29sZWFuID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdFJvdy5mb3JFYWNoKChpZCkgPT4ge1xuICAgICAgICAgICAgICBpZiAobm9kZS5kYXRhW3RoaXMua2V5RmllbGRdID09PSBpZCkge1xuICAgICAgICAgICAgICAgIHNlbGVjdCA9IHRydWU7XG4gICAgICAgICAgICAgICAgbm9kZS5zZXRTZWxlY3RlZChzZWxlY3QpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLmZvckVhY2hOb2RlKChub2RlKSA9PiB7XG4gICAgICAgICAgaWYgKG5vZGUuZGF0YSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBsZXQgc2VsZWN0OiBib29sZWFuID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RSb3cubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0Um93LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5yb3dJbmRleCAhPSB1bmRlZmluZWQgJiYgaXRlbS5yb3dMZXZlbCAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgIGlmIChub2RlLmRhdGFbdGhpcy5rZXlGaWVsZF0gPT09IGl0ZW0uZGF0YVt0aGlzLmtleUZpZWxkXSkge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3QgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMua2V5RmllbGQgIT09ICdudWxsJyAmJlxuICAgICAgICAgICAgICAgICAgICBub2RlLmRhdGFbdGhpcy5rZXlGaWVsZF0gPT09IGl0ZW1bdGhpcy5rZXlGaWVsZF1cbiAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3QgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5yb3dTZWxlY3RhYmxlQ29uZGl0aW9uRmllbGQpIHtcbiAgICAgICAgICAgICAgbm9kZS5zZXRSb3dTZWxlY3RhYmxlKFxuICAgICAgICAgICAgICAgIG5vZGUuZGF0YVt0aGlzLnJvd1NlbGVjdGFibGVDb25kaXRpb25GaWVsZF1cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG5vZGUuc2V0U2VsZWN0ZWQoc2VsZWN0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJlYnVpbGRHcmlkKCkge1xuICAgIHRoaXMubWFwQ29sdW1ucygpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuc2l6ZUNvbHVtbnNUb0ZpdCkge1xuICAgICAgICB0aGlzLmdyaWRBcGkuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xuICAgICAgfVxuICAgIH0sIDEwKTtcbiAgfVxuXG4gIGdldE1haW5NZW51SXRlbXMgPSAocGFyYW1zOiBHZXRNYWluTWVudUl0ZW1zUGFyYW1zKSA9PiB7XG4gICAgY29uc3QgY29sRGVmID0gcGFyYW1zLmNvbHVtbi5nZXRDb2xEZWYoKTtcbiAgICBjb25zdCBtZW51SXRlbXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBjb25zdCBoYXNGaWx0ZXIgPVxuICAgICAgQXJyYXkuaXNBcnJheShjb2xEZWYuZmlsdGVyUGFyYW1zPy52YWx1ZXMpICYmXG4gICAgICBjb2xEZWYuZmlsdGVyUGFyYW1zLnZhbHVlcy5sZW5ndGggPiAwO1xuICAgIGNvbnN0IGhhc1NvcnQgPSAhIWNvbERlZi5zb3J0YWJsZTtcblxuICAgIGlmIChoYXNGaWx0ZXIpIHtcbiAgICAgIG1lbnVJdGVtcy5wdXNoKCdjb2x1bW5GaWx0ZXInKTtcbiAgICB9XG5cbiAgICBpZiAoaGFzU29ydCkge1xuICAgICAgbWVudUl0ZW1zLnB1c2goJ3NvcnRBc2NlbmRpbmcnLCAnc29ydERlc2NlbmRpbmcnLCAnc29ydFVuU29ydCcpO1xuICAgIH1cblxuICAgIG1lbnVJdGVtcy5wdXNoKCdwaW5TdWJNZW51JywgJ2NvbHVtbkNob29zZXInKTtcblxuICAgIHJldHVybiBtZW51SXRlbXM7XG4gIH07XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdtdWx0aXBsZScpIHtcbiAgICAgIHRoaXMucm93U2VsZWN0aW9uLmVuYWJsZUNsaWNrU2VsZWN0aW9uID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJlZURhdGEgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuY29sdW1uRGVmcyA9IHRoaXMuY29sdW1ucy5tYXAoKGMpID0+IGMucmVuZGVyKCkpO1xuXG4gICAgICBjb25zdCBncm91cENvbHVtbiA9IHRoaXMuY29sdW1uRGVmcy5maW5kKFxuICAgICAgICAoYykgPT4gYy5yb3dHcm91cEluZGV4ID09ICcwJyAmJiBjLmZpZWxkICE9PSAnJ1xuICAgICAgKTtcblxuICAgICAgdGhpcy5hdXRvR3JvdXBDb2x1bW5EZWYgPSB7XG4gICAgICAgIGhlYWRlck5hbWU6IGdyb3VwQ29sdW1uLmhlYWRlck5hbWUsXG4gICAgICAgIHdpZHRoOiBncm91cENvbHVtbi53aWR0aCxcbiAgICAgICAgY2VsbFJlbmRlcmVyUGFyYW1zOiB7IGNoZWNrYm94OiB0aGlzLnNob3dDaGVja0JveCB9LFxuICAgICAgICBmaWVsZDogZ3JvdXBDb2x1bW4uZmllbGQsXG4gICAgICB9O1xuXG4gICAgICB0aGlzLmNvbHVtbkRlZnMuZm9yRWFjaCgoZWxtKSA9PiB7XG4gICAgICAgIGlmIChlbG0ucm93R3JvdXBJbmRleCA+IC0xKSB7XG4gICAgICAgICAgZWxtLmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5ncmlkVmlldyA9IHRydWU7XG5cbiAgICB0aGlzLmVuYWJlbFNlbGVjdCA9IHRydWU7XG4gICAgdGhpcy5kYXRhU291cmNlLm9uRGF0YVJlY2VpdmVkLnN1YnNjcmliZSgoX2RhdGEpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IF9kYXRhLmRhdGEucmVzdWx0O1xuICAgICAgdGhpcy5oaWRlTG9hZGluZygpO1xuICAgICAgbGV0IGl0ZW1zOiBhbnlbXTtcbiAgICAgIGxldCB0b3RhbENvdW50OiBudW1iZXI7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHQpKSB7XG4gICAgICAgIGl0ZW1zID0gcmVzdWx0O1xuICAgICAgICB0b3RhbENvdW50ID0gcmVzdWx0Lmxlbmd0aDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGl0ZW1zID0gcmVzdWx0Lml0ZW1zO1xuICAgICAgICB0b3RhbENvdW50ID0gcmVzdWx0LnRvdGFsQ291bnQ7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5kYXRhU291cmNlU3VjY2Vzc0NhbGxiYWNrKSB7XG4gICAgICAgIGlmICghdGhpcy5sb2FkT25Jbml0KSB7XG4gICAgICAgICAgdGhpcy5kYXRhU291cmNlU3VjY2Vzc0NhbGxiYWNrKHtcbiAgICAgICAgICAgIHJvd0RhdGE6IFtdLFxuICAgICAgICAgICAgcm93Q291bnQ6IDAsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5kYXRhU291cmNlU3VjY2Vzc0NhbGxiYWNrKHtcbiAgICAgICAgICAgIHJvd0RhdGE6IGl0ZW1zLFxuICAgICAgICAgICAgcm93Q291bnQ6IHRvdGFsQ291bnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghdGhpcy5sb2FkT25Jbml0ICYmIHRoaXMuZ3JpZEFwaSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ3Jvd0RhdGEnLCBbXSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5ncmlkQXBpICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbigncm93RGF0YScsIGl0ZW1zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5hdXRvTmF2aWdhdGVQYWdlKSB7XG4gICAgICAgIHRoaXMucGFnaW5hdGlvbkdvVG9QYWdlKHRoaXMuY3VycmVudFBhZ2UpO1xuICAgICAgfVxuICAgICAgdGhpcy5ncmlkU2VsZWN0Um93KCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNob3dMb2FkaW5nKHRydWUpO1xuICAgIHRoaXMuZGF0YVNvdXJjZS5vbkZldGNoU3RhcnQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuc2hvd0xvYWRpbmcoZmFsc2UpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuc2VhcmNoSW5wdXQpIHtcbiAgICAgIHRoaXMuc2VhcmNoSW5wdXQub25WYWx1ZUNoYW5nZWQuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IGMudmFsdWU7XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbWFwQ29sdW1ucygpIHtcbiAgICB0aGlzLmNvbHVtbkRlZnMgPSB0aGlzLmNvbHVtbnMubWFwKChjKSA9PiBjLnJlbmRlcigpKTtcblxuICAgIGNvbnN0IGhlYWRlckNoZWNrYm94U2VsZWN0aW9uID0gdGhpcy5jb2x1bW5EZWZzLmZpbmQoXG4gICAgICAoeCkgPT4geC5oZWFkZXJDaGVja2JveFNlbGVjdGlvblxuICAgICk7XG5cbiAgICBpZiAoaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMucm93U2VsZWN0aW9uLmhlYWRlckNoZWNrYm94ID1cbiAgICAgICAgaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb24uaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb247XG4gICAgfVxuXG4gICAgY29uc3QgaXNTZWxlY3Rpb24gPSB0aGlzLmNvbHVtbkRlZnMuZmluZCgoeCkgPT4geC5jaGVja2JveFNlbGVjdGlvbik7XG5cbiAgICBpZiAoaXNTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMucm93U2VsZWN0aW9uLmNoZWNrYm94ZXMgPSBpc1NlbGVjdGlvbi5jaGVja2JveFNlbGVjdGlvbjtcblxuICAgICAgaWYgKGlzU2VsZWN0aW9uLnJvd1NlbGVjdGFibGVDb25kaXRpb25GaWVsZCkge1xuICAgICAgICB0aGlzLnJvd1NlbGVjdGFibGVDb25kaXRpb25GaWVsZCA9XG4gICAgICAgICAgaXNTZWxlY3Rpb24ucm93U2VsZWN0YWJsZUNvbmRpdGlvbkZpZWxkO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNvbHVtbkRlZnMgPSB0aGlzLmNvbHVtbkRlZnMuZmlsdGVyKCh4KSA9PiAheC5jaGVja2JveFNlbGVjdGlvbik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ3JpZERldGFpbFRlbXBsYXRlKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuY29sdW1uRGVmc1swXS5jaGVja2JveFNlbGVjdGlvbiA9PT0gdHJ1ZSAmJlxuICAgICAgICB0aGlzLmNvbHVtbkRlZnNbMF0uZmllbGQgPT09ICcnXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jb2x1bW5EZWZzWzFdLmNlbGxSZW5kZXJlciA9ICdhZ0dyb3VwQ2VsbFJlbmRlcmVyJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29sdW1uRGVmc1swXS5jZWxsUmVuZGVyZXIgPSAnYWdHcm91cENlbGxSZW5kZXJlcic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaGFzQ2hpbGRGaWVsZCA9PT0gJ251bGwnKSB7XG4gICAgICBjb25zdCBncm91cENvbHVtbiA9IHRoaXMuY29sdW1uRGVmcy5maW5kKFxuICAgICAgICAoYykgPT4gYy5yb3dHcm91cEluZGV4ID09PSB1bmRlZmluZWQgJiYgYy5maWVsZCAhPT0gJydcbiAgICAgICk7XG4gICAgICBpZiAoZ3JvdXBDb2x1bW4gJiYgdGhpcy5ncm91cEhpZGVPcGVuUGFyZW50cyA9PSBmYWxzZSkge1xuICAgICAgICB0aGlzLmF1dG9Hcm91cENvbHVtbkRlZiA9IHtcbiAgICAgICAgICBoZWFkZXJOYW1lOiBncm91cENvbHVtbi5oZWFkZXJOYW1lLFxuICAgICAgICAgIHdpZHRoOiBncm91cENvbHVtbi53aWR0aCxcbiAgICAgICAgICBjZWxsUmVuZGVyZXJQYXJhbXM6IHsgY2hlY2tib3g6IHRoaXMuc2hvd0NoZWNrQm94IH0sXG4gICAgICAgICAgZmllbGQ6IGdyb3VwQ29sdW1uLmZpZWxkLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY29sdW1uRGVmcy5mb3JFYWNoKChlbG0pID0+IHtcbiAgICAgIGlmIChlbG0ucm93R3JvdXBJbmRleCA+IC0xKSB7XG4gICAgICAgIGVsbS5oaWRlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGRpc3BsYXllZENvbHVtbnNDaGFuZ2VkKGUpIHtcbiAgICBpZiAodGhpcy5oYXNDaGlsZEZpZWxkID09PSAnbnVsbCcpIHtcbiAgICAgIGNvbnN0IGVlID0gZS5jb2x1bW5BcGkuZ2V0QWxsRGlzcGxheWVkQ29sdW1uR3JvdXBzKCk7XG4gICAgICBjb25zdCBlZWUgPSBlZS5maW5kKFxuICAgICAgICAoYykgPT4gYy5jb2xJZCAhPT0gJ2FnLUdyaWQtQXV0b0NvbHVtbicgJiYgYy5jb2xJZCAhPT0gJzAnXG4gICAgICApO1xuICAgICAgaWYgKGVlZSAmJiBlZWUuY29sSWQpIHtcbiAgICAgICAgdGhpcy5hdXRvR3JvdXBDb2x1bW5EZWYgPSB7XG4gICAgICAgICAgaGVhZGVyTmFtZTogZWVlLmNvbERlZi5oZWFkZXJOYW1lLFxuICAgICAgICAgIHdpZHRoOiBlZWUuY29sRGVmLndpZHRoLFxuICAgICAgICAgIGNlbGxSZW5kZXJlclBhcmFtczogeyBjaGVja2JveDogdGhpcy5zaG93Q2hlY2tCb3ggfSxcbiAgICAgICAgICBmaWVsZDogZWVlLmNvbERlZi5maWVsZCxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZWZyZXNoKHJvdXRlOiBhbnlbXSA9IFtdKSB7XG4gICAgaWYgKHRoaXMucmVtb3RlT3BlcmF0aW9uICYmIHRoaXMuZ3JpZEFwaSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyAgdGhpcy5ncmlkQXBpLnB1cmdlU2VydmVyU2lkZUNhY2hlKHJvdXRlKTtcbiAgICAgIHRoaXMuZ3JpZEFwaS5zZXRHcmlkT3B0aW9uKFxuICAgICAgICAnc2VydmVyU2lkZURhdGFzb3VyY2UnLFxuICAgICAgICB0aGlzLmludGVuYWxHcmlkRGF0YVNvdXJjZVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kYXRhU291cmNlLmZldGNoKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIGludGVybmFsR3JpZENlbGxDbGlja2VkKGU6IENlbGxDbGlja2VkRXZlbnQpIHtcbiAgICB0aGlzLmNlbGxDbGljay5lbWl0KHtcbiAgICAgIGRhdGE6IHRoaXMubWFwQ2VsbEV2ZW50KGUpLFxuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgfSk7XG4gIH1cblxuICBpbnRlcm5hbEdyaWRDZWxsRG91YmxlQ2xpY2tlZChlOiBDZWxsQ2xpY2tlZEV2ZW50KSB7XG4gICAgdGhpcy5jZWxsRGJDbGljay5lbWl0KHtcbiAgICAgIGRhdGE6IHRoaXMubWFwQ2VsbEV2ZW50KGUpLFxuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgfSk7XG4gIH1cblxuICBpbnRlcm5hbEdyaWRDZWxsRm9jdXNlZChlOiBDZWxsQ2xpY2tlZEV2ZW50KSB7XG4gICAgdGhpcy5jZWxsRm9jdXNlLmVtaXQoe1xuICAgICAgZGF0YTogdGhpcy5tYXBDZWxsRXZlbnQoZSksXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICB9KTtcbiAgfVxuXG4gIGludGVybmFsR3JpZFJvd0NsaWNrZWQoZTogUm93Q2xpY2tlZEV2ZW50KSB7XG4gICAgaWYgKCFlLm5vZGUuZ3JvdXApIHtcbiAgICAgIHRoaXMucm93Q2xpY2suZW1pdCh7XG4gICAgICAgIGRhdGE6IHRoaXMubWFwUm93RXZlbnQoZSksXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBpbnRlcm5hbEdyaWRSb3dEb3VibGVDbGlja2VkKGU6IENlbGxDbGlja2VkRXZlbnQpIHtcbiAgICBpZiAoIWUubm9kZS5ncm91cCkge1xuICAgICAgdGhpcy5yb3dEYkNsaWNrLmVtaXQoe1xuICAgICAgICBkYXRhOiB0aGlzLm1hcFJvd0V2ZW50KGUpLFxuICAgICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgZGlmZmVyZW5jZU9mMkFycmF5cyhhcnJheTE6IGFueSwgYXJyYXkyOiBhbnkpIHtcbiAgICBjb25zdCB0ZW1wID0gW107XG4gICAgZm9yIChjb25zdCBpIGluIGFycmF5MSkge1xuICAgICAgaWYgKGFycmF5Mi5pbmRleE9mKGFycmF5MVtpXSkgPT09IC0xKSB7XG4gICAgICAgIHRlbXAucHVzaChhcnJheTFbaV0pO1xuICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGNvbnN0IGkgaW4gYXJyYXkyKSB7XG4gICAgICBpZiAoYXJyYXkxLmluZGV4T2YoYXJyYXkyW2ldKSA9PT0gLTEpIHtcbiAgICAgICAgdGVtcC5wdXNoKGFycmF5MltpXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0ZW1wLnNvcnQoKGEsIGIpID0+IGEgLSBiKTtcbiAgfVxuXG4gIHJvd1NlbGVjdGlvbkNoYW5nZWQoZSkge1xuICAgIGlmIChlLm5vZGUuaXNTZWxlY3RlZCgpKSB7XG4gICAgICB0aGlzLnNlbGVjdFJvdyA9IHRoaXMuc2VsZWN0Um93LmZpbHRlcihcbiAgICAgICAgKGMpID0+IGNbdGhpcy5rZXlGaWVsZF0gIT0gZS5kYXRhW3RoaXMua2V5RmllbGRdXG4gICAgICApO1xuICAgICAgdGhpcy5zZWxlY3RSb3cucHVzaChlLmRhdGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdFJvdyA9IHRoaXMuc2VsZWN0Um93LmZpbHRlcihcbiAgICAgICAgKGMpID0+IGNbdGhpcy5rZXlGaWVsZF0gIT0gZS5kYXRhW3RoaXMua2V5RmllbGRdXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLnJvd1NlbGVjdGlvbkNoYW5nZS5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIGRhdGE6IGUsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICB9KTtcbiAgfVxuXG4gIGludGVybmFsR3JpZFNlbGVjdGlvbkNoYW5nZWQoZTogYW55KSB7XG4gICAgY29uc3QgYXJnczogQVhHcmlkUm93U2VsZWN0aW9uRXZlbnQgPSB7IGl0ZW1zOiBbXSB9O1xuICAgIGNvbnN0IG9sZE5vZGVzID0gdGhpcy5vbGRTZWxlY3Rpb25Ob2RlcztcbiAgICBjb25zdCBub2RlcyA9IHRoaXMuZ3JpZEFwaS5nZXRTZWxlY3RlZE5vZGVzKCk7XG5cbiAgICBpZiAodGhpcy5hdXRvRXhwYW5kKSB7XG4gICAgICBjb25zdCB1bnNlbGVjdGVkTm9kZXMgPSBvbGROb2Rlcy5maWx0ZXIoXG4gICAgICAgIChvbGROb2RlKSA9PiAhbm9kZXMuc29tZSgobmV3Tm9kZSkgPT4gbmV3Tm9kZSA9PT0gb2xkTm9kZSlcbiAgICAgICk7XG4gICAgICB1bnNlbGVjdGVkTm9kZXMuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgICAgZWwuc2V0RXhwYW5kZWQoZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVtb3RlT3BlcmF0aW9uKSB7XG4gICAgICBjb25zdCBpc1NlbGVjdEFsbFNlcnZlclNpZGU6IGJvb2xlYW4gPVxuICAgICAgICBlLmFwaS5nZXRTZXJ2ZXJTaWRlU2VsZWN0aW9uU3RhdGUoKS5zZWxlY3RBbGw7XG4gICAgICBpZiAoaXNTZWxlY3RBbGxTZXJ2ZXJTaWRlKSB7XG4gICAgICAgIHRoaXMuZ3JpZEFwaS5mb3JFYWNoTm9kZSgobm9kZTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKG5vZGUuaXNTZWxlY3RlZCgpKSB7XG4gICAgICAgICAgICBhcmdzLml0ZW1zLnB1c2goe1xuICAgICAgICAgICAgICByb3dJbmRleDogbm9kZS5yb3dJbmRleCxcbiAgICAgICAgICAgICAgcm93TGV2ZWw6IG5vZGUubGV2ZWwsXG4gICAgICAgICAgICAgIGRhdGE6IG5vZGUuZGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhcmdzLml0ZW1zID0gdGhpcy5oYW5kbGVOb2RlU2VsZWN0ZWQobm9kZXMpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBhcmdzLml0ZW1zID0gdGhpcy5oYW5kbGVOb2RlU2VsZWN0ZWQobm9kZXMpO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHtcbiAgICAgIGRhdGE6IGFyZ3MsXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICB9KTtcbiAgICBsZXQgYWN0aW9uID0gbm9kZXMubGVuZ3RoID4gb2xkTm9kZXMubGVuZ3RoID8gdHJ1ZSA6IGZhbHNlO1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmRpZmZlcmVuY2VPZjJBcnJheXMobm9kZXMsIG9sZE5vZGVzKTtcbiAgICB0aGlzLm9uUm93U2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIHNlbGVjdGVkOiBhY3Rpb24sXG4gICAgICBkYXRhOiBub2RlLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgfSk7XG4gICAgdGhpcy5vbGRTZWxlY3Rpb25Ob2RlcyA9IG5vZGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBDZWxsRXZlbnQoZSk6IEFYR3JpZENlbGxFdmVudCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJvd0xldmVsOiAwLFxuICAgICAgY29sdW1uOiBlLmNvbHVtbixcbiAgICAgIGRhdGE6IGUuZGF0YSxcbiAgICAgIHJvd0luZGV4OiBlLnJvd0luZGV4LFxuICAgICAgdmFsdWU6IGUudmFsdWUsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwUm93RXZlbnQoZSk6IEFYR3JpZFJvd0V2ZW50IHtcbiAgICByZXR1cm4ge1xuICAgICAgcm93TGV2ZWw6IDAsXG4gICAgICBkYXRhOiBlLmRhdGEsXG4gICAgICByb3dJbmRleDogZS5yb3dJbmRleCxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGRlc2VsZWN0QWxsKCkge1xuICAgIHRoaXMuZ3JpZEFwaS5kZXNlbGVjdEFsbCgpO1xuICB9XG5cbiAgcHVibGljIGRlc2VsZWN0QnlLZXlGaWVsZChrZXlGaWVsZCkge1xuICAgIHRoaXMuZ3JpZEFwaS5mb3JFYWNoTm9kZSgobm9kZSkgPT4ge1xuICAgICAgaWYgKG5vZGUuZGF0YSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGxldCBzZWxlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICAgICAgaWYgKG5vZGUuZGF0YVt0aGlzLmtleUZpZWxkXSA9PT0ga2V5RmllbGQpIHtcbiAgICAgICAgICBub2RlLnNldFNlbGVjdGVkKHNlbGVjdCk7XG4gICAgICAgICAgdGhpcy5zZWxlY3RSb3cgPSB0aGlzLnNlbGVjdFJvdy5maWx0ZXIoXG4gICAgICAgICAgICAoYykgPT4gY1t0aGlzLmtleUZpZWxkXSAhPSBrZXlGaWVsZFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGludGVybmFsR2V0Um93Q2xhc3MgPSAocDogYW55KSA9PiB7XG4gICAgaWYgKHRoaXMucm93Q2xhc3MpIHtcbiAgICAgIGlmICh0aGlzLnJvd0NsYXNzIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93Q2xhc3Moe1xuICAgICAgICAgIHJvd0luZGV4OiBwLm5vZGUucm93SW5kZXgsXG4gICAgICAgICAgcm93TGV2ZWw6IHAubm9kZS5sZXZlbCxcbiAgICAgICAgICBkYXRhOiBwLmRhdGEsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93Q2xhc3M7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHNob3dMb2FkaW5nKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZ3JpZEFwaSkge1xuICAgICAgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ2xvYWRpbmcnLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgaGlkZUxvYWRpbmcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZ3JpZEFwaSkge1xuICAgICAgdGhpcy5ncmlkQXBpLmhpZGVPdmVybGF5KCk7XG4gICAgfVxuICB9XG5cbiAgaW50ZXJuYWxHcmlkU2l6ZUNoYW5nZWQoZTogR3JpZFNpemVDaGFuZ2VkRXZlbnQpIHtcbiAgICBpZiAoZS5jbGllbnRXaWR0aCA+IDAgJiYgZS5jbGllbnRIZWlnaHQgPiAwKSB7XG4gICAgICB0aGlzLnBlcmZvcm1TaXplQ29sdW1uc1RvRml0KGUuYXBpKTtcbiAgICB9XG4gIH1cblxuICBpbnRlcm5hbEdyaWRGaXJzdERhdGFSZW5kZXJlZChlOiBGaXJzdERhdGFSZW5kZXJlZEV2ZW50KSB7XG4gICAgdGhpcy5wZXJmb3JtU2l6ZUNvbHVtbnNUb0ZpdChlLmFwaSk7XG4gICAgdGhpcy5oZWFkZXJIZWlnaHRTZXR0ZXIoKTtcbiAgfVxuXG4gIGhhbmRsZUNvbHVtblJlc2l6ZWQoZSkge1xuICAgIHRoaXMuaGVhZGVySGVpZ2h0U2V0dGVyKCk7XG4gIH1cblxuICBwcml2YXRlIHBlcmZvcm1TaXplQ29sdW1uc1RvRml0KGFwaTogR3JpZEFwaSkge1xuICAgIGlmICh0aGlzLmlkICYmIHRoaXMuc3RhdGVTZXJ2aWNlICYmIHRoaXMuc2V0dGluZ3MpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2l6ZUNvbHVtbnNUb0ZpdCkge1xuICAgICAgYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhlYWRlckhlaWdodFNldHRlcigpIHtcbiAgICBjb25zdCBwYWRkaW5nID0gMjA7XG4gICAgY29uc3QgaGVpZ2h0ID0gdGhpcy5oZWFkZXJIZWlnaHRHZXR0ZXIoKSArIHBhZGRpbmc7XG4gICAgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ2hlYWRlckhlaWdodCcsIGhlaWdodCk7XG4gIH1cblxuICBwcml2YXRlIGhlYWRlckhlaWdodEdldHRlcigpIHtcbiAgICBjb25zdCBjb2x1bW5IZWFkZXJUZXh0cyA9IFtcbiAgICAgIC4uLihkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuYWctaGVhZGVyLWNlbGwtdGV4dCcpIGFzIGFueSksXG4gICAgXTtcblxuICAgIGNvbnN0IGNsaWVudEhlaWdodHMgPSBjb2x1bW5IZWFkZXJUZXh0cy5tYXAoXG4gICAgICAoaGVhZGVyVGV4dCkgPT4gaGVhZGVyVGV4dC5jbGllbnRIZWlnaHRcbiAgICApO1xuICAgIGNvbnN0IHRhbGxlc3RIZWFkZXJUZXh0SGVpZ2h0ID0gTWF0aC5tYXgoLi4uY2xpZW50SGVpZ2h0cyk7XG5cbiAgICByZXR1cm4gdGFsbGVzdEhlYWRlclRleHRIZWlnaHQ7XG4gIH1cblxuICBwcml2YXRlIG1ha2VSZWZyZXNoQnRuKCkge1xuICAgIGNvbnN0IHBhZ2luZ1BhbmVsID1cbiAgICAgIHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmFnLXBhZ2luZy1wYW5lbCcpO1xuXG4gICAgY29uc3QgcmVmQnRuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuXG4gICAgcmVmQnRuLmNsYXNzTGlzdC5hZGQoJ2ZhcicpO1xuICAgIHJlZkJ0bi5jbGFzc0xpc3QuYWRkKCdmYS1zeW5jJyk7XG5cbiAgICByZWZCdG4uc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuXG4gICAgcmVmQnRuLnRpdGxlID0gQVhUcmFuc2xhdG9yLmdldCgnY29tbW9uLnJlZnJlc2gnKTtcblxuICAgIHJlZkJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSB0aGlzLmdldEN1cnJlbnRQYWdlTnVtYmVyKCkuY3VycmVudDtcbiAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgIH0pO1xuXG4gICAgcGFnaW5nUGFuZWwuYXBwZW5kQ2hpbGQocmVmQnRuKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlTm9kZVNlbGVjdGVkKG5vZGVzKSB7XG4gICAgcmV0dXJuIG5vZGVzLm1hcCgoaSkgPT4ge1xuICAgICAgaWYgKHRoaXMuYXV0b0V4cGFuZCkge1xuICAgICAgICBpLnNldEV4cGFuZGVkKHRydWUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcm93TGV2ZWw6IGkubGV2ZWwsXG4gICAgICAgIHJvd0luZGV4OiBpLnJvd0luZGV4LFxuICAgICAgICBkYXRhOiBpLmRhdGEsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZUZpbHRlckNoYW5nZWQoZXZlbnQ6IEZpbHRlckNoYW5nZWRFdmVudCkge1xuICAgIGNvbnN0IGNvbElkID0gZXZlbnQuY29sdW1uc1swXS5nZXRDb2xJZCgpO1xuICAgIGNvbnN0IGZpbHRlckluc3RhbmNlID0gYXdhaXQgdGhpcy5ncmlkQXBpLmdldENvbHVtbkZpbHRlckluc3RhbmNlKGNvbElkKTtcbiAgICBpZiAoZmlsdGVySW5zdGFuY2UpIHtcbiAgICAgIGNvbnN0IG1vZGVsID0gZmlsdGVySW5zdGFuY2UuZ2V0TW9kZWwoKTtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IGZpbHRlckluc3RhbmNlLmdldEZpbHRlclZhbHVlcygpO1xuICAgICAgY29uc3QgYXBwbGllZFZhbHVlcyA9IGZpbHRlckluc3RhbmNlLmdldE1vZGVsKCk/LnZhbHVlcyB8fCBbXTtcblxuICAgICAgaWYgKGFwcGxpZWRWYWx1ZXMubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMub25GaWx0ZXJDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGRhdGE6IHsgZmllbGQ6IGNvbElkLCB2YWx1ZTogYXBwbGllZFZhbHVlcyB9LFxuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKCFtb2RlbCAmJiAhYXBwbGllZFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5vbkZpbHRlckNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgZGF0YTogeyBmaWVsZDogY29sSWQsIHZhbHVlOiB2YWx1ZXMgfSxcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChtb2RlbCAmJiAhYXBwbGllZFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5vbkZpbHRlckNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgZGF0YTogeyBmaWVsZDogY29sSWQsIHZhbHVlOiBbXSB9LFxuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25QYWdpbmF0aW9uQ2hhbmdlZChlKSB7XG4gICAgaWYgKHRoaXMuYXV0b05hdmlnYXRlUGFnZSAmJiB0aGlzLmdldEN1cnJlbnRQYWdlTnVtYmVyKCkuY3VycmVudCA+IDEpIHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSB0aGlzLmdldEN1cnJlbnRQYWdlTnVtYmVyKCkuY3VycmVudDtcbiAgICB9XG4gIH1cblxuICBpc1Jvd01hc3RlciA9IChkYXRhOiBhbnkpID0+IHtcbiAgICBpZiAodGhpcy5pc1Jvd01hc3RlckZpZWxkKSB7XG4gICAgICByZXR1cm4gZGF0YVt0aGlzLmlzUm93TWFzdGVyRmllbGRdO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH07XG5cbiAgZW1pdFN0YXRlKCkge1xuICAgIGlmICh0aGlzLmlzSW5pdGlhbExvYWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zYXZlU2F0YXRlJC5uZXh0KG51bGwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtZ3JpZC10b29sYmFyXCIgKm5nSWY9XCJ0b29sYmFyXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXRvb2xiYXJcIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjwhLS0gW2VuYWJsZVNvcnRpbmddPVwidHJ1ZVwiICBbZW5hYmxlQ29sUmVzaXplXT1cInRydWVcIiBbZW5hYmxlRmlsdGVyXT1cImFsbG93RmlsdGVyaW5nXCIgIC0tPlxuXG5AaWYgKGdyaWRWaWV3KSB7XG5cbjxhZy1ncmlkLWFuZ3VsYXJcbiAgY2xhc3M9XCJhZy10aGVtZS1iYWxoYW1cIlxuICBbZ2V0Um93Q2xhc3NdPVwiaW50ZXJuYWxHZXRSb3dDbGFzc1wiXG4gIFtjZWxsU2VsZWN0aW9uXT1cImVuYWJsZVJhbmdlU2VsZWN0aW9uXCJcbiAgW3NlcnZlclNpZGVTdG9yZVR5cGVdPVwiJ3BhcnRpYWwnXCJcbiAgW3N0eWxlLmhlaWdodF09XCJpbnRlcm5hbEhlaWdodFwiXG4gIFtjb2x1bW5EZWZzXT1cImNvbHVtbkRlZnNcIlxuICBbZW5hYmxlUnRsXT1cInJ0bFwiXG4gIFtwYWdpbmF0aW9uXT1cInBhZ2luYXRpb25cIlxuICBbcm93R3JvdXBQYW5lbFNob3ddPVwicm93R3JvdXBQYW5lbFNob3dcIlxuICBbcm93TW9kZWxUeXBlXT1cInJvd01vZGVsVHlwZVwiXG4gIFtkZXRhaWxSb3dIZWlnaHRdPVwiZGV0YWlsUm93SGVpZ2h0XCJcbiAgW3Jvd0hlaWdodF09XCJyb3dIZWlnaHRcIlxuICBbcGFnaW5hdGlvbkF1dG9QYWdlU2l6ZV09XCJwYWdpbmF0aW9uQXV0b1BhZ2VTaXplXCJcbiAgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJwYWdpbmF0aW9uUGFnZVNpemVcIlxuICBbcGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3JdPVwicGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3JcIlxuICBbc3VwcHJlc3NNZW51SGlkZV09XCJ0cnVlXCJcbiAgW21heENvbmN1cnJlbnREYXRhc291cmNlUmVxdWVzdHNdPVwibWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0c1wiXG4gIFtibG9ja0xvYWREZWJvdW5jZU1pbGxpc109XCJibG9ja0xvYWREZWJvdW5jZU1pbGxpc1wiXG4gIFtmcmFtZXdvcmtDb21wb25lbnRzXT1cImZyYW1ld29ya0NvbXBvbmVudHNcIlxuICBbaXNGdWxsV2lkdGhDZWxsXT1cImlzRnVsbFdpZHRoQ2VsbFwiXG4gIFtyb3dTZWxlY3Rpb25dPVwicm93U2VsZWN0aW9uXCJcbiAgW2Z1bGxXaWR0aENlbGxSZW5kZXJlckZyYW1ld29ya109XCJmdWxsV2lkdGhDZWxsUmVuZGVyZXJGcmFtZXdvcmtcIlxuICBbY2FjaGVCbG9ja1NpemVdPVwiY2FjaGVCbG9ja1NpemVcIlxuICBbZnVsbFdpZHRoQ2VsbFJlbmRlcmVyUGFyYW1zXT1cImZ1bGxXaWR0aENlbGxSZW5kZXJlclBhcmFtc1wiXG4gIChjb2x1bW5SZXNpemVkKT1cImhhbmRsZUNvbHVtblJlc2l6ZWQoJGV2ZW50KVwiXG4gIChjZWxsQ2xpY2tlZCk9XCJpbnRlcm5hbEdyaWRDZWxsQ2xpY2tlZCgkZXZlbnQpXCJcbiAgKGNlbGxEb3VibGVDbGlja2VkKT1cImludGVybmFsR3JpZENlbGxEb3VibGVDbGlja2VkKCRldmVudClcIlxuICAoY2VsbEZvY3VzZWQpPVwiaW50ZXJuYWxHcmlkQ2VsbEZvY3VzZWQoJGV2ZW50KVwiXG4gIChyb3dDbGlja2VkKT1cImludGVybmFsR3JpZFJvd0NsaWNrZWQoJGV2ZW50KVwiXG4gIChzZWxlY3Rpb25DaGFuZ2VkKT1cImludGVybmFsR3JpZFNlbGVjdGlvbkNoYW5nZWQoJGV2ZW50KVwiXG4gIChyb3dTZWxlY3RlZCk9XCJyb3dTZWxlY3Rpb25DaGFuZ2VkKCRldmVudClcIlxuICAocm93RG91YmxlQ2xpY2tlZCk9XCJpbnRlcm5hbEdyaWRSb3dEb3VibGVDbGlja2VkKCRldmVudClcIlxuICAoZ3JpZFJlYWR5KT1cImludGVybmFsR3JpZFJlYWR5KCRldmVudClcIlxuICBbc3VwcHJlc3NDZWxsU2VsZWN0aW9uXT1cInN1cHByZXNzQ2VsbFNlbGVjdGlvblwiXG4gIFthdXRvR3JvdXBDb2x1bW5EZWZdPVwiYXV0b0dyb3VwQ29sdW1uRGVmXCJcbiAgW3N1cHByZXNzQWdnRnVuY0luSGVhZGVyXT1cInRydWVcIlxuICBbdHJlZURhdGFdPVwidHJlZURhdGFcIlxuICBbYW5pbWF0ZVJvd3NdPVwidHJ1ZVwiXG4gIFtpc1NlcnZlclNpZGVHcm91cF09XCJpc1NlcnZlclNpZGVHcm91cFwiXG4gIFtnZXRTZXJ2ZXJTaWRlR3JvdXBLZXldPVwiZ2V0U2VydmVyU2lkZUdyb3VwS2V5XCJcbiAgW21hc3RlckRldGFpbF09XCJtYXN0ZXJEZXRhaWxcIlxuICBbaXNSb3dNYXN0ZXJdPVwiaXNSb3dNYXN0ZXJcIlxuICBbZGV0YWlsQ2VsbFJlbmRlcmVyUGFyYW1zXT1cImRldGFpbENlbGxSZW5kZXJlclBhcmFtc1wiXG4gIFtkZXRhaWxDZWxsUmVuZGVyZXJdPVwiZGV0YWlsQ2VsbFJlbmRlcmVyXCJcbiAgKGdyaWRTaXplQ2hhbmdlZCk9XCJpbnRlcm5hbEdyaWRTaXplQ2hhbmdlZCgkZXZlbnQpXCJcbiAgKGZpcnN0RGF0YVJlbmRlcmVkKT1cImludGVybmFsR3JpZEZpcnN0RGF0YVJlbmRlcmVkKCRldmVudClcIlxuICBbbG9jYWxlVGV4dF09XCJsb2NhbGVUZXh0XCJcbiAgW2dyb3VwSGlkZU9wZW5QYXJlbnRzXT1cImdyb3VwSGlkZU9wZW5QYXJlbnRzXCJcbiAgW2dldE1haW5NZW51SXRlbXNdPVwiZ2V0TWFpbk1lbnVJdGVtc1wiXG4gIFthbGxvd0NvbnRleHRNZW51V2l0aENvbnRyb2xLZXldPVwiZmFsc2VcIlxuICAocGFnaW5hdGlvbkNoYW5nZWQpPVwib25QYWdpbmF0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcbiAgKGNvbHVtblJlc2l6ZWQpPVwiZW1pdFN0YXRlKClcIlxuICAoY29sdW1uTW92ZWQpPVwiZW1pdFN0YXRlKClcIlxuICAoY29sdW1uUGlubmVkKT1cImVtaXRTdGF0ZSgpXCJcbiAgKGNvbHVtblZpc2libGUpPVwiZW1pdFN0YXRlKClcIlxuICAoc29ydENoYW5nZWQpPVwiZW1pdFN0YXRlKClcIlxuICAoZmlsdGVyQ2hhbmdlZCk9XCJoYW5kbGVGaWx0ZXJDaGFuZ2VkKCRldmVudClcIlxuPlxuPC9hZy1ncmlkLWFuZ3VsYXI+XG59XG5cbjwhLS0gKGRpc3BsYXllZENvbHVtbnNDaGFuZ2VkKT1cImRpc3BsYXllZENvbHVtbnNDaGFuZ2VkKCRldmVudClcIiAgLS0+XG4iXX0=","import { AXButtonModule, AXCheckBoxModule, AXDataSourceModule, AXDatePickerModule, AXSelectBoxModule, AXTextBoxModule, } from '@acorex/components';\nimport { AXCoreModule } from '@acorex/core';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AgGridModule } from 'ag-grid-angular';\nimport 'ag-grid-enterprise';\nimport { AXGridCheckColumn, BooleanFilterRenderer, BooleanRenderer, } from './columns/check-column.component';\nimport { AXColumnGroupComponent } from './columns/column-groups.component';\nimport { AXGridCommandColumn, CommandRenderer, } from './columns/command-column.component';\nimport { AXDatePickerFilterComponent, AXGridDateColumn, } from './columns/date-column.component';\nimport { AXGridRowNumberColumn } from './columns/row-number-column.component';\nimport { AXGridSelectionColumn } from './columns/selection-column.component';\nimport { AXGridTextColumn, TextFilterRenderer, } from './columns/text-column.component';\nimport { AXDataGridComponent } from './datagrid.component';\nimport { AXDataGridFilterComponent } from './filters/filter.component';\nimport { AXDataGridCellTemplateComponent, AXDataGridCellTemplateRenderer, } from './templates/cell-template.component';\nimport { AXDataGridDetailTemplateComponent, AXDataGridDetailTemplateRenderer, } from './templates/detail-template.component';\nimport { AXDataGridRowTemplateComponent, AXDataGridRowTemplateRenderer, } from './templates/row-template.component';\nimport * as i0 from \"@angular/core\";\nexport class AXDataGridModule {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridModule, declarations: [AXDataGridComponent,\n AXGridTextColumn,\n AXGridCheckColumn,\n AXGridSelectionColumn,\n AXGridDateColumn,\n AXGridRowNumberColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n TextFilterRenderer,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXDatePickerFilterComponent,\n CommandRenderer,\n AXColumnGroupComponent], imports: [CommonModule,\n AXCoreModule,\n FormsModule,\n //AgGridModule,\n AXTextBoxModule,\n AXCheckBoxModule,\n AXSelectBoxModule,\n AXDataSourceModule,\n AXButtonModule,\n AXDatePickerModule,\n AgGridModule], exports: [AXColumnGroupComponent,\n AXDataGridComponent,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXGridTextColumn,\n AXGridRowNumberColumn,\n AXGridCheckColumn,\n AXGridDateColumn,\n AXGridSelectionColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n CommandRenderer] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridModule, imports: [CommonModule,\n AXCoreModule,\n FormsModule,\n //AgGridModule,\n AXTextBoxModule,\n AXCheckBoxModule,\n AXSelectBoxModule,\n AXDataSourceModule,\n AXButtonModule,\n AXDatePickerModule,\n AgGridModule] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataGridModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [\n AXDataGridComponent,\n AXGridTextColumn,\n AXGridCheckColumn,\n AXGridSelectionColumn,\n AXGridDateColumn,\n AXGridRowNumberColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n TextFilterRenderer,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXDatePickerFilterComponent,\n CommandRenderer,\n AXColumnGroupComponent,\n ],\n imports: [\n CommonModule,\n AXCoreModule,\n FormsModule,\n //AgGridModule,\n AXTextBoxModule,\n AXCheckBoxModule,\n AXSelectBoxModule,\n AXDataSourceModule,\n AXButtonModule,\n AXDatePickerModule,\n AgGridModule,\n ],\n exports: [\n AXColumnGroupComponent,\n AXDataGridComponent,\n AXDataGridFilterComponent,\n AXDataGridRowTemplateComponent,\n AXDataGridDetailTemplateComponent,\n AXDataGridRowTemplateRenderer,\n AXDataGridDetailTemplateRenderer,\n AXDataGridCellTemplateComponent,\n AXDataGridCellTemplateRenderer,\n AXGridTextColumn,\n AXGridRowNumberColumn,\n AXGridCheckColumn,\n AXGridDateColumn,\n AXGridSelectionColumn,\n AXGridCommandColumn,\n BooleanRenderer,\n BooleanFilterRenderer,\n CommandRenderer,\n ],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWdyaWQvZGF0YWdyaWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGVBQWUsR0FDaEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixlQUFlLEdBQ2hCLE1BQU0sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixlQUFlLEdBQ2hCLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUNMLDJCQUEyQixFQUMzQixnQkFBZ0IsR0FDakIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixHQUNuQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxt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O29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhCdXR0b25Nb2R1bGUsXG4gIEFYQ2hlY2tCb3hNb2R1bGUsXG4gIEFYRGF0YVNvdXJjZU1vZHVsZSxcbiAgQVhEYXRlUGlja2VyTW9kdWxlLFxuICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgQVhUZXh0Qm94TW9kdWxlLFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQVhDb3JlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBZ0dyaWRNb2R1bGUgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0ICdhZy1ncmlkLWVudGVycHJpc2UnO1xuaW1wb3J0IHtcbiAgQVhHcmlkQ2hlY2tDb2x1bW4sXG4gIEJvb2xlYW5GaWx0ZXJSZW5kZXJlcixcbiAgQm9vbGVhblJlbmRlcmVyLFxufSBmcm9tICcuL2NvbHVtbnMvY2hlY2stY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWENvbHVtbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL2NvbHVtbi1ncm91cHMuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFYR3JpZENvbW1hbmRDb2x1bW4sXG4gIENvbW1hbmRSZW5kZXJlcixcbn0gZnJvbSAnLi9jb2x1bW5zL2NvbW1hbmQtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBBWERhdGVQaWNrZXJGaWx0ZXJDb21wb25lbnQsXG4gIEFYR3JpZERhdGVDb2x1bW4sXG59IGZyb20gJy4vY29sdW1ucy9kYXRlLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhHcmlkUm93TnVtYmVyQ29sdW1uIH0gZnJvbSAnLi9jb2x1bW5zL3Jvdy1udW1iZXItY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWEdyaWRTZWxlY3Rpb25Db2x1bW4gfSBmcm9tICcuL2NvbHVtbnMvc2VsZWN0aW9uLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgQVhHcmlkVGV4dENvbHVtbixcbiAgVGV4dEZpbHRlclJlbmRlcmVyLFxufSBmcm9tICcuL2NvbHVtbnMvdGV4dC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IEFYRGF0YUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2RhdGFncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWERhdGFHcmlkRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXJzL2ZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZUNvbXBvbmVudCxcbiAgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZVJlbmRlcmVyLFxufSBmcm9tICcuL3RlbXBsYXRlcy9jZWxsLXRlbXBsYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBBWERhdGFHcmlkRGV0YWlsVGVtcGxhdGVDb21wb25lbnQsXG4gIEFYRGF0YUdyaWREZXRhaWxUZW1wbGF0ZVJlbmRlcmVyLFxufSBmcm9tICcuL3RlbXBsYXRlcy9kZXRhaWwtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFYRGF0YUdyaWRSb3dUZW1wbGF0ZUNvbXBvbmVudCxcbiAgQVhEYXRhR3JpZFJvd1RlbXBsYXRlUmVuZGVyZXIsXG59IGZyb20gJy4vdGVtcGxhdGVzL3Jvdy10ZW1wbGF0ZS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBBWERhdGFHcmlkQ29tcG9uZW50LFxuICAgIEFYR3JpZFRleHRDb2x1bW4sXG4gICAgQVhHcmlkQ2hlY2tDb2x1bW4sXG4gICAgQVhHcmlkU2VsZWN0aW9uQ29sdW1uLFxuICAgIEFYR3JpZERhdGVDb2x1bW4sXG4gICAgQVhHcmlkUm93TnVtYmVyQ29sdW1uLFxuICAgIEFYR3JpZENvbW1hbmRDb2x1bW4sXG4gICAgQm9vbGVhblJlbmRlcmVyLFxuICAgIEJvb2xlYW5GaWx0ZXJSZW5kZXJlcixcbiAgICBUZXh0RmlsdGVyUmVuZGVyZXIsXG4gICAgQVhEYXRhR3JpZEZpbHRlckNvbXBvbmVudCxcbiAgICBBWERhdGFHcmlkUm93VGVtcGxhdGVDb21wb25lbnQsXG4gICAgQVhEYXRhR3JpZERldGFpbFRlbXBsYXRlQ29tcG9uZW50LFxuICAgIEFYRGF0YUdyaWRSb3dUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYRGF0YUdyaWREZXRhaWxUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYRGF0YUdyaWRDZWxsVGVtcGxhdGVDb21wb25lbnQsXG4gICAgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYRGF0ZVBpY2tlckZpbHRlckNvbXBvbmVudCxcbiAgICBDb21tYW5kUmVuZGVyZXIsXG4gICAgQVhDb2x1bW5Hcm91cENvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWENvcmVNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgLy9BZ0dyaWRNb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYQ2hlY2tCb3hNb2R1bGUsXG4gICAgQVhTZWxlY3RCb3hNb2R1bGUsXG4gICAgQVhEYXRhU291cmNlTW9kdWxlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGF0ZVBpY2tlck1vZHVsZSxcbiAgICBBZ0dyaWRNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBBWENvbHVtbkdyb3VwQ29tcG9uZW50LFxuICAgIEFYRGF0YUdyaWRDb21wb25lbnQsXG4gICAgQVhEYXRhR3JpZEZpbHRlckNvbXBvbmVudCxcbiAgICBBWERhdGFHcmlkUm93VGVtcGxhdGVDb21wb25lbnQsXG4gICAgQVhEYXRhR3JpZERldGFpbFRlbXBsYXRlQ29tcG9uZW50LFxuICAgIEFYRGF0YUdyaWRSb3dUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYRGF0YUdyaWREZXRhaWxUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYRGF0YUdyaWRDZWxsVGVtcGxhdGVDb21wb25lbnQsXG4gICAgQVhEYXRhR3JpZENlbGxUZW1wbGF0ZVJlbmRlcmVyLFxuICAgIEFYR3JpZFRleHRDb2x1bW4sXG4gICAgQVhHcmlkUm93TnVtYmVyQ29sdW1uLFxuICAgIEFYR3JpZENoZWNrQ29sdW1uLFxuICAgIEFYR3JpZERhdGVDb2x1bW4sXG4gICAgQVhHcmlkU2VsZWN0aW9uQ29sdW1uLFxuICAgIEFYR3JpZENvbW1hbmRDb2x1bW4sXG4gICAgQm9vbGVhblJlbmRlcmVyLFxuICAgIEJvb2xlYW5GaWx0ZXJSZW5kZXJlcixcbiAgICBDb21tYW5kUmVuZGVyZXIsXG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYRGF0YUdyaWRNb2R1bGUge31cbiJdfQ==","import { AXBasePopupPageComponent, AXToolbarSearchComponent, } from '@acorex/components';\nimport { AXConfig, AXTranslator } from '@acorex/core';\nimport { ChangeDetectorRef, Component, ElementRef, ViewChild, } from '@angular/core';\nimport { AXDataGridComponent } from '../../data-grid/datagrid.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"../../data-grid/datagrid.component\";\nimport * as i3 from \"../../data-grid/columns/selection-column.component\";\nimport * as i4 from \"@acorex/components\";\nexport class AXDataLovPopupComponent extends AXBasePopupPageComponent {\n cdr;\n ref;\n grid;\n searchBox;\n columns = [];\n selectedItems = [];\n keyField = '';\n allowNull = true;\n hasChildField;\n rtl = AXConfig.get('layout.rtl');\n selectedRows = [];\n pagination = true;\n paginationAutoPageSize;\n paginationPageSize = 20;\n maxConcurrentDatasourceRequests;\n blockLoadDebounceMillis;\n paginationPageSizeSelector = [10, 20];\n suppressRowClickSelection;\n remoteOperation;\n headerCheckbox;\n constructor(cdr, ref) {\n super();\n this.cdr = cdr;\n this.ref = ref;\n }\n dataSource;\n selectionMode;\n ngOnInit() {\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n }\n onDoneClick() {\n if (this.selectedItems) {\n this.close(this.selectedItems);\n }\n else {\n this.close();\n }\n }\n rowDoubleClicked(e) {\n if (this.selectionMode == 'single') {\n this.selectedItems = [];\n }\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.data[this.keyField]);\n this.selectedItems.push(e.data.data);\n this.onDoneClick();\n }\n onCancelClick() {\n this.close();\n }\n rowSelectionChange(e) {\n if (e.data.node.isSelected()) {\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.node.data[this.keyField]);\n this.selectedItems.push(e.data.node.data);\n }\n else {\n if (this.allowNull == true ||\n (this.allowNull == false && this.selectedItems.length > 1)) {\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.node.data[this.keyField]);\n }\n }\n }\n ngAfterViewInit() {\n this.selectedItems.forEach((ele) => {\n this.selectedRows.push(ele);\n });\n this.searchBox.focus();\n if (this.dataSource.onDataReceived) {\n this.dataSource.onDataReceived.subscribe((arg) => {\n this.cdr.markForCheck();\n this.cdr.detectChanges();\n });\n }\n }\n // onValueSearchChanged(e) {\n // const params: AXDataSourceReadParams = {}\n // params.searchText = e.value;\n // // params.take = 100;\n // // params.skip = 0\n // this.dataSource.fetch(params);\n // }\n getFooterButtons() {\n return [\n {\n text: AXTranslator.get('common.confirm'),\n name: 'confirm',\n style: 'ax primary',\n icon: 'far fa-check-circle',\n },\n {\n text: AXTranslator.get('common.cancel'),\n name: 'cancel',\n style: 'ax light',\n icon: 'far fa-times',\n },\n ];\n }\n onFooterButtonClick(e) {\n if (e.name === 'confirm') {\n this.onDoneClick();\n }\n if (e.name === 'cancel') {\n this.onCancelClick();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataLovPopupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXDataLovPopupComponent, isStandalone: false, selector: \"ng-component\", viewQueries: [{ propertyName: \"grid\", first: true, predicate: [\"grid\"], descendants: true, static: true }, { propertyName: \"searchBox\", first: true, predicate: [\"searchBox\"], descendants: true }], usesInheritance: true, ngImport: i0, template: \"<div style=\\\"height: 70vh; padding: 0.5em\\\">\\n <div style=\\\"height: calc(98%)\\\">\\n <ax-data-grid\\n [remoteOperation]=\\\"remoteOperation\\\"\\n [showRefreshButton]=\\\"false\\\"\\n [paginationPageSizeSelector]=\\\"paginationPageSizeSelector\\\"\\n [pagination]=\\\"pagination\\\"\\n [suppressRowClickSelection]=\\\"suppressRowClickSelection\\\"\\n [paginationAutoPageSize]=\\\"paginationAutoPageSize\\\"\\n [paginationPageSize]=\\\"paginationPageSize\\\"\\n [rtl]=\\\"rtl\\\"\\n [maxConcurrentDatasourceRequests]=\\\"maxConcurrentDatasourceRequests\\\"\\n [blockLoadDebounceMillis]=\\\"blockLoadDebounceMillis\\\"\\n [keyField]=\\\"keyField\\\"\\n [hasChildField]=\\\"hasChildField\\\"\\n [selectRow]=\\\"selectedItems\\\"\\n #grid\\n [columns]=\\\"columns\\\"\\n [selectionMode]=\\\"selectionMode\\\"\\n (rowDbClick)=\\\"rowDoubleClicked($event)\\\"\\n (rowSelectionChange)=\\\"rowSelectionChange($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n >\\n <ax-toolbar>\\n <ax-toolbar-search #searchBox style=\\\"width: 100%\\\"></ax-toolbar-search>\\n </ax-toolbar>\\n <ax-selection-column\\n [headerCheckbox]=\\\"headerCheckbox\\\"\\n *ngIf=\\\"selectionMode == 'single' ? false : true\\\"\\n ></ax-selection-column>\\n <!-- <ax-data-source [provideData]=\\\"dataSource.provideData\\\">\\n </ax-data-source> -->\\n </ax-data-grid>\\n </div>\\n</div>\\n\", dependencies: [{ kind: \"directive\", type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { kind: \"component\", type: i2.AXDataGridComponent, selector: \"ax-data-grid\", inputs: [\"id\", \"paginationPageSizeSelector\", \"paginationAutoPageSize\", \"paginationPageSize\", \"remoteOperation\", \"rowMultiSelectWithClick\", \"suppressRowClickSelection\", \"suppressCellSelection\", \"sizeColumnsToFit\", \"showCheckBox\", \"floatingFilter\", \"autoExpand\", \"rowSelectableConditionField\", \"hideDisabledCheckboxes\", \"selectionMode\", \"pagination\", \"selectRow\", \"rowGroupPanelShow\", \"loadOnInit\", \"enableRangeSelection\", \"keyField\", \"hasChildField\", \"rowHeight\", \"groupHideOpenParents\", \"maxConcurrentDatasourceRequests\", \"blockLoadDebounceMillis\", \"showRefreshButton\", \"autoNavigatePage\", \"isRowMasterField\", \"rowClass\", \"rtl\", \"searchText\", \"filter\", \"columns\", \"dataSource\"], outputs: [\"onFilterChanged\", \"columnsChange\", \"cellClick\", \"cellDbClick\", \"cellFocuse\", \"rowClick\", \"rowDbClick\", \"selectionChanged\", \"rowSelectionChange\", \"onRowSelectionChanged\"] }, { kind: \"component\", type: i3.AXGridSelectionColumn, selector: \"ax-selection-column\", inputs: [\"condition\", \"headerCheckbox\", \"pinned\", \"width\", \"rowSelectableConditionField\"] }, { kind: \"component\", type: i4.AXToolbarComponent, selector: \"ax-toolbar\" }, { kind: \"component\", type: i4.AXToolbarSearchComponent, selector: \"ax-toolbar-search\", inputs: [\"text\"], outputs: [\"onValueChanged\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXDataLovPopupComponent, decorators: [{\n type: Component,\n args: [{ standalone: false, template: \"<div style=\\\"height: 70vh; padding: 0.5em\\\">\\n <div style=\\\"height: calc(98%)\\\">\\n <ax-data-grid\\n [remoteOperation]=\\\"remoteOperation\\\"\\n [showRefreshButton]=\\\"false\\\"\\n [paginationPageSizeSelector]=\\\"paginationPageSizeSelector\\\"\\n [pagination]=\\\"pagination\\\"\\n [suppressRowClickSelection]=\\\"suppressRowClickSelection\\\"\\n [paginationAutoPageSize]=\\\"paginationAutoPageSize\\\"\\n [paginationPageSize]=\\\"paginationPageSize\\\"\\n [rtl]=\\\"rtl\\\"\\n [maxConcurrentDatasourceRequests]=\\\"maxConcurrentDatasourceRequests\\\"\\n [blockLoadDebounceMillis]=\\\"blockLoadDebounceMillis\\\"\\n [keyField]=\\\"keyField\\\"\\n [hasChildField]=\\\"hasChildField\\\"\\n [selectRow]=\\\"selectedItems\\\"\\n #grid\\n [columns]=\\\"columns\\\"\\n [selectionMode]=\\\"selectionMode\\\"\\n (rowDbClick)=\\\"rowDoubleClicked($event)\\\"\\n (rowSelectionChange)=\\\"rowSelectionChange($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n >\\n <ax-toolbar>\\n <ax-toolbar-search #searchBox style=\\\"width: 100%\\\"></ax-toolbar-search>\\n </ax-toolbar>\\n <ax-selection-column\\n [headerCheckbox]=\\\"headerCheckbox\\\"\\n *ngIf=\\\"selectionMode == 'single' ? false : true\\\"\\n ></ax-selection-column>\\n <!-- <ax-data-source [provideData]=\\\"dataSource.provideData\\\">\\n </ax-data-source> -->\\n </ax-data-grid>\\n </div>\\n</div>\\n\" }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { grid: [{\n type: ViewChild,\n args: ['grid', { static: true }]\n }], searchBox: [{\n type: ViewChild,\n args: ['searchBox']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWxvdi9kYXRhLWxvdi1wb3B1cC9kYXRhLWxvdi1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtbG92L2RhdGEtbG92LXBvcHVwL2RhdGEtbG92LXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx3QkFBd0IsRUFHeEIsd0JBQXdCLEdBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFnQixRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7OztBQU16RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsd0JBQXdCO0lBb0MvQztJQUFnQztJQWxDcEQsSUFBSSxDQUFzQjtJQUcxQixTQUFTLENBQTJCO0lBRXBDLE9BQU8sR0FBdUIsRUFBRSxDQUFDO0lBRWpDLGFBQWEsR0FBVSxFQUFFLENBQUM7SUFFMUIsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixTQUFTLEdBQVksSUFBSSxDQUFDO0lBRTFCLGFBQWEsQ0FBUztJQUN0QixHQUFHLEdBQVksUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUUxQyxZQUFZLEdBQVUsRUFBRSxDQUFDO0lBQ3pCLFVBQVUsR0FBWSxJQUFJLENBQUM7SUFFM0Isc0JBQXNCLENBQVU7SUFFaEMsa0JBQWtCLEdBQVcsRUFBRSxDQUFDO0lBRWhDLCtCQUErQixDQUFTO0lBRXhDLHVCQUF1QixDQUFTO0lBRWhDLDBCQUEwQixHQUF1QixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUUxRCx5QkFBeUIsQ0FBVTtJQUVuQyxlQUFlLENBQVU7SUFFekIsY0FBYyxDQUFVO0lBRXhCLFlBQW9CLEdBQXNCLEVBQVUsR0FBZTtRQUNqRSxLQUFLLEVBQUUsQ0FBQztRQURVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBWTtJQUVuRSxDQUFDO0lBRUQsVUFBVSxDQUF3QjtJQUVsQyxhQUFhLENBQVM7SUFFdEIsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsR0FBRztnQkFDTixNQUFNO3FCQUNILGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQztxQkFDOUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUMxQixDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FDNUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN0RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsa0JBQWtCLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FDNUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0QsQ0FBQztZQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFDRSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUk7Z0JBQ3RCLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQzFELENBQUM7Z0JBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FDNUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0QsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELDRCQUE0QjtJQUU1QixnREFBZ0Q7SUFDaEQsbUNBQW1DO0lBQ25DLDRCQUE0QjtJQUM1Qix5QkFBeUI7SUFDekIscUNBQXFDO0lBQ3JDLElBQUk7SUFFSixnQkFBZ0I7UUFDZCxPQUFPO1lBQ0w7Z0JBQ0UsSUFBSSxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ3hDLElBQUksRUFBRSxTQUFTO2dCQUNmLEtBQUssRUFBRSxZQUFZO2dCQUNuQixJQUFJLEVBQUUscUJBQXFCO2FBQzVCO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDO2dCQUN2QyxJQUFJLEVBQUUsUUFBUTtnQkFDZCxLQUFLLEVBQUUsVUFBVTtnQkFDakIsSUFBSSxFQUFFLGNBQWM7YUFDckI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELG1CQUFtQixDQUFDLENBQXVCO1FBQ3pDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7dUdBOUlVLHVCQUF1QjsyRkFBdkIsdUJBQXVCLHFTQ3BCcEMscTNDQW1DQTs7MkZEZmEsdUJBQXVCO2tCQUpuQyxTQUFTO2lDQUVJLEtBQUs7K0dBSWpCLElBQUk7c0JBREgsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUluQyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQmFzZVBvcHVwUGFnZUNvbXBvbmVudCxcbiAgQVhEYXRhU291cmNlQ29tcG9uZW50LFxuICBBWE1lbnVJdGVtQ2xpY2tFdmVudCxcbiAgQVhUb29sYmFyU2VhcmNoQ29tcG9uZW50LFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQVhCdXR0b25JdGVtLCBBWENvbmZpZywgQVhUcmFuc2xhdG9yIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi4vLi4vZGF0YS1ncmlkL2NvbHVtbnMvY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWERhdGFHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZGF0YS1ncmlkL2RhdGFncmlkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEYXRhTG92UG9wdXBDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VQb3B1cFBhZ2VDb21wb25lbnQge1xuICBAVmlld0NoaWxkKCdncmlkJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgZ3JpZDogQVhEYXRhR3JpZENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCdzZWFyY2hCb3gnKVxuICBzZWFyY2hCb3g6IEFYVG9vbGJhclNlYXJjaENvbXBvbmVudDtcblxuICBjb2x1bW5zOiBBWEdyaWREYXRhQ29sdW1uW10gPSBbXTtcblxuICBzZWxlY3RlZEl0ZW1zOiBhbnlbXSA9IFtdO1xuXG4gIGtleUZpZWxkOiBzdHJpbmcgPSAnJztcbiAgYWxsb3dOdWxsOiBib29sZWFuID0gdHJ1ZTtcblxuICBoYXNDaGlsZEZpZWxkOiBzdHJpbmc7XG4gIHJ0bDogYm9vbGVhbiA9IEFYQ29uZmlnLmdldCgnbGF5b3V0LnJ0bCcpO1xuXG4gIHNlbGVjdGVkUm93czogYW55W10gPSBbXTtcbiAgcGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgcGFnaW5hdGlvbkF1dG9QYWdlU2l6ZTogYm9vbGVhbjtcblxuICBwYWdpbmF0aW9uUGFnZVNpemU6IG51bWJlciA9IDIwO1xuXG4gIG1heENvbmN1cnJlbnREYXRhc291cmNlUmVxdWVzdHM6IG51bWJlcjtcblxuICBibG9ja0xvYWREZWJvdW5jZU1pbGxpczogbnVtYmVyO1xuXG4gIHBhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yOiBudW1iZXJbXSB8IGJvb2xlYW4gPSBbMTAsIDIwXTtcblxuICBzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uOiBib29sZWFuO1xuXG4gIHJlbW90ZU9wZXJhdGlvbjogYm9vbGVhbjtcblxuICBoZWFkZXJDaGVja2JveDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgcmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGRhdGFTb3VyY2U6IEFYRGF0YVNvdXJjZUNvbXBvbmVudDtcblxuICBzZWxlY3Rpb25Nb2RlOiBzdHJpbmc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucnRsID09IG51bGwpIHtcbiAgICAgIHRoaXMucnRsID1cbiAgICAgICAgd2luZG93XG4gICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5yZWYubmF0aXZlRWxlbWVudCwgbnVsbClcbiAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnZGlyZWN0aW9uJykgPT09ICdydGwnO1xuICAgIH1cbiAgfVxuXG4gIG9uRG9uZUNsaWNrKCkge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMpIHtcbiAgICAgIHRoaXMuY2xvc2UodGhpcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJvd0RvdWJsZUNsaWNrZWQoZSkge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGUgPT0gJ3NpbmdsZScpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoXG4gICAgICAoYykgPT4gY1t0aGlzLmtleUZpZWxkXSAhPSBlLmRhdGEuZGF0YVt0aGlzLmtleUZpZWxkXVxuICAgICk7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2goZS5kYXRhLmRhdGEpO1xuXG4gICAgdGhpcy5vbkRvbmVDbGljaygpO1xuICB9XG5cbiAgb25DYW5jZWxDbGljaygpIHtcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICByb3dTZWxlY3Rpb25DaGFuZ2UoZSkge1xuICAgIGlmIChlLmRhdGEubm9kZS5pc1NlbGVjdGVkKCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoXG4gICAgICAgIChjKSA9PiBjW3RoaXMua2V5RmllbGRdICE9IGUuZGF0YS5ub2RlLmRhdGFbdGhpcy5rZXlGaWVsZF1cbiAgICAgICk7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChlLmRhdGEubm9kZS5kYXRhKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmFsbG93TnVsbCA9PSB0cnVlIHx8XG4gICAgICAgICh0aGlzLmFsbG93TnVsbCA9PSBmYWxzZSAmJiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmlsdGVyKFxuICAgICAgICAgIChjKSA9PiBjW3RoaXMua2V5RmllbGRdICE9IGUuZGF0YS5ub2RlLmRhdGFbdGhpcy5rZXlGaWVsZF1cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zLmZvckVhY2goKGVsZSkgPT4ge1xuICAgICAgdGhpcy5zZWxlY3RlZFJvd3MucHVzaChlbGUpO1xuICAgIH0pO1xuICAgIHRoaXMuc2VhcmNoQm94LmZvY3VzKCk7XG4gICAgaWYgKHRoaXMuZGF0YVNvdXJjZS5vbkRhdGFSZWNlaXZlZCkge1xuICAgICAgdGhpcy5kYXRhU291cmNlLm9uRGF0YVJlY2VpdmVkLnN1YnNjcmliZSgoYXJnKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvLyBvblZhbHVlU2VhcmNoQ2hhbmdlZChlKSB7XG5cbiAgLy8gICAgIGNvbnN0IHBhcmFtczogQVhEYXRhU291cmNlUmVhZFBhcmFtcyA9IHt9XG4gIC8vICAgICBwYXJhbXMuc2VhcmNoVGV4dCA9IGUudmFsdWU7XG4gIC8vICAgICAvLyBwYXJhbXMudGFrZSA9IDEwMDtcbiAgLy8gICAgIC8vIHBhcmFtcy5za2lwID0gMFxuICAvLyAgICAgdGhpcy5kYXRhU291cmNlLmZldGNoKHBhcmFtcyk7XG4gIC8vIH1cblxuICBnZXRGb290ZXJCdXR0b25zKCk6IEFYQnV0dG9uSXRlbVtdIHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdjb21tb24uY29uZmlybScpLFxuICAgICAgICBuYW1lOiAnY29uZmlybScsXG4gICAgICAgIHN0eWxlOiAnYXggcHJpbWFyeScsXG4gICAgICAgIGljb246ICdmYXIgZmEtY2hlY2stY2lyY2xlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ2NvbW1vbi5jYW5jZWwnKSxcbiAgICAgICAgbmFtZTogJ2NhbmNlbCcsXG4gICAgICAgIHN0eWxlOiAnYXggbGlnaHQnLFxuICAgICAgICBpY29uOiAnZmFyIGZhLXRpbWVzJyxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuXG4gIG9uRm9vdGVyQnV0dG9uQ2xpY2soZTogQVhNZW51SXRlbUNsaWNrRXZlbnQpIHtcbiAgICBpZiAoZS5uYW1lID09PSAnY29uZmlybScpIHtcbiAgICAgIHRoaXMub25Eb25lQ2xpY2soKTtcbiAgICB9XG4gICAgaWYgKGUubmFtZSA9PT0gJ2NhbmNlbCcpIHtcbiAgICAgIHRoaXMub25DYW5jZWxDbGljaygpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBzdHlsZT1cImhlaWdodDogNzB2aDsgcGFkZGluZzogMC41ZW1cIj5cbiAgPGRpdiBzdHlsZT1cImhlaWdodDogY2FsYyg5OCUpXCI+XG4gICAgPGF4LWRhdGEtZ3JpZFxuICAgICAgW3JlbW90ZU9wZXJhdGlvbl09XCJyZW1vdGVPcGVyYXRpb25cIlxuICAgICAgW3Nob3dSZWZyZXNoQnV0dG9uXT1cImZhbHNlXCJcbiAgICAgIFtwYWdpbmF0aW9uUGFnZVNpemVTZWxlY3Rvcl09XCJwYWdpbmF0aW9uUGFnZVNpemVTZWxlY3RvclwiXG4gICAgICBbcGFnaW5hdGlvbl09XCJwYWdpbmF0aW9uXCJcbiAgICAgIFtzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uXT1cInN1cHByZXNzUm93Q2xpY2tTZWxlY3Rpb25cIlxuICAgICAgW3BhZ2luYXRpb25BdXRvUGFnZVNpemVdPVwicGFnaW5hdGlvbkF1dG9QYWdlU2l6ZVwiXG4gICAgICBbcGFnaW5hdGlvblBhZ2VTaXplXT1cInBhZ2luYXRpb25QYWdlU2l6ZVwiXG4gICAgICBbcnRsXT1cInJ0bFwiXG4gICAgICBbbWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0c109XCJtYXhDb25jdXJyZW50RGF0YXNvdXJjZVJlcXVlc3RzXCJcbiAgICAgIFtibG9ja0xvYWREZWJvdW5jZU1pbGxpc109XCJibG9ja0xvYWREZWJvdW5jZU1pbGxpc1wiXG4gICAgICBba2V5RmllbGRdPVwia2V5RmllbGRcIlxuICAgICAgW2hhc0NoaWxkRmllbGRdPVwiaGFzQ2hpbGRGaWVsZFwiXG4gICAgICBbc2VsZWN0Um93XT1cInNlbGVjdGVkSXRlbXNcIlxuICAgICAgI2dyaWRcbiAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnNcIlxuICAgICAgW3NlbGVjdGlvbk1vZGVdPVwic2VsZWN0aW9uTW9kZVwiXG4gICAgICAocm93RGJDbGljayk9XCJyb3dEb3VibGVDbGlja2VkKCRldmVudClcIlxuICAgICAgKHJvd1NlbGVjdGlvbkNoYW5nZSk9XCJyb3dTZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCJcbiAgICA+XG4gICAgICA8YXgtdG9vbGJhcj5cbiAgICAgICAgPGF4LXRvb2xiYXItc2VhcmNoICNzZWFyY2hCb3ggc3R5bGU9XCJ3aWR0aDogMTAwJVwiPjwvYXgtdG9vbGJhci1zZWFyY2g+XG4gICAgICA8L2F4LXRvb2xiYXI+XG4gICAgICA8YXgtc2VsZWN0aW9uLWNvbHVtblxuICAgICAgICBbaGVhZGVyQ2hlY2tib3hdPVwiaGVhZGVyQ2hlY2tib3hcIlxuICAgICAgICAqbmdJZj1cInNlbGVjdGlvbk1vZGUgPT0gJ3NpbmdsZScgPyBmYWxzZSA6IHRydWVcIlxuICAgICAgPjwvYXgtc2VsZWN0aW9uLWNvbHVtbj5cbiAgICAgIDwhLS0gPGF4LWRhdGEtc291cmNlIFtwcm92aWRlRGF0YV09XCJkYXRhU291cmNlLnByb3ZpZGVEYXRhXCI+XG4gICAgICAgICAgICAgIDwvYXgtZGF0YS1zb3VyY2U+IC0tPlxuICAgIDwvYXgtZGF0YS1ncmlkPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { AXDataSourceComponent, AXPopupService, AXSelectBoxComponent, AXValidatableComponent, AXValidation, } from '@acorex/components';\nimport { AXConfig } from '@acorex/core';\nimport { Component, ContentChild, ContentChildren, ElementRef, EventEmitter, Input, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation, } from '@angular/core';\nimport { AXGridDataColumn } from '../data-grid/columns/column.component';\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components\";\nexport class AXLOVComponent extends AXValidatableComponent {\n popup;\n ref;\n _contentValidation;\n _validation;\n get validation() {\n return this._validation ? this._validation : this._contentValidation;\n }\n set validation(v) {\n this._validation = v;\n }\n componentName = 'lov';\n constructor(popup, ref) {\n super();\n this.popup = popup;\n this.ref = ref;\n }\n selectBox;\n dataSource;\n columns;\n rowTemplate;\n textField = '';\n allowSearch = true;\n valueField = '';\n hasChildField = 'null';\n allowNull = true;\n popupSize = 'md';\n pagination = true;\n selectedItems = [];\n paginationAutoPageSize = false;\n paginationPageSize = 20;\n // @Input()\n // selectedValues: any[] = [];\n maxConcurrentDatasourceRequests;\n blockLoadDebounceMillis;\n readonly = false;\n disabled = false;\n chipsWidth = '';\n size = 'md';\n caption;\n mode = 'single';\n placeholder;\n onSelectionChange = new EventEmitter();\n rtl = AXConfig.get('layout.rtl');\n multiLine = false;\n paginationPageSizeSelector = [10, 20];\n remoteOperation = true;\n headerCheckbox = false;\n focus() {\n this.selectBox.focus();\n }\n refresh() {\n this.selectBox.refresh();\n }\n handleButtonClick() {\n this.open();\n }\n ngOnInit() {\n if (this.rtl == null) {\n this.rtl =\n window\n .getComputedStyle(this.ref.nativeElement, null)\n .getPropertyValue('direction') === 'rtl';\n }\n // this.selectVal = this.selectedValues;\n this.onSelectionChange.subscribe((c) => {\n this.clearValidationStyle(this.ref.nativeElement);\n });\n }\n ngAfterContentInit() {\n this.initValidation(this.ref, 'selectedItems', this.validation);\n }\n handleSelectChange(e) {\n this.selectedItems = e.selectedItems;\n this.onSelectionChange.emit({\n data: this.selectedItems,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n }\n open() {\n return new Promise((resolve) => {\n this.selectBox.dropdown.close();\n this.popup\n .open(AXDataLovPopupComponent, {\n size: this.popupSize,\n // closable: false,\n data: {\n remoteOperation: this.remoteOperation,\n suppressRowClickSelection: this.mode === 'multiple' ? false : true,\n dataSource: this.dataSource,\n selectionMode: this.mode,\n columns: this.columns.toArray(),\n selectedItems: this.selectedItems,\n keyField: this.valueField,\n allowNull: this.allowNull,\n hasChildField: this.hasChildField,\n rtl: this.rtl,\n pagination: this.pagination,\n paginationAutoPageSize: this.paginationAutoPageSize,\n paginationPageSize: this.paginationPageSize,\n maxConcurrentDatasourceRequests: this.maxConcurrentDatasourceRequests,\n blockLoadDebounceMillis: this.blockLoadDebounceMillis,\n paginationPageSizeSelector: this.paginationPageSizeSelector,\n headerCheckbox: this.headerCheckbox,\n },\n title: this.caption,\n // size: this.size,\n })\n .then((c) => {\n if (c.data) {\n // this.selectedValues = [];\n this.selectedItems = [];\n c.data.forEach((elm) => {\n this.selectedItems.push(elm);\n });\n // this.selectedItems = c.data;\n // this.selectBox.refresh();\n this.onSelectionChange.emit({\n data: this.selectedItems,\n component: this,\n htmlElement: this.ref.nativeElement,\n });\n if (resolve) {\n resolve(c.data);\n }\n }\n else {\n if (resolve) {\n resolve(this.selectedItems);\n }\n }\n this.selectBox.refresh();\n });\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVComponent, deps: [{ token: i1.AXPopupService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXLOVComponent, isStandalone: false, selector: \"ax-lov\", inputs: { validation: \"validation\", textField: \"textField\", allowSearch: \"allowSearch\", valueField: \"valueField\", hasChildField: \"hasChildField\", allowNull: \"allowNull\", popupSize: \"popupSize\", pagination: \"pagination\", selectedItems: \"selectedItems\", paginationAutoPageSize: \"paginationAutoPageSize\", paginationPageSize: \"paginationPageSize\", maxConcurrentDatasourceRequests: \"maxConcurrentDatasourceRequests\", blockLoadDebounceMillis: \"blockLoadDebounceMillis\", readonly: \"readonly\", disabled: \"disabled\", chipsWidth: \"chipsWidth\", size: \"size\", caption: \"caption\", mode: \"mode\", placeholder: \"placeholder\", rtl: \"rtl\", multiLine: \"multiLine\", paginationPageSizeSelector: \"paginationPageSizeSelector\", remoteOperation: \"remoteOperation\", headerCheckbox: \"headerCheckbox\" }, outputs: { onSelectionChange: \"onSelectionChange\" }, host: { styleAttribute: \"width: 100%\" }, providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }], queries: [{ propertyName: \"_contentValidation\", first: true, predicate: AXValidation, descendants: true, static: true }, { propertyName: \"dataSource\", first: true, predicate: AXDataSourceComponent, descendants: true, static: true }, { propertyName: \"rowTemplate\", first: true, predicate: [\"itemTemplate\"], descendants: true, static: true }, { propertyName: \"columns\", predicate: AXGridDataColumn }], viewQueries: [{ propertyName: \"selectBox\", first: true, predicate: [\"selectBox\"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: \"<ax-select-box\\n [rowInputTemplate]=\\\"rowTemplate\\\"\\n [multiLine]=\\\"multiLine\\\"\\n [rtl]=\\\"rtl\\\"\\n [allowSearch]=\\\"allowSearch\\\"\\n #selectBox\\n [showDropDownButton]=\\\"false\\\"\\n [allowNull]=\\\"allowNull\\\"\\n [remoteOperation]=\\\"remoteOperation\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [size]=\\\"size\\\"\\n [textField]=\\\"textField\\\"\\n [valueField]=\\\"valueField\\\"\\n [disabled]=\\\"disabled\\\"\\n [mode]=\\\"mode\\\"\\n [(selectedItems)]=\\\"selectedItems\\\"\\n (selectionChanged)=\\\"handleSelectChange($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n>\\n <ng-container start>\\n <ng-content select=\\\"[start]\\\"> </ng-content>\\n </ng-container>\\n <ng-container end>\\n <ax-button\\n icon=\\\"far fa-bars icon\\\"\\n [disabled]=\\\"disabled\\\"\\n type=\\\"light blank\\\"\\n (click)=\\\"handleButtonClick()\\\"\\n end\\n [tabIndex]=\\\"-1\\\"\\n >\\n </ax-button>\\n <ng-content select=\\\"[end]\\\"> </ng-content>\\n </ng-container>\\n</ax-select-box>\\n\\n<!-- <ax-select-box2 [rtl]=\\\"rtl\\\" [allowSearch]=\\\"allowSearch\\\" #selectBox [showDropDownButton]=\\\"false\\\" [allowNull]=\\\"allowNull\\\"\\n [remoteOperation]=\\\"true\\\" [placeholder]=\\\"placeholder\\\" [size]=\\\"size\\\" [textField]=\\\"textField\\\" [valueField]=\\\"valueField\\\"\\n [disabled]=\\\"disabled\\\" [selectionMode]=\\\"mode\\\" (onValueChanged)=\\\"handleSelectChange($event)\\\" [dataSource]=\\\"dataSource\\\"\\n [(value)]=\\\"selectedItems\\\" selectionDataMode=\\\"item\\\">\\n <ng-container start>\\n <ng-content select=\\\"[start]\\\">\\n </ng-content>\\n </ng-container>\\n <ng-container end>\\n <ax-button icon=\\\"far fa-bars icon\\\" [disabled]=\\\"disabled\\\" type=\\\"primary blank\\\" (click)=\\\"handleButtonClick()\\\" end\\n [tabIndex]=\\\"-1\\\">\\n </ax-button>\\n <ng-content select=\\\"[end]\\\">\\n </ng-content>\\n </ng-container>\\n</ax-select-box2> -->\\n\\n<!-- <div class=\\\"ax-lov-box\\\" [style.display]=\\\"mode=='hidden' ? 'none':'unset'\\\">\\n <div class=\\\"ax-field-set\\\">\\n <div class=\\\"ax-field-set-wrapper\\\" [ngClass]=\\\"{ 'no-label': !label }\\\">\\n <fieldset [ngClass]=\\\"{ 'input-focused': isFocused, 'input-error': errorText }\\\">\\n <legend *ngIf=\\\"label\\\">\\n {{ label }}\\n </legend>\\n </fieldset>\\n <input type=\\\"text\\\" [(ngModel)]=\\\"text\\\" [placeholder]=\\\"placeholder\\\" (keyup)=\\\"handleKeyEvent($event)\\\"\\n (blur)=\\\"handleBlurEvent($event)\\\" (focus)=\\\"handleFocusEvent($event)\\\" class=\\\"ax-text-box\\\" disabled />\\n <div class=\\\"ax-field-set-button\\\">\\n <button *ngIf=\\\"text && allowClear\\\" type=\\\"button\\\" class=\\\"btn btn-light\\\" (click)=\\\"clearText()\\\">\\n <i class=\\\"far fa-times\\\"></i>\\n </button>\\n <button type=\\\"button\\\" class=\\\" btn btn-primary\\\" (click)=\\\"handleButtonClick($event)\\\">\\n <i class=\\\"far fa-check-circle\\\"></i>\\n </button>\\n </div>\\n </div>\\n </div>\\n <div class=\\\"validation-text\\\" *ngIf=\\\"errorText\\\">\\n {{ errorText }}\\n </div>\\n\\n</div> -->\\n\", dependencies: [{ kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"type\", \"icon\", \"submitBehavior\", \"cancelBehavior\", \"block\", \"loading\", \"selected\"] }, { kind: \"component\", type: i1.AXSelectBoxComponent, selector: \"ax-select-box\", inputs: [\"showDropDownButton\", \"rowInputTemplate\", \"showCheckBox\", \"readonly\", \"rtl\", \"disabled\", \"placeholder\", \"size\", \"allowNull\", \"textAlign\", \"bufferSize\", \"remoteOperation\", \"fitParent\", \"dropdownWidth\", \"multiLine\", \"onDemandTranslate\", \"dataSource\", \"validation\", \"disabledCallback\", \"allowSearch\", \"textField\", \"valueField\", \"disabledField\", \"mode\", \"items\", \"selectedItems\", \"selectedValues\"], outputs: [\"dropdownToggle\", \"itemsChange\", \"onBlur\", \"onFocus\", \"selectionChanged\", \"selectedItemsChange\", \"selectedValuesChange\"] }], encapsulation: i0.ViewEncapsulation.None });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-lov', encapsulation: ViewEncapsulation.None, host: { style: 'width: 100%' }, providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }], standalone: false, template: \"<ax-select-box\\n [rowInputTemplate]=\\\"rowTemplate\\\"\\n [multiLine]=\\\"multiLine\\\"\\n [rtl]=\\\"rtl\\\"\\n [allowSearch]=\\\"allowSearch\\\"\\n #selectBox\\n [showDropDownButton]=\\\"false\\\"\\n [allowNull]=\\\"allowNull\\\"\\n [remoteOperation]=\\\"remoteOperation\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [size]=\\\"size\\\"\\n [textField]=\\\"textField\\\"\\n [valueField]=\\\"valueField\\\"\\n [disabled]=\\\"disabled\\\"\\n [mode]=\\\"mode\\\"\\n [(selectedItems)]=\\\"selectedItems\\\"\\n (selectionChanged)=\\\"handleSelectChange($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n>\\n <ng-container start>\\n <ng-content select=\\\"[start]\\\"> </ng-content>\\n </ng-container>\\n <ng-container end>\\n <ax-button\\n icon=\\\"far fa-bars icon\\\"\\n [disabled]=\\\"disabled\\\"\\n type=\\\"light blank\\\"\\n (click)=\\\"handleButtonClick()\\\"\\n end\\n [tabIndex]=\\\"-1\\\"\\n >\\n </ax-button>\\n <ng-content select=\\\"[end]\\\"> </ng-content>\\n </ng-container>\\n</ax-select-box>\\n\\n<!-- <ax-select-box2 [rtl]=\\\"rtl\\\" [allowSearch]=\\\"allowSearch\\\" #selectBox [showDropDownButton]=\\\"false\\\" [allowNull]=\\\"allowNull\\\"\\n [remoteOperation]=\\\"true\\\" [placeholder]=\\\"placeholder\\\" [size]=\\\"size\\\" [textField]=\\\"textField\\\" [valueField]=\\\"valueField\\\"\\n [disabled]=\\\"disabled\\\" [selectionMode]=\\\"mode\\\" (onValueChanged)=\\\"handleSelectChange($event)\\\" [dataSource]=\\\"dataSource\\\"\\n [(value)]=\\\"selectedItems\\\" selectionDataMode=\\\"item\\\">\\n <ng-container start>\\n <ng-content select=\\\"[start]\\\">\\n </ng-content>\\n </ng-container>\\n <ng-container end>\\n <ax-button icon=\\\"far fa-bars icon\\\" [disabled]=\\\"disabled\\\" type=\\\"primary blank\\\" (click)=\\\"handleButtonClick()\\\" end\\n [tabIndex]=\\\"-1\\\">\\n </ax-button>\\n <ng-content select=\\\"[end]\\\">\\n </ng-content>\\n </ng-container>\\n</ax-select-box2> -->\\n\\n<!-- <div class=\\\"ax-lov-box\\\" [style.display]=\\\"mode=='hidden' ? 'none':'unset'\\\">\\n <div class=\\\"ax-field-set\\\">\\n <div class=\\\"ax-field-set-wrapper\\\" [ngClass]=\\\"{ 'no-label': !label }\\\">\\n <fieldset [ngClass]=\\\"{ 'input-focused': isFocused, 'input-error': errorText }\\\">\\n <legend *ngIf=\\\"label\\\">\\n {{ label }}\\n </legend>\\n </fieldset>\\n <input type=\\\"text\\\" [(ngModel)]=\\\"text\\\" [placeholder]=\\\"placeholder\\\" (keyup)=\\\"handleKeyEvent($event)\\\"\\n (blur)=\\\"handleBlurEvent($event)\\\" (focus)=\\\"handleFocusEvent($event)\\\" class=\\\"ax-text-box\\\" disabled />\\n <div class=\\\"ax-field-set-button\\\">\\n <button *ngIf=\\\"text && allowClear\\\" type=\\\"button\\\" class=\\\"btn btn-light\\\" (click)=\\\"clearText()\\\">\\n <i class=\\\"far fa-times\\\"></i>\\n </button>\\n <button type=\\\"button\\\" class=\\\" btn btn-primary\\\" (click)=\\\"handleButtonClick($event)\\\">\\n <i class=\\\"far fa-check-circle\\\"></i>\\n </button>\\n </div>\\n </div>\\n </div>\\n <div class=\\\"validation-text\\\" *ngIf=\\\"errorText\\\">\\n {{ errorText }}\\n </div>\\n\\n</div> -->\\n\" }]\n }], ctorParameters: () => [{ type: i1.AXPopupService }, { type: i0.ElementRef }], propDecorators: { _contentValidation: [{\n type: ContentChild,\n args: [AXValidation, { static: true }]\n }], validation: [{\n type: Input\n }], selectBox: [{\n type: ViewChild,\n args: ['selectBox', { static: true }]\n }], dataSource: [{\n type: ContentChild,\n args: [AXDataSourceComponent, { static: true }]\n }], columns: [{\n type: ContentChildren,\n args: [AXGridDataColumn]\n }], rowTemplate: [{\n type: ContentChild,\n args: ['itemTemplate', { static: true }]\n }], textField: [{\n type: Input\n }], allowSearch: [{\n type: Input\n }], valueField: [{\n type: Input\n }], hasChildField: [{\n type: Input\n }], allowNull: [{\n type: Input\n }], popupSize: [{\n type: Input\n }], pagination: [{\n type: Input\n }], selectedItems: [{\n type: Input\n }], paginationAutoPageSize: [{\n type: Input\n }], paginationPageSize: [{\n type: Input\n }], maxConcurrentDatasourceRequests: [{\n type: Input\n }], blockLoadDebounceMillis: [{\n type: Input\n }], readonly: [{\n type: Input\n }], disabled: [{\n type: Input\n }], chipsWidth: [{\n type: Input\n }], size: [{\n type: Input\n }], caption: [{\n type: Input\n }], mode: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], onSelectionChange: [{\n type: Output\n }], rtl: [{\n type: Input\n }], multiLine: [{\n type: Input\n }], paginationPageSizeSelector: [{\n type: Input\n }], remoteOperation: [{\n type: Input\n }], headerCheckbox: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1sb3YuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWxvdi9kYXRhLWxvdi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2RhdGEtZ3JpZC9zcmMvbGliL2RhdGEtbG92L2RhdGEtbG92LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxxQkFBcUIsRUFFckIsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIsWUFBWSxHQUNiLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBVXBGLE1BQU0sT0FBTyxjQUNYLFNBQVEsc0JBQXNCO0lBaUJWO0lBQStCO0lBYjNDLGtCQUFrQixDQUFlO0lBQ2pDLFdBQVcsQ0FBZTtJQUVsQyxJQUNXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDdkUsQ0FBQztJQUNELElBQVcsVUFBVSxDQUFDLENBQWU7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWEsR0FBRyxL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akIsS0FBSztnQkFHTiwwQkFBMEI7c0JBRHpCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQmFzZUlucHV0Q29tcG9uZW50LFxuICBBWEJhc2VTaXphYmxlQ29tcG9uZW50LFxuICBBWERhdGFFdmVudCxcbiAgQVhEYXRhU291cmNlQ29tcG9uZW50LFxuICBBWEVsZW1lbnRTaXplLFxuICBBWFBvcHVwU2VydmljZSxcbiAgQVhTZWxlY3RCb3hDb21wb25lbnQsXG4gIEFYVmFsaWRhdGFibGVDb21wb25lbnQsXG4gIEFYVmFsaWRhdGlvbixcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYQ29uZmlnIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEdyaWREYXRhQ29sdW1uIH0gZnJvbSAnLi4vZGF0YS1ncmlkL2NvbHVtbnMvY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWERhdGFMb3ZQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vZGF0YS1sb3YtcG9wdXAvZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtbG92JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbG92LmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDogeyBzdHlsZTogJ3dpZHRoOiAxMDAlJyB9LFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYVmFsaWRhdGFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWExPVkNvbXBvbmVudCB9XSxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEFYTE9WQ29tcG9uZW50XG4gIGV4dGVuZHMgQVhWYWxpZGF0YWJsZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIEFYQmFzZVNpemFibGVDb21wb25lbnQsIEFYQmFzZUlucHV0Q29tcG9uZW50XG57XG4gIEBDb250ZW50Q2hpbGQoQVhWYWxpZGF0aW9uLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcml2YXRlIF9jb250ZW50VmFsaWRhdGlvbjogQVhWYWxpZGF0aW9uO1xuICBwcml2YXRlIF92YWxpZGF0aW9uOiBBWFZhbGlkYXRpb247XG5cbiAgQElucHV0KClcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uKCk6IEFYVmFsaWRhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRpb24gPyB0aGlzLl92YWxpZGF0aW9uIDogdGhpcy5fY29udGVudFZhbGlkYXRpb247XG4gIH1cbiAgcHVibGljIHNldCB2YWxpZGF0aW9uKHY6IEFYVmFsaWRhdGlvbikge1xuICAgIHRoaXMuX3ZhbGlkYXRpb24gPSB2O1xuICB9XG5cbiAgY29tcG9uZW50TmFtZSA9ICdsb3YnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9wdXA6IEFYUG9wdXBTZXJ2aWNlLCBwcml2YXRlIHJlZjogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBAVmlld0NoaWxkKCdzZWxlY3RCb3gnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBzZWxlY3RCb3g6IEFYU2VsZWN0Qm94Q29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoQVhEYXRhU291cmNlQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBkYXRhU291cmNlOiBBWERhdGFTb3VyY2VDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBWEdyaWREYXRhQ29sdW1uKVxuICBwcml2YXRlIGNvbHVtbnM6IFF1ZXJ5TGlzdDxBWEdyaWREYXRhQ29sdW1uPjtcblxuICBAQ29udGVudENoaWxkKCdpdGVtVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICByb3dUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBASW5wdXQoKVxuICB0ZXh0RmllbGQ6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGFsbG93U2VhcmNoOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICB2YWx1ZUZpZWxkOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKVxuICBoYXNDaGlsZEZpZWxkOiBzdHJpbmcgPSAnbnVsbCc7XG5cbiAgQElucHV0KClcbiAgYWxsb3dOdWxsOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwb3B1cFNpemU6ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICdmdWxsJyA9ICdtZCc7XG5cbiAgQElucHV0KClcbiAgcGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpXG4gIHNlbGVjdGVkSXRlbXM6IGFueVtdID0gW107XG5cbiAgQElucHV0KClcbiAgcGFnaW5hdGlvbkF1dG9QYWdlU2l6ZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb25QYWdlU2l6ZTogbnVtYmVyID0gMjA7XG5cbiAgLy8gQElucHV0KClcbiAgLy8gc2VsZWN0ZWRWYWx1ZXM6IGFueVtdID0gW107XG5cbiAgQElucHV0KClcbiAgbWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0czogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGJsb2NrTG9hZERlYm91bmNlTWlsbGlzOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGNoaXBzV2lkdGg6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHNpemU6IEFYRWxlbWVudFNpemUgPSAnbWQnO1xuXG4gIEBJbnB1dCgpXG4gIGNhcHRpb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBtb2RlOiAnc2luZ2xlJyB8ICdtdWx0aXBsZScgPSAnc2luZ2xlJztcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKVxuICBvblNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPEFYRGF0YUV2ZW50PGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBBWERhdGFFdmVudDxhbnk+XG4gID4oKTtcblxuICBASW5wdXQoKVxuICBydGw6IGJvb2xlYW4gPSBBWENvbmZpZy5nZXQoJ2xheW91dC5ydGwnKTtcblxuICBASW5wdXQoKSBtdWx0aUxpbmUgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwYWdpbmF0aW9uUGFnZVNpemVTZWxlY3RvcjogbnVtYmVyW10gfCBib29sZWFuID0gWzEwLCAyMF07XG5cbiAgQElucHV0KClcbiAgcmVtb3RlT3BlcmF0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBoZWFkZXJDaGVja2JveCA9IGZhbHNlO1xuXG4gIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0Qm94LmZvY3VzKCk7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMuc2VsZWN0Qm94LnJlZnJlc2goKTtcbiAgfVxuXG4gIGhhbmRsZUJ1dHRvbkNsaWNrKCkge1xuICAgIHRoaXMub3BlbigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucnRsID09IG51bGwpIHtcbiAgICAgIHRoaXMucnRsID1cbiAgICAgICAgd2luZG93XG4gICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5yZWYubmF0aXZlRWxlbWVudCwgbnVsbClcbiAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnZGlyZWN0aW9uJykgPT09ICdydGwnO1xuICAgIH1cbiAgICAvLyAgdGhpcy5zZWxlY3RWYWwgPSB0aGlzLnNlbGVjdGVkVmFsdWVzO1xuICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2Uuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICB0aGlzLmNsZWFyVmFsaWRhdGlvblN0eWxlKHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdFZhbGlkYXRpb24odGhpcy5yZWYsICdzZWxlY3RlZEl0ZW1zJywgdGhpcy52YWxpZGF0aW9uKTtcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdENoYW5nZShlKSB7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gZS5zZWxlY3RlZEl0ZW1zO1xuICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICBkYXRhOiB0aGlzLnNlbGVjdGVkSXRlbXMsXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICB0aGlzLnNlbGVjdEJveC5kcm9wZG93bi5jbG9zZSgpO1xuICAgICAgdGhpcy5wb3B1cFxuICAgICAgICAub3BlbihBWERhdGFMb3ZQb3B1cENvbXBvbmVudCwge1xuICAgICAgICAgIHNpemU6IHRoaXMucG9wdXBTaXplLFxuICAgICAgICAgIC8vICAgY2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHJlbW90ZU9wZXJhdGlvbjogdGhpcy5yZW1vdGVPcGVyYXRpb24sXG4gICAgICAgICAgICBzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uOiB0aGlzLm1vZGUgPT09ICdtdWx0aXBsZScgPyBmYWxzZSA6IHRydWUsXG4gICAgICAgICAgICBkYXRhU291cmNlOiB0aGlzLmRhdGFTb3VyY2UsXG4gICAgICAgICAgICBzZWxlY3Rpb25Nb2RlOiB0aGlzLm1vZGUsXG4gICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmNvbHVtbnMudG9BcnJheSgpLFxuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtczogdGhpcy5zZWxlY3RlZEl0ZW1zLFxuICAgICAgICAgICAga2V5RmllbGQ6IHRoaXMudmFsdWVGaWVsZCxcbiAgICAgICAgICAgIGFsbG93TnVsbDogdGhpcy5hbGxvd051bGwsXG4gICAgICAgICAgICBoYXNDaGlsZEZpZWxkOiB0aGlzLmhhc0NoaWxkRmllbGQsXG4gICAgICAgICAgICBydGw6IHRoaXMucnRsLFxuICAgICAgICAgICAgcGFnaW5hdGlvbjogdGhpcy5wYWdpbmF0aW9uLFxuICAgICAgICAgICAgcGFnaW5hdGlvbkF1dG9QYWdlU2l6ZTogdGhpcy5wYWdpbmF0aW9uQXV0b1BhZ2VTaXplLFxuICAgICAgICAgICAgcGFnaW5hdGlvblBhZ2VTaXplOiB0aGlzLnBhZ2luYXRpb25QYWdlU2l6ZSxcbiAgICAgICAgICAgIG1heENvbmN1cnJlbnREYXRhc291cmNlUmVxdWVzdHM6XG4gICAgICAgICAgICAgIHRoaXMubWF4Q29uY3VycmVudERhdGFzb3VyY2VSZXF1ZXN0cyxcbiAgICAgICAgICAgIGJsb2NrTG9hZERlYm91bmNlTWlsbGlzOiB0aGlzLmJsb2NrTG9hZERlYm91bmNlTWlsbGlzLFxuICAgICAgICAgICAgcGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3I6IHRoaXMucGFnaW5hdGlvblBhZ2VTaXplU2VsZWN0b3IsXG4gICAgICAgICAgICBoZWFkZXJDaGVja2JveDogdGhpcy5oZWFkZXJDaGVja2JveCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpdGxlOiB0aGlzLmNhcHRpb24sXG4gICAgICAgICAgLy8gc2l6ZTogdGhpcy5zaXplLFxuICAgICAgICB9KVxuICAgICAgICAudGhlbigoYykgPT4ge1xuICAgICAgICAgIGlmIChjLmRhdGEpIHtcbiAgICAgICAgICAgIC8vIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgICAgICAgICAgYy5kYXRhLmZvckVhY2goKGVsbSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChlbG0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gYy5kYXRhO1xuICAgICAgICAgICAgLy8gIHRoaXMuc2VsZWN0Qm94LnJlZnJlc2goKTtcbiAgICAgICAgICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICAgIGRhdGE6IHRoaXMuc2VsZWN0ZWRJdGVtcyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICAgICAgICBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKHJlc29sdmUpIHtcbiAgICAgICAgICAgICAgcmVzb2x2ZShjLmRhdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAocmVzb2x2ZSkge1xuICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5zZWxlY3RCb3gucmVmcmVzaCgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGF4LXNlbGVjdC1ib3hcbiAgW3Jvd0lucHV0VGVtcGxhdGVdPVwicm93VGVtcGxhdGVcIlxuICBbbXVsdGlMaW5lXT1cIm11bHRpTGluZVwiXG4gIFtydGxdPVwicnRsXCJcbiAgW2FsbG93U2VhcmNoXT1cImFsbG93U2VhcmNoXCJcbiAgI3NlbGVjdEJveFxuICBbc2hvd0Ryb3BEb3duQnV0dG9uXT1cImZhbHNlXCJcbiAgW2FsbG93TnVsbF09XCJhbGxvd051bGxcIlxuICBbcmVtb3RlT3BlcmF0aW9uXT1cInJlbW90ZU9wZXJhdGlvblwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIFtzaXplXT1cInNpemVcIlxuICBbdGV4dEZpZWxkXT1cInRleHRGaWVsZFwiXG4gIFt2YWx1ZUZpZWxkXT1cInZhbHVlRmllbGRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbbW9kZV09XCJtb2RlXCJcbiAgWyhzZWxlY3RlZEl0ZW1zKV09XCJzZWxlY3RlZEl0ZW1zXCJcbiAgKHNlbGVjdGlvbkNoYW5nZWQpPVwiaGFuZGxlU2VsZWN0Q2hhbmdlKCRldmVudClcIlxuICBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCJcbj5cbiAgPG5nLWNvbnRhaW5lciBzdGFydD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc3RhcnRdXCI+IDwvbmctY29udGVudD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgZW5kPlxuICAgIDxheC1idXR0b25cbiAgICAgIGljb249XCJmYXIgZmEtYmFycyBpY29uXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICB0eXBlPVwibGlnaHQgYmxhbmtcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKClcIlxuICAgICAgZW5kXG4gICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgID5cbiAgICA8L2F4LWJ1dHRvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW5kXVwiPiA8L25nLWNvbnRlbnQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9heC1zZWxlY3QtYm94PlxuXG48IS0tIDxheC1zZWxlY3QtYm94MiBbcnRsXT1cInJ0bFwiIFthbGxvd1NlYXJjaF09XCJhbGxvd1NlYXJjaFwiICNzZWxlY3RCb3ggW3Nob3dEcm9wRG93bkJ1dHRvbl09XCJmYWxzZVwiIFthbGxvd051bGxdPVwiYWxsb3dOdWxsXCJcbiAgICBbcmVtb3RlT3BlcmF0aW9uXT1cInRydWVcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbc2l6ZV09XCJzaXplXCIgW3RleHRGaWVsZF09XCJ0ZXh0RmllbGRcIiBbdmFsdWVGaWVsZF09XCJ2YWx1ZUZpZWxkXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbc2VsZWN0aW9uTW9kZV09XCJtb2RlXCIgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVNlbGVjdENoYW5nZSgkZXZlbnQpXCIgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXG4gICAgWyh2YWx1ZSldPVwic2VsZWN0ZWRJdGVtc1wiIHNlbGVjdGlvbkRhdGFNb2RlPVwiaXRlbVwiPlxuICAgIDxuZy1jb250YWluZXIgc3RhcnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzdGFydF1cIj5cbiAgICAgICAgPC9uZy1jb250ZW50PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgZW5kPlxuICAgICAgICA8YXgtYnV0dG9uIGljb249XCJmYXIgZmEtYmFycyBpY29uXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgdHlwZT1cInByaW1hcnkgYmxhbmtcIiAoY2xpY2spPVwiaGFuZGxlQnV0dG9uQ2xpY2soKVwiIGVuZFxuICAgICAgICAgICAgW3RhYkluZGV4XT1cIi0xXCI+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZW5kXVwiPlxuICAgICAgICA8L25nLWNvbnRlbnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2F4LXNlbGVjdC1ib3gyPiAtLT5cblxuPCEtLSA8ZGl2IGNsYXNzPVwiYXgtbG92LWJveFwiIFtzdHlsZS5kaXNwbGF5XT1cIm1vZGU9PSdoaWRkZW4nID8gJ25vbmUnOid1bnNldCdcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmllbGQtc2V0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1maWVsZC1zZXQtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInsgJ25vLWxhYmVsJzogIWxhYmVsIH1cIj5cbiAgICAgICAgICAgIDxmaWVsZHNldCBbbmdDbGFzc109XCJ7ICdpbnB1dC1mb2N1c2VkJzogaXNGb2N1c2VkLCAnaW5wdXQtZXJyb3InOiBlcnJvclRleHQgfVwiPlxuICAgICAgICAgICAgICAgIDxsZWdlbmQgKm5nSWY9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBsYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvbGVnZW5kPlxuICAgICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwidGV4dFwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIChrZXl1cCk9XCJoYW5kbGVLZXlFdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoYmx1cik9XCJoYW5kbGVCbHVyRXZlbnQoJGV2ZW50KVwiIChmb2N1cyk9XCJoYW5kbGVGb2N1c0V2ZW50KCRldmVudClcIiBjbGFzcz1cImF4LXRleHQtYm94XCIgZGlzYWJsZWQgLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1maWVsZC1zZXQtYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInRleHQgJiYgYWxsb3dDbGVhclwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tbGlnaHRcIiAoY2xpY2spPVwiY2xlYXJUZXh0KClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtdGltZXNcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCIgYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtY2hlY2stY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ2YWxpZGF0aW9uLXRleHRcIiAqbmdJZj1cImVycm9yVGV4dFwiPlxuICAgICAgICB7eyBlcnJvclRleHQgfX1cbiAgICA8L2Rpdj5cblxuPC9kaXY+IC0tPlxuIl19","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXLOVComponent } from './data-lov.component';\nimport { FormsModule } from '@angular/forms';\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\nimport { AXDataGridModule } from '../data-grid/datagrid.module';\nimport { AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSearchBoxModule, AXSelectBoxModule } from '@acorex/components';\nimport * as i0 from \"@angular/core\";\nexport class AXLOVModule {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVModule, declarations: [AXLOVComponent, AXDataLovPopupComponent], imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule], exports: [AXLOVComponent, AXDataLovPopupComponent] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVModule, imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXLOVModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [AXLOVComponent, AXDataLovPopupComponent],\n imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule],\n exports: [AXLOVComponent, AXDataLovPopupComponent],\n providers: []\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1sb3YubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kYXRhLWdyaWQvc3JjL2xpYi9kYXRhLWxvdi9kYXRhLWxvdi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVMvSCxNQUFNLE9BQU8sV0FBVzt1R0FBWCxXQUFXO3dHQUFYLFdBQVcsaUJBTEwsY0FBYyxFQUFFLHVCQUF1QixhQUM1QyxZQUFZLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLGFBQ3RJLGNBQWMsRUFBRSx1QkFBdUI7d0dBR3hDLFdBQVcsWUFKVixZQUFZLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCOzsyRkFJdkksV0FBVztrQkFOdkIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsdUJBQXVCLENBQUM7b0JBQ3ZELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDakosT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLHVCQUF1QixDQUFDO29CQUNsRCxTQUFTLEVBQUUsRUFBRTtpQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFYTE9WQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRhLWxvdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWERhdGFMb3ZQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vZGF0YS1sb3YtcG9wdXAvZGF0YS1sb3YtcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEFYRGF0YUdyaWRNb2R1bGUgfSBmcm9tICcuLi9kYXRhLWdyaWQvZGF0YWdyaWQubW9kdWxlJztcbmltcG9ydCB7IEFYRGF0YVNvdXJjZU1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYVG9vbGJhck1vZHVsZSwgQVhTZWFyY2hCb3hNb2R1bGUsIEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzJztcblxuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW0FYTE9WQ29tcG9uZW50LCBBWERhdGFMb3ZQb3B1cENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYRGF0YUdyaWRNb2R1bGUsIEFYRGF0YVNvdXJjZU1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYVG9vbGJhck1vZHVsZSwgQVhTZWxlY3RCb3hNb2R1bGUsIEFYU2VhcmNoQm94TW9kdWxlXSxcbiAgICBleHBvcnRzOiBbQVhMT1ZDb21wb25lbnQsIEFYRGF0YUxvdlBvcHVwQ29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFYTE9WTW9kdWxlIHsgfSJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWRhdGEtZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZGF0YS1ncmlkL3NyYy9hY29yZXgtZGF0YS1ncmlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1","i2.AXDataGridFilterComponent","i2.AXDataGridComponent","i3.AXGridSelectionColumn","i4"],"mappings":"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"}
|