nira-falcon 0.0.1 → 0.0.3
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/esm2022/lib/core-auto-complete/core-auto-complete.component.mjs +82 -0
- package/esm2022/lib/core-btn/core-btn.component.mjs +26 -11
- package/esm2022/lib/core-card/core-card.component.mjs +16 -0
- package/esm2022/lib/core-checkbox/core-checkbox.component.mjs +33 -0
- package/esm2022/lib/core-confirm-dialog/core-confirm-dialog.component.mjs +31 -0
- package/esm2022/lib/core-date-picker/core-date-picker.component.mjs +52 -0
- package/esm2022/lib/core-input/core-input.component.mjs +48 -0
- package/esm2022/lib/core-mulite-select/core-mulite-select-row/core-mulite-select-row.component.mjs +29 -0
- package/esm2022/lib/core-mulite-select/core-mulite-select.component.mjs +130 -0
- package/esm2022/lib/core-number/core-number.component.mjs +64 -0
- package/esm2022/lib/core-page-title/core-page-title.component.mjs +19 -0
- package/esm2022/lib/core-radio-buttons/core-radio-buttons.component.mjs +75 -0
- package/esm2022/lib/core-search-box/core-search-box.component.mjs +25 -0
- package/esm2022/lib/core-select/core-select.component.mjs +112 -0
- package/esm2022/lib/core-spinner/core-spinner.component.mjs +3 -3
- package/esm2022/lib/core-switch/core-switch.component.mjs +33 -0
- package/esm2022/lib/core-table/core-column-date-picker/core-column-date-picker.component.mjs +62 -0
- package/esm2022/lib/core-table/core-column-input/core-column-input.component.mjs +29 -0
- package/esm2022/lib/core-table/core-column-selector/core-column-selector.component.mjs +91 -0
- package/esm2022/lib/core-table/core-row-pelak/core-row-pelak.component.mjs +21 -0
- package/esm2022/lib/core-table/core-table/core-table.component.mjs +176 -0
- package/esm2022/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.mjs +34 -0
- package/esm2022/lib/core-table/core-table-action-column/core-table-action-column.component.mjs +27 -0
- package/esm2022/lib/core-table/core-table-card-manager/core-table-card-manager.component.mjs +80 -0
- package/esm2022/lib/core-table/core-table-column-manager/core-table-column-manager.component.mjs +79 -0
- package/esm2022/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.mjs +24 -0
- package/esm2022/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.mjs +82 -0
- package/esm2022/lib/core-table/core-table-no-content/core-table-no-content.component.mjs +23 -0
- package/esm2022/lib/core-table/core-table-no-content/core-table-no-content.label.mjs +9 -0
- package/esm2022/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.mjs +42 -0
- package/esm2022/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.mjs +26 -0
- package/esm2022/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.mjs +20 -0
- package/esm2022/lib/core-table/core-table-status-column/core-table-status-column.component.mjs +18 -0
- package/esm2022/lib/core-textarea/core-textarea.component.mjs +47 -0
- package/esm2022/lib/core-time-picker/core-time-picker.component.mjs +104 -0
- package/esm2022/lib/core-time-picker/time-picker-modal/time-picker-modal.component.mjs +147 -0
- package/esm2022/lib/falcon-lib.module.mjs +228 -7
- package/esm2022/lib/falconTypes.mjs +9 -2
- package/esm2022/lib/pipes/digit-group.pipe.mjs +16 -0
- package/esm2022/lib/pipes/form-control.pipe.mjs +16 -0
- package/esm2022/lib/pipes/persian-digits.pipe.mjs +40 -0
- package/esm2022/lib/pipes/price-format.pipe.mjs +23 -0
- package/esm2022/lib/pipes/shamsi-date.pipe.mjs +18 -0
- package/esm2022/lib/pipes/time-format.pipe.mjs +28 -0
- package/esm2022/lib/pipes/weight.pipe.mjs +16 -0
- package/esm2022/lib/wordify.mjs +109 -0
- package/esm2022/public-api.mjs +25 -3
- package/esm2022/svg-icon/caret-up-icon/caret-up-icon.component.mjs +11 -0
- package/esm2022/svg-icon/close-icon/close-icon.component.mjs +11 -0
- package/esm2022/svg-icon/edit-square-icon/edit-square-icon.component.mjs +11 -0
- package/esm2022/svg-icon/pelak-icon/pelak-icon.component.mjs +11 -0
- package/esm2022/svg-icon/search-icon/search-icon.component.mjs +11 -0
- package/esm2022/svg-icon/sort-down-icon/sort-down-icon.component.mjs +11 -0
- package/esm2022/svg-icon/sort-solid-icon/sort-solid-icon.component.mjs +11 -0
- package/esm2022/svg-icon/sort-up-icon/sort-up-icon.component.mjs +11 -0
- package/esm2022/svg-icon/time-icon/time-icon.component.mjs +11 -0
- package/esm2022/svg-icon/warning-icon/warning-icon.component.mjs +11 -0
- package/esm2022/utils/constants.mjs +94 -0
- package/esm2022/utils/directives/detail-viewer-manager.directive.mjs +71 -0
- package/esm2022/utils/directives/table-detail-viewer-manager.directive.mjs +49 -0
- package/esm2022/utils/types.mjs +2 -0
- package/esm2022/utils/util.mjs +26 -0
- package/fesm2022/nira-falcon.mjs +2384 -43
- package/fesm2022/nira-falcon.mjs.map +1 -1
- package/lib/core-auto-complete/core-auto-complete.component.d.ts +30 -0
- package/lib/core-btn/core-btn.component.d.ts +3 -0
- package/lib/core-card/core-card.component.d.ts +6 -0
- package/lib/core-checkbox/core-checkbox.component.d.ts +13 -0
- package/lib/core-confirm-dialog/core-confirm-dialog.component.d.ts +14 -0
- package/lib/core-date-picker/core-date-picker.component.d.ts +20 -0
- package/lib/core-input/core-input.component.d.ts +17 -0
- package/lib/core-mulite-select/core-mulite-select-row/core-mulite-select-row.component.d.ts +11 -0
- package/lib/core-mulite-select/core-mulite-select.component.d.ts +42 -0
- package/lib/core-number/core-number.component.d.ts +12 -0
- package/lib/core-page-title/core-page-title.component.d.ts +7 -0
- package/lib/core-radio-buttons/core-radio-buttons.component.d.ts +29 -0
- package/lib/core-search-box/core-search-box.component.d.ts +10 -0
- package/lib/core-select/core-select.component.d.ts +40 -0
- package/lib/core-switch/core-switch.component.d.ts +17 -0
- package/lib/core-table/core-column-date-picker/core-column-date-picker.component.d.ts +21 -0
- package/lib/core-table/core-column-input/core-column-input.component.d.ts +11 -0
- package/lib/core-table/core-column-selector/core-column-selector.component.d.ts +33 -0
- package/lib/core-table/core-row-pelak/core-row-pelak.component.d.ts +8 -0
- package/lib/core-table/core-table/core-table.component.d.ts +33 -0
- package/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.d.ts +11 -0
- package/lib/core-table/core-table-action-column/core-table-action-column.component.d.ts +11 -0
- package/lib/core-table/core-table-card-manager/core-table-card-manager.component.d.ts +23 -0
- package/lib/core-table/core-table-column-manager/core-table-column-manager.component.d.ts +23 -0
- package/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.d.ts +10 -0
- package/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.d.ts +22 -0
- package/lib/core-table/core-table-no-content/core-table-no-content.component.d.ts +9 -0
- package/lib/core-table/core-table-no-content/core-table-no-content.label.d.ts +5 -0
- package/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.d.ts +12 -0
- package/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.d.ts +11 -0
- package/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.d.ts +8 -0
- package/lib/core-table/core-table-status-column/core-table-status-column.component.d.ts +7 -0
- package/lib/core-textarea/core-textarea.component.d.ts +13 -0
- package/lib/core-time-picker/core-time-picker.component.d.ts +25 -0
- package/lib/core-time-picker/time-picker-modal/time-picker-modal.component.d.ts +35 -0
- package/lib/falcon-lib.module.d.ts +57 -4
- package/lib/falconTypes.d.ts +7 -0
- package/lib/pipes/digit-group.pipe.d.ts +7 -0
- package/lib/pipes/form-control.pipe.d.ts +8 -0
- package/lib/pipes/persian-digits.pipe.d.ts +7 -0
- package/lib/pipes/price-format.pipe.d.ts +7 -0
- package/lib/pipes/shamsi-date.pipe.d.ts +9 -0
- package/lib/pipes/time-format.pipe.d.ts +7 -0
- package/lib/pipes/weight.pipe.d.ts +7 -0
- package/lib/wordify.d.ts +2 -0
- package/package.json +1 -1
- package/public-api.d.ts +24 -2
- package/svg-icon/caret-up-icon/caret-up-icon.component.d.ts +5 -0
- package/svg-icon/close-icon/close-icon.component.d.ts +5 -0
- package/svg-icon/edit-square-icon/edit-square-icon.component.d.ts +5 -0
- package/svg-icon/pelak-icon/pelak-icon.component.d.ts +5 -0
- package/svg-icon/search-icon/search-icon.component.d.ts +5 -0
- package/svg-icon/sort-down-icon/sort-down-icon.component.d.ts +5 -0
- package/svg-icon/sort-solid-icon/sort-solid-icon.component.d.ts +5 -0
- package/svg-icon/sort-up-icon/sort-up-icon.component.d.ts +5 -0
- package/svg-icon/time-icon/time-icon.component.d.ts +5 -0
- package/svg-icon/warning-icon/warning-icon.component.d.ts +5 -0
- package/utils/constants.d.ts +66 -0
- package/utils/directives/detail-viewer-manager.directive.d.ts +18 -0
- package/utils/directives/table-detail-viewer-manager.directive.d.ts +16 -0
- package/utils/types.d.ts +10 -0
- package/utils/util.d.ts +11 -0
- package/esm2022/lib/falcon-lib.component.mjs +0 -19
- package/esm2022/lib/falcon-lib.service.mjs +0 -14
- package/esm2022/nira-falcon-lib.mjs +0 -5
- package/fesm2022/nira-falcon-lib.mjs +0 -120
- package/fesm2022/nira-falcon-lib.mjs.map +0 -1
- package/lib/falcon-lib.component.d.ts +0 -5
- package/lib/falcon-lib.service.d.ts +0 -6
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
|
+
import { COLUMNS_TYPES } from 'projects/falcon-lib/src/utils/constants';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { Util } from 'projects/falcon-lib/src/utils/util';
|
|
5
|
+
import { orderBy } from 'lodash';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "ngx-indexed-db";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "../../core-card/core-card.component";
|
|
10
|
+
import * as i4 from "../core-column-date-picker/core-column-date-picker.component";
|
|
11
|
+
import * as i5 from "../core-column-input/core-column-input.component";
|
|
12
|
+
import * as i6 from "../core-column-selector/core-column-selector.component";
|
|
13
|
+
import * as i7 from "../core-table-card-manager/core-table-card-manager.component";
|
|
14
|
+
import * as i8 from "../core-table-column-manager/core-table-column-manager.component";
|
|
15
|
+
import * as i9 from "../core-table-no-content/core-table-no-content.component";
|
|
16
|
+
import * as i10 from "../../../svg-icon/sort-down-icon/sort-down-icon.component";
|
|
17
|
+
import * as i11 from "../../../svg-icon/sort-solid-icon/sort-solid-icon.component";
|
|
18
|
+
import * as i12 from "../../../svg-icon/sort-up-icon/sort-up-icon.component";
|
|
19
|
+
export class CoreTableComponent {
|
|
20
|
+
get columnsTypes() {
|
|
21
|
+
return COLUMNS_TYPES;
|
|
22
|
+
}
|
|
23
|
+
get isRunningOnSmallScreen() {
|
|
24
|
+
return Util.isRunningOnSmallScreen();
|
|
25
|
+
}
|
|
26
|
+
constructor(dbService) {
|
|
27
|
+
this.dbService = dbService;
|
|
28
|
+
this.tableData = new BehaviorSubject([]);
|
|
29
|
+
this.responsive = true;
|
|
30
|
+
this.rowSelector = undefined;
|
|
31
|
+
this.onColumnClicked = new EventEmitter();
|
|
32
|
+
this.sortedTableData = [];
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
this.tableData.subscribe((val) => {
|
|
36
|
+
this.sortedTableData = val;
|
|
37
|
+
});
|
|
38
|
+
if (this.key) {
|
|
39
|
+
this.dbService
|
|
40
|
+
.getByIndex('tableFilter', 'key', this.key)
|
|
41
|
+
.subscribe((data) => {
|
|
42
|
+
this.dbTableFilter = data;
|
|
43
|
+
if (this.dbTableFilter) {
|
|
44
|
+
this.setTableFilter();
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
setTableFilter() {
|
|
50
|
+
this.columnsSchema.map((column) => {
|
|
51
|
+
JSON.parse(this.dbTableFilter.columnsSchema).forEach((dbColumnsSchema) => {
|
|
52
|
+
if (dbColumnsSchema.key === column.key) {
|
|
53
|
+
column.active = dbColumnsSchema.active;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
return column;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
columnClicked(val) {
|
|
60
|
+
this.onColumnClicked.emit(val);
|
|
61
|
+
}
|
|
62
|
+
sortByHeader(column) {
|
|
63
|
+
if (this.sortDetail && this.sortDetail.key == column.key) {
|
|
64
|
+
if (this.sortDetail.sort == 'desc') {
|
|
65
|
+
this.sortDetail = { key: column.key, sort: 'asc' };
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
this.sortDetail = { key: column.key, sort: 'desc' };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
this.sortDetail = { key: column.key, sort: 'asc' };
|
|
73
|
+
}
|
|
74
|
+
if (column.type == COLUMNS_TYPES.TEXT ||
|
|
75
|
+
column.type == COLUMNS_TYPES.NUMBER) {
|
|
76
|
+
this.sortedTableData = orderBy(this.sortedTableData, [column.key], [this.sortDetail.sort]);
|
|
77
|
+
}
|
|
78
|
+
else if (column.type == COLUMNS_TYPES.SELECTOR) {
|
|
79
|
+
this.sortedTableData = orderBy(this.sortedTableData, [(c) => c[column.key][column.data.key]], [this.sortDetail.sort]);
|
|
80
|
+
}
|
|
81
|
+
else if (column.type == COLUMNS_TYPES.SHAMSI_DATE) {
|
|
82
|
+
this.sortedTableData = orderBy(this.sortedTableData, [(c) => new Date(c[column.key]).getTime()], [this.sortDetail.sort]);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
activeColumnsSchema() {
|
|
86
|
+
return this.columnsSchema.filter((column) => column.active === undefined || column.active);
|
|
87
|
+
}
|
|
88
|
+
tableDataFiltered(text, column) {
|
|
89
|
+
this.columnsSchema.map((columnSchema) => {
|
|
90
|
+
if (columnSchema.key === column.key) {
|
|
91
|
+
columnSchema.columnFilter = text;
|
|
92
|
+
}
|
|
93
|
+
return columnSchema;
|
|
94
|
+
});
|
|
95
|
+
const tableData = this.tableData.getValue();
|
|
96
|
+
this.sortedTableData = tableData.filter((data) => {
|
|
97
|
+
let result = true;
|
|
98
|
+
this.columnsSchema.forEach((columnSchema) => {
|
|
99
|
+
if (columnSchema.type === this.columnsTypes.ROW_SELECTOR ||
|
|
100
|
+
columnSchema.type === this.columnsTypes.ACTION ||
|
|
101
|
+
columnSchema.type === this.columnsTypes.ACTION_BUTTONS ||
|
|
102
|
+
columnSchema.columnFilter === undefined ||
|
|
103
|
+
!result) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (columnSchema.type === this.columnsTypes.SELECTOR) {
|
|
107
|
+
result = data[columnSchema.key][columnSchema.data.key]
|
|
108
|
+
.toLowerCase()
|
|
109
|
+
.includes(columnSchema.columnFilter.toString().toLowerCase());
|
|
110
|
+
}
|
|
111
|
+
else if (columnSchema.type === this.columnsTypes.SHAMSI_DATE) {
|
|
112
|
+
if (columnSchema.columnFilter === '') {
|
|
113
|
+
result = true;
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
result = data[columnSchema.key]
|
|
117
|
+
.toLowerCase()
|
|
118
|
+
.includes(Util.shamsiToMiladi(columnSchema.columnFilter.toString(), 'YYYY-MM-DD'));
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
else if (columnSchema.type === this.columnsTypes.MULTI_COLUMN) {
|
|
122
|
+
result = columnSchema.columns.some((item) => {
|
|
123
|
+
return data[item.key][item.data.key]
|
|
124
|
+
.toLowerCase()
|
|
125
|
+
.includes(columnSchema.columnFilter?.toString()?.toLowerCase());
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
else if (columnSchema.type === this.columnsTypes.STATUS) {
|
|
129
|
+
if (columnSchema.columnFilter === '') {
|
|
130
|
+
result = true;
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
result = data[columnSchema.key] === columnSchema.columnFilter;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
result = data[columnSchema.key]
|
|
138
|
+
.toString()
|
|
139
|
+
.toLowerCase()
|
|
140
|
+
.includes(columnSchema.columnFilter?.toString()?.toLowerCase());
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
return result;
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableComponent, deps: [{ token: i1.NgxIndexedDBService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
147
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableComponent, selector: "core-table", inputs: { key: "key", columnsSchema: "columnsSchema", tableData: "tableData", responsive: "responsive", loading: "loading", styleFilter: "styleFilter", rowSelector: "rowSelector" }, outputs: { onColumnClicked: "onColumnClicked" }, ngImport: i0, template: "<div class=\"p-2 overflow-x-auto\">\r\n <table *ngIf=\"!isRunningOnSmallScreen || !responsive; else smallDeviceCard\">\r\n <tr>\r\n <th\r\n class=\"cursor-pointer text-center\"\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n >\r\n <div class=\"grid grid-rows-2\">\r\n <span\r\n class=\"p-2 relative\"\r\n (click)=\"sortByHeader(column)\"\r\n [ngStyle]=\"{\r\n minWidth:\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? column.data.length * 30 + 'px'\r\n : '',\r\n display:\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? 'inline-block'\r\n : ''\r\n }\"\r\n >{{ column.label }}\r\n <app-sort-down-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"\r\n sortDetail?.key == column.key && sortDetail?.sort === 'asc'\r\n \"\r\n ></app-sort-down-icon>\r\n <app-sort-up-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"\r\n sortDetail?.key == column.key && sortDetail?.sort === 'desc'\r\n \"\r\n ></app-sort-up-icon>\r\n <app-sort-solid-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"sortDetail?.key !== column.key\"\r\n ></app-sort-solid-icon>\r\n </span>\r\n <core-column-date-picker\r\n *ngIf=\"column.type == columnsTypes.SHAMSI_DATE\"\r\n [canSelectToday]=\"true\"\r\n (onChange)=\"tableDataFiltered($event, column)\"\r\n >\r\n </core-column-date-picker>\r\n <core-column-input\r\n *ngIf=\"\r\n column.type !== columnsTypes.ACTION &&\r\n column.type !== columnsTypes.STATUS &&\r\n column.type !== columnsTypes.SHAMSI_DATE\r\n \"\r\n (onChange)=\"tableDataFiltered($event, column)\"\r\n ></core-column-input>\r\n <core-column-selector\r\n *ngIf=\"column.type == columnsTypes.STATUS\"\r\n [titleKey]=\"'title'\"\r\n [valueKey]=\"'value'\"\r\n (onItemSelected)=\"tableDataFiltered($event, column)\"\r\n ></core-column-selector>\r\n </div>\r\n </th>\r\n </tr>\r\n <tr *ngFor=\"let data of sortedTableData\">\r\n <td\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n [class]=\"styleFilter ? styleFilter(data) : ''\"\r\n >\r\n <app-core-table-column-manager\r\n *ngIf=\"column.type != columnsTypes.MULTI_COLUMN; else elseBlock\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-column-manager>\r\n <ng-template #elseBlock>\r\n <app-core-table-column-manager\r\n *ngFor=\"let childColumn of column.columns; let i = index\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"childColumn\"\r\n >\r\n <span *ngIf=\"i > 0\">-</span>\r\n </app-core-table-column-manager>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </table>\r\n <ng-template #smallDeviceCard>\r\n <div>\r\n <core-card\r\n *ngFor=\"let data of sortedTableData\"\r\n [cardClass]=\"'background-card m-4 p-4 relative'\"\r\n >\r\n <div\r\n class=\"leading-8\"\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n [class]=\"\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? 'actionButtons'\r\n : column.type === columnsTypes.ROW_SELECTOR\r\n ? 'selectRow'\r\n : ''\r\n \"\r\n >\r\n <span\r\n *ngIf=\"\r\n column.type !== columnsTypes.ACTION_BUTTONS &&\r\n column.type !== columnsTypes.ROW_SELECTOR\r\n \"\r\n class=\"secondary-text-color\"\r\n >\r\n {{ column.label }} :\r\n </span>\r\n <span class=\"primary-text-color font-semibold\">\r\n <app-core-table-card-manager\r\n *ngIf=\"\r\n column.type != columnsTypes.MULTI_COLUMN;\r\n else cardManagerElseBlock\r\n \"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-card-manager>\r\n\r\n <ng-template #cardManagerElseBlock>\r\n <app-core-table-card-manager\r\n *ngFor=\"let childColumn of column.columns; let i = index\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"childColumn\"\r\n >\r\n <span *ngIf=\"i > 0\">-</span>\r\n </app-core-table-card-manager>\r\n </ng-template>\r\n </span>\r\n </div>\r\n </core-card>\r\n </div>\r\n </ng-template>\r\n <core-table-no-content\r\n *ngIf=\"!loading\"\r\n [tableData]=\"sortedTableData\"\r\n [loading]=\"loading\"\r\n ></core-table-no-content>\r\n</div>\r\n", styles: ["table{border-collapse:collapse;width:100%;text-align:start}table td,table th{padding-top:12px;padding-bottom:12px;padding-inline-start:8px}table td{font-size:small;color:var(--default-table-td-text-color)}table tr:nth-child(2n){background-color:var(--default-table-tr-child-background-color)}table tr:hover{background-color:var(--default-table-tr-hover-background-color)}table th{background-color:var(--default-table-th-background-color);text-align:start;color:#1d1d1d}.actionButtons{position:absolute;bottom:0;background:var(--default-table-action-buttons-background-color);left:0;right:0;text-align:left;border-radius:.5rem;border-top-right-radius:0;border-top-left-radius:0;padding-top:4px;padding-left:16px}.selectRow{position:absolute;left:0;top:18px}.desc-sort-icon{transform:rotate(180deg)}.sort-icon{fill:var(--default-table-sort-icon-color)}.background-card{background-color:var(--default-table-background-card-color)}.secondary-text-color{color:var(--default-table-secondary-text-color)}.primary-text-color{color:var(--default-table-primary-text-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.CoreCardComponent, selector: "core-card", inputs: ["cardClass"] }, { kind: "component", type: i4.CoreColumnDatePickerComponent, selector: "core-column-date-picker", inputs: ["canSelectToday", "defaultDate", "inputFormControl"], outputs: ["onChange"] }, { kind: "component", type: i5.CoreColumnInputComponent, selector: "core-column-input", inputs: ["showRemoveIcon", "placeholder", "value"], outputs: ["onChange"] }, { kind: "component", type: i6.CoreColumnSelectorComponent, selector: "core-column-selector", inputs: ["titleKey", "valueKey", "label", "inputFormControl"], outputs: ["onItemSelected"] }, { kind: "component", type: i7.CoreTableCardManagerComponent, selector: "app-core-table-card-manager", inputs: ["data", "column", "rowSelector"], outputs: ["onColumnClicked"] }, { kind: "component", type: i8.CoreTableColumnManagerComponent, selector: "app-core-table-column-manager", inputs: ["data", "column", "rowSelector"], outputs: ["onColumnClicked"] }, { kind: "component", type: i9.CoreTableNoContentComponent, selector: "core-table-no-content", inputs: ["tableData", "loading"] }, { kind: "component", type: i10.SortDownIconComponent, selector: "app-sort-down-icon" }, { kind: "component", type: i11.SortSolidIconComponent, selector: "app-sort-solid-icon" }, { kind: "component", type: i12.SortUpIconComponent, selector: "app-sort-up-icon" }] }); }
|
|
148
|
+
}
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableComponent, decorators: [{
|
|
150
|
+
type: Component,
|
|
151
|
+
args: [{ selector: 'core-table', template: "<div class=\"p-2 overflow-x-auto\">\r\n <table *ngIf=\"!isRunningOnSmallScreen || !responsive; else smallDeviceCard\">\r\n <tr>\r\n <th\r\n class=\"cursor-pointer text-center\"\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n >\r\n <div class=\"grid grid-rows-2\">\r\n <span\r\n class=\"p-2 relative\"\r\n (click)=\"sortByHeader(column)\"\r\n [ngStyle]=\"{\r\n minWidth:\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? column.data.length * 30 + 'px'\r\n : '',\r\n display:\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? 'inline-block'\r\n : ''\r\n }\"\r\n >{{ column.label }}\r\n <app-sort-down-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"\r\n sortDetail?.key == column.key && sortDetail?.sort === 'asc'\r\n \"\r\n ></app-sort-down-icon>\r\n <app-sort-up-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"\r\n sortDetail?.key == column.key && sortDetail?.sort === 'desc'\r\n \"\r\n ></app-sort-up-icon>\r\n <app-sort-solid-icon\r\n class=\"sort-icon w-2 h-2 inline-block absolute top-3 right-[-3px]\"\r\n *ngIf=\"sortDetail?.key !== column.key\"\r\n ></app-sort-solid-icon>\r\n </span>\r\n <core-column-date-picker\r\n *ngIf=\"column.type == columnsTypes.SHAMSI_DATE\"\r\n [canSelectToday]=\"true\"\r\n (onChange)=\"tableDataFiltered($event, column)\"\r\n >\r\n </core-column-date-picker>\r\n <core-column-input\r\n *ngIf=\"\r\n column.type !== columnsTypes.ACTION &&\r\n column.type !== columnsTypes.STATUS &&\r\n column.type !== columnsTypes.SHAMSI_DATE\r\n \"\r\n (onChange)=\"tableDataFiltered($event, column)\"\r\n ></core-column-input>\r\n <core-column-selector\r\n *ngIf=\"column.type == columnsTypes.STATUS\"\r\n [titleKey]=\"'title'\"\r\n [valueKey]=\"'value'\"\r\n (onItemSelected)=\"tableDataFiltered($event, column)\"\r\n ></core-column-selector>\r\n </div>\r\n </th>\r\n </tr>\r\n <tr *ngFor=\"let data of sortedTableData\">\r\n <td\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n [class]=\"styleFilter ? styleFilter(data) : ''\"\r\n >\r\n <app-core-table-column-manager\r\n *ngIf=\"column.type != columnsTypes.MULTI_COLUMN; else elseBlock\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-column-manager>\r\n <ng-template #elseBlock>\r\n <app-core-table-column-manager\r\n *ngFor=\"let childColumn of column.columns; let i = index\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"childColumn\"\r\n >\r\n <span *ngIf=\"i > 0\">-</span>\r\n </app-core-table-column-manager>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </table>\r\n <ng-template #smallDeviceCard>\r\n <div>\r\n <core-card\r\n *ngFor=\"let data of sortedTableData\"\r\n [cardClass]=\"'background-card m-4 p-4 relative'\"\r\n >\r\n <div\r\n class=\"leading-8\"\r\n *ngFor=\"let column of activeColumnsSchema()\"\r\n [class]=\"\r\n column.type === columnsTypes.ACTION_BUTTONS\r\n ? 'actionButtons'\r\n : column.type === columnsTypes.ROW_SELECTOR\r\n ? 'selectRow'\r\n : ''\r\n \"\r\n >\r\n <span\r\n *ngIf=\"\r\n column.type !== columnsTypes.ACTION_BUTTONS &&\r\n column.type !== columnsTypes.ROW_SELECTOR\r\n \"\r\n class=\"secondary-text-color\"\r\n >\r\n {{ column.label }} :\r\n </span>\r\n <span class=\"primary-text-color font-semibold\">\r\n <app-core-table-card-manager\r\n *ngIf=\"\r\n column.type != columnsTypes.MULTI_COLUMN;\r\n else cardManagerElseBlock\r\n \"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-card-manager>\r\n\r\n <ng-template #cardManagerElseBlock>\r\n <app-core-table-card-manager\r\n *ngFor=\"let childColumn of column.columns; let i = index\"\r\n [rowSelector]=\"rowSelector\"\r\n (onColumnClicked)=\"columnClicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"childColumn\"\r\n >\r\n <span *ngIf=\"i > 0\">-</span>\r\n </app-core-table-card-manager>\r\n </ng-template>\r\n </span>\r\n </div>\r\n </core-card>\r\n </div>\r\n </ng-template>\r\n <core-table-no-content\r\n *ngIf=\"!loading\"\r\n [tableData]=\"sortedTableData\"\r\n [loading]=\"loading\"\r\n ></core-table-no-content>\r\n</div>\r\n", styles: ["table{border-collapse:collapse;width:100%;text-align:start}table td,table th{padding-top:12px;padding-bottom:12px;padding-inline-start:8px}table td{font-size:small;color:var(--default-table-td-text-color)}table tr:nth-child(2n){background-color:var(--default-table-tr-child-background-color)}table tr:hover{background-color:var(--default-table-tr-hover-background-color)}table th{background-color:var(--default-table-th-background-color);text-align:start;color:#1d1d1d}.actionButtons{position:absolute;bottom:0;background:var(--default-table-action-buttons-background-color);left:0;right:0;text-align:left;border-radius:.5rem;border-top-right-radius:0;border-top-left-radius:0;padding-top:4px;padding-left:16px}.selectRow{position:absolute;left:0;top:18px}.desc-sort-icon{transform:rotate(180deg)}.sort-icon{fill:var(--default-table-sort-icon-color)}.background-card{background-color:var(--default-table-background-card-color)}.secondary-text-color{color:var(--default-table-secondary-text-color)}.primary-text-color{color:var(--default-table-primary-text-color)}\n"] }]
|
|
152
|
+
}], ctorParameters: function () { return [{ type: i1.NgxIndexedDBService }]; }, propDecorators: { key: [{
|
|
153
|
+
type: Input,
|
|
154
|
+
args: [{ required: false }]
|
|
155
|
+
}], columnsSchema: [{
|
|
156
|
+
type: Input,
|
|
157
|
+
args: [{ required: true }]
|
|
158
|
+
}], tableData: [{
|
|
159
|
+
type: Input,
|
|
160
|
+
args: [{ required: true }]
|
|
161
|
+
}], responsive: [{
|
|
162
|
+
type: Input,
|
|
163
|
+
args: [{ required: false }]
|
|
164
|
+
}], loading: [{
|
|
165
|
+
type: Input,
|
|
166
|
+
args: [{ required: true }]
|
|
167
|
+
}], styleFilter: [{
|
|
168
|
+
type: Input,
|
|
169
|
+
args: [{ required: false }]
|
|
170
|
+
}], rowSelector: [{
|
|
171
|
+
type: Input,
|
|
172
|
+
args: [{ required: false }]
|
|
173
|
+
}], onColumnClicked: [{
|
|
174
|
+
type: Output
|
|
175
|
+
}] } });
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbGliL3NyYy9saWIvY29yZS10YWJsZS9jb3JlLXRhYmxlL2NvcmUtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS9jb3JlLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBTWpDLE1BQU0sT0FBTyxrQkFBa0I7SUFlN0IsSUFBSSxZQUFZO1FBQ2QsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUNELElBQUksc0JBQXNCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUNELFlBQW9CLFNBQThCO1FBQTlCLGNBQVMsR0FBVCxTQUFTLENBQXFCO1FBbEJ2QixjQUFTLEdBQ2xDLElBQUksZUFBZSxDQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ0wsZUFBVSxHQUFZLElBQUksQ0FBQztRQUczQixnQkFBVyxHQUNyQyxTQUFTLENBQUM7UUFDRixvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2xFLG9CQUFlLEdBQVUsRUFBRSxDQUFDO0lBUXlCLENBQUM7SUFFdEQs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LEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRyxXQUFXO3NCQUF0QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFDRSxXQUFXO3NCQUF0QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFFaEIsZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ09MVU1OU19UWVBFUyB9IGZyb20gJ3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL3V0aWxzL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgVXRpbCB9IGZyb20gJ3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL3V0aWxzL3V0aWwnO1xyXG5pbXBvcnQgeyBOZ3hJbmRleGVkREJTZXJ2aWNlIH0gZnJvbSAnbmd4LWluZGV4ZWQtZGInO1xyXG5pbXBvcnQgeyBvcmRlckJ5IH0gZnJvbSAnbG9kYXNoJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS10YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS10YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZVRhYmxlQ29tcG9uZW50IHtcclxuICBASW5wdXQoeyByZXF1aXJlZDogZmFsc2UgfSkga2V5OiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29sdW1uc1NjaGVtYTogYW55O1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHRhYmxlRGF0YTogQmVoYXZpb3JTdWJqZWN0PGFueVtdPiA9XHJcbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueVtdPihbXSk7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IGZhbHNlIH0pIHJlc3BvbnNpdmU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGxvYWRpbmc6IGFueTtcclxuICBASW5wdXQoeyByZXF1aXJlZDogZmFsc2UgfSkgc3R5bGVGaWx0ZXI6ICgoZGF0YTogYW55KSA9PiBzdHJpbmcpIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiBmYWxzZSB9KSByb3dTZWxlY3RvcjogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCB1bmRlZmluZWQgPVxyXG4gICAgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBvbkNvbHVtbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBzb3J0RGV0YWlsOiB7IGtleTogc3RyaW5nOyBzb3J0OiAnYXNjJyB8ICdkZXNjJyB9IHwgdW5kZWZpbmVkO1xyXG4gIHNvcnRlZFRhYmxlRGF0YTogYW55W10gPSBbXTtcclxuICBkYlRhYmxlRmlsdGVyOiBhbnk7XHJcbiAgZ2V0IGNvbHVtbnNUeXBlcygpIHtcclxuICAgIHJldHVybiBDT0xVTU5TX1RZUEVTO1xyXG4gIH1cclxuICBnZXQgaXNSdW5uaW5nT25TbWFsbFNjcmVlbigpIHtcclxuICAgIHJldHVybiBVdGlsLmlzUnVubmluZ09uU21hbGxTY3JlZW4oKTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkYlNlcnZpY2U6IE5neEluZGV4ZWREQlNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50YWJsZURhdGEuc3Vic2NyaWJlKCh2YWw6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnNvcnRlZFRhYmxlRGF0YSA9IHZhbDtcclxuICAgIH0pO1xyXG4gICAgaWYgKHRoaXMua2V5KSB7XHJcbiAgICAgIHRoaXMuZGJTZXJ2aWNlXHJcbiAgICAgICAgLmdldEJ5SW5kZXgoJ3RhYmxlRmlsdGVyJywgJ2tleScsIHRoaXMua2V5KVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5kYlRhYmxlRmlsdGVyID0gZGF0YTtcclxuICAgICAgICAgIGlmICh0aGlzLmRiVGFibGVGaWx0ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5zZXRUYWJsZUZpbHRlcigpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZXRUYWJsZUZpbHRlcigpIHtcclxuICAgIHRoaXMuY29sdW1uc1NjaGVtYS5tYXAoKGNvbHVtbjogYW55KSA9PiB7XHJcbiAgICAgIEpTT04ucGFyc2UodGhpcy5kYlRhYmxlRmlsdGVyLmNvbHVtbnNTY2hlbWEpLmZvckVhY2goXHJcbiAgICAgICAgKGRiQ29sdW1uc1NjaGVtYTogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGJDb2x1bW5zU2NoZW1hLmtleSA9PT0gY29sdW1uLmtleSkge1xyXG4gICAgICAgICAgICBjb2x1bW4uYWN0aXZlID0gZGJDb2x1bW5zU2NoZW1hLmFjdGl2ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBjb2x1bW47XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbHVtbkNsaWNrZWQodmFsOiBhbnkpIHtcclxuICAgIHRoaXMub25Db2x1bW5DbGlja2VkLmVtaXQodmFsKTtcclxuICB9XHJcbiAgc29ydEJ5SGVhZGVyKGNvbHVtbjogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zb3J0RGV0YWlsICYmIHRoaXMuc29ydERldGFpbC5rZXkgPT0gY29sdW1uLmtleSkge1xyXG4gICAgICBpZiAodGhpcy5zb3J0RGV0YWlsLnNvcnQgPT0gJ2Rlc2MnKSB7XHJcbiAgICAgICAgdGhpcy5zb3J0RGV0YWlsID0geyBrZXk6IGNvbHVtbi5rZXksIHNvcnQ6ICdhc2MnIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zb3J0RGV0YWlsID0geyBrZXk6IGNvbHVtbi5rZXksIHNvcnQ6ICdkZXNjJyB9O1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNvcnREZXRhaWwgPSB7IGtleTogY29sdW1uLmtleSwgc29ydDogJ2FzYycgfTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgY29sdW1uLnR5cGUgPT0gQ09MVU1OU19UWVBFUy5URVhUIHx8XHJcbiAgICAgIGNvbHVtbi50eXBlID09IENPTFVNTlNfVFlQRVMuTlVNQkVSXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zb3J0ZWRUYWJsZURhdGEgPSBvcmRlckJ5KFxyXG4gICAgICAgIHRoaXMuc29ydGVkVGFibGVEYXRhLFxyXG4gICAgICAgIFtjb2x1bW4ua2V5XSxcclxuICAgICAgICBbdGhpcy5zb3J0RGV0YWlsLnNvcnRdXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKGNvbHVtbi50eXBlID09IENPTFVNTlNfVFlQRVMuU0VMRUNUT1IpIHtcclxuICAgICAgdGhpcy5zb3J0ZWRUYWJsZURhdGEgPSBvcmRlckJ5KFxyXG4gICAgICAgIHRoaXMuc29ydGVkVGFibGVEYXRhLFxyXG4gICAgICAgIFsoYykgPT4gY1tjb2x1bW4ua2V5XVtjb2x1bW4uZGF0YS5rZXldXSxcclxuICAgICAgICBbdGhpcy5zb3J0RGV0YWlsLnNvcnRdXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKGNvbHVtbi50eXBlID09IENPTFVNTlNfVFlQRVMuU0hBTVNJX0RBVEUpIHtcclxuICAgICAgdGhpcy5zb3J0ZWRUYWJsZURhdGEgPSBvcmRlckJ5KFxyXG4gICAgICAgIHRoaXMuc29ydGVkVGFibGVEYXRhLFxyXG4gICAgICAgIFsoYykgPT4gbmV3IERhdGUoY1tjb2x1bW4ua2V5XSkuZ2V0VGltZSgpXSxcclxuICAgICAgICBbdGhpcy5zb3J0RGV0YWlsLnNvcnRdXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhY3RpdmVDb2x1bW5zU2NoZW1hKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLmNvbHVtbnNTY2hlbWEuZmlsdGVyKFxyXG4gICAgICAoY29sdW1uOiBhbnkpID0+IGNvbHVtbi5hY3RpdmUgPT09IHVuZGVmaW5lZCB8fCBjb2x1bW4uYWN0aXZlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgdGFibGVEYXRhRmlsdGVyZWQodGV4dDogU3RyaW5nIHwgYm9vbGVhbiwgY29sdW1uOiBhbnkpIHtcclxuICAgIHRoaXMuY29sdW1uc1NjaGVtYS5tYXAoKGNvbHVtblNjaGVtYTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChjb2x1bW5TY2hlbWEua2V5ID09PSBjb2x1bW4ua2V5KSB7XHJcbiAgICAgICAgY29sdW1uU2NoZW1hLmNvbHVtbkZpbHRlciA9IHRleHQ7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGNvbHVtblNjaGVtYTtcclxuICAgIH0pO1xyXG4gICAgY29uc3QgdGFibGVEYXRhID0gdGhpcy50YWJsZURhdGEuZ2V0VmFsdWUoKTtcclxuICAgIHRoaXMuc29ydGVkVGFibGVEYXRhID0gdGFibGVEYXRhLmZpbHRlcigoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIGxldCByZXN1bHQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNvbHVtbnNTY2hlbWEuZm9yRWFjaCgoY29sdW1uU2NoZW1hOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBjb2x1bW5TY2hlbWEudHlwZSA9PT0gdGhpcy5jb2x1bW5zVHlwZXMuUk9XX1NFTEVDVE9SIHx8XHJcbiAgICAgICAgICBjb2x1bW5TY2hlbWEudHlwZSA9PT0gdGhpcy5jb2x1bW5zVHlwZXMuQUNUSU9OIHx8XHJcbiAgICAgICAgICBjb2x1bW5TY2hlbWEudHlwZSA9PT0gdGhpcy5jb2x1bW5zVHlwZXMuQUNUSU9OX0JVVFRPTlMgfHxcclxuICAgICAgICAgIGNvbHVtblNjaGVtYS5jb2x1bW5GaWx0ZXIgPT09IHVuZGVmaW5lZCB8fFxyXG4gICAgICAgICAgIXJlc3VsdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoY29sdW1uU2NoZW1hLnR5cGUgPT09IHRoaXMuY29sdW1uc1R5cGVzLlNFTEVDVE9SKSB7XHJcbiAgICAgICAgICByZXN1bHQgPSBkYXRhW2NvbHVtblNjaGVtYS5rZXldW2NvbHVtblNjaGVtYS5kYXRhLmtleV1cclxuICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcclxuICAgICAgICAgICAgLmluY2x1ZGVzKGNvbHVtblNjaGVtYS5jb2x1bW5GaWx0ZXIudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGNvbHVtblNjaGVtYS50eXBlID09PSB0aGlzLmNvbHVtbnNUeXBlcy5TSEFNU0lfREFURSkge1xyXG4gICAgICAgICAgaWYgKGNvbHVtblNjaGVtYS5jb2x1bW5GaWx0ZXIgPT09ICcnKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IHRydWU7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXN1bHQgPSBkYXRhW2NvbHVtblNjaGVtYS5rZXldXHJcbiAgICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcclxuICAgICAgICAgICAgICAuaW5jbHVkZXMoXHJcbiAgICAgICAgICAgICAgICBVdGlsLnNoYW1zaVRvTWlsYWRpKFxyXG4gICAgICAgICAgICAgICAgICBjb2x1bW5TY2hlbWEuY29sdW1uRmlsdGVyLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgICAgICAgICdZWVlZLU1NLUREJ1xyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChjb2x1bW5TY2hlbWEudHlwZSA9PT0gdGhpcy5jb2x1bW5zVHlwZXMuTVVMVElfQ09MVU1OKSB7XHJcbiAgICAgICAgICByZXN1bHQgPSBjb2x1bW5TY2hlbWEuY29sdW1ucy5zb21lKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGRhdGFbaXRlbS5rZXldW2l0ZW0uZGF0YS5rZXldXHJcbiAgICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcclxuICAgICAgICAgICAgICAuaW5jbHVkZXMoY29sdW1uU2NoZW1hLmNvbHVtbkZpbHRlcj8udG9TdHJpbmcoKT8udG9Mb3dlckNhc2UoKSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2UgaWYgKGNvbHVtblNjaGVtYS50eXBlID09PSB0aGlzLmNvbHVtbnNUeXBlcy5TVEFUVVMpIHtcclxuICAgICAgICAgIGlmIChjb2x1bW5TY2hlbWEuY29sdW1uRmlsdGVyID09PSAnJykge1xyXG4gICAgICAgICAgICByZXN1bHQgPSB0cnVlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzdWx0ID0gZGF0YVtjb2x1bW5TY2hlbWEua2V5XSA9PT0gY29sdW1uU2NoZW1hLmNvbHVtbkZpbHRlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzdWx0ID0gZGF0YVtjb2x1bW5TY2hlbWEua2V5XVxyXG4gICAgICAgICAgICAudG9TdHJpbmcoKVxyXG4gICAgICAgICAgICAudG9Mb3dlckNhc2UoKVxyXG4gICAgICAgICAgICAuaW5jbHVkZXMoY29sdW1uU2NoZW1hLmNvbHVtbkZpbHRlcj8udG9TdHJpbmcoKT8udG9Mb3dlckNhc2UoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicC0yIG92ZXJmbG93LXgtYXV0b1wiPlxyXG4gIDx0YWJsZSAqbmdJZj1cIiFpc1J1bm5pbmdPblNtYWxsU2NyZWVuIHx8ICFyZXNwb25zaXZlOyBlbHNlIHNtYWxsRGV2aWNlQ2FyZFwiPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGhcclxuICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyIHRleHQtY2VudGVyXCJcclxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGFjdGl2ZUNvbHVtbnNTY2hlbWEoKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLXJvd3MtMlwiPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgY2xhc3M9XCJwLTIgcmVsYXRpdmVcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic29ydEJ5SGVhZGVyKGNvbHVtbilcIlxyXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgbWluV2lkdGg6XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4udHlwZSA9PT0gY29sdW1uc1R5cGVzLkFDVElPTl9CVVRUT05TXHJcbiAgICAgICAgICAgICAgICAgID8gY29sdW1uLmRhdGEubGVuZ3RoICogMzAgKyAncHgnXHJcbiAgICAgICAgICAgICAgICAgIDogJycsXHJcbiAgICAgICAgICAgICAgZGlzcGxheTpcclxuICAgICAgICAgICAgICAgIGNvbHVtbi50eXBlID09PSBjb2x1bW5zVHlwZXMuQUNUSU9OX0JVVFRPTlNcclxuICAgICAgICAgICAgICAgICAgPyAnaW5saW5lLWJsb2NrJ1xyXG4gICAgICAgICAgICAgICAgICA6ICcnXHJcbiAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+e3sgY29sdW1uLmxhYmVsIH19XHJcbiAgICAgICAgICAgIDxhcHAtc29ydC1kb3duLWljb25cclxuICAgICAgICAgICAgICBjbGFzcz1cInNvcnQtaWNvbiB3LTIgaC0yIGlubGluZS1ibG9jayBhYnNvbHV0ZSB0b3AtMyByaWdodC1bLTNweF1cIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgICBzb3J0RGV0YWlsPy5rZXkgPT0gY29sdW1uLmtleSAmJiBzb3J0RGV0YWlsPy5zb3J0ID09PSAnYXNjJ1xyXG4gICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgID48L2FwcC1zb3J0LWRvd24taWNvbj5cclxuICAgICAgICAgICAgPGFwcC1zb3J0LXVwLWljb25cclxuICAgICAgICAgICAgICBjbGFzcz1cInNvcnQtaWNvbiB3LTIgaC0yIGlubGluZS1ibG9jayBhYnNvbHV0ZSB0b3AtMyByaWdodC1bLTNweF1cIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgICBzb3J0RGV0YWlsPy5rZXkgPT0gY29sdW1uLmtleSAmJiBzb3J0RGV0YWlsPy5zb3J0ID09PSAnZGVzYydcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICA+PC9hcHAtc29ydC11cC1pY29uPlxyXG4gICAgICAgICAgICA8YXBwLXNvcnQtc29saWQtaWNvblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic29ydC1pY29uIHctMiBoLTIgaW5saW5lLWJsb2NrIGFic29sdXRlIHRvcC0zIHJpZ2h0LVstM3B4XVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzb3J0RGV0YWlsPy5rZXkgIT09IGNvbHVtbi5rZXlcIlxyXG4gICAgICAgICAgICA+PC9hcHAtc29ydC1zb2xpZC1pY29uPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgPGNvcmUtY29sdW1uLWRhdGUtcGlja2VyXHJcbiAgICAgICAgICAgICpuZ0lmPVwiY29sdW1uLnR5cGUgPT0gY29sdW1uc1R5cGVzLlNIQU1TSV9EQVRFXCJcclxuICAgICAgICAgICAgW2NhblNlbGVjdFRvZGF5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAob25DaGFuZ2UpPVwidGFibGVEYXRhRmlsdGVyZWQoJGV2ZW50LCBjb2x1bW4pXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvY29yZS1jb2x1bW4tZGF0ZS1waWNrZXI+XHJcbiAgICAgICAgICA8Y29yZS1jb2x1bW4taW5wdXRcclxuICAgICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgICBjb2x1bW4udHlwZSAhPT0gY29sdW1uc1R5cGVzLkFDVElPTiAmJlxyXG4gICAgICAgICAgICAgIGNvbHVtbi50eXBlICE9PSBjb2x1bW5zVHlwZXMuU1RBVFVTICYmXHJcbiAgICAgICAgICAgICAgY29sdW1uLnR5cGUgIT09IGNvbHVtbnNUeXBlcy5TSEFNU0lfREFURVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAob25DaGFuZ2UpPVwidGFibGVEYXRhRmlsdGVyZWQoJGV2ZW50LCBjb2x1bW4pXCJcclxuICAgICAgICAgID48L2NvcmUtY29sdW1uLWlucHV0PlxyXG4gICAgICAgICAgPGNvcmUtY29sdW1uLXNlbGVjdG9yXHJcbiAgICAgICAgICAgICpuZ0lmPVwiY29sdW1uLnR5cGUgPT0gY29sdW1uc1R5cGVzLlNUQVRVU1wiXHJcbiAgICAgICAgICAgIFt0aXRsZUtleV09XCIndGl0bGUnXCJcclxuICAgICAgICAgICAgW3ZhbHVlS2V5XT1cIid2YWx1ZSdcIlxyXG4gICAgICAgICAgICAob25JdGVtU2VsZWN0ZWQpPVwidGFibGVEYXRhRmlsdGVyZWQoJGV2ZW50LCBjb2x1bW4pXCJcclxuICAgICAgICAgID48L2NvcmUtY29sdW1uLXNlbGVjdG9yPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3RoPlxyXG4gICAgPC90cj5cclxuICAgIDx0ciAqbmdGb3I9XCJsZXQgZGF0YSBvZiBzb3J0ZWRUYWJsZURhdGFcIj5cclxuICAgICAgPHRkXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBhY3RpdmVDb2x1bW5zU2NoZW1hKClcIlxyXG4gICAgICAgIFtjbGFzc109XCJzdHlsZUZpbHRlciA/IHN0eWxlRmlsdGVyKGRhdGEpIDogJydcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGFwcC1jb3JlLXRhYmxlLWNvbHVtbi1tYW5hZ2VyXHJcbiAgICAgICAgICAqbmdJZj1cImNvbHVtbi50eXBlICE9IGNvbHVtbnNUeXBlcy5NVUxUSV9DT0xVTU47IGVsc2UgZWxzZUJsb2NrXCJcclxuICAgICAgICAgIFtyb3dTZWxlY3Rvcl09XCJyb3dTZWxlY3RvclwiXHJcbiAgICAgICAgICAob25Db2x1bW5DbGlja2VkKT1cImNvbHVtbkNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICA+PC9hcHAtY29yZS10YWJsZS1jb2x1bW4tbWFuYWdlcj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cclxuICAgICAgICAgIDxhcHAtY29yZS10YWJsZS1jb2x1bW4tbWFuYWdlclxyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgY2hpbGRDb2x1bW4gb2YgY29sdW1uLmNvbHVtbnM7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICBbcm93U2VsZWN0b3JdPVwicm93U2VsZWN0b3JcIlxyXG4gICAgICAgICAgICAob25Db2x1bW5DbGlja2VkKT1cImNvbHVtbkNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICBbY29sdW1uXT1cImNoaWxkQ29sdW1uXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpID4gMFwiPi08L3NwYW4+XHJcbiAgICAgICAgICA8L2FwcC1jb3JlLXRhYmxlLWNvbHVtbi1tYW5hZ2VyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvdGFibGU+XHJcbiAgPG5nLXRlbXBsYXRlICNzbWFsbERldmljZUNhcmQ+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8Y29yZS1jYXJkXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGRhdGEgb2Ygc29ydGVkVGFibGVEYXRhXCJcclxuICAgICAgICBbY2FyZENsYXNzXT1cIidiYWNrZ3JvdW5kLWNhcmQgbS00IHAtNCByZWxhdGl2ZSdcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJsZWFkaW5nLThcIlxyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBhY3RpdmVDb2x1bW5zU2NoZW1hKClcIlxyXG4gICAgICAgICAgW2NsYXNzXT1cIlxyXG4gICAgICAgICAgICBjb2x1bW4udHlwZSA9PT0gY29sdW1uc1R5cGVzLkFDVElPTl9CVVRUT05TXHJcbiAgICAgICAgICAgICAgPyAnYWN0aW9uQnV0dG9ucydcclxuICAgICAgICAgICAgICA6IGNvbHVtbi50eXBlID09PSBjb2x1bW5zVHlwZXMuUk9XX1NFTEVDVE9SXHJcbiAgICAgICAgICAgICAgPyAnc2VsZWN0Um93J1xyXG4gICAgICAgICAgICAgIDogJydcclxuICAgICAgICAgIFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgICBjb2x1bW4udHlwZSAhPT0gY29sdW1uc1R5cGVzLkFDVElPTl9CVVRUT05TICYmXHJcbiAgICAgICAgICAgICAgY29sdW1uLnR5cGUgIT09IGNvbHVtbnNUeXBlcy5ST1dfU0VMRUNUT1JcclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJzZWNvbmRhcnktdGV4dC1jb2xvclwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGNvbHVtbi5sYWJlbCB9fSA6XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInByaW1hcnktdGV4dC1jb2xvciBmb250LXNlbWlib2xkXCI+XHJcbiAgICAgICAgICAgIDxhcHAtY29yZS10YWJsZS1jYXJkLW1hbmFnZXJcclxuICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgY29sdW1uLnR5cGUgIT0gY29sdW1uc1R5cGVzLk1VTFRJX0NPTFVNTjtcclxuICAgICAgICAgICAgICAgIGVsc2UgY2FyZE1hbmFnZXJFbHNlQmxvY2tcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgIFtyb3dTZWxlY3Rvcl09XCJyb3dTZWxlY3RvclwiXHJcbiAgICAgICAgICAgICAgKG9uQ29sdW1uQ2xpY2tlZCk9XCJjb2x1bW5DbGlja2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L2FwcC1jb3JlLXRhYmxlLWNhcmQtbWFuYWdlcj5cclxuXHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2FyZE1hbmFnZXJFbHNlQmxvY2s+XHJcbiAgICAgICAgICAgICAgPGFwcC1jb3JlLXRhYmxlLWNhcmQtbWFuYWdlclxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkQ29sdW1uIG9mIGNvbHVtbi5jb2x1bW5zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgIFtyb3dTZWxlY3Rvcl09XCJyb3dTZWxlY3RvclwiXHJcbiAgICAgICAgICAgICAgICAob25Db2x1bW5DbGlja2VkKT1cImNvbHVtbkNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgICAgICAgICAgICAgIFtjb2x1bW5dPVwiY2hpbGRDb2x1bW5cIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaSA+IDBcIj4tPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvYXBwLWNvcmUtdGFibGUtY2FyZC1tYW5hZ2VyPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2NvcmUtY2FyZD5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPGNvcmUtdGFibGUtbm8tY29udGVudFxyXG4gICAgKm5nSWY9XCIhbG9hZGluZ1wiXHJcbiAgICBbdGFibGVEYXRhXT1cInNvcnRlZFRhYmxlRGF0YVwiXHJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICA+PC9jb3JlLXRhYmxlLW5vLWNvbnRlbnQ+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class CoreTableActionButtonsColumnComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.onClick = new EventEmitter();
|
|
7
|
+
}
|
|
8
|
+
clicked(key) {
|
|
9
|
+
this.onClick.emit({ data: this.data, key: key });
|
|
10
|
+
}
|
|
11
|
+
checkFilter(column) {
|
|
12
|
+
if (column.filter) {
|
|
13
|
+
return column.filter(this.data);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableActionButtonsColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableActionButtonsColumnComponent, selector: "app-core-table-action-buttons-column", inputs: { data: "data", column: "column" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<span *ngFor=\"let data of column.data\">\r\n <span\r\n *ngIf=\"checkFilter(data)\"\r\n class=\"icon-color cursor-pointer h-5 inline-block icon-color m-1\"\r\n (click)=\"clicked(data.key)\"\r\n >\r\n <ng-container *ngComponentOutlet=\"data.component\" />\r\n </span>\r\n</span>\r\n", styles: [".icon-color{fill:var(--default-table-column-action-buttons-fill-icon-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableActionButtonsColumnComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{ selector: 'app-core-table-action-buttons-column', template: "<span *ngFor=\"let data of column.data\">\r\n <span\r\n *ngIf=\"checkFilter(data)\"\r\n class=\"icon-color cursor-pointer h-5 inline-block icon-color m-1\"\r\n (click)=\"clicked(data.key)\"\r\n >\r\n <ng-container *ngComponentOutlet=\"data.component\" />\r\n </span>\r\n</span>\r\n", styles: [".icon-color{fill:var(--default-table-column-action-buttons-fill-icon-color)}\n"] }]
|
|
25
|
+
}], propDecorators: { data: [{
|
|
26
|
+
type: Input,
|
|
27
|
+
args: [{ required: true }]
|
|
28
|
+
}], column: [{
|
|
29
|
+
type: Input,
|
|
30
|
+
args: [{ required: true }]
|
|
31
|
+
}], onClick: [{
|
|
32
|
+
type: Output
|
|
33
|
+
}] } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4vY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4vY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZFLE1BQU0sT0FBTyxxQ0FBcUM7SUFMbEQ7UUFRWSxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7S0FhM0Q7SUFYQyxPQUFPLENBQUMsR0FBVztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxXQUFXLENBQUMsTUFBVztRQUNyQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDakIsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7K0dBZlUscUNBQXFDO21HQUFyQyxxQ0FBcUMseUpDUGxELDBTQVNBOzs0RkRGYSxxQ0FBcUM7a0JBTGpELFNBQVM7K0JBQ0Usc0NBQXNDOzhCQUtyQixJQUFJO3NCQUE5QixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxNQUFNO3NCQUFoQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDZixPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWNvcmUtdGFibGUtYWN0aW9uLWJ1dHRvbnMtY29sdW1uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtdGFibGUtYWN0aW9uLWJ1dHRvbnMtY29sdW1uLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlVGFibGVBY3Rpb25CdXR0b25zQ29sdW1uQ29tcG9uZW50IHtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBkYXRhITogYW55O1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbHVtbiE6IGFueTtcclxuICBAT3V0cHV0KCkgb25DbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNsaWNrZWQoa2V5OiBzdHJpbmcpIHtcclxuICAgIHRoaXMub25DbGljay5lbWl0KHsgZGF0YTogdGhpcy5kYXRhLCBrZXk6IGtleSB9KTtcclxuICB9XHJcblxyXG4gIGNoZWNrRmlsdGVyKGNvbHVtbjogYW55KSB7XHJcbiAgICBpZiAoY29sdW1uLmZpbHRlcikge1xyXG4gICAgICByZXR1cm4gY29sdW1uLmZpbHRlcih0aGlzLmRhdGEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxzcGFuICpuZ0Zvcj1cImxldCBkYXRhIG9mIGNvbHVtbi5kYXRhXCI+XHJcbiAgPHNwYW5cclxuICAgICpuZ0lmPVwiY2hlY2tGaWx0ZXIoZGF0YSlcIlxyXG4gICAgY2xhc3M9XCJpY29uLWNvbG9yIGN1cnNvci1wb2ludGVyIGgtNSBpbmxpbmUtYmxvY2sgaWNvbi1jb2xvciBtLTFcIlxyXG4gICAgKGNsaWNrKT1cImNsaWNrZWQoZGF0YS5rZXkpXCJcclxuICA+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImRhdGEuY29tcG9uZW50XCIgLz5cclxuICA8L3NwYW4+XHJcbjwvc3Bhbj5cclxuIl19
|
package/esm2022/lib/core-table/core-table-action-column/core-table-action-column.component.mjs
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "nira-modal";
|
|
4
|
+
import * as i2 from "../../../svg-icon/edit-square-icon/edit-square-icon.component";
|
|
5
|
+
export class CoreTableActionColumnComponent {
|
|
6
|
+
constructor(niraModalService) {
|
|
7
|
+
this.niraModalService = niraModalService;
|
|
8
|
+
}
|
|
9
|
+
openDialog() {
|
|
10
|
+
this.niraModalService.open(this.column.data.component, {
|
|
11
|
+
data: this.data[this.column.data.key],
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableActionColumnComponent, deps: [{ token: i1.NiraModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableActionColumnComponent, selector: "app-core-table-action-column", inputs: { data: "data", column: "column" }, ngImport: i0, template: "<span class=\"icon-color h-5 inline-block\">\r\n <edit-square-icon\r\n class=\"cursor-pointer\"\r\n (click)=\"openDialog()\"\r\n ></edit-square-icon>\r\n</span>\r\n", styles: [".icon-color{fill:var(--default-table-action-column-fill-icon-color)}\n"], dependencies: [{ kind: "component", type: i2.EditSquareIconComponent, selector: "edit-square-icon" }] }); }
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableActionColumnComponent, decorators: [{
|
|
18
|
+
type: Component,
|
|
19
|
+
args: [{ selector: 'app-core-table-action-column', template: "<span class=\"icon-color h-5 inline-block\">\r\n <edit-square-icon\r\n class=\"cursor-pointer\"\r\n (click)=\"openDialog()\"\r\n ></edit-square-icon>\r\n</span>\r\n", styles: [".icon-color{fill:var(--default-table-action-column-fill-icon-color)}\n"] }]
|
|
20
|
+
}], ctorParameters: function () { return [{ type: i1.NiraModalService }]; }, propDecorators: { data: [{
|
|
21
|
+
type: Input,
|
|
22
|
+
args: [{ required: true }]
|
|
23
|
+
}], column: [{
|
|
24
|
+
type: Input,
|
|
25
|
+
args: [{ required: true }]
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS1hY3Rpb24tY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLXRhYmxlL2NvcmUtdGFibGUtYWN0aW9uLWNvbHVtbi9jb3JlLXRhYmxlLWFjdGlvbi1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1hY3Rpb24tY29sdW1uL2NvcmUtdGFibGUtYWN0aW9uLWNvbHVtbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVFqRCxNQUFNLE9BQU8sOEJBQThCO0lBR3pDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQztJQUUxRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDckQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3RDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBVFUsOEJBQThCO21HQUE5Qiw4QkFBOEIsZ0hDUjNDLDhLQU1BOzs0RkRFYSw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UsOEJBQThCO3VHQUtiLElBQUk7c0JBQTlCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmlyYU1vZGFsU2VydmljZSB9IGZyb20gJ25pcmEtbW9kYWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29yZS10YWJsZS1hY3Rpb24tY29sdW1uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtdGFibGUtYWN0aW9uLWNvbHVtbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvcmUtdGFibGUtYWN0aW9uLWNvbHVtbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDb3JlVGFibGVBY3Rpb25Db2x1bW5Db21wb25lbnQge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBkYXRhITogYW55O1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBjb2x1bW4hOiBhbnk7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmlyYU1vZGFsU2VydmljZTogTmlyYU1vZGFsU2VydmljZSkge31cblxuICBvcGVuRGlhbG9nKCkge1xuICAgIHRoaXMubmlyYU1vZGFsU2VydmljZS5vcGVuKHRoaXMuY29sdW1uLmRhdGEuY29tcG9uZW50LCB7XG4gICAgICBkYXRhOiB0aGlzLmRhdGFbdGhpcy5jb2x1bW4uZGF0YS5rZXldLFxuICAgIH0pO1xuICB9XG59XG4iLCI8c3BhbiBjbGFzcz1cImljb24tY29sb3IgaC01IGlubGluZS1ibG9ja1wiPlxyXG4gIDxlZGl0LXNxdWFyZS1pY29uXHJcbiAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcclxuICAgIChjbGljayk9XCJvcGVuRGlhbG9nKClcIlxyXG4gID48L2VkaXQtc3F1YXJlLWljb24+XHJcbjwvc3Bhbj5cclxuIl19
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { COLUMNS_TYPES } from 'projects/falcon-lib/src/utils/constants';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "nira-snack-bar";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "../core-table-action-buttons-column/core-table-action-buttons-column.component";
|
|
7
|
+
import * as i4 from "../core-table-action-column/core-table-action-column.component";
|
|
8
|
+
import * as i5 from "../core-table-row-selector-column/core-table-row-selector-column.component";
|
|
9
|
+
import * as i6 from "../core-table-shamsi-date/core-table-shamsi-date.component";
|
|
10
|
+
import * as i7 from "../core-table-status-column/core-table-status-column.component";
|
|
11
|
+
import * as i8 from "../../core-number/core-number.component";
|
|
12
|
+
import * as i9 from "../../../utils/directives/table-detail-viewer-manager.directive";
|
|
13
|
+
import * as i10 from "../core-table-status-active-column/core-table-status-active-column.component";
|
|
14
|
+
import * as i11 from "../core-row-pelak/core-row-pelak.component";
|
|
15
|
+
import * as i12 from "../../pipes/persian-digits.pipe";
|
|
16
|
+
export class CoreTableCardManagerComponent {
|
|
17
|
+
get columnsTypes() {
|
|
18
|
+
return COLUMNS_TYPES;
|
|
19
|
+
}
|
|
20
|
+
constructor(niraSnackBar) {
|
|
21
|
+
this.niraSnackBar = niraSnackBar;
|
|
22
|
+
this.rowSelector = undefined;
|
|
23
|
+
this.onColumnClicked = new EventEmitter();
|
|
24
|
+
}
|
|
25
|
+
getSelectorData(data, key) {
|
|
26
|
+
if (key) {
|
|
27
|
+
const split = key.split('.');
|
|
28
|
+
if (split.length === 1) {
|
|
29
|
+
return data[key];
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
let newData = data;
|
|
33
|
+
split.forEach((newKay) => {
|
|
34
|
+
newData = newData[newKay];
|
|
35
|
+
});
|
|
36
|
+
return newData;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
onTextColumnClicked(column, data) {
|
|
41
|
+
if (!column.coptToClipboard)
|
|
42
|
+
return;
|
|
43
|
+
navigator.clipboard
|
|
44
|
+
.writeText(data)
|
|
45
|
+
.then((e) => {
|
|
46
|
+
this.niraSnackBar.show('با موفقیت کپی شد', {
|
|
47
|
+
statusClass: 'success',
|
|
48
|
+
duration: 3000,
|
|
49
|
+
});
|
|
50
|
+
})
|
|
51
|
+
.catch((e) => console.error(e));
|
|
52
|
+
}
|
|
53
|
+
clicked(val) {
|
|
54
|
+
this.onColumnClicked.emit(val);
|
|
55
|
+
}
|
|
56
|
+
combinedData(detailViewer, data) {
|
|
57
|
+
return {
|
|
58
|
+
detailViewer: detailViewer,
|
|
59
|
+
data: data,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableCardManagerComponent, deps: [{ token: i1.NiraSnackBarService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableCardManagerComponent, selector: "app-core-table-card-manager", inputs: { data: "data", column: "column", rowSelector: "rowSelector" }, outputs: { onColumnClicked: "onColumnClicked" }, ngImport: i0, template: "<container-element [ngSwitch]=\"column.type\">\r\n <ng-content></ng-content>\r\n\r\n <app-core-table-row-selector-column\r\n *ngSwitchCase=\"columnsTypes.ROW_SELECTOR\"\r\n [rowSelector]=\"rowSelector\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-row-selector-column>\r\n <app-core-table-status-active-column\r\n *ngSwitchCase=\"columnsTypes.STATUS_ACTIVE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-active-column>\r\n <app-core-table-status-column\r\n *ngSwitchCase=\"columnsTypes.STATUS\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-column>\r\n <app-core-table-action-column\r\n *ngSwitchCase=\"columnsTypes.ACTION\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-column>\r\n <app-core-table-action-buttons-column\r\n *ngSwitchCase=\"columnsTypes.ACTION_BUTTONS\"\r\n (onClick)=\"clicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-buttons-column>\r\n <app-core-table-shamsi-date\r\n *ngSwitchCase=\"columnsTypes.SHAMSI_DATE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-shamsi-date>\r\n <app-core-row-pelak\r\n class=\"inline-block\"\r\n *ngSwitchCase=\"columnsTypes.PELAK\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-row-pelak>\r\n <span\r\n *ngSwitchCase=\"columnsTypes.TEXT\"\r\n [ngClass]=\"{ 'cursor-pointer': column.coptToClipboard }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n >{{ data[column.key] | persianDigits }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"columnsTypes.NUMBER\"\r\n [ngClass]=\"{\r\n 'cursor-pointer': column.copyToClipboard,\r\n green: data[column.key] > 0 && column.canColorfulNumber,\r\n red: data[column.key] < 0 && column.canColorfulNumber\r\n }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n dir=\"ltr\"\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n ><app-core-number\r\n [number]=\"data[column.key]\"\r\n [type]=\"'number'\"\r\n [canSplitNumbers]=\"true\"\r\n [canShowWordInToolTip]=\"true\"\r\n >\r\n </app-core-number>\r\n </span>\r\n <span *ngSwitchCase=\"columnsTypes.SELECTOR\">\r\n <span\r\n *ngIf=\"data[column.key.split('.')[0]]\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(\r\n column.detailViewer,\r\n getSelectorData(\r\n data[column.key.split('.')[0]],\r\n column.detailViewer?.key\r\n )\r\n )\r\n \"\r\n >{{\r\n getSelectorData(data[column.key.split(\".\")[0]], column.data.key)\r\n | persianDigits\r\n }}</span\r\n >\r\n </span>\r\n</container-element>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.CoreTableActionButtonsColumnComponent, selector: "app-core-table-action-buttons-column", inputs: ["data", "column"], outputs: ["onClick"] }, { kind: "component", type: i4.CoreTableActionColumnComponent, selector: "app-core-table-action-column", inputs: ["data", "column"] }, { kind: "component", type: i5.CoreTableRowSelectorColumnComponent, selector: "app-core-table-row-selector-column", inputs: ["data", "column", "rowSelector"] }, { kind: "component", type: i6.CoreTableShamsiDateComponent, selector: "app-core-table-shamsi-date", inputs: ["data", "column"], outputs: ["onClick"] }, { kind: "component", type: i7.CoreTableStatusColumnComponent, selector: "app-core-table-status-column", inputs: ["data", "column"] }, { kind: "component", type: i8.CoreNumberComponent, selector: "app-core-number", inputs: ["number", "type", "canSplitNumbers", "canShowWordInToolTip", "canShowIRR"] }, { kind: "directive", type: i9.TableDetailViewerManagerDirective, selector: "[tableDetailViewerManager]", inputs: ["detailViewerData"] }, { kind: "component", type: i10.CoreTableStatusActiveColumnComponent, selector: "app-core-table-status-active-column", inputs: ["data", "column"] }, { kind: "component", type: i11.CoreRowPelakComponent, selector: "app-core-row-pelak", inputs: ["data", "column"] }, { kind: "pipe", type: i12.PersianDigitsPipe, name: "persianDigits" }] }); }
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableCardManagerComponent, decorators: [{
|
|
66
|
+
type: Component,
|
|
67
|
+
args: [{ selector: 'app-core-table-card-manager', template: "<container-element [ngSwitch]=\"column.type\">\r\n <ng-content></ng-content>\r\n\r\n <app-core-table-row-selector-column\r\n *ngSwitchCase=\"columnsTypes.ROW_SELECTOR\"\r\n [rowSelector]=\"rowSelector\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-row-selector-column>\r\n <app-core-table-status-active-column\r\n *ngSwitchCase=\"columnsTypes.STATUS_ACTIVE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-active-column>\r\n <app-core-table-status-column\r\n *ngSwitchCase=\"columnsTypes.STATUS\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-column>\r\n <app-core-table-action-column\r\n *ngSwitchCase=\"columnsTypes.ACTION\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-column>\r\n <app-core-table-action-buttons-column\r\n *ngSwitchCase=\"columnsTypes.ACTION_BUTTONS\"\r\n (onClick)=\"clicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-buttons-column>\r\n <app-core-table-shamsi-date\r\n *ngSwitchCase=\"columnsTypes.SHAMSI_DATE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-shamsi-date>\r\n <app-core-row-pelak\r\n class=\"inline-block\"\r\n *ngSwitchCase=\"columnsTypes.PELAK\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-row-pelak>\r\n <span\r\n *ngSwitchCase=\"columnsTypes.TEXT\"\r\n [ngClass]=\"{ 'cursor-pointer': column.coptToClipboard }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n >{{ data[column.key] | persianDigits }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"columnsTypes.NUMBER\"\r\n [ngClass]=\"{\r\n 'cursor-pointer': column.copyToClipboard,\r\n green: data[column.key] > 0 && column.canColorfulNumber,\r\n red: data[column.key] < 0 && column.canColorfulNumber\r\n }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n dir=\"ltr\"\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n ><app-core-number\r\n [number]=\"data[column.key]\"\r\n [type]=\"'number'\"\r\n [canSplitNumbers]=\"true\"\r\n [canShowWordInToolTip]=\"true\"\r\n >\r\n </app-core-number>\r\n </span>\r\n <span *ngSwitchCase=\"columnsTypes.SELECTOR\">\r\n <span\r\n *ngIf=\"data[column.key.split('.')[0]]\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(\r\n column.detailViewer,\r\n getSelectorData(\r\n data[column.key.split('.')[0]],\r\n column.detailViewer?.key\r\n )\r\n )\r\n \"\r\n >{{\r\n getSelectorData(data[column.key.split(\".\")[0]], column.data.key)\r\n | persianDigits\r\n }}</span\r\n >\r\n </span>\r\n</container-element>\r\n" }]
|
|
68
|
+
}], ctorParameters: function () { return [{ type: i1.NiraSnackBarService }]; }, propDecorators: { data: [{
|
|
69
|
+
type: Input,
|
|
70
|
+
args: [{ required: true }]
|
|
71
|
+
}], column: [{
|
|
72
|
+
type: Input,
|
|
73
|
+
args: [{ required: true }]
|
|
74
|
+
}], rowSelector: [{
|
|
75
|
+
type: Input,
|
|
76
|
+
args: [{ required: false }]
|
|
77
|
+
}], onColumnClicked: [{
|
|
78
|
+
type: Output
|
|
79
|
+
}] } });
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS1jYXJkLW1hbmFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1jYXJkLW1hbmFnZXIvY29yZS10YWJsZS1jYXJkLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1jYXJkLW1hbmFnZXIvY29yZS10YWJsZS1jYXJkLW1hbmFnZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBUXhFLE1BQU0sT0FBTyw2QkFBNkI7SUFNeEMsSUFBSSxZQUFZO1FBQ2QsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUNELFlBQW9CLFlBQWlDO1FBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQU56QixnQkFBVyxHQUNyQyxTQUFTLENBQUM7UUFDRixvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBSVYsQ0FBQztJQUN6RCxlQUFlLENBQUMsSUFBUyxFQUFFLEdBQVc7UUFDcEMsSUFBSSxHQUFHLEVBQUU7WUFDUCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0JBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2xCO2lCQUFNO2dCQUNMLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztnQkFDbkIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO29CQUN2QixPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM1QixDQUFDLENBQUMsQ0FBQztnQkFFSCxPQUFPLE9BQU8sQ0FBQzthQUNoQjtTQUNGO0lBQ0gsQ0FBQztJQUNELG1CQUFtQixDQUFDLE1BQVcsRUFBRSxJQUFZO1FBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZTtZQUFFLE9BQU87UUFDcEMsU0FBUyxDQUFDLFNBQVM7YUFDaEIsU0FBUyxDQUFDLElBQUksQ0FBQzthQUNmLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7Z0JBQ3pDLFdBQVcsRUFBRSxTQUFTO2dCQUN0QixRQUFRLEVBQUUsSUFBSTthQUNmLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxPQUFPLENBQUMsR0FBUTtRQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxZQUFZLENBQUMsWUFBaUIsRUFBRSxJQUFTO1FBQ3ZDLE9BQU87WUFDTCxZQUFZLEVBQUUsWUFBWTtZQUMxQixJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUM7SUFDSixDQUFDOytHQTdDVSw2QkFBNkI7bUdBQTdCLDZCQUE2Qiw0TENWMUMsK2hHQTZGQTs7NEZEbkZhLDZCQUE2QjtrQkFMekMsU0FBUzsrQkFDRSw2QkFBNkI7MEdBS1osSUFBSTtzQkFBOUIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0csV0FBVztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7Z0JBRWhCLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOaXJhU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnbmlyYS1zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBDT0xVTU5TX1RZUEVTIH0gZnJvbSAncHJvamVjdHMvZmFsY29uLWxpYi9zcmMvdXRpbHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1jb3JlLXRhYmxlLWNhcmQtbWFuYWdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtdGFibGUtY2FyZC1tYW5hZ2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLXRhYmxlLWNhcmQtbWFuYWdlci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZVRhYmxlQ2FyZE1hbmFnZXJDb21wb25lbnQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGRhdGEhOiBhbnk7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29sdW1uITogYW55O1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiBmYWxzZSB9KSByb3dTZWxlY3RvcjogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCB1bmRlZmluZWQgPVxyXG4gICAgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBvbkNvbHVtbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGdldCBjb2x1bW5zVHlwZXMoKSB7XHJcbiAgICByZXR1cm4gQ09MVU1OU19UWVBFUztcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuaXJhU25hY2tCYXI6IE5pcmFTbmFja0JhclNlcnZpY2UpIHt9XHJcbiAgZ2V0U2VsZWN0b3JEYXRhKGRhdGE6IGFueSwga2V5OiBzdHJpbmcpIHtcclxuICAgIGlmIChrZXkpIHtcclxuICAgICAgY29uc3Qgc3BsaXQgPSBrZXkuc3BsaXQoJy4nKTtcclxuICAgICAgaWYgKHNwbGl0Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgIHJldHVybiBkYXRhW2tleV07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG5ld0RhdGEgPSBkYXRhO1xyXG4gICAgICAgIHNwbGl0LmZvckVhY2goKG5ld0theSkgPT4ge1xyXG4gICAgICAgICAgbmV3RGF0YSA9IG5ld0RhdGFbbmV3S2F5XTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIG5ld0RhdGE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgb25UZXh0Q29sdW1uQ2xpY2tlZChjb2x1bW46IGFueSwgZGF0YTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIWNvbHVtbi5jb3B0VG9DbGlwYm9hcmQpIHJldHVybjtcclxuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcclxuICAgICAgLndyaXRlVGV4dChkYXRhKVxyXG4gICAgICAudGhlbigoZSkgPT4ge1xyXG4gICAgICAgIHRoaXMubmlyYVNuYWNrQmFyLnNob3coJ9io2Kcg2YXZiNmB2YLbjNiqINqp2b7bjCDYtNivJywge1xyXG4gICAgICAgICAgc3RhdHVzQ2xhc3M6ICdzdWNjZXNzJyxcclxuICAgICAgICAgIGR1cmF0aW9uOiAzMDAwLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goKGUpID0+IGNvbnNvbGUuZXJyb3IoZSkpO1xyXG4gIH1cclxuICBjbGlja2VkKHZhbDogYW55KSB7XHJcbiAgICB0aGlzLm9uQ29sdW1uQ2xpY2tlZC5lbWl0KHZhbCk7XHJcbiAgfVxyXG4gIGNvbWJpbmVkRGF0YShkZXRhaWxWaWV3ZXI6IGFueSwgZGF0YTogYW55KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBkZXRhaWxWaWV3ZXI6IGRldGFpbFZpZXdlcixcclxuICAgICAgZGF0YTogZGF0YSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxjb250YWluZXItZWxlbWVudCBbbmdTd2l0Y2hdPVwiY29sdW1uLnR5cGVcIj5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcblxyXG4gIDxhcHAtY29yZS10YWJsZS1yb3ctc2VsZWN0b3ItY29sdW1uXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLlJPV19TRUxFQ1RPUlwiXHJcbiAgICBbcm93U2VsZWN0b3JdPVwicm93U2VsZWN0b3JcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtcm93LXNlbGVjdG9yLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtc3RhdHVzLWFjdGl2ZS1jb2x1bW5cclxuICAgICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuU1RBVFVTX0FDVElWRVwiXHJcbiAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICA+PC9hcHAtY29yZS10YWJsZS1zdGF0dXMtYWN0aXZlLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtc3RhdHVzLWNvbHVtblxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5TVEFUVVNcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtc3RhdHVzLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtYWN0aW9uLWNvbHVtblxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5BQ1RJT05cIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtYWN0aW9uLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtYWN0aW9uLWJ1dHRvbnMtY29sdW1uXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLkFDVElPTl9CVVRUT05TXCJcclxuICAgIChvbkNsaWNrKT1cImNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICA+PC9hcHAtY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4+XHJcbiAgPGFwcC1jb3JlLXRhYmxlLXNoYW1zaS1kYXRlXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLlNIQU1TSV9EQVRFXCJcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgW2NvbHVtbl09XCJjb2x1bW5cIlxyXG4gID5cclxuICA8L2FwcC1jb3JlLXRhYmxlLXNoYW1zaS1kYXRlPlxyXG4gIDxhcHAtY29yZS1yb3ctcGVsYWtcclxuICAgIGNsYXNzPVwiaW5saW5lLWJsb2NrXCJcclxuICAgICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuUEVMQUtcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtcm93LXBlbGFrPlxyXG4gIDxzcGFuXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLlRFWFRcIlxyXG4gICAgW25nQ2xhc3NdPVwieyAnY3Vyc29yLXBvaW50ZXInOiBjb2x1bW4uY29wdFRvQ2xpcGJvYXJkIH1cIlxyXG4gICAgKGNsaWNrKT1cIm9uVGV4dENvbHVtbkNsaWNrZWQoY29sdW1uLCBkYXRhW2NvbHVtbi5rZXldKVwiXHJcbiAgICB0YWJsZURldGFpbFZpZXdlck1hbmFnZXJcclxuICAgIFtkZXRhaWxWaWV3ZXJEYXRhXT1cIlxyXG4gICAgICBjb21iaW5lZERhdGEoY29sdW1uLmRldGFpbFZpZXdlciwgZGF0YVtjb2x1bW4uZGV0YWlsVmlld2VyPy5rZXldKVxyXG4gICAgXCJcclxuICAgID57eyBkYXRhW2NvbHVtbi5rZXldIHwgcGVyc2lhbkRpZ2l0cyB9fTwvc3BhblxyXG4gID5cclxuICA8c3BhblxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5OVU1CRVJcIlxyXG4gICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAnY3Vyc29yLXBvaW50ZXInOiBjb2x1bW4uY29weVRvQ2xpcGJvYXJkLFxyXG4gICAgICBncmVlbjogZGF0YVtjb2x1bW4ua2V5XSA+IDAgJiYgY29sdW1uLmNhbkNvbG9yZnVsTnVtYmVyLFxyXG4gICAgICByZWQ6IGRhdGFbY29sdW1uLmtleV0gPCAwICYmIGNvbHVtbi5jYW5Db2xvcmZ1bE51bWJlclxyXG4gICAgfVwiXHJcbiAgICAoY2xpY2spPVwib25UZXh0Q29sdW1uQ2xpY2tlZChjb2x1bW4sIGRhdGFbY29sdW1uLmtleV0pXCJcclxuICAgIHRhYmxlRGV0YWlsVmlld2VyTWFuYWdlclxyXG4gICAgZGlyPVwibHRyXCJcclxuICAgIFtkZXRhaWxWaWV3ZXJEYXRhXT1cIlxyXG4gICAgICBjb21iaW5lZERhdGEoY29sdW1uLmRldGFpbFZpZXdlciwgZGF0YVtjb2x1bW4uZGV0YWlsVmlld2VyPy5rZXldKVxyXG4gICAgXCJcclxuICAgID48YXBwLWNvcmUtbnVtYmVyXHJcbiAgICAgIFtudW1iZXJdPVwiZGF0YVtjb2x1bW4ua2V5XVwiXHJcbiAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgW2NhblNwbGl0TnVtYmVyc109XCJ0cnVlXCJcclxuICAgICAgW2NhblNob3dXb3JkSW5Ub29sVGlwXT1cInRydWVcIlxyXG4gICAgPlxyXG4gICAgPC9hcHAtY29yZS1udW1iZXI+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuU0VMRUNUT1JcIj5cclxuICAgIDxzcGFuXHJcbiAgICAgICpuZ0lmPVwiZGF0YVtjb2x1bW4ua2V5LnNwbGl0KCcuJylbMF1dXCJcclxuICAgICAgdGFibGVEZXRhaWxWaWV3ZXJNYW5hZ2VyXHJcbiAgICAgIFtkZXRhaWxWaWV3ZXJEYXRhXT1cIlxyXG4gICAgICAgIGNvbWJpbmVkRGF0YShcclxuICAgICAgICAgIGNvbHVtbi5kZXRhaWxWaWV3ZXIsXHJcbiAgICAgICAgICBnZXRTZWxlY3RvckRhdGEoXHJcbiAgICAgICAgICAgIGRhdGFbY29sdW1uLmtleS5zcGxpdCgnLicpWzBdXSxcclxuICAgICAgICAgICAgY29sdW1uLmRldGFpbFZpZXdlcj8ua2V5XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgKVxyXG4gICAgICBcIlxyXG4gICAgICA+e3tcclxuICAgICAgICBnZXRTZWxlY3RvckRhdGEoZGF0YVtjb2x1bW4ua2V5LnNwbGl0KFwiLlwiKVswXV0sIGNvbHVtbi5kYXRhLmtleSlcclxuICAgICAgICAgIHwgcGVyc2lhbkRpZ2l0c1xyXG4gICAgICB9fTwvc3BhblxyXG4gICAgPlxyXG4gIDwvc3Bhbj5cclxuPC9jb250YWluZXItZWxlbWVudD5cclxuIl19
|
package/esm2022/lib/core-table/core-table-column-manager/core-table-column-manager.component.mjs
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { COLUMNS_TYPES } from 'projects/falcon-lib/src/utils/constants';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "nira-snack-bar";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "../core-table-action-buttons-column/core-table-action-buttons-column.component";
|
|
7
|
+
import * as i4 from "../core-table-action-column/core-table-action-column.component";
|
|
8
|
+
import * as i5 from "../core-table-row-selector-column/core-table-row-selector-column.component";
|
|
9
|
+
import * as i6 from "../core-table-shamsi-date/core-table-shamsi-date.component";
|
|
10
|
+
import * as i7 from "../core-table-status-column/core-table-status-column.component";
|
|
11
|
+
import * as i8 from "../../core-number/core-number.component";
|
|
12
|
+
import * as i9 from "../../../utils/directives/table-detail-viewer-manager.directive";
|
|
13
|
+
import * as i10 from "../core-table-status-active-column/core-table-status-active-column.component";
|
|
14
|
+
import * as i11 from "../core-row-pelak/core-row-pelak.component";
|
|
15
|
+
import * as i12 from "../core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component";
|
|
16
|
+
import * as i13 from "../../pipes/persian-digits.pipe";
|
|
17
|
+
export class CoreTableColumnManagerComponent {
|
|
18
|
+
get columnsTypes() {
|
|
19
|
+
return COLUMNS_TYPES;
|
|
20
|
+
}
|
|
21
|
+
constructor(niraSnackBar) {
|
|
22
|
+
this.niraSnackBar = niraSnackBar;
|
|
23
|
+
this.rowSelector = undefined;
|
|
24
|
+
this.onColumnClicked = new EventEmitter();
|
|
25
|
+
}
|
|
26
|
+
getSelectorData(data, key) {
|
|
27
|
+
const split = key.split('.');
|
|
28
|
+
if (split.length === 1) {
|
|
29
|
+
return data[key];
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
let newData = data;
|
|
33
|
+
split.forEach((newKay) => {
|
|
34
|
+
newData = newData[newKay];
|
|
35
|
+
});
|
|
36
|
+
return newData;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
onTextColumnClicked(column, data) {
|
|
40
|
+
if (!column.coptToClipboard)
|
|
41
|
+
return;
|
|
42
|
+
navigator.clipboard
|
|
43
|
+
.writeText(data)
|
|
44
|
+
.then((e) => {
|
|
45
|
+
this.niraSnackBar.show('با موفقیت کپی شد', {
|
|
46
|
+
statusClass: 'success',
|
|
47
|
+
duration: 3000,
|
|
48
|
+
});
|
|
49
|
+
})
|
|
50
|
+
.catch((e) => console.error(e));
|
|
51
|
+
}
|
|
52
|
+
clicked(val) {
|
|
53
|
+
this.onColumnClicked.emit(val);
|
|
54
|
+
}
|
|
55
|
+
combinedData(detailViewer, data) {
|
|
56
|
+
return {
|
|
57
|
+
detailViewer: detailViewer,
|
|
58
|
+
data: data,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableColumnManagerComponent, deps: [{ token: i1.NiraSnackBarService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableColumnManagerComponent, selector: "app-core-table-column-manager", inputs: { data: "data", column: "column", rowSelector: "rowSelector" }, outputs: { onColumnClicked: "onColumnClicked" }, ngImport: i0, template: "<container-element [ngSwitch]=\"column.type\">\r\n <ng-content></ng-content>\r\n\r\n <app-core-table-row-selector-column\r\n *ngSwitchCase=\"columnsTypes.ROW_SELECTOR\"\r\n [rowSelector]=\"rowSelector\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-row-selector-column>\r\n <app-core-table-status-active-column\r\n *ngSwitchCase=\"columnsTypes.STATUS_ACTIVE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-active-column>\r\n <app-core-table-status-column\r\n *ngSwitchCase=\"columnsTypes.STATUS\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-column>\r\n <app-core-table-action-column\r\n *ngSwitchCase=\"columnsTypes.ACTION\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-column>\r\n <app-core-table-action-buttons-column\r\n *ngSwitchCase=\"columnsTypes.ACTION_BUTTONS\"\r\n (onClick)=\"clicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-buttons-column>\r\n <app-core-table-shamsi-date\r\n *ngSwitchCase=\"columnsTypes.SHAMSI_DATE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-shamsi-date>\r\n <app-core-row-pelak\r\n *ngSwitchCase=\"columnsTypes.PELAK\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-row-pelak>\r\n <core-table-detail-viewer-for-report\r\n *ngSwitchCase=\"columnsTypes.DETAIL_VIEWER_FOR_REPORT\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></core-table-detail-viewer-for-report>\r\n <span\r\n *ngSwitchCase=\"columnsTypes.TEXT\"\r\n [ngClass]=\"{ 'cursor-pointer': column.coptToClipboard }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n >{{ data[column.key] | persianDigits }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"columnsTypes.NUMBER\"\r\n [ngClass]=\"{\r\n 'cursor-pointer': column.copyToClipboard,\r\n green: data[column.key] > 0 && column.canColorfulNumber,\r\n red: data[column.key] < 0 && column.canColorfulNumber\r\n }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n dir=\"ltr\"\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n ><app-core-number\r\n [number]=\"data[column.key]\"\r\n [type]=\"'number'\"\r\n [canSplitNumbers]=\"true\"\r\n [canShowWordInToolTip]=\"true\"\r\n >\r\n </app-core-number>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"columnsTypes.SELECTOR\">\r\n <span\r\n *ngIf=\"data[column.key.split('.')[0]]\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(\r\n column.detailViewer,\r\n getSelectorData(\r\n data[column.key.split('.')[0]],\r\n column.detailViewer?.key\r\n )\r\n )\r\n \"\r\n >{{\r\n getSelectorData(data[column.key.split(\".\")[0]], column.data.key)\r\n | persianDigits\r\n }}</span\r\n >\r\n </span>\r\n</container-element>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.CoreTableActionButtonsColumnComponent, selector: "app-core-table-action-buttons-column", inputs: ["data", "column"], outputs: ["onClick"] }, { kind: "component", type: i4.CoreTableActionColumnComponent, selector: "app-core-table-action-column", inputs: ["data", "column"] }, { kind: "component", type: i5.CoreTableRowSelectorColumnComponent, selector: "app-core-table-row-selector-column", inputs: ["data", "column", "rowSelector"] }, { kind: "component", type: i6.CoreTableShamsiDateComponent, selector: "app-core-table-shamsi-date", inputs: ["data", "column"], outputs: ["onClick"] }, { kind: "component", type: i7.CoreTableStatusColumnComponent, selector: "app-core-table-status-column", inputs: ["data", "column"] }, { kind: "component", type: i8.CoreNumberComponent, selector: "app-core-number", inputs: ["number", "type", "canSplitNumbers", "canShowWordInToolTip", "canShowIRR"] }, { kind: "directive", type: i9.TableDetailViewerManagerDirective, selector: "[tableDetailViewerManager]", inputs: ["detailViewerData"] }, { kind: "component", type: i10.CoreTableStatusActiveColumnComponent, selector: "app-core-table-status-active-column", inputs: ["data", "column"] }, { kind: "component", type: i11.CoreRowPelakComponent, selector: "app-core-row-pelak", inputs: ["data", "column"] }, { kind: "component", type: i12.CoreTableDetailViewerForReportComponent, selector: "core-table-detail-viewer-for-report", inputs: ["data", "column"] }, { kind: "pipe", type: i13.PersianDigitsPipe, name: "persianDigits" }] }); }
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableColumnManagerComponent, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{ selector: 'app-core-table-column-manager', template: "<container-element [ngSwitch]=\"column.type\">\r\n <ng-content></ng-content>\r\n\r\n <app-core-table-row-selector-column\r\n *ngSwitchCase=\"columnsTypes.ROW_SELECTOR\"\r\n [rowSelector]=\"rowSelector\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-row-selector-column>\r\n <app-core-table-status-active-column\r\n *ngSwitchCase=\"columnsTypes.STATUS_ACTIVE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-active-column>\r\n <app-core-table-status-column\r\n *ngSwitchCase=\"columnsTypes.STATUS\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-status-column>\r\n <app-core-table-action-column\r\n *ngSwitchCase=\"columnsTypes.ACTION\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-column>\r\n <app-core-table-action-buttons-column\r\n *ngSwitchCase=\"columnsTypes.ACTION_BUTTONS\"\r\n (onClick)=\"clicked($event)\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-table-action-buttons-column>\r\n <app-core-table-shamsi-date\r\n *ngSwitchCase=\"columnsTypes.SHAMSI_DATE\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n >\r\n </app-core-table-shamsi-date>\r\n <app-core-row-pelak\r\n *ngSwitchCase=\"columnsTypes.PELAK\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></app-core-row-pelak>\r\n <core-table-detail-viewer-for-report\r\n *ngSwitchCase=\"columnsTypes.DETAIL_VIEWER_FOR_REPORT\"\r\n [data]=\"data\"\r\n [column]=\"column\"\r\n ></core-table-detail-viewer-for-report>\r\n <span\r\n *ngSwitchCase=\"columnsTypes.TEXT\"\r\n [ngClass]=\"{ 'cursor-pointer': column.coptToClipboard }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n >{{ data[column.key] | persianDigits }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"columnsTypes.NUMBER\"\r\n [ngClass]=\"{\r\n 'cursor-pointer': column.copyToClipboard,\r\n green: data[column.key] > 0 && column.canColorfulNumber,\r\n red: data[column.key] < 0 && column.canColorfulNumber\r\n }\"\r\n (click)=\"onTextColumnClicked(column, data[column.key])\"\r\n tableDetailViewerManager\r\n dir=\"ltr\"\r\n [detailViewerData]=\"\r\n combinedData(column.detailViewer, data[column.detailViewer?.key])\r\n \"\r\n ><app-core-number\r\n [number]=\"data[column.key]\"\r\n [type]=\"'number'\"\r\n [canSplitNumbers]=\"true\"\r\n [canShowWordInToolTip]=\"true\"\r\n >\r\n </app-core-number>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"columnsTypes.SELECTOR\">\r\n <span\r\n *ngIf=\"data[column.key.split('.')[0]]\"\r\n tableDetailViewerManager\r\n [detailViewerData]=\"\r\n combinedData(\r\n column.detailViewer,\r\n getSelectorData(\r\n data[column.key.split('.')[0]],\r\n column.detailViewer?.key\r\n )\r\n )\r\n \"\r\n >{{\r\n getSelectorData(data[column.key.split(\".\")[0]], column.data.key)\r\n | persianDigits\r\n }}</span\r\n >\r\n </span>\r\n</container-element>\r\n" }]
|
|
67
|
+
}], ctorParameters: function () { return [{ type: i1.NiraSnackBarService }]; }, propDecorators: { data: [{
|
|
68
|
+
type: Input,
|
|
69
|
+
args: [{ required: true }]
|
|
70
|
+
}], column: [{
|
|
71
|
+
type: Input,
|
|
72
|
+
args: [{ required: true }]
|
|
73
|
+
}], rowSelector: [{
|
|
74
|
+
type: Input,
|
|
75
|
+
args: [{ required: false }]
|
|
76
|
+
}], onColumnClicked: [{
|
|
77
|
+
type: Output
|
|
78
|
+
}] } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS1jb2x1bW4tbWFuYWdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbGliL3NyYy9saWIvY29yZS10YWJsZS9jb3JlLXRhYmxlLWNvbHVtbi1tYW5hZ2VyL2NvcmUtdGFibGUtY29sdW1uLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1jb2x1bW4tbWFuYWdlci9jb3JlLXRhYmxlLWNvbHVtbi1tYW5hZ2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFReEUsTUFBTSxPQUFPLCtCQUErQjtJQU0xQyxJQUFJLFlBQVk7UUFDZCxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsWUFBb0IsWUFBaUM7UUFBakMsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBTnpCLGdCQUFXLEdBQ3JDLFNBQVMsQ0FBQztRQUNGLG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFJVixDQUFDO0lBQ3pELGVBQWUsQ0FBQyxJQUFTLEVBQUUsR0FBVztRQUNwQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDbEI7YUFBTTtZQUNMLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztZQUNuQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3ZCLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUIsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLE9BQU8sQ0FBQztTQUNoQjtJQUNILENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxNQUFXLEVBQUUsSUFBWTtRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWU7WUFBRSxPQUFPO1FBQ3BDLFNBQVMsQ0FBQyxTQUFTO2FBQ2hCLFNBQVMsQ0FBQyxJQUFJLENBQUM7YUFDZixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO2dCQUN6QyxXQUFXLEVBQUUsU0FBUztnQkFDdEIsUUFBUSxFQUFFLElBQUk7YUFDZixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQVE7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsWUFBWSxDQUFDLFlBQWlCLEVBQUUsSUFBUztRQUN2QyxPQUFPO1lBQ0wsWUFBWSxFQUFFLFlBQVk7WUFDMUIsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDO0lBQ0osQ0FBQzsrR0ExQ1UsK0JBQStCO21HQUEvQiwrQkFBK0IsOExDVjVDLDZzR0FrR0E7OzRGRHhGYSwrQkFBK0I7a0JBTDNDLFNBQVM7K0JBQ0UsK0JBQStCOzBHQUtkLElBQUk7c0JBQTlCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNHLFdBQVc7c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUVoQixlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmlyYVNuYWNrQmFyU2VydmljZSB9IGZyb20gJ25pcmEtc25hY2stYmFyJztcclxuaW1wb3J0IHsgQ09MVU1OU19UWVBFUyB9IGZyb20gJ3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL3V0aWxzL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtY29yZS10YWJsZS1jb2x1bW4tbWFuYWdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtdGFibGUtY29sdW1uLW1hbmFnZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtdGFibGUtY29sdW1uLW1hbmFnZXIuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVUYWJsZUNvbHVtbk1hbmFnZXJDb21wb25lbnQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGRhdGEhOiBhbnk7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29sdW1uITogYW55O1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiBmYWxzZSB9KSByb3dTZWxlY3RvcjogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCB1bmRlZmluZWQgPVxyXG4gICAgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBvbkNvbHVtbkNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGdldCBjb2x1bW5zVHlwZXMoKSB7XHJcbiAgICByZXR1cm4gQ09MVU1OU19UWVBFUztcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuaXJhU25hY2tCYXI6IE5pcmFTbmFja0JhclNlcnZpY2UpIHt9XHJcbiAgZ2V0U2VsZWN0b3JEYXRhKGRhdGE6IGFueSwga2V5OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHNwbGl0ID0ga2V5LnNwbGl0KCcuJyk7XHJcbiAgICBpZiAoc3BsaXQubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIHJldHVybiBkYXRhW2tleV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgbmV3RGF0YSA9IGRhdGE7XHJcbiAgICAgIHNwbGl0LmZvckVhY2goKG5ld0theSkgPT4ge1xyXG4gICAgICAgIG5ld0RhdGEgPSBuZXdEYXRhW25ld0theV07XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gbmV3RGF0YTtcclxuICAgIH1cclxuICB9XHJcbiAgb25UZXh0Q29sdW1uQ2xpY2tlZChjb2x1bW46IGFueSwgZGF0YTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIWNvbHVtbi5jb3B0VG9DbGlwYm9hcmQpIHJldHVybjtcclxuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcclxuICAgICAgLndyaXRlVGV4dChkYXRhKVxyXG4gICAgICAudGhlbigoZSkgPT4ge1xyXG4gICAgICAgIHRoaXMubmlyYVNuYWNrQmFyLnNob3coJ9io2Kcg2YXZiNmB2YLbjNiqINqp2b7bjCDYtNivJywge1xyXG4gICAgICAgICAgc3RhdHVzQ2xhc3M6ICdzdWNjZXNzJyxcclxuICAgICAgICAgIGR1cmF0aW9uOiAzMDAwLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goKGUpID0+IGNvbnNvbGUuZXJyb3IoZSkpO1xyXG4gIH1cclxuICBjbGlja2VkKHZhbDogYW55KSB7XHJcbiAgICB0aGlzLm9uQ29sdW1uQ2xpY2tlZC5lbWl0KHZhbCk7XHJcbiAgfVxyXG4gIGNvbWJpbmVkRGF0YShkZXRhaWxWaWV3ZXI6IGFueSwgZGF0YTogYW55KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBkZXRhaWxWaWV3ZXI6IGRldGFpbFZpZXdlcixcclxuICAgICAgZGF0YTogZGF0YSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxjb250YWluZXItZWxlbWVudCBbbmdTd2l0Y2hdPVwiY29sdW1uLnR5cGVcIj5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcblxyXG4gIDxhcHAtY29yZS10YWJsZS1yb3ctc2VsZWN0b3ItY29sdW1uXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLlJPV19TRUxFQ1RPUlwiXHJcbiAgICBbcm93U2VsZWN0b3JdPVwicm93U2VsZWN0b3JcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtcm93LXNlbGVjdG9yLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtc3RhdHVzLWFjdGl2ZS1jb2x1bW5cclxuICAgICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuU1RBVFVTX0FDVElWRVwiXHJcbiAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICA+PC9hcHAtY29yZS10YWJsZS1zdGF0dXMtYWN0aXZlLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtc3RhdHVzLWNvbHVtblxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5TVEFUVVNcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtc3RhdHVzLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtYWN0aW9uLWNvbHVtblxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5BQ1RJT05cIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtdGFibGUtYWN0aW9uLWNvbHVtbj5cclxuICA8YXBwLWNvcmUtdGFibGUtYWN0aW9uLWJ1dHRvbnMtY29sdW1uXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLkFDVElPTl9CVVRUT05TXCJcclxuICAgIChvbkNsaWNrKT1cImNsaWNrZWQoJGV2ZW50KVwiXHJcbiAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICA+PC9hcHAtY29yZS10YWJsZS1hY3Rpb24tYnV0dG9ucy1jb2x1bW4+XHJcbiAgPGFwcC1jb3JlLXRhYmxlLXNoYW1zaS1kYXRlXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLlNIQU1TSV9EQVRFXCJcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgW2NvbHVtbl09XCJjb2x1bW5cIlxyXG4gID5cclxuICA8L2FwcC1jb3JlLXRhYmxlLXNoYW1zaS1kYXRlPlxyXG4gIDxhcHAtY29yZS1yb3ctcGVsYWtcclxuICAgICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuUEVMQUtcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvYXBwLWNvcmUtcm93LXBlbGFrPlxyXG4gIDxjb3JlLXRhYmxlLWRldGFpbC12aWV3ZXItZm9yLXJlcG9ydFxyXG4gICAgKm5nU3dpdGNoQ2FzZT1cImNvbHVtbnNUeXBlcy5ERVRBSUxfVklFV0VSX0ZPUl9SRVBPUlRcIlxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXHJcbiAgPjwvY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQ+XHJcbiAgPHNwYW5cclxuICAgICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuVEVYVFwiXHJcbiAgICBbbmdDbGFzc109XCJ7ICdjdXJzb3ItcG9pbnRlcic6IGNvbHVtbi5jb3B0VG9DbGlwYm9hcmQgfVwiXHJcbiAgICAoY2xpY2spPVwib25UZXh0Q29sdW1uQ2xpY2tlZChjb2x1bW4sIGRhdGFbY29sdW1uLmtleV0pXCJcclxuICAgIHRhYmxlRGV0YWlsVmlld2VyTWFuYWdlclxyXG4gICAgW2RldGFpbFZpZXdlckRhdGFdPVwiXHJcbiAgICAgIGNvbWJpbmVkRGF0YShjb2x1bW4uZGV0YWlsVmlld2VyLCBkYXRhW2NvbHVtbi5kZXRhaWxWaWV3ZXI/LmtleV0pXHJcbiAgICBcIlxyXG4gICAgPnt7IGRhdGFbY29sdW1uLmtleV0gfCBwZXJzaWFuRGlnaXRzIH19PC9zcGFuXHJcbiAgPlxyXG4gIDxzcGFuXHJcbiAgICAqbmdTd2l0Y2hDYXNlPVwiY29sdW1uc1R5cGVzLk5VTUJFUlwiXHJcbiAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICdjdXJzb3ItcG9pbnRlcic6IGNvbHVtbi5jb3B5VG9DbGlwYm9hcmQsXHJcbiAgICAgIGdyZWVuOiBkYXRhW2NvbHVtbi5rZXldID4gMCAmJiBjb2x1bW4uY2FuQ29sb3JmdWxOdW1iZXIsXHJcbiAgICAgIHJlZDogZGF0YVtjb2x1bW4ua2V5XSA8IDAgJiYgY29sdW1uLmNhbkNvbG9yZnVsTnVtYmVyXHJcbiAgICB9XCJcclxuICAgIChjbGljayk9XCJvblRleHRDb2x1bW5DbGlja2VkKGNvbHVtbiwgZGF0YVtjb2x1bW4ua2V5XSlcIlxyXG4gICAgdGFibGVEZXRhaWxWaWV3ZXJNYW5hZ2VyXHJcbiAgICBkaXI9XCJsdHJcIlxyXG4gICAgW2RldGFpbFZpZXdlckRhdGFdPVwiXHJcbiAgICAgIGNvbWJpbmVkRGF0YShjb2x1bW4uZGV0YWlsVmlld2VyLCBkYXRhW2NvbHVtbi5kZXRhaWxWaWV3ZXI/LmtleV0pXHJcbiAgICBcIlxyXG4gICAgPjxhcHAtY29yZS1udW1iZXJcclxuICAgICAgW251bWJlcl09XCJkYXRhW2NvbHVtbi5rZXldXCJcclxuICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICBbY2FuU3BsaXROdW1iZXJzXT1cInRydWVcIlxyXG4gICAgICBbY2FuU2hvd1dvcmRJblRvb2xUaXBdPVwidHJ1ZVwiXHJcbiAgICA+XHJcbiAgICA8L2FwcC1jb3JlLW51bWJlcj5cclxuICA8L3NwYW4+XHJcblxyXG4gIDxzcGFuICpuZ1N3aXRjaENhc2U9XCJjb2x1bW5zVHlwZXMuU0VMRUNUT1JcIj5cclxuICAgIDxzcGFuXHJcbiAgICAgICpuZ0lmPVwiZGF0YVtjb2x1bW4ua2V5LnNwbGl0KCcuJylbMF1dXCJcclxuICAgICAgdGFibGVEZXRhaWxWaWV3ZXJNYW5hZ2VyXHJcbiAgICAgIFtkZXRhaWxWaWV3ZXJEYXRhXT1cIlxyXG4gICAgICAgIGNvbWJpbmVkRGF0YShcclxuICAgICAgICAgIGNvbHVtbi5kZXRhaWxWaWV3ZXIsXHJcbiAgICAgICAgICBnZXRTZWxlY3RvckRhdGEoXHJcbiAgICAgICAgICAgIGRhdGFbY29sdW1uLmtleS5zcGxpdCgnLicpWzBdXSxcclxuICAgICAgICAgICAgY29sdW1uLmRldGFpbFZpZXdlcj8ua2V5XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgKVxyXG4gICAgICBcIlxyXG4gICAgICA+e3tcclxuICAgICAgICBnZXRTZWxlY3RvckRhdGEoZGF0YVtjb2x1bW4ua2V5LnNwbGl0KFwiLlwiKVswXV0sIGNvbHVtbi5kYXRhLmtleSlcclxuICAgICAgICAgIHwgcGVyc2lhbkRpZ2l0c1xyXG4gICAgICB9fTwvc3BhblxyXG4gICAgPlxyXG4gIDwvc3Bhbj5cclxuPC9jb250YWluZXItZWxlbWVudD5cclxuIl19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { DetailViewers } from '../../falconTypes';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "../../../utils/directives/detail-viewer-manager.directive";
|
|
6
|
+
export class CoreTableDetailViewerForReportComponent {
|
|
7
|
+
get detailViewers() {
|
|
8
|
+
return DetailViewers;
|
|
9
|
+
}
|
|
10
|
+
ngOnInit() { }
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableDetailViewerForReportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreTableDetailViewerForReportComponent, selector: "core-table-detail-viewer-for-report", inputs: { data: "data", column: "column" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"data.refType\">\r\n <span\r\n *ngSwitchCase=\"'MANIFEST'\"\r\n detailViewerManager\r\n [detailViewerName]=\"detailViewers.MANIFEST\"\r\n [detailViewerData]=\"data.refCode\"\r\n >{{ data.refCode }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"'BILL'\"\r\n detailViewerManager\r\n [detailViewerName]=\"detailViewers.BILL\"\r\n [detailViewerData]=\"data.refCode\"\r\n >{{ data.refCode }}</span\r\n >\r\n <span *ngSwitchDefault>{{ data.refCode }}</span>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.DetailViewerManagerDirective, selector: "[detailViewerManager]", inputs: ["detailViewerData", "detailViewerName"] }] }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreTableDetailViewerForReportComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'core-table-detail-viewer-for-report', template: "<ng-container [ngSwitch]=\"data.refType\">\r\n <span\r\n *ngSwitchCase=\"'MANIFEST'\"\r\n detailViewerManager\r\n [detailViewerName]=\"detailViewers.MANIFEST\"\r\n [detailViewerData]=\"data.refCode\"\r\n >{{ data.refCode }}</span\r\n >\r\n <span\r\n *ngSwitchCase=\"'BILL'\"\r\n detailViewerManager\r\n [detailViewerName]=\"detailViewers.BILL\"\r\n [detailViewerData]=\"data.refCode\"\r\n >{{ data.refCode }}</span\r\n >\r\n <span *ngSwitchDefault>{{ data.refCode }}</span>\r\n</ng-container>\r\n" }]
|
|
17
|
+
}], propDecorators: { data: [{
|
|
18
|
+
type: Input,
|
|
19
|
+
args: [{ required: true }]
|
|
20
|
+
}], column: [{
|
|
21
|
+
type: Input,
|
|
22
|
+
args: [{ required: true }]
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQvY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtdGFibGUvY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQvY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBT2xELE1BQU0sT0FBTyx1Q0FBdUM7SUFJbEQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUVELFFBQVEsS0FBVSxDQUFDOytHQVJSLHVDQUF1QzttR0FBdkMsdUNBQXVDLHVIQ1JwRCxxaEJBaUJBOzs0RkRUYSx1Q0FBdUM7a0JBTG5ELFNBQVM7K0JBQ0UscUNBQXFDOzhCQUtwQixJQUFJO3NCQUE5QixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxNQUFNO3NCQUFoQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGV0YWlsVmlld2VycyB9IGZyb20gJy4uLy4uL2ZhbGNvblR5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLXRhYmxlLWRldGFpbC12aWV3ZXItZm9yLXJlcG9ydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS10YWJsZS1kZXRhaWwtdmlld2VyLWZvci1yZXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVUYWJsZURldGFpbFZpZXdlckZvclJlcG9ydENvbXBvbmVudCB7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgZGF0YSE6IGFueTtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBjb2x1bW4hOiBhbnk7XHJcblxyXG4gIGdldCBkZXRhaWxWaWV3ZXJzKCkge1xyXG4gICAgcmV0dXJuIERldGFpbFZpZXdlcnM7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZGF0YS5yZWZUeXBlXCI+XHJcbiAgPHNwYW5cclxuICAgICpuZ1N3aXRjaENhc2U9XCInTUFOSUZFU1QnXCJcclxuICAgIGRldGFpbFZpZXdlck1hbmFnZXJcclxuICAgIFtkZXRhaWxWaWV3ZXJOYW1lXT1cImRldGFpbFZpZXdlcnMuTUFOSUZFU1RcIlxyXG4gICAgW2RldGFpbFZpZXdlckRhdGFdPVwiZGF0YS5yZWZDb2RlXCJcclxuICAgID57eyBkYXRhLnJlZkNvZGUgfX08L3NwYW5cclxuICA+XHJcbiAgPHNwYW5cclxuICAgICpuZ1N3aXRjaENhc2U9XCInQklMTCdcIlxyXG4gICAgZGV0YWlsVmlld2VyTWFuYWdlclxyXG4gICAgW2RldGFpbFZpZXdlck5hbWVdPVwiZGV0YWlsVmlld2Vycy5CSUxMXCJcclxuICAgIFtkZXRhaWxWaWV3ZXJEYXRhXT1cImRhdGEucmVmQ29kZVwiXHJcbiAgICA+e3sgZGF0YS5yZWZDb2RlIH19PC9zcGFuXHJcbiAgPlxyXG4gIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQ+e3sgZGF0YS5yZWZDb2RlIH19PC9zcGFuPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|