const _ = require('lodash')
const Promise = require('bluebird')
const path = require('path')
const { createFilePath } = require('gatsby-source-filesystem')

exports.createPages = ({ graphql, boundActionCreators }) => {
  const { createPage } = boundActionCreators

  return new Promise((resolve, reject) => {
    const blogPost = path.resolve('./src/templates/blog-post.js')
    resolve(
      graphql(`
        {
          allMarkdownRemark(limit: 1000) {
            edges {
              node {
                fields {
                  slug
                }
              }
            }
          }
        }
      `).then(result => {
        if (result.errors) {
          console.log(result.errors)
          reject(result.errors)
        }

        // Create blog posts pages.
        _.each(result.data.allMarkdownRemark.edges, edge => {
          createPage({
            path: edge.node.fields.slug,
            component: blogPost,
            context: { slug: edge.node.fields.slug },
          })
        })
      })
    )
  })
}

exports.onCreateNode = ({ node, boundActionCreators, getNode }) => {
  const { createNodeField } = boundActionCreators

  if (node.internal.type === 'MarkdownRemark') {
    const value = createFilePath({ node, getNode })
    createNodeField({
      name: 'slug',
      node,
      value,
    })
  }
}

@@ -184,34 +184,22 @@
 raphql, 
-boundActionCreator
+action
 s %7D) =%3E 
@@ -225,34 +225,22 @@
 age %7D = 
-boundActionCreator
+action
 s%0A%0A  ret
@@ -1048,34 +1048,22 @@
 %7B node, 
-boundActionCreator
+action
 s, getNo
@@ -1107,26 +1107,14 @@
 %7D = 
-boundActionCreator
+action
 s%0A%0A 

rename boundActionCreators to actions