eas-cli 0.52.0 → 0.54.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.
- package/README.md +132 -44
- package/build/analytics/events.d.ts +5 -1
- package/build/analytics/events.js +6 -1
- package/build/build/android/version.js +1 -1
- package/build/build/build.js +38 -27
- package/build/build/local.js +1 -1
- package/build/build/runBuildAndSubmit.js +4 -2
- package/build/build/utils/url.d.ts +1 -0
- package/build/build/utils/url.js +5 -1
- package/build/commands/branch/create.js +2 -2
- package/build/commands/branch/delete.js +2 -2
- package/build/commands/branch/list.js +2 -2
- package/build/commands/branch/rename.js +2 -2
- package/build/commands/branch/view.js +2 -2
- package/build/commands/build/cancel.js +3 -3
- package/build/commands/build/configure.js +2 -2
- package/build/commands/build/index.d.ts +0 -1
- package/build/commands/build/index.js +1 -53
- package/build/commands/build/inspect.js +1 -1
- package/build/commands/build/list.js +2 -2
- package/build/commands/build/view.js +2 -2
- package/build/commands/channel/create.js +2 -2
- package/build/commands/channel/delete.js +2 -2
- package/build/commands/channel/edit.js +2 -2
- package/build/commands/channel/list.js +2 -2
- package/build/commands/channel/rollout.js +2 -2
- package/build/commands/channel/view.js +3 -3
- package/build/commands/config.js +0 -2
- package/build/commands/device/delete.js +2 -2
- package/build/commands/device/list.js +2 -2
- package/build/commands/device/view.js +2 -2
- package/build/commands/metadata/pull.d.ts +8 -0
- package/build/commands/metadata/pull.js +59 -0
- package/build/commands/metadata/push.d.ts +8 -0
- package/build/commands/metadata/push.js +51 -0
- package/build/commands/project/info.js +2 -2
- package/build/commands/project/init.js +2 -2
- package/build/commands/secret/create.js +2 -2
- package/build/commands/secret/delete.js +2 -2
- package/build/commands/secret/list.js +2 -2
- package/build/commands/submit.js +4 -3
- package/build/commands/update/configure.js +2 -3
- package/build/commands/update/index.d.ts +12 -0
- package/build/commands/update/index.js +81 -39
- package/build/commands/update/list.js +2 -2
- package/build/commands/webhook/create.js +2 -2
- package/build/commands/webhook/delete.js +2 -2
- package/build/commands/webhook/list.js +2 -2
- package/build/credentials/android/utils/googleServiceAccountKey.js +1 -1
- package/build/credentials/android/utils/keystore.js +1 -1
- package/build/credentials/android/utils/keystoreNew.js +2 -2
- package/build/credentials/context.js +2 -3
- package/build/credentials/credentialsJson/read.js +1 -1
- package/build/credentials/ios/utils/provisioningProfile.js +1 -1
- package/build/credentials/ios/validators/validateProvisioningProfile.js +1 -1
- package/build/graphql/generated.d.ts +90 -33
- package/build/graphql/generated.js +5 -0
- package/build/graphql/queries/UpdateQuery.d.ts +4 -1
- package/build/graphql/queries/UpdateQuery.js +8 -7
- package/build/metadata/apple/config/reader.d.ts +25 -0
- package/build/metadata/apple/config/reader.js +95 -0
- package/build/metadata/apple/config/writer.d.ts +23 -0
- package/build/metadata/apple/config/writer.js +85 -0
- package/build/metadata/apple/data.d.ts +20 -0
- package/build/metadata/apple/data.js +2 -0
- package/build/metadata/apple/task.d.ts +24 -0
- package/build/metadata/apple/task.js +6 -0
- package/build/metadata/apple/tasks/age-rating.d.ts +13 -0
- package/build/metadata/apple/tasks/age-rating.js +39 -0
- package/build/metadata/apple/tasks/app-info.d.ts +15 -0
- package/build/metadata/apple/tasks/app-info.js +73 -0
- package/build/metadata/apple/tasks/app-version.d.ts +27 -0
- package/build/metadata/apple/tasks/app-version.js +104 -0
- package/build/metadata/apple/tasks/index.d.ts +6 -0
- package/build/metadata/apple/tasks/index.js +13 -0
- package/build/metadata/apple/types.d.ts +50 -0
- package/build/metadata/apple/types.js +2 -0
- package/build/metadata/config.d.ts +22 -0
- package/build/metadata/config.js +32 -0
- package/build/metadata/context.d.ts +46 -0
- package/build/metadata/context.js +48 -0
- package/build/metadata/download.d.ts +6 -0
- package/build/metadata/download.js +65 -0
- package/build/metadata/errors.d.ts +37 -0
- package/build/metadata/errors.js +69 -0
- package/build/metadata/upload.d.ts +6 -0
- package/build/metadata/upload.js +57 -0
- package/build/metadata/utils/asc.d.ts +4 -0
- package/build/metadata/utils/asc.js +2 -0
- package/build/metadata/utils/date.d.ts +12 -0
- package/build/metadata/utils/date.js +30 -0
- package/build/metadata/utils/log.d.ts +16 -0
- package/build/metadata/utils/log.js +23 -0
- package/build/metadata/utils/retry.d.ts +8 -0
- package/build/metadata/utils/retry.js +22 -0
- package/build/metadata/utils/telemetry.d.ts +20 -0
- package/build/metadata/utils/telemetry.js +87 -0
- package/build/project/android/applicationId.js +1 -1
- package/build/project/ensureProjectExists.js +4 -1
- package/build/project/ios/bundleIdentifier.js +1 -1
- package/build/project/publish.d.ts +6 -1
- package/build/project/publish.js +16 -3
- package/build/submit/ArchiveSource.js +1 -1
- package/build/submit/submit.js +1 -1
- package/build/submit/utils/errors.js +2 -0
- package/build/submit/utils/files.js +1 -1
- package/build/submit/utils/logs.js +1 -1
- package/build/update/android/UpdatesModule.js +2 -2
- package/build/update/ios/UpdatesModule.js +2 -2
- package/build/user/actions.js +1 -1
- package/build/utils/expodash/uniq.d.ts +1 -0
- package/build/utils/expodash/uniq.js +7 -0
- package/build/utils/profiles.d.ts +3 -3
- package/build/utils/profiles.js +5 -93
- package/build/vcs/clients/git.js +5 -5
- package/build/vcs/git.js +1 -1
- package/build/webhooks/input.js +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +43 -38
|
@@ -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
|
|
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();
|
|
@@ -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
|
|
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
|
|
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
|
|
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,
|
|
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
|
|
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
|
}
|
|
@@ -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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
/**
|
|
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'];
|
|
@@ -1273,10 +1301,13 @@ export declare type Build = ActivityTimelineProjectActivity & BuildOrBuildJob &
|
|
|
1273
1301
|
appVersion?: Maybe<Scalars['String']>;
|
|
1274
1302
|
artifacts?: Maybe<BuildArtifacts>;
|
|
1275
1303
|
buildProfile?: Maybe<Scalars['String']>;
|
|
1304
|
+
canRetry: Scalars['Boolean'];
|
|
1276
1305
|
cancelingActor?: Maybe<Actor>;
|
|
1277
1306
|
channel?: Maybe<Scalars['String']>;
|
|
1278
|
-
|
|
1307
|
+
completedAt?: Maybe<Scalars['DateTime']>;
|
|
1308
|
+
createdAt: Scalars['DateTime'];
|
|
1279
1309
|
distribution?: Maybe<DistributionType>;
|
|
1310
|
+
enqueuedAt?: Maybe<Scalars['DateTime']>;
|
|
1280
1311
|
error?: Maybe<BuildError>;
|
|
1281
1312
|
estimatedWaitTimeLeftSeconds?: Maybe<Scalars['Int']>;
|
|
1282
1313
|
expirationDate?: Maybe<Scalars['DateTime']>;
|
|
@@ -1291,9 +1322,11 @@ export declare type Build = ActivityTimelineProjectActivity & BuildOrBuildJob &
|
|
|
1291
1322
|
isGitWorkingTreeDirty?: Maybe<Scalars['Boolean']>;
|
|
1292
1323
|
logFiles: Array<Scalars['String']>;
|
|
1293
1324
|
metrics?: Maybe<BuildMetrics>;
|
|
1325
|
+
parentBuild?: Maybe<Build>;
|
|
1294
1326
|
platform: AppPlatform;
|
|
1295
1327
|
priority: BuildPriority;
|
|
1296
1328
|
project: Project;
|
|
1329
|
+
provisioningStartedAt?: Maybe<Scalars['DateTime']>;
|
|
1297
1330
|
/** Queue position is 1-indexed */
|
|
1298
1331
|
queuePosition?: Maybe<Scalars['Int']>;
|
|
1299
1332
|
reactNativeVersion?: Maybe<Scalars['String']>;
|
|
@@ -1302,7 +1335,8 @@ export declare type Build = ActivityTimelineProjectActivity & BuildOrBuildJob &
|
|
|
1302
1335
|
sdkVersion?: Maybe<Scalars['String']>;
|
|
1303
1336
|
status: BuildStatus;
|
|
1304
1337
|
submissions: Array<Submission>;
|
|
1305
|
-
updatedAt
|
|
1338
|
+
updatedAt: Scalars['DateTime'];
|
|
1339
|
+
workerStartedAt?: Maybe<Scalars['DateTime']>;
|
|
1306
1340
|
};
|
|
1307
1341
|
export declare type BuildArtifact = {
|
|
1308
1342
|
__typename?: 'BuildArtifact';
|
|
@@ -1454,6 +1488,8 @@ export declare type BuildMutation = {
|
|
|
1454
1488
|
createIosBuild: CreateBuildResult;
|
|
1455
1489
|
/** Delete an EAS Build build */
|
|
1456
1490
|
deleteBuild: Build;
|
|
1491
|
+
/** Retry an EAS Build build */
|
|
1492
|
+
retryBuild: Build;
|
|
1457
1493
|
};
|
|
1458
1494
|
export declare type BuildMutationCancelBuildArgs = {
|
|
1459
1495
|
buildId: Scalars['ID'];
|
|
@@ -1471,6 +1507,9 @@ export declare type BuildMutationCreateIosBuildArgs = {
|
|
|
1471
1507
|
export declare type BuildMutationDeleteBuildArgs = {
|
|
1472
1508
|
buildId: Scalars['ID'];
|
|
1473
1509
|
};
|
|
1510
|
+
export declare type BuildMutationRetryBuildArgs = {
|
|
1511
|
+
buildId: Scalars['ID'];
|
|
1512
|
+
};
|
|
1474
1513
|
export declare type BuildOrBuildJob = {
|
|
1475
1514
|
id: Scalars['ID'];
|
|
1476
1515
|
};
|
|
@@ -1594,6 +1633,12 @@ export declare type CodeSigningInfoInput = {
|
|
|
1594
1633
|
keyid: Scalars['String'];
|
|
1595
1634
|
sig: Scalars['String'];
|
|
1596
1635
|
};
|
|
1636
|
+
export declare type Concurrencies = {
|
|
1637
|
+
__typename?: 'Concurrencies';
|
|
1638
|
+
android: Scalars['Int'];
|
|
1639
|
+
ios: Scalars['Int'];
|
|
1640
|
+
total: Scalars['Int'];
|
|
1641
|
+
};
|
|
1597
1642
|
export declare type CreateAccessTokenInput = {
|
|
1598
1643
|
actorID: Scalars['ID'];
|
|
1599
1644
|
note?: InputMaybe<Scalars['String']>;
|
|
@@ -1607,6 +1652,7 @@ export declare type CreateAccessTokenResponse = {
|
|
|
1607
1652
|
};
|
|
1608
1653
|
export declare type CreateAndroidSubmissionInput = {
|
|
1609
1654
|
appId: Scalars['ID'];
|
|
1655
|
+
archiveUrl?: InputMaybe<Scalars['String']>;
|
|
1610
1656
|
config: AndroidSubmissionConfigInput;
|
|
1611
1657
|
submittedBuildId?: InputMaybe<Scalars['ID']>;
|
|
1612
1658
|
};
|
|
@@ -1621,15 +1667,10 @@ export declare type CreateEnvironmentSecretInput = {
|
|
|
1621
1667
|
};
|
|
1622
1668
|
export declare type CreateIosSubmissionInput = {
|
|
1623
1669
|
appId: Scalars['ID'];
|
|
1670
|
+
archiveUrl?: InputMaybe<Scalars['String']>;
|
|
1624
1671
|
config: IosSubmissionConfigInput;
|
|
1625
1672
|
submittedBuildId?: InputMaybe<Scalars['ID']>;
|
|
1626
1673
|
};
|
|
1627
|
-
export declare type CreateSubmissionInput = {
|
|
1628
|
-
appId: Scalars['ID'];
|
|
1629
|
-
config: Scalars['JSONObject'];
|
|
1630
|
-
platform: AppPlatform;
|
|
1631
|
-
submittedBuildId?: InputMaybe<Scalars['ID']>;
|
|
1632
|
-
};
|
|
1633
1674
|
export declare type CreateSubmissionResult = {
|
|
1634
1675
|
__typename?: 'CreateSubmissionResult';
|
|
1635
1676
|
/** Created submission */
|
|
@@ -1720,7 +1761,10 @@ export declare enum EasBuildDeprecationInfoType {
|
|
|
1720
1761
|
UserFacing = "USER_FACING"
|
|
1721
1762
|
}
|
|
1722
1763
|
export declare enum EasServiceMetric {
|
|
1723
|
-
|
|
1764
|
+
AssetsRequests = "ASSETS_REQUESTS",
|
|
1765
|
+
BandwidthUsage = "BANDWIDTH_USAGE",
|
|
1766
|
+
ManifestRequests = "MANIFEST_REQUESTS",
|
|
1767
|
+
UniqueUsers = "UNIQUE_USERS"
|
|
1724
1768
|
}
|
|
1725
1769
|
export declare type EditUpdateBranchInput = {
|
|
1726
1770
|
appId?: InputMaybe<Scalars['ID']>;
|
|
@@ -2595,6 +2639,8 @@ export declare type Submission = ActivityTimelineProjectActivity & {
|
|
|
2595
2639
|
actor?: Maybe<Actor>;
|
|
2596
2640
|
androidConfig?: Maybe<AndroidSubmissionConfig>;
|
|
2597
2641
|
app: App;
|
|
2642
|
+
archiveUrl?: Maybe<Scalars['String']>;
|
|
2643
|
+
canRetry: Scalars['Boolean'];
|
|
2598
2644
|
cancelingActor?: Maybe<Actor>;
|
|
2599
2645
|
createdAt: Scalars['DateTime'];
|
|
2600
2646
|
error?: Maybe<SubmissionError>;
|
|
@@ -2602,6 +2648,7 @@ export declare type Submission = ActivityTimelineProjectActivity & {
|
|
|
2602
2648
|
initiatingActor?: Maybe<Actor>;
|
|
2603
2649
|
iosConfig?: Maybe<IosSubmissionConfig>;
|
|
2604
2650
|
logsUrl?: Maybe<Scalars['String']>;
|
|
2651
|
+
parentSubmission?: Maybe<Submission>;
|
|
2605
2652
|
platform: AppPlatform;
|
|
2606
2653
|
status: SubmissionStatus;
|
|
2607
2654
|
submittedBuild?: Maybe<Build>;
|
|
@@ -2640,14 +2687,11 @@ export declare type SubmissionMutation = {
|
|
|
2640
2687
|
createAndroidSubmission: CreateSubmissionResult;
|
|
2641
2688
|
/** Create an iOS EAS Submit submission */
|
|
2642
2689
|
createIosSubmission: CreateSubmissionResult;
|
|
2643
|
-
/**
|
|
2644
|
-
|
|
2645
|
-
* @deprecated Use createIosSubmission / createAndroidSubmission instead
|
|
2646
|
-
*/
|
|
2647
|
-
createSubmission: CreateSubmissionResult;
|
|
2690
|
+
/** Retry an EAS Submit submission */
|
|
2691
|
+
retrySubmission: CreateSubmissionResult;
|
|
2648
2692
|
};
|
|
2649
2693
|
export declare type SubmissionMutationCancelSubmissionArgs = {
|
|
2650
|
-
submissionId
|
|
2694
|
+
submissionId: Scalars['ID'];
|
|
2651
2695
|
};
|
|
2652
2696
|
export declare type SubmissionMutationCreateAndroidSubmissionArgs = {
|
|
2653
2697
|
input: CreateAndroidSubmissionInput;
|
|
@@ -2655,8 +2699,8 @@ export declare type SubmissionMutationCreateAndroidSubmissionArgs = {
|
|
|
2655
2699
|
export declare type SubmissionMutationCreateIosSubmissionArgs = {
|
|
2656
2700
|
input: CreateIosSubmissionInput;
|
|
2657
2701
|
};
|
|
2658
|
-
export declare type
|
|
2659
|
-
|
|
2702
|
+
export declare type SubmissionMutationRetrySubmissionArgs = {
|
|
2703
|
+
parentSubmissionId: Scalars['ID'];
|
|
2660
2704
|
};
|
|
2661
2705
|
export declare type SubmissionQuery = {
|
|
2662
2706
|
__typename?: 'SubmissionQuery';
|
|
@@ -2678,6 +2722,7 @@ export declare type SubscriptionDetails = {
|
|
|
2678
2722
|
__typename?: 'SubscriptionDetails';
|
|
2679
2723
|
addons: Array<AddonDetails>;
|
|
2680
2724
|
cancelledAt?: Maybe<Scalars['DateTime']>;
|
|
2725
|
+
concurrencies?: Maybe<Concurrencies>;
|
|
2681
2726
|
endedAt?: Maybe<Scalars['DateTime']>;
|
|
2682
2727
|
id: Scalars['ID'];
|
|
2683
2728
|
isDowngrading?: Maybe<Scalars['Boolean']>;
|
|
@@ -2828,8 +2873,19 @@ export declare enum UploadSessionType {
|
|
|
2828
2873
|
EasBuildProjectSources = "EAS_BUILD_PROJECT_SOURCES",
|
|
2829
2874
|
EasSubmitAppArchive = "EAS_SUBMIT_APP_ARCHIVE"
|
|
2830
2875
|
}
|
|
2876
|
+
export declare type UsageMetricTotal = {
|
|
2877
|
+
__typename?: 'UsageMetricTotal';
|
|
2878
|
+
billingPeriod: BillingPeriod;
|
|
2879
|
+
id: Scalars['ID'];
|
|
2880
|
+
overageMetrics: Array<AccountUsageMetricAndCost>;
|
|
2881
|
+
planMetrics: Array<AccountUsageMetricAndCost>;
|
|
2882
|
+
/** Total cost of overages, in cents */
|
|
2883
|
+
totalCost: Scalars['Float'];
|
|
2884
|
+
};
|
|
2831
2885
|
export declare enum UsageMetricType {
|
|
2832
|
-
|
|
2886
|
+
Bandwidth = "BANDWIDTH",
|
|
2887
|
+
Request = "REQUEST",
|
|
2888
|
+
User = "USER"
|
|
2833
2889
|
}
|
|
2834
2890
|
export declare enum UsageMetricsGranularity {
|
|
2835
2891
|
Day = "DAY",
|
|
@@ -5720,8 +5776,8 @@ export declare type CreateAndroidBuildMutation = {
|
|
|
5720
5776
|
queuePosition?: number | null;
|
|
5721
5777
|
estimatedWaitTimeLeftSeconds?: number | null;
|
|
5722
5778
|
priority: BuildPriority;
|
|
5723
|
-
createdAt
|
|
5724
|
-
updatedAt
|
|
5779
|
+
createdAt: any;
|
|
5780
|
+
updatedAt: any;
|
|
5725
5781
|
error?: {
|
|
5726
5782
|
__typename?: 'BuildError';
|
|
5727
5783
|
errorCode: string;
|
|
@@ -5797,8 +5853,8 @@ export declare type CreateIosBuildMutation = {
|
|
|
5797
5853
|
queuePosition?: number | null;
|
|
5798
5854
|
estimatedWaitTimeLeftSeconds?: number | null;
|
|
5799
5855
|
priority: BuildPriority;
|
|
5800
|
-
createdAt
|
|
5801
|
-
updatedAt
|
|
5856
|
+
createdAt: any;
|
|
5857
|
+
updatedAt: any;
|
|
5802
5858
|
error?: {
|
|
5803
5859
|
__typename?: 'BuildError';
|
|
5804
5860
|
errorCode: string;
|
|
@@ -6155,8 +6211,8 @@ export declare type BuildsByIdQuery = {
|
|
|
6155
6211
|
queuePosition?: number | null;
|
|
6156
6212
|
estimatedWaitTimeLeftSeconds?: number | null;
|
|
6157
6213
|
priority: BuildPriority;
|
|
6158
|
-
createdAt
|
|
6159
|
-
updatedAt
|
|
6214
|
+
createdAt: any;
|
|
6215
|
+
updatedAt: any;
|
|
6160
6216
|
error?: {
|
|
6161
6217
|
__typename?: 'BuildError';
|
|
6162
6218
|
errorCode: string;
|
|
@@ -6228,8 +6284,8 @@ export declare type GetAllBuildsForAppQuery = {
|
|
|
6228
6284
|
queuePosition?: number | null;
|
|
6229
6285
|
estimatedWaitTimeLeftSeconds?: number | null;
|
|
6230
6286
|
priority: BuildPriority;
|
|
6231
|
-
createdAt
|
|
6232
|
-
updatedAt
|
|
6287
|
+
createdAt: any;
|
|
6288
|
+
updatedAt: any;
|
|
6233
6289
|
error?: {
|
|
6234
6290
|
__typename?: 'BuildError';
|
|
6235
6291
|
errorCode: string;
|
|
@@ -6518,6 +6574,7 @@ export declare type ViewBranchUpdatesQueryVariables = Exact<{
|
|
|
6518
6574
|
appId: Scalars['String'];
|
|
6519
6575
|
name: Scalars['String'];
|
|
6520
6576
|
limit: Scalars['Int'];
|
|
6577
|
+
offset: Scalars['Int'];
|
|
6521
6578
|
}>;
|
|
6522
6579
|
export declare type ViewBranchUpdatesQuery = {
|
|
6523
6580
|
__typename?: 'RootQuery';
|
|
@@ -6644,8 +6701,8 @@ export declare type BuildFragment = {
|
|
|
6644
6701
|
queuePosition?: number | null;
|
|
6645
6702
|
estimatedWaitTimeLeftSeconds?: number | null;
|
|
6646
6703
|
priority: BuildPriority;
|
|
6647
|
-
createdAt
|
|
6648
|
-
updatedAt
|
|
6704
|
+
createdAt: any;
|
|
6705
|
+
updatedAt: any;
|
|
6649
6706
|
error?: {
|
|
6650
6707
|
__typename?: 'BuildError';
|
|
6651
6708
|
errorCode: string;
|
|
@@ -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) {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { ViewAllUpdatesQuery, ViewBranchUpdatesQuery, ViewBranchUpdatesQueryVariables } from '../generated';
|
|
2
|
+
export declare const viewBranchUpdatesQueryUpdateLimit = 300;
|
|
3
|
+
declare type ViewBranchUpdatesQueryVariablesWithOptionalLimitAndOffset = Partial<ViewBranchUpdatesQueryVariables> & Pick<ViewBranchUpdatesQueryVariables, 'appId' | 'name'>;
|
|
2
4
|
export declare const UpdateQuery: {
|
|
3
5
|
viewAllAsync({ appId }: {
|
|
4
6
|
appId: string;
|
|
5
7
|
}): Promise<ViewAllUpdatesQuery>;
|
|
6
|
-
viewBranchAsync({ appId, name
|
|
8
|
+
viewBranchAsync({ appId, name, limit, offset, }: ViewBranchUpdatesQueryVariablesWithOptionalLimitAndOffset): Promise<ViewBranchUpdatesQuery>;
|
|
7
9
|
};
|
|
10
|
+
export {};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UpdateQuery = void 0;
|
|
3
|
+
exports.UpdateQuery = exports.viewBranchUpdatesQueryUpdateLimit = 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
|
-
|
|
7
|
+
exports.viewBranchUpdatesQueryUpdateLimit = 300;
|
|
8
8
|
exports.UpdateQuery = {
|
|
9
9
|
async viewAllAsync({ appId }) {
|
|
10
10
|
return (0, client_1.withErrorHandlingAsync)(client_1.graphqlClient
|
|
@@ -39,21 +39,21 @@ exports.UpdateQuery = {
|
|
|
39
39
|
}
|
|
40
40
|
`, {
|
|
41
41
|
appId,
|
|
42
|
-
limit:
|
|
42
|
+
limit: exports.viewBranchUpdatesQueryUpdateLimit,
|
|
43
43
|
}, { additionalTypenames: ['UpdateBranch', 'Update'] })
|
|
44
44
|
.toPromise());
|
|
45
45
|
},
|
|
46
|
-
async viewBranchAsync({ appId, name }) {
|
|
46
|
+
async viewBranchAsync({ appId, name, limit = exports.viewBranchUpdatesQueryUpdateLimit, offset = 0, }) {
|
|
47
47
|
return (0, client_1.withErrorHandlingAsync)(client_1.graphqlClient
|
|
48
48
|
.query((0, graphql_tag_1.default) `
|
|
49
|
-
query ViewBranchUpdates($appId: String!, $name: String!, $limit: Int!) {
|
|
49
|
+
query ViewBranchUpdates($appId: String!, $name: String!, $limit: Int!, $offset: Int!) {
|
|
50
50
|
app {
|
|
51
51
|
byId(appId: $appId) {
|
|
52
52
|
id
|
|
53
53
|
updateBranchByName(name: $name) {
|
|
54
54
|
id
|
|
55
55
|
name
|
|
56
|
-
updates(offset:
|
|
56
|
+
updates(offset: $offset, limit: $limit) {
|
|
57
57
|
id
|
|
58
58
|
group
|
|
59
59
|
message
|
|
@@ -78,7 +78,8 @@ exports.UpdateQuery = {
|
|
|
78
78
|
`, {
|
|
79
79
|
appId,
|
|
80
80
|
name,
|
|
81
|
-
limit
|
|
81
|
+
limit,
|
|
82
|
+
offset,
|
|
82
83
|
}, { additionalTypenames: ['UpdateBranch', 'Update'] })
|
|
83
84
|
.toPromise());
|
|
84
85
|
},
|
|
@@ -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 {};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AppleConfigReader = exports.DEFAULT_WHATSNEW = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const apple_utils_1 = require("@expo/apple-utils");
|
|
6
|
+
const uniq_1 = tslib_1.__importDefault(require("../../../utils/expodash/uniq"));
|
|
7
|
+
const date_1 = require("../../utils/date");
|
|
8
|
+
// TODO: find out if we can move this to default JSON schema normalization
|
|
9
|
+
exports.DEFAULT_WHATSNEW = 'Bug fixes and improved stability';
|
|
10
|
+
/**
|
|
11
|
+
* Deserializes the metadata config schema into attributes for different models.
|
|
12
|
+
* This uses version 0 of the config schema.
|
|
13
|
+
*/
|
|
14
|
+
class AppleConfigReader {
|
|
15
|
+
constructor(schema) {
|
|
16
|
+
this.schema = schema;
|
|
17
|
+
}
|
|
18
|
+
getAgeRating() {
|
|
19
|
+
return this.schema.advisory || null;
|
|
20
|
+
}
|
|
21
|
+
getLocales() {
|
|
22
|
+
// TODO: filter "default" locales, add option to add non-localized info to the config
|
|
23
|
+
return (0, uniq_1.default)(Object.keys(this.schema.info || {}));
|
|
24
|
+
}
|
|
25
|
+
getInfoLocale(locale) {
|
|
26
|
+
var _a, _b;
|
|
27
|
+
const info = (_a = this.schema.info) === null || _a === void 0 ? void 0 : _a[locale];
|
|
28
|
+
if (!info) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
locale,
|
|
33
|
+
name: (_b = info.title) !== null && _b !== void 0 ? _b : 'no name provided',
|
|
34
|
+
subtitle: info.subtitle,
|
|
35
|
+
privacyChoicesUrl: info.privacyChoicesUrl,
|
|
36
|
+
privacyPolicyText: info.privacyPolicyText,
|
|
37
|
+
privacyPolicyUrl: info.privacyPolicyUrl,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
getCategories() {
|
|
41
|
+
if (Array.isArray(this.schema.categories) && this.schema.categories.length > 0) {
|
|
42
|
+
return {
|
|
43
|
+
primaryCategory: this.schema.categories[0],
|
|
44
|
+
secondaryCategory: this.schema.categories[1],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
/** Get the `AppStoreVersion` object. */
|
|
50
|
+
getVersion() {
|
|
51
|
+
return this.schema.copyright ? { copyright: this.schema.copyright } : null;
|
|
52
|
+
}
|
|
53
|
+
getVersionRelease() {
|
|
54
|
+
var _a, _b;
|
|
55
|
+
const { release } = this.schema;
|
|
56
|
+
if (release === null || release === void 0 ? void 0 : release.autoReleaseDate) {
|
|
57
|
+
return {
|
|
58
|
+
releaseType: apple_utils_1.ReleaseType.SCHEDULED,
|
|
59
|
+
// Convert time format to 2020-06-17T12:00:00-07:00
|
|
60
|
+
earliestReleaseDate: (_b = (_a = (0, date_1.removeDatePrecision)(release.autoReleaseDate)) === null || _a === void 0 ? void 0 : _a.toISOString()) !== null && _b !== void 0 ? _b : null,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if ((release === null || release === void 0 ? void 0 : release.automaticRelease) === true) {
|
|
64
|
+
return {
|
|
65
|
+
releaseType: apple_utils_1.ReleaseType.AFTER_APPROVAL,
|
|
66
|
+
earliestReleaseDate: null,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
if ((release === null || release === void 0 ? void 0 : release.automaticRelease) === false) {
|
|
70
|
+
return {
|
|
71
|
+
releaseType: apple_utils_1.ReleaseType.MANUAL,
|
|
72
|
+
earliestReleaseDate: null,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
getVersionLocale(locale, context) {
|
|
78
|
+
var _a, _b;
|
|
79
|
+
const info = (_a = this.schema.info) === null || _a === void 0 ? void 0 : _a[locale];
|
|
80
|
+
if (!info) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
locale,
|
|
85
|
+
description: info.description,
|
|
86
|
+
keywords: (_b = info.keywords) === null || _b === void 0 ? void 0 : _b.join(', '),
|
|
87
|
+
// TODO: maybe move this to task logic, it's more an exception than data handling
|
|
88
|
+
whatsNew: context.versionIsFirst ? undefined : info.releaseNotes || exports.DEFAULT_WHATSNEW,
|
|
89
|
+
marketingUrl: info.marketingUrl,
|
|
90
|
+
promotionalText: info.promoText,
|
|
91
|
+
supportUrl: info.supportUrl,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.AppleConfigReader = AppleConfigReader;
|