@ts-for-gir/cli 4.0.0-beta.2 → 4.0.0-beta.3
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/lib/commands/copy.d.ts +12 -0
- package/lib/commands/copy.js +80 -0
- package/lib/commands/copy.js.map +1 -0
- package/lib/commands/doc.js +1 -1
- package/lib/commands/doc.js.map +1 -1
- package/lib/commands/generate.js +2 -5
- package/lib/commands/generate.js.map +1 -1
- package/lib/commands/index.d.ts +1 -0
- package/lib/commands/index.js +1 -0
- package/lib/commands/index.js.map +1 -1
- package/lib/commands/list.js +8 -1
- package/lib/commands/list.js.map +1 -1
- package/lib/config.d.ts +13 -2
- package/lib/config.js +17 -8
- package/lib/config.js.map +1 -1
- package/lib/generation-handler.d.ts +2 -2
- package/lib/generation-handler.js +0 -1
- package/lib/generation-handler.js.map +1 -1
- package/lib/module-loader.d.ts +13 -10
- package/lib/module-loader.js +47 -58
- package/lib/module-loader.js.map +1 -1
- package/lib/start.js +2 -1
- package/lib/start.js.map +1 -1
- package/package.json +11 -11
- package/src/commands/copy.ts +94 -0
- package/src/commands/doc.ts +1 -1
- package/src/commands/generate.ts +3 -5
- package/src/commands/index.ts +1 -0
- package/src/commands/list.ts +9 -1
- package/src/config.ts +20 -10
- package/src/generation-handler.ts +2 -4
- package/src/module-loader.ts +54 -67
- package/src/start.ts +2 -1
package/lib/module-loader.js
CHANGED
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
* The ModuleLoader is used for reading gir modules from the file system and to solve conflicts (e.g. Gtk-3.0 and Gtk-4.0 would be a conflict)
|
|
3
3
|
*/
|
|
4
4
|
import inquirer from 'inquirer';
|
|
5
|
-
import glob from '
|
|
6
|
-
import { basename } from 'path';
|
|
7
|
-
import { readFile } from 'fs/promises';
|
|
5
|
+
import { glob } from 'glob';
|
|
6
|
+
import { basename, join } from 'path';
|
|
8
7
|
import { bold } from 'colorette';
|
|
9
|
-
import { parser } from '@gi.ts/parser';
|
|
10
8
|
import { DependencyManager, ResolveType, GirModule, Logger, splitModuleName, union, isIterable, WARN_NO_GIR_FILE_FOUND_FOR_PACKAGE, } from '@ts-for-gir/lib';
|
|
11
9
|
import { Config } from './config.js';
|
|
12
10
|
export class ModuleLoader {
|
|
@@ -130,7 +128,7 @@ export class ModuleLoader {
|
|
|
130
128
|
* @param girModulesGroupedMap
|
|
131
129
|
* @param packageName
|
|
132
130
|
*/
|
|
133
|
-
|
|
131
|
+
findGirFilesDependOnPackage(girModulesGroupedMap, packageName) {
|
|
134
132
|
const girModules = [];
|
|
135
133
|
for (const girModulesGrouped of Object.values(girModulesGroupedMap)) {
|
|
136
134
|
for (const girModuleResolvedBy of girModulesGrouped.modules) {
|
|
@@ -151,10 +149,10 @@ export class ModuleLoader {
|
|
|
151
149
|
* @param girModulesGroupedMap
|
|
152
150
|
* @param packageName
|
|
153
151
|
*/
|
|
154
|
-
|
|
152
|
+
findGirFilesDependOnPackages(girModulesGroupedMap, packageNames) {
|
|
155
153
|
let girModules = [];
|
|
156
154
|
for (const packageName of packageNames) {
|
|
157
|
-
girModules = girModules
|
|
155
|
+
girModules = [...girModules, ...this.findGirFilesDependOnPackage(girModulesGroupedMap, packageName)];
|
|
158
156
|
}
|
|
159
157
|
return girModules;
|
|
160
158
|
}
|
|
@@ -207,7 +205,7 @@ export class ModuleLoader {
|
|
|
207
205
|
while (goBack) {
|
|
208
206
|
versionAnswer = await this.askForVersionsPrompt(girModulesGrouped);
|
|
209
207
|
// Check modules that depend on the unchosen modules
|
|
210
|
-
wouldIgnoreDeps = this.
|
|
208
|
+
wouldIgnoreDeps = this.findGirFilesDependOnPackages(girModulesGroupedMap, versionAnswer.unselected);
|
|
211
209
|
// Do not check dependencies that have already been ignored
|
|
212
210
|
wouldIgnoreDeps = wouldIgnoreDeps.filter((dep) => !ignore.includes(dep.packageName));
|
|
213
211
|
ignoreDepsAnswer = await this.askIgnoreDepsPrompt(wouldIgnoreDeps);
|
|
@@ -289,11 +287,11 @@ export class ModuleLoader {
|
|
|
289
287
|
* is required so that all dependencies can be found internally when generating the dependency imports for the module .d.ts file
|
|
290
288
|
* @param girModules
|
|
291
289
|
*/
|
|
292
|
-
|
|
290
|
+
async initGirModules(girModules) {
|
|
293
291
|
for (const girModule of girModules) {
|
|
294
292
|
const result = {};
|
|
295
293
|
this.traverseDependencies(girModule.packageName, result);
|
|
296
|
-
girModule.module.
|
|
294
|
+
await girModule.module.initTransitiveDependencies(Object.values(result));
|
|
297
295
|
}
|
|
298
296
|
}
|
|
299
297
|
/**
|
|
@@ -306,10 +304,8 @@ export class ModuleLoader {
|
|
|
306
304
|
if (!dependency.exists || dependency.path === null) {
|
|
307
305
|
return null;
|
|
308
306
|
}
|
|
309
|
-
this.log.log(`
|
|
310
|
-
const
|
|
311
|
-
const result = parser.parseGir(fileContents);
|
|
312
|
-
const girModule = GirModule.load(result, this.config, this.dependencyManager);
|
|
307
|
+
this.log.log(`Loading ${dependency.packageName}...`);
|
|
308
|
+
const girModule = await GirModule.load(dependency, this.config, this.dependencyManager);
|
|
313
309
|
// Figure out transitive module dependencies
|
|
314
310
|
this.extendDependencyMapByGirModule(girModule);
|
|
315
311
|
return girModule;
|
|
@@ -362,6 +358,7 @@ export class ModuleLoader {
|
|
|
362
358
|
packageName: girModule.packageName,
|
|
363
359
|
module: girModule,
|
|
364
360
|
resolvedBy,
|
|
361
|
+
path: dependency.path,
|
|
365
362
|
};
|
|
366
363
|
girModules.push(addModule);
|
|
367
364
|
newModuleFound = true;
|
|
@@ -375,17 +372,12 @@ export class ModuleLoader {
|
|
|
375
372
|
};
|
|
376
373
|
}
|
|
377
374
|
// Figure out transitive module dependencies
|
|
378
|
-
this.
|
|
375
|
+
await this.initGirModules(girModules);
|
|
379
376
|
// Load girModules for dependencies
|
|
380
377
|
for (const girModule of girModules) {
|
|
381
378
|
// Load dependencies
|
|
382
379
|
const transitiveDependencies = girModule.module.transitiveDependencies;
|
|
383
380
|
if (transitiveDependencies.length > 0) {
|
|
384
|
-
for (const transitiveDependency of transitiveDependencies) {
|
|
385
|
-
if (ignoreDependencies.includes(transitiveDependency.packageName)) {
|
|
386
|
-
this.log.warn(`Load dependency "${transitiveDependency.packageName}" which is in the ignore list, if this should really be ignored also ignore "${girModule.packageName}"`);
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
381
|
await this.loadGirModules(transitiveDependencies, ignoreDependencies, girModules, ResolveType.DEPENDENCE, failedGirModules);
|
|
390
382
|
}
|
|
391
383
|
}
|
|
@@ -399,52 +391,43 @@ export class ModuleLoader {
|
|
|
399
391
|
* @param modules
|
|
400
392
|
* @param ignore
|
|
401
393
|
*/
|
|
402
|
-
async
|
|
403
|
-
const
|
|
404
|
-
for (let i = 0; i <
|
|
405
|
-
if (
|
|
406
|
-
|
|
407
|
-
let files = [];
|
|
408
|
-
for (const girDirectory of this.config.girDirectories) {
|
|
409
|
-
try {
|
|
410
|
-
files = files.concat(await glob(filename, { cwd: girDirectory }));
|
|
411
|
-
}
|
|
412
|
-
catch (error) {
|
|
413
|
-
this.log.warn(`Error on finding "${filename}" in "${girDirectory}"`, error);
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
let globModules = files.map((file) => basename(file, '.gir'));
|
|
417
|
-
// Filter out the ignored modules
|
|
418
|
-
globModules = globModules.filter((mod) => {
|
|
419
|
-
const isIgnored = ignore.includes(mod);
|
|
420
|
-
if (isIgnored) {
|
|
421
|
-
this.log.warn(`Ignore ${mod}`);
|
|
422
|
-
}
|
|
423
|
-
return !isIgnored;
|
|
424
|
-
});
|
|
425
|
-
globModules.forEach((mod) => foundModules.add(mod));
|
|
394
|
+
async findGirFiles(globPackageNames, ignore = []) {
|
|
395
|
+
const foundFiles = new Set();
|
|
396
|
+
for (let i = 0; i < globPackageNames.length; i++) {
|
|
397
|
+
if (!globPackageNames[i]) {
|
|
398
|
+
continue;
|
|
426
399
|
}
|
|
400
|
+
const filename = `${globPackageNames[i]}.gir`;
|
|
401
|
+
const pattern = this.config.girDirectories.map((girDirectory) => join(girDirectory, filename));
|
|
402
|
+
const ignoreGirs = ignore.map((girDirectory) => girDirectory + '.gir');
|
|
403
|
+
const files = await glob(pattern, { ignore: ignoreGirs });
|
|
404
|
+
files.forEach((file) => foundFiles.add(file));
|
|
427
405
|
}
|
|
428
|
-
return
|
|
406
|
+
return foundFiles;
|
|
429
407
|
}
|
|
430
|
-
|
|
431
|
-
|
|
408
|
+
async girFilePathToDependencies(girFiles) {
|
|
409
|
+
const dependencies = [];
|
|
410
|
+
for (const girFile of girFiles) {
|
|
411
|
+
const packageName = basename(girFile, '.gir');
|
|
432
412
|
const { namespace, version } = splitModuleName(packageName);
|
|
433
|
-
|
|
434
|
-
|
|
413
|
+
const dep = await this.dependencyManager.get(namespace, version);
|
|
414
|
+
dependencies.push(dep);
|
|
415
|
+
}
|
|
416
|
+
return dependencies;
|
|
435
417
|
}
|
|
436
418
|
/**
|
|
437
|
-
* Loads all found `packageNames`
|
|
419
|
+
* Loads all found `packageNames`
|
|
438
420
|
* @param girDirectories
|
|
439
421
|
* @param packageNames
|
|
422
|
+
* @param doNotAskForVersionOnConflict Set this to false if you want to get a prompt for each version conflict
|
|
440
423
|
*/
|
|
441
424
|
async getModulesResolved(packageNames, ignore = [], doNotAskForVersionOnConflict = true) {
|
|
442
|
-
const
|
|
425
|
+
const girFiles = await this.findGirFiles([...packageNames], ignore);
|
|
443
426
|
// Always require these because GJS does...
|
|
444
|
-
const GLib = this.dependencyManager.get('GLib', '2.0');
|
|
445
|
-
const Gio = this.dependencyManager.get('Gio', '2.0');
|
|
446
|
-
const GObject = this.dependencyManager.get('GObject', '2.0');
|
|
447
|
-
const dependencies = this.
|
|
427
|
+
const GLib = await this.dependencyManager.get('GLib', '2.0');
|
|
428
|
+
const Gio = await this.dependencyManager.get('Gio', '2.0');
|
|
429
|
+
const GObject = await this.dependencyManager.get('GObject', '2.0');
|
|
430
|
+
const dependencies = await this.girFilePathToDependencies(girFiles);
|
|
448
431
|
const { loaded, failed } = await this.loadGirModules([
|
|
449
432
|
GLib,
|
|
450
433
|
Gio,
|
|
@@ -464,16 +447,22 @@ export class ModuleLoader {
|
|
|
464
447
|
return { keep, grouped, ignore, failed };
|
|
465
448
|
}
|
|
466
449
|
/**
|
|
467
|
-
* Find modules
|
|
450
|
+
* Find modules
|
|
468
451
|
* @param girDirectories
|
|
469
452
|
* @param modules
|
|
470
453
|
*/
|
|
471
454
|
async getModules(modules, ignore = []) {
|
|
472
|
-
const
|
|
473
|
-
const dependencies = this.
|
|
455
|
+
const girFiles = await this.findGirFiles(modules, ignore);
|
|
456
|
+
const dependencies = await this.girFilePathToDependencies(girFiles);
|
|
474
457
|
const { loaded, failed } = await this.loadGirModules(dependencies, ignore);
|
|
475
458
|
const grouped = this.groupGirFiles(loaded);
|
|
476
459
|
return { grouped, loaded, failed: Array.from(failed) };
|
|
477
460
|
}
|
|
461
|
+
/** Start parsing the gir modules */
|
|
462
|
+
parse(girModules) {
|
|
463
|
+
for (const girModule of girModules) {
|
|
464
|
+
girModule.module.parse();
|
|
465
|
+
}
|
|
466
|
+
}
|
|
478
467
|
}
|
|
479
468
|
//# sourceMappingURL=module-loader.js.map
|
package/lib/module-loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../src/module-loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../src/module-loader.ts"],"names":[],"mappings":"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"}
|
package/lib/start.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import yargs from 'yargs';
|
|
3
3
|
import { hideBin } from 'yargs/helpers';
|
|
4
|
-
import { generate, list, doc } from './commands/index.js';
|
|
4
|
+
import { generate, list, doc, copy } from './commands/index.js';
|
|
5
5
|
import { Config } from './config.js';
|
|
6
6
|
void yargs(hideBin(process.argv))
|
|
7
7
|
.scriptName(Config.appName)
|
|
@@ -9,6 +9,7 @@ void yargs(hideBin(process.argv))
|
|
|
9
9
|
.usage(Config.usage)
|
|
10
10
|
.command(generate.command, generate.description, generate.builder, generate.handler)
|
|
11
11
|
.command(list.command, list.description, list.builder, list.handler)
|
|
12
|
+
.command(copy.command, copy.description, copy.builder, copy.handler)
|
|
12
13
|
.command(doc.command, doc.description, doc.builder, doc.handler)
|
|
13
14
|
.demandCommand(1)
|
|
14
15
|
.help().argv;
|
package/lib/start.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../src/start.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../src/start.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,KAAK,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC5B,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;KAC1B,MAAM,EAAE;KACR,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;KACnB,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;KACnF,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;KACnE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;KACnE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC;KAC/D,aAAa,CAAC,CAAC,CAAC;KAChB,IAAI,EAAE,CAAC,IAAI,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ts-for-gir/cli",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.3",
|
|
4
4
|
"description": "TypeScript type definition generator for GObject introspection GIR files",
|
|
5
5
|
"module": "lib/index.js",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -54,28 +54,28 @@
|
|
|
54
54
|
],
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@types/inquirer": "^9.0.7",
|
|
57
|
-
"@types/node": "^20.
|
|
57
|
+
"@types/node": "^20.12.7",
|
|
58
58
|
"@types/yargs": "^17.0.32",
|
|
59
|
-
"@typescript-eslint/eslint-plugin": "^7.
|
|
60
|
-
"@typescript-eslint/parser": "^7.
|
|
59
|
+
"@typescript-eslint/eslint-plugin": "^7.7.0",
|
|
60
|
+
"@typescript-eslint/parser": "^7.7.0",
|
|
61
61
|
"eslint": "^8.57.0",
|
|
62
62
|
"eslint-config-prettier": "^9.1.0",
|
|
63
63
|
"eslint-plugin-prettier": "^5.1.3",
|
|
64
64
|
"prettier": "^3.2.5",
|
|
65
65
|
"rimraf": "^5.0.5",
|
|
66
66
|
"ts-node": "^10.9.2",
|
|
67
|
-
"typescript": "^5.4.
|
|
67
|
+
"typescript": "^5.4.5"
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
70
|
"@gi.ts/parser": "^2.0.0",
|
|
71
|
-
"@ts-for-gir/generator-base": "^4.0.0-beta.
|
|
72
|
-
"@ts-for-gir/generator-html-doc": "^4.0.0-beta.
|
|
73
|
-
"@ts-for-gir/generator-typescript": "^4.0.0-beta.
|
|
74
|
-
"@ts-for-gir/lib": "^4.0.0-beta.
|
|
71
|
+
"@ts-for-gir/generator-base": "^4.0.0-beta.3",
|
|
72
|
+
"@ts-for-gir/generator-html-doc": "^4.0.0-beta.3",
|
|
73
|
+
"@ts-for-gir/generator-typescript": "^4.0.0-beta.3",
|
|
74
|
+
"@ts-for-gir/lib": "^4.0.0-beta.3",
|
|
75
75
|
"colorette": "^2.0.20",
|
|
76
76
|
"cosmiconfig": "^9.0.0",
|
|
77
|
-
"
|
|
78
|
-
"
|
|
77
|
+
"glob": "^10.3.12",
|
|
78
|
+
"inquirer": "^9.2.19",
|
|
79
79
|
"yargs": "^17.7.2"
|
|
80
80
|
}
|
|
81
81
|
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Everything you need for the `ts-for-gir copy` command is located here
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { Argv, BuilderCallback } from 'yargs'
|
|
6
|
+
import { copyFile, mkdir } from 'fs/promises'
|
|
7
|
+
import { basename, join } from 'path'
|
|
8
|
+
import { ModuleLoader } from '../module-loader.js'
|
|
9
|
+
import { Config } from '../config.js'
|
|
10
|
+
import { Logger, ERROR_NO_MODULES_FOUND } from '@ts-for-gir/lib'
|
|
11
|
+
|
|
12
|
+
import type { ConfigFlags, UserConfig, GirModuleResolvedBy } from '@ts-for-gir/lib'
|
|
13
|
+
|
|
14
|
+
const command = 'copy [modules..]'
|
|
15
|
+
|
|
16
|
+
const description = 'Scan for *.gir files and copy them to a new directory'
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
19
|
+
const builder: BuilderCallback<any, ConfigFlags> = (yargs: Argv<any>) => {
|
|
20
|
+
const optionNames = Object.keys(Config.copyOptions)
|
|
21
|
+
for (const optionName of optionNames) {
|
|
22
|
+
yargs = yargs.option(optionName, Config.copyOptions[optionName])
|
|
23
|
+
}
|
|
24
|
+
return yargs.example(examples) as Argv<ConfigFlags>
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const copyGirFile = async (config: UserConfig, depModule: GirModuleResolvedBy) => {
|
|
28
|
+
if (!depModule.path) {
|
|
29
|
+
Logger.danger(`- ${depModule.packageName} not found`)
|
|
30
|
+
return
|
|
31
|
+
}
|
|
32
|
+
if (!config.outdir) {
|
|
33
|
+
Logger.error(`outdir not found`)
|
|
34
|
+
return
|
|
35
|
+
}
|
|
36
|
+
const filename = basename(depModule.path)
|
|
37
|
+
const dest = join(config.outdir, filename)
|
|
38
|
+
if (depModule.path === dest) {
|
|
39
|
+
Logger.yellow(`Skip ${depModule.path}`)
|
|
40
|
+
return
|
|
41
|
+
}
|
|
42
|
+
Logger.success(`Copy ${depModule.path}`)
|
|
43
|
+
await copyFile(depModule.path, dest)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
47
|
+
const handler = async (args: ConfigFlags) => {
|
|
48
|
+
const config = await Config.load(args)
|
|
49
|
+
const generateConfig = Config.getOptionsGeneration(config)
|
|
50
|
+
const moduleLoader = new ModuleLoader(generateConfig)
|
|
51
|
+
const { grouped, failed } = await moduleLoader.getModules(config.modules, config.ignore)
|
|
52
|
+
const moduleGroups = Object.values(grouped)
|
|
53
|
+
if (Object.keys(grouped).length === 0) {
|
|
54
|
+
return Logger.error(ERROR_NO_MODULES_FOUND(config.girDirectories))
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (!config.outdir) {
|
|
58
|
+
Logger.error(`outdir not found`)
|
|
59
|
+
return
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
await mkdir(config.outdir, { recursive: true }).catch((err) => {
|
|
63
|
+
Logger.error(`Failed to copy gir files to ${config.outdir}: ${err}`)
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
for (const module of moduleGroups) {
|
|
67
|
+
for (const mod of module.modules) {
|
|
68
|
+
await copyGirFile(config, mod)
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
if (failed.length > 0) {
|
|
73
|
+
Logger.danger('\nDependencies not found:')
|
|
74
|
+
for (const fail of failed) {
|
|
75
|
+
Logger.white(`- ${fail}`)
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const examples: ReadonlyArray<[string, string?]> = [
|
|
81
|
+
[`${Config.appName} copy -o ./gir`, `Copy found *.gir files to ./gir`],
|
|
82
|
+
[
|
|
83
|
+
`${Config.appName} copy -g /usr/share/gir-1.0 --ignore=Gtk-3.0 xrandr-1.3 -o ./gir`,
|
|
84
|
+
'Copy all found *.gir files in /usr/share/gir-1.0 excluding Gtk-3.0 and xrandr-1.3 to ./gir',
|
|
85
|
+
],
|
|
86
|
+
]
|
|
87
|
+
|
|
88
|
+
export const copy = {
|
|
89
|
+
command,
|
|
90
|
+
description,
|
|
91
|
+
builder,
|
|
92
|
+
handler,
|
|
93
|
+
examples,
|
|
94
|
+
}
|
package/src/commands/doc.ts
CHANGED
|
@@ -28,7 +28,7 @@ const builder: BuilderCallback<any, ConfigFlags> = (yargs: Argv<any>) => {
|
|
|
28
28
|
const handler = async (args: ConfigFlags) => {
|
|
29
29
|
const config = await Config.load(args)
|
|
30
30
|
|
|
31
|
-
const generateConfig = Config.
|
|
31
|
+
const generateConfig = Config.getOptionsGeneration(config)
|
|
32
32
|
const moduleLoader = new ModuleLoader(generateConfig)
|
|
33
33
|
const { keep } = await moduleLoader.getModulesResolved(
|
|
34
34
|
config.modules,
|
package/src/commands/generate.ts
CHANGED
|
@@ -30,7 +30,7 @@ const builder: BuilderCallback<any, ConfigFlags> = (yargs: Argv<any>) => {
|
|
|
30
30
|
const handler = async (args: ConfigFlags) => {
|
|
31
31
|
const config = await Config.load(args)
|
|
32
32
|
|
|
33
|
-
const generateConfig = Config.
|
|
33
|
+
const generateConfig = Config.getOptionsGeneration(config)
|
|
34
34
|
const moduleLoader = new ModuleLoader(generateConfig)
|
|
35
35
|
const { keep } = await moduleLoader.getModulesResolved(
|
|
36
36
|
config.modules,
|
|
@@ -42,6 +42,8 @@ const handler = async (args: ConfigFlags) => {
|
|
|
42
42
|
return Logger.error(ERROR_NO_MODULES_FOUND(config.girDirectories))
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
moduleLoader.parse(keep)
|
|
46
|
+
|
|
45
47
|
const tsForGir = new GenerationHandler(generateConfig, GeneratorType.TYPES)
|
|
46
48
|
|
|
47
49
|
const girModules = Array.from(keep).map((girModuleResolvedBy) => girModuleResolvedBy.module)
|
|
@@ -77,10 +79,6 @@ class TypeScriptFormatter extends Formatter {
|
|
|
77
79
|
})
|
|
78
80
|
} catch (error) {
|
|
79
81
|
return Promise.resolve(input)
|
|
80
|
-
// TODO: Don't return invalid TypeScript, useful for debugging for now.
|
|
81
|
-
// console.error('Failed to format output...')
|
|
82
|
-
// console.error(input)
|
|
83
|
-
// throw error
|
|
84
82
|
}
|
|
85
83
|
}
|
|
86
84
|
}
|
package/src/commands/index.ts
CHANGED
package/src/commands/list.ts
CHANGED
|
@@ -25,7 +25,7 @@ const builder: BuilderCallback<any, ConfigFlags> = (yargs: Argv<any>) => {
|
|
|
25
25
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
26
26
|
const handler = async (args: ConfigFlags) => {
|
|
27
27
|
const config = await Config.load(args)
|
|
28
|
-
const generateConfig = Config.
|
|
28
|
+
const generateConfig = Config.getOptionsGeneration(config)
|
|
29
29
|
const moduleLoader = new ModuleLoader(generateConfig)
|
|
30
30
|
const { grouped, failed } = await moduleLoader.getModules(config.modules, config.ignore)
|
|
31
31
|
const moduleGroups = Object.values(grouped)
|
|
@@ -43,10 +43,16 @@ const handler = async (args: ConfigFlags) => {
|
|
|
43
43
|
(moduleGroup) => moduleGroup.modules[0].resolvedBy === ResolveType.DEPENDENCE,
|
|
44
44
|
)
|
|
45
45
|
|
|
46
|
+
Logger.info('\nSearch for gir files in:')
|
|
47
|
+
for (const dir of config.girDirectories) {
|
|
48
|
+
Logger.white(`- ${dir}`)
|
|
49
|
+
}
|
|
50
|
+
|
|
46
51
|
Logger.info('\nSelected Modules:')
|
|
47
52
|
for (const moduleGroup of byHandModules) {
|
|
48
53
|
for (const depModule of moduleGroup.modules) {
|
|
49
54
|
Logger.white(`- ${depModule.packageName}`)
|
|
55
|
+
Logger.gray(` - ${depModule.path}`)
|
|
50
56
|
}
|
|
51
57
|
}
|
|
52
58
|
|
|
@@ -55,6 +61,7 @@ const handler = async (args: ConfigFlags) => {
|
|
|
55
61
|
for (const moduleGroup of depModules) {
|
|
56
62
|
for (const depModule of moduleGroup.modules) {
|
|
57
63
|
Logger.white(`- ${depModule.packageName}`)
|
|
64
|
+
Logger.gray(`- ${depModule.path}`)
|
|
58
65
|
}
|
|
59
66
|
}
|
|
60
67
|
}
|
|
@@ -65,6 +72,7 @@ const handler = async (args: ConfigFlags) => {
|
|
|
65
72
|
Logger.white(`- ${moduleGroup.namespace}`)
|
|
66
73
|
for (const conflictModule of moduleGroup.modules) {
|
|
67
74
|
Logger.white(` - ${conflictModule.packageName}`)
|
|
75
|
+
Logger.gray(` - ${conflictModule.path}`)
|
|
68
76
|
}
|
|
69
77
|
}
|
|
70
78
|
}
|
package/src/config.ts
CHANGED
|
@@ -6,9 +6,10 @@ import { Options } from 'yargs'
|
|
|
6
6
|
import { cosmiconfig, Options as ConfigSearchOptions } from 'cosmiconfig'
|
|
7
7
|
import { join, extname, dirname, resolve } from 'path'
|
|
8
8
|
import { writeFile } from 'fs/promises'
|
|
9
|
+
import { existsSync } from 'fs'
|
|
9
10
|
import { merge, isEqual, Logger, APP_NAME, APP_USAGE, ERROR_CONFIG_EXTENSION_UNSUPPORTED } from '@ts-for-gir/lib'
|
|
10
11
|
|
|
11
|
-
import type { UserConfig, ConfigFlags, UserConfigLoadResult,
|
|
12
|
+
import type { UserConfig, ConfigFlags, UserConfigLoadResult, OptionsGeneration } from '@ts-for-gir/lib'
|
|
12
13
|
|
|
13
14
|
export class Config {
|
|
14
15
|
static appName = APP_NAME
|
|
@@ -175,6 +176,17 @@ export class Config {
|
|
|
175
176
|
static listOptions = {
|
|
176
177
|
modules: this.options.modules,
|
|
177
178
|
girDirectories: Config.options.girDirectories,
|
|
179
|
+
root: this.options.root,
|
|
180
|
+
ignore: Config.options.ignore,
|
|
181
|
+
configName: Config.options.configName,
|
|
182
|
+
verbose: Config.options.verbose,
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
static copyOptions = {
|
|
186
|
+
modules: this.options.modules,
|
|
187
|
+
girDirectories: Config.options.girDirectories,
|
|
188
|
+
root: this.options.root,
|
|
189
|
+
outdir: Config.options.outdir,
|
|
178
190
|
ignore: Config.options.ignore,
|
|
179
191
|
configName: Config.options.configName,
|
|
180
192
|
verbose: Config.options.verbose,
|
|
@@ -183,6 +195,7 @@ export class Config {
|
|
|
183
195
|
static docOptions = {
|
|
184
196
|
modules: this.options.modules,
|
|
185
197
|
girDirectories: Config.options.girDirectories,
|
|
198
|
+
root: this.options.root,
|
|
186
199
|
outdir: Config.options.outdir,
|
|
187
200
|
ignore: Config.options.ignore,
|
|
188
201
|
verbose: Config.options.verbose,
|
|
@@ -254,8 +267,8 @@ export class Config {
|
|
|
254
267
|
return configFile
|
|
255
268
|
}
|
|
256
269
|
|
|
257
|
-
public static
|
|
258
|
-
const generateConfig:
|
|
270
|
+
public static getOptionsGeneration(config: UserConfig): OptionsGeneration {
|
|
271
|
+
const generateConfig: OptionsGeneration = {
|
|
259
272
|
girDirectories: config.girDirectories,
|
|
260
273
|
root: config.root,
|
|
261
274
|
outdir: config.outdir,
|
|
@@ -420,14 +433,11 @@ function getDefaultGirDirectories(): string[] {
|
|
|
420
433
|
const girDirectories = [
|
|
421
434
|
'/usr/local/share/gir-1.0',
|
|
422
435
|
'/usr/share/gir-1.0',
|
|
436
|
+
'/usr/share/*/gir-1.0',
|
|
423
437
|
'/usr/share/gnome-shell',
|
|
424
438
|
'/usr/share/gnome-shell/gir-1.0',
|
|
425
|
-
'/usr/lib64/mutter
|
|
426
|
-
'/usr/
|
|
427
|
-
'/usr/lib64/mutter-12',
|
|
428
|
-
'/usr/lib/x86_64-linux-gnu/mutter-10',
|
|
429
|
-
'/usr/lib/x86_64-linux-gnu/mutter-11',
|
|
430
|
-
'/usr/lib/x86_64-linux-gnu/mutter-12',
|
|
439
|
+
'/usr/lib64/mutter-*',
|
|
440
|
+
'/usr/lib/x86_64-linux-gnu/mutter-*',
|
|
431
441
|
]
|
|
432
442
|
// NixOS and other distributions does not have a /usr/local/share directory.
|
|
433
443
|
// Instead, the nix store paths with Gir files are set as XDG_DATA_DIRS.
|
|
@@ -435,7 +445,7 @@ function getDefaultGirDirectories(): string[] {
|
|
|
435
445
|
const dataDirs = process.env['XDG_DATA_DIRS']?.split(':') || []
|
|
436
446
|
for (let dataDir of dataDirs) {
|
|
437
447
|
dataDir = join(dataDir, 'gir-1.0')
|
|
438
|
-
if (!girDirectories.includes(dataDir)) {
|
|
448
|
+
if (!girDirectories.includes(dataDir) && existsSync(dataDir)) {
|
|
439
449
|
girDirectories.push(dataDir)
|
|
440
450
|
}
|
|
441
451
|
}
|
|
@@ -12,14 +12,14 @@ import { GeneratorType, Generator } from '@ts-for-gir/generator-base'
|
|
|
12
12
|
import { TypeDefinitionGenerator } from '@ts-for-gir/generator-typescript'
|
|
13
13
|
// import { HtmlDocGenerator } from '@ts-for-gir/generator-html-doc'
|
|
14
14
|
|
|
15
|
-
import type {
|
|
15
|
+
import type { OptionsGeneration, NSRegistry } from '@ts-for-gir/lib'
|
|
16
16
|
|
|
17
17
|
export class GenerationHandler {
|
|
18
18
|
log: Logger
|
|
19
19
|
generator: Generator
|
|
20
20
|
|
|
21
21
|
constructor(
|
|
22
|
-
private readonly config:
|
|
22
|
+
private readonly config: OptionsGeneration,
|
|
23
23
|
type: GeneratorType,
|
|
24
24
|
) {
|
|
25
25
|
this.log = new Logger(config.verbose, 'GenerationHandler')
|
|
@@ -61,8 +61,6 @@ export class GenerationHandler {
|
|
|
61
61
|
|
|
62
62
|
for (const girModule of girModules) {
|
|
63
63
|
this.log.log(` - ${girModule.packageName} ...`)
|
|
64
|
-
girModule.start(girModules)
|
|
65
|
-
|
|
66
64
|
await this.generator.generate(registry, girModule)
|
|
67
65
|
}
|
|
68
66
|
|