diff options
author | GeckoEidechse <40122905+GeckoEidechse@users.noreply.github.com> | 2023-02-05 15:53:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-05 15:53:34 +0100 |
commit | 802d7dfee77a3f58ee14a7ef6e2454e5aae62cbb (patch) | |
tree | 1c63107fafa7b535acd1a31a2e317e7535f85b62 /src-vue/src | |
parent | 24cabc6019e702ac888a33311532a9832863b572 (diff) | |
download | FlightCore-802d7dfee77a3f58ee14a7ef6e2454e5aae62cbb.tar.gz FlightCore-802d7dfee77a3f58ee14a7ef6e2454e5aae62cbb.zip |
feat: Auto-generate TS bindings (#140)
* feat: Initial trial to auto-generate TS bindings
That way instead of manually duplicating code, we can just run
`cargo test` to generate them.
* fix: Update forgotten imports
* refactor: Move FlightCoreVersion to autogen bind
TypeScript binding autogenerated from Rust code
* refactor: Move ReleaseInfo to autogen binding
TypeScript binding autogenerated from Rust code
* docs: Explain how to generate TS binds from Rust
* feat: Check for binding changes in CI
Checks for uncommitted binding changes in CI and fails if they differ
* style: Formatting fixes
Diffstat (limited to 'src-vue/src')
-rw-r--r-- | src-vue/src/components/ThunderstoreModCard.vue | 2 | ||||
-rw-r--r-- | src-vue/src/plugins/store.ts | 6 | ||||
-rw-r--r-- | src-vue/src/utils/FlightCoreVersion.d.ts | 5 | ||||
-rw-r--r-- | src-vue/src/utils/NorthstarMod.d.ts | 7 | ||||
-rw-r--r-- | src-vue/src/utils/ReleaseInfo.d.ts | 6 | ||||
-rw-r--r-- | src-vue/src/views/ChangelogView.vue | 2 | ||||
-rw-r--r-- | src-vue/src/views/mods/LocalModsView.vue | 2 |
7 files changed, 6 insertions, 24 deletions
diff --git a/src-vue/src/components/ThunderstoreModCard.vue b/src-vue/src/components/ThunderstoreModCard.vue index a202aa50..d125e9f5 100644 --- a/src-vue/src/components/ThunderstoreModCard.vue +++ b/src-vue/src/components/ThunderstoreModCard.vue @@ -70,7 +70,7 @@ import {ThunderstoreMod} from "../utils/thunderstore/ThunderstoreMod"; import {ThunderstoreModVersion} from "../utils/thunderstore/ThunderstoreModVersion"; import {invoke, shell} from "@tauri-apps/api"; import {ThunderstoreModStatus} from "../utils/thunderstore/ThunderstoreModStatus"; -import {NorthstarMod} from "../utils/NorthstarMod"; +import {NorthstarMod} from "../../../src-tauri/bindings/NorthstarMod"; import {GameInstall} from "../utils/GameInstall"; import {ElNotification} from "element-plus"; import { NorthstarState } from "../utils/NorthstarState"; diff --git a/src-vue/src/plugins/store.ts b/src-vue/src/plugins/store.ts index 2eae843a..d4371fb8 100644 --- a/src-vue/src/plugins/store.ts +++ b/src-vue/src/plugins/store.ts @@ -5,16 +5,16 @@ import { InstallType } from "../utils/InstallType"; import { invoke } from "@tauri-apps/api"; import { GameInstall } from "../utils/GameInstall"; import { ReleaseCanal } from "../utils/ReleaseCanal"; -import { FlightCoreVersion } from "../utils/FlightCoreVersion"; +import { FlightCoreVersion } from "../../../src-tauri/bindings/FlightCoreVersion"; import { ElNotification, NotificationHandle } from 'element-plus'; import { NorthstarState } from '../utils/NorthstarState'; import { appDir } from '@tauri-apps/api/path'; import { open } from '@tauri-apps/api/dialog'; import { Store } from 'tauri-plugin-store-api'; import { router } from "../main"; -import ReleaseInfo from "../utils/ReleaseInfo"; +import { ReleaseInfo } from "../../../src-tauri/bindings/ReleaseInfo"; import { ThunderstoreMod } from '../utils/thunderstore/ThunderstoreMod'; -import { NorthstarMod } from "../utils/NorthstarMod"; +import { NorthstarMod } from "../../../src-tauri/bindings/NorthstarMod"; import { searchModule } from './modules/search'; const persistentStore = new Store('flight-core-settings.json'); diff --git a/src-vue/src/utils/FlightCoreVersion.d.ts b/src-vue/src/utils/FlightCoreVersion.d.ts deleted file mode 100644 index 2516bf25..00000000 --- a/src-vue/src/utils/FlightCoreVersion.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -// derived from release_notes.rs -export interface FlightCoreVersion { - tag_name: string, - published_at: string, -} diff --git a/src-vue/src/utils/NorthstarMod.d.ts b/src-vue/src/utils/NorthstarMod.d.ts deleted file mode 100644 index 5e119683..00000000 --- a/src-vue/src/utils/NorthstarMod.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -// Matches Rust struct (in lib.rs). -export interface NorthstarMod { - name: string, - thunderstore_mod_string?: string, - enabled: bool, - directory: string, -} diff --git a/src-vue/src/utils/ReleaseInfo.d.ts b/src-vue/src/utils/ReleaseInfo.d.ts deleted file mode 100644 index 162f7917..00000000 --- a/src-vue/src/utils/ReleaseInfo.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -// Matches Rust struct (in release_notes mod). -export default interface ReleaseInfo { - name: string; - published_at: string; - body: string; -} diff --git a/src-vue/src/views/ChangelogView.vue b/src-vue/src/views/ChangelogView.vue index b9b91568..9335220e 100644 --- a/src-vue/src/views/ChangelogView.vue +++ b/src-vue/src/views/ChangelogView.vue @@ -23,7 +23,7 @@ <script lang="ts"> import { defineComponent } from 'vue'; -import ReleaseInfo from '../utils/ReleaseInfo'; +import { ReleaseInfo } from "../../../src-tauri/bindings/ReleaseInfo"; import { marked } from "marked"; diff --git a/src-vue/src/views/mods/LocalModsView.vue b/src-vue/src/views/mods/LocalModsView.vue index 470ab4f7..6e2d4be0 100644 --- a/src-vue/src/views/mods/LocalModsView.vue +++ b/src-vue/src/views/mods/LocalModsView.vue @@ -24,7 +24,7 @@ import { invoke } from '@tauri-apps/api'; import { ElNotification } from 'element-plus'; import { defineComponent } from 'vue'; import { GameInstall } from '../../utils/GameInstall'; -import { NorthstarMod } from '../../utils/NorthstarMod'; +import { NorthstarMod } from "../../../../src-tauri/bindings/NorthstarMod"; export default defineComponent({ name: 'LocalModsView', |