Skip to content

Commit 0ebc4ac

Browse files
EugeneHlushkomontogeek
authored andcommitted
fix(config) Fix build time issue using defaut config (webpack#2026)
* fix(config) Fix build time issue using defaut config * fix(config) Use node 8 * fix(config) Fix redirects * fix(config) Dont render backers "Server side" * fix(config) Antwar config tweak * fix(config) Remove redundant loader reference for migrating
1 parent 57c1d9e commit 0ebc4ac

File tree

5 files changed

+89
-93
lines changed

5 files changed

+89
-93
lines changed

.travis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ branches:
44
- develop
55
language: node_js
66
node_js:
7-
- "6"
7+
- "8"
88
script:
99
- bash ./src/scripts/deploy.sh
1010
sudo: required

antwar.bootstrap.js

+7-7
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ process.env.BABEL_ENV = environment;
77

88
antwar[environment]({
99
environment,
10-
configurationPaths: {
11-
antwar: require.resolve("./antwar.config.js"),
12-
webpack: require.resolve("./webpack.config.js"),
13-
},
10+
configurationPaths: {
11+
antwar: require.resolve("./antwar.config.js"),
12+
webpack: require.resolve("./webpack.config.js"),
13+
},
1414
}).then(() => {
15-
if (environment !== "build") {
16-
console.log("Surf to localhost:3000");
17-
}
15+
if (environment !== "build") {
16+
console.log("Surf to localhost:3000");
17+
}
1818
}).catch((err) => {
1919
console.error(err);
2020

antwar.config.js

+61-77
Original file line numberDiff line numberDiff line change
@@ -14,85 +14,69 @@ module.exports = () => ({
1414
'/': {
1515
title: 'Home',
1616
layout: () => require('./src/components/Page/Page.jsx').default,
17-
content: () => require.context('./loaders/page-loader!./src/content', false, /^\.\/.*\.md$/),
17+
content: () => require.context('./src/content', false, /^\.\/.*\.md$/),
1818
index: () => require('./src/components/Splash/Splash.jsx').default,
19-
redirects: {
20-
'support': '/contribute',
21-
'writers-guide': '/contribute/writers-guide'
19+
},
20+
concepts: {
21+
title: 'Concepts',
22+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
23+
layout: () => require('./src/components/Page/Page.jsx').default,
24+
content: () => require.context('./src/content/concepts', false, /^\.\/.*\.md$/)
25+
},
26+
configuration: {
27+
title: 'Configuration',
28+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
29+
layout: () => require('./src/components/Page/Page.jsx').default,
30+
content: () => require.context('./src/content/configuration', false, /^\.\/.*\.md$/)
31+
},
32+
api: {
33+
title: 'API',
34+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
35+
layout: () => require('./src/components/Page/Page.jsx').default,
36+
content: () => require.context('./src/content/api', false, /^\.\/.*\.md$/)
37+
},
38+
guides: {
39+
title: 'Guides',
40+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
41+
layout: () => require('./src/components/Page/Page.jsx').default,
42+
content: () => require.context('./src/content/guides', false, /^\.\/.*\.md$/)
43+
},
44+
plugins: {
45+
title: 'Plugins',
46+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
47+
layout: () => require('./src/components/Page/Page.jsx').default,
48+
content: () => {
49+
return combineContexts(
50+
require.context('./src/content/plugins', false, /^\.\/.*\.md$/),
51+
require.context('./generated/plugins', false, /^\.\/.*\.md$/)
52+
);
53+
}
54+
},
55+
loaders: {
56+
title: 'Loaders',
57+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
58+
layout: () => require('./src/components/Page/Page.jsx').default,
59+
content: () => {
60+
return combineContexts(
61+
require.context('./src/content/loaders', false, /^\.\/.*\.md$/),
62+
require.context('./generated/loaders', false, /^\.\/.*\.md$/)
63+
);
2264
}
2365
},
24-
concepts: {
25-
title: 'Concepts',
26-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
27-
layout: () => require('./src/components/Page/Page.jsx').default,
28-
content: () => require.context('./loaders/page-loader!./src/content/concepts', false, /^\.\/.*\.md$/)
29-
},
30-
configuration: {
31-
title: 'Configuration',
32-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
33-
layout: () => require('./src/components/Page/Page.jsx').default,
34-
content: () => require.context('./loaders/page-loader!./src/content/configuration', false, /^\.\/.*\.md$/)
35-
},
36-
api: {
37-
title: 'API',
38-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
39-
layout: () => require('./src/components/Page/Page.jsx').default,
40-
content: () => require.context('./loaders/page-loader!./src/content/api', false, /^\.\/.*\.md$/),
41-
redirects: {
42-
'passing-a-config': 'configuration-types'
43-
}
44-
},
45-
guides: {
46-
title: 'Guides',
47-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
48-
layout: () => require('./src/components/Page/Page.jsx').default,
49-
content: () => require.context('./loaders/page-loader!./src/content/guides', false, /^\.\/.*\.md$/),
50-
redirects: {
51-
'code-splitting-import': '/guides/code-splitting',
52-
'code-splitting-require': '/guides/code-splitting',
53-
'code-splitting-async': '/guides/code-splitting',
54-
'code-splitting-css': '/guides/code-splitting',
55-
'code-splitting-libraries': '/guides/code-splitting',
56-
'why-webpack': '/comparison',
57-
'production-build': '/guides/production'
58-
}
59-
},
60-
plugins: {
61-
title: 'Plugins',
62-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
63-
layout: () => require('./src/components/Page/Page.jsx').default,
64-
content: () => {
65-
return combineContexts(
66-
require.context('./loaders/page-loader!./src/content/plugins', false, /^\.\/.*\.md$/),
67-
require.context('./loaders/page-loader!./generated/plugins', false, /^\.\/.*\.md$/)
68-
);
69-
}
70-
},
71-
loaders: {
72-
title: 'Loaders',
73-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
74-
layout: () => require('./src/components/Page/Page.jsx').default,
75-
content: () => {
76-
return combineContexts(
77-
require.context('./loaders/page-loader!./src/content/loaders', false, /^\.\/.*\.md$/),
78-
require.context('./loaders/page-loader!./generated/loaders', false, /^\.\/.*\.md$/)
79-
);
80-
}
81-
},
82-
contribute: {
83-
title: 'Contribute',
84-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
85-
layout: () => require('./src/components/Page/Page.jsx').default,
86-
content: () => require.context('./loaders/page-loader!./src/content/contribute', false, /^\.\/.*\.md$/),
87-
},
88-
migrate: {
89-
title: 'Migrate',
90-
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
91-
layout: () => require('./src/components/Page/Page.jsx').default,
92-
content: () => require.context('./loaders/page-loader!./src/content/migrate', false, /^\.\/.*\.md$/),
93-
},
94-
vote: () => require('./src/components/Vote/Vote.jsx').default,
95-
organization: () => require('./src/components/Organization/Organization.jsx').default,
96-
'starter-kits': () => require('./src/components/StarterKits/StarterKits.jsx').default,
66+
contribute: {
67+
title: 'Contribute',
68+
url: ({sectionName, fileName}) => `/${sectionName}/${fileName}/`,
69+
layout: () => require('./src/components/Page/Page.jsx').default,
70+
content: () => require.context('./src/content/contribute', false, /^\.\/.*\.md$/),
71+
},
72+
migrate: {
73+
title: 'Migrate',
74+
url: ({ sectionName, fileName }) => `/${sectionName}/${fileName}/`,
75+
layout: () => require('./src/components/Page/Page.jsx').default,
76+
content: () => require.context('./src/content/migrate', false, /^\.\/.*\.md$/),
77+
},
78+
vote: () => require('./src/components/Vote/Vote.jsx').default,
79+
organization: () => require('./src/components/Organization/Organization.jsx').default,
80+
'starter-kits': () => require('./src/components/StarterKits/StarterKits.jsx').default,
9781
}
9882
});

src/components/Support/Support.jsx

+4-4
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ export default class Support extends React.Component {
9595
</div>
9696

9797
{
98-
supporters.map((supporter, index) => (
98+
(typeof window !== 'undefined') ? supporters.map((supporter, index) => (
9999
<a key={ supporter.id || supporter.slug || index }
100100
className="support__item"
101101
title={ `$${formatMoney(supporter.totalDonations / 100)} by ${supporter.name || supporter.slug}` }
@@ -104,11 +104,11 @@ export default class Support extends React.Component {
104104
{<img
105105
className={ `support__${rank}-avatar` }
106106
src={ supporter.avatar || SmallIcon }
107-
alt={ supporter.name || supporter.slug ? `${supporter.name || supporter.slug}'s avatar` : 'avatar' }
107+
alt={ supporter.name || supporter.slug ? `${supporter.name || supporter.slug}'s avatar` : 'avatar' }
108108
onError={ this._handleImgError } />}
109109
{ rank === 'backer' ? <figure className="support__outline" /> : null }
110110
</a>
111-
))
111+
)) : null
112112
}
113113

114114
<div className="support__bottom">
@@ -119,7 +119,7 @@ export default class Support extends React.Component {
119119
</div>
120120
);
121121
}
122-
122+
123123
/**
124124
* Handle images that aren't found
125125
*

webpack.config.js

+16-4
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,11 @@ module.exports = (env) => ({
1010
resolve: {
1111
extensions: ['.js', '.jsx', '.scss']
1212
},
13-
1413
resolveLoader: {
1514
alias: {
1615
'page-loader': path.resolve(cwd, 'loaders/page-loader')
1716
}
1817
},
19-
2018
module: {
2119
rules: [
2220
{
@@ -87,7 +85,11 @@ module.exports = (env) => ({
8785
{
8886
test: /\.html$/,
8987
use: 'raw-loader'
90-
}
88+
},
89+
{
90+
test: /\.md$/,
91+
use: 'page-loader',
92+
},
9193
]
9294
},
9395

@@ -101,12 +103,15 @@ module.exports = (env) => ({
101103
}),
102104
new RedirectWebpackPlugin({
103105
redirects: {
106+
'support': '/contribute/',
107+
'writers-guide': '/contribute/writers-guide/',
104108
'get-started': '/guides/getting-started/',
105109
'get-started/install-webpack': '/guides/installation/',
106110
'get-started/why-webpack': '/guides/why-webpack/',
107111
'pluginsapi': '/api/plugins/',
108112
'pluginsapi/compiler': '/api/compiler-hooks/',
109113
'pluginsapi/template': '/api/template/',
114+
'api/passing-a-config': '/configuration/configuration-types/',
110115
'api/plugins/compiler': '/api/compiler-hooks/',
111116
'api/plugins/compilation': '/api/compilation/',
112117
'api/plugins/module-factories': '/api/module-methods/',
@@ -119,7 +124,14 @@ module.exports = (env) => ({
119124
'development/release-process': '/contribute/release-process/',
120125
'development/how-to-write-a-loader': '/contribute/writing-a-loader/',
121126
'development/how-to-write-a-plugin': '/contribute/writing-a-plugin/',
122-
'migrating': '/migrate/3/',
127+
'guides/code-splitting-import': '/guides/code-splitting/',
128+
'guides/code-splitting-require': '/guides/code-splitting/',
129+
'guides/code-splitting-async': '/guides/code-splitting/',
130+
'guides/code-splitting-css': '/guides/code-splitting/',
131+
'guides/code-splitting-libraries': '/guides/code-splitting/',
132+
'guides/why-webpack': '/comparison/',
133+
'guides/production-build': '/guides/production/',
134+
'migrating': '/migrate/3/'
123135
},
124136
}),
125137
]

0 commit comments

Comments
 (0)