UNPKG

simpl-to-graphql-schema

Version:
50 lines (44 loc) 1.21 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var getFieldsKey = exports.getFieldsKey = function getFieldsKey(_ref, noObjects) { var schema = _ref.schema, fields = _ref.fields, _ref$except = _ref.except, except = _ref$except === undefined ? [] : _ref$except; var SchemaValue = schema._schema; if (fields && !fields.length) { fields = null; } if (except && !except.length) { except = null; } // Get firstLevelKeys var keys = schema._firstLevelSchemaKeys.filter(function (k) { if (noObjects && SchemaValue[k].type === Object) { return false; } if (fields) { return fields.indexOf(k) > -1; } if (except) { return except.indexOf(k) === -1; } return true; }); // Get the Objects' keys var objectKeys = Object.keys(schema._objectKeys).map(function (k) { var ind = k.lastIndexOf('.$'); return k.substring(0, ind > -1 ? ind : k.lastIndexOf('.')); }).filter(function (k) { if (fields) { return fields.indexOf(k) > -1; } if (except) { return except.indexOf(k) === -1; } return true; }); return { keys: keys, objectKeys: objectKeys }; };