Skip to content

Commit 79fef84

Browse files
Merge pull request transitive-bullshit#75 from xin-nie/xin-nie-svgr-support
Add SVG as component support
2 parents c255676 + 595dac9 commit 79fef84

File tree

5 files changed

+18
-2
lines changed

5 files changed

+18
-2
lines changed

template/default/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
"react-dom": "^15.0.0 || ^16.0.0"
2828
},
2929
"devDependencies": {
30+
"@svgr/rollup": "^2.4.1",
3031
"babel-core": "^6.26.3",
3132
"babel-eslint": "^8.2.5",
3233
"babel-plugin-external-helpers": "^6.22.0",

template/default/rollup.config.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import external from 'rollup-plugin-peer-deps-external'
44
import postcss from 'rollup-plugin-postcss'
55
import resolve from 'rollup-plugin-node-resolve'
66
import url from 'rollup-plugin-url'
7+
import svgr from '@svgr/rollup'
78

89
import pkg from './package.json'
910

@@ -27,6 +28,7 @@ export default {
2728
modules: true
2829
}),
2930
url(),
31+
svgr(),
3032
babel({
3133
exclude: 'node_modules/**',
3234
plugins: [ 'external-helpers' ]

template/typescript/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"react-dom": "^15.0.0 || ^16.0.0"
2929
},
3030
"devDependencies": {
31+
"@svgr/rollup": "^2.4.1",
3132
"@types/jest": "^23.1.5",
3233
"@types/react": "^16.3.13",
3334
"@types/react-dom": "^16.0.5",
@@ -44,7 +45,7 @@
4445
"rollup-plugin-node-resolve": "^3.3.0",
4546
"rollup-plugin-peer-deps-external": "^2.2.0",
4647
"rollup-plugin-postcss-modules": "1.0.8",
47-
"rollup-plugin-typescript2": "^0.13.0",
48+
"rollup-plugin-typescript2": "^0.17.0",
4849
"rollup-plugin-url": "^1.4.0",
4950
"typescript": "^2.8.3"
5051
},

template/typescript/rollup.config.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import external from 'rollup-plugin-peer-deps-external'
44
import postcss from 'rollup-plugin-postcss-modules'
55
import resolve from 'rollup-plugin-node-resolve'
66
import url from 'rollup-plugin-url'
7+
import svgr from '@svgr/rollup'
78

89
import pkg from './package.json'
910

@@ -30,9 +31,11 @@ export default {
3031
writeDefinitions: true
3132
}),
3233
url(),
34+
svgr(),
3335
resolve(),
3436
typescript({
35-
rollupCommonJSResolveHack: true
37+
rollupCommonJSResolveHack: true,
38+
clean: true
3639
}),
3740
commonjs()
3841
]

template/typescript/src/typings.d.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,12 @@ declare module '*.css' {
66
const content: { [className: string]: string };
77
export default content;
88
}
9+
10+
interface SvgrComponent extends React.StatelessComponent<React.SVGAttributes<SVGElement>> {}
11+
12+
declare module '*.svg' {
13+
const svgUrl: string;
14+
const svgComponent: SvgrComponent;
15+
export default svgUrl;
16+
export { svgComponent as ReactComponent }
17+
}

0 commit comments

Comments
 (0)