From 9474017930d8e594928c9daa4df369ed09f45ac3 Mon Sep 17 00:00:00 2001 From: Adhiraj Singh Date: Thu, 16 Dec 2021 00:38:53 +0530 Subject: [PATCH] feat: async import got wherever required --- src/Socket/messages-send.ts | 4 ++-- src/Utils/messages-media.ts | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Socket/messages-send.ts b/src/Socket/messages-send.ts index 12288df..7ee514b 100644 --- a/src/Socket/messages-send.ts +++ b/src/Socket/messages-send.ts @@ -1,5 +1,4 @@ -import got from "got" import { Boom } from "@hapi/boom" import { SocketConfig, MediaConnInfo, AnyMessageContent, MiscMessageGenerationOptions, WAMediaUploadFunction, MessageRelayOptions } from "../Types" import { encodeWAMessage, generateMessageID, generateWAMessage, encryptSenderKeyMsgSignalProto, encryptSignalProto, extractDeviceJids, jidToSignalProtocolAddress, parseAndInjectE2ESessions } from "../Utils" @@ -421,7 +420,8 @@ export const makeMessagesSocket = (config: SocketConfig) => { } const waUploadToServer: WAMediaUploadFunction = async(stream, { mediaType, fileEncSha256B64, timeoutMs }) => { - // send a query JSON to obtain the url & auth token to upload our media + const { default: got } = await import('got') + // send a query JSON to obtain the url & auth token to upload our media let uploadInfo = await refreshMediaConn(false) let urls: { mediaUrl: string, directPath: string } diff --git a/src/Utils/messages-media.ts b/src/Utils/messages-media.ts index c8d3bdb..50285f3 100644 --- a/src/Utils/messages-media.ts +++ b/src/Utils/messages-media.ts @@ -1,5 +1,6 @@ import type { Logger } from 'pino' import type { IAudioMetadata } from 'music-metadata' +import type { Options, Response } from 'got' import { Boom } from '@hapi/boom' import * as Crypto from 'crypto' import { Readable, Transform } from 'stream' @@ -9,7 +10,6 @@ import { tmpdir } from 'os' import { URL } from 'url' import { join } from 'path' import { once } from 'events' -import got, { Options, Response } from 'got' import { MessageType, WAMessageContent, WAProto, WAGenericMediaMessage, WAMediaUpload, MediaType, DownloadableMessage } from '../Types' import { generateMessageID } from './generics' import { hkdf } from './crypto' @@ -152,7 +152,8 @@ export async function generateThumbnail( return thumbnail } export const getGotStream = async(url: string | URL, options: Options & { isStream?: true } = {}) => { - const fetched = got.stream(url, { ...options, isStream: true }) + const { default: { stream: gotStream }} = await import('got') + const fetched = gotStream(url, { ...options, isStream: true }) await new Promise((resolve, reject) => { fetched.once('error', reject) fetched.once('response', ({ statusCode }: Response) => {