eas-cli 0.51.0 → 0.53.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/README.md +44 -44
  2. package/build/analytics/events.d.ts +5 -1
  3. package/build/analytics/events.js +6 -1
  4. package/build/build/android/version.js +1 -1
  5. package/build/build/build.js +38 -27
  6. package/build/build/ios/build.js +3 -1
  7. package/build/build/ios/credentials.js +2 -6
  8. package/build/build/local.js +1 -1
  9. package/build/commands/branch/create.js +2 -2
  10. package/build/commands/branch/delete.js +2 -2
  11. package/build/commands/branch/list.js +2 -2
  12. package/build/commands/branch/rename.js +2 -2
  13. package/build/commands/branch/view.js +2 -2
  14. package/build/commands/build/cancel.js +3 -3
  15. package/build/commands/build/configure.js +2 -2
  16. package/build/commands/build/inspect.js +1 -1
  17. package/build/commands/build/list.js +2 -2
  18. package/build/commands/build/view.js +2 -2
  19. package/build/commands/channel/create.js +2 -2
  20. package/build/commands/channel/delete.js +2 -2
  21. package/build/commands/channel/edit.js +2 -2
  22. package/build/commands/channel/list.js +2 -2
  23. package/build/commands/channel/rollout.js +2 -2
  24. package/build/commands/channel/view.js +3 -3
  25. package/build/commands/device/delete.js +2 -2
  26. package/build/commands/device/list.js +2 -2
  27. package/build/commands/device/view.js +2 -2
  28. package/build/commands/project/info.js +2 -2
  29. package/build/commands/project/init.js +2 -2
  30. package/build/commands/secret/create.js +2 -2
  31. package/build/commands/secret/delete.js +2 -2
  32. package/build/commands/secret/list.js +2 -2
  33. package/build/commands/submit.js +2 -2
  34. package/build/commands/update/configure.js +2 -3
  35. package/build/commands/update/index.js +3 -5
  36. package/build/commands/update/list.js +2 -2
  37. package/build/commands/webhook/create.js +2 -2
  38. package/build/commands/webhook/delete.js +2 -2
  39. package/build/commands/webhook/list.js +2 -2
  40. package/build/credentials/android/utils/googleServiceAccountKey.js +1 -1
  41. package/build/credentials/android/utils/keystore.js +1 -1
  42. package/build/credentials/android/utils/keystoreNew.js +2 -2
  43. package/build/credentials/context.js +2 -3
  44. package/build/credentials/credentialsJson/read.js +1 -1
  45. package/build/credentials/ios/IosCredentialsProvider.d.ts +0 -2
  46. package/build/credentials/ios/IosCredentialsProvider.js +0 -1
  47. package/build/credentials/ios/actions/SetUpBuildCredentials.d.ts +0 -2
  48. package/build/credentials/ios/actions/SetUpBuildCredentials.js +3 -1
  49. package/build/credentials/ios/actions/SetUpTargetBuildCredentials.d.ts +2 -2
  50. package/build/credentials/ios/actions/SetUpTargetBuildCredentials.js +2 -2
  51. package/build/credentials/ios/types.d.ts +2 -0
  52. package/build/credentials/ios/utils/printCredentials.d.ts +1 -1
  53. package/build/credentials/ios/utils/provisioningProfile.js +1 -1
  54. package/build/credentials/ios/validators/validateProvisioningProfile.js +1 -1
  55. package/build/credentials/manager/ManageIos.js +8 -7
  56. package/build/graphql/generated.d.ts +66 -21
  57. package/build/graphql/generated.js +5 -0
  58. package/build/graphql/queries/UpdateQuery.js +1 -1
  59. package/build/metadata/apple/config/reader.d.ts +25 -0
  60. package/build/metadata/apple/config/reader.js +94 -0
  61. package/build/metadata/apple/config/writer.d.ts +23 -0
  62. package/build/metadata/apple/config/writer.js +85 -0
  63. package/build/metadata/apple/data.d.ts +20 -0
  64. package/build/metadata/apple/data.js +2 -0
  65. package/build/metadata/apple/task.d.ts +24 -0
  66. package/build/metadata/apple/task.js +6 -0
  67. package/build/metadata/apple/tasks/age-rating.d.ts +13 -0
  68. package/build/metadata/apple/tasks/age-rating.js +39 -0
  69. package/build/metadata/apple/tasks/app-info.d.ts +15 -0
  70. package/build/metadata/apple/tasks/app-info.js +71 -0
  71. package/build/metadata/apple/tasks/app-version.d.ts +27 -0
  72. package/build/metadata/apple/tasks/app-version.js +100 -0
  73. package/build/metadata/apple/tasks/index.d.ts +6 -0
  74. package/build/metadata/apple/tasks/index.js +13 -0
  75. package/build/metadata/apple/types.d.ts +50 -0
  76. package/build/metadata/apple/types.js +2 -0
  77. package/build/metadata/config.d.ts +22 -0
  78. package/build/metadata/config.js +32 -0
  79. package/build/metadata/context.d.ts +46 -0
  80. package/build/metadata/context.js +55 -0
  81. package/build/metadata/download.d.ts +6 -0
  82. package/build/metadata/download.js +58 -0
  83. package/build/metadata/errors.d.ts +37 -0
  84. package/build/metadata/errors.js +67 -0
  85. package/build/metadata/upload.d.ts +6 -0
  86. package/build/metadata/upload.js +54 -0
  87. package/build/metadata/utils/array.d.ts +1 -0
  88. package/build/metadata/utils/array.js +8 -0
  89. package/build/metadata/utils/asc.d.ts +4 -0
  90. package/build/metadata/utils/asc.js +2 -0
  91. package/build/metadata/utils/date.d.ts +12 -0
  92. package/build/metadata/utils/date.js +30 -0
  93. package/build/metadata/utils/log.d.ts +16 -0
  94. package/build/metadata/utils/log.js +23 -0
  95. package/build/metadata/utils/retry.d.ts +8 -0
  96. package/build/metadata/utils/retry.js +22 -0
  97. package/build/metadata/utils/telemetry.d.ts +20 -0
  98. package/build/metadata/utils/telemetry.js +87 -0
  99. package/build/project/android/applicationId.js +1 -1
  100. package/build/project/ios/bundleIdentifier.js +1 -1
  101. package/build/project/ios/entitlements.d.ts +8 -0
  102. package/build/{credentials/ios/appstore → project/ios}/entitlements.js +7 -19
  103. package/build/project/ios/target.d.ts +9 -3
  104. package/build/project/ios/target.js +68 -47
  105. package/build/submit/ArchiveSource.js +1 -1
  106. package/build/submit/submit.js +1 -1
  107. package/build/submit/utils/errors.js +2 -0
  108. package/build/submit/utils/files.js +1 -1
  109. package/build/submit/utils/logs.js +1 -1
  110. package/build/update/android/UpdatesModule.js +2 -2
  111. package/build/update/ios/UpdatesModule.js +2 -2
  112. package/build/user/actions.js +1 -1
  113. package/build/vcs/clients/git.js +5 -5
  114. package/build/vcs/git.js +1 -1
  115. package/build/webhooks/input.js +1 -1
  116. package/oclif.manifest.json +1 -1
  117. package/package.json +39 -38
  118. package/build/credentials/ios/appstore/entitlements.d.ts +0 -4
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const config_1 = require("@expo/config");
5
4
  const core_1 = require("@oclif/core");
6
5
  const assert_1 = tslib_1.__importDefault(require("assert"));
7
6
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
@@ -9,6 +8,7 @@ const cli_table3_1 = tslib_1.__importDefault(require("cli-table3"));
9
8
  const EasCommand_1 = tslib_1.__importDefault(require("../../commandUtils/EasCommand"));
10
9
  const UpdateQuery_1 = require("../../graphql/queries/UpdateQuery");
11
10
  const log_1 = tslib_1.__importDefault(require("../../log"));
11
+ const expoConfig_1 = require("../../project/expoConfig");
12
12
  const projectUtils_1 = require("../../project/projectUtils");
13
13
  const prompts_1 = require("../../prompts");
14
14
  const utils_1 = require("../../update/utils");
@@ -23,7 +23,7 @@ class BranchView extends EasCommand_1.default {
23
23
  (0, json_1.enableJsonOutput)();
24
24
  }
25
25
  const projectDir = await (0, projectUtils_1.findProjectRootAsync)();
26
- const { exp } = (0, config_1.getConfig)(projectDir, { skipSDKVersionRequirement: true });
26
+ const exp = (0, expoConfig_1.getExpoConfig)(projectDir);
27
27
  const projectId = await (0, projectUtils_1.getProjectIdAsync)(exp);
28
28
  let updateGroupDescriptions;
29
29
  if (all) {
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const config_1 = require("@expo/config");
5
4
  const core_1 = require("@oclif/core");
6
5
  const EasCommand_1 = tslib_1.__importDefault(require("../../commandUtils/EasCommand"));
7
6
  const generated_1 = require("../../graphql/generated");
8
7
  const WebhookMutation_1 = require("../../graphql/mutations/WebhookMutation");
9
8
  const ora_1 = require("../../ora");
9
+ const expoConfig_1 = require("../../project/expoConfig");
10
10
  const projectUtils_1 = require("../../project/projectUtils");
11
11
  const input_1 = require("../../webhooks/input");
12
12
  class WebhookCreate extends EasCommand_1.default {
@@ -14,7 +14,7 @@ class WebhookCreate extends EasCommand_1.default {
14
14
  const { flags } = await this.parse(WebhookCreate);
15
15
  const webhookInputParams = await (0, input_1.prepareInputParamsAsync)(flags);
16
16
  const projectDir = await (0, projectUtils_1.findProjectRootAsync)();
17
- const { exp } = (0, config_1.getConfig)(projectDir, { skipSDKVersionRequirement: true });
17
+ const exp = (0, expoConfig_1.getExpoConfig)(projectDir);
18
18
  const projectId = await (0, projectUtils_1.getProjectIdAsync)(exp);
19
19
  const spinner = (0, ora_1.ora)('Creating a webhook').start();
20
20
  try {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const config_1 = require("@expo/config");
5
4
  const assert_1 = tslib_1.__importDefault(require("assert"));
6
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
7
6
  const nullthrows_1 = tslib_1.__importDefault(require("nullthrows"));
@@ -10,6 +9,7 @@ const WebhookMutation_1 = require("../../graphql/mutations/WebhookMutation");
10
9
  const WebhookQuery_1 = require("../../graphql/queries/WebhookQuery");
11
10
  const log_1 = tslib_1.__importDefault(require("../../log"));
12
11
  const ora_1 = require("../../ora");
12
+ const expoConfig_1 = require("../../project/expoConfig");
13
13
  const projectUtils_1 = require("../../project/projectUtils");
14
14
  const prompts_1 = require("../../prompts");
15
15
  const formatWebhook_1 = require("../../webhooks/formatWebhook");
@@ -17,7 +17,7 @@ class WebhookDelete extends EasCommand_1.default {
17
17
  async runAsync() {
18
18
  let { args: { ID: webhookId }, } = await this.parse(WebhookDelete);
19
19
  const projectDir = await (0, projectUtils_1.findProjectRootAsync)();
20
- const { exp } = (0, config_1.getConfig)(projectDir, { skipSDKVersionRequirement: true });
20
+ const exp = (0, expoConfig_1.getExpoConfig)(projectDir);
21
21
  const projectId = await (0, projectUtils_1.getProjectIdAsync)(exp);
22
22
  let webhook = webhookId && (await WebhookQuery_1.WebhookQuery.byIdAsync(webhookId));
23
23
  if (!webhookId) {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const config_1 = require("@expo/config");
5
4
  const core_1 = require("@oclif/core");
6
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
7
6
  const EasCommand_1 = tslib_1.__importDefault(require("../../commandUtils/EasCommand"));
@@ -9,13 +8,14 @@ const generated_1 = require("../../graphql/generated");
9
8
  const WebhookQuery_1 = require("../../graphql/queries/WebhookQuery");
10
9
  const log_1 = tslib_1.__importDefault(require("../../log"));
11
10
  const ora_1 = require("../../ora");
11
+ const expoConfig_1 = require("../../project/expoConfig");
12
12
  const projectUtils_1 = require("../../project/projectUtils");
13
13
  const formatWebhook_1 = require("../../webhooks/formatWebhook");
14
14
  class WebhookList extends EasCommand_1.default {
15
15
  async runAsync() {
16
16
  const { flags: { event }, } = await this.parse(WebhookList);
17
17
  const projectDir = await (0, projectUtils_1.findProjectRootAsync)();
18
- const { exp } = (0, config_1.getConfig)(projectDir, { skipSDKVersionRequirement: true });
18
+ const exp = (0, expoConfig_1.getExpoConfig)(projectDir);
19
19
  const projectId = await (0, projectUtils_1.getProjectIdAsync)(exp);
20
20
  const projectFullName = await (0, projectUtils_1.getProjectFullNameAsync)(exp);
21
21
  const spinner = (0, ora_1.ora)(`Fetching the list of webhook on project ${projectFullName}`).start();
@@ -20,7 +20,7 @@ function fileIsServiceAccountKey(keyJsonPath) {
20
20
  readAndValidateServiceAccountKey(keyJsonPath);
21
21
  return true;
22
22
  }
23
- catch (err) {
23
+ catch {
24
24
  return false;
25
25
  }
26
26
  }
@@ -20,7 +20,7 @@ async function keytoolCommandExistsAsync() {
20
20
  await (0, spawn_async_1.default)('keytool');
21
21
  return true;
22
22
  }
23
- catch (error) {
23
+ catch {
24
24
  return false;
25
25
  }
26
26
  }
@@ -26,7 +26,7 @@ function isPKCSKeystore(keystore) {
26
26
  (0, pkcs12_1.parsePKCS12)(keystore.keystore, keystore.keystorePassword);
27
27
  return true;
28
28
  }
29
- catch (e) {
29
+ catch {
30
30
  return false;
31
31
  }
32
32
  }
@@ -35,7 +35,7 @@ function isJKSKeystore(keystore) {
35
35
  jks_js_1.default.parseJks(Buffer.from(keystore.keystore, 'base64'), keystore.keystorePassword);
36
36
  return true;
37
37
  }
38
- catch (e) {
38
+ catch {
39
39
  return false;
40
40
  }
41
41
  }
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CredentialsContext = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const config_1 = require("@expo/config");
6
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
7
6
  const log_1 = tslib_1.__importDefault(require("../log"));
8
7
  const expoConfig_1 = require("../project/expoConfig");
@@ -34,7 +33,7 @@ class CredentialsContext {
34
33
  try {
35
34
  return (0, expoConfig_1.getExpoConfig)(projectDir, { env });
36
35
  }
37
- catch (error) {
36
+ catch {
38
37
  // ignore error, context might be created outside of expo project
39
38
  return null;
40
39
  }
@@ -51,7 +50,7 @@ class CredentialsContext {
51
50
  return;
52
51
  }
53
52
  // trigger getConfig error
54
- (0, config_1.getConfig)(this.options.projectDir, { skipSDKVersionRequirement: true });
53
+ (0, expoConfig_1.getExpoConfig)(this.options.projectDir);
55
54
  }
56
55
  logOwnerAndProject() {
57
56
  var _a;
@@ -81,7 +81,7 @@ async function readRawAsync(projectDir, { throwIfMissing = true } = {}) {
81
81
  const credentialsJSONContents = await fs_extra_1.default.readFile(credentialsJsonFilePath, 'utf8');
82
82
  return JSON.parse(credentialsJSONContents);
83
83
  }
84
- catch (err) {
84
+ catch {
85
85
  throw new Error(`credentials.json must exist in the project root directory and contain a valid JSON`);
86
86
  }
87
87
  }
@@ -1,14 +1,12 @@
1
1
  import { Platform } from '@expo/eas-build-job';
2
2
  import { CredentialsSource, DistributionType, IosEnterpriseProvisioning } from '@expo/eas-json';
3
3
  import { CredentialsContext } from '../context';
4
- import { IosCapabilitiesOptions } from './appstore/ensureAppExists';
5
4
  import { App, IosCredentials, Target } from './types';
6
5
  interface Options {
7
6
  app: App;
8
7
  targets: Target[];
9
8
  distribution: DistributionType;
10
9
  enterpriseProvisioning?: IosEnterpriseProvisioning;
11
- iosCapabilitiesOptions?: IosCapabilitiesOptions;
12
10
  }
13
11
  export default class IosCredentialsProvider {
14
12
  private ctx;
@@ -44,7 +44,6 @@ class IosCredentialsProvider {
44
44
  targets: this.options.targets,
45
45
  distribution: this.options.distribution,
46
46
  enterpriseProvisioning: this.options.enterpriseProvisioning,
47
- iosCapabilitiesOptions: this.options.iosCapabilitiesOptions,
48
47
  }).runAsync(this.ctx);
49
48
  }
50
49
  async getPushKeyAsync(ctx, targets) {
@@ -1,13 +1,11 @@
1
1
  import { DistributionType, IosEnterpriseProvisioning } from '@expo/eas-json';
2
2
  import { CredentialsContext } from '../../context';
3
- import { IosCapabilitiesOptions } from '../appstore/ensureAppExists';
4
3
  import { App, IosCredentials, Target } from '../types';
5
4
  interface Options {
6
5
  app: App;
7
6
  targets: Target[];
8
7
  distribution: DistributionType;
9
8
  enterpriseProvisioning?: IosEnterpriseProvisioning;
10
- iosCapabilitiesOptions?: IosCapabilitiesOptions;
11
9
  }
12
10
  export declare class SetUpBuildCredentials {
13
11
  private options;
@@ -36,7 +36,9 @@ class SetUpBuildCredentials {
36
36
  log_1.default.newLine();
37
37
  }
38
38
  const action = new SetUpTargetBuildCredentials_1.SetUpTargetBuildCredentials({
39
- ...this.options,
39
+ enterpriseProvisioning: this.options.enterpriseProvisioning,
40
+ distribution: this.options.distribution,
41
+ entitlements: target.entitlements,
40
42
  app: {
41
43
  ...this.options.app,
42
44
  bundleIdentifier: target.bundleIdentifier,
@@ -1,13 +1,13 @@
1
1
  import { DistributionType, IosEnterpriseProvisioning } from '@expo/eas-json';
2
+ import { JSONObject } from '@expo/json-file';
2
3
  import { IosAppBuildCredentialsFragment } from '../../../graphql/generated';
3
4
  import { CredentialsContext } from '../../context';
4
5
  import { AppLookupParams as GraphQLAppLookupParams } from '../api/GraphqlClient';
5
- import { IosCapabilitiesOptions } from '../appstore/ensureAppExists';
6
6
  interface Options {
7
7
  app: GraphQLAppLookupParams;
8
8
  distribution: DistributionType;
9
9
  enterpriseProvisioning?: IosEnterpriseProvisioning;
10
- iosCapabilitiesOptions?: IosCapabilitiesOptions;
10
+ entitlements: JSONObject;
11
11
  }
12
12
  export declare class SetUpTargetBuildCredentials {
13
13
  private options;
@@ -12,14 +12,14 @@ class SetUpTargetBuildCredentials {
12
12
  this.options = options;
13
13
  }
14
14
  async runAsync(ctx) {
15
- const { app, iosCapabilitiesOptions } = this.options;
15
+ const { app, entitlements } = this.options;
16
16
  await ctx.bestEffortAppStoreAuthenticateAsync();
17
17
  if (ctx.appStore.authCtx) {
18
18
  await ctx.appStore.ensureBundleIdExistsAsync({
19
19
  accountName: app.account.name,
20
20
  bundleIdentifier: app.bundleIdentifier,
21
21
  projectName: app.projectName,
22
- }, iosCapabilitiesOptions);
22
+ }, { entitlements });
23
23
  }
24
24
  try {
25
25
  return await this.setupBuildCredentialsAsync(ctx);
@@ -1,3 +1,4 @@
1
+ import { JSONObject } from '@expo/json-file';
1
2
  import { CommonIosAppCredentialsFragment, IosAppBuildCredentialsFragment } from '../../graphql/generated';
2
3
  import { Account } from '../../user/Account';
3
4
  export interface App {
@@ -9,6 +10,7 @@ export interface Target {
9
10
  buildConfiguration?: string;
10
11
  bundleIdentifier: string;
11
12
  parentBundleIdentifier?: string;
13
+ entitlements: JSONObject;
12
14
  }
13
15
  export interface TargetCredentials {
14
16
  distributionCertificate: {
@@ -2,4 +2,4 @@ import { AppLookupParams } from '../api/GraphqlClient';
2
2
  import { App, IosAppBuildCredentialsMap, IosAppCredentialsMap, Target } from '../types';
3
3
  export declare function displayEmptyIosCredentials(appLookupParams: AppLookupParams): void;
4
4
  export declare function displayIosCredentials(app: App, appCredentialsMap: IosAppCredentialsMap, targets: Target[]): void;
5
- export declare function displayProjectCredentials(app: App, appBuildCredentials: IosAppBuildCredentialsMap, targets: Target[]): void;
5
+ export declare function displayProjectCredentials(app: App, appBuildCredentials: IosAppBuildCredentialsMap, targets: Omit<Target, 'entitlements'>[]): void;
@@ -31,7 +31,7 @@ function parse(dataBase64) {
31
31
  const profile = buffer.toString('utf8');
32
32
  return plist_1.default.parse(profile);
33
33
  }
34
- catch (error) {
34
+ catch {
35
35
  throw new Error('Provisioning profile is malformed');
36
36
  }
37
37
  }
@@ -53,7 +53,7 @@ function validateProvisioningProfileWithoutApple(app, { provisioningProfile, dis
53
53
  return false;
54
54
  }
55
55
  }
56
- catch (error) {
56
+ catch {
57
57
  log_1.default.warn('Provisioning Profile is malformed.');
58
58
  return false;
59
59
  }
@@ -34,7 +34,6 @@ const SetUpBuildCredentialsFromCredentialsJson_1 = require("../ios/actions/SetUp
34
34
  const SetUpProvisioningProfile_1 = require("../ios/actions/SetUpProvisioningProfile");
35
35
  const SetUpPushKey_1 = require("../ios/actions/SetUpPushKey");
36
36
  const UpdateCredentialsJson_1 = require("../ios/actions/UpdateCredentialsJson");
37
- const entitlements_1 = require("../ios/appstore/entitlements");
38
37
  const printCredentials_1 = require("../ios/utils/printCredentials");
39
38
  const Actions_1 = require("./Actions");
40
39
  const HelperActions_1 = require("./HelperActions");
@@ -158,7 +157,12 @@ class ManageIos {
158
157
  nonInteractive: ctx.nonInteractive,
159
158
  exp: ctx.exp,
160
159
  }, buildProfile);
161
- const targets = await (0, target_1.resolveTargetsAsync)({ exp: ctx.exp, projectDir: ctx.projectDir }, xcodeBuildContext);
160
+ const targets = await (0, target_1.resolveTargetsAsync)({
161
+ exp: ctx.exp,
162
+ projectDir: ctx.projectDir,
163
+ xcodeBuildContext,
164
+ env: buildProfile.env,
165
+ });
162
166
  return {
163
167
  app,
164
168
  targets,
@@ -185,16 +189,13 @@ class ManageIos {
185
189
  }
186
190
  }
187
191
  async runProjectSpecificActionAsync(ctx, app, targets, buildProfile, action) {
188
- var _a, _b;
192
+ var _a;
189
193
  if (action === Actions_1.IosActionType.SetUpBuildCredentials) {
190
194
  await new SetUpBuildCredentials_1.SetUpBuildCredentials({
191
195
  app,
192
196
  targets,
193
197
  distribution: buildProfile.distribution,
194
198
  enterpriseProvisioning: buildProfile.enterpriseProvisioning,
195
- iosCapabilitiesOptions: {
196
- entitlements: await (0, entitlements_1.getManagedEntitlementsJsonAsync)(ctx.projectDir, (_a = buildProfile.env) !== null && _a !== void 0 ? _a : {}),
197
- },
198
199
  }).runAsync(ctx);
199
200
  return;
200
201
  }
@@ -230,7 +231,7 @@ class ManageIos {
230
231
  }
231
232
  case Actions_1.IosActionType.RemoveProvisioningProfile: {
232
233
  const iosAppCredentials = await ctx.ios.getIosAppCredentialsWithCommonFieldsAsync(appLookupParams);
233
- const provisioningProfile = (_b = iosAppCredentials === null || iosAppCredentials === void 0 ? void 0 : iosAppCredentials.iosAppBuildCredentialsList.find(buildCredentials => buildCredentials.iosDistributionType === distributionType)) === null || _b === void 0 ? void 0 : _b.provisioningProfile;
234
+ const provisioningProfile = (_a = iosAppCredentials === null || iosAppCredentials === void 0 ? void 0 : iosAppCredentials.iosAppBuildCredentialsList.find(buildCredentials => buildCredentials.iosDistributionType === distributionType)) === null || _a === void 0 ? void 0 : _a.provisioningProfile;
234
235
  if (!provisioningProfile) {
235
236
  log_1.default.log(`No provisioning profile associated with the ${distributionType} configuration of ${appLookupParams.projectName}`);
236
237
  return;
@@ -91,7 +91,7 @@ export declare type Account = {
91
91
  apps: Array<App>;
92
92
  /** @deprecated Build packs are no longer supported */
93
93
  availableBuilds?: Maybe<Scalars['Int']>;
94
- /** Billing information */
94
+ /** Billing information. Only visible to members with the ADMIN or OWNER role. */
95
95
  billing?: Maybe<Billing>;
96
96
  billingPeriod: BillingPeriod;
97
97
  /** Build Jobs associated with this account */
@@ -295,7 +295,9 @@ export declare type AccountMutationRenameArgs = {
295
295
  };
296
296
  export declare type AccountMutationRequestRefundArgs = {
297
297
  accountID: Scalars['ID'];
298
- chargeIdentifier: Scalars['ID'];
298
+ chargeID: Scalars['ID'];
299
+ description?: InputMaybe<Scalars['String']>;
300
+ reason?: InputMaybe<Scalars['String']>;
299
301
  };
300
302
  export declare type AccountMutationRevokeActorPermissionsArgs = {
301
303
  accountID: Scalars['ID'];
@@ -334,18 +336,34 @@ export declare type AccountQueryByNameArgs = {
334
336
  };
335
337
  export declare type AccountUsageMetric = {
336
338
  __typename?: 'AccountUsageMetric';
337
- metric: EasServiceMetric;
339
+ id: Scalars['ID'];
338
340
  metricType: UsageMetricType;
341
+ serviceMetric: EasServiceMetric;
339
342
  timestamp: Scalars['DateTime'];
340
343
  value: Scalars['Float'];
341
344
  };
345
+ export declare type AccountUsageMetricAndCost = {
346
+ __typename?: 'AccountUsageMetricAndCost';
347
+ id: Scalars['ID'];
348
+ /** The limit, in units, allowed by this plan */
349
+ limit: Scalars['Float'];
350
+ metricType: UsageMetricType;
351
+ serviceMetric: EasServiceMetric;
352
+ /** Total cost of this particular metric, in cents */
353
+ totalCost: Scalars['Float'];
354
+ value: Scalars['Float'];
355
+ };
342
356
  export declare type AccountUsageMetrics = {
343
357
  __typename?: 'AccountUsageMetrics';
358
+ byBillingPeriod: UsageMetricTotal;
344
359
  metricsForServiceMetric: Array<AccountUsageMetric>;
345
360
  };
361
+ export declare type AccountUsageMetricsByBillingPeriodArgs = {
362
+ date: Scalars['DateTime'];
363
+ };
346
364
  export declare type AccountUsageMetricsMetricsForServiceMetricArgs = {
347
365
  granularity: UsageMetricsGranularity;
348
- metric: EasServiceMetric;
366
+ serviceMetric: EasServiceMetric;
349
367
  timespan: UsageMetricsTimespan;
350
368
  };
351
369
  export declare type ActivityTimelineProjectActivity = {
@@ -842,14 +860,18 @@ export declare type AppDataInput = {
842
860
  };
843
861
  export declare type AppIcon = {
844
862
  __typename?: 'AppIcon';
845
- /** Nullable color palette of the app icon. If null, color palette couldn't be retrieved from external service (imgix) */
863
+ /** @deprecated No longer supported */
846
864
  colorPalette?: Maybe<Scalars['JSON']>;
847
865
  originalUrl: Scalars['String'];
848
866
  primaryColor?: Maybe<Scalars['String']>;
849
867
  url: Scalars['String'];
850
868
  };
869
+ export declare type AppInfoInput = {
870
+ displayName?: InputMaybe<Scalars['String']>;
871
+ };
851
872
  export declare type AppInput = {
852
873
  accountId: Scalars['ID'];
874
+ appInfo?: InputMaybe<AppInfoInput>;
853
875
  privacy: AppPrivacy;
854
876
  projectName: Scalars['String'];
855
877
  };
@@ -859,6 +881,8 @@ export declare type AppMutation = {
859
881
  createApp: App;
860
882
  /** @deprecated No longer supported */
861
883
  grantAccess?: Maybe<App>;
884
+ /** Set display info for app */
885
+ setAppInfo: App;
862
886
  /** Require api token to send push notifs for experience */
863
887
  setPushSecurityEnabled: App;
864
888
  };
@@ -869,6 +893,10 @@ export declare type AppMutationGrantAccessArgs = {
869
893
  accessLevel?: InputMaybe<Scalars['String']>;
870
894
  toUser: Scalars['ID'];
871
895
  };
896
+ export declare type AppMutationSetAppInfoArgs = {
897
+ appId: Scalars['ID'];
898
+ appInfo: AppInfoInput;
899
+ };
872
900
  export declare type AppMutationSetPushSecurityEnabledArgs = {
873
901
  appId: Scalars['ID'];
874
902
  pushSecurityEnabled: Scalars['Boolean'];
@@ -1594,6 +1622,12 @@ export declare type CodeSigningInfoInput = {
1594
1622
  keyid: Scalars['String'];
1595
1623
  sig: Scalars['String'];
1596
1624
  };
1625
+ export declare type Concurrencies = {
1626
+ __typename?: 'Concurrencies';
1627
+ android: Scalars['Int'];
1628
+ ios: Scalars['Int'];
1629
+ total: Scalars['Int'];
1630
+ };
1597
1631
  export declare type CreateAccessTokenInput = {
1598
1632
  actorID: Scalars['ID'];
1599
1633
  note?: InputMaybe<Scalars['String']>;
@@ -1607,6 +1641,7 @@ export declare type CreateAccessTokenResponse = {
1607
1641
  };
1608
1642
  export declare type CreateAndroidSubmissionInput = {
1609
1643
  appId: Scalars['ID'];
1644
+ archiveUrl?: InputMaybe<Scalars['String']>;
1610
1645
  config: AndroidSubmissionConfigInput;
1611
1646
  submittedBuildId?: InputMaybe<Scalars['ID']>;
1612
1647
  };
@@ -1621,15 +1656,10 @@ export declare type CreateEnvironmentSecretInput = {
1621
1656
  };
1622
1657
  export declare type CreateIosSubmissionInput = {
1623
1658
  appId: Scalars['ID'];
1659
+ archiveUrl?: InputMaybe<Scalars['String']>;
1624
1660
  config: IosSubmissionConfigInput;
1625
1661
  submittedBuildId?: InputMaybe<Scalars['ID']>;
1626
1662
  };
1627
- export declare type CreateSubmissionInput = {
1628
- appId: Scalars['ID'];
1629
- config: Scalars['JSONObject'];
1630
- platform: AppPlatform;
1631
- submittedBuildId?: InputMaybe<Scalars['ID']>;
1632
- };
1633
1663
  export declare type CreateSubmissionResult = {
1634
1664
  __typename?: 'CreateSubmissionResult';
1635
1665
  /** Created submission */
@@ -1720,7 +1750,10 @@ export declare enum EasBuildDeprecationInfoType {
1720
1750
  UserFacing = "USER_FACING"
1721
1751
  }
1722
1752
  export declare enum EasServiceMetric {
1723
- ManifestRequests = "MANIFEST_REQUESTS"
1753
+ AssetsRequests = "ASSETS_REQUESTS",
1754
+ BandwidthUsage = "BANDWIDTH_USAGE",
1755
+ ManifestRequests = "MANIFEST_REQUESTS",
1756
+ UniqueUsers = "UNIQUE_USERS"
1724
1757
  }
1725
1758
  export declare type EditUpdateBranchInput = {
1726
1759
  appId?: InputMaybe<Scalars['ID']>;
@@ -2595,6 +2628,8 @@ export declare type Submission = ActivityTimelineProjectActivity & {
2595
2628
  actor?: Maybe<Actor>;
2596
2629
  androidConfig?: Maybe<AndroidSubmissionConfig>;
2597
2630
  app: App;
2631
+ archiveUrl?: Maybe<Scalars['String']>;
2632
+ canRetry: Scalars['Boolean'];
2598
2633
  cancelingActor?: Maybe<Actor>;
2599
2634
  createdAt: Scalars['DateTime'];
2600
2635
  error?: Maybe<SubmissionError>;
@@ -2602,6 +2637,7 @@ export declare type Submission = ActivityTimelineProjectActivity & {
2602
2637
  initiatingActor?: Maybe<Actor>;
2603
2638
  iosConfig?: Maybe<IosSubmissionConfig>;
2604
2639
  logsUrl?: Maybe<Scalars['String']>;
2640
+ parentSubmission?: Maybe<Submission>;
2605
2641
  platform: AppPlatform;
2606
2642
  status: SubmissionStatus;
2607
2643
  submittedBuild?: Maybe<Build>;
@@ -2640,14 +2676,11 @@ export declare type SubmissionMutation = {
2640
2676
  createAndroidSubmission: CreateSubmissionResult;
2641
2677
  /** Create an iOS EAS Submit submission */
2642
2678
  createIosSubmission: CreateSubmissionResult;
2643
- /**
2644
- * Create an EAS Submit submission
2645
- * @deprecated Use createIosSubmission / createAndroidSubmission instead
2646
- */
2647
- createSubmission: CreateSubmissionResult;
2679
+ /** Retry an EAS Submit submission */
2680
+ retrySubmission: CreateSubmissionResult;
2648
2681
  };
2649
2682
  export declare type SubmissionMutationCancelSubmissionArgs = {
2650
- submissionId?: InputMaybe<Scalars['ID']>;
2683
+ submissionId: Scalars['ID'];
2651
2684
  };
2652
2685
  export declare type SubmissionMutationCreateAndroidSubmissionArgs = {
2653
2686
  input: CreateAndroidSubmissionInput;
@@ -2655,8 +2688,8 @@ export declare type SubmissionMutationCreateAndroidSubmissionArgs = {
2655
2688
  export declare type SubmissionMutationCreateIosSubmissionArgs = {
2656
2689
  input: CreateIosSubmissionInput;
2657
2690
  };
2658
- export declare type SubmissionMutationCreateSubmissionArgs = {
2659
- input: CreateSubmissionInput;
2691
+ export declare type SubmissionMutationRetrySubmissionArgs = {
2692
+ parentSubmissionId: Scalars['ID'];
2660
2693
  };
2661
2694
  export declare type SubmissionQuery = {
2662
2695
  __typename?: 'SubmissionQuery';
@@ -2678,6 +2711,7 @@ export declare type SubscriptionDetails = {
2678
2711
  __typename?: 'SubscriptionDetails';
2679
2712
  addons: Array<AddonDetails>;
2680
2713
  cancelledAt?: Maybe<Scalars['DateTime']>;
2714
+ concurrencies?: Maybe<Concurrencies>;
2681
2715
  endedAt?: Maybe<Scalars['DateTime']>;
2682
2716
  id: Scalars['ID'];
2683
2717
  isDowngrading?: Maybe<Scalars['Boolean']>;
@@ -2828,8 +2862,19 @@ export declare enum UploadSessionType {
2828
2862
  EasBuildProjectSources = "EAS_BUILD_PROJECT_SOURCES",
2829
2863
  EasSubmitAppArchive = "EAS_SUBMIT_APP_ARCHIVE"
2830
2864
  }
2865
+ export declare type UsageMetricTotal = {
2866
+ __typename?: 'UsageMetricTotal';
2867
+ billingPeriod: BillingPeriod;
2868
+ id: Scalars['ID'];
2869
+ overageMetrics: Array<AccountUsageMetricAndCost>;
2870
+ planMetrics: Array<AccountUsageMetricAndCost>;
2871
+ /** Total cost of overages, in cents */
2872
+ totalCost: Scalars['Float'];
2873
+ };
2831
2874
  export declare enum UsageMetricType {
2832
- Request = "REQUEST"
2875
+ Bandwidth = "BANDWIDTH",
2876
+ Request = "REQUEST",
2877
+ User = "USER"
2833
2878
  }
2834
2879
  export declare enum UsageMetricsGranularity {
2835
2880
  Day = "DAY",
@@ -147,7 +147,10 @@ var EasBuildDeprecationInfoType;
147
147
  })(EasBuildDeprecationInfoType = exports.EasBuildDeprecationInfoType || (exports.EasBuildDeprecationInfoType = {}));
148
148
  var EasServiceMetric;
149
149
  (function (EasServiceMetric) {
150
+ EasServiceMetric["AssetsRequests"] = "ASSETS_REQUESTS";
151
+ EasServiceMetric["BandwidthUsage"] = "BANDWIDTH_USAGE";
150
152
  EasServiceMetric["ManifestRequests"] = "MANIFEST_REQUESTS";
153
+ EasServiceMetric["UniqueUsers"] = "UNIQUE_USERS";
151
154
  })(EasServiceMetric = exports.EasServiceMetric || (exports.EasServiceMetric = {}));
152
155
  var Feature;
153
156
  (function (Feature) {
@@ -287,7 +290,9 @@ var UploadSessionType;
287
290
  })(UploadSessionType = exports.UploadSessionType || (exports.UploadSessionType = {}));
288
291
  var UsageMetricType;
289
292
  (function (UsageMetricType) {
293
+ UsageMetricType["Bandwidth"] = "BANDWIDTH";
290
294
  UsageMetricType["Request"] = "REQUEST";
295
+ UsageMetricType["User"] = "USER";
291
296
  })(UsageMetricType = exports.UsageMetricType || (exports.UsageMetricType = {}));
292
297
  var UsageMetricsGranularity;
293
298
  (function (UsageMetricsGranularity) {
@@ -4,7 +4,7 @@ exports.UpdateQuery = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const graphql_tag_1 = tslib_1.__importDefault(require("graphql-tag"));
6
6
  const client_1 = require("../client");
7
- const PAGE_LIMIT = 10000;
7
+ const PAGE_LIMIT = 300;
8
8
  exports.UpdateQuery = {
9
9
  async viewAllAsync({ appId }) {
10
10
  return (0, client_1.withErrorHandlingAsync)(client_1.graphqlClient
@@ -0,0 +1,25 @@
1
+ /// <reference types="@expo/apple-utils/ts-declarations/expo__app-store" />
2
+ import { AgeRatingDeclaration, AppInfoLocalization, AppStoreVersion, AppStoreVersionLocalization, CategoryIds } from '@expo/apple-utils';
3
+ import { AttributesOf } from '../../utils/asc';
4
+ import { AppleMetadata } from '../types';
5
+ declare type PartialExcept<T, K extends keyof T> = Pick<T, K> & Partial<Omit<T, K>>;
6
+ export declare const DEFAULT_WHATSNEW = "Bug fixes and improved stability";
7
+ /**
8
+ * Deserializes the metadata config schema into attributes for different models.
9
+ * This uses version 0 of the config schema.
10
+ */
11
+ export declare class AppleConfigReader {
12
+ readonly schema: AppleMetadata;
13
+ constructor(schema: AppleMetadata);
14
+ getAgeRating(): Partial<AttributesOf<AgeRatingDeclaration>> | null;
15
+ getLocales(): string[];
16
+ getInfoLocale(locale: string): PartialExcept<AttributesOf<AppInfoLocalization>, 'locale' | 'name'> | null;
17
+ getCategories(): CategoryIds | null;
18
+ /** Get the `AppStoreVersion` object. */
19
+ getVersion(): Partial<Omit<AttributesOf<AppStoreVersion>, 'releaseType' | 'earliestReleaseDate'>> | null;
20
+ getVersionRelease(): Partial<Pick<AttributesOf<AppStoreVersion>, 'releaseType' | 'earliestReleaseDate'>> | null;
21
+ getVersionLocale(locale: string, context: {
22
+ versionIsFirst: boolean;
23
+ }): Partial<AttributesOf<AppStoreVersionLocalization>> | null;
24
+ }
25
+ export {};