import { FOCUS_RING_CLASS } from "../intentStyles.ts" import { toClassName } from "../toClassName.ts" import type { TabsOrientation } from "./tabItems.ts" /** * The selected marker runs along the edge the tab list itself * sits on — under a horizontal bar, down the inline-end of a * vertical rail — and the negative margin pulls it over the * list's own border so the two read as one line rather than two. * * Logical properties throughout, which is the house rule and also * the only way a vertical rail lands on the correct side in RTL. */ const ORIENTATION_EDGE_CLASS: Record< TabsOrientation, { base: string; selected: string } > = { horizontal: { base: "-mb-px border-b-2", selected: "border-b-intent-accent-solid", }, vertical: { base: "-me-px border-e-2 text-start", selected: "border-e-intent-accent-solid", }, } /** * One tab's paint, shared by the `