node_modules.apollo-codegen.src.scala.values.js Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of apollo-client-maven-plugin Show documentation
Show all versions of apollo-client-maven-plugin Show documentation
Maven plugin for generating graphql clients
import {
join,
wrap,
} from '../utilities/printing';
export function escapedString(string) {
return string.replace(/"/g, '\\"');
}
export function multilineString(context, string) {
const lines = string.split('\n');
lines.forEach((line, index) => {
const isLastLine = index != lines.length - 1;
context.printOnNewline(`"${escapedString(line)}"` + (isLastLine ? ' +' : ''));
});
}
export function dictionaryLiteralForFieldArguments(args) {
function expressionFromValue(value) {
if (value.kind === 'Variable') {
return `Variable("${value.variableName}")`;
} else if (Array.isArray(value)) {
return wrap('[', join(value.map(expressionFromValue), ', '), ']');
} else if (typeof value === 'object') {
return wrap('[', join(Object.entries(value).map(([key, value]) => {
return `"${key}": ${expressionFromValue(value)}`;
}), ', ') || ':', ']');
} else {
return JSON.stringify(value);
}
}
return wrap('[', join(args.map(arg => {
return `"${arg.name}": ${expressionFromValue(arg.value)}`;
}), ', ') || ':', ']');
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy