@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.
Files changed (52) hide show
  1. package/build/js/chunk-DQYIDDJN.cjs +17 -0
  2. package/build/js/chunk-DQYIDDJN.cjs.map +1 -0
  3. package/build/js/chunk-IV3QY3PZ.mjs +15 -0
  4. package/build/js/chunk-IV3QY3PZ.mjs.map +1 -0
  5. package/build/js/{handleGenerate-ZUZV3IBI.mjs → handleGenerate-7QGFIWKO.mjs} +2 -2
  6. package/build/js/{handleGenerate-Q6EQWXFG.cjs → handleGenerate-FHM4MFPH.cjs} +2 -2
  7. package/build/js/index.cjs +36 -27
  8. package/build/js/index.cjs.map +1 -1
  9. package/build/js/index.mjs +36 -27
  10. package/build/js/index.mjs.map +1 -1
  11. package/build/js/{siteDeployCommand-7GXJF5HF.mjs → siteDeployCommand-4S2UQKJP.mjs} +39 -6
  12. package/build/js/siteDeployCommand-4S2UQKJP.mjs.map +1 -0
  13. package/build/js/{siteDeployCommand-KUNL3GIW.cjs → siteDeployCommand-QKPJEL4X.cjs} +38 -5
  14. package/build/js/siteDeployCommand-QKPJEL4X.cjs.map +1 -0
  15. package/build/js/{versionDeleteCommand-6BJL5XLG.mjs → versionDeleteCommand-DGB5NTFM.mjs} +11 -1
  16. package/build/js/versionDeleteCommand-DGB5NTFM.mjs.map +1 -0
  17. package/build/js/{versionDeleteCommand-RLU7UUYD.cjs → versionDeleteCommand-S7AXTY46.cjs} +11 -1
  18. package/build/js/versionDeleteCommand-S7AXTY46.cjs.map +1 -0
  19. package/build/js/{versionUnsetCommand-IJT4JWBN.mjs → versionUnsetCommand-ISMMMWWZ.mjs} +11 -1
  20. package/build/js/versionUnsetCommand-ISMMMWWZ.mjs.map +1 -0
  21. package/build/js/{versionUnsetCommand-XYBUQ6XB.cjs → versionUnsetCommand-V3ZVCGSI.cjs} +11 -1
  22. package/build/js/versionUnsetCommand-V3ZVCGSI.cjs.map +1 -0
  23. package/build/types/commands/site/version/delete/VersionDeleteArgs.d.ts +5 -0
  24. package/build/types/commands/site/version/delete/index.d.ts +2 -2
  25. package/build/types/commands/site/version/delete/versionDeleteCommand.d.mts +2 -2
  26. package/build/types/commands/site/version/get/VersionGetArgs.d.ts +3 -0
  27. package/build/types/commands/site/version/get/index.d.ts +2 -1
  28. package/build/types/commands/site/version/get/versionGetCommand.d.mts +2 -2
  29. package/build/types/commands/site/version/list/VersionListArgs.d.ts +3 -0
  30. package/build/types/commands/site/version/list/index.d.ts +2 -1
  31. package/build/types/commands/site/version/list/versionListCommand.d.mts +2 -2
  32. package/build/types/commands/site/version/set/VersionSetArgs.d.ts +4 -0
  33. package/build/types/commands/site/version/set/index.d.ts +2 -2
  34. package/build/types/commands/site/version/set/versionSetCommand.d.mts +2 -2
  35. package/build/types/commands/site/version/unset/VersionUnsetArgs.d.ts +4 -0
  36. package/build/types/commands/site/version/unset/index.d.ts +2 -1
  37. package/build/types/commands/site/version/unset/versionUnsetCommand.d.mts +2 -2
  38. package/build/types/consola/handlePromptCancel.d.ts +1 -0
  39. package/build/types/net/index.d.mts +1 -0
  40. package/changelog/0.6.0/pr-54.v2.yml +5 -0
  41. package/changelog/0.6.0/pr-56.v2.yml +5 -0
  42. package/changelog/0.6.0/pr-58.v2.yml +5 -0
  43. package/package.json +3 -3
  44. package/build/js/siteDeployCommand-7GXJF5HF.mjs.map +0 -1
  45. package/build/js/siteDeployCommand-KUNL3GIW.cjs.map +0 -1
  46. package/build/js/versionDeleteCommand-6BJL5XLG.mjs.map +0 -1
  47. package/build/js/versionDeleteCommand-RLU7UUYD.cjs.map +0 -1
  48. package/build/js/versionUnsetCommand-IJT4JWBN.mjs.map +0 -1
  49. package/build/js/versionUnsetCommand-XYBUQ6XB.cjs.map +0 -1
  50. package/build/types/commands/site/version/SiteVersionArgs.d.ts +0 -4
  51. /package/build/js/{handleGenerate-Q6EQWXFG.cjs.map → handleGenerate-7QGFIWKO.mjs.map} +0 -0
  52. /package/build/js/{handleGenerate-ZUZV3IBI.mjs.map → handleGenerate-FHM4MFPH.cjs.map} +0 -0
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var consola = require('consola');
4
+
5
+ // src/consola/handlePromptCancel.ts
6
+ function handlePromptCancel(promptResponse) {
7
+ const isFalse = typeof promptResponse === "boolean" && !promptResponse;
8
+ const isSigInt = typeof promptResponse === "symbol" && promptResponse.toString() === "Symbol(clack:cancel)";
9
+ if (isSigInt || isFalse) {
10
+ consola.consola.fail("Operation cancelled");
11
+ process.exit(0);
12
+ }
13
+ }
14
+
15
+ exports.handlePromptCancel = handlePromptCancel;
16
+ //# sourceMappingURL=out.js.map
17
+ //# sourceMappingURL=chunk-DQYIDDJN.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/consola/handlePromptCancel.ts"],"names":[],"mappings":";AAgBA,SAAS,eAAe;AACjB,SAAS,mBAAmB,gBAAgB;AACjD,QAAM,UAAU,OAAO,mBAAmB,aAAa,CAAC;AAExD,QAAM,WAAW,OAAO,mBAAmB,YAAY,eAAe,SAAS,MAAM;AACrF,MAAI,YAAY,SAAS;AACvB,YAAQ,KAAK,qBAAqB;AAClC,YAAQ,KAAK,CAAC;AAAA,EAChB;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 { consola } from \"consola\";\nexport function handlePromptCancel(promptResponse) {\n const isFalse = typeof promptResponse === \"boolean\" && !promptResponse;\n // https://github.com/unjs/consola/issues/251\n const isSigInt = typeof promptResponse === \"symbol\" && promptResponse.toString() === \"Symbol(clack:cancel)\";\n if (isSigInt || isFalse) {\n consola.fail(\"Operation cancelled\");\n process.exit(0);\n }\n}"]}
@@ -0,0 +1,15 @@
1
+ import { consola } from 'consola';
2
+
3
+ // src/consola/handlePromptCancel.ts
4
+ function handlePromptCancel(promptResponse) {
5
+ const isFalse = typeof promptResponse === "boolean" && !promptResponse;
6
+ const isSigInt = typeof promptResponse === "symbol" && promptResponse.toString() === "Symbol(clack:cancel)";
7
+ if (isSigInt || isFalse) {
8
+ consola.fail("Operation cancelled");
9
+ process.exit(0);
10
+ }
11
+ }
12
+
13
+ export { handlePromptCancel };
14
+ //# sourceMappingURL=out.js.map
15
+ //# sourceMappingURL=chunk-IV3QY3PZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/consola/handlePromptCancel.ts"],"names":[],"mappings":";AAgBA,SAAS,eAAe;AACjB,SAAS,mBAAmB,gBAAgB;AACjD,QAAM,UAAU,OAAO,mBAAmB,aAAa,CAAC;AAExD,QAAM,WAAW,OAAO,mBAAmB,YAAY,eAAe,SAAS,MAAM;AACrF,MAAI,YAAY,SAAS;AACvB,YAAQ,KAAK,qBAAqB;AAClC,YAAQ,KAAK,CAAC;AAAA,EAChB;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 { consola } from \"consola\";\nexport function handlePromptCancel(promptResponse) {\n const isFalse = typeof promptResponse === \"boolean\" && !promptResponse;\n // https://github.com/unjs/consola/issues/251\n const isSigInt = typeof promptResponse === \"symbol\" && promptResponse.toString() === \"Symbol(clack:cancel)\";\n if (isSigInt || isFalse) {\n consola.fail(\"Operation cancelled\");\n process.exit(0);\n }\n}"]}
@@ -6,7 +6,7 @@ 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.5.0"}`;
9
+ var USER_AGENT = `osdk-cli/${"0.6.0"}`;
10
10
  async function handleGenerate(args) {
11
11
  let success = false;
12
12
  if (args.ontologyPath) {
@@ -94,4 +94,4 @@ function getUserAgent(version) {
94
94
 
95
95
  export { handleGenerate as default };
96
96
  //# sourceMappingURL=out.js.map
97
- //# sourceMappingURL=handleGenerate-ZUZV3IBI.mjs.map
97
+ //# sourceMappingURL=handleGenerate-7QGFIWKO.mjs.map
@@ -28,7 +28,7 @@ function _interopNamespace(e) {
28
28
 
29
29
  var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
30
30
 
31
- var USER_AGENT = `osdk-cli/${"0.5.0"}`;
31
+ var USER_AGENT = `osdk-cli/${"0.6.0"}`;
32
32
  async function handleGenerate(args) {
33
33
  let success = false;
34
34
  if (args.ontologyPath) {
@@ -116,4 +116,4 @@ function getUserAgent(version) {
116
116
 
117
117
  module.exports = handleGenerate;
118
118
  //# sourceMappingURL=out.js.map
119
- //# sourceMappingURL=handleGenerate-Q6EQWXFG.cjs.map
119
+ //# sourceMappingURL=handleGenerate-FHM4MFPH.cjs.map
@@ -146,7 +146,7 @@ async function logDeployCommandConfigFileOverride(args, config) {
146
146
  // src/commands/site/deploy/index.ts
147
147
  var command2 = {
148
148
  command: "deploy",
149
- describe: "Deploy an uploaded version",
149
+ describe: "Deploy a new site version",
150
150
  builder: async (argv) => {
151
151
  const config = await configLoader_default();
152
152
  const siteConfig = config?.foundryConfig.site;
@@ -156,7 +156,7 @@ var command2 = {
156
156
  return argv.options({
157
157
  directory: {
158
158
  type: "string",
159
- description: "Directory to deploy",
159
+ description: "Directory containing site files",
160
160
  ...directory ? {
161
161
  default: directory
162
162
  } : {
@@ -165,19 +165,20 @@ var command2 = {
165
165
  },
166
166
  uploadOnly: {
167
167
  type: "boolean",
168
- description: "Upload the directory but do not deploy it",
168
+ description: "Upload new site version only without setting as live",
169
169
  default: false
170
170
  },
171
171
  version: {
172
172
  type: "string",
173
- description: "Version to deploy",
173
+ description: "New version of site to deploy",
174
174
  ...autoVersion == null ? {
175
175
  conflicts: "autoVersion"
176
176
  } : {}
177
177
  },
178
178
  autoVersion: {
179
179
  type: "string",
180
- description: "Enables autoversioning. Can be set to 'git-describe' to use git describe to determine the version.",
180
+ choices: ["git-describe"],
181
+ description: "Enable auto versioning",
181
182
  ...autoVersion != null ? {
182
183
  default: autoVersion.type
183
184
  } : {
@@ -186,12 +187,12 @@ var command2 = {
186
187
  },
187
188
  gitTagPrefix: {
188
189
  type: "string",
189
- description: "Prefix to match git tags against when --autoVersion=git-describe is used. If not provided, a default prefix 'v' is used.",
190
+ 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
191
  ...gitTagPrefix ? {
191
192
  default: gitTagPrefix
192
193
  } : {}
193
194
  }
194
- }).group(["autoVersion", "gitTagPrefix"], "Autoversion Arguments").group(["version", "directory", "uploadOnly"], "Common Arguments").check((args) => {
195
+ }).group(["directory", "version", "uploadOnly"], "Deploy Options").group(["autoVersion", "gitTagPrefix"], "Auto Version Options").check((args) => {
195
196
  if (autoVersion == null && args.autoVersion == null && args.version == null) {
196
197
  throw new YargsCheckError("One of --version or --autoVersion must be specified");
197
198
  }
@@ -207,7 +208,7 @@ var command2 = {
207
208
  }).middleware((args) => logDeployCommandConfigFileOverride(args, siteConfig));
208
209
  },
209
210
  handler: async (args) => {
210
- const command11 = await import('./siteDeployCommand-KUNL3GIW.cjs');
211
+ const command11 = await import('./siteDeployCommand-QKPJEL4X.cjs');
211
212
  await command11.default(args);
212
213
  }
213
214
  };
@@ -224,16 +225,20 @@ async function logSiteCommandConfigFileOverride(args, config) {
224
225
  // src/commands/site/version/delete/index.ts
225
226
  var command3 = {
226
227
  command: "delete <version>",
227
- describe: "Delete the specified site version.",
228
+ describe: "Delete site version",
228
229
  builder: (argv) => {
229
230
  return argv.positional("version", {
230
231
  type: "string",
231
232
  demandOption: true,
232
233
  description: "Version to set as live"
233
- });
234
+ }).option("yes", {
235
+ alias: "y",
236
+ type: "boolean",
237
+ description: "Automatically confirm destructive changes"
238
+ }).group(["yes"], "Delete Options");
234
239
  },
235
240
  handler: async (args) => {
236
- const command11 = await import('./versionDeleteCommand-RLU7UUYD.cjs');
241
+ const command11 = await import('./versionDeleteCommand-S7AXTY46.cjs');
237
242
  await command11.default(args);
238
243
  }
239
244
  };
@@ -242,7 +247,7 @@ var delete_default = command3;
242
247
  // src/commands/site/version/get/index.ts
243
248
  var command4 = {
244
249
  command: "get",
245
- describe: "Get the currently set live site version",
250
+ describe: "Get live site version",
246
251
  builder: (argv) => {
247
252
  return argv;
248
253
  },
@@ -256,7 +261,7 @@ var get_default = command4;
256
261
  // src/commands/site/version/list/index.ts
257
262
  var command5 = {
258
263
  command: "list",
259
- describe: "List application versions",
264
+ describe: "List site versions",
260
265
  builder: (argv) => {
261
266
  return argv;
262
267
  },
@@ -270,7 +275,7 @@ var list_default = command5;
270
275
  // src/commands/site/version/set/index.ts
271
276
  var command6 = {
272
277
  command: "set <version>",
273
- describe: "Set the live site version",
278
+ describe: "Set live site version",
274
279
  builder: (argv) => {
275
280
  return argv.positional("version", {
276
281
  type: "string",
@@ -288,12 +293,16 @@ var set_default = command6;
288
293
  // src/commands/site/version/unset/index.ts
289
294
  var command7 = {
290
295
  command: "unset",
291
- describe: "Clear the currently set live site version.",
296
+ describe: "Clear live site version",
292
297
  builder: (argv) => {
293
- return argv;
298
+ return argv.option("yes", {
299
+ alias: "y",
300
+ type: "boolean",
301
+ description: "Automatically confirm destructive changes"
302
+ }).group(["yes"], "Unset Options");
294
303
  },
295
304
  handler: async (args) => {
296
- const command11 = await import('./versionUnsetCommand-XYBUQ6XB.cjs');
305
+ const command11 = await import('./versionUnsetCommand-V3ZVCGSI.cjs');
297
306
  await command11.default(args);
298
307
  }
299
308
  };
@@ -302,9 +311,9 @@ var unset_default = command7;
302
311
  // src/commands/site/version/index.ts
303
312
  var command8 = {
304
313
  command: "version",
305
- describe: "Manage application version",
314
+ describe: "Manage site versions",
306
315
  builder: (argv) => {
307
- return argv.command(list_default).command(set_default).command(unset_default).command(delete_default).command(get_default).demandCommand();
316
+ return argv.command(list_default).command(get_default).command(set_default).command(unset_default).command(delete_default).demandCommand();
308
317
  },
309
318
  handler: async (args) => {
310
319
  }
@@ -328,7 +337,7 @@ var command9 = {
328
337
  } : {
329
338
  demandOption: true
330
339
  },
331
- description: "Application RID"
340
+ description: "Application resource identifier (rid)"
332
341
  },
333
342
  foundryUrl: {
334
343
  coerce: (foundryUrl2) => foundryUrl2.replace(/\/$/, ""),
@@ -338,19 +347,19 @@ var command9 = {
338
347
  } : {
339
348
  demandOption: true
340
349
  },
341
- description: "Foundry Stack URL with Protocol (e.g. https://example.palantirfoundry.com)"
350
+ description: "Foundry URL including protocol"
342
351
  },
343
352
  token: {
344
353
  type: "string",
345
354
  conflicts: "tokenFile",
346
- description: "Foundry API Token"
355
+ description: "Foundry API token"
347
356
  },
348
357
  tokenFile: {
349
358
  type: "string",
350
359
  conflicts: "token",
351
- description: "Path to a file containing your Foundry API Token"
360
+ description: "Path to file containing Foundry API token"
352
361
  }
353
- }).group(["application", "foundryUrl", "token", "tokenFile"], "Common Arguments").command(version_default).command(deploy_default).check((args) => {
362
+ }).group(["application", "foundryUrl", "token", "tokenFile"], "Common Options").command(version_default).command(deploy_default).check((args) => {
354
363
  if (!args.foundryUrl.startsWith("https://")) {
355
364
  throw new YargsCheckError("foundryUrl must start with https://");
356
365
  }
@@ -365,7 +374,7 @@ var site_default = command9;
365
374
  // src/commands/typescript/generate/generate.ts
366
375
  var command10 = {
367
376
  command: "generate",
368
- describe: "Generate typescript from ontology",
377
+ describe: "Generate TypeScript SDK from ontology",
369
378
  builder: (argv) => {
370
379
  return argv.options({
371
380
  "outDir": {
@@ -424,7 +433,7 @@ var command10 = {
424
433
  });
425
434
  },
426
435
  handler: async (args) => {
427
- const command11 = await import('./handleGenerate-Q6EQWXFG.cjs');
436
+ const command11 = await import('./handleGenerate-FHM4MFPH.cjs');
428
437
  await command11.default(args);
429
438
  }
430
439
  };
@@ -456,7 +465,7 @@ var firstTime2 = true;
456
465
  async function logVersionMiddleware(args) {
457
466
  if (firstTime2) {
458
467
  firstTime2 = false;
459
- consola.consola.info(`Palantir OSDK CLI ${"0.5.0"}`);
468
+ consola.consola.info(`Palantir OSDK CLI ${"0.6.0"}`);
460
469
  consola.consola.level = 3 + args.verbose;
461
470
  if (consola.consola.level > 3) {
462
471
  consola.consola.debug(`Verbose logging enabled (${consola.consola.level === 4 ? "debug" : "trace"})`);
@@ -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":";;;;;;;;;AAgBA,SAAS,WAAAA,gBAAe;AACxB,OAAO,WAAW;AAClB,SAAS,eAAe;;;ACFjB,IAAM,UAAU;AAAA,EACrB,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,OAAO,iBAAiB;AAAA,MAClC,MAAM;AAAA,MACN,cAAc;AAAA,IAChB,CAAC;AAAA,EACH;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMC,YAAU,MAAM,OAAO,0BAAgB;AAC7C,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,gBAAQ;;;ACbf,IAAM,OAAO;AAAA,EACX,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,QAAQ;AAAA,MAClB,SAAS;AAAA,QACP,MAAM;AAAA,QACN,cAAc;AAAA,MAChB;AAAA,IACF,CAAC,EAAE,QAAQ,aAAK,EAAE,cAAc;AAAA,EAClC;AAAA,EACA,SAAS,OAAM,SAAQ;AAAA,EAAC;AAC1B;AACA,IAAO,eAAQ;;;ACdf,SAAS,YAAY,kBAAkB;AAEvC,IAAM,oBAAoB,CAAC,qBAAqB;AAChD,IAAM,qBAAqB;AAAA,EACzB,MAAM;AAAA,EACN,YAAY;AAAA,IACV,YAAY;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,YAAY;AAAA,QACV,aAAa;AAAA,UACX,MAAM;AAAA,QACR;AAAA,QACA,WAAW;AAAA,UACT,MAAM;AAAA,QACR;AAAA,QACA,aAAa;AAAA,UACX,MAAM;AAAA,UACN,UAAU;AAAA,UACV,OAAO,CAAC;AAAA,YACN,YAAY;AAAA,cACV,QAAQ;AAAA,gBACN,OAAO;AAAA,gBACP,MAAM;AAAA,cACR;AAAA,cACA,aAAa;AAAA,gBACX,MAAM;AAAA,gBACN,UAAU;AAAA,cACZ;AAAA,YACF;AAAA,UACF,CAAC;AAAA,UACD,UAAU,CAAC,MAAM;AAAA,QACnB;AAAA,MACF;AAAA,MACA,UAAU,CAAC,eAAe,WAAW;AAAA,IACvC;AAAA,EACF;AAAA,EACA,UAAU,CAAC,cAAc,MAAM;AAAA,EAC/B,sBAAsB;AACxB;AAOA,eAAsB,oBAAoB;AACxC,QAAM,YAAY,MAAM,OAAO,KAAK;AACpC,QAAM,MAAM,UAAU,QAAQ;AAC9B,QAAM,MAAM,IAAI,IAAI;AAAA,IAClB,WAAW;AAAA,EACb,CAAC;AACD,QAAM,WAAW,IAAI,QAAQ,kBAAkB;AAC/C,QAAM;AAAA,IACJ;AAAA,EACF,IAAI,MAAM,OAAO,SAAS;AAC1B,QAAM,iBAAiB,MAAM,OAAO,iBAAiB;AACrD,MAAI,gBAAgB;AAClB,QAAI;AACJ,QAAI;AACF,YAAM,cAAc,MAAM,WAAW,SAAS,gBAAgB,OAAO;AACrE,sBAAgB,KAAK,MAAM,WAAW;AAAA,IACxC,QAAQ;AACN,YAAM,IAAI,iBAAiB,GAAG,sCAAsC,cAAc,EAAE;AAAA,IACtF;AACA,QAAI,CAAC,SAAS,aAAa,GAAG;AAC5B,YAAM,IAAI,iBAAiB,GAAG,8DAA8D,IAAI,WAAW,SAAS,MAAM,CAAC,EAAE;AAAA,IAC/H;AACA,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;;;AC3EA,IAAI,gBAAgB;AACpB,SAAS,YAAY;AACnB,MAAI,iBAAiB,MAAM;AACzB,oBAAgB,kBAAkB;AAAA,EACpC;AACA,SAAO;AACT;AACA,IAAO,uBAAQ;;;ACRR,IAAM,kBAAN,cAA8B,MAAM;AAAA,EACzC,YAAY,KAAK;AACf,UAAM,GAAG;AAAA,EACX;AACF;;;ACJA,SAAS,eAAe;AACxB,eAAsB,mCAAmC,MAAM,QAAQ;AACrE,MAAI,QAAQ,eAAe,QAAQ,KAAK,gBAAgB,QAAQ,YAAY,MAAM;AAChF,YAAQ,MAAM,kDAAkD,KAAK,WAAW,EAAE;AAAA,EACpF;AACA,MAAI,QAAQ,aAAa,QAAQ,KAAK,cAAc,QAAQ,WAAW;AACrE,YAAQ,MAAM,gDAAgD,KAAK,SAAS,EAAE;AAAA,EAChF;AACA,MAAI,QAAQ,aAAa,aAAa,QAAQ,KAAK,gBAAgB,QAAQ,KAAK,iBAAiB,QAAQ,YAAY,WAAW;AAC9H,YAAQ,MAAM,mDAAmD,KAAK,YAAY,EAAE;AAAA,EACtF;AACF;;;ACRA,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,OAAM,SAAQ;AACrB,UAAM,SAAS,MAAM,qBAAa;AAClC,UAAM,aAAa,QAAQ,cAAc;AACzC,UAAM,YAAY,YAAY;AAC9B,UAAM,cAAc,YAAY;AAChC,UAAM,eAAe,aAAa;AAClC,WAAO,KAAK,QAAQ;AAAA,MAClB,WAAW;AAAA,QACT,MAAM;AAAA,QACN,aAAa;AAAA,QACb,GAAI,YAAY;AAAA,UACd,SAAS;AAAA,QACX,IAAI;AAAA,UACF,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,MACA,YAAY;AAAA,QACV,MAAM;AAAA,QACN,aAAa;AAAA,QACb,SAAS;AAAA,MACX;AAAA,MACA,SAAS;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,GAAI,eAAe,OAAO;AAAA,UACxB,WAAW;AAAA,QACb,IAAI,CAAC;AAAA,MACP;AAAA,MACA,aAAa;AAAA,QACX,MAAM;AAAA,QACN,SAAS,CAAC,cAAc;AAAA,QACxB,aAAa;AAAA,QACb,GAAI,eAAe,OAAO;AAAA,UACxB,SAAS,YAAY;AAAA,QACvB,IAAI;AAAA,UACF,WAAW;AAAA,QACb;AAAA,MACF;AAAA,MACA,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,aAAa;AAAA,QACb,GAAI,eAAe;AAAA,UACjB,SAAS;AAAA,QACX,IAAI,CAAC;AAAA,MACP;AAAA,IACF,CAAC,EAAE,MAAM,CAAC,aAAa,WAAW,YAAY,GAAG,gBAAgB,EAAE,MAAM,CAAC,eAAe,cAAc,GAAG,sBAAsB,EAAE,MAAM,UAAQ;AAG9I,UAAI,eAAe,QAAQ,KAAK,eAAe,QAAQ,KAAK,WAAW,MAAM;AAC3E,cAAM,IAAI,gBAAgB,qDAAqD;AAAA,MACjF;AACA,YAAM,kBAAkB,KAAK,eAAe;AAC5C,UAAI,oBAAoB,gBAAgB;AACtC,cAAM,IAAI,gBAAgB,kDAAkD;AAAA,MAC9E;AACA,YAAM,oBAAoB,KAAK,gBAAgB;AAE/C,UAAI,qBAAqB,QAAQ,oBAAoB,gBAAgB;AACnE,cAAM,IAAI,gBAAgB,kEAAkE;AAAA,MAC9F;AACA,aAAO;AAAA,IACT,CAAC,EAAE,WAAW,UAAQ,mCAAmC,MAAM,UAAU,CAAC;AAAA,EAC5E;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,kCAAyB;AACtD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,iBAAQA;;;AC1Ef,SAAS,WAAAD,gBAAe;AACxB,eAAsB,iCAAiC,MAAM,QAAQ;AACnE,MAAI,QAAQ,KAAK,eAAe,QAAQ,KAAK,gBAAgB,OAAO,KAAK,aAAa;AACpF,IAAAA,SAAQ,MAAM,kDAAkD,KAAK,WAAW,EAAE;AAAA,EACpF;AACA,MAAI,QAAQ,cAAc,QAAQ,KAAK,eAAe,OAAO,YAAY;AACvE,IAAAA,SAAQ,MAAM,iDAAiD,KAAK,UAAU,EAAE;AAAA,EAClF;AACF;;;ACRA,IAAMC,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,WAAW,WAAW;AAAA,MAChC,MAAM;AAAA,MACN,cAAc;AAAA,MACd,aAAa;AAAA,IACf,CAAC,EAAE,OAAO,OAAO;AAAA,MACf,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,IACf,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,gBAAgB;AAAA,EACpC;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,qCAA4B;AACzD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,iBAAQA;;;ACnBf,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO;AAAA,EACT;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,kCAAyB;AACtD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,cAAQA;;;ACXf,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO;AAAA,EACT;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,mCAA0B;AACvD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,eAAQA;;;ACXf,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,WAAW,WAAW;AAAA,MAChC,MAAM;AAAA,MACN,cAAc;AAAA,MACd,aAAa;AAAA,IACf,CAAC;AAAA,EACH;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,kCAAyB;AACtD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,cAAQA;;;ACff,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,OAAO,OAAO;AAAA,MACxB,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,IACf,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,eAAe;AAAA,EACnC;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,oCAA2B;AACxD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,gBAAQA;;;ACVf,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,QAAQ,YAAI,EAAE,QAAQ,WAAG,EAAE,QAAQ,WAAG,EAAE,QAAQ,aAAK,EAAE,QAAQ,cAAS,EAAE,cAAc;AAAA,EACtG;AAAA,EACA,SAAS,OAAM,SAAQ;AAAA,EAAC;AAC1B;AACA,IAAO,kBAAQA;;;ACRf,IAAMA,WAAU;AAAA,EACd,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,OAAM,SAAQ;AACrB,UAAM,SAAS,MAAM,qBAAa;AAClC,UAAM,cAAc,QAAQ,cAAc,KAAK;AAC/C,UAAM,aAAa,QAAQ,cAAc;AACzC,WAAO,KAAK,QAAQ;AAAA,MAClB,aAAa;AAAA,QACX,MAAM;AAAA,QACN,QAAQ,CAAAC,iBAAeA;AAAA,QACvB,GAAI,cAAc;AAAA,UAChB,SAAS;AAAA,QACX,IAAI;AAAA,UACF,cAAc;AAAA,QAChB;AAAA,QACA,aAAa;AAAA,MACf;AAAA,MACA,YAAY;AAAA,QACV,QAAQ,CAAAC,gBAAcA,YAAW,QAAQ,OAAO,EAAE;AAAA,QAClD,MAAM;AAAA,QACN,GAAI,aAAa;AAAA,UACf,SAAS;AAAA,QACX,IAAI;AAAA,UACF,cAAc;AAAA,QAChB;AAAA,QACA,aAAa;AAAA,MACf;AAAA,MACA,OAAO;AAAA,QACL,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,MACA,WAAW;AAAA,QACT,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,IACF,CAAC,EAAE,MAAM,CAAC,eAAe,cAAc,SAAS,WAAW,GAAG,gBAAgB,EAAE,QAAQ,eAAO,EAAE,QAAQ,cAAM,EAAE,MAAM,UAAQ;AAC7H,UAAI,CAAC,KAAK,WAAW,WAAW,UAAU,GAAG;AAC3C,cAAM,IAAI,gBAAgB,qCAAqC;AAAA,MACjE;AACA,aAAO;AAAA,IACT,CAAC,EAAE,WAAW,UAAQ,iCAAiC,MAAM,QAAQ,aAAa,CAAC,EAAE,cAAc;AAAA,EACrG;AAAA,EACA,SAAS,OAAM,SAAQ;AAAA,EAAC;AAC1B;AACA,IAAO,eAAQF;;;ACnDR,IAAMA,YAAU;AAAA,EACrB,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,QAAQ;AAAA,MAClB,UAAU;AAAA,QACR,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,MACA,cAAc;AAAA,QACZ,aAAa;AAAA,QACb,MAAM;AAAA,QACN,cAAc;AAAA,QACd,WAAW,CAAC,SAAS,UAAU;AAAA,MACjC;AAAA,MACA,OAAO;AAAA,QACL,aAAa;AAAA,QACb,MAAM;AAAA,QACN,cAAc;AAAA,QACd,WAAW;AAAA,QACX,SAAS;AAAA,MACX;AAAA,MACA,UAAU;AAAA,QACR,aAAa;AAAA,QACb,MAAM;AAAA,QACN,cAAc;AAAA,QACd,WAAW;AAAA,QACX,SAAS;AAAA,MACX;AAAA,MACA,mBAAmB;AAAA,QACjB,aAAa;AAAA,QACb,MAAM;AAAA,QACN,cAAc;AAAA,QACd,WAAW,CAAC,cAAc;AAAA,MAC5B;AAAA,MACA,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,MACA,aAAa;AAAA,QACX,SAAS;AAAA,QACT,SAAS,CAAC,YAAY,QAAQ;AAAA,MAChC;AAAA,MACA,SAAS;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,IACF,CAAC,EAAE,MAAM,CAAC,gBAAgB,UAAU,SAAS,GAAG,4BAA4B,EAAE,MAAM,CAAC,SAAS,YAAY,UAAU,qBAAqB,SAAS,GAAG,0BAA0B,EAAE,MAAM,UAAQ;AAC7L,UAAI,CAAC,KAAK,gBAAgB,CAAC,KAAK,OAAO;AACrC,cAAM,IAAI,MAAM,+DAA+D;AAAA,MACjF;AACA,UAAI,KAAK,YAAY,SAAS,CAAC,cAAc,KAAK,OAAO,GAAG;AAC1D,cAAM,IAAI,MAAM,wDAAwD;AAAA,MAC1E;AACA,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AAAA,EACA,SAAS,OAAM,SAAQ;AACrB,UAAMA,YAAU,MAAM,OAAO,+BAAsB;AACnD,UAAMA,UAAQ,QAAQ,IAAI;AAAA,EAC5B;AACF;AACA,IAAO,mBAAQA;;;ACjEf,IAAMG,QAAO;AAAA,EACX,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,UAAQ;AACf,WAAO,KAAK,QAAQ,gBAAQ,EAAE,cAAc;AAAA,EAC9C;AAAA,EACA,SAAS,OAAM,SAAQ;AAAA,EAAC;AAC1B;AACA,IAAO,qBAAQA;;;ACTf,SAAS,WAAAJ,gBAAe;AAExB,IAAI,YAAY;AAChB,eAAsB,0BAA0B;AAC9C,MAAI,WAAW;AACb,gBAAY;AACZ,UAAM,SAAS,qBAAU;AACzB,UAAM,kBAAkB,MAAM,SAAS;AACvC,QAAI,gBAAgB;AAClB,MAAAA,SAAQ,MAAM,mCAAmC,cAAc,GAAG;AAAA,IACpE;AAAA,EACF;AACF;;;ACZA,SAAS,WAAAA,gBAAe;AACxB,IAAIK,aAAY;AAChB,eAAsB,qBAAqB,MAAM;AAC/C,MAAIA,YAAW;AACb,IAAAA,aAAY;AAEZ,IAAAL,SAAQ,KAAK,qBAAqB,OAA2B,EAAE;AAC/D,IAAAA,SAAQ,QAAQ,IAAI,KAAK;AACzB,QAAIA,SAAQ,QAAQ,GAAG;AACrB,MAAAA,SAAQ,MAAM,4BAA4BA,SAAQ,UAAU,IAAI,UAAU,OAAO,GAAG;AAAA,IACtF;AACA,IAAAA,SAAQ,IAAI,EAAE;AAAA,EAChB;AACF;;;AnBHA,eAAsB,IAAI,OAAO,QAAQ,MAAM;AAC7C,QAAM,OAAO,MAAM,QAAQ,IAAI,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,MAAM,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,MAAM,EAAE,QAAQ,KAAK,EAAE,OAAO,WAAW;AAAA,IAC1H,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,IACb,OAAO;AAAA,EACT,CAAC,EAAE,cAAc,EAAE,WAAW,sBAAsB,IAAI,EAAE,WAAW,uBAAuB,EAAE,OAAO,EAAE,QAAQ;AAAA,IAC7G,SAAS;AAAA,IACT,SAAS,CAAC,cAAc;AAAA,IACxB,UAAU;AAAA,IACV,SAAS,OAAM,SAAQ;AACrB,aAAO,KAAK,QAAQ,YAAI,EAAE,QAAQ,kBAAU,EAAE,QAAQ,YAAI,EAAE,cAAc;AAAA,IAC5E;AAAA,IACA,SAAS,WAAS;AAAA,IAAC;AAAA,EACrB,CAAC,EAAE,KAAK,OAAO,KAAK,KAAK,SAAS;AAChC,QAAI,eAAe,kBAAkB;AACnC,MAAAA,SAAQ,MAAM,IAAI,OAAO;AACzB,MAAAA,SAAQ,MAAM,IAAI,KAAK;AAAA,IACzB,OAAO;AACL,UAAI,OAAO,eAAe,oBAAoB,OAAO;AACnD,cAAM;AAAA,MACR,OAAO;AACL,aAAK,SAAS;AACd,QAAAA,SAAQ,IAAI,EAAE;AACd,QAAAA,SAAQ,MAAM,GAAG;AAAA,MACnB;AAAA,IACF;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB,CAAC;AAGD,MAAI;AACF,WAAO,MAAM,KAAK,WAAW;AAAA,EAC/B,SAAS,KAAK;AACZ,QAAI,eAAe,kBAAkB;AACnC,MAAAA,SAAQ,MAAM,GAAG;AAAA,IACnB;AAAA,EACF;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 { 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}"]}