@memberjunction/ng-user-view-grid 1.2.0 → 1.2.1

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.
@@ -64,6 +64,7 @@ export declare class UserViewGridComponent implements OnInit, AfterViewInit {
64
64
  recordsToCompare: any[];
65
65
  compareMode: boolean;
66
66
  mergeMode: boolean;
67
+ duplicateMode: boolean;
67
68
  selectableSettings: SelectableSettings;
68
69
  selectedKeys: any[];
69
70
  isCompareDialogOpened: boolean;
@@ -113,8 +114,10 @@ export declare class UserViewGridComponent implements OnInit, AfterViewInit {
113
114
  };
114
115
  selectionChange(args: SelectionEvent): void;
115
116
  enableMergeOrCompare(cancel: boolean | undefined, type: 'merge' | 'compare'): void;
117
+ enableCheckbox(cancel: boolean | undefined, type: 'merge' | 'compare' | 'duplicate' | ''): void;
116
118
  closeConfirmMergeDialog(event: 'cancel' | 'yes' | 'no'): Promise<void>;
117
- closeCompareDialog(event: 'close' | 'cancel' | 'merge'): Promise<void>;
119
+ closeCompareDialog(event: 'close' | 'cancel' | 'merge' | 'duplicate'): Promise<void>;
120
+ fimdDuplicateRecords(): Promise<void>;
118
121
  exportColumns: ViewColumnInfo[];
119
122
  exportData: any[];
120
123
  doExcelExport(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ng-user-view-grid.component.d.ts","sourceRoot":"","sources":["../../src/lib/ng-user-view-grid.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-user-view-grid.component.d.ts","sourceRoot":"","sources":["../../src/lib/ng-user-view-grid.component.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { Component, ViewChild, ElementRef, Output, EventEmitter, Input } from '@angular/core';
11
- import { Metadata, RunView, EntityFieldTSType, LogError, ComparePrimaryKeys } from '@memberjunction/core';
11
+ import { Metadata, RunView, EntityFieldTSType, LogError, ComparePrimaryKeys, PotentialDuplicateRequest } from '@memberjunction/core';
12
12
  import { ViewInfo } from '@memberjunction/core-entities';
13
13
  import { GridComponent } from "@progress/kendo-angular-grid";
14
14
  import { Keys } from '@progress/kendo-angular-common';
@@ -26,219 +26,206 @@ import * as i6 from "@progress/kendo-angular-excel-export";
26
26
  import * as i7 from "@progress/kendo-angular-buttons";
27
27
  import * as i8 from "@memberjunction/ng-compare-records";
28
28
  import * as i9 from "@memberjunction/ng-container-directives";
29
+ import * as i10 from "@progress/kendo-angular-inputs";
29
30
  const _c0 = ["kendoGrid"];
30
31
  const _c1 = ["excelExport"];
31
32
  const _c2 = ["recordCompareRef"];
32
33
  const _c3 = ["analysisQuestion"];
33
34
  const _c4 = ["analysisResults"];
34
35
  const _c5 = ["compareDialogContainer"];
35
- function UserViewGridComponent_ng_template_3_button_0_Template(rf, ctx) { if (rf & 1) {
36
- const _r17 = i0.ɵɵgetCurrentView();
37
- i0.ɵɵelementStart(0, "button", 15);
38
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r16.doExcelExport()); });
39
- i0.ɵɵelement(1, "span", 16);
40
- i0.ɵɵtext(2, " Export to Excel ");
41
- i0.ɵɵelementEnd();
36
+ function UserViewGridComponent_ng_template_13_Template(rf, ctx) { if (rf & 1) {
37
+ i0.ɵɵelement(0, "span", 23);
42
38
  } }
43
- function UserViewGridComponent_ng_template_3_button_1_Template(rf, ctx) { if (rf & 1) {
39
+ function UserViewGridComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
44
40
  const _r19 = i0.ɵɵgetCurrentView();
45
- i0.ɵɵelementStart(0, "button", 17);
46
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r18.enableMergeOrCompare(false, "compare")); });
47
- i0.ɵɵtext(1, "Compare");
41
+ i0.ɵɵelementStart(0, "button", 24);
42
+ i0.ɵɵlistener("click", function UserViewGridComponent_Conditional_15_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.doExcelExport()); });
43
+ i0.ɵɵelement(1, "span", 25);
44
+ i0.ɵɵtext(2, " Export to Excel ");
48
45
  i0.ɵɵelementEnd();
49
- } if (rf & 2) {
50
- const ctx_r9 = i0.ɵɵnextContext(2);
51
- i0.ɵɵproperty("disabled", ctx_r9.compareMode && ctx_r9.recordsToCompare.length < 2);
52
46
  } }
53
- function UserViewGridComponent_ng_template_3_button_2_Template(rf, ctx) { if (rf & 1) {
47
+ function UserViewGridComponent_button_16_Template(rf, ctx) { if (rf & 1) {
54
48
  const _r21 = i0.ɵɵgetCurrentView();
55
- i0.ɵɵelementStart(0, "button", 17);
56
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r21); const ctx_r20 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r20.enableMergeOrCompare(false, "compare")); });
57
- i0.ɵɵtext(1, "Compare");
49
+ i0.ɵɵelementStart(0, "button", 26);
50
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_16_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r21); const ctx_r20 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r20.enableCheckbox(false, "duplicate")); });
51
+ i0.ɵɵtext(1, " Search For Duplicates ");
58
52
  i0.ɵɵelementEnd();
59
53
  } if (rf & 2) {
60
- const ctx_r10 = i0.ɵɵnextContext(2);
61
- i0.ɵɵproperty("disabled", ctx_r10.compareMode && ctx_r10.recordsToCompare.length < 2);
54
+ const ctx_r3 = i0.ɵɵnextContext();
55
+ i0.ɵɵproperty("disabled", ctx_r3.duplicateMode && ctx_r3.recordsToCompare.length < 2);
62
56
  } }
63
- function UserViewGridComponent_ng_template_3_button_3_Template(rf, ctx) { if (rf & 1) {
57
+ function UserViewGridComponent_button_17_Template(rf, ctx) { if (rf & 1) {
64
58
  const _r23 = i0.ɵɵgetCurrentView();
65
- i0.ɵɵelementStart(0, "button", 18);
66
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const ctx_r22 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r22.enableMergeOrCompare(true, "compare")); });
67
- i0.ɵɵtext(1, "Cancel");
59
+ i0.ɵɵelementStart(0, "button", 26);
60
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_17_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const ctx_r22 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r22.enableCheckbox(false, "duplicate")); });
61
+ i0.ɵɵtext(1, " Search For Duplicates ");
68
62
  i0.ɵɵelementEnd();
63
+ } if (rf & 2) {
64
+ const ctx_r4 = i0.ɵɵnextContext();
65
+ i0.ɵɵproperty("disabled", ctx_r4.duplicateMode && ctx_r4.recordsToCompare.length < 2);
69
66
  } }
70
- function UserViewGridComponent_ng_template_3_button_4_Template(rf, ctx) { if (rf & 1) {
67
+ function UserViewGridComponent_button_18_Template(rf, ctx) { if (rf & 1) {
71
68
  const _r25 = i0.ɵɵgetCurrentView();
72
- i0.ɵɵelementStart(0, "button", 17);
73
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r24.enableMergeOrCompare(false, "merge")); });
74
- i0.ɵɵtext(1, "Merge");
69
+ i0.ɵɵelementStart(0, "button", 26);
70
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_18_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r24.enableCheckbox(false, "compare")); });
71
+ i0.ɵɵtext(1, "Compare");
75
72
  i0.ɵɵelementEnd();
76
73
  } if (rf & 2) {
77
- const ctx_r12 = i0.ɵɵnextContext(2);
78
- i0.ɵɵproperty("disabled", ctx_r12.mergeMode && ctx_r12.recordsToCompare.length < 2);
74
+ const ctx_r5 = i0.ɵɵnextContext();
75
+ i0.ɵɵproperty("disabled", ctx_r5.compareMode && ctx_r5.recordsToCompare.length < 2);
79
76
  } }
80
- function UserViewGridComponent_ng_template_3_button_5_Template(rf, ctx) { if (rf & 1) {
77
+ function UserViewGridComponent_button_19_Template(rf, ctx) { if (rf & 1) {
81
78
  const _r27 = i0.ɵɵgetCurrentView();
82
- i0.ɵɵelementStart(0, "button", 18);
83
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r26.enableMergeOrCompare(false, "merge")); });
84
- i0.ɵɵtext(1, "Merge");
79
+ i0.ɵɵelementStart(0, "button", 26);
80
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_19_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r26.enableCheckbox(false, "compare")); });
81
+ i0.ɵɵtext(1, "Compare");
85
82
  i0.ɵɵelementEnd();
83
+ } if (rf & 2) {
84
+ const ctx_r6 = i0.ɵɵnextContext();
85
+ i0.ɵɵproperty("disabled", ctx_r6.compareMode && ctx_r6.recordsToCompare.length < 2);
86
86
  } }
87
- function UserViewGridComponent_ng_template_3_button_6_Template(rf, ctx) { if (rf & 1) {
87
+ function UserViewGridComponent_button_20_Template(rf, ctx) { if (rf & 1) {
88
88
  const _r29 = i0.ɵɵgetCurrentView();
89
- i0.ɵɵelementStart(0, "button", 18);
90
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r29); const ctx_r28 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r28.enableMergeOrCompare(true, "merge")); });
91
- i0.ɵɵtext(1, "Cancel");
89
+ i0.ɵɵelementStart(0, "button", 26);
90
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_20_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r29); const ctx_r28 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r28.enableCheckbox(false, "merge")); });
91
+ i0.ɵɵtext(1, "Merge");
92
92
  i0.ɵɵelementEnd();
93
+ } if (rf & 2) {
94
+ const ctx_r7 = i0.ɵɵnextContext();
95
+ i0.ɵɵproperty("disabled", ctx_r7.mergeMode && ctx_r7.recordsToCompare.length < 2);
93
96
  } }
94
- function UserViewGridComponent_ng_template_3_button_7_Template(rf, ctx) { if (rf & 1) {
97
+ function UserViewGridComponent_button_21_Template(rf, ctx) { if (rf & 1) {
95
98
  const _r31 = i0.ɵɵgetCurrentView();
96
- i0.ɵɵelementStart(0, "button", 19);
97
- i0.ɵɵlistener("click", function UserViewGridComponent_ng_template_3_button_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r31); const ctx_r30 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r30.RefreshFromSavedParams()); });
98
- i0.ɵɵelement(1, "span", 20);
99
- i0.ɵɵtext(2, " Refresh ");
99
+ i0.ɵɵelementStart(0, "button", 26);
100
+ i0.ɵɵlistener("click", function UserViewGridComponent_button_21_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r31); const ctx_r30 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r30.enableCheckbox(false, "merge")); });
101
+ i0.ɵɵtext(1, "Merge");
100
102
  i0.ɵɵelementEnd();
101
- } }
102
- function UserViewGridComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
103
- i0.ɵɵtemplate(0, UserViewGridComponent_ng_template_3_button_0_Template, 3, 0, "button", 11)(1, UserViewGridComponent_ng_template_3_button_1_Template, 2, 1, "button", 12)(2, UserViewGridComponent_ng_template_3_button_2_Template, 2, 1, "button", 12)(3, UserViewGridComponent_ng_template_3_button_3_Template, 2, 0, "button", 13)(4, UserViewGridComponent_ng_template_3_button_4_Template, 2, 1, "button", 12)(5, UserViewGridComponent_ng_template_3_button_5_Template, 2, 0, "button", 13)(6, UserViewGridComponent_ng_template_3_button_6_Template, 2, 0, "button", 13)(7, UserViewGridComponent_ng_template_3_button_7_Template, 3, 0, "button", 14);
104
103
  } if (rf & 2) {
105
- const ctx_r1 = i0.ɵɵnextContext();
106
- i0.ɵɵproperty("ngIf", !ctx_r1.compareMode && !ctx_r1.mergeMode);
107
- i0.ɵɵadvance();
108
- i0.ɵɵproperty("ngIf", !ctx_r1.compareMode && !ctx_r1.mergeMode);
109
- i0.ɵɵadvance();
110
- i0.ɵɵproperty("ngIf", ctx_r1.compareMode);
111
- i0.ɵɵadvance();
112
- i0.ɵɵproperty("ngIf", ctx_r1.compareMode);
113
- i0.ɵɵadvance();
114
- i0.ɵɵproperty("ngIf", ctx_r1.mergeMode);
115
- i0.ɵɵadvance();
116
- i0.ɵɵproperty("ngIf", !ctx_r1.mergeMode && !ctx_r1.compareMode);
117
- i0.ɵɵadvance();
118
- i0.ɵɵproperty("ngIf", ctx_r1.mergeMode);
119
- i0.ɵɵadvance();
120
- i0.ɵɵproperty("ngIf", ctx_r1.showRefreshButton && !ctx_r1.compareMode && !ctx_r1.mergeMode);
104
+ const ctx_r8 = i0.ɵɵnextContext();
105
+ i0.ɵɵproperty("disabled", ctx_r8.mergeMode && ctx_r8.recordsToCompare.length < 2);
106
+ } }
107
+ function UserViewGridComponent_Conditional_22_Template(rf, ctx) { if (rf & 1) {
108
+ const _r33 = i0.ɵɵgetCurrentView();
109
+ i0.ɵɵelementStart(0, "button", 24);
110
+ i0.ɵɵlistener("click", function UserViewGridComponent_Conditional_22_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r33); const ctx_r32 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r32.enableCheckbox(true, "")); });
111
+ i0.ɵɵtext(1, " Cancel ");
112
+ i0.ɵɵelementEnd();
113
+ } }
114
+ function UserViewGridComponent_Conditional_23_Template(rf, ctx) { if (rf & 1) {
115
+ const _r35 = i0.ɵɵgetCurrentView();
116
+ i0.ɵɵelementStart(0, "button", 27);
117
+ i0.ɵɵlistener("click", function UserViewGridComponent_Conditional_23_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r35); const ctx_r34 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r34.RefreshFromSavedParams()); });
118
+ i0.ɵɵelement(1, "span", 28);
119
+ i0.ɵɵtext(2, " Refresh ");
120
+ i0.ɵɵelementEnd();
121
121
  } }
122
122
  const _c6 = () => ({ "text-align": "center", "vertical-align": "center" });
123
123
  const _c7 = () => ({ "font-weight": "bold", "background-color": "white" });
124
- function UserViewGridComponent_kendo_grid_checkbox_column_4_Template(rf, ctx) { if (rf & 1) {
125
- i0.ɵɵelement(0, "kendo-grid-checkbox-column", 21);
124
+ function UserViewGridComponent_kendo_grid_checkbox_column_26_Template(rf, ctx) { if (rf & 1) {
125
+ i0.ɵɵelement(0, "kendo-grid-checkbox-column", 29);
126
126
  } if (rf & 2) {
127
127
  i0.ɵɵstyleMap(i0.ɵɵpureFunction0(4, _c6));
128
128
  i0.ɵɵproperty("width", 50)("headerStyle", i0.ɵɵpureFunction0(5, _c7));
129
129
  } }
130
- function UserViewGridComponent_kendo_grid_column_5_1_ng_template_0_Template(rf, ctx) { if (rf & 1) {
131
- i0.ɵɵtext(0);
132
- i0.ɵɵpipe(1, "number");
133
- i0.ɵɵpipe(2, "number");
134
- i0.ɵɵelement(3, "br");
135
- i0.ɵɵelementStart(4, "span", 24);
136
- i0.ɵɵtext(5);
137
- i0.ɵɵpipe(6, "number");
138
- i0.ɵɵelementEnd();
130
+ function UserViewGridComponent_kendo_grid_column_27_Template(rf, ctx) { if (rf & 1) {
131
+ i0.ɵɵelement(0, "kendo-grid-column", 30);
139
132
  } if (rf & 2) {
140
- const ctx_r34 = i0.ɵɵnextContext(3);
141
- i0.ɵɵtextInterpolate2(" ", i0.ɵɵpipeBind1(1, 3, ctx_r34.viewData.length), "", ctx_r34.totalRowCount > ctx_r34.viewData.length ? " of " + i0.ɵɵpipeBind1(2, 5, ctx_r34.totalRowCount) : " rows", "");
142
- i0.ɵɵadvance(5);
143
- i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind2(6, 7, ctx_r34.viewExecutionTime, "1.2-2"), " seconds");
144
- } }
145
- function UserViewGridComponent_kendo_grid_column_5_1_Template(rf, ctx) { if (rf & 1) {
146
- i0.ɵɵtemplate(0, UserViewGridComponent_kendo_grid_column_5_1_ng_template_0_Template, 7, 10, "ng-template", 23);
133
+ const item_r36 = ctx.$implicit;
134
+ const ctx_r13 = i0.ɵɵnextContext();
135
+ i0.ɵɵstyleMap(ctx_r13.GetColumnCellStyle(item_r36));
136
+ i0.ɵɵproperty("field", item_r36.Name)("title", ctx_r13.GetColumnTitle(item_r36))("width", item_r36.width ? item_r36.width : 100)("editable", item_r36.EntityField.AllowUpdateAPI)("editor", ctx_r13.getEditor(item_r36.EntityField))("headerStyle", i0.ɵɵpureFunction0(8, _c7));
147
137
  } }
148
- function UserViewGridComponent_kendo_grid_column_5_Template(rf, ctx) { if (rf & 1) {
149
- i0.ɵɵelementStart(0, "kendo-grid-column", 22);
150
- i0.ɵɵtemplate(1, UserViewGridComponent_kendo_grid_column_5_1_Template, 1, 0, null, 10);
151
- i0.ɵɵelementEnd();
138
+ function UserViewGridComponent_kendo_excelexport_column_30_Template(rf, ctx) { if (rf & 1) {
139
+ i0.ɵɵelement(0, "kendo-excelexport-column", 31);
152
140
  } if (rf & 2) {
153
- const item_r32 = ctx.$implicit;
154
- const ctx_r3 = i0.ɵɵnextContext();
155
- i0.ɵɵstyleMap(ctx_r3.GetColumnCellStyle(item_r32));
156
- i0.ɵɵproperty("field", item_r32.Name)("title", ctx_r3.GetColumnTitle(item_r32))("width", item_r32.width ? item_r32.width : 100)("editable", item_r32.EntityField.AllowUpdateAPI)("editor", ctx_r3.getEditor(item_r32.EntityField))("headerStyle", i0.ɵɵpureFunction0(9, _c7));
157
- i0.ɵɵadvance();
158
- i0.ɵɵproperty("ngIf", item_r32 === ctx_r3.visibleColumns[0]);
141
+ const exportCol_r37 = ctx.$implicit;
142
+ i0.ɵɵproperty("field", exportCol_r37.Name)("title", exportCol_r37.Name);
159
143
  } }
160
- function UserViewGridComponent_kendo_excelexport_column_8_Template(rf, ctx) { if (rf & 1) {
161
- i0.ɵɵelement(0, "kendo-excelexport-column", 25);
162
- } if (rf & 2) {
163
- const exportCol_r35 = ctx.$implicit;
164
- i0.ɵɵproperty("field", exportCol_r35.Name)("title", exportCol_r35.Name);
144
+ function UserViewGridComponent_div_33_kendo_window_2_button_5_Template(rf, ctx) { if (rf & 1) {
145
+ const _r46 = i0.ɵɵgetCurrentView();
146
+ i0.ɵɵelementStart(0, "button", 42);
147
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_button_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r46); const ctx_r45 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r45.closeCompareDialog("merge")); });
148
+ i0.ɵɵtext(1, " Merge Records ");
149
+ i0.ɵɵelementEnd();
165
150
  } }
166
- function UserViewGridComponent_div_11_kendo_window_2_button_5_Template(rf, ctx) { if (rf & 1) {
167
- const _r43 = i0.ɵɵgetCurrentView();
168
- i0.ɵɵelementStart(0, "button", 36);
169
- i0.ɵɵlistener("click", function UserViewGridComponent_div_11_kendo_window_2_button_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r43); const ctx_r42 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r42.closeCompareDialog("close")); });
170
- i0.ɵɵtext(1, "Close");
151
+ function UserViewGridComponent_div_33_kendo_window_2_button_6_Template(rf, ctx) { if (rf & 1) {
152
+ const _r48 = i0.ɵɵgetCurrentView();
153
+ i0.ɵɵelementStart(0, "button", 42);
154
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_button_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r48); const ctx_r47 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r47.fimdDuplicateRecords()); });
155
+ i0.ɵɵtext(1, " Search for Duplicates ");
171
156
  i0.ɵɵelementEnd();
172
157
  } }
173
- function UserViewGridComponent_div_11_kendo_window_2_button_6_Template(rf, ctx) { if (rf & 1) {
174
- const _r45 = i0.ɵɵgetCurrentView();
175
- i0.ɵɵelementStart(0, "button", 36);
176
- i0.ɵɵlistener("click", function UserViewGridComponent_div_11_kendo_window_2_button_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r45); const ctx_r44 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r44.closeCompareDialog("cancel")); });
177
- i0.ɵɵtext(1, "Cancel");
158
+ function UserViewGridComponent_div_33_kendo_window_2_button_7_Template(rf, ctx) { if (rf & 1) {
159
+ const _r50 = i0.ɵɵgetCurrentView();
160
+ i0.ɵɵelementStart(0, "button", 43);
161
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_button_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r50); const ctx_r49 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r49.closeCompareDialog("close")); });
162
+ i0.ɵɵtext(1, " Close ");
178
163
  i0.ɵɵelementEnd();
179
164
  } }
180
- function UserViewGridComponent_div_11_kendo_window_2_button_7_Template(rf, ctx) { if (rf & 1) {
181
- const _r47 = i0.ɵɵgetCurrentView();
182
- i0.ɵɵelementStart(0, "button", 37);
183
- i0.ɵɵlistener("click", function UserViewGridComponent_div_11_kendo_window_2_button_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r47); const ctx_r46 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r46.closeCompareDialog("merge")); });
184
- i0.ɵɵtext(1, " Merge Records ");
165
+ function UserViewGridComponent_div_33_kendo_window_2_button_8_Template(rf, ctx) { if (rf & 1) {
166
+ const _r52 = i0.ɵɵgetCurrentView();
167
+ i0.ɵɵelementStart(0, "button", 43);
168
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_button_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r52); const ctx_r51 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r51.closeCompareDialog("cancel")); });
169
+ i0.ɵɵtext(1, " Cancel ");
185
170
  i0.ɵɵelementEnd();
186
171
  } }
187
- function UserViewGridComponent_div_11_kendo_window_2_kendo_dialog_8_Template(rf, ctx) { if (rf & 1) {
188
- const _r49 = i0.ɵɵgetCurrentView();
189
- i0.ɵɵelementStart(0, "kendo-dialog", 38);
190
- i0.ɵɵlistener("close", function UserViewGridComponent_div_11_kendo_window_2_kendo_dialog_8_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r49); const ctx_r48 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r48.closeConfirmMergeDialog("cancel")); });
191
- i0.ɵɵelementStart(1, "p", 39);
172
+ function UserViewGridComponent_div_33_kendo_window_2_kendo_dialog_9_Template(rf, ctx) { if (rf & 1) {
173
+ const _r54 = i0.ɵɵgetCurrentView();
174
+ i0.ɵɵelementStart(0, "kendo-dialog", 44);
175
+ i0.ɵɵlistener("close", function UserViewGridComponent_div_33_kendo_window_2_kendo_dialog_9_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r54); const ctx_r53 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r53.closeConfirmMergeDialog("cancel")); });
176
+ i0.ɵɵelementStart(1, "p", 45);
192
177
  i0.ɵɵtext(2, " Are you sure you want to merge the records? This action cannot be undone. If you select \"Yes\", the records will be merged and the duplicate records will be deleted. ");
193
178
  i0.ɵɵelementEnd();
194
- i0.ɵɵelementStart(3, "kendo-dialog-actions")(4, "button", 15);
195
- i0.ɵɵlistener("click", function UserViewGridComponent_div_11_kendo_window_2_kendo_dialog_8_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r49); const ctx_r50 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r50.closeConfirmMergeDialog("no")); });
179
+ i0.ɵɵelementStart(3, "kendo-dialog-actions")(4, "button", 43);
180
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_kendo_dialog_9_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r54); const ctx_r55 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r55.closeConfirmMergeDialog("no")); });
196
181
  i0.ɵɵtext(5, "No");
197
182
  i0.ɵɵelementEnd();
198
- i0.ɵɵelementStart(6, "button", 40);
199
- i0.ɵɵlistener("click", function UserViewGridComponent_div_11_kendo_window_2_kendo_dialog_8_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r49); const ctx_r51 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r51.closeConfirmMergeDialog("yes")); });
183
+ i0.ɵɵelementStart(6, "button", 46);
184
+ i0.ɵɵlistener("click", function UserViewGridComponent_div_33_kendo_window_2_kendo_dialog_9_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r54); const ctx_r56 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r56.closeConfirmMergeDialog("yes")); });
200
185
  i0.ɵɵtext(7, " Yes ");
201
186
  i0.ɵɵelementEnd()()();
202
187
  } if (rf & 2) {
203
188
  i0.ɵɵproperty("minWidth", 250)("width", 450);
204
189
  } }
205
- function UserViewGridComponent_div_11_kendo_window_2_Template(rf, ctx) { if (rf & 1) {
206
- const _r53 = i0.ɵɵgetCurrentView();
207
- i0.ɵɵelementStart(0, "kendo-window", 28);
208
- i0.ɵɵlistener("close", function UserViewGridComponent_div_11_kendo_window_2_Template_kendo_window_close_0_listener($event) { i0.ɵɵrestoreView(_r53); const ctx_r52 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r52.closeCompareDialog($event)); });
209
- i0.ɵɵelementStart(1, "div", 29);
210
- i0.ɵɵelement(2, "mj-compare-records", 30, 31);
190
+ function UserViewGridComponent_div_33_kendo_window_2_Template(rf, ctx) { if (rf & 1) {
191
+ const _r58 = i0.ɵɵgetCurrentView();
192
+ i0.ɵɵelementStart(0, "kendo-window", 34);
193
+ i0.ɵɵlistener("close", function UserViewGridComponent_div_33_kendo_window_2_Template_kendo_window_close_0_listener($event) { i0.ɵɵrestoreView(_r58); const ctx_r57 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r57.closeCompareDialog($event)); });
194
+ i0.ɵɵelementStart(1, "div", 35);
195
+ i0.ɵɵelement(2, "mj-compare-records", 36, 37);
211
196
  i0.ɵɵelementEnd();
212
- i0.ɵɵelementStart(4, "div", 32);
213
- i0.ɵɵtemplate(5, UserViewGridComponent_div_11_kendo_window_2_button_5_Template, 2, 0, "button", 33)(6, UserViewGridComponent_div_11_kendo_window_2_button_6_Template, 2, 0, "button", 33)(7, UserViewGridComponent_div_11_kendo_window_2_button_7_Template, 2, 0, "button", 34);
197
+ i0.ɵɵelementStart(4, "div", 38);
198
+ i0.ɵɵtemplate(5, UserViewGridComponent_div_33_kendo_window_2_button_5_Template, 2, 0, "button", 39)(6, UserViewGridComponent_div_33_kendo_window_2_button_6_Template, 2, 0, "button", 39)(7, UserViewGridComponent_div_33_kendo_window_2_button_7_Template, 2, 0, "button", 40)(8, UserViewGridComponent_div_33_kendo_window_2_button_8_Template, 2, 0, "button", 40);
214
199
  i0.ɵɵelementEnd();
215
- i0.ɵɵtemplate(8, UserViewGridComponent_div_11_kendo_window_2_kendo_dialog_8_Template, 8, 2, "kendo-dialog", 35);
200
+ i0.ɵɵtemplate(9, UserViewGridComponent_div_33_kendo_window_2_kendo_dialog_9_Template, 8, 2, "kendo-dialog", 41);
216
201
  i0.ɵɵelementEnd();
217
202
  } if (rf & 2) {
218
- const ctx_r36 = i0.ɵɵnextContext(2);
203
+ const ctx_r38 = i0.ɵɵnextContext(2);
219
204
  i0.ɵɵproperty("minHeight", 300)("minWidth", 800)("top", 100)("left", 100)("width", 1200)("height", 675)("resizable", true);
220
205
  i0.ɵɵadvance();
221
206
  i0.ɵɵproperty("fillHeight", true)("bottomMargin", 100);
222
207
  i0.ɵɵadvance();
223
- i0.ɵɵproperty("entityName", ctx_r36._entityInfo ? ctx_r36._entityInfo.Name : "")("recordsToCompare", ctx_r36.recordsToCompare)("visibleColumns", ctx_r36.visibleColumns)("selectionMode", ctx_r36.mergeMode ? true : false);
208
+ i0.ɵɵproperty("entityName", ctx_r38._entityInfo ? ctx_r38._entityInfo.Name : "")("recordsToCompare", ctx_r38.recordsToCompare)("visibleColumns", ctx_r38.visibleColumns)("selectionMode", ctx_r38.mergeMode ? true : false);
224
209
  i0.ɵɵadvance(3);
225
- i0.ɵɵproperty("ngIf", ctx_r36.compareMode);
210
+ i0.ɵɵproperty("ngIf", ctx_r38.mergeMode);
211
+ i0.ɵɵadvance();
212
+ i0.ɵɵproperty("ngIf", ctx_r38.duplicateMode);
226
213
  i0.ɵɵadvance();
227
- i0.ɵɵproperty("ngIf", ctx_r36.mergeMode);
214
+ i0.ɵɵproperty("ngIf", ctx_r38.compareMode);
228
215
  i0.ɵɵadvance();
229
- i0.ɵɵproperty("ngIf", ctx_r36.mergeMode);
216
+ i0.ɵɵproperty("ngIf", ctx_r38.mergeMode || ctx_r38.duplicateMode);
230
217
  i0.ɵɵadvance();
231
- i0.ɵɵproperty("ngIf", ctx_r36.isConfirmDialogOpen);
218
+ i0.ɵɵproperty("ngIf", ctx_r38.isConfirmDialogOpen);
232
219
  } }
233
- function UserViewGridComponent_div_11_Template(rf, ctx) { if (rf & 1) {
220
+ function UserViewGridComponent_div_33_Template(rf, ctx) { if (rf & 1) {
234
221
  i0.ɵɵelementStart(0, "div");
235
- i0.ɵɵelement(1, "div", 26);
236
- i0.ɵɵtemplate(2, UserViewGridComponent_div_11_kendo_window_2_Template, 9, 17, "kendo-window", 27);
222
+ i0.ɵɵelement(1, "div", 32);
223
+ i0.ɵɵtemplate(2, UserViewGridComponent_div_33_kendo_window_2_Template, 10, 18, "kendo-window", 33);
237
224
  i0.ɵɵelementEnd();
238
225
  } if (rf & 2) {
239
- const ctx_r7 = i0.ɵɵnextContext();
226
+ const ctx_r17 = i0.ɵɵnextContext();
240
227
  i0.ɵɵadvance(2);
241
- i0.ɵɵproperty("ngIf", ctx_r7.isCompareDialogOpened);
228
+ i0.ɵɵproperty("ngIf", ctx_r17.isCompareDialogOpened);
242
229
  } }
243
230
  export class UserViewGridComponent {
244
231
  get PendingRecords() {
@@ -368,6 +355,7 @@ export class UserViewGridComponent {
368
355
  this.recordsToCompare = [];
369
356
  this.compareMode = false;
370
357
  this.mergeMode = false;
358
+ this.duplicateMode = false;
371
359
  this.selectableSettings = {
372
360
  enabled: false
373
361
  };
@@ -858,6 +846,33 @@ export class UserViewGridComponent {
858
846
  this.compareMode = true;
859
847
  }
860
848
  }
849
+ enableCheckbox(cancel = false, type) {
850
+ if (!cancel && this.recordsToCompare.length >= 2) {
851
+ // this scenario occurs when we've already started the merge/compare/duplicate and the user has selected records, then clicked the merge/compare button again
852
+ this.isCompareDialogOpened = true;
853
+ this.moveDialogToBody();
854
+ }
855
+ else if (cancel) {
856
+ // the user clicked cancel in our toolbar
857
+ this.mergeMode = false;
858
+ this.compareMode = false;
859
+ this.duplicateMode = false;
860
+ this.selectedKeys = [];
861
+ this.recordsToCompare = [];
862
+ }
863
+ else {
864
+ // just turning on the checkbox from the merge/compare/duplicate button, so just turn it on and let the user select records
865
+ if (type === 'merge') {
866
+ this.mergeMode = true;
867
+ }
868
+ else if (type === 'compare') {
869
+ this.compareMode = true;
870
+ }
871
+ else if (type === 'duplicate') {
872
+ this.duplicateMode = true;
873
+ }
874
+ }
875
+ }
861
876
  closeConfirmMergeDialog(event) {
862
877
  return __awaiter(this, void 0, void 0, function* () {
863
878
  if (event === 'yes') {
@@ -927,11 +942,34 @@ export class UserViewGridComponent {
927
942
  this.recordsToCompare = [];
928
943
  this.mergeMode = false;
929
944
  this.compareMode = false;
945
+ this.duplicateMode = false;
930
946
  this.isCompareDialogOpened = false;
931
947
  break;
932
948
  }
933
949
  });
934
950
  }
951
+ fimdDuplicateRecords() {
952
+ var _a, _b;
953
+ return __awaiter(this, void 0, void 0, function* () {
954
+ if (!this._entityInfo) {
955
+ console.error("Entity Info is not available");
956
+ this.closeCompareDialog('duplicate');
957
+ return;
958
+ }
959
+ let params = new PotentialDuplicateRequest();
960
+ params.EntityName = (_a = this._entityInfo) === null || _a === void 0 ? void 0 : _a.Name;
961
+ params.EntityID = (_b = this._entityInfo) === null || _b === void 0 ? void 0 : _b.ID;
962
+ params.PrimaryKeyValues = [];
963
+ for (const index of this.selectedKeys) {
964
+ const viewData = this.viewData[index];
965
+ const idField = viewData.ID;
966
+ params.PrimaryKeyValues.push({ FieldName: "ID", Value: idField });
967
+ }
968
+ //const md: Metadata = new Metadata();
969
+ //await md.GetRecordDuplicates(params);
970
+ this.CreateSimpleNotification("Working on finding duplicates, will notify you when it is complete...", 'info', 2000);
971
+ });
972
+ }
935
973
  doExcelExport() {
936
974
  return __awaiter(this, void 0, void 0, function* () {
937
975
  if (this.kendoExcelExport === null)
@@ -989,24 +1027,63 @@ UserViewGridComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserV
989
1027
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.analysisQuestion = _t.first);
990
1028
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.analysisResults = _t.first);
991
1029
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.compareDialogContainer = _t.first);
992
- } }, inputs: { Params: "Params", BottomMargin: "BottomMargin", InEditMode: "InEditMode", EditMode: "EditMode", AutoNavigate: "AutoNavigate", AllowLoad: "AllowLoad" }, outputs: { rowClicked: "rowClicked", rowEdited: "rowEdited" }, decls: 12, vars: 19, consts: [["mjFillContainer", "", 1, "user-view-grid-wrap"], ["mjFillContainer", "", "scrollable", "virtual", "kendoGridSelectBy", "", 3, "resizable", "data", "skip", "pageSize", "rowHeight", "loading", "height", "sortable", "sort", "reorderable", "selectable", "selectedKeys", "pageChange", "selectedKeysChange", "cellClick", "cellClose", "columnReorder", "columnResize", "selectionChange", "sortChange"], ["kendoGrid", ""], ["kendoGridToolbarTemplate", ""], [3, "width", "headerStyle", "style", 4, "ngIf"], [3, "field", "title", "width", "editable", "editor", "headerStyle", "style", 4, "ngFor", "ngForOf"], [3, "data", "fileName"], ["excelExport", ""], [3, "field", "title", 4, "ngFor", "ngForOf"], ["compareDialogContainer", ""], [4, "ngIf"], ["kendoButton", "", 3, "click", 4, "ngIf"], ["class", "k-button k-button-md k-rounded-md k-button-solid-base k-button-solid", 3, "disabled", "click", 4, "ngIf"], ["class", "k-button k-button-md k-rounded-md k-button-solid-base k-button-solid", 3, "click", 4, "ngIf"], ["kendoButton", "", "themeColor", "info", 3, "click", 4, "ngIf"], ["kendoButton", "", 3, "click"], [1, "fa-regular", "fa-file-excel"], [1, "k-button", "k-button-md", "k-rounded-md", "k-button-solid-base", "k-button-solid", 3, "disabled", "click"], [1, "k-button", "k-button-md", "k-rounded-md", "k-button-solid-base", "k-button-solid", 3, "click"], ["kendoButton", "", "themeColor", "info", 3, "click"], [1, "fa-solid", "fa-arrow-rotate-right"], [3, "width", "headerStyle"], [3, "field", "title", "width", "editable", "editor", "headerStyle"], ["kendoGridFooterTemplate", ""], [2, "font-size", "smaller", "font-weight", "normal"], [3, "field", "title"], [1, "k-overlay"], ["title", "Compare Records", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", 4, "ngIf"], ["title", "Compare Records", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close"], ["mjFillContainer", "", 3, "fillHeight", "bottomMargin"], [3, "entityName", "recordsToCompare", "visibleColumns", "selectionMode"], ["recordCompareRef", ""], [1, "k-actions", "k-actions-end"], ["kendoButton", "", "type", "button", 3, "click", 4, "ngIf"], ["kendoButton", "", "themeColor", "primary", "type", "button", 3, "click", 4, "ngIf"], ["title", "Confirm Choice", 3, "minWidth", "width", "close", 4, "ngIf"], ["kendoButton", "", "type", "button", 3, "click"], ["kendoButton", "", "themeColor", "primary", "type", "button", 3, "click"], ["title", "Confirm Choice", 3, "minWidth", "width", "close"], [2, "margin", "30px", "text-align", "center"], ["kendoButton", "", "themeColor", "primary", 3, "click"]], template: function UserViewGridComponent_Template(rf, ctx) { if (rf & 1) {
993
- i0.ɵɵelementStart(0, "div", 0)(1, "kendo-grid", 1, 2);
994
- i0.ɵɵlistener("pageChange", function UserViewGridComponent_Template_kendo_grid_pageChange_1_listener($event) { return ctx.pageChange($event); });
995
- i0.ɵɵtwoWayListener("selectedKeysChange", function UserViewGridComponent_Template_kendo_grid_selectedKeysChange_1_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.selectedKeys, $event) || (ctx.selectedKeys = $event); return $event; });
996
- i0.ɵɵlistener("cellClick", function UserViewGridComponent_Template_kendo_grid_cellClick_1_listener($event) { return ctx.cellClickHandler($event); })("cellClose", function UserViewGridComponent_Template_kendo_grid_cellClose_1_listener($event) { return ctx.cellCloseHandler($event); })("columnReorder", function UserViewGridComponent_Template_kendo_grid_columnReorder_1_listener($event) { return ctx.columnReorder($event); })("columnResize", function UserViewGridComponent_Template_kendo_grid_columnResize_1_listener($event) { return ctx.columnResize($event); })("selectionChange", function UserViewGridComponent_Template_kendo_grid_selectionChange_1_listener($event) { return ctx.selectionChange($event); })("sortChange", function UserViewGridComponent_Template_kendo_grid_sortChange_1_listener($event) { return ctx.sortChanged($event); });
997
- i0.ɵɵtemplate(3, UserViewGridComponent_ng_template_3_Template, 8, 8, "ng-template", 3)(4, UserViewGridComponent_kendo_grid_checkbox_column_4_Template, 1, 6, "kendo-grid-checkbox-column", 4)(5, UserViewGridComponent_kendo_grid_column_5_Template, 2, 10, "kendo-grid-column", 5);
998
- i0.ɵɵelementStart(6, "kendo-excelexport", 6, 7);
999
- i0.ɵɵtemplate(8, UserViewGridComponent_kendo_excelexport_column_8_Template, 1, 2, "kendo-excelexport-column", 8);
1030
+ } }, inputs: { Params: "Params", BottomMargin: "BottomMargin", InEditMode: "InEditMode", EditMode: "EditMode", AutoNavigate: "AutoNavigate", AllowLoad: "AllowLoad" }, outputs: { rowClicked: "rowClicked", rowEdited: "rowEdited" }, decls: 34, vars: 33, consts: [["mjFillContainer", "", 1, "user-view-grid-wrap"], [1, "flex-direction-row"], [1, "flex-direction-row", "gap-large"], [1, "flex-direction-column"], [2, "font-size", "smaller", "font-weight", "normal"], [1, "title-wrapper"], [1, "search"], ["type", "text", "placeholder", "Search in view...", "size", "large", "rounded", "large", "fillMode", "solid", 3, "clearButton"], ["searchInput", ""], ["kendoTextBoxPrefixTemplate", "", 3, "showSeparator"], [1, "flex-direction-row", "gap-small"], ["kendoButton", "", "class", "k-button-solid-base list-button"], ["kendoButton", "", "class", "k-button-solid-base list-button", 3, "disabled", "click", 4, "ngIf"], ["kendoButton", "", "class", "list-button"], ["mjFillContainer", "", "scrollable", "virtual", "kendoGridSelectBy", "", 3, "resizable", "data", "skip", "pageSize", "rowHeight", "loading", "height", "sortable", "sort", "reorderable", "selectable", "selectedKeys", "pageChange", "selectedKeysChange", "cellClick", "cellClose", "columnReorder", "columnResize", "selectionChange", "sortChange"], ["kendoGrid", ""], [3, "width", "headerStyle", "style", 4, "ngIf"], [3, "field", "title", "width", "editable", "editor", "headerStyle", "style", 4, "ngFor", "ngForOf"], [3, "data", "fileName"], ["excelExport", ""], [3, "field", "title", 4, "ngFor", "ngForOf"], ["compareDialogContainer", ""], [4, "ngIf"], [1, "fa-solid", "fa-magnifying-glass", "margin-left-small"], ["kendoButton", "", 1, "k-button-solid-base", "list-button", 3, "click"], ["Title", "Export to Excel", 1, "fa-solid", "fa-file-excel", "fa-lg"], ["kendoButton", "", 1, "k-button-solid-base", "list-button", 3, "disabled", "click"], ["kendoButton", "", 1, "list-button", 3, "click"], [1, "fa-solid", "fa-arrows-rotate"], [3, "width", "headerStyle"], [3, "field", "title", "width", "editable", "editor", "headerStyle"], [3, "field", "title"], [1, "k-overlay"], ["title", "Compare Records", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", 4, "ngIf"], ["title", "Compare Records", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close"], ["mjFillContainer", "", 3, "fillHeight", "bottomMargin"], [3, "entityName", "recordsToCompare", "visibleColumns", "selectionMode"], ["recordCompareRef", ""], [1, "k-actions", "k-actions-end"], ["kendoButton", "", "class", "k-button-solid-base-filled", 3, "click", 4, "ngIf"], ["kendoButton", "", 3, "click", 4, "ngIf"], ["title", "Confirm Choice", 3, "minWidth", "width", "close", 4, "ngIf"], ["kendoButton", "", 1, "k-button-solid-base-filled", 3, "click"], ["kendoButton", "", 3, "click"], ["title", "Confirm Choice", 3, "minWidth", "width", "close"], [2, "margin", "30px", "text-align", "center"], ["kendoButton", "", "themeColor", "primary", 3, "click"]], template: function UserViewGridComponent_Template(rf, ctx) { if (rf & 1) {
1031
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "b");
1032
+ i0.ɵɵtext(5);
1033
+ i0.ɵɵelementEnd();
1034
+ i0.ɵɵelement(6, "br");
1035
+ i0.ɵɵelementStart(7, "span", 4);
1036
+ i0.ɵɵtext(8);
1037
+ i0.ɵɵelementEnd()();
1038
+ i0.ɵɵelementStart(9, "div", 5)(10, "div", 6)(11, "kendo-textbox", 7, 8);
1039
+ i0.ɵɵtemplate(13, UserViewGridComponent_ng_template_13_Template, 1, 0, "ng-template", 9);
1040
+ i0.ɵɵelementEnd()()()();
1041
+ i0.ɵɵelementStart(14, "div", 10);
1042
+ i0.ɵɵtemplate(15, UserViewGridComponent_Conditional_15_Template, 3, 0, "button", 11)(16, UserViewGridComponent_button_16_Template, 2, 1, "button", 12)(17, UserViewGridComponent_button_17_Template, 2, 1, "button", 12)(18, UserViewGridComponent_button_18_Template, 2, 1, "button", 12)(19, UserViewGridComponent_button_19_Template, 2, 1, "button", 12)(20, UserViewGridComponent_button_20_Template, 2, 1, "button", 12)(21, UserViewGridComponent_button_21_Template, 2, 1, "button", 12)(22, UserViewGridComponent_Conditional_22_Template, 2, 0, "button", 11)(23, UserViewGridComponent_Conditional_23_Template, 3, 0, "button", 13);
1000
1043
  i0.ɵɵelementEnd()();
1001
- i0.ɵɵelementStart(9, "div", null, 9);
1002
- i0.ɵɵtemplate(11, UserViewGridComponent_div_11_Template, 3, 1, "div", 10);
1044
+ i0.ɵɵelementStart(24, "kendo-grid", 14, 15);
1045
+ i0.ɵɵlistener("pageChange", function UserViewGridComponent_Template_kendo_grid_pageChange_24_listener($event) { return ctx.pageChange($event); });
1046
+ i0.ɵɵtwoWayListener("selectedKeysChange", function UserViewGridComponent_Template_kendo_grid_selectedKeysChange_24_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.selectedKeys, $event) || (ctx.selectedKeys = $event); return $event; });
1047
+ i0.ɵɵlistener("cellClick", function UserViewGridComponent_Template_kendo_grid_cellClick_24_listener($event) { return ctx.cellClickHandler($event); })("cellClose", function UserViewGridComponent_Template_kendo_grid_cellClose_24_listener($event) { return ctx.cellCloseHandler($event); })("columnReorder", function UserViewGridComponent_Template_kendo_grid_columnReorder_24_listener($event) { return ctx.columnReorder($event); })("columnResize", function UserViewGridComponent_Template_kendo_grid_columnResize_24_listener($event) { return ctx.columnResize($event); })("selectionChange", function UserViewGridComponent_Template_kendo_grid_selectionChange_24_listener($event) { return ctx.selectionChange($event); })("sortChange", function UserViewGridComponent_Template_kendo_grid_sortChange_24_listener($event) { return ctx.sortChanged($event); });
1048
+ i0.ɵɵtemplate(26, UserViewGridComponent_kendo_grid_checkbox_column_26_Template, 1, 6, "kendo-grid-checkbox-column", 16)(27, UserViewGridComponent_kendo_grid_column_27_Template, 1, 9, "kendo-grid-column", 17);
1049
+ i0.ɵɵelementStart(28, "kendo-excelexport", 18, 19);
1050
+ i0.ɵɵtemplate(30, UserViewGridComponent_kendo_excelexport_column_30_Template, 1, 2, "kendo-excelexport-column", 20);
1051
+ i0.ɵɵelementEnd()();
1052
+ i0.ɵɵelementStart(31, "div", null, 21);
1053
+ i0.ɵɵtemplate(33, UserViewGridComponent_div_33_Template, 3, 1, "div", 22);
1003
1054
  i0.ɵɵelementEnd()();
1004
1055
  } if (rf & 2) {
1056
+ i0.ɵɵadvance(5);
1057
+ i0.ɵɵtextInterpolate2("Showing ", ctx.viewData.length, " of ", ctx.totalRowCount, " rows");
1058
+ i0.ɵɵadvance(3);
1059
+ i0.ɵɵtextInterpolate1(" ", ctx.viewExecutionTime, " seconds ");
1060
+ i0.ɵɵadvance(3);
1061
+ i0.ɵɵproperty("clearButton", true);
1062
+ i0.ɵɵadvance(2);
1063
+ i0.ɵɵproperty("showSeparator", true);
1064
+ i0.ɵɵadvance(2);
1065
+ i0.ɵɵconditional(15, !ctx.compareMode && !ctx.mergeMode && !ctx.duplicateMode ? 15 : -1);
1066
+ i0.ɵɵadvance();
1067
+ i0.ɵɵproperty("ngIf", !ctx.compareMode && !ctx.mergeMode && !ctx.duplicateMode);
1068
+ i0.ɵɵadvance();
1069
+ i0.ɵɵproperty("ngIf", ctx.duplicateMode);
1070
+ i0.ɵɵadvance();
1071
+ i0.ɵɵproperty("ngIf", !ctx.compareMode && !ctx.mergeMode && !ctx.duplicateMode);
1072
+ i0.ɵɵadvance();
1073
+ i0.ɵɵproperty("ngIf", ctx.compareMode);
1074
+ i0.ɵɵadvance();
1075
+ i0.ɵɵproperty("ngIf", !ctx.mergeMode && !ctx.compareMode && !ctx.duplicateMode);
1076
+ i0.ɵɵadvance();
1077
+ i0.ɵɵproperty("ngIf", ctx.mergeMode);
1078
+ i0.ɵɵadvance();
1079
+ i0.ɵɵconditional(22, ctx.compareMode || ctx.mergeMode || ctx.duplicateMode ? 22 : -1);
1080
+ i0.ɵɵadvance();
1081
+ i0.ɵɵconditional(23, ctx.showRefreshButton && !ctx.compareMode && !ctx.mergeMode && !ctx.duplicateMode ? 23 : -1);
1005
1082
  i0.ɵɵadvance();
1006
1083
  i0.ɵɵproperty("resizable", true)("data", ctx.gridView)("skip", ctx.skip)("pageSize", ctx.pageSize)("rowHeight", 36)("loading", ctx.isLoading)("height", ctx.gridHeight)("sortable", true)("sort", ctx.sortSettings)("resizable", true)("reorderable", true)("selectable", true);
1007
1084
  i0.ɵɵtwoWayProperty("selectedKeys", ctx.selectedKeys);
1008
- i0.ɵɵadvance(3);
1009
- i0.ɵɵproperty("ngIf", ctx.compareMode || ctx.mergeMode);
1085
+ i0.ɵɵadvance(2);
1086
+ i0.ɵɵproperty("ngIf", ctx.compareMode || ctx.mergeMode || ctx.duplicateMode);
1010
1087
  i0.ɵɵadvance();
1011
1088
  i0.ɵɵproperty("ngForOf", ctx.visibleColumns);
1012
1089
  i0.ɵɵadvance();
@@ -1015,10 +1092,10 @@ UserViewGridComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserV
1015
1092
  i0.ɵɵproperty("ngForOf", ctx.exportColumns);
1016
1093
  i0.ɵɵadvance(3);
1017
1094
  i0.ɵɵproperty("ngIf", ctx.isCompareDialogOpened);
1018
- } }, dependencies: [i3.NgForOf, i3.NgIf, i4.GridComponent, i4.ToolbarTemplateDirective, i4.SelectionDirective, i4.ColumnComponent, i4.FooterTemplateDirective, i4.CheckboxColumnComponent, i5.DialogComponent, i5.DialogActionsComponent, i5.WindowComponent, i6.ExcelExportComponent, i6.ColumnComponent, i7.ButtonComponent, i8.CompareRecordsComponent, i9.FillContainer, i3.DecimalPipe], styles: [".user-view-grid-wrap[_ngcontent-%COMP%] {\n height: calc(100vh - 20px);\n}\n\n.user-view-grid-column-header[_ngcontent-%COMP%] {\n background-color: #fff;\n font-size: 20pt;\n font-weight: bold;\n}\n\n.title-wrapper[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 14px 0;\n border-bottom: 1px solid var(--med-gray);\n}\n .title-wrapper[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 24px;\n line-height: 28px;\n }\n .main-fav-wrapper[_ngcontent-%COMP%] {\n background: #fff;\n padding: 20px;\n }\n .filter-wrapper[_ngcontent-%COMP%] {\n display: flex;\n justify-content: flex-start;\n gap: 14px;\n align-items: center;\n}\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n\n }\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n }\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] svg[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n.k-table-td[_ngcontent-%COMP%] {\n border-right: none !important;\n}.btn-cmn[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n min-width: 44px;\n background: transparent;\n border-radius: 8px;\n border: 1px solid var(--gray-color);\n}\n.btn-cmn.active[_ngcontent-%COMP%] {\n border: 1px solid var(--border-blue);\n}\n .title-wrapper .filter-wrapper .k-dropdown-button .k-button {\n border: 1px solid var(--gray-color);\n border-radius: 8px; padding: 10px 25px;\n background: var(--white-color);\n color: var(--sideNav);\n}\n .user-view-grid-wrap .k-grid-aria-root .k-grid-header .k-grid-header-table thead tr th {\n border-right: none;\n border-inline-start-width: 0;\n color: var(--thead-color);\n}\n .user-view-grid-wrap .k-grid-aria-root kendo-grid-list .k-grid-table tbody tr td { \n border-inline-start-width: 0;\n color: var(--tdata-color);\n font-weight: 500;\n border-bottom-width: 1px;\n}"] });
1095
+ } }, dependencies: [i3.NgForOf, i3.NgIf, i4.GridComponent, i4.SelectionDirective, i4.ColumnComponent, i4.CheckboxColumnComponent, i5.DialogComponent, i5.DialogActionsComponent, i5.WindowComponent, i6.ExcelExportComponent, i6.ColumnComponent, i7.ButtonComponent, i8.CompareRecordsComponent, i9.FillContainer, i10.TextBoxComponent, i10.TextBoxPrefixTemplateDirective], styles: [".user-view-grid-wrap[_ngcontent-%COMP%] {\n height: calc(100vh - 20px);\n}\n\n.user-view-grid-column-header[_ngcontent-%COMP%] {\n background-color: #fff;\n font-size: 20pt;\n font-weight: bold;\n}\n\n.title-wrapper[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 14px 0;\n border-bottom: 1px solid var(--med-gray);\n}\n .title-wrapper[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 24px;\n line-height: 28px;\n }\n .main-fav-wrapper[_ngcontent-%COMP%] {\n background: #fff;\n padding: 20px;\n }\n .filter-wrapper[_ngcontent-%COMP%] {\n display: flex;\n justify-content: flex-start;\n gap: 14px;\n align-items: center;\n}\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n\n }\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n }\n .title-wrapper[_ngcontent-%COMP%] .search[_ngcontent-%COMP%] svg[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n.k-table-td[_ngcontent-%COMP%] {\n border-right: none !important;\n}.btn-cmn[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n min-width: 44px;\n background: transparent;\n border-radius: 8px;\n border: 1px solid var(--gray-color);\n}\n.btn-cmn.active[_ngcontent-%COMP%] {\n border: 1px solid var(--border-blue);\n}\n .title-wrapper .filter-wrapper .k-dropdown-button .k-button {\n border: 1px solid var(--gray-color);\n border-radius: 8px; padding: 10px 25px;\n background: var(--white-color);\n color: var(--sideNav);\n}\n .user-view-grid-wrap .k-grid-aria-root .k-grid-header .k-grid-header-table thead tr th {\n border-right: none;\n border-inline-start-width: 0;\n color: var(--thead-color);\n}\n .user-view-grid-wrap .k-grid-aria-root kendo-grid-list .k-grid-table tbody tr td { \n border-inline-start-width: 0;\n color: var(--tdata-color);\n font-weight: 500;\n border-bottom-width: 1px;\n}\n\n.gap-small[_ngcontent-%COMP%]{\n gap: 8px; \n}\n\n.gap-large[_ngcontent-%COMP%] {\n gap: 20px; \n}\n\n.flex-direction-row[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.flex-direction-column[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: start;\n}\n\n.search[_ngcontent-%COMP%] {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n}\n\n.search[_ngcontent-%COMP%] .fa-magnifying-glass[_ngcontent-%COMP%] {\n margin-left: 10px;\n}\n\n.search[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n}\n\n.search[_ngcontent-%COMP%] svg[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n\n .list-button {\n min-width: 120px;\n width: auto;\n}\n \n .k-button-solid-base {\n border: 1px solid var(--border-blue) !important;\n color: var(--border-blue) !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--white-color);\n }\n\n .k-button-solid-base-black {\n border: 1px solid grey !important;\n color: black !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--white-color);\n }\n \n .k-button-solid-base-filled {\n border: 1px solid var(--border-blue) !important;\n color: var(--white-color) !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--border-blue);\n }\n \n .k-button-solid-base-filled:hover {\n background: var(--border-blue);\n filter: brightness(85%);\n }"] });
1019
1096
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserViewGridComponent, [{
1020
1097
  type: Component,
1021
- args: [{ selector: 'mj-user-view-grid', template: "<div class=\"user-view-grid-wrap\" mjFillContainer>\n <kendo-grid #kendoGrid\n mjFillContainer\n [resizable]=\"true\"\n [data]=\"gridView\" \n [skip]=\"skip\"\n [pageSize]=\"pageSize\"\n scrollable=\"virtual\"\n [rowHeight]=\"36\"\n (pageChange)=\"pageChange($event)\"\n [loading]=\"isLoading\"\n [height]=\"gridHeight\"\n [sortable]=\"true\"\n [sort]=\"sortSettings\" \n [resizable]=\"true\"\n [reorderable]=\"true\"\n [selectable]=\"true\"\n kendoGridSelectBy\n [(selectedKeys)]=\"selectedKeys\"\n (cellClick)=\"cellClickHandler($event)\"\n (cellClose)=\"cellCloseHandler($event)\"\n (columnReorder)=\"columnReorder($event)\"\n (columnResize)=\"columnResize($event)\"\n (selectionChange)=\"selectionChange($event)\"\n (sortChange)=\"sortChanged($event)\"\n >\n <ng-template kendoGridToolbarTemplate>\n \n <button kendoButton *ngIf=\"!compareMode && !mergeMode\" (click)=\"doExcelExport()\" >\n <span class=\"fa-regular fa-file-excel\"></span>\n Export to Excel\n </button>\n <!-- 3 buttons for compare. First one only shows when comparison is going on in the grid, the next one is the one the user starts the process with before records are selected, last one is to cancel the pending compare. -->\n <button (click)=\"enableMergeOrCompare(false, 'compare')\" *ngIf=\"!compareMode && !mergeMode\" [disabled]=\"compareMode && recordsToCompare.length < 2\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Compare</button>\n <button (click)=\"enableMergeOrCompare(false, 'compare')\" *ngIf=\"compareMode\" [disabled]=\"compareMode && recordsToCompare.length < 2\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Compare</button>\n <button (click)=\"enableMergeOrCompare(true, 'compare')\" *ngIf=\"compareMode\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Cancel</button>\n \n <!-- 3 buttons for merge. First one only shows when merge is getting goin in the grid, the next one is the one the user starts the process with before records are selected, last one is to cancel the pending merge. -->\n <button (click)=\"enableMergeOrCompare(false, 'merge')\" *ngIf=\"mergeMode\" [disabled]=\"mergeMode && recordsToCompare.length < 2\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Merge</button>\n <button (click)=\"enableMergeOrCompare(false, 'merge')\" *ngIf=\"!mergeMode && !compareMode\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Merge</button>\n <button (click)=\"enableMergeOrCompare(true, 'merge')\" *ngIf=\"mergeMode\" class=\"k-button k-button-md k-rounded-md k-button-solid-base k-button-solid\">Cancel</button>\n <button\n kendoButton themeColor=\"info\"\n *ngIf=\"showRefreshButton && !compareMode && !mergeMode\"\n (click)=\"RefreshFromSavedParams()\">\n <span class=\"fa-solid fa-arrow-rotate-right\"></span>\n Refresh\n </button>\n </ng-template>\n \n <kendo-grid-checkbox-column \n *ngIf=\"compareMode || mergeMode\" \n [width]=\"50\" \n [headerStyle]=\"{ 'font-weight' : 'bold', 'background-color': 'white' }\" \n [style]=\"{'text-align': 'center', 'vertical-align': 'center'}\">\n </kendo-grid-checkbox-column>\n \n <kendo-grid-column \n *ngFor=\"let item of visibleColumns\" \n [field]=\"item.Name\" \n [title]=\"GetColumnTitle(item)\"\n [width]=\"item.width ? item.width : 100\"\n [editable]=\"item.EntityField.AllowUpdateAPI\"\n [editor]=\"getEditor(item.EntityField)\"\n [headerStyle]=\"{ 'font-weight' : 'bold', 'background-color': 'white' }\"\n [style]=\"this.GetColumnCellStyle(item)\"\n >\n <ng-template *ngIf=\"item===visibleColumns[0]\" kendoGridFooterTemplate >\n {{this.viewData.length | number}}{{this.totalRowCount > this.viewData.length ? ' of ' + (this.totalRowCount | number) : ' rows'}}<br/><span style=\"font-size: smaller; font-weight: normal;\">{{viewExecutionTime | number:'1.2-2'}} seconds</span>\n </ng-template>\n </kendo-grid-column>\n \n <kendo-excelexport #excelExport [data]=\"exportData\" [fileName]=\"(_viewEntity ? _viewEntity.Get('Name') : _entityInfo?.Name) + '.xlsx'\">\n <kendo-excelexport-column *ngFor=\"let exportCol of exportColumns\" [field]=\"exportCol.Name\" [title]=\"exportCol.Name\">\n </kendo-excelexport-column>\n </kendo-excelexport>\n </kendo-grid>\n \n <div #compareDialogContainer>\n <div *ngIf=\"isCompareDialogOpened\">\n <div class=\"k-overlay\"></div>\n <kendo-window\n [minHeight]=\"300\"\n [minWidth]=\"800\"\n [top]=\"100\"\n [left]=\"100\"\n [width]=\"1200\"\n [height]=\"675\"\n [resizable]=\"true\"\n (close)=\"closeCompareDialog($event)\"\n title=\"Compare Records\"\n *ngIf=\"isCompareDialogOpened\"\n >\n <div mjFillContainer [fillHeight]=\"true\" [bottomMargin]=\"100\">\n <mj-compare-records\n #recordCompareRef\n [entityName]=\"_entityInfo ? _entityInfo.Name : ''\"\n [recordsToCompare]=\"recordsToCompare\" \n [visibleColumns]=\"visibleColumns\" \n [selectionMode]=\"mergeMode ? true : false\"\n >\n </mj-compare-records>\n </div>\n <div class=\"k-actions k-actions-end\">\n <button *ngIf=\"compareMode\" kendoButton type=\"button\" (click)=\"closeCompareDialog('close')\">Close</button>\n <button *ngIf=\"mergeMode\"kendoButton type=\"button\" (click)=\"closeCompareDialog('cancel')\">Cancel</button>\n <button *ngIf=\"mergeMode\"\n kendoButton\n themeColor=\"primary\"\n type=\"button\"\n (click)=\"closeCompareDialog('merge')\"\n >\n Merge Records\n </button>\n </div> \n <kendo-dialog\n title=\"Confirm Choice\"\n *ngIf=\"isConfirmDialogOpen\"\n (close)=\"closeConfirmMergeDialog('cancel')\"\n [minWidth]=\"250\"\n [width]=\"450\"\n >\n <p style=\"margin: 30px; text-align: center;\">\n Are you sure you want to merge the records? This action cannot be undone. If you select \"Yes\", the records will be merged and the duplicate records will be deleted.\n </p>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"closeConfirmMergeDialog('no')\">No</button>\n <button kendoButton (click)=\"closeConfirmMergeDialog('yes')\" themeColor=\"primary\">\n Yes\n </button>\n </kendo-dialog-actions>\n </kendo-dialog>\n </kendo-window>\n </div> \n </div>\n </div>\n ", styles: [".user-view-grid-wrap {\n height: calc(100vh - 20px);\n}\n\n.user-view-grid-column-header {\n background-color: #fff;\n font-size: 20pt;\n font-weight: bold;\n}\n\n.title-wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 14px 0;\n border-bottom: 1px solid var(--med-gray);\n}\n .title-wrapper h4 {\n margin: 0;\n font-size: 24px;\n line-height: 28px;\n }\n .main-fav-wrapper {\n background: #fff;\n padding: 20px;\n }\n .filter-wrapper {\n display: flex;\n justify-content: flex-start;\n gap: 14px;\n align-items: center;\n}\n .title-wrapper .search input {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n\n }\n .title-wrapper .search {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n }\n .title-wrapper .search svg {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n.k-table-td {\n border-right: none !important;\n}.btn-cmn {\n width: 44px;\n height: 44px;\n min-width: 44px;\n background: transparent;\n border-radius: 8px;\n border: 1px solid var(--gray-color);\n}\n.btn-cmn.active {\n border: 1px solid var(--border-blue);\n}\n::ng-deep .title-wrapper .filter-wrapper .k-dropdown-button .k-button {\n border: 1px solid var(--gray-color);\n border-radius: 8px; padding: 10px 25px;\n background: var(--white-color);\n color: var(--sideNav);\n}\n::ng-deep .user-view-grid-wrap .k-grid-aria-root .k-grid-header .k-grid-header-table thead tr th {\n border-right: none;\n border-inline-start-width: 0;\n color: var(--thead-color);\n}\n::ng-deep .user-view-grid-wrap .k-grid-aria-root kendo-grid-list .k-grid-table tbody tr td { \n border-inline-start-width: 0;\n color: var(--tdata-color);\n font-weight: 500;\n border-bottom-width: 1px;\n} "] }]
1098
+ args: [{ selector: 'mj-user-view-grid', template: "<div class=\"user-view-grid-wrap\" mjFillContainer>\n <div class=\"flex-direction-row\">\n <div class=\"flex-direction-row gap-large\">\n <div class=\"flex-direction-column\">\n <b>Showing {{this.viewData.length}} of {{this.totalRowCount}} rows</b>\n <br/>\n <span style=\"font-size: smaller; font-weight: normal;\">\n {{viewExecutionTime}} seconds\n </span> \n <!--\n {{this.viewData.length | number}}{{this.totalRowCount > this.viewData.length ? ' of ' + (this.totalRowCount | number) : ' rows'}}<br/><span style=\"font-size: smaller; font-weight: normal;\">{{viewExecutionTime | number:'1.2-2'}} seconds</span>\n -->\n </div>\n <div class=\"title-wrapper\">\n <div class=\"search\">\n <kendo-textbox \n type=\"text\" \n #searchInput \n placeholder=\"Search in view...\" \n [clearButton]=\"true\"\n size=\"large\"\n rounded=\"large\"\n fillMode=\"solid\"\n >\n <ng-template kendoTextBoxPrefixTemplate [showSeparator]=\"true\">\n <span class=\"fa-solid fa-magnifying-glass margin-left-small\"></span>\n </ng-template>\n </kendo-textbox>\n </div>\n </div>\n </div>\n <div class=\"flex-direction-row gap-small\">\n @if(!compareMode && !mergeMode && !duplicateMode){\n <button kendoButton (click)=\"doExcelExport()\" class=\"k-button-solid-base list-button\">\n <span Title=\"Export to Excel\" class=\"fa-solid fa-file-excel fa-lg\"></span> Export to Excel\n </button>\n <!--\n <button kendoButton class=\"k-button-solid-base list-button\">\n Analysis\n </button>\n -->\n }\n \n <!-- 3 buttons for duplicate. First one only shows when duplication is going on in the grid, the next one is the one the user starts the process with before records are selected, last one is to cancel the pending duple. -->\n <button (click)=\"enableCheckbox(false, 'duplicate')\" *ngIf=\"(!compareMode && !mergeMode && !duplicateMode)\" [disabled]=\"duplicateMode && recordsToCompare.length < 2\" kendoButton class=\"k-button-solid-base list-button\">\n Search For Duplicates\n </button>\n <button (click)=\"enableCheckbox(false, 'duplicate')\" *ngIf=\"duplicateMode\" [disabled]=\"duplicateMode && recordsToCompare.length < 2\" kendoButton class=\"k-button-solid-base list-button\">\n Search For Duplicates\n </button>\n <!--\n <button (click)=\"enableCheckbox(true, 'duplicate')\" *ngIf=\"duplicateMode\" kendoButton class=\"k-button-solid-base list-button\">\n Cancel\n </button>\n -->\n\n <!-- 3 buttons for compare. First one only shows when comparison is going on in the grid, the next one is the one the user starts the process with before records are selected, last one is to cancel the pending compare. -->\n <button kendoButton (click)=\"enableCheckbox(false, 'compare')\" *ngIf=\"(!compareMode && !mergeMode && !duplicateMode)\" [disabled]=\"compareMode && recordsToCompare.length < 2\" class=\"k-button-solid-base list-button\">Compare</button>\n <button kendoButton (click)=\"enableCheckbox(false, 'compare')\" *ngIf=\"compareMode\" [disabled]=\"compareMode && recordsToCompare.length < 2\" class=\"k-button-solid-base list-button\">Compare</button>\n <!--\n <button kendoButton (click)=\"enableCheckbox(true, 'compare')\" *ngIf=\"compareMode\" class=\"k-button-solid-base list-button\">Cancel</button>\n -->\n \n <!-- 3 buttons for merge. First one only shows when merge is getting goin in the grid, the next one is the one the user starts the process with before records are selected, last one is to cancel the pending merge. -->\n <button kendoButton (click)=\"enableCheckbox(false, 'merge')\" *ngIf=\"(!mergeMode && !compareMode && !duplicateMode)\" [disabled]=\"mergeMode && recordsToCompare.length < 2\" class=\"k-button-solid-base list-button\">Merge</button>\n <button kendoButton (click)=\"enableCheckbox(false, 'merge')\" *ngIf=\"mergeMode\" [disabled]=\"mergeMode && recordsToCompare.length < 2\" class=\"k-button-solid-base list-button\">Merge</button>\n <!--\n <button kendoButton (click)=\"enableCheckbox(true, 'merge')\" *ngIf=\"mergeMode\" class=\"k-button-solid-base list-button\">Cancel</button>\n -->\n @if(compareMode || mergeMode || duplicateMode){\n <button (click)=\"enableCheckbox(true, '')\" kendoButton class=\"k-button-solid-base list-button\">\n Cancel\n </button>\n }\n @if(showRefreshButton && !compareMode && !mergeMode && !duplicateMode){\n <button\n kendoButton\n class=\"list-button\"\n (click)=\"RefreshFromSavedParams()\">\n <span class=\"fa-solid fa-arrows-rotate\"></span>\n Refresh\n </button>\n }\n </div>\n </div>\n <kendo-grid #kendoGrid\n mjFillContainer\n [resizable]=\"true\"\n [data]=\"gridView\" \n [skip]=\"skip\"\n [pageSize]=\"pageSize\"\n scrollable=\"virtual\"\n [rowHeight]=\"36\"\n (pageChange)=\"pageChange($event)\"\n [loading]=\"isLoading\"\n [height]=\"gridHeight\"\n [sortable]=\"true\"\n [sort]=\"sortSettings\" \n [resizable]=\"true\"\n [reorderable]=\"true\"\n [selectable]=\"true\"\n kendoGridSelectBy\n [(selectedKeys)]=\"selectedKeys\"\n (cellClick)=\"cellClickHandler($event)\"\n (cellClose)=\"cellCloseHandler($event)\"\n (columnReorder)=\"columnReorder($event)\"\n (columnResize)=\"columnResize($event)\"\n (selectionChange)=\"selectionChange($event)\"\n (sortChange)=\"sortChanged($event)\"\n > \n <kendo-grid-checkbox-column \n *ngIf=\"compareMode || mergeMode || duplicateMode\" \n [width]=\"50\" \n [headerStyle]=\"{ 'font-weight' : 'bold', 'background-color': 'white' }\" \n [style]=\"{'text-align': 'center', 'vertical-align': 'center'}\">\n </kendo-grid-checkbox-column> \n <kendo-grid-column \n *ngFor=\"let item of visibleColumns\" \n [field]=\"item.Name\" \n [title]=\"GetColumnTitle(item)\"\n [width]=\"item.width ? item.width : 100\"\n [editable]=\"item.EntityField.AllowUpdateAPI\"\n [editor]=\"getEditor(item.EntityField)\"\n [headerStyle]=\"{ 'font-weight' : 'bold', 'background-color': 'white' }\"\n [style]=\"this.GetColumnCellStyle(item)\"\n />\n <kendo-excelexport #excelExport [data]=\"exportData\" [fileName]=\"(_viewEntity ? _viewEntity.Get('Name') : _entityInfo?.Name) + '.xlsx'\">\n <kendo-excelexport-column *ngFor=\"let exportCol of exportColumns\" [field]=\"exportCol.Name\" [title]=\"exportCol.Name\">\n </kendo-excelexport-column>\n </kendo-excelexport>\n </kendo-grid>\n \n <div #compareDialogContainer>\n <div *ngIf=\"isCompareDialogOpened\">\n <div class=\"k-overlay\"></div>\n <kendo-window\n [minHeight]=\"300\"\n [minWidth]=\"800\"\n [top]=\"100\"\n [left]=\"100\"\n [width]=\"1200\"\n [height]=\"675\"\n [resizable]=\"true\"\n (close)=\"closeCompareDialog($event)\"\n title=\"Compare Records\"\n *ngIf=\"isCompareDialogOpened\"\n >\n <div mjFillContainer [fillHeight]=\"true\" [bottomMargin]=\"100\">\n <mj-compare-records\n #recordCompareRef\n [entityName]=\"_entityInfo ? _entityInfo.Name : ''\"\n [recordsToCompare]=\"recordsToCompare\" \n [visibleColumns]=\"visibleColumns\" \n [selectionMode]=\"mergeMode ? true : false\"\n />\n </div>\n <div class=\"k-actions k-actions-end\">\n <button kendoButton *ngIf=\"mergeMode\" (click)=\"closeCompareDialog('merge')\" class=\"k-button-solid-base-filled\">\n Merge Records \n </button>\n <button kendoButton *ngIf=\"duplicateMode\" (click)=\"fimdDuplicateRecords()\" class=\"k-button-solid-base-filled\">\n Search for Duplicates\n </button>\n <button kendoButton *ngIf=\"compareMode\" (click)=\"closeCompareDialog('close')\">\n Close\n </button>\n <button kendoButton *ngIf=\"mergeMode || duplicateMode\" (click)=\"closeCompareDialog('cancel')\">\n Cancel\n </button>\n </div> \n <kendo-dialog\n title=\"Confirm Choice\"\n *ngIf=\"isConfirmDialogOpen\"\n (close)=\"closeConfirmMergeDialog('cancel')\"\n [minWidth]=\"250\"\n [width]=\"450\"\n >\n <p style=\"margin: 30px; text-align: center;\">\n Are you sure you want to merge the records? This action cannot be undone. If you select \"Yes\", the records will be merged and the duplicate records will be deleted.\n </p>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"closeConfirmMergeDialog('no')\">No</button>\n <button kendoButton (click)=\"closeConfirmMergeDialog('yes')\" themeColor=\"primary\">\n Yes\n </button>\n </kendo-dialog-actions>\n </kendo-dialog>\n </kendo-window>\n </div> \n </div>\n </div>\n ", styles: [".user-view-grid-wrap {\n height: calc(100vh - 20px);\n}\n\n.user-view-grid-column-header {\n background-color: #fff;\n font-size: 20pt;\n font-weight: bold;\n}\n\n.title-wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 14px 0;\n border-bottom: 1px solid var(--med-gray);\n}\n .title-wrapper h4 {\n margin: 0;\n font-size: 24px;\n line-height: 28px;\n }\n .main-fav-wrapper {\n background: #fff;\n padding: 20px;\n }\n .filter-wrapper {\n display: flex;\n justify-content: flex-start;\n gap: 14px;\n align-items: center;\n}\n .title-wrapper .search input {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n\n }\n .title-wrapper .search {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n }\n .title-wrapper .search svg {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n.k-table-td {\n border-right: none !important;\n}.btn-cmn {\n width: 44px;\n height: 44px;\n min-width: 44px;\n background: transparent;\n border-radius: 8px;\n border: 1px solid var(--gray-color);\n}\n.btn-cmn.active {\n border: 1px solid var(--border-blue);\n}\n::ng-deep .title-wrapper .filter-wrapper .k-dropdown-button .k-button {\n border: 1px solid var(--gray-color);\n border-radius: 8px; padding: 10px 25px;\n background: var(--white-color);\n color: var(--sideNav);\n}\n::ng-deep .user-view-grid-wrap .k-grid-aria-root .k-grid-header .k-grid-header-table thead tr th {\n border-right: none;\n border-inline-start-width: 0;\n color: var(--thead-color);\n}\n::ng-deep .user-view-grid-wrap .k-grid-aria-root kendo-grid-list .k-grid-table tbody tr td { \n border-inline-start-width: 0;\n color: var(--tdata-color);\n font-weight: 500;\n border-bottom-width: 1px;\n}\n\n.gap-small{\n gap: 8px; \n}\n\n.gap-large {\n gap: 20px; \n}\n\n.flex-direction-row {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n}\n\n.flex-direction-column {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: start;\n}\n\n.search {\n background: var(--light-shade);\n width: 360px;\n height: 44px;\n position: relative;\n border-radius: 10px;\n}\n\n.search .fa-magnifying-glass {\n margin-left: 10px;\n}\n\n.search input {\n width: 100%;\n height: 100%;\n font-size: 16px;\n background: transparent;\n border: none;\n box-sizing: border-box;\n padding-left: 40px;\n}\n\n.search svg {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 12px;\n}\n\n::ng-deep .list-button {\n min-width: 120px;\n width: auto;\n}\n \n ::ng-deep .k-button-solid-base {\n border: 1px solid var(--border-blue) !important;\n color: var(--border-blue) !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--white-color);\n }\n\n ::ng-deep .k-button-solid-base-black {\n border: 1px solid grey !important;\n color: black !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--white-color);\n }\n \n ::ng-deep .k-button-solid-base-filled {\n border: 1px solid var(--border-blue) !important;\n color: var(--white-color) !important;\n border-radius: 10px;\n line-height: 34px;\n background: var(--border-blue);\n }\n \n ::ng-deep .k-button-solid-base-filled:hover {\n background: var(--border-blue);\n filter: brightness(85%);\n }"] }]
1022
1099
  }], () => [{ type: i1.FormBuilder }, { type: i2.Router }, { type: i0.Renderer2 }], { Params: [{
1023
1100
  type: Input
1024
1101
  }], BottomMargin: [{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-user-view-grid",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "MemberJunction: Angular Grid to display dynamic and saved user views for any entity in MemberJunction.",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -25,12 +25,12 @@
25
25
  "@angular/router": "~17.2.2"
26
26
  },
27
27
  "dependencies": {
28
- "@memberjunction/core-entities": "~1.2.0",
29
- "@memberjunction/global": "~1.2.0",
30
- "@memberjunction/core": "~1.2.0",
31
- "@memberjunction/ng-shared": "~1.2.0",
32
- "@memberjunction/ng-compare-records": "~1.2.0",
33
- "@memberjunction/ng-container-directives": "~1.2.0",
28
+ "@memberjunction/core-entities": "~1.2.1",
29
+ "@memberjunction/global": "~1.2.1",
30
+ "@memberjunction/core": "~1.2.1",
31
+ "@memberjunction/ng-shared": "~1.2.1",
32
+ "@memberjunction/ng-compare-records": "~1.2.1",
33
+ "@memberjunction/ng-container-directives": "~1.2.1",
34
34
  "@progress/kendo-angular-grid": "~15.1.0",
35
35
  "@progress/kendo-angular-layout": "~15.1.0",
36
36
  "@progress/kendo-angular-inputs": "~15.1.0",