{"ast":null,"code":"import { mode } from \"../tools\";\nimport Platform from \"react-native-web/dist/exports/Platform\";\nfunction getSelectionColor(props) {\n  if (Platform.OS === 'ios') {\n    return mode('coolGray.800', 'warmGray.50')(props);\n  } else if (Platform.OS === 'android') {\n    return mode('coolGray.800', 'warmGray.50')(props);\n  }\n}\nvar baseStyle = function baseStyle(props) {\n  return {\n    selectionColor: getSelectionColor(props),\n    fontFamily: 'body',\n    p: '2',\n    borderRadius: 'sm',\n    overflow: 'hidden',\n    color: mode('coolGray.800', 'warmGray.50')(props),\n    placeholderTextColor: 'muted.400',\n    borderColor: mode('muted.200', 'gray.500')(props),\n    _disabled: {\n      opacity: '80',\n      bg: mode('muted.100', 'muted.700')(props),\n      _web: {\n        disabled: true,\n        cursor: 'not-allowed'\n      }\n    },\n    _invalid: {\n      borderColor: mode('danger.600', 'danger.300')(props)\n    },\n    _focus: {\n      borderColor: mode('primary.400', 'primary.500')(props)\n    },\n    _web: {\n      outlineWidth: '0',\n      overflow: 'auto',\n      lineHeight: 'lg',\n      outline: 'none',\n      cursor: 'auto'\n    },\n    _stack: {\n      flexDirection: 'row',\n      alignItems: 'center',\n      overflow: 'hidden'\n    },\n    _input: {\n      bg: 'transparent',\n      flex: 1\n    }\n  };\n};\nfunction roundedStyle(props) {\n  return {\n    borderRadius: '25',\n    borderWidth: '1',\n    _hover: {\n      bg: mode('gray.100', 'gray.700')(props)\n    }\n  };\n}\nfunction outlineStyle(props) {\n  return {\n    borderWidth: '1',\n    _hover: {\n      bg: mode('gray.100', 'gray.700')(props)\n    }\n  };\n}\nfunction filledStyle(props) {\n  return {\n    bg: props.bg || mode('muted.200', 'muted.600')(props),\n    borderWidth: '1',\n    borderColor: 'transparent',\n    _hover: {\n      bg: mode('muted.300', 'muted.700')(props)\n    }\n  };\n}\nfunction unstyledStyle() {\n  return {\n    borderWidth: '0'\n  };\n}\nfunction underlinedStyle() {\n  return {\n    borderRadius: '0',\n    borderTopWidth: '0',\n    borderLeftWidth: '0',\n    borderRightWidth: '0',\n    borderBottomWidth: '1'\n  };\n}\nvar variants = {\n  outline: outlineStyle,\n  underlined: underlinedStyle,\n  rounded: roundedStyle,\n  filled: filledStyle,\n  unstyled: unstyledStyle\n};\nvar sizes = {\n  '2xl': {\n    fontSize: 'xl'\n  },\n  'xl': {\n    fontSize: 'lg'\n  },\n  'lg': {\n    fontSize: 'md'\n  },\n  'md': {\n    fontSize: 'sm'\n  },\n  'sm': {\n    fontSize: 'xs'\n  },\n  'xs': {\n    fontSize: '2xs'\n  }\n};\nvar defaultProps = {\n  size: 'sm',\n  variant: 'outline'\n};\nexport var Input = {\n  baseStyle: baseStyle,\n  defaultProps: defaultProps,\n  variants: variants,\n  sizes: sizes\n};\nexport default {};","map":{"version":3,"sources":["input.ts"],"names":["mode","getSelectionColor","props","Platform","OS","baseStyle","selectionColor","fontFamily","p","borderRadius","overflow","color","placeholderTextColor","borderColor","_disabled","opacity","bg","_web","disabled","cursor","_invalid","_focus","outlineWidth","lineHeight","outline","_stack","flexDirection","alignItems","_input","flex","roundedStyle","borderWidth","_hover","outlineStyle","filledStyle","unstyledStyle","underlinedStyle","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","variants","underlined","rounded","filled","unstyled","sizes","fontSize","defaultProps","size","variant","Input"],"mappings":"AAAA,SAASA,IAAT;AAAA,OAAA,QAAA;AAGA,SAASC,iBAAT,CAA2BC,KAA3B,EAAuD;EACrD,IAAIC,QAAQ,CAACC,EAATD,KAAgB,KAApB,EAA2B;IACzB,OAAOH,IAAI,CAAC,cAAD,EAAiB,aAAjB,CAAJA,CAAoCE,KAApCF,CAAP;EACD,CAFD,MAEO,IAAIG,QAAQ,CAACC,EAATD,KAAgB,SAApB,EAA+B;IACpC,OAAOH,IAAI,CAAC,cAAD,EAAiB,aAAjB,CAAJA,CAAoCE,KAApCF,CAAP;EACD;AACF;AAED,IAAMK,SAAS,GAAIH,SAAbG,SAAS,CAAIH,KAAD,EAAgC;EAiBhD,OAAO;IACLI,cAAc,EAAEL,iBAAiB,CAACC,KAAD,CAD5B;IAELK,UAAU,EAAE,MAFP;IAGLC,CAAC,EAAE,GAHE;IAILC,YAAY,EAAE,IAJT;IAKLC,QAAQ,EAAE,QALL;IAMLC,KAAK,EAAEX,IAAI,CAAC,cAAD,EAAiB,aAAjB,CAAJA,CAAoCE,KAApCF,CANF;IAOLY,oBAAoB,EAAE,WAPjB;IAQLC,WAAW,EAAEb,IAAI,CAAC,WAAD,EAAc,UAAd,CAAJA,CAA8BE,KAA9BF,CARR;IASLc,SAAS,EAAE;MACTC,OAAO,EAAE,IADA;MAETC,EAAE,EAAEhB,IAAI,CAAC,WAAD,EAAc,WAAd,CAAJA,CAA+BE,KAA/BF,CAFK;MAGTiB,IAAI,EAAE;QACJC,QAAQ,EAAE,IADN;QAEJC,MAAM,EAAE;MAFJ;IAHG,CATN;IAiBLC,QAAQ,EAAE;MACRP,WAAW,EAAEb,IAAI,CAAC,YAAD,EAAe,YAAf,CAAJA,CAAiCE,KAAjCF;IADL,CAjBL;IAoBLqB,MAAM,EAAE;MACNR,WAAW,EAAEb,IAAI,CAAC,aAAD,EAAgB,aAAhB,CAAJA,CAAmCE,KAAnCF;IADP,CApBH;IAuBLiB,IAAI,EAAE;MACJK,YAAY,EAAE,GADV;MAEJZ,QAAQ,EAAE,MAFN;MAGJa,UAAU,EAAE,IAHR;MAIJC,OAAO,EAAE,MAJL;MAKJL,MAAM,EAAE;IALJ,CAvBD;IA8BLM,MAAM,EAAE;MACNC,aAAa,EAAE,KADT;MAENC,UAAU,EAAE,QAFN;MAINjB,QAAQ,EAAE;IAJJ,CA9BH;IAoCLkB,MAAM,EAAE;MACNZ,EAAE,EAAE,aADE;MAENa,IAAI,EAAE;IAFA;EApCH,CAAP;AAyCD,CA1DD;AA4DA,SAASC,YAAT,CAAsB5B,KAAtB,EAAkD;EAChD,OAAO;IACLO,YAAY,EAAE,IADT;IAELsB,WAAW,EAAE,GAFR;IAGLC,MAAM,EAAE;MACNhB,EAAE,EAAEhB,IAAI,CAAC,UAAD,EAAa,UAAb,CAAJA,CAA6BE,KAA7BF;IADE;EAHH,CAAP;AAOD;AACD,SAASiC,YAAT,CAAsB/B,KAAtB,EAAkD;EAChD,OAAO;IACL6B,WAAW,EAAE,GADR;IAELC,MAAM,EAAE;MACNhB,EAAE,EAAEhB,IAAI,CAAC,UAAD,EAAa,UAAb,CAAJA,CAA6BE,KAA7BF;IADE;EAFH,CAAP;AAMD;AACD,SAASkC,WAAT,CAAqBhC,KAArB,EAAiD;EAC/C,OAAO;IACLc,EAAE,EAAEd,KAAK,CAACc,EAANd,IAAYF,IAAI,CAAC,WAAD,EAAc,WAAd,CAAJA,CAA+BE,KAA/BF,CADX;IAEL+B,WAAW,EAAE,GAFR;IAGLlB,WAAW,EAAE,aAHR;IAILmB,MAAM,EAAE;MACNhB,EAAE,EAAEhB,IAAI,CAAC,WAAD,EAAc,WAAd,CAAJA,CAA+BE,KAA/BF;IADE;EAJH,CAAP;AAQD;AACD,SAASmC,aAAT,CAAA,EAAyB;EACvB,OAAO;IACLJ,WAAW,EAAE;EADR,CAAP;AAGD;AACD,SAASK,eAAT,CAAA,EAA2B;EACzB,OAAO;IACL3B,YAAY,EAAE,GADT;IAEL4B,cAAc,EAAE,GAFX;IAGLC,eAAe,EAAE,GAHZ;IAILC,gBAAgB,EAAE,GAJb;IAKLC,iBAAiB,EAAE;EALd,CAAP;AAOD;AAED,IAAMC,QAAQ,GAAG;EACfjB,OAAO,EAAES,YADM;EAEfS,UAAU,EAAEN,eAFG;EAGfO,OAAO,EAAEb,YAHM;EAIfc,MAAM,EAAEV,WAJO;EAKfW,QAAQ,EAAEV;AALK,CAAjB;AAQA,IAAMW,KAAK,GAAG;EACZ,KAAA,EAAO;IAAEC,QAAQ,EAAE;EAAZ,CADK;EAEZ,IAAA,EAAM;IAAEA,QAAQ,EAAE;EAAZ,CAFM;EAGZ,IAAA,EAAM;IAAEA,QAAQ,EAAE;EAAZ,CAHM;EAIZ,IAAA,EAAM;IAAEA,QAAQ,EAAE;EAAZ,CAJM;EAKZ,IAAA,EAAM;IAAEA,QAAQ,EAAE;EAAZ,CALM;EAMZ,IAAA,EAAM;IAAEA,QAAQ,EAAE;EAAZ;AANM,CAAd;AASA,IAAMC,YAAY,GAAG;EACnBC,IAAI,EAAE,IADa;EAEnBC,OAAO,EAAE;AAFU,CAArB;AAMA,OAAO,IAAMC,KAAK,GAAG;EACnB9C,SADmB,EACnBA,SADmB;EAEnB2C,YAFmB,EAEnBA,YAFmB;EAGnBP,QAHmB,EAGnBA,QAHmB;EAInBK,KAAAA,EAAAA;AAJmB,CAAd;AAOP,eAAe,CAAA,CAAf","sourcesContent":["import { mode } from '../tools';\nimport { Platform } from 'react-native';\n\nfunction getSelectionColor(props: Record<string, any>) {\n  if (Platform.OS === 'ios') {\n    return mode('coolGray.800', 'warmGray.50')(props);\n  } else if (Platform.OS === 'android') {\n    return mode('coolGray.800', 'warmGray.50')(props);\n  }\n}\n\nconst baseStyle = (props: Record<string, any>) => {\n  // const { primary } = props.theme.colors;\n  // Todo: Resolve boxShadow Color or Provide some alternatiove prop for user to change focusRing color\n  // // Todo: Update to support similar focusRing on iOS , Android and Web\n  // const focusRing =\n  //   Platform.OS === 'web'\n  //     ? {\n  //         boxShadow:\n  //           props.variant !== 'underlined'\n  //             ? `${primary[400]} 0px 0px 0px 1px`\n  //             : `${primary[400]} 0px 1px 0px 0px`,\n  //         zIndex: 1,\n  //       }\n  //     : {\n  //         // boxShadow: `${useToken('colors', ['primary.400'])} 0px 0px 0px 1px`,\n  //       };\n\n  return {\n    selectionColor: getSelectionColor(props),\n    fontFamily: 'body',\n    p: '2',\n    borderRadius: 'sm',\n    overflow: 'hidden',\n    color: mode('coolGray.800', 'warmGray.50')(props),\n    placeholderTextColor: 'muted.400',\n    borderColor: mode('muted.200', 'gray.500')(props),\n    _disabled: {\n      opacity: '80',\n      bg: mode('muted.100', 'muted.700')(props),\n      _web: {\n        disabled: true,\n        cursor: 'not-allowed',\n      },\n    },\n    _invalid: {\n      borderColor: mode('danger.600', 'danger.300')(props),\n    },\n    _focus: {\n      borderColor: mode('primary.400', 'primary.500')(props),\n    },\n    _web: {\n      outlineWidth: '0',\n      overflow: 'auto',\n      lineHeight: 'lg', // Todo: Move to _web inside size so that sm and xs don't have this much height\n      outline: 'none',\n      cursor: 'auto',\n    },\n    _stack: {\n      flexDirection: 'row',\n      alignItems: 'center',\n      // justifyContent: 'space-between',\n      overflow: 'hidden',\n    },\n    _input: {\n      bg: 'transparent',\n      flex: 1,\n    },\n  };\n};\n\nfunction roundedStyle(props: Record<string, any>) {\n  return {\n    borderRadius: '25',\n    borderWidth: '1',\n    _hover: {\n      bg: mode('gray.100', 'gray.700')(props),\n    },\n  };\n}\nfunction outlineStyle(props: Record<string, any>) {\n  return {\n    borderWidth: '1',\n    _hover: {\n      bg: mode('gray.100', 'gray.700')(props),\n    },\n  };\n}\nfunction filledStyle(props: Record<string, any>) {\n  return {\n    bg: props.bg || mode('muted.200', 'muted.600')(props),\n    borderWidth: '1',\n    borderColor: 'transparent',\n    _hover: {\n      bg: mode('muted.300', 'muted.700')(props),\n    },\n  };\n}\nfunction unstyledStyle() {\n  return {\n    borderWidth: '0',\n  };\n}\nfunction underlinedStyle() {\n  return {\n    borderRadius: '0',\n    borderTopWidth: '0',\n    borderLeftWidth: '0',\n    borderRightWidth: '0',\n    borderBottomWidth: '1',\n  };\n}\n\nconst variants = {\n  outline: outlineStyle,\n  underlined: underlinedStyle,\n  rounded: roundedStyle,\n  filled: filledStyle,\n  unstyled: unstyledStyle,\n};\n\nconst sizes = {\n  '2xl': { fontSize: 'xl' },\n  'xl': { fontSize: 'lg' },\n  'lg': { fontSize: 'md' },\n  'md': { fontSize: 'sm' },\n  'sm': { fontSize: 'xs' },\n  'xs': { fontSize: '2xs' },\n};\n\nconst defaultProps = {\n  size: 'sm',\n  variant: 'outline',\n};\n\n// Input\nexport const Input = {\n  baseStyle,\n  defaultProps,\n  variants,\n  sizes,\n};\n\nexport default {};\n"]},"metadata":{},"sourceType":"module"}