feedback.ts

 1import { ColorScheme } from "../theme/colorScheme"
 2import { background, border, text } from "./components"
 3import { interactive } from "../element"
 4
 5export default function feedback(colorScheme: ColorScheme) {
 6    let layer = colorScheme.highest
 7
 8    return {
 9        submit_button: interactive({
10            base: {
11                ...text(layer, "mono", "on"),
12                background: background(layer, "on"),
13                cornerRadius: 6,
14                border: border(layer, "on"),
15                margin: {
16                    right: 4,
17                },
18                padding: {
19                    bottom: 2,
20                    left: 10,
21                    right: 10,
22                    top: 2,
23                },
24            },
25            state: {
26                clicked: {
27                    ...text(layer, "mono", "on", "pressed"),
28                    background: background(layer, "on", "pressed"),
29                    border: border(layer, "on", "pressed"),
30                },
31                hovered: {
32                    ...text(layer, "mono", "on", "hovered"),
33                    background: background(layer, "on", "hovered"),
34                    border: border(layer, "on", "hovered"),
35                },
36            },
37        }),
38        button_margin: 8,
39        info_text_default: text(layer, "sans", "default", { size: "xs" }),
40        link_text_default: text(layer, "sans", "default", {
41            size: "xs",
42            underline: true,
43        }),
44        link_text_hover: text(layer, "sans", "hovered", {
45            size: "xs",
46            underline: true,
47        }),
48    }
49}