open-index/open-npm huggingface dataset:
npm package: @ryan-pratt/redux-react-native-session
Description: Keep your session sync with the storage and redux
Author: Bernabe Gonzalez
Latest version: 1.0.5

# Redux React Native Session

[![NPM version](https://img.shields.io/npm/v/@ryan-pratt/redux-react-native-session.svg?style=flat)](https://npmjs.org/package/@ryan-pratt/redux-react-native-session)
[![Dependency Status](https://img.shields.io/david/ryan-pratt/redux-react-native-session.svg)](https://david-dm.org/ryan-pratt/redux-react-native-session)

This fork is to re-release version 1.0.4 as that release in NPM is not consistent with the parent repo's code.

Keep your session sync with AsyncStorage and Redux :key:

Redux React Native Session provides an simple API that allows to manage sessions through the app.

## Installation
yarn:

`yarn add redux-react-native-session`

npm:

`npm install redux-react-native-session --save`

## Usage

- Add the session reducer:
```javascript
import { combineReducers } from 'redux';
import { sessionReducer } from 'redux-react-native-session';

const reducers = {
  // ... your other reducers here ...
  session: sessionReducer
};
const reducer = combineReducers(reducers);
```
- Initiate the session service:
```javascript
import { createStore } from 'redux';
import { sessionService } from 'redux-react-native-session';

const store = createStore(reducer)

sessionService.initSessionService(store);
```

## API

### initSessionService(store)
Initialize an instance of the session service.

### refreshFromAsyncStorage
Force to refresh the Redux store from the AsyncStorage.

Note: this function is called once the session service is initialized

### saveSession(session:object) : Promise
Saves the session object in the AsyncStorage and changes the `authenticated` flag to `true` in Redux store

### loadSession : Promise(currentSession:Object)
Returns the current session if exists

Example:
```javascript
loadSession
.then(currentSession => console.log(currentSession))
.catch(err => console.log(err))
```

### deleteSession : Promise
Deletes the current session from the AsyncStorage

### saveUser(user:object) : Promise
Saves the user object in the AsyncStorage and in the Redux store

### loadUser : Promise
Returns the current user if exists

### deleteUser : Promise
Deletes the current user from the AsyncStorage and the Redux store

## Immutable JS
Usage of `redux-react-native-session` with an immutable store is really simple.
Instead of the `sessionReducer` import the `sessionImmutableReducer`, as the following example:

- Add the session reducer:
```javascript
import { combineReducers } from 'redux';
import { sessionImmutableReducer as session } from 'redux-react-native-session';

const reducers = {
  // ... your other reducers here ...
  session
};
const reducer = combineReducers(reducers);
```
npm package: @ryan-rushton/eslint-config
Description: Eslint config, just the way I like it!
Author: Ryan Rushton
Latest version: 1.0.6

# @ryan-rushton/eslint-config

Makes managing my eslint config a little easier and more consistent between projects.

To install run

```
npm install --save-dev eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser prettier babel-eslint eslint-config-prettier eslint-plugin-babel eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier eslint-plugin-react eslint-plugin-react-hooks @ryan-rushton/eslint-config
```

or

```
yarn add --dev eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser prettier babel-eslint eslint-config-prettier eslint-plugin-babel eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier eslint-plugin-react eslint-plugin-react-hooks @ryan-rushton/eslint-config
```
npm package: @ryan-sandy/no-robots
Description: Deney all robots express middleware
Author: Ryan Lee
Latest version: 1.0.3

#No-Robots

Deny all robots from your express server.

##Usage
```
const noRobots = require('no-robots');
const app = express();
app.use(noRobots);
```

Returns the following on /robots.txt
```
User-agent: *
Disallow: /
```
npm package: @ryan-stackwave/gantt
Description: A simple, modern, interactive gantt library for the web
Author: Faris Ansari
Latest version: 1.0.5

<div align="center">
    <img src="https://github.com/frappe/design/blob/master/logos/logo-2019/frappe-gantt-logo.png" height="128">
    <h2>Frappe Gantt</h2>
    <p align="center">
        <p>A simple, interactive, modern gantt chart library for the web</p>
        <a href="https://frappe.github.io/gantt">
            <b>View the demo »</b>
        </a>
    </p>
</div>

<p align="center">
    <a href="https://frappe.github.io/gantt">
        <img src="https://cloud.githubusercontent.com/assets/9355208/21537921/4a38b194-cdbd-11e6-8110-e0da19678a6d.png">
    </a>
</p>

### Install

```
npm install @energiency/gantt
```

### Usage

Include it in your HTML:

```
<script src="frappe-gantt.min.js"></script>
<link rel="stylesheet" href="frappe-gantt.css">
```

And start hacking:

```js
var tasks = [
  {
    id: 'Task 1',
    name: 'Redesign website',
    start: '2016-12-28',
    end: '2016-12-31',
    progress: 20,
    dependencies: 'Task 2, Task 3',
    custom_class: 'bar-milestone' // optional
  },
  ...
]
var gantt = new Gantt("#gantt", tasks);
```

You can also pass various options to the Gantt constructor:

```js
var gantt = new Gantt('#gantt', tasks, {
    header_height: 50,
    column_width: 30,
    step: 24,
    view_modes: ['Quarter Day', 'Half Day', 'Day', 'Week', 'Month'],
    bar_height: 20,
    bar_corner_radius: 3,
    arrow_curve: 5,
    padding: 18,
    view_mode: 'Day',
    date_format: 'YYYY-MM-DD',
    language: 'en', // or 'es', 'it', 'ru', 'ptBr', 'fr', 'tr', 'zh', 'de', 'hu'
    custom_popup_html: null,
});
```

You can add `dark` class to the container element to apply dark theme.

```html
<div class="gantt-target dark"></div>
```

### Contributing

If you want to contribute enhancements or fixes:

1. Clone this repo.
2. `cd` into project directory
3. `yarn`
4. `yarn run dev`
5. Open `index.html` in your browser, make your code changes and test them.

### Publishing

If you have publishing rights (Frappe Team), follow these steps to publish a new version.

Assuming the last commit (or a couple of commits) were enhancements or fixes,

1. Run `yarn build`

    This will generate files in the `dist/` folder. These files need to be committed.

1. Run `yarn publish`
1. Type the new version at the prompt

    Depending on the type of change, you can either bump the patch version or the minor version.
    For e.g.,

    ```
    0.5.0 -> 0.6.0 (minor version bump)
    0.5.0 -> 0.5.1 (patch version bump)
    ```

1. Now, there will be a commit named after the version you just entered. Include the generated files in `dist/` folder as part of this commit by running the command:
    ```
    git add dist
    git commit --amend
    git push origin master
    ```

License: MIT

---

Project maintained by [frappe](https://github.com/frappe)