@razorpay/blade
Version:
The Design System that powers Razorpay
19 lines (16 loc) • 1.96 kB
JavaScript
import React__default from 'react';
import { BaseDropdownInputTrigger } from './BaseDropdownInputTrigger.js';
import { useDropdown } from '../../Dropdown/useDropdown.js';
import { BaseBox } from '../../Box/BaseBox/BaseBox.native.js';
import { VisuallyHidden } from '../../VisuallyHidden/VisuallyHidden.native.js';
import 'react-native';
import '@babel/runtime/helpers/slicedToArray';
import { isReactNative } from '../../../utils/platform/isReactNative.js';
import '../../BladeProvider/useTheme.js';
import { assignWithoutSideEffects } from '../../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
import { dropdownComponentIds } from '../../Dropdown/dropdownComponentIds.js';
import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
import { jsxs, jsx } from 'react/jsx-runtime';
var _SelectInput=function _SelectInput(props,ref){var _useDropdown=useDropdown(),value=_useDropdown.value,triggererRef=_useDropdown.triggererRef,onTriggerKeydown=_useDropdown.onTriggerKeydown,_onTriggerClick=_useDropdown.onTriggerClick;return jsxs(BaseBox,{position:"relative",children:[!isReactNative()?jsx(VisuallyHidden,{children:jsx("input",Object.assign({onFocus:function onFocus(){var _triggererRef$current;(_triggererRef$current=triggererRef.current)==null?void 0:_triggererRef$current.focus();},ref:ref,tabIndex:-1,required:props.isRequired,name:props.name,value:value},makeAnalyticsAttribute(props),{onChange:function onChange(){},"aria-hidden":true}))}):null,jsx(BaseDropdownInputTrigger,Object.assign({},props,{isSelectInput:true,onTriggerKeydown:onTriggerKeydown,onTriggerClick:function onTriggerClick(e){_onTriggerClick();props==null?void 0:props.onClick==null?void 0:props.onClick(e);}}))]});};var SelectInput=assignWithoutSideEffects(React__default.forwardRef(_SelectInput),{componentId:dropdownComponentIds.triggers.SelectInput});
export { SelectInput };
//# sourceMappingURL=SelectInput.js.map