Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[feat]: Create `<pf-v6-multiple-file-upload>` element

オープン
#3,023 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
38/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
静か
技術スタック
typescript

調査の方向性

Start by reading .claude/ADVICE.md and the dependent pf-v6-file-upload issue (#2693), then review the PatternFly v6 Multiple file upload design and the repository's existing element structure. Done means the component, demos, public API tests, accessibility snapshots, styling checks, review commands, changeset, and staging/pfv6 targeting satisfy the listed checklist.

索引モデルが issue の本文から書いたものです。

説明

1:1 for dev priority: medium

Summary

Create a <pf-v6-multiple-file-upload> web component implementing the PatternFly v6 Multiple file upload component.

Multi-file upload with drag-and-drop, per-file progress indicators, and file list management.

Prior Art

Source Element Status
PFE v4 -- --
cem -- --
cockpit -- --
chickadee -- --

Requirements

  • MUST implement PFv6 visual designs
  • MUST provide end-user feature parity with @patternfly/react-core MultipleFileUpload
  • MAY adjust element API to leverage web platform strengths
  • SHOULD maintain CSS custom property theming compatibility
  • SHOULD expose useful CSS shadow parts

Element-specific considerations

  • Depends on pf-v6-file-upload (#2693) - port that first
  • <input type="file" multiple> under the hood
  • Sub-components: MultipleFileUploadMain (drop zone), MultipleFileUploadInfo (status text), MultipleFileUploadStatus (file list), MultipleFileUploadStatusItem
  • Drag-and-drop zone shared with single upload; isDragActive state
  • Per-file status item: filename, file size, progress bar, remove button, success/error icon
  • onFileDrop / onFileInputChange events bubble the full FileList
  • Upload progress managed externally (consumer tracks progress per file and updates props)
  • isHorizontal layout variant
  • FACE: formAssociated may not apply here (multi-file forms typically use FormData manually); evaluate whether ElementInternals helps
  • Remove button per file: fires onFileRemove event with filename

Checklist

Implementation
  • API per .claude/ADVICE.md
  • CSS uses v6 tokens, logical properties, nesting
  • @summary and JSDoc on element class
Demos
  • Demos match patternfly.org naming/structure
  • CSS custom properties match computed styles from patternfly.org (Chrome MCP)
  • Visual parity verified via Chrome MCP
Tests
  • Public API covered (attributes, properties, events, slots)
  • a11ySnapshot assertions
Reviews
  • /review-api passes
  • /review-demos passes
  • /review-a11y passes
  • eslint and stylelint pass
Ship
  • Add changeset
  • PR targets staging/pfv6 (NOT main)
主要言語
TypeScript
スター
394
フォーク
107
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

patternfly/patternfly-elements のほかの issue

patternfly/patternfly-elements の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。