shipthis 0.1.50 → 0.1.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{AppleBundleIdDetails-4WNaBSGY.js → AppleBundleIdDetails-BUJnAu52.js} +4 -4
- package/dist/{Command-DuEKI93-.js → Command-B-MWAVPL.js} +2 -2
- package/dist/CommandGame-DPJEVhuw.js +14 -0
- package/dist/{Create-DUl1dfhZ.js → Create-CmEndHAZ.js} +2 -2
- package/dist/CredentialDetailsView-B7Y9sj8K.js +131 -0
- package/dist/ErrorBox-DS5e6VmF.js +21 -0
- package/dist/{GameStatus-NSIKI7Zi.js → GameStatus-XFGHRbVP.js} +5 -5
- package/dist/{Import-B_2jztJs.js → Import-ea-wsQt-.js} +3 -3
- package/dist/{JobLogTail-CDGqKKin.js → JobLogTail-BwFUt8LB.js} +6 -25
- package/dist/{JobProgress-COP5mbrn.js → JobProgress-_cIUK7Ho.js} +6 -6
- package/dist/{JobStatusTable-DamWqM1t.js → JobStatusTable-CyDhk3lr.js} +3 -3
- package/dist/{ProjectCredentialsTable-BXWs0Ler.js → ProjectCredentialsTable-0DY-GdfY.js} +2 -2
- package/dist/TruncatedText-DhEXCrnE.js +25 -0
- package/dist/{UserCredentialsTable-Cr2NT9gg.js → UserCredentialsTable-CTJMS9Kc.js} +2 -2
- package/dist/{baseAppleCommand-CMBV0P9z.js → baseAppleCommand-9xmssZ7g.js} +1 -1
- package/dist/{baseCommand-C7OdounZ.js → baseCommand-CpAJaJoG.js} +289 -230
- package/dist/{baseGameAndroidCommand-BE6hsL-c.js → baseGameAndroidCommand-HO8as-RL.js} +2 -2
- package/dist/{baseGameCommand-Bap2bDqP.js → baseGameCommand-Cbx4ywHl.js} +32 -17
- package/dist/commands/apiKey/create.js +11 -11
- package/dist/commands/apiKey/list.js +12 -12
- package/dist/commands/apiKey/revoke.js +12 -12
- package/dist/commands/apple/apiKey/create.js +7 -7
- package/dist/commands/apple/apiKey/delete.js +7 -7
- package/dist/commands/apple/apiKey/export.js +5 -5
- package/dist/commands/apple/apiKey/import.js +5 -5
- package/dist/commands/apple/apiKey/status.js +4 -4
- package/dist/commands/apple/certificate/create.js +7 -7
- package/dist/commands/apple/certificate/delete.js +7 -7
- package/dist/commands/apple/certificate/export.js +5 -5
- package/dist/commands/apple/certificate/import.js +5 -5
- package/dist/commands/apple/certificate/show.js +78 -0
- package/dist/commands/apple/certificate/status.js +4 -4
- package/dist/commands/apple/login.js +3 -3
- package/dist/commands/apple/status.js +3 -3
- package/dist/commands/dashboard.js +3 -3
- package/dist/commands/game/android/apiKey/connect.js +9 -8
- package/dist/commands/game/android/apiKey/create.js +12 -11
- package/dist/commands/game/android/apiKey/delete.js +7 -7
- package/dist/commands/game/android/apiKey/export.js +7 -7
- package/dist/commands/game/android/apiKey/import.js +7 -7
- package/dist/commands/game/android/apiKey/invite.js +7 -7
- package/dist/commands/game/android/apiKey/policy.js +3 -3
- package/dist/commands/game/android/apiKey/show.js +79 -0
- package/dist/commands/game/android/apiKey/status.js +7 -7
- package/dist/commands/game/android/keyStore/create.js +9 -8
- package/dist/commands/game/android/keyStore/delete.js +7 -7
- package/dist/commands/game/android/keyStore/export.js +6 -6
- package/dist/commands/game/android/keyStore/import.js +10 -9
- package/dist/commands/game/android/keyStore/status.js +6 -6
- package/dist/commands/game/android/status.js +5 -5
- package/dist/commands/game/build/download.js +3 -3
- package/dist/commands/game/build/list.js +6 -5
- package/dist/commands/game/create.js +3 -3
- package/dist/commands/game/details.js +6 -6
- package/dist/commands/game/export.js +3 -3
- package/dist/commands/game/ios/app/addTester.js +7 -7
- package/dist/commands/game/ios/app/create.js +6 -6
- package/dist/commands/game/ios/app/status.js +7 -7
- package/dist/commands/game/ios/app/sync.js +5 -5
- package/dist/commands/game/ios/profile/create.js +7 -7
- package/dist/commands/game/ios/profile/delete.js +7 -7
- package/dist/commands/game/ios/profile/export.js +6 -6
- package/dist/commands/game/ios/profile/import.js +6 -6
- package/dist/commands/game/ios/profile/show.js +78 -0
- package/dist/commands/game/ios/profile/status.js +7 -7
- package/dist/commands/game/ios/status.js +10 -9
- package/dist/commands/game/ios/wizard.js +3 -3
- package/dist/commands/game/job/list.js +6 -6
- package/dist/commands/game/job/status.js +9 -8
- package/dist/commands/game/list.js +12 -12
- package/dist/commands/game/ship.js +14 -34
- package/dist/commands/game/status.js +6 -5
- package/dist/commands/game/wizard.js +26 -18
- package/dist/commands/internal/fastlane.js +5 -5
- package/dist/commands/internal/readme.js +5 -5
- package/dist/commands/login.js +6 -6
- package/dist/commands/status.js +5 -5
- package/dist/commands/util/android-build-method.js +5 -5
- package/dist/commands/util/glass.js +2 -2
- package/dist/{export-gdKqwR7u.js → export-Blt3BR-u.js} +1 -1
- package/dist/{import-CICoTBgo.js → import-IVcS8WFM.js} +1 -1
- package/dist/{index-BaxMfQnE.js → index-B5s20dhm.js} +5 -5
- package/dist/{index-YX-OJ2AA.js → index-By3xdL8c.js} +1 -1
- package/dist/{index-CjYag6UG.js → index-KJtngKaE.js} +4 -4
- package/dist/{upload-Drre-qsL.js → upload-B56rRpZW.js} +1 -1
- package/dist/{useAppleApp-ChI2baWJ.js → useAppleApp-BHUjGmw0.js} +1 -1
- package/dist/{useAppleBundleId-CUTbojvt.js → useAppleBundleId-Cv5maswG.js} +1 -1
- package/dist/{useAppleProfiles-omIx9KVc.js → useAppleProfiles-kDiUOXiX.js} +1 -1
- package/dist/{useGoogleStatus-v86ZyFiz.js → useGoogleStatus-BHd_Wp59.js} +2 -2
- package/dist/{useProjectCredentials-5Ycm5B4x.js → useProjectCredentials-ADtDLDmx.js} +19 -2
- package/dist/{useWebSocket-AjcqLcJX.js → useWebSocket-DlNe_zDR.js} +1 -1
- package/docs/apple/certificate/show.md +23 -0
- package/docs/apple/certificate.md +24 -0
- package/docs/game/android/apiKey/show.md +26 -0
- package/docs/game/android/apiKey.md +27 -0
- package/docs/game/ios/profile/show.md +26 -0
- package/docs/game/ios/profile.md +27 -0
- package/npm-shrinkwrap.json +52 -47
- package/oclif.manifest.json +351 -236
- package/package.json +8 -4
- package/dist/CommandGame-BeyPCeC7.js +0 -7
package/README.md
CHANGED
|
@@ -110,7 +110,7 @@ We support **all stable Godot versions since 3.6**, including:
|
|
|
110
110
|
| [3.6](https://github.com/godotengine/godot/releases/tag/3.6-stable) | [4.0](https://github.com/godotengine/godot/releases/tag/4.0-stable) | [4.1](https://github.com/godotengine/godot/releases/tag/4.1-stable) | [4.2](https://github.com/godotengine/godot/releases/tag/4.2-stable) | [4.3](https://github.com/godotengine/godot/releases/tag/4.3-stable) | [4.4](https://github.com/godotengine/godot/releases/tag/4.4-stable) | [4.5](https://github.com/godotengine/godot/releases/tag/4.5-stable) | [4.6](https://github.com/godotengine/godot/releases/tag/4.6-stable) |
|
|
111
111
|
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
|
|
112
112
|
| [3.6.1](https://github.com/godotengine/godot/releases/tag/3.6.1-stable) | [4.0.1](https://github.com/godotengine/godot/releases/tag/4.0.1-stable) | [4.1.1](https://github.com/godotengine/godot/releases/tag/4.1.1-stable) | [4.2.1](https://github.com/godotengine/godot/releases/tag/4.2.1-stable) | [4.3.1 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.3.1-28eb575) | [4.4.1](https://github.com/godotengine/godot/releases/tag/4.4.1-stable) | [4.5.1](https://github.com/godotengine/godot/releases/tag/4.5.1-stable) | [4.6.1](https://github.com/godotengine/godot/releases/tag/4.6.1-stable) |
|
|
113
|
-
| [3.6.2](https://github.com/godotengine/godot/releases/tag/3.6.2-stable) | [4.0.2](https://github.com/godotengine/godot/releases/tag/4.0.2-stable) | [4.1.2](https://github.com/godotengine/godot/releases/tag/4.1.2-stable) | [4.2.2](https://github.com/godotengine/godot/releases/tag/4.2.2-stable) | | [4.4.2 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.4.2-ca113b3) | |
|
|
113
|
+
| [3.6.2](https://github.com/godotengine/godot/releases/tag/3.6.2-stable) | [4.0.2](https://github.com/godotengine/godot/releases/tag/4.0.2-stable) | [4.1.2](https://github.com/godotengine/godot/releases/tag/4.1.2-stable) | [4.2.2](https://github.com/godotengine/godot/releases/tag/4.2.2-stable) | | [4.4.2 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.4.2-ca113b3) | | [4.6.2](https://github.com/godotengine/godot/releases/tag/4.6.2-stable) |
|
|
114
114
|
| | [4.0.3](https://github.com/godotengine/godot/releases/tag/4.0.3-stable) | [4.1.3](https://github.com/godotengine/godot/releases/tag/4.1.3-stable) | [4.2.3 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.2.3-d33f443) | | | | |
|
|
115
115
|
| | [4.0.4](https://github.com/godotengine/godot/releases/tag/4.0.4-stable) | [4.1.4](https://github.com/godotengine/godot/releases/tag/4.1.4-stable) | | | | | |
|
|
116
116
|
| | [4.0.5 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.0.5-df6989b) | [4.1.5 *](https://github.com/shipth-is/godot-android-sdk-upgrade/releases/tag/4.1.5-b68debd) | | | | | |
|
|
@@ -11,11 +11,11 @@ import 'readline-sync';
|
|
|
11
11
|
import 'luxon';
|
|
12
12
|
import 'axios';
|
|
13
13
|
import 'isomorphic-git';
|
|
14
|
-
import './baseCommand-
|
|
14
|
+
import './baseCommand-CpAJaJoG.js';
|
|
15
15
|
import '@oclif/core';
|
|
16
16
|
import '@tanstack/react-query';
|
|
17
17
|
import 'react';
|
|
18
|
-
import { u as useAppleApp } from './useAppleApp-
|
|
18
|
+
import { u as useAppleApp } from './useAppleApp-BHUjGmw0.js';
|
|
19
19
|
import 'uuid';
|
|
20
20
|
import 'fast-glob';
|
|
21
21
|
import 'stream';
|
|
@@ -27,12 +27,12 @@ import 'strip-ansi';
|
|
|
27
27
|
import { T as Table } from './Table-FaNgpyeq.js';
|
|
28
28
|
import { T as Title } from './Title-BCQtayg6.js';
|
|
29
29
|
import 'open';
|
|
30
|
-
import './baseGameCommand-
|
|
30
|
+
import './baseGameCommand-Cbx4ywHl.js';
|
|
31
31
|
import 'godot-export-presets';
|
|
32
32
|
import 'marked';
|
|
33
33
|
import 'marked-terminal';
|
|
34
34
|
import 'qrcode';
|
|
35
|
-
import { u as useAppleBundleId } from './useAppleBundleId-
|
|
35
|
+
import { u as useAppleBundleId } from './useAppleBundleId-Cv5maswG.js';
|
|
36
36
|
|
|
37
37
|
const AppleAppDetails = (props) => {
|
|
38
38
|
const { data, isLoading } = useAppleApp(props);
|
|
@@ -2,8 +2,8 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { QueryClientProvider } from '@tanstack/react-query';
|
|
3
3
|
import { useScreenSize } from 'fullscreen-ink';
|
|
4
4
|
import { Box } from 'ink';
|
|
5
|
-
import { C as CommandProvider } from './baseGameCommand-
|
|
6
|
-
import {
|
|
5
|
+
import { C as CommandProvider } from './baseGameCommand-Cbx4ywHl.js';
|
|
6
|
+
import { F as queryClient } from './baseCommand-CpAJaJoG.js';
|
|
7
7
|
import 'axios';
|
|
8
8
|
import 'node:fs';
|
|
9
9
|
import 'luxon';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { E as ErrorBox } from './ErrorBox-DS5e6VmF.js';
|
|
4
|
+
import { G as GameProvider, d as GameContext } from './baseGameCommand-Cbx4ywHl.js';
|
|
5
|
+
import { C as Command } from './Command-B-MWAVPL.js';
|
|
6
|
+
|
|
7
|
+
const CommandGameErrorBoundary = ({ children }) => {
|
|
8
|
+
const { error } = React.useContext(GameContext);
|
|
9
|
+
if (!error) return /* @__PURE__ */ jsx(Fragment, { children });
|
|
10
|
+
return /* @__PURE__ */ jsx(ErrorBox, { error });
|
|
11
|
+
};
|
|
12
|
+
const CommandGame = ({ children, command }) => /* @__PURE__ */ jsx(Command, { command, children: /* @__PURE__ */ jsx(GameProvider, { children: /* @__PURE__ */ jsx(CommandGameErrorBoundary, { children }) }) });
|
|
13
|
+
|
|
14
|
+
export { CommandGame as C };
|
|
@@ -3,7 +3,7 @@ import { useQueryClient } from '@tanstack/react-query';
|
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
import { Box } from 'ink';
|
|
5
5
|
import { useContext } from 'react';
|
|
6
|
-
import {
|
|
6
|
+
import { r as getAuthedHeaders, q as API_URL } from './baseCommand-CpAJaJoG.js';
|
|
7
7
|
import 'ink-spinner';
|
|
8
8
|
import 'node:crypto';
|
|
9
9
|
import 'node:fs';
|
|
@@ -14,7 +14,7 @@ import 'readline-sync';
|
|
|
14
14
|
import 'luxon';
|
|
15
15
|
import 'isomorphic-git';
|
|
16
16
|
import '@oclif/core';
|
|
17
|
-
import {
|
|
17
|
+
import { d as GameContext, i as cacheKeys } from './baseGameCommand-Cbx4ywHl.js';
|
|
18
18
|
import 'uuid';
|
|
19
19
|
import 'fast-glob';
|
|
20
20
|
import 'stream';
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Box, Text } from 'ink';
|
|
3
|
+
import { DateTime } from 'luxon';
|
|
4
|
+
import { d as getShortDate, C as CredentialsType } from './baseCommand-CpAJaJoG.js';
|
|
5
|
+
import 'node:crypto';
|
|
6
|
+
import 'node:fs';
|
|
7
|
+
import 'node:path';
|
|
8
|
+
import 'node:readline';
|
|
9
|
+
import 'node:url';
|
|
10
|
+
import 'readline-sync';
|
|
11
|
+
import 'axios';
|
|
12
|
+
import 'isomorphic-git';
|
|
13
|
+
import '@oclif/core';
|
|
14
|
+
import '@tanstack/react-query';
|
|
15
|
+
import 'react';
|
|
16
|
+
import 'uuid';
|
|
17
|
+
import 'fast-glob';
|
|
18
|
+
import 'stream';
|
|
19
|
+
import 'yazl';
|
|
20
|
+
import 'socket.io-client';
|
|
21
|
+
import 'fullscreen-ink';
|
|
22
|
+
import { T as Title } from './Title-BCQtayg6.js';
|
|
23
|
+
import { T as TruncatedText } from './TruncatedText-DhEXCrnE.js';
|
|
24
|
+
|
|
25
|
+
const ENTITLEMENT_LABELS = {
|
|
26
|
+
"application-identifier": "App Identifier",
|
|
27
|
+
"com.apple.developer.team-identifier": "Team ID",
|
|
28
|
+
"keychain-access-groups": "Keychain Groups"
|
|
29
|
+
};
|
|
30
|
+
const getStatusColor = (status) => {
|
|
31
|
+
switch (status) {
|
|
32
|
+
case "expired":
|
|
33
|
+
return "red";
|
|
34
|
+
case "expiring-soon":
|
|
35
|
+
return "yellow";
|
|
36
|
+
default:
|
|
37
|
+
return "white";
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
const getExpiryStatus = (iso) => {
|
|
41
|
+
const dt = DateTime.fromISO(iso);
|
|
42
|
+
const now = DateTime.now();
|
|
43
|
+
if (dt < now) return "expired";
|
|
44
|
+
if (dt < now.plus({ months: 1 })) return "expiring-soon";
|
|
45
|
+
return null;
|
|
46
|
+
};
|
|
47
|
+
const ExpiryNote = ({ status }) => {
|
|
48
|
+
if (!status) return null;
|
|
49
|
+
const color = getStatusColor(status);
|
|
50
|
+
const message = status === "expired" ? "Expired" : "Expiring soon";
|
|
51
|
+
return /* @__PURE__ */ jsx(Text, { color, children: message });
|
|
52
|
+
};
|
|
53
|
+
const DetailRow = ({ expiryStatus, label, labelWidth, value }) => /* @__PURE__ */ jsxs(Box, { flexDirection: "row", children: [
|
|
54
|
+
/* @__PURE__ */ jsx(Box, { flexShrink: 0, marginRight: 2, width: labelWidth, children: /* @__PURE__ */ jsx(Text, { children: label }) }),
|
|
55
|
+
/* @__PURE__ */ jsxs(Box, { flexDirection: "row", gap: 1, children: [
|
|
56
|
+
/* @__PURE__ */ jsx(TruncatedText, { bold: true, color: getStatusColor(expiryStatus), children: value }),
|
|
57
|
+
/* @__PURE__ */ jsx(ExpiryNote, { status: expiryStatus })
|
|
58
|
+
] })
|
|
59
|
+
] });
|
|
60
|
+
const formatEntitlementValue = (value) => {
|
|
61
|
+
if (Array.isArray(value)) return value.map((v) => String(v)).join(", ");
|
|
62
|
+
if (value === null || value === void 0) return "";
|
|
63
|
+
if (typeof value === "object") return JSON.stringify(value);
|
|
64
|
+
return String(value);
|
|
65
|
+
};
|
|
66
|
+
const getRows = (cred) => {
|
|
67
|
+
const rows = [];
|
|
68
|
+
const { details, type } = cred;
|
|
69
|
+
if (type === CredentialsType.CERTIFICATE) {
|
|
70
|
+
const d = details;
|
|
71
|
+
if (d.certExpiresAt) {
|
|
72
|
+
rows.push({
|
|
73
|
+
expiryStatus: getExpiryStatus(d.certExpiresAt),
|
|
74
|
+
label: "Certificate Expiry",
|
|
75
|
+
value: getShortDate(DateTime.fromISO(d.certExpiresAt))
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
if (d.profileExpiresAt) {
|
|
79
|
+
rows.push({
|
|
80
|
+
expiryStatus: getExpiryStatus(d.profileExpiresAt),
|
|
81
|
+
label: "Profile Expiry",
|
|
82
|
+
value: getShortDate(DateTime.fromISO(d.profileExpiresAt))
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
if (d.profileEntitlements) {
|
|
86
|
+
for (const [key, value] of Object.entries(d.profileEntitlements)) {
|
|
87
|
+
rows.push({
|
|
88
|
+
label: ENTITLEMENT_LABELS[key] ?? key,
|
|
89
|
+
value: formatEntitlementValue(value)
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (type === CredentialsType.KEY) {
|
|
95
|
+
const d = details;
|
|
96
|
+
if (d.serviceAccountEmail) {
|
|
97
|
+
rows.push({ label: "Service Account Email", value: d.serviceAccountEmail });
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return rows;
|
|
101
|
+
};
|
|
102
|
+
const CredentialDetailsView = ({ credential, title }) => {
|
|
103
|
+
const rows = getRows(credential);
|
|
104
|
+
if (rows.length === 0) {
|
|
105
|
+
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [
|
|
106
|
+
title && /* @__PURE__ */ jsx(Title, { children: title }),
|
|
107
|
+
/* @__PURE__ */ jsx(Box, { marginLeft: 2, children: /* @__PURE__ */ jsx(Text, { children: "No additional details available for this credential." }) })
|
|
108
|
+
] });
|
|
109
|
+
}
|
|
110
|
+
const labelWidth = Math.max(...rows.map((r) => r.label.length)) + 2;
|
|
111
|
+
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [
|
|
112
|
+
title && /* @__PURE__ */ jsx(Title, { children: title }),
|
|
113
|
+
/* @__PURE__ */ jsxs(Box, { flexDirection: "column", marginLeft: 2, children: [
|
|
114
|
+
rows.map((row) => /* @__PURE__ */ jsx(
|
|
115
|
+
DetailRow,
|
|
116
|
+
{
|
|
117
|
+
expiryStatus: row.expiryStatus,
|
|
118
|
+
label: row.label,
|
|
119
|
+
labelWidth,
|
|
120
|
+
value: row.value
|
|
121
|
+
},
|
|
122
|
+
row.label
|
|
123
|
+
)),
|
|
124
|
+
/* @__PURE__ */ jsx(Box, { marginTop: 1, children: /* @__PURE__ */ jsx(DetailRow, { label: "ID", labelWidth, value: credential.id }) }),
|
|
125
|
+
/* @__PURE__ */ jsx(DetailRow, { label: "Serial", labelWidth, value: credential.serialNumber }),
|
|
126
|
+
/* @__PURE__ */ jsx(DetailRow, { label: "Created", labelWidth, value: getShortDate(credential.createdAt) })
|
|
127
|
+
] })
|
|
128
|
+
] });
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
export { CredentialDetailsView as C };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Box, Text } from 'ink';
|
|
3
|
+
import { H as HandledError } from './baseCommand-CpAJaJoG.js';
|
|
4
|
+
|
|
5
|
+
const ErrorBox = ({ error }) => {
|
|
6
|
+
if (error instanceof HandledError) {
|
|
7
|
+
return /* @__PURE__ */ jsxs(Box, { flexDirection: "row", marginTop: 0, children: [
|
|
8
|
+
/* @__PURE__ */ jsx(Text, { color: "red", children: " \u203A " }),
|
|
9
|
+
/* @__PURE__ */ jsxs(Text, { children: [
|
|
10
|
+
"Error: ",
|
|
11
|
+
error.message
|
|
12
|
+
] })
|
|
13
|
+
] });
|
|
14
|
+
}
|
|
15
|
+
const stack = error.stack?.trim();
|
|
16
|
+
const fullLog = stack && stack.includes(error.message) ? stack : [error.message, stack].filter((part) => Boolean(part)).join("\n");
|
|
17
|
+
const logLines = fullLog ? fullLog.split("\n") : [error.message];
|
|
18
|
+
return /* @__PURE__ */ jsx(Box, { flexDirection: "column", marginTop: 0, children: logLines.map((line, i) => /* @__PURE__ */ jsx(Text, { color: "red", children: line }, i)) });
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export { ErrorBox as E };
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { Text, Box } from 'ink';
|
|
3
3
|
import { useState, useEffect, useContext } from 'react';
|
|
4
|
-
import {
|
|
4
|
+
import { g as getShortUUID, d as getShortDate, P as Platform, m as getProject, L as getProjectPlatformProgress } from './baseCommand-CpAJaJoG.js';
|
|
5
5
|
import 'ink-spinner';
|
|
6
|
-
import {
|
|
6
|
+
import { m as makeHumanReadable, d as GameContext, j as CommandContext } from './baseGameCommand-Cbx4ywHl.js';
|
|
7
|
+
import 'luxon';
|
|
8
|
+
import 'string-length';
|
|
9
|
+
import 'strip-ansi';
|
|
7
10
|
import '@tanstack/react-query';
|
|
8
11
|
import 'axios';
|
|
9
|
-
import 'luxon';
|
|
10
12
|
import 'node:fs';
|
|
11
13
|
import 'uuid';
|
|
12
14
|
import 'fast-glob';
|
|
@@ -14,8 +16,6 @@ import 'stream';
|
|
|
14
16
|
import 'yazl';
|
|
15
17
|
import 'socket.io-client';
|
|
16
18
|
import 'fullscreen-ink';
|
|
17
|
-
import 'string-length';
|
|
18
|
-
import 'strip-ansi';
|
|
19
19
|
import { S as StatusTable } from './StatusTable-DzRWcMr4.js';
|
|
20
20
|
import 'open';
|
|
21
21
|
import '@inkjs/ui';
|
|
@@ -11,7 +11,7 @@ import 'readline-sync';
|
|
|
11
11
|
import 'luxon';
|
|
12
12
|
import 'axios';
|
|
13
13
|
import 'isomorphic-git';
|
|
14
|
-
import {
|
|
14
|
+
import { F as queryClient, P as Platform, C as CredentialsType } from './baseCommand-CpAJaJoG.js';
|
|
15
15
|
import '@oclif/core';
|
|
16
16
|
import { useMutation } from '@tanstack/react-query';
|
|
17
17
|
import { v4 } from 'uuid';
|
|
@@ -24,12 +24,12 @@ import 'string-length';
|
|
|
24
24
|
import 'strip-ansi';
|
|
25
25
|
import 'open';
|
|
26
26
|
import '@inkjs/ui';
|
|
27
|
-
import { i as cacheKeys,
|
|
27
|
+
import { i as cacheKeys, d as GameContext } from './baseGameCommand-Cbx4ywHl.js';
|
|
28
28
|
import 'marked';
|
|
29
29
|
import 'marked-terminal';
|
|
30
30
|
import 'qrcode';
|
|
31
31
|
import 'godot-export-presets';
|
|
32
|
-
import { i as importCredential } from './import-
|
|
32
|
+
import { i as importCredential } from './import-IVcS8WFM.js';
|
|
33
33
|
|
|
34
34
|
async function importKeystore({ log = () => {
|
|
35
35
|
}, ...opt }) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Box, Text } from 'ink';
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
4
|
import { useInfiniteQuery } from '@tanstack/react-query';
|
|
5
5
|
import axios from 'axios';
|
|
6
6
|
import { useState, useRef, useEffect } from 'react';
|
|
7
7
|
import 'node:fs';
|
|
8
|
-
import {
|
|
8
|
+
import { r as getAuthedHeaders, q as API_URL, E as castArrayObjectDates, J as JobStatus, a8 as castJobDates, a6 as castObjectDates, a9 as getShortTime } from './baseCommand-CpAJaJoG.js';
|
|
9
9
|
import 'luxon';
|
|
10
10
|
import 'node:crypto';
|
|
11
11
|
import 'node:path';
|
|
@@ -19,11 +19,10 @@ import 'fast-glob';
|
|
|
19
19
|
import 'stream';
|
|
20
20
|
import 'yazl';
|
|
21
21
|
import 'socket.io-client';
|
|
22
|
-
import { i as cacheKeys,
|
|
23
|
-
import { u as useWebSocket } from './useWebSocket-
|
|
22
|
+
import { i as cacheKeys, t as useJob, f as getStageColor, v as getMessageColor } from './baseGameCommand-Cbx4ywHl.js';
|
|
23
|
+
import { u as useWebSocket } from './useWebSocket-DlNe_zDR.js';
|
|
24
24
|
import 'fullscreen-ink';
|
|
25
|
-
import
|
|
26
|
-
import stripAnsi from 'strip-ansi';
|
|
25
|
+
import { T as TruncatedText } from './TruncatedText-DhEXCrnE.js';
|
|
27
26
|
import { T as Title } from './Title-BCQtayg6.js';
|
|
28
27
|
|
|
29
28
|
function arrayToDictionary(array, key = "id") {
|
|
@@ -176,24 +175,6 @@ function useJobLogTail({ isWatching, jobId, length, projectId }) {
|
|
|
176
175
|
};
|
|
177
176
|
}
|
|
178
177
|
|
|
179
|
-
const TruncatedText = ({ children, wrap, ...textPropsWithoutWrap }) => {
|
|
180
|
-
const ref = useRef();
|
|
181
|
-
const [width, setWidth] = useState(null);
|
|
182
|
-
useEffect(() => {
|
|
183
|
-
if (!ref.current) return;
|
|
184
|
-
const { width: measuredWidth } = measureElement(ref.current);
|
|
185
|
-
setWidth(measuredWidth);
|
|
186
|
-
}, []);
|
|
187
|
-
const getTruncated = (input) => {
|
|
188
|
-
const withoutCrlf = input.replaceAll(/[\n\r]/g, "");
|
|
189
|
-
if (width === null) return withoutCrlf;
|
|
190
|
-
const withoutAnsi = stripAnsi(withoutCrlf);
|
|
191
|
-
const textLength = stringLength(withoutAnsi);
|
|
192
|
-
return textLength > width ? withoutCrlf.slice(0, Math.max(0, width)) : withoutCrlf;
|
|
193
|
-
};
|
|
194
|
-
return /* @__PURE__ */ jsx(Box, { ref, children: /* @__PURE__ */ jsx(Text, { ...textPropsWithoutWrap, children: getTruncated(children) + "\x1B[0m" }) });
|
|
195
|
-
};
|
|
196
|
-
|
|
197
178
|
const JobLogLine = ({ log, showTimestamp = true, showStage = true }) => {
|
|
198
179
|
const stageColor = getStageColor(log.stage);
|
|
199
180
|
const messageColor = getMessageColor(log.level);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useMutation } from '@tanstack/react-query';
|
|
2
|
-
import {
|
|
2
|
+
import { aa as LEGACY_DEFAULT_IGNORED_FILES_GLOBS, ab as LEGACY_DEFAULT_SHIPPED_FILES_GLOBS, y as DEFAULT_PLATFORM_GLOBS, P as Platform, m as getProject, ac as getNewUploadTicket, ad as startJobsFromUpload, F as queryClient, a3 as LogLevel } from './baseCommand-CpAJaJoG.js';
|
|
3
3
|
import 'node:crypto';
|
|
4
4
|
import fs__default from 'node:fs';
|
|
5
5
|
import 'node:path';
|
|
@@ -11,11 +11,11 @@ import 'axios';
|
|
|
11
11
|
import 'isomorphic-git';
|
|
12
12
|
import '@oclif/core';
|
|
13
13
|
import { useState } from 'react';
|
|
14
|
-
import {
|
|
14
|
+
import { w as getFileHash, i as cacheKeys, x as getPlatformName, v as getMessageColor } from './baseGameCommand-Cbx4ywHl.js';
|
|
15
15
|
import { v4 } from 'uuid';
|
|
16
16
|
import fg from 'fast-glob';
|
|
17
17
|
import { Readable, Transform } from 'stream';
|
|
18
|
-
import { q as queryProjectCredentials } from './useProjectCredentials-
|
|
18
|
+
import { q as queryProjectCredentials } from './useProjectCredentials-ADtDLDmx.js';
|
|
19
19
|
import { ZipFile } from 'yazl';
|
|
20
20
|
import 'socket.io-client';
|
|
21
21
|
import 'fullscreen-ink';
|
|
@@ -23,15 +23,15 @@ import { Box, Text } from 'ink';
|
|
|
23
23
|
import { g as getCWDGitInfo } from './git-BpsfNFZ_.js';
|
|
24
24
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
25
25
|
import 'ink-spinner';
|
|
26
|
-
import
|
|
26
|
+
import 'string-length';
|
|
27
|
+
import 'strip-ansi';
|
|
28
|
+
import { u as useJobWatching, a as JobLogLine } from './JobLogTail-BwFUt8LB.js';
|
|
27
29
|
import 'open';
|
|
28
30
|
import '@inkjs/ui';
|
|
29
31
|
import 'marked';
|
|
30
32
|
import 'marked-terminal';
|
|
31
33
|
import { P as ProgressSpinner } from './ProgressSpinner-Um6ARKlk.js';
|
|
32
34
|
import 'qrcode';
|
|
33
|
-
import 'string-length';
|
|
34
|
-
import 'strip-ansi';
|
|
35
35
|
import 'godot-export-presets';
|
|
36
36
|
|
|
37
37
|
const WARN_LEARN_MORE = "Learn more: https://shipth.is/docs/guides/controlling-uploaded-files";
|
|
@@ -3,17 +3,17 @@ import { Box, Text } from 'ink';
|
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
4
|
import { DateTime } from 'luxon';
|
|
5
5
|
import { useState, useEffect } from 'react';
|
|
6
|
-
import { J as JobStatus } from './baseCommand-
|
|
6
|
+
import { J as JobStatus } from './baseCommand-CpAJaJoG.js';
|
|
7
7
|
import '@tanstack/react-query';
|
|
8
8
|
import 'axios';
|
|
9
9
|
import 'node:fs';
|
|
10
|
-
import { e as getJobSummary,
|
|
10
|
+
import { e as getJobSummary, f as getStageColor, h as getJobStatusColor } from './baseGameCommand-Cbx4ywHl.js';
|
|
11
11
|
import 'uuid';
|
|
12
12
|
import 'fast-glob';
|
|
13
13
|
import 'stream';
|
|
14
14
|
import 'yazl';
|
|
15
15
|
import 'socket.io-client';
|
|
16
|
-
import { u as useJobWatching } from './JobLogTail-
|
|
16
|
+
import { u as useJobWatching } from './JobLogTail-BwFUt8LB.js';
|
|
17
17
|
import 'fullscreen-ink';
|
|
18
18
|
import { a as StatusRow, b as StatusRowLabel } from './StatusTable-DzRWcMr4.js';
|
|
19
19
|
import { T as Title } from './Title-BCQtayg6.js';
|
|
@@ -10,11 +10,11 @@ import 'readline-sync';
|
|
|
10
10
|
import 'luxon';
|
|
11
11
|
import 'axios';
|
|
12
12
|
import 'isomorphic-git';
|
|
13
|
-
import './baseCommand-
|
|
13
|
+
import './baseCommand-CpAJaJoG.js';
|
|
14
14
|
import '@oclif/core';
|
|
15
15
|
import '@tanstack/react-query';
|
|
16
16
|
import 'react';
|
|
17
|
-
import { u as useProjectCredentials, g as getProjectCredentialSummary } from './useProjectCredentials-
|
|
17
|
+
import { u as useProjectCredentials, g as getProjectCredentialSummary } from './useProjectCredentials-ADtDLDmx.js';
|
|
18
18
|
import 'uuid';
|
|
19
19
|
import 'fast-glob';
|
|
20
20
|
import 'stream';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { measureElement, Box, Text } from 'ink';
|
|
3
|
+
import { useRef, useState, useEffect } from 'react';
|
|
4
|
+
import stringLength from 'string-length';
|
|
5
|
+
import stripAnsi from 'strip-ansi';
|
|
6
|
+
|
|
7
|
+
const TruncatedText = ({ children, wrap, ...textPropsWithoutWrap }) => {
|
|
8
|
+
const ref = useRef();
|
|
9
|
+
const [width, setWidth] = useState(null);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (!ref.current) return;
|
|
12
|
+
const { width: measuredWidth } = measureElement(ref.current);
|
|
13
|
+
setWidth(measuredWidth);
|
|
14
|
+
}, []);
|
|
15
|
+
const getTruncated = (input) => {
|
|
16
|
+
const withoutCrlf = input.replaceAll(/[\n\r]/g, "");
|
|
17
|
+
if (width === null) return withoutCrlf;
|
|
18
|
+
const withoutAnsi = stripAnsi(withoutCrlf);
|
|
19
|
+
const textLength = stringLength(withoutAnsi);
|
|
20
|
+
return textLength > width ? withoutCrlf.slice(0, Math.max(0, width)) : withoutCrlf;
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsx(Box, { ref, children: /* @__PURE__ */ jsx(Text, { ...textPropsWithoutWrap, children: getTruncated(children) + "\x1B[0m" }) });
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { TruncatedText as T };
|
|
@@ -10,7 +10,7 @@ import 'readline-sync';
|
|
|
10
10
|
import 'luxon';
|
|
11
11
|
import axios from 'axios';
|
|
12
12
|
import 'isomorphic-git';
|
|
13
|
-
import {
|
|
13
|
+
import { g as getShortUUID, d as getShortDate, r as getAuthedHeaders, q as API_URL, E as castArrayObjectDates } from './baseCommand-CpAJaJoG.js';
|
|
14
14
|
import '@oclif/core';
|
|
15
15
|
import { useQuery } from '@tanstack/react-query';
|
|
16
16
|
import 'react';
|
|
@@ -18,7 +18,7 @@ import 'uuid';
|
|
|
18
18
|
import 'fast-glob';
|
|
19
19
|
import 'stream';
|
|
20
20
|
import 'yazl';
|
|
21
|
-
import { i as cacheKeys
|
|
21
|
+
import { i as cacheKeys } from './baseGameCommand-Cbx4ywHl.js';
|
|
22
22
|
import 'socket.io-client';
|
|
23
23
|
import 'fullscreen-ink';
|
|
24
24
|
import { T as Table } from './Table-FaNgpyeq.js';
|