@stemy/backend 5.2.1 → 6.0.0
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/commands/clear-command.d.ts +6 -6
- package/commands/fixtures-command.d.ts +9 -9
- package/commands/index.d.ts +2 -2
- package/common-types.d.ts +325 -326
- package/esm2020/services/assets.mjs +2 -2
- package/esm2022/commands/clear-command.mjs +15 -0
- package/esm2022/commands/fixtures-command.mjs +26 -0
- package/esm2022/commands/index.mjs +7 -0
- package/esm2022/common-types.mjs +26 -0
- package/esm2022/fixtures/index.mjs +5 -0
- package/esm2022/fixtures/ttl.fixture.mjs +23 -0
- package/esm2022/public_api.mjs +378 -0
- package/esm2022/requests/asset-image-params.mjs +60 -0
- package/esm2022/rest-controllers/assets.controller.mjs +177 -0
- package/esm2022/rest-controllers/auth.controller.mjs +57 -0
- package/esm2022/rest-controllers/gallery.controller.mjs +27 -0
- package/esm2022/rest-controllers/progresses.controller.mjs +38 -0
- package/esm2022/rest-controllers/terminal-styles.mjs +67 -0
- package/esm2022/rest-controllers/terminal.controller.mjs +132 -0
- package/esm2022/rest-middlewares/container.middleware.mjs +22 -0
- package/esm2022/rest-middlewares/error-handler.middleware.mjs +79 -0
- package/esm2022/rest-middlewares/language.middleware.mjs +21 -0
- package/esm2022/rest-middlewares/request-ended.middleware.mjs +26 -0
- package/esm2022/rest-middlewares/request-started.middleware.mjs +25 -0
- package/esm2022/services/asset-processor.mjs +90 -0
- package/esm2022/services/asset-resolver.mjs +36 -0
- package/esm2022/services/assets.mjs +154 -0
- package/esm2022/services/backend-provider.mjs +83 -0
- package/esm2022/services/cache-processor.mjs +16 -0
- package/esm2022/services/cache.mjs +70 -0
- package/esm2022/services/configuration.mjs +68 -0
- package/esm2022/services/drivers/asset-grid.driver.mjs +27 -0
- package/esm2022/services/drivers/asset-local.driver.mjs +41 -0
- package/esm2022/services/endpoint-provider.mjs +13 -0
- package/esm2022/services/entities/asset.mjs +61 -0
- package/esm2022/services/entities/base-entity.mjs +32 -0
- package/esm2022/services/entities/lazy-asset.mjs +87 -0
- package/esm2022/services/entities/progress.mjs +182 -0
- package/esm2022/services/entities/temp-asset.mjs +53 -0
- package/esm2022/services/fixtures.mjs +38 -0
- package/esm2022/services/gallery-cache.mjs +29 -0
- package/esm2022/services/gallery-image.mjs +42 -0
- package/esm2022/services/gallery.mjs +124 -0
- package/esm2022/services/id-generator.mjs +49 -0
- package/esm2022/services/job-manager.mjs +198 -0
- package/esm2022/services/lazy-assets.mjs +68 -0
- package/esm2022/services/logger.mjs +26 -0
- package/esm2022/services/mail-sender.mjs +42 -0
- package/esm2022/services/memory-cache.mjs +61 -0
- package/esm2022/services/mongo-connector.mjs +36 -0
- package/esm2022/services/open-api.mjs +124 -0
- package/esm2022/services/progresses.mjs +93 -0
- package/esm2022/services/template-renderer.mjs +71 -0
- package/esm2022/services/terminal-manager.mjs +88 -0
- package/esm2022/services/token-generator.mjs +37 -0
- package/esm2022/services/translation-provider.mjs +39 -0
- package/esm2022/services/translator.mjs +67 -0
- package/esm2022/services/user-manager.mjs +27 -0
- package/esm2022/socket-controllers/progress.controller.mjs +63 -0
- package/esm2022/socket-controllers/terminal.controller.mjs +61 -0
- package/esm2022/socket-controllers/terminal.mjs +89 -0
- package/esm2022/socket-middlewares/compression.middleware.mjs +14 -0
- package/esm2022/static.mjs +23 -0
- package/esm2022/stemy-backend.mjs +5 -0
- package/esm2022/utilities/base-doc.mjs +33 -0
- package/esm2022/utilities/decorators.mjs +51 -0
- package/esm2022/utilities/di-container.mjs +88 -0
- package/esm2022/utilities/empty-job.mjs +13 -0
- package/esm2022/utilities/lazy-asset-generator.mjs +38 -0
- package/esm2022/utilities/mongoose.mjs +216 -0
- package/esm2022/utilities/tree.mjs +119 -0
- package/esm2022/utils.mjs +726 -0
- package/esm2022/validators.mjs +46 -0
- package/fesm2015/stemy-backend.mjs +1 -1
- package/fesm2015/stemy-backend.mjs.map +1 -1
- package/fesm2020/stemy-backend.mjs +1 -1
- package/fesm2020/stemy-backend.mjs.map +1 -1
- package/fesm2022/stemy-backend.mjs +4690 -0
- package/fesm2022/stemy-backend.mjs.map +1 -0
- package/fixtures/index.d.ts +2 -2
- package/fixtures/ttl.fixture.d.ts +7 -7
- package/index.d.ts +5 -5
- package/package.json +43 -49
- package/public_api.d.ts +44 -44
- package/requests/asset-image-params.d.ts +12 -12
- package/rest-controllers/assets.controller.d.ts +25 -27
- package/rest-controllers/auth.controller.d.ts +14 -14
- package/rest-controllers/gallery.controller.d.ts +6 -7
- package/rest-controllers/progresses.controller.d.ts +9 -9
- package/rest-controllers/terminal-styles.d.ts +2 -2
- package/rest-controllers/terminal.controller.d.ts +10 -10
- package/rest-middlewares/container.middleware.d.ts +8 -8
- package/rest-middlewares/error-handler.middleware.d.ts +13 -13
- package/rest-middlewares/language.middleware.d.ts +8 -8
- package/rest-middlewares/request-ended.middleware.d.ts +8 -8
- package/rest-middlewares/request-started.middleware.d.ts +8 -8
- package/services/asset-processor.d.ts +10 -11
- package/services/asset-resolver.d.ts +10 -10
- package/services/assets.d.ts +24 -26
- package/services/backend-provider.d.ts +19 -20
- package/services/cache-processor.d.ts +4 -4
- package/services/cache.d.ts +23 -23
- package/services/configuration.d.ts +15 -15
- package/services/drivers/asset-grid.driver.d.ts +11 -11
- package/services/drivers/asset-local.driver.d.ts +10 -11
- package/services/endpoint-provider.d.ts +4 -4
- package/services/entities/asset.d.ts +19 -21
- package/services/entities/base-entity.d.ts +13 -13
- package/services/entities/lazy-asset.d.ts +25 -25
- package/services/entities/progress.d.ts +49 -49
- package/services/entities/temp-asset.d.ts +20 -22
- package/services/fixtures.d.ts +8 -8
- package/services/gallery-cache.d.ts +8 -9
- package/services/gallery-image.d.ts +10 -11
- package/services/gallery.d.ts +13 -13
- package/services/id-generator.d.ts +11 -11
- package/services/job-manager.d.ts +35 -35
- package/services/lazy-assets.d.ts +22 -22
- package/services/logger.d.ts +8 -8
- package/services/mail-sender.d.ts +20 -20
- package/services/memory-cache.d.ts +10 -10
- package/services/mongo-connector.d.ts +12 -12
- package/services/open-api.d.ts +13 -13
- package/services/progresses.d.ts +20 -20
- package/services/template-renderer.d.ts +14 -14
- package/services/terminal-manager.d.ts +15 -15
- package/services/token-generator.d.ts +6 -6
- package/services/translation-provider.d.ts +9 -9
- package/services/translator.d.ts +15 -15
- package/services/user-manager.d.ts +6 -6
- package/socket-controllers/progress.controller.d.ts +10 -10
- package/socket-controllers/terminal.controller.d.ts +13 -13
- package/socket-controllers/terminal.d.ts +19 -20
- package/socket-middlewares/compression.middleware.d.ts +4 -4
- package/static.d.ts +2 -2
- package/utilities/base-doc.d.ts +40 -40
- package/utilities/decorators.d.ts +10 -10
- package/utilities/di-container.d.ts +43 -43
- package/utilities/empty-job.d.ts +4 -4
- package/utilities/lazy-asset-generator.d.ts +15 -15
- package/utilities/mongoose.d.ts +36 -36
- package/utilities/tree.d.ts +15 -15
- package/utils.d.ts +120 -123
- package/validators.d.ts +7 -7
package/common-types.d.ts
CHANGED
|
@@ -1,326 +1,325 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
export interface
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
export interface
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
register<T>(token: InjectionToken<T>, provider:
|
|
37
|
-
register<T>(token: InjectionToken<T>, provider:
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
export type
|
|
60
|
-
export type
|
|
61
|
-
export type
|
|
62
|
-
export type
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
export type
|
|
67
|
-
export type
|
|
68
|
-
export
|
|
69
|
-
export declare const
|
|
70
|
-
export declare const
|
|
71
|
-
export declare const
|
|
72
|
-
export declare const
|
|
73
|
-
export declare const
|
|
74
|
-
export declare const
|
|
75
|
-
export declare const
|
|
76
|
-
export declare const
|
|
77
|
-
export declare const
|
|
78
|
-
export declare const
|
|
79
|
-
export declare const
|
|
80
|
-
export
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
export
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
export type
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
export
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
export
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
readonly
|
|
204
|
-
readonly
|
|
205
|
-
readonly
|
|
206
|
-
readonly
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
export
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
export type
|
|
313
|
-
export
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
}
|
|
1
|
+
import { Server } from "http";
|
|
2
|
+
import { Request, Express } from "express";
|
|
3
|
+
import { Socket, Server as SocketServer } from "socket.io";
|
|
4
|
+
import { RoutingControllersOptions } from "routing-controllers";
|
|
5
|
+
import { SocketControllers, SocketControllersOptions } from "socket-controllers";
|
|
6
|
+
import { ClassProvider, DependencyContainer, InjectionToken, TokenProvider, ValueProvider, RegistrationOptions } from "tsyringe";
|
|
7
|
+
import { SchemaObject } from "openapi3-ts";
|
|
8
|
+
import { Readable, Writable } from "stream";
|
|
9
|
+
import { Moment } from "moment";
|
|
10
|
+
import { AnyExpression, Expression } from "mongoose";
|
|
11
|
+
import { ICommandArgs, ISuggestion, ITerminal as ITerminalBase } from "@stemy/terminal-commands-addon";
|
|
12
|
+
import { ObjectId } from "bson";
|
|
13
|
+
export declare const Type: FunctionConstructor;
|
|
14
|
+
export interface Type<T = object> extends Function {
|
|
15
|
+
new (...args: any[]): T;
|
|
16
|
+
}
|
|
17
|
+
export interface FactoryProvider<T> {
|
|
18
|
+
useFactory: (dc: IDependencyContainer) => T;
|
|
19
|
+
}
|
|
20
|
+
export interface ITree {
|
|
21
|
+
readonly path: string;
|
|
22
|
+
resolveService(): any;
|
|
23
|
+
resolveLeaves(): Map<string, ITree>;
|
|
24
|
+
resolveServices(): Map<string, any>;
|
|
25
|
+
resolveAncestor(path: string): ITree;
|
|
26
|
+
resolvePath(path: string, throwError?: boolean): ITree;
|
|
27
|
+
}
|
|
28
|
+
export interface IDependencyContainer {
|
|
29
|
+
readonly parent: IDependencyContainer;
|
|
30
|
+
readonly tree: ITree;
|
|
31
|
+
readonly registeredTokens: ReadonlyArray<InjectionToken>;
|
|
32
|
+
createChildContainer(): IDependencyContainer;
|
|
33
|
+
register<T>(token: InjectionToken<T>, provider: ValueProvider<T>): IDependencyContainer;
|
|
34
|
+
register<T>(token: InjectionToken<T>, provider: FactoryProvider<T>): IDependencyContainer;
|
|
35
|
+
register<T>(token: InjectionToken<T>, provider: TokenProvider<T>, options?: RegistrationOptions): IDependencyContainer;
|
|
36
|
+
register<T>(token: InjectionToken<T>, provider: ClassProvider<T>, options?: RegistrationOptions): IDependencyContainer;
|
|
37
|
+
register<T>(token: InjectionToken<T>, provider: Type<T>, options?: RegistrationOptions): IDependencyContainer;
|
|
38
|
+
registerSingleton<T>(from: InjectionToken<T>, to: InjectionToken<T>): IDependencyContainer;
|
|
39
|
+
registerSingleton<T>(token: Type<T>): IDependencyContainer;
|
|
40
|
+
registerType<T>(from: InjectionToken<T>, to: InjectionToken<T>): IDependencyContainer;
|
|
41
|
+
registerInstance<T>(token: InjectionToken<T>, instance: T): IDependencyContainer;
|
|
42
|
+
get<T>(token: InjectionToken<T>): T;
|
|
43
|
+
resolve<T>(token: InjectionToken<T>): T;
|
|
44
|
+
resolveAll<T>(token: InjectionToken<T>): T[];
|
|
45
|
+
}
|
|
46
|
+
export interface ClassBasedProvider<T> extends ClassProvider<T> {
|
|
47
|
+
provide: InjectionToken;
|
|
48
|
+
}
|
|
49
|
+
export interface ValueBasedProvider<T> extends ValueProvider<T> {
|
|
50
|
+
provide: InjectionToken;
|
|
51
|
+
}
|
|
52
|
+
export interface FactoryBasedProvider<T> extends FactoryProvider<T> {
|
|
53
|
+
provide: InjectionToken;
|
|
54
|
+
}
|
|
55
|
+
export interface TokenBasedProvider<T> extends TokenProvider<T> {
|
|
56
|
+
provide: InjectionToken;
|
|
57
|
+
}
|
|
58
|
+
export type SyringeProvider<T> = Type<T> | ClassProvider<T> | ValueProvider<T> | FactoryProvider<T> | TokenProvider<T>;
|
|
59
|
+
export type Provider<T> = Type<T> | ClassBasedProvider<T> | ValueBasedProvider<T> | FactoryBasedProvider<T> | TokenBasedProvider<T>;
|
|
60
|
+
export type Constructor<T = object> = new (...args: any[]) => T;
|
|
61
|
+
export type InferGeneric<T> = T extends Type<infer B> ? B : never;
|
|
62
|
+
export type PickMatching<T, V> = {
|
|
63
|
+
[K in keyof T as T[K] extends V ? K : never]: T[K];
|
|
64
|
+
};
|
|
65
|
+
export type OmitFirstArg<F> = F extends (x: any, ...args: infer P) => infer R ? (...args: P) => R : never;
|
|
66
|
+
export type SchemaConverter = (meta: any, options: any) => SchemaObject;
|
|
67
|
+
export type OpenApiValidation = SchemaConverter | SchemaObject;
|
|
68
|
+
export declare const FIXTURE: InjectionToken<IFixture>;
|
|
69
|
+
export declare const JOB: InjectionToken<IJob>;
|
|
70
|
+
export declare const TERMINAL_COMMAND: InjectionToken<ITerminalCommand>;
|
|
71
|
+
export declare const EXPRESS: InjectionToken<Express>;
|
|
72
|
+
export declare const HTTP_SERVER: InjectionToken<Server>;
|
|
73
|
+
export declare const SOCKET_SERVER: InjectionToken<SocketServer>;
|
|
74
|
+
export declare const SOCKET_CONTROLLERS: InjectionToken<SocketControllers>;
|
|
75
|
+
export declare const PARAMETER: InjectionToken<Parameter>;
|
|
76
|
+
export declare const DI_CONTAINER: InjectionToken<IDependencyContainer>;
|
|
77
|
+
export declare const OPENAPI_VALIDATION: InjectionToken<OpenApiValidation>;
|
|
78
|
+
export declare const LOCAL_DIR: InjectionToken<string>;
|
|
79
|
+
export declare const ASSET_DRIVER: InjectionToken<IAssetDriver>;
|
|
80
|
+
export interface IMatchField {
|
|
81
|
+
field: string;
|
|
82
|
+
filter: any;
|
|
83
|
+
when: boolean;
|
|
84
|
+
}
|
|
85
|
+
export interface IProjectOptions {
|
|
86
|
+
[field: string]: AnyExpression | Expression | IProjectOptions;
|
|
87
|
+
}
|
|
88
|
+
export interface IUnwindOptions {
|
|
89
|
+
path: string;
|
|
90
|
+
includeArrayIndex?: string;
|
|
91
|
+
preserveNullAndEmptyArrays?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export interface IFixture {
|
|
94
|
+
load(output?: IFixtureOutput): Promise<any>;
|
|
95
|
+
}
|
|
96
|
+
export interface IFixtureOutput {
|
|
97
|
+
write(message: string): void;
|
|
98
|
+
writeln(message: string): void;
|
|
99
|
+
}
|
|
100
|
+
export type ParamResolver = (value: string, helper?: (param: string) => any) => any;
|
|
101
|
+
export declare class Parameter {
|
|
102
|
+
readonly name: string;
|
|
103
|
+
defaultValue: any;
|
|
104
|
+
resolver: ParamResolver;
|
|
105
|
+
constructor(name: string, defaultValue: any, resolver?: ParamResolver);
|
|
106
|
+
}
|
|
107
|
+
export type SocketParam = string | number | boolean | SocketParams;
|
|
108
|
+
export type SocketParams = {
|
|
109
|
+
[name: string]: SocketParam | Array<SocketParam>;
|
|
110
|
+
};
|
|
111
|
+
export type JobParams = SocketParams;
|
|
112
|
+
export interface ISocketMessage {
|
|
113
|
+
message: string;
|
|
114
|
+
params: SocketParams;
|
|
115
|
+
}
|
|
116
|
+
export interface IMessageBridge {
|
|
117
|
+
sendMessage(message: string, params?: SocketParams): void;
|
|
118
|
+
}
|
|
119
|
+
export interface IJob {
|
|
120
|
+
process(messaging?: IMessageBridge): Promise<any>;
|
|
121
|
+
}
|
|
122
|
+
export interface IJobTask {
|
|
123
|
+
start: () => void;
|
|
124
|
+
stop: () => void;
|
|
125
|
+
}
|
|
126
|
+
export interface JobScheduleRange {
|
|
127
|
+
min: number;
|
|
128
|
+
max: number;
|
|
129
|
+
}
|
|
130
|
+
export type JobScheduleTime = string | number | JobScheduleRange | Array<string | number>;
|
|
131
|
+
export interface ITerminalFile extends ISuggestion {
|
|
132
|
+
content?: string;
|
|
133
|
+
buffer?: Buffer;
|
|
134
|
+
accept?: string;
|
|
135
|
+
}
|
|
136
|
+
export interface ITerminal extends ITerminalBase {
|
|
137
|
+
suggestFiles(accept: string): Promise<ITerminalFile[]>;
|
|
138
|
+
downloadFile(filename: string, buffer: Buffer): Promise<void>;
|
|
139
|
+
}
|
|
140
|
+
export interface ITerminalCommand {
|
|
141
|
+
name?: string;
|
|
142
|
+
execute(args: ICommandArgs, terminal: ITerminal): Promise<any>;
|
|
143
|
+
suggest?(args: ICommandArgs, terminal: ITerminal): Promise<Array<string | ISuggestion>>;
|
|
144
|
+
}
|
|
145
|
+
export interface IProgress {
|
|
146
|
+
id: string;
|
|
147
|
+
current: number;
|
|
148
|
+
max: number;
|
|
149
|
+
message: string;
|
|
150
|
+
error: string;
|
|
151
|
+
canceled: boolean;
|
|
152
|
+
percent: number;
|
|
153
|
+
remaining: number;
|
|
154
|
+
setMessageBridge(messageBridge: IMessageBridge): this;
|
|
155
|
+
createSubProgress(progressValue: number, max?: number, message?: string): Promise<IProgress>;
|
|
156
|
+
setMax(max: number): Promise<any>;
|
|
157
|
+
setMessage(message: string): Promise<any>;
|
|
158
|
+
setError(error: string): Promise<any>;
|
|
159
|
+
advance(value?: number): Promise<any>;
|
|
160
|
+
cancel(): Promise<any>;
|
|
161
|
+
save(): Promise<any>;
|
|
162
|
+
load(): Promise<this>;
|
|
163
|
+
toJSON(): any;
|
|
164
|
+
}
|
|
165
|
+
export interface IAssetCropInfo {
|
|
166
|
+
x: number;
|
|
167
|
+
y: number;
|
|
168
|
+
w: number;
|
|
169
|
+
h: number;
|
|
170
|
+
}
|
|
171
|
+
export interface IImageMeta {
|
|
172
|
+
crop?: IAssetCropInfo;
|
|
173
|
+
cropBefore?: IAssetCropInfo;
|
|
174
|
+
cropAfter?: IAssetCropInfo;
|
|
175
|
+
canvasScaleX?: number;
|
|
176
|
+
canvasScaleY?: number;
|
|
177
|
+
}
|
|
178
|
+
export interface IAssetMeta extends IImageMeta {
|
|
179
|
+
filename?: string;
|
|
180
|
+
extension?: string;
|
|
181
|
+
classified?: boolean;
|
|
182
|
+
downloadCount?: number;
|
|
183
|
+
firstDownload?: Date;
|
|
184
|
+
lastDownload?: Date;
|
|
185
|
+
preview?: ObjectId | string;
|
|
186
|
+
publicUrl?: string;
|
|
187
|
+
[prop: string]: any;
|
|
188
|
+
}
|
|
189
|
+
export interface IAssetImageParams {
|
|
190
|
+
rotation?: number;
|
|
191
|
+
canvasScaleX?: number;
|
|
192
|
+
canvasScaleY?: number;
|
|
193
|
+
scaleX?: number;
|
|
194
|
+
scaleY?: number;
|
|
195
|
+
lazy?: boolean;
|
|
196
|
+
crop?: string | boolean;
|
|
197
|
+
cropBefore?: string | boolean | IAssetCropInfo;
|
|
198
|
+
cropAfter?: string | boolean | IAssetCropInfo;
|
|
199
|
+
[key: string]: any;
|
|
200
|
+
}
|
|
201
|
+
export interface IAsset {
|
|
202
|
+
readonly id: string;
|
|
203
|
+
readonly filename: string;
|
|
204
|
+
readonly contentType: string;
|
|
205
|
+
readonly metadata: IAssetMeta;
|
|
206
|
+
readonly stream: Readable;
|
|
207
|
+
unlink(): Promise<string>;
|
|
208
|
+
setMeta(meta: Partial<IAssetMeta>): Promise<any>;
|
|
209
|
+
getBuffer(): Promise<Buffer>;
|
|
210
|
+
download(metadata?: IAssetMeta): Promise<Readable>;
|
|
211
|
+
downloadImage(params?: IAssetImageParams, metadata?: IAssetMeta): Promise<Readable>;
|
|
212
|
+
getImage(params?: IAssetImageParams): Promise<Readable>;
|
|
213
|
+
save(): Promise<any>;
|
|
214
|
+
load(): Promise<this>;
|
|
215
|
+
toJSON(): any;
|
|
216
|
+
}
|
|
217
|
+
export interface IAssetUploadStream extends Writable {
|
|
218
|
+
id?: ObjectId;
|
|
219
|
+
done?: boolean;
|
|
220
|
+
}
|
|
221
|
+
export interface IAssetUploadOpts {
|
|
222
|
+
chunkSizeBytes?: number;
|
|
223
|
+
metadata?: IAssetMeta;
|
|
224
|
+
contentType?: string;
|
|
225
|
+
}
|
|
226
|
+
export interface IAssetDriver {
|
|
227
|
+
readonly metaCollection: string;
|
|
228
|
+
openUploadStream(filename: string, opts?: IAssetUploadOpts): IAssetUploadStream;
|
|
229
|
+
openDownloadStream(id: ObjectId): Readable;
|
|
230
|
+
delete(id: ObjectId): Promise<void>;
|
|
231
|
+
}
|
|
232
|
+
export interface ILazyAsset {
|
|
233
|
+
id: string;
|
|
234
|
+
jobName: string;
|
|
235
|
+
jobParams: any;
|
|
236
|
+
jobQue: string;
|
|
237
|
+
createdAt: Date;
|
|
238
|
+
updatedAt: Date;
|
|
239
|
+
progressId?: string;
|
|
240
|
+
assetId?: string;
|
|
241
|
+
unlink(): Promise<string>;
|
|
242
|
+
startWorking(): void;
|
|
243
|
+
loadAsset(): Promise<IAsset>;
|
|
244
|
+
writeAsset(asset: IAsset): Promise<IAsset>;
|
|
245
|
+
save(): Promise<any>;
|
|
246
|
+
load(): Promise<this>;
|
|
247
|
+
toJSON(): any;
|
|
248
|
+
}
|
|
249
|
+
export interface IUser {
|
|
250
|
+
_id?: string;
|
|
251
|
+
id?: string;
|
|
252
|
+
email?: string;
|
|
253
|
+
password?: string;
|
|
254
|
+
roles: string[];
|
|
255
|
+
}
|
|
256
|
+
export interface IClientSocket extends Socket {
|
|
257
|
+
interestedProgresses: Set<string>;
|
|
258
|
+
}
|
|
259
|
+
export interface IRequestBase<T> extends Request {
|
|
260
|
+
id?: string;
|
|
261
|
+
started?: Moment;
|
|
262
|
+
ended?: Moment;
|
|
263
|
+
container?: DependencyContainer;
|
|
264
|
+
language?: string;
|
|
265
|
+
user?: T;
|
|
266
|
+
}
|
|
267
|
+
export interface IRequest extends IRequestBase<IUser> {
|
|
268
|
+
}
|
|
269
|
+
export interface IGalleryImage {
|
|
270
|
+
folder: string;
|
|
271
|
+
thumb: string;
|
|
272
|
+
big: string;
|
|
273
|
+
serve(id: string): Promise<Buffer>;
|
|
274
|
+
}
|
|
275
|
+
export interface IGallerySize {
|
|
276
|
+
width?: number;
|
|
277
|
+
height?: number;
|
|
278
|
+
}
|
|
279
|
+
export interface IGalleryImageHandler {
|
|
280
|
+
getOriginal(): Promise<Buffer>;
|
|
281
|
+
writeResult(isThumb: boolean, buffer: Buffer): Promise<void>;
|
|
282
|
+
hasResult(isThumb: boolean): Promise<boolean>;
|
|
283
|
+
serveResult(isThumb: boolean): Promise<Buffer>;
|
|
284
|
+
}
|
|
285
|
+
export interface ITranslations {
|
|
286
|
+
[key: string]: any;
|
|
287
|
+
}
|
|
288
|
+
export interface IPaginationMeta {
|
|
289
|
+
total: number;
|
|
290
|
+
[key: string]: any;
|
|
291
|
+
}
|
|
292
|
+
export interface IPaginationBase<T> {
|
|
293
|
+
count: number;
|
|
294
|
+
items: T[];
|
|
295
|
+
meta?: IPaginationMeta;
|
|
296
|
+
}
|
|
297
|
+
export interface IPagination extends IPaginationBase<any> {
|
|
298
|
+
}
|
|
299
|
+
export interface IPaginationParams {
|
|
300
|
+
page: number;
|
|
301
|
+
limit: number;
|
|
302
|
+
sort?: string;
|
|
303
|
+
populate?: string[];
|
|
304
|
+
[key: string]: any;
|
|
305
|
+
}
|
|
306
|
+
export type FontFormat = "opentype" | "truetype" | "woff" | "woff2" | "datafork";
|
|
307
|
+
export interface IFileType {
|
|
308
|
+
ext: string;
|
|
309
|
+
mime: string;
|
|
310
|
+
}
|
|
311
|
+
export type RoutingOptions = RoutingControllersOptions;
|
|
312
|
+
export type SocketOptions = Omit<SocketControllersOptions, "container">;
|
|
313
|
+
export interface IBackendConfig {
|
|
314
|
+
rootFolder?: string;
|
|
315
|
+
routePrefix?: string;
|
|
316
|
+
params?: Parameter[];
|
|
317
|
+
fixtures?: Type<IFixture>[];
|
|
318
|
+
jobs?: Type<IJob>[];
|
|
319
|
+
commands?: Type<ITerminalCommand>[];
|
|
320
|
+
restOptions?: RoutingOptions;
|
|
321
|
+
socketOptions?: SocketOptions;
|
|
322
|
+
customValidation?: SchemaConverter | SchemaObject;
|
|
323
|
+
assetLocalDir?: string;
|
|
324
|
+
assetDriver?: Type<IAssetDriver>;
|
|
325
|
+
}
|