UNPKG

graphql-string-loader

Version:

Webpack loader that imports GraphQL queries as strings.

22 lines (17 loc) 590 B
import { stripIgnoredCharacters } from 'graphql'; export default (source) => { const imports = source.match(/#\s*import.*\r?\n/g); if (imports) { const code = [ 'var parts = [];', `parts.push(${JSON.stringify(stripIgnoredCharacters(source.replace(/^#\s*import.*$/, '')))});`, imports .map(input => input.trim()) .map(line => line.replace(/#\s*import\s*"(.*)"/, 'parts.push(require("$1").default);')) .join(''), 'export default parts.join(\'\');', ]; return code.join(''); } return `export default ${JSON.stringify(stripIgnoredCharacters(source))}`; };