UNPKG

4.2 kBJavaScriptView Raw
1import { makeErrorWithCode } from '@neo-one/utils-esnext-esm';
2export var Command;
3(function (Command) {
4 Command["addr"] = "addr";
5 Command["block"] = "block";
6 Command["consensus"] = "consensus";
7 Command["filteradd"] = "filteradd";
8 Command["filterclear"] = "filterclear";
9 Command["filterload"] = "filterload";
10 Command["getaddr"] = "getaddr";
11 Command["getblocks"] = "getblocks";
12 Command["getdata"] = "getdata";
13 Command["getheaders"] = "getheaders";
14 Command["headers"] = "headers";
15 Command["inv"] = "inv";
16 Command["mempool"] = "mempool";
17 Command["tx"] = "tx";
18 Command["verack"] = "verack";
19 Command["version"] = "version";
20 Command["alert"] = "alert";
21 Command["merkleblock"] = "merkleblock";
22 Command["notfound"] = "notfound";
23 Command["ping"] = "ping";
24 Command["pong"] = "pong";
25 Command["reject"] = "reject";
26})(Command || (Command = {}));
27export const InvalidCommandError = makeErrorWithCode('INVALID_COMMAND', (command) => `Invalid Command. Found: ${command}`);
28const isCommand = (command) =>
29// tslint:disable-next-line strict-type-predicates no-any
30Command[command] !== undefined;
31export const assertCommand = (command) => {
32 if (isCommand(command)) {
33 return command;
34 }
35 throw new InvalidCommandError(command);
36};
37
38//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsTUFBTSxDQUFOLElBQVksT0F1Qlg7QUF2QkQsV0FBWSxPQUFPO0lBQ2pCLHdCQUFhLENBQUE7SUFDYiwwQkFBZSxDQUFBO0lBQ2Ysa0NBQXVCLENBQUE7SUFDdkIsa0NBQXVCLENBQUE7SUFDdkIsc0NBQTJCLENBQUE7SUFDM0Isb0NBQXlCLENBQUE7SUFDekIsOEJBQW1CLENBQUE7SUFDbkIsa0NBQXVCLENBQUE7SUFDdkIsOEJBQW1CLENBQUE7SUFDbkIsb0NBQXlCLENBQUE7SUFDekIsOEJBQW1CLENBQUE7SUFDbkIsc0JBQVcsQ0FBQTtJQUNYLDhCQUFtQixDQUFBO0lBQ25CLG9CQUFTLENBQUE7SUFDVCw0QkFBaUIsQ0FBQTtJQUNqQiw4QkFBbUIsQ0FBQTtJQUNuQiwwQkFBZSxDQUFBO0lBQ2Ysc0NBQTJCLENBQUE7SUFDM0IsZ0NBQXFCLENBQUE7SUFDckIsd0JBQWEsQ0FBQTtJQUNiLHdCQUFhLENBQUE7SUFDYiw0QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBdkJXLE9BQU8sS0FBUCxPQUFPLFFBdUJsQjtBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLGlCQUFpQixDQUNsRCxpQkFBaUIsRUFDakIsQ0FBQyxPQUFlLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixPQUFPLEVBQUUsQ0FDMUQsQ0FBQztBQUVGLE1BQU0sU0FBUyxHQUFHLENBQUMsT0FBZSxFQUFzQixFQUFFO0FBQ3hELHlEQUF5RDtBQUN6RCxPQUFPLENBQUMsT0FBYyxDQUFDLEtBQUssU0FBUyxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLE9BQWUsRUFBVyxFQUFFO0lBQ3hELElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sT0FBTyxDQUFDO0tBQ2hCO0lBRUQsTUFBTSxJQUFJLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyIsImZpbGUiOiJuZW8tb25lLW5vZGUtcHJvdG9jb2wvc3JjL0NvbW1hbmQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYWtlRXJyb3JXaXRoQ29kZSB9IGZyb20gJ0BuZW8tb25lL3V0aWxzLWVzbmV4dC1lc20nO1xuXG5leHBvcnQgZW51bSBDb21tYW5kIHtcbiAgYWRkciA9ICdhZGRyJyxcbiAgYmxvY2sgPSAnYmxvY2snLFxuICBjb25zZW5zdXMgPSAnY29uc2Vuc3VzJyxcbiAgZmlsdGVyYWRkID0gJ2ZpbHRlcmFkZCcsXG4gIGZpbHRlcmNsZWFyID0gJ2ZpbHRlcmNsZWFyJyxcbiAgZmlsdGVybG9hZCA9ICdmaWx0ZXJsb2FkJyxcbiAgZ2V0YWRkciA9ICdnZXRhZGRyJyxcbiAgZ2V0YmxvY2tzID0gJ2dldGJsb2NrcycsXG4gIGdldGRhdGEgPSAnZ2V0ZGF0YScsXG4gIGdldGhlYWRlcnMgPSAnZ2V0aGVhZGVycycsXG4gIGhlYWRlcnMgPSAnaGVhZGVycycsXG4gIGludiA9ICdpbnYnLFxuICBtZW1wb29sID0gJ21lbXBvb2wnLFxuICB0eCA9ICd0eCcsXG4gIHZlcmFjayA9ICd2ZXJhY2snLFxuICB2ZXJzaW9uID0gJ3ZlcnNpb24nLFxuICBhbGVydCA9ICdhbGVydCcsXG4gIG1lcmtsZWJsb2NrID0gJ21lcmtsZWJsb2NrJyxcbiAgbm90Zm91bmQgPSAnbm90Zm91bmQnLFxuICBwaW5nID0gJ3BpbmcnLFxuICBwb25nID0gJ3BvbmcnLFxuICByZWplY3QgPSAncmVqZWN0Jyxcbn1cblxuZXhwb3J0IGNvbnN0IEludmFsaWRDb21tYW5kRXJyb3IgPSBtYWtlRXJyb3JXaXRoQ29kZShcbiAgJ0lOVkFMSURfQ09NTUFORCcsXG4gIChjb21tYW5kOiBzdHJpbmcpID0+IGBJbnZhbGlkIENvbW1hbmQuIEZvdW5kOiAke2NvbW1hbmR9YCxcbik7XG5cbmNvbnN0IGlzQ29tbWFuZCA9IChjb21tYW5kOiBzdHJpbmcpOiBjb21tYW5kIGlzIENvbW1hbmQgPT5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIHN0cmljdC10eXBlLXByZWRpY2F0ZXMgbm8tYW55XG4gIENvbW1hbmRbY29tbWFuZCBhcyBhbnldICE9PSB1bmRlZmluZWQ7XG5cbmV4cG9ydCBjb25zdCBhc3NlcnRDb21tYW5kID0gKGNvbW1hbmQ6IHN0cmluZyk6IENvbW1hbmQgPT4ge1xuICBpZiAoaXNDb21tYW5kKGNvbW1hbmQpKSB7XG4gICAgcmV0dXJuIGNvbW1hbmQ7XG4gIH1cblxuICB0aHJvdyBuZXcgSW52YWxpZENvbW1hbmRFcnJvcihjb21tYW5kKTtcbn07XG4iXX0=