stepzen 0.44.0 → 0.45.0-beta.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 +76 -71
- package/bin/dev.cmd +1 -1
- package/bin/dev.js +6 -0
- package/bin/{run → run.js} +6 -20
- package/lib/commands/delete.d.ts +3 -3
- package/lib/commands/delete.d.ts.map +1 -1
- package/lib/commands/delete.js +32 -33
- package/lib/commands/delete.js.map +1 -1
- package/lib/commands/deploy.d.ts +10 -12
- package/lib/commands/deploy.d.ts.map +1 -1
- package/lib/commands/deploy.js +98 -98
- package/lib/commands/deploy.js.map +1 -1
- package/lib/commands/import/curl.d.ts +17 -24
- package/lib/commands/import/curl.d.ts.map +1 -1
- package/lib/commands/import/curl.js +85 -85
- package/lib/commands/import/curl.js.map +1 -1
- package/lib/commands/import/db2.d.ts +20 -28
- package/lib/commands/import/db2.d.ts.map +1 -1
- package/lib/commands/import/db2.js +59 -62
- package/lib/commands/import/db2.js.map +1 -1
- package/lib/commands/import/flow.d.ts +10 -71
- package/lib/commands/import/flow.d.ts.map +1 -1
- package/lib/commands/import/flow.js +39 -43
- package/lib/commands/import/flow.js.map +1 -1
- package/lib/commands/import/graphql.d.ts +10 -18
- package/lib/commands/import/graphql.d.ts.map +1 -1
- package/lib/commands/import/graphql.js +38 -42
- package/lib/commands/import/graphql.js.map +1 -1
- package/lib/commands/import/index.d.ts +7 -10
- package/lib/commands/import/index.d.ts.map +1 -1
- package/lib/commands/import/index.js +52 -53
- package/lib/commands/import/index.js.map +1 -1
- package/lib/commands/import/mysql.d.ts +14 -22
- package/lib/commands/import/mysql.d.ts.map +1 -1
- package/lib/commands/import/mysql.js +53 -56
- package/lib/commands/import/mysql.js.map +1 -1
- package/lib/commands/import/openapi.d.ts +9 -16
- package/lib/commands/import/openapi.d.ts.map +1 -1
- package/lib/commands/import/openapi.js +38 -41
- package/lib/commands/import/openapi.js.map +1 -1
- package/lib/commands/import/oracle.d.ts +19 -26
- package/lib/commands/import/oracle.d.ts.map +1 -1
- package/lib/commands/import/oracle.js +56 -59
- package/lib/commands/import/oracle.js.map +1 -1
- package/lib/commands/import/postgresql.d.ts +15 -23
- package/lib/commands/import/postgresql.d.ts.map +1 -1
- package/lib/commands/import/postgresql.js +54 -57
- package/lib/commands/import/postgresql.js.map +1 -1
- package/lib/commands/import/presto.d.ts +14 -22
- package/lib/commands/import/presto.d.ts.map +1 -1
- package/lib/commands/import/presto.js +57 -60
- package/lib/commands/import/presto.js.map +1 -1
- package/lib/commands/import/snowflake.d.ts +16 -24
- package/lib/commands/import/snowflake.d.ts.map +1 -1
- package/lib/commands/import/snowflake.js +61 -64
- package/lib/commands/import/snowflake.js.map +1 -1
- package/lib/commands/init.d.ts +5 -7
- package/lib/commands/init.d.ts.map +1 -1
- package/lib/commands/init.js +22 -22
- package/lib/commands/init.js.map +1 -1
- package/lib/commands/lint.d.ts +2 -4
- package/lib/commands/lint.d.ts.map +1 -1
- package/lib/commands/lint.js +15 -18
- package/lib/commands/lint.js.map +1 -1
- package/lib/commands/list.d.ts +4 -6
- package/lib/commands/list.d.ts.map +1 -1
- package/lib/commands/list.js +66 -63
- package/lib/commands/list.js.map +1 -1
- package/lib/commands/login.d.ts +8 -10
- package/lib/commands/login.d.ts.map +1 -1
- package/lib/commands/login.js +94 -92
- package/lib/commands/login.js.map +1 -1
- package/lib/commands/logout.d.ts +2 -3
- package/lib/commands/logout.d.ts.map +1 -1
- package/lib/commands/logout.js +8 -11
- package/lib/commands/logout.js.map +1 -1
- package/lib/commands/request.d.ts +10 -12
- package/lib/commands/request.d.ts.map +1 -1
- package/lib/commands/request.js +127 -129
- package/lib/commands/request.js.map +1 -1
- package/lib/commands/service.d.ts +9 -11
- package/lib/commands/service.d.ts.map +1 -1
- package/lib/commands/service.js +203 -203
- package/lib/commands/service.js.map +1 -1
- package/lib/commands/start.d.ts +13 -15
- package/lib/commands/start.d.ts.map +1 -1
- package/lib/commands/start.js +61 -60
- package/lib/commands/start.js.map +1 -1
- package/lib/commands/transpile.d.ts +8 -10
- package/lib/commands/transpile.d.ts.map +1 -1
- package/lib/commands/transpile.js +31 -34
- package/lib/commands/transpile.js.map +1 -1
- package/lib/commands/upload.d.ts +6 -8
- package/lib/commands/upload.d.ts.map +1 -1
- package/lib/commands/upload.js +41 -44
- package/lib/commands/upload.js.map +1 -1
- package/lib/commands/validate.d.ts +3 -4
- package/lib/commands/validate.d.ts.map +1 -1
- package/lib/commands/validate.js +23 -26
- package/lib/commands/validate.js.map +1 -1
- package/lib/commands/whoami.d.ts +6 -8
- package/lib/commands/whoami.d.ts.map +1 -1
- package/lib/commands/whoami.js +39 -48
- package/lib/commands/whoami.js.map +1 -1
- package/lib/generate/curl2sdl.d.ts +8 -8
- package/lib/generate/curl2sdl.d.ts.map +1 -1
- package/lib/generate/curl2sdl.js +16 -20
- package/lib/generate/curl2sdl.js.map +1 -1
- package/lib/generate/flags.d.ts +11 -11
- package/lib/generate/flags.d.ts.map +1 -1
- package/lib/generate/flags.js +16 -17
- package/lib/generate/flags.js.map +1 -1
- package/lib/generate/flow2sdl.d.ts +5 -5
- package/lib/generate/flow2sdl.d.ts.map +1 -1
- package/lib/generate/flow2sdl.js +13 -19
- package/lib/generate/flow2sdl.js.map +1 -1
- package/lib/generate/graphql2sdl.d.ts +5 -5
- package/lib/generate/graphql2sdl.d.ts.map +1 -1
- package/lib/generate/graphql2sdl.js +22 -28
- package/lib/generate/graphql2sdl.js.map +1 -1
- package/lib/generate/helpers.d.ts +5 -5
- package/lib/generate/helpers.d.ts.map +1 -1
- package/lib/generate/helpers.js +39 -44
- package/lib/generate/helpers.js.map +1 -1
- package/lib/generate/import-command.d.ts +7 -13
- package/lib/generate/import-command.d.ts.map +1 -1
- package/lib/generate/import-command.js +51 -52
- package/lib/generate/import-command.js.map +1 -1
- package/lib/generate/openapi2sdl.d.ts +4 -4
- package/lib/generate/openapi2sdl.d.ts.map +1 -1
- package/lib/generate/openapi2sdl.js +10 -16
- package/lib/generate/openapi2sdl.js.map +1 -1
- package/lib/generate/questions.d.ts.map +1 -1
- package/lib/generate/questions.js +4 -7
- package/lib/generate/questions.js.map +1 -1
- package/lib/generate/sql2sdl.d.ts +13 -13
- package/lib/generate/sql2sdl.d.ts.map +1 -1
- package/lib/generate/sql2sdl.js +13 -16
- package/lib/generate/sql2sdl.js.map +1 -1
- package/lib/hooks/init/version.d.ts +1 -1
- package/lib/hooks/init/version.d.ts.map +1 -1
- package/lib/hooks/init/version.js +11 -9
- package/lib/hooks/init/version.js.map +1 -1
- package/lib/hooks/prerun/check-upgrade.d.ts +1 -1
- package/lib/hooks/prerun/check-upgrade.d.ts.map +1 -1
- package/lib/hooks/prerun/check-upgrade.js +42 -46
- package/lib/hooks/prerun/check-upgrade.js.map +1 -1
- package/lib/hooks/prerun/ensure-config-file.d.ts +1 -1
- package/lib/hooks/prerun/ensure-config-file.d.ts.map +1 -1
- package/lib/hooks/prerun/ensure-config-file.js +9 -11
- package/lib/hooks/prerun/ensure-config-file.js.map +1 -1
- package/lib/hooks/prerun/ensure-permissions.d.ts +1 -1
- package/lib/hooks/prerun/ensure-permissions.d.ts.map +1 -1
- package/lib/hooks/prerun/ensure-permissions.js +15 -11
- package/lib/hooks/prerun/ensure-permissions.js.map +1 -1
- package/lib/index.js +1 -5
- package/lib/index.js.map +1 -1
- package/lib/shared/actions.d.ts +2 -2
- package/lib/shared/actions.d.ts.map +1 -1
- package/lib/shared/actions.js +15 -21
- package/lib/shared/actions.js.map +1 -1
- package/lib/shared/configuration.d.ts +5 -3
- package/lib/shared/configuration.d.ts.map +1 -1
- package/lib/shared/configuration.js +39 -52
- package/lib/shared/configuration.js.map +1 -1
- package/lib/shared/constants.d.ts +7 -4
- package/lib/shared/constants.d.ts.map +1 -1
- package/lib/shared/constants.js +70 -86
- package/lib/shared/constants.js.map +1 -1
- package/lib/shared/curl-parser.d.ts +2 -2
- package/lib/shared/curl-parser.d.ts.map +1 -1
- package/lib/shared/curl-parser.js +9 -13
- package/lib/shared/curl-parser.js.map +1 -1
- package/lib/shared/docker.d.ts +2 -4
- package/lib/shared/docker.d.ts.map +1 -1
- package/lib/shared/docker.js +40 -48
- package/lib/shared/docker.js.map +1 -1
- package/lib/shared/errors.js +7 -11
- package/lib/shared/errors.js.map +1 -1
- package/lib/shared/header-params-parser.d.ts +2 -4
- package/lib/shared/header-params-parser.d.ts.map +1 -1
- package/lib/shared/header-params-parser.js +23 -29
- package/lib/shared/header-params-parser.js.map +1 -1
- package/lib/shared/header.d.ts +7 -7
- package/lib/shared/header.d.ts.map +1 -1
- package/lib/shared/header.js +5 -10
- package/lib/shared/header.js.map +1 -1
- package/lib/shared/inquirer.d.ts +7 -6
- package/lib/shared/inquirer.d.ts.map +1 -1
- package/lib/shared/inquirer.js +29 -37
- package/lib/shared/inquirer.js.map +1 -1
- package/lib/shared/moniker.js +4 -9
- package/lib/shared/moniker.js.map +1 -1
- package/lib/shared/path-params-parser.d.ts +2 -2
- package/lib/shared/path-params-parser.d.ts.map +1 -1
- package/lib/shared/path-params-parser.js +6 -12
- package/lib/shared/path-params-parser.js.map +1 -1
- package/lib/shared/request-variables-parser.d.ts +4 -4
- package/lib/shared/request-variables-parser.d.ts.map +1 -1
- package/lib/shared/request-variables-parser.js +10 -14
- package/lib/shared/request-variables-parser.js.map +1 -1
- package/lib/shared/rmtemp.d.ts +1 -0
- package/lib/shared/rmtemp.d.ts.map +1 -1
- package/lib/shared/rmtemp.js +7 -10
- package/lib/shared/rmtemp.js.map +1 -1
- package/lib/shared/segment.d.ts +10 -0
- package/lib/shared/segment.d.ts.map +1 -0
- package/lib/shared/segment.js +162 -0
- package/lib/shared/segment.js.map +1 -0
- package/lib/shared/stepzen-sdk.d.ts +8 -8
- package/lib/shared/stepzen-sdk.d.ts.map +1 -1
- package/lib/shared/stepzen-sdk.js +27 -36
- package/lib/shared/stepzen-sdk.js.map +1 -1
- package/lib/shared/types.d.ts +13 -11
- package/lib/shared/types.d.ts.map +1 -1
- package/lib/shared/types.js +1 -2
- package/lib/shared/url-helpers.d.ts.map +1 -1
- package/lib/shared/url-helpers.js +7 -14
- package/lib/shared/url-helpers.js.map +1 -1
- package/lib/shared/utils.d.ts +2 -2
- package/lib/shared/utils.d.ts.map +1 -1
- package/lib/shared/utils.js +55 -71
- package/lib/shared/utils.js.map +1 -1
- package/lib/shared/validation.js +12 -17
- package/lib/shared/validation.js.map +1 -1
- package/lib/shared/workspace.d.ts +1 -1
- package/lib/shared/workspace.d.ts.map +1 -1
- package/lib/shared/workspace.js +34 -45
- package/lib/shared/workspace.js.map +1 -1
- package/lib/shared/zen-command.d.ts +5 -10
- package/lib/shared/zen-command.d.ts.map +1 -1
- package/lib/shared/zen-command.js +132 -113
- package/lib/shared/zen-command.js.map +1 -1
- package/oclif.manifest.json +1281 -945
- package/package.json +35 -33
- package/bin/dev +0 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curl-parser.d.ts","sourceRoot":"","sources":["../../src/shared/curl-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"curl-parser.d.ts","sourceRoot":"","sources":["../../src/shared/curl-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAKvC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,KAAK,GAAG,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAiKD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,SAClB,SAAS,MAAM,EAAE,KACtB,QAAQ,aAAa,CA+FvB,CAAA"}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright IBM Corp. 2020, 2024
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const constants_1 = require("./constants");
|
|
6
|
-
const header_1 = require("./header");
|
|
2
|
+
import { STEPZEN_DISCORD_URL } from './constants.js';
|
|
3
|
+
import { parseHeader } from './header.js';
|
|
7
4
|
// Based on the existing curl flags at https://curl.se/docs/manpage.html
|
|
8
5
|
const curlFlagRegex = /^(-[a-zA-Z0-9.:#])|(--[a-zA-Z0-9.-]+)$/;
|
|
9
6
|
const httpURLRegex = /^https?:\/\//i;
|
|
10
7
|
const isAFlagArg = (arg) => curlFlagRegex.test(arg);
|
|
11
8
|
const isAURL = (arg) => httpURLRegex.test(arg);
|
|
12
9
|
const parseHeaderFlag = (value, partialCurlArgs) => {
|
|
13
|
-
const { result: header, error } =
|
|
10
|
+
const { result: header, error } = parseHeader(value);
|
|
14
11
|
if (error) {
|
|
15
12
|
return { error };
|
|
16
13
|
}
|
|
@@ -34,7 +31,7 @@ const parseDataFlag = (value, partialCurlArgs, match) => {
|
|
|
34
31
|
error: {
|
|
35
32
|
message: `Reading request data from local files in not currently supported ` +
|
|
36
33
|
`by StepZen CLI (${match} ${value}). If this is a blocker ` +
|
|
37
|
-
`for you, please let us know on Discord (${
|
|
34
|
+
`for you, please let us know on Discord (${STEPZEN_DISCORD_URL})`,
|
|
38
35
|
},
|
|
39
36
|
};
|
|
40
37
|
}
|
|
@@ -66,7 +63,7 @@ const parseURLFlag = (value, partialCurlArgs) => {
|
|
|
66
63
|
return {
|
|
67
64
|
error: {
|
|
68
65
|
message: `Multiple URLs are not currently supported by StepZen CLI (${value}).` +
|
|
69
|
-
` If this is a blocker for you, please let us know on Discord (${
|
|
66
|
+
` If this is a blocker for you, please let us know on Discord (${STEPZEN_DISCORD_URL})`,
|
|
70
67
|
},
|
|
71
68
|
};
|
|
72
69
|
}
|
|
@@ -101,7 +98,7 @@ const tryMatchCurlFlag = (matches, argv, i) => {
|
|
|
101
98
|
if (isShortFlag && argv[i].startsWith(match) && argv[i].length > 2) {
|
|
102
99
|
return {
|
|
103
100
|
result: {
|
|
104
|
-
value: argv[i].
|
|
101
|
+
value: argv[i].slice(2),
|
|
105
102
|
match,
|
|
106
103
|
},
|
|
107
104
|
};
|
|
@@ -138,7 +135,7 @@ const tryMatchCurlFlag = (matches, argv, i) => {
|
|
|
138
135
|
* ]`
|
|
139
136
|
* @returns {*} a structured object with the curl arguments
|
|
140
137
|
*/
|
|
141
|
-
const parseCurlArgv = (argv) => {
|
|
138
|
+
export const parseCurlArgv = (argv) => {
|
|
142
139
|
if (argv[0]?.toLowerCase() === 'curl') {
|
|
143
140
|
argv = argv.slice(1);
|
|
144
141
|
}
|
|
@@ -169,7 +166,7 @@ const parseCurlArgv = (argv) => {
|
|
|
169
166
|
return {
|
|
170
167
|
error: {
|
|
171
168
|
message: `The '${argv[i]}' curl flag is not currently supported by StepZen CLI.` +
|
|
172
|
-
` If this is a blocker for you, please let us know on Discord (${
|
|
169
|
+
` If this is a blocker for you, please let us know on Discord (${STEPZEN_DISCORD_URL})`,
|
|
173
170
|
},
|
|
174
171
|
};
|
|
175
172
|
}
|
|
@@ -193,7 +190,7 @@ const parseCurlArgv = (argv) => {
|
|
|
193
190
|
error: {
|
|
194
191
|
message: `Unsupported URL schema in '${result.url}'.` +
|
|
195
192
|
` StepZen CLI currently supports 'https' and 'http'.` +
|
|
196
|
-
` If this is a blocker for you, please let us know on Discord (${
|
|
193
|
+
` If this is a blocker for you, please let us know on Discord (${STEPZEN_DISCORD_URL})`,
|
|
197
194
|
},
|
|
198
195
|
};
|
|
199
196
|
}
|
|
@@ -210,5 +207,4 @@ const parseCurlArgv = (argv) => {
|
|
|
210
207
|
}
|
|
211
208
|
return { result: result };
|
|
212
209
|
};
|
|
213
|
-
exports.parseCurlArgv = parseCurlArgv;
|
|
214
210
|
//# sourceMappingURL=curl-parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curl-parser.js","sourceRoot":"","sources":["../../src/shared/curl-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"curl-parser.js","sourceRoot":"","sources":["../../src/shared/curl-parser.ts"],"names":[],"mappings":"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"}
|
package/lib/shared/docker.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import type { ErrorOr } from './types.js';
|
|
2
|
+
import shell from 'shelljs';
|
|
3
3
|
/**
|
|
4
4
|
* Execute a command in a new shell process (sync) and return the result
|
|
5
5
|
* object. Log both the command and the result into the `stepzen:docker` log.
|
|
@@ -32,7 +32,5 @@ export declare const getIcrDockerImageDigest: (nameAndTag: string) => Promise<Er
|
|
|
32
32
|
export declare const getDockerImageVersions: () => Promise<ErrorOr<{
|
|
33
33
|
local: string;
|
|
34
34
|
latest: string;
|
|
35
|
-
}, {
|
|
36
|
-
message: string;
|
|
37
35
|
}>>;
|
|
38
36
|
//# sourceMappingURL=docker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../src/shared/docker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../src/shared/docker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAKvC,OAAO,KAAK,MAAM,SAAS,CAAA;AAQ3B;;;;;;GAMG;AACH,eACA,MAAM,IAAI,YAAa,MAAM,sBAY5B,CAAA;AAED;;;;;GAKG;AACH,eACA,MAAM,yBAAyB,aAAc,MAAM,KAAG,QAAQ,MAAM,CAuBnE,CAAA;AAED,eACA,MAAM,iBAAiB,eAAgB,MAAM,KAAG,QAAQ,MAAM,CAyB7D,CAAA;AAED;;;;;GAKG;AACH,eACA,MAAM,uBAAuB,eACf,MAAM,KACjB,QAAQ,QAAQ,MAAM,CAAC,CAwDzB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;WACjB,MAAM;YAAU,MAAM;GAmDvC,CAAA"}
|
package/lib/shared/docker.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright IBM Corp. 2020, 2024
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const fetch_1 = require("@stepzen/fetch");
|
|
9
|
-
const constants_1 = require("./constants");
|
|
2
|
+
import fetch from '@stepzen/fetch';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import debug from 'debug';
|
|
5
|
+
import shell from 'shelljs';
|
|
6
|
+
import { DEFAULT_STEPZEN_DOCKER_IMAGE, DEFAULT_STEPZEN_DOCKER_TAG, STEPZEN_CONTAINER_NAME, } from './constants.js';
|
|
10
7
|
/**
|
|
11
8
|
* Execute a command in a new shell process (sync) and return the result
|
|
12
9
|
* object. Log both the command and the result into the `stepzen:docker` log.
|
|
@@ -14,45 +11,46 @@ const constants_1 = require("./constants");
|
|
|
14
11
|
* @param {*} command command
|
|
15
12
|
* @returns {*} result from shelljs
|
|
16
13
|
*/
|
|
17
|
-
|
|
14
|
+
export // for testing
|
|
15
|
+
const exec = (command) => {
|
|
18
16
|
const result = shell.exec(command, { silent: true });
|
|
19
|
-
(
|
|
17
|
+
debug('stepzen:docker')(chalk `running {cyan ${command}}`);
|
|
20
18
|
if (result.code === 0) {
|
|
21
|
-
(
|
|
19
|
+
debug('stepzen:docker')(`\t--> ${result.stdout.trim()}`);
|
|
22
20
|
}
|
|
23
21
|
else {
|
|
24
|
-
(
|
|
22
|
+
debug('stepzen:docker')(`\t--> FAILED (exit code ${result.code})\n${result.stderr.trim()}`);
|
|
25
23
|
}
|
|
26
24
|
return result;
|
|
27
25
|
};
|
|
28
|
-
exports.exec = exec;
|
|
29
26
|
/**
|
|
30
27
|
* Get a Docker image digest by image name or image ID.
|
|
31
28
|
*
|
|
32
29
|
* @param {*} nameOrId name or ID of a Docker image
|
|
33
30
|
* @returns {*} digest or error
|
|
34
31
|
*/
|
|
35
|
-
|
|
32
|
+
export // for testing
|
|
33
|
+
const getLocalDockerImageDigest = (nameOrId) => {
|
|
36
34
|
const command = `docker image inspect -f "{{index .RepoDigests 0}}" ${nameOrId}`;
|
|
37
|
-
const result =
|
|
35
|
+
const result = exec(command);
|
|
38
36
|
if (result.code !== 0) {
|
|
39
37
|
return { error: { message: `Could not inspect the docker image ${nameOrId}` } };
|
|
40
38
|
}
|
|
41
39
|
const maybeDigest = result.stdout.trim();
|
|
42
40
|
if (!maybeDigest) {
|
|
43
|
-
(
|
|
41
|
+
debug('stepzen:docker')(`The image ${nameOrId} has no digest`);
|
|
44
42
|
return { error: { message: `Could not inspect the docker image ${nameOrId}` } };
|
|
45
43
|
}
|
|
46
44
|
const match = maybeDigest.match(/sha256:[0-9a-f]+$/i);
|
|
47
45
|
if (!match) {
|
|
48
|
-
(
|
|
46
|
+
debug('stepzen:docker')(`Unexpected image digest format: ${maybeDigest}.` +
|
|
49
47
|
` Expected /sha256:[0-9a-f]+$/i`);
|
|
50
48
|
return { error: { message: `Could not inspect the docker image ${nameOrId}` } };
|
|
51
49
|
}
|
|
52
50
|
return { result: match[0] };
|
|
53
51
|
};
|
|
54
|
-
|
|
55
|
-
const getIcrManifestUrl = (nameAndTag) => {
|
|
52
|
+
export // for testing
|
|
53
|
+
const getIcrManifestUrl = (nameAndTag) => {
|
|
56
54
|
const match = nameAndTag.match(
|
|
57
55
|
// ICR
|
|
58
56
|
/^icr\.io\/(?<repository>[^/]+)\/(?<image>[^/]+):(?<tag>.*)$/i);
|
|
@@ -73,17 +71,17 @@ const getIcrManifestUrl = (nameAndTag) => {
|
|
|
73
71
|
result: `https://icr.io/v2/${repository}/${image}/manifests/${tag}`,
|
|
74
72
|
};
|
|
75
73
|
};
|
|
76
|
-
exports.getIcrManifestUrl = getIcrManifestUrl;
|
|
77
74
|
/**
|
|
78
75
|
* Fetch the most up-to-date image digest from a GCR by image name and tag
|
|
79
76
|
*
|
|
80
77
|
* @param {*} nameAndTag name or ID of a Docker image
|
|
81
78
|
* @returns {*} digest or error
|
|
82
79
|
*/
|
|
83
|
-
|
|
84
|
-
|
|
80
|
+
export // for testing
|
|
81
|
+
const getIcrDockerImageDigest = async (nameAndTag) => {
|
|
82
|
+
const { result: url, error } = getIcrManifestUrl(nameAndTag);
|
|
85
83
|
if (error) {
|
|
86
|
-
(
|
|
84
|
+
debug('stepzen:docker')(`Failed to get a Docker Registry API URL for the '${nameAndTag}' image. ${error}`);
|
|
87
85
|
return {
|
|
88
86
|
error: {
|
|
89
87
|
message: `Could not get the image digest for ${nameAndTag} because this version` +
|
|
@@ -92,8 +90,8 @@ const getIcrDockerImageDigest = async (nameAndTag) => {
|
|
|
92
90
|
};
|
|
93
91
|
}
|
|
94
92
|
try {
|
|
95
|
-
(
|
|
96
|
-
const response = await (
|
|
93
|
+
debug('stepzen:docker')(`GCR API URL for the '${nameAndTag}' image: '${url}'`);
|
|
94
|
+
const response = await fetch(url, {
|
|
97
95
|
headers: {
|
|
98
96
|
Accept: 'application/vnd.docker.distribution.manifest.list.v2+json',
|
|
99
97
|
},
|
|
@@ -101,12 +99,12 @@ const getIcrDockerImageDigest = async (nameAndTag) => {
|
|
|
101
99
|
// Consume the response body to avoid the CLI hanging from unresolved response
|
|
102
100
|
// https://github.com/steprz/stepzen-cli/issues/1032
|
|
103
101
|
await response.text();
|
|
104
|
-
(
|
|
105
|
-
const headers = Object.fromEntries(
|
|
106
|
-
(
|
|
102
|
+
debug('stepzen:docker')(`response status: ${response.status}`);
|
|
103
|
+
const headers = Object.fromEntries(response.headers);
|
|
104
|
+
debug('stepzen:docker')(`response headers:\n${JSON.stringify(headers, undefined, 2)}`);
|
|
107
105
|
const maybeDigest = response.headers.get('docker-content-digest');
|
|
108
106
|
if (!maybeDigest) {
|
|
109
|
-
(
|
|
107
|
+
debug('stepzen:docker')(`failed to find the 'docker-content-digest' header in the response`);
|
|
110
108
|
return {
|
|
111
109
|
error: {
|
|
112
110
|
message: `Could not get the image digest for ${nameAndTag} from the remote registry.`,
|
|
@@ -115,8 +113,8 @@ const getIcrDockerImageDigest = async (nameAndTag) => {
|
|
|
115
113
|
}
|
|
116
114
|
return { result: maybeDigest };
|
|
117
115
|
}
|
|
118
|
-
catch (
|
|
119
|
-
(
|
|
116
|
+
catch (error_) {
|
|
117
|
+
debug('stepzen:docker')(`Failed to fetch the image manifest from GCR. ${error_}`);
|
|
120
118
|
return {
|
|
121
119
|
error: {
|
|
122
120
|
message: `Could not get the image digest for ${nameAndTag} from the remote registry.`,
|
|
@@ -124,42 +122,37 @@ const getIcrDockerImageDigest = async (nameAndTag) => {
|
|
|
124
122
|
};
|
|
125
123
|
}
|
|
126
124
|
};
|
|
127
|
-
exports.getIcrDockerImageDigest = getIcrDockerImageDigest;
|
|
128
125
|
/**
|
|
129
126
|
* Get the Docker image digests for the local and the latest remote
|
|
130
127
|
* StepZen docker images.
|
|
131
128
|
*
|
|
132
129
|
* @returns {*} local and latest Docker image digests, or an error
|
|
133
130
|
*/
|
|
134
|
-
const getDockerImageVersions = async () => {
|
|
131
|
+
export const getDockerImageVersions = async () => {
|
|
135
132
|
const dockerCliPath = shell.which('docker');
|
|
136
133
|
if (!dockerCliPath) {
|
|
137
|
-
(
|
|
134
|
+
debug('stepzen:docker')('Failed to find the docker CLI binary in PATH');
|
|
138
135
|
return { error: { message: 'Could not find Docker CLI' } };
|
|
139
136
|
}
|
|
140
|
-
(
|
|
141
|
-
const command = `docker container inspect -f "{{println .Image}}{{.Config.Image}}" ${
|
|
142
|
-
const result =
|
|
137
|
+
debug('stepzen:docker')(`found Docker CLI at ${dockerCliPath}`);
|
|
138
|
+
const command = `docker container inspect -f "{{println .Image}}{{.Config.Image}}" ${STEPZEN_CONTAINER_NAME}`;
|
|
139
|
+
const result = exec(command);
|
|
143
140
|
if (result.code !== 0) {
|
|
144
141
|
// container does not exist => nothing to do
|
|
145
142
|
return { error: { message: 'Could not find the local StepZen container' } };
|
|
146
143
|
}
|
|
147
144
|
const [localImageId, localImageName] = result.stdout.trim().split('\n');
|
|
148
|
-
const { result: local, error: localError } =
|
|
145
|
+
const { result: local, error: localError } = getLocalDockerImageDigest(localImageId);
|
|
149
146
|
if (localError) {
|
|
150
147
|
return {
|
|
151
148
|
error: { message: 'Could not get the local StepZen container version' },
|
|
152
149
|
};
|
|
153
150
|
}
|
|
154
151
|
// The image registry has moved for GAR to ICR. If still running a GAR image, we should always upgrade to the latest ICR image.
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
imageForDigest = localImageName;
|
|
161
|
-
}
|
|
162
|
-
const { result: latest, error: latestError } = await (0, exports.getIcrDockerImageDigest)(imageForDigest);
|
|
152
|
+
const imageForDigest = localImageName.startsWith('us-docker.pkg.dev')
|
|
153
|
+
? `${DEFAULT_STEPZEN_DOCKER_IMAGE}:${DEFAULT_STEPZEN_DOCKER_TAG}`
|
|
154
|
+
: localImageName;
|
|
155
|
+
const { result: latest, error: latestError } = await getIcrDockerImageDigest(imageForDigest);
|
|
163
156
|
if (latestError) {
|
|
164
157
|
return {
|
|
165
158
|
error: {
|
|
@@ -167,10 +160,9 @@ const getDockerImageVersions = async () => {
|
|
|
167
160
|
},
|
|
168
161
|
};
|
|
169
162
|
}
|
|
170
|
-
(
|
|
163
|
+
debug('stepzen:docker')(`detected Docker image versions:` +
|
|
171
164
|
`\n\tlocal: ${local}` +
|
|
172
165
|
`\n\tlatest: ${latest}`);
|
|
173
166
|
return { result: { local, latest } };
|
|
174
167
|
};
|
|
175
|
-
exports.getDockerImageVersions = getDockerImageVersions;
|
|
176
168
|
//# sourceMappingURL=docker.js.map
|
package/lib/shared/docker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/shared/docker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/shared/docker.ts"],"names":[],"mappings":"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"}
|
package/lib/shared/errors.js
CHANGED
|
@@ -1,19 +1,15 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright IBM Corp. 2020, 2024
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const constants_1 = require("./constants");
|
|
6
|
-
const formatTemporaryErrorMessage = (errors) => `A problem occurred while processing your command${errors.length > 0 && errors[0].message ? `: "${errors[0].message}"` : ''}. Please try again.` +
|
|
2
|
+
import { STEPZEN_DISCORD_URL } from './constants.js';
|
|
3
|
+
export const formatTemporaryErrorMessage = (errors) => `A problem occurred while processing your command${errors.length > 0 && errors[0].message ? `: "${errors[0].message}"` : ''}. Please try again.` +
|
|
7
4
|
` If the issue persists, make sure you are on the latest version of StepZen ` +
|
|
8
5
|
`CLI. And if the issue still persists contact support via the StepZen discord ` +
|
|
9
|
-
`channel (${
|
|
10
|
-
|
|
11
|
-
exports.PERMANENT_STEPZEN_ERROR = 'An unexpected problem occurred while processing your command.' +
|
|
6
|
+
`channel (${STEPZEN_DISCORD_URL}).`;
|
|
7
|
+
export const PERMANENT_STEPZEN_ERROR = 'An unexpected problem occurred while processing your command.' +
|
|
12
8
|
` If the issue persists, make sure you are on the latest version of StepZen ` +
|
|
13
9
|
`CLI. And if the issue still persists contact support via the StepZen discord ` +
|
|
14
|
-
`channel (${
|
|
15
|
-
|
|
10
|
+
`channel (${STEPZEN_DISCORD_URL}).`;
|
|
11
|
+
export const UPGRADE_CHECK_ERROR = 'An unexpected problem occurred while checking for new CLI versions.' +
|
|
16
12
|
` If the issue persists, make sure you are on the latest version of StepZen ` +
|
|
17
13
|
`CLI. And if the issue still persists contact support via the StepZen discord ` +
|
|
18
|
-
`channel (${
|
|
14
|
+
`channel (${STEPZEN_DISCORD_URL}).`;
|
|
19
15
|
//# sourceMappingURL=errors.js.map
|
package/lib/shared/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/shared/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/shared/errors.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAC,mBAAmB,EAAC,MAAM,gBAAgB,CAAA;AAElD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,MAEE,EACF,EAAE,CACF,mDACE,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EACxE,qBAAqB;IACrB,6EAA6E;IAC7E,+EAA+E;IAC/E,YAAY,mBAAmB,IAAI,CAAA;AAErC,MAAM,CAAC,MAAM,uBAAuB,GAClC,+DAA+D;IAC/D,6EAA6E;IAC7E,+EAA+E;IAC/E,YAAY,mBAAmB,IAAI,CAAA;AAErC,MAAM,CAAC,MAAM,mBAAmB,GAC9B,qEAAqE;IACrE,6EAA6E;IAC7E,+EAA+E;IAC/E,YAAY,mBAAmB,IAAI,CAAA"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import type { Header, HeaderInput } from './header';
|
|
2
|
-
import type { ErrorOr } from './types';
|
|
1
|
+
import type { Header, HeaderInput } from './header.js';
|
|
2
|
+
import type { ErrorOr } from './types.js';
|
|
3
3
|
export declare const parseHeaderParam: (headers: readonly Header[], headerParam: string) => ErrorOr<{
|
|
4
4
|
header: HeaderInput;
|
|
5
5
|
remainingHeaders: Header[];
|
|
6
|
-
}, {
|
|
7
|
-
message: string;
|
|
8
6
|
}>;
|
|
9
7
|
export declare const makeHeaders: (curlHeaders: readonly Header[], headerParams?: readonly string[]) => ErrorOr<HeaderInput[]>;
|
|
10
8
|
//# sourceMappingURL=header-params-parser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header-params-parser.d.ts","sourceRoot":"","sources":["../../src/shared/header-params-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header-params-parser.d.ts","sourceRoot":"","sources":["../../src/shared/header-params-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAqBvC,eAAO,MAAM,gBAAgB,YAClB,SAAS,MAAM,EAAE,eACb,MAAM;YAEX,WAAW;sBACD,MAAM,EAAE;EAmH3B,CAAA;AAED,eAAO,MAAM,WAAW,gBACT,SAAS,MAAM,EAAE,uCAE7B,QAAQ,WAAW,EAAE,CAgBvB,CAAA"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright IBM Corp. 2020, 2024
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const debug = require("debug");
|
|
7
|
-
const header_1 = require("./header");
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import debug from 'debug';
|
|
4
|
+
import { parseHeader } from './header.js';
|
|
8
5
|
const headerParamRegex = /^(?<prefix>([^$]|\$\$)*)(?<param>\$[_A-Za-z]\w*);?(?<suffix>.*)$/;
|
|
9
|
-
const
|
|
10
|
-
|
|
6
|
+
const asConstantHeaderValuePart = (value) => ({
|
|
7
|
+
kind: 'Constant',
|
|
8
|
+
value,
|
|
9
|
+
});
|
|
10
|
+
const asVariableHeaderValuePart = (value, name) => ({
|
|
11
|
+
kind: 'Variable',
|
|
12
|
+
value,
|
|
13
|
+
name,
|
|
14
|
+
});
|
|
15
|
+
export const parseHeaderParam = (headers, headerParam) => {
|
|
16
|
+
const { result: header, error: headerError } = parseHeader(headerParam);
|
|
11
17
|
if (headerError || !header) {
|
|
12
18
|
if (headerError) {
|
|
13
19
|
debug('stepzen:curl2sdl')(`Failed to parse a header param ${headerParam}.` +
|
|
@@ -31,10 +37,10 @@ const parseHeaderParam = (headers, headerParam) => {
|
|
|
31
37
|
},
|
|
32
38
|
};
|
|
33
39
|
}
|
|
34
|
-
const prefix = paramValueMatches.groups.prefix.
|
|
35
|
-
const paramName = paramValueMatches.groups.param.
|
|
36
|
-
const suffix = paramValueMatches.groups.suffix.
|
|
37
|
-
if (
|
|
40
|
+
const prefix = paramValueMatches.groups.prefix.replaceAll('$$', '$');
|
|
41
|
+
const paramName = paramValueMatches.groups.param.slice(1);
|
|
42
|
+
const suffix = paramValueMatches.groups.suffix.replaceAll('$$', '$');
|
|
43
|
+
if (headerParamRegex.test(suffix)) {
|
|
38
44
|
return {
|
|
39
45
|
error: {
|
|
40
46
|
message: `StepZen CLI currently supports at max 1 parameter per header` +
|
|
@@ -52,8 +58,7 @@ const parseHeaderParam = (headers, headerParam) => {
|
|
|
52
58
|
},
|
|
53
59
|
};
|
|
54
60
|
}
|
|
55
|
-
const matches = candidates.filter(({ value }) => value.startsWith(prefix) &&
|
|
56
|
-
value.substring(prefix.length).endsWith(suffix));
|
|
61
|
+
const matches = candidates.filter(({ value }) => value.startsWith(prefix) && value.slice(prefix.length).endsWith(suffix));
|
|
57
62
|
if (matches.length === 0) {
|
|
58
63
|
return {
|
|
59
64
|
error: {
|
|
@@ -68,19 +73,10 @@ const parseHeaderParam = (headers, headerParam) => {
|
|
|
68
73
|
if (matches.length > 1) {
|
|
69
74
|
debug('stepzen:curl2sdl')(`Ambiguous --header-param '${headerParam}'. Matched headers:` +
|
|
70
75
|
`\n${matches
|
|
71
|
-
.map(
|
|
76
|
+
.map(({ name, value }) => `\t-H '${name}: ${value}'`)
|
|
72
77
|
.join('\n')}` +
|
|
73
78
|
`\nUsing the first match.`);
|
|
74
79
|
}
|
|
75
|
-
const asConstantHeaderValuePart = (value) => ({
|
|
76
|
-
kind: 'Constant',
|
|
77
|
-
value,
|
|
78
|
-
});
|
|
79
|
-
const asVariableHeaderValuePart = (value, name) => ({
|
|
80
|
-
kind: 'Variable',
|
|
81
|
-
value,
|
|
82
|
-
name,
|
|
83
|
-
});
|
|
84
80
|
return {
|
|
85
81
|
result: {
|
|
86
82
|
header: {
|
|
@@ -91,7 +87,7 @@ const parseHeaderParam = (headers, headerParam) => {
|
|
|
91
87
|
: [
|
|
92
88
|
/* spreading an empty array is a no-op */
|
|
93
89
|
]),
|
|
94
|
-
asVariableHeaderValuePart(matches[0].value.
|
|
90
|
+
asVariableHeaderValuePart(matches[0].value.slice(prefix.length, matches[0].value.length - suffix.length), paramName),
|
|
95
91
|
...(suffix
|
|
96
92
|
? [asConstantHeaderValuePart(suffix)]
|
|
97
93
|
: [
|
|
@@ -104,12 +100,11 @@ const parseHeaderParam = (headers, headerParam) => {
|
|
|
104
100
|
},
|
|
105
101
|
};
|
|
106
102
|
};
|
|
107
|
-
|
|
108
|
-
const makeHeaders = (curlHeaders, headerParams = []) => {
|
|
103
|
+
export const makeHeaders = (curlHeaders, headerParams = []) => {
|
|
109
104
|
const headers = [];
|
|
110
105
|
let remainingCurlHeaders = curlHeaders;
|
|
111
106
|
for (const headerParam of headerParams) {
|
|
112
|
-
const { result, error } =
|
|
107
|
+
const { result, error } = parseHeaderParam(remainingCurlHeaders, headerParam);
|
|
113
108
|
if (error) {
|
|
114
109
|
return { error };
|
|
115
110
|
}
|
|
@@ -119,5 +114,4 @@ const makeHeaders = (curlHeaders, headerParams = []) => {
|
|
|
119
114
|
headers.push(...remainingCurlHeaders);
|
|
120
115
|
return { result: headers };
|
|
121
116
|
};
|
|
122
|
-
exports.makeHeaders = makeHeaders;
|
|
123
117
|
//# sourceMappingURL=header-params-parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header-params-parser.js","sourceRoot":"","sources":["../../src/shared/header-params-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header-params-parser.js","sourceRoot":"","sources":["../../src/shared/header-params-parser.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAKjC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAA;AAEvC,MAAM,gBAAgB,GACpB,kEAAkE,CAAA;AAEpE,MAAM,yBAAyB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC;IACpD,IAAI,EAAE,UAAmB;IACzB,KAAK;CACN,CAAC,CAAA;AAEF,MAAM,yBAAyB,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC;IAClE,IAAI,EAAE,UAAmB;IACzB,KAAK;IACL,IAAI;CACL,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA0B,EAC1B,WAAmB,EAIlB,EAAE;IACH,MAAM,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAC,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;IACrE,IAAI,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,kBAAkB,CAAC,CACvB,kCAAkC,WAAW,GAAG;gBAC9C,WAAW,WAAW,CAAC,OAAO,EAAE,CACnC,CAAA;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EACL,iCAAiC;oBACjC,IAAI,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,GAAG;aACvD;SACF,CAAA;IACH,CAAC;IAED,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,CAAA;IAC5B,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACvD,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QACpD,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EACL,+CAA+C;oBAC/C,IAAI,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,GAAG;oBACpD,iEAAiE;aACpE;SACF,CAAA;IACH,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACpE,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACpE,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EACL,8DAA8D;oBAC9D,IAAI,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,eAAe;aACnE;SACF,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAC/B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CACjD,CAAA;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EACL,wDAAwD;oBACxD,IAAI,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,GAAG;oBACpD,+BAA+B,IAAI,GAAG;aACzC;SACF,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAC/B,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CACV,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC1E,CAAA;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EACL,wDAAwD;oBACxD,IAAI,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,GAAG;oBACpD,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;wBACpB,CAAC,CAAC,gBAAgB,IAAI,yBAAyB,KAAK,YAAY;wBAChE,CAAC,CAAC,QAAQ,IAAI,+BAA+B,KAAK,YAAY,CAAC;aACpE;SACF,CAAA;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,kBAAkB,CAAC,CACvB,6BAA6B,WAAW,qBAAqB;YAC3D,KAAK,OAAO;iBACT,GAAG,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE,EAAE,CAAC,SAAS,IAAI,KAAK,KAAK,GAAG,CAAC;iBAClD,IAAI,CAAC,IAAI,CAAC,EAAE;YACf,0BAA0B,CAC7B,CAAA;IACH,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBACrB,KAAK,EAAE;oBACL,GAAG,CAAC,MAAM;wBACR,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;wBACrC,CAAC,CAAC;wBACE,yCAAyC;yBAC1C,CAAC;oBACN,yBAAyB,CACvB,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CACpB,MAAM,CAAC,MAAM,EACb,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CACxC,EACD,SAAS,CACV;oBACD,GAAG,CAAC,MAAM;wBACR,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;wBACrC,CAAC,CAAC;wBACE,yCAAyC;yBAC1C,CAAC;iBACP;aACF;YACD,mEAAmE;YACnE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;SACxD;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,WAA8B,EAC9B,eAAe,EAAuB,EACd,EAAE;IAC1B,MAAM,OAAO,GAAG,EAAmB,CAAA;IACnC,IAAI,oBAAoB,GAAG,WAAW,CAAA;IACtC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,EAAC,MAAM,EAAE,KAAK,EAAC,GAAG,gBAAgB,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAA;QAC3E,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,EAAC,KAAK,EAAC,CAAA;QAChB,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC3B,oBAAoB,GAAG,MAAM,CAAC,gBAAgB,CAAA;IAChD,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAA;IAErC,OAAO,EAAC,MAAM,EAAE,OAAO,EAAC,CAAA;AAC1B,CAAC,CAAA"}
|
package/lib/shared/header.d.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import type { ErrorOr } from './types';
|
|
1
|
+
import type { ErrorOr } from './types.js';
|
|
2
2
|
export interface Header {
|
|
3
3
|
name: string;
|
|
4
4
|
value: string;
|
|
5
5
|
}
|
|
6
|
-
export
|
|
7
|
-
export
|
|
6
|
+
export type NameValueHeaderInput = Header;
|
|
7
|
+
export type NamePartsHeaderInput = {
|
|
8
8
|
name: string;
|
|
9
9
|
parts: HeaderInputValuePart[];
|
|
10
10
|
};
|
|
11
|
-
export
|
|
12
|
-
export
|
|
11
|
+
export type HeaderInput = NameValueHeaderInput | NamePartsHeaderInput;
|
|
12
|
+
export type HeaderInputConstantValuePart = {
|
|
13
13
|
kind: 'Constant';
|
|
14
14
|
value: string;
|
|
15
15
|
};
|
|
16
|
-
export
|
|
16
|
+
export type HeaderInputVariableValuePart = {
|
|
17
17
|
kind: 'Variable';
|
|
18
18
|
value: string;
|
|
19
19
|
name: string;
|
|
20
20
|
};
|
|
21
|
-
export
|
|
21
|
+
export type HeaderInputValuePart = HeaderInputConstantValuePart | HeaderInputVariableValuePart;
|
|
22
22
|
export declare const HEADER_REGEX: RegExp;
|
|
23
23
|
/**
|
|
24
24
|
* Parse a header string according to https://curl.se/docs/manpage.html#-H
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/shared/header.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/shared/header.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAEvC,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAUD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAA;AAGzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,oBAAoB,EAAE,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,oBAAoB,CAAA;AAErE,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,oBAAoB,GAC5B,4BAA4B,GAC5B,4BAA4B,CAAA;AAIhC,eAAO,MAAM,YAAY,QACkC,CAAA;AAE3D;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,WAAY,MAAM,KAAG,QAAQ,MAAM,GAAG,IAAI,CAmCjE,CAAA"}
|