1 | 'use strict'
|
2 |
|
3 | const { resolve } = require('path')
|
4 |
|
5 | const { parseAllHeaders } = require('netlify-headers-parser')
|
6 |
|
7 | const { warnHeadersParsing, warnHeadersCaseSensitivity } = require('./log/messages')
|
8 |
|
9 |
|
10 | const getHeadersPath = function ({ build: { publish } }) {
|
11 | return resolve(publish, HEADERS_FILENAME)
|
12 | }
|
13 |
|
14 | const HEADERS_FILENAME = '_headers'
|
15 |
|
16 |
|
17 | const addHeaders = async function ({ headers: configHeaders, ...config }, headersPath, logs) {
|
18 | const { headers, errors } = await parseAllHeaders({
|
19 | headersFiles: [headersPath],
|
20 | configHeaders,
|
21 | minimal: true,
|
22 | })
|
23 | warnHeadersParsing(logs, errors)
|
24 | warnHeadersCaseSensitivity(logs, headers)
|
25 | return { ...config, headers }
|
26 | }
|
27 |
|
28 | module.exports = { getHeadersPath, addHeaders }
|