@flusys/nestjs-storage 1.1.0-beta → 2.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/README.md +148 -6
- package/cjs/config/index.js +0 -1
- package/cjs/config/storage.constants.js +0 -17
- package/cjs/controllers/file-manager.controller.js +44 -1
- package/cjs/controllers/folder.controller.js +44 -1
- package/cjs/controllers/storage-config.controller.js +44 -1
- package/cjs/controllers/upload.controller.js +18 -29
- package/cjs/docs/storage-swagger.config.js +24 -136
- package/cjs/dtos/file-manager.dto.js +70 -34
- package/cjs/dtos/folder.dto.js +15 -9
- package/cjs/dtos/storage-config.dto.js +4 -85
- package/cjs/dtos/upload.dto.js +24 -17
- package/cjs/entities/file-manager-with-company.entity.js +3 -4
- package/cjs/entities/file-manager.entity.js +71 -3
- package/cjs/entities/folder-with-company.entity.js +3 -4
- package/cjs/entities/folder.entity.js +19 -3
- package/cjs/entities/index.js +9 -10
- package/cjs/entities/storage-config-with-company.entity.js +3 -4
- package/cjs/entities/storage-config.entity.js +74 -3
- package/cjs/interfaces/index.js +0 -1
- package/cjs/middlewares/file-serve.middleware.js +113 -100
- package/cjs/modules/storage.module.js +82 -136
- package/cjs/providers/azure-provider.optional.js +10 -38
- package/cjs/providers/local-provider.js +38 -31
- package/cjs/providers/s3-provider.optional.js +19 -40
- package/cjs/providers/storage-factory.service.js +54 -99
- package/cjs/providers/storage-provider.registry.js +8 -18
- package/cjs/services/file-manager.service.js +238 -323
- package/cjs/services/folder.service.js +8 -11
- package/cjs/services/index.js +1 -0
- package/cjs/{config → services}/storage-config.service.js +32 -76
- package/cjs/services/storage-datasource.provider.js +16 -26
- package/cjs/services/storage-provider-config.service.js +15 -37
- package/cjs/services/upload.service.js +72 -88
- package/cjs/utils/file-validator.util.js +458 -0
- package/cjs/utils/image-compressor.util.js +3 -8
- package/config/index.d.ts +0 -1
- package/config/storage.constants.d.ts +0 -8
- package/controllers/upload.controller.d.ts +3 -6
- package/dtos/file-manager.dto.d.ts +12 -5
- package/dtos/folder.dto.d.ts +5 -5
- package/dtos/storage-config.dto.d.ts +7 -13
- package/entities/file-manager-with-company.entity.d.ts +2 -2
- package/entities/file-manager.entity.d.ts +12 -2
- package/entities/folder-with-company.entity.d.ts +2 -2
- package/entities/folder.entity.d.ts +4 -2
- package/entities/index.d.ts +3 -4
- package/entities/storage-config-with-company.entity.d.ts +2 -2
- package/entities/storage-config.entity.d.ts +8 -2
- package/fesm/config/index.js +0 -1
- package/fesm/config/storage.constants.js +0 -8
- package/fesm/controllers/file-manager.controller.js +45 -2
- package/fesm/controllers/folder.controller.js +45 -2
- package/fesm/controllers/storage-config.controller.js +45 -2
- package/fesm/controllers/upload.controller.js +19 -30
- package/fesm/docs/storage-swagger.config.js +27 -142
- package/fesm/dtos/file-manager.dto.js +71 -35
- package/fesm/dtos/folder.dto.js +16 -10
- package/fesm/dtos/storage-config.dto.js +8 -95
- package/fesm/dtos/upload.dto.js +25 -19
- package/fesm/entities/file-manager-with-company.entity.js +3 -4
- package/fesm/entities/file-manager.entity.js +72 -4
- package/fesm/entities/folder-with-company.entity.js +3 -4
- package/fesm/entities/folder.entity.js +20 -4
- package/fesm/entities/index.js +5 -13
- package/fesm/entities/storage-config-with-company.entity.js +3 -4
- package/fesm/entities/storage-config.entity.js +75 -4
- package/fesm/interfaces/index.js +0 -1
- package/fesm/interfaces/storage-config.interface.js +1 -3
- package/fesm/middlewares/file-serve.middleware.js +114 -101
- package/fesm/modules/storage.module.js +83 -136
- package/fesm/providers/azure-provider.optional.js +11 -42
- package/fesm/providers/local-provider.js +38 -31
- package/fesm/providers/s3-provider.optional.js +20 -44
- package/fesm/providers/storage-factory.service.js +52 -97
- package/fesm/providers/storage-provider.registry.js +10 -20
- package/fesm/services/file-manager.service.js +237 -322
- package/fesm/services/folder.service.js +6 -9
- package/fesm/services/index.js +1 -0
- package/fesm/{config → services}/storage-config.service.js +32 -76
- package/fesm/services/storage-datasource.provider.js +16 -26
- package/fesm/services/storage-provider-config.service.js +13 -35
- package/fesm/services/upload.service.js +71 -87
- package/fesm/utils/file-validator.util.js +451 -0
- package/fesm/utils/image-compressor.util.js +3 -8
- package/interfaces/file-manager.interface.d.ts +7 -4
- package/interfaces/index.d.ts +0 -1
- package/interfaces/storage-config.interface.d.ts +0 -20
- package/interfaces/storage-module-options.interface.d.ts +0 -5
- package/middlewares/file-serve.middleware.d.ts +9 -1
- package/modules/storage.module.d.ts +1 -2
- package/package.json +6 -6
- package/providers/azure-provider.optional.d.ts +8 -6
- package/providers/local-provider.d.ts +2 -7
- package/providers/s3-provider.optional.d.ts +9 -7
- package/providers/storage-factory.service.d.ts +8 -9
- package/providers/storage-provider.registry.d.ts +4 -4
- package/services/file-manager.service.d.ts +23 -16
- package/services/folder.service.d.ts +4 -4
- package/services/index.d.ts +1 -0
- package/services/storage-config.service.d.ts +24 -0
- package/services/storage-datasource.provider.d.ts +3 -4
- package/services/storage-provider-config.service.d.ts +4 -4
- package/services/upload.service.d.ts +3 -2
- package/utils/file-validator.util.d.ts +19 -0
- package/cjs/entities/file-manager-base.entity.js +0 -115
- package/cjs/entities/folder-base.entity.js +0 -55
- package/cjs/entities/storage-config-base.entity.js +0 -93
- package/cjs/interfaces/file-upload-response.interface.js +0 -4
- package/config/storage-config.service.d.ts +0 -22
- package/entities/file-manager-base.entity.d.ts +0 -13
- package/entities/folder-base.entity.d.ts +0 -5
- package/entities/storage-config-base.entity.d.ts +0 -9
- package/fesm/entities/file-manager-base.entity.js +0 -108
- package/fesm/entities/folder-base.entity.js +0 -48
- package/fesm/entities/storage-config-base.entity.js +0 -83
- package/fesm/interfaces/file-upload-response.interface.js +0 -1
- package/interfaces/file-upload-response.interface.d.ts +0 -6
package/cjs/dtos/upload.dto.js
CHANGED
|
@@ -66,13 +66,15 @@ let DeleteSingleFileDto = class DeleteSingleFileDto {
|
|
|
66
66
|
_ts_decorate([
|
|
67
67
|
(0, _swagger.ApiProperty)({
|
|
68
68
|
description: 'Key of the file to delete',
|
|
69
|
-
example: '/uploads/some
|
|
69
|
+
example: '/uploads/some-path'
|
|
70
70
|
}),
|
|
71
|
+
(0, _classvalidator.IsNotEmpty)(),
|
|
72
|
+
(0, _classvalidator.IsString)(),
|
|
71
73
|
_ts_metadata("design:type", String)
|
|
72
74
|
], DeleteSingleFileDto.prototype, "key", void 0);
|
|
73
75
|
_ts_decorate([
|
|
74
76
|
(0, _swagger.ApiPropertyOptional)({
|
|
75
|
-
description: 'Storage configuration ID
|
|
77
|
+
description: 'Storage configuration ID',
|
|
76
78
|
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
77
79
|
}),
|
|
78
80
|
(0, _classvalidator.IsOptional)(),
|
|
@@ -87,20 +89,25 @@ let DeleteMultipleFileDto = class DeleteMultipleFileDto {
|
|
|
87
89
|
};
|
|
88
90
|
_ts_decorate([
|
|
89
91
|
(0, _swagger.ApiProperty)({
|
|
90
|
-
description: 'Array of file
|
|
92
|
+
description: 'Array of file keys to delete',
|
|
91
93
|
example: [
|
|
92
|
-
'/uploads/
|
|
93
|
-
'
|
|
94
|
+
'/uploads/file1',
|
|
95
|
+
'/uploads/file2'
|
|
94
96
|
],
|
|
95
97
|
type: [
|
|
96
98
|
String
|
|
97
99
|
]
|
|
98
100
|
}),
|
|
101
|
+
(0, _classvalidator.IsNotEmpty)(),
|
|
102
|
+
(0, _classvalidator.IsArray)(),
|
|
103
|
+
(0, _classvalidator.IsString)({
|
|
104
|
+
each: true
|
|
105
|
+
}),
|
|
99
106
|
_ts_metadata("design:type", Array)
|
|
100
107
|
], DeleteMultipleFileDto.prototype, "keys", void 0);
|
|
101
108
|
_ts_decorate([
|
|
102
109
|
(0, _swagger.ApiPropertyOptional)({
|
|
103
|
-
description: 'Storage configuration ID
|
|
110
|
+
description: 'Storage configuration ID',
|
|
104
111
|
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
105
112
|
}),
|
|
106
113
|
(0, _classvalidator.IsOptional)(),
|
|
@@ -120,7 +127,7 @@ let UploadOptionsDto = class UploadOptionsDto {
|
|
|
120
127
|
};
|
|
121
128
|
_ts_decorate([
|
|
122
129
|
(0, _swagger.ApiPropertyOptional)({
|
|
123
|
-
description: 'Storage configuration ID
|
|
130
|
+
description: 'Storage configuration ID',
|
|
124
131
|
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
125
132
|
}),
|
|
126
133
|
(0, _classvalidator.IsOptional)(),
|
|
@@ -129,7 +136,7 @@ _ts_decorate([
|
|
|
129
136
|
], UploadOptionsDto.prototype, "storageConfigId", void 0);
|
|
130
137
|
_ts_decorate([
|
|
131
138
|
(0, _swagger.ApiPropertyOptional)({
|
|
132
|
-
description: 'Folder path
|
|
139
|
+
description: 'Folder path for upload',
|
|
133
140
|
example: 'uploads/images'
|
|
134
141
|
}),
|
|
135
142
|
(0, _classvalidator.IsOptional)(),
|
|
@@ -140,7 +147,7 @@ _ts_decorate([
|
|
|
140
147
|
], UploadOptionsDto.prototype, "folderPath", void 0);
|
|
141
148
|
_ts_decorate([
|
|
142
149
|
(0, _swagger.ApiPropertyOptional)({
|
|
143
|
-
description: 'Maximum width
|
|
150
|
+
description: 'Maximum width in pixels',
|
|
144
151
|
example: 1280,
|
|
145
152
|
minimum: 100,
|
|
146
153
|
maximum: 10000,
|
|
@@ -155,7 +162,7 @@ _ts_decorate([
|
|
|
155
162
|
], UploadOptionsDto.prototype, "maxWidth", void 0);
|
|
156
163
|
_ts_decorate([
|
|
157
164
|
(0, _swagger.ApiPropertyOptional)({
|
|
158
|
-
description: 'Maximum height
|
|
165
|
+
description: 'Maximum height in pixels',
|
|
159
166
|
example: 1280,
|
|
160
167
|
minimum: 100,
|
|
161
168
|
maximum: 10000,
|
|
@@ -170,7 +177,7 @@ _ts_decorate([
|
|
|
170
177
|
], UploadOptionsDto.prototype, "maxHeight", void 0);
|
|
171
178
|
_ts_decorate([
|
|
172
179
|
(0, _swagger.ApiPropertyOptional)({
|
|
173
|
-
description: 'Compression quality (1
|
|
180
|
+
description: 'Compression quality (1-100)',
|
|
174
181
|
example: 85,
|
|
175
182
|
minimum: 1,
|
|
176
183
|
maximum: 100,
|
|
@@ -185,7 +192,7 @@ _ts_decorate([
|
|
|
185
192
|
], UploadOptionsDto.prototype, "quality", void 0);
|
|
186
193
|
_ts_decorate([
|
|
187
194
|
(0, _swagger.ApiPropertyOptional)({
|
|
188
|
-
description: 'Output
|
|
195
|
+
description: 'Output image format',
|
|
189
196
|
enum: ImageFormat,
|
|
190
197
|
default: "original"
|
|
191
198
|
}),
|
|
@@ -195,7 +202,7 @@ _ts_decorate([
|
|
|
195
202
|
], UploadOptionsDto.prototype, "format", void 0);
|
|
196
203
|
_ts_decorate([
|
|
197
204
|
(0, _swagger.ApiPropertyOptional)({
|
|
198
|
-
description: 'Whether to compress the image
|
|
205
|
+
description: 'Whether to compress the image',
|
|
199
206
|
example: true,
|
|
200
207
|
default: true
|
|
201
208
|
}),
|
|
@@ -222,7 +229,7 @@ _ts_decorate([
|
|
|
222
229
|
], FileUploadResponsePayloadDto.prototype, "name", void 0);
|
|
223
230
|
_ts_decorate([
|
|
224
231
|
(0, _swagger.ApiProperty)({
|
|
225
|
-
example: '
|
|
232
|
+
example: 'image/jpeg'
|
|
226
233
|
}),
|
|
227
234
|
_ts_metadata("design:type", String)
|
|
228
235
|
], FileUploadResponsePayloadDto.prototype, "contentType", void 0);
|
|
@@ -234,21 +241,21 @@ _ts_decorate([
|
|
|
234
241
|
], FileUploadResponsePayloadDto.prototype, "size", void 0);
|
|
235
242
|
_ts_decorate([
|
|
236
243
|
(0, _swagger.ApiProperty)({
|
|
237
|
-
example: '
|
|
244
|
+
example: 'uploads/file123.jpg'
|
|
238
245
|
}),
|
|
239
246
|
_ts_metadata("design:type", String)
|
|
240
247
|
], FileUploadResponsePayloadDto.prototype, "key", void 0);
|
|
241
248
|
_ts_decorate([
|
|
242
249
|
(0, _swagger.ApiProperty)({
|
|
243
250
|
example: 'local',
|
|
244
|
-
description: 'Storage provider type
|
|
251
|
+
description: 'Storage provider type'
|
|
245
252
|
}),
|
|
246
253
|
_ts_metadata("design:type", String)
|
|
247
254
|
], FileUploadResponsePayloadDto.prototype, "location", void 0);
|
|
248
255
|
_ts_decorate([
|
|
249
256
|
(0, _swagger.ApiProperty)({
|
|
250
257
|
example: '123e4567-e89b-12d3-a456-426614174000',
|
|
251
|
-
description: 'Storage configuration ID
|
|
258
|
+
description: 'Storage configuration ID'
|
|
252
259
|
}),
|
|
253
260
|
_ts_metadata("design:type", String)
|
|
254
261
|
], FileUploadResponsePayloadDto.prototype, "storageConfigId", void 0);
|
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "FileManagerWithCompany", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _typeorm = require("typeorm");
|
|
12
|
-
const
|
|
12
|
+
const _filemanagerentity = require("./file-manager.entity");
|
|
13
13
|
function _define_property(obj, key, value) {
|
|
14
14
|
if (key in obj) {
|
|
15
15
|
Object.defineProperty(obj, key, {
|
|
@@ -32,10 +32,9 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
32
32
|
function _ts_metadata(k, v) {
|
|
33
33
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
34
34
|
}
|
|
35
|
-
let FileManagerWithCompany = class FileManagerWithCompany extends
|
|
35
|
+
let FileManagerWithCompany = class FileManagerWithCompany extends _filemanagerentity.FileManager {
|
|
36
36
|
constructor(...args){
|
|
37
|
-
super(...args),
|
|
38
|
-
_define_property(this, "companyId", void 0), _define_property(this, "folder", void 0);
|
|
37
|
+
super(...args), _define_property(this, "companyId", void 0);
|
|
39
38
|
}
|
|
40
39
|
};
|
|
41
40
|
_ts_decorate([
|
|
@@ -8,8 +8,9 @@ Object.defineProperty(exports, "FileManager", {
|
|
|
8
8
|
return FileManager;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
+
const _entities = require("@flusys/nestjs-shared/entities");
|
|
12
|
+
const _enums = require("../enums");
|
|
11
13
|
const _typeorm = require("typeorm");
|
|
12
|
-
const _filemanagerbaseentity = require("./file-manager-base.entity");
|
|
13
14
|
function _define_property(obj, key, value) {
|
|
14
15
|
if (key in obj) {
|
|
15
16
|
Object.defineProperty(obj, key, {
|
|
@@ -32,11 +33,78 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
32
33
|
function _ts_metadata(k, v) {
|
|
33
34
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
34
35
|
}
|
|
35
|
-
let FileManager = class FileManager extends
|
|
36
|
+
let FileManager = class FileManager extends _entities.Identity {
|
|
36
37
|
constructor(...args){
|
|
37
|
-
super(...args), _define_property(this, "folder", void 0);
|
|
38
|
+
super(...args), _define_property(this, "name", void 0), _define_property(this, "contentType", void 0), _define_property(this, "size", void 0), _define_property(this, "key", void 0), _define_property(this, "url", void 0), _define_property(this, "location", void 0), _define_property(this, "storageConfigId", void 0), _define_property(this, "expiresAt", null), _define_property(this, "isPrivate", void 0), _define_property(this, "folder", void 0);
|
|
38
39
|
}
|
|
39
40
|
};
|
|
41
|
+
_ts_decorate([
|
|
42
|
+
(0, _typeorm.Column)({
|
|
43
|
+
type: 'varchar',
|
|
44
|
+
length: 255,
|
|
45
|
+
nullable: false
|
|
46
|
+
}),
|
|
47
|
+
_ts_metadata("design:type", String)
|
|
48
|
+
], FileManager.prototype, "name", void 0);
|
|
49
|
+
_ts_decorate([
|
|
50
|
+
(0, _typeorm.Column)({
|
|
51
|
+
type: 'varchar',
|
|
52
|
+
length: 255,
|
|
53
|
+
nullable: false
|
|
54
|
+
}),
|
|
55
|
+
_ts_metadata("design:type", String)
|
|
56
|
+
], FileManager.prototype, "contentType", void 0);
|
|
57
|
+
_ts_decorate([
|
|
58
|
+
(0, _typeorm.Column)({
|
|
59
|
+
type: 'varchar',
|
|
60
|
+
length: 255,
|
|
61
|
+
nullable: false
|
|
62
|
+
}),
|
|
63
|
+
_ts_metadata("design:type", String)
|
|
64
|
+
], FileManager.prototype, "size", void 0);
|
|
65
|
+
_ts_decorate([
|
|
66
|
+
(0, _typeorm.Column)({
|
|
67
|
+
type: 'text',
|
|
68
|
+
nullable: false
|
|
69
|
+
}),
|
|
70
|
+
_ts_metadata("design:type", String)
|
|
71
|
+
], FileManager.prototype, "key", void 0);
|
|
72
|
+
_ts_decorate([
|
|
73
|
+
(0, _typeorm.Column)({
|
|
74
|
+
type: 'text',
|
|
75
|
+
nullable: true
|
|
76
|
+
}),
|
|
77
|
+
_ts_metadata("design:type", Object)
|
|
78
|
+
], FileManager.prototype, "url", void 0);
|
|
79
|
+
_ts_decorate([
|
|
80
|
+
(0, _typeorm.Column)({
|
|
81
|
+
type: 'text',
|
|
82
|
+
nullable: false
|
|
83
|
+
}),
|
|
84
|
+
_ts_metadata("design:type", typeof _enums.FileLocationEnum === "undefined" ? Object : _enums.FileLocationEnum)
|
|
85
|
+
], FileManager.prototype, "location", void 0);
|
|
86
|
+
_ts_decorate([
|
|
87
|
+
(0, _typeorm.Column)({
|
|
88
|
+
type: 'uuid',
|
|
89
|
+
nullable: true
|
|
90
|
+
}),
|
|
91
|
+
_ts_metadata("design:type", Object)
|
|
92
|
+
], FileManager.prototype, "storageConfigId", void 0);
|
|
93
|
+
_ts_decorate([
|
|
94
|
+
(0, _typeorm.Column)({
|
|
95
|
+
type: 'bigint',
|
|
96
|
+
nullable: true
|
|
97
|
+
}),
|
|
98
|
+
_ts_metadata("design:type", Object)
|
|
99
|
+
], FileManager.prototype, "expiresAt", void 0);
|
|
100
|
+
_ts_decorate([
|
|
101
|
+
(0, _typeorm.Column)({
|
|
102
|
+
type: 'boolean',
|
|
103
|
+
nullable: false,
|
|
104
|
+
default: false
|
|
105
|
+
}),
|
|
106
|
+
_ts_metadata("design:type", Boolean)
|
|
107
|
+
], FileManager.prototype, "isPrivate", void 0);
|
|
40
108
|
_ts_decorate([
|
|
41
109
|
(0, _typeorm.ManyToOne)('Folder', (folder)=>folder.fileManager, {
|
|
42
110
|
nullable: true,
|
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "FolderWithCompany", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _typeorm = require("typeorm");
|
|
12
|
-
const
|
|
12
|
+
const _folderentity = require("./folder.entity");
|
|
13
13
|
function _define_property(obj, key, value) {
|
|
14
14
|
if (key in obj) {
|
|
15
15
|
Object.defineProperty(obj, key, {
|
|
@@ -32,10 +32,9 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
32
32
|
function _ts_metadata(k, v) {
|
|
33
33
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
34
34
|
}
|
|
35
|
-
let FolderWithCompany = class FolderWithCompany extends
|
|
35
|
+
let FolderWithCompany = class FolderWithCompany extends _folderentity.Folder {
|
|
36
36
|
constructor(...args){
|
|
37
|
-
super(...args),
|
|
38
|
-
_define_property(this, "companyId", void 0), _define_property(this, "fileManager", void 0);
|
|
37
|
+
super(...args), _define_property(this, "companyId", void 0);
|
|
39
38
|
}
|
|
40
39
|
};
|
|
41
40
|
_ts_decorate([
|
|
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "Folder", {
|
|
|
8
8
|
return Folder;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
+
const _entities = require("@flusys/nestjs-shared/entities");
|
|
11
12
|
const _typeorm = require("typeorm");
|
|
12
|
-
const _folderbaseentity = require("./folder-base.entity");
|
|
13
13
|
function _define_property(obj, key, value) {
|
|
14
14
|
if (key in obj) {
|
|
15
15
|
Object.defineProperty(obj, key, {
|
|
@@ -32,11 +32,27 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
32
32
|
function _ts_metadata(k, v) {
|
|
33
33
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
34
34
|
}
|
|
35
|
-
let Folder = class Folder extends
|
|
35
|
+
let Folder = class Folder extends _entities.Identity {
|
|
36
36
|
constructor(...args){
|
|
37
|
-
super(...args), _define_property(this, "fileManager", void 0);
|
|
37
|
+
super(...args), _define_property(this, "name", void 0), _define_property(this, "slug", void 0), _define_property(this, "fileManager", void 0);
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
|
+
_ts_decorate([
|
|
41
|
+
(0, _typeorm.Column)({
|
|
42
|
+
type: 'varchar',
|
|
43
|
+
length: 255,
|
|
44
|
+
nullable: false
|
|
45
|
+
}),
|
|
46
|
+
_ts_metadata("design:type", String)
|
|
47
|
+
], Folder.prototype, "name", void 0);
|
|
48
|
+
_ts_decorate([
|
|
49
|
+
(0, _typeorm.Column)({
|
|
50
|
+
type: 'varchar',
|
|
51
|
+
length: 255,
|
|
52
|
+
nullable: false
|
|
53
|
+
}),
|
|
54
|
+
_ts_metadata("design:type", String)
|
|
55
|
+
], Folder.prototype, "slug", void 0);
|
|
40
56
|
_ts_decorate([
|
|
41
57
|
(0, _typeorm.OneToMany)('FileManager', (fileManager)=>fileManager.folder),
|
|
42
58
|
_ts_metadata("design:type", Array)
|
package/cjs/entities/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//
|
|
1
|
+
// Entities without company feature
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
@@ -10,12 +10,18 @@ function _export(target, all) {
|
|
|
10
10
|
});
|
|
11
11
|
}
|
|
12
12
|
_export(exports, {
|
|
13
|
-
get
|
|
14
|
-
return
|
|
13
|
+
get FileManagerBase () {
|
|
14
|
+
return _filemanagerentity.FileManager;
|
|
15
|
+
},
|
|
16
|
+
get FolderBase () {
|
|
17
|
+
return _folderentity.Folder;
|
|
15
18
|
},
|
|
16
19
|
get StorageCompanyEntities () {
|
|
17
20
|
return StorageCompanyEntities;
|
|
18
21
|
},
|
|
22
|
+
get StorageConfigBase () {
|
|
23
|
+
return _storageconfigentity.StorageConfig;
|
|
24
|
+
},
|
|
19
25
|
get StorageCoreEntities () {
|
|
20
26
|
return StorageCoreEntities;
|
|
21
27
|
},
|
|
@@ -23,9 +29,6 @@ _export(exports, {
|
|
|
23
29
|
return getStorageEntitiesByConfig;
|
|
24
30
|
}
|
|
25
31
|
});
|
|
26
|
-
_export_star(require("./file-manager-base.entity"), exports);
|
|
27
|
-
_export_star(require("./folder-base.entity"), exports);
|
|
28
|
-
_export_star(require("./storage-config-base.entity"), exports);
|
|
29
32
|
const _filemanagerentity = _export_star(require("./file-manager.entity"), exports);
|
|
30
33
|
const _folderentity = _export_star(require("./folder.entity"), exports);
|
|
31
34
|
const _storageconfigentity = _export_star(require("./storage-config.entity"), exports);
|
|
@@ -55,10 +58,6 @@ const StorageCompanyEntities = [
|
|
|
55
58
|
_folderwithcompanyentity.FolderWithCompany,
|
|
56
59
|
_storageconfigwithcompanyentity.StorageConfigWithCompany
|
|
57
60
|
];
|
|
58
|
-
const StorageAllEntities = [
|
|
59
|
-
...StorageCoreEntities,
|
|
60
|
-
...StorageCompanyEntities
|
|
61
|
-
];
|
|
62
61
|
function getStorageEntitiesByConfig(enableCompanyFeature) {
|
|
63
62
|
return enableCompanyFeature ? StorageCompanyEntities : StorageCoreEntities;
|
|
64
63
|
}
|
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "StorageConfigWithCompany", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _typeorm = require("typeorm");
|
|
12
|
-
const
|
|
12
|
+
const _storageconfigentity = require("./storage-config.entity");
|
|
13
13
|
function _define_property(obj, key, value) {
|
|
14
14
|
if (key in obj) {
|
|
15
15
|
Object.defineProperty(obj, key, {
|
|
@@ -32,10 +32,9 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
32
32
|
function _ts_metadata(k, v) {
|
|
33
33
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
34
34
|
}
|
|
35
|
-
let StorageConfigWithCompany = class StorageConfigWithCompany extends
|
|
35
|
+
let StorageConfigWithCompany = class StorageConfigWithCompany extends _storageconfigentity.StorageConfig {
|
|
36
36
|
constructor(...args){
|
|
37
|
-
super(...args),
|
|
38
|
-
_define_property(this, "companyId", void 0);
|
|
37
|
+
super(...args), _define_property(this, "companyId", void 0);
|
|
39
38
|
}
|
|
40
39
|
};
|
|
41
40
|
_ts_decorate([
|
|
@@ -8,18 +8,89 @@ Object.defineProperty(exports, "StorageConfig", {
|
|
|
8
8
|
return StorageConfig;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
+
const _entities = require("@flusys/nestjs-shared/entities");
|
|
12
|
+
const _enums = require("../enums");
|
|
11
13
|
const _typeorm = require("typeorm");
|
|
12
|
-
|
|
14
|
+
function _define_property(obj, key, value) {
|
|
15
|
+
if (key in obj) {
|
|
16
|
+
Object.defineProperty(obj, key, {
|
|
17
|
+
value: value,
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true,
|
|
20
|
+
writable: true
|
|
21
|
+
});
|
|
22
|
+
} else {
|
|
23
|
+
obj[key] = value;
|
|
24
|
+
}
|
|
25
|
+
return obj;
|
|
26
|
+
}
|
|
13
27
|
function _ts_decorate(decorators, target, key, desc) {
|
|
14
28
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
15
29
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
16
30
|
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;
|
|
17
31
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
18
32
|
}
|
|
19
|
-
|
|
33
|
+
function _ts_metadata(k, v) {
|
|
34
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
35
|
+
}
|
|
36
|
+
let StorageConfig = class StorageConfig extends _entities.Identity {
|
|
37
|
+
constructor(...args){
|
|
38
|
+
super(...args), _define_property(this, "name", void 0), _define_property(this, "storage", void 0), _define_property(this, "config", void 0), _define_property(this, "isActive", void 0), _define_property(this, "isDefault", void 0);
|
|
39
|
+
}
|
|
20
40
|
};
|
|
41
|
+
_ts_decorate([
|
|
42
|
+
(0, _typeorm.Column)({
|
|
43
|
+
type: 'varchar',
|
|
44
|
+
length: 255,
|
|
45
|
+
nullable: false
|
|
46
|
+
}),
|
|
47
|
+
_ts_metadata("design:type", String)
|
|
48
|
+
], StorageConfig.prototype, "name", void 0);
|
|
49
|
+
_ts_decorate([
|
|
50
|
+
(0, _typeorm.Column)({
|
|
51
|
+
type: 'enum',
|
|
52
|
+
enum: _enums.FileLocationEnum,
|
|
53
|
+
nullable: false
|
|
54
|
+
}),
|
|
55
|
+
_ts_metadata("design:type", typeof _enums.FileLocationEnum === "undefined" ? Object : _enums.FileLocationEnum)
|
|
56
|
+
], StorageConfig.prototype, "storage", void 0);
|
|
57
|
+
_ts_decorate([
|
|
58
|
+
(0, _typeorm.Column)({
|
|
59
|
+
type: 'json',
|
|
60
|
+
nullable: false
|
|
61
|
+
}),
|
|
62
|
+
_ts_metadata("design:type", typeof Record === "undefined" ? Object : Record)
|
|
63
|
+
], StorageConfig.prototype, "config", void 0);
|
|
64
|
+
_ts_decorate([
|
|
65
|
+
(0, _typeorm.Column)({
|
|
66
|
+
type: 'boolean',
|
|
67
|
+
default: true,
|
|
68
|
+
name: 'is_active'
|
|
69
|
+
}),
|
|
70
|
+
_ts_metadata("design:type", Boolean)
|
|
71
|
+
], StorageConfig.prototype, "isActive", void 0);
|
|
72
|
+
_ts_decorate([
|
|
73
|
+
(0, _typeorm.Column)({
|
|
74
|
+
type: 'boolean',
|
|
75
|
+
default: false,
|
|
76
|
+
name: 'is_default'
|
|
77
|
+
}),
|
|
78
|
+
_ts_metadata("design:type", Boolean)
|
|
79
|
+
], StorageConfig.prototype, "isDefault", void 0);
|
|
21
80
|
StorageConfig = _ts_decorate([
|
|
22
81
|
(0, _typeorm.Entity)({
|
|
23
82
|
name: 'storage_config'
|
|
24
|
-
})
|
|
83
|
+
}),
|
|
84
|
+
(0, _typeorm.Index)([
|
|
85
|
+
'name'
|
|
86
|
+
]),
|
|
87
|
+
(0, _typeorm.Index)([
|
|
88
|
+
'storage'
|
|
89
|
+
]),
|
|
90
|
+
(0, _typeorm.Index)([
|
|
91
|
+
'isActive'
|
|
92
|
+
]),
|
|
93
|
+
(0, _typeorm.Index)([
|
|
94
|
+
'isDefault'
|
|
95
|
+
])
|
|
25
96
|
], StorageConfig);
|
package/cjs/interfaces/index.js
CHANGED
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
5
|
_export_star(require("./file-manager.interface"), exports);
|
|
6
|
-
_export_star(require("./file-upload-response.interface"), exports);
|
|
7
6
|
_export_star(require("./folder.interface"), exports);
|
|
8
7
|
_export_star(require("./storage-config.interface"), exports);
|
|
9
8
|
_export_star(require("./storage-module-options.interface"), exports);
|