diff options
Diffstat (limited to 'packages/create-astro/src/components/Select.tsx')
-rw-r--r-- | packages/create-astro/src/components/Select.tsx | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/packages/create-astro/src/components/Select.tsx b/packages/create-astro/src/components/Select.tsx deleted file mode 100644 index c31cad75d..000000000 --- a/packages/create-astro/src/components/Select.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import SelectInput from 'ink-select-input'; -import React, { FC } from 'react'; -import { Text, Box } from 'ink'; -// @ts-expect-error -const { default: Select } = SelectInput; - -interface Props { - isSelected?: boolean; - label: string; - description?: string; -} -const Indicator: FC<Props> = ({ isSelected }) => (isSelected ? <Text color="#3894FF">[ </Text> : <Text>{' '}</Text>); -const Item: FC<Props> = ({ isSelected = false, label, description }) => ( - <Box display="flex"> - <Text color={isSelected ? '#3894FF' : 'white'} dimColor={!isSelected}> - {label} - </Text> - {isSelected && description && typeof description === 'string' && <Text> {description}</Text>} - {isSelected && description && typeof description !== 'string' && <Box marginLeft={1}>{description}</Box>} - </Box> -); - -interface SelectProps { - items: { value: string | number | boolean; label: string; description?: any }[]; - onSelect(value: string | number | boolean): void; -} -const CustomSelect: FC<SelectProps> = ({ items, onSelect }) => { - const handleSelect = ({ value }) => onSelect(value); - return <Select indicatorComponent={Indicator} itemComponent={Item} items={items} onSelect={handleSelect} />; -}; - -export default CustomSelect; |