open-index/open-npm huggingface dataset:
npm package: @isoden/eveemi
Description: Tiny Event Module
Author: YU ISODA
Latest version: 1.1.7
Deprecated: please use eventemitter directly

EveEmi
===

[![npm](https://img.shields.io/npm/v/@isoden/eveemi.svg?style=flat-square)](https://www.npmjs.com/package/@isoden/eveemi)

## Installation

```
$ npm install @isoden/eveemi --save
```

## Usage

```js
var Model = function () {
  EveEmi.apply(this, arguments);

  this.attrs = {};
};
Model.prototype = new EveEmi();

Model.prototype.set = function (key, value) {
  this.attrs[key] = value;
  this.trigger('set');
};

var model = new Model();

model.on('set', function () {
  alert('set!');
});

model.set('name', 'isoden'); // alert: 'set!'

```


## API

### on(type: string, callback: function[, ctx: object, once: boolean = false])
### once(type: string, callback: function[, ctx: object])
### off(type: string, func: function)
### listenTo(target: EveEmi, type: string, callback: function[, ctx: object, once: boolean = false])
### listenToOnce(target: EveEmi, type: string, callback: function[, ctx: object])
### trigger(type: string, [...args])

## License

MIT License
http://isoden.mit-license.org
npm package: @isoden/eveemi-compat
Description: Tiny Event Module
Author: YU ISODA
Latest version: 1.1.2
Deprecated: please use eventemitter directly

eveemi-compat
===

[![npm](https://img.shields.io/npm/v/@isoden/eveemi-compat.svg?style=flat-square)](https://www.npmjs.com/package/@isoden/eveemi-compat)

## Installation

```
$ npm install @isoden/eveemi-compat --save
```

## Usage

```js
var Model = function () {
  EveEmi.apply(this, arguments);

  this.attrs = {};
};
Model.prototype = new EveEmi();

Model.prototype.set = function (key, value) {
  this.attrs[key] = value;
  this.trigger('set');
};

var model = new Model();

model.on('set', function () {
  alert('set!');
});

model.set('name', 'isoden'); // alert: 'set!'

```


## API

### on(type: string, callback: function[, ctx: object, once: boolean = false])
### once(type: string, callback: function[, ctx: object])
### off(type: string, func: function)
### listenTo(target: EveEmi, type: string, callback: function[, ctx: object, once: boolean = false])
### listenToOnce(target: EveEmi, type: string, callback: function[, ctx: object])
### trigger(type: string, [...args])

## License

MIT License
http://isoden.mit-license.org
npm package: @isoden/explode
Description: [![npm (scoped)](https://img.shields.io/npm/v/@isoden/explode.svg?style=flat-square)](https://github.com/isoden/explode)
Author: isoden
Latest version: 1.0.5

# isoden/explode

[![npm (scoped)](https://img.shields.io/npm/v/@isoden/explode.svg?style=flat-square)](https://github.com/isoden/explode)

## Installation

```
$ npm install isoden/explode --save
```

## Usage

```js
import explode from '@isoden/explode';

explode('We 💓 TypeScript!');
  // => ['W', 'e', ' ', '💓', ' ', 'T', 'y', 'p', 'e', 'S', 'c', 'r', 'i', 'p', 't', '!']
```

## License

Under The MIT License.
npm package: @isoden/ngx-swipe
Description: An Angular module to add directive that emit swipe event as `Output`.
Author: isoden
Latest version: 1.0.1

# ngx-swipe

An Angular module to add directive that emit swipe event as `Output`.

## Installation

```console
npm install @isoden/ngx-swipe
```

## Usage

1. Import `SwipeModule`

```ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { SwipeModule } from '@isoden/ngx-swipe';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    SwipeModule,
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

2. Use directive

```html
<div
  (ngxSwipeX)="onSwipeX($event)"
  (ngxSwipeY)="onSwipeY($event)"
></div>
```

## Limitation

ngx-swipe uses [PointerEvent](https://developer.mozilla.org/ja/docs/Web/API/PointerEvent).  
please use polyfill (e.g. [PEP](https://github.com/jquery/PEP)) if you need.  
[Pointer events - caniuse](https://caniuse.com/#feat=pointer)

## License

[MIT License](https://isoden.mit-license.org)
npm package: @isoden/ngx-unless
Description: An Angular module to add unless syntax to template.
Author: isoden
Latest version: 1.0.1

# ngx-unless

An Angular module to add unless syntax to template.

## Installation

```console
npm install @isoden/ngx-unless
```

## Usage

1. Import `UnlessModule`

```ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { UnlessModule } from '@isoden/ngx-unless';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    UnlessModule,
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

2. Use directive

```html
<div *ngxUnless="false">unless is working!</div>
```

## License

[MIT License](https://isoden.mit-license.org/)
npm package: @isoden/polyfill-io-html-webpack-plugin
Description: ## Installation
Author: isoden
Latest version: 0.0.3

# @isoden/polyfill-io-html-webpack-plugin

## Installation

```
$ npm install @isoden/polyfill-io-html-webpack-plugin --save-dev
```

## Usage

```js
// webpack.config.js

const HtmlWebpackPlugin = require('html-webpack-plugin')
const PolyfillIoHtmlWebpackPlugin = require('@isoden/polyfill-io-html-webpack-plugin')

module.exports = (env) => {
  ...
  plugins: [
    new HtmlWebpackPlugin(),
    new PolyfillIoHtmlWebpackPlugin({
      disabled: !env.production // it will only work in production build
    }),
  ]
}
```
npm package: @isoden/promise-polyfill
Description: [reinventing the wheel] ES6 Promise
Author: isoden
Latest version: 0.1.1

promise-polyfill
===

[![npm](https://img.shields.io/npm/v/@isoden/promise-polyfill.svg?style=flat-square)](https://www.npmjs.com/package/@isoden/promise-polyfill)

**reinventing the wheel** ES6 Promise

lightweight 4kb!

## Installation

```
$ npm install @isoden/promise-polyfill --save
```

## Usage

```js
import Promise from '@isoden/promise-polyfill';

new Promise((resolve) => {
  setTimeout(resolve, 1000);
})
.then(() => {
  console.log('after 1000ms');
});
```

## Todo

- [ ] Write test code! :memo:
- [ ] Write docs! :memo:

## Development

```
$ npm install
$ npm start # watching src files
$ npm test  # running test
```

## License

MIT License
[http://isoden.mit-license.org](http://isoden.mit-license.org)  
Maintained by [isoden](http://github.com/isoden)
npm package: @isoden/tsconfig
Description: ## Installation
Author: isoden
Latest version: 1.1.0

# @isoden/tsconfig

## Installation

```
$ npm install @isoden/tsconfig --save
```

## Usage

tsconfig.json

```json
{
  "extends": "./node_modules/@isoden/tsconfig/tsconfig.json"
}
```

## License

Under The MIT License - https://isoden.mit-license.org/
npm package: @isoden/url-dispatcher
Description: minimal url dispatcher for client side.
Author: isoden
Latest version: 1.0.0

# @isoden/url-dispatcher

minimal url dispatcher for client side.

---

## Installation

```
$ npm install @isoden/url-dispatcher --save
```

## Usage

```ts
// routing.ts
import { UrlDispatcher } from '@isoden/url-dispatcher'

export class Dispatcher extends UrlDispatcher {
  routes = {
    '/'             : this.indexAction.bind(this),
    '/about'        : this.aboutAction.bind(this),
    '/users/:userId': this.userAction.bind(this)
  }

  indexAction() {
    console.log('here is index')
  }

  aboutAction() {
    console.log('here is about')
  }

  userAction() {
    const userId = this.params('userId')

    console.log(`here is user => ${ userId }`)
  }
}

```

```ts
// main.ts

import { Dispatcher } from './routing'

const dispatcher = new Dispatcher()

Dispatcher.dispatch('/').then(() => {
  // matched routing
  // called Dispatcher#indexAction
})

Dispatcher.dispatch('/404').catch(() => {
  // unmatched routing
})

```

### Note

The following implementation is required.

- Object.entries
- ES6 Promise
- ES6 Map

Please import alternate implementation as necessary.

```
$ npm install core-js --save
```

```ts
import 'core-js/fn/object/entries'
import 'core-js/fn/promise'
import 'core-js/fn/map'
```

## License

Under The MIT License
npm package: @isoden/vector
Description: Tiny Vector Calculator
Author: isoden
Latest version: 1.0.0

# Vector

[![npm](https://img.shields.io/npm/v/@isoden/vector.svg?style=flat-square)](https://www.npmjs.com/package/@isoden/vector)


## Installation

```
$ npm install --save @isoden/vector
```

## License

Under The MIT License