suanpan_node_sdk 2.0.10 → 2.1.0-beta
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/dist/core/storage/{minio.d.ts → minioStorage.d.ts} +9 -7
- package/dist/core/storage/{minio.js → minioStorage.js} +42 -30
- package/dist/core/storage/minioStorage.js.map +1 -0
- package/dist/core/storage/objectStorage.d.ts +17 -0
- package/dist/core/storage/objectStorage.js +4 -0
- package/dist/core/storage/objectStorage.js.map +1 -0
- package/dist/core/storage/{oss.d.ts → ossStorage.d.ts} +10 -5
- package/dist/core/storage/{oss.js → ossStorage.js} +38 -14
- package/dist/core/storage/ossStorage.js.map +1 -0
- package/dist/core/storage/wrapperStorage.d.ts +15 -2
- package/dist/core/storage/wrapperStorage.js +23 -7
- package/dist/core/storage/wrapperStorage.js.map +1 -1
- package/dist/core/utils/support.d.ts +2 -1
- package/dist/core/utils/support.js +22 -1
- package/dist/core/utils/support.js.map +1 -1
- package/dist/types/storageTypes.d.ts +19 -0
- package/dist/types/storageTypes.js.map +1 -1
- package/package.json +1 -1
- package/dist/core/storage/minio.js.map +0 -1
- package/dist/core/storage/oss.js.map +0 -1
- package/dist/core/storage/storage.d.ts +0 -37
- package/dist/core/storage/storage.js +0 -47
- package/dist/core/storage/storage.js.map +0 -1
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import
|
|
3
|
-
import type { ObjectItem } from '../../types';
|
|
2
|
+
import type { IObjectStorage } from './objectStorage';
|
|
4
3
|
import type { Readable as ReadableStream } from 'stream';
|
|
5
|
-
import {
|
|
6
|
-
export declare class MinioStorage
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
import type { ObjectItem, MinioConfig } from '../../types';
|
|
5
|
+
export declare class MinioStorage implements IObjectStorage {
|
|
6
|
+
private config?;
|
|
7
|
+
private bucketName;
|
|
8
|
+
private minioClient;
|
|
9
|
+
constructor(config?: MinioConfig | undefined);
|
|
10
|
+
private buildMinioClient;
|
|
11
|
+
private getClient;
|
|
10
12
|
append(objectName: string, content: string): Promise<any>;
|
|
11
13
|
getObjectToBuffer(objectName: string): Promise<Buffer>;
|
|
12
14
|
getObjectToStream(objectName: string): Promise<ReadableStream>;
|
|
@@ -33,34 +33,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
34
|
exports.MinioStorage = void 0;
|
|
35
35
|
const lodash_1 = __importDefault(require("lodash"));
|
|
36
|
-
const Minio = __importStar(require("minio"));
|
|
37
36
|
const log_1 = __importDefault(require("../common/log"));
|
|
37
|
+
const Minio = __importStar(require("minio"));
|
|
38
|
+
const helper = __importStar(require("../utils/support"));
|
|
38
39
|
const environment_1 = require("../parameter/environment");
|
|
39
|
-
const storage_1 = require("./storage");
|
|
40
40
|
const utils_1 = require("../utils");
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
constructor() {
|
|
45
|
-
super(...arguments);
|
|
46
|
-
this._bucketName = defaultBucketName;
|
|
41
|
+
class MinioStorage {
|
|
42
|
+
constructor(config) {
|
|
43
|
+
this.config = config;
|
|
47
44
|
}
|
|
48
|
-
|
|
49
|
-
var _a, _b;
|
|
45
|
+
buildMinioClient() {
|
|
50
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
-
const
|
|
52
|
-
this.
|
|
53
|
-
|
|
54
|
-
endPoint
|
|
55
|
-
port
|
|
56
|
-
useSSL
|
|
57
|
-
accessKey
|
|
58
|
-
secretKey
|
|
59
|
-
}
|
|
47
|
+
const options = {};
|
|
48
|
+
if (this.config) {
|
|
49
|
+
this.bucketName = this.config.bucket;
|
|
50
|
+
options.endPoint = this.config.host;
|
|
51
|
+
options.port = this.config.port;
|
|
52
|
+
options.useSSL = this.config.useSSL;
|
|
53
|
+
options.accessKey = this.config.accessKey;
|
|
54
|
+
options.secretKey = this.config.accessSecret;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const { hostname, port, protocol } = new URL(environment_1.Environment.minio.endpoint);
|
|
58
|
+
const { bucket, Credentials } = yield helper.getSTSToken();
|
|
59
|
+
this.bucketName = bucket;
|
|
60
|
+
options.endPoint = hostname;
|
|
61
|
+
options.port = Number(port);
|
|
62
|
+
options.useSSL = protocol === 'https';
|
|
63
|
+
options.accessKey = Credentials.AccessKeyId;
|
|
64
|
+
options.secretKey = Credentials.AccessKeySecret;
|
|
65
|
+
}
|
|
66
|
+
return new Minio.Client(options);
|
|
60
67
|
});
|
|
61
68
|
}
|
|
62
|
-
|
|
63
|
-
this
|
|
69
|
+
getClient() {
|
|
70
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
if (!this.minioClient) {
|
|
72
|
+
this.minioClient = yield this.buildMinioClient();
|
|
73
|
+
}
|
|
74
|
+
return this.minioClient;
|
|
75
|
+
});
|
|
64
76
|
}
|
|
65
77
|
append(objectName, content) {
|
|
66
78
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -84,7 +96,7 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
84
96
|
getObjectToStream(objectName) {
|
|
85
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
86
98
|
const minioClient = yield this.getClient();
|
|
87
|
-
return yield minioClient.getObject(this.
|
|
99
|
+
return yield minioClient.getObject(this.bucketName, objectName);
|
|
88
100
|
});
|
|
89
101
|
}
|
|
90
102
|
getObjectToString(objectName) {
|
|
@@ -102,19 +114,19 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
102
114
|
putObject(objectName, data) {
|
|
103
115
|
return __awaiter(this, void 0, void 0, function* () {
|
|
104
116
|
const minioClient = yield this.getClient();
|
|
105
|
-
yield minioClient.putObject(this.
|
|
117
|
+
yield minioClient.putObject(this.bucketName, objectName, data);
|
|
106
118
|
});
|
|
107
119
|
}
|
|
108
120
|
fPutObject(objectName, filePath) {
|
|
109
121
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
122
|
const minioClient = yield this.getClient();
|
|
111
|
-
yield minioClient.fPutObject(this.
|
|
123
|
+
yield minioClient.fPutObject(this.bucketName, objectName, filePath, {});
|
|
112
124
|
});
|
|
113
125
|
}
|
|
114
126
|
fGetObject(objectName, filePath) {
|
|
115
127
|
return __awaiter(this, void 0, void 0, function* () {
|
|
116
128
|
const minioClient = yield this.getClient();
|
|
117
|
-
yield minioClient.fGetObject(this.
|
|
129
|
+
yield minioClient.fGetObject(this.bucketName, objectName, filePath);
|
|
118
130
|
});
|
|
119
131
|
}
|
|
120
132
|
listObjects(prefix, recursive = true) {
|
|
@@ -122,7 +134,7 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
122
134
|
const mnClient = yield this.getClient();
|
|
123
135
|
return new Promise((resolve, reject) => {
|
|
124
136
|
const objectList = [];
|
|
125
|
-
const stream = mnClient.listObjectsV2(this.
|
|
137
|
+
const stream = mnClient.listObjectsV2(this.bucketName, prefix, recursive);
|
|
126
138
|
stream.on('data', (bucketItem) => { objectList.push(bucketItem); });
|
|
127
139
|
stream.on('error', reject);
|
|
128
140
|
stream.on('end', (err) => {
|
|
@@ -145,13 +157,13 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
145
157
|
deleteObject(objectName) {
|
|
146
158
|
return __awaiter(this, void 0, void 0, function* () {
|
|
147
159
|
const minioClient = yield this.getClient();
|
|
148
|
-
yield minioClient.removeObject(this.
|
|
160
|
+
yield minioClient.removeObject(this.bucketName, objectName);
|
|
149
161
|
});
|
|
150
162
|
}
|
|
151
163
|
deleteMultiObjects(objectNames) {
|
|
152
164
|
return __awaiter(this, void 0, void 0, function* () {
|
|
153
165
|
const minioClient = yield this.getClient();
|
|
154
|
-
yield minioClient.removeObjects(this.
|
|
166
|
+
yield minioClient.removeObjects(this.bucketName, objectNames);
|
|
155
167
|
});
|
|
156
168
|
}
|
|
157
169
|
checkObjectNameExist(objectName) {
|
|
@@ -159,7 +171,7 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
159
171
|
const minioClient = yield this.getClient();
|
|
160
172
|
let bucketExist = false;
|
|
161
173
|
try {
|
|
162
|
-
yield minioClient.getObject(this.
|
|
174
|
+
yield minioClient.getObject(this.bucketName, objectName);
|
|
163
175
|
bucketExist = true;
|
|
164
176
|
}
|
|
165
177
|
catch (ex) {
|
|
@@ -172,4 +184,4 @@ class MinioStorage extends storage_1.AbstractStorage {
|
|
|
172
184
|
}
|
|
173
185
|
}
|
|
174
186
|
exports.MinioStorage = MinioStorage;
|
|
175
|
-
//# sourceMappingURL=
|
|
187
|
+
//# sourceMappingURL=minioStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minioStorage.js","sourceRoot":"","sources":["../../../src/core/storage/minioStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type { Stream } from 'stream';
|
|
3
|
+
import type { ObjectItem } from '../../types';
|
|
4
|
+
export interface IObjectStorage {
|
|
5
|
+
append(objectName: string, content: String): Promise<any>;
|
|
6
|
+
getObjectToBuffer(objectName: string): Promise<Buffer>;
|
|
7
|
+
getObjectToStream(objectName: string): Promise<Stream | null>;
|
|
8
|
+
getObjectToString(objectName: string): Promise<string>;
|
|
9
|
+
getObjectToJSON(objectName: string): Promise<unknown>;
|
|
10
|
+
fGetObject(objectName: string, filePath: string): Promise<any>;
|
|
11
|
+
fPutObject(objectName: string, filePath: string): Promise<void>;
|
|
12
|
+
putObject(objectName: string, data: any): Promise<void>;
|
|
13
|
+
listObjects(prefix: string, recursive?: boolean, maxKeys?: number): Promise<ObjectItem[]>;
|
|
14
|
+
deleteObject(objectName: string): Promise<void>;
|
|
15
|
+
deleteMultiObjects(objectNames: string[]): Promise<void>;
|
|
16
|
+
checkObjectNameExist(objectName: string): Promise<boolean>;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objectStorage.js","sourceRoot":"","sources":["../../../src/core/storage/objectStorage.ts"],"names":[],"mappings":";;AAAA,kBAAuB"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import
|
|
3
|
-
import { AbstractStorage } from './storage';
|
|
4
|
-
import type { ObjectItem } from '../../types';
|
|
2
|
+
import type { IObjectStorage } from './objectStorage';
|
|
5
3
|
import type { Readable as ReadableStream } from 'stream';
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
import type { ObjectItem, AliOSSConfig } from '../../types';
|
|
5
|
+
export declare class OSSStorage implements IObjectStorage {
|
|
6
|
+
private config?;
|
|
7
|
+
private ossClient;
|
|
8
|
+
private tokenExpiration;
|
|
9
|
+
constructor(config?: AliOSSConfig | undefined);
|
|
10
|
+
private buildOSSClient;
|
|
11
|
+
private isTokenExpiration;
|
|
12
|
+
private getClient;
|
|
8
13
|
append(objectName: string, content: string): Promise<any>;
|
|
9
14
|
getObjectToBuffer(objectName: string): Promise<Buffer>;
|
|
10
15
|
getObjectToStream(objectName: string): Promise<any>;
|
|
@@ -33,22 +33,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
34
|
exports.OSSStorage = void 0;
|
|
35
35
|
const lodash_1 = __importDefault(require("lodash"));
|
|
36
|
-
const ali_oss_1 = __importDefault(require("ali-oss"));
|
|
37
36
|
const util = __importStar(require("../utils"));
|
|
37
|
+
const helper = __importStar(require("../utils/support"));
|
|
38
|
+
const ali_oss_1 = __importDefault(require("ali-oss"));
|
|
39
|
+
const moment_1 = __importDefault(require("moment"));
|
|
38
40
|
const utils_1 = require("../utils");
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
class OSSStorage {
|
|
42
|
+
constructor(config) {
|
|
43
|
+
this.config = config;
|
|
44
|
+
}
|
|
45
|
+
buildOSSClient() {
|
|
43
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
accessKeyId
|
|
49
|
-
accessKeySecret
|
|
50
|
-
stsToken
|
|
51
|
-
}
|
|
47
|
+
const options = {};
|
|
48
|
+
if (this.config) {
|
|
49
|
+
options.endpoint = this.config.endpoint;
|
|
50
|
+
options.bucket = this.config.bucket;
|
|
51
|
+
options.accessKeyId = this.config.accessKey;
|
|
52
|
+
options.accessKeySecret = this.config.accessSecret;
|
|
53
|
+
options.stsToken = this.config.securityToken;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
const { bucket, region, Credentials } = yield helper.getSTSToken();
|
|
57
|
+
this.tokenExpiration = Credentials.Expiration || '';
|
|
58
|
+
options.region = region;
|
|
59
|
+
options.bucket = bucket;
|
|
60
|
+
options.accessKeyId = Credentials.AccessKeyId;
|
|
61
|
+
options.accessKeySecret = Credentials.AccessKeySecret;
|
|
62
|
+
options.stsToken = Credentials.SecurityToken;
|
|
63
|
+
}
|
|
64
|
+
return new ali_oss_1.default(options);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
isTokenExpiration(tokenExpiration) {
|
|
68
|
+
return moment_1.default(moment_1.default.now()).isAfter(moment_1.default(tokenExpiration));
|
|
69
|
+
}
|
|
70
|
+
getClient() {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
if (!this.ossClient || !this.tokenExpiration || this.isTokenExpiration(this.tokenExpiration)) {
|
|
73
|
+
this.ossClient = yield this.buildOSSClient();
|
|
74
|
+
}
|
|
75
|
+
return this.ossClient;
|
|
52
76
|
});
|
|
53
77
|
}
|
|
54
78
|
append(objectName, content) {
|
|
@@ -153,4 +177,4 @@ class OSSStorage extends storage_1.AbstractStorage {
|
|
|
153
177
|
}
|
|
154
178
|
}
|
|
155
179
|
exports.OSSStorage = OSSStorage;
|
|
156
|
-
//# sourceMappingURL=
|
|
180
|
+
//# sourceMappingURL=ossStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ossStorage.js","sourceRoot":"","sources":["../../../src/core/storage/ossStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,19 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { OSSStorage } from './ossStorage';
|
|
2
|
+
import { StorageType, IStorageConfig } from '../../types';
|
|
3
|
+
import { MinioStorage } from './minioStorage';
|
|
4
|
+
import type { IObjectStorage } from './objectStorage';
|
|
5
|
+
export declare class StorageFactory {
|
|
6
|
+
/**
|
|
7
|
+
* 组件内部使用 OSS API
|
|
8
|
+
*/
|
|
9
|
+
static getStorage(storageType: StorageType): IObjectStorage;
|
|
10
|
+
/**
|
|
11
|
+
* 通用的 OSS API
|
|
12
|
+
*/
|
|
13
|
+
static newStorage(options: IStorageConfig): OSSStorage | MinioStorage;
|
|
14
|
+
}
|
|
2
15
|
export declare class Storage {
|
|
3
16
|
private static _instance;
|
|
4
|
-
static get Instance():
|
|
17
|
+
static get Instance(): IObjectStorage;
|
|
5
18
|
private constructor();
|
|
6
19
|
}
|
|
@@ -1,29 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Storage = void 0;
|
|
4
|
-
const
|
|
3
|
+
exports.Storage = exports.StorageFactory = void 0;
|
|
4
|
+
const ossStorage_1 = require("./ossStorage");
|
|
5
5
|
const types_1 = require("../../types");
|
|
6
6
|
const environment_1 = require("../parameter/environment");
|
|
7
|
-
const
|
|
7
|
+
const minioStorage_1 = require("./minioStorage");
|
|
8
8
|
class StorageFactory {
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* 组件内部使用 OSS API
|
|
11
|
+
*/
|
|
12
|
+
static getStorage(storageType) {
|
|
10
13
|
if (!storageType) {
|
|
11
14
|
throw new Error('missing storageType');
|
|
12
15
|
}
|
|
13
16
|
if (storageType === types_1.StorageType.OSS || storageType === types_1.StorageType.SUANPAN) {
|
|
14
|
-
return new
|
|
17
|
+
return new ossStorage_1.OSSStorage();
|
|
15
18
|
}
|
|
16
19
|
else if (storageType === types_1.StorageType.MINIO) {
|
|
17
|
-
return new
|
|
20
|
+
return new minioStorage_1.MinioStorage();
|
|
18
21
|
}
|
|
19
22
|
throw new Error(`unknown storage type ${storageType}.`);
|
|
20
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* 通用的 OSS API
|
|
26
|
+
*/
|
|
27
|
+
static newStorage(options) {
|
|
28
|
+
if (options.type === 'oss') {
|
|
29
|
+
return new ossStorage_1.OSSStorage(options.config);
|
|
30
|
+
}
|
|
31
|
+
else if (options.type === 'minio') {
|
|
32
|
+
return new minioStorage_1.MinioStorage(options.config);
|
|
33
|
+
}
|
|
34
|
+
throw new Error(`unknown storage type ${options.type}.`);
|
|
35
|
+
}
|
|
21
36
|
}
|
|
37
|
+
exports.StorageFactory = StorageFactory;
|
|
22
38
|
class Storage {
|
|
23
39
|
constructor() { }
|
|
24
40
|
static get Instance() {
|
|
25
41
|
if (!this._instance) {
|
|
26
|
-
this._instance =
|
|
42
|
+
this._instance = StorageFactory.getStorage(environment_1.Environment.spConfig.storageType);
|
|
27
43
|
}
|
|
28
44
|
return this._instance;
|
|
29
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapperStorage.js","sourceRoot":"","sources":["../../../src/core/storage/wrapperStorage.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"wrapperStorage.js","sourceRoot":"","sources":["../../../src/core/storage/wrapperStorage.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAC1C,uCAAqF;AACrF,0DAAuD;AACvD,iDAA8C;AAE9C,MAAa,cAAc;IAEzB;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,WAAwB;QACxC,IAAI,CAAC,WAAW,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SAAE;QAC7D,IAAI,WAAW,KAAK,mBAAW,CAAC,GAAG,IAAI,WAAW,KAAK,mBAAW,CAAC,OAAO,EAAE;YAC1E,OAAO,IAAI,uBAAU,EAAE,CAAC;SACzB;aAAM,IAAI,WAAW,KAAK,mBAAW,CAAC,KAAK,EAAE;YAC5C,OAAO,IAAI,2BAAY,EAAE,CAAC;SAC3B;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,GAAG,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,OAAuB;QACvC,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE;YAC1B,OAAO,IAAI,uBAAU,CAAC,OAAO,CAAC,MAAsB,CAAC,CAAC;SACvD;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;YACnC,OAAO,IAAI,2BAAY,CAAC,OAAO,CAAC,MAAqB,CAAC,CAAC;SACxD;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;IAC3D,CAAC;CACF;AA1BD,wCA0BC;AACD,MAAa,OAAO;IASlB,gBAAwB,CAAC;IANlB,MAAM,KAAK,QAAQ;QACxB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,yBAAW,CAAC,QAAQ,CAAC,WAA0B,CAAC,CAAC;SAC7F;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CAEF;AAVD,0BAUC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type { AnyJSON } from '../../types';
|
|
1
|
+
import type { AnyJSON, StsToken } from '../../types';
|
|
2
2
|
export declare function buildUserIdHeaderField(): AnyJSON<string>;
|
|
3
3
|
export declare function buildSpAffinityUrl(): string;
|
|
4
|
+
export declare function getSTSToken(): Promise<StsToken>;
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
5
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.buildSpAffinityUrl = exports.buildUserIdHeaderField = void 0;
|
|
15
|
+
exports.getSTSToken = exports.buildSpAffinityUrl = exports.buildUserIdHeaderField = void 0;
|
|
7
16
|
const lodash_1 = __importDefault(require("lodash"));
|
|
17
|
+
const got_1 = __importDefault(require("got"));
|
|
8
18
|
const _1 = require(".");
|
|
9
19
|
const environment_1 = require("../parameter/environment");
|
|
10
20
|
function buildUserIdHeaderField() {
|
|
@@ -25,4 +35,15 @@ function buildSpAffinityUrl() {
|
|
|
25
35
|
return `${protocol}://${host}${port}`;
|
|
26
36
|
}
|
|
27
37
|
exports.buildSpAffinityUrl = buildSpAffinityUrl;
|
|
38
|
+
function getSTSToken() {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
const gotOptions = {
|
|
41
|
+
prefixUrl: buildSpAffinityUrl(),
|
|
42
|
+
headers: buildUserIdHeaderField()
|
|
43
|
+
};
|
|
44
|
+
const response = yield got_1.default('oss/token', gotOptions);
|
|
45
|
+
return JSON.parse(response.body);
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
exports.getSTSToken = getSTSToken;
|
|
28
49
|
//# sourceMappingURL=support.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"support.js","sourceRoot":"","sources":["../../../src/core/utils/support.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"support.js","sourceRoot":"","sources":["../../../src/core/utils/support.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAAuB;AACvB,8CAAsB;AACtB,wBAAgC;AAChC,0DAAuD;AAGvD,SAAgB,sBAAsB;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;QACvB,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,yBAAW,CAAC,MAAM,CAAC,MAAgB;QAC7E,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,cAAW,CAAC,yBAAW,CAAC,OAAO,CAAC,YAAY,EAAE,gBAAC,CAAC,QAAQ,CAAC,yBAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/H,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,IAAI;KACxD,CAAC,CAAC;AACL,CAAC;AAND,wDAMC;AAED,SAAgB,kBAAkB;IAChC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,yBAAW,CAAC,OAAO,CAAC;IAEtF,IAAI,QAAQ,EAAE;QAAE,OAAO,QAAQ,CAAC;KAAE;IAElC,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,OAAO,GAAG,QAAQ,MAAM,IAAI,GAAG,IAAI,EAAE,CAAC;AACxC,CAAC;AARD,gDAQC;AAED,SAAsB,WAAW;;QAC/B,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,kBAAkB,EAAE;YAC/B,OAAO,EAAE,sBAAsB,EAAE;SAClC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,aAAG,CAAC,WAAW,EAAE,UAAiB,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAa,CAAC;IAC/C,CAAC;CAAA;AAPD,kCAOC"}
|
|
@@ -31,3 +31,22 @@ export declare type StsToken = {
|
|
|
31
31
|
bucket: string;
|
|
32
32
|
region: string;
|
|
33
33
|
};
|
|
34
|
+
export interface OSSConfig {
|
|
35
|
+
bucket: string;
|
|
36
|
+
accessKey: string;
|
|
37
|
+
accessSecret: string;
|
|
38
|
+
}
|
|
39
|
+
export interface MinioConfig extends OSSConfig {
|
|
40
|
+
host: string;
|
|
41
|
+
port: number;
|
|
42
|
+
useSSL: boolean;
|
|
43
|
+
}
|
|
44
|
+
export interface AliOSSConfig extends OSSConfig {
|
|
45
|
+
endpoint: string;
|
|
46
|
+
securityToken?: string;
|
|
47
|
+
}
|
|
48
|
+
export declare type StorageConfig = MinioConfig | AliOSSConfig;
|
|
49
|
+
export interface IStorageConfig {
|
|
50
|
+
type: 'oss' | 'minio';
|
|
51
|
+
config: StorageConfig;
|
|
52
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageTypes.js","sourceRoot":"","sources":["../../src/types/storageTypes.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"storageTypes.js","sourceRoot":"","sources":["../../src/types/storageTypes.ts"],"names":[],"mappings":";;;AAMA,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,kCAAmB,CAAA;IACnB,8BAAe,CAAA;AACjB,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"minio.js","sourceRoot":"","sources":["../../../src/core/storage/minio.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"oss.js","sourceRoot":"","sources":["../../../src/core/storage/oss.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAuB;AAEvB,sDAA0B;AAC1B,+CAAiC;AACjC,oCAAwC;AACxC,uCAA4C;AAG5C,MAAa,UAAW,SAAQ,yBAAe;IAE7B,WAAW;;;YAEzB,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAEpD,OAAO,IAAI,iBAAG,CAAC;gBACb,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE;gBAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE;gBAC7B,WAAW,EAAE,CAAA,MAAA,QAAQ,CAAC,WAAW,0CAAE,WAAW,KAAI,EAAE;gBACpD,eAAe,EAAE,CAAA,MAAA,QAAQ,CAAC,WAAW,0CAAE,eAAe,KAAI,EAAE;gBAC5D,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa;aAC7C,CAAC,CAAC;;KACJ;IAEK,MAAM,CAAC,UAAkB,EAAE,OAAe;;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3D,CAAC;KAAA;IAEK,iBAAiB,CAAC,UAAkB;;YACxC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,OAAiB,CAAC;QAClC,CAAC;KAAA;IAEK,iBAAiB,CAAC,UAAkB;;YACxC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACrD,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC;KAAA;IAEK,iBAAiB,CAAE,UAAkB;;YACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACxD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;KAAA;IAEK,eAAe,CAAE,UAAkB;;YACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACrD,OAAO,oBAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChC,CAAC;KAAA;IAEK,SAAS,CAAC,UAAkB,EAAE,IAAsC;;YACxE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,gBAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/E,CAAC;KAAA;IAEK,UAAU,CAAC,UAAkB,EAAE,QAAgB;;YACnD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,iBAAiB,CAAC,CAAC;aAC/D;YACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEK,UAAU,CAAC,UAAkB,EAAE,QAAgB;;YACnD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEK,WAAW,CAAC,MAAc,EAAE,YAAqB,IAAI,EAAE,UAAkB,IAAI;;;YACjF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAE7C,MAAM,gBAAgB,GAAyB;gBAC7C,MAAM;gBACN,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;gBAC/B,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE;aAC/B,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAyB,CAAC,CAAC;YAE/E,MAAM,WAAW,GAAG,MAAA,OAAO,CAAC,OAAO,0CAAE,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC7C,OAAO;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,YAAY,EAAE,GAAG,CAAC,YAAY;iBAC/B,CAAC;YACJ,CAAC,CAAiB,CAAC;YAEnB,OAAO,WAAW,IAAI,EAAE,CAAC;;KAC1B;IAEK,YAAY,CAAC,UAAkB;;YACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,MAAM,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;KAAA;IAEK,kBAAkB,CAAC,WAAqB;;YAC5C,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAO,UAAU,EAAE,EAAE;gBACrD,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC,CAAA,CAAC,CAAC,CAAC;QACN,CAAC;KAAA;IAEK,oBAAoB,CAAC,UAAkB;;YAC3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,EAAS,CAAC;YAChD,IAAI;gBACF,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACjC,OAAO,IAAI,CAAC;aACb;YAAC,OAAO,CAAM,EAAE;gBACf,IAAI,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,gBAAgB,EAAE;oBAChC,OAAO,KAAK,CAAC;iBACd;gBACD,MAAM,CAAC,CAAC;aACT;QACH,CAAC;KAAA;CACF;AAxGD,gCAwGC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import type { Stream } from 'stream';
|
|
3
|
-
import type { StsToken, ObjectItem } from '../../types';
|
|
4
|
-
export interface ObjectStorage {
|
|
5
|
-
append(objectName: string, content: String): Promise<any>;
|
|
6
|
-
getObjectToBuffer(objectName: string): Promise<Buffer>;
|
|
7
|
-
getObjectToStream(objectName: string): Promise<Stream | null>;
|
|
8
|
-
getObjectToString(objectName: string): Promise<string>;
|
|
9
|
-
getObjectToJSON(objectName: string): Promise<unknown>;
|
|
10
|
-
fGetObject(objectName: string, filePath: string): Promise<any>;
|
|
11
|
-
fPutObject(objectName: string, filePath: string): Promise<void>;
|
|
12
|
-
putObject(objectName: string, data: any): Promise<void>;
|
|
13
|
-
listObjects(prefix: string, recursive?: boolean, maxKeys?: number): Promise<ObjectItem[]>;
|
|
14
|
-
deleteObject(objectName: string): Promise<void>;
|
|
15
|
-
deleteMultiObjects(objectNames: string[]): Promise<void>;
|
|
16
|
-
checkObjectNameExist(objectName: string): Promise<boolean>;
|
|
17
|
-
}
|
|
18
|
-
export declare abstract class AbstractStorage implements ObjectStorage {
|
|
19
|
-
private client;
|
|
20
|
-
private lastToken;
|
|
21
|
-
protected isTokenExpiration(tokenExpiration: string): boolean;
|
|
22
|
-
protected getClient(): Promise<unknown>;
|
|
23
|
-
protected getStsToken(): Promise<StsToken>;
|
|
24
|
-
protected abstract buildClient(): Promise<any>;
|
|
25
|
-
abstract append(objectName: string, content: String): Promise<any>;
|
|
26
|
-
abstract getObjectToBuffer(objectName: string): Promise<Buffer>;
|
|
27
|
-
abstract getObjectToStream(objectName: string): Promise<Stream | null>;
|
|
28
|
-
abstract getObjectToString(objectName: string): Promise<string>;
|
|
29
|
-
abstract getObjectToJSON(objectName: string): Promise<unknown>;
|
|
30
|
-
abstract fGetObject(objectName: string, filePath: string): Promise<void>;
|
|
31
|
-
abstract fPutObject(objectName: string, filePath: string): Promise<void>;
|
|
32
|
-
abstract putObject(objectName: string, data: any): Promise<void>;
|
|
33
|
-
abstract listObjects(prefix: string, recursive?: boolean, maxKeys?: number): Promise<ObjectItem[]>;
|
|
34
|
-
abstract deleteObject(objectName: string): Promise<void>;
|
|
35
|
-
abstract deleteMultiObjects(objectNames: string[]): Promise<void>;
|
|
36
|
-
abstract checkObjectNameExist(objectName: string): Promise<boolean>;
|
|
37
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.AbstractStorage = void 0;
|
|
16
|
-
const got_1 = __importDefault(require("got"));
|
|
17
|
-
const moment_1 = __importDefault(require("moment"));
|
|
18
|
-
const support_1 = require("../utils/support");
|
|
19
|
-
class AbstractStorage {
|
|
20
|
-
isTokenExpiration(tokenExpiration) {
|
|
21
|
-
return moment_1.default(moment_1.default.now()).isAfter(moment_1.default(tokenExpiration));
|
|
22
|
-
}
|
|
23
|
-
getClient() {
|
|
24
|
-
var _a, _b;
|
|
25
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
const tokenExpiration = (_b = (_a = this.lastToken) === null || _a === void 0 ? void 0 : _a.Credentials) === null || _b === void 0 ? void 0 : _b.Expiration;
|
|
27
|
-
if (!this.client || !tokenExpiration || this.isTokenExpiration(tokenExpiration)) {
|
|
28
|
-
this.client = yield this.buildClient();
|
|
29
|
-
}
|
|
30
|
-
return this.client;
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
getStsToken() {
|
|
34
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const gotOptions = {
|
|
36
|
-
prefixUrl: support_1.buildSpAffinityUrl(),
|
|
37
|
-
headers: support_1.buildUserIdHeaderField()
|
|
38
|
-
};
|
|
39
|
-
const response = yield got_1.default('oss/token', gotOptions);
|
|
40
|
-
const stsToken = JSON.parse(response.body);
|
|
41
|
-
this.lastToken = stsToken;
|
|
42
|
-
return stsToken;
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
exports.AbstractStorage = AbstractStorage;
|
|
47
|
-
//# sourceMappingURL=storage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/core/storage/storage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAAsB;AACtB,oDAA4B;AAG5B,8CAA8E;AAqB9E,MAAsB,eAAe;IAKzB,iBAAiB,CAAE,eAAuB;QAClD,OAAO,gBAAM,CAAC,gBAAM,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/D,CAAC;IAEe,SAAS;;;YAEvB,MAAM,eAAe,GAAG,MAAA,MAAC,IAAI,CAAC,SAAsB,0CAAE,WAAW,0CAAE,UAAU,CAAC;YAE9E,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE;gBAC/E,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;aACxC;YACD,OAAO,IAAI,CAAC,MAAM,CAAC;;KACpB;IAEe,WAAW;;YACzB,MAAM,UAAU,GAAG;gBACjB,SAAS,EAAE,4BAAkB,EAAE;gBAC/B,OAAO,EAAE,gCAAsB,EAAE;aAClC,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,aAAG,CAAC,WAAW,EAAE,UAAiB,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,OAAO,QAAoB,CAAC;QAC9B,CAAC;KAAA;CAqBF;AAjDD,0CAiDC"}
|