Commit Graph

440 Commits

Author SHA1 Message Date
pooya parsa
92ef65c8ed
fix(generator): encode routes and show error summary (#7518) 2020-06-16 17:53:29 +02:00
Pim
df7e1ad3a2
fix(vue-renderer): fix meta injection when ssr renderer generates a spa page (#7439) 2020-06-10 17:26:50 +02:00
Pooya Parsa
c48a834b98 test: add dynamic page to full-static fixture 2020-06-10 15:15:13 +02:00
Sébastien Chopin
7c6e170a89
fix: handle router.base for crawler and serve (#7486)
Co-authored-by: pooya parsa <pyapar@gmail.com>
2020-06-10 09:51:29 +02:00
Ahad Birang
be726e42b6
feat(generator): allow excluding exported pages using export:page hook (#7455) 2020-06-03 21:35:28 +02:00
Pooya Parsa
a82f8d8b1f
feat(generator): export:route hook and setPayload (#7422)
* feat(generator): shared payload support for `nuxt export`

* feat: add `export:` hooks for upward compatibility

* fix: use setPayload to avoid breaking usage

* test: update test

* fix: deep assign

* chore: update tests

* fix: route payload has more periority than shared one

* test: update generator hook tests

* lint: remove unnecessary import
2020-05-27 16:51:51 +02:00
Pooya Parsa
6cbcd59d4e
feat(config): improved runtimeConfig (#7420)
* fix: ensure interpolate value is a string

* feat: allow native values from dotenv

* test: update test for regression on native value check
2020-05-27 12:38:39 +02:00
Pooya Parsa
6a6794e020
feat: components (#7374)
[release]
2020-05-18 13:58:48 +02:00
Pooya Parsa
0337932115
feat: runtime config and built-in dotenv support (#7312)
Co-authored-by: Sébastien Chopin <seb@nuxtjs.com>
Co-authored-by: Alexander Lichter <manniL@gmx.net>
2020-05-18 10:21:15 +02:00
Pooya Parsa
42406d6075
feat: store and replay vuex mutations for static target (#7350)
* feat: store and replay vuex mutations for static target

* test: add full-static fixture

* perf: clean store subscription before render

* fix: record mutations after nuxtServerInit and middleware
2020-05-12 13:05:24 +02:00
Xin Du (Clark)
2bd2c3853d
feat(modern): remove inlined safari fix in csp mode (#7306) 2020-05-03 20:15:24 +02:00
Sébastien Chopin
76c40e3ffd
test: add test for inject in context (#7252) 2020-04-21 14:40:42 +02:00
Xin Du (Clark)
c02ded2d86
refactor(config): move build.crossorigin to render.crossorigin (#7187) 2020-04-07 11:38:49 +02:00
Pooya Parsa
06073697f4
fix(vue-app): sanitize layouts after resolve for splitChunks.layout (#7139) 2020-03-27 14:08:48 +01:00
Xin Du (Clark)
a7052b637b
feat(vue-app): trigger watchParam when param is changed in same route (#6244) 2020-03-13 21:28:42 +01:00
pooya parsa
2091233a6d test: add basic test for old-fetch functionality 2020-03-13 19:20:10 +01:00
Mark Honeychurch
084a1ca1af
chore(builder): analyze mode warning rewording (#6924) 2020-02-25 00:16:43 +01:00
Xin Du (Clark)
10ac6aed9a
feat(wepack): support @import using ~assets in css files (#6987) 2020-02-24 23:47:43 +01:00
Clark Du
115dd21b77 chore(lint): fix lint warning 2020-02-18 17:10:03 +00:00
Matteo Rigon
539c865533
fix(vue-app): use child transition name when navigating to parent (#6946) 2020-02-11 15:06:37 +01:00
Clark Du
3aeb9b3a2d chore: fix lint warning 2020-02-09 11:04:29 +00:00
Sébastien Chopin
6db325c321
feat(vue-app): new fetch syntax (#6880) 2020-02-04 19:36:22 +01:00
Pooya Parsa
8907e1553f
feat: HMR support for serverMiddleware (#6881) 2020-01-19 09:34:35 +01:00
Xin Du (Clark)
e8aca9eb11 chore: update @nuxtjs/eslint-config to v2 and fix lint errors (#6732) 2019-11-26 23:42:39 +01:00
Rafał Chłodnicki
e9945b0896 fix(vue-app): pass router mode to getLocation (#6658) 2019-11-24 14:26:33 +01:00
Ahad Birang
bb9427ee74 feat(vue-renderer): support evaluation in templates (#6505) 2019-11-24 13:31:21 +01:00
Xin Du (Clark)
8391753484 fix(webpack): normalize devtool for terser compatibility (#6566) 2019-10-19 10:21:42 +02:00
Pim
67d5601142 test: refactor cli integration tests (#6537) 2019-10-11 09:35:10 +02:00
Xin Du (Clark)
578d5d41f4 fix(vue-app): error page layout not correctly applied in client rendering (#6479) 2019-09-30 10:44:35 +02:00
Snir Shechter
92c7f4ed24 feat(builder): followSymlinks option to allow for symlinks (#6368) 2019-09-29 11:06:44 +02:00
Alexander Lichter
c202893b9e fix(webpack): correct sass options for sass-loader@8 (#6460) 2019-09-26 14:10:54 +02:00
Pim
b17f331fe5 feat: support setting (non-essential) vue-meta options by user (#6432) 2019-09-18 15:51:44 +02:00
Pim
174c13d56c feat(vue-app): support configurable features (#6287) 2019-09-05 17:15:27 +02:00
Pim
93a0924754 fix(vue-app): prevent looping on error during render of error page (#6217) 2019-09-01 16:58:56 +02:00
Xin Du (Clark)
e9c4bcfee2
feat(vue-app): function watchQuery (#6297) 2019-08-31 19:23:11 +01:00
Pim
b286024dd3 test: add client-only test to basic fixture (#6315)
test: check for no-ssr deprecation warning
2019-08-27 11:25:25 +02:00
Xin Du (Clark)
61ef86e015
test: add test for modern bundle size (#6302) 2019-08-27 00:05:29 +01:00
Xin Du (Clark)
c14bb35aad
test: remove unnecessary generate (#6301) 2019-08-25 23:41:32 +01:00
Xin Du (Clark)
d85d2fb612
Revert "feat: function watchQuery (#6245)" (#6296)
This reverts commit 3c61830a0d.
2019-08-25 10:53:23 +01:00
Xin Du (Clark)
3c61830a0d
feat: function watchQuery (#6245) 2019-08-25 10:12:59 +01:00
Pim
3a125b09d1 test: disable terser/minify by default (#6290) 2019-08-24 18:43:03 +04:30
Sébastien Chopin
09878cd6dc
feat(vue-app): add $nuxt.refresh() (#6194)
* feat(vue-app): add $nuxt.refreshPageData()

* hotifx: lint

* chore: use getMatchedComponentsInstance util

* fix: rename to refreshPage

* fix: rename to refresh

* feat: add $nuxt.$context and handle error

* feat: set $nuxt.context

* hotfix: test
2019-08-07 15:12:02 +02:00
Sébastien Chopin
c6f0f5d954 hotfix: fix config for scrollBehavior test 2019-07-24 18:14:58 +02:00
Sébastien Chopin
f7cb3dae0f feat(vue-app): support app/router.scrollBehavior.js and deprecate scrollBehavior (#6055) 2019-07-24 16:05:50 +04:30
Kevin Marrec
81b5ce22ce feat: externalize typescript support (#5858) 2019-07-24 11:56:44 +04:30
pooya parsa
e7cc2757c3 refactor: update eslint-config to 1.x
Co-authored-by: Alexander Lichter <manniL@gmx.net>
2019-07-10 15:15:49 +04:30
Ustun Ozgur
ae9d3519f7 fix(vue-renderer): clone spa meta to prevent cache modification (#5964) 2019-06-28 00:47:43 +04:30
Hyunje Jun
2a66d1952e fix(vue-app): consider watchQuery option in routerViewKey (#5516) 2019-05-09 16:23:59 +04:30
Sébastien Chopin
01acf66c67 feat(vue-app): rename transition to pageTransition and deprecate it (#5558) 2019-04-20 14:31:59 +04:30
Damian Stasik
164f73a716 chore(webpack): suggest @nuxtjs/style-resources (#5499) 2019-04-11 14:34:52 +04:30
Xin Du (Clark)
159123feea feat(babel-preset-app): support specifying core-js version (#5411) 2019-03-30 23:53:17 +04:30
Alexander Lichter
1bd4fb14ab chore(postcss): deprecate config support (#5419) 2019-03-30 23:42:12 +04:30
noe132
2d73e8aeba fix(vue-app): prevent mounting page twice on redirect (#5361) 2019-03-29 18:36:35 +04:30
Kevin Marrec
9a3fc8a44e refactor(ts): only generate tsconfig.json if missing (#5356) (#5367)
Co-authored-by: SAWADA Takayoshi <sawadasuiren@gmail.com>
2019-03-29 18:30:49 +04:30
Alexander Lichter
3ac01df488 fix(vue-app): decode router base to support unicode characters (#5297) 2019-03-20 20:16:09 +03:30
Michael Leaney
d03a61b040 fix(vue-app): multiple named views cause invalid syntax (#5262) 2019-03-19 10:25:20 +00:00
Kevin Marrec
920f444b6e refactor(ts): better DX for typescript support (#5079)
Breaking change : `build.useForkTsChecker` renamed to `build.typescript.typeCheck`
2019-03-14 13:37:47 +03:30
Pooya Parsa
aabb1f69e7
perf(core): skip esm for node_modules and non .js files (#5220) 2019-03-13 13:54:39 +03:30
Kevin Marrec
92f81e01e7 feat(ts): nuxt configuration typedefs (#4854) 2019-03-04 10:18:40 +03:30
Clark Du
b9391d7ea0 chore: fix eslint warning 2019-02-18 10:44:03 +00:00
Clark Du
5f9b1044ff Merge remote-tracking branch 'origin/2.x' into dev 2019-02-15 13:18:09 +00:00
Pooya Parsa
2015140d12 feat(vue-app): universal fetch (#5028)
* pkg(nuxt-start): add node-fetch, unfetch

* pkg(vue-app): add node-fetch, unfetch

* add yarn.lock

* feat(config): _app.fetch options

* feat(builder): add fetch to templateVars

* feat(vue-app): polyfill global with fetch

* feat(fixtures/basic): /api/test

* add fetch example to fixtures

* remove unfetch from nuxt-start

* update template snapshot

* revert extra new line in server.js

* single line if
2019-02-14 16:56:58 +01:00
Andrey Shertsinger
bcd672f931 fix: generate failure (#5007) 2019-02-13 09:18:41 +00:00
Pooya Parsa
408680046c
fix(vue-app): fix asyncData memory leak on client-side (#4966)
Co-authored-by: Sébastien Chopin <seb@chopin.io>
2019-02-08 20:03:45 +03:30
Pooya Parsa
29297160a1
feat(vue-renderer): improvements (#4722) 2019-02-08 13:35:01 +03:30
Clark Du
e9ba2f97d2 test: add describe.posix and win 2019-01-29 11:29:55 +00:00
Xin Du (Clark)
59be77a2f3
feat: .nuxtignore (#4647) 2019-01-29 09:31:14 +00:00
Kevin Marrec
f18ce4e5d4 fix(ts): better tsconfig.json handling & improve tests (#4856)
* fix(ts): make ts-node register the right `tsconfig.json`

* setup guard & change require in nuxt-ts bin

* improve tests + test guard

* remove typescript-custom fixture

* Move TS unit test from `test/unit` to `packages/typescript/test`

* fix tests
2019-01-28 16:59:13 +03:30
Kevin Marrec
55dc7f4475 fix(ts): keep baseUrl property in generated tsconfig.json (#4843) 2019-01-24 14:14:02 +03:30
Kevin Marrec
2a1ee96a4b feat(ts): auto generate tsconfig.json (#4776)
* Bundle `@types/node` into `nuxt-ts` distribution

* feat(ts): Autogenerated tsconfig.json

* fix(examples): Update typescript examples

* fix(ts): Add `dist` & `tsconfig.json` to `pakage.json` files

* fix: add missing new line at the end of generated `tsconfig.json`

* add suffix if needed to `tsconfig.json` types during package build

* use `readJSON` over `readJSONSync`

* fix indentation in `nuxt-ts/tsconfig.json`

* use writeJson instead of writeFile

* split `nuxt-ts/src` in 2 functions + rootDir parametr + add tests

* add `fs-extra` to dependencies to prevent build warning

* JSON everywhere instead of JSON/Json

* fix: missing call to generateTsConfigIfMissing

* ask confirmation for tsconfig.json generation

* improvement: let compilerOptions.module as default

* improvements

* move from github link to friendly linkable local path

* add resolveJsonModule in default config

Co-Authored-By: kevinmarrec <kevin@marrec.io>

* Move `nuxt-ts` logic to `@nuxt/typescript`

* Upgrade to `ts-node@8.0.1`
2019-01-23 10:53:52 +01:00
pooya parsa
6504e108ea chore(test): reduce use of NUXT_TS 2019-01-21 00:53:03 +03:30
Xin Du (Clark)
b23f5c9b4b feat(server): timing option for Server-Timing header (#4800) 2019-01-19 21:44:54 +03:30
Alexander Lichter
40fbe5ba47 refactor: cleanups and code style improvements (#4788) 2019-01-18 00:48:29 +03:30
Kevin Marrec
dfaffc0183 feat(nuxt-ts): typescript support improvements (#4750) 2019-01-12 23:51:21 +03:30
Sébastien Chopin
3ebd6b707e hotfix(layout): Hot fix for layout middleware 2019-01-10 19:57:32 +01:00
Xin Du (Clark)
f85ac94a87 fix(builder, module): addLayout and nuxt.config precedence over auto-scanned layouts (#4702) 2019-01-09 14:27:46 +03:30
Alexander Lichter
eef2af35e4 fix: no false positives for plugins with index.js (#4714)
resolves #4713 [release]
2019-01-08 22:55:56 +03:30
Xin Du (Clark)
af76e07b56 fix(builder): js layout (#4701)
[release]
2019-01-07 15:44:51 +03:30
Pooya Parsa
ee0096bf59
feat: nuxt-ts (#4658)
[release]
2019-01-04 23:00:28 +03:30
Alexander Lichter
471a32a1a8 feat: add styleExtensions (#4671) 2019-01-03 01:00:19 +03:30
Alexander Lichter
8786ff7317 fix: require serverMiddleware object with path and handler (#4656) 2018-12-30 01:04:47 +03:30
Kevin Marrec
f1377a7f8d feat(ts): provide type checking through fork-ts-checker-webpack-plugin (#4611) 2018-12-23 11:13:51 +03:30
Kevin Marrec
4d5274215a feat(ts): add TSX support (#4613) 2018-12-23 02:12:20 +03:30
Andrey Shertsinger
b1b9e0bcbc feat(vue-app): support named views (#4410)
* support named views for extendRoutes config

* fix lint errors

* fix lint errors 2

* some refactoring

* var rename

* fixture & unit tests

* fix: style

* nuxt-child named view example and test

* nuxt element with named view in layout

* lint
2018-12-20 16:50:22 +01:00
Clark Du
6a4808f576 fix(eslint): amp tags not support pascal case
[skip release]
2018-12-20 13:49:16 +00:00
Ricardo Gobbo de Souza
add80004ba feat(router): custom route name splitter (#4598) 2018-12-20 13:42:42 +01:00
Xin Du (Clark)
e71c4559ff feat: mode for plugins (#4592) 2018-12-20 12:58:10 +03:30
Alexander Lichter
b2eee1772e feat: add store module HMR (#4582)
* feat: add store module HMR

* fix: replace export with window.$nuxt

Thanks to @pi0 for the suggestion :)

* refactor: apply only in dev mode on client side

* test: make store module test more descriptive

* fix: clear modules to apply HMR

* fix: remove console.log

* fix: e2e tests

* refactor: use void
2018-12-19 16:22:00 +01:00
Xin Du (Clark)
e7df65be1a fix: detect plugin without extension (#4579) 2018-12-18 17:49:38 +03:30
Kevin Marrec
75e3df6be5 fix(ts): switch from babel preset to ts-loader (#4563) 2018-12-17 15:21:53 +00:00
Jonas Galvez
669fecc6a3 feat: allow scrollToTop to be explicitly disabled (#4564)
Co-authored-by: James Homer <jameshomer85@gmail.com>
2018-12-16 13:32:39 +03:30
Jonas Galvez
7831e57943 fix: properly serialize head functions (#4558)
#4079
2018-12-15 12:07:31 +03:30
Kevin Marrec
7145c1ab5d feat(builder): optional typescript support (#4557) 2018-12-15 10:25:08 +03:30
Ricardo Gobbo de Souza
99614535b5 feat(vue-app, vue-renderer): support meta headAttrs (#4536) 2018-12-14 17:36:26 +03:30
Alexander Lichter
c60b1945e8 chore: cleanup (#4529) 2018-12-12 10:01:49 +03:30
Alexander Lichter
8e0b5081f2 fix: allow pcss ending for webpack loader (#4530)
[skip ci]
2018-12-12 09:52:43 +03:30
Dmitry Molotkov
33edef2d40 fix(webpack): allow changing devtool with extend (#4515) 2018-12-11 01:04:41 +03:30
Clark Du
e6808c57ef fest: add build.corssorgin (#4472) 2018-12-05 19:51:58 +03:30
Clark Du
5a8e6e4bdf fix: merge route.meta into options.meta (#4479)
[skip release]
2018-12-04 15:49:05 +03:30
Pooya Parsa
0f104aa588
feat: improve SSR bundle (#4439)
- Better insights and inspection for server bundle
- Remove all vue related dependencies from vue-renderer package as much as possible to reduce install size of nuxt-start
- Support for single file distributions (serverless)
- Remove server-bundle.json and use the standard .js files for dist/server
- Mitigate CALL_AND_RETRY_LAST Allocation failed errors. Most of the cases happen on JSON.parse() the part when loading bundle. (#4225, #3465, #1728, #1601, #1481)
- Reduce server dist size by removing escape characters caused by JSON serialize
- Faster dev reloads and production start by removing extra JSON.serialize/JSON.parse time
- Less memory usage
- General performance improvements and refactors
2018-12-01 13:43:28 +03:30