1 | 'use strict'
|
2 |
|
3 | const { resolve } = require('path')
|
4 |
|
5 | const { parseAllRedirects } = require('netlify-redirect-parser')
|
6 |
|
7 | const { warnRedirectsParsing } = require('./log/messages')
|
8 |
|
9 |
|
10 | const getRedirectsPath = function ({ build: { publish } }) {
|
11 | return resolve(publish, REDIRECTS_FILENAME)
|
12 | }
|
13 |
|
14 | const REDIRECTS_FILENAME = '_redirects'
|
15 |
|
16 |
|
17 | const addRedirects = async function ({ redirects: configRedirects, ...config }, redirectsPath, logs) {
|
18 | const { redirects, errors } = await parseAllRedirects({
|
19 | redirectsFiles: [redirectsPath],
|
20 | configRedirects,
|
21 | minimal: true,
|
22 | })
|
23 | warnRedirectsParsing(logs, errors)
|
24 | return { ...config, redirects }
|
25 | }
|
26 |
|
27 | module.exports = { getRedirectsPath, addRedirects }
|