@osdk/cli 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/js/chunk-DQYIDDJN.cjs +17 -0
- package/build/js/chunk-DQYIDDJN.cjs.map +1 -0
- package/build/js/chunk-IV3QY3PZ.mjs +15 -0
- package/build/js/chunk-IV3QY3PZ.mjs.map +1 -0
- package/build/js/{handleGenerate-ZUZV3IBI.mjs → handleGenerate-7QGFIWKO.mjs} +2 -2
- package/build/js/{handleGenerate-Q6EQWXFG.cjs → handleGenerate-FHM4MFPH.cjs} +2 -2
- package/build/js/index.cjs +36 -27
- package/build/js/index.cjs.map +1 -1
- package/build/js/index.mjs +36 -27
- package/build/js/index.mjs.map +1 -1
- package/build/js/{siteDeployCommand-7GXJF5HF.mjs → siteDeployCommand-4S2UQKJP.mjs} +39 -6
- package/build/js/siteDeployCommand-4S2UQKJP.mjs.map +1 -0
- package/build/js/{siteDeployCommand-KUNL3GIW.cjs → siteDeployCommand-QKPJEL4X.cjs} +38 -5
- package/build/js/siteDeployCommand-QKPJEL4X.cjs.map +1 -0
- package/build/js/{versionDeleteCommand-6BJL5XLG.mjs → versionDeleteCommand-DGB5NTFM.mjs} +11 -1
- package/build/js/versionDeleteCommand-DGB5NTFM.mjs.map +1 -0
- package/build/js/{versionDeleteCommand-RLU7UUYD.cjs → versionDeleteCommand-S7AXTY46.cjs} +11 -1
- package/build/js/versionDeleteCommand-S7AXTY46.cjs.map +1 -0
- package/build/js/{versionUnsetCommand-IJT4JWBN.mjs → versionUnsetCommand-ISMMMWWZ.mjs} +11 -1
- package/build/js/versionUnsetCommand-ISMMMWWZ.mjs.map +1 -0
- package/build/js/{versionUnsetCommand-XYBUQ6XB.cjs → versionUnsetCommand-V3ZVCGSI.cjs} +11 -1
- package/build/js/versionUnsetCommand-V3ZVCGSI.cjs.map +1 -0
- 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/consola/handlePromptCancel.d.ts +1 -0
- package/build/types/net/index.d.mts +1 -0
- 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/package.json +3 -3
- package/build/js/siteDeployCommand-7GXJF5HF.mjs.map +0 -1
- package/build/js/siteDeployCommand-KUNL3GIW.cjs.map +0 -1
- package/build/js/versionDeleteCommand-6BJL5XLG.mjs.map +0 -1
- package/build/js/versionDeleteCommand-RLU7UUYD.cjs.map +0 -1
- package/build/js/versionUnsetCommand-IJT4JWBN.mjs.map +0 -1
- package/build/js/versionUnsetCommand-XYBUQ6XB.cjs.map +0 -1
- package/build/types/commands/site/version/SiteVersionArgs.d.ts +0 -4
- /package/build/js/{handleGenerate-Q6EQWXFG.cjs.map → handleGenerate-7QGFIWKO.mjs.map} +0 -0
- /package/build/js/{handleGenerate-ZUZV3IBI.mjs.map → handleGenerate-FHM4MFPH.cjs.map} +0 -0
package/build/js/index.mjs
CHANGED
|
@@ -140,7 +140,7 @@ async function logDeployCommandConfigFileOverride(args, config) {
|
|
|
140
140
|
// src/commands/site/deploy/index.ts
|
|
141
141
|
var command2 = {
|
|
142
142
|
command: "deploy",
|
|
143
|
-
describe: "Deploy
|
|
143
|
+
describe: "Deploy a new site version",
|
|
144
144
|
builder: async (argv) => {
|
|
145
145
|
const config = await configLoader_default();
|
|
146
146
|
const siteConfig = config?.foundryConfig.site;
|
|
@@ -150,7 +150,7 @@ var command2 = {
|
|
|
150
150
|
return argv.options({
|
|
151
151
|
directory: {
|
|
152
152
|
type: "string",
|
|
153
|
-
description: "Directory
|
|
153
|
+
description: "Directory containing site files",
|
|
154
154
|
...directory ? {
|
|
155
155
|
default: directory
|
|
156
156
|
} : {
|
|
@@ -159,19 +159,20 @@ var command2 = {
|
|
|
159
159
|
},
|
|
160
160
|
uploadOnly: {
|
|
161
161
|
type: "boolean",
|
|
162
|
-
description: "Upload
|
|
162
|
+
description: "Upload new site version only without setting as live",
|
|
163
163
|
default: false
|
|
164
164
|
},
|
|
165
165
|
version: {
|
|
166
166
|
type: "string",
|
|
167
|
-
description: "
|
|
167
|
+
description: "New version of site to deploy",
|
|
168
168
|
...autoVersion == null ? {
|
|
169
169
|
conflicts: "autoVersion"
|
|
170
170
|
} : {}
|
|
171
171
|
},
|
|
172
172
|
autoVersion: {
|
|
173
173
|
type: "string",
|
|
174
|
-
|
|
174
|
+
choices: ["git-describe"],
|
|
175
|
+
description: "Enable auto versioning",
|
|
175
176
|
...autoVersion != null ? {
|
|
176
177
|
default: autoVersion.type
|
|
177
178
|
} : {
|
|
@@ -180,12 +181,12 @@ var command2 = {
|
|
|
180
181
|
},
|
|
181
182
|
gitTagPrefix: {
|
|
182
183
|
type: "string",
|
|
183
|
-
description: "Prefix to match git tags
|
|
184
|
+
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.",
|
|
184
185
|
...gitTagPrefix ? {
|
|
185
186
|
default: gitTagPrefix
|
|
186
187
|
} : {}
|
|
187
188
|
}
|
|
188
|
-
}).group(["
|
|
189
|
+
}).group(["directory", "version", "uploadOnly"], "Deploy Options").group(["autoVersion", "gitTagPrefix"], "Auto Version Options").check((args) => {
|
|
189
190
|
if (autoVersion == null && args.autoVersion == null && args.version == null) {
|
|
190
191
|
throw new YargsCheckError("One of --version or --autoVersion must be specified");
|
|
191
192
|
}
|
|
@@ -201,7 +202,7 @@ var command2 = {
|
|
|
201
202
|
}).middleware((args) => logDeployCommandConfigFileOverride(args, siteConfig));
|
|
202
203
|
},
|
|
203
204
|
handler: async (args) => {
|
|
204
|
-
const command11 = await import('./siteDeployCommand-
|
|
205
|
+
const command11 = await import('./siteDeployCommand-4S2UQKJP.mjs');
|
|
205
206
|
await command11.default(args);
|
|
206
207
|
}
|
|
207
208
|
};
|
|
@@ -218,16 +219,20 @@ async function logSiteCommandConfigFileOverride(args, config) {
|
|
|
218
219
|
// src/commands/site/version/delete/index.ts
|
|
219
220
|
var command3 = {
|
|
220
221
|
command: "delete <version>",
|
|
221
|
-
describe: "Delete
|
|
222
|
+
describe: "Delete site version",
|
|
222
223
|
builder: (argv) => {
|
|
223
224
|
return argv.positional("version", {
|
|
224
225
|
type: "string",
|
|
225
226
|
demandOption: true,
|
|
226
227
|
description: "Version to set as live"
|
|
227
|
-
})
|
|
228
|
+
}).option("yes", {
|
|
229
|
+
alias: "y",
|
|
230
|
+
type: "boolean",
|
|
231
|
+
description: "Automatically confirm destructive changes"
|
|
232
|
+
}).group(["yes"], "Delete Options");
|
|
228
233
|
},
|
|
229
234
|
handler: async (args) => {
|
|
230
|
-
const command11 = await import('./versionDeleteCommand-
|
|
235
|
+
const command11 = await import('./versionDeleteCommand-DGB5NTFM.mjs');
|
|
231
236
|
await command11.default(args);
|
|
232
237
|
}
|
|
233
238
|
};
|
|
@@ -236,7 +241,7 @@ var delete_default = command3;
|
|
|
236
241
|
// src/commands/site/version/get/index.ts
|
|
237
242
|
var command4 = {
|
|
238
243
|
command: "get",
|
|
239
|
-
describe: "Get
|
|
244
|
+
describe: "Get live site version",
|
|
240
245
|
builder: (argv) => {
|
|
241
246
|
return argv;
|
|
242
247
|
},
|
|
@@ -250,7 +255,7 @@ var get_default = command4;
|
|
|
250
255
|
// src/commands/site/version/list/index.ts
|
|
251
256
|
var command5 = {
|
|
252
257
|
command: "list",
|
|
253
|
-
describe: "List
|
|
258
|
+
describe: "List site versions",
|
|
254
259
|
builder: (argv) => {
|
|
255
260
|
return argv;
|
|
256
261
|
},
|
|
@@ -264,7 +269,7 @@ var list_default = command5;
|
|
|
264
269
|
// src/commands/site/version/set/index.ts
|
|
265
270
|
var command6 = {
|
|
266
271
|
command: "set <version>",
|
|
267
|
-
describe: "Set
|
|
272
|
+
describe: "Set live site version",
|
|
268
273
|
builder: (argv) => {
|
|
269
274
|
return argv.positional("version", {
|
|
270
275
|
type: "string",
|
|
@@ -282,12 +287,16 @@ var set_default = command6;
|
|
|
282
287
|
// src/commands/site/version/unset/index.ts
|
|
283
288
|
var command7 = {
|
|
284
289
|
command: "unset",
|
|
285
|
-
describe: "Clear
|
|
290
|
+
describe: "Clear live site version",
|
|
286
291
|
builder: (argv) => {
|
|
287
|
-
return argv
|
|
292
|
+
return argv.option("yes", {
|
|
293
|
+
alias: "y",
|
|
294
|
+
type: "boolean",
|
|
295
|
+
description: "Automatically confirm destructive changes"
|
|
296
|
+
}).group(["yes"], "Unset Options");
|
|
288
297
|
},
|
|
289
298
|
handler: async (args) => {
|
|
290
|
-
const command11 = await import('./versionUnsetCommand-
|
|
299
|
+
const command11 = await import('./versionUnsetCommand-ISMMMWWZ.mjs');
|
|
291
300
|
await command11.default(args);
|
|
292
301
|
}
|
|
293
302
|
};
|
|
@@ -296,9 +305,9 @@ var unset_default = command7;
|
|
|
296
305
|
// src/commands/site/version/index.ts
|
|
297
306
|
var command8 = {
|
|
298
307
|
command: "version",
|
|
299
|
-
describe: "Manage
|
|
308
|
+
describe: "Manage site versions",
|
|
300
309
|
builder: (argv) => {
|
|
301
|
-
return argv.command(list_default).command(
|
|
310
|
+
return argv.command(list_default).command(get_default).command(set_default).command(unset_default).command(delete_default).demandCommand();
|
|
302
311
|
},
|
|
303
312
|
handler: async (args) => {
|
|
304
313
|
}
|
|
@@ -322,7 +331,7 @@ var command9 = {
|
|
|
322
331
|
} : {
|
|
323
332
|
demandOption: true
|
|
324
333
|
},
|
|
325
|
-
description: "Application
|
|
334
|
+
description: "Application resource identifier (rid)"
|
|
326
335
|
},
|
|
327
336
|
foundryUrl: {
|
|
328
337
|
coerce: (foundryUrl2) => foundryUrl2.replace(/\/$/, ""),
|
|
@@ -332,19 +341,19 @@ var command9 = {
|
|
|
332
341
|
} : {
|
|
333
342
|
demandOption: true
|
|
334
343
|
},
|
|
335
|
-
description: "Foundry
|
|
344
|
+
description: "Foundry URL including protocol"
|
|
336
345
|
},
|
|
337
346
|
token: {
|
|
338
347
|
type: "string",
|
|
339
348
|
conflicts: "tokenFile",
|
|
340
|
-
description: "Foundry API
|
|
349
|
+
description: "Foundry API token"
|
|
341
350
|
},
|
|
342
351
|
tokenFile: {
|
|
343
352
|
type: "string",
|
|
344
353
|
conflicts: "token",
|
|
345
|
-
description: "Path to
|
|
354
|
+
description: "Path to file containing Foundry API token"
|
|
346
355
|
}
|
|
347
|
-
}).group(["application", "foundryUrl", "token", "tokenFile"], "Common
|
|
356
|
+
}).group(["application", "foundryUrl", "token", "tokenFile"], "Common Options").command(version_default).command(deploy_default).check((args) => {
|
|
348
357
|
if (!args.foundryUrl.startsWith("https://")) {
|
|
349
358
|
throw new YargsCheckError("foundryUrl must start with https://");
|
|
350
359
|
}
|
|
@@ -359,7 +368,7 @@ var site_default = command9;
|
|
|
359
368
|
// src/commands/typescript/generate/generate.ts
|
|
360
369
|
var command10 = {
|
|
361
370
|
command: "generate",
|
|
362
|
-
describe: "Generate
|
|
371
|
+
describe: "Generate TypeScript SDK from ontology",
|
|
363
372
|
builder: (argv) => {
|
|
364
373
|
return argv.options({
|
|
365
374
|
"outDir": {
|
|
@@ -418,7 +427,7 @@ var command10 = {
|
|
|
418
427
|
});
|
|
419
428
|
},
|
|
420
429
|
handler: async (args) => {
|
|
421
|
-
const command11 = await import('./handleGenerate-
|
|
430
|
+
const command11 = await import('./handleGenerate-7QGFIWKO.mjs');
|
|
422
431
|
await command11.default(args);
|
|
423
432
|
}
|
|
424
433
|
};
|
|
@@ -450,7 +459,7 @@ var firstTime2 = true;
|
|
|
450
459
|
async function logVersionMiddleware(args) {
|
|
451
460
|
if (firstTime2) {
|
|
452
461
|
firstTime2 = false;
|
|
453
|
-
consola.info(`Palantir OSDK CLI ${"0.
|
|
462
|
+
consola.info(`Palantir OSDK CLI ${"0.6.0"}`);
|
|
454
463
|
consola.level = 3 + args.verbose;
|
|
455
464
|
if (consola.level > 3) {
|
|
456
465
|
consola.debug(`Verbose logging enabled (${consola.level === 4 ? "debug" : "trace"})`);
|
package/build/js/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli.ts","../../src/commands/auth/login/index.ts","../../src/commands/auth/index.ts","../../src/util/config.ts","../../src/util/configLoader.ts","../../src/YargsCheckError.ts","../../src/commands/site/deploy/logDeployCommandConfigFileOverride.ts","../../src/commands/site/deploy/index.ts","../../src/commands/site/logSiteCommandConfigFileOverride.ts","../../src/commands/site/version/delete/index.ts","../../src/commands/site/version/get/index.ts","../../src/commands/site/version/list/index.ts","../../src/commands/site/version/set/index.ts","../../src/commands/site/version/unset/index.ts","../../src/commands/site/version/index.ts","../../src/commands/site/index.ts","../../src/commands/typescript/generate/generate.ts","../../src/commands/typescript/index.ts","../../src/yargs/logConfigFileMiddleware.ts","../../src/yargs/logVersionMiddleware.ts"],"names":["consola","command","application","foundryUrl","site","firstTime"],"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\nimport { consola } from \"consola\";\nimport yargs from \"yargs\";\nimport { hideBin } from \"yargs/helpers\";\nimport auth from \"./commands/auth/index.js\";\nimport site from \"./commands/site/index.js\";\nimport typescript from \"./commands/typescript/index.js\";\nimport { ExitProcessError } from \"./ExitProcessError.js\";\nimport { logConfigFileMiddleware } from \"./yargs/logConfigFileMiddleware.js\";\nimport { logVersionMiddleware } from \"./yargs/logVersionMiddleware.js\";\nimport { YargsCheckError } from \"./YargsCheckError.js\";\nexport async function cli(args = process.argv) {\n const base = yargs(hideBin(args)).wrap(Math.min(150, yargs().terminalWidth())).env(\"OSDK\").version(false).option(\"verbose\", {\n alias: \"v\",\n type: \"boolean\",\n description: \"Enable verbose logging\",\n count: true\n }).demandCommand().middleware(logVersionMiddleware, true).middleware(logConfigFileMiddleware).strict().command({\n command: \"unstable\",\n aliases: [\"experimental\"],\n describe: \"Unstable commands\",\n builder: async argv => {\n return argv.command(site).command(typescript).command(auth).demandCommand();\n },\n handler: _args => {}\n }).fail(async (msg, err, argv) => {\n if (err instanceof ExitProcessError) {\n consola.error(err.message);\n consola.debug(err.stack);\n } else {\n if (err && err instanceof YargsCheckError === false) {\n throw err;\n } else {\n argv.showHelp();\n consola.log(\"\"); // intentional blank line\n consola.error(msg);\n }\n }\n process.exit(1);\n });\n\n // Special handling where failures happen before yargs does its error handling within .fail\n try {\n return await base.parseAsync();\n } catch (err) {\n if (err instanceof ExitProcessError) {\n consola.error(err);\n }\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 const command = {\n command: \"login\",\n describe: \"Authenticate with an application ID\",\n builder: argv => {\n return argv.option(\"applicationId\", {\n type: \"string\",\n demandOption: true\n });\n },\n handler: async args => {\n const command = await import(\"./loginFlow.js\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 login from \"./login/index.js\";\nconst site = {\n command: \"auth\",\n describe: \"Manage your session\",\n builder: argv => {\n return argv.options({\n baseUrl: {\n type: \"string\",\n demandOption: true\n }\n }).command(login).demandCommand();\n },\n handler: async args => {}\n};\nexport default site;","/*\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 { promises as fsPromises } from \"node:fs\";\nimport { ExitProcessError } from \"../ExitProcessError.js\";\nconst CONFIG_FILE_NAMES = [\"foundry.config.json\"];\nconst CONFIG_FILE_SCHEMA = {\n type: \"object\",\n properties: {\n foundryUrl: {\n type: \"string\"\n },\n site: {\n type: \"object\",\n properties: {\n application: {\n type: \"string\"\n },\n directory: {\n type: \"string\"\n },\n autoVersion: {\n type: \"object\",\n nullable: true,\n oneOf: [{\n properties: {\n \"type\": {\n const: \"git-describe\",\n type: \"string\"\n },\n \"tagPrefix\": {\n type: \"string\",\n nullable: true\n }\n }\n }],\n required: [\"type\"]\n }\n },\n required: [\"application\", \"directory\"]\n }\n },\n required: [\"foundryUrl\", \"site\"],\n additionalProperties: false\n};\n\n/**\n * Asynchronously loads a configuration file. Looks for any of the CONFIG_FILE_NAMES in the current directory going up to the root directory.\n * @returns A promise that resolves to the configuration JSON object, or undefined if not found.\n * @throws Will throw an error if the configuration file is found but cannot be read or parsed.\n */\nexport async function loadFoundryConfig() {\n const ajvModule = await import(\"ajv\");\n const Ajv = ajvModule.default.default; // https://github.com/ajv-validator/ajv/issues/2132\n const ajv = new Ajv({\n allErrors: true\n });\n const validate = ajv.compile(CONFIG_FILE_SCHEMA);\n const {\n findUp\n } = await import(\"find-up\");\n const configFilePath = await findUp(CONFIG_FILE_NAMES);\n if (configFilePath) {\n let foundryConfig;\n try {\n const fileContent = await fsPromises.readFile(configFilePath, \"utf-8\");\n foundryConfig = JSON.parse(fileContent);\n } catch {\n throw new ExitProcessError(2, `Couldn't read or parse config file ${configFilePath}`);\n }\n if (!validate(foundryConfig)) {\n throw new ExitProcessError(2, `The configuration file does not match the expected schema: ${ajv.errorsText(validate.errors)}`);\n }\n return {\n foundryConfig,\n configFilePath\n };\n }\n return undefined;\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\nimport { loadFoundryConfig } from \"./config.js\";\nlet configPromise = undefined;\nfunction getConfig() {\n if (configPromise == null) {\n configPromise = loadFoundryConfig();\n }\n return configPromise;\n}\nexport default getConfig;","/*\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 class YargsCheckError extends Error {\n constructor(msg) {\n super(msg);\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\nimport { consola } from \"consola\";\nexport async function logDeployCommandConfigFileOverride(args, config) {\n if (config?.autoVersion != null && args.autoVersion !== config?.autoVersion.type) {\n consola.debug(`Overriding \"autoVersion\" from config file with ${args.autoVersion}`);\n }\n if (config?.directory != null && args.directory !== config?.directory) {\n consola.debug(`Overriding \"directory\" from config file with ${args.directory}`);\n }\n if (config?.autoVersion?.tagPrefix != null && args.gitTagPrefix != null && args.gitTagPrefix !== config?.autoVersion.tagPrefix) {\n consola.debug(`Overriding \"gitTagPrefix\" from config file with ${args.gitTagPrefix}`);\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\nimport configLoader from \"../../../util/configLoader.js\";\nimport { YargsCheckError } from \"../../../YargsCheckError.js\";\nimport { logDeployCommandConfigFileOverride } from \"./logDeployCommandConfigFileOverride.js\";\nconst command = {\n command: \"deploy\",\n describe: \"Deploy an uploaded version\",\n builder: async argv => {\n const config = await configLoader();\n const siteConfig = config?.foundryConfig.site;\n const directory = siteConfig?.directory;\n const autoVersion = siteConfig?.autoVersion;\n const gitTagPrefix = autoVersion?.tagPrefix;\n return argv.options({\n directory: {\n type: \"string\",\n description: \"Directory to deploy\",\n ...(directory ? {\n default: directory\n } : {\n demandOption: true\n })\n },\n uploadOnly: {\n type: \"boolean\",\n description: \"Upload the directory but do not deploy it\",\n default: false\n },\n version: {\n type: \"string\",\n description: \"Version to deploy\",\n ...(autoVersion == null ? {\n conflicts: \"autoVersion\"\n } : {})\n },\n autoVersion: {\n type: \"string\",\n description: \"Enables autoversioning. Can be set to 'git-describe' to use git describe to determine the version.\",\n ...(autoVersion != null ? {\n default: autoVersion.type\n } : {\n conflicts: \"version\"\n })\n },\n gitTagPrefix: {\n type: \"string\",\n description: \"Prefix to match git tags against when --autoVersion=git-describe is used. If not provided, a default prefix 'v' is used.\",\n ...(gitTagPrefix ? {\n default: gitTagPrefix\n } : {})\n }\n }).group([\"autoVersion\", \"gitTagPrefix\"], \"Autoversion Arguments\").group([\"version\", \"directory\", \"uploadOnly\"], \"Common Arguments\").check(args => {\n // This is required because we can't use demandOption with conflicts. conflicts protects us against the case where both are provided.\n // So this case is for when nothing is provided.\n if (autoVersion == null && args.autoVersion == null && args.version == null) {\n throw new YargsCheckError(\"One of --version or --autoVersion must be specified\");\n }\n const autoVersionType = args.autoVersion ?? autoVersion;\n if (autoVersionType !== \"git-describe\") {\n throw new YargsCheckError(`Only 'git-describe' is supported for autoVersion`);\n }\n const gitTagPrefixValue = args.gitTagPrefix ?? gitTagPrefix;\n // Future proofing for when we support other autoVersion types\n if (gitTagPrefixValue != null && autoVersionType !== \"git-describe\") {\n throw new YargsCheckError(`--gitTagPrefix is only supported when --autoVersion=git-describe`);\n }\n return true;\n }).middleware(args => logDeployCommandConfigFileOverride(args, siteConfig));\n },\n handler: async args => {\n const command = await import(\"./siteDeployCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 { consola } from \"consola\";\nexport async function logSiteCommandConfigFileOverride(args, config) {\n if (config?.site.application != null && args.application !== config.site.application) {\n consola.debug(`Overriding \"application\" from config file with ${args.application}`);\n }\n if (config?.foundryUrl != null && args.foundryUrl !== config.foundryUrl) {\n consola.debug(`Overriding \"foundryUrl\" from config file with ${args.foundryUrl}`);\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\nconst command = {\n command: \"delete <version>\",\n describe: \"Delete the specified site version.\",\n builder: argv => {\n return argv.positional(\"version\", {\n type: \"string\",\n demandOption: true,\n description: \"Version to set as live\"\n });\n },\n handler: async args => {\n const command = await import(\"./versionDeleteCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"get\",\n describe: \"Get the currently set live site version\",\n builder: argv => {\n return argv;\n },\n handler: async args => {\n const command = await import(\"./versionGetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"list\",\n describe: \"List application versions\",\n builder: argv => {\n return argv;\n },\n handler: async args => {\n const command = await import(\"./versionListCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"set <version>\",\n describe: \"Set the live site version\",\n builder: argv => {\n return argv.positional(\"version\", {\n type: \"string\",\n demandOption: true,\n description: \"Version to set as live\"\n });\n },\n handler: async args => {\n const command = await import(\"./versionSetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"unset\",\n describe: \"Clear the currently set live site version.\",\n builder: argv => {\n return argv;\n },\n handler: async args => {\n const command = await import(\"./versionUnsetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 deleteCmd from \"./delete/index.js\";\nimport get from \"./get/index.js\";\nimport list from \"./list/index.js\";\nimport set from \"./set/index.js\";\nimport unset from \"./unset/index.js\";\nconst command = {\n command: \"version\",\n describe: \"Manage application version\",\n builder: argv => {\n return argv.command(list).command(set).command(unset).command(deleteCmd).command(get).demandCommand();\n },\n handler: async args => {}\n};\nexport default command;","/*\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 configLoader from \"../../util/configLoader.js\";\nimport { YargsCheckError } from \"../../YargsCheckError.js\";\nimport deploy from \"./deploy/index.js\";\nimport { logSiteCommandConfigFileOverride } from \"./logSiteCommandConfigFileOverride.js\";\nimport version from \"./version/index.js\";\nconst command = {\n command: \"site\",\n describe: \"Manage your site\",\n builder: async argv => {\n const config = await configLoader();\n const application = config?.foundryConfig.site.application;\n const foundryUrl = config?.foundryConfig.foundryUrl;\n return argv.options({\n application: {\n type: \"string\",\n coerce: application => application,\n ...(application ? {\n default: application\n } : {\n demandOption: true\n }),\n description: \"Application RID\"\n },\n foundryUrl: {\n coerce: foundryUrl => foundryUrl.replace(/\\/$/, \"\"),\n type: \"string\",\n ...(foundryUrl ? {\n default: foundryUrl\n } : {\n demandOption: true\n }),\n description: \"Foundry Stack URL with Protocol (e.g. https://example.palantirfoundry.com)\"\n },\n token: {\n type: \"string\",\n conflicts: \"tokenFile\",\n description: \"Foundry API Token\"\n },\n tokenFile: {\n type: \"string\",\n conflicts: \"token\",\n description: \"Path to a file containing your Foundry API Token\"\n }\n }).group([\"application\", \"foundryUrl\", \"token\", \"tokenFile\"], \"Common Arguments\").command(version).command(deploy).check(args => {\n if (!args.foundryUrl.startsWith(\"https://\")) {\n throw new YargsCheckError(\"foundryUrl must start with https://\");\n }\n return true;\n }).middleware(args => logSiteCommandConfigFileOverride(args, config?.foundryConfig)).demandCommand();\n },\n handler: async args => {}\n};\nexport default command;","/*\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 { isValidSemver } from \"../../../util/isValidSemver.js\";\nexport const command = {\n command: \"generate\",\n describe: \"Generate typescript from ontology\",\n builder: argv => {\n return argv.options({\n \"outDir\": {\n type: \"string\",\n description: \"Where to place the generated files\",\n demandOption: true\n },\n ontologyPath: {\n description: \"path to the ontology wire json\",\n type: \"string\",\n demandOption: false,\n conflicts: [\"stack\", \"clientId\"]\n },\n stack: {\n description: \"the URL to the stack that contains the ontology\",\n type: \"string\",\n demandOption: false,\n conflicts: \"ontologyPath\",\n implies: \"clientId\"\n },\n clientId: {\n description: \"the application's client id\",\n type: \"string\",\n demandOption: false,\n conflicts: \"ontologyPath\",\n implies: \"stack\"\n },\n ontologyWritePath: {\n description: \"path to write the ontology wire json\",\n type: \"string\",\n demandOption: false,\n conflicts: [\"ontologyPath\"]\n },\n beta: {\n type: \"boolean\",\n description: \"Should generate beta sdk\",\n demandOption: false\n },\n packageType: {\n default: \"commonjs\",\n choices: [\"commonjs\", \"module\"]\n },\n version: {\n type: \"string\",\n description: \"Version of the generated code, or 'dev'\",\n demandOption: true\n }\n }).group([\"ontologyPath\", \"outDir\", \"version\"], \"Generate from a local file\").group([\"stack\", \"clientId\", \"outDir\", \"ontologyWritePath\", \"version\"], \"OR Generate from a stack\").check(args => {\n if (!args.ontologyPath && !args.stack) {\n throw new Error(\"Error: Must specify either ontologyPath or stack and clientId\");\n }\n if (args.version !== \"dev\" && !isValidSemver(args.version)) {\n throw new Error(\"Error: Version must be 'dev' or a valid semver version\");\n }\n return true;\n });\n },\n handler: async args => {\n const command = await import(\"./handleGenerate.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 generate from \"./generate/generate.js\";\nconst site = {\n command: \"typescript\",\n describe: \"Manage code\",\n builder: argv => {\n return argv.command(generate).demandCommand();\n },\n handler: async args => {}\n};\nexport default site;","/*\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 { consola } from \"consola\";\nimport getConfig from \"../util/configLoader.js\";\nlet firstTime = true;\nexport async function logConfigFileMiddleware() {\n if (firstTime) {\n firstTime = false;\n const config = getConfig();\n const configFilePath = (await config)?.configFilePath;\n if (configFilePath) {\n consola.debug(`Using configuration from file: \"${configFilePath}\"`);\n }\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\nimport { consola } from \"consola\";\nlet firstTime = true;\nexport async function logVersionMiddleware(args) {\n if (firstTime) {\n firstTime = false;\n // This will be called before any command is executed\n consola.info(`Palantir OSDK CLI ${process.env.PACKAGE_VERSION}`);\n consola.level = 3 + args.verbose; // so 1 -v is debug logs and -vv is trace\n if (consola.level > 3) {\n consola.debug(`Verbose logging enabled (${consola.level === 4 ? \"debug\" : \"trace\"})`);\n }\n consola.log(\"\"); // intentional blank line\n }\n}"]}
|
|
1
|
+
{"version":3,"sources":["../../src/cli.ts","../../src/commands/auth/login/index.ts","../../src/commands/auth/index.ts","../../src/util/config.ts","../../src/util/configLoader.ts","../../src/YargsCheckError.ts","../../src/commands/site/deploy/logDeployCommandConfigFileOverride.ts","../../src/commands/site/deploy/index.ts","../../src/commands/site/logSiteCommandConfigFileOverride.ts","../../src/commands/site/version/delete/index.ts","../../src/commands/site/version/get/index.ts","../../src/commands/site/version/list/index.ts","../../src/commands/site/version/set/index.ts","../../src/commands/site/version/unset/index.ts","../../src/commands/site/version/index.ts","../../src/commands/site/index.ts","../../src/commands/typescript/generate/generate.ts","../../src/commands/typescript/index.ts","../../src/yargs/logConfigFileMiddleware.ts","../../src/yargs/logVersionMiddleware.ts"],"names":["consola","command","application","foundryUrl","site","firstTime"],"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\nimport { consola } from \"consola\";\nimport yargs from \"yargs\";\nimport { hideBin } from \"yargs/helpers\";\nimport auth from \"./commands/auth/index.js\";\nimport site from \"./commands/site/index.js\";\nimport typescript from \"./commands/typescript/index.js\";\nimport { ExitProcessError } from \"./ExitProcessError.js\";\nimport { logConfigFileMiddleware } from \"./yargs/logConfigFileMiddleware.js\";\nimport { logVersionMiddleware } from \"./yargs/logVersionMiddleware.js\";\nimport { YargsCheckError } from \"./YargsCheckError.js\";\nexport async function cli(args = process.argv) {\n const base = yargs(hideBin(args)).wrap(Math.min(150, yargs().terminalWidth())).env(\"OSDK\").version(false).option(\"verbose\", {\n alias: \"v\",\n type: \"boolean\",\n description: \"Enable verbose logging\",\n count: true\n }).demandCommand().middleware(logVersionMiddleware, true).middleware(logConfigFileMiddleware).strict().command({\n command: \"unstable\",\n aliases: [\"experimental\"],\n describe: \"Unstable commands\",\n builder: async argv => {\n return argv.command(site).command(typescript).command(auth).demandCommand();\n },\n handler: _args => {}\n }).fail(async (msg, err, argv) => {\n if (err instanceof ExitProcessError) {\n consola.error(err.message);\n consola.debug(err.stack);\n } else {\n if (err && err instanceof YargsCheckError === false) {\n throw err;\n } else {\n argv.showHelp();\n consola.log(\"\"); // intentional blank line\n consola.error(msg);\n }\n }\n process.exit(1);\n });\n\n // Special handling where failures happen before yargs does its error handling within .fail\n try {\n return await base.parseAsync();\n } catch (err) {\n if (err instanceof ExitProcessError) {\n consola.error(err);\n }\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 const command = {\n command: \"login\",\n describe: \"Authenticate with an application ID\",\n builder: argv => {\n return argv.option(\"applicationId\", {\n type: \"string\",\n demandOption: true\n });\n },\n handler: async args => {\n const command = await import(\"./loginFlow.js\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 login from \"./login/index.js\";\nconst site = {\n command: \"auth\",\n describe: \"Manage your session\",\n builder: argv => {\n return argv.options({\n baseUrl: {\n type: \"string\",\n demandOption: true\n }\n }).command(login).demandCommand();\n },\n handler: async args => {}\n};\nexport default site;","/*\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 { promises as fsPromises } from \"node:fs\";\nimport { ExitProcessError } from \"../ExitProcessError.js\";\nconst CONFIG_FILE_NAMES = [\"foundry.config.json\"];\nconst CONFIG_FILE_SCHEMA = {\n type: \"object\",\n properties: {\n foundryUrl: {\n type: \"string\"\n },\n site: {\n type: \"object\",\n properties: {\n application: {\n type: \"string\"\n },\n directory: {\n type: \"string\"\n },\n autoVersion: {\n type: \"object\",\n nullable: true,\n oneOf: [{\n properties: {\n \"type\": {\n const: \"git-describe\",\n type: \"string\"\n },\n \"tagPrefix\": {\n type: \"string\",\n nullable: true\n }\n }\n }],\n required: [\"type\"]\n }\n },\n required: [\"application\", \"directory\"]\n }\n },\n required: [\"foundryUrl\", \"site\"],\n additionalProperties: false\n};\n\n/**\n * Asynchronously loads a configuration file. Looks for any of the CONFIG_FILE_NAMES in the current directory going up to the root directory.\n * @returns A promise that resolves to the configuration JSON object, or undefined if not found.\n * @throws Will throw an error if the configuration file is found but cannot be read or parsed.\n */\nexport async function loadFoundryConfig() {\n const ajvModule = await import(\"ajv\");\n const Ajv = ajvModule.default.default; // https://github.com/ajv-validator/ajv/issues/2132\n const ajv = new Ajv({\n allErrors: true\n });\n const validate = ajv.compile(CONFIG_FILE_SCHEMA);\n const {\n findUp\n } = await import(\"find-up\");\n const configFilePath = await findUp(CONFIG_FILE_NAMES);\n if (configFilePath) {\n let foundryConfig;\n try {\n const fileContent = await fsPromises.readFile(configFilePath, \"utf-8\");\n foundryConfig = JSON.parse(fileContent);\n } catch {\n throw new ExitProcessError(2, `Couldn't read or parse config file ${configFilePath}`);\n }\n if (!validate(foundryConfig)) {\n throw new ExitProcessError(2, `The configuration file does not match the expected schema: ${ajv.errorsText(validate.errors)}`);\n }\n return {\n foundryConfig,\n configFilePath\n };\n }\n return undefined;\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\nimport { loadFoundryConfig } from \"./config.js\";\nlet configPromise = undefined;\nfunction getConfig() {\n if (configPromise == null) {\n configPromise = loadFoundryConfig();\n }\n return configPromise;\n}\nexport default getConfig;","/*\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 class YargsCheckError extends Error {\n constructor(msg) {\n super(msg);\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\nimport { consola } from \"consola\";\nexport async function logDeployCommandConfigFileOverride(args, config) {\n if (config?.autoVersion != null && args.autoVersion !== config?.autoVersion.type) {\n consola.debug(`Overriding \"autoVersion\" from config file with ${args.autoVersion}`);\n }\n if (config?.directory != null && args.directory !== config?.directory) {\n consola.debug(`Overriding \"directory\" from config file with ${args.directory}`);\n }\n if (config?.autoVersion?.tagPrefix != null && args.gitTagPrefix != null && args.gitTagPrefix !== config?.autoVersion.tagPrefix) {\n consola.debug(`Overriding \"gitTagPrefix\" from config file with ${args.gitTagPrefix}`);\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\nimport configLoader from \"../../../util/configLoader.js\";\nimport { YargsCheckError } from \"../../../YargsCheckError.js\";\nimport { logDeployCommandConfigFileOverride } from \"./logDeployCommandConfigFileOverride.js\";\nconst command = {\n command: \"deploy\",\n describe: \"Deploy a new site version\",\n builder: async argv => {\n const config = await configLoader();\n const siteConfig = config?.foundryConfig.site;\n const directory = siteConfig?.directory;\n const autoVersion = siteConfig?.autoVersion;\n const gitTagPrefix = autoVersion?.tagPrefix;\n return argv.options({\n directory: {\n type: \"string\",\n description: \"Directory containing site files\",\n ...(directory ? {\n default: directory\n } : {\n demandOption: true\n })\n },\n uploadOnly: {\n type: \"boolean\",\n description: \"Upload new site version only without setting as live\",\n default: false\n },\n version: {\n type: \"string\",\n description: \"New version of site to deploy\",\n ...(autoVersion == null ? {\n conflicts: \"autoVersion\"\n } : {})\n },\n autoVersion: {\n type: \"string\",\n choices: [\"git-describe\"],\n description: \"Enable auto versioning\",\n ...(autoVersion != null ? {\n default: autoVersion.type\n } : {\n conflicts: \"version\"\n })\n },\n gitTagPrefix: {\n type: \"string\",\n 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.\",\n ...(gitTagPrefix ? {\n default: gitTagPrefix\n } : {})\n }\n }).group([\"directory\", \"version\", \"uploadOnly\"], \"Deploy Options\").group([\"autoVersion\", \"gitTagPrefix\"], \"Auto Version Options\").check(args => {\n // This is required because we can't use demandOption with conflicts. conflicts protects us against the case where both are provided.\n // So this case is for when nothing is provided.\n if (autoVersion == null && args.autoVersion == null && args.version == null) {\n throw new YargsCheckError(\"One of --version or --autoVersion must be specified\");\n }\n const autoVersionType = args.autoVersion ?? autoVersion;\n if (autoVersionType !== \"git-describe\") {\n throw new YargsCheckError(`Only 'git-describe' is supported for autoVersion`);\n }\n const gitTagPrefixValue = args.gitTagPrefix ?? gitTagPrefix;\n // Future proofing for when we support other autoVersion types\n if (gitTagPrefixValue != null && autoVersionType !== \"git-describe\") {\n throw new YargsCheckError(`--gitTagPrefix is only supported when --autoVersion=git-describe`);\n }\n return true;\n }).middleware(args => logDeployCommandConfigFileOverride(args, siteConfig));\n },\n handler: async args => {\n const command = await import(\"./siteDeployCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 { consola } from \"consola\";\nexport async function logSiteCommandConfigFileOverride(args, config) {\n if (config?.site.application != null && args.application !== config.site.application) {\n consola.debug(`Overriding \"application\" from config file with ${args.application}`);\n }\n if (config?.foundryUrl != null && args.foundryUrl !== config.foundryUrl) {\n consola.debug(`Overriding \"foundryUrl\" from config file with ${args.foundryUrl}`);\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\nconst command = {\n command: \"delete <version>\",\n describe: \"Delete site version\",\n builder: argv => {\n return argv.positional(\"version\", {\n type: \"string\",\n demandOption: true,\n description: \"Version to set as live\"\n }).option(\"yes\", {\n alias: \"y\",\n type: \"boolean\",\n description: \"Automatically confirm destructive changes\"\n }).group([\"yes\"], \"Delete Options\");\n },\n handler: async args => {\n const command = await import(\"./versionDeleteCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"get\",\n describe: \"Get live site version\",\n builder: argv => {\n return argv;\n },\n handler: async args => {\n const command = await import(\"./versionGetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"list\",\n describe: \"List site versions\",\n builder: argv => {\n return argv;\n },\n handler: async args => {\n const command = await import(\"./versionListCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"set <version>\",\n describe: \"Set live site version\",\n builder: argv => {\n return argv.positional(\"version\", {\n type: \"string\",\n demandOption: true,\n description: \"Version to set as live\"\n });\n },\n handler: async args => {\n const command = await import(\"./versionSetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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\nconst command = {\n command: \"unset\",\n describe: \"Clear live site version\",\n builder: argv => {\n return argv.option(\"yes\", {\n alias: \"y\",\n type: \"boolean\",\n description: \"Automatically confirm destructive changes\"\n }).group([\"yes\"], \"Unset Options\");\n },\n handler: async args => {\n const command = await import(\"./versionUnsetCommand.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 deleteCmd from \"./delete/index.js\";\nimport get from \"./get/index.js\";\nimport list from \"./list/index.js\";\nimport set from \"./set/index.js\";\nimport unset from \"./unset/index.js\";\nconst command = {\n command: \"version\",\n describe: \"Manage site versions\",\n builder: argv => {\n return argv.command(list).command(get).command(set).command(unset).command(deleteCmd).demandCommand();\n },\n handler: async args => {}\n};\nexport default command;","/*\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 configLoader from \"../../util/configLoader.js\";\nimport { YargsCheckError } from \"../../YargsCheckError.js\";\nimport deploy from \"./deploy/index.js\";\nimport { logSiteCommandConfigFileOverride } from \"./logSiteCommandConfigFileOverride.js\";\nimport version from \"./version/index.js\";\nconst command = {\n command: \"site\",\n describe: \"Manage your site\",\n builder: async argv => {\n const config = await configLoader();\n const application = config?.foundryConfig.site.application;\n const foundryUrl = config?.foundryConfig.foundryUrl;\n return argv.options({\n application: {\n type: \"string\",\n coerce: application => application,\n ...(application ? {\n default: application\n } : {\n demandOption: true\n }),\n description: \"Application resource identifier (rid)\"\n },\n foundryUrl: {\n coerce: foundryUrl => foundryUrl.replace(/\\/$/, \"\"),\n type: \"string\",\n ...(foundryUrl ? {\n default: foundryUrl\n } : {\n demandOption: true\n }),\n description: \"Foundry URL including protocol\"\n },\n token: {\n type: \"string\",\n conflicts: \"tokenFile\",\n description: \"Foundry API token\"\n },\n tokenFile: {\n type: \"string\",\n conflicts: \"token\",\n description: \"Path to file containing Foundry API token\"\n }\n }).group([\"application\", \"foundryUrl\", \"token\", \"tokenFile\"], \"Common Options\").command(version).command(deploy).check(args => {\n if (!args.foundryUrl.startsWith(\"https://\")) {\n throw new YargsCheckError(\"foundryUrl must start with https://\");\n }\n return true;\n }).middleware(args => logSiteCommandConfigFileOverride(args, config?.foundryConfig)).demandCommand();\n },\n handler: async args => {}\n};\nexport default command;","/*\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 { isValidSemver } from \"../../../util/isValidSemver.js\";\nexport const command = {\n command: \"generate\",\n describe: \"Generate TypeScript SDK from ontology\",\n builder: argv => {\n return argv.options({\n \"outDir\": {\n type: \"string\",\n description: \"Where to place the generated files\",\n demandOption: true\n },\n ontologyPath: {\n description: \"path to the ontology wire json\",\n type: \"string\",\n demandOption: false,\n conflicts: [\"stack\", \"clientId\"]\n },\n stack: {\n description: \"the URL to the stack that contains the ontology\",\n type: \"string\",\n demandOption: false,\n conflicts: \"ontologyPath\",\n implies: \"clientId\"\n },\n clientId: {\n description: \"the application's client id\",\n type: \"string\",\n demandOption: false,\n conflicts: \"ontologyPath\",\n implies: \"stack\"\n },\n ontologyWritePath: {\n description: \"path to write the ontology wire json\",\n type: \"string\",\n demandOption: false,\n conflicts: [\"ontologyPath\"]\n },\n beta: {\n type: \"boolean\",\n description: \"Should generate beta sdk\",\n demandOption: false\n },\n packageType: {\n default: \"commonjs\",\n choices: [\"commonjs\", \"module\"]\n },\n version: {\n type: \"string\",\n description: \"Version of the generated code, or 'dev'\",\n demandOption: true\n }\n }).group([\"ontologyPath\", \"outDir\", \"version\"], \"Generate from a local file\").group([\"stack\", \"clientId\", \"outDir\", \"ontologyWritePath\", \"version\"], \"OR Generate from a stack\").check(args => {\n if (!args.ontologyPath && !args.stack) {\n throw new Error(\"Error: Must specify either ontologyPath or stack and clientId\");\n }\n if (args.version !== \"dev\" && !isValidSemver(args.version)) {\n throw new Error(\"Error: Version must be 'dev' or a valid semver version\");\n }\n return true;\n });\n },\n handler: async args => {\n const command = await import(\"./handleGenerate.mjs\");\n await command.default(args);\n }\n};\nexport default command;","/*\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 generate from \"./generate/generate.js\";\nconst site = {\n command: \"typescript\",\n describe: \"Manage code\",\n builder: argv => {\n return argv.command(generate).demandCommand();\n },\n handler: async args => {}\n};\nexport default site;","/*\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 { consola } from \"consola\";\nimport getConfig from \"../util/configLoader.js\";\nlet firstTime = true;\nexport async function logConfigFileMiddleware() {\n if (firstTime) {\n firstTime = false;\n const config = getConfig();\n const configFilePath = (await config)?.configFilePath;\n if (configFilePath) {\n consola.debug(`Using configuration from file: \"${configFilePath}\"`);\n }\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\nimport { consola } from \"consola\";\nlet firstTime = true;\nexport async function logVersionMiddleware(args) {\n if (firstTime) {\n firstTime = false;\n // This will be called before any command is executed\n consola.info(`Palantir OSDK CLI ${process.env.PACKAGE_VERSION}`);\n consola.level = 3 + args.verbose; // so 1 -v is debug logs and -vv is trace\n if (consola.level > 3) {\n consola.debug(`Verbose logging enabled (${consola.level === 4 ? \"debug\" : \"trace\"})`);\n }\n consola.log(\"\"); // intentional blank line\n }\n}"]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { isValidSemver } from './chunk-N6K26UR4.mjs';
|
|
2
|
-
import { loadToken, createInternalClientContext, artifacts_exports, third_party_application_service_exports,
|
|
2
|
+
import { loadToken, createInternalClientContext, createConjureContext, artifacts_exports, third_party_application_service_exports, ArtifactsSitesAdminV2Service_exports } from './chunk-XNYKWAIE.mjs';
|
|
3
3
|
import { ExitProcessError } from './chunk-GTNZA5UY.mjs';
|
|
4
4
|
import './chunk-E2SEJZTC.mjs';
|
|
5
5
|
import { consola } from 'consola';
|
|
6
6
|
import archiver from 'archiver';
|
|
7
|
+
import { colorize } from 'consola/utils';
|
|
7
8
|
import * as fs from 'fs';
|
|
8
9
|
import path from 'path';
|
|
9
10
|
import { Readable } from 'stream';
|
|
@@ -41,6 +42,9 @@ async function siteDeployCommand({
|
|
|
41
42
|
throw new Error("Either version or autoVersion must be specified");
|
|
42
43
|
}
|
|
43
44
|
const loadedToken = await loadToken(token, tokenFile);
|
|
45
|
+
const tokenProvider = () => loadedToken;
|
|
46
|
+
const clientCtx = createInternalClientContext(foundryUrl, tokenProvider);
|
|
47
|
+
const ctx = createConjureContext(foundryUrl, "/artifacts/api", tokenProvider);
|
|
44
48
|
let siteVersion;
|
|
45
49
|
if (version != null) {
|
|
46
50
|
siteVersion = version;
|
|
@@ -57,8 +61,6 @@ async function siteDeployCommand({
|
|
|
57
61
|
const archive = archiver("zip").directory(directory, false);
|
|
58
62
|
logArchiveStats(archive);
|
|
59
63
|
consola.start("Uploading site files");
|
|
60
|
-
const tokenProvider = () => loadedToken;
|
|
61
|
-
const clientCtx = createInternalClientContext(foundryUrl, tokenProvider);
|
|
62
64
|
await Promise.all([artifacts_exports.SiteAssetArtifactsService.uploadZippedSiteAsset(clientCtx, {
|
|
63
65
|
application,
|
|
64
66
|
version: siteVersion,
|
|
@@ -66,17 +68,24 @@ async function siteDeployCommand({
|
|
|
66
68
|
// This cast is because the dom fetch doesnt align type wise with streams
|
|
67
69
|
}), archive.finalize()]);
|
|
68
70
|
consola.success("Upload complete");
|
|
71
|
+
const repositoryRid = await third_party_application_service_exports.fetchWebsiteRepositoryRid(clientCtx, application);
|
|
72
|
+
const registeredSiteDomains = await ArtifactsSitesAdminV2Service_exports.getRegisteredSiteDomains(ctx, repositoryRid);
|
|
73
|
+
const domain = getFirstSiteDomain(registeredSiteDomains);
|
|
69
74
|
if (!uploadOnly) {
|
|
70
|
-
const repositoryRid = await third_party_application_service_exports.fetchWebsiteRepositoryRid(clientCtx, application);
|
|
71
|
-
const ctx = createConjureContext(foundryUrl, "/artifacts/api", tokenProvider);
|
|
72
75
|
await ArtifactsSitesAdminV2Service_exports.updateDeployedVersion(ctx, repositoryRid, {
|
|
73
76
|
siteVersion: {
|
|
74
77
|
version: siteVersion
|
|
75
78
|
}
|
|
76
79
|
});
|
|
77
80
|
consola.success(`Deployed ${siteVersion} successfully`);
|
|
81
|
+
if (domain != null) {
|
|
82
|
+
logSiteLink("View live site:", `https://${domain}`);
|
|
83
|
+
}
|
|
78
84
|
} else {
|
|
79
85
|
consola.debug("Upload only mode enabled, skipping deployment");
|
|
86
|
+
if (domain != null) {
|
|
87
|
+
logSiteLink("Preview link:", `https://${domain}/.system/preview?previewVersion=${siteVersion}`);
|
|
88
|
+
}
|
|
80
89
|
}
|
|
81
90
|
}
|
|
82
91
|
function logArchiveStats(archive) {
|
|
@@ -94,7 +103,31 @@ function logArchiveStats(archive) {
|
|
|
94
103
|
consola.debug(`Zipped ${archiveStats.fileCount} files and ${archiveStats.bytes} bytes`);
|
|
95
104
|
});
|
|
96
105
|
}
|
|
106
|
+
function logSiteLink(title, link) {
|
|
107
|
+
consola.box({
|
|
108
|
+
message: `${title}
|
|
109
|
+
|
|
110
|
+
${colorize("green", link)}`,
|
|
111
|
+
style: {
|
|
112
|
+
padding: 2,
|
|
113
|
+
borderColor: "green",
|
|
114
|
+
borderStyle: "rounded"
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
function getFirstSiteDomain(domains) {
|
|
119
|
+
if (domains.length === 0) {
|
|
120
|
+
consola.warn("No registered domains for site found");
|
|
121
|
+
return void 0;
|
|
122
|
+
}
|
|
123
|
+
switch (domains[0].type) {
|
|
124
|
+
case "controlPanelManaged":
|
|
125
|
+
return domains[0].controlPanelManaged.siteDomain.domain;
|
|
126
|
+
default:
|
|
127
|
+
domains[0].type;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
97
130
|
|
|
98
131
|
export { siteDeployCommand as default };
|
|
99
132
|
//# sourceMappingURL=out.js.map
|
|
100
|
-
//# sourceMappingURL=siteDeployCommand-
|
|
133
|
+
//# sourceMappingURL=siteDeployCommand-4S2UQKJP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/commands/site/deploy/siteDeployCommand.mts","../../src/util/autoVersion.ts"],"names":["autoVersion"],"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\nimport { consola } from \"consola\";\nimport { artifacts, ArtifactsSitesAdminV2Service, createConjureContext, createInternalClientContext, thirdPartyApplicationService } from \"#net\";\nimport archiver from \"archiver\";\nimport { colorize } from \"consola/utils\";\nimport * as fs from \"node:fs\";\nimport path from \"node:path\";\nimport { Readable } from \"node:stream\";\nimport { ExitProcessError } from \"../../../ExitProcessError.js\";\nimport { autoVersion as findAutoVersion } from \"../../../util/autoVersion.js\";\nimport { loadToken } from \"../../../util/token.js\";\nexport default async function siteDeployCommand({\n version,\n application,\n foundryUrl,\n autoVersion,\n gitTagPrefix,\n uploadOnly,\n directory,\n token,\n tokenFile\n}) {\n if (version == null && autoVersion == null) {\n throw new Error(\"Either version or autoVersion must be specified\");\n }\n const loadedToken = await loadToken(token, tokenFile);\n const tokenProvider = () => loadedToken;\n const clientCtx = createInternalClientContext(foundryUrl, tokenProvider);\n const ctx = createConjureContext(foundryUrl, \"/artifacts/api\", tokenProvider);\n\n // version has a priority over autoVersion. Both could be defined at the same time when\n // autoVersion is present in the config file (it assigns that as a default value to argv.autoVersion)\n // and --version is passed as an argument\n let siteVersion;\n if (version != null) {\n siteVersion = version;\n } else {\n siteVersion = await findAutoVersion(gitTagPrefix);\n consola.info(`Auto version inferred next version to be: ${siteVersion}`);\n }\n consola.debug(`Using directory for site files: \"${path.resolve(directory)}`);\n const stat = await fs.promises.stat(directory);\n if (!stat.isDirectory()) {\n throw new ExitProcessError(2, \"Specified path exists but is not a directory\");\n }\n consola.start(\"Zipping site files\");\n const archive = archiver(\"zip\").directory(directory, false);\n logArchiveStats(archive);\n consola.start(\"Uploading site files\");\n await Promise.all([artifacts.SiteAssetArtifactsService.uploadZippedSiteAsset(clientCtx, {\n application,\n version: siteVersion,\n zipFile: Readable.toWeb(archive) // This cast is because the dom fetch doesnt align type wise with streams\n }), archive.finalize()]);\n consola.success(\"Upload complete\");\n const repositoryRid = await thirdPartyApplicationService.fetchWebsiteRepositoryRid(clientCtx, application);\n const registeredSiteDomains = await ArtifactsSitesAdminV2Service.getRegisteredSiteDomains(ctx, repositoryRid);\n const domain = getFirstSiteDomain(registeredSiteDomains);\n if (!uploadOnly) {\n await ArtifactsSitesAdminV2Service.updateDeployedVersion(ctx, repositoryRid, {\n siteVersion: {\n version: siteVersion\n }\n });\n consola.success(`Deployed ${siteVersion} successfully`);\n if (domain != null) {\n logSiteLink(\"View live site:\", `https://${domain}`);\n }\n } else {\n consola.debug(\"Upload only mode enabled, skipping deployment\");\n if (domain != null) {\n logSiteLink(\"Preview link:\", `https://${domain}/.system/preview?previewVersion=${siteVersion}`);\n }\n }\n}\nfunction logArchiveStats(archive) {\n let archiveStats = {\n fileCount: 0,\n bytes: 0\n };\n archive.on(\"progress\", progress => {\n archiveStats = {\n fileCount: progress.entries.total,\n bytes: progress.fs.totalBytes\n };\n });\n archive.on(\"finish\", () => {\n consola.debug(`Zipped ${archiveStats.fileCount} files and ${archiveStats.bytes} bytes`);\n });\n}\nfunction logSiteLink(title, link) {\n consola.box({\n message: `${title}\\n\\n${colorize(\"green\", link)}`,\n style: {\n padding: 2,\n borderColor: \"green\",\n borderStyle: \"rounded\"\n }\n });\n}\nfunction getFirstSiteDomain(domains) {\n if (domains.length === 0) {\n consola.warn(\"No registered domains for site found\");\n return undefined;\n }\n switch (domains[0].type) {\n case \"controlPanelManaged\":\n return domains[0].controlPanelManaged.siteDomain.domain;\n default:\n const _ = domains[0].type;\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\nimport { execSync } from \"node:child_process\";\nimport { ExitProcessError } from \"../ExitProcessError.js\";\nimport { isValidSemver } from \"./isValidSemver.js\";\n\n/**\n * Gets the version string using git describe. If the @param tagPrefix is empty, git describe will return the\n * latest tag (without any filtering) and if the tag starts with \"v\", it will be removed.\n * @param tagPrefix The prefix to use for matching against tags. Defaults to an empty string.\n * @returns A promise that resolves to the version string.\n * @throws An error if the version string is not SemVer compliant or if the version cannot be determined.\n */\nexport async function autoVersion(tagPrefix = \"\") {\n const [matchPrefix, prefixRegex] = tagPrefix !== \"\" ? [tagPrefix, new RegExp(`^${tagPrefix}`)] : [undefined, new RegExp(`^v?`)];\n try {\n const gitVersion = execSync(`git describe --tags --first-parent --dirty${matchPrefix != null ? ` --match=\"${matchPrefix}*\"` : \"\"}`, {\n encoding: \"utf8\"\n });\n const version = gitVersion.trim().replace(prefixRegex, \"\");\n if (!isValidSemver(version)) {\n throw new ExitProcessError(2, `The version string ${version} is not SemVer compliant.`);\n }\n return version;\n } catch (error) {\n throw new ExitProcessError(2, `Unable to determine the version automatically. Please supply a --version argument. ${error}`);\n }\n}"]}
|
|
@@ -6,6 +6,7 @@ var chunkHYF3CTKZ_cjs = require('./chunk-HYF3CTKZ.cjs');
|
|
|
6
6
|
require('./chunk-HQDDGVB7.cjs');
|
|
7
7
|
var consola = require('consola');
|
|
8
8
|
var archiver = require('archiver');
|
|
9
|
+
var utils = require('consola/utils');
|
|
9
10
|
var fs = require('fs');
|
|
10
11
|
var path = require('path');
|
|
11
12
|
var stream = require('stream');
|
|
@@ -67,6 +68,9 @@ async function siteDeployCommand({
|
|
|
67
68
|
throw new Error("Either version or autoVersion must be specified");
|
|
68
69
|
}
|
|
69
70
|
const loadedToken = await chunkD7QHLGEU_cjs.loadToken(token, tokenFile);
|
|
71
|
+
const tokenProvider = () => loadedToken;
|
|
72
|
+
const clientCtx = chunkD7QHLGEU_cjs.createInternalClientContext(foundryUrl, tokenProvider);
|
|
73
|
+
const ctx = chunkD7QHLGEU_cjs.createConjureContext(foundryUrl, "/artifacts/api", tokenProvider);
|
|
70
74
|
let siteVersion;
|
|
71
75
|
if (version != null) {
|
|
72
76
|
siteVersion = version;
|
|
@@ -83,8 +87,6 @@ async function siteDeployCommand({
|
|
|
83
87
|
const archive = archiver__default.default("zip").directory(directory, false);
|
|
84
88
|
logArchiveStats(archive);
|
|
85
89
|
consola.consola.start("Uploading site files");
|
|
86
|
-
const tokenProvider = () => loadedToken;
|
|
87
|
-
const clientCtx = chunkD7QHLGEU_cjs.createInternalClientContext(foundryUrl, tokenProvider);
|
|
88
90
|
await Promise.all([chunkD7QHLGEU_cjs.artifacts_exports.SiteAssetArtifactsService.uploadZippedSiteAsset(clientCtx, {
|
|
89
91
|
application,
|
|
90
92
|
version: siteVersion,
|
|
@@ -92,17 +94,24 @@ async function siteDeployCommand({
|
|
|
92
94
|
// This cast is because the dom fetch doesnt align type wise with streams
|
|
93
95
|
}), archive.finalize()]);
|
|
94
96
|
consola.consola.success("Upload complete");
|
|
97
|
+
const repositoryRid = await chunkD7QHLGEU_cjs.third_party_application_service_exports.fetchWebsiteRepositoryRid(clientCtx, application);
|
|
98
|
+
const registeredSiteDomains = await chunkD7QHLGEU_cjs.ArtifactsSitesAdminV2Service_exports.getRegisteredSiteDomains(ctx, repositoryRid);
|
|
99
|
+
const domain = getFirstSiteDomain(registeredSiteDomains);
|
|
95
100
|
if (!uploadOnly) {
|
|
96
|
-
const repositoryRid = await chunkD7QHLGEU_cjs.third_party_application_service_exports.fetchWebsiteRepositoryRid(clientCtx, application);
|
|
97
|
-
const ctx = chunkD7QHLGEU_cjs.createConjureContext(foundryUrl, "/artifacts/api", tokenProvider);
|
|
98
101
|
await chunkD7QHLGEU_cjs.ArtifactsSitesAdminV2Service_exports.updateDeployedVersion(ctx, repositoryRid, {
|
|
99
102
|
siteVersion: {
|
|
100
103
|
version: siteVersion
|
|
101
104
|
}
|
|
102
105
|
});
|
|
103
106
|
consola.consola.success(`Deployed ${siteVersion} successfully`);
|
|
107
|
+
if (domain != null) {
|
|
108
|
+
logSiteLink("View live site:", `https://${domain}`);
|
|
109
|
+
}
|
|
104
110
|
} else {
|
|
105
111
|
consola.consola.debug("Upload only mode enabled, skipping deployment");
|
|
112
|
+
if (domain != null) {
|
|
113
|
+
logSiteLink("Preview link:", `https://${domain}/.system/preview?previewVersion=${siteVersion}`);
|
|
114
|
+
}
|
|
106
115
|
}
|
|
107
116
|
}
|
|
108
117
|
function logArchiveStats(archive) {
|
|
@@ -120,7 +129,31 @@ function logArchiveStats(archive) {
|
|
|
120
129
|
consola.consola.debug(`Zipped ${archiveStats.fileCount} files and ${archiveStats.bytes} bytes`);
|
|
121
130
|
});
|
|
122
131
|
}
|
|
132
|
+
function logSiteLink(title, link) {
|
|
133
|
+
consola.consola.box({
|
|
134
|
+
message: `${title}
|
|
135
|
+
|
|
136
|
+
${utils.colorize("green", link)}`,
|
|
137
|
+
style: {
|
|
138
|
+
padding: 2,
|
|
139
|
+
borderColor: "green",
|
|
140
|
+
borderStyle: "rounded"
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
function getFirstSiteDomain(domains) {
|
|
145
|
+
if (domains.length === 0) {
|
|
146
|
+
consola.consola.warn("No registered domains for site found");
|
|
147
|
+
return void 0;
|
|
148
|
+
}
|
|
149
|
+
switch (domains[0].type) {
|
|
150
|
+
case "controlPanelManaged":
|
|
151
|
+
return domains[0].controlPanelManaged.siteDomain.domain;
|
|
152
|
+
default:
|
|
153
|
+
domains[0].type;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
123
156
|
|
|
124
157
|
module.exports = siteDeployCommand;
|
|
125
158
|
//# sourceMappingURL=out.js.map
|
|
126
|
-
//# sourceMappingURL=siteDeployCommand-
|
|
159
|
+
//# sourceMappingURL=siteDeployCommand-QKPJEL4X.cjs.map
|