@teaui/preact
Version:
Preact renderer for TeaUI
186 lines • 7.07 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
import { useMemo } from 'preact/hooks';
export { FontStyle } from './components/FontStyle.js';
////
/// Views
//
export function Br() {
return _jsx("tui-br", {});
}
export function Checkbox(reactProps) {
return _jsx("tui-checkbox", { ...reactProps });
}
export function CollapsibleText(reactProps) {
return _jsx("tui-collapsible-text", { ...reactProps });
}
export function ConsoleLog(reactProps) {
return _jsx("tui-console", { ...reactProps });
}
export function Digits(reactProps) {
return _jsx("tui-digits", { ...reactProps });
}
export function Dropdown(reactProps) {
return _jsx("tui-dropdown", { ...reactProps });
}
export function HotKey(reactProps) {
return _jsx("tui-hotkey", { ...reactProps });
}
export function Keyboard({ children, ...props }) {
return _jsx("tui-keyboard", { ...props, children: children });
}
export function Mouse({ children, ...props }) {
return _jsx("tui-mouse", { ...props, children: children });
}
export function H1(reactProps) {
return _jsx("tui-h1", { ...reactProps });
}
export function H2(reactProps) {
return _jsx("tui-h2", { ...reactProps });
}
export function H3(reactProps) {
return _jsx("tui-h3", { ...reactProps });
}
export function H4(reactProps) {
return _jsx("tui-h4", { ...reactProps });
}
export function H5(reactProps) {
return _jsx("tui-h5", { ...reactProps });
}
export function H6(reactProps) {
return _jsx("tui-h6", { ...reactProps });
}
export function Input(reactProps) {
return _jsx("tui-input", { ...reactProps });
}
export function Progress(reactProps) {
return _jsx("tui-progress", { ...reactProps });
}
export const Separator = function Separator(reactProps) {
return _jsx("tui-separator", { ...reactProps });
};
Separator.horizontal = function SeparatorHorizontal(reactProps) {
return _jsx("tui-separator", { direction: "horizontal", ...reactProps });
};
Separator.vertical = function SeparatorHorizontal(reactProps) {
return _jsx("tui-separator", { direction: "vertical", ...reactProps });
};
export const Slider = function Slider(reactProps) {
return _jsx("tui-slider", { ...reactProps });
};
Slider.horizontal = function SliderHorizontal(reactProps) {
return _jsx("tui-slider", { direction: "horizontal", ...reactProps });
};
Slider.vertical = function SliderHorizontal(reactProps) {
return _jsx("tui-slider", { direction: "vertical", ...reactProps });
};
export function Space(reactProps) {
return _jsx("tui-space", { ...reactProps });
}
export function Spinner(reactProps) {
return _jsx("tui-spinner", { ...reactProps });
}
export function ToggleGroup(reactProps) {
return _jsx("tui-toggle-group", { ...reactProps });
}
export function Tree(reactProps) {
const { title, ...props } = reactProps;
const titleView = useMemo(() => {
if (typeof title === 'string') {
return _jsx("tui-text", { children: title });
}
return title;
}, [title]);
return _jsx("tui-tree", { ...props, children: titleView });
}
////
/// "Simple" containers
//
export function Box(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-box", { ...props, children: children });
}
export function Button(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-button", { ...props, children: children });
}
export function Collapsible(reactProps) {
const { collapsed, expanded, ...props } = reactProps;
return (_jsxs("tui-collapsible", { ...props, children: [collapsed, expanded] }));
}
export const Stack = function Stack(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-stack", { ...props, children: children });
};
Stack.down = function StackLeft(reactProps) {
const { children, ...props } = reactProps;
return (_jsx("tui-stack", { direction: "down", ...props, children: children }));
};
Stack.up = function StackLeft(reactProps) {
const { children, ...props } = reactProps;
return (_jsx("tui-stack", { direction: "up", ...props, children: children }));
};
Stack.right = function StackLeft(reactProps) {
const { children, ...props } = reactProps;
return (_jsx("tui-stack", { direction: "right", ...props, children: children }));
};
Stack.left = function StackLeft(reactProps) {
const { children, ...props } = reactProps;
return (_jsx("tui-stack", { direction: "left", ...props, children: children }));
};
export function Scrollable(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-scrollable", { ...props, children: children });
}
/**
* <Style /> is similar to <Text/> but only allows inline styles (bold, etc).
* Does not support align or wrap (block styles). Does not support 'font', because
* font is not encodable via SGR codes (and that's how I'm styling and
* concatenating the text nodes).
*/
export function Style(reactProps) {
return _jsx("tui-style", { ...reactProps });
}
/**
* <Text /> is a container that sets the text properties of child TextLiterals
* (font, style) and TextContainers (wrap, alignment)
*/
export function Text(reactProps) {
return _jsx("tui-text", { ...reactProps });
}
export const Accordion = function Accordion(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-accordion", { ...props, children: children });
};
Accordion.Section = function SliderHorizontal(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-accordion-section", { ...props, children: children });
};
export const Drawer = function Drawer(reactProps) {
const { children, content, drawer, ...props } = reactProps;
return (_jsxs("tui-drawer", { ...props, children: [content, drawer, children] }));
};
Drawer.top = function DrawerLeft(reactProps) {
const { children, content, drawer, ...props } = reactProps;
return (_jsxs("tui-drawer", { location: "top", ...props, children: [content, drawer, children] }));
};
Drawer.right = function DrawerLeft(reactProps) {
const { children, content, drawer, ...props } = reactProps;
return (_jsxs("tui-drawer", { location: "right", ...props, children: [content, drawer, children] }));
};
Drawer.bottom = function DrawerBottom(reactProps) {
const { children, content, drawer, ...props } = reactProps;
return (_jsxs("tui-drawer", { location: "bottom", ...props, children: [content, drawer, children] }));
};
Drawer.left = function DrawerLeft(reactProps) {
const { children, content, drawer, ...props } = reactProps;
return (_jsxs("tui-drawer", { location: "left", ...props, children: [content, drawer, children] }));
};
export const Tabs = function Tabs(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-tabs", { ...props, children: children });
};
Tabs.Section = function SliderHorizontal(reactProps) {
const { children, ...props } = reactProps;
return _jsx("tui-tabs-section", { ...props, children: children });
};
//# sourceMappingURL=components.js.map