/
constants.js
52 lines (41 loc) · 1.61 KB
/
constants.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import _ from "lodash"
// Gatsby values
export const BUILD_HTML_STAGE = `build-html`
export const BUILD_CSS_STAGE = `build-css`
// Plugin values
export const HEADERS_FILENAME = `_headers.json`
export const REDIRECTS_FILENAME = `_redirects.json`
export const PUBLIC_FUNCTIONS_FILENAME = `_functions.json`
export const SITE_CONFIG_FILENAME = `_gatsby-config.json`
export const CACHE_FUNCTIONS_FILENAME = `manifest.json`
export const DEFAULT_OPTIONS = {
headers: {},
mergeSecurityHeaders: true,
mergeLinkHeaders: true,
mergeCachingHeaders: true,
transformHeaders: _.identity, // optional transform for manipulating headers for sorting, etc
generateMatchPathRewrites: true, // generate rewrites for client only paths
}
export const SECURITY_HEADERS = {
"/*": [
`X-Frame-Options: DENY`,
`X-XSS-Protection: 1; mode=block`,
`X-Content-Type-Options: nosniff`,
`Referrer-Policy: same-origin`,
],
}
export const IMMUTABLE_CACHING_HEADER = `Cache-Control: public, max-age=31536000, immutable`
export const NEVER_CACHE_HEADER = `Cache-Control: public, max-age=0, must-revalidate`
export const CACHING_HEADERS = {
"/static/*": [IMMUTABLE_CACHING_HEADER],
"/sw.js": [NEVER_CACHE_HEADER],
}
export const LINK_REGEX = /^(Link: <\/)(.+)(>;.+)/
export const COMMON_BUNDLES = [`commons`, `app`]
export const PAGE_DATA_DIR = `page-data/`
export const POLLING_INTERVAL = 5000
export const FEEDBACK_COOKIE_NAME = `last_feedback`
export const DAYS_BEFORE_FEEDBACK = 30
export const INTERACTION_COOKIE_NAME = `interaction_count`
export const INTERACTIONS_BEFORE_FEEDBACK = 3
export const FEEDBACK_URL = `https://gatsby.dev/zrx`