shipthis 0.1.10 → 0.1.12
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/assets/markdown/create-or-import-keystore.md +7 -0
- package/dist/{AppleBundleIdDetails-DKeSAte9.js → AppleBundleIdDetails-DymjrhOZ.js} +1 -1
- package/dist/{CommandGame--SAa3wEL.js → CommandGame-C1oTlfdb.js} +1 -1
- package/dist/{CreateKeystore-g1z6DsU5.js → Create-DIaSKUpl.js} +5 -5
- package/dist/Import-BIOsf8AA.js +107 -0
- package/dist/{JobProgress-jmGAzvxS.js → JobProgress-W0QQR49T.js} +2 -2
- package/dist/{JobStatusTable-ByW0bN6c.js → JobStatusTable-DqoppRro.js} +2 -2
- package/dist/commands/apple/apiKey/create.js +4 -4
- package/dist/commands/apple/apiKey/export.js +3 -3
- package/dist/commands/apple/apiKey/import.js +4 -4
- package/dist/commands/apple/apiKey/status.js +3 -3
- package/dist/commands/apple/certificate/create.js +4 -4
- package/dist/commands/apple/certificate/export.js +3 -3
- package/dist/commands/apple/certificate/import.js +4 -4
- package/dist/commands/apple/certificate/status.js +3 -3
- package/dist/commands/apple/status.js +3 -3
- package/dist/commands/game/android/apiKey/connect.js +6 -6
- package/dist/commands/game/android/apiKey/create.js +6 -6
- package/dist/commands/game/android/apiKey/export.js +3 -3
- package/dist/commands/game/android/apiKey/import.js +4 -4
- package/dist/commands/game/android/apiKey/status.js +3 -3
- package/dist/commands/game/android/keyStore/create.js +7 -7
- package/dist/commands/game/android/keyStore/export.js +3 -3
- package/dist/commands/game/android/keyStore/import.js +45 -25
- package/dist/commands/game/android/keyStore/status.js +3 -3
- package/dist/commands/game/android/status.js +5 -5
- package/dist/commands/game/build/download.js +4 -4
- package/dist/commands/game/build/list.js +4 -4
- package/dist/commands/game/details.js +3 -3
- package/dist/commands/game/ios/app/addTester.js +3 -3
- package/dist/commands/game/ios/app/create.js +3 -3
- package/dist/commands/game/ios/app/status.js +4 -4
- package/dist/commands/game/ios/app/sync.js +3 -3
- package/dist/commands/game/ios/profile/create.js +4 -4
- package/dist/commands/game/ios/profile/export.js +3 -3
- package/dist/commands/game/ios/profile/import.js +4 -4
- package/dist/commands/game/ios/profile/status.js +3 -3
- package/dist/commands/game/ios/status.js +6 -6
- package/dist/commands/game/job/list.js +5 -5
- package/dist/commands/game/job/status.js +7 -7
- package/dist/commands/game/list.js +5 -5
- package/dist/commands/game/ship.js +7 -7
- package/dist/commands/game/status.js +5 -5
- package/dist/commands/game/wizard.js +116 -17
- package/dist/commands/status.js +3 -3
- package/dist/{import-7T3J63j2.js → import-v54PM_Qg.js} +11 -2
- package/dist/{index-m4HTrJ5J.js → index-D6BH5UAM.js} +3 -3
- package/dist/{index-DgbQBx6x.js → index-o9Y-84Rj.js} +1 -1
- package/dist/{useJobWatching-D-YzSlK8.js → useJobWatching-I_A3b36f.js} +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/oclif.manifest.json +27 -86
- package/package.json +1 -1
- package/dist/AppleBundleIdDetails-C0XqjxKJ.js +0 -72
- package/dist/AppleBundleIdDetails-CjP5y0cj.js +0 -74
- package/dist/AppleBundleIdDetails-CztWY_mT.js +0 -73
- package/dist/AppleBundleIdDetails-Df30MPFC.js +0 -73
- package/dist/AppleBundleIdDetails-Dxo99Sgu.js +0 -72
- package/dist/Command-1YAl_0zS.js +0 -204
- package/dist/Command-Cl-JfhTy.js +0 -203
- package/dist/Command-Dn0P_KOV.js +0 -205
- package/dist/Command-DxmQn3XT.js +0 -204
- package/dist/Command-YJJp90ru.js +0 -204
- package/dist/CommandGame-CZUx_VQu.js +0 -8
- package/dist/CommandGame-DspVLTPZ.js +0 -8
- package/dist/CommandGame-cPaTk1wh.js +0 -8
- package/dist/CommandGame-k04mHiDl.js +0 -8
- package/dist/CommandGame-pI9VXKxi.js +0 -8
- package/dist/CreateKeystore-BnNdeDUa.js +0 -57
- package/dist/CreateKeystore-BqJdpvsI.js +0 -56
- package/dist/CreateKeystore-Cf-nsK_M.js +0 -56
- package/dist/CreateKeystore-D8uTRamD.js +0 -56
- package/dist/CreateKeystore-Dm0KVh85.js +0 -56
- package/dist/JobProgress-CPkWVSlH.js +0 -108
- package/dist/JobProgress-Dk0UoNah.js +0 -108
- package/dist/JobProgress-biiLhigg.js +0 -109
- package/dist/JobStatusTable-BA_q-kgE.js +0 -75
- package/dist/JobStatusTable-CgaTS7jS.js +0 -75
- package/dist/JobStatusTable-q4atKzhu.js +0 -75
- package/dist/ProjectCredentialsTable-BIWBAXCh.js +0 -37
- package/dist/ProjectCredentialsTable-Ch8022rs.js +0 -37
- package/dist/ProjectCredentialsTable-DRMK_SNw.js +0 -37
- package/dist/ProjectCredentialsTable-DfkpvTf8.js +0 -37
- package/dist/UserCredentialsTable-CeJS3_hd.js +0 -82
- package/dist/UserCredentialsTable-DMh8Wpy7.js +0 -82
- package/dist/UserCredentialsTable-DgHZJSHG.js +0 -82
- package/dist/UserCredentialsTable-ysmM5dlV.js +0 -82
- package/dist/baseAppleCommand-1isaFxCQ.js +0 -10
- package/dist/baseAppleCommand-B3WQtlx-.js +0 -10
- package/dist/baseAppleCommand-D-G4h8zQ.js +0 -10
- package/dist/baseAppleCommand-DpasCbje.js +0 -10
- package/dist/baseGameAndroidCommand-B-CFhPnE.js +0 -43
- package/dist/baseGameAndroidCommand-B3LRG701.js +0 -43
- package/dist/baseGameAndroidCommand-C9BuS2Sr.js +0 -43
- package/dist/baseGameAndroidCommand-DD0H8iy-.js +0 -43
- package/dist/commands/game/android/wizard.js +0 -509
- package/dist/export-BDxGDZdh.js +0 -36
- package/dist/export-B_F6vXIK.js +0 -36
- package/dist/export-BiLHgSJ9.js +0 -36
- package/dist/export-C_lu1FD9.js +0 -36
- package/dist/import-Brg3zYmT.js +0 -38
- package/dist/import-BrlJuE2Z.js +0 -38
- package/dist/import-CxNikF1c.js +0 -38
- package/dist/import-DPbg8WvS.js +0 -38
- package/dist/index-B5XHQfs2.js +0 -122
- package/dist/index-B6V7vGOj.js +0 -136
- package/dist/index-BDFKyTPb.js +0 -24
- package/dist/index-BL-1G60K.js +0 -135
- package/dist/index-BQRxiyqn.js +0 -693
- package/dist/index-BQnkBr1Q.js +0 -136
- package/dist/index-BX9h2vPV.js +0 -123
- package/dist/index-BjGSEqP5.js +0 -135
- package/dist/index-BuZmCvZh.js +0 -24
- package/dist/index-Bv3x8c78.js +0 -693
- package/dist/index-ByOvCs4O.js +0 -122
- package/dist/index-BzffuqPa.js +0 -24
- package/dist/index-C9734Cj2.js +0 -693
- package/dist/index-CKYExssR.js +0 -136
- package/dist/index-CgBgZUkL.js +0 -144
- package/dist/index-DBrQda8r.js +0 -122
- package/dist/index-DE2Hvx2o.js +0 -122
- package/dist/index-DdABTtYO.js +0 -693
- package/dist/index-DxHPjZav.js +0 -136
- package/dist/index-X__XH_Fd.js +0 -144
- package/dist/index-wyPoxiTc.js +0 -136
- package/dist/upload-CMo3hUhl.js +0 -60
- package/dist/upload-Cx71802W.js +0 -60
- package/dist/upload-DvAE1vDq.js +0 -60
- package/dist/upload-LXRr4pMa.js +0 -60
- package/dist/useAndroidServiceAccountTestResult-BDc7XpKE.js +0 -52
- package/dist/useAndroidServiceAccountTestResult-B_ekRewZ.js +0 -52
- package/dist/useAndroidServiceAccountTestResult-D_30xIJA.js +0 -52
- package/dist/useAndroidServiceAccountTestResult-InDf5WSl.js +0 -52
- package/dist/useAppleApp-CApC0-4Q.js +0 -32
- package/dist/useAppleApp-CETIcsJS.js +0 -32
- package/dist/useAppleApp-DgE0wEaq.js +0 -32
- package/dist/useAppleApp-DnSjUfSs.js +0 -32
- package/dist/useAppleBundleId-BNI8swhC.js +0 -64
- package/dist/useAppleBundleId-DtLODy3p.js +0 -64
- package/dist/useAppleBundleId-SmzY6rkm.js +0 -64
- package/dist/useAppleBundleId-gPBzJwQg.js +0 -64
- package/dist/useJobWatching-BIG6fnTN.js +0 -45
- package/dist/useJobWatching-BcBJ5dy1.js +0 -43
- package/dist/useJobWatching-Bz1e6xOv.js +0 -43
- package/dist/useJobWatching-Cp-CYd90.js +0 -45
- package/dist/useJobWatching-P5oC7mNB.js +0 -45
- package/dist/useProjectCredentials-B5ZmpIxL.js +0 -54
- package/dist/useProjectCredentials-BRffcsO3.js +0 -54
- package/dist/useProjectCredentials-CKngz2rd.js +0 -54
- package/dist/useProjectCredentials-EapDge1I.js +0 -54
- package/dist/useWebSocket-Bep1zAVG.js +0 -36
- package/dist/useWebSocket-D8PojLtx.js +0 -36
- package/dist/useWebSocket-DoImIdTy.js +0 -36
- package/dist/useWebSocket-rBLiZsKb.js +0 -36
- package/dist/wizard-ChPegnMW.js +0 -133
- package/dist/{Command-D6rWEZRM.js → Command-BiB9MqbJ.js} +3 -3
|
@@ -3,24 +3,24 @@ import { Args, Flags } from '@oclif/core';
|
|
|
3
3
|
import { measureElement, Box, Text, render } from 'ink';
|
|
4
4
|
import { p as getAuthedHeaders, q as API_URL, K as castArrayObjectDates, F as castObjectDates, a4 as getShortTime, c as BaseGameCommand, a5 as getJob, J as JobStatus } from '../../../index-BB7X1Pqp.js';
|
|
5
5
|
import { useState, useEffect, useRef } from 'react';
|
|
6
|
-
import { C as Command } from '../../../Command-
|
|
6
|
+
import { C as Command } from '../../../Command-BiB9MqbJ.js';
|
|
7
7
|
import Spinner from 'ink-spinner';
|
|
8
8
|
import '@inkjs/ui';
|
|
9
9
|
import axios from 'axios';
|
|
10
10
|
import { useInfiniteQuery } from '@tanstack/react-query';
|
|
11
|
-
import 'open';
|
|
12
|
-
import 'crypto';
|
|
13
11
|
import 'fs';
|
|
12
|
+
import 'uuid';
|
|
13
|
+
import 'yazl';
|
|
14
|
+
import 'crypto';
|
|
14
15
|
import 'readline-sync';
|
|
15
16
|
import 'node:readline';
|
|
16
17
|
import 'node:path';
|
|
17
18
|
import 'node:url';
|
|
18
19
|
import 'luxon';
|
|
19
|
-
import 'uuid';
|
|
20
20
|
import 'fast-glob';
|
|
21
|
-
import 'yazl';
|
|
22
21
|
import 'socket.io-client';
|
|
23
22
|
import 'isomorphic-git';
|
|
23
|
+
import 'open';
|
|
24
24
|
import { N as NextSteps } from '../../../NextSteps-CK9zHOCt.js';
|
|
25
25
|
import 'qrcode';
|
|
26
26
|
import stringLength from 'string-length';
|
|
@@ -30,14 +30,14 @@ import 'crypto-js';
|
|
|
30
30
|
import { c as cacheKeys } from '../../../useAndroidServiceAccountTestResult-Ce1x0Eh8.js';
|
|
31
31
|
import { u as useWebSocket } from '../../../useWebSocket-CBqsjHbt.js';
|
|
32
32
|
import { T as Title } from '../../../Title-BCQtayg6.js';
|
|
33
|
-
import { J as JobStatusTable } from '../../../JobStatusTable-
|
|
33
|
+
import { J as JobStatusTable } from '../../../JobStatusTable-DqoppRro.js';
|
|
34
34
|
import 'path';
|
|
35
35
|
import '@expo/apple-utils/build/index.js';
|
|
36
36
|
import 'ini';
|
|
37
37
|
import 'deepmerge';
|
|
38
38
|
import 'marked';
|
|
39
39
|
import 'marked-terminal';
|
|
40
|
-
import '../../../useJobWatching-
|
|
40
|
+
import '../../../useJobWatching-I_A3b36f.js';
|
|
41
41
|
import '../../../StatusTable-Dm5St4g-.js';
|
|
42
42
|
|
|
43
43
|
async function queryJobLogs({
|
|
@@ -3,22 +3,22 @@ import { render, Text, Box } from 'ink';
|
|
|
3
3
|
import { Flags } from '@oclif/core';
|
|
4
4
|
import { B as BaseAuthenticatedCommand, g as getProjects, b as getShortDate } from '../../index-BB7X1Pqp.js';
|
|
5
5
|
import 'react';
|
|
6
|
-
import { C as Command } from '../../Command-
|
|
6
|
+
import { C as Command } from '../../Command-BiB9MqbJ.js';
|
|
7
7
|
import 'ink-spinner';
|
|
8
8
|
import '@inkjs/ui';
|
|
9
9
|
import 'axios';
|
|
10
10
|
import '@tanstack/react-query';
|
|
11
|
-
import '
|
|
11
|
+
import 'fs';
|
|
12
|
+
import 'uuid';
|
|
13
|
+
import 'yazl';
|
|
12
14
|
import { g as getShortUUID } from '../../index-Cz_KLwWf.js';
|
|
15
|
+
import 'open';
|
|
13
16
|
import 'qrcode';
|
|
14
17
|
import { T as Table } from '../../Table-CvM6pccN.js';
|
|
15
18
|
import 'string-length';
|
|
16
19
|
import 'strip-ansi';
|
|
17
20
|
import 'luxon';
|
|
18
|
-
import 'uuid';
|
|
19
21
|
import 'fast-glob';
|
|
20
|
-
import 'fs';
|
|
21
|
-
import 'yazl';
|
|
22
22
|
import 'socket.io-client';
|
|
23
23
|
import 'path';
|
|
24
24
|
import '@expo/apple-utils/build/index.js';
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { c as BaseGameCommand } from '../../index-BB7X1Pqp.js';
|
|
3
3
|
import { useContext, useState, useEffect } from 'react';
|
|
4
4
|
import { Box, Text, render } from 'ink';
|
|
5
|
-
import { c as CommandContext } from '../../Command-
|
|
5
|
+
import { c as CommandContext } from '../../Command-BiB9MqbJ.js';
|
|
6
6
|
import 'ink-spinner';
|
|
7
7
|
import 'axios';
|
|
8
8
|
import 'crypto-js';
|
|
@@ -11,23 +11,23 @@ import 'luxon';
|
|
|
11
11
|
import 'fs';
|
|
12
12
|
import '@inkjs/ui';
|
|
13
13
|
import '@tanstack/react-query';
|
|
14
|
-
import '
|
|
14
|
+
import 'yazl';
|
|
15
15
|
import 'crypto';
|
|
16
16
|
import 'readline-sync';
|
|
17
17
|
import 'node:readline';
|
|
18
18
|
import 'node:path';
|
|
19
19
|
import 'node:url';
|
|
20
20
|
import 'fast-glob';
|
|
21
|
-
import 'yazl';
|
|
22
21
|
import 'socket.io-client';
|
|
23
22
|
import 'isomorphic-git';
|
|
24
23
|
import '@oclif/core';
|
|
24
|
+
import 'open';
|
|
25
25
|
import 'qrcode';
|
|
26
26
|
import 'string-length';
|
|
27
27
|
import 'strip-ansi';
|
|
28
|
-
import { C as CommandGame } from '../../CommandGame-
|
|
29
|
-
import { u as useShip, J as JobProgress } from '../../JobProgress-
|
|
30
|
-
import { J as JobStatusTable } from '../../JobStatusTable-
|
|
28
|
+
import { C as CommandGame } from '../../CommandGame-C1oTlfdb.js';
|
|
29
|
+
import { u as useShip, J as JobProgress } from '../../JobProgress-W0QQR49T.js';
|
|
30
|
+
import { J as JobStatusTable } from '../../JobStatusTable-DqoppRro.js';
|
|
31
31
|
import 'path';
|
|
32
32
|
import '@expo/apple-utils/build/index.js';
|
|
33
33
|
import 'ini';
|
|
@@ -38,7 +38,7 @@ import 'marked';
|
|
|
38
38
|
import 'marked-terminal';
|
|
39
39
|
import '../../git-DREGq-jc.js';
|
|
40
40
|
import '../../ProgressSpinner-6pw1T8Iw.js';
|
|
41
|
-
import '../../useJobWatching-
|
|
41
|
+
import '../../useJobWatching-I_A3b36f.js';
|
|
42
42
|
import '../../useWebSocket-CBqsjHbt.js';
|
|
43
43
|
import '../../Title-BCQtayg6.js';
|
|
44
44
|
import '../../StatusTable-Dm5St4g-.js';
|
|
@@ -2,24 +2,24 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { render } from 'ink';
|
|
3
3
|
import { Flags } from '@oclif/core';
|
|
4
4
|
import 'react';
|
|
5
|
-
import { C as Command } from '../../Command-
|
|
5
|
+
import { C as Command } from '../../Command-BiB9MqbJ.js';
|
|
6
6
|
import { B as BaseAuthenticatedCommand, H as getProject, P as Platform, k as getProjectPlatformProgress, b as getShortDate } from '../../index-BB7X1Pqp.js';
|
|
7
7
|
import 'ink-spinner';
|
|
8
8
|
import '@inkjs/ui';
|
|
9
9
|
import 'axios';
|
|
10
10
|
import '@tanstack/react-query';
|
|
11
|
-
import '
|
|
11
|
+
import 'fs';
|
|
12
|
+
import 'uuid';
|
|
13
|
+
import 'yazl';
|
|
12
14
|
import { g as getShortUUID, m as makeHumanReadable } from '../../index-Cz_KLwWf.js';
|
|
15
|
+
import 'open';
|
|
13
16
|
import { N as NextSteps } from '../../NextSteps-CK9zHOCt.js';
|
|
14
17
|
import 'qrcode';
|
|
15
18
|
import { S as StatusTable } from '../../StatusTable-Dm5St4g-.js';
|
|
16
19
|
import 'string-length';
|
|
17
20
|
import 'strip-ansi';
|
|
18
21
|
import 'luxon';
|
|
19
|
-
import 'uuid';
|
|
20
22
|
import 'fast-glob';
|
|
21
|
-
import 'fs';
|
|
22
|
-
import 'yazl';
|
|
23
23
|
import 'socket.io-client';
|
|
24
24
|
import '../../useAndroidServiceAccountTestResult-Ce1x0Eh8.js';
|
|
25
25
|
import 'marked';
|
|
@@ -1,35 +1,36 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { Args } from '@oclif/core';
|
|
3
|
-
import { Text, Box, render } from 'ink';
|
|
3
|
+
import { Text, Box, useInput, render } from 'ink';
|
|
4
4
|
import { p as getAuthedHeaders, q as API_URL, K as castArrayObjectDates, $ as queryClient, a8 as updateProject, u as getGodotVersion, t as GameEngine, v as createProject, w as DEFAULT_IGNORED_FILES_GLOBS, x as DEFAULT_SHIPPED_FILES_GLOBS, P as Platform, J as JobStatus, X as WEB_URL, H as getProject, C as CredentialsType, Q as getGoogleStatus, B as BaseAuthenticatedCommand, j as isCWDGodotGame } from '../../index-BB7X1Pqp.js';
|
|
5
5
|
import React, { useState, useContext, useEffect, useRef } from 'react';
|
|
6
|
-
import { c as CommandContext, b as GameContext,
|
|
6
|
+
import { c as CommandContext, b as GameContext, M as Markdown, d as useBuilds, q as queryBuilds, G as GameProvider, e as CreateGooglePlayGame, C as Command } from '../../Command-BiB9MqbJ.js';
|
|
7
7
|
import Spinner from 'ink-spinner';
|
|
8
8
|
import { Alert, TextInput } from '@inkjs/ui';
|
|
9
9
|
import axios from 'axios';
|
|
10
10
|
import 'crypto-js';
|
|
11
11
|
import 'uuid';
|
|
12
12
|
import 'luxon';
|
|
13
|
-
import 'fs';
|
|
13
|
+
import fs__default from 'fs';
|
|
14
14
|
import { useQuery, useMutation } from '@tanstack/react-query';
|
|
15
|
-
import '
|
|
15
|
+
import 'yazl';
|
|
16
16
|
import 'crypto';
|
|
17
17
|
import 'readline-sync';
|
|
18
18
|
import 'node:readline';
|
|
19
19
|
import 'node:path';
|
|
20
20
|
import 'node:url';
|
|
21
21
|
import 'fast-glob';
|
|
22
|
-
import 'yazl';
|
|
23
22
|
import 'socket.io-client';
|
|
24
23
|
import 'isomorphic-git';
|
|
24
|
+
import 'open';
|
|
25
25
|
import 'qrcode';
|
|
26
26
|
import 'string-length';
|
|
27
27
|
import 'strip-ansi';
|
|
28
|
-
import { C as CreateKeystore } from '../../
|
|
29
|
-
import {
|
|
30
|
-
import { C as
|
|
28
|
+
import { C as CreateKeystore } from '../../Create-DIaSKUpl.js';
|
|
29
|
+
import { I as ImportKeystore } from '../../Import-BIOsf8AA.js';
|
|
30
|
+
import { C as ConnectGoogle } from '../../index-o9Y-84Rj.js';
|
|
31
|
+
import { C as CreateServiceAccountKey } from '../../index-D6BH5UAM.js';
|
|
31
32
|
import { c as cacheKeys, f as fetchKeyTestResult, K as KeyTestStatus, a as KeyTestError } from '../../useAndroidServiceAccountTestResult-Ce1x0Eh8.js';
|
|
32
|
-
import { u as useShip, J as JobProgress } from '../../JobProgress-
|
|
33
|
+
import { u as useShip, J as JobProgress } from '../../JobProgress-W0QQR49T.js';
|
|
33
34
|
import { a as getProjectCredentials } from '../../index-DOgF4dFK.js';
|
|
34
35
|
import { T as Title } from '../../Title-BCQtayg6.js';
|
|
35
36
|
import 'path';
|
|
@@ -40,11 +41,12 @@ import '../../index-Cz_KLwWf.js';
|
|
|
40
41
|
import 'marked';
|
|
41
42
|
import 'marked-terminal';
|
|
42
43
|
import '../../RunWithSpinner-BVXNWGD3.js';
|
|
44
|
+
import '../../import-v54PM_Qg.js';
|
|
43
45
|
import '../../useWebSocket-CBqsjHbt.js';
|
|
44
46
|
import '../../useProjectCredentials-vjedBbKl.js';
|
|
45
47
|
import '../../ProgressSpinner-6pw1T8Iw.js';
|
|
46
48
|
import '../../git-DREGq-jc.js';
|
|
47
|
-
import '../../useJobWatching-
|
|
49
|
+
import '../../useJobWatching-I_A3b36f.js';
|
|
48
50
|
|
|
49
51
|
async function queryJobs({ projectId, ...pageAndSortParams }) {
|
|
50
52
|
try {
|
|
@@ -230,6 +232,103 @@ const FormTextInput = ({ label, labelProps, ...rest }) => /* @__PURE__ */ jsxs(B
|
|
|
230
232
|
/* @__PURE__ */ jsx(TextInput, { ...rest })
|
|
231
233
|
] });
|
|
232
234
|
|
|
235
|
+
const ImportForm = ({ importKeystoreProps, onSubmit }) => {
|
|
236
|
+
const [activeInput, setActiveInput] = useState("jksFilePath" /* jksFilePath */);
|
|
237
|
+
const [error, setError] = useState(null);
|
|
238
|
+
const [jksFilePath, setJksFilePath] = useState(importKeystoreProps.jksFilePath);
|
|
239
|
+
const [password, setPassword] = useState(importKeystoreProps.keyPassword);
|
|
240
|
+
const handleSubmitJksFilePath = () => {
|
|
241
|
+
setError(null);
|
|
242
|
+
if (!jksFilePath || jksFilePath.length === 0) {
|
|
243
|
+
setError("Please enter a path to your jks file");
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
if (!fs__default.existsSync(jksFilePath)) {
|
|
247
|
+
setError("The file does not exist");
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
setActiveInput("password" /* password */);
|
|
251
|
+
};
|
|
252
|
+
const handleSubmitPassword = () => {
|
|
253
|
+
setError(null);
|
|
254
|
+
if (!password || password.length === 0) {
|
|
255
|
+
setError("Please enter a password");
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
258
|
+
onSubmit({
|
|
259
|
+
...importKeystoreProps,
|
|
260
|
+
jksFilePath,
|
|
261
|
+
keyPassword: password,
|
|
262
|
+
keystorePassword: password
|
|
263
|
+
});
|
|
264
|
+
};
|
|
265
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
266
|
+
error && /* @__PURE__ */ jsx(Alert, { variant: "error", children: error }),
|
|
267
|
+
/* @__PURE__ */ jsxs(Box, { flexDirection: "column", marginLeft: 1, children: [
|
|
268
|
+
/* @__PURE__ */ jsx(
|
|
269
|
+
FormTextInput,
|
|
270
|
+
{
|
|
271
|
+
label: "Path to your jks file:",
|
|
272
|
+
isDisabled: activeInput !== "jksFilePath" /* jksFilePath */,
|
|
273
|
+
defaultValue: jksFilePath,
|
|
274
|
+
placeholder: "Enter the path to your jks file...",
|
|
275
|
+
onChange: setJksFilePath,
|
|
276
|
+
onSubmit: handleSubmitJksFilePath
|
|
277
|
+
}
|
|
278
|
+
),
|
|
279
|
+
/* @__PURE__ */ jsx(
|
|
280
|
+
FormTextInput,
|
|
281
|
+
{
|
|
282
|
+
label: "Password:",
|
|
283
|
+
isDisabled: activeInput !== "password" /* password */,
|
|
284
|
+
defaultValue: password,
|
|
285
|
+
placeholder: "Enter the password for your jks file...",
|
|
286
|
+
onChange: setPassword,
|
|
287
|
+
onSubmit: handleSubmitPassword
|
|
288
|
+
}
|
|
289
|
+
)
|
|
290
|
+
] })
|
|
291
|
+
] });
|
|
292
|
+
};
|
|
293
|
+
|
|
294
|
+
const CreateOrImport = ({ onComplete, onError, ...boxProps }) => {
|
|
295
|
+
const [stage, setStage] = useState(0 /* Choose */);
|
|
296
|
+
const [importKeystoreProps, setImportKeystoreProps] = useState({
|
|
297
|
+
jksFilePath: "",
|
|
298
|
+
keyPassword: "",
|
|
299
|
+
keystorePassword: ""
|
|
300
|
+
});
|
|
301
|
+
useInput(async (input) => {
|
|
302
|
+
if (stage !== 0 /* Choose */) return;
|
|
303
|
+
if (input === "c") return setStage(1 /* Create */);
|
|
304
|
+
if (input === "i") return setStage(2 /* ImportForm */);
|
|
305
|
+
});
|
|
306
|
+
const handleImportFormSubmit = (newImportProps) => {
|
|
307
|
+
setImportKeystoreProps(newImportProps);
|
|
308
|
+
setStage(3 /* ImportKeystore */);
|
|
309
|
+
};
|
|
310
|
+
const renderStage = () => {
|
|
311
|
+
switch (stage) {
|
|
312
|
+
case 0 /* Choose */:
|
|
313
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
314
|
+
/* @__PURE__ */ jsx(Text, { children: "Would you like to create a new keystore or import an existing one?" }),
|
|
315
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: "Press C to create a new keystore" }),
|
|
316
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: "Press I to import an existing keystore" })
|
|
317
|
+
] });
|
|
318
|
+
case 1 /* Create */:
|
|
319
|
+
return /* @__PURE__ */ jsx(CreateKeystore, { onComplete, onError });
|
|
320
|
+
case 2 /* ImportForm */:
|
|
321
|
+
return /* @__PURE__ */ jsx(ImportForm, { onSubmit: handleImportFormSubmit, importKeystoreProps });
|
|
322
|
+
case 3 /* ImportKeystore */:
|
|
323
|
+
return /* @__PURE__ */ jsx(ImportKeystore, { onComplete, onError, importKeystoreProps });
|
|
324
|
+
}
|
|
325
|
+
};
|
|
326
|
+
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", gap: 1, ...boxProps, children: [
|
|
327
|
+
/* @__PURE__ */ jsx(Markdown, { filename: "create-or-import-keystore.md", templateVars: {} }),
|
|
328
|
+
renderStage()
|
|
329
|
+
] });
|
|
330
|
+
};
|
|
331
|
+
|
|
233
332
|
const CreateInitialBuild = (props) => {
|
|
234
333
|
const { gameId } = useContext(GameContext);
|
|
235
334
|
return /* @__PURE__ */ jsx(Fragment, { children: gameId && /* @__PURE__ */ jsx(CreateForGame, { gameId, ...props }) });
|
|
@@ -252,8 +351,10 @@ const CreateForGame = ({ onComplete, onError, gameId, ...boxProps }) => {
|
|
|
252
351
|
const hasAndroidBuild = buildData.data.some((build) => build.platform === Platform.ANDROID);
|
|
253
352
|
if (!prevHasBuild.current && hasAndroidBuild) return onComplete();
|
|
254
353
|
prevHasBuild.current = hasAndroidBuild;
|
|
255
|
-
const
|
|
256
|
-
|
|
354
|
+
const hasRunningAndroidJob = jobData.data.some(
|
|
355
|
+
(job) => job.type === Platform.ANDROID && [JobStatus.PENDING, JobStatus.PROCESSING].includes(job.status)
|
|
356
|
+
);
|
|
357
|
+
const shouldRun = !hasAndroidBuild && !hasRunningAndroidJob;
|
|
257
358
|
if (shouldRun)
|
|
258
359
|
shipMutation.mutateAsync({
|
|
259
360
|
command,
|
|
@@ -357,9 +458,7 @@ const getStepInitialStatus = (step, statusFlags) => {
|
|
|
357
458
|
createKeystore: statusFlags.hasAndroidKeystore,
|
|
358
459
|
createServiceAccount: statusFlags.hasServiceAccountKey,
|
|
359
460
|
createGooglePlayGame: statusFlags.hasGooglePlayGame,
|
|
360
|
-
inviteServiceAccount: statusFlags.hasInvitedServiceAccount
|
|
361
|
-
connectGoogle: false,
|
|
362
|
-
createInitialBuild: false
|
|
461
|
+
inviteServiceAccount: statusFlags.hasInvitedServiceAccount
|
|
363
462
|
};
|
|
364
463
|
return base[step] ? "SUCCESS" /* SUCCESS */ : "PENDING" /* PENDING */;
|
|
365
464
|
};
|
|
@@ -399,7 +498,7 @@ const getStatusFlags = async (cmd) => {
|
|
|
399
498
|
|
|
400
499
|
const StepLabels = {
|
|
401
500
|
createGame: "Create game in ShipThis",
|
|
402
|
-
createKeystore: "Create an Android Keystore",
|
|
501
|
+
createKeystore: "Create or import an Android Keystore",
|
|
403
502
|
connectGoogle: "Connect ShipThis with Google",
|
|
404
503
|
createServiceAccount: "Create a Service Account & API Key",
|
|
405
504
|
createInitialBuild: "Create an initial build",
|
|
@@ -438,7 +537,7 @@ const StepStatusTable = ({ stepStatuses }) => {
|
|
|
438
537
|
|
|
439
538
|
const stepComponentMap = {
|
|
440
539
|
createGame: CreateGame,
|
|
441
|
-
createKeystore:
|
|
540
|
+
createKeystore: CreateOrImport,
|
|
442
541
|
connectGoogle: ConnectGoogle,
|
|
443
542
|
createServiceAccount: CreateServiceAccountKey,
|
|
444
543
|
createInitialBuild: CreateInitialBuild,
|
package/dist/commands/status.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { render } from 'ink';
|
|
3
3
|
import { T as BaseCommand, j as isCWDGodotGame } from '../index-BB7X1Pqp.js';
|
|
4
4
|
import 'react';
|
|
5
|
-
import { C as Command } from '../Command-
|
|
5
|
+
import { C as Command } from '../Command-BiB9MqbJ.js';
|
|
6
6
|
import 'ink-spinner';
|
|
7
7
|
import 'axios';
|
|
8
8
|
import 'crypto-js';
|
|
@@ -11,17 +11,17 @@ import 'luxon';
|
|
|
11
11
|
import 'fs';
|
|
12
12
|
import '@inkjs/ui';
|
|
13
13
|
import '@tanstack/react-query';
|
|
14
|
-
import '
|
|
14
|
+
import 'yazl';
|
|
15
15
|
import 'crypto';
|
|
16
16
|
import 'readline-sync';
|
|
17
17
|
import 'node:readline';
|
|
18
18
|
import 'node:path';
|
|
19
19
|
import 'node:url';
|
|
20
20
|
import 'fast-glob';
|
|
21
|
-
import 'yazl';
|
|
22
21
|
import 'socket.io-client';
|
|
23
22
|
import { i as isCWDGitRepo } from '../git-DREGq-jc.js';
|
|
24
23
|
import '@oclif/core';
|
|
24
|
+
import 'open';
|
|
25
25
|
import { N as NextSteps } from '../NextSteps-CK9zHOCt.js';
|
|
26
26
|
import 'qrcode';
|
|
27
27
|
import { S as StatusTable } from '../StatusTable-Dm5St4g-.js';
|
|
@@ -12,7 +12,12 @@ async function getNewImportTicket(projectId) {
|
|
|
12
12
|
});
|
|
13
13
|
return importInfo;
|
|
14
14
|
}
|
|
15
|
-
async function importCredential({
|
|
15
|
+
async function importCredential({
|
|
16
|
+
projectId,
|
|
17
|
+
zipPath,
|
|
18
|
+
type,
|
|
19
|
+
platform
|
|
20
|
+
}) {
|
|
16
21
|
const importTicket = await getNewImportTicket(projectId);
|
|
17
22
|
const zipBuffer = await promises.readFile(zipPath);
|
|
18
23
|
await axios.put(importTicket.url, zipBuffer, {
|
|
@@ -23,7 +28,7 @@ async function importCredential({ projectId, zipPath, type, platform }) {
|
|
|
23
28
|
});
|
|
24
29
|
const headers = getAuthedHeaders();
|
|
25
30
|
const url = projectId ? `${API_URL}/projects/${projectId}/credentials/import` : `${API_URL}/credentials/import`;
|
|
26
|
-
|
|
31
|
+
const { data: publicCredential } = await axios({
|
|
27
32
|
method: "post",
|
|
28
33
|
url,
|
|
29
34
|
headers,
|
|
@@ -33,6 +38,10 @@ async function importCredential({ projectId, zipPath, type, platform }) {
|
|
|
33
38
|
platform
|
|
34
39
|
}
|
|
35
40
|
});
|
|
41
|
+
if (projectId) {
|
|
42
|
+
return publicCredential;
|
|
43
|
+
}
|
|
44
|
+
return publicCredential;
|
|
36
45
|
}
|
|
37
46
|
|
|
38
47
|
export { importCredential as i };
|
|
@@ -2,7 +2,7 @@ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
|
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
import { useState, useRef, useEffect, useContext } from 'react';
|
|
4
4
|
import Spinner from 'ink-spinner';
|
|
5
|
-
import { b as GameContext } from './Command-
|
|
5
|
+
import { b as GameContext } from './Command-BiB9MqbJ.js';
|
|
6
6
|
import { p as getAuthedHeaders, q as API_URL, F as castObjectDates, P as Platform, C as CredentialsType, Q as getGoogleStatus } from './index-BB7X1Pqp.js';
|
|
7
7
|
import axios from 'axios';
|
|
8
8
|
import 'crypto-js';
|
|
@@ -11,7 +11,7 @@ import 'luxon';
|
|
|
11
11
|
import 'fs';
|
|
12
12
|
import '@inkjs/ui';
|
|
13
13
|
import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
14
|
-
import '
|
|
14
|
+
import 'yazl';
|
|
15
15
|
import 'crypto';
|
|
16
16
|
import 'readline-sync';
|
|
17
17
|
import 'node:readline';
|
|
@@ -19,12 +19,12 @@ import 'node:path';
|
|
|
19
19
|
import 'node:url';
|
|
20
20
|
import { c as cacheKeys } from './useAndroidServiceAccountTestResult-Ce1x0Eh8.js';
|
|
21
21
|
import 'fast-glob';
|
|
22
|
-
import 'yazl';
|
|
23
22
|
import 'socket.io-client';
|
|
24
23
|
import 'isomorphic-git';
|
|
25
24
|
import '@oclif/core';
|
|
26
25
|
import { u as useWebSocket } from './useWebSocket-CBqsjHbt.js';
|
|
27
26
|
import { u as useProjectCredentials } from './useProjectCredentials-vjedBbKl.js';
|
|
27
|
+
import 'open';
|
|
28
28
|
import { P as ProgressSpinner } from './ProgressSpinner-6pw1T8Iw.js';
|
|
29
29
|
import 'qrcode';
|
|
30
30
|
import 'string-length';
|
|
@@ -21,7 +21,7 @@ import { u as useWebSocket } from './useWebSocket-CBqsjHbt.js';
|
|
|
21
21
|
import { c as cacheKeys } from './useAndroidServiceAccountTestResult-Ce1x0Eh8.js';
|
|
22
22
|
import 'isomorphic-git';
|
|
23
23
|
import '@oclif/core';
|
|
24
|
-
import { b as GameContext, M as Markdown } from './Command-
|
|
24
|
+
import { b as GameContext, M as Markdown } from './Command-BiB9MqbJ.js';
|
|
25
25
|
import 'ink-spinner';
|
|
26
26
|
import '@inkjs/ui';
|
|
27
27
|
import 'string-length';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { u as useJob } from './Command-
|
|
1
|
+
import { u as useJob } from './Command-BiB9MqbJ.js';
|
|
2
2
|
import { useState, useEffect } from 'react';
|
|
3
3
|
import { u as useWebSocket } from './useWebSocket-CBqsjHbt.js';
|
|
4
4
|
import { E as castJobDates, F as castObjectDates } from './index-BB7X1Pqp.js';
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "shipthis",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.12",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "shipthis",
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.12",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@expo/apple-utils": "2.0.3",
|
package/oclif.manifest.json
CHANGED
|
@@ -1028,88 +1028,6 @@
|
|
|
1028
1028
|
"status.js"
|
|
1029
1029
|
]
|
|
1030
1030
|
},
|
|
1031
|
-
"game:android:wizard": {
|
|
1032
|
-
"aliases": [],
|
|
1033
|
-
"args": {},
|
|
1034
|
-
"description": "Prototype Android Wizard",
|
|
1035
|
-
"examples": [
|
|
1036
|
-
"<%= config.bin %> <%= command.id %>"
|
|
1037
|
-
],
|
|
1038
|
-
"flags": {
|
|
1039
|
-
"name": {
|
|
1040
|
-
"char": "n",
|
|
1041
|
-
"description": "The name of the game",
|
|
1042
|
-
"name": "name",
|
|
1043
|
-
"hasDynamicHelp": false,
|
|
1044
|
-
"multiple": false,
|
|
1045
|
-
"type": "option"
|
|
1046
|
-
},
|
|
1047
|
-
"buildNumber": {
|
|
1048
|
-
"char": "b",
|
|
1049
|
-
"description": "Set the build number",
|
|
1050
|
-
"name": "buildNumber",
|
|
1051
|
-
"hasDynamicHelp": false,
|
|
1052
|
-
"multiple": false,
|
|
1053
|
-
"type": "option"
|
|
1054
|
-
},
|
|
1055
|
-
"semanticVersion": {
|
|
1056
|
-
"char": "s",
|
|
1057
|
-
"description": "Set the semantic version",
|
|
1058
|
-
"name": "semanticVersion",
|
|
1059
|
-
"hasDynamicHelp": false,
|
|
1060
|
-
"multiple": false,
|
|
1061
|
-
"type": "option"
|
|
1062
|
-
},
|
|
1063
|
-
"gameEngine": {
|
|
1064
|
-
"char": "e",
|
|
1065
|
-
"description": "Set the game engine",
|
|
1066
|
-
"name": "gameEngine",
|
|
1067
|
-
"hasDynamicHelp": false,
|
|
1068
|
-
"multiple": false,
|
|
1069
|
-
"type": "option"
|
|
1070
|
-
},
|
|
1071
|
-
"gameEngineVersion": {
|
|
1072
|
-
"char": "v",
|
|
1073
|
-
"description": "Set the game engine version",
|
|
1074
|
-
"name": "gameEngineVersion",
|
|
1075
|
-
"hasDynamicHelp": false,
|
|
1076
|
-
"multiple": false,
|
|
1077
|
-
"type": "option"
|
|
1078
|
-
},
|
|
1079
|
-
"iosBundleId": {
|
|
1080
|
-
"char": "i",
|
|
1081
|
-
"description": "Set the iOS bundle ID",
|
|
1082
|
-
"name": "iosBundleId",
|
|
1083
|
-
"hasDynamicHelp": false,
|
|
1084
|
-
"multiple": false,
|
|
1085
|
-
"type": "option"
|
|
1086
|
-
},
|
|
1087
|
-
"androidPackageName": {
|
|
1088
|
-
"char": "a",
|
|
1089
|
-
"description": "Set the Android package name",
|
|
1090
|
-
"name": "androidPackageName",
|
|
1091
|
-
"hasDynamicHelp": false,
|
|
1092
|
-
"multiple": false,
|
|
1093
|
-
"type": "option"
|
|
1094
|
-
}
|
|
1095
|
-
},
|
|
1096
|
-
"hasDynamicHelp": false,
|
|
1097
|
-
"hiddenAliases": [],
|
|
1098
|
-
"id": "game:android:wizard",
|
|
1099
|
-
"pluginAlias": "shipthis",
|
|
1100
|
-
"pluginName": "shipthis",
|
|
1101
|
-
"pluginType": "core",
|
|
1102
|
-
"strict": true,
|
|
1103
|
-
"enableJsonFlag": false,
|
|
1104
|
-
"isESM": true,
|
|
1105
|
-
"relativePath": [
|
|
1106
|
-
"dist",
|
|
1107
|
-
"commands",
|
|
1108
|
-
"game",
|
|
1109
|
-
"android",
|
|
1110
|
-
"wizard.js"
|
|
1111
|
-
]
|
|
1112
|
-
},
|
|
1113
1031
|
"game:build:download": {
|
|
1114
1032
|
"aliases": [],
|
|
1115
1033
|
"args": {
|
|
@@ -1827,14 +1745,15 @@
|
|
|
1827
1745
|
"aliases": [],
|
|
1828
1746
|
"args": {
|
|
1829
1747
|
"file": {
|
|
1830
|
-
"description": "
|
|
1748
|
+
"description": "Path to the ZIP file to import (must be in the same format as the export)",
|
|
1831
1749
|
"name": "file",
|
|
1832
|
-
"required":
|
|
1750
|
+
"required": false
|
|
1833
1751
|
}
|
|
1834
1752
|
},
|
|
1835
1753
|
"description": "Imports an Android Keystore to your ShipThis account for the specified game.",
|
|
1836
1754
|
"examples": [
|
|
1837
|
-
"<%= config.bin %> <%= command.id %>"
|
|
1755
|
+
"<%= config.bin %> <%= command.id %> path/to/import.zip -g abfd5b00",
|
|
1756
|
+
"<%= config.bin %> <%= command.id %> --jksFile path/to/file.jks --keystorePassword yourpass --keyPassword yourkeypass"
|
|
1838
1757
|
],
|
|
1839
1758
|
"flags": {
|
|
1840
1759
|
"gameId": {
|
|
@@ -1845,8 +1764,30 @@
|
|
|
1845
1764
|
"multiple": false,
|
|
1846
1765
|
"type": "option"
|
|
1847
1766
|
},
|
|
1767
|
+
"jksFile": {
|
|
1768
|
+
"description": "Path to the JKS file to import (requires passwords)",
|
|
1769
|
+
"name": "jksFile",
|
|
1770
|
+
"hasDynamicHelp": false,
|
|
1771
|
+
"multiple": false,
|
|
1772
|
+
"type": "option"
|
|
1773
|
+
},
|
|
1774
|
+
"keystorePassword": {
|
|
1775
|
+
"description": "Keystore password (required when using --jksFile)",
|
|
1776
|
+
"name": "keystorePassword",
|
|
1777
|
+
"hasDynamicHelp": false,
|
|
1778
|
+
"multiple": false,
|
|
1779
|
+
"type": "option"
|
|
1780
|
+
},
|
|
1781
|
+
"keyPassword": {
|
|
1782
|
+
"description": "Key alias password (required when using --jksFile)",
|
|
1783
|
+
"name": "keyPassword",
|
|
1784
|
+
"hasDynamicHelp": false,
|
|
1785
|
+
"multiple": false,
|
|
1786
|
+
"type": "option"
|
|
1787
|
+
},
|
|
1848
1788
|
"force": {
|
|
1849
1789
|
"char": "f",
|
|
1790
|
+
"description": "Overwrite any existing keystore without confirmation",
|
|
1850
1791
|
"name": "force",
|
|
1851
1792
|
"allowNo": false,
|
|
1852
1793
|
"type": "boolean"
|
|
@@ -2297,5 +2238,5 @@
|
|
|
2297
2238
|
]
|
|
2298
2239
|
}
|
|
2299
2240
|
},
|
|
2300
|
-
"version": "0.1.
|
|
2241
|
+
"version": "0.1.12"
|
|
2301
2242
|
}
|
package/package.json
CHANGED