@osdk/cli 0.5.0 → 0.7.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/build/js/{chunk-GTNZA5UY.mjs → chunk-CLAEREOL.mjs} +4 -2
- package/build/js/chunk-CLAEREOL.mjs.map +1 -0
- package/build/js/chunk-DQYIDDJN.cjs +17 -0
- package/build/js/chunk-DQYIDDJN.cjs.map +1 -0
- package/build/js/{chunk-XNYKWAIE.mjs → chunk-EZIJJWAA.mjs} +35 -16
- package/build/js/chunk-EZIJJWAA.mjs.map +1 -0
- package/build/js/chunk-GX2IOTA6.mjs +10 -0
- package/build/js/{chunk-N6K26UR4.mjs.map → chunk-GX2IOTA6.mjs.map} +1 -1
- package/build/js/{chunk-JFDXL5SV.mjs → chunk-HD6SVFKA.mjs} +5 -5
- package/build/js/chunk-HD6SVFKA.mjs.map +1 -0
- package/build/js/{chunk-HYF3CTKZ.cjs → chunk-HZ3XILMW.cjs} +4 -2
- package/build/js/chunk-HZ3XILMW.cjs.map +1 -0
- package/build/js/chunk-IV3QY3PZ.mjs +15 -0
- package/build/js/chunk-IV3QY3PZ.mjs.map +1 -0
- package/build/js/{chunk-D7QHLGEU.cjs → chunk-JFYC74FJ.cjs} +41 -22
- package/build/js/chunk-JFYC74FJ.cjs.map +1 -0
- package/build/js/{chunk-2DZBTS5E.cjs → chunk-TZGNA5WR.cjs} +5 -5
- package/build/js/chunk-TZGNA5WR.cjs.map +1 -0
- package/build/js/chunk-UE2TMWJL.cjs +12 -0
- package/build/js/{chunk-X2S4O5ZR.cjs.map → chunk-UE2TMWJL.cjs.map} +1 -1
- package/build/js/{handleGenerate-Q6EQWXFG.cjs → handleGenerate-GBN42PDO.cjs} +11 -11
- package/build/js/handleGenerate-GBN42PDO.cjs.map +1 -0
- package/build/js/{handleGenerate-ZUZV3IBI.mjs → handleGenerate-NQPMMKLX.mjs} +10 -10
- package/build/js/handleGenerate-NQPMMKLX.mjs.map +1 -0
- package/build/js/index.cjs +99 -55
- package/build/js/index.cjs.map +1 -1
- package/build/js/index.mjs +95 -51
- package/build/js/index.mjs.map +1 -1
- package/build/js/loginFlow-5ZAMXQKE.cjs +10 -0
- package/build/js/loginFlow-BWWZBM36.mjs +4 -0
- package/build/js/siteDeployCommand-7QTLGWZI.mjs +150 -0
- package/build/js/siteDeployCommand-7QTLGWZI.mjs.map +1 -0
- package/build/js/siteDeployCommand-HOXKQM56.cjs +176 -0
- package/build/js/siteDeployCommand-HOXKQM56.cjs.map +1 -0
- package/build/js/versionDeleteCommand-GDQEZLYA.cjs +38 -0
- package/build/js/versionDeleteCommand-GDQEZLYA.cjs.map +1 -0
- package/build/js/{versionDeleteCommand-6BJL5XLG.mjs → versionDeleteCommand-LQRGKTMH.mjs} +13 -3
- package/build/js/versionDeleteCommand-LQRGKTMH.mjs.map +1 -0
- package/build/js/{versionGetCommand-OR4RLOLM.mjs → versionGetCommand-NZAQX7U5.mjs} +3 -3
- package/build/js/{versionGetCommand-Y2VR2WKH.cjs → versionGetCommand-RU5LS3IG.cjs} +8 -8
- package/build/js/{versionListCommand-LPPGQCQF.mjs → versionListCommand-5N57YKEQ.mjs} +6 -4
- package/build/js/versionListCommand-5N57YKEQ.mjs.map +1 -0
- package/build/js/{versionListCommand-5KM5PFYL.cjs → versionListCommand-QYCTS6KU.cjs} +11 -9
- package/build/js/versionListCommand-QYCTS6KU.cjs.map +1 -0
- package/build/js/{versionSetCommand-VD3L5DOV.cjs → versionSetCommand-K4SDBPLB.cjs} +8 -8
- package/build/js/{versionSetCommand-LHOVVI6U.mjs → versionSetCommand-UWPAQ7NV.mjs} +3 -3
- package/build/js/versionUnsetCommand-INDJ26MO.cjs +36 -0
- package/build/js/versionUnsetCommand-INDJ26MO.cjs.map +1 -0
- package/build/js/{versionUnsetCommand-IJT4JWBN.mjs → versionUnsetCommand-PZRZPTPR.mjs} +13 -3
- package/build/js/versionUnsetCommand-PZRZPTPR.mjs.map +1 -0
- package/build/types/ExitProcessError.d.ts +3 -1
- package/build/types/commands/auth/CommonAuthArgs.d.ts +1 -1
- package/build/types/commands/auth/login/LoginArgs.d.ts +1 -1
- package/build/types/commands/site/deploy/SiteDeployArgs.d.ts +2 -1
- package/build/types/commands/site/deploy/siteDeployCommand.d.mts +8 -1
- package/build/types/commands/site/version/delete/VersionDeleteArgs.d.ts +5 -0
- package/build/types/commands/site/version/delete/index.d.ts +2 -2
- package/build/types/commands/site/version/delete/versionDeleteCommand.d.mts +2 -2
- package/build/types/commands/site/version/get/VersionGetArgs.d.ts +3 -0
- package/build/types/commands/site/version/get/index.d.ts +2 -1
- package/build/types/commands/site/version/get/versionGetCommand.d.mts +2 -2
- package/build/types/commands/site/version/list/VersionListArgs.d.ts +3 -0
- package/build/types/commands/site/version/list/index.d.ts +2 -1
- package/build/types/commands/site/version/list/versionListCommand.d.mts +2 -2
- package/build/types/commands/site/version/set/VersionSetArgs.d.ts +4 -0
- package/build/types/commands/site/version/set/index.d.ts +2 -2
- package/build/types/commands/site/version/set/versionSetCommand.d.mts +2 -2
- package/build/types/commands/site/version/unset/VersionUnsetArgs.d.ts +4 -0
- package/build/types/commands/site/version/unset/index.d.ts +2 -1
- package/build/types/commands/site/version/unset/versionUnsetCommand.d.mts +2 -2
- package/build/types/commands/typescript/generate/TypescriptGenerateArgs.d.ts +1 -1
- package/build/types/consola/handlePromptCancel.d.ts +1 -0
- package/build/types/net/UserAgent.d.ts +1 -0
- package/build/types/net/index.d.mts +1 -0
- package/build/types/util/config.d.ts +2 -2
- package/build/types/util/token.d.ts +2 -2
- package/changelog/0.6.0/pr-54.v2.yml +5 -0
- package/changelog/0.6.0/pr-56.v2.yml +5 -0
- package/changelog/0.6.0/pr-58.v2.yml +5 -0
- package/changelog/0.7.0/pr-50.v2.yml +5 -0
- package/changelog/0.7.0/pr-52.v2.yml +5 -0
- package/changelog/0.7.0/pr-55.v2.yml +5 -0
- package/changelog/0.7.0/pr-61.v2.yml +5 -0
- package/changelog/0.7.0/pr-63.v2.yml +5 -0
- package/package.json +9 -3
- package/build/js/chunk-2DZBTS5E.cjs.map +0 -1
- package/build/js/chunk-D7QHLGEU.cjs.map +0 -1
- package/build/js/chunk-GTNZA5UY.mjs.map +0 -1
- package/build/js/chunk-HYF3CTKZ.cjs.map +0 -1
- package/build/js/chunk-JFDXL5SV.mjs.map +0 -1
- package/build/js/chunk-N6K26UR4.mjs +0 -9
- package/build/js/chunk-X2S4O5ZR.cjs +0 -11
- package/build/js/chunk-XNYKWAIE.mjs.map +0 -1
- package/build/js/handleGenerate-Q6EQWXFG.cjs.map +0 -1
- package/build/js/handleGenerate-ZUZV3IBI.mjs.map +0 -1
- package/build/js/loginFlow-BZDDHHT5.cjs +0 -10
- package/build/js/loginFlow-KGLTXVZ6.mjs +0 -4
- package/build/js/siteDeployCommand-7GXJF5HF.mjs +0 -100
- package/build/js/siteDeployCommand-7GXJF5HF.mjs.map +0 -1
- package/build/js/siteDeployCommand-KUNL3GIW.cjs +0 -126
- package/build/js/siteDeployCommand-KUNL3GIW.cjs.map +0 -1
- package/build/js/versionDeleteCommand-6BJL5XLG.mjs.map +0 -1
- package/build/js/versionDeleteCommand-RLU7UUYD.cjs +0 -28
- package/build/js/versionDeleteCommand-RLU7UUYD.cjs.map +0 -1
- package/build/js/versionListCommand-5KM5PFYL.cjs.map +0 -1
- package/build/js/versionListCommand-LPPGQCQF.mjs.map +0 -1
- package/build/js/versionUnsetCommand-IJT4JWBN.mjs.map +0 -1
- package/build/js/versionUnsetCommand-XYBUQ6XB.cjs +0 -26
- package/build/js/versionUnsetCommand-XYBUQ6XB.cjs.map +0 -1
- package/build/types/commands/site/version/SiteVersionArgs.d.ts +0 -4
- /package/build/js/{loginFlow-BZDDHHT5.cjs.map → loginFlow-5ZAMXQKE.cjs.map} +0 -0
- /package/build/js/{loginFlow-KGLTXVZ6.mjs.map → loginFlow-BWWZBM36.mjs.map} +0 -0
- /package/build/js/{versionGetCommand-OR4RLOLM.mjs.map → versionGetCommand-NZAQX7U5.mjs.map} +0 -0
- /package/build/js/{versionGetCommand-Y2VR2WKH.cjs.map → versionGetCommand-RU5LS3IG.cjs.map} +0 -0
- /package/build/js/{versionSetCommand-LHOVVI6U.mjs.map → versionSetCommand-K4SDBPLB.cjs.map} +0 -0
- /package/build/js/{versionSetCommand-VD3L5DOV.cjs.map → versionSetCommand-UWPAQ7NV.mjs.map} +0 -0
|
@@ -23,7 +23,7 @@ function isTokenErrorResponse(response) {
|
|
|
23
23
|
// src/commands/auth/login/loginFlow.ts
|
|
24
24
|
var BROWSER_PROMPT_TIME_MS = 60 * 1e3;
|
|
25
25
|
async function invokeLoginFlow(args) {
|
|
26
|
-
consola__default.default.start(`Authenticating using application id: ${args.
|
|
26
|
+
consola__default.default.start(`Authenticating using application id: ${args.clientId}`);
|
|
27
27
|
const redirectUrl = "http://localhost:8080/auth/callback";
|
|
28
28
|
const port = url.parse(redirectUrl).port;
|
|
29
29
|
let resolve;
|
|
@@ -43,11 +43,11 @@ async function invokeLoginFlow(args) {
|
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
server.listen(port);
|
|
46
|
-
const clientId = args.
|
|
46
|
+
const clientId = args.clientId;
|
|
47
47
|
const state = generateRandomString();
|
|
48
48
|
const codeVerifier = generateRandomString();
|
|
49
49
|
const codeChallenge = await generateCodeChallenge(codeVerifier);
|
|
50
|
-
const authorizeUrl = generateAuthorizeUrl(args.
|
|
50
|
+
const authorizeUrl = generateAuthorizeUrl(args.foundryUrl, clientId, state, redirectUrl, codeChallenge);
|
|
51
51
|
try {
|
|
52
52
|
await open__default.default(authorizeUrl);
|
|
53
53
|
} catch {
|
|
@@ -59,7 +59,7 @@ async function invokeLoginFlow(args) {
|
|
|
59
59
|
const code = await authCode;
|
|
60
60
|
server.close();
|
|
61
61
|
clearTimeout(browserPrompt);
|
|
62
|
-
const token = await getTokenWithCodeVerifier(clientId, redirectUrl, code, args.
|
|
62
|
+
const token = await getTokenWithCodeVerifier(clientId, redirectUrl, code, args.foundryUrl, codeVerifier);
|
|
63
63
|
if (isTokenErrorResponse(token)) {
|
|
64
64
|
consola__default.default.error("Unable to authenticate", token.error, token.error_description);
|
|
65
65
|
process.exit(1);
|
|
@@ -126,4 +126,4 @@ async function getTokenWithCodeVerifier(clientId, redirectUrl, code, baseUrl, co
|
|
|
126
126
|
|
|
127
127
|
exports.invokeLoginFlow = invokeLoginFlow;
|
|
128
128
|
//# sourceMappingURL=out.js.map
|
|
129
|
-
//# sourceMappingURL=chunk-
|
|
129
|
+
//# sourceMappingURL=chunk-TZGNA5WR.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/commands/auth/login/loginFlow.ts","../../src/commands/auth/login/token.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// eslint-disable-next-line import/no-named-as-default\nimport consola from \"consola\";\nimport { getRandomValues, subtle } from \"crypto\";\nimport { createServer } from \"http\";\nimport open from \"open\";\nimport { join } from \"path/posix\";\nimport { exit } from \"process\";\nimport { parse } from \"url\";\nimport { isTokenErrorResponse } from \"./token.js\";\nconst BROWSER_PROMPT_TIME_MS = 60 * 1000;\nexport default async function invokeLoginFlow(args) {\n consola.start(`Authenticating using application id: ${args.clientId}`);\n const redirectUrl = \"http://localhost:8080/auth/callback\";\n const port = parse(redirectUrl).port;\n let resolve;\n const authCode = new Promise(_res => {\n resolve = _res;\n });\n const server = createServer((req, res) => {\n const query = parse(req.url, true).query;\n res.end(\"Authenticated\");\n resolve(query[\"code\"]);\n });\n server.on(\"error\", e => {\n if (e.code === \"EADDRINUSE\") {\n consola.error(`Port ${port} is already in use, unable to perform authentication flow.`);\n server.close();\n exit(1);\n }\n });\n server.listen(port);\n const clientId = args.clientId;\n const state = generateRandomString();\n const codeVerifier = generateRandomString();\n const codeChallenge = await generateCodeChallenge(codeVerifier);\n const authorizeUrl = generateAuthorizeUrl(args.foundryUrl, clientId, state, redirectUrl, codeChallenge);\n try {\n await open(authorizeUrl);\n } catch {\n consola.warn(`Unable to open browser, please open this url in your browser to to authenticate: ${authorizeUrl}`);\n }\n\n // nag the user if we didn't get an auth token for a relatively long time\n const browserPrompt = setTimeout(() => {\n consola.warn(`Still waiting for the authentication to complete. Please open a browser to ${authorizeUrl}`);\n }, BROWSER_PROMPT_TIME_MS);\n const code = await authCode;\n server.close();\n clearTimeout(browserPrompt);\n const token = await getTokenWithCodeVerifier(clientId, redirectUrl, code, args.foundryUrl, codeVerifier);\n if (isTokenErrorResponse(token)) {\n consola.error(\"Unable to authenticate\", token.error, token.error_description);\n exit(1);\n }\n consola.success(`Successfully authenticated!`);\n return token;\n}\nfunction generateRandomString(length = 128) {\n const characters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~\";\n let output = [];\n let array = new Uint8Array(1);\n const maxIndex = 256 - 256 % characters.length;\n while (output.length < length) {\n getRandomValues(array);\n if (array[0] < maxIndex) {\n output.push(characters[array[0] % characters.length]);\n }\n }\n return output.join(\"\");\n}\nasync function generateCodeChallenge(codeVerifier) {\n const data = new TextEncoder().encode(codeVerifier);\n const digest = await subtle.digest(\"SHA-256\", data);\n const codeChallengeMethod = \"S256\";\n const codeChallenge = btoa(String.fromCharCode(...new Uint8Array(digest))).replace(/\\//g, \"_\").replace(/\\+/g, \"-\").replace(/=/g, \"\");\n return {\n codeChallenge,\n codeChallengeMethod\n };\n}\nfunction generateAuthorizeUrl(baseUrl, clientId, state, redirectUrl, codeChallenge) {\n const queryParams = new URLSearchParams();\n queryParams.append(\"client_id\", clientId);\n queryParams.append(\"response_type\", \"code\");\n queryParams.append(\"state\", state);\n queryParams.append(\"redirect_uri\", redirectUrl);\n queryParams.append(\"code_challenge\", codeChallenge.codeChallenge);\n queryParams.append(\"code_challenge_method\", codeChallenge.codeChallengeMethod);\n queryParams.append(\"scope\", [\"offline_access\", \"api:read-data\"].join(\" \"));\n return join(baseUrl, \"multipass\", \"api\", \"oauth2\", \"authorize\") + `?` + queryParams.toString();\n}\nasync function getTokenWithCodeVerifier(clientId, redirectUrl, code, baseUrl, codeVerifier) {\n const body = new URLSearchParams();\n body.append(\"client_id\", clientId);\n body.append(\"grant_type\", \"authorization_code\");\n body.append(\"code\", code);\n body.append(\"redirect_uri\", redirectUrl);\n body.append(\"code_verifier\", codeVerifier);\n const tokenUrl = join(baseUrl, \"multipass\", \"api\", \"oauth2\", \"token\") + `?state=${codeVerifier}`;\n try {\n const response = await fetch(tokenUrl, {\n body: body.toString(),\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\"\n },\n method: \"POST\"\n });\n const responseText = await response.json();\n return responseText;\n } catch (e) {\n throw new Error(`Failed to get token: ${e?.cause?.toString() ?? e?.toString() ?? \"Unknown error\"}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isTokenErrorResponse(response) {\n return response.error != null;\n}"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var semver = require('semver');
|
|
4
|
+
|
|
5
|
+
// src/util/isValidSemver.ts
|
|
6
|
+
function isValidSemver(semverString) {
|
|
7
|
+
return semver.valid(semverString) != null;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
exports.isValidSemver = isValidSemver;
|
|
11
|
+
//# sourceMappingURL=out.js.map
|
|
12
|
+
//# sourceMappingURL=chunk-UE2TMWJL.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/isValidSemver.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../../src/util/isValidSemver.ts"],"names":[],"mappings":";AAgBA,SAAS,aAAa;AACf,SAAS,cAAc,cAAc;AAC1C,SAAO,MAAM,YAAY,KAAK;AAChC","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { valid } from \"semver\";\nexport function isValidSemver(semverString) {\n return valid(semverString) != null;\n}"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkTZGNA5WR_cjs = require('./chunk-TZGNA5WR.cjs');
|
|
4
4
|
require('./chunk-HQDDGVB7.cjs');
|
|
5
5
|
var requests = require('@osdk/gateway/requests');
|
|
6
6
|
var generator = require('@osdk/generator');
|
|
@@ -28,12 +28,12 @@ function _interopNamespace(e) {
|
|
|
28
28
|
|
|
29
29
|
var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
|
|
30
30
|
|
|
31
|
-
var USER_AGENT = `osdk-cli/${"0.
|
|
31
|
+
var USER_AGENT = `osdk-cli/${"0.7.0"}`;
|
|
32
32
|
async function handleGenerate(args) {
|
|
33
33
|
let success = false;
|
|
34
34
|
if (args.ontologyPath) {
|
|
35
35
|
success = await generateFromLocalFile(args);
|
|
36
|
-
} else if (args.
|
|
36
|
+
} else if (args.foundryUrl && args.clientId) {
|
|
37
37
|
success = await generateFromStack(args);
|
|
38
38
|
} else {
|
|
39
39
|
throw new Error("Must have specified ontologyPath or stack and clientId");
|
|
@@ -52,13 +52,13 @@ async function generateFromLocalFile(args) {
|
|
|
52
52
|
}
|
|
53
53
|
async function generateFromStack(args) {
|
|
54
54
|
const {
|
|
55
|
-
|
|
55
|
+
foundryUrl,
|
|
56
56
|
clientId,
|
|
57
57
|
ontologyWritePath
|
|
58
58
|
} = args;
|
|
59
|
-
const token = await
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
const token = await chunkTZGNA5WR_cjs.invokeLoginFlow({
|
|
60
|
+
clientId,
|
|
61
|
+
foundryUrl,
|
|
62
62
|
verbose: 0
|
|
63
63
|
});
|
|
64
64
|
const {
|
|
@@ -67,14 +67,14 @@ async function generateFromStack(args) {
|
|
|
67
67
|
metadata: {
|
|
68
68
|
userAgent: USER_AGENT
|
|
69
69
|
}
|
|
70
|
-
}, args.
|
|
70
|
+
}, args.foundryUrl, () => token.access_token, USER_AGENT);
|
|
71
71
|
try {
|
|
72
|
-
const ontologies = await requests.listOntologiesV2(shared_net.createOpenApiRequest(
|
|
72
|
+
const ontologies = await requests.listOntologiesV2(shared_net.createOpenApiRequest(foundryUrl, fetch));
|
|
73
73
|
if (ontologies.data.length !== 1) {
|
|
74
74
|
consola.consola.error(`Could not look up ontology with these credentials. Found ${ontologies.data.length} ontologies.`);
|
|
75
75
|
return false;
|
|
76
76
|
}
|
|
77
|
-
const ontology = await requests.getOntologyFullMetadata(shared_net.createOpenApiRequest(
|
|
77
|
+
const ontology = await requests.getOntologyFullMetadata(shared_net.createOpenApiRequest(foundryUrl, fetch), ontologies.data[0].apiName);
|
|
78
78
|
if (ontologyWritePath) {
|
|
79
79
|
fs__namespace.writeFileSync(ontologyWritePath, JSON.stringify(ontology, null, 2));
|
|
80
80
|
}
|
|
@@ -116,4 +116,4 @@ function getUserAgent(version) {
|
|
|
116
116
|
|
|
117
117
|
module.exports = handleGenerate;
|
|
118
118
|
//# sourceMappingURL=out.js.map
|
|
119
|
-
//# sourceMappingURL=handleGenerate-
|
|
119
|
+
//# sourceMappingURL=handleGenerate-GBN42PDO.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/commands/typescript/generate/handleGenerate.mts"],"names":[],"mappings":";;;;;;AAgBA,SAAS,yBAAyB,wBAAwB;AAC1D,SAAS,mCAAmC,4CAA4C;AACxF,SAAS,qBAAqB,4BAA4B;AAC1D,SAAS,eAAe;AACxB,YAAY,QAAQ;AAEpB,IAAM,aAAa,YAAY,OAA2B;AAC1D,eAAO,eAAsC,MAAM;AACjD,MAAI,UAAU;AACd,MAAI,KAAK,cAAc;AACrB,cAAU,MAAM,sBAAsB,IAAI;AAAA,EAC5C,WAAW,KAAK,cAAc,KAAK,UAAU;AAC3C,cAAU,MAAM,kBAAkB,IAAI;AAAA,EACxC,OAAO;AACL,UAAM,IAAI,MAAM,wDAAwD;AAAA,EAC1E;AACA,MAAI,SAAS;AACX,YAAQ,KAAK,iBAAiB;AAAA,EAChC;AACF;AACA,eAAe,sBAAsB,MAAM;AACzC,MAAI,CAAI,cAAW,KAAK,YAAY,GAAG;AACrC,YAAQ,MAAM,iCAAiC,KAAK,YAAY,EAAE;AAClE,WAAO;AAAA,EACT;AACA,QAAM,WAAW,KAAK,MAAM,MAAS,YAAS,SAAS,KAAK,cAAc,OAAO,CAAC;AAClF,SAAO,MAAM,kBAAkB,UAAU,IAAI;AAC/C;AACA,eAAe,kBAAkB,MAAM;AACrC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,QAAQ,MAAM,gBAAgB;AAAA,IAClC;AAAA,IACA;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AACD,QAAM;AAAA,IACJ;AAAA,EACF,IAAI,oBAAoB;AAAA,IACtB,UAAU;AAAA,MACR,WAAW;AAAA,IACb;AAAA,EACF,GAAG,KAAK,YAAY,MAAM,MAAM,cAAc,UAAU;AACxD,MAAI;AACF,UAAM,aAAa,MAAM,iBAAiB,qBAAqB,YAAY,KAAK,CAAC;AACjF,QAAI,WAAW,KAAK,WAAW,GAAG;AAChC,cAAQ,MAAM,4DAA4D,WAAW,KAAK,MAAM,cAAc;AAC9G,aAAO;AAAA,IACT;AACA,UAAM,WAAW,MAAM,wBAAwB,qBAAqB,YAAY,KAAK,GAAG,WAAW,KAAK,CAAC,EAAE,OAAO;AAClH,QAAI,mBAAmB;AACrB,MAAG,iBAAc,mBAAmB,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAAA,IACvE;AACA,WAAO,MAAM,kBAAkB,UAAU,IAAI;AAAA,EAC/C,SAAS,GAAG;AACV,YAAQ,MAAM,mCAAmC,CAAC;AAClD,WAAO;AAAA,EACT;AACF;AACA,eAAe,kBAAkB,UAAU,MAAM;AAC/C,QAAM,YAAY;AAAA,IAChB,WAAW,CAAC,MAAM,aAAa;AAC7B,aAAU,YAAS,UAAU,MAAM,UAAU,OAAO;AAAA,IACtD;AAAA,IACA,OAAO,OAAO,MAAM,YAAY;AAC9B,YAAS,YAAS,MAAM,MAAM,OAAO;AAAA,IACvC;AAAA,IACA,SAAS,OAAM,SAAW,YAAS,QAAQ,IAAI;AAAA,EACjD;AACA,MAAI;AACF,QAAI,KAAK,MAAM;AACb,YAAM,qCAAqC,UAAU,aAAa,KAAK,OAAO,GAAG,WAAW,KAAK,QAAQ,KAAK,WAAW;AAAA,IAC3H,OAAO;AACL,YAAM,kCAAkC,UAAU,aAAa,KAAK,OAAO,GAAG,WAAW,KAAK,QAAQ,KAAK,WAAW;AAAA,IACxH;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,0BAA0B,EAAE,OAAO;AACjD,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAIA,SAAS,aAAa,SAAS;AAC7B,MAAI,YAAY,OAAO;AACrB,WAAO;AAAA,EACT,OAAO;AACL,WAAO,kBAAkB,OAAO,IAAI,UAAU;AAAA,EAChD;AACF","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getOntologyFullMetadata, listOntologiesV2 } from \"@osdk/gateway/requests\";\nimport { generateClientSdkVersionOneDotOne, generateClientSdkVersionTwoPointZero } from \"@osdk/generator\";\nimport { createClientContext, createOpenApiRequest } from \"@osdk/shared.net\";\nimport { consola } from \"consola\";\nimport * as fs from \"node:fs\";\nimport invokeLoginFlow from \"../../auth/login/loginFlow.js\";\nconst USER_AGENT = `osdk-cli/${process.env.PACKAGE_VERSION}`;\nexport default async function handleGenerate(args) {\n let success = false;\n if (args.ontologyPath) {\n success = await generateFromLocalFile(args);\n } else if (args.foundryUrl && args.clientId) {\n success = await generateFromStack(args);\n } else {\n throw new Error(\"Must have specified ontologyPath or stack and clientId\");\n }\n if (success) {\n consola.info(\"OSDK Generated!\");\n }\n}\nasync function generateFromLocalFile(args) {\n if (!fs.existsSync(args.ontologyPath)) {\n consola.error(`Ontology file does not exist: ${args.ontologyPath}`);\n return false;\n }\n const ontology = JSON.parse(await fs.promises.readFile(args.ontologyPath, \"utf-8\"));\n return await generateClientSdk(ontology, args);\n}\nasync function generateFromStack(args) {\n const {\n foundryUrl,\n clientId,\n ontologyWritePath\n } = args;\n const token = await invokeLoginFlow({\n clientId,\n foundryUrl,\n verbose: 0\n });\n const {\n fetch\n } = createClientContext({\n metadata: {\n userAgent: USER_AGENT\n }\n }, args.foundryUrl, () => token.access_token, USER_AGENT);\n try {\n const ontologies = await listOntologiesV2(createOpenApiRequest(foundryUrl, fetch));\n if (ontologies.data.length !== 1) {\n consola.error(`Could not look up ontology with these credentials. Found ${ontologies.data.length} ontologies.`);\n return false;\n }\n const ontology = await getOntologyFullMetadata(createOpenApiRequest(foundryUrl, fetch), ontologies.data[0].apiName);\n if (ontologyWritePath) {\n fs.writeFileSync(ontologyWritePath, JSON.stringify(ontology, null, 2));\n }\n return await generateClientSdk(ontology, args);\n } catch (e) {\n consola.error(\"Failed to generate the ontology\", e);\n return false;\n }\n}\nasync function generateClientSdk(ontology, args) {\n const minimalFs = {\n writeFile: (path, contents) => {\n return fs.promises.writeFile(path, contents, \"utf-8\");\n },\n mkdir: async (path, options) => {\n await fs.promises.mkdir(path, options);\n },\n readdir: async path => fs.promises.readdir(path)\n };\n try {\n if (args.beta) {\n await generateClientSdkVersionTwoPointZero(ontology, getUserAgent(args.version), minimalFs, args.outDir, args.packageType);\n } else {\n await generateClientSdkVersionOneDotOne(ontology, getUserAgent(args.version), minimalFs, args.outDir, args.packageType);\n }\n } catch (e) {\n consola.error(\"OSDK generation failed\", e.message);\n return false;\n }\n return true;\n}\n\n// If the user passed us `dev` as our version, we use that for both our generated package version AND the cli version.\n// This makes it so that releases don't force us to have to regenerate the code when the version strings change.\nfunction getUserAgent(version) {\n if (version === \"dev\") {\n return \"typescript-sdk/dev osdk-cli/dev\";\n } else {\n return `typescript-sdk/${version} ${USER_AGENT}`;\n }\n}"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { invokeLoginFlow } from './chunk-
|
|
1
|
+
import { invokeLoginFlow } from './chunk-HD6SVFKA.mjs';
|
|
2
2
|
import './chunk-E2SEJZTC.mjs';
|
|
3
3
|
import { listOntologiesV2, getOntologyFullMetadata } from '@osdk/gateway/requests';
|
|
4
4
|
import { generateClientSdkVersionTwoPointZero, generateClientSdkVersionOneDotOne } from '@osdk/generator';
|
|
@@ -6,12 +6,12 @@ import { createClientContext, createOpenApiRequest } from '@osdk/shared.net';
|
|
|
6
6
|
import { consola } from 'consola';
|
|
7
7
|
import * as fs from 'fs';
|
|
8
8
|
|
|
9
|
-
var USER_AGENT = `osdk-cli/${"0.
|
|
9
|
+
var USER_AGENT = `osdk-cli/${"0.7.0"}`;
|
|
10
10
|
async function handleGenerate(args) {
|
|
11
11
|
let success = false;
|
|
12
12
|
if (args.ontologyPath) {
|
|
13
13
|
success = await generateFromLocalFile(args);
|
|
14
|
-
} else if (args.
|
|
14
|
+
} else if (args.foundryUrl && args.clientId) {
|
|
15
15
|
success = await generateFromStack(args);
|
|
16
16
|
} else {
|
|
17
17
|
throw new Error("Must have specified ontologyPath or stack and clientId");
|
|
@@ -30,13 +30,13 @@ async function generateFromLocalFile(args) {
|
|
|
30
30
|
}
|
|
31
31
|
async function generateFromStack(args) {
|
|
32
32
|
const {
|
|
33
|
-
|
|
33
|
+
foundryUrl,
|
|
34
34
|
clientId,
|
|
35
35
|
ontologyWritePath
|
|
36
36
|
} = args;
|
|
37
37
|
const token = await invokeLoginFlow({
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
clientId,
|
|
39
|
+
foundryUrl,
|
|
40
40
|
verbose: 0
|
|
41
41
|
});
|
|
42
42
|
const {
|
|
@@ -45,14 +45,14 @@ async function generateFromStack(args) {
|
|
|
45
45
|
metadata: {
|
|
46
46
|
userAgent: USER_AGENT
|
|
47
47
|
}
|
|
48
|
-
}, args.
|
|
48
|
+
}, args.foundryUrl, () => token.access_token, USER_AGENT);
|
|
49
49
|
try {
|
|
50
|
-
const ontologies = await listOntologiesV2(createOpenApiRequest(
|
|
50
|
+
const ontologies = await listOntologiesV2(createOpenApiRequest(foundryUrl, fetch));
|
|
51
51
|
if (ontologies.data.length !== 1) {
|
|
52
52
|
consola.error(`Could not look up ontology with these credentials. Found ${ontologies.data.length} ontologies.`);
|
|
53
53
|
return false;
|
|
54
54
|
}
|
|
55
|
-
const ontology = await getOntologyFullMetadata(createOpenApiRequest(
|
|
55
|
+
const ontology = await getOntologyFullMetadata(createOpenApiRequest(foundryUrl, fetch), ontologies.data[0].apiName);
|
|
56
56
|
if (ontologyWritePath) {
|
|
57
57
|
fs.writeFileSync(ontologyWritePath, JSON.stringify(ontology, null, 2));
|
|
58
58
|
}
|
|
@@ -94,4 +94,4 @@ function getUserAgent(version) {
|
|
|
94
94
|
|
|
95
95
|
export { handleGenerate as default };
|
|
96
96
|
//# sourceMappingURL=out.js.map
|
|
97
|
-
//# sourceMappingURL=handleGenerate-
|
|
97
|
+
//# sourceMappingURL=handleGenerate-NQPMMKLX.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/commands/typescript/generate/handleGenerate.mts"],"names":[],"mappings":";;;;;;AAgBA,SAAS,yBAAyB,wBAAwB;AAC1D,SAAS,mCAAmC,4CAA4C;AACxF,SAAS,qBAAqB,4BAA4B;AAC1D,SAAS,eAAe;AACxB,YAAY,QAAQ;AAEpB,IAAM,aAAa,YAAY,OAA2B;AAC1D,eAAO,eAAsC,MAAM;AACjD,MAAI,UAAU;AACd,MAAI,KAAK,cAAc;AACrB,cAAU,MAAM,sBAAsB,IAAI;AAAA,EAC5C,WAAW,KAAK,cAAc,KAAK,UAAU;AAC3C,cAAU,MAAM,kBAAkB,IAAI;AAAA,EACxC,OAAO;AACL,UAAM,IAAI,MAAM,wDAAwD;AAAA,EAC1E;AACA,MAAI,SAAS;AACX,YAAQ,KAAK,iBAAiB;AAAA,EAChC;AACF;AACA,eAAe,sBAAsB,MAAM;AACzC,MAAI,CAAI,cAAW,KAAK,YAAY,GAAG;AACrC,YAAQ,MAAM,iCAAiC,KAAK,YAAY,EAAE;AAClE,WAAO;AAAA,EACT;AACA,QAAM,WAAW,KAAK,MAAM,MAAS,YAAS,SAAS,KAAK,cAAc,OAAO,CAAC;AAClF,SAAO,MAAM,kBAAkB,UAAU,IAAI;AAC/C;AACA,eAAe,kBAAkB,MAAM;AACrC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,QAAQ,MAAM,gBAAgB;AAAA,IAClC;AAAA,IACA;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AACD,QAAM;AAAA,IACJ;AAAA,EACF,IAAI,oBAAoB;AAAA,IACtB,UAAU;AAAA,MACR,WAAW;AAAA,IACb;AAAA,EACF,GAAG,KAAK,YAAY,MAAM,MAAM,cAAc,UAAU;AACxD,MAAI;AACF,UAAM,aAAa,MAAM,iBAAiB,qBAAqB,YAAY,KAAK,CAAC;AACjF,QAAI,WAAW,KAAK,WAAW,GAAG;AAChC,cAAQ,MAAM,4DAA4D,WAAW,KAAK,MAAM,cAAc;AAC9G,aAAO;AAAA,IACT;AACA,UAAM,WAAW,MAAM,wBAAwB,qBAAqB,YAAY,KAAK,GAAG,WAAW,KAAK,CAAC,EAAE,OAAO;AAClH,QAAI,mBAAmB;AACrB,MAAG,iBAAc,mBAAmB,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAAA,IACvE;AACA,WAAO,MAAM,kBAAkB,UAAU,IAAI;AAAA,EAC/C,SAAS,GAAG;AACV,YAAQ,MAAM,mCAAmC,CAAC;AAClD,WAAO;AAAA,EACT;AACF;AACA,eAAe,kBAAkB,UAAU,MAAM;AAC/C,QAAM,YAAY;AAAA,IAChB,WAAW,CAAC,MAAM,aAAa;AAC7B,aAAU,YAAS,UAAU,MAAM,UAAU,OAAO;AAAA,IACtD;AAAA,IACA,OAAO,OAAO,MAAM,YAAY;AAC9B,YAAS,YAAS,MAAM,MAAM,OAAO;AAAA,IACvC;AAAA,IACA,SAAS,OAAM,SAAW,YAAS,QAAQ,IAAI;AAAA,EACjD;AACA,MAAI;AACF,QAAI,KAAK,MAAM;AACb,YAAM,qCAAqC,UAAU,aAAa,KAAK,OAAO,GAAG,WAAW,KAAK,QAAQ,KAAK,WAAW;AAAA,IAC3H,OAAO;AACL,YAAM,kCAAkC,UAAU,aAAa,KAAK,OAAO,GAAG,WAAW,KAAK,QAAQ,KAAK,WAAW;AAAA,IACxH;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,0BAA0B,EAAE,OAAO;AACjD,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAIA,SAAS,aAAa,SAAS;AAC7B,MAAI,YAAY,OAAO;AACrB,WAAO;AAAA,EACT,OAAO;AACL,WAAO,kBAAkB,OAAO,IAAI,UAAU;AAAA,EAChD;AACF","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getOntologyFullMetadata, listOntologiesV2 } from \"@osdk/gateway/requests\";\nimport { generateClientSdkVersionOneDotOne, generateClientSdkVersionTwoPointZero } from \"@osdk/generator\";\nimport { createClientContext, createOpenApiRequest } from \"@osdk/shared.net\";\nimport { consola } from \"consola\";\nimport * as fs from \"node:fs\";\nimport invokeLoginFlow from \"../../auth/login/loginFlow.js\";\nconst USER_AGENT = `osdk-cli/${process.env.PACKAGE_VERSION}`;\nexport default async function handleGenerate(args) {\n let success = false;\n if (args.ontologyPath) {\n success = await generateFromLocalFile(args);\n } else if (args.foundryUrl && args.clientId) {\n success = await generateFromStack(args);\n } else {\n throw new Error(\"Must have specified ontologyPath or stack and clientId\");\n }\n if (success) {\n consola.info(\"OSDK Generated!\");\n }\n}\nasync function generateFromLocalFile(args) {\n if (!fs.existsSync(args.ontologyPath)) {\n consola.error(`Ontology file does not exist: ${args.ontologyPath}`);\n return false;\n }\n const ontology = JSON.parse(await fs.promises.readFile(args.ontologyPath, \"utf-8\"));\n return await generateClientSdk(ontology, args);\n}\nasync function generateFromStack(args) {\n const {\n foundryUrl,\n clientId,\n ontologyWritePath\n } = args;\n const token = await invokeLoginFlow({\n clientId,\n foundryUrl,\n verbose: 0\n });\n const {\n fetch\n } = createClientContext({\n metadata: {\n userAgent: USER_AGENT\n }\n }, args.foundryUrl, () => token.access_token, USER_AGENT);\n try {\n const ontologies = await listOntologiesV2(createOpenApiRequest(foundryUrl, fetch));\n if (ontologies.data.length !== 1) {\n consola.error(`Could not look up ontology with these credentials. Found ${ontologies.data.length} ontologies.`);\n return false;\n }\n const ontology = await getOntologyFullMetadata(createOpenApiRequest(foundryUrl, fetch), ontologies.data[0].apiName);\n if (ontologyWritePath) {\n fs.writeFileSync(ontologyWritePath, JSON.stringify(ontology, null, 2));\n }\n return await generateClientSdk(ontology, args);\n } catch (e) {\n consola.error(\"Failed to generate the ontology\", e);\n return false;\n }\n}\nasync function generateClientSdk(ontology, args) {\n const minimalFs = {\n writeFile: (path, contents) => {\n return fs.promises.writeFile(path, contents, \"utf-8\");\n },\n mkdir: async (path, options) => {\n await fs.promises.mkdir(path, options);\n },\n readdir: async path => fs.promises.readdir(path)\n };\n try {\n if (args.beta) {\n await generateClientSdkVersionTwoPointZero(ontology, getUserAgent(args.version), minimalFs, args.outDir, args.packageType);\n } else {\n await generateClientSdkVersionOneDotOne(ontology, getUserAgent(args.version), minimalFs, args.outDir, args.packageType);\n }\n } catch (e) {\n consola.error(\"OSDK generation failed\", e.message);\n return false;\n }\n return true;\n}\n\n// If the user passed us `dev` as our version, we use that for both our generated package version AND the cli version.\n// This makes it so that releases don't force us to have to regenerate the code when the version strings change.\nfunction getUserAgent(version) {\n if (version === \"dev\") {\n return \"typescript-sdk/dev osdk-cli/dev\";\n } else {\n return `typescript-sdk/${version} ${USER_AGENT}`;\n }\n}"]}
|
package/build/js/index.cjs
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkUE2TMWJL_cjs = require('./chunk-UE2TMWJL.cjs');
|
|
4
|
+
var chunkHZ3XILMW_cjs = require('./chunk-HZ3XILMW.cjs');
|
|
5
5
|
require('./chunk-HQDDGVB7.cjs');
|
|
6
6
|
var consola = require('consola');
|
|
7
|
+
var utils = require('consola/utils');
|
|
7
8
|
var yargs = require('yargs');
|
|
8
9
|
var helpers = require('yargs/helpers');
|
|
9
10
|
var fs = require('fs');
|
|
11
|
+
var path = require('path');
|
|
10
12
|
|
|
11
13
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
14
|
|
|
@@ -17,13 +19,15 @@ var command = {
|
|
|
17
19
|
command: "login",
|
|
18
20
|
describe: "Authenticate with an application ID",
|
|
19
21
|
builder: (argv) => {
|
|
20
|
-
return argv.option("
|
|
22
|
+
return argv.option("clientId", {
|
|
23
|
+
alias: "applicationId",
|
|
24
|
+
// for backwards compatibility
|
|
21
25
|
type: "string",
|
|
22
26
|
demandOption: true
|
|
23
27
|
});
|
|
24
28
|
},
|
|
25
29
|
handler: async (args) => {
|
|
26
|
-
const command11 = await import('./loginFlow-
|
|
30
|
+
const command11 = await import('./loginFlow-5ZAMXQKE.cjs');
|
|
27
31
|
await command11.default(args);
|
|
28
32
|
}
|
|
29
33
|
};
|
|
@@ -35,9 +39,11 @@ var site = {
|
|
|
35
39
|
describe: "Manage your session",
|
|
36
40
|
builder: (argv) => {
|
|
37
41
|
return argv.options({
|
|
38
|
-
|
|
42
|
+
foundryUrl: {
|
|
39
43
|
type: "string",
|
|
40
|
-
demandOption: true
|
|
44
|
+
demandOption: true,
|
|
45
|
+
alias: "baseUrl"
|
|
46
|
+
// for backwards compatibility
|
|
41
47
|
}
|
|
42
48
|
}).command(login_default).demandCommand();
|
|
43
49
|
},
|
|
@@ -100,12 +106,12 @@ async function loadFoundryConfig() {
|
|
|
100
106
|
let foundryConfig;
|
|
101
107
|
try {
|
|
102
108
|
const fileContent = await fs.promises.readFile(configFilePath, "utf-8");
|
|
103
|
-
foundryConfig =
|
|
104
|
-
} catch {
|
|
105
|
-
throw new
|
|
109
|
+
foundryConfig = parseConfigFile(fileContent, configFilePath);
|
|
110
|
+
} catch (error) {
|
|
111
|
+
throw new chunkHZ3XILMW_cjs.ExitProcessError(2, `Couldn't read or parse config file ${configFilePath}. Error: ${error}`);
|
|
106
112
|
}
|
|
107
113
|
if (!validate(foundryConfig)) {
|
|
108
|
-
throw new
|
|
114
|
+
throw new chunkHZ3XILMW_cjs.ExitProcessError(2, `The configuration file does not match the expected schema: ${ajv.errorsText(validate.errors)}`);
|
|
109
115
|
}
|
|
110
116
|
return {
|
|
111
117
|
foundryConfig,
|
|
@@ -114,6 +120,15 @@ async function loadFoundryConfig() {
|
|
|
114
120
|
}
|
|
115
121
|
return void 0;
|
|
116
122
|
}
|
|
123
|
+
function parseConfigFile(fileContent, configFilePath) {
|
|
124
|
+
const extension = path.extname(configFilePath);
|
|
125
|
+
switch (extension) {
|
|
126
|
+
case ".json":
|
|
127
|
+
return JSON.parse(fileContent);
|
|
128
|
+
default:
|
|
129
|
+
throw new chunkHZ3XILMW_cjs.ExitProcessError(2, `Unsupported file extension: ${extension} for config file.`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
117
132
|
|
|
118
133
|
// src/util/configLoader.ts
|
|
119
134
|
var configPromise = void 0;
|
|
@@ -146,7 +161,7 @@ async function logDeployCommandConfigFileOverride(args, config) {
|
|
|
146
161
|
// src/commands/site/deploy/index.ts
|
|
147
162
|
var command2 = {
|
|
148
163
|
command: "deploy",
|
|
149
|
-
describe: "Deploy
|
|
164
|
+
describe: "Deploy a new site version",
|
|
150
165
|
builder: async (argv) => {
|
|
151
166
|
const config = await configLoader_default();
|
|
152
167
|
const siteConfig = config?.foundryConfig.site;
|
|
@@ -156,7 +171,7 @@ var command2 = {
|
|
|
156
171
|
return argv.options({
|
|
157
172
|
directory: {
|
|
158
173
|
type: "string",
|
|
159
|
-
description: "Directory
|
|
174
|
+
description: "Directory containing site files",
|
|
160
175
|
...directory ? {
|
|
161
176
|
default: directory
|
|
162
177
|
} : {
|
|
@@ -165,19 +180,21 @@ var command2 = {
|
|
|
165
180
|
},
|
|
166
181
|
uploadOnly: {
|
|
167
182
|
type: "boolean",
|
|
168
|
-
description: "Upload
|
|
183
|
+
description: "Upload new site version only without setting as live",
|
|
169
184
|
default: false
|
|
170
185
|
},
|
|
171
186
|
version: {
|
|
172
187
|
type: "string",
|
|
173
|
-
description: "
|
|
188
|
+
description: "New version of site to deploy",
|
|
174
189
|
...autoVersion == null ? {
|
|
175
190
|
conflicts: "autoVersion"
|
|
176
191
|
} : {}
|
|
177
192
|
},
|
|
178
193
|
autoVersion: {
|
|
194
|
+
coerce: (autoVersion2) => autoVersion2,
|
|
179
195
|
type: "string",
|
|
180
|
-
|
|
196
|
+
choices: ["git-describe"],
|
|
197
|
+
description: "Enable auto versioning",
|
|
181
198
|
...autoVersion != null ? {
|
|
182
199
|
default: autoVersion.type
|
|
183
200
|
} : {
|
|
@@ -186,12 +203,12 @@ var command2 = {
|
|
|
186
203
|
},
|
|
187
204
|
gitTagPrefix: {
|
|
188
205
|
type: "string",
|
|
189
|
-
description: "Prefix to match git tags
|
|
206
|
+
description: "Prefix to match git tags on when 'git-describe' auto versioning is used. If not provided, all tags are matched and the prefix 'v' is stripped if present.",
|
|
190
207
|
...gitTagPrefix ? {
|
|
191
208
|
default: gitTagPrefix
|
|
192
209
|
} : {}
|
|
193
210
|
}
|
|
194
|
-
}).group(["
|
|
211
|
+
}).group(["directory", "version", "uploadOnly"], "Deploy Options").group(["autoVersion", "gitTagPrefix"], "Auto Version Options").check((args) => {
|
|
195
212
|
if (autoVersion == null && args.autoVersion == null && args.version == null) {
|
|
196
213
|
throw new YargsCheckError("One of --version or --autoVersion must be specified");
|
|
197
214
|
}
|
|
@@ -207,8 +224,21 @@ var command2 = {
|
|
|
207
224
|
}).middleware((args) => logDeployCommandConfigFileOverride(args, siteConfig));
|
|
208
225
|
},
|
|
209
226
|
handler: async (args) => {
|
|
210
|
-
const command11 = await import('./siteDeployCommand-
|
|
211
|
-
|
|
227
|
+
const command11 = await import('./siteDeployCommand-HOXKQM56.cjs');
|
|
228
|
+
const {
|
|
229
|
+
version,
|
|
230
|
+
autoVersion,
|
|
231
|
+
gitTagPrefix,
|
|
232
|
+
...restArgs
|
|
233
|
+
} = args;
|
|
234
|
+
const selectedVersion = args.version != null ? args.version : {
|
|
235
|
+
type: args.autoVersion,
|
|
236
|
+
tagPrefix: args.gitTagPrefix
|
|
237
|
+
};
|
|
238
|
+
await command11.default({
|
|
239
|
+
...restArgs,
|
|
240
|
+
selectedVersion
|
|
241
|
+
});
|
|
212
242
|
}
|
|
213
243
|
};
|
|
214
244
|
var deploy_default = command2;
|
|
@@ -224,16 +254,20 @@ async function logSiteCommandConfigFileOverride(args, config) {
|
|
|
224
254
|
// src/commands/site/version/delete/index.ts
|
|
225
255
|
var command3 = {
|
|
226
256
|
command: "delete <version>",
|
|
227
|
-
describe: "Delete
|
|
257
|
+
describe: "Delete site version",
|
|
228
258
|
builder: (argv) => {
|
|
229
259
|
return argv.positional("version", {
|
|
230
260
|
type: "string",
|
|
231
261
|
demandOption: true,
|
|
232
262
|
description: "Version to set as live"
|
|
233
|
-
})
|
|
263
|
+
}).option("yes", {
|
|
264
|
+
alias: "y",
|
|
265
|
+
type: "boolean",
|
|
266
|
+
description: "Automatically confirm destructive changes"
|
|
267
|
+
}).group(["yes"], "Delete Options");
|
|
234
268
|
},
|
|
235
269
|
handler: async (args) => {
|
|
236
|
-
const command11 = await import('./versionDeleteCommand-
|
|
270
|
+
const command11 = await import('./versionDeleteCommand-GDQEZLYA.cjs');
|
|
237
271
|
await command11.default(args);
|
|
238
272
|
}
|
|
239
273
|
};
|
|
@@ -242,12 +276,12 @@ var delete_default = command3;
|
|
|
242
276
|
// src/commands/site/version/get/index.ts
|
|
243
277
|
var command4 = {
|
|
244
278
|
command: "get",
|
|
245
|
-
describe: "Get
|
|
279
|
+
describe: "Get live site version",
|
|
246
280
|
builder: (argv) => {
|
|
247
281
|
return argv;
|
|
248
282
|
},
|
|
249
283
|
handler: async (args) => {
|
|
250
|
-
const command11 = await import('./versionGetCommand-
|
|
284
|
+
const command11 = await import('./versionGetCommand-RU5LS3IG.cjs');
|
|
251
285
|
await command11.default(args);
|
|
252
286
|
}
|
|
253
287
|
};
|
|
@@ -256,12 +290,12 @@ var get_default = command4;
|
|
|
256
290
|
// src/commands/site/version/list/index.ts
|
|
257
291
|
var command5 = {
|
|
258
292
|
command: "list",
|
|
259
|
-
describe: "List
|
|
293
|
+
describe: "List site versions",
|
|
260
294
|
builder: (argv) => {
|
|
261
295
|
return argv;
|
|
262
296
|
},
|
|
263
297
|
handler: async (args) => {
|
|
264
|
-
const command11 = await import('./versionListCommand-
|
|
298
|
+
const command11 = await import('./versionListCommand-QYCTS6KU.cjs');
|
|
265
299
|
await command11.default(args);
|
|
266
300
|
}
|
|
267
301
|
};
|
|
@@ -270,7 +304,7 @@ var list_default = command5;
|
|
|
270
304
|
// src/commands/site/version/set/index.ts
|
|
271
305
|
var command6 = {
|
|
272
306
|
command: "set <version>",
|
|
273
|
-
describe: "Set
|
|
307
|
+
describe: "Set live site version",
|
|
274
308
|
builder: (argv) => {
|
|
275
309
|
return argv.positional("version", {
|
|
276
310
|
type: "string",
|
|
@@ -279,7 +313,7 @@ var command6 = {
|
|
|
279
313
|
});
|
|
280
314
|
},
|
|
281
315
|
handler: async (args) => {
|
|
282
|
-
const command11 = await import('./versionSetCommand-
|
|
316
|
+
const command11 = await import('./versionSetCommand-K4SDBPLB.cjs');
|
|
283
317
|
await command11.default(args);
|
|
284
318
|
}
|
|
285
319
|
};
|
|
@@ -288,12 +322,16 @@ var set_default = command6;
|
|
|
288
322
|
// src/commands/site/version/unset/index.ts
|
|
289
323
|
var command7 = {
|
|
290
324
|
command: "unset",
|
|
291
|
-
describe: "Clear
|
|
325
|
+
describe: "Clear live site version",
|
|
292
326
|
builder: (argv) => {
|
|
293
|
-
return argv
|
|
327
|
+
return argv.option("yes", {
|
|
328
|
+
alias: "y",
|
|
329
|
+
type: "boolean",
|
|
330
|
+
description: "Automatically confirm destructive changes"
|
|
331
|
+
}).group(["yes"], "Unset Options");
|
|
294
332
|
},
|
|
295
333
|
handler: async (args) => {
|
|
296
|
-
const command11 = await import('./versionUnsetCommand-
|
|
334
|
+
const command11 = await import('./versionUnsetCommand-INDJ26MO.cjs');
|
|
297
335
|
await command11.default(args);
|
|
298
336
|
}
|
|
299
337
|
};
|
|
@@ -302,9 +340,9 @@ var unset_default = command7;
|
|
|
302
340
|
// src/commands/site/version/index.ts
|
|
303
341
|
var command8 = {
|
|
304
342
|
command: "version",
|
|
305
|
-
describe: "Manage
|
|
343
|
+
describe: "Manage site versions",
|
|
306
344
|
builder: (argv) => {
|
|
307
|
-
return argv.command(list_default).command(
|
|
345
|
+
return argv.command(list_default).command(get_default).command(set_default).command(unset_default).command(delete_default).demandCommand();
|
|
308
346
|
},
|
|
309
347
|
handler: async (args) => {
|
|
310
348
|
}
|
|
@@ -328,7 +366,7 @@ var command9 = {
|
|
|
328
366
|
} : {
|
|
329
367
|
demandOption: true
|
|
330
368
|
},
|
|
331
|
-
description: "Application
|
|
369
|
+
description: "Application resource identifier (rid)"
|
|
332
370
|
},
|
|
333
371
|
foundryUrl: {
|
|
334
372
|
coerce: (foundryUrl2) => foundryUrl2.replace(/\/$/, ""),
|
|
@@ -338,19 +376,19 @@ var command9 = {
|
|
|
338
376
|
} : {
|
|
339
377
|
demandOption: true
|
|
340
378
|
},
|
|
341
|
-
description: "Foundry
|
|
379
|
+
description: "Foundry URL including protocol"
|
|
342
380
|
},
|
|
343
381
|
token: {
|
|
344
382
|
type: "string",
|
|
345
383
|
conflicts: "tokenFile",
|
|
346
|
-
description: "Foundry API
|
|
384
|
+
description: "Foundry API token"
|
|
347
385
|
},
|
|
348
386
|
tokenFile: {
|
|
349
387
|
type: "string",
|
|
350
388
|
conflicts: "token",
|
|
351
|
-
description: "Path to
|
|
389
|
+
description: "Path to file containing Foundry API token"
|
|
352
390
|
}
|
|
353
|
-
}).group(["application", "foundryUrl", "token", "tokenFile"], "Common
|
|
391
|
+
}).group(["application", "foundryUrl", "token", "tokenFile"], "Common Options").command(version_default).command(deploy_default).check((args) => {
|
|
354
392
|
if (!args.foundryUrl.startsWith("https://")) {
|
|
355
393
|
throw new YargsCheckError("foundryUrl must start with https://");
|
|
356
394
|
}
|
|
@@ -365,7 +403,7 @@ var site_default = command9;
|
|
|
365
403
|
// src/commands/typescript/generate/generate.ts
|
|
366
404
|
var command10 = {
|
|
367
405
|
command: "generate",
|
|
368
|
-
describe: "Generate
|
|
406
|
+
describe: "Generate TypeScript SDK from ontology",
|
|
369
407
|
builder: (argv) => {
|
|
370
408
|
return argv.options({
|
|
371
409
|
"outDir": {
|
|
@@ -374,27 +412,29 @@ var command10 = {
|
|
|
374
412
|
demandOption: true
|
|
375
413
|
},
|
|
376
414
|
ontologyPath: {
|
|
377
|
-
description: "
|
|
415
|
+
description: "Path to the ontology wire json",
|
|
378
416
|
type: "string",
|
|
379
417
|
demandOption: false,
|
|
380
|
-
conflicts: ["
|
|
418
|
+
conflicts: ["foundryUrl", "clientId"]
|
|
381
419
|
},
|
|
382
|
-
|
|
383
|
-
description: "
|
|
420
|
+
foundryUrl: {
|
|
421
|
+
description: "The URL to the foundry stack that contains the ontology",
|
|
384
422
|
type: "string",
|
|
385
423
|
demandOption: false,
|
|
386
424
|
conflicts: "ontologyPath",
|
|
387
|
-
implies: "clientId"
|
|
425
|
+
implies: "clientId",
|
|
426
|
+
alias: "stack"
|
|
427
|
+
// for backwards compatibility
|
|
388
428
|
},
|
|
389
429
|
clientId: {
|
|
390
|
-
description: "
|
|
430
|
+
description: "The application's client id",
|
|
391
431
|
type: "string",
|
|
392
432
|
demandOption: false,
|
|
393
433
|
conflicts: "ontologyPath",
|
|
394
|
-
implies: "
|
|
434
|
+
implies: "foundryUrl"
|
|
395
435
|
},
|
|
396
436
|
ontologyWritePath: {
|
|
397
|
-
description: "
|
|
437
|
+
description: "Path to write the ontology wire json",
|
|
398
438
|
type: "string",
|
|
399
439
|
demandOption: false,
|
|
400
440
|
conflicts: ["ontologyPath"]
|
|
@@ -413,18 +453,18 @@ var command10 = {
|
|
|
413
453
|
description: "Version of the generated code, or 'dev'",
|
|
414
454
|
demandOption: true
|
|
415
455
|
}
|
|
416
|
-
}).group(["ontologyPath", "outDir", "version"], "Generate from a local file").group(["
|
|
417
|
-
if (!args.ontologyPath && !args.
|
|
418
|
-
throw new Error("Error: Must specify either ontologyPath or
|
|
456
|
+
}).group(["ontologyPath", "outDir", "version"], "Generate from a local file").group(["foundryUrl", "clientId", "outDir", "ontologyWritePath", "version"], "OR Generate from Foundry").check((args) => {
|
|
457
|
+
if (!args.ontologyPath && !args.foundryUrl) {
|
|
458
|
+
throw new Error("Error: Must specify either ontologyPath or foundryUrl and clientId");
|
|
419
459
|
}
|
|
420
|
-
if (args.version !== "dev" && !
|
|
460
|
+
if (args.version !== "dev" && !chunkUE2TMWJL_cjs.isValidSemver(args.version)) {
|
|
421
461
|
throw new Error("Error: Version must be 'dev' or a valid semver version");
|
|
422
462
|
}
|
|
423
463
|
return true;
|
|
424
464
|
});
|
|
425
465
|
},
|
|
426
466
|
handler: async (args) => {
|
|
427
|
-
const command11 = await import('./handleGenerate-
|
|
467
|
+
const command11 = await import('./handleGenerate-GBN42PDO.cjs');
|
|
428
468
|
await command11.default(args);
|
|
429
469
|
}
|
|
430
470
|
};
|
|
@@ -456,7 +496,7 @@ var firstTime2 = true;
|
|
|
456
496
|
async function logVersionMiddleware(args) {
|
|
457
497
|
if (firstTime2) {
|
|
458
498
|
firstTime2 = false;
|
|
459
|
-
consola.consola.info(`Palantir OSDK CLI ${"0.
|
|
499
|
+
consola.consola.info(`Palantir OSDK CLI ${"0.7.0"}`);
|
|
460
500
|
consola.consola.level = 3 + args.verbose;
|
|
461
501
|
if (consola.consola.level > 3) {
|
|
462
502
|
consola.consola.debug(`Verbose logging enabled (${consola.consola.level === 4 ? "debug" : "trace"})`);
|
|
@@ -482,8 +522,12 @@ async function cli(args = process.argv) {
|
|
|
482
522
|
handler: (_args) => {
|
|
483
523
|
}
|
|
484
524
|
}).fail(async (msg, err, argv) => {
|
|
485
|
-
if (err instanceof
|
|
525
|
+
if (err instanceof chunkHZ3XILMW_cjs.ExitProcessError) {
|
|
486
526
|
consola.consola.error(err.message);
|
|
527
|
+
if (err.tip != null) {
|
|
528
|
+
consola.consola.log(utils.colorize("bold", `\u{1F4A1} Tip: ${err.tip}`));
|
|
529
|
+
consola.consola.log("");
|
|
530
|
+
}
|
|
487
531
|
consola.consola.debug(err.stack);
|
|
488
532
|
} else {
|
|
489
533
|
if (err && err instanceof YargsCheckError === false) {
|
|
@@ -499,7 +543,7 @@ async function cli(args = process.argv) {
|
|
|
499
543
|
try {
|
|
500
544
|
return await base.parseAsync();
|
|
501
545
|
} catch (err) {
|
|
502
|
-
if (err instanceof
|
|
546
|
+
if (err instanceof chunkHZ3XILMW_cjs.ExitProcessError) {
|
|
503
547
|
consola.consola.error(err);
|
|
504
548
|
}
|
|
505
549
|
}
|