@ainias42/typeorm-helper 0.0.6 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/BaseModel.d.ts +2 -5
  2. package/dist/BaseModel.js +3 -22
  3. package/dist/BaseModel.js.map +1 -1
  4. package/dist/BaseModelWithoutVersion.d.ts +6 -0
  5. package/dist/BaseModelWithoutVersion.js +40 -0
  6. package/dist/BaseModelWithoutVersion.js.map +1 -0
  7. package/dist/DefaultSubscriber.js +5 -3
  8. package/dist/DefaultSubscriber.js.map +1 -1
  9. package/dist/decorators/FileColumn/FileColumn.js +2 -2
  10. package/dist/decorators/FileColumn/FileColumn.js.map +1 -1
  11. package/dist/decorators/FileColumn/FileType.d.ts +1 -1
  12. package/dist/decorators/FileColumn/fileWriter.d.ts +7 -0
  13. package/dist/decorators/FileColumn/fileWriter.js +62 -0
  14. package/dist/decorators/FileColumn/fileWriter.js.map +1 -0
  15. package/dist/helper/getFileUrl.d.ts +2 -0
  16. package/dist/helper/getFileUrl.js +10 -0
  17. package/dist/helper/getFileUrl.js.map +1 -0
  18. package/dist/index.d.ts +3 -1
  19. package/dist/index.js +3 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/tsconfig.tsbuildinfo +1 -1
  22. package/eslint.config.js +3 -0
  23. package/package.json +38 -35
  24. package/src/BaseModel.ts +3 -15
  25. package/src/BaseModelWithoutVersion.ts +16 -0
  26. package/src/DefaultSubscriber.ts +8 -8
  27. package/src/decorators/FileColumn/FileColumn.ts +3 -3
  28. package/src/decorators/FileColumn/FileType.ts +7 -5
  29. package/src/decorators/FileColumn/fileWriter.ts +68 -0
  30. package/src/helper/getFileUrl.ts +8 -0
  31. package/src/index.ts +3 -1
  32. package/stylelint.config.mjs +4 -0
  33. package/.eslintrc.cjs +0 -3
  34. package/dist/decorators/FileColumn/FileWriter.d.ts +0 -3
  35. package/dist/decorators/FileColumn/FileWriter.js +0 -46
  36. package/dist/decorators/FileColumn/FileWriter.js.map +0 -1
  37. package/src/decorators/FileColumn/FileWriter.ts +0 -49
@@ -1,7 +1,4 @@
1
- export declare class BaseModel {
2
- id: number;
3
- createdAt: Date;
4
- updatedAt: Date;
5
- deletedAt: Date | null;
1
+ import { BaseModelWithoutVersion } from './BaseModelWithoutVersion.js';
2
+ export declare class BaseModel extends BaseModelWithoutVersion {
6
3
  version: number;
7
4
  }
package/dist/BaseModel.js CHANGED
@@ -10,34 +10,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.BaseModel = void 0;
13
+ const BaseModelWithoutVersion_1 = require("./BaseModelWithoutVersion.js");
13
14
  const typeorm_1 = require("typeorm");
14
- const js_helper_1 = require("@ainias42/js-helper");
15
- class BaseModel {
15
+ class BaseModel extends BaseModelWithoutVersion_1.BaseModelWithoutVersion {
16
16
  constructor() {
17
- this.id = -1;
18
- this.createdAt = js_helper_1.DateHelper.newDate();
19
- this.updatedAt = js_helper_1.DateHelper.newDate();
20
- this.deletedAt = null;
17
+ super(...arguments);
21
18
  this.version = 0;
22
19
  }
23
20
  }
24
21
  exports.BaseModel = BaseModel;
25
- __decorate([
26
- (0, typeorm_1.PrimaryGeneratedColumn)(),
27
- __metadata("design:type", Number)
28
- ], BaseModel.prototype, "id", void 0);
29
- __decorate([
30
- (0, typeorm_1.CreateDateColumn)(),
31
- __metadata("design:type", Date)
32
- ], BaseModel.prototype, "createdAt", void 0);
33
- __decorate([
34
- (0, typeorm_1.UpdateDateColumn)(),
35
- __metadata("design:type", Date)
36
- ], BaseModel.prototype, "updatedAt", void 0);
37
- __decorate([
38
- (0, typeorm_1.DeleteDateColumn)(),
39
- __metadata("design:type", Object)
40
- ], BaseModel.prototype, "deletedAt", void 0);
41
22
  __decorate([
42
23
  (0, typeorm_1.VersionColumn)(),
43
24
  __metadata("design:type", Number)
@@ -1 +1 @@
1
- {"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../src/BaseModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAsH;AACtH,mDAAiD;AAEjD,MAAa,SAAS;IAAtB;QAEI,OAAE,GAAW,CAAC,CAAC,CAAC;QAGhB,cAAS,GAAS,sBAAU,CAAC,OAAO,EAAE,CAAC;QAGvC,cAAS,GAAS,sBAAU,CAAC,OAAO,EAAE,CAAC;QAGvC,cAAS,GAAgB,IAAI,CAAC;QAG9B,YAAO,GAAW,CAAC,CAAC;IACxB,CAAC;CAAA;AAfD,8BAeC;AAbG;IADC,IAAA,gCAAsB,GAAE;;qCACT;AAGhB;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;4CAAwB;AAGvC;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;4CAAwB;AAGvC;IADC,IAAA,0BAAgB,GAAE;;4CACW;AAG9B;IADC,IAAA,uBAAa,GAAE;;0CACI"}
1
+ {"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../src/BaseModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uEAAoE;AACpE,qCAAwC;AAExC,MAAa,SAAU,SAAQ,iDAAuB;IAAtD;;QAEI,YAAO,GAAW,CAAC,CAAC;IACxB,CAAC;CAAA;AAHD,8BAGC;AADG;IADC,IAAA,uBAAa,GAAE;;0CACI"}
@@ -0,0 +1,6 @@
1
+ export declare class BaseModelWithoutVersion {
2
+ id: number;
3
+ createdAt: Date;
4
+ updatedAt: Date;
5
+ deletedAt: Date | null;
6
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseModelWithoutVersion = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const js_helper_1 = require("@ainias42/js-helper");
15
+ class BaseModelWithoutVersion {
16
+ constructor() {
17
+ this.id = -1;
18
+ this.createdAt = js_helper_1.DateHelper.newDate();
19
+ this.updatedAt = js_helper_1.DateHelper.newDate();
20
+ this.deletedAt = null;
21
+ }
22
+ }
23
+ exports.BaseModelWithoutVersion = BaseModelWithoutVersion;
24
+ __decorate([
25
+ (0, typeorm_1.PrimaryGeneratedColumn)(),
26
+ __metadata("design:type", Number)
27
+ ], BaseModelWithoutVersion.prototype, "id", void 0);
28
+ __decorate([
29
+ (0, typeorm_1.CreateDateColumn)(),
30
+ __metadata("design:type", Date)
31
+ ], BaseModelWithoutVersion.prototype, "createdAt", void 0);
32
+ __decorate([
33
+ (0, typeorm_1.UpdateDateColumn)(),
34
+ __metadata("design:type", Date)
35
+ ], BaseModelWithoutVersion.prototype, "updatedAt", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.DeleteDateColumn)(),
38
+ __metadata("design:type", Object)
39
+ ], BaseModelWithoutVersion.prototype, "deletedAt", void 0);
40
+ //# sourceMappingURL=BaseModelWithoutVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseModelWithoutVersion.js","sourceRoot":"","sources":["../src/BaseModelWithoutVersion.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAuG;AACvG,mDAAiD;AAEjD,MAAa,uBAAuB;IAApC;QAEI,OAAE,GAAW,CAAC,CAAC,CAAC;QAGhB,cAAS,GAAS,sBAAU,CAAC,OAAO,EAAE,CAAC;QAGvC,cAAS,GAAS,sBAAU,CAAC,OAAO,EAAE,CAAC;QAGvC,cAAS,GAAgB,IAAI,CAAC;IAClC,CAAC;CAAA;AAZD,0DAYC;AAVG;IADC,IAAA,gCAAsB,GAAE;;mDACT;AAGhB;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;0DAAwB;AAGvC;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;0DAAwB;AAGvC;IADC,IAAA,0BAAgB,GAAE;;0DACW"}
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.DefaultSubscriber = void 0;
10
10
  const typeorm_1 = require("typeorm");
11
- const FileWriter_1 = require("./decorators/FileColumn/FileWriter.js");
11
+ const fileWriter_1 = require("./decorators/FileColumn/fileWriter.js");
12
12
  let DefaultSubscriber = class DefaultSubscriber {
13
13
  async saveFiles(entity, columns) {
14
14
  const promises = [];
@@ -22,8 +22,10 @@ let DefaultSubscriber = class DefaultSubscriber {
22
22
  values = [values];
23
23
  single = true;
24
24
  }
25
- promises.push(Promise.all(values.map((value) => FileWriter_1.FileWriter.writeToFile(value.src, transformer.fileOptions.saveDirectory).then((newUrl) => {
26
- return Object.assign(Object.assign({}, value), { src: newUrl });
25
+ promises.push(Promise.all(values.map((value) => fileWriter_1.fileWriter
26
+ .writeToFile(value, transformer.fileOptions.saveDirectory)
27
+ .then((newFileType) => {
28
+ return newFileType;
27
29
  }))).then((newValues) => {
28
30
  if (single) {
29
31
  Reflect.set(entity, column.propertyName, newValues[0]);
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultSubscriber.js","sourceRoot":"","sources":["../src/DefaultSubscriber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DefaultSubscriber.js","sourceRoot":"","sources":["../src/DefaultSubscriber.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ function FileColumn(options) {
23
23
  single = true;
24
24
  }
25
25
  for (const value of values) {
26
- if (value.src.startsWith(options.publicPath)) {
26
+ if ('src' in value && value.src.startsWith(options.publicPath)) {
27
27
  value.src = value.src.slice(options.publicPath.length);
28
28
  }
29
29
  }
@@ -41,7 +41,7 @@ function FileColumn(options) {
41
41
  single = true;
42
42
  }
43
43
  for (const value of values) {
44
- if (!value.src.startsWith('data:')) {
44
+ if ('src' in value && !value.src.startsWith('data:')) {
45
45
  value.src = options.publicPath + value.src;
46
46
  }
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FileColumn.js","sourceRoot":"","sources":["../../../src/decorators/FileColumn/FileColumn.ts"],"names":[],"mappings":";;AAIA,gCAqDC;AAzDD,qCAAiD;AAIjD,SAAgB,UAAU,CAAC,OAAsD;IAC7E,OAAO,SAAS,SAAS,CAAC,MAAW,EAAE,YAAoB;QACvD,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE;oBACT,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAE,OAAO;oBACpB,EAAE,EAAE,CAAC,MAAyC,EAAE,EAAE;wBAC9C,IAAI,MAAM,EAAE,CAAC;4BACT,IAAI,MAAM,GAAG,KAAK,CAAC;4BACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gCACzB,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;gCAClB,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;4BACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCACzB,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oCAC3C,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gCAC3D,CAAC;4BACL,CAAC;4BACD,IAAI,MAAM,EAAE,CAAC;gCACT,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;4BACrB,CAAC;wBACL,CAAC;wBACD,OAAO,MAAM,CAAC;oBAClB,CAAC;oBACD,IAAI,EAAE,CAAC,MAAyC,EAAE,EAAE;wBAChD,IAAI,MAAM,EAAE,CAAC;4BACT,IAAI,MAAM,GAAG,KAAK,CAAC;4BACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gCACzB,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;gCAClB,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;4BACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oCACjC,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC;gCAC/C,CAAC;4BACL,CAAC;4BACD,IAAI,MAAM,EAAE,CAAC;gCACT,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;4BACrB,CAAC;wBACL,CAAC;wBACD,OAAO,MAAM,CAAC;oBAClB,CAAC;iBACJ;aACJ;SACkB,CAAC,CAAC;IAC7B,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"FileColumn.js","sourceRoot":"","sources":["../../../src/decorators/FileColumn/FileColumn.ts"],"names":[],"mappings":";;AAIA,gCAqDC;AAzDD,qCAAiD;AAIjD,SAAgB,UAAU,CAAC,OAAsD;IAC7E,OAAO,SAAS,SAAS,CAAC,MAAW,EAAE,YAAoB;QACvD,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE;oBACT,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAE,OAAO;oBACpB,EAAE,EAAE,CAAC,MAAyC,EAAE,EAAE;wBAC9C,IAAI,MAAM,EAAE,CAAC;4BACT,IAAI,MAAM,GAAG,KAAK,CAAC;4BACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gCACzB,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;gCAClB,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;4BACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCACzB,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oCAC7D,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gCAC3D,CAAC;4BACL,CAAC;4BACD,IAAI,MAAM,EAAE,CAAC;gCACT,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;4BACrB,CAAC;wBACL,CAAC;wBACD,OAAO,MAAM,CAAC;oBAClB,CAAC;oBACD,IAAI,EAAE,CAAC,MAAyC,EAAE,EAAE;wBAChD,IAAI,MAAM,EAAE,CAAC;4BACT,IAAI,MAAM,GAAG,KAAK,CAAC;4BACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gCACzB,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;gCAClB,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;4BACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCACzB,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oCACnD,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC;gCAC/C,CAAC;4BACL,CAAC;4BACD,IAAI,MAAM,EAAE,CAAC;gCACT,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;4BACrB,CAAC;wBACL,CAAC;wBACD,OAAO,MAAM,CAAC;oBAClB,CAAC;iBACJ;aACJ;SACkB,CAAC,CAAC;IAC7B,CAAC,CAAC;AACN,CAAC"}
@@ -2,4 +2,4 @@ export type FileType = {
2
2
  name: string;
3
3
  src: string;
4
4
  type: string;
5
- };
5
+ } | File;
@@ -0,0 +1,7 @@
1
+ import type { FileType } from '../../decorators/FileColumn/FileType.js';
2
+ declare class FileWriter {
3
+ private stringSrcToArrayBuffer;
4
+ writeToFile(file: FileType, saveDirectory: string, name?: string): Promise<FileType>;
5
+ }
6
+ export declare const fileWriter: FileWriter;
7
+ export {};
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fileWriter = void 0;
7
+ /* eslint-disable class-methods-use-this */
8
+ const node_stream_1 = require("node:stream");
9
+ const fs_1 = require("fs");
10
+ const mime_types_1 = require("mime-types");
11
+ const crypto_1 = __importDefault(require("crypto"));
12
+ class FileWriter {
13
+ stringSrcToArrayBuffer(src) {
14
+ const base64SearchText = ';base64,';
15
+ const indexBase64SearchText = src.indexOf(base64SearchText);
16
+ const indexSlash = src.indexOf('/');
17
+ // file is already a url
18
+ if (indexBase64SearchText === -1 || indexSlash === -1 || !src.startsWith('data:')) {
19
+ return false;
20
+ }
21
+ const data = src.slice(Math.max(0, indexBase64SearchText + base64SearchText.length));
22
+ const dataBuffer = Buffer.from(data, 'base64');
23
+ return dataBuffer;
24
+ }
25
+ async writeToFile(file, saveDirectory, name) {
26
+ let dataBuffer;
27
+ let dataStream;
28
+ if (file instanceof File) {
29
+ // @ts-expect-error there seems to be an type error inside the native types
30
+ dataStream = node_stream_1.Readable.fromWeb(file.stream());
31
+ }
32
+ else {
33
+ const buffer = this.stringSrcToArrayBuffer(file.src);
34
+ if (!buffer) {
35
+ return file;
36
+ }
37
+ dataBuffer = buffer;
38
+ dataStream = new node_stream_1.PassThrough();
39
+ dataStream.push(dataBuffer);
40
+ // eslint-disable-next-line unicorn/prefer-single-call
41
+ dataStream.push(null);
42
+ }
43
+ const fileEnding = (0, mime_types_1.extension)(file.type);
44
+ const seed = crypto_1.default.randomBytes(20);
45
+ const now = new Date();
46
+ // Month is 0-based. Add 1 to get 1-12
47
+ const fileName = name !== null && name !== void 0 ? name : `${now.getUTCFullYear()}-${now.getUTCMonth() + 1}-${now.getUTCDate()}-${crypto_1.default
48
+ .createHash('sha1')
49
+ .update(seed)
50
+ .digest('hex')}.${fileEnding}`;
51
+ if (!(0, fs_1.existsSync)(saveDirectory)) {
52
+ (0, fs_1.mkdirSync)(saveDirectory, { recursive: true });
53
+ }
54
+ const writeStream = (0, fs_1.createWriteStream)(saveDirectory + fileName);
55
+ const resultPromise = new Promise((r) => writeStream.addListener('finish', r));
56
+ dataStream.pipe(writeStream);
57
+ await resultPromise;
58
+ return { type: file.type, name: file.name, src: fileName };
59
+ }
60
+ }
61
+ exports.fileWriter = new FileWriter();
62
+ //# sourceMappingURL=fileWriter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileWriter.js","sourceRoot":"","sources":["../../../src/decorators/FileColumn/fileWriter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { FileType } from '../decorators/FileColumn/FileType.js';
2
+ export declare function getFileUrl(file: FileType): string;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFileUrl = getFileUrl;
4
+ function getFileUrl(file) {
5
+ if (file instanceof File) {
6
+ return URL.createObjectURL(file);
7
+ }
8
+ return file.src;
9
+ }
10
+ //# sourceMappingURL=getFileUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFileUrl.js","sourceRoot":"","sources":["../../src/helper/getFileUrl.ts"],"names":[],"mappings":";;AAEA,gCAKC;AALD,SAAgB,UAAU,CAAC,IAAc;IACrC,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC;AACpB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,13 @@
1
1
  export * from './BaseModel.js';
2
+ export * from './BaseModelWithoutVersion.js';
2
3
  export * from './DbNamingStrategy.js';
3
4
  export * from './DefaultSubscriber.js';
4
5
  export * from './dataSource/dataSource.js';
5
6
  export * from './dataSource/getRepository.js';
7
+ export * from './helper/getFileUrl.js';
6
8
  export * from './migration/getCreateTableColumns.js';
7
9
  export * from './migration/getCreateTableColumnsV1.js';
8
10
  export * from './decorators/FileColumn/FileColumn.js';
9
11
  export * from './decorators/FileColumn/FileTransformer.js';
10
12
  export * from './decorators/FileColumn/FileType.js';
11
- export * from './decorators/FileColumn/FileWriter.js';
13
+ export * from './decorators/FileColumn/fileWriter.js';
package/dist/index.js CHANGED
@@ -15,14 +15,16 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./BaseModel.js"), exports);
18
+ __exportStar(require("./BaseModelWithoutVersion.js"), exports);
18
19
  __exportStar(require("./DbNamingStrategy.js"), exports);
19
20
  __exportStar(require("./DefaultSubscriber.js"), exports);
20
21
  __exportStar(require("./dataSource/dataSource.js"), exports);
21
22
  __exportStar(require("./dataSource/getRepository.js"), exports);
23
+ __exportStar(require("./helper/getFileUrl.js"), exports);
22
24
  __exportStar(require("./migration/getCreateTableColumns.js"), exports);
23
25
  __exportStar(require("./migration/getCreateTableColumnsV1.js"), exports);
24
26
  __exportStar(require("./decorators/FileColumn/FileColumn.js"), exports);
25
27
  __exportStar(require("./decorators/FileColumn/FileTransformer.js"), exports);
26
28
  __exportStar(require("./decorators/FileColumn/FileType.js"), exports);
27
- __exportStar(require("./decorators/FileColumn/FileWriter.js"), exports);
29
+ __exportStar(require("./decorators/FileColumn/fileWriter.js"), exports);
28
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,qDAAmC;AACnC,sDAAoC;AACpC,0DAAwC;AACxC,6DAA2C;AAC3C,oEAAkD;AAClD,sEAAoD;AACpD,qEAAmD;AACnD,0EAAwD;AACxD,mEAAiD;AACjD,qEAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,4DAA0C;AAC1C,qDAAmC;AACnC,sDAAoC;AACpC,0DAAwC;AACxC,6DAA2C;AAC3C,sDAAoC;AACpC,oEAAkD;AAClD,sEAAoD;AACpD,qEAAmD;AACnD,0EAAwD;AACxD,mEAAiD;AACjD,qEAAmD"}