UNPKG

@draftbox-co/gatsby-ghost-novela-theme

Version:

A Gatsby theme plugin for creating blogs from headless Ghost CMS.

35 lines (30 loc) 979 B
/* eslint-disable no-prototype-builtins */ const { createRemoteFileNode } = require(`gatsby-source-filesystem`); // Create fields for post slugs and source // This will change with schema customization with work module.exports = async ( { node, actions, getNode, createNodeId, store, cache }, themeOptions ) => { // Check that we are modifying right node types. const nodeTypes = [`GhostPost`, `GhostPage`]; if (!nodeTypes.includes(node.internal.type)) { return; } const { createNode } = actions; // Download image and create a File node with gatsby-transformer-sharp. if (node.feature_image) { const fileNode = await createRemoteFileNode({ url: node.feature_image, store, cache, createNode, parentNodeId: node.id, createNodeId, }); if (fileNode) { // Link File node to GhostPost node at field image. node.localFeatureImage___NODE = fileNode.id; } } };