use crate::error::Result; use crate::{Parser, escape}; use wasm_bindgen::JsValue; use wasm_bindgen::prelude::wasm_bindgen; #[wasm_bindgen] pub fn parse_template(template: &str) -> Result { let tokens = Parser::new(template).parse()?; Ok(serde_wasm_bindgen::to_value(&tokens).unwrap()) } #[wasm_bindgen] pub fn escape_template(template: &str) -> Result { let escaped = escape::escape_template(template); Ok(serde_wasm_bindgen::to_value(&escaped).unwrap()) } #[wasm_bindgen] pub fn unescape_template(template: &str) -> Result { let escaped = escape::unescape_template(template); Ok(serde_wasm_bindgen::to_value(&escaped).unwrap()) }