2.0.14 • Published 4 months ago

greet-greet v2.0.14

Weekly downloads
-
License
ISC
Repository
github
Last release
4 months ago

Custom Drop Down

npm downloads license React Native

Custom DropDown(Greet-Greet) is a flexible and customizable multi-select dropdown component for React Native. Designed for simplicity and performance, it provides developers with an intuitive way to implement multi-selection functionality in their applications. It supports dynamic styling, custom rendering, and is easy to integrate into existing projects.

Features

  • 🖌️ Custom Rendering: Fully customize the input, dropdown items, and selected items.
  • 🎨 Dynamic Styling: Easily apply styles to seamlessly match your app’s theme.
  • 🚀 Lightweight and Fast: Minimal dependencies and optimized for performance.
  • 🔄 Add New Items: Dynamically add new items directly from the dropdown.
  • 🧩 Extensive Control: Configure selection limits, handle custom behavior, and more.

Key Properties

FeatureDescription
Ease of UseSimple to set up and use, with minimal configuration required.
CustomizabilitySupports custom input fields, dropdown items, and close icons.
PerformanceOptimized to handle large datasets and mobile performance constraints.
Dynamic UpdatesAllows adding new items dynamically when no matches are found.
Cross-PlatformWorks seamlessly across React Native environments (Android and iOS).
ExtensibilityHighly configurable with custom render functions and event callbacks.
Comprehensive DocsDetailed documentation with examples and usage guides.

Props

Prop NameTypeDefaultDescription
dataarray[]List of items to display in the dropdown.
placeholderstring"Search or add category"Placeholder text for the input field.
maxSelectablenumber5Maximum number of items a user can select.
onSelectfunc() => {}Callback function triggered when items are selected.
renderInputfuncnullCustom render function for the input field.
renderDropdownItemfuncnullCustom render function for dropdown items.
renderAddItemfuncnullCustom render function for the "Add Item" option.
renderCloseIconfuncnullCustom render function for the close icon in selected items.

Explanation:

  • Key Properties: The table now clearly outlines the features and their descriptions.
  • Installation: Instructions are provided for both npm and Yarn.
  • API Reference: Detailed prop information is included for developers to understand the customization options available.
  • License & Contributions: Standard sections for open-source contributions and licensing.

Usage

The snippet below shows how the component can be used:

import CustomDropDown from 'greet-greet';

const App = () => {
  const [selectedItems, setSelectedItems] = useState([]);

  const handleSelect = (selected) => {
    setSelectedItems(selected);
  };

  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>      
      <CustomDropDown
        data={['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5']}
        placeholder="Select items"
        maxSelectable={3}
        onSelect={handleSelect}
        renderInput={(props) => <TextInput {...props} />}
        renderDropdownItem={(item) => <Text>{item}</Text>}
        renderAddItem={(props) => <Text {...props}>Add Item</Text>}
        renderCloseIcon={(item) => <Icon name="close" />}
      />
    </View>
  );
};

export default App;

Installation

You can install Greet-Greet via npm or Yarn:

# Using npm
npm install greet-greet

# Using Yarn
yarn add greet-greet
2.0.14

4 months ago

2.0.12

7 months ago

2.0.11

8 months ago

2.0.10

8 months ago

2.0.9

8 months ago

2.0.7

8 months ago

2.0.6

8 months ago

2.0.5

8 months ago

2.0.4

8 months ago

2.0.3

8 months ago

2.0.2

8 months ago

2.0.1

8 months ago

2.0.0

8 months ago

1.0.4

8 months ago

1.0.3

8 months ago

1.0.2

8 months ago

1.0.1

8 months ago

1.0.0

8 months ago