@ts-for-gir/cli 3.0.0-beta.7 → 3.0.0-beta.9

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 (162) hide show
  1. package/README.md +318 -63
  2. package/lib/commands/generate.d.ts +5 -5
  3. package/lib/commands/generate.js +5 -5
  4. package/lib/commands/generate.js.map +1 -1
  5. package/lib/config.d.ts +7 -24
  6. package/lib/config.js +69 -50
  7. package/lib/config.js.map +1 -1
  8. package/lib/constants.d.ts +1 -1
  9. package/lib/constants.js +1 -1
  10. package/lib/constants.js.map +1 -1
  11. package/lib/dependency-manager.d.ts +34 -0
  12. package/lib/dependency-manager.js +78 -0
  13. package/lib/dependency-manager.js.map +1 -0
  14. package/lib/generation-handler.js +2 -2
  15. package/lib/generation-handler.js.map +1 -1
  16. package/lib/gir-module.d.ts +7 -6
  17. package/lib/gir-module.js +34 -23
  18. package/lib/gir-module.js.map +1 -1
  19. package/lib/messages.d.ts +4 -3
  20. package/lib/messages.js +4 -3
  21. package/lib/messages.js.map +1 -1
  22. package/lib/module-loader.d.ts +11 -8
  23. package/lib/module-loader.js +53 -50
  24. package/lib/module-loader.js.map +1 -1
  25. package/lib/symtable.d.ts +4 -4
  26. package/lib/symtable.js +1 -1
  27. package/lib/symtable.js.map +1 -1
  28. package/lib/template-processor.d.ts +37 -9
  29. package/lib/template-processor.js +79 -68
  30. package/lib/template-processor.js.map +1 -1
  31. package/lib/type-definition-generator.js +34 -26
  32. package/lib/type-definition-generator.js.map +1 -1
  33. package/lib/types/class-parent.d.ts +2 -0
  34. package/lib/types/dependency-map.d.ts +1 -1
  35. package/lib/types/dependency.d.ts +2 -1
  36. package/lib/types/file-info.d.ts +14 -0
  37. package/lib/types/file-info.js +2 -0
  38. package/lib/types/file-info.js.map +1 -0
  39. package/lib/types/generate-config.d.ts +6 -6
  40. package/lib/types/index.d.ts +1 -0
  41. package/lib/types/index.js +1 -0
  42. package/lib/types/index.js.map +1 -1
  43. package/lib/types/promisify-func.d.ts +5 -0
  44. package/lib/types/promisify-func.js +2 -0
  45. package/lib/types/promisify-func.js.map +1 -0
  46. package/lib/types/user-config.d.ts +6 -6
  47. package/lib/utils.d.ts +196 -7
  48. package/lib/utils.js +201 -19
  49. package/lib/utils.js.map +1 -1
  50. package/package.json +28 -14
  51. package/src/commands/generate.ts +5 -5
  52. package/src/config.ts +95 -68
  53. package/src/constants.ts +1 -1
  54. package/src/dependency-manager.ts +91 -0
  55. package/src/generation-handler.ts +2 -2
  56. package/src/gir-module.ts +43 -32
  57. package/src/messages.ts +4 -3
  58. package/src/module-loader.ts +59 -54
  59. package/src/symtable.ts +8 -6
  60. package/src/template-processor.ts +101 -72
  61. package/src/type-definition-generator.ts +36 -28
  62. package/src/types/class-parent.ts +2 -0
  63. package/src/types/dependency-map.ts +1 -1
  64. package/src/types/dependency.ts +3 -1
  65. package/src/types/file-info.ts +14 -0
  66. package/src/types/generate-config.ts +6 -6
  67. package/src/types/index.ts +1 -0
  68. package/src/types/user-config.ts +6 -6
  69. package/src/utils.ts +203 -20
  70. package/templates/Gjs/Gjs.d.ts +75 -8
  71. package/templates/Gjs/GnomeShell.d.ts +70 -36
  72. package/templates/Gjs/index.d.ts +9 -5
  73. package/templates/Gjs/misc/dbusUtils.d.ts +15 -0
  74. package/templates/Gjs/misc/dbusUtils.js +6 -0
  75. package/templates/Gjs/misc/fileUtils.d.ts +51 -0
  76. package/templates/Gjs/misc/fileUtils.js +6 -0
  77. package/templates/Gjs/misc/gnomeSession.d.ts +74 -0
  78. package/templates/Gjs/misc/gnomeSession.js +6 -0
  79. package/templates/Gjs/misc/parentalControlsManager.d.ts +42 -0
  80. package/templates/Gjs/misc/parentalControlsManager.js +6 -0
  81. package/templates/Gjs/misc/signals.d.ts +15 -0
  82. package/templates/Gjs/misc/signals.js +6 -0
  83. package/templates/Gjs/module.d.ts +0 -4
  84. package/templates/Gjs/module.js +1 -1
  85. package/templates/Gjs/tsconfig.alias.json +10 -0
  86. package/templates/Gjs/ui/accessDialog.d.ts +19 -0
  87. package/templates/Gjs/ui/accessDialog.js +6 -0
  88. package/templates/Gjs/ui/altTab.d.ts +124 -0
  89. package/templates/Gjs/ui/altTab.js +6 -0
  90. package/templates/Gjs/ui/animation.d.ts +58 -0
  91. package/templates/Gjs/ui/animation.js +6 -0
  92. package/templates/Gjs/ui/appDisplay.d.ts +204 -0
  93. package/templates/Gjs/ui/appDisplay.js +6 -0
  94. package/templates/Gjs/ui/appFavorites.d.ts +34 -0
  95. package/templates/Gjs/ui/appFavorites.js +6 -0
  96. package/templates/Gjs/ui/appMenu.d.ts +74 -0
  97. package/templates/Gjs/ui/appMenu.js +6 -0
  98. package/templates/Gjs/ui/audioDeviceSelection.d.ts +51 -0
  99. package/templates/Gjs/ui/audioDeviceSelection.js +6 -0
  100. package/templates/Gjs/ui/background.d.ts +255 -0
  101. package/templates/Gjs/ui/background.js +5 -0
  102. package/templates/Gjs/ui/backgroundMenu.d.ts +19 -0
  103. package/templates/Gjs/ui/backgroundMenu.js +5 -0
  104. package/templates/Gjs/ui/barLevel.d.ts +42 -0
  105. package/templates/Gjs/ui/barLevel.js +5 -0
  106. package/templates/Gjs/ui/boxpointer.d.ts +103 -0
  107. package/templates/Gjs/ui/boxpointer.js +5 -0
  108. package/templates/Gjs/ui/calendar.d.ts +261 -0
  109. package/templates/Gjs/ui/calendar.js +5 -0
  110. package/templates/Gjs/ui/components/__init__.d.ts +9 -0
  111. package/templates/Gjs/ui/components/__init__.js +6 -0
  112. package/templates/Gjs/ui/components/automountManager.d.ts +8 -0
  113. package/templates/Gjs/ui/components/automountManager.js +6 -0
  114. package/templates/Gjs/ui/components/autorunManager.d.ts +8 -0
  115. package/templates/Gjs/ui/components/autorunManager.js +6 -0
  116. package/templates/Gjs/ui/components/index.d.ts +6 -0
  117. package/templates/Gjs/ui/components/index.js +6 -0
  118. package/templates/Gjs/ui/components/keyring.d.ts +19 -0
  119. package/templates/Gjs/ui/components/keyring.js +6 -0
  120. package/templates/Gjs/ui/components/networkAgent.d.ts +10 -0
  121. package/templates/Gjs/ui/components/networkAgent.js +6 -0
  122. package/templates/Gjs/ui/components/polkitAgent.d.ts +19 -0
  123. package/templates/Gjs/ui/components/polkitAgent.js +6 -0
  124. package/templates/Gjs/ui/components/telepathyClient.d.ts +10 -0
  125. package/templates/Gjs/ui/components/telepathyClient.js +6 -0
  126. package/templates/Gjs/ui/dialog.d.ts +78 -0
  127. package/templates/Gjs/ui/dialog.js +0 -0
  128. package/templates/Gjs/ui/dnd.d.ts +127 -0
  129. package/templates/Gjs/ui/dnd.js +6 -0
  130. package/templates/Gjs/ui/iconGrid.d.ts +172 -0
  131. package/templates/Gjs/ui/iconGrid.js +6 -0
  132. package/templates/Gjs/ui/layout.d.ts +311 -0
  133. package/templates/Gjs/ui/layout.js +6 -0
  134. package/templates/Gjs/ui/main.d.ts +215 -0
  135. package/templates/Gjs/ui/main.js +6 -0
  136. package/templates/Gjs/ui/messageList.d.ts +113 -0
  137. package/templates/Gjs/ui/messageList.js +6 -0
  138. package/templates/Gjs/ui/messageTray.d.ts +423 -0
  139. package/templates/Gjs/ui/messageTray.js +6 -0
  140. package/templates/Gjs/ui/modalDialog.d.ts +96 -0
  141. package/templates/Gjs/ui/modalDialog.js +6 -0
  142. package/templates/Gjs/ui/mpris.d.ts +78 -0
  143. package/templates/Gjs/ui/mpris.js +6 -0
  144. package/templates/Gjs/ui/notificationDaemon.d.ts +5 -0
  145. package/templates/Gjs/ui/notificationDaemon.js +6 -0
  146. package/templates/Gjs/ui/panel.d.ts +65 -0
  147. package/templates/Gjs/ui/panel.js +6 -0
  148. package/templates/Gjs/ui/panelMenu.d.ts +51 -0
  149. package/templates/Gjs/ui/panelMenu.js +6 -0
  150. package/templates/Gjs/ui/popupMenu.d.ts +228 -0
  151. package/templates/Gjs/ui/popupMenu.js +6 -0
  152. package/templates/Gjs/ui/ripples.d.ts +44 -0
  153. package/templates/Gjs/ui/ripples.js +6 -0
  154. package/templates/Gjs/ui/search.d.ts +158 -0
  155. package/templates/Gjs/ui/search.js +6 -0
  156. package/templates/Gjs/ui/switcherPopup.d.ts +107 -0
  157. package/templates/Gjs/ui/switcherPopup.js +6 -0
  158. package/templates/Gjs/ui/userWidget.d.ts +13 -0
  159. package/templates/Gjs/ui/userWidget.js +6 -0
  160. package/templates/node-gtk/index.d.ts +3 -3
  161. package/templates/node-gtk/module.d.ts +0 -4
  162. package/templates/node-gtk/module.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"template-processor.js","sourceRoot":"","sources":["../src/template-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-processor.js","sourceRoot":"","sources":["../src/template-processor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACjE,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAEzD,MAAM,OAAO,iBAAiB;IAIH;IACA;IACA;IALb,sBAAsB,CAAQ;IAC9B,GAAG,CAAQ;IACrB,YACuB,IAA0B,EAC1B,WAAmB,EACnB,MAAsB;QAFtB,SAAI,GAAJ,IAAI,CAAsB;QAC1B,gBAAW,GAAX,WAAW,CAAQ;QACnB,WAAM,GAAN,MAAM,CAAgB;QAEzC,MAAM,GAAG,GAAG,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACjD,IAAI,CAAC,IAAI,GAAG;YACR,GAAG,IAAI,CAAC,IAAI;YACZ,QAAQ;YACR,SAAS;YACT,UAAU;YACV,GAAG;SACN,CAAA;QACD,IAAI,CAAC,sBAAsB,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACjF,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IAC/E,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,IAAI,CAAC,gBAAwB;QACtC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACrD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACzC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,CAAC,eAAuB,EAAE,aAAqB;QAC/D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QACvE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC1C,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;SAC7D;QACD,OAAO,YAAY,CAAA;IACvB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,MAAM,CACf,gBAAwB,EACxB,SAAiB,EACjB,cAAsB,EACtB,MAAM,GAAG,EAAE,EACX,UAAU,GAAG,IAAI;QAEjB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACrD,MAAM,IAAI,GAAG,WAAW,GAAG,MAAM,CAAA;QACjC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;IACf,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,SAAS,CAClB,aAAqB,EACrB,eAAuB,EACvB,SAAiB,EACjB,aAAqB,EACrB,MAAM,GAAG,EAAE;QAEX,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QACvE,MAAM,MAAM,GAA+B,EAAE,CAAA;QAC7C,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;YACzF,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;YAClD,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;SACpF;QAED,OAAO,MAAM,CAAA;IACjB,CAAC;IAES,KAAK,CAAC,KAAK,CACjB,OAAe,EACf,SAAiB,EACjB,cAAsB,EACtB,UAAU,GAAG,IAAI;QAEjB,MAAM,QAAQ,GAAG,UAAU;YACvB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC;YACjE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;QAE1C,6BAA6B;QAC7B,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACxD,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;QAEnE,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACpC,CAAC;IAES,KAAK,CAAC,MAAM,CAAC,cAAsB,EAAE,UAAgC,EAAE;QAC7E,IAAI;YACA,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,CAChC,cAAc,EACd;gBACI,GAAG,IAAI,CAAC,MAAM;gBACd,GAAG,IAAI,CAAC,IAAI;aACf,EACD;gBACI,KAAK,EAAE,IAAI;gBACX,GAAG,OAAO;aACb,CACJ,CAAA;YACD,OAAO,WAAW,CAAA;SACrB;QAAC,OAAO,KAAK,EAAE;YACZ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;YACxC,OAAO,EAAE,CAAA;SACZ;IACL,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,gBAAwB;QAClC,MAAM,2BAA2B,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QAC5F,MAAM,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAA;QACzE,IAAI,UAAU,CAAC,2BAA2B,CAAC,EAAE;YACzC,OAAO,2BAA2B,CAAA;SACrC;QACD,IAAI,UAAU,CAAC,uBAAuB,CAAC,EAAE;YACrC,OAAO,uBAAuB,CAAA;SACjC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,IAAI,CAAC,gBAAwB;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;QAC1C,IAAI,IAAI,EAAE;YACN,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;SACtC;QACD,MAAM,IAAI,KAAK,CAAC,aAAa,gBAAgB,cAAc,CAAC,CAAA;IAChE,CAAC;IAED;;;;;;;OAOG;IACO,KAAK,CAAC,OAAO,CAAC,eAAuB,EAAE,aAAqB;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;QACzC,IAAI,IAAI,EAAE;YACN,MAAM,KAAK,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAA;YAClF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,uBAAuB,eAAe,aAAa,CAAC,CAAA;aACvE;YACD,MAAM,OAAO,GAA+B,EAAE,CAAA;YAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACtB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;aAChE;YACD,OAAO,OAAO,CAAA;SACjB;QACD,MAAM,IAAI,KAAK,CAAC,uBAAuB,eAAe,cAAc,CAAC,CAAA;IACzE,CAAC;CACJ;AAED,eAAe,iBAAiB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import TemplateProcessor from './template-processor.js';
2
2
  import { Logger } from './logger.js';
3
- import { generateIndent, findFileInDirs, splitModuleName, removeNamespace, removeClassModule, girElementIsIntrospectable, typeIsOptional, } from './utils.js';
3
+ import { generateIndent, removeNamespace, removeClassModule, girElementIsIntrospectable, typeIsOptional, } from './utils.js';
4
4
  import { NO_TSDATA, WARN_NOT_FOUND_DEPENDENCY_GIR_FILE, WARN_IGNORE_MULTIPLE_CALLBACKS, WARN_IGNORE_MULTIPLE_FUNC_DESC, } from './messages.js';
5
5
  export default class TypeDefinitionGenerator {
6
6
  config;
@@ -17,7 +17,7 @@ export default class TypeDefinitionGenerator {
17
17
  */
18
18
  generateModuleDependenciesImport(namespace, packageName, asExternType = false) {
19
19
  const def = [];
20
- const sas = this.config.useNamespace && packageName !== 'Gjs' ? '' : '* as ';
20
+ const sas = !this.config.noNamespace && packageName !== 'Gjs' ? '' : '* as ';
21
21
  if (this.config.buildType === 'lib') {
22
22
  def.push(`import type ${sas}${namespace} from './${packageName}.js';`);
23
23
  }
@@ -34,7 +34,7 @@ export default class TypeDefinitionGenerator {
34
34
  return def;
35
35
  }
36
36
  generateExport(type, name, definition, indentCount = 0) {
37
- const exp = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
37
+ const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
38
38
  const indent = generateIndent(indentCount);
39
39
  if (!definition.startsWith(':')) {
40
40
  definition = ' ' + definition;
@@ -403,7 +403,7 @@ export default class TypeDefinitionGenerator {
403
403
  let exportStr = '';
404
404
  // `tsType === 'function'` are a global methods which can be exported
405
405
  if (isGlobal) {
406
- exportStr = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
406
+ exportStr = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
407
407
  }
408
408
  const returnType = this.generateFunctionReturn(tsFunction, namespace);
409
409
  let retSep = '';
@@ -511,7 +511,7 @@ export default class TypeDefinitionGenerator {
511
511
  desc.push(...this.addGirDocComment(tsConst.doc, indentCount));
512
512
  }
513
513
  const indent = generateIndent(indentCount);
514
- const exp = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
514
+ const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
515
515
  const varDesc = this.generateVariable(tsConst, namespace, 0);
516
516
  desc.push(`${indent}${exp}const ${varDesc}`);
517
517
  return desc;
@@ -526,7 +526,7 @@ export default class TypeDefinitionGenerator {
526
526
  return desc;
527
527
  }
528
528
  const indent = generateIndent(indentCount);
529
- const exp = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
529
+ const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
530
530
  const type = removeNamespace(girAlias._tsData.type, namespace);
531
531
  desc.push(`${indent}${exp}type ${girAlias._tsData.name} = ${type}`);
532
532
  return desc;
@@ -540,7 +540,7 @@ export default class TypeDefinitionGenerator {
540
540
  return def;
541
541
  }
542
542
  const indent = generateIndent(indentCount);
543
- const exp = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
543
+ const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
544
544
  let ext = '';
545
545
  if (girClass._tsData.inheritConstructPropInterfaceNames.length) {
546
546
  const constructPropInterfaceNames = girClass._tsData.inheritConstructPropInterfaceNames.map((n) => removeNamespace(n, namespace));
@@ -646,7 +646,7 @@ export default class TypeDefinitionGenerator {
646
646
  if (!girClass._tsData)
647
647
  return def;
648
648
  const indent = generateIndent(indentCount);
649
- const exp = this.config.useNamespace || this.config.buildType === 'types' ? '' : 'export ';
649
+ const exp = !this.config.noNamespace || this.config.buildType === 'types' ? '' : 'export ';
650
650
  // Signal interfaces
651
651
  bodyDef.push(...this.generateClassSignalInterfaces(girClass, namespace, indentCount + 1));
652
652
  // Properties interface for construction
@@ -762,23 +762,19 @@ export default class TypeDefinitionGenerator {
762
762
  const out = [];
763
763
  out.push(...this.addTSDocCommentLines([girModule.packageName]));
764
764
  out.push('');
765
- const deps = girModule.transitiveDependencies;
766
765
  // Module dependencies as type references or imports
767
766
  if (this.config.environment === 'gjs') {
768
767
  out.push(...this.generateModuleDependenciesImport('Gjs', 'Gjs', false));
769
768
  }
770
- for (const depPackageName of deps) {
769
+ for (const dependency of girModule.transitiveDependencies) {
771
770
  // Don't reference yourself as a dependency
772
- if (girModule.packageName !== depPackageName) {
773
- const girFilename = `${depPackageName}.gir`;
774
- const { namespace } = splitModuleName(depPackageName);
775
- const depFile = findFileInDirs(this.config.girDirectories, girFilename);
776
- if (depFile.exists) {
777
- out.push(...this.generateModuleDependenciesImport(namespace, depPackageName, false));
771
+ if (girModule.packageName !== dependency.packageName) {
772
+ if (dependency.exists) {
773
+ out.push(...this.generateModuleDependenciesImport(dependency.namespace, dependency.packageName, false));
778
774
  }
779
775
  else {
780
- out.push(`// WARN: Dependency not found: '${depPackageName}'`);
781
- this.log.warn(WARN_NOT_FOUND_DEPENDENCY_GIR_FILE(girFilename));
776
+ out.push(`// WARN: Dependency not found: '${dependency.packageName}'`);
777
+ this.log.warn(WARN_NOT_FOUND_DEPENDENCY_GIR_FILE(dependency.filename));
782
778
  }
783
779
  }
784
780
  }
@@ -788,7 +784,7 @@ export default class TypeDefinitionGenerator {
788
784
  out.push('');
789
785
  out.push(`declare namespace ${girModule.namespace} {`);
790
786
  }
791
- else if (this.config.useNamespace) {
787
+ else if (!this.config.noNamespace) {
792
788
  out.push('');
793
789
  out.push(`export namespace ${girModule.namespace} {`);
794
790
  }
@@ -913,10 +909,10 @@ export default class TypeDefinitionGenerator {
913
909
  }
914
910
  }
915
911
  // END Namespace
916
- if (this.config.useNamespace) {
912
+ if (!this.config.noNamespace) {
917
913
  out.push(`}`);
918
914
  }
919
- if (this.config.useNamespace) {
915
+ if (!this.config.noNamespace) {
920
916
  out.push(`export default ${girModule.namespace};`);
921
917
  }
922
918
  const outResult = out.join('\n'); // End of file
@@ -943,18 +939,30 @@ export default class TypeDefinitionGenerator {
943
939
  async exportGjs(girModules, girModulesGrouped) {
944
940
  if (!this.config.outdir)
945
941
  return;
946
- const templateProcessor = new TemplateProcessor({ girModules: girModules, girModulesGrouped }, 'gjs', this.config);
942
+ const templateProcessor = new TemplateProcessor({ girModules: girModules, girModulesGrouped, typeDir: this.config.outdir + '/Gjs' }, 'gjs', this.config);
947
943
  // Types
948
944
  await templateProcessor.create('Gjs.d.ts', this.config.outdir, 'Gjs.d.ts');
949
- await templateProcessor.create('GnomeShell.d.ts', this.config.outdir, 'GnomeShell.d.ts');
950
- await templateProcessor.create('misc/extensionUtils.d.ts', this.config.outdir, 'misc/extensionUtils.d.ts');
951
945
  await templateProcessor.create('index.d.ts', this.config.outdir, 'index.d.ts');
946
+ if (this.config.gnomeShellTypes) {
947
+ await templateProcessor.create('GnomeShell.d.ts', this.config.outdir, 'GnomeShell.d.ts');
948
+ await templateProcessor.createAll('.d.ts', 'misc', this.config.outdir, 'misc');
949
+ await templateProcessor.createAll('.d.ts', 'ui', this.config.outdir, 'ui');
950
+ await templateProcessor.createAll('.d.ts', 'ui/components', this.config.outdir, 'ui/components');
951
+ }
952
952
  // Lib
953
953
  if (this.config.buildType === 'lib') {
954
954
  await templateProcessor.create('Gjs.js', this.config.outdir, 'Gjs.js');
955
- await templateProcessor.create('GnomeShell.js', this.config.outdir, 'GnomeShell.js');
956
- await templateProcessor.create('misc/extensionUtils.js', this.config.outdir, 'misc/extensionUtils.js');
957
955
  await templateProcessor.create('index.js', this.config.outdir, 'index.js');
956
+ if (this.config.gnomeShellTypes) {
957
+ await templateProcessor.create('GnomeShell.js', this.config.outdir, 'GnomeShell.js');
958
+ await templateProcessor.createAll('.js', 'misc', this.config.outdir, 'misc');
959
+ await templateProcessor.createAll('.js', 'ui', this.config.outdir, 'ui');
960
+ await templateProcessor.createAll('.js', 'ui/components', this.config.outdir, 'ui/components');
961
+ }
962
+ }
963
+ // Alias
964
+ if (this.config.generateAlias) {
965
+ await templateProcessor.create('tsconfig.alias.json', './', 'tsconfig.alias.json', '', false);
958
966
  }
959
967
  }
960
968
  async exportNodeGtk(girModules, girModulesGrouped) {
@@ -1 +1 @@
1
- {"version":3,"file":"type-definition-generator.js","sourceRoot":"","sources":["../src/type-definition-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-definition-generator.js","sourceRoot":"","sources":["../src/type-definition-generator.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,6 @@ export interface ClassParent {
8
8
  /** Parent class / interface */
9
9
  cls?: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement;
10
10
  girTypeName: TypeGirClass;
11
+ /** True if the parent dependency exists */
12
+ dependencyExists: boolean;
11
13
  }
@@ -1,4 +1,4 @@
1
1
  import { Dependency } from './dependency';
2
2
  export interface DependencyMap {
3
- [name: string]: Dependency[];
3
+ [packageName: string]: Dependency[];
4
4
  }
@@ -1,4 +1,5 @@
1
- export interface Dependency {
1
+ import { FileInfo } from './file-info.js';
2
+ export interface Dependency extends FileInfo {
2
3
  /**
3
4
  * E.g. 'Gtk'
4
5
  */
@@ -0,0 +1,14 @@
1
+ export interface FileInfo {
2
+ /**
3
+ * The path to the gir file or null if the file does not exist
4
+ */
5
+ path: string | null;
6
+ /**
7
+ * The filename of the gir file
8
+ */
9
+ filename: string;
10
+ /**
11
+ * Whether the file exists or not
12
+ */
13
+ exists: boolean;
14
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=file-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-info.js","sourceRoot":"","sources":["../../src/types/file-info.ts"],"names":[],"mappings":""}
@@ -15,18 +15,18 @@ export interface GenerateConfig {
15
15
  girDirectories: string[];
16
16
  /** Switch on/off the verbose mode */
17
17
  verbose: boolean;
18
- /** prettifies the generated .d.ts files */
19
- pretty: boolean;
20
- /** Export all symbols for each module as a namespace */
21
- useNamespace: boolean;
18
+ /** Do not export all symbols for each module as a namespace */
19
+ noNamespace: boolean;
22
20
  /** Do not generate documentation comments */
23
21
  noComments: boolean;
24
22
  /** Do not generate debugging inline comments */
25
23
  noDebugComments: boolean;
26
- /** Disable typescript semantic checks using @ts-nocheck */
27
- noCheck: boolean;
28
24
  /** Fix Inheritance and implementation type conflicts */
29
25
  fixConflicts: boolean;
30
26
  /** Disables the generation of types that are in conflict with the DOM types */
31
27
  noDOMLib: boolean;
28
+ /** Generate types for GNOME Shell */
29
+ gnomeShellTypes: boolean;
30
+ /** Generate a tsconfig alias */
31
+ generateAlias: boolean;
32
32
  }
@@ -9,6 +9,7 @@ export * from './construct-name.js';
9
9
  export * from './dependency-map.js';
10
10
  export * from './dependency.js';
11
11
  export * from './environment.js';
12
+ export * from './file-info.js';
12
13
  export * from './generate-config.js';
13
14
  export * from './generator-type.js';
14
15
  export * from './gir-alias-element.js';
@@ -9,6 +9,7 @@ export * from './construct-name.js';
9
9
  export * from './dependency-map.js';
10
10
  export * from './dependency.js';
11
11
  export * from './environment.js';
12
+ export * from './file-info.js';
12
13
  export * from './generate-config.js';
13
14
  export * from './generator-type.js';
14
15
  export * from './gir-alias-element.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TsFunction } from './ts-function';
2
+ export interface PromisifyFunc {
3
+ async?: TsFunction;
4
+ finish?: TsFunction;
5
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=promisify-func.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promisify-func.js","sourceRoot":"","sources":["../../src/types/promisify-func.ts"],"names":[],"mappings":""}
@@ -19,22 +19,22 @@ export interface UserConfig {
19
19
  ignoreVersionConflicts: boolean;
20
20
  /** print the output to console and create no files */
21
21
  print: boolean;
22
- /** prettifies the generated .d.ts files */
23
- pretty: boolean;
24
22
  /** GIR modules to load, e.g. 'Gio-2.0'. Accepts multiple modules */
25
23
  modules: string[];
26
24
  /** modules that should be ignored */
27
25
  ignore?: string[];
28
- /** Export all symbols for each module as a namespace */
29
- useNamespace: boolean;
26
+ /** Do not export all symbols for each module as a namespace */
27
+ noNamespace: boolean;
30
28
  /** Do not generate documentation comments */
31
29
  noComments: boolean;
32
30
  /** Do not generate debugging inline comments */
33
31
  noDebugComments: boolean;
34
- /** Disable typescript semantic checks using @ts-nocheck */
35
- noCheck: boolean;
36
32
  /** Fix Inheritance and implementation type conflicts */
37
33
  fixConflicts: boolean;
38
34
  /** Disables the generation of types that are in conflict with the DOM types */
39
35
  noDOMLib: boolean;
36
+ /** Generate types for GNOME Shell */
37
+ gnomeShellTypes: boolean;
38
+ /** Generate a tsconfig alias */
39
+ generateAlias: boolean;
40
40
  }