apollo-language-server
Version:
A language server for Apollo GraphQL projects
34 lines • 1.3 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FileSet = void 0;
const glob_1 = __importDefault(require("glob"));
const apollo_tools_1 = require("@apollographql/apollo-tools");
const utilities_1 = require("./utilities");
class FileSet {
constructor({ rootURI, includes, excludes, configURI, }) {
(0, apollo_tools_1.invariant)(rootURI, `Must provide "rootURI".`);
(0, apollo_tools_1.invariant)(includes, `Must provide "includes".`);
(0, apollo_tools_1.invariant)(excludes, `Must provide "excludes".`);
this.rootURI = rootURI;
this.includes = includes;
this.excludes = excludes;
}
includesFile(filePath) {
return this.allFiles().includes((0, utilities_1.normalizeURI)(filePath));
}
allFiles() {
const joinedIncludes = `{${this.includes.join(",")}}`;
return glob_1.default
.sync(joinedIncludes, {
cwd: this.rootURI.fsPath,
absolute: true,
ignore: this.excludes,
})
.map(utilities_1.normalizeURI);
}
}
exports.FileSet = FileSet;
//# sourceMappingURL=fileSet.js.map
;