diff --git a/src/__tests__/helpers.ts b/src/__tests__/helpers.ts index 29ce1d5c..63c1dafe 100644 --- a/src/__tests__/helpers.ts +++ b/src/__tests__/helpers.ts @@ -7,5 +7,5 @@ export async function initInstance(email: string, password: string) : Promise { - return await new PermapostExecutor() + const txId = await new PermapostExecutor() .env(this.config.env, this.config.domain) .auth(this.jwtToken) .contractId(contractId) @@ -60,6 +61,8 @@ export default class AkordApi extends Api { .metadata(JSON.stringify(metadata ? metadata : {})) .tags(tags) .transaction() + Logger.log("Uploaded contract interaction with id: " + txId); + return txId; }; public async postLedgerTransaction(transactions: any): Promise { @@ -75,11 +78,13 @@ export default class AkordApi extends Api { }; public async initContractId(tags: any): Promise { - return await new PermapostExecutor() + const contractId = await new PermapostExecutor() .env(this.config.env, this.config.domain) .auth(this.jwtToken) .tags(tags) .contract() + Logger.log("Created contract with id: " + contractId); + return contractId; }; public async getUserFromEmail(email: string): Promise { @@ -110,7 +115,7 @@ export default class AkordApi extends Api { .progressHook(progressHook) .cancelHook(cancelHook) .uploadFile() - console.log(`File uploaded successfully.`); + Logger.log("Uploaded file with id: " + resource.id); return resource; }; @@ -211,7 +216,8 @@ export default class AkordApi extends Api { }); return response; } catch (err) { - console.log("Error while trying to mutate data", err); + Logger.log("Error while trying to mutate data"); + Logger.log(err); throw Error(JSON.stringify(err)); } }; @@ -257,7 +263,8 @@ export default class AkordApi extends Api { }); return response; } catch (err) { - console.log("Error while trying to query data", err); + Logger.log("Error while trying to query data"); + Logger.log(err); throw new Error(JSON.stringify(err)); } }; diff --git a/src/api/akord/api-authenticator.ts b/src/api/akord/api-authenticator.ts index 2caeb01f..ff70a4ba 100644 --- a/src/api/akord/api-authenticator.ts +++ b/src/api/akord/api-authenticator.ts @@ -2,6 +2,7 @@ import 'cross-fetch/polyfill'; import * as AmazonCognitoIdentity from 'amazon-cognito-identity-js'; import { EnvType } from "../../client-config"; import { awsConfig, AWSConfig } from "./aws-config"; +import { Logger } from '../../logger'; export default class ApiAuthenticator { public config!: AWSConfig; @@ -45,8 +46,9 @@ export default class ApiAuthenticator { resolve({ user: cognitoUser, session: result }) }, onFailure: function (err) { - console.log(err); - return reject; + Logger.log(err.message); + Logger.log(JSON.stringify(err)); + return reject(err.message); } }) } @@ -58,8 +60,9 @@ export default class ApiAuthenticator { return new Promise((resolve, reject) => { user.getUserAttributes(async function (err, result) { if (err) { - console.log(err.message || JSON.stringify(err)); - reject(); + Logger.log(err.message); + Logger.log(JSON.stringify(err)); + reject(err.message); } const attributes = result.reduce(function ( attributesObject, diff --git a/src/client-config.ts b/src/client-config.ts index 0874ff33..9b970c71 100644 --- a/src/client-config.ts +++ b/src/client-config.ts @@ -4,7 +4,8 @@ export interface ClientConfig { env?: EnvType, network?: NetworkType, wallet?: WalletType, - ledgerVersion?: LedgerVersion + ledgerVersion?: LedgerVersion, + debug?: boolean } export enum EnvType { diff --git a/src/logger.ts b/src/logger.ts new file mode 100644 index 00000000..8df06e35 --- /dev/null +++ b/src/logger.ts @@ -0,0 +1,9 @@ +export class Logger { + static debug: boolean = false; + + static log = function (message: any) { + if (this.debug) { + console.debug(message); + } + }; +} \ No newline at end of file diff --git a/src/service/service.ts b/src/service/service.ts index d2fb5e7e..ecb24640 100644 --- a/src/service/service.ts +++ b/src/service/service.ts @@ -20,6 +20,7 @@ import { reactionEmoji, objectTypes } from '../constants'; import { protocolTags } from './protocol/protocol-constants'; import lodash from "lodash"; import { createThumbnail } from './thumbnail' +import { Logger } from '../logger' declare const Buffer; class Service implements ServiceInterface { @@ -305,7 +306,7 @@ class Service implements ServiceInterface { return await filePromise; } } catch (e) { - console.log(e); + Logger.log(e); } } diff --git a/src/service/thumbnail.ts b/src/service/thumbnail.ts index fa18fe4b..e1422503 100644 --- a/src/service/thumbnail.ts +++ b/src/service/thumbnail.ts @@ -1,4 +1,5 @@ import loadImage from 'blueimp-load-image'; +import { Logger } from '../logger'; const pdfjsLib = require("pdfjs-dist/legacy/build/pdf.js"); export const THUMBNAIL_WIDTH = 438 @@ -25,7 +26,8 @@ const makeImageThumbnail = async (fileUrl: any) => { }) image.addEventListener('error', error => { - console.log('Make image thumbnail error', error) + Logger.log('Make image thumbnail error') + Logger.log(error) reject(error) }) }) @@ -38,7 +40,8 @@ const makeVideoThumbnail = async (fileUrl: string) => { video.load() video.addEventListener('error', error => { - console.log('Make video thumbnail error', error) + Logger.log('Make video thumbnail error') + Logger.log(error) reject('Make video thumbnail error: ' + error) }) @@ -103,7 +106,7 @@ export const createThumbnail = async (file: any) => { try { thumbnail = await makePdfThumbnail(fileUrl) } catch (error) { - console.log('PDF thumbnail error: ' + error) + Logger.log('PDF thumbnail error: ' + error) } break case 'image/jpeg': @@ -113,7 +116,7 @@ export const createThumbnail = async (file: any) => { try { thumbnail = await makeImageThumbnail(fileUrl) } catch (error) { - console.log('Image thumbnail error: ' + error) + Logger.log('Image thumbnail error: ' + error) } break case 'video/mp4': @@ -121,11 +124,11 @@ export const createThumbnail = async (file: any) => { try { thumbnail = await makeVideoThumbnail(fileUrl) } catch (error) { - console.log('Video thumbnail error: ' + error) + Logger.log('Video thumbnail error: ' + error) } break default: - console.log('Thumbnail not supported for this file type: ' + file.type) + Logger.log('Thumbnail not supported for this file type: ' + file.type) return null; break }