openpencil/src/theme/layout-alignment.ts
Danila Poyarkov 69e39cc59e refactor(app): theme toolbar editing states
- Share typed toolbar slots across desktop, mobile, flyout, and action controls\n- Theme alignment cells, fill tabs, and gradient stop states\n- Expose semantic active and disabled state and retire migrated allowlist entries
2026-07-18 00:07:49 +03:00

25 lines
678 B
TypeScript

const layoutAlignmentTheme = {
slots: {
grid: 'grid w-fit grid-cols-3 gap-0.5',
cell: 'flex size-6 cursor-pointer items-center justify-center rounded border text-[11px]',
dot: 'size-1.5 rounded-full bg-current'
},
variants: {
active: {
true: { cell: 'border-accent bg-accent/10 text-accent' },
false: { cell: 'border-border text-muted hover:bg-hover hover:text-surface' }
},
disabled: {
true: { cell: 'pointer-events-none opacity-50' },
false: {}
}
},
defaultVariants: {
active: false,
disabled: false
}
}
export type LayoutAlignmentTheme = typeof layoutAlignmentTheme
export default layoutAlignmentTheme