"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
function _get() {
const data = _interopRequireDefault(require("lodash/get"));
_get = function () {
return data;
};
return data;
}
function _dateformat() {
const data = _interopRequireDefault(require("dateformat"));
_dateformat = function () {
return data;
};
return data;
}
function _chalk() {
const data = _interopRequireDefault(require("chalk"));
_chalk = function () {
return data;
};
return data;
}
function _fastlane() {
const data = require("./fastlane");
_fastlane = function () {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const APPLE_KEYS_TOO_MANY_GENERATED_ERROR = `
You can have only ${_chalk().default.underline('two')} Apple Keys generated on your Apple Developer account.
Please revoke the old ones or reuse existing from your other apps.
Please remember that Apple Keys are not application specific!
`;
const createManager = ({
appleId,
appleIdPassword,
team
}) => ({
async list() {
const args = ['list', appleId, appleIdPassword, team.id];
const {
keys
} = await (0, _fastlane().runAction)(_fastlane().travelingFastlane.managePushKeys, args);
return keys;
},
async create(metadata, name = `Expo Push Notifications Key ${(0, _dateformat().default)('yyyymmddHHMMss')}`) {
try {
const args = ['create', appleId, appleIdPassword, team.id, name];
return await (0, _fastlane().runAction)(_fastlane().travelingFastlane.managePushKeys, args);
} catch (err) {
const userString = (0, _get().default)(err, 'rawDump.userString');
if (userString && userString.match(/maximum allowed number of Keys/)) {
const error = new Error(APPLE_KEYS_TOO_MANY_GENERATED_ERROR);
error.code = 'APPLE_KEYS_TOO_MANY_GENERATED_ERROR';
throw error;
}
throw err;
}
},
async revoke(ids) {
const args = ['revoke', appleId, appleIdPassword, team.id, ids.join(',')];
await (0, _fastlane().runAction)(_fastlane().travelingFastlane.managePushKeys, args);
},
format({
id,
name
}) {
return `${name} - ID: ${id}`;
}
});
var _default = createManager;
exports.default = _default;
//# sourceMappingURL=../../../../__sourcemaps__/commands/build/ios/appleApi/pushKey.js.map