The idea
Today SVG export is a separate typed export-svg sticky action with no settings section, while PNG and JPG live in the Image Export section's Format select. Figma, Illustrator and Sketch all put SVG in the same format dropdown as the raster formats and disable the scale/resolution options when a vector format is picked. Users already know that shape, and a single Export button with a Format select reads cleaner in the sticky footer than two export buttons side by side.
What it would involve
export.image.format (or a new export.format) accepting svg next to png and jpg, with the Resolution select disabled or hidden while svg is selected.
- The runtime's export action dispatching to the product's
svgExportRenderer when svg is selected, keeping runtime ownership of validation, serialization and download.
- The acceptance contract for Image Export settings (
optionCoverage of exactly png/jpg, separate Export SVG action) updated to match.
Why an issue rather than a PR
This touches the signed runtime, the export contract and the acceptance validators, so it's a design call for you rather than something a generated app can carry. Happy to take it on as a PR if you're open to the direction.
Related: #3 fixes the starter route not forwarding svgExportRenderer, which is what makes the current typed SVG action unreachable from a generated app.
The idea
Today SVG export is a separate typed
export-svgsticky action with no settings section, while PNG and JPG live in the Image Export section's Format select. Figma, Illustrator and Sketch all put SVG in the same format dropdown as the raster formats and disable the scale/resolution options when a vector format is picked. Users already know that shape, and a single Export button with a Format select reads cleaner in the sticky footer than two export buttons side by side.What it would involve
export.image.format(or a newexport.format) acceptingsvgnext topngandjpg, with the Resolution select disabled or hidden whilesvgis selected.svgExportRendererwhensvgis selected, keeping runtime ownership of validation, serialization and download.optionCoverageof exactlypng/jpg, separateExport SVGaction) updated to match.Why an issue rather than a PR
This touches the signed runtime, the export contract and the acceptance validators, so it's a design call for you rather than something a generated app can carry. Happy to take it on as a PR if you're open to the direction.
Related: #3 fixes the starter route not forwarding
svgExportRenderer, which is what makes the current typed SVG action unreachable from a generated app.