@memberjunction/ng-explorer-core 4.0.0 → 4.2.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.
Files changed (142) hide show
  1. package/README.md +117 -726
  2. package/dist/lib/resource-wrappers/record-resource.component.d.ts.map +1 -1
  3. package/dist/lib/resource-wrappers/record-resource.component.js +11 -29
  4. package/dist/lib/resource-wrappers/record-resource.component.js.map +1 -1
  5. package/dist/lib/shell/components/header/app-nav.component.d.ts +71 -14
  6. package/dist/lib/shell/components/header/app-nav.component.d.ts.map +1 -1
  7. package/dist/lib/shell/components/header/app-nav.component.js +195 -54
  8. package/dist/lib/shell/components/header/app-nav.component.js.map +1 -1
  9. package/dist/lib/shell/components/tabs/component-cache-manager.d.ts.map +1 -1
  10. package/dist/lib/shell/components/tabs/component-cache-manager.js +0 -6
  11. package/dist/lib/shell/components/tabs/component-cache-manager.js.map +1 -1
  12. package/dist/lib/shell/shell.component.d.ts +5 -1
  13. package/dist/lib/shell/shell.component.d.ts.map +1 -1
  14. package/dist/lib/shell/shell.component.js +28 -17
  15. package/dist/lib/shell/shell.component.js.map +1 -1
  16. package/dist/lib/single-dashboard/Components/add-item/add-item.component.js +1 -1
  17. package/dist/lib/single-dashboard/Components/delete-item/delete-item.component.js +1 -1
  18. package/dist/lib/single-dashboard/Components/edit-dashboard/edit-dashboard.component.js +1 -1
  19. package/dist/lib/single-record/single-record.component.d.ts +9 -0
  20. package/dist/lib/single-record/single-record.component.d.ts.map +1 -1
  21. package/dist/lib/single-record/single-record.component.js +43 -2
  22. package/dist/lib/single-record/single-record.component.js.map +1 -1
  23. package/dist/lib/user-menu/base-user-menu.d.ts.map +1 -1
  24. package/dist/lib/user-menu/base-user-menu.js +2 -13
  25. package/dist/lib/user-menu/base-user-menu.js.map +1 -1
  26. package/package.json +35 -35
  27. package/dist/generic/Events.types.d.ts +0 -174
  28. package/dist/generic/Events.types.d.ts.map +0 -1
  29. package/dist/generic/Events.types.js +0 -220
  30. package/dist/generic/Events.types.js.map +0 -1
  31. package/dist/lib/app-view/application-view.component.d.ts +0 -65
  32. package/dist/lib/app-view/application-view.component.d.ts.map +0 -1
  33. package/dist/lib/app-view/application-view.component.js +0 -611
  34. package/dist/lib/app-view/application-view.component.js.map +0 -1
  35. package/dist/lib/auth-button/auth-button.component.d.ts +0 -13
  36. package/dist/lib/auth-button/auth-button.component.d.ts.map +0 -1
  37. package/dist/lib/auth-button/auth-button.component.js +0 -36
  38. package/dist/lib/auth-button/auth-button.component.js.map +0 -1
  39. package/dist/lib/base-browser-component/base-browser-component.d.ts +0 -44
  40. package/dist/lib/base-browser-component/base-browser-component.d.ts.map +0 -1
  41. package/dist/lib/base-browser-component/base-browser-component.js +0 -195
  42. package/dist/lib/base-browser-component/base-browser-component.js.map +0 -1
  43. package/dist/lib/chat-wrapper/chat-wrapper.component.d.ts +0 -54
  44. package/dist/lib/chat-wrapper/chat-wrapper.component.d.ts.map +0 -1
  45. package/dist/lib/chat-wrapper/chat-wrapper.component.js +0 -257
  46. package/dist/lib/chat-wrapper/chat-wrapper.component.js.map +0 -1
  47. package/dist/lib/dashboard-browser-component/dashboard-browser.component.d.ts +0 -32
  48. package/dist/lib/dashboard-browser-component/dashboard-browser.component.d.ts.map +0 -1
  49. package/dist/lib/dashboard-browser-component/dashboard-browser.component.js +0 -244
  50. package/dist/lib/dashboard-browser-component/dashboard-browser.component.js.map +0 -1
  51. package/dist/lib/data-browser-component/data-browser.component.d.ts +0 -23
  52. package/dist/lib/data-browser-component/data-browser.component.d.ts.map +0 -1
  53. package/dist/lib/data-browser-component/data-browser.component.js +0 -267
  54. package/dist/lib/data-browser-component/data-browser.component.js.map +0 -1
  55. package/dist/lib/expansion-panel-component/expansion-panel-component.d.ts +0 -21
  56. package/dist/lib/expansion-panel-component/expansion-panel-component.d.ts.map +0 -1
  57. package/dist/lib/expansion-panel-component/expansion-panel-component.js +0 -158
  58. package/dist/lib/expansion-panel-component/expansion-panel-component.js.map +0 -1
  59. package/dist/lib/favorites/favorites.component.d.ts +0 -15
  60. package/dist/lib/favorites/favorites.component.d.ts.map +0 -1
  61. package/dist/lib/favorites/favorites.component.js +0 -135
  62. package/dist/lib/favorites/favorites.component.js.map +0 -1
  63. package/dist/lib/files/files.component.d.ts +0 -10
  64. package/dist/lib/files/files.component.d.ts.map +0 -1
  65. package/dist/lib/files/files.component.js +0 -41
  66. package/dist/lib/files/files.component.js.map +0 -1
  67. package/dist/lib/generic-browse-list/generic-browse-list.component.d.ts +0 -30
  68. package/dist/lib/generic-browse-list/generic-browse-list.component.d.ts.map +0 -1
  69. package/dist/lib/generic-browse-list/generic-browse-list.component.js +0 -171
  70. package/dist/lib/generic-browse-list/generic-browse-list.component.js.map +0 -1
  71. package/dist/lib/generic-browser-list/generic-browser-list.component.d.ts +0 -120
  72. package/dist/lib/generic-browser-list/generic-browser-list.component.d.ts.map +0 -1
  73. package/dist/lib/generic-browser-list/generic-browser-list.component.js +0 -1093
  74. package/dist/lib/generic-browser-list/generic-browser-list.component.js.map +0 -1
  75. package/dist/lib/header/MSFT_UserImageService.d.ts +0 -12
  76. package/dist/lib/header/MSFT_UserImageService.d.ts.map +0 -1
  77. package/dist/lib/header/MSFT_UserImageService.js +0 -25
  78. package/dist/lib/header/MSFT_UserImageService.js.map +0 -1
  79. package/dist/lib/header/header.component.d.ts +0 -69
  80. package/dist/lib/header/header.component.d.ts.map +0 -1
  81. package/dist/lib/header/header.component.js +0 -342
  82. package/dist/lib/header/header.component.js.map +0 -1
  83. package/dist/lib/home-component/home.component.d.ts +0 -22
  84. package/dist/lib/home-component/home.component.d.ts.map +0 -1
  85. package/dist/lib/home-component/home.component.js +0 -194
  86. package/dist/lib/home-component/home.component.js.map +0 -1
  87. package/dist/lib/home-wrapper/home-wrapper.component.d.ts +0 -7
  88. package/dist/lib/home-wrapper/home-wrapper.component.d.ts.map +0 -1
  89. package/dist/lib/home-wrapper/home-wrapper.component.js +0 -30
  90. package/dist/lib/home-wrapper/home-wrapper.component.js.map +0 -1
  91. package/dist/lib/list-view/list-view.component.d.ts +0 -45
  92. package/dist/lib/list-view/list-view.component.d.ts.map +0 -1
  93. package/dist/lib/list-view/list-view.component.js +0 -329
  94. package/dist/lib/list-view/list-view.component.js.map +0 -1
  95. package/dist/lib/navigation/navigation.component.d.ts +0 -142
  96. package/dist/lib/navigation/navigation.component.d.ts.map +0 -1
  97. package/dist/lib/navigation/navigation.component.js +0 -1212
  98. package/dist/lib/navigation/navigation.component.js.map +0 -1
  99. package/dist/lib/query-browser-component/query-browser.component.d.ts +0 -75
  100. package/dist/lib/query-browser-component/query-browser.component.d.ts.map +0 -1
  101. package/dist/lib/query-browser-component/query-browser.component.js +0 -908
  102. package/dist/lib/query-browser-component/query-browser.component.js.map +0 -1
  103. package/dist/lib/report-browser-component/report-browser.component.d.ts +0 -22
  104. package/dist/lib/report-browser-component/report-browser.component.d.ts.map +0 -1
  105. package/dist/lib/report-browser-component/report-browser.component.js +0 -80
  106. package/dist/lib/report-browser-component/report-browser.component.js.map +0 -1
  107. package/dist/lib/resource-browser/resource-browser.component.d.ts +0 -178
  108. package/dist/lib/resource-browser/resource-browser.component.d.ts.map +0 -1
  109. package/dist/lib/resource-browser/resource-browser.component.js +0 -1012
  110. package/dist/lib/resource-browser/resource-browser.component.js.map +0 -1
  111. package/dist/lib/resource-wrappers/report-resource.component.d.ts +0 -13
  112. package/dist/lib/resource-wrappers/report-resource.component.d.ts.map +0 -1
  113. package/dist/lib/resource-wrappers/report-resource.component.js +0 -49
  114. package/dist/lib/resource-wrappers/report-resource.component.js.map +0 -1
  115. package/dist/lib/shared/custom-icon/custom-icon.component.d.ts +0 -11
  116. package/dist/lib/shared/custom-icon/custom-icon.component.d.ts.map +0 -1
  117. package/dist/lib/shared/custom-icon/custom-icon.component.js +0 -44
  118. package/dist/lib/shared/custom-icon/custom-icon.component.js.map +0 -1
  119. package/dist/lib/single-application/single-application.component.d.ts +0 -24
  120. package/dist/lib/single-application/single-application.component.d.ts.map +0 -1
  121. package/dist/lib/single-application/single-application.component.js +0 -122
  122. package/dist/lib/single-application/single-application.component.js.map +0 -1
  123. package/dist/lib/single-entity/single-entity.component.d.ts +0 -34
  124. package/dist/lib/single-entity/single-entity.component.d.ts.map +0 -1
  125. package/dist/lib/single-entity/single-entity.component.js +0 -245
  126. package/dist/lib/single-entity/single-entity.component.js.map +0 -1
  127. package/dist/lib/single-report/single-report.component.d.ts +0 -17
  128. package/dist/lib/single-report/single-report.component.d.ts.map +0 -1
  129. package/dist/lib/single-report/single-report.component.js +0 -55
  130. package/dist/lib/single-report/single-report.component.js.map +0 -1
  131. package/dist/lib/single-view/single-view.component.d.ts +0 -43
  132. package/dist/lib/single-view/single-view.component.d.ts.map +0 -1
  133. package/dist/lib/single-view/single-view.component.js +0 -207
  134. package/dist/lib/single-view/single-view.component.js.map +0 -1
  135. package/dist/lib/style-guide-test/style-guide-test.component.d.ts +0 -70
  136. package/dist/lib/style-guide-test/style-guide-test.component.d.ts.map +0 -1
  137. package/dist/lib/style-guide-test/style-guide-test.component.js +0 -1024
  138. package/dist/lib/style-guide-test/style-guide-test.component.js.map +0 -1
  139. package/dist/lib/tabbed-dashboard/tabbed-dashboard.component.d.ts +0 -46
  140. package/dist/lib/tabbed-dashboard/tabbed-dashboard.component.d.ts.map +0 -1
  141. package/dist/lib/tabbed-dashboard/tabbed-dashboard.component.js +0 -547
  142. package/dist/lib/tabbed-dashboard/tabbed-dashboard.component.js.map +0 -1
@@ -1,267 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { Component } from '@angular/core';
8
- import { Metadata, RunView } from '@memberjunction/core';
9
- import { RegisterClass } from '@memberjunction/global';
10
- import { BaseNavigationComponent } from '@memberjunction/ng-shared';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@memberjunction/ng-shared";
13
- import * as i2 from "@angular/router";
14
- import * as i3 from "@angular/common";
15
- import * as i4 from "@progress/kendo-angular-buttons";
16
- import * as i5 from "@progress/kendo-angular-layout";
17
- import * as i6 from "@memberjunction/ng-record-selector";
18
- import * as i7 from "@memberjunction/ng-shared-generic";
19
- function DataBrowserComponent_div_15_Template(rf, ctx) { if (rf & 1) {
20
- i0.ɵɵelementStart(0, "div", 15);
21
- i0.ɵɵelement(1, "mj-loading", 16);
22
- i0.ɵɵelementEnd();
23
- } }
24
- function DataBrowserComponent_div_16_kendo_card_1_i_2_Template(rf, ctx) { if (rf & 1) {
25
- i0.ɵɵelement(0, "i", 25);
26
- } if (rf & 2) {
27
- const app_r2 = i0.ɵɵnextContext().$implicit;
28
- i0.ɵɵproperty("ngClass", app_r2.Icon);
29
- i0.ɵɵattribute("aria-hidden", true);
30
- } }
31
- function DataBrowserComponent_div_16_kendo_card_1_i_3_Template(rf, ctx) { if (rf & 1) {
32
- i0.ɵɵelement(0, "i", 26);
33
- } if (rf & 2) {
34
- i0.ɵɵattribute("aria-hidden", true);
35
- } }
36
- function DataBrowserComponent_div_16_kendo_card_1_p_6_Template(rf, ctx) { if (rf & 1) {
37
- i0.ɵɵelementStart(0, "p");
38
- i0.ɵɵtext(1);
39
- i0.ɵɵelementEnd();
40
- } if (rf & 2) {
41
- const app_r2 = i0.ɵɵnextContext().$implicit;
42
- i0.ɵɵadvance();
43
- i0.ɵɵtextInterpolate(app_r2.Description);
44
- } }
45
- function DataBrowserComponent_div_16_kendo_card_1_p_7_Template(rf, ctx) { if (rf & 1) {
46
- i0.ɵɵelementStart(0, "p", 27);
47
- i0.ɵɵtext(1, "No description available");
48
- i0.ɵɵelementEnd();
49
- } }
50
- function DataBrowserComponent_div_16_kendo_card_1_div_8_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelementStart(0, "div", 28);
52
- i0.ɵɵelement(1, "i", 29);
53
- i0.ɵɵtext(2, " Default App ");
54
- i0.ɵɵelementEnd();
55
- } }
56
- function DataBrowserComponent_div_16_kendo_card_1_Template(rf, ctx) { if (rf & 1) {
57
- const _r1 = i0.ɵɵgetCurrentView();
58
- i0.ɵɵelementStart(0, "kendo-card", 19);
59
- i0.ɵɵlistener("click", function DataBrowserComponent_div_16_kendo_card_1_Template_kendo_card_click_0_listener() { const app_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.appItemClick(app_r2)); });
60
- i0.ɵɵelementStart(1, "kendo-card-body");
61
- i0.ɵɵtemplate(2, DataBrowserComponent_div_16_kendo_card_1_i_2_Template, 1, 2, "i", 20)(3, DataBrowserComponent_div_16_kendo_card_1_i_3_Template, 1, 1, "i", 21);
62
- i0.ɵɵelementStart(4, "h3");
63
- i0.ɵɵtext(5);
64
- i0.ɵɵelementEnd();
65
- i0.ɵɵtemplate(6, DataBrowserComponent_div_16_kendo_card_1_p_6_Template, 2, 1, "p", 22)(7, DataBrowserComponent_div_16_kendo_card_1_p_7_Template, 2, 0, "p", 23)(8, DataBrowserComponent_div_16_kendo_card_1_div_8_Template, 3, 0, "div", 24);
66
- i0.ɵɵelementEnd()();
67
- } if (rf & 2) {
68
- const app_r2 = ctx.$implicit;
69
- i0.ɵɵattribute("tabindex", 0)("role", "button")("aria-label", "Open " + app_r2.Name + " application");
70
- i0.ɵɵadvance(2);
71
- i0.ɵɵproperty("ngIf", app_r2.Icon && app_r2.Icon.length > 0);
72
- i0.ɵɵadvance();
73
- i0.ɵɵproperty("ngIf", !app_r2.Icon || app_r2.Icon.length === 0);
74
- i0.ɵɵadvance(2);
75
- i0.ɵɵtextInterpolate(app_r2.Name);
76
- i0.ɵɵadvance();
77
- i0.ɵɵproperty("ngIf", app_r2.Description);
78
- i0.ɵɵadvance();
79
- i0.ɵɵproperty("ngIf", !app_r2.Description);
80
- i0.ɵɵadvance();
81
- i0.ɵɵproperty("ngIf", app_r2.DefaultForNewUser);
82
- } }
83
- function DataBrowserComponent_div_16_Template(rf, ctx) { if (rf & 1) {
84
- i0.ɵɵelementStart(0, "div", 17);
85
- i0.ɵɵtemplate(1, DataBrowserComponent_div_16_kendo_card_1_Template, 9, 9, "kendo-card", 18);
86
- i0.ɵɵelementEnd();
87
- } if (rf & 2) {
88
- const ctx_r2 = i0.ɵɵnextContext();
89
- i0.ɵɵadvance();
90
- i0.ɵɵproperty("ngForOf", ctx_r2.SelectedApplications);
91
- } }
92
- function DataBrowserComponent_div_17_Template(rf, ctx) { if (rf & 1) {
93
- const _r4 = i0.ɵɵgetCurrentView();
94
- i0.ɵɵelementStart(0, "div", 30);
95
- i0.ɵɵelement(1, "i", 31);
96
- i0.ɵɵelementStart(2, "h3");
97
- i0.ɵɵtext(3, "No Applications Selected");
98
- i0.ɵɵelementEnd();
99
- i0.ɵɵelementStart(4, "p");
100
- i0.ɵɵtext(5, "Choose which applications you'd like to access from your dashboard");
101
- i0.ɵɵelementEnd();
102
- i0.ɵɵelementStart(6, "button", 32);
103
- i0.ɵɵlistener("click", function DataBrowserComponent_div_17_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.ShowAppSelectionDialog()); });
104
- i0.ɵɵelementStart(7, "span", 33);
105
- i0.ɵɵelement(8, "i", 10);
106
- i0.ɵɵtext(9, " Configure Applications ");
107
- i0.ɵɵelementEnd()()();
108
- } }
109
- let DataBrowserComponent = class DataBrowserComponent extends BaseNavigationComponent {
110
- sharedService;
111
- router;
112
- showLoader = true;
113
- AllApplications = [];
114
- SelectedApplications = [];
115
- UnselectedApplications = [];
116
- constructor(sharedService, router) {
117
- super();
118
- this.sharedService = sharedService;
119
- this.router = router;
120
- }
121
- ngOnInit() {
122
- this.LoadData();
123
- }
124
- async LoadData() {
125
- this.showLoader = true;
126
- const rv = new RunView();
127
- const results = await rv.RunView({
128
- EntityName: 'Applications',
129
- ResultType: 'entity_object',
130
- OrderBy: 'Name'
131
- });
132
- if (results && results.Success) {
133
- this.AllApplications = results.Results;
134
- }
135
- const userApps = await rv.RunView({
136
- EntityName: 'User Applications',
137
- ResultType: 'entity_object',
138
- ExtraFilter: `UserID = '${new Metadata().CurrentUser.ID}'`,
139
- OrderBy: 'Sequence, Application'
140
- });
141
- if (userApps && userApps.Success) {
142
- const apps = userApps.Results.map(ua => this.AllApplications.find(a => a.ID === ua.ApplicationID && ua.IsActive)).filter(a => a); // filter out null entries
143
- if (!apps.some(a => !a))
144
- this.SelectedApplications = apps; // forced typecast as we know now that all are non-null
145
- // now populate the unselected applications
146
- this.UnselectedApplications = this.AllApplications.filter(a => !this.SelectedApplications.some(sa => sa.ID === a.ID));
147
- }
148
- this.showLoader = false;
149
- }
150
- appItemClick(info) {
151
- if (info) {
152
- this.router.navigate(['app', info.Name]);
153
- }
154
- }
155
- AppSelectionDialogVisible = false;
156
- async ShowAppSelectionDialog() {
157
- this.AppSelectionDialogVisible = true;
158
- }
159
- async GoHome(event) {
160
- event.preventDefault();
161
- // tell the router to go to /home
162
- this.router.navigate(['home']);
163
- }
164
- async OnAppSelectionDialogClosed(save) {
165
- this.AppSelectionDialogVisible = false;
166
- // now we need to process the changes if the user hit save
167
- if (save) {
168
- // we need to basically make sure the User Applications entity for this user maps to the set of selected Applications in the order selected as well
169
- const md = new Metadata();
170
- const rv = new RunView();
171
- const userApps = await rv.RunView({
172
- EntityName: 'User Applications',
173
- ExtraFilter: `UserID='${md.CurrentUser.ID}'`,
174
- ResultType: 'entity_object',
175
- OrderBy: 'Sequence, Application',
176
- });
177
- // userApps.results is the current DB state, we need to now compare it to the SelectedApplications array
178
- // and if there are changes either update sequence values or set IsActive=false for records that are not selected anyomre. We
179
- // don't ever actually delete existing UserApplication records becaue we want to retain the UserApplicationEntities in case the
180
- // user selects the app again in the future
181
- const existingUserApps = userApps.Results;
182
- const userAppsToSave = [];
183
- // first we need to update the sequence values for the selected applications
184
- for (let index = 0; index < this.SelectedApplications.length; index++) {
185
- const app = this.SelectedApplications[index];
186
- const existing = existingUserApps.find(ua => ua.ApplicationID === app.ID);
187
- if (existing) {
188
- existing.IsActive = true;
189
- existing.Sequence = index;
190
- userAppsToSave.push(existing);
191
- }
192
- else {
193
- // this is a new app that the user has selected
194
- const newApp = await md.GetEntityObject("User Applications");
195
- newApp.ApplicationID = app.ID;
196
- newApp.UserID = md.CurrentUser.ID;
197
- newApp.Sequence = index;
198
- userAppsToSave.push(newApp);
199
- }
200
- }
201
- // now we need to set IsActive=false for any records that are not selected anymore
202
- for (let index = 0; index < existingUserApps.length; index++) {
203
- const existing = existingUserApps[index];
204
- if (!this.SelectedApplications.some(sa => sa.ID === existing.ApplicationID)) {
205
- existing.IsActive = false;
206
- userAppsToSave.push(existing);
207
- }
208
- }
209
- // finally, we need to submit a single transaction so we have one server round trip to commit all this good stuff
210
- const tg = await md.CreateTransactionGroup();
211
- for (let index = 0; index < userAppsToSave.length; index++) {
212
- const ua = userAppsToSave[index];
213
- ua.TransactionGroup = tg;
214
- await ua.Save();
215
- }
216
- if (!await tg.Submit()) {
217
- // the data doesn't need to be updated when we are succesful because we're all bound to the same data which is cool
218
- // but in this case we need to notify the user it failed
219
- this.sharedService.CreateSimpleNotification('There was an error saving your application selections. Please try again later or notify a system administrator.', "error", 3500);
220
- }
221
- }
222
- }
223
- static ɵfac = function DataBrowserComponent_Factory(t) { return new (t || DataBrowserComponent)(i0.ɵɵdirectiveInject(i1.SharedService), i0.ɵɵdirectiveInject(i2.Router)); };
224
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DataBrowserComponent, selectors: [["app-data-browser"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 19, vars: 8, consts: [[1, "mj-page-container"], [1, "mj-breadcrumb"], [1, "mj-breadcrumb-item", 3, "click"], [1, "fas", "fa-home"], [1, "fas", "fa-chevron-right", "mj-breadcrumb-separator"], [1, "mj-breadcrumb-current"], [1, "mj-header"], [1, "mj-header-title"], [1, "mj-header-actions"], ["kendoButton", "", "fillMode", "flat", "rounded", "full", "size", "large", "themeColor", "primary", 3, "click", "title"], [1, "fas", "fa-cog"], ["class", "mj-loading mj-loading-overlay", 4, "ngIf"], ["class", "mj-grid mj-grid-responsive", 4, "ngIf"], ["class", "mj-empty-state", 4, "ngIf"], ["EntityName", "Applications", "DisplayField", "Name", "DisplayIconField", "Icon", "DialogTitle", "Select Applications", 3, "DialogClosed", "AvailableRecords", "SelectedRecords", "UnselectedRecords", "DialogVisible"], [1, "mj-loading", "mj-loading-overlay"], ["text", "Loading applications...", "size", "large"], [1, "mj-grid", "mj-grid-responsive"], ["class", "mj-kendo-icon-card mj-kendo-icon-card-clickable", 3, "click", 4, "ngFor", "ngForOf"], [1, "mj-kendo-icon-card", "mj-kendo-icon-card-clickable", 3, "click"], ["class", "mj-card-icon-large", 3, "ngClass", 4, "ngIf"], ["class", "fas fa-cube mj-card-icon-large", 4, "ngIf"], [4, "ngIf"], ["class", "text-muted", 4, "ngIf"], ["class", "mj-app-status", 4, "ngIf"], [1, "mj-card-icon-large", 3, "ngClass"], [1, "fas", "fa-cube", "mj-card-icon-large"], [1, "text-muted"], [1, "mj-app-status"], [1, "fas", "fa-star"], [1, "mj-empty-state"], [1, "fas", "fa-server", "mj-empty-icon"], ["kendoButton", "", "themeColor", "primary", "rounded", "medium", "size", "large", 3, "click"], [1, "button-content"]], template: function DataBrowserComponent_Template(rf, ctx) { if (rf & 1) {
225
- i0.ɵɵelementStart(0, "div", 0)(1, "nav", 1)(2, "span", 2);
226
- i0.ɵɵlistener("click", function DataBrowserComponent_Template_span_click_2_listener($event) { return ctx.GoHome($event); });
227
- i0.ɵɵelement(3, "i", 3);
228
- i0.ɵɵtext(4, " Home ");
229
- i0.ɵɵelementEnd();
230
- i0.ɵɵelement(5, "i", 4);
231
- i0.ɵɵelementStart(6, "span", 5);
232
- i0.ɵɵtext(7, "Applications");
233
- i0.ɵɵelementEnd()();
234
- i0.ɵɵelementStart(8, "div", 6)(9, "div", 7)(10, "h1");
235
- i0.ɵɵtext(11, "Applications");
236
- i0.ɵɵelementEnd()();
237
- i0.ɵɵelementStart(12, "div", 8)(13, "button", 9);
238
- i0.ɵɵlistener("click", function DataBrowserComponent_Template_button_click_13_listener() { return ctx.ShowAppSelectionDialog(); });
239
- i0.ɵɵelement(14, "i", 10);
240
- i0.ɵɵelementEnd()()();
241
- i0.ɵɵtemplate(15, DataBrowserComponent_div_15_Template, 2, 0, "div", 11)(16, DataBrowserComponent_div_16_Template, 2, 1, "div", 12)(17, DataBrowserComponent_div_17_Template, 10, 0, "div", 13);
242
- i0.ɵɵelementStart(18, "mj-record-selector-dialog", 14);
243
- i0.ɵɵlistener("DialogClosed", function DataBrowserComponent_Template_mj_record_selector_dialog_DialogClosed_18_listener($event) { return ctx.OnAppSelectionDialogClosed($event); });
244
- i0.ɵɵelementEnd()();
245
- } if (rf & 2) {
246
- i0.ɵɵadvance(13);
247
- i0.ɵɵproperty("title", "Configure Applications");
248
- i0.ɵɵadvance(2);
249
- i0.ɵɵproperty("ngIf", ctx.showLoader);
250
- i0.ɵɵadvance();
251
- i0.ɵɵproperty("ngIf", !ctx.showLoader && ctx.SelectedApplications.length > 0);
252
- i0.ɵɵadvance();
253
- i0.ɵɵproperty("ngIf", ctx.SelectedApplications.length === 0 && !ctx.showLoader);
254
- i0.ɵɵadvance();
255
- i0.ɵɵproperty("AvailableRecords", ctx.AllApplications)("SelectedRecords", ctx.SelectedApplications)("UnselectedRecords", ctx.UnselectedApplications)("DialogVisible", ctx.AppSelectionDialogVisible);
256
- } }, dependencies: [i3.NgClass, i3.NgForOf, i3.NgIf, i4.ButtonComponent, i5.CardComponent, i5.CardBodyComponent, i6.RecordSelectorDialogComponent, i7.LoadingComponent], styles: ["\n\n\n\n\n\n\n\n\n\n mj-record-selector-dialog {\n .mj-record-selector-content {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 20px;\n }\n \n \n\n @media (max-width: 768px) {\n .mj-record-selector-content {\n grid-template-columns: 1fr;\n }\n }\n}\n\n\n\n.mj-header[_ngcontent-%COMP%] .mj-header-title[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n &::before {\n content: '\\f5fd'; \n\n font-family: 'Font Awesome 6 Free', 'FontAwesome';\n font-weight: 900;\n font-size: 2.5rem;\n margin-right: 1rem;\n color: var(--mj-blue);\n }\n}\n\n\n\n.mj-app-status[_ngcontent-%COMP%] {\n margin-top: auto;\n padding-top: 16px;\n font-size: 0.875rem;\n color: var(--mj-blue);\n font-weight: 500;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n \n i {\n font-size: 0.75rem;\n }\n}\n\n\n\n.mj-kendo-icon-card[_ngcontent-%COMP%] .k-card-body[_ngcontent-%COMP%] {\n min-height: 280px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n\n\n@media (max-width: 1024px) {\n .mj-kendo-icon-card[_ngcontent-%COMP%] .k-card-body[_ngcontent-%COMP%] {\n min-height: 240px;\n }\n}\n\n@media (max-width: 768px) {\n .mj-kendo-icon-card[_ngcontent-%COMP%] .k-card-body[_ngcontent-%COMP%] {\n min-height: 200px;\n }\n \n .mj-header[_ngcontent-%COMP%] .mj-header-title[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]::before {\n font-size: 1.875rem;\n }\n}\n\n@media (max-width: 480px) {\n .mj-header[_ngcontent-%COMP%] .mj-header-title[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]::before {\n display: none; \n\n }\n}"] });
257
- };
258
- DataBrowserComponent = __decorate([
259
- RegisterClass(BaseNavigationComponent, 'Data')
260
- ], DataBrowserComponent);
261
- export { DataBrowserComponent };
262
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DataBrowserComponent, [{
263
- type: Component,
264
- args: [{ selector: 'app-data-browser', template: "<!-- Enhanced Data Browser Component -->\n<div class=\"mj-page-container\">\n <!-- Breadcrumb Navigation -->\n <nav class=\"mj-breadcrumb\">\n <span class=\"mj-breadcrumb-item\" (click)=\"GoHome($event)\">\n <i class=\"fas fa-home\"></i>\n Home\n </span>\n <i class=\"fas fa-chevron-right mj-breadcrumb-separator\"></i>\n <span class=\"mj-breadcrumb-current\">Applications</span>\n </nav>\n\n <!-- Header using global styles -->\n <div class=\"mj-header\">\n <div class=\"mj-header-title\">\n <h1>Applications</h1>\n </div>\n <div class=\"mj-header-actions\">\n <button kendoButton\n fillMode=\"flat\"\n rounded=\"full\"\n size=\"large\"\n themeColor=\"primary\"\n [title]=\"'Configure Applications'\"\n (click)=\"ShowAppSelectionDialog()\">\n <i class=\"fas fa-cog\"></i>\n </button>\n </div>\n </div>\n\n <!-- Loading State using global styles -->\n <div class=\"mj-loading mj-loading-overlay\" *ngIf=\"showLoader\">\n <mj-loading text=\"Loading applications...\" size=\"large\"></mj-loading>\n </div>\n\n <!-- Applications Grid using global grid and icon card styles -->\n <div class=\"mj-grid mj-grid-responsive\" *ngIf=\"!showLoader && SelectedApplications.length > 0\">\n <kendo-card \n class=\"mj-kendo-icon-card mj-kendo-icon-card-clickable\" \n *ngFor=\"let app of SelectedApplications\" \n (click)=\"appItemClick(app)\"\n [attr.tabindex]=\"0\"\n [attr.role]=\"'button'\"\n [attr.aria-label]=\"'Open ' + app.Name + ' application'\">\n <kendo-card-body>\n <i *ngIf=\"app.Icon && app.Icon.length > 0\" \n [ngClass]=\"app.Icon\" \n class=\"mj-card-icon-large\"\n [attr.aria-hidden]=\"true\"></i>\n <i *ngIf=\"!app.Icon || app.Icon.length === 0\" \n class=\"fas fa-cube mj-card-icon-large\"\n [attr.aria-hidden]=\"true\"></i>\n <h3>{{ app.Name }}</h3>\n <p *ngIf=\"app.Description\">{{ app.Description }}</p>\n <p *ngIf=\"!app.Description\" class=\"text-muted\">No description available</p>\n <div class=\"mj-app-status\" *ngIf=\"app.DefaultForNewUser\">\n <i class=\"fas fa-star\"></i>\n Default App\n </div>\n </kendo-card-body>\n </kendo-card>\n </div>\n\n <!-- Empty State using global styles -->\n <div class=\"mj-empty-state\" *ngIf=\"SelectedApplications.length === 0 && !showLoader\">\n <i class=\"fas fa-server mj-empty-icon\"></i>\n <h3>No Applications Selected</h3>\n <p>Choose which applications you'd like to access from your dashboard</p>\n <button kendoButton\n themeColor=\"primary\"\n rounded=\"medium\"\n size=\"large\"\n (click)=\"ShowAppSelectionDialog()\">\n <span class=\"button-content\">\n <i class=\"fas fa-cog\"></i>\n Configure Applications\n </span>\n </button>\n </div>\n\n <!-- Application Selection Dialog -->\n <mj-record-selector-dialog \n EntityName=\"Applications\"\n [AvailableRecords]=\"AllApplications\" \n [SelectedRecords]=\"SelectedApplications\" \n [UnselectedRecords]=\"UnselectedApplications\"\n [DialogVisible]=\"AppSelectionDialogVisible\"\n DisplayField=\"Name\"\n DisplayIconField=\"Icon\"\n DialogTitle=\"Select Applications\"\n (DialogClosed)=\"OnAppSelectionDialogClosed($event)\">\n </mj-record-selector-dialog>\n</div>\n", styles: ["/* Data Browser Component - Minimal Custom Styles */\n/* Leveraging global styles from the MJ design system */\n\n/* Only component-specific overrides that can't be handled by global styles */\n\n/* Record Selector Dialog - Two column layout */\n::ng-deep mj-record-selector-dialog {\n .mj-record-selector-content {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 20px;\n }\n \n /* Responsive - single column on mobile */\n @media (max-width: 768px) {\n .mj-record-selector-content {\n grid-template-columns: 1fr;\n }\n }\n}\n\n/* Header title with icon - specific to this page */\n.mj-header .mj-header-title h1 {\n &::before {\n content: '\\f5fd'; /* Font Awesome server icon */\n font-family: 'Font Awesome 6 Free', 'FontAwesome';\n font-weight: 900;\n font-size: 2.5rem;\n margin-right: 1rem;\n color: var(--mj-blue);\n }\n}\n\n/* App status indicator - component specific */\n.mj-app-status {\n margin-top: auto;\n padding-top: 16px;\n font-size: 0.875rem;\n color: var(--mj-blue);\n font-weight: 500;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n \n i {\n font-size: 0.75rem;\n }\n}\n\n/* Ensure consistent card body height in grid */\n.mj-kendo-icon-card .k-card-body {\n min-height: 280px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n/* Responsive adjustments for card height */\n@media (max-width: 1024px) {\n .mj-kendo-icon-card .k-card-body {\n min-height: 240px;\n }\n}\n\n@media (max-width: 768px) {\n .mj-kendo-icon-card .k-card-body {\n min-height: 200px;\n }\n \n .mj-header .mj-header-title h1::before {\n font-size: 1.875rem;\n }\n}\n\n@media (max-width: 480px) {\n .mj-header .mj-header-title h1::before {\n display: none; /* Hide icon on very small screens */\n }\n}\n"] }]
265
- }], () => [{ type: i1.SharedService }, { type: i2.Router }], null); })();
266
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DataBrowserComponent, { className: "DataBrowserComponent" }); })();
267
- //# sourceMappingURL=data-browser.component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-browser.component.js","sourceRoot":"","sources":["../../../src/lib/data-browser-component/data-browser.component.ts","../../../src/lib/data-browser-component/data-browser.component.html"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAmB,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAiB,MAAM,2BAA2B,CAAC;;;;;;;;;;IC0B/E,+BAA8D;IAC1D,iCAAqE;IACzE,iBAAM;;;IAYM,wBAGiC;;;IAF9B,qCAAoB;;;;IAGvB,wBAEiC;;;;;IAEjC,yBAA2B;IAAA,YAAqB;IAAA,iBAAI;;;IAAzB,cAAqB;IAArB,wCAAqB;;;IAChD,6BAA+C;IAAA,wCAAwB;IAAA,iBAAI;;;IAC3E,+BAAyD;IACrD,wBAA2B;IAC3B,6BACJ;IAAA,iBAAM;;;;IArBd,sCAM4D;IAHxD,4NAAS,2BAAiB,KAAC;IAI3B,uCAAiB;IAKb,AAJA,sFAG6B,yEAGA;IAC7B,0BAAI;IAAA,YAAc;IAAA,iBAAK;IAGvB,AADA,AADA,sFAA2B,yEACoB,6EACU;IAKjE,AADI,iBAAkB,EACT;;;;IAfD,eAAqC;IAArC,4DAAqC;IAIrC,cAAwC;IAAxC,+DAAwC;IAGxC,eAAc;IAAd,iCAAc;IACd,cAAqB;IAArB,yCAAqB;IACrB,cAAsB;IAAtB,0CAAsB;IACE,cAA2B;IAA3B,+CAA2B;;;IAnBnE,+BAA+F;IAC3F,2FAM4D;IAkBhE,iBAAM;;;IAtBkB,cAAuB;IAAvB,qDAAuB;;;;IAyB/C,+BAAqF;IACjF,wBAA2C;IAC3C,0BAAI;IAAA,wCAAwB;IAAA,iBAAK;IACjC,yBAAG;IAAA,kFAAkE;IAAA,iBAAI;IACzE,kCAIuC;IAAnC,iLAAS,+BAAwB,KAAC;IAClC,gCAA6B;IACzB,wBAA0B;IAC1B,wCACJ;IAER,AADI,AADI,iBAAO,EACF,EACP;;ADjEH,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,uBAAuB;IAO5C;IAAsC;IANlD,UAAU,GAAY,IAAI,CAAC;IAE3B,eAAe,GAAwB,EAAE,CAAC;IAC1C,oBAAoB,GAAwB,EAAE,CAAC;IAC/C,sBAAsB,GAAwB,EAAE,CAAC;IAExD,YAAmB,aAA4B,EAAU,MAAc;QACrE,KAAK,EAAE,CAAC;QADS,kBAAa,GAAb,aAAa,CAAe;QAAU,WAAM,GAAN,MAAM,CAAQ;IAEvE,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAoB;YAClD,UAAU,EAAE,cAAc;YAC1B,UAAU,EAAE,eAAe;YAC3B,OAAO,EAAE,MAAM;SAChB,CAAC,CAAA;QACF,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;QACzC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAwB;YACvD,UAAU,EAAE,mBAAmB;YAC/B,UAAU,EAAE,eAAe;YAC3B,WAAW,EAAE,aAAa,IAAI,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG;YAC1D,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAA;QACF,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA,CAAA,0BAA0B;YAC1J,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,CAAC,oBAAoB,GAAwB,IAAI,CAAC,CAAC,uDAAuD;YAEhH,2CAA2C;YAC3C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACxH,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IACM,YAAY,CAAC,IAAuB;QACzC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAEM,yBAAyB,GAAY,KAAK,CAAC;IAClD,KAAK,CAAC,sBAAsB;QAC1B,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAY;QACvB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,iCAAiC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,IAAa;QAC5C,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QACvC,0DAA0D;QAC1D,IAAI,IAAI,EAAE,CAAC;YACT,mJAAmJ;YACnJ,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAwB;gBACvD,UAAU,EAAE,mBAAmB;gBAC/B,WAAW,EAAE,WAAW,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG;gBAC5C,UAAU,EAAE,eAAe;gBAC3B,OAAO,EAAE,uBAAuB;aACjC,CAAC,CAAC;YACH,wGAAwG;YACxG,6HAA6H;YAC7H,gIAAgI;YAChI,2CAA2C;YAC3C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC1C,MAAM,cAAc,GAA4B,EAAE,CAAC;YACnD,4EAA4E;YAC5E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBACtE,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBAC7C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1E,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACzB,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC;oBAC1B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,+CAA+C;oBAC/C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,eAAe,CAAwB,mBAAmB,CAAC,CAAC;oBACpF,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;oBAClC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACxB,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YACD,kFAAkF;YAClF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC7D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACzC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC5E,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC;oBAC1B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YACD,iHAAiH;YACjH,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,sBAAsB,EAAE,CAAC;YAC7C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3D,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;gBACjC,EAAE,CAAC,gBAAgB,GAAG,EAAE,CAAC;gBACzB,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;gBACvB,mHAAmH;gBACnH,wDAAwD;gBACxD,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,iHAAiH,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAChL,CAAC;QACH,CAAC;IACH,CAAC;8EArHU,oBAAoB;6DAApB,oBAAoB;YCTzB,AADJ,AAFJ,8BAA+B,aAEA,cACmC;YAAzB,qGAAS,kBAAc,IAAC;YACrD,uBAA2B;YAC3B,sBACJ;YAAA,iBAAO;YACP,uBAA4D;YAC5D,+BAAoC;YAAA,4BAAY;YACpD,AADoD,iBAAO,EACrD;YAKE,AADJ,AADJ,8BAAuB,aACU,UACrB;YAAA,6BAAY;YACpB,AADoB,iBAAK,EACnB;YAEF,AADJ,+BAA+B,iBAOY;YAAnC,kGAAS,4BAAwB,IAAC;YAClC,yBAA0B;YAGtC,AADI,AADI,iBAAS,EACP,EACJ;YAoCN,AA5BA,AALA,wEAA8D,2DAKiC,4DA4BV;YAiBrF,sDASwD;YAApD,yIAAgB,sCAAkC,IAAC;YAE3D,AADI,iBAA4B,EAC1B;;YArEU,gBAAkC;YAAlC,gDAAkC;YAQF,eAAgB;YAAhB,qCAAgB;YAKnB,cAAoD;YAApD,6EAAoD;YA4BhE,cAAsD;YAAtD,+EAAsD;YAmB/E,cAAoC;YAGpC,AADA,AADA,AADA,sDAAoC,6CACI,iDACI,gDACD;;;ADzEtC,oBAAoB;IADhC,aAAa,CAAC,uBAAuB,EAAE,MAAM,CAAC;GAClC,oBAAoB,CAsHhC;;iFAtHY,oBAAoB;cANhC,SAAS;2BACE,kBAAkB;;kFAKjB,oBAAoB"}
@@ -1,21 +0,0 @@
1
- import { Router } from "@angular/router";
2
- import { SharedService } from "@memberjunction/ng-shared";
3
- import { TreeItem } from '../../generic/Item.types';
4
- import * as i0 from "@angular/core";
5
- export declare class ExpansionPanelComponent {
6
- sharedService: SharedService;
7
- private router;
8
- items: TreeItem[];
9
- constructor(sharedService: SharedService, router: Router);
10
- ngOnInit(): void;
11
- onTreeNodeSelect(event: any): Promise<void>;
12
- onTreeNodeExpand(event: any): Promise<void>;
13
- private getFoldersForTreeNode;
14
- private getUserViewsForTreeNode;
15
- private RunView;
16
- private sortItems;
17
- private getTreeItem;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<ExpansionPanelComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<ExpansionPanelComponent, "expansion-panel-component", never, { "items": { "alias": "items"; "required": false; }; }, {}, never, never, false, never>;
20
- }
21
- //# sourceMappingURL=expansion-panel-component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expansion-panel-component.d.ts","sourceRoot":"","sources":["../../../src/lib/expansion-panel-component/expansion-panel-component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAsC,QAAQ,EAAE,MAAM,0BAA0B,CAAC;;AAGxF,qBAKa,uBAAuB;IAIb,aAAa,EAAE,aAAa;IAAE,OAAO,CAAC,MAAM;IAF/C,KAAK,EAAE,QAAQ,EAAE,CAAM;gBAEpB,aAAa,EAAE,aAAa,EAAU,MAAM,EAAE,MAAM;IAEvE,QAAQ,IAAI,IAAI;IAGH,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC3C,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YAoC1C,qBAAqB;YAiBrB,uBAAuB;YAavB,OAAO;IAgBrB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,WAAW;yCAvIV,uBAAuB;2CAAvB,uBAAuB;CAqJnC"}
@@ -1,158 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { Metadata, RunView } from "@memberjunction/core";
3
- import { ItemType, TreeFolder, TreeItem } from '../../generic/Item.types';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@memberjunction/ng-shared";
6
- import * as i2 from "@angular/router";
7
- import * as i3 from "@progress/kendo-angular-treeview";
8
- export class ExpansionPanelComponent {
9
- sharedService;
10
- router;
11
- items = [];
12
- constructor(sharedService, router) {
13
- this.sharedService = sharedService;
14
- this.router = router;
15
- }
16
- ngOnInit() {
17
- }
18
- async onTreeNodeSelect(event) {
19
- let selectedItem = this.getTreeItem(event.index);
20
- if (!selectedItem) {
21
- return;
22
- }
23
- if (selectedItem.Type === ItemType.Application) {
24
- let application = selectedItem.Data;
25
- this.router.navigate(["app", application.Name]);
26
- }
27
- else if (selectedItem.Type === ItemType.Entity) {
28
- //we need to get the root item to get the applicationName
29
- const keys = event.index.split("_");
30
- let rootItem = this.items[parseInt(keys[0])];
31
- let application = rootItem.Data;
32
- let entity = selectedItem.Data;
33
- this.router.navigate(["app", application.Name, entity.Entity]);
34
- }
35
- else if (selectedItem.Type === ItemType.UserView) {
36
- let userView = selectedItem.Data;
37
- this.router.navigate(["resource", "view", userView.ID]);
38
- }
39
- else if (selectedItem.Type === ItemType.Folder) {
40
- //we need to get the root item to get the applicationName
41
- const keys = event.index.split("_");
42
- let rootItem = this.items[parseInt(keys[0])];
43
- let application = rootItem.Data;
44
- let folder = selectedItem.Data;
45
- this.router.navigate(["app", application.Name, folder.ID]);
46
- }
47
- }
48
- async onTreeNodeExpand(event) {
49
- let selectedItem = this.getTreeItem(event.index);
50
- if (!selectedItem) {
51
- return;
52
- }
53
- if (selectedItem.Type === ItemType.Application) {
54
- return;
55
- }
56
- if (selectedItem.Type === ItemType.Entity) {
57
- selectedItem.ChildItems = [];
58
- let data = selectedItem.Data;
59
- let treeNodeFolders = await this.getFoldersForTreeNode(data.EntityID, null);
60
- let treeNodeUserViews = await this.getUserViewsForTreeNode(data.EntityID, null);
61
- selectedItem.ChildItems.push(...treeNodeFolders);
62
- selectedItem.ChildItems.push(...treeNodeUserViews);
63
- }
64
- else if (selectedItem.Type === ItemType.Folder) {
65
- selectedItem.ChildItems = [];
66
- let data = selectedItem.Data;
67
- let parentFolderID = data.ParentFolderID ? data.ParentFolderID.toString() : null;
68
- let treeNodeFolders = await this.getFoldersForTreeNode(data.EntityID, parentFolderID);
69
- let treeNodeUserViews = await this.getUserViewsForTreeNode(data.EntityID, data.ID.toString());
70
- selectedItem.ChildItems.push(...treeNodeFolders);
71
- selectedItem.ChildItems.push(...treeNodeUserViews);
72
- }
73
- this.sortItems(selectedItem.ChildItems);
74
- //this is to simply refresh the treeview and show the new items
75
- this.items = [...this.items];
76
- }
77
- async getFoldersForTreeNode(entityID, selectedFolderID) {
78
- const md = new Metadata();
79
- const categoryIDFilter = selectedFolderID ? `ParentID='${selectedFolderID}'` : 'ParentID IS NULL';
80
- const userViewFilter = `EntityID = '${entityID}' AND ` + categoryIDFilter;
81
- const viewResults = await this.RunView('User View Categories', userViewFilter);
82
- return viewResults.map((result) => {
83
- let treeFolder = new TreeFolder(result.EntityID, result.ID, result.Name);
84
- treeFolder.ParentFolderID = result.ID;
85
- let child = new TreeItem(treeFolder, ItemType.Folder);
86
- //we need a dummy child node so that the expand arrow appears
87
- child.ChildItems.push(new TreeItem({ Name: 'Stub Node' }, ItemType.StubData));
88
- return child;
89
- });
90
- }
91
- async getUserViewsForTreeNode(entityID, selectedFolderID) {
92
- const md = new Metadata();
93
- const categoryIDFilter = selectedFolderID ? `CategoryID='${selectedFolderID}'` : 'CategoryID IS NULL';
94
- const userViewFilter = `UserID = '${md.CurrentUser.ID}' AND EntityID = '${entityID}' AND ` + categoryIDFilter;
95
- const viewResults = await this.RunView('User Views', userViewFilter);
96
- return viewResults.map((result) => {
97
- let treeItem = new TreeItem(result, ItemType.UserView);
98
- return treeItem;
99
- });
100
- }
101
- async RunView(entityName, extraFilter) {
102
- const rv = new RunView();
103
- const result = await rv.RunView({
104
- EntityName: entityName,
105
- ExtraFilter: extraFilter
106
- });
107
- if (result && result.Success) {
108
- return result.Results;
109
- }
110
- else {
111
- return [];
112
- }
113
- }
114
- //maybe pass in a sort function for custom sorting?
115
- sortItems(items) {
116
- items.sort(function (a, b) {
117
- if (a.Name < b.Name) {
118
- return -1;
119
- }
120
- if (a.Name > b.Name) {
121
- return 1;
122
- }
123
- return 0;
124
- });
125
- }
126
- //not very robust and can easily break but
127
- //this works for the common path
128
- getTreeItem(index) {
129
- const keys = index.split("_");
130
- let selectedItem = null;
131
- for (const key of keys) {
132
- if (!selectedItem) {
133
- selectedItem = this.items[parseInt(key)];
134
- }
135
- else {
136
- selectedItem = selectedItem.ChildItems[parseInt(key)];
137
- }
138
- }
139
- return selectedItem;
140
- }
141
- static ɵfac = function ExpansionPanelComponent_Factory(t) { return new (t || ExpansionPanelComponent)(i0.ɵɵdirectiveInject(i1.SharedService), i0.ɵɵdirectiveInject(i2.Router)); };
142
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ExpansionPanelComponent, selectors: [["expansion-panel-component"]], inputs: { items: "items" }, decls: 2, vars: 1, consts: [[1, "panelbar-wrapper"], ["textField", "Name", "kendoTreeViewExpandable", "", "kendoTreeViewHierarchyBinding", "", "childrenField", "ChildItems", 3, "expand", "selectionChange", "nodes"]], template: function ExpansionPanelComponent_Template(rf, ctx) { if (rf & 1) {
143
- i0.ɵɵelementStart(0, "div", 0)(1, "kendo-treeview", 1);
144
- i0.ɵɵlistener("expand", function ExpansionPanelComponent_Template_kendo_treeview_expand_1_listener($event) { return ctx.onTreeNodeExpand($event); })("selectionChange", function ExpansionPanelComponent_Template_kendo_treeview_selectionChange_1_listener($event) { return ctx.onTreeNodeSelect($event); });
145
- i0.ɵɵelementEnd()();
146
- } if (rf & 2) {
147
- i0.ɵɵadvance();
148
- i0.ɵɵproperty("nodes", ctx.items);
149
- } }, dependencies: [i3.TreeViewComponent, i3.ExpandDirective, i3.HierarchyBindingDirective], styles: [".wrapper[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n \nkendo-expansionpanel[_ngcontent-%COMP%] {\n width: 300px;\n}\n \n.content[_ngcontent-%COMP%] {\n display: flex;\n}\n\n.panelbar-wrapper[_ngcontent-%COMP%] {\n width: 274px;\n margin: 0 auto;\n height: calc(100vh - 80px);\n overflow-y: auto;\n padding: 16px 0;\n box-sizing: border-box;\n}\n .panelbar-wrapper .k-treeview-group .k-treeview-item {\n padding: 5px 14px !important;\n}\n .panelbar-wrapper .k-treeview-group .k-treeview-item div .k-treeview-toggle {\n margin: 0;\n}\n .panelbar-wrapper .k-treeview-group .k-treeview-item div {\n color: var(--white-color);\n}\n\n .panelbar-wrapper .k-treeview-group .k-treeview-item:hover {\n background: rgba(255, 255, 255, 0.15);\n}\n\n .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf {\n white-space: pre-line;\n box-shadow: none;\n}\n .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf:hover, \n .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf:focus {\n box-shadow: none;\n background: transparent;\n color: var(--white-color);\n}"] });
150
- }
151
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ExpansionPanelComponent, [{
152
- type: Component,
153
- args: [{ selector: 'expansion-panel-component', template: "<div class=\"panelbar-wrapper\">\n <kendo-treeview\n [nodes]=\"items\"\n textField=\"Name\"\n kendoTreeViewExpandable\n kendoTreeViewHierarchyBinding\n childrenField=\"ChildItems\"\n (expand)=\"onTreeNodeExpand($event)\"\n (selectionChange)=\"onTreeNodeSelect($event)\"\n >\n </kendo-treeview>\n</div>", styles: [".wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n \nkendo-expansionpanel {\n width: 300px;\n}\n \n.content {\n display: flex;\n}\n\n.panelbar-wrapper {\n width: 274px;\n margin: 0 auto;\n height: calc(100vh - 80px);\n overflow-y: auto;\n padding: 16px 0;\n box-sizing: border-box;\n}\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item {\n padding: 5px 14px !important;\n}\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item div .k-treeview-toggle {\n margin: 0;\n}\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item div {\n color: var(--white-color);\n}\n\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item:hover {\n background: rgba(255, 255, 255, 0.15);\n}\n\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf {\n white-space: pre-line;\n box-shadow: none;\n}\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf:hover,\n::ng-deep .panelbar-wrapper .k-treeview-group .k-treeview-item div > .k-treeview-leaf:focus {\n box-shadow: none;\n background: transparent;\n color: var(--white-color);\n}\n"] }]
154
- }], () => [{ type: i1.SharedService }, { type: i2.Router }], { items: [{
155
- type: Input
156
- }] }); })();
157
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ExpansionPanelComponent, { className: "ExpansionPanelComponent" }); })();
158
- //# sourceMappingURL=expansion-panel-component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expansion-panel-component.js","sourceRoot":"","sources":["../../../src/lib/expansion-panel-component/expansion-panel-component.ts","../../../src/lib/expansion-panel-component/expansion-panel-component.html"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { Router } from '@angular/router';
2
- import { UserFavoriteEntity } from '@memberjunction/core-entities';
3
- import * as i0 from "@angular/core";
4
- export declare class FavoritesComponent {
5
- private router;
6
- favorites: UserFavoriteEntity[];
7
- ExtraFilter: string;
8
- constructor(router: Router);
9
- ngOnInit(): Promise<void>;
10
- favoriteItemClick(fav: UserFavoriteEntity): void;
11
- favoriteItemDisplayName(fav: any): any;
12
- static ɵfac: i0.ɵɵFactoryDeclaration<FavoritesComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<FavoritesComponent, "app-favorites", never, {}, {}, never, never, false, never>;
14
- }
15
- //# sourceMappingURL=favorites.component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"favorites.component.d.ts","sourceRoot":"","sources":["../../../src/lib/favorites/favorites.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;;AAGnE,qBAKa,kBAAkB;IAIjB,OAAO,CAAC,MAAM;IAHnB,SAAS,EAAE,kBAAkB,EAAE,CAAM;IACrC,WAAW,EAAE,MAAM,CAAM;gBAEZ,MAAM,EAAE,MAAM;IAE5B,QAAQ;IAsCd,iBAAiB,CAAC,GAAG,EAAE,kBAAkB;IAiCzC,uBAAuB,CAAC,GAAG,EAAE,GAAG;yCA7ErB,kBAAkB;2CAAlB,kBAAkB;CAuF9B"}