open-index/open-npm huggingface dataset:
npm package: @ifty64bit/utils
Description: My daily reusable utilities
Latest version: 0.1.3

# @ifty64bit/utils

A collection of daily reusable TypeScript utilities.

## Installation

```bash
npm install @ifty64bit/utils
```

## Usage

```typescript
import { tryCatch, createEnum } from "@ifty64bit/utils";
```

## API

### `tryCatch<T>(fn: () => T): TryCatchResult<T>`

Wraps a function execution in a try-catch block and returns a result object instead of throwing errors.

**Returns:**

-   `{ result: T, error: null }` on success
-   `{ result: null, error: Error }` on failure

**Example:**

```typescript
const { result, error } = tryCatch(() => JSON.parse('{"valid": "json"}'));

if (error) {
    console.error("Parsing failed:", error.message);
} else {
    console.log("Parsed data:", result);
}
```

### `createEnum<T>(obj: T): Frozen<T & { reverse: ReverseMap }>`

Creates a frozen, enum-like object with reverse lookup capability.

**Returns:** A frozen object containing the original mapping and a `reverse` property for value-to-key lookups.

**Example:**

```typescript
const Status = createEnum({
    PENDING: 0,
    ACTIVE: 1,
    COMPLETED: 2,
});

console.log(Status.ACTIVE); // 1
console.log(Status.reverse[1]); // "ACTIVE"
```

## Development

### Install dependencies

```bash
bun install
```

### Build

```bash
bun run build
```

### Type check

```bash
bun run check
```

## License

MIT
npm package: @ifu/cli
Description: utils for ifu
Author: JW
Latest version: 0.0.4

# @ifu/cli
*utils for ifu*

[![npm](https://img.shields.io/npm/v/@ifu/cli)](https://github.com/JiangWeixian/ifu) [![GitHub](https://img.shields.io/npm/l/@ifu/cli)](https://github.com/JiangWeixian/ifu) [![stackblitz](https://img.shields.io/badge/%E2%9A%A1%EF%B8%8Fstackblitz-online-blue)](https://stackblitz.com/github/JiangWeixian/ifu)

[Edit on StackBlitz ⚡️](https://stackblitz.com/github/JiangWeixian/ifu)
## usage 

```console
pnpm install -g @ifu/cli
```

### `-c`

check alfred installed

```console
ifu -c
```
npm package: @ifu/daydayup
Description: alfred dayjs
Author: JiangWeixian
Latest version: 2.0.1

# @𝙞𝙛𝙪/𝙙𝙖𝙮𝙙𝙖𝙮𝙪𝙥

🕑 display or parse time in effect way

<div align='center'>

<a><img src='/screenshots/daydayup.gif' width='600' /></a>

</div>

*▲ daydayup*

## usage

```
npm install -g @ifu/daydayup
```

## features

- **translate duration**
  - `day d 360000`
  - `dai 1d` - [support shortcuts](https://day.js.org/docs/en/durations/creating#list-of-all-available-units)
- **parse time**
  - `day 1599899523680`

## related

- [dayjs](https://github.com/iamkun/dayjs)
npm package: @ifu/emoji
Description: fuzzy search emoji
Author: JW
Latest version: 2.0.1

# @ifu/emoji
*search emoji in alfred*

<div align='center'>

<a><img src='/screenshots/emoji.png' width='600' /></a>

</div>

*▲ emoji*

## features

- search emoji use [fuzzy-emoji](https://github.com/JiangWeixian/fuzzy-emoji)

## install 

```console
npm install -g @ifu/emoji
```
npm package: @ifu/lunar
Description: Display lunar calendar in alfred
Author: JiangWeixian
Latest version: 2.0.2

# @𝙞𝙛𝙪/lunar

🌔 translate solar to lunar


<div align='center'>

<a><img src='/screenshots/lunar.jpg' width='600' /></a>

*▲ lunar*

</div>


## usage

```bash
npm install -g @ifu/lunar
```

## features

- translate solar to lunar

## related

- [dayjs](https://github.com/iamkun/dayjs)
- [solar2lunar](https://github.com/yize/solarlunar)
npm package: @ifu/new
Description: new script from alfred
Author: JW
Latest version: 0.3.1

# @ifu/new
*open website shortcut from alfred*

[![npm](https://img.shields.io/npm/v/@ifu/new)](https://github.com/JiangWeixian/ifu) [![GitHub](https://img.shields.io/npm/l/@ifu/new)](https://github.com/JiangWeixian/ifu)

open website shortcuts from [awesome-website-shortcuts](https://github.com/JiangWeixian/awesome-website-shortcuts)

## install 

```console
pnpm add -g @ifu/new
```
npm package: @ifu/popcron
Description: translate cronstrue
Author: JiangWeixian
Latest version: 2.0.1

# @𝙞𝙛𝙪/𝙥𝙤𝙥𝙘𝙧𝙤𝙣

🍿️ translate cronstrue


<div align='center'>

<a><img src='/screenshots/popcron.gif' width='600' /></a>

</div>

*▲ popcron*

## usage

```bash
npm install -g @ifu/popcron
```

## features

- translate cron like `cron 0 23 ? * MON-FRI`
- history modes like `cron h`

## configs

- `locale` - [support locales](https://github.com/bradymholt/cRonstrue#supported-locales)
npm package: @ifu/shared
Description: *rollup-template for single lib*
Author: JW
Latest version: 0.0.0

# @aiou/rollup-template
*rollup-template for single lib*

[![npm](https://img.shields.io/npm/v/@aiou/rollup-template)](https://github.com/spring-catponents/rollup-template) [![GitHub](https://img.shields.io/npm/l/@aiou/rollup-template)](https://github.com/spring-catponents/rollup-template) [![stackblitz](https://img.shields.io/badge/%E2%9A%A1%EF%B8%8Fstackblitz-online-blue)](https://stackblitz.com/github/spring-catponents/rollup-template)

[Edit on StackBlitz ⚡️](https://stackblitz.com/github/spring-catponents/rollup-template)

## features

- 📊 Stats - output bag bundlesize
- 📦 exclude `dependencies` and `peerDependencies`
- 💪 Typescript - type safe

## install

```console
pnpm add @aiou/rollup-template
```

## development

- **Setup** - `pnpm i`
- **Build** - `pnpm build`

# 
<div align='right'>

*built with ❤️ by 😼*

</div>
npm package: @ifun-vue3/hooks
Description: The vue3 common hooks.
Author: hboot
Latest version: 0.1.2


<p align='center'>
    Collection of vue3 components and hooks.
</p>

# 🚀 Features

- Support vue3.
- Strong Type.
- Easy to use.

# 🦄 Usage

Install.

```sh
npm i @ifun-vue3/hooks
```

Using.

```ts
import { useFetchStream } from '@ifun-vue3/hooks'

const { stop, status } = useFetchStream(url);
```
npm package: @ifun/drag
Description: A powerful draggable layout system
Author: weihome
Latest version: 0.4.5

# Whath is Dragact?

Dragact is a react component, which allows you to build your own **dragable grid layout** easily.

![](https://github.com/215566435/React-dragger-layout/blob/master/example/image/NormalLayoutDemo.gif)

### 快速安装
```
npm install --save dragact
```

### 写一个例子🌰
```javascript
import * as React from "react";
import * as ReactDOM from "react-dom";

import { Dragact } from 'dragact';
import './index.css'

ReactDOM.render(
    <Dragact
        col={8}
        width={800}
        margin={[5, 5]}
        rowHeight={40}
        className='plant-layout'
    >
        <div key={0} data-set={{ gridX: 0, gridY: 0, w: 4, h: 2 }} className='layout-child'>0</div>
        <div key={1} data-set={{ gridX: 0, gridY: 0, w: 1, h: 2 }} className='layout-child'>1</div>
        <div key={2} data-set={{ gridX: 0, gridY: 0, w: 3, h: 2 }} className='layout-child'>2</div>
    </Dragact>,
    document.getElementById('root')
);
```

# Demo
[Live Demo](http://htmlpreview.github.io/?https://github.com/215566435/React-dragger-layout/blob/master/build/index.html)


# Feature
- [x] auto sorted layout
- [x] mobile device supported
- [x] auto height fixed
- [x] static component
- [x] Draggable component


# Dragact 提供的属性
```ts
interface DragactProps {
    layout?: DragactLayout[] //暂时不推荐使用
    /** 
     * 宽度切分比 
     * 这个参数会把容器的宽度平均分为col等份
     * 于是容器内元素的最小宽度就等于 containerWidth/col
    */
    col: number,

    /** 
     * 容器的宽度
    */
    width: number,

    /**容器内每个元素的最小高度 */
    rowHeight: number,

    /**
     * 容器内部的padding
     */
    padding?: number,

    children: any[] | any


    // 
    // interface GridItemEvent {
    //     event: any //浏览器拖动事件
    //     gridX: number //在布局中的x格子  
    //     gridY: number //在布局中的y格子  
    //     w: number //元素的宽度
    //     h: number //元素的高度
    //     UniqueKey: string | number //元素的唯一key
    // }

    /**
     * 拖动开始的回调
     */
    onDragStart?: (event: GridItemEvent) => void

    /**
     * 拖动中的回调
     */
    onDrag?: (event: GridItemEvent) => void

    /**
     * 拖动结束的回调
     */
    onDragEnd?: (key: number | string) => void

    /**
     * 每个元素的margin,第一个参数是左右，第二个参数是上下
     */
    margin: [number, number]

    /** 
     * layout的名字
    */
    className: number | string
}

```



# Contribute

### Want a new feature?
1. If you have a feature request, please add it as an issue or make a pull request.
2. After adding some awesome feature, please run the test and make sure it will pass all tests before you make a PR.

### A bug?
If you have a bug to report, please reproduce the bug in Github issue with a sample code to help us easily isolate it.




# TODO-LIST
- [ ] horizontal swaping
- [ ] resizing
- [ ] touch handle
- [ ] responsive layout
- [ ] SSR/server rendering
npm package: @ifun/ku
Description: iku -- 命令行工具
Latest version: 0.0.8

# iku

## 说明

一个酷酷的命令行工具

## 功能特性

- 生成页面或组件
```sh
# ku g <type> <name>

# type: page | comp

ku g page Page1
ku g comp Comp1
```

## 安装

```sh
npm i @ifun/ku -g
```

## 目录
- `bin`作为工具的命令行入口，只负责识别命令、整合参数给具体的执行者
- `lib`聚焦于单一功能点，完成具体的功能
- `config`存储配置
- `sh`放置执行脚本
npm package: @ifunbox/ionic-angular
Description: A powerful framework for building mobile and progressive web apps with JavaScript and Angular
Latest version: 3.9.10-202209050717

## Ionic Framework

The official npm package for [Ionic](https://ionicframework.com/), complete with pre-built ES5 bundles, TypeScript definitions, Sass files, CommonJS ES5 files, and more.

To get started with Ionic, please read the [Installation Guide](https://ionicframework.com/docs/intro/installation/).

[Ionic Documentation](https://ionicframework.com/docs/)

### Source files

In the root of the package are ES5 sources in the CommonJS module format, their associated Typescript type definition files, and the Ionic Sass entry files. The Javascript sources are meant to be used by a bundler such as Webpack, SystemJS Builder, or Browserify. The type definitions provide support to Typescript tooling for things like type checking and code completion.

Usually, the only import required by the user is `ionic-angular`, as everything from Ionic is exported by the package:

```
  import { App, NavController } from 'ionic-angular';
```

### Bundles

Minified and unminified CommonJS and System.register module format bundles, as well as compiled CSS stylesheets for both Ionic iOS and Material Design are located `bundles/`. The SystemJS bundle is  primarily meant to be included in a `<script>` tag for demos, tests and Javascript playgrounds like [Plunker](https://plnkr.co/).

### Installation and More

To use Ionic, we recommend installing and utilizing the [Ionic CLI](https://ionicframework.com/docs/intro/installation/) which will help you create pre-configured Ionic apps.

For full instructions on using Ionic, please visit the [Ionic Documentation](https://ionicframework.com/docs/)
npm package: @ifunc/curry
Description: return a curried function
Author: lei
Latest version: 1.0.0

# @ifunc/curry


```js
import curry from '@ifunc/curry';

function add(a, b, c) {
  return a + b + c;
}
curry(add)(1)(2)(3); // 6
curry(add)(1)(2)(2); // 5
curry(add)(2)(4, 3); // 9

function add(...args) {
  return args.reduce((sum, n) => sum + n, 0)
}
var curryAdd4 = curry(add, 4)
curryAdd4(1)(2, 3)(4); // 10

function converter(ratio, input) {
  return (input*ratio).toFixed(1);
}
const curriedConverter = curry(converter)
const milesToKm = curriedConverter(1.62);
milesToKm(35); // 56.7
milesToKm(10); // 16.2
```
npm package: @ifunc/flip
Description: flip first two arguments of a function
Author: lei
Latest version: 1.0.0

# @ifunc/flip

> flip first two arguments of a function

```js
import flip from '@ifunc/flip';


flip(Array)('a', 'b') // ['b', 'a'];
flip(Math.pow)(2, 10) // 100
flip(console.log)(1, 2, 3) // 2, 1, 3

```