@ts-for-gir/generator-typescript 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.
@@ -1,10 +1,10 @@
1
1
  import { Logger } from '@ts-for-gir/lib';
2
- import type { GenerateConfig, PackageSectionParsed, PackageDataParsed, PackageData } from '@ts-for-gir/lib';
2
+ import type { OptionsGeneration, PackageSectionParsed, PackageDataParsed, PackageData } from '@ts-for-gir/lib';
3
3
  export declare class PackageDataParser {
4
- protected readonly config: GenerateConfig;
4
+ protected readonly config: OptionsGeneration;
5
5
  protected log: Logger;
6
6
  protected packages: PackageData[];
7
- constructor(config: GenerateConfig);
7
+ constructor(config: OptionsGeneration);
8
8
  get(name: string): PackageData | undefined;
9
9
  protected parseSections(sections: PackageSectionParsed[]): void;
10
10
  protected transformPackageData(pkg: PackageDataParsed, parentSection?: PackageSectionParsed): PackageData;
@@ -59,7 +59,6 @@ export class PackageDataParser {
59
59
  }
60
60
  async start() {
61
61
  const filePath = resolve(__dirname, '../packages.xml');
62
- this.log.log(`Parsing ${filePath}...`);
63
62
  const fileContents = await readFile(filePath, 'utf8');
64
63
  const result = (await parseStringPromise(fileContents));
65
64
  this.parseSections(result.packages.section);
@@ -1 +1 @@
1
- {"version":3,"file":"package-data-parser.js","sourceRoot":"","sources":["../src/package-data-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-data-parser.js","sourceRoot":"","sources":["../src/package-data-parser.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,16 @@
4
4
  */
5
5
  import ejs from 'ejs';
6
6
  import { Logger, Transformation } from '@ts-for-gir/lib';
7
- import type { GenerateConfig, Dependency, TemplateData } from '@ts-for-gir/lib';
7
+ import type { OptionsGeneration, Dependency, TemplateData } from '@ts-for-gir/lib';
8
8
  export declare class TemplateProcessor {
9
9
  protected readonly data: TemplateData | undefined;
10
10
  protected readonly packageName: string;
11
11
  protected readonly deps: Dependency[];
12
- protected readonly config: GenerateConfig;
12
+ protected readonly config: OptionsGeneration;
13
13
  protected environmentTemplateDir: string;
14
14
  protected log: Logger;
15
15
  protected transformation: Transformation;
16
- constructor(data: TemplateData | undefined, packageName: string, deps: Dependency[], config: GenerateConfig);
16
+ constructor(data: TemplateData | undefined, packageName: string, deps: Dependency[], config: OptionsGeneration);
17
17
  /**
18
18
  * Get the output or input directory of the environment
19
19
  * @param environment The environment to get the directory for
@@ -22,7 +22,7 @@ export class TemplateProcessor {
22
22
  this.packageName = packageName;
23
23
  this.deps = deps;
24
24
  this.config = config;
25
- this.transformation = new Transformation(config);
25
+ this.transformation = Transformation.getSingleton(config);
26
26
  const dep = DependencyManager.getInstance(config);
27
27
  let outdir = config.outdir || './';
28
28
  // Make outdir relative to the root directory
@@ -179,7 +179,6 @@ export class TemplateProcessor {
179
179
  return renderedTpl;
180
180
  }
181
181
  catch (error) {
182
- console.error(error);
183
182
  this.log.error('Error on render', error);
184
183
  return '';
185
184
  }
@@ -1 +1 @@
1
- {"version":3,"file":"template-processor.js","sourceRoot":"","sources":["../src/template-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-processor.js","sourceRoot":"","sources":["../src/template-processor.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,17 @@ import { Generator } from '@ts-for-gir/generator-base';
2
2
  import { Logger, DependencyManager, TypeExpression, NSRegistry, IntrospectedClass, IntrospectedRecord, IntrospectedInterface, IntrospectedBaseClass, IntrospectedField, GirDirection, TsDocTag } from '@ts-for-gir/lib';
3
3
  import { TemplateProcessor } from './template-processor.js';
4
4
  import { PackageDataParser } from './package-data-parser.js';
5
- import { GenerateConfig, GirModule, IntrospectedFunction, IntrospectedCallback, IntrospectedSignal, IntrospectedProperty, IntrospectedConstant, IntrospectedClassCallback, IntrospectedClassFunction, IntrospectedConstructor, IntrospectedDirectAllocationConstructor, IntrospectedFunctionParameter, IntrospectedStaticClassFunction, IntrospectedVirtualClassFunction, IntrospectedAlias, IntrospectedEnum, IntrospectedSignalType, IntrospectedEnumMember, IntrospectedError, FormatGenerator, Generic } from '@ts-for-gir/lib';
5
+ import { OptionsGeneration, GirModule, IntrospectedFunction, IntrospectedCallback, IntrospectedSignal, IntrospectedProperty, IntrospectedConstant, IntrospectedClassCallback, IntrospectedClassFunction, IntrospectedConstructor, IntrospectedDirectAllocationConstructor, IntrospectedFunctionParameter, IntrospectedStaticClassFunction, IntrospectedVirtualClassFunction, IntrospectedAlias, IntrospectedEnum, IntrospectedSignalType, IntrospectedEnumMember, IntrospectedError, FormatGenerator, Generic } from '@ts-for-gir/lib';
6
6
  declare class ModuleGenerator extends FormatGenerator<string[]> {
7
7
  log: Logger;
8
8
  dependencyManager: DependencyManager;
9
9
  packageData?: PackageDataParser;
10
- config: GenerateConfig;
10
+ config: OptionsGeneration;
11
11
  moduleTemplateProcessor: TemplateProcessor;
12
12
  /**
13
13
  * @param _config The config to use without the override config
14
14
  */
15
- constructor(namespace: GirModule, config: GenerateConfig);
15
+ constructor(namespace: GirModule, config: OptionsGeneration);
16
16
  generateClassCallback(node: IntrospectedClassCallback): string[];
17
17
  generateConstructor(node: IntrospectedConstructor): string[];
18
18
  generateDirectAllocationConstructor(node: IntrospectedDirectAllocationConstructor): string[];
@@ -135,12 +135,12 @@ declare class ModuleGenerator extends FormatGenerator<string[]> {
135
135
  * @param packageName E.g. 'Gtk-3.0'
136
136
  * @param asExternType Currently only used for node type imports
137
137
  */
138
- protected generateModuleDependenciesImport(packageName: string): string[];
138
+ protected generateModuleDependenciesImport(packageName: string): Promise<string[]>;
139
139
  generateNamespace(girModule: GirModule): Promise<string[] | null>;
140
140
  exportModule(_registry: NSRegistry, girModule: GirModule): Promise<void>;
141
141
  }
142
142
  export declare class TypeDefinitionGenerator implements Generator {
143
- readonly config: GenerateConfig;
143
+ readonly config: OptionsGeneration;
144
144
  log: Logger;
145
145
  dependencyManager: DependencyManager;
146
146
  packageData?: PackageDataParser;
@@ -148,7 +148,7 @@ export declare class TypeDefinitionGenerator implements Generator {
148
148
  /**
149
149
  * @param _config The config to use without the override config
150
150
  */
151
- constructor(config: GenerateConfig);
151
+ constructor(config: OptionsGeneration);
152
152
  exportGjs(): Promise<void>;
153
153
  generate(registry: NSRegistry, module: GirModule): Promise<void>;
154
154
  start(): Promise<void>;
@@ -116,7 +116,7 @@ class ModuleGenerator extends FormatGenerator {
116
116
  return this.generateClass(node);
117
117
  }
118
118
  generateInterface(node) {
119
- const isGObject = node.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object');
119
+ const isGObject = node.someParent((p) => p.namespace.namespace === 'GObject' && p.name === 'Object');
120
120
  const functions = filterFunctionConflict(node.namespace, node, node.members, []);
121
121
  const hasStaticFunctions = functions.some((f) => f instanceof IntrospectedStaticClassFunction);
122
122
  const hasNamespace = isGObject || hasStaticFunctions || node.callbacks.length > 0;
@@ -128,7 +128,7 @@ class ModuleGenerator extends FormatGenerator {
128
128
  ];
129
129
  }
130
130
  generateInterfaceNamespace(node) {
131
- const isGObject = node.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object');
131
+ const isGObject = node.someParent((p) => p.namespace.namespace === 'GObject' && p.name === 'Object');
132
132
  const namespace = node.namespace;
133
133
  const functions = filterFunctionConflict(node.namespace, node, node.members, []);
134
134
  const staticFunctions = functions.filter((f) => f instanceof IntrospectedStaticClassFunction);
@@ -139,7 +139,7 @@ class ModuleGenerator extends FormatGenerator {
139
139
  }));
140
140
  return [
141
141
  `export interface ${node.name}Namespace {
142
- ${isGObject ? `$gtype: ${namespace.name !== 'GObject' ? 'GObject.' : ''}GType<${node.name}>;` : ''}
142
+ ${isGObject ? `$gtype: ${namespace.namespace !== 'GObject' ? 'GObject.' : ''}GType<${node.name}>;` : ''}
143
143
  prototype: ${node.name};
144
144
  ${staticFields.length > 0 ? staticFields.flatMap((sf) => sf.asString(this)).join('\n') : ''}
145
145
  ${staticFunctions.length > 0
@@ -313,27 +313,6 @@ class ModuleGenerator extends FormatGenerator {
313
313
  }
314
314
  return def;
315
315
  }
316
- // generateVariableCallbackType(tsType: TypeExpression, namespace: string) {
317
- // // The type of a callback is a functions definition
318
- // let typeStr = 'any'
319
- // const { callbacks } = tsType
320
- // if (!callbacks.length) return typeStr
321
- // if (callbacks.length > 1) {
322
- // this.log.warn(WARN_IGNORE_MULTIPLE_CALLBACKS)
323
- // }
324
- // const girCallback = callbacks[0]
325
- // if (!girCallback) {
326
- // throw new Error(NO_TSDATA('generateVariableCallbackType'))
327
- // }
328
- // const funcDesc = this.generateFunction(girCallback, false, namespace, 0)
329
- // if (girCallback && funcDesc?.length) {
330
- // if (funcDesc.length > 1) {
331
- // this.log.warn(WARN_IGNORE_MULTIPLE_FUNC_DESC)
332
- // }
333
- // typeStr = funcDesc[0]
334
- // }
335
- // return typeStr
336
- // }
337
316
  generateMemberName(tsVar) {
338
317
  const name = tsVar.name;
339
318
  const invalid = isInvalid(name);
@@ -359,61 +338,8 @@ class ModuleGenerator extends FormatGenerator {
359
338
  ?.print(this.namespace, this.config) ??
360
339
  tsType.resolve(this.namespace, this.config).print(this.namespace, this.config));
361
340
  }
362
- // TODO:
363
- // generateGenericValues(tsType: TypeExpression, namespace: string) {
364
- // // We just use the generic values here
365
- // const genericValues = tsType.generics.map((g) => removeNamespace(g.value || '', namespace)).filter((g) => !!g)
366
- // const genericStr = tsType.generics.length ? `<${genericValues.join(', ')}>` : ''
367
- // return genericStr
368
- // }
369
- // /**
370
- // * Generates signals from all properties of a base class
371
- // * TODO: Build new `GirSignalElement`s in `gir-module.ts` instead of generate the strings directly
372
- // * @param girClass
373
- // * @param namespace
374
- // * @param indentCount
375
- // * @returns
376
- // */
377
- // generateClassPropertySignals(
378
- // girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface,
379
- // namespace: string,
380
- // indentCount = 1,
381
- // ) {
382
- // const def: string[] = []
383
- // const isDerivedFromGObject = girClass.someParent(
384
- // (p: IntrospectedBaseClass) => p.namespace.name === 'GObject' && p.name === 'Object',
385
- // )
386
- // if (isDerivedFromGObject) {
387
- // if (girClass.propertySignalMethods.length > 0) {
388
- // def.push(
389
- // ...this.addInfoComment(
390
- // `Class property signals of ${girClass._module?.packageName}.${girClass.name}`,
391
- // indentCount,
392
- // ),
393
- // )
394
- // for (const tsSignalMethod of girClass.propertySignalMethods) {
395
- // if (!tsSignalMethod) {
396
- // continue
397
- // }
398
- // def.push(...this.generateFunction(tsSignalMethod, false, namespace, indentCount))
399
- // }
400
- // }
401
- // }
402
- // return def
403
- // }
404
341
  generateInParameters(inParams) {
405
342
  const inParamsDef = [];
406
- // TODO: Should use of a constructor, and even of an instance, be discouraged?
407
- // for (const instanceParameter of instanceParameters) {
408
- // if (instanceParameter) {
409
- // let { structFor } = instanceParameter
410
- // const { name } = instanceParameter
411
- // const gobject = namespace === 'GObject' || namespace === 'GLib' ? '' : 'GObject.'
412
- // structFor = removeNamespace(structFor, namespace)
413
- // const returnTypes = [structFor, 'Function', `${gobject}GType`]
414
- // inParamsDef.push(`${name}: ${returnTypes.join(' | ')}`)
415
- // }
416
- // }
417
343
  for (const inParam of inParams) {
418
344
  inParamsDef.push(...this.generateParameter(inParam));
419
345
  }
@@ -559,18 +485,6 @@ class ModuleGenerator extends FormatGenerator {
559
485
  }
560
486
  return '';
561
487
  }
562
- // TODO:
563
- // generateOutParameterReturn(girParam: GirCallableParamElement, namespace: string) {
564
- // const desc: string[] = []
565
- // if (!girParam) {
566
- // this.log.warn(NO_TSDATA('generateOutParameterReturn'))
567
- // return desc
568
- // }
569
- // const { name } = girParam
570
- // const typeStr = this.generateTypes(girParam.type, namespace)
571
- // desc.push(`/* ${name} */ ${typeStr}`)
572
- // return desc
573
- // }
574
488
  generateFunctionReturn(tsFunction) {
575
489
  if (tsFunction.name === 'constructor') {
576
490
  return '';
@@ -643,13 +557,6 @@ class ModuleGenerator extends FormatGenerator {
643
557
  }
644
558
  const inParamsDef = this.generateInParameters(inParams);
645
559
  def.push(`${indent}${commentOut}${exportStr}${staticStr}${globalStr}${name}${genericStr}(${inParamsDef.join(', ')})${retSep} ${returnType}`);
646
- // TODO: Add overloaded methods
647
- // if (overloads && tsFunction.overloads.length > 0) {
648
- // def.push(...this.addInfoComment(`Overloads of ${name}`, indentCount))
649
- // for (const func of tsFunction.overloads) {
650
- // def.push(...this.generateFunction(func, onlyStatic, namespace, indentCount, false))
651
- // }
652
- // }
653
560
  return def;
654
561
  }
655
562
  generateFunctions(tsFunctions, indentCount = 1, comment) {
@@ -672,7 +579,7 @@ class ModuleGenerator extends FormatGenerator {
672
579
  // Get name, remove namespace and remove module class name prefix
673
580
  let { name } = tsCallback;
674
581
  const generics = tsCallback.generics;
675
- name = removeNamespace(name, tsCallback.namespace.name);
582
+ name = removeNamespace(name, tsCallback.namespace.namespace);
676
583
  if (classModuleName)
677
584
  name = removeClassModule(name, classModuleName);
678
585
  const genericParameters = this.generateGenericParameters(generics);
@@ -756,9 +663,9 @@ class ModuleGenerator extends FormatGenerator {
756
663
  }
757
664
  generateConstructPropsInterface(girClass, indentCount = 0) {
758
665
  const def = [];
759
- const isGObjectObject = girClass.name === 'Object' && girClass.namespace.name === 'GObject';
666
+ const isGObjectObject = girClass.name === 'Object' && girClass.namespace.namespace === 'GObject';
760
667
  if (!isGObjectObject &&
761
- !girClass.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object')) {
668
+ !girClass.someParent((p) => p.namespace.namespace === 'GObject' && p.name === 'Object')) {
762
669
  return def;
763
670
  }
764
671
  const indent = generateIndent(indentCount);
@@ -843,7 +750,7 @@ class ModuleGenerator extends FormatGenerator {
843
750
  def.push(...this.generateDirectAllocationConstructor(girClass.mainConstructor));
844
751
  else if (girClass.mainConstructor instanceof IntrospectedConstructor)
845
752
  def.push(...this.generateConstructor(girClass.mainConstructor));
846
- else if (girClass.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object'))
753
+ else if (girClass.someParent((p) => p.namespace.namespace === 'GObject' && p.name === 'Object'))
847
754
  def.push(`\nconstructor(properties?: Partial<${girClass.name}.ConstructorProps>, ...args: any[]);\n`);
848
755
  // Don't inject a constructor hook if a stricter index signature is set,
849
756
  // as the types may not be compatible.
@@ -1066,7 +973,7 @@ class ModuleGenerator extends FormatGenerator {
1066
973
  if (Type) {
1067
974
  return ` extends ${Type}`;
1068
975
  }
1069
- throw new Error(`Unable to resolve type: ${node.superType.name} from ${node.superType.namespace} in ${node.namespace.name} ${node.namespace.version}`);
976
+ throw new Error(`Unable to resolve type: ${node.superType.name} from ${node.superType.namespace} in ${node.namespace.namespace} ${node.namespace.version}`);
1070
977
  }
1071
978
  return '';
1072
979
  }
@@ -1075,7 +982,7 @@ class ModuleGenerator extends FormatGenerator {
1075
982
  const interfaces = node.interfaces.map((i) => {
1076
983
  const identifier = i.resolveIdentifier(namespace, options);
1077
984
  if (!identifier) {
1078
- throw new Error(`Unable to resolve type: ${i.name} from ${i.namespace} in ${node.namespace.name} ${node.namespace.version}`);
985
+ throw new Error(`Unable to resolve type: ${i.name} from ${i.namespace} in ${node.namespace.namespace} ${node.namespace.version}`);
1079
986
  }
1080
987
  return identifier;
1081
988
  });
@@ -1114,7 +1021,7 @@ class ModuleGenerator extends FormatGenerator {
1114
1021
  def.push(this.generateExport('class', classHead, '{'));
1115
1022
  }
1116
1023
  // $gtype compatibility
1117
- def.push(`static $gtype: ${this.namespace.name !== 'GObject' ? 'GObject.' : ''}GType<${girClass.name}>;`);
1024
+ def.push(`static $gtype: ${this.namespace.namespace !== 'GObject' ? 'GObject.' : ''}GType<${girClass.name}>;`);
1118
1025
  if (girClass.__ts__indexSignature) {
1119
1026
  def.push(`\n${girClass.__ts__indexSignature}\n`);
1120
1027
  }
@@ -1224,8 +1131,6 @@ class ModuleGenerator extends FormatGenerator {
1224
1131
  this.log.error('Failed to generate');
1225
1132
  return;
1226
1133
  }
1227
- // const template = 'module.d.ts'
1228
- // const explicitTemplate = `${girModule.importName}.d.ts`
1229
1134
  const target = `${girModule.importName}.d.ts`;
1230
1135
  const formatter = this.dependencyManager.getFormatter('dts');
1231
1136
  let contents;
@@ -1233,7 +1138,7 @@ class ModuleGenerator extends FormatGenerator {
1233
1138
  contents = this.config.noPrettyPrint ? output.join('\n') : await formatter.format(output.join('\n'));
1234
1139
  }
1235
1140
  catch (error) {
1236
- console.error(error);
1141
+ this.log.error('Failed to format output...', error);
1237
1142
  contents = output.join('\n');
1238
1143
  }
1239
1144
  if (this.config.outdir) {
@@ -1255,9 +1160,9 @@ class ModuleGenerator extends FormatGenerator {
1255
1160
  * @param packageName E.g. 'Gtk-3.0'
1256
1161
  * @param asExternType Currently only used for node type imports
1257
1162
  */
1258
- generateModuleDependenciesImport(packageName) {
1163
+ async generateModuleDependenciesImport(packageName) {
1259
1164
  const def = [];
1260
- const dep = this.dependencyManager.get(packageName);
1165
+ const dep = await this.dependencyManager.get(packageName);
1261
1166
  if (this.namespace.hasSymbol(dep.namespace)) {
1262
1167
  if (this.config.noNamespace) {
1263
1168
  def.push(`import * as ${dep.namespace}__ from '${dep.importPath}';`);
@@ -1284,7 +1189,7 @@ class ModuleGenerator extends FormatGenerator {
1284
1189
  // Don't reference yourself as a dependency
1285
1190
  if (girModule.packageName !== dependency.packageName) {
1286
1191
  if (dependency.exists) {
1287
- out.push(...this.generateModuleDependenciesImport(dependency.packageName));
1192
+ out.push(...(await this.generateModuleDependenciesImport(dependency.packageName)));
1288
1193
  }
1289
1194
  else {
1290
1195
  out.push(`// WARN: Dependency not found: '${dependency.packageName}'`);
@@ -1396,7 +1301,7 @@ export class TypeDefinitionGenerator {
1396
1301
  const gjs = dependencyManager.getGjs();
1397
1302
  const templateProcessor = new TemplateProcessor({
1398
1303
  registry: dependencyManager,
1399
- }, gjs.packageName, dependencyManager.core(), config);
1304
+ }, gjs.packageName, await dependencyManager.core(), config);
1400
1305
  await templateProcessor.create('gjs.d.ts', config.outdir, 'gjs.d.ts');
1401
1306
  await templateProcessor.create('gjs.js', config.outdir, 'gjs.js');
1402
1307
  await templateProcessor.create('gettext.d.ts', config.outdir, 'gettext.d.ts');
@@ -1411,7 +1316,7 @@ export class TypeDefinitionGenerator {
1411
1316
  // DOM types
1412
1317
  await templateProcessor.create('dom.d.ts', config.outdir, 'dom.d.ts');
1413
1318
  await templateProcessor.create('dom.js', config.outdir, 'dom.js');
1414
- const pkg = new NpmPackage(config, dependencyManager, gjs, dependencyManager.core());
1319
+ const pkg = new NpmPackage(config, dependencyManager, gjs, await dependencyManager.core());
1415
1320
  // Package
1416
1321
  await pkg.exportNPMPackage();
1417
1322
  }
@@ -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": "4.0.0-beta.2",
3
+ "version": "4.0.0-beta.3",
4
4
  "description": "TypeScript type definition generator for ts-for-gir",
5
5
  "module": "lib/index.js",
6
6
  "main": "lib/index.js",
@@ -42,21 +42,21 @@
42
42
  ],
43
43
  "devDependencies": {
44
44
  "@types/ejs": "^3.1.5",
45
- "@types/node": "^20.11.27",
45
+ "@types/node": "^20.12.7",
46
46
  "@types/xml2js": "^0.4.14",
47
- "@typescript-eslint/eslint-plugin": "^7.2.0",
48
- "@typescript-eslint/parser": "^7.2.0",
47
+ "@typescript-eslint/eslint-plugin": "^7.7.0",
48
+ "@typescript-eslint/parser": "^7.7.0",
49
49
  "eslint": "^8.57.0",
50
50
  "eslint-config-prettier": "^9.1.0",
51
51
  "eslint-plugin-prettier": "^5.1.3",
52
52
  "prettier": "^3.2.5",
53
53
  "rimraf": "^5.0.5",
54
- "typescript": "^5.4.2"
54
+ "typescript": "^5.4.5"
55
55
  },
56
56
  "dependencies": {
57
- "@ts-for-gir/generator-base": "^4.0.0-beta.2",
58
- "@ts-for-gir/lib": "^4.0.0-beta.2",
59
- "ejs": "^3.1.9",
57
+ "@ts-for-gir/generator-base": "^4.0.0-beta.3",
58
+ "@ts-for-gir/lib": "^4.0.0-beta.3",
59
+ "ejs": "^3.1.10",
60
60
  "xml2js": "^0.6.2"
61
61
  }
62
62
  }
@@ -18,7 +18,7 @@ To use this type definitions, install them with NPM:
18
18
  npm install <%- npmScope %>/<%- importName %>
19
19
  ```
20
20
 
21
- <%_ const pkg = dep.get(packageName) _%>
21
+ <%_ const pkg = dep.getSync(packageName) _%>
22
22
  <%_ if(!pkg){ _%>
23
23
  <%_ return `Package with package name "${packageName}" not found!` _%>
24
24
  <%_ } _%>
@@ -29,11 +29,6 @@ You can import this package into your project like this:
29
29
  import <%- pkg.namespace %> from '<%- pkg.importPath %>';
30
30
  ```
31
31
 
32
- Or if you prefer CommonJS, you can also use this:
33
- ```ts
34
- const <%- pkg.namespace %> = require('<%- pkg.importPath %>');
35
- ```
36
-
37
32
  ### Ambient Modules
38
33
 
39
34
  You can also use [ambient modules](https://github.com/gjsify/ts-for-gir/tree/main/packages/cli#ambient-modules) to import this module like you would do this in JavaScript.
@@ -88,19 +83,6 @@ Now you have also type support for this, too:
88
83
  const <%= pkg.namespace %> = imports.gi.<%= pkg.namespace %>;
89
84
  ```
90
85
 
91
-
92
- ### ESM vs. CommonJS
93
-
94
- GJS supports two different import syntaxes. The new modern ESM syntax and the old global imports syntax.
95
-
96
- In TypeScript projects for GJS and GNOME Shell extensions, you have the flexibility to use `ESM` syntax and then decide the import syntax for your bundled file. If your bundler is configured to use `CommonJS`, it will convert to the GJS-specific global imports syntax, like `const moduleName = imports.gi[moduleName]`. This is different from the traditional `require` syntax seen in Node.js. The global imports syntax is chosen because it aligns with the CommonJS format supported by NPM, which is used for the generated type definitions and this package.
97
-
98
- On the other hand, if you configure your bundler to use ESM, it will retain the ESM import syntax. It's crucial to ensure that your bundler is set up to correctly translate and bundle these imports into either CommonJS or ESM format, depending on your project's requirements.
99
-
100
- This approach is particularly important due to the `@girs` types, which include both `*.cjs `files, using the GJS global imports syntax, and `*.js` files, which utilize the ESM syntax. By appropriately setting up your bundler, you can control which syntax—CommonJS or ESM—is used in your project. The choice of CommonJS in this context is also due to the similarity between the GJS-specific global imports and CommonJS syntax, allowing for easier management and bundling in these specific types of projects.
101
-
102
- Since GNOME Shell 45, you should only use ESM, even for GNOME Shell extensions. Before that, extensions had to use the global import syntax, unlike normal GJS applications, where ESM has been available for some time.
103
-
104
86
  ### Bundle
105
87
 
106
88
  Depending on your project configuration, it is recommended to use a bundler like [esbuild](https://esbuild.github.io/). You can find examples using different bundlers [here](https://github.com/gjsify/ts-for-gir/tree/main/examples).
@@ -19,7 +19,7 @@ To use this type definitions, install them with NPM:
19
19
  npm install <%- npmScope %>/<%- importName %>
20
20
  ```
21
21
 
22
- <%_ const pkg = dep.get(packageName) _%>
22
+ <%_ const pkg = dep.getSync(packageName) _%>
23
23
  <%_ if(!pkg){ _%>
24
24
  <%_ return `Package with package name "${packageName}" not found!` _%>
25
25
  <%_ } _%>
@@ -6,8 +6,8 @@
6
6
  */
7
7
  import './ambient.d.ts';
8
8
 
9
- <%_ const GObject = dep.find('GObject') _%>
10
- <%_ const GLib = dep.find('GLib') _%>
9
+ <%_ const GObject = dep.getSync('GObject', '2.0') _%>
10
+ <%_ const GLib = dep.getSync('GLib', '2.0') _%>
11
11
  <%- GObject ? GObject.importDef : '' %>
12
12
  <%- GLib ? GLib.importDef : '' %>
13
13
  import gettext from './gettext.js';
@@ -2,12 +2,11 @@
2
2
  // This EJS template is used for the generated .d.ts files for ambient typescript module support.
3
3
  // See https://www.typescriptlang.org/docs/handbook/modules.html#ambient-modules
4
4
  _%>
5
- <%_ const pkg = dep.get(girModule.namespace, girModule.version) _%>
6
5
  <%_ let moduleImportStr = ""; _%>
7
6
  <%_ if(noNamespace){ _%>
8
- <%_ moduleImportStr = `import * as ${girModule.namespace} from '${pkg.importPath}'`; _%>
7
+ <%_ moduleImportStr = `import * as ${girModule.namespace} from '${girModule.importPath}'`; _%>
9
8
  <%_ } else { _%>
10
- <%_ moduleImportStr = `import ${girModule.namespace} from '${pkg.importPath}'`; _%>
9
+ <%_ moduleImportStr = `import ${girModule.namespace} from '${girModule.importPath}'`; _%>
11
10
  <%_ } _%>
12
11
 
13
12
  declare module 'gi://<%= name %>?version=<%= version %>' {
@@ -16,7 +15,7 @@ declare module 'gi://<%= name %>?version=<%= version %>' {
16
15
  }
17
16
 
18
17
  <%# // Generate ambient module declarations Without version number if this is the latest version _%>
19
- <%_ if (dep.isLatestVersion(pkg.namespace, pkg.version)) { _%>
18
+ <%_ if (dep.isLatestVersion(girModule.namespace, girModule.version)) { _%>
20
19
  declare module 'gi://<%= name %>' {
21
20
  import <%- girModule.importNamespace -%> from 'gi://<%= name %>?version=<%= version %>';
22
21
  export default <%- girModule.importNamespace -%>;
@@ -5,12 +5,7 @@ _%>
5
5
  <%_ return `// Module import type definition not generated, otherwise this would cause a type conflict, this is because several GIR modules were generated with the same namespace: "${ girModule.namespace }"` _%>
6
6
  <%_ } _%>
7
7
 
8
- <%_ const pkg = dep.get(girModule.namespace, girModule.version) _%>
9
- <%_ if(noNamespace){ _%>
10
- import * as <%= girModule.importNamespace %> from '<%= pkg.importPath %>';
11
- <%_ } else { _%>
12
- import <%= girModule.importNamespace %> from '<%= pkg.importPath %>';
13
- <%_ } _%>
8
+ import <%= girModule.importNamespace %> from '<%= girModule.importPath %>';
14
9
 
15
10
  declare global {
16
11
  export interface GjsGiImports {
@@ -1,4 +1,4 @@
1
- <%_ const GObject = dep.find('GObject') _%>
1
+ <%_ const GObject = dep.getSync('GObject', '2.0') _%>
2
2
  <%- GObject ? GObject.importDef : '' %>
3
3
 
4
4
  /**