eas-cli 7.1.2 → 7.2.0

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 (41) hide show
  1. package/README.md +64 -62
  2. package/build/build/metadata.js +3 -3
  3. package/build/build/types.d.ts +1 -0
  4. package/build/build/types.js +1 -0
  5. package/build/commands/build/list.d.ts +1 -0
  6. package/build/commands/build/list.js +12 -0
  7. package/build/commands/build/run.js +3 -3
  8. package/build/commands/update/index.d.ts +0 -1
  9. package/build/commands/update/index.js +3 -8
  10. package/build/credentials/android/actions/{AssignGoogleServiceAccountKey.d.ts → AssignGoogleServiceAccountKeyForFcmV1.d.ts} +1 -1
  11. package/build/credentials/android/actions/AssignGoogleServiceAccountKeyForFcmV1.js +19 -0
  12. package/build/credentials/android/actions/AssignGoogleServiceAccountKeyForSubmissions.d.ts +8 -0
  13. package/build/credentials/android/actions/{AssignGoogleServiceAccountKey.js → AssignGoogleServiceAccountKeyForSubmissions.js} +3 -3
  14. package/build/credentials/android/actions/CreateGoogleServiceAccountKey.js +1 -1
  15. package/build/credentials/android/actions/{SetUpGoogleServiceAccountKey.d.ts → SetUpGoogleServiceAccountKeyForFcmV1.d.ts} +1 -1
  16. package/build/credentials/android/actions/SetUpGoogleServiceAccountKeyForFcmV1.js +59 -0
  17. package/build/credentials/android/actions/SetUpGoogleServiceAccountKeyForSubmissions.d.ts +10 -0
  18. package/build/credentials/android/actions/{SetUpGoogleServiceAccountKey.js → SetUpGoogleServiceAccountKeyForSubmissions.js} +5 -5
  19. package/build/credentials/android/api/GraphqlClient.d.ts +2 -1
  20. package/build/credentials/android/api/GraphqlClient.js +5 -1
  21. package/build/credentials/android/api/graphql/mutations/AndroidAppCredentialsMutation.d.ts +1 -0
  22. package/build/credentials/android/api/graphql/mutations/AndroidAppCredentialsMutation.js +26 -0
  23. package/build/credentials/android/utils/googleServiceAccountKey.js +1 -1
  24. package/build/credentials/android/utils/printCredentials.js +24 -2
  25. package/build/credentials/ios/actions/CreateAscApiKey.js +1 -5
  26. package/build/credentials/manager/Actions.d.ts +22 -16
  27. package/build/credentials/manager/Actions.js +22 -16
  28. package/build/credentials/manager/AndroidActions.d.ts +3 -1
  29. package/build/credentials/manager/AndroidActions.js +46 -12
  30. package/build/credentials/manager/ManageAndroid.js +30 -12
  31. package/build/graphql/generated.d.ts +198 -0
  32. package/build/graphql/generated.js +3 -0
  33. package/build/graphql/types/Build.js +1 -0
  34. package/build/graphql/types/credentials/AndroidAppCredentials.js +4 -0
  35. package/build/project/customBuildConfig.js +1 -1
  36. package/build/project/publish.d.ts +1 -2
  37. package/build/project/publish.js +1 -4
  38. package/build/run/utils.js +1 -1
  39. package/build/submit/android/ServiceAccountSource.js +2 -2
  40. package/oclif.manifest.json +7 -7
  41. package/package.json +6 -6
@@ -15,7 +15,8 @@ const log_1 = tslib_1.__importStar(require("../../log"));
15
15
  const gradle_1 = require("../../project/android/gradle");
16
16
  const prompts_1 = require("../../prompts");
17
17
  const AssignFcm_1 = require("../android/actions/AssignFcm");
18
- const AssignGoogleServiceAccountKey_1 = require("../android/actions/AssignGoogleServiceAccountKey");
18
+ const AssignGoogleServiceAccountKeyForFcmV1_1 = require("../android/actions/AssignGoogleServiceAccountKeyForFcmV1");
19
+ const AssignGoogleServiceAccountKeyForSubmissions_1 = require("../android/actions/AssignGoogleServiceAccountKeyForSubmissions");
19
20
  const BuildCredentialsUtils_1 = require("../android/actions/BuildCredentialsUtils");
20
21
  const CreateFcm_1 = require("../android/actions/CreateFcm");
21
22
  const CreateGoogleServiceAccountKey_1 = require("../android/actions/CreateGoogleServiceAccountKey");
@@ -24,7 +25,8 @@ const RemoveFcm_1 = require("../android/actions/RemoveFcm");
24
25
  const RemoveGoogleServiceAccountKey_1 = require("../android/actions/RemoveGoogleServiceAccountKey");
25
26
  const RemoveKeystore_1 = require("../android/actions/RemoveKeystore");
26
27
  const SetUpBuildCredentialsFromCredentialsJson_1 = require("../android/actions/SetUpBuildCredentialsFromCredentialsJson");
27
- const SetUpGoogleServiceAccountKey_1 = require("../android/actions/SetUpGoogleServiceAccountKey");
28
+ const SetUpGoogleServiceAccountKeyForFcmV1_1 = require("../android/actions/SetUpGoogleServiceAccountKeyForFcmV1");
29
+ const SetUpGoogleServiceAccountKeyForSubmissions_1 = require("../android/actions/SetUpGoogleServiceAccountKeyForSubmissions");
28
30
  const UpdateCredentialsJson_1 = require("../android/actions/UpdateCredentialsJson");
29
31
  const UseExistingGoogleServiceAccountKey_1 = require("../android/actions/UseExistingGoogleServiceAccountKey");
30
32
  const printCredentials_1 = require("../android/utils/printCredentials");
@@ -101,8 +103,16 @@ class ManageAndroid {
101
103
  currentActions = AndroidActions_1.fcmActions;
102
104
  continue;
103
105
  }
104
- else if (chosenAction === Actions_1.AndroidActionType.ManageGoogleServiceAccountKey) {
105
- currentActions = AndroidActions_1.gsaKeyActions;
106
+ else if (chosenAction === Actions_1.AndroidActionType.ManageGoogleServiceAccount) {
107
+ currentActions = AndroidActions_1.gsaActions;
108
+ continue;
109
+ }
110
+ else if (chosenAction === Actions_1.AndroidActionType.ManageGoogleServiceAccountKeyForSubmissions) {
111
+ currentActions = AndroidActions_1.gsaKeyActionsForSubmissions;
112
+ continue;
113
+ }
114
+ else if (chosenAction === Actions_1.AndroidActionType.ManageGoogleServiceAccountKeyForFcmV1) {
115
+ currentActions = AndroidActions_1.gsaKeyActionsForFcmV1;
106
116
  continue;
107
117
  }
108
118
  else if (chosenAction === Actions_1.AndroidActionType.ManageCredentialsJson) {
@@ -165,22 +175,30 @@ class ManageAndroid {
165
175
  else if (action === Actions_1.AndroidActionType.RemoveFcm) {
166
176
  await new RemoveFcm_1.RemoveFcm(appLookupParams).runAsync(ctx);
167
177
  }
168
- else if (action === Actions_1.AndroidActionType.CreateGsaKey) {
169
- const gsaKey = await new CreateGoogleServiceAccountKey_1.CreateGoogleServiceAccountKey(appLookupParams.account).runAsync(ctx);
170
- await new AssignGoogleServiceAccountKey_1.AssignGoogleServiceAccountKey(appLookupParams).runAsync(ctx, gsaKey);
178
+ else if (action === Actions_1.AndroidActionType.SetUpGsaKeyForSubmissions) {
179
+ await new SetUpGoogleServiceAccountKeyForSubmissions_1.SetUpGoogleServiceAccountKeyForSubmissions(appLookupParams).runAsync(ctx);
171
180
  }
172
- else if (action === Actions_1.AndroidActionType.UseExistingGsaKey) {
181
+ else if (action === Actions_1.AndroidActionType.UseExistingGsaKeyForSubmissions) {
173
182
  const gsaKey = await new UseExistingGoogleServiceAccountKey_1.UseExistingGoogleServiceAccountKey(appLookupParams.account).runAsync(ctx);
174
183
  if (gsaKey) {
175
- await new AssignGoogleServiceAccountKey_1.AssignGoogleServiceAccountKey(appLookupParams).runAsync(ctx, gsaKey);
184
+ await new AssignGoogleServiceAccountKeyForSubmissions_1.AssignGoogleServiceAccountKeyForSubmissions(appLookupParams).runAsync(ctx, gsaKey);
176
185
  }
177
186
  }
187
+ else if (action === Actions_1.AndroidActionType.SetUpGsaKeyForFcmV1) {
188
+ await new SetUpGoogleServiceAccountKeyForFcmV1_1.SetUpGoogleServiceAccountKeyForFcmV1(appLookupParams).runAsync(ctx);
189
+ }
190
+ else if (action === Actions_1.AndroidActionType.UseExistingGsaKeyForFcmV1) {
191
+ const gsaKey = await new UseExistingGoogleServiceAccountKey_1.UseExistingGoogleServiceAccountKey(appLookupParams.account).runAsync(ctx);
192
+ if (gsaKey) {
193
+ await new AssignGoogleServiceAccountKeyForFcmV1_1.AssignGoogleServiceAccountKeyForFcmV1(appLookupParams).runAsync(ctx, gsaKey);
194
+ }
195
+ }
196
+ else if (action === Actions_1.AndroidActionType.CreateGsaKey) {
197
+ await new CreateGoogleServiceAccountKey_1.CreateGoogleServiceAccountKey(appLookupParams.account).runAsync(ctx);
198
+ }
178
199
  else if (action === Actions_1.AndroidActionType.RemoveGsaKey) {
179
200
  await new RemoveGoogleServiceAccountKey_1.SelectAndRemoveGoogleServiceAccountKey(appLookupParams.account).runAsync(ctx);
180
201
  }
181
- else if (action === Actions_1.AndroidActionType.SetUpGsaKey) {
182
- await new SetUpGoogleServiceAccountKey_1.SetUpGoogleServiceAccountKey(appLookupParams).runAsync(ctx);
183
- }
184
202
  else if (action === Actions_1.AndroidActionType.UpdateCredentialsJson) {
185
203
  const buildCredentials = await new SelectAndroidBuildCredentials_1.SelectExistingAndroidBuildCredentials(appLookupParams).runAsync(ctx);
186
204
  if (buildCredentials) {
@@ -670,6 +670,7 @@ export type AndroidAppCredentials = {
670
670
  androidFcm?: Maybe<AndroidFcm>;
671
671
  app: App;
672
672
  applicationIdentifier?: Maybe<Scalars['String']['output']>;
673
+ googleServiceAccountKeyForFcmV1?: Maybe<GoogleServiceAccountKey>;
673
674
  googleServiceAccountKeyForSubmissions?: Maybe<GoogleServiceAccountKey>;
674
675
  id: Scalars['ID']['output'];
675
676
  isLegacy: Scalars['Boolean']['output'];
@@ -680,16 +681,24 @@ export type AndroidAppCredentialsFilter = {
680
681
  };
681
682
  export type AndroidAppCredentialsInput = {
682
683
  fcmId?: InputMaybe<Scalars['ID']['input']>;
684
+ googleServiceAccountKeyForFcmV1Id?: InputMaybe<Scalars['ID']['input']>;
683
685
  googleServiceAccountKeyForSubmissionsId?: InputMaybe<Scalars['ID']['input']>;
684
686
  };
685
687
  export type AndroidAppCredentialsMutation = {
686
688
  __typename?: 'AndroidAppCredentialsMutation';
687
689
  /** Create a set of credentials for an Android app */
688
690
  createAndroidAppCredentials: AndroidAppCredentials;
691
+ /**
692
+ * Create a GoogleServiceAccountKeyEntity to store credential and
693
+ * connect it with an edge from AndroidAppCredential
694
+ */
695
+ createFcmV1Credential: AndroidAppCredentials;
689
696
  /** Delete a set of credentials for an Android app */
690
697
  deleteAndroidAppCredentials: DeleteAndroidAppCredentialsResult;
691
698
  /** Set the FCM push key to be used in an Android app */
692
699
  setFcm: AndroidAppCredentials;
700
+ /** Set the Google Service Account Key to be used for Firebase Cloud Messaging V1 */
701
+ setGoogleServiceAccountKeyForFcmV1: AndroidAppCredentials;
693
702
  /** Set the Google Service Account Key to be used for submitting an Android app */
694
703
  setGoogleServiceAccountKeyForSubmissions: AndroidAppCredentials;
695
704
  };
@@ -698,6 +707,11 @@ export type AndroidAppCredentialsMutationCreateAndroidAppCredentialsArgs = {
698
707
  appId: Scalars['ID']['input'];
699
708
  applicationIdentifier: Scalars['String']['input'];
700
709
  };
710
+ export type AndroidAppCredentialsMutationCreateFcmV1CredentialArgs = {
711
+ accountId: Scalars['ID']['input'];
712
+ androidAppCredentialsId: Scalars['String']['input'];
713
+ credential: Scalars['String']['input'];
714
+ };
701
715
  export type AndroidAppCredentialsMutationDeleteAndroidAppCredentialsArgs = {
702
716
  id: Scalars['ID']['input'];
703
717
  };
@@ -705,6 +719,10 @@ export type AndroidAppCredentialsMutationSetFcmArgs = {
705
719
  fcmId: Scalars['ID']['input'];
706
720
  id: Scalars['ID']['input'];
707
721
  };
722
+ export type AndroidAppCredentialsMutationSetGoogleServiceAccountKeyForFcmV1Args = {
723
+ googleServiceAccountKeyId: Scalars['ID']['input'];
724
+ id: Scalars['ID']['input'];
725
+ };
708
726
  export type AndroidAppCredentialsMutationSetGoogleServiceAccountKeyForSubmissionsArgs = {
709
727
  googleServiceAccountKeyId: Scalars['ID']['input'];
710
728
  id: Scalars['ID']['input'];
@@ -1798,6 +1816,7 @@ export type Build = ActivityTimelineProjectActivity & BuildOrBuildJob & {
1798
1816
  /** @deprecated User type is deprecated */
1799
1817
  initiatingUser?: Maybe<User>;
1800
1818
  iosEnterpriseProvisioning?: Maybe<BuildIosEnterpriseProvisioning>;
1819
+ isForIosSimulator: Scalars['Boolean']['output'];
1801
1820
  isGitWorkingTreeDirty?: Maybe<Scalars['Boolean']['output']>;
1802
1821
  isWaived: Scalars['Boolean']['output'];
1803
1822
  logFiles: Array<Scalars['String']['output']>;
@@ -1938,6 +1957,7 @@ export type BuildFilter = {
1938
1957
  platform?: InputMaybe<AppPlatform>;
1939
1958
  runtimeVersion?: InputMaybe<Scalars['String']['input']>;
1940
1959
  sdkVersion?: InputMaybe<Scalars['String']['input']>;
1960
+ simulator?: InputMaybe<Scalars['Boolean']['input']>;
1941
1961
  status?: InputMaybe<BuildStatus>;
1942
1962
  };
1943
1963
  export type BuildFilterInput = {
@@ -1946,6 +1966,7 @@ export type BuildFilterInput = {
1946
1966
  distributions?: InputMaybe<Array<DistributionType>>;
1947
1967
  platforms?: InputMaybe<Array<AppPlatform>>;
1948
1968
  releaseChannel?: InputMaybe<Scalars['String']['input']>;
1969
+ simulator?: InputMaybe<Scalars['Boolean']['input']>;
1949
1970
  };
1950
1971
  export declare enum BuildIosEnterpriseProvisioning {
1951
1972
  Adhoc = "ADHOC",
@@ -2049,6 +2070,7 @@ export type BuildMetadataInput = {
2049
2070
  runtimeVersion?: InputMaybe<Scalars['String']['input']>;
2050
2071
  sdkVersion?: InputMaybe<Scalars['String']['input']>;
2051
2072
  selectedImage?: InputMaybe<Scalars['String']['input']>;
2073
+ simulator?: InputMaybe<Scalars['Boolean']['input']>;
2052
2074
  trackingContext?: InputMaybe<Scalars['JSONObject']['input']>;
2053
2075
  username?: InputMaybe<Scalars['String']['input']>;
2054
2076
  workflow?: InputMaybe<BuildWorkflow>;
@@ -2201,6 +2223,7 @@ export type BuildPublicData = {
2201
2223
  artifacts: PublicArtifacts;
2202
2224
  distribution?: Maybe<DistributionType>;
2203
2225
  id: Scalars['ID']['output'];
2226
+ isForIosSimulator: Scalars['Boolean']['output'];
2204
2227
  platform: AppPlatform;
2205
2228
  project: ProjectPublicData;
2206
2229
  status: BuildStatus;
@@ -2374,6 +2397,7 @@ export type CreateGitHubBuildTriggerInput = {
2374
2397
  platform: AppPlatform;
2375
2398
  /** A branch or tag name, or a wildcard pattern where the code change originates from. For example, `main` or `release/*`. */
2376
2399
  sourcePattern: Scalars['String']['input'];
2400
+ submitProfile?: InputMaybe<Scalars['String']['input']>;
2377
2401
  /** A branch name or a wildcard pattern that the pull request targets. For example, `main` or `release/*`. */
2378
2402
  targetPattern?: InputMaybe<Scalars['String']['input']>;
2379
2403
  type: GitHubBuildTriggerType;
@@ -2848,6 +2872,7 @@ export type GitHubBuildTrigger = {
2848
2872
  lastRunStatus?: Maybe<GitHubBuildTriggerRunStatus>;
2849
2873
  platform: AppPlatform;
2850
2874
  sourcePattern: Scalars['String']['output'];
2875
+ submitProfile?: Maybe<Scalars['String']['output']>;
2851
2876
  targetPattern?: Maybe<Scalars['String']['output']>;
2852
2877
  type: GitHubBuildTriggerType;
2853
2878
  updatedAt: Scalars['DateTime']['output'];
@@ -3319,6 +3344,7 @@ export declare enum MailchimpAudience {
3319
3344
  }
3320
3345
  export declare enum MailchimpTag {
3321
3346
  DevClientUsers = "DEV_CLIENT_USERS",
3347
+ DidSubscribeToEasAtLeastOnce = "DID_SUBSCRIBE_TO_EAS_AT_LEAST_ONCE",
3322
3348
  EasMasterList = "EAS_MASTER_LIST",
3323
3349
  NewsletterSignupList = "NEWSLETTER_SIGNUP_LIST"
3324
3350
  }
@@ -3445,9 +3471,11 @@ export type Notification = {
3445
3471
  };
3446
3472
  export declare enum NotificationEvent {
3447
3473
  BuildComplete = "BUILD_COMPLETE",
3474
+ BuildErrored = "BUILD_ERRORED",
3448
3475
  BuildLimitThresholdExceeded = "BUILD_LIMIT_THRESHOLD_EXCEEDED",
3449
3476
  BuildPlanCreditThresholdExceeded = "BUILD_PLAN_CREDIT_THRESHOLD_EXCEEDED",
3450
3477
  SubmissionComplete = "SUBMISSION_COMPLETE",
3478
+ SubmissionErrored = "SUBMISSION_ERRORED",
3451
3479
  Test = "TEST"
3452
3480
  }
3453
3481
  export type NotificationMetadata = BuildLimitThresholdExceededMetadata | BuildPlanCreditThresholdExceededMetadata | TestNotificationMetadata;
@@ -4498,6 +4526,7 @@ export type UpdateGitHubBuildTriggerInput = {
4498
4526
  isActive: Scalars['Boolean']['input'];
4499
4527
  platform: AppPlatform;
4500
4528
  sourcePattern: Scalars['String']['input'];
4529
+ submitProfile?: InputMaybe<Scalars['String']['input']>;
4501
4530
  targetPattern?: InputMaybe<Scalars['String']['input']>;
4502
4531
  type: GitHubBuildTriggerType;
4503
4532
  };
@@ -5367,6 +5396,16 @@ export type CreateAndroidAppCredentialsMutation = {
5367
5396
  clientId?: string | null;
5368
5397
  };
5369
5398
  } | null;
5399
+ googleServiceAccountKeyForFcmV1?: {
5400
+ __typename?: 'GoogleServiceAccountKey';
5401
+ id: string;
5402
+ projectIdentifier: string;
5403
+ privateKeyIdentifier: string;
5404
+ clientEmail: string;
5405
+ clientIdentifier: string;
5406
+ createdAt: any;
5407
+ updatedAt: any;
5408
+ } | null;
5370
5409
  googleServiceAccountKeyForSubmissions?: {
5371
5410
  __typename?: 'GoogleServiceAccountKey';
5372
5411
  id: string;
@@ -5467,6 +5506,16 @@ export type SetFcmMutation = {
5467
5506
  clientId?: string | null;
5468
5507
  };
5469
5508
  } | null;
5509
+ googleServiceAccountKeyForFcmV1?: {
5510
+ __typename?: 'GoogleServiceAccountKey';
5511
+ id: string;
5512
+ projectIdentifier: string;
5513
+ privateKeyIdentifier: string;
5514
+ clientEmail: string;
5515
+ clientIdentifier: string;
5516
+ createdAt: any;
5517
+ updatedAt: any;
5518
+ } | null;
5470
5519
  googleServiceAccountKeyForSubmissions?: {
5471
5520
  __typename?: 'GoogleServiceAccountKey';
5472
5521
  id: string;
@@ -5567,6 +5616,126 @@ export type SetGoogleServiceAccountKeyForSubmissionsMutation = {
5567
5616
  clientId?: string | null;
5568
5617
  };
5569
5618
  } | null;
5619
+ googleServiceAccountKeyForFcmV1?: {
5620
+ __typename?: 'GoogleServiceAccountKey';
5621
+ id: string;
5622
+ projectIdentifier: string;
5623
+ privateKeyIdentifier: string;
5624
+ clientEmail: string;
5625
+ clientIdentifier: string;
5626
+ createdAt: any;
5627
+ updatedAt: any;
5628
+ } | null;
5629
+ googleServiceAccountKeyForSubmissions?: {
5630
+ __typename?: 'GoogleServiceAccountKey';
5631
+ id: string;
5632
+ projectIdentifier: string;
5633
+ privateKeyIdentifier: string;
5634
+ clientEmail: string;
5635
+ clientIdentifier: string;
5636
+ createdAt: any;
5637
+ updatedAt: any;
5638
+ } | null;
5639
+ androidAppBuildCredentialsList: Array<{
5640
+ __typename?: 'AndroidAppBuildCredentials';
5641
+ id: string;
5642
+ isDefault: boolean;
5643
+ isLegacy: boolean;
5644
+ name: string;
5645
+ androidKeystore?: {
5646
+ __typename?: 'AndroidKeystore';
5647
+ id: string;
5648
+ type: AndroidKeystoreType;
5649
+ keystore: string;
5650
+ keystorePassword: string;
5651
+ keyAlias: string;
5652
+ keyPassword?: string | null;
5653
+ md5CertificateFingerprint?: string | null;
5654
+ sha1CertificateFingerprint?: string | null;
5655
+ sha256CertificateFingerprint?: string | null;
5656
+ createdAt: any;
5657
+ updatedAt: any;
5658
+ } | null;
5659
+ }>;
5660
+ };
5661
+ };
5662
+ };
5663
+ export type SetGoogleServiceAccountKeyForFcmV1MutationVariables = Exact<{
5664
+ androidAppCredentialsId: Scalars['ID']['input'];
5665
+ googleServiceAccountKeyId: Scalars['ID']['input'];
5666
+ }>;
5667
+ export type SetGoogleServiceAccountKeyForFcmV1Mutation = {
5668
+ __typename?: 'RootMutation';
5669
+ androidAppCredentials: {
5670
+ __typename?: 'AndroidAppCredentialsMutation';
5671
+ setGoogleServiceAccountKeyForFcmV1: {
5672
+ __typename?: 'AndroidAppCredentials';
5673
+ id: string;
5674
+ applicationIdentifier?: string | null;
5675
+ isLegacy: boolean;
5676
+ app: {
5677
+ __typename?: 'App';
5678
+ id: string;
5679
+ fullName: string;
5680
+ slug: string;
5681
+ ownerAccount: {
5682
+ __typename?: 'Account';
5683
+ id: string;
5684
+ name: string;
5685
+ ownerUserActor?: {
5686
+ __typename?: 'SSOUser';
5687
+ id: string;
5688
+ username: string;
5689
+ } | {
5690
+ __typename?: 'User';
5691
+ id: string;
5692
+ username: string;
5693
+ } | null;
5694
+ users: Array<{
5695
+ __typename?: 'UserPermission';
5696
+ role: Role;
5697
+ actor: {
5698
+ __typename?: 'Robot';
5699
+ id: string;
5700
+ } | {
5701
+ __typename?: 'SSOUser';
5702
+ id: string;
5703
+ } | {
5704
+ __typename?: 'User';
5705
+ id: string;
5706
+ };
5707
+ }>;
5708
+ };
5709
+ };
5710
+ androidFcm?: {
5711
+ __typename?: 'AndroidFcm';
5712
+ id: string;
5713
+ credential: any;
5714
+ version: AndroidFcmVersion;
5715
+ createdAt: any;
5716
+ updatedAt: any;
5717
+ snippet: {
5718
+ __typename?: 'FcmSnippetLegacy';
5719
+ firstFourCharacters: string;
5720
+ lastFourCharacters: string;
5721
+ } | {
5722
+ __typename?: 'FcmSnippetV1';
5723
+ projectId: string;
5724
+ keyId: string;
5725
+ serviceAccountEmail: string;
5726
+ clientId?: string | null;
5727
+ };
5728
+ } | null;
5729
+ googleServiceAccountKeyForFcmV1?: {
5730
+ __typename?: 'GoogleServiceAccountKey';
5731
+ id: string;
5732
+ projectIdentifier: string;
5733
+ privateKeyIdentifier: string;
5734
+ clientEmail: string;
5735
+ clientIdentifier: string;
5736
+ createdAt: any;
5737
+ updatedAt: any;
5738
+ } | null;
5570
5739
  googleServiceAccountKeyForSubmissions?: {
5571
5740
  __typename?: 'GoogleServiceAccountKey';
5572
5741
  id: string;
@@ -5783,6 +5952,16 @@ export type CommonAndroidAppCredentialsWithBuildCredentialsByApplicationIdentifi
5783
5952
  clientId?: string | null;
5784
5953
  };
5785
5954
  } | null;
5955
+ googleServiceAccountKeyForFcmV1?: {
5956
+ __typename?: 'GoogleServiceAccountKey';
5957
+ id: string;
5958
+ projectIdentifier: string;
5959
+ privateKeyIdentifier: string;
5960
+ clientEmail: string;
5961
+ clientIdentifier: string;
5962
+ createdAt: any;
5963
+ updatedAt: any;
5964
+ } | null;
5786
5965
  googleServiceAccountKeyForSubmissions?: {
5787
5966
  __typename?: 'GoogleServiceAccountKey';
5788
5967
  id: string;
@@ -8381,6 +8560,7 @@ export type CreateAndroidBuildMutation = {
8381
8560
  completedAt?: any | null;
8382
8561
  resourceClass: BuildResourceClass;
8383
8562
  expirationDate?: any | null;
8563
+ isForIosSimulator: boolean;
8384
8564
  error?: {
8385
8565
  __typename?: 'BuildError';
8386
8566
  errorCode: string;
@@ -8470,6 +8650,7 @@ export type CreateIosBuildMutation = {
8470
8650
  completedAt?: any | null;
8471
8651
  resourceClass: BuildResourceClass;
8472
8652
  expirationDate?: any | null;
8653
+ isForIosSimulator: boolean;
8473
8654
  error?: {
8474
8655
  __typename?: 'BuildError';
8475
8656
  errorCode: string;
@@ -8555,6 +8736,7 @@ export type UpdateBuildMetadataMutation = {
8555
8736
  completedAt?: any | null;
8556
8737
  resourceClass: BuildResourceClass;
8557
8738
  expirationDate?: any | null;
8739
+ isForIosSimulator: boolean;
8558
8740
  error?: {
8559
8741
  __typename?: 'BuildError';
8560
8742
  errorCode: string;
@@ -8634,6 +8816,7 @@ export type RetryIosBuildMutation = {
8634
8816
  completedAt?: any | null;
8635
8817
  resourceClass: BuildResourceClass;
8636
8818
  expirationDate?: any | null;
8819
+ isForIosSimulator: boolean;
8637
8820
  error?: {
8638
8821
  __typename?: 'BuildError';
8639
8822
  errorCode: string;
@@ -9294,6 +9477,7 @@ export type BuildsByIdQuery = {
9294
9477
  completedAt?: any | null;
9295
9478
  resourceClass: BuildResourceClass;
9296
9479
  expirationDate?: any | null;
9480
+ isForIosSimulator: boolean;
9297
9481
  error?: {
9298
9482
  __typename?: 'BuildError';
9299
9483
  errorCode: string;
@@ -9372,6 +9556,7 @@ export type BuildsWithSubmissionsByIdQuery = {
9372
9556
  completedAt?: any | null;
9373
9557
  resourceClass: BuildResourceClass;
9374
9558
  expirationDate?: any | null;
9559
+ isForIosSimulator: boolean;
9375
9560
  submissions: Array<{
9376
9561
  __typename?: 'Submission';
9377
9562
  id: string;
@@ -9491,6 +9676,7 @@ export type ViewBuildsOnAppQuery = {
9491
9676
  completedAt?: any | null;
9492
9677
  resourceClass: BuildResourceClass;
9493
9678
  expirationDate?: any | null;
9679
+ isForIosSimulator: boolean;
9494
9680
  error?: {
9495
9681
  __typename?: 'BuildError';
9496
9682
  errorCode: string;
@@ -10370,6 +10556,7 @@ export type BuildFragment = {
10370
10556
  completedAt?: any | null;
10371
10557
  resourceClass: BuildResourceClass;
10372
10558
  expirationDate?: any | null;
10559
+ isForIosSimulator: boolean;
10373
10560
  error?: {
10374
10561
  __typename?: 'BuildError';
10375
10562
  errorCode: string;
@@ -10439,6 +10626,7 @@ export type BuildWithSubmissionsFragment = {
10439
10626
  completedAt?: any | null;
10440
10627
  resourceClass: BuildResourceClass;
10441
10628
  expirationDate?: any | null;
10629
+ isForIosSimulator: boolean;
10442
10630
  submissions: Array<{
10443
10631
  __typename?: 'Submission';
10444
10632
  id: string;
@@ -10755,6 +10943,16 @@ export type CommonAndroidAppCredentialsFragment = {
10755
10943
  clientId?: string | null;
10756
10944
  };
10757
10945
  } | null;
10946
+ googleServiceAccountKeyForFcmV1?: {
10947
+ __typename?: 'GoogleServiceAccountKey';
10948
+ id: string;
10949
+ projectIdentifier: string;
10950
+ privateKeyIdentifier: string;
10951
+ clientEmail: string;
10952
+ clientIdentifier: string;
10953
+ createdAt: any;
10954
+ updatedAt: any;
10955
+ } | null;
10758
10956
  googleServiceAccountKeyForSubmissions?: {
10759
10957
  __typename?: 'GoogleServiceAccountKey';
10760
10958
  id: string;
@@ -367,15 +367,18 @@ var MailchimpAudience;
367
367
  var MailchimpTag;
368
368
  (function (MailchimpTag) {
369
369
  MailchimpTag["DevClientUsers"] = "DEV_CLIENT_USERS";
370
+ MailchimpTag["DidSubscribeToEasAtLeastOnce"] = "DID_SUBSCRIBE_TO_EAS_AT_LEAST_ONCE";
370
371
  MailchimpTag["EasMasterList"] = "EAS_MASTER_LIST";
371
372
  MailchimpTag["NewsletterSignupList"] = "NEWSLETTER_SIGNUP_LIST";
372
373
  })(MailchimpTag || (exports.MailchimpTag = MailchimpTag = {}));
373
374
  var NotificationEvent;
374
375
  (function (NotificationEvent) {
375
376
  NotificationEvent["BuildComplete"] = "BUILD_COMPLETE";
377
+ NotificationEvent["BuildErrored"] = "BUILD_ERRORED";
376
378
  NotificationEvent["BuildLimitThresholdExceeded"] = "BUILD_LIMIT_THRESHOLD_EXCEEDED";
377
379
  NotificationEvent["BuildPlanCreditThresholdExceeded"] = "BUILD_PLAN_CREDIT_THRESHOLD_EXCEEDED";
378
380
  NotificationEvent["SubmissionComplete"] = "SUBMISSION_COMPLETE";
381
+ NotificationEvent["SubmissionErrored"] = "SUBMISSION_ERRORED";
379
382
  NotificationEvent["Test"] = "TEST";
380
383
  })(NotificationEvent || (exports.NotificationEvent = NotificationEvent = {}));
381
384
  var NotificationType;
@@ -59,6 +59,7 @@ exports.BuildFragmentNode = (0, graphql_tag_1.default) `
59
59
  completedAt
60
60
  resourceClass
61
61
  expirationDate
62
+ isForIosSimulator
62
63
  }
63
64
  `;
64
65
  exports.BuildFragmentWithSubmissionsNode = (0, graphql_tag_1.default) `
@@ -20,6 +20,10 @@ exports.CommonAndroidAppCredentialsFragmentNode = (0, graphql_tag_1.default) `
20
20
  id
21
21
  ...AndroidFcmFragment
22
22
  }
23
+ googleServiceAccountKeyForFcmV1 {
24
+ id
25
+ ...GoogleServiceAccountKeyFragment
26
+ }
23
27
  googleServiceAccountKeyForSubmissions {
24
28
  id
25
29
  ...GoogleServiceAccountKeyFragment
@@ -20,7 +20,7 @@ async function validateCustomBuildConfigAsync({ profile, projectDir, vcsClient,
20
20
  }
21
21
  try {
22
22
  const config = await (0, steps_1.readAndValidateBuildConfigAsync)(configPath, {
23
- skipNamespacedFunctionsCheck: true,
23
+ skipNamespacedFunctionsOrFunctionGroupsCheck: true,
24
24
  });
25
25
  return {
26
26
  workflowName: config.build.name,
@@ -68,13 +68,12 @@ export declare function convertAssetToUpdateInfoGroupFormatAsync(asset: RawAsset
68
68
  * This will be sorted later based on the platform's runtime versions.
69
69
  */
70
70
  export declare function buildUnsortedUpdateInfoGroupAsync(assets: CollectedAssets, exp: ExpoConfig): Promise<UpdateInfoGroup>;
71
- export declare function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, dev, }: {
71
+ export declare function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, }: {
72
72
  projectDir: string;
73
73
  inputDir: string;
74
74
  exp: Pick<ExpoConfig, 'sdkVersion' | 'web'>;
75
75
  platformFlag: ExpoCLIExportPlatformFlag;
76
76
  clearCache?: boolean;
77
- dev?: boolean;
78
77
  }): Promise<void>;
79
78
  export declare function resolveInputDirectoryAsync(inputDir: string, { skipBundler }: {
80
79
  skipBundler?: boolean;
@@ -117,7 +117,7 @@ async function buildUnsortedUpdateInfoGroupAsync(assets, exp) {
117
117
  return updateInfoGroup;
118
118
  }
119
119
  exports.buildUnsortedUpdateInfoGroupAsync = buildUnsortedUpdateInfoGroupAsync;
120
- async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, dev = false, }) {
120
+ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, }) {
121
121
  var _a;
122
122
  const packageJSON = json_file_1.default.read(path_1.default.resolve(projectDir, 'package.json'));
123
123
  if (!packageJSON) {
@@ -134,7 +134,6 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
134
134
  '--dump-sourcemap',
135
135
  '--dump-assetmap',
136
136
  `--platform=${platformFlag}`,
137
- ...(dev ? ['--dev'] : []),
138
137
  ...(clearCache ? ['--clear'] : []),
139
138
  ]);
140
139
  }
@@ -151,7 +150,6 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
151
150
  '--dump-sourcemap',
152
151
  '--dump-assetmap',
153
152
  ...platformArgs,
154
- ...(dev ? ['--dev'] : []),
155
153
  ...(clearCache ? ['--clear'] : []),
156
154
  ]);
157
155
  }
@@ -169,7 +167,6 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
169
167
  '--dump-sourcemap',
170
168
  '--dump-assetmap',
171
169
  `--platform=${platformFlag}`,
172
- ...(dev ? ['--dev'] : []),
173
170
  ...(clearCache ? ['--clear'] : []),
174
171
  ]);
175
172
  }
@@ -13,7 +13,7 @@ function isRunnableOnSimulatorOrEmulator(build) {
13
13
  var _a;
14
14
  return (build.status === generated_1.BuildStatus.Finished &&
15
15
  !!((_a = build.artifacts) === null || _a === void 0 ? void 0 : _a.applicationArchiveUrl) &&
16
- ((build.platform === generated_1.AppPlatform.Ios && build.distribution === generated_1.DistributionType.Simulator) ||
16
+ ((build.platform === generated_1.AppPlatform.Ios && build.isForIosSimulator) ||
17
17
  (build.platform === generated_1.AppPlatform.Android && !isAab(build))) &&
18
18
  !didArtifactsExpire(build));
19
19
  }
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
6
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
7
7
  const nullthrows_1 = tslib_1.__importDefault(require("nullthrows"));
8
- const SetUpGoogleServiceAccountKey_1 = require("../../credentials/android/actions/SetUpGoogleServiceAccountKey");
8
+ const SetUpGoogleServiceAccountKeyForSubmissions_1 = require("../../credentials/android/actions/SetUpGoogleServiceAccountKeyForSubmissions");
9
9
  const googleServiceAccountKey_1 = require("../../credentials/android/utils/googleServiceAccountKey");
10
10
  const log_1 = tslib_1.__importStar(require("../../log"));
11
11
  const applicationId_1 = require("../../project/android/applicationId");
@@ -67,7 +67,7 @@ async function getServiceAccountFromCredentialsServiceAsync(ctx, source) {
67
67
  androidApplicationIdentifier: (_a = source.androidApplicationIdentifier) !== null && _a !== void 0 ? _a : (await promptForApplicationIdAsync()),
68
68
  };
69
69
  log_1.default.log(`Looking up credentials configuration for ${appLookupParams.androidApplicationIdentifier}...`);
70
- const setupGoogleServiceAccountKeyAction = new SetUpGoogleServiceAccountKey_1.SetUpGoogleServiceAccountKey(appLookupParams);
70
+ const setupGoogleServiceAccountKeyAction = new SetUpGoogleServiceAccountKeyForSubmissions_1.SetUpGoogleServiceAccountKeyForSubmissions(appLookupParams);
71
71
  const androidAppCredentials = await setupGoogleServiceAccountKeyAction.runAsync(ctx.credentialsCtx);
72
72
  const googleServiceAccountKey = (0, nullthrows_1.default)(androidAppCredentials.googleServiceAccountKeyForSubmissions, 'Credentials Service must provide a valid GoogleServiceAccountKey');
73
73
  return {
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "7.1.2",
2
+ "version": "7.2.0",
3
3
  "commands": {
4
4
  "analytics": {
5
5
  "id": "analytics",
@@ -1008,6 +1008,12 @@
1008
1008
  "type": "boolean",
1009
1009
  "description": "Run the command in non-interactive mode.",
1010
1010
  "allowNo": false
1011
+ },
1012
+ "simulator": {
1013
+ "name": "simulator",
1014
+ "type": "boolean",
1015
+ "description": "Filter only iOS simulator builds. Can only be used with --platform flag set to \"ios\"",
1016
+ "allowNo": false
1011
1017
  }
1012
1018
  },
1013
1019
  "args": {},
@@ -2150,12 +2156,6 @@
2150
2156
  ],
2151
2157
  "default": "all"
2152
2158
  },
2153
- "dev": {
2154
- "name": "dev",
2155
- "type": "boolean",
2156
- "description": "Publish a development bundle",
2157
- "allowNo": false
2158
- },
2159
2159
  "auto": {
2160
2160
  "name": "auto",
2161
2161
  "type": "boolean",