From 2db252f97f7e2be8efdbc1e15c8052d1ab75f6cc Mon Sep 17 00:00:00 2001 From: Nevo David Date: Wed, 13 Aug 2025 22:01:20 +0700 Subject: [PATCH] feat: youtube upload can't have concurrency as it can be a long request --- .../src/integrations/social.abstract.ts | 13 ++++++++++--- .../src/integrations/social/youtube.provider.ts | 3 ++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/libraries/nestjs-libraries/src/integrations/social.abstract.ts b/libraries/nestjs-libraries/src/integrations/social.abstract.ts index 0b4d26b1..b0ef5670 100644 --- a/libraries/nestjs-libraries/src/integrations/social.abstract.ts +++ b/libraries/nestjs-libraries/src/integrations/social.abstract.ts @@ -38,11 +38,17 @@ export abstract class SocialAbstract { d: { query: string }, id: string, integration: Integration - ): Promise<{ id: string; label: string; image: string, doNotCache?: boolean }[] | { none: true }> { + ): Promise< + | { id: string; label: string; image: string; doNotCache?: boolean }[] + | { none: true } + > { return { none: true }; } - async runInConcurrent(func: (...args: any[]) => Promise) { + async runInConcurrent( + func: (...args: any[]) => Promise, + ignoreConcurrency?: boolean + ) { const value = await concurrency( this.identifier, this.maxConcurrentJob, @@ -54,7 +60,8 @@ export abstract class SocialAbstract { const handle = this.handleErrors(JSON.stringify(err)); return { err: true, ...(handle || {}) }; } - } + }, + ignoreConcurrency ); if (value && value?.err && value?.value) { diff --git a/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts b/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts index 7b6e6fcf..93caff82 100644 --- a/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts +++ b/libraries/nestjs-libraries/src/integrations/social/youtube.provider.ts @@ -222,7 +222,8 @@ export class YoutubeProvider extends SocialAbstract implements SocialProvider { media: { body: response.data, }, - }) + }), + true ); if (settings?.thumbnail?.path) {