@lilaquadrat/studio 2.4.42 → 3.0.1
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/lib/interfaces.d.ts +3 -2
- package/lib/interfaces.d.ts.map +1 -1
- package/lib/interfaces.js.map +1 -1
- package/lib/main.d.ts +2 -2
- package/lib/main.d.ts.map +1 -1
- package/lib/main.js +3 -4
- package/lib/main.js.map +1 -1
- package/lib/models.d.ts +1 -1
- package/lib/models.d.ts.map +1 -1
- package/lib/services.d.ts +2 -1
- package/lib/services.d.ts.map +1 -1
- package/lib/services.js +3 -1
- package/lib/services.js.map +1 -1
- package/lib/src/Immutable.class.d.ts.map +1 -1
- package/lib/src/Immutable.class.js +8 -8
- package/lib/src/Immutable.class.js.map +1 -1
- package/lib/src/classes/models.class.d.ts +2 -4
- package/lib/src/classes/models.class.d.ts.map +1 -1
- package/lib/src/classes/models.class.js +5 -6
- package/lib/src/classes/models.class.js.map +1 -1
- package/lib/src/classes/modelv2.class.d.ts +16 -9
- package/lib/src/classes/modelv2.class.d.ts.map +1 -1
- package/lib/src/classes/modelv2.class.js +30 -29
- package/lib/src/classes/modelv2.class.js.map +1 -1
- package/lib/src/helpers/companyRights.d.ts +2 -2
- package/lib/src/helpers/companyRights.d.ts.map +1 -1
- package/lib/src/helpers/companyRights.js.map +1 -1
- package/lib/src/interfaces/DesignModule.interface.d.ts +1 -0
- package/lib/src/interfaces/DesignModule.interface.d.ts.map +1 -1
- package/lib/src/interfaces/Modelv2.interface.d.ts +2 -2
- package/lib/src/interfaces/Modelv2.interface.d.ts.map +1 -1
- package/lib/src/interfaces/MulterFile.interface.d.ts +31 -0
- package/lib/src/interfaces/MulterFile.interface.d.ts.map +1 -0
- package/lib/src/interfaces/{Wildcardcertificates.js → MulterFile.interface.js} +1 -1
- package/lib/src/interfaces/MulterFile.interface.js.map +1 -0
- package/lib/src/models/editor.model.d.ts +4 -1
- package/lib/src/models/editor.model.d.ts.map +1 -1
- package/lib/src/models/editor.model.js +17 -1
- package/lib/src/models/editor.model.js.map +1 -1
- package/lib/src/models/history.model.d.ts.map +1 -1
- package/lib/src/models/history.model.js +1 -1
- package/lib/src/models/history.model.js.map +1 -1
- package/lib/src/models/hostingCommand.model.js +1 -1
- package/lib/src/models/media.model.d.ts +5 -0
- package/lib/src/models/media.model.d.ts.map +1 -1
- package/lib/src/models/media.model.js +16 -0
- package/lib/src/models/media.model.js.map +1 -1
- package/lib/src/models/publish-method.model.js +3 -3
- package/lib/src/models/publish-method.model.js.map +1 -1
- package/lib/src/models/settings.model.d.ts.map +1 -1
- package/lib/src/models/settings.model.js +1 -11
- package/lib/src/models/settings.model.js.map +1 -1
- package/lib/src/services/history.service.js +3 -3
- package/lib/src/services/history.service.js.map +1 -1
- package/lib/src/services/media.service.d.ts +82 -0
- package/lib/src/services/media.service.d.ts.map +1 -0
- package/lib/src/services/media.service.js +598 -0
- package/lib/src/services/media.service.js.map +1 -0
- package/lib/src/services/publishMethod.service.d.ts +1 -1
- package/lib/src/services/publishMethod.service.d.ts.map +1 -1
- package/lib/src/services/publishMethod.service.js +1 -1
- package/lib/src/services/publishMethod.service.js.map +1 -1
- package/lib/tests/editorService.spec.js +37 -21
- package/lib/tests/editorService.spec.js.map +1 -1
- package/lib/{src/prepareModules.d.ts → tests/getUnsetObject.spec.d.ts} +0 -0
- package/lib/tests/getUnsetObject.spec.d.ts.map +1 -0
- package/lib/tests/getUnsetObject.spec.js +68 -0
- package/lib/tests/getUnsetObject.spec.js.map +1 -0
- package/package.json +17 -9
- package/lib/src/AzureVault.class.d.ts +0 -15
- package/lib/src/AzureVault.class.d.ts.map +0 -1
- package/lib/src/AzureVault.class.js +0 -30
- package/lib/src/AzureVault.class.js.map +0 -1
- package/lib/src/classes/AzureVault.class.d.ts +0 -15
- package/lib/src/classes/AzureVault.class.d.ts.map +0 -1
- package/lib/src/classes/AzureVault.class.js +0 -30
- package/lib/src/classes/AzureVault.class.js.map +0 -1
- package/lib/src/conf.class.d.ts +0 -37
- package/lib/src/conf.class.d.ts.map +0 -1
- package/lib/src/conf.class.js +0 -122
- package/lib/src/conf.class.js.map +0 -1
- package/lib/src/domain.class.d.ts +0 -41
- package/lib/src/domain.class.d.ts.map +0 -1
- package/lib/src/domain.class.js +0 -159
- package/lib/src/domain.class.js.map +0 -1
- package/lib/src/frontend/frontend.d.ts +0 -2
- package/lib/src/frontend/frontend.js +0 -9
- package/lib/src/frontend/frontend.js.map +0 -1
- package/lib/src/frontend/main.d.ts +0 -2
- package/lib/src/frontend/main.js +0 -9
- package/lib/src/frontend/main.js.map +0 -1
- package/lib/src/helpers/helpers.export.d.ts +0 -0
- package/lib/src/helpers/helpers.export.js +0 -1
- package/lib/src/helpers/helpers.export.js.map +0 -1
- package/lib/src/http.challenge.class copy.d.ts +0 -33
- package/lib/src/http.challenge.class copy.js +0 -63
- package/lib/src/http.challenge.class copy.js.map +0 -1
- package/lib/src/interfaces/AvailableHostingTypes.interface.d.ts +0 -3
- package/lib/src/interfaces/AvailableHostingTypes.interface.d.ts.map +0 -1
- package/lib/src/interfaces/AvailableHostingTypes.interface.js +0 -3
- package/lib/src/interfaces/AvailableHostingTypes.interface.js.map +0 -1
- package/lib/src/interfaces/Content.interface copy.d.ts +0 -3
- package/lib/src/interfaces/Content.interface copy.js +0 -3
- package/lib/src/interfaces/Content.interface copy.js.map +0 -1
- package/lib/src/interfaces/ContentWithPositions.interface.d.ts +0 -7
- package/lib/src/interfaces/ContentWithPositions.interface.js +0 -3
- package/lib/src/interfaces/ContentWithPositions.interface.js.map +0 -1
- package/lib/src/interfaces/HistoryReason.interface copy.d.ts +0 -1
- package/lib/src/interfaces/HistoryReason.interface copy.js +0 -3
- package/lib/src/interfaces/HistoryReason.interface copy.js.map +0 -1
- package/lib/src/interfaces/Options.interface copy.d.ts +0 -5
- package/lib/src/interfaces/Options.interface copy.d.ts.map +0 -1
- package/lib/src/interfaces/Options.interface copy.js +0 -3
- package/lib/src/interfaces/Options.interface copy.js.map +0 -1
- package/lib/src/interfaces/Response200204.interface.d.ts +0 -12
- package/lib/src/interfaces/Response200204.interface.d.ts.map +0 -1
- package/lib/src/interfaces/Response200204.interface.js +0 -3
- package/lib/src/interfaces/Response200204.interface.js.map +0 -1
- package/lib/src/interfaces/Wildcardcertificates.d.ts +0 -11
- package/lib/src/interfaces/Wildcardcertificates.d.ts.map +0 -1
- package/lib/src/interfaces/Wildcardcertificates.js.map +0 -1
- package/lib/src/models/certificate.model copy.d.ts +0 -17
- package/lib/src/models/certificate.model copy.d.ts.map +0 -1
- package/lib/src/models/certificate.model copy.js +0 -77
- package/lib/src/models/certificate.model copy.js.map +0 -1
- package/lib/src/models/publish.model copy.d.ts +0 -23
- package/lib/src/models/publish.model copy.js +0 -180
- package/lib/src/models/publish.model copy.js.map +0 -1
- package/lib/src/prepareModules.js +0 -19
- package/lib/src/prepareModules.js.map +0 -1
- package/lib/src/services/certificates.service copy.d.ts +0 -7
- package/lib/src/services/certificates.service copy.d.ts.map +0 -1
- package/lib/src/services/certificates.service copy.js +0 -20
- package/lib/src/services/certificates.service copy.js.map +0 -1
- package/lib/src/services/conf.class.d.ts +0 -36
- package/lib/src/services/conf.class.d.ts.map +0 -1
- package/lib/src/services/conf.class.js +0 -122
- package/lib/src/services/conf.class.js.map +0 -1
- package/lib/src/services/id.service copy.d.ts +0 -7
- package/lib/src/services/id.service copy.d.ts.map +0 -1
- package/lib/src/services/id.service copy.js +0 -20
- package/lib/src/services/id.service copy.js.map +0 -1
- package/lib/src/ssl-challenge.class.d.ts +0 -33
- package/lib/src/ssl-challenge.class.js +0 -63
- package/lib/src/ssl-challenge.class.js.map +0 -1
- package/lib/tests/conf.class.spec.d.ts +0 -1
- package/lib/tests/conf.class.spec.js +0 -348
- package/lib/tests/conf.class.spec.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publishMethod.service.js","sourceRoot":"","sources":["../../../src/services/publishMethod.service.ts"],"names":[],"mappings":";;;;;;AACA,yEAA2C;AAC3C,0FAAmF;AAEnF,MAAa,oBAAqB,SAAQ,yBAAwB;IAAlE;;QAEE,UAAK,GAAG,8BAAkB,CAAC;IAmC7B,CAAC;IAjCC,iBAAiB,CAAC,MAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"publishMethod.service.js","sourceRoot":"","sources":["../../../src/services/publishMethod.service.ts"],"names":[],"mappings":";;;;;;AACA,yEAA2C;AAC3C,0FAAmF;AAEnF,MAAa,oBAAqB,SAAQ,yBAAwB;IAAlE;;QAEE,UAAK,GAAG,8BAAkB,CAAC;IAmC7B,CAAC;IAjCC,iBAAiB,CAAC,MAA2B,EAAE,IAA2B;QAExE,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAClF,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAEjG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7D,CAAC;IAED,MAAM,CAAC,UAAoB,EAAE,OAAe,EAAE,OAAe;QAE3D,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAEtE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAW,EAAE,OAAe,EAAE,OAAe;QAElD,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CACvB;YACE,gBAAgB,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO;SACjE,EACD;YACE,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE;SACvD,CACF;aACE,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;aAClB,OAAO,EAAE,CAAC;IAEf,CAAC;CAEF;AArCD,oDAqCC;AAED,kBAAe,IAAI,oBAAoB,EAAE,CAAC"}
|
|
@@ -3,32 +3,48 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const chai_1 = require("chai");
|
|
7
6
|
const mongo_mock_1 = __importDefault(require("mongo-mock"));
|
|
8
|
-
const models_class_1 = require("../src/classes/models.class");
|
|
7
|
+
const models_class_1 = __importDefault(require("../src/classes/models.class"));
|
|
9
8
|
const editor_model_1 = __importDefault(require("../src/models/editor.model"));
|
|
10
9
|
const mongoClient = mongo_mock_1.default.MongoClient;
|
|
10
|
+
const json = {
|
|
11
|
+
"settings": { "title": "Einfach", "filename": ["performance", "einfach", "einfachheit", "simplicity"], "mode": "presentation" },
|
|
12
|
+
"modules": [],
|
|
13
|
+
"company": "lilaquadrat",
|
|
14
|
+
"project": "homepage",
|
|
15
|
+
"state": "publish",
|
|
16
|
+
"partial": false,
|
|
17
|
+
"id": "einfach",
|
|
18
|
+
"description": "",
|
|
19
|
+
"childData": { "data": {}, "index": [""] },
|
|
20
|
+
"history": { "version": 28, "source": "editor", }
|
|
21
|
+
};
|
|
11
22
|
describe('editorService', () => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
await
|
|
25
|
-
await
|
|
26
|
-
await
|
|
23
|
+
let models;
|
|
24
|
+
let model;
|
|
25
|
+
let client;
|
|
26
|
+
beforeAll(async () => {
|
|
27
|
+
var _a, _b, _c;
|
|
28
|
+
if (client)
|
|
29
|
+
await client.close(true);
|
|
30
|
+
client = await mongoClient.connect('mongodb://localhost:27017/myproject');
|
|
31
|
+
models = new models_class_1.default();
|
|
32
|
+
model = editor_model_1.default;
|
|
33
|
+
await model.setMongoConnection(client, undefined, true);
|
|
34
|
+
models.register('editor', model);
|
|
35
|
+
await models.injectDatabaseConnection(client, undefined, true);
|
|
36
|
+
await ((_a = model.db) === null || _a === void 0 ? void 0 : _a.deleteMany({}));
|
|
37
|
+
await ((_b = model.db) === null || _b === void 0 ? void 0 : _b.insertOne(Object.assign(Object.assign({}, json), { state: 'publish', id: 'first' })));
|
|
38
|
+
await ((_c = model.db) === null || _c === void 0 ? void 0 : _c.insertOne(Object.assign(Object.assign({}, json), { state: 'draft', id: 'second' })));
|
|
27
39
|
});
|
|
28
|
-
describe('base',
|
|
29
|
-
it('get draft', async
|
|
30
|
-
|
|
31
|
-
(
|
|
40
|
+
describe('base', () => {
|
|
41
|
+
it('get draft', async () => {
|
|
42
|
+
var _a;
|
|
43
|
+
const results = await ((_a = model.db) === null || _a === void 0 ? void 0 : _a.findOne({ state: { $in: ['draft'] } }));
|
|
44
|
+
expect(results === null || results === void 0 ? void 0 : results.id).toEqual('second');
|
|
45
|
+
});
|
|
46
|
+
afterAll(async () => {
|
|
47
|
+
await client.close(true);
|
|
32
48
|
});
|
|
33
49
|
});
|
|
34
50
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editorService.spec.js","sourceRoot":"","sources":["../../tests/editorService.spec.ts"],"names":[],"mappings":";;;;;AAAA
|
|
1
|
+
{"version":3,"file":"editorService.spec.js","sourceRoot":"","sources":["../../tests/editorService.spec.ts"],"names":[],"mappings":";;;;;AAAA,4DAAiC;AAEjC,+EAAiD;AACjD,8EAAiE;AAEjE,MAAM,WAAW,GAAG,oBAAO,CAAC,WAAW,CAAC;AAExC,MAAM,IAAI,GAAW;IACnB,UAAU,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE;IAC/H,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,UAAU;IACrB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,SAAS;IACf,aAAa,EAAE,EAAE;IACjB,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;IAC1C,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG;CAClD,CAAC;AAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAE7B,IAAI,MAAc,CAAC;IACnB,IAAI,KAAyB,CAAC;IAC9B,IAAI,MAAmB,CAAC;IAExB,SAAS,CAAC,KAAK,IAAI,EAAE;;QAEnB,IAAG,MAAM;YAAE,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAE1E,MAAM,GAAG,IAAI,sBAAM,EAAE,CAAC;QAEtB,KAAK,GAAG,sBAAW,CAAC;QACpB,MAAM,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEjC,MAAM,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAE/D,MAAM,CAAA,MAAA,KAAK,CAAC,EAAE,0CAAE,UAAU,CAAC,EAAE,CAAC,CAAA,CAAC;QAE/B,MAAM,CAAA,MAAA,KAAK,CAAC,EAAE,0CAAE,SAAS,iCAAK,IAAI,KAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,IAAE,CAAA,CAAC;QACpE,MAAM,CAAA,MAAA,KAAK,CAAC,EAAE,0CAAE,SAAS,iCAAK,IAAI,KAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,IAAG,CAAA,CAAC;IACtE,CAAC,CAAC,CAAC;IAIH,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QAEpB,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;;YAEzB,MAAM,OAAO,GAAG,MAAM,CAAA,MAAA,KAAK,CAAC,EAAE,0CAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC;YACvE,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAExC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;YAClB,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAA;IAEJ,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAA"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUnsetObject.spec.d.ts","sourceRoot":"","sources":["../../tests/getUnsetObject.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,68 @@
|
|
|
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
|
+
const modelv2_class_1 = __importDefault(require("../src/classes/modelv2.class"));
|
|
7
|
+
const object_path_1 = __importDefault(require("object-path"));
|
|
8
|
+
const testObject = { value: 1, deep: { value: 1, deeper: 1, empty: '', present: true } };
|
|
9
|
+
describe('string-split-object', () => {
|
|
10
|
+
let testModel;
|
|
11
|
+
beforeAll(async () => {
|
|
12
|
+
testModel = new modelv2_class_1.default('test', 'test');
|
|
13
|
+
testModel.removeWhenEmpty = [
|
|
14
|
+
'deep',
|
|
15
|
+
'deep.missing',
|
|
16
|
+
'deep.notMissing',
|
|
17
|
+
'alwaysMissing',
|
|
18
|
+
'boolNotMissing',
|
|
19
|
+
'stringNotMissing',
|
|
20
|
+
'emptyObject',
|
|
21
|
+
'emptyArray',
|
|
22
|
+
'notEmptyArray',
|
|
23
|
+
];
|
|
24
|
+
});
|
|
25
|
+
describe('object access', function () {
|
|
26
|
+
it('get value', async function () {
|
|
27
|
+
expect(object_path_1.default.get(testObject, 'value')).toEqual(1);
|
|
28
|
+
});
|
|
29
|
+
it('get deep value', async function () {
|
|
30
|
+
expect(object_path_1.default.get(testObject, 'deep.value')).toEqual(1);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
describe('getUnsetObject', () => {
|
|
34
|
+
it('get deep value', async function () {
|
|
35
|
+
expect(object_path_1.default.get(testObject, 'deep.value')).toEqual(1);
|
|
36
|
+
});
|
|
37
|
+
it('get deep value empty', async function () {
|
|
38
|
+
expect(object_path_1.default.get(testObject, 'deep.empty')).toEqual('');
|
|
39
|
+
});
|
|
40
|
+
it('get deep value missing', async function () {
|
|
41
|
+
expect(object_path_1.default.get(testObject, 'deep.missing')).toEqual(undefined);
|
|
42
|
+
});
|
|
43
|
+
it('get unset object', async () => {
|
|
44
|
+
expect(testModel.getUnsetObject({
|
|
45
|
+
deep: {
|
|
46
|
+
deeper: true,
|
|
47
|
+
notMissing: true
|
|
48
|
+
},
|
|
49
|
+
boolNotMissing: true,
|
|
50
|
+
stringNotMissing: true,
|
|
51
|
+
emptyArray: [],
|
|
52
|
+
notEmptyArray: [1, 2, 3],
|
|
53
|
+
emptyObject: {},
|
|
54
|
+
additionalEmpty: {},
|
|
55
|
+
additionalEmptyString: '',
|
|
56
|
+
additionalFalse: false,
|
|
57
|
+
additionalString: 'hello'
|
|
58
|
+
}))
|
|
59
|
+
.toEqual({
|
|
60
|
+
alwaysMissing: "",
|
|
61
|
+
'deep.missing': "",
|
|
62
|
+
emptyArray: "",
|
|
63
|
+
emptyObject: "",
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
//# sourceMappingURL=getUnsetObject.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUnsetObject.spec.js","sourceRoot":"","sources":["../../tests/getUnsetObject.spec.ts"],"names":[],"mappings":";;;;;AAAA,iFAAoD;AACpD,8DAAqC;AAErC,MAAM,UAAU,GAAG,EAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAC,EAAC,CAAA;AAEpF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IAEjC,IAAI,SAAuB,CAAC;IAE5B,SAAS,CAAC,KAAK,IAAI,EAAE;QAEnB,SAAS,GAAG,IAAI,uBAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,SAAS,CAAC,eAAe,GAAG;YAC1B,MAAM;YACN,cAAc;YACd,iBAAiB;YACjB,eAAe;YACf,gBAAgB;YAChB,kBAAkB;YAClB,aAAa;YACb,YAAY;YACZ,eAAe;SAChB,CAAC;IAEJ,CAAC,CAAC,CAAC;IAGH,QAAQ,CAAC,eAAe,EAAE;QAEtB,EAAE,CAAC,WAAW,EAAE,KAAK;YAEnB,MAAM,CAAC,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,EAAE,KAAK;YAExB,MAAM,CAAC,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9D,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAE5B,EAAE,CAAC,gBAAgB,EAAE,KAAK;YAExB,MAAM,CAAC,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sBAAsB,EAAE,KAAK;YAE9B,MAAM,CAAC,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wBAAwB,EAAE,KAAK;YAEhC,MAAM,CAAC,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAExE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;YAEhC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;gBAC9B,IAAI,EAAE;oBACJ,MAAM,EAAE,IAAI;oBACZ,UAAU,EAAE,IAAI;iBACjB;gBACD,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,IAAI;gBACtB,UAAU,EAAE,EAAE;gBACd,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACxB,WAAW,EAAE,EAAE;gBACf,eAAe,EAAE,EAAE;gBACnB,qBAAqB,EAAE,EAAE;gBACzB,eAAe,EAAE,KAAK;gBACtB,gBAAgB,EAAE,OAAO;aAC1B,CAAC,CAAC;iBACF,OAAO,CAAC;gBACL,aAAa,EAAE,EAAE;gBACjB,cAAc,EAAE,EAAE;gBAClB,UAAU,EAAE,EAAE;gBACd,WAAW,EAAE,EAAE;aAClB,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lilaquadrat/studio",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"description": "classes and tools for STUDIO",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://lilaquadrat.de",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"scripts": {
|
|
13
13
|
"start": "tsc --watch --declarationMap",
|
|
14
14
|
"prepublish": "tsc",
|
|
15
|
-
"test": "
|
|
15
|
+
"test": "jest",
|
|
16
16
|
"test:watch": "ts-mocha --paths --watch-extensions ts --watch --watch-files tests,src 'tests/**/**.spec.ts'",
|
|
17
17
|
"test:coverage": "nyc --reporter=text ts-mocha --paths --watch-extensions ts --watch --watch-files src 'tests/**/**.spec.ts'"
|
|
18
18
|
},
|
|
@@ -22,14 +22,15 @@
|
|
|
22
22
|
"main": "lib/main.js",
|
|
23
23
|
"types": "lib/main.d.ts",
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@types/chai": "^4.3.1",
|
|
26
25
|
"@types/express": "^4.17.13",
|
|
26
|
+
"@types/jest": "^29.4.0",
|
|
27
27
|
"@types/json-schema": "^7.0.5",
|
|
28
28
|
"@types/mime-types": "^2.1.1",
|
|
29
|
-
"@types/
|
|
29
|
+
"@types/multer": "^1.4.7",
|
|
30
|
+
"@types/object-path": "^0.11.1",
|
|
31
|
+
"@types/sharp": "^0.23.0",
|
|
30
32
|
"@types/unzipper": "^0.10.4",
|
|
31
33
|
"@typescript-eslint/eslint-plugin": "^3.9.1",
|
|
32
|
-
"chai": "^4.3.6",
|
|
33
34
|
"eslint": "^7.7.0",
|
|
34
35
|
"eslint-config-airbnb-base": "^14.2.0",
|
|
35
36
|
"eslint-config-airbnb-typescript": "^9.0.0",
|
|
@@ -37,12 +38,15 @@
|
|
|
37
38
|
"eslint-plugin-import": "^2.22.0",
|
|
38
39
|
"eslint-plugin-mocha": "^10.0.4",
|
|
39
40
|
"eslint-plugin-promise": "^4.2.1",
|
|
40
|
-
"
|
|
41
|
-
"mongo-mock": "^4.
|
|
42
|
-
"ts-
|
|
41
|
+
"jest": "^29.4.1",
|
|
42
|
+
"mongo-mock": "^4.2.0",
|
|
43
|
+
"ts-jest": "^29.0.5"
|
|
43
44
|
},
|
|
44
45
|
"peerDependencies": {
|
|
45
|
-
"express": "^4.17.1"
|
|
46
|
+
"express": "^4.17.1",
|
|
47
|
+
"fs-extra": "^7.0.0",
|
|
48
|
+
"multer": "^1.4.5-lts.1",
|
|
49
|
+
"sharp": "^0.28.3"
|
|
46
50
|
},
|
|
47
51
|
"dependencies": {
|
|
48
52
|
"@azure/arm-dns": "^5.0.0",
|
|
@@ -63,13 +67,17 @@
|
|
|
63
67
|
"dayjs": "^1.11.0",
|
|
64
68
|
"express": "^4.17.1",
|
|
65
69
|
"file-type": "^14.7.1",
|
|
70
|
+
"fs-extra": "^7.0.0",
|
|
66
71
|
"handlebars": "^4.7.6",
|
|
67
72
|
"mime-types": "^2.1.32",
|
|
68
73
|
"mongo-connection-string": "^0.1.5",
|
|
69
74
|
"mongodb": "^4.2.0",
|
|
75
|
+
"multer": "^1.4.5-lts.1",
|
|
70
76
|
"node-fetch": "2",
|
|
77
|
+
"object-path": "^0.11.8",
|
|
71
78
|
"optional-require": "^1.1.0",
|
|
72
79
|
"prettyjson": "^1.2.1",
|
|
80
|
+
"sharp": "^0.28.3",
|
|
73
81
|
"typescript": "^4.3.2",
|
|
74
82
|
"unzipper": "^0.10.11",
|
|
75
83
|
"winston": "^3.3.3"
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ClientSecretCredential, DefaultAzureCredential } from '@azure/identity';
|
|
2
|
-
declare const _default: {
|
|
3
|
-
certificates: {
|
|
4
|
-
import: (name: string, cert: Uint8Array, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<void>;
|
|
5
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-certificates").KeyVaultCertificateWithPolicy>;
|
|
6
|
-
};
|
|
7
|
-
keys: {
|
|
8
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-keys").KeyVaultKey>;
|
|
9
|
-
};
|
|
10
|
-
secrets: {
|
|
11
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-secrets").KeyVaultSecret>;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
export default _default;
|
|
15
|
-
//# sourceMappingURL=AzureVault.class.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AzureVault.class.d.ts","sourceRoot":"","sources":["../../src/AzureVault.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;;;uBAYrE,MAAM,QACN,UAAU,OACX,MAAM,eACE,sBAAsB,GAAG,sBAAsB;oBASlD,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;oBAUjF,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;oBAUjF,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;AArCjG,wBA6CE"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const keyvault_certificates_1 = require("@azure/keyvault-certificates");
|
|
4
|
-
const keyvault_keys_1 = require("@azure/keyvault-keys");
|
|
5
|
-
const keyvault_secrets_1 = require("@azure/keyvault-secrets");
|
|
6
|
-
exports.default = {
|
|
7
|
-
certificates: {
|
|
8
|
-
import: async (name, cert, url, credentials) => {
|
|
9
|
-
const client = new keyvault_certificates_1.CertificateClient(url, credentials);
|
|
10
|
-
await client.importCertificate(name, cert);
|
|
11
|
-
},
|
|
12
|
-
get: (name, url, credentials) => {
|
|
13
|
-
const client = new keyvault_certificates_1.CertificateClient(url, credentials);
|
|
14
|
-
return client.getCertificate(name);
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
keys: {
|
|
18
|
-
get: (name, url, credentials) => {
|
|
19
|
-
const client = new keyvault_keys_1.KeyClient(url, credentials);
|
|
20
|
-
return client.getKey(name);
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
secrets: {
|
|
24
|
-
get: (name, url, credentials) => {
|
|
25
|
-
const client = new keyvault_secrets_1.SecretClient(url, credentials);
|
|
26
|
-
return client.getSecret(name);
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=AzureVault.class.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AzureVault.class.js","sourceRoot":"","sources":["../../src/AzureVault.class.ts"],"names":[],"mappings":";;AACA,wEAAiE;AACjE,wDAAiD;AACjD,8DAAuD;AAIvD,kBAAe;IAEb,YAAY,EAAE;QAEZ,MAAM,EAAE,KAAK,EACX,IAAY,EACZ,IAAgB,EAChB,GAAW,EACX,WAA4D,EAC5D,EAAE;YAEF,MAAM,MAAM,GAAG,IAAI,yCAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAEvD,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE7C,CAAC;QAED,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,yCAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACvD,OAAO,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAErC,CAAC;KAEF;IAED,IAAI,EAAE;QACJ,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,yBAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE7B,CAAC;KAEF;IAED,OAAO,EAAE;QACP,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,+BAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEhC,CAAC;KACF;CAEF,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ClientSecretCredential, DefaultAzureCredential } from '@azure/identity';
|
|
2
|
-
declare const _default: {
|
|
3
|
-
certificates: {
|
|
4
|
-
import: (name: string, cert: Uint8Array, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<void>;
|
|
5
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-certificates").KeyVaultCertificateWithPolicy>;
|
|
6
|
-
};
|
|
7
|
-
keys: {
|
|
8
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-keys").KeyVaultKey>;
|
|
9
|
-
};
|
|
10
|
-
secrets: {
|
|
11
|
-
get: (name: string, url: string, credentials: ClientSecretCredential | DefaultAzureCredential) => Promise<import("@azure/keyvault-secrets").KeyVaultSecret>;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
export default _default;
|
|
15
|
-
//# sourceMappingURL=AzureVault.class.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AzureVault.class.d.ts","sourceRoot":"","sources":["../../../src/classes/AzureVault.class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;;;uBAYrE,MAAM,QACN,UAAU,OACX,MAAM,eACE,sBAAsB,GAAG,sBAAsB;oBASlD,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;oBAUjF,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;oBAUjF,MAAM,OAAO,MAAM,eAAe,sBAAsB,GAAG,sBAAsB;;;AArCjG,wBA6CE"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const keyvault_certificates_1 = require("@azure/keyvault-certificates");
|
|
4
|
-
const keyvault_keys_1 = require("@azure/keyvault-keys");
|
|
5
|
-
const keyvault_secrets_1 = require("@azure/keyvault-secrets");
|
|
6
|
-
exports.default = {
|
|
7
|
-
certificates: {
|
|
8
|
-
import: async (name, cert, url, credentials) => {
|
|
9
|
-
const client = new keyvault_certificates_1.CertificateClient(url, credentials);
|
|
10
|
-
await client.importCertificate(name, cert);
|
|
11
|
-
},
|
|
12
|
-
get: (name, url, credentials) => {
|
|
13
|
-
const client = new keyvault_certificates_1.CertificateClient(url, credentials);
|
|
14
|
-
return client.getCertificate(name);
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
keys: {
|
|
18
|
-
get: (name, url, credentials) => {
|
|
19
|
-
const client = new keyvault_keys_1.KeyClient(url, credentials);
|
|
20
|
-
return client.getKey(name);
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
secrets: {
|
|
24
|
-
get: (name, url, credentials) => {
|
|
25
|
-
const client = new keyvault_secrets_1.SecretClient(url, credentials);
|
|
26
|
-
return client.getSecret(name);
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=AzureVault.class.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AzureVault.class.js","sourceRoot":"","sources":["../../../src/classes/AzureVault.class.ts"],"names":[],"mappings":";;AACA,wEAAiE;AACjE,wDAAiD;AACjD,8DAAuD;AAIvD,kBAAe;IAEb,YAAY,EAAE;QAEZ,MAAM,EAAE,KAAK,EACX,IAAY,EACZ,IAAgB,EAChB,GAAW,EACX,WAA4D,EAC5D,EAAE;YAEF,MAAM,MAAM,GAAG,IAAI,yCAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAEvD,MAAM,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE7C,CAAC;QAED,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,yCAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACvD,OAAO,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAErC,CAAC;KAEF;IAED,IAAI,EAAE;QACJ,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,yBAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE7B,CAAC;KAEF;IAED,OAAO,EAAE;QACP,GAAG,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,WAA4D,EAAE,EAAE;YAE/F,MAAM,MAAM,GAAG,IAAI,+BAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEhC,CAAC;KACF;CAEF,CAAC"}
|
package/lib/src/conf.class.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import DomainConf from './interfaces/DomainConf.interface';
|
|
3
|
-
import ShareClientInterface from './interfaces/ShareClient.interface';
|
|
4
|
-
export default class ConfClass {
|
|
5
|
-
shareClient: ShareClientInterface;
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
* load the base nginx conf file for further rendering
|
|
9
|
-
*/
|
|
10
|
-
getBase(folder: string, name: string): Promise<Buffer>;
|
|
11
|
-
constructor(shareClient: ShareClientInterface);
|
|
12
|
-
/**
|
|
13
|
-
* generates nginx config
|
|
14
|
-
*
|
|
15
|
-
* @param {string[]} domains
|
|
16
|
-
* @param {string} defaultDomain e.g. $project-$customer.lila2.de
|
|
17
|
-
* @param {string} project
|
|
18
|
-
* @param {string} company
|
|
19
|
-
* @param {string} baseConf
|
|
20
|
-
* @returns
|
|
21
|
-
* @memberof ProjectClass
|
|
22
|
-
*/
|
|
23
|
-
render(domains: string[], defaultDomain: string, company: string, project: string, baseConf: string, variables: {
|
|
24
|
-
[key: string]: any;
|
|
25
|
-
}): string;
|
|
26
|
-
renderStreamConf(domains: DomainConf[], confString: string): string;
|
|
27
|
-
getComposeObject(domains: DomainConf[], baseFolder: string, image?: string): {
|
|
28
|
-
[key: string]: any;
|
|
29
|
-
};
|
|
30
|
-
getKey(company: string, project: string): string;
|
|
31
|
-
validateDomains(domains: string[]): string[];
|
|
32
|
-
/**
|
|
33
|
-
* validate domains and remove double entries
|
|
34
|
-
*/
|
|
35
|
-
validateStreamDomains(domains: DomainConf[]): DomainConf[];
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=conf.class.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conf.class.d.ts","sourceRoot":"","sources":["../../src/conf.class.ts"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,mCAAmC,CAAC;AAC3D,OAAO,oBAAoB,MAAM,oCAAoC,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,SAAS;IAE5B,WAAW,EAAE,oBAAoB,CAAC;IAElC;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;gBAMxB,WAAW,EAAE,oBAAoB;IAM7C;;;;;;;;;;SAUK;IACL,MAAM,CACJ,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,GAC9B,MAAM;IAYT,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAYnE,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE,MAAuB;;;IAiC1F,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAMvC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE;IAcjC;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE;CAsC5C"}
|
package/lib/src/conf.class.js
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
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
|
-
const handlebars_1 = __importDefault(require("handlebars"));
|
|
7
|
-
class ConfClass {
|
|
8
|
-
constructor(shareClient) {
|
|
9
|
-
this.shareClient = shareClient;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
*
|
|
13
|
-
* load the base nginx conf file for further rendering
|
|
14
|
-
*/
|
|
15
|
-
getBase(folder, name) {
|
|
16
|
-
return this.shareClient.get(folder, name);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* generates nginx config
|
|
20
|
-
*
|
|
21
|
-
* @param {string[]} domains
|
|
22
|
-
* @param {string} defaultDomain e.g. $project-$customer.lila2.de
|
|
23
|
-
* @param {string} project
|
|
24
|
-
* @param {string} company
|
|
25
|
-
* @param {string} baseConf
|
|
26
|
-
* @returns
|
|
27
|
-
* @memberof ProjectClass
|
|
28
|
-
*/
|
|
29
|
-
render(domains, defaultDomain, company, project, baseConf, variables) {
|
|
30
|
-
const template = handlebars_1.default.compile(baseConf);
|
|
31
|
-
const conf = template({
|
|
32
|
-
domains, defaultDomain, company, project, variables,
|
|
33
|
-
});
|
|
34
|
-
return conf.trim();
|
|
35
|
-
}
|
|
36
|
-
renderStreamConf(domains, confString) {
|
|
37
|
-
const template = handlebars_1.default.compile(confString);
|
|
38
|
-
const conf = template({
|
|
39
|
-
domains,
|
|
40
|
-
});
|
|
41
|
-
return conf.trim();
|
|
42
|
-
}
|
|
43
|
-
getComposeObject(domains, baseFolder, image = 'nginx:alpine') {
|
|
44
|
-
const composeObject = {
|
|
45
|
-
version: '3',
|
|
46
|
-
services: {},
|
|
47
|
-
};
|
|
48
|
-
domains.map((domain) => {
|
|
49
|
-
const domainObject = {
|
|
50
|
-
image,
|
|
51
|
-
container_name: this.getKey(domain.company, domain.project),
|
|
52
|
-
ports: [
|
|
53
|
-
`${domain.port.http}:80`,
|
|
54
|
-
`${domain.port.https}:443`,
|
|
55
|
-
],
|
|
56
|
-
volumes: [
|
|
57
|
-
`${baseFolder}/${domain.company}/${domain.project}/hosting:/var/www/hosting:ro`,
|
|
58
|
-
`${baseFolder}/${domain.company}/${domain.project}/conf:/etc/nginx/conf.d/`,
|
|
59
|
-
`${baseFolder}/${domain.company}/${domain.project}/certs:/var/www/certs`,
|
|
60
|
-
'/base/data/certs:/var/www/base/certs',
|
|
61
|
-
],
|
|
62
|
-
};
|
|
63
|
-
composeObject.services[this.getKey(domain.company, domain.project)] = domainObject;
|
|
64
|
-
return domainObject;
|
|
65
|
-
});
|
|
66
|
-
return composeObject;
|
|
67
|
-
}
|
|
68
|
-
getKey(company, project) {
|
|
69
|
-
return `${company}-${project}`;
|
|
70
|
-
}
|
|
71
|
-
validateDomains(domains) {
|
|
72
|
-
const fileredDomains = [...new Set(domains)];
|
|
73
|
-
return fileredDomains.filter((domain) => {
|
|
74
|
-
if (!domain)
|
|
75
|
-
return false;
|
|
76
|
-
if (!domain.length)
|
|
77
|
-
return false;
|
|
78
|
-
return true;
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* validate domains and remove double entries
|
|
83
|
-
*/
|
|
84
|
-
validateStreamDomains(domains) {
|
|
85
|
-
const filteredDomains = [];
|
|
86
|
-
domains.map((domain) => {
|
|
87
|
-
var _a, _b, _c;
|
|
88
|
-
/**
|
|
89
|
-
* skip all with missing values
|
|
90
|
-
*/
|
|
91
|
-
if (!domain)
|
|
92
|
-
return false;
|
|
93
|
-
if (!((_a = domain === null || domain === void 0 ? void 0 : domain.domains) === null || _a === void 0 ? void 0 : _a.length))
|
|
94
|
-
return false;
|
|
95
|
-
if (!domain.company.length)
|
|
96
|
-
return false;
|
|
97
|
-
if (!domain.project.length)
|
|
98
|
-
return false;
|
|
99
|
-
if (((_b = domain.port) === null || _b === void 0 ? void 0 : _b.http) < 1)
|
|
100
|
-
return false;
|
|
101
|
-
if (((_c = domain.port) === null || _c === void 0 ? void 0 : _c.https) < 1)
|
|
102
|
-
return false;
|
|
103
|
-
/**
|
|
104
|
-
* skip double entries
|
|
105
|
-
*/
|
|
106
|
-
const unique = filteredDomains.filter((searchDomain) => {
|
|
107
|
-
// if (domain.domains.includes(searchDomain.domain)) return true;
|
|
108
|
-
if (searchDomain.company === domain.company && searchDomain.project === domain.project)
|
|
109
|
-
return true;
|
|
110
|
-
if (searchDomain.port === domain.port)
|
|
111
|
-
return true;
|
|
112
|
-
return false;
|
|
113
|
-
});
|
|
114
|
-
if (unique.length)
|
|
115
|
-
return false;
|
|
116
|
-
return filteredDomains.push(domain);
|
|
117
|
-
});
|
|
118
|
-
return filteredDomains;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
exports.default = ConfClass;
|
|
122
|
-
//# sourceMappingURL=conf.class.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conf.class.js","sourceRoot":"","sources":["../../src/conf.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { PeerCertificate } from 'tls';
|
|
3
|
-
import { ClientSecretCredential, DefaultAzureCredential } from '@azure/identity';
|
|
4
|
-
import { ShareClientInterface, Wildcardcertificates } from '../interfaces';
|
|
5
|
-
export default class Domain {
|
|
6
|
-
shareClient: ShareClientInterface;
|
|
7
|
-
acme_email: string;
|
|
8
|
-
acme_directory: string;
|
|
9
|
-
constructor(acme_email: string, acmeMode: 'staging' | 'live', shareClient: ShareClientInterface);
|
|
10
|
-
static createCsr(privateKey: string): Promise<string>;
|
|
11
|
-
getBase(inputDomains: string[], type: 'wildcard' | 'domain', privateKey: string, privateServerKey: string): Promise<{
|
|
12
|
-
acme: any;
|
|
13
|
-
account: any;
|
|
14
|
-
accountKey: any;
|
|
15
|
-
csr: any;
|
|
16
|
-
domains: string[];
|
|
17
|
-
}>;
|
|
18
|
-
/**
|
|
19
|
-
* creates a letsencrypt wildcard SSL certificate on the given azure subscription
|
|
20
|
-
*/
|
|
21
|
-
createWildcard(domain: string, privateKey: string, privateServerKey: string, credentials: ClientSecretCredential | DefaultAzureCredential, azureSubscriptionId: string): Promise<Wildcardcertificates>;
|
|
22
|
-
convertToPfx(certificate: string, privateKey: string, tempName: string): Promise<Buffer>;
|
|
23
|
-
convertTox509(certificate: string, tempName: string): Promise<Buffer>;
|
|
24
|
-
/**
|
|
25
|
-
* creates a letsencrypt certificate for all given domain
|
|
26
|
-
* http challenge will be used
|
|
27
|
-
*/
|
|
28
|
-
createSSl(domains: string[], company: string, project: string, privateKey: string, privateServerKey: string): Promise<Wildcardcertificates>;
|
|
29
|
-
getCertificateDetails(cert: string): PeerCertificate;
|
|
30
|
-
checkDns(domain: string, company: string, project: string): Promise<boolean>;
|
|
31
|
-
/**
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* @param {string} domain the default domain e.g. lila2.de
|
|
35
|
-
* @param {string} project
|
|
36
|
-
* @param {string} company
|
|
37
|
-
* @memberof ProjectClass
|
|
38
|
-
*/
|
|
39
|
-
static getDefaultDomain(domain: string, project: string, company: string): string;
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=domain.class.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"domain.class.d.ts","sourceRoot":"","sources":["../../src/domain.class.ts"],"names":[],"mappings":";AAMA,OAAY,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAK3C,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAIjF,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAK3E,MAAM,CAAC,OAAO,OAAO,MAAM;IAEzB,WAAW,EAAE,oBAAoB,CAAC;IAElC,UAAU,EAAE,MAAM,CAAC;IAEnB,cAAc,EAAE,MAAM,CAAC;gBAEX,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,MAAM,EAAE,WAAW,EAAE,oBAAoB;IAU/F,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM;IA4B7B,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;;;;;;;IA+B/G;;OAEG;IACG,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,sBAAsB,GAAG,sBAAsB,EAC5D,mBAAmB,EAAE,MAAM;IAmB7B,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IA+BtE,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IA+BnD;;;OAGG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM;IAmB1B,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;IAapD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAiBzD;;;;;;;OAOG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAMzE"}
|