Skip to content

Commit 06988ae

Browse files
committed
Fixed build issue with cache when there is no tag and media and changed amp plugin and version update
1 parent 4c3603a commit 06988ae

File tree

4 files changed

+63
-47
lines changed

4 files changed

+63
-47
lines changed

gatsby-wordpress-theme-libre/fix-source-nodes.js

Lines changed: 45 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ const createTag = {
4545

4646
const currentTimeImage = new Date().getTime();
4747
const createImage = {
48-
wordpress_id: currentTimeImage,
48+
wordpress_id: `wordpress-media-placeholder`,
4949
date: new Date().toISOString(),
5050
guid:
5151
"https://wordpress.theasdfghjkl.com/wp-content/uploads/2020/05/wordpress-balsa.png",
@@ -113,19 +113,19 @@ const createImage = {
113113
replies: [
114114
{
115115
embeddable: true,
116-
href:
117-
`https://wordpress.theasdfghjkl.com/wp-json/wp/v2/comments?post=${currentTimeImage}`,
116+
href: `https://wordpress.theasdfghjkl.com/wp-json/wp/v2/comments?post=${currentTimeImage}`,
118117
},
119118
],
120119
},
121-
id: currentTimeImage.toString(),
122-
author___NODE: currentTimeImage.toString(),
120+
id: `wordpress-media-placeholder`,
121+
author___NODE: `wordpress-media-placeholder`,
123122
path: "/wordpress-balsa/",
124123
};
125124

126125
module.exports = async function sourceNodes({
127126
actions,
128127
getNodesByType,
128+
getNodes,
129129
store,
130130
cache,
131131
createNodeId,
@@ -135,9 +135,15 @@ module.exports = async function sourceNodes({
135135
}) {
136136
const { createNode } = actions;
137137

138-
const wordPressTagExists = getNodesByType("wordpress__TAG");
138+
const wordPressTag = getNodesByType("wordpress__TAG");
139+
140+
const wordPressTagExists =
141+
wordPressTag &&
142+
wordPressTag.length > 0 &&
143+
wordPressTag[0].internal &&
144+
wordPressTag[0].internal.owner === "gatsby-source-wordpress";
139145

140-
if (!wordPressTagExists || wordPressTagExists.length === 0) {
146+
if (!wordPressTagExists) {
141147
let node = {
142148
...createTag,
143149
children: [],
@@ -150,33 +156,43 @@ module.exports = async function sourceNodes({
150156
createNode(node);
151157
}
152158

153-
const mediaExists = getNodesByType("wordpress__wp_media");
159+
const wordpressMedia = getNodesByType("wordpress__wp_media");
154160

155-
if (!mediaExists || mediaExists.length === 0) {
156-
161+
const mediaExists =
162+
wordpressMedia &&
163+
wordpressMedia.length > 0 &&
164+
wordpressMedia[0].internal &&
165+
wordpressMedia[0].internal.owner === "gatsby-source-wordpress";
166+
167+
if (!mediaExists) {
157168
const encodedSourceUrl = encodeURI(createImage.source_url);
158-
const mediaDataCacheKey = `wordpress-media-${createImage.wordpress_id}`;
169+
const mediaDataCacheKey = `wordpress-media-placeholder`;
159170

160171
try {
161-
const fileNode = await createRemoteFileNode({
162-
url: encodedSourceUrl,
163-
store,
164-
cache,
165-
createNode,
166-
createNodeId,
167-
getCache,
168-
parentNodeId: createImage.id,
169-
reporter,
170-
});
172+
const cachedFileNode = await cache.get(mediaDataCacheKey);
171173

172-
if (fileNode) {
173-
fileNodeID = fileNode.id;
174-
await cache.set(mediaDataCacheKey, {
175-
fileNodeID,
176-
modified: createImage.modified,
174+
if (cachedFileNode) {
175+
createImage.localFile___NODE = cachedFileNode.fileNodeID;
176+
} else {
177+
const fileNode = await createRemoteFileNode({
178+
url: encodedSourceUrl,
179+
store,
180+
cache,
181+
createNode,
182+
createNodeId,
183+
getCache,
184+
parentNodeId: createImage.id,
185+
reporter,
177186
});
178187

179-
createImage.localFile___NODE = fileNodeID;
188+
if (fileNode) {
189+
fileNodeID = fileNode.id;
190+
await cache.set(mediaDataCacheKey, {
191+
fileNodeID,
192+
modified: createImage.modified,
193+
});
194+
createImage.localFile___NODE = fileNodeID;
195+
}
180196
}
181197

182198
let node = {
@@ -191,8 +207,8 @@ module.exports = async function sourceNodes({
191207

192208
createNode(node);
193209
} catch (e) {
194-
console.log(e, "error creating remote nodeF");
210+
console.log(e, "error creating remote node");
195211
// Ignore
196212
}
197213
}
198-
};
214+
};

gatsby-wordpress-theme-libre/gatsby-config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ module.exports = (themeOptions) => {
157157
},
158158
},
159159
{
160-
resolve: "@armada-inc/gatsby-plugin-amp",
160+
resolve: "@draftbox-co/gatsby-plugin-amp",
161161
options: {
162162
canonicalBaseUrl: siteConfig.siteUrl,
163163
components: [`amp-form`],

gatsby-wordpress-theme-libre/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@draftbox-co/gatsby-wordpress-theme-libre",
3-
"version": "1.0.36",
3+
"version": "1.0.37",
44
"license": "MIT",
55
"resolutions": {
66
"sharp": "0.23.4"
@@ -46,7 +46,7 @@
4646
"react-dom": "^16.13.0"
4747
},
4848
"dependencies": {
49-
"@armada-inc/gatsby-plugin-amp": "^0.2.3",
49+
"@draftbox-co/gatsby-plugin-amp": "^0.2.4",
5050
"@reach/router": "^1.3.3",
5151
"disqus-react": "^1.0.8",
5252
"gatsby-awesome-pagination": "^0.3.5",

yarn.lock

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,6 @@
22
# yarn lockfile v1
33

44

5-
"@armada-inc/gatsby-plugin-amp@^0.2.3":
6-
version "0.2.3"
7-
resolved "https://registry.yarnpkg.com/@armada-inc/gatsby-plugin-amp/-/gatsby-plugin-amp-0.2.3.tgz#27b0796dd2851644238e45b4ab03ef74e4bcaa46"
8-
integrity sha512-UuZkWSM7Kzvk8Zuu8+hmLpfNm9e7DMfTm1WYr6qWssOvQpxmFm3VNjIdJPrlBo4II7cmeMw11z4z+gNkKF9d6A==
9-
dependencies:
10-
jsdom "^13.0.0"
11-
lodash.flattendeep "^4.4.0"
12-
minimatch "^3.0.4"
13-
react "^16.6.1"
14-
155
"@babel/code-frame@7.5.5":
166
version "7.5.5"
177
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d"
@@ -1293,6 +1283,16 @@
12931283
lodash "^4.17.13"
12941284
to-fast-properties "^2.0.0"
12951285

1286+
"@draftbox-co/gatsby-plugin-amp@^0.2.4":
1287+
version "0.2.4"
1288+
resolved "https://registry.yarnpkg.com/@draftbox-co/gatsby-plugin-amp/-/gatsby-plugin-amp-0.2.4.tgz#736717349fe9d0961d2b16ad3ebb45cb80629c0e"
1289+
integrity sha512-nERnqPbfvzCr20aH2z2XWcHRLHdbIhh+D3wZg8SBw/1b0JYGU2vZxVeXaV7RngV1VMKQiZV/ty0UVXy4tinXBw==
1290+
dependencies:
1291+
jsdom "^13.0.0"
1292+
lodash.flattendeep "^4.4.0"
1293+
minimatch "^3.0.4"
1294+
react "^16.6.1"
1295+
12961296
"@ember-data/rfc395-data@^0.0.4":
12971297
version "0.0.4"
12981298
resolved "https://registry.yarnpkg.com/@ember-data/rfc395-data/-/rfc395-data-0.0.4.tgz#ecb86efdf5d7733a76ff14ea651a1b0ed1f8a843"
@@ -1738,11 +1738,6 @@
17381738
resolved "https://registry.yarnpkg.com/@types/debug/-/debug-0.0.30.tgz#dc1e40f7af3b9c815013a7860e6252f6352a84df"
17391739
integrity sha512-orGL5LXERPYsLov6CWs3Fh6203+dXzJkR7OnddIr2514Hsecwc8xRpzCapshBbKFImCsvS/mk6+FWiN5LyZJAQ==
17401740

1741-
"@types/eslint-visitor-keys@^1.0.0":
1742-
version "1.0.0"
1743-
resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
1744-
integrity sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==
1745-
17461741
"@types/events@*":
17471742
version "3.0.0"
17481743
resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7"
@@ -1918,6 +1913,11 @@
19181913
version "2.30.0"
19191914
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.30.0.tgz#7681c305a6f4341ae2579f5e3a75846c29eee9ce"
19201915
integrity sha512-9kDOxzp0K85UnpmPJqUzdWaCNorYYgk1yZmf4IKzpeTlSAclnFsrLjfwD9mQExctLoLoGAUXq1co+fbr+3HeFw==
1916+
dependencies:
1917+
"@types/eslint-visitor-keys" "^1.0.0"
1918+
"@typescript-eslint/experimental-utils" "2.30.0"
1919+
"@typescript-eslint/typescript-estree" "2.30.0"
1920+
eslint-visitor-keys "^1.1.0"
19211921

19221922
"@typescript-eslint/typescript-estree@2.30.0":
19231923
version "2.30.0"

0 commit comments

Comments
 (0)