Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

alipay-sdk

Package Overview
Dependencies
Maintainers
3
Versions
71
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

alipay-sdk - npm Package Compare versions

Comparing version 4.5.1 to 4.6.0

5

dist/commonjs/AlipayFormStream.d.ts
import FormStream from 'formstream';
export interface AlipayFormStreamOptions {
/** min chunk size to emit data event */
minChunkSize?: number;
}
export declare class AlipayFormStream extends FormStream {
constructor(options?: AlipayFormStreamOptions);
}

10

dist/commonjs/AlipayFormStream.js

@@ -7,7 +7,13 @@ "use strict";

exports.AlipayFormStream = void 0;
// import { statSync } from 'node:fs';
const formstream_1 = __importDefault(require("formstream"));
class AlipayFormStream extends formstream_1.default {
constructor(options) {
super({
// set default minChunkSize to 2MB
minChunkSize: 1024 * 1024 * 2,
...options,
});
}
}
exports.AlipayFormStream = AlipayFormStream;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxpcGF5Rm9ybVN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbGlwYXlGb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHNDQUFzQztBQUN0Qyw0REFBb0M7QUFFcEMsTUFBYSxnQkFBaUIsU0FBUSxvQkFBVTtDQU8vQztBQVBELDRDQU9DIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxpcGF5Rm9ybVN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbGlwYXlGb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDREQUFvQztBQU9wQyxNQUFhLGdCQUFpQixTQUFRLG9CQUFVO0lBQzlDLFlBQVksT0FBaUM7UUFDM0MsS0FBSyxDQUFDO1lBQ0osa0NBQWtDO1lBQ2xDLFlBQVksRUFBRSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUM7WUFDN0IsR0FBRyxPQUFPO1NBQ1gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBUkQsNENBUUMifQ==

15

dist/commonjs/form.d.ts

@@ -0,8 +1,15 @@

/// <reference types="node" />
/// <reference types="node" />
import { Readable } from 'node:stream';
export interface IFile {
/** 文件名 */
name: string;
/** 文件路径 */
path: string;
/** 表单字段名 */
fieldName: string;
/** 文件路径 */
path?: string;
/** 文件流 */
stream?: Readable;
/** 文件内容 */
content?: Buffer;
}

@@ -36,5 +43,5 @@ export interface IField {

* @param fileName 文件名
* @param filePath 文件绝对路径
* @param filePath 文件绝对路径,或者文件流,又或者文件内容 Buffer
*/
addFile(fieldName: string, fileName: string, filePath: string): void;
addFile(fieldName: string, fileName: string, filePath: string | Readable | Buffer): void;
}
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AlipayFormData = void 0;
// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value) {
if (typeof value !== 'string')
return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s) => { return isJSONString(s); })
.reduce(function (_prev, curr) { return !!curr; });
}
return false;
}
class AlipayFormData {

@@ -59,13 +41,40 @@ method;

* @param fileName 文件名
* @param filePath 文件绝对路径
* @param filePath 文件绝对路径,或者文件流,又或者文件内容 Buffer
*/
addFile(fieldName, fileName, filePath) {
this.files.push({
const file = {
fieldName,
name: fileName,
path: filePath,
});
};
if (typeof filePath === 'string') {
file.path = filePath;
}
else if (Buffer.isBuffer(filePath)) {
file.content = filePath;
}
else {
file.stream = filePath;
}
this.files.push(file);
}
}
exports.AlipayFormData = AlipayFormData;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdGQUFnRjtBQUNoRixTQUFTLFlBQVksQ0FBQyxLQUFVO0lBQzlCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUM1QixPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUNsQixPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQzthQUN2QixLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ1gsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsR0FBRyxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvQyxNQUFNLENBQUMsVUFBUyxLQUFhLEVBQUUsSUFBWSxJQUFJLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFnQkQsTUFBYSxjQUFjO0lBQ2pCLE1BQU0sQ0FBUztJQUNoQixLQUFLLENBQVU7SUFDZixNQUFNLENBQVc7SUFFeEI7UUFDRSxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkMsUUFBUSxLQUFLLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakMsU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFbkM7OztPQUdHO0lBQ0gsU0FBUyxDQUFDLE1BQWM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsU0FBaUIsRUFBRSxVQUFlO1FBQ3pDLElBQUksWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDN0Isb0NBQW9DO1lBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxTQUFpQixFQUFFLFFBQWdCLEVBQUUsUUFBZ0I7UUFDM0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDZCxTQUFTO1lBQ1QsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsUUFBUTtTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWxERCx3Q0FrREMifQ==
// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value) {
if (typeof value !== 'string')
return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s) => { return isJSONString(s); })
.reduce(function (_prev, curr) { return !!curr; });
}
return false;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW9CQSxNQUFhLGNBQWM7SUFDakIsTUFBTSxDQUFTO0lBQ2hCLEtBQUssQ0FBVTtJQUNmLE1BQU0sQ0FBVztJQUV4QjtRQUNFLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNuQyxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqQyxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUVuQzs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxTQUFpQixFQUFFLFVBQWU7UUFDekMsSUFBSSxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUM3QixvQ0FBb0M7WUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2RSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLFNBQWlCLEVBQUUsUUFBZ0IsRUFBRSxRQUFvQztRQUMvRSxNQUFNLElBQUksR0FBVTtZQUNsQixTQUFTO1lBQ1QsSUFBSSxFQUFFLFFBQVE7U0FDZixDQUFDO1FBQ0YsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUN2QixDQUFDO2FBQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7UUFDMUIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztRQUN6QixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztDQUNGO0FBekRELHdDQXlEQztBQUVELGdGQUFnRjtBQUNoRixTQUFTLFlBQVksQ0FBQyxLQUFVO0lBQzlCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUM1QixPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUNsQixPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQzthQUN2QixLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ1gsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsR0FBRyxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvQyxNQUFNLENBQUMsVUFBUyxLQUFhLEVBQUUsSUFBWSxJQUFJLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMifQ==

@@ -117,3 +117,3 @@ "use strict";

.update(signString, 'utf8').sign(config.privateKey, 'base64');
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, sign);
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, decamelizeParams.sign);
return decamelizeParams;

@@ -175,2 +175,2 @@ }

/* c8 ignore stop */
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHlDQUFxQztBQUNyQyw2Q0FBcUQ7QUFHckQscUNBQXlDO0FBQ3pDLG9FQUEyQztBQUMzQywwREFBaUM7QUFHakMsTUFBTSxLQUFLLEdBQUcsSUFBQSxvQkFBUSxFQUFDLGlCQUFpQixDQUFDLENBQUM7QUFFN0IsUUFBQSx3QkFBd0IsR0FBRztJQUN0QyxHQUFHLEVBQUUsVUFBVTtJQUNmLElBQUksRUFBRSxZQUFZO0NBQ25CLENBQUM7QUFFRiwwRkFBMEY7QUFDMUYsMERBQTBEO0FBQzFELHNIQUFzSDtBQUN0SCxNQUFNLEVBQUUsR0FBRyxtQkFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsTUFBYztJQUM5QixPQUFPO1FBQ0wsRUFBRSxFQUFFLEVBQUU7UUFDTixHQUFHLEVBQUUsbUJBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7S0FDdkMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsU0FBaUIsRUFBRSxNQUFjO0lBQzlELE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sYUFBYSxHQUFHLG1CQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5RSxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDO0FBSkQsd0NBSUM7QUFFRCxTQUFnQixjQUFjLENBQUMsYUFBcUIsRUFBRSxNQUFjO0lBQ2xFLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sS0FBSyxHQUFHLG1CQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLG1CQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFMRCx3Q0FLQztBQUVELDRDQUE0QztBQUM1QyxTQUFnQixVQUFVLENBQUMsSUFBWSxFQUFFLE1BQWM7SUFDckQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxPQUFPLGNBQWMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQUhELGdDQUdDO0FBRUQsS0FBSztBQUNMLFNBQWdCLFVBQVUsQ0FBQyxhQUFxQixFQUFFLE1BQWM7SUFDOUQsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4RCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUM7QUFKRCxnQ0FJQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLElBQUksQ0FBQyxNQUFjLEVBQUUsTUFBMkIsRUFBRSxNQUFpQztJQUNqRyxNQUFNLFVBQVUsR0FBd0I7UUFDdEMsTUFBTTtRQUNOLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztRQUNuQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87UUFDdkIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1FBQ3ZCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtRQUN6QixTQUFTLEVBQUUsSUFBQSx3QkFBYyxHQUFFO0tBQzVCLENBQUM7SUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLElBQUksR0FBRyxLQUFLLFlBQVksSUFBSSxHQUFHLEtBQUssYUFBYSxJQUFJLEdBQUcsS0FBSyxhQUFhO1lBQUUsU0FBUztRQUNyRixVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDaEQsVUFBVSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3hDLFVBQVUsQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDeEQsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLFVBQVUsQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztJQUNoRCxDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFFM0QsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNmLFFBQVE7UUFDUixJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN2QixNQUFNLElBQUksU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELFVBQVUsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQy9CLFVBQVUsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUNoQyxJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLEVBQ3pCLE1BQU0sQ0FBQyxVQUFVLENBQ2xCLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELG9CQUFvQjtJQUNwQixNQUFNLGdCQUFnQixHQUF3QixJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEUsS0FBSztJQUNMLHFCQUFxQjtJQUNyQixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxFQUFFO1NBQ3BELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNULElBQUksSUFBSSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLGlCQUFpQixFQUFFLENBQUM7WUFDOUQsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQztRQUNELDBEQUEwRDtRQUMxRCxPQUFPLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUMsQ0FBQztTQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUViLE9BQU87SUFDUCxNQUFNLFNBQVMsR0FBRyxnQ0FBd0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUQsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLElBQUEsd0JBQVUsRUFBQyxTQUFTLENBQUM7U0FDMUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoRSxLQUFLLENBQUMseUNBQXlDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5RSxPQUFPLGdCQUFnQixDQUFDO0FBQzFCLENBQUM7QUFoRUQsb0JBZ0VDO0FBRUQsU0FBZ0IsZUFBZTtJQUM3QixPQUFPLElBQUEsd0JBQVUsR0FBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQUZELDBDQUVDO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FBQyxNQUFpQztJQUNyRSxNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7SUFDNUIsSUFBSSxLQUFhLENBQUM7SUFDbEIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLElBQUksS0FBSyxFQUFFLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLFdBQVcsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzlCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFURCwwQ0FTQztBQUVELHFCQUFxQjtBQUNyQiw0RUFBNEU7QUFDNUUsU0FBZ0IsVUFBVSxDQUFDLElBQVk7SUFDckMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0lBQ3RCLE1BQU0sNEJBQTRCLEdBQUcsS0FBSyxDQUFDO0lBQzNDLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLFNBQVMsQ0FDakIsaURBQWlELENBQ2xELENBQUM7SUFDSixDQUFDO0lBRUQsMEZBQTBGO0lBQzFGLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNwQixPQUFPLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsTUFBTSxXQUFXLEdBQUcsS0FBSyxTQUFTLElBQUksQ0FBQztJQUN2Qyw2REFBNkQ7SUFDN0QsZ0RBQWdEO0lBQ2hELGdDQUFnQztJQUNoQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUM5QixvREFBb0QsRUFDcEQsV0FBVyxDQUNaLENBQUM7SUFFRixJQUFJLDRCQUE0QixFQUFFLENBQUM7UUFDakMsT0FBTyxrQ0FBa0MsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELG9GQUFvRjtJQUNwRixtQ0FBbUM7SUFDbkMsT0FBTyxXQUFXO1NBQ2YsT0FBTyxDQUNOLHFFQUFxRSxFQUNyRSxXQUFXLENBQ1o7U0FDQSxXQUFXLEVBQUUsQ0FBQztBQUNuQixDQUFDO0FBbkNELGdDQW1DQztBQUVELFNBQVMsa0NBQWtDLENBQUMsV0FBbUIsRUFBRSxTQUFpQjtJQUNoRixtREFBbUQ7SUFDbkQsa0RBQWtEO0lBQ2xELG9EQUFvRDtJQUNwRCxrREFBa0Q7SUFDbEQsV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQy9CLHVGQUF1RixFQUN2RixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FDdkIsQ0FBQztJQUVGLDRFQUE0RTtJQUM1RSxtREFBbUQ7SUFDbkQsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUN4QixzRUFBc0UsRUFDdEUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLFNBQVMsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQ2pELENBQUM7QUFDSixDQUFDO0FBQ0Qsb0JBQW9CIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHlDQUFxQztBQUNyQyw2Q0FBcUQ7QUFHckQscUNBQXlDO0FBQ3pDLG9FQUEyQztBQUMzQywwREFBaUM7QUFHakMsTUFBTSxLQUFLLEdBQUcsSUFBQSxvQkFBUSxFQUFDLGlCQUFpQixDQUFDLENBQUM7QUFFN0IsUUFBQSx3QkFBd0IsR0FBRztJQUN0QyxHQUFHLEVBQUUsVUFBVTtJQUNmLElBQUksRUFBRSxZQUFZO0NBQ25CLENBQUM7QUFFRiwwRkFBMEY7QUFDMUYsMERBQTBEO0FBQzFELHNIQUFzSDtBQUN0SCxNQUFNLEVBQUUsR0FBRyxtQkFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsTUFBYztJQUM5QixPQUFPO1FBQ0wsRUFBRSxFQUFFLEVBQUU7UUFDTixHQUFHLEVBQUUsbUJBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7S0FDdkMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsU0FBaUIsRUFBRSxNQUFjO0lBQzlELE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sYUFBYSxHQUFHLG1CQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5RSxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDO0FBSkQsd0NBSUM7QUFFRCxTQUFnQixjQUFjLENBQUMsYUFBcUIsRUFBRSxNQUFjO0lBQ2xFLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sS0FBSyxHQUFHLG1CQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLG1CQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFMRCx3Q0FLQztBQUVELDRDQUE0QztBQUM1QyxTQUFnQixVQUFVLENBQUMsSUFBWSxFQUFFLE1BQWM7SUFDckQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxPQUFPLGNBQWMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQUhELGdDQUdDO0FBRUQsS0FBSztBQUNMLFNBQWdCLFVBQVUsQ0FBQyxhQUFxQixFQUFFLE1BQWM7SUFDOUQsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4RCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUM7QUFKRCxnQ0FJQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLElBQUksQ0FBQyxNQUFjLEVBQUUsTUFBMkIsRUFBRSxNQUFpQztJQUNqRyxNQUFNLFVBQVUsR0FBd0I7UUFDdEMsTUFBTTtRQUNOLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztRQUNuQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87UUFDdkIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1FBQ3ZCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtRQUN6QixTQUFTLEVBQUUsSUFBQSx3QkFBYyxHQUFFO0tBQzVCLENBQUM7SUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLElBQUksR0FBRyxLQUFLLFlBQVksSUFBSSxHQUFHLEtBQUssYUFBYSxJQUFJLEdBQUcsS0FBSyxhQUFhO1lBQUUsU0FBUztRQUNyRixVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDaEQsVUFBVSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3hDLFVBQVUsQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDeEQsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLFVBQVUsQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztJQUNoRCxDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFFM0QsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNmLFFBQVE7UUFDUixJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN2QixNQUFNLElBQUksU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELFVBQVUsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQy9CLFVBQVUsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUNoQyxJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLEVBQ3pCLE1BQU0sQ0FBQyxVQUFVLENBQ2xCLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELG9CQUFvQjtJQUNwQixNQUFNLGdCQUFnQixHQUF3QixJQUFBLHdCQUFhLEVBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEUsS0FBSztJQUNMLHFCQUFxQjtJQUNyQixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxFQUFFO1NBQ3BELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNULElBQUksSUFBSSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLGlCQUFpQixFQUFFLENBQUM7WUFDOUQsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQztRQUNELDBEQUEwRDtRQUMxRCxPQUFPLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUMsQ0FBQztTQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUViLE9BQU87SUFDUCxNQUFNLFNBQVMsR0FBRyxnQ0FBd0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUQsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLElBQUEsd0JBQVUsRUFBQyxTQUFTLENBQUM7U0FDMUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoRSxLQUFLLENBQUMseUNBQXlDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRixPQUFPLGdCQUFnQixDQUFDO0FBQzFCLENBQUM7QUFoRUQsb0JBZ0VDO0FBRUQsU0FBZ0IsZUFBZTtJQUM3QixPQUFPLElBQUEsd0JBQVUsR0FBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQUZELDBDQUVDO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FBQyxNQUFpQztJQUNyRSxNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7SUFDNUIsSUFBSSxLQUFhLENBQUM7SUFDbEIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLElBQUksS0FBSyxFQUFFLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLFdBQVcsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzlCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFURCwwQ0FTQztBQUVELHFCQUFxQjtBQUNyQiw0RUFBNEU7QUFDNUUsU0FBZ0IsVUFBVSxDQUFDLElBQVk7SUFDckMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0lBQ3RCLE1BQU0sNEJBQTRCLEdBQUcsS0FBSyxDQUFDO0lBQzNDLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLFNBQVMsQ0FDakIsaURBQWlELENBQ2xELENBQUM7SUFDSixDQUFDO0lBRUQsMEZBQTBGO0lBQzFGLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNwQixPQUFPLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsTUFBTSxXQUFXLEdBQUcsS0FBSyxTQUFTLElBQUksQ0FBQztJQUN2Qyw2REFBNkQ7SUFDN0QsZ0RBQWdEO0lBQ2hELGdDQUFnQztJQUNoQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUM5QixvREFBb0QsRUFDcEQsV0FBVyxDQUNaLENBQUM7SUFFRixJQUFJLDRCQUE0QixFQUFFLENBQUM7UUFDakMsT0FBTyxrQ0FBa0MsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELG9GQUFvRjtJQUNwRixtQ0FBbUM7SUFDbkMsT0FBTyxXQUFXO1NBQ2YsT0FBTyxDQUNOLHFFQUFxRSxFQUNyRSxXQUFXLENBQ1o7U0FDQSxXQUFXLEVBQUUsQ0FBQztBQUNuQixDQUFDO0FBbkNELGdDQW1DQztBQUVELFNBQVMsa0NBQWtDLENBQUMsV0FBbUIsRUFBRSxTQUFpQjtJQUNoRixtREFBbUQ7SUFDbkQsa0RBQWtEO0lBQ2xELG9EQUFvRDtJQUNwRCxrREFBa0Q7SUFDbEQsV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQy9CLHVGQUF1RixFQUN2RixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FDdkIsQ0FBQztJQUVGLDRFQUE0RTtJQUM1RSxtREFBbUQ7SUFDbkQsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUN4QixzRUFBc0UsRUFDdEUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLFNBQVMsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQ2pELENBQUM7QUFDSixDQUFDO0FBQ0Qsb0JBQW9CIn0=
import FormStream from 'formstream';
export interface AlipayFormStreamOptions {
/** min chunk size to emit data event */
minChunkSize?: number;
}
export declare class AlipayFormStream extends FormStream {
constructor(options?: AlipayFormStreamOptions);
}

@@ -1,5 +0,11 @@

// import { statSync } from 'node:fs';
import FormStream from 'formstream';
export class AlipayFormStream extends FormStream {
constructor(options) {
super({
// set default minChunkSize to 2MB
minChunkSize: 1024 * 1024 * 2,
...options,
});
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxpcGF5Rm9ybVN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbGlwYXlGb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxPQUFPLFVBQVUsTUFBTSxZQUFZLENBQUM7QUFFcEMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFVBQVU7Q0FPL0MifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxpcGF5Rm9ybVN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbGlwYXlGb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQztBQU9wQyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQUM5QyxZQUFZLE9BQWlDO1FBQzNDLEtBQUssQ0FBQztZQUNKLGtDQUFrQztZQUNsQyxZQUFZLEVBQUUsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDO1lBQzdCLEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiJ9

@@ -0,8 +1,15 @@

/// <reference types="node" resolution-mode="require"/>
/// <reference types="node" resolution-mode="require"/>
import { Readable } from 'node:stream';
export interface IFile {
/** 文件名 */
name: string;
/** 文件路径 */
path: string;
/** 表单字段名 */
fieldName: string;
/** 文件路径 */
path?: string;
/** 文件流 */
stream?: Readable;
/** 文件内容 */
content?: Buffer;
}

@@ -36,5 +43,5 @@ export interface IField {

* @param fileName 文件名
* @param filePath 文件绝对路径
* @param filePath 文件绝对路径,或者文件流,又或者文件内容 Buffer
*/
addFile(fieldName: string, fileName: string, filePath: string): void;
addFile(fieldName: string, fileName: string, filePath: string | Readable | Buffer): void;
}

@@ -1,19 +0,1 @@

// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value) {
if (typeof value !== 'string')
return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s) => { return isJSONString(s); })
.reduce(function (_prev, curr) { return !!curr; });
}
return false;
}
export class AlipayFormData {

@@ -56,12 +38,39 @@ method;

* @param fileName 文件名
* @param filePath 文件绝对路径
* @param filePath 文件绝对路径,或者文件流,又或者文件内容 Buffer
*/
addFile(fieldName, fileName, filePath) {
this.files.push({
const file = {
fieldName,
name: fileName,
path: filePath,
});
};
if (typeof filePath === 'string') {
file.path = filePath;
}
else if (Buffer.isBuffer(filePath)) {
file.content = filePath;
}
else {
file.stream = filePath;
}
this.files.push(file);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdGQUFnRjtBQUNoRixTQUFTLFlBQVksQ0FBQyxLQUFVO0lBQzlCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUM1QixPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQzthQUNsQixPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQzthQUN2QixLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ1gsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUUsR0FBRyxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvQyxNQUFNLENBQUMsVUFBUyxLQUFhLEVBQUUsSUFBWSxJQUFJLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFnQkQsTUFBTSxPQUFPLGNBQWM7SUFDakIsTUFBTSxDQUFTO0lBQ2hCLEtBQUssQ0FBVTtJQUNmLE1BQU0sQ0FBVztJQUV4QjtRQUNFLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNuQyxRQUFRLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqQyxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUVuQzs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxTQUFpQixFQUFFLFVBQWU7UUFDekMsSUFBSSxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUM3QixvQ0FBb0M7WUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2RSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLFNBQWlCLEVBQUUsUUFBZ0IsRUFBRSxRQUFnQjtRQUMzRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztZQUNkLFNBQVM7WUFDVCxJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxRQUFRO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIn0=
// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value) {
if (typeof value !== 'string')
return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s) => { return isJSONString(s); })
.reduce(function (_prev, curr) { return !!curr; });
}
return false;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9CQSxNQUFNLE9BQU8sY0FBYztJQUNqQixNQUFNLENBQVM7SUFDaEIsS0FBSyxDQUFVO0lBQ2YsTUFBTSxDQUFXO0lBRXhCO1FBQ0UsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELFNBQVMsS0FBSyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ25DLFFBQVEsS0FBSyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLFNBQVMsS0FBSyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBRW5DOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxNQUFjO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLFNBQWlCLEVBQUUsVUFBZTtRQUN6QyxJQUFJLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQzdCLG9DQUFvQztZQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsU0FBaUIsRUFBRSxRQUFnQixFQUFFLFFBQW9DO1FBQy9FLE1BQU0sSUFBSSxHQUFVO1lBQ2xCLFNBQVM7WUFDVCxJQUFJLEVBQUUsUUFBUTtTQUNmLENBQUM7UUFDRixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ3ZCLENBQUM7YUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztRQUMxQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLENBQUM7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0Y7QUFFRCxnRkFBZ0Y7QUFDaEYsU0FBUyxZQUFZLENBQUMsS0FBVTtJQUM5QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVE7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUM1QyxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM5QixPQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7YUFDNUIsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7YUFDbEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUM7YUFDdkIsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLEdBQUcsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLEdBQUcsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL0MsTUFBTSxDQUFDLFVBQVMsS0FBYSxFQUFFLElBQVksSUFBSSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIn0=

@@ -107,3 +107,3 @@ import { debuglog } from 'node:util';

.update(signString, 'utf8').sign(config.privateKey, 'base64');
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, sign);
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, decamelizeParams.sign);
return decamelizeParams;

@@ -161,2 +161,2 @@ }

/* c8 ignore stop */
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLGFBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLFFBQVEsTUFBTSxXQUFXLENBQUM7QUFHakMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFFMUMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7SUFDdEMsR0FBRyxFQUFFLFVBQVU7SUFDZixJQUFJLEVBQUUsWUFBWTtDQUNuQixDQUFDO0FBRUYsMEZBQTBGO0FBQzFGLDBEQUEwRDtBQUMxRCxzSEFBc0g7QUFDdEgsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsTUFBYztJQUM5QixPQUFPO1FBQ0wsRUFBRSxFQUFFLEVBQUU7UUFDTixHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztLQUN2QyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsU0FBaUIsRUFBRSxNQUFjO0lBQzlELE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFB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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN6QyxPQUFPLGFBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLFFBQVEsTUFBTSxXQUFXLENBQUM7QUFHakMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFFMUMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7SUFDdEMsR0FBRyxFQUFFLFVBQVU7SUFDZixJQUFJLEVBQUUsWUFBWTtDQUNuQixDQUFDO0FBRUYsMEZBQTBGO0FBQzFGLDBEQUEwRDtBQUMxRCxzSEFBc0g7QUFDdEgsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsTUFBYztJQUM5QixPQUFPO1FBQ0wsRUFBRSxFQUFFLEVBQUU7UUFDTixHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztLQUN2QyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsU0FBaUIsRUFBRSxNQUFjO0lBQzlELE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFB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
{
"name": "alipay-sdk",
"version": "4.5.1",
"version": "4.6.0",
"engines": {

@@ -27,3 +27,3 @@ "node": ">=18.0.0"

"crypto-js": "^4.2.0",
"formstream": "^1.4.0",
"formstream": "^1.5.0",
"snakecase-keys": "^8.0.0",

@@ -30,0 +30,0 @@ "sse-decoder": "^1.0.0",

@@ -169,2 +169,54 @@ # Alipay OpenAPI SDK

#### 上传文件流
```ts
import fs from 'node:fs';
import { AlipayFormData } from 'alipay-sdk';
const form = new AlipayFormData();
form.addFile('file_content', '图片.jpg', fs.createReadStream('/path/to/test-file'));
const uploadResult = await alipaySdk.curl<{
file_id: string;
}>('POST', '/v3/alipay/open/file/upload', {
form,
body: {
biz_code: 'openpt_appstore',
},
});
console.log(uploadResult);
// {
// data: { file_id: 'A*7Cr9T6IAAC4AAAAAAAAAAAAAATcnAA' },
// responseHttpStatus: 200,
// traceId: '06033316171731110716358764348'
// }
```
#### 上传文件内容
```ts
import fs from 'node:fs';
import { AlipayFormData } from 'alipay-sdk';
const form = new AlipayFormData();
form.addFile('file_content', '图片.jpg', fs.readFileSync('/path/to/test-file'));
const uploadResult = await alipaySdk.curl<{
file_id: string;
}>('POST', '/v3/alipay/open/file/upload', {
form,
body: {
biz_code: 'openpt_appstore',
},
});
console.log(uploadResult);
// {
// data: { file_id: 'A*7Cr9T6IAAC4AAAAAAAAAAAAAATcnAA' },
// responseHttpStatus: 200,
// traceId: '06033316171731110716358764348'
// }
```
### pageExecute 示例代码

@@ -171,0 +223,0 @@

@@ -374,3 +374,9 @@ import { debuglog } from 'node:util';

for (const item of options.form.files) {
form.file(item.fieldName, item.path, item.name);
if (item.path) {
form.file(item.fieldName, item.path, item.name);
} else if (item.content) {
form.buffer(item.fieldName, item.content, item.name);
} else if (item.stream) {
form.stream(item.fieldName, item.stream, item.name);
}
}

@@ -508,7 +514,6 @@ } else if (options.form instanceof AlipayFormStream) {

// 文件上传
async #multipartExec(method: string, options: IRequestOption = {}): Promise<AlipaySdkCommonResult> {
async #multipartExec(method: string, options: IRequestOption): Promise<AlipaySdkCommonResult> {
const config = this.config;
let signParams = {} as Record<string, string>;
let formData = {} as { [key: string]: string | object };
const formFiles = {} as { [key: string]: string };
let formData = {} as Record<string, string>;
options.formData!.getFields().forEach(field => {

@@ -526,2 +531,7 @@ // formData 的字段类型应为 string。(兼容 null)

formData = snakeCaseKeys(formData);
const formStream = new AlipayFormStream();
for (const k in formData) {
formStream.field(k, formData[k]);
}
options.formData!.getFiles().forEach(file => {

@@ -531,4 +541,21 @@ // 文件名需要转换驼峰为下划线

// 单独处理文件类型
formFiles[fileKey] = file.path;
if (file.path) {
formStream.file(fileKey, file.path, file.name);
} else if (file.stream) {
formStream.stream(fileKey, file.stream, file.name);
} else if (file.content) {
formStream.buffer(fileKey, file.content, file.name);
}
});
const requestOptions: RequestOptions = {
method: 'POST',
dataType: 'text',
timeout: config.timeout,
headers: {
'user-agent': this.version,
accept: 'application/json',
...formStream.headers(),
},
content: new Readable().wrap(formStream as any),
};
// 计算签名

@@ -543,9 +570,3 @@ const signData = sign(method, signParams, config);

try {
httpResponse = await urllib.request(url, {
timeout: config.timeout,
headers: { 'user-agent': this.version },
files: formFiles,
data: formData,
dataType: 'text',
});
httpResponse = await urllib.request(url, requestOptions);
} catch (err: any) {

@@ -552,0 +573,0 @@ debug('HttpClient Request error: %s', err);

@@ -1,11 +0,16 @@

// import { statSync } from 'node:fs';
import FormStream from 'formstream';
export interface AlipayFormStreamOptions {
/** min chunk size to emit data event */
minChunkSize?: number;
}
export class AlipayFormStream extends FormStream {
// 覆盖 file 方法,由于 OpenAPI 文件上传需要强制设置 content-length,所以需要增加一次同步文件 io 来实现此功能
// https://github.com/node-modules/formstream/blob/master/lib/formstream.js#L119
// file(name: string, filepath: string, filename: string) {
// const size = statSync(filepath).size;
// return super.file(name, filepath, filename, size);
// }
constructor(options?: AlipayFormStreamOptions) {
super({
// set default minChunkSize to 2MB
minChunkSize: 1024 * 1024 * 2,
...options,
});
}
}

@@ -1,27 +0,14 @@

// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value: any) {
if (typeof value !== 'string') return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
import { Readable } from 'node:stream';
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s: string) => { return isJSONString(s); })
.reduce(function(_prev: string, curr: string) { return !!curr; });
}
return false;
}
export interface IFile {
/** 文件名 */
name: string;
/** 文件路径 */
path: string;
/** 表单字段名 */
fieldName: string;
/** 文件路径 */
path?: string;
/** 文件流 */
stream?: Readable;
/** 文件内容 */
content?: Buffer;
}

@@ -75,11 +62,37 @@

* @param fileName 文件名
* @param filePath 文件绝对路径
* @param filePath 文件绝对路径,或者文件流,又或者文件内容 Buffer
*/
addFile(fieldName: string, fileName: string, filePath: string) {
this.files.push({
addFile(fieldName: string, fileName: string, filePath: string | Readable | Buffer) {
const file: IFile = {
fieldName,
name: fileName,
path: filePath,
});
};
if (typeof filePath === 'string') {
file.path = filePath;
} else if (Buffer.isBuffer(filePath)) {
file.content = filePath;
} else {
file.stream = filePath;
}
this.files.push(file);
}
}
// forked form https://github.com/joaquimserafim/is-json/blob/master/index.js#L6
function isJSONString(value: any) {
if (typeof value !== 'string') return false;
value = value.replace(/\s/g, '').replace(/\n|\r/, '');
if (/^\{(.*?)\}$/.test(value)) {
return /"(.*?)":(.*?)/g.test(value);
}
if (/^\[(.*?)\]$/.test(value)) {
return value.replace(/^\[/, '')
.replace(/\]$/, '')
.replace(/},{/g, '}\n{')
.split(/\n/)
.map((s: string) => { return isJSONString(s); })
.reduce(function(_prev: string, curr: string) { return !!curr; });
}
return false;
}

@@ -124,3 +124,3 @@ import { debuglog } from 'node:util';

.update(signString, 'utf8').sign(config.privateKey, 'base64');
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, sign);
debug('algorithm: %s, signString: %o, sign: %o', algorithm, signString, decamelizeParams.sign);
return decamelizeParams;

@@ -127,0 +127,0 @@ }

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc