@ts-for-gir/cli 3.0.0-beta.8 → 3.0.0
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 +429 -49
- package/lib/commands/doc.d.ts +1 -17
- package/lib/commands/doc.js +7 -13
- package/lib/commands/doc.js.map +1 -1
- package/lib/commands/generate.d.ts +1 -39
- package/lib/commands/generate.js +8 -25
- package/lib/commands/generate.js.map +1 -1
- package/lib/commands/list.d.ts +1 -11
- package/lib/commands/list.js +6 -10
- package/lib/commands/list.js.map +1 -1
- package/lib/config.d.ts +25 -11
- package/lib/config.js +194 -112
- package/lib/config.js.map +1 -1
- package/lib/generation-handler.d.ts +3 -4
- package/lib/generation-handler.js +8 -12
- package/lib/generation-handler.js.map +1 -1
- package/lib/index.d.ts +0 -12
- package/lib/index.js +0 -12
- package/lib/index.js.map +1 -1
- package/lib/module-loader.d.ts +41 -27
- package/lib/module-loader.js +54 -56
- package/lib/module-loader.js.map +1 -1
- package/lib/utils.d.ts +13 -86
- package/lib/utils.js +13 -194
- package/lib/utils.js.map +1 -1
- package/package.json +32 -37
- package/src/commands/doc.ts +9 -14
- package/src/commands/generate.ts +10 -25
- package/src/commands/list.ts +8 -10
- package/src/config.ts +211 -115
- package/src/generation-handler.ts +12 -13
- package/src/index.ts +0 -12
- package/src/module-loader.ts +88 -75
- package/src/utils.ts +12 -222
- package/lib/conflict-resolver.d.ts +0 -155
- package/lib/conflict-resolver.js +0 -1103
- package/lib/conflict-resolver.js.map +0 -1
- package/lib/constants.d.ts +0 -18
- package/lib/constants.js +0 -23
- package/lib/constants.js.map +0 -1
- package/lib/generator.d.ts +0 -5
- package/lib/generator.js +0 -2
- package/lib/generator.js.map +0 -1
- package/lib/gir-factory.d.ts +0 -51
- package/lib/gir-factory.js +0 -361
- package/lib/gir-factory.js.map +0 -1
- package/lib/gir-module.d.ts +0 -256
- package/lib/gir-module.js +0 -2075
- package/lib/gir-module.js.map +0 -1
- package/lib/html-doc-generator.d.ts +0 -13
- package/lib/html-doc-generator.js +0 -18
- package/lib/html-doc-generator.js.map +0 -1
- package/lib/injection/callbacks/gjs/Gio-2.0.d.ts +0 -2
- package/lib/injection/callbacks/gjs/Gio-2.0.js +0 -36
- package/lib/injection/callbacks/gjs/Gio-2.0.js.map +0 -1
- package/lib/injection/callbacks/gjs/index.d.ts +0 -2
- package/lib/injection/callbacks/gjs/index.js +0 -3
- package/lib/injection/callbacks/gjs/index.js.map +0 -1
- package/lib/injection/callbacks/index.d.ts +0 -4
- package/lib/injection/callbacks/index.js +0 -4
- package/lib/injection/callbacks/index.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/GLib-2-0.d.ts +0 -2
- package/lib/injection/classes/GLib-2-0.js +0 -35
- package/lib/injection/classes/GLib-2-0.js.map +0 -1
- package/lib/injection/classes/gjs/GLib-2.0.d.ts +0 -2
- package/lib/injection/classes/gjs/GLib-2.0.js +0 -200
- package/lib/injection/classes/gjs/GLib-2.0.js.map +0 -1
- package/lib/injection/classes/gjs/GObject-2.0.d.ts +0 -2
- package/lib/injection/classes/gjs/GObject-2.0.js +0 -634
- package/lib/injection/classes/gjs/GObject-2.0.js.map +0 -1
- package/lib/injection/classes/gjs/Gio-2.0.d.ts +0 -5
- package/lib/injection/classes/gjs/Gio-2.0.js +0 -218
- package/lib/injection/classes/gjs/Gio-2.0.js.map +0 -1
- package/lib/injection/classes/gjs/index.d.ts +0 -2
- package/lib/injection/classes/gjs/index.js +0 -5
- package/lib/injection/classes/gjs/index.js.map +0 -1
- package/lib/injection/classes/index.d.ts +0 -4
- package/lib/injection/classes/index.js +0 -5
- package/lib/injection/classes/index.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/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/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/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/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/index.d.ts +0 -3
- package/lib/injection/index.js +0 -4
- package/lib/injection/index.js.map +0 -1
- package/lib/injection/injector.d.ts +0 -17
- package/lib/injection/injector.js +0 -139
- package/lib/injection/injector.js.map +0 -1
- package/lib/logger.d.ts +0 -36
- package/lib/logger.js +0 -137
- package/lib/logger.js.map +0 -1
- package/lib/messages.d.ts +0 -30
- package/lib/messages.js +0 -45
- package/lib/messages.js.map +0 -1
- package/lib/symtable.d.ts +0 -24
- package/lib/symtable.js +0 -63
- package/lib/symtable.js.map +0 -1
- package/lib/template-processor.d.ts +0 -75
- package/lib/template-processor.js +0 -207
- package/lib/template-processor.js.map +0 -1
- package/lib/transformation.d.ts +0 -156
- package/lib/transformation.js +0 -523
- package/lib/transformation.js.map +0 -1
- package/lib/type-definition-generator.d.ts +0 -116
- package/lib/type-definition-generator.js +0 -989
- package/lib/type-definition-generator.js.map +0 -1
- package/lib/types/answer-version.d.ts +0 -4
- package/lib/types/answer-version.js +0 -2
- package/lib/types/answer-version.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/class-parent.d.ts +0 -11
- package/lib/types/class-parent.js +0 -2
- package/lib/types/class-parent.js.map +0 -1
- package/lib/types/config-flags.d.ts +0 -4
- package/lib/types/config-flags.js +0 -2
- package/lib/types/config-flags.js.map +0 -1
- package/lib/types/conflict-child-element.d.ts +0 -10
- package/lib/types/conflict-child-element.js +0 -2
- package/lib/types/conflict-child-element.js.map +0 -1
- package/lib/types/conflict-grouped-element.d.ts +0 -6
- package/lib/types/conflict-grouped-element.js +0 -2
- package/lib/types/conflict-grouped-element.js.map +0 -1
- package/lib/types/conflict-grouped-elements.d.ts +0 -4
- package/lib/types/conflict-grouped-elements.js +0 -2
- package/lib/types/conflict-grouped-elements.js.map +0 -1
- package/lib/types/construct-name.d.ts +0 -1
- package/lib/types/construct-name.js +0 -2
- package/lib/types/construct-name.js.map +0 -1
- package/lib/types/dependency-map.d.ts +0 -4
- package/lib/types/dependency-map.js +0 -2
- package/lib/types/dependency-map.js.map +0 -1
- package/lib/types/dependency.d.ts +0 -14
- package/lib/types/dependency.js +0 -2
- package/lib/types/dependency.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/generate-config.d.ts +0 -34
- package/lib/types/generate-config.js +0 -2
- package/lib/types/generate-config.js.map +0 -1
- package/lib/types/generator-type.d.ts +0 -4
- package/lib/types/generator-type.js +0 -6
- package/lib/types/generator-type.js.map +0 -1
- package/lib/types/gir-alias-element.d.ts +0 -13
- package/lib/types/gir-alias-element.js +0 -2
- package/lib/types/gir-alias-element.js.map +0 -1
- package/lib/types/gir-annotation.d.ts +0 -9
- package/lib/types/gir-annotation.js +0 -2
- package/lib/types/gir-annotation.js.map +0 -1
- package/lib/types/gir-any-element.d.ts +0 -2
- package/lib/types/gir-any-element.js +0 -2
- package/lib/types/gir-any-element.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-bitfield-element.d.ts +0 -17
- package/lib/types/gir-bitfield-element.js +0 -2
- package/lib/types/gir-bitfield-element.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-element.d.ts +0 -30
- package/lib/types/gir-callable-param-element.js +0 -2
- package/lib/types/gir-callable-param-element.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-callable-return.d.ts +0 -22
- package/lib/types/gir-callable-return.js +0 -2
- package/lib/types/gir-callable-return.js.map +0 -1
- package/lib/types/gir-callback-element.d.ts +0 -15
- package/lib/types/gir-callback-element.js +0 -2
- package/lib/types/gir-callback-element.js.map +0 -1
- package/lib/types/gir-class-element.d.ts +0 -48
- package/lib/types/gir-class-element.js +0 -2
- package/lib/types/gir-class-element.js.map +0 -1
- package/lib/types/gir-constant-element.d.ts +0 -15
- package/lib/types/gir-constant-element.js +0 -2
- package/lib/types/gir-constant-element.js.map +0 -1
- package/lib/types/gir-constructor-element.d.ts +0 -8
- package/lib/types/gir-constructor-element.js +0 -2
- package/lib/types/gir-constructor-element.js.map +0 -1
- package/lib/types/gir-direction.d.ts +0 -5
- package/lib/types/gir-direction.js +0 -7
- 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-enum-element.d.ts +0 -19
- package/lib/types/gir-enum-element.js +0 -2
- package/lib/types/gir-enum-element.js.map +0 -1
- package/lib/types/gir-field-element.d.ts +0 -18
- package/lib/types/gir-field-element.js +0 -2
- package/lib/types/gir-field-element.js.map +0 -1
- package/lib/types/gir-function-element.d.ts +0 -8
- package/lib/types/gir-function-element.js +0 -2
- package/lib/types/gir-function-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-instance-parameter.d.ts +0 -21
- package/lib/types/gir-instance-parameter.js +0 -2
- package/lib/types/gir-instance-parameter.js.map +0 -1
- package/lib/types/gir-interface-element.d.ts +0 -31
- package/lib/types/gir-interface-element.js +0 -2
- package/lib/types/gir-interface-element.js.map +0 -1
- package/lib/types/gir-member-element.d.ts +0 -17
- package/lib/types/gir-member-element.js +0 -2
- package/lib/types/gir-member-element.js.map +0 -1
- package/lib/types/gir-method-element.d.ts +0 -13
- package/lib/types/gir-method-element.js +0 -2
- package/lib/types/gir-method-element.js.map +0 -1
- package/lib/types/gir-module-resolved-by.d.ts +0 -10
- package/lib/types/gir-module-resolved-by.js +0 -2
- package/lib/types/gir-module-resolved-by.js.map +0 -1
- package/lib/types/gir-modules-grouped-map.d.ts +0 -4
- package/lib/types/gir-modules-grouped-map.js +0 -2
- package/lib/types/gir-modules-grouped-map.js.map +0 -1
- package/lib/types/gir-modules-grouped.d.ts +0 -12
- package/lib/types/gir-modules-grouped.js +0 -2
- package/lib/types/gir-modules-grouped.js.map +0 -1
- package/lib/types/gir-namespace.d.ts +0 -30
- package/lib/types/gir-namespace.js +0 -2
- package/lib/types/gir-namespace.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-property-element.d.ts +0 -21
- package/lib/types/gir-property-element.js +0 -2
- package/lib/types/gir-property-element.js.map +0 -1
- package/lib/types/gir-record-element.d.ts +0 -30
- package/lib/types/gir-record-element.js +0 -2
- package/lib/types/gir-record-element.js.map +0 -1
- package/lib/types/gir-repository.d.ts +0 -16
- package/lib/types/gir-repository.js +0 -2
- package/lib/types/gir-repository.js.map +0 -1
- package/lib/types/gir-signal.d.ts +0 -25
- package/lib/types/gir-signal.js +0 -2
- package/lib/types/gir-signal.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 -5
- 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-union-element.d.ts +0 -22
- package/lib/types/gir-union-element.js +0 -2
- package/lib/types/gir-union-element.js.map +0 -1
- package/lib/types/gir-unparsed-number.d.ts +0 -2
- package/lib/types/gir-unparsed-number.js +0 -2
- package/lib/types/gir-unparsed-number.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/gir-virtual-method.d.ts +0 -10
- package/lib/types/gir-virtual-method.js +0 -2
- package/lib/types/gir-virtual-method.js.map +0 -1
- package/lib/types/index.d.ts +0 -118
- package/lib/types/index.js +0 -119
- package/lib/types/index.js.map +0 -1
- package/lib/types/inheritance-table.d.ts +0 -3
- package/lib/types/inheritance-table.js +0 -2
- package/lib/types/inheritance-table.js.map +0 -1
- package/lib/types/injection-callback.d.ts +0 -16
- package/lib/types/injection-callback.js +0 -2
- package/lib/types/injection-callback.js.map +0 -1
- package/lib/types/injection-class.d.ts +0 -25
- package/lib/types/injection-class.js +0 -2
- package/lib/types/injection-class.js.map +0 -1
- package/lib/types/injection-function.d.ts +0 -7
- package/lib/types/injection-function.js +0 -2
- package/lib/types/injection-function.js.map +0 -1
- package/lib/types/injection-generic-parameter.d.ts +0 -2
- package/lib/types/injection-generic-parameter.js +0 -2
- package/lib/types/injection-generic-parameter.js.map +0 -1
- package/lib/types/injection-instance-parameter.d.ts +0 -2
- package/lib/types/injection-instance-parameter.js +0 -2
- package/lib/types/injection-instance-parameter.js.map +0 -1
- package/lib/types/injection-parameter.d.ts +0 -8
- package/lib/types/injection-parameter.js +0 -2
- package/lib/types/injection-parameter.js.map +0 -1
- package/lib/types/injection-property.d.ts +0 -4
- package/lib/types/injection-property.js +0 -2
- package/lib/types/injection-property.js.map +0 -1
- package/lib/types/injection-type.d.ts +0 -2
- package/lib/types/injection-type.js +0 -2
- package/lib/types/injection-type.js.map +0 -1
- package/lib/types/injection.d.ts +0 -5
- package/lib/types/injection.js +0 -2
- package/lib/types/injection.js.map +0 -1
- package/lib/types/local-name-check.d.ts +0 -4
- package/lib/types/local-name-check.js +0 -2
- package/lib/types/local-name-check.js.map +0 -1
- package/lib/types/local-name-type.d.ts +0 -1
- package/lib/types/local-name-type.js +0 -2
- package/lib/types/local-name-type.js.map +0 -1
- package/lib/types/local-name.d.ts +0 -7
- package/lib/types/local-name.js +0 -2
- package/lib/types/local-name.js.map +0 -1
- package/lib/types/local-names.d.ts +0 -4
- package/lib/types/local-names.js +0 -2
- package/lib/types/local-names.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/lib/types/parsed-gir.d.ts +0 -4
- package/lib/types/parsed-gir.js +0 -2
- package/lib/types/parsed-gir.js.map +0 -1
- package/lib/types/part-of-class.d.ts +0 -7
- package/lib/types/part-of-class.js +0 -2
- package/lib/types/part-of-class.js.map +0 -1
- package/lib/types/part-of-module.d.ts +0 -6
- package/lib/types/part-of-module.js +0 -2
- package/lib/types/part-of-module.js.map +0 -1
- package/lib/types/resolve-type.d.ts +0 -4
- package/lib/types/resolve-type.js +0 -6
- package/lib/types/resolve-type.js.map +0 -1
- package/lib/types/sym-table-items.d.ts +0 -4
- package/lib/types/sym-table-items.js +0 -2
- package/lib/types/sym-table-items.js.map +0 -1
- package/lib/types/transformation-case.d.ts +0 -1
- package/lib/types/transformation-case.js +0 -2
- package/lib/types/transformation-case.js.map +0 -1
- package/lib/types/transformations.d.ts +0 -11
- package/lib/types/transformations.js +0 -2
- package/lib/types/transformations.js.map +0 -1
- package/lib/types/ts-alias.d.ts +0 -10
- package/lib/types/ts-alias.js +0 -2
- package/lib/types/ts-alias.js.map +0 -1
- package/lib/types/ts-callback-interface.d.ts +0 -10
- package/lib/types/ts-callback-interface.js +0 -2
- package/lib/types/ts-callback-interface.js.map +0 -1
- package/lib/types/ts-callback.d.ts +0 -17
- package/lib/types/ts-callback.js +0 -2
- package/lib/types/ts-callback.js.map +0 -1
- package/lib/types/ts-class.d.ts +0 -85
- package/lib/types/ts-class.js +0 -2
- package/lib/types/ts-class.js.map +0 -1
- package/lib/types/ts-doc-tag.d.ts +0 -21
- package/lib/types/ts-doc-tag.js +0 -2
- package/lib/types/ts-doc-tag.js.map +0 -1
- package/lib/types/ts-doc.d.ts +0 -20
- package/lib/types/ts-doc.js +0 -2
- package/lib/types/ts-doc.js.map +0 -1
- package/lib/types/ts-enum.d.ts +0 -12
- package/lib/types/ts-enum.js +0 -2
- package/lib/types/ts-enum.js.map +0 -1
- package/lib/types/ts-function.d.ts +0 -44
- package/lib/types/ts-function.js +0 -2
- package/lib/types/ts-function.js.map +0 -1
- package/lib/types/ts-generic-parameter.d.ts +0 -8
- package/lib/types/ts-generic-parameter.js +0 -2
- package/lib/types/ts-generic-parameter.js.map +0 -1
- package/lib/types/ts-instance-parameter.d.ts +0 -4
- package/lib/types/ts-instance-parameter.js +0 -2
- package/lib/types/ts-instance-parameter.js.map +0 -1
- package/lib/types/ts-member.d.ts +0 -10
- package/lib/types/ts-member.js +0 -2
- package/lib/types/ts-member.js.map +0 -1
- package/lib/types/ts-method.d.ts +0 -5
- package/lib/types/ts-method.js +0 -2
- package/lib/types/ts-method.js.map +0 -1
- package/lib/types/ts-parameter.d.ts +0 -15
- package/lib/types/ts-parameter.js +0 -2
- package/lib/types/ts-parameter.js.map +0 -1
- package/lib/types/ts-property.d.ts +0 -17
- package/lib/types/ts-property.js +0 -2
- package/lib/types/ts-property.js.map +0 -1
- package/lib/types/ts-signal.d.ts +0 -17
- package/lib/types/ts-signal.js +0 -2
- package/lib/types/ts-signal.js.map +0 -1
- package/lib/types/ts-type-name.d.ts +0 -1
- package/lib/types/ts-type-name.js +0 -2
- package/lib/types/ts-type-name.js.map +0 -1
- package/lib/types/ts-type-separator.d.ts +0 -1
- package/lib/types/ts-type-separator.js +0 -2
- package/lib/types/ts-type-separator.js.map +0 -1
- package/lib/types/ts-type.d.ts +0 -22
- package/lib/types/ts-type.js +0 -2
- package/lib/types/ts-type.js.map +0 -1
- package/lib/types/ts-var.d.ts +0 -17
- package/lib/types/ts-var.js +0 -2
- package/lib/types/ts-var.js.map +0 -1
- package/lib/types/type-gir-alias.d.ts +0 -2
- package/lib/types/type-gir-alias.js +0 -2
- package/lib/types/type-gir-alias.js.map +0 -1
- package/lib/types/type-gir-class.d.ts +0 -2
- package/lib/types/type-gir-class.js +0 -2
- package/lib/types/type-gir-class.js.map +0 -1
- package/lib/types/type-gir-element.d.ts +0 -3
- package/lib/types/type-gir-element.js +0 -2
- package/lib/types/type-gir-element.js.map +0 -1
- package/lib/types/type-gir-enumeration-member.d.ts +0 -2
- package/lib/types/type-gir-enumeration-member.js +0 -2
- package/lib/types/type-gir-enumeration-member.js.map +0 -1
- package/lib/types/type-gir-enumeration.d.ts +0 -2
- package/lib/types/type-gir-enumeration.js +0 -2
- package/lib/types/type-gir-enumeration.js.map +0 -1
- package/lib/types/type-gir-function.d.ts +0 -1
- package/lib/types/type-gir-function.js +0 -2
- package/lib/types/type-gir-function.js.map +0 -1
- package/lib/types/type-gir-interface.d.ts +0 -2
- package/lib/types/type-gir-interface.js +0 -2
- package/lib/types/type-gir-interface.js.map +0 -1
- package/lib/types/type-gir-method.d.ts +0 -2
- package/lib/types/type-gir-method.js +0 -2
- package/lib/types/type-gir-method.js.map +0 -1
- package/lib/types/type-gir-parameter.d.ts +0 -1
- package/lib/types/type-gir-parameter.js +0 -2
- package/lib/types/type-gir-parameter.js.map +0 -1
- package/lib/types/type-gir-property.d.ts +0 -2
- package/lib/types/type-gir-property.js +0 -2
- package/lib/types/type-gir-property.js.map +0 -1
- package/lib/types/type-gir-variable.d.ts +0 -1
- package/lib/types/type-gir-variable.js +0 -2
- package/lib/types/type-gir-variable.js.map +0 -1
- package/lib/types/type-ts-element.d.ts +0 -3
- package/lib/types/type-ts-element.js +0 -2
- package/lib/types/type-ts-element.js.map +0 -1
- package/lib/types/type-ts-enumeration-member.d.ts +0 -2
- package/lib/types/type-ts-enumeration-member.js +0 -2
- package/lib/types/type-ts-enumeration-member.js.map +0 -1
- package/lib/types/type-ts-function.d.ts +0 -1
- package/lib/types/type-ts-function.js +0 -2
- package/lib/types/type-ts-function.js.map +0 -1
- package/lib/types/type-ts-property.d.ts +0 -1
- package/lib/types/type-ts-property.js +0 -2
- package/lib/types/type-ts-property.js.map +0 -1
- package/lib/types/user-config-load-result.d.ts +0 -6
- package/lib/types/user-config-load-result.js +0 -2
- package/lib/types/user-config-load-result.js.map +0 -1
- package/lib/types/user-config.d.ts +0 -42
- package/lib/types/user-config.js +0 -2
- package/lib/types/user-config.js.map +0 -1
- package/src/conflict-resolver.ts +0 -1358
- package/src/constants.ts +0 -29
- package/src/generator.ts +0 -10
- package/src/gir-factory.ts +0 -499
- package/src/gir-module.ts +0 -2816
- package/src/html-doc-generator.ts +0 -23
- package/src/injection/callbacks/gjs/Gio-2.0.ts +0 -37
- package/src/injection/callbacks/gjs/index.ts +0 -5
- package/src/injection/callbacks/index.ts +0 -6
- package/src/injection/callbacks/node-gtk/index.ts +0 -3
- package/src/injection/classes/GLib-2-0.ts +0 -36
- package/src/injection/classes/gjs/GLib-2.0.ts +0 -201
- package/src/injection/classes/gjs/GObject-2.0.ts +0 -635
- package/src/injection/classes/gjs/Gio-2.0.ts +0 -219
- package/src/injection/classes/gjs/index.ts +0 -7
- package/src/injection/classes/index.ts +0 -7
- package/src/injection/classes/node-gtk/GLib-2.0.ts +0 -20
- package/src/injection/classes/node-gtk/GObject-2.0.ts +0 -67
- package/src/injection/classes/node-gtk/Gdk-4.0.ts +0 -33
- package/src/injection/classes/node-gtk/Gio-2.0.ts +0 -15
- package/src/injection/classes/node-gtk/Graphene-1.0.ts +0 -134
- package/src/injection/classes/node-gtk/Gtk-3.0.ts +0 -32
- package/src/injection/classes/node-gtk/Gtk-4.0.ts +0 -53
- package/src/injection/classes/node-gtk/Pango-1.0.ts +0 -32
- package/src/injection/classes/node-gtk/index.ts +0 -21
- package/src/injection/index.ts +0 -3
- package/src/injection/injector.ts +0 -184
- package/src/logger.ts +0 -134
- package/src/messages.ts +0 -68
- package/src/symtable.ts +0 -70
- package/src/template-processor.ts +0 -233
- package/src/transformation.ts +0 -583
- package/src/type-definition-generator.ts +0 -1458
- package/src/types/answer-version.ts +0 -4
- package/src/types/build-type.ts +0 -1
- package/src/types/class-parent.ts +0 -12
- package/src/types/config-flags.ts +0 -5
- package/src/types/conflict-child-element.ts +0 -11
- package/src/types/conflict-grouped-element.ts +0 -7
- package/src/types/conflict-grouped-elements.ts +0 -5
- package/src/types/construct-name.ts +0 -11
- package/src/types/dependency-map.ts +0 -4
- package/src/types/dependency.ts +0 -14
- package/src/types/environment.ts +0 -1
- package/src/types/generate-config.ts +0 -35
- package/src/types/generator-type.ts +0 -4
- package/src/types/gir-alias-element.ts +0 -15
- package/src/types/gir-annotation.ts +0 -10
- package/src/types/gir-any-element.ts +0 -35
- package/src/types/gir-any-type.ts +0 -7
- package/src/types/gir-array-type.ts +0 -23
- package/src/types/gir-bitfield-element.ts +0 -20
- package/src/types/gir-boolean.ts +0 -1
- package/src/types/gir-boxed-element.ts +0 -19
- package/src/types/gir-c-include.ts +0 -7
- package/src/types/gir-callable-attrs.ts +0 -19
- package/src/types/gir-callable-param-element.ts +0 -45
- package/src/types/gir-callable-param.ts +0 -9
- package/src/types/gir-callable-return.ts +0 -25
- package/src/types/gir-callback-element.ts +0 -28
- package/src/types/gir-class-element.ts +0 -71
- package/src/types/gir-constant-element.ts +0 -17
- package/src/types/gir-constructor-element.ts +0 -18
- package/src/types/gir-direction.ts +0 -5
- package/src/types/gir-doc-element.ts +0 -73
- package/src/types/gir-enum-element.ts +0 -28
- package/src/types/gir-field-element.ts +0 -31
- package/src/types/gir-function-element.ts +0 -19
- package/src/types/gir-implements.ts +0 -9
- package/src/types/gir-include.ts +0 -9
- package/src/types/gir-info-attrs.ts +0 -16
- package/src/types/gir-info-elements.ts +0 -8
- package/src/types/gir-instance-parameter.ts +0 -25
- package/src/types/gir-interface-element.ts +0 -53
- package/src/types/gir-member-element.ts +0 -19
- package/src/types/gir-method-element.ts +0 -25
- package/src/types/gir-module-resolved-by.ts +0 -11
- package/src/types/gir-modules-grouped-map.ts +0 -5
- package/src/types/gir-modules-grouped.ts +0 -13
- package/src/types/gir-namespace.ts +0 -47
- package/src/types/gir-package.ts +0 -7
- package/src/types/gir-prerequisite.ts +0 -5
- package/src/types/gir-property-element.ts +0 -31
- package/src/types/gir-record-element.ts +0 -47
- package/src/types/gir-repository.ts +0 -20
- package/src/types/gir-signal.ts +0 -43
- package/src/types/gir-transfer-ownership-type.ts +0 -5
- package/src/types/gir-transfer-ownership.ts +0 -6
- package/src/types/gir-type.ts +0 -16
- package/src/types/gir-union-element.ts +0 -35
- package/src/types/gir-unparsed-number.ts +0 -2
- package/src/types/gir-var-args.ts +0 -6
- package/src/types/gir-virtual-method.ts +0 -22
- package/src/types/index.ts +0 -118
- package/src/types/inheritance-table.ts +0 -3
- package/src/types/injection-callback.ts +0 -20
- package/src/types/injection-class.ts +0 -30
- package/src/types/injection-function.ts +0 -23
- package/src/types/injection-generic-parameter.ts +0 -3
- package/src/types/injection-instance-parameter.ts +0 -3
- package/src/types/injection-parameter.ts +0 -9
- package/src/types/injection-property.ts +0 -7
- package/src/types/injection-type.ts +0 -3
- package/src/types/injection.ts +0 -6
- package/src/types/local-name-check.ts +0 -5
- package/src/types/local-name-type.ts +0 -1
- package/src/types/local-name.ts +0 -8
- package/src/types/local-names.ts +0 -5
- package/src/types/module-type.ts +0 -1
- package/src/types/parsed-gir.ts +0 -5
- package/src/types/part-of-class.ts +0 -9
- package/src/types/part-of-module.ts +0 -8
- package/src/types/resolve-type.ts +0 -4
- package/src/types/sym-table-items.ts +0 -5
- package/src/types/transformation-case.ts +0 -7
- package/src/types/transformations.ts +0 -12
- package/src/types/ts-alias.ts +0 -11
- package/src/types/ts-callback-interface.ts +0 -11
- package/src/types/ts-callback.ts +0 -21
- package/src/types/ts-class.ts +0 -109
- package/src/types/ts-doc-tag.ts +0 -23
- package/src/types/ts-doc.ts +0 -23
- package/src/types/ts-enum.ts +0 -15
- package/src/types/ts-function.ts +0 -59
- package/src/types/ts-generic-parameter.ts +0 -8
- package/src/types/ts-instance-parameter.ts +0 -4
- package/src/types/ts-member.ts +0 -11
- package/src/types/ts-method.ts +0 -6
- package/src/types/ts-parameter.ts +0 -20
- package/src/types/ts-property.ts +0 -22
- package/src/types/ts-signal.ts +0 -21
- package/src/types/ts-type-name.ts +0 -1
- package/src/types/ts-type-separator.ts +0 -1
- package/src/types/ts-type.ts +0 -25
- package/src/types/ts-var.ts +0 -21
- package/src/types/type-gir-alias.ts +0 -2
- package/src/types/type-gir-class.ts +0 -2
- package/src/types/type-gir-element.ts +0 -25
- package/src/types/type-gir-enumeration-member.ts +0 -2
- package/src/types/type-gir-enumeration.ts +0 -2
- package/src/types/type-gir-function.ts +0 -8
- package/src/types/type-gir-interface.ts +0 -2
- package/src/types/type-gir-method.ts +0 -2
- package/src/types/type-gir-parameter.ts +0 -1
- package/src/types/type-gir-property.ts +0 -2
- package/src/types/type-gir-variable.ts +0 -1
- package/src/types/type-ts-element.ts +0 -13
- package/src/types/type-ts-enumeration-member.ts +0 -2
- package/src/types/type-ts-function.ts +0 -1
- package/src/types/type-ts-property.ts +0 -1
- package/src/types/user-config-load-result.ts +0 -6
- package/src/types/user-config.ts +0 -43
- package/templates/Cogl-2.0.d.ts +0 -0
- package/templates/Gjs/GObject-2.0.d.ts +0 -238
- package/templates/Gjs/Gio-2.0.d.ts +0 -64
- package/templates/Gjs/Gjs.d.ts +0 -137
- package/templates/Gjs/Gjs.js +0 -21
- package/templates/Gjs/GnomeShell.d.ts +0 -122
- package/templates/Gjs/GnomeShell.js +0 -10
- package/templates/Gjs/index.d.ts +0 -594
- package/templates/Gjs/index.js +0 -4
- package/templates/Gjs/misc/dbusUtils.d.ts +0 -15
- package/templates/Gjs/misc/dbusUtils.js +0 -6
- package/templates/Gjs/misc/extensionUtils.d.ts +0 -99
- package/templates/Gjs/misc/extensionUtils.js +0 -6
- package/templates/Gjs/misc/fileUtils.d.ts +0 -49
- package/templates/Gjs/misc/fileUtils.js +0 -6
- package/templates/Gjs/misc/gnomeSession.d.ts +0 -72
- package/templates/Gjs/misc/gnomeSession.js +0 -6
- package/templates/Gjs/module.d.ts +0 -10
- package/templates/Gjs/module.js +0 -16
- package/templates/Gjs/ui/userWidget.d.ts +0 -10
- package/templates/Gjs/ui/userWidget.js +0 -6
- package/templates/Granite-1.0.d.ts +0 -7
- package/templates/Granite-7.0.d.ts +0 -7
- package/templates/GstBase-0.10.d.ts +0 -5
- package/templates/RygelServer-2.6.d.ts +0 -3
- package/templates/node-gtk/GObject-2.0.d.ts +0 -57
- package/templates/node-gtk/index.d.ts +0 -40
- package/templates/node-gtk/index.js +0 -9
- package/templates/node-gtk/module.d.ts +0 -10
- package/templates/node-gtk/module.js +0 -17
package/lib/utils.js
CHANGED
|
@@ -1,193 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import Path from 'path';
|
|
4
|
-
import fs from 'fs';
|
|
1
|
+
import { join, dirname, resolve } from 'path';
|
|
2
|
+
import { existsSync } from 'fs';
|
|
5
3
|
import { getTsconfig } from 'get-tsconfig';
|
|
6
|
-
import { fileURLToPath } from 'url';
|
|
7
|
-
import { inspect } from 'util';
|
|
8
|
-
import { Logger } from './logger.js';
|
|
9
|
-
import { COMMENT_REG_EXP, PARAM_REG_EXP, OPT_PARAM_REG_EXP } from './constants.js';
|
|
10
|
-
export { inspect };
|
|
11
|
-
export const isEqual = lodash.isEqual;
|
|
12
|
-
export const map = lodash.map;
|
|
13
|
-
export const find = lodash.find;
|
|
14
|
-
export const merge = lodash.merge;
|
|
15
|
-
export const clone = lodash.clone;
|
|
16
|
-
export const cloneDeep = lodash.cloneDeep;
|
|
17
|
-
export const splitModuleName = (packageName) => {
|
|
18
|
-
// There are modules that use multiple hyphens like 'GUPnP-DLNA-1.0'
|
|
19
|
-
const splits = packageName.split('-');
|
|
20
|
-
const version = splits.splice(-1, 1)[0];
|
|
21
|
-
const namespace = splits.join('');
|
|
22
|
-
return {
|
|
23
|
-
packageName,
|
|
24
|
-
namespace,
|
|
25
|
-
version,
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
/** Remove namespace prefix */
|
|
29
|
-
export const removeNamespace = (type, namespace) => {
|
|
30
|
-
if (type.startsWith(namespace + '.')) {
|
|
31
|
-
type = type.substring(namespace.length + 1);
|
|
32
|
-
}
|
|
33
|
-
return type;
|
|
34
|
-
};
|
|
35
|
-
/** Remove class module name prefix */
|
|
36
|
-
export const removeClassModule = removeNamespace;
|
|
37
|
-
export const addNamespace = (type, namespace) => {
|
|
38
|
-
if (!type.startsWith(namespace + '.')) {
|
|
39
|
-
type = namespace + '.' + type;
|
|
40
|
-
}
|
|
41
|
-
return type;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Checking whether some variable is iterable
|
|
45
|
-
* see https://stackoverflow.com/a/32538867
|
|
46
|
-
* @param obj Variable to check for iterable
|
|
47
|
-
*/
|
|
48
|
-
export const isIterable = (obj) => {
|
|
49
|
-
return obj != null && typeof obj[Symbol.iterator] === 'function';
|
|
50
|
-
};
|
|
51
|
-
export const isNumeric = (str) => {
|
|
52
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
53
|
-
return !isNaN(str - parseFloat(str));
|
|
54
|
-
};
|
|
55
|
-
export const getFirstChar = (str) => {
|
|
56
|
-
return str.charAt(0);
|
|
57
|
-
};
|
|
58
|
-
export const getLastChar = (str) => {
|
|
59
|
-
return str.charAt(str.length - 1);
|
|
60
|
-
};
|
|
61
|
-
export const isFirstCharNumeric = (str) => {
|
|
62
|
-
return isNumeric(getFirstChar(str));
|
|
63
|
-
};
|
|
64
|
-
export const camelCase = (str) => {
|
|
65
|
-
return str
|
|
66
|
-
.replace(/\s(.)|(\s|-|_|\.)(.)/g, (a) => {
|
|
67
|
-
return a.toUpperCase();
|
|
68
|
-
})
|
|
69
|
-
.replace(/(\s|-|_|\.)/g, '');
|
|
70
|
-
};
|
|
71
|
-
export const lowerCamelCase = (str) => {
|
|
72
|
-
str = camelCase(str);
|
|
73
|
-
str = getFirstChar(str).toLowerCase() + str.slice(1);
|
|
74
|
-
return str;
|
|
75
|
-
};
|
|
76
|
-
export const upperCamelCase = (str) => {
|
|
77
|
-
str = camelCase(str);
|
|
78
|
-
str = getFirstChar(str).toUpperCase() + str.slice(1);
|
|
79
|
-
return str;
|
|
80
|
-
};
|
|
81
|
-
export const findFileInDirs = (dirs, filename) => {
|
|
82
|
-
let exists = false;
|
|
83
|
-
for (const dir of dirs) {
|
|
84
|
-
const filePath = Path.join(dir, filename);
|
|
85
|
-
exists = fs.existsSync(filePath);
|
|
86
|
-
if (exists) {
|
|
87
|
-
return {
|
|
88
|
-
path: filePath,
|
|
89
|
-
exists,
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return {
|
|
94
|
-
path: null,
|
|
95
|
-
exists,
|
|
96
|
-
};
|
|
97
|
-
};
|
|
98
4
|
/**
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
* @
|
|
102
|
-
* @param source
|
|
5
|
+
* Get a typescript or javascript config by path
|
|
6
|
+
* @param path The path to search for a tsconfig.json or jsconfig.json file
|
|
7
|
+
* @returns The config or null if not found
|
|
103
8
|
*/
|
|
104
|
-
export const
|
|
105
|
-
return (target = new Set([...target, ...source]));
|
|
106
|
-
};
|
|
107
|
-
export const stripParamNames = (func, ignoreTail = false) => {
|
|
108
|
-
const g = func;
|
|
109
|
-
func = func.replace(COMMENT_REG_EXP, '');
|
|
110
|
-
const lb = func.split('(', 2);
|
|
111
|
-
if (lb.length < 2)
|
|
112
|
-
Logger.error(`Bad function definition ${g}`);
|
|
113
|
-
const rb = lb[1].split(')');
|
|
114
|
-
const tail = ignoreTail ? '' : rb[rb.length - 1];
|
|
115
|
-
let params = rb.slice(0, rb.length - 1).join(')');
|
|
116
|
-
params = params.replace(PARAM_REG_EXP, ':');
|
|
117
|
-
params = params.replace(OPT_PARAM_REG_EXP, '?:');
|
|
118
|
-
return `${lb[0]}(${params})${tail}`;
|
|
119
|
-
};
|
|
120
|
-
export const isCommentLine = (line) => {
|
|
121
|
-
const lineTrim = line.trim();
|
|
122
|
-
return lineTrim.startsWith('//') || (lineTrim.startsWith('/*') && lineTrim.endsWith('*/'));
|
|
123
|
-
};
|
|
124
|
-
export const generateIndent = (indents = 1, spaceForIndent = 4) => {
|
|
125
|
-
return ' '.repeat(indents * spaceForIndent);
|
|
126
|
-
};
|
|
127
|
-
// Get __dirname on ESM
|
|
128
|
-
export const __filename = fileURLToPath(import.meta.url);
|
|
129
|
-
export const __dirname = Path.dirname(__filename);
|
|
130
|
-
export const getEnvironmentDir = (environment, baseDir) => {
|
|
131
|
-
if (!baseDir.endsWith(environment))
|
|
132
|
-
if (environment === 'gjs' && !baseDir.endsWith('/Gjs')) {
|
|
133
|
-
return Path.join(baseDir, 'Gjs');
|
|
134
|
-
}
|
|
135
|
-
if (environment === 'node' && !baseDir.endsWith('/node-gtk')) {
|
|
136
|
-
return Path.join(baseDir, 'node-gtk');
|
|
137
|
-
}
|
|
138
|
-
return baseDir;
|
|
139
|
-
};
|
|
140
|
-
export const getDestPath = (environment, outputDir, ...parts) => {
|
|
141
|
-
const outputEnvDir = getEnvironmentDir(environment, outputDir);
|
|
142
|
-
const destPath = Path.join(outputEnvDir, ...parts);
|
|
143
|
-
return destPath;
|
|
144
|
-
};
|
|
145
|
-
export const girBool = (boolStr, defaultVal = false) => {
|
|
146
|
-
if (boolStr) {
|
|
147
|
-
if (parseInt(boolStr) === 0)
|
|
148
|
-
return false;
|
|
149
|
-
return true;
|
|
150
|
-
}
|
|
151
|
-
return defaultVal;
|
|
152
|
-
};
|
|
153
|
-
/**
|
|
154
|
-
* Returns `true` if the definitions in `d1` and `d2` have equivalent signatures
|
|
155
|
-
* @param d1
|
|
156
|
-
* @param d2
|
|
157
|
-
*/
|
|
158
|
-
export const signaturesMatch = (d1, d2) => {
|
|
159
|
-
if (isCommentLine(d1) || isCommentLine(d2))
|
|
160
|
-
return false;
|
|
161
|
-
return stripParamNames(d1) == stripParamNames(d2);
|
|
162
|
-
};
|
|
163
|
-
/**
|
|
164
|
-
* GirElements contains an attribute `introspectable`, which is a GirBoolean.
|
|
165
|
-
* If this is attribute is falsy the element is not introspectable,
|
|
166
|
-
* this means doesn't exist in the bindings, due in general to missing information in the annotations in the original C code
|
|
167
|
-
*/
|
|
168
|
-
export const girElementIsIntrospectable = (girElement, name) => {
|
|
169
|
-
if (!girElement) {
|
|
170
|
-
return false;
|
|
171
|
-
}
|
|
172
|
-
name = name || girElement?.$?.name;
|
|
173
|
-
if (!name) {
|
|
174
|
-
return false;
|
|
175
|
-
}
|
|
176
|
-
// Handle introspectable only if the attribute is also present...
|
|
177
|
-
if (girElement.$.hasOwnProperty('introspectable') && girElement.$.introspectable !== undefined) {
|
|
178
|
-
return girBool(girElement.$.introspectable, true);
|
|
179
|
-
}
|
|
180
|
-
// ...otherwise we assume that it is introspectable
|
|
181
|
-
return true;
|
|
182
|
-
};
|
|
183
|
-
export const typeIsOptional = (types) => {
|
|
184
|
-
for (const type of types) {
|
|
185
|
-
if (type.optional)
|
|
186
|
-
return true;
|
|
187
|
-
}
|
|
188
|
-
return false;
|
|
189
|
-
};
|
|
190
|
-
function convertTsJsConfigToObject(path) {
|
|
9
|
+
export const getTsJsConfigByPath = (path) => {
|
|
191
10
|
try {
|
|
192
11
|
const config = getTsconfig(path)?.config;
|
|
193
12
|
if (config)
|
|
@@ -197,7 +16,7 @@ function convertTsJsConfigToObject(path) {
|
|
|
197
16
|
// ignored
|
|
198
17
|
}
|
|
199
18
|
return null;
|
|
200
|
-
}
|
|
19
|
+
};
|
|
201
20
|
/**
|
|
202
21
|
* Given an directory path search for a tsconfig.json or jsconfig.json file in it or any of its parent directories, then read the file and parse it as json.
|
|
203
22
|
*
|
|
@@ -206,15 +25,15 @@ function convertTsJsConfigToObject(path) {
|
|
|
206
25
|
export function readTsJsConfig(path) {
|
|
207
26
|
let config = null;
|
|
208
27
|
let lastPath = '';
|
|
209
|
-
let currentPath =
|
|
28
|
+
let currentPath = resolve(path);
|
|
210
29
|
while (!config && currentPath !== lastPath) {
|
|
211
|
-
const tsConfigPath =
|
|
212
|
-
const jsConfigPath =
|
|
30
|
+
const tsConfigPath = join(currentPath, 'tsconfig.json');
|
|
31
|
+
const jsConfigPath = join(currentPath, 'jsconfig.json');
|
|
213
32
|
config =
|
|
214
|
-
(
|
|
215
|
-
(
|
|
33
|
+
(existsSync(tsConfigPath) && getTsJsConfigByPath(tsConfigPath)) ||
|
|
34
|
+
(existsSync(jsConfigPath) && getTsJsConfigByPath(jsConfigPath));
|
|
216
35
|
lastPath = currentPath;
|
|
217
|
-
currentPath =
|
|
36
|
+
currentPath = dirname(currentPath);
|
|
218
37
|
}
|
|
219
38
|
return config || null;
|
|
220
39
|
}
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAwB,MAAM,cAAc,CAAA;AAEhE;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAChD,IAAI;QACA,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;QACxC,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;KAC5B;IAAC,MAAM;QACJ,UAAU;KACb;IACD,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACvC,IAAI,MAAM,GAAwC,IAAI,CAAA;IACtD,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IAAI,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,OAAO,CAAC,MAAM,IAAI,WAAW,KAAK,QAAQ,EAAE;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;QACvD,MAAM;YACF,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBAC/D,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAA;QACnE,QAAQ,GAAG,WAAW,CAAA;QACtB,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;KACrC;IAED,OAAO,MAAM,IAAI,IAAI,CAAA;AACzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,28 +1,30 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ts-for-gir/cli",
|
|
3
|
-
"version": "3.0.0
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"description": "TypeScript type definition generator for GObject introspection GIR files",
|
|
5
5
|
"module": "lib/index.js",
|
|
6
|
+
"main": "lib/index.js",
|
|
6
7
|
"type": "module",
|
|
7
8
|
"bin": {
|
|
8
9
|
"ts-for-gir": "./lib/start.js"
|
|
9
10
|
},
|
|
10
11
|
"engines": {
|
|
11
|
-
"node": ">=
|
|
12
|
+
"node": ">=18"
|
|
12
13
|
},
|
|
13
14
|
"scripts": {
|
|
14
15
|
"start": "yarn node --max_old_space_size=9216 lib/start.js",
|
|
15
|
-
"
|
|
16
|
+
"start:dev": "yarn node --max_old_space_size=9216 --loader ts-node/esm src/start.ts",
|
|
17
|
+
"build": "yarn lint && yarn build:ts && yarn chmod",
|
|
16
18
|
"chmod": "chmod +x ./lib/start.js",
|
|
17
19
|
"build:ts": "tsc",
|
|
18
|
-
"clear": "yarn
|
|
20
|
+
"clear": "yarn clear:build",
|
|
19
21
|
"clear:build": "rimraf ./lib",
|
|
20
|
-
"watch": "yarn
|
|
22
|
+
"watch": "yarn build:ts --watch",
|
|
21
23
|
"lint": "eslint . --ext .ts,.tsx --fix"
|
|
22
24
|
},
|
|
23
25
|
"repository": {
|
|
24
26
|
"type": "git",
|
|
25
|
-
"url": "git+https://github.com/
|
|
27
|
+
"url": "git+https://github.com/gjsify/ts-for-gir.git"
|
|
26
28
|
},
|
|
27
29
|
"author": "Pascal Garber <pascal@artandcode.studio>",
|
|
28
30
|
"files": [
|
|
@@ -33,9 +35,9 @@
|
|
|
33
35
|
],
|
|
34
36
|
"license": "Apache-2.0",
|
|
35
37
|
"bugs": {
|
|
36
|
-
"url": "https://github.com/
|
|
38
|
+
"url": "https://github.com/gjsify/ts-for-gir/issues"
|
|
37
39
|
},
|
|
38
|
-
"homepage": "https://github.com/
|
|
40
|
+
"homepage": "https://github.com/gjsify/ts-for-gir#readme",
|
|
39
41
|
"keywords": [
|
|
40
42
|
"gjs",
|
|
41
43
|
"typescript",
|
|
@@ -48,40 +50,33 @@
|
|
|
48
50
|
"glib",
|
|
49
51
|
"gobject",
|
|
50
52
|
"dts",
|
|
51
|
-
"type definitions"
|
|
53
|
+
"type definitions",
|
|
54
|
+
"cli"
|
|
52
55
|
],
|
|
53
56
|
"devDependencies": {
|
|
54
|
-
"@types/change-case": "^2.3.1",
|
|
55
|
-
"@types/columnify": "^1.5.1",
|
|
56
|
-
"@types/ejs": "^3.1.1",
|
|
57
|
-
"@types/eslint": "8.4.10",
|
|
58
57
|
"@types/inquirer": "^9.0.3",
|
|
59
|
-
"@types/
|
|
60
|
-
"@types/
|
|
61
|
-
"@
|
|
62
|
-
"@
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"@typescript-eslint/parser": "^5.48.2",
|
|
66
|
-
"eslint": "^8.32.0",
|
|
67
|
-
"eslint-config-prettier": "^8.6.0",
|
|
58
|
+
"@types/node": "^18.16.14",
|
|
59
|
+
"@types/yargs": "^17.0.24",
|
|
60
|
+
"@typescript-eslint/eslint-plugin": "^5.59.6",
|
|
61
|
+
"@typescript-eslint/parser": "^5.59.6",
|
|
62
|
+
"eslint": "^8.41.0",
|
|
63
|
+
"eslint-config-prettier": "^8.8.0",
|
|
68
64
|
"eslint-plugin-prettier": "^4.2.1",
|
|
69
|
-
"
|
|
70
|
-
"
|
|
65
|
+
"prettier": "^2.8.8",
|
|
66
|
+
"rimraf": "^5.0.1",
|
|
67
|
+
"ts-node": "^10.9.1",
|
|
68
|
+
"typescript": "^5.0.4"
|
|
71
69
|
},
|
|
72
70
|
"dependencies": {
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"inquirer": "^9.
|
|
81
|
-
"lodash": "^4.17.21",
|
|
82
|
-
"prettier": "^2.8.3",
|
|
71
|
+
"@ts-for-gir/generator-base": "^3.0.0",
|
|
72
|
+
"@ts-for-gir/generator-html-doc": "^3.0.0",
|
|
73
|
+
"@ts-for-gir/generator-typescript": "^3.0.0",
|
|
74
|
+
"@ts-for-gir/lib": "^3.0.0",
|
|
75
|
+
"colorette": "^2.0.20",
|
|
76
|
+
"cosmiconfig": "^8.1.3",
|
|
77
|
+
"get-tsconfig": "^4.5.0",
|
|
78
|
+
"inquirer": "^9.2.6",
|
|
83
79
|
"tiny-glob": "^0.2.9",
|
|
84
|
-
"
|
|
85
|
-
"yargs": "^17.6.2"
|
|
80
|
+
"yargs": "^17.7.2"
|
|
86
81
|
}
|
|
87
82
|
}
|
package/src/commands/doc.ts
CHANGED
|
@@ -3,29 +3,24 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import { Argv } from 'yargs'
|
|
6
|
-
|
|
6
|
+
import { Logger, ERROR_NO_MODULES_FOUND } from '@ts-for-gir/lib'
|
|
7
|
+
import { GeneratorType } from '@ts-for-gir/generator-base'
|
|
7
8
|
import { GenerationHandler } from '../generation-handler.js'
|
|
8
9
|
import { Config } from '../config.js'
|
|
9
10
|
import { ModuleLoader } from '../module-loader.js'
|
|
10
|
-
|
|
11
|
-
import {
|
|
12
|
-
import { ERROR_NO_MODULES_FOUND } from '../messages.js'
|
|
11
|
+
|
|
12
|
+
import type { ConfigFlags } from '@ts-for-gir/lib'
|
|
13
13
|
|
|
14
14
|
const command = 'doc [modules..]'
|
|
15
15
|
|
|
16
16
|
const description = 'The HTML documentation generator is not yet implemented, but feel free to implement it 🤗'
|
|
17
17
|
|
|
18
18
|
const builder = (yargs: Argv) => {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
.option(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
.option('ignore', Config.generateOptions.ignore)
|
|
25
|
-
.option('verbose', Config.generateOptions.verbose)
|
|
26
|
-
.option('ignoreVersionConflicts', Config.generateOptions.ignoreVersionConflicts)
|
|
27
|
-
.option('configName', Config.generateOptions.configName)
|
|
28
|
-
.example(examples)
|
|
19
|
+
const optionNames = Object.keys(Config.docOptions)
|
|
20
|
+
for (const optionName of optionNames) {
|
|
21
|
+
yargs = yargs.option(optionName, Config.docOptions[optionName])
|
|
22
|
+
}
|
|
23
|
+
return yargs.example(examples)
|
|
29
24
|
}
|
|
30
25
|
|
|
31
26
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
package/src/commands/generate.ts
CHANGED
|
@@ -4,39 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
import { Argv } from 'yargs'
|
|
6
6
|
|
|
7
|
+
import { ERROR_NO_MODULES_FOUND, Logger } from '@ts-for-gir/lib'
|
|
8
|
+
import { GeneratorType } from '@ts-for-gir/generator-base'
|
|
7
9
|
import { GenerationHandler } from '../generation-handler.js'
|
|
8
10
|
import { Config } from '../config.js'
|
|
9
11
|
import { ModuleLoader } from '../module-loader.js'
|
|
10
|
-
|
|
11
|
-
import {
|
|
12
|
-
import { ERROR_NO_MODULES_FOUND } from '../messages.js'
|
|
12
|
+
|
|
13
|
+
import type { ConfigFlags } from '@ts-for-gir/lib'
|
|
13
14
|
|
|
14
15
|
const command = 'generate [modules..]'
|
|
15
16
|
|
|
16
|
-
const description = 'Generates .d.ts files from GIR for
|
|
17
|
+
const description = 'Generates .d.ts files from GIR for GJS or node-gtk'
|
|
17
18
|
|
|
18
19
|
const builder = (yargs: Argv) => {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
.option(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
.option('ignore', Config.generateOptions.ignore)
|
|
25
|
-
.option('buildType', Config.generateOptions.buildType)
|
|
26
|
-
.option('moduleType', Config.generateOptions.moduleType)
|
|
27
|
-
.option('pretty', Config.generateOptions.pretty)
|
|
28
|
-
.option('verbose', Config.generateOptions.verbose)
|
|
29
|
-
.option('ignoreVersionConflicts', Config.generateOptions.ignoreVersionConflicts)
|
|
30
|
-
.option('print', Config.generateOptions.print)
|
|
31
|
-
.option('configName', Config.generateOptions.configName)
|
|
32
|
-
.option('useNamespace', Config.generateOptions.useNamespace)
|
|
33
|
-
.option('noComments', Config.generateOptions.noComments)
|
|
34
|
-
.option('noDebugComments', Config.generateOptions.noDebugComments)
|
|
35
|
-
.option('noCheck', Config.generateOptions.noCheck)
|
|
36
|
-
.option('noDOMLib', Config.generateOptions.noDOMLib)
|
|
37
|
-
.option('fixConflicts', Config.generateOptions.fixConflicts)
|
|
38
|
-
.option('gnomeShellTypes', Config.generateOptions.gnomeShellTypes)
|
|
39
|
-
.example(examples)
|
|
20
|
+
const optionNames = Object.keys(Config.generateOptions)
|
|
21
|
+
for (const optionName of optionNames) {
|
|
22
|
+
yargs = yargs.option(optionName, Config.generateOptions[optionName])
|
|
23
|
+
}
|
|
24
|
+
return yargs.example(examples)
|
|
40
25
|
}
|
|
41
26
|
|
|
42
27
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
package/src/commands/list.ts
CHANGED
|
@@ -6,22 +6,20 @@ import { Argv } from 'yargs'
|
|
|
6
6
|
|
|
7
7
|
import { ModuleLoader } from '../module-loader.js'
|
|
8
8
|
import { Config } from '../config.js'
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
import {
|
|
9
|
+
import { Logger, ERROR_NO_MODULES_FOUND, ResolveType } from '@ts-for-gir/lib'
|
|
10
|
+
|
|
11
|
+
import type { ConfigFlags } from '@ts-for-gir/lib'
|
|
12
12
|
|
|
13
13
|
const command = 'list [modules..]'
|
|
14
14
|
|
|
15
15
|
const description = 'Lists all available GIR modules'
|
|
16
16
|
|
|
17
17
|
const builder = (yargs: Argv) => {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
.option(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
.option('configName', Config.listOptions.configName)
|
|
24
|
-
.example(examples)
|
|
18
|
+
const optionNames = Object.keys(Config.listOptions)
|
|
19
|
+
for (const optionName of optionNames) {
|
|
20
|
+
yargs = yargs.option(optionName, Config.listOptions[optionName])
|
|
21
|
+
}
|
|
22
|
+
return yargs.example(examples)
|
|
25
23
|
}
|
|
26
24
|
|
|
27
25
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|