@stemy/backend 3.5.0 → 3.5.2
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/bundles/stemy-backend.umd.js +518 -451
- package/bundles/stemy-backend.umd.js.map +1 -1
- package/common-types.d.ts +3 -1
- package/esm2015/common-types.js +2 -1
- package/esm2015/public_api.js +17 -7
- package/esm2015/rest-middlewares/error-handler.middleware.js +5 -1
- package/esm2015/services/open-api.js +76 -0
- package/esm2015/utilities/decorators.js +9 -0
- package/fesm2015/stemy-backend.js +432 -383
- package/fesm2015/stemy-backend.js.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +3 -1
- package/services/open-api.d.ts +11 -0
- package/stemy-backend.metadata.json +1 -1
- package/utilities/decorators.d.ts +1 -0
|
@@ -4,10 +4,11 @@ import { sign, verify } from 'jsonwebtoken';
|
|
|
4
4
|
import { injectable, scoped, Lifecycle, singleton, injectAll, inject, isFactoryProvider, container } from 'tsyringe';
|
|
5
5
|
import { getMetadataArgsStorage, HttpError, Authorized, Post, UploadedFile, Body, Get, Param, QueryParam, Res, QueryParams, Controller, UnauthorizedError, CurrentUser, BadRequestError, Middleware, createParamDecorator, useContainer, useExpressServer } from 'routing-controllers';
|
|
6
6
|
import { OnMessage, ConnectedSocket, MessageBody, SocketController, Middleware as Middleware$1, useContainer as useContainer$1, useSocketServer } from 'socket-controllers';
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
7
|
+
import fontKit_ from 'fontkit';
|
|
8
|
+
import { fromBuffer } from 'file-type';
|
|
9
|
+
import sharp_ from 'sharp';
|
|
10
|
+
import { ObjectId as ObjectId$1 } from 'bson';
|
|
11
|
+
import axios, { AxiosError } from 'axios';
|
|
11
12
|
import { exec } from 'child_process';
|
|
12
13
|
import { createHash } from 'crypto';
|
|
13
14
|
import { Subscription, Observable, Subject, from } from 'rxjs';
|
|
@@ -16,11 +17,6 @@ import { mkdir, unlink, readFile as readFile$1, writeFile as writeFile$1, lstat,
|
|
|
16
17
|
import { ObjectId, GridFSBucket } from 'mongodb';
|
|
17
18
|
import { Types, connect, model } from 'mongoose';
|
|
18
19
|
import { Readable, PassThrough } from 'stream';
|
|
19
|
-
import sharp_ from 'sharp';
|
|
20
|
-
import { ObjectId as ObjectId$1 } from 'bson';
|
|
21
|
-
import fontKit_ from 'fontkit';
|
|
22
|
-
import { fromBuffer } from 'file-type';
|
|
23
|
-
import axios from 'axios';
|
|
24
20
|
import dotenv from 'dotenv';
|
|
25
21
|
import { validate, schedule } from 'node-cron';
|
|
26
22
|
import { socket } from 'zeromq';
|
|
@@ -31,11 +27,40 @@ import socket_io from 'socket.io';
|
|
|
31
27
|
import { v4 } from 'uuid';
|
|
32
28
|
import { createTransport } from 'nodemailer';
|
|
33
29
|
import * as Handlebars from 'handlebars';
|
|
30
|
+
import { routingControllersToSpec, OpenAPI } from 'routing-controllers-openapi';
|
|
31
|
+
import { validationMetadatasToSchemas } from 'class-validator-jsonschema';
|
|
32
|
+
import { defaultMetadataStorage } from 'class-transformer/storage';
|
|
33
|
+
import { ValidatorConstraint, ValidationTypes, Min, Max, IsOptional, IsBoolean } from 'class-validator';
|
|
34
34
|
import { compare } from 'bcrypt';
|
|
35
35
|
import moment from 'moment';
|
|
36
36
|
import { getModelForClass } from '@typegoose/typegoose';
|
|
37
37
|
import { getValue as getValue$1, setValue } from 'mongoose/lib/utils';
|
|
38
38
|
|
|
39
|
+
// --- DI functions ---
|
|
40
|
+
const Type = Function;
|
|
41
|
+
// --- Injection tokens ---
|
|
42
|
+
const FIXTURE = Symbol.for("fixture-token");
|
|
43
|
+
const JOB = Symbol.for("job-token");
|
|
44
|
+
const EXPRESS = Symbol.for("express-token");
|
|
45
|
+
const HTTP_SERVER = Symbol.for("http-server-token");
|
|
46
|
+
const SOCKET_SERVER = Symbol.for("socket-server-token");
|
|
47
|
+
const PARAMETER = Symbol.for("parameter-token");
|
|
48
|
+
const DI_CONTAINER = Symbol.for("di-container-token");
|
|
49
|
+
const OPENAPI_VALIDATION = Symbol.for("openapi-validation-token");
|
|
50
|
+
class Parameter {
|
|
51
|
+
constructor(name, defaultValue, resolver = null) {
|
|
52
|
+
this.name = name;
|
|
53
|
+
this.defaultValue = defaultValue;
|
|
54
|
+
this.resolver = resolver;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
var __decorate$B = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
59
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
60
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
61
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
62
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
63
|
+
};
|
|
39
64
|
var __awaiter$y = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
40
65
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
41
66
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -45,7 +70,125 @@ var __awaiter$y = (this && this.__awaiter) || function (thisArg, _arguments, P,
|
|
|
45
70
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
46
71
|
});
|
|
47
72
|
};
|
|
73
|
+
var AssetProcessor_1;
|
|
48
74
|
const sharp$3 = sharp_;
|
|
75
|
+
const fontKit = fontKit_;
|
|
76
|
+
const fontTypes = [
|
|
77
|
+
"application/font-woff", "application/font-woff2", "application/x-font-opentype", "application/x-font-truetype", "application/x-font-datafork",
|
|
78
|
+
"font/woff", "font/woff2", "font/otf", "font/ttf", "font/datafork"
|
|
79
|
+
];
|
|
80
|
+
const imageTypes = ["image/jpeg", "image/jpg", "image/png", "image/svg+xml"];
|
|
81
|
+
const fontProps = [
|
|
82
|
+
"postscriptName", "fullName", "familyName", "subfamilyName",
|
|
83
|
+
"copyright", "version", "unitsPerEm", "ascent", "descent", "lineGap",
|
|
84
|
+
"underlinePosition", "underlineThickness", "italicAngle", "capHeight",
|
|
85
|
+
"xHeight", "numGlyphs", "characterSet", "availableFeatures"
|
|
86
|
+
];
|
|
87
|
+
let AssetProcessor = AssetProcessor_1 = class AssetProcessor {
|
|
88
|
+
static checkTextFileType(type) {
|
|
89
|
+
return type.mime.indexOf("text") >= 0 || type.mime.indexOf("xml") >= 0;
|
|
90
|
+
}
|
|
91
|
+
static fixTextFileType(type, buffer) {
|
|
92
|
+
const text = buffer.toString("utf8");
|
|
93
|
+
if (text.indexOf("<svg") >= 0) {
|
|
94
|
+
return { ext: "svg", mime: "image/svg+xml" };
|
|
95
|
+
}
|
|
96
|
+
return type;
|
|
97
|
+
}
|
|
98
|
+
static fileTypeFromBuffer(buffer) {
|
|
99
|
+
var _a;
|
|
100
|
+
return __awaiter$y(this, void 0, void 0, function* () {
|
|
101
|
+
const type = ((_a = yield fromBuffer(buffer)) !== null && _a !== void 0 ? _a : { ext: "txt", mime: "text/plain" });
|
|
102
|
+
if (AssetProcessor_1.checkTextFileType(type)) {
|
|
103
|
+
return AssetProcessor_1.fixTextFileType(type, buffer);
|
|
104
|
+
}
|
|
105
|
+
return type;
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
static extractFontFormat(font) {
|
|
109
|
+
const name = font.constructor.name;
|
|
110
|
+
const tag = font["directory"].tag;
|
|
111
|
+
switch (name) {
|
|
112
|
+
case "TTFFont":
|
|
113
|
+
return tag === "OTTO" ? "opentype" : "truetype";
|
|
114
|
+
case "WOFF2Font":
|
|
115
|
+
return "woff2";
|
|
116
|
+
case "WOFFFont":
|
|
117
|
+
return "woff";
|
|
118
|
+
case "DFont":
|
|
119
|
+
return "datafork";
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
static isImage(contentType) {
|
|
124
|
+
return imageTypes.indexOf(contentType) >= 0;
|
|
125
|
+
}
|
|
126
|
+
static copyImageMeta(buffer, metadata, fileType) {
|
|
127
|
+
return __awaiter$y(this, void 0, void 0, function* () {
|
|
128
|
+
if (fileType.mime === "image/svg+xml") {
|
|
129
|
+
const match = /<svg([^<>]+)>/gi.exec(buffer.toString("utf8"));
|
|
130
|
+
if (match && match.length > 1) {
|
|
131
|
+
const attrs = match[1].match(/([a-z]+)="([^"]+)"/gi);
|
|
132
|
+
attrs.forEach(attr => {
|
|
133
|
+
if (attr.length < 5)
|
|
134
|
+
return;
|
|
135
|
+
const [name, value] = attr.split("=");
|
|
136
|
+
const val = value.replace(/"/gi, "");
|
|
137
|
+
metadata[name] = isNaN(val) ? val : Number(val);
|
|
138
|
+
});
|
|
139
|
+
if (metadata.viewBox && (isNaN(metadata.width) || isNaN(metadata.height))) {
|
|
140
|
+
const parts = metadata.viewBox.split(" ");
|
|
141
|
+
metadata.width = Number(parts[0]) + Number(parts[2]);
|
|
142
|
+
metadata.height = Number(parts[1]) + Number(parts[3]);
|
|
143
|
+
}
|
|
144
|
+
if (!isNaN(metadata.width) && !isNaN(metadata.height)) {
|
|
145
|
+
metadata.svgSize = { x: metadata.width, y: metadata.height };
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return buffer;
|
|
149
|
+
}
|
|
150
|
+
const output = yield sharp$3(buffer).rotate().toBuffer({ resolveWithObject: true });
|
|
151
|
+
Object.assign(metadata, output.info);
|
|
152
|
+
return output.data;
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
static isFont(contentType) {
|
|
156
|
+
return fontTypes.indexOf(contentType) >= 0;
|
|
157
|
+
}
|
|
158
|
+
static copyFontMeta(buffer, metadata) {
|
|
159
|
+
const font = fontKit.create(buffer);
|
|
160
|
+
metadata.format = AssetProcessor_1.extractFontFormat(font);
|
|
161
|
+
fontProps.forEach(prop => {
|
|
162
|
+
metadata[prop] = font[prop];
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
process(buffer, metadata, fileType) {
|
|
166
|
+
return __awaiter$y(this, void 0, void 0, function* () {
|
|
167
|
+
if (AssetProcessor_1.isImage(fileType.mime)) {
|
|
168
|
+
buffer = yield AssetProcessor_1.copyImageMeta(buffer, metadata, fileType);
|
|
169
|
+
}
|
|
170
|
+
if (AssetProcessor_1.isFont(fileType.mime)) {
|
|
171
|
+
AssetProcessor_1.copyFontMeta(buffer, metadata);
|
|
172
|
+
}
|
|
173
|
+
return buffer;
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
AssetProcessor = AssetProcessor_1 = __decorate$B([
|
|
178
|
+
injectable(),
|
|
179
|
+
scoped(Lifecycle.ContainerScoped)
|
|
180
|
+
], AssetProcessor);
|
|
181
|
+
|
|
182
|
+
var __awaiter$x = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
183
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
184
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
185
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
186
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
187
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
188
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
189
|
+
});
|
|
190
|
+
};
|
|
191
|
+
const sharp$2 = sharp_;
|
|
49
192
|
const diContainers = {
|
|
50
193
|
appContainer: null
|
|
51
194
|
};
|
|
@@ -214,7 +357,7 @@ function toCropRegion(cropInfo) {
|
|
|
214
357
|
};
|
|
215
358
|
}
|
|
216
359
|
function toImage(src, params, meta) {
|
|
217
|
-
return __awaiter$
|
|
360
|
+
return __awaiter$x(this, void 0, void 0, function* () {
|
|
218
361
|
// Default params and meta
|
|
219
362
|
params = params || {};
|
|
220
363
|
meta = meta || {};
|
|
@@ -237,7 +380,7 @@ function toImage(src, params, meta) {
|
|
|
237
380
|
const cropBefore = toCropRegion(params.cropBefore || (params.crop ? meta.cropBefore : null));
|
|
238
381
|
const cropAfter = toCropRegion(params.cropAfter || (params.crop ? meta.cropAfter : null));
|
|
239
382
|
// Get metadata
|
|
240
|
-
let img = sharp$
|
|
383
|
+
let img = sharp$2(buffer);
|
|
241
384
|
let { width, height } = yield img.metadata();
|
|
242
385
|
// Crop before resize
|
|
243
386
|
if (cropBefore) {
|
|
@@ -271,7 +414,7 @@ function toImage(src, params, meta) {
|
|
|
271
414
|
// Rotate
|
|
272
415
|
if (params.rotation !== 0) {
|
|
273
416
|
buffer = yield img.toBuffer();
|
|
274
|
-
img = sharp$
|
|
417
|
+
img = sharp$2(buffer).rotate(params.rotation);
|
|
275
418
|
}
|
|
276
419
|
buffer = yield img.toBuffer();
|
|
277
420
|
src = src instanceof Readable ? bufferToStream(buffer) : buffer;
|
|
@@ -352,7 +495,7 @@ function readFile(path) {
|
|
|
352
495
|
});
|
|
353
496
|
}
|
|
354
497
|
function readAndDeleteFile(path, timeout = 5000) {
|
|
355
|
-
return __awaiter$
|
|
498
|
+
return __awaiter$x(this, void 0, void 0, function* () {
|
|
356
499
|
const data = yield readFile(path);
|
|
357
500
|
setTimeout(() => {
|
|
358
501
|
unlink(path, () => {
|
|
@@ -362,7 +505,7 @@ function readAndDeleteFile(path, timeout = 5000) {
|
|
|
362
505
|
});
|
|
363
506
|
}
|
|
364
507
|
function writeFile(path, data) {
|
|
365
|
-
return __awaiter$
|
|
508
|
+
return __awaiter$x(this, void 0, void 0, function* () {
|
|
366
509
|
yield mkdirRecursive(dirname(path));
|
|
367
510
|
return new Promise((res, rej) => {
|
|
368
511
|
writeFile$1(path, data, err => {
|
|
@@ -669,249 +812,23 @@ function jsonHighlight(input, colorOptions) {
|
|
|
669
812
|
? colors.nullColor
|
|
670
813
|
: color;
|
|
671
814
|
}
|
|
672
|
-
return `${color}${match}${ConsoleColor.Reset}`;
|
|
673
|
-
});
|
|
674
|
-
}
|
|
675
|
-
function replaceSpecialChars(str, to = "-") {
|
|
676
|
-
return `${str}`.replace(/[&\/\\#, +()$~%.@'":*?<>{}]/g, to);
|
|
677
|
-
}
|
|
678
|
-
|
|
679
|
-
var __decorate$A = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
680
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
681
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
682
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
683
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
684
|
-
};
|
|
685
|
-
function checkValue(multi, value) {
|
|
686
|
-
if (multi) {
|
|
687
|
-
return Array.isArray(value) && value.every(v => {
|
|
688
|
-
try {
|
|
689
|
-
const id = new ObjectId$1(v);
|
|
690
|
-
return id instanceof ObjectId$1;
|
|
691
|
-
}
|
|
692
|
-
catch (e) {
|
|
693
|
-
return false;
|
|
694
|
-
}
|
|
695
|
-
});
|
|
696
|
-
}
|
|
697
|
-
if (null === value)
|
|
698
|
-
return true;
|
|
699
|
-
try {
|
|
700
|
-
const id = new ObjectId$1(value);
|
|
701
|
-
return id instanceof ObjectId$1;
|
|
702
|
-
}
|
|
703
|
-
catch (e) {
|
|
704
|
-
return false;
|
|
705
|
-
}
|
|
706
|
-
}
|
|
707
|
-
let IsFile = class IsFile {
|
|
708
|
-
validate(value, validationArguments) {
|
|
709
|
-
const [multi] = (validationArguments.constraints || []);
|
|
710
|
-
return checkValue(multi, value);
|
|
711
|
-
}
|
|
712
|
-
};
|
|
713
|
-
IsFile = __decorate$A([
|
|
714
|
-
ValidatorConstraint()
|
|
715
|
-
], IsFile);
|
|
716
|
-
let IsObjectId = class IsObjectId {
|
|
717
|
-
validate(value, validationArguments) {
|
|
718
|
-
const [_, multi] = (validationArguments.constraints || []);
|
|
719
|
-
return checkValue(multi, value);
|
|
720
|
-
}
|
|
721
|
-
};
|
|
722
|
-
IsObjectId = __decorate$A([
|
|
723
|
-
ValidatorConstraint()
|
|
724
|
-
], IsObjectId);
|
|
725
|
-
|
|
726
|
-
let apiDocs = null;
|
|
727
|
-
function getApiDocs(customValidation) {
|
|
728
|
-
if (apiDocs)
|
|
729
|
-
return apiDocs;
|
|
730
|
-
const storage = getMetadataArgsStorage();
|
|
731
|
-
const spec = routingControllersToSpec(storage);
|
|
732
|
-
spec.basePath = "/api/";
|
|
733
|
-
spec.definitions = validationMetadatasToSchemas({
|
|
734
|
-
classTransformerMetadataStorage: defaultMetadataStorage,
|
|
735
|
-
additionalConverters: {
|
|
736
|
-
[ValidationTypes.CUSTOM_VALIDATION]: (meta, options) => {
|
|
737
|
-
const res = isFunction(customValidation) ? customValidation(meta, options) : customValidation;
|
|
738
|
-
if (!!res)
|
|
739
|
-
return res;
|
|
740
|
-
const constraints = meta.constraints || [];
|
|
741
|
-
if (meta.constraintCls === IsFile) {
|
|
742
|
-
return {
|
|
743
|
-
multi: constraints[0] || false,
|
|
744
|
-
type: "file"
|
|
745
|
-
};
|
|
746
|
-
}
|
|
747
|
-
if (meta.constraintCls === IsObjectId) {
|
|
748
|
-
return {
|
|
749
|
-
endpoint: constraints[0] || false,
|
|
750
|
-
multi: constraints[1] || false,
|
|
751
|
-
type: "list"
|
|
752
|
-
};
|
|
753
|
-
}
|
|
754
|
-
return null;
|
|
755
|
-
}
|
|
756
|
-
}
|
|
757
|
-
});
|
|
758
|
-
spec.components.schemas = spec.definitions;
|
|
759
|
-
apiDocs = JSON.stringify(spec);
|
|
760
|
-
return apiDocs;
|
|
761
|
-
}
|
|
762
|
-
|
|
763
|
-
// --- DI functions ---
|
|
764
|
-
const Type = Function;
|
|
765
|
-
// --- Injection tokens ---
|
|
766
|
-
const FIXTURE = Symbol.for("fixture-token");
|
|
767
|
-
const JOB = Symbol.for("job-token");
|
|
768
|
-
const EXPRESS = Symbol.for("express-token");
|
|
769
|
-
const HTTP_SERVER = Symbol.for("http-server-token");
|
|
770
|
-
const SOCKET_SERVER = Symbol.for("socket-server-token");
|
|
771
|
-
const PARAMETER = Symbol.for("parameter-token");
|
|
772
|
-
const DI_CONTAINER = Symbol.for("di-container-token");
|
|
773
|
-
class Parameter {
|
|
774
|
-
constructor(name, defaultValue, resolver = null) {
|
|
775
|
-
this.name = name;
|
|
776
|
-
this.defaultValue = defaultValue;
|
|
777
|
-
this.resolver = resolver;
|
|
778
|
-
}
|
|
779
|
-
}
|
|
780
|
-
|
|
781
|
-
var __decorate$z = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
782
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
783
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
784
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
785
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
786
|
-
};
|
|
787
|
-
var __awaiter$x = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
788
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
789
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
790
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
791
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
792
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
793
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
794
|
-
});
|
|
795
|
-
};
|
|
796
|
-
var AssetProcessor_1;
|
|
797
|
-
const sharp$2 = sharp_;
|
|
798
|
-
const fontKit = fontKit_;
|
|
799
|
-
const fontTypes = [
|
|
800
|
-
"application/font-woff", "application/font-woff2", "application/x-font-opentype", "application/x-font-truetype", "application/x-font-datafork",
|
|
801
|
-
"font/woff", "font/woff2", "font/otf", "font/ttf", "font/datafork"
|
|
802
|
-
];
|
|
803
|
-
const imageTypes = ["image/jpeg", "image/jpg", "image/png", "image/svg+xml"];
|
|
804
|
-
const fontProps = [
|
|
805
|
-
"postscriptName", "fullName", "familyName", "subfamilyName",
|
|
806
|
-
"copyright", "version", "unitsPerEm", "ascent", "descent", "lineGap",
|
|
807
|
-
"underlinePosition", "underlineThickness", "italicAngle", "capHeight",
|
|
808
|
-
"xHeight", "numGlyphs", "characterSet", "availableFeatures"
|
|
809
|
-
];
|
|
810
|
-
let AssetProcessor = AssetProcessor_1 = class AssetProcessor {
|
|
811
|
-
static checkTextFileType(type) {
|
|
812
|
-
return type.mime.indexOf("text") >= 0 || type.mime.indexOf("xml") >= 0;
|
|
813
|
-
}
|
|
814
|
-
static fixTextFileType(type, buffer) {
|
|
815
|
-
const text = buffer.toString("utf8");
|
|
816
|
-
if (text.indexOf("<svg") >= 0) {
|
|
817
|
-
return { ext: "svg", mime: "image/svg+xml" };
|
|
818
|
-
}
|
|
819
|
-
return type;
|
|
820
|
-
}
|
|
821
|
-
static fileTypeFromBuffer(buffer) {
|
|
822
|
-
var _a;
|
|
823
|
-
return __awaiter$x(this, void 0, void 0, function* () {
|
|
824
|
-
const type = ((_a = yield fromBuffer(buffer)) !== null && _a !== void 0 ? _a : { ext: "txt", mime: "text/plain" });
|
|
825
|
-
if (AssetProcessor_1.checkTextFileType(type)) {
|
|
826
|
-
return AssetProcessor_1.fixTextFileType(type, buffer);
|
|
827
|
-
}
|
|
828
|
-
return type;
|
|
829
|
-
});
|
|
830
|
-
}
|
|
831
|
-
static extractFontFormat(font) {
|
|
832
|
-
const name = font.constructor.name;
|
|
833
|
-
const tag = font["directory"].tag;
|
|
834
|
-
switch (name) {
|
|
835
|
-
case "TTFFont":
|
|
836
|
-
return tag === "OTTO" ? "opentype" : "truetype";
|
|
837
|
-
case "WOFF2Font":
|
|
838
|
-
return "woff2";
|
|
839
|
-
case "WOFFFont":
|
|
840
|
-
return "woff";
|
|
841
|
-
case "DFont":
|
|
842
|
-
return "datafork";
|
|
843
|
-
}
|
|
844
|
-
return null;
|
|
845
|
-
}
|
|
846
|
-
static isImage(contentType) {
|
|
847
|
-
return imageTypes.indexOf(contentType) >= 0;
|
|
848
|
-
}
|
|
849
|
-
static copyImageMeta(buffer, metadata, fileType) {
|
|
850
|
-
return __awaiter$x(this, void 0, void 0, function* () {
|
|
851
|
-
if (fileType.mime === "image/svg+xml") {
|
|
852
|
-
const match = /<svg([^<>]+)>/gi.exec(buffer.toString("utf8"));
|
|
853
|
-
if (match && match.length > 1) {
|
|
854
|
-
const attrs = match[1].match(/([a-z]+)="([^"]+)"/gi);
|
|
855
|
-
attrs.forEach(attr => {
|
|
856
|
-
if (attr.length < 5)
|
|
857
|
-
return;
|
|
858
|
-
const [name, value] = attr.split("=");
|
|
859
|
-
const val = value.replace(/"/gi, "");
|
|
860
|
-
metadata[name] = isNaN(val) ? val : Number(val);
|
|
861
|
-
});
|
|
862
|
-
if (metadata.viewBox && (isNaN(metadata.width) || isNaN(metadata.height))) {
|
|
863
|
-
const parts = metadata.viewBox.split(" ");
|
|
864
|
-
metadata.width = Number(parts[0]) + Number(parts[2]);
|
|
865
|
-
metadata.height = Number(parts[1]) + Number(parts[3]);
|
|
866
|
-
}
|
|
867
|
-
if (!isNaN(metadata.width) && !isNaN(metadata.height)) {
|
|
868
|
-
metadata.svgSize = { x: metadata.width, y: metadata.height };
|
|
869
|
-
}
|
|
870
|
-
}
|
|
871
|
-
return buffer;
|
|
872
|
-
}
|
|
873
|
-
const output = yield sharp$2(buffer).rotate().toBuffer({ resolveWithObject: true });
|
|
874
|
-
Object.assign(metadata, output.info);
|
|
875
|
-
return output.data;
|
|
876
|
-
});
|
|
877
|
-
}
|
|
878
|
-
static isFont(contentType) {
|
|
879
|
-
return fontTypes.indexOf(contentType) >= 0;
|
|
880
|
-
}
|
|
881
|
-
static copyFontMeta(buffer, metadata) {
|
|
882
|
-
const font = fontKit.create(buffer);
|
|
883
|
-
metadata.format = AssetProcessor_1.extractFontFormat(font);
|
|
884
|
-
fontProps.forEach(prop => {
|
|
885
|
-
metadata[prop] = font[prop];
|
|
886
|
-
});
|
|
887
|
-
}
|
|
888
|
-
process(buffer, metadata, fileType) {
|
|
889
|
-
return __awaiter$x(this, void 0, void 0, function* () {
|
|
890
|
-
if (AssetProcessor_1.isImage(fileType.mime)) {
|
|
891
|
-
buffer = yield AssetProcessor_1.copyImageMeta(buffer, metadata, fileType);
|
|
892
|
-
}
|
|
893
|
-
if (AssetProcessor_1.isFont(fileType.mime)) {
|
|
894
|
-
AssetProcessor_1.copyFontMeta(buffer, metadata);
|
|
895
|
-
}
|
|
896
|
-
return buffer;
|
|
897
|
-
});
|
|
898
|
-
}
|
|
899
|
-
};
|
|
900
|
-
AssetProcessor = AssetProcessor_1 = __decorate$z([
|
|
901
|
-
injectable(),
|
|
902
|
-
scoped(Lifecycle.ContainerScoped)
|
|
903
|
-
], AssetProcessor);
|
|
815
|
+
return `${color}${match}${ConsoleColor.Reset}`;
|
|
816
|
+
});
|
|
817
|
+
}
|
|
818
|
+
function replaceSpecialChars(str, to = "-") {
|
|
819
|
+
return `${str}`.replace(/[&\/\\#, +()$~%.@'":*?<>{}]/g, to);
|
|
820
|
+
}
|
|
904
821
|
|
|
905
|
-
var __decorate$
|
|
822
|
+
var __decorate$A = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
906
823
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
907
824
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
908
825
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
909
826
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
910
827
|
};
|
|
911
|
-
var __metadata$
|
|
828
|
+
var __metadata$u = (this && this.__metadata) || function (k, v) {
|
|
912
829
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
913
830
|
};
|
|
914
|
-
var __param$
|
|
831
|
+
var __param$9 = (this && this.__param) || function (paramIndex, decorator) {
|
|
915
832
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
916
833
|
};
|
|
917
834
|
let Configuration = class Configuration {
|
|
@@ -954,19 +871,19 @@ let Configuration = class Configuration {
|
|
|
954
871
|
return this.paramValues[name];
|
|
955
872
|
}
|
|
956
873
|
};
|
|
957
|
-
Configuration = __decorate$
|
|
874
|
+
Configuration = __decorate$A([
|
|
958
875
|
singleton(),
|
|
959
|
-
__param$
|
|
960
|
-
__metadata$
|
|
876
|
+
__param$9(0, injectAll(PARAMETER)),
|
|
877
|
+
__metadata$u("design:paramtypes", [Array])
|
|
961
878
|
], Configuration);
|
|
962
879
|
|
|
963
|
-
var __decorate$
|
|
880
|
+
var __decorate$z = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
964
881
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
965
882
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
966
883
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
967
884
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
968
885
|
};
|
|
969
|
-
var __metadata$
|
|
886
|
+
var __metadata$t = (this && this.__metadata) || function (k, v) {
|
|
970
887
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
971
888
|
};
|
|
972
889
|
var __awaiter$w = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1008,10 +925,10 @@ let MongoConnector = class MongoConnector {
|
|
|
1008
925
|
});
|
|
1009
926
|
}
|
|
1010
927
|
};
|
|
1011
|
-
MongoConnector = __decorate$
|
|
928
|
+
MongoConnector = __decorate$z([
|
|
1012
929
|
injectable(),
|
|
1013
930
|
singleton(),
|
|
1014
|
-
__metadata$
|
|
931
|
+
__metadata$t("design:paramtypes", [Configuration])
|
|
1015
932
|
], MongoConnector);
|
|
1016
933
|
|
|
1017
934
|
var __awaiter$v = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1171,13 +1088,13 @@ class TempAsset {
|
|
|
1171
1088
|
}
|
|
1172
1089
|
}
|
|
1173
1090
|
|
|
1174
|
-
var __decorate$
|
|
1091
|
+
var __decorate$y = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1175
1092
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1176
1093
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1177
1094
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1178
1095
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1179
1096
|
};
|
|
1180
|
-
var __metadata$
|
|
1097
|
+
var __metadata$s = (this && this.__metadata) || function (k, v) {
|
|
1181
1098
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1182
1099
|
};
|
|
1183
1100
|
var __awaiter$s = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1336,10 +1253,10 @@ let Assets = class Assets {
|
|
|
1336
1253
|
});
|
|
1337
1254
|
}
|
|
1338
1255
|
};
|
|
1339
|
-
Assets = __decorate$
|
|
1256
|
+
Assets = __decorate$y([
|
|
1340
1257
|
injectable(),
|
|
1341
1258
|
scoped(Lifecycle.ContainerScoped),
|
|
1342
|
-
__metadata$
|
|
1259
|
+
__metadata$s("design:paramtypes", [MongoConnector, AssetProcessor])
|
|
1343
1260
|
], Assets);
|
|
1344
1261
|
|
|
1345
1262
|
var __awaiter$r = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1429,13 +1346,13 @@ class LazyAsset extends BaseEntity {
|
|
|
1429
1346
|
}
|
|
1430
1347
|
}
|
|
1431
1348
|
|
|
1432
|
-
var __decorate$
|
|
1349
|
+
var __decorate$x = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1433
1350
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1434
1351
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1435
1352
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1436
1353
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1437
1354
|
};
|
|
1438
|
-
var __metadata$
|
|
1355
|
+
var __metadata$r = (this && this.__metadata) || function (k, v) {
|
|
1439
1356
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1440
1357
|
};
|
|
1441
1358
|
let Logger = class Logger {
|
|
@@ -1450,21 +1367,21 @@ let Logger = class Logger {
|
|
|
1450
1367
|
}
|
|
1451
1368
|
}
|
|
1452
1369
|
};
|
|
1453
|
-
Logger = __decorate$
|
|
1370
|
+
Logger = __decorate$x([
|
|
1454
1371
|
singleton(),
|
|
1455
|
-
__metadata$
|
|
1372
|
+
__metadata$r("design:paramtypes", [Configuration])
|
|
1456
1373
|
], Logger);
|
|
1457
1374
|
|
|
1458
|
-
var __decorate$
|
|
1375
|
+
var __decorate$w = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1459
1376
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1460
1377
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1461
1378
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1462
1379
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1463
1380
|
};
|
|
1464
|
-
var __metadata$
|
|
1381
|
+
var __metadata$q = (this && this.__metadata) || function (k, v) {
|
|
1465
1382
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1466
1383
|
};
|
|
1467
|
-
var __param$
|
|
1384
|
+
var __param$8 = (this && this.__param) || function (paramIndex, decorator) {
|
|
1468
1385
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
1469
1386
|
};
|
|
1470
1387
|
var __awaiter$q = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1656,12 +1573,12 @@ let JobManager = class JobManager {
|
|
|
1656
1573
|
});
|
|
1657
1574
|
}
|
|
1658
1575
|
};
|
|
1659
|
-
JobManager = __decorate$
|
|
1576
|
+
JobManager = __decorate$w([
|
|
1660
1577
|
injectable(),
|
|
1661
1578
|
scoped(Lifecycle.ContainerScoped),
|
|
1662
|
-
__param$
|
|
1663
|
-
__param$
|
|
1664
|
-
__metadata$
|
|
1579
|
+
__param$8(2, inject(DI_CONTAINER)),
|
|
1580
|
+
__param$8(3, injectAll(JOB)),
|
|
1581
|
+
__metadata$q("design:paramtypes", [Configuration,
|
|
1665
1582
|
Logger, Object, Array])
|
|
1666
1583
|
], JobManager);
|
|
1667
1584
|
|
|
@@ -1875,13 +1792,13 @@ class SubProgress {
|
|
|
1875
1792
|
}
|
|
1876
1793
|
}
|
|
1877
1794
|
|
|
1878
|
-
var __decorate$
|
|
1795
|
+
var __decorate$v = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1879
1796
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1880
1797
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1881
1798
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1882
1799
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1883
1800
|
};
|
|
1884
|
-
var __metadata$
|
|
1801
|
+
var __metadata$p = (this && this.__metadata) || function (k, v) {
|
|
1885
1802
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1886
1803
|
};
|
|
1887
1804
|
var __awaiter$o = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -1981,19 +1898,19 @@ let Progresses = class Progresses {
|
|
|
1981
1898
|
});
|
|
1982
1899
|
}
|
|
1983
1900
|
};
|
|
1984
|
-
Progresses = __decorate$
|
|
1901
|
+
Progresses = __decorate$v([
|
|
1985
1902
|
injectable(),
|
|
1986
1903
|
singleton(),
|
|
1987
|
-
__metadata$
|
|
1904
|
+
__metadata$p("design:paramtypes", [MongoConnector, JobManager])
|
|
1988
1905
|
], Progresses);
|
|
1989
1906
|
|
|
1990
|
-
var __decorate$
|
|
1907
|
+
var __decorate$u = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
1991
1908
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1992
1909
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1993
1910
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1994
1911
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1995
1912
|
};
|
|
1996
|
-
var __metadata$
|
|
1913
|
+
var __metadata$o = (this && this.__metadata) || function (k, v) {
|
|
1997
1914
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1998
1915
|
};
|
|
1999
1916
|
var __awaiter$n = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2051,23 +1968,23 @@ let LazyAssets = class LazyAssets {
|
|
|
2051
1968
|
});
|
|
2052
1969
|
}
|
|
2053
1970
|
};
|
|
2054
|
-
LazyAssets = __decorate$
|
|
1971
|
+
LazyAssets = __decorate$u([
|
|
2055
1972
|
injectable(),
|
|
2056
1973
|
scoped(Lifecycle.ContainerScoped),
|
|
2057
|
-
__metadata$
|
|
1974
|
+
__metadata$o("design:paramtypes", [MongoConnector,
|
|
2058
1975
|
Assets,
|
|
2059
1976
|
Progresses,
|
|
2060
1977
|
Logger,
|
|
2061
1978
|
JobManager])
|
|
2062
1979
|
], LazyAssets);
|
|
2063
1980
|
|
|
2064
|
-
var __decorate$
|
|
1981
|
+
var __decorate$t = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2065
1982
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2066
1983
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2067
1984
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2068
1985
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2069
1986
|
};
|
|
2070
|
-
var __metadata$
|
|
1987
|
+
var __metadata$n = (this && this.__metadata) || function (k, v) {
|
|
2071
1988
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2072
1989
|
};
|
|
2073
1990
|
var __awaiter$m = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2104,19 +2021,19 @@ let AssetResolver = class AssetResolver {
|
|
|
2104
2021
|
});
|
|
2105
2022
|
}
|
|
2106
2023
|
};
|
|
2107
|
-
AssetResolver = __decorate$
|
|
2024
|
+
AssetResolver = __decorate$t([
|
|
2108
2025
|
injectable(),
|
|
2109
2026
|
scoped(Lifecycle.ContainerScoped),
|
|
2110
|
-
__metadata$
|
|
2027
|
+
__metadata$n("design:paramtypes", [Assets, LazyAssets])
|
|
2111
2028
|
], AssetResolver);
|
|
2112
2029
|
|
|
2113
|
-
var __decorate$
|
|
2030
|
+
var __decorate$s = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2114
2031
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2115
2032
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2116
2033
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2117
2034
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2118
2035
|
};
|
|
2119
|
-
var __metadata$
|
|
2036
|
+
var __metadata$m = (this && this.__metadata) || function (k, v) {
|
|
2120
2037
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2121
2038
|
};
|
|
2122
2039
|
const express = express_;
|
|
@@ -2132,13 +2049,13 @@ let BackendProvider = class BackendProvider {
|
|
|
2132
2049
|
return this.ioServer;
|
|
2133
2050
|
}
|
|
2134
2051
|
};
|
|
2135
|
-
BackendProvider = __decorate$
|
|
2052
|
+
BackendProvider = __decorate$s([
|
|
2136
2053
|
injectable(),
|
|
2137
2054
|
singleton(),
|
|
2138
|
-
__metadata$
|
|
2055
|
+
__metadata$m("design:paramtypes", [])
|
|
2139
2056
|
], BackendProvider);
|
|
2140
2057
|
|
|
2141
|
-
var __decorate$
|
|
2058
|
+
var __decorate$r = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2142
2059
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2143
2060
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2144
2061
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -2165,18 +2082,18 @@ let CacheProcessor = class CacheProcessor {
|
|
|
2165
2082
|
});
|
|
2166
2083
|
}
|
|
2167
2084
|
};
|
|
2168
|
-
CacheProcessor = __decorate$
|
|
2085
|
+
CacheProcessor = __decorate$r([
|
|
2169
2086
|
injectable(),
|
|
2170
2087
|
scoped(Lifecycle.ContainerScoped)
|
|
2171
2088
|
], CacheProcessor);
|
|
2172
2089
|
|
|
2173
|
-
var __decorate$
|
|
2090
|
+
var __decorate$q = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2174
2091
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2175
2092
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2176
2093
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2177
2094
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2178
2095
|
};
|
|
2179
|
-
var __metadata$
|
|
2096
|
+
var __metadata$l = (this && this.__metadata) || function (k, v) {
|
|
2180
2097
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2181
2098
|
};
|
|
2182
2099
|
var __awaiter$k = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2253,13 +2170,13 @@ let Cache = class Cache {
|
|
|
2253
2170
|
});
|
|
2254
2171
|
}
|
|
2255
2172
|
};
|
|
2256
|
-
Cache = __decorate$
|
|
2173
|
+
Cache = __decorate$q([
|
|
2257
2174
|
injectable(),
|
|
2258
2175
|
scoped(Lifecycle.ContainerScoped),
|
|
2259
|
-
__metadata$
|
|
2176
|
+
__metadata$l("design:paramtypes", [MongoConnector, Configuration, CacheProcessor])
|
|
2260
2177
|
], Cache);
|
|
2261
2178
|
|
|
2262
|
-
var __decorate$
|
|
2179
|
+
var __decorate$p = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2263
2180
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2264
2181
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2265
2182
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -2281,21 +2198,21 @@ let EndpointProvider = class EndpointProvider {
|
|
|
2281
2198
|
});
|
|
2282
2199
|
}
|
|
2283
2200
|
};
|
|
2284
|
-
EndpointProvider = __decorate$
|
|
2201
|
+
EndpointProvider = __decorate$p([
|
|
2285
2202
|
injectable(),
|
|
2286
2203
|
scoped(Lifecycle.ContainerScoped)
|
|
2287
2204
|
], EndpointProvider);
|
|
2288
2205
|
|
|
2289
|
-
var __decorate$
|
|
2206
|
+
var __decorate$o = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2290
2207
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2291
2208
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2292
2209
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2293
2210
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2294
2211
|
};
|
|
2295
|
-
var __metadata$
|
|
2212
|
+
var __metadata$k = (this && this.__metadata) || function (k, v) {
|
|
2296
2213
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2297
2214
|
};
|
|
2298
|
-
var __param$
|
|
2215
|
+
var __param$7 = (this && this.__param) || function (paramIndex, decorator) {
|
|
2299
2216
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
2300
2217
|
};
|
|
2301
2218
|
var __awaiter$i = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2321,11 +2238,11 @@ let Fixtures = class Fixtures {
|
|
|
2321
2238
|
});
|
|
2322
2239
|
}
|
|
2323
2240
|
};
|
|
2324
|
-
Fixtures = __decorate$
|
|
2241
|
+
Fixtures = __decorate$o([
|
|
2325
2242
|
injectable(),
|
|
2326
2243
|
scoped(Lifecycle.ContainerScoped),
|
|
2327
|
-
__param$
|
|
2328
|
-
__metadata$
|
|
2244
|
+
__param$7(0, injectAll(FIXTURE)),
|
|
2245
|
+
__metadata$k("design:paramtypes", [Array])
|
|
2329
2246
|
], Fixtures);
|
|
2330
2247
|
|
|
2331
2248
|
var __awaiter$h = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2374,13 +2291,13 @@ class GalleryImage {
|
|
|
2374
2291
|
}
|
|
2375
2292
|
}
|
|
2376
2293
|
|
|
2377
|
-
var __decorate$
|
|
2294
|
+
var __decorate$n = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2378
2295
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2379
2296
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2380
2297
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2381
2298
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2382
2299
|
};
|
|
2383
|
-
var __metadata$
|
|
2300
|
+
var __metadata$j = (this && this.__metadata) || function (k, v) {
|
|
2384
2301
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2385
2302
|
};
|
|
2386
2303
|
let GalleryCache = class GalleryCache {
|
|
@@ -2401,19 +2318,19 @@ let GalleryCache = class GalleryCache {
|
|
|
2401
2318
|
return image;
|
|
2402
2319
|
}
|
|
2403
2320
|
};
|
|
2404
|
-
GalleryCache = __decorate$
|
|
2321
|
+
GalleryCache = __decorate$n([
|
|
2405
2322
|
injectable(),
|
|
2406
2323
|
scoped(Lifecycle.ContainerScoped),
|
|
2407
|
-
__metadata$
|
|
2324
|
+
__metadata$j("design:paramtypes", [])
|
|
2408
2325
|
], GalleryCache);
|
|
2409
2326
|
|
|
2410
|
-
var __decorate$
|
|
2327
|
+
var __decorate$m = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2411
2328
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2412
2329
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2413
2330
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2414
2331
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2415
2332
|
};
|
|
2416
|
-
var __metadata$
|
|
2333
|
+
var __metadata$i = (this && this.__metadata) || function (k, v) {
|
|
2417
2334
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2418
2335
|
};
|
|
2419
2336
|
var __awaiter$g = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2531,19 +2448,19 @@ let Gallery = class Gallery {
|
|
|
2531
2448
|
});
|
|
2532
2449
|
}
|
|
2533
2450
|
};
|
|
2534
|
-
Gallery = __decorate$
|
|
2451
|
+
Gallery = __decorate$m([
|
|
2535
2452
|
injectable(),
|
|
2536
2453
|
scoped(Lifecycle.ContainerScoped),
|
|
2537
|
-
__metadata$
|
|
2454
|
+
__metadata$i("design:paramtypes", [Configuration, GalleryCache])
|
|
2538
2455
|
], Gallery);
|
|
2539
2456
|
|
|
2540
|
-
var __decorate$
|
|
2457
|
+
var __decorate$l = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2541
2458
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2542
2459
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2543
2460
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2544
2461
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2545
2462
|
};
|
|
2546
|
-
var __metadata$
|
|
2463
|
+
var __metadata$h = (this && this.__metadata) || function (k, v) {
|
|
2547
2464
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2548
2465
|
};
|
|
2549
2466
|
var __awaiter$f = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2590,19 +2507,19 @@ let IdGenerator = class IdGenerator {
|
|
|
2590
2507
|
}).join(this.separator);
|
|
2591
2508
|
}
|
|
2592
2509
|
};
|
|
2593
|
-
IdGenerator = __decorate$
|
|
2510
|
+
IdGenerator = __decorate$l([
|
|
2594
2511
|
injectable(),
|
|
2595
2512
|
scoped(Lifecycle.ContainerScoped),
|
|
2596
|
-
__metadata$
|
|
2513
|
+
__metadata$h("design:paramtypes", [Configuration])
|
|
2597
2514
|
], IdGenerator);
|
|
2598
2515
|
|
|
2599
|
-
var __decorate$
|
|
2516
|
+
var __decorate$k = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2600
2517
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2601
2518
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2602
2519
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2603
2520
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2604
2521
|
};
|
|
2605
|
-
var __metadata$
|
|
2522
|
+
var __metadata$g = (this && this.__metadata) || function (k, v) {
|
|
2606
2523
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2607
2524
|
};
|
|
2608
2525
|
let TranslationProvider = class TranslationProvider {
|
|
@@ -2617,19 +2534,19 @@ let TranslationProvider = class TranslationProvider {
|
|
|
2617
2534
|
return this.cache[language];
|
|
2618
2535
|
}
|
|
2619
2536
|
};
|
|
2620
|
-
TranslationProvider = __decorate$
|
|
2537
|
+
TranslationProvider = __decorate$k([
|
|
2621
2538
|
injectable(),
|
|
2622
2539
|
singleton(),
|
|
2623
|
-
__metadata$
|
|
2540
|
+
__metadata$g("design:paramtypes", [Configuration])
|
|
2624
2541
|
], TranslationProvider);
|
|
2625
2542
|
|
|
2626
|
-
var __decorate$
|
|
2543
|
+
var __decorate$j = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2627
2544
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2628
2545
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2629
2546
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2630
2547
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2631
2548
|
};
|
|
2632
|
-
var __metadata$
|
|
2549
|
+
var __metadata$f = (this && this.__metadata) || function (k, v) {
|
|
2633
2550
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2634
2551
|
};
|
|
2635
2552
|
var __awaiter$e = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2698,19 +2615,19 @@ let Translator = class Translator {
|
|
|
2698
2615
|
});
|
|
2699
2616
|
}
|
|
2700
2617
|
};
|
|
2701
|
-
Translator = __decorate$
|
|
2618
|
+
Translator = __decorate$j([
|
|
2702
2619
|
injectable(),
|
|
2703
2620
|
singleton(),
|
|
2704
|
-
__metadata$
|
|
2621
|
+
__metadata$f("design:paramtypes", [TranslationProvider])
|
|
2705
2622
|
], Translator);
|
|
2706
2623
|
|
|
2707
|
-
var __decorate$
|
|
2624
|
+
var __decorate$i = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2708
2625
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2709
2626
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2710
2627
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2711
2628
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2712
2629
|
};
|
|
2713
|
-
var __metadata$
|
|
2630
|
+
var __metadata$e = (this && this.__metadata) || function (k, v) {
|
|
2714
2631
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2715
2632
|
};
|
|
2716
2633
|
var __awaiter$d = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2780,19 +2697,19 @@ let TemplateRenderer = class TemplateRenderer {
|
|
|
2780
2697
|
});
|
|
2781
2698
|
}
|
|
2782
2699
|
};
|
|
2783
|
-
TemplateRenderer = __decorate$
|
|
2700
|
+
TemplateRenderer = __decorate$i([
|
|
2784
2701
|
injectable(),
|
|
2785
2702
|
singleton(),
|
|
2786
|
-
__metadata$
|
|
2703
|
+
__metadata$e("design:paramtypes", [Translator, Configuration])
|
|
2787
2704
|
], TemplateRenderer);
|
|
2788
2705
|
|
|
2789
|
-
var __decorate$
|
|
2706
|
+
var __decorate$h = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2790
2707
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2791
2708
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2792
2709
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2793
2710
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2794
2711
|
};
|
|
2795
|
-
var __metadata$
|
|
2712
|
+
var __metadata$d = (this && this.__metadata) || function (k, v) {
|
|
2796
2713
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2797
2714
|
};
|
|
2798
2715
|
var __awaiter$c = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2834,19 +2751,19 @@ let MailSender = class MailSender {
|
|
|
2834
2751
|
});
|
|
2835
2752
|
}
|
|
2836
2753
|
};
|
|
2837
|
-
MailSender = __decorate$
|
|
2754
|
+
MailSender = __decorate$h([
|
|
2838
2755
|
injectable(),
|
|
2839
2756
|
singleton(),
|
|
2840
|
-
__metadata$
|
|
2757
|
+
__metadata$d("design:paramtypes", [Configuration, TemplateRenderer])
|
|
2841
2758
|
], MailSender);
|
|
2842
2759
|
|
|
2843
|
-
var __decorate$
|
|
2760
|
+
var __decorate$g = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2844
2761
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2845
2762
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2846
2763
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2847
2764
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2848
2765
|
};
|
|
2849
|
-
var __metadata$
|
|
2766
|
+
var __metadata$c = (this && this.__metadata) || function (k, v) {
|
|
2850
2767
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2851
2768
|
};
|
|
2852
2769
|
var __awaiter$b = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -2915,12 +2832,125 @@ let MemoryCache = class MemoryCache {
|
|
|
2915
2832
|
});
|
|
2916
2833
|
}
|
|
2917
2834
|
};
|
|
2918
|
-
MemoryCache = __decorate$
|
|
2835
|
+
MemoryCache = __decorate$g([
|
|
2919
2836
|
injectable(),
|
|
2920
2837
|
scoped(Lifecycle.ContainerScoped),
|
|
2921
|
-
__metadata$
|
|
2838
|
+
__metadata$c("design:paramtypes", [Cache])
|
|
2922
2839
|
], MemoryCache);
|
|
2923
2840
|
|
|
2841
|
+
var __decorate$f = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2842
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2843
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2844
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2845
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2846
|
+
};
|
|
2847
|
+
function checkValue(multi, value) {
|
|
2848
|
+
if (multi) {
|
|
2849
|
+
return Array.isArray(value) && value.every(v => {
|
|
2850
|
+
try {
|
|
2851
|
+
const id = new ObjectId$1(v);
|
|
2852
|
+
return id instanceof ObjectId$1;
|
|
2853
|
+
}
|
|
2854
|
+
catch (e) {
|
|
2855
|
+
return false;
|
|
2856
|
+
}
|
|
2857
|
+
});
|
|
2858
|
+
}
|
|
2859
|
+
if (null === value)
|
|
2860
|
+
return true;
|
|
2861
|
+
try {
|
|
2862
|
+
const id = new ObjectId$1(value);
|
|
2863
|
+
return id instanceof ObjectId$1;
|
|
2864
|
+
}
|
|
2865
|
+
catch (e) {
|
|
2866
|
+
return false;
|
|
2867
|
+
}
|
|
2868
|
+
}
|
|
2869
|
+
let IsFile = class IsFile {
|
|
2870
|
+
validate(value, validationArguments) {
|
|
2871
|
+
const [multi] = (validationArguments.constraints || []);
|
|
2872
|
+
return checkValue(multi, value);
|
|
2873
|
+
}
|
|
2874
|
+
};
|
|
2875
|
+
IsFile = __decorate$f([
|
|
2876
|
+
ValidatorConstraint()
|
|
2877
|
+
], IsFile);
|
|
2878
|
+
let IsObjectId = class IsObjectId {
|
|
2879
|
+
validate(value, validationArguments) {
|
|
2880
|
+
const [_, multi] = (validationArguments.constraints || []);
|
|
2881
|
+
return checkValue(multi, value);
|
|
2882
|
+
}
|
|
2883
|
+
};
|
|
2884
|
+
IsObjectId = __decorate$f([
|
|
2885
|
+
ValidatorConstraint()
|
|
2886
|
+
], IsObjectId);
|
|
2887
|
+
|
|
2888
|
+
var __decorate$e = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2889
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2890
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2891
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2892
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2893
|
+
};
|
|
2894
|
+
var __metadata$b = (this && this.__metadata) || function (k, v) {
|
|
2895
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2896
|
+
};
|
|
2897
|
+
var __param$6 = (this && this.__param) || function (paramIndex, decorator) {
|
|
2898
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
2899
|
+
};
|
|
2900
|
+
let OpenApi = class OpenApi {
|
|
2901
|
+
constructor(customValidation = null) {
|
|
2902
|
+
this.customValidation = customValidation;
|
|
2903
|
+
this.docs = null;
|
|
2904
|
+
}
|
|
2905
|
+
get apiDocs() {
|
|
2906
|
+
if (!this.docs)
|
|
2907
|
+
this.docs = this.createApiDocs();
|
|
2908
|
+
return this.docs;
|
|
2909
|
+
}
|
|
2910
|
+
get apiDocsStr() {
|
|
2911
|
+
if (!this.docsStr)
|
|
2912
|
+
this.docsStr = JSON.stringify(this.apiDocs);
|
|
2913
|
+
return this.docsStr;
|
|
2914
|
+
}
|
|
2915
|
+
createApiDocs() {
|
|
2916
|
+
const storage = getMetadataArgsStorage();
|
|
2917
|
+
const docs = routingControllersToSpec(storage);
|
|
2918
|
+
docs.basePath = "/api/";
|
|
2919
|
+
docs.definitions = validationMetadatasToSchemas({
|
|
2920
|
+
classTransformerMetadataStorage: defaultMetadataStorage,
|
|
2921
|
+
additionalConverters: {
|
|
2922
|
+
[ValidationTypes.CUSTOM_VALIDATION]: (meta, options) => {
|
|
2923
|
+
const res = isFunction(this.customValidation) ? this.customValidation(meta, options) : this.customValidation;
|
|
2924
|
+
if (isObject(res))
|
|
2925
|
+
return res;
|
|
2926
|
+
const constraints = meta.constraints || [];
|
|
2927
|
+
if (meta.constraintCls === IsFile) {
|
|
2928
|
+
return {
|
|
2929
|
+
multi: constraints[0] || false,
|
|
2930
|
+
type: "file"
|
|
2931
|
+
};
|
|
2932
|
+
}
|
|
2933
|
+
if (meta.constraintCls === IsObjectId) {
|
|
2934
|
+
return {
|
|
2935
|
+
endpoint: constraints[0] || false,
|
|
2936
|
+
multi: constraints[1] || false,
|
|
2937
|
+
type: "list"
|
|
2938
|
+
};
|
|
2939
|
+
}
|
|
2940
|
+
return null;
|
|
2941
|
+
}
|
|
2942
|
+
}
|
|
2943
|
+
});
|
|
2944
|
+
docs.components.schemas = docs.definitions;
|
|
2945
|
+
return docs;
|
|
2946
|
+
}
|
|
2947
|
+
};
|
|
2948
|
+
OpenApi = __decorate$e([
|
|
2949
|
+
singleton(),
|
|
2950
|
+
__param$6(0, inject(OPENAPI_VALIDATION)),
|
|
2951
|
+
__metadata$b("design:paramtypes", [Object])
|
|
2952
|
+
], OpenApi);
|
|
2953
|
+
|
|
2924
2954
|
var __decorate$d = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2925
2955
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2926
2956
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -3408,6 +3438,9 @@ let ErrorHandlerMiddleware = class ErrorHandlerMiddleware {
|
|
|
3408
3438
|
result.param = error.message;
|
|
3409
3439
|
}
|
|
3410
3440
|
else {
|
|
3441
|
+
if (error instanceof AxiosError) {
|
|
3442
|
+
console.log(error.response);
|
|
3443
|
+
}
|
|
3411
3444
|
result.message = error.message || (yield this.translator.getTranslation(req.language, "message.form-validation.error"));
|
|
3412
3445
|
result.errors = error["errors"];
|
|
3413
3446
|
if (this.isDev) {
|
|
@@ -3639,52 +3672,6 @@ CompressionMiddleware = __decorate$1([
|
|
|
3639
3672
|
Middleware$1()
|
|
3640
3673
|
], CompressionMiddleware);
|
|
3641
3674
|
|
|
3642
|
-
var __awaiter$4 = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3643
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3644
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
3645
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
3646
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
3647
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
3648
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
3649
|
-
});
|
|
3650
|
-
};
|
|
3651
|
-
function setupStatic(rootFolder, container) {
|
|
3652
|
-
return __awaiter$4(this, void 0, void 0, function* () {
|
|
3653
|
-
const browserFolder = resolve(rootFolder || __dirname, `public_html`);
|
|
3654
|
-
const app = container.get(EXPRESS);
|
|
3655
|
-
const ep = container.get(EndpointProvider);
|
|
3656
|
-
console.log(browserFolder, existsSync(browserFolder));
|
|
3657
|
-
if (existsSync(browserFolder)) {
|
|
3658
|
-
console.log(`public_html exists. setting up static files serving...`);
|
|
3659
|
-
app.use(static$1(browserFolder, {
|
|
3660
|
-
maxAge: "1y"
|
|
3661
|
-
}));
|
|
3662
|
-
}
|
|
3663
|
-
else {
|
|
3664
|
-
console.log(`public_html does not exist on path: "${browserFolder}"`);
|
|
3665
|
-
}
|
|
3666
|
-
yield ep.configure(app);
|
|
3667
|
-
});
|
|
3668
|
-
}
|
|
3669
|
-
|
|
3670
|
-
class BaseDoc {
|
|
3671
|
-
/**
|
|
3672
|
-
* Casts this to DocumentType<this> to allow using document methods in get/set-s
|
|
3673
|
-
*/
|
|
3674
|
-
cast() {
|
|
3675
|
-
return this;
|
|
3676
|
-
}
|
|
3677
|
-
/**
|
|
3678
|
-
* Gets a pre-compiled model from typegoose cache by its class type
|
|
3679
|
-
* @param type
|
|
3680
|
-
*/
|
|
3681
|
-
model(type) {
|
|
3682
|
-
return getModelForClass(type);
|
|
3683
|
-
}
|
|
3684
|
-
}
|
|
3685
|
-
const PrimitiveArray = Types.Array;
|
|
3686
|
-
const DocumentArray = Types.DocumentArray;
|
|
3687
|
-
|
|
3688
3675
|
class Tree {
|
|
3689
3676
|
constructor(container, exists, path) {
|
|
3690
3677
|
this.container = container;
|
|
@@ -3886,7 +3873,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
3886
3873
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
3887
3874
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
3888
3875
|
};
|
|
3889
|
-
var __awaiter$
|
|
3876
|
+
var __awaiter$4 = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3890
3877
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3891
3878
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
3892
3879
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
@@ -3897,7 +3884,7 @@ var __awaiter$3 = (this && this.__awaiter) || function (thisArg, _arguments, P,
|
|
|
3897
3884
|
};
|
|
3898
3885
|
let EmptyJob = class EmptyJob {
|
|
3899
3886
|
process() {
|
|
3900
|
-
return __awaiter$
|
|
3887
|
+
return __awaiter$4(this, void 0, void 0, function* () {
|
|
3901
3888
|
return null;
|
|
3902
3889
|
});
|
|
3903
3890
|
}
|
|
@@ -3907,6 +3894,60 @@ EmptyJob = __decorate([
|
|
|
3907
3894
|
scoped(Lifecycle.ContainerScoped)
|
|
3908
3895
|
], EmptyJob);
|
|
3909
3896
|
|
|
3897
|
+
var __awaiter$3 = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3898
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3899
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
3900
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
3901
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
3902
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
3903
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
3904
|
+
});
|
|
3905
|
+
};
|
|
3906
|
+
function setupStatic(rootFolder, container) {
|
|
3907
|
+
return __awaiter$3(this, void 0, void 0, function* () {
|
|
3908
|
+
const browserFolder = resolve(rootFolder || __dirname, `public_html`);
|
|
3909
|
+
const app = container.get(EXPRESS);
|
|
3910
|
+
const ep = container.get(EndpointProvider);
|
|
3911
|
+
console.log(browserFolder, existsSync(browserFolder));
|
|
3912
|
+
if (existsSync(browserFolder)) {
|
|
3913
|
+
console.log(`public_html exists. setting up static files serving...`);
|
|
3914
|
+
app.use(static$1(browserFolder, {
|
|
3915
|
+
maxAge: "1y"
|
|
3916
|
+
}));
|
|
3917
|
+
}
|
|
3918
|
+
else {
|
|
3919
|
+
console.log(`public_html does not exist on path: "${browserFolder}"`);
|
|
3920
|
+
}
|
|
3921
|
+
yield ep.configure(app);
|
|
3922
|
+
});
|
|
3923
|
+
}
|
|
3924
|
+
|
|
3925
|
+
class BaseDoc {
|
|
3926
|
+
/**
|
|
3927
|
+
* Casts this to DocumentType<this> to allow using document methods in get/set-s
|
|
3928
|
+
*/
|
|
3929
|
+
cast() {
|
|
3930
|
+
return this;
|
|
3931
|
+
}
|
|
3932
|
+
/**
|
|
3933
|
+
* Gets a pre-compiled model from typegoose cache by its class type
|
|
3934
|
+
* @param type
|
|
3935
|
+
*/
|
|
3936
|
+
model(type) {
|
|
3937
|
+
return getModelForClass(type);
|
|
3938
|
+
}
|
|
3939
|
+
}
|
|
3940
|
+
const PrimitiveArray = Types.Array;
|
|
3941
|
+
const DocumentArray = Types.DocumentArray;
|
|
3942
|
+
|
|
3943
|
+
function IsDocumented(summary = null) {
|
|
3944
|
+
return OpenAPI(operation => {
|
|
3945
|
+
operation.summary = summary || operation.summary;
|
|
3946
|
+
operation.tags = ["Documented"].concat(operation.tags || []);
|
|
3947
|
+
return operation;
|
|
3948
|
+
});
|
|
3949
|
+
}
|
|
3950
|
+
|
|
3910
3951
|
var __awaiter$2 = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3911
3952
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3912
3953
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -4265,6 +4306,7 @@ function createServices() {
|
|
|
4265
4306
|
MailSender,
|
|
4266
4307
|
MemoryCache,
|
|
4267
4308
|
MongoConnector,
|
|
4309
|
+
OpenApi,
|
|
4268
4310
|
Progresses,
|
|
4269
4311
|
TemplateRenderer,
|
|
4270
4312
|
TranslationProvider,
|
|
@@ -4368,6 +4410,9 @@ function setupBackend(config, providers, parent) {
|
|
|
4368
4410
|
diContainer.register(DI_CONTAINER, {
|
|
4369
4411
|
useValue: diContainer
|
|
4370
4412
|
});
|
|
4413
|
+
diContainer.register(OPENAPI_VALIDATION, {
|
|
4414
|
+
useValue: config.customValidation || (() => null)
|
|
4415
|
+
});
|
|
4371
4416
|
diContainers.appContainer = diContainers.appContainer || diContainer;
|
|
4372
4417
|
// Authentication
|
|
4373
4418
|
restOptions.authorizationChecker = (action, roles) => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -4419,8 +4464,12 @@ function setupBackend(config, providers, parent) {
|
|
|
4419
4464
|
useContainer(diContainer);
|
|
4420
4465
|
useExpressServer(bp.express, restOptions);
|
|
4421
4466
|
// Setup rest ai docs
|
|
4467
|
+
let openApi = null;
|
|
4422
4468
|
bp.express.get("/api-docs", (req, res) => {
|
|
4423
|
-
|
|
4469
|
+
openApi = openApi || diContainer.get(OpenApi);
|
|
4470
|
+
res.header("Content-Type", "application/json")
|
|
4471
|
+
.status(200)
|
|
4472
|
+
.end(openApi.apiDocsStr);
|
|
4424
4473
|
});
|
|
4425
4474
|
}
|
|
4426
4475
|
if (config.socketOptions) {
|
|
@@ -4443,5 +4492,5 @@ function setupBackend(config, providers, parent) {
|
|
|
4443
4492
|
* Generated bundle index. Do not edit.
|
|
4444
4493
|
*/
|
|
4445
4494
|
|
|
4446
|
-
export { AssetImageParams, AssetProcessor, AssetResolver, Assets, AuthController, BackendProvider, BaseDoc, Cache, CacheProcessor, Configuration, ConsoleColor, DI_CONTAINER, DocumentArray, EXPRESS, EndpointProvider, ErrorHandlerMiddleware, FIXTURE, Fixtures, Gallery, GalleryCache, GalleryController, HTTP_SERVER, IdGenerator, IsFile, IsObjectId, JOB, JobManager, LanguageMiddleware, LazyAssetGenerator, LazyAssets, MailSender, MemoryCache, MongoConnector, PARAMETER, Parameter, PrimitiveArray, Progresses, ResolveEntity, SOCKET_SERVER, TemplateRenderer, TranslationProvider, Translator, Type, UserManager, assign, broadcast, bufferToStream, colorize, convertValue, copy, copyStream, createIdString, createServices, createTransformer, deleteFile, deleteFromBucket, filter, firstItem, getConstructorName, getExtension, getFileName, getFunctionParams, getType, getValue, groupBy, hydratePopulated, idToString, injectServices, isArray, isBoolean, isConstructor, isDate, isDefined, isFunction, isInterface, isNullOrUndefined, isObject, isObjectId, isPrimitive, isString, isType, jsonHighlight, lastItem, lcFirst, letsLookupStage, lookupStages, matchField, matchFieldStages, matchStage, md5, mkdirRecursive, multiSubscription, observableFromFunction, padLeft, padRight, paginate, paginateAggregations, projectStage, promiseTimeout, rand, random, readAndDeleteFile, readFile, regroup, replaceSpecialChars, resolveUser, runCommand, service, setupBackend, streamToBuffer, toImage, ucFirst, uniqueItems, unwindStage, valueToPromise, writeFile, Logger as ɵa };
|
|
4495
|
+
export { AssetImageParams, AssetProcessor, AssetResolver, Assets, AuthController, BackendProvider, BaseDoc, Cache, CacheProcessor, Configuration, ConsoleColor, DI_CONTAINER, DocumentArray, EXPRESS, EndpointProvider, ErrorHandlerMiddleware, FIXTURE, Fixtures, Gallery, GalleryCache, GalleryController, HTTP_SERVER, IdGenerator, IsDocumented, IsFile, IsObjectId, JOB, JobManager, LanguageMiddleware, LazyAssetGenerator, LazyAssets, MailSender, MemoryCache, MongoConnector, OPENAPI_VALIDATION, OpenApi, PARAMETER, Parameter, PrimitiveArray, Progresses, ResolveEntity, SOCKET_SERVER, TemplateRenderer, TranslationProvider, Translator, Type, UserManager, assign, broadcast, bufferToStream, colorize, convertValue, copy, copyStream, createIdString, createServices, createTransformer, deleteFile, deleteFromBucket, filter, firstItem, getConstructorName, getExtension, getFileName, getFunctionParams, getType, getValue, groupBy, hydratePopulated, idToString, injectServices, isArray, isBoolean, isConstructor, isDate, isDefined, isFunction, isInterface, isNullOrUndefined, isObject, isObjectId, isPrimitive, isString, isType, jsonHighlight, lastItem, lcFirst, letsLookupStage, lookupStages, matchField, matchFieldStages, matchStage, md5, mkdirRecursive, multiSubscription, observableFromFunction, padLeft, padRight, paginate, paginateAggregations, projectStage, promiseTimeout, rand, random, readAndDeleteFile, readFile, regroup, replaceSpecialChars, resolveUser, runCommand, service, setupBackend, streamToBuffer, toImage, ucFirst, uniqueItems, unwindStage, valueToPromise, writeFile, Logger as ɵa };
|
|
4447
4496
|
//# sourceMappingURL=stemy-backend.js.map
|