Commit Graph

516 Commits

Author SHA1 Message Date
Sébastien Chopin
f050bb6330 Refactor 2017-05-21 19:18:48 +02:00
Sébastien Chopin
2247097b64 Allow synchronous module + fix typo in logs 2017-05-21 19:17:36 +02:00
Sébastien Chopin
1f317a188b Should work with route not code-splitted 2017-05-21 19:16:36 +02:00
Pooya Parsa
7e57f55a5a minor requireModule fix 2017-05-21 20:42:28 +04:30
Pooya Parsa
da725cb11e fix ~ shorthand problems 2017-05-21 20:11:00 +04:30
Pooya Parsa
dabfe68009 ESLint 2017-05-21 19:49:49 +04:30
Pooya Parsa
38e7dd509a HTTP.2 Push Headers 2017-05-21 19:33:38 +04:30
Sébastien Chopin
7146b0f2a8 Merge branch 'dev' of github.com:Atinux/nuxt.js into dev 2017-05-21 15:46:32 +02:00
Sébastien Chopin
c3355e1467 Store state should always be a method now 2017-05-21 15:45:21 +02:00
Sébastien Chopin
8350dbfdbc Disable minify with generate.minify: false 2017-05-21 15:26:39 +02:00
Sébastien Chopin
14c3c07d57 Remove cache option, use build.ssr.cache instead 2017-05-21 15:13:19 +02:00
Pooya Parsa
dd32b5441f ETag header support 2017-05-21 16:48:21 +04:30
Pooya Parsa
1939e08cb2 deprecate performance key 2017-05-21 16:36:01 +04:30
Pooya Parsa
f5541999fd Allow modules to provide their createRoutes 2017-05-21 15:25:01 +04:30
Pooya Parsa
8f08f13941 Revert "don't warn if pages directory not exists"
This reverts commit c6556c6b8b.
2017-05-21 15:11:30 +04:30
Pooya Parsa
054df82200 Allow override NODE_ENV with env config.
This allows debugging SSR hydration problems easier in production. (#727 and #574)
2017-05-21 14:18:22 +04:30
Pooya Parsa
c6556c6b8b don't warn if pages directory not exists 2017-05-21 13:17:29 +04:30
Sébastien Chopin
01de17b827 Fix store module vs store 2017-05-21 02:03:32 +02:00
Sébastien Chopin
a90127952a Merge branch 'dev' of github.com:Atinux/nuxt.js into dev 2017-05-20 11:37:15 +02:00
Sébastien Chopin
2cb6e1e596 Add source map for SASS 2017-05-20 11:36:48 +02:00
Sébastien Chopin
4cd48f3927 Support ts 2017-05-20 11:36:35 +02:00
Sébastien Chopin
48f617d174 disable console log 2017-05-20 11:36:09 +02:00
Pooya Parsa
d94fddeb38 return promise in requireModule 2017-05-20 13:47:14 +04:30
Pooya Parsa
aca45a15b0 improve serverMiddleware
This allows resolve using ~ path nation
2017-05-20 13:44:31 +04:30
Pooya Parsa
f0c66b490a requireModule and addModule
requireModule can be used for Meta-Modules to prevent duplicate requires
2017-05-20 13:43:55 +04:30
Pooya Parsa
148c2fc471 serverMiddleware typo 2017-05-19 13:44:24 +04:30
Pooya Parsa
effb354d71 performance.prefetch 2017-05-19 12:15:36 +04:30
Pooya Parsa
90fc778e81 Middlewares ~> Middleware
https://english.stackexchange.com/questions/257120/middleware-vs-middlewares
2017-05-19 12:05:20 +04:30
Pooya Parsa
8b253712f0 fix vendor chunkhash 2017-05-19 12:03:33 +04:30
Pooya Parsa
5b8cb0f464 [build] add missing promise.all 2017-05-18 13:17:39 +04:30
Pooya Parsa
a70fc016e4 Refactor generateRoutesAndFiles 2017-05-18 13:15:15 +04:30
Pooya Parsa
3f84161811 Refactor r() into utils 2017-05-18 13:14:31 +04:30
Alexandre Chopin
b060090fb1 fix generate only index.html when router.mode = 'hash' 2017-05-17 16:20:14 +02:00
Alexandre Chopin
2ff304898d generate only index.html when router.mode = 'hash' 2017-05-17 16:19:22 +02:00
Sebastien Chopin
d3f707dde2 Refactor code base 2017-05-17 11:27:05 +02:00
ausir
50a8648eeb user specified base then add base in html head 2017-05-17 00:58:27 +08:00
Sebastien Chopin
971372d763 Add base href every time 2017-05-16 15:56:46 +02:00
Sebastien Chopin
54dec8e4b5 Fix hot-update.json & add tests 2017-05-16 15:12:30 +02:00
Pooya Parsa
51618bef29 Allow override anything using a file with same name in srcDir/app 2017-05-16 02:17:58 +04:30
Pooya Parsa
e9d998e522 Coverage 2017-05-16 01:30:06 +04:30
Pooya Parsa
c2befae5db Refactor with async/await instead of yield 2017-05-16 01:21:27 +04:30
Pooya Parsa
32ac90482e Merge remote-tracking branch 'remotes/origin/fix-middleware' into dev
# Conflicts:
#	lib/app/server.js
#	lib/app/utils.js
#	lib/generate.js
#	yarn.lock
2017-05-15 15:33:52 +04:30
Pooya Parsa
52ee3d050d update tests 2017-05-15 03:47:13 +04:30
Pooya Parsa
0eb3fc4a05 update tests 2017-05-15 03:31:41 +04:30
Pooya Parsa
632a94a9c6 [module] Tests 2017-05-15 03:03:31 +04:30
Pooya Parsa
59ece4978e fix plugins injectAs 2017-05-15 02:26:00 +04:30
Pooya Parsa
cb524e0424 [module] remove extra dot in generated template names
node.js preserves dot in ext
2017-05-15 01:29:06 +04:30
Pooya Parsa
2d7b1b1d60 [module] pass ssr as is
This prevents defaulting ssr to false when undefined
2017-05-15 01:26:30 +04:30
Pooya Parsa
11cb84d239 [module] support plugins injectAs 2017-05-15 01:09:27 +04:30
Pooya Parsa
c7f31b6492 Merge branch 'modules' into dev 2017-05-15 00:36:07 +04:30
Sébastien Chopin
6a6b978cd1 Makes generate asynchronous 2017-05-14 20:21:14 +02:00
Sébastien Chopin
264db1bf8b Merge pull request #702 from jroxendal/asyncify-generate
rewrote generate.js to async/await instead of coroutines
2017-05-14 19:38:05 +02:00
Pooya Parsa
0220be4466 [store] fix condition where root store is not exporting state 2017-05-13 23:22:37 +04:30
Pooya Parsa
437586d92b [store] check if storeData.state is function for workaround 2017-05-13 22:22:04 +04:30
Pooya Parsa
05725d70e7 [store] fix 2017-05-13 22:15:42 +04:30
Pooya Parsa
2cdeab5661 [Store] Fix createStore bug 2017-05-13 22:02:11 +04:30
Pooya Parsa
be80f95278 middleware ~> serverMiddleware
To avoid confuse between client and serverSide middlewares
2017-05-12 23:24:00 +04:30
Pooya Parsa
a6f1ce7465 Merge remote-tracking branch 'origin/master' into modules 2017-05-12 23:06:15 +04:30
Pooya Parsa
9c1060e06c 🔥 Server Middlewares
This commit adds `middlewares` option to nuxt and accepts connect style middlewares.
Also modules can register middlewares using `this.addMiddleware()` method.
Each entry can be a simple middleware function or {path, handler} to support paths.
2017-05-12 14:52:06 +04:30
Pooya Parsa
d98c24b9b9 close customFilesWatcher on nuxt::close 2017-05-12 12:57:59 +04:30
Pooya Parsa
5d23dfc49e watch for custom provided templates on edit event 2017-05-12 12:57:06 +04:30
Pooya Parsa
12727d1165 [modules] Watch for template changes
`build.watch` option was added
2017-05-12 12:45:37 +04:30
Pooya Parsa
2c37811032 [modules] Add extendRoutes 2017-05-12 12:27:24 +04:30
Pooya Parsa
d57ea4de88 Simpler dst file name generation
Module developers can easily customize filename using fileName key
otherwise it is generated using `[dirname].[filename].[hash].[ext]` template
2017-05-12 00:07:59 +04:30
Pooya Parsa
7835e3611d correct templateVars usage 2017-05-12 00:00:22 +04:30
Pooya Parsa
4869770570 remove unneeded renderPlugins calls 2017-05-11 23:55:45 +04:30
Pooya Parsa
b701424aae [modules] Support promise 2017-05-11 23:34:50 +04:30
Pooya Parsa
336ebd4959 templatesFiles ~> templates 2017-05-11 23:17:53 +04:30
Pooya Parsa
4800a9e8fd build.templatesFiles
This feature adds advanced plugin and template support to modules
2017-05-11 22:41:00 +04:30
Pooya Parsa
ef6f0da146 ESLint 2017-05-11 18:29:36 +04:30
Johan Roxendal
40a167258b rewrote generate.js to async/await instead of coroutines 2017-05-11 14:12:25 +02:00
Pooya Parsa
a8d681af3f Fix Module Require 2017-05-11 16:28:20 +04:30
Sebastien Chopin
ac836c77de Update tests 2017-05-11 13:37:21 +02:00
Pooya Parsa
497d673727 Install all modules in sequence before nuxt init
For this functionality Nuxt constructor would return a Promise so all bin commands updated to resolve promise before using nuxt
2017-05-11 15:53:58 +04:30
Pooya Parsa
5039459f06 basic API ported from nuxt-modules 2017-05-11 15:29:08 +04:30
Pooya Parsa
9db29942e6 Add basic module integration 2017-05-11 14:34:15 +04:30
Pooya Parsa
252e5cce0a Explicit srcDir and rootDir
This makes dir and srcDir consistent and explicitly defined in both places.
2017-05-11 14:18:09 +04:30
Pooya Parsa
ffefa6d724 defaults deep options
This will help modules easily append to options without need to checking and creating arrays.
2017-05-11 14:12:20 +04:30
Pooya Parsa
5662aa22f7 add modules key to nuxt config 2017-05-11 13:41:27 +04:30
Andrii Korzh
4beaecdc5c add linkExactActiveClass
Pass linkExactActiveClass to router options
2017-05-09 21:46:11 +03:00
Andrii Korzh
77d35ab594 add linkExactActiveClass to router options
From version 2.5.0+ exact active class supported https://router.vuejs.org/en/api/options.html#linkexactactiveclass
2017-05-09 21:44:53 +03:00
Sebastien Chopin
64abcc04a8 Fix middleware on client-side 2017-05-09 14:43:47 +02:00
Sebastien Chopin
9099b00963 Merge branch 'master' into fix-middleware 2017-05-09 14:18:25 +02:00
Johan Roxendal
63568ceb24 added sourcemaps support to scss-loader and css-loader 2017-05-09 13:24:55 +02:00
Sébastien Chopin
bce3784921 Merge pull request #682 from jroxendal/fix-scss
scss should be handled by sass-loader
2017-05-08 23:17:47 +02:00
Sébastien Chopin
888811f5f4 Fix middleware on server-side 2017-05-08 19:30:57 +02:00
Johan Roxendal
0fe5b2c17f Fixed refractoring error in generate 2017-05-08 09:22:35 +02:00
johan.roxendal@gu.se
b6c5428da5 scss should be handled by sass-loader 2017-05-07 21:46:57 +02:00
Sebastien Chopin
e148e4b93a Add extractCSS option 2017-05-05 17:53:21 +02:00
Sébastien Chopin
072216c045 Merge branch 'master' into fixes 2017-05-05 16:50:24 +02:00
Sebastien Chopin
333e3cf13a Add other extensions 2017-05-05 16:48:12 +02:00
Sebastien Chopin
7f1bf3d5f0 Fix typo 2017-05-05 16:48:04 +02:00
Sebastien Chopin
6178527177 Improve logs 2017-05-05 16:47:50 +02:00
Sebastien Chopin
39db08c95b Lint 2017-05-05 16:47:28 +02:00
Pooya Parsa
6504b0666a ESLint Fixes 2017-05-05 18:45:00 +04:30
Pooya Parsa
e2e849fbd2 [vue-style-loader] Inline global css on SSR
Currently with `<style src>` approach global styles are injected on
runtime only and this may affect page render performance.
2017-05-05 18:40:12 +04:30
Sebastien Chopin
01b02a9010 Add typescript compatibility 2017-05-05 14:07:54 +02:00
Sebastien Chopin
fd833216df Format code 2017-05-05 12:11:32 +02:00
johan.roxendal@gu.se
70f959ccb8 rolled back changes to render, re-jiggled handling of errors in generate. 2017-05-05 11:47:24 +02:00
Johan Roxendal
d469f38d98 Adds generate error report from renderer and minification. Changes the behavior where generate would terminate on error, now it instead gathers the error from crashing routes and compiles an error report. 2017-05-05 10:59:33 +02:00
Pooya Parsa
a04a563f8d create store only when available 2017-05-02 15:36:22 +04:30
Pooya Parsa
affbc9c81f fixClientManifest no needed as of vue 2.3.1 2017-05-02 14:31:15 +04:30
Evan You
74652e3974 make use of runInNewContext: false 2017-05-02 13:33:09 +04:30
Pooya Parsa
6ee5d958a7 cleanups 2017-04-30 17:24:14 +04:30
Pooya Parsa
2e75f22a08 add options.ssr
This allows setting custom vue renderer options. including:
- shouldPreload(file, type)
- runInNewContext
- directives

https://ssr.vuejs.org/en/api.html#renderer-options
2017-04-30 17:10:04 +04:30
Pooya Parsa
87172100c7 [vue-loader] allow using builtin extractCSS functionality
This option is disabled by default and won't affect exiting users.
However users can easily enable this option using `nuxt.build.extractCSS`

Implementation is according to:
- https://github.com/vuejs/vue-loader/tree/master/docs/en/configurations
- https://ssr.vuejs.org/en/css.html
- https://github.com/vuejs/vue-hackernews-2.0/tree/master/build
2017-04-30 16:28:25 +04:30
Pooya Parsa
56c39bea88 fix tests 2017-04-30 02:39:40 +04:30
Pooya Parsa
8391f308b7 [jsdom] use new VirtualConsole constructor 2017-04-30 01:40:56 +04:30
Pooya Parsa
d9ed6ecea9 integrate template with server renderer 2017-04-27 22:36:10 +04:30
Pooya Parsa
750276b3f6 refactor client watch
Fixes duplicate READY message
2017-04-27 21:14:31 +04:30
Pooya Parsa
ac151a41f0 Basic vue-server-renderer/client-plugin integration 2017-04-27 15:50:43 +04:30
Pooya Parsa
8db3a22db9 deprecated vue-ssr-webpack-plugin in flavor of vue-server-renderer 2017-04-27 13:24:18 +04:30
Sebastien Chopin
10d18bc454 Add generate.interval 2017-04-25 15:00:42 +02:00
johan.roxendal@gu.se
afa2e6b05c Implemented wait in generate function so generation of dynamic routes with ajax calls are not all sceduled simultaneously, possibly flooding the data backend with queries.
Use generate.wait (ms) to stagger route generate calls over time.

Fixes #590.
2017-04-25 14:04:49 +02:00
Mihal Malostanidis
5e21a057aa Fix Ctrl-C Ctrl-V typo in comments 2017-04-25 14:03:26 +03:00
Sebastien Chopin
65a3ad5b08 Generate bundles in dist/ if url given 2017-04-25 11:17:23 +02:00
Sébastien Chopin
2eecb8c0de Add webpackChunkName 2017-04-17 18:15:37 +02:00
Sébastien Chopin
e69aa7c401 Simplify offline plugin 2017-04-17 15:27:32 +02:00
Sébastien Chopin
ec8291ea4c Fix lint style 2017-04-15 13:19:41 +02:00
Sebastien Chopin
b5330a063d Use cheap-module-source-map 2017-04-14 16:31:31 +02:00
Sebastien Chopin
e2ad6517e2 Give this to data() 2017-04-14 16:31:14 +02:00
Sebastien Chopin
ee6db19c8d Update style 2017-04-14 11:57:30 +02:00
Sebastien Chopin
55db6e336f Add injectAs feature 2017-04-14 11:57:08 +02:00
Sebastien Chopin
25066545bb Merge branch 'master' of github.com:nuxt/nuxt.js 2017-04-10 18:45:01 +02:00
Sebastien Chopin
b11a4d761b Add injectAs to work with external plugins 2017-04-10 18:44:08 +02:00
Sébastien Chopin
2560bfb512 Merge branch 'master' into offline-plugin-integration 2017-04-08 11:33:32 +02:00
Sébastien Chopin
5412ddc8d1 Merge pull request #456 from taldy/nuxtserverinit-promises-improvement
Support other implementations of Promises inside nuxtServerInit (currently only HTML5 Promises works correctly)
2017-04-06 12:33:29 +02:00
taldy
1ba4adca70 Fix codestyle 2017-04-06 12:18:27 +03:00
taldy
c22b0b790b Simplify fix and cover other Promise checks 2017-04-06 12:09:56 +03:00
Ilya
6c0f138b7d fix server validate 2017-04-05 22:33:11 +03:00
Sébastien Chopin
3e7d0a19ed Update client.js 2017-04-05 21:25:44 +02:00
Ilya
17db23f45f fix in client : validate method 2017-04-05 21:40:46 +03:00
Sébastien Chopin
4c012e93af Update server.js 2017-04-05 18:25:35 +02:00
Sébastien Chopin
99a03812a4 Update client.js 2017-04-05 18:25:12 +02:00
Sébastien Chopin
9c4244635c Update server.js 2017-04-05 18:24:48 +02:00
Sébastien Chopin
7ef6411269 Update client.js 2017-04-05 18:24:15 +02:00
Ilya
99400bb12d server proposal for validation 2017-04-05 19:14:45 +03:00
Ilya
42e16a650b proposal for validation pages 2017-04-04 14:25:48 +03:00
Walter Ye
e7bcdc736e pass 'this nuxt' context in extend webpack config
// nuxt.config
build: {
    extend (config, {dev, isClient}) {
      // get this context here
      config.resolve.alias['~services'] = join(this.srcDir, 'services');
    },
}
2017-04-01 13:34:09 +08:00
Sébastien Chopin
d576dad069 Fix eslint + istanbul 2017-03-28 16:28:24 +02:00
Sébastien Chopin
f6a02a1ac6 Disable performance hints for SSR 2017-03-27 18:06:57 +02:00
Sébastien Chopin
2f2eaac299 Add debug for redirect on ssr 2017-03-26 23:38:51 +02:00
taldy
93c4be2d28 Support other types of Promises returned by nuxtServerInit() 2017-03-26 17:54:27 +03:00
Sébastien Chopin
617999a60a Add manifest 2017-03-26 00:52:39 +01:00
Ralph Huwiler
78ea2591c2 Create nested modules for each folder in ./store 2017-03-25 21:21:11 +01:00
Sébastien Chopin
3b635323a4 Add layout in __NUXT__ 2017-03-25 18:59:58 +01:00
Sébastien Chopin
1cefff8194 Add watchers option and url after build 2017-03-25 15:16:07 +01:00
Alexandre Chopin
c9784651e9 add gzip configuration 2017-03-25 12:57:38 +01:00
evseevnn
435337529a fix - store no available to context on client side 2017-03-25 12:30:23 +07:00
evseevnn
8ec4eb908f fix - store no available to context on client side 2017-03-25 12:23:42 +07:00