Files
sexy.pivoine.art/packages/frontend/vite.config.ts
Sebastian Krüger 6ea4ed1933
All checks were successful
Build and Push Docker Image to Gitea / build-and-push (push) Successful in 7m30s
feat: upgrade buttplug package to protocol v4 and WASM v10
Upgrade the buttplug TypeScript client from class-based v3 protocol to
interface-based v4 protocol, and the Rust/WASM server from the monolithic
buttplug 9.0.9 crate to the split buttplug_core/buttplug_server/
buttplug_server_device_config 10.0.0 crates.

TypeScript changes:
- Messages are now plain interfaces with msgId()/setMsgId() helpers
- ActuatorType → OutputType, SensorType → InputType
- ScalarCmd/RotateCmd/LinearCmd → OutputCmd, SensorReadCmd → InputCmd
- Client.ts → ButtplugClient.ts, new DeviceCommand/DeviceFeature files
- Devices getter returns Map instead of array
- Removed class-transformer/reflect-metadata dependencies

Rust/WASM changes:
- Split imports across buttplug_core, buttplug_server, buttplug_server_device_config
- Removed ButtplugServerDowngradeWrapper (use ButtplugServer directly)
- Replaced ButtplugFuture/ButtplugFutureStateShared with tokio::sync::oneshot
- Updated Hardware::new for new 6-arg signature
- Uses git fork (valknarthing/buttplug) to fix missing wasm deps in buttplug_core

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 14:46:47 +01:00

32 lines
665 B
TypeScript

import path from "path";
import tailwindcss from "@tailwindcss/vite";
import { defineConfig } from "vite";
import { sveltekit } from "@sveltejs/kit/vite";
export default defineConfig({
plugins: [sveltekit(), tailwindcss()],
resolve: {
alias: { $lib: path.resolve("./src/lib"), "@": path.resolve("./src/lib") },
},
ssr: {
noExternal: ["@sexy.pivoine.art/buttplug"],
},
build: {
rollupOptions: {
external: [/\/wasm\/index\.js/],
},
},
server: {
port: 3000,
proxy: {
"/api": {
rewrite: (path) => path.replace(/^\/api/, ""),
target: "http://localhost:8055",
changeOrigin: true,
secure: false,
ws: true,
},
},
},
});