Skip to content

feat: upload PDF/PPTX slides with lectures - #4

Merged
fUS1ONd merged 1 commit into
devfrom
feat/document-slides-upload
Jul 26, 2026
Merged

feat: upload PDF/PPTX slides with lectures#4
fUS1ONd merged 1 commit into
devfrom
feat/document-slides-upload

Conversation

@fUS1ONd

@fUS1ONd fUS1ONd commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Что изменено

  • чекбокс презентации теперь раскрывает выбор PDF/PPTX в режимах локального файла и YouTube/X URL;
  • выбранный документ валидируется на клиенте и сервере (формат, непустой файл, лимит 100 МБ);
  • /upload/confirm и /upload/youtube принимают multipart и передают презентацию в актуальное поле core API slides;
  • CoreClient.CreateTask поддерживает filename/content документа и формирует корректную multipart file part;
  • сохранена обратная совместимость обработчиков с прежними urlencoded-запросами без презентации;
  • обновлены шаблоны, CSS, README и контрактные/unit/UI тесты.

Почему

Раньше has_pdf не показывал поле загрузки и не передавал документ в core. Более того, он превращался в no_slides=true, поэтому задача запускалась вообще без слайдов.

По актуальному API core приложенный документ имеет приоритет над извлечением кадров из видео. Поэтому при наличии slides веб не отправляет no_slides=true: этот флаг отключил бы и сам DocumentSlideProvider.

Пользовательский эффект

Пользователь может приложить PDF или PPTX к загруженному аудио/видео либо к YouTube/X ссылке. Презентация доходит до core и может обрабатываться текущим или обновлённым matcher-ом без изменений веб-контракта.

Проверки

  • node --check internal/web/static/js/upload.js
  • make gen-check после commit
  • go build ./...
  • go vet ./...
  • go test -count=1 ./...
  • git diff --check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant