Skip to content

Releases: gregberge/svgr

v3.0.0

01 Oct 18:05
Compare
Choose a tag to compare

Bug Fixes

  • rollup: forward filePath in rollup plugin (461492b), closes #177 #188
  • webpack: forward filePath in webpack loader (b7a108e), closes #177 #188
  • fix --icon + --no-dimensions (7535693), closes #141
  • fix expandProps when position is not allowed (45522fc)

Features

BREAKING CHANGES

  • "--no-expand-props" is now replaced by "--expand-props none". You can now specify a position "start" or "end" for "expandProps"
    property.
  • svgAttributes has been removed, please use svgProps instead.
  • "ref" option now uses React.forwardRef. You don't have to use "svgRef"
    prop, just use "ref" and it will work. React.forwardRef requires React v16.3+.
  • Style tag will no longer be automatically removed. SVGO should handle it
    correctly using "inlineStyles" plugin. If you want to remove them,
    enable "removeStyleElement" plugin in your SVGO config.
  • rollup: runtime configuration is now loaded using rollup plugin.
  • webpack: runtime configuration is now loaded using webpack
    loader.
  • config: - Runtime configuration is always loaded (even with Node API convert)
  • In CLI, "--config" is now "--config-file"; this new option can be used
    everywhere

v2.4.1

16 Sep 22:04
Compare
Choose a tag to compare

Bug Fixes

  • config: fix custom config & default options (#176) (9a6c40b)

v2.4.0

16 Sep 15:35
Compare
Choose a tag to compare

Bug Fixes

  • use literal instead of litteral (7849fd4)

Features

  • allow to spread props at the start (#166) (cd659dc)
  • upgrade: h2x@1.1.0 (jsdom@12.0.0) & others (2d9b7bd)
  • new option "svgProps" (#172) (9657110)

v2.3.0

03 Sep 10:34
Compare
Choose a tag to compare

Features

v2.2.1

16 Aug 09:25
Compare
Choose a tag to compare

Bug Fixes

  • rollup: fix to work with rollup-plugin-typescript2 (#147) (4b3737e)

v2.2.0

13 Aug 16:32
Compare
Choose a tag to compare

Bug Fixes

Features

v2.1.1

11 Jul 15:39
Compare
Choose a tag to compare

Bug Fixes

  • core: config conflict with icon option (#137) (e13a99a)

v2.1.0

08 Jul 21:30
Compare
Choose a tag to compare

Features

v2.0.0

12 Jun 15:54
Compare
Choose a tag to compare

Features

Project configurations

SVGR now supports Prettier (.prettierc) and SVGO (.svgo.yml) configurations. It also supports a new .svgrrc configuration. See the readme for more detail.

Rollup plugin

Rollup has now an official SVGR plugin available under @svgr/rollup.

Split into several modules

SVGR is now an ecosystem of four modules:

  • @svgr/core: Core of SVGR, it exposes the Node API
  • @svgr/cli: Command Line Interface
  • @svgr/webpack: webpack loader
  • @svgr/rollup: a fresh new Rollup plugin

svgAttributes and titleProp options

Two new options appears, the first one svgAttributes gives you the opportunity to add attribute on the root svg tag without creating a custom template:

Command:

svgr --svg-attributes focusable=true foo.svg

Output:

props => <svg focusable="false" />

The second one, titleProp, adds a custom property title to specify the title of the SVG.

Command:

svgr --title-prop foo.svg

Output:

({ title }) => <svg><title>{title}</title></svg>

Breaking changes

Node version

Node v6 support has been dropped, you need Node >= 8 to run SVGR.

Prettier options

All Prettier options have been removed:

  • jsx-bracket-same-line
  • no-bracket-spacing
  • no-semi
  • single-quote
  • tab-width
  • trailing-comma
  • use-tabs

If you used it, use a .prettierrc instead of use the new option --prettier-config:

v1.x:

svgr --no-semi file.svg

v2.x:

svgr --prettier-config '{"semi": true}' file.svg

SVGO options

All SVGO options have been removed:

  • ids
  • keep-useless-defs
  • no-title
  • no-view-box
  • precision

If you used it, use a .svgo.yml instead of use the new option --svgo-config:

v1.x:

svgr --ids file.svg

v2.x:

svgr --svgo-config '{"plugins": [{"cleanupIDs": {"remove": false, "minify": false}}]}' file.svg

Other options

  • replace-attr-value has been renamed into replace-attr-values

In API, replaceAttrValues is now an object instead of an array.

Node API changes

  • rawConvert method has been dropped
  • Templates now receive three arguments: code, config and state
  • componentName must now be passed in state

Thanks

Thanks to @MarquesDev and @lifeiscontent.

v1.10.0

28 May 15:48
1cafbd8
Compare
Choose a tag to compare

Features