@graphql-codegen/cli 2.0.0-alpha-2a3d5d099.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin.js +6 -6
- package/index.cjs.js +6 -6
- package/index.cjs.js.map +1 -1
- package/index.esm.js +6 -6
- package/index.esm.js.map +1 -1
- package/package.json +5 -5
package/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../dist/graphql-codegen-cli/src/utils/indentString.js","../../../dist/graphql-codegen-cli/src/utils/logger.js","../../../dist/graphql-codegen-cli/src/utils/debugging.js","../../../dist/graphql-codegen-cli/src/utils/listr-renderer.js","../../../dist/graphql-codegen-cli/src/plugins.js","../../../dist/graphql-codegen-cli/src/presets.js","../../../dist/graphql-codegen-cli/src/graphql-config.js","../../../dist/graphql-codegen-cli/src/load.js","../../../dist/graphql-codegen-cli/src/config.js","../../../dist/graphql-codegen-cli/src/codegen.js","../../../dist/graphql-codegen-cli/src/hooks.js","../../../dist/graphql-codegen-cli/src/utils/watcher.js","../../../dist/graphql-codegen-cli/src/utils/file-system.js","../../../dist/graphql-codegen-cli/src/generate-and-save.js","../../../dist/graphql-codegen-cli/src/init/helpers.js","../../../dist/graphql-codegen-cli/src/init/types.js","../../../dist/graphql-codegen-cli/src/init/plugins.js","../../../dist/graphql-codegen-cli/src/init/questions.js","../../../dist/graphql-codegen-cli/src/init/targets.js","../../../dist/graphql-codegen-cli/src/init/index.js","../../../dist/graphql-codegen-cli/src/utils/is-browser.js","../../../dist/graphql-codegen-cli/src/utils/cli-error.js","../../../dist/graphql-codegen-cli/src/cli.js"],"sourcesContent":["/**\nIndent each line in a string.\n@param string - The string to indent.\n@param count - How many times you want `options.indent` repeated. Default: `1`.\n@example\n```\nimport indentString from 'indent-string';\nindentString('Unicorns\\nRainbows', 4);\n//=> ' Unicorns\\n Rainbows'\nindentString('Unicorns\\nRainbows', 4, {indent: '♥'});\n//=> '♥♥♥♥Unicorns\\n♥♥♥♥Rainbows'\n```\n*/\nexport function indentString(string, count = 1, options = {}) {\n const { indent = ' ', includeEmptyLines = false } = options;\n if (typeof string !== 'string') {\n throw new TypeError(`Expected \\`input\\` to be a \\`string\\`, got \\`${typeof string}\\``);\n }\n if (typeof count !== 'number') {\n throw new TypeError(`Expected \\`count\\` to be a \\`number\\`, got \\`${typeof count}\\``);\n }\n if (count < 0) {\n throw new RangeError(`Expected \\`count\\` to be at least 0, got \\`${count}\\``);\n }\n if (typeof indent !== 'string') {\n throw new TypeError(`Expected \\`options.indent\\` to be a \\`string\\`, got \\`${typeof indent}\\``);\n }\n if (count === 0) {\n return string;\n }\n const regex = includeEmptyLines ? /^/gm : /^(?!\\s*$)/gm;\n return string.replace(regex, indent.repeat(count));\n}\n//# sourceMappingURL=indentString.js.map","import { dummyLogger } from 'ts-log';\nlet logger;\nexport function getLogger() {\n return logger || dummyLogger;\n}\nuseWinstonLogger();\nexport function setLogger(newLogger) {\n logger = newLogger;\n}\nexport function setSilentLogger() {\n logger = dummyLogger;\n}\nexport function useWinstonLogger() {\n if (logger && logger.levels) {\n return;\n }\n logger = console;\n}\n//# sourceMappingURL=logger.js.map","import { getLogger } from './logger';\nlet queue = [];\nexport function debugLog(message, ...meta) {\n if (!process.env.GQL_CODEGEN_NODEBUG && process.env.DEBUG !== undefined) {\n queue.push({\n message,\n meta,\n });\n }\n}\nexport function printLogs() {\n if (!process.env.GQL_CODEGEN_NODEBUG && process.env.DEBUG !== undefined) {\n queue.forEach(log => {\n getLogger().info(log.message, ...log.meta);\n });\n resetLogs();\n }\n}\nexport function resetLogs() {\n queue = [];\n}\n//# sourceMappingURL=debugging.js.map","import chalk from 'chalk';\nimport { indentString } from './indentString';\nimport logSymbol from 'log-symbols';\nimport ansiEscapes from 'ansi-escapes';\nimport wrapAnsi from 'wrap-ansi';\nimport { stripIndent } from 'common-tags';\nimport { isDetailedError } from '@graphql-codegen/plugin-helpers';\nimport { debugLog, printLogs } from './debugging';\nconst UpdateRenderer = require('listr-update-renderer');\nexport class Renderer {\n constructor(tasks, options) {\n this.updateRenderer = new UpdateRenderer(tasks, options);\n }\n render() {\n return this.updateRenderer.render();\n }\n end(err) {\n this.updateRenderer.end(err);\n if (typeof err === 'undefined') {\n logUpdate.clear();\n return;\n }\n // persist the output\n logUpdate.done();\n // show errors\n if (err) {\n const errorCount = err.errors ? err.errors.length : 0;\n if (errorCount > 0) {\n const count = indentString(chalk.red.bold(`Found ${errorCount} error${errorCount > 1 ? 's' : ''}`), 1);\n const details = err.errors\n .map(error => {\n debugLog(`[CLI] Exited with an error`, error);\n return { msg: isDetailedError(error) ? error.details : null, rawError: error };\n })\n .map(({ msg, rawError }, i) => {\n const source = err.errors[i].source;\n msg = msg ? chalk.gray(indentString(stripIndent(`${msg}`), 4)) : null;\n const stack = rawError.stack ? chalk.gray(indentString(stripIndent(rawError.stack), 4)) : null;\n if (source) {\n const sourceOfError = typeof source === 'string' ? source : source.name;\n const title = indentString(`${logSymbol.error} ${sourceOfError}`, 2);\n return [title, msg, stack, stack].filter(Boolean).join('\\n');\n }\n return [msg, stack].filter(Boolean).join('\\n');\n })\n .join('\\n\\n');\n logUpdate.emit(['', count, details, ''].join('\\n\\n'));\n }\n else {\n const details = err.details ? err.details : '';\n logUpdate.emit(`${chalk.red.bold(`${indentString(err.message, 2)}`)}\\n${details}\\n${chalk.grey(err.stack)}`);\n }\n }\n logUpdate.done();\n printLogs();\n }\n}\nconst render = tasks => {\n for (const task of tasks) {\n task.subscribe(event => {\n if (event.type === 'SUBTASKS') {\n render(task.subtasks);\n return;\n }\n if (event.type === 'DATA') {\n logUpdate.emit(chalk.dim(`${event.data}`));\n }\n logUpdate.done();\n }, err => {\n logUpdate.emit(err);\n logUpdate.done();\n });\n }\n};\nexport class ErrorRenderer {\n constructor(tasks, _options) {\n this.tasks = tasks;\n }\n render() {\n render(this.tasks);\n }\n static get nonTTY() {\n return true;\n }\n end() { }\n}\nclass LogUpdate {\n constructor() {\n this.stream = process.stdout;\n // state\n this.previousLineCount = 0;\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n }\n emit(...args) {\n let output = args.join(' ') + '\\n';\n const width = this.getWidth();\n if (output === this.previousOutput && this.previousWidth === width) {\n return;\n }\n this.previousOutput = output;\n this.previousWidth = width;\n output = wrapAnsi(output, width, {\n trim: false,\n hard: true,\n wordWrap: false,\n });\n this.stream.write(ansiEscapes.eraseLines(this.previousLineCount) + output);\n this.previousLineCount = output.split('\\n').length;\n }\n clear() {\n this.stream.write(ansiEscapes.eraseLines(this.previousLineCount));\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n this.previousLineCount = 0;\n }\n done() {\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n this.previousLineCount = 0;\n }\n getWidth() {\n const { columns } = this.stream;\n if (!columns) {\n return 80;\n }\n return columns;\n }\n}\nconst logUpdate = new LogUpdate();\n//# sourceMappingURL=listr-renderer.js.map","import { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { resolve } from 'path';\nexport async function getPluginByName(name, pluginLoader) {\n const possibleNames = [\n `@graphql-codegen/${name}`,\n `@graphql-codegen/${name}-template`,\n `@graphql-codegen/${name}-plugin`,\n `graphql-codegen-${name}`,\n `graphql-codegen-${name}-template`,\n `graphql-codegen-${name}-plugin`,\n `codegen-${name}`,\n `codegen-${name}-template`,\n name,\n ];\n const possibleModules = possibleNames.concat(resolve(process.cwd(), name));\n for (const moduleName of possibleModules) {\n try {\n return await pluginLoader(moduleName);\n }\n catch (err) {\n if (err.code !== 'MODULE_NOT_FOUND' || !err.message.includes(moduleName)) {\n throw new DetailedError(`Unable to load template plugin matching ${name}`, `\n Unable to load template plugin matching '${name}'.\n Reason: \n ${err.message}\n `);\n }\n }\n }\n const possibleNamesMsg = possibleNames\n .map(name => `\n - ${name}\n `.trimRight())\n .join('');\n throw new DetailedError(`Unable to find template plugin matching ${name}`, `\n Unable to find template plugin matching '${name}'\n Install one of the following packages:\n \n ${possibleNamesMsg}\n `);\n}\n//# sourceMappingURL=plugins.js.map","import { DetailedError } from '@graphql-codegen/plugin-helpers';\nexport async function getPresetByName(name, loader) {\n const possibleNames = [`@graphql-codegen/${name}`, `@graphql-codegen/${name}-preset`, name];\n for (const moduleName of possibleNames) {\n try {\n const loaded = await loader(moduleName);\n if (loaded && loaded.preset) {\n return loaded.preset;\n }\n else if (loaded && loaded.default) {\n return loaded.default;\n }\n return loaded;\n }\n catch (err) {\n if (err.code !== 'MODULE_NOT_FOUND' || !err.message.includes(moduleName)) {\n throw new DetailedError(`Unable to load preset matching ${name}`, `\n Unable to load preset matching '${name}'.\n Reason: \n ${err.message}\n `);\n }\n }\n }\n const possibleNamesMsg = possibleNames\n .map(name => `\n - ${name}\n `.trimRight())\n .join('');\n throw new DetailedError(`Unable to find preset matching ${name}`, `\n Unable to find preset matching '${name}'\n Install one of the following packages:\n \n ${possibleNamesMsg}\n `);\n}\n//# sourceMappingURL=presets.js.map","import { loadConfig } from 'graphql-config';\nimport { ApolloEngineLoader } from '@graphql-tools/apollo-engine-loader';\nimport { CodeFileLoader } from '@graphql-tools/code-file-loader';\nimport { GitLoader } from '@graphql-tools/git-loader';\nimport { GithubLoader } from '@graphql-tools/github-loader';\nimport { PrismaLoader } from '@graphql-tools/prisma-loader';\nexport const CodegenExtension = (api) => {\n // Schema\n api.loaders.schema.register(new CodeFileLoader());\n api.loaders.schema.register(new GitLoader());\n api.loaders.schema.register(new GithubLoader());\n api.loaders.schema.register(new ApolloEngineLoader());\n api.loaders.schema.register(new PrismaLoader());\n // Documents\n api.loaders.documents.register(new CodeFileLoader());\n api.loaders.documents.register(new GitLoader());\n api.loaders.documents.register(new GithubLoader());\n return {\n name: 'codegen',\n };\n};\nexport async function findAndLoadGraphQLConfig(filepath) {\n const config = await loadConfig({\n filepath,\n rootDir: process.cwd(),\n extensions: [CodegenExtension],\n throwOnEmpty: false,\n throwOnMissing: false,\n });\n if (isGraphQLConfig(config)) {\n return config;\n }\n}\n// Kamil: user might load a config that is not GraphQL Config\n// so we need to check if it's a regular config or not\nfunction isGraphQLConfig(config) {\n if (!config) {\n return false;\n }\n try {\n return config.getDefault().hasExtension('codegen');\n }\n catch (e) { }\n try {\n for (const projectName in config.projects) {\n if (config.projects.hasOwnProperty(projectName)) {\n const project = config.projects[projectName];\n if (project.hasExtension('codegen')) {\n return true;\n }\n }\n }\n }\n catch (e) { }\n return false;\n}\n//# sourceMappingURL=graphql-config.js.map","import { loadSchema as loadSchemaToolkit, loadDocuments as loadDocumentsToolkit, } from '@graphql-tools/load';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { CodeFileLoader } from '@graphql-tools/code-file-loader';\nimport { GitLoader } from '@graphql-tools/git-loader';\nimport { GithubLoader } from '@graphql-tools/github-loader';\nimport { GraphQLFileLoader } from '@graphql-tools/graphql-file-loader';\nimport { JsonFileLoader } from '@graphql-tools/json-file-loader';\nimport { UrlLoader } from '@graphql-tools/url-loader';\nimport { ApolloEngineLoader } from '@graphql-tools/apollo-engine-loader';\nimport { PrismaLoader } from '@graphql-tools/prisma-loader';\nimport { join, extname } from 'path';\nexport const defaultSchemaLoadOptions = {\n assumeValidSDL: true,\n sort: true,\n convertExtensions: true,\n includeSources: true,\n};\nexport const defaultDocumentsLoadOptions = {\n sort: true,\n skipGraphQLImport: true,\n};\nexport async function loadSchema(schemaPointers, config) {\n try {\n const loaders = [\n new CodeFileLoader(),\n new GitLoader(),\n new GithubLoader(),\n new GraphQLFileLoader(),\n new JsonFileLoader(),\n new UrlLoader(),\n new ApolloEngineLoader(),\n new PrismaLoader(),\n ];\n const schema = await loadSchemaToolkit(schemaPointers, {\n ...defaultSchemaLoadOptions,\n loaders,\n ...config,\n ...config.config,\n });\n return schema;\n }\n catch (e) {\n throw new DetailedError('Failed to load schema', `\n Failed to load schema from ${Object.keys(schemaPointers).join(',')}:\n\n ${e.message || e}\n ${e.stack || ''}\n \n GraphQL Code Generator supports:\n - ES Modules and CommonJS exports (export as default or named export \"schema\")\n - Introspection JSON File\n - URL of GraphQL endpoint\n - Multiple files with type definitions (glob expression)\n - String in config file\n \n Try to use one of above options and run codegen again.\n \n `);\n }\n}\nexport async function loadDocuments(documentPointers, config) {\n const loaders = [\n new CodeFileLoader({\n pluckConfig: {\n skipIndent: true,\n },\n }),\n new GitLoader(),\n new GithubLoader(),\n new GraphQLFileLoader(),\n ];\n const ignore = [];\n for (const generatePath of Object.keys(config.generates)) {\n if (extname(generatePath) === '') {\n // we omit paths that don't resolve to a specific file\n continue;\n }\n ignore.push(join(process.cwd(), generatePath));\n }\n const loadedFromToolkit = await loadDocumentsToolkit(documentPointers, {\n ...defaultDocumentsLoadOptions,\n ignore,\n loaders,\n ...config,\n ...config.config,\n });\n return loadedFromToolkit;\n}\n//# sourceMappingURL=load.js.map","import { cosmiconfig, defaultLoaders } from 'cosmiconfig';\nimport { resolve } from 'path';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { env } from 'string-env-interpolation';\nimport yargs from 'yargs';\nimport { findAndLoadGraphQLConfig } from './graphql-config';\nimport { loadSchema, loadDocuments, defaultSchemaLoadOptions, defaultDocumentsLoadOptions } from './load';\nimport yaml from 'yaml';\nfunction generateSearchPlaces(moduleName) {\n const extensions = ['json', 'yaml', 'yml', 'js', 'config.js'];\n // gives codegen.json...\n const regular = extensions.map(ext => `${moduleName}.${ext}`);\n // gives .codegenrc.json... but no .codegenrc.config.js\n const dot = extensions.filter(ext => ext !== 'config.js').map(ext => `.${moduleName}rc.${ext}`);\n return [...regular.concat(dot), 'package.json'];\n}\nfunction customLoader(ext) {\n function loader(filepath, content) {\n if (typeof process !== 'undefined' && 'env' in process) {\n content = env(content);\n }\n if (ext === 'json') {\n return defaultLoaders['.json'](filepath, content);\n }\n if (ext === 'yaml') {\n try {\n const result = yaml.parse(content, { prettyErrors: true, merge: true });\n return result;\n }\n catch (error) {\n error.message = `YAML Error in ${filepath}:\\n${error.message}`;\n throw error;\n }\n }\n if (ext === 'js') {\n return defaultLoaders['.js'](filepath, content);\n }\n }\n return loader;\n}\nexport async function loadContext(configFilePath) {\n const moduleName = 'codegen';\n const cosmi = cosmiconfig(moduleName, {\n searchPlaces: generateSearchPlaces(moduleName),\n packageProp: moduleName,\n loaders: {\n '.json': customLoader('json'),\n '.yaml': customLoader('yaml'),\n '.yml': customLoader('yaml'),\n '.js': customLoader('js'),\n noExt: customLoader('yaml'),\n },\n });\n const graphqlConfig = await findAndLoadGraphQLConfig(configFilePath);\n if (graphqlConfig) {\n return new CodegenContext({\n graphqlConfig,\n });\n }\n const result = await (configFilePath ? cosmi.load(configFilePath) : cosmi.search(process.cwd()));\n if (!result) {\n if (configFilePath) {\n throw new DetailedError(`Config ${configFilePath} does not exist`, `\n Config ${configFilePath} does not exist.\n \n $ graphql-codegen --config ${configFilePath}\n \n Please make sure the --config points to a correct file.\n `);\n }\n throw new DetailedError(`Unable to find Codegen config file!`, `\n Please make sure that you have a configuration file under the current directory! \n `);\n }\n if (result.isEmpty) {\n throw new DetailedError(`Found Codegen config file but it was empty!`, `\n Please make sure that you have a valid configuration file under the current directory!\n `);\n }\n return new CodegenContext({\n filepath: result.filepath,\n config: result.config,\n });\n}\nfunction getCustomConfigPath(cliFlags) {\n const configFile = cliFlags.config;\n return configFile ? resolve(process.cwd(), configFile) : null;\n}\nexport function buildOptions() {\n return {\n c: {\n alias: 'config',\n type: 'string',\n describe: 'Path to GraphQL codegen YAML config file, defaults to \"codegen.yml\" on the current directory',\n },\n w: {\n alias: 'watch',\n describe: 'Watch for changes and execute generation automatically. You can also specify a glob expreession for custom watch list.',\n coerce: (watch) => {\n if (watch === 'false') {\n return false;\n }\n if (typeof watch === 'string' || Array.isArray(watch)) {\n return watch;\n }\n return !!watch;\n },\n },\n r: {\n alias: 'require',\n describe: 'Loads specific require.extensions before running the codegen and reading the configuration',\n type: 'array',\n default: [],\n },\n o: {\n alias: 'overwrite',\n describe: 'Overwrites existing files',\n type: 'boolean',\n },\n s: {\n alias: 'silent',\n describe: 'Suppresses printing errors',\n type: 'boolean',\n },\n e: {\n alias: 'errors-only',\n describe: 'Only print errors',\n type: 'boolean',\n },\n p: {\n alias: 'project',\n describe: 'Name of a project in GraphQL Config',\n type: 'string',\n },\n };\n}\nexport function parseArgv(argv = process.argv) {\n return yargs.options(buildOptions()).parse(argv);\n}\nexport async function createContext(cliFlags = parseArgv(process.argv)) {\n if (cliFlags.require && cliFlags.require.length > 0) {\n await Promise.all(cliFlags.require.map(mod => import(require.resolve(mod, { paths: [process.cwd()] }))));\n }\n const customConfigPath = getCustomConfigPath(cliFlags);\n const context = await loadContext(customConfigPath);\n updateContextWithCliFlags(context, cliFlags);\n return context;\n}\nexport function updateContextWithCliFlags(context, cliFlags) {\n const config = {\n configFilePath: context.filepath,\n };\n if (cliFlags.watch) {\n config.watch = cliFlags.watch;\n }\n if (cliFlags.overwrite === true) {\n config.overwrite = cliFlags.overwrite;\n }\n if (cliFlags.silent === true) {\n config.silent = cliFlags.silent;\n }\n if (cliFlags.errorsOnly === true) {\n config.errorsOnly = cliFlags.errorsOnly;\n }\n if (cliFlags.project) {\n context.useProject(cliFlags.project);\n }\n context.updateConfig(config);\n}\nexport class CodegenContext {\n constructor({ config, graphqlConfig, filepath, }) {\n this._pluginContext = {};\n this._config = config;\n this._graphqlConfig = graphqlConfig;\n this.filepath = this._graphqlConfig ? this._graphqlConfig.filepath : filepath;\n this.cwd = this._graphqlConfig ? this._graphqlConfig.dirpath : process.cwd();\n }\n useProject(name) {\n this._project = name;\n }\n getConfig(extraConfig) {\n if (!this.config) {\n if (this._graphqlConfig) {\n const project = this._graphqlConfig.getProject(this._project);\n this.config = {\n ...project.extension('codegen'),\n schema: project.schema,\n documents: project.documents,\n pluginContext: this._pluginContext,\n };\n }\n else {\n this.config = { ...this._config, pluginContext: this._pluginContext };\n }\n }\n return {\n ...extraConfig,\n ...this.config,\n };\n }\n updateConfig(config) {\n this.config = {\n ...this.getConfig(),\n ...config,\n };\n }\n getPluginContext() {\n return this._pluginContext;\n }\n async loadSchema(pointer) {\n const config = this.getConfig(defaultSchemaLoadOptions);\n if (this._graphqlConfig) {\n // TODO: SchemaWithLoader won't work here\n return this._graphqlConfig.getProject(this._project).loadSchema(pointer, 'GraphQLSchema', config);\n }\n return loadSchema(pointer, config);\n }\n async loadDocuments(pointer) {\n const config = this.getConfig(defaultDocumentsLoadOptions);\n if (this._graphqlConfig) {\n // TODO: pointer won't work here\n const documents = await this._graphqlConfig.getProject(this._project).loadDocuments(pointer, config);\n return documents;\n }\n return loadDocuments(pointer, config);\n }\n}\nexport function ensureContext(input) {\n return input instanceof CodegenContext ? input : new CodegenContext({ config: input });\n}\n//# sourceMappingURL=config.js.map","import { DetailedError, normalizeOutputParam, normalizeInstanceOrArray, normalizeConfig, } from '@graphql-codegen/plugin-helpers';\nimport { codegen } from '@graphql-codegen/core';\nimport { Renderer, ErrorRenderer } from './utils/listr-renderer';\nimport { GraphQLError, parse } from 'graphql';\nimport { getPluginByName } from './plugins';\nimport { getPresetByName } from './presets';\nimport { debugLog } from './utils/debugging';\nimport { printSchemaWithDirectives } from '@graphql-tools/utils';\nimport { ensureContext } from './config';\nimport fs from 'fs';\nimport path from 'path';\n// eslint-disable-next-line\nimport { createRequire, createRequireFromPath } from 'module';\nimport Listr from 'listr';\nconst makeDefaultLoader = (from) => {\n if (fs.statSync(from).isDirectory()) {\n from = path.join(from, '__fake.js');\n }\n const relativeRequire = (createRequire || createRequireFromPath)(from);\n return (mod) => {\n return import(relativeRequire.resolve(mod));\n };\n};\nexport async function executeCodegen(input) {\n function wrapTask(task, source) {\n return async () => {\n try {\n await Promise.resolve().then(() => task());\n }\n catch (error) {\n if (source && !(error instanceof GraphQLError)) {\n error.source = source;\n }\n throw error;\n }\n };\n }\n const context = ensureContext(input);\n const config = context.getConfig();\n const pluginContext = context.getPluginContext();\n const result = [];\n const commonListrOptions = {\n exitOnError: true,\n };\n let listr;\n if (process.env.VERBOSE) {\n listr = new Listr({\n ...commonListrOptions,\n renderer: 'verbose',\n nonTTYRenderer: 'verbose',\n });\n }\n else if (process.env.NODE_ENV === 'test') {\n listr = new Listr({\n ...commonListrOptions,\n renderer: 'silent',\n nonTTYRenderer: 'silent',\n });\n }\n else {\n listr = new Listr({\n ...commonListrOptions,\n renderer: config.silent ? 'silent' : config.errorsOnly ? ErrorRenderer : Renderer,\n nonTTYRenderer: config.silent ? 'silent' : 'default',\n collapse: true,\n clearOutput: false,\n });\n }\n let rootConfig = {};\n let rootSchemas;\n let rootDocuments;\n const generates = {};\n async function normalize() {\n /* Load Require extensions */\n const requireExtensions = normalizeInstanceOrArray(config.require);\n const loader = makeDefaultLoader(context.cwd);\n for (const mod of requireExtensions) {\n await loader(mod);\n }\n /* Root plugin config */\n rootConfig = config.config || {};\n /* Normalize root \"schema\" field */\n rootSchemas = normalizeInstanceOrArray(config.schema);\n /* Normalize root \"documents\" field */\n rootDocuments = normalizeInstanceOrArray(config.documents);\n /* Normalize \"generators\" field */\n const generateKeys = Object.keys(config.generates || {});\n if (generateKeys.length === 0) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file contains the \"generates\" field, with a specification for the plugins you need.\n \n It should looks like that:\n\n schema:\n - my-schema.graphql\n generates:\n my-file.ts:\n - plugin1\n - plugin2\n - plugin3\n `);\n }\n for (const filename of generateKeys) {\n const output = (generates[filename] = normalizeOutputParam(config.generates[filename]));\n if (!output.preset && (!output.plugins || output.plugins.length === 0)) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file has defined plugins list for output \"${filename}\".\n \n It should looks like that:\n \n schema:\n - my-schema.graphql\n generates:\n my-file.ts:\n - plugin1\n - plugin2\n - plugin3\n `);\n }\n }\n if (rootSchemas.length === 0 &&\n Object.keys(generates).some(filename => !generates[filename].schema || generates[filename].schema.length === 0)) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file contains either the \"schema\" field \n or every generated file has its own \"schema\" field.\n \n It should looks like that:\n schema:\n - my-schema.graphql\n\n or:\n generates:\n path/to/output:\n schema: my-schema.graphql\n `);\n }\n }\n listr.add({\n title: 'Parse configuration',\n task: () => normalize(),\n });\n listr.add({\n title: 'Generate outputs',\n task: () => {\n return new Listr(Object.keys(generates).map(filename => {\n const outputConfig = generates[filename];\n const hasPreset = !!outputConfig.preset;\n return {\n title: hasPreset\n ? `Generate to ${filename} (using EXPERIMENTAL preset \"${outputConfig.preset}\")`\n : `Generate ${filename}`,\n task: () => {\n let outputSchemaAst;\n let outputSchema;\n const outputFileTemplateConfig = outputConfig.config || {};\n const outputDocuments = [];\n const outputSpecificSchemas = normalizeInstanceOrArray(outputConfig.schema);\n const outputSpecificDocuments = normalizeInstanceOrArray(outputConfig.documents);\n return new Listr([\n {\n title: 'Load GraphQL schemas',\n task: wrapTask(async () => {\n debugLog(`[CLI] Loading Schemas`);\n const schemaPointerMap = {};\n const allSchemaUnnormalizedPointers = [...rootSchemas, ...outputSpecificSchemas];\n for (const unnormalizedPtr of allSchemaUnnormalizedPointers) {\n if (typeof unnormalizedPtr === 'string') {\n schemaPointerMap[unnormalizedPtr] = {};\n }\n else if (typeof unnormalizedPtr === 'object') {\n Object.assign(schemaPointerMap, unnormalizedPtr);\n }\n }\n outputSchemaAst = await context.loadSchema(schemaPointerMap);\n outputSchema = parse(printSchemaWithDirectives(outputSchemaAst));\n }, filename),\n },\n {\n title: 'Load GraphQL documents',\n task: wrapTask(async () => {\n debugLog(`[CLI] Loading Documents`);\n const allDocuments = [...rootDocuments, ...outputSpecificDocuments];\n const documents = await context.loadDocuments(allDocuments);\n if (documents.length > 0) {\n outputDocuments.push(...documents);\n }\n }, filename),\n },\n {\n title: 'Generate',\n task: wrapTask(async () => {\n debugLog(`[CLI] Generating output`);\n const normalizedPluginsArray = normalizeConfig(outputConfig.plugins);\n const pluginLoader = config.pluginLoader || makeDefaultLoader(context.cwd);\n const pluginPackages = await Promise.all(normalizedPluginsArray.map(plugin => getPluginByName(Object.keys(plugin)[0], pluginLoader)));\n const pluginMap = {};\n const preset = hasPreset\n ? typeof outputConfig.preset === 'string'\n ? await getPresetByName(outputConfig.preset, makeDefaultLoader(context.cwd))\n : outputConfig.preset\n : null;\n pluginPackages.forEach((pluginPackage, i) => {\n const plugin = normalizedPluginsArray[i];\n const name = Object.keys(plugin)[0];\n pluginMap[name] = pluginPackage;\n });\n const mergedConfig = {\n ...rootConfig,\n ...(typeof outputFileTemplateConfig === 'string'\n ? { value: outputFileTemplateConfig }\n : outputFileTemplateConfig),\n };\n let outputs = [];\n if (hasPreset) {\n outputs = await preset.buildGeneratesSection({\n baseOutputDir: filename,\n presetConfig: outputConfig.presetConfig || {},\n plugins: normalizedPluginsArray,\n schema: outputSchema,\n schemaAst: outputSchemaAst,\n documents: outputDocuments,\n config: mergedConfig,\n pluginMap,\n pluginContext,\n });\n }\n else {\n outputs = [\n {\n filename,\n plugins: normalizedPluginsArray,\n schema: outputSchema,\n schemaAst: outputSchemaAst,\n documents: outputDocuments,\n config: mergedConfig,\n pluginMap,\n pluginContext,\n },\n ];\n }\n const process = async (outputArgs) => {\n const output = await codegen(outputArgs);\n result.push({\n filename: outputArgs.filename,\n content: output,\n hooks: outputConfig.hooks || {},\n });\n };\n await Promise.all(outputs.map(process));\n }, filename),\n },\n ], {\n // it stops when one of tasks failed\n exitOnError: true,\n });\n },\n };\n }), {\n // it doesn't stop when one of tasks failed, to finish at least some of outputs\n exitOnError: false,\n // run 4 at once\n concurrent: 4,\n });\n },\n });\n await listr.run();\n return result;\n}\n//# sourceMappingURL=codegen.js.map","import { debugLog } from './utils/debugging';\nimport { exec } from 'child_process';\nimport { delimiter, sep } from 'path';\nconst DEFAULT_HOOKS = {\n afterStart: [],\n beforeDone: [],\n onWatchTriggered: [],\n onError: [],\n afterOneFileWrite: [],\n afterAllFileWrite: [],\n beforeOneFileWrite: [],\n beforeAllFileWrite: [],\n};\nfunction normalizeHooks(_hooks) {\n const keys = Object.keys({\n ...DEFAULT_HOOKS,\n ...(_hooks || {}),\n });\n return keys.reduce((prev, hookName) => {\n if (typeof _hooks[hookName] === 'string') {\n return {\n ...prev,\n [hookName]: [_hooks[hookName]],\n };\n }\n else if (typeof _hooks[hookName] === 'function') {\n return {\n ...prev,\n [hookName]: [_hooks[hookName]],\n };\n }\n else if (Array.isArray(_hooks[hookName])) {\n return {\n ...prev,\n [hookName]: _hooks[hookName],\n };\n }\n else {\n return prev;\n }\n }, {});\n}\nfunction execShellCommand(cmd) {\n return new Promise((resolve, reject) => {\n exec(cmd, {\n env: {\n ...process.env,\n PATH: `${process.env.PATH}${delimiter}${process.cwd()}${sep}node_modules${sep}.bin`,\n },\n }, (error, stdout, stderr) => {\n if (error) {\n reject(error);\n }\n else {\n resolve(stdout || stderr);\n }\n });\n });\n}\nasync function executeHooks(hookName, scripts = [], args = []) {\n debugLog(`Running lifecycle hook \"${hookName}\" scripts...`);\n for (const script of scripts) {\n if (typeof script === 'string') {\n debugLog(`Running lifecycle hook \"${hookName}\" script: ${script} with args: ${args.join(' ')}...`);\n await execShellCommand(`${script} ${args.join(' ')}`);\n }\n else {\n debugLog(`Running lifecycle hook \"${hookName}\" script: ${script.name} with args: ${args.join(' ')}...`);\n await script(...args);\n }\n }\n}\nexport const lifecycleHooks = (_hooks = {}) => {\n const hooks = normalizeHooks(_hooks);\n return {\n afterStart: async () => executeHooks('afterStart', hooks.afterStart),\n onWatchTriggered: async (event, path) => executeHooks('onWatchTriggered', hooks.onWatchTriggered, [event, path]),\n onError: async (error) => executeHooks('onError', hooks.onError, [`\"${error}\"`]),\n afterOneFileWrite: async (path) => executeHooks('afterOneFileWrite', hooks.afterOneFileWrite, [path]),\n afterAllFileWrite: async (paths) => executeHooks('afterAllFileWrite', hooks.afterAllFileWrite, paths),\n beforeOneFileWrite: async (path) => executeHooks('beforeOneFileWrite', hooks.beforeOneFileWrite, [path]),\n beforeAllFileWrite: async (paths) => executeHooks('beforeAllFileWrite', hooks.beforeAllFileWrite, paths),\n beforeDone: async () => executeHooks('beforeDone', hooks.beforeDone),\n };\n};\n//# sourceMappingURL=hooks.js.map","import { executeCodegen } from '../codegen';\nimport { normalizeInstanceOrArray, normalizeOutputParam } from '@graphql-codegen/plugin-helpers';\nimport isGlob from 'is-glob';\nimport debounce from 'debounce';\nimport logSymbols from 'log-symbols';\nimport { debugLog } from './debugging';\nimport { getLogger } from './logger';\nimport { join } from 'path';\nimport { lifecycleHooks } from '../hooks';\nimport { loadContext } from '../config';\nimport { isValidPath } from '@graphql-tools/utils';\nfunction log(msg) {\n // double spaces to inline the message with Listr\n getLogger().info(` ${msg}`);\n}\nfunction emitWatching() {\n log(`${logSymbols.info} Watching for changes...`);\n}\nexport const createWatcher = (initalContext, onNext) => {\n debugLog(`[Watcher] Starting watcher...`);\n let config = initalContext.getConfig();\n const files = [initalContext.filepath].filter(a => a);\n const documents = normalizeInstanceOrArray(config.documents);\n const schemas = normalizeInstanceOrArray(config.schema);\n // Add schemas and documents from \"generates\"\n Object.keys(config.generates)\n .map(filename => normalizeOutputParam(config.generates[filename]))\n .forEach(conf => {\n schemas.push(...normalizeInstanceOrArray(conf.schema));\n documents.push(...normalizeInstanceOrArray(conf.documents));\n });\n if (documents) {\n documents.forEach(doc => {\n if (typeof doc === 'string') {\n files.push(doc);\n }\n else {\n files.push(...Object.keys(doc));\n }\n });\n }\n schemas.forEach((schema) => {\n if (isGlob(schema) || isValidPath(schema)) {\n files.push(schema);\n }\n });\n if (typeof config.watch !== 'boolean') {\n files.push(...normalizeInstanceOrArray(config.watch));\n }\n let watcher;\n const runWatcher = async () => {\n var _a, _b;\n const chokidar = await import('chokidar');\n let isShutdown = false;\n const debouncedExec = debounce(() => {\n if (!isShutdown) {\n executeCodegen(initalContext)\n .then(onNext, () => Promise.resolve())\n .then(() => emitWatching());\n }\n }, 100);\n emitWatching();\n const ignored = [];\n Object.keys(config.generates)\n .map(filename => ({ filename, config: normalizeOutputParam(config.generates[filename]) }))\n .forEach(entry => {\n if (entry.config.preset) {\n const extension = entry.config.presetConfig && entry.config.presetConfig.extension;\n if (extension) {\n ignored.push(join(entry.filename, '**', '*' + extension));\n }\n }\n else {\n ignored.push(entry.filename);\n }\n });\n watcher = chokidar.watch(files, {\n persistent: true,\n ignoreInitial: true,\n followSymlinks: true,\n cwd: process.cwd(),\n disableGlobbing: false,\n usePolling: (_a = config.watchConfig) === null || _a === void 0 ? void 0 : _a.usePolling,\n interval: (_b = config.watchConfig) === null || _b === void 0 ? void 0 : _b.interval,\n depth: 99,\n awaitWriteFinish: true,\n ignorePermissionErrors: false,\n atomic: true,\n ignored,\n });\n debugLog(`[Watcher] Started`);\n const shutdown = () => {\n isShutdown = true;\n debugLog(`[Watcher] Shutting down`);\n log(`Shutting down watch...`);\n watcher.close();\n lifecycleHooks(config.hooks).beforeDone();\n };\n // it doesn't matter what has changed, need to run whole process anyway\n watcher.on('all', async (eventName, path) => {\n lifecycleHooks(config.hooks).onWatchTriggered(eventName, path);\n debugLog(`[Watcher] triggered due to a file ${eventName} event: ${path}`);\n const fullPath = join(process.cwd(), path);\n delete require.cache[fullPath];\n if (eventName === 'change' && config.configFilePath && fullPath === config.configFilePath) {\n log(`${logSymbols.info} Config file has changed, reloading...`);\n const context = await loadContext(config.configFilePath);\n const newParsedConfig = context.getConfig();\n newParsedConfig.watch = config.watch;\n newParsedConfig.silent = config.silent;\n newParsedConfig.overwrite = config.overwrite;\n newParsedConfig.configFilePath = config.configFilePath;\n config = newParsedConfig;\n initalContext.updateConfig(config);\n }\n debouncedExec();\n });\n process.once('SIGINT', shutdown);\n process.once('SIGTERM', shutdown);\n };\n // the promise never resolves to keep process running\n return new Promise((resolve, reject) => {\n executeCodegen(initalContext)\n .then(onNext, () => Promise.resolve())\n .then(runWatcher)\n .catch(err => {\n watcher.close();\n reject(err);\n });\n });\n};\n//# sourceMappingURL=watcher.js.map","import { writeFileSync, statSync, readFileSync, unlink } from 'fs';\nexport function writeSync(filepath, content) {\n return writeFileSync(filepath, content);\n}\nexport function readSync(filepath) {\n return readFileSync(filepath, 'utf-8');\n}\nexport function fileExists(filePath) {\n try {\n return statSync(filePath).isFile();\n }\n catch (err) {\n return false;\n }\n}\nexport function unlinkFile(filePath, cb) {\n unlink(filePath, cb);\n}\n//# sourceMappingURL=file-system.js.map","import { lifecycleHooks } from './hooks';\nimport { executeCodegen } from './codegen';\nimport { createWatcher } from './utils/watcher';\nimport { fileExists, readSync, writeSync, unlinkFile } from './utils/file-system';\nimport { sync as mkdirpSync } from 'mkdirp';\nimport { dirname, join, isAbsolute } from 'path';\nimport { debugLog } from './utils/debugging';\nimport { ensureContext } from './config';\nimport { createHash } from 'crypto';\nconst hash = (content) => createHash('sha1').update(content).digest('base64');\nexport async function generate(input, saveToFile = true) {\n const context = ensureContext(input);\n const config = context.getConfig();\n await lifecycleHooks(config.hooks).afterStart();\n let previouslyGeneratedFilenames = [];\n function removeStaleFiles(config, generationResult) {\n const filenames = generationResult.map(o => o.filename);\n // find stale files from previous build which are not present in current build\n const staleFilenames = previouslyGeneratedFilenames.filter(f => !filenames.includes(f));\n staleFilenames.forEach(filename => {\n if (shouldOverwrite(config, filename)) {\n unlinkFile(filename, err => {\n const prettyFilename = filename.replace(`${input.cwd || process.cwd()}/`, '');\n if (err) {\n debugLog(`Cannot remove stale file: ${prettyFilename}\\n${err}`);\n }\n else {\n debugLog(`Removed stale file: ${prettyFilename}`);\n }\n });\n }\n });\n previouslyGeneratedFilenames = filenames;\n }\n const recentOutputHash = new Map();\n async function writeOutput(generationResult) {\n if (!saveToFile) {\n return generationResult;\n }\n if (config.watch) {\n removeStaleFiles(config, generationResult);\n }\n await lifecycleHooks(config.hooks).beforeAllFileWrite(generationResult.map(r => r.filename));\n await Promise.all(generationResult.map(async (result) => {\n const exists = fileExists(result.filename);\n if (!shouldOverwrite(config, result.filename) && exists) {\n return;\n }\n const content = result.content || '';\n const currentHash = hash(content);\n let previousHash = recentOutputHash.get(result.filename);\n if (!previousHash && exists) {\n previousHash = hash(readSync(result.filename));\n }\n if (previousHash && currentHash === previousHash) {\n debugLog(`Skipping file (${result.filename}) writing due to indentical hash...`);\n return;\n }\n if (content.length === 0) {\n return;\n }\n recentOutputHash.set(result.filename, currentHash);\n const basedir = dirname(result.filename);\n await lifecycleHooks(result.hooks).beforeOneFileWrite(result.filename);\n await lifecycleHooks(config.hooks).beforeOneFileWrite(result.filename);\n mkdirpSync(basedir);\n const absolutePath = isAbsolute(result.filename)\n ? result.filename\n : join(input.cwd || process.cwd(), result.filename);\n writeSync(absolutePath, result.content);\n await lifecycleHooks(result.hooks).afterOneFileWrite(result.filename);\n await lifecycleHooks(config.hooks).afterOneFileWrite(result.filename);\n }));\n await lifecycleHooks(config.hooks).afterAllFileWrite(generationResult.map(r => r.filename));\n return generationResult;\n }\n // watch mode\n if (config.watch) {\n return createWatcher(context, writeOutput);\n }\n const outputFiles = await executeCodegen(context);\n await writeOutput(outputFiles);\n lifecycleHooks(config.hooks).beforeDone();\n return outputFiles;\n}\nfunction shouldOverwrite(config, outputPath) {\n const globalValue = config.overwrite === undefined ? true : !!config.overwrite;\n const outputConfig = config.generates[outputPath];\n if (!outputConfig) {\n debugLog(`Couldn't find a config of ${outputPath}`);\n return globalValue;\n }\n if (isConfiguredOutput(outputConfig) && typeof outputConfig.overwrite === 'boolean') {\n return outputConfig.overwrite;\n }\n return globalValue;\n}\nfunction isConfiguredOutput(output) {\n return typeof output.plugins !== 'undefined';\n}\n//# sourceMappingURL=generate-and-save.js.map","import chalk from 'chalk';\nimport { resolve, relative } from 'path';\nimport { writeFileSync, readFileSync } from 'fs';\nimport detectIndent from 'detect-indent';\nimport getLatestVersion from 'latest-version';\n// Parses config and writes it to a file\nexport async function writeConfig(answers, config) {\n const YAML = await import('json-to-pretty-yaml').then(m => ('default' in m ? m.default : m));\n const ext = answers.config.toLocaleLowerCase().endsWith('.json') ? 'json' : 'yml';\n const content = ext === 'json' ? JSON.stringify(config) : YAML.stringify(config);\n const fullPath = resolve(process.cwd(), answers.config);\n const relativePath = relative(process.cwd(), answers.config);\n writeFileSync(fullPath, content, {\n encoding: 'utf-8',\n });\n return {\n relativePath,\n fullPath,\n };\n}\n// Updates package.json (script and plugins as dependencies)\nexport async function writePackage(answers, configLocation) {\n // script\n const pkgPath = resolve(process.cwd(), 'package.json');\n const pkgContent = readFileSync(pkgPath, {\n encoding: 'utf-8',\n });\n const pkg = JSON.parse(pkgContent);\n const { indent } = detectIndent(pkgContent);\n if (!pkg.scripts) {\n pkg.scripts = {};\n }\n pkg.scripts[answers.script] = `graphql-codegen --config ${configLocation}`;\n // plugin\n if (!pkg.devDependencies) {\n pkg.devDependencies = {};\n }\n await Promise.all(answers.plugins.map(async (plugin) => {\n pkg.devDependencies[plugin.package] = await getLatestVersion(plugin.package);\n }));\n if (answers.introspection) {\n pkg.devDependencies['@graphql-codegen/introspection'] = await getLatestVersion('@graphql-codegen/introspection');\n }\n pkg.devDependencies['@graphql-codegen/cli'] = await getLatestVersion('@graphql-codegen/cli');\n writeFileSync(pkgPath, JSON.stringify(pkg, null, indent));\n}\nexport function bold(str) {\n return chalk.bold(str);\n}\nexport function grey(str) {\n return chalk.grey(str);\n}\nexport function italic(str) {\n return chalk.italic(str);\n}\n//# sourceMappingURL=helpers.js.map","export var Tags;\n(function (Tags) {\n Tags[\"browser\"] = \"Browser\";\n Tags[\"node\"] = \"Node\";\n Tags[\"typescript\"] = \"TypeScript\";\n Tags[\"flow\"] = \"Flow\";\n Tags[\"angular\"] = \"Angular\";\n Tags[\"stencil\"] = \"Stencil\";\n Tags[\"react\"] = \"React\";\n Tags[\"vue\"] = \"Vue\";\n})(Tags || (Tags = {}));\n//# sourceMappingURL=types.js.map","import { italic } from './helpers';\nimport { Tags } from './types';\nexport const plugins = [\n {\n name: `TypeScript ${italic('(required by other typescript plugins)')}`,\n package: '@graphql-codegen/typescript',\n value: 'typescript',\n pathInRepo: 'typescript/typescript',\n available: hasTag(Tags.typescript),\n shouldBeSelected: tags => oneOf(tags, Tags.angular, Tags.stencil) || allOf(tags, Tags.typescript, Tags.react) || noneOf(tags, Tags.flow),\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Operations ${italic('(operations and fragments)')}`,\n package: '@graphql-codegen/typescript-operations',\n value: 'typescript-operations',\n pathInRepo: 'typescript/operations',\n available: tags => allOf(tags, Tags.browser, Tags.typescript),\n shouldBeSelected: tags => oneOf(tags, Tags.angular, Tags.stencil) || allOf(tags, Tags.typescript, Tags.react),\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Resolvers ${italic('(strongly typed resolve functions)')}`,\n package: '@graphql-codegen/typescript-resolvers',\n value: 'typescript-resolvers',\n pathInRepo: 'typescript/resolvers',\n available: tags => allOf(tags, Tags.node, Tags.typescript),\n shouldBeSelected: tags => noneOf(tags, Tags.flow),\n defaultExtension: '.ts',\n },\n {\n name: `Flow ${italic('(required by other flow plugins)')}`,\n package: '@graphql-codegen/flow',\n value: 'flow',\n pathInRepo: 'flow/flow',\n available: hasTag(Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `Flow Operations ${italic('(operations and fragments)')}`,\n package: '@graphql-codegen/flow-operations',\n value: 'flow-operations',\n pathInRepo: 'flow/operations',\n available: tags => allOf(tags, Tags.browser, Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `Flow Resolvers ${italic('(strongly typed resolve functions)')}`,\n package: '@graphql-codegen/flow-resolvers',\n value: 'flow-resolvers',\n pathInRepo: 'flow/resolvers',\n available: tags => allOf(tags, Tags.node, Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `TypeScript Apollo Angular ${italic('(typed GQL services)')}`,\n package: '@graphql-codegen/typescript-apollo-angular',\n value: 'typescript-apollo-angular',\n pathInRepo: 'typescript/apollo-angular',\n available: hasTag(Tags.angular),\n shouldBeSelected: () => true,\n defaultExtension: '.js',\n },\n {\n name: `TypeScript Vue Apollo Composition API ${italic('(typed functions)')}`,\n package: '@graphql-codegen/typescript-vue-apollo',\n value: 'typescript-vue-apollo',\n pathInRepo: 'typescript/vue-apollo',\n available: tags => allOf(tags, Tags.vue, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Vue Apollo Smart Operations ${italic('(typed functions)')}`,\n package: '@graphql-codegen/typescript-vue-apollo-smart-ops',\n value: 'typescript-vue-apollo-smart-ops',\n pathInRepo: 'typescript/vue-apollo-smart-ops',\n available: tags => allOf(tags, Tags.vue, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript React Apollo ${italic('(typed components and HOCs)')}`,\n package: '@graphql-codegen/typescript-react-apollo',\n value: 'typescript-react-apollo',\n pathInRepo: 'typescript/react-apollo',\n available: tags => allOf(tags, Tags.react, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.tsx',\n },\n {\n name: `TypeScript Stencil Apollo ${italic('(typed components)')}`,\n package: '@graphql-codegen/typescript-stencil-apollo',\n value: 'typescript-stencil-apollo',\n pathInRepo: 'typescript/stencil-apollo',\n available: hasTag(Tags.stencil),\n shouldBeSelected: () => true,\n defaultExtension: '.tsx',\n },\n {\n name: `TypeScript MongoDB ${italic('(typed MongoDB objects)')}`,\n package: '@graphql-codegen/typescript-mongodb',\n value: 'typescript-mongodb',\n pathInRepo: 'typescript/mongodb',\n available: tags => allOf(tags, Tags.node, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript GraphQL files modules ${italic('(declarations for .graphql files)')}`,\n package: '@graphql-codegen/typescript-graphql-files-modules',\n value: 'typescript-graphql-files-modules',\n pathInRepo: 'typescript/graphql-files-modules',\n available: tags => allOf(tags, Tags.browser, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript GraphQL document nodes ${italic('(embedded GraphQL document)')}`,\n package: '@graphql-codegen/typescript-document-nodes',\n value: 'typescript-document-nodes',\n pathInRepo: 'typescript/document-nodes',\n available: tags => allOf(tags, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `Introspection Fragment Matcher ${italic('(for Apollo Client)')}`,\n package: '@graphql-codegen/fragment-matcher',\n value: 'fragment-matcher',\n pathInRepo: 'other/fragment-matcher',\n available: hasTag(Tags.browser),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `Urql Introspection ${italic('(for Urql Client)')}`,\n package: '@graphql-codegen/urql-introspection',\n value: 'urql-introspection',\n pathInRepo: 'other/urql-introspection',\n available: hasTag(Tags.browser),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n];\nfunction hasTag(tag) {\n return (tags) => tags.includes(tag);\n}\nfunction oneOf(list, ...items) {\n return list.some(i => items.includes(i));\n}\nfunction noneOf(list, ...items) {\n return !list.some(i => items.includes(i));\n}\nfunction allOf(list, ...items) {\n return items.every(i => list.includes(i));\n}\n//# sourceMappingURL=plugins.js.map","import { grey } from './helpers';\nimport { Tags } from './types';\nimport { plugins } from './plugins';\nexport function getQuestions(possibleTargets) {\n return [\n {\n type: 'checkbox',\n name: 'targets',\n message: `What type of application are you building?`,\n choices: getApplicationTypeChoices(possibleTargets),\n validate: ((targets) => targets.length > 0),\n },\n {\n type: 'input',\n name: 'schema',\n message: 'Where is your schema?:',\n suffix: grey(' (path or url)'),\n default: 'http://localhost:4000',\n validate: (str) => str.length > 0,\n },\n {\n type: 'input',\n name: 'documents',\n message: 'Where are your operations and fragments?:',\n when: answers => {\n // flatten targets\n // I can't find an API in Inquirer that would do that\n answers.targets = normalizeTargets(answers.targets);\n return answers.targets.includes(Tags.browser);\n },\n default: 'src/**/*.graphql',\n validate: (str) => str.length > 0,\n },\n {\n type: 'checkbox',\n name: 'plugins',\n message: 'Pick plugins:',\n choices: getPluginChoices,\n validate: ((plugins) => plugins.length > 0),\n },\n {\n type: 'input',\n name: 'output',\n message: 'Where to write the output:',\n default: getOutputDefaultValue,\n validate: (str) => str.length > 0,\n },\n {\n type: 'confirm',\n name: 'introspection',\n message: 'Do you want to generate an introspection file?',\n },\n {\n type: 'input',\n name: 'config',\n message: 'How to name the config file?',\n default: 'codegen.yml',\n validate: (str) => {\n const isNotEmpty = str.length > 0;\n const hasCorrectExtension = ['json', 'yml', 'yaml'].some(ext => str.toLocaleLowerCase().endsWith(`.${ext}`));\n return isNotEmpty && hasCorrectExtension;\n },\n },\n {\n type: 'input',\n name: 'script',\n message: 'What script in package.json should run the codegen?',\n validate: (str) => str.length > 0,\n },\n ];\n}\nexport function getApplicationTypeChoices(possibleTargets) {\n function withFlowOrTypescript(tags) {\n if (possibleTargets.TypeScript) {\n tags.push(Tags.typescript);\n }\n else if (possibleTargets.Flow) {\n tags.push(Tags.flow);\n }\n else {\n tags.push(Tags.flow, Tags.typescript);\n }\n return tags;\n }\n return [\n {\n name: 'Backend - API or server',\n key: 'backend',\n value: withFlowOrTypescript([Tags.node]),\n checked: possibleTargets.Node,\n },\n {\n name: 'Application built with Angular',\n key: 'angular',\n value: [Tags.angular, Tags.browser, Tags.typescript],\n checked: possibleTargets.Angular,\n },\n {\n name: 'Application built with React',\n key: 'react',\n value: withFlowOrTypescript([Tags.react, Tags.browser]),\n checked: possibleTargets.React,\n },\n {\n name: 'Application built with Stencil',\n key: 'stencil',\n value: [Tags.stencil, Tags.browser, Tags.typescript],\n checked: possibleTargets.Stencil,\n },\n {\n name: 'Application built with other framework or vanilla JS',\n key: 'client',\n value: [Tags.browser, Tags.typescript, Tags.flow],\n checked: possibleTargets.Browser && !possibleTargets.Angular && !possibleTargets.React && !possibleTargets.Stencil,\n },\n ];\n}\nexport function getPluginChoices(answers) {\n return plugins\n .filter(p => p.available(answers.targets))\n .map(p => {\n return {\n name: p.name,\n value: p,\n checked: p.shouldBeSelected(answers.targets),\n };\n });\n}\nfunction normalizeTargets(targets) {\n return [].concat(...targets);\n}\nexport function getOutputDefaultValue(answers) {\n if (answers.plugins.some(plugin => plugin.defaultExtension === '.tsx')) {\n return 'src/generated/graphql.tsx';\n }\n else if (answers.plugins.some(plugin => plugin.defaultExtension === '.ts')) {\n return 'src/generated/graphql.ts';\n }\n else {\n return 'src/generated/graphql.js';\n }\n}\n//# sourceMappingURL=questions.js.map","import { resolve } from 'path';\nimport { readFileSync } from 'fs';\nimport { Tags } from './types';\nexport async function guessTargets() {\n const pkg = JSON.parse(readFileSync(resolve(process.cwd(), 'package.json'), {\n encoding: 'utf-8',\n }));\n const dependencies = Object.keys({\n ...pkg.dependencies,\n ...pkg.devDependencies,\n });\n return {\n [Tags.angular]: isAngular(dependencies),\n [Tags.react]: isReact(dependencies),\n [Tags.stencil]: isStencil(dependencies),\n [Tags.vue]: isVue(dependencies),\n [Tags.browser]: false,\n [Tags.node]: false,\n [Tags.typescript]: isTypescript(dependencies),\n [Tags.flow]: isFlow(dependencies),\n };\n}\nfunction isAngular(dependencies) {\n return dependencies.includes('@angular/core');\n}\nfunction isReact(dependencies) {\n return dependencies.includes('react');\n}\nfunction isStencil(dependencies) {\n return dependencies.includes('@stencil/core');\n}\nfunction isVue(dependencies) {\n return dependencies.includes('vue') || dependencies.includes('nuxt');\n}\nfunction isTypescript(dependencies) {\n return dependencies.includes('typescript');\n}\nfunction isFlow(dependencies) {\n return dependencies.includes('flow');\n}\n//# sourceMappingURL=targets.js.map","import inquirer from 'inquirer';\nimport { getQuestions } from './questions';\nimport { guessTargets } from './targets';\nimport { Tags } from './types';\nimport { writeConfig, writePackage, bold } from './helpers';\nfunction log(...msgs) {\n // eslint-disable-next-line no-console\n console.log(...msgs);\n}\nexport async function init() {\n log(`\n Welcome to ${bold('GraphQL Code Generator')}!\n Answer few questions and we will setup everything for you.\n `);\n const possibleTargets = await guessTargets();\n const answers = await inquirer.prompt(getQuestions(possibleTargets));\n // define config\n const config = {\n overwrite: true,\n schema: answers.schema,\n documents: answers.targets.includes(Tags.browser) ? answers.documents : null,\n generates: {\n [answers.output]: {\n plugins: answers.plugins.map(p => p.value),\n },\n },\n };\n // introspection\n if (answers.introspection) {\n addIntrospection(config);\n }\n // config file\n const { relativePath } = await writeConfig(answers, config);\n log(`Fetching latest versions of selected plugins...`);\n // write package.json\n await writePackage(answers, relativePath);\n // Emit status to the terminal\n log(`\n Config file generated at ${bold(relativePath)}\n \n ${bold('$ npm install')}\n\n To install the plugins.\n\n ${bold(`$ npm run ${answers.script}`)}\n\n To run GraphQL Code Generator.\n `);\n}\n// adds an introspection to `generates`\nfunction addIntrospection(config) {\n config.generates['./graphql.schema.json'] = {\n plugins: ['introspection'],\n };\n}\n//# sourceMappingURL=index.js.map","const isBrowser = typeof window !== 'undefined' && typeof window.document !== 'undefined';\nconst isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;\nexport { isBrowser, isNode };\n//# sourceMappingURL=is-browser.js.map","import { isBrowser, isNode } from './is-browser';\nexport function cliError(err, exitOnError = true) {\n let msg;\n if (err instanceof Error) {\n msg = err.message || err.toString();\n }\n else if (typeof err === 'string') {\n msg = err;\n }\n else {\n msg = JSON.stringify(err);\n }\n // eslint-disable-next-line no-console\n console.error(msg);\n if (exitOnError && isNode) {\n process.exit(1);\n }\n else if (exitOnError && isBrowser) {\n throw err;\n }\n}\n//# sourceMappingURL=cli-error.js.map","import { generate } from './generate-and-save';\nimport { init } from './init';\nimport { createContext } from './config';\nimport { lifecycleHooks } from './hooks';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nexport function runCli(cmd) {\n ensureGraphQlPackage();\n switch (cmd) {\n case 'init':\n return init();\n default: {\n return createContext().then(context => {\n return generate(context).catch(async (error) => {\n await lifecycleHooks(context.getConfig().hooks).onError(error.toString());\n throw error;\n });\n });\n }\n }\n}\nexport function ensureGraphQlPackage() {\n try {\n require('graphql');\n }\n catch (e) {\n throw new DetailedError(`Unable to load \"graphql\" package. Please make sure to install \"graphql\" as a dependency!`, `\n To install \"graphql\", run:\n yarn add graphql\n Or, with NPM:\n npm install --save graphql\n`);\n }\n}\n//# sourceMappingURL=cli.js.map"],"names":["dummyLogger","isDetailedError","stripIndent","logSymbol","resolve","DetailedError","CodeFileLoader","GitLoader","GithubLoader","ApolloEngineLoader","PrismaLoader","loadConfig","GraphQLFileLoader","JsonFileLoader","UrlLoader","loadSchemaToolkit","extname","join","loadDocumentsToolkit","env","defaultLoaders","cosmiconfig","fs","path","createRequire","createRequireFromPath","GraphQLError","normalizeInstanceOrArray","normalizeOutputParam","parse","printSchemaWithDirectives","normalizeConfig","codegen","exec","delimiter","sep","isValidPath","writeFileSync","readFileSync","statSync","unlink","createHash","dirname","mkdirpSync","isAbsolute","relative","log"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../dist/graphql-codegen-cli/src/utils/indentString.js","../../../dist/graphql-codegen-cli/src/utils/logger.js","../../../dist/graphql-codegen-cli/src/utils/debugging.js","../../../dist/graphql-codegen-cli/src/utils/listr-renderer.js","../../../dist/graphql-codegen-cli/src/plugins.js","../../../dist/graphql-codegen-cli/src/presets.js","../../../dist/graphql-codegen-cli/src/graphql-config.js","../../../dist/graphql-codegen-cli/src/load.js","../../../dist/graphql-codegen-cli/src/config.js","../../../dist/graphql-codegen-cli/src/codegen.js","../../../dist/graphql-codegen-cli/src/hooks.js","../../../dist/graphql-codegen-cli/src/utils/watcher.js","../../../dist/graphql-codegen-cli/src/utils/file-system.js","../../../dist/graphql-codegen-cli/src/generate-and-save.js","../../../dist/graphql-codegen-cli/src/init/helpers.js","../../../dist/graphql-codegen-cli/src/init/types.js","../../../dist/graphql-codegen-cli/src/init/plugins.js","../../../dist/graphql-codegen-cli/src/init/questions.js","../../../dist/graphql-codegen-cli/src/init/targets.js","../../../dist/graphql-codegen-cli/src/init/index.js","../../../dist/graphql-codegen-cli/src/utils/is-browser.js","../../../dist/graphql-codegen-cli/src/utils/cli-error.js","../../../dist/graphql-codegen-cli/src/cli.js"],"sourcesContent":["/**\nIndent each line in a string.\n@param string - The string to indent.\n@param count - How many times you want `options.indent` repeated. Default: `1`.\n@example\n```\nimport indentString from 'indent-string';\nindentString('Unicorns\\nRainbows', 4);\n//=> ' Unicorns\\n Rainbows'\nindentString('Unicorns\\nRainbows', 4, {indent: '♥'});\n//=> '♥♥♥♥Unicorns\\n♥♥♥♥Rainbows'\n```\n*/\nexport function indentString(string, count = 1, options = {}) {\n const { indent = ' ', includeEmptyLines = false } = options;\n if (typeof string !== 'string') {\n throw new TypeError(`Expected \\`input\\` to be a \\`string\\`, got \\`${typeof string}\\``);\n }\n if (typeof count !== 'number') {\n throw new TypeError(`Expected \\`count\\` to be a \\`number\\`, got \\`${typeof count}\\``);\n }\n if (count < 0) {\n throw new RangeError(`Expected \\`count\\` to be at least 0, got \\`${count}\\``);\n }\n if (typeof indent !== 'string') {\n throw new TypeError(`Expected \\`options.indent\\` to be a \\`string\\`, got \\`${typeof indent}\\``);\n }\n if (count === 0) {\n return string;\n }\n const regex = includeEmptyLines ? /^/gm : /^(?!\\s*$)/gm;\n return string.replace(regex, indent.repeat(count));\n}\n//# sourceMappingURL=indentString.js.map","import { dummyLogger } from 'ts-log';\nlet logger;\nexport function getLogger() {\n return logger || dummyLogger;\n}\nuseWinstonLogger();\nexport function setLogger(newLogger) {\n logger = newLogger;\n}\nexport function setSilentLogger() {\n logger = dummyLogger;\n}\nexport function useWinstonLogger() {\n if (logger && logger.levels) {\n return;\n }\n logger = console;\n}\n//# sourceMappingURL=logger.js.map","import { getLogger } from './logger';\nlet queue = [];\nexport function debugLog(message, ...meta) {\n if (!process.env.GQL_CODEGEN_NODEBUG && process.env.DEBUG !== undefined) {\n queue.push({\n message,\n meta,\n });\n }\n}\nexport function printLogs() {\n if (!process.env.GQL_CODEGEN_NODEBUG && process.env.DEBUG !== undefined) {\n queue.forEach(log => {\n getLogger().info(log.message, ...log.meta);\n });\n resetLogs();\n }\n}\nexport function resetLogs() {\n queue = [];\n}\n//# sourceMappingURL=debugging.js.map","import chalk from 'chalk';\nimport { indentString } from './indentString';\nimport logSymbol from 'log-symbols';\nimport ansiEscapes from 'ansi-escapes';\nimport wrapAnsi from 'wrap-ansi';\nimport { stripIndent } from 'common-tags';\nimport { isDetailedError } from '@graphql-codegen/plugin-helpers';\nimport { debugLog, printLogs } from './debugging';\nconst UpdateRenderer = require('listr-update-renderer');\nexport class Renderer {\n constructor(tasks, options) {\n this.updateRenderer = new UpdateRenderer(tasks, options);\n }\n render() {\n return this.updateRenderer.render();\n }\n end(err) {\n this.updateRenderer.end(err);\n if (typeof err === 'undefined') {\n logUpdate.clear();\n return;\n }\n // persist the output\n logUpdate.done();\n // show errors\n if (err) {\n const errorCount = err.errors ? err.errors.length : 0;\n if (errorCount > 0) {\n const count = indentString(chalk.red.bold(`Found ${errorCount} error${errorCount > 1 ? 's' : ''}`), 1);\n const details = err.errors\n .map(error => {\n debugLog(`[CLI] Exited with an error`, error);\n return { msg: isDetailedError(error) ? error.details : null, rawError: error };\n })\n .map(({ msg, rawError }, i) => {\n const source = err.errors[i].source;\n msg = msg ? chalk.gray(indentString(stripIndent(`${msg}`), 4)) : null;\n const stack = rawError.stack ? chalk.gray(indentString(stripIndent(rawError.stack), 4)) : null;\n if (source) {\n const sourceOfError = typeof source === 'string' ? source : source.name;\n const title = indentString(`${logSymbol.error} ${sourceOfError}`, 2);\n return [title, msg, stack, stack].filter(Boolean).join('\\n');\n }\n return [msg, stack].filter(Boolean).join('\\n');\n })\n .join('\\n\\n');\n logUpdate.emit(['', count, details, ''].join('\\n\\n'));\n }\n else {\n const details = err.details ? err.details : '';\n logUpdate.emit(`${chalk.red.bold(`${indentString(err.message, 2)}`)}\\n${details}\\n${chalk.grey(err.stack)}`);\n }\n }\n logUpdate.done();\n printLogs();\n }\n}\nconst render = tasks => {\n for (const task of tasks) {\n task.subscribe(event => {\n if (event.type === 'SUBTASKS') {\n render(task.subtasks);\n return;\n }\n if (event.type === 'DATA') {\n logUpdate.emit(chalk.dim(`${event.data}`));\n }\n logUpdate.done();\n }, err => {\n logUpdate.emit(err);\n logUpdate.done();\n });\n }\n};\nexport class ErrorRenderer {\n constructor(tasks, _options) {\n this.tasks = tasks;\n }\n render() {\n render(this.tasks);\n }\n static get nonTTY() {\n return true;\n }\n end() { }\n}\nclass LogUpdate {\n constructor() {\n this.stream = process.stdout;\n // state\n this.previousLineCount = 0;\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n }\n emit(...args) {\n let output = args.join(' ') + '\\n';\n const width = this.getWidth();\n if (output === this.previousOutput && this.previousWidth === width) {\n return;\n }\n this.previousOutput = output;\n this.previousWidth = width;\n output = wrapAnsi(output, width, {\n trim: false,\n hard: true,\n wordWrap: false,\n });\n this.stream.write(ansiEscapes.eraseLines(this.previousLineCount) + output);\n this.previousLineCount = output.split('\\n').length;\n }\n clear() {\n this.stream.write(ansiEscapes.eraseLines(this.previousLineCount));\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n this.previousLineCount = 0;\n }\n done() {\n this.previousOutput = '';\n this.previousWidth = this.getWidth();\n this.previousLineCount = 0;\n }\n getWidth() {\n const { columns } = this.stream;\n if (!columns) {\n return 80;\n }\n return columns;\n }\n}\nconst logUpdate = new LogUpdate();\n//# sourceMappingURL=listr-renderer.js.map","import { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { resolve } from 'path';\nexport async function getPluginByName(name, pluginLoader) {\n const possibleNames = [\n `@graphql-codegen/${name}`,\n `@graphql-codegen/${name}-template`,\n `@graphql-codegen/${name}-plugin`,\n `graphql-codegen-${name}`,\n `graphql-codegen-${name}-template`,\n `graphql-codegen-${name}-plugin`,\n `codegen-${name}`,\n `codegen-${name}-template`,\n name,\n ];\n const possibleModules = possibleNames.concat(resolve(process.cwd(), name));\n for (const moduleName of possibleModules) {\n try {\n return await pluginLoader(moduleName);\n }\n catch (err) {\n if (err.code !== 'MODULE_NOT_FOUND') {\n throw new DetailedError(`Unable to load template plugin matching ${name}`, `\n Unable to load template plugin matching '${name}'.\n Reason:\n ${err.message}\n `);\n }\n }\n }\n const possibleNamesMsg = possibleNames\n .map(name => `\n - ${name}\n `.trimRight())\n .join('');\n throw new DetailedError(`Unable to find template plugin matching ${name}`, `\n Unable to find template plugin matching '${name}'\n Install one of the following packages:\n\n ${possibleNamesMsg}\n `);\n}\n//# sourceMappingURL=plugins.js.map","import { DetailedError } from '@graphql-codegen/plugin-helpers';\nexport async function getPresetByName(name, loader) {\n const possibleNames = [`@graphql-codegen/${name}`, `@graphql-codegen/${name}-preset`, name];\n for (const moduleName of possibleNames) {\n try {\n const loaded = await loader(moduleName);\n if (loaded && loaded.preset) {\n return loaded.preset;\n }\n else if (loaded && loaded.default) {\n return loaded.default;\n }\n return loaded;\n }\n catch (err) {\n if (err.code !== 'MODULE_NOT_FOUND') {\n throw new DetailedError(`Unable to load preset matching ${name}`, `\n Unable to load preset matching '${name}'.\n Reason:\n ${err.message}\n `);\n }\n }\n }\n const possibleNamesMsg = possibleNames\n .map(name => `\n - ${name}\n `.trimRight())\n .join('');\n throw new DetailedError(`Unable to find preset matching ${name}`, `\n Unable to find preset matching '${name}'\n Install one of the following packages:\n\n ${possibleNamesMsg}\n `);\n}\n//# sourceMappingURL=presets.js.map","import { loadConfig } from 'graphql-config';\nimport { ApolloEngineLoader } from '@graphql-tools/apollo-engine-loader';\nimport { CodeFileLoader } from '@graphql-tools/code-file-loader';\nimport { GitLoader } from '@graphql-tools/git-loader';\nimport { GithubLoader } from '@graphql-tools/github-loader';\nimport { PrismaLoader } from '@graphql-tools/prisma-loader';\nexport const CodegenExtension = (api) => {\n // Schema\n api.loaders.schema.register(new CodeFileLoader());\n api.loaders.schema.register(new GitLoader());\n api.loaders.schema.register(new GithubLoader());\n api.loaders.schema.register(new ApolloEngineLoader());\n api.loaders.schema.register(new PrismaLoader());\n // Documents\n api.loaders.documents.register(new CodeFileLoader());\n api.loaders.documents.register(new GitLoader());\n api.loaders.documents.register(new GithubLoader());\n return {\n name: 'codegen',\n };\n};\nexport async function findAndLoadGraphQLConfig(filepath) {\n const config = await loadConfig({\n filepath,\n rootDir: process.cwd(),\n extensions: [CodegenExtension],\n throwOnEmpty: false,\n throwOnMissing: false,\n });\n if (isGraphQLConfig(config)) {\n return config;\n }\n}\n// Kamil: user might load a config that is not GraphQL Config\n// so we need to check if it's a regular config or not\nfunction isGraphQLConfig(config) {\n if (!config) {\n return false;\n }\n try {\n return config.getDefault().hasExtension('codegen');\n }\n catch (e) { }\n try {\n for (const projectName in config.projects) {\n if (config.projects.hasOwnProperty(projectName)) {\n const project = config.projects[projectName];\n if (project.hasExtension('codegen')) {\n return true;\n }\n }\n }\n }\n catch (e) { }\n return false;\n}\n//# sourceMappingURL=graphql-config.js.map","import { loadSchema as loadSchemaToolkit, loadDocuments as loadDocumentsToolkit, } from '@graphql-tools/load';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { CodeFileLoader } from '@graphql-tools/code-file-loader';\nimport { GitLoader } from '@graphql-tools/git-loader';\nimport { GithubLoader } from '@graphql-tools/github-loader';\nimport { GraphQLFileLoader } from '@graphql-tools/graphql-file-loader';\nimport { JsonFileLoader } from '@graphql-tools/json-file-loader';\nimport { UrlLoader } from '@graphql-tools/url-loader';\nimport { ApolloEngineLoader } from '@graphql-tools/apollo-engine-loader';\nimport { PrismaLoader } from '@graphql-tools/prisma-loader';\nimport { join, extname } from 'path';\nexport const defaultSchemaLoadOptions = {\n assumeValidSDL: true,\n sort: true,\n convertExtensions: true,\n includeSources: true,\n};\nexport const defaultDocumentsLoadOptions = {\n sort: true,\n skipGraphQLImport: true,\n};\nexport async function loadSchema(schemaPointers, config) {\n try {\n const loaders = [\n new CodeFileLoader(),\n new GitLoader(),\n new GithubLoader(),\n new GraphQLFileLoader(),\n new JsonFileLoader(),\n new UrlLoader(),\n new ApolloEngineLoader(),\n new PrismaLoader(),\n ];\n const schema = await loadSchemaToolkit(schemaPointers, {\n ...defaultSchemaLoadOptions,\n loaders,\n ...config,\n ...config.config,\n });\n return schema;\n }\n catch (e) {\n throw new DetailedError('Failed to load schema', `\n Failed to load schema from ${Object.keys(schemaPointers).join(',')}:\n\n ${e.message || e}\n ${e.stack || ''}\n \n GraphQL Code Generator supports:\n - ES Modules and CommonJS exports (export as default or named export \"schema\")\n - Introspection JSON File\n - URL of GraphQL endpoint\n - Multiple files with type definitions (glob expression)\n - String in config file\n \n Try to use one of above options and run codegen again.\n \n `);\n }\n}\nexport async function loadDocuments(documentPointers, config) {\n const loaders = [\n new CodeFileLoader({\n pluckConfig: {\n skipIndent: true,\n },\n }),\n new GitLoader(),\n new GithubLoader(),\n new GraphQLFileLoader(),\n ];\n const ignore = [];\n for (const generatePath of Object.keys(config.generates)) {\n if (extname(generatePath) === '') {\n // we omit paths that don't resolve to a specific file\n continue;\n }\n ignore.push(join(process.cwd(), generatePath));\n }\n const loadedFromToolkit = await loadDocumentsToolkit(documentPointers, {\n ...defaultDocumentsLoadOptions,\n ignore,\n loaders,\n ...config,\n ...config.config,\n });\n return loadedFromToolkit;\n}\n//# sourceMappingURL=load.js.map","import { cosmiconfig, defaultLoaders } from 'cosmiconfig';\nimport { resolve } from 'path';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nimport { env } from 'string-env-interpolation';\nimport yargs from 'yargs';\nimport { findAndLoadGraphQLConfig } from './graphql-config';\nimport { loadSchema, loadDocuments, defaultSchemaLoadOptions, defaultDocumentsLoadOptions } from './load';\nimport yaml from 'yaml';\nfunction generateSearchPlaces(moduleName) {\n const extensions = ['json', 'yaml', 'yml', 'js', 'config.js'];\n // gives codegen.json...\n const regular = extensions.map(ext => `${moduleName}.${ext}`);\n // gives .codegenrc.json... but no .codegenrc.config.js\n const dot = extensions.filter(ext => ext !== 'config.js').map(ext => `.${moduleName}rc.${ext}`);\n return [...regular.concat(dot), 'package.json'];\n}\nfunction customLoader(ext) {\n function loader(filepath, content) {\n if (typeof process !== 'undefined' && 'env' in process) {\n content = env(content);\n }\n if (ext === 'json') {\n return defaultLoaders['.json'](filepath, content);\n }\n if (ext === 'yaml') {\n try {\n const result = yaml.parse(content, { prettyErrors: true, merge: true });\n return result;\n }\n catch (error) {\n error.message = `YAML Error in ${filepath}:\\n${error.message}`;\n throw error;\n }\n }\n if (ext === 'js') {\n return defaultLoaders['.js'](filepath, content);\n }\n }\n return loader;\n}\nexport async function loadContext(configFilePath) {\n const moduleName = 'codegen';\n const cosmi = cosmiconfig(moduleName, {\n searchPlaces: generateSearchPlaces(moduleName),\n packageProp: moduleName,\n loaders: {\n '.json': customLoader('json'),\n '.yaml': customLoader('yaml'),\n '.yml': customLoader('yaml'),\n '.js': customLoader('js'),\n noExt: customLoader('yaml'),\n },\n });\n const graphqlConfig = await findAndLoadGraphQLConfig(configFilePath);\n if (graphqlConfig) {\n return new CodegenContext({\n graphqlConfig,\n });\n }\n const result = await (configFilePath ? cosmi.load(configFilePath) : cosmi.search(process.cwd()));\n if (!result) {\n if (configFilePath) {\n throw new DetailedError(`Config ${configFilePath} does not exist`, `\n Config ${configFilePath} does not exist.\n \n $ graphql-codegen --config ${configFilePath}\n \n Please make sure the --config points to a correct file.\n `);\n }\n throw new DetailedError(`Unable to find Codegen config file!`, `\n Please make sure that you have a configuration file under the current directory! \n `);\n }\n if (result.isEmpty) {\n throw new DetailedError(`Found Codegen config file but it was empty!`, `\n Please make sure that you have a valid configuration file under the current directory!\n `);\n }\n return new CodegenContext({\n filepath: result.filepath,\n config: result.config,\n });\n}\nfunction getCustomConfigPath(cliFlags) {\n const configFile = cliFlags.config;\n return configFile ? resolve(process.cwd(), configFile) : null;\n}\nexport function buildOptions() {\n return {\n c: {\n alias: 'config',\n type: 'string',\n describe: 'Path to GraphQL codegen YAML config file, defaults to \"codegen.yml\" on the current directory',\n },\n w: {\n alias: 'watch',\n describe: 'Watch for changes and execute generation automatically. You can also specify a glob expreession for custom watch list.',\n coerce: (watch) => {\n if (watch === 'false') {\n return false;\n }\n if (typeof watch === 'string' || Array.isArray(watch)) {\n return watch;\n }\n return !!watch;\n },\n },\n r: {\n alias: 'require',\n describe: 'Loads specific require.extensions before running the codegen and reading the configuration',\n type: 'array',\n default: [],\n },\n o: {\n alias: 'overwrite',\n describe: 'Overwrites existing files',\n type: 'boolean',\n },\n s: {\n alias: 'silent',\n describe: 'Suppresses printing errors',\n type: 'boolean',\n },\n e: {\n alias: 'errors-only',\n describe: 'Only print errors',\n type: 'boolean',\n },\n p: {\n alias: 'project',\n describe: 'Name of a project in GraphQL Config',\n type: 'string',\n },\n };\n}\nexport function parseArgv(argv = process.argv) {\n return yargs.options(buildOptions()).parse(argv);\n}\nexport async function createContext(cliFlags = parseArgv(process.argv)) {\n if (cliFlags.require && cliFlags.require.length > 0) {\n await Promise.all(cliFlags.require.map(mod => import(require.resolve(mod, { paths: [process.cwd()] }))));\n }\n const customConfigPath = getCustomConfigPath(cliFlags);\n const context = await loadContext(customConfigPath);\n updateContextWithCliFlags(context, cliFlags);\n return context;\n}\nexport function updateContextWithCliFlags(context, cliFlags) {\n const config = {\n configFilePath: context.filepath,\n };\n if (cliFlags.watch) {\n config.watch = cliFlags.watch;\n }\n if (cliFlags.overwrite === true) {\n config.overwrite = cliFlags.overwrite;\n }\n if (cliFlags.silent === true) {\n config.silent = cliFlags.silent;\n }\n if (cliFlags.errorsOnly === true) {\n config.errorsOnly = cliFlags.errorsOnly;\n }\n if (cliFlags.project) {\n context.useProject(cliFlags.project);\n }\n context.updateConfig(config);\n}\nexport class CodegenContext {\n constructor({ config, graphqlConfig, filepath, }) {\n this._pluginContext = {};\n this._config = config;\n this._graphqlConfig = graphqlConfig;\n this.filepath = this._graphqlConfig ? this._graphqlConfig.filepath : filepath;\n this.cwd = this._graphqlConfig ? this._graphqlConfig.dirpath : process.cwd();\n }\n useProject(name) {\n this._project = name;\n }\n getConfig(extraConfig) {\n if (!this.config) {\n if (this._graphqlConfig) {\n const project = this._graphqlConfig.getProject(this._project);\n this.config = {\n ...project.extension('codegen'),\n schema: project.schema,\n documents: project.documents,\n pluginContext: this._pluginContext,\n };\n }\n else {\n this.config = { ...this._config, pluginContext: this._pluginContext };\n }\n }\n return {\n ...extraConfig,\n ...this.config,\n };\n }\n updateConfig(config) {\n this.config = {\n ...this.getConfig(),\n ...config,\n };\n }\n getPluginContext() {\n return this._pluginContext;\n }\n async loadSchema(pointer) {\n const config = this.getConfig(defaultSchemaLoadOptions);\n if (this._graphqlConfig) {\n // TODO: SchemaWithLoader won't work here\n return this._graphqlConfig.getProject(this._project).loadSchema(pointer, 'GraphQLSchema', config);\n }\n return loadSchema(pointer, config);\n }\n async loadDocuments(pointer) {\n const config = this.getConfig(defaultDocumentsLoadOptions);\n if (this._graphqlConfig) {\n // TODO: pointer won't work here\n const documents = await this._graphqlConfig.getProject(this._project).loadDocuments(pointer, config);\n return documents;\n }\n return loadDocuments(pointer, config);\n }\n}\nexport function ensureContext(input) {\n return input instanceof CodegenContext ? input : new CodegenContext({ config: input });\n}\n//# sourceMappingURL=config.js.map","import { DetailedError, normalizeOutputParam, normalizeInstanceOrArray, normalizeConfig, } from '@graphql-codegen/plugin-helpers';\nimport { codegen } from '@graphql-codegen/core';\nimport { Renderer, ErrorRenderer } from './utils/listr-renderer';\nimport { GraphQLError, parse } from 'graphql';\nimport { getPluginByName } from './plugins';\nimport { getPresetByName } from './presets';\nimport { debugLog } from './utils/debugging';\nimport { printSchemaWithDirectives } from '@graphql-tools/utils';\nimport { ensureContext } from './config';\nimport fs from 'fs';\nimport path from 'path';\n// eslint-disable-next-line\nimport { createRequire, createRequireFromPath } from 'module';\nimport Listr from 'listr';\nconst makeDefaultLoader = (from) => {\n if (fs.statSync(from).isDirectory()) {\n from = path.join(from, '__fake.js');\n }\n const relativeRequire = (createRequire || createRequireFromPath)(from);\n return (mod) => {\n return import(relativeRequire.resolve(mod));\n };\n};\nexport async function executeCodegen(input) {\n function wrapTask(task, source) {\n return async () => {\n try {\n await Promise.resolve().then(() => task());\n }\n catch (error) {\n if (source && !(error instanceof GraphQLError)) {\n error.source = source;\n }\n throw error;\n }\n };\n }\n const context = ensureContext(input);\n const config = context.getConfig();\n const pluginContext = context.getPluginContext();\n const result = [];\n const commonListrOptions = {\n exitOnError: true,\n };\n let listr;\n if (process.env.VERBOSE) {\n listr = new Listr({\n ...commonListrOptions,\n renderer: 'verbose',\n nonTTYRenderer: 'verbose',\n });\n }\n else if (process.env.NODE_ENV === 'test') {\n listr = new Listr({\n ...commonListrOptions,\n renderer: 'silent',\n nonTTYRenderer: 'silent',\n });\n }\n else {\n listr = new Listr({\n ...commonListrOptions,\n renderer: config.silent ? 'silent' : config.errorsOnly ? ErrorRenderer : Renderer,\n nonTTYRenderer: config.silent ? 'silent' : 'default',\n collapse: true,\n clearOutput: false,\n });\n }\n let rootConfig = {};\n let rootSchemas;\n let rootDocuments;\n const generates = {};\n async function normalize() {\n /* Load Require extensions */\n const requireExtensions = normalizeInstanceOrArray(config.require);\n const loader = makeDefaultLoader(context.cwd);\n for (const mod of requireExtensions) {\n await loader(mod);\n }\n /* Root plugin config */\n rootConfig = config.config || {};\n /* Normalize root \"schema\" field */\n rootSchemas = normalizeInstanceOrArray(config.schema);\n /* Normalize root \"documents\" field */\n rootDocuments = normalizeInstanceOrArray(config.documents);\n /* Normalize \"generators\" field */\n const generateKeys = Object.keys(config.generates || {});\n if (generateKeys.length === 0) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file contains the \"generates\" field, with a specification for the plugins you need.\n \n It should looks like that:\n\n schema:\n - my-schema.graphql\n generates:\n my-file.ts:\n - plugin1\n - plugin2\n - plugin3\n `);\n }\n for (const filename of generateKeys) {\n const output = (generates[filename] = normalizeOutputParam(config.generates[filename]));\n if (!output.preset && (!output.plugins || output.plugins.length === 0)) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file has defined plugins list for output \"${filename}\".\n \n It should looks like that:\n \n schema:\n - my-schema.graphql\n generates:\n my-file.ts:\n - plugin1\n - plugin2\n - plugin3\n `);\n }\n }\n if (rootSchemas.length === 0 &&\n Object.keys(generates).some(filename => !generates[filename].schema || generates[filename].schema.length === 0)) {\n throw new DetailedError('Invalid Codegen Configuration!', `\n Please make sure that your codegen config file contains either the \"schema\" field \n or every generated file has its own \"schema\" field.\n \n It should looks like that:\n schema:\n - my-schema.graphql\n\n or:\n generates:\n path/to/output:\n schema: my-schema.graphql\n `);\n }\n }\n listr.add({\n title: 'Parse configuration',\n task: () => normalize(),\n });\n listr.add({\n title: 'Generate outputs',\n task: () => {\n return new Listr(Object.keys(generates).map(filename => {\n const outputConfig = generates[filename];\n const hasPreset = !!outputConfig.preset;\n return {\n title: hasPreset\n ? `Generate to ${filename} (using EXPERIMENTAL preset \"${outputConfig.preset}\")`\n : `Generate ${filename}`,\n task: () => {\n let outputSchemaAst;\n let outputSchema;\n const outputFileTemplateConfig = outputConfig.config || {};\n const outputDocuments = [];\n const outputSpecificSchemas = normalizeInstanceOrArray(outputConfig.schema);\n const outputSpecificDocuments = normalizeInstanceOrArray(outputConfig.documents);\n return new Listr([\n {\n title: 'Load GraphQL schemas',\n task: wrapTask(async () => {\n debugLog(`[CLI] Loading Schemas`);\n const schemaPointerMap = {};\n const allSchemaUnnormalizedPointers = [...rootSchemas, ...outputSpecificSchemas];\n for (const unnormalizedPtr of allSchemaUnnormalizedPointers) {\n if (typeof unnormalizedPtr === 'string') {\n schemaPointerMap[unnormalizedPtr] = {};\n }\n else if (typeof unnormalizedPtr === 'object') {\n Object.assign(schemaPointerMap, unnormalizedPtr);\n }\n }\n outputSchemaAst = await context.loadSchema(schemaPointerMap);\n outputSchema = parse(printSchemaWithDirectives(outputSchemaAst));\n }, filename),\n },\n {\n title: 'Load GraphQL documents',\n task: wrapTask(async () => {\n debugLog(`[CLI] Loading Documents`);\n const allDocuments = [...rootDocuments, ...outputSpecificDocuments];\n const documents = await context.loadDocuments(allDocuments);\n if (documents.length > 0) {\n outputDocuments.push(...documents);\n }\n }, filename),\n },\n {\n title: 'Generate',\n task: wrapTask(async () => {\n debugLog(`[CLI] Generating output`);\n const normalizedPluginsArray = normalizeConfig(outputConfig.plugins);\n const pluginLoader = config.pluginLoader || makeDefaultLoader(context.cwd);\n const pluginPackages = await Promise.all(normalizedPluginsArray.map(plugin => getPluginByName(Object.keys(plugin)[0], pluginLoader)));\n const pluginMap = {};\n const preset = hasPreset\n ? typeof outputConfig.preset === 'string'\n ? await getPresetByName(outputConfig.preset, makeDefaultLoader(context.cwd))\n : outputConfig.preset\n : null;\n pluginPackages.forEach((pluginPackage, i) => {\n const plugin = normalizedPluginsArray[i];\n const name = Object.keys(plugin)[0];\n pluginMap[name] = pluginPackage;\n });\n const mergedConfig = {\n ...rootConfig,\n ...(typeof outputFileTemplateConfig === 'string'\n ? { value: outputFileTemplateConfig }\n : outputFileTemplateConfig),\n };\n let outputs = [];\n if (hasPreset) {\n outputs = await preset.buildGeneratesSection({\n baseOutputDir: filename,\n presetConfig: outputConfig.presetConfig || {},\n plugins: normalizedPluginsArray,\n schema: outputSchema,\n schemaAst: outputSchemaAst,\n documents: outputDocuments,\n config: mergedConfig,\n pluginMap,\n pluginContext,\n });\n }\n else {\n outputs = [\n {\n filename,\n plugins: normalizedPluginsArray,\n schema: outputSchema,\n schemaAst: outputSchemaAst,\n documents: outputDocuments,\n config: mergedConfig,\n pluginMap,\n pluginContext,\n },\n ];\n }\n const process = async (outputArgs) => {\n const output = await codegen(outputArgs);\n result.push({\n filename: outputArgs.filename,\n content: output,\n hooks: outputConfig.hooks || {},\n });\n };\n await Promise.all(outputs.map(process));\n }, filename),\n },\n ], {\n // it stops when one of tasks failed\n exitOnError: true,\n });\n },\n };\n }), {\n // it doesn't stop when one of tasks failed, to finish at least some of outputs\n exitOnError: false,\n // run 4 at once\n concurrent: 4,\n });\n },\n });\n await listr.run();\n return result;\n}\n//# sourceMappingURL=codegen.js.map","import { debugLog } from './utils/debugging';\nimport { exec } from 'child_process';\nimport { delimiter, sep } from 'path';\nconst DEFAULT_HOOKS = {\n afterStart: [],\n beforeDone: [],\n onWatchTriggered: [],\n onError: [],\n afterOneFileWrite: [],\n afterAllFileWrite: [],\n beforeOneFileWrite: [],\n beforeAllFileWrite: [],\n};\nfunction normalizeHooks(_hooks) {\n const keys = Object.keys({\n ...DEFAULT_HOOKS,\n ...(_hooks || {}),\n });\n return keys.reduce((prev, hookName) => {\n if (typeof _hooks[hookName] === 'string') {\n return {\n ...prev,\n [hookName]: [_hooks[hookName]],\n };\n }\n else if (typeof _hooks[hookName] === 'function') {\n return {\n ...prev,\n [hookName]: [_hooks[hookName]],\n };\n }\n else if (Array.isArray(_hooks[hookName])) {\n return {\n ...prev,\n [hookName]: _hooks[hookName],\n };\n }\n else {\n return prev;\n }\n }, {});\n}\nfunction execShellCommand(cmd) {\n return new Promise((resolve, reject) => {\n exec(cmd, {\n env: {\n ...process.env,\n PATH: `${process.env.PATH}${delimiter}${process.cwd()}${sep}node_modules${sep}.bin`,\n },\n }, (error, stdout, stderr) => {\n if (error) {\n reject(error);\n }\n else {\n resolve(stdout || stderr);\n }\n });\n });\n}\nasync function executeHooks(hookName, scripts = [], args = []) {\n debugLog(`Running lifecycle hook \"${hookName}\" scripts...`);\n for (const script of scripts) {\n if (typeof script === 'string') {\n debugLog(`Running lifecycle hook \"${hookName}\" script: ${script} with args: ${args.join(' ')}...`);\n await execShellCommand(`${script} ${args.join(' ')}`);\n }\n else {\n debugLog(`Running lifecycle hook \"${hookName}\" script: ${script.name} with args: ${args.join(' ')}...`);\n await script(...args);\n }\n }\n}\nexport const lifecycleHooks = (_hooks = {}) => {\n const hooks = normalizeHooks(_hooks);\n return {\n afterStart: async () => executeHooks('afterStart', hooks.afterStart),\n onWatchTriggered: async (event, path) => executeHooks('onWatchTriggered', hooks.onWatchTriggered, [event, path]),\n onError: async (error) => executeHooks('onError', hooks.onError, [`\"${error}\"`]),\n afterOneFileWrite: async (path) => executeHooks('afterOneFileWrite', hooks.afterOneFileWrite, [path]),\n afterAllFileWrite: async (paths) => executeHooks('afterAllFileWrite', hooks.afterAllFileWrite, paths),\n beforeOneFileWrite: async (path) => executeHooks('beforeOneFileWrite', hooks.beforeOneFileWrite, [path]),\n beforeAllFileWrite: async (paths) => executeHooks('beforeAllFileWrite', hooks.beforeAllFileWrite, paths),\n beforeDone: async () => executeHooks('beforeDone', hooks.beforeDone),\n };\n};\n//# sourceMappingURL=hooks.js.map","import { executeCodegen } from '../codegen';\nimport { normalizeInstanceOrArray, normalizeOutputParam } from '@graphql-codegen/plugin-helpers';\nimport isGlob from 'is-glob';\nimport debounce from 'debounce';\nimport logSymbols from 'log-symbols';\nimport { debugLog } from './debugging';\nimport { getLogger } from './logger';\nimport { join } from 'path';\nimport { lifecycleHooks } from '../hooks';\nimport { loadContext } from '../config';\nimport { isValidPath } from '@graphql-tools/utils';\nfunction log(msg) {\n // double spaces to inline the message with Listr\n getLogger().info(` ${msg}`);\n}\nfunction emitWatching() {\n log(`${logSymbols.info} Watching for changes...`);\n}\nexport const createWatcher = (initalContext, onNext) => {\n debugLog(`[Watcher] Starting watcher...`);\n let config = initalContext.getConfig();\n const files = [initalContext.filepath].filter(a => a);\n const documents = normalizeInstanceOrArray(config.documents);\n const schemas = normalizeInstanceOrArray(config.schema);\n // Add schemas and documents from \"generates\"\n Object.keys(config.generates)\n .map(filename => normalizeOutputParam(config.generates[filename]))\n .forEach(conf => {\n schemas.push(...normalizeInstanceOrArray(conf.schema));\n documents.push(...normalizeInstanceOrArray(conf.documents));\n });\n if (documents) {\n documents.forEach(doc => {\n if (typeof doc === 'string') {\n files.push(doc);\n }\n else {\n files.push(...Object.keys(doc));\n }\n });\n }\n schemas.forEach((schema) => {\n if (isGlob(schema) || isValidPath(schema)) {\n files.push(schema);\n }\n });\n if (typeof config.watch !== 'boolean') {\n files.push(...normalizeInstanceOrArray(config.watch));\n }\n let watcher;\n const runWatcher = async () => {\n var _a, _b;\n const chokidar = await import('chokidar');\n let isShutdown = false;\n const debouncedExec = debounce(() => {\n if (!isShutdown) {\n executeCodegen(initalContext)\n .then(onNext, () => Promise.resolve())\n .then(() => emitWatching());\n }\n }, 100);\n emitWatching();\n const ignored = [];\n Object.keys(config.generates)\n .map(filename => ({ filename, config: normalizeOutputParam(config.generates[filename]) }))\n .forEach(entry => {\n if (entry.config.preset) {\n const extension = entry.config.presetConfig && entry.config.presetConfig.extension;\n if (extension) {\n ignored.push(join(entry.filename, '**', '*' + extension));\n }\n }\n else {\n ignored.push(entry.filename);\n }\n });\n watcher = chokidar.watch(files, {\n persistent: true,\n ignoreInitial: true,\n followSymlinks: true,\n cwd: process.cwd(),\n disableGlobbing: false,\n usePolling: (_a = config.watchConfig) === null || _a === void 0 ? void 0 : _a.usePolling,\n interval: (_b = config.watchConfig) === null || _b === void 0 ? void 0 : _b.interval,\n depth: 99,\n awaitWriteFinish: true,\n ignorePermissionErrors: false,\n atomic: true,\n ignored,\n });\n debugLog(`[Watcher] Started`);\n const shutdown = () => {\n isShutdown = true;\n debugLog(`[Watcher] Shutting down`);\n log(`Shutting down watch...`);\n watcher.close();\n lifecycleHooks(config.hooks).beforeDone();\n };\n // it doesn't matter what has changed, need to run whole process anyway\n watcher.on('all', async (eventName, path) => {\n lifecycleHooks(config.hooks).onWatchTriggered(eventName, path);\n debugLog(`[Watcher] triggered due to a file ${eventName} event: ${path}`);\n const fullPath = join(process.cwd(), path);\n delete require.cache[fullPath];\n if (eventName === 'change' && config.configFilePath && fullPath === config.configFilePath) {\n log(`${logSymbols.info} Config file has changed, reloading...`);\n const context = await loadContext(config.configFilePath);\n const newParsedConfig = context.getConfig();\n newParsedConfig.watch = config.watch;\n newParsedConfig.silent = config.silent;\n newParsedConfig.overwrite = config.overwrite;\n newParsedConfig.configFilePath = config.configFilePath;\n config = newParsedConfig;\n initalContext.updateConfig(config);\n }\n debouncedExec();\n });\n process.once('SIGINT', shutdown);\n process.once('SIGTERM', shutdown);\n };\n // the promise never resolves to keep process running\n return new Promise((resolve, reject) => {\n executeCodegen(initalContext)\n .then(onNext, () => Promise.resolve())\n .then(runWatcher)\n .catch(err => {\n watcher.close();\n reject(err);\n });\n });\n};\n//# sourceMappingURL=watcher.js.map","import { writeFileSync, statSync, readFileSync, unlink } from 'fs';\nexport function writeSync(filepath, content) {\n return writeFileSync(filepath, content);\n}\nexport function readSync(filepath) {\n return readFileSync(filepath, 'utf-8');\n}\nexport function fileExists(filePath) {\n try {\n return statSync(filePath).isFile();\n }\n catch (err) {\n return false;\n }\n}\nexport function unlinkFile(filePath, cb) {\n unlink(filePath, cb);\n}\n//# sourceMappingURL=file-system.js.map","import { lifecycleHooks } from './hooks';\nimport { executeCodegen } from './codegen';\nimport { createWatcher } from './utils/watcher';\nimport { fileExists, readSync, writeSync, unlinkFile } from './utils/file-system';\nimport { sync as mkdirpSync } from 'mkdirp';\nimport { dirname, join, isAbsolute } from 'path';\nimport { debugLog } from './utils/debugging';\nimport { ensureContext } from './config';\nimport { createHash } from 'crypto';\nconst hash = (content) => createHash('sha1').update(content).digest('base64');\nexport async function generate(input, saveToFile = true) {\n const context = ensureContext(input);\n const config = context.getConfig();\n await lifecycleHooks(config.hooks).afterStart();\n let previouslyGeneratedFilenames = [];\n function removeStaleFiles(config, generationResult) {\n const filenames = generationResult.map(o => o.filename);\n // find stale files from previous build which are not present in current build\n const staleFilenames = previouslyGeneratedFilenames.filter(f => !filenames.includes(f));\n staleFilenames.forEach(filename => {\n if (shouldOverwrite(config, filename)) {\n unlinkFile(filename, err => {\n const prettyFilename = filename.replace(`${input.cwd || process.cwd()}/`, '');\n if (err) {\n debugLog(`Cannot remove stale file: ${prettyFilename}\\n${err}`);\n }\n else {\n debugLog(`Removed stale file: ${prettyFilename}`);\n }\n });\n }\n });\n previouslyGeneratedFilenames = filenames;\n }\n const recentOutputHash = new Map();\n async function writeOutput(generationResult) {\n if (!saveToFile) {\n return generationResult;\n }\n if (config.watch) {\n removeStaleFiles(config, generationResult);\n }\n await lifecycleHooks(config.hooks).beforeAllFileWrite(generationResult.map(r => r.filename));\n await Promise.all(generationResult.map(async (result) => {\n const exists = fileExists(result.filename);\n if (!shouldOverwrite(config, result.filename) && exists) {\n return;\n }\n const content = result.content || '';\n const currentHash = hash(content);\n let previousHash = recentOutputHash.get(result.filename);\n if (!previousHash && exists) {\n previousHash = hash(readSync(result.filename));\n }\n if (previousHash && currentHash === previousHash) {\n debugLog(`Skipping file (${result.filename}) writing due to indentical hash...`);\n return;\n }\n if (content.length === 0) {\n return;\n }\n recentOutputHash.set(result.filename, currentHash);\n const basedir = dirname(result.filename);\n await lifecycleHooks(result.hooks).beforeOneFileWrite(result.filename);\n await lifecycleHooks(config.hooks).beforeOneFileWrite(result.filename);\n mkdirpSync(basedir);\n const absolutePath = isAbsolute(result.filename)\n ? result.filename\n : join(input.cwd || process.cwd(), result.filename);\n writeSync(absolutePath, result.content);\n await lifecycleHooks(result.hooks).afterOneFileWrite(result.filename);\n await lifecycleHooks(config.hooks).afterOneFileWrite(result.filename);\n }));\n await lifecycleHooks(config.hooks).afterAllFileWrite(generationResult.map(r => r.filename));\n return generationResult;\n }\n // watch mode\n if (config.watch) {\n return createWatcher(context, writeOutput);\n }\n const outputFiles = await executeCodegen(context);\n await writeOutput(outputFiles);\n lifecycleHooks(config.hooks).beforeDone();\n return outputFiles;\n}\nfunction shouldOverwrite(config, outputPath) {\n const globalValue = config.overwrite === undefined ? true : !!config.overwrite;\n const outputConfig = config.generates[outputPath];\n if (!outputConfig) {\n debugLog(`Couldn't find a config of ${outputPath}`);\n return globalValue;\n }\n if (isConfiguredOutput(outputConfig) && typeof outputConfig.overwrite === 'boolean') {\n return outputConfig.overwrite;\n }\n return globalValue;\n}\nfunction isConfiguredOutput(output) {\n return typeof output.plugins !== 'undefined';\n}\n//# sourceMappingURL=generate-and-save.js.map","import chalk from 'chalk';\nimport { resolve, relative } from 'path';\nimport { writeFileSync, readFileSync } from 'fs';\nimport detectIndent from 'detect-indent';\nimport getLatestVersion from 'latest-version';\n// Parses config and writes it to a file\nexport async function writeConfig(answers, config) {\n const YAML = await import('json-to-pretty-yaml').then(m => ('default' in m ? m.default : m));\n const ext = answers.config.toLocaleLowerCase().endsWith('.json') ? 'json' : 'yml';\n const content = ext === 'json' ? JSON.stringify(config) : YAML.stringify(config);\n const fullPath = resolve(process.cwd(), answers.config);\n const relativePath = relative(process.cwd(), answers.config);\n writeFileSync(fullPath, content, {\n encoding: 'utf-8',\n });\n return {\n relativePath,\n fullPath,\n };\n}\n// Updates package.json (script and plugins as dependencies)\nexport async function writePackage(answers, configLocation) {\n // script\n const pkgPath = resolve(process.cwd(), 'package.json');\n const pkgContent = readFileSync(pkgPath, {\n encoding: 'utf-8',\n });\n const pkg = JSON.parse(pkgContent);\n const { indent } = detectIndent(pkgContent);\n if (!pkg.scripts) {\n pkg.scripts = {};\n }\n pkg.scripts[answers.script] = `graphql-codegen --config ${configLocation}`;\n // plugin\n if (!pkg.devDependencies) {\n pkg.devDependencies = {};\n }\n await Promise.all(answers.plugins.map(async (plugin) => {\n pkg.devDependencies[plugin.package] = await getLatestVersion(plugin.package);\n }));\n if (answers.introspection) {\n pkg.devDependencies['@graphql-codegen/introspection'] = await getLatestVersion('@graphql-codegen/introspection');\n }\n pkg.devDependencies['@graphql-codegen/cli'] = await getLatestVersion('@graphql-codegen/cli');\n writeFileSync(pkgPath, JSON.stringify(pkg, null, indent));\n}\nexport function bold(str) {\n return chalk.bold(str);\n}\nexport function grey(str) {\n return chalk.grey(str);\n}\nexport function italic(str) {\n return chalk.italic(str);\n}\n//# sourceMappingURL=helpers.js.map","export var Tags;\n(function (Tags) {\n Tags[\"browser\"] = \"Browser\";\n Tags[\"node\"] = \"Node\";\n Tags[\"typescript\"] = \"TypeScript\";\n Tags[\"flow\"] = \"Flow\";\n Tags[\"angular\"] = \"Angular\";\n Tags[\"stencil\"] = \"Stencil\";\n Tags[\"react\"] = \"React\";\n Tags[\"vue\"] = \"Vue\";\n})(Tags || (Tags = {}));\n//# sourceMappingURL=types.js.map","import { italic } from './helpers';\nimport { Tags } from './types';\nexport const plugins = [\n {\n name: `TypeScript ${italic('(required by other typescript plugins)')}`,\n package: '@graphql-codegen/typescript',\n value: 'typescript',\n pathInRepo: 'typescript/typescript',\n available: hasTag(Tags.typescript),\n shouldBeSelected: tags => oneOf(tags, Tags.angular, Tags.stencil) || allOf(tags, Tags.typescript, Tags.react) || noneOf(tags, Tags.flow),\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Operations ${italic('(operations and fragments)')}`,\n package: '@graphql-codegen/typescript-operations',\n value: 'typescript-operations',\n pathInRepo: 'typescript/operations',\n available: tags => allOf(tags, Tags.browser, Tags.typescript),\n shouldBeSelected: tags => oneOf(tags, Tags.angular, Tags.stencil) || allOf(tags, Tags.typescript, Tags.react),\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Resolvers ${italic('(strongly typed resolve functions)')}`,\n package: '@graphql-codegen/typescript-resolvers',\n value: 'typescript-resolvers',\n pathInRepo: 'typescript/resolvers',\n available: tags => allOf(tags, Tags.node, Tags.typescript),\n shouldBeSelected: tags => noneOf(tags, Tags.flow),\n defaultExtension: '.ts',\n },\n {\n name: `Flow ${italic('(required by other flow plugins)')}`,\n package: '@graphql-codegen/flow',\n value: 'flow',\n pathInRepo: 'flow/flow',\n available: hasTag(Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `Flow Operations ${italic('(operations and fragments)')}`,\n package: '@graphql-codegen/flow-operations',\n value: 'flow-operations',\n pathInRepo: 'flow/operations',\n available: tags => allOf(tags, Tags.browser, Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `Flow Resolvers ${italic('(strongly typed resolve functions)')}`,\n package: '@graphql-codegen/flow-resolvers',\n value: 'flow-resolvers',\n pathInRepo: 'flow/resolvers',\n available: tags => allOf(tags, Tags.node, Tags.flow),\n shouldBeSelected: tags => noneOf(tags, Tags.typescript),\n defaultExtension: '.js',\n },\n {\n name: `TypeScript Apollo Angular ${italic('(typed GQL services)')}`,\n package: '@graphql-codegen/typescript-apollo-angular',\n value: 'typescript-apollo-angular',\n pathInRepo: 'typescript/apollo-angular',\n available: hasTag(Tags.angular),\n shouldBeSelected: () => true,\n defaultExtension: '.js',\n },\n {\n name: `TypeScript Vue Apollo Composition API ${italic('(typed functions)')}`,\n package: '@graphql-codegen/typescript-vue-apollo',\n value: 'typescript-vue-apollo',\n pathInRepo: 'typescript/vue-apollo',\n available: tags => allOf(tags, Tags.vue, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript Vue Apollo Smart Operations ${italic('(typed functions)')}`,\n package: '@graphql-codegen/typescript-vue-apollo-smart-ops',\n value: 'typescript-vue-apollo-smart-ops',\n pathInRepo: 'typescript/vue-apollo-smart-ops',\n available: tags => allOf(tags, Tags.vue, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript React Apollo ${italic('(typed components and HOCs)')}`,\n package: '@graphql-codegen/typescript-react-apollo',\n value: 'typescript-react-apollo',\n pathInRepo: 'typescript/react-apollo',\n available: tags => allOf(tags, Tags.react, Tags.typescript),\n shouldBeSelected: () => true,\n defaultExtension: '.tsx',\n },\n {\n name: `TypeScript Stencil Apollo ${italic('(typed components)')}`,\n package: '@graphql-codegen/typescript-stencil-apollo',\n value: 'typescript-stencil-apollo',\n pathInRepo: 'typescript/stencil-apollo',\n available: hasTag(Tags.stencil),\n shouldBeSelected: () => true,\n defaultExtension: '.tsx',\n },\n {\n name: `TypeScript MongoDB ${italic('(typed MongoDB objects)')}`,\n package: '@graphql-codegen/typescript-mongodb',\n value: 'typescript-mongodb',\n pathInRepo: 'typescript/mongodb',\n available: tags => allOf(tags, Tags.node, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript GraphQL files modules ${italic('(declarations for .graphql files)')}`,\n package: '@graphql-codegen/typescript-graphql-files-modules',\n value: 'typescript-graphql-files-modules',\n pathInRepo: 'typescript/graphql-files-modules',\n available: tags => allOf(tags, Tags.browser, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `TypeScript GraphQL document nodes ${italic('(embedded GraphQL document)')}`,\n package: '@graphql-codegen/typescript-document-nodes',\n value: 'typescript-document-nodes',\n pathInRepo: 'typescript/document-nodes',\n available: tags => allOf(tags, Tags.typescript),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `Introspection Fragment Matcher ${italic('(for Apollo Client)')}`,\n package: '@graphql-codegen/fragment-matcher',\n value: 'fragment-matcher',\n pathInRepo: 'other/fragment-matcher',\n available: hasTag(Tags.browser),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n {\n name: `Urql Introspection ${italic('(for Urql Client)')}`,\n package: '@graphql-codegen/urql-introspection',\n value: 'urql-introspection',\n pathInRepo: 'other/urql-introspection',\n available: hasTag(Tags.browser),\n shouldBeSelected: () => false,\n defaultExtension: '.ts',\n },\n];\nfunction hasTag(tag) {\n return (tags) => tags.includes(tag);\n}\nfunction oneOf(list, ...items) {\n return list.some(i => items.includes(i));\n}\nfunction noneOf(list, ...items) {\n return !list.some(i => items.includes(i));\n}\nfunction allOf(list, ...items) {\n return items.every(i => list.includes(i));\n}\n//# sourceMappingURL=plugins.js.map","import { grey } from './helpers';\nimport { Tags } from './types';\nimport { plugins } from './plugins';\nexport function getQuestions(possibleTargets) {\n return [\n {\n type: 'checkbox',\n name: 'targets',\n message: `What type of application are you building?`,\n choices: getApplicationTypeChoices(possibleTargets),\n validate: ((targets) => targets.length > 0),\n },\n {\n type: 'input',\n name: 'schema',\n message: 'Where is your schema?:',\n suffix: grey(' (path or url)'),\n default: 'http://localhost:4000',\n validate: (str) => str.length > 0,\n },\n {\n type: 'input',\n name: 'documents',\n message: 'Where are your operations and fragments?:',\n when: answers => {\n // flatten targets\n // I can't find an API in Inquirer that would do that\n answers.targets = normalizeTargets(answers.targets);\n return answers.targets.includes(Tags.browser);\n },\n default: 'src/**/*.graphql',\n validate: (str) => str.length > 0,\n },\n {\n type: 'checkbox',\n name: 'plugins',\n message: 'Pick plugins:',\n choices: getPluginChoices,\n validate: ((plugins) => plugins.length > 0),\n },\n {\n type: 'input',\n name: 'output',\n message: 'Where to write the output:',\n default: getOutputDefaultValue,\n validate: (str) => str.length > 0,\n },\n {\n type: 'confirm',\n name: 'introspection',\n message: 'Do you want to generate an introspection file?',\n },\n {\n type: 'input',\n name: 'config',\n message: 'How to name the config file?',\n default: 'codegen.yml',\n validate: (str) => {\n const isNotEmpty = str.length > 0;\n const hasCorrectExtension = ['json', 'yml', 'yaml'].some(ext => str.toLocaleLowerCase().endsWith(`.${ext}`));\n return isNotEmpty && hasCorrectExtension;\n },\n },\n {\n type: 'input',\n name: 'script',\n message: 'What script in package.json should run the codegen?',\n validate: (str) => str.length > 0,\n },\n ];\n}\nexport function getApplicationTypeChoices(possibleTargets) {\n function withFlowOrTypescript(tags) {\n if (possibleTargets.TypeScript) {\n tags.push(Tags.typescript);\n }\n else if (possibleTargets.Flow) {\n tags.push(Tags.flow);\n }\n else {\n tags.push(Tags.flow, Tags.typescript);\n }\n return tags;\n }\n return [\n {\n name: 'Backend - API or server',\n key: 'backend',\n value: withFlowOrTypescript([Tags.node]),\n checked: possibleTargets.Node,\n },\n {\n name: 'Application built with Angular',\n key: 'angular',\n value: [Tags.angular, Tags.browser, Tags.typescript],\n checked: possibleTargets.Angular,\n },\n {\n name: 'Application built with React',\n key: 'react',\n value: withFlowOrTypescript([Tags.react, Tags.browser]),\n checked: possibleTargets.React,\n },\n {\n name: 'Application built with Stencil',\n key: 'stencil',\n value: [Tags.stencil, Tags.browser, Tags.typescript],\n checked: possibleTargets.Stencil,\n },\n {\n name: 'Application built with other framework or vanilla JS',\n key: 'client',\n value: [Tags.browser, Tags.typescript, Tags.flow],\n checked: possibleTargets.Browser && !possibleTargets.Angular && !possibleTargets.React && !possibleTargets.Stencil,\n },\n ];\n}\nexport function getPluginChoices(answers) {\n return plugins\n .filter(p => p.available(answers.targets))\n .map(p => {\n return {\n name: p.name,\n value: p,\n checked: p.shouldBeSelected(answers.targets),\n };\n });\n}\nfunction normalizeTargets(targets) {\n return [].concat(...targets);\n}\nexport function getOutputDefaultValue(answers) {\n if (answers.plugins.some(plugin => plugin.defaultExtension === '.tsx')) {\n return 'src/generated/graphql.tsx';\n }\n else if (answers.plugins.some(plugin => plugin.defaultExtension === '.ts')) {\n return 'src/generated/graphql.ts';\n }\n else {\n return 'src/generated/graphql.js';\n }\n}\n//# sourceMappingURL=questions.js.map","import { resolve } from 'path';\nimport { readFileSync } from 'fs';\nimport { Tags } from './types';\nexport async function guessTargets() {\n const pkg = JSON.parse(readFileSync(resolve(process.cwd(), 'package.json'), {\n encoding: 'utf-8',\n }));\n const dependencies = Object.keys({\n ...pkg.dependencies,\n ...pkg.devDependencies,\n });\n return {\n [Tags.angular]: isAngular(dependencies),\n [Tags.react]: isReact(dependencies),\n [Tags.stencil]: isStencil(dependencies),\n [Tags.vue]: isVue(dependencies),\n [Tags.browser]: false,\n [Tags.node]: false,\n [Tags.typescript]: isTypescript(dependencies),\n [Tags.flow]: isFlow(dependencies),\n };\n}\nfunction isAngular(dependencies) {\n return dependencies.includes('@angular/core');\n}\nfunction isReact(dependencies) {\n return dependencies.includes('react');\n}\nfunction isStencil(dependencies) {\n return dependencies.includes('@stencil/core');\n}\nfunction isVue(dependencies) {\n return dependencies.includes('vue') || dependencies.includes('nuxt');\n}\nfunction isTypescript(dependencies) {\n return dependencies.includes('typescript');\n}\nfunction isFlow(dependencies) {\n return dependencies.includes('flow');\n}\n//# sourceMappingURL=targets.js.map","import inquirer from 'inquirer';\nimport { getQuestions } from './questions';\nimport { guessTargets } from './targets';\nimport { Tags } from './types';\nimport { writeConfig, writePackage, bold } from './helpers';\nfunction log(...msgs) {\n // eslint-disable-next-line no-console\n console.log(...msgs);\n}\nexport async function init() {\n log(`\n Welcome to ${bold('GraphQL Code Generator')}!\n Answer few questions and we will setup everything for you.\n `);\n const possibleTargets = await guessTargets();\n const answers = await inquirer.prompt(getQuestions(possibleTargets));\n // define config\n const config = {\n overwrite: true,\n schema: answers.schema,\n documents: answers.targets.includes(Tags.browser) ? answers.documents : null,\n generates: {\n [answers.output]: {\n plugins: answers.plugins.map(p => p.value),\n },\n },\n };\n // introspection\n if (answers.introspection) {\n addIntrospection(config);\n }\n // config file\n const { relativePath } = await writeConfig(answers, config);\n log(`Fetching latest versions of selected plugins...`);\n // write package.json\n await writePackage(answers, relativePath);\n // Emit status to the terminal\n log(`\n Config file generated at ${bold(relativePath)}\n \n ${bold('$ npm install')}\n\n To install the plugins.\n\n ${bold(`$ npm run ${answers.script}`)}\n\n To run GraphQL Code Generator.\n `);\n}\n// adds an introspection to `generates`\nfunction addIntrospection(config) {\n config.generates['./graphql.schema.json'] = {\n plugins: ['introspection'],\n };\n}\n//# sourceMappingURL=index.js.map","const isBrowser = typeof window !== 'undefined' && typeof window.document !== 'undefined';\nconst isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;\nexport { isBrowser, isNode };\n//# sourceMappingURL=is-browser.js.map","import { isBrowser, isNode } from './is-browser';\nexport function cliError(err, exitOnError = true) {\n let msg;\n if (err instanceof Error) {\n msg = err.message || err.toString();\n }\n else if (typeof err === 'string') {\n msg = err;\n }\n else {\n msg = JSON.stringify(err);\n }\n // eslint-disable-next-line no-console\n console.error(msg);\n if (exitOnError && isNode) {\n process.exit(1);\n }\n else if (exitOnError && isBrowser) {\n throw err;\n }\n}\n//# sourceMappingURL=cli-error.js.map","import { generate } from './generate-and-save';\nimport { init } from './init';\nimport { createContext } from './config';\nimport { lifecycleHooks } from './hooks';\nimport { DetailedError } from '@graphql-codegen/plugin-helpers';\nexport function runCli(cmd) {\n ensureGraphQlPackage();\n switch (cmd) {\n case 'init':\n return init();\n default: {\n return createContext().then(context => {\n return generate(context).catch(async (error) => {\n await lifecycleHooks(context.getConfig().hooks).onError(error.toString());\n throw error;\n });\n });\n }\n }\n}\nexport function ensureGraphQlPackage() {\n try {\n require('graphql');\n }\n catch (e) {\n throw new DetailedError(`Unable to load \"graphql\" package. Please make sure to install \"graphql\" as a dependency!`, `\n To install \"graphql\", run:\n yarn add graphql\n Or, with NPM:\n npm install --save graphql\n`);\n }\n}\n//# sourceMappingURL=cli.js.map"],"names":["dummyLogger","isDetailedError","stripIndent","logSymbol","resolve","DetailedError","CodeFileLoader","GitLoader","GithubLoader","ApolloEngineLoader","PrismaLoader","loadConfig","GraphQLFileLoader","JsonFileLoader","UrlLoader","loadSchemaToolkit","extname","join","loadDocumentsToolkit","env","defaultLoaders","cosmiconfig","fs","path","createRequire","createRequireFromPath","GraphQLError","normalizeInstanceOrArray","normalizeOutputParam","parse","printSchemaWithDirectives","normalizeConfig","codegen","exec","delimiter","sep","isValidPath","writeFileSync","readFileSync","statSync","unlink","createHash","dirname","mkdirpSync","isAbsolute","relative","log"],"mappings":"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"}
|