Nuxt/packages/config/test/__snapshots__/options.test.js.snap
Sébastien Chopin 917adc0618
feat: options.target and full-static export (#6159)
* feat: add options.target

* fix(lint): lint

* fix(test): update snapshots

* fix(builder): default value for target

* fix(test): fix test

* fix(test): test fixing

* fix: use this.options.target

* fix: final test

* Update packages/vue-renderer/src/renderer.js

Co-Authored-By: Alexander Lichter <manniL@gmx.net>

* feat: Add target option and update banner

* fix(lint): fix

* feat: Add warning when using serverMiddleware in static target

* chore(utils): add TARGETS and MODES as constants

* hotfix: lint

* chore(module): add filename as alias of fileName

* feat: introducing nuxt export and router/routes.json

* hotfix: Fix the linting lord

* chore(core): add comment for filename vs fileName

* fix: use targets constant

* chore: remove warning

* fix: unit testing

* wip: refactor and use TARGETS

* fix: lint

* feat: add target as alias for first arg value

* fix: generate only for SPA

* chore: explain to use nuxt static X

* fix: render SPA fallback on redirect for static target

* fix: lint issue

* fix: only target is useful for now

* wip

* wip: nuxt static export is looking good

* Update packages/generator/src/generator.js

Co-Authored-By: Devon Rueckner <indirectlylit@users.noreply.github.com>

* Update packages/cli/src/options/common.js

Co-Authored-By: Alexander Lichter <manniL@gmx.net>

* feat: add options.target

* fix(lint): lint

* fix(test): update snapshots

* fix(builder): default value for target

* fix(test): fix test

* fix(test): test fixing

* fix: use this.options.target

* fix: final test

* Update packages/vue-renderer/src/renderer.js

Co-Authored-By: Alexander Lichter <manniL@gmx.net>

* feat: Add target option and update banner

* fix(lint): fix

* feat: Add warning when using serverMiddleware in static target

* chore(utils): add TARGETS and MODES as constants

* hotfix: lint

* chore(module): add filename as alias of fileName

* feat: introducing nuxt export and router/routes.json

* hotfix: Fix the linting lord

* chore(core): add comment for filename vs fileName

* fix: use targets constant

* chore: remove warning

* fix: unit testing

* wip: refactor and use TARGETS

* fix: lint

* feat: add target as alias for first arg value

* chore: explain to use nuxt static X

* fix: render SPA fallback on redirect for static target

* fix: lint issue

* fix: only target is useful for now

* wip

* wip: nuxt static export is looking good

* Update packages/generator/src/generator.js

Co-Authored-By: Devon Rueckner <indirectlylit@users.noreply.github.com>

* Update packages/cli/src/options/common.js

Co-Authored-By: Alexander Lichter <manniL@gmx.net>

* fix: duplicate imports

* chore: don't server render if an error happens on static target

* test: update unit and add export

* lint: fix

* lint: fix

* fix: e2e test

* fix: fallback only for static target

* fix: dev test

* feat: add generate.crawler

* fix: full static is when generate.static is given

* chore: improvements

* fix: Add isFullStatic in nuxt/config.json

* feat: handle fetch for full static

* feat: router.prefetchPayloads for full static

* chore: use fetch in async-data example

* fix: add target only if given

* fix: use created to have access to props in fetchOnServer

* chore: add console.error in dev for easy debugging

* feat: payload smart pre-fetching

* fix: remove alias for target

* fix: increment payloadFetchIndex is static set to false

* chore: lint

* chore: add serve command

* chore: rename universal to server-side

* fix: handle payloadPath on SPA fallback

* fix: lint

* chore lint again

* feat: handle spa fallback

* feat: support string for exclude

* fix: fallback only if no extension or html

* chore: use JSON.stringify() for static target

* chore: lint again, dammit

* chore: fix tests and remove too early return

* fix: early return only for server target

* fix: update tests

* fix: unit tests

* chore: add ssr option

* chore: add logic for ssr option

* fix: #6682

* chore(dx): add next command to run

* fix: lint

* fix: tests

* chore: keep old behaviour for nuxt build in spa

* fix: test again, oh boy

* fix: alright this is good now

* chore: add comment for spa fallback

* chore: move routes.json to dot nuxt dir

* chore: simplify check for promise

* chore: unique lock id

* chore: refactor isFullStatic

* fix: dont set default in build context

* chore: add test for serve

* chore: update tests

* hotfix: lint tests

* chore(dx): improve message for bundling

* feat: js payload extraction with jsonp

* fix: keep serialized session script for legacy generate

* fix: call to setPagePayload from fetchPayload

* use devalue for payload chunks

* feat: add initial load state chunk

* feat: preload payload and state scripts

* fix(vue-app): don't re-render the app if trailing slash on SSG

* hotfix: remove console.log

* chore(dx): add deploy infos for nuxt export

Co-authored-by: Pooya Parsa <pyapar@gmail.com>

* chore: handle fetching payload.js for nuxt state

* chore(dx): error when using nuxt generate and static

* chore: remove static option for clarity

* chore: remove serverless target

* hotfix: lint

* hotfix: unit tests

* chore: update legacy js resource

* chore: remove query params from url in static target

* fix: use globalName and urlJoin

* chore: typo

* feat: previewMode 👀

* chore: rename to enablePreview

* fix: wait next tick to avoid error on spa

* chore: try 1 sec

* hotfix: test only for linux, wtf azure

* refactor: static assets

- generalize logic for modules need emit export static assets
- allow customization for version, dir and base
- serialization logic is only in ssr now

* feat: smart state chunk creates

* fix(client): ignore payload load error

* perf: avoide payload loading for spa initial

* perf: avoid loading failed chunks again

* chore(cli): add simple compression for nuxt serve

* test: update snapshots

* fix version snapshot

* fix(generator): set staticAssetsBase on context only for full static

* fix tests

* fix: honor shouldHashCspScriptSrc

* chore(dx): add log for client-side fallback creation

Co-authored-by: Xin Du (Clark) <clark.duxin@gmail.com>
Co-authored-by: Alexander Lichter <manniL@gmx.net>
Co-authored-by: Pooya Parsa <pooya@pi0.ir>
Co-authored-by: Devon Rueckner <indirectlylit@users.noreply.github.com>
Co-authored-by: Pooya Parsa <pyapar@gmail.com>
2020-05-07 21:08:01 +02:00

399 lines
9.0 KiB
Plaintext

// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`config: options should return default nuxt config 1`] = `
Object {
"ErrorPage": null,
"__normalized__": true,
"_nuxtConfigFile": "/var/nuxt/test/nuxt.config.js",
"_nuxtConfigFiles": Array [
"/var/nuxt/test/nuxt.config.js",
],
"alias": Object {
"@": "/var/nuxt/test",
"@@": "/var/nuxt/test",
"assets": "/var/nuxt/test/assets",
"static": "/var/nuxt/test/static",
"~": "/var/nuxt/test",
"~~": "/var/nuxt/test",
},
"appTemplatePath": "/var/nuxt/test/.nuxt/views/app.template.html",
"build": Object {
"_publicPath": "/_nuxt/",
"additionalExtensions": Array [],
"aggressiveCodeRemoval": false,
"analyze": false,
"babel": Object {
"babelrc": false,
"cacheDirectory": false,
"configFile": false,
},
"cache": false,
"cssSourceMap": false,
"devMiddleware": Object {},
"extractCSS": false,
"filenames": Object {
"app": [Function],
"chunk": [Function],
"css": [Function],
"font": [Function],
"img": [Function],
"video": [Function],
},
"followSymlinks": false,
"friendlyErrors": true,
"hardSource": false,
"hotMiddleware": Object {},
"html": Object {
"minify": Object {
"collapseBooleanAttributes": true,
"decodeEntities": true,
"minifyCSS": true,
"minifyJS": true,
"processConditionalComments": true,
"removeEmptyAttributes": true,
"removeRedundantAttributes": true,
"trimCustomFragments": true,
"useShortDoctype": true,
},
},
"indicator": false,
"loaders": Object {
"css": Object {
"sourceMap": false,
},
"cssModules": Object {
"modules": Object {
"localIdentName": "[local]_[hash:base64:5]",
},
"sourceMap": false,
},
"file": Object {},
"fontUrl": Object {
"limit": 1000,
},
"imgUrl": Object {
"limit": 1000,
},
"less": Object {
"sourceMap": false,
},
"pugPlain": Object {},
"sass": Object {
"sassOptions": Object {
"indentedSyntax": true,
},
"sourceMap": false,
},
"scss": Object {
"sourceMap": false,
},
"stylus": Object {
"sourceMap": false,
},
"vue": Object {
"productionMode": true,
"transformAssetUrls": Object {
"embed": "src",
"object": "src",
"source": "src",
"video": "src",
},
},
"vueStyle": Object {
"sourceMap": false,
},
},
"loadingScreen": false,
"optimization": Object {
"minimize": true,
"minimizer": undefined,
"runtimeChunk": "single",
"splitChunks": Object {
"automaticNameDelimiter": ".",
"cacheGroups": Object {},
"chunks": "all",
"name": undefined,
},
},
"optimizeCSS": false,
"parallel": false,
"plugins": Array [],
"postcss": Object {
"preset": Object {
"stage": 2,
},
},
"profile": false,
"publicPath": "/_nuxt/",
"quiet": true,
"serverURLPolyfill": "url",
"splitChunks": Object {
"commons": true,
"layouts": false,
"pages": true,
},
"ssr": true,
"standalone": false,
"stats": false,
"styleResources": Object {},
"template": undefined,
"templates": Array [],
"terser": Object {},
"transpile": Array [],
"warningIgnoreFilters": Array [],
"watch": Array [],
},
"buildDir": "/var/nuxt/test/.nuxt",
"buildModules": Array [],
"cli": Object {
"badgeMessages": Array [],
"bannerColor": "green",
},
"css": Array [],
"debug": false,
"dev": false,
"dir": Object {
"app": "app",
"assets": "assets",
"layouts": "layouts",
"middleware": "middleware",
"pages": "pages",
"static": "static",
"store": "store",
},
"editor": undefined,
"env": Object {},
"extendPlugins": null,
"extensions": Array [
"js",
"mjs",
],
"features": Object {
"asyncData": true,
"clientOnline": true,
"clientPrefetch": true,
"clientUseUrl": false,
"componentAliases": true,
"componentClientOnly": true,
"deprecations": true,
"fetch": true,
"layouts": true,
"meta": true,
"middleware": true,
"store": true,
"transitions": true,
"validate": true,
},
"fetch": Object {
"client": true,
"server": true,
},
"generate": Object {
"concurrency": 500,
"crawler": true,
"dir": "/var/nuxt/test/dist",
"exclude": Array [],
"fallback": "200.html",
"interval": 0,
"routes": Array [],
"staticAssets": Object {
"base": "/_nuxt/static",
"dir": "static",
"version": "x",
"versionBase": "/_nuxt/static/x",
},
"subFolders": true,
},
"globalName": "nuxt",
"globals": Object {
"context": [Function],
"id": [Function],
"loadedCallback": [Function],
"nuxt": [Function],
"pluginPrefix": [Function],
"readyCallback": [Function],
},
"head": Object {
"link": Array [],
"meta": Array [],
"script": Array [],
"style": Array [],
},
"hooks": null,
"ignore": Array [
"**/*.test.*",
"**/*.spec.*",
"**/-*.*",
],
"ignoreOptions": undefined,
"ignorePrefix": "-",
"layoutTransition": Object {
"mode": "out-in",
"name": "layout",
},
"layouts": Object {},
"loading": Object {
"color": "black",
"continuous": false,
"css": true,
"duration": 5000,
"failedColor": "red",
"height": "2px",
"rtl": false,
"throttle": 200,
},
"loadingIndicator": Object {
"background": "white",
"color": "black",
"color2": "#F5F5F5",
"dev": false,
"loading": "Loading...",
"name": "default",
},
"messages": Object {
"back_to_home": "Back to the home page",
"client_error": "Error",
"client_error_details": "An error occurred while rendering the page. Check developer tools console for details.",
"error_404": "This page could not be found",
"loading": "Loading...",
"nuxtjs": "Nuxt.js",
"server_error": "Server error",
"server_error_details": "An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.",
},
"mode": "universal",
"modern": undefined,
"modes": Object {
"spa": Object {
"build": Object {
"ssr": false,
},
"render": Object {
"ssr": false,
},
},
"universal": Object {
"build": Object {
"ssr": true,
},
"render": Object {
"ssr": true,
},
},
},
"modules": Array [],
"modulesDir": Array [
"/var/nuxt/node_modules",
"/var/nuxt/test/node_modules",
],
"pageTransition": Object {
"appear": false,
"appearActiveClass": "appear-active",
"appearClass": "appear",
"appearToClass": "appear-to",
"mode": "out-in",
"name": "page",
},
"plugins": Array [],
"render": Object {
"bundleRenderer": Object {
"runInNewContext": false,
"shouldPrefetch": [Function],
"shouldPreload": [Function],
},
"compressor": Object {
"threshold": 0,
},
"crossorigin": undefined,
"csp": false,
"dist": Object {
"index": false,
"maxAge": "1y",
},
"etag": Object {
"weak": false,
},
"fallback": Object {
"dist": Object {},
"static": Object {
"handlers": Object {
".htm": false,
".html": false,
},
"skipUnknown": true,
},
},
"http2": Object {
"push": false,
"pushAssets": null,
"shouldPush": null,
},
"resourceHints": true,
"ssr": true,
"ssrLog": false,
"static": Object {
"prefix": true,
},
},
"rootDir": "/var/nuxt/test",
"router": Object {
"base": "/",
"extendRoutes": null,
"fallback": false,
"linkActiveClass": "nuxt-link-active",
"linkExactActiveClass": "nuxt-link-exact-active",
"linkPrefetchedClass": false,
"middleware": Array [],
"mode": "history",
"parseQuery": false,
"prefetchLinks": true,
"prefetchPayloads": true,
"routeNameSplitter": "-",
"routes": Array [],
"scrollBehavior": null,
"stringifyQuery": false,
"trailingSlash": undefined,
},
"server": Object {
"host": "localhost",
"https": false,
"port": 3000,
"socket": undefined,
"timing": false,
},
"serverMiddleware": Array [],
"srcDir": "/var/nuxt/test",
"ssr": true,
"styleExtensions": Array [
"css",
"pcss",
"postcss",
"styl",
"stylus",
"scss",
"sass",
"less",
],
"target": "server",
"test": true,
"vue": Object {
"config": Object {
"performance": false,
"silent": true,
},
},
"vueMeta": null,
"watch": Array [
"/var/nuxt/test/nuxt.config.js",
],
"watchers": Object {
"chokidar": Object {
"ignoreInitial": true,
},
"rewatchOnRawEvents": undefined,
"webpack": Object {
"aggregateTimeout": 1000,
},
},
}
`;