forked from act-rules/act-rules-web
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gatsby-config.js
112 lines (110 loc) · 2.37 KB
/
gatsby-config.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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
require('dotenv').config({
path: `.env.${process.env.NODE_ENV}`,
})
const packageJson = require('./package.json')
const testcasesJson = require('./_data/testcases/testcases.json')
const {
config: { actRulesCommunityPkgJson, actRulesCommunityRulesDir, actRulesCommunityPagesDir },
} = packageJson
const actRulesPackageJson = require(`${__dirname}/${actRulesCommunityPkgJson}`)
module.exports = {
siteMetadata: {
actRulesPackage: JSON.stringify(actRulesPackageJson),
},
plugins: [
`gatsby-plugin-react-helmet`,
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-manifest`,
options: {
name: `gatsby-starter-default`,
start_url: `/`,
icon: `src/images/logo.png`,
},
},
{
resolve: `gatsby-plugin-webfonts`,
options: {
fonts: {
google: [
{
family: `Lora`,
variants: [`400`, `700`],
},
{
family: `Roboto`,
variants: [`400`, `700`],
},
],
},
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `modify-heading`,
options: {
matchPath: /pages\/glossary\//,
matchHeadingDepths: [4],
getHeading: (currentValue, frontmatter) => {
return `${currentValue} for ${frontmatter.title}`
},
},
},
{
resolve: `swap-heading-level`,
options: {
matchPath: /pages\/glossary\//,
fromHeadingDepth: 4,
toHeadingDepth: 3,
},
},
{
resolve: `rule-example-open-in-new-tab`,
options: {
matchPath: /rules\//,
headingDepth: 4,
title: `Open in a new tab`,
testcases: JSON.stringify(testcasesJson.testcases),
},
},
`gatsby-remark-autolink-headers`,
`gatsby-remark-copy-linked-files`,
`gatsby-remark-prismjs`,
],
},
},
`gatsby-plugin-sass`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
},
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'rules',
path: `${__dirname}/${actRulesCommunityRulesDir}`,
},
},
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'pages',
path: `${__dirname}/${actRulesCommunityPagesDir}`,
},
},
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'data',
path: `${__dirname}/_data`,
},
},
],
}