Socket
Socket
Sign inDemoInstall

graphql-js-tree

Package Overview
Dependencies
Maintainers
1
Versions
48
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

graphql-js-tree - npm Package Compare versions

Comparing version 0.1.2 to 0.1.3

3

lib/shared/getTypeName.d.ts
import { FieldType } from "../Models";
export declare const getTypeName: (f: FieldType) => string;
export declare const compileType: (f: FieldType, fn?: (x: string) => string) => string;
export declare const compileType: (f: FieldType, fn?: (x: string) => string, required?: boolean) => string;
export declare const decompileType: (typeName: string) => FieldType;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.compileType = exports.getTypeName = void 0;
exports.decompileType = exports.compileType = exports.getTypeName = void 0;
const Models_1 = require("../Models");

@@ -12,13 +12,32 @@ const getTypeName = (f) => {

exports.getTypeName = getTypeName;
const compileType = (f, fn = (x) => x) => {
if (f.type === Models_1.Options.name) {
return fn(f.name);
const compileType = (f, fn = (x) => x, required = false) => {
if (f.type === Models_1.Options.array) {
return (0, exports.compileType)(f.nest, (x) => (required ? `[${fn(x)}]!` : `[${fn(x)}]`));
}
else if (f.type === Models_1.Options.array) {
return (0, exports.compileType)(f.nest, (x) => `[${fn(x)}]`);
if (f.type === Models_1.Options.required) {
return (0, exports.compileType)(f.nest, fn, true);
}
else {
return (0, exports.compileType)(f.nest, (x) => `${fn(x)}!`);
return fn(f.name);
};
exports.compileType = compileType;
const decompileType = (typeName) => {
const arrayType = typeName.endsWith(']');
const requiredType = typeName.endsWith('!');
if (arrayType) {
return {
type: Models_1.Options.array,
nest: (0, exports.decompileType)(typeName.substring(1, typeName.length - 1)),
};
}
if (requiredType) {
return {
type: Models_1.Options.required,
nest: (0, exports.decompileType)(typeName.substring(0, typeName.length - 1)),
};
}
return {
type: Models_1.Options.name,
name: typeName,
};
};
exports.compileType = compileType;
exports.decompileType = decompileType;

@@ -20,5 +20,2 @@ "use strict";

TemplateUtils.resolveFieldType = (f, fn = (x) => x, required = false) => {
if (f.type === Models_1.Options.name && f.name) {
return fn(required ? `${f.name}!` : f.name);
}
if (f.type === Models_1.Options.array) {

@@ -30,3 +27,3 @@ return TemplateUtils.resolveFieldType(f.nest, (x) => (required ? `[${fn(x)}]!` : `[${fn(x)}]`));

}
throw new Error('Invalid field type:' + JSON.stringify(f));
return fn(required ? `${f.name}!` : f.name);
};

@@ -33,0 +30,0 @@ TemplateUtils.resolveType = (f) => TemplateUtils.resolveFieldType(f.type.fieldType);

{
"name": "graphql-js-tree",
"version": "0.1.2",
"version": "0.1.3",
"private": false,

@@ -5,0 +5,0 @@ "license": "MIT",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc