UNPKG

@reactivehub/cli

Version:
89 lines (69 loc) 2.83 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator'); var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk); var _api = require('../services/api'); var api = _interopRequireWildcard(_api); var _messages = require('../messages'); var _messages2 = _interopRequireDefault(_messages); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const typeAlias = { GCP: 'GOOGLE_CLOUD_PLATFORM', POSTGRES: 'POSTGRESQL', HTTP: 'API' }; const getServiceAccounts = (() => { var _ref = (0, _asyncToGenerator3.default)(function* ({ type: typeParam }) { const type = typeAlias[typeParam] || typeParam; const services = yield api.getServiceAccounts(type); if (type) return services.filter(function (service) { return service.type === type; }); return services; }); return function getServiceAccounts(_x) { return _ref.apply(this, arguments); }; })(); const isServiceAccountOfType = (() => { var _ref2 = (0, _asyncToGenerator3.default)(function* ({ type: typeParam, id }) { const type = typeAlias[typeParam] || typeParam; const services = yield api.getServiceAccounts(type); return services.filter(function (service) { return service.id === id && service.type === type; }).length > 0; }); return function isServiceAccountOfType(_x2) { return _ref2.apply(this, arguments); }; })(); const checkSeviceAccounts = (serviceAccountsOfType, type) => { if (!serviceAccountsOfType || serviceAccountsOfType.length === 0) { _messages2.default.error(`Service accounts of type ${_chalk2.default.blue.bold(type)} does not exist!`); _messages2.default.info(`Go to https://console.reactivehub.io/service-accounts/new/${type} and create a new service account entry.`); return false; } return true; }; const getServiceAccountsOfType = (() => { var _ref3 = (0, _asyncToGenerator3.default)(function* (type) { const serviceAccountsOfType = yield getServiceAccounts({ type }); if (!checkSeviceAccounts(serviceAccountsOfType, type)) return false; return serviceAccountsOfType; }); return function getServiceAccountsOfType(_x3) { return _ref3.apply(this, arguments); }; })(); exports.default = { getServiceAccounts, isServiceAccountOfType, getServiceAccountsOfType, checkSeviceAccounts }; //# sourceMappingURL=index.js.map