add thumb for all videos #11

Merged
Semion120 merged 10 commits from main into main 2022-03-03 02:09:10 +00:00
Semion120 commented 2022-02-04 21:04:18 +00:00 (Migrated from github.com)

Добавил создание и обработку превьюх для видосов, проверил на 15 видосах все ок работает

Добавил создание и обработку превьюх для видосов, проверил на 15 видосах все ок работает
backmeupplz (Migrated from github.com) requested changes 2022-02-04 21:12:41 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-04 21:10:19 +00:00

Наверное, нужно сделать await у sharp? Не мешай async/await и then/catch

Наверное, нужно сделать `await` у `sharp`? Не мешай async/await и then/catch
backmeupplz (Migrated from github.com) commented 2022-02-04 21:10:43 +00:00

Что, если картинка длинная или высокая? Все равно ресайзнится до 320х320 квадрата?

Что, если картинка длинная или высокая? Все равно ресайзнится до 320х320 квадрата?
backmeupplz (Migrated from github.com) commented 2022-02-04 21:11:28 +00:00

Не сокращай названия переменных

Не сокращай названия переменных
backmeupplz (Migrated from github.com) commented 2022-02-04 21:11:45 +00:00

Что, если тут thumbUrl все еще ''?

Что, если тут `thumbUrl` все еще `''`?
backmeupplz (Migrated from github.com) commented 2022-02-04 21:12:15 +00:00

Сделай путь через uuid, не занимайся хаками с url

Сделай путь через `uuid`, не занимайся хаками с url
backmeupplz (Migrated from github.com) commented 2022-02-04 21:12:35 +00:00

Либо async/await, либо then/catch, не мешай их

Либо async/await, либо then/catch, не мешай их
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:15:22 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:15:22 +00:00

Да, он автоматом обрезает если что. Почти все превьхи идут альбомной ориентации.

Да, он автоматом обрезает если что. Почти все превьхи идут альбомной ориентации.
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:17:53 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:17:53 +00:00

превьюхи не будет наверное, либо отлетит ошибка
Просто то что я проверял, везде находил хоть какую то превьюху
Что тут следует сделать?

превьюхи не будет наверное, либо отлетит ошибка Просто то что я проверял, везде находил хоть какую то превьюху Что тут следует сделать?
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:21:41 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:21:41 +00:00

сделал

сделал
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:21:54 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:21:54 +00:00

поправил

поправил
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:22:56 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:22:56 +00:00

сделал

сделал
Semion120 (Migrated from github.com) reviewed 2022-02-05 12:32:28 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-05 12:32:28 +00:00

Сделал везде через uuid в thumbnail

Сделал везде через uuid в thumbnail
Semion120 (Migrated from github.com) reviewed 2022-02-06 11:16:08 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-06 11:16:08 +00:00

думаешь добавить обработку какую то? Или просто без превьюхи отправлять?

думаешь добавить обработку какую то? Или просто без превьюхи отправлять?
Semion120 (Migrated from github.com) reviewed 2022-02-07 15:51:52 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-07 15:51:52 +00:00

Может сделать заглушку, типо если превьюха не загрузилась - сделать дефолтную картиночку?

Может сделать заглушку, типо если превьюха не загрузилась - сделать дефолтную картиночку?
backmeupplz (Migrated from github.com) reviewed 2022-02-07 19:45:08 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-07 19:45:07 +00:00

Сделать проверку на ''

Сделать проверку на `''`
backmeupplz (Migrated from github.com) requested changes 2022-02-09 15:05:44 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-09 15:00:34 +00:00

В JS почти никогда не нужно использовать ==. Используй ===

В JS почти никогда не нужно использовать `==`. Используй `===`
backmeupplz (Migrated from github.com) commented 2022-02-09 15:01:11 +00:00

Здесь можно упростить до if (!thumbnailUrl)

Здесь можно упростить до `if (!thumbnailUrl)`
backmeupplz (Migrated from github.com) commented 2022-02-09 15:01:43 +00:00

Это всегда будет jpeg?

Это всегда будет `jpeg`?
backmeupplz (Migrated from github.com) commented 2022-02-09 15:02:35 +00:00

Почему 4 минуты? Что, если видео короче 4 минут?

Почему 4 минуты? Что, если видео короче 4 минут?
backmeupplz (Migrated from github.com) commented 2022-02-09 15:03:22 +00:00

Этому файлу тоже нужно сделать unlink. Не оставляй лишние файлы в системе.

Этому файлу тоже нужно сделать `unlink`. Не оставляй лишние файлы в системе.
backmeupplz (Migrated from github.com) commented 2022-02-09 15:04:09 +00:00

Почему id опционален?

Почему `id` опционален?
backmeupplz (Migrated from github.com) commented 2022-02-09 15:04:32 +00:00

Если id пустой, то тут получится some/path/undefined

Если id пустой, то тут получится `some/path/undefined`
backmeupplz (Migrated from github.com) commented 2022-02-09 15:05:33 +00:00

Обрезает или делает fit в 320х320? Если моя картинка 640x320, то какого размера получится после конверсии thumbnail?

Обрезает или делает fit в 320х320? Если моя картинка 640x320, то какого размера получится после конверсии thumbnail?
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:17:02 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:17:01 +00:00

Он делает на выходе изображение 320-320. То есть он и обрезает и масштабирует по необходимости

Он делает на выходе изображение 320-320. То есть он и обрезает и масштабирует по необходимости
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:17:54 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:17:54 +00:00

да, потому что это вывод у либы такой будет. Она будет выводить в нужном для нас формате

да, потому что это вывод у либы такой будет. Она будет выводить в нужном для нас формате
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:18:27 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:18:27 +00:00

если видео короче 4 минут обычно превьюха не ставится, а начинается автовоспроизведение

если видео короче 4 минут обычно превьюха не ставится, а начинается автовоспроизведение
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:18:47 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:18:47 +00:00

просто когда у меня без времени стояло - то порой в превью попадал черный экран

просто когда у меня без времени стояло - то порой в превью попадал черный экран
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:19:21 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:19:20 +00:00

могу поставить 2 минуты
Я не знаю какое в среднем время качают через бота

могу поставить 2 минуты Я не знаю какое в среднем время качают через бота
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:20:54 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:20:53 +00:00

Любой из них удаляется через unlink в downloadUrl

Любой из них удаляется через unlink в downloadUrl
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:22:06 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:22:06 +00:00

return что в случае своей превьюхи что в случае скачки в основном файле виден как thumb, по итогу в анлинке он и будет удален

return что в случае своей превьюхи что в случае скачки в основном файле виден как thumb, по итогу в анлинке он и будет удален
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:22:31 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:22:31 +00:00

image

![image](https://user-images.githubusercontent.com/71780642/153231952-555bc989-e2e5-4826-860f-7bd01470a485.png)
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:23:06 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:23:06 +00:00

вот, удаляется thumb. По сути нам не важно из какого ретерн приходит сюда путь

вот, удаляется thumb. По сути нам не важно из какого ретерн приходит сюда путь
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:24:50 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:24:50 +00:00

Приянл

Приянл
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:24:58 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:24:58 +00:00

Принял, будет обязателен

Принял, будет обязателен
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:25:42 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:25:42 +00:00

принял

принял
Semion120 (Migrated from github.com) reviewed 2022-02-09 15:26:14 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-09 15:26:13 +00:00

принял, постараюсь не забыть

принял, постараюсь не забыть
backmeupplz (Migrated from github.com) requested changes 2022-02-09 15:35:42 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-09 15:34:26 +00:00

Это удаляется файл по путю с L38. Файл, который качается тут на L36 имеет другой путь — и он остается

Это удаляется файл по путю с `L38`. Файл, который качается тут на `L36` имеет другой путь — и он остается
backmeupplz (Migrated from github.com) commented 2022-02-09 15:34:36 +00:00

Нужно сделать contain, а не cover

Нужно сделать contain, а не cover
backmeupplz (Migrated from github.com) commented 2022-02-09 15:35:21 +00:00

У меня везде автовоспроизведение выключено. Что буду видеть я на видосах короче 4 минут? Проверь.

У меня везде автовоспроизведение выключено. Что буду видеть я на видосах короче 4 минут? Проверь.
backmeupplz (Migrated from github.com) requested changes 2022-02-11 16:29:00 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
"@typegoose/typegoose": "^9.3.1",
"envalid": "^7.2.2",
"fluent-ffmpeg": "^2.1.2",
backmeupplz (Migrated from github.com) commented 2022-02-11 16:24:05 +00:00

Нужны и ffmpeg-static, и fluent-ffmpeg? Или только один?

Нужны и `ffmpeg-static`, и `fluent-ffmpeg`? Или только один?
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-11 16:25:22 +00:00

У нас, вроде как, есть функция-обертка для unlinkSync, которая делает try/catch, используй ее

У нас, вроде как, есть функция-обертка для `unlinkSync`, которая делает `try/catch`, используй ее
backmeupplz (Migrated from github.com) commented 2022-02-11 16:25:53 +00:00

Здесь надо делать resolve, как и в других местах с tempDir

Здесь надо делать `resolve`, как и в других местах с `tempDir`
backmeupplz (Migrated from github.com) commented 2022-02-11 16:26:42 +00:00

Тебе не нужно делать return await

Тебе не нужно делать `return await`
backmeupplz (Migrated from github.com) commented 2022-02-11 16:27:13 +00:00

А что, если нет data.format.duration? Кинь ошибку

А что, если нет `data.format.duration`? Кинь ошибку
backmeupplz (Migrated from github.com) commented 2022-02-11 16:28:11 +00:00

Тебе не нужно тут указывать возвращаемый тип, тебе нужно на L62 сделать Promise<string>

Тебе не нужно тут указывать возвращаемый тип, тебе нужно на `L62` сделать `Promise<string>`
backmeupplz (Migrated from github.com) commented 2022-02-11 16:28:52 +00:00

Это дикие хаки. Найди способ использовать библиотеку, которая форматирует количество секунд в строку часов, минут и секунд

Это дикие хаки. Найди способ использовать библиотеку, которая форматирует количество секунд в строку часов, минут и секунд
Semion120 (Migrated from github.com) reviewed 2022-02-12 08:33:46 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 08:33:46 +00:00

зато считает точно XD, есть библиотека для этого как раз momentjs. Тогда ее попробую

зато считает точно XD, есть библиотека для этого как раз momentjs. Тогда ее попробую
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:05:05 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
"@typegoose/typegoose": "^9.3.1",
"envalid": "^7.2.2",
"fluent-ffmpeg": "^2.1.2",
Semion120 (Migrated from github.com) commented 2022-02-12 09:05:05 +00:00

они используются в разных библиотеках. fluent - показывает длительность видео, static - выдает путь до папки с ffmpeg для либы которая создает превьюхи

они используются в разных библиотеках. fluent - показывает длительность видео, static - выдает путь до папки с ffmpeg для либы которая создает превьюхи
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:05:16 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
"@typegoose/typegoose": "^9.3.1",
"envalid": "^7.2.2",
"fluent-ffmpeg": "^2.1.2",
Semion120 (Migrated from github.com) commented 2022-02-12 09:05:15 +00:00

Лучше оставить оба?

Лучше оставить оба?
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:13:59 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 09:13:58 +00:00

Эта обертка находится в доке downloadUrl, мне сделать чтобы главная функция возвращала помимо пути к превью еще и путь к файлу на удалению? Или может проще сделать в этом файле try/catch?

Эта обертка находится в доке downloadUrl, мне сделать чтобы главная функция возвращала помимо пути к превью еще и путь к файлу на удалению? Или может проще сделать в этом файле try/catch?
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:17:12 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 09:17:12 +00:00

понял кажется, сделаю

понял кажется, сделаю
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:17:19 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 09:17:19 +00:00

понял

понял
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:17:31 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 09:17:31 +00:00

окей

окей
Semion120 (Migrated from github.com) reviewed 2022-02-12 09:20:39 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-12 09:20:39 +00:00

понял

понял
backmeupplz (Migrated from github.com) reviewed 2022-02-12 16:32:57 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-12 16:32:57 +00:00

вместо momentjs используй dayjs

вместо `momentjs` используй `dayjs`
backmeupplz (Migrated from github.com) reviewed 2022-02-12 16:33:34 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-12 16:33:34 +00:00

вероятность, что считает точно, ниже, чем если использовать готовое и оттестированное в продакшене решение

вероятность, что считает точно, ниже, чем если использовать готовое и оттестированное в продакшене решение
backmeupplz (Migrated from github.com) reviewed 2022-02-12 16:34:03 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-12 16:34:02 +00:00

Что такое "док"? Файл?

Что такое "док"? Файл?
backmeupplz (Migrated from github.com) reviewed 2022-02-12 16:35:48 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-12 16:35:48 +00:00

У тебя unlinkSync может кинуть exception, если thumbnailPath по какой-то причине не существует. Поэтому unilnkSync нужно обернуть в try/catch. Для этого можно вынести в отдельный файл функцию:

function unlincSyncSafe(path: string) {
  try {
    unlinkSync(path)
  } catch (error) {
    console.error(`Error unlinking ${path}: ${error}`)
  }
}
У тебя `unlinkSync` может кинуть exception, если `thumbnailPath` по какой-то причине не существует. Поэтому `unilnkSync` нужно обернуть в `try/catch`. Для этого можно вынести в отдельный файл функцию: ```typescript function unlincSyncSafe(path: string) { try { unlinkSync(path) } catch (error) { console.error(`Error unlinking ${path}: ${error}`) } } ```
backmeupplz (Migrated from github.com) reviewed 2022-02-12 16:36:02 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
"@typegoose/typegoose": "^9.3.1",
"envalid": "^7.2.2",
"fluent-ffmpeg": "^2.1.2",
backmeupplz (Migrated from github.com) commented 2022-02-12 16:36:01 +00:00

Лучше использовать один, если возможно

Лучше использовать один, если возможно
backmeupplz (Migrated from github.com) requested changes 2022-02-15 15:29:17 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
backmeupplz (Migrated from github.com) commented 2022-02-15 15:21:17 +00:00

Не забывай типы убирать

Не забывай типы убирать
@ -66,7 +65,7 @@ export default async function downloadUrl(
const { doc: originalChat } = await findOrCreateChat(
downloadJob.originalChatId
backmeupplz (Migrated from github.com) commented 2022-02-15 15:18:57 +00:00

Не пушь лишние console.log в PR

Не пушь лишние `console.log` в PR
@ -77,3 +76,3 @@
thumb ? new InputFile({ url: thumb }) : undefined
thumb ? new InputFile(thumb) : undefined
)
// Cleanup
backmeupplz (Migrated from github.com) commented 2022-02-15 15:19:25 +00:00

Тут не нужен try/catch, если уже используем небросающий эксепшены unlinkSyncSafe

Тут не нужен `try/catch`, если уже используем небросающий эксепшены `unlinkSyncSafe`
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-02-15 15:22:27 +00:00

Это точно всегда будет jpeg? Точно не другой формат?

Это точно всегда будет `jpeg`? Точно не другой формат?
backmeupplz (Migrated from github.com) commented 2022-02-15 15:22:38 +00:00

Это сделает contain?

Это сделает `contain`?
backmeupplz (Migrated from github.com) commented 2022-02-15 15:24:40 +00:00

Лучше передавать сюда filename, а не uuid

Лучше передавать сюда `filename`, а не `uuid`
backmeupplz (Migrated from github.com) commented 2022-02-15 15:25:11 +00:00

Здесь нужно использовать resolve

Здесь нужно использовать `resolve`
backmeupplz (Migrated from github.com) commented 2022-02-15 15:29:14 +00:00

А еще это будет тот же путь и файл, что на L33 (если ты там тоже укажешь расширение), что приведет к проблемам после L40

А еще это будет тот же путь и файл, что на `L33` (если ты там тоже укажешь расширение), что приведет к проблемам после `L40`
@ -0,0 +1,10 @@
import { unlinkSync } from 'fs'
backmeupplz (Migrated from github.com) commented 2022-02-15 15:19:43 +00:00

Тут лучше report использовать

Тут лучше `report` использовать
backmeupplz (Migrated from github.com) commented 2022-02-15 15:20:26 +00:00

Это все еще используется?

Это все еще используется?
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:50:08 +00:00
@ -66,7 +65,7 @@ export default async function downloadUrl(
const { doc: originalChat } = await findOrCreateChat(
downloadJob.originalChatId
Semion120 (Migrated from github.com) commented 2022-02-16 09:50:08 +00:00

Забыл удалить, прошу прощения

Забыл удалить, прошу прощения
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:51:51 +00:00
@ -77,3 +76,3 @@
thumb ? new InputFile({ url: thumb }) : undefined
thumb ? new InputFile(thumb) : undefined
)
// Cleanup
Semion120 (Migrated from github.com) commented 2022-02-16 09:51:51 +00:00

сделал

сделал
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:51:57 +00:00
@ -0,0 +1,10 @@
import { unlinkSync } from 'fs'
Semion120 (Migrated from github.com) commented 2022-02-16 09:51:57 +00:00

сделал

сделал
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:54:12 +00:00
Semion120 (Migrated from github.com) commented 2022-02-16 09:54:11 +00:00

да в общем то не используется в коде удалю

да в общем то не используется в коде удалю
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:55:36 +00:00
@ -20,6 +20,7 @@
"@grammyjs/runner": "^1.0.3",
Semion120 (Migrated from github.com) commented 2022-02-16 09:55:36 +00:00

убрал

убрал
Semion120 (Migrated from github.com) reviewed 2022-02-16 09:56:36 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-16 09:56:35 +00:00

image
тут написанно ввести паттерн, то есть как я понял - это я выбираю формат на выходе

![image](https://user-images.githubusercontent.com/71780642/154240122-56266588-a870-4a67-8263-5b0526ef1461.png) тут написанно ввести паттерн, то есть как я понял - это я выбираю формат на выходе
Semion120 (Migrated from github.com) reviewed 2022-02-16 10:00:45 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-16 10:00:45 +00:00

нет, я могу тут делать превью без размера и пропустить его через шарп, чтобы сделать contain

нет, я могу тут делать превью без размера и пропустить его через шарп, чтобы сделать contain
Semion120 (Migrated from github.com) reviewed 2022-02-16 10:07:26 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-02-16 10:07:26 +00:00

не очень понял, что тут сделать. Я просто создал сверху переменную filname :)

не очень понял, что тут сделать. Я просто создал сверху переменную filname :)
backmeupplz (Migrated from github.com) requested changes 2022-03-02 21:58:39 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
backmeupplz (Migrated from github.com) commented 2022-03-02 21:54:11 +00:00

Не кидай строку в resolve, которую не будешь использовать. Просто вызови resolve. Может, нужно будет на L55 указать тип возврата промиса типа return new Promise<void>(...

Не кидай строку в `resolve`, которую не будешь использовать. Просто вызови `resolve`. Может, нужно будет на `L55` указать тип возврата промиса типа `return new Promise<void>(...`
backmeupplz (Migrated from github.com) commented 2022-03-02 21:54:42 +00:00

Либо сокращай оба слова (res, rej), либо ни то, ни то (resolve, reject)

Либо сокращай оба слова (`res, rej`), либо ни то, ни то (`resolve, reject`)
backmeupplz (Migrated from github.com) commented 2022-03-02 21:55:22 +00:00

Что за хаки с магическими строками? Почему downloadUrl? Избавься от этого.

Что за хаки с магическими строками? Почему `downloadUrl`? Избавься от этого.
backmeupplz (Migrated from github.com) commented 2022-03-02 21:55:48 +00:00

Если переменную назовешь destFile сразу, то сможешь тут сделать destFile,

Если переменную назовешь `destFile` сразу, то сможешь тут сделать `destFile,`
backmeupplz (Migrated from github.com) commented 2022-03-02 21:56:24 +00:00

Что за хаки с магической строкой -done?

Что за хаки с магической строкой `-done`?
backmeupplz (Migrated from github.com) commented 2022-03-02 21:56:40 +00:00

Этот файл удаляется после?

Этот файл удаляется после?
backmeupplz (Migrated from github.com) commented 2022-03-02 21:56:48 +00:00

Этот файл удаляется после?

Этот файл удаляется после?
@ -16,0 +43,4 @@
const destFile = resolve(tempDir, `${id}`)
const downloader = new TurboDownloader({
url,
destFile,
backmeupplz (Migrated from github.com) commented 2022-03-02 21:58:34 +00:00

Выглядит повтором L34

Выглядит повтором `L34`
upacyxou (Migrated from github.com) reviewed 2022-03-02 21:59:51 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
upacyxou (Migrated from github.com) commented 2022-03-02 21:59:51 +00:00

не обязательно передавать стрелочную функцию в колбек, можешь сделать .on('end', resolve)

не обязательно передавать стрелочную функцию в колбек, можешь сделать ` .on('end', resolve)`
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:14:05 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-03-02 22:14:05 +00:00

Понял, сделал

Понял, сделал
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:14:36 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-03-02 22:14:35 +00:00

Оба сократил, так выглядит аккуратнее

Оба сократил, так выглядит аккуратнее
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:16:17 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-03-02 22:16:17 +00:00

Это я с делал, чтобы отличать какие файлы из какой ветки. Сейчас в этом нет смысла, удалил. Файл удаляется, строка L40

Это я с делал, чтобы отличать какие файлы из какой ветки. Сейчас в этом нет смысла, удалил. Файл удаляется, строка L40
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:17:05 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-03-02 22:17:05 +00:00

Сделал

Сделал
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:27:04 +00:00
@ -16,0 +43,4 @@
const destFile = resolve(tempDir, `${id}`)
const downloader = new TurboDownloader({
url,
destFile,
Semion120 (Migrated from github.com) commented 2022-03-02 22:27:04 +00:00

Это и есть повтор по сути, тут есть 2 ветки: превью из yt-dlp и собственное превью с помощью ffmpeg. Каждая из них обрабатывается в отдельности, поэтому функцию ресайза я вынес отдельно, чтобы использовать в двух местах.

Я могу поменять названия переменных, могу попробовать сделать чтобы ресайз делался в одном месте. типо сначала проходит ветвение, а потом функция сливается обратно в один поток где происходит ресайз и возврат

Это и есть повтор по сути, тут есть 2 ветки: превью из yt-dlp и собственное превью с помощью ffmpeg. Каждая из них обрабатывается в отдельности, поэтому функцию ресайза я вынес отдельно, чтобы использовать в двух местах. Я могу поменять названия переменных, могу попробовать сделать чтобы ресайз делался в одном месте. типо сначала проходит ветвение, а потом функция сливается обратно в один поток где происходит ресайз и возврат
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:27:12 +00:00
@ -1,16 +1,73 @@
import * as sharp from 'sharp'
Semion120 (Migrated from github.com) commented 2022-03-02 22:27:12 +00:00

Сделал

Сделал
backmeupplz (Migrated from github.com) reviewed 2022-03-02 22:36:02 +00:00
@ -16,0 +43,4 @@
const destFile = resolve(tempDir, `${id}`)
const downloader = new TurboDownloader({
url,
destFile,
backmeupplz (Migrated from github.com) commented 2022-03-02 22:36:01 +00:00

Поменяй последовательность таким образом, чтобы resizeThumb вызывался один раз

Поменяй последовательность таким образом, чтобы `resizeThumb` вызывался один раз
Semion120 (Migrated from github.com) reviewed 2022-03-02 22:40:03 +00:00
@ -16,0 +43,4 @@
const destFile = resolve(tempDir, `${id}`)
const downloader = new TurboDownloader({
url,
destFile,
Semion120 (Migrated from github.com) commented 2022-03-02 22:40:02 +00:00

сделал

сделал
Sign in to join this conversation.
No description provided.