runlify 0.0.612 → 0.0.615
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/bin/runlify +0 -0
- package/build/projectsGeneration/builders/SystemMetaBuilder.js +29 -34
- package/build/projectsGeneration/builders/fields/BaseFieldBuilder.js +2 -2
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientArgsModelBuilder.js +44 -0
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientBaseModelBuilder.js +29 -0
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientBuilder.js +55 -0
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientQueryMethodsBuilder.js +55 -0
- package/build/projectsGeneration/builders/integrationClients/IntegrationClientReturnModelBuilder.js +49 -0
- package/build/projectsGeneration/generateProject.js +155 -237
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsConfiguration.js +2 -3
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsEntity.js +2 -3
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsIntegrationClient.js +36 -0
- package/build/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsRestApi.js +2 -3
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient.js +9 -0
- package/build/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/types.js +12 -0
- package/build/projectsGeneration/generators/fileTemplates/back/services/serviceConstrictors.js +3 -3
- package/build/types/projectsGeneration/builders/SystemMetaBuilder.d.ts +6 -2
- package/build/types/projectsGeneration/builders/buildedTypes.d.ts +16 -0
- package/build/types/projectsGeneration/builders/integrationClients/IntegrationClientArgsModelBuilder.d.ts +7 -0
- package/build/types/projectsGeneration/builders/integrationClients/IntegrationClientBaseModelBuilder.d.ts +11 -0
- package/build/types/projectsGeneration/builders/integrationClients/IntegrationClientBuilder.d.ts +10 -0
- package/build/types/projectsGeneration/builders/integrationClients/IntegrationClientQueryMethodsBuilder.d.ts +13 -0
- package/build/types/projectsGeneration/builders/integrationClients/IntegrationClientReturnModelBuilder.d.ts +9 -0
- package/build/types/projectsGeneration/generateProject.d.ts +2 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsConfiguration.d.ts +2 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsEntity.d.ts +2 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsIntegrationClient.d.ts +4 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/docs/backDocsRestApi.d.ts +2 -1
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient.d.ts +4 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/environment/src/integrationClients/types.d.ts +4 -0
- package/build/types/projectsGeneration/types.d.ts +2 -2
- package/package.json +7 -7
|
@@ -50,7 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
50
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
51
|
};
|
|
52
52
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
-
exports.generateFront = exports.generateFrontHelm = exports.generateFrontGitlabCi = exports.generateFrontSrc = exports.generateFrontSrcEntity = exports.generateFrontSrcGetEntityValidation = exports.generateFrontSrcEntityIcon = exports.generateFrontSrcEntityTranslationsReports = exports.generateFrontSrcEntityTranslationsSumRegistries = exports.generateFrontSrcEntityTranslationsInfoRegistries = exports.generateFrontSrcEntityTranslationsCatalogs = exports.generateFrontSrcEntityTranslationsDocs = exports.generateBack = exports.generateBackDocs = exports.generateAdminAppDocsConfiguration = exports.generateBackDevEnumsInit = exports.generateBackDevEnums = exports.generateBackEntitiesEnumInit = exports.generateBackEnumsInit = exports.generateBackEntityEnum = exports.generateBackEnums = exports.generateBackDocsEntities = exports.generateBackDocsRestApis = exports.generateBackDocsConfiguration = exports.generateBackEnvs = exports.generateBackHelm = exports.generateBackGitlabCi = exports.generateBackSrc = exports.generateBackSrcEntity = void 0;
|
|
53
|
+
exports.generateFront = exports.generateFrontHelm = exports.generateFrontGitlabCi = exports.generateFrontSrc = exports.generateFrontSrcEntity = exports.generateFrontSrcGetEntityValidation = exports.generateFrontSrcEntityIcon = exports.generateFrontSrcEntityTranslationsReports = exports.generateFrontSrcEntityTranslationsSumRegistries = exports.generateFrontSrcEntityTranslationsInfoRegistries = exports.generateFrontSrcEntityTranslationsCatalogs = exports.generateFrontSrcEntityTranslationsDocs = exports.generateBack = exports.generateBackDocs = exports.generateAdminAppDocsConfiguration = exports.generateBackDevEnumsInit = exports.generateBackDevEnums = exports.generateBackEntitiesEnumInit = exports.generateBackEnumsInit = exports.generateBackEntityEnum = exports.generateBackEnums = exports.generateBackDocsEntities = exports.generateBackDocsIntegrationClients = exports.generateBackDocsRestApis = exports.generateBackDocsConfiguration = exports.generateBackEnvs = exports.generateBackHelm = exports.generateBackGitlabCi = exports.generateBackIntegrationClients = exports.generateBackSrc = exports.generateBackSrcEntity = void 0;
|
|
54
54
|
var path_1 = require("path");
|
|
55
55
|
var resources_1 = require("./generators/fileTemplates/ui/resources");
|
|
56
56
|
var ResourcesPage_1 = require("./generators/fileTemplates/ui/ResourcesPage");
|
|
@@ -83,10 +83,10 @@ var uiLangInfoRegistriesTmpl_1 = require("./generators/fileTemplates/ui/i18n/lan
|
|
|
83
83
|
var uiLangSumRegistriesTmpl_1 = require("./generators/fileTemplates/ui/i18n/lang/uiLangSumRegistriesTmpl");
|
|
84
84
|
var args_1 = require("./args");
|
|
85
85
|
var defaultEnv_1 = require("./generators/fileTemplates/back/environment/defaultEnv");
|
|
86
|
-
var backDocsConfiguration_1 = require("./generators/fileTemplates/back/environment/docs/backDocsConfiguration");
|
|
86
|
+
var backDocsConfiguration_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsConfiguration"));
|
|
87
87
|
var adminAppDocsConfiguration_1 = require("./generators/fileTemplates/ui/environment/docs/adminAppDocsConfiguration");
|
|
88
|
-
var backDocsRestApi_1 = require("./generators/fileTemplates/back/environment/docs/backDocsRestApi");
|
|
89
|
-
var backDocsEntity_1 = require("./generators/fileTemplates/back/environment/docs/backDocsEntity");
|
|
88
|
+
var backDocsRestApi_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsRestApi"));
|
|
89
|
+
var backDocsEntity_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsEntity"));
|
|
90
90
|
var pluralize_1 = require("pluralize");
|
|
91
91
|
var baseResolvers_1 = __importDefault(require("./generators/fileTemplates/back/graph/help/baseResolvers"));
|
|
92
92
|
var HelpService_1 = __importDefault(require("./generators/fileTemplates/back/services/HelpService/HelpService"));
|
|
@@ -102,6 +102,10 @@ var Entities_1 = require("./generators/fileTemplates/back/Entities");
|
|
|
102
102
|
var initEntities_1 = require("./generators/fileTemplates/back/initEntities");
|
|
103
103
|
var getEntityValidation_1 = require("./generators/fileTemplates/ui/pages/getEntityValidation");
|
|
104
104
|
var elastic_1 = require("./generators/fileTemplates/back/elastic/elastic");
|
|
105
|
+
var backDocsIntegrationClient_1 = __importDefault(require("./generators/fileTemplates/back/environment/docs/backDocsIntegrationClient"));
|
|
106
|
+
var IntegrationClient_1 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/IntegrationClient"));
|
|
107
|
+
var change_case_1 = require("change-case");
|
|
108
|
+
var types_2 = __importDefault(require("./generators/fileTemplates/back/environment/src/integrationClients/types"));
|
|
105
109
|
// Бек (generateBack)
|
|
106
110
|
// Исходники бека (generateBackSrc)
|
|
107
111
|
// Исходники бека (generateBackSrcEntity)
|
|
@@ -149,11 +153,25 @@ var generateBackSrc = function (args) { return __awaiter(void 0, void 0, void 0,
|
|
|
149
153
|
}))];
|
|
150
154
|
case 2:
|
|
151
155
|
_a.sent();
|
|
156
|
+
(0, exports.generateBackIntegrationClients)(args);
|
|
152
157
|
return [2 /*return*/];
|
|
153
158
|
}
|
|
154
159
|
});
|
|
155
160
|
}); };
|
|
156
161
|
exports.generateBackSrc = generateBackSrc;
|
|
162
|
+
var generateBackIntegrationClients = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
163
|
+
var _i, _a, client, clientFolder;
|
|
164
|
+
return __generator(this, function (_b) {
|
|
165
|
+
for (_i = 0, _a = args.system.integrationClients; _i < _a.length; _i++) {
|
|
166
|
+
client = _a[_i];
|
|
167
|
+
clientFolder = (0, path_1.join)(args.options.detachedBackProject, 'src', 'integrationClients', "".concat(client.name));
|
|
168
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(clientFolder, "".concat((0, change_case_1.pascalCase)(client.name), "Client.ts")), (0, IntegrationClient_1.default)(args, client));
|
|
169
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(clientFolder, "types.ts"), (0, types_2.default)(args, client));
|
|
170
|
+
}
|
|
171
|
+
return [2 /*return*/];
|
|
172
|
+
});
|
|
173
|
+
}); };
|
|
174
|
+
exports.generateBackIntegrationClients = generateBackIntegrationClients;
|
|
157
175
|
var generateBackGitlabCi = function (_args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
158
176
|
return __generator(this, function (_a) {
|
|
159
177
|
return [2 /*return*/];
|
|
@@ -169,60 +187,51 @@ exports.generateBackHelm = generateBackHelm;
|
|
|
169
187
|
var generateBackEnvs = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
170
188
|
var filePath;
|
|
171
189
|
return __generator(this, function (_a) {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, defaultEnv_1.backDefaultEnv)(args))];
|
|
176
|
-
case 1:
|
|
177
|
-
_a.sent();
|
|
178
|
-
return [2 /*return*/];
|
|
179
|
-
}
|
|
190
|
+
filePath = (0, path_1.join)(args.options.detachedBackProject, 'config', 'default.json');
|
|
191
|
+
(0, fs_jetpack_1.write)(filePath, (0, defaultEnv_1.backDefaultEnv)(args));
|
|
192
|
+
return [2 /*return*/];
|
|
180
193
|
});
|
|
181
194
|
}); };
|
|
182
195
|
exports.generateBackEnvs = generateBackEnvs;
|
|
183
196
|
var generateBackDocsConfiguration = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
184
197
|
var filePath;
|
|
185
198
|
return __generator(this, function (_a) {
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, backDocsConfiguration_1.backDocsConfiguration)(args))];
|
|
190
|
-
case 1:
|
|
191
|
-
_a.sent();
|
|
192
|
-
return [2 /*return*/];
|
|
193
|
-
}
|
|
199
|
+
filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'configuration.md');
|
|
200
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsConfiguration_1.default)(args));
|
|
201
|
+
return [2 /*return*/];
|
|
194
202
|
});
|
|
195
203
|
}); };
|
|
196
204
|
exports.generateBackDocsConfiguration = generateBackDocsConfiguration;
|
|
197
205
|
var generateBackDocsRestApis = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
198
206
|
var _i, _a, restApi, filePath;
|
|
199
207
|
return __generator(this, function (_b) {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
case 1:
|
|
205
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
206
|
-
restApi = _a[_i];
|
|
207
|
-
filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'restApis', "".concat(restApi.name, ".md"));
|
|
208
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, backDocsRestApi_1.backDocsRestApi)(args, restApi))];
|
|
209
|
-
case 2:
|
|
210
|
-
_b.sent();
|
|
211
|
-
_b.label = 3;
|
|
212
|
-
case 3:
|
|
213
|
-
_i++;
|
|
214
|
-
return [3 /*break*/, 1];
|
|
215
|
-
case 4: return [2 /*return*/];
|
|
208
|
+
for (_i = 0, _a = args.system.restApis; _i < _a.length; _i++) {
|
|
209
|
+
restApi = _a[_i];
|
|
210
|
+
filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'restApis', "".concat(restApi.name, ".md"));
|
|
211
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsRestApi_1.default)(args, restApi));
|
|
216
212
|
}
|
|
213
|
+
return [2 /*return*/];
|
|
217
214
|
});
|
|
218
215
|
}); };
|
|
219
216
|
exports.generateBackDocsRestApis = generateBackDocsRestApis;
|
|
217
|
+
var generateBackDocsIntegrationClients = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
218
|
+
var _i, _a, client, filePath;
|
|
219
|
+
return __generator(this, function (_b) {
|
|
220
|
+
for (_i = 0, _a = args.system.integrationClients; _i < _a.length; _i++) {
|
|
221
|
+
client = _a[_i];
|
|
222
|
+
filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', 'integrationClients', "".concat(client.name, ".md"));
|
|
223
|
+
(0, fs_jetpack_1.write)(filePath, (0, backDocsIntegrationClient_1.default)(args, client));
|
|
224
|
+
}
|
|
225
|
+
return [2 /*return*/];
|
|
226
|
+
});
|
|
227
|
+
}); };
|
|
228
|
+
exports.generateBackDocsIntegrationClients = generateBackDocsIntegrationClients;
|
|
220
229
|
var generateBackDocsEntities = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
221
230
|
return __generator(this, function (_a) {
|
|
222
231
|
switch (_a.label) {
|
|
223
232
|
case 0: return [4 /*yield*/, Promise.all(args.entities.map(function (entity) {
|
|
224
233
|
var filePath = (0, path_1.join)(args.options.detachedBackProject, 'docs', (0, pluralize_1.plural)(entity.type), "".concat(entity.name, ".md"));
|
|
225
|
-
return (0, fs_jetpack_1.write)(filePath, (0, backDocsEntity_1.
|
|
234
|
+
return (0, fs_jetpack_1.write)(filePath, (0, backDocsEntity_1.default)((0, args_1.prepareEntityWideGenerationArgs)(args, entity)));
|
|
226
235
|
}))];
|
|
227
236
|
case 1:
|
|
228
237
|
_a.sent();
|
|
@@ -329,14 +338,9 @@ exports.generateBackDevEnumsInit = generateBackDevEnumsInit;
|
|
|
329
338
|
var generateAdminAppDocsConfiguration = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
330
339
|
var filePath;
|
|
331
340
|
return __generator(this, function (_a) {
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, adminAppDocsConfiguration_1.adminAppDocsConfiguration)(args))];
|
|
336
|
-
case 1:
|
|
337
|
-
_a.sent();
|
|
338
|
-
return [2 /*return*/];
|
|
339
|
-
}
|
|
341
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, 'docs', 'configuration.md');
|
|
342
|
+
(0, fs_jetpack_1.write)(filePath, (0, adminAppDocsConfiguration_1.adminAppDocsConfiguration)(args));
|
|
343
|
+
return [2 /*return*/];
|
|
340
344
|
});
|
|
341
345
|
}); };
|
|
342
346
|
exports.generateAdminAppDocsConfiguration = generateAdminAppDocsConfiguration;
|
|
@@ -346,6 +350,7 @@ var generateBackDocs = function (args) { return __awaiter(void 0, void 0, void 0
|
|
|
346
350
|
case 0: return [4 /*yield*/, Promise.all([
|
|
347
351
|
(0, exports.generateBackDocsConfiguration)(args),
|
|
348
352
|
(0, exports.generateBackDocsRestApis)(args),
|
|
353
|
+
(0, exports.generateBackDocsIntegrationClients)(args),
|
|
349
354
|
(0, exports.generateBackDocsEntities)(args),
|
|
350
355
|
(0, exports.generateBackEnums)(args),
|
|
351
356
|
(0, exports.generateBackEnumsInit)(args),
|
|
@@ -386,145 +391,85 @@ exports.generateBack = generateBack;
|
|
|
386
391
|
var generateFrontSrcEntityTranslationsDocs = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
387
392
|
var _i, _a, lang, filePath;
|
|
388
393
|
return __generator(this, function (_b) {
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
395
|
-
lang = _a[_i];
|
|
396
|
-
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Docs.ts"));
|
|
397
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, uiLangDocsTmpl_1.uiTranslationsLangDocsTmpl)(args, lang.id))];
|
|
398
|
-
case 2:
|
|
399
|
-
_b.sent();
|
|
400
|
-
_b.label = 3;
|
|
401
|
-
case 3:
|
|
402
|
-
_i++;
|
|
403
|
-
return [3 /*break*/, 1];
|
|
404
|
-
case 4: return [2 /*return*/];
|
|
394
|
+
// log.info('generateFrontSrcEntityTranslationsDocs');
|
|
395
|
+
for (_i = 0, _a = args.system.languages; _i < _a.length; _i++) {
|
|
396
|
+
lang = _a[_i];
|
|
397
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Docs.ts"));
|
|
398
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangDocsTmpl_1.uiTranslationsLangDocsTmpl)(args, lang.id));
|
|
405
399
|
}
|
|
400
|
+
return [2 /*return*/];
|
|
406
401
|
});
|
|
407
402
|
}); };
|
|
408
403
|
exports.generateFrontSrcEntityTranslationsDocs = generateFrontSrcEntityTranslationsDocs;
|
|
409
404
|
var generateFrontSrcEntityTranslationsCatalogs = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
410
405
|
var _i, _a, lang, filePath;
|
|
411
406
|
return __generator(this, function (_b) {
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
418
|
-
lang = _a[_i];
|
|
419
|
-
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Catalogs.ts"));
|
|
420
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, uiLangCatalogsTmpl_1.uiTranslationsLangCatalogsTmpl)(args, lang.id))];
|
|
421
|
-
case 2:
|
|
422
|
-
_b.sent();
|
|
423
|
-
_b.label = 3;
|
|
424
|
-
case 3:
|
|
425
|
-
_i++;
|
|
426
|
-
return [3 /*break*/, 1];
|
|
427
|
-
case 4: return [2 /*return*/];
|
|
407
|
+
// log.info('generateFrontSrcEntityTranslationsCatalogs');
|
|
408
|
+
for (_i = 0, _a = args.system.languages; _i < _a.length; _i++) {
|
|
409
|
+
lang = _a[_i];
|
|
410
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Catalogs.ts"));
|
|
411
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangCatalogsTmpl_1.uiTranslationsLangCatalogsTmpl)(args, lang.id));
|
|
428
412
|
}
|
|
413
|
+
return [2 /*return*/];
|
|
429
414
|
});
|
|
430
415
|
}); };
|
|
431
416
|
exports.generateFrontSrcEntityTranslationsCatalogs = generateFrontSrcEntityTranslationsCatalogs;
|
|
432
417
|
var generateFrontSrcEntityTranslationsInfoRegistries = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
433
418
|
var _i, _a, lang, filePath;
|
|
434
419
|
return __generator(this, function (_b) {
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
441
|
-
lang = _a[_i];
|
|
442
|
-
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "InfoRegistries.ts"));
|
|
443
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, uiLangInfoRegistriesTmpl_1.uiTranslationsLangInfoRegistriesTmpl)(args, lang.id))];
|
|
444
|
-
case 2:
|
|
445
|
-
_b.sent();
|
|
446
|
-
_b.label = 3;
|
|
447
|
-
case 3:
|
|
448
|
-
_i++;
|
|
449
|
-
return [3 /*break*/, 1];
|
|
450
|
-
case 4: return [2 /*return*/];
|
|
420
|
+
// log.info('generateFrontSrcEntityTranslationsInfoRegistries');
|
|
421
|
+
for (_i = 0, _a = args.system.languages; _i < _a.length; _i++) {
|
|
422
|
+
lang = _a[_i];
|
|
423
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "InfoRegistries.ts"));
|
|
424
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangInfoRegistriesTmpl_1.uiTranslationsLangInfoRegistriesTmpl)(args, lang.id));
|
|
451
425
|
}
|
|
426
|
+
return [2 /*return*/];
|
|
452
427
|
});
|
|
453
428
|
}); };
|
|
454
429
|
exports.generateFrontSrcEntityTranslationsInfoRegistries = generateFrontSrcEntityTranslationsInfoRegistries;
|
|
455
430
|
var generateFrontSrcEntityTranslationsSumRegistries = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
456
431
|
var _i, _a, lang, filePath;
|
|
457
432
|
return __generator(this, function (_b) {
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
464
|
-
lang = _a[_i];
|
|
465
|
-
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "SumRegistries.ts"));
|
|
466
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, uiLangSumRegistriesTmpl_1.uiTranslationsLangSumRegistriesTmpl)(args, lang.id))];
|
|
467
|
-
case 2:
|
|
468
|
-
_b.sent();
|
|
469
|
-
_b.label = 3;
|
|
470
|
-
case 3:
|
|
471
|
-
_i++;
|
|
472
|
-
return [3 /*break*/, 1];
|
|
473
|
-
case 4: return [2 /*return*/];
|
|
433
|
+
// log.info('generateFrontSrcEntityTranslationsSumRegistries');
|
|
434
|
+
for (_i = 0, _a = args.system.languages; _i < _a.length; _i++) {
|
|
435
|
+
lang = _a[_i];
|
|
436
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "SumRegistries.ts"));
|
|
437
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangSumRegistriesTmpl_1.uiTranslationsLangSumRegistriesTmpl)(args, lang.id));
|
|
474
438
|
}
|
|
439
|
+
return [2 /*return*/];
|
|
475
440
|
});
|
|
476
441
|
}); };
|
|
477
442
|
exports.generateFrontSrcEntityTranslationsSumRegistries = generateFrontSrcEntityTranslationsSumRegistries;
|
|
478
443
|
var generateFrontSrcEntityTranslationsReports = function (args) { return __awaiter(void 0, void 0, void 0, function () {
|
|
479
444
|
var _i, _a, lang, filePath;
|
|
480
445
|
return __generator(this, function (_b) {
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
487
|
-
lang = _a[_i];
|
|
488
|
-
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Reports.ts"));
|
|
489
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, uiLangReportsTmpl_1.uiTranslationsLangReportsTmpl)(args, lang.id))];
|
|
490
|
-
case 2:
|
|
491
|
-
_b.sent();
|
|
492
|
-
_b.label = 3;
|
|
493
|
-
case 3:
|
|
494
|
-
_i++;
|
|
495
|
-
return [3 /*break*/, 1];
|
|
496
|
-
case 4: return [2 /*return*/];
|
|
446
|
+
// log.info('generateFrontSrcEntityTranslationsReports');
|
|
447
|
+
for (_i = 0, _a = args.system.languages; _i < _a.length; _i++) {
|
|
448
|
+
lang = _a[_i];
|
|
449
|
+
filePath = (0, path_1.join)(args.options.detachedUiProject, "src/i18n/".concat(lang.id, "/").concat(lang.id, "Reports.ts"));
|
|
450
|
+
(0, fs_jetpack_1.write)(filePath, (0, uiLangReportsTmpl_1.uiTranslationsLangReportsTmpl)(args, lang.id));
|
|
497
451
|
}
|
|
452
|
+
return [2 /*return*/];
|
|
498
453
|
});
|
|
499
454
|
}); };
|
|
500
455
|
exports.generateFrontSrcEntityTranslationsReports = generateFrontSrcEntityTranslationsReports;
|
|
501
456
|
var generateFrontSrcEntityIcon = function (entityWideGenerationArgs) { return __awaiter(void 0, void 0, void 0, function () {
|
|
502
457
|
var name, filePath;
|
|
503
458
|
return __generator(this, function (_a) {
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, Icon_1.uiEntityIconTmpl)(entityWideGenerationArgs))];
|
|
509
|
-
case 1:
|
|
510
|
-
_a.sent();
|
|
511
|
-
return [2 /*return*/];
|
|
512
|
-
}
|
|
459
|
+
name = entityWideGenerationArgs.entity.name;
|
|
460
|
+
filePath = (0, path_1.join)(entityWideGenerationArgs.options.detachedUiProject, "src/adm/pages/".concat(name, "/").concat((0, cases_1.pascalSingular)(name), "Icon.tsx"));
|
|
461
|
+
(0, fs_jetpack_1.write)(filePath, (0, Icon_1.uiEntityIconTmpl)(entityWideGenerationArgs));
|
|
462
|
+
return [2 /*return*/];
|
|
513
463
|
});
|
|
514
464
|
}); };
|
|
515
465
|
exports.generateFrontSrcEntityIcon = generateFrontSrcEntityIcon;
|
|
516
466
|
var generateFrontSrcGetEntityValidation = function (entityWideGenerationArgs) { return __awaiter(void 0, void 0, void 0, function () {
|
|
517
467
|
var name, filePath;
|
|
518
468
|
return __generator(this, function (_a) {
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)(filePath, (0, getEntityValidation_1.uiGetEntityValidationTmpl)(entityWideGenerationArgs))];
|
|
524
|
-
case 1:
|
|
525
|
-
_a.sent();
|
|
526
|
-
return [2 /*return*/];
|
|
527
|
-
}
|
|
469
|
+
name = entityWideGenerationArgs.entity.name;
|
|
470
|
+
filePath = (0, path_1.join)(entityWideGenerationArgs.options.detachedUiProject, "src/adm/pages/".concat(name, "/get").concat((0, cases_1.pascalSingular)(name), "Validation.tsx"));
|
|
471
|
+
(0, fs_jetpack_1.write)(filePath, (0, getEntityValidation_1.uiGetEntityValidationTmpl)(entityWideGenerationArgs));
|
|
472
|
+
return [2 /*return*/];
|
|
528
473
|
});
|
|
529
474
|
}); };
|
|
530
475
|
exports.generateFrontSrcGetEntityValidation = generateFrontSrcGetEntityValidation;
|
|
@@ -633,16 +578,14 @@ var generateProject = function (system, initialOpts) {
|
|
|
633
578
|
// Pre grapgql types compose generation
|
|
634
579
|
_a.sent();
|
|
635
580
|
graphMetaServiceDir = (0, path_1.join)(prjBackSrcPrefixedDir, 'graph', 'services', 'meta');
|
|
636
|
-
|
|
637
|
-
case 4:
|
|
638
|
-
_a.sent();
|
|
581
|
+
(0, fs_jetpack_1.write)("".concat(graphMetaServiceDir, "/baseTypeDefs.ts"), (0, typeDefs_1.graphMetaTypesTmpl)());
|
|
639
582
|
return [4 /*yield*/, (0, genGraphSchemesByLocalGenerator_1.genGraphSchemesByLocalGenerator)(opts)];
|
|
640
|
-
case
|
|
583
|
+
case 4:
|
|
641
584
|
_a.sent();
|
|
642
585
|
return [4 /*yield*/, generateHelpService(args, false)
|
|
643
586
|
// Full generation
|
|
644
587
|
];
|
|
645
|
-
case
|
|
588
|
+
case 5:
|
|
646
589
|
_a.sent();
|
|
647
590
|
// Full generation
|
|
648
591
|
return [4 /*yield*/, Promise.all(entities.map(function (entity) {
|
|
@@ -650,43 +593,30 @@ var generateProject = function (system, initialOpts) {
|
|
|
650
593
|
}))
|
|
651
594
|
// Prisma schema
|
|
652
595
|
];
|
|
653
|
-
case
|
|
596
|
+
case 6:
|
|
654
597
|
// Full generation
|
|
655
598
|
_a.sent();
|
|
656
599
|
servicesDir = (0, path_1.join)(prjBackSrcPrefixedDir, 'services');
|
|
657
600
|
graphDir = (0, path_1.join)(prjBackSrcPrefixedDir, 'graph');
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
_a.label = 10;
|
|
673
|
-
case 10:
|
|
674
|
-
if (!opts.genContext) return [3 /*break*/, 12];
|
|
675
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'serviceConstrictors.ts'), (0, serviceConstrictors_1.default)(args))];
|
|
676
|
-
case 11:
|
|
677
|
-
_a.sent();
|
|
678
|
-
_a.label = 12;
|
|
679
|
-
case 12:
|
|
601
|
+
(0, fs_jetpack_1.write)("".concat(graphMetaServiceDir, "/baseResolvers.ts"), (0, resolvers_1.graphMetaResolversTmpl)());
|
|
602
|
+
// // Context
|
|
603
|
+
// // src/dc/services/context.ts
|
|
604
|
+
// if (opts.genContext && !opts.typesOnly) {
|
|
605
|
+
// write(join(servicesDir, 'context.ts'), graphContextTmpl(args));
|
|
606
|
+
// }
|
|
607
|
+
// Types
|
|
608
|
+
if (opts.genContext) {
|
|
609
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'BaseServices.ts'), (0, BaseServices_1.default)(args));
|
|
610
|
+
}
|
|
611
|
+
// Types
|
|
612
|
+
if (opts.genContext) {
|
|
613
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(servicesDir, 'serviceConstrictors.ts'), (0, serviceConstrictors_1.default)(args));
|
|
614
|
+
}
|
|
680
615
|
generatedAdditionalServices = (0, AdditionalServices_1.additionalServicesTmpl)();
|
|
681
616
|
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(servicesDir, 'AdditionalServices.ts'), generatedAdditionalServices)];
|
|
682
|
-
case
|
|
683
|
-
_a.sent();
|
|
684
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)((0, path_1.join)(graphDir, 'permissionsToGraphql.ts'), (0, permissionsToGraphql_1.backPermissionToGraphqlTmpl)(args, opts))
|
|
685
|
-
// Root
|
|
686
|
-
// src/restRouter.ts
|
|
687
|
-
];
|
|
688
|
-
case 14:
|
|
617
|
+
case 7:
|
|
689
618
|
_a.sent();
|
|
619
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(graphDir, 'permissionsToGraphql.ts'), (0, permissionsToGraphql_1.backPermissionToGraphqlTmpl)(args, opts));
|
|
690
620
|
restRouter = (0, restRouter_1.restRouterTmpl)();
|
|
691
621
|
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjDetachedBackSrcDir, 'rest', 'restRouter.ts'), restRouter)
|
|
692
622
|
// // src/meta/metadata.json
|
|
@@ -707,88 +637,76 @@ var generateProject = function (system, initialOpts) {
|
|
|
707
637
|
// infoRegistries: system.infoRegistries,
|
|
708
638
|
// sumRegistries: system.sumRegistries,
|
|
709
639
|
// }
|
|
710
|
-
//
|
|
640
|
+
// write(
|
|
711
641
|
// join(genFolder, 'metadata.json'),
|
|
712
642
|
// stringify(metaWithoutOptions, undefined, 1)
|
|
713
643
|
// )
|
|
714
644
|
// UI
|
|
715
645
|
];
|
|
716
|
-
case
|
|
646
|
+
case 8:
|
|
717
647
|
_a.sent();
|
|
718
648
|
prjUiSrcPrefixedDir = '';
|
|
719
649
|
prjDetachedUiSrcDir = (0, path_1.join)(opts.detachedUiProject, 'src');
|
|
720
650
|
// if (opts.detachedBackProject) {
|
|
721
651
|
prjUiSrcPrefixedDir = (0, path_1.join)(prjDetachedUiSrcDir, 'adm');
|
|
722
|
-
if (!!opts.typesOnly) return [3 /*break*/,
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
_a.label = 19;
|
|
736
|
-
case 19:
|
|
652
|
+
if (!!opts.typesOnly) return [3 /*break*/, 13];
|
|
653
|
+
// Resources
|
|
654
|
+
// src/dc/resources.tsx genUiResources uiResourcesTmpl
|
|
655
|
+
if (opts.genUiResources) {
|
|
656
|
+
generatedResources = (0, resources_1.uiResourcesTmpl)(args);
|
|
657
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'resources.tsx'), generatedResources);
|
|
658
|
+
}
|
|
659
|
+
// Resources page
|
|
660
|
+
// src/dc/ResourcesPage.tsx genUiResourcesPage uiResourcesPageTmpl
|
|
661
|
+
if (opts.genUiResourcesPage) {
|
|
662
|
+
generatedResources = (0, ResourcesPage_1.uiResourcesPageTmpl)(args);
|
|
663
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'ResourcesPage.tsx'), generatedResources);
|
|
664
|
+
}
|
|
737
665
|
generatedUiMetaPage = (0, MetaPage_1.uiMetaPageTmpl)();
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'entityMapping.ts'), generatedResources)];
|
|
747
|
-
case 21:
|
|
748
|
-
_a.sent();
|
|
749
|
-
_a.label = 22;
|
|
750
|
-
case 22:
|
|
751
|
-
if (!opts.genUiMenu) return [3 /*break*/, 25];
|
|
666
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'MetaPage.tsx'), generatedUiMetaPage);
|
|
667
|
+
// Resources page
|
|
668
|
+
// src/dc/entityMapping.ts genUiEntityMapping uiEntityMappingTmpl
|
|
669
|
+
if (opts.genUiEntityMapping) {
|
|
670
|
+
generatedResources = (0, entityMapping_1.uiEntityMappingTmpl)(args, opts);
|
|
671
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'entityMapping.ts'), generatedResources);
|
|
672
|
+
}
|
|
673
|
+
if (!opts.genUiMenu) return [3 /*break*/, 10];
|
|
752
674
|
generatedSubMenu = (0, getDefaultMenu_1.uiGetDefaultMenuTmpl)(args);
|
|
753
675
|
generatedAdditionalMenu = (0, getAdditionalMenu_1.uiGetAdditionalMenuTmpl)();
|
|
754
|
-
|
|
755
|
-
case 23:
|
|
756
|
-
_a.sent();
|
|
676
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'getDefaultMenu.ts'), generatedSubMenu);
|
|
757
677
|
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'getAdditionalMenu.ts'), generatedAdditionalMenu)];
|
|
758
|
-
case
|
|
759
|
-
_a.sent();
|
|
760
|
-
_a.label = 25;
|
|
761
|
-
case 25:
|
|
762
|
-
if (!opts.genUiRoutes) return [3 /*break*/, 27];
|
|
763
|
-
generatedResources = (0, routes_1.default)(args);
|
|
764
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'routes.tsx'), generatedResources)];
|
|
765
|
-
case 26:
|
|
678
|
+
case 9:
|
|
766
679
|
_a.sent();
|
|
767
|
-
_a.label =
|
|
768
|
-
case
|
|
680
|
+
_a.label = 10;
|
|
681
|
+
case 10:
|
|
682
|
+
// Resources page
|
|
683
|
+
// src/dc/routes.tsx genUiRoutes uiRoutesTmpl
|
|
684
|
+
if (opts.genUiRoutes) {
|
|
685
|
+
generatedResources = (0, routes_1.default)(args);
|
|
686
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(prjUiSrcPrefixedDir, 'routes.tsx'), generatedResources);
|
|
687
|
+
}
|
|
769
688
|
generatedUiAdditionalRoutesTmpl = (0, additionalRoutes_1.uiAdditionalRoutesTmpl)();
|
|
770
689
|
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'additionalRoutes.tsx'), generatedUiAdditionalRoutesTmpl)
|
|
771
690
|
// Functions page
|
|
772
691
|
// src/dc/functions/Functions.tsx
|
|
773
692
|
];
|
|
774
|
-
case
|
|
775
|
-
_a.sent();
|
|
776
|
-
if (!opts.genUiFunctions) return [3 /*break*/, 30];
|
|
777
|
-
generatedResources = (0, Functions_1.uiFunctionsTmpl)(opts);
|
|
778
|
-
uiFunctionsDir = (0, path_1.join)(prjUiSrcPrefixedDir, 'functions');
|
|
779
|
-
return [4 /*yield*/, (0, fs_jetpack_1.write)((0, path_1.join)(uiFunctionsDir, 'Functions.tsx'), generatedResources)];
|
|
780
|
-
case 29:
|
|
693
|
+
case 11:
|
|
781
694
|
_a.sent();
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
if (
|
|
695
|
+
// Functions page
|
|
696
|
+
// src/dc/functions/Functions.tsx
|
|
697
|
+
if (opts.genUiFunctions) {
|
|
698
|
+
generatedResources = (0, Functions_1.uiFunctionsTmpl)(opts);
|
|
699
|
+
uiFunctionsDir = (0, path_1.join)(prjUiSrcPrefixedDir, 'functions');
|
|
700
|
+
(0, fs_jetpack_1.write)((0, path_1.join)(uiFunctionsDir, 'Functions.tsx'), generatedResources);
|
|
701
|
+
}
|
|
702
|
+
if (!opts.genUiDashboard) return [3 /*break*/, 13];
|
|
785
703
|
generatedResources = (0, Dashboard_1.default)();
|
|
786
704
|
return [4 /*yield*/, (0, utils_1.writeFileIfNotExists)((0, path_1.join)(prjUiSrcPrefixedDir, 'Dashboard.tsx'), generatedResources)];
|
|
787
|
-
case
|
|
705
|
+
case 12:
|
|
788
706
|
_a.sent();
|
|
789
|
-
_a.label =
|
|
790
|
-
case
|
|
791
|
-
case
|
|
707
|
+
_a.label = 13;
|
|
708
|
+
case 13: return [4 /*yield*/, (0, generateEnvironment_1.generateEnvironment)(args)];
|
|
709
|
+
case 14:
|
|
792
710
|
_a.sent();
|
|
793
711
|
return [2 /*return*/];
|
|
794
712
|
}
|
|
@@ -796,4 +714,4 @@ var generateProject = function (system, initialOpts) {
|
|
|
796
714
|
});
|
|
797
715
|
};
|
|
798
716
|
exports.default = generateProject;
|
|
799
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0ZVByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2QkFBMkI7QUFDM0IscUVBQXlFO0FBQ3pFLDZFQUFpRjtBQUNqRixtR0FBd0c7QUFDeEcsZ0dBQStFO0FBQy9FLDZFQUFpRjtBQUNqRixzRkFBcUU7QUFDckUsK0VBQW1GO0FBQ25GLCtFQUFtRjtBQUNuRiw2REFBMkQ7QUFDM0QsNkVBQW9GO0FBQ3BGLHFGQUFtRjtBQUNuRixpQ0FBK0U7QUFDL0UsbURBQWlEO0FBQ2pELDhFQUFnRjtBQUNoRixpQ0FBOEM7QUFDOUMsbUZBQXVGO0FBQ3ZGLHFGQUF5RjtBQUN6RixtRUFBdUU7QUFDdkUsZ0ZBQXdGO0FBQ3hGLGtGQUE2RjtBQUM3RixrR0FBb0c7QUFFcEcseUZBQW1HO0FBQ25HLHlDQUFrQztBQUNsQywrRkFBeUc7QUFDekcsaUVBQTJFO0FBQzNFLHdDQUF1RDtBQUN2RCxpR0FBMkc7QUFDM0csNkdBQXVIO0FBQ3ZILDJHQUFxSDtBQUNySCwrQkFLZTtBQUNmLHFGQUF1RjtBQUN2RixnSEFBOEc7QUFDOUcsc0hBQW9IO0FBQ3BILG9HQUFrRztBQUNsRyxrR0FBZ0c7QUFDaEcsdUNBQTRDO0FBQzVDLDJHQUF3RjtBQUN4RixpSEFBOEY7QUFDOUYsdUdBQXlGO0FBQ3pGLHlHQUFzRjtBQUN0Rix5SEFBc0c7QUFDdEcsNkRBQStEO0FBQy9ELG1FQUFxRTtBQUNyRSx5RUFBK0U7QUFDL0UsbUVBQXlFO0FBQ3pFLHFIQUF1RztBQUN2RyxxRUFBbUU7QUFDbkUsNkVBQTJFO0FBQzNFLCtGQUFtRztBQUNuRywyRUFBNkY7QUFFN0YscUJBQXFCO0FBQ3JCLG9DQUFvQztBQUNwQyw0Q0FBNEM7QUFDNUMs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
|
|
717
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0ZVByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2QkFBMkI7QUFDM0IscUVBQXlFO0FBQ3pFLDZFQUFpRjtBQUNqRixtR0FBd0c7QUFDeEcsZ0dBQStFO0FBQy9FLDZFQUFpRjtBQUNqRixzRkFBcUU7QUFDckUsK0VBQW1GO0FBQ25GLCtFQUFtRjtBQUNuRiw2REFBMkQ7QUFDM0QsNkVBQW9GO0FBQ3BGLHFGQUFtRjtBQUNuRixpQ0FBK0U7QUFDL0UsbURBQWlEO0FBQ2pELDhFQUFnRjtBQUNoRixpQ0FBOEM7QUFDOUMsbUZBQXVGO0FBQ3ZGLHFGQUF5RjtBQUN6RixtRUFBdUU7QUFDdkUsZ0ZBQXdGO0FBQ3hGLGtGQUE2RjtBQUM3RixrR0FBb0c7QUFFcEcseUZBQW1HO0FBQ25HLHlDQUFrQztBQUNsQywrRkFBeUc7QUFDekcsaUVBQTJFO0FBQzNFLHdDQUF1RDtBQUN2RCxpR0FBMkc7QUFDM0csNkdBQXVIO0FBQ3ZILDJHQUFxSDtBQUNySCwrQkFLZTtBQUNmLHFGQUF1RjtBQUN2RixpSUFBMEc7QUFDMUcsc0hBQW9IO0FBQ3BILHFIQUE4RjtBQUM5RixtSEFBNEY7QUFDNUYsdUNBQTRDO0FBQzVDLDJHQUF3RjtBQUN4RixpSEFBOEY7QUFDOUYsdUdBQXlGO0FBQ3pGLHlHQUFzRjtBQUN0Rix5SEFBc0c7QUFDdEcsNkRBQStEO0FBQy9ELG1FQUFxRTtBQUNyRSx5RUFBK0U7QUFDL0UsbUVBQXlFO0FBQ3pFLHFIQUF1RztBQUN2RyxxRUFBbUU7QUFDbkUsNkVBQTJFO0FBQzNFLCtGQUFtRztBQUNuRywyRUFBNkY7QUFDN0YseUlBQWtIO0FBQ2xILDJJQUE0SDtBQUM1SCwyQ0FBd0M7QUFDeEMs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
|