Skip to content

Commit cbef613

Browse files
committed
svg-loader-react
1 parent 25ba4d4 commit cbef613

File tree

4 files changed

+101
-12
lines changed

4 files changed

+101
-12
lines changed

config/webpack.config.dev.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ module.exports = {
8484
// for React Native Web.
8585
extensions: ['.web.js', '.mjs', '.js', '.json', '.web.jsx', '.jsx'],
8686
alias: {
87-
87+
8888
// Support React Native Web
8989
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
9090
'react-native': 'react-native-web',
@@ -115,7 +115,7 @@ module.exports = {
115115
options: {
116116
formatter: eslintFormatter,
117117
eslintPath: require.resolve('eslint'),
118-
118+
119119
},
120120
loader: require.resolve('eslint-loader'),
121121
},
@@ -138,13 +138,19 @@ module.exports = {
138138
name: 'static/media/[name].[hash:8].[ext]',
139139
},
140140
},
141+
{
142+
test: [/\.svg$/],
143+
exclude: /node_modules/,
144+
loader: require.resolve('svg-react-loader'),
145+
query: { classIdPrefix: '[name]-[hash:8]__' },
146+
},
141147
// Process JS with Babel.
142148
{
143149
test: /\.(js|jsx|mjs)$/,
144150
include: paths.appSrc,
145151
loader: require.resolve('babel-loader'),
146152
options: {
147-
153+
148154
// This is a feature of `babel-loader` for webpack (not Babel itself).
149155
// It enables caching results in ./node_modules/.cache/babel-loader/
150156
// directory for faster rebuilds.

config/webpack.config.prod.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,12 @@ module.exports = {
143143
name: 'static/media/[name].[hash:8].[ext]',
144144
},
145145
},
146+
{
147+
test: [/\.svg$/],
148+
exclude: /node_modules/,
149+
loader: require.resolve('svg-react-loader'),
150+
query: { classIdPrefix: '[name]-[hash:8]__' },
151+
},
146152
// Process JS with Babel.
147153
{
148154
test: /\.(js|jsx|mjs)$/,

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
"react-router": "^4.2.0",
4040
"react-router-dom": "^4.2.2",
4141
"style-loader": "0.19.0",
42+
"svg-react-loader": "^0.4.5",
4243
"sw-precache-webpack-plugin": "0.11.4",
4344
"url-loader": "0.6.2",
4445
"webpack": "3.8.1",

yarn.lock

Lines changed: 85 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,10 @@ asynckit@^0.4.0:
275275
version "0.4.0"
276276
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
277277

278+
atob@~1.1.0:
279+
version "1.1.3"
280+
resolved "https://registry.yarnpkg.com/atob/-/atob-1.1.3.tgz#95f13629b12c3a51a5d215abdce2aa9f32f80773"
281+
278282
279283
version "7.1.6"
280284
resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.1.6.tgz#fb933039f74af74a83e71225ce78d9fd58ba84d7"
@@ -1671,6 +1675,15 @@ [email protected]:
16711675
version "2.1.0"
16721676
resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd"
16731677

1678+
1679+
version "2.2.1"
1680+
resolved "https://registry.yarnpkg.com/css/-/css-2.2.1.tgz#73a4c81de85db664d4ee674f7d47085e3b2d55dc"
1681+
dependencies:
1682+
inherits "^2.0.1"
1683+
source-map "^0.1.38"
1684+
source-map-resolve "^0.3.0"
1685+
urix "^0.1.0"
1686+
16741687
cssesc@^0.1.0:
16751688
version "0.1.0"
16761689
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
@@ -3925,22 +3938,22 @@ loader-runner@^2.3.0:
39253938
version "2.3.0"
39263939
resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2"
39273940

3928-
loader-utils@^0.2.16:
3929-
version "0.2.17"
3930-
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
3941+
loader-utils@1.1.0, loader-utils@^1.0.2, loader-utils@^1.1.0:
3942+
version "1.1.0"
3943+
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
39313944
dependencies:
39323945
big.js "^3.1.3"
39333946
emojis-list "^2.0.0"
39343947
json5 "^0.5.0"
3935-
object-assign "^4.0.1"
39363948

3937-
loader-utils@^1.0.2, loader-utils@^1.1.0:
3938-
version "1.1.0"
3939-
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
3949+
loader-utils@^0.2.16:
3950+
version "0.2.17"
3951+
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
39403952
dependencies:
39413953
big.js "^3.1.3"
39423954
emojis-list "^2.0.0"
39433955
json5 "^0.5.0"
3956+
object-assign "^4.0.1"
39443957

39453958
locate-path@^2.0.0:
39463959
version "2.0.0"
@@ -3986,7 +3999,7 @@ lodash.uniq@^4.5.0:
39863999
version "4.5.0"
39874000
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
39884001

3989-
"lodash@>=3.5 <5", lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0:
4002+
"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0:
39904003
version "4.17.5"
39914004
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
39924005

@@ -5105,6 +5118,10 @@ [email protected]:
51055118
dependencies:
51065119
performance-now "^2.1.0"
51075120

5121+
5122+
version "0.21.0"
5123+
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
5124+
51085125
randomatic@^1.1.3:
51095126
version "1.1.7"
51105127
resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c"
@@ -5542,6 +5559,10 @@ resolve-pathname@^2.2.0:
55425559
version "2.2.0"
55435560
resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879"
55445561

5562+
resolve-url@~0.2.1:
5563+
version "0.2.1"
5564+
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
5565+
55455566
55465567
version "1.1.7"
55475568
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
@@ -5594,6 +5615,10 @@ rx-lite@*, rx-lite@^4.0.8:
55945615
version "4.0.8"
55955616
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444"
55965617

5618+
5619+
version "4.1.0"
5620+
resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782"
5621+
55975622
[email protected], safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
55985623
version "5.1.1"
55995624
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
@@ -5610,7 +5635,7 @@ sane@~1.6.0:
56105635
walker "~1.0.5"
56115636
watch "~0.10.0"
56125637

5613-
sax@^1.2.1, sax@~1.2.1:
5638+
sax@>=0.6.0, sax@^1.2.1, sax@~1.2.1:
56145639
version "1.2.4"
56155640
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
56165641

@@ -5787,16 +5812,35 @@ source-list-map@^2.0.0:
57875812
version "2.0.0"
57885813
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085"
57895814

5815+
source-map-resolve@^0.3.0:
5816+
version "0.3.1"
5817+
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761"
5818+
dependencies:
5819+
atob "~1.1.0"
5820+
resolve-url "~0.2.1"
5821+
source-map-url "~0.3.0"
5822+
urix "~0.1.0"
5823+
57905824
source-map-support@^0.4.15:
57915825
version "0.4.18"
57925826
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
57935827
dependencies:
57945828
source-map "^0.5.6"
57955829

5830+
source-map-url@~0.3.0:
5831+
version "0.3.0"
5832+
resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9"
5833+
57965834
[email protected], source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1, source-map@~0.5.6:
57975835
version "0.5.7"
57985836
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
57995837

5838+
source-map@^0.1.38:
5839+
version "0.1.43"
5840+
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346"
5841+
dependencies:
5842+
amdefine ">=0.0.4"
5843+
58005844
source-map@^0.4.4:
58015845
version "0.4.4"
58025846
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
@@ -5991,6 +6035,17 @@ supports-color@^5.1.0:
59916035
dependencies:
59926036
has-flag "^2.0.0"
59936037

6038+
svg-react-loader@^0.4.5:
6039+
version "0.4.5"
6040+
resolved "https://registry.yarnpkg.com/svg-react-loader/-/svg-react-loader-0.4.5.tgz#1f324c9c7b858f5c89fac752bbe9ca3f6214f850"
6041+
dependencies:
6042+
css "2.2.1"
6043+
loader-utils "1.1.0"
6044+
ramda "0.21.0"
6045+
rx "4.1.0"
6046+
traverse "0.6.6"
6047+
xml2js "0.4.17"
6048+
59946049
svgo@^0.7.0:
59956050
version "0.7.2"
59966051
resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5"
@@ -6151,6 +6206,10 @@ tr46@~0.0.3:
61516206
version "0.0.3"
61526207
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
61536208

6209+
6210+
version "0.6.6"
6211+
resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.6.tgz#cbdf560fd7b9af632502fed40f918c157ea97137"
6212+
61546213
trim-newlines@^1.0.0:
61556214
version "1.0.0"
61566215
resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
@@ -6286,6 +6345,10 @@ urijs@^1.16.1:
62866345
version "1.19.0"
62876346
resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.0.tgz#d8aa284d0e7469703a6988ad045c4cbfdf08ada0"
62886347

6348+
urix@^0.1.0, urix@~0.1.0:
6349+
version "0.1.0"
6350+
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
6351+
62896352
62906353
version "0.6.2"
62916354
resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7"
@@ -6623,6 +6686,19 @@ xml-name-validator@^2.0.1:
66236686
version "2.0.1"
66246687
resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"
66256688

6689+
6690+
version "0.4.17"
6691+
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.17.tgz#17be93eaae3f3b779359c795b419705a8817e868"
6692+
dependencies:
6693+
sax ">=0.6.0"
6694+
xmlbuilder "^4.1.0"
6695+
6696+
xmlbuilder@^4.1.0:
6697+
version "4.2.1"
6698+
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-4.2.1.tgz#aa58a3041a066f90eaa16c2f5389ff19f3f461a5"
6699+
dependencies:
6700+
lodash "^4.0.0"
6701+
66266702
xtend@^4.0.0, xtend@^4.0.1:
66276703
version "4.0.1"
66286704
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"

0 commit comments

Comments
 (0)