Skip to content

Commit 67f57eb

Browse files
committed
feat: use images titles for file names
1 parent 0c5dbe5 commit 67f57eb

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

utils/on-create-node-google-docs.js

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
const _get = require("lodash/get")
2+
const _kebabCase = require("lodash/kebabCase")
23
const {createRemoteFileNode} = require("gatsby-source-filesystem")
34

45
const {getImageUrlParameters} = require("./get-image-url-parameters")
56

6-
const GOOGLE_IMAGE_REGEX = /https:\/\/[a-z0-9]*.googleusercontent\.com\/[a-zA-Z0-9_-]*/
7+
const GOOGLE_IMAGE_REGEX =
8+
/(https:\/\/[a-z0-9]*.googleusercontent\.com\/[a-zA-Z0-9_-]*) "([^)]*)"/
79

810
exports.onCreateNodeGoogleDocs = async ({
911
node,
@@ -47,13 +49,16 @@ exports.onCreateNodeGoogleDocs = async ({
4749
}
4850
}
4951

50-
const googleUrls = node.markdown.match(
51-
new RegExp(GOOGLE_IMAGE_REGEX.source, "g")
52-
)
52+
const googleImagesRegex = new RegExp(GOOGLE_IMAGE_REGEX.source, "g")
53+
const googleImagesIterator = node.markdown.matchAll(googleImagesRegex)
54+
const googleImages = [...googleImagesIterator]
5355

54-
if (Array.isArray(googleUrls)) {
56+
if (Array.isArray(googleImages)) {
5557
const filesNodes = await Promise.all(
56-
googleUrls.map(async (url) => {
58+
googleImages.map(async (image) => {
59+
// console.log(image)
60+
const [, url, title] = image
61+
console.log(title)
5762
let fileNode
5863
try {
5964
fileNode = await createRemoteFileNode({
@@ -63,7 +68,9 @@ exports.onCreateNodeGoogleDocs = async ({
6368
createNodeId,
6469
cache,
6570
store,
66-
name: "google-docs-image-" + createNodeId(url),
71+
name: title
72+
? _kebabCase(title)
73+
: "google-docs-image-" + createNodeId(url),
6774
reporter,
6875
})
6976
} catch (e) {

0 commit comments

Comments
 (0)