Primitives / foldkit-primitives/events

WindowSize

const · packages/primitives/src/events/window-size.ts:55

Argsnone
Model{ width: number, height: number }
MessagesChanged { width: number, height: number }
Its full type
const WindowSize: Bundle.Bundle<
  'WindowSize',
  void,
  { readonly width: number; readonly height: number },
  { readonly _tag: 'Changed'; readonly width: number; readonly height: number },
  never,
  never,
  never,
  void,
  {},
  {}
>

Window size as a bundle: { width, height } in the Model, read from the window at startup and kept current by one resize listener. Breakpoints owns its own listener and derives names; place this one when views need the raw pixels. Placing both doubles resize listeners — pick the one the view reads.

In the guides