@ts-for-gir/lib 3.3.0 → 4.0.0-beta.2
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/README.md +0 -1
- package/lib/conflict-resolver.d.ts +2 -39
- package/lib/conflict-resolver.js +4 -228
- package/lib/conflict-resolver.js.map +1 -1
- package/lib/constants.d.ts +3 -7
- package/lib/constants.js +6 -16
- package/lib/constants.js.map +1 -1
- package/lib/dependency-manager.d.ts +3 -5
- package/lib/dependency-manager.js +10 -17
- package/lib/dependency-manager.js.map +1 -1
- package/lib/formatters/default.d.ts +4 -0
- package/lib/formatters/default.js +7 -0
- package/lib/formatters/default.js.map +1 -0
- package/lib/formatters/formatter.d.ts +3 -0
- package/lib/formatters/formatter.js +3 -0
- package/lib/formatters/formatter.js.map +1 -0
- package/lib/formatters/json.d.ts +4 -0
- package/lib/formatters/json.js +7 -0
- package/lib/formatters/json.js.map +1 -0
- package/lib/generators/dts/gio.d.ts +2 -0
- package/lib/generators/dts/gio.js +9 -0
- package/lib/generators/dts/gio.js.map +1 -0
- package/lib/generators/dts/glib.d.ts +2 -0
- package/lib/generators/dts/glib.js +514 -0
- package/lib/generators/dts/glib.js.map +1 -0
- package/lib/generators/dts/gobject.d.ts +2 -0
- package/lib/generators/dts/gobject.js +117 -0
- package/lib/generators/dts/gobject.js.map +1 -0
- package/lib/generators/dts-inline.d.ts +8 -0
- package/lib/generators/dts-inline.js +59 -0
- package/lib/generators/dts-inline.js.map +1 -0
- package/lib/generators/dts-modules.d.ts +8 -0
- package/lib/generators/dts-modules.js +100 -0
- package/lib/generators/dts-modules.js.map +1 -0
- package/lib/generators/dts.d.ts +45 -0
- package/lib/generators/dts.js +682 -0
- package/lib/generators/dts.js.map +1 -0
- package/lib/generators/generator.d.ts +45 -0
- package/lib/generators/generator.js +9 -0
- package/lib/generators/generator.js.map +1 -0
- package/lib/generators/index.d.ts +5 -0
- package/lib/generators/index.js +6 -0
- package/lib/generators/index.js.map +1 -0
- package/lib/generators/json.d.ts +256 -0
- package/lib/generators/json.js +869 -0
- package/lib/generators/json.js.map +1 -0
- package/lib/generics/clutter.d.ts +26 -0
- package/lib/generics/clutter.js +49 -0
- package/lib/generics/clutter.js.map +1 -0
- package/lib/generics/generify.d.ts +2 -0
- package/lib/generics/generify.js +39 -0
- package/lib/generics/generify.js.map +1 -0
- package/lib/generics/gio.d.ts +7 -0
- package/lib/generics/gio.js +51 -0
- package/lib/generics/gio.js.map +1 -0
- package/lib/generics/glib.d.ts +7 -0
- package/lib/generics/glib.js +18 -0
- package/lib/generics/glib.js.map +1 -0
- package/lib/generics/meta.d.ts +21 -0
- package/lib/generics/meta.js +26 -0
- package/lib/generics/meta.js.map +1 -0
- package/lib/generics/st.d.ts +16 -0
- package/lib/generics/st.js +92 -0
- package/lib/generics/st.js.map +1 -0
- package/lib/generics/visitor.d.ts +20 -0
- package/lib/generics/visitor.js +259 -0
- package/lib/generics/visitor.js.map +1 -0
- package/lib/gir/alias.d.ts +24 -0
- package/lib/gir/alias.js +43 -0
- package/lib/gir/alias.js.map +1 -0
- package/lib/gir/base.d.ts +62 -0
- package/lib/gir/base.js +95 -0
- package/lib/gir/base.js.map +1 -0
- package/lib/gir/class.d.ts +189 -0
- package/lib/gir/class.js +1132 -0
- package/lib/gir/class.js.map +1 -0
- package/lib/gir/const.d.ts +25 -0
- package/lib/gir/const.js +43 -0
- package/lib/gir/const.js.map +1 -0
- package/lib/gir/enum.d.ts +45 -0
- package/lib/gir/enum.js +164 -0
- package/lib/gir/enum.js.map +1 -0
- package/lib/gir/function.d.ts +199 -0
- package/lib/gir/function.js +683 -0
- package/lib/gir/function.js.map +1 -0
- package/lib/gir/generics.d.ts +5 -0
- package/lib/gir/generics.js +57 -0
- package/lib/gir/generics.js.map +1 -0
- package/lib/gir/namespace.d.ts +21 -0
- package/lib/gir/namespace.js +57 -0
- package/lib/gir/namespace.js.map +1 -0
- package/lib/gir/nodes.d.ts +11 -0
- package/lib/gir/nodes.js +12 -0
- package/lib/gir/nodes.js.map +1 -0
- package/lib/gir/property.d.ts +60 -0
- package/lib/gir/property.js +128 -0
- package/lib/gir/property.js.map +1 -0
- package/lib/gir/registry.d.ts +51 -0
- package/lib/gir/registry.js +144 -0
- package/lib/gir/registry.js.map +1 -0
- package/lib/gir/signal.d.ts +33 -0
- package/lib/gir/signal.js +165 -0
- package/lib/gir/signal.js.map +1 -0
- package/lib/gir/util.d.ts +49 -0
- package/lib/gir/util.js +556 -0
- package/lib/gir/util.js.map +1 -0
- package/lib/gir-factory.d.ts +2 -2
- package/lib/gir-factory.js +8 -44
- package/lib/gir-factory.js.map +1 -1
- package/lib/gir-module.d.ts +61 -221
- package/lib/gir-module.js +387 -2106
- package/lib/gir-module.js.map +1 -1
- package/lib/gir.d.ts +251 -0
- package/lib/gir.js +638 -0
- package/lib/gir.js.map +1 -0
- package/lib/index.d.ts +5 -4
- package/lib/index.js +7 -4
- package/lib/index.js.map +1 -1
- package/lib/injection/callbacks/index.d.ts +0 -1
- package/lib/injection/callbacks/index.js +0 -1
- package/lib/injection/callbacks/index.js.map +1 -1
- package/lib/injection/classes/index.d.ts +0 -1
- package/lib/injection/classes/index.js +0 -1
- package/lib/injection/classes/index.js.map +1 -1
- package/lib/injection/injector.d.ts +2 -3
- package/lib/injection/injector.js +6 -8
- package/lib/injection/injector.js.map +1 -1
- package/lib/injections/gee08.d.ts +7 -0
- package/lib/injections/gee08.js +68 -0
- package/lib/injections/gee08.js.map +1 -0
- package/lib/injections/gee1.d.ts +7 -0
- package/lib/injections/gee1.js +28 -0
- package/lib/injections/gee1.js.map +1 -0
- package/lib/injections/gio.d.ts +7 -0
- package/lib/injections/gio.js +431 -0
- package/lib/injections/gio.js.map +1 -0
- package/lib/injections/glib.d.ts +7 -0
- package/lib/injections/glib.js +204 -0
- package/lib/injections/glib.js.map +1 -0
- package/lib/injections/gobject.d.ts +7 -0
- package/lib/injections/gobject.js +479 -0
- package/lib/injections/gobject.js.map +1 -0
- package/lib/injections/inject.d.ts +4 -0
- package/lib/injections/inject.js +28 -0
- package/lib/injections/inject.js.map +1 -0
- package/lib/injections/tracker1.d.ts +7 -0
- package/lib/injections/tracker1.js +30 -0
- package/lib/injections/tracker1.js.map +1 -0
- package/lib/library-version.js.map +1 -1
- package/lib/logger.d.ts +1 -3
- package/lib/logger.js +3 -8
- package/lib/logger.js.map +1 -1
- package/lib/messages.d.ts +1 -4
- package/lib/messages.js +1 -3
- package/lib/messages.js.map +1 -1
- package/lib/registry.d.ts +9 -0
- package/lib/registry.js +13 -0
- package/lib/registry.js.map +1 -0
- package/lib/symtable.js +1 -1
- package/lib/symtable.js.map +1 -1
- package/lib/transformation.d.ts +4 -5
- package/lib/transformation.js +31 -127
- package/lib/transformation.js.map +1 -1
- package/lib/types/generate-config.d.ts +4 -11
- package/lib/types/gir-alias-element.d.ts +3 -12
- package/lib/types/gir-bitfield-element.d.ts +3 -14
- package/lib/types/gir-callable-param-element.d.ts +3 -31
- package/lib/types/gir-callable-params.d.ts +7 -0
- package/lib/types/gir-callable-params.js +2 -0
- package/lib/types/gir-callable-params.js.map +1 -0
- package/lib/types/gir-callable-return.d.ts +3 -20
- package/lib/types/gir-callback-element.d.ts +3 -12
- package/lib/types/gir-class-element.d.ts +3 -34
- package/lib/types/gir-constant-element.d.ts +3 -14
- package/lib/types/gir-constructor-element.d.ts +3 -5
- package/lib/types/gir-enum-element.d.ts +3 -16
- package/lib/types/gir-field-element.d.ts +3 -16
- package/lib/types/gir-function-element.d.ts +3 -5
- package/lib/types/gir-instance-parameter.d.ts +2 -17
- package/lib/types/gir-interface-element.d.ts +4 -19
- package/lib/types/gir-member-element.d.ts +4 -16
- package/lib/types/gir-method-element.d.ts +4 -10
- package/lib/types/gir-namespace.d.ts +14 -17
- package/lib/types/gir-property-element.d.ts +3 -22
- package/lib/types/gir-record-element.d.ts +3 -23
- package/lib/types/gir-repository.d.ts +3 -14
- package/lib/types/gir-signal.d.ts +3 -18
- package/lib/types/gir-union-element.d.ts +3 -16
- package/lib/types/gir-virtual-method.d.ts +3 -7
- package/lib/types/index.d.ts +3 -54
- package/lib/types/index.js +3 -54
- package/lib/types/index.js.map +1 -1
- package/lib/types/parsed-gir.d.ts +3 -2
- package/lib/types/transformations.d.ts +1 -8
- package/lib/types/user-config.d.ts +0 -11
- package/lib/types.d.ts +23 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +1 -0
- package/lib/util.d.ts +20 -0
- package/lib/util.js +67 -0
- package/lib/util.js.map +1 -0
- package/lib/utils.d.ts +2 -30
- package/lib/utils.js +0 -56
- package/lib/utils.js.map +1 -1
- package/lib/validators/class.d.ts +7 -0
- package/lib/validators/class.js +217 -0
- package/lib/validators/class.js.map +1 -0
- package/lib/validators/interface.d.ts +5 -0
- package/lib/validators/interface.js +16 -0
- package/lib/validators/interface.js.map +1 -0
- package/lib/visitor.d.ts +35 -0
- package/lib/visitor.js +29 -0
- package/lib/visitor.js.map +1 -0
- package/package.json +14 -10
- package/lib/gir-parser.d.ts +0 -2
- package/lib/gir-parser.js +0 -69
- package/lib/gir-parser.js.map +0 -1
- package/lib/injection/callbacks/node-gtk/index.d.ts +0 -2
- package/lib/injection/callbacks/node-gtk/index.js +0 -2
- package/lib/injection/callbacks/node-gtk/index.js.map +0 -1
- package/lib/injection/classes/node-gtk/gdk-4.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/gdk-4.0.js +0 -32
- package/lib/injection/classes/node-gtk/gdk-4.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/gio-2.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/gio-2.0.js +0 -14
- package/lib/injection/classes/node-gtk/gio-2.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/glib-2.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/glib-2.0.js +0 -19
- package/lib/injection/classes/node-gtk/glib-2.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/gobject-2.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/gobject-2.0.js +0 -66
- package/lib/injection/classes/node-gtk/gobject-2.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/graphene-1.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/graphene-1.0.js +0 -133
- package/lib/injection/classes/node-gtk/graphene-1.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/gtk-3.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/gtk-3.0.js +0 -31
- package/lib/injection/classes/node-gtk/gtk-3.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/gtk-4.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/gtk-4.0.js +0 -52
- package/lib/injection/classes/node-gtk/gtk-4.0.js.map +0 -1
- package/lib/injection/classes/node-gtk/index.d.ts +0 -2
- package/lib/injection/classes/node-gtk/index.js +0 -19
- package/lib/injection/classes/node-gtk/index.js.map +0 -1
- package/lib/injection/classes/node-gtk/pango-1.0.d.ts +0 -2
- package/lib/injection/classes/node-gtk/pango-1.0.js +0 -31
- package/lib/injection/classes/node-gtk/pango-1.0.js.map +0 -1
- package/lib/types/build-type.d.ts +0 -1
- package/lib/types/build-type.js +0 -2
- package/lib/types/build-type.js.map +0 -1
- package/lib/types/environment.d.ts +0 -1
- package/lib/types/environment.js +0 -2
- package/lib/types/environment.js.map +0 -1
- package/lib/types/gir-any-type.d.ts +0 -5
- package/lib/types/gir-any-type.js +0 -2
- package/lib/types/gir-any-type.js.map +0 -1
- package/lib/types/gir-array-type.d.ts +0 -20
- package/lib/types/gir-array-type.js +0 -3
- package/lib/types/gir-array-type.js.map +0 -1
- package/lib/types/gir-boolean.d.ts +0 -1
- package/lib/types/gir-boolean.js +0 -2
- package/lib/types/gir-boolean.js.map +0 -1
- package/lib/types/gir-boxed-element.d.ts +0 -15
- package/lib/types/gir-boxed-element.js +0 -2
- package/lib/types/gir-boxed-element.js.map +0 -1
- package/lib/types/gir-c-include.d.ts +0 -7
- package/lib/types/gir-c-include.js +0 -2
- package/lib/types/gir-c-include.js.map +0 -1
- package/lib/types/gir-callable-attrs.d.ts +0 -15
- package/lib/types/gir-callable-attrs.js +0 -3
- package/lib/types/gir-callable-attrs.js.map +0 -1
- package/lib/types/gir-callable-param.d.ts +0 -7
- package/lib/types/gir-callable-param.js +0 -2
- package/lib/types/gir-callable-param.js.map +0 -1
- package/lib/types/gir-direction.d.ts +0 -7
- package/lib/types/gir-direction.js +0 -9
- package/lib/types/gir-direction.js.map +0 -1
- package/lib/types/gir-doc-element.d.ts +0 -68
- package/lib/types/gir-doc-element.js +0 -2
- package/lib/types/gir-doc-element.js.map +0 -1
- package/lib/types/gir-implements.d.ts +0 -8
- package/lib/types/gir-implements.js +0 -2
- package/lib/types/gir-implements.js.map +0 -1
- package/lib/types/gir-include.d.ts +0 -9
- package/lib/types/gir-include.js +0 -2
- package/lib/types/gir-include.js.map +0 -1
- package/lib/types/gir-info-attrs.d.ts +0 -13
- package/lib/types/gir-info-attrs.js +0 -2
- package/lib/types/gir-info-attrs.js.map +0 -1
- package/lib/types/gir-info-elements.d.ts +0 -5
- package/lib/types/gir-info-elements.js +0 -2
- package/lib/types/gir-info-elements.js.map +0 -1
- package/lib/types/gir-package.d.ts +0 -7
- package/lib/types/gir-package.js +0 -2
- package/lib/types/gir-package.js.map +0 -1
- package/lib/types/gir-prerequisite.d.ts +0 -5
- package/lib/types/gir-prerequisite.js +0 -2
- package/lib/types/gir-prerequisite.js.map +0 -1
- package/lib/types/gir-transfer-ownership-type.d.ts +0 -5
- package/lib/types/gir-transfer-ownership-type.js +0 -7
- package/lib/types/gir-transfer-ownership-type.js.map +0 -1
- package/lib/types/gir-transfer-ownership.d.ts +0 -9
- package/lib/types/gir-transfer-ownership.js +0 -2
- package/lib/types/gir-transfer-ownership.js.map +0 -1
- package/lib/types/gir-type.d.ts +0 -14
- package/lib/types/gir-type.js +0 -2
- package/lib/types/gir-type.js.map +0 -1
- package/lib/types/gir-var-args.d.ts +0 -5
- package/lib/types/gir-var-args.js +0 -2
- package/lib/types/gir-var-args.js.map +0 -1
- package/lib/types/module-type.d.ts +0 -1
- package/lib/types/module-type.js +0 -2
- package/lib/types/module-type.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { type GirClassElement, type GirRecordElement, type GirUnionElement, type GirInterfaceElement, type GirCallableParamElement, type TsSignal, type TsFunction, type TsProperty, type TsVar, type TsTypeSeparator, type TsType, type TsClass, type TypeGirFunction, type TypeGirProperty, type ConflictChildElement, type ConflictGroupedElements, type ConflictGroupedElement } from './types/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Resolve conflicts between types caused by overloads / inheritances and implementations
|
|
4
4
|
* With multiple implementations or a inherit it can happen that the interfaces / parent have the same method and/or property names with incompatible types,
|
|
5
5
|
* we are trying to resolve this conflicts by merging, overloading or removing this conflicts.
|
|
6
6
|
*/
|
|
7
7
|
export declare class ConflictResolver {
|
|
8
|
-
private readonly environment;
|
|
9
|
-
private readonly verbose;
|
|
10
8
|
private log;
|
|
11
9
|
private girFactory;
|
|
12
|
-
constructor(
|
|
10
|
+
constructor(verbose: boolean);
|
|
13
11
|
private girElArrToChildArr;
|
|
14
12
|
private tsElArrToChildArr;
|
|
15
13
|
/**
|
|
@@ -19,46 +17,13 @@ export declare class ConflictResolver {
|
|
|
19
17
|
* @returns
|
|
20
18
|
*/
|
|
21
19
|
private getClassElements;
|
|
22
|
-
private tsElementIsMethod;
|
|
23
|
-
private tsElementIsStaticFunction;
|
|
24
|
-
private tsElementIsProperty;
|
|
25
|
-
private tsElementIsStaticProperty;
|
|
26
20
|
private tsElementIsSignal;
|
|
27
21
|
private tsElementIsConstructor;
|
|
28
22
|
private tsElementIsMethodOrFunction;
|
|
29
23
|
private tsElementIsPropertyOrVariable;
|
|
30
24
|
private tsElementIsStatic;
|
|
31
|
-
private typeIsString;
|
|
32
25
|
private tsTypeIsEqual;
|
|
33
26
|
private mergeTypes;
|
|
34
|
-
private setTypesProperty;
|
|
35
|
-
/**
|
|
36
|
-
* Merges two parameter name and type of two parameters
|
|
37
|
-
* @param a
|
|
38
|
-
* @param b
|
|
39
|
-
* @returns
|
|
40
|
-
*/
|
|
41
|
-
private mergeParam;
|
|
42
|
-
/**
|
|
43
|
-
* Merges parameter names and types of multiple functions
|
|
44
|
-
* @param params
|
|
45
|
-
* @returns
|
|
46
|
-
*/
|
|
47
|
-
private mergeParams;
|
|
48
|
-
private paramCanBeOptional;
|
|
49
|
-
/**
|
|
50
|
-
* In Typescript no optional parameters are allowed if the following ones are not optional
|
|
51
|
-
* @param girParams
|
|
52
|
-
* @returns
|
|
53
|
-
*/
|
|
54
|
-
private fixOptionalParameters;
|
|
55
|
-
/**
|
|
56
|
-
* Merge function types and parameters together
|
|
57
|
-
* @param baseFunc The function to change or null if you want to create a new property
|
|
58
|
-
* @param funcs The functions you want to merge
|
|
59
|
-
* @returns
|
|
60
|
-
*/
|
|
61
|
-
mergeFunctions(baseFunc: TsFunction | null, ...funcs: TsFunction[]): TsFunction;
|
|
62
27
|
/**
|
|
63
28
|
* Merge property types together
|
|
64
29
|
* @param baseProp The property to change or null if you want to create a new property
|
|
@@ -89,8 +54,6 @@ export declare class ConflictResolver {
|
|
|
89
54
|
*/
|
|
90
55
|
getTsElementByName(elements: (TsProperty | TsFunction)[], name: string): TsFunction | TsProperty | undefined;
|
|
91
56
|
protected canAddConflictProperty(conflictProperties: TsProperty[], prop: TsProperty): boolean | "" | null;
|
|
92
|
-
groupSignalConflicts(signalsMethods: ConflictChildElement<TsFunction>[], baseClass: TsClass): ConflictGroupedElements<TsFunction | TsProperty | TsVar>;
|
|
93
|
-
fixSignalConflicts(groupedElements: ConflictGroupedElements): void;
|
|
94
57
|
/**
|
|
95
58
|
* Check conflicts between the implementations / inheritances
|
|
96
59
|
* To fix type errors like:
|
package/lib/conflict-resolver.js
CHANGED
|
@@ -1,23 +1,18 @@
|
|
|
1
1
|
import { GirFactory } from './gir-factory.js';
|
|
2
2
|
import { Logger } from './logger.js';
|
|
3
3
|
import { NO_TSDATA } from './messages.js';
|
|
4
|
-
import { isEqual
|
|
4
|
+
import { isEqual } from './utils.js';
|
|
5
5
|
import { SIGNAL_METHOD_NAMES, MAX_CLASS_PARENT_DEPTH } from './constants.js';
|
|
6
|
-
import { GirDirection } from './types/gir-direction.js';
|
|
7
6
|
/**
|
|
8
7
|
* Resolve conflicts between types caused by overloads / inheritances and implementations
|
|
9
8
|
* With multiple implementations or a inherit it can happen that the interfaces / parent have the same method and/or property names with incompatible types,
|
|
10
9
|
* we are trying to resolve this conflicts by merging, overloading or removing this conflicts.
|
|
11
10
|
*/
|
|
12
11
|
export class ConflictResolver {
|
|
13
|
-
environment;
|
|
14
|
-
verbose;
|
|
15
12
|
log;
|
|
16
13
|
girFactory = new GirFactory();
|
|
17
|
-
constructor(
|
|
18
|
-
this.
|
|
19
|
-
this.verbose = verbose;
|
|
20
|
-
this.log = new Logger(environment, verbose, 'ConflictResolver');
|
|
14
|
+
constructor(verbose) {
|
|
15
|
+
this.log = new Logger(verbose, 'ConflictResolver');
|
|
21
16
|
}
|
|
22
17
|
girElArrToChildArr(dataArr, depth) {
|
|
23
18
|
return dataArr
|
|
@@ -151,18 +146,6 @@ export class ConflictResolver {
|
|
|
151
146
|
constructProps,
|
|
152
147
|
};
|
|
153
148
|
}
|
|
154
|
-
tsElementIsMethod(el) {
|
|
155
|
-
return !this.tsElementIsStatic(el) && this.tsElementIsMethodOrFunction(el);
|
|
156
|
-
}
|
|
157
|
-
tsElementIsStaticFunction(el) {
|
|
158
|
-
return this.tsElementIsStatic(el) && this.tsElementIsMethodOrFunction(el);
|
|
159
|
-
}
|
|
160
|
-
tsElementIsProperty(el) {
|
|
161
|
-
return !this.tsElementIsStatic(el) && this.tsElementIsPropertyOrVariable(el);
|
|
162
|
-
}
|
|
163
|
-
tsElementIsStaticProperty(el) {
|
|
164
|
-
return this.tsElementIsStatic(el) && this.tsElementIsPropertyOrVariable(el);
|
|
165
|
-
}
|
|
166
149
|
tsElementIsSignal(el) {
|
|
167
150
|
return el.tsTypeName === 'event-methods';
|
|
168
151
|
}
|
|
@@ -183,11 +166,6 @@ export class ConflictResolver {
|
|
|
183
166
|
// el.tsTypeName === 'constructor' ||
|
|
184
167
|
el.isStatic || el.tsTypeName === 'static-property' || el.tsTypeName === 'static-function');
|
|
185
168
|
}
|
|
186
|
-
typeIsString(type) {
|
|
187
|
-
return (type.type === 'string' ||
|
|
188
|
-
(type.type.startsWith("'") && type.type.endsWith("'")) ||
|
|
189
|
-
(type.type.startsWith('"') && type.type.endsWith('"')));
|
|
190
|
-
}
|
|
191
169
|
tsTypeIsEqual(a, b) {
|
|
192
170
|
return (a &&
|
|
193
171
|
b &&
|
|
@@ -212,146 +190,6 @@ export class ConflictResolver {
|
|
|
212
190
|
}
|
|
213
191
|
return dest;
|
|
214
192
|
}
|
|
215
|
-
setTypesProperty(types, property, value) {
|
|
216
|
-
for (const type of types) {
|
|
217
|
-
type[property] = value;
|
|
218
|
-
}
|
|
219
|
-
return types;
|
|
220
|
-
}
|
|
221
|
-
/**
|
|
222
|
-
* Merges two parameter name and type of two parameters
|
|
223
|
-
* @param a
|
|
224
|
-
* @param b
|
|
225
|
-
* @returns
|
|
226
|
-
*/
|
|
227
|
-
mergeParam(a, b) {
|
|
228
|
-
if (!a?._tsData && !b?._tsData) {
|
|
229
|
-
throw new Error('At least one parameter must be defined!');
|
|
230
|
-
}
|
|
231
|
-
let dest;
|
|
232
|
-
if (a?._tsData && b?._tsData) {
|
|
233
|
-
dest = merge({}, clone(a), clone(b));
|
|
234
|
-
if (!dest._tsData) {
|
|
235
|
-
throw new Error('Error on merge parameters!');
|
|
236
|
-
}
|
|
237
|
-
dest._tsData.type = [];
|
|
238
|
-
dest._tsData.type = this.mergeTypes('|', ...a._tsData.type, ...b._tsData.type);
|
|
239
|
-
if (a._tsData.name !== b._tsData.name) {
|
|
240
|
-
dest._tsData.name = `${a._tsData.name}_or_${b._tsData.name}`;
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
else {
|
|
244
|
-
dest = clone((a || b));
|
|
245
|
-
if (!dest._tsData) {
|
|
246
|
-
throw new Error('Error on merge parameters!');
|
|
247
|
-
}
|
|
248
|
-
// If `a` or `b` is undefined make the types optional
|
|
249
|
-
dest._tsData.type = this.setTypesProperty(dest._tsData.type, 'optional', true);
|
|
250
|
-
}
|
|
251
|
-
if (typesContainsOptional(dest._tsData.type)) {
|
|
252
|
-
dest._tsData.type = this.setTypesProperty(dest._tsData.type, 'optional', true);
|
|
253
|
-
}
|
|
254
|
-
return dest;
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* Merges parameter names and types of multiple functions
|
|
258
|
-
* @param params
|
|
259
|
-
* @returns
|
|
260
|
-
*/
|
|
261
|
-
mergeParams(...params) {
|
|
262
|
-
let dest = [];
|
|
263
|
-
for (const a of params) {
|
|
264
|
-
for (const b of params) {
|
|
265
|
-
if (a === b) {
|
|
266
|
-
continue;
|
|
267
|
-
}
|
|
268
|
-
if (isEqual(a, b)) {
|
|
269
|
-
dest = clone(a);
|
|
270
|
-
}
|
|
271
|
-
else {
|
|
272
|
-
const length = Math.max(a.length, b.length);
|
|
273
|
-
dest = new Array(length);
|
|
274
|
-
for (let i = 0; i < length; i++) {
|
|
275
|
-
const aParam = a[i];
|
|
276
|
-
const bParam = b[i];
|
|
277
|
-
dest[i] = this.mergeParam(aParam, bParam);
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
return dest;
|
|
283
|
-
}
|
|
284
|
-
paramCanBeOptional(girParam, girParams, skip = []) {
|
|
285
|
-
if (!girParam._tsData)
|
|
286
|
-
return false;
|
|
287
|
-
let canBeOptional = true;
|
|
288
|
-
const index = girParams.indexOf(girParam);
|
|
289
|
-
const following = girParams
|
|
290
|
-
.slice(index)
|
|
291
|
-
.filter((p) => !!p._tsData)
|
|
292
|
-
.filter(() => !skip.includes(girParam))
|
|
293
|
-
.filter((p) => p.$.direction !== GirDirection.Out)
|
|
294
|
-
.map((p) => p._tsData);
|
|
295
|
-
if (following.some((p) => p && !typesContainsOptional(p.type))) {
|
|
296
|
-
canBeOptional = false;
|
|
297
|
-
}
|
|
298
|
-
return canBeOptional;
|
|
299
|
-
}
|
|
300
|
-
/**
|
|
301
|
-
* In Typescript no optional parameters are allowed if the following ones are not optional
|
|
302
|
-
* @param girParams
|
|
303
|
-
* @returns
|
|
304
|
-
*/
|
|
305
|
-
fixOptionalParameters(girParams) {
|
|
306
|
-
for (const girParam of girParams) {
|
|
307
|
-
if (!girParam._tsData)
|
|
308
|
-
throw new Error(NO_TSDATA('fixOptionalParameters'));
|
|
309
|
-
if (typesContainsOptional(girParam._tsData.type) && !this.paramCanBeOptional(girParam, girParams)) {
|
|
310
|
-
this.setTypesProperty(girParam._tsData.type, 'optional', false);
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
return girParams;
|
|
314
|
-
}
|
|
315
|
-
/**
|
|
316
|
-
* Merge function types and parameters together
|
|
317
|
-
* @param baseFunc The function to change or null if you want to create a new property
|
|
318
|
-
* @param funcs The functions you want to merge
|
|
319
|
-
* @returns
|
|
320
|
-
*/
|
|
321
|
-
mergeFunctions(baseFunc, ...funcs) {
|
|
322
|
-
const returnTypesMap = [];
|
|
323
|
-
for (const func of funcs) {
|
|
324
|
-
returnTypesMap.push(...func.returnTypes);
|
|
325
|
-
}
|
|
326
|
-
const returnTypes = this.mergeTypes('|', ...returnTypesMap);
|
|
327
|
-
const inParamsMap = funcs.map((func) => func.inParams);
|
|
328
|
-
const inParams = [];
|
|
329
|
-
if (this.paramsHasConflict(...inParamsMap)) {
|
|
330
|
-
inParams.push(...this.mergeParams(...inParamsMap));
|
|
331
|
-
}
|
|
332
|
-
const outParamsMap = funcs.map((func) => func.outParams);
|
|
333
|
-
const outParams = [];
|
|
334
|
-
if (this.paramsHasConflict(...outParamsMap)) {
|
|
335
|
-
outParams.push(...this.mergeParams(...outParamsMap));
|
|
336
|
-
}
|
|
337
|
-
if (!funcs[0]) {
|
|
338
|
-
throw new Error('At least one function must exist!');
|
|
339
|
-
}
|
|
340
|
-
if (baseFunc) {
|
|
341
|
-
baseFunc.returnTypes = returnTypes;
|
|
342
|
-
return baseFunc;
|
|
343
|
-
}
|
|
344
|
-
return this.girFactory.newTsFunction({
|
|
345
|
-
name: funcs[0].name,
|
|
346
|
-
returnTypes: returnTypes,
|
|
347
|
-
isStatic: funcs[0].isStatic || false,
|
|
348
|
-
inParams: inParams.map((inParam) => inParam._tsData).filter((inParam) => !!inParam),
|
|
349
|
-
outParams: outParams
|
|
350
|
-
.map((outParam) => outParam._tsData)
|
|
351
|
-
.filter((outParam) => !!outParam),
|
|
352
|
-
girTypeName: funcs[0].girTypeName,
|
|
353
|
-
}, funcs[0].parent);
|
|
354
|
-
}
|
|
355
193
|
/**
|
|
356
194
|
* Merge property types together
|
|
357
195
|
* @param baseProp The property to change or null if you want to create a new property
|
|
@@ -451,71 +289,9 @@ export class ConflictResolver {
|
|
|
451
289
|
// Only one property can be defined, no overloads
|
|
452
290
|
!this.getTsElementByName(conflictProperties, prop.name) &&
|
|
453
291
|
// Do not set properties with signal method names
|
|
454
|
-
!SIGNAL_METHOD_NAMES
|
|
292
|
+
!SIGNAL_METHOD_NAMES.includes(prop.name);
|
|
455
293
|
return canAdd;
|
|
456
294
|
}
|
|
457
|
-
groupSignalConflicts(signalsMethods, baseClass) {
|
|
458
|
-
const groupedConflicts = {};
|
|
459
|
-
for (const base of signalsMethods) {
|
|
460
|
-
for (const b of signalsMethods) {
|
|
461
|
-
if (base === b) {
|
|
462
|
-
continue;
|
|
463
|
-
}
|
|
464
|
-
if (base.data.name !== 'connect' && base.data.name !== 'connect_after') {
|
|
465
|
-
continue;
|
|
466
|
-
}
|
|
467
|
-
const sigNameParam = base.data.inParams[0];
|
|
468
|
-
// const callbackParam = base.data.inParams[1]
|
|
469
|
-
const eventName = sigNameParam?._tsData?.type?.[0]?.type;
|
|
470
|
-
// TODO do not render the callback type as a full string, create a TSCallback instead
|
|
471
|
-
// const callbackType = callbackParam?._tsData?.type?.[0]?.type
|
|
472
|
-
// console.debug('eventName', eventName, callbackType)
|
|
473
|
-
if (!eventName || eventName === 'string') {
|
|
474
|
-
continue;
|
|
475
|
-
}
|
|
476
|
-
groupedConflicts[eventName] ||= {
|
|
477
|
-
baseElements: [],
|
|
478
|
-
inheritedElements: [],
|
|
479
|
-
baseClass,
|
|
480
|
-
};
|
|
481
|
-
const groupedConflict = groupedConflicts[eventName];
|
|
482
|
-
const isBaseElement = base.depth === 0;
|
|
483
|
-
if (isBaseElement) {
|
|
484
|
-
if (!groupedConflict.baseElements.find((c) => isEqual(c.data, base.data))) {
|
|
485
|
-
groupedConflict.baseElements.push(base);
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
|
-
else {
|
|
489
|
-
if (!groupedConflict.inheritedElements.find((c) => isEqual(c.data, base.data))) {
|
|
490
|
-
groupedConflict.inheritedElements.push(base);
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
}
|
|
494
|
-
}
|
|
495
|
-
return groupedConflicts;
|
|
496
|
-
}
|
|
497
|
-
fixSignalConflicts(groupedElements) {
|
|
498
|
-
for (const eventName of Object.keys(groupedElements)) {
|
|
499
|
-
const elements = groupedElements[eventName];
|
|
500
|
-
const bases = elements.baseElements;
|
|
501
|
-
if (!bases.length) {
|
|
502
|
-
// TODO
|
|
503
|
-
// return this.fixIndirectSignalConflicts(elements.inheritedElements, elements.baseClass)
|
|
504
|
-
return;
|
|
505
|
-
}
|
|
506
|
-
for (const base of bases) {
|
|
507
|
-
if (base.data.hasUnresolvedConflict) {
|
|
508
|
-
continue;
|
|
509
|
-
}
|
|
510
|
-
for (const b of elements.inheritedElements) {
|
|
511
|
-
if (b === base || b.data.hasUnresolvedConflict) {
|
|
512
|
-
continue;
|
|
513
|
-
}
|
|
514
|
-
// TODO
|
|
515
|
-
}
|
|
516
|
-
}
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
295
|
/**
|
|
520
296
|
* Check conflicts between the implementations / inheritances
|
|
521
297
|
* To fix type errors like:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflict-resolver.js","sourceRoot":"","sources":["../src/conflict-resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"conflict-resolver.js","sourceRoot":"","sources":["../src/conflict-resolver.ts"],"names":[],"mappings":"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"}
|
package/lib/constants.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { LibraryVersion } from './library-version.js';
|
|
2
|
-
import type { Environment } from './types/index.js';
|
|
3
2
|
/**
|
|
4
3
|
* In gjs all classes have a static name property but the classes listed below already have a static name property
|
|
5
4
|
*/
|
|
@@ -21,10 +20,7 @@ export declare const APP_NAME = "ts-for-gir";
|
|
|
21
20
|
export declare const APP_USAGE = "TypeScript type definition generator for GObject introspection GIR files";
|
|
22
21
|
export declare const APP_SOURCE = "https://github.com/gjsify/ts-for-gir";
|
|
23
22
|
export declare const APP_VERSION: string;
|
|
24
|
-
export declare const PACKAGE_DESC: (packageName: string,
|
|
25
|
-
export declare const PACKAGE_KEYWORDS: (packageName: string
|
|
23
|
+
export declare const PACKAGE_DESC: (packageName: string, libraryVersion?: LibraryVersion) => string;
|
|
24
|
+
export declare const PACKAGE_KEYWORDS: (packageName: string) => string;
|
|
26
25
|
export declare const GENERIC_NAMES: string[];
|
|
27
|
-
export declare const
|
|
28
|
-
export declare const SIGNAL_METHOD_NAMES_GJS: string[];
|
|
29
|
-
export declare const SIGNAL_METHOD_NAMES_NODE: string[];
|
|
30
|
-
export declare const SIGNAL_METHOD_NAMES: (env: Environment) => (string | string[])[];
|
|
26
|
+
export declare const SIGNAL_METHOD_NAMES: string[];
|
package/lib/constants.js
CHANGED
|
@@ -14,25 +14,15 @@ export const APP_NAME = 'ts-for-gir';
|
|
|
14
14
|
export const APP_USAGE = 'TypeScript type definition generator for GObject introspection GIR files';
|
|
15
15
|
export const APP_SOURCE = 'https://github.com/gjsify/ts-for-gir';
|
|
16
16
|
export const APP_VERSION = PACKAGE.version;
|
|
17
|
-
export const PACKAGE_DESC = (packageName,
|
|
18
|
-
const envStr = environment === 'node' ? 'Node.js' : 'GJS';
|
|
17
|
+
export const PACKAGE_DESC = (packageName, libraryVersion) => {
|
|
19
18
|
if (libraryVersion) {
|
|
20
|
-
return
|
|
19
|
+
return `GJS TypeScript type definitions for ${packageName}, generated from library version ${libraryVersion.toString()}`;
|
|
21
20
|
}
|
|
22
|
-
return
|
|
21
|
+
return `GJS TypeScript type definitions for ${packageName}`;
|
|
23
22
|
};
|
|
24
|
-
export const PACKAGE_KEYWORDS = (packageName
|
|
25
|
-
|
|
26
|
-
return `"Gir", "TypeScript", "types", "GObject-Introspection", ${envKeywords}, "${packageName}"`;
|
|
23
|
+
export const PACKAGE_KEYWORDS = (packageName) => {
|
|
24
|
+
return `"Gir", "TypeScript", "types", "GObject-Introspection", "GJS", "${packageName}"`;
|
|
27
25
|
};
|
|
28
26
|
export const GENERIC_NAMES = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'K'];
|
|
29
|
-
export const
|
|
30
|
-
export const SIGNAL_METHOD_NAMES_GJS = ['connect_after', 'emit'];
|
|
31
|
-
export const SIGNAL_METHOD_NAMES_NODE = ['after', 'on', 'once', 'off'];
|
|
32
|
-
export const SIGNAL_METHOD_NAMES = (env) => {
|
|
33
|
-
if (env === 'node') {
|
|
34
|
-
return [...SIGNAL_METHOD_NAMES_GENERAL, SIGNAL_METHOD_NAMES_NODE];
|
|
35
|
-
}
|
|
36
|
-
return [...SIGNAL_METHOD_NAMES_GENERAL, SIGNAL_METHOD_NAMES_GJS];
|
|
37
|
-
};
|
|
27
|
+
export const SIGNAL_METHOD_NAMES = ['connect', 'emit', 'disconnect', 'connect_after', 'emit'];
|
|
38
28
|
//# sourceMappingURL=constants.js.map
|
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAA;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAA;AAC9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAA;AACpD,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAA;AAE1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAA;AAEzC,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,YAAY,CAOtC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAA;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAA;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG,0EAA0E,CAAA;AACnG,MAAM,CAAC,MAAM,UAAU,GAAG,sCAAsC,CAAA;AAChE,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAA;AAE1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAmB,EAAE,cAA+B,EAAE,EAAE;IACjF,IAAI,cAAc,EAAE,CAAC;QACjB,OAAO,uCAAuC,WAAW,oCAAoC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAA;IAC5H,CAAC;IACD,OAAO,uCAAuC,WAAW,EAAE,CAAA;AAC/D,CAAC,CAAA;AACD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,WAAmB,EAAE,EAAE;IACpD,OAAO,kEAAkE,WAAW,GAAG,CAAA;AAC3F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAEzF,MAAM,CAAC,MAAM,mBAAmB,GAAa,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,CAAA"}
|
|
@@ -2,16 +2,15 @@ import { Logger } from './logger.js';
|
|
|
2
2
|
import { Transformation } from './transformation.js';
|
|
3
3
|
import type { Dependency, GenerateConfig, GirInclude } from './types/index.js';
|
|
4
4
|
import type { GirModule } from './gir-module.js';
|
|
5
|
-
|
|
5
|
+
import { GirNSRegistry } from './registry.js';
|
|
6
|
+
export declare class DependencyManager extends GirNSRegistry {
|
|
6
7
|
protected readonly config: GenerateConfig;
|
|
7
8
|
protected log: Logger;
|
|
8
9
|
protected transformation: Transformation;
|
|
9
10
|
cache: {
|
|
10
11
|
[packageName: string]: Dependency;
|
|
11
12
|
};
|
|
12
|
-
static
|
|
13
|
-
[env: string]: DependencyManager;
|
|
14
|
-
};
|
|
13
|
+
static instance?: DependencyManager;
|
|
15
14
|
protected constructor(config: GenerateConfig);
|
|
16
15
|
/**
|
|
17
16
|
* Get the DependencyManager singleton instance
|
|
@@ -102,5 +101,4 @@ export declare class DependencyManager {
|
|
|
102
101
|
find(namespace: string): Dependency | null;
|
|
103
102
|
protected getPseudoPackage(packageName: string): Dependency;
|
|
104
103
|
getGjs(): Dependency;
|
|
105
|
-
getNodeGtk(): Dependency;
|
|
106
104
|
}
|