@ts-for-gir/generator-typescript 3.0.0-beta.12 → 3.0.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.
@@ -1,25 +1,34 @@
1
1
  import { Generator } from '@ts-for-gir/generator-base';
2
- import { Logger } from '@ts-for-gir/lib';
3
- import type { GenerateConfig, InheritanceTable, GirModulesGrouped, GirModule } from '@ts-for-gir/lib';
2
+ import { Logger, TemplateProcessor, Dependency, DependencyManager, PackageDataParser } from '@ts-for-gir/lib';
3
+ import { GenerateConfig, GirClassElement, GirCallableParamElement, GirSignalElement, GirEnumElement, GirAliasElement, GirInterfaceElement, GirUnionElement, GirModulesGrouped, GirRecordElement, GirBitfieldElement, GirInstanceParameter, GirModule, TsGenericParameter, TsType, TsDoc, TsFunction, TsCallback, TsSignal, TsMember, TsVar, TsProperty, TsParameter } from '@ts-for-gir/lib';
4
4
  export declare class TypeDefinitionGenerator implements Generator {
5
- protected readonly config: GenerateConfig;
5
+ protected readonly _config: GenerateConfig;
6
6
  protected log: Logger;
7
- constructor(config: GenerateConfig);
7
+ protected dependencyManager: DependencyManager;
8
+ protected packageData?: PackageDataParser;
9
+ /** Override config, used to override the config temporarily to generate both ESM and CJS for NPM packages */
10
+ protected overrideConfig: Partial<GenerateConfig>;
11
+ /** Get the current config, including the override config */
12
+ protected get config(): GenerateConfig;
13
+ /**
14
+ * @param _config The config to use without the override config
15
+ */
16
+ constructor(_config: GenerateConfig);
8
17
  /**
9
18
  *
10
19
  * @param namespace E.g. 'Gtk'
11
20
  * @param packageName E.g. 'Gtk-3.0'
12
21
  * @param asExternType Currently only used for node type imports
13
22
  */
14
- private generateModuleDependenciesImport;
15
- private generateExport;
16
- private generateProperty;
17
- private generateProperties;
18
- private generateVariableCallbackType;
19
- private generateVariable;
20
- private generateType;
21
- private generateTypes;
22
- private generateGenericValues;
23
+ protected generateModuleDependenciesImport(packageName: string): string[];
24
+ protected generateExport(type: string, name: string, definition: string, indentCount?: number): string;
25
+ protected generateProperty(tsProp: TsProperty, onlyStatic: boolean, namespace: string, indentCount?: number): string[];
26
+ protected generateProperties(tsProps: TsProperty[], onlyStatic: boolean, namespace: string, comment: string, indentCount?: number): string[];
27
+ protected generateVariableCallbackType(tsType: TsType, namespace: string): string;
28
+ protected generateVariable(tsVar: TsProperty | TsVar, namespace: string, indentCount?: number, allowCommentOut?: boolean): string;
29
+ protected generateType(tsType: TsType, namespace: string, generateNullable?: boolean): string;
30
+ protected generateTypes(tsTypes: TsType[], namespace: string): string;
31
+ protected generateGenericValues(tsType: TsType, namespace: string): string;
23
32
  /**
24
33
  * Generates signals from all properties of a base class
25
34
  * TODO: Build new `GirSignalElement`s in `gir-module.ts` instead of generate the strings directly
@@ -28,16 +37,16 @@ export declare class TypeDefinitionGenerator implements Generator {
28
37
  * @param indentCount
29
38
  * @returns
30
39
  */
31
- private generateClassPropertySignals;
32
- private generateInParameters;
33
- private generateSignals;
40
+ protected generateClassPropertySignals(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
41
+ protected generateInParameters(inParams: GirCallableParamElement[], instanceParameters: GirInstanceParameter[], namespace: string): string[];
42
+ protected generateSignals(girSignals: GirSignalElement[], girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
34
43
  /**
35
44
  * Adds documentation comments
36
45
  * @see https://github.com/microsoft/tsdoc
37
46
  * @param lines
38
47
  * @param indentCount
39
48
  */
40
- private addTSDocCommentLines;
49
+ protected addTSDocCommentLines(lines: string[], indentCount?: number): string[];
41
50
  /**
42
51
  * Adds the documentation as comments
43
52
  * @see https://github.com/microsoft/tsdoc
@@ -46,70 +55,84 @@ export declare class TypeDefinitionGenerator implements Generator {
46
55
  * @param overwriteDoc
47
56
  * @returns
48
57
  */
49
- private addGirDocComment;
58
+ protected addGirDocComment(tsDoc: TsDoc | undefined, indentCount?: number, overwriteDoc?: Partial<TsDoc>): string[];
50
59
  /**
51
60
  * Adds an info comment, is used for debugging the generated types
52
61
  * @param comment
53
62
  * @param indentCount
54
63
  * @returns
55
64
  */
56
- private addInfoComment;
65
+ protected addInfoComment(comment?: string, indentCount?: number): string[];
57
66
  /**
58
67
  * Adds an inline info comment, is used for debugging the generated types
59
68
  * @param comment
60
69
  * @param indentCount
61
70
  * @returns
62
71
  */
63
- private addInlineInfoComment;
64
- private mergeDescs;
65
- private generateParameter;
72
+ protected addInlineInfoComment(comment?: string, indentCount?: number): string[];
73
+ protected mergeDescs(descs: string[], comment?: string, indentCount?: number): string[];
74
+ protected generateParameter(tsParam: TsParameter, namespace: string): string[];
66
75
  /**
67
76
  *
68
77
  * @param tsGenerics
69
78
  * @param isOut If this generic parameters are out do only generate the type parameter names
70
79
  * @returns
71
80
  */
72
- private generateGenericParameters;
73
- private generateOutParameterReturn;
74
- private generateFunctionReturn;
75
- private generateFunction;
76
- private generateFunctions;
77
- private generateCallbackInterface;
78
- private generateCallbackInterfaces;
79
- private generateEnumeration;
80
- private generateEnumerationMember;
81
- private generateConstant;
82
- private generateAlias;
83
- private generateConstructPropsInterface;
84
- private generateClassFields;
85
- private generateClassProperties;
86
- private generateClassMethods;
87
- private generateClassConstructors;
81
+ protected generateGenericParameters(tsGenerics?: TsGenericParameter[], isOut?: boolean): string;
82
+ protected generateOutParameterReturn(girParam: GirCallableParamElement, namespace: string): string[];
83
+ protected generateFunctionReturn(tsFunction: TsFunction | TsCallback | TsSignal, namespace: string): string;
84
+ protected generateFunction(tsFunction: TsFunction | TsCallback | TsSignal | undefined,
85
+ /** If true only generate static functions otherwise generate only non static functions */
86
+ onlyStatic: boolean, namespace: string, indentCount?: number, overloads?: boolean): string[];
87
+ protected generateFunctions(tsFunctions: TsFunction[], onlyStatic: boolean, namespace: string, indentCount?: number, comment?: string): string[];
88
+ protected generateCallbackInterface(tsCallback: TsCallback | TsSignal, namespace: string, indentCount?: number, classModuleName?: string): string[];
89
+ protected generateCallbackInterfaces(tsCallbacks: Array<TsCallback | TsSignal>, namespace: string, indentCount: number | undefined, classModuleName: string, comment?: string): string[];
90
+ protected generateEnumeration(girEnum: GirEnumElement | GirBitfieldElement, indentCount?: number): string[];
91
+ protected generateEnumerationMember(tsMember: TsMember, indentCount?: number): string[];
92
+ protected generateConstant(tsConst: TsVar, namespace: string, indentCount?: number): string[];
93
+ protected generateAlias(girAlias: GirAliasElement, namespace: string, indentCount?: number): string[] | "";
94
+ protected generateConstructPropsInterface(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
95
+ protected generateClassFields(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, onlyStatic: boolean, namespace: string, indentCount?: number): string[];
96
+ protected generateClassProperties(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, onlyStatic: boolean, namespace: string, indentCount?: number): string[];
97
+ protected generateClassMethods(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, onlyStatic: boolean, namespace: string, indentCount?: number): string[];
98
+ protected generateClassConstructors(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
88
99
  /**
89
100
  * Instance methods, vfunc_ prefix
90
101
  * @param girClass
91
102
  */
92
- private generateClassVirtualMethods;
93
- private generateClassSignalInterfaces;
94
- private generateClassSignals;
95
- private generateClassModules;
103
+ protected generateClassVirtualMethods(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
104
+ protected generateClassSignalInterfaces(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
105
+ protected generateClassSignals(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string): string[];
106
+ protected generateClassModules(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string, indentCount?: number): string[];
96
107
  /**
97
108
  * In Typescript, interfaces and classes can have the same name,
98
109
  * so we use this to generate interfaces with the same name to implement multiple inheritance
99
110
  * @param girClass
100
111
  * @param namespace
101
112
  */
102
- private generateImplementationInterface;
113
+ protected generateImplementationInterface(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string): string[];
103
114
  /**
104
115
  * Represents a record, GObject class or interface as a Typescript class
105
116
  * @param girClass
106
117
  * @param namespace
107
118
  */
108
- private generateClass;
109
- private exportModuleJS;
110
- private exportModuleTS;
111
- private exportModule;
112
- private exportGjs;
113
- private exportNodeGtk;
114
- start(girModules: GirModule[], girModulesGrouped?: GirModulesGrouped[], inheritanceTable?: InheritanceTable): Promise<void>;
119
+ protected generateClass(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, namespace: string): string[];
120
+ protected exportModuleJS(moduleTemplateProcessor: TemplateProcessor, girModule: GirModule): Promise<void>;
121
+ protected exportModuleAmbientTS(moduleTemplateProcessor: TemplateProcessor, girModule: GirModule): Promise<void>;
122
+ protected exportModuleImportTS(moduleTemplateProcessor: TemplateProcessor, girModule: GirModule): Promise<void>;
123
+ protected exportModuleTS(moduleTemplateProcessor: TemplateProcessor, girModule: GirModule): Promise<void>;
124
+ protected exportNPMPackage(moduleTemplateProcessor: TemplateProcessor, girModuleImportName: string): Promise<void>;
125
+ protected exportNPMPackageJson(moduleTemplateProcessor: TemplateProcessor): Promise<void>;
126
+ protected exportNPMReadme(moduleTemplateProcessor: TemplateProcessor, girModuleImportName: string): Promise<void>;
127
+ protected exportDocTSConfig(moduleTemplateProcessor: TemplateProcessor): Promise<void>;
128
+ protected exportModule(girModule: GirModule, girModules: GirModule[], girModulesGrouped: GirModulesGrouped[]): Promise<void>;
129
+ /**
130
+ * We build both module types if we build an NPM package,
131
+ * so we need to switch the module type and use the default noNamespace value for the module type
132
+ */
133
+ protected setOverrideConfigForOtherModuleType(): void;
134
+ protected resetOverrideConfig(): void;
135
+ protected exportGjs(dependencies: Dependency[], girModules: GirModule[], girModulesGrouped: GirModulesGrouped[]): Promise<void>;
136
+ protected exportNodeGtk(dependencies: Dependency[], girModules: GirModule[], girModulesGrouped: GirModulesGrouped[]): Promise<void>;
137
+ start(girModules: GirModule[], girModulesGrouped?: GirModulesGrouped[]): Promise<void>;
115
138
  }
@@ -1,10 +1,25 @@
1
- import { Logger, generateIndent, removeNamespace, removeClassModule, girElementIsIntrospectable, typesContainsOptional, typesContainsNullable, TemplateProcessor, NO_TSDATA, WARN_NOT_FOUND_DEPENDENCY_GIR_FILE, WARN_IGNORE_MULTIPLE_CALLBACKS, WARN_IGNORE_MULTIPLE_FUNC_DESC, } from '@ts-for-gir/lib';
1
+ import { Logger, generateIndent, removeNamespace, removeClassModule, girElementIsIntrospectable, typesContainsOptional, typesContainsNullable, TemplateProcessor, DependencyManager, NO_TSDATA, PackageDataParser, WARN_NOT_FOUND_DEPENDENCY_GIR_FILE, WARN_IGNORE_MULTIPLE_CALLBACKS, WARN_IGNORE_MULTIPLE_FUNC_DESC, } from '@ts-for-gir/lib';
2
2
  export class TypeDefinitionGenerator {
3
- config;
3
+ _config;
4
4
  log;
5
- constructor(config) {
6
- this.config = config;
7
- this.log = new Logger(config.environment, config.verbose, TypeDefinitionGenerator.name);
5
+ dependencyManager;
6
+ packageData;
7
+ /** Override config, used to override the config temporarily to generate both ESM and CJS for NPM packages */
8
+ overrideConfig = {};
9
+ /** Get the current config, including the override config */
10
+ get config() {
11
+ return { ...this._config, ...this.overrideConfig };
12
+ }
13
+ /**
14
+ * @param _config The config to use without the override config
15
+ */
16
+ constructor(_config) {
17
+ this._config = _config;
18
+ this.log = new Logger(this.config.environment, this.config.verbose, TypeDefinitionGenerator.name);
19
+ this.dependencyManager = DependencyManager.getInstance(this.config);
20
+ if (this.config.package) {
21
+ this.packageData = new PackageDataParser(this.config);
22
+ }
8
23
  }
9
24
  /**
10
25
  *
@@ -12,26 +27,25 @@ export class TypeDefinitionGenerator {
12
27
  * @param packageName E.g. 'Gtk-3.0'
13
28
  * @param asExternType Currently only used for node type imports
14
29
  */
15
- generateModuleDependenciesImport(namespace, packageName, asExternType = false) {
30
+ generateModuleDependenciesImport(packageName) {
16
31
  const def = [];
17
- const sas = !this.config.noNamespace && packageName !== 'Gjs' ? '' : '* as ';
18
- if (this.config.buildType === 'lib') {
19
- def.push(`import type ${sas}${namespace} from './${packageName}.js';`);
20
- }
21
- else if (this.config.buildType === 'types') {
22
- if (asExternType) {
23
- // def.push(`/// <reference types="${packageName}" />`)
24
- def.push(`import ${namespace} from "${packageName}.js"`);
25
- }
26
- else {
27
- def.push(`/// <reference path="${packageName}.d.ts" />`);
28
- def.push(`import type ${sas}${namespace} from './${packageName}.js';`);
29
- }
30
- }
32
+ const dep = this.dependencyManager.get(packageName);
33
+ // if (this.config.package) {
34
+ // if (this.config.buildType === 'types') {
35
+ // // See https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html
36
+ // def.push(`/// <reference types="${this.config.npmScope}/${dep.importName}" />`)
37
+ // }
38
+ // } else {
39
+ // if (this.config.buildType === 'types') {
40
+ // // See https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html
41
+ // def.push(`/// <reference path="${dep.importName}.d.ts" />`)
42
+ // }
43
+ // }
44
+ def.push(dep.importDef);
31
45
  return def;
32
46
  }
33
47
  generateExport(type, name, definition, indentCount = 0) {
34
- const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
48
+ const exp = !this.config.noNamespace ? '' : 'export ';
35
49
  const indent = generateIndent(indentCount);
36
50
  if (!definition.startsWith(':')) {
37
51
  definition = ' ' + definition;
@@ -417,7 +431,7 @@ export class TypeDefinitionGenerator {
417
431
  let exportStr = '';
418
432
  // `tsType === 'function'` are a global methods which can be exported
419
433
  if (isGlobal) {
420
- exportStr = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
434
+ exportStr = !this.config.noNamespace ? '' : 'export ';
421
435
  }
422
436
  const returnType = this.generateFunctionReturn(tsFunction, namespace);
423
437
  let retSep = '';
@@ -525,7 +539,7 @@ export class TypeDefinitionGenerator {
525
539
  desc.push(...this.addGirDocComment(tsConst.doc, indentCount));
526
540
  }
527
541
  const indent = generateIndent(indentCount);
528
- const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
542
+ const exp = !this.config.noNamespace ? '' : 'export ';
529
543
  const varDesc = this.generateVariable(tsConst, namespace, 0);
530
544
  desc.push(`${indent}${exp}const ${varDesc}`);
531
545
  return desc;
@@ -540,7 +554,7 @@ export class TypeDefinitionGenerator {
540
554
  return desc;
541
555
  }
542
556
  const indent = generateIndent(indentCount);
543
- const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
557
+ const exp = !this.config.noNamespace ? '' : 'export ';
544
558
  const type = removeNamespace(girAlias._tsData.type, namespace);
545
559
  desc.push(`${indent}${exp}type ${girAlias._tsData.name} = ${type}`);
546
560
  return desc;
@@ -554,7 +568,7 @@ export class TypeDefinitionGenerator {
554
568
  return def;
555
569
  }
556
570
  const indent = generateIndent(indentCount);
557
- const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
571
+ const exp = !this.config.noNamespace ? '' : 'export ';
558
572
  let ext = '';
559
573
  if (girClass._tsData.inheritConstructPropInterfaceNames.length) {
560
574
  const constructPropInterfaceNames = girClass._tsData.inheritConstructPropInterfaceNames.map((n) => removeNamespace(n, namespace));
@@ -660,7 +674,7 @@ export class TypeDefinitionGenerator {
660
674
  if (!girClass._tsData)
661
675
  return def;
662
676
  const indent = generateIndent(indentCount);
663
- const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
677
+ const exp = !this.config.noNamespace ? '' : 'export ';
664
678
  // Signal interfaces
665
679
  bodyDef.push(...this.generateClassSignalInterfaces(girClass, namespace, indentCount + 1));
666
680
  // Properties interface for construction
@@ -763,28 +777,90 @@ export class TypeDefinitionGenerator {
763
777
  }
764
778
  async exportModuleJS(moduleTemplateProcessor, girModule) {
765
779
  const template = 'module.js';
780
+ let target = `${girModule.importName}.js`;
781
+ if (this.overrideConfig.moduleType) {
782
+ if (this.overrideConfig.moduleType === 'cjs') {
783
+ target = `${girModule.importName}.cjs`;
784
+ }
785
+ else {
786
+ target = `${girModule.importName}.mjs`;
787
+ }
788
+ }
766
789
  if (this.config.outdir) {
767
- await moduleTemplateProcessor.create(template, this.config.outdir, `${girModule.packageName}.js`);
790
+ await moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, undefined, undefined, this.config);
768
791
  }
769
792
  else {
770
- const moduleContent = moduleTemplateProcessor.load(template);
771
- this.log.log(moduleContent);
793
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
794
+ this.log.log(append + prepend);
795
+ }
796
+ }
797
+ async exportModuleAmbientTS(moduleTemplateProcessor, girModule) {
798
+ const template = 'module-ambient.d.ts';
799
+ let target = `${girModule.importName}-ambient.d.ts`;
800
+ if (this.overrideConfig.moduleType) {
801
+ if (this.overrideConfig.moduleType === 'cjs') {
802
+ target = `${girModule.importName}-ambient.d.cts`;
803
+ }
804
+ else {
805
+ target = `${girModule.importName}-ambient.d.mts`;
806
+ }
807
+ }
808
+ if (this.config.outdir) {
809
+ await moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, undefined, undefined, this.config);
810
+ }
811
+ else {
812
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
813
+ this.log.log(append + prepend);
814
+ }
815
+ }
816
+ async exportModuleImportTS(moduleTemplateProcessor, girModule) {
817
+ const template = 'module-import.d.ts';
818
+ let target = `${girModule.importName}-import.d.ts`;
819
+ if (this.overrideConfig.moduleType) {
820
+ if (this.overrideConfig.moduleType === 'cjs') {
821
+ target = `${girModule.importName}-import.d.cts`;
822
+ }
823
+ else {
824
+ target = `${girModule.importName}-import.d.mts`;
825
+ }
826
+ }
827
+ if (this.config.outdir) {
828
+ await moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, undefined, undefined, this.config);
829
+ }
830
+ else {
831
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
832
+ this.log.log(append + prepend);
772
833
  }
773
834
  }
774
835
  async exportModuleTS(moduleTemplateProcessor, girModule) {
775
836
  const template = 'module.d.ts';
837
+ let explicitTemplate = `${girModule.importName}.d.ts`;
838
+ let target = `${girModule.importName}.d.ts`;
839
+ if (this.overrideConfig.moduleType) {
840
+ if (this.overrideConfig.moduleType === 'cjs') {
841
+ target = `${girModule.importName}.d.cts`;
842
+ }
843
+ else {
844
+ target = `${girModule.importName}.d.mts`;
845
+ }
846
+ }
847
+ // Remove `node-` prefix for node environment
848
+ if (this.config.environment === 'node' && explicitTemplate.startsWith('node-')) {
849
+ explicitTemplate = explicitTemplate.substring(5);
850
+ }
776
851
  const out = [];
777
852
  out.push(...this.addTSDocCommentLines([girModule.packageName]));
778
853
  out.push('');
854
+ // if (this.config.environment === 'gjs') {
855
+ // out.push(...this.generateModuleDependenciesImport('Gjs')
856
+ // }
779
857
  // Module dependencies as type references or imports
780
- if (this.config.environment === 'gjs') {
781
- out.push(...this.generateModuleDependenciesImport('Gjs', 'Gjs', false));
782
- }
858
+ // TODO: Move to template
783
859
  for (const dependency of girModule.transitiveDependencies) {
784
860
  // Don't reference yourself as a dependency
785
861
  if (girModule.packageName !== dependency.packageName) {
786
862
  if (dependency.exists) {
787
- out.push(...this.generateModuleDependenciesImport(dependency.namespace, dependency.packageName, false));
863
+ out.push(...this.generateModuleDependenciesImport(dependency.packageName));
788
864
  }
789
865
  else {
790
866
  out.push(`// WARN: Dependency not found: '${dependency.packageName}'`);
@@ -794,11 +870,7 @@ export class TypeDefinitionGenerator {
794
870
  }
795
871
  // START Namespace
796
872
  {
797
- if (this.config.buildType === 'types') {
798
- out.push('');
799
- out.push(`declare namespace ${girModule.namespace} {`);
800
- }
801
- else if (!this.config.noNamespace) {
873
+ if (!this.config.noNamespace) {
802
874
  out.push('');
803
875
  out.push(`export namespace ${girModule.namespace} {`);
804
876
  }
@@ -835,12 +907,13 @@ export class TypeDefinitionGenerator {
835
907
  if (girIface._module) {
836
908
  out.push(...this.generateClass(girIface, girIface._module.namespace));
837
909
  }
838
- // Extra interfaces if a template with the module name (e.g. '../templates/GObject-2.0.d.ts') is found
910
+ // Extra interfaces if a template with the module name (e.g. '../templates/gobject-2-0.d.ts') is found
839
911
  // E.g. used for GObject-2.0 to help define GObject classes in js;
840
912
  // these aren't part of gi.
841
- if (moduleTemplateProcessor.exists(`${girModule.packageName}.d.ts`)) {
842
- const templatePatches = await moduleTemplateProcessor.load(`${girModule.packageName}.d.ts`);
843
- out.push(templatePatches);
913
+ if (moduleTemplateProcessor.exists(explicitTemplate)) {
914
+ const { append, prepend } = await moduleTemplateProcessor.load(explicitTemplate, {}, this.config);
915
+ // TODO push prepend and append to the right position
916
+ out.push(append + prepend);
844
917
  }
845
918
  if (girModule.ns.class)
846
919
  for (const gitClass of girModule.ns.class)
@@ -925,80 +998,208 @@ export class TypeDefinitionGenerator {
925
998
  // END Namespace
926
999
  if (!this.config.noNamespace) {
927
1000
  out.push(`}`);
928
- }
929
- if (!this.config.noNamespace) {
1001
+ out.push('');
930
1002
  out.push(`export default ${girModule.namespace};`);
931
1003
  }
932
1004
  const outResult = out.join('\n'); // End of file
933
1005
  if (this.config.outdir) {
934
- await moduleTemplateProcessor.create(template, this.config.outdir, `${girModule.packageName}.d.ts`, outResult);
1006
+ await moduleTemplateProcessor.create(template, this.config.outdir, target, true, outResult, {}, this.config);
935
1007
  }
936
1008
  else {
937
- const moduleContent = await moduleTemplateProcessor.load(template);
938
- this.log.log(moduleContent + '\n' + outResult);
1009
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
1010
+ this.log.log(append + '\n' + outResult + prepend);
939
1011
  }
940
1012
  }
941
- async exportModule(girModule) {
1013
+ async exportNPMPackage(moduleTemplateProcessor, girModuleImportName) {
1014
+ await this.exportNPMPackageJson(moduleTemplateProcessor);
1015
+ await this.exportNPMReadme(moduleTemplateProcessor, girModuleImportName);
1016
+ await this.exportDocTSConfig(moduleTemplateProcessor);
1017
+ }
1018
+ async exportNPMPackageJson(moduleTemplateProcessor) {
1019
+ const template = 'package.json';
1020
+ if (this.config.outdir) {
1021
+ await moduleTemplateProcessor.create(template, this.config.outdir, template, // output filename
1022
+ undefined, undefined, {}, this.config);
1023
+ }
1024
+ else {
1025
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
1026
+ this.log.log(append + prepend);
1027
+ }
1028
+ }
1029
+ async exportNPMReadme(moduleTemplateProcessor, girModuleImportName) {
1030
+ // E.g. `README-GJS.md` or `README-GTK-4.0.md`
1031
+ let template = girModuleImportName ? `README-${girModuleImportName.toUpperCase()}.md` : 'README.md';
1032
+ const outputFilename = 'README.md';
1033
+ if (!moduleTemplateProcessor.exists(template)) {
1034
+ template = 'README.md';
1035
+ }
1036
+ if (this.config.outdir) {
1037
+ await moduleTemplateProcessor.create(template, this.config.outdir, outputFilename, undefined, undefined, {}, this.config);
1038
+ }
1039
+ else {
1040
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
1041
+ this.log.log(append + prepend);
1042
+ }
1043
+ }
1044
+ async exportDocTSConfig(moduleTemplateProcessor) {
1045
+ const template = 'tsconfig.doc.json';
1046
+ if (this.config.outdir) {
1047
+ await moduleTemplateProcessor.create(template, this.config.outdir, template, // output filename
1048
+ undefined, undefined, {}, this.config);
1049
+ }
1050
+ else {
1051
+ const { append, prepend } = await moduleTemplateProcessor.load(template, {}, this.config);
1052
+ this.log.log(append + prepend);
1053
+ }
1054
+ }
1055
+ async exportModule(girModule, girModules, girModulesGrouped) {
1056
+ let pkgData;
1057
+ if (this.packageData) {
1058
+ pkgData = this.packageData.get(girModule.packageName);
1059
+ }
942
1060
  const moduleTemplateProcessor = new TemplateProcessor({
943
1061
  name: girModule.namespace,
944
1062
  namespace: girModule.namespace,
945
1063
  version: girModule.version,
946
1064
  importName: girModule.importName,
947
- }, girModule.packageName, this.config);
1065
+ girModule,
1066
+ girModules,
1067
+ girModulesGrouped,
1068
+ pkgData,
1069
+ }, girModule.packageName, girModule.transitiveDependencies, this.config);
948
1070
  await this.exportModuleTS(moduleTemplateProcessor, girModule);
1071
+ if (this.config.environment === 'gjs') {
1072
+ await this.exportModuleAmbientTS(moduleTemplateProcessor, girModule);
1073
+ }
1074
+ await this.exportModuleImportTS(moduleTemplateProcessor, girModule);
949
1075
  if (this.config.buildType === 'lib') {
950
1076
  await this.exportModuleJS(moduleTemplateProcessor, girModule);
951
1077
  }
1078
+ if (this.config.package) {
1079
+ this.setOverrideConfigForOtherModuleType();
1080
+ await this.exportModuleTS(moduleTemplateProcessor, girModule);
1081
+ if (this.config.buildType === 'lib') {
1082
+ await this.exportModuleJS(moduleTemplateProcessor, girModule);
1083
+ }
1084
+ this.resetOverrideConfig();
1085
+ }
1086
+ if (this.config.package) {
1087
+ await this.exportNPMPackage(moduleTemplateProcessor, girModule.importName);
1088
+ }
1089
+ }
1090
+ /**
1091
+ * We build both module types if we build an NPM package,
1092
+ * so we need to switch the module type and use the default noNamespace value for the module type
1093
+ */
1094
+ setOverrideConfigForOtherModuleType() {
1095
+ if (this.config.moduleType === 'esm') {
1096
+ this.overrideConfig.moduleType = 'cjs';
1097
+ this.overrideConfig.noNamespace = true;
1098
+ }
1099
+ else {
1100
+ this.overrideConfig.moduleType = 'esm';
1101
+ this.overrideConfig.noNamespace = false;
1102
+ }
1103
+ }
1104
+ resetOverrideConfig() {
1105
+ this.overrideConfig = {};
952
1106
  }
953
- async exportGjs(girModules, girModulesGrouped) {
1107
+ async exportGjs(dependencies, girModules, girModulesGrouped) {
954
1108
  if (!this.config.outdir)
955
1109
  return;
956
- const templateProcessor = new TemplateProcessor({ girModules: girModules, girModulesGrouped, typeDir: this.config.outdir + '/Gjs' }, 'gjs', this.config);
957
- // Types
958
- await templateProcessor.create('Gjs.d.ts', this.config.outdir, 'Gjs.d.ts');
959
- await templateProcessor.create('index.d.ts', this.config.outdir, 'index.d.ts');
960
- if (this.config.gnomeShellTypes) {
961
- await templateProcessor.create('GnomeShell.d.ts', this.config.outdir, 'GnomeShell.d.ts');
962
- await templateProcessor.createAll('.d.ts', 'misc', this.config.outdir, 'misc');
963
- await templateProcessor.createAll('.d.ts', 'ui', this.config.outdir, 'ui');
964
- await templateProcessor.createAll('.d.ts', 'ui/components', this.config.outdir, 'ui/components');
965
- }
966
- // Lib
1110
+ const packageName = 'Gjs';
1111
+ const templateProcessor = new TemplateProcessor({ girModules: girModules, girModulesGrouped }, packageName, dependencies, this.config);
1112
+ // TS
1113
+ await templateProcessor.create('gjs.d.ts', this.config.outdir, 'gjs.d.ts');
1114
+ await templateProcessor.create('gettext.d.ts', this.config.outdir, 'gettext.d.ts');
1115
+ await templateProcessor.create('system.d.ts', this.config.outdir, 'system.d.ts');
1116
+ await templateProcessor.create('cairo.d.ts', this.config.outdir, 'cairo.d.ts');
1117
+ // JS
967
1118
  if (this.config.buildType === 'lib') {
968
- await templateProcessor.create('Gjs.js', this.config.outdir, 'Gjs.js');
969
- await templateProcessor.create('index.js', this.config.outdir, 'index.js');
970
- if (this.config.gnomeShellTypes) {
971
- await templateProcessor.create('GnomeShell.js', this.config.outdir, 'GnomeShell.js');
972
- await templateProcessor.createAll('.js', 'misc', this.config.outdir, 'misc');
973
- await templateProcessor.createAll('.js', 'ui', this.config.outdir, 'ui');
974
- await templateProcessor.createAll('.js', 'ui/components', this.config.outdir, 'ui/components');
1119
+ await templateProcessor.create('gjs.js', this.config.outdir, 'gjs.js');
1120
+ await templateProcessor.create('gettext.js', this.config.outdir, 'gettext.js');
1121
+ await templateProcessor.create('system.js', this.config.outdir, 'system.js');
1122
+ await templateProcessor.create('cairo.js', this.config.outdir, 'cairo.js');
1123
+ }
1124
+ // If you build an NPM package, we also build the Gjs module for the other module type
1125
+ if (this.config.package) {
1126
+ this.setOverrideConfigForOtherModuleType();
1127
+ // TS
1128
+ await templateProcessor.create('gjs.d.ts', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'gjs.d.cts' : 'gjs.d.mts', undefined, undefined, undefined, this.config);
1129
+ await templateProcessor.create('gettext.d.ts', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'gettext.d.cts' : 'gettext.d.mts', undefined, undefined, undefined, this.config);
1130
+ await templateProcessor.create('system.d.ts', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'system.d.cts' : 'system.d.mts', undefined, undefined, undefined, this.config);
1131
+ await templateProcessor.create('cairo.d.ts', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'cairo.d.cts' : 'cairo.d.mts', undefined, undefined, undefined, this.config);
1132
+ // JS
1133
+ if (this.config.buildType === 'lib') {
1134
+ await templateProcessor.create('gjs.js', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'gjs.cjs' : 'gjs.mjs', undefined, undefined, undefined, this.config);
1135
+ await templateProcessor.create('gettext.js', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'gettext.cjs' : 'gettext.mjs', undefined, undefined, undefined, this.config);
1136
+ await templateProcessor.create('system.js', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'system.cjs' : 'system.mjs', undefined, undefined, undefined, this.config);
1137
+ await templateProcessor.create('cairo.js', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'cairo.cjs' : 'cairo.mjs', undefined, undefined, undefined, this.config);
975
1138
  }
1139
+ this.resetOverrideConfig();
976
1140
  }
977
- // Alias
1141
+ // Import ambient types
1142
+ await templateProcessor.create('ambient.d.ts', this.config.outdir, 'ambient.d.ts');
1143
+ // Import ambient path alias
978
1144
  if (this.config.generateAlias) {
979
- await templateProcessor.create('tsconfig.alias.json', './', 'tsconfig.alias.json', '', false);
1145
+ if (this.config.package) {
1146
+ // Write tsconfig.alias.json to the root of the package
1147
+ await templateProcessor.create('tsconfig.alias.json', this.config.outdir, 'tsconfig.alias.json', true);
1148
+ }
1149
+ else {
1150
+ // Write tsconfig.alias.json to the root of the project
1151
+ await templateProcessor.create('tsconfig.alias.json', './', 'tsconfig.alias.json', false);
1152
+ }
1153
+ }
1154
+ // Package
1155
+ if (this.config.package) {
1156
+ await this.exportNPMPackage(templateProcessor, 'Gjs');
980
1157
  }
981
1158
  }
982
- async exportNodeGtk(girModules, girModulesGrouped) {
1159
+ async exportNodeGtk(dependencies, girModules, girModulesGrouped) {
983
1160
  if (!this.config.outdir)
984
1161
  return;
985
- const templateProcessor = new TemplateProcessor({ girModules, girModulesGrouped }, 'node', this.config);
986
- await templateProcessor.create('index.d.ts', this.config.outdir, 'index.d.ts');
1162
+ const packageName = 'node-gtk';
1163
+ const templateProcessor = new TemplateProcessor({ girModules, girModulesGrouped }, packageName, dependencies, this.config);
1164
+ // TS
1165
+ await templateProcessor.create('node-gtk.d.ts', this.config.outdir, 'node-gtk.d.ts');
1166
+ // JS
987
1167
  if (this.config.buildType === 'lib') {
988
- await templateProcessor.create('index.js', this.config.outdir, 'index.js');
1168
+ await templateProcessor.create('node-gtk.js', this.config.outdir, 'node-gtk.js');
1169
+ }
1170
+ // If you build an NPM package, we also build the node-gtk module for the other module type
1171
+ if (this.config.package) {
1172
+ this.setOverrideConfigForOtherModuleType();
1173
+ // TS
1174
+ await templateProcessor.create('node-gtk.d.ts', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'node-gtk.d.cts' : 'node-gtk.d.mts', undefined, undefined, undefined, this.overrideConfig);
1175
+ // JS
1176
+ if (this.config.buildType === 'lib') {
1177
+ await templateProcessor.create('node-gtk.js', this.config.outdir, this.overrideConfig.moduleType === 'cjs' ? 'node-gtk.cjs' : 'node-gtk.mjs', undefined, undefined, undefined, this.overrideConfig);
1178
+ }
1179
+ this.resetOverrideConfig();
1180
+ }
1181
+ // Import ambient types
1182
+ await templateProcessor.create('ambient.d.ts', this.config.outdir, 'node-ambient.d.ts');
1183
+ // Package
1184
+ if (this.config.package) {
1185
+ await this.exportNPMPackage(templateProcessor, 'node-gtk');
989
1186
  }
990
1187
  }
991
- async start(girModules, girModulesGrouped, inheritanceTable) {
1188
+ async start(girModules, girModulesGrouped = []) {
1189
+ this.dependencyManager.addAll(girModules);
1190
+ if (this.config.package && this.packageData) {
1191
+ await this.packageData.start();
1192
+ }
992
1193
  for (const girModule of girModules) {
993
- await this.exportModule(girModule);
1194
+ await this.exportModule(girModule, girModules, girModulesGrouped);
994
1195
  }
995
- if (this.config.environment === 'node' && girModulesGrouped) {
1196
+ if (this.config.environment === 'node') {
996
1197
  // node-gtk internal stuff
997
- await this.exportNodeGtk(girModules, girModulesGrouped);
1198
+ await this.exportNodeGtk(this.dependencyManager.core(), girModules, girModulesGrouped);
998
1199
  }
999
- if (this.config.environment === 'gjs' && girModulesGrouped && inheritanceTable) {
1200
+ if (this.config.environment === 'gjs') {
1000
1201
  // GJS internal stuff
1001
- await this.exportGjs(girModules, girModulesGrouped);
1202
+ await this.exportGjs(this.dependencyManager.core(), girModules, girModulesGrouped);
1002
1203
  }
1003
1204
  }
1004
1205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"type-definition-generator.js","sourceRoot":"","sources":["../src/type-definition-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-definition-generator.js","sourceRoot":"","sources":["../src/type-definition-generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ts-for-gir/generator-typescript",
3
- "version": "3.0.0-beta.12",
3
+ "version": "3.0.1",
4
4
  "description": "TypeScript type definition generator for ts-for-gir",
5
5
  "module": "lib/index.js",
6
6
  "main": "lib/index.js",
@@ -13,12 +13,12 @@
13
13
  "build:ts": "tsc",
14
14
  "clear": "yarn clear:build",
15
15
  "clear:build": "rimraf ./lib",
16
- "watch": "yarn build:ts -- --watch",
16
+ "watch": "yarn build:ts --watch",
17
17
  "lint": "eslint . --ext .ts,.tsx --fix"
18
18
  },
19
19
  "repository": {
20
20
  "type": "git",
21
- "url": "git+https://github.com/gjsify/ts-for-gjs.git"
21
+ "url": "git+https://github.com/gjsify/ts-for-gir.git"
22
22
  },
23
23
  "author": "Pascal Garber <pascal@artandcode.studio>",
24
24
  "files": [
@@ -27,25 +27,25 @@
27
27
  ],
28
28
  "license": "Apache-2.0",
29
29
  "bugs": {
30
- "url": "https://github.com/gjsify/ts-for-gjs/issues"
30
+ "url": "https://github.com/gjsify/ts-for-gir/issues"
31
31
  },
32
- "homepage": "https://github.com/gjsify/ts-for-gjs#readme",
32
+ "homepage": "https://github.com/gjsify/ts-for-gir#readme",
33
33
  "keywords": [
34
34
  "generator"
35
35
  ],
36
36
  "devDependencies": {
37
- "@types/node": "^18.14.0",
38
- "@typescript-eslint/eslint-plugin": "^5.53.0",
39
- "@typescript-eslint/parser": "^5.53.0",
40
- "eslint": "^8.34.0",
41
- "eslint-config-prettier": "^8.6.0",
37
+ "@types/node": "^18.16.14",
38
+ "@typescript-eslint/eslint-plugin": "^5.59.6",
39
+ "@typescript-eslint/parser": "^5.59.6",
40
+ "eslint": "^8.41.0",
41
+ "eslint-config-prettier": "^8.8.0",
42
42
  "eslint-plugin-prettier": "^4.2.1",
43
- "prettier": "^2.8.4",
44
- "rimraf": "^4.1.2",
45
- "typescript": "^4.9.5"
43
+ "prettier": "^2.8.8",
44
+ "rimraf": "^5.0.1",
45
+ "typescript": "^5.0.4"
46
46
  },
47
47
  "dependencies": {
48
- "@ts-for-gir/generator-base": "^3.0.0-beta.12",
49
- "@ts-for-gir/lib": "^3.0.0-beta.12"
48
+ "@ts-for-gir/generator-base": "^3.0.1",
49
+ "@ts-for-gir/lib": "^3.0.1"
50
50
  }
51
51
  }