eas-cli 5.2.0 → 5.3.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.
@@ -678,6 +678,7 @@ export declare enum AndroidBuildType {
678
678
  DevelopmentClient = "DEVELOPMENT_CLIENT"
679
679
  }
680
680
  export type AndroidBuilderEnvironmentInput = {
681
+ bun?: InputMaybe<Scalars['String']>;
681
682
  env?: InputMaybe<Scalars['JSONObject']>;
682
683
  expoCli?: InputMaybe<Scalars['String']>;
683
684
  image?: InputMaybe<Scalars['String']>;
@@ -1823,6 +1824,7 @@ export declare enum BuildCredentialsSource {
1823
1824
  }
1824
1825
  export type BuildError = {
1825
1826
  __typename?: 'BuildError';
1827
+ buildPhase?: Maybe<BuildPhase>;
1826
1828
  docsUrl?: Maybe<Scalars['String']>;
1827
1829
  errorCode: Scalars['String'];
1828
1830
  message: Scalars['String'];
@@ -2036,6 +2038,49 @@ export type BuildParamsInput = {
2036
2038
  resourceClass: BuildResourceClass;
2037
2039
  sdkVersion?: InputMaybe<Scalars['String']>;
2038
2040
  };
2041
+ export declare enum BuildPhase {
2042
+ BuilderInfo = "BUILDER_INFO",
2043
+ CleanUpCredentials = "CLEAN_UP_CREDENTIALS",
2044
+ CompleteBuild = "COMPLETE_BUILD",
2045
+ ConfigureExpoUpdates = "CONFIGURE_EXPO_UPDATES",
2046
+ ConfigureXcodeProject = "CONFIGURE_XCODE_PROJECT",
2047
+ Custom = "CUSTOM",
2048
+ DownloadApplicationArchive = "DOWNLOAD_APPLICATION_ARCHIVE",
2049
+ EasBuildInternal = "EAS_BUILD_INTERNAL",
2050
+ FailBuild = "FAIL_BUILD",
2051
+ FixGradlew = "FIX_GRADLEW",
2052
+ InstallCustomTools = "INSTALL_CUSTOM_TOOLS",
2053
+ InstallDependencies = "INSTALL_DEPENDENCIES",
2054
+ InstallPods = "INSTALL_PODS",
2055
+ OnBuildCancelHook = "ON_BUILD_CANCEL_HOOK",
2056
+ OnBuildCompleteHook = "ON_BUILD_COMPLETE_HOOK",
2057
+ OnBuildErrorHook = "ON_BUILD_ERROR_HOOK",
2058
+ OnBuildSuccessHook = "ON_BUILD_SUCCESS_HOOK",
2059
+ ParseCustomWorkflowConfig = "PARSE_CUSTOM_WORKFLOW_CONFIG",
2060
+ PostInstallHook = "POST_INSTALL_HOOK",
2061
+ Prebuild = "PREBUILD",
2062
+ PrepareArtifacts = "PREPARE_ARTIFACTS",
2063
+ PrepareCredentials = "PREPARE_CREDENTIALS",
2064
+ PrepareProject = "PREPARE_PROJECT",
2065
+ PreInstallHook = "PRE_INSTALL_HOOK",
2066
+ PreUploadArtifactsHook = "PRE_UPLOAD_ARTIFACTS_HOOK",
2067
+ Queue = "QUEUE",
2068
+ ReadAppConfig = "READ_APP_CONFIG",
2069
+ ReadPackageJson = "READ_PACKAGE_JSON",
2070
+ RestoreCache = "RESTORE_CACHE",
2071
+ RunExpoDoctor = "RUN_EXPO_DOCTOR",
2072
+ RunFastlane = "RUN_FASTLANE",
2073
+ RunGradlew = "RUN_GRADLEW",
2074
+ SaveCache = "SAVE_CACHE",
2075
+ SetUpBuildEnvironment = "SET_UP_BUILD_ENVIRONMENT",
2076
+ SpinUpBuilder = "SPIN_UP_BUILDER",
2077
+ StartBuild = "START_BUILD",
2078
+ Unknown = "UNKNOWN",
2079
+ UploadApplicationArchive = "UPLOAD_APPLICATION_ARCHIVE",
2080
+ /** @deprecated No longer supported */
2081
+ UploadArtifacts = "UPLOAD_ARTIFACTS",
2082
+ UploadBuildArtifacts = "UPLOAD_BUILD_ARTIFACTS"
2083
+ }
2039
2084
  export type BuildPlanCreditThresholdExceededMetadata = {
2040
2085
  __typename?: 'BuildPlanCreditThresholdExceededMetadata';
2041
2086
  account: Account;
@@ -3007,6 +3052,7 @@ export declare enum IosBuildType {
3007
3052
  Release = "RELEASE"
3008
3053
  }
3009
3054
  export type IosBuilderEnvironmentInput = {
3055
+ bun?: InputMaybe<Scalars['String']>;
3010
3056
  bundler?: InputMaybe<Scalars['String']>;
3011
3057
  cocoapods?: InputMaybe<Scalars['String']>;
3012
3058
  env?: InputMaybe<Scalars['JSONObject']>;
@@ -3602,6 +3648,8 @@ export type RootMutation = {
3602
3648
  updateBranch: UpdateBranchMutation;
3603
3649
  updateChannel: UpdateChannelMutation;
3604
3650
  uploadSession: UploadSession;
3651
+ /** Mutations that create, update, and delete pinned apps */
3652
+ userAppPins: UserAppPinMutation;
3605
3653
  /** Mutations that create, delete, and accept UserInvitations */
3606
3654
  userInvitation: UserInvitationMutation;
3607
3655
  /** Mutations that create, delete, update Webhooks */
@@ -3792,6 +3840,7 @@ export type SsoUser = Actor & UserActor & {
3792
3840
  /** @deprecated No longer supported */
3793
3841
  location?: Maybe<Scalars['String']>;
3794
3842
  notificationSubscriptions: Array<NotificationSubscription>;
3843
+ pinnedApps: Array<App>;
3795
3844
  /** Associated accounts */
3796
3845
  primaryAccount: Account;
3797
3846
  profilePhoto: Scalars['String'];
@@ -3800,8 +3849,6 @@ export type SsoUser = Actor & UserActor & {
3800
3849
  /** @deprecated No longer supported */
3801
3850
  twitterUsername?: Maybe<Scalars['String']>;
3802
3851
  username: Scalars['String'];
3803
- /** @deprecated No longer supported */
3804
- websiteNotifications: Array<Notification>;
3805
3852
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
3806
3853
  };
3807
3854
  /** Represents a human SSO (not robot) actor. */
@@ -4456,6 +4503,7 @@ export type User = Actor & UserActor & {
4456
4503
  notificationSubscriptions: Array<NotificationSubscription>;
4457
4504
  /** Pending UserInvitations for this user. Only resolves for the viewer. */
4458
4505
  pendingUserInvitations: Array<UserInvitation>;
4506
+ pinnedApps: Array<App>;
4459
4507
  /** Associated accounts */
4460
4508
  primaryAccount: Account;
4461
4509
  profilePhoto: Scalars['String'];
@@ -4466,8 +4514,6 @@ export type User = Actor & UserActor & {
4466
4514
  /** @deprecated No longer supported */
4467
4515
  twitterUsername?: Maybe<Scalars['String']>;
4468
4516
  username: Scalars['String'];
4469
- /** @deprecated No longer supported */
4470
- websiteNotifications: Array<Notification>;
4471
4517
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
4472
4518
  };
4473
4519
  /** Represents a human (not robot) actor. */
@@ -4547,6 +4593,7 @@ export type UserActor = {
4547
4593
  /** @deprecated No longer supported */
4548
4594
  location?: Maybe<Scalars['String']>;
4549
4595
  notificationSubscriptions: Array<NotificationSubscription>;
4596
+ pinnedApps: Array<App>;
4550
4597
  /** Associated accounts */
4551
4598
  primaryAccount: Account;
4552
4599
  profilePhoto: Scalars['String'];
@@ -4555,8 +4602,6 @@ export type UserActor = {
4555
4602
  /** @deprecated No longer supported */
4556
4603
  twitterUsername?: Maybe<Scalars['String']>;
4557
4604
  username: Scalars['String'];
4558
- /** @deprecated No longer supported */
4559
- websiteNotifications: Array<Notification>;
4560
4605
  websiteNotificationsPaginated: WebsiteNotificationsConnection;
4561
4606
  };
4562
4607
  /** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
@@ -4642,6 +4687,17 @@ export type UserActorQueryByIdArgs = {
4642
4687
  export type UserActorQueryByUsernameArgs = {
4643
4688
  username: Scalars['String'];
4644
4689
  };
4690
+ export type UserAppPinMutation = {
4691
+ __typename?: 'UserAppPinMutation';
4692
+ pinApp: Scalars['ID'];
4693
+ unpinApp?: Maybe<Scalars['ID']>;
4694
+ };
4695
+ export type UserAppPinMutationPinAppArgs = {
4696
+ appId: Scalars['ID'];
4697
+ };
4698
+ export type UserAppPinMutationUnpinAppArgs = {
4699
+ appId: Scalars['ID'];
4700
+ };
4645
4701
  export type UserDataInput = {
4646
4702
  email?: InputMaybe<Scalars['String']>;
4647
4703
  firstName?: InputMaybe<Scalars['String']>;
@@ -6,8 +6,8 @@
6
6
  * For more info and docs, visit https://graphql-code-generator.com/
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.Order = exports.OfferType = exports.NotificationType = exports.NotificationEvent = exports.MailchimpTag = exports.MailchimpAudience = exports.IosSchemeBuildConfiguration = exports.IosManagedBuildType = exports.IosDistributionType = exports.IosBuildType = exports.InvoiceDiscountType = exports.GitHubBuildTriggerType = exports.GitHubAppInstallationStatus = exports.GitHubAppEnvironment = exports.Feature = exports.Experiment = exports.EnvironmentSecretType = exports.EasTotalPlanEnablementUnit = exports.EasServiceMetric = exports.EasService = exports.EasBuildDeprecationInfoType = exports.EasBuildBillingResourceClass = exports.DistributionType = exports.BuildWorkflow = exports.BuildTrigger = exports.BuildStatus = exports.BuildRetryDisabledReason = exports.BuildResourceClass = exports.BuildPriority = exports.BuildMode = exports.BuildLimitThresholdExceededMetadataType = exports.BuildJobStatus = exports.BuildJobLogsFormat = exports.BuildIosEnterpriseProvisioning = exports.BuildCredentialsSource = exports.BackgroundJobState = exports.BackgroundJobResultType = exports.AuthProtocolType = exports.AssetMetadataStatus = exports.AppsFilter = exports.AppleDeviceClass = exports.AppStoreConnectUserRole = exports.AppSort = exports.AppPrivacy = exports.AppPlatform = exports.AndroidKeystoreType = exports.AndroidFcmVersion = exports.AndroidBuildType = exports.ActivityTimelineProjectActivityType = exports.AccountAppsSortByField = void 0;
10
- exports.WebhookType = exports.UsageMetricsGranularity = exports.UsageMetricType = exports.UploadSessionType = exports.SubmissionStatus = exports.SubmissionArchiveSourceType = exports.SubmissionAndroidTrack = exports.SubmissionAndroidReleaseStatus = exports.SubmissionAndroidArchiveType = exports.StatuspageServiceStatus = exports.StatuspageServiceName = exports.StatuspageIncidentStatus = exports.StatuspageIncidentImpact = exports.StandardOffer = exports.SecondFactorMethod = exports.Role = exports.ProjectArchiveSourceType = exports.Permission = void 0;
9
+ exports.OfferType = exports.NotificationType = exports.NotificationEvent = exports.MailchimpTag = exports.MailchimpAudience = exports.IosSchemeBuildConfiguration = exports.IosManagedBuildType = exports.IosDistributionType = exports.IosBuildType = exports.InvoiceDiscountType = exports.GitHubBuildTriggerType = exports.GitHubAppInstallationStatus = exports.GitHubAppEnvironment = exports.Feature = exports.Experiment = exports.EnvironmentSecretType = exports.EasTotalPlanEnablementUnit = exports.EasServiceMetric = exports.EasService = exports.EasBuildDeprecationInfoType = exports.EasBuildBillingResourceClass = exports.DistributionType = exports.BuildWorkflow = exports.BuildTrigger = exports.BuildStatus = exports.BuildRetryDisabledReason = exports.BuildResourceClass = exports.BuildPriority = exports.BuildPhase = exports.BuildMode = exports.BuildLimitThresholdExceededMetadataType = exports.BuildJobStatus = exports.BuildJobLogsFormat = exports.BuildIosEnterpriseProvisioning = exports.BuildCredentialsSource = exports.BackgroundJobState = exports.BackgroundJobResultType = exports.AuthProtocolType = exports.AssetMetadataStatus = exports.AppsFilter = exports.AppleDeviceClass = exports.AppStoreConnectUserRole = exports.AppSort = exports.AppPrivacy = exports.AppPlatform = exports.AndroidKeystoreType = exports.AndroidFcmVersion = exports.AndroidBuildType = exports.ActivityTimelineProjectActivityType = exports.AccountAppsSortByField = void 0;
10
+ exports.WebhookType = exports.UsageMetricsGranularity = exports.UsageMetricType = exports.UploadSessionType = exports.SubmissionStatus = exports.SubmissionArchiveSourceType = exports.SubmissionAndroidTrack = exports.SubmissionAndroidReleaseStatus = exports.SubmissionAndroidArchiveType = exports.StatuspageServiceStatus = exports.StatuspageServiceName = exports.StatuspageIncidentStatus = exports.StatuspageIncidentImpact = exports.StandardOffer = exports.SecondFactorMethod = exports.Role = exports.ProjectArchiveSourceType = exports.Permission = exports.Order = void 0;
11
11
  var AccountAppsSortByField;
12
12
  (function (AccountAppsSortByField) {
13
13
  AccountAppsSortByField["LatestActivityTime"] = "LATEST_ACTIVITY_TIME";
@@ -148,6 +148,50 @@ var BuildMode;
148
148
  BuildMode["Custom"] = "CUSTOM";
149
149
  BuildMode["Resign"] = "RESIGN";
150
150
  })(BuildMode = exports.BuildMode || (exports.BuildMode = {}));
151
+ var BuildPhase;
152
+ (function (BuildPhase) {
153
+ BuildPhase["BuilderInfo"] = "BUILDER_INFO";
154
+ BuildPhase["CleanUpCredentials"] = "CLEAN_UP_CREDENTIALS";
155
+ BuildPhase["CompleteBuild"] = "COMPLETE_BUILD";
156
+ BuildPhase["ConfigureExpoUpdates"] = "CONFIGURE_EXPO_UPDATES";
157
+ BuildPhase["ConfigureXcodeProject"] = "CONFIGURE_XCODE_PROJECT";
158
+ BuildPhase["Custom"] = "CUSTOM";
159
+ BuildPhase["DownloadApplicationArchive"] = "DOWNLOAD_APPLICATION_ARCHIVE";
160
+ BuildPhase["EasBuildInternal"] = "EAS_BUILD_INTERNAL";
161
+ BuildPhase["FailBuild"] = "FAIL_BUILD";
162
+ BuildPhase["FixGradlew"] = "FIX_GRADLEW";
163
+ BuildPhase["InstallCustomTools"] = "INSTALL_CUSTOM_TOOLS";
164
+ BuildPhase["InstallDependencies"] = "INSTALL_DEPENDENCIES";
165
+ BuildPhase["InstallPods"] = "INSTALL_PODS";
166
+ BuildPhase["OnBuildCancelHook"] = "ON_BUILD_CANCEL_HOOK";
167
+ BuildPhase["OnBuildCompleteHook"] = "ON_BUILD_COMPLETE_HOOK";
168
+ BuildPhase["OnBuildErrorHook"] = "ON_BUILD_ERROR_HOOK";
169
+ BuildPhase["OnBuildSuccessHook"] = "ON_BUILD_SUCCESS_HOOK";
170
+ BuildPhase["ParseCustomWorkflowConfig"] = "PARSE_CUSTOM_WORKFLOW_CONFIG";
171
+ BuildPhase["PostInstallHook"] = "POST_INSTALL_HOOK";
172
+ BuildPhase["Prebuild"] = "PREBUILD";
173
+ BuildPhase["PrepareArtifacts"] = "PREPARE_ARTIFACTS";
174
+ BuildPhase["PrepareCredentials"] = "PREPARE_CREDENTIALS";
175
+ BuildPhase["PrepareProject"] = "PREPARE_PROJECT";
176
+ BuildPhase["PreInstallHook"] = "PRE_INSTALL_HOOK";
177
+ BuildPhase["PreUploadArtifactsHook"] = "PRE_UPLOAD_ARTIFACTS_HOOK";
178
+ BuildPhase["Queue"] = "QUEUE";
179
+ BuildPhase["ReadAppConfig"] = "READ_APP_CONFIG";
180
+ BuildPhase["ReadPackageJson"] = "READ_PACKAGE_JSON";
181
+ BuildPhase["RestoreCache"] = "RESTORE_CACHE";
182
+ BuildPhase["RunExpoDoctor"] = "RUN_EXPO_DOCTOR";
183
+ BuildPhase["RunFastlane"] = "RUN_FASTLANE";
184
+ BuildPhase["RunGradlew"] = "RUN_GRADLEW";
185
+ BuildPhase["SaveCache"] = "SAVE_CACHE";
186
+ BuildPhase["SetUpBuildEnvironment"] = "SET_UP_BUILD_ENVIRONMENT";
187
+ BuildPhase["SpinUpBuilder"] = "SPIN_UP_BUILDER";
188
+ BuildPhase["StartBuild"] = "START_BUILD";
189
+ BuildPhase["Unknown"] = "UNKNOWN";
190
+ BuildPhase["UploadApplicationArchive"] = "UPLOAD_APPLICATION_ARCHIVE";
191
+ /** @deprecated No longer supported */
192
+ BuildPhase["UploadArtifacts"] = "UPLOAD_ARTIFACTS";
193
+ BuildPhase["UploadBuildArtifacts"] = "UPLOAD_BUILD_ARTIFACTS";
194
+ })(BuildPhase = exports.BuildPhase || (exports.BuildPhase = {}));
151
195
  var BuildPriority;
152
196
  (function (BuildPriority) {
153
197
  BuildPriority["High"] = "HIGH";
@@ -128,8 +128,14 @@ async function getSuggestedBundleIdentifierAsync(graphqlClient, exp, projectId)
128
128
  else {
129
129
  // the only callsite is heavily interactive
130
130
  const account = await (0, projectUtils_1.getOwnerAccountForProjectIdAsync)(graphqlClient, projectId);
131
+ let possibleId;
131
132
  // It's common to use dashes in your node project name, strip them from the suggested package name.
132
- const possibleId = `com.${account.name}.${exp.slug}`.split('-').join('');
133
+ if (account.name) {
134
+ possibleId = `com.${account.name}.${exp.slug}`.split('-').join('');
135
+ }
136
+ else {
137
+ possibleId = `com.${exp.slug}`.split('-').join('');
138
+ }
133
139
  if (isBundleIdentifierValid(possibleId)) {
134
140
  return possibleId;
135
141
  }
@@ -67,12 +67,13 @@ export declare function convertAssetToUpdateInfoGroupFormatAsync(asset: RawAsset
67
67
  * This will be sorted later based on the platform's runtime versions.
68
68
  */
69
69
  export declare function buildUnsortedUpdateInfoGroupAsync(assets: CollectedAssets, exp: ExpoConfig): Promise<UpdateInfoGroup>;
70
- export declare function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, }: {
70
+ export declare function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, dev, }: {
71
71
  projectDir: string;
72
72
  inputDir: string;
73
73
  exp: Pick<ExpoConfig, 'sdkVersion' | 'web'>;
74
74
  platformFlag: ExpoCLIExportPlatformFlag;
75
75
  clearCache?: boolean;
76
+ dev?: boolean;
76
77
  }): Promise<void>;
77
78
  export declare function resolveInputDirectoryAsync(inputDir: string, { skipBundler }: {
78
79
  skipBundler?: boolean;
@@ -118,7 +118,7 @@ async function buildUnsortedUpdateInfoGroupAsync(assets, exp) {
118
118
  return updateInfoGroup;
119
119
  }
120
120
  exports.buildUnsortedUpdateInfoGroupAsync = buildUnsortedUpdateInfoGroupAsync;
121
- async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, }) {
121
+ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clearCache, dev = false, }) {
122
122
  var _a;
123
123
  const packageJSON = json_file_1.default.read(path_1.default.resolve(projectDir, 'package.json'));
124
124
  if (!packageJSON) {
@@ -135,6 +135,7 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
135
135
  '--dump-sourcemap',
136
136
  '--dump-assetmap',
137
137
  `--platform=${platformFlag}`,
138
+ ...(dev ? ['--dev'] : []),
138
139
  ...(clearCache ? ['--clear'] : []),
139
140
  ]);
140
141
  }
@@ -151,6 +152,7 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
151
152
  '--dump-sourcemap',
152
153
  '--dump-assetmap',
153
154
  ...platformArgs,
155
+ ...(dev ? ['--dev'] : []),
154
156
  ...(clearCache ? ['--clear'] : []),
155
157
  ]);
156
158
  }
@@ -168,6 +170,7 @@ async function buildBundlesAsync({ projectDir, inputDir, exp, platformFlag, clea
168
170
  '--dump-sourcemap',
169
171
  '--dump-assetmap',
170
172
  `--platform=${platformFlag}`,
173
+ ...(dev ? ['--dev'] : []),
171
174
  ...(clearCache ? ['--clear'] : []),
172
175
  ]);
173
176
  }
@@ -9,6 +9,10 @@ const utils_1 = require("../update/utils");
9
9
  const formatFields_1 = tslib_1.__importDefault(require("../utils/formatFields"));
10
10
  const branch_mapping_1 = require("./branch-mapping");
11
11
  function printRollout(channel) {
12
+ if (!(0, branch_mapping_1.isRollout)(channel)) {
13
+ log_1.default.log(`Channel ${chalk_1.default.bold(channel.name)} doesn't have a rollout.`);
14
+ return;
15
+ }
12
16
  const rollout = (0, branch_mapping_1.getRollout)(channel);
13
17
  displayRolloutDetails(channel.name, rollout);
14
18
  }
@@ -5,7 +5,6 @@ const tslib_1 = require("tslib");
5
5
  const eas_json_1 = require("@expo/eas-json");
6
6
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
7
7
  const path_1 = tslib_1.__importDefault(require("path"));
8
- const semver_1 = tslib_1.__importDefault(require("semver"));
9
8
  const log_1 = tslib_1.__importStar(require("../log"));
10
9
  async function getProfilesAsync({ easJsonAccessor, platforms, profileName, type, projectDir, }) {
11
10
  const results = platforms.map(async function (platform) {
@@ -47,9 +46,6 @@ async function getNodeVersionFromFileAsync(projectDir) {
47
46
  catch {
48
47
  return undefined;
49
48
  }
50
- if (!semver_1.default.valid(semver_1.default.coerce(nodeVersion))) {
51
- throw new Error(`Invalid node version in .nvmrc: ${nodeVersion}`);
52
- }
53
49
  return nodeVersion;
54
50
  }
55
51
  async function readProfileWithOverridesAsync({ easJsonAccessor, platform, type, profileName, projectDir, }) {