Utilities.p
function · packages/mixins/src/utilities.ts:83
p(step: Space): StyleValuepadding on every side.
Mixins / foldkit-mixins/utilities
namespace · packages/mixins/src/utilities.ts:81
const Utilities = {
p,
px,
py,
m,
mx,
my,
gap,
text,
font,
leading,
rounded,
color,
bg,
items,
justify,
flex,
column,
grid,
block,
hidden,
wFull,
textCenter,
uppercase,
truncate,
srOnly,
pointer,
selectNone,
scrollFade,
steady,
}Utilities.pfunction · packages/mixins/src/utilities.ts:83
p(step: Space): StyleValuepadding on every side.
Utilities.pxfunction · packages/mixins/src/utilities.ts:85
px(step: Space): StyleValuepadding-inline.
Utilities.pyfunction · packages/mixins/src/utilities.ts:87
py(step: Space): StyleValuepadding-block.
Utilities.mfunction · packages/mixins/src/utilities.ts:89
m(step: Margin): StyleValuemargin on every side.
Utilities.mxfunction · packages/mixins/src/utilities.ts:91
mx(step: Margin): StyleValuemargin-inline; mx('auto') centers a block.
Utilities.myfunction · packages/mixins/src/utilities.ts:93
my(step: Margin): StyleValuemargin-block.
Utilities.gapfunction · packages/mixins/src/utilities.ts:95
gap(step: Space): StyleValuegap between flex or grid children.
Utilities.textfunction · packages/mixins/src/utilities.ts:97
text(size: keyof Tokens['size'] & string): StyleValuefont-size from the size scale.
Utilities.fontfunction · packages/mixins/src/utilities.ts:99
font(weight: keyof Tokens['weight'] & string): StyleValuefont-weight from the weight scale.
Utilities.leadingfunction · packages/mixins/src/utilities.ts:102
leading(name: keyof Tokens['leading'] & string): StyleValueline-height from the leading scale.
Utilities.roundedfunction · packages/mixins/src/utilities.ts:105
rounded(radius: keyof Tokens['radius'] & string): StyleValueborder-radius from the radius scale.
Utilities.colorfunction · packages/mixins/src/utilities.ts:108
color(name: ColorName): StyleValueText color from the palette.
Utilities.bgfunction · packages/mixins/src/utilities.ts:110
bg(name: ColorName): StyleValuebackground from the palette.
Utilities.itemsfunction · packages/mixins/src/utilities.ts:112
items(align: keyof typeof alignments): StyleValuealign-items of a flex or grid container.
Utilities.justifyfunction · packages/mixins/src/utilities.ts:114
justify(justify: keyof typeof justifications): StyleValuejustify-content of a flex or grid container.
Utilities.flexconst · packages/mixins/src/utilities.ts:116
flex: StyleValueUtilities.columnconst · packages/mixins/src/utilities.ts:118
column: StyleValueA flex column.
Utilities.gridconst · packages/mixins/src/utilities.ts:119
grid: StyleValueUtilities.blockconst · packages/mixins/src/utilities.ts:120
block: StyleValueUtilities.hiddenconst · packages/mixins/src/utilities.ts:121
hidden: StyleValueUtilities.wFullconst · packages/mixins/src/utilities.ts:122
wFull: StyleValueUtilities.textCenterconst · packages/mixins/src/utilities.ts:123
textCenter: StyleValueUtilities.uppercaseconst · packages/mixins/src/utilities.ts:124
uppercase: StyleValueUtilities.truncateconst · packages/mixins/src/utilities.ts:126
truncate: StyleValueOne line, cut with an ellipsis.
Utilities.srOnlyconst · packages/mixins/src/utilities.ts:128
srOnly: StyleValueVisually hidden but announced: screen-reader-only content.
Utilities.pointerconst · packages/mixins/src/utilities.ts:139
pointer: StyleValueUtilities.selectNoneconst · packages/mixins/src/utilities.ts:140
selectNone: StyleValueUtilities.scrollFadefunction · packages/mixins/src/utilities.ts:149
scrollFade(axis?: 'block' | 'inline'): StyleValueA scroller's content dissolving toward an edge with more to scroll, as
shadcn's scroll-fade: a mask whose two ends a scroll timeline moves, so
the true start and end stay crisp until something is past them. A browser
without scroll timelines (Firefox) gets no fade, since a still one would
sit on an edge with nothing beyond it. The gradient is physical, so in a
right-to-left page inline fades the left edge first.
Utilities.steadyfunction · packages/mixins/src/utilities.ts:161
steady(weight: keyof Tokens['weight'] & string): StyleValueRoom for a label at weight, so it turns heavier (chosen, pressed)
without moving what is beside it. The element's data-label holds the
label's text, which a hidden ::after sets at that weight with no
height: a block as wide as its widest child takes the heavier width
whatever the label's own weight. The element stays a block container,
so a text-box trim on it still works; without data-label, nothing.
Hidden, the copy is no part of the element's accessible name: Chrome's
own accessibility tree names a steady button once. (Vitest's in-page
locator reads it twice, so a test presses such a button with click().)