~james/core

core/ogre/src/components/shared/layout.tsx -rw-r--r-- 1019 bytes
452f17b7 — james chore(import): snapshot james.dad.town/core at f70c71c7696a 16 hours ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import type { ComponentChildren } from "preact";
import { CARD, COLORS } from "./constants";

interface StyleProps {
  style?: Record<string, string | number>;
  children?: ComponentChildren;
}

export function Card({ children, style }: StyleProps) {
  return (
    <div
      style={{
        width: CARD.width,
        height: CARD.height,
        backgroundColor: COLORS.background,
        display: "flex",
        flexDirection: "column",
        padding: CARD.padding,
        paddingBottom: 0,
        justifyContent: "space-between",
        ...style,
      }}>
      {children}
    </div>
  );
}

export function Row({ children, style }: StyleProps) {
  return (
    <div
      style={{
        display: "flex",
        flexDirection: "row",
        alignItems: "center",
        ...style,
      }}>
      {children}
    </div>
  );
}

export function Col({ children, style }: StyleProps) {
  return (
    <div style={{ display: "flex", flexDirection: "column", ...style }}>
      {children}
    </div>
  );
}