unleash-server 4.18.7 → 4.18.9
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 +4 -4
- package/dist/lib/create-config.js +1 -0
- package/dist/lib/create-config.js.map +1 -1
- package/dist/lib/middleware/cors-origin-middleware.d.ts +2 -2
- package/dist/lib/middleware/cors-origin-middleware.js +16 -9
- package/dist/lib/middleware/cors-origin-middleware.js.map +1 -1
- package/dist/lib/middleware/cors-origin-middleware.test.js +69 -31
- package/dist/lib/middleware/cors-origin-middleware.test.js.map +1 -1
- package/dist/lib/routes/admin-api/config.d.ts +2 -1
- package/dist/lib/routes/admin-api/config.js +4 -3
- package/dist/lib/routes/admin-api/config.js.map +1 -1
- package/dist/lib/server-impl.js +1 -0
- package/dist/lib/server-impl.js.map +1 -1
- package/dist/lib/services/index.js +1 -0
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/proxy-service.d.ts +9 -2
- package/dist/lib/services/proxy-service.js +35 -1
- package/dist/lib/services/proxy-service.js.map +1 -1
- package/dist/lib/services/setting-service.d.ts +0 -4
- package/dist/lib/services/setting-service.js +2 -29
- package/dist/lib/services/setting-service.js.map +1 -1
- package/dist/test/e2e/api/admin/config.e2e.test.js +1 -1
- package/dist/test/e2e/api/admin/config.e2e.test.js.map +1 -1
- package/dist/test/e2e/helpers/test-helper.js +1 -0
- package/dist/test/e2e/helpers/test-helper.js.map +1 -1
- package/frontend/build/index.html +1 -1
- package/frontend/build/static/{FeatureMetricsChart.3d538f46.js → FeatureMetricsChart.75043d24.js} +1 -1
- package/frontend/build/static/{Playground.50b68fc1.js → Playground.c8586700.js} +1 -1
- package/frontend/build/static/{index.5704f77b.js → index.cbbd072f.js} +2 -2
- package/package.json +1 -1
|
@@ -1,30 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
const events_1 = require("../types/events");
|
|
7
|
-
const validateOrigin_1 = require("../util/validateOrigin");
|
|
8
|
-
const frontend_settings_1 = require("../types/settings/frontend-settings");
|
|
9
|
-
const bad_data_error_1 = __importDefault(require("../error/bad-data-error"));
|
|
10
4
|
class SettingService {
|
|
11
5
|
constructor({ settingStore, eventStore, }, config) {
|
|
12
|
-
// SettingService.getFrontendSettings is called on every request to the
|
|
13
|
-
// frontend API. Keep fetched settings in a cache for fewer DB queries.
|
|
14
|
-
this.cache = new Map();
|
|
15
6
|
this.config = config;
|
|
16
7
|
this.logger = config.getLogger('services/setting-service.ts');
|
|
17
8
|
this.settingStore = settingStore;
|
|
18
9
|
this.eventStore = eventStore;
|
|
19
10
|
}
|
|
20
11
|
async get(id, defaultValue) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
return this.cache.get(id) || defaultValue;
|
|
12
|
+
const value = await this.settingStore.get(id);
|
|
13
|
+
return value || defaultValue;
|
|
25
14
|
}
|
|
26
15
|
async insert(id, value, createdBy) {
|
|
27
|
-
this.cache.delete(id);
|
|
28
16
|
const exists = await this.settingStore.exists(id);
|
|
29
17
|
if (exists) {
|
|
30
18
|
await this.settingStore.updateRow(id, value);
|
|
@@ -42,7 +30,6 @@ class SettingService {
|
|
|
42
30
|
}
|
|
43
31
|
}
|
|
44
32
|
async delete(id, createdBy) {
|
|
45
|
-
this.cache.delete(id);
|
|
46
33
|
await this.settingStore.delete(id);
|
|
47
34
|
await this.eventStore.store(new events_1.SettingDeletedEvent({
|
|
48
35
|
createdBy,
|
|
@@ -52,22 +39,8 @@ class SettingService {
|
|
|
52
39
|
}));
|
|
53
40
|
}
|
|
54
41
|
async deleteAll() {
|
|
55
|
-
this.cache.clear();
|
|
56
42
|
await this.settingStore.deleteAll();
|
|
57
43
|
}
|
|
58
|
-
async setFrontendSettings(value, createdBy) {
|
|
59
|
-
const error = (0, validateOrigin_1.validateOrigins)(value.frontendApiOrigins);
|
|
60
|
-
if (error) {
|
|
61
|
-
throw new bad_data_error_1.default(error);
|
|
62
|
-
}
|
|
63
|
-
await this.insert(frontend_settings_1.frontendSettingsKey, value, createdBy);
|
|
64
|
-
}
|
|
65
|
-
async getFrontendSettings() {
|
|
66
|
-
return this.get(frontend_settings_1.frontendSettingsKey, {
|
|
67
|
-
frontendApiOrigins: this.config.frontendApiOrigins,
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
44
|
}
|
|
71
45
|
exports.default = SettingService;
|
|
72
|
-
module.exports = SettingService;
|
|
73
46
|
//# sourceMappingURL=setting-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setting-service.js","sourceRoot":"","sources":["../../../src/lib/services/setting-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setting-service.js","sourceRoot":"","sources":["../../../src/lib/services/setting-service.ts"],"names":[],"mappings":";;AAKA,4CAIyB;AAEzB,MAAqB,cAAc;IAS/B,YACI,EACI,YAAY,EACZ,UAAU,GACwC,EACtD,MAAsB;QAEtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,EAAU,EAAE,YAAgB;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,KAAK,IAAI,YAAY,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAa,EAAE,SAAiB;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,MAAM,EAAE;YACR,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,4BAAmB,CAAC;gBACpB,SAAS;gBACT,IAAI,EAAE,EAAE,EAAE,EAAE;aACf,CAAC,CACL,CAAC;SACL;aAAM;YACH,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,4BAAmB,CAAC;gBACpB,SAAS;gBACT,IAAI,EAAE,EAAE,EAAE,EAAE;aACf,CAAC,CACL,CAAC;SACL;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,SAAiB;QACtC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CACvB,IAAI,4BAAmB,CAAC;YACpB,SAAS;YACT,IAAI,EAAE;gBACF,EAAE;aACL;SACJ,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;IACxC,CAAC;CACJ;AA/DD,iCA+DC"}
|
|
@@ -42,7 +42,7 @@ test('gets ui config with disablePasswordAuth', async () => {
|
|
|
42
42
|
});
|
|
43
43
|
test('gets ui config with frontendSettings', async () => {
|
|
44
44
|
const frontendApiOrigins = ['https://example.net'];
|
|
45
|
-
await app.services.
|
|
45
|
+
await app.services.proxyService.setFrontendSettings({ frontendApiOrigins }, (0, random_id_1.randomId)());
|
|
46
46
|
await app.request
|
|
47
47
|
.get('/api/admin/ui-config')
|
|
48
48
|
.expect('Content-Type', /json/)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/config.e2e.test.ts"],"names":[],"mappings":";;;;;AAAA,gFAA8D;AAC9D,2DAAmE;AACnE,4EAAoD;AACpD,8FAA4F;AAC5F,8DAA0D;AAE1D,IAAI,EAAW,CAAC;AAChB,IAAI,GAAiB,CAAC;AAEtB,SAAS,CAAC,KAAK,IAAI,EAAE;IACjB,EAAE,GAAG,MAAM,IAAA,uBAAM,EAAC,mBAAmB,EAAE,mBAAS,CAAC,CAAC;IAClD,GAAG,GAAG,MAAM,IAAA,sBAAQ,EAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;IAChB,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;AAClD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO;SAC7B,GAAG,CAAC,sBAAsB,CAAC;SAC3B,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACtD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,4CAAqB,EAAE;QACvD,QAAQ,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO;SAC7B,GAAG,CAAC,sBAAsB,CAAC;SAC3B,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;SAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,kBAAkB,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnD,MAAM,GAAG,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"config.e2e.test.js","sourceRoot":"","sources":["../../../../../src/test/e2e/api/admin/config.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,6 +35,7 @@ async function createApp(stores, adminAuthentication = option_1.IAuthType.NONE,
|
|
|
35
35
|
services.clientInstanceService.destroy();
|
|
36
36
|
services.clientMetricsServiceV2.destroy();
|
|
37
37
|
services.apiTokenService.destroy();
|
|
38
|
+
services.proxyService.destroy();
|
|
38
39
|
};
|
|
39
40
|
// TODO: use create from server-impl instead?
|
|
40
41
|
return { request, destroy, services, config };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-helper.js","sourceRoot":"","sources":["../../../../src/test/e2e/helpers/test-helper.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAsE;AACtE,0DAAkC;AAElC,oDAAkC;AAClC,2DAAsC;AACtC,0DAA4D;AAC5D,sDAAsE;AACtE,oDAAuD;AACvD,oFAA2D;AAI3D,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC;AAS9B,KAAK,UAAU,SAAS,CACpB,MAAM,EACN,mBAAmB,GAAG,kBAAS,CAAC,IAAI,EACpC,OAAkB,EAClB,aAAmB;IAEnB,MAAM,MAAM,GAAG,IAAA,8BAAgB,EAAC;QAC5B,cAAc,EAAE;YACZ,IAAI,EAAE,mBAAmB;YACzB,iBAAiB,EAAE,OAAO;SAC7B;QACD,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;SACtC;QACD,GAAG,aAAa;KACnB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,IAAA,oBAAS,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,gBAAY,EAAE,CAAC;IACnC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,IAAA,aAAM,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,mBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACvB,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAClC,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACzC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC1C,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"test-helper.js","sourceRoot":"","sources":["../../../../src/test/e2e/helpers/test-helper.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAsE;AACtE,0DAAkC;AAElC,oDAAkC;AAClC,2DAAsC;AACtC,0DAA4D;AAC5D,sDAAsE;AACtE,oDAAuD;AACvD,oFAA2D;AAI3D,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC;AAS9B,KAAK,UAAU,SAAS,CACpB,MAAM,EACN,mBAAmB,GAAG,kBAAS,CAAC,IAAI,EACpC,OAAkB,EAClB,aAAmB;IAEnB,MAAM,MAAM,GAAG,IAAA,8BAAgB,EAAC;QAC5B,cAAc,EAAE;YACZ,IAAI,EAAE,mBAAmB;YACzB,iBAAiB,EAAE,OAAO;SAC7B;QACD,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;SACtC;QACD,GAAG,aAAa;KACnB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,IAAA,oBAAS,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,gBAAY,EAAE,CAAC;IACnC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,IAAA,aAAM,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,mBAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACvB,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAClC,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACzC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC1C,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QACnC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC,CAAC;IAEF,6CAA6C;IAC7C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAClD,CAAC;AAEM,KAAK,UAAU,QAAQ,CAAC,MAAsB;IACjD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAFD,4BAEC;AAEM,KAAK,UAAU,wBAAwB,CAC1C,MAAsB,EACtB,aAAkB;IAElB,OAAO,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AAClE,CAAC;AALD,4DAKC;AAEM,KAAK,UAAU,gBAAgB,CAClC,MAAsB,EACtB,aAAmB;IAEnB,OAAO,SAAS,CAAC,MAAM,EAAE,kBAAS,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AACvE,CAAC;AALD,4CAKC;AAEM,KAAK,UAAU,sBAAsB,CACxC,MAAsB,EACtB,OAAiB;IAEjB,OAAO,SAAS,CAAC,MAAM,EAAE,kBAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC;AALD,wDAKC;AACM,KAAK,UAAU,mBAAmB,CACrC,MAAsB;IAEtB,OAAO,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE;QAC3C,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;YACnC,WAAW,EAAE,SAAS;SACzB;KACJ,CAAC,CAAC;AACP,CAAC;AATD,kDASC"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
href="https://fonts.googleapis.com/css2?family=Sen:wght@400;700;800&display=swap"
|
|
17
17
|
rel="stylesheet"
|
|
18
18
|
/>
|
|
19
|
-
<script type="module" crossorigin src="/static/index.
|
|
19
|
+
<script type="module" crossorigin src="/static/index.cbbd072f.js"></script>
|
|
20
20
|
<link rel="stylesheet" href="/static/index.8ff70acc.css">
|
|
21
21
|
</head>
|
|
22
22
|
<body>
|