fix: properly implement saveFile method and write test
This commit is contained in:
+13
-13
@@ -44,10 +44,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsGetPagedAppsResponseType - Converts the ApiResponse to an ApiResponse<GetPagedAppsResponse>.
|
||||
* @method asGetPagedAppsResponseType - Converts the ApiResponse to an ApiResponse<GetPagedAppsResponse>.
|
||||
* @returns {ApiResponse<GetPagedAppsResponse>} - An ApiResponse<GetPagedAppsResponse>.
|
||||
*/
|
||||
public AsGetPagedAppsResponseType(): ApiResponse<GetPagedAppsResponse> {
|
||||
public asGetPagedAppsResponseType(): ApiResponse<GetPagedAppsResponse> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const apps = apiResponse.data.items.map((item: any) => {
|
||||
@@ -70,10 +70,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsAppType - Converts the ApiResponse to an ApiResponse<App>.
|
||||
* @method asAppType - Converts the ApiResponse to an ApiResponse<App>.
|
||||
* @returns {ApiResponse<App>} - An ApiResponse<App>.
|
||||
*/
|
||||
public AsAppType(): ApiResponse<App> {
|
||||
public asAppType(): ApiResponse<App> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const app = new App(
|
||||
@@ -90,10 +90,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsAppCollectionType - Converts the ApiResponse to an ApiResponse<CollectionResponse<App>>.
|
||||
* @method asAppCollectionType - Converts the ApiResponse to an ApiResponse<CollectionResponse<App>>.
|
||||
* @returns {ApiResponse<CollectionResponse<App>>} - An ApiResponse<CollectionResponse<App>>.
|
||||
*/
|
||||
public AsAppCollectionType(): ApiResponse<CollectionResponse<App>> {
|
||||
public asAppCollectionType(): ApiResponse<CollectionResponse<App>> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const apps = apiResponse.data.items.map((item: any) => {
|
||||
@@ -113,10 +113,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsFieldType - Converts the ApiResponse to an ApiResponse<Field>.
|
||||
* @method asFieldType - Converts the ApiResponse to an ApiResponse<Field>.
|
||||
* @returns {ApiResponse<Field>} - An ApiResponse<Field>.
|
||||
*/
|
||||
public AsFieldType(): ApiResponse<Field> {
|
||||
public asFieldType(): ApiResponse<Field> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const field = new Field(
|
||||
@@ -137,10 +137,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsFieldCollectionType - Converts the ApiResponse to an ApiResponse<CollectionResponse<Field>>.
|
||||
* @method asFieldCollectionType - Converts the ApiResponse to an ApiResponse<CollectionResponse<Field>>.
|
||||
* @returns {ApiResponse<CollectionResponse<Field>>} - An ApiResponse<CollectionResponse<Field>>.
|
||||
*/
|
||||
public AsFieldCollectionType(): ApiResponse<CollectionResponse<Field>> {
|
||||
public asFieldCollectionType(): ApiResponse<CollectionResponse<Field>> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const fields = apiResponse.data.items.map((item: any) => {
|
||||
@@ -168,10 +168,10 @@ export class ApiResponse<T> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @method AsGetPagedFieldsResponseType - Converts the ApiResponse to an ApiResponse<GetPagedFieldsResponse>.
|
||||
* @method asGetPagedFieldsResponseType - Converts the ApiResponse to an ApiResponse<GetPagedFieldsResponse>.
|
||||
* @returns {ApiResponse<GetPagedFieldsResponse>} - An ApiResponse<GetPagedFieldsResponse>.
|
||||
*/
|
||||
public AsGetPagedFieldsResponseType(): ApiResponse<GetPagedFieldsResponse> {
|
||||
public asGetPagedFieldsResponseType(): ApiResponse<GetPagedFieldsResponse> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const fields = apiResponse.data.items.map((item: any) => {
|
||||
@@ -201,7 +201,7 @@ export class ApiResponse<T> {
|
||||
);
|
||||
}
|
||||
|
||||
public AsCreatedWithIdResponseType(): ApiResponse<CreatedWithIdResponse> {
|
||||
public asCreatedWithIdResponseType(): ApiResponse<CreatedWithIdResponse> {
|
||||
const apiResponse = this as ApiResponse<any>;
|
||||
|
||||
const createdWithIdResponse = new CreatedWithIdResponse(
|
||||
|
||||
@@ -75,7 +75,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsGetPagedAppsResponseType();
|
||||
return apiResponse.asGetPagedAppsResponseType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -92,7 +92,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsAppType();
|
||||
return apiResponse.asAppType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -110,7 +110,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsAppCollectionType();
|
||||
return apiResponse.asAppCollectionType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -126,7 +126,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsFieldType();
|
||||
return apiResponse.asFieldType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -145,7 +145,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsFieldCollectionType();
|
||||
return apiResponse.asFieldCollectionType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -168,7 +168,7 @@ export class OnspringClient {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsGetPagedFieldsResponseType();
|
||||
return apiResponse.asGetPagedFieldsResponseType();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -180,16 +180,16 @@ export class OnspringClient {
|
||||
request: SaveFileRequest
|
||||
): Promise<ApiResponse<CreatedWithIdResponse>> {
|
||||
const endpoint = EndpointFactory.getSaveFileEndpoint();
|
||||
const formData = request.AsFormData();
|
||||
const formData = request.asFormData();
|
||||
const apiResponse = await this.post<any>(endpoint, formData, {
|
||||
headers: formData.getHeaders(),
|
||||
headers: { 'Content-Type': 'multipart/form-data' },
|
||||
});
|
||||
|
||||
if (apiResponse.isSuccessful === false) {
|
||||
return apiResponse;
|
||||
}
|
||||
|
||||
return apiResponse.AsCreatedWithIdResponseType();
|
||||
return apiResponse.asCreatedWithIdResponseType();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { type Readable } from 'stream';
|
||||
import FormData = require('form-data');
|
||||
|
||||
/**
|
||||
@@ -35,9 +36,9 @@ export class SaveFileRequest {
|
||||
public contentType: string;
|
||||
|
||||
/**
|
||||
* @property {ReadableStream} fileStream - The file stream.
|
||||
* @property {Readable} fileStream - The file stream.
|
||||
*/
|
||||
public fileStream: ReadableStream;
|
||||
public fileStream: Readable;
|
||||
|
||||
/**
|
||||
* @constructor - Creates a new SaveFileRequest.
|
||||
@@ -47,7 +48,7 @@ export class SaveFileRequest {
|
||||
* @param {Date} modifiedDate - The modified date for the file.
|
||||
* @param {string} fileName - The name of the file.
|
||||
* @param {string} contentType - The content type of the file.
|
||||
* @param {ReadableStream} fileStream - The file stream.
|
||||
* @param {Readable} fileStream - The file stream.
|
||||
* @returns {SaveFileRequest} - A new SaveFileRequest.
|
||||
*/
|
||||
constructor(
|
||||
@@ -57,7 +58,7 @@ export class SaveFileRequest {
|
||||
modifiedDate: Date,
|
||||
fileName: string,
|
||||
contentType: string,
|
||||
fileStream: ReadableStream
|
||||
fileStream: Readable
|
||||
) {
|
||||
this.recordId = recordId;
|
||||
this.fieldId = fieldId;
|
||||
@@ -72,7 +73,7 @@ export class SaveFileRequest {
|
||||
* @method AsFormData - Converts the SaveFileRequest to a FormData object.
|
||||
* @returns {FormData} - The SaveFileRequest as a FormData object.
|
||||
*/
|
||||
public AsFormData(): FormData {
|
||||
public asFormData(): FormData {
|
||||
const formData = new FormData();
|
||||
formData.append('recordId', this.recordId.toString());
|
||||
formData.append('fieldId', this.fieldId.toString());
|
||||
|
||||
Reference in New Issue
Block a user