{"version":3,"sources":["../src/spinner/index.native.tsx"],"names":["useTheme","jsx","ActivityIndicator"],"mappings":";;;;;;;AAQA,IAAM,OAAA,GAA2D;AAAA,EAC/D,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,OAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,OAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAUO,SAAS,OAAA,CAAQ,EAAE,IAAA,GAAO,IAAA,EAAM,OAAO,KAAA,GAAQ,SAAA,EAAW,OAAM,EAAiB;AACtF,EAAA,MAAM,EAAE,MAAA,EAAO,GAAIA,eAAA,EAAS;AAC5B,EAAA,MAAM,SACJ,OAAO,IAAA,KAAS,QAAA,GAAW,IAAA,GAAO,QAAQ,IAAI,CAAA;AAEhD,EAAA,uBACEC,cAAA;AAAA,IAACC,6BAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAM,MAAA;AAAA,MACN,KAAA,EAAO,SAAS,MAAA,CAAO,aAAA;AAAA,MACvB,oBAAoB,KAAA,IAAS,MAAA;AAAA,MAC7B;AAAA;AAAA,GACF;AAEJ","file":"spinner.native.cjs","sourcesContent":["/**\n * Spinner (native). RN's ActivityIndicator dressed in the same prop shape.\n */\nimport { ActivityIndicator, type ViewStyle } from \"react-native\";\nimport { useTheme } from \"@plyxui/styles\";\n\nexport type SpinnerSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\n\nconst sizeMap: Record<SpinnerSize, \"small\" | \"large\" | number> = {\n  xs: 12,\n  sm: \"small\",\n  md: 20,\n  lg: \"large\",\n  xl: 40,\n};\n\nexport interface SpinnerProps {\n  size?: SpinnerSize | number;\n  color?: string;\n  thickness?: number;\n  label?: string | null;\n  style?: ViewStyle;\n}\n\nexport function Spinner({ size = \"md\", color, label = \"Loading\", style }: SpinnerProps) {\n  const { colors } = useTheme();\n  const rnSize: \"small\" | \"large\" | number =\n    typeof size === \"number\" ? size : sizeMap[size];\n\n  return (\n    <ActivityIndicator\n      size={rnSize}\n      color={color ?? colors.primaryOrange}\n      accessibilityLabel={label ?? undefined}\n      style={style}\n    />\n  );\n}\n"]}