@memberjunction/ng-explorer-core 0.9.2
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/ask-skip/ask-skip.component.d.ts +83 -0
- package/dist/lib/ask-skip/ask-skip.component.js +591 -0
- package/dist/lib/ask-skip/skip-dynamic-report-wrapper.d.ts +12 -0
- package/dist/lib/ask-skip/skip-dynamic-report-wrapper.js +49 -0
- package/dist/lib/auth-button/auth-button.component.d.ts +12 -0
- package/dist/lib/auth-button/auth-button.component.js +43 -0
- package/dist/lib/dashboard-browser-component/dashboard-browser.component.d.ts +14 -0
- package/dist/lib/dashboard-browser-component/dashboard-browser.component.js +55 -0
- package/dist/lib/data-browser-component/data-browser.component.d.ts +14 -0
- package/dist/lib/data-browser-component/data-browser.component.js +91 -0
- package/dist/lib/favorites/favorites.component.d.ts +13 -0
- package/dist/lib/favorites/favorites.component.js +100 -0
- package/dist/lib/generic/base-form-component.d.ts +76 -0
- package/dist/lib/generic/base-form-component.js +436 -0
- package/dist/lib/generic/base-form-section-component.d.ts +6 -0
- package/dist/lib/generic/base-form-section-component.js +10 -0
- package/dist/lib/generic/base-record-component.d.ts +6 -0
- package/dist/lib/generic/base-record-component.js +13 -0
- package/dist/lib/generic/base-resource-component.d.ts +34 -0
- package/dist/lib/generic/base-resource-component.js +75 -0
- package/dist/lib/generic/dynamic-chart.d.ts +26 -0
- package/dist/lib/generic/dynamic-chart.js +180 -0
- package/dist/lib/generic/dynamic-grid.d.ts +24 -0
- package/dist/lib/generic/dynamic-grid.js +135 -0
- package/dist/lib/generic/dynamic-report.d.ts +38 -0
- package/dist/lib/generic/dynamic-report.js +399 -0
- package/dist/lib/generic/form-toolbar.d.ts +7 -0
- package/dist/lib/generic/form-toolbar.js +98 -0
- package/dist/lib/generic/resource-container-component.d.ts +25 -0
- package/dist/lib/generic/resource-container-component.js +103 -0
- package/dist/lib/generic/section-loader-component.d.ts +17 -0
- package/dist/lib/generic/section-loader-component.js +65 -0
- package/dist/lib/generic-browse-list/generic-browse-list.component.d.ts +16 -0
- package/dist/lib/generic-browse-list/generic-browse-list.component.js +91 -0
- package/dist/lib/guards/auth-guard.service.d.ts +11 -0
- package/dist/lib/guards/auth-guard.service.js +24 -0
- package/dist/lib/guards/entities.guard.d.ts +3 -0
- package/dist/lib/guards/entities.guard.js +38 -0
- package/dist/lib/header/MSFT_UserImageService.d.ts +11 -0
- package/dist/lib/header/MSFT_UserImageService.js +23 -0
- package/dist/lib/header/header.component.d.ts +51 -0
- package/dist/lib/header/header.component.js +208 -0
- package/dist/lib/home-component/home.component.d.ts +9 -0
- package/dist/lib/home-component/home.component.js +54 -0
- package/dist/lib/join-grid/join-grid.component.d.ts +30 -0
- package/dist/lib/join-grid/join-grid.component.js +225 -0
- package/dist/lib/navigation/navigation.component.d.ts +102 -0
- package/dist/lib/navigation/navigation.component.js +970 -0
- package/dist/lib/report-browser-component/report-browser.component.d.ts +14 -0
- package/dist/lib/report-browser-component/report-browser.component.js +55 -0
- package/dist/lib/resource-wrappers/dashboard-resource.component.d.ts +8 -0
- package/dist/lib/resource-wrappers/dashboard-resource.component.js +49 -0
- package/dist/lib/resource-wrappers/record-resource.component.d.ts +8 -0
- package/dist/lib/resource-wrappers/record-resource.component.js +55 -0
- package/dist/lib/resource-wrappers/report-resource.component.d.ts +10 -0
- package/dist/lib/resource-wrappers/report-resource.component.js +53 -0
- package/dist/lib/resource-wrappers/resource-wrappers-loader.d.ts +1 -0
- package/dist/lib/resource-wrappers/resource-wrappers-loader.js +12 -0
- package/dist/lib/resource-wrappers/search-results-resource.component.d.ts +10 -0
- package/dist/lib/resource-wrappers/search-results-resource.component.js +50 -0
- package/dist/lib/resource-wrappers/view-resource.component.d.ts +8 -0
- package/dist/lib/resource-wrappers/view-resource.component.js +51 -0
- package/dist/lib/settings/settings.component.d.ts +5 -0
- package/dist/lib/settings/settings.component.js +14 -0
- package/dist/lib/shared/shared.service.d.ts +87 -0
- package/dist/lib/shared/shared.service.js +302 -0
- package/dist/lib/shared/urlPipe.d.ts +7 -0
- package/dist/lib/shared/urlPipe.js +16 -0
- package/dist/lib/single-application/single-application.component.d.ts +21 -0
- package/dist/lib/single-application/single-application.component.js +132 -0
- package/dist/lib/single-dashboard/Components/add-item/add-item.component.d.ts +28 -0
- package/dist/lib/single-dashboard/Components/add-item/add-item.component.js +212 -0
- package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.d.ts +26 -0
- package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.js +169 -0
- package/dist/lib/single-dashboard/single-dashboard.component.d.ts +55 -0
- package/dist/lib/single-dashboard/single-dashboard.component.js +266 -0
- package/dist/lib/single-entity/single-entity.component.d.ts +33 -0
- package/dist/lib/single-entity/single-entity.component.js +252 -0
- package/dist/lib/single-record/single-record.component.d.ts +20 -0
- package/dist/lib/single-record/single-record.component.js +95 -0
- package/dist/lib/single-report/single-report.component.d.ts +22 -0
- package/dist/lib/single-report/single-report.component.js +87 -0
- package/dist/lib/single-search-result/single-search-result.component.d.ts +15 -0
- package/dist/lib/single-search-result/single-search-result.component.js +60 -0
- package/dist/lib/single-view/single-view.component.d.ts +34 -0
- package/dist/lib/single-view/single-view.component.js +154 -0
- package/dist/lib/user-notifications/user-notifications.component.d.ts +32 -0
- package/dist/lib/user-notifications/user-notifications.component.js +282 -0
- package/dist/lib/user-profile/user-profile.component.d.ts +10 -0
- package/dist/lib/user-profile/user-profile.component.js +41 -0
- package/dist/lib/user-view-properties/view-properties-dialog.component.d.ts +70 -0
- package/dist/lib/user-view-properties/view-properties-dialog.component.js +568 -0
- package/dist/module.d.ts +64 -0
- package/dist/module.js +332 -0
- package/dist/public-api.d.ts +47 -0
- package/dist/public-api.js +50 -0
- package/package.json +39 -0
|
@@ -0,0 +1,266 @@
|
|
|
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
|
+
};
|
|
10
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
11
|
+
import { ResourceData } from '../generic/base-resource-component';
|
|
12
|
+
import { Metadata } from '@memberjunction/core';
|
|
13
|
+
import { Subject, debounceTime } from 'rxjs';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
import * as i1 from "../shared/shared.service";
|
|
16
|
+
function SingleDashboardComponent_app_add_item_dialog_0_Template(rf, ctx) { if (rf & 1) {
|
|
17
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
18
|
+
i0.ɵɵelementStart(0, "app-add-item-dialog", 14);
|
|
19
|
+
i0.ɵɵlistener("onClose", function SingleDashboardComponent_app_add_item_dialog_0_Template_app_add_item_dialog_onClose_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.closeDialog($event)); });
|
|
20
|
+
i0.ɵɵelementEnd();
|
|
21
|
+
} if (rf & 2) {
|
|
22
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
23
|
+
i0.ɵɵproperty("selectedResource", ctx_r0.selectedResource);
|
|
24
|
+
} }
|
|
25
|
+
function SingleDashboardComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
27
|
+
i0.ɵɵelementStart(0, "div")(1, "app-edit-dashboard", 15);
|
|
28
|
+
i0.ɵɵlistener("onClose", function SingleDashboardComponent_div_1_Template_app_edit_dashboard_onClose_1_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.closeDashboardDialog($event)); })("triggerAddItem", function SingleDashboardComponent_div_1_Template_app_edit_dashboard_triggerAddItem_1_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.addItem($event)); })("onSave", function SingleDashboardComponent_div_1_Template_app_edit_dashboard_onSave_1_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r8 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r8.saveChanges($event)); });
|
|
29
|
+
i0.ɵɵelementEnd()();
|
|
30
|
+
} if (rf & 2) {
|
|
31
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
32
|
+
i0.ɵɵadvance(1);
|
|
33
|
+
i0.ɵɵproperty("items", ctx_r1.items)("config", ctx_r1.config);
|
|
34
|
+
} }
|
|
35
|
+
function SingleDashboardComponent_kendo_tilelayout_item_17_Template(rf, ctx) { if (rf & 1) {
|
|
36
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
37
|
+
i0.ɵɵelementStart(0, "kendo-tilelayout-item", 16)(1, "kendo-tilelayout-item-header");
|
|
38
|
+
i0.ɵɵtext(2);
|
|
39
|
+
i0.ɵɵelementEnd();
|
|
40
|
+
i0.ɵɵelementStart(3, "kendo-tilelayout-item-body")(4, "app-resource", 17);
|
|
41
|
+
i0.ɵɵlistener("ContentLoadingStarted", function SingleDashboardComponent_kendo_tilelayout_item_17_Template_app_resource_ContentLoadingStarted_4_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r10.loadingStarted($event)); })("ContentLoadingComplete", function SingleDashboardComponent_kendo_tilelayout_item_17_Template_app_resource_ContentLoadingComplete_4_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.loadingComplete($event)); });
|
|
42
|
+
i0.ɵɵelementEnd()()();
|
|
43
|
+
} if (rf & 2) {
|
|
44
|
+
const item_r9 = ctx.$implicit;
|
|
45
|
+
i0.ɵɵproperty("col", item_r9.col)("colSpan", item_r9.colSpan)("rowSpan", item_r9.rowSpan)("id", item_r9.uniqueId);
|
|
46
|
+
i0.ɵɵadvance(2);
|
|
47
|
+
i0.ɵɵtextInterpolate1(" ", item_r9.title, " ");
|
|
48
|
+
i0.ɵɵadvance(2);
|
|
49
|
+
i0.ɵɵproperty("Data", item_r9.ResourceData)("isVisible", true);
|
|
50
|
+
} }
|
|
51
|
+
export class SingleDashboardComponent {
|
|
52
|
+
get contentLoading() {
|
|
53
|
+
for (const item of this.items) {
|
|
54
|
+
if (item.contentLoading) {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
constructor(sharedService) {
|
|
61
|
+
this.sharedService = sharedService;
|
|
62
|
+
this.dashboardSaved = new EventEmitter();
|
|
63
|
+
this.loadComplete = new EventEmitter();
|
|
64
|
+
this.loadStarted = new EventEmitter();
|
|
65
|
+
this.items = [];
|
|
66
|
+
this.config = new DashboardConfigDetails();
|
|
67
|
+
this.isItemDialogOpened = false;
|
|
68
|
+
this.isEditDialogOpened = false;
|
|
69
|
+
this.saveChangesSubject = new Subject();
|
|
70
|
+
this.saveChangesSubject
|
|
71
|
+
.pipe(debounceTime(500))
|
|
72
|
+
.subscribe(() => {
|
|
73
|
+
this.SaveDashboard();
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
ngOnInit() {
|
|
77
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
// load up the dashboard
|
|
79
|
+
const d = this.ResourceData;
|
|
80
|
+
const config = this.ResourceData.Configuration;
|
|
81
|
+
if (this.ResourceData) {
|
|
82
|
+
const md = new Metadata();
|
|
83
|
+
let uiConfig = { items: [] };
|
|
84
|
+
this.dashboardEntity = (yield md.GetEntityObject('Dashboards'));
|
|
85
|
+
if (this.ResourceData.ResourceRecordID && this.ResourceData.ResourceRecordID > 0) {
|
|
86
|
+
yield this.dashboardEntity.Load(this.ResourceData.ResourceRecordID);
|
|
87
|
+
// now we have loaded and we need to get the UIConfigDetails
|
|
88
|
+
const raw = this.dashboardEntity.UIConfigDetails;
|
|
89
|
+
if (raw) {
|
|
90
|
+
uiConfig = JSON.parse(raw);
|
|
91
|
+
this.config.columns = uiConfig.columns;
|
|
92
|
+
this.config.rowHeight = uiConfig.rowHeight;
|
|
93
|
+
this.config.resizable = uiConfig.resizable;
|
|
94
|
+
this.config.reorderable = uiConfig.reorderable;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
this.dashboardEntity.NewRecord(); // creating a new dashboard
|
|
99
|
+
this.dashboardEntity.UserID = md.CurrentUser.ID;
|
|
100
|
+
this.dashboardEntity.Name = 'New Dashboard';
|
|
101
|
+
this.config.columns = this.config.columns || this.config.columns;
|
|
102
|
+
this.config.rowHeight = this.config.rowHeight || this.config.rowHeight;
|
|
103
|
+
this.config.resizable = this.config.resizable || this.config.resizable;
|
|
104
|
+
this.config.reorderable = this.config.reorderable || this.config.reorderable;
|
|
105
|
+
}
|
|
106
|
+
// now we need to load up the items
|
|
107
|
+
this.items = [];
|
|
108
|
+
//const tempItems = uiConfig.items.sort((a: any, b: any) => a.order - b.order);
|
|
109
|
+
for (const item of uiConfig.items) {
|
|
110
|
+
const dashboardItem = this.CreateDashboardItem(item);
|
|
111
|
+
this.items.push(dashboardItem);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
CreateDashboardItem(item) {
|
|
117
|
+
const dashboardItem = new DashboardItem();
|
|
118
|
+
if (item) {
|
|
119
|
+
dashboardItem.title = item.title;
|
|
120
|
+
dashboardItem.order = item.order ? item.order : 0;
|
|
121
|
+
dashboardItem.col = item.col;
|
|
122
|
+
dashboardItem.row = item.row;
|
|
123
|
+
dashboardItem.rowSpan = item.rowSpan;
|
|
124
|
+
dashboardItem.colSpan = item.colSpan;
|
|
125
|
+
dashboardItem.ResourceData = new ResourceData(item.ResourceData);
|
|
126
|
+
}
|
|
127
|
+
return dashboardItem;
|
|
128
|
+
}
|
|
129
|
+
loadingStarted(resourceComponent) {
|
|
130
|
+
// look up the copmonent in the
|
|
131
|
+
const item = this.items.find(i => i.ResourceData === resourceComponent.Data);
|
|
132
|
+
if (item) {
|
|
133
|
+
item.contentLoading = true;
|
|
134
|
+
this.loadStarted.emit();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
loadingComplete(resourceComponent) {
|
|
138
|
+
// look up the copmonent in the
|
|
139
|
+
const item = this.items.find(i => i.ResourceData === resourceComponent.Data);
|
|
140
|
+
if (item) {
|
|
141
|
+
item.contentLoading = false;
|
|
142
|
+
if (!this.contentLoading) {
|
|
143
|
+
this.loadComplete.emit();
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
addItem(resourceType = null) {
|
|
148
|
+
this.selectedResource = resourceType;
|
|
149
|
+
this.isItemDialogOpened = true;
|
|
150
|
+
this.isEditDialogOpened = false;
|
|
151
|
+
}
|
|
152
|
+
closeDialog(data) {
|
|
153
|
+
if (data) {
|
|
154
|
+
const dashboardItem = this.CreateDashboardItem(data);
|
|
155
|
+
this.items.push(dashboardItem);
|
|
156
|
+
this.saveChangesSubject.next(true);
|
|
157
|
+
}
|
|
158
|
+
this.selectedResource = null;
|
|
159
|
+
this.isItemDialogOpened = false;
|
|
160
|
+
}
|
|
161
|
+
editDashboard() {
|
|
162
|
+
this.isEditDialogOpened = true;
|
|
163
|
+
}
|
|
164
|
+
closeDashboardDialog(data = null) {
|
|
165
|
+
this.isEditDialogOpened = false;
|
|
166
|
+
}
|
|
167
|
+
saveChanges(data) {
|
|
168
|
+
if (data.config) {
|
|
169
|
+
this.config = data.config;
|
|
170
|
+
}
|
|
171
|
+
if (data.itemsChanged && data.items) {
|
|
172
|
+
this.items = data.items;
|
|
173
|
+
this.sharedService.InvokeManualResize();
|
|
174
|
+
}
|
|
175
|
+
this.SaveDashboard();
|
|
176
|
+
this.closeDashboardDialog();
|
|
177
|
+
}
|
|
178
|
+
SaveDashboard() {
|
|
179
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
180
|
+
if (this.dashboardEntity) {
|
|
181
|
+
const configData = {
|
|
182
|
+
columns: this.config.columns,
|
|
183
|
+
rowHeight: this.config.rowHeight,
|
|
184
|
+
resizable: this.config.resizable,
|
|
185
|
+
reorderable: this.config.reorderable,
|
|
186
|
+
items: this.items
|
|
187
|
+
};
|
|
188
|
+
const configJSON = JSON.stringify(configData);
|
|
189
|
+
this.dashboardEntity.UIConfigDetails = configJSON;
|
|
190
|
+
const result = yield this.dashboardEntity.Save();
|
|
191
|
+
this.dashboardSaved.emit(this.dashboardEntity);
|
|
192
|
+
return result;
|
|
193
|
+
}
|
|
194
|
+
else
|
|
195
|
+
return false;
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
dashboardSaveComplete(entity) {
|
|
199
|
+
this.dashboardSaved.emit(entity);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
SingleDashboardComponent.ɵfac = function SingleDashboardComponent_Factory(t) { return new (t || SingleDashboardComponent)(i0.ɵɵdirectiveInject(i1.SharedService)); };
|
|
203
|
+
SingleDashboardComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SingleDashboardComponent, selectors: [["app-single-dashboard"]], inputs: { ResourceData: "ResourceData" }, outputs: { dashboardSaved: "dashboardSaved", loadComplete: "loadComplete", loadStarted: "loadStarted" }, decls: 18, vars: 9, consts: [[3, "selectedResource", "onClose", 4, "ngIf"], [4, "ngIf"], [1, "dashboard-container"], [1, "main-head-dashboard"], [1, "dashboard-title"], [1, "k-icon", "k-i-star"], [1, "dashboard-header", "k-d-flex", "k-flex-row", "k-justify-content-flex-end"], [3, "click"], [1, "k-icon", "k-i-plus"], [3, "primary", "click"], [1, "k-icon", "k-i-gear"], [1, "tile-resource-container"], [3, "columns", "rowHeight", "resizable", "reorderable"], [3, "col", "colSpan", "rowSpan", "id", 4, "ngFor", "ngForOf"], [3, "selectedResource", "onClose"], [3, "items", "config", "onClose", "triggerAddItem", "onSave"], [3, "col", "colSpan", "rowSpan", "id"], [3, "Data", "isVisible", "ContentLoadingStarted", "ContentLoadingComplete"]], template: function SingleDashboardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
204
|
+
i0.ɵɵtemplate(0, SingleDashboardComponent_app_add_item_dialog_0_Template, 1, 1, "app-add-item-dialog", 0);
|
|
205
|
+
i0.ɵɵtemplate(1, SingleDashboardComponent_div_1_Template, 2, 2, "div", 1);
|
|
206
|
+
i0.ɵɵelementStart(2, "div", 2)(3, "div", 3)(4, "div", 4);
|
|
207
|
+
i0.ɵɵelement(5, "span", 5);
|
|
208
|
+
i0.ɵɵelementStart(6, "h3");
|
|
209
|
+
i0.ɵɵtext(7);
|
|
210
|
+
i0.ɵɵelementEnd()();
|
|
211
|
+
i0.ɵɵelementStart(8, "div", 6)(9, "kendo-button", 7);
|
|
212
|
+
i0.ɵɵlistener("click", function SingleDashboardComponent_Template_kendo_button_click_9_listener() { return ctx.addItem(); });
|
|
213
|
+
i0.ɵɵelement(10, "span", 8);
|
|
214
|
+
i0.ɵɵtext(11, " Add Item ");
|
|
215
|
+
i0.ɵɵelementEnd();
|
|
216
|
+
i0.ɵɵelementStart(12, "kendo-button", 9);
|
|
217
|
+
i0.ɵɵlistener("click", function SingleDashboardComponent_Template_kendo_button_click_12_listener() { return ctx.editDashboard(); });
|
|
218
|
+
i0.ɵɵelement(13, "span", 10);
|
|
219
|
+
i0.ɵɵtext(14, " Edit Dashboard ");
|
|
220
|
+
i0.ɵɵelementEnd()()();
|
|
221
|
+
i0.ɵɵelementStart(15, "div", 11)(16, "kendo-tilelayout", 12);
|
|
222
|
+
i0.ɵɵtemplate(17, SingleDashboardComponent_kendo_tilelayout_item_17_Template, 5, 7, "kendo-tilelayout-item", 13);
|
|
223
|
+
i0.ɵɵelementEnd()()();
|
|
224
|
+
} if (rf & 2) {
|
|
225
|
+
i0.ɵɵproperty("ngIf", ctx.isItemDialogOpened);
|
|
226
|
+
i0.ɵɵadvance(1);
|
|
227
|
+
i0.ɵɵproperty("ngIf", ctx.isEditDialogOpened);
|
|
228
|
+
i0.ɵɵadvance(6);
|
|
229
|
+
i0.ɵɵtextInterpolate(ctx.ResourceData.Name);
|
|
230
|
+
i0.ɵɵadvance(5);
|
|
231
|
+
i0.ɵɵproperty("primary", true);
|
|
232
|
+
i0.ɵɵadvance(4);
|
|
233
|
+
i0.ɵɵproperty("columns", ctx.config.columns)("rowHeight", ctx.config.rowHeight)("resizable", false)("reorderable", false);
|
|
234
|
+
i0.ɵɵadvance(1);
|
|
235
|
+
i0.ɵɵproperty("ngForOf", ctx.items);
|
|
236
|
+
} }, styles: [".dashboard-title[_ngcontent-%COMP%] {\r\n display: flex;\r\n align-items: center;\r\n gap: 10px;\r\n}\r\n.dashboard-title[_ngcontent-%COMP%] .k-icon[_ngcontent-%COMP%] {\r\n color: #ff6358;\r\n font-size: 25px;\r\n}\r\n.dashboard-title[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\r\ncolor: #424242;\r\nfont-size: 28px;\r\nfont-style: normal;\r\nfont-weight: 300;\r\nline-height: 28px;\r\n}\r\n.dashboard-header[_ngcontent-%COMP%] {\r\n display: flex;\r\n gap: 10px;\r\n align-items: center;\r\n}\r\n .dashboard-header .btn-ref .k-button-text {\r\n display: flex;\r\n gap: 10px;\r\n}\r\n .dashboard-header[_ngcontent-%COMP%] .btn-ref[_ngcontent-%COMP%] {\r\n border: none;\r\n background: transparent;\r\n}\r\n.main-head-dashboard[_ngcontent-%COMP%] {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-bottom: 20px;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n}\r\n.tile-resource-container[_ngcontent-%COMP%] .k-tilelayout[_ngcontent-%COMP%] {\r\n background: #fff;\r\n}"] });
|
|
237
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SingleDashboardComponent, [{
|
|
238
|
+
type: Component,
|
|
239
|
+
args: [{ selector: 'app-single-dashboard', template: "<app-add-item-dialog *ngIf=\"isItemDialogOpened\" (onClose)=\"closeDialog($event)\" [selectedResource]=\"selectedResource\"></app-add-item-dialog>\r\n<div *ngIf=\"isEditDialogOpened\">\r\n <app-edit-dashboard (onClose)=\"closeDashboardDialog($event)\" (triggerAddItem)=\"addItem($event)\" [items]=\"items\" [config]=\"config\" (onSave)=\"saveChanges($event)\"></app-edit-dashboard>\r\n</div>\r\n\r\n\r\n<div class=\"dashboard-container\">\r\n <div class=\"main-head-dashboard\">\r\n <div class=\"dashboard-title\">\r\n <span class=\"k-icon k-i-star\"></span>\r\n <h3>{{ResourceData.Name}}</h3> \r\n </div>\r\n <div class=\"dashboard-header k-d-flex k-flex-row k-justify-content-flex-end\">\r\n <!-- <kendo-button class=\"btn-ref\" >\r\n <span class=\"k-icon k-i-reload\"></span> \r\n Refresh\r\n </kendo-button> -->\r\n <kendo-button (click)=\"addItem()\">\r\n <span class=\"k-icon k-i-plus\"></span>\r\n Add Item\r\n </kendo-button>\r\n <kendo-button (click)=\"editDashboard()\" [primary]=\"true\">\r\n <span class=\"k-icon k-i-gear\"></span>\r\n Edit Dashboard\r\n </kendo-button>\r\n </div>\r\n </div>\r\n <div class=\"tile-resource-container\">\r\n <kendo-tilelayout\r\n [columns]=\"config.columns\"\r\n [rowHeight]=\"config.rowHeight\"\r\n [resizable]=\"false\"\r\n [reorderable]=\"false\"\r\n >\r\n <kendo-tilelayout-item *ngFor=\"let item of items\" [col]=\"item.col\" [colSpan]=\"item.colSpan\" [rowSpan]=\"item.rowSpan\" [id]=\"item.uniqueId\">\r\n <kendo-tilelayout-item-header>\r\n {{item.title}}\r\n <!-- <kendo-button class=\"k-float-right\" *ngIf=\"editMode\" (click)=\"removeItem(item)\">X</kendo-button> -->\r\n </kendo-tilelayout-item-header>\r\n <kendo-tilelayout-item-body>\r\n <app-resource [Data]=\"item.ResourceData\" [isVisible]=\"true\" (ContentLoadingStarted)=\"loadingStarted($event)\" (ContentLoadingComplete)=\"loadingComplete($event)\"></app-resource>\r\n </kendo-tilelayout-item-body>\r\n </kendo-tilelayout-item>\r\n </kendo-tilelayout>\r\n </div>\r\n</div>\r\n", styles: [".dashboard-title {\r\n display: flex;\r\n align-items: center;\r\n gap: 10px;\r\n}\r\n.dashboard-title .k-icon {\r\n color: #ff6358;\r\n font-size: 25px;\r\n}\r\n.dashboard-title h3 {\r\ncolor: #424242;\r\nfont-size: 28px;\r\nfont-style: normal;\r\nfont-weight: 300;\r\nline-height: 28px;\r\n}\r\n.dashboard-header {\r\n display: flex;\r\n gap: 10px;\r\n align-items: center;\r\n}\r\n::ng-deep .dashboard-header .btn-ref .k-button-text {\r\n display: flex;\r\n gap: 10px;\r\n}\r\n .dashboard-header .btn-ref {\r\n border: none;\r\n background: transparent;\r\n}\r\n.main-head-dashboard {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-bottom: 20px;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n}\r\n.tile-resource-container .k-tilelayout {\r\n background: #fff;\r\n}"] }]
|
|
240
|
+
}], function () { return [{ type: i1.SharedService }]; }, { ResourceData: [{
|
|
241
|
+
type: Input
|
|
242
|
+
}], dashboardSaved: [{
|
|
243
|
+
type: Output
|
|
244
|
+
}], loadComplete: [{
|
|
245
|
+
type: Output
|
|
246
|
+
}], loadStarted: [{
|
|
247
|
+
type: Output
|
|
248
|
+
}] }); })();
|
|
249
|
+
export class DashboardConfigDetails {
|
|
250
|
+
constructor() {
|
|
251
|
+
this.columns = 4;
|
|
252
|
+
this.rowHeight = 150;
|
|
253
|
+
this.resizable = true;
|
|
254
|
+
this.reorderable = true;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
export class DashboardItem {
|
|
258
|
+
getNextUniqueID() {
|
|
259
|
+
return DashboardItem.nextUniqueId++;
|
|
260
|
+
}
|
|
261
|
+
constructor() {
|
|
262
|
+
this.contentLoading = false;
|
|
263
|
+
this.uniqueId = this.getNextUniqueID();
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
DashboardItem.nextUniqueId = 1;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
3
|
+
import { UserViewEntity } from '@memberjunction/core-entities';
|
|
4
|
+
import { ViewPropertiesDialogComponent } from '../user-view-properties/view-properties-dialog.component';
|
|
5
|
+
import { NotificationService } from "@progress/kendo-angular-notification";
|
|
6
|
+
import { SharedService } from '../shared/shared.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare class SingleEntityComponent implements OnInit {
|
|
9
|
+
private router;
|
|
10
|
+
private route;
|
|
11
|
+
private notificationService;
|
|
12
|
+
private sharedService;
|
|
13
|
+
constructor(router: Router, route: ActivatedRoute, notificationService: NotificationService, sharedService: SharedService);
|
|
14
|
+
appName: string;
|
|
15
|
+
entityName: string;
|
|
16
|
+
entityFieldsText: string;
|
|
17
|
+
entityDescription: string;
|
|
18
|
+
entityViews: UserViewEntity[];
|
|
19
|
+
selectedView: UserViewEntity | null;
|
|
20
|
+
deleteDialogOpened: boolean;
|
|
21
|
+
showloader: boolean;
|
|
22
|
+
viewPropertiesDialog: ViewPropertiesDialogComponent;
|
|
23
|
+
ngOnInit(): void;
|
|
24
|
+
LoadData(entityName?: string): Promise<void>;
|
|
25
|
+
viewItemClick(info: UserViewEntity): void;
|
|
26
|
+
createNewView(): void;
|
|
27
|
+
editView(entity: UserViewEntity): void;
|
|
28
|
+
handleDeleteView(entity?: UserViewEntity | null): void;
|
|
29
|
+
deleteView(): Promise<void>;
|
|
30
|
+
viewPropertiesClosed(args: any): Promise<void>;
|
|
31
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SingleEntityComponent, never>;
|
|
32
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SingleEntityComponent, "app-single-entity", never, {}, {}, never, never, false, never>;
|
|
33
|
+
}
|
|
@@ -0,0 +1,252 @@
|
|
|
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
|
+
};
|
|
10
|
+
import { Component, ViewChild } from '@angular/core';
|
|
11
|
+
import { Metadata } from '@memberjunction/core';
|
|
12
|
+
import { ViewInfo } from '@memberjunction/core-entities';
|
|
13
|
+
import { ViewPropertiesDialogComponent } from '../user-view-properties/view-properties-dialog.component';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
import * as i1 from "@angular/router";
|
|
16
|
+
import * as i2 from "@progress/kendo-angular-notification";
|
|
17
|
+
import * as i3 from "../shared/shared.service";
|
|
18
|
+
import * as i4 from "@angular/common";
|
|
19
|
+
import * as i5 from "@progress/kendo-angular-dialog";
|
|
20
|
+
import * as i6 from "@progress/kendo-angular-buttons";
|
|
21
|
+
import * as i7 from "@progress/kendo-angular-indicators";
|
|
22
|
+
import * as i8 from "@progress/kendo-angular-icons";
|
|
23
|
+
import * as i9 from "@progress/kendo-angular-layout";
|
|
24
|
+
import * as i10 from "../user-view-properties/view-properties-dialog.component";
|
|
25
|
+
function SingleEntityComponent_kendo_loader_12_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
i0.ɵɵelement(0, "kendo-loader", 10);
|
|
27
|
+
} }
|
|
28
|
+
function SingleEntityComponent_div_13_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
29
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
30
|
+
i0.ɵɵelementStart(0, "div")(1, "kendo-card", 13)(2, "kendo-card-header", 14);
|
|
31
|
+
i0.ɵɵelement(3, "kendo-icon", 15);
|
|
32
|
+
i0.ɵɵelementStart(4, "div", 16)(5, "button", 17);
|
|
33
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_div_13_div_1_Template_button_click_5_listener() { const restoredCtx = i0.ɵɵrestoreView(_r6); const entity_r4 = restoredCtx.$implicit; const ctx_r5 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r5.editView(entity_r4)); });
|
|
34
|
+
i0.ɵɵelement(6, "span", 18);
|
|
35
|
+
i0.ɵɵelementEnd();
|
|
36
|
+
i0.ɵɵelementStart(7, "button", 17);
|
|
37
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_div_13_div_1_Template_button_click_7_listener() { const restoredCtx = i0.ɵɵrestoreView(_r6); const entity_r4 = restoredCtx.$implicit; const ctx_r7 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r7.handleDeleteView(entity_r4)); });
|
|
38
|
+
i0.ɵɵelement(8, "span", 19);
|
|
39
|
+
i0.ɵɵelementEnd()()();
|
|
40
|
+
i0.ɵɵelementStart(9, "kendo-card-body", 20);
|
|
41
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_div_13_div_1_Template_kendo_card_body_click_9_listener() { const restoredCtx = i0.ɵɵrestoreView(_r6); const entity_r4 = restoredCtx.$implicit; const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.viewItemClick(entity_r4)); });
|
|
42
|
+
i0.ɵɵelementStart(10, "div", 21)(11, "h5", 22);
|
|
43
|
+
i0.ɵɵtext(12);
|
|
44
|
+
i0.ɵɵelementEnd();
|
|
45
|
+
i0.ɵɵelementStart(13, "p", 23);
|
|
46
|
+
i0.ɵɵtext(14);
|
|
47
|
+
i0.ɵɵelementEnd()()()()();
|
|
48
|
+
} if (rf & 2) {
|
|
49
|
+
const entity_r4 = ctx.$implicit;
|
|
50
|
+
i0.ɵɵadvance(12);
|
|
51
|
+
i0.ɵɵtextInterpolate(entity_r4.Name);
|
|
52
|
+
i0.ɵɵadvance(2);
|
|
53
|
+
i0.ɵɵtextInterpolate(entity_r4.Description);
|
|
54
|
+
} }
|
|
55
|
+
function SingleEntityComponent_div_13_Template(rf, ctx) { if (rf & 1) {
|
|
56
|
+
i0.ɵɵelementStart(0, "div", 11);
|
|
57
|
+
i0.ɵɵtemplate(1, SingleEntityComponent_div_13_div_1_Template, 15, 2, "div", 12);
|
|
58
|
+
i0.ɵɵelementEnd();
|
|
59
|
+
} if (rf & 2) {
|
|
60
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
61
|
+
i0.ɵɵadvance(1);
|
|
62
|
+
i0.ɵɵproperty("ngForOf", ctx_r1.entityViews);
|
|
63
|
+
} }
|
|
64
|
+
function SingleEntityComponent_kendo_dialog_14_kendo_loader_1_Template(rf, ctx) { if (rf & 1) {
|
|
65
|
+
i0.ɵɵelement(0, "kendo-loader", 10);
|
|
66
|
+
} }
|
|
67
|
+
function SingleEntityComponent_kendo_dialog_14_Template(rf, ctx) { if (rf & 1) {
|
|
68
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
69
|
+
i0.ɵɵelementStart(0, "kendo-dialog", 24);
|
|
70
|
+
i0.ɵɵlistener("close", function SingleEntityComponent_kendo_dialog_14_Template_kendo_dialog_close_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r10.handleDeleteView()); });
|
|
71
|
+
i0.ɵɵtemplate(1, SingleEntityComponent_kendo_dialog_14_kendo_loader_1_Template, 1, 0, "kendo-loader", 7);
|
|
72
|
+
i0.ɵɵelementStart(2, "div")(3, "p", 25);
|
|
73
|
+
i0.ɵɵtext(4, " Are you sure you want to delete ");
|
|
74
|
+
i0.ɵɵelementStart(5, "b");
|
|
75
|
+
i0.ɵɵtext(6);
|
|
76
|
+
i0.ɵɵelementEnd();
|
|
77
|
+
i0.ɵɵtext(7, " View? ");
|
|
78
|
+
i0.ɵɵelementEnd();
|
|
79
|
+
i0.ɵɵelementStart(8, "div", 26)(9, "button", 27);
|
|
80
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_kendo_dialog_14_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r11); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.deleteView()); });
|
|
81
|
+
i0.ɵɵelement(10, "span", 28);
|
|
82
|
+
i0.ɵɵtext(11, " Yes ");
|
|
83
|
+
i0.ɵɵelementEnd();
|
|
84
|
+
i0.ɵɵelementStart(12, "button", 29);
|
|
85
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_kendo_dialog_14_Template_button_click_12_listener() { i0.ɵɵrestoreView(_r11); const ctx_r13 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r13.handleDeleteView()); });
|
|
86
|
+
i0.ɵɵelement(13, "span", 30);
|
|
87
|
+
i0.ɵɵtext(14, " No");
|
|
88
|
+
i0.ɵɵelementEnd()()()();
|
|
89
|
+
} if (rf & 2) {
|
|
90
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
91
|
+
i0.ɵɵadvance(1);
|
|
92
|
+
i0.ɵɵproperty("ngIf", ctx_r2.showloader);
|
|
93
|
+
i0.ɵɵadvance(1);
|
|
94
|
+
i0.ɵɵclassMap(ctx_r2.showloader ? "disabled-div" : "");
|
|
95
|
+
i0.ɵɵadvance(4);
|
|
96
|
+
i0.ɵɵtextInterpolate(ctx_r2.selectedView == null ? null : ctx_r2.selectedView.Name);
|
|
97
|
+
} }
|
|
98
|
+
export class SingleEntityComponent {
|
|
99
|
+
constructor(router, route, notificationService, sharedService) {
|
|
100
|
+
this.router = router;
|
|
101
|
+
this.route = route;
|
|
102
|
+
this.notificationService = notificationService;
|
|
103
|
+
this.sharedService = sharedService;
|
|
104
|
+
this.appName = '';
|
|
105
|
+
this.entityName = '';
|
|
106
|
+
this.entityFieldsText = '';
|
|
107
|
+
this.entityDescription = '';
|
|
108
|
+
this.entityViews = [];
|
|
109
|
+
this.selectedView = null;
|
|
110
|
+
this.deleteDialogOpened = false;
|
|
111
|
+
this.showloader = false;
|
|
112
|
+
}
|
|
113
|
+
ngOnInit() {
|
|
114
|
+
this.route.paramMap.subscribe((params) => __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
const entityName = params.get('entityName');
|
|
116
|
+
const appName = params.get('appName');
|
|
117
|
+
if (appName)
|
|
118
|
+
this.appName = appName;
|
|
119
|
+
// Perform any necessary actions with the ViewID, such as fetching data
|
|
120
|
+
if (entityName) {
|
|
121
|
+
this.entityName = entityName;
|
|
122
|
+
yield this.LoadData(entityName);
|
|
123
|
+
}
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
LoadData(entityName = this.entityName) {
|
|
127
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
128
|
+
if (entityName) {
|
|
129
|
+
this.showloader = true;
|
|
130
|
+
this.selectedView = null;
|
|
131
|
+
const md = new Metadata();
|
|
132
|
+
const entity = md.Entities.find(e => e.Name == entityName);
|
|
133
|
+
if (entity) {
|
|
134
|
+
this.entityDescription = entity.Description;
|
|
135
|
+
this.entityViews = (yield ViewInfo.GetViewsForUser(entity.ID));
|
|
136
|
+
this.showloader = false;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
viewItemClick(info) {
|
|
142
|
+
if (info) {
|
|
143
|
+
this.router.navigate(['resource', 'view', info.ID]);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
createNewView() {
|
|
147
|
+
// launch the dialog
|
|
148
|
+
this.viewPropertiesDialog.CreateView(this.entityName);
|
|
149
|
+
}
|
|
150
|
+
editView(entity) {
|
|
151
|
+
var _a;
|
|
152
|
+
this.selectedView = entity;
|
|
153
|
+
this.viewPropertiesDialog.Open((_a = this.selectedView) === null || _a === void 0 ? void 0 : _a.ID);
|
|
154
|
+
}
|
|
155
|
+
handleDeleteView(entity = null) {
|
|
156
|
+
this.selectedView = entity;
|
|
157
|
+
this.deleteDialogOpened = !this.deleteDialogOpened;
|
|
158
|
+
}
|
|
159
|
+
deleteView() {
|
|
160
|
+
var _a;
|
|
161
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
162
|
+
if (this.selectedView) {
|
|
163
|
+
this.showloader = true;
|
|
164
|
+
const md = new Metadata();
|
|
165
|
+
const viewObj = yield md.GetEntityObject('User Views');
|
|
166
|
+
yield viewObj.Load((_a = this.selectedView) === null || _a === void 0 ? void 0 : _a.ID); // load the view to be deleted
|
|
167
|
+
if (yield viewObj.Delete()) { // delete the view
|
|
168
|
+
this.notificationService.show({
|
|
169
|
+
content: "View deleted successfully!",
|
|
170
|
+
hideAfter: 800,
|
|
171
|
+
position: { horizontal: "center", vertical: "top" },
|
|
172
|
+
animation: { type: "fade", duration: 400 },
|
|
173
|
+
type: { style: "success", icon: true },
|
|
174
|
+
});
|
|
175
|
+
this.showloader = false;
|
|
176
|
+
this.deleteDialogOpened = false;
|
|
177
|
+
yield this.LoadData(); // reload the updated data on UI
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
this.notificationService.show({
|
|
181
|
+
content: "Error deleting view!",
|
|
182
|
+
hideAfter: 800,
|
|
183
|
+
position: { horizontal: "center", vertical: "top" },
|
|
184
|
+
animation: { type: "fade", duration: 400 },
|
|
185
|
+
type: { style: "error", icon: true },
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
viewPropertiesClosed(args) {
|
|
192
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
193
|
+
if (this.selectedView) {
|
|
194
|
+
yield this.LoadData(this.entityName);
|
|
195
|
+
this.viewPropertiesDialog.isDialogOpened = false;
|
|
196
|
+
this.selectedView = null;
|
|
197
|
+
}
|
|
198
|
+
else if (args && args.Saved === true && args.ViewEntity) {
|
|
199
|
+
const paramsArray = ['/app', this.appName, 'entity', this.entityName, 'view', args.ViewEntity.ID];
|
|
200
|
+
this.router.navigate(paramsArray);
|
|
201
|
+
}
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
SingleEntityComponent.ɵfac = function SingleEntityComponent_Factory(t) { return new (t || SingleEntityComponent)(i0.ɵɵdirectiveInject(i1.Router), i0.ɵɵdirectiveInject(i1.ActivatedRoute), i0.ɵɵdirectiveInject(i2.NotificationService), i0.ɵɵdirectiveInject(i3.SharedService)); };
|
|
206
|
+
SingleEntityComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SingleEntityComponent, selectors: [["app-single-entity"]], viewQuery: function SingleEntityComponent_Query(rf, ctx) { if (rf & 1) {
|
|
207
|
+
i0.ɵɵviewQuery(ViewPropertiesDialogComponent, 7);
|
|
208
|
+
} if (rf & 2) {
|
|
209
|
+
let _t;
|
|
210
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.viewPropertiesDialog = _t.first);
|
|
211
|
+
} }, decls: 15, vars: 7, consts: [[1, "card-container"], [1, "card-header-entity"], [1, "title-wrap"], [1, "k-icon", "k-i-information"], ["kendoButton", "", "icon", "gear", 3, "click"], [3, "EntityName", "ShowPropertiesButton", "dialogClosed"], [1, "main-area"], ["type", "converging-spinner", 4, "ngIf"], ["class", "card-list k-d-flex k-flex-row k-h-full k-flex-wrap", 4, "ngIf"], ["title", "Delete View", 3, "close", 4, "ngIf"], ["type", "converging-spinner"], [1, "card-list", "k-d-flex", "k-flex-row", "k-h-full", "k-flex-wrap"], [4, "ngFor", "ngForOf"], [1, "card-wrapper"], [1, "k-hstack", "view-card"], ["name", "table", 1, "view-icon"], [1, "btn-wrapper"], ["kendoButton", "", "fillMode", "flat", 3, "click"], [1, "k-icon", "k-i-edit"], [1, "k-icon", "k-i-delete"], [3, "click"], [1, "view-card-content", "k-cursor-pointer"], ["kendoCardTitle", ""], ["kendoCardSubtitle", ""], ["title", "Delete View", 3, "close"], [1, "k-m-7.5", "k-text-center"], [1, "k-actions", "k-actions-end", "popup-actions"], ["kendoButton", "", "themeColor", "primary", 3, "click"], [1, "k-icon", "k-i-check"], ["kendoButton", "", 3, "click"], [1, "k-icon", "k-i-close"]], template: function SingleEntityComponent_Template(rf, ctx) { if (rf & 1) {
|
|
212
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "h1");
|
|
213
|
+
i0.ɵɵtext(4);
|
|
214
|
+
i0.ɵɵelementEnd();
|
|
215
|
+
i0.ɵɵelementStart(5, "p");
|
|
216
|
+
i0.ɵɵelement(6, "span", 3);
|
|
217
|
+
i0.ɵɵtext(7);
|
|
218
|
+
i0.ɵɵelementEnd()();
|
|
219
|
+
i0.ɵɵelementStart(8, "button", 4);
|
|
220
|
+
i0.ɵɵlistener("click", function SingleEntityComponent_Template_button_click_8_listener() { return ctx.createNewView(); });
|
|
221
|
+
i0.ɵɵtext(9, "Create New View");
|
|
222
|
+
i0.ɵɵelementEnd()();
|
|
223
|
+
i0.ɵɵelementStart(10, "app-view-properties-dialog", 5);
|
|
224
|
+
i0.ɵɵlistener("dialogClosed", function SingleEntityComponent_Template_app_view_properties_dialog_dialogClosed_10_listener($event) { return ctx.viewPropertiesClosed($event); });
|
|
225
|
+
i0.ɵɵelementEnd();
|
|
226
|
+
i0.ɵɵelementStart(11, "div", 6);
|
|
227
|
+
i0.ɵɵtemplate(12, SingleEntityComponent_kendo_loader_12_Template, 1, 0, "kendo-loader", 7);
|
|
228
|
+
i0.ɵɵtemplate(13, SingleEntityComponent_div_13_Template, 2, 1, "div", 8);
|
|
229
|
+
i0.ɵɵelementEnd();
|
|
230
|
+
i0.ɵɵtemplate(14, SingleEntityComponent_kendo_dialog_14_Template, 15, 4, "kendo-dialog", 9);
|
|
231
|
+
i0.ɵɵelementEnd();
|
|
232
|
+
} if (rf & 2) {
|
|
233
|
+
i0.ɵɵadvance(4);
|
|
234
|
+
i0.ɵɵtextInterpolate(ctx.entityName);
|
|
235
|
+
i0.ɵɵadvance(3);
|
|
236
|
+
i0.ɵɵtextInterpolate1(" ", ctx.entityDescription, "");
|
|
237
|
+
i0.ɵɵadvance(3);
|
|
238
|
+
i0.ɵɵproperty("EntityName", ctx.entityName)("ShowPropertiesButton", false);
|
|
239
|
+
i0.ɵɵadvance(2);
|
|
240
|
+
i0.ɵɵproperty("ngIf", ctx.showloader);
|
|
241
|
+
i0.ɵɵadvance(1);
|
|
242
|
+
i0.ɵɵproperty("ngIf", !ctx.showloader);
|
|
243
|
+
i0.ɵɵadvance(1);
|
|
244
|
+
i0.ɵɵproperty("ngIf", ctx.deleteDialogOpened);
|
|
245
|
+
} }, dependencies: [i4.NgForOf, i4.NgIf, i5.DialogComponent, i6.Button, i7.LoaderComponent, i8.IconComponent, i9.CardComponent, i9.CardHeaderComponent, i9.CardBodyComponent, i9.CardTitleDirective, i9.CardSubtitleDirective, i10.ViewPropertiesDialogComponent], styles: [".list-item[_ngcontent-%COMP%] {\r\n margin: 4px;\r\n cursor: pointer;\r\n }\r\n \r\n .view-card[_ngcontent-%COMP%] .view-icon[_ngcontent-%COMP%] {\r\n color: #ff6358;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 6px;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] .k-card-body[_ngcontent-%COMP%] {\r\n background: #fff;\r\n padding: 12px 20px;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] .view-card[_ngcontent-%COMP%] {\r\n overflow: auto;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n background: #fafafa;\r\n padding: 4px 15px;\r\n }\r\n .view-card[_ngcontent-%COMP%] .btn-wrapper[_ngcontent-%COMP%] {\r\n display: flex;\r\n align-items: center;\r\n }\r\n \r\n .k-card-body[_ngcontent-%COMP%] .view-card-content[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 16px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n margin-bottom: 0;\r\n letter-spacing: 0.18px;\r\n }\r\n .k-card-body[_ngcontent-%COMP%] .view-card-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\r\n color: #666;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n height: 24px;\r\n margin-bottom: 0;\r\n }\r\n .card-container[_ngcontent-%COMP%] {\r\n padding: 0;\r\n margin: 0;\r\n box-shadow: none;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n }\r\n \r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n .main-area[_ngcontent-%COMP%] .card-list[_ngcontent-%COMP%] {\r\n display: flex;\r\n gap: 20px;\r\n }", ".main-area[_ngcontent-%COMP%] {\r\n display: flex;\r\n height: 100%;\r\n width: 100%;\r\n gap: 24px;\r\n padding: 24px 0;\r\n}\r\n.list-view[_ngcontent-%COMP%] {\r\n padding: 16px;\r\n min-width: 300px;\r\n border-radius: 4px;\r\n background: #FAFAFA;\r\n border: none;\r\n}\r\n .list-view .k-listview-header, .list-view .k-listview-footer {\r\n border: none;\r\n}\r\n .list-view .k-listview-content {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 4px;\r\n background: #fff;\r\n padding: 16px;\r\n}\r\n\r\n.header[_ngcontent-%COMP%], .footer[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 16px;\r\n height: auto;\r\n margin:0;\r\n}\r\n\r\n.header[_ngcontent-%COMP%] {\r\n color: #424242;\r\n margin-bottom: 16px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n.header[_ngcontent-%COMP%] .head-tag[_ngcontent-%COMP%] {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\nfont-size: 16px;\r\nfont-style: normal;\r\nfont-weight: 400;\r\nline-height: 20px;\r\n}\r\n\r\n.header[_ngcontent-%COMP%] .count[_ngcontent-%COMP%] {\r\n width: 24px;\r\n height: 24px;\r\n min-width: 24px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n font-size: 10px;\r\n background: rgba(0, 0, 0, 0.08);\r\n border-radius: 50%;\r\n}\r\n.footer[_ngcontent-%COMP%] {\r\n font-size: 14px;\r\n margin-top: 16px;\r\n}\r\n\r\n.list-item[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 30px;\r\n cursor: pointer;\r\n margin: 4px;\r\n}\r\n.card-container[_ngcontent-%COMP%] {\r\n margin: 0;\r\n padding: 0;\r\n box-shadow: none;\r\n}\r\n.card-header-entity[_ngcontent-%COMP%] {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n}\r\n.card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n\r\n \r\n\r\n\r\n \r\n .view-card[_ngcontent-%COMP%] .view-icon[_ngcontent-%COMP%] {\r\n color: #ff6358;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 6px;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] .k-card-body[_ngcontent-%COMP%] {\r\n background: #fff;\r\n padding: 12px 20px;\r\n }\r\n .card-wrapper[_ngcontent-%COMP%] .view-card[_ngcontent-%COMP%] {\r\n overflow: auto;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n background: #fafafa;\r\n padding: 4px 15px;\r\n }\r\n .view-card[_ngcontent-%COMP%] .btn-wrapper[_ngcontent-%COMP%] {\r\n display: flex;\r\n align-items: center;\r\n }\r\n \r\n .k-card-body[_ngcontent-%COMP%] .view-card-content[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 16px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n margin-bottom: 0;\r\n letter-spacing: 0.18px;\r\n }\r\n .k-card-body[_ngcontent-%COMP%] .view-card-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\r\n color: #666;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n height: 48px;\r\n margin-bottom: 0;\r\n }\r\n .card-container[_ngcontent-%COMP%] {\r\n padding: 0;\r\n margin: 0;\r\n box-shadow: none;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n }\r\n \r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity[_ngcontent-%COMP%] .title-wrap[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n .main-area[_ngcontent-%COMP%] .card-list[_ngcontent-%COMP%] {\r\n display: flex;\r\n gap: 20px;\r\n }"] });
|
|
246
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SingleEntityComponent, [{
|
|
247
|
+
type: Component,
|
|
248
|
+
args: [{ selector: 'app-single-entity', template: "<div class=\"card-container\">\r\n <div class=\"card-header-entity\">\r\n <div class=\"title-wrap\">\r\n <h1>{{entityName}}</h1>\r\n <p> <span class=\"k-icon k-i-information\"></span> {{entityDescription}}</p>\r\n </div>\r\n <button kendoButton icon=\"gear\" (click)=\"createNewView()\">Create New View</button>\r\n </div>\r\n <app-view-properties-dialog [EntityName]=\"this.entityName\" [ShowPropertiesButton]=\"false\"\r\n (dialogClosed)=\"viewPropertiesClosed($event)\"></app-view-properties-dialog>\r\n <div class=\"main-area\">\r\n <kendo-loader *ngIf=\"showloader\" type=\"converging-spinner\" ></kendo-loader>\r\n <div class=\"card-list k-d-flex k-flex-row k-h-full k-flex-wrap\" *ngIf=\"!showloader\">\r\n <div *ngFor=\"let entity of entityViews\">\r\n <kendo-card class=\"card-wrapper\">\r\n <kendo-card-header class=\"k-hstack view-card\">\r\n <kendo-icon name=\"table\" class=\"view-icon\"></kendo-icon>\r\n <div class=\"btn-wrapper\">\r\n <button kendoButton fillMode=\"flat\" (click)=\"editView(entity)\">\r\n <span class=\"k-icon k-i-edit\"></span>\r\n </button>\r\n <button kendoButton fillMode=\"flat\" (click)=\"handleDeleteView(entity)\"><span\r\n class=\"k-icon k-i-delete\"></span></button>\r\n </div>\r\n </kendo-card-header>\r\n\r\n <kendo-card-body (click)=\"viewItemClick(entity)\">\r\n <div class=\"view-card-content k-cursor-pointer\">\r\n <h5 kendoCardTitle>{{ entity.Name }}</h5>\r\n <p kendoCardSubtitle>{{ entity.Description }}</p>\r\n </div>\r\n </kendo-card-body>\r\n </kendo-card>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <kendo-dialog title=\"Delete View\" *ngIf=\"deleteDialogOpened\" (close)=\"handleDeleteView()\">\r\n <kendo-loader *ngIf=\"showloader\" type=\"converging-spinner\"></kendo-loader>\r\n <div [class]=\"showloader ? 'disabled-div' : ''\">\r\n <p class=\"k-m-7.5 k-text-center\">\r\n Are you sure you want to delete <b>{{selectedView?.Name}}</b> View?\r\n </p>\r\n <div class=\"k-actions k-actions-end popup-actions\">\r\n <button kendoButton (click)=\"deleteView()\" themeColor=\"primary\">\r\n <span class=\"k-icon k-i-check\"></span> Yes\r\n </button>\r\n <button kendoButton (click)=\"handleDeleteView()\"><span class=\"k-icon k-i-close\"></span> No</button>\r\n </div>\r\n </div>\r\n </kendo-dialog>\r\n</div>", styles: ["\r\n \r\n .list-item {\r\n margin: 4px;\r\n cursor: pointer;\r\n }\r\n \r\n .view-card .view-icon {\r\n color: #ff6358;\r\n }\r\n .card-wrapper {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 6px;\r\n }\r\n .card-wrapper .k-card-body {\r\n background: #fff;\r\n padding: 12px 20px;\r\n }\r\n .card-wrapper .view-card {\r\n overflow: auto;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n background: #fafafa;\r\n padding: 4px 15px;\r\n }\r\n .view-card .btn-wrapper {\r\n display: flex;\r\n align-items: center;\r\n }\r\n \r\n .k-card-body .view-card-content h5 {\r\n color: #424242;\r\n font-size: 16px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n margin-bottom: 0;\r\n letter-spacing: 0.18px;\r\n }\r\n .k-card-body .view-card-content p {\r\n color: #666;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n height: 24px;\r\n margin-bottom: 0;\r\n }\r\n .card-container {\r\n padding: 0;\r\n margin: 0;\r\n box-shadow: none;\r\n }\r\n .card-header-entity {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n }\r\n \r\n .card-header-entity .title-wrap h1 {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity .title-wrap {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity .title-wrap p {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n .main-area .card-list {\r\n display: flex;\r\n gap: 20px;\r\n }\r\n ", "\r\n.main-area {\r\n display: flex;\r\n height: 100%;\r\n width: 100%;\r\n gap: 24px;\r\n padding: 24px 0;\r\n}\r\n.list-view {\r\n padding: 16px;\r\n min-width: 300px;\r\n border-radius: 4px;\r\n background: #FAFAFA;\r\n border: none;\r\n}\r\n::ng-deep .list-view .k-listview-header, \r\n::ng-deep .list-view .k-listview-footer {\r\n border: none;\r\n}\r\n::ng-deep .list-view .k-listview-content {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 4px;\r\n background: #fff;\r\n padding: 16px;\r\n}\r\n\r\n.header,\r\n.footer {\r\n color: #424242;\r\n font-size: 16px;\r\n height: auto;\r\n margin:0;\r\n}\r\n\r\n.header {\r\n color: #424242;\r\n margin-bottom: 16px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n.header .head-tag {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\nfont-size: 16px;\r\nfont-style: normal;\r\nfont-weight: 400;\r\nline-height: 20px;\r\n}\r\n\r\n.header .count {\r\n width: 24px;\r\n height: 24px;\r\n min-width: 24px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n font-size: 10px;\r\n background: rgba(0, 0, 0, 0.08);\r\n border-radius: 50%;\r\n}\r\n.footer {\r\n font-size: 14px;\r\n margin-top: 16px;\r\n}\r\n\r\n.list-item {\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 30px;\r\n cursor: pointer;\r\n margin: 4px;\r\n}\r\n.card-container {\r\n margin: 0;\r\n padding: 0;\r\n box-shadow: none;\r\n}\r\n.card-header-entity {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n}\r\n.card-header-entity .title-wrap h1 {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity .title-wrap {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity .title-wrap p {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n\r\n \r\n\r\n\r\n \r\n .view-card .view-icon {\r\n color: #ff6358;\r\n }\r\n .card-wrapper {\r\n border: 1px solid rgba(0, 0, 0, 0.08);\r\n border-radius: 6px;\r\n }\r\n .card-wrapper .k-card-body {\r\n background: #fff;\r\n padding: 12px 20px;\r\n }\r\n .card-wrapper .view-card {\r\n overflow: auto;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n background: #fafafa;\r\n padding: 4px 15px;\r\n }\r\n .view-card .btn-wrapper {\r\n display: flex;\r\n align-items: center;\r\n }\r\n \r\n .k-card-body .view-card-content h5 {\r\n color: #424242;\r\n font-size: 16px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n margin-bottom: 0;\r\n letter-spacing: 0.18px;\r\n }\r\n .k-card-body .view-card-content p {\r\n color: #666;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n height: 48px;\r\n margin-bottom: 0;\r\n }\r\n .card-container {\r\n padding: 0;\r\n margin: 0;\r\n box-shadow: none;\r\n }\r\n .card-header-entity {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n padding-bottom: 20px;\r\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\r\n }\r\n \r\n .card-header-entity .title-wrap h1 {\r\n color: #424242;\r\n font-size: 28px;\r\n font-style: normal;\r\n font-weight: 300;\r\n line-height: 28px;\r\n margin-bottom: 15px;\r\n }\r\n .card-header-entity .title-wrap {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n .card-header-entity .title-wrap p {\r\n margin: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n color: #424242;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: 20px;\r\n }\r\n .main-area .card-list {\r\n display: flex;\r\n gap: 20px;\r\n }\r\n "] }]
|
|
249
|
+
}], function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.NotificationService }, { type: i3.SharedService }]; }, { viewPropertiesDialog: [{
|
|
250
|
+
type: ViewChild,
|
|
251
|
+
args: [ViewPropertiesDialogComponent, { static: true }]
|
|
252
|
+
}] }); })();
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AfterViewInit, EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute } from '@angular/router';
|
|
3
|
+
import { Container } from '@memberjunction/ng-container-directives';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class SingleRecordComponent implements OnInit, AfterViewInit {
|
|
6
|
+
private route;
|
|
7
|
+
formContainer: Container;
|
|
8
|
+
recordId: number;
|
|
9
|
+
entityName: string | null;
|
|
10
|
+
loadComplete: EventEmitter<any>;
|
|
11
|
+
constructor(route: ActivatedRoute);
|
|
12
|
+
appDescription: string;
|
|
13
|
+
useGenericForm: boolean;
|
|
14
|
+
loading: boolean;
|
|
15
|
+
ngOnInit(): void;
|
|
16
|
+
ngAfterViewInit(): void;
|
|
17
|
+
LoadForm(recordId: number, entityName: string): Promise<void>;
|
|
18
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SingleRecordComponent, never>;
|
|
19
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SingleRecordComponent, "app-single-record", never, { "recordId": "recordId"; "entityName": "entityName"; }, { "loadComplete": "loadComplete"; }, never, never, false, never>;
|
|
20
|
+
}
|