UNPKG

github-users-parser

Version:
54 lines (53 loc) 2.21 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetGitHubHandlesByEmail = void 0; const antlr4ts_1 = require("antlr4ts"); const DefaultVisitor_1 = require("./DefaultVisitor"); const GITHUBUSERSLexer_1 = require("./parsers/GITHUBUSERSLexer"); const GITHUBUSERSParser_1 = require("./parsers/GITHUBUSERSParser"); __exportStar(require("./parsers/GITHUBUSERSLexer"), exports); __exportStar(require("./parsers/GITHUBUSERSParser"), exports); __exportStar(require("./parsers/GITHUBUSERSParserListener"), exports); __exportStar(require("./parsers/GITHUBUSERSParserVisitor"), exports); __exportStar(require("./DefaultVisitor"), exports); const GetGitHubHandlesByEmail = (input, emailAddresses) => { const chars = antlr4ts_1.CharStreams.fromString(input); const lexer = new GITHUBUSERSLexer_1.GITHUBUSERSLexer(chars); const tokens = new antlr4ts_1.CommonTokenStream(lexer); const parser = new GITHUBUSERSParser_1.GITHUBUSERSParser(tokens); let tree = null; try { tree = parser.file(); } catch (error) { console.error(`Error parsing file: ${error}`); } if (!tree) { console.error(`No tree`); return []; } const visitor = new DefaultVisitor_1.DefaultVisitor(emailAddresses); try { visitor.visit(tree); } catch (error) { console.error(`Error visiting tree: ${error}`); } const owners = visitor.getOwners(); return owners; }; exports.GetGitHubHandlesByEmail = GetGitHubHandlesByEmail;