shipthis 0.1.30 → 0.1.32

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 (86) hide show
  1. package/README.md +122 -41
  2. package/assets/markdown/create-google-play-game.md +2 -4
  3. package/assets/markdown/ship-success.md +1 -1
  4. package/dist/{AppleBundleIdDetails-Fp5COwTa.js → AppleBundleIdDetails-6H3cNWxw.js} +17 -19
  5. package/dist/{Command-1p5alCz3.js → Command-WPpmLPkL.js} +13 -12
  6. package/dist/CommandGame-cxzWG4nT.js +7 -0
  7. package/dist/{Create-1xAdntNl.js → Create-3Ob8sjik.js} +20 -20
  8. package/dist/GameStatus-BQEtVKvv.js +137 -0
  9. package/dist/{Import-CzC-M4ln.js → Import-CFuPDI0K.js} +33 -35
  10. package/dist/{JobLogTail-CZxoMSd5.js → JobLogTail-0CBLoG8N.js} +53 -52
  11. package/dist/{JobProgress-BjNgtIjm.js → JobProgress-lKqVT88m.js} +46 -37
  12. package/dist/{JobStatusTable-BB-PWlwj.js → JobStatusTable-C_ZsZJCm.js} +14 -13
  13. package/dist/{NextSteps-CK9zHOCt.js → NextSteps-DbJHmscQ.js} +1 -3
  14. package/dist/{ProgressSpinner-6pw1T8Iw.js → ProgressSpinner-DGcakQSK.js} +1 -1
  15. package/dist/{ProjectCredentialsTable-DyZep993.js → ProjectCredentialsTable-B5pHOnGu.js} +11 -10
  16. package/dist/{StatusTable-Dm5St4g-.js → StatusTable-DzRWcMr4.js} +7 -9
  17. package/dist/{Table-CvM6pccN.js → Table-FaNgpyeq.js} +15 -15
  18. package/dist/{UserCredentialsTable-BraKyDWT.js → UserCredentialsTable-3W3qesh7.js} +18 -19
  19. package/dist/{baseAppleCommand-BHRIBtTj.js → baseAppleCommand-BGV088--.js} +1 -1
  20. package/dist/{baseGameAndroidCommand-SrDRbhAG.js → baseGameAndroidCommand-CsemgVjp.js} +23 -23
  21. package/dist/commands/apple/apiKey/create.js +35 -35
  22. package/dist/commands/apple/apiKey/export.js +26 -26
  23. package/dist/commands/apple/apiKey/import.js +27 -27
  24. package/dist/commands/apple/apiKey/status.js +31 -31
  25. package/dist/commands/apple/certificate/create.js +39 -39
  26. package/dist/commands/apple/certificate/export.js +26 -26
  27. package/dist/commands/apple/certificate/import.js +27 -27
  28. package/dist/commands/apple/certificate/status.js +31 -31
  29. package/dist/commands/apple/login.js +15 -15
  30. package/dist/commands/apple/status.js +28 -28
  31. package/dist/commands/dashboard.js +10 -10
  32. package/dist/commands/game/android/apiKey/connect.js +28 -28
  33. package/dist/commands/game/android/apiKey/create.js +28 -28
  34. package/dist/commands/game/android/apiKey/export.js +29 -29
  35. package/dist/commands/game/android/apiKey/import.js +31 -31
  36. package/dist/commands/game/android/apiKey/invite.js +14 -14
  37. package/dist/commands/game/android/apiKey/status.js +29 -29
  38. package/dist/commands/game/android/keyStore/create.js +24 -24
  39. package/dist/commands/game/android/keyStore/export.js +28 -28
  40. package/dist/commands/game/android/keyStore/import.js +35 -35
  41. package/dist/commands/game/android/keyStore/status.js +26 -26
  42. package/dist/commands/game/android/status.js +14 -58
  43. package/dist/commands/game/build/download.js +24 -24
  44. package/dist/commands/game/build/list.js +37 -37
  45. package/dist/commands/game/create.js +15 -15
  46. package/dist/commands/game/details.js +35 -36
  47. package/dist/commands/game/export.js +12 -12
  48. package/dist/commands/game/ios/app/addTester.js +24 -24
  49. package/dist/commands/game/ios/app/create.js +24 -24
  50. package/dist/commands/game/ios/app/status.js +29 -29
  51. package/dist/commands/game/ios/app/sync.js +31 -31
  52. package/dist/commands/game/ios/profile/create.js +30 -30
  53. package/dist/commands/game/ios/profile/export.js +28 -28
  54. package/dist/commands/game/ios/profile/import.js +32 -32
  55. package/dist/commands/game/ios/profile/status.js +36 -36
  56. package/dist/commands/game/ios/status.js +46 -58
  57. package/dist/commands/game/ios/wizard.js +31 -31
  58. package/dist/commands/game/job/list.js +34 -34
  59. package/dist/commands/game/job/status.js +31 -31
  60. package/dist/commands/game/list.js +45 -41
  61. package/dist/commands/game/ship.js +73 -70
  62. package/dist/commands/game/status.js +38 -82
  63. package/dist/commands/game/wizard.js +271 -307
  64. package/dist/commands/internal/fastlane.js +15 -17
  65. package/dist/commands/internal/readme.js +38 -36
  66. package/dist/commands/login.js +14 -14
  67. package/dist/commands/status.js +35 -33
  68. package/dist/{export-BKn02-NH.js → export-CXsVPXA1.js} +5 -5
  69. package/dist/{git-DREGq-jc.js → git-BpsfNFZ_.js} +8 -8
  70. package/dist/{import-CRMaNBVF.js → import-DGvG5REx.js} +14 -14
  71. package/dist/{index-DxzXU9Hd.js → index-BhhiXbey.js} +244 -221
  72. package/dist/{index-OZi8bvu8.js → index-C03TV1_J.js} +54 -38
  73. package/dist/{index-BTAL7EB_.js → index-C66Dd8Xc.js} +80 -79
  74. package/dist/{index-35Eswf6F.js → index-CGBdOm1q.js} +43 -27
  75. package/dist/{index--EbYyBAZ.js → index-CS9Gwcb0.js} +41 -43
  76. package/dist/{index-u1aj1OQW.js → index-CtTI85m-.js} +6 -6
  77. package/dist/{upload-Bw0zrS4M.js → upload-8y5MQEm9.js} +22 -22
  78. package/dist/{useAndroidServiceAccountTestResult-CJLIEYmA.js → useAndroidServiceAccountTestResult-DZk5SMxI.js} +11 -13
  79. package/dist/{useAppleApp-cnb8gX0x.js → useAppleApp-DWYGURwU.js} +4 -4
  80. package/dist/{useAppleBundleId-B0Etav8g.js → useAppleBundleId-PsTJ2g1B.js} +6 -6
  81. package/dist/{useProjectCredentials-DX3e_PPc.js → useProjectCredentials-BEphqa18.js} +10 -12
  82. package/dist/{useWebSocket-BOCa8v6o.js → useWebSocket-5PYa2QER.js} +1 -1
  83. package/dist/utils/help.js +4 -4
  84. package/package.json +4 -2
  85. package/dist/CommandGame-Z4eUQBjn.js +0 -9
  86. package/dist/{RunWithSpinner-BVXNWGD3.js → RunWithSpinner-gMVA07bZ.js} +2 -2
@@ -1,44 +1,44 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { m as CertificateType, l as Certificate, P as Platform, C as CredentialsType } from '../../../index-DxzXU9Hd.js';
5
- import { g as getUserCredentials } from '../../../index-u1aj1OQW.js';
6
- import 'react';
7
- import '../../../index-BTAL7EB_.js';
4
+ import { g as getUserCredentials } from '../../../index-CtTI85m-.js';
5
+ import forge from 'node-forge';
6
+ import { l as CertificateType, k as Certificate, P as Platform, C as CredentialsType } from '../../../index-BhhiXbey.js';
8
7
  import 'ink-spinner';
9
- import 'axios';
10
- import 'crypto-js';
11
- import 'uuid';
12
- import 'fs';
13
- import 'luxon';
14
- import '@inkjs/ui';
15
- import '@tanstack/react-query';
16
- import 'yazl';
17
- import 'crypto';
18
- import 'readline-sync';
19
- import 'node:readline';
8
+ import 'node:crypto';
9
+ import 'node:fs';
20
10
  import 'node:path';
11
+ import 'node:readline';
21
12
  import 'node:url';
13
+ import 'readline-sync';
14
+ import 'luxon';
15
+ import 'axios';
22
16
  import 'isomorphic-git';
17
+ import '@tanstack/react-query';
18
+ import 'react';
19
+ import 'crypto-js';
20
+ import 'uuid';
23
21
  import 'fast-glob';
22
+ import 'yazl';
24
23
  import 'socket.io-client';
24
+ import 'fullscreen-ink';
25
+ import 'string-length';
26
+ import 'strip-ansi';
25
27
  import 'open';
28
+ import '@inkjs/ui';
26
29
  import 'marked';
27
30
  import 'marked-terminal';
28
- import 'path';
29
31
  import 'qrcode';
30
- import { R as RunWithSpinner } from '../../../RunWithSpinner-BVXNWGD3.js';
31
- import 'string-length';
32
- import 'strip-ansi';
33
- import { C as Command } from '../../../Command-1p5alCz3.js';
34
- import forge from 'node-forge';
35
- import { B as BaseAppleCommand } from '../../../baseAppleCommand-BHRIBtTj.js';
36
- import { u as uploadUserCredentials } from '../../../upload-Bw0zrS4M.js';
32
+ import { R as RunWithSpinner } from '../../../RunWithSpinner-gMVA07bZ.js';
33
+ import '../../../index-C66Dd8Xc.js';
34
+ import { C as Command } from '../../../Command-WPpmLPkL.js';
35
+ import { B as BaseAppleCommand } from '../../../baseAppleCommand-BGV088--.js';
36
+ import { u as uploadUserCredentials } from '../../../upload-8y5MQEm9.js';
37
37
  import '@expo/apple-utils/build/index.js';
38
- import 'ini';
39
38
  import 'deepmerge';
40
- import '../../../index-35Eswf6F.js';
41
- import '../../../useAndroidServiceAccountTestResult-CJLIEYmA.js';
39
+ import 'ini';
40
+ import '../../../index-CGBdOm1q.js';
41
+ import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
42
42
 
43
43
  function decodeCertificate(certificateContent) {
44
44
  const decodedContent = forge.util.decode64(certificateContent);
@@ -51,12 +51,12 @@ function encodePkcs12(pkcs12Asn1) {
51
51
  }
52
52
  async function createCertificate(ctx, certificateType = CertificateType.IOS_DISTRIBUTION) {
53
53
  const {
54
- pem: csrPem,
55
- keyPair: { privateKey }
54
+ keyPair: { privateKey },
55
+ pem: csrPem
56
56
  } = await Certificate.createCertificateSigningRequestAsync();
57
57
  const certificate = await Certificate.createAsync(ctx, {
58
- csrContent: csrPem,
59
- certificateType
58
+ certificateType,
59
+ csrContent: csrPem
60
60
  });
61
61
  return {
62
62
  certificate,
@@ -68,8 +68,8 @@ function exportCertificate(certificate, privateKey) {
68
68
  const decodedCertificate = decodeCertificate(certificate.attributes.certificateContent);
69
69
  const password = forge.util.encode64(forge.random.getBytesSync(16));
70
70
  const pkcs12Asn1 = forge.pkcs12.toPkcs12Asn1(privateKey, [decodedCertificate], password, {
71
- friendlyName: "key",
72
- algorithm: "3des"
71
+ algorithm: "3des",
72
+ friendlyName: "key"
73
73
  });
74
74
  const encodedPkcs12 = encodePkcs12(pkcs12Asn1);
75
75
  return {
@@ -93,7 +93,7 @@ class AppleCertificateCreate extends BaseAppleCommand {
93
93
  const userAppleDistCredentials = userCredentials.filter(
94
94
  (cred) => cred.platform == Platform.IOS && cred.type == CredentialsType.CERTIFICATE
95
95
  );
96
- if (userAppleDistCredentials.length !== 0 && !force) {
96
+ if (userAppleDistCredentials.length > 0 && !force) {
97
97
  this.error("An Apple Distribution Certificate already exists. Use --force to overwrite it.");
98
98
  }
99
99
  const authState = await this.refreshAppleAuthState();
@@ -101,15 +101,15 @@ class AppleCertificateCreate extends BaseAppleCommand {
101
101
  const createCert = async () => {
102
102
  const { certificate, privateKey } = await createCertificate(ctx);
103
103
  const exported = exportCertificate(certificate, privateKey);
104
- const serialNumber = certificate.attributes.serialNumber;
104
+ const { serialNumber } = certificate.attributes;
105
105
  await uploadUserCredentials({
106
- platform: Platform.IOS,
107
- type: CredentialsType.CERTIFICATE,
108
106
  contents: {
109
107
  serialNumber,
110
108
  ...exported
111
109
  },
112
- serialNumber
110
+ platform: Platform.IOS,
111
+ serialNumber,
112
+ type: CredentialsType.CERTIFICATE
113
113
  });
114
114
  };
115
115
  const handleComplete = async () => {
@@ -120,9 +120,9 @@ class AppleCertificateCreate extends BaseAppleCommand {
120
120
  /* @__PURE__ */ jsx(Command, { command: this, children: /* @__PURE__ */ jsx(
121
121
  RunWithSpinner,
122
122
  {
123
- msgInProgress: `Creating certificate in the Apple Developer Portal...`,
124
- msgComplete: `Certificate created and saved to ShipThis`,
125
123
  executeMethod: createCert,
124
+ msgComplete: `Certificate created and saved to ShipThis`,
125
+ msgInProgress: `Creating certificate in the Apple Developer Portal...`,
126
126
  onComplete: handleComplete
127
127
  }
128
128
  ) })
@@ -1,42 +1,42 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
+ import * as fs from 'node:fs';
2
3
  import { Args, Flags } from '@oclif/core';
3
4
  import { render } from 'ink';
4
- import * as fs from 'fs';
5
- import { B as BaseAuthenticatedCommand, P as Platform, C as CredentialsType } from '../../../index-DxzXU9Hd.js';
6
- import { g as getUserCredentials } from '../../../index-u1aj1OQW.js';
7
- import 'react';
8
- import '../../../index-BTAL7EB_.js';
5
+ import { g as getUserCredentials } from '../../../index-CtTI85m-.js';
6
+ import { B as BaseAuthenticatedCommand, P as Platform, C as CredentialsType } from '../../../index-BhhiXbey.js';
9
7
  import 'ink-spinner';
10
- import 'axios';
11
- import 'crypto-js';
12
- import 'uuid';
13
- import 'luxon';
14
- import '@inkjs/ui';
15
- import '@tanstack/react-query';
16
- import 'yazl';
17
- import 'crypto';
18
- import 'readline-sync';
19
- import 'node:readline';
8
+ import 'node:crypto';
20
9
  import 'node:path';
10
+ import 'node:readline';
21
11
  import 'node:url';
12
+ import 'readline-sync';
13
+ import 'luxon';
14
+ import 'axios';
22
15
  import 'isomorphic-git';
16
+ import '@tanstack/react-query';
17
+ import 'react';
18
+ import 'crypto-js';
19
+ import 'uuid';
23
20
  import 'fast-glob';
21
+ import 'yazl';
24
22
  import 'socket.io-client';
23
+ import 'fullscreen-ink';
24
+ import 'string-length';
25
+ import 'strip-ansi';
25
26
  import 'open';
27
+ import '@inkjs/ui';
26
28
  import 'marked';
27
29
  import 'marked-terminal';
28
- import 'path';
29
30
  import 'qrcode';
30
- import { R as RunWithSpinner } from '../../../RunWithSpinner-BVXNWGD3.js';
31
- import 'string-length';
32
- import 'strip-ansi';
33
- import { C as Command } from '../../../Command-1p5alCz3.js';
34
- import { e as exportCredential } from '../../../export-BKn02-NH.js';
31
+ import { R as RunWithSpinner } from '../../../RunWithSpinner-gMVA07bZ.js';
32
+ import '../../../index-C66Dd8Xc.js';
33
+ import { C as Command } from '../../../Command-WPpmLPkL.js';
34
+ import { e as exportCredential } from '../../../export-CXsVPXA1.js';
35
35
  import '@expo/apple-utils/build/index.js';
36
- import 'ini';
37
36
  import 'deepmerge';
38
- import '../../../index-35Eswf6F.js';
39
- import '../../../useAndroidServiceAccountTestResult-CJLIEYmA.js';
37
+ import 'ini';
38
+ import '../../../index-CGBdOm1q.js';
39
+ import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
40
 
41
41
  class AppleCertificateExport extends BaseAuthenticatedCommand {
42
42
  static args = {
@@ -68,9 +68,9 @@ class AppleCertificateExport extends BaseAuthenticatedCommand {
68
68
  /* @__PURE__ */ jsx(Command, { command: this, children: /* @__PURE__ */ jsx(
69
69
  RunWithSpinner,
70
70
  {
71
- msgInProgress: `Exporting certificate to ${file}...`,
71
+ executeMethod: () => exportCredential({ credentialId: cert.id, zipPath: file }),
72
72
  msgComplete: `Certificate exported to ${file}`,
73
- executeMethod: () => exportCredential({ zipPath: file, credentialId: cert.id }),
73
+ msgInProgress: `Exporting certificate to ${file}...`,
74
74
  onComplete: handleComplete
75
75
  }
76
76
  ) })
@@ -1,42 +1,42 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
+ import * as fs from 'node:fs';
2
3
  import { Args, Flags } from '@oclif/core';
3
4
  import { render } from 'ink';
4
- import * as fs from 'fs';
5
- import { B as BaseAuthenticatedCommand, P as Platform, C as CredentialsType } from '../../../index-DxzXU9Hd.js';
6
- import { g as getUserCredentials } from '../../../index-u1aj1OQW.js';
7
- import 'react';
8
- import '../../../index-BTAL7EB_.js';
5
+ import { g as getUserCredentials } from '../../../index-CtTI85m-.js';
6
+ import { B as BaseAuthenticatedCommand, P as Platform, C as CredentialsType } from '../../../index-BhhiXbey.js';
9
7
  import 'ink-spinner';
10
- import 'axios';
11
- import 'crypto-js';
12
- import 'uuid';
13
- import 'luxon';
14
- import '@inkjs/ui';
15
- import '@tanstack/react-query';
16
- import 'yazl';
17
- import 'crypto';
18
- import 'readline-sync';
19
- import 'node:readline';
8
+ import 'node:crypto';
20
9
  import 'node:path';
10
+ import 'node:readline';
21
11
  import 'node:url';
12
+ import 'readline-sync';
13
+ import 'luxon';
14
+ import 'axios';
22
15
  import 'isomorphic-git';
16
+ import '@tanstack/react-query';
17
+ import 'react';
18
+ import 'crypto-js';
19
+ import 'uuid';
23
20
  import 'fast-glob';
21
+ import 'yazl';
24
22
  import 'socket.io-client';
23
+ import 'fullscreen-ink';
24
+ import 'string-length';
25
+ import 'strip-ansi';
25
26
  import 'open';
27
+ import '@inkjs/ui';
26
28
  import 'marked';
27
29
  import 'marked-terminal';
28
- import 'path';
29
30
  import 'qrcode';
30
- import { R as RunWithSpinner } from '../../../RunWithSpinner-BVXNWGD3.js';
31
- import 'string-length';
32
- import 'strip-ansi';
33
- import { C as Command } from '../../../Command-1p5alCz3.js';
34
- import { i as importCredential } from '../../../import-CRMaNBVF.js';
31
+ import { R as RunWithSpinner } from '../../../RunWithSpinner-gMVA07bZ.js';
32
+ import '../../../index-C66Dd8Xc.js';
33
+ import { C as Command } from '../../../Command-WPpmLPkL.js';
34
+ import { i as importCredential } from '../../../import-DGvG5REx.js';
35
35
  import '@expo/apple-utils/build/index.js';
36
- import 'ini';
37
36
  import 'deepmerge';
38
- import '../../../index-35Eswf6F.js';
39
- import '../../../useAndroidServiceAccountTestResult-CJLIEYmA.js';
37
+ import 'ini';
38
+ import '../../../index-CGBdOm1q.js';
39
+ import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
40
 
41
41
  class AppleCertificateImport extends BaseAuthenticatedCommand {
42
42
  static args = {
@@ -62,7 +62,7 @@ class AppleCertificateImport extends BaseAuthenticatedCommand {
62
62
  const userAppleDistCredentials = userCredentials.filter(
63
63
  (cred) => cred.platform == Platform.IOS && cred.type == CredentialsType.CERTIFICATE
64
64
  );
65
- if (userAppleDistCredentials.length !== 0 && !force) {
65
+ if (userAppleDistCredentials.length > 0 && !force) {
66
66
  this.error("An Apple Distribution Certificate already exists. Use --force to overwrite it.");
67
67
  }
68
68
  const handleComplete = async () => {
@@ -72,9 +72,9 @@ class AppleCertificateImport extends BaseAuthenticatedCommand {
72
72
  /* @__PURE__ */ jsx(Command, { command: this, children: /* @__PURE__ */ jsx(
73
73
  RunWithSpinner,
74
74
  {
75
- msgInProgress: `Importing certificate from ${file}...`,
75
+ executeMethod: () => importCredential({ platform: Platform.IOS, type: CredentialsType.CERTIFICATE, zipPath: file }),
76
76
  msgComplete: `Certificate imported from ${file}`,
77
- executeMethod: () => importCredential({ zipPath: file, type: CredentialsType.CERTIFICATE, platform: Platform.IOS }),
77
+ msgInProgress: `Importing certificate from ${file}...`,
78
78
  onComplete: handleComplete
79
79
  }
80
80
  ) })
@@ -1,43 +1,43 @@
1
1
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { Box, Text, render } from 'ink';
4
- import { b as getShortDate, l as Certificate, m as CertificateType, P as Platform, C as CredentialsType, B as BaseAuthenticatedCommand } from '../../../index-DxzXU9Hd.js';
5
- import 'react';
6
- import '../../../index-BTAL7EB_.js';
4
+ import { b as getShortDate, k as Certificate, l as CertificateType, P as Platform, C as CredentialsType, B as BaseAuthenticatedCommand } from '../../../index-BhhiXbey.js';
7
5
  import Spinner from 'ink-spinner';
8
- import 'axios';
9
- import 'crypto-js';
10
- import 'uuid';
11
- import 'fs';
12
- import { DateTime } from 'luxon';
13
- import '@inkjs/ui';
14
- import { useQuery } from '@tanstack/react-query';
15
- import 'yazl';
16
- import 'crypto';
17
- import 'readline-sync';
18
- import 'node:readline';
6
+ import 'node:crypto';
7
+ import 'node:fs';
19
8
  import 'node:path';
9
+ import 'node:readline';
20
10
  import 'node:url';
11
+ import 'readline-sync';
12
+ import { DateTime } from 'luxon';
13
+ import 'axios';
21
14
  import 'isomorphic-git';
15
+ import { useQuery } from '@tanstack/react-query';
16
+ import 'react';
17
+ import 'crypto-js';
18
+ import 'uuid';
22
19
  import 'fast-glob';
20
+ import 'yazl';
23
21
  import 'socket.io-client';
22
+ import 'fullscreen-ink';
23
+ import 'string-length';
24
+ import 'strip-ansi';
24
25
  import 'open';
26
+ import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-3W3qesh7.js';
27
+ import '@inkjs/ui';
25
28
  import 'marked';
26
29
  import 'marked-terminal';
27
- import 'path';
28
30
  import 'qrcode';
29
- import 'string-length';
30
- import 'strip-ansi';
31
- import { g as getShortUUID } from '../../../index-35Eswf6F.js';
32
- import { u as useUserCredentials, U as UserCredentialsTable } from '../../../UserCredentialsTable-BraKyDWT.js';
33
- import { T as Table } from '../../../Table-CvM6pccN.js';
31
+ import '../../../index-C66Dd8Xc.js';
32
+ import { g as getShortUUID } from '../../../index-CGBdOm1q.js';
33
+ import { T as Table } from '../../../Table-FaNgpyeq.js';
34
34
  import { T as Title } from '../../../Title-BCQtayg6.js';
35
- import { N as NextSteps } from '../../../NextSteps-CK9zHOCt.js';
36
- import { C as Command } from '../../../Command-1p5alCz3.js';
35
+ import { N as NextSteps } from '../../../NextSteps-DbJHmscQ.js';
36
+ import { C as Command } from '../../../Command-WPpmLPkL.js';
37
37
  import '@expo/apple-utils/build/index.js';
38
- import 'ini';
39
38
  import 'deepmerge';
40
- import '../../../useAndroidServiceAccountTestResult-CJLIEYmA.js';
39
+ import 'ini';
40
+ import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
41
41
 
42
42
  async function queryAppleCertificates({ ctx }) {
43
43
  const appleCerts = await Certificate.getAsync(ctx, {
@@ -55,17 +55,17 @@ const canAppleCertificateBeUsed = (cert, userCredentials) => {
55
55
  };
56
56
  function getAppleCertificateSummary(cert, userCredentials) {
57
57
  return {
58
+ canBeUsed: canAppleCertificateBeUsed(cert, userCredentials),
59
+ expires: getShortDate(DateTime.fromISO(cert.attributes.expirationDate)),
58
60
  id: getShortUUID(cert.id),
59
61
  name: cert.attributes.name,
60
- serial: cert.attributes.serialNumber,
61
- expires: getShortDate(DateTime.fromISO(cert.attributes.expirationDate)),
62
- canBeUsed: canAppleCertificateBeUsed(cert, userCredentials)
62
+ serial: cert.attributes.serialNumber
63
63
  };
64
64
  }
65
65
  const useAppleCertificates = (props) => {
66
66
  const queryResult = useQuery({
67
- queryKey: ["appleCertificates"],
68
- queryFn: () => queryAppleCertificates(props)
67
+ queryFn: () => queryAppleCertificates(props),
68
+ queryKey: ["appleCertificates"]
69
69
  });
70
70
  return queryResult;
71
71
  };
@@ -82,7 +82,7 @@ const AppleCertificatesTable = ({ ctx, ...boxProps }) => {
82
82
  /* @__PURE__ */ jsx(Title, { children: "Distribution Certificates in your Apple account" }),
83
83
  isLoading && /* @__PURE__ */ jsx(Spinner, { type: "dots" }),
84
84
  certs && userCredentialsResponse && /* @__PURE__ */ jsxs(Fragment, { children: [
85
- /* @__PURE__ */ jsxs(Box, { marginLeft: 2, marginBottom: 1, flexDirection: "column", children: [
85
+ /* @__PURE__ */ jsxs(Box, { flexDirection: "column", marginBottom: 1, marginLeft: 2, children: [
86
86
  /* @__PURE__ */ jsx(Text, { children: `You have ${certs.length} Distribution Certificates in your Apple account` }),
87
87
  /* @__PURE__ */ jsx(Text, { children: `${hasUsable ? "One" : "None"} of these can be used by ShipThis` })
88
88
  ] }),
@@ -118,7 +118,7 @@ class AppleCertificateStatus extends BaseAuthenticatedCommand {
118
118
  UserCredentialsTable,
119
119
  {
120
120
  credentialTypeName: "Apple iOS Distribution Certificate",
121
- queryProps: { type: CredentialsType.CERTIFICATE, platform: Platform.IOS }
121
+ queryProps: { platform: Platform.IOS, type: CredentialsType.CERTIFICATE }
122
122
  }
123
123
  ),
124
124
  showApple && /* @__PURE__ */ jsx(AppleCertificatesTable, { ctx })
@@ -1,31 +1,31 @@
1
1
  import { Flags } from '@oclif/core';
2
- import { _ as Auth, B as BaseAuthenticatedCommand } from '../../index-DxzXU9Hd.js';
3
- import { a as getInput, e as getMaskedInput } from '../../index-35Eswf6F.js';
4
- import 'path';
5
- import 'fs';
6
- import '@expo/apple-utils/build/index.js';
2
+ import { _ as Auth, B as BaseAuthenticatedCommand } from '../../index-BhhiXbey.js';
3
+ import { a as getInput, e as getMaskedInput } from '../../index-CGBdOm1q.js';
4
+ import 'node:fs';
7
5
  import 'axios';
8
6
  import 'crypto-js';
9
7
  import 'uuid';
10
8
  import 'luxon';
11
- import 'crypto';
12
- import 'readline-sync';
13
- import 'node:readline';
14
9
  import 'node:path';
10
+ import '@expo/apple-utils/build/index.js';
11
+ import 'node:crypto';
12
+ import 'node:readline';
15
13
  import 'node:url';
14
+ import 'readline-sync';
16
15
  import 'isomorphic-git';
17
- import 'ini';
18
16
  import 'deepmerge';
19
- import 'react';
17
+ import 'ini';
20
18
  import '@tanstack/react-query';
19
+ import 'react';
21
20
  import 'fast-glob';
22
21
  import 'yazl';
23
22
  import 'socket.io-client';
23
+ import 'fullscreen-ink';
24
24
 
25
25
  async function getNewAuthState(username, password) {
26
26
  const authState = await Auth.loginAsync({
27
- username,
28
- password
27
+ password,
28
+ username
29
29
  });
30
30
  return authState;
31
31
  }
@@ -38,12 +38,12 @@ class AppleLogin extends BaseAuthenticatedCommand {
38
38
  "<%= config.bin %> <%= command.id %> --force --appleEmail me@email.nowhere"
39
39
  ];
40
40
  static flags = {
41
- quiet: Flags.boolean({ char: "q", description: "Avoid output except for interactions and errors" }),
42
- force: Flags.boolean({ char: "f" }),
43
41
  appleEmail: Flags.string({
44
42
  char: "e",
45
43
  description: "Your Apple Developer email address"
46
- })
44
+ }),
45
+ force: Flags.boolean({ char: "f" }),
46
+ quiet: Flags.boolean({ char: "q", description: "Avoid output except for interactions and errors" })
47
47
  };
48
48
  async run() {
49
49
  const { flags } = this;
@@ -1,42 +1,42 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { B as BaseAuthenticatedCommand } from '../../index-DxzXU9Hd.js';
3
- import 'react';
4
2
  import { render } from 'ink';
5
- import '../../index-BTAL7EB_.js';
3
+ import { B as BaseAuthenticatedCommand } from '../../index-BhhiXbey.js';
6
4
  import 'ink-spinner';
7
- import 'axios';
8
- import 'crypto-js';
9
- import 'uuid';
10
- import 'fs';
11
- import 'luxon';
12
- import '@inkjs/ui';
13
- import '@tanstack/react-query';
14
- import 'yazl';
15
- import 'crypto';
16
- import 'readline-sync';
17
- import 'node:readline';
5
+ import 'node:crypto';
6
+ import 'node:fs';
18
7
  import 'node:path';
8
+ import 'node:readline';
19
9
  import 'node:url';
10
+ import 'readline-sync';
11
+ import 'luxon';
12
+ import 'axios';
20
13
  import 'isomorphic-git';
21
14
  import '@oclif/core';
15
+ import '@tanstack/react-query';
16
+ import 'react';
17
+ import 'crypto-js';
18
+ import 'uuid';
22
19
  import 'fast-glob';
20
+ import 'yazl';
23
21
  import 'socket.io-client';
22
+ import 'fullscreen-ink';
23
+ import 'string-length';
24
+ import 'strip-ansi';
25
+ import { S as StatusTable } from '../../StatusTable-DzRWcMr4.js';
24
26
  import 'open';
27
+ import '@inkjs/ui';
25
28
  import 'marked';
26
29
  import 'marked-terminal';
27
- import 'path';
28
- import { N as NextSteps } from '../../NextSteps-CK9zHOCt.js';
30
+ import { N as NextSteps } from '../../NextSteps-DbJHmscQ.js';
29
31
  import 'qrcode';
30
- import { S as StatusTable } from '../../StatusTable-Dm5St4g-.js';
31
- import 'string-length';
32
- import 'strip-ansi';
33
- import { C as Command } from '../../Command-1p5alCz3.js';
32
+ import '../../index-C66Dd8Xc.js';
33
+ import { C as Command } from '../../Command-WPpmLPkL.js';
34
34
  import '@expo/apple-utils/build/index.js';
35
- import 'ini';
36
35
  import 'deepmerge';
37
- import '../../index-35Eswf6F.js';
38
- import '../../useAndroidServiceAccountTestResult-CJLIEYmA.js';
36
+ import 'ini';
39
37
  import '../../Title-BCQtayg6.js';
38
+ import '../../index-CGBdOm1q.js';
39
+ import '../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
40
 
41
41
  class AppleStatus extends BaseAuthenticatedCommand {
42
42
  static args = {};
@@ -61,15 +61,15 @@ class AppleStatus extends BaseAuthenticatedCommand {
61
61
  };
62
62
  const { isAuthenticatedOnApple, session } = await checkAuth();
63
63
  const statuses = {
64
- "Authenticated on Apple Developer Portal": isAuthenticatedOnApple,
65
64
  "Apple Full Name": session?.user?.fullName || "Please authenticate",
66
- "Apple Provider Name": session?.provider?.name || "Please authenticate"
65
+ "Apple Provider Name": session?.provider?.name || "Please authenticate",
66
+ "Authenticated on Apple Developer Portal": isAuthenticatedOnApple
67
67
  };
68
- let steps = [];
69
- if (!isAuthenticatedOnApple) steps.push("$ shipthis apple login");
68
+ const steps = [];
69
+ if (!isAuthenticatedOnApple) steps.push("shipthis apple login");
70
70
  render(
71
71
  /* @__PURE__ */ jsxs(Command, { command: this, children: [
72
- /* @__PURE__ */ jsx(StatusTable, { marginBottom: 1, title: "Apple Status", statuses }),
72
+ /* @__PURE__ */ jsx(StatusTable, { marginBottom: 1, statuses, title: "Apple Status" }),
73
73
  /* @__PURE__ */ jsx(NextSteps, { steps })
74
74
  ] })
75
75
  );
@@ -1,26 +1,26 @@
1
1
  import open from 'open';
2
- import { B as BaseAuthenticatedCommand, X as getSingleUseUrl } from '../index-DxzXU9Hd.js';
3
- import 'path';
4
- import 'fs';
5
- import '@oclif/core';
6
- import '@expo/apple-utils/build/index.js';
2
+ import { B as BaseAuthenticatedCommand, X as getSingleUseUrl } from '../index-BhhiXbey.js';
3
+ import 'node:fs';
7
4
  import 'axios';
8
5
  import 'crypto-js';
9
6
  import 'uuid';
10
7
  import 'luxon';
11
- import 'crypto';
12
- import 'readline-sync';
13
- import 'node:readline';
14
8
  import 'node:path';
9
+ import '@oclif/core';
10
+ import '@expo/apple-utils/build/index.js';
11
+ import 'node:crypto';
12
+ import 'node:readline';
15
13
  import 'node:url';
14
+ import 'readline-sync';
16
15
  import 'isomorphic-git';
17
- import 'ini';
18
16
  import 'deepmerge';
19
- import 'react';
17
+ import 'ini';
20
18
  import '@tanstack/react-query';
19
+ import 'react';
21
20
  import 'fast-glob';
22
21
  import 'yazl';
23
22
  import 'socket.io-client';
23
+ import 'fullscreen-ink';
24
24
 
25
25
  class Dashboard extends BaseAuthenticatedCommand {
26
26
  static args = {};