@contentstorage/core 0.5.0 → 0.6.1

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.
@@ -10,7 +10,35 @@ import { CONTENTSTORAGE_CONFIG } from '../contentstorage-config.js';
10
10
  import { jsonToTS } from '../type-generation/index.js';
11
11
  export async function generateTypes() {
12
12
  console.log(chalk.blue('Starting type generation...'));
13
- const config = await loadConfig();
13
+ const args = process.argv.slice(2);
14
+ const cliConfig = {};
15
+ args.forEach((arg) => {
16
+ if (arg.startsWith('--')) {
17
+ const [key, value] = arg.substring(2).split('=');
18
+ if (key && value) {
19
+ const sanitizedValue = value
20
+ .replace(/^"(.*)"$/, '$1')
21
+ .replace(/^'(.*)'$/, '$1');
22
+ if (key === 'lang') {
23
+ cliConfig.languageCodes = [sanitizedValue];
24
+ }
25
+ else if (key === 'content-key') {
26
+ cliConfig.contentKey = sanitizedValue;
27
+ }
28
+ else if (key === 'output') {
29
+ cliConfig.typesOutputFile = sanitizedValue;
30
+ }
31
+ }
32
+ }
33
+ });
34
+ let fileConfig = {};
35
+ try {
36
+ fileConfig = await loadConfig();
37
+ }
38
+ catch {
39
+ console.log(chalk.yellow('Could not load a configuration file. Proceeding with CLI arguments.'));
40
+ }
41
+ const config = { ...fileConfig, ...cliConfig };
14
42
  if (!config.typesOutputFile) {
15
43
  console.error(chalk.red.bold("Configuration error: 'typesOutputFile' is missing."));
16
44
  process.exit(1);
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@contentstorage/core",
3
3
  "author": "Kaido Hussar <kaidohus@gmail.com>",
4
4
  "homepage": "https://contentstorage.app",
5
- "version": "0.5.0",
5
+ "version": "0.6.1",
6
6
  "type": "module",
7
7
  "description": "Fetch content from contentstorage and generate TypeScript types",
8
8
  "module": "dist/index.js",