@ts-for-gir/gir-module-metadata 4.0.0-beta.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json ADDED
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "@ts-for-gir/gir-module-metadata",
3
+ "version": "4.0.0-beta.41",
4
+ "description": "Curated metadata (descriptions, licenses, logos, URLs) for GIR namespaces",
5
+ "main": "src/index.ts",
6
+ "module": "src/index.ts",
7
+ "type": "module",
8
+ "engines": {
9
+ "node": ">=18"
10
+ },
11
+ "exports": {
12
+ ".": "./src/index.ts"
13
+ },
14
+ "scripts": {
15
+ "check": "tsc --noEmit"
16
+ },
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/gjsify/ts-for-gir.git"
20
+ },
21
+ "author": "Pascal Garber <pascal@mailfreun.de>",
22
+ "files": [
23
+ "src"
24
+ ],
25
+ "license": "Apache-2.0",
26
+ "bugs": {
27
+ "url": "https://github.com/gjsify/ts-for-gir/issues"
28
+ },
29
+ "homepage": "https://github.com/gjsify/ts-for-gir#readme",
30
+ "keywords": [
31
+ "gir",
32
+ "gobject-introspection",
33
+ "metadata",
34
+ "gnome",
35
+ "gtk"
36
+ ],
37
+ "devDependencies": {
38
+ "@ts-for-gir/tsconfig": "^4.0.0-beta.41",
39
+ "typescript": "^5.9.3"
40
+ }
41
+ }
@@ -0,0 +1,14 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const adw: GirModuleMetadata = {
4
+ girId: "Adw-1",
5
+ displayName: "Libadwaita",
6
+ description: "Building blocks for modern adaptive GNOME applications.",
7
+ authors: "GNOME",
8
+ websiteUrl: "https://gnome.pages.gitlab.gnome.org/libadwaita/",
9
+ browseUrl: "https://gitlab.gnome.org/GNOME/libadwaita/",
10
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/libadwaita.git",
11
+ license: "LGPL-2.1-or-later",
12
+ cDocsUrl: "https://gnome.pages.gitlab.gnome.org/libadwaita/doc/",
13
+ category: "GNOME Libraries",
14
+ };
@@ -0,0 +1,14 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const cairo: GirModuleMetadata = {
4
+ girId: "cairo-1.0",
5
+ displayName: "Cairo",
6
+ description: "A 2D graphics library with support for multiple output devices.",
7
+ authors: "Carl Worth, Behdad Esfahbod",
8
+ websiteUrl: "https://www.cairographics.org",
9
+ browseUrl: "https://gitlab.freedesktop.org/cairo/cairo/",
10
+ repositoryUrl: "https://gitlab.freedesktop.org/cairo/cairo.git",
11
+ license: "LGPL-2.1-only OR MPL-1.1",
12
+ cDocsUrl: "https://www.cairographics.org/manual/",
13
+ category: "Graphics",
14
+ };
@@ -0,0 +1,15 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const gdkPixbuf: GirModuleMetadata = {
4
+ girId: "GdkPixbuf-2.0",
5
+ displayName: "GdkPixbuf",
6
+ description: "Image loading library.",
7
+ authors: "GTK Development Team",
8
+ websiteUrl: "https://www.gtk.org",
9
+ browseUrl: "https://gitlab.gnome.org/GNOME/gdk-pixbuf/",
10
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/gdk-pixbuf.git",
11
+ license: "LGPL-2.1-or-later",
12
+ docLicense: "GPL-2.1-or-later",
13
+ cDocsUrl: "https://docs.gtk.org/gdk-pixbuf/",
14
+ category: "Graphics",
15
+ };
@@ -0,0 +1,16 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const gjs: GirModuleMetadata = {
4
+ girId: "Gjs",
5
+ displayName: "GJS",
6
+ description:
7
+ "GJS is a JavaScript runtime for the GNOME ecosystem. This package provides core type definitions for GJS built-in modules.",
8
+ authors: "GNOME",
9
+ websiteUrl: "https://gjs.guide",
10
+ browseUrl: "https://gitlab.gnome.org/GNOME/gjs/",
11
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/gjs.git",
12
+ license: "MIT OR LGPL-2.0-or-later",
13
+ cDocsUrl: "https://gjs-docs.gnome.org",
14
+ logoUrl: "https://gjs.guide/logo-alt.svg",
15
+ category: "GJS Core",
16
+ };
@@ -0,0 +1,45 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const GLIB_COMMON = {
4
+ authors: "GTK Development Team",
5
+ websiteUrl: "https://www.gtk.org",
6
+ browseUrl: "https://gitlab.gnome.org/GNOME/glib/",
7
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/glib.git",
8
+ license: "LGPL-2.1-or-later",
9
+ category: "GLib",
10
+ };
11
+
12
+ export const glib: GirModuleMetadata = {
13
+ ...GLIB_COMMON,
14
+ girId: "GLib-2.0",
15
+ displayName: "GLib",
16
+ description:
17
+ "GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures.",
18
+ cDocsUrl: "https://docs.gtk.org/glib/",
19
+ };
20
+
21
+ export const gobject: GirModuleMetadata = {
22
+ ...GLIB_COMMON,
23
+ girId: "GObject-2.0",
24
+ displayName: "GObject",
25
+ description:
26
+ "The base type system and object class library, providing signal/callback handling, properties, and reference counting.",
27
+ cDocsUrl: "https://docs.gtk.org/gobject/",
28
+ };
29
+
30
+ export const gio: GirModuleMetadata = {
31
+ ...GLIB_COMMON,
32
+ girId: "Gio-2.0",
33
+ displayName: "GIO",
34
+ description:
35
+ "GIO provides a modern and easy-to-use VFS API, including file system abstraction, networking, D-Bus support, and application infrastructure.",
36
+ cDocsUrl: "https://docs.gtk.org/gio/",
37
+ };
38
+
39
+ export const gmodule: GirModuleMetadata = {
40
+ ...GLIB_COMMON,
41
+ girId: "GModule-2.0",
42
+ displayName: "GModule",
43
+ description: "Portable method for dynamically loading plug-ins.",
44
+ cDocsUrl: "https://docs.gtk.org/gmodule/",
45
+ };
@@ -0,0 +1,14 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const graphene: GirModuleMetadata = {
4
+ girId: "Graphene-1.0",
5
+ displayName: "Graphene",
6
+ description: "A thin layer of mathematical types for 3D libraries.",
7
+ authors: "Emmanuele Bassi",
8
+ websiteUrl: "https://ebassi.github.io/graphene/",
9
+ browseUrl: "https://github.com/ebassi/graphene/",
10
+ repositoryUrl: "https://github.com/ebassi/graphene.git",
11
+ license: "MIT",
12
+ cDocsUrl: "https://ebassi.github.io/graphene/docs/",
13
+ category: "Graphics",
14
+ };
@@ -0,0 +1,74 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const GST_COMMON = {
4
+ authors: "GStreamer Team",
5
+ websiteUrl: "https://gstreamer.freedesktop.org",
6
+ browseUrl: "https://gitlab.freedesktop.org/gstreamer/gstreamer/",
7
+ repositoryUrl: "https://gitlab.freedesktop.org/gstreamer/gstreamer.git",
8
+ license: "LGPL-2.1-or-later",
9
+ category: "Multimedia",
10
+ };
11
+
12
+ export const gst: GirModuleMetadata = {
13
+ ...GST_COMMON,
14
+ girId: "Gst-1.0",
15
+ displayName: "GStreamer",
16
+ description: "Powerful framework for creating multimedia applications.",
17
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/gstreamer/gi-index.html",
18
+ };
19
+
20
+ export const gstBase: GirModuleMetadata = {
21
+ ...GST_COMMON,
22
+ girId: "GstBase-1.0",
23
+ displayName: "GStreamer Base",
24
+ description: "GStreamer base plugin libraries.",
25
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/base/index.html",
26
+ };
27
+
28
+ export const gstAudio: GirModuleMetadata = {
29
+ ...GST_COMMON,
30
+ girId: "GstAudio-1.0",
31
+ displayName: "GStreamer Audio",
32
+ description: "GStreamer Audio Library.",
33
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/audio/index.html",
34
+ };
35
+
36
+ export const gstVideo: GirModuleMetadata = {
37
+ ...GST_COMMON,
38
+ girId: "GstVideo-1.0",
39
+ displayName: "GStreamer Video",
40
+ description: "Support library for video operations.",
41
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/video/index.html",
42
+ };
43
+
44
+ export const gstPbutils: GirModuleMetadata = {
45
+ ...GST_COMMON,
46
+ girId: "GstPbutils-1.0",
47
+ displayName: "GStreamer PbUtils",
48
+ description: "General application and plugin utility library.",
49
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/pbutils/index.html",
50
+ };
51
+
52
+ export const gstTag: GirModuleMetadata = {
53
+ ...GST_COMMON,
54
+ girId: "GstTag-1.0",
55
+ displayName: "GStreamer Tag",
56
+ description: "GStreamer tag support library.",
57
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/tag/index.html",
58
+ };
59
+
60
+ export const gstApp: GirModuleMetadata = {
61
+ ...GST_COMMON,
62
+ girId: "GstApp-1.0",
63
+ displayName: "GStreamer App",
64
+ description: "GStreamer app library.",
65
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/applib/index.html",
66
+ };
67
+
68
+ export const gstController: GirModuleMetadata = {
69
+ ...GST_COMMON,
70
+ girId: "GstController-1.0",
71
+ displayName: "GStreamer Controller",
72
+ description: "GStreamer dynamic parameter control.",
73
+ cDocsUrl: "https://gstreamer.freedesktop.org/documentation/controller/index.html",
74
+ };
@@ -0,0 +1,27 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const GTK3_COMMON = {
4
+ authors: "GTK Development Team",
5
+ websiteUrl: "https://www.gtk.org",
6
+ browseUrl: "https://gitlab.gnome.org/GNOME/gtk/",
7
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/gtk.git",
8
+ license: "LGPL-2.1-or-later",
9
+ docLicense: "GPL-2.1-or-later",
10
+ category: "GTK 3",
11
+ };
12
+
13
+ export const gtk3: GirModuleMetadata = {
14
+ ...GTK3_COMMON,
15
+ girId: "Gtk-3.0",
16
+ displayName: "GTK",
17
+ description: "The GTK toolkit — primary library for constructing user interfaces in GNOME applications.",
18
+ cDocsUrl: "https://docs.gtk.org/gtk3/",
19
+ };
20
+
21
+ export const gdk3: GirModuleMetadata = {
22
+ ...GTK3_COMMON,
23
+ girId: "Gdk-3.0",
24
+ displayName: "GDK",
25
+ description: "The GTK windowing system abstraction.",
26
+ cDocsUrl: "https://docs.gtk.org/gdk3/",
27
+ };
@@ -0,0 +1,38 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const GTK_LOGO = "https://docs.gtk.org/gsk4/gtk-logo.svg";
4
+
5
+ const GTK_COMMON = {
6
+ authors: "GTK Development Team",
7
+ websiteUrl: "https://www.gtk.org",
8
+ browseUrl: "https://gitlab.gnome.org/GNOME/gtk/",
9
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/gtk.git",
10
+ license: "LGPL-2.1-or-later",
11
+ docLicense: "GPL-2.1-or-later",
12
+ logoUrl: GTK_LOGO,
13
+ category: "GTK 4",
14
+ };
15
+
16
+ export const gtk4: GirModuleMetadata = {
17
+ ...GTK_COMMON,
18
+ girId: "Gtk-4.0",
19
+ displayName: "GTK",
20
+ description: "The GTK toolkit — primary library for constructing user interfaces in GNOME applications.",
21
+ cDocsUrl: "https://docs.gtk.org/gtk4/",
22
+ };
23
+
24
+ export const gdk4: GirModuleMetadata = {
25
+ ...GTK_COMMON,
26
+ girId: "Gdk-4.0",
27
+ displayName: "GDK",
28
+ description: "The GTK windowing system abstraction.",
29
+ cDocsUrl: "https://docs.gtk.org/gdk4/",
30
+ };
31
+
32
+ export const gsk4: GirModuleMetadata = {
33
+ ...GTK_COMMON,
34
+ girId: "Gsk-4.0",
35
+ displayName: "GSK",
36
+ description: "The GTK rendering API.",
37
+ cDocsUrl: "https://docs.gtk.org/gsk4/",
38
+ };
@@ -0,0 +1,28 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const harfBuzz: GirModuleMetadata = {
4
+ girId: "HarfBuzz-0.0",
5
+ displayName: "HarfBuzz",
6
+ description: "A text shaping engine — converts Unicode text to glyph indices and positions.",
7
+ authors: "Behdad Esfahbod",
8
+ websiteUrl: "https://harfbuzz.github.io",
9
+ browseUrl: "https://github.com/harfbuzz/harfbuzz/",
10
+ repositoryUrl: "https://github.com/harfbuzz/harfbuzz.git",
11
+ license: "MIT",
12
+ cDocsUrl: "https://harfbuzz.github.io/",
13
+ logoUrl: "https://harfbuzz.github.io/HarfBuzz.png",
14
+ category: "Text Rendering",
15
+ };
16
+
17
+ export const freetype2: GirModuleMetadata = {
18
+ girId: "freetype2-2.0",
19
+ displayName: "FreeType",
20
+ description: "A freely available software library to render fonts.",
21
+ authors: "David Turner, Robert Wilhelm, Werner Lemberg",
22
+ websiteUrl: "https://freetype.org",
23
+ browseUrl: "https://gitlab.freedesktop.org/freetype/freetype/",
24
+ repositoryUrl: "https://gitlab.freedesktop.org/freetype/freetype.git",
25
+ license: "FTL OR GPL-2.0-or-later",
26
+ cDocsUrl: "https://freetype.org/freetype2/docs/reference/",
27
+ category: "Text Rendering",
28
+ };
@@ -0,0 +1,80 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+ import { adw } from "./adw.ts";
3
+ import { cairo } from "./cairo.ts";
4
+ import { gdkPixbuf } from "./gdk-pixbuf.ts";
5
+ import { gjs } from "./gjs.ts";
6
+ import { gio, glib, gmodule, gobject } from "./glib.ts";
7
+ import { graphene } from "./graphene.ts";
8
+ import { gst, gstApp, gstAudio, gstBase, gstController, gstPbutils, gstTag, gstVideo } from "./gstreamer.ts";
9
+ import { gdk3, gtk3 } from "./gtk3.ts";
10
+ import { gdk4, gsk4, gtk4 } from "./gtk4.ts";
11
+ import { freetype2, harfBuzz } from "./harfbuzz.ts";
12
+ import { gtksource5, json, nm, notify, polkit, secret, shumate } from "./misc.ts";
13
+ import { pango, pangoCairo } from "./pango.ts";
14
+ import { soup3 } from "./soup.ts";
15
+ import { javaScriptCore6, webkit6, webkitWebExtension6 } from "./webkit.ts";
16
+
17
+ const ALL_ENTRIES: GirModuleMetadata[] = [
18
+ // GJS core
19
+ gjs,
20
+ // GLib family
21
+ glib,
22
+ gobject,
23
+ gio,
24
+ gmodule,
25
+ // GTK 4
26
+ gtk4,
27
+ gdk4,
28
+ gsk4,
29
+ // GTK 3
30
+ gtk3,
31
+ gdk3,
32
+ // Pango
33
+ pango,
34
+ pangoCairo,
35
+ // Pixel formats & graphics
36
+ gdkPixbuf,
37
+ graphene,
38
+ cairo,
39
+ // Text rendering
40
+ harfBuzz,
41
+ freetype2,
42
+ // Multimedia
43
+ gst,
44
+ gstBase,
45
+ gstAudio,
46
+ gstVideo,
47
+ gstPbutils,
48
+ gstTag,
49
+ gstApp,
50
+ gstController,
51
+ // Web
52
+ webkit6,
53
+ webkitWebExtension6,
54
+ javaScriptCore6,
55
+ // GNOME libraries
56
+ adw,
57
+ soup3,
58
+ gtksource5,
59
+ shumate,
60
+ notify,
61
+ secret,
62
+ json,
63
+ nm,
64
+ polkit,
65
+ ];
66
+
67
+ const METADATA = new Map<string, GirModuleMetadata>();
68
+ for (const entry of ALL_ENTRIES) {
69
+ METADATA.set(entry.girId, entry);
70
+ }
71
+
72
+ /** Look up metadata by GIR namespace ID (e.g. "Gtk-4.0"). */
73
+ export function getModuleMetadata(girId: string): GirModuleMetadata | undefined {
74
+ return METADATA.get(girId);
75
+ }
76
+
77
+ /** Get all registered metadata entries. */
78
+ export function getAllModuleMetadata(): ReadonlyMap<string, GirModuleMetadata> {
79
+ return METADATA;
80
+ }
@@ -0,0 +1,90 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const gtksource5: GirModuleMetadata = {
4
+ girId: "GtkSource-5",
5
+ displayName: "GtkSourceView",
6
+ description:
7
+ "A GNOME library that extends GtkTextView with syntax highlighting, undo/redo, search and replace, a completion system, and other source code editing features.",
8
+ authors: "GNOME",
9
+ websiteUrl: "https://wiki.gnome.org/Projects/GtkSourceView",
10
+ browseUrl: "https://gitlab.gnome.org/GNOME/gtksourceview/",
11
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/gtksourceview.git",
12
+ license: "LGPL-2.1-or-later",
13
+ cDocsUrl: "https://gnome.pages.gitlab.gnome.org/gtksourceview/gtksourceview5/",
14
+ category: "GNOME Libraries",
15
+ };
16
+
17
+ export const shumate: GirModuleMetadata = {
18
+ girId: "Shumate-1.0",
19
+ displayName: "Shumate",
20
+ description: "A library providing a widget to display maps in applications.",
21
+ authors: "GNOME",
22
+ websiteUrl: "https://wiki.gnome.org/Projects/libshumate",
23
+ browseUrl: "https://gitlab.gnome.org/GNOME/libshumate/",
24
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/libshumate.git",
25
+ license: "LGPL-2.1-or-later",
26
+ cDocsUrl: "https://gnome.pages.gitlab.gnome.org/libshumate/",
27
+ category: "GNOME Libraries",
28
+ };
29
+
30
+ export const notify: GirModuleMetadata = {
31
+ girId: "Notify-0.7",
32
+ displayName: "Libnotify",
33
+ description: "A library for sending desktop notifications.",
34
+ authors: "GNOME",
35
+ websiteUrl: "https://gitlab.gnome.org/GNOME/libnotify",
36
+ browseUrl: "https://gitlab.gnome.org/GNOME/libnotify/",
37
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/libnotify.git",
38
+ license: "LGPL-2.1-or-later",
39
+ category: "GNOME Libraries",
40
+ };
41
+
42
+ export const secret: GirModuleMetadata = {
43
+ girId: "Secret-1",
44
+ displayName: "Libsecret",
45
+ description: "A library for accessing the Secret Service API of the freedesktop.org project.",
46
+ authors: "GNOME",
47
+ websiteUrl: "https://wiki.gnome.org/Projects/Libsecret",
48
+ browseUrl: "https://gitlab.gnome.org/GNOME/libsecret/",
49
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/libsecret.git",
50
+ license: "LGPL-2.1-or-later",
51
+ category: "GNOME Libraries",
52
+ };
53
+
54
+ export const json: GirModuleMetadata = {
55
+ girId: "Json-1.0",
56
+ displayName: "JSON-GLib",
57
+ description: "A library providing serialization and deserialization support for the JSON format.",
58
+ authors: "GNOME",
59
+ websiteUrl: "https://gitlab.gnome.org/GNOME/json-glib",
60
+ browseUrl: "https://gitlab.gnome.org/GNOME/json-glib/",
61
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/json-glib.git",
62
+ license: "LGPL-2.1-or-later",
63
+ cDocsUrl: "https://gnome.pages.gitlab.gnome.org/json-glib/",
64
+ category: "GNOME Libraries",
65
+ };
66
+
67
+ export const nm: GirModuleMetadata = {
68
+ girId: "NM-1.0",
69
+ displayName: "NetworkManager",
70
+ description: "Network management daemon and client library.",
71
+ authors: "NetworkManager Team",
72
+ websiteUrl: "https://networkmanager.dev",
73
+ browseUrl: "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/",
74
+ repositoryUrl: "https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git",
75
+ license: "LGPL-2.1-or-later",
76
+ cDocsUrl: "https://networkmanager.dev/docs/api/latest/",
77
+ category: "GNOME Libraries",
78
+ };
79
+
80
+ export const polkit: GirModuleMetadata = {
81
+ girId: "Polkit-1.0",
82
+ displayName: "Polkit",
83
+ description: "Application-level toolkit for defining and handling authorization policies.",
84
+ authors: "freedesktop.org",
85
+ websiteUrl: "https://gitlab.freedesktop.org/polkit/polkit",
86
+ browseUrl: "https://gitlab.freedesktop.org/polkit/polkit/",
87
+ repositoryUrl: "https://gitlab.freedesktop.org/polkit/polkit.git",
88
+ license: "LGPL-2.0-or-later",
89
+ category: "GNOME Libraries",
90
+ };
@@ -0,0 +1,27 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const PANGO_COMMON = {
4
+ authors: "GNOME",
5
+ websiteUrl: "https://pango.gnome.org",
6
+ browseUrl: "https://gitlab.gnome.org/GNOME/pango/",
7
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/pango.git",
8
+ license: "LGPL-2.1-or-later",
9
+ logoUrl: "https://docs.gtk.org/Pango/pango-name.png",
10
+ category: "Pango",
11
+ };
12
+
13
+ export const pango: GirModuleMetadata = {
14
+ ...PANGO_COMMON,
15
+ girId: "Pango-1.0",
16
+ displayName: "Pango",
17
+ description: "Pango is a library for laying out and rendering text, with an emphasis on internationalization.",
18
+ cDocsUrl: "https://docs.gtk.org/Pango/",
19
+ };
20
+
21
+ export const pangoCairo: GirModuleMetadata = {
22
+ ...PANGO_COMMON,
23
+ girId: "PangoCairo-1.0",
24
+ displayName: "PangoCairo",
25
+ description: "Cairo rendering support for Pango.",
26
+ cDocsUrl: "https://docs.gtk.org/PangoCairo/",
27
+ };
@@ -0,0 +1,14 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ export const soup3: GirModuleMetadata = {
4
+ girId: "Soup-3.0",
5
+ displayName: "Libsoup",
6
+ description: "HTTP client/server library for GNOME.",
7
+ authors: "GNOME",
8
+ websiteUrl: "https://libsoup.org",
9
+ browseUrl: "https://gitlab.gnome.org/GNOME/libsoup/",
10
+ repositoryUrl: "https://gitlab.gnome.org/GNOME/libsoup.git",
11
+ license: "LGPL-2.1-or-later",
12
+ cDocsUrl: "https://libsoup.org/libsoup-3.0/",
13
+ category: "GNOME Libraries",
14
+ };
@@ -0,0 +1,33 @@
1
+ import type { GirModuleMetadata } from "../types.ts";
2
+
3
+ const WEBKIT_COMMON = {
4
+ authors: "WebKitGTK Team",
5
+ websiteUrl: "https://webkitgtk.org",
6
+ browseUrl: "https://github.com/nicotinadeb/WebKit/",
7
+ license: "LGPL-2.1-or-later",
8
+ category: "Web",
9
+ };
10
+
11
+ export const webkit6: GirModuleMetadata = {
12
+ ...WEBKIT_COMMON,
13
+ girId: "WebKit-6.0",
14
+ displayName: "WebKitGTK",
15
+ description: "A full-featured port of the WebKit rendering engine for GTK.",
16
+ cDocsUrl: "https://webkitgtk.org/reference/webkit2gtk/unstable/",
17
+ };
18
+
19
+ export const webkitWebExtension6: GirModuleMetadata = {
20
+ ...WEBKIT_COMMON,
21
+ girId: "WebKitWebExtension-6.0",
22
+ displayName: "WebKit Web Extension",
23
+ description: "Library for building extensions running in the separated web process.",
24
+ cDocsUrl: "https://webkitgtk.org/reference/webkit2gtk-web-extension/unstable/",
25
+ };
26
+
27
+ export const javaScriptCore6: GirModuleMetadata = {
28
+ ...WEBKIT_COMMON,
29
+ girId: "JavaScriptCore-6.0",
30
+ displayName: "JavaScriptCore",
31
+ description: "JavaScript engine used by WebKitGTK.",
32
+ cDocsUrl: "https://webkitgtk.org/reference/jsc-glib/unstable/",
33
+ };
package/src/index.ts ADDED
@@ -0,0 +1,2 @@
1
+ export { getAllModuleMetadata, getModuleMetadata } from "./data/index.ts";
2
+ export type { GirModuleMetadata } from "./types.ts";
package/src/types.ts ADDED
@@ -0,0 +1,27 @@
1
+ /** Curated metadata for a GIR namespace / library. */
2
+ export interface GirModuleMetadata {
3
+ /** GIR namespace identifier, e.g. "Gtk-4.0" */
4
+ girId: string;
5
+ /** Human-readable display name, e.g. "GTK" */
6
+ displayName: string;
7
+ /** Short description of the library */
8
+ description: string;
9
+ /** SPDX license identifier for the library's documentation */
10
+ docLicense?: string;
11
+ /** SPDX license identifier for the library code itself */
12
+ license?: string;
13
+ /** Author(s) */
14
+ authors?: string;
15
+ /** Project website URL */
16
+ websiteUrl?: string;
17
+ /** Source code browsing URL (e.g. GitLab tree view) */
18
+ browseUrl?: string;
19
+ /** Git repository URL */
20
+ repositoryUrl?: string;
21
+ /** URL to upstream C API documentation */
22
+ cDocsUrl?: string;
23
+ /** Logo/icon URL (absolute URL) */
24
+ logoUrl?: string;
25
+ /** Category for grouping on documentation homepage */
26
+ category?: string;
27
+ }