79 lines
4.1 KiB
JSON
79 lines
4.1 KiB
JSON
{
|
|
"database": {
|
|
"rules": "database.rules.json"
|
|
},
|
|
"hosting": {
|
|
"public": "dist",
|
|
"cleanUrls": true,
|
|
"redirects": [
|
|
//////////////////////////////////////////////////////////////////////////////////////////////
|
|
// README:
|
|
// Redirects must also be handled by the ServiceWorker. If you add a redirect rule here,
|
|
// make sure the routing RegExp in `ngsw-manifest.json` is updated accordingly.
|
|
//////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// cli-quickstart.html, glossary.html, quickstart.html, server-communication.html, style-guide.html
|
|
{"type": 301, "source": "/docs/ts/latest/cli-quickstart.html", "destination": "/guide/quickstart"},
|
|
{"type": 301, "source": "/docs/ts/latest/glossary.html", "destination": "/guide/glossary"},
|
|
{"type": 301, "source": "/docs/ts/latest/quickstart.html", "destination": "/guide/quickstart"},
|
|
{"type": 301, "source": "/docs/ts/latest/guide/server-communication.html", "destination": "/guide/http"},
|
|
{"type": 301, "source": "/docs/ts/latest/guide/style-guide.html", "destination": "/guide/styleguide"},
|
|
|
|
// guide/cli-quickstart, styleguide
|
|
{"type": 301, "source": "/guide/cli-quickstart", "destination": "/guide/quickstart"},
|
|
{"type": 301, "source": "/styleguide", "destination": "/guide/styleguide"},
|
|
|
|
// cookbook/a1-a2-quick-reference.html, cookbook/component-communication.html, cookbook/dependency-injection.html
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/a1-a2-quick-reference.html", "destination": "/guide/ajs-quick-reference"},
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/component-communication.html", "destination": "/guide/component-interaction"},
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/dependency-injection.html", "destination": "/guide/dependency-injection-in-action"},
|
|
|
|
// cookbook, cookbook/, cookbook/index.html
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook", "destination": "/docs"},
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/", "destination": "/docs"},
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/index.html", "destination": "/docs"},
|
|
|
|
// cookbook/*.html
|
|
{"type": 301, "source": "/docs/ts/latest/cookbook/:cookbook.html", "destination": "/guide/:cookbook"},
|
|
|
|
// docs/ts/latest/api/<package>/index/*-<type>.html (+ special case for `NgFor` which has been renamed)
|
|
{"type": 301, "source": "/docs/ts/latest/api/common/index/NgFor-directive.html", "destination": "/api/common/NgForOf"},
|
|
{"type": 301, "source": "/docs/ts/latest/api/:package/index/:api-*.html", "destination": "/api/:package/:api"},
|
|
|
|
// docs/ts/latest
|
|
{"type": 301, "source": "/docs/ts/latest", "destination": "/docs"},
|
|
|
|
// guide/*, tutorial/*, **/*
|
|
{"type": 301, "source": "/docs/ts/latest/:any*", "destination": "/:any*"},
|
|
|
|
// aot-compiler.md and metadata.md combined into aot-compiler.md - issue #19510
|
|
{"type": 301, "source": "/guide/metadata", "destination": "/guide/aot-compiler"},
|
|
|
|
// ngmodule.md renamed to ngmodules.md
|
|
{"type": 301, "source": "/guide/ngmodule", "destination": "/guide/ngmodules"},
|
|
|
|
// service-worker-getstart.md, service-worker-comm.md, service-worker-configref.md
|
|
{"type": 301, "source": "/guide/service-worker-getstart", "destination": "/guide/service-worker-getting-started"},
|
|
{"type": 301, "source": "/guide/service-worker-comm", "destination": "/guide/service-worker-communications"},
|
|
{"type": 301, "source": "/guide/service-worker-configref", "destination": "/guide/service-worker-config"}
|
|
],
|
|
"rewrites": [
|
|
{
|
|
"source": "**/!(*.*)",
|
|
"destination": "/index.html"
|
|
}
|
|
],
|
|
"headers": [
|
|
{
|
|
"source": "/",
|
|
"headers": [
|
|
{
|
|
"key": "Link",
|
|
"value": "</generated/navigation.json>;rel=preload;as=fetch,</generated/docs/index.json>;rel=preload;as=fetch"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|