Skip to content

Commit ee96bcc

Browse files
authored
Update dependencies and re-structure the repo (#29)
1 parent 7c0f802 commit ee96bcc

File tree

10 files changed

+3370
-2603
lines changed

10 files changed

+3370
-2603
lines changed

.eslintignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@ npm
22
dist
33
build
44
coverage
5-
node_modules
5+
node_modules
6+
__mocks__
7+
__snapshots__

babel.config.js

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
module.exports = (api, options, cwd) => {
2+
api.assertVersion(7);
3+
4+
let caller = "";
5+
6+
api.caller((instance) => {
7+
if (instance != null) {
8+
caller = instance.name;
9+
}
10+
11+
return true;
12+
});
13+
14+
const env = api.env();
15+
api.cache.using(() =>
16+
JSON.stringify({
17+
env,
18+
caller,
19+
cwd,
20+
options,
21+
NODE_ENV: process.env.NODE_ENV,
22+
BABEL_ENV: process.env.BABEL_ENV
23+
})
24+
);
25+
26+
return {
27+
presets: [
28+
[
29+
"@babel/preset-env",
30+
{
31+
forceAllTransforms: true,
32+
targets: {
33+
node: true
34+
}
35+
}
36+
],
37+
"@babel/preset-react"
38+
],
39+
plugins: [
40+
"add-module-exports",
41+
"@babel/plugin-transform-runtime",
42+
"@babel/plugin-proposal-object-rest-spread"
43+
]
44+
};
45+
};

eslint.config.js

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
const prettier = require("./prettier.config");
2+
3+
module.exports = {
4+
parser: "babel-eslint",
5+
parserOptions: {
6+
sourceType: "module"
7+
},
8+
extends: ["eslint:recommended", "plugin:react/recommended", "prettier"],
9+
plugins: ["react", "jest", "json", "prettier", "filenames"],
10+
env: {
11+
es6: true,
12+
node: true,
13+
jest: true
14+
},
15+
rules: {
16+
"semi": "error",
17+
"require-jsdoc": "error",
18+
"valid-jsdoc": [
19+
"error",
20+
{
21+
preferType: {
22+
any: "*",
23+
Boolean: "boolean",
24+
Number: "number",
25+
Object: "object",
26+
String: "string",
27+
return: "returns"
28+
},
29+
requireReturnType: true,
30+
requireParamDescription: true,
31+
requireReturnDescription: true
32+
}
33+
],
34+
"quotes": [
35+
"error",
36+
"double",
37+
{
38+
avoidEscape: true
39+
}
40+
],
41+
"filenames/no-index": "off",
42+
"filenames/match-exported": ["error", [null, "kebab", "camel"]],
43+
"prettier/prettier": ["error", prettier]
44+
}
45+
};

jest.config.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
module.exports = {
2+
moduleFileExtensions: ["js", "jsx"],
3+
testMatch: ["**/specs/**/*[.-][Ss]pec{,s}.{j}s"],
4+
rootDir: ".",
5+
verbose: false,
6+
resetMocks: true,
7+
resetModules: true,
8+
collectCoverageFrom: [
9+
"src/*.js",
10+
"!**/*.min.js",
11+
"!**/static/**",
12+
"!**/specs/**",
13+
"!**/node_modules/**"
14+
]
15+
};

package.json

Lines changed: 28 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -29,136 +29,52 @@
2929
"build": "rimraf gatsby-ssr.js index.js && cross-env BABEL_ENV=production babel src --out-dir .",
3030
"clean": "npx rimraf node_modules",
3131
"format": "prettier --write ./{src,specs}/{,**}/*.js",
32-
"lint": "eslint ./{src,specs}/{,**}/*.js",
32+
"lint": "eslint ./{src,specs}/{,**}/*.js --config eslint.config.js",
3333
"test": "jest",
3434
"test:verbose": "jest --verbose",
3535
"test:coverage": "jest --coverage --runInBand --no-cache",
3636
"release": "yarn run build && ./node_modules/.bin/standard-version"
3737
},
3838
"devDependencies": {
39-
"@babel/cli": "^7.5.5",
40-
"@babel/core": "^7.5.5",
41-
"@babel/preset-env": "^7.5.5",
42-
"@babel/preset-react": "^7.0.0",
43-
"@babel/plugin-proposal-object-rest-spread": "^7.5.5",
44-
"@babel/plugin-transform-modules-commonjs": "^7.5.0",
45-
"@babel/plugin-transform-runtime": "^7.5.5",
46-
"babel-eslint": "^10.0.2",
39+
"@babel/cli": "^7.10.3",
40+
"@babel/core": "^7.10.3",
41+
"@babel/preset-env": "^7.10.3",
42+
"@babel/preset-react": "^7.10.1",
43+
"@babel/plugin-proposal-object-rest-spread": "^7.10.3",
44+
"@babel/plugin-transform-modules-commonjs": "^7.10.1",
45+
"@babel/plugin-transform-runtime": "^7.10.3",
46+
"babel-eslint": "^10.1.0",
4747
"babel-plugin-add-module-exports": "^1.0.2",
48-
"cross-env": "^5.2.0",
49-
"eslint": "^6.1.0",
50-
"eslint-config-prettier": "^6.0.0",
48+
"cross-env": "^7.0.2",
49+
"eslint": "^7.3.1",
50+
"eslint-config-prettier": "^6.11.0",
5151
"eslint-plugin-filenames": "^1.3.2",
52-
"eslint-plugin-jest": "^22.13.0",
53-
"eslint-plugin-json": "^1.4.0",
54-
"eslint-plugin-prettier": "^3.1.0",
55-
"husky": "^3.0.1",
56-
"jest": "^24.8.0",
57-
"lint-staged": "^9.2.0",
58-
"prettier": "^1.18.2",
59-
"react": "^16.8.6",
60-
"remark": "^11.0.0",
61-
"rimraf": "^2.6.2",
62-
"standard-version": "^6.0.1"
52+
"eslint-plugin-jest": "^23.17.1",
53+
"eslint-plugin-json": "^2.1.1",
54+
"eslint-plugin-prettier": "^3.1.4",
55+
"eslint-plugin-react": "^7.20.0",
56+
"husky": "^4.2.5",
57+
"jest": "^26.1.0",
58+
"lint-staged": "^10.2.11",
59+
"prettier": "^2.0.5",
60+
"react": "^16.13.1",
61+
"remark": "^12.0.0",
62+
"rimraf": "^3.0.2",
63+
"standard-version": "^8.0.0"
6364
},
6465
"dependencies": {
65-
"@babel/runtime": "^7.5.5",
66+
"@babel/runtime": "^7.10.3",
6667
"async-unist-util-visit": "^1.0.0",
6768
"cheerio": "^1.0.0-rc.3",
68-
"parse-numeric-range": "^0.0.2",
69-
"request": "^2.88.0",
70-
"request-promise": "^4.2.4"
69+
"parse-numeric-range": "^1.2.0",
70+
"request": "^2.88.2",
71+
"request-promise": "^4.2.5"
7172
},
7273
"peerDependencies": {
7374
"gatsby": "*",
7475
"gatsby-transformer-remark": "*",
7576
"react": "*"
7677
},
77-
"babel": {
78-
"presets": [
79-
[
80-
"@babel/preset-env",
81-
{
82-
"forceAllTransforms": true,
83-
"targets": {
84-
"node": true
85-
}
86-
}
87-
],
88-
"@babel/preset-react"
89-
],
90-
"plugins": [
91-
"add-module-exports",
92-
"@babel/plugin-transform-runtime",
93-
"@babel/plugin-proposal-object-rest-spread"
94-
]
95-
},
96-
"eslintConfig": {
97-
"parser": "babel-eslint",
98-
"parserOptions": {
99-
"sourceType": "module"
100-
},
101-
"extends": [
102-
"eslint:recommended",
103-
"prettier"
104-
],
105-
"plugins": [
106-
"jest",
107-
"json",
108-
"prettier",
109-
"filenames"
110-
],
111-
"env": {
112-
"es6": true,
113-
"node": true,
114-
"jest": true
115-
},
116-
"rules": {
117-
"semi": "error",
118-
"no-undef": "off",
119-
"no-unused-vars": "off",
120-
"no-dupe-class-members": "off",
121-
"require-jsdoc": "error",
122-
"valid-jsdoc": [
123-
"error",
124-
{
125-
"preferType": {
126-
"any": "*",
127-
"Boolean": "boolean",
128-
"Number": "number",
129-
"Object": "object",
130-
"String": "string",
131-
"return": "returns"
132-
},
133-
"requireReturnType": true,
134-
"requireParamDescription": true,
135-
"requireReturnDescription": true
136-
}
137-
],
138-
"quotes": [
139-
"error",
140-
"double",
141-
{
142-
"avoidEscape": true
143-
}
144-
],
145-
"no-console": "off",
146-
"filenames/no-index": "off",
147-
"filenames/match-exported": [
148-
"error",
149-
[
150-
null,
151-
"kebab",
152-
"camel"
153-
]
154-
],
155-
"jest/no-disabled-tests": "error",
156-
"jest/no-focused-tests": "error",
157-
"jest/no-identical-title": "error",
158-
"jest/valid-expect": "error",
159-
"prettier/prettier": "error"
160-
}
161-
},
16278
"husky": {
16379
"hooks": {
16480
"pre-commit": "lint-staged && npm test"
@@ -169,27 +85,5 @@
16985
"prettier --write",
17086
"git add"
17187
]
172-
},
173-
"jest": {
174-
"moduleFileExtensions": [
175-
"js",
176-
"jsx",
177-
"ts",
178-
"tsx"
179-
],
180-
"testMatch": [
181-
"**/specs/**/*[.-][Ss]pec{,s}.{j,t}s{,x}"
182-
],
183-
"rootDir": ".",
184-
"verbose": false,
185-
"resetMocks": true,
186-
"resetModules": true,
187-
"collectCoverageFrom": [
188-
"src/*.{j,t}s{,x}",
189-
"!**/*.min.js",
190-
"!**/static/**",
191-
"!**/specs/**",
192-
"!**/node_modules/**"
193-
]
19488
}
19589
}

prettier.config.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module.exports = {
2+
printWidth: 80,
3+
tabWidth: 2,
4+
useTabs: false,
5+
semi: true,
6+
singleQuote: false,
7+
quoteProps: "consistent",
8+
trailingComma: "none",
9+
bracketSpacing: true,
10+
arrowParens: "always",
11+
insertPragma: false,
12+
endOfLine: "lf",
13+
proseWrap: "preserve",
14+
htmlWhitespaceSensitivity: "css",
15+
jsxSingleQuote: false,
16+
jsxBracketSameLine: false
17+
};

specs/index.specs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ jest.mock("request-promise");
33
import remark from "remark";
44
import plugin from "../src/index";
55

6-
const getNodeContent = node => node.children[0].children[0];
6+
const getNodeContent = (node) => node.children[0].children[0];
77

88
describe("gatsby-remark-embedded-gist", () => {
99
it("generates an embedded gist with username", async () => {

src/gatsby-ssr.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ export function onRenderBody({ setHeadComponents }, options = {}) {
1919
as="style"
2020
href="https://github.githubassets.com/assets/gist-embed-b3b573358bfc66d89e1e95dbf8319c09.css"
2121
key="gist-embeded-b3b573358bfc66d89e1e95dbf8319c09"
22-
onload="this.onload=null;this.rel='stylesheet'"
22+
onLoad="this.onload=null;this.rel='stylesheet'"
2323
rel="preload"
2424
/>,
25-
<noscript>
25+
<noscript key="gist-embeded-noscript-b3b573358bfc66d89e1e95dbf8319c09">
2626
<link
2727
href="https://github.githubassets.com/assets/gist-embed-b3b573358bfc66d89e1e95dbf8319c09.css"
2828
key="gist-embeded-b3b573358bfc66d89e1e95dbf8319c09"

0 commit comments

Comments
 (0)