Mixins / foldkit-mixins/app

AppStyle

namespace · packages/mixins/src/app.ts:90

const AppStyle = { make }

Its type

interface AppStyle<Palette extends ThemeTokens> {
  readonly theme: ReturnType<typeof composeThemes<Tokens, Palette>>
  readonly t: Refs<ReturnType<typeof composeThemes<Tokens, Palette>>>
  readonly L: typeof standard
  readonly slots: <S>(
    pieces: DeclaredPieces<S>,
    options?: AppStyleOptionsFor,
  ) => Declared<S>
  readonly forSlots: <Slots>(
    contract: Slots,
  ) => (
    pieces: StylePieces<Slots>,
    options?: AppStyleOptionsFor,
  ) => NamedStyle<Slots>
  readonly stylesheet: string
}

In the guides

Members

AppStyle.make

function · packages/mixins/src/app.ts:65

make<Palette extends ThemeTokens>(
  options: AppStyleOptions<Palette>,
): AppStyle<Palette>

The application's theme, layer and page stylesheet: const { t, slots, stylesheet } = AppStyle.make({ palette: Theme.oklch({ … }) }). Slot styles are no longer in the stylesheet: a Slot injects its classes' CSS when it first draws them.