code: function queryExamplesData(graphql) {
    return graphql(`
      {
        site {
          siteMetadata {
            config {
              EXAMPLES {
                image
                title
                path
                componentUrl
              }
            }
          }
        }
        allImageSharp {
          edges {
            node {
              parent {
                id
              }
              resize(width: 150, height: 150) {
                src
              }
            }
          }
        }
        allFile {
          edges {
            node {
              id
              relativePath
            }
          }
        }
      }
    `)
    .then(result => {
      console.log(result);
  
      if (result.errors) {
        /* eslint no-console: "off" */
        console.log(result.errors);
        throw new Error(result.errors);
      }
  
      const { EXAMPLES } = result.data.site.siteMetadata.config;
      // build a lookup map that matches relative paths of images with their public URLs
      const thumbnailsPublicUrls = getExampleThumbnails(result.data);
  
      // matches public urls to paths of images
      const examplesWithImages = EXAMPLES.map(example => ({
        ...example,
        imageSrc: thumbnailsPublicUrls[example.image]
      }));
  
      return examplesWithImages;
    })
    .catch(error => {
      log.log(
        { color: COLOR.BRIGHT_YELLOW },
        `error in createPage query with images: ${error}`
      )();
      return graphql(`
        {
          site {
            siteMetadata {
              config {
                EXAMPLES {
                  title
                  path
                }
              }
            }
          }
        }
      `).then(result => {
        if (result.errors) {
          /* eslint no-console: "off" */
          console.log(result.errors);
          throw new Error(result.errors);
        }
        const { EXAMPLES } = result.data.site.siteMetadata.config;
        return EXAMPLES;
      });
    });
  }
docs: Queries for examples list and thumbnail images First try to query for images, if failure try again without images TODO - figure out how to inject a valid schema for sharp so we don't get exceptions