@tolokoban/ui
Version:
React components with theme
30 lines • 3.39 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { classnameCommon, cssForGaps, Theme } from "../../theme/index.js";
import { styleChild } from "../../theme/styles/child.js";
import { styleColor } from "../../theme/styles/color.js";
import { styleDimension, } from "../../theme/styles/dimension.js";
import { stylePosition } from "../../theme/styles/position.js";
import Styles from "./Strip.module.css";
export function ViewStrip(props) {
const { orientation = "column", template = "-1", gap } = props;
const style = Object.assign(Object.assign(Object.assign(Object.assign({}, styleDimension(props)), stylePosition(props)), styleChild(props)), styleColor(props));
if (gap) {
style.gap = cssForGaps(gap);
}
const templateDef = template
.split("")
.map((c) => ("123456789".includes(c) ? `minmax(0, ${c}fr)` : "auto"))
.join(" ");
if (orientation === "row") {
style.gridTemplateColumns = templateDef;
style.gridAutoColumns = "auto";
style.gridTemplateRows = "minmax(0, 1fr)";
}
else {
style.gridTemplateRows = templateDef;
style.gridAutoRows = "auto";
style.gridTemplateColumns = "minmax(0, 1fr)";
}
return (_jsx("div", { className: Theme.classNames.join(props.className, Styles.Strip, Styles[orientation], classnameCommon(props)), style: style, children: props.children }));
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RyaXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdmlldy9TdHJpcC9TdHJpcC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3RFLE9BQU8sRUFBbUIsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDdEUsT0FBTyxFQUFtQixVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUN0RSxPQUFPLEVBRUgsY0FBYyxHQUNqQixNQUFNLDhCQUE4QixDQUFBO0FBQ3JDLE9BQU8sRUFBc0IsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFHL0UsT0FBTyxNQUFNLE1BQU0sb0JBQW9CLENBQUE7QUEwQnZDLE1BQU0sVUFBVSxTQUFTLENBQUMsS0FBaUI7SUFDdkMsTUFBTSxFQUFFLFdBQVcsR0FBRyxRQUFRLEVBQUUsUUFBUSxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUE7SUFDOUQsTUFBTSxLQUFLLCtEQUNKLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FDckIsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUNwQixVQUFVLENBQUMsS0FBSyxDQUFDLEdBQ2pCLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FDdkIsQ0FBQTtJQUNELElBQUksR0FBRyxFQUFFLENBQUM7UUFDTixLQUFLLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBQ0QsTUFBTSxXQUFXLEdBQUcsUUFBUTtTQUN2QixLQUFLLENBQUMsRUFBRSxDQUFDO1NBQ1QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3BFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNkLElBQUksV0FBVyxLQUFLLEtBQUssRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxtQkFBbUIsR0FBRyxXQUFXLENBQUE7UUFDdkMsS0FBSyxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUE7UUFDOUIsS0FBSyxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFBO0lBQzdDLENBQUM7U0FBTSxDQUFDO1FBQ0osS0FBSyxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQTtRQUNwQyxLQUFLLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQTtRQUMzQixLQUFLLENBQUMsbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUE7SUFDaEQsQ0FBQztJQUNELE9BQU8sQ0FDSCxjQUNJLFNBQVMsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDNUIsS0FBSyxDQUFDLFNBQVMsRUFDZixNQUFNLENBQUMsS0FBSyxFQUNaLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFDbkIsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUN6QixFQUNELEtBQUssRUFBRSxLQUFLLFlBRVgsS0FBSyxDQUFDLFFBQVEsR0FDYixDQUNULENBQUE7QUFDTCxDQUFDIn0=