open-index/open-npm huggingface dataset:
npm package: @ohmi/checkbox
Description: React Native Checkbox native modules for Android , iOS , harmony and Windows
Latest version: 0.5.17-rc.1

# @react-native-ohos/checkbox

This project is based on [@react-native-community/checkbox](https://github.com/react-native-checkbox/react-native-checkbox)

## Documentation

- [中文](https://gitee.com/react-native-oh-library/usage-docs/blob/master/zh-cn/react-native-community-checkbox.md)

- [English](https://gitee.com/react-native-oh-library/usage-docs/blob/master/en/react-native-community-checkbox.md)

## License

This library is licensed under [The MIT License (MIT)](https://gitee.com/openharmony-sig/rntpc_react-native-checkbox/blob/master/LICENSE)
npm package: @ohmi/deprecated-react-native-prop-types
Description: Deprecated prop-types from React Native.
Latest version: 5.0.0-0.0.4

# @ohmi/deprecated-react-native-prop-types

This package contains deprecated `prop-types` from [React Native](https://github.com/facebook/react-native).

## Image.propTypes

### Before

```js
import {Image} from 'react-native';

doSomething(Image.propTypes);
```

### After

```js
import {ImagePropTypes} from 'deprecated-react-native-prop-types';

doSomething(ImagePropTypes);
```

## Text.propTypes

### Before

```js
import {Text} from 'react-native';

doSomething(Text.propTypes);
```

### After

```js
import {TextPropTypes} from 'deprecated-react-native-prop-types';

doSomething(TextPropTypes);
```

## TextInput.propTypes

### Before

```js
import {TextInput} from 'react-native';

doSomething(TextInput.propTypes);
```

### After

```js
import {TextInputPropTypes} from 'deprecated-react-native-prop-types';

doSomething(TextInputPropTypes);
```

## ColorPropType

### Before

```js
import {ColorPropType} from 'react-native';

doSomething(ColorPropType);
```

### After

```js
import {ColorPropType} from 'deprecated-react-native-prop-types';

doSomething(ColorPropType);
```

## EdgeInsetsPropType

### Before

```js
import {EdgeInsetsPropType} from 'react-native';

doSomething(EdgeInsetsPropType);
```

### After

```js
import {EdgeInsetsPropType} from 'deprecated-react-native-prop-types';

doSomething(EdgeInsetsPropType);
```

## PointPropType

### Before

```js
import {PointPropType} from 'react-native';

doSomething(PointPropType);
```

### After

```js
import {PointPropType} from 'deprecated-react-native-prop-types';

doSomething(PointPropType);
```

## ViewPropTypes

### Before

```js
import {ViewPropTypes} from 'react-native';

doSomething(ViewPropTypes);
```

### After

```js
import {ViewPropTypes} from 'deprecated-react-native-prop-types';

doSomething(ViewPropTypes);
```
npm package: @ohmi/geolocation
Description: React Native Geolocation Module for iOS and Android
Author: React Native Community
Latest version: 3.1.0-0.0.8

# @ohmi/react-native-geolocation

This project is based on [@react-native-community/geolocation](https://github.com/michalchudziak/react-native-geolocation)

## Documentation

- [中文](https://gitee.com/react-native-oh-library/usage-docs/blob/master/zh-cn/react-native-community-geolocation.md)

- [English](https://gitee.com/react-native-oh-library/usage-docs/blob/master/en/react-native-community-geolocation.md)

## License

This library is licensed under [The MIT License (MIT)](https://github.com/michalchudziak/react-native-geolocation/blob/master/LICENSE)
npm package: @ohmi/native-echarts
Description: echarts for react-native
Author: somonus
Latest version: 0.5.0-rc.1

# native-echarts

[![NPM Version](https://img.shields.io/npm/v/native-echarts.svg?style=flat)](https://www.npmjs.org/package/native-echarts)
  [![npm](https://img.shields.io/npm/dm/native-echarts.svg?style=flat)](https://www.npmjs.org/package/native-echarts)
  [![License](http://img.shields.io/npm/l/native-echarts.svg?style=flat)](https://raw.githubusercontent.com/somonus/react-native-echarts/master/LICENSE.md)
  
## install

$ npm install native-echarts --save

## Usage

The Usage is complete consistent with Echarts

component props:

* *option* (object): The option for echarts: [Documentation](http://echarts.baidu.com/option.html#title)。 
* *width* (number): The width of the chart. The default value is the outer container width. 
* *height* (number): The height of the chart. The default value is 400. 


```js
import React, { Component } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  View
} from 'react-native';
import Echarts from 'native-echarts';

export default class app extends Component {
  render() {
    const option = {
      title: {
          text: 'ECharts demo'
      },
      tooltip: {},
      legend: {
          data:['销量']
      },
      xAxis: {
          data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
      },
      yAxis: {},
      series: [{
          name: '销量',
          type: 'bar',
          data: [5, 20, 36, 10, 10, 20]
      }]
    };
    return (
      <Echarts option={option} height={300} />
    );
  }
}

AppRegistry.registerComponent('app', () => app);

```



##Example

*run demo*

```
cd example
npm install
npm start
```

### IOS

Open the xcode project in the ios directory and click run

screenshots：

![image](https://github.com/somonus/react-native-echarts/blob/master/example/demoIOS.png)

### Android

Open the Android project in the android directory with Android Studio and click run.

screenshots：

![image](https://github.com/somonus/react-native-echarts/blob/master/example/demoAndroid.png)

## License

native-echarts is released under the MIT license.
npm package: @ohmi/react-native-harmony-cli
Description: Please refer to: [RNOH repo](https://gitee.com/openharmony-sig/ohos_react_native) for more detail.
Latest version: 0.0.29-rc.1.0.3

# @ohmi/react-native-harmony-cli

Please refer to: [RNOH repo](https://gitee.com/openharmony-sig/ohos_react_native) for more detail. 

# Documentation

- [中文](https://gitee.com/openharmony-sig/ohos_react_native/blob/master/docs/zh-cn/README.md)
- [English](https://gitee.com/openharmony-sig/ohos_react_native/blob/master/docs/en/README.md)

# License 

This library is licensed under The [MIT License (MIT)](https://gitee.com/openharmony-sig/ohos_react_native)
npm package: @ohmi/react-native-iphone-x-helper
Description: A library to help you design your react-native app for the iPhone X
Latest version: 1.3.2
Deprecated: false

[![npm version](https://badge.fury.io/js/react-native-iphone-x-helper.svg)](https://badge.fury.io/js/react-native-iphone-x-helper)

# ohmi/react-native-iphone-x-helper
A library to help you design your react-native app for notched iPhones.

## Installing ##
`npm i ohmi/react-native-iphone-x-helper --save`

## API ##

### ifIphoneX(iphoneXStyle, \[regularStyle\]) ###
this method it for creating stylesheets with the iPhone X in mind

#### Parameters ####
**iphoneXStyle** - the style to apply if you're on iPhone X

**regularStyle (*optional*)** - the style to apply if you're not on iPhone X

#### Example ####
```js
// in style.js

import { StyleSheet } from 'react-native';
import { ifIphoneX } from 'react-native-iphone-x-helper'

export default StyleSheet.create({
    header:{
        position: 'absolute',
        top: 0,
        left: 0,
        right: 0,
        padding:10,
        height: 60,
        backgroundColor: 'transparent',
        ...ifIphoneX({
            paddingTop: 50
        }, {
            paddingTop: 20
        })
    },
});
```

### isIphoneX() ###

**returns** - `true` if you running on an iPhone X.

#### Example ####
```js
import { isIphoneX } from 'react-native-iphone-x-helper'

// ...

if (isIphoneX()) {
    // do this...
} else {
    // do that...
}
```

### getStatusBarHeight([safe]) ###

#### Parameters ####
**safe** - whether you want for get safe area height or not

**returns** - the height of the status bar: `44` for safe iPhoneX, `30` for unsafe iPhoneX, `20` for other iOS devices and `StatusBar.currentHeight` for Android.

#### Example ####

```js
// in style.js

import { StyleSheet } from 'react-native';
import { getStatusBarHeight } from 'react-native-iphone-x-helper'

export default StyleSheet.create({
    header:{
        position: 'absolute',
        top: 0,
        left: 0,
        right: 0,
        padding:10,
        height: 60,
        backgroundColor: 'transparent',
        paddingTop: getStatusBarHeight()
    },
});
```

***NOTE:*** If your using the the unsafe statusbar height, make sure to add 14dp of padding to your content, otherwise it's going to be flush against the notch

### getBottomSpace ###

**returns** - the height of the bottom to fit the safe area: `34` for iPhone X and `0` for other devices.

#### Example ####

```js
// in style.js

import { StyleSheet } from 'react-native';
import { getBottomSpace } from 'react-native-iphone-x-helper'

export default StyleSheet.create({
    totalview: {
        flex: 1,
        backgroundColor: 'transparent',
        marginBottom: getBottomSpace()
    },
});
```

## Licence ##
**MIT**
npm package: @ohmi/react-native-openharmony
Description: React Native for OpenHarmony
Latest version: 1.1.0-rc.0.0.55

# @ohmi/react-native-openharmony

## 简介
本库是react-native在OpenHarmony上进行适配的原生侧har包-定制版。

## 下载安装
```text
ohpm install @ohmi/react-native-openharmony
```
环境配置等更多内容，请参考[环境搭建](https://gitee.com/openharmony-sig/ohos_react_native/blob/0.72.5-ohos-5.0-release/docs/zh-cn/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.md)

## 使用说明
执行上一步命令安装完成之后，点击顶部菜单栏的File > Sync and Refresh Project来执行ohpm install，执行完成后会在entry目录下生成oh_modules文件夹。 由于har包比较大，这一步耗时会比较长，务必保证ohpm install和IDE自发的SyncData全都完成，否则会导致编译报错。
更多详细信息参考配套文档[创建鸿蒙工程](https://gitee.com/openharmony-sig/ohos_react_native/blob/0.72.5-ohos-5.0-release/docs/zh-cn/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.md#%E5%88%9B%E5%BB%BA%E9%B8%BF%E8%92%99%E5%B7%A5%E7%A8%8B)

## 目录结构
```text
|---- react_native_openharmony
|     |---- src  # react_native_openharmony库文件夹
|           |---- main  # 模块代码
|                |---- cpp   # c++侧代码
|                |---- ets   # ets侧代码
                 |---- resources   # 资源文件夹
|            |---- *.json5      # 配置文件
|     |---- build-profile.json5     # 安装使用方法
|     |---- BuildProfile.ets        # 配置参数
|     |---- CHANGELOG.md            # 修改记录
|     |---- hvigorfile.ts           # hvigor配置
|     |---- LICENSE                 # 开源协议license
|     |---- oh-package.json5        # 配置文件
|     |---- README.md               # 安装使用方法

```

## 贡献代码

使用过程中发现任何问题都可以提交[Issue](https://gitee.com/openharmony-sig/ohos_react_native/issues)，当然，也非常欢迎提交[PR](https://gitee.com/openharmony-sig/ohos_react_native/pulls) 。

## 开源协议

本项目遵循 [MIT License]
npm package: @ohmi/react-native-safe-area-view
Description: JS only version of SafeAreaView for supporting iPhone X safe area insets.
Author: Dave Pack
Latest version: 0.11.0-0.7

> 模板版本：v0.2.2

<p align="center">
  <h1 align="center"> <code>@ohmi/react-native-safe-area-view</code> </h1>
</p>
<p align="center">
    <a href="https://gitee.com/kunyuan-hongke/react-native-safe-area-view">
        <img src="https://img.shields.io/badge/platforms-android%20|%20ios%20|%20harmony%20-lightgrey.svg" alt="Supported platforms" />
    </a>
    <a href="https://gitee.com/kunyuan-hongke/react-native-safe-area-view/blob/master/LICENSE">
        <img src="https://img.shields.io/badge/license-MIT-green.svg" alt="License" />
    </a>
</p>

本项目基于 [react-native-safe-area-view](https://github.com/react-navigation/react-native-safe-area-view) 开发。

> [!TIP] [Gitee 地址](https://gitee.com/kunyuan-hongke/react-native-safe-area-view)

## 安装与使用

请到三方库的 Releases 发布地址查看配套的版本信息：[@ohmi/react-native-safe-area-view Releases](https://gitee.com/kunyuan-hongke/react-native-safe-area-view/releases) 。对于未发布到npm的旧版本，请参考[安装指南](https://gitee.com/react-native-oh-library/usage-docs/blob/master/zh-cn/tgz-usage.md)安装tgz包。

进入到工程目录并输入以下命令：

<!-- tabs:start -->

#### **npm**

```bash
npm install @ohmi/react-native-safe-area-view
```

#### **yarn**

```bash
yarn add @ohmi/react-native-safe-area-view
```

<!-- tabs:end -->

下面的代码展示了这个库的基本使用场景：

> [!WARNING] 使用时 import 的库名不变。

```jsx
import * as React from "react";
import { Text, View } from "react-native";
import SafeAreaView from "react-native-safe-area-view";

export default function App() {
	return (
		<SafeAreaView forceInset={{ top: "always" }}>
			<View>
				<Text>Yeah, I'm safe too!</Text>
			</View>
		</SafeAreaView>
	);
}
```

## 约束与限制

### 兼容性

要使用此库，需要使用正确的 React-Native 和 RNOH 版本。另外，还需要使用配套的 DevEco Studio 和 电脑 ROM。

本文档内容基于以下版本验证通过：

1. RNOH：0.72.5; SDK：OpenHarmony 5.0.2.123(API Version 14 Release); IDE：DevEco Studio 5.0.7.200; ROM：5.0.0.130(SP6C00E130R4P28patch08);

## 属性

> [!TIP] "Platform"列表示该属性在原三方库上支持的平台。

> [!TIP] "HarmonyOS Support"列为 yes 表示 HarmonyOS 平台支持该属性；no 则表示不支持；partially 表示部分支持。使用方法跨平台一致，效果对标 iOS 或 Android 的效果。

| Name       | Description                                                                                                                                                                                      | Type   | Required | Platform | HarmonyOS Support |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------ | -------- | -------- | ----------------- |
| forceInset | takes an object with the keys `top \| bottom \| left \| right \| vertical \| horizontal` and the values `'always' \| 'never'`. Or you can override the padding altogether by passing an integer. | object | no       | all      | yes               |

## 遗留问题

## 其他

## 开源协议

本项目基于 [The MIT License (MIT)](https://gitee.com/kunyuan-hongke/react-native-safe-area-view/blob/master/LICENSE) ，请自由地享受和参与开源。
npm package: @ohmi/react-native-status-bar-height
Description: Get status bar height for React Native App
Author: Dmitry Patsura
Latest version: 2.6.0-0.0.3

<p align="center">
  <h1 align="center"> <code>@ohmi/react-native-status-bar-height</code> </h1>
</p>

> [!TIP] [Gitee 地址](https://gitee.com/rn-mi/react-native-status-bar-height)

## 介绍

本项目基于[react-native-status-bar-height](https://github.com/ovr/react-native-status-bar-height)开发。

## 安装与使用

#### **npm**

```bash
npm install --save @ohmi/react-native-status-bar-height
```

#### **yarn**

```bash
yarn add @ohmi/react-native-status-bar-height
```

Usage `getStatusBarHeight(skipAndroid: boolean = false)`

```js
import { getStatusBarHeight } from "react-native-status-bar-height";

// 44 - on iPhone X
// 20 - on iOS device
// X - on Android platfrom (runtime value)
// 0 - on all other platforms (default)
console.log(getStatusBarHeight());

// Will be 0 on Android, because you pass true to skipAndroid
console.log(getStatusBarHeight(true));
```

## Link

无需 link

## 约束与限制

无

## 规格表

| Name                 | Description         | Type     | Required | Platform | HarmonyOS Support |
| -------------------- | ------------------- | -------- | -------- | -------- | ----------------- |
| getStatusBarHeight   | 获取状态栏高度      | 静态方法 | no       | All      | 支持              |
| isIPhoneX            | 判断是 IPhoneX      | 静态方法 | no       | All      | 支持              |
| isIPhoneXMax         | 判断是 IPhoneXMax   | 静态方法 | no       | All      | 支持              |
| isIPhone12           | 判断是 IPhone12     | 静态方法 | no       | All      | 支持              |
| isIPhone12Max        | 判断是 IPhone12Max  | 静态方法 | no       | All      | 支持              |
| isIPhoneWithMonobrow | 判断是刘海屏 iphone | 静态方法 | no       | All      | 支持              |
| isExpo               | 判断是 Expo 环境    | 静态方法 | no       | All      | 支持              |

## 遗留问题

无

## 开源协议

本项目基于 [MIT License (MIT)](https://gitee.com/rn-mi/react-native-status-bar-height/blob/master/LICENSE) ，请自由地享受和参与开源。
npm package: @ohmi/react-native-tab-view
Description: Tab view component for React Native
Latest version: 1.4.1-rc.1.0.2

# React Native Tab View

A cross-platform Tab View component for React Native.

安装说明和文档可在 [React-Navigation ](https://gitee.com/kunyuan-hongke/react-navigation/tree/master/react-navigation)中查看.
npm package: @ohmi/react-native-ui-kitten
Description: React Native components
Latest version: 3.1.2-rc.2.0.3

<img src="https://cdn.rawgit.com/akveo/react-native-ui-kitten/085afb52/docs/assets/banner.png"/>

# ohmi/react-native-ui-kitten

## About
This project is based on [react-native-ui-kitten@3.1.2](https://github.com/akveo/react-native-ui-kitten/tree/v3.1.2)

## Installation and Usage

### npm

```bash
npm ohmi/react-native-ui-kitten
```
### yarn

```bash
yarn add ohmi/react-native-ui-kitten
```

react-native-ui-kitten is a framework that contains a set of commonly used UI components styled in a similar way. 
The main idea of this framework is to move style definitions into a specific place making components reusable and styled in a single way.
You just focus on business logic and it takes care of visual appearance. 

We have also brought a concept similar to CSS classes that will save you time when styling elements. 
And the most awesome thing: you can change themes on the fly by just passing a different set of variables. 

100% native. Give our kitten a try!

<img src="https://cdn.rawgit.com/akveo/react-native-ui-kitten/master/docs/assets/kittenKit.png"/>

## Documentation
Documentation for this framework is [here](https://akveo.github.io/react-native-ui-kitten/).

## Demo applications

If you want to see how it works you can try [an expo explorer application](https://expo.io/@akveo/ui-kitten-explorer-app) or run it locally from [example](./example) folder.

There is also [a cool application](https://github.com/akveo/kittenTricks) built using our framework. It's open-source and free!

Don't forget to check them out!

## How can I support the developers?
- Star our GitHub repo
- Create pull requests, submit bugs, suggest new features or documentation updates
- Follow us on [Twitter](https://twitter.com/akveo_inc)
- Like our page on [Facebook](https://www.facebook.com/akveo/)

## Can I hire you guys?
Yes! We are available for hire. Visit [our homepage](http://akveo.com/) or simply leave us a message at contact@akveo.com. We will be happy to work with you!

License
-------------
<a href=/LICENSE.txt target="_blank">MIT</a> license.

### From akveo

Enjoy!
We're always happy to receive your feedback.
npm package: @ohmi/react-navigation-deprecated-tab-navigator
Description: TabNavigator is deprecated in react-navigation@>=2.0. This package keeps it alive for users who depend on it and do not have time yet to update their apps.
Latest version: 1.3.0-rc.1.0.2

# React Navigation Deprecated Tab Navigator

React Navigation Deprecated Tab Navigator is a cross-platform Tab View component for React Native.

安装说明和文档可在 [React-Navigation ](https://gitee.com/kunyuan-hongke/react-navigation/tree/master/react-navigation)中查看.
npm package: @ohmi/react-navigation-drawer
Description: Drawer navigator component for React Navigation
Latest version: 0.5.0-rc.1.0.1

# React Navigation Drawer

Drawer navigator for use on iOS and Android and Harmony.

安装说明和文档可在 [React-Navigation ](https://gitee.com/kunyuan-hongke/react-navigation/tree/master/react-navigation)中查看.
npm package: @ohmi/react-navigation-material-bottom-tabs
Description: Material Bottom Tab Navigation component for React Navigation
Author: Satyajit Sahoo
Latest version: 2.3.5-rc.1.0.1

# React Navigation Material Bottom Tabs

Bottom Navigation component for use on iOS and Android and Harmony.

安装说明和文档可在 [React-Navigation ](https://gitee.com/kunyuan-hongke/react-navigation/tree/master/react-navigation)中查看.
npm package: @ohmi/react-navigation-stack
Description: Stack navigator component for React Navigation
Latest version: 0.6.0-rc.1.0.1

# React Navigation Stack

[![CircleCI badge](https://circleci.com/gh/react-navigation/react-navigation-stack/tree/master.svg?style=shield)](https://circleci.com/gh/react-navigation/react-navigation-stack/tree/master)

Stack navigator for use on iOS and Android.

## Installation

Open a Terminal in your project's folder and run,

```sh
npm i @ohmi/react-navigation-stack
```

## Usage

```js
import { createStackNavigator } from 'react-navigation-stack';

export default createStackNavigator({
  Inbox: InboxScreen
  Drafts: DraftsScreen,
}, {
  initialRouteName: 'Inbox',
});
```

## Docs

Documentation can be found on the [React Navigation website](https://reactnavigation.org/docs/en/stack-navigator.html).
npm package: @ohmi/victory-native
Description: Shared libraries and components for Victory
Author: Formidable
Latest version: 33.0.0-rc.0.1.3

# Victory Native

[![Maintenance Status][maintenance-image]](#maintenance-status)

### Usage

Install @ohmi/victory-native:
```sh
$ npm install @ohmi/victory-native --save
```

Install react-native-svg:
```sh
$ npm install react-native-svg --save
```

Link react-native:
```sh
$ react-native link react-native-svg
```
**`victory-native@^30.0.0` requires `react-native-svg@6.1.x`or `react-native-svg@^6.5.0`**

**Please see [Peer Dependencies and Version Requirements](#peer-dependencies-and-version-requirements) for requirements for previous versions of `victory-native`**


Import charts from `victory-native`. For example,

```jsx
import React, { Component } from "react";

import { VictoryBar } from "victory-native";

class App extends Component {
  render() {
    return (
      <VictoryBar />
    );
  }
}

export default App;
```

### Peer Dependencies and Version Requirements

**Note:** `victory-native` requires the following peer dependencies:
  - `react-native-svg`
  - `react`
  - `react-native`

**Note:** `react-native-svg` has strict version requirements for both `react` and `react-native`. Please match versions to those required by `react-native-svg`. See the up-to-date requirements on the [react-native-svg Readme][react-native-svg-readme].
We encourage you to use the latest version of `react-native-svg` possible for your project, as `victory-native` issues are frequently solved by `react-native-svg` bugfixes.

* `victory-native@^30.0.0` requires `react-native-svg@6.1.x`  or `react-native-svg@^6.5.0`and above
* `victory-native@^0.16.2` requires `react-native-svg@6.1.x` or `react-native-svg@^6.5.0`
* ~~`victory-native@~0.16.0` requires `react-native-svg@6.0.0`~~ No longer supported
* ~~`victory-native@~0.15.0` requires `react-native-svg@^5.0.0`~~ No longer supported

### Local Development and Demo

If you'd like to contribute to `victory-native`, you can use the local demo app to test your changes on the iOS simulator.

```sh
# Install
$ git clone https://github.com/FormidableLabs/victory-native
$ cd victory-native
$ yarn install
$ cd demo
$ yarn install
$ yarn start

# Run the demo from a new terminal window
$ npx react-native run-ios
```

Changes to `lib` will be reflected in the demo app.

### Documentation

See the docs and examples on the website https://formidable.com/open-source/victory/docs/native

## Contributor Covenant Code of Conduct

Please review our [Code of Conduct][code] before contributing.


### Maintenance Status

**Active:** Formidable is actively working on this project, and we expect to continue for work for the foreseeable future. Bug reports, feature requests and pull requests are welcome.


[code]: https://github.com/FormidableLabs/builder-victory-component/blob/master/CONTRIBUTING.md#contributor-covenant-code-of-conduct
[victory-native-demo]:https://github.com/FormidableLabs/victory-native-demo
[react-native-svg-readme]: https://github.com/react-native-community/react-native-svg#notice
[maintenance-image]: https://img.shields.io/badge/maintenance-active-green.svg
npm package: @ohmree/unplugin-swc
Description: SWC plugin for Vite and Rollup
Latest version: 0.0.1

**💛 You can help the original author of this become a full-time open-source maintainer by [sponsoring him on GitHub](https://github.com/sponsors/egoist).**

---

# `@ohmree/unplugin-swc`

[![npm version](https://badgen.net/npm/v/@ohmree/unplugin-swc)](https://npm.im/@ohmree/unplugin-swc)

> [SWC](https://swc.rs/) plugin for Vite and Rollup forked from [the original by egoist](https://github.com/egoist/unplugin-swc).

## Installation

```shellsession
$ npm i @ohmree/unplugin-swc -D # or pnpm, or yarn.
```

## Usage

Vite or Rollup:

```ts
import swc from 'unplugin-swc'

export default {
  plugins: [
    // Vite plugin
    swc.vite()
    // Rollup plugin
    swc.rollup()
  ]
}
```

### `tsconfig.json`

Following SWC options are inferred from `tsconfig.json`:

- `jsc.parser.syntax`: based on file extension
- `jsc.parser.jsx`, `parser.tsx`: `compilerOptions.jsx`
- `jsc.parser.decorators`: `compilerOptions.experimentalDecorators`
- `jsc.transform.react.pragma`: `compilerOptions.jsxFactory`
- `jsc.transform.react.pragmaFrag`: `compilerOptions.jsxFragmentFactory`
- `jsc.transform.react.importSource`: `compilerOptions.jsxImportSource`
- `jsc.transform.legacyDecorator`: `compilerOptions.experimentalDecorators`
- `jsc.transform.decoratorMetadata`: `compilerOptions.emitDecoratorMetadata`
- `jsc.keepClassNames`: when decorator is enabled, because original class name is required by libs like `type-graphql` to generate correct graphql type

If you wish to disable this behavior and use `.swcrc` to control above `jsc` options, you can use `tsconfigFile` option:

```ts
// Or swc.rollup
swc.vite({
  tsconfigFile: false,
});

// It's also possible to use a custom tsconfig file instead of tsconfig.json
swc.vite({
  tsconfigFile: './tsconfig.build.json',
});
```

### Minification

Use the `minify: true` option, it only works for Rollup as Vite uses esbuild to minify the code and cannot be changed.

To have advanced control over the minification process, [use `jsc.minify` option in `.swcrc`](https://swc.rs/docs/configuration/minification).

### Vite

`esbuild` will be automatically disabled if you use this plugin.

## Options

This plugin accepts all `@swc/core` options, except for `jsc` which should be configured in `.swcrc` instead, and some extra options that are specific to this plugin:

### `options.tsconfigFile`

- Type: `boolean`, `string`
- Default: `tsconfig.json`

Disable the use of tsconfig file or specify a custom one.

### `options.include`

- Type: `RegExp`
- Default: `/\.[jt]sx?$/`

Files to include in the transpilation process.

### `options.exclude`

- Type: `RegExp`
- Default: `/node_modules/`

Files to exclude in the transpilation process.

### `options.jsc`

- Type: `object`

Custom [jsc](https://swc.rs/docs/configuration/compilation) options to merge with the default one.

## Sponsors

Go sponsor the original author of this plugin:

[![sponsors](https://sponsors-images.egoist.sh/sponsors.svg)](https://github.com/sponsors/egoist)

## License

This project is licensed under [the MIT license](LICENSE.md)
npm package: @ohmry/create-electron-vite
Description: Boilerplate project for electron-vite
Author: Ohmry
Latest version: 1.0.8

# @ohmry/electron-vite
This project was created based on the [@quick-start/electron](https://github.com/alex8088/quick-start) project.

# Quick Start
``` bash
$ npm create @ohmry/electron-vite
```

## Dependencies you can choice
- sass (^1.83.1)
- concurrently (^9.1.2, when you choose sass, will be installed too)
- bootstrap-icons (^1.11.3)
- @flaticon/flaticon-uicons (^3.3.1)

## Default dependencies
- @electron-toolkit/preload (^3.0.1)
- @electron-toolkit/utils (^3.0.0)
- electron-updater (^6.1.7)

## Default devdependencies
- @electron-toolkit/eslint-config-prettier (^2.0.0)
- @electron-toolkit/eslint-config-ts (^2.0.0)
- @electron-toolkit/tsconfig (^1.0.1)
- @types/node (^20.14.8)
- electron (^31.0.2)
- electron-builder (^24.13.3)
- electron-vite (^2.3.0)
- eslint (^8.57.0)
- prettier (^3.3.2)
- typescript (~5.5.2)
- vite (^5.3.1)
npm package: @ohmry/electron-vite-title-bar
Description: Component that using instead of window title bar in frameless electron-vite
Author: Ohmry
Latest version: 1.0.6

# Electrion Vite Title Bar
You can use this component for window title bar instead of native window title bar in frameless electron-vite application.

## Quick Start
### Installation
Install this package by npm or yarn.
```bash
# NPM
npm install @ohmry/electron-vite-title-bar

# Yarn
yarn add @ohmry/electron-vite-title-bar
```

### Import and initialize
Import and initialize in `main/index.js` and `preload/index.js`.
#### main/index.js
```javascript
import { app, shell, BrowserWindow } from 'electron'
import { join } from 'path'
import { electronApp, optimizer, is } from '@electron-toolkit/utils'
import icon from '../../resources/icon.png?asset'

// Import class and create instance
import ElectronViteTitleBarLoader from '@ohmry/electron-vite-title-bar/loader'
const electronViteTitleBarLoader = new ElectronViteTitleBarLoader()

function createWindow() {
  // Create the browser window.
  const mainWindow = new BrowserWindow({
    width: 900,
    height: 670,
    show: false,
    autoHideMenuBar: true,
    ...(process.platform === 'linux' ? { icon } : {}),
    webPreferences: {
      preload: join(__dirname, '../preload/index.js'),
      sandbox: false
    }
  })

  // Initialize
  electronViteTitleBarLoader.initialize(mainWindow)

  mainWindow.on('ready-to-show', () => {
    mainWindow.show()
  })

  ...
```

#### preload/index.js
```javascript
import { contextBridge } from 'electron'
import { electronAPI } from '@electron-toolkit/preload'

// Import and initialize
import ElectronViteTitleBarPreloader from '@ohmry/electron-vite-title-bar/preloader'
const electronViteTitleBarPreloader = new ElectronViteTitleBarPreloader()
electronViteTitleBarPreloader.initialize()
...
```

### Using component
After intialize, you can use component in App.vue like this.
#### App.vue
```Vue
<template>
  <ElectronViteTitleBar
    icon="src/assets/icon.png"
    title="Electron Vite Title Bar"
    :menu="menu"
    @onMenuClick="(e) => console.log(e)">
  </ElectronViteTitleBar>
  <div>Hello World!</div>
</template>
<script setup>
import ElectronViteTitleBar from '@ohmry/electron-vite-title-bar'
import '@ohmry/electron-vite-title-bar/dist/style.css'

const menu = [
  {
    label: 'File',
    subMenu: [
      { label: 'New', hotKey: 'Ctrl+N' },
      { label: 'Open', hotKey: 'Ctrl+O' },
      { label: 'Open Recent' }
    ]
  },
  {
    label: 'Edit',
    subMenu: [
      { label: 'Undo' },
      { label: 'Redo' },
      { separator: true },
      { label: 'Cut', hotKey: 'Ctrl+X' },
      { label: 'Copy', hotKey: 'Ctrl+C' },
      { label: 'Paste', hotKey: 'Ctrl+V' }
    ]
  },
  {
    label: 'Select',
    subMenu: [
      { label: 'Select Line' },
      { label: 'Select All' }
    ]
  },
  {
    label: 'Help',
    subMenu: [
      { label: 'View License' },
      { label: 'Report Issue' },
      { separator: true},
      { label: 'About' }
    ]
  }
]
</script>
```
npm package: @ohmry/electron-vite-title-bar-typescript
Description: Component that using instead of window title bar in frameless electron-vite
Author: Ohmry
Latest version: 1.1.1

# Electrion Vite Title Bar for Typescript
You can use this component for window title bar instead of native window title bar in frameless electron-vite application for typescript.

## Quick Start
See [Document](https://github.com/Ohmry/electron-vite-title-bar-typescript#readme).

## Change logs
### 1.1.1
  - Add event to close menu groups when window resized.
  - Fixed for not collapse root menu.
  - Fixed adjust position of submenu groups when those overflows over
    window.
### 1.1.0
  - Add functions to handle information of menu such as get list or information of menu or set disabled to menu.
  - Add id into information menu and you can get id and label of menu when click menu item.
### 1.0.3
  - move 'vue' dependency to peerDependencies from dependencies (#4)
### 1.0.2
  - Fixed mouseover event in window buttons. (#3)
### 1.0.1
  - Add event closing menu container when click out of menu. (#2)
### 1.0.0
  - Initialize (#1)
npm package: @ohmunity/verification-code
Description: Simple Verification Code input for ReactJS
Author: Giuliano Kranevitter
Latest version: 0.0.12

![Ohmunity](./docs/logo-symbol.png)

---

> Simple Verification Code input for ReactJS

[![NPM](https://img.shields.io/npm/v/@ohmunity/verification-code.svg?style=flat-square)](https://www.npmjs.com/package/@ohmunity/verification-code) ![Minified size](https://img.shields.io/bundlephobia/min/@ohmunity/verification-code?style=flat-square) ![Minzipped size](https://img.shields.io/bundlephobia/minzip/@ohmunity/verification-code?style=flat-square) ![License](https://img.shields.io/npm/l/@ohmunity/verification-code?style=flat-square)

## Demo

![Demo](./docs/demo.gif)

**Live demo coming soon**

## Install

```bash
npm install --save @ohmunity/verification-code
```

## Usage

```jsx
import React, { Component } from "react";

import VerificationCode from "@ohmunity/verification-code";

const App = () => {
  return <VerificationCode type="number" total={6} onComplete={console.log} />;
};
```

You can also Customize the input field

```jsx
import React, { Component } from "react";

import VerificationCode from "@ohmunity/verification-code";

const App = () => {
  return (
    <VerificationCode
      type="number"
      total={6}
      onComplete={console.log}
      Component={React.forwardRef((props, ref) => (
        <FormField ref={ref} {...props} />
      ))}
    />
  );
};
```

## Props

| Prop               | Type                 | Description                                         |          |
| ------------------ | -------------------- | --------------------------------------------------- | -------- |
| type               | "number" \| "string" | input type                                          | required |
| total              | number               | total of digits                                     | required |
| value              | string               | default value                                       |          |
| id                 | string               | element id                                          |          |
| placeholder        | string               | element placeholder (same for all)                  |          |
| disabled           | boolean              | element disabled status                             |          |
| required           | boolean              | element required status                             |          |
| onChange           | Function             | calls the function every time a field changes       |          |
| onComplete         | Function             | call the function once all the fields are completed |          |
| Component          | React Component      | support for custom React Component                  |          |
| clearAfterComplete | boolean              | clear fields after completion                       |          |

## TODO

- [ ] Add default styles and `className` support
- [ ] Add tests
- [ ] Add live demo

## License

MIT © [Ohmunity™](https://ohmunity.com/)
npm package: @ohmunity/whereby
Description: WhereBy unofficial sdk (whereby.com)
Author: Giuliano Kranevitter
Latest version: 0.0.1

# Whereby

[Whereby](http://whereby.com) Unofficial Node SDK. Visit [Whereby developer guide](https://whereby.dev/) for more info.

## Get started

Install the library by running `npm install @ohmunity/whereby --save`. It includes declaration file for Typescript.

### Create Meeting

```js
import Whereby from '@ohmunity/whereby';

const client = new WhereBy('YOUR API KEY');

client
  .createMeeting({
    startDate: new Date(),
    endDate: new Date(),
  })
  .then((response) => {
    console.log('response', response);
  });
```

For additional parameters, visit [Create meeting documentation](https://whereby.dev/http-api/#/paths/~1meetings/post)

### Retrieve Meeting

```js
import Whereby from '@ohmunity/whereby';

const client = new WhereBy('YOUR API KEY');

client
  .meeting('ID') // e.g. 11417010
  .then((response) => {
    console.log('response', response);
  });
```

For additional parameters, visit [Get meeting documentation](https://whereby.dev/http-api/#/paths/~1meetings~1{meetingId}/get)

### Delete Meeting

```js
import Whereby from '@ohmunity/whereby';

const client = new WhereBy('YOUR API KEY');

client
  .deleteMeeting('ID') // e.g. 11417010
  .then((response) => {
    console.log('response', response);
  });
```

For additional parameters, visit [Delete meeting documentation](https://whereby.dev/http-api/#/paths/~1meetings~1{meetingId}/delete)
npm package: @ohmydai/contracts
Description: Ethereum on-chain options implementation
Author: ohmydai developer team
Latest version: 0.3.4

# oh-my-da¡!

On-chain options implementation.

It is available as an OpenZeppelin ethereum package on mainnet, and ropsten, rinkeby and kovan testnets.

- Website: [ohmydai.io](https://ohmydai.io/)
- Twitter: [@ohmydai_io](https://twitter.com/ohmydai_io)
- Medium: [ohmydai](https://medium.com/ohmydai)
- Telegram: [ohmydai!.io](https://t.me/joinchat/DSUxh1QcM-e7SRQFzZywxQ)
- Email: [ohmydai.io@gmail.com](mailto:ohmydai.io@gmail.com)