@memberjunction/ng-form-toolbar 2.131.0 → 2.133.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,7 @@ import { BaseFormComponent } from '@memberjunction/ng-base-forms';
3
3
  import { CompositeKey } from '@memberjunction/core';
4
4
  import { Router } from '@angular/router';
5
5
  import { ListEntity } from '@memberjunction/core-entities';
6
+ import { ListManagementDialogConfig, ListManagementResult } from '@memberjunction/ng-list-management';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare class FormToolbarComponent implements OnInit {
8
9
  private router;
@@ -22,6 +23,12 @@ export declare class FormToolbarComponent implements OnInit {
22
23
  showListDialogLoader: boolean;
23
24
  availableLists: ListEntity[];
24
25
  selectedLists: ListEntity[];
26
+ showEnhancedListDialog: boolean;
27
+ listManagementConfig: ListManagementDialogConfig | null;
28
+ useEnhancedListDialog: boolean;
29
+ recordListCount: number;
30
+ recordListsLoading: boolean;
31
+ recordLists: ListEntity[];
25
32
  /**
26
33
  * Internal property that changes over time based on the state of the record being managed. Don't access this directly, use the CurrentlyDisabled property instead.
27
34
  */
@@ -37,6 +44,10 @@ export declare class FormToolbarComponent implements OnInit {
37
44
  get LinkedEntityPrimaryKey(): CompositeKey;
38
45
  constructor(router: Router);
39
46
  ngOnInit(): Promise<void>;
47
+ /**
48
+ * Load the count of lists this record belongs to
49
+ */
50
+ loadRecordListCount(): Promise<void>;
40
51
  saveExistingRecord(event: MouseEvent): Promise<void>;
41
52
  /**
42
53
  * This method is called internally when the user clicks on the Skip button, and also can be invoked manually in code to show the Skip dialog.
@@ -44,6 +55,22 @@ export declare class FormToolbarComponent implements OnInit {
44
55
  ShowSkipChat(): void;
45
56
  toggleDeleteDialog(show: boolean): void;
46
57
  toggleListDialog(show: boolean): Promise<void>;
58
+ /**
59
+ * Opens the enhanced list management dialog
60
+ */
61
+ openEnhancedListDialog(): void;
62
+ /**
63
+ * Get a display name for a record
64
+ */
65
+ private getRecordDisplayName;
66
+ /**
67
+ * Handle completion of the enhanced list management dialog
68
+ */
69
+ onEnhancedListDialogComplete(result: ListManagementResult): Promise<void>;
70
+ /**
71
+ * Handle cancellation of the enhanced list management dialog
72
+ */
73
+ onEnhancedListDialogCancel(): void;
47
74
  addRecordToList(list: ListEntity): Promise<void>;
48
75
  deleteRecord(): Promise<void>;
49
76
  static ɵfac: i0.ɵɵFactoryDeclaration<FormToolbarComponent, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"form-toolbar.d.ts","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,MAAM,EAAgB,UAAU,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,YAAY,EAAwC,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAoB,UAAU,EAAE,MAAM,+BAA+B,CAAC;;AAG7E,qBAKa,oBAAqB,YAAW,MAAM;IA6C5B,OAAO,CAAC,MAAM;IA5CxB,kBAAkB,EAAE,OAAO,CAAQ;IACnC,IAAI,EAAG,iBAAiB,CAAC;IACwB,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAE1F,IAAW,qBAAqB,IAAI,OAAO,CAE1C;IAGD;;OAEG;IACI,QAAQ,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACH,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAEM,iBAAiB,EAAE,OAAO,CAAS;IACnC,oBAAoB,EAAE,OAAO,CAAS;IACtC,cAAc,EAAE,UAAU,EAAE,CAAM;IAClC,aAAa,EAAE,UAAU,EAAE,CAAM;IAExC;;OAEG;IACI,kBAAkB,EAAE,OAAO,CAAS;IAE3C;;OAEG;IACI,oBAAoB,EAAE,OAAO,CAAS;IAC7C;;OAEG;IACI,sBAAsB,EAAE,OAAO,CAAS;IAE/C,IAAW,sBAAsB,IAAI,YAAY,CAEhD;gBAE0B,MAAM,EAAE,MAAM;IAG5B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAGzB,kBAAkB,CAAC,KAAK,EAAE,UAAU;IAkEjD;;OAEG;IACI,YAAY,IAAI,IAAI;IAKpB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAIjC,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS9C,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBhD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;yCAjKjC,oBAAoB;2CAApB,oBAAoB;CAiMhC"}
1
+ {"version":3,"file":"form-toolbar.d.ts","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,MAAM,EAAgB,UAAU,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,YAAY,EAA6D,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAA8C,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;;AAGtG,qBAKa,oBAAqB,YAAW,MAAM;IAuD5B,OAAO,CAAC,MAAM;IAtDxB,kBAAkB,EAAE,OAAO,CAAQ;IACnC,IAAI,EAAG,iBAAiB,CAAC;IACwB,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAE1F,IAAW,qBAAqB,IAAI,OAAO,CAE1C;IAGD;;OAEG;IACI,QAAQ,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACH,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAEM,iBAAiB,EAAE,OAAO,CAAS;IACnC,oBAAoB,EAAE,OAAO,CAAS;IACtC,cAAc,EAAE,UAAU,EAAE,CAAM;IAClC,aAAa,EAAE,UAAU,EAAE,CAAM;IAGjC,sBAAsB,EAAE,OAAO,CAAS;IACxC,oBAAoB,EAAE,0BAA0B,GAAG,IAAI,CAAQ;IAC/D,qBAAqB,EAAE,OAAO,CAAQ;IAGtC,eAAe,EAAE,MAAM,CAAK;IAC5B,kBAAkB,EAAE,OAAO,CAAS;IACpC,WAAW,EAAE,UAAU,EAAE,CAAM;IAEtC;;OAEG;IACI,kBAAkB,EAAE,OAAO,CAAS;IAE3C;;OAEG;IACI,oBAAoB,EAAE,OAAO,CAAS;IAC7C;;OAEG;IACI,sBAAsB,EAAE,OAAO,CAAS;IAE/C,IAAW,sBAAsB,IAAI,YAAY,CAEhD;gBAE0B,MAAM,EAAE,MAAM;IAG5B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC;;OAEG;IACU,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwDpC,kBAAkB,CAAC,KAAK,EAAE,UAAU;IAkEjD;;OAEG;IACI,YAAY,IAAI,IAAI;IAKpB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAIjC,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3D;;OAEG;IACI,sBAAsB,IAAI,IAAI;IAyBrC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACU,4BAA4B,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBtF;;OAEG;IACI,0BAA0B,IAAI,IAAI;IAK5B,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBhD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;yCA5TjC,oBAAoB;2CAApB,oBAAoB;CA4VhC"}
@@ -1,52 +1,54 @@
1
1
  import { Component, Input, ContentChild, ElementRef } from '@angular/core';
2
2
  import { EventCodes, SharedService } from '@memberjunction/ng-shared';
3
- import { LogError, Metadata } from '@memberjunction/core';
3
+ import { LogError, Metadata, RunView } from '@memberjunction/core';
4
4
  import { MJEventType, MJGlobal } from '@memberjunction/global';
5
+ import { ListDetailEntityExtended } from '@memberjunction/core-entities';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/router";
7
8
  import * as i2 from "@angular/common";
8
9
  import * as i3 from "@memberjunction/ng-record-changes";
9
10
  import * as i4 from "@progress/kendo-angular-buttons";
10
11
  import * as i5 from "@progress/kendo-angular-dialog";
12
+ import * as i6 from "@memberjunction/ng-list-management";
11
13
  const _c0 = ["additionalControls"];
12
14
  const _c1 = [[["", "toolbar-additional-controls", ""]]];
13
15
  const _c2 = ["[toolbar-additional-controls]"];
14
16
  function FormToolbarComponent_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
15
17
  const _r1 = i0.ɵɵgetCurrentView();
16
- i0.ɵɵelementStart(0, "button", 8);
18
+ i0.ɵɵelementStart(0, "button", 9);
17
19
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.form.StartEditMode()); });
18
- i0.ɵɵelement(1, "span", 9);
20
+ i0.ɵɵelement(1, "span", 10);
19
21
  i0.ɵɵelementEnd();
20
22
  } }
21
23
  function FormToolbarComponent_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
22
24
  const _r3 = i0.ɵɵgetCurrentView();
23
- i0.ɵɵelementStart(0, "button", 10);
25
+ i0.ɵɵelementStart(0, "button", 11);
24
26
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleDeleteDialog(true)); });
25
- i0.ɵɵelement(1, "span", 11);
27
+ i0.ɵɵelement(1, "span", 12);
26
28
  i0.ɵɵelementEnd();
27
29
  } }
28
30
  function FormToolbarComponent_Conditional_1_Conditional_2_Conditional_0_Template(rf, ctx) { if (rf & 1) {
29
31
  const _r4 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "button", 14);
32
+ i0.ɵɵelementStart(0, "button", 15);
31
33
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_2_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.form.RemoveFavorite()); });
32
- i0.ɵɵelement(1, "span", 15);
34
+ i0.ɵɵelement(1, "span", 16);
33
35
  i0.ɵɵelementEnd();
34
36
  } }
35
37
  function FormToolbarComponent_Conditional_1_Conditional_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
36
38
  const _r5 = i0.ɵɵgetCurrentView();
37
- i0.ɵɵelementStart(0, "button", 16);
39
+ i0.ɵɵelementStart(0, "button", 17);
38
40
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_2_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.form.MakeFavorite()); });
39
- i0.ɵɵelement(1, "span", 17);
41
+ i0.ɵɵelement(1, "span", 18);
40
42
  i0.ɵɵelementEnd();
41
43
  } }
42
44
  function FormToolbarComponent_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
43
- i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_2_Conditional_0_Template, 2, 0, "button", 12)(1, FormToolbarComponent_Conditional_1_Conditional_2_Conditional_1_Template, 2, 0, "button", 13);
45
+ i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_2_Conditional_0_Template, 2, 0, "button", 13)(1, FormToolbarComponent_Conditional_1_Conditional_2_Conditional_1_Template, 2, 0, "button", 14);
44
46
  } if (rf & 2) {
45
47
  const ctx_r1 = i0.ɵɵnextContext(2);
46
48
  i0.ɵɵconditional(ctx_r1.form.IsFavorite ? 0 : 1);
47
49
  } }
48
50
  function FormToolbarComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
49
- i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_0_Template, 2, 0, "button", 6)(1, FormToolbarComponent_Conditional_1_Conditional_1_Template, 2, 0, "button", 7)(2, FormToolbarComponent_Conditional_1_Conditional_2_Template, 2, 1);
51
+ i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_0_Template, 2, 0, "button", 7)(1, FormToolbarComponent_Conditional_1_Conditional_1_Template, 2, 0, "button", 8)(2, FormToolbarComponent_Conditional_1_Conditional_2_Template, 2, 1);
50
52
  } if (rf & 2) {
51
53
  const ctx_r1 = i0.ɵɵnextContext();
52
54
  i0.ɵɵconditional(ctx_r1.form.UserCanEdit ? 0 : -1);
@@ -57,31 +59,31 @@ function FormToolbarComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
57
59
  } }
58
60
  function FormToolbarComponent_Conditional_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
59
61
  const _r7 = i0.ɵɵgetCurrentView();
60
- i0.ɵɵelementStart(0, "button", 23);
62
+ i0.ɵɵelementStart(0, "button", 24);
61
63
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Conditional_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.form.CancelEdit()); });
62
- i0.ɵɵelement(1, "span", 24);
63
- i0.ɵɵelementStart(2, "span", 20);
64
+ i0.ɵɵelement(1, "span", 25);
65
+ i0.ɵɵelementStart(2, "span", 21);
64
66
  i0.ɵɵtext(3, "Cancel");
65
67
  i0.ɵɵelementEnd()();
66
68
  } }
67
69
  function FormToolbarComponent_Conditional_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
68
70
  const _r8 = i0.ɵɵgetCurrentView();
69
- i0.ɵɵelementStart(0, "button", 25);
71
+ i0.ɵɵelementStart(0, "button", 26);
70
72
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Conditional_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.form.ShowChanges()); });
71
- i0.ɵɵelement(1, "span", 26);
72
- i0.ɵɵelementStart(2, "span", 20);
73
+ i0.ɵɵelement(1, "span", 27);
74
+ i0.ɵɵelementStart(2, "span", 21);
73
75
  i0.ɵɵtext(3, "Changes");
74
76
  i0.ɵɵelementEnd()();
75
77
  } }
76
78
  function FormToolbarComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
77
79
  const _r6 = i0.ɵɵgetCurrentView();
78
- i0.ɵɵelementStart(0, "button", 18);
80
+ i0.ɵɵelementStart(0, "button", 19);
79
81
  i0.ɵɵlistener("mouseup", function FormToolbarComponent_Conditional_2_Template_button_mouseup_0_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.saveExistingRecord($event)); });
80
- i0.ɵɵelement(1, "span", 19);
81
- i0.ɵɵelementStart(2, "span", 20);
82
+ i0.ɵɵelement(1, "span", 20);
83
+ i0.ɵɵelementStart(2, "span", 21);
82
84
  i0.ɵɵtext(3, "Save");
83
85
  i0.ɵɵelementEnd()();
84
- i0.ɵɵtemplate(4, FormToolbarComponent_Conditional_2_Conditional_4_Template, 4, 0, "button", 21)(5, FormToolbarComponent_Conditional_2_Conditional_5_Template, 4, 0, "button", 22);
86
+ i0.ɵɵtemplate(4, FormToolbarComponent_Conditional_2_Conditional_4_Template, 4, 0, "button", 22)(5, FormToolbarComponent_Conditional_2_Conditional_5_Template, 4, 0, "button", 23);
85
87
  } if (rf & 2) {
86
88
  const ctx_r1 = i0.ɵɵnextContext();
87
89
  i0.ɵɵadvance(4);
@@ -91,39 +93,54 @@ function FormToolbarComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
91
93
  } }
92
94
  function FormToolbarComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
93
95
  const _r9 = i0.ɵɵgetCurrentView();
94
- i0.ɵɵelementStart(0, "button", 27);
96
+ i0.ɵɵelementStart(0, "button", 28);
95
97
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.form.handleHistoryDialog()); });
96
- i0.ɵɵelement(1, "span", 28);
98
+ i0.ɵɵelement(1, "span", 29);
97
99
  i0.ɵɵelementEnd();
98
100
  } }
99
101
  function FormToolbarComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
100
102
  const _r10 = i0.ɵɵgetCurrentView();
101
- i0.ɵɵelementStart(0, "mj-record-changes", 29);
103
+ i0.ɵɵelementStart(0, "mj-record-changes", 30);
102
104
  i0.ɵɵlistener("dialogClosed", function FormToolbarComponent_Conditional_4_Template_mj_record_changes_dialogClosed_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.form.handleHistoryDialog()); });
103
105
  i0.ɵɵelementEnd();
104
106
  } if (rf & 2) {
105
107
  const ctx_r1 = i0.ɵɵnextContext();
106
108
  i0.ɵɵproperty("record", ctx_r1.form.record);
107
109
  } }
110
+ function FormToolbarComponent_Conditional_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
111
+ i0.ɵɵelementStart(0, "span", 33);
112
+ i0.ɵɵtext(1);
113
+ i0.ɵɵelementEnd();
114
+ } if (rf & 2) {
115
+ const ctx_r1 = i0.ɵɵnextContext(2);
116
+ i0.ɵɵadvance();
117
+ i0.ɵɵtextInterpolate(ctx_r1.recordListCount);
118
+ } }
108
119
  function FormToolbarComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
109
120
  const _r11 = i0.ɵɵgetCurrentView();
110
- i0.ɵɵelementStart(0, "button", 30);
121
+ i0.ɵɵelementStart(0, "button", 31);
111
122
  i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleListDialog(true)); });
112
- i0.ɵɵelement(1, "span", 31);
123
+ i0.ɵɵelement(1, "span", 32);
124
+ i0.ɵɵtemplate(2, FormToolbarComponent_Conditional_5_Conditional_2_Template, 2, 1, "span", 33);
113
125
  i0.ɵɵelementEnd();
126
+ } if (rf & 2) {
127
+ const ctx_r1 = i0.ɵɵnextContext();
128
+ i0.ɵɵproperty("title", ctx_r1.recordListCount > 0 ? "Member of " + ctx_r1.recordListCount + " list(s) - Click to manage" : "Add this record to a list");
129
+ i0.ɵɵadvance(2);
130
+ i0.ɵɵconditional(ctx_r1.recordListCount > 0 ? 2 : -1);
114
131
  } }
115
132
  function FormToolbarComponent_kendo_dialog_7_Template(rf, ctx) { if (rf & 1) {
116
133
  const _r12 = i0.ɵɵgetCurrentView();
117
- i0.ɵɵelementStart(0, "kendo-dialog", 32);
134
+ i0.ɵɵelementStart(0, "kendo-dialog", 34);
118
135
  i0.ɵɵlistener("close", function FormToolbarComponent_kendo_dialog_7_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r12); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleDeleteDialog(false)); });
119
- i0.ɵɵelementStart(1, "p", 33);
136
+ i0.ɵɵelementStart(1, "p", 35);
120
137
  i0.ɵɵtext(2, " Are you sure you want to delete this record? ");
121
138
  i0.ɵɵelementEnd();
122
- i0.ɵɵelementStart(3, "kendo-dialog-actions", 34)(4, "button", 35);
139
+ i0.ɵɵelementStart(3, "kendo-dialog-actions", 36)(4, "button", 37);
123
140
  i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_7_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r12); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.deleteRecord()); });
124
141
  i0.ɵɵtext(5, " Yes, Delete ");
125
142
  i0.ɵɵelementEnd();
126
- i0.ɵɵelementStart(6, "button", 36);
143
+ i0.ɵɵelementStart(6, "button", 38);
127
144
  i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_7_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r12); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleDeleteDialog(false)); });
128
145
  i0.ɵɵtext(7, " No, Cancel ");
129
146
  i0.ɵɵelementEnd()()();
@@ -132,13 +149,13 @@ function FormToolbarComponent_kendo_dialog_7_Template(rf, ctx) { if (rf & 1) {
132
149
  } }
133
150
  function FormToolbarComponent_kendo_dialog_8_For_3_Template(rf, ctx) { if (rf & 1) {
134
151
  const _r14 = i0.ɵɵgetCurrentView();
135
- i0.ɵɵelementStart(0, "div", 38)(1, "div", 39)(2, "div", 40);
152
+ i0.ɵɵelementStart(0, "div", 40)(1, "div", 41)(2, "div", 42);
136
153
  i0.ɵɵtext(3);
137
154
  i0.ɵɵelementEnd();
138
- i0.ɵɵelementStart(4, "button", 41);
155
+ i0.ɵɵelementStart(4, "button", 43);
139
156
  i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_8_For_3_Template_button_click_4_listener() { const list_r15 = i0.ɵɵrestoreView(_r14).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.addRecordToList(list_r15)); });
140
- i0.ɵɵelementStart(5, "div", 42);
141
- i0.ɵɵelement(6, "span", 43);
157
+ i0.ɵɵelementStart(5, "div", 44);
158
+ i0.ɵɵelement(6, "span", 45);
142
159
  i0.ɵɵtext(7, " Add ");
143
160
  i0.ɵɵelementEnd()()();
144
161
  i0.ɵɵelement(8, "hr");
@@ -150,11 +167,11 @@ function FormToolbarComponent_kendo_dialog_8_For_3_Template(rf, ctx) { if (rf &
150
167
  } }
151
168
  function FormToolbarComponent_kendo_dialog_8_Template(rf, ctx) { if (rf & 1) {
152
169
  const _r13 = i0.ɵɵgetCurrentView();
153
- i0.ɵɵelementStart(0, "kendo-dialog", 37);
170
+ i0.ɵɵelementStart(0, "kendo-dialog", 39);
154
171
  i0.ɵɵlistener("close", function FormToolbarComponent_kendo_dialog_8_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleListDialog(false)); });
155
172
  i0.ɵɵelement(1, "hr");
156
- i0.ɵɵrepeaterCreate(2, FormToolbarComponent_kendo_dialog_8_For_3_Template, 9, 1, "div", 38, i0.ɵɵrepeaterTrackByIdentity);
157
- i0.ɵɵelementStart(4, "kendo-dialog-actions", 34)(5, "button", 36);
173
+ i0.ɵɵrepeaterCreate(2, FormToolbarComponent_kendo_dialog_8_For_3_Template, 9, 1, "div", 40, i0.ɵɵrepeaterTrackByIdentity);
174
+ i0.ɵɵelementStart(4, "kendo-dialog-actions", 36)(5, "button", 38);
158
175
  i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_8_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleListDialog(false)); });
159
176
  i0.ɵɵtext(6, " Close ");
160
177
  i0.ɵɵelementEnd()()();
@@ -164,6 +181,15 @@ function FormToolbarComponent_kendo_dialog_8_Template(rf, ctx) { if (rf & 1) {
164
181
  i0.ɵɵadvance(2);
165
182
  i0.ɵɵrepeater(ctx_r1.availableLists);
166
183
  } }
184
+ function FormToolbarComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
185
+ const _r16 = i0.ɵɵgetCurrentView();
186
+ i0.ɵɵelementStart(0, "mj-list-management-dialog", 46);
187
+ i0.ɵɵlistener("complete", function FormToolbarComponent_Conditional_9_Template_mj_list_management_dialog_complete_0_listener($event) { i0.ɵɵrestoreView(_r16); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onEnhancedListDialogComplete($event)); })("cancel", function FormToolbarComponent_Conditional_9_Template_mj_list_management_dialog_cancel_0_listener() { i0.ɵɵrestoreView(_r16); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onEnhancedListDialogCancel()); });
188
+ i0.ɵɵelementEnd();
189
+ } if (rf & 2) {
190
+ const ctx_r1 = i0.ɵɵnextContext();
191
+ i0.ɵɵproperty("config", ctx_r1.listManagementConfig)("visible", ctx_r1.showEnhancedListDialog);
192
+ } }
167
193
  export class FormToolbarComponent {
168
194
  router;
169
195
  ShowSkipChatButton = true;
@@ -186,6 +212,14 @@ export class FormToolbarComponent {
186
212
  showListDialogLoader = false;
187
213
  availableLists = [];
188
214
  selectedLists = [];
215
+ // Enhanced list management dialog
216
+ showEnhancedListDialog = false;
217
+ listManagementConfig = null;
218
+ useEnhancedListDialog = true; // Toggle to use enhanced dialog
219
+ // List membership indicator
220
+ recordListCount = 0;
221
+ recordListsLoading = false;
222
+ recordLists = [];
189
223
  /**
190
224
  * Internal property that changes over time based on the state of the record being managed. Don't access this directly, use the CurrentlyDisabled property instead.
191
225
  */
@@ -205,6 +239,62 @@ export class FormToolbarComponent {
205
239
  this.router = router;
206
240
  }
207
241
  async ngOnInit() {
242
+ // Load list membership info for the current record
243
+ await this.loadRecordListCount();
244
+ }
245
+ /**
246
+ * Load the count of lists this record belongs to
247
+ */
248
+ async loadRecordListCount() {
249
+ const record = this.form?.record;
250
+ if (!record || !record.IsSaved) {
251
+ this.recordListCount = 0;
252
+ this.recordLists = [];
253
+ return;
254
+ }
255
+ this.recordListsLoading = true;
256
+ try {
257
+ const rv = new RunView();
258
+ // Use the proper RecordID format based on PK count:
259
+ // Single PK: raw value, Composite PK: concatenated format
260
+ const recordId = ListDetailEntityExtended.BuildRecordID(record.EntityInfo, record);
261
+ const entityId = record.EntityInfo.ID;
262
+ // Get list details for this record
263
+ const detailsResult = await rv.RunView({
264
+ EntityName: 'List Details',
265
+ ExtraFilter: `RecordID = '${recordId}'`,
266
+ ResultType: 'entity_object'
267
+ });
268
+ if (!detailsResult.Success || !detailsResult.Results || detailsResult.Results.length === 0) {
269
+ this.recordListCount = 0;
270
+ this.recordLists = [];
271
+ return;
272
+ }
273
+ const listIds = [...new Set(detailsResult.Results.map((d) => d.ListID))];
274
+ // Get the lists filtered by entity
275
+ const listIdFilter = listIds.map(id => `'${id}'`).join(',');
276
+ const listsResult = await rv.RunView({
277
+ EntityName: 'Lists',
278
+ ExtraFilter: `ID IN (${listIdFilter}) AND EntityID = '${entityId}'`,
279
+ ResultType: 'entity_object'
280
+ });
281
+ if (listsResult.Success && listsResult.Results) {
282
+ this.recordLists = listsResult.Results;
283
+ this.recordListCount = listsResult.Results.length;
284
+ }
285
+ else {
286
+ this.recordListCount = 0;
287
+ this.recordLists = [];
288
+ }
289
+ }
290
+ catch (error) {
291
+ console.error('Error loading record list count:', error);
292
+ this.recordListCount = 0;
293
+ this.recordLists = [];
294
+ }
295
+ finally {
296
+ this.recordListsLoading = false;
297
+ }
208
298
  }
209
299
  async saveExistingRecord(event) {
210
300
  // Ensure the button takes focus
@@ -271,19 +361,95 @@ export class FormToolbarComponent {
271
361
  this._deleteDialogVisible = show;
272
362
  }
273
363
  async toggleListDialog(show) {
364
+ if (this.useEnhancedListDialog && show) {
365
+ // Use the enhanced list management dialog
366
+ this.openEnhancedListDialog();
367
+ return;
368
+ }
369
+ // Fallback to original simple dialog
274
370
  this.listDialogVisible = show;
275
371
  if (show) {
276
372
  this.availableLists = [];
277
373
  this.availableLists = await this.form.GetListsCanAddTo();
278
374
  }
279
375
  }
376
+ /**
377
+ * Opens the enhanced list management dialog
378
+ */
379
+ openEnhancedListDialog() {
380
+ const record = this.form.record;
381
+ if (!record)
382
+ return;
383
+ // Use the proper RecordID format based on PK count:
384
+ // Single PK: raw value, Composite PK: concatenated format
385
+ const entityInfo = record.EntityInfo;
386
+ const recordId = ListDetailEntityExtended.BuildRecordID(entityInfo, record);
387
+ const recordName = this.getRecordDisplayName(record);
388
+ this.listManagementConfig = {
389
+ mode: 'manage',
390
+ entityId: entityInfo.ID,
391
+ entityName: entityInfo.Name,
392
+ recordIds: [recordId],
393
+ recordDisplayNames: [recordName],
394
+ allowCreate: true,
395
+ allowRemove: true,
396
+ showMembership: true,
397
+ dialogTitle: `Manage Lists for "${recordName}"`
398
+ };
399
+ this.showEnhancedListDialog = true;
400
+ }
401
+ /**
402
+ * Get a display name for a record
403
+ */
404
+ getRecordDisplayName(record) {
405
+ const entityInfo = record.EntityInfo;
406
+ if (entityInfo?.NameField) {
407
+ const name = record.Get(entityInfo.NameField.Name);
408
+ if (name)
409
+ return String(name);
410
+ }
411
+ return record.PrimaryKey.ToConcatenatedString();
412
+ }
413
+ /**
414
+ * Handle completion of the enhanced list management dialog
415
+ */
416
+ async onEnhancedListDialogComplete(result) {
417
+ this.showEnhancedListDialog = false;
418
+ this.listManagementConfig = null;
419
+ if (result.action === 'apply') {
420
+ const addedCount = result.added.length;
421
+ const removedCount = result.removed.length;
422
+ if (addedCount > 0 || removedCount > 0) {
423
+ let message = '';
424
+ if (addedCount > 0) {
425
+ message += `Added to ${addedCount} list(s)`;
426
+ }
427
+ if (removedCount > 0) {
428
+ if (message)
429
+ message += ', ';
430
+ message += `Removed from ${removedCount} list(s)`;
431
+ }
432
+ SharedService.Instance.CreateSimpleNotification(message, 'success', 2500);
433
+ // Refresh the list count
434
+ await this.loadRecordListCount();
435
+ }
436
+ }
437
+ }
438
+ /**
439
+ * Handle cancellation of the enhanced list management dialog
440
+ */
441
+ onEnhancedListDialogCancel() {
442
+ this.showEnhancedListDialog = false;
443
+ this.listManagementConfig = null;
444
+ }
280
445
  async addRecordToList(list) {
281
446
  this.toggleListDialog(false);
282
447
  const md = new Metadata();
283
448
  const listDetailEntity = await md.GetEntityObject("List Details", md.CurrentUser);
284
449
  listDetailEntity.NewRecord();
285
450
  listDetailEntity.ListID = list.ID;
286
- listDetailEntity.RecordID = this.form.record.FirstPrimaryKey.Value;
451
+ // Use SetRecordIDFromEntity which handles single vs composite PK properly
452
+ listDetailEntity.SetRecordIDFromEntity(this.form.record.EntityInfo, this.form.record);
287
453
  const saveResult = await listDetailEntity.Save();
288
454
  if (!saveResult) {
289
455
  LogError(`Error adding record to list ${list.Name}`, undefined, listDetailEntity.LatestResult);
@@ -329,12 +495,12 @@ export class FormToolbarComponent {
329
495
  } if (rf & 2) {
330
496
  let _t;
331
497
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.additionalControls = _t.first);
332
- } }, inputs: { ShowSkipChatButton: "ShowSkipChatButton", form: "form" }, ngContentSelectors: _c2, decls: 9, vars: 8, consts: [[1, "toolbar-container"], ["kendoButton", "", "title", "Show History"], [3, "record"], ["kendoButton", "", "title", "Add this record to a list"], ["class", "dialog-wrapper", "title", "Confirm", 3, "minWidth", "width", "close", 4, "ngIf"], ["class", "dialog-wrapper", "title", "Select List to Add Record To", 3, "minWidth", "width", "height", "close", 4, "ngIf"], ["kendoButton", "", "title", "Edit this Record"], ["kendoButton", "", "title", "Delete this Record"], ["kendoButton", "", "title", "Edit this Record", 3, "click"], [1, "fa-solid", "fa-pen-to-square"], ["kendoButton", "", "title", "Delete this Record", 3, "click"], [1, "fa-regular", "fa-trash-can"], ["kendoButton", "", "title", "Remove Favorite"], ["kendoButton", "", "title", "Make Favorite"], ["kendoButton", "", "title", "Remove Favorite", 3, "click"], [1, "fa-solid", "fa-star"], ["kendoButton", "", "title", "Make Favorite", 3, "click"], [1, "fa-regular", "fa-star"], ["kendoButton", "", "title", "Save Record", 3, "mouseup"], [1, "fa-solid", "fa-floppy-disk"], [1, "button-text"], ["kendoButton", "", "title", "Cancel Edit"], ["kendoButton", "", "title", "Fields you have changed"], ["kendoButton", "", "title", "Cancel Edit", 3, "click"], [1, "fa-solid", "fa-rotate-left"], ["kendoButton", "", "title", "Fields you have changed", 3, "click"], [1, "fa-solid", "fa-clipboard-list"], ["kendoButton", "", "title", "Show History", 3, "click"], [1, "fa-solid", "fa-clock-rotate-left"], [3, "dialogClosed", "record"], ["kendoButton", "", "title", "Add this record to a list", 3, "click"], [1, "fa-solid", "fa-rectangle-list"], ["title", "Confirm", 1, "dialog-wrapper", 3, "close", "minWidth", "width"], [1, "k-m-7.5", "k-text-center"], [1, "popup-actions-btn"], ["kendoButton", "", "themeColor", "info", 1, "cancel-btn", 3, "click"], ["kendoButton", "", "fillMode", "outline", "themeColor", "info", 1, "yes-btn", 3, "click"], ["title", "Select List to Add Record To", 1, "dialog-wrapper", 3, "close", "minWidth", "width", "height"], [1, "overflow-y-scroll"], [1, "list-item"], [1, "list-text"], ["kendoButton", "", 1, "btn-no-border", 3, "click"], [1, "btn-margin-right"], [1, "fa-solid", "fa-plus"]], template: function FormToolbarComponent_Template(rf, ctx) { if (rf & 1) {
498
+ } }, inputs: { ShowSkipChatButton: "ShowSkipChatButton", form: "form" }, ngContentSelectors: _c2, decls: 10, vars: 9, consts: [[1, "toolbar-container"], ["kendoButton", "", "title", "Show History"], [3, "record"], ["kendoButton", "", 1, "list-button", 3, "title"], ["class", "dialog-wrapper", "title", "Confirm", 3, "minWidth", "width", "close", 4, "ngIf"], ["class", "dialog-wrapper", "title", "Select List to Add Record To", 3, "minWidth", "width", "height", "close", 4, "ngIf"], [3, "config", "visible"], ["kendoButton", "", "title", "Edit this Record"], ["kendoButton", "", "title", "Delete this Record"], ["kendoButton", "", "title", "Edit this Record", 3, "click"], [1, "fa-solid", "fa-pen-to-square"], ["kendoButton", "", "title", "Delete this Record", 3, "click"], [1, "fa-regular", "fa-trash-can"], ["kendoButton", "", "title", "Remove Favorite"], ["kendoButton", "", "title", "Make Favorite"], ["kendoButton", "", "title", "Remove Favorite", 3, "click"], [1, "fa-solid", "fa-star"], ["kendoButton", "", "title", "Make Favorite", 3, "click"], [1, "fa-regular", "fa-star"], ["kendoButton", "", "title", "Save Record", 3, "mouseup"], [1, "fa-solid", "fa-floppy-disk"], [1, "button-text"], ["kendoButton", "", "title", "Cancel Edit"], ["kendoButton", "", "title", "Fields you have changed"], ["kendoButton", "", "title", "Cancel Edit", 3, "click"], [1, "fa-solid", "fa-rotate-left"], ["kendoButton", "", "title", "Fields you have changed", 3, "click"], [1, "fa-solid", "fa-clipboard-list"], ["kendoButton", "", "title", "Show History", 3, "click"], [1, "fa-solid", "fa-clock-rotate-left"], [3, "dialogClosed", "record"], ["kendoButton", "", 1, "list-button", 3, "click", "title"], [1, "fa-solid", "fa-rectangle-list"], [1, "list-count-badge"], ["title", "Confirm", 1, "dialog-wrapper", 3, "close", "minWidth", "width"], [1, "k-m-7.5", "k-text-center"], [1, "popup-actions-btn"], ["kendoButton", "", "themeColor", "info", 1, "cancel-btn", 3, "click"], ["kendoButton", "", "fillMode", "outline", "themeColor", "info", 1, "yes-btn", 3, "click"], ["title", "Select List to Add Record To", 1, "dialog-wrapper", 3, "close", "minWidth", "width", "height"], [1, "overflow-y-scroll"], [1, "list-item"], [1, "list-text"], ["kendoButton", "", 1, "btn-no-border", 3, "click"], [1, "btn-margin-right"], [1, "fa-solid", "fa-plus"], [3, "complete", "cancel", "config", "visible"]], template: function FormToolbarComponent_Template(rf, ctx) { if (rf & 1) {
333
499
  i0.ɵɵprojectionDef(_c1);
334
500
  i0.ɵɵelementStart(0, "div", 0);
335
- i0.ɵɵtemplate(1, FormToolbarComponent_Conditional_1_Template, 3, 3)(2, FormToolbarComponent_Conditional_2_Template, 6, 2)(3, FormToolbarComponent_Conditional_3_Template, 2, 0, "button", 1)(4, FormToolbarComponent_Conditional_4_Template, 1, 1, "mj-record-changes", 2)(5, FormToolbarComponent_Conditional_5_Template, 2, 0, "button", 3);
501
+ i0.ɵɵtemplate(1, FormToolbarComponent_Conditional_1_Template, 3, 3)(2, FormToolbarComponent_Conditional_2_Template, 6, 2)(3, FormToolbarComponent_Conditional_3_Template, 2, 0, "button", 1)(4, FormToolbarComponent_Conditional_4_Template, 1, 1, "mj-record-changes", 2)(5, FormToolbarComponent_Conditional_5_Template, 3, 2, "button", 3);
336
502
  i0.ɵɵprojection(6);
337
- i0.ɵɵtemplate(7, FormToolbarComponent_kendo_dialog_7_Template, 8, 2, "kendo-dialog", 4)(8, FormToolbarComponent_kendo_dialog_8_Template, 7, 3, "kendo-dialog", 5);
503
+ i0.ɵɵtemplate(7, FormToolbarComponent_kendo_dialog_7_Template, 8, 2, "kendo-dialog", 4)(8, FormToolbarComponent_kendo_dialog_8_Template, 7, 3, "kendo-dialog", 5)(9, FormToolbarComponent_Conditional_9_Template, 1, 2, "mj-list-management-dialog", 6);
338
504
  i0.ɵɵelementEnd();
339
505
  } if (rf & 2) {
340
506
  i0.ɵɵclassProp("disabled", ctx.CurrentlyDisabled);
@@ -349,12 +515,14 @@ export class FormToolbarComponent {
349
515
  i0.ɵɵadvance(2);
350
516
  i0.ɵɵproperty("ngIf", ctx._deleteDialogVisible);
351
517
  i0.ɵɵadvance();
352
- i0.ɵɵproperty("ngIf", ctx.listDialogVisible);
353
- } }, dependencies: [i2.NgIf, i3.RecordChangesComponent, i4.ButtonComponent, i5.DialogComponent, i5.DialogActionsComponent], styles: [".toolbar-container[_ngcontent-%COMP%] {\n border-bottom: 2px solid #e5e7eb;\n padding: 12px 16px;\n margin-bottom: 0;\n background: #f9fafb;\n display: flex;\n gap: 7px;\n align-items: center;\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n margin-right: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:active {\n transform: translateY(0);\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[class*=\"fa-\"][_ngcontent-%COMP%] {\n font-size: 16px;\n}\n\n.toolbar-container[_ngcontent-%COMP%] .button-text[_ngcontent-%COMP%] {\n margin-left: 0;\n font-size: 14px;\n}\n\n\n\n.toolbar-separator[_ngcontent-%COMP%] {\n width: 1px;\n height: 24px;\n background: #d1d5db;\n margin: 0 8px;\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] {\n display: flex;\n gap: 7px;\n align-items: center;\n margin-left: auto;\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n .toolbar-container [toolbar-additional-controls] button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n .toolbar-container [toolbar-additional-controls] button:active {\n transform: translateY(0);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] input.section-search {\n padding: 8px 12px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n min-width: 180px;\n transition: all 0.2s;\n}\n\n .toolbar-container [toolbar-additional-controls] input.section-search:focus {\n outline: none;\n border-color: #9ca3af;\n box-shadow: 0 0 0 2px rgba(156, 163, 175, 0.2);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] .section-count {\n font-size: 12px;\n color: #4b5563;\n font-weight: 600;\n padding: 6px 14px;\n background: #e5e7eb;\n border: 1px solid #d1d5db;\n border-radius: 12px;\n white-space: nowrap;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] .clear-search-btn {\n position: absolute;\n right: 4px;\n top: 50%;\n transform: translateY(-50%);\n padding: 4px 8px !important;\n min-width: auto !important;\n background: transparent !important;\n border: none !important;\n color: #9ca3af !important;\n font-size: 14px;\n}\n\n .toolbar-container [toolbar-additional-controls] .clear-search-btn:hover {\n color: #6b7280 !important;\n background: transparent !important;\n transform: translateY(-50%);\n box-shadow: none !important;\n}\n\n\n\n mark.search-highlight {\n background: #fef08a;\n color: #854d0e;\n font-weight: 600;\n} \n\n.toolbar-container.disabled[_ngcontent-%COMP%] {\n pointer-events: none;\n opacity: 0.8;\n}\n\n.disabled[_ngcontent-%COMP%] {\n pointer-events: none;\n}\n\n .form-toolbar-status-message {\n background: #f0f0f0;\n padding: 15px;\n border-radius: 5px;\n box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n opacity: 1;\n z-index: 1000;\n color:#1d7032;\n font: 16px;\n font-weight: bold;\n min-width: 100px;\n\n text-align: center; \n\n}\n\n\n .form-toolbar-elapsed-time {\n \n\n\n\n position: absolute;\n top: 0;\n right: 0;\n color: darkgray;\n font-size: smaller;\n padding: 2px;\n border-radius: 5px;\n margin: 5px;\n z-index: 1000;\n}\n\n .form-toolbar-server-update-message {\n margin-top: 7px;\n font-size: smaller;\n color: black;\n}\n\n.list-item[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n padding-bottom: 5px;\n align-items: center;\n}"] });
518
+ i0.ɵɵproperty("ngIf", ctx.listDialogVisible && !ctx.useEnhancedListDialog);
519
+ i0.ɵɵadvance();
520
+ i0.ɵɵconditional(ctx.showEnhancedListDialog && ctx.listManagementConfig ? 9 : -1);
521
+ } }, dependencies: [i2.NgIf, i3.RecordChangesComponent, i4.ButtonComponent, i5.DialogComponent, i5.DialogActionsComponent, i6.ListManagementDialogComponent], styles: [".toolbar-container[_ngcontent-%COMP%] {\n border-bottom: 2px solid #e5e7eb;\n padding: 12px 16px;\n margin-bottom: 0;\n background: #f9fafb;\n display: flex;\n gap: 7px;\n align-items: center;\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n margin-right: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:active {\n transform: translateY(0);\n}\n\n.toolbar-container[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[class*=\"fa-\"][_ngcontent-%COMP%] {\n font-size: 16px;\n}\n\n.toolbar-container[_ngcontent-%COMP%] .button-text[_ngcontent-%COMP%] {\n margin-left: 0;\n font-size: 14px;\n}\n\n\n\n.toolbar-separator[_ngcontent-%COMP%] {\n width: 1px;\n height: 24px;\n background: #d1d5db;\n margin: 0 8px;\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] {\n display: flex;\n gap: 7px;\n align-items: center;\n margin-left: auto;\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n .toolbar-container [toolbar-additional-controls] button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n .toolbar-container [toolbar-additional-controls] button:active {\n transform: translateY(0);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] input.section-search {\n padding: 8px 12px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n min-width: 180px;\n transition: all 0.2s;\n}\n\n .toolbar-container [toolbar-additional-controls] input.section-search:focus {\n outline: none;\n border-color: #9ca3af;\n box-shadow: 0 0 0 2px rgba(156, 163, 175, 0.2);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] .section-count {\n font-size: 12px;\n color: #4b5563;\n font-weight: 600;\n padding: 6px 14px;\n background: #e5e7eb;\n border: 1px solid #d1d5db;\n border-radius: 12px;\n white-space: nowrap;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n\n\n .toolbar-container [toolbar-additional-controls] .clear-search-btn {\n position: absolute;\n right: 4px;\n top: 50%;\n transform: translateY(-50%);\n padding: 4px 8px !important;\n min-width: auto !important;\n background: transparent !important;\n border: none !important;\n color: #9ca3af !important;\n font-size: 14px;\n}\n\n .toolbar-container [toolbar-additional-controls] .clear-search-btn:hover {\n color: #6b7280 !important;\n background: transparent !important;\n transform: translateY(-50%);\n box-shadow: none !important;\n}\n\n\n\n mark.search-highlight {\n background: #fef08a;\n color: #854d0e;\n font-weight: 600;\n} \n\n.toolbar-container.disabled[_ngcontent-%COMP%] {\n pointer-events: none;\n opacity: 0.8;\n}\n\n.disabled[_ngcontent-%COMP%] {\n pointer-events: none;\n}\n\n .form-toolbar-status-message {\n background: #f0f0f0;\n padding: 15px;\n border-radius: 5px;\n box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n opacity: 1;\n z-index: 1000;\n color:#1d7032;\n font: 16px;\n font-weight: bold;\n min-width: 100px;\n\n text-align: center; \n\n}\n\n\n .form-toolbar-elapsed-time {\n \n\n\n\n position: absolute;\n top: 0;\n right: 0;\n color: darkgray;\n font-size: smaller;\n padding: 2px;\n border-radius: 5px;\n margin: 5px;\n z-index: 1000;\n}\n\n .form-toolbar-server-update-message {\n margin-top: 7px;\n font-size: smaller;\n color: black;\n}\n\n.list-item[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n padding-bottom: 5px;\n align-items: center;\n}\n\n\n\n.toolbar-container[_ngcontent-%COMP%] button.list-button[_ngcontent-%COMP%] {\n position: relative;\n}\n\n.list-count-badge[_ngcontent-%COMP%] {\n position: absolute;\n top: -6px;\n right: -6px;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n font-size: 11px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 4px rgba(37, 99, 235, 0.3);\n border: 2px solid #f9fafb;\n}"] });
354
522
  }
355
523
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormToolbarComponent, [{
356
524
  type: Component,
357
- args: [{ selector: 'mj-form-toolbar', template: "\n<div class=\"toolbar-container\" [class.disabled]=\"CurrentlyDisabled\">\n @if (!form.EditMode) {\n @if (form.UserCanEdit) {\n <button kendoButton (click)=\"form.StartEditMode()\" title=\"Edit this Record\">\n <span class=\"fa-solid fa-pen-to-square\"></span>\n </button> \n }\n @if(form.UserCanDelete){\n <button kendoButton (click)=\"toggleDeleteDialog(true)\" title=\"Delete this Record\">\n <span class=\"fa-regular fa-trash-can\"></span>\n </button> \n }\n @if (form.FavoriteInitDone) {\n @if (form.IsFavorite) {\n <button kendoButton (click)=\"form.RemoveFavorite()\" title=\"Remove Favorite\">\n <span class=\"fa-solid fa-star\"></span>\n </button> \n }\n @else {\n <button kendoButton (click)=\"form.MakeFavorite()\" title=\"Make Favorite\">\n <span class=\"fa-regular fa-star\"></span>\n </button> \n }\n }\n }\n @else {\n <button kendoButton (mouseup)=\"saveExistingRecord($event)\" title=\"Save Record\">\n <span class=\"fa-solid fa-floppy-disk\"></span>\n <span class=\"button-text\">Save</span>\n </button> \n @if (form.record.IsSaved) {\n <!-- Only show the cancel button if the record has already been saved - don't show for a new record. -->\n <button kendoButton (click)=\"form.CancelEdit()\" title=\"Cancel Edit\">\n <span class=\"fa-solid fa-rotate-left\"></span>\n <span class=\"button-text\">Cancel</span>\n </button> \n }\n @if (form.record.Dirty) {\n <button kendoButton (click)=\"form.ShowChanges()\" title=\"Fields you have changed\">\n <span class=\"fa-solid fa-clipboard-list\"></span>\n <span class=\"button-text\">Changes</span>\n </button> \n }\n }\n @if (form.EntityInfo?.TrackRecordChanges && !form.EditMode) {\n <button kendoButton (click)=\"form.handleHistoryDialog()\" title=\"Show History\">\n <span class=\"fa-solid fa-clock-rotate-left\"></span>\n </button>\n }\n <!-- \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n REPLACE THIS WITH GENERIC CHAT LATER in 3.0 LIFECYCLE - TO-Do TODO \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n -->\n <!-- @if (ShowSkipChatButton && !form.EditMode) {\n <button kendoButton (click)=\"ShowSkipChat()\" title=\"Discuss this record with Skip\">\n <span class=\"fa-regular fa-comment-dots\"></span>\n </button> \n } -->\n <!-- @if (form.EntityInfo) {\n <mj-skip-chat-with-record-window\n [LinkedEntityID]=\"form.EntityInfo.ID\"\n [LinkedEntityPrimaryKey]=\"LinkedEntityPrimaryKey\" \n #mjChat\n [WindowOpened]=\"_skipChatDialogVisible\" \n (WindowClosed)=\"ShowSkipChat()\"\n >\n </mj-skip-chat-with-record-window>\n } -->\n <!-- \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n REPLACE THIS WITH GENERIC CHAT LATER in 3.0 LIFECYCLE - TO-Do TODO \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n -->\n\n\n\n @if (form.isHistoryDialogOpen) {\n <mj-record-changes [record]=\"form.record\" (dialogClosed)=\"form.handleHistoryDialog()\"></mj-record-changes>\n }\n @if(!form.EditMode){\n <button kendoButton (click)=\"toggleListDialog(true)\" title=\"Add this record to a list\">\n <span class=\"fa-solid fa-rectangle-list\"></span>\n </button>\n }\n\n <!-- Slot for additional controls (section controls) - no separator needed with right-align -->\n <ng-content select=\"[toolbar-additional-controls]\"></ng-content>\n\n <kendo-dialog \n [minWidth]=\"450\"\n [width]=\"650\"\n class=\"dialog-wrapper\" \n title=\"Confirm\" \n *ngIf=\"_deleteDialogVisible\" \n (close)=\"toggleDeleteDialog(false)\">\n <p class=\"k-m-7.5 k-text-center\">\n Are you sure you want to delete this record?\n </p>\n <kendo-dialog-actions class=\"popup-actions-btn\">\n <button class=\"cancel-btn\" (click)=\"deleteRecord()\" kendoButton themeColor=\"info\">\n Yes, Delete\n </button>\n <button class=\"yes-btn\" (click)=\"toggleDeleteDialog(false)\" kendoButton fillMode=\"outline\" themeColor=\"info\">\n No, Cancel\n </button>\n </kendo-dialog-actions>\n </kendo-dialog>\n\n <kendo-dialog\n class=\"dialog-wrapper\"\n title=\"Select List to Add Record To\"\n *ngIf=\"listDialogVisible\"\n (close)=\"toggleListDialog(false)\"\n [minWidth]=\"250\"\n [width]=\"650\"\n [height]=\"550\"\n >\n <hr>\n @for(list of availableLists; track list){\n <div class=\"overflow-y-scroll\">\n <div class=\"list-item\">\n <div class=\"list-text\">\n {{list.Name}}\n </div>\n <button kendoButton class=\"btn-no-border\" (click)=\"addRecordToList(list)\">\n <div class=\"btn-margin-right\">\n <span class=\"fa-solid fa-plus\"></span>\n Add\n </div>\n </button>\n </div>\n <hr>\n </div>\n }\n <kendo-dialog-actions class=\"popup-actions-btn\">\n <button class=\"yes-btn\" (click)=\"toggleListDialog(false)\" kendoButton fillMode=\"outline\" themeColor=\"info\">\n Close\n </button>\n </kendo-dialog-actions>\n</kendo-dialog>\n</div>", styles: [".toolbar-container {\n border-bottom: 2px solid #e5e7eb;\n padding: 12px 16px;\n margin-bottom: 0;\n background: #f9fafb;\n display: flex;\n gap: 7px;\n align-items: center;\n}\n\n.toolbar-container button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n margin-right: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n.toolbar-container button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.toolbar-container button:active {\n transform: translateY(0);\n}\n\n.toolbar-container button span[class*=\"fa-\"] {\n font-size: 16px;\n}\n\n.toolbar-container .button-text {\n margin-left: 0;\n font-size: 14px;\n}\n\n/* Toolbar separator for additional controls */\n.toolbar-separator {\n width: 1px;\n height: 24px;\n background: #d1d5db;\n margin: 0 8px;\n}\n\n/* Additional controls container */\n::ng-deep .toolbar-container [toolbar-additional-controls] {\n display: flex;\n gap: 7px;\n align-items: center;\n margin-left: auto;\n}\n\n/* Additional controls buttons should match main toolbar buttons */\n::ng-deep .toolbar-container [toolbar-additional-controls] button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] button:active {\n transform: translateY(0);\n}\n\n/* Search input styling - reduced border radius */\n::ng-deep .toolbar-container [toolbar-additional-controls] input.section-search {\n padding: 8px 12px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n min-width: 180px;\n transition: all 0.2s;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] input.section-search:focus {\n outline: none;\n border-color: #9ca3af;\n box-shadow: 0 0 0 2px rgba(156, 163, 175, 0.2);\n}\n\n/* Section count styling - pill design */\n::ng-deep .toolbar-container [toolbar-additional-controls] .section-count {\n font-size: 12px;\n color: #4b5563;\n font-weight: 600;\n padding: 6px 14px;\n background: #e5e7eb;\n border: 1px solid #d1d5db;\n border-radius: 12px;\n white-space: nowrap;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n/* Clear search button styling */\n::ng-deep .toolbar-container [toolbar-additional-controls] .clear-search-btn {\n position: absolute;\n right: 4px;\n top: 50%;\n transform: translateY(-50%);\n padding: 4px 8px !important;\n min-width: auto !important;\n background: transparent !important;\n border: none !important;\n color: #9ca3af !important;\n font-size: 14px;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] .clear-search-btn:hover {\n color: #6b7280 !important;\n background: transparent !important;\n transform: translateY(-50%);\n box-shadow: none !important;\n}\n\n/* Yellow highlight for search matches */\n::ng-deep mark.search-highlight {\n background: #fef08a;\n color: #854d0e;\n font-weight: 600;\n} \n\n.toolbar-container.disabled {\n pointer-events: none;\n opacity: 0.8;\n}\n\n.disabled {\n pointer-events: none;\n}\n\n::ng-deep .form-toolbar-status-message {\n background: #f0f0f0;\n padding: 15px;\n border-radius: 5px;\n box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n opacity: 1;\n z-index: 1000;\n color:#1d7032;\n font: 16px;\n font-weight: bold;\n min-width: 100px;\n\n text-align: center; /* Center the text horizontally */\n}\n\n\n::ng-deep .form-toolbar-elapsed-time {\n /*\n we want this littler timer to be small dark gray text in the top right corner with a white background\n*/\n position: absolute;\n top: 0;\n right: 0;\n color: darkgray;\n font-size: smaller;\n padding: 2px;\n border-radius: 5px;\n margin: 5px;\n z-index: 1000;\n}\n\n::ng-deep .form-toolbar-server-update-message {\n margin-top: 7px;\n font-size: smaller;\n color: black;\n}\n\n.list-item {\n display: flex;\n justify-content: space-between;\n padding-bottom: 5px;\n align-items: center;\n}"] }]
525
+ args: [{ selector: 'mj-form-toolbar', template: "\n<div class=\"toolbar-container\" [class.disabled]=\"CurrentlyDisabled\">\n @if (!form.EditMode) {\n @if (form.UserCanEdit) {\n <button kendoButton (click)=\"form.StartEditMode()\" title=\"Edit this Record\">\n <span class=\"fa-solid fa-pen-to-square\"></span>\n </button> \n }\n @if(form.UserCanDelete){\n <button kendoButton (click)=\"toggleDeleteDialog(true)\" title=\"Delete this Record\">\n <span class=\"fa-regular fa-trash-can\"></span>\n </button> \n }\n @if (form.FavoriteInitDone) {\n @if (form.IsFavorite) {\n <button kendoButton (click)=\"form.RemoveFavorite()\" title=\"Remove Favorite\">\n <span class=\"fa-solid fa-star\"></span>\n </button> \n }\n @else {\n <button kendoButton (click)=\"form.MakeFavorite()\" title=\"Make Favorite\">\n <span class=\"fa-regular fa-star\"></span>\n </button> \n }\n }\n }\n @else {\n <button kendoButton (mouseup)=\"saveExistingRecord($event)\" title=\"Save Record\">\n <span class=\"fa-solid fa-floppy-disk\"></span>\n <span class=\"button-text\">Save</span>\n </button> \n @if (form.record.IsSaved) {\n <!-- Only show the cancel button if the record has already been saved - don't show for a new record. -->\n <button kendoButton (click)=\"form.CancelEdit()\" title=\"Cancel Edit\">\n <span class=\"fa-solid fa-rotate-left\"></span>\n <span class=\"button-text\">Cancel</span>\n </button> \n }\n @if (form.record.Dirty) {\n <button kendoButton (click)=\"form.ShowChanges()\" title=\"Fields you have changed\">\n <span class=\"fa-solid fa-clipboard-list\"></span>\n <span class=\"button-text\">Changes</span>\n </button> \n }\n }\n @if (form.EntityInfo?.TrackRecordChanges && !form.EditMode) {\n <button kendoButton (click)=\"form.handleHistoryDialog()\" title=\"Show History\">\n <span class=\"fa-solid fa-clock-rotate-left\"></span>\n </button>\n }\n <!-- \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n REPLACE THIS WITH GENERIC CHAT LATER in 3.0 LIFECYCLE - TO-Do TODO \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n -->\n <!-- @if (ShowSkipChatButton && !form.EditMode) {\n <button kendoButton (click)=\"ShowSkipChat()\" title=\"Discuss this record with Skip\">\n <span class=\"fa-regular fa-comment-dots\"></span>\n </button> \n } -->\n <!-- @if (form.EntityInfo) {\n <mj-skip-chat-with-record-window\n [LinkedEntityID]=\"form.EntityInfo.ID\"\n [LinkedEntityPrimaryKey]=\"LinkedEntityPrimaryKey\" \n #mjChat\n [WindowOpened]=\"_skipChatDialogVisible\" \n (WindowClosed)=\"ShowSkipChat()\"\n >\n </mj-skip-chat-with-record-window>\n } -->\n <!-- \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n REPLACE THIS WITH GENERIC CHAT LATER in 3.0 LIFECYCLE - TO-Do TODO \n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n ************************************************************\n -->\n\n\n\n @if (form.isHistoryDialogOpen) {\n <mj-record-changes [record]=\"form.record\" (dialogClosed)=\"form.handleHistoryDialog()\"></mj-record-changes>\n }\n @if(!form.EditMode){\n <button kendoButton (click)=\"toggleListDialog(true)\"\n [title]=\"recordListCount > 0 ? 'Member of ' + recordListCount + ' list(s) - Click to manage' : 'Add this record to a list'\"\n class=\"list-button\">\n <span class=\"fa-solid fa-rectangle-list\"></span>\n @if (recordListCount > 0) {\n <span class=\"list-count-badge\">{{ recordListCount }}</span>\n }\n </button>\n }\n\n <!-- Slot for additional controls (section controls) - no separator needed with right-align -->\n <ng-content select=\"[toolbar-additional-controls]\"></ng-content>\n\n <kendo-dialog \n [minWidth]=\"450\"\n [width]=\"650\"\n class=\"dialog-wrapper\" \n title=\"Confirm\" \n *ngIf=\"_deleteDialogVisible\" \n (close)=\"toggleDeleteDialog(false)\">\n <p class=\"k-m-7.5 k-text-center\">\n Are you sure you want to delete this record?\n </p>\n <kendo-dialog-actions class=\"popup-actions-btn\">\n <button class=\"cancel-btn\" (click)=\"deleteRecord()\" kendoButton themeColor=\"info\">\n Yes, Delete\n </button>\n <button class=\"yes-btn\" (click)=\"toggleDeleteDialog(false)\" kendoButton fillMode=\"outline\" themeColor=\"info\">\n No, Cancel\n </button>\n </kendo-dialog-actions>\n </kendo-dialog>\n\n <!-- Legacy List Dialog (fallback when useEnhancedListDialog is false) -->\n <kendo-dialog\n class=\"dialog-wrapper\"\n title=\"Select List to Add Record To\"\n *ngIf=\"listDialogVisible && !useEnhancedListDialog\"\n (close)=\"toggleListDialog(false)\"\n [minWidth]=\"250\"\n [width]=\"650\"\n [height]=\"550\"\n >\n <hr>\n @for(list of availableLists; track list){\n <div class=\"overflow-y-scroll\">\n <div class=\"list-item\">\n <div class=\"list-text\">\n {{list.Name}}\n </div>\n <button kendoButton class=\"btn-no-border\" (click)=\"addRecordToList(list)\">\n <div class=\"btn-margin-right\">\n <span class=\"fa-solid fa-plus\"></span>\n Add\n </div>\n </button>\n </div>\n <hr>\n </div>\n }\n <kendo-dialog-actions class=\"popup-actions-btn\">\n <button class=\"yes-btn\" (click)=\"toggleListDialog(false)\" kendoButton fillMode=\"outline\" themeColor=\"info\">\n Close\n </button>\n </kendo-dialog-actions>\n</kendo-dialog>\n\n <!-- Enhanced List Management Dialog -->\n @if (showEnhancedListDialog && listManagementConfig) {\n <mj-list-management-dialog\n [config]=\"listManagementConfig\"\n [visible]=\"showEnhancedListDialog\"\n (complete)=\"onEnhancedListDialogComplete($event)\"\n (cancel)=\"onEnhancedListDialogCancel()\">\n </mj-list-management-dialog>\n }\n</div>", styles: [".toolbar-container {\n border-bottom: 2px solid #e5e7eb;\n padding: 12px 16px;\n margin-bottom: 0;\n background: #f9fafb;\n display: flex;\n gap: 7px;\n align-items: center;\n}\n\n.toolbar-container button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n margin-right: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n.toolbar-container button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.toolbar-container button:active {\n transform: translateY(0);\n}\n\n.toolbar-container button span[class*=\"fa-\"] {\n font-size: 16px;\n}\n\n.toolbar-container .button-text {\n margin-left: 0;\n font-size: 14px;\n}\n\n/* Toolbar separator for additional controls */\n.toolbar-separator {\n width: 1px;\n height: 24px;\n background: #d1d5db;\n margin: 0 8px;\n}\n\n/* Additional controls container */\n::ng-deep .toolbar-container [toolbar-additional-controls] {\n display: flex;\n gap: 7px;\n align-items: center;\n margin-left: auto;\n}\n\n/* Additional controls buttons should match main toolbar buttons */\n::ng-deep .toolbar-container [toolbar-additional-controls] button {\n padding: 8px 14px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n background: white;\n color: #374151;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-weight: 500;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] button:hover {\n background: #f3f4f6;\n border-color: #9ca3af;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] button:active {\n transform: translateY(0);\n}\n\n/* Search input styling - reduced border radius */\n::ng-deep .toolbar-container [toolbar-additional-controls] input.section-search {\n padding: 8px 12px;\n font-size: 14px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n min-width: 180px;\n transition: all 0.2s;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] input.section-search:focus {\n outline: none;\n border-color: #9ca3af;\n box-shadow: 0 0 0 2px rgba(156, 163, 175, 0.2);\n}\n\n/* Section count styling - pill design */\n::ng-deep .toolbar-container [toolbar-additional-controls] .section-count {\n font-size: 12px;\n color: #4b5563;\n font-weight: 600;\n padding: 6px 14px;\n background: #e5e7eb;\n border: 1px solid #d1d5db;\n border-radius: 12px;\n white-space: nowrap;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n/* Clear search button styling */\n::ng-deep .toolbar-container [toolbar-additional-controls] .clear-search-btn {\n position: absolute;\n right: 4px;\n top: 50%;\n transform: translateY(-50%);\n padding: 4px 8px !important;\n min-width: auto !important;\n background: transparent !important;\n border: none !important;\n color: #9ca3af !important;\n font-size: 14px;\n}\n\n::ng-deep .toolbar-container [toolbar-additional-controls] .clear-search-btn:hover {\n color: #6b7280 !important;\n background: transparent !important;\n transform: translateY(-50%);\n box-shadow: none !important;\n}\n\n/* Yellow highlight for search matches */\n::ng-deep mark.search-highlight {\n background: #fef08a;\n color: #854d0e;\n font-weight: 600;\n} \n\n.toolbar-container.disabled {\n pointer-events: none;\n opacity: 0.8;\n}\n\n.disabled {\n pointer-events: none;\n}\n\n::ng-deep .form-toolbar-status-message {\n background: #f0f0f0;\n padding: 15px;\n border-radius: 5px;\n box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n opacity: 1;\n z-index: 1000;\n color:#1d7032;\n font: 16px;\n font-weight: bold;\n min-width: 100px;\n\n text-align: center; /* Center the text horizontally */\n}\n\n\n::ng-deep .form-toolbar-elapsed-time {\n /*\n we want this littler timer to be small dark gray text in the top right corner with a white background\n*/\n position: absolute;\n top: 0;\n right: 0;\n color: darkgray;\n font-size: smaller;\n padding: 2px;\n border-radius: 5px;\n margin: 5px;\n z-index: 1000;\n}\n\n::ng-deep .form-toolbar-server-update-message {\n margin-top: 7px;\n font-size: smaller;\n color: black;\n}\n\n.list-item {\n display: flex;\n justify-content: space-between;\n padding-bottom: 5px;\n align-items: center;\n}\n\n/* List button with count badge */\n.toolbar-container button.list-button {\n position: relative;\n}\n\n.list-count-badge {\n position: absolute;\n top: -6px;\n right: -6px;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n font-size: 11px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 4px rgba(37, 99, 235, 0.3);\n border: 2px solid #f9fafb;\n}"] }]
358
526
  }], () => [{ type: i1.Router }], { ShowSkipChatButton: [{
359
527
  type: Input
360
528
  }], form: [{
@@ -363,5 +531,5 @@ export class FormToolbarComponent {
363
531
  type: ContentChild,
364
532
  args: ['additionalControls', { read: ElementRef }]
365
533
  }] }); })();
366
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FormToolbarComponent, { className: "FormToolbarComponent", filePath: "src/lib/form-toolbar.ts", lineNumber: 15 }); })();
534
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FormToolbarComponent, { className: "FormToolbarComponent", filePath: "src/lib/form-toolbar.ts", lineNumber: 16 }); })();
367
535
  //# sourceMappingURL=form-toolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-toolbar.js","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts","../../src/lib/form-toolbar.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-toolbar.js","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts","../../src/lib/form-toolbar.html"],"names":[],"mappings":"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"}
package/dist/module.d.ts CHANGED
@@ -11,9 +11,10 @@ import * as i9 from "@progress/kendo-angular-dialog";
11
11
  import * as i10 from "@progress/kendo-angular-indicators";
12
12
  import * as i11 from "@memberjunction/ng-shared";
13
13
  import * as i12 from "@memberjunction/ng-markdown";
14
+ import * as i13 from "@memberjunction/ng-list-management";
14
15
  export declare class FormToolbarModule {
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<FormToolbarModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<FormToolbarModule, [typeof i1.FormToolbarComponent, typeof i2.RecordFormContainerComponent], [typeof i3.CommonModule, typeof i4.FormsModule, typeof i5.RecordChangesModule, typeof i6.BaseFormsModule, typeof i7.ButtonsModule, typeof i8.InputsModule, typeof i9.DialogsModule, typeof i10.IndicatorsModule, typeof i11.MemberJunctionSharedModule, typeof i12.MarkdownModule], [typeof i1.FormToolbarComponent, typeof i2.RecordFormContainerComponent]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FormToolbarModule, [typeof i1.FormToolbarComponent, typeof i2.RecordFormContainerComponent], [typeof i3.CommonModule, typeof i4.FormsModule, typeof i5.RecordChangesModule, typeof i6.BaseFormsModule, typeof i7.ButtonsModule, typeof i8.InputsModule, typeof i9.DialogsModule, typeof i10.IndicatorsModule, typeof i11.MemberJunctionSharedModule, typeof i12.MarkdownModule, typeof i13.ListManagementModule], [typeof i1.FormToolbarComponent, typeof i2.RecordFormContainerComponent]>;
17
18
  static ɵinj: i0.ɵɵInjectorDeclaration<FormToolbarModule>;
18
19
  }
19
20
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAwBA,qBAsBa,iBAAiB;yCAAjB,iBAAiB;0CAAjB,iBAAiB;0CAAjB,iBAAiB;CAAI"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAyBA,qBAuBa,iBAAiB;yCAAjB,iBAAiB;0CAAjB,iBAAiB;0CAAjB,iBAAiB;CAAI"}
package/dist/module.js CHANGED
@@ -12,6 +12,7 @@ import { DialogsModule } from '@progress/kendo-angular-dialog';
12
12
  // MJ
13
13
  import { RecordChangesModule } from '@memberjunction/ng-record-changes';
14
14
  import { MemberJunctionSharedModule } from '@memberjunction/ng-shared';
15
+ import { ListManagementModule } from '@memberjunction/ng-list-management';
15
16
  // Local to package
16
17
  import { FormToolbarComponent } from './lib/form-toolbar';
17
18
  import { RecordFormContainerComponent } from './lib/record-form-container.component';
@@ -29,7 +30,8 @@ export class FormToolbarModule {
29
30
  DialogsModule,
30
31
  IndicatorsModule,
31
32
  MemberJunctionSharedModule,
32
- MarkdownModule] });
33
+ MarkdownModule,
34
+ ListManagementModule] });
33
35
  }
34
36
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormToolbarModule, [{
35
37
  type: NgModule,
@@ -48,7 +50,8 @@ export class FormToolbarModule {
48
50
  DialogsModule,
49
51
  IndicatorsModule,
50
52
  MemberJunctionSharedModule,
51
- MarkdownModule
53
+ MarkdownModule,
54
+ ListManagementModule
52
55
  ],
53
56
  exports: [
54
57
  FormToolbarComponent,
@@ -66,6 +69,7 @@ export class FormToolbarModule {
66
69
  DialogsModule,
67
70
  IndicatorsModule,
68
71
  MemberJunctionSharedModule,
69
- MarkdownModule], exports: [FormToolbarComponent,
72
+ MarkdownModule,
73
+ ListManagementModule], exports: [FormToolbarComponent,
70
74
  RecordFormContainerComponent] }); })();
71
75
  //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,KAAK;AACL,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEvE,mBAAmB;AACnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;;AAyBhE,MAAM,OAAO,iBAAiB;2EAAjB,iBAAiB;4DAAjB,iBAAiB;gEAhB1B,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,eAAe;YACf,aAAa;YACb,YAAY;YACZ,aAAa;YACb,gBAAgB;YAChB,0BAA0B;YAC1B,cAAc;;iFAOL,iBAAiB;cAtB7B,QAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,oBAAoB;oBACpB,4BAA4B;iBAC7B;gBACD,OAAO,EAAE;oBACP,YAAY;oBACZ,WAAW;oBACX,mBAAmB;oBACnB,eAAe;oBACf,aAAa;oBACb,YAAY;oBACZ,aAAa;oBACb,gBAAgB;oBAChB,0BAA0B;oBAC1B,cAAc;iBACf;gBACD,OAAO,EAAE;oBACP,oBAAoB;oBACpB,4BAA4B;iBAC7B;aACF;;wFACY,iBAAiB,mBApB1B,oBAAoB;QACpB,4BAA4B,aAG5B,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,aAAa;QACb,YAAY;QACZ,aAAa;QACb,gBAAgB;QAChB,0BAA0B;QAC1B,cAAc,aAGd,oBAAoB;QACpB,4BAA4B"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,KAAK;AACL,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,mBAAmB;AACnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;;AA0BhE,MAAM,OAAO,iBAAiB;2EAAjB,iBAAiB;4DAAjB,iBAAiB;gEAjB1B,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,eAAe;YACf,aAAa;YACb,YAAY;YACZ,aAAa;YACb,gBAAgB;YAChB,0BAA0B;YAC1B,cAAc;YACd,oBAAoB;;iFAOX,iBAAiB;cAvB7B,QAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,oBAAoB;oBACpB,4BAA4B;iBAC7B;gBACD,OAAO,EAAE;oBACP,YAAY;oBACZ,WAAW;oBACX,mBAAmB;oBACnB,eAAe;oBACf,aAAa;oBACb,YAAY;oBACZ,aAAa;oBACb,gBAAgB;oBAChB,0BAA0B;oBAC1B,cAAc;oBACd,oBAAoB;iBACrB;gBACD,OAAO,EAAE;oBACP,oBAAoB;oBACpB,4BAA4B;iBAC7B;aACF;;wFACY,iBAAiB,mBArB1B,oBAAoB;QACpB,4BAA4B,aAG5B,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,aAAa;QACb,YAAY;QACZ,aAAa;QACb,gBAAgB;QAChB,0BAA0B;QAC1B,cAAc;QACd,oBAAoB,aAGpB,oBAAoB;QACpB,4BAA4B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-form-toolbar",
3
- "version": "2.131.0",
3
+ "version": "2.133.0",
4
4
  "description": "MemberJunction: Angular Form Toolbar",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -25,18 +25,19 @@
25
25
  "@angular/router": "18.0.2"
26
26
  },
27
27
  "dependencies": {
28
- "@memberjunction/core": "2.131.0",
29
- "@memberjunction/core-entities": "2.131.0",
30
- "@memberjunction/global": "2.131.0",
31
- "@memberjunction/ng-base-forms": "2.131.0",
32
- "@memberjunction/ng-container-directives": "2.131.0",
33
- "@memberjunction/ng-record-changes": "2.131.0",
34
- "@memberjunction/ng-shared": "2.131.0",
28
+ "@memberjunction/core": "2.133.0",
29
+ "@memberjunction/core-entities": "2.133.0",
30
+ "@memberjunction/global": "2.133.0",
31
+ "@memberjunction/ng-base-forms": "2.133.0",
32
+ "@memberjunction/ng-container-directives": "2.133.0",
33
+ "@memberjunction/ng-record-changes": "2.133.0",
34
+ "@memberjunction/ng-list-management": "2.133.0",
35
+ "@memberjunction/ng-shared": "2.133.0",
35
36
  "@progress/kendo-angular-buttons": "16.2.0",
36
37
  "@progress/kendo-angular-dialog": "16.2.0",
37
38
  "@progress/kendo-angular-indicators": "16.2.0",
38
39
  "@progress/kendo-angular-inputs": "16.2.0",
39
- "@memberjunction/ng-markdown": "2.131.0",
40
+ "@memberjunction/ng-markdown": "2.133.0",
40
41
  "tslib": "^2.3.0"
41
42
  },
42
43
  "sideEffects": false,