{"version":3,"file":"loader.types.mjs","names":[],"sources":["../../../../package/common/loader/loader.types.ts"],"sourcesContent":["import type { CSSProperties } from 'react';\nimport type { HtmlProps } from '../types/slots.types';\nimport type { ColorValue } from '../themeProvider/color.types';\n\nexport enum LoaderType {\n  /** An arc that grows and shrinks on a faint track. The default, and the one that reads at any size. */\n  Spinner = 'spinner',\n  /** A glowing head trailing a fading tail round a ring. For a hero spot: a page, a panel, an overlay. */\n  Comet = 'comet',\n  /** Three dots in a wave. For a line of text or a chat reply being written. */\n  Dots = 'dots',\n  /** Bars rising and falling like an equaliser. For media, uploads and data being processed. */\n  Bars = 'bars',\n  /** Rings rippling out from a core. For waiting on something outside the app: a device, a connection, a search. */\n  Pulse = 'pulse',\n}\n\nexport interface LoaderLabels {\n  /** The loader's accessible name. */\n  loading?: string;\n}\n\nexport interface LoaderProps extends HtmlProps<HTMLSpanElement> {\n  /** The animation. Defaults to `LoaderType.Spinner`. */\n  type?: LoaderType;\n  /** Width and height: any CSS length, or a number of pixels. Defaults to `'2.5em'`, so it follows the font size around it. */\n  size?: number | string;\n  /** A `ThemeColor` or any CSS colour. Defaults to `ThemeColor.Primary`; `ThemeColor.Neutral` takes the colour of the text around it. */\n  color?: ColorValue;\n  /** Text the loader produces itself. See `LoaderLabels`. */\n  labels?: LoaderLabels;\n  className?: string;\n  style?: CSSProperties;\n}\n"],"mappings":"aAIA,IAAY,EAAL,SAAA,EAAA,OAEL,GAAA,QAAA,UAEA,EAAA,MAAA,QAEA,EAAA,KAAA,OAEA,EAAA,KAAA,OAEA,EAAA,MAAA,SACF,EAAA,CAAA,CAAA"}