diff --git a/color-module/Cargo.toml b/color-module/Cargo.toml index 963c0a2..5c79ae5 100644 --- a/color-module/Cargo.toml +++ b/color-module/Cargo.toml @@ -13,6 +13,7 @@ palette = { version = "0.7.6", features = ["serde"] } serde = { version = "1.0.216", features = ["derive"] } serde-wasm-bindgen = "0.6.5" serde_json = "1.0.134" +serde_repr = "0.1.19" strum = { version = "0.26.3", features = ["derive", "strum_macros"] } strum_macros = "0.26.4" thiserror = "2.0.9" diff --git a/color-module/src/schemes/q_style/scheme_setting.rs b/color-module/src/schemes/q_style/scheme_setting.rs index c789a6d..b0df721 100644 --- a/color-module/src/schemes/q_style/scheme_setting.rs +++ b/color-module/src/schemes/q_style/scheme_setting.rs @@ -3,6 +3,7 @@ use std::ops::{Div, Mul}; use enum_iterator::Sequence; use palette::Oklch; use serde::{Deserialize, Serialize}; +use serde_repr::{Deserialize_repr, Serialize_repr}; use strum::Display; use wasm_bindgen::{prelude::wasm_bindgen, JsError, JsValue}; @@ -104,7 +105,7 @@ pub struct SchemeSetting { pub wacg_follows: WACGSetting, } -#[derive(Debug, Clone, Copy, Display, Sequence, Serialize, Deserialize)] +#[derive(Debug, Clone, Copy, Display, Sequence, Serialize_repr, Deserialize_repr)] #[wasm_bindgen] #[repr(u8)] pub enum ColorExpand { @@ -131,7 +132,7 @@ impl ColorExpand { } } -#[derive(Debug, Clone, Copy, Display, Sequence, Serialize, Deserialize)] +#[derive(Debug, Clone, Copy, Display, Sequence, Serialize_repr, Deserialize_repr)] #[wasm_bindgen] #[repr(u8)] pub enum WACGSetting { diff --git a/src/color_functions/color_module.d.ts b/src/color_functions/color_module.d.ts index d11bf04..8b366e1 100644 --- a/src/color_functions/color_module.d.ts +++ b/src/color_functions/color_module.d.ts @@ -181,6 +181,13 @@ export interface InitOutput { readonly mix: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number]; readonly tint: (a: number, b: number, c: number) => [number, number, number, number]; readonly shade: (a: number, b: number, c: number) => [number, number, number, number]; + readonly __wbg_rgbdifference_free: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_r: (a: number) => number; + readonly __wbg_set_rgbdifference_r: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_g: (a: number) => number; + readonly __wbg_set_rgbdifference_g: (a: number, b: number) => void; + readonly __wbg_get_rgbdifference_b: (a: number) => number; + readonly __wbg_set_rgbdifference_b: (a: number, b: number) => void; readonly color_categories: () => [number, number, number]; readonly search_color_cards: (a: number, b: number, c: number, d: number) => [number, number, number]; readonly __wbg_hsldifference_free: (a: number, b: number) => void; @@ -214,13 +221,6 @@ export interface InitOutput { readonly __wbg_get_schemesetting_hover: (a: number) => number; readonly __wbg_get_schemesetting_active: (a: number) => number; readonly __wbg_get_schemesetting_focus: (a: number) => number; - readonly __wbg_rgbdifference_free: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_r: (a: number) => number; - readonly __wbg_set_rgbdifference_r: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_g: (a: number) => number; - readonly __wbg_set_rgbdifference_g: (a: number, b: number) => void; - readonly __wbg_get_rgbdifference_b: (a: number) => number; - readonly __wbg_set_rgbdifference_b: (a: number, b: number) => void; readonly __wbg_oklchdifference_free: (a: number, b: number) => void; readonly __wbg_get_oklchdifference_hue: (a: number) => number; readonly __wbg_set_oklchdifference_hue: (a: number, b: number) => void; diff --git a/src/color_functions/color_module_bg.wasm b/src/color_functions/color_module_bg.wasm index de8003b..81b7b25 100644 Binary files a/src/color_functions/color_module_bg.wasm and b/src/color_functions/color_module_bg.wasm differ diff --git a/src/color_functions/color_module_bg.wasm.d.ts b/src/color_functions/color_module_bg.wasm.d.ts index f423830..3c99e78 100644 --- a/src/color_functions/color_module_bg.wasm.d.ts +++ b/src/color_functions/color_module_bg.wasm.d.ts @@ -38,6 +38,13 @@ export const darken_absolute: (a: number, b: number, c: number) => [number, numb export const mix: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number]; export const tint: (a: number, b: number, c: number) => [number, number, number, number]; export const shade: (a: number, b: number, c: number) => [number, number, number, number]; +export const __wbg_rgbdifference_free: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_r: (a: number) => number; +export const __wbg_set_rgbdifference_r: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_g: (a: number) => number; +export const __wbg_set_rgbdifference_g: (a: number, b: number) => void; +export const __wbg_get_rgbdifference_b: (a: number) => number; +export const __wbg_set_rgbdifference_b: (a: number, b: number) => void; export const color_categories: () => [number, number, number]; export const search_color_cards: (a: number, b: number, c: number, d: number) => [number, number, number]; export const __wbg_hsldifference_free: (a: number, b: number) => void; @@ -71,13 +78,6 @@ export const schemesetting_toJsValue: (a: number) => [number, number, number]; export const __wbg_get_schemesetting_hover: (a: number) => number; export const __wbg_get_schemesetting_active: (a: number) => number; export const __wbg_get_schemesetting_focus: (a: number) => number; -export const __wbg_rgbdifference_free: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_r: (a: number) => number; -export const __wbg_set_rgbdifference_r: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_g: (a: number) => number; -export const __wbg_set_rgbdifference_g: (a: number, b: number) => void; -export const __wbg_get_rgbdifference_b: (a: number) => number; -export const __wbg_set_rgbdifference_b: (a: number, b: number) => void; export const __wbg_oklchdifference_free: (a: number, b: number) => void; export const __wbg_get_oklchdifference_hue: (a: number) => number; export const __wbg_set_oklchdifference_hue: (a: number, b: number) => void;