eas-cli 20.3.0 → 20.4.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.
@@ -1062,7 +1062,6 @@ export type AndroidAppCredentialsMutationCreateAndroidAppCredentialsArgs = {
1062
1062
  applicationIdentifier: Scalars['String']['input'];
1063
1063
  };
1064
1064
  export type AndroidAppCredentialsMutationCreateFcmV1CredentialArgs = {
1065
- accountId?: InputMaybe<Scalars['ID']['input']>;
1066
1065
  androidAppCredentialsId: Scalars['String']['input'];
1067
1066
  credential: Scalars['String']['input'];
1068
1067
  };
@@ -1195,8 +1194,6 @@ export type AndroidJobOverridesInput = {
1195
1194
  };
1196
1195
  export type AndroidJobSecretsInput = {
1197
1196
  buildCredentials?: InputMaybe<AndroidJobBuildCredentialsInput>;
1198
- /** @deprecated Robot access token is no longer needed as it's generated server-side and injected into the builder environment automatically. */
1199
- robotAccessToken?: InputMaybe<Scalars['String']['input']>;
1200
1197
  };
1201
1198
  export type AndroidJobVersionInput = {
1202
1199
  versionCode: Scalars['String']['input'];
@@ -1221,8 +1218,6 @@ export type AndroidKeystoreInput = {
1221
1218
  keyAlias: Scalars['String']['input'];
1222
1219
  keyPassword?: InputMaybe<Scalars['String']['input']>;
1223
1220
  keystorePassword: Scalars['String']['input'];
1224
- /** @deprecated Type will be automatically inferred from keystore content. */
1225
- type?: InputMaybe<AndroidKeystoreType>;
1226
1221
  };
1227
1222
  export type AndroidKeystoreMutation = {
1228
1223
  __typename?: 'AndroidKeystoreMutation';
@@ -1323,7 +1318,7 @@ export type App = Project & {
1323
1318
  * @deprecated Classic updates have been deprecated.
1324
1319
  */
1325
1320
  icon?: Maybe<AppIcon>;
1326
- /** @deprecated Field no longer supported */
1321
+ /** @deprecated No longer supported */
1327
1322
  iconUrl?: Maybe<Scalars['String']['output']>;
1328
1323
  id: Scalars['ID']['output'];
1329
1324
  /** App query field for querying EAS Insights about this app */
@@ -1341,7 +1336,7 @@ export type App = Project & {
1341
1336
  /** @deprecated 'likes' have been deprecated. */
1342
1337
  isLikedByMe: Scalars['Boolean']['output'];
1343
1338
  lastDeletionAttemptTime?: Maybe<Scalars['DateTime']['output']>;
1344
- /** @deprecated Field no longer supported */
1339
+ /** @deprecated No longer supported */
1345
1340
  lastPublishedTime: Scalars['DateTime']['output'];
1346
1341
  /** Time of the last user activity (update, branch, submission). */
1347
1342
  latestActivity: Scalars['DateTime']['output'];
@@ -1361,9 +1356,9 @@ export type App = Project & {
1361
1356
  name: Scalars['String']['output'];
1362
1357
  observe: AppObserve;
1363
1358
  ownerAccount: Account;
1364
- /** @deprecated Field no longer supported */
1359
+ /** @deprecated No longer supported */
1365
1360
  packageName: Scalars['String']['output'];
1366
- /** @deprecated Field no longer supported */
1361
+ /** @deprecated No longer supported */
1367
1362
  packageUsername: Scalars['String']['output'];
1368
1363
  /**
1369
1364
  * android.playStoreUrl field from most recent classic update manifest
@@ -1373,7 +1368,7 @@ export type App = Project & {
1373
1368
  posthogProject?: Maybe<PostHogProject>;
1374
1369
  /** @deprecated No longer supported */
1375
1370
  privacy: Scalars['String']['output'];
1376
- /** @deprecated Field no longer supported */
1371
+ /** @deprecated No longer supported */
1377
1372
  privacySetting: AppPrivacy;
1378
1373
  profileImageUrl?: Maybe<Scalars['String']['output']>;
1379
1374
  /**
@@ -1433,7 +1428,7 @@ export type App = Project & {
1433
1428
  usageMetrics: AppUsageMetrics;
1434
1429
  /** @deprecated Use ownerAccount.name instead */
1435
1430
  username: Scalars['String']['output'];
1436
- /** @deprecated Field no longer supported */
1431
+ /** @deprecated No longer supported */
1437
1432
  users?: Maybe<Array<Maybe<User>>>;
1438
1433
  vexoApp?: Maybe<VexoApp>;
1439
1434
  /** Notification preferences of the viewer for this app */
@@ -1461,7 +1456,6 @@ export type AppActivityTimelineProjectActivitiesArgs = {
1461
1456
  createdBefore?: InputMaybe<Scalars['DateTime']['input']>;
1462
1457
  filterChannels?: InputMaybe<Array<Scalars['String']['input']>>;
1463
1458
  filterPlatforms?: InputMaybe<Array<AppPlatform>>;
1464
- filterReleaseChannels?: InputMaybe<Array<Scalars['String']['input']>>;
1465
1459
  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
1466
1460
  limit: Scalars['Int']['input'];
1467
1461
  };
@@ -1813,7 +1807,7 @@ export type AppFingerprintsConnection = {
1813
1807
  };
1814
1808
  export type AppIcon = {
1815
1809
  __typename?: 'AppIcon';
1816
- /** @deprecated Field no longer supported */
1810
+ /** @deprecated No longer supported */
1817
1811
  colorPalette?: Maybe<Scalars['JSON']['output']>;
1818
1812
  originalUrl: Scalars['String']['output'];
1819
1813
  primaryColor?: Maybe<Scalars['String']['output']>;
@@ -1825,8 +1819,6 @@ export type AppInfoInput = {
1825
1819
  export type AppInput = {
1826
1820
  accountId: Scalars['ID']['input'];
1827
1821
  appInfo?: InputMaybe<AppInfoInput>;
1828
- /** @deprecated Field no longer supported */
1829
- privacy?: InputMaybe<AppPrivacy>;
1830
1822
  projectName: Scalars['String']['input'];
1831
1823
  };
1832
1824
  export type AppInsights = {
@@ -1853,7 +1845,7 @@ export type AppMutation = {
1853
1845
  __typename?: 'AppMutation';
1854
1846
  /** Create an app */
1855
1847
  createApp: App;
1856
- /** @deprecated Field no longer supported */
1848
+ /** @deprecated No longer supported */
1857
1849
  grantAccess?: Maybe<App>;
1858
1850
  /** Remove profile image (icon) for the app. Do nothing if there's no profile image associated. */
1859
1851
  removeProfileImage: App;
@@ -2710,8 +2702,6 @@ export type AppWithGithubRepositoryInput = {
2710
2702
  accountId: Scalars['ID']['input'];
2711
2703
  appInfo?: InputMaybe<AppInfoInput>;
2712
2704
  installationIdentifier?: InputMaybe<Scalars['String']['input']>;
2713
- /** @deprecated Field no longer supported */
2714
- privacy?: InputMaybe<AppPrivacy>;
2715
2705
  projectName: Scalars['String']['input'];
2716
2706
  };
2717
2707
  export type AppWorkflowFilterInput = {
@@ -3509,11 +3499,7 @@ export type BuildArtifacts = {
3509
3499
  xcodeBuildLogsUrl?: Maybe<Scalars['String']['output']>;
3510
3500
  };
3511
3501
  export type BuildCacheInput = {
3512
- /** @deprecated We don't cache anything by default anymore */
3513
- cacheDefaultPaths?: InputMaybe<Scalars['Boolean']['input']>;
3514
3502
  clear?: InputMaybe<Scalars['Boolean']['input']>;
3515
- /** @deprecated We use paths now since there is no default caching anymore */
3516
- customPaths?: InputMaybe<Array<InputMaybe<Scalars['String']['input']>>>;
3517
3503
  disabled?: InputMaybe<Scalars['Boolean']['input']>;
3518
3504
  key?: InputMaybe<Scalars['String']['input']>;
3519
3505
  paths?: InputMaybe<Array<Scalars['String']['input']>>;
@@ -3577,8 +3563,6 @@ export type BuildMetadataInput = {
3577
3563
  appIdentifier?: InputMaybe<Scalars['String']['input']>;
3578
3564
  appName?: InputMaybe<Scalars['String']['input']>;
3579
3565
  appVersion?: InputMaybe<Scalars['String']['input']>;
3580
- /** @deprecated Use job.mode instead. */
3581
- buildMode?: InputMaybe<BuildMode>;
3582
3566
  buildProfile?: InputMaybe<Scalars['String']['input']>;
3583
3567
  channel?: InputMaybe<Scalars['String']['input']>;
3584
3568
  cliVersion?: InputMaybe<Scalars['String']['input']>;
@@ -3604,8 +3588,6 @@ export type BuildMetadataInput = {
3604
3588
  runWithNoWaitFlag?: InputMaybe<Scalars['Boolean']['input']>;
3605
3589
  runtimeVersion?: InputMaybe<Scalars['String']['input']>;
3606
3590
  sdkVersion?: InputMaybe<Scalars['String']['input']>;
3607
- /** @deprecated Unused. */
3608
- selectedImage?: InputMaybe<Scalars['String']['input']>;
3609
3591
  simulator?: InputMaybe<Scalars['Boolean']['input']>;
3610
3592
  trackingContext?: InputMaybe<Scalars['JSONObject']['input']>;
3611
3593
  username?: InputMaybe<Scalars['String']['input']>;
@@ -3747,7 +3729,7 @@ export declare enum BuildPhase {
3747
3729
  StartBuild = "START_BUILD",
3748
3730
  Unknown = "UNKNOWN",
3749
3731
  UploadApplicationArchive = "UPLOAD_APPLICATION_ARCHIVE",
3750
- /** @deprecated Field no longer supported */
3732
+ /** @deprecated No longer supported */
3751
3733
  UploadArtifacts = "UPLOAD_ARTIFACTS",
3752
3734
  UploadBuildArtifacts = "UPLOAD_BUILD_ARTIFACTS"
3753
3735
  }
@@ -4044,6 +4026,16 @@ export type CreateConvexTeamConnectionInput = {
4044
4026
  convexTeamName?: InputMaybe<Scalars['String']['input']>;
4045
4027
  deploymentRegion: Scalars['String']['input'];
4046
4028
  };
4029
+ export type CreateDeviceRunSessionArtifactUploadSessionInput = {
4030
+ filename: Scalars['String']['input'];
4031
+ metadata?: InputMaybe<Scalars['JSONObject']['input']>;
4032
+ name: Scalars['String']['input'];
4033
+ size: Scalars['Int']['input'];
4034
+ };
4035
+ export type CreateDeviceRunSessionArtifactUploadSessionResult = {
4036
+ __typename?: 'CreateDeviceRunSessionArtifactUploadSessionResult';
4037
+ uploadSession: DeviceRunSessionArtifactUploadSession;
4038
+ };
4047
4039
  export type CreateDeviceRunSessionInput = {
4048
4040
  appId: Scalars['ID']['input'];
4049
4041
  /**
@@ -4213,8 +4205,6 @@ export type CreateSentryProjectInput = {
4213
4205
  export type CreateSharedEnvironmentVariableInput = {
4214
4206
  environments?: InputMaybe<Array<Scalars['EnvironmentVariableEnvironment']['input']>>;
4215
4207
  fileName?: InputMaybe<Scalars['String']['input']>;
4216
- /** @deprecated Whether the variable is global is now governed by its scope - account / app. */
4217
- isGlobal?: InputMaybe<Scalars['Boolean']['input']>;
4218
4208
  name: Scalars['String']['input'];
4219
4209
  overwrite?: InputMaybe<Scalars['Boolean']['input']>;
4220
4210
  type?: InputMaybe<EnvironmentSecretType>;
@@ -4586,6 +4576,11 @@ export type DeviceRunSession = {
4586
4576
  type: DeviceRunSessionType;
4587
4577
  updatedAt: Scalars['DateTime']['output'];
4588
4578
  };
4579
+ export type DeviceRunSessionArtifactUploadSession = {
4580
+ __typename?: 'DeviceRunSessionArtifactUploadSession';
4581
+ headers: Scalars['JSONObject']['output'];
4582
+ url: Scalars['String']['output'];
4583
+ };
4589
4584
  export type DeviceRunSessionFilterInput = {
4590
4585
  platforms?: InputMaybe<Array<AppPlatform>>;
4591
4586
  statuses?: InputMaybe<Array<DeviceRunSessionStatus>>;
@@ -4593,6 +4588,8 @@ export type DeviceRunSessionFilterInput = {
4593
4588
  };
4594
4589
  export type DeviceRunSessionMutation = {
4595
4590
  __typename?: 'DeviceRunSessionMutation';
4591
+ /** Create an upload session for an artifact produced by an active device run session */
4592
+ createArtifactUploadSession: CreateDeviceRunSessionArtifactUploadSessionResult;
4596
4593
  /** Create a device run session */
4597
4594
  createDeviceRunSession: DeviceRunSession;
4598
4595
  /**
@@ -4604,6 +4601,10 @@ export type DeviceRunSessionMutation = {
4604
4601
  /** Mark a device run session as started and persist remote connection details */
4605
4602
  startDeviceRunSession: DeviceRunSession;
4606
4603
  };
4604
+ export type DeviceRunSessionMutationCreateArtifactUploadSessionArgs = {
4605
+ deviceRunSessionId: Scalars['ID']['input'];
4606
+ input: CreateDeviceRunSessionArtifactUploadSessionInput;
4607
+ };
4607
4608
  export type DeviceRunSessionMutationCreateDeviceRunSessionArgs = {
4608
4609
  deviceRunSessionInput: CreateDeviceRunSessionInput;
4609
4610
  };
@@ -6453,8 +6454,6 @@ export type IosJobOverridesInput = {
6453
6454
  };
6454
6455
  export type IosJobSecretsInput = {
6455
6456
  buildCredentials?: InputMaybe<Array<InputMaybe<IosJobTargetCredentialsInput>>>;
6456
- /** @deprecated Robot access token is no longer needed as it's generated server-side and injected into the builder environment automatically. */
6457
- robotAccessToken?: InputMaybe<Scalars['String']['input']>;
6458
6457
  };
6459
6458
  export type IosJobTargetCredentialsInput = {
6460
6459
  distributionCertificate: IosJobDistributionCertificateInput;
@@ -6494,7 +6493,7 @@ export type JobRun = {
6494
6493
  __typename?: 'JobRun';
6495
6494
  app: App;
6496
6495
  artifacts: Array<WorkflowArtifact>;
6497
- /** @deprecated Field no longer supported */
6496
+ /** @deprecated No longer supported */
6498
6497
  childJobRun?: Maybe<JobRun>;
6499
6498
  createdAt: Scalars['DateTime']['output'];
6500
6499
  displayName?: Maybe<Scalars['String']['output']>;
@@ -7030,7 +7029,7 @@ export declare enum PostHogRegion {
7030
7029
  export type Project = {
7031
7030
  description: Scalars['String']['output'];
7032
7031
  fullName: Scalars['String']['output'];
7033
- /** @deprecated Field no longer supported */
7032
+ /** @deprecated No longer supported */
7034
7033
  iconUrl?: Maybe<Scalars['String']['output']>;
7035
7034
  id: Scalars['ID']['output'];
7036
7035
  name: Scalars['String']['output'];
@@ -7092,8 +7091,6 @@ export type PublishUpdateGroupInput = {
7092
7091
  message?: InputMaybe<Scalars['String']['input']>;
7093
7092
  rollBackToEmbeddedInfoGroup?: InputMaybe<UpdateRollBackToEmbeddedGroup>;
7094
7093
  rolloutInfoGroup?: InputMaybe<UpdateRolloutInfoGroup>;
7095
- /** @deprecated Use fingerprintInfoGroup instead */
7096
- runtimeFingerprintSource?: InputMaybe<FingerprintSourceInput>;
7097
7094
  runtimeVersion: Scalars['String']['input'];
7098
7095
  turtleJobRunId?: InputMaybe<Scalars['String']['input']>;
7099
7096
  updateInfoGroup?: InputMaybe<UpdateInfoGroup>;
@@ -7657,7 +7654,7 @@ export type SsoUser = Actor & UserActor & {
7657
7654
  /** Coalesced project activity for all apps belonging to all accounts this user belongs to. Only resolves for the viewer. */
7658
7655
  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
7659
7656
  appCount: Scalars['Int']['output'];
7660
- /** @deprecated Field no longer supported */
7657
+ /** @deprecated No longer supported */
7661
7658
  appetizeCode?: Maybe<Scalars['String']['output']>;
7662
7659
  /**
7663
7660
  * Apps this user has published. If this user is the viewer, this field returns the apps the user has access to.
@@ -7680,16 +7677,16 @@ export type SsoUser = Actor & UserActor & {
7680
7677
  fullName?: Maybe<Scalars['String']['output']>;
7681
7678
  /** GitHub account linked to a user */
7682
7679
  githubUser?: Maybe<GitHubUser>;
7683
- /** @deprecated Field no longer supported */
7680
+ /** @deprecated No longer supported */
7684
7681
  githubUsername?: Maybe<Scalars['String']['output']>;
7685
7682
  id: Scalars['ID']['output'];
7686
- /** @deprecated Field no longer supported */
7683
+ /** @deprecated No longer supported */
7687
7684
  industry?: Maybe<Scalars['String']['output']>;
7688
7685
  isExpoAdmin: Scalars['Boolean']['output'];
7689
7686
  isStaffModeEnabled: Scalars['Boolean']['output'];
7690
7687
  lastDeletionAttemptTime?: Maybe<Scalars['DateTime']['output']>;
7691
7688
  lastName?: Maybe<Scalars['String']['output']>;
7692
- /** @deprecated Field no longer supported */
7689
+ /** @deprecated No longer supported */
7693
7690
  location?: Maybe<Scalars['String']['output']>;
7694
7691
  pinnedApps: Array<App>;
7695
7692
  pinnedDashboardViews: Array<PinnedDashboardView>;
@@ -7701,7 +7698,7 @@ export type SsoUser = Actor & UserActor & {
7701
7698
  profilePhoto: Scalars['String']['output'];
7702
7699
  /** Snacks associated with this account */
7703
7700
  snacks: Array<Snack>;
7704
- /** @deprecated Field no longer supported */
7701
+ /** @deprecated No longer supported */
7705
7702
  twitterUsername?: Maybe<Scalars['String']['output']>;
7706
7703
  username: Scalars['String']['output'];
7707
7704
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
@@ -7736,15 +7733,7 @@ export type SsoUserWebsiteNotificationsPaginatedArgs = {
7736
7733
  };
7737
7734
  export type SsoUserDataInput = {
7738
7735
  firstName?: InputMaybe<Scalars['String']['input']>;
7739
- /** @deprecated Field no longer supported */
7740
- githubUsername?: InputMaybe<Scalars['String']['input']>;
7741
- /** @deprecated Field no longer supported */
7742
- industry?: InputMaybe<Scalars['String']['input']>;
7743
7736
  lastName?: InputMaybe<Scalars['String']['input']>;
7744
- /** @deprecated Field no longer supported */
7745
- location?: InputMaybe<Scalars['String']['input']>;
7746
- /** @deprecated Field no longer supported */
7747
- twitterUsername?: InputMaybe<Scalars['String']['input']>;
7748
7737
  };
7749
7738
  export type SecondFactorBooleanResult = {
7750
7739
  __typename?: 'SecondFactorBooleanResult';
@@ -7873,7 +7862,7 @@ export type Snack = Project & {
7873
7862
  /** Has the Snack been run without errors */
7874
7863
  hasBeenRunSuccessfully?: Maybe<Scalars['Boolean']['output']>;
7875
7864
  hashId: Scalars['String']['output'];
7876
- /** @deprecated Field no longer supported */
7865
+ /** @deprecated No longer supported */
7877
7866
  iconUrl?: Maybe<Scalars['String']['output']>;
7878
7867
  id: Scalars['ID']['output'];
7879
7868
  /** Draft status, which is true when the Snack was not saved explicitly, but auto-saved */
@@ -8533,8 +8522,6 @@ export type UpdateEnvironmentVariableInput = {
8533
8522
  environments?: InputMaybe<Array<Scalars['EnvironmentVariableEnvironment']['input']>>;
8534
8523
  fileName?: InputMaybe<Scalars['String']['input']>;
8535
8524
  id: Scalars['ID']['input'];
8536
- /** @deprecated You cannot change whether the variable is global. */
8537
- isGlobal?: InputMaybe<Scalars['Boolean']['input']>;
8538
8525
  name?: InputMaybe<Scalars['String']['input']>;
8539
8526
  type?: InputMaybe<EnvironmentSecretType>;
8540
8527
  value?: InputMaybe<Scalars['String']['input']>;
@@ -8655,8 +8642,6 @@ export type UpdateVexoAppInput = {
8655
8642
  export type UpdatesFilter = {
8656
8643
  platform?: InputMaybe<AppPlatform>;
8657
8644
  runtimeVersions?: InputMaybe<Array<Scalars['String']['input']>>;
8658
- /** @deprecated Use runtimeVersions instead. */
8659
- sdkVersions?: InputMaybe<Array<Scalars['String']['input']>>;
8660
8645
  };
8661
8646
  export type UpdatesFilterV2 = {
8662
8647
  platform?: InputMaybe<AppPlatform>;
@@ -8753,7 +8738,7 @@ export type User = Actor & UserActor & {
8753
8738
  /** Coalesced project activity for all apps belonging to all accounts this user belongs to. Only resolves for the viewer. */
8754
8739
  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
8755
8740
  appCount: Scalars['Int']['output'];
8756
- /** @deprecated Field no longer supported */
8741
+ /** @deprecated No longer supported */
8757
8742
  appetizeCode?: Maybe<Scalars['String']['output']>;
8758
8743
  /**
8759
8744
  * Apps this user has published
@@ -8778,22 +8763,22 @@ export type User = Actor & UserActor & {
8778
8763
  fullName?: Maybe<Scalars['String']['output']>;
8779
8764
  /** GitHub account linked to a user */
8780
8765
  githubUser?: Maybe<GitHubUser>;
8781
- /** @deprecated Field no longer supported */
8766
+ /** @deprecated No longer supported */
8782
8767
  githubUsername?: Maybe<Scalars['String']['output']>;
8783
8768
  hasPassword: Scalars['Boolean']['output'];
8784
8769
  /** Whether this user has any pending user invitations. Only resolves for the viewer. */
8785
8770
  hasPendingUserInvitations: Scalars['Boolean']['output'];
8786
8771
  id: Scalars['ID']['output'];
8787
- /** @deprecated Field no longer supported */
8772
+ /** @deprecated No longer supported */
8788
8773
  industry?: Maybe<Scalars['String']['output']>;
8789
8774
  isExpoAdmin: Scalars['Boolean']['output'];
8790
- /** @deprecated Field no longer supported */
8775
+ /** @deprecated No longer supported */
8791
8776
  isLegacy: Scalars['Boolean']['output'];
8792
8777
  isSecondFactorAuthenticationEnabled: Scalars['Boolean']['output'];
8793
8778
  isStaffModeEnabled: Scalars['Boolean']['output'];
8794
8779
  lastDeletionAttemptTime?: Maybe<Scalars['DateTime']['output']>;
8795
8780
  lastName?: Maybe<Scalars['String']['output']>;
8796
- /** @deprecated Field no longer supported */
8781
+ /** @deprecated No longer supported */
8797
8782
  location?: Maybe<Scalars['String']['output']>;
8798
8783
  newEmailPendingVerification?: Maybe<Scalars['String']['output']>;
8799
8784
  oAuthIdentities: Array<OAuthIdentity>;
@@ -8813,7 +8798,7 @@ export type User = Actor & UserActor & {
8813
8798
  secondFactorDevices: Array<UserSecondFactorDevice>;
8814
8799
  /** Snacks associated with this account */
8815
8800
  snacks: Array<Snack>;
8816
- /** @deprecated Field no longer supported */
8801
+ /** @deprecated No longer supported */
8817
8802
  twitterUsername?: Maybe<Scalars['String']['output']>;
8818
8803
  username: Scalars['String']['output'];
8819
8804
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
@@ -8857,7 +8842,7 @@ export type UserActor = {
8857
8842
  */
8858
8843
  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
8859
8844
  appCount: Scalars['Int']['output'];
8860
- /** @deprecated Field no longer supported */
8845
+ /** @deprecated No longer supported */
8861
8846
  appetizeCode?: Maybe<Scalars['String']['output']>;
8862
8847
  /**
8863
8848
  * Apps this user has published
@@ -8884,16 +8869,16 @@ export type UserActor = {
8884
8869
  fullName?: Maybe<Scalars['String']['output']>;
8885
8870
  /** GitHub account linked to a user */
8886
8871
  githubUser?: Maybe<GitHubUser>;
8887
- /** @deprecated Field no longer supported */
8872
+ /** @deprecated No longer supported */
8888
8873
  githubUsername?: Maybe<Scalars['String']['output']>;
8889
8874
  id: Scalars['ID']['output'];
8890
- /** @deprecated Field no longer supported */
8875
+ /** @deprecated No longer supported */
8891
8876
  industry?: Maybe<Scalars['String']['output']>;
8892
8877
  isExpoAdmin: Scalars['Boolean']['output'];
8893
8878
  isStaffModeEnabled: Scalars['Boolean']['output'];
8894
8879
  lastDeletionAttemptTime?: Maybe<Scalars['DateTime']['output']>;
8895
8880
  lastName?: Maybe<Scalars['String']['output']>;
8896
- /** @deprecated Field no longer supported */
8881
+ /** @deprecated No longer supported */
8897
8882
  location?: Maybe<Scalars['String']['output']>;
8898
8883
  pinnedApps: Array<App>;
8899
8884
  preferences: UserPreferences;
@@ -8904,7 +8889,7 @@ export type UserActor = {
8904
8889
  profilePhoto: Scalars['String']['output'];
8905
8890
  /** Snacks associated with this user's personal account */
8906
8891
  snacks: Array<Snack>;
8907
- /** @deprecated Field no longer supported */
8892
+ /** @deprecated No longer supported */
8908
8893
  twitterUsername?: Maybe<Scalars['String']['output']>;
8909
8894
  username: Scalars['String']['output'];
8910
8895
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
@@ -9102,22 +9087,12 @@ export type UserDashboardViewPinMutationUnpinDashboardViewArgs = {
9102
9087
  accountId: Scalars['ID']['input'];
9103
9088
  };
9104
9089
  export type UserDataInput = {
9105
- /** @deprecated Field no longer supported */
9106
- appetizeCode?: InputMaybe<Scalars['String']['input']>;
9107
9090
  email?: InputMaybe<Scalars['String']['input']>;
9108
9091
  firstName?: InputMaybe<Scalars['String']['input']>;
9109
9092
  fullName?: InputMaybe<Scalars['String']['input']>;
9110
- /** @deprecated Field no longer supported */
9111
- githubUsername?: InputMaybe<Scalars['String']['input']>;
9112
9093
  id?: InputMaybe<Scalars['ID']['input']>;
9113
- /** @deprecated Field no longer supported */
9114
- industry?: InputMaybe<Scalars['String']['input']>;
9115
9094
  lastName?: InputMaybe<Scalars['String']['input']>;
9116
- /** @deprecated Field no longer supported */
9117
- location?: InputMaybe<Scalars['String']['input']>;
9118
9095
  profilePhoto?: InputMaybe<Scalars['String']['input']>;
9119
- /** @deprecated Field no longer supported */
9120
- twitterUsername?: InputMaybe<Scalars['String']['input']>;
9121
9096
  username?: InputMaybe<Scalars['String']['input']>;
9122
9097
  };
9123
9098
  export declare enum UserEntityTypeName {
@@ -18290,6 +18265,7 @@ export type AppObserveEventsQuery = {
18290
18265
  sessionId?: string | null;
18291
18266
  easClientId: string;
18292
18267
  customParams?: any | null;
18268
+ routeName?: string | null;
18293
18269
  };
18294
18270
  }>;
18295
18271
  };
@@ -20672,6 +20648,7 @@ export type AppObserveEventFragment = {
20672
20648
  sessionId?: string | null;
20673
20649
  easClientId: string;
20674
20650
  customParams?: any | null;
20651
+ routeName?: string | null;
20675
20652
  };
20676
20653
  export type AppObserveAppVersionFragment = {
20677
20654
  __typename?: 'AppObserveAppVersion';
@@ -311,7 +311,7 @@ var BuildPhase;
311
311
  BuildPhase["StartBuild"] = "START_BUILD";
312
312
  BuildPhase["Unknown"] = "UNKNOWN";
313
313
  BuildPhase["UploadApplicationArchive"] = "UPLOAD_APPLICATION_ARCHIVE";
314
- /** @deprecated Field no longer supported */
314
+ /** @deprecated No longer supported */
315
315
  BuildPhase["UploadArtifacts"] = "UPLOAD_ARTIFACTS";
316
316
  BuildPhase["UploadBuildArtifacts"] = "UPLOAD_BUILD_ARTIFACTS";
317
317
  })(BuildPhase || (exports.BuildPhase = BuildPhase = {}));
@@ -61,6 +61,7 @@ exports.AppObserveEventFragmentNode = (0, graphql_tag_1.default) `
61
61
  sessionId
62
62
  easClientId
63
63
  customParams
64
+ routeName
64
65
  }
65
66
  `;
66
67
  exports.AppObserveAppVersionFragmentNode = (0, graphql_tag_1.default) `
@@ -4,8 +4,8 @@ interface FetchCustomEventsOptions {
4
4
  eventName?: string;
5
5
  limit: number;
6
6
  after?: string;
7
- startTime: string;
8
- endTime: string;
7
+ startTime?: string;
8
+ endTime?: string;
9
9
  platform?: AppObservePlatform;
10
10
  appVersion?: string;
11
11
  updateId?: string;
@@ -4,8 +4,8 @@ exports.fetchObserveCustomEventsAsync = fetchObserveCustomEventsAsync;
4
4
  const ObserveQuery_1 = require("../graphql/queries/ObserveQuery");
5
5
  async function fetchObserveCustomEventsAsync(graphqlClient, appId, options) {
6
6
  const filter = {
7
- startTime: options.startTime,
8
- endTime: options.endTime,
7
+ ...(options.startTime && { startTime: options.startTime }),
8
+ ...(options.endTime && { endTime: options.endTime }),
9
9
  ...(options.eventName && { eventName: options.eventName }),
10
10
  ...(options.platform && { platform: options.platform }),
11
11
  ...(options.appVersion && { appVersion: options.appVersion }),
@@ -8,15 +8,16 @@ export declare enum EventsOrderPreset {
8
8
  }
9
9
  export declare function resolveOrderBy(input: string): AppObserveEventsOrderBy;
10
10
  interface FetchObserveEventsOptions {
11
- metricName: string;
11
+ metricName?: string;
12
12
  orderBy: AppObserveEventsOrderBy;
13
13
  limit: number;
14
14
  after?: string;
15
- startTime: string;
16
- endTime: string;
15
+ startTime?: string;
16
+ endTime?: string;
17
17
  platform?: AppObservePlatform;
18
18
  appVersion?: string;
19
19
  updateId?: string;
20
+ sessionId?: string;
20
21
  }
21
22
  interface FetchObserveEventsResult {
22
23
  events: AppObserveEvent[];
@@ -40,12 +40,13 @@ function resolveOrderBy(input) {
40
40
  }
41
41
  async function fetchObserveEventsAsync(graphqlClient, appId, options) {
42
42
  const filter = {
43
- metricName: options.metricName,
44
- startTime: options.startTime,
45
- endTime: options.endTime,
43
+ ...(options.startTime && { startTime: options.startTime }),
44
+ ...(options.endTime && { endTime: options.endTime }),
45
+ ...(options.metricName && { metricName: options.metricName }),
46
46
  ...(options.platform && { platform: options.platform }),
47
47
  ...(options.appVersion && { appVersion: options.appVersion }),
48
48
  ...(options.updateId && { appUpdateId: options.updateId }),
49
+ ...(options.sessionId && { sessionId: options.sessionId }),
49
50
  };
50
51
  return await ObserveQuery_1.ObserveQuery.eventsAsync(graphqlClient, {
51
52
  appId,
@@ -0,0 +1,51 @@
1
+ import { ExpoGraphqlClient } from '../commandUtils/context/contextUtils/createGraphqlClient';
2
+ export interface SessionEventEntry {
3
+ source: 'metric' | 'log';
4
+ timestamp: string;
5
+ sessionId: string;
6
+ appVersion: string;
7
+ appBuildNumber: string;
8
+ appUpdateId: string | null;
9
+ deviceModel: string;
10
+ deviceOs: string;
11
+ deviceOsVersion: string;
12
+ countryCode: string | null;
13
+ easClientId: string;
14
+ metricName?: string;
15
+ metricValue?: number;
16
+ customParams?: {
17
+ [key: string]: any;
18
+ } | null;
19
+ routeName?: string | null;
20
+ eventName?: string;
21
+ severityText?: string | null;
22
+ severityNumber?: number | null;
23
+ properties?: Array<{
24
+ key: string;
25
+ value: string;
26
+ type: string;
27
+ }>;
28
+ environment?: string | null;
29
+ }
30
+ export interface SessionMetadata {
31
+ appVersion: string;
32
+ appBuildNumber: string;
33
+ appUpdateId: string | null;
34
+ deviceOs: string;
35
+ deviceOsVersion: string;
36
+ deviceModel: string;
37
+ countryCode: string | null;
38
+ firstSeenAt: string;
39
+ lastSeenAt: string;
40
+ }
41
+ export interface FetchSessionEventsOptions {
42
+ sessionId: string;
43
+ limit: number;
44
+ }
45
+ export interface FetchSessionEventsResult {
46
+ entries: SessionEventEntry[];
47
+ metadata: SessionMetadata | null;
48
+ hasMoreMetricEvents: boolean;
49
+ hasMoreLogEvents: boolean;
50
+ }
51
+ export declare function fetchObserveSessionEventsAsync(graphqlClient: ExpoGraphqlClient, appId: string, options: FetchSessionEventsOptions): Promise<FetchSessionEventsResult>;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchObserveSessionEventsAsync = fetchObserveSessionEventsAsync;
4
+ const generated_1 = require("../graphql/generated");
5
+ const fetchCustomEvents_1 = require("./fetchCustomEvents");
6
+ const fetchEvents_1 = require("./fetchEvents");
7
+ function metricEventToEntry(event) {
8
+ return {
9
+ source: 'metric',
10
+ timestamp: event.timestamp,
11
+ sessionId: event.sessionId ?? '',
12
+ appVersion: event.appVersion,
13
+ appBuildNumber: event.appBuildNumber,
14
+ appUpdateId: event.appUpdateId ?? null,
15
+ deviceModel: event.deviceModel,
16
+ deviceOs: event.deviceOs,
17
+ deviceOsVersion: event.deviceOsVersion,
18
+ countryCode: event.countryCode ?? null,
19
+ easClientId: event.easClientId,
20
+ metricName: event.metricName,
21
+ metricValue: event.metricValue,
22
+ customParams: event.customParams ?? null,
23
+ routeName: event.routeName ?? null,
24
+ };
25
+ }
26
+ function customEventToEntry(event) {
27
+ return {
28
+ source: 'log',
29
+ timestamp: event.timestamp,
30
+ sessionId: event.sessionId ?? '',
31
+ appVersion: event.appVersion,
32
+ appBuildNumber: event.appBuildNumber,
33
+ appUpdateId: event.appUpdateId ?? null,
34
+ deviceModel: event.deviceModel,
35
+ deviceOs: event.deviceOs,
36
+ deviceOsVersion: event.deviceOsVersion,
37
+ countryCode: event.countryCode ?? null,
38
+ easClientId: event.easClientId,
39
+ eventName: event.eventName,
40
+ severityText: event.severityText ?? null,
41
+ severityNumber: event.severityNumber ?? null,
42
+ properties: event.properties.map(p => ({ key: p.key, value: p.value, type: p.type })),
43
+ environment: event.environment ?? null,
44
+ };
45
+ }
46
+ async function fetchObserveSessionEventsAsync(graphqlClient, appId, options) {
47
+ const [metricResult, logResult] = await Promise.all([
48
+ (0, fetchEvents_1.fetchObserveEventsAsync)(graphqlClient, appId, {
49
+ orderBy: {
50
+ field: generated_1.AppObserveEventsOrderByField.Timestamp,
51
+ direction: generated_1.AppObserveEventsOrderByDirection.Asc,
52
+ },
53
+ limit: options.limit,
54
+ sessionId: options.sessionId,
55
+ }),
56
+ (0, fetchCustomEvents_1.fetchObserveCustomEventsAsync)(graphqlClient, appId, {
57
+ limit: options.limit,
58
+ sessionId: options.sessionId,
59
+ }),
60
+ ]);
61
+ const entries = [
62
+ ...metricResult.events.map(metricEventToEntry),
63
+ ...logResult.events.map(customEventToEntry),
64
+ ].sort((a, b) => (a.timestamp < b.timestamp ? -1 : a.timestamp > b.timestamp ? 1 : 0));
65
+ let metadata = null;
66
+ if (entries.length > 0) {
67
+ const newest = entries[entries.length - 1];
68
+ metadata = {
69
+ appVersion: newest.appVersion,
70
+ appBuildNumber: newest.appBuildNumber,
71
+ appUpdateId: newest.appUpdateId,
72
+ deviceOs: newest.deviceOs,
73
+ deviceOsVersion: newest.deviceOsVersion,
74
+ deviceModel: newest.deviceModel,
75
+ countryCode: newest.countryCode,
76
+ firstSeenAt: entries[0].timestamp,
77
+ lastSeenAt: newest.timestamp,
78
+ };
79
+ }
80
+ return {
81
+ entries,
82
+ metadata,
83
+ hasMoreMetricEvents: metricResult.pageInfo.hasNextPage,
84
+ hasMoreLogEvents: logResult.pageInfo.hasNextPage,
85
+ };
86
+ }