# nhz.lib

> NHZ Library

Latest version **0.0.21** (published 2016-01-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install nhz.lib
pnpm add nhz.lib
yarn add nhz.lib
bun add nhz.lib
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.21 |
| Published | 2016-01-28 |
| First published | 2015-05-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | nhz.io |
| Maintainers | nhz.io |
| Keywords | nhz.io, nhz.lib, coffee-script, coffeescript, coffee |

## Links

- npm: https://www.npmjs.com/package/nhz.lib
- Repository: https://github.com/nhz-io/cnl
- Issues: https://github.com/nhz-io/cnl/issues
- npm.io page: https://npm.io/package/nhz.lib

## Dependencies (2)

- [extends__](https://npm.io/package/extends__.md) 0.0.8
- [abstract-mapper](https://npm.io/package/abstract-mapper.md) ^0.1.5

## Recent versions

- 0.0.21 (latest) — 2016-01-28
- 0.0.20 — 2015-06-13
- 0.0.19 — 2015-06-13
- 0.0.18 — 2015-06-13
- 0.0.17 — 2015-05-29
- 0.0.16 — 2015-05-29
- 0.0.15 — 2015-05-29
- 0.0.14 — 2015-05-28
- 0.0.13 — 2015-05-28
- 0.0.12 — 2015-05-28
- 0.0.11 — 2015-05-28
- 0.0.10 — 2015-05-28
- 0.0.9 — 2015-05-27
- 0.0.8 — 2015-05-24
- 0.0.7 — 2015-05-23
- … 6 more at https://npm.io/package/nhz.lib/versions

## README

# nhz.lib

## NHZ Library [![Build Status][travis-image]][travis-url]
[![NPM][npm-image]][npm-url]

## Install
```
npm install --save nhz.lib
```

## Contents:

### nhz.lib/error/unimplemented
Returns an instance of `Error` with *UNIMPLEMENTED* message
```coffeescript
unimplemented = require 'nhz.lib/dist/error/unimplemented'
throw unimplemented()
```

### nhz.lib/array/copy
Returns an array copy (shallow)
```coffeescript
copy = require 'nhz.lib/dist/array/copy'
copy [1,2,3]
```

### nhz.lib/object/copy
Returns an object copy (shallow)
```coffeescript
copy = require 'nhz.lib/dist/object/copy'
copy a:'1', b:'2', c:'3'
```

### nhz.lib/property/descriptor
Returns object property's `descriptor` ([Object.getOwnPropertyDescriptor()][Object.getOwnPropertyDescriptor-url])
```coffeescript
descriptor = require 'nhz.lib/dist/property/descriptor'
descriptor {foo:1}, 'foo'
```

Updates object property's `descriptor` ([Object.defineProperty()][Object.defineProperty-url])
```coffeescript
descriptor = require 'nhz.lib/dist/property/descriptor'
descriptor {foo:1}, 'foo', writable:no
```

### nhz.lib/property/getter
Returns object property's `getter`
```coffeescript
getter = require 'nhz.lib/dist/property/getter'
getter {foo:1}, 'foo'
```

Updates object property's `getter`
```coffeescript
getter = require 'nhz.lib/dist/property/getter'
getter {foo:1}, 'foo', -> 'bar'
```

### nhz.lib/property/setter
Returns object property's `setter`
```coffeescript
setter = require 'nhz.lib/dist/property/setter'
setter {foo:1}, 'foo'
```

Updates object property's `setter`
```coffeescript
setter = require 'nhz.lib/dist/property/setter'
setter {foo:1}, 'foo', ->
```

### nhz.lib/property/is-writable
Returns object property's `writable` flag
```coffeescript
isWritable = require 'nhz.lib/dist/property/is-writable'
isWritable {foo:1}, 'foo'
```

Updates object property's `writable` flag
```coffeescript
isWritable = require 'nhz.lib/dist/property/is-writable'
isWritable {foo:1}, 'foo', no
```

### nhz.lib/property/is-enumerable
Returns object property's `enumerable` flag
```coffeescript
isEnumerable = require 'nhz.lib/dist/property/is-enumerable'
isEnumerable {foo:1}, 'foo'
```

Updates object property's `enumerable` flag
```coffeescript
isEnumerable = require 'nhz.lib/dist/property/is-enumerable'
isEnumerable {foo:1}, 'foo', no
```

### nhz.lib/property/is-configurable
Returns object property's `configurable` flag
```coffeescript
isConfigurable = require 'nhz.lib/dist/property/is-configurable'
isConfigurable {foo:1}, 'foo'
```

Updates object property's `configurable` flag
```coffeescript
isConfigurable = require 'nhz.lib/dist/property/is-configurable'
isConfigurable {foo:1}, 'foo', no
```

### nhz.lib/browser/next-animation-frame
Callbacks for the next animation frame. Chainable with `.then(callbacks...)`.
Chained callbacks will be called upcoming frames. One group per frame!

```coffeescript
next = require 'nhz.lib/dist/browser/next-animation-frame'
next -> document.body.style.backgroundColor =  'red'
.then -> document.body.style.backgroundColor = 'green'
.then -> document.body.style.backgroundColor = 'blue'
```

### nhz.lib/geometry/rectangle/has
Checks if point belongs to rectangle.
- rectangle is an array: [x, y, width, height]
- point is an array: [x, y]

```coffeescript
has = require 'nhz.lib/dist/geometry/rectangle/has'
has [1,1,2,2], [1.5, 1.5]
```

### nhz.lib/geometry/rectangle/has
Checks if point belongs to circle.
- circle is an array: [x, y, radius]
- point is an array: [x, y]

```coffeescript
has = require 'nhz.lib/dist/geometry/circle/has'
has [1,1,2], [2.3, 2.3]
```

### nhz.lib/async/parallel
Call `tasks` in parallel and after they finished,
call the `callback` with errors and results

```coffeescript
parallel = require 'nhz.lib/dist/async/parallel'
parallel ((cb) -> cb null, 1), ((cb) -> cb null, 2)
.timeout 300
.then (err, res) ->
```

Build
-----
```
git clone https://github.com/nhz-io/nhz.lib.git
cd nhz.lib
npm install
gulp
```

LICENSE
-------
#### [MIT](LICENSE)

[HISTORY](HISTORY.md)
---------------------

[travis-image]: https://travis-ci.org/NHZio/nhz.lib.svg
[travis-url]: https://travis-ci.org/NHZio/nhz.lib

[npm-image]: https://nodei.co/npm/nhz.lib.png
[npm-url]: https://nodei.co/npm/nhz.lib
[extends__-url]: https://github.com/nhz-io/extends__
[Object.getOwnPropertyDescriptor-url]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor
[Object.defineProperty-url]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty

---
_Source: https://npm.io/package/nhz.lib · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
