diff --git a/.eslintignore b/.eslintignore index 19054844a..cf681b00c 100644 --- a/.eslintignore +++ b/.eslintignore @@ -12,3 +12,5 @@ examples/ @types/ *.js */*.js +# ignore local test as it is a separate typescript project +local/ \ No newline at end of file diff --git a/.gitignore b/.gitignore index c2a5f20e1..5d241b70f 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,8 @@ examples/**/@types/ # !@types/Gtk-2.0.d.ts # !@types/* +.vscode + index.ts.bak examples/**/node_modules/ diff --git a/.ts-for-gir.all.rc.js b/.ts-for-gir.all.rc.js index 829eb580e..b607f1a15 100644 --- a/.ts-for-gir.all.rc.js +++ b/.ts-for-gir.all.rc.js @@ -3,6 +3,7 @@ export default { girDirectories: ['./vala-girs/gir-1.0', './girs'], ignoreVersionConflicts: true, promisify: true, + packageYarn: true, ignore: [ 'Colorhug-1.0', // Duplicate of ColorHug-1.0 'GUPnP-DLNA-1.0', // Same namespace as GUPnP-1.0.gir, is this a bug or should we merge the type definitions? diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index 53bacab93..000000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - // Use IntelliSense to learn about possible Node.js debug attributes. - // Hover to view descriptions of existing attributes. - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "build:types:vda1", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.vda1.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true - }, - { - "name": "build:types:gtk2", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.gtk2.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true - }, - { - "name": "build:types:gtk3", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.gtk3.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true - }, - { - "name": "build:types:gtk4", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.gtk4.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true, - }, - { - "name": "build:types:gio", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.gio.rc.js", "--verbose", "--promisify", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true, - }, - { - "name": "build:types", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.all.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true, - }, - { - "name": "build:types:local", - "type": "node", - "request": "launch", - "cwd": "${workspaceRoot}/packages/cli", - "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", - "args": [ - "${workspaceRoot}/packages/cli/src/start.ts", "generate", "--configName=.ts-for-gir.all.rc.js", "--verbose", "--outdir", "../../../tmp" - ], - "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], - "sourceMaps": true, - } - ] -} diff --git a/examples/gjs/adw-1-hello/main.ts b/examples/gjs/adw-1-hello/main.ts index af3a8ba78..dfb78ceb6 100644 --- a/examples/gjs/adw-1-hello/main.ts +++ b/examples/gjs/adw-1-hello/main.ts @@ -3,11 +3,10 @@ * @see https://gitlab.gnome.org/GNOME/libadwaita/-/blob/main/examples/hello-world/hello.c */ -import '@girs/gjs'; -import Gio from '@girs/gio-2.0'; -import GLib from '@girs/glib-2.0'; -import Gtk from '@girs/gtk-4.0'; -import Adw from '@girs/adw-1'; +import Gio from 'gi://Gio'; +import GLib from 'gi://GLib'; +import Gtk from 'gi://Gtk'; +import Adw from 'gi://Adw'; const loop = GLib.MainLoop.new(null, false) diff --git a/examples/gjs/gio-2-cat/main.ts b/examples/gjs/gio-2-cat/main.ts index 1d0771a3d..5cb725c6a 100644 --- a/examples/gjs/gio-2-cat/main.ts +++ b/examples/gjs/gio-2-cat/main.ts @@ -1,3 +1,6 @@ +/// +/// + // SPDX-License-Identifier: MIT OR LGPL-2.0-or-later // SPDX-FileCopyrightText: 2009 Red Hat, Inc. // Based on https://gitlab.gnome.org/GNOME/gjs/-/blob/master/examples/gio-cat.js diff --git a/examples/gjs/gio-2-dbus/tsconfig.json b/examples/gjs/gio-2-dbus/tsconfig.json index 1d9c397f5..eb520d1d4 100644 --- a/examples/gjs/gio-2-dbus/tsconfig.json +++ b/examples/gjs/gio-2-dbus/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", diff --git a/examples/gjs/gio-2-list-model/tsconfig.json b/examples/gjs/gio-2-list-model/tsconfig.json index 37a61a26f..5e1539545 100644 --- a/examples/gjs/gio-2-list-model/tsconfig.json +++ b/examples/gjs/gio-2-list-model/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { - "lib": ["ESNext"], - "types": [], + "lib": ["ESNext"], + "types": ["@girs/gjs"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs"], "files": [ "main.ts", ] diff --git a/examples/gjs/glib-2-spawn-command/main.ts b/examples/gjs/glib-2-spawn-command/main.ts index a74407807..028892ab1 100644 --- a/examples/gjs/glib-2-spawn-command/main.ts +++ b/examples/gjs/glib-2-spawn-command/main.ts @@ -1,8 +1,5 @@ // Example based on https://gist.github.com/buzztaiki/1487781/74ea93d3a30f20c7f094327db9cb263a6286f6d6 -import '@girs/gjs'; -import '@girs/gjs/dom' - -import GLib from '@girs/glib-2.0'; +import GLib from 'gi://GLib'; const textDecoder = new TextDecoder(); let [_res, out, _err, _status] = GLib.spawn_command_line_sync('ls -la'); diff --git a/examples/gjs/glib-2-spawn-command/tsconfig.json b/examples/gjs/glib-2-spawn-command/tsconfig.json index 8f513cd41..233ab4be1 100644 --- a/examples/gjs/glib-2-spawn-command/tsconfig.json +++ b/examples/gjs/glib-2-spawn-command/tsconfig.json @@ -1,18 +1,17 @@ { - "compilerOptions": { - "lib": ["ESNext"], - "types": [], - "target": "ESNext", - "module": "ESNext", - "moduleResolution": "bundler", - "strict": true, - "noImplicitAny": true, - "strictNullChecks": true, - "noImplicitThis": true, - "alwaysStrict": true, - }, - "include": ["@girs/gjs", "@girs/gjs/dom", "@girs/gjs/ambient"], - "files": [ - "main.ts" - ] + "compilerOptions": { + "lib": ["ESNext"], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/glib-2.0", "@girs/gobject-2.0"], + "typeRoots": ["./@types"], + "target": "ESNext", + "module": "ESNext", + "moduleResolution": "Bundler", + "strict": true, + "noImplicitAny": false, + "strictNullChecks": true, + "noImplicitThis": true, + "alwaysStrict": true, + "skipLibCheck": false + }, + "files": ["main.ts"] } diff --git a/examples/gjs/glib-2-variant/tsconfig.json b/examples/gjs/glib-2-variant/tsconfig.json index ec6a15ebf..e8bb78972 100644 --- a/examples/gjs/glib-2-variant/tsconfig.json +++ b/examples/gjs/glib-2-variant/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/glib-2.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs"], "files": [ "index.ts" ] diff --git a/examples/gjs/gtk-3-browser/tsconfig.json b/examples/gjs/gtk-3-browser/tsconfig.json index c490cdc69..7e58d27de 100644 --- a/examples/gjs/gtk-3-browser/tsconfig.json +++ b/examples/gjs/gtk-3-browser/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/pango-1.0", "@girs/gtk-3.0", "@girs/webkit2-4.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "files": [ "main.ts" ] diff --git a/examples/gjs/gtk-3-builder/tsconfig.json b/examples/gjs/gtk-3-builder/tsconfig.json index fc8393f6f..d5ec92fef 100644 --- a/examples/gjs/gtk-3-builder/tsconfig.json +++ b/examples/gjs/gtk-3-builder/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "typeRoots": ["./@types"], + "types": ["@girs/gjs"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -10,8 +11,9 @@ "strictNullChecks": true, "noImplicitThis": true, "alwaysStrict": true, + "allowSyntheticDefaultImports": true, }, - "include": ["global.d.ts", "@girs/gjs", "@girs/gjs/ambient"], + "include": ["global.d.ts"], "files": [ "main.ts" ] diff --git a/examples/gjs/gtk-3-calc/tsconfig.json b/examples/gjs/gtk-3-calc/tsconfig.json index d6f56a4fc..daa563470 100644 --- a/examples/gjs/gtk-3-calc/tsconfig.json +++ b/examples/gjs/gtk-3-calc/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gtk-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-3-editor/tsconfig.json b/examples/gjs/gtk-3-editor/tsconfig.json index 81b59ad04..84ac922aa 100644 --- a/examples/gjs/gtk-3-editor/tsconfig.json +++ b/examples/gjs/gtk-3-editor/tsconfig.json @@ -1,7 +1,6 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -10,6 +9,7 @@ "strictNullChecks": true, "noImplicitThis": true, "alwaysStrict": true, + "allowSyntheticDefaultImports": true, }, "files": [ "main.ts" diff --git a/examples/gjs/gtk-3-gettext/tsconfig.json b/examples/gjs/gtk-3-gettext/tsconfig.json index d6f56a4fc..1942d1bc2 100644 --- a/examples/gjs/gtk-3-gettext/tsconfig.json +++ b/examples/gjs/gtk-3-gettext/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gtk-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-3-hello-2/main.ts b/examples/gjs/gtk-3-hello-2/main.ts index 150818b9d..28b151039 100644 --- a/examples/gjs/gtk-3-hello-2/main.ts +++ b/examples/gjs/gtk-3-hello-2/main.ts @@ -3,9 +3,6 @@ // SPDX-FileCopyrightText: 2008 litl, LLC // Based on https://gitlab.gnome.org/GNOME/gjs/-/blob/master/examples/gtk.js -import imports from '@girs/gjs'; -import '@girs/gtk-3.0' - // Include this in case both GTK3 and GTK4 installed, otherwise an exception // will be thrown imports.gi.versions.Gtk = '3.0'; diff --git a/examples/gjs/gtk-3-hello-2/tsconfig.json b/examples/gjs/gtk-3-hello-2/tsconfig.json index d6f56a4fc..1942d1bc2 100644 --- a/examples/gjs/gtk-3-hello-2/tsconfig.json +++ b/examples/gjs/gtk-3-hello-2/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gtk-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-3-hello/package.json b/examples/gjs/gtk-3-hello/package.json index d972ac4a2..042081b5c 100644 --- a/examples/gjs/gtk-3-hello/package.json +++ b/examples/gjs/gtk-3-hello/package.json @@ -4,6 +4,7 @@ "description": "", "main": "main.ts", "private": true, + "type": "module", "scripts": { "build": "yarn build:app", "build:app": "yarn clear:app && webpack --env production", diff --git a/examples/gjs/gtk-3-hello/tsconfig.json b/examples/gjs/gtk-3-hello/tsconfig.json index 81b59ad04..c3b2565c2 100644 --- a/examples/gjs/gtk-3-hello/tsconfig.json +++ b/examples/gjs/gtk-3-hello/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -10,6 +11,7 @@ "strictNullChecks": true, "noImplicitThis": true, "alwaysStrict": true, + "allowSyntheticDefaultImports": true, }, "files": [ "main.ts" diff --git a/examples/gjs/gtk-3-hello/webpack.config.js b/examples/gjs/gtk-3-hello/webpack.config.cjs similarity index 100% rename from examples/gjs/gtk-3-hello/webpack.config.js rename to examples/gjs/gtk-3-hello/webpack.config.cjs diff --git a/examples/gjs/gtk-3-template/tsconfig.json b/examples/gjs/gtk-3-template/tsconfig.json index d6f56a4fc..1942d1bc2 100644 --- a/examples/gjs/gtk-3-template/tsconfig.json +++ b/examples/gjs/gtk-3-template/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gtk-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-3-webkit/main.ts b/examples/gjs/gtk-3-webkit/main.ts index db8e9a442..7cbf19e91 100644 --- a/examples/gjs/gtk-3-webkit/main.ts +++ b/examples/gjs/gtk-3-webkit/main.ts @@ -3,9 +3,6 @@ // SPDX-FileCopyrightText: 2008 litl, LLC // Based on https://gitlab.gnome.org/GNOME/gjs/-/blob/master/examples/webkit.js -import '@girs/gjs'; -import '@girs/webkit2-4.0'; - import Gtk from 'gi://Gtk?version=3.0'; import WebKit from 'gi://WebKit2?version=4.0'; diff --git a/examples/gjs/gtk-3-webkit/tsconfig.json b/examples/gjs/gtk-3-webkit/tsconfig.json index d6f56a4fc..1942d1bc2 100644 --- a/examples/gjs/gtk-3-webkit/tsconfig.json +++ b/examples/gjs/gtk-3-webkit/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gtk-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-4-application/tsconfig.json b/examples/gjs/gtk-4-application/tsconfig.json index d6f56a4fc..3295e48a8 100644 --- a/examples/gjs/gtk-4-application/tsconfig.json +++ b/examples/gjs/gtk-4-application/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gtk-4.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-4-custom-widget/tsconfig.json b/examples/gjs/gtk-4-custom-widget/tsconfig.json index ffc4c66ea..8d8337cea 100644 --- a/examples/gjs/gtk-4-custom-widget/tsconfig.json +++ b/examples/gjs/gtk-4-custom-widget/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/gtk-4.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs", "@girs/gjs/dom"], "files": [ "index.ts" ] diff --git a/examples/gjs/gtk-4-list-store/main.ts b/examples/gjs/gtk-4-list-store/main.ts index 3133a546f..8b755210c 100644 --- a/examples/gjs/gtk-4-list-store/main.ts +++ b/examples/gjs/gtk-4-list-store/main.ts @@ -4,11 +4,6 @@ * @source https://github.com/optimisme/gjs-examples/blob/master/egList.js */ -import '@girs/gjs/dom'; -import '@girs/gio-2.0'; -import '@girs/gtk-4.0'; - -import imports from '@girs/gjs' import GObject from 'gi://GObject?version=2.0'; import GLib from 'gi://GLib?version=2.0'; import Gtk from 'gi://Gtk?version=4.0'; diff --git a/examples/gjs/gtk-4-list-store/tsconfig.json b/examples/gjs/gtk-4-list-store/tsconfig.json index 37a61a26f..cfe720a87 100644 --- a/examples/gjs/gtk-4-list-store/tsconfig.json +++ b/examples/gjs/gtk-4-list-store/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { - "lib": ["ESNext"], - "types": [], + "lib": ["ESNext"], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/gtk-4.0"], + "typeRoots": ["../../../types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs"], "files": [ "main.ts", ] diff --git a/examples/gjs/gtk-4-template/tsconfig.json b/examples/gjs/gtk-4-template/tsconfig.json index d6f56a4fc..3e59a59e8 100644 --- a/examples/gjs/gtk-4-template/tsconfig.json +++ b/examples/gjs/gtk-4-template/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/gtk-4.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "main.ts", ] diff --git a/examples/gjs/run-async/.gitignore b/examples/gjs/run-async/.gitignore deleted file mode 100644 index 1345bf22e..000000000 --- a/examples/gjs/run-async/.gitignore +++ /dev/null @@ -1,18 +0,0 @@ -# Yarn https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored -.pnp.* -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/sdks -!.yarn/versions - -!@types/ -@types/gio-2.0/* -!@types/gio-2.0/package.json -@types/gjs/* -!@types/gjs/package.json -@types/glib-2.0/* -!@types/glib-2.0/package.json -@types/gobject-2.0/* -!@types/gobject-2.0/package.json \ No newline at end of file diff --git a/examples/gjs/run-async/.ts-for-girrc.json b/examples/gjs/run-async/.ts-for-girrc.json new file mode 100644 index 000000000..2e9ed5ccb --- /dev/null +++ b/examples/gjs/run-async/.ts-for-girrc.json @@ -0,0 +1,6 @@ +{ + "modules": ["Gio-2.0"], + "noNamespace": false, + "outdir": "./@types/@girs", + "generateAlias": true +} \ No newline at end of file diff --git a/examples/gjs/run-async/@types/gio-2.0/package.json b/examples/gjs/run-async/@types/gio-2.0/package.json new file mode 100644 index 000000000..97c99130d --- /dev/null +++ b/examples/gjs/run-async/@types/gio-2.0/package.json @@ -0,0 +1,44 @@ +{ + "name": "@girs/gio-2.0", + "version": "2.78.0-4.0.0", + "description": "GJS TypeScript type definitions for Gio-2.0, generated from library version 2.78.0", + "type": "module", + "module": "gio-2.0.js", + "main": "gio-2.0.js", + "exports": { + "./ambient": { + "types": "./gio-2.0-ambient.d.ts", + "default": "./gio-2.0-ambient.js" + }, + "./import": { + "types": "./gio-2.0-import.d.ts", + "default": "./gio-2.0-import.js" + }, + ".": { + "types": "./gio-2.0.d.ts", + "default": "./gio-2.0.js" + } + }, + "scripts": { + "test": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit gio-2.0.d.ts" + }, + "dependencies": { + "@girs/gjs": "4.0.0" + }, + "devDependencies": { + "typescript": "*" + }, + "keywords": ["Gir", "TypeScript", "types", "GObject-Introspection", "GJS", "Gio-2.0"], + "author": "ts-for-gir", + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/gjsify/ts-for-gir.git" + }, + "bugs": { + "url": "https://github.com/gjsify/ts-for-gir/issues" + }, + "homepage": "https://github.com/gjsify/types/tree/main/gio-2.0#readme" +} + + diff --git a/examples/gjs/run-async/@types/glib-2.0/package.json b/examples/gjs/run-async/@types/glib-2.0/package.json new file mode 100644 index 000000000..e2383d7c8 --- /dev/null +++ b/examples/gjs/run-async/@types/glib-2.0/package.json @@ -0,0 +1,44 @@ +{ + "name": "@girs/glib-2.0", + "version": "2.78.0-4.0.0", + "description": "GJS TypeScript type definitions for GLib-2.0, generated from library version 2.78.0", + "type": "module", + "module": "glib-2.0.js", + "main": "glib-2.0.js", + "exports": { + "./ambient": { + "types": "./glib-2.0-ambient.d.ts", + "default": "./glib-2.0-ambient.js" + }, + "./import": { + "types": "./glib-2.0-import.d.ts", + "default": "./glib-2.0-import.js" + }, + ".": { + "types": "./glib-2.0.d.ts", + "default": "./glib-2.0.js" + } + }, + "scripts": { + "test": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit glib-2.0.d.ts" + }, + "dependencies": { + "@girs/gjs": "4.0.0" + }, + "devDependencies": { + "typescript": "*" + }, + "keywords": ["Gir", "TypeScript", "types", "GObject-Introspection", "GJS", "GLib-2.0"], + "author": "ts-for-gir", + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/gjsify/ts-for-gir.git" + }, + "bugs": { + "url": "https://github.com/gjsify/ts-for-gir/issues" + }, + "homepage": "https://github.com/gjsify/types/tree/main/glib-2.0#readme" +} + + diff --git a/examples/gjs/run-async/@types/gobject-2.0/package.json b/examples/gjs/run-async/@types/gobject-2.0/package.json new file mode 100644 index 000000000..045d8bea8 --- /dev/null +++ b/examples/gjs/run-async/@types/gobject-2.0/package.json @@ -0,0 +1,44 @@ +{ + "name": "@girs/gobject-2.0", + "version": "2.78.0-4.0.0", + "description": "GJS TypeScript type definitions for GObject-2.0, generated from library version 2.78.0", + "type": "module", + "module": "gobject-2.0.js", + "main": "gobject-2.0.js", + "exports": { + "./ambient": { + "types": "./gobject-2.0-ambient.d.ts", + "default": "./gobject-2.0-ambient.js" + }, + "./import": { + "types": "./gobject-2.0-import.d.ts", + "default": "./gobject-2.0-import.js" + }, + ".": { + "types": "./gobject-2.0.d.ts", + "default": "./gobject-2.0.js" + } + }, + "scripts": { + "test": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit gobject-2.0.d.ts" + }, + "dependencies": { + "@girs/gjs": "4.0.0" + }, + "devDependencies": { + "typescript": "*" + }, + "keywords": ["Gir", "TypeScript", "types", "GObject-Introspection", "GJS", "GObject-2.0"], + "author": "ts-for-gir", + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/gjsify/ts-for-gir.git" + }, + "bugs": { + "url": "https://github.com/gjsify/ts-for-gir/issues" + }, + "homepage": "https://github.com/gjsify/types/tree/main/gobject-2.0#readme" +} + + diff --git a/examples/gjs/run-async/main.ts b/examples/gjs/run-async/main.ts index 9c83b3512..fd88ca9f4 100644 --- a/examples/gjs/run-async/main.ts +++ b/examples/gjs/run-async/main.ts @@ -8,12 +8,6 @@ * the label should show a translation of 'Print help' */ -import '@girs/gjs'; -import '@girs/gjs/dom'; -import '@girs/gio-2.0'; -import '@girs/gtk-4.0'; -import '@girs/adw-1'; - // import Adw from "gi://Adw"; // import GLib from "gi://GLib"; import Gio from "gi://Gio"; @@ -29,7 +23,7 @@ import Gio from "gi://Gio"; const gioApp = new Gio.Application(); gioApp.runAsync(ARGV).then((exitStatus: number) => { log(`Exited with status: ${exitStatus}`); -}).catch((error) => { +}).catch((error: unknown) => { logError(error); }); diff --git a/examples/gjs/run-async/package.json b/examples/gjs/run-async/package.json index f21dea50d..544353a5a 100644 --- a/examples/gjs/run-async/package.json +++ b/examples/gjs/run-async/package.json @@ -8,7 +8,8 @@ "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build:app": "yarn node esbuild.js", - "build": "yarn build:app", + "build:types": "yarn ts-for-gir generate --configName=.ts-for-girrc.json", + "build": "yarn build:types && yarn build:app", "start:app": "gjs -m dist/main.js main.ts", "debug:app": "GTK_DEBUG=interactive yarn start:app", "start": "yarn clear && yarn build && yarn start:app", diff --git a/examples/gjs/run-async/tsconfig.json b/examples/gjs/run-async/tsconfig.json index 5b0645c8b..4209981f7 100644 --- a/examples/gjs/run-async/tsconfig.json +++ b/examples/gjs/run-async/tsconfig.json @@ -1,17 +1,16 @@ { + "extends": "./tsconfig.alias.json", "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gio-2.0"], + "typeRoots": [ + "./@types" + ], "target": "ESNext", "module": "ESNext", - "moduleResolution": "bundler", - "strict": true, + "moduleResolution": "node", "noImplicitAny": true, - "strictNullChecks": true, - "noImplicitThis": true, - "alwaysStrict": true, }, - "include": ["@girs/gjs", "@girs/gjs/ambient"], "files": [ "main.ts", ] diff --git a/examples/gjs/soup-3-http/tsconfig.json b/examples/gjs/soup-3-http/tsconfig.json index e29796571..5a64362ca 100644 --- a/examples/gjs/soup-3-http/tsconfig.json +++ b/examples/gjs/soup-3-http/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/soup-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs", "@girs/gjs/dom"], "files": [ "http-client.ts", "http-server.ts" diff --git a/examples/gjs/soup-3-websocket/client.ts b/examples/gjs/soup-3-websocket/client.ts index a6f8aa4d2..defc57374 100644 --- a/examples/gjs/soup-3-websocket/client.ts +++ b/examples/gjs/soup-3-websocket/client.ts @@ -7,10 +7,6 @@ // Based on https://gitlab.gnome.org/GNOME/gjs/-/blob/master/examples/websocket-client.js -import '@girs/gjs'; -import '@girs/gjs/dom'; -import '@girs/soup-3.0'; - import GLib from 'gi://GLib?version=2.0'; import Soup from 'gi://Soup?version=3.0'; import Gio from 'gi://Gio?version=2.0'; diff --git a/examples/gjs/soup-3-websocket/tsconfig.json b/examples/gjs/soup-3-websocket/tsconfig.json index 28b0e03f9..fe119728e 100644 --- a/examples/gjs/soup-3-websocket/tsconfig.json +++ b/examples/gjs/soup-3-websocket/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gjs/dom", "@girs/soup-3.0"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": [], "files": [ "client.ts", ] diff --git a/examples/gjs/timers/tsconfig.json b/examples/gjs/timers/tsconfig.json index 1b567d15b..9faf5a5ab 100644 --- a/examples/gjs/timers/tsconfig.json +++ b/examples/gjs/timers/tsconfig.json @@ -1,7 +1,8 @@ { "compilerOptions": { "lib": ["ESNext"], - "types": [], + "types": ["@girs/gjs", "@girs/gjs/dom"], + "typeRoots": ["./@types"], "target": "ESNext", "module": "ESNext", "moduleResolution": "bundler", @@ -11,7 +12,6 @@ "noImplicitThis": true, "alwaysStrict": true, }, - "include": ["@girs/gjs", "@girs/gjs/dom"], "files": [ "main.ts", ] diff --git a/local/.gitignore b/local/.gitignore new file mode 100644 index 000000000..cd11ad1b0 --- /dev/null +++ b/local/.gitignore @@ -0,0 +1,9 @@ +@girs + +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/sdks +!.yarn/versions diff --git a/local/.yarnrc.yml b/local/.yarnrc.yml new file mode 100644 index 000000000..8b757b29a --- /dev/null +++ b/local/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules \ No newline at end of file diff --git a/local/all.ts b/local/all.ts new file mode 100644 index 000000000..45d95e9f8 --- /dev/null +++ b/local/all.ts @@ -0,0 +1,423 @@ +import '@girs/accounts-1.0' +import '@girs/accountsservice-1.0' +import '@girs/adw-1' +import '@girs/amtk-4' +import '@girs/amtk-5' +import '@girs/anjuta-3.0' +import '@girs/anthy-9000' +import '@girs/appindicator3-0.1' +import '@girs/appstream-1.0' +import '@girs/appstreambuilder-1.0' +import '@girs/appstreamglib-1.0' +import '@girs/arrow-1.0' +import '@girs/arrowcuda-1.0' +import '@girs/arrowdataset-1.0' +import '@girs/arrowflight-1.0' +import '@girs/atk-1.0' +import '@girs/atspi-2.0' +import '@girs/babl-0.1' +import '@girs/bamf-3' +import '@girs/builder-1.0' +import '@girs/bump-0.1' +import '@girs/cairo-1.0' +import '@girs/cally-1.0' +import '@girs/cally-10' +import '@girs/cally-11' +import '@girs/cally-12' +import '@girs/cally-13' +import '@girs/camel-1.2' +import '@girs/caribou-1.0' +import '@girs/champlain-0.12' +import '@girs/cheese-3.0' +import '@girs/cloudproviders-0.3' +import '@girs/clutter-1.0' +import '@girs/clutter-10' +import '@girs/clutter-11' +import '@girs/clutter-12' +import '@girs/clutter-13' +import '@girs/cluttergdk-1.0' +import '@girs/cluttergst-2.0' +import '@girs/cluttergst-3.0' +import '@girs/clutterx11-1.0' +import '@girs/cogl-1.0' +import '@girs/cogl-2.0' +import '@girs/cogl-10' +import '@girs/cogl-11' +import '@girs/cogl-12' +import '@girs/cogl-13' +import '@girs/coglgst-2.0' +import '@girs/coglpango-1.0' +import '@girs/coglpango-2.0' +import '@girs/coglpango-10' +import '@girs/coglpango-11' +import '@girs/coglpango-12' +import '@girs/coglpango-13' +import '@girs/colord-1.0' +import '@girs/colordgtk-1.0' +import '@girs/colorhug-1.0' +import '@girs/dazzle-1.0' +import '@girs/dbus-1.0' +import '@girs/dbusglib-1.0' +import '@girs/dbusmenu-0.4' +import '@girs/dbusmenugtk-0.4' +import '@girs/dbusmenugtk3-0.4' +import '@girs/dee-1.0' +import '@girs/devhelp-3.0' +import '@girs/dex-1' +import '@girs/dmap-3.0' +import '@girs/ebackend-1.2' +import '@girs/ebook-1.2' +import '@girs/ebookcontacts-1.2' +import '@girs/ecal-2.0' +import '@girs/ecalendar-1.2' +import '@girs/edatabook-1.2' +import '@girs/edatacal-2.0' +import '@girs/edataserver-1.2' +import '@girs/edataserverui-1.2' +import '@girs/edataserverui4-1.0' +import '@girs/egg-1.0' +import '@girs/eog-3.0' +import '@girs/epc-1.0' +import '@girs/epcui-1.0' +import '@girs/evincedocument-3.0' +import '@girs/evinceview-3.0' +import '@girs/farstream-0.1' +import '@girs/farstream-0.2' +import '@girs/flatpak-1.0' +import '@girs/folks-0.6' +import '@girs/folks-0.7' +import '@girs/folksdummy-0.6' +import '@girs/folksdummy-0.7' +import '@girs/folkseds-0.6' +import '@girs/folkseds-0.7' +import '@girs/folkslibsocialweb-0.6' +import '@girs/folkstelepathy-0.6' +import '@girs/folkstelepathy-0.7' +import '@girs/fontconfig-2.0' +import '@girs/freetype2-2.0' +import '@girs/fwupd-2.0' +import '@girs/gandiva-1.0' +import '@girs/gcab-1.0' +import '@girs/gcalc-1' +import '@girs/gcalc-2' +import '@girs/gck-1' +import '@girs/gck-2' +import '@girs/gconf-2.0' +import '@girs/gcr-3' +import '@girs/gcr-4' +import '@girs/gcrgtk3-4' +import '@girs/gcrgtk4-4' +import '@girs/gcrui-3' +import '@girs/gd-1.0' +import '@girs/gda-5.0' +import '@girs/gda-6.0' +import '@girs/gdata-0.0' +import '@girs/gdaui-5.0' +import '@girs/gdaui-6.0' +import '@girs/gdesktopenums-3.0' +import '@girs/gdk-2.0' +import '@girs/gdk-3.0' +import '@girs/gdk-4.0' +import '@girs/gdkpixbuf-2.0' +import '@girs/gdkpixdata-2.0' +import '@girs/gdkwayland-4.0' +import '@girs/gdkx11-2.0' +import '@girs/gdkx11-3.0' +import '@girs/gdkx11-4.0' +import '@girs/gdl-3' +import '@girs/gdm-1.0' +import '@girs/gedit-3.0' +import '@girs/gee-0.8' +import '@girs/gee-1.0' +import '@girs/gegl-0.3' +import '@girs/gegl-0.4' +import '@girs/geglgtk3-0.1' +import '@girs/geoclue-2.0' +import '@girs/geocodeglib-1.0' +import '@girs/geocodeglib-2.0' +import '@girs/gepub-0.5' +import '@girs/ges-1.0' +import '@girs/gexiv2-0.10' +import '@girs/gfbgraph-0.2' +import '@girs/gfbgraph-0.3' +import '@girs/ggit-1.0' +import '@girs/gio-2.0' +import '@girs/girepository-2.0' +import '@girs/gitg-1.0' +import '@girs/gitgext-1.0' +import '@girs/gjs' +import '@girs/gjsdbus-1.0' +import '@girs/gkbd-3.0' +import '@girs/gl-1.0' +import '@girs/gladeui-2.0' +import '@girs/glib-2.0' +import '@girs/gmenu-3.0' +import '@girs/gmime-3.0' +import '@girs/gmodule-2.0' +import '@girs/gnomeautoar-0.1' +import '@girs/gnomeautoargtk-0.1' +import '@girs/gnomebg-4.0' +import '@girs/gnomebluetooth-1.0' +import '@girs/gnomebluetooth-3.0' +import '@girs/gnomedesktop-3.0' +import '@girs/gnomedesktop-4.0' +import '@girs/gnomekeyring-1.0' +import '@girs/gnomemaps-1.0' +import '@girs/gnomerr-4.0' +import '@girs/goa-1.0' +import '@girs/gobject-2.0' +import '@girs/goocanvas-2.0' +import '@girs/goocanvas-3.0' +import '@girs/govirt-1.0' +import '@girs/gpseq-1.0' +import '@girs/granite-1.0' +import '@girs/granite-7.0' +import '@girs/graphene-1.0' +import '@girs/grl-0.1' +import '@girs/grl-0.2' +import '@girs/grl-0.3' +import '@girs/grlnet-0.1' +import '@girs/grlnet-0.2' +import '@girs/grlnet-0.3' +import '@girs/grlpls-0.2' +import '@girs/grlpls-0.3' +import '@girs/grss-0.7' +import '@girs/gsf-1' +import '@girs/gsignon-1.0' +import '@girs/gsignond-1.0' +import '@girs/gsk-4.0' +import '@girs/gsound-1.0' +import '@girs/gspell-1' +import '@girs/gssdp-1.0' +import '@girs/gssdp-1.2' +import '@girs/gssdp-1.6' +import '@girs/gst-0.10' +import '@girs/gst-1.0' +import '@girs/gstallocators-1.0' +import '@girs/gstapp-1.0' +import '@girs/gstaudio-1.0' +import '@girs/gstbadallocators-1.0' +import '@girs/gstbadaudio-1.0' +import '@girs/gstbase-0.10' +import '@girs/gstbase-1.0' +import '@girs/gstcheck-1.0' +import '@girs/gstcodecs-1.0' +import '@girs/gstcontroller-1.0' +import '@girs/gstfft-1.0' +import '@girs/gstgl-1.0' +import '@girs/gstglegl-1.0' +import '@girs/gstglwayland-1.0' +import '@girs/gstglx11-1.0' +import '@girs/gstinsertbin-1.0' +import '@girs/gstinterfaces-0.10' +import '@girs/gstmpegts-1.0' +import '@girs/gstnet-1.0' +import '@girs/gstpbutils-0.10' +import '@girs/gstpbutils-1.0' +import '@girs/gstplay-1.0' +import '@girs/gstplayer-1.0' +import '@girs/gstriff-1.0' +import '@girs/gstrtp-1.0' +import '@girs/gstrtsp-1.0' +import '@girs/gstrtspserver-1.0' +import '@girs/gstsdp-1.0' +import '@girs/gsttag-0.10' +import '@girs/gsttag-1.0' +import '@girs/gsttranscoder-1.0' +import '@girs/gstvideo-0.10' +import '@girs/gstvideo-1.0' +import '@girs/gstvulkan-1.0' +import '@girs/gstwebrtc-1.0' +import '@girs/gsystem-1.0' +import '@girs/gtef-2' +import '@girs/gtk-2.0' +import '@girs/gtk-3.0' +import '@girs/gtk-4.0' +import '@girs/gtkchamplain-0.12' +import '@girs/gtkclutter-1.0' +import '@girs/gtksource-3.0' +import '@girs/gtksource-4' +import '@girs/gtksource-5' +import '@girs/gtkvnc-2.0' +import '@girs/gtop-2.0' +import '@girs/gucharmap-2.90' +import '@girs/gudev-1.0' +import '@girs/guestfs-1.0' +import '@girs/gupnp-1.0' +import '@girs/gupnp-1.2' +import '@girs/gupnp-1.6' +import '@girs/gupnpav-1.0' +import '@girs/gupnpdlna-1.0' +import '@girs/gupnpdlna-2.0' +import '@girs/gupnpdlnagst-2.0' +import '@girs/gupnpigd-1.0' +import '@girs/gusb-1.0' +import '@girs/gvc-1.0' +import '@girs/gvnc-1.0' +import '@girs/gvncpulse-1.0' +import '@girs/gweather-3.0' +import '@girs/gweather-4.0' +import '@girs/gxml-0.14' +import '@girs/gxml-0.16' +import '@girs/gxml-0.18' +import '@girs/gxml-0.20' +import '@girs/gxps-0.1' +import '@girs/gxps-1.0' +import '@girs/handy-0.0' +import '@girs/handy-1' +import '@girs/harfbuzz-0.0' +import '@girs/ianjuta-3.0' +import '@girs/ibus-1.0' +import '@girs/ical-3.0' +import '@girs/icalglib-3.0' +import '@girs/ide-1.0' +import '@girs/javascriptcore-4.0' +import '@girs/javascriptcore-4.1' +import '@girs/javascriptcore-5.0' +import '@girs/javascriptcore-6.0' +import '@girs/jscore-3.0' +import '@girs/json-1.0' +import '@girs/jsonrpc-1.0' +import '@girs/libmsi-1.0' +import '@girs/libosinfo-1.0' +import '@girs/libvirtgconfig-1.0' +import '@girs/libvirtglib-1.0' +import '@girs/libvirtgobject-1.0' +import '@girs/libxml2-2.0' +import '@girs/manette-0.2' +import '@girs/mash-0.2' +import '@girs/mbim-1.0' +import '@girs/mediaart-1.0' +import '@girs/mediaart-2.0' +import '@girs/meta-10' +import '@girs/meta-11' +import '@girs/meta-12' +import '@girs/meta-13' +import '@girs/metatest-12' +import '@girs/metatest-13' +import '@girs/modemmanager-1.0' +import '@girs/mtk-13' +import '@girs/mx-1.0' +import '@girs/mx-2.0' +import '@girs/mxgtk-1.0' +import '@girs/nautilus-3.0' +import '@girs/networkmanager-1.0' +import '@girs/nice-0.1' +import '@girs/nm-1.0' +import '@girs/nma-1.0' +import '@girs/nmclient-1.0' +import '@girs/nmgtk-1.0' +import '@girs/notify-0.7' +import '@girs/ostree-1.0' +import '@girs/p11kit-1.0' +import '@girs/packagekitglib-1.0' +import '@girs/packagekitplugin-1.0' +import '@girs/panelapplet-4.0' +import '@girs/pango-1.0' +import '@girs/pangocairo-1.0' +import '@girs/pangofc-1.0' +import '@girs/pangoft2-1.0' +import '@girs/pangoot-1.0' +import '@girs/pangoxft-1.0' +import '@girs/parquet-1.0' +import '@girs/peas-1.0' +import '@girs/peas-2' +import '@girs/peasgtk-1.0' +import '@girs/plasma-1.0' +import '@girs/pnl-1.0' +import '@girs/polkit-1.0' +import '@girs/polkitagent-1.0' +import '@girs/poppler-0.18' +import '@girs/qmi-1.0' +import '@girs/qrtr-1.0' +import '@girs/rest-0.7' +import '@girs/rest-1.0' +import '@girs/restextras-0.7' +import '@girs/restextras-1.0' +import '@girs/retro-0.14' +import '@girs/retro-1' +import '@girs/retro-2' +import '@girs/rsvg-2.0' +import '@girs/rygelcore-2.6' +import '@girs/rygelcore-2.8' +import '@girs/rygelrenderer-2.6' +import '@girs/rygelrenderer-2.8' +import '@girs/rygelrenderergst-2.6' +import '@girs/rygelrenderergst-2.8' +import '@girs/rygelserver-2.6' +import '@girs/rygelserver-2.8' +import '@girs/secret-1' +import '@girs/secretunstable-0' +import '@girs/shell-0.1' +import '@girs/shell-12' +import '@girs/shell-13' +import '@girs/shew-0' +import '@girs/shumate-1.0' +import '@girs/signon-2.0' +import '@girs/snapd-1' +import '@girs/socialwebclient-0.25' +import '@girs/soup-2.4' +import '@girs/soup-3.0' +import '@girs/soupgnome-2.4' +import '@girs/spiceclientglib-2.0' +import '@girs/spiceclientgtk-3.0' +import '@girs/st-1.0' +import '@girs/st-12' +import '@girs/st-13' +import '@girs/sushi-1.0' +import '@girs/telepathyfarstream-0.6' +import '@girs/telepathyglib-0.12' +import '@girs/telepathylogger-0.2' +import '@girs/template-1.0' +import '@girs/tepl-4' +import '@girs/tepl-5' +import '@girs/tepl-6' +import '@girs/timezonemap-1.0' +import '@girs/totem-1.0' +import '@girs/totemplparser-1.0' +import '@girs/tracker-1.0' +import '@girs/tracker-2.0' +import '@girs/tracker-3.0' +import '@girs/trackercontrol-1.0' +import '@girs/trackercontrol-2.0' +import '@girs/trackerminer-1.0' +import '@girs/trackerminer-2.0' +import '@girs/udisks-2.0' +import '@girs/uhm-0.0' +import '@girs/unique-3.0' +import '@girs/unity-6.0' +import '@girs/unity-7.0' +import '@girs/unityextras-7.0' +import '@girs/upowerglib-1.0' +import '@girs/vda-1' +import '@girs/vgda-1' +import '@girs/vgpg-1' +import '@girs/vgsl-1' +import '@girs/vips-8.0' +import '@girs/vpg-1' +import '@girs/vsqlite-1' +import '@girs/vte-2.91' +import '@girs/vte-3.91' +import '@girs/vte-4-2.91' +import '@girs/vulkan-1.0' +import '@girs/webkit-6.0' +import '@girs/webkit2-4.0' +import '@girs/webkit2-4.1' +import '@girs/webkit2-5.0' +import '@girs/webkit2webextension-4.0' +import '@girs/webkit2webextension-4.1' +import '@girs/webkit2webextension-5.0' +import '@girs/webkitwebextension-6.0' +import '@girs/webkitwebprocessextension-6.0' +import '@girs/win32-1.0' +import '@girs/wnck-3.0' +import '@girs/xdp-1.0' +import '@girs/xdpgtk3-1.0' +import '@girs/xdpgtk4-1.0' +import '@girs/xfixes-4.0' +import '@girs/xft-2.0' +import '@girs/xkl-1.0' +import '@girs/xlib-2.0' +import '@girs/xrandr-1.3' +import '@girs/zeitgeist-2.0' +import '@girs/zpj-0.0' diff --git a/local/package.json b/local/package.json new file mode 100644 index 000000000..f68e02ef2 --- /dev/null +++ b/local/package.json @@ -0,0 +1,9 @@ +{ + "private": true, + "devDependencies": { + "typescript": "^5.2.2" + }, + "scripts": { + "validate:types": "tsc --project tsconfig.json" + } +} diff --git a/local/tsconfig.json b/local/tsconfig.json new file mode 100644 index 000000000..7ccbab9b0 --- /dev/null +++ b/local/tsconfig.json @@ -0,0 +1,18 @@ +{ + "compilerOptions": { + "lib": ["ESNext"], + "types": [], + "moduleResolution": "Bundler", + "module": "ESNext", + "strict": true, + "noEmit": true, + "noImplicitAny": true, + "strictNullChecks": true, + "noImplicitThis": true, + "alwaysStrict": true, + "skipLibCheck": false, + }, + "files": ["all.ts"], + "exclude": [] + } + \ No newline at end of file diff --git a/local/yarn.lock b/local/yarn.lock new file mode 100644 index 000000000..4ad27cba5 --- /dev/null +++ b/local/yarn.lock @@ -0,0 +1,34 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 8 + cacheKey: 10 + +"root-workspace-0b6124@workspace:.": + version: 0.0.0-use.local + resolution: "root-workspace-0b6124@workspace:." + dependencies: + typescript: "npm:^5.2.2" + languageName: unknown + linkType: soft + +"typescript@npm:^5.2.2": + version: 5.4.2 + resolution: "typescript@npm:5.4.2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10/f8cfdc630ab1672f004e9561eb2916935b2d267792d07ce93e97fc601c7a65191af32033d5e9c0169b7dc37da7db9bf320f7432bc84527cb7697effaa4e4559d + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A^5.2.2#optional!builtin": + version: 5.4.2 + resolution: "typescript@patch:typescript@npm%3A5.4.2#optional!builtin::version=5.4.2&hash=d69c25" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10/ef4fc2994cc0219dc9ada94c92106ba8d44cbfd7a0328ed6f8d730311caf66e114cdfa07fbc6f369bfc0fc182d9493851b3bf1644c06fc5818690b19ee960d72 + languageName: node + linkType: hard diff --git a/packages/cli/src/commands/doc.ts b/packages/cli/src/commands/doc.ts index 8e84a18bf..c8cddb38b 100644 --- a/packages/cli/src/commands/doc.ts +++ b/packages/cli/src/commands/doc.ts @@ -39,7 +39,7 @@ const handler = async (args: ConfigFlags) => { return Logger.error(ERROR_NO_MODULES_FOUND(config.girDirectories)) } const tsForGir = new GenerationHandler(generateConfig, GeneratorType.HTML_DOC) - const registry = moduleLoader.dependencyManager.registry + const registry = moduleLoader.dependencyManager await tsForGir.start( Array.from(keep).map((girModuleResolvedBy) => girModuleResolvedBy.module), diff --git a/packages/cli/src/commands/generate.ts b/packages/cli/src/commands/generate.ts index 3c073c4c9..936c147c6 100644 --- a/packages/cli/src/commands/generate.ts +++ b/packages/cli/src/commands/generate.ts @@ -37,16 +37,17 @@ const handler = async (args: ConfigFlags) => { config.ignore || [], config.ignoreVersionConflicts, ) + if (keep.length === 0) { return Logger.error(ERROR_NO_MODULES_FOUND(config.girDirectories)) } + const tsForGir = new GenerationHandler(generateConfig, GeneratorType.TYPES) const girModules = Array.from(keep).map((girModuleResolvedBy) => girModuleResolvedBy.module) - // const girModulesGrouped = Object.values(grouped) - moduleLoader.dependencyManager.registry.registerFormatter('dts', new TypeScriptFormatter()) - await tsForGir.start(girModules, moduleLoader.dependencyManager.registry) + moduleLoader.dependencyManager.registerFormatter('dts', new TypeScriptFormatter()) + await tsForGir.start(girModules, moduleLoader.dependencyManager) } const examples: ReadonlyArray<[string, string?]> = [ diff --git a/packages/cli/src/generation-handler.ts b/packages/cli/src/generation-handler.ts index 4617c2277..ac806cfec 100644 --- a/packages/cli/src/generation-handler.ts +++ b/packages/cli/src/generation-handler.ts @@ -57,10 +57,8 @@ export class GenerationHandler { verbose: this.config.verbose, }) - console.debug('start...') await this.generator.start(registry) - console.debug('generate...') for (const girModule of girModules) { this.log.log(` - ${girModule.packageName} ...`) girModule.start(girModules) @@ -68,7 +66,6 @@ export class GenerationHandler { await this.generator.generate(registry, girModule) } - console.debug('finish...') await this.generator.finish(registry) this.log.success(GENERATING_TYPES_DONE) diff --git a/packages/cli/src/module-loader.ts b/packages/cli/src/module-loader.ts index c0ab1a04d..4bbfe2e8b 100644 --- a/packages/cli/src/module-loader.ts +++ b/packages/cli/src/module-loader.ts @@ -386,7 +386,7 @@ export class ModuleLoader { this.log.log(`Parsing ${dependency.path}...`) const fileContents = await readFile(dependency.path, 'utf8') const result = parser.parseGir(fileContents) - const girModule = GirModule.load(result, this.config, this.dependencyManager.registry) + const girModule = GirModule.load(result, this.config, this.dependencyManager) // Figure out transitive module dependencies this.extendDependencyMapByGirModule(girModule) return girModule @@ -548,9 +548,25 @@ export class ModuleLoader { ignore: string[] = [], doNotAskForVersionOnConflict = true, ): Promise<{ keep: GirModuleResolvedBy[]; grouped: GirModulesGroupedMap; ignore: string[]; failed: Set }> { - const foundPackageNames = await this.findPackageNames(packageNames, ignore) + const foundPackageNames = await this.findPackageNames([...packageNames], ignore) + // Always require these because GJS does... + const GLib = this.dependencyManager.get('GLib', '2.0') + const Gio = this.dependencyManager.get('Gio', '2.0') + const GObject = this.dependencyManager.get('GObject', '2.0') + const dependencies = this.packageNamesToDependencies(foundPackageNames) - const { loaded, failed } = await this.loadGirModules(dependencies, ignore) + + const { loaded, failed } = await this.loadGirModules( + [ + GLib, + Gio, + GObject, + ...dependencies.filter( + (dep) => dep.namespace !== 'GLib' && dep.namespace !== 'Gio' && dep.namespace !== 'GObject', + ), + ], + ignore, + ) let keep: GirModuleResolvedBy[] = [] if (doNotAskForVersionOnConflict) { keep = loaded diff --git a/packages/generator-typescript/src/type-definition-generator.ts b/packages/generator-typescript/src/type-definition-generator.ts index 3b707856f..7ee65078d 100644 --- a/packages/generator-typescript/src/type-definition-generator.ts +++ b/packages/generator-typescript/src/type-definition-generator.ts @@ -6,7 +6,6 @@ import { removeClassModule, Dependency, DependencyManager, - NO_TSDATA, WARN_NOT_FOUND_DEPENDENCY_GIR_FILE, //WARN_IGNORE_MULTIPLE_CALLBACKS, //WARN_IGNORE_MULTIPLE_FUNC_DESC, @@ -22,6 +21,19 @@ import { TsDoc, TsDocTag, upperCamelCase, + filterFunctionConflict, + resolveDirectedType, + TypeConflict, + ConflictType, + BinaryType, + AnyType, + StringType, + AnyFunctionType, + NumberType, + ArrayType, + FilterBehavior, + VoidType, + ClassStructTypeIdentifier, } from '@ts-for-gir/lib' import { TemplateProcessor } from './template-processor.js' import { PackageDataParser } from './package-data-parser.js' @@ -52,6 +64,7 @@ import { Generic, NativeType, isInvalid, + filterConflicts, } from '@ts-for-gir/lib' function printGirDocComment(tsDoc: TsDoc, config: GenerateConfig) { @@ -115,7 +128,7 @@ class ModuleGenerator extends FormatGenerator { importName: girModule.importName, girModule, pkgData, - registry: this.dependencyManager.registry, + registry: this.dependencyManager, }, girModule.packageName, girModule.transitiveDependencies, @@ -157,20 +170,87 @@ class ModuleGenerator extends FormatGenerator { const invalid = isInvalid(node.name) const name = invalid ? `["${node.name}"]` : node.name const warning = node.getWarning() + const genericTypes = this.generateGenericParameters(node.generics) + return [ `${warning ? `${warning}\n` : ''}`, ...this.addGirDocComment(node.doc), - `static ${name}(${Parameters}): ${node + `static ${name}${genericTypes}(${Parameters}): ${node .return() .resolve(namespace, options) .rootPrint(namespace, options)};`, ] } generateRecord(node: IntrospectedRecord): string[] { + const structFor = node.structFor + + if (structFor) { + const resolvedIdentifier = structFor.resolveIdentifier(this.namespace, this.config) + + // Only create aliases for structs which resolve... + if (resolvedIdentifier) { + return this.generateAlias( + new IntrospectedAlias({ + name: node.name, + namespace: node.namespace, + type: new ClassStructTypeIdentifier(structFor.name, structFor.namespace), + }), + ) + } + + return [] + } + return this.generateClass(node) } generateInterface(node: IntrospectedInterface): string[] { - return this.generateImplementationInterface(node) + const isGObject = node.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object') + const functions = filterFunctionConflict(node.namespace, node, node.members, []) + const hasStaticFunctions = functions.some((f) => f instanceof IntrospectedStaticClassFunction) + + const hasNamespace = isGObject || hasStaticFunctions || node.callbacks.length > 0 + + return [ + ...this.generateClassModules(node), + ...(hasNamespace ? this.generateInterfaceNamespace(node) : []), + ...this.generateImplementationInterface(node), + ...(hasNamespace ? this.generateInterfaceDeclaration(node) : []), + ] + } + generateInterfaceNamespace(node: IntrospectedInterface): string[] { + const isGObject = node.someParent((p) => p.namespace.name === 'GObject' && p.name === 'Object') + const namespace = node.namespace + const functions = filterFunctionConflict(node.namespace, node, node.members, []) + const staticFunctions = functions.filter( + (f): f is IntrospectedStaticClassFunction => f instanceof IntrospectedStaticClassFunction, + ) + const staticFields = node.fields + .filter((f) => f.isStatic) + .map((f) => + f.copy({ + isStatic: false, + }), + ) + return [ + `export interface ${node.name}Namespace { + ${isGObject ? `$gtype: ${namespace.name !== 'GObject' ? 'GObject.' : ''}GType<${node.name}>;` : ''} + prototype: ${node.name}; + ${staticFields.length > 0 ? staticFields.flatMap((sf) => sf.asString(this)).join('\n') : ''} + ${ + staticFunctions.length > 0 + ? staticFunctions + .flatMap((sf) => { + // TODO: We're passing "node" as the parent, even though that isn't technically accurate. + return sf.asClassFunction(node).asString(this) + }) + .join('\n') + : '' + } + }`, + ] + } + generateInterfaceDeclaration(node: IntrospectedInterface): string[] { + return [`\n\nexport const ${node.name}: ${node.name}Namespace;\n`] } generateError(node: IntrospectedError): string[] { const { namespace } = this @@ -230,45 +310,113 @@ class ModuleGenerator extends FormatGenerator { generateProperty(tsProp: IntrospectedProperty, construct?: boolean, indentCount = 0) { const desc: string[] = [] - const isStatic = false //tsProp.isStatic - - // if ((isStatic && !onlyStatic) || (!isStatic && onlyStatic)) { - // return desc - // } desc.push(...this.addGirDocComment(tsProp.doc, [], indentCount)) const indent = generateIndent(indentCount) - const varDesc = this.generateVariable(tsProp) - const staticStr = isStatic ? 'static ' : '' - const readonly = !tsProp.writable ? 'readonly ' : '' + const name = this.generateMemberName(tsProp) + + const { readable, writable, constructOnly } = tsProp + + const hasGetter = readable + const hasSetter = writable && !constructOnly + + let type = tsProp.type + let getterAnnotation = '' + let setterAnnotation = '' + let getterSetterAnnotation = '' + let printAsProperty = false + + if (type instanceof TypeConflict) { + switch (type.conflictType) { + case ConflictType.FUNCTION_NAME_CONFLICT: + case ConflictType.FIELD_NAME_CONFLICT: + getterSetterAnnotation = + setterAnnotation = `// This accessor conflicts with a field or function name in a parent class or interface.\n` + case ConflictType.ACCESSOR_PROPERTY_CONFLICT: + getterSetterAnnotation = + getterAnnotation = `// This accessor conflicts with a property or field in a parent class or interface.\n` + type = new BinaryType(type.unwrap(), AnyType) + // A child class cannot have an accessor declared if the parent has a property + printAsProperty = true + break + case ConflictType.PROPERTY_ACCESSOR_CONFLICT: + type = new BinaryType(type.unwrap(), AnyType) + break + case ConflictType.PROPERTY_NAME_CONFLICT: + getterSetterAnnotation = + setterAnnotation = + getterAnnotation = + "// This accessor conflicts with another accessor's type in a parent class or interface.\n" + type = new BinaryType(type.unwrap(), AnyType) + break + } - // temporary solution, will be solved differently later - const commentOut = '' + if (construct && !(type instanceof BinaryType)) { + // For constructor properties we just convert to any. + type = new BinaryType(type, AnyType) + } + } + + const Type = type.resolve(this.namespace, this.options).rootPrint(this.namespace, this.options) || 'any' + + if (construct) { + return [`${name}: ${Type};`] + } + + if (printAsProperty) { + desc.push(`${getterSetterAnnotation}${indent} ${name}: ${Type};`) + + return desc + } + + if (hasGetter && hasSetter) { + desc.push( + `${getterAnnotation}${indent}get ${name}(): ${Type};`, + `${setterAnnotation}${indent}set ${name}(val: ${Type});`, + ) + } else if (hasGetter) { + desc.push(`${getterSetterAnnotation}${indent}get ${name}(): ${Type};`) + } else { + desc.push(`${getterSetterAnnotation}${indent}set ${name}(val: ${Type});`) + } - desc.push(`${indent}${commentOut}${staticStr}${readonly}${varDesc}`) return desc } generateField(tsProp: IntrospectedField, indentCount = 0) { const desc: string[] = [] - const isStatic = false //tsProp.isStatic - - // if ((isStatic && !onlyStatic) || (!isStatic && onlyStatic)) { - // return desc - // } + const isStatic = tsProp.isStatic desc.push(...this.addGirDocComment(tsProp.doc, [], indentCount)) const indent = generateIndent(indentCount) - const varDesc = this.generateVariable(tsProp, 0) + const name = this.generateMemberName(tsProp) const staticStr = isStatic ? 'static ' : '' const readonly = !tsProp.writable ? 'readonly ' : '' + const affix = tsProp.optional ? '?' : '' // temporary solution, will be solved differently later - const commentOut = '' + let commentOut = '' + let type = tsProp.type - desc.push(`${indent}${commentOut}${staticStr}${readonly}${varDesc}`) + if (type instanceof TypeConflict) { + if (type.conflictType === ConflictType.PROPERTY_ACCESSOR_CONFLICT) { + commentOut = `\n// @ts-expect-error This property conflicts with an accessor in a parent class or interface.\n` + + type = type.unwrap() + } else if (type.conflictType === ConflictType.FUNCTION_NAME_CONFLICT) { + commentOut = `\n// This field conflicts with a function in a parent class or interface.\n` + + type = new BinaryType(type.unwrap(), AnyType) + } else { + type = type.unwrap() + } + } + + const typeStr = this.generateType(type) + + desc.push(`${indent}${commentOut}${staticStr}${readonly}${name}${affix}: ${typeStr}`) return desc } @@ -329,16 +477,11 @@ class ModuleGenerator extends FormatGenerator { // return typeStr // } - generateVariable(tsVar: IntrospectedProperty | IntrospectedConstant | IntrospectedField, indentCount = 0) { - const indent = generateIndent(indentCount) + generateMemberName(tsVar: IntrospectedProperty | IntrospectedConstant | IntrospectedField) { const name = tsVar.name - // Constants are not optional - const optional = false const invalid = isInvalid(name) - const Name = - invalid && (tsVar instanceof IntrospectedProperty || tsVar instanceof IntrospectedField) - ? `"${name}"` - : name + const hasInvalidName = invalid && (tsVar instanceof IntrospectedProperty || tsVar instanceof IntrospectedField) + const Name = hasInvalidName ? `"${name}"` : name if (!Name) { throw new Error('[generateVariable] "name" not set!') @@ -346,22 +489,16 @@ class ModuleGenerator extends FormatGenerator { const ComputedName = 'computed' in tsVar && tsVar.computed ? `[${name}]` : Name - const affix = optional ? '?' : '' - const typeStr = this.generateTypes(tsVar.type) - - // temporary solution, will be solved differently later - // TODO: const commentOut = allowCommentOut && tsVar.hasUnresolvedConflict ? '// Has conflict: ' : '' - const commentOut = '' - - return `${indent}${commentOut}${ComputedName}${affix}: ${typeStr}` + return `${ComputedName}` } + /** + * @param tsType The type expression + * @param namespace Provides the namespace to import relative to, defaults to the current namespace + * @returns A string for the type expression + */ generateType(tsType: TypeExpression) { - return tsType.print(this.namespace, this.config) - } - - generateTypes(tsTypes: TypeExpression) { - return tsTypes.print(this.namespace, this.config) + return tsType.resolve(this.namespace, this.config).print(this.namespace, this.config) } // TODO: @@ -546,13 +683,9 @@ class ModuleGenerator extends FormatGenerator { } generateParameter(tsParam: IntrospectedFunctionParameter) { - if (typeof tsParam?.name !== 'string') { - throw new Error(NO_TSDATA('generateParameter')) - } - const types = tsParam.type const name = tsParam.name - const typeStr = this.generateTypes(types) + const typeStr = this.generateType(types) const optional = tsParam.isOptional && !tsParam.isVarArgs const affix = optional ? '?' : '' const prefix = tsParam.isVarArgs ? '...' : '' @@ -596,6 +729,7 @@ class ModuleGenerator extends FormatGenerator { return '' } + // TODO: // generateOutParameterReturn(girParam: GirCallableParamElement, namespace: string) { // const desc: string[] = [] @@ -620,6 +754,29 @@ class ModuleGenerator extends FormatGenerator { const typeStr = this.generateType(tsFunction.return()) + const outputParameters = tsFunction.output_parameters + + if (outputParameters.length > 0) { + const excludeActualReturnValueFromArray = typeStr === 'void' || typeStr === '' + const returns = [ + ...(excludeActualReturnValueFromArray ? [] : [`${typeStr}`]), + ...outputParameters + .map((op) => { + return ( + resolveDirectedType(op.type, GirDirection.Out)?.resolve(this.namespace, this.options) ?? + op.type.resolve(this.namespace, this.options) + ) + }) + .map((p) => p.rootPrint(this.namespace, this.options)), + ] + + if (returns.length > 1) { + return `[${returns.join(', ')}]` + } else { + return `${returns[0]}` + } + } + return typeStr } @@ -642,10 +799,6 @@ class ModuleGenerator extends FormatGenerator { const { parameters: inParams } = tsFunction - // if ((isStatic && !onlyStatic) || (!isStatic && onlyStatic)) { - // return def - // } - if (tsFunction.doc) def.push( ...this.addGirDocComment( @@ -738,7 +891,7 @@ class ModuleGenerator extends FormatGenerator { const indent = generateIndent(indentCount) const indentBody = generateIndent(indentCount + 1) const { parameters: inParams } = tsCallback - const returnTypeStr = this.generateTypes(tsCallback.return()) + const returnTypeStr = this.generateType(tsCallback.return()) // Get name, remove namespace and remove module class name prefix let { name } = tsCallback @@ -780,13 +933,19 @@ class ModuleGenerator extends FormatGenerator { generateEnum(girEnum: IntrospectedEnum, indentCount = 0) { const desc: string[] = [] - if (!girEnum) { - this.log.warn(NO_TSDATA('generateEnumeration')) + desc.push(...this.addGirDocComment(girEnum.doc, [], indentCount)) + + // Enums can't have numerical keys + const isInvalidEnum = Array.from(girEnum.members.keys()).some( + (name) => name.match(/^[0-9]+$/) || name === 'NaN' || name === 'Infinity', + ) + + if (isInvalidEnum) { + desc.push(...girEnum.asClass().asString(this)) + return desc } - desc.push(...this.addGirDocComment(girEnum.doc, [], indentCount)) - const { name } = girEnum desc.push(this.generateExport('enum', name, '{', indentCount)) if (girEnum.members) { @@ -819,25 +978,42 @@ class ModuleGenerator extends FormatGenerator { generateConst(tsConst: IntrospectedConstant, indentCount = 0) { const desc: string[] = [] - // if (!tsConst.hasUnresolvedConflict) { desc.push(...this.addGirDocComment(tsConst.doc, [], indentCount)) - // } const indent = generateIndent(indentCount) const exp = !this.config.noNamespace ? '' : 'export ' - const varDesc = this.generateVariable(tsConst, 0) - desc.push(`${indent}${exp}const ${varDesc}`) + + const ComputedName = this.generateMemberName(tsConst) + const typeStr = this.generateType(tsConst.type) + + desc.push(`${indent}${exp}const ${ComputedName}: ${typeStr}`) return desc } generateAlias(girAlias: IntrospectedAlias, indentCount = 0) { + const { namespace, options } = this + const desc: string[] = [] const indent = generateIndent(indentCount) + const genericList = girAlias.generics + .map((g) => { + if (g.type) { + return `${g.name} = ${g.type.resolve(namespace, options).rootPrint(namespace, options)}` + } + + return `${g.name}` + }) + .join(', ') + + const generics = genericList ? `<${genericList}>` : '' + const exp = !this.config.noNamespace ? '' : 'export ' - desc.push(`${indent}${exp}type ${girAlias.name} = ${girAlias.type.print(this.namespace, this.config)}`) + desc.push( + `${indent}${exp}type ${girAlias.name}${generics} = ${girAlias.type.print(this.namespace, this.config)}`, + ) return desc } @@ -847,7 +1023,11 @@ class ModuleGenerator extends FormatGenerator { ) { const def: string[] = [] - if (!girClass.someParent((p: IntrospectedBaseClass) => p.namespace.name === 'GObject' && p.name === 'Object')) { + const isGObjectObject = girClass.name === 'Object' && girClass.namespace.name === 'GObject' + if ( + !isGObjectObject && + !girClass.someParent((p: IntrospectedBaseClass) => p.namespace.name === 'GObject' && p.name === 'Object') + ) { return def } @@ -855,48 +1035,95 @@ class ModuleGenerator extends FormatGenerator { const exp = !this.config.noNamespace ? '' : 'export ' let ext = '' const resolution = girClass.resolveParents() - const superType = resolution.node - const iSuperTypes = 'implements' in resolution ? resolution.implements() : [] - - if (superType || iSuperTypes.length > 0) { - ext = `extends ${[ - superType.getType().print(this.namespace, this.config), - ...iSuperTypes.map((i) => i.node.getType().print(this.namespace, this.config)), - ].join(', ')} ` - } + const superType = girClass.superType + const superTypeIdentifier = superType + ?.resolveIdentifier(this.namespace, this.config) + ?.print(this.namespace, this.config) + const genericTypes = this.generateGenericParameters(girClass.generics) // Remove namespace and class module name - const constructPropInterfaceName = removeClassModule( - removeNamespace(`${girClass.name}ConstructorProps`, girClass.namespace.name), - girClass.name, - ) + const constructPropInterfaceName = `ConstructorProps` + + // Only add the "extends" if the parent type will be generated (it has props)... + if (superTypeIdentifier) { + const interfaceExtends = + 'implements' in resolution + ? resolution + .implements() + .map((iface) => + iface.identifier + .resolveIdentifier(this.namespace, this.config) + ?.print(this.namespace, this.config), + ) + .filter((identifier): identifier is string => !!identifier) + .map((identifier) => { + const identifierParts = identifier.split('<') + const generics = identifierParts.length > 1 ? `<${identifierParts[1]}` : '' + return `${identifierParts[0]}.${constructPropInterfaceName}${generics}` + }) + : [] + + const superTypeIdentifierParts = superTypeIdentifier.split('<') + const generics = superTypeIdentifierParts.length > 1 ? `<${superTypeIdentifierParts[1]}` : '' + const superTypeExtends = `${superTypeIdentifierParts[0]}.${constructPropInterfaceName}${generics}` + ext = `extends ${[superTypeExtends, ...interfaceExtends].join(', ')}` + } def.push(...this.addInfoComment('Constructor properties interface', indentCount)) + // Include properties from parent interfaces... + const { props } = girClass + // START BODY - if (girClass.mainConstructor) { - def.push(`${indent}${exp}interface ${constructPropInterfaceName} ${ext}{`) - def.push( - ...this.generateFields( - girClass.mainConstructor.parameters.map((param) => param.asField()), - `Own constructor properties of ${girClass.namespace.packageName}.${girClass.name}`, - indentCount + 1, - ), - ) - def.push(`${indent}}`, '') - } + + const ConstructorProps = filterConflicts(girClass.namespace, girClass, props, FilterBehavior.PRESERVE) + .flatMap((v) => v.asString(this, true)) + .join('\n ') + + def.push(`${indent}${exp}interface ${constructPropInterfaceName}${genericTypes} ${ext} {`) + def.push(ConstructorProps) + def.push(`${indent}}`, '') + // END BODY return def } - generateClassFields(girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface, indentCount = 1) { + generateClassStaticFields( + girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface, + indentCount = 1, + ) { + const def: string[] = [] + + def.push( + ...this.generateFields( + filterConflicts( + girClass.namespace, + girClass, + girClass.fields.filter((field) => field.isStatic), + ), + `Static fields of ${girClass.namespace.namespace}.${girClass.name}`, + indentCount, + ), + ) + + return def + } + + generateClassMemberFields( + girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface, + indentCount = 1, + ) { const def: string[] = [] def.push( ...this.generateFields( - girClass.fields, - `Own fields of ${girClass.namespace.packageName}.${girClass.name}`, + filterConflicts( + girClass.namespace, + girClass, + girClass.fields.filter((field) => !field.isStatic), + ), + `Own fields of ${girClass.namespace.namespace}.${girClass.name}`, indentCount, ), ) @@ -904,13 +1131,24 @@ class ModuleGenerator extends FormatGenerator { return def } + generateClassFields(girClass: IntrospectedClass | IntrospectedRecord, indentCount = 1) { + const def: string[] = [] + + def.push( + ...this.generateClassStaticFields(girClass, indentCount), + ...this.generateClassMemberFields(girClass, indentCount), + ) + + return def + } + generateClassProperties(girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface, indentCount = 1) { const def: string[] = [] def.push( ...this.generateProperties( - girClass.props, - `Own properties of ${girClass.namespace.packageName}.${girClass.name}`, + filterConflicts(girClass.namespace, girClass, girClass.props), + `Own properties of ${girClass.namespace.namespace}.${girClass.name}`, indentCount, ), ) @@ -925,9 +1163,14 @@ class ModuleGenerator extends FormatGenerator { const def: string[] = [] def.push( ...this.generateFunctions( - [...girClass.members].filter((member) => member instanceof IntrospectedStaticClassFunction), + filterFunctionConflict( + girClass.parent, + girClass, + [...girClass.members].filter((member) => member instanceof IntrospectedStaticClassFunction), + [], + ), indentCount, - `Owm methods of ${girClass.namespace.packageName}.${girClass.name}`, + `Own static methods of ${girClass.namespace.namespace}.${girClass.name}`, ), ) @@ -939,13 +1182,18 @@ class ModuleGenerator extends FormatGenerator { def.push( ...this.generateFunctions( - [...girClass.members].filter( - (member) => - !(member instanceof IntrospectedStaticClassFunction) && - !(member instanceof IntrospectedVirtualClassFunction), + filterFunctionConflict( + girClass.parent, + girClass, + [...girClass.members].filter( + (member) => + !(member instanceof IntrospectedStaticClassFunction) && + !(member instanceof IntrospectedVirtualClassFunction), + ), + [], ), indentCount, - `Owm methods of ${girClass.namespace.packageName}.${girClass.name}`, + `Own methods of ${girClass.namespace.namespace}.${girClass.name}`, ), ) @@ -957,36 +1205,35 @@ class ModuleGenerator extends FormatGenerator { indentCount = 1, ) { const def: string[] = [] - // if (!girClass || !girClass.name || !girClass._module) { - // throw new Error(NO_TSDATA('generateClassConstructors')) - // } // Constructors if (girClass.mainConstructor instanceof IntrospectedDirectAllocationConstructor) def.push(...this.generateDirectAllocationConstructor(girClass.mainConstructor)) else if (girClass.mainConstructor instanceof IntrospectedConstructor) def.push(...this.generateConstructor(girClass.mainConstructor)) + else if ( + girClass.someParent((p: IntrospectedBaseClass) => p.namespace.name === 'GObject' && p.name === 'Object') + ) + def.push(`\nconstructor(properties?: Partial<${girClass.name}.ConstructorProps>, ...args: any[]);\n`) + + // Don't inject a constructor hook if a stricter index signature is set, + // as the types may not be compatible. + // + // TODO: Don't hardcode string index signatures + if (!girClass.__ts__indexSignature || girClass.__ts__indexSignature.includes('[key: string]: any')) { + // _init method + def.push('_init(...args: any[]): void;\n') + } - // _init method - def.push(...girClass.constructors.flatMap((constructor) => this.generateConstructorFunction(constructor))) - // // Pseudo constructors - // def.push( - // ...this.generateFunctions( - // girClass.staticFunctions - // .map((girFunc) => girFunc) - // .filter((tsFunc) => !!tsFunc) as IntrospectedFunction[], - // true, - // namespace, - // indentCount, - // ), - // ) + def.push( + ...filterFunctionConflict(girClass.parent, girClass, girClass.constructors, []).flatMap((constructor) => + this.generateConstructorFunction(constructor), + ), + ) if (def.length) { def.unshift( - ...this.addInfoComment( - `Constructors of ${girClass.namespace.packageName}.${girClass.name}`, - indentCount, - ), + ...this.addInfoComment(`Constructors of ${girClass.namespace.namespace}.${girClass.name}`, indentCount), ) } @@ -1005,9 +1252,14 @@ class ModuleGenerator extends FormatGenerator { def.push( ...this.generateFunctions( - [...girClass.members.values()].filter((fn) => fn instanceof IntrospectedVirtualClassFunction), + filterFunctionConflict( + girClass.parent, + girClass, + [...girClass.members.values()].filter((fn) => fn instanceof IntrospectedVirtualClassFunction), + [], + ), indentCount, - `Own virtual methods of ${girClass.namespace.packageName}.${girClass.name}`, + `Own virtual methods of ${girClass.namespace.namespace}.${girClass.name}`, ), ) @@ -1016,11 +1268,7 @@ class ModuleGenerator extends FormatGenerator { generateClassSignalInterfaces(girClass: IntrospectedClass, indentCount = 0) { const def: string[] = [] - if (!girClass) { - throw new Error(NO_TSDATA('generateClassSignalInterface')) - } - - const tsSignals = girClass.signals.map((signal) => signal).filter((signal) => !!signal) + const tsSignals = girClass.signals def.push( ...this.generateCallbackInterfaces( @@ -1041,20 +1289,118 @@ class ModuleGenerator extends FormatGenerator { return def } - // generateClassSignals(girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface) { - // const def: string[] = [] - // if (!girClass || !girClass.name || !girClass._module) { - // throw new Error(NO_TSDATA('generateClassSignals')) - // } + generateSignals(girClass: IntrospectedClass) { + const namespace = girClass.namespace + // TODO Move these to a cleaner place. - // const signalDescs = this.generateSignals(girClass, girClass, 0) + const Connect = new IntrospectedClassFunction({ + name: 'connect', + parent: girClass, + parameters: [ + new IntrospectedFunctionParameter({ + name: 'id', + type: StringType, + direction: GirDirection.In, + }), + new IntrospectedFunctionParameter({ + name: 'callback', + type: AnyFunctionType, + direction: GirDirection.In, + }), + ], + return_type: NumberType, + }) - // def.push( - // ...this.mergeDescs(signalDescs, `Own signals of ${girClass.namespace.packageName}.${girClass.name}`, 1), - // ) + const ConnectAfter = new IntrospectedClassFunction({ + name: 'connect_after', + parent: girClass, + parameters: [ + new IntrospectedFunctionParameter({ + name: 'id', + type: StringType, + direction: GirDirection.In, + }), + new IntrospectedFunctionParameter({ + name: 'callback', + type: AnyFunctionType, + direction: GirDirection.In, + }), + ], + return_type: NumberType, + }) - // return def - // } + const Emit = new IntrospectedClassFunction({ + name: 'emit', + parent: girClass, + parameters: [ + new IntrospectedFunctionParameter({ + name: 'id', + type: StringType, + direction: GirDirection.In, + }), + new IntrospectedFunctionParameter({ + name: 'args', + isVarArgs: true, + type: new ArrayType(AnyType), + direction: GirDirection.In, + }), + ], + return_type: VoidType, + }) + + let defaultSignals = [] as IntrospectedClassFunction[] + let hasConnect, hasConnectAfter, hasEmit + + if (girClass.signals.length > 0) { + hasConnect = girClass.members.some((m) => m.name === 'connect') + hasConnectAfter = girClass.members.some((m) => m.name === 'connect_after') + hasEmit = girClass.members.some((m) => m.name === 'emit') + + if (!hasConnect) { + defaultSignals.push(Connect) + } + if (!hasConnectAfter) { + defaultSignals.push(ConnectAfter) + } + if (!hasEmit) { + defaultSignals.push(Emit) + } + + defaultSignals = filterConflicts(namespace, girClass, defaultSignals, FilterBehavior.DELETE) + + hasConnect = !defaultSignals.some((s) => s.name === 'connect') + hasConnectAfter = !defaultSignals.some((s) => s.name === 'connect_after') + hasEmit = !defaultSignals.some((s) => s.name === 'emit') + } + + const SignalsList = [ + // TODO Relocate these. + ...defaultSignals.flatMap((s) => s.asString(this)), + ...girClass.signals + .map((s) => { + const methods = [] as string[] + + if (!hasConnect) methods.push(...s.asString(this, IntrospectedSignalType.CONNECT)) + if (!hasConnectAfter) methods.push(...s.asString(this, IntrospectedSignalType.CONNECT_AFTER)) + if (!hasEmit) methods.push(...s.asString(this, IntrospectedSignalType.EMIT)) + + return methods + }) + .flat(), + ] + + return SignalsList + } + + generateClassSignals(girClass: IntrospectedClass) { + const def: string[] = [] + + const signalDescs = this.generateSignals(girClass) + + def.push(...this.mergeDescs(signalDescs, `Own signals of ${girClass.namespace.namespace}.${girClass.name}`, 1)) + + return def + } generateClassModules(girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface, indentCount = 0) { const def: string[] = [] @@ -1064,12 +1410,15 @@ class ModuleGenerator extends FormatGenerator { const exp = !this.config.noNamespace ? '' : 'export ' - if ('signals' in girClass) { + if (girClass instanceof IntrospectedClass) { // Signal interfaces bodyDef.push(...this.generateClassSignalInterfaces(girClass, indentCount + 1)) } + bodyDef.push(...this.generateClassCallbacks(girClass)) + // Properties interface for construction + // TODO: Actually use this interface to build class' construction props interface bodyDef.push(...this.generateConstructPropsInterface(girClass, indentCount + 1)) if (!bodyDef.length) { @@ -1090,6 +1439,12 @@ class ModuleGenerator extends FormatGenerator { return def } + generateClassCallbacks(girClass: IntrospectedClass | IntrospectedInterface | IntrospectedRecord) { + if (girClass.callbacks.length === 0) return [] + + return girClass.callbacks.flatMap((c) => this.generateClassCallback(c)) + } + /** * In Typescript, interfaces and classes can have the same name, * so we use this to generate interfaces with the same name to implement multiple inheritance @@ -1103,10 +1458,13 @@ class ModuleGenerator extends FormatGenerator { const genericParameters = this.generateGenericParameters(girClass.generics) const resolution = girClass.resolveParents() - const implementationNames = - 'implements' in resolution + const superType = resolution.extends() + const implementationNames = [ + ...(superType ? [superType.node.getType().print(this.namespace, this.config)] : []), + ...('implements' in resolution ? resolution.implements().map((i) => i.node.getType().print(this.namespace, this.config)) - : [] + : []), + ] const ext = implementationNames.length ? ` extends ${implementationNames.join(', ')}` : '' const interfaceHead = `${girClass.name}${genericParameters}${ext}` @@ -1114,28 +1472,23 @@ class ModuleGenerator extends FormatGenerator { { def.push(this.generateExport('interface', interfaceHead, '{')) + if (girClass.__ts__indexSignature) { + def.push(`\n${girClass.__ts__indexSignature}\n`) + } + // START BODY { // Properties def.push(...this.generateClassProperties(girClass)) // Fields - def.push(...this.generateClassFields(girClass)) - - // Methods - // TODO def.push(...this.generateClassStaticMethods(girClass)) + def.push(...this.generateClassMemberFields(girClass)) // Methods def.push(...this.generateClassMethods(girClass)) // Virtual methods def.push(...this.generateClassVirtualMethods(girClass)) - - // Signals - // TODO: def.push(...this.generateClassSignals(girClass)) - - // TODO: Generate `GirSignalElement`s instead of generate the signal definition strings directly - // TODO: def.push(...this.generateClassPropertySignals(girClass)) } // END BODY @@ -1165,32 +1518,64 @@ class ModuleGenerator extends FormatGenerator { return '' } + protected implements(node: IntrospectedClass) { + const { namespace, options } = this + + const interfaces = node.interfaces.map((i) => { + const identifier = i.resolveIdentifier(namespace, options) + + if (!identifier) { + throw new Error( + `Unable to resolve type: ${i.name} from ${i.namespace} in ${node.namespace.name} ${node.namespace.version}`, + ) + } + + return identifier + }) + + if (interfaces.length > 0) { + return ` implements ${interfaces + .map((i) => { + const Type = i.print(namespace, options) + return `${Type}` + }) + .join(', ')}` + } + + return '' + } + /** * Represents a record, GObject class or interface as a Typescript class * @param girClass * @param namespace */ - generateClass(girClass: IntrospectedClass | IntrospectedRecord | IntrospectedInterface) { + generateClass(girClass: IntrospectedClass | IntrospectedRecord) { const def: string[] = [] def.push(...this.generateClassModules(girClass)) - // def.push(...this.generateImplementationInterface(girClass)) - def.push(...this.addGirDocComment(girClass.doc, [], 0)) const genericParameters = this.generateGenericParameters(girClass.generics) const ext = this.extends(girClass) - const classHead = `${girClass.name}${genericParameters}${ext}` + const impl = girClass instanceof IntrospectedClass ? this.implements(girClass) : '' + const classHead = `${girClass.name}${genericParameters}${ext}${impl}` // START CLASS { - if (girClass instanceof IntrospectedClass && girClass.isAbstract) { + const isAbstract = girClass instanceof IntrospectedClass && girClass.isAbstract + const isOpaque = girClass instanceof IntrospectedRecord && girClass.isPrivate + if (isAbstract || isOpaque) { def.push(this.generateExport('abstract class', classHead, '{')) } else { def.push(this.generateExport('class', classHead, '{')) } + if (girClass.__ts__indexSignature) { + def.push(`\n${girClass.__ts__indexSignature}\n`) + } + // START BODY { // Static Properties @@ -1202,11 +1587,48 @@ class ModuleGenerator extends FormatGenerator { // Constructors def.push(...this.generateClassConstructors(girClass)) - // Methods - def.push(...this.generateClassStaticMethods(girClass)) + if (girClass instanceof IntrospectedClass) { + // Signals + def.push(...this.generateClassSignals(girClass)) + } // Static Methods + def.push(...this.generateClassStaticMethods(girClass)) + + // Virtual methods + def.push(...this.generateClassVirtualMethods(girClass)) + + // Methods def.push(...this.generateClassMethods(girClass)) + + if (girClass instanceof IntrospectedClass) { + const implementedProperties = girClass + .implementedProperties() + .map((prop) => prop.copy({ parent: girClass })) + const implementedMethods = girClass + .implementedMethods(implementedProperties) + .map((method) => method.copy({ parent: girClass })) + + const generatedImplementedProperties = filterConflicts( + girClass.namespace, + girClass, + implementedProperties, + ).flatMap((m) => m.asString(this)) + + if (generatedImplementedProperties.length > 0) + def.push('\n// Inherited properties', ...generatedImplementedProperties) + + const filteredImplMethods = filterFunctionConflict( + girClass.namespace, + girClass, + implementedMethods, + [], + ) + const generatedImplementedMethods = filteredImplMethods.flatMap((m) => m.asString(this)) + + if (generatedImplementedMethods.length > 0) + def.push('\n// Inherited methods', ...generatedImplementedMethods) + } } // END BODY @@ -1227,7 +1649,14 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}.js` if (this.config.outdir) { - await this.moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, {}, this.config) + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + target, + undefined, + undefined, + this.config, + ) } else { const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) this.log.log(append + prepend) @@ -1239,7 +1668,14 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}-ambient.d.ts` if (this.config.outdir) { - await this.moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, {}, this.config) + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + target, + undefined, + undefined, + this.config, + ) } else { const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) this.log.log(append + prepend) @@ -1251,7 +1687,14 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}-ambient.js` if (this.config.outdir) { - await this.moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, {}, this.config) + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + target, + undefined, + undefined, + this.config, + ) } else { const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) this.log.log(append + prepend) @@ -1263,7 +1706,14 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}-import.d.ts` if (this.config.outdir) { - await this.moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, {}, this.config) + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + target, + undefined, + undefined, + this.config, + ) } else { const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) this.log.log(append + prepend) @@ -1275,7 +1725,14 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}-import.js` if (this.config.outdir) { - await this.moduleTemplateProcessor.create(template, this.config.outdir, target, undefined, {}, this.config) + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + target, + undefined, + undefined, + this.config, + ) } else { const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) this.log.log(append + prepend) @@ -1296,7 +1753,7 @@ class ModuleGenerator extends FormatGenerator { const target = `${girModule.importName}.d.ts` - const formatter = this.dependencyManager.registry.getFormatter('dts') + const formatter = this.dependencyManager.getFormatter('dts') let contents!: string try { @@ -1308,7 +1765,11 @@ class ModuleGenerator extends FormatGenerator { if (this.config.outdir) { const outputPath = this.moduleTemplateProcessor.getOutputPath(this.config.outdir, target) - console.log(outputPath, target) + + if (this.config.verbose) { + this.log.debug(`Outputting ${target} to ${outputPath}`) + } + // write template result file await mkdir(dirname(outputPath), { recursive: true }) await writeFile(outputPath, contents, { encoding: 'utf8', flag: 'w' }) @@ -1327,18 +1788,6 @@ class ModuleGenerator extends FormatGenerator { const def: string[] = [] const dep = this.dependencyManager.get(packageName) - // if (this.config.package) { - // if (this.config.buildType === 'types') { - // // See https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html - // def.push(`/// `) - // } - // } else { - // if (this.config.buildType === 'types') { - // // See https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html - // def.push(`/// `) - // } - // } - def.push(dep.importDef) return def @@ -1346,19 +1795,14 @@ class ModuleGenerator extends FormatGenerator { async generateNamespace(girModule: GirModule): Promise { const moduleTemplateProcessor = this.moduleTemplateProcessor - const template = 'module.d.ts' + const template = this.config.noNamespace ? 'module-noNamespace.d.ts' : 'module.d.ts' const explicitTemplate = `${girModule.importName}.d.ts` - // let target = `${girModule.importName}.d.ts` - - // target = `${girModule.importName}.d.mts` - const out: string[] = [] out.push(...this.addTSDocCommentLines([girModule.packageName])) out.push('') - // out.push(...this.generateModuleDependenciesImport('Gjs') // Module dependencies as type references or imports // TODO: Move to template @@ -1385,12 +1829,14 @@ class ModuleGenerator extends FormatGenerator { out.push('') if (girModule.members) - for (const m of girModule.members.values()) + for (const m of girModule.members.values()) { out.push( - ...(Array.isArray(m) ? m : [m]).flatMap( - (m) => (m as IntrospectedNamespaceMember).asString(this as FormatGenerator) ?? [], - ), + ...(Array.isArray(m) ? m : [m]) + .flatMap((m) => (m as IntrospectedNamespaceMember) ?? []) + .filter((m) => m.emit) + .flatMap((m) => m.asString(this as FormatGenerator) ?? ''), ) + } // Extra interfaces if a template with the module name (e.g. '../templates/gobject-2-0.d.ts') is found // E.g. used for GObject-2.0 to help define GObject classes in js; @@ -1466,124 +1912,7 @@ class ModuleGenerator extends FormatGenerator { return [prepend, ...out, append] } - /** - * Export everything we need for a npm package: package.json, README.md, tsconfig.json, typedoc.json - * @param girModuleImportName The name of the module to export - * @param templateProcessor Define a custom template processor to use - */ - async exportNPMPackage(girModuleImportName: string, templateProcessor = this.moduleTemplateProcessor) { - await this.exportNPMPackageJson(templateProcessor) - await this.exportNPMReadme(girModuleImportName, templateProcessor) - await this.exportTSConfig(templateProcessor) - await this.exportTypeDoc(templateProcessor) - } - - /** - * Export the package.json - * @param templateProcessor Define a custom template processor to use - */ - async exportNPMPackageJson(templateProcessor = this.moduleTemplateProcessor) { - const template = 'package.json' - if (this.config.outdir) { - await templateProcessor.create( - template, - this.config.outdir, - template, // output filename - undefined, - {}, - this.config, - ) - } else { - const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) - this.log.log(append + prepend) - } - } - - /** - * Export the README.md - * @param girModuleImportName The name of the module to export - * @param templateProcessor Define a custom template processor to use - */ - async exportNPMReadme(girModuleImportName: string, templateProcessor = this.moduleTemplateProcessor) { - // E.g. `README-GJS.md` or `README-GTK-4.0.md` - let template = girModuleImportName ? `README-${girModuleImportName.toUpperCase()}.md` : 'README.md' - const outputFilename = 'README.md' - - if (!templateProcessor.exists(template)) { - template = 'README.md' - } - - if (this.config.outdir) { - await templateProcessor.create(template, this.config.outdir, outputFilename, undefined, {}, this.config) - } else { - const { append, prepend } = await templateProcessor.load(template, {}, this.config) - this.log.log(append + prepend) - } - } - - /** - * Export the tsconfig.json - * @param templateProcessor Define a custom template processor to use - */ - async exportTSConfig(templateProcessor = this.moduleTemplateProcessor) { - const template = 'tsconfig.json' - if (this.config.outdir) { - await templateProcessor.create( - template, - this.config.outdir, - template, // output filename - undefined, - {}, - this.config, - ) - } else { - const { append, prepend } = await templateProcessor.load(template, {}, this.config) - this.log.log(append + prepend) - } - } - - /** - * Export the TypeDoc configuration - * @param templateProcessor Define a custom template processor to use - */ - async exportTypeDoc(templateProcessor = this.moduleTemplateProcessor) { - const template = 'typedoc.json' - if (this.config.outdir) { - await templateProcessor.create( - template, - this.config.outdir, - template, // output filename - undefined, - {}, - this.config, - ) - } else { - const { append, prepend } = await templateProcessor.load(template, {}, this.config) - this.log.log(append + prepend) - } - } - - async exportModule(registry: NSRegistry, girModule: GirModule) { - // let pkgData: PackageData | undefined - // if (this.packageData) { - // pkgData = this.packageData.get(girModule.packageName) - // } - // const moduleTemplateProcessor = new TemplateProcessor( - // { - // name: girModule.namespace, - // namespace: girModule.namespace, - // version: girModule.version, - // importName: girModule.importName, - // girModule, - // girModules, - // girModulesGrouped, - // pkgData, - // }, - // girModule.packageName, - // girModule.transitiveDependencies, - // this.config, - // ) - + async exportModule(_registry: NSRegistry, girModule: GirModule) { await this.exportModuleTS() await this.exportModuleJS(girModule) @@ -1593,7 +1922,9 @@ class ModuleGenerator extends FormatGenerator { await this.exportModuleImportTS(girModule) await this.exportModuleImportJS(girModule) - await this.exportNPMPackage(girModule.importName) + const pkg = new NpmPackage(this.config, this.dependencyManager, girModule, girModule.dependencies) + + await pkg.exportNPMPackage() } } @@ -1640,51 +1971,181 @@ export class TypeDefinitionGenerator implements Generator { return def } - async exportGjs(dependencies: Dependency[], registry: NSRegistry) { - if (!this.config.outdir) return - const packageName = 'Gjs' + async exportGjs() { + const { config, dependencyManager } = this - const templateProcessor = new TemplateProcessor(registry, packageName, dependencies, this.config) + if (!config.outdir) return + + const gjs = dependencyManager.getGjs() + + const templateProcessor = new TemplateProcessor( + { + registry: dependencyManager, + }, + gjs.packageName, + dependencyManager.core(), + config, + ) - await templateProcessor.create('gjs.d.ts', this.config.outdir, 'gjs.d.ts') - await templateProcessor.create('gjs.js', this.config.outdir, 'gjs.js') + await templateProcessor.create('gjs.d.ts', config.outdir, 'gjs.d.ts') + await templateProcessor.create('gjs.js', config.outdir, 'gjs.js') - await templateProcessor.create('gettext.d.ts', this.config.outdir, 'gettext.d.ts') - await templateProcessor.create('gettext.js', this.config.outdir, 'gettext.js') + await templateProcessor.create('gettext.d.ts', config.outdir, 'gettext.d.ts') + await templateProcessor.create('gettext.js', config.outdir, 'gettext.js') - await templateProcessor.create('system.d.ts', this.config.outdir, 'system.d.ts') - await templateProcessor.create('system.js', this.config.outdir, 'system.js') + await templateProcessor.create('system.d.ts', config.outdir, 'system.d.ts') + await templateProcessor.create('system.js', config.outdir, 'system.js') - await templateProcessor.create('cairo.d.ts', this.config.outdir, 'cairo.d.ts') - await templateProcessor.create('cairo.js', this.config.outdir, 'cairo.js') + await templateProcessor.create('cairo.d.ts', config.outdir, 'cairo.d.ts') + await templateProcessor.create('cairo.js', config.outdir, 'cairo.js') // Import ambient types - await templateProcessor.create('ambient.d.ts', this.config.outdir, 'ambient.d.ts') - await templateProcessor.create('ambient.js', this.config.outdir, 'ambient.js') + await templateProcessor.create('ambient.d.ts', config.outdir, 'ambient.d.ts') + await templateProcessor.create('ambient.js', config.outdir, 'ambient.js') // DOM types - await templateProcessor.create('dom.d.ts', this.config.outdir, 'dom.d.ts') - await templateProcessor.create('dom.js', this.config.outdir, 'dom.js') + await templateProcessor.create('dom.d.ts', config.outdir, 'dom.d.ts') + await templateProcessor.create('dom.js', config.outdir, 'dom.js') + + const pkg = new NpmPackage(config, dependencyManager, gjs, dependencyManager.core()) // Package - await this.module.exportNPMPackage('gjs', templateProcessor) + await pkg.exportNPMPackage() } public async generate(registry: NSRegistry, module: GirModule) { - this.module = new ModuleGenerator(module, this.config) - await this.module.exportModule(registry, module) + const moduleGenerator = new ModuleGenerator(module, this.config) + await moduleGenerator.exportModule(registry, module) } public async start() { - // this.dependencyManager.addAll(girModules) - if (this.packageData) { await this.packageData.start() } } - public async finish(registry: NSRegistry) { + public async finish() { // GJS internal stuff - await this.exportGjs(this.dependencyManager.core(), registry) + await this.exportGjs() + } +} + +class NpmPackage { + config: GenerateConfig + moduleTemplateProcessor: TemplateProcessor + dependencyManager: DependencyManager + log: Logger + packageName: string + + constructor( + config: GenerateConfig, + dependencyManager: DependencyManager, + dependencyOrModule: Wrapped, + deps: Dependency[], + ) { + this.config = config + + this.packageName = dependencyOrModule.packageName + + this.log = new Logger(this.config.verbose, TypeDefinitionGenerator.name) + + this.dependencyManager = dependencyManager + + this.moduleTemplateProcessor = new TemplateProcessor( + { + name: dependencyOrModule.namespace, + namespace: dependencyOrModule.namespace, + version: dependencyOrModule.version, + importName: dependencyOrModule.importName, + registry: this.dependencyManager, + girModule: dependencyOrModule instanceof GirModule ? dependencyOrModule : undefined, + }, + dependencyOrModule.packageName, + deps, + this.config, + ) + } + + async exportNPMPackage() { + await this.exportNPMPackageJson() + await this.exportNPMReadme() + await this.exportTSConfig() + await this.exportTypeDoc() + } + + async exportNPMPackageJson() { + const template = 'package.json' + if (this.config.outdir) { + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + template, // output filename + undefined, + {}, + this.config, + ) + } else { + const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) + this.log.log(append + prepend) + } + } + + async exportNPMReadme() { + const girModuleImportName = this.packageName.toUpperCase() + // E.g. `README-GJS.md` or `README-GTK-4.0.md` + let template = girModuleImportName ? `README-${girModuleImportName}.md` : 'README.md' + const outputFilename = 'README.md' + + if (!this.moduleTemplateProcessor.exists(template)) { + template = 'README.md' + } + + if (this.config.outdir) { + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + outputFilename, + undefined, + {}, + this.config, + ) + } else { + const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) + this.log.log(append + prepend) + } + } + + async exportTSConfig() { + const template = 'tsconfig.json' + if (this.config.outdir) { + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + template, // output filename + undefined, + {}, + this.config, + ) + } else { + const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) + this.log.log(append + prepend) + } + } + + async exportTypeDoc() { + const template = 'typedoc.json' + if (this.config.outdir) { + await this.moduleTemplateProcessor.create( + template, + this.config.outdir, + template, // output filename + undefined, + {}, + this.config, + ) + } else { + const { append, prepend } = await this.moduleTemplateProcessor.load(template, {}, this.config) + this.log.log(append + prepend) + } } } diff --git a/packages/generator-typescript/templates/gjs/gio-2.0.d.ts b/packages/generator-typescript/templates/gjs/gio-2.0.d.ts index 47a3163cb..1c7fe5c18 100644 --- a/packages/generator-typescript/templates/gjs/gio-2.0.d.ts +++ b/packages/generator-typescript/templates/gjs/gio-2.0.d.ts @@ -1,68 +1,3 @@ -// See https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/core/overrides/Gio.js -export const DBus: { - readonly session: DBusConnection; - readonly system: DBusConnection; - get(bus_type: BusType, cancellable?: Cancellable | null, callback?: AsyncReadyCallback | null): void; - get_finish(res: AsyncResult): DBusConnection; - get_sync(bus_type: BusType, cancellable?: Cancellable | null): DBusConnection; - own_name( - bus_type: BusType, - name: string, - flags: BusNameOwnerFlags, - bus_acquired_closure?: GObject.Closure | null, - name_acquired_closure?: GObject.Closure | null, - name_lost_closure?: GObject.Closure | null - ): number; - own_name_on_connection( - connection: DBusConnection, - name: string, - flags: BusNameOwnerFlags, - name_acquired_closure?: GObject.Closure | null, - name_lost_closure?: GObject.Closure | null - ): number; - unown_name(owner_id: number): void; - watch_name( - bus_type: BusType, - name: string, - flags: BusNameWatcherFlags, - name_appeared_closure?: GObject.Closure | null, - name_vanished_closure?: GObject.Closure | null - ): number; - unwatch_name(watcher_id: number): void; - watch_name_on_connection( - connection: DBusConnection, - name: string, - flags: BusNameWatcherFlags, - name_appeared_closure?: GObject.Closure | null, - name_vanished_closure?: GObject.Closure | null - ): number; -} - -export module DBusExportedObject { - export interface ConstructorProperties { - [key: string]: any; - } -} - -// See https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/core/overrides/Gio.js -export class DBusExportedObject { - static $gtype: GObject.GType; - - constructor(properties?: Partial, ...args: any[]); - _init(properties?: Partial, ...args: any[]): void; - - static wrapJSObject(info: string, obj: any): DBusExportedObject; - get_info(): DBusInterfaceInfo; - get_connection(): DBusConnection; - get_object_path(): string; - unexport_from_connection(connection: DBusConnection): void; - ["export"](busConnection: DBusConnection, objectPath: string): void; - unexport(): void; - flush(): void; - emit_signal(name: string, variant: GLib.Variant): void; - emit_property_changed(name: string, variant: GLib.Variant): void; -} - /** * A convenient helper to create Promise wrappers for asynchronous functions in GJS. * diff --git a/packages/generator-typescript/templates/gjs/gobject-2.0.d.ts b/packages/generator-typescript/templates/gjs/gobject-2.0.d.ts index 2bff668ef..dbcb37958 100644 --- a/packages/generator-typescript/templates/gjs/gobject-2.0.d.ts +++ b/packages/generator-typescript/templates/gjs/gobject-2.0.d.ts @@ -192,26 +192,8 @@ export function signal_handlers_unblock_by_func(instance: Object, func: (...args export function signal_handlers_disconnect_by_func(instance: Object, func: (...args: any[]) => any): number; export function signal_handlers_disconnect_by_data(): void; -export type Property = K extends ParamSpecBoolean - ? boolean - : K extends ParamSpecDouble | ParamSpecInt | ParamSpecUInt | ParamSpecFloat | ParamSpecLong - ? number - : K extends ParamSpecInt64 | ParamSpecUInt64 | ParamSpecULong - ? number - : K extends ParamSpecFlags - ? number - : K extends ParamSpecString | ParamSpecUnichar - ? string - : K extends ParamSpecValueArray - ? any[] - : K extends ParamSpecObject // TODO?: - ? ParamSpecObject // T - : K extends ParamSpecEnum // TODO?: - ? ParamSpecEnum // E - : K extends ParamSpecBoxed // TODO?: - ? ParamSpecBoxed //B - : K extends ParamSpecVariant - ? GLib.Variant +export type Property = K extends ParamSpec + ? T : any; // TODO: What about the generated class Closure diff --git a/packages/generator-typescript/templates/gjs/module-ambient.d.ts b/packages/generator-typescript/templates/gjs/module-ambient.d.ts index b884ca080..e4269ae8b 100644 --- a/packages/generator-typescript/templates/gjs/module-ambient.d.ts +++ b/packages/generator-typescript/templates/gjs/module-ambient.d.ts @@ -18,7 +18,6 @@ declare module 'gi://<%= name %>?version=<%= version %>' { <%# // Generate ambient module declarations Without version number if there are no conflicts or the target is an NPM package _%> <%_ if (dep.isLatestVersion(pkg.namespace, pkg.version)) { _%> declare module 'gi://<%= name %>' { - <%- moduleImportStr %>; - export default <%- girModule.importNamespace -%>; + export * from 'gi://<%= name %>?version=<%= version %>'; } <%_ } _%> \ No newline at end of file diff --git a/packages/generator-typescript/templates/gjs/module-noNamespace.d.ts b/packages/generator-typescript/templates/gjs/module-noNamespace.d.ts new file mode 100644 index 000000000..f241b6cad --- /dev/null +++ b/packages/generator-typescript/templates/gjs/module-noNamespace.d.ts @@ -0,0 +1,7 @@ +<%# This EJS template is used for the generated .d.ts file of each GIR module like Gtk-4.0, GObject-2.0, ... %> +/* + * Type Definitions for Gjs (https://gjs.guide/) + * + * These type definitions are automatically generated, do not edit them by hand. + * If you found a bug fix it in `<%= APP_NAME %>` or create a bug report on <%= APP_SOURCE %> + */ diff --git a/packages/generator-typescript/templates/granite-1.0.d.ts b/packages/generator-typescript/templates/granite-1.0.d.ts index 7f0647c3c..2d76ed4b8 100644 --- a/packages/generator-typescript/templates/granite-1.0.d.ts +++ b/packages/generator-typescript/templates/granite-1.0.d.ts @@ -1,7 +1,7 @@ // Workaround /** @ignore */ export module GraniteServicesSettingsSerializable { - export interface ConstructorProperties extends ServicesSettingsSerializable.ConstructorProperties {} + export interface ConstructorProps extends ServicesSettingsSerializable.ConstructorProps {} } /** @ignore */ export interface GraniteServicesSettingsSerializable extends ServicesSettingsSerializable {} \ No newline at end of file diff --git a/packages/generator-typescript/templates/granite-7.0.d.ts b/packages/generator-typescript/templates/granite-7.0.d.ts index 7f0647c3c..2d76ed4b8 100644 --- a/packages/generator-typescript/templates/granite-7.0.d.ts +++ b/packages/generator-typescript/templates/granite-7.0.d.ts @@ -1,7 +1,7 @@ // Workaround /** @ignore */ export module GraniteServicesSettingsSerializable { - export interface ConstructorProperties extends ServicesSettingsSerializable.ConstructorProperties {} + export interface ConstructorProps extends ServicesSettingsSerializable.ConstructorProps {} } /** @ignore */ export interface GraniteServicesSettingsSerializable extends ServicesSettingsSerializable {} \ No newline at end of file diff --git a/packages/generator-typescript/templates/gstbase-0.10.d.ts b/packages/generator-typescript/templates/gstbase-0.10.d.ts index 7fd1f25d3..735254f41 100644 --- a/packages/generator-typescript/templates/gstbase-0.10.d.ts +++ b/packages/generator-typescript/templates/gstbase-0.10.d.ts @@ -1,5 +1,5 @@ // Workaround /** @ignore */ export module BaseSink { - export type ConstructorProperties = Gst.BaseSink.ConstructorProperties; + export type ConstructorProps = Gst.BaseSink.ConstructorProps; } diff --git a/packages/lib/src/dependency-manager.ts b/packages/lib/src/dependency-manager.ts index b8b4cfe5c..40645098c 100644 --- a/packages/lib/src/dependency-manager.ts +++ b/packages/lib/src/dependency-manager.ts @@ -6,7 +6,7 @@ import type { Dependency, GenerateConfig, GirInclude } from './types/index.js' import type { GirModule } from './gir-module.js' import { GirNSRegistry } from './registry.js' -export class DependencyManager { +export class DependencyManager extends GirNSRegistry { protected log: Logger protected transformation: Transformation registry = new GirNSRegistry() @@ -16,6 +16,8 @@ export class DependencyManager { static instance?: DependencyManager protected constructor(protected readonly config: GenerateConfig) { + super() + this.transformation = new Transformation(config) this.log = new Logger(config.verbose, 'DependencyManager') } diff --git a/packages/lib/src/generators/dts-inline.ts b/packages/lib/src/generators/dts-inline.ts index 84c650662..cb66c52eb 100644 --- a/packages/lib/src/generators/dts-inline.ts +++ b/packages/lib/src/generators/dts-inline.ts @@ -56,18 +56,7 @@ export class DtsInlineGenerator extends DtsGenerator { }) .join("\n"); - const versionedImports = true; // TODO: options.versionedImports - // Resolve imports after we stringify everything else, sometimes we have to ad-hoc add an import. - const imports = Array.from(node.getImports()) - .map( - ([i, version]) => - `import * as ${i} from "${options.npmScope}${i.toLowerCase()}${ - versionedImports ? version.toLowerCase().split(".")[0] : "" - }";` - ) - .join(`${"\n"}`); - - const output = [header, imports, base, content, suffix].join("\n\n"); + const output = [header, base, content, suffix].join("\n\n"); if (options.verbose) { console.debug(`Printing ${namespace.name}...`); diff --git a/packages/lib/src/generators/dts-modules.ts b/packages/lib/src/generators/dts-modules.ts index 82af35027..81cfa4b52 100644 --- a/packages/lib/src/generators/dts-modules.ts +++ b/packages/lib/src/generators/dts-modules.ts @@ -5,7 +5,7 @@ import { GenerationOptions } from "../types.js"; import { override as overrideGLib } from "./dts/glib.js"; import { override as overrideGObject } from "./dts/gobject.js"; import { override as overrideGio } from "./dts/gio.js"; -import { DtsGenerator, versionImportFormat } from "./dts.js"; +import { DtsGenerator } from "./dts.js"; import { IntrospectedNamespaceMember } from "../gir/base.js"; export class DtsModuleGenerator extends DtsGenerator { @@ -60,30 +60,8 @@ export class DtsModuleGenerator extends DtsGenerator { }) .join("\n"); - const versionedImports = true; // TODO options.versionedImports - const pathSuffix = "/index.d.ts"; - const referenceType = "path"; - const references = [ - ...(node.__dts__references ?? []), - ...Array.from(node.getImports()).map( - ([i, version]) => - `/// ` - ) - ].join("\n"); - // Resolve imports after we stringify everything else, sometimes we have to ad-hoc add an import. - const imports = Array.from(node.getImports()) - .map(([i, version]) => `import ${i} from 'gi://${i}${versionedImports ? `?version=${version}` : ""}';`) - .join("\n"); + const imports = []; const metadata = ` /** @@ -115,7 +93,6 @@ export const __version__: string; }`; const output = [ - references, header, versionedModuleHeader, imports, diff --git a/packages/lib/src/generators/dts.ts b/packages/lib/src/generators/dts.ts index c6777c283..2f2c519f2 100644 --- a/packages/lib/src/generators/dts.ts +++ b/packages/lib/src/generators/dts.ts @@ -329,7 +329,7 @@ ${this.docString(node)}export enum ${node.name} { : "" } export type ${name}${Generics} = ${name}Prototype${GenericTypes}; -export interface ${name}Prototype${Generics}${Extends} {${node.indexSignature ? `\n${node.indexSignature}\n` : ""} +export interface ${name}Prototype${Generics}${Extends} {${node.__ts__indexSignature ? `\n${node.__ts__indexSignature}\n` : ""} ${node.props.length > 0 ? "// Properties" : ""} ${filterConflicts(node.namespace, node, node.props) .map(p => p.asString(this)) @@ -395,7 +395,7 @@ export interface ${name}Prototype${Generics}${Extends} {${node.indexSignature ? } ${this.docString(node)}export class ${name}${Generics}${Extends} {${ - node.indexSignature ? `\n${node.indexSignature}\n` : "" + node.__ts__indexSignature ? `\n${node.__ts__indexSignature}\n` : "" } static $gtype: ${namespace.name !== "GObject" ? "GObject." : ""}GType<${name}>; @@ -620,7 +620,7 @@ ${this.docString(node)}export class ${name}${Generics}${Extends} {${ : "" } export ${node.isAbstract ? "abstract " : ""}class ${name}${Generics}${Extends}${Implements} {${ - node.indexSignature ? `\n${node.indexSignature}\n` : "" + node.__ts__indexSignature ? `\n${node.__ts__indexSignature}\n` : "" } static $gtype: ${namespace.name !== "GObject" ? "GObject." : ""}GType<${name}>; @@ -692,14 +692,12 @@ ${this.docString(node)}export class ${name}${Generics}${Extends} {${ switch (type.conflictType) { case ConflictType.FUNCTION_NAME_CONFLICT: case ConflictType.FIELD_NAME_CONFLICT: - getterSetterAnnotation = - setterAnnotation = `// This accessor conflicts with a property, field, or function name in a parent class or interface. - // @ts-expect-error\n`; + getterSetterAnnotation = setterAnnotation = + "// This accessor conflicts with a property, field, or function name in a parent class or interface.\n"; case ConflictType.ACCESSOR_PROPERTY_CONFLICT: - getterSetterAnnotation = - getterAnnotation = `// This accessor conflicts with a property, field, or function name in a parent class or interface. - // @ts-expect-error\n`; - type = type.unwrap(); + getterSetterAnnotation = getterAnnotation = + "// This accessor conflicts with a property, field, or function name in a parent class or interface.\n"; + type = new BinaryType(type.unwrap(), AnyType); break; case ConflictType.PROPERTY_ACCESSOR_CONFLICT: type = new BinaryType(type.unwrap(), AnyType); diff --git a/packages/lib/src/generators/json.ts b/packages/lib/src/generators/json.ts index c4b70949b..29d9eb9fc 100644 --- a/packages/lib/src/generators/json.ts +++ b/packages/lib/src/generators/json.ts @@ -1281,7 +1281,7 @@ export class JsonGenerator extends FormatGenerator { .map(m => m.asString(this)); // Resolve imports after we stringify everything else, sometimes we have to ad-hoc add an import. - const imports = node.getImports(); + const imports = []; return Promise.resolve({ kind: NodeKind.namespace, diff --git a/packages/lib/src/generics/clutter.ts b/packages/lib/src/generics/clutter.ts index 247066395..015bd1d9f 100644 --- a/packages/lib/src/generics/clutter.ts +++ b/packages/lib/src/generics/clutter.ts @@ -1,8 +1,9 @@ import { GenericType } from "../gir.js"; import { IntrospectedNamespace } from "../gir/namespace.js"; -export default { +export const clutterTemplate = (version: string) => ({ namespace: "Clutter", + version, modifier: (namespace: IntrospectedNamespace, inferGenerics: boolean) => { if (!inferGenerics) { return; @@ -50,4 +51,9 @@ export default { prop.type = new GenericType("A", Content.getType()); }); } -}; +}); + +export const clutter10 = clutterTemplate("10"); +export const clutter11 = clutterTemplate("11"); +export const clutter12 = clutterTemplate("12"); +export const clutter13 = clutterTemplate("13"); diff --git a/packages/lib/src/generics/generify.ts b/packages/lib/src/generics/generify.ts index 821b319ad..52d0a833f 100644 --- a/packages/lib/src/generics/generify.ts +++ b/packages/lib/src/generics/generify.ts @@ -1,8 +1,8 @@ import gio from "./gio.js"; import glib from "./glib.js"; -import clutter from "./clutter.js"; -import st from "./st.js"; -import meta from "./meta.js"; +import { clutter10, clutter11, clutter12, clutter13 } from "./clutter.js"; +import { st1, st12, st13 } from "./st.js"; +import { meta10, meta11, meta12, meta13 } from "./meta.js"; import { IntrospectedNamespace } from "../gir/namespace.js"; import { NSRegistry } from "../gir/registry.js"; @@ -11,20 +11,17 @@ import { GenericVisitor } from "./visitor.js"; type NamespaceModifier = (namespace: IntrospectedNamespace, inferGenerics: boolean) => void; function generifyDefinitions(registry: NSRegistry, inferGenerics: boolean, required: boolean = true) { - return (definition: { namespace: string; version?: string; modifier: NamespaceModifier }) => { - const version = definition?.version ?? registry.defaultVersionOf(definition.namespace); + return (definition: { namespace: string; version: string; modifier: NamespaceModifier }) => { + const version = definition.version; + const ns = registry.namespace(definition.namespace, version); - if (version) { - const ns = registry.namespace(definition.namespace, version); - - if (ns) { - definition.modifier(ns, inferGenerics); - return; - } + if (ns) { + definition.modifier(ns, inferGenerics); + return; } if (required) { - console.error(`Failed to generify ${definition.namespace}`); + throw new Error(`Could not generify ${definition.namespace} ${definition.version}`); } }; } @@ -37,9 +34,17 @@ export function generify(registry: NSRegistry, inferGenerics: boolean) { const $_ = generifyDefinitions(registry, inferGenerics, false); - $_(clutter); - $_(st); - $_(meta); + $_(clutter10); + $_(clutter11); + $_(clutter12); + $_(clutter13); + $_(st1); + $_(st12); + $_(st13); + $_(meta10); + $_(meta11); + $_(meta12); + $_(meta13); const visitor = new GenericVisitor(registry, inferGenerics); diff --git a/packages/lib/src/generics/meta.ts b/packages/lib/src/generics/meta.ts index 5cbb63c8f..18899fadf 100644 --- a/packages/lib/src/generics/meta.ts +++ b/packages/lib/src/generics/meta.ts @@ -1,8 +1,9 @@ import { GenerifiedTypeIdentifier } from "../gir.js"; import { IntrospectedNamespace } from "../gir/namespace.js"; -export default { +const metaTemplate = (version: string) => ({ namespace: "Meta", + version, modifier: (namespace: IntrospectedNamespace, inferGenerics: boolean) => { if (!inferGenerics) { return; @@ -24,4 +25,9 @@ export default { ]); } } -}; +}); + +export const meta10 = metaTemplate("10"); +export const meta11 = metaTemplate("11"); +export const meta12 = metaTemplate("12"); +export const meta13 = metaTemplate("13"); diff --git a/packages/lib/src/generics/st.ts b/packages/lib/src/generics/st.ts index ec150e07c..7765e88b6 100644 --- a/packages/lib/src/generics/st.ts +++ b/packages/lib/src/generics/st.ts @@ -1,9 +1,9 @@ import { GenericType, GenerifiedTypeIdentifier } from "../gir.js"; import { IntrospectedNamespace } from "../gir/namespace.js"; -export default { +const stTemplate = (version: string) => ({ namespace: "St", - version: "1.0", + version, modifier: (namespace: IntrospectedNamespace, inferGenerics: boolean) => { if (!inferGenerics) { return; @@ -109,4 +109,8 @@ export default { prop.type = new GenericType("A", Actor.getType()); }); } -}; +}); + +export const st1 = stTemplate("1.0"); +export const st12 = stTemplate("12"); +export const st13 = stTemplate("13"); diff --git a/packages/lib/src/generics/visitor.ts b/packages/lib/src/generics/visitor.ts index 9b59b4a2f..3c59d6967 100644 --- a/packages/lib/src/generics/visitor.ts +++ b/packages/lib/src/generics/visitor.ts @@ -1,4 +1,12 @@ -import { ClosureType, GenericType, Generic, TypeIdentifier, GenerifiedTypeIdentifier, ThisType } from "../gir.js"; +import { + ClosureType, + GenericType, + Generic, + TypeIdentifier, + GenerifiedTypeIdentifier, + ThisType, + IntrospectedEnum +} from "../gir.js"; import { IntrospectedClass, IntrospectedBaseClass, IntrospectedInterface } from "../gir/class.js"; import { IntrospectedCallback, @@ -278,7 +286,7 @@ export class GenericVisitor extends GirVisitor { return node; }; - private generifyStandaloneClassFunction = (node: IntrospectedClassFunction) => { + private generifyStandaloneClassFunction = (node: T): T => { const unwrapped = node.return().unwrap(); if (node.parent.getType().is("GObject", "Object")) { @@ -294,7 +302,8 @@ export class GenericVisitor extends GirVisitor { copied.generics.push(new Generic(genericReturnType, unwrapped, unwrapped)); - return copied; + // TODO: .copy() isn't generic. + return copied as T; } return node; @@ -308,7 +317,7 @@ export class GenericVisitor extends GirVisitor { return node; }; - visitClassFunction = (node: IntrospectedClassFunction) => { + visitClassFunction = (node: IntrospectedClassFunction) => { if (node.parent instanceof IntrospectedBaseClass) { const clazz = node.parent; diff --git a/packages/lib/src/gir-module.ts b/packages/lib/src/gir-module.ts index 9ad7a3873..70c9e847b 100644 --- a/packages/lib/src/gir-module.ts +++ b/packages/lib/src/gir-module.ts @@ -2,30 +2,23 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import { Transformation, IGNORE_GIR_TYPE_TS_DOC_TYPES } from './transformation.js' import { Logger } from './logger.js' -import { Injector } from './injection/injector.js' import { GirFactory } from './gir-factory.js' import { ConflictResolver } from './conflict-resolver.js' import { DependencyManager } from './dependency-manager.js' -import { find, girBool } from './utils.js' +import { find } from './utils.js' import { SymTable } from './symtable.js' import { LibraryVersion } from './library-version.js' import type { Dependency, GirRepository, - GirAliasElement, GirFunctionElement, - GirArrayType, GirType, - GirCallableParamElement, GirVirtualMethodElement, GirSignalElement, - GirCallableReturn, GirCallbackElement, GirConstantElement, - GirFieldElement, GirMethodElement, - GirPropertyElement, GirConstructorElement, GirDocElement, TsDoc, @@ -33,6 +26,7 @@ import type { ParsedGir, GirInfoAttrs, GenerateConfig, + PromisifyFunc, } from './types/index.js' import { ClosureType, @@ -55,8 +49,8 @@ import { IntrospectedFunction, IntrospectedCallback, IntrospectedClassCallback, - IntrospectedClassFunction, IntrospectedFunctionParameter, + IntrospectedClassFunction, } from './gir/function.js' import { NSRegistry } from './gir/registry.js' import { isPrimitiveType } from './gir/util.js' @@ -84,6 +78,8 @@ export class GirModule { importName!: string + prefixes: string[] = [] + /** * The version of the library as an object. * E.g. `{ major: 4, minor: 0, patch: 0 }` or as string `4.0.0`' @@ -120,8 +116,6 @@ export class GirModule { log!: Logger - inject!: Injector - extends?: string /** @@ -133,9 +127,6 @@ export class GirModule { readonly name: string readonly c_prefixes: string[] - private imports: Map = new Map() - default_imports: Map = new Map() - private _members?: Map private _enum_constants?: Map private _resolve_names: Map = new Map() @@ -325,645 +316,96 @@ export class GirModule { } } - // /** - // * Annotates the custom `_module`, `_fullSymName` and `_girType` properties. - // * Also registers the element on the `symTable`. - // * @param girElements - // * @param girType - // */ - // private annotateAndRegisterGirElement(girElements: GirAnyElement[]): void { - // for (const girElement of girElements) { - // if (girElement?.$ && girElement.$.name) { - // // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument - // if (!girElementIsIntrospectable(girElement as any)) continue - - // girElement._module = this - // girElement._fullSymName = `${this.namespace}.${girElement.$.name}` - // if (this.symTable.get(this.allDependencies, girElement._fullSymName)) { - // this.log.warn(WARN_DUPLICATE_SYMBOL(girElement._fullSymName)) - // } - - // this.symTable.set(this.allDependencies, girElement._fullSymName, girElement) - // } - // } - // } - - // /** - // * TODO: find better name for this method - // * @param girVar - // * @param fullTypeName - // * @returns e.g. - // * ```ts - // * { - // * namespace: "Gtk", - // * resValue: "Gtk.Widget" - // * } - // * - // */ - // private fullTypeLookup( - // girVar: - // | GirCallableParamElement - // | GirCallableReturn - // | GirFieldElement - // | GirAliasElement - // | GirPropertyElement - // | GirConstantElement, - // fullTypeName: string | null, - // ) { - // let resValue = '' - // let namespace = '' - - // if (!fullTypeName) { - // return { - // value: resValue, - // fullTypeName, - // namespace, - // } - // } - - // // Fully qualify our type name - // if (!fullTypeName.includes('.')) { - // let tryFullTypeName = '' - - // if (!resValue && girVar._module && girVar._module !== this) { - // tryFullTypeName = `${girVar._module.namespace}.${fullTypeName}` - // resValue = this.fullTypeLookupWithNamespace(tryFullTypeName).value - // if (resValue) { - // fullTypeName = tryFullTypeName - // namespace = girVar._module.namespace - // } - // } - - // if (!resValue) { - // tryFullTypeName = `${this.namespace}.${fullTypeName}` - // resValue = this.fullTypeLookupWithNamespace(tryFullTypeName).value - // if (resValue) { - // fullTypeName = tryFullTypeName - // namespace = this.namespace - // } - // } - - // const girClass = ( - // girVar as - // | GirCallableParamElement - // | GirCallableReturn - // | GirFieldElement - // | GirAliasElement - // | GirPropertyElement - // )._class as GirClassElement | undefined - - // if (!resValue && girClass?._module?.namespace && girClass._module !== this) { - // tryFullTypeName = `${girClass._module.namespace}.${fullTypeName}` - // resValue = this.fullTypeLookupWithNamespace(tryFullTypeName).value - // if (resValue) { - // fullTypeName = tryFullTypeName - // namespace = girClass?._module?.namespace - // } - // } - // } - - // if (!resValue && fullTypeName) { - // resValue = this.fullTypeLookupWithNamespace(fullTypeName).value - // } - - // return { - // value: resValue, - // namespace, - // } - // } - - // /** - // * this method needs to be refactored, an array can also be an array of an array for example - // * @param girVar - // * @returns - // */ - - // private arrayLengthIndexLookup(girVar: GirCallableParamElement): number { - // if (!girVar.array) return -1 - - // const arr: GirArrayType = girVar.array[0] - // if (!arr.$) return -1 - - // if (arr.$.length) { - // return parseInt(arr.$.length) - // } - - // return -1 - // } - - // private closureDataIndexLookup(girVar: GirCallableParamElement): number { - // if (!girVar.$.closure) return -1 - - // return parseInt(girVar.$.closure) - // } - - // private destroyDataIndexLookup(girVar: GirCallableParamElement): number { - // if (!girVar.$.destroy) return -1 - - // return parseInt(girVar.$.destroy) - // } - - // private processParams( - // params: GirCallableParamElement[], - // skip: GirCallableParamElement[], - // getIndex: (param: GirCallableParamElement) => number, - // ): void { - // for (const param of params) { - // const index = getIndex(param) - // if (index < 0) continue - // if (index >= params.length) continue - // skip.push(params[index]) - // } - // } - - // /** - // * Checks if the parameter is nullable (which results in ` | null`). - // * - // * @param girVar girVar to test - // */ - // private typeIsNullable( - // girVar: - // | GirCallableParamElement - // | GirCallableReturn - // | GirAliasElement - // | GirFieldElement - // | GirConstantElement - // | GirPropertyElement, - // girTypeName: GirTypeName, - // ): boolean { - // const a = (girVar as GirCallableParamElement).$ - - // if (!a) return false - - // const type: GirType | undefined = girVar.type?.[0] - // const cType = type?.$?.['c:type'] - - // // Ignore depreciated `allow-none` if one of the new implementation `optional` or `nullable` is set - // if (a.optional || a.nullable) { - // return girBool(a.nullable) - // } - - // if (girTypeName === 'constant') { - // return false // constants are never nullable - // } - - // // UTF-8 string pointers can be null, e.g. `gchar*`, see https://github.com/gjsify/ts-for-gir/issues/108 - // if (type?.$?.name === 'utf8' && !cType?.startsWith('const ') && cType?.endsWith('*')) { - // return true - // } - - // // If the default value is NULL, handle this as nullable - // if (a['default-value'] === 'NULL') { - // return true - // } - - // return girBool(a.nullable) || girBool(a['allow-none']) || girBool(a['null-ok']) - // } - - // /** - // * Checks if the parameter is optional (which results in `foo?: bar`). - // * @param girVar girVar to test - // */ - // private typeIsOptional( - // girVar: - // | GirCallableParamElement - // | GirCallableReturn - // | GirAliasElement - // | GirFieldElement - // | GirConstantElement - // | GirPropertyElement, - // girTypeName: GirTypeName, - // ): boolean { - // const a = (girVar as GirCallableParamElement).$ - // if (!a) return false - - // // Ignore depreciated `allow-none` if one of the new implementation `optional` or `nullable` is set - // if (a.optional || a.nullable) { - // return girBool(a.optional) - // } - - // if (girTypeName === 'constant') { - // return false // constants are never optional - // } - - // return girBool(a.optional) || girBool(a['allow-none']) || girBool(a['null-ok']) - // } - - // /** - // * Checks if the property is readonly. - // * @param girCallback - // */ - // private typeIsReadonly(girProp: GirPropertyElement | GirFieldElement): boolean { - // const cType = girProp.type?.[0].$?.['c:type'] - // return ( - // !girBool(girProp.$.writable) || - // girBool((girProp as GirPropertyElement).$['construct-only']) || - // (cType ? cType.startsWith('const ') : false) // c type is const and therefore readonly, isn't? - // ) - // } - - // private setParameterTsData( - // girParam: GirCallableParamElement, - // girParams: GirCallableParamElement[], - // paramNames: string[], - // skip: GirCallableParamElement[], - // parent: TsFunction | TsSignal, - // ) { - // // I think it's safest to force inout params to have the - // // same type for in and out - // const tsType = this.getTsType(girParam, parent.parent) - // // const optDirection = girParam.$.direction - - // if (girParam._tsData) { - // // this.log.warn('[setParameterTsData] _tsData already set!') - // return girParam._tsData - // } - - // if (tsType.isCallback) { - // throw new Error('Callback type is not implemented here') - // } - - // let paramName = this.transformation.transformParameterName(girParam, false) - - // if (paramNames.includes(paramName)) { - // this.log.warn(WARN_DUPLICATE_PARAMETER(paramName, girParam._fullSymName)) - // paramName += '_' - // } - // paramNames.push(paramName) - - // // In Typescript no optional parameters are allowed if the following ones are not optional - // if (tsType.optional) { - // const index = girParams.indexOf(girParam) - // const following = girParams - // .slice(index) - // .filter(() => skip.indexOf(girParam) === -1) - // .filter((p) => p.$.direction !== GirDirection.Out) - - // if (following.some((p) => !this.typeIsOptional(p))) { - // tsType.optional = false - // } - // } - - // const tsParam: TsParameter = { - // name: paramName, - // type: [tsType], - // isRest: false, - // girTypeName: 'callable-param', - // doc: this.getTsDoc(girParam), - // parent, - // } - - // girParam._tsData = tsParam - - // // // TODO: remove this, wee need a special solution for Gio.AsyncReadyCallback instead - // girParam = this.inject.toParameterType(girParam) - - // return girParam._tsData - // } - - // private setParametersTsData( - // outArrayLengthIndex: number, - // girParams: GirCallableParams[] = [], - // parent: TsFunction | TsCallback, - // ) { - // const outParams: GirCallableParamElement[] = [] - // const inParams: GirCallableParamElement[] = [] - // const paramNames: string[] = [] - // const instanceParameters: GirInstanceParameter[] = [] - - // if (girParams && girParams.length > 0) { - // for (const girParam of girParams) { - // const params = girParam?.parameter || [] - - // // Instance parameter needs to be exposed for class methods (see comment above getClassMethods()) - // const instanceParameter = girParams[0]['instance-parameter']?.[0] - // if (instanceParameter) { - // } - // if (params.length) { - // const skip = outArrayLengthIndex === -1 ? [] : [params[outArrayLengthIndex]] - - // this.processParams(params, skip, (girVar) => this.arrayLengthIndexLookup(girVar)) - // this.processParams(params, skip, (girVar) => this.closureDataIndexLookup(girVar)) - // this.processParams(params, skip, (girVar) => this.destroyDataIndexLookup(girVar)) - - // for (const param of params) { - // if (skip.includes(param)) { - // continue - // } - - // param._tsData = this.setParameterTsData(param, params, paramNames, skip, parent) - - // const optDirection = param.$.direction - // if ( - // optDirection === GirDirection.Out || - // optDirection === GirDirection.Inout || - // optDirection === GirDirection.InOut - // ) { - // outParams.push(param) - // if (optDirection === GirDirection.Out) continue - // } - // inParams.push(param) - // } - // } - // } - // } - - // return { outParams, paramNames, inParams, instanceParameters } - // } - - // overloadPromisifiedFunctions(girFunctions: GirFunctionElement[]): void { - // if (!this.config.promisify) return - - // const promisifyAsyncReturn = ['Gio.AsyncReadyCallback', 'AsyncReadyCallback'] - // const promisifyFuncMap = {} as { [name: string]: PromisifyFunc } - - // // Find the functions that can be promisified - // for (const girFunction of girFunctions) { - // const tsFunction = girFunction._tsData - // if (!tsFunction) continue - - // // Check if function name satisfies async,finish scheme - // const isAsync = tsFunction.name.endsWith('_async') || tsFunction.name.endsWith('_begin') - // const isFinish = tsFunction.name.endsWith('_finish') - // if (!isAsync && !isFinish) continue - - // // Handle async functions - // if (isAsync) { - // if (tsFunction.inParams.length === 0) continue - // const lastParam = tsFunction.inParams[tsFunction.inParams.length - 1] - // if (lastParam.type && lastParam.type.length > 0) { - // const type = lastParam.type[0].$.name - // if (type && promisifyAsyncReturn.includes(type)) { - // if (!(tsFunction.name in promisifyFuncMap)) promisifyFuncMap[tsFunction.name] = {} - // promisifyFuncMap[tsFunction.name].asyncFn = tsFunction - // } - // } - // } - - // // Handle finish functions - // if (isFinish) { - // if (tsFunction.returnTypes.length === 0) continue - // let name = `${tsFunction.name.replace(/(_finish)$/, '')}_async` - // if (!(name in promisifyFuncMap)) name = `${tsFunction.name.replace(/(_finish)$/, '')}_begin` - // if (!(name in promisifyFuncMap)) promisifyFuncMap[name] = {} - // promisifyFuncMap[name].finishFn = tsFunction - // } - // } - - // // Generate TsFunctions for promisify-able functions and add to the array - // for (const [, func] of Object.entries(promisifyFuncMap)) { - // if (!func.asyncFn || !func.finishFn) continue - - // const inParams = this.girFactory.newGirCallableParamElements( - // func.asyncFn.inParams.slice(0, -1), - // func.asyncFn, - // ) - - // const outParams = this.girFactory.newGirCallableParamElements(func.finishFn.outParams, func.asyncFn) - - // const returnTypes = this.girFactory.newTsTypes(outParams.length > 0 ? [] : func.finishFn.returnTypes) - - // let docReturnText = func.finishFn.doc.tags.find((tag) => tag.tagName === 'returns')?.text || '' - // if (docReturnText) { - // docReturnText = `A Promise of: ${docReturnText}` - // } else { - // docReturnText = `A Promise of the result of {@link ${func.asyncFn.name}}` - // } - - // const docText = `Promisified version of {@link ${func.asyncFn.name}}\n\n${func.asyncFn.doc.text}` - - // const docTags = func.asyncFn.doc.tags.filter( - // (tag) => tag.paramName !== 'callback' && tag.paramName !== 'returns', - // ) - - // docTags.push({ - // tagName: 'returns', - // text: docReturnText, - // paramName: '', - // }) - - // const doc = this.girFactory.newTsDoc({ - // text: docText, - // tags: docTags, - // }) - - // const promisifyFn = this.girFactory.newTsFunction( - // { - // ...func.asyncFn, - // inParams, - // outParams, - // returnTypes, - // isPromise: true, - // doc, - // }, - // func.asyncFn.parent, - // ) - - // func.asyncFn.overloads.push(promisifyFn) - // } - // } - - // private getConstantTsData(girConst: GirConstantElement, tsClass: TsClass | null) { - // if (!girElementIsIntrospectable(girConst)) return undefined - - // if (girConst._tsData) { - // // this.log.warn('[getConstantTsData] _tsData already set!') - // return girConst._tsData - // } - - // let tsData: TsVar | undefined = this.getVariableTsData( - // girConst, - // 'constant', - // 'constant', - // tsClass, - // false, - // false, - // false, - // ) - // if (tsData?.name) { - // if (!this.constNames[tsData.name]) { - // this.constNames[tsData.name] = girConst - // } else { - // this.log.warn(WARN_CONSTANT_ALREADY_EXPORTED(tsData.name)) - // tsData = undefined - // } - // } - // return tsData - // } - - // private getClassConstructPropsTsData( - // girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, - // constructPropNames: LocalNames, - // ) { - // const constructProps: GirPropertyElement[] = [] - // const girProperties = (girClass as GirClassElement | GirInterfaceElement).property - // if (!girProperties?.length) { - // return constructProps - // } - // for (const girProp of girProperties) { - // if (!girElementIsIntrospectable(girProp) || !girProp.$.name) continue - // // Do not modify the original girProp, create a new one by clone `girProp` to `girConstrProp` - // const girConstrProp = clone(girProp) - - // if (!girClass._tsData) continue - - // if (!girConstrProp._tsData) { - // girConstrProp._tsData = this.getPropertyTsData( - // girConstrProp, - // 'property', - // 'constructor-property', - // girClass._tsData, - // true, - // true, - // true, - // 0, - // ) - // } - - // if (!girConstrProp._tsData) { - // continue - // } - - // const localName = this.checkOrSetLocalName(girConstrProp, constructPropNames, 'property') - - // if (!localName?.added) { - // continue - // } - - // if (girConstrProp._fullSymName) - // this.symTable.set(this.allDependencies, girConstrProp._fullSymName, girConstrProp) - // constructProps.push(girConstrProp) - // } - - // return constructProps - // } - - // /** - // * Some class/static methods are defined in a separate record which is not - // * exported, but the methods are available as members of the JS constructor. - // * In gjs one can use an instance of the object, a JS constructor or a GType - // * as the method's instance-parameter. - // * @see https://discourse.gnome.org/t/using-class-methods-like-gtk-widget-class-get-css-name-from-gjs/4001 - // * @param girClass - // */ - // private getClassRecordMethods( - // girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement, - // ): GirMethodElement[] { - // const girMethods: GirMethodElement[] = [] - - // if (!girClass.$.name) return girMethods - // const fName = girClass.$.name + 'Class' - // let rec = this.ns.record?.find((r) => r.$.name == fName) - // if (!rec || !this.isGtypeStructFor(girClass, rec)) { - // rec = this.ns.record?.find((r) => this.isGtypeStructFor(girClass, r)) - // fName == rec?.$.name - // } - // if (!rec) return girMethods - - // // Record methods - // const methods = rec.method || [] - - // for (const girMethod of methods) { - // if (!girElementIsIntrospectable(girMethod) || !girClass._tsData) continue - - // if (!girMethod._tsData) - // girMethod._tsData = this.getFunctionTsData(girMethod, 'static-function', girClass._tsData, { - // isStatic: true, - // isArrowType: false, - // isGlobal: false, - // isVirtual: false, - // returnType: null, - // generics: [], - // }) - - // if (!girMethod._tsData) continue - - // if (girMethod._tsData) { - // if (girMethod._fullSymName) this.symTable.set(this.allDependencies, girMethod._fullSymName, girMethod) - // girMethods.push(girMethod) - // } - // } - - // this.overloadPromisifiedFunctions(methods) - - // return girMethods - // } - - // private getGObjectProperties(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement) { - // const girProperties: GirPropertyElement[] = [] - // if (girClass._fullSymName && !STATIC_NAME_ALREADY_EXISTS.includes(girClass._fullSymName)) { - // // Records, classes and interfaces all have a static name - // const type = this.girFactory.newTsType({ type: 'string' }) - // const staticNameProp = this.girFactory.newGirProperty({ - // isStatic: true, - // name: 'name', - // type: [type], - // girTypeName: 'property', - // }) - // girProperties.push(staticNameProp) - // } - - // if (girClass._tsData?.isDerivedFromGObject && girClass._module) { - // if (this.config.environment === 'gjs') { - // const type = this.girFactory.newTsType({ - // // TODO: Type not as string - // type: 'GObject.GType', - // generics: this.girFactory.newGenerics([ - // { - // value: girClass._tsData.name, - // }, - // ]), - // }) - // const staticGTypeProp = this.girFactory.newGirProperty({ - // isStatic: true, - // name: '$gtype', - // type: [type], - // girTypeName: 'property', - // }) - // girProperties.push(staticGTypeProp) - // } - // } - - // return girProperties - // } - - getClassParentObject(parentName: string, namespace: string, type: 'parent' | 'prerequisite' | 'implements') { - let qualifiedParentName: string - let parentModName: string - - // WORKAROUND: Fix wrong parent names - if ( - (this.packageName === 'GstAudio-0.10' || this.packageName === 'ClutterGst-1.0') && - (parentName === 'GstBase.BaseTransform' || - parentName === 'GstBase.BaseSink' || - parentName === 'GstBase.PushSrc') - ) { - const rename = parentName.replace('GstBase.', 'Gst.') - this.log.warn(`[getClassParentObject] Rename parent class "${parentName}" -> "${rename}"`) - parentName = rename + overloadPromisifiedFunctions(girFunctions: GirFunctionElement[]): void { + if (!this.config.promisify) return + + const promisifyAsyncReturn = ['Gio.AsyncReadyCallback', 'AsyncReadyCallback'] + const promisifyFuncMap = {} as { [name: string]: PromisifyFunc } + + // Find the functions that can be promisified + for (const girFunction of girFunctions) { + const tsFunction = girFunction._tsData + if (!tsFunction) continue + + // Check if function name satisfies async,finish scheme + const isAsync = tsFunction.name.endsWith('_async') || tsFunction.name.endsWith('_begin') + const isFinish = tsFunction.name.endsWith('_finish') + if (!isAsync && !isFinish) continue + + // Handle async functions + if (isAsync) { + if (tsFunction.inParams.length === 0) continue + const lastParam = tsFunction.inParams[tsFunction.inParams.length - 1] + if (lastParam.type && lastParam.type.length > 0) { + const type = lastParam.type[0].$.name + if (type && promisifyAsyncReturn.includes(type)) { + if (!(tsFunction.name in promisifyFuncMap)) promisifyFuncMap[tsFunction.name] = {} + promisifyFuncMap[tsFunction.name].asyncFn = tsFunction + } + } + } + + // Handle finish functions + if (isFinish) { + if (tsFunction.returnTypes.length === 0) continue + let name = `${tsFunction.name.replace(/(_finish)$/, '')}_async` + if (!(name in promisifyFuncMap)) name = `${tsFunction.name.replace(/(_finish)$/, '')}_begin` + if (!(name in promisifyFuncMap)) promisifyFuncMap[name] = {} + promisifyFuncMap[name].finishFn = tsFunction + } } - if (parentName === 'GraniteServicesSettingsSerializable') { - parentName = 'ServicesSettingsSerializable' - this.log.warn( - `[getClassParentObject] Rename parent class "GraniteServicesSettingsSerializable" -> "ServicesSettingsSerializable"`, + // Generate TsFunctions for promisify-able functions and add to the array + for (const [, func] of Object.entries(promisifyFuncMap)) { + if (!func.asyncFn || !func.finishFn) continue + + const inParams = this.girFactory.newGirCallableParamElements( + func.asyncFn.inParams.slice(0, -1), + func.asyncFn, ) - } - if (parentName.indexOf('.') < 0) { - qualifiedParentName = namespace + '.' + parentName - parentModName = namespace - } else { - qualifiedParentName = parentName - const split = parentName.split('.') - parentName = split[split.length - 1] - parentModName = split.slice(0, split.length - 1).join('.') - } - const localParentName = parentModName == namespace ? parentName : qualifiedParentName + const outParams = this.girFactory.newGirCallableParamElements(func.finishFn.outParams, func.asyncFn) + + const returnTypes = this.girFactory.newTsTypes(outParams.length > 0 ? [] : func.finishFn.returnTypes) + + let docReturnText = func.finishFn.doc.tags.find((tag) => tag.tagName === 'returns')?.text || '' + if (docReturnText) { + docReturnText = `A Promise of: ${docReturnText}` + } else { + docReturnText = `A Promise of the result of {@link ${func.asyncFn.name}}` + } - const dependencyExists = !!this.symTable.get(this.allDependencies, qualifiedParentName) + const docText = `Promisified version of {@link ${func.asyncFn.name}}\n\n${func.asyncFn.doc.text}` + + const docTags = func.asyncFn.doc.tags.filter( + (tag) => tag.paramName !== 'callback' && tag.paramName !== 'returns', + ) - // todo + docTags.push({ + tagName: 'returns', + text: docReturnText, + paramName: '', + }) + + const doc = this.girFactory.newTsDoc({ + text: docText, + tags: docTags, + }) + + const promisifyFn = this.girFactory.newTsFunction( + { + ...func.asyncFn, + inParams, + outParams, + returnTypes, + isPromise: true, + doc, + }, + func.asyncFn.parent, + ) + + func.asyncFn.overloads.push(promisifyFn) + } } registerResolveName(resolveName: string, namespace: string, name: string) { @@ -1011,51 +453,71 @@ export class GirModule { return this.parent.namespacesForPrefix(c_prefix) } + // TODO: Move this into the generator hasImport(name: string): boolean { - return this.default_imports.has(name) || this.imports.has(name) + return this.dependencies.some((dep) => dep.importName === name) } private _getImport(name: string): GirModule | null { - let version = this.default_imports.get(name) ?? this.imports.get(name) - if (name === this.name) { return this } - // TODO: Clean this up, but essentially try to resolve import versions - // using transitive imports (e.g. use GtkSource to find the version of Gtk) - if (!version) { - const entries = [...this.default_imports.entries()].flatMap(([_name]) => { - const namespace = this._getImport(_name) + const dep = + this.dependencies.find((dep) => dep.namespace === name) ?? + this.transitiveDependencies.find((dep) => dep.namespace === name) - return [...(namespace?.default_imports.entries() ?? [])] - }) + // Handle finding imports via their other prefixes + if (!dep) { + this.log.info(`Failed to find namespace ${name} in dependencies, resolving via c:prefixes`) - version = Object.fromEntries(entries)[name] - } + // TODO: It might make more sense to move this conversion _before_ + // the _getImport call. + const resolvedNamespaces = this.dependencyManager.namespacesForPrefix(name) + if (resolvedNamespaces.length > 0) { + this.log.info( + `Found namespaces for prefix ${name}: ${resolvedNamespaces.map((r) => `${r.name} (${r.version})`).join(', ')}`, + ) + } - if (!version) { - version = this.parent.assertDefaultVersionOf(name) - } + for (const resolvedNamespace of resolvedNamespaces) { + if (resolvedNamespace.name === this.name && resolvedNamespace.version === this.version) { + return this + } - const namespace = this.parent.namespace(name, version) + const dep = + this.dependencies.find( + (dep) => dep.namespace === resolvedNamespace.name && dep.version === resolvedNamespace.version, + ) ?? + this.transitiveDependencies.find( + (dep) => dep.namespace === resolvedNamespace.name && dep.version === resolvedNamespace.version, + ) - if (namespace) { - if (!this.imports.has(namespace.name)) { - this.imports.set(namespace.name, namespace.version) + if (dep) { + return this.parent.namespace(resolvedNamespace.name, dep.version) + } } } - return namespace + let version = dep?.version + + if (!version) { + version = this.parent.assertDefaultVersionOf(name) + } + + return this.parent.namespace(name, version) } getInstalledImport(name: string): GirModule | null { - let version = this.default_imports.get(name) ?? this.imports.get(name) - if (name === this.name) { return this } + const dep = + this.dependencies.find((dep) => dep.namespace === name) ?? + this.transitiveDependencies.find((dep) => dep.namespace === name) + let version = dep?.version + if (!version) { version = this.parent.defaultVersionOf(name) ?? undefined } @@ -1066,12 +528,6 @@ export class GirModule { const namespace = this.parent.namespace(name, version) - if (namespace) { - if (!this.imports.has(namespace.name)) { - this.imports.set(namespace.name, namespace.version) - } - } - return namespace } @@ -1085,14 +541,6 @@ export class GirModule { return namespace } - getImports(): [string, string][] { - return [...this.imports.entries()].sort(([[a], [b]]) => a.localeCompare(b)) - } - - addImport(ns_name: string) { - this._getImport(ns_name) - } - getMembers(name: string): IntrospectedNamespaceMember[] { const members = this.members.get(name) @@ -1236,7 +684,7 @@ export class GirModule { throw new Error('Invalid GIR file: no version name specified.') } - const c_prefix = ns.$?.['c:symbol-prefixes']?.split(',') ?? [] + const c_prefix = ns.$?.['c:identifier-prefixes']?.split(',') ?? [] if (options.verbose) { console.debug(`Parsing ${modName}...`) @@ -1246,21 +694,16 @@ export class GirModule { building.parent = registry // Set the namespace object here to prevent re-parsing the namespace if // another namespace imports it. - registry.mapping.set(modName, version, building) + registry.register(building) - const includes = repo.repository[0].include || [] + const prefixes = repo.repository[0]?.$?.['c:identifier-prefixes']?.split(',') + const unknownPrefixes = prefixes?.filter((pre) => pre !== modName) - includes - .map((i) => [i.$.name, i.$.version] as const) - .forEach(([name, version]) => { - if (version) { - if (options.verbose) { - console.debug(`Adding dependency ${name} ${version}...`) - } + if (unknownPrefixes && unknownPrefixes.length > 0) { + console.log(`Found additional prefixes for ${modName}: ${unknownPrefixes.join(', ')}`) - building.default_imports.set(name, version) - } - }) + building.prefixes.push(...unknownPrefixes) + } const importConflicts = (el: IntrospectedConstant | IntrospectedBaseClass | IntrospectedFunction) => { return !building.hasImport(el.name) @@ -1406,7 +849,6 @@ export class GirModule { building.log = new Logger(config.verbose, building.packageName || 'GirModule') building.conflictResolver = new ConflictResolver(config.verbose) - building.inject = new Injector() building.importNamespace = building.transformation.transformModuleNamespaceName(building.packageName) building.importName = building.transformation.transformImportName(building.packageName) building.symTable = new SymTable(building.config, building.packageName, building.namespace) diff --git a/packages/lib/src/gir.ts b/packages/lib/src/gir.ts index 3ebe3d12c..6ac2cfa6c 100644 --- a/packages/lib/src/gir.ts +++ b/packages/lib/src/gir.ts @@ -1,7 +1,7 @@ import { IntrospectedNamespace } from './gir/namespace.js' import { IntrospectedProperty, IntrospectedField } from './gir/property.js' import { GenerationOptions } from './types.js' -import { sanitizeIdentifierName } from './gir/util.js' +import { isInvalid, sanitizeIdentifierName, sanitizeNamespace } from './gir/util.js' export { sanitizeMemberName, isInvalid } from './gir/util.js' @@ -12,6 +12,8 @@ export { IntrospectedNamespaceMember, IntrospectedClassMember, } from './gir/base.js' +export { filterConflicts, filterFunctionConflict, FilterBehavior } from './gir/class.js' +export { resolveDirectedType, resolvePrimitiveType } from './gir/util.js' export * from './gir/nodes.js' export abstract class TypeExpression { @@ -64,14 +66,14 @@ export class TypeIdentifier extends TypeExpression { * invalid names such as "3gppProfile" */ sanitize() { - return new TypeIdentifier(sanitizeIdentifierName(this.namespace, this.name), this.namespace) + return new TypeIdentifier(sanitizeIdentifierName(this.namespace, this.name), sanitizeNamespace(this.namespace)) } protected _resolve(namespace: IntrospectedNamespace, options: GenerationOptions): TypeIdentifier | null { const name: string = sanitizeIdentifierName(null, this.name) - const ns_name = this.namespace + const unresolvedNamespaceName = this.namespace - const ns = namespace.assertInstalledImport(ns_name) + const ns = namespace.assertInstalledImport(unresolvedNamespaceName) if (ns.hasSymbol(name)) { const c = ns.getClass(name) @@ -80,7 +82,7 @@ export class TypeIdentifier extends TypeExpression { // GirRecord.prototype.getType resolves this relationship. if (c) return c.getType() - return new TypeIdentifier(name, ns_name) + return new TypeIdentifier(name, ns.name) } // Handle "class callback" types (they're in a definition-merged module) @@ -94,20 +96,24 @@ export class TypeIdentifier extends TypeExpression { let c_resolved_name: string | null = null if (!c_resolved_name) { - c_resolved_name = ns.resolveSymbolFromTypeName(`${ns_name}${name}`) + c_resolved_name = ns.resolveSymbolFromTypeName(`${unresolvedNamespaceName}${name}`) + } + + if (!c_resolved_name) { + c_resolved_name = ns.resolveSymbolFromTypeName(`${ns.name}${name}`) } if (!cb && !resolved_name && !c_resolved_name) { // Don't warn if a missing import is at fault, this will be dealt with later. - if (namespace.name === ns_name) { - console.error(`Attempting to fall back on c:type inference for ${ns_name}.${name}.`) + if (namespace.name === ns.name) { + console.error(`Attempting to fall back on c:type inference for ${ns.name}.${name}.`) } - ;[cb, corrected_name] = ns.findClassCallback(`${ns_name}${name}`) + ;[cb, corrected_name] = ns.findClassCallback(`${ns.name}${name}`) if (cb) { console.error( - `Falling back on c:type inference for ${ns_name}.${name} and found ${ns_name}.${corrected_name}.`, + `Falling back on c:type inference for ${ns.name}.${name} and found ${ns.name}.${corrected_name}.`, ) } } @@ -117,21 +123,21 @@ export class TypeIdentifier extends TypeExpression { console.debug(`Callback found: ${cb}.${corrected_name}`) } - return new TypeIdentifier(corrected_name, cb) + return new ModuleTypeIdentifier(corrected_name, cb, ns.name) } else if (resolved_name) { - return new TypeIdentifier(resolved_name, ns_name) + return new TypeIdentifier(resolved_name, ns.name) } else if (c_resolved_name) { console.error( - `Fell back on c:type inference for ${ns_name}.${name} and found ${ns_name}.${corrected_name}.`, + `Fell back on c:type inference for ${ns.name}.${name} and found ${ns.name}.${corrected_name}.`, ) - return new TypeIdentifier(c_resolved_name, ns_name) - } else if (namespace.name === ns_name) { - console.error(`Unable to resolve type ${this.name} in same namespace ${ns_name}!`) + return new TypeIdentifier(c_resolved_name, ns.name) + } else if (namespace.name === ns.name) { + console.error(`Unable to resolve type ${this.name} in same namespace ${ns.name}!`) return null } - console.error(`Type ${this.namespace}.${this.name} could not be resolved in ${namespace.name}`) + console.error(`Type ${this.name} could not be resolved in ${namespace.name}`) return null } @@ -161,6 +167,79 @@ export class TypeIdentifier extends TypeExpression { } } +export class ModuleTypeIdentifier extends TypeIdentifier { + readonly moduleName: string + + constructor(name: string, moduleName: string, namespace: string) { + super(name, namespace) + + this.moduleName = moduleName + } + + equals(type: TypeExpression): boolean { + return super.equals(type) && type instanceof ModuleTypeIdentifier && this.moduleName === type.moduleName + } + + is(namespace: string, moduleName: string, name?: string) { + return ( + this.namespace === namespace && this.moduleName === moduleName && this.name === name && name !== undefined + ) + } + + unwrap() { + return this + } + + rewrap(type: TypeExpression): TypeExpression { + return type + } + + sanitize() { + return new ModuleTypeIdentifier( + sanitizeIdentifierName(this.namespace, this.name), + sanitizeIdentifierName(this.namespace, this.moduleName), + sanitizeNamespace(this.namespace), + ) + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + protected _resolve(namespace: IntrospectedNamespace, options: GenerationOptions): ModuleTypeIdentifier | null { + return this + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + print(namespace: IntrospectedNamespace, options: GenerationOptions): string { + if (namespace.name === this.namespace) { + return `${this.moduleName}.${this.name}` + } else { + return `${this.namespace}.${this.moduleName}.${this.name}` + } + } +} + +/** + * This class overrides the default printing for types + */ +export class ClassStructTypeIdentifier extends TypeIdentifier { + constructor(name: string, namespace: string) { + super(name, namespace) + } + + equals(type: TypeExpression): boolean { + return type instanceof ClassStructTypeIdentifier && super.equals(type) + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + print(namespace: IntrospectedNamespace, options: GenerationOptions): string { + if (namespace.name === this.namespace) { + // TODO: Mapping to invalid names should happen at the generator level... + return `typeof ${isInvalid(this.name) ? `__${this.name}` : this.name}` + } else { + return `typeof ${this.namespace}.${isInvalid(this.name) ? `__${this.name}` : this.name}` + } + } +} + export class GenerifiedTypeIdentifier extends TypeIdentifier { generics: TypeExpression[] diff --git a/packages/lib/src/gir/class.ts b/packages/lib/src/gir/class.ts index 1c4692f9e..f3b392025 100644 --- a/packages/lib/src/gir/class.ts +++ b/packages/lib/src/gir/class.ts @@ -19,7 +19,14 @@ import { import { TypeExpression } from "../gir.js"; import { IntrospectedBase, IntrospectedClassMember, IntrospectedNamespaceMember, Options } from "./base.js"; -import { GirInterfaceElement, GirClassElement, GirRecordElement, GirDirection, GirUnionElement } from "../index.js"; +import { + GirInterfaceElement, + GirClassElement, + GirRecordElement, + GirDirection, + GirUnionElement, + ClassStructTypeIdentifier +} from "../index.js"; import { IntrospectedClassFunction, IntrospectedVirtualClassFunction, @@ -85,7 +92,14 @@ export function filterConflicts { return findMap([...resolved_parent.props], p => { if (p.name && p.name == next.name) { - if (next instanceof IntrospectedField) { + // TODO: This is very TypeScript-specific but until we include which parent + // a conflict originates from in the return, we have to handle this here + // and not in the generator... + // + // Classes can override parent interface accessors with properties _but_ + // classes cannot override parent class accessors with properties without + // an error occuring. + if (p.parent instanceof IntrospectedClass && next instanceof IntrospectedField) { return ConflictType.PROPERTY_ACCESSOR_CONFLICT; } @@ -212,9 +226,13 @@ export function filterFunctionConflict< }); }); - const field_conflicts = base.someParent(resolved_parent => - [...resolved_parent.props, ...resolved_parent.fields].some(p => p.name && p.name == next.name) - ); + // Check if the method name conflicts with any props or fields either on + // the class or in the parent... + const field_conflicts = + [...base.props, ...base.fields].some(p => p.name && p.name === next.name) || + base.someParent(resolved_parent => + [...resolved_parent.props, ...resolved_parent.fields].some(p => p.name && p.name === next.name) + ); const isGObject = base.someParent(p => p.namespace.name === "GObject" && p.name === "Object"); @@ -226,6 +244,7 @@ export function filterFunctionConflict< let never: | IntrospectedConstructor | IntrospectedFunction + | IntrospectedClassFunction | IntrospectedStaticClassFunction | IntrospectedVirtualClassFunction; @@ -266,7 +285,7 @@ export function filterFunctionConflict< prev.push(next, never as T); } else if (field_conflicts) { - console.error(`Omitting ${next.name} due to field conflict.`); + console.error(`Omitting ${next.name} due to field or property conflict.`); } else { prev.push(next); } @@ -399,7 +418,12 @@ export interface RecordResolution extends ResolutionNode, Iterable r.implements()).flat(); + const implementedOnParent = [...(resolution.extends() ?? [])].map(r => r.implements()).flat(); const methods = new Map(); const validateMethod = (method: IntrospectedClassFunction) => @@ -652,8 +690,7 @@ export class IntrospectedClass extends IntrospectedBaseClass { if (implemented.node instanceof IntrospectedClass) continue; if ( - implemented_on_parent.find(p => p.identifier.equals(implemented.identifier))?.node?.generics?.length === - 0 + implementedOnParent.find(p => p.identifier.equals(implemented.identifier))?.node?.generics?.length === 0 ) continue; for (const member of implemented.node.members) { @@ -666,7 +703,7 @@ export class IntrospectedClass extends IntrospectedBaseClass { [...implemented].forEach(e => { if (e.node instanceof IntrospectedClass) return; - if (implemented_on_parent.find(p => p.identifier.equals(e.identifier))?.node.generics.length === 0) + if (implementedOnParent.find(p => p.identifier.equals(e.identifier))?.node.generics.length === 0) return; for (const member of e.node.members) { if (!validateMethod(member)) continue; @@ -676,6 +713,20 @@ export class IntrospectedClass extends IntrospectedBaseClass { }); } + // If an interface inherits from a class (such as Gtk.Widget) + // we need to pull in every method from that class... + for (const implemented of resolution.implements()) { + const extended = implemented.extends(); + + if (extended?.node instanceof IntrospectedClass) { + for (const member of extended.node.members) { + if (!validateMethod(member)) continue; + + methods.set(member.name, member); + } + } + } + return [...methods.values()].map(f => { const mapping = new Map(); if (f.parent instanceof IntrospectedBaseClass) { @@ -939,12 +990,6 @@ export class IntrospectedClass extends IntrospectedBaseClass { const name = implementee.$.name; const type = parseTypeIdentifier(ns.name, name); - // Sometimes namespaces will implicitly import - // other namespaces like Atk via interface implements. - if (type && type.namespace && type.namespace !== ns.name && !ns.hasImport(type.namespace)) { - ns.addImport(type.namespace); - } - if (type) { clazz.interfaces.push(type); } @@ -997,7 +1042,7 @@ export class IntrospectedClass extends IntrospectedBaseClass { export class IntrospectedRecord extends IntrospectedBaseClass { private _isForeign: boolean = false; - private _structFor: TypeIdentifier | null = null; + private _structFor: ClassStructTypeIdentifier | null = null; private _isSimple: boolean | null = null; private _isSimpleWithoutPointers: string | null = null; @@ -1005,6 +1050,10 @@ export class IntrospectedRecord extends IntrospectedBaseClass { return this._isForeign; } + get structFor() { + return this._structFor; + } + getType(): TypeIdentifier { if (this._structFor) { return this._structFor; @@ -1159,15 +1208,14 @@ export class IntrospectedRecord extends IntrospectedBaseClass { clazz.setPrivate( element.$.name.startsWith("_") || ("disguised" in element.$ && element.$.disguised === "1") || - // Don't generate records for structs - (typeof element.$["glib:is-gtype-struct-for"] === "string" && !!element.$["glib:is-gtype-struct-for"]) + ("opaque" in element.$ && element.$.opaque === "1") ); if (typeof element.$["glib:is-gtype-struct-for"] === "string" && !!element.$["glib:is-gtype-struct-for"]) { - clazz.noEmit(); + const structFor = parseTypeIdentifier(namespace.name, element.$["glib:is-gtype-struct-for"]); - // This let's us replace these references when generating. - clazz._structFor = parseTypeIdentifier(namespace.name, element.$["glib:is-gtype-struct-for"]); + // This let's replace these references when generating. + clazz._structFor = new ClassStructTypeIdentifier(structFor.name, structFor.namespace); } else { if (element.$["glib:type-name"]) { clazz.resolve_names.push(element.$["glib:type-name"]); @@ -1561,7 +1609,6 @@ export class IntrospectedInterface extends IntrospectedBaseClass { if (element.property) { clazz.props.push( ...element.property - .map(prop => IntrospectedProperty.fromXML(prop, clazz, options)) .map(prop => { switch (options.propertyCase) { diff --git a/packages/lib/src/gir/function.ts b/packages/lib/src/gir/function.ts index 53a9e4d0f..00453d0c7 100644 --- a/packages/lib/src/gir/function.ts +++ b/packages/lib/src/gir/function.ts @@ -278,6 +278,7 @@ export class IntrospectedFunction extends IntrospectedNamespaceMember { }); fn.returnTypeDoc = this.returnTypeDoc; + fn.generics = [...this.generics]; return fn; } @@ -380,6 +381,8 @@ export class IntrospectedConstructor extends IntrospectedClassMember { readonly parameters: IntrospectedFunctionParameter[] = []; readonly return_type: TypeExpression = UnknownType; + generics: Generic[] = []; + constructor({ name, parameters = [], @@ -406,12 +409,16 @@ export class IntrospectedConstructor extends IntrospectedClassMember { parameters?: IntrospectedFunctionParameter[]; return_type?: TypeExpression; } = {}): IntrospectedConstructor { - return new IntrospectedConstructor({ + const constr = new IntrospectedConstructor({ name: this.name, parent: parent ?? this.parent ?? null, return_type: return_type ?? this.return_type, parameters: parameters ?? this.parameters })._copyBaseProperties(this); + + constr.generics = [...this.generics]; + + return constr; } static fromXML( @@ -624,7 +631,9 @@ export class IntrospectedFunctionParameter extends IntrospectedBase< } } -export class IntrospectedClassFunction extends IntrospectedBase { +export class IntrospectedClassFunction< + Parent extends IntrospectedBaseClass | IntrospectedEnum = IntrospectedBaseClass | IntrospectedEnum +> extends IntrospectedBase { readonly parameters: IntrospectedFunctionParameter[]; protected readonly return_type: TypeExpression; readonly output_parameters: IntrospectedFunctionParameter[]; @@ -648,7 +657,7 @@ export class IntrospectedClassFunction extends IntrospectedBase) { super(name, parent, { ...args }); @@ -714,21 +723,13 @@ export class IntrospectedClassFunction extends IntrospectedBase { + const fn = new IntrospectedClassFunction({ name: this.name, parent, output_parameters: outputParameters ?? this.output_parameters, @@ -746,7 +747,7 @@ export class IntrospectedClassFunction extends IntrospectedBase { const node = this.copy({ parameters: this.parameters.map(p => { return p.accept(visitor); @@ -791,7 +792,7 @@ export class IntrospectedClassFunction extends IntrospectedBase { constructor({ name, parameters = [], @@ -819,6 +820,37 @@ export class IntrospectedVirtualClassFunction extends IntrospectedClassFunction }); } + copy({ + parent = this.parent, + interfaceParent, + parameters, + outputParameters, + returnType + }: { + parent?: IntrospectedBaseClass; + interfaceParent?: IntrospectedBaseClass | IntrospectedEnum | undefined; + parameters?: IntrospectedFunctionParameter[] | undefined; + outputParameters?: IntrospectedFunctionParameter[] | undefined; + returnType?: TypeExpression | undefined; + }): IntrospectedVirtualClassFunction { + const fn = new IntrospectedVirtualClassFunction({ + name: this.name, + parent, + output_parameters: outputParameters ?? this.output_parameters, + parameters: parameters ?? this.parameters, + return_type: returnType ?? this.return_type + }); + + fn.generics = [...this.generics]; + fn.returnTypeDoc = this.returnTypeDoc; + + if (interfaceParent) { + fn.interfaceParent = interfaceParent; + } + + return fn._copyBaseProperties(this); + } + return(): TypeExpression { return this.return_type; } @@ -856,8 +888,40 @@ export class IntrospectedStaticClassFunction extends IntrospectedClassFunction { return generator.generateStaticClassFunction(this) as ReturnType; } + copy({ + parent = this.parent, + interfaceParent, + parameters, + outputParameters, + returnType + }: { + parent?: IntrospectedBaseClass | IntrospectedEnum; + interfaceParent?: IntrospectedBaseClass | IntrospectedEnum | undefined; + parameters?: IntrospectedFunctionParameter[] | undefined; + outputParameters?: IntrospectedFunctionParameter[] | undefined; + returnType?: TypeExpression | undefined; + } = {}): IntrospectedStaticClassFunction { + const fn = new IntrospectedStaticClassFunction({ + name: this.name, + parent, + output_parameters: outputParameters ?? this.output_parameters, + parameters: parameters ?? this.parameters, + return_type: returnType ?? this.return_type + }); + + fn.generics = [...this.generics]; + fn.returnTypeDoc = this.returnTypeDoc; + + if (interfaceParent) { + fn.interfaceParent = interfaceParent; + } + + return fn._copyBaseProperties(this); + } + accept(visitor: GirVisitor): IntrospectedStaticClassFunction { const node = this.copy({ + parent: this.parent, parameters: this.parameters.map(p => { return p.accept(visitor); }), @@ -870,6 +934,25 @@ export class IntrospectedStaticClassFunction extends IntrospectedClassFunction { return visitor.visitStaticClassFunction?.(node) ?? node; } + asClassFunction(parent: IntrospectedBaseClass): IntrospectedClassFunction { + const { name, output_parameters, parameters, return_type, doc, isIntrospectable } = this; + + const fn = new IntrospectedClassFunction({ + parent, + name, + output_parameters, + parameters, + return_type, + doc, + isIntrospectable + }); + + fn.returnTypeDoc = this.returnTypeDoc; + fn.generics = [...this.generics]; + + return fn; + } + static fromXML( m: GirFunctionElement, parent: IntrospectedBaseClass | IntrospectedEnum, diff --git a/packages/lib/src/gir/registry.ts b/packages/lib/src/gir/registry.ts index dbfb1a877..224ea69aa 100644 --- a/packages/lib/src/gir/registry.ts +++ b/packages/lib/src/gir/registry.ts @@ -6,7 +6,7 @@ import { JsonGenerator } from "../generators/json.js"; import { FormatGenerator } from "../generators/generator.js"; import { generify } from "../generics/generify.js"; import { inject } from "../injections/inject.js"; -import { GenerationOptions, LoadOptions, TransformOptions } from "../types.js"; +import { GenerationOptions, TransformOptions } from "../types.js"; import { TwoKeyMap } from "../util.js"; import { ClassVisitor } from "../validators/class.js"; import { InterfaceVisitor } from "../validators/interface.js"; @@ -15,7 +15,7 @@ import { IntrospectedNamespace } from "./namespace.js"; import { DtsModuleGenerator } from "../generators/dts-modules.js"; import { DtsInlineGenerator } from "../generators/dts-inline.js"; import { ParsedGir } from "../types/parsed-gir.js"; -import { GenerateConfig } from "../types/generate-config.js"; +import { GirModule } from "../index.js"; export interface NSLoader { load(namespace: string, version: string): ParsedGir | null; @@ -31,9 +31,8 @@ export class NSRegistry { mapping: TwoKeyMap = new TwoKeyMap(); private formatters: Map = new Map(); private generators: Map> = new Map(); - c_mapping: Map = new Map(); + c_mapping: Map = new Map(); transformations: GirVisitor[] = []; - loaders: [NSLoader, LoadOptions][] = []; subtypes = new TwoKeyMap>(); constructor() { @@ -128,15 +127,13 @@ export class NSRegistry { namespace(name: string, version: string): IntrospectedNamespace | null { const namespace = this.mapping.get(name, version); - if (!namespace) { - return this._internalLoad(name, version); - } - - return namespace; + return namespace ?? null; } namespacesForPrefix(c_prefix: string): IntrospectedNamespace[] { - return this.c_mapping.get(c_prefix) ?? []; + return (this.c_mapping.get(c_prefix) ?? []).map(c_mapping => + this.assertNamespace(c_mapping.name, c_mapping.version) + ); } transform(options: TransformOptions) { @@ -175,12 +172,6 @@ export class NSRegistry { return meta[0]; } - const ns = this._defaultVersionInternalLoad(name); - - if (ns) { - return ns.version; - } - return null; } @@ -197,11 +188,7 @@ export class NSRegistry { } assertNamespace(name: string, version: string): IntrospectedNamespace { - let namespace = this.mapping.get(name, version) ?? null; - - if (!namespace) { - namespace = this._internalLoad(name, version); - } + const namespace = this.mapping.get(name, version) ?? null; if (!namespace) { throw new Error(`Namespace '${name}' not found.`); @@ -210,15 +197,13 @@ export class NSRegistry { return namespace; } - load(gir: ParsedGir, options: LoadOptions): IntrospectedNamespace { - const namespace = IntrospectedNamespace.load(gir, options as LoadOptions & GenerateConfig, this); - + register(namespace: GirModule): IntrospectedNamespace { this.mapping.set(namespace.name, namespace.version, namespace); namespace.c_prefixes.forEach(c_prefix => { const c_map = this.c_mapping.get(c_prefix) || []; - c_map.push(namespace); + c_map.push({ name: namespace.name, version: namespace.version }); this.c_mapping.set(c_prefix, c_map); }); @@ -227,65 +212,4 @@ export class NSRegistry { return namespace; } - - private _defaultVersionInternalLoad(name: string): IntrospectedNamespace | null { - const all = this.loaders - .map(([loader, options]) => { - try { - return [loader.loadAll(name), options] as const; - } catch (error) { - // TODO: Should we throw here? - console.error(error); - return null; - } - }) - .filter((a): a is [ParsedGir[], LoadOptions] => a != null); - - if (all.length === 0 || all.length > 1) { - return null; - } - - const [[xmls, options]] = all; - - if (xmls.length === 0 || xmls.length > 1) { - return null; - } - - const [xml] = xmls; - - const ns = this.load(xml, options); - - if (ns) { - this._transformNamespace(ns); - } - - return ns; - } - - private _internalLoad(name: string, version: string): IntrospectedNamespace | null { - for (const [loader, options] of this.loaders) { - try { - const xml = loader.load(name, version); - - if (xml) { - const ns = this.load(xml, options); - - if (ns) { - this._transformNamespace(ns); - } - - return ns; - } - } catch (error) { - // TODO: Should we throw here? - console.error(error); - } - } - - return null; - } - - registerLoader(loader: NSLoader, options: LoadOptions) { - this.loaders.push([loader, options]); - } } diff --git a/packages/lib/src/gir/util.ts b/packages/lib/src/gir/util.ts index b8d831051..73fd2fcad 100644 --- a/packages/lib/src/gir/util.ts +++ b/packages/lib/src/gir/util.ts @@ -202,7 +202,7 @@ export function getType( name = "unknown"; console.log( `Failed to find type in ${modName}: `, - JSON.stringify(parameter.$, null, 4), + JSON.stringify(parameter.type[0].$, null, 4), "\nMarking as unknown!" ); } @@ -333,6 +333,16 @@ export function sanitizeIdentifierName(namespace: string | null, name: string): return sanitized_name; } +// TODO: Until we support resolving via c:type, fix GIRs with +// broken namespacing... +export function sanitizeNamespace(namespace: string): string { + if (namespace === "Tracker_Vala") { + return "Tracker"; + } + + return namespace; +} + export function sanitizeMemberName(name: string): string { // This is a unique case where the name is "empty". if (name === "") { @@ -464,9 +474,19 @@ export function resolvePrimitiveType(name: string): TypeExpression | null { case "none": return VoidType; // TODO Some libraries are bad and don't use g-prefixed numerical types + case "uint": + case "int": + case "uint8": + case "int8": + case "uint16": + case "int16": case "uint32": case "int32": + case "int64": + case "uint64": case "double": + case "long": + case "float": // Most libraries will use these though: case "gshort": case "guint32": @@ -488,7 +508,6 @@ export function resolvePrimitiveType(name: string): TypeExpression | null { case "gdouble": case "gssize": case "gsize": - case "long": return NumberType; case "gboolean": return BooleanType; diff --git a/packages/lib/src/index.ts b/packages/lib/src/index.ts index 5012cbfde..2be88f800 100644 --- a/packages/lib/src/index.ts +++ b/packages/lib/src/index.ts @@ -1,4 +1,3 @@ -export * from './injection/index.js' export * from './types/index.js' export * from './conflict-resolver.js' export * from './constants.js' diff --git a/packages/lib/src/injection/callbacks/gjs/Gio-2.0.ts b/packages/lib/src/injection/callbacks/gjs/Gio-2.0.ts deleted file mode 100644 index 07c8b9682..000000000 --- a/packages/lib/src/injection/callbacks/gjs/Gio-2.0.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { InjectionCallback } from '../../../types/index.js' - -export const callbacksGio20Gjs: InjectionCallback[] = [ - { - versions: ['2.0'], - namespace: 'Gio', - name: 'AsyncReadyCallback', - // Generics for callback parameters - // TODO only use `this` if there is also a _finish method - generics: [ - { - name: 'T', - value: 'this', - }, - ], - inParams: [ - // Type changed - { - name: 'source_object', - type: [{ type: 'T' }], - }, - // Not changed - { - name: 'res', - type: [{ type: 'Gio.AsyncResult' }], - }, - ], - tsCallbackInterface: { - generics: [ - { - name: 'T', - value: 'GObject.Object', - }, - ], - }, - }, -] diff --git a/packages/lib/src/injection/callbacks/gjs/index.ts b/packages/lib/src/injection/callbacks/gjs/index.ts deleted file mode 100644 index 012fc40ca..000000000 --- a/packages/lib/src/injection/callbacks/gjs/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { InjectionCallback } from '../../../types/index.js' - -import { callbacksGio20Gjs } from './Gio-2.0.js' - -export const callbacksGjs: InjectionCallback[] = [...callbacksGio20Gjs] diff --git a/packages/lib/src/injection/callbacks/index.ts b/packages/lib/src/injection/callbacks/index.ts deleted file mode 100644 index fd22c6a75..000000000 --- a/packages/lib/src/injection/callbacks/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { InjectionCallback } from '../../types/index.js' - -export { callbacksGjs } from './gjs/index.js' - -export const callbacksAll: InjectionCallback[] = [] diff --git a/packages/lib/src/injection/classes/gjs/gio-2.0.ts b/packages/lib/src/injection/classes/gjs/gio-2.0.ts deleted file mode 100644 index 5062621f4..000000000 --- a/packages/lib/src/injection/classes/gjs/gio-2.0.ts +++ /dev/null @@ -1,256 +0,0 @@ -import type { InjectionClass, InjectionFunction } from '../../../types/index.js' - -// See https://github.com/gjsify/ts-for-gir/issues/130 -const runAsyncMethod: InjectionFunction = { - name: 'runAsync', - girTypeName: 'method', - inParams: [ - { - name: 'argv', - type: [{ type: 'string', isArray: true, optional: true }], - }, - ], - returnTypes: [ - { - type: 'Promise', - }, - ], - doc: { - text: "Similar to `Gio.Application.run` but return a Promise which resolves when the main loop ends, instead of blocking while the main loop runs.\nThis helps avoid the situation where Promises never resolved if you didn't run the application inside a callback.", - tags: [ - { - tagName: 'param', - paramName: 'argv', - text: 'Commandline arguments.', - }, - { - tagName: 'returns', - paramName: '', - text: 'The exit status of the application.', - }, - ], - }, -} - -/** - * @see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/core/overrides/Gio.js - */ -export const classesGio20Gjs: InjectionClass[] = [ - { - versions: ['2.0'], - qualifiedName: 'Gio.Application', - methods: [runAsyncMethod], - }, - { - versions: ['2.0'], - qualifiedName: 'Gio.DBusProxy', - staticFunctions: [ - { - name: 'makeProxyWrapper', - girTypeName: 'static-function', - isStatic: true, - generics: [ - { - name: 'T', - }, - ], - returnTypes: [ - { - type: '(bus: DBusConnection, name: string, object: string, asyncCallback?: (initable: (T & DBusProxy) | null, error: unknown | null) => void, cancellable?: Cancellable | null, flags?: DBusProxyFlags) => T & DBusProxy', - }, - ], - inParams: [ - { - name: 'interfaceXml', - type: [{ type: 'string' }], - }, - ], - }, - ], - methods: [ - { - name: 'connectSignal', - girTypeName: 'method', - returnTypes: [{ type: 'number' }], - generics: [ - { - name: 'T', - value: 'any[]', - }, - ], - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'callback', - type: [{ type: '(proxy: DBusProxy, name: string, args: T) => boolean | void' }], - }, - ], - }, - { - name: 'disconnectSignal', - girTypeName: 'method', - returnTypes: [{ type: 'void' }], - inParams: [ - { - name: 'id', - type: [{ type: 'number' }], - }, - ], - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'Gio.DBusConnection', - methods: [ - { - name: 'watch_name', - girTypeName: 'method', - returnTypes: [{ type: 'number' }], - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'Gio.BusNameWatcherFlags' }], - }, - { - name: 'name_appeared_closure', - type: [{ type: 'GObject.TClosure', nullable: true }], - }, - { - name: 'name_vanished_closure', - type: [{ type: 'GObject.TClosure', nullable: true }], - }, - ], - }, - { - name: 'unwatch_name', - girTypeName: 'method', - returnTypes: [{ type: 'void' }], - inParams: [ - { - name: 'id', - type: [{ type: 'number' }], - }, - ], - }, - { - name: 'own_name', - girTypeName: 'method', - returnTypes: [{ type: 'number' }], - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'Gio.BusNameOwnerFlags' }], - }, - { - name: 'name_acquired_closure', - type: [{ type: 'GObject.TClosure', nullable: true }], - }, - { - name: 'name_lost_closure', - type: [{ type: 'GObject.TClosure', nullable: true }], - }, - ], - }, - { - name: 'unown_name', - girTypeName: 'method', - returnTypes: [{ type: 'void' }], - inParams: [ - { - name: 'id', - type: [{ type: 'number' }], - }, - ], - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'Gio.ListStore', - generics: [ - { - name: 'A', - extends: 'GObject.Object', - value: 'GObject.Object', - }, - ], - methods: [ - { - name: 'insert_sorted', - girTypeName: 'method', - returnTypes: [{ type: 'number' }], - inParams: [ - { - name: 'item', - type: [{ type: 'A' }], - }, - { - name: 'compare_func', - type: [{ type: 'GLib.CompareDataFunc' }], - }, - ], - }, - { - name: 'sort', - girTypeName: 'method', - returnTypes: [{ type: 'void' }], - inParams: [ - { - name: 'compare_func', - type: [{ type: 'GLib.CompareDataFunc' }], - }, - ], - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'Gio.File', - methods: [ - { - name: 'replace_contents_async', - girTypeName: 'method', - returnTypes: [{ type: 'void' }], - // contents: Uint8Array, etag: string | null, make_backup: boolean, flags: FileCreateFlags, cancellable: Cancellable | null, callback: AsyncReadyCallback | null - inParams: [ - { - name: 'contents', - type: [{ type: 'Uint8Array' }], - }, - { - name: 'etag', - type: [{ type: 'string', nullable: true }], - }, - { - name: 'make_backup', - type: [{ type: 'boolean' }], - }, - { - name: 'flags', - type: [{ type: 'FileCreateFlags' }], - }, - { - name: 'cancellable', - type: [{ type: 'Cancellable', nullable: true }], - }, - { - name: 'callback', - type: [{ type: 'AsyncReadyCallback', nullable: true }], - }, - ], - }, - ], - }, -] diff --git a/packages/lib/src/injection/classes/gjs/glib-2.0.ts b/packages/lib/src/injection/classes/gjs/glib-2.0.ts deleted file mode 100644 index b2fb87252..000000000 --- a/packages/lib/src/injection/classes/gjs/glib-2.0.ts +++ /dev/null @@ -1,227 +0,0 @@ -import type { InjectionClass, InjectionFunction } from '../../../types/index.js' - -// See https://github.com/gjsify/ts-for-gir/issues/130 -const runAsyncMethod: InjectionFunction = { - name: 'runAsync', - girTypeName: 'method', - inParams: [], - returnTypes: [ - { - type: 'Promise', - }, - ], - doc: { - text: "Similar to `GLib.MainLoop.run` but return a Promise which resolves when the main loop ends, instead of blocking while the main loop runs.\nThis helps avoid the situation where Promises never resolved if you didn't run the main loop inside a callback.", - tags: [], - }, -} - -export const classesGLib20Gjs: InjectionClass[] = [ - { - versions: ['2.0'], - qualifiedName: 'GLib.MainLoop', - methods: [runAsyncMethod], - }, - // https://gjs.guide/guides/glib/gvariant.html#unpacking-variants - { - versions: ['2.0'], - qualifiedName: 'GLib.Variant', - methods: [ - { - name: 'constructor', - isStatic: true, - returnTypes: [{ type: 'GLib.Variant' }], - inParams: [ - { - name: 'sig', - type: [{ type: 'string' }], - }, - { - name: 'value', - type: [{ type: 'any' }], - }, - ], - girTypeName: 'constructor', - }, - { - name: 'new', - returnTypes: [{ type: 'GLib.Variant' }], - inParams: [ - { - name: 'sig', - type: [{ type: 'string' }], - }, - { - name: 'value', - type: [{ type: 'any' }], - }, - ], - girTypeName: 'constructor', - }, - { - name: 'unpack', - returnTypes: [{ type: 'T' }], - girTypeName: 'method', - generics: [ - { - name: 'T', - value: 'unknown', - }, - ], - }, - { - name: 'deepUnpack', - returnTypes: [{ type: 'T' }], - girTypeName: 'method', - generics: [ - { - name: 'T', - value: 'unknown', - }, - ], - }, - { - name: 'recursiveUnpack', - returnTypes: [{ type: 'T' }], - girTypeName: 'method', - generics: [ - { - name: 'T', - value: 'unknown', - }, - ], - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'GLib.Bytes', - methods: [ - { - name: 'toArray', - returnTypes: [{ type: 'Uint8Array' }], - girTypeName: 'method', - doc: { - text: 'Convert a [`GLib.Bytes`](https://gjs-docs.gnome.org/glib20/glib.bytes) object to a `Uint8Array` object.', - tags: [ - { - tagName: '@returns', - paramName: '', - text: 'A `Uint8Array`', - }, - ], - }, - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'GLib.Error', - properties: [ - // https://gitlab.gnome.org/GNOME/gjs/-/blob/d1cf26179322b2b87fb980e3b244b5e24dba8dd6/gi/gerror.cpp#L298-305 - { - name: 'stack', - type: [{ type: 'string' }], - girTypeName: 'property', - doc: { - text: 'The stack trace of the error.', - tags: [ - { - tagName: '@field', - paramName: '', - text: '', - }, - ], - }, - }, - { - name: 'source', - type: [{ type: 'string' }], - girTypeName: 'property', - doc: { - text: 'The name of the file where is the source of the error.', - tags: [ - { - tagName: '@field', - paramName: '', - text: '', - }, - ], - }, - }, - { - name: 'line', - type: [{ type: 'number' }], - girTypeName: 'property', - doc: { - text: 'The line number of the source of the error.', - tags: [ - { - tagName: '@field', - paramName: '', - text: '', - }, - ], - }, - }, - { - name: 'column', - type: [{ type: 'number' }], - girTypeName: 'property', - doc: { - text: 'The column number of the source of the error.', - tags: [ - { - tagName: '@field', - paramName: '', - text: '', - }, - ], - }, - }, - ], - methods: [ - // https://gitlab.gnome.org/GNOME/gjs/-/blob/33d58646d43b84d4c0ffc3681b89d125d5ccdfc6/installed-tests/js/testExceptions.js#L119-123 - // https://gjs-docs.gnome.org/glib20~2.66.1/glib.error#constructor-new_literal - { - name: 'constructor', - isStatic: true, - returnTypes: [{ type: 'GLib.Error' }], - inParams: [ - { - name: 'domain', - type: [{ type: 'GLib.Quark' }], - }, - { - name: 'code', - type: [{ type: 'number' }], - }, - { - name: 'message', - type: [{ type: 'string' }], - }, - ], - girTypeName: 'constructor', - }, - { - name: 'new', - returnTypes: [{ type: 'GLib.Error' }], - inParams: [ - { - name: 'domain', - type: [{ type: 'GLib.Quark' }], - }, - { - name: 'code', - type: [{ type: 'number' }], - }, - { - name: 'message', - type: [{ type: 'string' }], - }, - ], - girTypeName: 'constructor', - }, - ], - }, -] diff --git a/packages/lib/src/injection/classes/gjs/gobject-2.0.ts b/packages/lib/src/injection/classes/gjs/gobject-2.0.ts deleted file mode 100644 index 674eeea8b..000000000 --- a/packages/lib/src/injection/classes/gjs/gobject-2.0.ts +++ /dev/null @@ -1,635 +0,0 @@ -import type { InjectionClass } from '../../../types/index.js' - -export const classesGObject20Gjs: InjectionClass[] = [ - { - versions: ['2.0'], - qualifiedName: 'GObject.ParamSpec', - // Static functions injected by GJS, see https://gitlab.gnome.org/GNOME/gjs/-/blob/master/modules/core/overrides/GObject.js - staticFunctions: [ - // static char(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecChar - { - girTypeName: 'static-function', - name: 'char', - returnTypes: [{ type: 'GObject.ParamSpecChar' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static uchar(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecUChar - { - girTypeName: 'static-function', - name: 'uchar', - returnTypes: [{ type: 'GObject.ParamSpecUChar' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static int(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecInt - { - girTypeName: 'static-function', - name: 'int', - returnTypes: [{ type: 'GObject.ParamSpecInt' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static uint(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecUInt - { - girTypeName: 'static-function', - name: 'uint', - returnTypes: [{ type: 'GObject.ParamSpecUInt' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static long(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecLong - { - girTypeName: 'static-function', - name: 'long', - returnTypes: [{ type: 'GObject.ParamSpecLong' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static ulong(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecULong - { - girTypeName: 'static-function', - name: 'ulong', - returnTypes: [{ type: 'GObject.ParamSpecULong' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static int64(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecInt64 - { - girTypeName: 'static-function', - name: 'int64', - returnTypes: [{ type: 'GObject.ParamSpecInt64' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static uint64(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecUInt64 - { - girTypeName: 'static-function', - name: 'uint64', - returnTypes: [{ type: 'GObject.ParamSpecUInt64' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static float(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecFloat - { - girTypeName: 'static-function', - name: 'float', - returnTypes: [{ type: 'GObject.ParamSpecFloat' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static boolean(name: string, nick: string, blurb: string, flags: ParamFlags, defaultValue: boolean): ParamSpecBoolean - { - girTypeName: 'static-function', - name: 'boolean', - returnTypes: [{ type: 'GObject.ParamSpecBoolean' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'defaultValue', - type: [{ type: 'boolean' }], - }, - ], - }, - // TODO add generic - // static flags(name: string, nick: string, blurb: string, flags: ParamFlags, flagsType: GType, defaultValue: number): ParamSpecFlags - { - girTypeName: 'static-function', - name: 'flags', - returnTypes: [{ type: 'GObject.ParamSpecFlags' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'flagsType', - type: [{ type: 'GObject.GType' }], - }, - { - name: 'defaultValue', - type: [{ type: 'boolean' }], - }, - ], - }, - // static enum(name: string, nick: string, blurb: string, flags: ParamFlags, enumType: GType, defaultValue: number): ParamSpecEnum - { - girTypeName: 'static-function', - name: 'enum', - returnTypes: [{ type: 'GObject.ParamSpecEnum' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'enumType', - type: [{ type: 'GObject.GType' }], - }, - { - name: 'defaultValue', - type: [{ type: 'boolean' }], - }, - ], - }, - // static double(name: string, nick: string, blurb: string, flags: ParamFlags, minimum: number, maximum: number, defaultValue: number): ParamSpecDouble - { - girTypeName: 'static-function', - name: 'double', - returnTypes: [{ type: 'GObject.ParamSpecDouble' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'minimum', - type: [{ type: 'number' }], - }, - { - name: 'maximum', - type: [{ type: 'number' }], - }, - { - name: 'defaultValue', - type: [{ type: 'number' }], - }, - ], - }, - // static string(name: string, nick: string, blurb: string, flags: ParamFlags, defaultValue: string | null): ParamSpecString - { - girTypeName: 'static-function', - name: 'string', - returnTypes: [{ type: 'GObject.ParamSpecString' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'defaultValue', - type: [{ type: 'string | null' }], - }, - ], - }, - // static boxed(name: string, nick: string, blurb: string, flags: ParamFlags, boxedType: GType): ParamSpecBoxed - { - girTypeName: 'static-function', - name: 'boxed', - returnTypes: [{ type: 'GObject.ParamSpecBoxed' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'boxedType', - type: [{ type: 'GObject.GType' }], - }, - ], - }, - // static object(name: string, nick: string, blurb: string, flags: ParamFlags, objectType: GType): ParamSpecObject - { - girTypeName: 'static-function', - name: 'object', - returnTypes: [{ type: 'GObject.ParamSpecObject' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'objectType', - type: [{ type: 'GObject.GType' }], - }, - ], - }, - // static jsobject(name: string, nick: string, blurb: string, flags: ParamFlags): ParamSpecBoxed - { - girTypeName: 'static-function', - name: 'jsobject', - returnTypes: [{ type: 'GObject.ParamSpecBoxed' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - ], - }, - // static param(name: string, nick: string, blurb: string, flags: ParamFlags, paramType: GType): ParamSpecParam - { - girTypeName: 'static-function', - name: 'param', - returnTypes: [{ type: 'GObject.ParamSpecParam' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'nick', - type: [{ type: 'string' }], - }, - { - name: 'blurb', - type: [{ type: 'string' }], - }, - { - name: 'flags', - type: [{ type: 'GObject.ParamFlags' }], - }, - { - name: 'paramType', - type: [{ type: 'GObject.GType' }], - }, - ], - }, - // static override(name: string, oclass: GObject.Object | Function | GObject.GType): void - { - girTypeName: 'static-function', - name: 'override', - returnTypes: [{ type: 'void' }], - isStatic: true, - inParams: [ - { - name: 'name', - type: [{ type: 'string' }], - }, - { - name: 'oclass', - type: [{ type: 'GObject.Object' }, { type: 'Function' }, { type: 'GObject.GType' }], - }, - ], - }, - ], - }, -] diff --git a/packages/lib/src/injection/classes/gjs/index.ts b/packages/lib/src/injection/classes/gjs/index.ts deleted file mode 100644 index 5a1e7f40d..000000000 --- a/packages/lib/src/injection/classes/gjs/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { InjectionClass } from '../../../types/index.js' - -import { classesGio20Gjs } from './gio-2.0.js' -import { classesGObject20Gjs } from './gobject-2.0.js' -import { classesGLib20Gjs } from './glib-2.0.js' - -export const classesGjs: InjectionClass[] = [...classesGio20Gjs, ...classesGObject20Gjs, ...classesGLib20Gjs] diff --git a/packages/lib/src/injection/classes/glib-2.0.ts b/packages/lib/src/injection/classes/glib-2.0.ts deleted file mode 100644 index 3882fe2c4..000000000 --- a/packages/lib/src/injection/classes/glib-2.0.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { InjectionClass } from '../../types/index.js' - -export const classesGLib20All: InjectionClass[] = [ - { - versions: ['2.0'], - qualifiedName: 'GLib.List', - generics: [ - { - name: 'A', - value: 'any', - }, - ], - }, - { - versions: ['2.0'], - qualifiedName: 'GLib.HashTable', - // TODO - // [key: A]: B; - // properties: [ - // { - // name: '[key: A]' - // type: 'B' - // } - // ], - generics: [ - { - name: 'A', - value: 'symbol | string | number', - }, - { - name: 'B', - value: 'string | number | boolean', - }, - ], - }, -] diff --git a/packages/lib/src/injection/classes/index.ts b/packages/lib/src/injection/classes/index.ts deleted file mode 100644 index 4a8836354..000000000 --- a/packages/lib/src/injection/classes/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { InjectionClass } from '../../types/index.js' - -import { classesGLib20All } from './glib-2.0.js' - -export { classesGjs } from './gjs/index.js' -export const classesAll: InjectionClass[] = [...classesGLib20All] diff --git a/packages/lib/src/injection/index.ts b/packages/lib/src/injection/index.ts deleted file mode 100644 index 84f29fd23..000000000 --- a/packages/lib/src/injection/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './classes/index.js' -export * from './callbacks/index.js' -export * from './injector.js' diff --git a/packages/lib/src/injection/injector.ts b/packages/lib/src/injection/injector.ts deleted file mode 100644 index 4716ee54f..000000000 --- a/packages/lib/src/injection/injector.ts +++ /dev/null @@ -1,183 +0,0 @@ -import type { - GirClassElement, - GirRecordElement, - GirUnionElement, - GirInterfaceElement, - GirCallbackElement, - GirCallableParamElement, -} from '../types/index.js' -import { Logger } from '../logger.js' - -import { classesAll, classesGjs, callbacksGjs, callbacksAll } from './index.js' -import { GirFactory } from '../gir-factory.js' - -/** - * Inject additional methods, properties, etc - */ -export class Injector { - girFactory = new GirFactory() - log: Logger - - constructor() { - this.log = new Logger(true, 'ConflictResolver') - } - - /** Inject additional generics, methods, properties, etc to a existing class */ - toClass(girClass: GirClassElement | GirUnionElement | GirInterfaceElement | GirRecordElement) { - if (!girClass._tsData) { - return - } - - const classes = [...classesAll, ...classesGjs] - - const toClass = classes.find((cls) => { - return ( - girClass._tsData && - cls.qualifiedName === girClass._tsData.qualifiedName && - cls.versions.includes(girClass._tsData.version) - ) - }) - - if (!toClass) { - return girClass - } - - if (toClass.staticFunctions) { - girClass._tsData.staticFunctions.push( - ...this.girFactory.newGirFunctions(toClass.staticFunctions, girClass._tsData, { isInjected: true }), - ) - } - if (toClass.properties) { - girClass._tsData.properties.push( - ...this.girFactory.newGirProperties(toClass.properties, { isInjected: true }), - ) - } - if (toClass.constructors) { - girClass._tsData.constructors.push( - ...this.girFactory.newGirFunctions(toClass.constructors, girClass._tsData, { isInjected: true }), - ) - } - if (toClass.methods) { - girClass._tsData.methods.push( - ...this.girFactory.newGirFunctions(toClass.methods, girClass._tsData, { isInjected: true }), - ) - } - if (toClass.virtualMethods) { - girClass._tsData.virtualMethods.push( - ...this.girFactory.newGirFunctions(toClass.virtualMethods, girClass._tsData, { isInjected: true }), - ) - } - if (toClass.propertySignalMethods) { - for (const propertySignalMethod of toClass.propertySignalMethods) { - propertySignalMethod.isInjected = true - girClass._tsData.propertySignalMethods.push(propertySignalMethod) - } - } - - if (toClass.generics) { - girClass._tsData.generics.push(...this.girFactory.newGenerics(toClass.generics)) - } - - return girClass - } - - /** Inject additional generics to existing callback interfaces */ - toCallback(girCallback: GirCallbackElement) { - const callbacks = [...callbacksAll, ...callbacksGjs] - - if (!girCallback._module || !girCallback._tsData) { - return girCallback - } - - const toCallback = callbacks.find((injectCallback) => { - return ( - girCallback._module && - girCallback._tsData && - injectCallback.name === girCallback._tsData.name && - girCallback._module.namespace === injectCallback.namespace && - injectCallback.versions.includes(girCallback._module.version) - ) - }) - - // if (toCallback?.generics) { - // girCallback._tsData.generics.push(...this.girFactory.newGenerics(toCallback.generics)) - // } - - // NOTICE: We merge the in parameters here - // TODO: Unify injections, merges and overrides - if (toCallback?.inParams) { - for (let i = 0; i < girCallback._tsData.inParams.length; i++) { - const newInParam = toCallback.inParams[i] - const oldInParam = girCallback._tsData.inParams[i] - if (newInParam && oldInParam && oldInParam._tsData?.name === newInParam.name) { - oldInParam._tsData.type = this.girFactory.newTsTypes(newInParam.type) - } - } - } - - if (toCallback?.tsCallbackInterface) { - if (toCallback?.tsCallbackInterface.generics) { - girCallback._tsData.tsCallbackInterface?.generics.push( - ...this.girFactory.newGenerics(toCallback.tsCallbackInterface.generics), - ) - } - } - - return girCallback - } - - toParameterType(girParam: GirCallableParamElement) { - const tsTypes = girParam._tsData?.type - - const callbacks = [...callbacksAll, ...callbacksGjs] - - if (!girParam._module || !girParam._tsData) { - return girParam - } - - // Use the the callback generic injections also for the type of the callback parameters - if (tsTypes) { - for (const tsType of tsTypes) { - const toCallback = callbacks.find((injectCallback) => { - return ( - girParam._module && - girParam._tsData && - // TODO: compare versions - `${injectCallback.namespace}.${injectCallback.name}` === tsType.type - ) - }) - - if (toCallback?.generics) { - const tsFunc = girParam._tsData.parent - const tsClass = tsFunc.parent - for (const generic of toCallback.generics) { - // Currently only used for `Gio.AsyncReadyCallback` - if (generic.value === 'this') { - if (tsFunc.isStatic && tsClass) { - tsType.generics.push({ - ...generic, - value: `${tsClass.namespace}.${tsClass.name}`, - }) - } else if (tsFunc.isGlobal) { - // Add generic parameter to global function - tsFunc.generics.push({ - name: 'Z', - value: 'unknown', - }) - tsType.generics.push({ - value: 'Z', - }) - } else { - tsType.generics.push(generic) - } - } else { - tsType.generics.push(generic) - } - } - } - } - } - - return girParam - } -} diff --git a/packages/lib/src/injections/gee08.ts b/packages/lib/src/injections/gee08.ts new file mode 100644 index 000000000..235a09036 --- /dev/null +++ b/packages/lib/src/injections/gee08.ts @@ -0,0 +1,89 @@ +import { IntrospectedNamespace } from "../gir/namespace.js"; +import { IntrospectedProperty } from "../index.js"; + +export default { + namespace: "Gee", + version: "0.8", + modifier(namespace: IntrospectedNamespace) { + const SortedMap = namespace.assertClass("SortedMap"); + const AbstractSortedMap = namespace.assertClass("AbstractSortedMap"); + + if (SortedMap.props.some(prop => prop.name === "readOnlyView")) + AbstractSortedMap.props.push( + new IntrospectedProperty({ + name: "readOnlyView", + type: AbstractSortedMap.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: AbstractSortedMap + }) + ); + + if (SortedMap.props.some(prop => prop.name === "read_only_view")) + AbstractSortedMap.props.push( + new IntrospectedProperty({ + name: "read_only_view", + type: AbstractSortedMap.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: AbstractSortedMap + }) + ); + + const AbstractList = namespace.assertClass("AbstractList"); + const LinkedList = namespace.assertClass("LinkedList"); + + if (AbstractList.props.some(prop => prop.name === "readOnlyView")) + LinkedList.props.push( + new IntrospectedProperty({ + name: "readOnlyView", + type: LinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: LinkedList + }) + ); + + if (AbstractList.props.some(prop => prop.name === "read_only_view")) + LinkedList.props.push( + new IntrospectedProperty({ + name: "read_only_view", + type: LinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: LinkedList + }) + ); + + const AbstractBidirList = namespace.assertClass("AbstractBidirList"); + const UnrolledLinkedList = namespace.assertClass("UnrolledLinkedList"); + + if (AbstractBidirList.props.some(prop => prop.name === "readOnlyView")) + UnrolledLinkedList.props.push( + new IntrospectedProperty({ + name: "readOnlyView", + type: UnrolledLinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: UnrolledLinkedList + }) + ); + + if (AbstractBidirList.props.some(prop => prop.name === "read_only_view")) + UnrolledLinkedList.props.push( + new IntrospectedProperty({ + name: "read_only_view", + type: UnrolledLinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: UnrolledLinkedList + }) + ); + } +}; diff --git a/packages/lib/src/injections/gee1.ts b/packages/lib/src/injections/gee1.ts new file mode 100644 index 000000000..98ae2dc6c --- /dev/null +++ b/packages/lib/src/injections/gee1.ts @@ -0,0 +1,35 @@ +import { IntrospectedNamespace } from "../gir/namespace.js"; +import { IntrospectedProperty } from "../index.js"; + +export default { + namespace: "Gee", + version: "1.0", + modifier(namespace: IntrospectedNamespace) { + const AbstractList = namespace.assertClass("AbstractList"); + const LinkedList = namespace.assertClass("LinkedList"); + + if (AbstractList.props.some(prop => prop.name === "readOnlyView")) + LinkedList.props.push( + new IntrospectedProperty({ + name: "readOnlyView", + type: LinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: LinkedList + }) + ); + + if (AbstractList.props.some(prop => prop.name === "read_only_view")) + LinkedList.props.push( + new IntrospectedProperty({ + name: "read_only_view", + type: LinkedList.getType(), + readable: true, + writable: false, + constructOnly: false, + parent: LinkedList + }) + ); + } +}; diff --git a/packages/lib/src/injections/gio.ts b/packages/lib/src/injections/gio.ts index 1530d8bc8..329bb5ccb 100644 --- a/packages/lib/src/injections/gio.ts +++ b/packages/lib/src/injections/gio.ts @@ -17,7 +17,10 @@ import { AnyType, VoidType, GenerifiedTypeIdentifier, - Generic + Generic, + Uint8ArrayType, + BooleanType, + TypeIdentifier } from "../gir.js"; import { GirDirection } from "@gi.ts/parser"; import { IntrospectedField, JSField } from "../gir/property.js"; @@ -126,22 +129,28 @@ export default { const DBusProxy = namespace.assertClass("DBusProxy"); // This is not ideal, but DBusProxy's define functions and properties on the prototype. - DBusProxy.indexSignature = "[key: string]: any;"; + DBusProxy.__ts__indexSignature = "[key: string]: any;"; + + const makeProxyWrapper = new IntrospectedStaticClassFunction({ + name: "makeProxyWrapper", + parent: DBusProxy, + parameters: [ + new IntrospectedFunctionParameter({ + name: "args", + type: new ArrayType(AnyType), + isVarArgs: true, + direction: GirDirection.In + }) + ], + return_type: new NativeType( + "(bus: DBusConnection, name: string, object: string, asyncCallback?: (initable: (T & DBusProxy) | null, error: unknown | null) => void, cancellable?: Cancellable | null, flags?: DBusProxyFlags) => T & DBusProxy" + ) + }); + + makeProxyWrapper.generics.push(new Generic(new GenericType("T"))); DBusProxy.members.push( - new IntrospectedStaticClassFunction({ - name: "makeProxyWrapper", - parent: DBusProxy, - parameters: [ - new IntrospectedFunctionParameter({ - name: "args", - type: new ArrayType(AnyType), - isVarArgs: true, - direction: GirDirection.In - }) - ], - return_type: AnyType - }), + makeProxyWrapper, new IntrospectedClassFunction({ name: "connectSignal", parent: DBusProxy, @@ -446,5 +455,80 @@ export default { namespace.members.set("DBusExportedObject", DBusExportedObject); } + + { + // See https://github.com/gjsify/ts-for-gir/issues/130 + const Application = namespace.assertClass("Application"); + + Application.members.push( + new IntrospectedClassFunction({ + parent: Application, + name: "runAsync", + parameters: [ + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "argv", + isOptional: true, + type: new ArrayType(StringType), + doc: "Commandline arguments" + }) + ], + return_type: new NativeType("Promise"), + doc: "Similar to `Gio.Application.run` but return a Promise which resolves when the main loop ends, instead of blocking while the main loop runs.\nThis helps avoid the situation where Promises never resolved if you didn't run the application inside a callback." + }) + ); + } + + { + const File = namespace.assertClass("File"); + + const Flags = namespace.getEnum("FileCreateFlags"); + + if (!Flags) throw new Error("Missing FileCreateFlags"); + + File.members.push( + new IntrospectedClassFunction({ + parent: File, + name: "replace_contents_async", + return_type: VoidType, + // contents: Uint8Array, etag: string | null, make_backup: boolean, flags: FileCreateFlags, cancellable: Cancellable | null, callback: AsyncReadyCallback | null + parameters: [ + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "contents", + type: Uint8ArrayType + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "etag", + isNullable: true, + type: StringType + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "make_backup", + type: BooleanType + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "flags", + type: Flags.getType() + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "cancellable", + isNullable: true, + type: namespace.assertClass("Cancellable").getType() + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "callback", + isNullable: true, + type: new TypeIdentifier("AsyncReadyCallback", "Gio") + }) + ] + }) + ); + } } }; diff --git a/packages/lib/src/injections/glib.ts b/packages/lib/src/injections/glib.ts index 4d0c2bc1d..b584da71f 100644 --- a/packages/lib/src/injections/glib.ts +++ b/packages/lib/src/injections/glib.ts @@ -15,7 +15,8 @@ import { UnknownType, GenericType, TypeIdentifier, - BinaryType + BinaryType, + Generic } from "../gir.js"; import { GirDirection } from "@gi.ts/parser"; import { IntrospectedRecord } from "../gir/class.js"; @@ -101,7 +102,7 @@ export default { { const HashTable = namespace.assertClass("HashTable") as IntrospectedRecord; - HashTable.indexSignature = "[key: string]: B;"; + HashTable.__ts__indexSignature = "[key: string]: B;"; } // GLib.Variant @@ -132,26 +133,30 @@ export default { direction: GirDirection.In }) ]; + + // static "new"(sig: A, value: any) => Variant; const VariantConstructor = new IntrospectedConstructor({ name: "new", parent: Variant, parameters: VariantParams.map(vp => vp.copy()), - return_type: Variant.getType() + return_type: new NativeType("Variant") }); + VariantConstructor.generics = [new Generic(new GenericType("A"), undefined, undefined, StringType)]; + Variant.mainConstructor = VariantConstructor.copy(); - Variant.constructors.unshift( - // static new: (sig: any, value: any) => Variant; - VariantConstructor.copy(), - // static _new_internal: (sig: any, value: any) => any;, - new IntrospectedConstructor({ - name: "_new_internal", - parent: Variant, - parameters: VariantParams.map(vp => vp.copy()), - return_type: AnyType - }) - ); + // static _new_internal: (sig: any, value: any) => any; + const internalConstructor = new IntrospectedConstructor({ + name: "_new_internal", + parent: Variant, + parameters: VariantParams.map(vp => vp.copy()), + return_type: AnyType + }); + + internalConstructor.generics = [new Generic(new GenericType("A"), undefined, undefined, StringType)]; + + Variant.constructors.unshift(VariantConstructor.copy(), internalConstructor); Variant.members.push( // unpack(): T; @@ -166,7 +171,7 @@ export default { return_type: UnknownType, parent: Variant }), - // deep_unpack: any; + // deep_unpack(): T; new IntrospectedClassFunction({ name: "deep_unpack", return_type: UnknownType, @@ -237,5 +242,20 @@ export default { }) ); } + + { + // See https://github.com/gjsify/ts-for-gir/issues/130 + const MainLoop = namespace.assertClass("MainLoop"); + + MainLoop.members.push( + new IntrospectedClassFunction({ + parent: MainLoop, + name: "runAsync", + parameters: [], + return_type: new NativeType("Promise"), + doc: "Similar to `GLib.MainLoop.run` but return a Promise which resolves when the main loop ends, instead of blocking while the main loop runs.\nThis helps avoid the situation where Promises never resolved if you didn't run the main loop inside a callback." + }) + ); + } } }; diff --git a/packages/lib/src/injections/gobject.ts b/packages/lib/src/injections/gobject.ts index 0e29e0b1e..4655564d5 100644 --- a/packages/lib/src/injections/gobject.ts +++ b/packages/lib/src/injections/gobject.ts @@ -22,7 +22,8 @@ import { GenericType, TypeExpression, BooleanType, - GenerifiedTypeIdentifier + GenerifiedTypeIdentifier, + OrType } from "../gir.js"; import { GirDirection } from "@gi.ts/parser"; import { IntrospectedField } from "../gir/property.js"; @@ -41,6 +42,10 @@ function anyParam(name: string) { return typeParam(name, AnyType); } +function stringParam(name: string) { + return typeParam(name, StringType); +} + export default { namespace: "GObject", version: "2.0", @@ -132,15 +137,6 @@ export default { return fn; } - ParamSpec.fields.push( - new IntrospectedField({ - name: "override", - isStatic: true, - type: AnyType, - writable: true - }) - ); - // Get rid of the ParamSpec subtypes. namespace.assertClass("ParamSpecBoolean").noEmit(); namespace.assertClass("ParamSpecBoxed").noEmit(); @@ -174,10 +170,10 @@ export default { const object = new IntrospectedStaticClassFunction({ name: "object", parameters: [ - anyParam("name"), - anyParam("nick"), - anyParam("blurb"), - anyParam("flags"), + stringParam("name"), + stringParam("nick"), + stringParam("blurb"), + stringParam("flags"), new IntrospectedFunctionParameter({ name: "objectType", direction: GirDirection.In, @@ -190,6 +186,38 @@ export default { object.generics.push(new Generic(new GenericType("T"))); + // static jsobject(name: string, nick: string, blurb: string, flags: ParamFlags): ParamSpecBoxed + const jsobject = new IntrospectedStaticClassFunction({ + name: "jsobject", + parameters: [stringParam("name"), stringParam("nick"), stringParam("blurb"), anyParam("flags")], + parent: ParamSpec, + return_type: new NativeType("ParamSpec") + }); + + jsobject.generics.push(new Generic(new GenericType("T"))); + + const override = new IntrospectedClassFunction({ + parent: ParamSpec, + name: "override", + return_type: VoidType, + parameters: [ + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "name", + type: StringType + }), + new IntrospectedFunctionParameter({ + direction: GirDirection.In, + name: "oclass", + type: new OrType( + namespace.assertClass("Object").getType(), + new NativeType("Function"), + new TypeIdentifier("GType", "GObject") + ) + }) + ] + }); + function ParamSpecWithGenerics(type: TypeExpression) { return new GenerifiedTypeIdentifier("ParamSpec", "GObject", [type]); } @@ -244,7 +272,9 @@ export default { // "object": "static object(name: any, nick: any, blurb: any, flags: any, objectType: any): ParamSpec;", object, // "param": "static param(name: any, nick: any, blurb: any, flags: any, paramType: any): ParamSpec;", - generateParamSpec("param", ParamSpec.getType(), false, "param", false) + generateParamSpec("param", ParamSpec.getType(), false, "param", false), + jsobject, + override ); } diff --git a/packages/lib/src/injections/inject.ts b/packages/lib/src/injections/inject.ts index 91d85b340..4fc2f0e85 100644 --- a/packages/lib/src/injections/inject.ts +++ b/packages/lib/src/injections/inject.ts @@ -1,17 +1,25 @@ import glib from "./glib.js"; import gobject from "./gobject.js"; import gio from "./gio.js"; - +import tracker1 from "./tracker1.js"; +import gee08 from "./gee08.js"; +import gee1 from "./gee1.js"; import { IntrospectedNamespace } from "../gir/namespace.js"; import { NSRegistry } from "../gir/registry.js"; export type NamespaceInjection = (namespace: IntrospectedNamespace, registry: NSRegistry) => void; -function injectDefinitions(registry: NSRegistry) { +function injectDefinitions(registry: NSRegistry, required = true) { return (definition: { namespace: string; version: string; modifier: NamespaceInjection }) => { - const ns = registry.assertNamespace(definition.namespace, definition.version); + const ns = registry.namespace(definition.namespace, definition.version); + + if (required && !ns) { + throw new Error(`Namespace '${definition.namespace}' not found.`); + } - definition.modifier(ns, registry); + if (ns) { + definition.modifier(ns, registry); + } }; } @@ -21,4 +29,10 @@ export function inject(registry: NSRegistry) { $(glib); $(gobject); $(gio); + + const $_ = injectDefinitions(registry, false); + + $_(tracker1); + $_(gee08); + $_(gee1); } diff --git a/packages/lib/src/injections/tracker1.ts b/packages/lib/src/injections/tracker1.ts new file mode 100644 index 000000000..1721259b1 --- /dev/null +++ b/packages/lib/src/injections/tracker1.ts @@ -0,0 +1,41 @@ +import { IntrospectedNamespace } from "../gir/namespace.js"; +import { ClassStructTypeIdentifier, IntrospectedRecord } from "../index.js"; + +export default { + namespace: "Tracker", + version: "1.0", + modifier(namespace: IntrospectedNamespace) { + const SparqlError = namespace.getEnum("Error"); + + if (!SparqlError) throw new Error("Error enum not found in Tracker."); + + namespace.members.delete("Error"); + + SparqlError.name = "SparqlError"; + + namespace.members.set("SparqlError", SparqlError); + + // Hack around broken references in Tracker + + const CursorClass = namespace.members.get("SparqlCursorClass"); + + if (CursorClass instanceof IntrospectedRecord) { + // @ts-expect-error This is a private property by Tracker is cursed + CursorClass._structFor = new ClassStructTypeIdentifier("SparqlCursor", "Tracker"); + } + + const ConnectionClass = namespace.members.get("SparqlConnectionClass"); + + if (ConnectionClass instanceof IntrospectedRecord) { + // @ts-expect-error This is a private property by Tracker is cursed + ConnectionClass._structFor = new ClassStructTypeIdentifier("SparqlConnection", "Tracker"); + } + + const BuilderClass = namespace.members.get("SparqlBuilderClass"); + + if (BuilderClass instanceof IntrospectedRecord) { + // @ts-expect-error This is a private property by Tracker is cursed + BuilderClass._structFor = new ClassStructTypeIdentifier("SparqlBuilder", "Tracker"); + } + } +}; diff --git a/packages/lib/src/registry.ts b/packages/lib/src/registry.ts index 04805fff4..936a4efb0 100644 --- a/packages/lib/src/registry.ts +++ b/packages/lib/src/registry.ts @@ -1,9 +1,6 @@ -import { NSRegistry } from './gir/registry.js' import { SanitizedIdentifiers } from './gir/util.js' export { FormatGenerator } from './generators/generator.js' -import { GenerationOptions, Metadata } from './types.js' - export * as dts from './generators/dts-modules.js' export * as json from './generators/json.js' @@ -20,66 +17,3 @@ export { Formatter } from './formatters/formatter.js' export function getSanitizedIdentifiers(): ReadonlyMap { return SanitizedIdentifiers } - -export function createRegistry(): NSRegistry { - return new NSRegistry() -} - -export interface GeneratedModule { - meta: Metadata - formattedOutput: string -} - -export async function generateModule( - options: GenerationOptions, - registry: NSRegistry, - name: string, - version: string, -): Promise { - const ns = registry.namespace(name, version) - - const format = 'dts' // TODO: options.format; - - if (ns) { - const Generator = await registry.getGenerator(format) - - if (!Generator) { - throw new Error(`Invalid output format selected: ${format}.`) - } - - const generator = new Generator(ns, options) - - let generated: string | null = null - - try { - generated = await generator.stringifyNamespace(ns) - } catch (error) { - console.error(`Failed to generate ${ns.name} ${ns.version}...`) - - if (options.verbose) { - console.error(error) - } - } - - if (!generated) { - return null - } - - const meta: Metadata = { - name: ns.name, - api_version: ns.version, - package_version: ns.package_version.join('.'), - imports: Object.fromEntries(ns.getImports()), - } - - const formatter = registry.getFormatter(format) - const formatted = !options.noPrettyPrint ? await formatter.format(generated) : generated - - return { - formattedOutput: formatted, - meta, - } - } - - return null -} diff --git a/packages/lib/src/validators/class.ts b/packages/lib/src/validators/class.ts index 6f7b49eb4..24b200f09 100644 --- a/packages/lib/src/validators/class.ts +++ b/packages/lib/src/validators/class.ts @@ -31,6 +31,28 @@ const filterProtectedFields = (node: T): T => { return node; }; +/** + * Filters fields, properties, and members to ensure they are not named + * after reserved object keys (prototype, constructor) + */ +const filterReservedProperties = (node: T): T => { + const set = new Set(["prototype", "constructor"]); + + node.fields = node.fields.filter(f => { + return !set.has(f.name); + }); + + node.props = node.props.filter(p => { + return !set.has(p.name); + }); + + node.members = node.members.filter(m => { + return !set.has(m.name); + }); + + return node; +}; + const filterConflictingNamedClassMembers = (node: T): T => { // Props shadow members node.members = node.members.filter(m => { @@ -269,10 +291,12 @@ export class ClassVisitor extends GirVisitor { mergeStaticDefinitions, filterConflictingNamedClassMembers, filterIntrospectableClassMembers, - filterProtectedFields + filterProtectedFields, + filterReservedProperties ); - visitInterface = (node: IntrospectedInterface) => chainVisitors(node, filterIntrospectableClassMembers); + visitInterface = (node: IntrospectedInterface) => + chainVisitors(node, filterIntrospectableClassMembers, filterReservedProperties); visitRecord = (node: IntrospectedRecord) => chainVisitors( @@ -284,6 +308,7 @@ export class ClassVisitor extends GirVisitor { removePrivateFields, filterConflictingNamedClassMembers, filterIntrospectableClassMembers, - filterProtectedFields + filterProtectedFields, + filterReservedProperties ); } diff --git a/packages/lib/src/visitor.ts b/packages/lib/src/visitor.ts index d32fe92f3..3f03bfbf4 100644 --- a/packages/lib/src/visitor.ts +++ b/packages/lib/src/visitor.ts @@ -1,6 +1,6 @@ import { TypeExpression } from './gir.js' import { IntrospectedAlias } from './gir/alias.js' -import { IntrospectedRecord, IntrospectedInterface, IntrospectedClass } from './gir/class.js' +import { IntrospectedRecord, IntrospectedInterface, IntrospectedClass, IntrospectedBaseClass } from './gir/class.js' import { IntrospectedConstant } from './gir/const.js' import { GirEnumMember, IntrospectedError, IntrospectedEnum } from './gir/enum.js' import { @@ -40,7 +40,9 @@ export abstract class GirVisitor { visitField?: (node: IntrospectedField) => IntrospectedField visitSignal?: (node: IntrospectedSignal, type?: IntrospectedSignalType) => IntrospectedSignal visitFunction?: (node: IntrospectedFunction) => IntrospectedFunction - visitClassFunction?: (node: IntrospectedClassFunction) => IntrospectedClassFunction + visitClassFunction?: ( + node: IntrospectedClassFunction, + ) => IntrospectedClassFunction visitStaticClassFunction?: (node: IntrospectedStaticClassFunction) => IntrospectedStaticClassFunction visitVirtualClassFunction?: (node: IntrospectedVirtualClassFunction) => IntrospectedVirtualClassFunction visitNamespace?: (node: IntrospectedNamespace) => IntrospectedNamespace diff --git a/packages/parser/src/xml.ts b/packages/parser/src/xml.ts index 57d770f40..4ce6b53f3 100644 --- a/packages/parser/src/xml.ts +++ b/packages/parser/src/xml.ts @@ -233,9 +233,20 @@ export interface GirRecordElement extends GirInfoElements { name: string; /** Corresponding C type of the record */ "c:type"?: string; - /** Binary attribute to tell if the record is disguised, i.e. whether the c:type is a typedef that doesn't look like a pointer, but is one internally */ - /** Its second meaning is "private" and is set when any typedef struct is parsed which doesn't also include a full struct with fields (https://gitlab.gnome.org/GNOME/gobject-introspection/issues/101) */ + /** + * @deprecated + * + * Binary attribute to tell if the record is disguised, i.e. whether the c:type + * is a typedef that doesn't look like a pointer, but is one internally. Its second meaning + * is "private" and is set when any typedef struct is parsed which doesn't also include a + * full struct with fields (https://gitlab.gnome.org/GNOME/gobject-introspection/issues/101) + * Replaced by "opaque" and "pointer". + */ disguised?: GirBoolean; + /** Binary attribute for a typedef struct that does not have a corresponding public structure definition */ + opaque?: GirBoolean; + /** Binary attribute for a typedef struct pointer, e.g. typedef struct Foo* FooPtr */ + pointer?: GirBoolean; /** GObject compatible C type of the record */ "glib:type-name"?: string; /** Function to get the GObject compatible type of the record */ diff --git a/ts-for-gir.code-workspace b/ts-for-gir.code-workspace index a223454db..e0644cea5 100644 --- a/ts-for-gir.code-workspace +++ b/ts-for-gir.code-workspace @@ -1,4 +1,133 @@ { + "extensions": { + "recommendations": ["arcanis.vscode-zipfs", "dbaeumer.vscode-eslint", "esbenp.prettier-vscode"], + }, + "launch": { + "version": "0.2.0", + "configurations": [ + { + "name": "build:types:vda1", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.vda1.rc.js", + "--verbose", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types:gtk2", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.gtk2.rc.js", + "--verbose", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types:gtk3", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.gtk3.rc.js", + "--verbose", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types:gtk4", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.gtk4.rc.js", + "--verbose", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types:gio", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.gio.rc.js", + "--verbose", + "--promisify", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.all.rc.js", + "--verbose", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + { + "name": "build:types:local", + "type": "node", + "request": "launch", + "cwd": "${workspaceRoot}/packages/cli", + "runtimeExecutable": "${env:NVM_DIR}/nvm-exec", + "args": [ + "${workspaceRoot}/packages/cli/src/start.ts", + "generate", + "--configName=.ts-for-gir.all.rc.js", + "--verbose", + "--environments=gjs", + "--outdir", + "../../../tmp", + ], + "runtimeArgs": ["node", "--inspect", "--loader", "ts-node/esm"], + "sourceMaps": true, + }, + ], + }, "folders": [ { "path": ".", @@ -23,8 +152,466 @@ }, ], "settings": { + "search.exclude": { + "**/.yarn": true, + "**/.pnp.*": true, + }, + "editor.tabSize": 4, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit", + }, + "eslint.validate": ["typescript"], + "cSpell.words": [ + "ABGR", + "acceleratable", + "ACCELS", + "ACCES", + "accountsservice", + "accounttype", + "accu", + "ADHOC", + "Adwaita", + "AFIRST", + "AGPL", + "AHOM", + "alphav", + "Amtk", + "animatev", + "Anjuta", + "Anthy", + "ARBFP", + "ARGB", + "AUTOSIZE", + "BAMUM", + "BATAK", + "BGRA", + "Bidir", + "bindtextdomain", + "bitfield", + "BOPOMOFO", + "BOTTOMLEFT", + "BOTTOMRIGHT", + "BTLR", + "BTRL", + "BUGINESE", + "BUHID", + "Buildable", + "Cally", + "camelcase", + "CANTOPEN", + "CARIAN", + "cclosure", + "CDROM", + "cgjs", + "CHAKMA", + "CHECKME", + "CHIKI", + "childname", + "childs", + "CITI", + "clampf", + "cmyk", + "Codepoint", + "Cogl", + "colorette", + "Colorhug", + "Colormap", + "columnify", + "COMBOBOX", + "CONNECTIONSETTINGNOTFOUND", + "CONNECTIONTYPEINVALID", + "Connman", + "cosmiconfig", + "CROSSFADE", + "cset", + "ctix", + "CTYPE", + "CURISVE", + "Datapath", + "DATETIME", + "dbus", + "Dbusmenu", + "dcgettext", + "Descs", + "DESERET", + "detokenize", + "devel", + "dgettext", + "dngettext", + "domainname", + "dups", + "Eastasian", + "ELBASAN", + "ellipsize", + "EMBOX", + "emitable", + "emitv", + "enumtype", + "errorno", + "espree", + "Farstream", + "FBIG", + "FCOE", + "finfo", + "FINISHINGS", + "FLEURONS", + "focusable", + "fontconfig", + "fontmap", + "fontname", + "FONTSET", + "Forall", + "FREEBUSY", + "freetype", + "fullname", + "GACTION", + "Garber", + "gboolean", + "gbytes", + "gcalc", + "gchar", + "gconstpointer", + "Gdaui", + "gdkpixbuf", + "gdouble", + "Gegl", + "getenv", + "gettext", + "getv", + "Gfile", + "gfloat", + "GICON", + "gint", + "girrc", + "girs", + "Gitg", + "gjsify", + "globby", + "glong", + "gmenu", + "gmodule", + "gnomeshell", + "gobject", + "gpointer", + "Graphene", + "gshort", + "gsize", + "GSSDP", + "gssize", + "gstring", + "gtksourceview", + "gtype", + "guchar", + "guint", + "guintptr", + "gulong", + "gunichar", + "GURMUKHI", + "gushort", + "Gvalue", + "hadjustment", + "halign", + "HANJA", + "HANUNOO", + "HARDDISK", + "Harf", + "harfbuzz", + "HATRAN", + "hbox", + "Hexpand", + "HOJO", + "HORIZ", + "ICONTHEME", + "iface", + "iface's", + "ihint", + "IMMESSAGE", + "implmts", + "Initable", + "inout", + "instantiatable", + "instream", + "interp", + "INTERROBANG", + "intptr", + "introspectable", + "INVAL", + "INVALIDSETTING", + "ISDIR", + "itype", + "JAMO", + "jsgtk", + "jsobject", + "KAITHI", + "KAYAH", + "keyfile", + "keynav", + "keyval", + "KHAROSHTHI", + "KHUDAWADI", + "KIKAKUI", + "Launchable", + "lcopy", + "LEPCHA", + "LGPL", + "Libadwaita", + "libappindicator", + "LIBBAD", + "libcairo", + "libgda", + "libgirepository", + "libgtk", + "libgtksourceview", + "libnotify", + "libsoup", + "libwebkit", + "libxml", + "LIMBU", + "LISU", + "LRBT", + "LRTB", + "Mainloop", + "MALLOC", + "MANDAIC", + "MARCHEN", + "MAYEK", + "MEDIABASEURL", + "MEETEI", + "MENDE", + "MEROITIC", + "METAINFO", + "MFILE", + "MIAO", + "MODALIAS", + "modemmanager", + "monospace", + "MONOSPACED", + "msgid", + "multidevice", + "MULTIHEAD", + "NAGRI", + "NAMETOOLONG", + "newv", + "newval", + "NFILE", + "ngettext", + "NLCCHARACTERS", + "nlinks", + "NOCOPY", + "NODEV", + "NOENT", + "NOEXEC", + "NOSPC", + "NOSYS", + "NOTCALLED", + "NOTDIR", + "NPOT", + "NXIO", + "oclass", + "oclif", + "oldval", + "Orientable", + "OSMANYA", + "outdir", + "outstream", + "Overloadable", + "PAINTABLE", + "PALMYRENE", + "Pango", + "pangocairo", + "PARANTHESIS", + "Pbutils", + "PERMIC", + "pgettext", + "PHAGS", + "Pixbuf", + "Pixmap", + "PKGNAME", + "pkgnames", + "PLUGSOCKET", + "prealloced", + "preallocs", + "Preedit", + "PRELIGHT", + "PRELIT", + "PREMULT", + "printerr", + "printf", + "PRIO", + "PROGRESSBAR", + "promisified", + "pspec", + "Pspecs", + "psuwit", + "Qdata", + "qname", + "realh", + "REJANG", + "relationset", + "reparent", + "REPETION", + "REQUESTABLE", + "rgbxyz", + "RLBT", + "RLTB", + "ROFS", + "romgrk", + "rowstride", + "Rtsp", + "RUBBERBAND", + "RULESET", + "Rygel", + "rygelcore", + "SAURASHTRA", + "Savepoint", + "schar", + "screencast", + "Scrollable", + "Serializable", + "setlocale", + "SETTINGNOTFOUND", + "SHARADA", + "signall", + "SIGNWRITING", + "SINHALA", + "sizei", + "sizeiptr", + "somestring", + "Sparql", + "spdx", + "SPINBUTTON", + "SQRTI", + "strdup", + "streamtransmitter", + "STRIKETHROUGH", + "STRINGOBJECTPOINTER", + "struct", + "Strv", + "submodule", + "submodules", + "SUBPATTERN", + "SUBPATTERNS", + "substitutor", + "SYLOTI", + "symtable", + "TAGBANWA", + "TAKRI", + "TANGUT", + "Tasklist", + "TBLR", + "TBRL", + "textdomain", + "THAANA", + "THAM", + "TIFINAGH", + "timelinev", + "timezonemap", + "TIRHUTA", + "TITLEBAR", + "toolchain", + "TOOLITEM", + "TOPLEFT", + "Toplevel", + "TOPRIGHT", + "TRANSCODING", + "TSDATA", + "TXTBSY", + "TXTBUSY", + "Typecheck", + "typeof", + "Uchar", + "ufuncs", + "Ulong", + "uncache", + "UNDELETE", + "UNDERBAR", + "undraggable", + "UNEXP", + "unfallback", + "Unhighlight", + "Unichar", + "UNKNOWNERROR", + "UNMANAGED", + "Unmap", + "unrealize", + "unuse", + "unvalidated", + "UPSIDEDOWN", + "vadjustment", + "vala", + "valign", + "Vals", + "VAPIs", + "varargs", + "VCARD", + "Vercmp", + "vevents", + "vexpand", + "vfunc", + "Vgda", + "VIET", + "Volkoff", + "vprintf", + "Vulkan", + "WARANG", + "wmclass", + "XALIGN", + "xlib", + "xpad", + "xrandr", + "XTHICKNESS", + "yalign", + "ypad", + "YTHICKNESS", + "zorder", + ], + "typescript.enablePromptUseWorkspaceTsdk": true, + "presentation-mode.active": { + "commands": ["workbench.action.closeSidebar"], + "editor.fontSize": 16, + "editor.matchBrackets": "never", + "editor.minimap.enabled": false, + "editor.scrollbar.verticalScrollbarSize": 0, + "workbench.activityBar.visible": false, + "workbench.statusBar.visible": false, + "workbench.colorTheme": "GitHub Dark Default", + "workbench.colorCustomizations": { + "[GitHub Dark Default]": { + "activityBar.background": "#000", + "editor.background": "#000", + "editor.lineHighlightBackground": "#0000", + "editor.lineHighlightBorder": "#0000", + "panel.background": "#000", + "sideBar.background": "#000", + "terminal.background": "#000", + }, + "[GitHub Light Default]": { + "activityBar.background": "#fff", + "editor.background": "#fff", + "editor.lineHighlightBackground": "#fff0", + "editor.lineHighlightBorder": "#fff0", + "panel.background": "#fff", + "sideBar.background": "#fff", + "terminal.background": "#fff", + }, + }, + "window.zoomLevel": 2, + }, + "presentation-mode.configBackup": { + "editor.fontSize": "undefined", + "editor.matchBrackets": "undefined", + "editor.minimap.enabled": "undefined", + "editor.scrollbar.verticalScrollbarSize": "undefined", + "workbench.activityBar.visible": "undefined", + "workbench.statusBar.visible": "undefined", + "workbench.colorTheme": "undefined", + "workbench.colorCustomizations": "undefined", + "window.zoomLevel": "undefined", + }, "typescript.tsdk": ".yarn/sdks/typescript/lib", + "eslint.nodePath": ".yarn/sdks", + "prettier.prettierPath": ".yarn/sdks/prettier/index.cjs", "files.exclude": { "**/.git": true, "**/.svn": true, diff --git a/types b/types index 1ab7cda8f..c855496a1 160000 --- a/types +++ b/types @@ -1 +1 @@ -Subproject commit 1ab7cda8f28553db0479a3206f71871da027ce4e +Subproject commit c855496a1ae8cc52c78731766c9b7768f5f27aaf diff --git a/yarn.lock b/yarn.lock index a323b354c..27b394478 100644 --- a/yarn.lock +++ b/yarn.lock @@ -657,7 +657,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -669,7 +668,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -679,21 +677,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/adw-1@workspace:types/adw-1" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -702,20 +688,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/amtk-4@workspace:types/amtk-4" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -724,20 +698,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/amtk-5@workspace:types/amtk-5" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -746,21 +708,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/anjuta-3.0@workspace:types/anjuta-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gdl-3": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -770,7 +721,6 @@ __metadata: resolution: "@girs/anthy-9000@workspace:types/anthy-9000" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -780,20 +730,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/appindicator3-0.1@workspace:types/appindicator3-0.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -804,7 +743,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -818,8 +756,6 @@ __metadata: "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -832,8 +768,6 @@ __metadata: "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -845,7 +779,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -856,10 +789,7 @@ __metadata: resolution: "@girs/arrowcuda-1.0@workspace:types/arrowcuda-1.0" dependencies: "@girs/arrow-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -869,10 +799,7 @@ __metadata: resolution: "@girs/arrowdataset-1.0@workspace:types/arrowdataset-1.0" dependencies: "@girs/arrow-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -882,10 +809,7 @@ __metadata: resolution: "@girs/arrowflight-1.0@workspace:types/arrowflight-1.0" dependencies: "@girs/arrow-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -895,7 +819,6 @@ __metadata: resolution: "@girs/atk-1.0@workspace:types/atk-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -918,7 +841,6 @@ __metadata: resolution: "@girs/babl-0.1@workspace:types/babl-0.1" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -938,27 +860,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/builder-1.0@workspace:types/builder-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/dazzle-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" - "@girs/girepository-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/ide-1.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/peas-1.0": "workspace:^" - "@girs/template-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -981,7 +887,6 @@ __metadata: resolution: "@girs/cairo-1.0@workspace:types/cairo-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -991,21 +896,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cally-1.0@workspace:types/cally-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1014,22 +906,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cally-10@workspace:types/cally-10" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-10": "workspace:^" "@girs/cogl-10": "workspace:^" "@girs/coglpango-10": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1038,22 +918,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cally-11@workspace:types/cally-11" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-11": "workspace:^" "@girs/cogl-11": "workspace:^" "@girs/coglpango-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1062,22 +930,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cally-12@workspace:types/cally-12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-12": "workspace:^" "@girs/cogl-12": "workspace:^" "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1086,23 +942,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cally-13@workspace:types/cally-13" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-13": "workspace:^" "@girs/cogl-13": "workspace:^" "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/mtk-13": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1113,7 +957,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -1124,17 +967,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/caribou-1.0@workspace:types/caribou-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1143,21 +978,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/champlain-0.12@workspace:types/champlain-0.12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1166,24 +989,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cheese-3.0@workspace:types/cheese-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1195,7 +1004,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1208,16 +1016,10 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/cogl-1.0": "workspace:^" "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1230,17 +1032,10 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/cogl-10": "workspace:^" "@girs/coglpango-10": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1253,17 +1048,10 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/cogl-11": "workspace:^" "@girs/coglpango-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1276,17 +1064,10 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/cogl-12": "workspace:^" "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1299,18 +1080,11 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/cogl-13": "workspace:^" "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/mtk-13": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1319,24 +1093,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cluttergdk-1.0@workspace:types/cluttergdk-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1345,26 +1104,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cluttergst-2.0@workspace:types/cluttergst-2.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1373,28 +1119,16 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/cluttergst-3.0@workspace:types/cluttergst-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstpbutils-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1403,21 +1137,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/clutterx11-1.0@workspace:types/clutterx11-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1429,7 +1150,6 @@ __metadata: dependencies: "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1442,7 +1162,6 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" typescript: "npm:*" @@ -1456,7 +1175,6 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" typescript: "npm:*" @@ -1470,7 +1188,6 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" typescript: "npm:*" @@ -1484,7 +1201,6 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" typescript: "npm:*" @@ -1497,7 +1213,6 @@ __metadata: dependencies: "@girs/gjs": "workspace:^" "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1509,9 +1224,6 @@ __metadata: dependencies: "@girs/cogl-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" @@ -1523,15 +1235,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-1.0@workspace:types/coglpango-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1542,16 +1247,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-10@workspace:types/coglpango-10" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-10": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1562,16 +1259,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-11@workspace:types/coglpango-11" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1582,16 +1271,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-12@workspace:types/coglpango-12" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1602,16 +1283,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-13@workspace:types/coglpango-13" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1622,15 +1295,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/coglpango-2.0@workspace:types/coglpango-2.0" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/cogl-2.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -1643,7 +1309,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1653,21 +1318,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/colordgtk-1.0@workspace:types/colordgtk-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/colord-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1679,10 +1334,8 @@ __metadata: "@girs/colord-1.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gusb-1.0": "workspace:^" - "@girs/json-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1691,20 +1344,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/dazzle-1.0@workspace:types/dazzle-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1714,7 +1356,6 @@ __metadata: resolution: "@girs/dbus-1.0@workspace:types/dbus-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1724,7 +1365,6 @@ __metadata: resolution: "@girs/dbusglib-1.0@workspace:types/dbusglib-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1735,7 +1375,6 @@ __metadata: resolution: "@girs/dbusmenu-0.4@workspace:types/dbusmenu-0.4" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -1745,20 +1384,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/dbusmenugtk-0.4@workspace:types/dbusmenugtk-0.4" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/dbusmenu-0.4": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-2.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1767,21 +1396,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/dbusmenugtk3-0.4@workspace:types/dbusmenugtk3-0.4" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/dbusmenu-0.4": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1802,23 +1420,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/devhelp-3.0@workspace:types/devhelp-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/javascriptcore-4.1": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" "@girs/webkit2-4.1": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1829,8 +1433,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1839,9 +1441,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/dmap-3.0@workspace:types/dmap-3.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -1856,11 +1456,7 @@ __metadata: "@girs/edataserver-1.2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1876,9 +1472,7 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1893,9 +1487,6 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1908,12 +1499,8 @@ __metadata: "@girs/edataserver-1.2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/icalglib-3.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1922,15 +1509,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/ecalendar-1.2@workspace:types/ecalendar-1.2" dependencies: - "@girs/camel-1.2": "workspace:^" "@girs/edataserver-1.2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1947,9 +1531,6 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1964,12 +1545,8 @@ __metadata: "@girs/edataserver-1.2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/icalglib-3.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -1981,7 +1558,6 @@ __metadata: "@girs/camel-1.2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" @@ -1994,27 +1570,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/edataserverui-1.2@workspace:types/edataserverui-1.2" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/camel-1.2": "workspace:^" "@girs/ecal-2.0": "workspace:^" "@girs/edataserver-1.2": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/icalglib-3.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2023,27 +1586,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/edataserverui4-1.0@workspace:types/edataserverui4-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/camel-1.2": "workspace:^" "@girs/ecal-2.0": "workspace:^" "@girs/edataserver-1.2": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" - "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" + "@girs/gjs": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/icalglib-3.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2053,20 +1602,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/egg-1.0@workspace:types/egg-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2075,20 +1614,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/eog-3.0@workspace:types/eog-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2111,7 +1638,6 @@ __metadata: "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" "@girs/epc-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" @@ -2120,7 +1646,6 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -2131,20 +1656,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/evincedocument-3.0@workspace:types/evincedocument-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2153,21 +1670,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/evinceview-3.0@workspace:types/evinceview-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/evincedocument-3.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2191,8 +1701,6 @@ __metadata: resolution: "@girs/farstream-0.2@workspace:types/farstream-0.2" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" @@ -2205,7 +1713,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2269,18 +1776,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/folkseds-0.6@workspace:types/folkseds-0.6" dependencies: - "@girs/camel-1.2": "workspace:^" "@girs/ebookcontacts-1.2": "workspace:^" "@girs/edataserver-1.2": "workspace:^" "@girs/folks-0.6": "workspace:^" "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2289,18 +1790,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/folkseds-0.7@workspace:types/folkseds-0.7" dependencies: - "@girs/camel-1.2": "workspace:^" "@girs/ebookcontacts-1.2": "workspace:^" "@girs/edataserver-1.2": "workspace:^" "@girs/folks-0.7": "workspace:^" "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2310,11 +1805,7 @@ __metadata: resolution: "@girs/folkslibsocialweb-0.6@workspace:types/folkslibsocialweb-0.6" dependencies: "@girs/folks-0.6": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/socialwebclient-0.25": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2326,10 +1817,8 @@ __metadata: dependencies: "@girs/folks-0.6": "workspace:^" "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/telepathyglib-0.12": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2341,10 +1830,8 @@ __metadata: dependencies: "@girs/folks-0.7": "workspace:^" "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/telepathyglib-0.12": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2355,7 +1842,6 @@ __metadata: resolution: "@girs/fontconfig-2.0@workspace:types/fontconfig-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2365,7 +1851,6 @@ __metadata: resolution: "@girs/freetype2-2.0@workspace:types/freetype2-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2376,7 +1861,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2387,10 +1871,7 @@ __metadata: resolution: "@girs/gandiva-1.0@workspace:types/gandiva-1.0" dependencies: "@girs/arrow-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2414,7 +1895,6 @@ __metadata: "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2427,7 +1907,6 @@ __metadata: "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2439,7 +1918,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2451,7 +1929,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2462,7 +1939,6 @@ __metadata: resolution: "@girs/gconf-2.0@workspace:types/gconf-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2475,7 +1951,6 @@ __metadata: "@girs/gck-1": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2488,7 +1963,6 @@ __metadata: "@girs/gck-2": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2498,22 +1972,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gcrgtk3-4@workspace:types/gcrgtk3-4" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gck-2": "workspace:^" "@girs/gcr-4": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2522,23 +1986,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gcrgtk4-4@workspace:types/gcrgtk4-4" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gck-2": "workspace:^" "@girs/gcr-4": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2547,22 +2000,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gcrui-3@workspace:types/gcrui-3" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gck-1": "workspace:^" "@girs/gcr-3": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2571,20 +2014,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gd-1.0@workspace:types/gd-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2594,7 +2025,6 @@ __metadata: resolution: "@girs/gda-5.0@workspace:types/gda-5.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -2618,9 +2048,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdata-0.0@workspace:types/gdata-0.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/goa-1.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" @@ -2634,22 +2062,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdaui-5.0@workspace:types/gdaui-5.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gda-5.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2658,22 +2073,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdaui-6.0@workspace:types/gdaui-6.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gda-6.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2683,7 +2085,6 @@ __metadata: resolution: "@girs/gdesktopenums-3.0@workspace:types/gdesktopenums-3.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2693,14 +2094,9 @@ __metadata: resolution: "@girs/gdk-2.0@workspace:types/gdk-2.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2711,14 +2107,9 @@ __metadata: resolution: "@girs/gdk-3.0@workspace:types/gdk-3.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2729,14 +2120,9 @@ __metadata: resolution: "@girs/gdk-4.0@workspace:types/gdk-4.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" @@ -2749,9 +2135,7 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2761,11 +2145,7 @@ __metadata: resolution: "@girs/gdkpixdata-2.0@workspace:types/gdkpixdata-2.0" dependencies: "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2774,18 +2154,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdkwayland-4.0@workspace:types/gdkwayland-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2794,16 +2164,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdkx11-2.0@workspace:types/gdkx11-2.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -2815,15 +2179,10 @@ __metadata: resolution: "@girs/gdkx11-3.0@workspace:types/gdkx11-3.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -2834,18 +2193,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdkx11-4.0@workspace:types/gdkx11-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2855,20 +2204,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gdl-3@workspace:types/gdl-3" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2889,21 +2227,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gedit-3.0@workspace:types/gedit-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-4": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2958,22 +2284,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/geglgtk3-0.1@workspace:types/geglgtk3-0.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/babl-0.1": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gegl-0.4": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -2984,7 +2297,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -2996,7 +2308,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/soup-2.4": "workspace:^" @@ -3010,7 +2321,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" @@ -3022,24 +2332,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gepub-0.5@workspace:types/gepub-0.5" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/javascriptcore-4.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/soup-2.4": "workspace:^" "@girs/webkit2-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3050,12 +2346,8 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstaudio-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstpbutils-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" typescript: "npm:*" @@ -3068,7 +2360,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3121,7 +2412,6 @@ __metadata: resolution: "@girs/gio-2.0@workspace:types/gio-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3132,7 +2422,6 @@ __metadata: resolution: "@girs/girepository-2.0@workspace:types/girepository-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3142,9 +2431,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gitg-1.0@workspace:types/gitg-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gee-0.8": "workspace:^" @@ -3152,12 +2439,9 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3166,23 +2450,15 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gitgext-1.0@workspace:types/gitgext-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gee-0.8": "workspace:^" "@girs/ggit-1.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gitg-1.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3213,19 +2489,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gkbd-3.0@workspace:types/gkbd-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/xkl-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -3237,7 +2503,6 @@ __metadata: resolution: "@girs/gl-1.0@workspace:types/gl-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3246,20 +2511,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gladeui-2.0@workspace:types/gladeui-2.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3269,7 +2522,6 @@ __metadata: resolution: "@girs/glib-2.0@workspace:types/glib-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3280,8 +2532,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3292,7 +2542,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3304,7 +2553,6 @@ __metadata: dependencies: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3325,21 +2573,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomeautoargtk-0.1@workspace:types/gnomeautoargtk-0.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gnomeautoar-0.1": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3348,20 +2584,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomebg-4.0@workspace:types/gnomebg-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gnomedesktop-4.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3370,20 +2596,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomebluetooth-1.0@workspace:types/gnomebluetooth-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3394,8 +2610,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3404,21 +2618,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomedesktop-3.0@workspace:types/gnomedesktop-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3431,8 +2634,6 @@ __metadata: "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3443,7 +2644,6 @@ __metadata: resolution: "@girs/gnomekeyring-1.0@workspace:types/gnomekeyring-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3453,25 +2653,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomemaps-1.0@workspace:types/gnomemaps-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/champlain-0.12": "workspace:^" - "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/geocodeglib-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/rest-0.7": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3480,20 +2667,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gnomerr-4.0@workspace:types/gnomerr-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gnomedesktop-4.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3504,8 +2680,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3524,20 +2698,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/goocanvas-2.0@workspace:types/goocanvas-2.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3546,20 +2708,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/goocanvas-3.0@workspace:types/goocanvas-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3573,7 +2723,6 @@ __metadata: "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/rest-0.7": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3583,7 +2732,6 @@ __metadata: resolution: "@girs/gpseq-1.0@workspace:types/gpseq-1.0" dependencies: "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" @@ -3595,21 +2743,16 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/granite-1.0@workspace:types/granite-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3618,22 +2761,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/granite-7.0@workspace:types/granite-7.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gee-0.8": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3643,7 +2777,6 @@ __metadata: resolution: "@girs/graphene-1.0@workspace:types/graphene-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3667,7 +2800,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" @@ -3680,7 +2812,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" @@ -3705,7 +2836,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -3718,7 +2848,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" @@ -3731,8 +2860,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/grl-0.2": "workspace:^" typescript: "npm:*" @@ -3745,8 +2872,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/grl-0.3": "workspace:^" typescript: "npm:*" @@ -3759,7 +2884,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" @@ -3773,7 +2897,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -3786,7 +2909,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3798,7 +2920,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3808,19 +2929,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gsk-4.0@workspace:types/gsk-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3831,7 +2942,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3841,20 +2951,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gspell-1@workspace:types/gspell-1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -3865,7 +2963,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -3878,7 +2975,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -3891,7 +2987,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" @@ -3928,9 +3023,6 @@ __metadata: resolution: "@girs/gstallocators-1.0@workspace:types/gstallocators-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3941,9 +3033,6 @@ __metadata: resolution: "@girs/gstapp-1.0@workspace:types/gstapp-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" typescript: "npm:*" @@ -3969,9 +3058,6 @@ __metadata: resolution: "@girs/gstbadallocators-1.0@workspace:types/gstbadallocators-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -3982,9 +3068,6 @@ __metadata: resolution: "@girs/gstbadaudio-1.0@workspace:types/gstbadaudio-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" @@ -4037,11 +3120,7 @@ __metadata: resolution: "@girs/gstcodecs-1.0@workspace:types/gstcodecs-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4065,9 +3144,6 @@ __metadata: resolution: "@girs/gstfft-1.0@workspace:types/gstfft-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4078,9 +3154,6 @@ __metadata: resolution: "@girs/gstgl-1.0@workspace:types/gstgl-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" @@ -4093,9 +3166,6 @@ __metadata: resolution: "@girs/gstglegl-1.0@workspace:types/gstglegl-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstgl-1.0": "workspace:^" @@ -4109,9 +3179,6 @@ __metadata: resolution: "@girs/gstglwayland-1.0@workspace:types/gstglwayland-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstgl-1.0": "workspace:^" @@ -4125,9 +3192,6 @@ __metadata: resolution: "@girs/gstglx11-1.0@workspace:types/gstglx11-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstgl-1.0": "workspace:^" @@ -4141,9 +3205,6 @@ __metadata: resolution: "@girs/gstinsertbin-1.0@workspace:types/gstinsertbin-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4168,9 +3229,6 @@ __metadata: resolution: "@girs/gstmpegts-1.0@workspace:types/gstmpegts-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4209,9 +3267,6 @@ __metadata: resolution: "@girs/gstpbutils-1.0@workspace:types/gstpbutils-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" @@ -4225,9 +3280,6 @@ __metadata: resolution: "@girs/gstplay-1.0@workspace:types/gstplay-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" @@ -4243,9 +3295,6 @@ __metadata: resolution: "@girs/gstplayer-1.0@workspace:types/gstplayer-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstaudio-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" @@ -4261,9 +3310,6 @@ __metadata: resolution: "@girs/gstriff-1.0@workspace:types/gstriff-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4274,9 +3320,6 @@ __metadata: resolution: "@girs/gstrtp-1.0@workspace:types/gstrtp-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" typescript: "npm:*" @@ -4289,9 +3332,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstsdp-1.0": "workspace:^" @@ -4303,16 +3343,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gstrtspserver-1.0@workspace:types/gstrtspserver-1.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstnet-1.0": "workspace:^" "@girs/gstrtsp-1.0": "workspace:^" - "@girs/gstsdp-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4322,9 +3356,6 @@ __metadata: resolution: "@girs/gstsdp-1.0@workspace:types/gstsdp-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4349,9 +3380,6 @@ __metadata: resolution: "@girs/gsttag-1.0@workspace:types/gsttag-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" typescript: "npm:*" @@ -4363,14 +3391,9 @@ __metadata: resolution: "@girs/gsttranscoder-1.0@workspace:types/gsttranscoder-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstaudio-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstpbutils-1.0": "workspace:^" - "@girs/gstvideo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4395,9 +3418,6 @@ __metadata: resolution: "@girs/gstvideo-1.0@workspace:types/gstvideo-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" typescript: "npm:*" @@ -4409,9 +3429,6 @@ __metadata: resolution: "@girs/gstvulkan-1.0@workspace:types/gstvulkan-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" "@girs/gstvideo-1.0": "workspace:^" @@ -4425,9 +3442,6 @@ __metadata: resolution: "@girs/gstwebrtc-1.0@workspace:types/gstwebrtc-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/gstsdp-1.0": "workspace:^" typescript: "npm:*" @@ -4440,8 +3454,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4450,21 +3462,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtef-2@workspace:types/gtef-2" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4474,17 +3474,8 @@ __metadata: resolution: "@girs/gtk-2.0@workspace:types/gtk-2.0" dependencies: "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-2.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4494,17 +3485,8 @@ __metadata: resolution: "@girs/gtk-3.0@workspace:types/gtk-3.0" dependencies: "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4514,20 +3496,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtk-4.0@workspace:types/gtk-4.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gsk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4536,27 +3507,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtkchamplain-0.12@workspace:types/gtkchamplain-0.12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/champlain-0.12": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4565,26 +3519,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtkclutter-1.0@workspace:types/gtkclutter-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-1.0": "workspace:^" - "@girs/cogl-1.0": "workspace:^" - "@girs/coglpango-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4593,20 +3530,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtksource-3.0@workspace:types/gtksource-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4615,20 +3541,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtksource-4@workspace:types/gtksource-4" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4637,21 +3552,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtksource-5@workspace:types/gtksource-5" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4660,21 +3562,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gtkvnc-2.0@workspace:types/gtkvnc-2.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gvnc-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4684,8 +3575,6 @@ __metadata: resolution: "@girs/gtop-2.0@workspace:types/gtop-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4694,20 +3583,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gucharmap-2.90@workspace:types/gucharmap-2.90" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4717,7 +3596,6 @@ __metadata: resolution: "@girs/gudev-1.0@workspace:types/gudev-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4729,7 +3607,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4739,9 +3616,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gupnp-1.0@workspace:types/gupnp-1.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gssdp-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" @@ -4756,7 +3631,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gssdp-1.2": "workspace:^" "@girs/libxml2-2.0": "workspace:^" @@ -4771,7 +3645,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gssdp-1.6": "workspace:^" "@girs/libxml2-2.0": "workspace:^" @@ -4785,7 +3658,6 @@ __metadata: resolution: "@girs/gupnpav-1.0@workspace:types/gupnpav-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -4801,10 +3673,7 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstaudio-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstpbutils-1.0": "workspace:^" - "@girs/gstvideo-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4815,7 +3684,6 @@ __metadata: resolution: "@girs/gupnpdlna-2.0@workspace:types/gupnpdlna-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4826,14 +3694,9 @@ __metadata: resolution: "@girs/gupnpdlnagst-2.0@workspace:types/gupnpdlnagst-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gstaudio-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gstpbutils-1.0": "workspace:^" - "@girs/gstvideo-1.0": "workspace:^" "@girs/gupnpdlna-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4844,7 +3707,6 @@ __metadata: resolution: "@girs/gupnpigd-1.0@workspace:types/gupnpigd-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4856,7 +3718,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" typescript: "npm:*" @@ -4869,7 +3730,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4881,7 +3741,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -4891,9 +3750,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gvncpulse-1.0@workspace:types/gvncpulse-1.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gvnc-1.0": "workspace:^" typescript: "npm:*" @@ -4904,20 +3761,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/gweather-3.0@workspace:types/gweather-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -4928,8 +3774,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5020,20 +3864,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/handy-0.0@workspace:types/handy-0.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5042,20 +3875,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/handy-1@workspace:types/handy-1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5066,7 +3888,6 @@ __metadata: dependencies: "@girs/freetype2-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5077,21 +3898,9 @@ __metadata: resolution: "@girs/ianjuta-3.0@workspace:types/ianjuta-3.0" dependencies: "@girs/anjuta-3.0": "workspace:^" - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gdl-3": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5113,7 +3922,6 @@ __metadata: resolution: "@girs/ical-3.0@workspace:types/ical-3.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5134,26 +3942,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/ide-1.0@workspace:types/ide-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/dazzle-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" - "@girs/girepository-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/peas-1.0": "workspace:^" "@girs/template-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5163,7 +3958,6 @@ __metadata: resolution: "@girs/javascriptcore-4.0@workspace:types/javascriptcore-4.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5174,7 +3968,6 @@ __metadata: resolution: "@girs/javascriptcore-4.1@workspace:types/javascriptcore-4.1" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5185,7 +3978,6 @@ __metadata: resolution: "@girs/javascriptcore-5.0@workspace:types/javascriptcore-5.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5196,7 +3988,6 @@ __metadata: resolution: "@girs/javascriptcore-6.0@workspace:types/javascriptcore-6.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5207,7 +3998,6 @@ __metadata: resolution: "@girs/jscore-3.0@workspace:types/jscore-3.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5218,7 +4008,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5254,7 +4043,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -5266,7 +4054,6 @@ __metadata: resolution: "@girs/libvirtgconfig-1.0@workspace:types/libvirtgconfig-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" @@ -5279,7 +4066,6 @@ __metadata: dependencies: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5290,11 +4076,9 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libvirtgconfig-1.0": "workspace:^" "@girs/libvirtglib-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5304,7 +4088,6 @@ __metadata: resolution: "@girs/libxml2-2.0@workspace:types/libxml2-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5315,7 +4098,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gudev-1.0": "workspace:^" typescript: "npm:*" @@ -5338,11 +4120,9 @@ __metadata: "@girs/gl-1.0": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" - "@girs/pangofc-1.0": "workspace:^" "@girs/pangoft2-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5366,7 +4146,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5378,7 +4157,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5388,27 +4166,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/meta-10@workspace:types/meta-10" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-10": "workspace:^" "@girs/cogl-10": "workspace:^" "@girs/coglpango-10": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5419,27 +4184,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/meta-11@workspace:types/meta-11" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-11": "workspace:^" "@girs/cogl-11": "workspace:^" "@girs/coglpango-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5450,23 +4202,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/meta-12@workspace:types/meta-12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-12": "workspace:^" "@girs/cogl-12": "workspace:^" "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5477,24 +4218,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/meta-13@workspace:types/meta-13" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-13": "workspace:^" "@girs/cogl-13": "workspace:^" "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/mtk-13": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5505,24 +4235,13 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/metatest-12@workspace:types/metatest-12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-12": "workspace:^" "@girs/cogl-12": "workspace:^" "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-12": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5533,25 +4252,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/metatest-13@workspace:types/metatest-13" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/clutter-13": "workspace:^" "@girs/cogl-13": "workspace:^" "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-13": "workspace:^" "@girs/mtk-13": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xfixes-4.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5576,7 +4284,6 @@ __metadata: dependencies: "@girs/cairo-1.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" typescript: "npm:*" @@ -5599,11 +4306,9 @@ __metadata: "@girs/gl-1.0": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" - "@girs/pangofc-1.0": "workspace:^" "@girs/pangoft2-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5625,11 +4330,9 @@ __metadata: "@girs/gl-1.0": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" - "@girs/pangofc-1.0": "workspace:^" "@girs/pangoft2-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5641,7 +4344,6 @@ __metadata: dependencies: "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-2.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" @@ -5650,7 +4352,6 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5660,20 +4361,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/nautilus-3.0@workspace:types/nautilus-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5684,7 +4375,6 @@ __metadata: dependencies: "@girs/dbusglib-1.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5696,7 +4386,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5708,8 +4397,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5718,21 +4405,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/nma-1.0@workspace:types/nma-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/nm-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5744,8 +4419,6 @@ __metadata: "@girs/dbusglib-1.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/networkmanager-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5755,23 +4428,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/nmgtk-1.0@workspace:types/nmgtk-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/dbusglib-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/networkmanager-1.0": "workspace:^" "@girs/nmclient-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5781,11 +4441,8 @@ __metadata: resolution: "@girs/notify-0.7@workspace:types/notify-0.7" dependencies: "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5796,8 +4453,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5807,7 +4462,6 @@ __metadata: resolution: "@girs/p11kit-1.0@workspace:types/p11kit-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5830,7 +4484,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/packagekitglib-1.0": "workspace:^" typescript: "npm:*" @@ -5843,7 +4496,6 @@ __metadata: dependencies: "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gconf-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" @@ -5853,7 +4505,6 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -5865,10 +4516,8 @@ __metadata: resolution: "@girs/pango-1.0@workspace:types/pango-1.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/harfbuzz-0.0": "workspace:^" typescript: "npm:*" @@ -5880,12 +4529,8 @@ __metadata: resolution: "@girs/pangocairo-1.0@workspace:types/pangocairo-1.0" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5895,14 +4540,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/pangofc-1.0@workspace:types/pangofc-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" "@girs/fontconfig-2.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5912,15 +4551,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/pangoft2-1.0@workspace:types/pangoft2-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/fontconfig-2.0": "workspace:^" "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/pangofc-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5930,15 +4562,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/pangoot-1.0@workspace:types/pangoot-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/fontconfig-2.0": "workspace:^" "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/pangofc-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -5948,16 +4573,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/pangoxft-1.0@workspace:types/pangoxft-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/fontconfig-2.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/pangofc-1.0": "workspace:^" "@girs/pangoft2-1.0": "workspace:^" "@girs/pangoot-1.0": "workspace:^" "@girs/xft-2.0": "workspace:^" @@ -5971,10 +4589,7 @@ __metadata: resolution: "@girs/parquet-1.0@workspace:types/parquet-1.0" dependencies: "@girs/arrow-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -5986,7 +4601,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/girepository-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" @@ -5999,7 +4613,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" @@ -6010,22 +4623,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/peasgtk-1.0@workspace:types/peasgtk-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" - "@girs/girepository-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/peas-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6036,10 +4637,7 @@ __metadata: dependencies: "@girs/arrow-1.0": "workspace:^" "@girs/arrowcuda-1.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6048,20 +4646,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/pnl-1.0@workspace:types/pnl-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6072,8 +4660,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6084,8 +4670,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/polkit-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6098,7 +4682,6 @@ __metadata: "@girs/cairo-1.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6135,7 +4718,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -6148,7 +4730,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" @@ -6159,13 +4740,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/restextras-0.7@workspace:types/restextras-0.7" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" "@girs/rest-0.7": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6176,7 +4754,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/rest-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" @@ -6188,20 +4765,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/retro-0.14@workspace:types/retro-0.14" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6210,20 +4779,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/retro-1@workspace:types/retro-1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6232,21 +4793,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/retro-2@workspace:types/retro-2" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6260,7 +4812,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6275,10 +4826,7 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.2": "workspace:^" "@girs/gupnp-1.2": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6292,10 +4840,7 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.6": "workspace:^" "@girs/gupnp-1.6": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6304,17 +4849,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/rygelrenderer-2.6@workspace:types/rygelrenderer-2.6" dependencies: - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.2": "workspace:^" - "@girs/gupnp-1.2": "workspace:^" "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.6": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6323,17 +4862,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/rygelrenderer-2.8@workspace:types/rygelrenderer-2.8" dependencies: - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.6": "workspace:^" - "@girs/gupnp-1.6": "workspace:^" "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.8": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6342,20 +4875,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/rygelrenderergst-2.6@workspace:types/rygelrenderergst-2.6" dependencies: - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.2": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gupnp-1.2": "workspace:^" - "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.6": "workspace:^" "@girs/rygelrenderer-2.6": "workspace:^" - "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6364,20 +4889,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/rygelrenderergst-2.8@workspace:types/rygelrenderergst-2.8" dependencies: - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.6": "workspace:^" "@girs/gst-1.0": "workspace:^" - "@girs/gupnp-1.6": "workspace:^" - "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.8": "workspace:^" "@girs/rygelrenderer-2.8": "workspace:^" - "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6391,10 +4908,8 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.2": "workspace:^" "@girs/gupnp-1.2": "workspace:^" "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.6": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -6410,10 +4925,8 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gssdp-1.6": "workspace:^" "@girs/gupnp-1.6": "workspace:^" "@girs/gupnpav-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/rygelcore-2.8": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" @@ -6426,7 +4939,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6438,7 +4950,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/secret-1": "workspace:^" typescript: "npm:*" @@ -6449,38 +4960,14 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/shell-0.1@workspace:types/shell-0.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/cally-11": "workspace:^" "@girs/clutter-11": "workspace:^" - "@girs/cogl-11": "workspace:^" - "@girs/coglpango-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gck-1": "workspace:^" "@girs/gcr-3": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gtk-3.0": "workspace:^" "@girs/gvc-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-11": "workspace:^" "@girs/nm-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/polkit-1.0": "workspace:^" "@girs/polkitagent-1.0": "workspace:^" "@girs/st-1.0": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6489,36 +4976,15 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/shell-12@workspace:types/shell-12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/cally-12": "workspace:^" "@girs/clutter-12": "workspace:^" - "@girs/cogl-12": "workspace:^" - "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gck-2": "workspace:^" "@girs/gcr-4": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gvc-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-12": "workspace:^" "@girs/nm-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/polkit-1.0": "workspace:^" "@girs/polkitagent-1.0": "workspace:^" "@girs/st-12": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6527,37 +4993,15 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/shell-13@workspace:types/shell-13" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/cally-13": "workspace:^" "@girs/clutter-13": "workspace:^" - "@girs/cogl-13": "workspace:^" - "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gck-2": "workspace:^" "@girs/gcr-4": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gvc-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-13": "workspace:^" - "@girs/mtk-13": "workspace:^" "@girs/nm-1.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/polkit-1.0": "workspace:^" "@girs/polkitagent-1.0": "workspace:^" "@girs/st-13": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6566,21 +5010,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/shew-0@workspace:types/shew-0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6589,21 +5021,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/shumate-1.0@workspace:types/shumate-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6614,7 +5036,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6626,7 +5047,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6639,7 +5059,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6650,8 +5069,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6662,8 +5079,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6672,10 +5087,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/soupgnome-2.4@workspace:types/soupgnome-2.4" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6687,10 +5099,7 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gst-1.0": "workspace:^" "@girs/gstbase-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -6700,23 +5109,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/spiceclientgtk-3.0@workspace:types/spiceclientgtk-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gst-1.0": "workspace:^" - "@girs/gstbase-1.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/spiceclientglib-2.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6725,31 +5121,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/st-1.0@workspace:types/st-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/cally-11": "workspace:^" "@girs/clutter-11": "workspace:^" - "@girs/cogl-11": "workspace:^" - "@girs/coglpango-11": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-11": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6758,29 +5134,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/st-12@workspace:types/st-12" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/cally-12": "workspace:^" "@girs/clutter-12": "workspace:^" - "@girs/cogl-12": "workspace:^" - "@girs/coglpango-12": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-12": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6789,30 +5147,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/st-13@workspace:types/st-13" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" "@girs/cally-13": "workspace:^" "@girs/clutter-13": "workspace:^" - "@girs/cogl-13": "workspace:^" - "@girs/coglpango-13": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdesktopenums-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/gl-1.0": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/json-1.0": "workspace:^" "@girs/meta-13": "workspace:^" - "@girs/mtk-13": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" - "@girs/xfixes-4.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6843,12 +5182,10 @@ __metadata: "@girs/gsttag-0.10": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/libxml2-2.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/pangocairo-1.0": "workspace:^" - "@girs/pangofc-1.0": "workspace:^" "@girs/pangoft2-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -6860,10 +5197,7 @@ __metadata: resolution: "@girs/telepathyfarstream-0.6@workspace:types/telepathyfarstream-0.6" dependencies: "@girs/farstream-0.2": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gst-1.0": "workspace:^" "@girs/telepathyglib-0.12": "workspace:^" @@ -6878,7 +5212,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6887,9 +5220,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/telepathylogger-0.2@workspace:types/telepathylogger-0.2" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/telepathyglib-0.12": "workspace:^" typescript: "npm:*" @@ -6902,8 +5233,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6913,21 +5242,9 @@ __metadata: resolution: "@girs/tepl-4@workspace:types/tepl-4" dependencies: "@girs/amtk-5": "workspace:^" - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-4": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6937,21 +5254,9 @@ __metadata: resolution: "@girs/tepl-5@workspace:types/tepl-5" dependencies: "@girs/amtk-5": "workspace:^" - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-4": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6961,21 +5266,9 @@ __metadata: resolution: "@girs/tepl-6@workspace:types/tepl-6" dependencies: "@girs/amtk-5": "workspace:^" - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" "@girs/gtksource-4": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -6986,7 +5279,6 @@ __metadata: dependencies: "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" @@ -6995,7 +5287,6 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" @@ -7007,21 +5298,12 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/totem-1.0@workspace:types/totem-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/totemplparser-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7032,7 +5314,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7080,8 +5361,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7104,7 +5383,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/tracker-1.0": "workspace:^" @@ -7130,8 +5408,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7140,9 +5416,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/uhm-0.0@workspace:types/uhm-0.0" dependencies: - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/soup-2.4": "workspace:^" typescript: "npm:*" @@ -7155,7 +5429,6 @@ __metadata: dependencies: "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" "@girs/gio-2.0": "workspace:^" @@ -7164,7 +5437,6 @@ __metadata: "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -7185,7 +5457,7 @@ __metadata: languageName: unknown linkType: soft -"@girs/unity-7.0@workspace:^, @girs/unity-7.0@workspace:types/unity-7.0": +"@girs/unity-7.0@workspace:types/unity-7.0": version: 0.0.0-use.local resolution: "@girs/unity-7.0@workspace:types/unity-7.0" dependencies: @@ -7207,7 +5479,6 @@ __metadata: "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/unity-7.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7218,7 +5489,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7236,7 +5506,6 @@ __metadata: "@girs/gobject-2.0": "workspace:^" "@girs/gxml-0.20": "workspace:^" "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7245,15 +5514,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vgda-1@workspace:types/vgda-1" dependencies: - "@girs/gcalc-2": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gxml-0.20": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/vda-1": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7263,15 +5525,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vgpg-1@workspace:types/vgpg-1" dependencies: - "@girs/gcalc-2": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/gxml-0.20": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/vda-1": "workspace:^" "@girs/vgda-1": "workspace:^" typescript: "npm:*" @@ -7282,16 +5536,7 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vgsl-1@workspace:types/vgsl-1" dependencies: - "@girs/gcalc-2": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/gxml-0.20": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" - "@girs/vda-1": "workspace:^" "@girs/vgda-1": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7302,7 +5547,6 @@ __metadata: resolution: "@girs/vips-8.0@workspace:types/vips-8.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7312,15 +5556,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vpg-1@workspace:types/vpg-1" dependencies: - "@girs/gcalc-2": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gxml-0.20": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/vda-1": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7330,15 +5567,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vsqlite-1@workspace:types/vsqlite-1" dependencies: - "@girs/gcalc-2": "workspace:^" - "@girs/gee-0.8": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" - "@girs/gxml-0.20": "workspace:^" - "@girs/json-1.0": "workspace:^" - "@girs/libxml2-2.0": "workspace:^" "@girs/vda-1": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7348,20 +5578,11 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/vte-2.91@workspace:types/vte-2.91" dependencies: - "@girs/atk-1.0": "workspace:^" "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7371,20 +5592,12 @@ __metadata: resolution: "@girs/vte-3.91@workspace:types/vte-3.91" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7394,20 +5607,12 @@ __metadata: resolution: "@girs/vte-4-2.91@workspace:types/vte-4-2.91" dependencies: "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/graphene-1.0": "workspace:^" "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7417,7 +5622,6 @@ __metadata: resolution: "@girs/vulkan-1.0@workspace:types/vulkan-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7426,22 +5630,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit-6.0@workspace:types/webkit-6.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-6.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7451,22 +5642,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2-4.0@workspace:types/webkit2-4.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-4.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/soup-2.4": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7475,22 +5654,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2-4.1@workspace:types/webkit2-4.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-4.1": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7499,22 +5666,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2-5.0@workspace:types/webkit2-5.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-5.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7524,22 +5678,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2webextension-4.0@workspace:types/webkit2webextension-4.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-4.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/soup-2.4": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7548,22 +5690,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2webextension-4.1@workspace:types/webkit2webextension-4.1" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-4.1": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7572,22 +5702,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkit2webextension-5.0@workspace:types/webkit2webextension-5.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-5.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7597,22 +5714,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkitwebextension-6.0@workspace:types/webkitwebextension-6.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-6.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7622,22 +5726,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/webkitwebprocessextension-6.0@workspace:types/webkitwebprocessextension-6.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" "@girs/javascriptcore-6.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/soup-3.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7648,7 +5739,6 @@ __metadata: resolution: "@girs/win32-1.0@workspace:types/win32-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7657,20 +5747,10 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/wnck-3.0@workspace:types/wnck-3.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7681,8 +5761,6 @@ __metadata: dependencies: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7691,21 +5769,9 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/xdpgtk3-1.0@workspace:types/xdpgtk3-1.0" dependencies: - "@girs/atk-1.0": "workspace:^" - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-3.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/gtk-3.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" "@girs/xdp-1.0": "workspace:^" - "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7714,21 +5780,8 @@ __metadata: version: 0.0.0-use.local resolution: "@girs/xdpgtk4-1.0@workspace:types/xdpgtk4-1.0" dependencies: - "@girs/cairo-1.0": "workspace:^" - "@girs/freetype2-2.0": "workspace:^" - "@girs/gdk-4.0": "workspace:^" - "@girs/gdkpixbuf-2.0": "workspace:^" - "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" - "@girs/gmodule-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" - "@girs/graphene-1.0": "workspace:^" - "@girs/gsk-4.0": "workspace:^" "@girs/gtk-4.0": "workspace:^" - "@girs/harfbuzz-0.0": "workspace:^" - "@girs/pango-1.0": "workspace:^" - "@girs/pangocairo-1.0": "workspace:^" "@girs/xdp-1.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7739,7 +5792,6 @@ __metadata: resolution: "@girs/xfixes-4.0@workspace:types/xfixes-4.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7749,7 +5801,6 @@ __metadata: resolution: "@girs/xft-2.0@workspace:types/xft-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" languageName: unknown @@ -7760,7 +5811,6 @@ __metadata: resolution: "@girs/xkl-1.0@workspace:types/xkl-1.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/glib-2.0": "workspace:^" "@girs/gobject-2.0": "workspace:^" "@girs/xlib-2.0": "workspace:^" typescript: "npm:*" @@ -7772,7 +5822,6 @@ __metadata: resolution: "@girs/xlib-2.0@workspace:types/xlib-2.0" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7782,7 +5831,6 @@ __metadata: resolution: "@girs/xrandr-1.3@workspace:types/xrandr-1.3" dependencies: "@girs/gjs": "workspace:^" - "@girs/gobject-2.0": "workspace:^" typescript: "npm:*" languageName: unknown linkType: soft @@ -7806,7 +5854,6 @@ __metadata: "@girs/gio-2.0": "workspace:^" "@girs/gjs": "workspace:^" "@girs/glib-2.0": "workspace:^" - "@girs/gobject-2.0": "workspace:^" "@girs/json-1.0": "workspace:^" "@girs/rest-0.7": "workspace:^" "@girs/soup-2.4": "workspace:^" @@ -7853,7 +5900,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.2, @jridgewell/gen-mapping@npm:^0.3.5": +"@jridgewell/gen-mapping@npm:^0.3.2, @jridgewell/gen-mapping@npm:^0.3.5": version: 0.3.5 resolution: "@jridgewell/gen-mapping@npm:0.3.5" dependencies: @@ -7879,12 +5926,12 @@ __metadata: linkType: hard "@jridgewell/source-map@npm:^0.3.3": - version: 0.3.5 - resolution: "@jridgewell/source-map@npm:0.3.5" + version: 0.3.6 + resolution: "@jridgewell/source-map@npm:0.3.6" dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.0" - "@jridgewell/trace-mapping": "npm:^0.3.9" - checksum: 10/73838ac43235edecff5efc850c0d759704008937a56b1711b28c261e270fe4bf2dc06d0b08663aeb1ab304f81f6de4f5fb844344403cf53ba7096967a9953cae + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + checksum: 10/0a9aca9320dc9044014ba0ef989b3a8411b0d778895553e3b7ca2ac0a75a20af4a5ad3f202acfb1879fa40466036a4417e1d5b38305baed8b9c1ebe6e4b3e7f5 languageName: node linkType: hard @@ -7905,7 +5952,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.9": +"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -7915,12 +5962,12 @@ __metadata: languageName: node linkType: hard -"@ljharb/through@npm:^2.3.12": - version: 2.3.12 - resolution: "@ljharb/through@npm:2.3.12" +"@ljharb/through@npm:^2.3.13": + version: 2.3.13 + resolution: "@ljharb/through@npm:2.3.13" dependencies: - call-bind: "npm:^1.0.5" - checksum: 10/e1bd9b3a068d6a5886e0116ac34a13ec161d21088f65c5ca17beb141382af2358b46be9e359e6585496e9e61a4390839386dc78f5656e54e89a95c373b9eacfb + call-bind: "npm:^1.0.7" + checksum: 10/6150c6c43a726d52c26863ed6dc4ab54fa7cf625c81463a5ddec86278c99e23bf94dfc99ebf09a9ac3191332d4a27344e092f7e07f252b8cd600e2b38e645870 languageName: node linkType: hard @@ -8022,93 +6069,93 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.12.1" +"@rollup/rollup-android-arm-eabi@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.13.0" conditions: os=android & cpu=arm languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-android-arm64@npm:4.12.1" +"@rollup/rollup-android-arm64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-android-arm64@npm:4.13.0" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-darwin-arm64@npm:4.12.1" +"@rollup/rollup-darwin-arm64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.13.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-darwin-x64@npm:4.12.1" +"@rollup/rollup-darwin-x64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.13.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.12.1" +"@rollup/rollup-linux-arm-gnueabihf@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.13.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.12.1" +"@rollup/rollup-linux-arm64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.13.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-musl@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.12.1" +"@rollup/rollup-linux-arm64-musl@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.13.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.12.1" +"@rollup/rollup-linux-riscv64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.13.0" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.12.1" +"@rollup/rollup-linux-x64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.13.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.12.1" +"@rollup/rollup-linux-x64-musl@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.13.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.12.1" +"@rollup/rollup-win32-arm64-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.13.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.12.1" +"@rollup/rollup-win32-ia32-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.13.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.12.1": - version: 4.12.1 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.12.1" +"@rollup/rollup-win32-x64-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.13.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -8591,18 +6638,18 @@ __metadata: linkType: hard "@types/lodash@npm:^4.14.202": - version: 4.14.202 - resolution: "@types/lodash@npm:4.14.202" - checksum: 10/1bb9760a5b1dda120132c4b987330d67979c95dbc22612678682cd61b00302e190f4207228f3728580059cdab5582362262e3819aea59960c1017bd2b9fb26f6 + version: 4.17.0 + resolution: "@types/lodash@npm:4.17.0" + checksum: 10/2053203292b5af99352d108656ceb15d39da5922fc3fb8186e1552d65c82d6e545372cc97f36c95873aa7186404d59d9305e9d49254d4ae55e77df1e27ab7b5d languageName: node linkType: hard "@types/node@npm:*, @types/node@npm:^20.11.25": - version: 20.11.25 - resolution: "@types/node@npm:20.11.25" + version: 20.11.27 + resolution: "@types/node@npm:20.11.27" dependencies: undici-types: "npm:~5.26.4" - checksum: 10/861265f1bbb151404bd8842b595f027a4ff067c61ecff9a37b9f7f53922c18dd532c8e795e8e7675dd8dba056645623fd2b9848d5ef72863ec3609096cd2923e + checksum: 10/4be53485d499dd7c7896190e76a0ce1f6c6917d1f4d0b4b240b3670160fcbc548daed32beaac0fc92429b37dbeaa2496fc56f460acaab969bddb77394318a89b languageName: node linkType: hard @@ -8648,14 +6695,14 @@ __metadata: linkType: hard "@typescript-eslint/eslint-plugin@npm:^7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/eslint-plugin@npm:7.1.1" + version: 7.2.0 + resolution: "@typescript-eslint/eslint-plugin@npm:7.2.0" dependencies: "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:7.1.1" - "@typescript-eslint/type-utils": "npm:7.1.1" - "@typescript-eslint/utils": "npm:7.1.1" - "@typescript-eslint/visitor-keys": "npm:7.1.1" + "@typescript-eslint/scope-manager": "npm:7.2.0" + "@typescript-eslint/type-utils": "npm:7.2.0" + "@typescript-eslint/utils": "npm:7.2.0" + "@typescript-eslint/visitor-keys": "npm:7.2.0" debug: "npm:^4.3.4" graphemer: "npm:^1.4.0" ignore: "npm:^5.2.4" @@ -8668,44 +6715,44 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 10/5b357566a6dd7996ef2fdd13e5f747d55213f6217642c4a53618f432cf211be07ec62e23668132d997e1dcd1b1f56b36406989856ef7da373ea0f94b7c422f23 + checksum: 10/c50366021d63dc0f31fbd4673679d41eeaf53e1d411330742ea6e36bc854d5d9d52531df9efe708078e5c798fb9a6fca45473a451c197f46ac04050d47c9a9d2 languageName: node linkType: hard "@typescript-eslint/parser@npm:^7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/parser@npm:7.1.1" + version: 7.2.0 + resolution: "@typescript-eslint/parser@npm:7.2.0" dependencies: - "@typescript-eslint/scope-manager": "npm:7.1.1" - "@typescript-eslint/types": "npm:7.1.1" - "@typescript-eslint/typescript-estree": "npm:7.1.1" - "@typescript-eslint/visitor-keys": "npm:7.1.1" + "@typescript-eslint/scope-manager": "npm:7.2.0" + "@typescript-eslint/types": "npm:7.2.0" + "@typescript-eslint/typescript-estree": "npm:7.2.0" + "@typescript-eslint/visitor-keys": "npm:7.2.0" debug: "npm:^4.3.4" peerDependencies: eslint: ^8.56.0 peerDependenciesMeta: typescript: optional: true - checksum: 10/6df5fb8f34f887ddb086d2a02b74b422f6468daed3eded9a840b0c77b2d96ef818c8739f151bc1ba904be2973cbd82f48a07ef08101dcfec4cdfc71ef00c0a04 + checksum: 10/2236acd9f794ccb34062309f3d6fa2a0e34ac6560262213807a11fb42592011cd13ff3290a2fdbdf441fb3d248cbe23383e6c7e6c744d1cacc916159d885204f languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/scope-manager@npm:7.1.1" +"@typescript-eslint/scope-manager@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/scope-manager@npm:7.2.0" dependencies: - "@typescript-eslint/types": "npm:7.1.1" - "@typescript-eslint/visitor-keys": "npm:7.1.1" - checksum: 10/74a1de52eebf8f6c050bd071ba580f00dbd104bd0a9a2bfc7a794fcf5019be4b208ab63c318695bb4347669b55abd03016fa46a775d97c9e25f43cb46e5889e0 + "@typescript-eslint/types": "npm:7.2.0" + "@typescript-eslint/visitor-keys": "npm:7.2.0" + checksum: 10/9b1d43c87b0fc269df1820ebcbdb08e1c5c8cc719a6af8298d87077ca78cf5ebbfa8caa6eb5141f4dfb4cbb3a641291c50c73a213faab90bc43d34abfc68a1fe languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/type-utils@npm:7.1.1" +"@typescript-eslint/type-utils@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/type-utils@npm:7.2.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:7.1.1" - "@typescript-eslint/utils": "npm:7.1.1" + "@typescript-eslint/typescript-estree": "npm:7.2.0" + "@typescript-eslint/utils": "npm:7.2.0" debug: "npm:^4.3.4" ts-api-utils: "npm:^1.0.1" peerDependencies: @@ -8713,23 +6760,23 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 10/779a4700d1277180759d4df03af56395cfc4ba039d8bfd9245cf1084448d17c9ab899ebfff719f77713c44736f7adce7a97bd9fffb79bb21a3742ae9bdfcb5ef + checksum: 10/1c4efcd068987ed5bbf6f3dda1fed313eec84fc0840af6e00593338cc2605c96ab760bf83f868271a6b5fcde8a44d00e21b70a8607474a4df9d43d29775bb235 languageName: node linkType: hard -"@typescript-eslint/types@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/types@npm:7.1.1" - checksum: 10/e0fab31cb850a4923e0fca0663497b442a63fecfd1a293f70ecb4145b9f7cfbebb4d0ba29be76d70b95c153e51fc66e0400cd565d7552766783338878955680a +"@typescript-eslint/types@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/types@npm:7.2.0" + checksum: 10/d70cbd77f21caddbb1c3519bb523b5217a300d52682e9acfa9ff645d7250f7f07653f48930f531675216e848b5f83cb9b14cf63db76239cec1159550a989e16d languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/typescript-estree@npm:7.1.1" +"@typescript-eslint/typescript-estree@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/typescript-estree@npm:7.2.0" dependencies: - "@typescript-eslint/types": "npm:7.1.1" - "@typescript-eslint/visitor-keys": "npm:7.1.1" + "@typescript-eslint/types": "npm:7.2.0" + "@typescript-eslint/visitor-keys": "npm:7.2.0" debug: "npm:^4.3.4" globby: "npm:^11.1.0" is-glob: "npm:^4.0.3" @@ -8739,34 +6786,34 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 10/6840f31ffe44072f0e20eb4acc091161eeac265fed44937d33064880269650ea63d68e8d79759f2dfaeff9a5803dcdf30e15a8b27e7db6cffbed42a02f9851e5 + checksum: 10/77a81dc903da1ccb302c96bf7f845f297d87ab7871849bfabdddee51583646a1147923fc23c550c6c783229bc7bda37a3ea147478fa08b3847d0440a34587198 languageName: node linkType: hard -"@typescript-eslint/utils@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/utils@npm:7.1.1" +"@typescript-eslint/utils@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/utils@npm:7.2.0" dependencies: "@eslint-community/eslint-utils": "npm:^4.4.0" "@types/json-schema": "npm:^7.0.12" "@types/semver": "npm:^7.5.0" - "@typescript-eslint/scope-manager": "npm:7.1.1" - "@typescript-eslint/types": "npm:7.1.1" - "@typescript-eslint/typescript-estree": "npm:7.1.1" + "@typescript-eslint/scope-manager": "npm:7.2.0" + "@typescript-eslint/types": "npm:7.2.0" + "@typescript-eslint/typescript-estree": "npm:7.2.0" semver: "npm:^7.5.4" peerDependencies: eslint: ^8.56.0 - checksum: 10/da8daae269ce15360ed91508f7c430b37d2e877321a91f437f611f9b643cc563c4aefe3d6b3983fadbb1bed389c82a4ceac95bbfeb015b62830fdb9ceea40e5a + checksum: 10/4852d43f1e0ca7e4914fef6cb5984a472d77af6fafcfad18905c0ba2ac5539a7ba8e72a4b3f7cbff712733f9cf8e8af790b4875f944aae1006ca297f8e041d32 languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:7.1.1": - version: 7.1.1 - resolution: "@typescript-eslint/visitor-keys@npm:7.1.1" +"@typescript-eslint/visitor-keys@npm:7.2.0": + version: 7.2.0 + resolution: "@typescript-eslint/visitor-keys@npm:7.2.0" dependencies: - "@typescript-eslint/types": "npm:7.1.1" + "@typescript-eslint/types": "npm:7.2.0" eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/d0c6c0811f38186053679b8447469e9a5c040db639d59e710ce5c5f5fddf9554287eb01a7cfa7a31e06f274bbe261c3b89a51a8c42869b1157b2d90c08f79507 + checksum: 10/e0c9c7a9bb1ae93149e7a4816aed12651fd7374d0eb17e1f45348dbfddd8ee7014d3de35b40bc46b9df73cc1c9053aaf5d82b43270d93a0b551ed14e8afde37a languageName: node linkType: hard @@ -8777,13 +6824,13 @@ __metadata: languageName: node linkType: hard -"@webassemblyjs/ast@npm:1.11.6, @webassemblyjs/ast@npm:^1.11.5": - version: 1.11.6 - resolution: "@webassemblyjs/ast@npm:1.11.6" +"@webassemblyjs/ast@npm:1.12.1, @webassemblyjs/ast@npm:^1.11.5": + version: 1.12.1 + resolution: "@webassemblyjs/ast@npm:1.12.1" dependencies: "@webassemblyjs/helper-numbers": "npm:1.11.6" "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - checksum: 10/4c1303971ccd5188731c9b01073d9738333f37b946a48c4e049f7b788706cdc66f473cd6f3e791423a94c52a3b2230d070007930d29bccbce238b23835839f3c + checksum: 10/a775b0559437ae122d14fec0cfe59fdcaf5ca2d8ff48254014fd05d6797e20401e0f1518e628f9b06819aa085834a2534234977f9608b3f2e51f94b6e8b0bc43 languageName: node linkType: hard @@ -8801,10 +6848,10 @@ __metadata: languageName: node linkType: hard -"@webassemblyjs/helper-buffer@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/helper-buffer@npm:1.11.6" - checksum: 10/b14d0573bf680d22b2522e8a341ec451fddd645d1f9c6bd9012ccb7e587a2973b86ab7b89fe91e1c79939ba96095f503af04369a3b356c8023c13a5893221644 +"@webassemblyjs/helper-buffer@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/helper-buffer@npm:1.12.1" + checksum: 10/1d8705daa41f4d22ef7c6d422af4c530b84d69d0c253c6db5adec44d511d7caa66837803db5b1addcea611a1498fd5a67d2cf318b057a916283ae41ffb85ba8a languageName: node linkType: hard @@ -8826,15 +6873,15 @@ __metadata: languageName: node linkType: hard -"@webassemblyjs/helper-wasm-section@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/helper-wasm-section@npm:1.11.6" +"@webassemblyjs/helper-wasm-section@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" - "@webassemblyjs/helper-buffer": "npm:1.11.6" + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/wasm-gen": "npm:1.11.6" - checksum: 10/38a615ab3d55f953daaf78b69f145e2cc1ff5288ab71715d1a164408b735c643a87acd7e7ba3e9633c5dd965439a45bb580266b05a06b22ff678d6c013514108 + "@webassemblyjs/wasm-gen": "npm:1.12.1" + checksum: 10/e91e6b28114e35321934070a2db8973a08a5cd9c30500b817214c683bbf5269ed4324366dd93ad83bf2fba0d671ac8f39df1c142bf58f70c57a827eeba4a3d2f languageName: node linkType: hard @@ -8864,67 +6911,67 @@ __metadata: linkType: hard "@webassemblyjs/wasm-edit@npm:^1.11.5": - version: 1.11.6 - resolution: "@webassemblyjs/wasm-edit@npm:1.11.6" + version: 1.12.1 + resolution: "@webassemblyjs/wasm-edit@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" - "@webassemblyjs/helper-buffer": "npm:1.11.6" + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/helper-wasm-section": "npm:1.11.6" - "@webassemblyjs/wasm-gen": "npm:1.11.6" - "@webassemblyjs/wasm-opt": "npm:1.11.6" - "@webassemblyjs/wasm-parser": "npm:1.11.6" - "@webassemblyjs/wast-printer": "npm:1.11.6" - checksum: 10/c168bfc6d0cdd371345f36f95a4766d098a96ccc1257e6a6e3a74d987a5c4f2ddd2244a6aecfa5d032a47d74ed2c3b579e00a314d31e4a0b76ad35b31cdfa162 + "@webassemblyjs/helper-wasm-section": "npm:1.12.1" + "@webassemblyjs/wasm-gen": "npm:1.12.1" + "@webassemblyjs/wasm-opt": "npm:1.12.1" + "@webassemblyjs/wasm-parser": "npm:1.12.1" + "@webassemblyjs/wast-printer": "npm:1.12.1" + checksum: 10/5678ae02dbebba2f3a344e25928ea5a26a0df777166c9be77a467bfde7aca7f4b57ef95587e4bd768a402cdf2fddc4c56f0a599d164cdd9fe313520e39e18137 languageName: node linkType: hard -"@webassemblyjs/wasm-gen@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/wasm-gen@npm:1.11.6" +"@webassemblyjs/wasm-gen@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-gen@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" + "@webassemblyjs/ast": "npm:1.12.1" "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" "@webassemblyjs/ieee754": "npm:1.11.6" "@webassemblyjs/leb128": "npm:1.11.6" "@webassemblyjs/utf8": "npm:1.11.6" - checksum: 10/f91903506ce50763592863df5d80ffee80f71a1994a882a64cdb83b5e44002c715f1ef1727d8ccb0692d066af34d3d4f5e59e8f7a4e2eeb2b7c32692ac44e363 + checksum: 10/ec45bd50e86bc9856f80fe9af4bc1ae5c98fb85f57023d11dff2b670da240c47a7b1b9b6c89755890314212bd167cf3adae7f1157216ddffb739a4ce589fc338 languageName: node linkType: hard -"@webassemblyjs/wasm-opt@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/wasm-opt@npm:1.11.6" +"@webassemblyjs/wasm-opt@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-opt@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" - "@webassemblyjs/helper-buffer": "npm:1.11.6" - "@webassemblyjs/wasm-gen": "npm:1.11.6" - "@webassemblyjs/wasm-parser": "npm:1.11.6" - checksum: 10/e0cfeea381ecbbd0ca1616e9a08974acfe7fc81f8a16f9f2d39f565dc51784dd7043710b6e972f9968692d273e32486b9a8a82ca178d4bd520b2d5e2cf28234d + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" + "@webassemblyjs/wasm-gen": "npm:1.12.1" + "@webassemblyjs/wasm-parser": "npm:1.12.1" + checksum: 10/21f25ae109012c49bb084e09f3b67679510429adc3e2408ad3621b2b505379d9cce337799a7919ef44db64e0d136833216914aea16b0d4856f353b9778e0cdb7 languageName: node linkType: hard -"@webassemblyjs/wasm-parser@npm:1.11.6, @webassemblyjs/wasm-parser@npm:^1.11.5": - version: 1.11.6 - resolution: "@webassemblyjs/wasm-parser@npm:1.11.6" +"@webassemblyjs/wasm-parser@npm:1.12.1, @webassemblyjs/wasm-parser@npm:^1.11.5": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-parser@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" + "@webassemblyjs/ast": "npm:1.12.1" "@webassemblyjs/helper-api-error": "npm:1.11.6" "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" "@webassemblyjs/ieee754": "npm:1.11.6" "@webassemblyjs/leb128": "npm:1.11.6" "@webassemblyjs/utf8": "npm:1.11.6" - checksum: 10/6995e0b7b8ebc52b381459c6a555f87763dcd3975c4a112407682551e1c73308db7af23385972a253dceb5af94e76f9c97cb861e8239b5ed1c3e79b95d8e2097 + checksum: 10/f7311685b76c3e1def2abea3488be1e77f06ecd8633143a6c5c943ca289660952b73785231bb76a010055ca64645227a4bc79705c26ab7536216891b6bb36320 languageName: node linkType: hard -"@webassemblyjs/wast-printer@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/wast-printer@npm:1.11.6" +"@webassemblyjs/wast-printer@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wast-printer@npm:1.12.1" dependencies: - "@webassemblyjs/ast": "npm:1.11.6" + "@webassemblyjs/ast": "npm:1.12.1" "@xtuc/long": "npm:4.2.2" - checksum: 10/fd45fd0d693141d678cc2f6ff2d3a0d7a8884acb1c92fb0c63cf43b7978e9560be04118b12792638a39dd185640453510229e736f3049037d0c361f6435f2d5f + checksum: 10/1a6a4b6bc4234f2b5adbab0cb11a24911b03380eb1cab6fb27a2250174a279fdc6aa2f5a9cf62dd1f6d4eb39f778f488e8ff15b9deb0670dee5c5077d46cf572 languageName: node linkType: hard @@ -9260,7 +7307,7 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.5": +"call-bind@npm:^1.0.7": version: 1.0.7 resolution: "call-bind@npm:1.0.7" dependencies: @@ -9281,9 +7328,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.30001587": - version: 1.0.30001596 - resolution: "caniuse-lite@npm:1.0.30001596" - checksum: 10/4124d6e927193ee31bb7237925720263ac837ef0bf6627c67a8217edfe49eefc3a385a4830d4aa92a213576a0aa6006e61c8dd57a644ec65882c15d15f625182 + version: 1.0.30001597 + resolution: "caniuse-lite@npm:1.0.30001597" + checksum: 10/44a268113faeee51e249cbcb3924dc3765f26cd527a134e3bb720ed20d50abd8b9291500a88beee061cc03ae9f15ddc9045d57e30d25a98efeaff4f7bb8965c1 languageName: node linkType: hard @@ -9597,7 +7644,7 @@ __metadata: languageName: node linkType: hard -"define-data-property@npm:^1.1.2": +"define-data-property@npm:^1.1.4": version: 1.1.4 resolution: "define-data-property@npm:1.1.4" dependencies: @@ -9652,9 +7699,9 @@ __metadata: linkType: hard "electron-to-chromium@npm:^1.4.668": - version: 1.4.699 - resolution: "electron-to-chromium@npm:1.4.699" - checksum: 10/dd09cc21a204fee05349348f3399fc2a2a02b770fc43c746f3f117d870e8614495eb05647d01dfea92bb05bf2f0dd374ce19e6acd7623a1ad785951e193942d3 + version: 1.4.703 + resolution: "electron-to-chromium@npm:1.4.703" + checksum: 10/e7927fbe75e56508dd0b4efeb0e69dfb8ee1e6e6aaf6f07c047b96ff530d8f49e1eaf51cae64c2d3c179e3932fb37661012ccaa4f36956dd96480219f3a23013 languageName: node linkType: hard @@ -9689,12 +7736,12 @@ __metadata: linkType: hard "enhanced-resolve@npm:^5.0.0, enhanced-resolve@npm:^5.15.0": - version: 5.15.1 - resolution: "enhanced-resolve@npm:5.15.1" + version: 5.16.0 + resolution: "enhanced-resolve@npm:5.16.0" dependencies: graceful-fs: "npm:^4.2.4" tapable: "npm:^2.2.0" - checksum: 10/9d4badf18c515f7607539e61d7b78f3057ba2f17b97d188c5ef9bcbc26fa6d25b66f0007d39a3a3c3c2a83b53bedbdb6ce82250c57b85470b6b73004d78989be + checksum: 10/47f123676b9b179b35195769b9d9523f314f6fc3a13d4461a4d95d5beaec9adc26aaa3b60b61f93e21ed1290dff0e9d9e67df343ec47f4480669a8e26ffe52a3 languageName: node linkType: hard @@ -10389,7 +8436,7 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": +"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4": version: 1.2.4 resolution: "get-intrinsic@npm:1.2.4" dependencies: @@ -10537,7 +8584,7 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.1": +"has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" dependencies: @@ -10561,11 +8608,11 @@ __metadata: linkType: hard "hasown@npm:^2.0.0": - version: 2.0.1 - resolution: "hasown@npm:2.0.1" + version: 2.0.2 + resolution: "hasown@npm:2.0.2" dependencies: function-bind: "npm:^1.1.2" - checksum: 10/b7f9107387ee68abed88e965c2b99e868b5e0e9d289db1ddd080706ffafb69533b4f538b0e6362585bae8d6cbd080249f65e79702f74c225990f66d6106be3f6 + checksum: 10/7898a9c1788b2862cf0f9c345a6bec77ba4a0c0983c7f19d610c382343d4f98fa260686b225dfb1f88393a66679d2ec58ee310c1d6868c081eda7918f32cc70a languageName: node linkType: hard @@ -10682,10 +8729,10 @@ __metadata: linkType: hard "inquirer@npm:^9.2.15": - version: 9.2.15 - resolution: "inquirer@npm:9.2.15" + version: 9.2.16 + resolution: "inquirer@npm:9.2.16" dependencies: - "@ljharb/through": "npm:^2.3.12" + "@ljharb/through": "npm:^2.3.13" ansi-escapes: "npm:^4.3.2" chalk: "npm:^5.3.0" cli-cursor: "npm:^3.1.0" @@ -10700,7 +8747,7 @@ __metadata: string-width: "npm:^4.2.3" strip-ansi: "npm:^6.0.1" wrap-ansi: "npm:^6.2.0" - checksum: 10/7bca66f54fc3ef511e4be4ed781ef975325ad3a3e5ebeb4d070af78bba37966068a21db53fadac89ba808f19fd2fd88149c80cf6bcfd7e7fbc358fd0127a74f9 + checksum: 10/915106fe7e8c1c73eeec82d12252a7275ef55d0ee1fdc1d7f12c9265d4db4c71613ad1be9a0255a58d2d482d4c31c18d80ca371a2f73369b9a2218ea00ad8ba2 languageName: node linkType: hard @@ -11796,22 +9843,22 @@ __metadata: linkType: hard "rollup@npm:^4.12.1, rollup@npm:^4.2.0": - version: 4.12.1 - resolution: "rollup@npm:4.12.1" - dependencies: - "@rollup/rollup-android-arm-eabi": "npm:4.12.1" - "@rollup/rollup-android-arm64": "npm:4.12.1" - "@rollup/rollup-darwin-arm64": "npm:4.12.1" - "@rollup/rollup-darwin-x64": "npm:4.12.1" - "@rollup/rollup-linux-arm-gnueabihf": "npm:4.12.1" - "@rollup/rollup-linux-arm64-gnu": "npm:4.12.1" - "@rollup/rollup-linux-arm64-musl": "npm:4.12.1" - "@rollup/rollup-linux-riscv64-gnu": "npm:4.12.1" - "@rollup/rollup-linux-x64-gnu": "npm:4.12.1" - "@rollup/rollup-linux-x64-musl": "npm:4.12.1" - "@rollup/rollup-win32-arm64-msvc": "npm:4.12.1" - "@rollup/rollup-win32-ia32-msvc": "npm:4.12.1" - "@rollup/rollup-win32-x64-msvc": "npm:4.12.1" + version: 4.13.0 + resolution: "rollup@npm:4.13.0" + dependencies: + "@rollup/rollup-android-arm-eabi": "npm:4.13.0" + "@rollup/rollup-android-arm64": "npm:4.13.0" + "@rollup/rollup-darwin-arm64": "npm:4.13.0" + "@rollup/rollup-darwin-x64": "npm:4.13.0" + "@rollup/rollup-linux-arm-gnueabihf": "npm:4.13.0" + "@rollup/rollup-linux-arm64-gnu": "npm:4.13.0" + "@rollup/rollup-linux-arm64-musl": "npm:4.13.0" + "@rollup/rollup-linux-riscv64-gnu": "npm:4.13.0" + "@rollup/rollup-linux-x64-gnu": "npm:4.13.0" + "@rollup/rollup-linux-x64-musl": "npm:4.13.0" + "@rollup/rollup-win32-arm64-msvc": "npm:4.13.0" + "@rollup/rollup-win32-ia32-msvc": "npm:4.13.0" + "@rollup/rollup-win32-x64-msvc": "npm:4.13.0" "@types/estree": "npm:1.0.5" fsevents: "npm:~2.3.2" dependenciesMeta: @@ -11845,7 +9892,7 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: 10/986c3b3422ac7a93af0980da2ea14b6d2c75cfdeb314843e9d91ca75641fd585b0fcaf242c3f00615ac8371ba93e0cc341b4a342cad99e1c66301dcec5936a8c + checksum: 10/3ebced8ad49e8b5617cb7013cb106dd8ac99ae31a71f9689dc689b8fdaf0eb109f3d861330ef659e5f28a2c38e040282aea0e1df150b165f53f649d46275df84 languageName: node linkType: hard @@ -11936,16 +9983,16 @@ __metadata: linkType: hard "set-function-length@npm:^1.2.1": - version: 1.2.1 - resolution: "set-function-length@npm:1.2.1" + version: 1.2.2 + resolution: "set-function-length@npm:1.2.2" dependencies: - define-data-property: "npm:^1.1.2" + define-data-property: "npm:^1.1.4" es-errors: "npm:^1.3.0" function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.3" + get-intrinsic: "npm:^1.2.4" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.1" - checksum: 10/9ab1d200149574ab27c1a7acae56d6235e02568fc68655fe8afe63e4e02ccad3c27665f55c32408bd1ff40705939dbb7539abfb9c3a07fda27ecad1ab9e449f5 + has-property-descriptors: "npm:^1.0.2" + checksum: 10/505d62b8e088468917ca4e3f8f39d0e29f9a563b97dbebf92f4bd2c3172ccfb3c5b8e4566d5fcd00784a00433900e7cb8fbc404e2dbd8c3818ba05bb9d4a8a6d languageName: node linkType: hard @@ -12300,11 +10347,11 @@ __metadata: linkType: hard "ts-api-utils@npm:^1.0.1": - version: 1.2.1 - resolution: "ts-api-utils@npm:1.2.1" + version: 1.3.0 + resolution: "ts-api-utils@npm:1.3.0" peerDependencies: typescript: ">=4.2.0" - checksum: 10/6d7f60fd01e3885bb334607f22b9cb1002e72da81dad2e672fef1b0d1a2f640b0f0ff5310369401488fac90c7a7f5d39c89fd18789af59c672c9b5aef4cade3e + checksum: 10/3ee44faa24410cd649b5c864e068d438aa437ef64e9e4a66a41646a6d3024d3097a695eeb3fb26ee364705d3cb9653a65756d009e6a53badb6066a5f447bf7ed languageName: node linkType: hard @@ -12499,8 +10546,8 @@ __metadata: linkType: hard "vite@npm:^5.1.5": - version: 5.1.5 - resolution: "vite@npm:5.1.5" + version: 5.1.6 + resolution: "vite@npm:5.1.6" dependencies: esbuild: "npm:^0.19.3" fsevents: "npm:~2.3.3" @@ -12534,17 +10581,17 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: 10/ada0a9138ca541723008ee261d80a97f6b70173508ded0f87834e2142660f45dff9801d143551aa3a8979ed446f0aec71ae114ab3ae978b3fbd5cf1f8c4bc331 + checksum: 10/f48073e93ead62fa58034398442de4517c824b3e50184f8b4059fb24077a26f2c04e910e29d7fb7ec51ea53eb61b9c7d94d56b14a38851de80c67480094cc79d languageName: node linkType: hard "watchpack@npm:^2.4.0": - version: 2.4.0 - resolution: "watchpack@npm:2.4.0" + version: 2.4.1 + resolution: "watchpack@npm:2.4.1" dependencies: glob-to-regexp: "npm:^0.4.1" graceful-fs: "npm:^4.1.2" - checksum: 10/4280b45bc4b5d45d5579113f2a4af93b67ae1b9607cc3d86ae41cdd53ead10db5d9dc3237f24256d05ef88b28c69a02712f78e434cb7ecc8edaca134a56e8cab + checksum: 10/0736ebd20b75d3931f9b6175c819a66dee29297c1b389b2e178bc53396a6f867ecc2fd5d87a713ae92dcb73e487daec4905beee20ca00a9e27f1184a7c2bca5e languageName: node linkType: hard