shipthis 0.1.32 → 0.1.34

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 +8 -7
  2. package/assets/markdown/apikey-create.md +11 -0
  3. package/dist/{AppleBundleIdDetails-6H3cNWxw.js → AppleBundleIdDetails-By-sSGNl.js} +4 -4
  4. package/dist/{Command-WPpmLPkL.js → Command-VWMnGslo.js} +2 -2
  5. package/dist/{CommandGame-cxzWG4nT.js → CommandGame-BSVPZzNl.js} +2 -2
  6. package/dist/{Create-3Ob8sjik.js → Create-SR1Mq7BY.js} +4 -4
  7. package/dist/{GameStatus-BQEtVKvv.js → GameStatus-1ntFyxEx.js} +3 -3
  8. package/dist/{Import-CFuPDI0K.js → Import-cedOWPDz.js} +6 -6
  9. package/dist/{JobLogTail-0CBLoG8N.js → JobLogTail-C_W8UAMg.js} +5 -5
  10. package/dist/{JobProgress-lKqVT88m.js → JobProgress-CI385G53.js} +11 -8
  11. package/dist/{JobStatusTable-C_ZsZJCm.js → JobStatusTable-CdbKtwJE.js} +4 -4
  12. package/dist/{ProgressSpinner-DGcakQSK.js → ProgressSpinner-Um6ARKlk.js} +1 -1
  13. package/dist/{ProjectCredentialsTable-B5pHOnGu.js → ProjectCredentialsTable-ZnuIfcDB.js} +2 -2
  14. package/dist/{RunWithSpinner-gMVA07bZ.js → RunWithSpinner-DucRnFp6.js} +2 -1
  15. package/dist/{UserCredentialsTable-3W3qesh7.js → UserCredentialsTable-DRkAYgEA.js} +3 -3
  16. package/dist/{baseAppleCommand-BGV088--.js → baseAppleCommand-CsO-_Yzn.js} +1 -1
  17. package/dist/{baseGameAndroidCommand-CsemgVjp.js → baseGameAndroidCommand-CdjaAbNX.js} +2 -2
  18. package/dist/commands/apiKey/create.js +97 -0
  19. package/dist/commands/apiKey/list.js +91 -0
  20. package/dist/commands/apiKey/revoke.js +82 -0
  21. package/dist/commands/apple/apiKey/create.js +10 -10
  22. package/dist/commands/apple/apiKey/export.js +9 -9
  23. package/dist/commands/apple/apiKey/import.js +9 -9
  24. package/dist/commands/apple/apiKey/status.js +7 -7
  25. package/dist/commands/apple/certificate/create.js +10 -10
  26. package/dist/commands/apple/certificate/export.js +9 -9
  27. package/dist/commands/apple/certificate/import.js +9 -9
  28. package/dist/commands/apple/certificate/status.js +8 -8
  29. package/dist/commands/apple/login.js +3 -2
  30. package/dist/commands/apple/status.js +5 -5
  31. package/dist/commands/dashboard.js +2 -1
  32. package/dist/commands/game/android/apiKey/connect.js +9 -9
  33. package/dist/commands/game/android/apiKey/create.js +13 -13
  34. package/dist/commands/game/android/apiKey/export.js +10 -10
  35. package/dist/commands/game/android/apiKey/import.js +10 -10
  36. package/dist/commands/game/android/apiKey/invite.js +5 -4
  37. package/dist/commands/game/android/apiKey/status.js +9 -9
  38. package/dist/commands/game/android/keyStore/create.js +11 -11
  39. package/dist/commands/game/android/keyStore/export.js +9 -9
  40. package/dist/commands/game/android/keyStore/import.js +11 -11
  41. package/dist/commands/game/android/keyStore/status.js +7 -7
  42. package/dist/commands/game/android/status.js +2 -1
  43. package/dist/commands/game/build/download.js +6 -6
  44. package/dist/commands/game/build/list.js +6 -6
  45. package/dist/commands/game/create.js +3 -2
  46. package/dist/commands/game/details.js +5 -5
  47. package/dist/commands/game/export.js +2 -1
  48. package/dist/commands/game/ios/app/addTester.js +20 -15
  49. package/dist/commands/game/ios/app/create.js +6 -6
  50. package/dist/commands/game/ios/app/status.js +8 -8
  51. package/dist/commands/game/ios/app/sync.js +7 -7
  52. package/dist/commands/game/ios/profile/create.js +11 -11
  53. package/dist/commands/game/ios/profile/export.js +9 -9
  54. package/dist/commands/game/ios/profile/import.js +9 -9
  55. package/dist/commands/game/ios/profile/status.js +7 -7
  56. package/dist/commands/game/ios/status.js +10 -10
  57. package/dist/commands/game/ios/wizard.js +13 -8
  58. package/dist/commands/game/job/list.js +5 -5
  59. package/dist/commands/game/job/status.js +9 -9
  60. package/dist/commands/game/list.js +6 -6
  61. package/dist/commands/game/ship.js +19 -17
  62. package/dist/commands/game/status.js +7 -7
  63. package/dist/commands/game/wizard.js +22 -22
  64. package/dist/commands/internal/fastlane.js +2 -1
  65. package/dist/commands/internal/readme.js +2 -1
  66. package/dist/commands/login.js +3 -2
  67. package/dist/commands/status.js +5 -5
  68. package/dist/{export-CXsVPXA1.js → export-B5Yfd9vw.js} +1 -1
  69. package/dist/{import-DGvG5REx.js → import-A2WcStHl.js} +1 -1
  70. package/dist/{index-CS9Gwcb0.js → index-BBLtvl1Y.js} +7 -7
  71. package/dist/{index-C03TV1_J.js → index-Bz1qt_8T.js} +17 -9
  72. package/dist/{index-C66Dd8Xc.js → index-CA6-uLMn.js} +23 -12
  73. package/dist/{index-BhhiXbey.js → index-CO_ssVFA.js} +28 -4
  74. package/dist/{index-CGBdOm1q.js → index-CYjZ26If.js} +2 -1
  75. package/dist/{index-CtTI85m-.js → index-CgzANgJt.js} +1 -1
  76. package/dist/{upload-8y5MQEm9.js → upload-BIsFZzBO.js} +1 -1
  77. package/dist/{useAndroidServiceAccountTestResult-DZk5SMxI.js → useAndroidServiceAccountTestResult-DueKynFy.js} +1 -1
  78. package/dist/{useAppleApp-DWYGURwU.js → useAppleApp-BZR94exU.js} +1 -1
  79. package/dist/{useAppleBundleId-PsTJ2g1B.js → useAppleBundleId-Dg5DsItN.js} +1 -1
  80. package/dist/{useProjectCredentials-BEphqa18.js → useProjectCredentials-jQYGcDhT.js} +3 -3
  81. package/dist/{useWebSocket-5PYa2QER.js → useWebSocket-CIxkPaYi.js} +1 -1
  82. package/docs/apiKey/create.md +27 -0
  83. package/docs/apiKey/list.md +30 -0
  84. package/docs/apiKey/revoke.md +26 -0
  85. package/docs/apiKey.md +93 -0
  86. package/package.json +10 -4
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { C as CredentialsType, P as Platform } from '../../../../index-BhhiXbey.js';
4
+ import { C as CredentialsType, P as Platform } from '../../../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
6
  import 'node:crypto';
7
7
  import 'node:fs';
@@ -16,7 +16,7 @@ import '@tanstack/react-query';
16
16
  import 'react';
17
17
  import 'crypto-js';
18
18
  import 'uuid';
19
- import { f as fetchKeyTestResult, n as niceError, K as KeyTestStatus } from '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
19
+ import { f as fetchKeyTestResult, n as niceError, K as KeyTestStatus } from '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
20
20
  import 'fast-glob';
21
21
  import 'yazl';
22
22
  import 'socket.io-client';
@@ -25,20 +25,20 @@ import { T as Table } from '../../../../Table-FaNgpyeq.js';
25
25
  import { T as Title } from '../../../../Title-BCQtayg6.js';
26
26
  import 'string-length';
27
27
  import 'strip-ansi';
28
- import { P as ProjectCredentialsTable } from '../../../../ProjectCredentialsTable-B5pHOnGu.js';
28
+ import { P as ProjectCredentialsTable } from '../../../../ProjectCredentialsTable-ZnuIfcDB.js';
29
29
  import 'open';
30
30
  import '@inkjs/ui';
31
31
  import 'marked';
32
32
  import 'marked-terminal';
33
33
  import 'qrcode';
34
- import '../../../../index-C66Dd8Xc.js';
35
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
36
- import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CsemgVjp.js';
34
+ import '../../../../index-CA6-uLMn.js';
35
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
36
+ import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CdjaAbNX.js';
37
37
  import '@expo/apple-utils/build/index.js';
38
38
  import 'deepmerge';
39
39
  import 'ini';
40
- import '../../../../useProjectCredentials-BEphqa18.js';
41
- import '../../../../index-CGBdOm1q.js';
40
+ import '../../../../useProjectCredentials-jQYGcDhT.js';
41
+ import '../../../../index-CYjZ26If.js';
42
42
 
43
43
  class GameAndroidApiKeyStatus extends BaseGameAndroidCommand {
44
44
  static args = {};
@@ -72,7 +72,7 @@ class GameAndroidApiKeyStatus extends BaseGameAndroidCommand {
72
72
  {
73
73
  data: [
74
74
  {
75
- "Key Works?": testResult.status == KeyTestStatus.SUCCESS,
75
+ "Key Works?": testResult.status === KeyTestStatus.SUCCESS,
76
76
  ...testResult,
77
77
  error: niceError(testResult.error)
78
78
  }
@@ -5,9 +5,9 @@ import 'node:fs';
5
5
  import 'axios';
6
6
  import 'crypto-js';
7
7
  import 'uuid';
8
- import { P as Platform, C as CredentialsType } from '../../../../index-BhhiXbey.js';
8
+ import { P as Platform, C as CredentialsType } from '../../../../index-CO_ssVFA.js';
9
9
  import 'luxon';
10
- import { a as getProjectCredentials } from '../../../../index-CtTI85m-.js';
10
+ import { a as getProjectCredentials } from '../../../../index-CgzANgJt.js';
11
11
  import 'ink-spinner';
12
12
  import 'node:crypto';
13
13
  import 'node:path';
@@ -28,17 +28,17 @@ import '@inkjs/ui';
28
28
  import 'marked';
29
29
  import 'marked-terminal';
30
30
  import 'qrcode';
31
- import '../../../../index-C66Dd8Xc.js';
32
- import { C as CreateKeystore } from '../../../../Create-3Ob8sjik.js';
33
- import { C as CommandGame } from '../../../../CommandGame-cxzWG4nT.js';
34
- import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CsemgVjp.js';
31
+ import '../../../../index-CA6-uLMn.js';
32
+ import { C as CreateKeystore } from '../../../../Create-SR1Mq7BY.js';
33
+ import { C as CommandGame } from '../../../../CommandGame-BSVPZzNl.js';
34
+ import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CdjaAbNX.js';
35
35
  import '@expo/apple-utils/build/index.js';
36
36
  import 'deepmerge';
37
37
  import 'ini';
38
- import '../../../../index-CGBdOm1q.js';
39
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
- import '../../../../RunWithSpinner-gMVA07bZ.js';
41
- import '../../../../Command-WPpmLPkL.js';
38
+ import '../../../../index-CYjZ26If.js';
39
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
40
+ import '../../../../RunWithSpinner-DucRnFp6.js';
41
+ import '../../../../Command-VWMnGslo.js';
42
42
 
43
43
  class GameAndroidKeyStoreCreate extends BaseGameAndroidCommand {
44
44
  static args = {};
@@ -55,7 +55,7 @@ class GameAndroidKeyStoreCreate extends BaseGameAndroidCommand {
55
55
  const game = await this.getGame();
56
56
  const projectCredentials = await getProjectCredentials(game.id);
57
57
  const hasKeystore = projectCredentials.some(
58
- (cred) => cred.platform == Platform.ANDROID && cred.isActive && cred.type == CredentialsType.CERTIFICATE
58
+ (cred) => cred.platform === Platform.ANDROID && cred.isActive && cred.type === CredentialsType.CERTIFICATE
59
59
  );
60
60
  if (hasKeystore && !this.flags.force) {
61
61
  this.error("A Keystore is already set on this game. Use --force to overwrite it.");
@@ -2,8 +2,8 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import * as fs from 'node:fs';
3
3
  import { Args, Flags } from '@oclif/core';
4
4
  import { render } from 'ink';
5
- import { a as getProjectCredentials } from '../../../../index-CtTI85m-.js';
6
- import { c as BaseGameCommand, P as Platform, C as CredentialsType } from '../../../../index-BhhiXbey.js';
5
+ import { a as getProjectCredentials } from '../../../../index-CgzANgJt.js';
6
+ import { c as BaseGameCommand, P as Platform, C as CredentialsType } from '../../../../index-CO_ssVFA.js';
7
7
  import 'ink-spinner';
8
8
  import 'node:crypto';
9
9
  import 'node:path';
@@ -28,15 +28,15 @@ import '@inkjs/ui';
28
28
  import 'marked';
29
29
  import 'marked-terminal';
30
30
  import 'qrcode';
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';
31
+ import { R as RunWithSpinner } from '../../../../RunWithSpinner-DucRnFp6.js';
32
+ import '../../../../index-CA6-uLMn.js';
33
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
34
+ import { e as exportCredential } from '../../../../export-B5Yfd9vw.js';
35
35
  import '@expo/apple-utils/build/index.js';
36
36
  import 'deepmerge';
37
37
  import 'ini';
38
- import '../../../../index-CGBdOm1q.js';
39
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
38
+ import '../../../../index-CYjZ26If.js';
39
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
40
40
 
41
41
  class GameAndroidKeyStoreExport extends BaseGameCommand {
42
42
  static args = {
@@ -59,7 +59,7 @@ class GameAndroidKeyStoreExport extends BaseGameCommand {
59
59
  }
60
60
  const projectCredentials = await getProjectCredentials(game.id);
61
61
  const projectAndroidKeyStoreCreds = projectCredentials.filter(
62
- (cred) => cred.platform == Platform.ANDROID && cred.type == CredentialsType.CERTIFICATE && cred.isActive
62
+ (cred) => cred.platform === Platform.ANDROID && cred.type === CredentialsType.CERTIFICATE && cred.isActive
63
63
  );
64
64
  if (projectAndroidKeyStoreCreds.length === 0) {
65
65
  this.error("No Android Keystore found which can be exported.");
@@ -2,8 +2,8 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import * as fs from 'node:fs';
3
3
  import { Args, Flags } from '@oclif/core';
4
4
  import { render } from 'ink';
5
- import { a as getProjectCredentials } from '../../../../index-CtTI85m-.js';
6
- import { c as BaseGameCommand, P as Platform, C as CredentialsType } from '../../../../index-BhhiXbey.js';
5
+ import { a as getProjectCredentials } from '../../../../index-CgzANgJt.js';
6
+ import { c as BaseGameCommand, P as Platform, C as CredentialsType } from '../../../../index-CO_ssVFA.js';
7
7
  import 'ink-spinner';
8
8
  import 'node:crypto';
9
9
  import 'node:path';
@@ -28,17 +28,17 @@ import '@inkjs/ui';
28
28
  import 'marked';
29
29
  import 'marked-terminal';
30
30
  import 'qrcode';
31
- import '../../../../index-C66Dd8Xc.js';
32
- import { I as ImportKeystore } from '../../../../Import-CFuPDI0K.js';
33
- import { C as CommandGame } from '../../../../CommandGame-cxzWG4nT.js';
34
- import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CsemgVjp.js';
31
+ import '../../../../index-CA6-uLMn.js';
32
+ import { I as ImportKeystore } from '../../../../Import-cedOWPDz.js';
33
+ import { C as CommandGame } from '../../../../CommandGame-BSVPZzNl.js';
34
+ import { B as BaseGameAndroidCommand } from '../../../../baseGameAndroidCommand-CdjaAbNX.js';
35
35
  import '@expo/apple-utils/build/index.js';
36
36
  import 'deepmerge';
37
37
  import 'ini';
38
- import '../../../../index-CGBdOm1q.js';
39
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
- import '../../../../import-DGvG5REx.js';
41
- import '../../../../Command-WPpmLPkL.js';
38
+ import '../../../../index-CYjZ26If.js';
39
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
40
+ import '../../../../import-A2WcStHl.js';
41
+ import '../../../../Command-VWMnGslo.js';
42
42
 
43
43
  class GameAndroidKeyStoreImport extends BaseGameCommand {
44
44
  static args = {
@@ -88,7 +88,7 @@ class GameAndroidKeyStoreImport extends BaseGameCommand {
88
88
  }
89
89
  const projectCredentials = await getProjectCredentials(game.id);
90
90
  const hasKeystore = projectCredentials.some(
91
- (cred) => cred.platform == Platform.ANDROID && cred.isActive && cred.type == CredentialsType.CERTIFICATE
91
+ (cred) => cred.platform === Platform.ANDROID && cred.isActive && cred.type === CredentialsType.CERTIFICATE
92
92
  );
93
93
  if (hasKeystore && !flags.force) {
94
94
  this.error("A Keystore is already set on this game. Use --force to overwrite it.");
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { render } from 'ink';
3
- import { c as BaseGameCommand, C as CredentialsType, P as Platform } from '../../../../index-BhhiXbey.js';
3
+ import { c as BaseGameCommand, C as CredentialsType, P as Platform } from '../../../../index-CO_ssVFA.js';
4
4
  import 'ink-spinner';
5
5
  import 'node:crypto';
6
6
  import 'node:fs';
@@ -22,20 +22,20 @@ import 'socket.io-client';
22
22
  import 'fullscreen-ink';
23
23
  import 'string-length';
24
24
  import 'strip-ansi';
25
- import { P as ProjectCredentialsTable } from '../../../../ProjectCredentialsTable-B5pHOnGu.js';
25
+ import { P as ProjectCredentialsTable } from '../../../../ProjectCredentialsTable-ZnuIfcDB.js';
26
26
  import 'open';
27
27
  import '@inkjs/ui';
28
28
  import 'marked';
29
29
  import 'marked-terminal';
30
30
  import 'qrcode';
31
- import '../../../../index-C66Dd8Xc.js';
32
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
31
+ import '../../../../index-CA6-uLMn.js';
32
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
33
33
  import '@expo/apple-utils/build/index.js';
34
34
  import 'deepmerge';
35
35
  import 'ini';
36
- import '../../../../useProjectCredentials-BEphqa18.js';
37
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
38
- import '../../../../index-CGBdOm1q.js';
36
+ import '../../../../useProjectCredentials-jQYGcDhT.js';
37
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
38
+ import '../../../../index-CYjZ26If.js';
39
39
  import '../../../../Table-FaNgpyeq.js';
40
40
  import '../../../../Title-BCQtayg6.js';
41
41
 
@@ -1,5 +1,5 @@
1
1
  import { Flags } from '@oclif/core';
2
- import { c as BaseGameCommand } from '../../../index-BhhiXbey.js';
2
+ import { c as BaseGameCommand } from '../../../index-CO_ssVFA.js';
3
3
  import 'node:fs';
4
4
  import 'axios';
5
5
  import 'crypto-js';
@@ -20,6 +20,7 @@ import 'fast-glob';
20
20
  import 'yazl';
21
21
  import 'socket.io-client';
22
22
  import 'fullscreen-ink';
23
+ import 'ink';
23
24
 
24
25
  class GameAndroidStatus extends BaseGameCommand {
25
26
  static args = {};
@@ -2,7 +2,7 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import * as fs from 'node:fs';
3
3
  import { Args, Flags } from '@oclif/core';
4
4
  import { render } from 'ink';
5
- import { c as BaseGameCommand, H as downloadBuildById } from '../../../index-BhhiXbey.js';
5
+ import { c as BaseGameCommand, H as downloadBuildById } from '../../../index-CO_ssVFA.js';
6
6
  import 'ink-spinner';
7
7
  import 'node:crypto';
8
8
  import 'node:path';
@@ -26,15 +26,15 @@ import '@inkjs/ui';
26
26
  import 'marked';
27
27
  import 'marked-terminal';
28
28
  import 'qrcode';
29
- import { R as RunWithSpinner } from '../../../RunWithSpinner-gMVA07bZ.js';
30
- import '../../../index-C66Dd8Xc.js';
31
- import { C as Command } from '../../../Command-WPpmLPkL.js';
29
+ import { R as RunWithSpinner } from '../../../RunWithSpinner-DucRnFp6.js';
30
+ import '../../../index-CA6-uLMn.js';
31
+ import { C as Command } from '../../../Command-VWMnGslo.js';
32
32
  import 'crypto-js';
33
33
  import '@expo/apple-utils/build/index.js';
34
34
  import 'deepmerge';
35
35
  import 'ini';
36
- import '../../../index-CGBdOm1q.js';
37
- import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
36
+ import '../../../index-CYjZ26If.js';
37
+ import '../../../useAndroidServiceAccountTestResult-DueKynFy.js';
38
38
 
39
39
  class GameBuildDownload extends BaseGameCommand {
40
40
  static args = {
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { Box, Text, render } from 'ink';
4
- import { c as BaseGameCommand } from '../../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand } from '../../../index-CO_ssVFA.js';
5
5
  import Spinner from 'ink-spinner';
6
6
  import 'node:crypto';
7
7
  import 'node:fs';
@@ -16,7 +16,7 @@ import '@tanstack/react-query';
16
16
  import 'react';
17
17
  import 'crypto-js';
18
18
  import 'uuid';
19
- import { u as useBuilds, d as getBuildSummary } from '../../../index-C66Dd8Xc.js';
19
+ import { u as useBuilds, d as getBuildSummary } from '../../../index-CA6-uLMn.js';
20
20
  import 'fast-glob';
21
21
  import 'yazl';
22
22
  import 'socket.io-client';
@@ -30,13 +30,13 @@ import '@inkjs/ui';
30
30
  import 'marked';
31
31
  import 'marked-terminal';
32
32
  import 'qrcode';
33
- import { C as CommandGame } from '../../../CommandGame-cxzWG4nT.js';
33
+ import { C as CommandGame } from '../../../CommandGame-BSVPZzNl.js';
34
34
  import '@expo/apple-utils/build/index.js';
35
35
  import 'deepmerge';
36
36
  import 'ini';
37
- import '../../../index-CGBdOm1q.js';
38
- import '../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
39
- import '../../../Command-WPpmLPkL.js';
37
+ import '../../../index-CYjZ26If.js';
38
+ import '../../../useAndroidServiceAccountTestResult-DueKynFy.js';
39
+ import '../../../Command-VWMnGslo.js';
40
40
 
41
41
  const BuildsTable = ({ queryProps, ...boxProps }) => {
42
42
  const { data, isLoading } = useBuilds(queryProps);
@@ -1,6 +1,6 @@
1
1
  import { Flags } from '@oclif/core';
2
- import { B as BaseAuthenticatedCommand, D as DetailsFlags, j as isCWDGodotGame, s as GameEngine, t as getGodotVersion, u as createProject, v as DEFAULT_SHIPPED_FILES_GLOBS, w as DEFAULT_IGNORED_FILES_GLOBS, x as getGodotProjectName } from '../../index-BhhiXbey.js';
3
- import { a as getInput } from '../../index-CGBdOm1q.js';
2
+ import { B as BaseAuthenticatedCommand, D as DetailsFlags, j as isCWDGodotGame, s as GameEngine, t as getGodotVersion, u as createProject, v as DEFAULT_SHIPPED_FILES_GLOBS, w as DEFAULT_IGNORED_FILES_GLOBS, x as getGodotProjectName } from '../../index-CO_ssVFA.js';
3
+ import { a as getInput } from '../../index-CYjZ26If.js';
4
4
  import 'node:fs';
5
5
  import 'axios';
6
6
  import 'crypto-js';
@@ -21,6 +21,7 @@ import 'fast-glob';
21
21
  import 'yazl';
22
22
  import 'socket.io-client';
23
23
  import 'fullscreen-ink';
24
+ import 'ink';
24
25
 
25
26
  class GameCreate extends BaseAuthenticatedCommand {
26
27
  static args = {};
@@ -1,9 +1,9 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { c as BaseGameCommand, D as DetailsFlags, s as GameEngine } from '../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand, D as DetailsFlags, s as GameEngine } from '../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
- import { i as isValidSemVer } from '../../index-CGBdOm1q.js';
6
+ import { i as isValidSemVer } from '../../index-CYjZ26If.js';
7
7
  import 'react';
8
8
  import 'node:fs';
9
9
  import 'axios';
@@ -24,8 +24,8 @@ import 'node:path';
24
24
  import 'marked';
25
25
  import 'marked-terminal';
26
26
  import 'qrcode';
27
- import '../../index-C66Dd8Xc.js';
28
- import { C as Command } from '../../Command-WPpmLPkL.js';
27
+ import '../../index-CA6-uLMn.js';
28
+ import { C as Command } from '../../Command-VWMnGslo.js';
29
29
  import '@expo/apple-utils/build/index.js';
30
30
  import 'node:crypto';
31
31
  import 'node:readline';
@@ -35,7 +35,7 @@ import 'isomorphic-git';
35
35
  import 'deepmerge';
36
36
  import 'ini';
37
37
  import '../../Title-BCQtayg6.js';
38
- import '../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
38
+ import '../../useAndroidServiceAccountTestResult-DueKynFy.js';
39
39
 
40
40
  class GameDetails extends BaseGameCommand {
41
41
  static args = {};
@@ -1,5 +1,5 @@
1
1
  import { Args, Flags } from '@oclif/core';
2
- import { B as BaseAuthenticatedCommand, j as isCWDGodotGame, E as getProject, v as DEFAULT_SHIPPED_FILES_GLOBS, w as DEFAULT_IGNORED_FILES_GLOBS } from '../../index-BhhiXbey.js';
2
+ import { B as BaseAuthenticatedCommand, j as isCWDGodotGame, E as getProject, v as DEFAULT_SHIPPED_FILES_GLOBS, w as DEFAULT_IGNORED_FILES_GLOBS } from '../../index-CO_ssVFA.js';
3
3
  import 'node:crypto';
4
4
  import 'node:fs';
5
5
  import 'node:path';
@@ -16,6 +16,7 @@ import 'uuid';
16
16
  import 'yazl';
17
17
  import 'socket.io-client';
18
18
  import 'fullscreen-ink';
19
+ import 'ink';
19
20
  import 'crypto-js';
20
21
  import '@expo/apple-utils/build/index.js';
21
22
  import 'deepmerge';
@@ -1,9 +1,9 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { c as BaseGameCommand, i as BetaGroup } from '../../../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand, i as BetaGroup } from '../../../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
- import { a as getInput } from '../../../../index-CGBdOm1q.js';
6
+ import { a as getInput } from '../../../../index-CYjZ26If.js';
7
7
  import 'react';
8
8
  import 'node:fs';
9
9
  import 'axios';
@@ -11,7 +11,7 @@ import 'crypto-js';
11
11
  import 'uuid';
12
12
  import 'luxon';
13
13
  import '@tanstack/react-query';
14
- import { q as queryAppleApp } from '../../../../useAppleApp-DWYGURwU.js';
14
+ import { q as queryAppleApp } from '../../../../useAppleApp-BZR94exU.js';
15
15
  import 'fast-glob';
16
16
  import 'yazl';
17
17
  import 'socket.io-client';
@@ -24,9 +24,9 @@ import 'node:path';
24
24
  import 'marked';
25
25
  import 'marked-terminal';
26
26
  import 'qrcode';
27
- import { R as RunWithSpinner } from '../../../../RunWithSpinner-gMVA07bZ.js';
28
- import '../../../../index-C66Dd8Xc.js';
29
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
27
+ import { R as RunWithSpinner } from '../../../../RunWithSpinner-DucRnFp6.js';
28
+ import '../../../../index-CA6-uLMn.js';
29
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
30
30
  import '@expo/apple-utils/build/index.js';
31
31
  import 'node:crypto';
32
32
  import 'node:readline';
@@ -35,7 +35,7 @@ import 'readline-sync';
35
35
  import 'isomorphic-git';
36
36
  import 'deepmerge';
37
37
  import 'ini';
38
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
38
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
39
39
 
40
40
  const TEST_GROUP_NAME = "ShipThis Test Group";
41
41
  class GameIosAppAddTester extends BaseGameCommand {
@@ -46,7 +46,13 @@ class GameIosAppAddTester extends BaseGameCommand {
46
46
  email: Flags.string({ char: "e", description: "The email address of the tester" }),
47
47
  firstName: Flags.string({ char: "f", description: "The first name of the tester" }),
48
48
  gameId: Flags.string({ char: "g", description: "The ID of the game" }),
49
- lastName: Flags.string({ char: "l", description: "The last name of the tester" })
49
+ lastName: Flags.string({ char: "l", description: "The last name of the tester" }),
50
+ self: Flags.boolean({
51
+ char: "s",
52
+ description: "Add yourself as a tester (uses your Apple ID email and name)",
53
+ default: false
54
+ }),
55
+ quiet: Flags.boolean({ char: "q", description: "Avoid output except for interactions and errors" })
50
56
  };
51
57
  async run() {
52
58
  const game = await this.getGame();
@@ -54,15 +60,15 @@ class GameIosAppAddTester extends BaseGameCommand {
54
60
  const ctx = authState.context;
55
61
  const { flags } = this;
56
62
  const getEmail = async () => {
63
+ if (flags.self) return authState.session.user.emailAddress;
57
64
  if (flags.email) return flags.email;
58
65
  const question = `Please enter the email address of the tester: `;
59
66
  const enteredEmail = await getInput(question);
60
- if (!enteredEmail) {
61
- this.error("No email address provided");
62
- }
67
+ if (!enteredEmail) this.error("No email address provided");
63
68
  return enteredEmail;
64
69
  };
65
70
  const getFirstName = async () => {
71
+ if (flags.self) return authState.session.user.firstName;
66
72
  if (flags.firstName) return flags.firstName;
67
73
  const suggestedName = "John";
68
74
  const question = `Please enter the first name of the tester, or press enter to use ${suggestedName}: `;
@@ -70,6 +76,7 @@ class GameIosAppAddTester extends BaseGameCommand {
70
76
  return enteredName || suggestedName;
71
77
  };
72
78
  const getLastName = async () => {
79
+ if (flags.self) return authState.session.user.lastName;
73
80
  if (flags.lastName) return flags.lastName;
74
81
  const suggestedName = "Doe";
75
82
  const question = `Please enter the last name of the tester, or press enter to use ${suggestedName}: `;
@@ -79,7 +86,6 @@ class GameIosAppAddTester extends BaseGameCommand {
79
86
  const email = await getEmail();
80
87
  const firstName = await getFirstName();
81
88
  const lastName = await getLastName();
82
- console.warn("This command does not yet work. It fails with an assertion error.");
83
89
  const addTestUser = async () => {
84
90
  const { app } = await queryAppleApp({ ctx, iosBundleId: game.details?.iosBundleId });
85
91
  if (!app) return this.error("No app found");
@@ -92,9 +98,7 @@ class GameIosAppAddTester extends BaseGameCommand {
92
98
  id: app.id,
93
99
  isInternalGroup: true,
94
100
  name: TEST_GROUP_NAME,
95
- publicLinkEnabled: false,
96
- publicLinkLimit: 1,
97
- publicLinkLimitEnabled: false
101
+ hasAccessToAllBuilds: true
98
102
  });
99
103
  }
100
104
  await shipThisGroup.createBulkBetaTesterAssignmentsAsync([
@@ -107,6 +111,7 @@ class GameIosAppAddTester extends BaseGameCommand {
107
111
  };
108
112
  const handleComplete = async () => {
109
113
  };
114
+ if (flags.quiet) return await addTestUser();
110
115
  render(
111
116
  /* @__PURE__ */ jsx(Command, { command: this, children: /* @__PURE__ */ jsx(
112
117
  RunWithSpinner,
@@ -1,9 +1,9 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { c as BaseGameCommand, d as getGodotAppleBundleIdentifier, e as BundleId, f as App } from '../../../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand, d as getGodotAppleBundleIdentifier, e as BundleId, f as App } from '../../../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
- import { a as getInput, b as generatePackageName } from '../../../../index-CGBdOm1q.js';
6
+ import { a as getInput, b as generatePackageName } from '../../../../index-CYjZ26If.js';
7
7
  import 'react';
8
8
  import 'node:fs';
9
9
  import 'axios';
@@ -23,9 +23,9 @@ import 'node:path';
23
23
  import 'marked';
24
24
  import 'marked-terminal';
25
25
  import 'qrcode';
26
- import { R as RunWithSpinner } from '../../../../RunWithSpinner-gMVA07bZ.js';
27
- import '../../../../index-C66Dd8Xc.js';
28
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
26
+ import { R as RunWithSpinner } from '../../../../RunWithSpinner-DucRnFp6.js';
27
+ import '../../../../index-CA6-uLMn.js';
28
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
29
29
  import '@expo/apple-utils/build/index.js';
30
30
  import 'node:crypto';
31
31
  import 'node:readline';
@@ -34,7 +34,7 @@ import 'readline-sync';
34
34
  import 'isomorphic-git';
35
35
  import 'deepmerge';
36
36
  import 'ini';
37
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
37
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
38
38
 
39
39
  class GameIosAppCreate extends BaseGameCommand {
40
40
  static args = {};
@@ -1,7 +1,7 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { c as BaseGameCommand } from '../../../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand } from '../../../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
6
  import 'node:crypto';
7
7
  import 'node:fs';
@@ -28,18 +28,18 @@ import 'marked';
28
28
  import 'marked-terminal';
29
29
  import { N as NextSteps } from '../../../../NextSteps-DbJHmscQ.js';
30
30
  import 'qrcode';
31
- import '../../../../index-C66Dd8Xc.js';
32
- import { A as AppleAppDetails, a as AppleBundleIdDetails } from '../../../../AppleBundleIdDetails-6H3cNWxw.js';
33
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
31
+ import '../../../../index-CA6-uLMn.js';
32
+ import { A as AppleAppDetails, a as AppleBundleIdDetails } from '../../../../AppleBundleIdDetails-By-sSGNl.js';
33
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
34
34
  import '@expo/apple-utils/build/index.js';
35
35
  import 'deepmerge';
36
36
  import 'ini';
37
37
  import '../../../../Title-BCQtayg6.js';
38
- import '../../../../index-CGBdOm1q.js';
39
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
40
- import '../../../../useAppleApp-DWYGURwU.js';
38
+ import '../../../../index-CYjZ26If.js';
39
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
40
+ import '../../../../useAppleApp-BZR94exU.js';
41
41
  import '../../../../Table-FaNgpyeq.js';
42
- import '../../../../useAppleBundleId-PsTJ2g1B.js';
42
+ import '../../../../useAppleBundleId-Dg5DsItN.js';
43
43
 
44
44
  class GameIosAppStatus extends BaseGameCommand {
45
45
  static args = {};
@@ -1,7 +1,7 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { Flags } from '@oclif/core';
3
3
  import { render } from 'ink';
4
- import { c as BaseGameCommand, h as CapabilityTypeOption } from '../../../../index-BhhiXbey.js';
4
+ import { c as BaseGameCommand, h as CapabilityTypeOption } from '../../../../index-CO_ssVFA.js';
5
5
  import 'ink-spinner';
6
6
  import 'node:crypto';
7
7
  import 'node:fs';
@@ -16,7 +16,7 @@ import '@tanstack/react-query';
16
16
  import 'react';
17
17
  import 'crypto-js';
18
18
  import 'uuid';
19
- import { f as fetchBundleId } from '../../../../useAppleBundleId-PsTJ2g1B.js';
19
+ import { f as fetchBundleId } from '../../../../useAppleBundleId-Dg5DsItN.js';
20
20
  import 'fast-glob';
21
21
  import 'yazl';
22
22
  import 'socket.io-client';
@@ -28,14 +28,14 @@ import '@inkjs/ui';
28
28
  import 'marked';
29
29
  import 'marked-terminal';
30
30
  import 'qrcode';
31
- import { R as RunWithSpinner } from '../../../../RunWithSpinner-gMVA07bZ.js';
32
- import '../../../../index-C66Dd8Xc.js';
33
- import { C as Command } from '../../../../Command-WPpmLPkL.js';
31
+ import { R as RunWithSpinner } from '../../../../RunWithSpinner-DucRnFp6.js';
32
+ import '../../../../index-CA6-uLMn.js';
33
+ import { C as Command } from '../../../../Command-VWMnGslo.js';
34
34
  import '@expo/apple-utils/build/index.js';
35
35
  import 'deepmerge';
36
36
  import 'ini';
37
- import '../../../../index-CGBdOm1q.js';
38
- import '../../../../useAndroidServiceAccountTestResult-DZk5SMxI.js';
37
+ import '../../../../index-CYjZ26If.js';
38
+ import '../../../../useAndroidServiceAccountTestResult-DueKynFy.js';
39
39
 
40
40
  class GameIosAppSync extends BaseGameCommand {
41
41
  static args = {};