@ts-for-gir/lib 4.0.0-beta.1 → 4.0.0-beta.11

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.
Files changed (277) hide show
  1. package/lib/constants.d.ts +6 -7
  2. package/lib/constants.js +74 -9
  3. package/lib/constants.js.map +1 -1
  4. package/lib/dependency-manager.d.ts +60 -14
  5. package/lib/dependency-manager.js +143 -46
  6. package/lib/dependency-manager.js.map +1 -1
  7. package/lib/generators/dts-inline.d.ts +4 -2
  8. package/lib/generators/dts-inline.js +10 -12
  9. package/lib/generators/dts-inline.js.map +1 -1
  10. package/lib/generators/dts-modules.d.ts +4 -2
  11. package/lib/generators/dts-modules.js +12 -14
  12. package/lib/generators/dts-modules.js.map +1 -1
  13. package/lib/generators/dts.d.ts +2 -2
  14. package/lib/generators/dts.js +8 -8
  15. package/lib/generators/dts.js.map +1 -1
  16. package/lib/generators/generator.d.ts +3 -3
  17. package/lib/generators/generator.js.map +1 -1
  18. package/lib/generators/json.d.ts +4 -2
  19. package/lib/generators/json.js +18 -20
  20. package/lib/generators/json.js.map +1 -1
  21. package/lib/generics/visitor.js +5 -9
  22. package/lib/generics/visitor.js.map +1 -1
  23. package/lib/gir/alias.d.ts +2 -2
  24. package/lib/gir/alias.js +3 -3
  25. package/lib/gir/alias.js.map +1 -1
  26. package/lib/gir/base.d.ts +3 -3
  27. package/lib/gir/base.js.map +1 -1
  28. package/lib/gir/class.d.ts +5 -5
  29. package/lib/gir/class.js +32 -33
  30. package/lib/gir/class.js.map +1 -1
  31. package/lib/gir/const.d.ts +2 -2
  32. package/lib/gir/const.js +1 -1
  33. package/lib/gir/const.js.map +1 -1
  34. package/lib/gir/enum.d.ts +5 -5
  35. package/lib/gir/enum.js +7 -7
  36. package/lib/gir/enum.js.map +1 -1
  37. package/lib/gir/function.d.ts +9 -9
  38. package/lib/gir/function.js +4 -4
  39. package/lib/gir/function.js.map +1 -1
  40. package/lib/gir/nodes.d.ts +1 -1
  41. package/lib/gir/nodes.js +1 -1
  42. package/lib/gir/nodes.js.map +1 -1
  43. package/lib/gir/property.d.ts +2 -2
  44. package/lib/gir/property.js.map +1 -1
  45. package/lib/gir/registry.d.ts +6 -6
  46. package/lib/gir/registry.js +3 -3
  47. package/lib/gir/registry.js.map +1 -1
  48. package/lib/gir/signal.d.ts +2 -2
  49. package/lib/gir/signal.js.map +1 -1
  50. package/lib/gir/util.d.ts +3 -3
  51. package/lib/gir/util.js +17 -14
  52. package/lib/gir/util.js.map +1 -1
  53. package/lib/gir-module.d.ts +27 -39
  54. package/lib/gir-module.js +156 -149
  55. package/lib/gir-module.js.map +1 -1
  56. package/lib/gir.d.ts +42 -40
  57. package/lib/gir.js +27 -23
  58. package/lib/gir.js.map +1 -1
  59. package/lib/index.d.ts +1 -2
  60. package/lib/index.js +1 -2
  61. package/lib/index.js.map +1 -1
  62. package/lib/library-version.d.ts +2 -0
  63. package/lib/library-version.js +13 -0
  64. package/lib/library-version.js.map +1 -1
  65. package/lib/logger.d.ts +18 -16
  66. package/lib/logger.js +28 -26
  67. package/lib/logger.js.map +1 -1
  68. package/lib/messages.d.ts +0 -3
  69. package/lib/messages.js +0 -3
  70. package/lib/messages.js.map +1 -1
  71. package/lib/registry.d.ts +0 -1
  72. package/lib/registry.js +0 -1
  73. package/lib/registry.js.map +1 -1
  74. package/lib/transformation.d.ts +5 -15
  75. package/lib/transformation.js +9 -89
  76. package/lib/transformation.js.map +1 -1
  77. package/lib/types/dependency.d.ts +13 -1
  78. package/lib/types/format.d.ts +1 -0
  79. package/lib/types/format.js +2 -0
  80. package/lib/types/format.js.map +1 -0
  81. package/lib/types/gir-module-resolved-by.d.ts +5 -0
  82. package/lib/types/index.d.ts +7 -2
  83. package/lib/types/index.js +7 -2
  84. package/lib/types/index.js.map +1 -1
  85. package/lib/types/metadata.d.ts +8 -0
  86. package/lib/types/metadata.js +2 -0
  87. package/lib/types/metadata.js.map +1 -0
  88. package/lib/types/options-base.d.ts +4 -0
  89. package/lib/types/options-base.js +2 -0
  90. package/lib/types/options-base.js.map +1 -0
  91. package/lib/types/{generate-config.d.ts → options-generation.d.ts} +21 -11
  92. package/lib/types/options-generation.js +2 -0
  93. package/lib/types/options-generation.js.map +1 -0
  94. package/lib/types/options-load.d.ts +5 -0
  95. package/lib/types/options-load.js +2 -0
  96. package/lib/types/options-load.js.map +1 -0
  97. package/lib/types/options-transform.d.ts +4 -0
  98. package/lib/types/options-transform.js +2 -0
  99. package/lib/types/options-transform.js.map +1 -0
  100. package/lib/types/output-format.d.ts +1 -0
  101. package/lib/types/output-format.js +2 -0
  102. package/lib/types/output-format.js.map +1 -0
  103. package/lib/types/property-case.d.ts +1 -0
  104. package/lib/types/property-case.js +2 -0
  105. package/lib/types/property-case.js.map +1 -0
  106. package/lib/types/template-data.d.ts +2 -2
  107. package/lib/types/user-config.d.ts +21 -6
  108. package/lib/utils/files.d.ts +21 -0
  109. package/lib/utils/files.js +62 -0
  110. package/lib/utils/files.js.map +1 -0
  111. package/lib/utils/girs.d.ts +45 -0
  112. package/lib/utils/girs.js +101 -0
  113. package/lib/utils/girs.js.map +1 -0
  114. package/lib/utils/index.d.ts +6 -0
  115. package/lib/utils/index.js +7 -0
  116. package/lib/utils/index.js.map +1 -0
  117. package/lib/utils/numbers.d.ts +6 -0
  118. package/lib/utils/numbers.js +10 -0
  119. package/lib/utils/numbers.js.map +1 -0
  120. package/lib/utils/objects.d.ts +135 -0
  121. package/lib/utils/objects.js +122 -0
  122. package/lib/utils/objects.js.map +1 -0
  123. package/lib/utils/path.d.ts +1 -0
  124. package/lib/utils/path.js +7 -0
  125. package/lib/utils/path.js.map +1 -0
  126. package/lib/utils/strings.d.ts +74 -0
  127. package/lib/utils/strings.js +121 -0
  128. package/lib/utils/strings.js.map +1 -0
  129. package/lib/utils.d.ts +21 -15
  130. package/lib/utils.js +58 -13
  131. package/lib/utils.js.map +1 -1
  132. package/lib/validators/interface.js +1 -1
  133. package/lib/validators/interface.js.map +1 -1
  134. package/package.json +12 -11
  135. package/lib/conflict-resolver.d.ts +0 -119
  136. package/lib/conflict-resolver.js +0 -893
  137. package/lib/conflict-resolver.js.map +0 -1
  138. package/lib/generators/dts/gio.d.ts +0 -2
  139. package/lib/generators/dts/gio.js +0 -9
  140. package/lib/generators/dts/gio.js.map +0 -1
  141. package/lib/gir-factory.d.ts +0 -52
  142. package/lib/gir-factory.js +0 -340
  143. package/lib/gir-factory.js.map +0 -1
  144. package/lib/injection/callbacks/gjs/Gio-2.0.d.ts +0 -2
  145. package/lib/injection/callbacks/gjs/Gio-2.0.js +0 -36
  146. package/lib/injection/callbacks/gjs/Gio-2.0.js.map +0 -1
  147. package/lib/injection/callbacks/gjs/index.d.ts +0 -2
  148. package/lib/injection/callbacks/gjs/index.js +0 -3
  149. package/lib/injection/callbacks/gjs/index.js.map +0 -1
  150. package/lib/injection/callbacks/index.d.ts +0 -3
  151. package/lib/injection/callbacks/index.js +0 -3
  152. package/lib/injection/callbacks/index.js.map +0 -1
  153. package/lib/injection/classes/gjs/gio-2.0.d.ts +0 -5
  154. package/lib/injection/classes/gjs/gio-2.0.js +0 -254
  155. package/lib/injection/classes/gjs/gio-2.0.js.map +0 -1
  156. package/lib/injection/classes/gjs/glib-2.0.d.ts +0 -2
  157. package/lib/injection/classes/gjs/glib-2.0.js +0 -225
  158. package/lib/injection/classes/gjs/glib-2.0.js.map +0 -1
  159. package/lib/injection/classes/gjs/gobject-2.0.d.ts +0 -2
  160. package/lib/injection/classes/gjs/gobject-2.0.js +0 -634
  161. package/lib/injection/classes/gjs/gobject-2.0.js.map +0 -1
  162. package/lib/injection/classes/gjs/index.d.ts +0 -2
  163. package/lib/injection/classes/gjs/index.js +0 -5
  164. package/lib/injection/classes/gjs/index.js.map +0 -1
  165. package/lib/injection/classes/glib-2.0.d.ts +0 -2
  166. package/lib/injection/classes/glib-2.0.js +0 -35
  167. package/lib/injection/classes/glib-2.0.js.map +0 -1
  168. package/lib/injection/classes/index.d.ts +0 -3
  169. package/lib/injection/classes/index.js +0 -4
  170. package/lib/injection/classes/index.js.map +0 -1
  171. package/lib/injection/index.d.ts +0 -3
  172. package/lib/injection/index.js +0 -4
  173. package/lib/injection/index.js.map +0 -1
  174. package/lib/injection/injector.d.ts +0 -16
  175. package/lib/injection/injector.js +0 -138
  176. package/lib/injection/injector.js.map +0 -1
  177. package/lib/symtable.d.ts +0 -24
  178. package/lib/symtable.js +0 -63
  179. package/lib/symtable.js.map +0 -1
  180. package/lib/types/conflict-child-element.d.ts +0 -10
  181. package/lib/types/conflict-child-element.js +0 -2
  182. package/lib/types/conflict-child-element.js.map +0 -1
  183. package/lib/types/conflict-grouped-element.d.ts +0 -6
  184. package/lib/types/conflict-grouped-element.js +0 -2
  185. package/lib/types/conflict-grouped-element.js.map +0 -1
  186. package/lib/types/conflict-grouped-elements.d.ts +0 -4
  187. package/lib/types/conflict-grouped-elements.js +0 -2
  188. package/lib/types/conflict-grouped-elements.js.map +0 -1
  189. package/lib/types/generate-config.js +0 -2
  190. package/lib/types/generate-config.js.map +0 -1
  191. package/lib/types/injection-callback.d.ts +0 -16
  192. package/lib/types/injection-callback.js +0 -2
  193. package/lib/types/injection-callback.js.map +0 -1
  194. package/lib/types/injection-class.d.ts +0 -25
  195. package/lib/types/injection-class.js +0 -2
  196. package/lib/types/injection-class.js.map +0 -1
  197. package/lib/types/injection-function.d.ts +0 -7
  198. package/lib/types/injection-function.js +0 -2
  199. package/lib/types/injection-function.js.map +0 -1
  200. package/lib/types/injection-generic-parameter.d.ts +0 -2
  201. package/lib/types/injection-generic-parameter.js +0 -2
  202. package/lib/types/injection-generic-parameter.js.map +0 -1
  203. package/lib/types/injection-instance-parameter.d.ts +0 -2
  204. package/lib/types/injection-instance-parameter.js +0 -2
  205. package/lib/types/injection-instance-parameter.js.map +0 -1
  206. package/lib/types/injection-parameter.d.ts +0 -8
  207. package/lib/types/injection-parameter.js +0 -2
  208. package/lib/types/injection-parameter.js.map +0 -1
  209. package/lib/types/injection-property.d.ts +0 -4
  210. package/lib/types/injection-property.js +0 -2
  211. package/lib/types/injection-property.js.map +0 -1
  212. package/lib/types/injection-type.d.ts +0 -2
  213. package/lib/types/injection-type.js +0 -2
  214. package/lib/types/injection-type.js.map +0 -1
  215. package/lib/types/injection.d.ts +0 -5
  216. package/lib/types/injection.js +0 -2
  217. package/lib/types/injection.js.map +0 -1
  218. package/lib/types/promisify-func.d.ts +0 -7
  219. package/lib/types/promisify-func.js +0 -2
  220. package/lib/types/promisify-func.js.map +0 -1
  221. package/lib/types/sym-table-items.d.ts +0 -4
  222. package/lib/types/sym-table-items.js +0 -2
  223. package/lib/types/sym-table-items.js.map +0 -1
  224. package/lib/types/ts-alias.d.ts +0 -10
  225. package/lib/types/ts-alias.js +0 -2
  226. package/lib/types/ts-alias.js.map +0 -1
  227. package/lib/types/ts-callback-interface.d.ts +0 -10
  228. package/lib/types/ts-callback-interface.js +0 -2
  229. package/lib/types/ts-callback-interface.js.map +0 -1
  230. package/lib/types/ts-callback.d.ts +0 -17
  231. package/lib/types/ts-callback.js +0 -2
  232. package/lib/types/ts-callback.js.map +0 -1
  233. package/lib/types/ts-class.d.ts +0 -85
  234. package/lib/types/ts-class.js +0 -2
  235. package/lib/types/ts-class.js.map +0 -1
  236. package/lib/types/ts-enum.d.ts +0 -12
  237. package/lib/types/ts-enum.js +0 -2
  238. package/lib/types/ts-enum.js.map +0 -1
  239. package/lib/types/ts-function.d.ts +0 -55
  240. package/lib/types/ts-function.js +0 -2
  241. package/lib/types/ts-function.js.map +0 -1
  242. package/lib/types/ts-generic-parameter.d.ts +0 -8
  243. package/lib/types/ts-generic-parameter.js +0 -2
  244. package/lib/types/ts-generic-parameter.js.map +0 -1
  245. package/lib/types/ts-instance-parameter.d.ts +0 -4
  246. package/lib/types/ts-instance-parameter.js +0 -2
  247. package/lib/types/ts-instance-parameter.js.map +0 -1
  248. package/lib/types/ts-member.d.ts +0 -10
  249. package/lib/types/ts-member.js +0 -2
  250. package/lib/types/ts-member.js.map +0 -1
  251. package/lib/types/ts-method.d.ts +0 -5
  252. package/lib/types/ts-method.js +0 -2
  253. package/lib/types/ts-method.js.map +0 -1
  254. package/lib/types/ts-parameter.d.ts +0 -15
  255. package/lib/types/ts-parameter.js +0 -2
  256. package/lib/types/ts-parameter.js.map +0 -1
  257. package/lib/types/ts-property.d.ts +0 -17
  258. package/lib/types/ts-property.js +0 -2
  259. package/lib/types/ts-property.js.map +0 -1
  260. package/lib/types/ts-signal.d.ts +0 -17
  261. package/lib/types/ts-signal.js +0 -2
  262. package/lib/types/ts-signal.js.map +0 -1
  263. package/lib/types/ts-type-name.d.ts +0 -1
  264. package/lib/types/ts-type-name.js +0 -2
  265. package/lib/types/ts-type-name.js.map +0 -1
  266. package/lib/types/ts-type-separator.d.ts +0 -1
  267. package/lib/types/ts-type-separator.js +0 -2
  268. package/lib/types/ts-type-separator.js.map +0 -1
  269. package/lib/types/ts-type.d.ts +0 -26
  270. package/lib/types/ts-type.js +0 -2
  271. package/lib/types/ts-type.js.map +0 -1
  272. package/lib/types/ts-var.d.ts +0 -17
  273. package/lib/types/ts-var.js +0 -2
  274. package/lib/types/ts-var.js.map +0 -1
  275. package/lib/types.d.ts +0 -23
  276. package/lib/types.js +0 -2
  277. package/lib/types.js.map +0 -1
@@ -1,119 +0,0 @@
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
- /**
3
- * Resolve conflicts between types caused by overloads / inheritances and implementations
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
- * we are trying to resolve this conflicts by merging, overloading or removing this conflicts.
6
- */
7
- export declare class ConflictResolver {
8
- private log;
9
- private girFactory;
10
- constructor(verbose: boolean);
11
- private girElArrToChildArr;
12
- private tsElArrToChildArr;
13
- /**
14
- * Get class elements and parent elements (implementations and inherits)
15
- * @param tsClass
16
- * @param depth
17
- * @returns
18
- */
19
- private getClassElements;
20
- private tsElementIsSignal;
21
- private tsElementIsConstructor;
22
- private tsElementIsMethodOrFunction;
23
- private tsElementIsPropertyOrVariable;
24
- private tsElementIsStatic;
25
- private tsTypeIsEqual;
26
- private mergeTypes;
27
- /**
28
- * Merge property types together
29
- * @param baseProp The property to change or null if you want to create a new property
30
- * @param props The properties you want to merge
31
- * @returns
32
- */
33
- mergeProperties(typeSeparator: TsTypeSeparator, baseProp: TsProperty | null, ...props: TsProperty[]): TsProperty;
34
- /**
35
- * Check if there is a type conflict between the ts elements a and b
36
- * @param a
37
- * @param b
38
- * @returns
39
- */
40
- hasConflict(a: ConflictChildElement, b: ConflictChildElement): boolean;
41
- newAnyTsProperty(name: string, girTypeName: TypeGirProperty): TsProperty;
42
- /**
43
- * Returns a new any function: `name(...args: any[]): any`
44
- * @param name The name of the function
45
- */
46
- newAnyTsFunction(name: string, girTypeName: TypeGirFunction, isStatic: boolean, parent: TsClass | null): TsFunction;
47
- getCompatibleTsProperty(elements: TsProperty[], baseProp: TsProperty): TsProperty | undefined;
48
- getCompatibleTsFunction(elements: TsFunction[], baseFunc: TsFunction): TsFunction | undefined;
49
- /**
50
- * Use this instead of `getCompatibleTsProperty` and `getCompatibleTsProperty` if you can, because it's much faster
51
- * @param elements
52
- * @param name
53
- * @returns
54
- */
55
- getTsElementByName(elements: (TsProperty | TsFunction)[], name: string): TsFunction | TsProperty | undefined;
56
- protected canAddConflictProperty(conflictProperties: TsProperty[], prop: TsProperty): boolean | "" | null;
57
- /**
58
- * Check conflicts between the implementations / inheritances
59
- * To fix type errors like:
60
- * ```
61
- * Interface 'PopoverMenu' can\'t simultaneously extend types 'Popover' and 'Native'.
62
- * Named property 'parent' of types 'Popover' and 'Native' are not identical.
63
- */
64
- fixIndirectConflicts(name: string, elements: ConflictChildElement[], baseClass: TsClass): void;
65
- /**
66
- * Check conflicts within the class itself (ignores implementations / inheritances)
67
- */
68
- fixInternalConflicts(name: string, elements: ConflictChildElement[], baseClass: TsClass): void;
69
- /**
70
- * Check conflicts of the class with implementations and inheritances
71
- */
72
- fixDirectConflicts(name: string, elements: ConflictGroupedElement): void;
73
- /**
74
- * Fix the conflicts of a class
75
- * @param groupedElements
76
- */
77
- fixConflicts(groupedElements: ConflictGroupedElements): void;
78
- /**
79
- * Group conflicts by name and sort them by depth for simpler handling of conflicts
80
- */
81
- groupConflicts(elements: ConflictChildElement[], tsClass: TsClass): ConflictGroupedElements<TsFunction | TsProperty | TsVar>;
82
- /**
83
- * With multiple implementations or a inherit it can happen that the interfaces / parent have the same method and/or property name with incompatible types.
84
- * We merge these types here to solve this problem.
85
- * @param girClass
86
- */
87
- repairClass(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement): GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement;
88
- /**
89
- * Returns true if `p1s` and `p2s` conflicting with each other.
90
- * The parameters must have the same length and the same type but can have different names
91
- * @param params
92
- * @returns
93
- */
94
- paramsHasConflict(...params: GirCallableParamElement[][]): boolean;
95
- typesHasConflict(a: TsType[], b: TsType[]): boolean;
96
- /**
97
- * Returns `true` if the function / method types of `a` and `b` are not compatible with each other.
98
- * The parameters must have the same length and the same type but can have different names
99
- * @param a
100
- * @param b
101
- * @returns
102
- */
103
- functionHasConflict(a: TsFunction, b: TsFunction): boolean;
104
- /**
105
- * Returns `true` if the property types of `a` and `b` are not compatible with each other.
106
- * @param a
107
- * @param b
108
- * @returns
109
- */
110
- propertyHasConflict(a: TsVar & TsProperty, b: TsVar & TsProperty): boolean;
111
- signalHasConflict(a: TsSignal, b: TsSignal): boolean;
112
- /**
113
- * Returns true if the elements (properties or methods) of `a` and `b` are not compatible with each other (has no conflict).
114
- * @param a
115
- * @param b
116
- * @returns
117
- */
118
- elementHasConflict(a: TsFunction | TsVar | TsProperty | TsSignal, b: TsFunction | TsVar | TsProperty | TsSignal): boolean;
119
- }