feat: async import got wherever required

This commit is contained in:
Adhiraj Singh
2021-12-16 00:38:53 +05:30
parent ef1b01b6df
commit 9474017930
2 changed files with 5 additions and 4 deletions

View File

@@ -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 }

View File

@@ -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) => {