@rc-ex/core 1.1.1 → 1.1.3

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/lib/FormData.d.ts CHANGED
@@ -1,15 +1,10 @@
1
1
  /// <reference types="node" />
2
- /// <reference types="node" />
3
- declare class FormFile {
4
- filename: string;
5
- contentType: string;
6
- content: string | Buffer | Blob | NodeJS.ReadableStream;
7
- constructor(filename: string, contentType: string, content: string | Buffer | Blob | NodeJS.ReadableStream);
8
- }
2
+ import { FormFile } from './types';
9
3
  export declare const boundary = "ad05fc42-a66d-4a94-b807-f1c91136c17b";
10
4
  declare class FormData {
11
5
  files: FormFile[];
12
- append(fileName: string, contentType: string, content: string | Buffer | Blob | NodeJS.ReadableStream): void;
6
+ append(formFile: FormFile): void;
7
+ prepend(formFile: FormFile): void;
13
8
  getBody(): Promise<Buffer>;
14
9
  }
15
10
  export default FormData;
package/lib/FormData.js CHANGED
@@ -1,13 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.boundary = void 0;
4
- class FormFile {
5
- constructor(filename, contentType, content) {
6
- this.filename = filename;
7
- this.contentType = contentType;
8
- this.content = content;
9
- }
10
- }
11
4
  async function stream2buffer(stream) {
12
5
  return new Promise((resolve, reject) => {
13
6
  const buf = Array();
@@ -21,38 +14,39 @@ class FormData {
21
14
  constructor() {
22
15
  this.files = [];
23
16
  }
24
- append(fileName, contentType, content) {
25
- this.files.push(new FormFile(fileName, contentType, content));
17
+ append(formFile) {
18
+ this.files.push(formFile);
19
+ }
20
+ prepend(formFile) {
21
+ this.files.unshift(formFile);
26
22
  }
27
23
  async getBody() {
28
- let formData = Buffer.alloc(0);
24
+ let buffer = Buffer.alloc(0);
29
25
  for (const formFile of this.files) {
30
- const { filename: fileName, contentType, content } = formFile;
31
26
  let temp = `--${exports.boundary}\r\n`;
32
- temp += `Content-Type: ${contentType}\r\n`;
33
- temp += `Content-Disposition: form-data; name="attachment"; filename="${fileName}"\r\n\r\n`;
34
- formData = Buffer.concat([formData, Buffer.from(temp, 'utf-8')]);
27
+ temp += `Content-Type: ${formFile.contentType}\r\n`;
28
+ temp += `Content-Disposition: form-data; name="${formFile.name}"; filename="${formFile.filename}"\r\n\r\n`;
29
+ buffer = Buffer.concat([buffer, Buffer.from(temp, 'utf-8')]);
35
30
  let fileBuffer = Buffer.alloc(0);
36
- if (typeof content === 'string') {
37
- fileBuffer = Buffer.from(`${content}\r\n`, 'utf-8');
31
+ if (typeof formFile.content === 'string') {
32
+ fileBuffer = Buffer.from(`${formFile.content}\r\n`, 'utf-8');
38
33
  }
39
- else if (Buffer.isBuffer(content)) {
40
- fileBuffer = content;
34
+ else if (Buffer.isBuffer(formFile.content)) {
35
+ fileBuffer = formFile.content;
41
36
  }
42
- else if (content instanceof Blob) {
43
- fileBuffer = Buffer.from(await content.arrayBuffer());
37
+ else if (formFile.content instanceof Blob) {
38
+ fileBuffer = Buffer.from(await formFile.content.arrayBuffer());
44
39
  }
45
40
  else {
46
41
  // NodeJS.ReadableStream
47
- fileBuffer = await stream2buffer(content);
42
+ fileBuffer = await stream2buffer(formFile.content);
48
43
  }
49
- formData = Buffer.concat([formData, fileBuffer]);
44
+ buffer = Buffer.concat([buffer, fileBuffer]);
50
45
  }
51
- const payload = Buffer.concat([
52
- formData,
46
+ return Buffer.concat([
47
+ buffer,
53
48
  Buffer.from(`\r\n--${exports.boundary}--\r\n`, 'utf8'),
54
49
  ]);
55
- return payload;
56
50
  }
57
51
  }
58
52
  exports.default = FormData;
@@ -1 +1 @@
1
- {"version":3,"file":"FormData.js","sourceRoot":"","sources":["../src/FormData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormData.js","sourceRoot":"","sources":["../src/FormData.ts"],"names":[],"mappings":";;;AAIA,KAAK,UAAU,aAAa,CAAC,MAAc;IACzC,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,GAAG,GAAG,KAAK,EAAO,CAAC;QACzB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;AACL,CAAC;AAEY,QAAA,QAAQ,GAAG,sCAAsC,CAAC;AAC/D,MAAM,QAAQ;IAAd;QACE,UAAK,GAAe,EAAE,CAAC;IAmCzB,CAAC;IAjCC,MAAM,CAAC,QAAkB;QACvB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,QAAkB;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;YACjC,IAAI,IAAI,GAAG,KAAK,gBAAQ,MAAM,CAAC;YAC/B,IAAI,IAAI,iBAAiB,QAAQ,CAAC,WAAW,MAAM,CAAC;YACpD,IAAI,IAAI,yCAAyC,QAAQ,CAAC,IAAI,gBAAgB,QAAQ,CAAC,QAAQ,WAAW,CAAC;YAC3G,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,EAAE;gBACxC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC;aAC9D;iBAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC5C,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC;aAC/B;iBAAM,IAAI,QAAQ,CAAC,OAAO,YAAY,IAAI,EAAE;gBAC3C,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;aAChE;iBAAM;gBACL,wBAAwB;gBACxB,UAAU,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aACpD;YACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;SAC9C;QACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM;YACN,MAAM,CAAC,IAAI,CAAC,SAAS,gBAAQ,QAAQ,EAAE,MAAM,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;CACF;AAED,kBAAe,QAAQ,CAAC"}
package/lib/Rest.js CHANGED
@@ -7,7 +7,7 @@ const axios_1 = __importDefault(require("axios"));
7
7
  const qs_1 = __importDefault(require("qs"));
8
8
  const FormData_1 = require("./FormData");
9
9
  const RestException_1 = __importDefault(require("./RestException"));
10
- const version = '1.0.0-alpha';
10
+ const version = '1.1.3';
11
11
  class Rest {
12
12
  constructor(options) {
13
13
  var _a, _b, _c, _d, _e;
@@ -73,7 +73,7 @@ class Rest {
73
73
  throw new RestException_1.default(r);
74
74
  }
75
75
  }
76
- exports.default = Rest;
77
76
  Rest.sandboxServer = 'https://platform.devtest.ringcentral.com';
78
77
  Rest.productionServer = 'https://platform.ringcentral.com';
78
+ exports.default = Rest;
79
79
  //# sourceMappingURL=Rest.js.map
package/lib/Rest.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Rest.js","sourceRoot":"","sources":["../src/Rest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Rest.js","sourceRoot":"","sources":["../src/Rest.ts"],"names":[],"mappings":"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"}
package/lib/Utils.js CHANGED
@@ -4,35 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const FormData_1 = __importDefault(require("./FormData"));
7
- // class FormDataBackup {
8
- // readableParts: string[] = [];
9
- // toJSON(): string {
10
- // return this.readableParts.join('\n');
11
- // }
12
- // append(
13
- // key: string,
14
- // value: string | Buffer | Blob | NodeJS.ReadableStream,
15
- // options?: { filename?: string; contentType?: string },
16
- // ): void {
17
- // this.readableParts.push(
18
- // JSON.stringify({
19
- // ...options,
20
- // content: typeof value === 'string' ? value : '<binary data>',
21
- // }),
22
- // );
23
- // if (typeof Blob !== 'undefined') {
24
- // // for browser
25
- // if (typeof value === 'string') {
26
- // // plain text file
27
- // // eslint-disable-next-line no-undef
28
- // value = new Blob([value], { type: options?.contentType });
29
- // }
30
- // super.append(key, value, options?.filename);
31
- // } else {
32
- // super.append(key, value, options);
33
- // }
34
- // }
35
- // }
36
7
  class Utils {
37
8
  static formatTraffic(r) {
38
9
  return `HTTP ${r.status} ${r.statusText}${r.data.message ? ` - ${r.data.message}` : ''}
@@ -65,7 +36,6 @@ class Utils {
65
36
  static getFormData(...objects) {
66
37
  const formData = new FormData_1.default();
67
38
  const obj = Object.assign({}, ...objects);
68
- const attachments = [];
69
39
  for (const key of Object.keys(obj)) {
70
40
  const value = obj[key];
71
41
  if (value === undefined || value === null) {
@@ -73,18 +43,26 @@ class Utils {
73
43
  continue;
74
44
  }
75
45
  if (Utils.isAttachment(value)) {
76
- attachments.push(value);
46
+ const attachment = value;
47
+ formData.append({
48
+ name: key, filename: attachment.filename, contentType: attachment.contentType, content: attachment.content,
49
+ });
77
50
  delete obj[key];
78
51
  continue;
79
52
  }
80
53
  if (Array.isArray(value) && Utils.isAttachment(value[0])) {
81
- attachments.push(...value);
54
+ for (const attachment of value) {
55
+ formData.append({
56
+ name: key, filename: attachment.filename, contentType: attachment.contentType, content: attachment.content,
57
+ });
58
+ }
82
59
  delete obj[key];
83
60
  }
84
61
  }
85
- formData.append('request.json', 'application/json', JSON.stringify(obj));
86
- for (const attachment of attachments) {
87
- formData.append(attachment.filename, attachment.contentType, attachment.content);
62
+ if (Object.keys(obj).length > 0) {
63
+ formData.prepend({
64
+ name: 'request.json', filename: 'request.json', contentType: 'application/json', content: JSON.stringify(obj),
65
+ });
88
66
  }
89
67
  return formData.getBody();
90
68
  }
package/lib/Utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../src/Utils.ts"],"names":[],"mappings":";;;;;AAAA,0DAAkC;AAKlC,yBAAyB;AACzB,kCAAkC;AAElC,uBAAuB;AACvB,4CAA4C;AAC5C,MAAM;AAEN,YAAY;AACZ,mBAAmB;AACnB,6DAA6D;AAC7D,6DAA6D;AAC7D,cAAc;AACd,+BAA+B;AAC/B,yBAAyB;AACzB,sBAAsB;AACtB,wEAAwE;AACxE,YAAY;AACZ,SAAS;AACT,yCAAyC;AACzC,uBAAuB;AACvB,yCAAyC;AACzC,6BAA6B;AAC7B,+CAA+C;AAC/C,qEAAqE;AACrE,UAAU;AACV,qDAAqD;AACrD,eAAe;AACf,2CAA2C;AAC3C,QAAQ;AACR,MAAM;AACN,IAAI;AAEJ,MAAM,KAAK;IACT,MAAM,CAAC,aAAa,CAAC,CAAe;QAClC,OAAO,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EACpF;;;MAGE,IAAI,CAAC,SAAS,CAChB;YACE,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,EACD,IAAI,EACJ,CAAC,CACF;;;MAGG,IAAI,CAAC,SAAS,CAChB;YACE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;YACvB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;YACzB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG;YACjB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;YACvB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;YACjE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;SAC1B,EACD,IAAI,EACJ,CAAC,CACF;KACE,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAO;QACzB,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;eACpB,GAAG,KAAK,IAAI;eACZ,UAAU,IAAI,GAAG;eACjB,SAAS,IAAI,GAAG,CACpB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAG,OAAa;QACjC,MAAM,QAAQ,GAAG,IAAI,kBAAQ,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAiB,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAClC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;gBACzC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;gBAChB,SAAS;aACV;YACD,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;gBAC7B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACxB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;gBAChB,SAAS;aACV;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBACxD,WAAW,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;gBAC3B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;aACjB;SACF;QACD,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,QAAS,EAAE,UAAU,CAAC,WAAY,EAAE,UAAU,CAAC,OAAQ,CAAC,CAAC;SACrF;QACD,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;CACF;AAED,kBAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../src/Utils.ts"],"names":[],"mappings":"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"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
1
3
  import { AxiosRequestConfig, AxiosResponse, Method } from 'axios';
2
4
  import TokenInfo from './definitions/TokenInfo';
3
5
  export interface RingCentralInterface {
@@ -22,3 +24,9 @@ export type RestOptions = {
22
24
  appVersion?: string;
23
25
  };
24
26
  export type RestMethod = Method;
27
+ export interface FormFile {
28
+ name: string;
29
+ filename: string;
30
+ contentType: string;
31
+ content: string | Buffer | Blob | NodeJS.ReadableStream;
32
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rc-ex/core",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "description": "Core for ringcentral-extensible project",
5
5
  "author": "Tyler Liu <tyler.liu@ringcentral.com>",
6
6
  "homepage": "https://github.com/ringcentral/ringcentral-extensible/tree/master/packages/core",
@@ -30,5 +30,5 @@
30
30
  "scripts": {
31
31
  "generate": "ts-node -r dotenv-override-true/config code-generator.ts"
32
32
  },
33
- "gitHead": "d57e7bbaf8c8718e94c1bc1a8ae5e1299c3677ff"
33
+ "gitHead": "4fee38c887f80fe044d2376ccba72634e5beb32a"
34
34
  }
package/src/FormData.ts CHANGED
@@ -1,18 +1,6 @@
1
1
  import { Stream } from 'stream';
2
2
 
3
- class FormFile {
4
- filename: string;
5
-
6
- contentType: string;
7
-
8
- content: string | Buffer | Blob | NodeJS.ReadableStream;
9
-
10
- constructor(filename: string, contentType: string, content: string | Buffer | Blob | NodeJS.ReadableStream) {
11
- this.filename = filename;
12
- this.contentType = contentType;
13
- this.content = content;
14
- }
15
- }
3
+ import { FormFile } from './types';
16
4
 
17
5
  async function stream2buffer(stream: Stream): Promise<Buffer> {
18
6
  return new Promise<Buffer>((resolve, reject) => {
@@ -27,36 +15,38 @@ export const boundary = 'ad05fc42-a66d-4a94-b807-f1c91136c17b';
27
15
  class FormData {
28
16
  files: FormFile[] = [];
29
17
 
30
- append(fileName: string, contentType: string, content: string | Buffer | Blob | NodeJS.ReadableStream) {
31
- this.files.push(new FormFile(fileName, contentType, content));
18
+ append(formFile: FormFile) {
19
+ this.files.push(formFile);
20
+ }
21
+
22
+ prepend(formFile: FormFile) {
23
+ this.files.unshift(formFile);
32
24
  }
33
25
 
34
26
  async getBody() {
35
- let formData = Buffer.alloc(0);
27
+ let buffer = Buffer.alloc(0);
36
28
  for (const formFile of this.files) {
37
- const { filename: fileName, contentType, content } = formFile;
38
29
  let temp = `--${boundary}\r\n`;
39
- temp += `Content-Type: ${contentType}\r\n`;
40
- temp += `Content-Disposition: form-data; name="attachment"; filename="${fileName}"\r\n\r\n`;
41
- formData = Buffer.concat([formData, Buffer.from(temp, 'utf-8')]);
30
+ temp += `Content-Type: ${formFile.contentType}\r\n`;
31
+ temp += `Content-Disposition: form-data; name="${formFile.name}"; filename="${formFile.filename}"\r\n\r\n`;
32
+ buffer = Buffer.concat([buffer, Buffer.from(temp, 'utf-8')]);
42
33
  let fileBuffer = Buffer.alloc(0);
43
- if (typeof content === 'string') {
44
- fileBuffer = Buffer.from(`${content}\r\n`, 'utf-8');
45
- } else if (Buffer.isBuffer(content)) {
46
- fileBuffer = content;
47
- } else if (content instanceof Blob) {
48
- fileBuffer = Buffer.from(await content.arrayBuffer());
34
+ if (typeof formFile.content === 'string') {
35
+ fileBuffer = Buffer.from(`${formFile.content}\r\n`, 'utf-8');
36
+ } else if (Buffer.isBuffer(formFile.content)) {
37
+ fileBuffer = formFile.content;
38
+ } else if (formFile.content instanceof Blob) {
39
+ fileBuffer = Buffer.from(await formFile.content.arrayBuffer());
49
40
  } else {
50
41
  // NodeJS.ReadableStream
51
- fileBuffer = await stream2buffer(content);
42
+ fileBuffer = await stream2buffer(formFile.content);
52
43
  }
53
- formData = Buffer.concat([formData, fileBuffer]);
44
+ buffer = Buffer.concat([buffer, fileBuffer]);
54
45
  }
55
- const payload = Buffer.concat([
56
- formData,
46
+ return Buffer.concat([
47
+ buffer,
57
48
  Buffer.from(`\r\n--${boundary}--\r\n`, 'utf8'),
58
49
  ]);
59
- return payload;
60
50
  }
61
51
  }
62
52
 
package/src/Rest.ts CHANGED
@@ -13,7 +13,7 @@ import {
13
13
  RestResponse,
14
14
  } from './types';
15
15
 
16
- const version = '1.0.0-alpha';
16
+ const version = '1.1.3';
17
17
 
18
18
  export default class Rest {
19
19
  static sandboxServer = 'https://platform.devtest.ringcentral.com';
package/src/Utils.ts CHANGED
@@ -3,38 +3,6 @@ import FormData from './FormData';
3
3
  import Attachment from './definitions/Attachment';
4
4
  import { RestResponse } from './types';
5
5
 
6
- // class FormDataBackup {
7
- // readableParts: string[] = [];
8
-
9
- // toJSON(): string {
10
- // return this.readableParts.join('\n');
11
- // }
12
-
13
- // append(
14
- // key: string,
15
- // value: string | Buffer | Blob | NodeJS.ReadableStream,
16
- // options?: { filename?: string; contentType?: string },
17
- // ): void {
18
- // this.readableParts.push(
19
- // JSON.stringify({
20
- // ...options,
21
- // content: typeof value === 'string' ? value : '<binary data>',
22
- // }),
23
- // );
24
- // if (typeof Blob !== 'undefined') {
25
- // // for browser
26
- // if (typeof value === 'string') {
27
- // // plain text file
28
- // // eslint-disable-next-line no-undef
29
- // value = new Blob([value], { type: options?.contentType });
30
- // }
31
- // super.append(key, value, options?.filename);
32
- // } else {
33
- // super.append(key, value, options);
34
- // }
35
- // }
36
- // }
37
-
38
6
  class Utils {
39
7
  static formatTraffic(r: RestResponse): string {
40
8
  return `HTTP ${r.status} ${r.statusText}${r.data.message ? ` - ${r.data.message}` : ''
@@ -80,7 +48,6 @@ class Utils {
80
48
  static getFormData(...objects: {}[]): Promise<Buffer> {
81
49
  const formData = new FormData();
82
50
  const obj = Object.assign({}, ...objects);
83
- const attachments: Attachment[] = [];
84
51
  for (const key of Object.keys(obj)) {
85
52
  const value = obj[key];
86
53
  if (value === undefined || value === null) {
@@ -88,18 +55,26 @@ class Utils {
88
55
  continue;
89
56
  }
90
57
  if (Utils.isAttachment(value)) {
91
- attachments.push(value);
58
+ const attachment = value as Attachment;
59
+ formData.append({
60
+ name: key, filename: attachment.filename!, contentType: attachment.contentType!, content: attachment.content!,
61
+ });
92
62
  delete obj[key];
93
63
  continue;
94
64
  }
95
65
  if (Array.isArray(value) && Utils.isAttachment(value[0])) {
96
- attachments.push(...value);
66
+ for (const attachment of value) {
67
+ formData.append({
68
+ name: key, filename: attachment.filename!, contentType: attachment.contentType!, content: attachment.content!,
69
+ });
70
+ }
97
71
  delete obj[key];
98
72
  }
99
73
  }
100
- formData.append('request.json', 'application/json', JSON.stringify(obj));
101
- for (const attachment of attachments) {
102
- formData.append(attachment.filename!, attachment.contentType!, attachment.content!);
74
+ if (Object.keys(obj).length > 0) {
75
+ formData.prepend({
76
+ name: 'request.json', filename: 'request.json', contentType: 'application/json', content: JSON.stringify(obj),
77
+ });
103
78
  }
104
79
  return formData.getBody();
105
80
  }
package/src/types.ts CHANGED
@@ -56,3 +56,10 @@ export type RestOptions = {
56
56
  };
57
57
 
58
58
  export type RestMethod = Method;
59
+
60
+ export interface FormFile {
61
+ name: string;
62
+ filename: string;
63
+ contentType: string;
64
+ content: string | Buffer | Blob | NodeJS.ReadableStream;
65
+ }