PHP WebShell

Текущая директория: /opt/BitGoJS/modules/web-demo/dist/src/components/Coins

Просмотр файла: coinFactory.js

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
class CoinFactory {
    constructor() {
        this.coinCache = new Map();
    }
    cacheAndRegister(name, sdk, register) {
        register(sdk);
        const coin = sdk.coin(name);
        this.coinCache.set(name, coin);
        return coin;
    }
    getCoin(name, sdk) {
        return __awaiter(this, void 0, void 0, function* () {
            const cachedCoin = this.coinCache.get(name);
            if (cachedCoin) {
                return cachedCoin;
            }
            switch (name) {
                case 'ada':
                case 'tada': {
                    const { register } = yield import('@bitgo/sdk-coin-ada');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'algo':
                case 'talgo': {
                    const { register } = yield import('@bitgo/sdk-coin-algo');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'avaxc':
                case 'tavaxc': {
                    const { register } = yield import('@bitgo/sdk-coin-avaxc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'avaxp':
                case 'tavaxp': {
                    const { register } = yield import('@bitgo/sdk-coin-avaxp');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'bch':
                case 'tbch': {
                    const { register } = yield import('@bitgo/sdk-coin-bch');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'bcha':
                case 'tbcha': {
                    const { register } = yield import('@bitgo/sdk-coin-bcha');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'bsc':
                case 'tbsc': {
                    const { register } = yield import('@bitgo/sdk-coin-bsc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'bsv':
                case 'tbsv': {
                    const { register } = yield import('@bitgo/sdk-coin-bsv');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'btc':
                case 'tbtc': {
                    const { register } = yield import('@bitgo/sdk-coin-btc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'btg': {
                    const { register } = yield import('@bitgo/sdk-coin-btg');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'celo':
                case 'tcelo': {
                    const { register } = yield import('@bitgo/sdk-coin-celo');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'cspr':
                case 'tcspr': {
                    const { register } = yield import('@bitgo/sdk-coin-cspr');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'dash':
                case 'tdash': {
                    const { register } = yield import('@bitgo/sdk-coin-dash');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'doge':
                case 'tdoge': {
                    const { register } = yield import('@bitgo/sdk-coin-doge');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'dot':
                case 'tdot': {
                    const { register } = yield import('@bitgo/sdk-coin-dot');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'eos':
                case 'teos': {
                    const { register } = yield import('@bitgo/sdk-coin-eos');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'etc':
                case 'tetc': {
                    const { register } = yield import('@bitgo/sdk-coin-etc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'eth':
                case 'teth':
                case 'gteth':
                case 'hteth': {
                    const { register } = yield import('@bitgo/sdk-coin-eth');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'ethw': {
                    const { register } = yield import('@bitgo/sdk-coin-ethw');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'hbar':
                case 'thbar': {
                    const { register } = yield import('@bitgo/sdk-coin-hbar');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'ltc':
                case 'tltc': {
                    const { register } = yield import('@bitgo/sdk-coin-ltc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'near':
                case 'tnear': {
                    const { register } = yield import('@bitgo/sdk-coin-near');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'polygon':
                case 'tpolygon': {
                    const { register } = yield import('@bitgo/sdk-coin-polygon');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'rbtc':
                case 'trbtc': {
                    const { register } = yield import('@bitgo/sdk-coin-rbtc');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'sol':
                case 'tsol': {
                    const { register } = yield import('@bitgo/sdk-coin-sol');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'stx':
                case 'tstx': {
                    const { register } = yield import('@bitgo/sdk-coin-stx');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'sui':
                case 'tsui': {
                    const { register } = yield import('@bitgo/sdk-coin-sui');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'trx':
                case 'ttrx': {
                    const { register } = yield import('@bitgo/sdk-coin-trx');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'txlm':
                case 'xlm': {
                    const { register } = yield import('@bitgo/sdk-coin-xlm');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'xrp':
                case 'txrp': {
                    const { register } = yield import('@bitgo/sdk-coin-xrp');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'xtz':
                case 'txtz': {
                    const { register } = yield import('@bitgo/sdk-coin-xtz');
                    return this.cacheAndRegister(name, sdk, register);
                }
                case 'zec':
                case 'tzec': {
                    const { register } = yield import('@bitgo/sdk-coin-zec');
                    return this.cacheAndRegister(name, sdk, register);
                }
            }
        });
    }
}
export default new CoinFactory();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbkZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Db2lucy9jb2luRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFHQSxNQUFNLFdBQVc7SUFHZjtRQUNFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8sZ0JBQWdCLENBQ3RCLElBQVksRUFDWixHQUFhLEVBQ2IsUUFBaUM7UUFFakMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUssT0FBTyxDQUFDLElBQVksRUFBRSxHQUFhOztZQUN2QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNmLE9BQU8sVUFBVSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxRQUFRLElBQUksRUFBRSxDQUFDO2dCQUNiLEtBQUssS0FBSyxDQUFDO2dCQUNYLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQztvQkFDWixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztvQkFDekQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDcEQsQ0FBQztnQkFDRCxLQUFLLE1BQU0sQ0FBQztnQkFDWixLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7b0JBQ2IsTUFBTSxFQUFFLFFBQVEsRUFBRSxH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QUNwRCxDQUFDO2dCQUNELEtBQUssS0FBSyxDQUFDO2dCQUNYLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQztvQkFDWixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztvQkFDekQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDcEQsQ0FBQztnQkFDRCxLQUFLLEtBQUssQ0FBQztnQkFDWCxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7b0JBQ1osTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7b0JBQ3pELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3BELENBQUM7Z0JBQ0QsS0FBSyxLQUFLLENBQUM7Z0JBQ1gsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUNaLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO29CQUN6RCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNwRCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7S0FBQTtDQUNGO0FBRUQsZUFBZSxJQUFJLFdBQVcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29BUEkgfSBmcm9tICdAYml0Z28vc2RrLWFwaSc7XG5pbXBvcnQgeyBCYXNlQ29pbiB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5cbmNsYXNzIENvaW5GYWN0b3J5IHtcbiAgcHJpdmF0ZSBjb2luQ2FjaGU6IE1hcDxzdHJpbmcsIEJhc2VDb2luPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmNvaW5DYWNoZSA9IG5ldyBNYXAoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FjaGVBbmRSZWdpc3RlcihcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgc2RrOiBCaXRHb0FQSSxcbiAgICByZWdpc3RlcjogKHNkazogQml0R29BUEkpID0+IHZvaWQsXG4gICkge1xuICAgIHJlZ2lzdGVyKHNkayk7XG4gICAgY29uc3QgY29pbiA9IHNkay5jb2luKG5hbWUpO1xuICAgIHRoaXMuY29pbkNhY2hlLnNldChuYW1lLCBjb2luKTtcbiAgICByZXR1cm4gY29pbjtcbiAgfVxuXG4gIGFzeW5jIGdldENvaW4obmFtZTogc3RyaW5nLCBzZGs6IEJpdEdvQVBJKTogUHJvbWlzZTxCYXNlQ29pbiB8IHVuZGVmaW5lZD4ge1xuICAgIGNvbnN0IGNhY2hlZENvaW4gPSB0aGlzLmNvaW5DYWNoZS5nZXQobmFtZSk7XG4gICAgaWYgKGNhY2hlZENvaW4pIHtcbiAgICAgIHJldHVybiBjYWNoZWRDb2luO1xuICAgIH1cbiAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgIGNhc2UgJ2FkYSc6XG4gICAgICBjYXNlICd0YWRhJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1hZGEnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2FsZ28nOlxuICAgICAgY2FzZSAndGFsZ28nOiB7XG4gICAgICAgIGNvbnN0IHsgcmVnaXN0ZXIgfSA9IGF3YWl0IGltcG9ydCgnQGJpdGdvL3Nkay1jb2luLWFsZ28nKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2F2YXhjJzpcbiAgICAgIGNhc2UgJ3RhdmF4Yyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tYXZheGMnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2F2YXhwJzpcbiAgICAgIGNhc2UgJ3RhdmF4cCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tYXZheHAnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2JjaCc6XG4gICAgICBjYXNlICd0YmNoJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1iY2gnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2JjaGEnOlxuICAgICAgY2FzZSAndGJjaGEnOiB7XG4gICAgICAgIGNvbnN0IHsgcmVnaXN0ZXIgfSA9IGF3YWl0IGltcG9ydCgnQGJpdGdvL3Nkay1jb2luLWJjaGEnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2JzYyc6XG4gICAgICBjYXNlICd0YnNjJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1ic2MnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2Jzdic6XG4gICAgICBjYXNlICd0YnN2Jzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1ic3YnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2J0Yyc6XG4gICAgICBjYXNlICd0YnRjJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1idGMnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGVBbmRSZWdpc3RlcihuYW1lLCBzZGssIHJlZ2lzdGVyKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2J0Zyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tYnRnJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdjZWxvJzpcbiAgICAgIGNhc2UgJ3RjZWxvJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1jZWxvJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdjc3ByJzpcbiAgICAgIGNhc2UgJ3Rjc3ByJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1jc3ByJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdkYXNoJzpcbiAgICAgIGNhc2UgJ3RkYXNoJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1kYXNoJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdkb2dlJzpcbiAgICAgIGNhc2UgJ3Rkb2dlJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1kb2dlJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdkb3QnOlxuICAgICAgY2FzZSAndGRvdCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tZG90Jyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdlb3MnOlxuICAgICAgY2FzZSAndGVvcyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tZW9zJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdldGMnOlxuICAgICAgY2FzZSAndGV0Yyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tZXRjJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdldGgnOlxuICAgICAgY2FzZSAndGV0aCc6XG4gICAgICBjYXNlICdndGV0aCc6XG4gICAgICBjYXNlICdodGV0aCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tZXRoJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdldGh3Jzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1ldGh3Jyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdoYmFyJzpcbiAgICAgIGNhc2UgJ3RoYmFyJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1oYmFyJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdsdGMnOlxuICAgICAgY2FzZSAndGx0Yyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tbHRjJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICduZWFyJzpcbiAgICAgIGNhc2UgJ3RuZWFyJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1uZWFyJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdwb2x5Z29uJzpcbiAgICAgIGNhc2UgJ3Rwb2x5Z29uJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1wb2x5Z29uJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdyYnRjJzpcbiAgICAgIGNhc2UgJ3RyYnRjJzoge1xuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyIH0gPSBhd2FpdCBpbXBvcnQoJ0BiaXRnby9zZGstY29pbi1yYnRjJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdzb2wnOlxuICAgICAgY2FzZSAndHNvbCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tc29sJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdzdHgnOlxuICAgICAgY2FzZSAndHN0eCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tc3R4Jyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICdzdWknOlxuICAgICAgY2FzZSAndHN1aSc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tc3VpJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICd0cngnOlxuICAgICAgY2FzZSAndHRyeCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4tdHJ4Jyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICd0eGxtJzpcbiAgICAgIGNhc2UgJ3hsbSc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4teGxtJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICd4cnAnOlxuICAgICAgY2FzZSAndHhycCc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4teHJwJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICd4dHonOlxuICAgICAgY2FzZSAndHh0eic6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4teHR6Jyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgICBjYXNlICd6ZWMnOlxuICAgICAgY2FzZSAndHplYyc6IHtcbiAgICAgICAgY29uc3QgeyByZWdpc3RlciB9ID0gYXdhaXQgaW1wb3J0KCdAYml0Z28vc2RrLWNvaW4temVjJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmNhY2hlQW5kUmVnaXN0ZXIobmFtZSwgc2RrLCByZWdpc3Rlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBDb2luRmFjdG9yeSgpO1xuIl19

Выполнить команду


Для локальной разработки. Не используйте в интернете!