1use ishou_tokens::TokenSet;
4
5pub fn render(t: &TokenSet) -> String {
6 let mut out = String::from("// ishou — pleme-io design tokens (generated)\n\n");
7 for (k, v) in t.color.entries() {
8 out.push_str(&format!("$ishou-{}: {};\n", k.replace('_', "-"), v.hex()));
9 }
10 for (role, palette_key) in t.roles.pairs() {
11 let rgb = t.color.get(palette_key).expect("role resolves");
12 out.push_str(&format!("$ishou-color-{role}: {};\n", rgb.hex()));
13 }
14 for (k, v) in t.spacing.pairs() {
15 out.push_str(&format!("$ishou-space-{k}: {v}px;\n"));
16 }
17 for (k, v) in t.radius.pairs() {
18 out.push_str(&format!("$ishou-radius-{k}: {v}px;\n"));
19 }
20 out
21}