@memberjunction/ng-base-forms 1.2.2 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/base-form-component.d.ts +4 -1
- package/dist/lib/base-form-component.d.ts.map +1 -1
- package/dist/lib/base-form-component.js +12 -3
- package/dist/lib/form-toolbar.d.ts +19 -4
- package/dist/lib/form-toolbar.d.ts.map +1 -1
- package/dist/lib/form-toolbar.js +279 -70
- package/dist/lib/section-loader-component.d.ts.map +1 -1
- package/dist/lib/section-loader-component.js +4 -0
- package/dist/module.d.ts +3 -1
- package/dist/module.d.ts.map +1 -1
- package/dist/module.js +11 -3
- package/package.json +8 -7
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AfterViewInit, OnInit, OnDestroy, QueryList, ElementRef } from '@angular/core';
|
|
2
|
-
import { EntityInfo, ValidationResult, BaseEntity, EntityPermissionType, EntityRelationshipInfo, RunViewParams } from '@memberjunction/core';
|
|
2
|
+
import { EntityInfo, ValidationResult, BaseEntity, EntityPermissionType, EntityRelationshipInfo, RunViewParams, RecordDependency } from '@memberjunction/core';
|
|
3
3
|
import { UserViewGridComponent } from '@memberjunction/ng-user-view-grid';
|
|
4
4
|
import { BaseRecordComponent } from './base-record-component';
|
|
5
5
|
import { SharedService } from '@memberjunction/ng-shared';
|
|
@@ -25,6 +25,8 @@ export declare abstract class BaseFormComponent extends BaseRecordComponent impl
|
|
|
25
25
|
GridBottomMargin: number;
|
|
26
26
|
FavoriteInitDone: boolean;
|
|
27
27
|
isHistoryDialogOpen: boolean;
|
|
28
|
+
showDeleteDialog: boolean;
|
|
29
|
+
showCreateDialog: boolean;
|
|
28
30
|
private splitterLayoutChangeSubject;
|
|
29
31
|
private _pendingRecords;
|
|
30
32
|
private _updatingBrowserUrl;
|
|
@@ -83,6 +85,7 @@ export declare abstract class BaseFormComponent extends BaseRecordComponent impl
|
|
|
83
85
|
splitterLayoutChange(): void;
|
|
84
86
|
protected ResizeGrids(): void;
|
|
85
87
|
ShowDependencies(): Promise<void>;
|
|
88
|
+
GetRecordDependencies(): Promise<RecordDependency[]>;
|
|
86
89
|
get EntityInfo(): EntityInfo | undefined;
|
|
87
90
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseFormComponent, never>;
|
|
88
91
|
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseFormComponent, never, never, {}, {}, never, never, false, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-form-component.d.ts","sourceRoot":"","sources":["../../src/lib/base-form-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAA2B,SAAS,EAAE,UAAU,EAAa,MAAM,eAAe,CAAC;AAG5H,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,oBAAoB,EAC9D,sBAAsB,EAAY,aAAa,
|
|
1
|
+
{"version":3,"file":"base-form-component.d.ts","sourceRoot":"","sources":["../../src/lib/base-form-component.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,8 @@ export class BaseFormComponent extends BaseRecordComponent {
|
|
|
38
38
|
this.GridBottomMargin = 100;
|
|
39
39
|
this.FavoriteInitDone = false;
|
|
40
40
|
this.isHistoryDialogOpen = false;
|
|
41
|
+
this.showDeleteDialog = false;
|
|
42
|
+
this.showCreateDialog = false;
|
|
41
43
|
this.splitterLayoutChangeSubject = new Subject();
|
|
42
44
|
this._pendingRecords = [];
|
|
43
45
|
this._updatingBrowserUrl = false;
|
|
@@ -52,7 +54,7 @@ export class BaseFormComponent extends BaseRecordComponent {
|
|
|
52
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
55
|
if (this.record) {
|
|
54
56
|
const md = new Metadata();
|
|
55
|
-
this._isFavorite = yield md.GetRecordFavoriteStatus(md.CurrentUser.ID, this.record.EntityInfo.Name, this.record.
|
|
57
|
+
this._isFavorite = yield md.GetRecordFavoriteStatus(md.CurrentUser.ID, this.record.EntityInfo.Name, this.record.CompositeKey);
|
|
56
58
|
this.FavoriteInitDone = true;
|
|
57
59
|
// DEBUG ONLY output to console our full record info for debugging
|
|
58
60
|
if (this.__debug) {
|
|
@@ -173,7 +175,7 @@ export class BaseFormComponent extends BaseRecordComponent {
|
|
|
173
175
|
SetFavoriteStatus(isFavorite) {
|
|
174
176
|
return __awaiter(this, void 0, void 0, function* () {
|
|
175
177
|
const md = new Metadata();
|
|
176
|
-
yield md.SetRecordFavoriteStatus(md.CurrentUser.ID, this.record.EntityInfo.Name, this.record.
|
|
178
|
+
yield md.SetRecordFavoriteStatus(md.CurrentUser.ID, this.record.EntityInfo.Name, this.record.CompositeKey, isFavorite);
|
|
177
179
|
this._isFavorite = isFavorite;
|
|
178
180
|
});
|
|
179
181
|
}
|
|
@@ -468,7 +470,7 @@ export class BaseFormComponent extends BaseRecordComponent {
|
|
|
468
470
|
return __awaiter(this, void 0, void 0, function* () {
|
|
469
471
|
// for now dump to console
|
|
470
472
|
const md = new Metadata();
|
|
471
|
-
const dep = yield md.GetRecordDependencies(this.record.EntityInfo.Name, this.record.
|
|
473
|
+
const dep = yield md.GetRecordDependencies(this.record.EntityInfo.Name, this.record.CompositeKey);
|
|
472
474
|
console.log('Dependencies for: ' + this.record.EntityInfo.Name + ' ' + this.record.PrimaryKey.Value);
|
|
473
475
|
console.log(dep);
|
|
474
476
|
// if (confirm('Do you want to merge records test?') == true) {
|
|
@@ -481,6 +483,13 @@ export class BaseFormComponent extends BaseRecordComponent {
|
|
|
481
483
|
// }
|
|
482
484
|
});
|
|
483
485
|
}
|
|
486
|
+
GetRecordDependencies() {
|
|
487
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
488
|
+
const md = new Metadata();
|
|
489
|
+
const dependencies = yield md.GetRecordDependencies(this.record.EntityInfo.Name, this.record.CompositeKey);
|
|
490
|
+
return dependencies;
|
|
491
|
+
});
|
|
492
|
+
}
|
|
484
493
|
get EntityInfo() {
|
|
485
494
|
try {
|
|
486
495
|
const r = this.record;
|
|
@@ -1,13 +1,28 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
1
2
|
import { BaseFormComponent } from './base-form-component';
|
|
2
|
-
import {
|
|
3
|
+
import { BaseEntity, CompositeKey } from '@memberjunction/core';
|
|
4
|
+
import { Router } from '@angular/router';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class FormToolbarComponent {
|
|
6
|
+
export declare class FormToolbarComponent implements OnInit {
|
|
7
|
+
private router;
|
|
5
8
|
ShowSkipChatButton: boolean;
|
|
6
9
|
form: BaseFormComponent;
|
|
7
|
-
|
|
8
|
-
|
|
10
|
+
showLoader: boolean;
|
|
11
|
+
showCreateDialog: boolean;
|
|
12
|
+
showDeleteDialog: boolean;
|
|
9
13
|
SkipChatVisible: boolean;
|
|
14
|
+
createNewDialogTitle: string;
|
|
15
|
+
newRecord: BaseEntity;
|
|
16
|
+
get LinkedEntityCompositeKey(): CompositeKey;
|
|
17
|
+
constructor(router: Router);
|
|
18
|
+
ngOnInit(): Promise<void>;
|
|
19
|
+
saveExistingRecord(event: MouseEvent): void;
|
|
10
20
|
ShowSkipChat(): void;
|
|
21
|
+
toggleCreateDialog(show: boolean): void;
|
|
22
|
+
toggleDeleteDialog(show: boolean): void;
|
|
23
|
+
deleteRecord(): Promise<void>;
|
|
24
|
+
createNewRecord(): Promise<void>;
|
|
25
|
+
saveNewRecord(): Promise<void>;
|
|
11
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormToolbarComponent, never>;
|
|
12
27
|
static ɵcmp: i0.ɵɵComponentDeclaration<FormToolbarComponent, "mj-form-toolbar", never, { "ShowSkipChatButton": { "alias": "ShowSkipChatButton"; "required": false; }; "form": { "alias": "form"; "required": false; }; }, {}, never, never, false, never>;
|
|
13
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-toolbar.d.ts","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"form-toolbar.d.ts","sourceRoot":"","sources":["../../src/lib/form-toolbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,MAAM,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,YAAY,EAA8B,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAGzC,qBA+Ha,oBAAqB,YAAW,MAAM;IAe5B,OAAO,CAAC,MAAM;IAdxB,kBAAkB,EAAE,OAAO,CAAQ;IACnC,IAAI,EAAG,iBAAiB,CAAC;IAE3B,UAAU,EAAE,OAAO,CAAS;IAC5B,gBAAgB,EAAE,OAAO,CAAS;IAClC,gBAAgB,EAAE,OAAO,CAAS;IAClC,eAAe,EAAE,OAAO,CAAS;IACjC,oBAAoB,EAAE,MAAM,CAAuB;IACnD,SAAS,EAAG,UAAU,CAAC;IAE9B,IAAW,wBAAwB,IAAI,YAAY,CAElD;gBAE0B,MAAM,EAAE,MAAM;IAG5B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAS3C,YAAY,IAAI,IAAI;IAKpB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAIvC,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAIjC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB7B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAMhC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;yCAxElC,oBAAoB;2CAApB,oBAAoB;CAsFhC"}
|
package/dist/lib/form-toolbar.js
CHANGED
|
@@ -1,133 +1,283 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import { Component, Input } from '@angular/core';
|
|
2
11
|
import { SharedService } from '@memberjunction/ng-shared';
|
|
12
|
+
import { Metadata } from '@memberjunction/core';
|
|
3
13
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@
|
|
5
|
-
import * as i2 from "@
|
|
6
|
-
import * as i3 from "@memberjunction/ng-
|
|
14
|
+
import * as i1 from "@angular/router";
|
|
15
|
+
import * as i2 from "@angular/common";
|
|
16
|
+
import * as i3 from "@memberjunction/ng-record-changes";
|
|
17
|
+
import * as i4 from "@progress/kendo-angular-buttons";
|
|
18
|
+
import * as i5 from "@memberjunction/ng-ask-skip";
|
|
19
|
+
import * as i6 from "@progress/kendo-angular-dialog";
|
|
20
|
+
import * as i7 from "@progress/kendo-angular-indicators";
|
|
21
|
+
import * as i8 from "./section-loader-component";
|
|
7
22
|
function FormToolbarComponent_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
8
|
-
const _r9 = i0.ɵɵgetCurrentView();
|
|
9
|
-
i0.ɵɵelementStart(0, "button", 6);
|
|
10
|
-
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.form.StartEditMode()); });
|
|
11
|
-
i0.ɵɵelement(1, "span", 7);
|
|
12
|
-
i0.ɵɵelementStart(2, "span", 8);
|
|
13
|
-
i0.ɵɵtext(3, "Edit");
|
|
14
|
-
i0.ɵɵelementEnd()();
|
|
15
|
-
} }
|
|
16
|
-
function FormToolbarComponent_Conditional_1_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
17
23
|
const _r13 = i0.ɵɵgetCurrentView();
|
|
18
24
|
i0.ɵɵelementStart(0, "button", 10);
|
|
19
|
-
i0.ɵɵlistener("click", function
|
|
25
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r12.toggleCreateDialog(true)); });
|
|
20
26
|
i0.ɵɵelement(1, "span", 11);
|
|
21
|
-
i0.ɵɵ
|
|
27
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
28
|
+
i0.ɵɵtext(3, "Create");
|
|
29
|
+
i0.ɵɵelementEnd()();
|
|
22
30
|
} }
|
|
23
|
-
function
|
|
31
|
+
function FormToolbarComponent_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
24
32
|
const _r15 = i0.ɵɵgetCurrentView();
|
|
25
|
-
i0.ɵɵelementStart(0, "button",
|
|
26
|
-
i0.ɵɵlistener("click", function
|
|
27
|
-
i0.ɵɵelement(1, "span",
|
|
33
|
+
i0.ɵɵelementStart(0, "button", 13);
|
|
34
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r14.toggleDeleteDialog(true)); });
|
|
35
|
+
i0.ɵɵelement(1, "span", 14);
|
|
36
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
37
|
+
i0.ɵɵtext(3, "Delete");
|
|
38
|
+
i0.ɵɵelementEnd()();
|
|
39
|
+
} }
|
|
40
|
+
function FormToolbarComponent_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
41
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
42
|
+
i0.ɵɵelementStart(0, "button", 15);
|
|
43
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r16.form.StartEditMode()); });
|
|
44
|
+
i0.ɵɵelement(1, "span", 16);
|
|
45
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
46
|
+
i0.ɵɵtext(3, "Edit");
|
|
47
|
+
i0.ɵɵelementEnd()();
|
|
48
|
+
} }
|
|
49
|
+
function FormToolbarComponent_Conditional_1_Conditional_3_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
50
|
+
const _r21 = i0.ɵɵgetCurrentView();
|
|
51
|
+
i0.ɵɵelementStart(0, "button", 18);
|
|
52
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_3_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r21); const ctx_r20 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r20.form.RemoveFavorite()); });
|
|
53
|
+
i0.ɵɵelement(1, "span", 19);
|
|
28
54
|
i0.ɵɵelementEnd();
|
|
29
55
|
} }
|
|
30
|
-
function
|
|
31
|
-
|
|
56
|
+
function FormToolbarComponent_Conditional_1_Conditional_3_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
57
|
+
const _r23 = i0.ɵɵgetCurrentView();
|
|
58
|
+
i0.ɵɵelementStart(0, "button", 20);
|
|
59
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_1_Conditional_3_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const ctx_r22 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r22.form.MakeFavorite()); });
|
|
60
|
+
i0.ɵɵelement(1, "span", 21);
|
|
61
|
+
i0.ɵɵelementEnd();
|
|
62
|
+
} }
|
|
63
|
+
function FormToolbarComponent_Conditional_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
64
|
+
i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_3_Conditional_0_Template, 2, 0, "button", 17)(1, FormToolbarComponent_Conditional_1_Conditional_3_Conditional_1_Template, 2, 0);
|
|
32
65
|
} if (rf & 2) {
|
|
33
|
-
const
|
|
34
|
-
i0.ɵɵconditional(0,
|
|
66
|
+
const ctx_r11 = i0.ɵɵnextContext(2);
|
|
67
|
+
i0.ɵɵconditional(0, ctx_r11.form.IsFavorite ? 0 : 1);
|
|
35
68
|
} }
|
|
36
69
|
function FormToolbarComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
37
|
-
i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_0_Template, 4, 0, "button",
|
|
70
|
+
i0.ɵɵtemplate(0, FormToolbarComponent_Conditional_1_Conditional_0_Template, 4, 0, "button", 7)(1, FormToolbarComponent_Conditional_1_Conditional_1_Template, 4, 0, "button", 8)(2, FormToolbarComponent_Conditional_1_Conditional_2_Template, 4, 0, "button", 9)(3, FormToolbarComponent_Conditional_1_Conditional_3_Template, 2, 1);
|
|
38
71
|
} if (rf & 2) {
|
|
39
72
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
40
|
-
i0.ɵɵconditional(0, ctx_r0.form.
|
|
73
|
+
i0.ɵɵconditional(0, ctx_r0.form.UserCanCreate ? 0 : -1);
|
|
74
|
+
i0.ɵɵadvance();
|
|
75
|
+
i0.ɵɵconditional(1, ctx_r0.form.UserCanDelete ? 1 : -1);
|
|
41
76
|
i0.ɵɵadvance();
|
|
42
|
-
i0.ɵɵconditional(
|
|
77
|
+
i0.ɵɵconditional(2, ctx_r0.form.UserCanEdit ? 2 : -1);
|
|
78
|
+
i0.ɵɵadvance();
|
|
79
|
+
i0.ɵɵconditional(3, ctx_r0.form.FavoriteInitDone ? 3 : -1);
|
|
43
80
|
} }
|
|
44
81
|
function FormToolbarComponent_Conditional_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
45
|
-
const
|
|
46
|
-
i0.ɵɵelementStart(0, "button",
|
|
47
|
-
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Conditional_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
48
|
-
i0.ɵɵelement(1, "span",
|
|
49
|
-
i0.ɵɵelementStart(2, "span",
|
|
82
|
+
const _r26 = i0.ɵɵgetCurrentView();
|
|
83
|
+
i0.ɵɵelementStart(0, "button", 27);
|
|
84
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Conditional_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r26); const ctx_r25 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r25.form.ShowChanges()); });
|
|
85
|
+
i0.ɵɵelement(1, "span", 28);
|
|
86
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
50
87
|
i0.ɵɵtext(3, "Changes");
|
|
51
88
|
i0.ɵɵelementEnd()();
|
|
52
89
|
} }
|
|
53
90
|
function FormToolbarComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
54
|
-
const
|
|
55
|
-
i0.ɵɵelementStart(0, "button",
|
|
56
|
-
i0.ɵɵlistener("mouseup", function FormToolbarComponent_Conditional_2_Template_button_mouseup_0_listener($event) { i0.ɵɵrestoreView(
|
|
57
|
-
i0.ɵɵelement(1, "span",
|
|
58
|
-
i0.ɵɵelementStart(2, "span",
|
|
91
|
+
const _r28 = i0.ɵɵgetCurrentView();
|
|
92
|
+
i0.ɵɵelementStart(0, "button", 22);
|
|
93
|
+
i0.ɵɵlistener("mouseup", function FormToolbarComponent_Conditional_2_Template_button_mouseup_0_listener($event) { i0.ɵɵrestoreView(_r28); const ctx_r27 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r27.saveExistingRecord($event)); });
|
|
94
|
+
i0.ɵɵelement(1, "span", 23);
|
|
95
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
59
96
|
i0.ɵɵtext(3, "Save");
|
|
60
97
|
i0.ɵɵelementEnd()();
|
|
61
|
-
i0.ɵɵelementStart(4, "button",
|
|
62
|
-
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Template_button_click_4_listener() { i0.ɵɵrestoreView(
|
|
63
|
-
i0.ɵɵelement(5, "span",
|
|
64
|
-
i0.ɵɵelementStart(6, "span",
|
|
98
|
+
i0.ɵɵelementStart(4, "button", 24);
|
|
99
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_2_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r28); const ctx_r29 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r29.form.CancelEdit()); });
|
|
100
|
+
i0.ɵɵelement(5, "span", 25);
|
|
101
|
+
i0.ɵɵelementStart(6, "span", 12);
|
|
65
102
|
i0.ɵɵtext(7, "Cancel");
|
|
66
103
|
i0.ɵɵelementEnd()();
|
|
67
|
-
i0.ɵɵtemplate(8, FormToolbarComponent_Conditional_2_Conditional_8_Template, 4, 0, "button",
|
|
104
|
+
i0.ɵɵtemplate(8, FormToolbarComponent_Conditional_2_Conditional_8_Template, 4, 0, "button", 26);
|
|
68
105
|
} if (rf & 2) {
|
|
69
106
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
70
107
|
i0.ɵɵadvance(8);
|
|
71
108
|
i0.ɵɵconditional(8, ctx_r1.form.record.Dirty ? 8 : -1);
|
|
72
109
|
} }
|
|
73
110
|
function FormToolbarComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
74
|
-
const
|
|
75
|
-
i0.ɵɵelementStart(0, "button",
|
|
76
|
-
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
77
|
-
i0.ɵɵelement(1, "span",
|
|
78
|
-
i0.ɵɵelementStart(2, "span",
|
|
111
|
+
const _r31 = i0.ɵɵgetCurrentView();
|
|
112
|
+
i0.ɵɵelementStart(0, "button", 29);
|
|
113
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r31); const ctx_r30 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r30.form.handleHistoryDialog()); });
|
|
114
|
+
i0.ɵɵelement(1, "span", 30);
|
|
115
|
+
i0.ɵɵelementStart(2, "span", 12);
|
|
79
116
|
i0.ɵɵtext(3, "History");
|
|
80
117
|
i0.ɵɵelementEnd()();
|
|
81
118
|
} }
|
|
82
119
|
function FormToolbarComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
83
|
-
const
|
|
84
|
-
i0.ɵɵelementStart(0, "button",
|
|
85
|
-
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
86
|
-
i0.ɵɵelement(1, "span",
|
|
120
|
+
const _r33 = i0.ɵɵgetCurrentView();
|
|
121
|
+
i0.ɵɵelementStart(0, "button", 31);
|
|
122
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_Conditional_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r33); const ctx_r32 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r32.ShowSkipChat()); });
|
|
123
|
+
i0.ɵɵelement(1, "span", 32);
|
|
87
124
|
i0.ɵɵelementEnd();
|
|
88
125
|
} }
|
|
89
126
|
function FormToolbarComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
90
|
-
const
|
|
91
|
-
i0.ɵɵelementStart(0, "mj-skip-chat-with-record-window",
|
|
92
|
-
i0.ɵɵlistener("WindowClosed", function FormToolbarComponent_Conditional_5_Template_mj_skip_chat_with_record_window_WindowClosed_0_listener() { i0.ɵɵrestoreView(
|
|
127
|
+
const _r36 = i0.ɵɵgetCurrentView();
|
|
128
|
+
i0.ɵɵelementStart(0, "mj-skip-chat-with-record-window", 33, 34);
|
|
129
|
+
i0.ɵɵlistener("WindowClosed", function FormToolbarComponent_Conditional_5_Template_mj_skip_chat_with_record_window_WindowClosed_0_listener() { i0.ɵɵrestoreView(_r36); const ctx_r35 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r35.ShowSkipChat()); });
|
|
93
130
|
i0.ɵɵelementEnd();
|
|
94
131
|
} if (rf & 2) {
|
|
95
132
|
const ctx_r4 = i0.ɵɵnextContext();
|
|
96
|
-
i0.ɵɵproperty("LinkedEntityID", ctx_r4.form.EntityInfo.ID)("
|
|
133
|
+
i0.ɵɵproperty("LinkedEntityID", ctx_r4.form.EntityInfo.ID)("LinkedEntityCompositeKey", ctx_r4.LinkedEntityCompositeKey)("WindowOpened", ctx_r4.SkipChatVisible);
|
|
97
134
|
} }
|
|
98
135
|
function FormToolbarComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
99
|
-
const
|
|
100
|
-
i0.ɵɵelementStart(0, "mj-record-changes",
|
|
101
|
-
i0.ɵɵlistener("dialogClosed", function FormToolbarComponent_Conditional_6_Template_mj_record_changes_dialogClosed_0_listener() { i0.ɵɵrestoreView(
|
|
136
|
+
const _r38 = i0.ɵɵgetCurrentView();
|
|
137
|
+
i0.ɵɵelementStart(0, "mj-record-changes", 35);
|
|
138
|
+
i0.ɵɵlistener("dialogClosed", function FormToolbarComponent_Conditional_6_Template_mj_record_changes_dialogClosed_0_listener() { i0.ɵɵrestoreView(_r38); const ctx_r37 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r37.form.handleHistoryDialog()); });
|
|
102
139
|
i0.ɵɵelementEnd();
|
|
103
140
|
} if (rf & 2) {
|
|
104
141
|
const ctx_r5 = i0.ɵɵnextContext();
|
|
105
142
|
i0.ɵɵproperty("record", ctx_r5.form.record);
|
|
106
143
|
} }
|
|
144
|
+
function FormToolbarComponent_kendo_dialog_7_Template(rf, ctx) { if (rf & 1) {
|
|
145
|
+
const _r40 = i0.ɵɵgetCurrentView();
|
|
146
|
+
i0.ɵɵelementStart(0, "kendo-dialog", 36);
|
|
147
|
+
i0.ɵɵlistener("close", function FormToolbarComponent_kendo_dialog_7_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r40); const ctx_r39 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r39.toggleDeleteDialog(false)); });
|
|
148
|
+
i0.ɵɵelementStart(1, "p", 37);
|
|
149
|
+
i0.ɵɵtext(2, " Are you sure you want to delete this record? ");
|
|
150
|
+
i0.ɵɵelementEnd();
|
|
151
|
+
i0.ɵɵelementStart(3, "kendo-dialog-actions", 38)(4, "button", 39);
|
|
152
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_7_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r40); const ctx_r41 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r41.deleteRecord()); });
|
|
153
|
+
i0.ɵɵtext(5, " Yes, Delete ");
|
|
154
|
+
i0.ɵɵelementEnd();
|
|
155
|
+
i0.ɵɵelementStart(6, "button", 40);
|
|
156
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_7_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r40); const ctx_r42 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r42.toggleDeleteDialog(false)); });
|
|
157
|
+
i0.ɵɵtext(7, " No, Cancel ");
|
|
158
|
+
i0.ɵɵelementEnd()()();
|
|
159
|
+
} if (rf & 2) {
|
|
160
|
+
i0.ɵɵproperty("minWidth", 450)("width", 650);
|
|
161
|
+
} }
|
|
162
|
+
function FormToolbarComponent_kendo_dialog_8_Conditional_1_kendo_loader_0_Template(rf, ctx) { if (rf & 1) {
|
|
163
|
+
i0.ɵɵelement(0, "kendo-loader", 42);
|
|
164
|
+
} }
|
|
165
|
+
function FormToolbarComponent_kendo_dialog_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
166
|
+
i0.ɵɵtemplate(0, FormToolbarComponent_kendo_dialog_8_Conditional_1_kendo_loader_0_Template, 1, 0, "kendo-loader", 43);
|
|
167
|
+
} if (rf & 2) {
|
|
168
|
+
const ctx_r43 = i0.ɵɵnextContext(2);
|
|
169
|
+
i0.ɵɵproperty("ngIf", ctx_r43.showLoader);
|
|
170
|
+
} }
|
|
171
|
+
function FormToolbarComponent_kendo_dialog_8_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
172
|
+
i0.ɵɵelement(0, "mj-form-section", 44);
|
|
173
|
+
} if (rf & 2) {
|
|
174
|
+
const ctx_r44 = i0.ɵɵnextContext(2);
|
|
175
|
+
i0.ɵɵproperty("Entity", ctx_r44.form.record.EntityInfo.Name)("record", ctx_r44.newRecord)("EditMode", true);
|
|
176
|
+
} }
|
|
177
|
+
function FormToolbarComponent_kendo_dialog_8_Template(rf, ctx) { if (rf & 1) {
|
|
178
|
+
const _r47 = i0.ɵɵgetCurrentView();
|
|
179
|
+
i0.ɵɵelementStart(0, "kendo-dialog", 41);
|
|
180
|
+
i0.ɵɵlistener("close", function FormToolbarComponent_kendo_dialog_8_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r47); const ctx_r46 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r46.toggleCreateDialog(false)); });
|
|
181
|
+
i0.ɵɵtemplate(1, FormToolbarComponent_kendo_dialog_8_Conditional_1_Template, 1, 1, "kendo-loader", 42)(2, FormToolbarComponent_kendo_dialog_8_Conditional_2_Template, 1, 3);
|
|
182
|
+
i0.ɵɵelementStart(3, "kendo-dialog-actions", 38)(4, "button", 39);
|
|
183
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_8_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r47); const ctx_r48 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r48.saveNewRecord()); });
|
|
184
|
+
i0.ɵɵtext(5, " Create ");
|
|
185
|
+
i0.ɵɵelementEnd();
|
|
186
|
+
i0.ɵɵelementStart(6, "button", 40);
|
|
187
|
+
i0.ɵɵlistener("click", function FormToolbarComponent_kendo_dialog_8_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r47); const ctx_r49 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r49.toggleCreateDialog(false)); });
|
|
188
|
+
i0.ɵɵtext(7, " Cancel ");
|
|
189
|
+
i0.ɵɵelementEnd()()();
|
|
190
|
+
} if (rf & 2) {
|
|
191
|
+
const ctx_r7 = i0.ɵɵnextContext();
|
|
192
|
+
i0.ɵɵproperty("minWidth", 750)("minHeight", 500)("maxHeight", 800)("title", ctx_r7.createNewDialogTitle);
|
|
193
|
+
i0.ɵɵadvance();
|
|
194
|
+
i0.ɵɵconditional(1, ctx_r7.showLoader ? 1 : 2);
|
|
195
|
+
} }
|
|
107
196
|
export class FormToolbarComponent {
|
|
108
|
-
|
|
197
|
+
get LinkedEntityCompositeKey() {
|
|
198
|
+
return this.form.record.CompositeKey;
|
|
199
|
+
}
|
|
200
|
+
constructor(router) {
|
|
201
|
+
this.router = router;
|
|
109
202
|
this.ShowSkipChatButton = true;
|
|
203
|
+
this.showLoader = false;
|
|
204
|
+
this.showCreateDialog = false;
|
|
205
|
+
this.showDeleteDialog = false;
|
|
110
206
|
this.SkipChatVisible = false;
|
|
207
|
+
this.createNewDialogTitle = 'Create New Record';
|
|
208
|
+
}
|
|
209
|
+
ngOnInit() {
|
|
210
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
211
|
+
if (this.form && this.form.record) {
|
|
212
|
+
this.createNewDialogTitle = `Create New ${this.form.record.EntityInfo.Name} Record`;
|
|
213
|
+
yield this.createNewRecord();
|
|
214
|
+
}
|
|
215
|
+
});
|
|
111
216
|
}
|
|
112
|
-
|
|
217
|
+
saveExistingRecord(event) {
|
|
113
218
|
// Ensure the button takes focus
|
|
114
219
|
const button = event.target;
|
|
115
220
|
button.focus();
|
|
116
221
|
// Proceed to call your save record function
|
|
117
222
|
this.form.SaveRecord(true);
|
|
118
223
|
}
|
|
119
|
-
get LinkedEntityPrimaryKeys() {
|
|
120
|
-
return this.form.record.PrimaryKeys.map(pk => ({ FieldName: pk.Name, Value: pk.Value }));
|
|
121
|
-
}
|
|
122
224
|
ShowSkipChat() {
|
|
123
225
|
this.SkipChatVisible = !this.SkipChatVisible;
|
|
124
226
|
SharedService.Instance.InvokeManualResize();
|
|
125
227
|
}
|
|
228
|
+
toggleCreateDialog(show) {
|
|
229
|
+
this.showCreateDialog = show;
|
|
230
|
+
}
|
|
231
|
+
toggleDeleteDialog(show) {
|
|
232
|
+
this.showDeleteDialog = show;
|
|
233
|
+
}
|
|
234
|
+
deleteRecord() {
|
|
235
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
236
|
+
this.toggleDeleteDialog(false);
|
|
237
|
+
let dependencies = yield this.form.GetRecordDependencies();
|
|
238
|
+
if (dependencies.length > 0) {
|
|
239
|
+
SharedService.Instance.CreateSimpleNotification(`This record cannot be deleted because it is being used by ${dependencies.length} other records.`, 'error', 2000);
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
console.log(this.form.record.CompositeKey);
|
|
243
|
+
const deleteResult = yield this.form.record.Delete();
|
|
244
|
+
if (deleteResult) {
|
|
245
|
+
SharedService.Instance.CreateSimpleNotification('Record deleted succesfully', 'success', 2000);
|
|
246
|
+
this.router.navigate(['/']);
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
SharedService.Instance.CreateSimpleNotification('Error deleting record', 'error', 2000);
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
createNewRecord() {
|
|
254
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
255
|
+
const md = new Metadata();
|
|
256
|
+
this.newRecord = yield md.GetEntityObject(this.form.record.EntityInfo.Name);
|
|
257
|
+
this.newRecord.NewRecord();
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
saveNewRecord() {
|
|
261
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
262
|
+
console.log('Create new record button pressed');
|
|
263
|
+
this.showLoader = true;
|
|
264
|
+
let saveResult = yield this.newRecord.Save();
|
|
265
|
+
if (saveResult) {
|
|
266
|
+
this.toggleCreateDialog(false);
|
|
267
|
+
SharedService.Instance.CreateSimpleNotification(`Successfully created new ${this.form.record.EntityInfo.Name} record`, 'success', 1000);
|
|
268
|
+
this.router.navigate(['resource', 'record', this.newRecord.CompositeKey.ToURLSegment()], { queryParams: { Entity: this.newRecord.EntityInfo.Name } });
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
SharedService.Instance.CreateSimpleNotification(`Failed to create new ${this.form.record.EntityInfo.Name} record`, 'error', 1000);
|
|
272
|
+
}
|
|
273
|
+
this.showLoader = false;
|
|
274
|
+
});
|
|
275
|
+
}
|
|
126
276
|
}
|
|
127
|
-
FormToolbarComponent.ɵfac = function FormToolbarComponent_Factory(t) { return new (t || FormToolbarComponent)(); };
|
|
128
|
-
FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormToolbarComponent, selectors: [["mj-form-toolbar"]], inputs: { ShowSkipChatButton: "ShowSkipChatButton", form: "form" }, decls:
|
|
277
|
+
FormToolbarComponent.ɵfac = function FormToolbarComponent_Factory(t) { return new (t || FormToolbarComponent)(i0.ɵɵdirectiveInject(i1.Router)); };
|
|
278
|
+
FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormToolbarComponent, selectors: [["mj-form-toolbar"]], inputs: { ShowSkipChatButton: "ShowSkipChatButton", form: "form" }, decls: 9, vars: 7, consts: [[1, "toolbar-container"], ["kendoButton", "", "title", "Show History"], ["kendoButton", "", "title", "Discuss this record with Skip"], [3, "LinkedEntityID", "LinkedEntityCompositeKey", "WindowOpened"], [3, "record"], ["class", "dialog-wrapper", "title", "Confirm", 3, "minWidth", "width", "close", 4, "ngIf"], ["class", "dialog-wrapper", 3, "minWidth", "minHeight", "maxHeight", "title", "close", 4, "ngIf"], ["kendoButton", "", "title", "Create New Record"], ["kendoButton", "", "title", "Delete this Record"], ["kendoButton", "", "title", "Edit this Record"], ["kendoButton", "", "title", "Create New Record", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "button-text"], ["kendoButton", "", "title", "Delete this Record", 3, "click"], [1, "fa-regular", "fa-trash-can"], ["kendoButton", "", "title", "Edit this Record", 3, "click"], [1, "fa-solid", "fa-pen-to-square"], ["kendoButton", "", "title", "Remove 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"], ["kendoButton", "", "title", "Cancel Edit", 3, "click"], [1, "fa-solid", "fa-rotate-left"], ["kendoButton", "", "title", "Fields you have changed"], ["kendoButton", "", "title", "Fields you have changed", 3, "click"], [1, "fa-solid", "fa-clipboard-list"], ["kendoButton", "", "title", "Show History", 3, "click"], [1, "fa-solid", "fa-business-time"], ["kendoButton", "", "title", "Discuss this record with Skip", 3, "click"], [1, "fa-regular", "fa-comment-dots"], [3, "LinkedEntityID", "LinkedEntityCompositeKey", "WindowOpened", "WindowClosed"], ["mjChat", ""], [3, "record", "dialogClosed"], ["title", "Confirm", 1, "dialog-wrapper", 3, "minWidth", "width", "close"], [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"], [1, "dialog-wrapper", 3, "minWidth", "minHeight", "maxHeight", "title", "close"], ["type", "converging-spinner"], ["type", "converging-spinner", 4, "ngIf"], ["Section", "details", 3, "Entity", "record", "EditMode"]], template: function FormToolbarComponent_Template(rf, ctx) { if (rf & 1) {
|
|
129
279
|
i0.ɵɵelementStart(0, "div", 0);
|
|
130
|
-
i0.ɵɵtemplate(1, FormToolbarComponent_Conditional_1_Template,
|
|
280
|
+
i0.ɵɵtemplate(1, FormToolbarComponent_Conditional_1_Template, 4, 4)(2, FormToolbarComponent_Conditional_2_Template, 9, 1)(3, FormToolbarComponent_Conditional_3_Template, 4, 0, "button", 1)(4, FormToolbarComponent_Conditional_4_Template, 2, 0, "button", 2)(5, FormToolbarComponent_Conditional_5_Template, 2, 3, "mj-skip-chat-with-record-window", 3)(6, FormToolbarComponent_Conditional_6_Template, 1, 1, "mj-record-changes", 4)(7, FormToolbarComponent_kendo_dialog_7_Template, 8, 2, "kendo-dialog", 5)(8, FormToolbarComponent_kendo_dialog_8_Template, 8, 5, "kendo-dialog", 6);
|
|
131
281
|
i0.ɵɵelementEnd();
|
|
132
282
|
} if (rf & 2) {
|
|
133
283
|
i0.ɵɵadvance();
|
|
@@ -140,14 +290,30 @@ FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormTo
|
|
|
140
290
|
i0.ɵɵconditional(5, ctx.form.EntityInfo ? 5 : -1);
|
|
141
291
|
i0.ɵɵadvance();
|
|
142
292
|
i0.ɵɵconditional(6, ctx.form.isHistoryDialogOpen ? 6 : -1);
|
|
143
|
-
|
|
293
|
+
i0.ɵɵadvance();
|
|
294
|
+
i0.ɵɵproperty("ngIf", ctx.showDeleteDialog);
|
|
295
|
+
i0.ɵɵadvance();
|
|
296
|
+
i0.ɵɵproperty("ngIf", ctx.showCreateDialog);
|
|
297
|
+
} }, dependencies: [i2.NgIf, i3.RecordChangesComponent, i4.ButtonComponent, i5.SkipChatWithRecordWindowComponent, i6.DialogComponent, i6.DialogActionsComponent, i7.LoaderComponent, i8.SectionLoaderComponent], styles: ["button[_ngcontent-%COMP%] { margin-right: 10px; }", ".button-text[_ngcontent-%COMP%] { margin-left: 7px; }", ".toolbar-container[_ngcontent-%COMP%] { border-bottom: solid 1px lightgray; padding-bottom: 10px; margin-bottom: 5px; }"] });
|
|
144
298
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormToolbarComponent, [{
|
|
145
299
|
type: Component,
|
|
146
300
|
args: [{ selector: 'mj-form-toolbar', template: `
|
|
147
301
|
<div class="toolbar-container">
|
|
148
302
|
@if (!form.EditMode) {
|
|
303
|
+
@if(form.UserCanCreate){
|
|
304
|
+
<button kendoButton (click)="toggleCreateDialog(true)" title="Create New Record">
|
|
305
|
+
<span class="fa-solid fa-plus"></span>
|
|
306
|
+
<span class="button-text">Create</span>
|
|
307
|
+
</button>
|
|
308
|
+
}
|
|
309
|
+
@if(form.UserCanDelete){
|
|
310
|
+
<button kendoButton (click)="toggleDeleteDialog(true)" title="Delete this Record">
|
|
311
|
+
<span class="fa-regular fa-trash-can"></span>
|
|
312
|
+
<span class="button-text">Delete</span>
|
|
313
|
+
</button>
|
|
314
|
+
}
|
|
149
315
|
@if (form.UserCanEdit) {
|
|
150
|
-
<button kendoButton (click)="form.StartEditMode()" title="Edit Record">
|
|
316
|
+
<button kendoButton (click)="form.StartEditMode()" title="Edit this Record">
|
|
151
317
|
<span class="fa-solid fa-pen-to-square"></span>
|
|
152
318
|
<span class="button-text">Edit</span>
|
|
153
319
|
</button>
|
|
@@ -166,7 +332,7 @@ FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormTo
|
|
|
166
332
|
}
|
|
167
333
|
}
|
|
168
334
|
@else {
|
|
169
|
-
<button kendoButton (mouseup)="
|
|
335
|
+
<button kendoButton (mouseup)="saveExistingRecord($event)" title="Save Record">
|
|
170
336
|
<span class="fa-solid fa-floppy-disk"></span>
|
|
171
337
|
<span class="button-text">Save</span>
|
|
172
338
|
</button>
|
|
@@ -195,7 +361,7 @@ FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormTo
|
|
|
195
361
|
@if (form.EntityInfo) {
|
|
196
362
|
<mj-skip-chat-with-record-window
|
|
197
363
|
[LinkedEntityID]="form.EntityInfo.ID"
|
|
198
|
-
[
|
|
364
|
+
[LinkedEntityCompositeKey]="LinkedEntityCompositeKey"
|
|
199
365
|
#mjChat
|
|
200
366
|
[WindowOpened]="SkipChatVisible"
|
|
201
367
|
(WindowClosed)="ShowSkipChat()"
|
|
@@ -205,11 +371,54 @@ FormToolbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormTo
|
|
|
205
371
|
@if (form.isHistoryDialogOpen) {
|
|
206
372
|
<mj-record-changes [record]="form.record" (dialogClosed)="form.handleHistoryDialog()"></mj-record-changes>
|
|
207
373
|
}
|
|
374
|
+
<kendo-dialog
|
|
375
|
+
[minWidth]="450"
|
|
376
|
+
[width]="650"
|
|
377
|
+
class="dialog-wrapper"
|
|
378
|
+
title="Confirm"
|
|
379
|
+
*ngIf="showDeleteDialog"
|
|
380
|
+
(close)="toggleDeleteDialog(false)">
|
|
381
|
+
<p class="k-m-7.5 k-text-center">
|
|
382
|
+
Are you sure you want to delete this record?
|
|
383
|
+
</p>
|
|
384
|
+
<kendo-dialog-actions class="popup-actions-btn">
|
|
385
|
+
<button class="cancel-btn" (click)="deleteRecord()" kendoButton themeColor="info">
|
|
386
|
+
Yes, Delete
|
|
387
|
+
</button>
|
|
388
|
+
<button class="yes-btn" (click)="toggleDeleteDialog(false)" kendoButton fillMode="outline" themeColor="info">
|
|
389
|
+
No, Cancel
|
|
390
|
+
</button>
|
|
391
|
+
</kendo-dialog-actions>
|
|
392
|
+
</kendo-dialog>
|
|
393
|
+
<kendo-dialog
|
|
394
|
+
[minWidth]="750"
|
|
395
|
+
[minHeight]="500"
|
|
396
|
+
[maxHeight]= 800
|
|
397
|
+
class="dialog-wrapper"
|
|
398
|
+
[title]="createNewDialogTitle"
|
|
399
|
+
*ngIf="showCreateDialog"
|
|
400
|
+
(close)="toggleCreateDialog(false)"
|
|
401
|
+
>
|
|
402
|
+
@if(showLoader){
|
|
403
|
+
<kendo-loader *ngIf="showLoader" type="converging-spinner"></kendo-loader>
|
|
404
|
+
}
|
|
405
|
+
@else{
|
|
406
|
+
<mj-form-section [Entity]="form.record.EntityInfo.Name" Section="details" [record]="newRecord" [EditMode]="true"></mj-form-section>
|
|
407
|
+
}
|
|
408
|
+
<kendo-dialog-actions class="popup-actions-btn">
|
|
409
|
+
<button class="cancel-btn" (click)="saveNewRecord()" kendoButton themeColor="info">
|
|
410
|
+
Create
|
|
411
|
+
</button>
|
|
412
|
+
<button class="yes-btn" (click)="toggleCreateDialog(false)" kendoButton fillMode="outline" themeColor="info">
|
|
413
|
+
Cancel
|
|
414
|
+
</button>
|
|
415
|
+
</kendo-dialog-actions>
|
|
416
|
+
</kendo-dialog>
|
|
208
417
|
</div>
|
|
209
418
|
`, styles: ["button { margin-right: 10px; }", ".button-text { margin-left: 7px; }", ".toolbar-container { border-bottom: solid 1px lightgray; padding-bottom: 10px; margin-bottom: 5px; }"] }]
|
|
210
|
-
}],
|
|
419
|
+
}], () => [{ type: i1.Router }], { ShowSkipChatButton: [{
|
|
211
420
|
type: Input
|
|
212
421
|
}], form: [{
|
|
213
422
|
type: Input
|
|
214
423
|
}] }); })();
|
|
215
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FormToolbarComponent, { className: "FormToolbarComponent", filePath: "src/lib/form-toolbar.ts", lineNumber:
|
|
424
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FormToolbarComponent, { className: "FormToolbarComponent", filePath: "src/lib/form-toolbar.ts", lineNumber: 135 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"section-loader-component.d.ts","sourceRoot":"","sources":["../../src/lib/section-loader-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAa,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAU,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAG3K,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;;AAElD,qBAIa,sBAAuB,YAAW,aAAa,EAAE,SAAS,EAAE,SAAS;IAUlE,OAAO,CAAC,GAAG;IATd,MAAM,EAAG,MAAM,CAAC;IAChB,OAAO,EAAG,MAAM,CAAC;IACjB,MAAM,EAAG,UAAU,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAS;IACzB,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,CAA4B;IAElB,SAAS,EAAG,gBAAgB,CAAC;IAEjF,OAAO,CAAC,WAAW,CAAyC;gBACxC,GAAG,EAAE,iBAAiB;IAE1C,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAOzC,eAAe,IAAI,IAAI;IAOvB,OAAO,CAAC,aAAa;
|
|
1
|
+
{"version":3,"file":"section-loader-component.d.ts","sourceRoot":"","sources":["../../src/lib/section-loader-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAa,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAU,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAG3K,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;;AAElD,qBAIa,sBAAuB,YAAW,aAAa,EAAE,SAAS,EAAE,SAAS;IAUlE,OAAO,CAAC,GAAG;IATd,MAAM,EAAG,MAAM,CAAC;IAChB,OAAO,EAAG,MAAM,CAAC;IACjB,MAAM,EAAG,UAAU,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAS;IACzB,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,CAA4B;IAElB,SAAS,EAAG,gBAAgB,CAAC;IAEjF,OAAO,CAAC,WAAW,CAAyC;gBACxC,GAAG,EAAE,iBAAiB;IAE1C,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAOzC,eAAe,IAAI,IAAI;IAOvB,OAAO,CAAC,aAAa;IAiBrB,WAAW;yCA3CF,sBAAsB;2CAAtB,sBAAsB;CA+ClC"}
|
|
@@ -24,6 +24,7 @@ export class SectionLoaderComponent {
|
|
|
24
24
|
Promise.resolve().then(() => this.loadComponent());
|
|
25
25
|
}
|
|
26
26
|
loadComponent() {
|
|
27
|
+
console.log("loading component?", `${this.Entity}.${this.Section}`);
|
|
27
28
|
const sectionInfo = MJGlobal.Instance.ClassFactory.GetRegistration(BaseFormSectionComponent, `${this.Entity}.${this.Section}`);
|
|
28
29
|
if (sectionInfo) {
|
|
29
30
|
const componentRef = this.container.createComponent(sectionInfo.SubClass);
|
|
@@ -33,6 +34,9 @@ export class SectionLoaderComponent {
|
|
|
33
34
|
this._sectionObj.EditMode = this.EditMode;
|
|
34
35
|
this.cdr.detectChanges(); // Manually trigger change detection so that the call below to LoadComplete.emit() will occur after DOM is updated
|
|
35
36
|
}
|
|
37
|
+
else {
|
|
38
|
+
console.log("no section info");
|
|
39
|
+
}
|
|
36
40
|
this.LoadComplete.emit();
|
|
37
41
|
}
|
|
38
42
|
ngOnDestroy() {
|
package/dist/module.d.ts
CHANGED
|
@@ -12,9 +12,11 @@ import * as i10 from "@progress/kendo-angular-dateinputs";
|
|
|
12
12
|
import * as i11 from "@progress/kendo-angular-dropdowns";
|
|
13
13
|
import * as i12 from "@memberjunction/ng-link-directives";
|
|
14
14
|
import * as i13 from "@memberjunction/ng-ask-skip";
|
|
15
|
+
import * as i14 from "@progress/kendo-angular-dialog";
|
|
16
|
+
import * as i15 from "@progress/kendo-angular-indicators";
|
|
15
17
|
export declare class BaseFormsModule {
|
|
16
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseFormsModule, never>;
|
|
17
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<BaseFormsModule, [typeof i1.SectionLoaderComponent, typeof i2.FormToolbarComponent, typeof i3.MJFormField], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i6.MJTabStripModule, typeof i7.RecordChangesModule, typeof i8.ButtonsModule, typeof i9.InputsModule, typeof i10.DateInputsModule, typeof i11.DropDownsModule, typeof i12.LinkDirectivesModule, typeof i13.AskSkipModule], [typeof i1.SectionLoaderComponent, typeof i2.FormToolbarComponent, typeof i3.MJFormField]>;
|
|
19
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<BaseFormsModule, [typeof i1.SectionLoaderComponent, typeof i2.FormToolbarComponent, typeof i3.MJFormField], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i6.MJTabStripModule, typeof i7.RecordChangesModule, typeof i8.ButtonsModule, typeof i9.InputsModule, typeof i10.DateInputsModule, typeof i11.DropDownsModule, typeof i12.LinkDirectivesModule, typeof i13.AskSkipModule, typeof i14.DialogsModule, typeof i15.IndicatorsModule], [typeof i1.SectionLoaderComponent, typeof i2.FormToolbarComponent, typeof i3.MJFormField]>;
|
|
18
20
|
static ɵinj: i0.ɵɵInjectorDeclaration<BaseFormsModule>;
|
|
19
21
|
}
|
|
20
22
|
//# sourceMappingURL=module.d.ts.map
|
package/dist/module.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAsBA,qBA0Ba,eAAe;yCAAf,eAAe;0CAAf,eAAe;0CAAf,eAAe;CAAI"}
|
package/dist/module.js
CHANGED
|
@@ -6,6 +6,8 @@ import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
|
6
6
|
import { DropDownsModule } from '@progress/kendo-angular-dropdowns';
|
|
7
7
|
import { InputsModule } from '@progress/kendo-angular-inputs';
|
|
8
8
|
import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
|
|
9
|
+
import { DialogsModule } from '@progress/kendo-angular-dialog';
|
|
10
|
+
import { IndicatorsModule } from '@progress/kendo-angular-indicators';
|
|
9
11
|
import { RecordChangesModule } from '@memberjunction/ng-record-changes';
|
|
10
12
|
import { MJTabStripModule } from '@memberjunction/ng-tabstrip';
|
|
11
13
|
import { SectionLoaderComponent } from './lib/section-loader-component';
|
|
@@ -27,7 +29,9 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
|
|
|
27
29
|
DateInputsModule,
|
|
28
30
|
DropDownsModule,
|
|
29
31
|
LinkDirectivesModule,
|
|
30
|
-
AskSkipModule
|
|
32
|
+
AskSkipModule,
|
|
33
|
+
DialogsModule,
|
|
34
|
+
IndicatorsModule] });
|
|
31
35
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseFormsModule, [{
|
|
32
36
|
type: NgModule,
|
|
33
37
|
args: [{
|
|
@@ -46,7 +50,9 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
|
|
|
46
50
|
DateInputsModule,
|
|
47
51
|
DropDownsModule,
|
|
48
52
|
LinkDirectivesModule,
|
|
49
|
-
AskSkipModule
|
|
53
|
+
AskSkipModule,
|
|
54
|
+
DialogsModule,
|
|
55
|
+
IndicatorsModule
|
|
50
56
|
],
|
|
51
57
|
exports: [
|
|
52
58
|
SectionLoaderComponent,
|
|
@@ -66,6 +72,8 @@ BaseFormsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMo
|
|
|
66
72
|
DateInputsModule,
|
|
67
73
|
DropDownsModule,
|
|
68
74
|
LinkDirectivesModule,
|
|
69
|
-
AskSkipModule
|
|
75
|
+
AskSkipModule,
|
|
76
|
+
DialogsModule,
|
|
77
|
+
IndicatorsModule], exports: [SectionLoaderComponent,
|
|
70
78
|
FormToolbarComponent,
|
|
71
79
|
MJFormField] }); })();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-base-forms",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "MemberJunction: Angular Base Form Components",
|
|
5
5
|
"main": "./dist/public-api.js",
|
|
6
6
|
"typings": "./dist/public-api.d.ts",
|
|
@@ -25,16 +25,17 @@
|
|
|
25
25
|
"@angular/router": "~17.2.2"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@memberjunction/global": "~1.
|
|
29
|
-
"@memberjunction/core": "~1.
|
|
30
|
-
"@memberjunction/ng-ask-skip": "~1.
|
|
31
|
-
"@memberjunction/ng-record-changes": "~1.
|
|
32
|
-
"@memberjunction/ng-tabstrip": "~1.
|
|
33
|
-
"@memberjunction/ng-link-directives": "~1.
|
|
28
|
+
"@memberjunction/global": "~1.3.0",
|
|
29
|
+
"@memberjunction/core": "~1.3.0",
|
|
30
|
+
"@memberjunction/ng-ask-skip": "~1.3.0",
|
|
31
|
+
"@memberjunction/ng-record-changes": "~1.3.0",
|
|
32
|
+
"@memberjunction/ng-tabstrip": "~1.3.0",
|
|
33
|
+
"@memberjunction/ng-link-directives": "~1.3.0",
|
|
34
34
|
"@progress/kendo-angular-buttons": "~15.1.0",
|
|
35
35
|
"@progress/kendo-angular-dropdowns": "~15.1.0",
|
|
36
36
|
"@progress/kendo-angular-inputs": "~15.1.0",
|
|
37
37
|
"@progress/kendo-angular-dateinputs": "~15.1.0",
|
|
38
|
+
"@progress/kendo-angular-dialog": "~15.1.0",
|
|
38
39
|
"tslib": "^2.3.0"
|
|
39
40
|
},
|
|
40
41
|
"sideEffects": false
|