"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.createClientBuildRequest = createClientBuildRequest;
exports.getExperienceName = getExperienceName;
exports.isAllowedToBuild = isAllowedToBuild;

function _xdl() {
  const data = require("@expo/xdl");

  _xdl = function () {
    return data;
  };

  return data;
}

async function createClientBuildRequest({
  user = null,
  context,
  distributionCert,
  provisioningProfile,
  pushKey,
  udids,
  addUdid,
  email,
  customAppConfig = {}
}) {
  return await _xdl().ApiV2.clientForUser(user).postAsync('client-build/create-ios-request', {
    appleTeamId: context.team.id,
    appleTeamName: context.team.name,
    addUdid,
    bundleIdentifier: context.bundleIdentifier,
    email,
    customAppConfig,
    credentials: { ...(pushKey && pushKey.apnsKeyP8 ? {
        apnsKeyP8: pushKey.apnsKeyP8
      } : null),
      ...(pushKey && pushKey.apnsKeyId ? {
        apnsKeyId: pushKey.apnsKeyId
      } : null),
      certP12: distributionCert.certP12,
      certPassword: distributionCert.certPassword,
      provisioningProfileId: provisioningProfile.provisioningProfileId,
      provisioningProfile: provisioningProfile.provisioningProfile,
      teamId: context.team.id,
      appleSession: context.fastlaneSession,
      udidsString: JSON.stringify(udids)
    }
  });
}

async function getExperienceName({
  user = null,
  appleTeamId
}) {
  const {
    experienceName
  } = await _xdl().ApiV2.clientForUser(user).postAsync('client-build/experience-name', {
    appleTeamId
  });
  return experienceName;
}

async function isAllowedToBuild({
  user = null,
  appleTeamId
}) {
  return await _xdl().ApiV2.clientForUser(user).postAsync('client-build/allowed-to-build', {
    appleTeamId
  });
}
//# sourceMappingURL=../../__sourcemaps__/commands/client/clientBuildApi.js.map