@gtkx/cli 2.0.0-beta.2 → 2.0.0-beta.4
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/cli.d.ts +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +12 -2
- package/dist/cli.js.map +1 -1
- package/dist/codegen/config-dependencies.d.ts +3 -0
- package/dist/codegen/config-dependencies.d.ts.map +1 -0
- package/dist/codegen/config-dependencies.js +355 -0
- package/dist/codegen/config-dependencies.js.map +1 -0
- package/dist/codegen/reference.d.ts.map +1 -1
- package/dist/codegen/reference.js +1 -0
- package/dist/codegen/reference.js.map +1 -1
- package/dist/codegen/run-codegen.d.ts +3 -2
- package/dist/codegen/run-codegen.d.ts.map +1 -1
- package/dist/codegen/run-codegen.js +33 -14
- package/dist/codegen/run-codegen.js.map +1 -1
- package/dist/codegen/store-resolver.d.ts +2 -0
- package/dist/codegen/store-resolver.d.ts.map +1 -1
- package/dist/codegen/store-resolver.js +6 -3
- package/dist/codegen/store-resolver.js.map +1 -1
- package/dist/commands/cleanup.d.ts +9 -0
- package/dist/commands/cleanup.d.ts.map +1 -0
- package/dist/commands/cleanup.js +31 -0
- package/dist/commands/cleanup.js.map +1 -0
- package/dist/commands/dev.d.ts +1 -0
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +13 -4
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/docs.d.ts.map +1 -1
- package/dist/commands/docs.js +1 -0
- package/dist/commands/docs.js.map +1 -1
- package/dist/deploy/freedesktop/validate.d.ts.map +1 -1
- package/dist/deploy/freedesktop/validate.js +11 -4
- package/dist/deploy/freedesktop/validate.js.map +1 -1
- package/dist/deploy/nfpm/config.d.ts +3 -2
- package/dist/deploy/nfpm/config.d.ts.map +1 -1
- package/dist/deploy/nfpm/config.js +3 -3
- package/dist/deploy/nfpm/config.js.map +1 -1
- package/dist/deploy/node-runtime/index.d.ts.map +1 -1
- package/dist/deploy/node-runtime/index.js +2 -1
- package/dist/deploy/node-runtime/index.js.map +1 -1
- package/dist/deploy/payload/stage.d.ts.map +1 -1
- package/dist/deploy/payload/stage.js +24 -3
- package/dist/deploy/payload/stage.js.map +1 -1
- package/dist/deploy/settings/extra-files.d.ts.map +1 -1
- package/dist/deploy/settings/extra-files.js +4 -3
- package/dist/deploy/settings/extra-files.js.map +1 -1
- package/dist/deploy/targets/nfpm-target.d.ts.map +1 -1
- package/dist/deploy/targets/nfpm-target.js +12 -7
- package/dist/deploy/targets/nfpm-target.js.map +1 -1
- package/dist/dev/entry-env.d.ts +2 -1
- package/dist/dev/entry-env.d.ts.map +1 -1
- package/dist/dev/entry-env.js +2 -1
- package/dist/dev/entry-env.js.map +1 -1
- package/dist/dev/runner-deps.d.ts +1 -1
- package/dist/dev/runner-deps.d.ts.map +1 -1
- package/dist/dev/runner-deps.js +3 -3
- package/dist/dev/runner-deps.js.map +1 -1
- package/dist/dev/runner-main.d.ts.map +1 -1
- package/dist/dev/runner-main.js +8 -3
- package/dist/dev/runner-main.js.map +1 -1
- package/dist/dev/supervisor.d.ts +3 -1
- package/dist/dev/supervisor.d.ts.map +1 -1
- package/dist/dev/supervisor.js +124 -27
- package/dist/dev/supervisor.js.map +1 -1
- package/dist/i18n/catalogs.d.ts.map +1 -1
- package/dist/i18n/catalogs.js +1 -0
- package/dist/i18n/catalogs.js.map +1 -1
- package/dist/i18n/source-messages.d.ts +3 -1
- package/dist/i18n/source-messages.d.ts.map +1 -1
- package/dist/i18n/source-messages.js +167 -37
- package/dist/i18n/source-messages.js.map +1 -1
- package/dist/internal/build-output.d.ts.map +1 -1
- package/dist/internal/build-output.js +53 -6
- package/dist/internal/build-output.js.map +1 -1
- package/dist/internal/docs-elements.d.ts +1 -0
- package/dist/internal/docs-elements.d.ts.map +1 -1
- package/dist/internal/docs-elements.js +5 -4
- package/dist/internal/docs-elements.js.map +1 -1
- package/dist/internal/errors.d.ts +2 -1
- package/dist/internal/errors.d.ts.map +1 -1
- package/dist/internal/errors.js +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/parent-process.d.ts +12 -0
- package/dist/internal/parent-process.d.ts.map +1 -0
- package/dist/internal/parent-process.js +74 -0
- package/dist/internal/parent-process.js.map +1 -0
- package/dist/internal/prepare-project.d.ts +1 -0
- package/dist/internal/prepare-project.d.ts.map +1 -1
- package/dist/internal/prepare-project.js +8 -2
- package/dist/internal/prepare-project.js.map +1 -1
- package/dist/vite-plugins/ensure-store.d.ts +1 -1
- package/dist/vite-plugins/ensure-store.d.ts.map +1 -1
- package/dist/vite-plugins/ensure-store.js +2 -2
- package/dist/vite-plugins/ensure-store.js.map +1 -1
- package/dist/vite-plugins/i18n.d.ts +1 -1
- package/dist/vite-plugins/i18n.d.ts.map +1 -1
- package/dist/vite-plugins/i18n.js +24 -11
- package/dist/vite-plugins/i18n.js.map +1 -1
- package/dist/vite-plugins/index.d.ts.map +1 -1
- package/dist/vite-plugins/index.js +3 -1
- package/dist/vite-plugins/index.js.map +1 -1
- package/dist/vite-plugins/native.d.ts.map +1 -1
- package/dist/vite-plugins/native.js +0 -4
- package/dist/vite-plugins/native.js.map +1 -1
- package/dist/vite-plugins/settings-worker-env.d.ts +1 -1
- package/dist/vite-plugins/settings-worker-env.d.ts.map +1 -1
- package/dist/vite-plugins/settings-worker-env.js +2 -2
- package/dist/vite-plugins/settings-worker-env.js.map +1 -1
- package/dist/vitest-plugin.d.ts +2 -1
- package/dist/vitest-plugin.d.ts.map +1 -1
- package/dist/vitest-plugin.js +6 -6
- package/dist/vitest-plugin.js.map +1 -1
- package/package.json +12 -9
- package/src/cli.ts +12 -2
- package/src/codegen/config-dependencies.ts +470 -0
- package/src/codegen/reference.ts +1 -0
- package/src/codegen/run-codegen.ts +39 -17
- package/src/codegen/store-resolver.ts +8 -3
- package/src/commands/cleanup.ts +36 -0
- package/src/commands/dev.ts +26 -4
- package/src/commands/docs.ts +1 -0
- package/src/deploy/freedesktop/validate.ts +13 -4
- package/src/deploy/nfpm/config.ts +9 -3
- package/src/deploy/node-runtime/index.ts +2 -1
- package/src/deploy/payload/stage.ts +42 -3
- package/src/deploy/settings/extra-files.ts +5 -3
- package/src/deploy/targets/nfpm-target.ts +13 -6
- package/src/dev/entry-env.ts +2 -1
- package/src/dev/runner-deps.ts +3 -3
- package/src/dev/runner-main.ts +10 -3
- package/src/dev/supervisor.ts +164 -30
- package/src/i18n/catalogs.ts +1 -0
- package/src/i18n/source-messages.ts +240 -41
- package/src/internal/build-output.ts +79 -7
- package/src/internal/docs-elements.ts +10 -4
- package/src/internal/errors.ts +1 -1
- package/src/internal/parent-process.ts +110 -0
- package/src/internal/prepare-project.ts +9 -3
- package/src/vite-plugins/ensure-store.ts +2 -2
- package/src/vite-plugins/i18n.ts +30 -14
- package/src/vite-plugins/index.ts +8 -1
- package/src/vite-plugins/native.ts +0 -5
- package/src/vite-plugins/settings-worker-env.ts +2 -2
- package/src/vitest-plugin.ts +6 -6
|
@@ -3,7 +3,6 @@ import { createRequire } from "node:module";
|
|
|
3
3
|
import { arch, platform } from "node:os";
|
|
4
4
|
import { dirname, join } from "node:path";
|
|
5
5
|
import { stripQuery } from "./strip-query.js";
|
|
6
|
-
const EMITTED_BINDING_SPECIFIER = "./gtkx.node";
|
|
7
6
|
const BINDING_FILENAME = "gtkx.node";
|
|
8
7
|
function resolveBinaryPath(projectRequire, currentArch) {
|
|
9
8
|
const nativeRoot = dirname(projectRequire.resolve("@gtkx/native/package.json"));
|
|
@@ -69,9 +68,6 @@ function gtkxNative(root) {
|
|
|
69
68
|
source: resolvePlatformBinary(projectRequire),
|
|
70
69
|
});
|
|
71
70
|
},
|
|
72
|
-
resolveId(id) {
|
|
73
|
-
return id === EMITTED_BINDING_SPECIFIER ? { id, external: true } : null;
|
|
74
|
-
},
|
|
75
71
|
transform(code, id) {
|
|
76
72
|
return transformLoader(code, id, loaderPath(), bindingReferenceId);
|
|
77
73
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/vite-plugins/native.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,
|
|
1
|
+
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/vite-plugins/native.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Plugin } from \"vite\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport { arch, platform } from \"node:os\";\nimport { dirname, join } from \"node:path\";\nimport { stripQuery } from \"./strip-query.js\";\n\nconst BINDING_FILENAME = \"gtkx.node\";\n\nfunction resolveBinaryPath(projectRequire: ReturnType<typeof createRequire>, currentArch: string): string {\n const nativeRoot = dirname(projectRequire.resolve(\"@gtkx/native/package.json\"));\n const localBinary = join(nativeRoot, `native.linux-${currentArch}-gnu.node`);\n\n return existsSync(localBinary) ? localBinary : projectRequire.resolve(`@gtkx/native-linux-${currentArch}-gnu`);\n}\n\nfunction resolvePlatformBinary(projectRequire: ReturnType<typeof createRequire>): Buffer {\n const currentPlatform = platform();\n\n if (currentPlatform !== \"linux\") {\n throw new Error(`Unsupported build platform: ${currentPlatform}, only Linux is supported`);\n }\n\n const currentArch = arch();\n\n if (currentArch !== \"x64\" && currentArch !== \"arm64\") {\n throw new Error(`Unsupported build architecture: ${currentArch}, only x64 and arm64 are supported`);\n }\n\n return readFileSync(resolveBinaryPath(projectRequire, currentArch));\n}\n\nfunction rewriteLoader(code: string, bindingReferenceId: string): string {\n const idents: string[] = [];\n\n for (const match of code.matchAll(/export\\s*\\{\\s*([A-Za-z0-9_$]+)\\s*\\}/g)) {\n const ident = match[1];\n\n if (ident) {\n idents.push(ident);\n }\n }\n\n const bindings = idents.join(\", \");\n\n return [\n \"import { createRequire as __gtkxCreateRequire } from \\\"node:module\\\";\",\n \"import { fileURLToPath as __gtkxFileURLToPath } from \\\"node:url\\\";\",\n `const __gtkxNativeLocation = import.meta.ROLLUP_FILE_URL_${bindingReferenceId};`,\n \"const __gtkxNativePath = __gtkxNativeLocation.startsWith(\\\"file:\\\") \" +\n \"? __gtkxFileURLToPath(__gtkxNativeLocation) : __gtkxNativeLocation;\",\n \"const __gtkxNative = __gtkxCreateRequire(import.meta.url)(__gtkxNativePath);\",\n `const { ${bindings} } = __gtkxNative;`,\n `export { ${bindings} };`,\n ].join(\"\\n\");\n}\n\nconst transformLoader = (\n code: string,\n id: string,\n loaderPath: string,\n bindingReferenceId: string | null,\n): string | null => {\n if (stripQuery(id) !== loaderPath) {\n return null;\n }\n\n if (bindingReferenceId === null) {\n throw new Error(\"Cannot render the native loader before its binary has been emitted\");\n }\n\n return rewriteLoader(code, bindingReferenceId);\n};\n\nfunction gtkxNative(root: string): Plugin {\n const projectRequire = createRequire(join(root, \"package.json\"));\n let cachedLoaderPath: string | undefined;\n let bindingReferenceId: string | null = null;\n\n const loaderPath = (): string => {\n cachedLoaderPath ??= join(dirname(projectRequire.resolve(\"@gtkx/native/package.json\")), \"index.js\");\n\n return cachedLoaderPath;\n };\n\n return {\n name: \"gtkx:native\",\n enforce: \"pre\",\n apply: \"build\",\n\n buildStart() {\n bindingReferenceId = this.emitFile({\n type: \"asset\",\n fileName: BINDING_FILENAME,\n source: resolvePlatformBinary(projectRequire),\n });\n },\n\n transform(code, id) {\n return transformLoader(code, id, loaderPath(), bindingReferenceId);\n },\n };\n}\n\nexport { gtkxNative };\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-worker-env.d.ts","sourceRoot":"","sources":["../../src/vite-plugins/settings-worker-env.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5C,iBAAS,qBAAqB,
|
|
1
|
+
{"version":3,"file":"settings-worker-env.d.ts","sourceRoot":"","sources":["../../src/vite-plugins/settings-worker-env.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5C,iBAAS,qBAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAwB1D;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createConfigLoader } from "@gtkx/config/internal";
|
|
2
2
|
import { prependSchemaDir, stageAndCompileProjectSchemas } from "../settings/schema.js";
|
|
3
|
-
function gtkxSettingsWorkerEnv() {
|
|
4
|
-
const loadConfig = createConfigLoader();
|
|
3
|
+
function gtkxSettingsWorkerEnv(configFile) {
|
|
4
|
+
const loadConfig = createConfigLoader({ configFile });
|
|
5
5
|
return {
|
|
6
6
|
name: "gtkx:settings-worker-env",
|
|
7
7
|
enforce: "pre",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-worker-env.js","sourceRoot":"","sources":["../../src/vite-plugins/settings-worker-env.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAExF,SAAS,qBAAqB;
|
|
1
|
+
{"version":3,"file":"settings-worker-env.js","sourceRoot":"","sources":["../../src/vite-plugins/settings-worker-env.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAExF,SAAS,qBAAqB,CAAC,UAAmB;IAC9C,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IAEtD,OAAO;QACH,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,KAAK;QAEd,KAAK,CAAC,MAAM,CAAC,MAAkB;YAC3B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YACnE,MAAM,GAAG,GAAG,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEvD,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACf,OAAO;YACX,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC;YAEtC,OAAO;gBACH,IAAI,EAAE;oBACF,GAAG,EAAE,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE;iBACzF;aACJ,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC","sourcesContent":["import type { UserConfig } from \"vite\";\nimport type { Plugin } from \"vitest/config\";\nimport { createConfigLoader } from \"@gtkx/config/internal\";\nimport { prependSchemaDir, stageAndCompileProjectSchemas } from \"../settings/schema.js\";\n\nfunction gtkxSettingsWorkerEnv(configFile?: string): Plugin {\n const loadConfig = createConfigLoader({ configFile });\n\n return {\n name: \"gtkx:settings-worker-env\",\n enforce: \"pre\",\n\n async config(config: UserConfig) {\n const loaded = await loadConfig.load(config.root ?? process.cwd());\n const dir = stageAndCompileProjectSchemas(loaded.root);\n\n if (dir === null) {\n return;\n }\n\n process.env.GTKX_DEV_SCHEMA_DIR = dir;\n\n return {\n test: {\n env: { GSETTINGS_SCHEMA_DIR: prependSchemaDir(dir, process.env.GSETTINGS_SCHEMA_DIR) },\n },\n };\n },\n };\n}\n\nexport { gtkxSettingsWorkerEnv };\n"]}
|
package/dist/vitest-plugin.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Plugin } from "vite";
|
|
2
|
+
import { type PluginOptions } from "@gtkx/vitest";
|
|
2
3
|
/**
|
|
3
4
|
* Vite plugin stack for testing a GTKX application: the generated bindings the tests import,
|
|
4
5
|
* the plugins the app is built with, the project's compiled GSettings schemas exposed to every
|
|
@@ -6,6 +7,6 @@ import type { Plugin } from "vite";
|
|
|
6
7
|
*
|
|
7
8
|
* @returns The plugins to spread into a Vitest config.
|
|
8
9
|
*/
|
|
9
|
-
declare const gtkx: () => Plugin[];
|
|
10
|
+
declare const gtkx: (options?: PluginOptions) => Plugin[];
|
|
10
11
|
export default gtkx;
|
|
11
12
|
//# sourceMappingURL=vitest-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitest-plugin.d.ts","sourceRoot":"","sources":["../src/vitest-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"vitest-plugin.d.ts","sourceRoot":"","sources":["../src/vitest-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAK9D;;;;;;GAMG;AACH,QAAA,MAAM,IAAI,GAAI,UAAS,aAAkB,KAAG,MAAM,EAKjD,CAAC;AAEF,eAAe,IAAI,CAAC"}
|
package/dist/vitest-plugin.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import gtkxVitest from "@gtkx/vitest";
|
|
1
|
+
import gtkxVitest, {} from "@gtkx/vitest";
|
|
2
2
|
import { gtkxEnsureStore } from "./vite-plugins/ensure-store.js";
|
|
3
3
|
import { gtkxVitePlugins } from "./vite-plugins/index.js";
|
|
4
4
|
import { gtkxSettingsWorkerEnv } from "./vite-plugins/settings-worker-env.js";
|
|
@@ -9,11 +9,11 @@ import { gtkxSettingsWorkerEnv } from "./vite-plugins/settings-worker-env.js";
|
|
|
9
9
|
*
|
|
10
10
|
* @returns The plugins to spread into a Vitest config.
|
|
11
11
|
*/
|
|
12
|
-
const gtkx = () => [
|
|
13
|
-
gtkxEnsureStore(),
|
|
14
|
-
...gtkxVitePlugins(),
|
|
15
|
-
gtkxSettingsWorkerEnv(),
|
|
16
|
-
gtkxVitest(),
|
|
12
|
+
const gtkx = (options = {}) => [
|
|
13
|
+
gtkxEnsureStore(options.configFile),
|
|
14
|
+
...gtkxVitePlugins({ configFile: options.configFile }),
|
|
15
|
+
gtkxSettingsWorkerEnv(options.configFile),
|
|
16
|
+
gtkxVitest(options),
|
|
17
17
|
];
|
|
18
18
|
export default gtkx;
|
|
19
19
|
//# sourceMappingURL=vitest-plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitest-plugin.js","sourceRoot":"","sources":["../src/vitest-plugin.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"vitest-plugin.js","sourceRoot":"","sources":["../src/vitest-plugin.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,EAAE,EAAsB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,IAAI,GAAG,CAAC,UAAyB,EAAE,EAAY,EAAE,CAAC;IACpD,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC;IACnC,GAAG,eAAe,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IACtD,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC;IACzC,UAAU,CAAC,OAAO,CAAC;CACtB,CAAC;AAEF,eAAe,IAAI,CAAC","sourcesContent":["import type { Plugin } from \"vite\";\nimport gtkxVitest, { type PluginOptions } from \"@gtkx/vitest\";\nimport { gtkxEnsureStore } from \"./vite-plugins/ensure-store.js\";\nimport { gtkxVitePlugins } from \"./vite-plugins/index.js\";\nimport { gtkxSettingsWorkerEnv } from \"./vite-plugins/settings-worker-env.js\";\n\n/**\n * Vite plugin stack for testing a GTKX application: the generated bindings the tests import,\n * the plugins the app is built with, the project's compiled GSettings schemas exposed to every\n * test worker, and a headless display per worker.\n *\n * @returns The plugins to spread into a Vitest config.\n */\nconst gtkx = (options: PluginOptions = {}): Plugin[] => [\n gtkxEnsureStore(options.configFile),\n ...gtkxVitePlugins({ configFile: options.configFile }),\n gtkxSettingsWorkerEnv(options.configFile),\n gtkxVitest(options),\n];\n\nexport default gtkx;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gtkx/cli",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.4",
|
|
4
4
|
"description": "GTK app toolchain for React: scaffold, dev server, build, docs.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"gtkx",
|
|
@@ -70,26 +70,29 @@
|
|
|
70
70
|
"dependencies": {
|
|
71
71
|
"@babel/core": "^8.0.1",
|
|
72
72
|
"@babel/preset-typescript": "^8.0.1",
|
|
73
|
-
"@gtkx/codegen": "2.0.0-beta.
|
|
74
|
-
"@gtkx/config": "2.0.0-beta.
|
|
75
|
-
"@gtkx/mcp": "2.0.0-beta.
|
|
76
|
-
"@gtkx/
|
|
77
|
-
"@gtkx/
|
|
78
|
-
"@gtkx/
|
|
73
|
+
"@gtkx/codegen": "2.0.0-beta.4",
|
|
74
|
+
"@gtkx/config": "2.0.0-beta.4",
|
|
75
|
+
"@gtkx/mcp": "2.0.0-beta.4",
|
|
76
|
+
"@gtkx/native": "2.0.0-beta.4",
|
|
77
|
+
"@gtkx/runtime": "2.0.0-beta.4",
|
|
78
|
+
"@gtkx/utils": "2.0.0-beta.4",
|
|
79
|
+
"@gtkx/vitest": "2.0.0-beta.4",
|
|
79
80
|
"@swc/core": "^1.16.1",
|
|
80
81
|
"babel-plugin-react-compiler": "^1.0.0",
|
|
81
82
|
"citty": "^0.2.2",
|
|
82
|
-
"
|
|
83
|
+
"confbox": "^0.2.4",
|
|
84
|
+
"create-gtkx": "2.0.0-beta.4",
|
|
83
85
|
"fast-xml-builder": "^1.3.1",
|
|
84
86
|
"fast-xml-parser": "^5.11.1",
|
|
85
87
|
"hosted-git-info": "^10.1.1",
|
|
86
88
|
"i18next-cli": "1.72.1",
|
|
89
|
+
"jiti": "^2.7.0",
|
|
87
90
|
"react-refresh": "^0.18.0",
|
|
88
91
|
"vite": "^8.2.2",
|
|
89
92
|
"yaml": "^2.9.0"
|
|
90
93
|
},
|
|
91
94
|
"devDependencies": {
|
|
92
|
-
"@gtkx/testing": "2.0.0-beta.
|
|
95
|
+
"@gtkx/testing": "2.0.0-beta.4",
|
|
93
96
|
"@types/babel__core": "^7.20.5",
|
|
94
97
|
"@types/hosted-git-info": "^3.0.5",
|
|
95
98
|
"@types/react-refresh": "^0.14.7",
|
package/src/cli.ts
CHANGED
|
@@ -2,9 +2,14 @@ import { assertSupportedNodeVersion } from "@gtkx/config/internal";
|
|
|
2
2
|
import { defineCommand, runMain } from "citty";
|
|
3
3
|
import packageManifest from "../package.json" with { type: "json" };
|
|
4
4
|
import { splitApplicationArgs } from "./internal/application-args.js";
|
|
5
|
-
import { withErrorBoundary } from "./internal/errors.js";
|
|
5
|
+
import { printError, withErrorBoundary } from "./internal/errors.js";
|
|
6
|
+
import "./internal/parent-process.js";
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
try {
|
|
9
|
+
assertSupportedNodeVersion();
|
|
10
|
+
} catch (error) {
|
|
11
|
+
printError(error);
|
|
12
|
+
}
|
|
8
13
|
|
|
9
14
|
const version = packageManifest.version;
|
|
10
15
|
const { cliArgs } = splitApplicationArgs(process.argv.slice(2));
|
|
@@ -51,6 +56,11 @@ const main = defineCommand({
|
|
|
51
56
|
|
|
52
57
|
return withErrorBoundary(scaffoldCommand);
|
|
53
58
|
},
|
|
59
|
+
cleanup: async () => {
|
|
60
|
+
const { cleanup } = await import("./commands/cleanup.js");
|
|
61
|
+
|
|
62
|
+
return withErrorBoundary(cleanup);
|
|
63
|
+
},
|
|
54
64
|
},
|
|
55
65
|
});
|
|
56
66
|
|