@things-factory/attachment-base 4.0.31 → 4.0.32

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/attachment-base",
3
- "version": "4.0.31",
3
+ "version": "4.0.32",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -24,11 +24,11 @@
24
24
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
25
25
  },
26
26
  "dependencies": {
27
- "@things-factory/auth-base": "^4.0.31",
28
- "@things-factory/env": "^4.0.31",
27
+ "@things-factory/auth-base": "^4.0.32",
28
+ "@things-factory/env": "^4.0.32",
29
29
  "aws-sdk": "^2.960.0",
30
30
  "memfs": "^3.0.1",
31
31
  "mime": "^2.4.4"
32
32
  },
33
- "gitHead": "6c021ffdeacc9d123298528f6bba91f61389f33d"
33
+ "gitHead": "a1a16e7d4531ae3ff035295fc7bf05bf0d3153a7"
34
34
  }
@@ -1,94 +0,0 @@
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
- const v4_1 = __importDefault(require("uuid/v4"));
7
- const aws_sdk_1 = __importDefault(require("aws-sdk"));
8
- const env_1 = require("@things-factory/env");
9
- const { PassThrough } = require('stream');
10
- const mime = require('mime');
11
- const { fs } = require('memfs');
12
- const attachment_const_1 = require("./attachment-const");
13
- if (attachment_const_1.STORAGE && attachment_const_1.STORAGE.type == 's3') {
14
- const S3 = new aws_sdk_1.default.S3({
15
- accessKeyId: attachment_const_1.STORAGE.accessKeyId,
16
- secretAccessKey: attachment_const_1.STORAGE.secretAccessKey
17
- });
18
- /* upload file */
19
- attachment_const_1.STORAGE.uploadFile = ({ stream, filename }) => {
20
- const id = (0, v4_1.default)();
21
- const ext = filename.split('.').pop();
22
- const key = ext ? `${id}.${ext}` : id;
23
- var size = 0;
24
- return new Promise((resolve, reject) => stream
25
- .pipe((() => {
26
- var pass = new PassThrough();
27
- S3.upload({
28
- Bucket: attachment_const_1.STORAGE.bucketName,
29
- Key: key,
30
- Body: pass
31
- }, (err, data) => (err ? reject(err) : resolve({ id, path: key, size })));
32
- // Response data from S3
33
- // {
34
- // ETag:"b2b068edcc5517a75e1119c785e1cf87",
35
- // Location:"https://opa-one.s3.amazonaws.com/873af101-4e92-4164-b738-062af5b2413b.png",
36
- // key:"873af101-4e92-4164-b738-062af5b2413b.png",
37
- // Key:"873af101-4e92-4164-b738-062af5b2413b.png",
38
- // Bucket:"opa-one"
39
- // }
40
- return pass;
41
- })())
42
- .on('error', error => reject(error))
43
- .on('data', chunk => (size += chunk.length)));
44
- };
45
- attachment_const_1.STORAGE.deleteFile = path => {
46
- return new Promise((resolve, reject) => S3.deleteObject({
47
- Bucket: attachment_const_1.STORAGE.bucketName,
48
- Key: path
49
- }, (err, data) => (err ? reject(err) : resolve(data))));
50
- };
51
- /* creating bucket */
52
- // s3.createBucket(
53
- // {
54
- // Bucket: STORAGE.bucketName,
55
- // CreateBucketConfiguration: {
56
- // // Set your region here
57
- // LocationConstraint: 'eu-west-1'
58
- // }
59
- // },
60
- // function(err, data) {
61
- // if (err) console.log(err, err.stack)
62
- // else console.log('Bucket Created Successfully', data.Location)
63
- // }
64
- // )
65
- /* TODO Streaming to Streaming 으로 구현하라. */
66
- attachment_const_1.STORAGE.sendFile = async (context, attachment, next) => {
67
- const result = await S3.getObject({
68
- Bucket: attachment_const_1.STORAGE.bucketName,
69
- Key: attachment
70
- }).promise();
71
- fs.writeFileSync(`/${attachment}`, result.Body);
72
- context.set({
73
- 'Content-Length': result.ContentLength,
74
- 'Content-Type': mime.getType(attachment),
75
- 'Last-Modified': result.LastModified,
76
- ETag: result.ETag,
77
- 'Cache-Control': 'public, max-age=31556926'
78
- });
79
- context.body = await fs.createReadStream(`/${attachment}`);
80
- };
81
- attachment_const_1.STORAGE.readFile = async (attachment, encoding) => {
82
- const result = await S3.getObject({
83
- Bucket: attachment_const_1.STORAGE.bucketName,
84
- Key: attachment
85
- }).promise();
86
- var body = result.Body;
87
- if (encoding) {
88
- return body.toString(encoding);
89
- }
90
- return body;
91
- };
92
- env_1.logger.info('S3 Bucket Storage is Ready.');
93
- }
94
- //# sourceMappingURL=storage-s3-v2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage-s3-v2.js","sourceRoot":"","sources":["../server/storage-s3-v2.ts"],"names":[],"mappings":"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"}