open-index/open-npm huggingface dataset:
npm package: @jimpick/node-gyp-build
Description: Build tool and bindings loader for node-gyp that supports prebuilds
Author: Mathias Buus
Latest version: 3.3.0-3

# node-gyp-build

Build tool and bindings loader for node-gyp that supports prebuilds.

```
npm install node-gyp-build
```

Use together with [prebuildify](https://github.com/mafintosh/prebuildify) to easily support prebuilds for your native modules.

## Usage

`node-gyp-build` works similar to `node-gyp build` except that it will check if a build or prebuild is present before rebuilding your project.

It's main intended use is as an npm install script and bindings loader for native modules that bundle prebuilds using [prebuildify](https://github.com/mafintosh/prebuildify).

First add `node-gyp-build` as an install script to your native project

``` js
{
  ...
  "scripts": {
    "install": "node-gyp-build"
  }
}
```

Then in your `index.js`, instead of using the [bindings module](https://www.npmjs.com/package/bindings) use `node-gyp-build` to load your binding.

``` js
var binding = require('node-gyp-build')(__dirname)
```

If you do these two things and bundle prebuilds [prebuildify](https://github.com/mafintosh/prebuildify) your native module will work for most platforms
without having to compile on install time AND will work in both node and electron without the need to recompile between usage.

## License

MIT
npm package: @jimpick/orderedmap
Description: Persistent ordered mapping from strings
Author: Marijn Haverbeke
Latest version: 1.0.0-2

# OrderedMap

Persistent data structure representing an ordered mapping from strings
to values, with some convenient update methods.

This is not an efficient data structure for large maps, just a minimal
helper for cleanly creating and managing small maps in a way that
makes their key order explicit and easy to think about.

License: MIT

## Reference

The exported value from this module is the class `OrderedMap`,
instances of which represent a mapping from strings to arbitrary
values.

**`OrderedMap.from`**`(value: ?Object | OrderedMap) → OrderedMap`  
Return a map with the given content. If null, create an empty map. If
given an ordered map, return that map itself. If given an object,
create a map from the object's properties.

### Methods

Instances of `OrderedMap` have the following methods and properties:

**`get`**`(key: string) → ?any`  
Retrieve the value stored under `key`, or return undefined when
no such key exists.

**`update`**`(key: string, value: any, newKey: ?string) → OrderedMap`  
Create a new map by replacing the value of `key` with a new
value, or adding a binding to the end of the map. If `newKey` is
given, the key of the binding will be replaced with that key.

**`remove`**`(key: string) → OrderedMap`  
Return a map with the given key removed, if it existed.

**`addToStart`**`(key: string, value: any) → OrderedMap`  
Add a new key to the start of the map.

**`addToEnd`**`(key: string, value: any) → OrderedMap`  
Add a new key to the end of the map.

**`addBefore`**`(place: string, key: value: string, value: any) → OrderedMap`  
Add a key after the given key. If `place` is not found, the new
key is added to the end.

**`forEach`**`(f: (key: string, value: any))`  
Call the given function for each key/value pair in the map, in
order.

**`prepend`**`(map: Object | OrderedMap) → OrderedMap`  
Create a new map by prepending the keys in this map that don't
appear in `map` before the keys in `map`.

**`append`**`(map: Object | OrderedMap) → OrderedMap`  
Create a new map by appending the keys in this map that don't
appear in `map` after the keys in `map`.

**`subtract`**`(map: Object | OrderedMap) → OrderedMap`  
Create a map containing all the keys in this map that don't
appear in `map`.

**`size`**`: number`  
The amount of keys in this map.
npm package: @jimpick/pretty-bytes
Description: Convert bytes to a human readable string: 1337 → 1.34 kB
Author: Sindre Sorhus
Latest version: 5.3.0-2

# pretty-bytes [![Build Status](https://travis-ci.org/sindresorhus/pretty-bytes.svg?branch=master)](https://travis-ci.org/sindresorhus/pretty-bytes)

> Convert bytes to a human readable string: `1337` → `1.34 kB`

Useful for displaying file sizes for humans.

*Note that it uses base-10 (e.g. kilobyte).
[Read about the difference between kilobyte and kibibyte.](https://web.archive.org/web/20150324153922/https://pacoup.com/2009/05/26/kb-kb-kib-whats-up-with-that/)*


## Install

```
$ npm install pretty-bytes
```


## Usage

```js
const prettyBytes = require('pretty-bytes');

prettyBytes(1337);
//=> '1.34 kB'

prettyBytes(100);
//=> '100 B'

// Display with units of bits
prettyBytes(1337, {bits: true});
//=> '1.34 kbit'

// Display file size differences
prettyBytes(42, {signed: true});
//=> '+42 B'

// Localized output using German locale
prettyBytes(1337, {locale: 'de'});
//=> '1,34 kB'
```


## API

### prettyBytes(number, options?)

#### number

Type: `number`

The number to format.

#### options

Type: `object`

##### signed

Type: `boolean`\
Default: `false`

Include plus sign for positive numbers. If the difference is exactly zero a space character will be prepended instead for better alignment.

##### bits

Type: `boolean`\
Default: `false`

Format the number as [bits](https://en.wikipedia.org/wiki/Bit) instead of [bytes](https://en.wikipedia.org/wiki/Byte). This can be useful when, for example, referring to [bit rate](https://en.wikipedia.org/wiki/Bit_rate).

##### locale

Type: `boolean | string`\
Default: `false` *(No localization)*

**Important:** Only the number and decimal separator are localized. The unit title is not and will not be localized.

- If `true`: Localize the output using the system/browser locale.
- If `string`: Expects a [BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag) (For example: `en`, `de`, …)

**Note:** Localization should generally work in browsers. Node.js needs to be [built](https://github.com/nodejs/node/wiki/Intl) with `full-icu` or `system-icu`. Alternatively, the [`full-icu`](https://github.com/unicode-org/full-icu-npm) module can be used to provide support at runtime. [Node.js 13](https://nodejs.org/en/blog/release/v13.0.0/) and later ships with ICU by default.


## Related

- [pretty-bytes-cli](https://github.com/sindresorhus/pretty-bytes-cli) - CLI for this module
- [pretty-ms](https://github.com/sindresorhus/pretty-ms) - Convert milliseconds to a human readable string
npm package: @jimpick/prosemirror-commands
Description: Editing commands for ProseMirror
Latest version: 1.0.7-1

# prosemirror-commands

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-commands/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#commands) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#commands) implements a
number of editing commands, which are functions that abstract editing
actions which can be bound to keys.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-dropcursor
Description: Drop cursor plugin for ProseMirror
Latest version: 1.1.1-1

# prosemirror-dropcursor

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror-dropcursor/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) ]

This is a non-core example module for [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This module implements a plugin that shows a drop cursor for
ProseMirror.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.

## Documentation

**`dropCursor`**`(options: ?Object) → Plugin`

Create a plugin that, when added to a ProseMirror instance, causes a
decoration to show up at the drop position when something is dragged
over the editor.

Supports two options: `color` to set the color of the cursor (defaults
to black) and `width` to set its with in pixels (defaults to 1).
npm package: @jimpick/prosemirror-gapcursor
Description: ProseMirror plugin for cursors at normally impossible-to-reach positions
Latest version: 1.0.3-2

# prosemirror-gapcursor

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-gapcursor/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#gapcursor) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [plugin](http://prosemirror.net/docs/ref/#gapcursor) implements a
block-level cursor that can be used to focus places that don't allow
regular selection (such as positions that have a leaf block node,
table, or the end of the document both before and after them). Make
sure you load `style/gapcursor.css` (or define your own styling for
the cursor).

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-history
Description: Undo history for ProseMirror
Latest version: 1.0.3-3

# prosemirror-history

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-history/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#history) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#history) implements an
undo/redo history plugin for ProseMirror.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-inputrules
Description: Automatic transforms on text input for ProseMirror
Latest version: 1.0.1-1

# prosemirror-inputrules

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-inputrules/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#inputrules) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#inputrules) exports a
plugin that can be used to define _input rules_, things that should
happen when input matching a given pattern is typed, along with a
number of predefined rules.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-keymap
Description: Keymap plugin for ProseMirror
Latest version: 1.0.1-3

# prosemirror-keymap

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-keymap/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#keymap) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#keymap) implements a
plugin for conveniently defining key bindings.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-model
Description: ProseMirror's document model
Latest version: 1.6.3-2

# prosemirror-model

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-model/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#model) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#model) implements
ProseMirror's [document model](http://prosemirror\.net/docs/guide/#doc),
along with the mechanisms needed to support
[schemas](http://prosemirror\.net/docs/guide/#schema).

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-schema-basic
Description: Basic schema elements for ProseMirror
Latest version: 1.0.0-2

# prosemirror-schema-basic

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror/blob/master/CHANGELOG.md) ]

This is a [schema module](http://prosemirror.net/docs/ref/#schema-basic) for [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#schema-basic) defines a
basic ProseMirror document schema, whose elements can be reused in
other schemas.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-schema-list
Description: List-related schema elements and commands for ProseMirror
Latest version: 1.0.1-2

# prosemirror-schema-list

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-schema-list/blob/master/CHANGELOG.md) ]

This is a [schema module](http://prosemirror.net/docs/ref/#schema-list) for [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#schema-list) exports
schema elements and commands for including lists in a ProseMirror
editor.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-state
Description: ProseMirror editor state
Latest version: 1.2.2-4

# prosemirror-state

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-state/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#state) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#state) implements the
editor state, which tracks the current document and selection, and
managed plugins.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-transform
Description: ProseMirror document transformations
Latest version: 1.1.3-1

# prosemirror-transform

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-transform/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#transform) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#transform) implements
document [transforms](http://prosemirror\.net/docs/guide/#transform),
which are used by the editor to treat changes as first-class values,
which can be saved, shared, and reasoned about.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/prosemirror-view
Description: ProseMirror's view component
Latest version: 1.6.5-4

# prosemirror-view

[ [**WEBSITE**](http://prosemirror.net) | [**ISSUES**](https://github.com/prosemirror/prosemirror/issues) | [**FORUM**](https://discuss.prosemirror.net) | [**GITTER**](https://gitter.im/ProseMirror/prosemirror) | [**CHANGELOG**](https://github.com/ProseMirror/prosemirror-view/blob/master/CHANGELOG.md) ]

This is a [core module](http://prosemirror.net/docs/ref/#view) of [ProseMirror](http://prosemirror.net).
ProseMirror is a well-behaved rich semantic content editor based on
contentEditable, with support for collaborative editing and custom
document schemas.

This [module](http://prosemirror.net/docs/ref/#view) exports the editor
view, which renders the current document in the browser, and handles
user events.

The [project page](http://prosemirror.net) has more information, a
number of [examples](http://prosemirror.net/examples/) and the
[documentation](http://prosemirror.net/docs/).

This code is released under an
[MIT license](https://github.com/prosemirror/prosemirror/tree/master/LICENSE).
There's a [forum](http://discuss.prosemirror.net) for general
discussion and support requests, and the
[Github bug tracker](https://github.com/prosemirror/prosemirror/issues)
is the place to report issues.

We aim to be an inclusive, welcoming community. To make that explicit,
we have a [code of
conduct](http://contributor-covenant.org/version/1/1/0/) that applies
to communication around the project.
npm package: @jimpick/react
Description: An actively maintained ESM build of React, the JavaScript library for building user interfaces.
Latest version: 16.13.1-3

# `react`

React is a JavaScript library for creating user interfaces.

The `react` package contains only the functionality necessary to define React components. It is typically used together with a React renderer like `react-dom` for the web, or `react-native` for the native environments.

**Note:** by default, React will be in development mode. The development version includes extra warnings about common mistakes, whereas the production version includes extra performance optimizations and strips all error messages. Don't forget to use the [production build](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build) when deploying your application.

## Example Usage

```js
var React = require('react');
```
npm package: @jimpick/react-dom
Description: An actively maintained ESM build of React-DOM, a package for working with the DOM.
Latest version: 16.13.1-3

# `react-dom`

This package serves as the entry point to the DOM and server renderers for React. It is intended to be paired with the generic React package, which is shipped as `react` to npm.

## Installation

```sh
npm install react react-dom
```

## Usage

### In the browser

```js
var React = require('react');
var ReactDOM = require('react-dom');

class MyComponent extends React.Component {
  render() {
    return <div>Hello World</div>;
  }
}

ReactDOM.render(<MyComponent />, node);
```

### On the server

```js
var React = require('react');
var ReactDOMServer = require('react-dom/server');

class MyComponent extends React.Component {
  render() {
    return <div>Hello World</div>;
  }
}

ReactDOMServer.renderToString(<MyComponent />);
```

## API

### `react-dom`

- `findDOMNode`
- `render`
- `unmountComponentAtNode`

### `react-dom/server`

- `renderToString`
- `renderToStaticMarkup`
npm package: @jimpick/react-dom-experimental
Description: An actively maintained ESM build of React-DOM, a package for working with the DOM.
Latest version: 16.13.0-0

# `react-dom`

This package serves as the entry point to the DOM and server renderers for React. It is intended to be paired with the generic React package, which is shipped as `react` to npm.

## Installation

```sh
npm install react react-dom
```

## Usage

### In the browser

```js
var React = require('react');
var ReactDOM = require('react-dom');

class MyComponent extends React.Component {
  render() {
    return <div>Hello World</div>;
  }
}

ReactDOM.render(<MyComponent />, node);
```

### On the server

```js
var React = require('react');
var ReactDOMServer = require('react-dom/server');

class MyComponent extends React.Component {
  render() {
    return <div>Hello World</div>;
  }
}

ReactDOMServer.renderToString(<MyComponent />);
```

## API

### `react-dom`

- `findDOMNode`
- `render`
- `unmountComponentAtNode`

### `react-dom/server`

- `renderToString`
- `renderToStaticMarkup`
npm package: @jimpick/react-experimental
Description: An actively maintained ESM build of React, the JavaScript library for building user interfaces.
Latest version: 16.13.0-0

# `react`

React is a JavaScript library for creating user interfaces.

The `react` package contains only the functionality necessary to define React components. It is typically used together with a React renderer like `react-dom` for the web, or `react-native` for the native environments.

**Note:** by default, React will be in development mode. The development version includes extra warnings about common mistakes, whereas the production version includes extra performance optimizations and strips all error messages. Don't forget to use the [production build](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build) when deploying your application.

## Example Usage

```js
var React = require('react');
```
npm package: @jimpick/react-redux
Description: Official React bindings for Redux
Author: Dan Abramov
Latest version: 3.1.2

React Redux
=========================

Official React bindings for [Redux](https://github.com/gaearon/redux).  
Performant and flexible.

[![build status](https://img.shields.io/travis/rackt/react-redux/master.svg?style=flat-square)](https://travis-ci.org/rackt/react-redux) [![npm version](https://img.shields.io/npm/v/react-redux.svg?style=flat-square)](https://www.npmjs.com/package/react-redux)
[![npm downloads](https://img.shields.io/npm/dm/react-redux.svg?style=flat-square)](https://www.npmjs.com/package/react-redux)
[![redux channel on slack](https://img.shields.io/badge/slack-redux@reactiflux-61DAFB.svg?style=flat-square)](http://www.reactiflux.com)


## Installation

```
npm install --save react-redux
```

React Redux requires **React 0.13 or later.**

## React Native

What you get from `react-redux` is for React.  
For React Native, import from `react-redux/native` instead.

## Documentation

- [Quick Start](docs/quick-start.md#quick-start)
- [API](docs/api.md#api)
  - [`<Provider store>`](docs/api.md#provider-store)
  - [`connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options])`](docs/api.md#connectmapstatetoprops-mapdispatchtoprops-mergeprops-options)
- [Troubleshooting](docs/troubleshooting.md#troubleshooting)

## License

MIT
npm package: @jimpick/react-spinner
Description: Zero configuration loading spinner.
Author: chenglou
Latest version: 0.2.2

# [React](http://facebook.github.io/react/)-spinner

Zero configuration loading spinner.

[Live demo](https://rawgit.com/chenglou/react-spinner/master/example/index.html) from the example folder.

## install

Bower:
```sh
bower install react-spinner
```

Npm:
```sh
npm install react-spinner
```

Plain old script tag:
```html
<script src="path/to/react-spinner/index.js"></script>
```

(Compatible with CommonJS, e.g. Browserify.)

The CSS file:
```html
<link rel="stylesheet" type="text/css" href="path/to/react-spinner.css">
```

The spinner

## API

#### &lt;Spinner />
Adds the spinner, which centers itself based on its container's dimensions. If those are not predefined, simply manually center it by adding more style rules to the exposed `.react-spinner` class [here](https://github.com/chenglou/react-spinner/blob/master/react-spinner.css#L1-L7).

You can also override the `.react-spinner`'s `width` and `height` if you want a bigger or smaller spinner. Everything resizes correctly.

## License

MIT.
npm package: @jimpick/rollup-plugin-node-polyfills
Description: rollup-plugin-node-polyfills ===
Latest version: 0.2.1-1

rollup-plugin-node-polyfills
===

```
npm install --save-dev rollup-plugin-node-polyfills
```

Allows the node builtins to be `require`d/`import`ed.

The following modules include ES6 specific version which allow you to do named imports in addition to the default import and should work fine if you only use this plugin.

- process*
- events
- stream*
- util*
- path
- buffer*
- querystring
- url*
- string_decoder*
- punycode
- http*†
- https*†
- os*
- assert*
- constants
- timers*
- console*‡
- vm*§
- zlib*
- tty
- domain
- dns∆
- dgram∆
- child_process∆
- cluster∆
- module∆
- net∆
- readline∆
- repl∆
- tls∆
- fs˚
- crypto˚


† the http and https modules are actually the same and don't differentiate based on protocol

‡ default export only, because it's console, seriously just use the global

§ vm does not have all corner cases and has less of them in a web worker

∆ not shimmed, just returns mock

˚ optional, add option to enable browserified shim

Crypto is not shimmed and and we just provide the commonjs one from browserify  and it will likely not work, if you really want it please pass `{crypto: true}` as an option.

Not all included modules rollup equally, streams (and by extension anything that requires it like http) are a mess of circular references that are pretty much impossible to tree-shake out, similarly url methods are actually a shortcut to a url object so those methods don't tree shake out very well, punycode, path, querystring, events, util, and process tree shake very well especially if you do named imports.

config for using this with something simple like events or querystring

```js
import nodePolyfills from 'rollup-plugin-node-polyfills';
rollup({
  entry: 'main.js',
  plugins: [
    nodePolyfills()
  ]
})
```

and now if main contains this, it should just work

```js
import EventEmitter from 'events';
import {inherits} from 'util';

// etc
```

Config for something more complicated like http

```js
import nodePolyfills from 'rollup-plugin-node-polyfills';
rollup({
  entry: 'main.js',
  plugins: [
    nodePolyfills()
  ]
})
```

License
===

MIT except ES6 ports of browserify modules which are whatever the original library was.
npm package: @jimpick/rope-sequence
Description: Rope-based persistent sequence type
Author: Marijn Haverbeke
Latest version: 1.2.2-3

# rope-sequence

This module implements a single data type, `RopeSequence`, which is a
persistent sequence type implemented as a loosely-balanced
[rope](https://www.cs.rit.edu/usr/local/pub/jeh/courses/QUARTERS/FP/Labs/CedarRope/rope-paper.pdf).
It supports appending, prepending, and slicing without doing a full
copy. Random access is somewhat more expensive than in an array
(logarithmic, with some overhead), but should still be relatively
fast.

Licensed under the MIT license.

## class `RopeSequence<T>`

`static `**`from`**`(?union<[T], RopeSequence<T>>) → RopeSequence<T>`

Create a rope representing the given array, or return the rope itself
if a rope was given.

`static `**`empty`**`: RopeSequence<T>`

The empty rope.

**`length`**`: number`

The length of the rope.

**`append`**`(union<[T], RopeSequence<T>>) → RopeSequence<T>`

Append an array or other rope to this one, returning a new rope.

**`prepend`**`(union<[T], RopeSequence<T>>) → RopeSequence<T>`

Prepend an array or other rope to this one, returning a new rope.

**`slice`**`(from: ?number = 0, to: ?number = this.length) → RopeSequence<T>`

Create a rope repesenting a sub-sequence of this rope.

**`get`**`(index: number) → T`

Retrieve the element at the given position from this rope.

**`forEach`**`(f: fn(element: T, index: number) → ?bool, from: ?number, to: ?number)`

Call the given function for each element between the given indices.
This tends to be more efficient than looping over the indices and
calling `get`, because it doesn't have to descend the tree for every
element.

`to` may be less then `from`, in which case the iteration will happen
in reverse (starting at index `from - 1`, down to index `to`.

The iteration function may return `false` to abort iteration early.

**`map`**`(f: fn(element: T, index: number) → U, from: ?number, to: ?number) → [U]`

Map the given functions over the elements of the rope, producing a
flat array.

**`flatten`**`() → [T]`

Return the content of this rope as an array.