@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.
Files changed (148) hide show
  1. package/lib/interfaces.d.ts +3 -2
  2. package/lib/interfaces.d.ts.map +1 -1
  3. package/lib/interfaces.js.map +1 -1
  4. package/lib/main.d.ts +2 -2
  5. package/lib/main.d.ts.map +1 -1
  6. package/lib/main.js +3 -4
  7. package/lib/main.js.map +1 -1
  8. package/lib/models.d.ts +1 -1
  9. package/lib/models.d.ts.map +1 -1
  10. package/lib/services.d.ts +2 -1
  11. package/lib/services.d.ts.map +1 -1
  12. package/lib/services.js +3 -1
  13. package/lib/services.js.map +1 -1
  14. package/lib/src/Immutable.class.d.ts.map +1 -1
  15. package/lib/src/Immutable.class.js +8 -8
  16. package/lib/src/Immutable.class.js.map +1 -1
  17. package/lib/src/classes/models.class.d.ts +2 -4
  18. package/lib/src/classes/models.class.d.ts.map +1 -1
  19. package/lib/src/classes/models.class.js +5 -6
  20. package/lib/src/classes/models.class.js.map +1 -1
  21. package/lib/src/classes/modelv2.class.d.ts +16 -9
  22. package/lib/src/classes/modelv2.class.d.ts.map +1 -1
  23. package/lib/src/classes/modelv2.class.js +30 -29
  24. package/lib/src/classes/modelv2.class.js.map +1 -1
  25. package/lib/src/helpers/companyRights.d.ts +2 -2
  26. package/lib/src/helpers/companyRights.d.ts.map +1 -1
  27. package/lib/src/helpers/companyRights.js.map +1 -1
  28. package/lib/src/interfaces/DesignModule.interface.d.ts +1 -0
  29. package/lib/src/interfaces/DesignModule.interface.d.ts.map +1 -1
  30. package/lib/src/interfaces/Modelv2.interface.d.ts +2 -2
  31. package/lib/src/interfaces/Modelv2.interface.d.ts.map +1 -1
  32. package/lib/src/interfaces/MulterFile.interface.d.ts +31 -0
  33. package/lib/src/interfaces/MulterFile.interface.d.ts.map +1 -0
  34. package/lib/src/interfaces/{Wildcardcertificates.js → MulterFile.interface.js} +1 -1
  35. package/lib/src/interfaces/MulterFile.interface.js.map +1 -0
  36. package/lib/src/models/editor.model.d.ts +4 -1
  37. package/lib/src/models/editor.model.d.ts.map +1 -1
  38. package/lib/src/models/editor.model.js +17 -1
  39. package/lib/src/models/editor.model.js.map +1 -1
  40. package/lib/src/models/history.model.d.ts.map +1 -1
  41. package/lib/src/models/history.model.js +1 -1
  42. package/lib/src/models/history.model.js.map +1 -1
  43. package/lib/src/models/hostingCommand.model.js +1 -1
  44. package/lib/src/models/media.model.d.ts +5 -0
  45. package/lib/src/models/media.model.d.ts.map +1 -1
  46. package/lib/src/models/media.model.js +16 -0
  47. package/lib/src/models/media.model.js.map +1 -1
  48. package/lib/src/models/publish-method.model.js +3 -3
  49. package/lib/src/models/publish-method.model.js.map +1 -1
  50. package/lib/src/models/settings.model.d.ts.map +1 -1
  51. package/lib/src/models/settings.model.js +1 -11
  52. package/lib/src/models/settings.model.js.map +1 -1
  53. package/lib/src/services/history.service.js +3 -3
  54. package/lib/src/services/history.service.js.map +1 -1
  55. package/lib/src/services/media.service.d.ts +82 -0
  56. package/lib/src/services/media.service.d.ts.map +1 -0
  57. package/lib/src/services/media.service.js +598 -0
  58. package/lib/src/services/media.service.js.map +1 -0
  59. package/lib/src/services/publishMethod.service.d.ts +1 -1
  60. package/lib/src/services/publishMethod.service.d.ts.map +1 -1
  61. package/lib/src/services/publishMethod.service.js +1 -1
  62. package/lib/src/services/publishMethod.service.js.map +1 -1
  63. package/lib/tests/editorService.spec.js +37 -21
  64. package/lib/tests/editorService.spec.js.map +1 -1
  65. package/lib/{src/prepareModules.d.ts → tests/getUnsetObject.spec.d.ts} +0 -0
  66. package/lib/tests/getUnsetObject.spec.d.ts.map +1 -0
  67. package/lib/tests/getUnsetObject.spec.js +68 -0
  68. package/lib/tests/getUnsetObject.spec.js.map +1 -0
  69. package/package.json +17 -9
  70. package/lib/src/AzureVault.class.d.ts +0 -15
  71. package/lib/src/AzureVault.class.d.ts.map +0 -1
  72. package/lib/src/AzureVault.class.js +0 -30
  73. package/lib/src/AzureVault.class.js.map +0 -1
  74. package/lib/src/classes/AzureVault.class.d.ts +0 -15
  75. package/lib/src/classes/AzureVault.class.d.ts.map +0 -1
  76. package/lib/src/classes/AzureVault.class.js +0 -30
  77. package/lib/src/classes/AzureVault.class.js.map +0 -1
  78. package/lib/src/conf.class.d.ts +0 -37
  79. package/lib/src/conf.class.d.ts.map +0 -1
  80. package/lib/src/conf.class.js +0 -122
  81. package/lib/src/conf.class.js.map +0 -1
  82. package/lib/src/domain.class.d.ts +0 -41
  83. package/lib/src/domain.class.d.ts.map +0 -1
  84. package/lib/src/domain.class.js +0 -159
  85. package/lib/src/domain.class.js.map +0 -1
  86. package/lib/src/frontend/frontend.d.ts +0 -2
  87. package/lib/src/frontend/frontend.js +0 -9
  88. package/lib/src/frontend/frontend.js.map +0 -1
  89. package/lib/src/frontend/main.d.ts +0 -2
  90. package/lib/src/frontend/main.js +0 -9
  91. package/lib/src/frontend/main.js.map +0 -1
  92. package/lib/src/helpers/helpers.export.d.ts +0 -0
  93. package/lib/src/helpers/helpers.export.js +0 -1
  94. package/lib/src/helpers/helpers.export.js.map +0 -1
  95. package/lib/src/http.challenge.class copy.d.ts +0 -33
  96. package/lib/src/http.challenge.class copy.js +0 -63
  97. package/lib/src/http.challenge.class copy.js.map +0 -1
  98. package/lib/src/interfaces/AvailableHostingTypes.interface.d.ts +0 -3
  99. package/lib/src/interfaces/AvailableHostingTypes.interface.d.ts.map +0 -1
  100. package/lib/src/interfaces/AvailableHostingTypes.interface.js +0 -3
  101. package/lib/src/interfaces/AvailableHostingTypes.interface.js.map +0 -1
  102. package/lib/src/interfaces/Content.interface copy.d.ts +0 -3
  103. package/lib/src/interfaces/Content.interface copy.js +0 -3
  104. package/lib/src/interfaces/Content.interface copy.js.map +0 -1
  105. package/lib/src/interfaces/ContentWithPositions.interface.d.ts +0 -7
  106. package/lib/src/interfaces/ContentWithPositions.interface.js +0 -3
  107. package/lib/src/interfaces/ContentWithPositions.interface.js.map +0 -1
  108. package/lib/src/interfaces/HistoryReason.interface copy.d.ts +0 -1
  109. package/lib/src/interfaces/HistoryReason.interface copy.js +0 -3
  110. package/lib/src/interfaces/HistoryReason.interface copy.js.map +0 -1
  111. package/lib/src/interfaces/Options.interface copy.d.ts +0 -5
  112. package/lib/src/interfaces/Options.interface copy.d.ts.map +0 -1
  113. package/lib/src/interfaces/Options.interface copy.js +0 -3
  114. package/lib/src/interfaces/Options.interface copy.js.map +0 -1
  115. package/lib/src/interfaces/Response200204.interface.d.ts +0 -12
  116. package/lib/src/interfaces/Response200204.interface.d.ts.map +0 -1
  117. package/lib/src/interfaces/Response200204.interface.js +0 -3
  118. package/lib/src/interfaces/Response200204.interface.js.map +0 -1
  119. package/lib/src/interfaces/Wildcardcertificates.d.ts +0 -11
  120. package/lib/src/interfaces/Wildcardcertificates.d.ts.map +0 -1
  121. package/lib/src/interfaces/Wildcardcertificates.js.map +0 -1
  122. package/lib/src/models/certificate.model copy.d.ts +0 -17
  123. package/lib/src/models/certificate.model copy.d.ts.map +0 -1
  124. package/lib/src/models/certificate.model copy.js +0 -77
  125. package/lib/src/models/certificate.model copy.js.map +0 -1
  126. package/lib/src/models/publish.model copy.d.ts +0 -23
  127. package/lib/src/models/publish.model copy.js +0 -180
  128. package/lib/src/models/publish.model copy.js.map +0 -1
  129. package/lib/src/prepareModules.js +0 -19
  130. package/lib/src/prepareModules.js.map +0 -1
  131. package/lib/src/services/certificates.service copy.d.ts +0 -7
  132. package/lib/src/services/certificates.service copy.d.ts.map +0 -1
  133. package/lib/src/services/certificates.service copy.js +0 -20
  134. package/lib/src/services/certificates.service copy.js.map +0 -1
  135. package/lib/src/services/conf.class.d.ts +0 -36
  136. package/lib/src/services/conf.class.d.ts.map +0 -1
  137. package/lib/src/services/conf.class.js +0 -122
  138. package/lib/src/services/conf.class.js.map +0 -1
  139. package/lib/src/services/id.service copy.d.ts +0 -7
  140. package/lib/src/services/id.service copy.d.ts.map +0 -1
  141. package/lib/src/services/id.service copy.js +0 -20
  142. package/lib/src/services/id.service copy.js.map +0 -1
  143. package/lib/src/ssl-challenge.class.d.ts +0 -33
  144. package/lib/src/ssl-challenge.class.js +0 -63
  145. package/lib/src/ssl-challenge.class.js.map +0 -1
  146. package/lib/tests/conf.class.spec.d.ts +0 -1
  147. package/lib/tests/conf.class.spec.js +0 -348
  148. 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,IAAuB;QAEpE,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,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAE1F,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"}
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
- before(async function () {
13
- this.client = await mongoClient.connect('mongodb://localhost:27017/myproject');
14
- this.models = new models_class_1.Models();
15
- this.model = editor_model_1.default;
16
- this.model.setMongoConnection(this.client);
17
- this.models.register('editor', this.model);
18
- // this.service = HistoryService;
19
- // this.service = this.model;
20
- });
21
- beforeEach(async function () {
22
- this.models.unregister('history');
23
- this.models.injectDatabaseConnection(this.client);
24
- await this.model.db.remove();
25
- await this.model.db.insertOne({ state: 'publish', id: 'first' });
26
- await this.model.db.insertOne({ state: 'draft', id: 'second' });
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', function () {
29
- it('get draft', async function () {
30
- const results = await this.model.db.findOne({ state: { $in: ['draft'] } });
31
- (0, chai_1.expect)(results.id).equal('second');
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,+BAA8B;AAC9B,4DAAiC;AAEjC,8DAAqD;AACrD,8EAAqD;AAErD,MAAM,WAAW,GAAG,oBAAO,CAAC,WAAW,CAAC;AAExC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAE3B,MAAM,CAAC,KAAK;QAER,IAAI,CAAC,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAE/E,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAM,EAAE,CAAC;QAE3B,IAAI,CAAC,KAAK,GAAG,sBAAW,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3C,iCAAiC;QACjC,6BAA6B;IAEjC,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK;QAEZ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAElC,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QAE7B,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAC,CAAC,CAAC;QAC/D,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAC,CAAC,CAAC;IAEhE,CAAC,CAAC,CAAC;IAGL,QAAQ,CAAC,MAAM,EAAE;QAEb,EAAE,CAAC,WAAW,EAAE,KAAK;YAEnB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAC,KAAK,EAAE,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAC,EAAC,CAAC,CAAC;YACvE,IAAA,aAAM,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAErC,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAA"}
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"}
@@ -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": "2.4.42",
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": "ts-mocha --paths 'tests/**/**.spec.ts'",
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/mocha": "^9.1.1",
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
- "mocha": "^9.2.2",
41
- "mongo-mock": "^4.1.0",
42
- "ts-mocha": "^9.0.2"
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"}
@@ -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"}
@@ -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"}