@gtkx/cli 0.20.0 → 0.21.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/dist/builder.d.ts.map +1 -1
- package/dist/builder.js +9 -1
- package/dist/builder.js.map +1 -1
- package/dist/create.d.ts +3 -2
- package/dist/create.d.ts.map +1 -1
- package/dist/create.js +16 -1
- package/dist/create.js.map +1 -1
- package/dist/dev-server.d.ts +0 -1
- package/dist/dev-server.d.ts.map +1 -1
- package/dist/dev-server.js +2 -0
- package/dist/dev-server.js.map +1 -1
- package/dist/mcp-client.js +5 -5
- package/dist/mcp-client.js.map +1 -1
- package/dist/vite-plugin-gtkx-gsettings.d.ts +28 -0
- package/dist/vite-plugin-gtkx-gsettings.d.ts.map +1 -0
- package/dist/vite-plugin-gtkx-gsettings.js +147 -0
- package/dist/vite-plugin-gtkx-gsettings.js.map +1 -0
- package/dist/vite-plugin-gtkx-native.js +2 -2
- package/dist/vite-plugin-gtkx-native.js.map +1 -1
- package/env.d.ts +5 -0
- package/package.json +11 -11
- package/src/builder.ts +9 -1
- package/src/create.ts +19 -3
- package/src/dev-server.tsx +2 -2
- package/src/mcp-client.ts +5 -5
- package/src/vite-plugin-gtkx-gsettings.ts +168 -0
- package/src/vite-plugin-gtkx-native.ts +2 -2
- package/templates/claude/WIDGETS.md.ejs +4 -4
package/dist/builder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,MAAM,CAAC;AAM7D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACvB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,IAAI,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,KAAK,GAAU,SAAS,YAAY,KAAG,OAAO,CAAC,IAAI,CAyC/D,CAAC"}
|
package/dist/builder.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { build as viteBuild } from "vite";
|
|
2
2
|
import { gtkxAssets } from "./vite-plugin-gtkx-assets.js";
|
|
3
3
|
import { gtkxBuiltUrl } from "./vite-plugin-gtkx-built-url.js";
|
|
4
|
+
import { gtkxGSettings } from "./vite-plugin-gtkx-gsettings.js";
|
|
4
5
|
import { gtkxNative } from "./vite-plugin-gtkx-native.js";
|
|
5
6
|
/**
|
|
6
7
|
* Builds a GTKX application for production using Vite's SSR build mode.
|
|
@@ -29,7 +30,13 @@ export const build = async (options) => {
|
|
|
29
30
|
const root = viteConfig?.root ?? process.cwd();
|
|
30
31
|
await viteBuild({
|
|
31
32
|
...viteConfig,
|
|
32
|
-
plugins: [
|
|
33
|
+
plugins: [
|
|
34
|
+
...(viteConfig?.plugins ?? []),
|
|
35
|
+
gtkxGSettings(),
|
|
36
|
+
gtkxAssets(),
|
|
37
|
+
gtkxBuiltUrl(assetBase),
|
|
38
|
+
gtkxNative(root),
|
|
39
|
+
],
|
|
33
40
|
build: {
|
|
34
41
|
...viteConfig?.build,
|
|
35
42
|
ssr: entry,
|
|
@@ -37,6 +44,7 @@ export const build = async (options) => {
|
|
|
37
44
|
assetsInlineLimit: 0,
|
|
38
45
|
outDir: viteConfig?.build?.outDir ?? "dist",
|
|
39
46
|
minify: true,
|
|
47
|
+
cssMinify: false,
|
|
40
48
|
rollupOptions: {
|
|
41
49
|
...viteConfig?.build?.rollupOptions,
|
|
42
50
|
output: {
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAkC1D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,EAAE,OAAqB,EAAiB,EAAE;IAChE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACvD,MAAM,IAAI,GAAG,UAAU,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE/C,MAAM,SAAS,CAAC;QACZ,GAAG,UAAU;QACb,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAkC1D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,EAAE,OAAqB,EAAiB,EAAE;IAChE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACvD,MAAM,IAAI,GAAG,UAAU,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE/C,MAAM,SAAS,CAAC;QACZ,GAAG,UAAU;QACb,OAAO,EAAE;YACL,GAAG,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;YAC9B,aAAa,EAAE;YACf,UAAU,EAAE;YACZ,YAAY,CAAC,SAAS,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC;SACnB;QACD,KAAK,EAAE;YACH,GAAG,UAAU,EAAE,KAAK;YACpB,GAAG,EAAE,KAAK;YACV,aAAa,EAAE,IAAI;YACnB,iBAAiB,EAAE,CAAC;YACpB,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,IAAI,MAAM;YAC3C,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE;gBACX,GAAG,UAAU,EAAE,KAAK,EAAE,aAAa;gBACnC,MAAM,EAAE;oBACJ,GAAI,CAAC,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,EAAE,CAA6B;oBAChF,cAAc,EAAE,WAAW;iBAC9B;aACJ;SACJ;QACD,MAAM,EAAE;YACJ,GAAG,UAAU,EAAE,MAAM;YACrB,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;SACvD;QACD,GAAG,EAAE;YACD,GAAG,UAAU,EAAE,GAAG;YAClB,UAAU,EAAE,IAAI;SACnB;QACD,YAAY,EAAE;YACV,GAAG,UAAU,EAAE,YAAY;SAC9B;KACJ,CAAC,CAAC;AACP,CAAC,CAAC"}
|
package/dist/create.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Supported package managers for GTKX projects.
|
|
3
3
|
*/
|
|
4
|
-
|
|
4
|
+
type PackageManager = "pnpm" | "npm" | "yarn";
|
|
5
5
|
/**
|
|
6
6
|
* Whether to include testing setup in GTKX projects.
|
|
7
7
|
*/
|
|
@@ -11,7 +11,7 @@ export type TestingOption = "vitest" | "none";
|
|
|
11
11
|
*
|
|
12
12
|
* All options are optional; missing values will be prompted interactively.
|
|
13
13
|
*/
|
|
14
|
-
|
|
14
|
+
type CreateOptions = {
|
|
15
15
|
name?: string;
|
|
16
16
|
appId?: string;
|
|
17
17
|
packageManager?: PackageManager;
|
|
@@ -51,4 +51,5 @@ export declare const isValidAppId: (appId: string) => boolean;
|
|
|
51
51
|
* ```
|
|
52
52
|
*/
|
|
53
53
|
export declare const createApp: (options?: CreateOptions) => Promise<void>;
|
|
54
|
+
export {};
|
|
54
55
|
//# sourceMappingURL=create.d.ts.map
|
package/dist/create.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,KAAK,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9C;;;;GAIG;AACH,KAAK,aAAa,GAAG;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAiBF,eAAO,MAAM,aAAa,GAAI,IAAI,cAAc,EAAE,MAAM,MAAM,EAAE,EAAE,KAAK,OAAO,KAAG,MAYhF,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,IAAI,cAAc,KAAG,MASlD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,OAEjD,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,OAE5C,CAAC;AAsMF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,SAAS,GAAU,UAAS,aAAkB,KAAG,OAAO,CAAC,IAAI,CAwBzE,CAAC"}
|
package/dist/create.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { spawn } from "node:child_process";
|
|
1
|
+
import { execFileSync, spawn } from "node:child_process";
|
|
2
2
|
import { existsSync, mkdirSync, writeFileSync } from "node:fs";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
4
|
import * as p from "@clack/prompts";
|
|
@@ -166,6 +166,12 @@ const installDependencies = async (projectPath, name, packageManager, devDeps) =
|
|
|
166
166
|
p.log.info(` ${getAddCommand(packageManager, devDeps, true)}`);
|
|
167
167
|
}
|
|
168
168
|
};
|
|
169
|
+
const initializeGitRepo = (projectPath) => {
|
|
170
|
+
const opts = { cwd: projectPath, stdio: "pipe" };
|
|
171
|
+
execFileSync("git", ["init"], opts);
|
|
172
|
+
execFileSync("git", ["add", "-A"], opts);
|
|
173
|
+
execFileSync("git", ["commit", "-m", "Initial commit"], opts);
|
|
174
|
+
};
|
|
169
175
|
const printNextSteps = (name, packageManager, testing) => {
|
|
170
176
|
const runCmd = getRunCommand(packageManager);
|
|
171
177
|
const nextSteps = `cd ${name}\n${runCmd}`;
|
|
@@ -216,6 +222,15 @@ export const createApp = async (options = {}) => {
|
|
|
216
222
|
s.stop("Project structure created!");
|
|
217
223
|
const devDeps = getDevDependencies(resolved.testing);
|
|
218
224
|
await installDependencies(projectPath, resolved.name, resolved.packageManager, devDeps);
|
|
225
|
+
const gitSpinner = p.spinner();
|
|
226
|
+
gitSpinner.start("Initializing git repository...");
|
|
227
|
+
try {
|
|
228
|
+
initializeGitRepo(projectPath);
|
|
229
|
+
gitSpinner.stop("Git repository initialized!");
|
|
230
|
+
}
|
|
231
|
+
catch {
|
|
232
|
+
gitSpinner.stop("Failed to initialize git repository");
|
|
233
|
+
}
|
|
219
234
|
printNextSteps(resolved.name, resolved.packageManager, resolved.testing);
|
|
220
235
|
};
|
|
221
236
|
//# sourceMappingURL=create.js.map
|
package/dist/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"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"}
|
package/dist/dev-server.d.ts
CHANGED
|
@@ -34,5 +34,4 @@ export type DevServerOptions = {
|
|
|
34
34
|
* @see {@link DevServerOptions} for configuration options
|
|
35
35
|
*/
|
|
36
36
|
export declare const createDevServer: (options: DevServerOptions) => Promise<ViteDevServer>;
|
|
37
|
-
export type { ViteDevServer };
|
|
38
37
|
//# sourceMappingURL=dev-server.d.ts.map
|
package/dist/dev-server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../src/dev-server.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../src/dev-server.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAO3E;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,IAAI,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,eAAe,GAAU,SAAS,gBAAgB,KAAG,OAAO,CAAC,aAAa,CAiHtF,CAAC"}
|
package/dist/dev-server.js
CHANGED
|
@@ -4,6 +4,7 @@ import { setHotReloading, update } from "@gtkx/react";
|
|
|
4
4
|
import { createServer } from "vite";
|
|
5
5
|
import { isReactRefreshBoundary, performRefresh } from "./refresh-runtime.js";
|
|
6
6
|
import { gtkxAssets } from "./vite-plugin-gtkx-assets.js";
|
|
7
|
+
import { gtkxGSettings } from "./vite-plugin-gtkx-gsettings.js";
|
|
7
8
|
import { gtkxRefresh } from "./vite-plugin-gtkx-refresh.js";
|
|
8
9
|
import { swcSsrRefresh } from "./vite-plugin-swc-ssr-refresh.js";
|
|
9
10
|
/**
|
|
@@ -38,6 +39,7 @@ export const createDevServer = async (options) => {
|
|
|
38
39
|
...viteConfig,
|
|
39
40
|
appType: "custom",
|
|
40
41
|
plugins: [
|
|
42
|
+
gtkxGSettings(),
|
|
41
43
|
gtkxAssets(),
|
|
42
44
|
swcSsrRefresh(),
|
|
43
45
|
gtkxRefresh(),
|
package/dist/dev-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../src/dev-server.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../src/dev-server.tsx"],"names":[],"mappings":"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"}
|
package/dist/mcp-client.js
CHANGED
|
@@ -26,7 +26,7 @@ const loadTestingModule = async () => {
|
|
|
26
26
|
return testingModule;
|
|
27
27
|
}
|
|
28
28
|
catch (cause) {
|
|
29
|
-
testingLoadError = new Error("@gtkx/testing is not installed
|
|
29
|
+
testingLoadError = new Error("@gtkx/testing is not installed, install it to enable MCP widget interactions: pnpm add -D @gtkx/testing", { cause });
|
|
30
30
|
throw testingLoadError;
|
|
31
31
|
}
|
|
32
32
|
};
|
|
@@ -187,13 +187,13 @@ class McpClient {
|
|
|
187
187
|
});
|
|
188
188
|
}
|
|
189
189
|
send(message) {
|
|
190
|
-
if (!this.socket
|
|
190
|
+
if (!this.socket?.writable)
|
|
191
191
|
return;
|
|
192
192
|
this.socket.write(`${JSON.stringify(message)}\n`);
|
|
193
193
|
}
|
|
194
194
|
sendRequest(method, params) {
|
|
195
195
|
return new Promise((resolve, reject) => {
|
|
196
|
-
if (!this.socket
|
|
196
|
+
if (!this.socket?.writable) {
|
|
197
197
|
reject(new Error("Socket not connected"));
|
|
198
198
|
return;
|
|
199
199
|
}
|
|
@@ -308,8 +308,8 @@ class McpClient {
|
|
|
308
308
|
case "text":
|
|
309
309
|
widgets = await testing.findAllByText(app, String(p.value), p.options);
|
|
310
310
|
break;
|
|
311
|
-
case "
|
|
312
|
-
widgets = await testing.
|
|
311
|
+
case "name":
|
|
312
|
+
widgets = await testing.findAllByName(app, String(p.value), p.options);
|
|
313
313
|
break;
|
|
314
314
|
case "labelText":
|
|
315
315
|
widgets = await testing.findAllByLabelText(app, String(p.value), p.options);
|
package/dist/mcp-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../src/mcp-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,EACH,mBAAmB,EAGnB,gBAAgB,EAEhB,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACZ,mBAAmB,EAEnB,mBAAmB,GACtB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,GAAG,IAAI,OAAO,EAAsB,CAAC;AACtD,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,MAAM,WAAW,GAAG,CAAC,MAAkB,EAAU,EAAE;IAC/C,IAAI,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,EAAE,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5B,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AAIF,IAAI,aAAa,GAAyB,IAAI,CAAC;AAC/C,IAAI,gBAAgB,GAAiB,IAAI,CAAC;AAE1C,MAAM,iBAAiB,GAAG,KAAK,IAA4B,EAAE;IACzD,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IACxC,IAAI,gBAAgB;QAAE,MAAM,gBAAgB,CAAC;IAE7C,IAAI,CAAC;QACD,aAAa,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAC9C,OAAO,aAAa,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,gBAAgB,GAAG,IAAI,KAAK,CACxB,yGAAyG,EACzG,EAAE,KAAK,EAAE,CACZ,CAAC;QACF,MAAM,gBAAgB,CAAC;IAC3B,CAAC;AACL,CAAC,CAAC;AAaF,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AAEjC,MAAM,UAAU,GAAG,CAAC,IAAoC,EAAU,EAAE;IAChE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,MAAkB,EAAiB,EAAE;IACxD,IAAI,UAAU,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAChE,OAAO,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,IAAI,SAAS,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC9D,OAAO,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC;IACpC,CAAC;IAED,IAAI,UAAU,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAChE,OAAO,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,OAAO,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAoB,EAAE;IAC7D,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,IAAI,KAAK,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;IACnC,OAAO,KAAK,EAAE,CAAC;QACX,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO;QACH,EAAE,EAAE,WAAW,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;QAC7B,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC5C,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI;QAC9B,KAAK,EAAE,IAAI;QACX,IAAI;QACJ,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE;QAChC,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE;QAC5B,UAAU,EAAE,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE;QACxC,QAAQ;KACX,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAsB,CAAC;AAErD,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAQ,EAAE;IACjD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAClC,IAAI,KAAK,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;IACnC,OAAO,KAAK,EAAE,CAAC;QACX,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;IACnC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,EAAU,EAA0B,EAAE;IACzD,OAAO,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,GAAS,EAAE;IACrC,cAAc,CAAC,KAAK,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;IAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,eAAe,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,SAAS;IACH,MAAM,GAAsB,IAAI,CAAC;IACjC,MAAM,GAAG,EAAE,CAAC;IACZ,UAAU,CAAS;IACnB,KAAK,CAAS;IACd,cAAc,GAA0B,IAAI,CAAC;IAC7C,YAAY,GAAG,KAAK,CAAC;IACrB,UAAU,GAAG,KAAK,CAAC;IACnB,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE5D,YAAY,OAAyB;QACjC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC;QAC5D,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO;QACT,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,cAAc,CAAC,SAAsB,EAAE,OAAgC;QAC3E,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,MAAM,MAAM,GAAG,CAAsB,QAA4C,EAAE,GAAG,IAAO,EAAE,EAAE;YAC7F,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;YACrD,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,QAAQ,EAAE;iBACV,IAAI,CAAC,GAAG,EAAE;gBACP,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;gBACjD,MAAM,CAAC,SAAS,CAAC,CAAC;YACtB,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3E,MAAM,CAAC,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/E,CAAC,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACzB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;gBACnD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC3D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9B,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;YACnD,MAAM,iBAAiB,GACnB,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,YAAY,CAAC;YAC9F,IAAI,iBAAiB,EAAE,CAAC;gBACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,iBAAiB;QACrB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QACnD,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1B,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC3B,CAAC;IAED,UAAU;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IAEO,qBAAqB,CAAC,KAAY;QACtC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YAClD,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,QAAQ;QAClB,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACnC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,EAAE,OAAO,CAAC,GAAG;SACnB,CAAC,CAAC;IACP,CAAC;IAEO,IAAI,CAAC,OAAiC;QAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,OAAO;QAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAEO,WAAW,CAAC,MAAiB,EAAE,MAAgB;QACnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBAC1C,OAAO;YACX,CAAC;YAED,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,EAAE,kBAAkB,CAAC,CAAC;YAEvB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,UAAU,CAAC,IAAY;QAC3B,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE/B,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YAElD,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBACd,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,IAAY;QAC/B,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC7D,OAAO;QACX,CAAC;QAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC;YACrC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,OAAO,EAAE,CAAC;gBACV,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACzC,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACjB,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBACtD,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrC,CAAC;gBACD,OAAO;YACX,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACnD,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAmB;QAC3C,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAEvC,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAmB,EAAE,MAAM,CAAC,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACJ,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,CAAC,IAAI,CAAC;oBACN,EAAE;oBACF,KAAK,EAAE;wBACH,IAAI,EAAE,YAAY,CAAC,cAAc;wBACjC,OAAO;qBACV;iBACJ,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,MAAiB,EAAE,MAAe;QAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,UAAU,EAA4B,CAAC;QAEnE,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QAED,qBAAqB,EAAE,CAAC;QAExB,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACpB,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC3C,OAAO;oBACH,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACzB,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;wBAClB,KAAK,EAAG,CAAgB,CAAC,QAAQ,EAAE,EAAE,IAAI,IAAI;qBAChD,CAAC,CAAC;iBACN,CAAC;YACN,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACpB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YACvF,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBAClB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,MAA0F,CAAC;gBACrG,IAAI,OAAO,GAAiB,EAAE,CAAC;gBAE/B,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;oBAClB,KAAK,MAAM,CAAC,CAAC,CAAC;wBACV,MAAM,SAAS,GACX,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;4BACvB,CAAC,CAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,KAAwC,CAAwB;4BACxF,CAAC,CAAE,CAAC,CAAC,KAA4B,CAAC;wBAC1C,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBACjE,MAAM;oBACV,CAAC;oBACD,KAAK,MAAM;wBACP,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBACvE,MAAM;oBACV,KAAK,QAAQ;wBACT,OAAO,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBACzE,MAAM;oBACV,KAAK,WAAW;wBACZ,OAAO,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBAC5E,MAAM;oBACV;wBACI,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,GAAG,MAA8B,CAAC;gBACzC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBACD,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBAClB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,MAA8B,CAAC;gBACzC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC7B,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACjB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,MAA6D,CAAC;gBACxE,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBACD,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;oBACV,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC7C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC7B,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACtB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,MAIT,CAAC;gBACF,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC1C,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,MAAM,IAAI,GAAG,IAAI,OAAO,IAAI,GAAG,CAAC;oBAC9F,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAE,GAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC;oBACzE,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAE,GAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;oBAEtE,QAAQ,OAAO,EAAE,CAAC;wBACd,KAAK,SAAS;4BACV,OAAO,KAAK,CAAC,cAAc,CAAC,QAAmB,CAAC,CAAC;wBACrD,KAAK,KAAK;4BACN,OAAO,KAAK,CAAC,UAAU,CAAC,QAAkB,CAAC,CAAC;wBAChD,KAAK,MAAM;4BACP,OAAO,KAAK,CAAC,WAAW,CAAC,QAAkB,CAAC,CAAC;wBACjD,KAAK,OAAO;4BACR,OAAO,KAAK,CAAC,YAAY,CAAC,QAAkB,CAAC,CAAC;wBAClD,KAAK,QAAQ;4BACT,OAAO,KAAK,CAAC,aAAa,CAAC,QAAkB,CAAC,CAAC;wBACnD,KAAK,OAAO;4BACR,OAAO,KAAK,CAAC,YAAY,CAAC,QAAkB,CAAC,CAAC;wBAClD,KAAK,QAAQ,CAAC;wBACd,KAAK,QAAQ;4BACT,OAAO,KAAK,CAAC,aAAa,CAAC,QAAkB,CAAC,CAAC;wBACnD,KAAK,QAAQ;4BACT,OAAO,KAAK,CAAC,aAAa,CAAC,QAAyB,CAAC,CAAC;wBAC1D;4BACI,MAAM,IAAI,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,0BAA0B,OAAO,EAAE,CAAC,CAAC;oBAC9F,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;gBACzD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC7B,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACvB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,MAA+B,CAAC;gBAE1C,IAAI,YAAwB,CAAC;gBAE7B,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACzC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACV,MAAM,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAC1C,CAAC;oBACD,YAAY,GAAG,MAAoB,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACJ,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;oBACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBAC3D,CAAC;oBACD,YAAY,GAAG,OAAO,CAAC,CAAC,CAAe,CAAC;gBAC5C,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBACtD,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC5D,CAAC;YAED;gBACI,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC;CACJ;AAED,IAAI,YAAY,GAAqB,IAAI,CAAC;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAa,EAAsB,EAAE;IACtE,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,YAAY,GAAG,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAExC,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAE7C,OAAO,YAAY,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAS,EAAE;IACpC,IAAI,YAAY,EAAE,CAAC;QACf,YAAY,CAAC,UAAU,EAAE,CAAC;QAC1B,YAAY,GAAG,IAAI,CAAC;IACxB,CAAC;AACL,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../src/mcp-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Plugin } from "vite";
|
|
2
|
+
/**
|
|
3
|
+
* Vite plugin that compiles GSettings schemas when imported.
|
|
4
|
+
*
|
|
5
|
+
* Intercepts imports of `.gschema.xml` files. The import's default export
|
|
6
|
+
* is the schema ID extracted from the XML, so downstream code can use it
|
|
7
|
+
* directly with `useSetting`. When the file contains multiple `<schema>`
|
|
8
|
+
* elements, each ID is also available as a named export (with dots
|
|
9
|
+
* replaced by underscores).
|
|
10
|
+
*
|
|
11
|
+
* **Dev mode:** Copies the schema to a temporary directory, runs
|
|
12
|
+
* `glib-compile-schemas`, and sets `GSETTINGS_SCHEMA_DIR` so
|
|
13
|
+
* `Gio.Settings` can find the compiled result. Schema file changes
|
|
14
|
+
* trigger recompilation via HMR.
|
|
15
|
+
*
|
|
16
|
+
* **Build mode:** All imported schemas are compiled together at build time
|
|
17
|
+
* into a single `gschemas.compiled` asset emitted next to the bundle. At
|
|
18
|
+
* runtime a shared init module sets `GSETTINGS_SCHEMA_DIR` to the
|
|
19
|
+
* bundle's directory once, regardless of how many schemas are imported.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import schemaId from "./com.example.myapp.gschema.xml";
|
|
24
|
+
* const [value, setValue] = useSetting(schemaId, "my-key", "string");
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function gtkxGSettings(): Plugin;
|
|
28
|
+
//# sourceMappingURL=vite-plugin-gtkx-gsettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vite-plugin-gtkx-gsettings.d.ts","sourceRoot":"","sources":["../src/vite-plugin-gtkx-gsettings.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAOnC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAmItC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { execFileSync } from "node:child_process";
|
|
2
|
+
import { copyFileSync, mkdtempSync, readFileSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { basename, join } from "node:path";
|
|
5
|
+
const SCHEMA_RE = /\.gschema\.xml$/;
|
|
6
|
+
const SCHEMA_ID_RE = /<schema\s+id="([^"]+)"/g;
|
|
7
|
+
const VIRTUAL_PREFIX = "\0gtkx-gsettings:";
|
|
8
|
+
const VIRTUAL_INIT = "\0gtkx-gsettings-init";
|
|
9
|
+
/**
|
|
10
|
+
* Vite plugin that compiles GSettings schemas when imported.
|
|
11
|
+
*
|
|
12
|
+
* Intercepts imports of `.gschema.xml` files. The import's default export
|
|
13
|
+
* is the schema ID extracted from the XML, so downstream code can use it
|
|
14
|
+
* directly with `useSetting`. When the file contains multiple `<schema>`
|
|
15
|
+
* elements, each ID is also available as a named export (with dots
|
|
16
|
+
* replaced by underscores).
|
|
17
|
+
*
|
|
18
|
+
* **Dev mode:** Copies the schema to a temporary directory, runs
|
|
19
|
+
* `glib-compile-schemas`, and sets `GSETTINGS_SCHEMA_DIR` so
|
|
20
|
+
* `Gio.Settings` can find the compiled result. Schema file changes
|
|
21
|
+
* trigger recompilation via HMR.
|
|
22
|
+
*
|
|
23
|
+
* **Build mode:** All imported schemas are compiled together at build time
|
|
24
|
+
* into a single `gschemas.compiled` asset emitted next to the bundle. At
|
|
25
|
+
* runtime a shared init module sets `GSETTINGS_SCHEMA_DIR` to the
|
|
26
|
+
* bundle's directory once, regardless of how many schemas are imported.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* import schemaId from "./com.example.myapp.gschema.xml";
|
|
31
|
+
* const [value, setValue] = useSetting(schemaId, "my-key", "string");
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export function gtkxGSettings() {
|
|
35
|
+
let schemaDir = null;
|
|
36
|
+
let isBuild = false;
|
|
37
|
+
const trackedSchemas = new Map();
|
|
38
|
+
const buildSchemas = new Map();
|
|
39
|
+
const ensureSchemaDir = () => {
|
|
40
|
+
if (!schemaDir) {
|
|
41
|
+
schemaDir = mkdtempSync(join(tmpdir(), "gtkx-schemas-"));
|
|
42
|
+
}
|
|
43
|
+
return schemaDir;
|
|
44
|
+
};
|
|
45
|
+
const compile = () => {
|
|
46
|
+
if (!schemaDir)
|
|
47
|
+
return;
|
|
48
|
+
execFileSync("glib-compile-schemas", [schemaDir]);
|
|
49
|
+
const existing = process.env.GSETTINGS_SCHEMA_DIR;
|
|
50
|
+
process.env.GSETTINGS_SCHEMA_DIR = existing ? `${schemaDir}:${existing}` : schemaDir;
|
|
51
|
+
};
|
|
52
|
+
return {
|
|
53
|
+
name: "gtkx:gsettings",
|
|
54
|
+
enforce: "pre",
|
|
55
|
+
configResolved(config) {
|
|
56
|
+
isBuild = config.command === "build";
|
|
57
|
+
},
|
|
58
|
+
async resolveId(source, importer, options) {
|
|
59
|
+
if (source === VIRTUAL_INIT)
|
|
60
|
+
return VIRTUAL_INIT;
|
|
61
|
+
if (!SCHEMA_RE.test(source))
|
|
62
|
+
return;
|
|
63
|
+
const resolved = await this.resolve(source, importer, {
|
|
64
|
+
...options,
|
|
65
|
+
skipSelf: true,
|
|
66
|
+
});
|
|
67
|
+
if (!resolved || resolved.external)
|
|
68
|
+
return;
|
|
69
|
+
return VIRTUAL_PREFIX + resolved.id;
|
|
70
|
+
},
|
|
71
|
+
load(id) {
|
|
72
|
+
if (id === VIRTUAL_INIT) {
|
|
73
|
+
return [
|
|
74
|
+
`import { dirname } from "node:path";`,
|
|
75
|
+
`import { fileURLToPath } from "node:url";`,
|
|
76
|
+
``,
|
|
77
|
+
`const bundleDir = dirname(fileURLToPath(import.meta.url));`,
|
|
78
|
+
`const existing = process.env.GSETTINGS_SCHEMA_DIR;`,
|
|
79
|
+
`process.env.GSETTINGS_SCHEMA_DIR = existing ? bundleDir + ":" + existing : bundleDir;`,
|
|
80
|
+
].join("\n");
|
|
81
|
+
}
|
|
82
|
+
if (!id.startsWith(VIRTUAL_PREFIX))
|
|
83
|
+
return;
|
|
84
|
+
const filePath = id.slice(VIRTUAL_PREFIX.length);
|
|
85
|
+
const xml = readFileSync(filePath, "utf-8");
|
|
86
|
+
const fileName = basename(filePath);
|
|
87
|
+
if (isBuild) {
|
|
88
|
+
buildSchemas.set(filePath, fileName);
|
|
89
|
+
console.log(`[gtkx] Queued GSettings schema: ${fileName}`);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
trackedSchemas.set(filePath, id);
|
|
93
|
+
const dir = ensureSchemaDir();
|
|
94
|
+
copyFileSync(filePath, join(dir, fileName));
|
|
95
|
+
compile();
|
|
96
|
+
console.log(`[gtkx] Compiled GSettings schema: ${fileName}`);
|
|
97
|
+
}
|
|
98
|
+
const schemaIds = [];
|
|
99
|
+
for (const match of xml.matchAll(SCHEMA_ID_RE)) {
|
|
100
|
+
schemaIds.push(match[1]);
|
|
101
|
+
}
|
|
102
|
+
if (schemaIds.length === 0) {
|
|
103
|
+
this.error(`No <schema id="..."> found in ${fileName}`);
|
|
104
|
+
}
|
|
105
|
+
const exports = [`export default ${JSON.stringify(schemaIds[0])};`];
|
|
106
|
+
for (const schemaId of schemaIds) {
|
|
107
|
+
const exportName = schemaId.replaceAll(".", "_");
|
|
108
|
+
exports.push(`export const ${exportName} = ${JSON.stringify(schemaId)};`);
|
|
109
|
+
}
|
|
110
|
+
if (isBuild) {
|
|
111
|
+
return [`import ${JSON.stringify(VIRTUAL_INIT)};`, "", ...exports].join("\n");
|
|
112
|
+
}
|
|
113
|
+
return exports.join("\n");
|
|
114
|
+
},
|
|
115
|
+
buildEnd() {
|
|
116
|
+
if (!isBuild || buildSchemas.size === 0)
|
|
117
|
+
return;
|
|
118
|
+
const dir = mkdtempSync(join(tmpdir(), "gtkx-schemas-build-"));
|
|
119
|
+
for (const [filePath, fileName] of buildSchemas) {
|
|
120
|
+
copyFileSync(filePath, join(dir, fileName));
|
|
121
|
+
}
|
|
122
|
+
execFileSync("glib-compile-schemas", [dir]);
|
|
123
|
+
const compiled = readFileSync(join(dir, "gschemas.compiled"));
|
|
124
|
+
this.emitFile({
|
|
125
|
+
type: "asset",
|
|
126
|
+
fileName: "gschemas.compiled",
|
|
127
|
+
source: compiled,
|
|
128
|
+
});
|
|
129
|
+
console.log(`[gtkx] Compiled ${buildSchemas.size} GSettings schema(s)`);
|
|
130
|
+
},
|
|
131
|
+
handleHotUpdate({ file, server }) {
|
|
132
|
+
const virtualId = trackedSchemas.get(file);
|
|
133
|
+
if (!virtualId)
|
|
134
|
+
return;
|
|
135
|
+
const dir = ensureSchemaDir();
|
|
136
|
+
copyFileSync(file, join(dir, basename(file)));
|
|
137
|
+
compile();
|
|
138
|
+
console.log(`[gtkx] Recompiled GSettings schema: ${basename(file)}`);
|
|
139
|
+
const mod = server.moduleGraph.getModuleById(virtualId);
|
|
140
|
+
if (mod) {
|
|
141
|
+
server.moduleGraph.invalidateModule(mod);
|
|
142
|
+
return [mod];
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=vite-plugin-gtkx-gsettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vite-plugin-gtkx-gsettings.js","sourceRoot":"","sources":["../src/vite-plugin-gtkx-gsettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG3C,MAAM,SAAS,GAAG,iBAAiB,CAAC;AACpC,MAAM,YAAY,GAAG,yBAAyB,CAAC;AAC/C,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAC3C,MAAM,YAAY,GAAG,uBAAuB,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,aAAa;IACzB,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IACjD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,MAAM,eAAe,GAAG,GAAW,EAAE;QACjC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAS,EAAE;QACvB,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,YAAY,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,CAAC,CAAC;IAEF,OAAO;QACH,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,KAAK;QAEd,cAAc,CAAC,MAAM;YACjB,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;YACrC,IAAI,MAAM,KAAK,YAAY;gBAAE,OAAO,YAAY,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAO;YAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE;gBAClD,GAAG,OAAO;gBACV,QAAQ,EAAE,IAAI;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;gBAAE,OAAO;YAE3C,OAAO,cAAc,GAAG,QAAQ,CAAC,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,EAAE;YACH,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;gBACtB,OAAO;oBACH,sCAAsC;oBACtC,2CAA2C;oBAC3C,EAAE;oBACF,4DAA4D;oBAC5D,oDAAoD;oBACpD,uFAAuF;iBAC1F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC;YAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;gBAAE,OAAO;YAE3C,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEpC,IAAI,OAAO,EAAE,CAAC;gBACV,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACJ,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAEjC,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;gBAC9B,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAC5C,OAAO,EAAE,CAAC;gBAEV,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;YACjE,CAAC;YAED,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC7C,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;YACvC,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,OAAO,GAAG,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,gBAAgB,UAAU,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9E,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClF,CAAC;YAED,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,QAAQ;YACJ,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO;YAEhD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;YAC/D,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC9C,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,YAAY,CAAC,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAE5C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC;gBACV,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,mBAAmB;gBAC7B,MAAM,EAAE,QAAQ;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,mBAAmB,YAAY,CAAC,IAAI,sBAAsB,CAAC,CAAC;QAC5E,CAAC;QAED,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAC5B,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,SAAS;gBAAE,OAAO;YAEvB,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;YAC9B,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;YAEV,OAAO,CAAC,GAAG,CAAC,uCAAuC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAErE,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,GAAG,EAAE,CAAC;gBACN,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -26,10 +26,10 @@ export function gtkxNative(root) {
|
|
|
26
26
|
const currentArch = arch();
|
|
27
27
|
const packageName = `@gtkx/native-linux-${currentArch}`;
|
|
28
28
|
if (currentPlatform !== "linux") {
|
|
29
|
-
throw new Error(`Unsupported build platform: ${currentPlatform}
|
|
29
|
+
throw new Error(`Unsupported build platform: ${currentPlatform}, only Linux is supported`);
|
|
30
30
|
}
|
|
31
31
|
if (currentArch !== "x64" && currentArch !== "arm64") {
|
|
32
|
-
throw new Error(`Unsupported build architecture: ${currentArch}
|
|
32
|
+
throw new Error(`Unsupported build architecture: ${currentArch}, only x64 and arm64 are supported`);
|
|
33
33
|
}
|
|
34
34
|
nativeIndexPath = projectRequire.resolve("@gtkx/native");
|
|
35
35
|
const nodePath = projectRequire.resolve(`${packageName}/index.node`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin-gtkx-native.js","sourceRoot":"","sources":["../src/vite-plugin-gtkx-native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,MAAM,sBAAsB,GAAG,+CAA+C,CAAC;AAC/E,MAAM,iBAAiB,GAAG,kDAAkD,CAAC;AAE7E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACnC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IACjE,IAAI,eAAuB,CAAC;IAE5B,OAAO;QACH,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,KAAK;QAEd,UAAU;YACN,MAAM,eAAe,GAAG,QAAQ,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,sBAAsB,WAAW,EAAE,CAAC;YAExD,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,eAAe,
|
|
1
|
+
{"version":3,"file":"vite-plugin-gtkx-native.js","sourceRoot":"","sources":["../src/vite-plugin-gtkx-native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,MAAM,sBAAsB,GAAG,+CAA+C,CAAC;AAC/E,MAAM,iBAAiB,GAAG,kDAAkD,CAAC;AAE7E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACnC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IACjE,IAAI,eAAuB,CAAC;IAE5B,OAAO;QACH,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,KAAK;QAEd,UAAU;YACN,MAAM,eAAe,GAAG,QAAQ,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,IAAI,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,sBAAsB,WAAW,EAAE,CAAC;YAExD,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,eAAe,2BAA2B,CAAC,CAAC;YAC/F,CAAC;YAED,IAAI,WAAW,KAAK,KAAK,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CAAC,mCAAmC,WAAW,oCAAoC,CAAC,CAAC;YACxG,CAAC;YAED,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAEzD,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,WAAW,aAAa,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YAEtC,IAAI,CAAC,QAAQ,CAAC;gBACV,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,WAAW;gBACrB,MAAM;aACT,CAAC,CAAC;QACP,CAAC;QAED,SAAS,CAAC,IAAI,EAAE,EAAE;YACd,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;gBACzB,OAAO;YACX,CAAC;YAED,OAAO,IAAI;iBACN,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;iBAC9B,OAAO,CAAC,sBAAsB,EAAE,iEAAiE,CAAC,CAAC;QAC5G,CAAC;KACJ,CAAC;AACN,CAAC"}
|
package/env.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gtkx/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.0",
|
|
4
4
|
"description": "CLI for GTKX - create and develop GTK4 React applications",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"gtkx",
|
|
@@ -60,25 +60,25 @@
|
|
|
60
60
|
"templates"
|
|
61
61
|
],
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@clack/prompts": "^1.0
|
|
64
|
-
"@swc/core": "^1.15.
|
|
63
|
+
"@clack/prompts": "^1.1.0",
|
|
64
|
+
"@swc/core": "^1.15.21",
|
|
65
65
|
"citty": "^0.2.1",
|
|
66
|
-
"ejs": "^
|
|
66
|
+
"ejs": "^5.0.1",
|
|
67
67
|
"react-refresh": "^0.18.0",
|
|
68
|
-
"vite": "^
|
|
69
|
-
"@gtkx/ffi": "0.
|
|
70
|
-
"@gtkx/mcp": "0.
|
|
71
|
-
"@gtkx/react": "0.
|
|
68
|
+
"vite": "^8.0.3",
|
|
69
|
+
"@gtkx/ffi": "0.21.0",
|
|
70
|
+
"@gtkx/mcp": "0.21.0",
|
|
71
|
+
"@gtkx/react": "0.21.0"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
74
|
"@types/ejs": "^3.1.5",
|
|
75
75
|
"@types/react-refresh": "^0.14.7",
|
|
76
|
-
"memfs": "^4.
|
|
77
|
-
"@gtkx/testing": "0.
|
|
76
|
+
"memfs": "^4.57.1",
|
|
77
|
+
"@gtkx/testing": "0.21.0"
|
|
78
78
|
},
|
|
79
79
|
"peerDependencies": {
|
|
80
80
|
"react": "^19",
|
|
81
|
-
"@gtkx/testing": "0.
|
|
81
|
+
"@gtkx/testing": "0.21.0"
|
|
82
82
|
},
|
|
83
83
|
"peerDependenciesMeta": {
|
|
84
84
|
"@gtkx/testing": {
|
package/src/builder.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type InlineConfig, build as viteBuild } from "vite";
|
|
2
2
|
import { gtkxAssets } from "./vite-plugin-gtkx-assets.js";
|
|
3
3
|
import { gtkxBuiltUrl } from "./vite-plugin-gtkx-built-url.js";
|
|
4
|
+
import { gtkxGSettings } from "./vite-plugin-gtkx-gsettings.js";
|
|
4
5
|
import { gtkxNative } from "./vite-plugin-gtkx-native.js";
|
|
5
6
|
|
|
6
7
|
/**
|
|
@@ -63,7 +64,13 @@ export const build = async (options: BuildOptions): Promise<void> => {
|
|
|
63
64
|
|
|
64
65
|
await viteBuild({
|
|
65
66
|
...viteConfig,
|
|
66
|
-
plugins: [
|
|
67
|
+
plugins: [
|
|
68
|
+
...(viteConfig?.plugins ?? []),
|
|
69
|
+
gtkxGSettings(),
|
|
70
|
+
gtkxAssets(),
|
|
71
|
+
gtkxBuiltUrl(assetBase),
|
|
72
|
+
gtkxNative(root),
|
|
73
|
+
],
|
|
67
74
|
build: {
|
|
68
75
|
...viteConfig?.build,
|
|
69
76
|
ssr: entry,
|
|
@@ -71,6 +78,7 @@ export const build = async (options: BuildOptions): Promise<void> => {
|
|
|
71
78
|
assetsInlineLimit: 0,
|
|
72
79
|
outDir: viteConfig?.build?.outDir ?? "dist",
|
|
73
80
|
minify: true,
|
|
81
|
+
cssMinify: false,
|
|
74
82
|
rollupOptions: {
|
|
75
83
|
...viteConfig?.build?.rollupOptions,
|
|
76
84
|
output: {
|
package/src/create.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { spawn } from "node:child_process";
|
|
1
|
+
import { execFileSync, spawn } from "node:child_process";
|
|
2
2
|
import { existsSync, mkdirSync, writeFileSync } from "node:fs";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
4
|
import * as p from "@clack/prompts";
|
|
@@ -7,7 +7,7 @@ import { renderFile, type TemplateContext } from "./templates.js";
|
|
|
7
7
|
/**
|
|
8
8
|
* Supported package managers for GTKX projects.
|
|
9
9
|
*/
|
|
10
|
-
|
|
10
|
+
type PackageManager = "pnpm" | "npm" | "yarn";
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Whether to include testing setup in GTKX projects.
|
|
@@ -19,7 +19,7 @@ export type TestingOption = "vitest" | "none";
|
|
|
19
19
|
*
|
|
20
20
|
* All options are optional; missing values will be prompted interactively.
|
|
21
21
|
*/
|
|
22
|
-
|
|
22
|
+
type CreateOptions = {
|
|
23
23
|
name?: string;
|
|
24
24
|
appId?: string;
|
|
25
25
|
packageManager?: PackageManager;
|
|
@@ -248,6 +248,13 @@ const installDependencies = async (
|
|
|
248
248
|
}
|
|
249
249
|
};
|
|
250
250
|
|
|
251
|
+
const initializeGitRepo = (projectPath: string): void => {
|
|
252
|
+
const opts = { cwd: projectPath, stdio: "pipe" as const };
|
|
253
|
+
execFileSync("git", ["init"], opts);
|
|
254
|
+
execFileSync("git", ["add", "-A"], opts);
|
|
255
|
+
execFileSync("git", ["commit", "-m", "Initial commit"], opts);
|
|
256
|
+
};
|
|
257
|
+
|
|
251
258
|
const printNextSteps = (name: string, packageManager: PackageManager, testing: TestingOption): void => {
|
|
252
259
|
const runCmd = getRunCommand(packageManager);
|
|
253
260
|
const nextSteps = `cd ${name}\n${runCmd}`;
|
|
@@ -306,5 +313,14 @@ export const createApp = async (options: CreateOptions = {}): Promise<void> => {
|
|
|
306
313
|
const devDeps = getDevDependencies(resolved.testing);
|
|
307
314
|
await installDependencies(projectPath, resolved.name, resolved.packageManager, devDeps);
|
|
308
315
|
|
|
316
|
+
const gitSpinner = p.spinner();
|
|
317
|
+
gitSpinner.start("Initializing git repository...");
|
|
318
|
+
try {
|
|
319
|
+
initializeGitRepo(projectPath);
|
|
320
|
+
gitSpinner.stop("Git repository initialized!");
|
|
321
|
+
} catch {
|
|
322
|
+
gitSpinner.stop("Failed to initialize git repository");
|
|
323
|
+
}
|
|
324
|
+
|
|
309
325
|
printNextSteps(resolved.name, resolved.packageManager, resolved.testing);
|
|
310
326
|
};
|
package/src/dev-server.tsx
CHANGED
|
@@ -3,6 +3,7 @@ import { setHotReloading, update } from "@gtkx/react";
|
|
|
3
3
|
import { createServer, type InlineConfig, type ViteDevServer } from "vite";
|
|
4
4
|
import { isReactRefreshBoundary, performRefresh } from "./refresh-runtime.js";
|
|
5
5
|
import { gtkxAssets } from "./vite-plugin-gtkx-assets.js";
|
|
6
|
+
import { gtkxGSettings } from "./vite-plugin-gtkx-gsettings.js";
|
|
6
7
|
import { gtkxRefresh } from "./vite-plugin-gtkx-refresh.js";
|
|
7
8
|
import { swcSsrRefresh } from "./vite-plugin-swc-ssr-refresh.js";
|
|
8
9
|
|
|
@@ -54,6 +55,7 @@ export const createDevServer = async (options: DevServerOptions): Promise<ViteDe
|
|
|
54
55
|
...viteConfig,
|
|
55
56
|
appType: "custom",
|
|
56
57
|
plugins: [
|
|
58
|
+
gtkxGSettings(),
|
|
57
59
|
gtkxAssets(),
|
|
58
60
|
swcSsrRefresh(),
|
|
59
61
|
gtkxRefresh(),
|
|
@@ -158,5 +160,3 @@ export const createDevServer = async (options: DevServerOptions): Promise<ViteDe
|
|
|
158
160
|
|
|
159
161
|
return server;
|
|
160
162
|
};
|
|
161
|
-
|
|
162
|
-
export type { ViteDevServer };
|
package/src/mcp-client.ts
CHANGED
|
@@ -43,7 +43,7 @@ const loadTestingModule = async (): Promise<TestingModule> => {
|
|
|
43
43
|
return testingModule;
|
|
44
44
|
} catch (cause) {
|
|
45
45
|
testingLoadError = new Error(
|
|
46
|
-
"@gtkx/testing is not installed
|
|
46
|
+
"@gtkx/testing is not installed, install it to enable MCP widget interactions: pnpm add -D @gtkx/testing",
|
|
47
47
|
{ cause },
|
|
48
48
|
);
|
|
49
49
|
throw testingLoadError;
|
|
@@ -241,13 +241,13 @@ class McpClient {
|
|
|
241
241
|
}
|
|
242
242
|
|
|
243
243
|
private send(message: IpcRequest | IpcResponse): void {
|
|
244
|
-
if (!this.socket
|
|
244
|
+
if (!this.socket?.writable) return;
|
|
245
245
|
this.socket.write(`${JSON.stringify(message)}\n`);
|
|
246
246
|
}
|
|
247
247
|
|
|
248
248
|
private sendRequest(method: IpcMethod, params?: unknown): Promise<unknown> {
|
|
249
249
|
return new Promise((resolve, reject) => {
|
|
250
|
-
if (!this.socket
|
|
250
|
+
if (!this.socket?.writable) {
|
|
251
251
|
reject(new Error("Socket not connected"));
|
|
252
252
|
return;
|
|
253
253
|
}
|
|
@@ -377,8 +377,8 @@ class McpClient {
|
|
|
377
377
|
case "text":
|
|
378
378
|
widgets = await testing.findAllByText(app, String(p.value), p.options);
|
|
379
379
|
break;
|
|
380
|
-
case "
|
|
381
|
-
widgets = await testing.
|
|
380
|
+
case "name":
|
|
381
|
+
widgets = await testing.findAllByName(app, String(p.value), p.options);
|
|
382
382
|
break;
|
|
383
383
|
case "labelText":
|
|
384
384
|
widgets = await testing.findAllByLabelText(app, String(p.value), p.options);
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { execFileSync } from "node:child_process";
|
|
2
|
+
import { copyFileSync, mkdtempSync, readFileSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { basename, join } from "node:path";
|
|
5
|
+
import type { Plugin } from "vite";
|
|
6
|
+
|
|
7
|
+
const SCHEMA_RE = /\.gschema\.xml$/;
|
|
8
|
+
const SCHEMA_ID_RE = /<schema\s+id="([^"]+)"/g;
|
|
9
|
+
const VIRTUAL_PREFIX = "\0gtkx-gsettings:";
|
|
10
|
+
const VIRTUAL_INIT = "\0gtkx-gsettings-init";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Vite plugin that compiles GSettings schemas when imported.
|
|
14
|
+
*
|
|
15
|
+
* Intercepts imports of `.gschema.xml` files. The import's default export
|
|
16
|
+
* is the schema ID extracted from the XML, so downstream code can use it
|
|
17
|
+
* directly with `useSetting`. When the file contains multiple `<schema>`
|
|
18
|
+
* elements, each ID is also available as a named export (with dots
|
|
19
|
+
* replaced by underscores).
|
|
20
|
+
*
|
|
21
|
+
* **Dev mode:** Copies the schema to a temporary directory, runs
|
|
22
|
+
* `glib-compile-schemas`, and sets `GSETTINGS_SCHEMA_DIR` so
|
|
23
|
+
* `Gio.Settings` can find the compiled result. Schema file changes
|
|
24
|
+
* trigger recompilation via HMR.
|
|
25
|
+
*
|
|
26
|
+
* **Build mode:** All imported schemas are compiled together at build time
|
|
27
|
+
* into a single `gschemas.compiled` asset emitted next to the bundle. At
|
|
28
|
+
* runtime a shared init module sets `GSETTINGS_SCHEMA_DIR` to the
|
|
29
|
+
* bundle's directory once, regardless of how many schemas are imported.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```ts
|
|
33
|
+
* import schemaId from "./com.example.myapp.gschema.xml";
|
|
34
|
+
* const [value, setValue] = useSetting(schemaId, "my-key", "string");
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export function gtkxGSettings(): Plugin {
|
|
38
|
+
let schemaDir: string | null = null;
|
|
39
|
+
let isBuild = false;
|
|
40
|
+
const trackedSchemas = new Map<string, string>();
|
|
41
|
+
const buildSchemas = new Map<string, string>();
|
|
42
|
+
|
|
43
|
+
const ensureSchemaDir = (): string => {
|
|
44
|
+
if (!schemaDir) {
|
|
45
|
+
schemaDir = mkdtempSync(join(tmpdir(), "gtkx-schemas-"));
|
|
46
|
+
}
|
|
47
|
+
return schemaDir;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
const compile = (): void => {
|
|
51
|
+
if (!schemaDir) return;
|
|
52
|
+
execFileSync("glib-compile-schemas", [schemaDir]);
|
|
53
|
+
|
|
54
|
+
const existing = process.env.GSETTINGS_SCHEMA_DIR;
|
|
55
|
+
process.env.GSETTINGS_SCHEMA_DIR = existing ? `${schemaDir}:${existing}` : schemaDir;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
return {
|
|
59
|
+
name: "gtkx:gsettings",
|
|
60
|
+
enforce: "pre",
|
|
61
|
+
|
|
62
|
+
configResolved(config) {
|
|
63
|
+
isBuild = config.command === "build";
|
|
64
|
+
},
|
|
65
|
+
|
|
66
|
+
async resolveId(source, importer, options) {
|
|
67
|
+
if (source === VIRTUAL_INIT) return VIRTUAL_INIT;
|
|
68
|
+
if (!SCHEMA_RE.test(source)) return;
|
|
69
|
+
|
|
70
|
+
const resolved = await this.resolve(source, importer, {
|
|
71
|
+
...options,
|
|
72
|
+
skipSelf: true,
|
|
73
|
+
});
|
|
74
|
+
if (!resolved || resolved.external) return;
|
|
75
|
+
|
|
76
|
+
return VIRTUAL_PREFIX + resolved.id;
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
load(id) {
|
|
80
|
+
if (id === VIRTUAL_INIT) {
|
|
81
|
+
return [
|
|
82
|
+
`import { dirname } from "node:path";`,
|
|
83
|
+
`import { fileURLToPath } from "node:url";`,
|
|
84
|
+
``,
|
|
85
|
+
`const bundleDir = dirname(fileURLToPath(import.meta.url));`,
|
|
86
|
+
`const existing = process.env.GSETTINGS_SCHEMA_DIR;`,
|
|
87
|
+
`process.env.GSETTINGS_SCHEMA_DIR = existing ? bundleDir + ":" + existing : bundleDir;`,
|
|
88
|
+
].join("\n");
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (!id.startsWith(VIRTUAL_PREFIX)) return;
|
|
92
|
+
|
|
93
|
+
const filePath = id.slice(VIRTUAL_PREFIX.length);
|
|
94
|
+
const xml = readFileSync(filePath, "utf-8");
|
|
95
|
+
const fileName = basename(filePath);
|
|
96
|
+
|
|
97
|
+
if (isBuild) {
|
|
98
|
+
buildSchemas.set(filePath, fileName);
|
|
99
|
+
console.log(`[gtkx] Queued GSettings schema: ${fileName}`);
|
|
100
|
+
} else {
|
|
101
|
+
trackedSchemas.set(filePath, id);
|
|
102
|
+
|
|
103
|
+
const dir = ensureSchemaDir();
|
|
104
|
+
copyFileSync(filePath, join(dir, fileName));
|
|
105
|
+
compile();
|
|
106
|
+
|
|
107
|
+
console.log(`[gtkx] Compiled GSettings schema: ${fileName}`);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
const schemaIds: string[] = [];
|
|
111
|
+
for (const match of xml.matchAll(SCHEMA_ID_RE)) {
|
|
112
|
+
schemaIds.push(match[1] as string);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
if (schemaIds.length === 0) {
|
|
116
|
+
this.error(`No <schema id="..."> found in ${fileName}`);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
const exports = [`export default ${JSON.stringify(schemaIds[0])};`];
|
|
120
|
+
for (const schemaId of schemaIds) {
|
|
121
|
+
const exportName = schemaId.replaceAll(".", "_");
|
|
122
|
+
exports.push(`export const ${exportName} = ${JSON.stringify(schemaId)};`);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
if (isBuild) {
|
|
126
|
+
return [`import ${JSON.stringify(VIRTUAL_INIT)};`, "", ...exports].join("\n");
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
return exports.join("\n");
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
buildEnd() {
|
|
133
|
+
if (!isBuild || buildSchemas.size === 0) return;
|
|
134
|
+
|
|
135
|
+
const dir = mkdtempSync(join(tmpdir(), "gtkx-schemas-build-"));
|
|
136
|
+
for (const [filePath, fileName] of buildSchemas) {
|
|
137
|
+
copyFileSync(filePath, join(dir, fileName));
|
|
138
|
+
}
|
|
139
|
+
execFileSync("glib-compile-schemas", [dir]);
|
|
140
|
+
|
|
141
|
+
const compiled = readFileSync(join(dir, "gschemas.compiled"));
|
|
142
|
+
this.emitFile({
|
|
143
|
+
type: "asset",
|
|
144
|
+
fileName: "gschemas.compiled",
|
|
145
|
+
source: compiled,
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
console.log(`[gtkx] Compiled ${buildSchemas.size} GSettings schema(s)`);
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
handleHotUpdate({ file, server }) {
|
|
152
|
+
const virtualId = trackedSchemas.get(file);
|
|
153
|
+
if (!virtualId) return;
|
|
154
|
+
|
|
155
|
+
const dir = ensureSchemaDir();
|
|
156
|
+
copyFileSync(file, join(dir, basename(file)));
|
|
157
|
+
compile();
|
|
158
|
+
|
|
159
|
+
console.log(`[gtkx] Recompiled GSettings schema: ${basename(file)}`);
|
|
160
|
+
|
|
161
|
+
const mod = server.moduleGraph.getModuleById(virtualId);
|
|
162
|
+
if (mod) {
|
|
163
|
+
server.moduleGraph.invalidateModule(mod);
|
|
164
|
+
return [mod];
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
};
|
|
168
|
+
}
|
|
@@ -32,11 +32,11 @@ export function gtkxNative(root: string): Plugin {
|
|
|
32
32
|
const packageName = `@gtkx/native-linux-${currentArch}`;
|
|
33
33
|
|
|
34
34
|
if (currentPlatform !== "linux") {
|
|
35
|
-
throw new Error(`Unsupported build platform: ${currentPlatform}
|
|
35
|
+
throw new Error(`Unsupported build platform: ${currentPlatform}, only Linux is supported`);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
if (currentArch !== "x64" && currentArch !== "arm64") {
|
|
39
|
-
throw new Error(`Unsupported build architecture: ${currentArch}
|
|
39
|
+
throw new Error(`Unsupported build architecture: ${currentArch}, only x64 and arm64 are supported`);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
nativeIndexPath = projectRequire.resolve("@gtkx/native");
|
|
@@ -705,23 +705,23 @@ Type constants for `dropTypes`: `Type.STRING`, `Type.INT`, `Type.DOUBLE`, `Type.
|
|
|
705
705
|
|
|
706
706
|
## Custom Drawing
|
|
707
707
|
|
|
708
|
-
Render custom graphics with `GtkDrawingArea` using the `
|
|
708
|
+
Render custom graphics with `GtkDrawingArea` using the `render` callback:
|
|
709
709
|
|
|
710
710
|
```tsx
|
|
711
711
|
import type { Context } from "@gtkx/ffi/cairo";
|
|
712
712
|
|
|
713
713
|
const Canvas = () => {
|
|
714
|
-
const handleDraw = (
|
|
714
|
+
const handleDraw = (cr: Context, width: number, height: number) => {
|
|
715
715
|
cr.setSourceRgb(0.2, 0.4, 0.8);
|
|
716
716
|
cr.rectangle(10, 10, width - 20, height - 20);
|
|
717
717
|
cr.fill();
|
|
718
718
|
};
|
|
719
719
|
|
|
720
|
-
return <GtkDrawingArea contentWidth={400} contentHeight={300}
|
|
720
|
+
return <GtkDrawingArea contentWidth={400} contentHeight={300} render={handleDraw} />;
|
|
721
721
|
};
|
|
722
722
|
```
|
|
723
723
|
|
|
724
|
-
|
|
724
|
+
Changing the `render` callback reference automatically queues a redraw. Add a `GtkGestureDrag` child for interactive drawing.
|
|
725
725
|
|
|
726
726
|
## Event Controllers
|
|
727
727
|
|