@girs/garcongtk-1.0 4.2.0 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/garcongtk-1.0-surface.d.ts +20 -0
- package/garcongtk-1.0-surface.js +6 -0
- package/package.json +18 -18
package/README.md
CHANGED
|
@@ -5,25 +5,25 @@
|
|
|
5
5
|

|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
GJS TypeScript type definitions for GarconGtk-1.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v4.
|
|
8
|
+
GJS TypeScript type definitions for GarconGtk-1.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v4.4.0.
|
|
9
9
|
|
|
10
10
|
## Install
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Install the type definitions with npm:
|
|
13
13
|
```bash
|
|
14
14
|
npm install @girs/garcongtk-1.0
|
|
15
15
|
```
|
|
16
16
|
|
|
17
17
|
## Usage
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Import it like any other module:
|
|
20
20
|
```ts
|
|
21
21
|
import GarconGtk from '@girs/garcongtk-1.0';
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
### Ambient Modules
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
[Ambient modules](https://github.com/gjsify/ts-for-gir/tree/main/packages/cli#ambient-modules) let you write the same import you would in plain JavaScript.
|
|
27
27
|
For this you need to include `@girs/garcongtk-1.0` or `@girs/garcongtk-1.0/ambient` in your `tsconfig` or entry point Typescript file:
|
|
28
28
|
|
|
29
29
|
`index.ts`:
|
|
@@ -42,7 +42,7 @@ import '@girs/garcongtk-1.0'
|
|
|
42
42
|
}
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
The ambient module now resolves with types:
|
|
46
46
|
|
|
47
47
|
```ts
|
|
48
48
|
import GarconGtk from 'gi://GarconGtk?version=1.0';
|
|
@@ -50,7 +50,7 @@ import GarconGtk from 'gi://GarconGtk?version=1.0';
|
|
|
50
50
|
|
|
51
51
|
### Global import
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
GJS's global `imports.gi` works too, with types.
|
|
54
54
|
For this you need to include `@girs/garcongtk-1.0` or `@girs/garcongtk-1.0/import` in your `tsconfig` or entry point Typescript file:
|
|
55
55
|
|
|
56
56
|
`index.ts`:
|
|
@@ -69,7 +69,7 @@ import '@girs/garcongtk-1.0'
|
|
|
69
69
|
}
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
That form carries types as well:
|
|
73
73
|
|
|
74
74
|
```ts
|
|
75
75
|
const GarconGtk = imports.gi.GarconGtk;
|
|
@@ -77,7 +77,7 @@ const GarconGtk = imports.gi.GarconGtk;
|
|
|
77
77
|
|
|
78
78
|
### Bundle
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
Most projects want a bundler. [esbuild](https://esbuild.github.io/) is the smallest thing that works; the [examples directory](https://github.com/gjsify/ts-for-gir/tree/main/examples) has setups for several others.
|
|
81
81
|
|
|
82
82
|
## Other packages
|
|
83
83
|
|
|
@@ -89,6 +89,23 @@ export interface Widgets {
|
|
|
89
89
|
/** Every GType this namespace can create. A consumer derives its own tag map. */
|
|
90
90
|
export type WidgetGType = keyof Widgets;
|
|
91
91
|
|
|
92
|
+
// ---------------------------------------------------------------------------
|
|
93
|
+
// Child holders — the same shape, for objects that CARRY a widget without being one.
|
|
94
|
+
//
|
|
95
|
+
// `GtkListItem`, `GtkListHeader`, `GtkColumnViewCell` and `AdwToggle` descend from
|
|
96
|
+
// `GObject.Object` and hold a widget through `set_child`/`get_child`. A renderer places
|
|
97
|
+
// them exactly like a container, so they belong in the vocabulary; a check asking "is
|
|
98
|
+
// this a widget" must still be able to say no. Hence a sibling table rather than four
|
|
99
|
+
// more rows in `Widgets`: concatenate them when you mean both.
|
|
100
|
+
// ---------------------------------------------------------------------------
|
|
101
|
+
|
|
102
|
+
export interface ChildHolders {
|
|
103
|
+
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/** Every GType this namespace holds a child in without it being a widget. */
|
|
107
|
+
export type ChildHolderGType = keyof ChildHolders;
|
|
108
|
+
|
|
92
109
|
/** The writable, optional, GObject-keyed property surface of one GType. */
|
|
93
110
|
export type PropsOf<G extends WidgetGType> = Widgets[G]['props'];
|
|
94
111
|
|
|
@@ -124,6 +141,9 @@ export const OWN_SIGNALS: Readonly<Record<string, readonly string[]>>;
|
|
|
124
141
|
/** Widget GType -> every declaration its members come from, self first. */
|
|
125
142
|
export const DECLS: Readonly<Record<string, readonly string[]>>;
|
|
126
143
|
|
|
144
|
+
/** The GTypes in `DECLS` that hold a widget without being one — see `ChildHolders`. */
|
|
145
|
+
export const CHILD_HOLDERS: readonly string[];
|
|
146
|
+
|
|
127
147
|
/** Enum GType -> the nicks this surface offers. */
|
|
128
148
|
export const ENUM_NICKS: Readonly<Record<string, readonly string[]>>;
|
|
129
149
|
|
package/garcongtk-1.0-surface.js
CHANGED
|
@@ -18,6 +18,12 @@ export const DECLS = {
|
|
|
18
18
|
GarconGtkMenu: ['GarconGtkMenu', 'GtkMenu', 'GtkMenuShell', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
|
|
19
19
|
};
|
|
20
20
|
|
|
21
|
+
// The GTypes above that are NOT widgets: they hold one through `set_child`/`get_child`
|
|
22
|
+
// and descend from `GObject.Object`. A renderer places them like a container; a check
|
|
23
|
+
// asking "is this a widget" must not count them. Derived from the accessor pair, never
|
|
24
|
+
// from a list — the count is in the provenance line above.
|
|
25
|
+
export const CHILD_HOLDERS = [];
|
|
26
|
+
|
|
21
27
|
export const ENUM_NICKS = {};
|
|
22
28
|
|
|
23
29
|
export const SLOT_CANDIDATES = {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@girs/garcongtk-1.0",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.4.0",
|
|
4
4
|
"description": "GJS TypeScript type definitions for GarconGtk-1.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "garcongtk-1.0.js",
|
|
@@ -36,23 +36,23 @@
|
|
|
36
36
|
"test": "tsc --project tsconfig.json"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@girs/gjs": "^4.
|
|
40
|
-
"@girs/libxfce4util-1.0": "^4.
|
|
41
|
-
"@girs/gio-2.0": "^4.
|
|
42
|
-
"@girs/gobject-2.0": "^4.
|
|
43
|
-
"@girs/glib-2.0": "^4.
|
|
44
|
-
"@girs/gmodule-2.0": "^4.
|
|
45
|
-
"@girs/libxfce4ui-2.0": "^4.
|
|
46
|
-
"@girs/gtk-3.0": "^4.
|
|
47
|
-
"@girs/xlib-2.0": "^4.
|
|
48
|
-
"@girs/gdk-3.0": "^4.
|
|
49
|
-
"@girs/cairo-1.0": "^4.
|
|
50
|
-
"@girs/pango-1.0": "^4.
|
|
51
|
-
"@girs/harfbuzz-0.0": "^4.
|
|
52
|
-
"@girs/freetype2-2.0": "^4.
|
|
53
|
-
"@girs/gdkpixbuf-2.0": "^4.
|
|
54
|
-
"@girs/atk-1.0": "^4.
|
|
55
|
-
"@girs/garcon-1.0": "^4.
|
|
39
|
+
"@girs/gjs": "^4.4.0",
|
|
40
|
+
"@girs/libxfce4util-1.0": "^4.4.0",
|
|
41
|
+
"@girs/gio-2.0": "^4.4.0",
|
|
42
|
+
"@girs/gobject-2.0": "^4.4.0",
|
|
43
|
+
"@girs/glib-2.0": "^4.4.0",
|
|
44
|
+
"@girs/gmodule-2.0": "^4.4.0",
|
|
45
|
+
"@girs/libxfce4ui-2.0": "^4.4.0",
|
|
46
|
+
"@girs/gtk-3.0": "^4.4.0",
|
|
47
|
+
"@girs/xlib-2.0": "^4.4.0",
|
|
48
|
+
"@girs/gdk-3.0": "^4.4.0",
|
|
49
|
+
"@girs/cairo-1.0": "^4.4.0",
|
|
50
|
+
"@girs/pango-1.0": "^4.4.0",
|
|
51
|
+
"@girs/harfbuzz-0.0": "^4.4.0",
|
|
52
|
+
"@girs/freetype2-2.0": "^4.4.0",
|
|
53
|
+
"@girs/gdkpixbuf-2.0": "^4.4.0",
|
|
54
|
+
"@girs/atk-1.0": "^4.4.0",
|
|
55
|
+
"@girs/garcon-1.0": "^4.4.0" },
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"typescript": "*"
|
|
58
58
|
},
|