UNPKG

zer

Version:

Generate Gremlin queries by chaining JavaScript function calls

39 lines (28 loc) 982 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = renderInline; var _lodash = require('lodash'); var _lodash2 = _interopRequireDefault(_lodash); var _chain = require('../chain'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function renderArgument(argument, syntax) { if (argument instanceof _chain.Chain) { return renderInline(argument, syntax); } if (_lodash2.default.isString(argument)) { return syntax.STRING(argument); } // Either Number or Object return syntax.DEFAULT(argument); } function renderMember(member, syntax) { if (member instanceof _chain.Arguments) { return syntax.ARGUMENTS(member.params.map(param => renderArgument(param, syntax)).join(syntax.ARGUMENT_SEPARATOR)); } return syntax[member.type](member); } function renderInline({ members }, syntax) { return members.map(member => renderMember(member, syntax)).join(''); }