open-index/open-npm huggingface dataset:
npm package: @minui/wxc-tab
Description: MinUI 小程序组件 - 选项卡
Author: Min Team
Latest version: 1.0.8

# wxc-tab

> MinUI 小程序组件 - 选项卡

## Install

``` bash
$ min install @minui/wxc-tab
```

## API

### Tab【props】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`default-index`             | [说明]：当前激活面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`animate`                   | [说明]：是否开启动画。<br>[类型]：`Boolean`<br>[默认值]：`false`
|`component-id`              | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>
|`bindtabchange`             | [说明]：tab切换的回调函数
|`text-color`                | [说明]：文字颜色。<br>[类型]：`String`<br>[默认值]：`#000`
|`active-text-color`         | [说明]：选中文字颜色。<br>[类型]：`String`<br>[默认值]：`#ff5777`
|`line-color`                | [说明]：线条颜色。<br>[类型]：`String`<br>[默认值]：`#ddd`
|`active-line-color`         | [说明]：选中线条颜色。<br>[类型]：`String`<br>[默认值]：`#ff5777`
|`full-screen`               | [说明]：tab 组件全屏设置。<br>[类型]：`Boolean`<br>[默认值]：`false`

### Tab-Panel【props】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`tab-index`           | [说明]：激活当前面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`label`               | [说明]：选项卡头部显示的文字。<br>[类型]：`String`<br>
|`component-id`        | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>

### Tab-Label【props】

自定义头部时，需要在外层加slot="tablabel"

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`tab-index`           | [说明]：激活当前面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`component-id`        | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>

## Link
||地址|
|--|---|
||tab 组件文档 <br> [https://meili.github.io/min/docs/minui/index.html#tab](https://meili.github.io/min/docs/minui/index.html#tab)<br>|
||tab 组件源码 <br> [https://github.com/meili/minui/tree/master/packages/wxc-tab](https://github.com/meili/minui/tree/master/packages/wxc-tab)<br>|
||MinUI 组件库 <br> [https://github.com/meili/minui](https://github.com/meili/minui) <br>|

## Preview
![tab](https://s10.mogucdn.com/mlcdn/c45406/171107_7eaagk5jeh09jj72h677gcd2g6j2c_480x480.jpg_225x999.jpg)

##  ChangeLog

#### v1.0.5（2018.04.27）
- panel 高度自适应

#### v1.0.4（2018.02.09）
- 新增 full-screen 属性

#### v1.0.3（2018.01.04）

- 修复点击tab时的定位问题

#### v1.0.2（2017.11.02）

- update .npmignore

#### v1.0.1（2017.10.24）

- 初始版本
npm package: @minui/wxc-toast
Description: MinUI 小程序组件 - 提示框
Author: Min Team
Latest version: 1.0.9

# wxc-toast

> MinUI 小程序组件 - 提示框

## Install

``` bash
$ min install @minui/wxc-toast
```

## API

### Toast【props】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`is-show`             | [说明]： `toast` 显示控制字段。<br>类型：`Boolean`<br>默认值：`false`|
|`text`                | [说明]：提示的文案，必填。<br>类型：`String`<br>默认值：`""` <br>     |
|`icon`                | [说明]：图标。<br>类型：`String`<br>默认值：`""` <br> 可选值详见 `wxc-icon` 组件中的 `type` 属性    |
|`icon-image`          | [说明]：【已废弃，请使用 `src` 】自定义图标图片的路径，优先级高于 icon。<br>类型：`String`<br>默认值：`""` <br>       |
|`src`                 | [说明]：自定义图标图片的路径，优先级高于 icon。<br>类型：`String`<br>默认值：`""` <br>       |
|`icon-color`          | [说明]：图标颜色。<br>类型：`String`<br>默认值：`"#fff"` <br> |
|`duration`            | [说明]：提示的延迟时间，单位毫秒。<br>类型：`Number`<br>默认值：`2000` <br>  |
|`bind:success`        | [说明]：调用成功的回调函数。|

### Toast【methods】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`show(msg)`           | [说明]：显示toast。<br>[类型]：`Function`<br>[参数]：`String`<br>[返回]：`void`|

## Link
||地址|
|--|---|
||toast 组件文档 <br> [https://meili.github.io/min/docs/minui/index.html#toast](https://meili.github.io/min/docs/minui/index.html#toast)<br>|
||toast 组件源码 <br> [https://github.com/meili/minui/tree/master/packages/wxc-toast](https://github.com/meili/minui/tree/master/packages/wxc-toast)<br>|
||MinUI 组件库 <br> [https://github.com/meili/minui](https://github.com/meili/minui) <br>|

## Preview
![toast](https://s10.mogucdn.com/mlcdn/c45406/171107_1361j09d04c4426a5gd743i7kk5hg_480x480.jpg_225x999.jpg)

##  ChangeLog
#### v1.0.8（2018.03.29)
- show() 方法增加 message 参数

#### v1.0.7（2018.01.16)
- icon-image 属性更改为 src，1.0.7 及以上版本的 min 支持本地图片路径

#### v1.0.6（2018.01.09)
- z-index 层级规范方案修改

#### v1.0.3（2018.01.04）

- 修复自定义 icon 时，icon 的颜色样式问题，规范 z-index 规范

#### v1.0.2（2017.11.02）

- update .npmignore

#### v1.0.1（2017.10.24）

- 初始版本
npm package: @minuibeta/wxc-tab-beta
Description: MinUI 小程序组件 - 选项卡
Author: Min Team
Latest version: 1.0.0

# wxc-tab

> MinUI 小程序组件 - 选项卡

## Install

``` bash
$ min install @minui/wxc-tab
```

## API

### Tab【props】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`default-index`             | [说明]：当前激活面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`animate`                   | [说明]：是否开启动画。<br>[类型]：`Boolean`<br>[默认值]：`false`
|`component-id`              | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>
|`bindonchange`              | [说明]：tab切换的回调函数
|`text-color`                | [说明]：文字颜色。<br>[类型]：`String`<br>[默认值]：`#000`
|`active-text-color`         | [说明]：选中文字颜色。<br>[类型]：`String`<br>[默认值]：`#ff5777`
|`line-color`                | [说明]：线条颜色。<br>[类型]：`String`<br>[默认值]：`#ddd`
|`active-line-color`         | [说明]：选中线条颜色。<br>[类型]：`String`<br>[默认值]：`#ff5777`

### Tab-Panel【props】

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`tab-index`           | [说明]：激活当前面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`label`               | [说明]：选项卡头部显示的文字。<br>[类型]：`String`<br>
|`component-id`        | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>

### Tab-Label【props】

自定义头部时，需要在外层加slot="tablabel"

| 名称                  | 描述                         |
|----------------------|------------------------------|
|`tab-index`           | [说明]：激活当前面板的 index。<br>[类型]：`Number`<br>[默认值]：`0`
|`component-id`        | [说明]：同时调用两个tab时，需要指定component-id。<br>[类型]：`String`<br>

##  ChangeLog

#### v1.0.0（2017.10.24）

- 初始版本
npm package: @minupalaniappan/brise
Description: A breeze of fresh air when using TailwindCSS.
Author: Patrick Gotthardt
Latest version: 0.1.0

# brise

A breeze of fresh air when using TailwindCSS.

`brise` offers an API that is very similar to styled-components but leverages TailwindCSS (or any other global CSS classnames) instead.

## Example

```js
import { tw } from 'brise';

const Headline = tw.h1`
  text-3xl
  text-blue-500
`;

const UnderlinedHeadline = tw(Headline)`
  underline
  ${props => (props.important ? 'font-bold' : '')}
`;
```

## Reusing property related styles

The `styles` helper can be used to create style compositions that can be reused across multiple components but maintain the ability to access properties.

```js
const withImportant = styles`
  ${props => (props.important ? 'text-bold' : '')}
`;

const Text = tw`
  text-base
  ${withImportant}
`;

const Headline = tw`
  text-3xl
  underline
  ${withImportant}
`;
```

## Switching on properties

The `property` helper can be used to map from properties to styles.

```js
const Headline = tw.h1`
  text-blue-600
  ${property(
    'size', // name of the property
    {
      small: 'text-2xl', // value can be a string
      medium: styles`text-4xl`, // or a reusable style
      large: props => 'text-6xl', // or a function
    },
    'medium' // default value
  )}
`;
```

## Using Custom CSS

It is possible to use the `css` utility from `emotion` and probably other CSS-in-JS libraries to include custom CSS.

```js
const Button = tw.button`
  py-2 px-4
  border border-transparent
  rounded
  bg-blue-500
  text-white
  hover:bg-blue-700
  ${css`
    &:hover {
      text-decoration: underline;
    }
  `}
`;
```
npm package: @minus-ui/components
Description: ❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다. `@minus-ui/core`를 이용하세요!
Author: park minkyu
Latest version: 0.2.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @minus-ui/components

❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다.
`@minus-ui/core`를 이용하세요!

[core 보러가기](https://github.com/Project-Minus/minus-ui/tree/develop/packages/core)


~~`@minus-ui/components`는 `minus-ui`의 핵심 UI 컴포넌트들을 제공하는 패키지입니다.~~  
~~재사용 가능한 컴포넌트들을 포함하며, `Snackbar`, `Tooltip` 등과 같은 인터랙티브 요소를 제공합니다.~~
npm package: @minus-ui/core
Description: awesome minus-ui toolkit with tailwind plugin
Author: park minkyu
Latest version: 0.9.9

# @minus-ui/core

\*\*`@minus-ui/core`\*\*는 `minus-ui`의 모든 구성 요소를 통합하여 한 번에 사용할 수 있도록 제공하는 패키지입니다.\
이 패키지를 사용하면 `@minus-ui/components`, `@minus-ui/styles`, `@minus-ui/types`를 개별적으로 설치할 필요 없이, 한 번의 설치로 모두 사용할 수 있습니다.

## 📥 설치

```sh
pnpm add @minus-ui/core
```

## 📁 디렉터리 구조

```
packages/core/
│── src/
│   ├── index.ts    # 모든 모듈 통합
│── package.json
│── tsconfig.json
│── vite.config.ts
```

## 🎯 주요 기능

- `@minus-ui/components`, `@minus-ui/styles`, `@minus-ui/types`를 한 번에 제공
- 별도 개별 패키지 설치 없이 모든 기능을 바로 사용 가능
- 공통 설정을 관리하여 일관된 스타일 및 타입 적용 가능

## 🚀 사용 방법

### 1️⃣ **컴포넌트, 스타일, 타입 한 번에 사용하기**

```tsx
import { Snackbar, Tooltip } from "@minus-ui/core";
import "@minus-ui/core/tooltip.css";

function App() {
  return (
    <>
      <Tooltip contents={<button>Hover me</button>} bubbleContents="Tooltip text" position="bottom" />
    </>
  );
}
```

### 2️⃣ **Snackbar 사용 예제 (비동기)**

```tsx
import { Snackbar } from "@minus-ui/core";

async function showSnackbar() {
  await Snackbar.success({
    message: "Operation successful!",
    autoClose: false,
    snackbarPosition: "bottom",
  });
  
  // autoClose가 false이면 직접 닫아야 함
  setTimeout(() => {
    Snackbar.unmount();
  }, 5000);
}

showSnackbar();
```

## 🛠️ 개발 및 기여

이 프로젝트는 [pnpm](https://pnpm.io/)을 사용하여 관리됩니다.

### 1️⃣ 패키지 설치

```sh
pnpm install
```

### 2️⃣ 개발 서버 실행

```sh
pnpm dev
```

### 3️⃣ 빌드

```sh
pnpm build
```

## 📜 라이선스

이 프로젝트는 MIT 라이선스를 따릅니다.
npm package: @minus-ui/styles
Description: ❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다. `@minus-ui/core`를 이용하세요!
Author: park minkyu
Latest version: 0.2.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @minus-ui/styles

❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다.
`@minus-ui/core`를 이용하세요!

[core 보러가기](https://github.com/Project-Minus/minus-ui/tree/develop/packages/core)


~~`@minus-ui/styles`는 `minus-ui`의 스타일 시스템을 담당하는 패키지입니다.~~  
~~컴포넌트의 스타일을 개별적으로 적용하거나, 다른 UI 라이브러리와 조합하여 사용할 수 있도록 설계되었습니다.~~
npm package: @minus-ui/types
Description: ❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다. `@minus-ui/core`를 이용하세요!
Author: park minkyu
Latest version: 0.2.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @minus-ui/types

❗해당 패키지는 더 이상 지원, 수정, 업데이트 되지 않습니다.
`@minus-ui/core`를 이용하세요!

[core 보러가기](https://github.com/Project-Minus/minus-ui/tree/develop/packages/core)


~~`@minus-ui/types`는 `minus-ui`에서 사용되는 TypeScript 타입 정의를 제공하는 패키지입니다.~~
~~이 패키지를 사용하면 컴포넌트와 스타일을 더 안전하게 사용할 수 있으며, TypeScript의 정적 분석을 활용할 수 있습니다.~~
npm package: @minuscode/weezevent-client
Description: Weezevent API client
Author: Minuscode
Latest version: 0.0.10

# Weezevent Client

A simple READ ONLY [Weezevent](https://api.weezevent.com/) client for node.

## Installation

Using npm:

```bash
$ npm install @minuscode/weezevent-client
```

Using yarn:

```bash
$ yarn add @minuscode/weezevent-client
```

## Example

```javascript
import { Weezevent } from '@minuscode/weezevent-client';

(async function test() {
  try {
    const weezevent = new Weezevent({
      username: 'XXX',
      password: 'YYY',
      api_key: 'ZZZ',
    });
    const events = await weezevent.events.list();

    console.log(events.data);
  } catch (error) {
    if (error.response) {
      // The request was made and the server responded with a status code
      // that falls out of the range of 2xx
      console.log(error.response.data);
      // console.log(error.response.status);
      console.log(error.response.headers);
    } else if (error.request) {
      // The request was made but no response was received
      // `error.request` is an instance of XMLHttpRequest in the browser and an instance of
      // http.ClientRequest in node.js
      console.log(error.request);
    } else {
      // Something happened in setting up the request that triggered an Error
      console.log('Error', error.message);
    }
    console.log(error.config);
  }
})();
```

## Usage

### Events

You can list events with:

```js
  weezevent.events.list(options?);
```

You can get a event with:

```js
  weezevent.events.get(id);
```

You can get the events categories with:

```js
  weezevent.events.categories();
```

### Tickets

You can list event tickets with:

```js
  weezevent.tickets.list(options?);
```

You can get a ticket stat with:

```js
  weezevent.tickets.get(event_id);
```

### Participants

You can list participants with:

```js
  weezevent.participants.list(options?);
```

You can get answers from a participant with:

```js
  weezevent.participants.answers(id);
```

### Dates

You can get dates of a event with:

```js
  weezevent.dates.list({id_event: 12345});
```


| Url                       | Status |
| ------------------------- | ------ |
| /auth/access_token        | ✅     |
| /events                   | ✅     |
| /event/:id/details        | ✅     |
| /event/search/            | ❌     |
| /event/categories/        | ✅     |
| /dates                    | ✅     |
| /tickets                  | ✅     |
| /tickets/:id/stats        | ✅     |
| /participants             | ✅     |
| /participants/:id/answers | ✅     |
| /scan/settings            | ❌     |
| /scan/user                | ❌     |
npm package: @minutemailer/api
Description: `yarn add @minutemailer/api`
Author: Tobias Bleckert
Latest version: 0.12.2

# Javascript client for Minutemailer API

`yarn add @minutemailer/api`

## Simple usage

```js
import Minutemailer from "@minutemailer/api";

const token = ""; // Create token at https://app.minutemailer.com/u/settings/api then insert here
const minutemailer = new Minutemailer(token);

// Fetch all contact lists
minutemailer
    .contactList()
    .index()
    .then(console.log)
    .catch(console.error);
```
npm package: @minutemailer/middleman
Description: Simple request handler for API requests.
Latest version: 0.0.9
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Middleman

Simple request handler for API requests.
The goal is to use Middleman to configure global validation and response handlers.

The Middleman has built in handler for these responses:
- Unauthenticated (401)
- Session expired (418)
- General error (everything that is above 300)

The appropriate exception will be thrown when any of these statuses is present in the response.

## Usage

The recommended way is to create a class that extends to Middleman class so you can
fully configure it to suit the needs of your app.

The `handleSuccess` method is a good place to start. A place where you can add redirects
and other defined response rules you might have.

```js
import Middleman from 'middleman';
import Notifications from 'notifications';

class API extends Middleman {
    /**
     * Handle success responses
     * @param {Object}  data Minutemailer data
     */
    handleSuccess = (data) => {
        if ('notifications' in data) {
            Notifications.add(data.notification);
        }

        return data;
    };
}

const photos = new API('/api/photos');

photos.get().then(console.log);
```
npm package: @minutemailer/notifications
Description: Super simple, lightweight notifications with zero dependencies
Author: Tobias Bleckert
Latest version: 0.0.3
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Notifications

[![forthebadge](https://forthebadge.com/images/badges/fuck-it-ship-it.svg)](https://forthebadge.com)
npm package: @minutemailer/select
Description: Headless select box for React with fuzzy search and keyboard navigation
Author: Minutemailer
Latest version: 0.0.17

# Headless select box for React

A powerful, headless select box component for React that allows you to build your own select box UI.

## Installation
    
```bash
npm i @minutemailer/select
```

## Usage

```jsx
import { useState } from 'react';
import { Select } from '@minutemailer/select';

const options = [
  { value: '1', label: 'One' },
  { value: '2', label: 'Two' },
  { value: '3', label: 'Three' },
];

function SelectBox() {
    const options = useSelector((state) => state.options);
    const { q, search } = useSearch();
    const { onKeyUp, onKeyDown } = useKeyboard();
    
    return ...;
}

function App() {
    const [value, setValue] = useState('1');
    
    return (
        <Select options={options} value={value} onChange={setState}><SelectBox /></Select>
    );
};
```
npm package: @minutemailer/uni
Description: Simple, lightweight Flux inspired uni-directional dataflow architecture
Author: Tobias Bleckert
Latest version: 0.0.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Minutemailer Uni

Simple, lightweight Flux inspired uni-directional dataflow architecture.
The goal of Minutemailer Uni is to only include the bare minimum of what we need
and only extend it when needed.

## Differences from Flux

The main difference between Uni and Flux is that there is no dispatchers. Dispatchers, at least for now,
was overkill and an unnecessary layer. Other than that the boilerplate code has been reduced by automating event names, action methods and by merging actions and stores.

## Usage

As mentioned, we no longer need to create a file for each stage in the dataflow, including constants for actions and event names.

Creating actions:

```js
import { createActions } from 'uni';
  
const actions = createActions([
    'addContact',
    'editContact',
    'destroyContact',
]);
```

What `createActions` does is to transform your array of actions into "action objects". The output from the example will be as follows:

```js
{
    addContact: {
        method: 'onAddContact',
        events: {
            init: 'addContact.init',
            done: 'addContact.done',
            error: 'addContact.error',
        }
    },
    editContact: {
        method: 'onEditContact',
        events: {
            init: 'editContact.init',
            done: 'editContact.done',
            error: 'editContact.error',
        }
    },
    destroyContact: {
        method: 'onDestroyContact',
        events: {
            init: 'destroyContact.init',
            done: 'destroyContact.done',
            error: 'destroyContact.error',
        }
    }
}
```

When we have our actions we can create the **Store**.

```js
import { Store } from 'uni';
  
class Contacts extends Store {
    constructor(actions) {
        super(actions);
  
        this.state = {
            contacts: []
        };
    }
  
    onAddContact(payload, events) {
        // code
    }
  
    onEditContact(payload, events) {
        // code
    }
  
    onDestroyContact(payload, events) {
        // code
    }
}

const contacts = new Contacts(actions);
```

The Uni Store takes care of handling the actions and binding the methods. The final step is to use the store.

```js
import Contacts from './Contacts';
  
Contacts.on('addContact.init', () => {
    // event handler
});
  
Contacts.addContact(payload);
```
npm package: @minutrade/br-address-parser
Description: A simple parser for brazilian addresses
Author: Rafael Schettino
Latest version: 1.1.1

# br-address-parser

This module is a simple parser for Brazilian addresses. This receives a complete address string and split it in 'street', 'number', 'complement', 'neighborhood', 'city' and 'state'.

## How to install

```
npm install @minutrade/br-address-parser --save
```

## How to use

```javascript
const brAddressParser = require('@minutrade/br-address-parser');

const completeAddress = 'Av. Brasil, 1245 - Bloco 2 Ap 203 - Centro - Belo Horizonte - MG';
const parsedAddress = brAddressParser.parse(completeAddress);
```
The above example transforms the string `"Av. Brasil, 1245 - Bloco 2 Ap 203 - Centro - Belo Horizonte - MG"` into the following object: 
```json
{
    "street": "Av. Brasil",
    "number": "1245",
    "complement": "Bloco 2 Ap 203",
    "neighborhood": "Centro",
    "city": "Belo Horizonte",
    "state": "MG"
}
```

If you want to fill some fields with default values when they are empty, then you can use `defaultFields` parameter:
 ```javascript
 const completeAddress = 'AV ANAVILLE 1-QD 3 LT 4 - RESIDENCIAL ANAVILLE - ANAPOLIS - GO';
 const parsedAddress = brAddressParser.parse(completeAddress, { number: 'S/N' });
 ```
 The above example transforms will put `S/N` in the `number` field, because parsed address returns empty `number`:
 ```json
 {
    "street": "AV ANAVILLE 1",
    "number": "S/N",
    "complement": "QD 3 LT 4",
    "neighborhood": "RESIDENCIAL ANAVILLE",
    "city": "ANAPOLIS",
    "state": "GO"
}
 ```

 When the address cannot be parsed, the `parse` function returns `null`.

## How to Test

```
npm test
```

## License

This project is licensed under the terms of the [MIT license](LICENSE).