npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

react-native-sliding-up-down-panel

v1.0.0

Published

Sliding up and sliding down panels for android and ios | react native

Downloads

42

Readme

React Native Sliding panel (up and down) - Android and IOS

An Awesome fully Customizable library of react native for sliding panels purely implemented in Javascript. Works exceptionally well on android and ios.

Alt text

Features (What makes this library different)

Easily Assemble itself into your react native project

One library for both sliding up and sliding down panels.

Customizable Animatable and Draggable.

Extremely simple usage and implementation.

Provides maximum methods for dealing with every scenarios in sliding panels.

Constantly updating and improvizing to provide best experience to all the developers.

Support

We will be always available to hear every possible issue and to fix every reported bug. You can even directly report the issue/concern/query/suggestion at [email protected]

Installation

npm install react-native-sliding-up-down-panels --save

Copy and paste into the terminal in your project directory. For more information on npm install, please visit their official page

Note : We will soon provide the installation using yarn

Minimal Example

Before start please note :

  1. Always Put flex: 1 on the root container component style in which you are using < SlidingPanel />.
  2. Always use prop headerLayoutHeight to mention the height of the sliding panel header.
import React, { Component } from 'react';
import {
  StyleSheet,
  Text,
  View,
  Dimensions,
} from 'react-native';
const { width, height } = Dimensions.get('window');

import SlidingPanel from 'react-native-sliding-up-down-panels';


export default class App extends Component {
  render() {
    return (
      <View style={styles.container}>                      
        
        <View style={styles.bodyViewStyle}>
          <Text>Hello My World</Text>
        </View>
        
        <SlidingPanel
            headerLayoutHeight = {100}
            headerLayout = { () =>
                <View style={styles.headerLayoutStyle}>
                  <Text style={styles.commonTextStyle}>My Awesome sliding panel</Text>
                </View>
            }
            slidingPanelLayout = { () =>
                <View style={styles.slidingPanelLayoutStyle}>
                  <Text style={styles.commonTextStyle}>The best thing about me is you</Text>
                </View>
            }
        />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
  },
  bodyViewStyle: {
    flex: 1,
    justifyContent: 'center', 
    alignItems: 'center',
  },
  headerLayoutStyle: {
    width, 
    height: 100, 
    backgroundColor: 'orange', 
    justifyContent: 'center', 
    alignItems: 'center',
  },
  slidingPanelLayoutStyle: {
    width, 
    height, 
    backgroundColor: '#7E52A0', 
    justifyContent: 'center', 
    alignItems: 'center',
  },
  commonTextStyle: {
    color: 'white', 
    fontSize: 18,
  },
});

If you are wrapping header layout inside a view, please make sure the height of that view is equal to headerLayoutHeight prop.

Props

| Property | Type | Description | Platform | --- | --- | --- | --- | | headerLayoutHeight | number | Header height of sliding panel | android, ios | headerLayout| function | Header Layout of sliding panel | android, ios | slidingPanelLayout | function | Panel Layout of sliding panel | android, ios | AnimationSpeed | number | Animation speed, (in millisecond) | android, ios | slidingPanelLayoutHeight |number | Panel height of sliding panel | android, ios | panelPosition | string | "top" or "bottom" | android, ios | visible | booolean | to show/hide sliding panel | android, ios | allowDragging | booolean | allow sliding panel to drag | android, ios | allowAnimation | booolean | allow sliding panel to animate | android, ios | onDragStart | function(event, gestureState) | returns event, gestureState | android, ios | onDragStop | function(event, gestureState) | returns event, gestureState | android, ios | onDrag | function(event, gestureState) | returns event, gestureState | android, ios | onAnimationStart | function | triggers when panel animation starts | android, ios | onAnimationStop | function | triggers when panel animation stops | android, ios

Methods

| Method Name | Description | Platform | --- | --- | --- | | onRequestStart | panel animation starts, sliding panel opens | android, ios | onRequestClose | panel animation stops, sliding panel stops | android, ios

What's next (Our promise)

In the next version, We will upgrade library to the following features.

  • Installation using yarn.
  • Sliding the panel upto a particular height.
  • Left and Right sliding panels
  • Drop down panels, (Wooo!!)
  • Bug fixes