Commit Graph

436 Commits

Author SHA1 Message Date
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
Dmitry Molotkov a6fed0acbd fix(vue-app): allow passing custom props to error function (#4462)
Resolves #4460.
2018-11-30 22:45:29 +03:30
Alexander Lichter 71136fc9b6 feat: allow `lang="postcss"` in Vue SFCs (#4417)
* fix: allow postcss lang as tag

* refactor: own postcss rule
2018-11-30 16:23:44 +01:00
Clark Du 701190d796
feat: preload and push modern resources in modern mode (#4362) 2018-11-26 12:09:30 +00:00
Dmitry Molotkov 949785f58e fix(server, vue-app): allow unicode page names (#4402) 2018-11-25 18:22:37 +03:30