Promotes the skeleton to a real WASM plugin component. The 22 KiB stripped artefact at target/wasm32-wasip2/release/studio_theme_solarized.wasm is the proof-of-contract for fai-studio-plugin-sdk v0.1. Implements: - theme::Guest::theme_for(brightness) returning the pinned Solarized Light/Dark palettes (14 ARGB tokens each). Brightness names other than "light"/"dark" return PluginError::Declined. - translate::Guest + output_view::Guest as Declined-only stubs — v0.1 of the SDK requires all three hooks per plugin; v0.2 will split the WIT. Cargo.toml pins edition 2021 (matches SDK; wit-bindgen 0.36 codegen does not yet support edition 2024). Signed-off-by: flemming-it <sf@flemming.it>
37 lines
1 KiB
TOML
37 lines
1 KiB
TOML
# Standalone Cargo.toml — targets wasm32-wasip2.
|
|
#
|
|
# Build:
|
|
# cargo build --release --target wasm32-wasip2
|
|
#
|
|
# Output: target/wasm32-wasip2/release/studio_theme_solarized.wasm
|
|
|
|
[package]
|
|
name = "studio_theme_solarized"
|
|
version = "0.1.0"
|
|
# Track the SDK's edition — wit-bindgen 0.36 codegen does not
|
|
# yet support edition 2024.
|
|
edition = "2021"
|
|
authors = ["Dr. Stefan Flemming <platform@flemming.ai>"]
|
|
license = "Apache-2.0"
|
|
publish = false
|
|
description = "F∆I Studio plugin — Solarized Light and Dark theme"
|
|
repository = "https://git.flemming.ai/fai-modules/studio-theme-solarized"
|
|
rust-version = "1.85"
|
|
|
|
[lib]
|
|
crate-type = ["cdylib"]
|
|
|
|
[dependencies]
|
|
# The SDK lives in fai/fai_studio_plugin_sdk during bootstrap;
|
|
# in production this will be a git dependency pointing at
|
|
# https://git.flemming.ai/fai/studio-plugin-sdk.
|
|
fai-studio-plugin-sdk = { path = "../../fai_studio_plugin_sdk" }
|
|
|
|
[package.metadata.component]
|
|
package = "fai:studio-plugin"
|
|
|
|
[profile.release]
|
|
opt-level = "s"
|
|
lto = true
|
|
codegen-units = 1
|
|
strip = true
|