Gallery upload accept list excludes BMP that the Help page claims is supported (.pes,.dst,.png,.jpg,.jpeg,.svg — no .bmp); Workspace accepts BMP but Gallery doesn't #148

Closed
opened 2026-10-03 05:45:14 +00:00 by Mark · 1 comment
Owner

Finding

The Gallery's Upload Design file picker accepts only 6 file extensions (.pes, .dst, .png, .jpg, .jpeg, .svg). The Help page's Compatibility FAQ at src/pages/Help.tsx:122 claims:

"ThreadCraft supports PNG, JPG, JPEG, BMP, and SVG files."

BMP is missing from the Gallery's accept list. A user following the Help page's instruction to upload a BMP file will be unable to select one in the file picker (most browsers honor the accept attribute as a filter). The picker only allows the 6 types listed above; BMP is silently excluded.

The Workspace's upload area (CanvasArea) DOES include BMP in its accept attribute (accept="image/png,image/jpeg,image/svg+xml,image/bmp"). So the user can upload a BMP to the Workspace for digitizing, but cannot upload one to the Gallery for archival.

Where

  • Gallery accept: src/pages/Gallery.tsx:493 — accept=".pes,.dst,.png,.jpg,.jpeg,.svg"
  • Help page claim: src/pages/Help.tsx:122
  • Workspace accept (the right shape): src/components/workspace/CanvasArea.tsx:333 — accept="image/png,image/jpeg,image/svg+xml,image/bmp"

Suggested fix shape

Add .bmp to the Gallery's accept list:

-              accept=".pes,.dst,.png,.jpg,.jpeg,.svg"
+              accept=".pes,.dst,.png,.jpg,.jpeg,.svg,.bmp"

Verify the resulting accept string passes validation in the file picker; modern browsers honor .bmp as a valid extension hint. Also: confirm that designFromFile and parseDesignFile (the post-upload pipeline) handle BMP without errors — if either crashes, the upload silently fails even though the picker now shows BMP files.

Severity

Medium. The Help page makes a product claim the Gallery picker can't honor. A user trying to follow the instructions is left confused.

Discovered by

Gap analysis (2026-10-02) of upload affordances.

  • #131 (closed) — parseDesignFile's SVG and PDF parsers were made honest. BMP is the inverse: the parser likely works, but the UI never lets the user try.
## Finding The Gallery's Upload Design file picker accepts only 6 file extensions (`.pes`, `.dst`, `.png`, `.jpg`, `.jpeg`, `.svg`). The Help page's Compatibility FAQ at `src/pages/Help.tsx:122` claims: > "ThreadCraft supports PNG, JPG, JPEG, BMP, and SVG files." **BMP is missing from the Gallery's accept list.** A user following the Help page's instruction to upload a BMP file will be unable to select one in the file picker (most browsers honor the `accept` attribute as a filter). The picker only allows the 6 types listed above; BMP is silently excluded. The Workspace's upload area (CanvasArea) DOES include BMP in its accept attribute (`accept="image/png,image/jpeg,image/svg+xml,image/bmp"`). So the user can upload a BMP to the Workspace for digitizing, but cannot upload one to the Gallery for archival. ## Where - Gallery accept: `src/pages/Gallery.tsx:493` — `accept=".pes,.dst,.png,.jpg,.jpeg,.svg"` - Help page claim: `src/pages/Help.tsx:122` - Workspace accept (the right shape): `src/components/workspace/CanvasArea.tsx:333` — `accept="image/png,image/jpeg,image/svg+xml,image/bmp"` ## Suggested fix shape Add `.bmp` to the Gallery's accept list: ```diff - accept=".pes,.dst,.png,.jpg,.jpeg,.svg" + accept=".pes,.dst,.png,.jpg,.jpeg,.svg,.bmp" ``` Verify the resulting accept string passes validation in the file picker; modern browsers honor `.bmp` as a valid extension hint. Also: confirm that `designFromFile` and `parseDesignFile` (the post-upload pipeline) handle BMP without errors — if either crashes, the upload silently fails even though the picker now shows BMP files. ## Severity Medium. The Help page makes a product claim the Gallery picker can't honor. A user trying to follow the instructions is left confused. ## Discovered by Gap analysis (2026-10-02) of upload affordances. ## Related - #131 (closed) — parseDesignFile's SVG and PDF parsers were made honest. BMP is the inverse: the parser likely works, but the UI never lets the user try.
Author
Owner

Fixed in commit c2beef8 (rebased to c2beef8 on origin/main): added .bmp to the Gallery's Upload Design picker accept list at src/pages/Gallery.tsx:496. Help page claim now matches the picker. Post-upload pipeline (designFromFile → parseDesignFile) already documented BMP as a supported image type (parseDesignFile.ts:8), so the picker now correctly offers what the rest of the system already accepts. Lint clean, 52/52 Gallery + Help + gallery-component tests pass.

Fixed in commit c2beef8 (rebased to c2beef8 on origin/main): added `.bmp` to the Gallery's Upload Design picker accept list at `src/pages/Gallery.tsx:496`. Help page claim now matches the picker. Post-upload pipeline (`designFromFile` → `parseDesignFile`) already documented BMP as a supported image type (parseDesignFile.ts:8), so the picker now correctly offers what the rest of the system already accepts. Lint clean, 52/52 Gallery + Help + gallery-component tests pass.
Mark closed this issue 2026-10-03 06:33:07 +00:00
Sign in to join this conversation.
No description provided.