@trayio/cdk-dsl 2.9.0 → 2.11.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/README.md CHANGED
@@ -377,7 +377,15 @@ The previous handler makes a `GET` http request, which is defined by the `http.g
377
377
  - `addQueryString(name, value)`: Adds a query string to the request, the value will be url encoded
378
378
  - `withBodyAsJson(body)`: Adds a body to the request that will be sent as json.
379
379
  - `withBodyAsText(body)`: Adds a body to the request that will be sent as a plain text.
380
- - `withBodyAsFile(FileReference)`: Adds the source file to the request body as binary that will sent to the target server.
380
+ - `withBodyAsMultipart(body)`: Accepts a specific object as body which is then sent as a multipart/form-data body in the request. The `body` input for `withBodyAsMultipart` has the following type:
381
+ ```typescript
382
+ type MultipartBody = {
383
+ fields: Record<string, string>;
384
+ files: Record<string, FileReference>;
385
+ }
386
+ ```
387
+
388
+ - `withBodyAsFile(FileReference)`: Adds the source file to the request body as binary that will sent to the target server. The FileReference input has the following type:
381
389
 
382
390
  ```typescript
383
391
  type FileReference = {
@@ -469,6 +477,32 @@ export const myOperationHandler =
469
477
  );
470
478
  ```
471
479
 
480
+ An example handler for sending multipart/form-data
481
+
482
+ ```typescript
483
+ export const myOperationHandler =
484
+ OperationHandlerSetup.configureHandler<AuthType, InputType, OutputType>((handler) =>
485
+ handler.addInputValidation(...)
486
+ .addOutputValidation(...)
487
+ .usingHttp((http) =>
488
+ http.post('https://someapi.com/someresource')
489
+ .handleRequest((ctx, input, request) =>
490
+ request.withBodyAsMultipart({
491
+ fields: {
492
+ field1: 'Hello World!'
493
+ },
494
+ files: {
495
+ file1: input.file
496
+ }
497
+ }) // where `file` is of type FileReference.
498
+ )
499
+ .handleResponse((ctx, input, response) =>
500
+ response.parseWithBodyAsJson()
501
+ )
502
+ )
503
+ );
504
+ ```
505
+
472
506
  An example handler that can upload a file to a server
473
507
 
474
508
  ```typescript
@@ -752,7 +786,7 @@ handler.usingHttp((http) =>
752
786
 
753
787
  ### An example operation for a file upload.
754
788
 
755
- _(Note: This upload operation is not applicable for multipart/form-data endpoints)_
789
+ _(Note: This upload operation is not applicable for multipart/form-data endpoints; see section below for multipart/form-data)_
756
790
 
757
791
  ```typescript
758
792
  // input.ts
@@ -780,3 +814,45 @@ handler.usingHttp((http) =>
780
814
  )
781
815
  .handleResponse((ctx, input, response) => response.parseWithBodyAsJson())
782
816
  ```
817
+
818
+
819
+ ### An example operation sending files in multipart/form-data
820
+
821
+ ```typescript
822
+ // input.ts
823
+ import { FileReference } from '@trayio/cdk-dsl/dist/connector/operation/OperationHandler';
824
+
825
+ export type UploadFileInput = {
826
+ files: FileReference[];
827
+ };
828
+ ```
829
+
830
+ ```typescript
831
+ // output.ts
832
+ export type UploadFileOutput = {
833
+ success: boolean; // response from the API.
834
+ };
835
+ ```
836
+
837
+ ```typescript
838
+ export const myOperationHandler =
839
+ OperationHandlerSetup.configureHandler<AuthType, InputType, OutputType>((handler) =>
840
+ handler.addInputValidation(...)
841
+ .addOutputValidation(...)
842
+ .usingHttp((http) =>
843
+ http.post('https://someapi.com/someresource')
844
+ .handleRequest((ctx, input, request) =>
845
+ request.withBodyAsMultipart({
846
+ fields: {},
847
+ files: { // where `files` is an array of FileReference.
848
+ file1: input.files[0],
849
+ file2: input.files[1],
850
+ }
851
+ })
852
+ )
853
+ .handleResponse((ctx, input, response) =>
854
+ response.parseWithBodyAsJson()
855
+ )
856
+ )
857
+ );
858
+ ```
@@ -2,7 +2,11 @@ import { HttpContentType, HttpMethod, HttpRequest, HttpHeaderValue, HttpResponse
2
2
  import { DynamicType } from '@trayio/commons/dynamictype/DynamicType';
3
3
  import * as O from 'fp-ts/Option';
4
4
  import { OperationHandlerAuth, OperationHandlerContext, OperationHandlerResult, FileReference } from './OperationHandler';
5
- export type HttpOperationBody = FileReference | string | DynamicType | undefined;
5
+ export type HttpOperationMultipartBody = {
6
+ fields: Record<string, string>;
7
+ files: Record<string, FileReference>;
8
+ };
9
+ export type HttpOperationBody = FileReference | string | DynamicType | HttpOperationMultipartBody | undefined;
6
10
  export declare class HttpOperationRequestBuilder {
7
11
  private readonly path;
8
12
  private readonly method;
@@ -10,6 +14,7 @@ export declare class HttpOperationRequestBuilder {
10
14
  constructor(method: HttpMethod, path: string, request: HttpRequest);
11
15
  withBodyAsJson<T extends DynamicType>(body: T): HttpOperationRequest;
12
16
  withBodyAsText(body: string): HttpOperationRequest;
17
+ withBodyAsMultipart(body: HttpOperationMultipartBody): HttpOperationRequest;
13
18
  withBodyAsFile(file: FileReference): HttpOperationRequest;
14
19
  withoutBody(): HttpOperationRequest;
15
20
  addPathParameter(name: string, value: string): HttpOperationRequestBuilder;
@@ -1 +1 @@
1
- {"version":3,"file":"HttpOperationHandler.d.ts","sourceRoot":"","sources":["../../../src/connector/operation/HttpOperationHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpOperationHandler.d.ts","sourceRoot":"","sources":["../../../src/connector/operation/HttpOperationHandler.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,11 @@ class HttpOperationRequestBuilder {
55
55
  const requestWithHeader = this.addHeader(Http_1.HttpHeader.ContentType, contentType);
56
56
  return new HttpOperationRequest(requestWithHeader.path, requestWithHeader.method, requestWithHeader.request, O.some(contentType), body);
57
57
  }
58
+ withBodyAsMultipart(body) {
59
+ const contentType = Http_1.HttpContentType.MultipartRequestBody;
60
+ const requestWithHeader = this.addHeader(Http_1.HttpHeader.ContentType, contentType);
61
+ return new HttpOperationRequest(requestWithHeader.path, requestWithHeader.method, requestWithHeader.request, O.some(contentType), body);
62
+ }
58
63
  withBodyAsFile(file) {
59
64
  const contentType = Http_1.HttpContentType.OctetStream;
60
65
  const requestWithHeader = this.addHeader(Http_1.HttpHeader.ContentType, contentType);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trayio/cdk-dsl",
3
- "version": "2.9.0",
3
+ "version": "2.11.0",
4
4
  "description": "A DSL for connector development",
5
5
  "exports": {
6
6
  "./*": "./dist/*.js"
@@ -14,7 +14,7 @@
14
14
  "access": "public"
15
15
  },
16
16
  "dependencies": {
17
- "@trayio/commons": "2.9.0"
17
+ "@trayio/commons": "2.11.0"
18
18
  },
19
19
  "typesVersions": {
20
20
  "*": {