@memberjunction/ng-dashboards 2.87.0 → 2.88.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ComponentStudio/component-studio-dashboard.component.d.ts +1 -0
- package/dist/ComponentStudio/component-studio-dashboard.component.d.ts.map +1 -1
- package/dist/ComponentStudio/component-studio-dashboard.component.js +159 -118
- package/dist/ComponentStudio/component-studio-dashboard.component.js.map +1 -1
- package/package.json +10 -10
|
@@ -30,6 +30,7 @@ export declare class ComponentStudioDashboardComponent extends BaseDashboard imp
|
|
|
30
30
|
private filterComponents;
|
|
31
31
|
toggleComponentExpansion(component: ComponentEntity): void;
|
|
32
32
|
runComponent(component: ComponentEntity): void;
|
|
33
|
+
private startComponent;
|
|
33
34
|
stopComponent(): void;
|
|
34
35
|
/**
|
|
35
36
|
* Handle component events from React components
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-studio-dashboard.component.d.ts","sourceRoot":"","sources":["../../src/ComponentStudio/component-studio-dashboard.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,SAAS,EAAyB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC9G,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAW,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;;AAG/D,qBAMa,iCAAkC,SAAQ,aAAc,YAAW,aAAa,EAAE,SAAS;IAiB1F,OAAO,CAAC,GAAG;IAdhB,UAAU,EAAE,eAAe,EAAE,CAAM;IACnC,kBAAkB,EAAE,eAAe,EAAE,CAAM;IAC3C,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAQ;IACjD,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAQ;IACjD,aAAa,EAAE,aAAa,GAAG,IAAI,CAAQ;IAC3C,SAAS,UAAS;IAClB,WAAW,SAAM;IACjB,SAAS,UAAS;IAGlB,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,IAAI,CAAQ;IAE7F,OAAO,CAAC,QAAQ,CAAuB;gBAEnB,GAAG,EAAE,iBAAiB;IAI1C,eAAe,IAAI,IAAI;IAKvB,WAAW,IAAI,IAAI;IAKnB,SAAS,CAAC,aAAa,IAAI,IAAI;cAIf,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BlC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1C,OAAO,CAAC,gBAAgB;
|
|
1
|
+
{"version":3,"file":"component-studio-dashboard.component.d.ts","sourceRoot":"","sources":["../../src/ComponentStudio/component-studio-dashboard.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,SAAS,EAAyB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC9G,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAW,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;;AAG/D,qBAMa,iCAAkC,SAAQ,aAAc,YAAW,aAAa,EAAE,SAAS;IAiB1F,OAAO,CAAC,GAAG;IAdhB,UAAU,EAAE,eAAe,EAAE,CAAM;IACnC,kBAAkB,EAAE,eAAe,EAAE,CAAM;IAC3C,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAQ;IACjD,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAQ;IACjD,aAAa,EAAE,aAAa,GAAG,IAAI,CAAQ;IAC3C,SAAS,UAAS;IAClB,WAAW,SAAM;IACjB,SAAS,UAAS;IAGlB,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,IAAI,CAAQ;IAE7F,OAAO,CAAC,QAAQ,CAAuB;gBAEnB,GAAG,EAAE,iBAAiB;IAI1C,eAAe,IAAI,IAAI;IAKvB,WAAW,IAAI,IAAI;IAKnB,SAAS,CAAC,aAAa,IAAI,IAAI;cAIf,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BlC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1C,OAAO,CAAC,gBAAgB;IAcjB,wBAAwB,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IAU1D,YAAY,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IAWrD,OAAO,CAAC,cAAc;IAaf,aAAa,IAAI,IAAI;IAa5B;;OAEG;IACI,gBAAgB,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;IAWzD;;OAEG;IACI,kBAAkB,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAKjF;;OAEG;IACI,cAAc,IAAI,IAAI;IAY7B;;OAEG;IACU,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBlD;;OAEG;IACI,sBAAsB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM;IAOtC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;IAejD,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;yCAxN9C,iCAAiC;2CAAjC,iCAAiC;CAsO7C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,SAE3C"}
|
|
@@ -17,38 +17,42 @@ import * as i3 from "@progress/kendo-angular-layout";
|
|
|
17
17
|
import * as i4 from "@progress/kendo-angular-buttons";
|
|
18
18
|
import * as i5 from "@memberjunction/ng-react";
|
|
19
19
|
const _forTrack0 = ($index, $item) => $item.ID;
|
|
20
|
-
function
|
|
21
|
-
i0.ɵɵelement(0, "i",
|
|
20
|
+
function ComponentStudioDashboardComponent_ng_template_20_Template(rf, ctx) { if (rf & 1) {
|
|
21
|
+
i0.ɵɵelement(0, "i", 20);
|
|
22
22
|
} }
|
|
23
|
-
function
|
|
24
|
-
i0.ɵɵelementStart(0, "div",
|
|
25
|
-
i0.ɵɵelement(1, "i",
|
|
23
|
+
function ComponentStudioDashboardComponent_Conditional_22_Template(rf, ctx) { if (rf & 1) {
|
|
24
|
+
i0.ɵɵelementStart(0, "div", 15);
|
|
25
|
+
i0.ɵɵelement(1, "i", 21);
|
|
26
26
|
i0.ɵɵtext(2, " Loading components... ");
|
|
27
27
|
i0.ɵɵelementEnd();
|
|
28
28
|
} }
|
|
29
|
-
function
|
|
30
|
-
i0.ɵɵelementStart(0, "div",
|
|
31
|
-
i0.ɵɵ
|
|
32
|
-
i0.ɵɵ
|
|
29
|
+
function ComponentStudioDashboardComponent_Conditional_23_Template(rf, ctx) { if (rf & 1) {
|
|
30
|
+
i0.ɵɵelementStart(0, "div", 16);
|
|
31
|
+
i0.ɵɵelement(1, "i", 22);
|
|
32
|
+
i0.ɵɵtext(2, " No components found without custom properties. ");
|
|
33
|
+
i0.ɵɵelement(3, "br");
|
|
34
|
+
i0.ɵɵelementStart(4, "small");
|
|
35
|
+
i0.ɵɵtext(5, "Only components that don't require custom props can be tested here.");
|
|
36
|
+
i0.ɵɵelementEnd()();
|
|
33
37
|
} }
|
|
34
|
-
function
|
|
35
|
-
i0.ɵɵelementStart(0, "span",
|
|
38
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
39
|
+
i0.ɵɵelementStart(0, "span", 33);
|
|
36
40
|
i0.ɵɵtext(1, "Published");
|
|
37
41
|
i0.ɵɵelementEnd();
|
|
38
42
|
} }
|
|
39
|
-
function
|
|
40
|
-
i0.ɵɵelementStart(0, "span",
|
|
43
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
44
|
+
i0.ɵɵelementStart(0, "span", 34);
|
|
41
45
|
i0.ɵɵtext(1, "Draft");
|
|
42
46
|
i0.ɵɵelementEnd();
|
|
43
47
|
} }
|
|
44
|
-
function
|
|
45
|
-
i0.ɵɵelement(0, "i",
|
|
48
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
49
|
+
i0.ɵɵelement(0, "i", 36);
|
|
46
50
|
} }
|
|
47
|
-
function
|
|
48
|
-
i0.ɵɵelement(0, "i",
|
|
51
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
52
|
+
i0.ɵɵelement(0, "i", 37);
|
|
49
53
|
} }
|
|
50
|
-
function
|
|
51
|
-
i0.ɵɵelementStart(0, "div",
|
|
54
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
55
|
+
i0.ɵɵelementStart(0, "div", 39)(1, "label");
|
|
52
56
|
i0.ɵɵtext(2, "Description");
|
|
53
57
|
i0.ɵɵelementEnd();
|
|
54
58
|
i0.ɵɵelementStart(3, "p");
|
|
@@ -59,11 +63,11 @@ function ComponentStudioDashboardComponent_Conditional_20_For_1_Conditional_17_C
|
|
|
59
63
|
i0.ɵɵadvance(4);
|
|
60
64
|
i0.ɵɵtextInterpolate(component_r2.Description);
|
|
61
65
|
} }
|
|
62
|
-
function
|
|
63
|
-
i0.ɵɵelementStart(0, "div",
|
|
66
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_21_Template(rf, ctx) { if (rf & 1) {
|
|
67
|
+
i0.ɵɵelementStart(0, "div", 41)(1, "span", 42);
|
|
64
68
|
i0.ɵɵtext(2, "Updated:");
|
|
65
69
|
i0.ɵɵelementEnd();
|
|
66
|
-
i0.ɵɵelementStart(3, "span",
|
|
70
|
+
i0.ɵɵelementStart(3, "span", 43);
|
|
67
71
|
i0.ɵɵtext(4);
|
|
68
72
|
i0.ɵɵpipe(5, "date");
|
|
69
73
|
i0.ɵɵelementEnd()();
|
|
@@ -72,52 +76,64 @@ function ComponentStudioDashboardComponent_Conditional_20_For_1_Conditional_17_C
|
|
|
72
76
|
i0.ɵɵadvance(4);
|
|
73
77
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(5, 1, component_r2.__mj_UpdatedAt, "short"));
|
|
74
78
|
} }
|
|
75
|
-
function
|
|
79
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_23_Template(rf, ctx) { if (rf & 1) {
|
|
76
80
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
77
|
-
i0.ɵɵelementStart(0, "button",
|
|
78
|
-
i0.ɵɵlistener("click", function
|
|
79
|
-
i0.ɵɵ
|
|
81
|
+
i0.ɵɵelementStart(0, "button", 47);
|
|
82
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_23_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(4); ctx_r2.stopComponent(); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
83
|
+
i0.ɵɵelement(1, "span", 48);
|
|
84
|
+
i0.ɵɵtext(2, " Stop Component ");
|
|
80
85
|
i0.ɵɵelementEnd();
|
|
81
86
|
} if (rf & 2) {
|
|
82
|
-
i0.ɵɵproperty("
|
|
87
|
+
i0.ɵɵproperty("themeColor", "error");
|
|
83
88
|
} }
|
|
84
|
-
function
|
|
89
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
85
90
|
const _r5 = i0.ɵɵgetCurrentView();
|
|
86
|
-
i0.ɵɵelementStart(0, "button",
|
|
87
|
-
i0.ɵɵlistener("click", function
|
|
88
|
-
i0.ɵɵ
|
|
91
|
+
i0.ɵɵelementStart(0, "button", 49);
|
|
92
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_24_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r5); const component_r2 = i0.ɵɵnextContext(2).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); ctx_r2.runComponent(component_r2); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
93
|
+
i0.ɵɵelement(1, "span", 50);
|
|
94
|
+
i0.ɵɵtext(2, " Switch to This Component ");
|
|
95
|
+
i0.ɵɵelementEnd();
|
|
96
|
+
} if (rf & 2) {
|
|
97
|
+
i0.ɵɵproperty("themeColor", "base");
|
|
98
|
+
} }
|
|
99
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_25_Template(rf, ctx) { if (rf & 1) {
|
|
100
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
101
|
+
i0.ɵɵelementStart(0, "button", 47);
|
|
102
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_25_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r6); const component_r2 = i0.ɵɵnextContext(2).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); ctx_r2.runComponent(component_r2); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
103
|
+
i0.ɵɵelement(1, "span", 50);
|
|
104
|
+
i0.ɵɵtext(2, " Run Component ");
|
|
89
105
|
i0.ɵɵelementEnd();
|
|
90
106
|
} if (rf & 2) {
|
|
91
|
-
i0.ɵɵproperty("
|
|
107
|
+
i0.ɵɵproperty("themeColor", "primary");
|
|
92
108
|
} }
|
|
93
|
-
function
|
|
94
|
-
i0.ɵɵelementStart(0, "div",
|
|
95
|
-
i0.ɵɵtemplate(1,
|
|
96
|
-
i0.ɵɵelementStart(2, "div",
|
|
109
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
110
|
+
i0.ɵɵelementStart(0, "div", 38);
|
|
111
|
+
i0.ɵɵtemplate(1, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_1_Template, 5, 1, "div", 39);
|
|
112
|
+
i0.ɵɵelementStart(2, "div", 39)(3, "label");
|
|
97
113
|
i0.ɵɵtext(4, "Component Info");
|
|
98
114
|
i0.ɵɵelementEnd();
|
|
99
|
-
i0.ɵɵelementStart(5, "div",
|
|
115
|
+
i0.ɵɵelementStart(5, "div", 40)(6, "div", 41)(7, "span", 42);
|
|
100
116
|
i0.ɵɵtext(8, "Type:");
|
|
101
117
|
i0.ɵɵelementEnd();
|
|
102
|
-
i0.ɵɵelementStart(9, "span",
|
|
118
|
+
i0.ɵɵelementStart(9, "span", 43);
|
|
103
119
|
i0.ɵɵtext(10);
|
|
104
120
|
i0.ɵɵelementEnd()();
|
|
105
|
-
i0.ɵɵelementStart(11, "div",
|
|
121
|
+
i0.ɵɵelementStart(11, "div", 41)(12, "span", 42);
|
|
106
122
|
i0.ɵɵtext(13, "Version:");
|
|
107
123
|
i0.ɵɵelementEnd();
|
|
108
|
-
i0.ɵɵelementStart(14, "span",
|
|
124
|
+
i0.ɵɵelementStart(14, "span", 43);
|
|
109
125
|
i0.ɵɵtext(15);
|
|
110
126
|
i0.ɵɵelementEnd()();
|
|
111
|
-
i0.ɵɵelementStart(16, "div",
|
|
127
|
+
i0.ɵɵelementStart(16, "div", 41)(17, "span", 42);
|
|
112
128
|
i0.ɵɵtext(18, "Status:");
|
|
113
129
|
i0.ɵɵelementEnd();
|
|
114
|
-
i0.ɵɵelementStart(19, "span",
|
|
130
|
+
i0.ɵɵelementStart(19, "span", 43);
|
|
115
131
|
i0.ɵɵtext(20);
|
|
116
132
|
i0.ɵɵelementEnd()();
|
|
117
|
-
i0.ɵɵtemplate(21,
|
|
133
|
+
i0.ɵɵtemplate(21, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_21_Template, 6, 4, "div", 41);
|
|
118
134
|
i0.ɵɵelementEnd()();
|
|
119
|
-
i0.ɵɵelementStart(22, "div",
|
|
120
|
-
i0.ɵɵtemplate(23,
|
|
135
|
+
i0.ɵɵelementStart(22, "div", 44);
|
|
136
|
+
i0.ɵɵtemplate(23, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_23_Template, 3, 1, "button", 45)(24, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_24_Template, 3, 1, "button", 46)(25, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Conditional_25_Template, 3, 1, "button", 45);
|
|
121
137
|
i0.ɵɵelementEnd()();
|
|
122
138
|
} if (rf & 2) {
|
|
123
139
|
const component_r2 = i0.ɵɵnextContext().$implicit;
|
|
@@ -133,30 +149,30 @@ function ComponentStudioDashboardComponent_Conditional_20_For_1_Conditional_17_T
|
|
|
133
149
|
i0.ɵɵadvance();
|
|
134
150
|
i0.ɵɵconditional(component_r2.__mj_UpdatedAt ? 21 : -1);
|
|
135
151
|
i0.ɵɵadvance(2);
|
|
136
|
-
i0.ɵɵconditional((ctx_r2.selectedComponent == null ? null : ctx_r2.selectedComponent.ID) === component_r2.ID && ctx_r2.isRunning ? 23 : 24);
|
|
152
|
+
i0.ɵɵconditional((ctx_r2.selectedComponent == null ? null : ctx_r2.selectedComponent.ID) === component_r2.ID && ctx_r2.isRunning ? 23 : ctx_r2.isRunning && (ctx_r2.selectedComponent == null ? null : ctx_r2.selectedComponent.ID) !== component_r2.ID ? 24 : 25);
|
|
137
153
|
} }
|
|
138
|
-
function
|
|
154
|
+
function ComponentStudioDashboardComponent_Conditional_24_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
139
155
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
140
|
-
i0.ɵɵelementStart(0, "div",
|
|
141
|
-
i0.ɵɵlistener("click", function
|
|
142
|
-
i0.ɵɵelementStart(2, "div",
|
|
143
|
-
i0.ɵɵelement(3, "i",
|
|
156
|
+
i0.ɵɵelementStart(0, "div", 24)(1, "div", 25);
|
|
157
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_24_For_1_Template_div_click_1_listener() { const component_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleComponentExpansion(component_r2)); });
|
|
158
|
+
i0.ɵɵelementStart(2, "div", 26);
|
|
159
|
+
i0.ɵɵelement(3, "i", 27);
|
|
144
160
|
i0.ɵɵelementEnd();
|
|
145
|
-
i0.ɵɵelementStart(4, "div",
|
|
161
|
+
i0.ɵɵelementStart(4, "div", 28)(5, "div", 29);
|
|
146
162
|
i0.ɵɵtext(6);
|
|
147
163
|
i0.ɵɵelementEnd();
|
|
148
|
-
i0.ɵɵelementStart(7, "div",
|
|
164
|
+
i0.ɵɵelementStart(7, "div", 30)(8, "span", 31);
|
|
149
165
|
i0.ɵɵtext(9);
|
|
150
166
|
i0.ɵɵelementEnd();
|
|
151
|
-
i0.ɵɵelementStart(10, "span",
|
|
167
|
+
i0.ɵɵelementStart(10, "span", 32);
|
|
152
168
|
i0.ɵɵtext(11);
|
|
153
169
|
i0.ɵɵelementEnd();
|
|
154
|
-
i0.ɵɵtemplate(12,
|
|
170
|
+
i0.ɵɵtemplate(12, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_12_Template, 2, 0, "span", 33)(13, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_13_Template, 2, 0, "span", 34);
|
|
155
171
|
i0.ɵɵelementEnd()();
|
|
156
|
-
i0.ɵɵelementStart(14, "div",
|
|
157
|
-
i0.ɵɵtemplate(15,
|
|
172
|
+
i0.ɵɵelementStart(14, "div", 35);
|
|
173
|
+
i0.ɵɵtemplate(15, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_15_Template, 1, 0, "i", 36)(16, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_16_Template, 1, 0, "i", 37);
|
|
158
174
|
i0.ɵɵelementEnd()();
|
|
159
|
-
i0.ɵɵtemplate(17,
|
|
175
|
+
i0.ɵɵtemplate(17, ComponentStudioDashboardComponent_Conditional_24_For_1_Conditional_17_Template, 26, 6, "div", 38);
|
|
160
176
|
i0.ɵɵelementEnd();
|
|
161
177
|
} if (rf & 2) {
|
|
162
178
|
const component_r2 = ctx.$implicit;
|
|
@@ -179,14 +195,14 @@ function ComponentStudioDashboardComponent_Conditional_20_For_1_Template(rf, ctx
|
|
|
179
195
|
i0.ɵɵadvance(2);
|
|
180
196
|
i0.ɵɵconditional((ctx_r2.expandedComponent == null ? null : ctx_r2.expandedComponent.ID) === component_r2.ID ? 17 : -1);
|
|
181
197
|
} }
|
|
182
|
-
function
|
|
183
|
-
i0.ɵɵrepeaterCreate(0,
|
|
198
|
+
function ComponentStudioDashboardComponent_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
199
|
+
i0.ɵɵrepeaterCreate(0, ComponentStudioDashboardComponent_Conditional_24_For_1_Template, 18, 13, "div", 23, _forTrack0);
|
|
184
200
|
} if (rf & 2) {
|
|
185
201
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
186
202
|
i0.ɵɵrepeater(ctx_r2.filteredComponents);
|
|
187
203
|
} }
|
|
188
|
-
function
|
|
189
|
-
i0.ɵɵelementStart(0, "details",
|
|
204
|
+
function ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
205
|
+
i0.ɵɵelementStart(0, "details", 60)(1, "summary");
|
|
190
206
|
i0.ɵɵtext(2, "Technical Details (click to expand)");
|
|
191
207
|
i0.ɵɵelementEnd();
|
|
192
208
|
i0.ɵɵelementStart(3, "pre");
|
|
@@ -197,21 +213,21 @@ function ComponentStudioDashboardComponent_Conditional_23_Conditional_0_Conditio
|
|
|
197
213
|
i0.ɵɵadvance(4);
|
|
198
214
|
i0.ɵɵtextInterpolate(ctx_r2.formatTechnicalDetails(ctx_r2.currentError.technicalDetails));
|
|
199
215
|
} }
|
|
200
|
-
function
|
|
201
|
-
const
|
|
202
|
-
i0.ɵɵelementStart(0, "div",
|
|
203
|
-
i0.ɵɵelement(3, "i",
|
|
216
|
+
function ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
217
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
218
|
+
i0.ɵɵelementStart(0, "div", 51)(1, "div", 53)(2, "div", 54);
|
|
219
|
+
i0.ɵɵelement(3, "i", 55);
|
|
204
220
|
i0.ɵɵelementStart(4, "h3");
|
|
205
221
|
i0.ɵɵtext(5, "Component Error");
|
|
206
222
|
i0.ɵɵelementEnd();
|
|
207
|
-
i0.ɵɵelementStart(6, "button",
|
|
208
|
-
i0.ɵɵlistener("click", function
|
|
209
|
-
i0.ɵɵelement(7, "i",
|
|
223
|
+
i0.ɵɵelementStart(6, "button", 56);
|
|
224
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.copyErrorToClipboard()); });
|
|
225
|
+
i0.ɵɵelement(7, "i", 57);
|
|
210
226
|
i0.ɵɵelementEnd()();
|
|
211
|
-
i0.ɵɵelementStart(8, "p",
|
|
227
|
+
i0.ɵɵelementStart(8, "p", 58);
|
|
212
228
|
i0.ɵɵtext(9, " The component could not be rendered due to the following error: ");
|
|
213
229
|
i0.ɵɵelementEnd();
|
|
214
|
-
i0.ɵɵelementStart(10, "div",
|
|
230
|
+
i0.ɵɵelementStart(10, "div", 59)(11, "strong");
|
|
215
231
|
i0.ɵɵtext(12, "Error Type:");
|
|
216
232
|
i0.ɵɵelementEnd();
|
|
217
233
|
i0.ɵɵtext(13);
|
|
@@ -220,9 +236,9 @@ function ComponentStudioDashboardComponent_Conditional_23_Conditional_0_Template
|
|
|
220
236
|
i0.ɵɵtext(16, "Message:");
|
|
221
237
|
i0.ɵɵelementEnd();
|
|
222
238
|
i0.ɵɵtext(17);
|
|
223
|
-
i0.ɵɵtemplate(18,
|
|
239
|
+
i0.ɵɵtemplate(18, ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Conditional_18_Template, 5, 1, "details", 60);
|
|
224
240
|
i0.ɵɵelementEnd();
|
|
225
|
-
i0.ɵɵelementStart(19, "div",
|
|
241
|
+
i0.ɵɵelementStart(19, "div", 61)(20, "strong");
|
|
226
242
|
i0.ɵɵtext(21, "What to do:");
|
|
227
243
|
i0.ɵɵelementEnd();
|
|
228
244
|
i0.ɵɵelementStart(22, "ol")(23, "li");
|
|
@@ -237,13 +253,15 @@ function ComponentStudioDashboardComponent_Conditional_23_Conditional_0_Template
|
|
|
237
253
|
i0.ɵɵelementStart(29, "li");
|
|
238
254
|
i0.ɵɵtext(30, "Contact your system administrator if the issue persists");
|
|
239
255
|
i0.ɵɵelementEnd()()();
|
|
240
|
-
i0.ɵɵelementStart(31, "div",
|
|
241
|
-
i0.ɵɵlistener("click", function
|
|
242
|
-
i0.ɵɵ
|
|
256
|
+
i0.ɵɵelementStart(31, "div", 62)(32, "button", 63);
|
|
257
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Template_button_click_32_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.retryComponent()); });
|
|
258
|
+
i0.ɵɵelement(33, "span", 64);
|
|
259
|
+
i0.ɵɵtext(34, " Retry ");
|
|
243
260
|
i0.ɵɵelementEnd();
|
|
244
|
-
i0.ɵɵelementStart(
|
|
245
|
-
i0.ɵɵlistener("click", function
|
|
246
|
-
i0.ɵɵ
|
|
261
|
+
i0.ɵɵelementStart(35, "button", 47);
|
|
262
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Template_button_click_35_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.stopComponent()); });
|
|
263
|
+
i0.ɵɵelement(36, "span", 48);
|
|
264
|
+
i0.ɵɵtext(37, " Stop ");
|
|
247
265
|
i0.ɵɵelementEnd()()()();
|
|
248
266
|
} if (rf & 2) {
|
|
249
267
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
@@ -253,29 +271,27 @@ function ComponentStudioDashboardComponent_Conditional_23_Conditional_0_Template
|
|
|
253
271
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.currentError.message, " ");
|
|
254
272
|
i0.ɵɵadvance();
|
|
255
273
|
i0.ɵɵconditional(ctx_r2.currentError.technicalDetails ? 18 : -1);
|
|
256
|
-
i0.ɵɵadvance(
|
|
257
|
-
i0.ɵɵproperty("
|
|
258
|
-
i0.ɵɵadvance(2);
|
|
259
|
-
i0.ɵɵproperty("icon", "fa-solid fa-stop")("themeColor", "error");
|
|
274
|
+
i0.ɵɵadvance(17);
|
|
275
|
+
i0.ɵɵproperty("themeColor", "error");
|
|
260
276
|
} }
|
|
261
|
-
function
|
|
262
|
-
const
|
|
263
|
-
i0.ɵɵelementStart(0, "mj-react-component",
|
|
264
|
-
i0.ɵɵlistener("componentEvent", function
|
|
277
|
+
function ComponentStudioDashboardComponent_Conditional_27_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
278
|
+
const _r8 = i0.ɵɵgetCurrentView();
|
|
279
|
+
i0.ɵɵelementStart(0, "mj-react-component", 65);
|
|
280
|
+
i0.ɵɵlistener("componentEvent", function ComponentStudioDashboardComponent_Conditional_27_Conditional_1_Template_mj_react_component_componentEvent_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onComponentEvent($event)); })("openEntityRecord", function ComponentStudioDashboardComponent_Conditional_27_Conditional_1_Template_mj_react_component_openEntityRecord_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onOpenEntityRecord($event)); });
|
|
265
281
|
i0.ɵɵelementEnd();
|
|
266
282
|
} if (rf & 2) {
|
|
267
283
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
268
284
|
i0.ɵɵproperty("component", ctx_r2.componentSpec);
|
|
269
285
|
} }
|
|
270
|
-
function
|
|
271
|
-
i0.ɵɵtemplate(0,
|
|
286
|
+
function ComponentStudioDashboardComponent_Conditional_27_Template(rf, ctx) { if (rf & 1) {
|
|
287
|
+
i0.ɵɵtemplate(0, ComponentStudioDashboardComponent_Conditional_27_Conditional_0_Template, 38, 4, "div", 51)(1, ComponentStudioDashboardComponent_Conditional_27_Conditional_1_Template, 1, 1, "mj-react-component", 52);
|
|
272
288
|
} if (rf & 2) {
|
|
273
289
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
274
290
|
i0.ɵɵconditional(ctx_r2.currentError ? 0 : 1);
|
|
275
291
|
} }
|
|
276
|
-
function
|
|
277
|
-
i0.ɵɵelementStart(0, "div",
|
|
278
|
-
i0.ɵɵelement(1, "i",
|
|
292
|
+
function ComponentStudioDashboardComponent_Conditional_28_Template(rf, ctx) { if (rf & 1) {
|
|
293
|
+
i0.ɵɵelementStart(0, "div", 19);
|
|
294
|
+
i0.ɵɵelement(1, "i", 66);
|
|
279
295
|
i0.ɵɵelementStart(2, "h2");
|
|
280
296
|
i0.ɵɵtext(3, "Ready to Test Components");
|
|
281
297
|
i0.ɵɵelementEnd();
|
|
@@ -318,7 +334,7 @@ let ComponentStudioDashboardComponent = class ComponentStudioDashboardComponent
|
|
|
318
334
|
const rv = new RunView();
|
|
319
335
|
const result = await rv.RunView({
|
|
320
336
|
EntityName: 'MJ: Components',
|
|
321
|
-
ExtraFilter: '',
|
|
337
|
+
ExtraFilter: 'HasCustomProps = 0', // Only load components without custom props
|
|
322
338
|
OrderBy: 'Name',
|
|
323
339
|
MaxRows: 1000,
|
|
324
340
|
ResultType: 'entity_object'
|
|
@@ -343,6 +359,7 @@ let ComponentStudioDashboardComponent = class ComponentStudioDashboardComponent
|
|
|
343
359
|
this.filterComponents();
|
|
344
360
|
}
|
|
345
361
|
filterComponents() {
|
|
362
|
+
// Note: this.components already filtered to HasCustomProps = 0 in loadData
|
|
346
363
|
if (!this.searchQuery) {
|
|
347
364
|
this.filteredComponents = [...this.components];
|
|
348
365
|
}
|
|
@@ -364,19 +381,39 @@ let ComponentStudioDashboardComponent = class ComponentStudioDashboardComponent
|
|
|
364
381
|
this.cdr.detectChanges();
|
|
365
382
|
}
|
|
366
383
|
runComponent(component) {
|
|
384
|
+
// If another component is running, stop it first then start the new one
|
|
385
|
+
if (this.isRunning && this.selectedComponent?.ID !== component.ID) {
|
|
386
|
+
this.stopComponent();
|
|
387
|
+
this.startComponent(component);
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
this.startComponent(component);
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
startComponent(component) {
|
|
367
394
|
this.selectedComponent = component;
|
|
368
395
|
this.componentSpec = JSON.parse(component.Specification);
|
|
369
396
|
this.isRunning = true;
|
|
370
397
|
this.currentError = null; // Clear any previous errors
|
|
371
398
|
console.log('Running component:', component.Name);
|
|
372
|
-
|
|
399
|
+
try {
|
|
400
|
+
this.cdr.detectChanges();
|
|
401
|
+
}
|
|
402
|
+
catch (error) {
|
|
403
|
+
console.error('Error with cdr.detectChanges():', error);
|
|
404
|
+
}
|
|
373
405
|
}
|
|
374
406
|
stopComponent() {
|
|
375
407
|
this.isRunning = false;
|
|
376
408
|
this.selectedComponent = null;
|
|
377
409
|
this.componentSpec = null;
|
|
378
410
|
this.currentError = null;
|
|
379
|
-
|
|
411
|
+
try {
|
|
412
|
+
this.cdr.detectChanges();
|
|
413
|
+
}
|
|
414
|
+
catch (error) {
|
|
415
|
+
console.error('Error with cdr.detectChanges():', error);
|
|
416
|
+
}
|
|
380
417
|
}
|
|
381
418
|
/**
|
|
382
419
|
* Handle component events from React components
|
|
@@ -475,42 +512,46 @@ ${this.currentError.technicalDetails ? '\nTechnical Details:\n' + JSON.stringify
|
|
|
475
512
|
return colors[type || ''] || '#9CA3AF';
|
|
476
513
|
}
|
|
477
514
|
static ɵfac = function ComponentStudioDashboardComponent_Factory(t) { return new (t || ComponentStudioDashboardComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
478
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ComponentStudioDashboardComponent, selectors: [["mj-component-studio-dashboard"]], features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
479
|
-
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "h1");
|
|
480
|
-
i0.ɵɵelement(
|
|
481
|
-
i0.ɵɵtext(
|
|
515
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ComponentStudioDashboardComponent, selectors: [["mj-component-studio-dashboard"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 29, vars: 9, consts: [[1, "component-studio"], [1, "dashboard-header"], [1, "header-content"], [1, "fa-solid", "fa-puzzle-piece"], [1, "header-subtitle"], ["kendoButton", "", 3, "click", "disabled"], [1, "fa-solid", "fa-sync"], ["orientation", "horizontal", 2, "flex", "1", "height", "auto"], [3, "min", "max", "size"], [1, "components-panel"], [1, "panel-header"], [1, "search-box"], ["placeholder", "Search components...", 3, "valueChange", "value", "clearButton"], ["kendoTextBoxPrefixTemplate", ""], [1, "components-list"], [1, "loading-message"], [1, "empty-message"], [3, "min"], [1, "component-display"], [1, "empty-state"], [1, "fa-solid", "fa-search"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-info-circle"], [1, "component-card", 3, "expanded", "running"], [1, "component-card"], [1, "card-header", 3, "click"], [1, "card-icon"], [1, "fa-solid", 3, "ngClass"], [1, "card-info"], [1, "card-name"], [1, "card-meta"], [1, "card-type"], [1, "card-version"], [1, "status-badge", "published"], [1, "status-badge", "draft"], [1, "card-chevron"], [1, "fa-solid", "fa-chevron-up"], [1, "fa-solid", "fa-chevron-down"], [1, "card-details"], [1, "detail-section"], [1, "info-grid"], [1, "info-item"], [1, "info-label"], [1, "info-value"], [1, "card-actions"], ["kendoButton", "", 3, "themeColor"], ["kendoButton", "", "title", "Stop current component and run this one", 3, "themeColor"], ["kendoButton", "", 3, "click", "themeColor"], [1, "fa-solid", "fa-stop"], ["kendoButton", "", "title", "Stop current component and run this one", 3, "click", "themeColor"], [1, "fa-solid", "fa-play"], [1, "error-display"], [3, "component"], [1, "error-container"], [1, "error-header"], [1, "fa-solid", "fa-exclamation-triangle"], ["title", "Copy error details", 1, "copy-button", 3, "click"], [1, "fa-solid", "fa-copy"], [1, "error-intro"], [1, "error-details"], [1, "technical-details"], [1, "error-help"], [1, "error-actions"], ["kendoButton", "", 3, "click"], [1, "fa-solid", "fa-rotate"], [3, "componentEvent", "openEntityRecord", "component"], [1, "fa-solid", "fa-rocket", "fa-3x"]], template: function ComponentStudioDashboardComponent_Template(rf, ctx) { if (rf & 1) {
|
|
516
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div")(4, "h1");
|
|
517
|
+
i0.ɵɵelement(5, "i", 3);
|
|
518
|
+
i0.ɵɵtext(6, " Component Studio");
|
|
482
519
|
i0.ɵɵelementEnd();
|
|
483
|
-
i0.ɵɵelementStart(
|
|
484
|
-
i0.ɵɵ
|
|
485
|
-
i0.ɵɵ
|
|
520
|
+
i0.ɵɵelementStart(7, "p", 4);
|
|
521
|
+
i0.ɵɵtext(8, "Testing components without custom properties");
|
|
522
|
+
i0.ɵɵelementEnd()();
|
|
523
|
+
i0.ɵɵelementStart(9, "button", 5);
|
|
524
|
+
i0.ɵɵlistener("click", function ComponentStudioDashboardComponent_Template_button_click_9_listener() { return ctx.refreshData(); });
|
|
525
|
+
i0.ɵɵelement(10, "span", 6);
|
|
526
|
+
i0.ɵɵtext(11, " Refresh ");
|
|
486
527
|
i0.ɵɵelementEnd()()();
|
|
487
|
-
i0.ɵɵelementStart(
|
|
488
|
-
i0.ɵɵtext(
|
|
528
|
+
i0.ɵɵelementStart(12, "kendo-splitter", 7)(13, "kendo-splitter-pane", 8)(14, "div", 9)(15, "div", 10)(16, "h3");
|
|
529
|
+
i0.ɵɵtext(17, "Components");
|
|
489
530
|
i0.ɵɵelementEnd();
|
|
490
|
-
i0.ɵɵelementStart(
|
|
491
|
-
i0.ɵɵlistener("valueChange", function
|
|
492
|
-
i0.ɵɵtemplate(
|
|
531
|
+
i0.ɵɵelementStart(18, "div", 11)(19, "kendo-textbox", 12);
|
|
532
|
+
i0.ɵɵlistener("valueChange", function ComponentStudioDashboardComponent_Template_kendo_textbox_valueChange_19_listener($event) { return ctx.onSearchChange($event); });
|
|
533
|
+
i0.ɵɵtemplate(20, ComponentStudioDashboardComponent_ng_template_20_Template, 1, 0, "ng-template", 13);
|
|
493
534
|
i0.ɵɵelementEnd()()();
|
|
494
|
-
i0.ɵɵelementStart(
|
|
495
|
-
i0.ɵɵtemplate(
|
|
535
|
+
i0.ɵɵelementStart(21, "div", 14);
|
|
536
|
+
i0.ɵɵtemplate(22, ComponentStudioDashboardComponent_Conditional_22_Template, 3, 0, "div", 15)(23, ComponentStudioDashboardComponent_Conditional_23_Template, 6, 0, "div", 16)(24, ComponentStudioDashboardComponent_Conditional_24_Template, 2, 0);
|
|
496
537
|
i0.ɵɵelementEnd()()();
|
|
497
|
-
i0.ɵɵelementStart(
|
|
498
|
-
i0.ɵɵtemplate(
|
|
538
|
+
i0.ɵɵelementStart(25, "kendo-splitter-pane", 17)(26, "div", 18);
|
|
539
|
+
i0.ɵɵtemplate(27, ComponentStudioDashboardComponent_Conditional_27_Template, 2, 1)(28, ComponentStudioDashboardComponent_Conditional_28_Template, 6, 0, "div", 19);
|
|
499
540
|
i0.ɵɵelementEnd()()()();
|
|
500
541
|
} if (rf & 2) {
|
|
501
|
-
i0.ɵɵadvance(
|
|
502
|
-
i0.ɵɵproperty("
|
|
503
|
-
i0.ɵɵadvance(
|
|
542
|
+
i0.ɵɵadvance(9);
|
|
543
|
+
i0.ɵɵproperty("disabled", ctx.isLoading);
|
|
544
|
+
i0.ɵɵadvance(4);
|
|
504
545
|
i0.ɵɵproperty("min", "350px")("max", "600px")("size", "400px");
|
|
505
546
|
i0.ɵɵadvance(6);
|
|
506
547
|
i0.ɵɵproperty("value", ctx.searchQuery)("clearButton", true);
|
|
507
548
|
i0.ɵɵadvance(3);
|
|
508
|
-
i0.ɵɵconditional(ctx.isLoading ?
|
|
549
|
+
i0.ɵɵconditional(ctx.isLoading ? 22 : ctx.filteredComponents.length === 0 ? 23 : 24);
|
|
509
550
|
i0.ɵɵadvance(3);
|
|
510
551
|
i0.ɵɵproperty("min", "400px");
|
|
511
552
|
i0.ɵɵadvance(2);
|
|
512
|
-
i0.ɵɵconditional(ctx.isRunning && ctx.selectedComponent && ctx.componentSpec ?
|
|
513
|
-
} }, dependencies: [i1.NgClass, i2.TextBoxComponent, i2.TextBoxPrefixTemplateDirective, i3.SplitterComponent, i3.SplitterPaneComponent, i4.ButtonComponent, i5.MJReactComponent, i1.DatePipe], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n.component-studio[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #f8f9fa;\n overflow: hidden;\n\n .dashboard-header {\n background: white;\n border-bottom: 1px solid #dee2e6;\n padding: 16px 24px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);\n \n .header-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n \n h1 {\n margin: 0;\n font-size: 24px;\n font-weight: 600;\n color: #212529;\n display: flex;\n align-items: center;\n gap: 12px;\n \n i {\n color: #6366f1;\n }\n }\n }\n }\n\n kendo-splitter {\n flex: 1;\n background: white;\n display: flex;\n height: 100%;\n min-height: 0;\n }\n\n .components-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f8f9fa;\n \n .panel-header {\n padding: 20px;\n background: white;\n border-bottom: 1px solid #dee2e6;\n \n h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #212529;\n }\n \n .search-box {\n kendo-textbox {\n width: 100%;\n }\n }\n }\n \n .components-list {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n \n .loading-message,\n .empty-message {\n padding: 48px 24px;\n text-align: center;\n color: #6c757d;\n font-size: 14px;\n \n i {\n margin-right: 8px;\n }\n }\n \n .component-card {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 8px;\n margin-bottom: 12px;\n transition: all 0.2s ease;\n \n &:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n }\n \n &.expanded {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);\n border-color: #6366f1;\n }\n \n &.running {\n border-color: #10b981;\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n }\n \n .card-header {\n display: flex;\n align-items: center;\n padding: 16px;\n cursor: pointer;\n user-select: none;\n \n &:hover {\n background: #f8f9fa;\n }\n \n .card-icon {\n font-size: 24px;\n margin-right: 16px;\n width: 32px;\n text-align: center;\n flex-shrink: 0;\n }\n \n .card-info {\n flex: 1;\n min-width: 0;\n \n .card-name {\n font-size: 15px;\n font-weight: 600;\n color: #212529;\n margin-bottom: 4px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .card-meta {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n color: #6c757d;\n \n .card-type {\n font-weight: 500;\n }\n \n .card-version {\n color: #868e96;\n }\n \n .status-badge {\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n \n &.published {\n background: #d1fae5;\n color: #065f46;\n }\n \n &.draft {\n background: #fef3c7;\n color: #92400e;\n }\n }\n }\n }\n \n .card-chevron {\n color: #6c757d;\n font-size: 12px;\n margin-left: 12px;\n transition: transform 0.2s ease;\n }\n }\n \n .card-details {\n padding: 0 16px 16px 16px;\n border-top: 1px solid #e9ecef;\n animation: _ngcontent-%COMP%_slideDown 0.2s ease;\n \n .detail-section {\n margin-top: 16px;\n \n label {\n display: block;\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 8px;\n }\n \n p {\n margin: 0;\n font-size: 13px;\n color: #495057;\n line-height: 1.5;\n }\n \n .info-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n \n .info-item {\n display: flex;\n align-items: baseline;\n gap: 6px;\n font-size: 13px;\n \n .info-label {\n font-weight: 500;\n color: #6c757d;\n min-width: 50px;\n }\n \n .info-value {\n color: #212529;\n }\n }\n }\n }\n \n .card-actions {\n margin-top: 16px;\n display: flex;\n gap: 8px;\n \n button {\n flex: 1;\n }\n }\n }\n }\n }\n }\n\n .component-display {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: white;\n position: relative;\n \n .empty-state {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n color: #868e96;\n padding: 48px;\n text-align: center;\n \n i {\n color: #dee2e6;\n margin-bottom: 24px;\n }\n \n h2 {\n margin: 0 0 12px 0;\n font-size: 24px;\n font-weight: 600;\n color: #495057;\n }\n \n p {\n margin: 0;\n font-size: 14px;\n max-width: 400px;\n }\n }\n \n .error-display {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n background: #f8f9fa;\n \n .error-container {\n width: 100%;\n max-width: 600px;\n background: white;\n border: 2px solid #dc3545;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 4px 12px rgba(220, 53, 69, 0.15);\n \n .error-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 20px;\n color: #dc3545;\n position: relative;\n \n i {\n font-size: 24px;\n }\n \n h3 {\n margin: 0;\n font-size: 20px;\n flex: 1;\n }\n \n .copy-button {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 6px 10px;\n cursor: pointer;\n color: #6c757d;\n transition: all 0.2s;\n \n &:hover {\n background: #e9ecef;\n color: #495057;\n }\n \n i {\n font-size: 14px;\n }\n }\n }\n \n .error-intro {\n color: #495057;\n margin-bottom: 20px;\n font-size: 14px;\n }\n \n .error-details {\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\n font-size: 13px;\n \n .technical-details {\n margin-top: 12px;\n \n summary {\n cursor: pointer;\n color: #0066cc;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n \n &:hover {\n text-decoration: underline;\n }\n }\n \n pre {\n margin-top: 8px;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 11px;\n color: #495057;\n max-height: 200px;\n overflow-y: auto;\n }\n }\n }\n \n .error-help {\n background: #e7f3ff;\n border: 1px solid #b3d9ff;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-size: 13px;\n \n strong {\n display: block;\n margin-bottom: 8px;\n font-size: 14px;\n color: #0066cc;\n }\n \n ol {\n margin: 0;\n padding-left: 20px;\n \n li {\n margin-bottom: 4px;\n color: #495057;\n }\n }\n }\n \n .error-actions {\n display: flex;\n gap: 12px;\n \n button {\n min-width: 100px;\n }\n }\n }\n }\n \n mj-react-component {\n flex: 1;\n width: 100%;\n height: 100%;\n }\n }\n}\n\n@keyframes _ngcontent-%COMP%_slideDown {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}"] });
|
|
553
|
+
i0.ɵɵconditional(ctx.isRunning && ctx.selectedComponent && ctx.componentSpec ? 27 : 28);
|
|
554
|
+
} }, dependencies: [i1.NgClass, i2.TextBoxComponent, i2.TextBoxPrefixTemplateDirective, i3.SplitterComponent, i3.SplitterPaneComponent, i4.ButtonComponent, i5.MJReactComponent, i1.DatePipe], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n.component-studio[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #f8f9fa;\n overflow: hidden;\n\n .dashboard-header {\n background: white;\n border-bottom: 1px solid #dee2e6;\n padding: 16px 24px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);\n \n .header-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n \n h1 {\n margin: 0;\n font-size: 24px;\n font-weight: 600;\n color: #212529;\n display: flex;\n align-items: center;\n gap: 12px;\n \n i {\n color: #6366f1;\n }\n }\n \n .header-subtitle {\n margin: 4px 0 0 0;\n font-size: 13px;\n color: #6c757d;\n font-weight: normal;\n }\n }\n }\n\n kendo-splitter {\n flex: 1;\n background: white;\n display: flex;\n height: 100%;\n min-height: 0;\n }\n\n .components-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f8f9fa;\n \n .panel-header {\n padding: 20px;\n background: white;\n border-bottom: 1px solid #dee2e6;\n \n h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #212529;\n }\n \n .search-box {\n kendo-textbox {\n width: 100%;\n }\n }\n }\n \n .components-list {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n \n .loading-message,\n .empty-message {\n padding: 48px 24px;\n text-align: center;\n color: #6c757d;\n font-size: 14px;\n \n i {\n margin-right: 8px;\n }\n }\n \n .component-card {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 8px;\n margin-bottom: 12px;\n transition: all 0.2s ease;\n \n &:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n }\n \n &.expanded {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);\n border-color: #6366f1;\n }\n \n &.running {\n border-color: #10b981;\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n background: linear-gradient(to right, rgba(16, 185, 129, 0.03) 0%, white 100%);\n \n .card-header {\n &::before {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n width: 4px;\n background: #10b981;\n }\n }\n }\n \n .card-header {\n display: flex;\n align-items: center;\n padding: 16px;\n cursor: pointer;\n user-select: none;\n position: relative;\n \n &:hover {\n background: #f8f9fa;\n }\n \n .card-icon {\n font-size: 24px;\n margin-right: 16px;\n width: 32px;\n text-align: center;\n flex-shrink: 0;\n }\n \n .card-info {\n flex: 1;\n min-width: 0;\n \n .card-name {\n font-size: 15px;\n font-weight: 600;\n color: #212529;\n margin-bottom: 4px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .card-meta {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n color: #6c757d;\n \n .card-type {\n font-weight: 500;\n }\n \n .card-version {\n color: #868e96;\n }\n \n .status-badge {\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n \n &.published {\n background: #d1fae5;\n color: #065f46;\n }\n \n &.draft {\n background: #fef3c7;\n color: #92400e;\n }\n }\n }\n }\n \n .card-chevron {\n color: #6c757d;\n font-size: 12px;\n margin-left: 12px;\n transition: transform 0.2s ease;\n }\n }\n \n .card-details {\n padding: 0 16px 16px 16px;\n border-top: 1px solid #e9ecef;\n animation: _ngcontent-%COMP%_slideDown 0.2s ease;\n \n .detail-section {\n margin-top: 16px;\n \n label {\n display: block;\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 8px;\n }\n \n p {\n margin: 0;\n font-size: 13px;\n color: #495057;\n line-height: 1.5;\n }\n \n .info-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n \n .info-item {\n display: flex;\n align-items: baseline;\n gap: 6px;\n font-size: 13px;\n \n .info-label {\n font-weight: 500;\n color: #6c757d;\n min-width: 50px;\n }\n \n .info-value {\n color: #212529;\n }\n }\n }\n }\n \n .card-actions {\n margin-top: 16px;\n display: flex;\n gap: 8px;\n \n button {\n flex: 1;\n }\n }\n }\n }\n }\n }\n\n .component-display {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: white;\n position: relative;\n \n .empty-state {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n color: #868e96;\n padding: 48px;\n text-align: center;\n \n i {\n color: #dee2e6;\n margin-bottom: 24px;\n }\n \n h2 {\n margin: 0 0 12px 0;\n font-size: 24px;\n font-weight: 600;\n color: #495057;\n }\n \n p {\n margin: 0;\n font-size: 14px;\n max-width: 400px;\n }\n }\n \n .error-display {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n background: #f8f9fa;\n \n .error-container {\n width: 100%;\n max-width: 600px;\n background: white;\n border: 2px solid #dc3545;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 4px 12px rgba(220, 53, 69, 0.15);\n \n .error-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 20px;\n color: #dc3545;\n position: relative;\n \n i {\n font-size: 24px;\n }\n \n h3 {\n margin: 0;\n font-size: 20px;\n flex: 1;\n }\n \n .copy-button {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 6px 10px;\n cursor: pointer;\n color: #6c757d;\n transition: all 0.2s;\n \n &:hover {\n background: #e9ecef;\n color: #495057;\n }\n \n i {\n font-size: 14px;\n }\n }\n }\n \n .error-intro {\n color: #495057;\n margin-bottom: 20px;\n font-size: 14px;\n }\n \n .error-details {\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\n font-size: 13px;\n \n .technical-details {\n margin-top: 12px;\n \n summary {\n cursor: pointer;\n color: #0066cc;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n \n &:hover {\n text-decoration: underline;\n }\n }\n \n pre {\n margin-top: 8px;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 11px;\n color: #495057;\n max-height: 200px;\n overflow-y: auto;\n }\n }\n }\n \n .error-help {\n background: #e7f3ff;\n border: 1px solid #b3d9ff;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-size: 13px;\n \n strong {\n display: block;\n margin-bottom: 8px;\n font-size: 14px;\n color: #0066cc;\n }\n \n ol {\n margin: 0;\n padding-left: 20px;\n \n li {\n margin-bottom: 4px;\n color: #495057;\n }\n }\n }\n \n .error-actions {\n display: flex;\n gap: 12px;\n \n button {\n min-width: 100px;\n }\n }\n }\n }\n \n mj-react-component {\n flex: 1;\n width: 100%;\n height: 100%;\n }\n }\n}\n\n@keyframes _ngcontent-%COMP%_slideDown {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}"] });
|
|
514
555
|
};
|
|
515
556
|
ComponentStudioDashboardComponent = __decorate([
|
|
516
557
|
RegisterClass(BaseDashboard, 'ComponentStudioDashboard')
|
|
@@ -518,7 +559,7 @@ ComponentStudioDashboardComponent = __decorate([
|
|
|
518
559
|
export { ComponentStudioDashboardComponent };
|
|
519
560
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentStudioDashboardComponent, [{
|
|
520
561
|
type: Component,
|
|
521
|
-
args: [{ selector: 'mj-component-studio-dashboard', template: "<div class=\"component-studio\">\n <!-- Header -->\n <div class=\"dashboard-header\">\n <div class=\"header-content\">\n <h1><i class=\"fa-solid fa-puzzle-piece\"></i> Component Studio</h1>\n <button kendoButton [icon]=\"'fa-solid fa-sync'\" (click)=\"refreshData()\" [disabled]=\"isLoading\">\n Refresh\n </button>\n </div>\n </div>\n\n <!-- Main Content with Splitter -->\n <kendo-splitter orientation=\"horizontal\" style=\"flex: 1; height: auto;\">\n <!-- Left Panel - Component List -->\n <kendo-splitter-pane [min]=\"'350px'\" [max]=\"'600px'\" [size]=\"'400px'\">\n <div class=\"components-panel\">\n <div class=\"panel-header\">\n <h3>Components</h3>\n <div class=\"search-box\">\n <kendo-textbox \n [value]=\"searchQuery\"\n (valueChange)=\"onSearchChange($event)\"\n placeholder=\"Search components...\"\n [clearButton]=\"true\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n </div>\n \n <div class=\"components-list\">\n @if (isLoading) {\n <div class=\"loading-message\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading components...\n </div>\n } @else if (filteredComponents.length === 0) {\n <div class=\"empty-message\">\n No components found\n </div>\n } @else {\n @for (component of filteredComponents; track component.ID) {\n <div class=\"component-card\" \n [class.expanded]=\"expandedComponent?.ID === component.ID\"\n [class.running]=\"selectedComponent?.ID === component.ID && isRunning\">\n \n <!-- Card Header - Always visible -->\n <div class=\"card-header\" (click)=\"toggleComponentExpansion(component)\">\n <div class=\"card-icon\" [style.color]=\"getComponentTypeColor(component.Type)\">\n <i class=\"fa-solid\" [ngClass]=\"getComponentTypeIcon(component.Type)\"></i>\n </div>\n <div class=\"card-info\">\n <div class=\"card-name\">{{ component.Name }}</div>\n <div class=\"card-meta\">\n <span class=\"card-type\">{{ component.Type || 'Component' }}</span>\n <span class=\"card-version\">v{{ component.Version || '1.0.0' }}</span>\n @if (component.Status === 'Published') {\n <span class=\"status-badge published\">Published</span>\n } @else {\n <span class=\"status-badge draft\">Draft</span>\n }\n </div>\n </div>\n <div class=\"card-chevron\">\n @if (expandedComponent?.ID === component.ID) {\n <i class=\"fa-solid fa-chevron-up\"></i>\n } @else {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n \n <!-- Card Details - Only visible when expanded -->\n @if (expandedComponent?.ID === component.ID) {\n <div class=\"card-details\">\n @if (component.Description) {\n <div class=\"detail-section\">\n <label>Description</label>\n <p>{{ component.Description }}</p>\n </div>\n }\n \n <div class=\"detail-section\">\n <label>Component Info</label>\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <span class=\"info-label\">Type:</span>\n <span class=\"info-value\">{{ component.Type || 'Unknown' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Version:</span>\n <span class=\"info-value\">{{ component.Version || '1.0.0' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Status:</span>\n <span class=\"info-value\">{{ component.Status || 'Draft' }}</span>\n </div>\n @if (component.__mj_UpdatedAt) {\n <div class=\"info-item\">\n <span class=\"info-label\">Updated:</span>\n <span class=\"info-value\">{{ component.__mj_UpdatedAt | date:'short' }}</span>\n </div>\n }\n </div>\n </div>\n \n <div class=\"card-actions\">\n @if (selectedComponent?.ID === component.ID && isRunning) {\n <button kendoButton \n [icon]=\"'fa-solid fa-stop'\" \n [themeColor]=\"'error'\"\n (click)=\"stopComponent(); $event.stopPropagation()\">\n Stop Component\n </button>\n } @else {\n <button kendoButton \n [icon]=\"'fa-solid fa-play'\" \n [themeColor]=\"'primary'\"\n (click)=\"runComponent(component); $event.stopPropagation()\">\n Run Component\n </button>\n }\n </div>\n </div>\n }\n </div>\n }\n }\n </div>\n </div>\n </kendo-splitter-pane>\n\n <!-- Right Panel - Component Display -->\n <kendo-splitter-pane [min]=\"'400px'\">\n <div class=\"component-display\">\n @if (isRunning && selectedComponent && componentSpec) {\n @if (currentError) {\n <!-- Error Display -->\n <div class=\"error-display\">\n <div class=\"error-container\">\n <div class=\"error-header\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <h3>Component Error</h3>\n <button class=\"copy-button\" (click)=\"copyErrorToClipboard()\" title=\"Copy error details\">\n <i class=\"fa-solid fa-copy\"></i>\n </button>\n </div>\n \n <p class=\"error-intro\">\n The component could not be rendered due to the following error:\n </p>\n \n <div class=\"error-details\">\n <strong>Error Type:</strong> {{ currentError.type }}<br>\n <strong>Message:</strong> {{ currentError.message }}\n @if (currentError.technicalDetails) {\n <details class=\"technical-details\">\n <summary>Technical Details (click to expand)</summary>\n <pre>{{ formatTechnicalDetails(currentError.technicalDetails) }}</pre>\n </details>\n }\n </div>\n \n <div class=\"error-help\">\n <strong>What to do:</strong>\n <ol>\n <li>Check that the component code is valid JavaScript/React</li>\n <li>Ensure all required dependencies are available</li>\n <li>Review the technical details for specific error information</li>\n <li>Contact your system administrator if the issue persists</li>\n </ol>\n </div>\n \n <div class=\"error-actions\">\n <button kendoButton (click)=\"retryComponent()\" [icon]=\"'fa-solid fa-rotate'\">\n Retry\n </button>\n <button kendoButton (click)=\"stopComponent()\" [icon]=\"'fa-solid fa-stop'\" [themeColor]=\"'error'\">\n Stop\n </button>\n </div>\n </div>\n </div>\n } @else {\n <!-- React Component -->\n <mj-react-component \n [component]=\"componentSpec\"\n (componentEvent)=\"onComponentEvent($event)\"\n (openEntityRecord)=\"onOpenEntityRecord($event)\">\n </mj-react-component>\n }\n } @else {\n <!-- Empty State -->\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-rocket fa-3x\"></i>\n <h2>Ready to Test Components</h2>\n <p>Select a component from the list and click \"Run Component\" to see it in action</p>\n </div>\n }\n </div>\n </kendo-splitter-pane>\n </kendo-splitter>\n</div>", styles: [":host {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n.component-studio {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #f8f9fa;\n overflow: hidden;\n\n .dashboard-header {\n background: white;\n border-bottom: 1px solid #dee2e6;\n padding: 16px 24px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);\n \n .header-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n \n h1 {\n margin: 0;\n font-size: 24px;\n font-weight: 600;\n color: #212529;\n display: flex;\n align-items: center;\n gap: 12px;\n \n i {\n color: #6366f1;\n }\n }\n }\n }\n\n kendo-splitter {\n flex: 1;\n background: white;\n display: flex;\n height: 100%;\n min-height: 0;\n }\n\n .components-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f8f9fa;\n \n .panel-header {\n padding: 20px;\n background: white;\n border-bottom: 1px solid #dee2e6;\n \n h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #212529;\n }\n \n .search-box {\n kendo-textbox {\n width: 100%;\n }\n }\n }\n \n .components-list {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n \n .loading-message,\n .empty-message {\n padding: 48px 24px;\n text-align: center;\n color: #6c757d;\n font-size: 14px;\n \n i {\n margin-right: 8px;\n }\n }\n \n .component-card {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 8px;\n margin-bottom: 12px;\n transition: all 0.2s ease;\n \n &:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n }\n \n &.expanded {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);\n border-color: #6366f1;\n }\n \n &.running {\n border-color: #10b981;\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n }\n \n .card-header {\n display: flex;\n align-items: center;\n padding: 16px;\n cursor: pointer;\n user-select: none;\n \n &:hover {\n background: #f8f9fa;\n }\n \n .card-icon {\n font-size: 24px;\n margin-right: 16px;\n width: 32px;\n text-align: center;\n flex-shrink: 0;\n }\n \n .card-info {\n flex: 1;\n min-width: 0;\n \n .card-name {\n font-size: 15px;\n font-weight: 600;\n color: #212529;\n margin-bottom: 4px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .card-meta {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n color: #6c757d;\n \n .card-type {\n font-weight: 500;\n }\n \n .card-version {\n color: #868e96;\n }\n \n .status-badge {\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n \n &.published {\n background: #d1fae5;\n color: #065f46;\n }\n \n &.draft {\n background: #fef3c7;\n color: #92400e;\n }\n }\n }\n }\n \n .card-chevron {\n color: #6c757d;\n font-size: 12px;\n margin-left: 12px;\n transition: transform 0.2s ease;\n }\n }\n \n .card-details {\n padding: 0 16px 16px 16px;\n border-top: 1px solid #e9ecef;\n animation: slideDown 0.2s ease;\n \n .detail-section {\n margin-top: 16px;\n \n label {\n display: block;\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 8px;\n }\n \n p {\n margin: 0;\n font-size: 13px;\n color: #495057;\n line-height: 1.5;\n }\n \n .info-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n \n .info-item {\n display: flex;\n align-items: baseline;\n gap: 6px;\n font-size: 13px;\n \n .info-label {\n font-weight: 500;\n color: #6c757d;\n min-width: 50px;\n }\n \n .info-value {\n color: #212529;\n }\n }\n }\n }\n \n .card-actions {\n margin-top: 16px;\n display: flex;\n gap: 8px;\n \n button {\n flex: 1;\n }\n }\n }\n }\n }\n }\n\n .component-display {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: white;\n position: relative;\n \n .empty-state {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n color: #868e96;\n padding: 48px;\n text-align: center;\n \n i {\n color: #dee2e6;\n margin-bottom: 24px;\n }\n \n h2 {\n margin: 0 0 12px 0;\n font-size: 24px;\n font-weight: 600;\n color: #495057;\n }\n \n p {\n margin: 0;\n font-size: 14px;\n max-width: 400px;\n }\n }\n \n .error-display {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n background: #f8f9fa;\n \n .error-container {\n width: 100%;\n max-width: 600px;\n background: white;\n border: 2px solid #dc3545;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 4px 12px rgba(220, 53, 69, 0.15);\n \n .error-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 20px;\n color: #dc3545;\n position: relative;\n \n i {\n font-size: 24px;\n }\n \n h3 {\n margin: 0;\n font-size: 20px;\n flex: 1;\n }\n \n .copy-button {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 6px 10px;\n cursor: pointer;\n color: #6c757d;\n transition: all 0.2s;\n \n &:hover {\n background: #e9ecef;\n color: #495057;\n }\n \n i {\n font-size: 14px;\n }\n }\n }\n \n .error-intro {\n color: #495057;\n margin-bottom: 20px;\n font-size: 14px;\n }\n \n .error-details {\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\n font-size: 13px;\n \n .technical-details {\n margin-top: 12px;\n \n summary {\n cursor: pointer;\n color: #0066cc;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n \n &:hover {\n text-decoration: underline;\n }\n }\n \n pre {\n margin-top: 8px;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 11px;\n color: #495057;\n max-height: 200px;\n overflow-y: auto;\n }\n }\n }\n \n .error-help {\n background: #e7f3ff;\n border: 1px solid #b3d9ff;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-size: 13px;\n \n strong {\n display: block;\n margin-bottom: 8px;\n font-size: 14px;\n color: #0066cc;\n }\n \n ol {\n margin: 0;\n padding-left: 20px;\n \n li {\n margin-bottom: 4px;\n color: #495057;\n }\n }\n }\n \n .error-actions {\n display: flex;\n gap: 12px;\n \n button {\n min-width: 100px;\n }\n }\n }\n }\n \n mj-react-component {\n flex: 1;\n width: 100%;\n height: 100%;\n }\n }\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}"] }]
|
|
562
|
+
args: [{ selector: 'mj-component-studio-dashboard', template: "<div class=\"component-studio\">\n <!-- Header -->\n <div class=\"dashboard-header\">\n <div class=\"header-content\">\n <div>\n <h1><i class=\"fa-solid fa-puzzle-piece\"></i> Component Studio</h1>\n <p class=\"header-subtitle\">Testing components without custom properties</p>\n </div>\n <button kendoButton (click)=\"refreshData()\" [disabled]=\"isLoading\">\n <span class=\"fa-solid fa-sync\"></span> Refresh\n </button>\n </div>\n </div>\n\n <!-- Main Content with Splitter -->\n <kendo-splitter orientation=\"horizontal\" style=\"flex: 1; height: auto;\">\n <!-- Left Panel - Component List -->\n <kendo-splitter-pane [min]=\"'350px'\" [max]=\"'600px'\" [size]=\"'400px'\">\n <div class=\"components-panel\">\n <div class=\"panel-header\">\n <h3>Components</h3>\n <div class=\"search-box\">\n <kendo-textbox \n [value]=\"searchQuery\"\n (valueChange)=\"onSearchChange($event)\"\n placeholder=\"Search components...\"\n [clearButton]=\"true\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n </div>\n \n <div class=\"components-list\">\n @if (isLoading) {\n <div class=\"loading-message\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading components...\n </div>\n } @else if (filteredComponents.length === 0) {\n <div class=\"empty-message\">\n <i class=\"fa-solid fa-info-circle\"></i> No components found without custom properties.\n <br>\n <small>Only components that don't require custom props can be tested here.</small>\n </div>\n } @else {\n @for (component of filteredComponents; track component.ID) {\n <div class=\"component-card\" \n [class.expanded]=\"expandedComponent?.ID === component.ID\"\n [class.running]=\"selectedComponent?.ID === component.ID && isRunning\">\n \n <!-- Card Header - Always visible -->\n <div class=\"card-header\" (click)=\"toggleComponentExpansion(component)\">\n <div class=\"card-icon\" [style.color]=\"getComponentTypeColor(component.Type)\">\n <i class=\"fa-solid\" [ngClass]=\"getComponentTypeIcon(component.Type)\"></i>\n </div>\n <div class=\"card-info\">\n <div class=\"card-name\">{{ component.Name }}</div>\n <div class=\"card-meta\">\n <span class=\"card-type\">{{ component.Type || 'Component' }}</span>\n <span class=\"card-version\">v{{ component.Version || '1.0.0' }}</span>\n @if (component.Status === 'Published') {\n <span class=\"status-badge published\">Published</span>\n } @else {\n <span class=\"status-badge draft\">Draft</span>\n }\n </div>\n </div>\n <div class=\"card-chevron\">\n @if (expandedComponent?.ID === component.ID) {\n <i class=\"fa-solid fa-chevron-up\"></i>\n } @else {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n \n <!-- Card Details - Only visible when expanded -->\n @if (expandedComponent?.ID === component.ID) {\n <div class=\"card-details\">\n @if (component.Description) {\n <div class=\"detail-section\">\n <label>Description</label>\n <p>{{ component.Description }}</p>\n </div>\n }\n \n <div class=\"detail-section\">\n <label>Component Info</label>\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <span class=\"info-label\">Type:</span>\n <span class=\"info-value\">{{ component.Type || 'Unknown' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Version:</span>\n <span class=\"info-value\">{{ component.Version || '1.0.0' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Status:</span>\n <span class=\"info-value\">{{ component.Status || 'Draft' }}</span>\n </div>\n @if (component.__mj_UpdatedAt) {\n <div class=\"info-item\">\n <span class=\"info-label\">Updated:</span>\n <span class=\"info-value\">{{ component.__mj_UpdatedAt | date:'short' }}</span>\n </div>\n }\n </div>\n </div>\n \n <div class=\"card-actions\">\n @if (selectedComponent?.ID === component.ID && isRunning) {\n <button kendoButton \n [themeColor]=\"'error'\"\n (click)=\"stopComponent(); $event.stopPropagation()\">\n <span class=\"fa-solid fa-stop\"></span> Stop Component\n </button>\n } @else if (isRunning && selectedComponent?.ID !== component.ID) {\n <button kendoButton \n [themeColor]=\"'base'\"\n title=\"Stop current component and run this one\"\n (click)=\"runComponent(component); $event.stopPropagation()\">\n <span class=\"fa-solid fa-play\"></span> Switch to This Component\n </button>\n } @else {\n <button kendoButton \n [themeColor]=\"'primary'\"\n (click)=\"runComponent(component); $event.stopPropagation()\">\n <span class=\"fa-solid fa-play\"></span> Run Component\n </button>\n }\n </div>\n </div>\n }\n </div>\n }\n }\n </div>\n </div>\n </kendo-splitter-pane>\n\n <!-- Right Panel - Component Display -->\n <kendo-splitter-pane [min]=\"'400px'\">\n <div class=\"component-display\">\n @if (isRunning && selectedComponent && componentSpec) {\n @if (currentError) {\n <!-- Error Display -->\n <div class=\"error-display\">\n <div class=\"error-container\">\n <div class=\"error-header\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <h3>Component Error</h3>\n <button class=\"copy-button\" (click)=\"copyErrorToClipboard()\" title=\"Copy error details\">\n <i class=\"fa-solid fa-copy\"></i>\n </button>\n </div>\n \n <p class=\"error-intro\">\n The component could not be rendered due to the following error:\n </p>\n \n <div class=\"error-details\">\n <strong>Error Type:</strong> {{ currentError.type }}<br>\n <strong>Message:</strong> {{ currentError.message }}\n @if (currentError.technicalDetails) {\n <details class=\"technical-details\">\n <summary>Technical Details (click to expand)</summary>\n <pre>{{ formatTechnicalDetails(currentError.technicalDetails) }}</pre>\n </details>\n }\n </div>\n \n <div class=\"error-help\">\n <strong>What to do:</strong>\n <ol>\n <li>Check that the component code is valid JavaScript/React</li>\n <li>Ensure all required dependencies are available</li>\n <li>Review the technical details for specific error information</li>\n <li>Contact your system administrator if the issue persists</li>\n </ol>\n </div>\n \n <div class=\"error-actions\">\n <button kendoButton (click)=\"retryComponent()\">\n <span class=\"fa-solid fa-rotate\"></span> Retry\n </button>\n <button kendoButton (click)=\"stopComponent()\" [themeColor]=\"'error'\">\n <span class=\"fa-solid fa-stop\"></span> Stop\n </button>\n </div>\n </div>\n </div>\n } @else {\n <!-- React Component -->\n <mj-react-component \n [component]=\"componentSpec\"\n (componentEvent)=\"onComponentEvent($event)\"\n (openEntityRecord)=\"onOpenEntityRecord($event)\">\n </mj-react-component>\n }\n } @else {\n <!-- Empty State -->\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-rocket fa-3x\"></i>\n <h2>Ready to Test Components</h2>\n <p>Select a component from the list and click \"Run Component\" to see it in action</p>\n </div>\n }\n </div>\n </kendo-splitter-pane>\n </kendo-splitter>\n</div>", styles: [":host {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n.component-studio {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: #f8f9fa;\n overflow: hidden;\n\n .dashboard-header {\n background: white;\n border-bottom: 1px solid #dee2e6;\n padding: 16px 24px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);\n \n .header-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n \n h1 {\n margin: 0;\n font-size: 24px;\n font-weight: 600;\n color: #212529;\n display: flex;\n align-items: center;\n gap: 12px;\n \n i {\n color: #6366f1;\n }\n }\n \n .header-subtitle {\n margin: 4px 0 0 0;\n font-size: 13px;\n color: #6c757d;\n font-weight: normal;\n }\n }\n }\n\n kendo-splitter {\n flex: 1;\n background: white;\n display: flex;\n height: 100%;\n min-height: 0;\n }\n\n .components-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f8f9fa;\n \n .panel-header {\n padding: 20px;\n background: white;\n border-bottom: 1px solid #dee2e6;\n \n h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #212529;\n }\n \n .search-box {\n kendo-textbox {\n width: 100%;\n }\n }\n }\n \n .components-list {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n \n .loading-message,\n .empty-message {\n padding: 48px 24px;\n text-align: center;\n color: #6c757d;\n font-size: 14px;\n \n i {\n margin-right: 8px;\n }\n }\n \n .component-card {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 8px;\n margin-bottom: 12px;\n transition: all 0.2s ease;\n \n &:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n }\n \n &.expanded {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);\n border-color: #6366f1;\n }\n \n &.running {\n border-color: #10b981;\n box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);\n background: linear-gradient(to right, rgba(16, 185, 129, 0.03) 0%, white 100%);\n \n .card-header {\n &::before {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n width: 4px;\n background: #10b981;\n }\n }\n }\n \n .card-header {\n display: flex;\n align-items: center;\n padding: 16px;\n cursor: pointer;\n user-select: none;\n position: relative;\n \n &:hover {\n background: #f8f9fa;\n }\n \n .card-icon {\n font-size: 24px;\n margin-right: 16px;\n width: 32px;\n text-align: center;\n flex-shrink: 0;\n }\n \n .card-info {\n flex: 1;\n min-width: 0;\n \n .card-name {\n font-size: 15px;\n font-weight: 600;\n color: #212529;\n margin-bottom: 4px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .card-meta {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n color: #6c757d;\n \n .card-type {\n font-weight: 500;\n }\n \n .card-version {\n color: #868e96;\n }\n \n .status-badge {\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n \n &.published {\n background: #d1fae5;\n color: #065f46;\n }\n \n &.draft {\n background: #fef3c7;\n color: #92400e;\n }\n }\n }\n }\n \n .card-chevron {\n color: #6c757d;\n font-size: 12px;\n margin-left: 12px;\n transition: transform 0.2s ease;\n }\n }\n \n .card-details {\n padding: 0 16px 16px 16px;\n border-top: 1px solid #e9ecef;\n animation: slideDown 0.2s ease;\n \n .detail-section {\n margin-top: 16px;\n \n label {\n display: block;\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-bottom: 8px;\n }\n \n p {\n margin: 0;\n font-size: 13px;\n color: #495057;\n line-height: 1.5;\n }\n \n .info-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 8px;\n \n .info-item {\n display: flex;\n align-items: baseline;\n gap: 6px;\n font-size: 13px;\n \n .info-label {\n font-weight: 500;\n color: #6c757d;\n min-width: 50px;\n }\n \n .info-value {\n color: #212529;\n }\n }\n }\n }\n \n .card-actions {\n margin-top: 16px;\n display: flex;\n gap: 8px;\n \n button {\n flex: 1;\n }\n }\n }\n }\n }\n }\n\n .component-display {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: white;\n position: relative;\n \n .empty-state {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n color: #868e96;\n padding: 48px;\n text-align: center;\n \n i {\n color: #dee2e6;\n margin-bottom: 24px;\n }\n \n h2 {\n margin: 0 0 12px 0;\n font-size: 24px;\n font-weight: 600;\n color: #495057;\n }\n \n p {\n margin: 0;\n font-size: 14px;\n max-width: 400px;\n }\n }\n \n .error-display {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n background: #f8f9fa;\n \n .error-container {\n width: 100%;\n max-width: 600px;\n background: white;\n border: 2px solid #dc3545;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 4px 12px rgba(220, 53, 69, 0.15);\n \n .error-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 20px;\n color: #dc3545;\n position: relative;\n \n i {\n font-size: 24px;\n }\n \n h3 {\n margin: 0;\n font-size: 20px;\n flex: 1;\n }\n \n .copy-button {\n background: white;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 6px 10px;\n cursor: pointer;\n color: #6c757d;\n transition: all 0.2s;\n \n &:hover {\n background: #e9ecef;\n color: #495057;\n }\n \n i {\n font-size: 14px;\n }\n }\n }\n \n .error-intro {\n color: #495057;\n margin-bottom: 20px;\n font-size: 14px;\n }\n \n .error-details {\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\n font-size: 13px;\n \n .technical-details {\n margin-top: 12px;\n \n summary {\n cursor: pointer;\n color: #0066cc;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n \n &:hover {\n text-decoration: underline;\n }\n }\n \n pre {\n margin-top: 8px;\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 11px;\n color: #495057;\n max-height: 200px;\n overflow-y: auto;\n }\n }\n }\n \n .error-help {\n background: #e7f3ff;\n border: 1px solid #b3d9ff;\n border-radius: 4px;\n padding: 16px;\n margin-bottom: 20px;\n font-size: 13px;\n \n strong {\n display: block;\n margin-bottom: 8px;\n font-size: 14px;\n color: #0066cc;\n }\n \n ol {\n margin: 0;\n padding-left: 20px;\n \n li {\n margin-bottom: 4px;\n color: #495057;\n }\n }\n }\n \n .error-actions {\n display: flex;\n gap: 12px;\n \n button {\n min-width: 100px;\n }\n }\n }\n }\n \n mj-react-component {\n flex: 1;\n width: 100%;\n height: 100%;\n }\n }\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}"] }]
|
|
522
563
|
}], () => [{ type: i0.ChangeDetectorRef }], null); })();
|
|
523
564
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ComponentStudioDashboardComponent, { className: "ComponentStudioDashboardComponent", filePath: "src/ComponentStudio/component-studio-dashboard.component.ts", lineNumber: 18 }); })();
|
|
524
565
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-studio-dashboard.component.js","sourceRoot":"","sources":["../../src/ComponentStudio/component-studio-dashboard.component.ts","../../src/ComponentStudio/component-studio-dashboard.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component-studio-dashboard.component.js","sourceRoot":"","sources":["../../src/ComponentStudio/component-studio-dashboard.component.ts","../../src/ComponentStudio/component-studio-dashboard.component.html"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-dashboards",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.88.0",
|
|
4
4
|
"description": "MemberJunction Dashboards",
|
|
5
5
|
"main": "./dist/public-api.js",
|
|
6
6
|
"typings": "./dist/public-api.d.ts",
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
"@angular/forms": "18.0.2"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@memberjunction/core": "2.
|
|
29
|
-
"@memberjunction/core-entities": "2.
|
|
30
|
-
"@memberjunction/templates-base-types": "2.
|
|
31
|
-
"@memberjunction/ng-container-directives": "2.
|
|
32
|
-
"@memberjunction/ng-core-entity-forms": "2.
|
|
33
|
-
"@memberjunction/ng-notifications": "2.
|
|
34
|
-
"@memberjunction/ng-shared": "2.
|
|
35
|
-
"@memberjunction/ng-ai-test-harness": "2.
|
|
36
|
-
"@memberjunction/ng-action-gallery": "2.
|
|
28
|
+
"@memberjunction/core": "2.88.0",
|
|
29
|
+
"@memberjunction/core-entities": "2.88.0",
|
|
30
|
+
"@memberjunction/templates-base-types": "2.88.0",
|
|
31
|
+
"@memberjunction/ng-container-directives": "2.88.0",
|
|
32
|
+
"@memberjunction/ng-core-entity-forms": "2.88.0",
|
|
33
|
+
"@memberjunction/ng-notifications": "2.88.0",
|
|
34
|
+
"@memberjunction/ng-shared": "2.88.0",
|
|
35
|
+
"@memberjunction/ng-ai-test-harness": "2.88.0",
|
|
36
|
+
"@memberjunction/ng-action-gallery": "2.88.0",
|
|
37
37
|
"@progress/kendo-angular-buttons": "16.2.0",
|
|
38
38
|
"@progress/kendo-angular-dropdowns": "16.2.0",
|
|
39
39
|
"@progress/kendo-angular-treeview": "16.2.0",
|