@ts-for-gir/cli 3.0.0-beta.9 → 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.
Files changed (760) hide show
  1. package/README.md +160 -35
  2. package/lib/commands/doc.d.ts +1 -17
  3. package/lib/commands/doc.js +7 -13
  4. package/lib/commands/doc.js.map +1 -1
  5. package/lib/commands/generate.d.ts +1 -37
  6. package/lib/commands/generate.js +8 -24
  7. package/lib/commands/generate.js.map +1 -1
  8. package/lib/commands/list.d.ts +1 -11
  9. package/lib/commands/list.js +6 -10
  10. package/lib/commands/list.js.map +1 -1
  11. package/lib/config.d.ts +21 -5
  12. package/lib/config.js +164 -86
  13. package/lib/config.js.map +1 -1
  14. package/lib/generation-handler.d.ts +3 -4
  15. package/lib/generation-handler.js +7 -11
  16. package/lib/generation-handler.js.map +1 -1
  17. package/lib/index.d.ts +0 -12
  18. package/lib/index.js +0 -12
  19. package/lib/index.js.map +1 -1
  20. package/lib/module-loader.d.ts +35 -24
  21. package/lib/module-loader.js +3 -8
  22. package/lib/module-loader.js.map +1 -1
  23. package/lib/utils.d.ts +0 -262
  24. package/lib/utils.js +8 -371
  25. package/lib/utils.js.map +1 -1
  26. package/package.json +32 -37
  27. package/src/commands/doc.ts +9 -14
  28. package/src/commands/generate.ts +10 -24
  29. package/src/commands/list.ts +8 -10
  30. package/src/config.ts +178 -92
  31. package/src/generation-handler.ts +11 -12
  32. package/src/index.ts +0 -12
  33. package/src/module-loader.ts +39 -31
  34. package/src/utils.ts +8 -401
  35. package/lib/conflict-resolver.d.ts +0 -155
  36. package/lib/conflict-resolver.js +0 -1103
  37. package/lib/conflict-resolver.js.map +0 -1
  38. package/lib/constants.d.ts +0 -18
  39. package/lib/constants.js +0 -23
  40. package/lib/constants.js.map +0 -1
  41. package/lib/dependency-manager.d.ts +0 -34
  42. package/lib/dependency-manager.js +0 -78
  43. package/lib/dependency-manager.js.map +0 -1
  44. package/lib/generator.d.ts +0 -5
  45. package/lib/generator.js +0 -2
  46. package/lib/generator.js.map +0 -1
  47. package/lib/gir-factory.d.ts +0 -51
  48. package/lib/gir-factory.js +0 -361
  49. package/lib/gir-factory.js.map +0 -1
  50. package/lib/gir-module.d.ts +0 -257
  51. package/lib/gir-module.js +0 -2086
  52. package/lib/gir-module.js.map +0 -1
  53. package/lib/html-doc-generator.d.ts +0 -13
  54. package/lib/html-doc-generator.js +0 -18
  55. package/lib/html-doc-generator.js.map +0 -1
  56. package/lib/injection/callbacks/gjs/Gio-2.0.d.ts +0 -2
  57. package/lib/injection/callbacks/gjs/Gio-2.0.js +0 -36
  58. package/lib/injection/callbacks/gjs/Gio-2.0.js.map +0 -1
  59. package/lib/injection/callbacks/gjs/index.d.ts +0 -2
  60. package/lib/injection/callbacks/gjs/index.js +0 -3
  61. package/lib/injection/callbacks/gjs/index.js.map +0 -1
  62. package/lib/injection/callbacks/index.d.ts +0 -4
  63. package/lib/injection/callbacks/index.js +0 -4
  64. package/lib/injection/callbacks/index.js.map +0 -1
  65. package/lib/injection/callbacks/node-gtk/index.d.ts +0 -2
  66. package/lib/injection/callbacks/node-gtk/index.js +0 -2
  67. package/lib/injection/callbacks/node-gtk/index.js.map +0 -1
  68. package/lib/injection/classes/GLib-2-0.d.ts +0 -2
  69. package/lib/injection/classes/GLib-2-0.js +0 -35
  70. package/lib/injection/classes/GLib-2-0.js.map +0 -1
  71. package/lib/injection/classes/gjs/GLib-2.0.d.ts +0 -2
  72. package/lib/injection/classes/gjs/GLib-2.0.js +0 -200
  73. package/lib/injection/classes/gjs/GLib-2.0.js.map +0 -1
  74. package/lib/injection/classes/gjs/GObject-2.0.d.ts +0 -2
  75. package/lib/injection/classes/gjs/GObject-2.0.js +0 -634
  76. package/lib/injection/classes/gjs/GObject-2.0.js.map +0 -1
  77. package/lib/injection/classes/gjs/Gio-2.0.d.ts +0 -5
  78. package/lib/injection/classes/gjs/Gio-2.0.js +0 -218
  79. package/lib/injection/classes/gjs/Gio-2.0.js.map +0 -1
  80. package/lib/injection/classes/gjs/index.d.ts +0 -2
  81. package/lib/injection/classes/gjs/index.js +0 -5
  82. package/lib/injection/classes/gjs/index.js.map +0 -1
  83. package/lib/injection/classes/index.d.ts +0 -4
  84. package/lib/injection/classes/index.js +0 -5
  85. package/lib/injection/classes/index.js.map +0 -1
  86. package/lib/injection/classes/node-gtk/GLib-2.0.d.ts +0 -2
  87. package/lib/injection/classes/node-gtk/GLib-2.0.js +0 -19
  88. package/lib/injection/classes/node-gtk/GLib-2.0.js.map +0 -1
  89. package/lib/injection/classes/node-gtk/GObject-2.0.d.ts +0 -2
  90. package/lib/injection/classes/node-gtk/GObject-2.0.js +0 -66
  91. package/lib/injection/classes/node-gtk/GObject-2.0.js.map +0 -1
  92. package/lib/injection/classes/node-gtk/Gdk-4.0.d.ts +0 -2
  93. package/lib/injection/classes/node-gtk/Gdk-4.0.js +0 -32
  94. package/lib/injection/classes/node-gtk/Gdk-4.0.js.map +0 -1
  95. package/lib/injection/classes/node-gtk/Gio-2.0.d.ts +0 -2
  96. package/lib/injection/classes/node-gtk/Gio-2.0.js +0 -14
  97. package/lib/injection/classes/node-gtk/Gio-2.0.js.map +0 -1
  98. package/lib/injection/classes/node-gtk/Graphene-1.0.d.ts +0 -2
  99. package/lib/injection/classes/node-gtk/Graphene-1.0.js +0 -133
  100. package/lib/injection/classes/node-gtk/Graphene-1.0.js.map +0 -1
  101. package/lib/injection/classes/node-gtk/Gtk-3.0.d.ts +0 -2
  102. package/lib/injection/classes/node-gtk/Gtk-3.0.js +0 -31
  103. package/lib/injection/classes/node-gtk/Gtk-3.0.js.map +0 -1
  104. package/lib/injection/classes/node-gtk/Gtk-4.0.d.ts +0 -2
  105. package/lib/injection/classes/node-gtk/Gtk-4.0.js +0 -52
  106. package/lib/injection/classes/node-gtk/Gtk-4.0.js.map +0 -1
  107. package/lib/injection/classes/node-gtk/Pango-1.0.d.ts +0 -2
  108. package/lib/injection/classes/node-gtk/Pango-1.0.js +0 -31
  109. package/lib/injection/classes/node-gtk/Pango-1.0.js.map +0 -1
  110. package/lib/injection/classes/node-gtk/index.d.ts +0 -2
  111. package/lib/injection/classes/node-gtk/index.js +0 -19
  112. package/lib/injection/classes/node-gtk/index.js.map +0 -1
  113. package/lib/injection/index.d.ts +0 -3
  114. package/lib/injection/index.js +0 -4
  115. package/lib/injection/index.js.map +0 -1
  116. package/lib/injection/injector.d.ts +0 -17
  117. package/lib/injection/injector.js +0 -139
  118. package/lib/injection/injector.js.map +0 -1
  119. package/lib/logger.d.ts +0 -36
  120. package/lib/logger.js +0 -137
  121. package/lib/logger.js.map +0 -1
  122. package/lib/messages.d.ts +0 -31
  123. package/lib/messages.js +0 -46
  124. package/lib/messages.js.map +0 -1
  125. package/lib/symtable.d.ts +0 -24
  126. package/lib/symtable.js +0 -63
  127. package/lib/symtable.js.map +0 -1
  128. package/lib/template-processor.d.ts +0 -74
  129. package/lib/template-processor.js +0 -165
  130. package/lib/template-processor.js.map +0 -1
  131. package/lib/transformation.d.ts +0 -156
  132. package/lib/transformation.js +0 -523
  133. package/lib/transformation.js.map +0 -1
  134. package/lib/type-definition-generator.d.ts +0 -116
  135. package/lib/type-definition-generator.js +0 -991
  136. package/lib/type-definition-generator.js.map +0 -1
  137. package/lib/types/answer-version.d.ts +0 -4
  138. package/lib/types/answer-version.js +0 -2
  139. package/lib/types/answer-version.js.map +0 -1
  140. package/lib/types/build-type.d.ts +0 -1
  141. package/lib/types/build-type.js +0 -2
  142. package/lib/types/build-type.js.map +0 -1
  143. package/lib/types/class-parent.d.ts +0 -13
  144. package/lib/types/class-parent.js +0 -2
  145. package/lib/types/class-parent.js.map +0 -1
  146. package/lib/types/config-flags.d.ts +0 -4
  147. package/lib/types/config-flags.js +0 -2
  148. package/lib/types/config-flags.js.map +0 -1
  149. package/lib/types/conflict-child-element.d.ts +0 -10
  150. package/lib/types/conflict-child-element.js +0 -2
  151. package/lib/types/conflict-child-element.js.map +0 -1
  152. package/lib/types/conflict-grouped-element.d.ts +0 -6
  153. package/lib/types/conflict-grouped-element.js +0 -2
  154. package/lib/types/conflict-grouped-element.js.map +0 -1
  155. package/lib/types/conflict-grouped-elements.d.ts +0 -4
  156. package/lib/types/conflict-grouped-elements.js +0 -2
  157. package/lib/types/conflict-grouped-elements.js.map +0 -1
  158. package/lib/types/construct-name.d.ts +0 -1
  159. package/lib/types/construct-name.js +0 -2
  160. package/lib/types/construct-name.js.map +0 -1
  161. package/lib/types/dependency-map.d.ts +0 -4
  162. package/lib/types/dependency-map.js +0 -2
  163. package/lib/types/dependency-map.js.map +0 -1
  164. package/lib/types/dependency.d.ts +0 -15
  165. package/lib/types/dependency.js +0 -2
  166. package/lib/types/dependency.js.map +0 -1
  167. package/lib/types/environment.d.ts +0 -1
  168. package/lib/types/environment.js +0 -2
  169. package/lib/types/environment.js.map +0 -1
  170. package/lib/types/file-info.d.ts +0 -14
  171. package/lib/types/file-info.js +0 -2
  172. package/lib/types/file-info.js.map +0 -1
  173. package/lib/types/generate-config.d.ts +0 -32
  174. package/lib/types/generate-config.js +0 -2
  175. package/lib/types/generate-config.js.map +0 -1
  176. package/lib/types/generator-type.d.ts +0 -4
  177. package/lib/types/generator-type.js +0 -6
  178. package/lib/types/generator-type.js.map +0 -1
  179. package/lib/types/gir-alias-element.d.ts +0 -13
  180. package/lib/types/gir-alias-element.js +0 -2
  181. package/lib/types/gir-alias-element.js.map +0 -1
  182. package/lib/types/gir-annotation.d.ts +0 -9
  183. package/lib/types/gir-annotation.js +0 -2
  184. package/lib/types/gir-annotation.js.map +0 -1
  185. package/lib/types/gir-any-element.d.ts +0 -2
  186. package/lib/types/gir-any-element.js +0 -2
  187. package/lib/types/gir-any-element.js.map +0 -1
  188. package/lib/types/gir-any-type.d.ts +0 -5
  189. package/lib/types/gir-any-type.js +0 -2
  190. package/lib/types/gir-any-type.js.map +0 -1
  191. package/lib/types/gir-array-type.d.ts +0 -20
  192. package/lib/types/gir-array-type.js +0 -3
  193. package/lib/types/gir-array-type.js.map +0 -1
  194. package/lib/types/gir-bitfield-element.d.ts +0 -17
  195. package/lib/types/gir-bitfield-element.js +0 -2
  196. package/lib/types/gir-bitfield-element.js.map +0 -1
  197. package/lib/types/gir-boolean.d.ts +0 -1
  198. package/lib/types/gir-boolean.js +0 -2
  199. package/lib/types/gir-boolean.js.map +0 -1
  200. package/lib/types/gir-boxed-element.d.ts +0 -15
  201. package/lib/types/gir-boxed-element.js +0 -2
  202. package/lib/types/gir-boxed-element.js.map +0 -1
  203. package/lib/types/gir-c-include.d.ts +0 -7
  204. package/lib/types/gir-c-include.js +0 -2
  205. package/lib/types/gir-c-include.js.map +0 -1
  206. package/lib/types/gir-callable-attrs.d.ts +0 -15
  207. package/lib/types/gir-callable-attrs.js +0 -3
  208. package/lib/types/gir-callable-attrs.js.map +0 -1
  209. package/lib/types/gir-callable-param-element.d.ts +0 -30
  210. package/lib/types/gir-callable-param-element.js +0 -2
  211. package/lib/types/gir-callable-param-element.js.map +0 -1
  212. package/lib/types/gir-callable-param.d.ts +0 -7
  213. package/lib/types/gir-callable-param.js +0 -2
  214. package/lib/types/gir-callable-param.js.map +0 -1
  215. package/lib/types/gir-callable-return.d.ts +0 -22
  216. package/lib/types/gir-callable-return.js +0 -2
  217. package/lib/types/gir-callable-return.js.map +0 -1
  218. package/lib/types/gir-callback-element.d.ts +0 -15
  219. package/lib/types/gir-callback-element.js +0 -2
  220. package/lib/types/gir-callback-element.js.map +0 -1
  221. package/lib/types/gir-class-element.d.ts +0 -48
  222. package/lib/types/gir-class-element.js +0 -2
  223. package/lib/types/gir-class-element.js.map +0 -1
  224. package/lib/types/gir-constant-element.d.ts +0 -15
  225. package/lib/types/gir-constant-element.js +0 -2
  226. package/lib/types/gir-constant-element.js.map +0 -1
  227. package/lib/types/gir-constructor-element.d.ts +0 -8
  228. package/lib/types/gir-constructor-element.js +0 -2
  229. package/lib/types/gir-constructor-element.js.map +0 -1
  230. package/lib/types/gir-direction.d.ts +0 -5
  231. package/lib/types/gir-direction.js +0 -7
  232. package/lib/types/gir-direction.js.map +0 -1
  233. package/lib/types/gir-doc-element.d.ts +0 -68
  234. package/lib/types/gir-doc-element.js +0 -2
  235. package/lib/types/gir-doc-element.js.map +0 -1
  236. package/lib/types/gir-enum-element.d.ts +0 -19
  237. package/lib/types/gir-enum-element.js +0 -2
  238. package/lib/types/gir-enum-element.js.map +0 -1
  239. package/lib/types/gir-field-element.d.ts +0 -18
  240. package/lib/types/gir-field-element.js +0 -2
  241. package/lib/types/gir-field-element.js.map +0 -1
  242. package/lib/types/gir-function-element.d.ts +0 -8
  243. package/lib/types/gir-function-element.js +0 -2
  244. package/lib/types/gir-function-element.js.map +0 -1
  245. package/lib/types/gir-implements.d.ts +0 -8
  246. package/lib/types/gir-implements.js +0 -2
  247. package/lib/types/gir-implements.js.map +0 -1
  248. package/lib/types/gir-include.d.ts +0 -9
  249. package/lib/types/gir-include.js +0 -2
  250. package/lib/types/gir-include.js.map +0 -1
  251. package/lib/types/gir-info-attrs.d.ts +0 -13
  252. package/lib/types/gir-info-attrs.js +0 -2
  253. package/lib/types/gir-info-attrs.js.map +0 -1
  254. package/lib/types/gir-info-elements.d.ts +0 -5
  255. package/lib/types/gir-info-elements.js +0 -2
  256. package/lib/types/gir-info-elements.js.map +0 -1
  257. package/lib/types/gir-instance-parameter.d.ts +0 -21
  258. package/lib/types/gir-instance-parameter.js +0 -2
  259. package/lib/types/gir-instance-parameter.js.map +0 -1
  260. package/lib/types/gir-interface-element.d.ts +0 -31
  261. package/lib/types/gir-interface-element.js +0 -2
  262. package/lib/types/gir-interface-element.js.map +0 -1
  263. package/lib/types/gir-member-element.d.ts +0 -17
  264. package/lib/types/gir-member-element.js +0 -2
  265. package/lib/types/gir-member-element.js.map +0 -1
  266. package/lib/types/gir-method-element.d.ts +0 -13
  267. package/lib/types/gir-method-element.js +0 -2
  268. package/lib/types/gir-method-element.js.map +0 -1
  269. package/lib/types/gir-module-resolved-by.d.ts +0 -10
  270. package/lib/types/gir-module-resolved-by.js +0 -2
  271. package/lib/types/gir-module-resolved-by.js.map +0 -1
  272. package/lib/types/gir-modules-grouped-map.d.ts +0 -4
  273. package/lib/types/gir-modules-grouped-map.js +0 -2
  274. package/lib/types/gir-modules-grouped-map.js.map +0 -1
  275. package/lib/types/gir-modules-grouped.d.ts +0 -12
  276. package/lib/types/gir-modules-grouped.js +0 -2
  277. package/lib/types/gir-modules-grouped.js.map +0 -1
  278. package/lib/types/gir-namespace.d.ts +0 -30
  279. package/lib/types/gir-namespace.js +0 -2
  280. package/lib/types/gir-namespace.js.map +0 -1
  281. package/lib/types/gir-package.d.ts +0 -7
  282. package/lib/types/gir-package.js +0 -2
  283. package/lib/types/gir-package.js.map +0 -1
  284. package/lib/types/gir-prerequisite.d.ts +0 -5
  285. package/lib/types/gir-prerequisite.js +0 -2
  286. package/lib/types/gir-prerequisite.js.map +0 -1
  287. package/lib/types/gir-property-element.d.ts +0 -21
  288. package/lib/types/gir-property-element.js +0 -2
  289. package/lib/types/gir-property-element.js.map +0 -1
  290. package/lib/types/gir-record-element.d.ts +0 -30
  291. package/lib/types/gir-record-element.js +0 -2
  292. package/lib/types/gir-record-element.js.map +0 -1
  293. package/lib/types/gir-repository.d.ts +0 -16
  294. package/lib/types/gir-repository.js +0 -2
  295. package/lib/types/gir-repository.js.map +0 -1
  296. package/lib/types/gir-signal.d.ts +0 -25
  297. package/lib/types/gir-signal.js +0 -2
  298. package/lib/types/gir-signal.js.map +0 -1
  299. package/lib/types/gir-transfer-ownership-type.d.ts +0 -5
  300. package/lib/types/gir-transfer-ownership-type.js +0 -7
  301. package/lib/types/gir-transfer-ownership-type.js.map +0 -1
  302. package/lib/types/gir-transfer-ownership.d.ts +0 -5
  303. package/lib/types/gir-transfer-ownership.js +0 -2
  304. package/lib/types/gir-transfer-ownership.js.map +0 -1
  305. package/lib/types/gir-type.d.ts +0 -14
  306. package/lib/types/gir-type.js +0 -2
  307. package/lib/types/gir-type.js.map +0 -1
  308. package/lib/types/gir-union-element.d.ts +0 -22
  309. package/lib/types/gir-union-element.js +0 -2
  310. package/lib/types/gir-union-element.js.map +0 -1
  311. package/lib/types/gir-unparsed-number.d.ts +0 -2
  312. package/lib/types/gir-unparsed-number.js +0 -2
  313. package/lib/types/gir-unparsed-number.js.map +0 -1
  314. package/lib/types/gir-var-args.d.ts +0 -5
  315. package/lib/types/gir-var-args.js +0 -2
  316. package/lib/types/gir-var-args.js.map +0 -1
  317. package/lib/types/gir-virtual-method.d.ts +0 -10
  318. package/lib/types/gir-virtual-method.js +0 -2
  319. package/lib/types/gir-virtual-method.js.map +0 -1
  320. package/lib/types/index.d.ts +0 -119
  321. package/lib/types/index.js +0 -120
  322. package/lib/types/index.js.map +0 -1
  323. package/lib/types/inheritance-table.d.ts +0 -3
  324. package/lib/types/inheritance-table.js +0 -2
  325. package/lib/types/inheritance-table.js.map +0 -1
  326. package/lib/types/injection-callback.d.ts +0 -16
  327. package/lib/types/injection-callback.js +0 -2
  328. package/lib/types/injection-callback.js.map +0 -1
  329. package/lib/types/injection-class.d.ts +0 -25
  330. package/lib/types/injection-class.js +0 -2
  331. package/lib/types/injection-class.js.map +0 -1
  332. package/lib/types/injection-function.d.ts +0 -7
  333. package/lib/types/injection-function.js +0 -2
  334. package/lib/types/injection-function.js.map +0 -1
  335. package/lib/types/injection-generic-parameter.d.ts +0 -2
  336. package/lib/types/injection-generic-parameter.js +0 -2
  337. package/lib/types/injection-generic-parameter.js.map +0 -1
  338. package/lib/types/injection-instance-parameter.d.ts +0 -2
  339. package/lib/types/injection-instance-parameter.js +0 -2
  340. package/lib/types/injection-instance-parameter.js.map +0 -1
  341. package/lib/types/injection-parameter.d.ts +0 -8
  342. package/lib/types/injection-parameter.js +0 -2
  343. package/lib/types/injection-parameter.js.map +0 -1
  344. package/lib/types/injection-property.d.ts +0 -4
  345. package/lib/types/injection-property.js +0 -2
  346. package/lib/types/injection-property.js.map +0 -1
  347. package/lib/types/injection-type.d.ts +0 -2
  348. package/lib/types/injection-type.js +0 -2
  349. package/lib/types/injection-type.js.map +0 -1
  350. package/lib/types/injection.d.ts +0 -5
  351. package/lib/types/injection.js +0 -2
  352. package/lib/types/injection.js.map +0 -1
  353. package/lib/types/local-name-check.d.ts +0 -4
  354. package/lib/types/local-name-check.js +0 -2
  355. package/lib/types/local-name-check.js.map +0 -1
  356. package/lib/types/local-name-type.d.ts +0 -1
  357. package/lib/types/local-name-type.js +0 -2
  358. package/lib/types/local-name-type.js.map +0 -1
  359. package/lib/types/local-name.d.ts +0 -7
  360. package/lib/types/local-name.js +0 -2
  361. package/lib/types/local-name.js.map +0 -1
  362. package/lib/types/local-names.d.ts +0 -4
  363. package/lib/types/local-names.js +0 -2
  364. package/lib/types/local-names.js.map +0 -1
  365. package/lib/types/module-type.d.ts +0 -1
  366. package/lib/types/module-type.js +0 -2
  367. package/lib/types/module-type.js.map +0 -1
  368. package/lib/types/parsed-gir.d.ts +0 -4
  369. package/lib/types/parsed-gir.js +0 -2
  370. package/lib/types/parsed-gir.js.map +0 -1
  371. package/lib/types/part-of-class.d.ts +0 -7
  372. package/lib/types/part-of-class.js +0 -2
  373. package/lib/types/part-of-class.js.map +0 -1
  374. package/lib/types/part-of-module.d.ts +0 -6
  375. package/lib/types/part-of-module.js +0 -2
  376. package/lib/types/part-of-module.js.map +0 -1
  377. package/lib/types/promisify-func.d.ts +0 -5
  378. package/lib/types/promisify-func.js +0 -2
  379. package/lib/types/promisify-func.js.map +0 -1
  380. package/lib/types/resolve-type.d.ts +0 -4
  381. package/lib/types/resolve-type.js +0 -6
  382. package/lib/types/resolve-type.js.map +0 -1
  383. package/lib/types/sym-table-items.d.ts +0 -4
  384. package/lib/types/sym-table-items.js +0 -2
  385. package/lib/types/sym-table-items.js.map +0 -1
  386. package/lib/types/transformation-case.d.ts +0 -1
  387. package/lib/types/transformation-case.js +0 -2
  388. package/lib/types/transformation-case.js.map +0 -1
  389. package/lib/types/transformations.d.ts +0 -11
  390. package/lib/types/transformations.js +0 -2
  391. package/lib/types/transformations.js.map +0 -1
  392. package/lib/types/ts-alias.d.ts +0 -10
  393. package/lib/types/ts-alias.js +0 -2
  394. package/lib/types/ts-alias.js.map +0 -1
  395. package/lib/types/ts-callback-interface.d.ts +0 -10
  396. package/lib/types/ts-callback-interface.js +0 -2
  397. package/lib/types/ts-callback-interface.js.map +0 -1
  398. package/lib/types/ts-callback.d.ts +0 -17
  399. package/lib/types/ts-callback.js +0 -2
  400. package/lib/types/ts-callback.js.map +0 -1
  401. package/lib/types/ts-class.d.ts +0 -85
  402. package/lib/types/ts-class.js +0 -2
  403. package/lib/types/ts-class.js.map +0 -1
  404. package/lib/types/ts-doc-tag.d.ts +0 -21
  405. package/lib/types/ts-doc-tag.js +0 -2
  406. package/lib/types/ts-doc-tag.js.map +0 -1
  407. package/lib/types/ts-doc.d.ts +0 -20
  408. package/lib/types/ts-doc.js +0 -2
  409. package/lib/types/ts-doc.js.map +0 -1
  410. package/lib/types/ts-enum.d.ts +0 -12
  411. package/lib/types/ts-enum.js +0 -2
  412. package/lib/types/ts-enum.js.map +0 -1
  413. package/lib/types/ts-function.d.ts +0 -44
  414. package/lib/types/ts-function.js +0 -2
  415. package/lib/types/ts-function.js.map +0 -1
  416. package/lib/types/ts-generic-parameter.d.ts +0 -8
  417. package/lib/types/ts-generic-parameter.js +0 -2
  418. package/lib/types/ts-generic-parameter.js.map +0 -1
  419. package/lib/types/ts-instance-parameter.d.ts +0 -4
  420. package/lib/types/ts-instance-parameter.js +0 -2
  421. package/lib/types/ts-instance-parameter.js.map +0 -1
  422. package/lib/types/ts-member.d.ts +0 -10
  423. package/lib/types/ts-member.js +0 -2
  424. package/lib/types/ts-member.js.map +0 -1
  425. package/lib/types/ts-method.d.ts +0 -5
  426. package/lib/types/ts-method.js +0 -2
  427. package/lib/types/ts-method.js.map +0 -1
  428. package/lib/types/ts-parameter.d.ts +0 -15
  429. package/lib/types/ts-parameter.js +0 -2
  430. package/lib/types/ts-parameter.js.map +0 -1
  431. package/lib/types/ts-property.d.ts +0 -17
  432. package/lib/types/ts-property.js +0 -2
  433. package/lib/types/ts-property.js.map +0 -1
  434. package/lib/types/ts-signal.d.ts +0 -17
  435. package/lib/types/ts-signal.js +0 -2
  436. package/lib/types/ts-signal.js.map +0 -1
  437. package/lib/types/ts-type-name.d.ts +0 -1
  438. package/lib/types/ts-type-name.js +0 -2
  439. package/lib/types/ts-type-name.js.map +0 -1
  440. package/lib/types/ts-type-separator.d.ts +0 -1
  441. package/lib/types/ts-type-separator.js +0 -2
  442. package/lib/types/ts-type-separator.js.map +0 -1
  443. package/lib/types/ts-type.d.ts +0 -22
  444. package/lib/types/ts-type.js +0 -2
  445. package/lib/types/ts-type.js.map +0 -1
  446. package/lib/types/ts-var.d.ts +0 -17
  447. package/lib/types/ts-var.js +0 -2
  448. package/lib/types/ts-var.js.map +0 -1
  449. package/lib/types/type-gir-alias.d.ts +0 -2
  450. package/lib/types/type-gir-alias.js +0 -2
  451. package/lib/types/type-gir-alias.js.map +0 -1
  452. package/lib/types/type-gir-class.d.ts +0 -2
  453. package/lib/types/type-gir-class.js +0 -2
  454. package/lib/types/type-gir-class.js.map +0 -1
  455. package/lib/types/type-gir-element.d.ts +0 -3
  456. package/lib/types/type-gir-element.js +0 -2
  457. package/lib/types/type-gir-element.js.map +0 -1
  458. package/lib/types/type-gir-enumeration-member.d.ts +0 -2
  459. package/lib/types/type-gir-enumeration-member.js +0 -2
  460. package/lib/types/type-gir-enumeration-member.js.map +0 -1
  461. package/lib/types/type-gir-enumeration.d.ts +0 -2
  462. package/lib/types/type-gir-enumeration.js +0 -2
  463. package/lib/types/type-gir-enumeration.js.map +0 -1
  464. package/lib/types/type-gir-function.d.ts +0 -1
  465. package/lib/types/type-gir-function.js +0 -2
  466. package/lib/types/type-gir-function.js.map +0 -1
  467. package/lib/types/type-gir-interface.d.ts +0 -2
  468. package/lib/types/type-gir-interface.js +0 -2
  469. package/lib/types/type-gir-interface.js.map +0 -1
  470. package/lib/types/type-gir-method.d.ts +0 -2
  471. package/lib/types/type-gir-method.js +0 -2
  472. package/lib/types/type-gir-method.js.map +0 -1
  473. package/lib/types/type-gir-parameter.d.ts +0 -1
  474. package/lib/types/type-gir-parameter.js +0 -2
  475. package/lib/types/type-gir-parameter.js.map +0 -1
  476. package/lib/types/type-gir-property.d.ts +0 -2
  477. package/lib/types/type-gir-property.js +0 -2
  478. package/lib/types/type-gir-property.js.map +0 -1
  479. package/lib/types/type-gir-variable.d.ts +0 -1
  480. package/lib/types/type-gir-variable.js +0 -2
  481. package/lib/types/type-gir-variable.js.map +0 -1
  482. package/lib/types/type-ts-element.d.ts +0 -3
  483. package/lib/types/type-ts-element.js +0 -2
  484. package/lib/types/type-ts-element.js.map +0 -1
  485. package/lib/types/type-ts-enumeration-member.d.ts +0 -2
  486. package/lib/types/type-ts-enumeration-member.js +0 -2
  487. package/lib/types/type-ts-enumeration-member.js.map +0 -1
  488. package/lib/types/type-ts-function.d.ts +0 -1
  489. package/lib/types/type-ts-function.js +0 -2
  490. package/lib/types/type-ts-function.js.map +0 -1
  491. package/lib/types/type-ts-property.d.ts +0 -1
  492. package/lib/types/type-ts-property.js +0 -2
  493. package/lib/types/type-ts-property.js.map +0 -1
  494. package/lib/types/user-config-load-result.d.ts +0 -6
  495. package/lib/types/user-config-load-result.js +0 -2
  496. package/lib/types/user-config-load-result.js.map +0 -1
  497. package/lib/types/user-config.d.ts +0 -40
  498. package/lib/types/user-config.js +0 -2
  499. package/lib/types/user-config.js.map +0 -1
  500. package/src/conflict-resolver.ts +0 -1358
  501. package/src/constants.ts +0 -29
  502. package/src/dependency-manager.ts +0 -91
  503. package/src/generator.ts +0 -10
  504. package/src/gir-factory.ts +0 -499
  505. package/src/gir-module.ts +0 -2827
  506. package/src/html-doc-generator.ts +0 -23
  507. package/src/injection/callbacks/gjs/Gio-2.0.ts +0 -37
  508. package/src/injection/callbacks/gjs/index.ts +0 -5
  509. package/src/injection/callbacks/index.ts +0 -6
  510. package/src/injection/callbacks/node-gtk/index.ts +0 -3
  511. package/src/injection/classes/GLib-2-0.ts +0 -36
  512. package/src/injection/classes/gjs/GLib-2.0.ts +0 -201
  513. package/src/injection/classes/gjs/GObject-2.0.ts +0 -635
  514. package/src/injection/classes/gjs/Gio-2.0.ts +0 -219
  515. package/src/injection/classes/gjs/index.ts +0 -7
  516. package/src/injection/classes/index.ts +0 -7
  517. package/src/injection/classes/node-gtk/GLib-2.0.ts +0 -20
  518. package/src/injection/classes/node-gtk/GObject-2.0.ts +0 -67
  519. package/src/injection/classes/node-gtk/Gdk-4.0.ts +0 -33
  520. package/src/injection/classes/node-gtk/Gio-2.0.ts +0 -15
  521. package/src/injection/classes/node-gtk/Graphene-1.0.ts +0 -134
  522. package/src/injection/classes/node-gtk/Gtk-3.0.ts +0 -32
  523. package/src/injection/classes/node-gtk/Gtk-4.0.ts +0 -53
  524. package/src/injection/classes/node-gtk/Pango-1.0.ts +0 -32
  525. package/src/injection/classes/node-gtk/index.ts +0 -21
  526. package/src/injection/index.ts +0 -3
  527. package/src/injection/injector.ts +0 -184
  528. package/src/logger.ts +0 -134
  529. package/src/messages.ts +0 -69
  530. package/src/symtable.ts +0 -72
  531. package/src/template-processor.ts +0 -199
  532. package/src/transformation.ts +0 -583
  533. package/src/type-definition-generator.ts +0 -1460
  534. package/src/types/answer-version.ts +0 -4
  535. package/src/types/build-type.ts +0 -1
  536. package/src/types/class-parent.ts +0 -14
  537. package/src/types/config-flags.ts +0 -5
  538. package/src/types/conflict-child-element.ts +0 -11
  539. package/src/types/conflict-grouped-element.ts +0 -7
  540. package/src/types/conflict-grouped-elements.ts +0 -5
  541. package/src/types/construct-name.ts +0 -11
  542. package/src/types/dependency-map.ts +0 -4
  543. package/src/types/dependency.ts +0 -16
  544. package/src/types/environment.ts +0 -1
  545. package/src/types/file-info.ts +0 -14
  546. package/src/types/generate-config.ts +0 -33
  547. package/src/types/generator-type.ts +0 -4
  548. package/src/types/gir-alias-element.ts +0 -15
  549. package/src/types/gir-annotation.ts +0 -10
  550. package/src/types/gir-any-element.ts +0 -35
  551. package/src/types/gir-any-type.ts +0 -7
  552. package/src/types/gir-array-type.ts +0 -23
  553. package/src/types/gir-bitfield-element.ts +0 -20
  554. package/src/types/gir-boolean.ts +0 -1
  555. package/src/types/gir-boxed-element.ts +0 -19
  556. package/src/types/gir-c-include.ts +0 -7
  557. package/src/types/gir-callable-attrs.ts +0 -19
  558. package/src/types/gir-callable-param-element.ts +0 -45
  559. package/src/types/gir-callable-param.ts +0 -9
  560. package/src/types/gir-callable-return.ts +0 -25
  561. package/src/types/gir-callback-element.ts +0 -28
  562. package/src/types/gir-class-element.ts +0 -71
  563. package/src/types/gir-constant-element.ts +0 -17
  564. package/src/types/gir-constructor-element.ts +0 -18
  565. package/src/types/gir-direction.ts +0 -5
  566. package/src/types/gir-doc-element.ts +0 -73
  567. package/src/types/gir-enum-element.ts +0 -28
  568. package/src/types/gir-field-element.ts +0 -31
  569. package/src/types/gir-function-element.ts +0 -19
  570. package/src/types/gir-implements.ts +0 -9
  571. package/src/types/gir-include.ts +0 -9
  572. package/src/types/gir-info-attrs.ts +0 -16
  573. package/src/types/gir-info-elements.ts +0 -8
  574. package/src/types/gir-instance-parameter.ts +0 -25
  575. package/src/types/gir-interface-element.ts +0 -53
  576. package/src/types/gir-member-element.ts +0 -19
  577. package/src/types/gir-method-element.ts +0 -25
  578. package/src/types/gir-module-resolved-by.ts +0 -11
  579. package/src/types/gir-modules-grouped-map.ts +0 -5
  580. package/src/types/gir-modules-grouped.ts +0 -13
  581. package/src/types/gir-namespace.ts +0 -47
  582. package/src/types/gir-package.ts +0 -7
  583. package/src/types/gir-prerequisite.ts +0 -5
  584. package/src/types/gir-property-element.ts +0 -31
  585. package/src/types/gir-record-element.ts +0 -47
  586. package/src/types/gir-repository.ts +0 -20
  587. package/src/types/gir-signal.ts +0 -43
  588. package/src/types/gir-transfer-ownership-type.ts +0 -5
  589. package/src/types/gir-transfer-ownership.ts +0 -6
  590. package/src/types/gir-type.ts +0 -16
  591. package/src/types/gir-union-element.ts +0 -35
  592. package/src/types/gir-unparsed-number.ts +0 -2
  593. package/src/types/gir-var-args.ts +0 -6
  594. package/src/types/gir-virtual-method.ts +0 -22
  595. package/src/types/index.ts +0 -119
  596. package/src/types/inheritance-table.ts +0 -3
  597. package/src/types/injection-callback.ts +0 -20
  598. package/src/types/injection-class.ts +0 -30
  599. package/src/types/injection-function.ts +0 -23
  600. package/src/types/injection-generic-parameter.ts +0 -3
  601. package/src/types/injection-instance-parameter.ts +0 -3
  602. package/src/types/injection-parameter.ts +0 -9
  603. package/src/types/injection-property.ts +0 -7
  604. package/src/types/injection-type.ts +0 -3
  605. package/src/types/injection.ts +0 -6
  606. package/src/types/local-name-check.ts +0 -5
  607. package/src/types/local-name-type.ts +0 -1
  608. package/src/types/local-name.ts +0 -8
  609. package/src/types/local-names.ts +0 -5
  610. package/src/types/module-type.ts +0 -1
  611. package/src/types/parsed-gir.ts +0 -5
  612. package/src/types/part-of-class.ts +0 -9
  613. package/src/types/part-of-module.ts +0 -8
  614. package/src/types/resolve-type.ts +0 -4
  615. package/src/types/sym-table-items.ts +0 -5
  616. package/src/types/transformation-case.ts +0 -7
  617. package/src/types/transformations.ts +0 -12
  618. package/src/types/ts-alias.ts +0 -11
  619. package/src/types/ts-callback-interface.ts +0 -11
  620. package/src/types/ts-callback.ts +0 -21
  621. package/src/types/ts-class.ts +0 -109
  622. package/src/types/ts-doc-tag.ts +0 -23
  623. package/src/types/ts-doc.ts +0 -23
  624. package/src/types/ts-enum.ts +0 -15
  625. package/src/types/ts-function.ts +0 -59
  626. package/src/types/ts-generic-parameter.ts +0 -8
  627. package/src/types/ts-instance-parameter.ts +0 -4
  628. package/src/types/ts-member.ts +0 -11
  629. package/src/types/ts-method.ts +0 -6
  630. package/src/types/ts-parameter.ts +0 -20
  631. package/src/types/ts-property.ts +0 -22
  632. package/src/types/ts-signal.ts +0 -21
  633. package/src/types/ts-type-name.ts +0 -1
  634. package/src/types/ts-type-separator.ts +0 -1
  635. package/src/types/ts-type.ts +0 -25
  636. package/src/types/ts-var.ts +0 -21
  637. package/src/types/type-gir-alias.ts +0 -2
  638. package/src/types/type-gir-class.ts +0 -2
  639. package/src/types/type-gir-element.ts +0 -25
  640. package/src/types/type-gir-enumeration-member.ts +0 -2
  641. package/src/types/type-gir-enumeration.ts +0 -2
  642. package/src/types/type-gir-function.ts +0 -8
  643. package/src/types/type-gir-interface.ts +0 -2
  644. package/src/types/type-gir-method.ts +0 -2
  645. package/src/types/type-gir-parameter.ts +0 -1
  646. package/src/types/type-gir-property.ts +0 -2
  647. package/src/types/type-gir-variable.ts +0 -1
  648. package/src/types/type-ts-element.ts +0 -13
  649. package/src/types/type-ts-enumeration-member.ts +0 -2
  650. package/src/types/type-ts-function.ts +0 -1
  651. package/src/types/type-ts-property.ts +0 -1
  652. package/src/types/user-config-load-result.ts +0 -6
  653. package/src/types/user-config.ts +0 -41
  654. package/templates/Cogl-2.0.d.ts +0 -0
  655. package/templates/Gjs/GObject-2.0.d.ts +0 -238
  656. package/templates/Gjs/Gio-2.0.d.ts +0 -64
  657. package/templates/Gjs/Gjs.d.ts +0 -204
  658. package/templates/Gjs/Gjs.js +0 -21
  659. package/templates/Gjs/GnomeShell.d.ts +0 -152
  660. package/templates/Gjs/GnomeShell.js +0 -10
  661. package/templates/Gjs/index.d.ts +0 -594
  662. package/templates/Gjs/index.js +0 -4
  663. package/templates/Gjs/misc/dbusUtils.d.ts +0 -15
  664. package/templates/Gjs/misc/dbusUtils.js +0 -6
  665. package/templates/Gjs/misc/extensionUtils.d.ts +0 -99
  666. package/templates/Gjs/misc/extensionUtils.js +0 -6
  667. package/templates/Gjs/misc/fileUtils.d.ts +0 -51
  668. package/templates/Gjs/misc/fileUtils.js +0 -6
  669. package/templates/Gjs/misc/gnomeSession.d.ts +0 -74
  670. package/templates/Gjs/misc/gnomeSession.js +0 -6
  671. package/templates/Gjs/misc/parentalControlsManager.d.ts +0 -42
  672. package/templates/Gjs/misc/parentalControlsManager.js +0 -6
  673. package/templates/Gjs/misc/signals.d.ts +0 -15
  674. package/templates/Gjs/misc/signals.js +0 -6
  675. package/templates/Gjs/module.d.ts +0 -6
  676. package/templates/Gjs/module.js +0 -16
  677. package/templates/Gjs/tsconfig.alias.json +0 -10
  678. package/templates/Gjs/ui/accessDialog.d.ts +0 -19
  679. package/templates/Gjs/ui/accessDialog.js +0 -6
  680. package/templates/Gjs/ui/altTab.d.ts +0 -124
  681. package/templates/Gjs/ui/altTab.js +0 -6
  682. package/templates/Gjs/ui/animation.d.ts +0 -58
  683. package/templates/Gjs/ui/animation.js +0 -6
  684. package/templates/Gjs/ui/appDisplay.d.ts +0 -204
  685. package/templates/Gjs/ui/appDisplay.js +0 -6
  686. package/templates/Gjs/ui/appFavorites.d.ts +0 -34
  687. package/templates/Gjs/ui/appFavorites.js +0 -6
  688. package/templates/Gjs/ui/appMenu.d.ts +0 -74
  689. package/templates/Gjs/ui/appMenu.js +0 -6
  690. package/templates/Gjs/ui/audioDeviceSelection.d.ts +0 -51
  691. package/templates/Gjs/ui/audioDeviceSelection.js +0 -6
  692. package/templates/Gjs/ui/background.d.ts +0 -255
  693. package/templates/Gjs/ui/background.js +0 -5
  694. package/templates/Gjs/ui/backgroundMenu.d.ts +0 -19
  695. package/templates/Gjs/ui/backgroundMenu.js +0 -5
  696. package/templates/Gjs/ui/barLevel.d.ts +0 -42
  697. package/templates/Gjs/ui/barLevel.js +0 -5
  698. package/templates/Gjs/ui/boxpointer.d.ts +0 -103
  699. package/templates/Gjs/ui/boxpointer.js +0 -5
  700. package/templates/Gjs/ui/calendar.d.ts +0 -261
  701. package/templates/Gjs/ui/calendar.js +0 -5
  702. package/templates/Gjs/ui/components/__init__.d.ts +0 -9
  703. package/templates/Gjs/ui/components/__init__.js +0 -6
  704. package/templates/Gjs/ui/components/automountManager.d.ts +0 -8
  705. package/templates/Gjs/ui/components/automountManager.js +0 -6
  706. package/templates/Gjs/ui/components/autorunManager.d.ts +0 -8
  707. package/templates/Gjs/ui/components/autorunManager.js +0 -6
  708. package/templates/Gjs/ui/components/index.d.ts +0 -6
  709. package/templates/Gjs/ui/components/index.js +0 -6
  710. package/templates/Gjs/ui/components/keyring.d.ts +0 -19
  711. package/templates/Gjs/ui/components/keyring.js +0 -6
  712. package/templates/Gjs/ui/components/networkAgent.d.ts +0 -10
  713. package/templates/Gjs/ui/components/networkAgent.js +0 -6
  714. package/templates/Gjs/ui/components/polkitAgent.d.ts +0 -19
  715. package/templates/Gjs/ui/components/polkitAgent.js +0 -6
  716. package/templates/Gjs/ui/components/telepathyClient.d.ts +0 -10
  717. package/templates/Gjs/ui/components/telepathyClient.js +0 -6
  718. package/templates/Gjs/ui/dialog.d.ts +0 -78
  719. package/templates/Gjs/ui/dialog.js +0 -0
  720. package/templates/Gjs/ui/dnd.d.ts +0 -127
  721. package/templates/Gjs/ui/dnd.js +0 -6
  722. package/templates/Gjs/ui/iconGrid.d.ts +0 -172
  723. package/templates/Gjs/ui/iconGrid.js +0 -6
  724. package/templates/Gjs/ui/layout.d.ts +0 -311
  725. package/templates/Gjs/ui/layout.js +0 -6
  726. package/templates/Gjs/ui/main.d.ts +0 -215
  727. package/templates/Gjs/ui/main.js +0 -6
  728. package/templates/Gjs/ui/messageList.d.ts +0 -113
  729. package/templates/Gjs/ui/messageList.js +0 -6
  730. package/templates/Gjs/ui/messageTray.d.ts +0 -423
  731. package/templates/Gjs/ui/messageTray.js +0 -6
  732. package/templates/Gjs/ui/modalDialog.d.ts +0 -96
  733. package/templates/Gjs/ui/modalDialog.js +0 -6
  734. package/templates/Gjs/ui/mpris.d.ts +0 -78
  735. package/templates/Gjs/ui/mpris.js +0 -6
  736. package/templates/Gjs/ui/notificationDaemon.d.ts +0 -5
  737. package/templates/Gjs/ui/notificationDaemon.js +0 -6
  738. package/templates/Gjs/ui/panel.d.ts +0 -65
  739. package/templates/Gjs/ui/panel.js +0 -6
  740. package/templates/Gjs/ui/panelMenu.d.ts +0 -51
  741. package/templates/Gjs/ui/panelMenu.js +0 -6
  742. package/templates/Gjs/ui/popupMenu.d.ts +0 -228
  743. package/templates/Gjs/ui/popupMenu.js +0 -6
  744. package/templates/Gjs/ui/ripples.d.ts +0 -44
  745. package/templates/Gjs/ui/ripples.js +0 -6
  746. package/templates/Gjs/ui/search.d.ts +0 -158
  747. package/templates/Gjs/ui/search.js +0 -6
  748. package/templates/Gjs/ui/switcherPopup.d.ts +0 -107
  749. package/templates/Gjs/ui/switcherPopup.js +0 -6
  750. package/templates/Gjs/ui/userWidget.d.ts +0 -13
  751. package/templates/Gjs/ui/userWidget.js +0 -6
  752. package/templates/Granite-1.0.d.ts +0 -7
  753. package/templates/Granite-7.0.d.ts +0 -7
  754. package/templates/GstBase-0.10.d.ts +0 -5
  755. package/templates/RygelServer-2.6.d.ts +0 -3
  756. package/templates/node-gtk/GObject-2.0.d.ts +0 -57
  757. package/templates/node-gtk/index.d.ts +0 -40
  758. package/templates/node-gtk/index.js +0 -9
  759. package/templates/node-gtk/module.d.ts +0 -6
  760. package/templates/node-gtk/module.js +0 -17
package/src/config.ts CHANGED
@@ -5,20 +5,21 @@
5
5
  import inquirer from 'inquirer'
6
6
  import { Options } from 'yargs'
7
7
  import { cosmiconfig, Options as ConfigSearchOptions } from 'cosmiconfig'
8
- import Path from 'path'
9
- import OS from 'os'
10
- import { merge, isEqual, readTsJsConfig } from './utils.js'
11
- import type { Environment, UserConfig, ConfigFlags, UserConfigLoadResult, GenerateConfig } from './types/index.js'
8
+ import { join, extname, dirname, resolve } from 'path'
12
9
  import { writeFile } from 'fs/promises'
13
- import { Logger } from './logger.js'
14
- import { APP_NAME, APP_USAGE } from './constants.js'
15
10
  import {
16
- WARN_NO_NAMESPACE_ON_TYPES,
17
- WARN_NO_NAMESPACE_ON_ESM,
11
+ merge,
12
+ isEqual,
13
+ Logger,
14
+ APP_NAME,
15
+ APP_USAGE,
18
16
  ERROR_CONFIG_EXTENSION_UNSUPPORTED,
19
17
  WARN_USE_ESM_FOR_ALIAS,
20
18
  WARN_USE_GJS_FOR_ALIAS,
21
- } from './messages.js'
19
+ } from '@ts-for-gir/lib'
20
+ import { readTsJsConfig } from './utils.js'
21
+
22
+ import type { Environment, UserConfig, ConfigFlags, UserConfigLoadResult, GenerateConfig } from '@ts-for-gir/lib'
22
23
 
23
24
  export class Config {
24
25
  static appName = APP_NAME
@@ -32,8 +33,9 @@ export class Config {
32
33
  environments: ['gjs'],
33
34
  print: false,
34
35
  configName: '.ts-for-girrc.js',
36
+ root: process.cwd(),
35
37
  outdir: './@types',
36
- girDirectories: OS.platform() === 'darwin' ? ['/usr/local/share/gir-1.0'] : ['/usr/share/gir-1.0'],
38
+ girDirectories: getDefaultGirDirectories(),
37
39
  modules: ['*'],
38
40
  ignore: [],
39
41
  verbose: false,
@@ -45,11 +47,13 @@ export class Config {
45
47
  noDebugComments: false,
46
48
  fixConflicts: true,
47
49
  noDOMLib: false,
48
- gnomeShellTypes: false,
49
50
  generateAlias: false,
51
+ promisify: true,
52
+ npmScope: '@girs',
53
+ package: false,
50
54
  }
51
55
 
52
- static configFilePath = Path.join(process.cwd(), Config.defaults.configName)
56
+ static configFilePath = join(process.cwd(), Config.defaults.configName)
53
57
 
54
58
  /**
55
59
  * CLI options used in commands/generate.ts and commands/list.ts
@@ -69,6 +73,12 @@ export class Config {
69
73
  default: Config.defaults.girDirectories,
70
74
  normalize: true,
71
75
  },
76
+ root: {
77
+ type: 'string',
78
+ description: 'Root directory of your project',
79
+ default: Config.defaults.root,
80
+ normalize: true,
81
+ },
72
82
  outdir: {
73
83
  type: 'string',
74
84
  alias: 'o',
@@ -106,7 +116,7 @@ export class Config {
106
116
  type: 'string',
107
117
  alias: 't',
108
118
  description: 'Specify what module code is generated.',
109
- choices: ['esm', 'commonjs'],
119
+ choices: ['esm', 'commonjs', 'cjs'],
110
120
  default: Config.defaults.moduleType,
111
121
  normalize: true,
112
122
  },
@@ -168,12 +178,6 @@ export class Config {
168
178
  default: Config.defaults.noDOMLib,
169
179
  normalize: true,
170
180
  },
171
- gnomeShellTypes: {
172
- type: 'boolean',
173
- description: 'Generate types for GNOME Shell (Experimental)',
174
- default: Config.defaults.gnomeShellTypes,
175
- normalize: true,
176
- },
177
181
  generateAlias: {
178
182
  type: 'boolean',
179
183
  alias: 'a',
@@ -181,6 +185,24 @@ export class Config {
181
185
  default: Config.defaults.generateAlias,
182
186
  normalize: true,
183
187
  },
188
+ promisify: {
189
+ type: 'boolean',
190
+ description: 'Generate promisified functions for async/finish calls',
191
+ default: Config.defaults.promisify,
192
+ normalize: true,
193
+ },
194
+ npmScope: {
195
+ type: 'string',
196
+ description: 'Scope of the generated NPM packages',
197
+ default: Config.defaults.npmScope,
198
+ normalize: true,
199
+ },
200
+ package: {
201
+ type: 'boolean',
202
+ description: 'Generates an NPM compatible packages for each GIR module',
203
+ default: Config.defaults.package,
204
+ normalize: true,
205
+ },
184
206
  }
185
207
 
186
208
  /**
@@ -189,6 +211,7 @@ export class Config {
189
211
  static generateOptions = {
190
212
  modules: this.options.modules,
191
213
  girDirectories: this.options.girDirectories,
214
+ root: this.options.root,
192
215
  outdir: this.options.outdir,
193
216
  environments: this.options.environments,
194
217
  ignore: this.options.ignore,
@@ -203,8 +226,10 @@ export class Config {
203
226
  noDebugComments: this.options.noDebugComments,
204
227
  noDOMLib: this.options.noDOMLib,
205
228
  fixConflicts: this.options.fixConflicts,
206
- gnomeShellTypes: this.options.gnomeShellTypes,
207
229
  generateAlias: this.options.generateAlias,
230
+ promisify: this.options.promisify,
231
+ npmScope: this.options.npmScope,
232
+ package: this.options.package,
208
233
  }
209
234
 
210
235
  static listOptions = {
@@ -215,16 +240,27 @@ export class Config {
215
240
  verbose: Config.options.verbose,
216
241
  }
217
242
 
243
+ static docOptions = {
244
+ modules: this.options.modules,
245
+ girDirectories: Config.options.girDirectories,
246
+ outdir: Config.options.outdir,
247
+ environments: Config.options.environments,
248
+ ignore: Config.options.ignore,
249
+ verbose: Config.options.verbose,
250
+ ignoreVersionConflicts: Config.options.ignoreVersionConflicts,
251
+ configName: Config.options.configName,
252
+ }
253
+
218
254
  /**
219
- * Overwrites values in the user config
255
+ * Overwrites values in the user config file
220
256
  * @param configsToAdd
221
257
  */
222
- public static async addToConfig(configsToAdd: Partial<UserConfig>): Promise<void> {
223
- const userConfig = await this.loadConfigFile()
258
+ public static async addToConfig(configsToAdd: Partial<UserConfig>, configName?: string): Promise<void> {
259
+ const userConfig = await this.loadConfigFile(configName)
224
260
  const path = userConfig?.filepath || this.configFilePath
225
261
  const configToStore = {}
226
262
  merge(configToStore, userConfig?.config || {}, configsToAdd)
227
- const fileExtension = Path.extname(path)
263
+ const fileExtension = extname(path)
228
264
  let writeConfigString = ''
229
265
  switch (fileExtension) {
230
266
  case '.js':
@@ -271,17 +307,19 @@ export class Config {
271
307
  if (configName) {
272
308
  configSearchOptions.searchPlaces = [configName]
273
309
  }
274
- const userConfig: UserConfigLoadResult | null = await cosmiconfig(Config.appName, configSearchOptions).search()
275
- if (userConfig?.filepath) {
276
- Config.configFilePath = userConfig?.filepath
310
+ const configFile: UserConfigLoadResult | null = await cosmiconfig(Config.appName, configSearchOptions).search()
311
+ if (configFile?.filepath) {
312
+ Config.configFilePath = configFile.filepath
277
313
  }
278
- return userConfig
314
+
315
+ return configFile
279
316
  }
280
317
 
281
318
  public static getGenerateConfig(config: UserConfig, environment: Environment = 'gjs'): GenerateConfig {
282
319
  const generateConfig: GenerateConfig = {
283
320
  environment: environment,
284
321
  girDirectories: config.girDirectories,
322
+ root: config.root,
285
323
  outdir: config.outdir,
286
324
  verbose: config.verbose,
287
325
  buildType: config.buildType,
@@ -291,8 +329,10 @@ export class Config {
291
329
  noDebugComments: config.noDebugComments,
292
330
  fixConflicts: config.fixConflicts,
293
331
  noDOMLib: config.noDOMLib,
294
- gnomeShellTypes: config.gnomeShellTypes,
295
332
  generateAlias: config.generateAlias,
333
+ promisify: config.promisify,
334
+ npmScope: config.npmScope,
335
+ package: config.package,
296
336
  }
297
337
  return generateConfig
298
338
  }
@@ -303,7 +343,7 @@ export class Config {
303
343
  ? false // NoLib makes typescript to ignore the lib property
304
344
  : Array.isArray(tsCompilerOptions.lib)
305
345
  ? tsCompilerOptions.lib.some((lib) => lib.toLowerCase().startsWith('dom'))
306
- : true // Typescript icludes DOM lib by default
346
+ : true // Typescript includes DOM lib by default
307
347
 
308
348
  if (config.environments.includes('gjs') && tsConfigHasDOMLib && !config.noDOMLib) {
309
349
  const answer = (
@@ -325,20 +365,6 @@ export class Config {
325
365
  }
326
366
 
327
367
  public static async validate(config: UserConfig): Promise<UserConfig> {
328
- if (config.buildType === 'types') {
329
- if (config.noNamespace !== false) {
330
- Logger.warn(WARN_NO_NAMESPACE_ON_TYPES)
331
- config.noNamespace = false
332
- }
333
- }
334
-
335
- if (config.moduleType === 'esm') {
336
- if (config.noNamespace !== false) {
337
- Logger.warn(WARN_NO_NAMESPACE_ON_ESM)
338
- config.noNamespace = false
339
- }
340
- }
341
-
342
368
  if (config.generateAlias) {
343
369
  if (!config.environments.includes('gjs')) {
344
370
  Logger.warn(WARN_USE_GJS_FOR_ALIAS)
@@ -350,13 +376,6 @@ export class Config {
350
376
  }
351
377
  }
352
378
 
353
- if (config.moduleType === 'esm') {
354
- if (config.noNamespace !== false) {
355
- Logger.warn(WARN_NO_NAMESPACE_ON_ESM)
356
- config.noNamespace = false
357
- }
358
- }
359
-
360
379
  config = await this.validateTsConfig(config)
361
380
 
362
381
  return config
@@ -368,7 +387,8 @@ export class Config {
368
387
  * @param options
369
388
  */
370
389
  public static async load(options: ConfigFlags): Promise<UserConfig> {
371
- const configFile = (await this.loadConfigFile(options.configName))?.config || {}
390
+ const configFile = await this.loadConfigFile(options.configName)
391
+ const configFileData = configFile?.config || {}
372
392
 
373
393
  const config: UserConfig = {
374
394
  environments: options.environments,
@@ -377,6 +397,7 @@ export class Config {
377
397
  verbose: options.verbose,
378
398
  ignoreVersionConflicts: options.ignoreVersionConflicts,
379
399
  print: options.print,
400
+ root: options.root,
380
401
  outdir: options.outdir,
381
402
  girDirectories: options.girDirectories,
382
403
  ignore: options.ignore,
@@ -386,105 +407,170 @@ export class Config {
386
407
  noDebugComments: options.noDebugComments,
387
408
  fixConflicts: options.fixConflicts,
388
409
  noDOMLib: options.noDOMLib,
389
- gnomeShellTypes: options.gnomeShellTypes,
390
410
  generateAlias: options.generateAlias,
411
+ promisify: options.promisify,
412
+ npmScope: options.npmScope,
413
+ package: options.package,
391
414
  }
392
415
 
393
- if (configFile) {
416
+ if (configFileData) {
394
417
  // environments
395
- if (isEqual(config.environments, Config.defaults.environments) && configFile.environments) {
396
- config.environments = configFile.environments
418
+ if (isEqual(config.environments, Config.defaults.environments) && configFileData.environments) {
419
+ config.environments = configFileData.environments
397
420
  }
398
421
  // buildType
399
- if (config.buildType === Config.options.buildType.default && configFile.buildType) {
400
- config.buildType = configFile.buildType
422
+ if (config.buildType === Config.options.buildType.default && configFileData.buildType) {
423
+ config.buildType = configFileData.buildType
401
424
  }
402
425
  // moduleType
403
- if (config.moduleType === Config.options.moduleType.default && configFile.moduleType) {
404
- config.moduleType = configFile.moduleType
426
+ if (config.moduleType === Config.options.moduleType.default && configFileData.moduleType) {
427
+ config.moduleType = configFileData.moduleType
405
428
  }
406
429
  // verbose
407
- if (config.verbose === Config.options.verbose.default && typeof configFile.verbose === 'boolean') {
408
- config.verbose = configFile.verbose
430
+ if (config.verbose === Config.options.verbose.default && typeof configFileData.verbose === 'boolean') {
431
+ config.verbose = configFileData.verbose
409
432
  }
410
433
  // ignoreVersionConflicts
411
434
  if (
412
435
  config.ignoreVersionConflicts === Config.options.ignoreVersionConflicts.default &&
413
- typeof configFile.ignoreVersionConflicts === 'boolean'
436
+ typeof configFileData.ignoreVersionConflicts === 'boolean'
414
437
  ) {
415
- config.ignoreVersionConflicts = configFile.ignoreVersionConflicts
438
+ config.ignoreVersionConflicts = configFileData.ignoreVersionConflicts
416
439
  }
417
440
  // print
418
- if (config.print === Config.options.print.default && typeof configFile.print === 'boolean') {
419
- config.print = configFile.print
441
+ if (config.print === Config.options.print.default && typeof configFileData.print === 'boolean') {
442
+ config.print = configFileData.print
443
+ }
444
+ // root
445
+ if (config.root === Config.options.root.default && (configFileData.root || configFile?.filepath)) {
446
+ // Use the config file path as the root path if no root path is set
447
+ config.root =
448
+ configFileData.root ||
449
+ (configFile?.filepath ? dirname(configFile.filepath) : (Config.options.root.default as string))
420
450
  }
421
451
  // outdir
422
- if (config.outdir === Config.options.outdir.default && configFile.outdir) {
423
- config.outdir = config.print ? null : configFile.outdir
452
+ if (config.outdir === Config.options.outdir.default && configFileData.outdir) {
453
+ config.outdir = config.print ? null : configFileData.outdir
424
454
  }
425
455
  // girDirectories
426
- if (config.girDirectories === Config.options.girDirectories.default && configFile.girDirectories) {
427
- config.girDirectories = configFile.girDirectories
456
+ if (config.girDirectories === Config.options.girDirectories.default && configFileData.girDirectories) {
457
+ config.girDirectories = configFileData.girDirectories
428
458
  }
429
459
  // ignore
430
460
  if (
431
461
  (!config.ignore || config.ignore.length <= 0 || isEqual(config.ignore, Config.defaults.ignore)) &&
432
- configFile.ignore
462
+ configFileData.ignore
433
463
  ) {
434
- config.ignore = configFile.ignore
464
+ config.ignore = configFileData.ignore
435
465
  }
436
466
  // modules
437
467
  if (
438
468
  (config.modules.length <= 0 || isEqual(config.modules, Config.defaults.modules)) &&
439
- configFile.modules
469
+ configFileData.modules
440
470
  ) {
441
- config.modules = configFile.modules
471
+ config.modules = configFileData.modules
442
472
  }
443
473
  // noNamespace
444
474
  if (
445
475
  config.noNamespace === Config.options.noNamespace.default &&
446
- typeof configFile.noNamespace === 'boolean'
476
+ typeof configFileData.noNamespace === 'boolean'
447
477
  ) {
448
- config.noNamespace = configFile.noNamespace
478
+ config.noNamespace = configFileData.noNamespace
449
479
  }
450
480
  // noComments
451
- if (config.noComments === Config.options.noComments.default && typeof configFile.noComments === 'boolean') {
452
- config.noComments = configFile.noComments
481
+ if (
482
+ config.noComments === Config.options.noComments.default &&
483
+ typeof configFileData.noComments === 'boolean'
484
+ ) {
485
+ config.noComments = configFileData.noComments
453
486
  }
454
487
  // noDebugComments
455
488
  if (
456
489
  config.noDebugComments === Config.options.noDebugComments.default &&
457
- typeof configFile.noDebugComments === 'boolean'
490
+ typeof configFileData.noDebugComments === 'boolean'
458
491
  ) {
459
- config.noDebugComments = configFile.noDebugComments
492
+ config.noDebugComments = configFileData.noDebugComments
460
493
  }
461
494
  // fixConflicts
462
495
  if (
463
496
  config.fixConflicts === Config.options.fixConflicts.default &&
464
- typeof configFile.fixConflicts === 'boolean'
497
+ typeof configFileData.fixConflicts === 'boolean'
465
498
  ) {
466
- config.fixConflicts = configFile.fixConflicts
499
+ config.fixConflicts = configFileData.fixConflicts
467
500
  }
468
501
  // noDOMLib
469
- if (config.noDOMLib === Config.options.noDOMLib.default && typeof configFile.noDOMLib === 'boolean') {
470
- config.noDOMLib = configFile.noDOMLib
502
+ if (config.noDOMLib === Config.options.noDOMLib.default && typeof configFileData.noDOMLib === 'boolean') {
503
+ config.noDOMLib = configFileData.noDOMLib
471
504
  }
472
- // gnomeShellTypes
505
+ // generateAlias
473
506
  if (
474
- config.gnomeShellTypes === Config.options.gnomeShellTypes.default &&
475
- typeof configFile.gnomeShellTypes === 'boolean'
507
+ config.generateAlias === Config.options.generateAlias.default &&
508
+ typeof configFileData.generateAlias === 'boolean'
476
509
  ) {
477
- config.gnomeShellTypes = configFile.gnomeShellTypes
510
+ config.generateAlias = configFileData.generateAlias
478
511
  }
479
- // generateAlias
512
+ // promisify
480
513
  if (
481
- config.generateAlias === Config.options.generateAlias.default &&
482
- typeof configFile.generateAlias === 'boolean'
514
+ config.promisify === Config.options.promisify.default &&
515
+ typeof configFileData.promisify === 'boolean'
483
516
  ) {
484
- config.generateAlias = configFile.generateAlias
517
+ config.promisify = configFileData.promisify
518
+ }
519
+ // npmScope
520
+ if (config.npmScope === Config.options.npmScope.default && configFileData.npmScope) {
521
+ config.npmScope = configFileData.npmScope
485
522
  }
523
+ // package
524
+ if (config.package === Config.options.package.default && typeof configFileData.package === 'boolean') {
525
+ config.package = configFileData.package
526
+ }
527
+ }
528
+
529
+ if ((config.moduleType as string) === 'commonjs') {
530
+ config.moduleType = 'cjs'
531
+ }
532
+
533
+ // If outdir is not absolute, make it absolute to the root path
534
+ if (config.outdir && !config.outdir?.startsWith('/')) {
535
+ config.outdir = resolve(config.root, config.outdir)
536
+ }
537
+
538
+ // Same for girDirectories
539
+ if (config.girDirectories) {
540
+ config.girDirectories = config.girDirectories.map((dir) => {
541
+ if (!dir.startsWith('/')) {
542
+ return resolve(config.root, dir)
543
+ }
544
+ return dir
545
+ })
486
546
  }
487
547
 
488
548
  return await this.validate(config)
489
549
  }
490
550
  }
551
+
552
+ function getDefaultGirDirectories(): string[] {
553
+ const girDirectories = [
554
+ '/usr/local/share/gir-1.0',
555
+ '/usr/share/gir-1.0',
556
+ '/usr/share/gnome-shell',
557
+ '/usr/share/gnome-shell/gir-1.0',
558
+ '/usr/lib64/mutter-10',
559
+ '/usr/lib64/mutter-11',
560
+ '/usr/lib64/mutter-12',
561
+ '/usr/lib/x86_64-linux-gnu/mutter-10',
562
+ '/usr/lib/x86_64-linux-gnu/mutter-11',
563
+ '/usr/lib/x86_64-linux-gnu/mutter-12',
564
+ ]
565
+ // NixOS and other distributions does not have a /usr/local/share directory.
566
+ // Instead, the nix store paths with Gir files are set as XDG_DATA_DIRS.
567
+ // See https://github.com/NixOS/nixpkgs/blob/96e18717904dfedcd884541e5a92bf9ff632cf39/pkgs/development/libraries/gobject-introspection/setup-hook.sh#L7-L10
568
+ const dataDirs = process.env['XDG_DATA_DIRS']?.split(':') || []
569
+ for (let dataDir of dataDirs) {
570
+ dataDir = join(dataDir, 'gir-1.0')
571
+ if (!girDirectories.includes(dataDir)) {
572
+ girDirectories.push(dataDir)
573
+ }
574
+ }
575
+ return girDirectories
576
+ }
@@ -1,18 +1,18 @@
1
1
  import { mkdir } from 'fs/promises'
2
- import { GirModule } from './gir-module.js'
3
- import { Generator } from './generator.js'
4
- import TypeDefinitionGenerator from './type-definition-generator.js'
5
- import HTMLDocGenerator from './html-doc-generator.js'
6
- import { Logger } from './logger.js'
7
- import { getEnvironmentDir } from './utils.js'
8
- import { InheritanceTable, GenerateConfig, GirModulesGrouped, GeneratorType } from './types/index.js'
9
2
  import {
3
+ GirModule,
4
+ Logger,
10
5
  START_MODULE,
11
6
  FILE_PARSING_DONE,
12
7
  TSDATA_PARSING_DONE,
13
8
  GENERATING_TYPES_DONE,
14
9
  ERROR_NO_MODULE_SPECIFIED,
15
- } from './messages.js'
10
+ } from '@ts-for-gir/lib'
11
+ import { GeneratorType, Generator } from '@ts-for-gir/generator-base'
12
+ import { TypeDefinitionGenerator } from '@ts-for-gir/generator-typescript'
13
+ import { HtmlDocGenerator } from '@ts-for-gir/generator-html-doc'
14
+
15
+ import type { InheritanceTable, GenerateConfig, GirModulesGrouped } from '@ts-for-gir/lib'
16
16
 
17
17
  export class GenerationHandler {
18
18
  log: Logger
@@ -25,7 +25,7 @@ export class GenerationHandler {
25
25
  this.generator = new TypeDefinitionGenerator(config)
26
26
  break
27
27
  case GeneratorType.HTML_DOC:
28
- this.generator = new HTMLDocGenerator(config)
28
+ this.generator = new HtmlDocGenerator(config)
29
29
  break
30
30
  default:
31
31
  throw new Error('Unknown Generator')
@@ -65,11 +65,10 @@ export class GenerationHandler {
65
65
 
66
66
  for (const girModule of girModules) {
67
67
  if (this.config.outdir) {
68
- const outputDir = getEnvironmentDir(this.config.environment, this.config.outdir)
69
- await mkdir(outputDir, { recursive: true })
68
+ await mkdir(this.config.outdir, { recursive: true })
70
69
  }
71
70
  this.log.log(` - ${girModule.packageName} ...`)
72
- girModule.start()
71
+ girModule.start(girModules)
73
72
  }
74
73
 
75
74
  await this.generator.start(girModules, girModulesGrouped, inheritanceTable)
package/src/index.ts CHANGED
@@ -1,17 +1,5 @@
1
- export * from './types/index.js'
2
- export * from './injection/index.js'
3
1
  export * from './commands/index.js'
4
2
  export * from './config.js'
5
- export * from './conflict-resolver.js'
6
- export * from './constants.js'
7
3
  export * from './generation-handler.js'
8
- export * from './gir-factory.js'
9
- export * from './gir-module.js'
10
- export * from './logger.js'
11
- export * from './messages.js'
12
4
  export * from './module-loader.js'
13
- export * from './symtable.js'
14
- export * from './template-processor.js'
15
- export * from './transformation.js'
16
5
  export * from './utils.js'
17
- export { default as templateProcessor } from './template-processor.js'