UNPKG

reactors-cli

Version:
219 lines (167 loc) 7.17 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = addKeysToGradleBuild; var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _read = require('./read'); var _read2 = _interopRequireDefault(_read); var _write = require('./write'); var _write2 = _interopRequireDefault(_write); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } function addKeysToGradleBuild(name) { var _this = this; return new Promise(function () { var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee(resolve, reject) { var source, lines, newLines, defaultConfig, buildTypes, release, putSigningConfigs, count, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, line; return regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.prev = 0; _context.next = 3; return (0, _read2.default)(_path2.default.join(process.cwd(), 'android/app/build.gradle')); case 3: source = _context.sent; if (!/RELEASE_STORE_FILE/.test(source)) { _context.next = 8; break; } console.log('Keys already added to Gradle Build for release'); resolve(); return _context.abrupt('return'); case 8: lines = source.split(/\n/); newLines = []; defaultConfig = false; buildTypes = false; release = false; putSigningConfigs = false; count = 0; _iteratorNormalCompletion = true; _didIteratorError = false; _iteratorError = undefined; _context.prev = 18; _iterator = lines[Symbol.iterator](); case 20: if (_iteratorNormalCompletion = (_step = _iterator.next()).done) { _context.next = 58; break; } line = _step.value; _context.t0 = true; _context.next = _context.t0 === putSigningConfigs ? 25 : _context.t0 === defaultConfig ? 28 : _context.t0 === /defaultConfig \{/.test(line) ? 36 : _context.t0 === buildTypes ? 38 : _context.t0 === /buildTypes \{$/.test(line.trim()) ? 52 : 54; break; case 25: newLines.push('\n signingConfigs {\n release {\n storeFile file(' + name.toUpperCase() + '_RELEASE_STORE_FILE)\n storePassword ' + name.toUpperCase() + '_RELEASE_STORE_PASSWORD\n keyAlias ' + name.toUpperCase() + '_RELEASE_KEY_ALIAS\n keyPassword ' + name.toUpperCase() + '_RELEASE_KEY_PASSWORD\n }\n }\n'); putSigningConfigs = false; return _context.abrupt('break', 54); case 28: _context.t1 = true; _context.next = _context.t1 === /\{$/.test(line.trim()) ? 31 : _context.t1 === /\}$/.test(line.trim()) ? 33 : 35; break; case 31: count++; return _context.abrupt('break', 35); case 33: if (count) { count--; } else { defaultConfig = false; count = 0; putSigningConfigs = true; } return _context.abrupt('break', 35); case 35: return _context.abrupt('break', 54); case 36: defaultConfig = true; return _context.abrupt('break', 54); case 38: _context.t2 = true; _context.next = _context.t2 === /release \{$/.test(line.trim()) ? 41 : _context.t2 === release ? 43 : 51; break; case 41: release = true; return _context.abrupt('break', 51); case 43: _context.t3 = true; _context.next = _context.t3 === /\{$/.test(line.trim()) ? 46 : _context.t3 === /\}$/.test(line.trim()) ? 48 : 50; break; case 46: count++; return _context.abrupt('break', 50); case 48: if (count) { count--; } else { release = false; buildTypes = false; count = 0; newLines.push(' signingConfig signingConfigs.release'); } return _context.abrupt('break', 50); case 50: return _context.abrupt('break', 51); case 51: return _context.abrupt('break', 54); case 52: buildTypes = true; return _context.abrupt('break', 54); case 54: newLines.push(line); case 55: _iteratorNormalCompletion = true; _context.next = 20; break; case 58: _context.next = 64; break; case 60: _context.prev = 60; _context.t4 = _context['catch'](18); _didIteratorError = true; _iteratorError = _context.t4; case 64: _context.prev = 64; _context.prev = 65; if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } case 67: _context.prev = 67; if (!_didIteratorError) { _context.next = 70; break; } throw _iteratorError; case 70: return _context.finish(67); case 71: return _context.finish(64); case 72: _context.next = 74; return (0, _write2.default)(_path2.default.join(process.cwd(), 'android/app/build.gradle'), newLines.join('\n')); case 74: console.log('Keys added to gradle build'); resolve(); _context.next = 81; break; case 78: _context.prev = 78; _context.t5 = _context['catch'](0); reject(_context.t5); case 81: case 'end': return _context.stop(); } } }, _callee, _this, [[0, 78], [18, 60, 64, 72], [65,, 67, 71]]); })); return function (_x, _x2) { return _ref.apply(this, arguments); }; }()); }