Skip to content

Commit

Permalink
utils: validateDirectiveConfig initial draft
Browse files Browse the repository at this point in the history
  • Loading branch information
the-vampiire committed Jul 29, 2019
1 parent dbe5c57 commit 67a94e5
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
7 changes: 7 additions & 0 deletions src/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const createDirective = require("./create-directive");
const createSchemaDirective = require("./create-schema-directives");

module.exports = {
createDirective,
createSchemaDirective,
};
25 changes: 25 additions & 0 deletions src/utils.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const validateDirectiveConfig = (directiveConfig) => {
const { name, resolverReplacer } = directiveConfig;

let message;
if (!name || !resolverReplacer) {
message = "directiveConfig.name is required";
} else if (!resolverReplacer) {
message = "directiveConfig.resolverReplacer is required";
} else if (typeof name !== "string") {
message = "directiveConfig.name must be a string";
} else if (typeof resolverReplacer !== "function") {
message = "directiveConfig.resolverReplacer must be a function";
} else {
return directiveConfig;
}

const error = new Error(message);
error.name = "CreateDirectiveError";

throw error;
};

module.exports = {
validateDirectiveConfig,
};

0 comments on commit 67a94e5

Please sign in to comment.