pub fn Page(allocator: zx.Allocator) zx.Component {
    const u: User = .{ .member = .{ .points = 150 } };

    return (
        <main @allocator={allocator}>
            {switch (u) {
                .admin => ("Admin"),
                .member, .member2, .member3 => ("Member"),
                else => ("Guest"),
            }}
        </main>
    );
}

const User = union(enum) {
    admin: struct { level: u8 },
    member: struct { points: u16 },
    member2: struct { points: u16 },
    member3: struct { points: u16 },
    guest: struct { points: u16 },
};

const zx = @import("zx");
