@transloadit/node 6.4.0 → 6.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -5
- package/dist/Transloadit.d.ts.map +1 -1
- package/dist/Transloadit.js +61 -5
- package/dist/Transloadit.js.map +1 -1
- package/dist/alphalib/renderSimpleValue.d.ts +14 -0
- package/dist/alphalib/renderSimpleValue.d.ts.map +1 -0
- package/dist/alphalib/renderSimpleValue.js +87 -0
- package/dist/alphalib/renderSimpleValue.js.map +1 -0
- package/dist/alphalib/truncateString.d.ts +5 -0
- package/dist/alphalib/truncateString.d.ts.map +1 -0
- package/dist/alphalib/truncateString.js +19 -0
- package/dist/alphalib/truncateString.js.map +1 -0
- package/dist/alphalib/types/builtinTemplates.d.ts +15 -3
- package/dist/alphalib/types/builtinTemplates.d.ts.map +1 -1
- package/dist/alphalib/types/builtinTemplates.js +23 -3
- package/dist/alphalib/types/builtinTemplates.js.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts +6 -0
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.js +29 -7
- package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
- package/dist/alphalib/types/robots/_video-generate.d.ts +34 -0
- package/dist/alphalib/types/robots/_video-generate.d.ts.map +1 -0
- package/dist/alphalib/types/robots/_video-generate.js +157 -0
- package/dist/alphalib/types/robots/_video-generate.js.map +1 -0
- package/dist/alphalib/types/robots/ai-chat.d.ts +2 -0
- package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/ai-chat.js +7 -5
- package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
- package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-concat.js +5 -5
- package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
- package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/azure-import.js +3 -3
- package/dist/alphalib/types/robots/azure-import.js.map +1 -1
- package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-convert.js +7 -5
- package/dist/alphalib/types/robots/document-convert.js.map +1 -1
- package/dist/alphalib/types/robots/document-extract.d.ts +8 -8
- package/dist/alphalib/types/robots/document-extract.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-extract.js +18 -2
- package/dist/alphalib/types/robots/document-extract.js.map +1 -1
- package/dist/alphalib/types/robots/document-split.d.ts +12 -0
- package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-split.js +15 -2
- package/dist/alphalib/types/robots/document-split.js.map +1 -1
- package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-decompress.js +2 -0
- package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
- package/dist/alphalib/types/robots/file-preview.d.ts +22 -0
- package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-preview.js +43 -26
- package/dist/alphalib/types/robots/file-preview.js.map +1 -1
- package/dist/alphalib/types/robots/http-request.d.ts.map +1 -1
- package/dist/alphalib/types/robots/http-request.js +9 -14
- package/dist/alphalib/types/robots/http-request.js.map +1 -1
- package/dist/alphalib/types/robots/image-enhance.d.ts +8 -8
- package/dist/alphalib/types/robots/image-enhance.js +2 -2
- package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-resize.js +3 -1
- package/dist/alphalib/types/robots/image-resize.js.map +1 -1
- package/dist/alphalib/types/robots/image-upscale.js +1 -1
- package/dist/alphalib/types/robots/image-upscale.js.map +1 -1
- package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/s3-import.js +14 -15
- package/dist/alphalib/types/robots/s3-import.js.map +1 -1
- package/dist/alphalib/types/robots/supabase-store.d.ts +16 -6
- package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/supabase-store.js +23 -1
- package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
- package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/tigris-store.js +3 -4
- package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
- package/dist/alphalib/types/robots/transloadit-import.d.ts +2 -2
- package/dist/alphalib/types/robots/transloadit-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/transloadit-import.js +4 -1
- package/dist/alphalib/types/robots/transloadit-import.js.map +1 -1
- package/dist/alphalib/types/robots/transloadit-store.d.ts +2 -3
- package/dist/alphalib/types/robots/transloadit-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/transloadit-store.js +19 -0
- package/dist/alphalib/types/robots/transloadit-store.js.map +1 -1
- package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-adaptive.js +12 -0
- package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
- package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-concat.js +9 -9
- package/dist/alphalib/types/robots/video-concat.js.map +1 -1
- package/dist/alphalib/types/robots/video-thumbs.d.ts +8 -8
- package/dist/alphalib/types/robots/video-thumbs.js +8 -8
- package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
- package/dist/alphalib/types/robots/vimeo-store.js +1 -1
- package/dist/alphalib/types/template.d.ts +3 -3
- package/dist/alphalib/types/templateValues.d.ts +83 -0
- package/dist/alphalib/types/templateValues.d.ts.map +1 -0
- package/dist/alphalib/types/templateValues.js +117 -0
- package/dist/alphalib/types/templateValues.js.map +1 -0
- package/dist/cli/OutputCtl.d.ts +1 -0
- package/dist/cli/OutputCtl.d.ts.map +1 -1
- package/dist/cli/OutputCtl.js +1 -1
- package/dist/cli/OutputCtl.js.map +1 -1
- package/dist/cli/commands/BaseCommand.d.ts +3 -2
- package/dist/cli/commands/BaseCommand.d.ts.map +1 -1
- package/dist/cli/commands/BaseCommand.js +27 -3
- package/dist/cli/commands/BaseCommand.js.map +1 -1
- package/dist/cli/commands/assemblies.d.ts +21 -1
- package/dist/cli/commands/assemblies.d.ts.map +1 -1
- package/dist/cli/commands/assemblies.js +584 -91
- package/dist/cli/commands/assemblies.js.map +1 -1
- package/dist/cli/commands/templates.d.ts +1 -1
- package/dist/cli/commands/templates.d.ts.map +1 -1
- package/dist/cli/commands/templates.js +57 -67
- package/dist/cli/commands/templates.js.map +1 -1
- package/dist/cli/errors.d.ts +8 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +28 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/helpers.d.ts.map +1 -1
- package/dist/cli/helpers.js +22 -0
- package/dist/cli/helpers.js.map +1 -1
- package/dist/cli/intentRuntime.d.ts +1 -0
- package/dist/cli/intentRuntime.d.ts.map +1 -1
- package/dist/cli/intentRuntime.js +9 -3
- package/dist/cli/intentRuntime.js.map +1 -1
- package/dist/cli/resultFiles.d.ts +1 -0
- package/dist/cli/resultFiles.d.ts.map +1 -1
- package/dist/cli/resultFiles.js.map +1 -1
- package/dist/cli/resultUrls.d.ts +2 -1
- package/dist/cli/resultUrls.d.ts.map +1 -1
- package/dist/cli/resultUrls.js +6 -3
- package/dist/cli/resultUrls.js.map +1 -1
- package/dist/cli/stepsInput.d.ts +1 -1
- package/dist/cli/stepsInput.d.ts.map +1 -1
- package/dist/cli/stepsInput.js +48 -6
- package/dist/cli/stepsInput.js.map +1 -1
- package/dist/cli/types.d.ts +66 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/cli/types.js +29 -0
- package/dist/cli/types.js.map +1 -1
- package/dist/tus.d.ts +7 -2
- package/dist/tus.d.ts.map +1 -1
- package/dist/tus.js +58 -4
- package/dist/tus.js.map +1 -1
- package/package.json +1 -1
- package/src/Transloadit.ts +65 -4
- package/src/alphalib/renderSimpleValue.ts +120 -0
- package/src/alphalib/truncateString.ts +23 -0
- package/src/alphalib/types/builtinTemplates.ts +33 -3
- package/src/alphalib/types/robots/_instructions-primitives.ts +34 -7
- package/src/alphalib/types/robots/_video-generate.ts +211 -0
- package/src/alphalib/types/robots/ai-chat.ts +8 -5
- package/src/alphalib/types/robots/audio-concat.ts +5 -4
- package/src/alphalib/types/robots/azure-import.ts +3 -4
- package/src/alphalib/types/robots/document-convert.ts +8 -5
- package/src/alphalib/types/robots/document-extract.ts +18 -2
- package/src/alphalib/types/robots/document-split.ts +17 -2
- package/src/alphalib/types/robots/file-decompress.ts +2 -0
- package/src/alphalib/types/robots/file-preview.ts +44 -25
- package/src/alphalib/types/robots/http-request.ts +9 -13
- package/src/alphalib/types/robots/image-enhance.ts +2 -2
- package/src/alphalib/types/robots/image-resize.ts +3 -1
- package/src/alphalib/types/robots/image-upscale.ts +1 -1
- package/src/alphalib/types/robots/s3-import.ts +14 -15
- package/src/alphalib/types/robots/supabase-store.ts +23 -1
- package/src/alphalib/types/robots/tigris-store.ts +2 -3
- package/src/alphalib/types/robots/transloadit-import.ts +4 -1
- package/src/alphalib/types/robots/transloadit-store.ts +19 -0
- package/src/alphalib/types/robots/video-adaptive.ts +12 -0
- package/src/alphalib/types/robots/video-concat.ts +9 -8
- package/src/alphalib/types/robots/video-thumbs.ts +8 -8
- package/src/alphalib/types/robots/vimeo-store.ts +1 -1
- package/src/alphalib/types/templateValues.ts +157 -0
- package/src/cli/OutputCtl.ts +2 -1
- package/src/cli/commands/BaseCommand.ts +29 -7
- package/src/cli/commands/assemblies.ts +775 -118
- package/src/cli/commands/templates.ts +93 -98
- package/src/cli/errors.ts +34 -0
- package/src/cli/helpers.ts +21 -0
- package/src/cli/intentRuntime.ts +10 -3
- package/src/cli/resultFiles.ts +1 -0
- package/src/cli/resultUrls.ts +11 -3
- package/src/cli/stepsInput.ts +54 -6
- package/src/cli/types.ts +35 -0
- package/src/tus.ts +72 -5
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { SimpleValueReason } from '../renderSimpleValue.ts'
|
|
2
|
+
|
|
3
|
+
import { formatSimpleValueReason } from '../renderSimpleValue.ts'
|
|
4
|
+
|
|
5
|
+
/** Usage in MiB charged for each dynamically evaluated Assembly expression. */
|
|
6
|
+
export const expressionEvaluationUsageMebibytes = 0.2
|
|
7
|
+
|
|
8
|
+
/** Character domain shared by stored Template IDs and their pagination cursors. */
|
|
9
|
+
// biome-ignore lint/suspicious/noControlCharactersInRegex: Stored Template IDs allow the full ASCII range.
|
|
10
|
+
export const storedTemplateIdentifierPattern = /^[\x00-\x7F]*$/u
|
|
11
|
+
|
|
12
|
+
/** Template Assembly Status retention values shared by runtime validation and contracts. */
|
|
13
|
+
export const templateAssemblyStatusExpiries = Object.freeze({
|
|
14
|
+
noTmpFileRetention: 'NoSave',
|
|
15
|
+
oneDay: '1day',
|
|
16
|
+
sevenDays: '7days',
|
|
17
|
+
thirtyDays: '30days',
|
|
18
|
+
ninetyDays: '90days',
|
|
19
|
+
})
|
|
20
|
+
|
|
21
|
+
/** Template transcoding-result retention values shared by runtime validation and contracts. */
|
|
22
|
+
export const templateTranscodingResultExpiries = Object.freeze({
|
|
23
|
+
noTmpFileRetention: 'NoSave',
|
|
24
|
+
oneDay: '1day',
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
/** Default storage lifecycle selections; separate from upload and execution phase timeouts. */
|
|
28
|
+
export const templateRetentionDefaults = Object.freeze({
|
|
29
|
+
assemblyStatus: templateAssemblyStatusExpiries.ninetyDays,
|
|
30
|
+
transcodingResult: templateTranscodingResultExpiries.oneDay,
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
export const templateListFieldValues = [
|
|
34
|
+
'account_id',
|
|
35
|
+
'assembly_status_expiry',
|
|
36
|
+
'cron_auth_key_id',
|
|
37
|
+
'cron_enabled',
|
|
38
|
+
'cron_max_concurrent_runs',
|
|
39
|
+
'cron_region',
|
|
40
|
+
'cron_schedule_with_seconds',
|
|
41
|
+
'created',
|
|
42
|
+
'deleted',
|
|
43
|
+
'encryption_version',
|
|
44
|
+
'id',
|
|
45
|
+
'json',
|
|
46
|
+
'last_used',
|
|
47
|
+
'modified',
|
|
48
|
+
'name',
|
|
49
|
+
'require_signature_auth',
|
|
50
|
+
'transcoding_result_expiry',
|
|
51
|
+
] as const
|
|
52
|
+
|
|
53
|
+
export type TemplateListField = (typeof templateListFieldValues)[number]
|
|
54
|
+
|
|
55
|
+
export const templateListDefaultFields = [
|
|
56
|
+
'id',
|
|
57
|
+
'name',
|
|
58
|
+
'json',
|
|
59
|
+
'encryption_version',
|
|
60
|
+
'require_signature_auth',
|
|
61
|
+
'assembly_status_expiry',
|
|
62
|
+
'transcoding_result_expiry',
|
|
63
|
+
'last_used',
|
|
64
|
+
'created',
|
|
65
|
+
'modified',
|
|
66
|
+
] as const satisfies readonly TemplateListField[]
|
|
67
|
+
|
|
68
|
+
export const templateListOrderValues = ['asc', 'desc'] as const
|
|
69
|
+
export type TemplateListOrder = (typeof templateListOrderValues)[number]
|
|
70
|
+
|
|
71
|
+
export const templateListSortValues = ['id', 'name', 'created', 'modified', 'last_used'] as const
|
|
72
|
+
export type TemplateListSort = (typeof templateListSortValues)[number]
|
|
73
|
+
|
|
74
|
+
export const templateIncludeBuiltinModes = ['none', 'latest', 'all'] as const
|
|
75
|
+
export type TemplateIncludeBuiltinMode = (typeof templateIncludeBuiltinModes)[number]
|
|
76
|
+
|
|
77
|
+
export const templateIncludeBuiltinValues = [
|
|
78
|
+
...templateIncludeBuiltinModes,
|
|
79
|
+
'exclusively-latest',
|
|
80
|
+
'exclusively-all',
|
|
81
|
+
] as const
|
|
82
|
+
export type TemplateIncludeBuiltinValue = (typeof templateIncludeBuiltinValues)[number]
|
|
83
|
+
|
|
84
|
+
/** Canonical Template-list defaults shared by API2 and generated clients. */
|
|
85
|
+
export const templateListDefaults = Object.freeze({
|
|
86
|
+
includeBuiltin: 'none',
|
|
87
|
+
keywords: '',
|
|
88
|
+
order: 'desc',
|
|
89
|
+
page: 1,
|
|
90
|
+
pagesize: 850,
|
|
91
|
+
sort: 'created',
|
|
92
|
+
} satisfies {
|
|
93
|
+
includeBuiltin: TemplateIncludeBuiltinValue
|
|
94
|
+
keywords: string
|
|
95
|
+
order: TemplateListOrder
|
|
96
|
+
page: number
|
|
97
|
+
pagesize: number
|
|
98
|
+
sort: TemplateListSort
|
|
99
|
+
})
|
|
100
|
+
|
|
101
|
+
/** Maximum page size accepted by Template listing. */
|
|
102
|
+
export const templateListMaxPageSize = 850
|
|
103
|
+
|
|
104
|
+
/** Code-unit length retained for the private admin Workspace override. */
|
|
105
|
+
export const templateListWorkspaceIdCodeUnits = 32
|
|
106
|
+
|
|
107
|
+
/** Maximum customer-supplied characters retained in a Template-list error reason. */
|
|
108
|
+
export const templateListInvalidRequestValueMaxCharacters = 200
|
|
109
|
+
|
|
110
|
+
/** Handler-priority Template-list validation reasons shared by runtime and contract enforcement. */
|
|
111
|
+
export const templateListInvalidRequestReasons = {
|
|
112
|
+
order: {
|
|
113
|
+
message: 'Invalid order (must be "asc" or "desc")',
|
|
114
|
+
value: 'string',
|
|
115
|
+
},
|
|
116
|
+
sort: {
|
|
117
|
+
message: 'Invalid sort (must be "created", "modified", "name", "id" or "last_used")',
|
|
118
|
+
suffix: '.',
|
|
119
|
+
value: 'string',
|
|
120
|
+
},
|
|
121
|
+
pagesize: {
|
|
122
|
+
message: `Invalid pagesize (must be between 1 and ${templateListMaxPageSize})`,
|
|
123
|
+
suffix: '.',
|
|
124
|
+
value: 'integer-prefix',
|
|
125
|
+
},
|
|
126
|
+
page: {
|
|
127
|
+
message: 'Invalid page',
|
|
128
|
+
suffix: '.',
|
|
129
|
+
value: 'integer-prefix',
|
|
130
|
+
},
|
|
131
|
+
account_id: {
|
|
132
|
+
message: 'Invalid accountId',
|
|
133
|
+
suffix: '.',
|
|
134
|
+
value: 'string',
|
|
135
|
+
},
|
|
136
|
+
include_builtin: {
|
|
137
|
+
message: 'Invalid include_builtin',
|
|
138
|
+
value: 'string',
|
|
139
|
+
},
|
|
140
|
+
} satisfies Record<string, SimpleValueReason>
|
|
141
|
+
|
|
142
|
+
export type TemplateListInvalidRequestField = keyof typeof templateListInvalidRequestReasons
|
|
143
|
+
|
|
144
|
+
/** Formats one established Template-list reason from its shared contract fact. */
|
|
145
|
+
export function formatTemplateListInvalidRequestReason(
|
|
146
|
+
field: TemplateListInvalidRequestField,
|
|
147
|
+
value: unknown,
|
|
148
|
+
): string {
|
|
149
|
+
const reason = templateListInvalidRequestReasons[field]
|
|
150
|
+
return formatSimpleValueReason(
|
|
151
|
+
typeof value === 'number' && reason.value === 'integer-prefix'
|
|
152
|
+
? { ...reason, value: 'string' }
|
|
153
|
+
: reason,
|
|
154
|
+
value,
|
|
155
|
+
templateListInvalidRequestValueMaxCharacters,
|
|
156
|
+
)
|
|
157
|
+
}
|
package/src/cli/OutputCtl.ts
CHANGED
|
@@ -60,6 +60,7 @@ export interface IOutputCtl {
|
|
|
60
60
|
info(msg: unknown): void
|
|
61
61
|
debug(msg: unknown): void
|
|
62
62
|
trace(msg: unknown): void
|
|
63
|
+
/** An undefined simple value emits JSON only, preserving binary or URL stdout in text mode. */
|
|
63
64
|
print(simple: unknown, json: unknown): void
|
|
64
65
|
}
|
|
65
66
|
|
|
@@ -110,6 +111,6 @@ export default class OutputCtl implements IOutputCtl {
|
|
|
110
111
|
print(simple: unknown, json: unknown): void {
|
|
111
112
|
if (this.json) console.log(JSON.stringify(json))
|
|
112
113
|
else if (typeof simple === 'string') console.log(simple)
|
|
113
|
-
else console.dir(simple, { depth: null })
|
|
114
|
+
else if (simple !== undefined) console.dir(simple, { depth: null })
|
|
114
115
|
}
|
|
115
116
|
}
|
|
@@ -2,9 +2,14 @@ import type { ResolvedCliConfig } from '../helpers.ts'
|
|
|
2
2
|
import type { IOutputCtl } from '../OutputCtl.ts'
|
|
3
3
|
|
|
4
4
|
import { Command, Option } from 'clipanion'
|
|
5
|
+
import { RequestError } from 'got'
|
|
6
|
+
import { z } from 'zod'
|
|
5
7
|
|
|
8
|
+
import { ApiError } from '../../ApiError.ts'
|
|
9
|
+
import { tryCatch } from '../../alphalib/tryCatch.ts'
|
|
6
10
|
import { Transloadit as TransloaditClient } from '../../Transloadit.ts'
|
|
7
|
-
import {
|
|
11
|
+
import { CliInputError, formatSchemaIssues } from '../errors.ts'
|
|
12
|
+
import { buildMissingAuthMessage, formatAPIError, resolveCliConfig } from '../helpers.ts'
|
|
8
13
|
import OutputCtl, { LOG_LEVEL_DEFAULT, LOG_LEVEL_NAMES, parseLogLevel } from '../OutputCtl.ts'
|
|
9
14
|
|
|
10
15
|
abstract class BaseCommand extends Command {
|
|
@@ -50,6 +55,27 @@ abstract class BaseCommand extends Command {
|
|
|
50
55
|
}
|
|
51
56
|
|
|
52
57
|
abstract override execute(): Promise<number | undefined>
|
|
58
|
+
|
|
59
|
+
protected abstract run(): Promise<number | undefined>
|
|
60
|
+
|
|
61
|
+
/** Report schema, API, and transport failures once; other errors retain Clipanion's diagnostics. */
|
|
62
|
+
protected async runWithErrorReporting(): Promise<number | undefined> {
|
|
63
|
+
const [error, result] = await tryCatch(this.run())
|
|
64
|
+
if (!error) return result
|
|
65
|
+
if (error instanceof z.ZodError) {
|
|
66
|
+
this.output.error(`Invalid options: ${formatSchemaIssues(error.issues)}`)
|
|
67
|
+
return 1
|
|
68
|
+
}
|
|
69
|
+
if (error instanceof RequestError) {
|
|
70
|
+
this.output.error(formatAPIError(error))
|
|
71
|
+
return 1
|
|
72
|
+
}
|
|
73
|
+
if (error instanceof CliInputError || error instanceof ApiError) {
|
|
74
|
+
this.output.error(formatAPIError(error))
|
|
75
|
+
return 1
|
|
76
|
+
}
|
|
77
|
+
throw error
|
|
78
|
+
}
|
|
53
79
|
}
|
|
54
80
|
|
|
55
81
|
export abstract class AuthenticatedCommand extends BaseCommand {
|
|
@@ -58,17 +84,13 @@ export abstract class AuthenticatedCommand extends BaseCommand {
|
|
|
58
84
|
if (!this.setupClient()) {
|
|
59
85
|
return 1
|
|
60
86
|
}
|
|
61
|
-
return await this.
|
|
87
|
+
return await this.runWithErrorReporting()
|
|
62
88
|
}
|
|
63
|
-
|
|
64
|
-
protected abstract run(): Promise<number | undefined>
|
|
65
89
|
}
|
|
66
90
|
|
|
67
91
|
export abstract class UnauthenticatedCommand extends BaseCommand {
|
|
68
92
|
override async execute(): Promise<number | undefined> {
|
|
69
93
|
this.setupOutput()
|
|
70
|
-
return await this.
|
|
94
|
+
return await this.runWithErrorReporting()
|
|
71
95
|
}
|
|
72
|
-
|
|
73
|
-
protected abstract run(): Promise<number | undefined>
|
|
74
96
|
}
|