@aled1023/udl-sdk 1.1.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/dist/api/api.d.ts +319 -0
- package/dist/api/api.js +538 -0
- package/dist/api/base.d.ts +42 -0
- package/dist/api/base.js +49 -0
- package/dist/api/common.d.ts +34 -0
- package/dist/api/common.js +139 -0
- package/dist/api/configuration.d.ts +98 -0
- package/dist/api/configuration.js +44 -0
- package/dist/api/index.d.ts +4 -0
- package/dist/api/index.js +21 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +51 -0
- package/package.json +19 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* OpenAPI definition
|
|
6
|
+
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: v0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
16
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
17
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
18
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
19
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
20
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
21
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.createRequestFunction = exports.toPathString = exports.serializeDataIfNeeded = exports.replaceWithSerializableTypeIfNeeded = exports.setSearchParams = exports.setOAuthToObject = exports.setBearerAuthToObject = exports.setBasicAuthToObject = exports.setApiKeyToObject = exports.assertParamExists = exports.DUMMY_BASE_URL = void 0;
|
|
26
|
+
const base_1 = require("./base");
|
|
27
|
+
exports.DUMMY_BASE_URL = 'https://example.com';
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
* @throws {RequiredError}
|
|
31
|
+
*/
|
|
32
|
+
const assertParamExists = function (functionName, paramName, paramValue) {
|
|
33
|
+
if (paramValue === null || paramValue === undefined) {
|
|
34
|
+
throw new base_1.RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
exports.assertParamExists = assertParamExists;
|
|
38
|
+
const setApiKeyToObject = function (object, keyParamName, configuration) {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
if (configuration && configuration.apiKey) {
|
|
41
|
+
const localVarApiKeyValue = typeof configuration.apiKey === 'function'
|
|
42
|
+
? yield configuration.apiKey(keyParamName)
|
|
43
|
+
: yield configuration.apiKey;
|
|
44
|
+
object[keyParamName] = localVarApiKeyValue;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
exports.setApiKeyToObject = setApiKeyToObject;
|
|
49
|
+
const setBasicAuthToObject = function (object, configuration) {
|
|
50
|
+
if (configuration && (configuration.username || configuration.password)) {
|
|
51
|
+
object["auth"] = { username: configuration.username, password: configuration.password };
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.setBasicAuthToObject = setBasicAuthToObject;
|
|
55
|
+
const setBearerAuthToObject = function (object, configuration) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
if (configuration && configuration.accessToken) {
|
|
58
|
+
const accessToken = typeof configuration.accessToken === 'function'
|
|
59
|
+
? yield configuration.accessToken()
|
|
60
|
+
: yield configuration.accessToken;
|
|
61
|
+
object["Authorization"] = "Bearer " + accessToken;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
exports.setBearerAuthToObject = setBearerAuthToObject;
|
|
66
|
+
const setOAuthToObject = function (object, name, scopes, configuration) {
|
|
67
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
if (configuration && configuration.accessToken) {
|
|
69
|
+
const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
|
|
70
|
+
? yield configuration.accessToken(name, scopes)
|
|
71
|
+
: yield configuration.accessToken;
|
|
72
|
+
object["Authorization"] = "Bearer " + localVarAccessTokenValue;
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
exports.setOAuthToObject = setOAuthToObject;
|
|
77
|
+
function setFlattenedQueryParams(urlSearchParams, parameter, key = "") {
|
|
78
|
+
if (parameter == null)
|
|
79
|
+
return;
|
|
80
|
+
if (typeof parameter === "object") {
|
|
81
|
+
if (Array.isArray(parameter) || parameter instanceof Set) {
|
|
82
|
+
parameter.forEach(item => setFlattenedQueryParams(urlSearchParams, item, key));
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
Object.keys(parameter).forEach(currentKey => setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`));
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
if (urlSearchParams.has(key)) {
|
|
90
|
+
urlSearchParams.append(key, parameter);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
urlSearchParams.set(key, parameter);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
const setSearchParams = function (url, ...objects) {
|
|
98
|
+
const searchParams = new URLSearchParams(url.search);
|
|
99
|
+
setFlattenedQueryParams(searchParams, objects);
|
|
100
|
+
url.search = searchParams.toString();
|
|
101
|
+
};
|
|
102
|
+
exports.setSearchParams = setSearchParams;
|
|
103
|
+
/**
|
|
104
|
+
* JSON serialization helper function which replaces instances of unserializable types with serializable ones.
|
|
105
|
+
* This function will run for every key-value pair encountered by JSON.stringify while traversing an object.
|
|
106
|
+
* Converting a set to a string will return an empty object, so an intermediate conversion to an array is required.
|
|
107
|
+
*/
|
|
108
|
+
// @ts-ignore
|
|
109
|
+
const replaceWithSerializableTypeIfNeeded = function (key, value) {
|
|
110
|
+
if (value instanceof Set) {
|
|
111
|
+
return Array.from(value);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
return value;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
exports.replaceWithSerializableTypeIfNeeded = replaceWithSerializableTypeIfNeeded;
|
|
118
|
+
const serializeDataIfNeeded = function (value, requestOptions, configuration) {
|
|
119
|
+
const nonString = typeof value !== 'string';
|
|
120
|
+
const needsSerialization = nonString && configuration && configuration.isJsonMime
|
|
121
|
+
? configuration.isJsonMime(requestOptions.headers['Content-Type'])
|
|
122
|
+
: nonString;
|
|
123
|
+
return needsSerialization
|
|
124
|
+
? JSON.stringify(value !== undefined ? value : {}, exports.replaceWithSerializableTypeIfNeeded)
|
|
125
|
+
: (value || "");
|
|
126
|
+
};
|
|
127
|
+
exports.serializeDataIfNeeded = serializeDataIfNeeded;
|
|
128
|
+
const toPathString = function (url) {
|
|
129
|
+
return url.pathname + url.search + url.hash;
|
|
130
|
+
};
|
|
131
|
+
exports.toPathString = toPathString;
|
|
132
|
+
const createRequestFunction = function (axiosArgs, globalAxios, BASE_PATH, configuration) {
|
|
133
|
+
return (axios = globalAxios, basePath = BASE_PATH) => {
|
|
134
|
+
var _a;
|
|
135
|
+
const axiosRequestArgs = Object.assign(Object.assign({}, axiosArgs.options), { url: (axios.defaults.baseURL ? '' : (_a = configuration === null || configuration === void 0 ? void 0 : configuration.basePath) !== null && _a !== void 0 ? _a : basePath) + axiosArgs.url });
|
|
136
|
+
return axios.request(axiosRequestArgs);
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
exports.createRequestFunction = createRequestFunction;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAPI definition
|
|
3
|
+
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: v0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
interface AWSv4Configuration {
|
|
13
|
+
options?: {
|
|
14
|
+
region?: string;
|
|
15
|
+
service?: string;
|
|
16
|
+
};
|
|
17
|
+
credentials?: {
|
|
18
|
+
accessKeyId?: string;
|
|
19
|
+
secretAccessKey?: string;
|
|
20
|
+
sessionToken?: string;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export interface ConfigurationParameters {
|
|
24
|
+
apiKey?: string | Promise<string> | ((name: string) => string) | ((name: string) => Promise<string>);
|
|
25
|
+
username?: string;
|
|
26
|
+
password?: string;
|
|
27
|
+
accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise<string>);
|
|
28
|
+
awsv4?: AWSv4Configuration;
|
|
29
|
+
basePath?: string;
|
|
30
|
+
serverIndex?: number;
|
|
31
|
+
baseOptions?: any;
|
|
32
|
+
formDataCtor?: new () => any;
|
|
33
|
+
}
|
|
34
|
+
export declare class Configuration {
|
|
35
|
+
/**
|
|
36
|
+
* parameter for apiKey security
|
|
37
|
+
* @param name security name
|
|
38
|
+
*/
|
|
39
|
+
apiKey?: string | Promise<string> | ((name: string) => string) | ((name: string) => Promise<string>);
|
|
40
|
+
/**
|
|
41
|
+
* parameter for basic security
|
|
42
|
+
*/
|
|
43
|
+
username?: string;
|
|
44
|
+
/**
|
|
45
|
+
* parameter for basic security
|
|
46
|
+
*/
|
|
47
|
+
password?: string;
|
|
48
|
+
/**
|
|
49
|
+
* parameter for oauth2 security
|
|
50
|
+
* @param name security name
|
|
51
|
+
* @param scopes oauth2 scope
|
|
52
|
+
*/
|
|
53
|
+
accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise<string>);
|
|
54
|
+
/**
|
|
55
|
+
* parameter for aws4 signature security
|
|
56
|
+
* @param {Object} AWS4Signature - AWS4 Signature security
|
|
57
|
+
* @param {string} options.region - aws region
|
|
58
|
+
* @param {string} options.service - name of the service.
|
|
59
|
+
* @param {string} credentials.accessKeyId - aws access key id
|
|
60
|
+
* @param {string} credentials.secretAccessKey - aws access key
|
|
61
|
+
* @param {string} credentials.sessionToken - aws session token
|
|
62
|
+
* @memberof Configuration
|
|
63
|
+
*/
|
|
64
|
+
awsv4?: AWSv4Configuration;
|
|
65
|
+
/**
|
|
66
|
+
* override base path
|
|
67
|
+
*/
|
|
68
|
+
basePath?: string;
|
|
69
|
+
/**
|
|
70
|
+
* override server index
|
|
71
|
+
*/
|
|
72
|
+
serverIndex?: number;
|
|
73
|
+
/**
|
|
74
|
+
* base options for axios calls
|
|
75
|
+
*/
|
|
76
|
+
baseOptions?: any;
|
|
77
|
+
/**
|
|
78
|
+
* The FormData constructor that will be used to create multipart form data
|
|
79
|
+
* requests. You can inject this here so that execution environments that
|
|
80
|
+
* do not support the FormData class can still run the generated client.
|
|
81
|
+
*
|
|
82
|
+
* @type {new () => FormData}
|
|
83
|
+
*/
|
|
84
|
+
formDataCtor?: new () => any;
|
|
85
|
+
constructor(param?: ConfigurationParameters);
|
|
86
|
+
/**
|
|
87
|
+
* Check if the given MIME is a JSON MIME.
|
|
88
|
+
* JSON MIME examples:
|
|
89
|
+
* application/json
|
|
90
|
+
* application/json; charset=UTF8
|
|
91
|
+
* APPLICATION/JSON
|
|
92
|
+
* application/vnd.company+json
|
|
93
|
+
* @param mime - MIME (Multipurpose Internet Mail Extensions)
|
|
94
|
+
* @return True if the given MIME is JSON, false otherwise.
|
|
95
|
+
*/
|
|
96
|
+
isJsonMime(mime: string): boolean;
|
|
97
|
+
}
|
|
98
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/**
|
|
4
|
+
* OpenAPI definition
|
|
5
|
+
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: v0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Configuration = void 0;
|
|
16
|
+
class Configuration {
|
|
17
|
+
constructor(param = {}) {
|
|
18
|
+
var _a;
|
|
19
|
+
this.apiKey = param.apiKey;
|
|
20
|
+
this.username = param.username;
|
|
21
|
+
this.password = param.password;
|
|
22
|
+
this.accessToken = param.accessToken;
|
|
23
|
+
this.awsv4 = param.awsv4;
|
|
24
|
+
this.basePath = param.basePath;
|
|
25
|
+
this.serverIndex = param.serverIndex;
|
|
26
|
+
this.baseOptions = Object.assign(Object.assign({}, param.baseOptions), { headers: Object.assign({}, (_a = param.baseOptions) === null || _a === void 0 ? void 0 : _a.headers) });
|
|
27
|
+
this.formDataCtor = param.formDataCtor;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check if the given MIME is a JSON MIME.
|
|
31
|
+
* JSON MIME examples:
|
|
32
|
+
* application/json
|
|
33
|
+
* application/json; charset=UTF8
|
|
34
|
+
* APPLICATION/JSON
|
|
35
|
+
* application/vnd.company+json
|
|
36
|
+
* @param mime - MIME (Multipurpose Internet Mail Extensions)
|
|
37
|
+
* @return True if the given MIME is JSON, false otherwise.
|
|
38
|
+
*/
|
|
39
|
+
isJsonMime(mime) {
|
|
40
|
+
const jsonMime = new RegExp('^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', 'i');
|
|
41
|
+
return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.Configuration = Configuration;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
// D:\UDL-Governance\sdk-project\src\api\index.ts
|
|
18
|
+
__exportStar(require("./api"), exports);
|
|
19
|
+
__exportStar(require("./configuration"), exports);
|
|
20
|
+
__exportStar(require("./common"), exports);
|
|
21
|
+
__exportStar(require("./base"), exports);
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.UdlStorage = void 0;
|
|
13
|
+
// D:\UDL-Governance\sdk-project\src\index.ts
|
|
14
|
+
const configuration_1 = require("./api/configuration");
|
|
15
|
+
const api_1 = require("./api/api");
|
|
16
|
+
class UdlStorage {
|
|
17
|
+
constructor(token, apiPrefix = '/api') {
|
|
18
|
+
this.CHUNK_SIZE = 5 * 1024 * 1024;
|
|
19
|
+
const config = new configuration_1.Configuration({
|
|
20
|
+
basePath: apiPrefix,
|
|
21
|
+
accessToken: token
|
|
22
|
+
});
|
|
23
|
+
this.api = new api_1.FileUploadControllerApi(config);
|
|
24
|
+
}
|
|
25
|
+
upload(file, onProgress) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const initRes = yield this.api.initUpload({
|
|
28
|
+
fileName: file.name,
|
|
29
|
+
fileSize: file.size
|
|
30
|
+
});
|
|
31
|
+
// 核心修复:处理空值逻辑
|
|
32
|
+
const data = initRes.data.data;
|
|
33
|
+
if (!data || !data.uploadId || data.totalChunks === undefined) {
|
|
34
|
+
throw new Error("SDK Error: Backend failed to return uploadId or totalChunks.");
|
|
35
|
+
}
|
|
36
|
+
const { uploadId, totalChunks } = data;
|
|
37
|
+
for (let i = 0; i < totalChunks; i++) {
|
|
38
|
+
const start = i * this.CHUNK_SIZE;
|
|
39
|
+
const chunk = file.slice(start, start + this.CHUNK_SIZE);
|
|
40
|
+
// 此时 uploadId 确定是 string
|
|
41
|
+
yield this.api.uploadChunk(uploadId, i, chunk);
|
|
42
|
+
if (onProgress) {
|
|
43
|
+
onProgress(Math.round(((i + 1) / totalChunks) * 100));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const completeRes = yield this.api.completeUpload({ uploadId });
|
|
47
|
+
return completeRes.data;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.UdlStorage = UdlStorage;
|
package/package.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aled1023/udl-sdk",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"main": "dist/index.js",
|
|
5
|
+
"types": "dist/index.d.ts",
|
|
6
|
+
"files": [
|
|
7
|
+
"dist"
|
|
8
|
+
],
|
|
9
|
+
"scripts": {
|
|
10
|
+
"build": "tsc",
|
|
11
|
+
"prepublishOnly": "npm run build"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"axios": "^1.0.0"
|
|
15
|
+
},
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"typescript": "^5.0.0"
|
|
18
|
+
}
|
|
19
|
+
}
|