@deenruv/admin-ui-plugin 1.0.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/README.md +5 -0
- package/lib/admin-ui/123.1d21e707f57ee3b4.js +33 -0
- package/lib/admin-ui/123.1d21e707f57ee3b4.js.map +1 -0
- package/lib/admin-ui/132.9c69fc8bd3b0cec4.js +2 -0
- package/lib/admin-ui/132.9c69fc8bd3b0cec4.js.map +1 -0
- package/lib/admin-ui/153.7eec6efd3edd54b4.js +321 -0
- package/lib/admin-ui/153.7eec6efd3edd54b4.js.map +1 -0
- package/lib/admin-ui/3rdpartylicenses.txt +1393 -0
- package/lib/admin-ui/473.fc9f902d000ba044.js +2 -0
- package/lib/admin-ui/473.fc9f902d000ba044.js.map +1 -0
- package/lib/admin-ui/53.7f3fee856943b03f.js +86 -0
- package/lib/admin-ui/53.7f3fee856943b03f.js.map +1 -0
- package/lib/admin-ui/625.64b1900ed11327c1.js +46 -0
- package/lib/admin-ui/625.64b1900ed11327c1.js.map +1 -0
- package/lib/admin-ui/697.ff9c92dd4b564093.js +73 -0
- package/lib/admin-ui/697.ff9c92dd4b564093.js.map +1 -0
- package/lib/admin-ui/99.b9d2442a2288abdb.js +379 -0
- package/lib/admin-ui/99.b9d2442a2288abdb.js.map +1 -0
- package/lib/admin-ui/assets/.gitkeep +0 -0
- package/lib/admin-ui/assets/logo-login.webp +0 -0
- package/lib/admin-ui/assets/logo-top.webp +0 -0
- package/lib/admin-ui/common.868070cec3f2418e.js +2 -0
- package/lib/admin-ui/common.868070cec3f2418e.js.map +1 -0
- package/lib/admin-ui/deenruv-ui-config.json +290 -0
- package/lib/admin-ui/favicon.ico +0 -0
- package/lib/admin-ui/fonts/fonts.scss +253 -0
- package/lib/admin-ui/fonts/inter-cyrillic-ext.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-cyrillic.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-greek-ext.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-greek.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-latin-ext.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-latin.woff2 +0 -0
- package/lib/admin-ui/fonts/inter-vietnamese.woff2 +0 -0
- package/lib/admin-ui/i18n-messages/ar.json +814 -0
- package/lib/admin-ui/i18n-messages/cs.json +814 -0
- package/lib/admin-ui/i18n-messages/de.json +814 -0
- package/lib/admin-ui/i18n-messages/en.json +814 -0
- package/lib/admin-ui/i18n-messages/es.json +814 -0
- package/lib/admin-ui/i18n-messages/fa.json +814 -0
- package/lib/admin-ui/i18n-messages/fr.json +814 -0
- package/lib/admin-ui/i18n-messages/he.json +814 -0
- package/lib/admin-ui/i18n-messages/hr.json +814 -0
- package/lib/admin-ui/i18n-messages/it.json +814 -0
- package/lib/admin-ui/i18n-messages/nb.json +812 -0
- package/lib/admin-ui/i18n-messages/ne.json +814 -0
- package/lib/admin-ui/i18n-messages/pl.json +814 -0
- package/lib/admin-ui/i18n-messages/pt_BR.json +814 -0
- package/lib/admin-ui/i18n-messages/pt_PT.json +814 -0
- package/lib/admin-ui/i18n-messages/ru.json +814 -0
- package/lib/admin-ui/i18n-messages/sv.json +807 -0
- package/lib/admin-ui/i18n-messages/uk.json +814 -0
- package/lib/admin-ui/i18n-messages/zh_Hans.json +814 -0
- package/lib/admin-ui/i18n-messages/zh_Hant.json +814 -0
- package/lib/admin-ui/index.html +14 -0
- package/lib/admin-ui/inter-cyrillic-ext.f62cc866835dd717.woff2 +0 -0
- package/lib/admin-ui/inter-cyrillic.fd42267cbb1bfdb0.woff2 +0 -0
- package/lib/admin-ui/inter-greek-ext.f876a5a3ea45d9a5.woff2 +0 -0
- package/lib/admin-ui/inter-greek.0455348926d6f41d.woff2 +0 -0
- package/lib/admin-ui/inter-latin-ext.7df16007e26681f5.woff2 +0 -0
- package/lib/admin-ui/inter-latin.40c45725dc5f525d.woff2 +0 -0
- package/lib/admin-ui/inter-vietnamese.530676b65c9e977f.woff2 +0 -0
- package/lib/admin-ui/main.a1f6ce60f6b53c40.js +3241 -0
- package/lib/admin-ui/main.a1f6ce60f6b53c40.js.map +1 -0
- package/lib/admin-ui/polyfills.34e462102e9d0666.js +2 -0
- package/lib/admin-ui/polyfills.34e462102e9d0666.js.map +1 -0
- package/lib/admin-ui/polyfills.ts +66 -0
- package/lib/admin-ui/runtime.12183b5e8f8cfd14.js +2 -0
- package/lib/admin-ui/runtime.12183b5e8f8cfd14.js.map +1 -0
- package/lib/admin-ui/styles/_mixins.scss +60 -0
- package/lib/admin-ui/styles/_variables.scss +11 -0
- package/lib/admin-ui/styles/component/prosemirror.scss +511 -0
- package/lib/admin-ui/styles/global/_buttons.scss +147 -0
- package/lib/admin-ui/styles/global/_clarity.scss +140 -0
- package/lib/admin-ui/styles/global/_forms.scss +187 -0
- package/lib/admin-ui/styles/global/_global.scss +41 -0
- package/lib/admin-ui/styles/global/_overrides.scss +165 -0
- package/lib/admin-ui/styles/global/_sass-overrides.scss +8 -0
- package/lib/admin-ui/styles/global/_utilities.scss +155 -0
- package/lib/admin-ui/styles/rtl.scss +143 -0
- package/lib/admin-ui/styles/styles.scss +19 -0
- package/lib/admin-ui/styles/theme/dark.scss +591 -0
- package/lib/admin-ui/styles/theme/default.scss +254 -0
- package/lib/admin-ui/styles/ui-extension-theme.scss +13 -0
- package/lib/admin-ui/styles.2de83a2df5e76526.css +3 -0
- package/lib/admin-ui/styles.2de83a2df5e76526.css.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +18 -0
- package/lib/index.js.map +1 -0
- package/lib/src/api/metrics.resolver.d.ts +8 -0
- package/lib/src/api/metrics.resolver.js +41 -0
- package/lib/src/api/metrics.resolver.js.map +1 -0
- package/lib/src/config/metrics-strategies.d.ts +39 -0
- package/lib/src/config/metrics-strategies.js +92 -0
- package/lib/src/config/metrics-strategies.js.map +1 -0
- package/lib/src/constants.d.ts +7 -0
- package/lib/src/constants.js +286 -0
- package/lib/src/constants.js.map +1 -0
- package/lib/src/plugin.d.ts +129 -0
- package/lib/src/plugin.js +332 -0
- package/lib/src/plugin.js.map +1 -0
- package/lib/src/service/metrics.service.d.ts +16 -0
- package/lib/src/service/metrics.service.js +144 -0
- package/lib/src/service/metrics.service.js.map +1 -0
- package/lib/src/types.d.ts +23 -0
- package/lib/src/types.js +14 -0
- package/lib/src/types.js.map +1 -0
- package/package.json +42 -0
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./src/plugin";
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./src/plugin"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RequestContext } from "@deenruv/core";
|
|
2
|
+
import { MetricsService } from "../service/metrics.service";
|
|
3
|
+
import { MetricSummary, MetricSummaryInput } from "../types";
|
|
4
|
+
export declare class MetricsResolver {
|
|
5
|
+
private service;
|
|
6
|
+
constructor(service: MetricsService);
|
|
7
|
+
metricSummary(ctx: RequestContext, input: MetricSummaryInput): Promise<MetricSummary[]>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.MetricsResolver = void 0;
|
|
16
|
+
const graphql_1 = require("@nestjs/graphql");
|
|
17
|
+
const core_1 = require("@deenruv/core");
|
|
18
|
+
const metrics_service_1 = require("../service/metrics.service");
|
|
19
|
+
let MetricsResolver = class MetricsResolver {
|
|
20
|
+
constructor(service) {
|
|
21
|
+
this.service = service;
|
|
22
|
+
}
|
|
23
|
+
async metricSummary(ctx, input) {
|
|
24
|
+
return this.service.getMetrics(ctx, input);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
exports.MetricsResolver = MetricsResolver;
|
|
28
|
+
__decorate([
|
|
29
|
+
(0, graphql_1.Query)(),
|
|
30
|
+
(0, core_1.Allow)(core_1.Permission.ReadOrder),
|
|
31
|
+
__param(0, (0, core_1.Ctx)()),
|
|
32
|
+
__param(1, (0, graphql_1.Args)("input")),
|
|
33
|
+
__metadata("design:type", Function),
|
|
34
|
+
__metadata("design:paramtypes", [core_1.RequestContext, Object]),
|
|
35
|
+
__metadata("design:returntype", Promise)
|
|
36
|
+
], MetricsResolver.prototype, "metricSummary", null);
|
|
37
|
+
exports.MetricsResolver = MetricsResolver = __decorate([
|
|
38
|
+
(0, graphql_1.Resolver)(),
|
|
39
|
+
__metadata("design:paramtypes", [metrics_service_1.MetricsService])
|
|
40
|
+
], MetricsResolver);
|
|
41
|
+
//# sourceMappingURL=metrics.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.resolver.js","sourceRoot":"","sources":["../../../src/api/metrics.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAwD;AACxD,wCAAuE;AAEvE,gEAA4D;AAIrD,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YAAoB,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;IAAG,CAAC;IAIzC,AAAN,KAAK,CAAC,aAAa,CACV,GAAmB,EACX,KAAyB;QAExC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF,CAAA;AAXY,0CAAe;AAKpB;IAFL,IAAA,eAAK,GAAE;IACP,IAAA,YAAK,EAAC,iBAAU,CAAC,SAAS,CAAC;IAEzB,WAAA,IAAA,UAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;;qCADF,qBAAc;;oDAI3B;0BAVU,eAAe;IAD3B,IAAA,kBAAQ,GAAE;qCAEoB,gCAAc;GADhC,eAAe,CAW3B"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { RequestContext } from "@deenruv/core";
|
|
2
|
+
import { MetricData } from "../service/metrics.service";
|
|
3
|
+
import { MetricInterval, MetricSummaryEntry, MetricType } from "../types";
|
|
4
|
+
/**
|
|
5
|
+
* Calculate your metric data based on the given input.
|
|
6
|
+
* Be careful with heavy queries and calculations,
|
|
7
|
+
* as this function is executed everytime a user views its dashboard
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
10
|
+
export interface MetricCalculation {
|
|
11
|
+
type: MetricType;
|
|
12
|
+
getTitle(ctx: RequestContext): string;
|
|
13
|
+
calculateEntry(ctx: RequestContext, interval: MetricInterval, data: MetricData): MetricSummaryEntry;
|
|
14
|
+
}
|
|
15
|
+
export declare function getMonthName(monthNr: number): string;
|
|
16
|
+
/**
|
|
17
|
+
* Calculates the average order value per month/week
|
|
18
|
+
*/
|
|
19
|
+
export declare class AverageOrderValueMetric implements MetricCalculation {
|
|
20
|
+
readonly type = MetricType.AverageOrderValue;
|
|
21
|
+
getTitle(ctx: RequestContext): string;
|
|
22
|
+
calculateEntry(ctx: RequestContext, interval: MetricInterval, data: MetricData): MetricSummaryEntry;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Calculates number of orders
|
|
26
|
+
*/
|
|
27
|
+
export declare class OrderCountMetric implements MetricCalculation {
|
|
28
|
+
readonly type = MetricType.OrderCount;
|
|
29
|
+
getTitle(ctx: RequestContext): string;
|
|
30
|
+
calculateEntry(ctx: RequestContext, interval: MetricInterval, data: MetricData): MetricSummaryEntry;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Calculates order total
|
|
34
|
+
*/
|
|
35
|
+
export declare class OrderTotalMetric implements MetricCalculation {
|
|
36
|
+
readonly type = MetricType.OrderTotal;
|
|
37
|
+
getTitle(ctx: RequestContext): string;
|
|
38
|
+
calculateEntry(ctx: RequestContext, interval: MetricInterval, data: MetricData): MetricSummaryEntry;
|
|
39
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OrderTotalMetric = exports.OrderCountMetric = exports.AverageOrderValueMetric = exports.getMonthName = void 0;
|
|
4
|
+
const types_1 = require("../types");
|
|
5
|
+
function getMonthName(monthNr) {
|
|
6
|
+
const monthNames = [
|
|
7
|
+
"Jan",
|
|
8
|
+
"Feb",
|
|
9
|
+
"Mar",
|
|
10
|
+
"Apr",
|
|
11
|
+
"May",
|
|
12
|
+
"Jun",
|
|
13
|
+
"Jul",
|
|
14
|
+
"Aug",
|
|
15
|
+
"Sep",
|
|
16
|
+
"Oct",
|
|
17
|
+
"Nov",
|
|
18
|
+
"Dec",
|
|
19
|
+
];
|
|
20
|
+
return monthNames[monthNr];
|
|
21
|
+
}
|
|
22
|
+
exports.getMonthName = getMonthName;
|
|
23
|
+
/**
|
|
24
|
+
* Calculates the average order value per month/week
|
|
25
|
+
*/
|
|
26
|
+
class AverageOrderValueMetric {
|
|
27
|
+
constructor() {
|
|
28
|
+
this.type = types_1.MetricType.AverageOrderValue;
|
|
29
|
+
}
|
|
30
|
+
getTitle(ctx) {
|
|
31
|
+
return "average-order-value";
|
|
32
|
+
}
|
|
33
|
+
calculateEntry(ctx, interval, data) {
|
|
34
|
+
const label = data.date.toISOString();
|
|
35
|
+
if (!data.orders.length) {
|
|
36
|
+
return {
|
|
37
|
+
label,
|
|
38
|
+
value: 0,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
const total = data.orders
|
|
42
|
+
.map((o) => o.totalWithTax)
|
|
43
|
+
.reduce((_total, current) => _total + current);
|
|
44
|
+
const average = Math.round(total / data.orders.length);
|
|
45
|
+
return {
|
|
46
|
+
label,
|
|
47
|
+
value: average,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.AverageOrderValueMetric = AverageOrderValueMetric;
|
|
52
|
+
/**
|
|
53
|
+
* Calculates number of orders
|
|
54
|
+
*/
|
|
55
|
+
class OrderCountMetric {
|
|
56
|
+
constructor() {
|
|
57
|
+
this.type = types_1.MetricType.OrderCount;
|
|
58
|
+
}
|
|
59
|
+
getTitle(ctx) {
|
|
60
|
+
return "order-count";
|
|
61
|
+
}
|
|
62
|
+
calculateEntry(ctx, interval, data) {
|
|
63
|
+
const label = data.date.toISOString();
|
|
64
|
+
return {
|
|
65
|
+
label,
|
|
66
|
+
value: data.orders.length,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.OrderCountMetric = OrderCountMetric;
|
|
71
|
+
/**
|
|
72
|
+
* Calculates order total
|
|
73
|
+
*/
|
|
74
|
+
class OrderTotalMetric {
|
|
75
|
+
constructor() {
|
|
76
|
+
this.type = types_1.MetricType.OrderTotal;
|
|
77
|
+
}
|
|
78
|
+
getTitle(ctx) {
|
|
79
|
+
return "order-totals";
|
|
80
|
+
}
|
|
81
|
+
calculateEntry(ctx, interval, data) {
|
|
82
|
+
const label = data.date.toISOString();
|
|
83
|
+
return {
|
|
84
|
+
label,
|
|
85
|
+
value: data.orders
|
|
86
|
+
.map((o) => o.totalWithTax)
|
|
87
|
+
.reduce((_total, current) => _total + current, 0),
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.OrderTotalMetric = OrderTotalMetric;
|
|
92
|
+
//# sourceMappingURL=metrics-strategies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics-strategies.js","sourceRoot":"","sources":["../../../src/config/metrics-strategies.ts"],"names":[],"mappings":";;;AAGA,oCAA0E;AAoB1E,SAAgB,YAAY,CAAC,OAAe;IAC1C,MAAM,UAAU,GAAG;QACjB,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;KACN,CAAC;IACF,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAhBD,oCAgBC;AAED;;GAEG;AACH,MAAa,uBAAuB;IAApC;QACW,SAAI,GAAG,kBAAU,CAAC,iBAAiB,CAAC;IA2B/C,CAAC;IAzBC,QAAQ,CAAC,GAAmB;QAC1B,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,cAAc,CACZ,GAAmB,EACnB,QAAwB,EACxB,IAAgB;QAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO;gBACL,KAAK;gBACL,KAAK,EAAE,CAAC;aACT,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;aAC1B,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvD,OAAO;YACL,KAAK;YACL,KAAK,EAAE,OAAO;SACf,CAAC;IACJ,CAAC;CACF;AA5BD,0DA4BC;AAED;;GAEG;AACH,MAAa,gBAAgB;IAA7B;QACW,SAAI,GAAG,kBAAU,CAAC,UAAU,CAAC;IAiBxC,CAAC;IAfC,QAAQ,CAAC,GAAmB;QAC1B,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,cAAc,CACZ,GAAmB,EACnB,QAAwB,EACxB,IAAgB;QAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO;YACL,KAAK;YACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC1B,CAAC;IACJ,CAAC;CACF;AAlBD,4CAkBC;AACD;;GAEG;AACH,MAAa,gBAAgB;IAA7B;QACW,SAAI,GAAG,kBAAU,CAAC,UAAU,CAAC;IAmBxC,CAAC;IAjBC,QAAQ,CAAC,GAAmB;QAC1B,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,cAAc,CACZ,GAAmB,EACnB,QAAwB,EACxB,IAAgB;QAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO;YACL,KAAK;YACL,KAAK,EAAE,IAAI,CAAC,MAAM;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;iBAC1B,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,CAAC;SACpD,CAAC;IACJ,CAAC;CACF;AApBD,4CAoBC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { LanguageCode } from "@deenruv/core";
|
|
2
|
+
export declare const DEFAULT_APP_PATH: string;
|
|
3
|
+
export declare const loggerCtx = "AdminUiPlugin";
|
|
4
|
+
export declare const defaultLanguage = LanguageCode.en;
|
|
5
|
+
export declare const defaultLocale: undefined;
|
|
6
|
+
export declare const defaultAvailableLanguages: LanguageCode[];
|
|
7
|
+
export declare const defaultAvailableLocales: string[];
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.defaultAvailableLocales = exports.defaultAvailableLanguages = exports.defaultLocale = exports.defaultLanguage = exports.loggerCtx = exports.DEFAULT_APP_PATH = void 0;
|
|
7
|
+
const core_1 = require("@deenruv/core");
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
exports.DEFAULT_APP_PATH = path_1.default.join(__dirname, "../admin-ui");
|
|
10
|
+
exports.loggerCtx = "AdminUiPlugin";
|
|
11
|
+
exports.defaultLanguage = core_1.LanguageCode.en;
|
|
12
|
+
exports.defaultLocale = undefined;
|
|
13
|
+
exports.defaultAvailableLanguages = [
|
|
14
|
+
core_1.LanguageCode.he,
|
|
15
|
+
core_1.LanguageCode.ar,
|
|
16
|
+
core_1.LanguageCode.de,
|
|
17
|
+
core_1.LanguageCode.en,
|
|
18
|
+
core_1.LanguageCode.es,
|
|
19
|
+
core_1.LanguageCode.pl,
|
|
20
|
+
core_1.LanguageCode.zh_Hans,
|
|
21
|
+
core_1.LanguageCode.zh_Hant,
|
|
22
|
+
core_1.LanguageCode.pt_BR,
|
|
23
|
+
core_1.LanguageCode.pt_PT,
|
|
24
|
+
core_1.LanguageCode.cs,
|
|
25
|
+
core_1.LanguageCode.fr,
|
|
26
|
+
core_1.LanguageCode.ru,
|
|
27
|
+
core_1.LanguageCode.uk,
|
|
28
|
+
core_1.LanguageCode.it,
|
|
29
|
+
core_1.LanguageCode.fa,
|
|
30
|
+
core_1.LanguageCode.ne,
|
|
31
|
+
core_1.LanguageCode.hr,
|
|
32
|
+
core_1.LanguageCode.sv,
|
|
33
|
+
core_1.LanguageCode.nb,
|
|
34
|
+
];
|
|
35
|
+
exports.defaultAvailableLocales = [
|
|
36
|
+
"AF",
|
|
37
|
+
"AL",
|
|
38
|
+
"DZ",
|
|
39
|
+
"AS",
|
|
40
|
+
"AD",
|
|
41
|
+
"AO",
|
|
42
|
+
"AI",
|
|
43
|
+
"AQ",
|
|
44
|
+
"AG",
|
|
45
|
+
"AR",
|
|
46
|
+
"AM",
|
|
47
|
+
"AW",
|
|
48
|
+
"AU",
|
|
49
|
+
"AT",
|
|
50
|
+
"AZ",
|
|
51
|
+
"BS",
|
|
52
|
+
"BH",
|
|
53
|
+
"BD",
|
|
54
|
+
"BB",
|
|
55
|
+
"BY",
|
|
56
|
+
"BE",
|
|
57
|
+
"BZ",
|
|
58
|
+
"BJ",
|
|
59
|
+
"BM",
|
|
60
|
+
"BT",
|
|
61
|
+
"BO",
|
|
62
|
+
"BQ",
|
|
63
|
+
"BA",
|
|
64
|
+
"BW",
|
|
65
|
+
"BV",
|
|
66
|
+
"BR",
|
|
67
|
+
"IO",
|
|
68
|
+
"BN",
|
|
69
|
+
"BG",
|
|
70
|
+
"BF",
|
|
71
|
+
"BI",
|
|
72
|
+
"CV",
|
|
73
|
+
"KH",
|
|
74
|
+
"CM",
|
|
75
|
+
"CA",
|
|
76
|
+
"KY",
|
|
77
|
+
"CF",
|
|
78
|
+
"TD",
|
|
79
|
+
"CL",
|
|
80
|
+
"CN",
|
|
81
|
+
"CX",
|
|
82
|
+
"CC",
|
|
83
|
+
"CO",
|
|
84
|
+
"KM",
|
|
85
|
+
"CD",
|
|
86
|
+
"CG",
|
|
87
|
+
"CK",
|
|
88
|
+
"CR",
|
|
89
|
+
"HR",
|
|
90
|
+
"CU",
|
|
91
|
+
"CW",
|
|
92
|
+
"CY",
|
|
93
|
+
"CZ",
|
|
94
|
+
"CI",
|
|
95
|
+
"DK",
|
|
96
|
+
"DJ",
|
|
97
|
+
"DM",
|
|
98
|
+
"DO",
|
|
99
|
+
"EC",
|
|
100
|
+
"EG",
|
|
101
|
+
"SV",
|
|
102
|
+
"GQ",
|
|
103
|
+
"ER",
|
|
104
|
+
"EE",
|
|
105
|
+
"SZ",
|
|
106
|
+
"ET",
|
|
107
|
+
"FK",
|
|
108
|
+
"FO",
|
|
109
|
+
"FJ",
|
|
110
|
+
"FI",
|
|
111
|
+
"FR",
|
|
112
|
+
"GF",
|
|
113
|
+
"PF",
|
|
114
|
+
"TF",
|
|
115
|
+
"GA",
|
|
116
|
+
"GM",
|
|
117
|
+
"GE",
|
|
118
|
+
"DE",
|
|
119
|
+
"GH",
|
|
120
|
+
"GI",
|
|
121
|
+
"GR",
|
|
122
|
+
"GL",
|
|
123
|
+
"GD",
|
|
124
|
+
"GP",
|
|
125
|
+
"GU",
|
|
126
|
+
"GT",
|
|
127
|
+
"GG",
|
|
128
|
+
"GN",
|
|
129
|
+
"GW",
|
|
130
|
+
"GY",
|
|
131
|
+
"HT",
|
|
132
|
+
"HM",
|
|
133
|
+
"VA",
|
|
134
|
+
"HN",
|
|
135
|
+
"HK",
|
|
136
|
+
"HU",
|
|
137
|
+
"IS",
|
|
138
|
+
"IN",
|
|
139
|
+
"ID",
|
|
140
|
+
"IR",
|
|
141
|
+
"IQ",
|
|
142
|
+
"IE",
|
|
143
|
+
"IM",
|
|
144
|
+
"IL",
|
|
145
|
+
"IT",
|
|
146
|
+
"JM",
|
|
147
|
+
"JP",
|
|
148
|
+
"JE",
|
|
149
|
+
"JO",
|
|
150
|
+
"KZ",
|
|
151
|
+
"KE",
|
|
152
|
+
"KI",
|
|
153
|
+
"KP",
|
|
154
|
+
"KR",
|
|
155
|
+
"KW",
|
|
156
|
+
"KG",
|
|
157
|
+
"LA",
|
|
158
|
+
"LV",
|
|
159
|
+
"LB",
|
|
160
|
+
"LS",
|
|
161
|
+
"LR",
|
|
162
|
+
"LY",
|
|
163
|
+
"LI",
|
|
164
|
+
"LT",
|
|
165
|
+
"LU",
|
|
166
|
+
"MO",
|
|
167
|
+
"MG",
|
|
168
|
+
"MW",
|
|
169
|
+
"MY",
|
|
170
|
+
"MV",
|
|
171
|
+
"ML",
|
|
172
|
+
"MT",
|
|
173
|
+
"MH",
|
|
174
|
+
"MQ",
|
|
175
|
+
"MR",
|
|
176
|
+
"MU",
|
|
177
|
+
"YT",
|
|
178
|
+
"MX",
|
|
179
|
+
"FM",
|
|
180
|
+
"MD",
|
|
181
|
+
"MC",
|
|
182
|
+
"MN",
|
|
183
|
+
"ME",
|
|
184
|
+
"MS",
|
|
185
|
+
"MA",
|
|
186
|
+
"MZ",
|
|
187
|
+
"MM",
|
|
188
|
+
"NA",
|
|
189
|
+
"NR",
|
|
190
|
+
"NP",
|
|
191
|
+
"NL",
|
|
192
|
+
"NC",
|
|
193
|
+
"NZ",
|
|
194
|
+
"NI",
|
|
195
|
+
"NE",
|
|
196
|
+
"NG",
|
|
197
|
+
"NU",
|
|
198
|
+
"NF",
|
|
199
|
+
"MK",
|
|
200
|
+
"MP",
|
|
201
|
+
"NO",
|
|
202
|
+
"OM",
|
|
203
|
+
"PK",
|
|
204
|
+
"PW",
|
|
205
|
+
"PS",
|
|
206
|
+
"PA",
|
|
207
|
+
"PG",
|
|
208
|
+
"PY",
|
|
209
|
+
"PE",
|
|
210
|
+
"PH",
|
|
211
|
+
"PN",
|
|
212
|
+
"PL",
|
|
213
|
+
"PT",
|
|
214
|
+
"PR",
|
|
215
|
+
"QA",
|
|
216
|
+
"RO",
|
|
217
|
+
"RU",
|
|
218
|
+
"RW",
|
|
219
|
+
"RE",
|
|
220
|
+
"BL",
|
|
221
|
+
"SH",
|
|
222
|
+
"KN",
|
|
223
|
+
"LC",
|
|
224
|
+
"MF",
|
|
225
|
+
"PM",
|
|
226
|
+
"VC",
|
|
227
|
+
"WS",
|
|
228
|
+
"SM",
|
|
229
|
+
"ST",
|
|
230
|
+
"SA",
|
|
231
|
+
"SN",
|
|
232
|
+
"RS",
|
|
233
|
+
"SC",
|
|
234
|
+
"SL",
|
|
235
|
+
"SG",
|
|
236
|
+
"SX",
|
|
237
|
+
"SK",
|
|
238
|
+
"SI",
|
|
239
|
+
"SB",
|
|
240
|
+
"SO",
|
|
241
|
+
"ZA",
|
|
242
|
+
"GS",
|
|
243
|
+
"SS",
|
|
244
|
+
"ES",
|
|
245
|
+
"LK",
|
|
246
|
+
"SD",
|
|
247
|
+
"SR",
|
|
248
|
+
"SJ",
|
|
249
|
+
"SE",
|
|
250
|
+
"CH",
|
|
251
|
+
"SY",
|
|
252
|
+
"TW",
|
|
253
|
+
"TJ",
|
|
254
|
+
"TZ",
|
|
255
|
+
"TH",
|
|
256
|
+
"TL",
|
|
257
|
+
"TG",
|
|
258
|
+
"TK",
|
|
259
|
+
"TO",
|
|
260
|
+
"TT",
|
|
261
|
+
"TN",
|
|
262
|
+
"TR",
|
|
263
|
+
"TM",
|
|
264
|
+
"TC",
|
|
265
|
+
"TV",
|
|
266
|
+
"UG",
|
|
267
|
+
"UA",
|
|
268
|
+
"AE",
|
|
269
|
+
"GB",
|
|
270
|
+
"UM",
|
|
271
|
+
"US",
|
|
272
|
+
"UY",
|
|
273
|
+
"UZ",
|
|
274
|
+
"VU",
|
|
275
|
+
"VE",
|
|
276
|
+
"VN",
|
|
277
|
+
"VG",
|
|
278
|
+
"VI",
|
|
279
|
+
"WF",
|
|
280
|
+
"EH",
|
|
281
|
+
"YE",
|
|
282
|
+
"ZM",
|
|
283
|
+
"ZW",
|
|
284
|
+
"AX",
|
|
285
|
+
];
|
|
286
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;;;;AAAA,wCAA6C;AAC7C,gDAAwB;AAEX,QAAA,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AACvD,QAAA,SAAS,GAAG,eAAe,CAAC;AAC5B,QAAA,eAAe,GAAG,mBAAY,CAAC,EAAE,CAAC;AAClC,QAAA,aAAa,GAAG,SAAS,CAAC;AAE1B,QAAA,yBAAyB,GAAG;IACvC,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,OAAO;IACpB,mBAAY,CAAC,OAAO;IACpB,mBAAY,CAAC,KAAK;IAClB,mBAAY,CAAC,KAAK;IAClB,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;IACf,mBAAY,CAAC,EAAE;CAChB,CAAC;AAEW,QAAA,uBAAuB,GAAG;IACrC,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;CACL,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { MiddlewareConsumer, NestModule } from "@nestjs/common";
|
|
2
|
+
import { AdminUiAppConfig, AdminUiAppDevModeConfig, AdminUiConfig, Type } from "@deenruv/common/lib/shared-types";
|
|
3
|
+
import { ConfigService, ProcessContext } from "@deenruv/core";
|
|
4
|
+
/**
|
|
5
|
+
* @description
|
|
6
|
+
* Configuration options for the {@link AdminUiPlugin}.
|
|
7
|
+
*
|
|
8
|
+
* @docsCategory core plugins/AdminUiPlugin
|
|
9
|
+
*/
|
|
10
|
+
export interface AdminUiPluginOptions {
|
|
11
|
+
/**
|
|
12
|
+
* @description
|
|
13
|
+
* The route to the Admin UI.
|
|
14
|
+
*
|
|
15
|
+
* Note: If you are using the `compileUiExtensions` function to compile a custom version of the Admin UI, then
|
|
16
|
+
* the route should match the `baseHref` option passed to that function. The default value of `baseHref` is `/admin/`,
|
|
17
|
+
* so it only needs to be changed if you set this `route` option to something other than `"admin"`.
|
|
18
|
+
*/
|
|
19
|
+
route: string;
|
|
20
|
+
/**
|
|
21
|
+
* @description
|
|
22
|
+
* The port on which the server will listen. This port will be proxied by the AdminUiPlugin to the same port that
|
|
23
|
+
* the Deenruv server is running on.
|
|
24
|
+
*/
|
|
25
|
+
port: number;
|
|
26
|
+
/**
|
|
27
|
+
* @description
|
|
28
|
+
* The hostname of the server serving the static admin ui files.
|
|
29
|
+
*
|
|
30
|
+
* @default 'localhost'
|
|
31
|
+
*/
|
|
32
|
+
hostname?: string;
|
|
33
|
+
/**
|
|
34
|
+
* @description
|
|
35
|
+
* By default, the AdminUiPlugin comes bundles with a pre-built version of the
|
|
36
|
+
* Admin UI. This option can be used to override this default build with a different
|
|
37
|
+
* version, e.g. one pre-compiled with one or more ui extensions.
|
|
38
|
+
*/
|
|
39
|
+
app?: AdminUiAppConfig | AdminUiAppDevModeConfig;
|
|
40
|
+
/**
|
|
41
|
+
* @description
|
|
42
|
+
* Allows the contents of the `deenruv-ui-config.json` file to be set, e.g.
|
|
43
|
+
* for specifying the Deenruv GraphQL API host, available UI languages, etc.
|
|
44
|
+
*/
|
|
45
|
+
adminUiConfig?: Partial<AdminUiConfig>;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* @description
|
|
49
|
+
* This plugin starts a static server for the Admin UI app, and proxies it via the `/admin/` path of the main Deenruv server.
|
|
50
|
+
*
|
|
51
|
+
* The Admin UI allows you to administer all aspects of your store, from inventory management to order tracking. It is the tool used by
|
|
52
|
+
* store administrators on a day-to-day basis for the management of the store.
|
|
53
|
+
*
|
|
54
|
+
* ## Installation
|
|
55
|
+
*
|
|
56
|
+
* `yarn add \@deenruv/admin-ui-plugin`
|
|
57
|
+
*
|
|
58
|
+
* or
|
|
59
|
+
*
|
|
60
|
+
* `npm install \@deenruv/admin-ui-plugin`
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* import { AdminUiPlugin } from '\@deenruv/admin-ui-plugin';
|
|
65
|
+
*
|
|
66
|
+
* const config: DeenruvConfig = {
|
|
67
|
+
* // Add an instance of the plugin to the plugins array
|
|
68
|
+
* plugins: [
|
|
69
|
+
* AdminUiPlugin.init({ port: 3002 }),
|
|
70
|
+
* ],
|
|
71
|
+
* };
|
|
72
|
+
* ```
|
|
73
|
+
*
|
|
74
|
+
* ## Metrics
|
|
75
|
+
*
|
|
76
|
+
* This plugin also defines a `metricSummary` query which is used by the Admin UI to display the order metrics on the dashboard.
|
|
77
|
+
*
|
|
78
|
+
* If you are building a stand-alone version of the Admin UI app, and therefore don't need this plugin to server the Admin UI,
|
|
79
|
+
* you can still use the `metricSummary` query by adding the `AdminUiPlugin` to the `plugins` array, but without calling the `init()` method:
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* import { AdminUiPlugin } from '\@deenruv/admin-ui-plugin';
|
|
84
|
+
*
|
|
85
|
+
* const config: DeenruvConfig = {
|
|
86
|
+
* plugins: [
|
|
87
|
+
* AdminUiPlugin, // <-- no call to .init()
|
|
88
|
+
* ],
|
|
89
|
+
* // ...
|
|
90
|
+
* };
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* @docsCategory core plugins/AdminUiPlugin
|
|
94
|
+
*/
|
|
95
|
+
export declare class AdminUiPlugin implements NestModule {
|
|
96
|
+
private configService;
|
|
97
|
+
private processContext;
|
|
98
|
+
private static options;
|
|
99
|
+
constructor(configService: ConfigService, processContext: ProcessContext);
|
|
100
|
+
/**
|
|
101
|
+
* @description
|
|
102
|
+
* Set the plugin options
|
|
103
|
+
*/
|
|
104
|
+
static init(options: AdminUiPluginOptions): Type<AdminUiPlugin>;
|
|
105
|
+
configure(consumer: MiddlewareConsumer): Promise<void>;
|
|
106
|
+
private createStaticServer;
|
|
107
|
+
/**
|
|
108
|
+
* Takes an optional AdminUiConfig provided in the plugin options, and returns a complete
|
|
109
|
+
* config object for writing to disk.
|
|
110
|
+
*/
|
|
111
|
+
private getAdminUiConfig;
|
|
112
|
+
/**
|
|
113
|
+
* Overwrites the parts of the admin-ui app's `deenruv-ui-config.json` file relating to connecting to
|
|
114
|
+
* the server admin API.
|
|
115
|
+
*/
|
|
116
|
+
private overwriteAdminUiConfig;
|
|
117
|
+
/**
|
|
118
|
+
* Overwrites the parts of the admin-ui app's `deenruv-ui-config.json` file relating to connecting to
|
|
119
|
+
* the server admin API.
|
|
120
|
+
*/
|
|
121
|
+
private overwriteBaseHref;
|
|
122
|
+
/**
|
|
123
|
+
* It might be that the ui-devkit compiler has not yet copied the config
|
|
124
|
+
* file to the expected location (particularly when running in watch mode),
|
|
125
|
+
* so polling is used to check multiple times with a delay.
|
|
126
|
+
*/
|
|
127
|
+
private pollForFile;
|
|
128
|
+
private static isDevModeApp;
|
|
129
|
+
}
|