diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 670fecb..b2ab47d 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,13 +9,14 @@ jobs: build-and-release: strategy: matrix: - os: [ - # macos-latest, + os: + [ + macos-latest, macos-26-intel, ubuntu-latest, - # ubuntu-24.04-arm, + ubuntu-24.04-arm, windows-latest, - # windows-11-arm, + windows-11-arm, ] runs-on: ${{ matrix.os }} diff --git a/.oxfmtrc.json b/.oxfmtrc.json index c7ea818..b417b96 100644 --- a/.oxfmtrc.json +++ b/.oxfmtrc.json @@ -1,6 +1,6 @@ { "$schema": "./node_modules/oxfmt/configuration_schema.json", - "ignorePatterns": ["src/mainview/routeTree.gen.ts", "electrobun.config.ts"], + "ignorePatterns": ["src/mainview/routeTree.gen.ts"], "sortImports": { "newlinesBetween": false }, diff --git a/electrobun.config.ts b/electrobun.config.ts index 8a2b6bc..8a48e0d 100644 --- a/electrobun.config.ts +++ b/electrobun.config.ts @@ -1,10 +1,11 @@ import type { ElectrobunConfig } from "electrobun"; +import packageJson from "./package.json"; export default { app: { identifier: "lovelesscodes.storyforge.dev", name: "Story Forge", - version: "0.0.1", + version: packageJson.version, description: "A VintageStory mod manager built with Bun and React", urlSchemes: ["storyforge", "storyforge-dev"], }, @@ -12,24 +13,22 @@ export default { exitOnLastWindowClosed: true, }, release: { - baseUrl: "https://github.com/StoryForgeApp/storyforge/releases/latest/download" + baseUrl: "https://github.com/StoryForgeApp/storyforge/releases/latest/download", }, build: { - // Vite builds to dist/, we copy from there copy: { "dist/assets": "views/mainview/assets", "dist/index.html": "views/mainview/index.html", }, linux: { - bundleCEF: process.env.NODE_ENV === "production", + bundleCEF: false, icon: "icon.iconset/icon_512x512.png", }, mac: { bundleCEF: false, icons: "icon.iconset", }, - // Ignore Vite output in watch mode — HMR handles view rebuilds separately - // @ts-expect-error ElectrobunConfig doesn't have watchIgnore yet, but it should be added to avoid unnecessary restarts during development + // @ts-expect-error - watchIgnore is not in the type definition but is in the docs watchIgnore: ["dist/**"], win: { bundleCEF: false, diff --git a/src/shared/rpc.ts b/src/shared/rpc.ts index fd27d9c..a00d697 100644 --- a/src/shared/rpc.ts +++ b/src/shared/rpc.ts @@ -7,6 +7,12 @@ import { UtilsController } from "@/bun/controllers/utils"; import { VersionController } from "@/bun/controllers/versions"; import { WorldsController } from "@/bun/controllers/worlds"; +type MessagesType = ServerController["messages"] & + ModController["messages"] & + VersionController["messages"] & + LogController["messages"] & + UtilsController["messages"]; + // src/shared/types.ts export type StoryForgeRPCType = { // functions that execute in the main process @@ -27,18 +33,10 @@ export type StoryForgeRPCType = { response: boolean; }; }; - messages: ServerController["messages"] & - ModController["messages"] & - VersionController["messages"] & - LogController["messages"] & - UtilsController["messages"]; + messages: MessagesType; }; // functions that execute in the browser context webview: RPCSchema<{ - messages: VersionController["messages"] & - ModController["messages"] & - InstallationController["messages"] & - LogController["messages"] & - UtilsController["messages"]; + messages: MessagesType; }>; };