open-index/open-npm huggingface dataset:
npm package: @monsterbilligt/addbusinessdays
Description: Adds business days ignoring holidays
Author: Gustav Burchardt
Latest version: 0.0.4

# addBusinessDays

Adds business days to a date ignoring Danish holidays.

Depends on `date-fns@1.x` because this is made for a system that uses `@material-ui/pickers`

## Install

`npm i @monsterbilligt/addbusinessdays`
npm package: @monsterbitar/isomorphic-ws
Description: Isomorphic implementation of WebSocket with ESM support
Author: @heineiuo
Latest version: 5.3.1

# isomorphic-ws

Isomorphic implementation of WebSocket.

NOTE: This is a fork that simply exports the package as an ESM support version in addition to the existing packages.

It uses:
- [ws](https://github.com/websockets/ws) on Node
- [global.WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket) in browsers

## Limitations

Before using this module you should know that
[`ws`](https://github.com/websockets/ws/blob/master/doc/ws.md#class-websocket)
is not perfectly API compatible with
[WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket),
you should always test your code against both Node and browsers.

Some major differences:

- no `Server` implementation in browsers
- no support for the constructor
  [`options`](https://github.com/websockets/ws/blob/master/doc/ws.md#new-websocketaddress-protocols-options)
  argument in browsers

## Usage

You need to install both this package and [ws](https://github.com/websockets/ws):

```
> npm i isomorphic-ws ws
```

Then just require this package:

```js
const WebSocket = require('isomorphic-ws');

const ws = new WebSocket('wss://websocket-echo.com/');

ws.onopen = function open() {
  console.log('connected');
  ws.send(Date.now());
};

ws.onclose = function close() {
  console.log('disconnected');
};

ws.onmessage = function incoming(data) {
  console.log(`Roundtrip time: ${Date.now() - data.data} ms`);

  setTimeout(function timeout() {
    ws.send(Date.now());
  }, 500);
};
```

## License

[MIT](LICENSE)
npm package: @monsterkrampe/react-scripts
Description: Configuration and scripts for Create React App.
Latest version: 1.1.12

# react-scripts

This package includes scripts and configuration used by [Create React App](https://github.com/facebookincubator/create-react-app).<br>
Please refer to its documentation:

* [Getting Started](https://github.com/facebookincubator/create-react-app/blob/master/README.md#getting-started) – How to create a new app.
* [User Guide](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md) – How to develop apps bootstrapped with Create React App.
npm package: @monsterlee/remax-prerender-plugin
Description: 用于预渲染微信小程序的remax plugin
Author: Jimmie Lee
Latest version: 1.0.2

# remax-prerender-plugin

插件借用了[taro的预渲染方案](https://taro-docs.jd.com/taro/docs/prerender/)（[源代码在这里](https://github.com/NervJS/taro/blob/c4d3174d2281f87b5e7a3bdb470036ce77bb96ea/packages/taro-mini-runner/src/prerender/prerender.ts)），只是针对Remax的微信平台做了适配，切勿在其他平台上使用。欢迎大家PR或者fork。

## 安装

`npm install @monsterlee/remax-prerender-plugin` or `yarn add @monsterlee/remax-prerender-plugin`

## 使用

```js
const prerenderPlugin = require('@monsterlee/remax-prerender-plugin');

module.exports = {
  plugins: [prerenderPlugin({
    pages: [
      'pages/index/index' // 需要预渲染的页面
    ]
  })]
};
```

## 配置

- pages，需要预渲染页面的数组

## LICENSE

[MIT](LICENSE)
npm package: @monsterlee/remax-subpackage-code-split-plugin
Description: remax子包代码切分，让子包内引用的代码输出到子包内，不影响外面包代码体积
Author: Jimmie Lee
Latest version: 1.0.1

# remax-subpackage-code-split-plugin

插件主要解决小程序分包的时候子包只在子包内的引入的代码不要合并到主包中。很多时候只有子包引入的代码合并到主包中导致主包体积过大，此时如果不拆分代码到子包中没办法发布小程序。

## 安装

`npm install @monsterlee/remax-subpackage-code-split-plugin` or `yarn add @monsterlee/remax-subpackage-code-split-plugin`

## 使用

```js
const prerenderPlugin = require('@monsterlee/remax-subpackage-code-split-plugin');

module.exports = {
  plugins: [prerenderPlugin({
    subpackages: [
      'packageA' // 在app.config中配置的子页面的名称
    ]
  })]
};
```

## 配置

- subpackages，需要配置的子页面名称

## LICENSE

MIT
npm package: @monsterlee/web-marker
Description: a web page highlighter
Author: Ke Wang
Latest version: 2.0.6

# web-marker

![logo](https://raw.githubusercontent.com/notelix/web-marker/develop/public/logo.svg)

A web page highlighter that features
* accurate serialization and deserialization which makes it possible to correctly restore the highlights, even if part of the web page has changed
* nested highlighting
* no runtime-dependency

![demo](./design/demo.png)

# How to run
```bash
git clone https://github.com/notelix/web-marker
cd web-marker
npm i
npm start
```

# How to use
```
npm install @notelix/web-marker
```

```javascript
import {Marker} from "@notelix/web-marker"

const marker = new Marker({
    rootElement: document.body,
    eventHandler: {
        onHighlightClick: (context, element) => {
            marker.unpaint(context.serializedRange);
        },
        onHighlightHoverStateChange: (context, element, hovering) => {
            if (hovering) {
                element.style.backgroundColor = "#f0d8ff";
            } else {
                element.style.backgroundColor = "";
            }
        }
    },
    highlightPainter: {
        paintHighlight: (context, element) => {
            element.style.color = "red";
        }
    }
});

marker.addEventListeners();

document.addEventListener('mouseup', (e) => {
    const selection = window.getSelection();
    if (!selection.rangeCount) {
        return null;
    }
    const serialized = marker.serializeRange(selection.getRangeAt(0));
    console.log(JSON.stringify(serialized));
    marker.paint(serialized);
})
```

# How to build library
```
npm run build-lib
npm pack
```

# Built with web-marker

* [notelix/notelix](https://github.com/notelix/notelix): An open source web note taking / highlighter software (chrome extension with backend)
npm package: @monstermakes/larry-aws-product
Description: Larry Cli Module to expose an aws cloud formation template as a cli.
Latest version: 0.0.12

# THIS PROJECT IS NOW BEING MAINTAINED IN THE LARRY (https://github.com/MonsterMakes/larry) MONOREPO

# larry-aws-product

[![npm version](https://badge.fury.io/js/larry-aws-product.svg)](https://badge.fury.io/js/larry-aws-product)

[![https://nodei.co/npm/larry-aws-product.png?downloads=true&downloadRank=true&stars=true](https://nodei.co/npm/larry-aws-product.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/larry-aws-product)


## Description
***Update This*** Add the intent of your package here...


# ENVIRONMENT VARIABLES
## AWS Configurations
export AWS_REGION='REPLACE_ME'
export AWS_ACCESS_KEY_ID='REPLACE_ME'
export AWS_SECRET_ACCESS_KEY='REPLACE_ME'

# RELEASE NOTES

## TODOs
1. Add support for storing SSM Parameters in the Parameter store
2. Add support for reading SSM Parameters from the Parameter store
	- https://github.com/Droplr/aws-env
3. Add support for Parameters with `AllowedPattern`
	- Currently the AllowedPattern does not come in the response from the getTemplateSummary call
	- I added support issue https://github.com/aws/aws-sdk-js/issues/2519 to the git repo, asking for help
npm package: @monstermakes/larry-cli
Description: A common base for building command line applications.
Latest version: 0.3.6

# larry-cli 
[![npm version](https://badge.fury.io/js/%40monstermakes%2Flarry-cli.svg)](https://badge.fury.io/js/%40monstermakes%2Flarry-cli)

[![https://nodei.co/npm/@monstermakes/larry-cli.png?downloads=true&downloadRank=true&stars=true](https://nodei.co/npm/@monstermakes/larry-cli.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/@monstermakes/larry-cli)


## Description
larry-cli is a npm module that allows the developer to produce opinionated immersive cli apps. Under the covers its based on vorpal.

## RELEASE NOTES

## TODO
npm package: @monstermakes/larry-environment
Description: Tooling to build and maintaing larry cloud applications.
Latest version: 0.0.9

# larry-environment

[![npm version](https://badge.fury.io/js/%40monstermakes%2Flarry-environment.svg)](https://badge.fury.io/js/%40monstermakes%2Flarry-environment)

[![https://nodei.co/npm/@monstermakes/larry-environment.png?downloads=true&downloadRank=true&stars=true](https://nodei.co/npm/@monstermakes/larry-environment.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/@monstermakes/larry-environment)


## Description
Represents the tooling and libraries needed to deploy and maintain a cloud based environment.

TODO
Talk to the fact that there is an AWS version only at this point


### Aws Environment Developer Notes

If you are locally testing you can customize the cli by setting these ENV variables:

- AWS_SSO_START_URL 
	- This is the aws sso start url (https://<ACCT_SPECIFIC_INFO_HERE>.awsapps.com/start#/)
- AWS_PROFILE
	- The name of the AWS_PROFILE to use (<ACCT_NAME>__<ROLE_NAME>)
- ENVIRONMENT_CLOUDFORMATION_DIR
	- The local path to the cloudformation templates that represent this AWS environment

## AWS Environment TODOs
1. Add support for Parameters with `AllowedPattern`
	- Currently the AllowedPattern does not come in the response from the getTemplateSummary call
	- I added support issue https://github.com/aws/aws-sdk-js/issues/2519 to the git repo, asking for help
npm package: @monstermakes/larry-executioner
Description: A library to automate the execution of javascript calls.
Latest version: 0.0.2


# <img src="./resources/executioner.jpg" height="300px"/>Larry The Executioner 

<a href="https://www.npmjs.com/org/monstermakes/larry-executioner"><img alt="larry_scaffolds" src="https://nodei.co/npm/larry-executioner.png"/></a>

## Description
This project aims at creating a nodejs libray that can execute arbitrary functions/methods as a set of instructions for automating or testing purposes.

## Example Usage
```javascript
let p = new Parent();
let instructionSet = {
    commands: [
        {
            id: 'initial',
            classInstance: p,
            method: 'method',
            args: [1,2,3]
        },
        {
            id: 'second',
            classInstance: p,
            method: 'method',
            args: [
                '$cmd:0->request[2]',
                2,
                '$cmd:0->request[0]'
            ]
        },
    ]
};
let execution = new Execution(instructionSet);
return execution.execute()
    .then((executionDetails)=>{
        executionDetails[0].request.should.eql([1,2,3]);
        executionDetails[1].request.should.eql([3,2,1]);
	});
```
This is an example of using the Execution class directly. It demonstrates setting up 2 commands to run seuentially where the request arguments being passed into the second command are based on the first. 

These request arguments can be any javascript value however if they are a string that matches the lookup selector format `$command:<cmdId>-><dot selector>` they will be replaced with their "looked up" value. The values are looked up against previously executed command. Each command has a unique cmdId if supplied or are identified by their index in the initial instructionSet. When a command is executed an “Execution Details” object is created that has a bunch of properties in it like `request`,`response`, `failure` etc… The dot selector (a lodash style selctor obj.property[1]) is then used against the Execution Details object to pull the appropriate value. 

So think of the `$cmd:` as a token to tell the executioner to lookup a cmd value, followed by a way to uniquely id the command (id or index). Everything to the right of the `->` is a dot selector to lookup your value in that commands Execution Details object.

Here are a few more examples of request arguments:
```javascript 
$cmd:0->request[0]',
'$cmd:initial->request[0]',
'$cmd:0->request[2].property',
'$cmd:0->request[3][1]',
'$cmd:0->response.someProp',
'$cmd:0->failure.message'
```

## TODO
1. Make it work...
2. Execute Things...
3. Be Rad
npm package: @monstermakes/larry-logger
Description: This is Larry's logger.
Latest version: 0.1.5

# @monstermakes/larry-logger
[![npm version](https://badge.fury.io/js/%40monstermakes%2Flarry-logger.svg)](https://badge.fury.io/js/%40monstermakes%2Flarry-logger)

[![https://nodei.co/npm/@monstermakes/larry-logger.png?downloads=true&downloadRank=true&stars=true](https://nodei.co/npm/@monstermakes/larry-logger.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/@monstermakes/larry-logger)


## Description
A place to centralize logging for larry and all his parts.


## TODO

#TODOs
1. When used in the browser need to cleanup stack traces...
npm package: @monstermann/react-hotkeys
Description: React hooks for @monstermann/hotkeys
Author: Michael Ostermann
Latest version: 0.0.0

![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/min/%40monstermann/react-hotkeys/latest) ![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/%40monstermann/react-hotkeys/latest)

# react-hotkeys

React hooks for `@monstermann/hotkeys`.

## Installation

```sh
npm install @monstermann/hotkeys @monstermann/react-hotkeys
pnpm add @monstermann/hotkeys @monstermann/react-hotkeys
yarn add @monstermann/hotkeys @monstermann/react-hotkeys
```

## Usage

```ts
import { createHotkeys } from '@monstermann/hotkeys'
import { parseShortcut } from '@monstermann/hotkeys/vscode'
import { createShortcutHook, createShortcutsHook } from '@monstermann/react-hotkeys'

export const hotkeys = createHotkeys()
export const useShortcut = createShortcutHook(hotkeys, parseShortcut)
export const useShortcuts = createShortcutsHook(hotkeys, parseShortcut)
```

```ts
export function Component() {
    useShortcut('ctrl+a', callback, bindingContext)
    useShortcuts(['ctrl+a', 'meta+a'], callback, bindingContext)
}
```
npm package: @monstermann/tables
Description: Highly customizable tables for CLIs and Markdown.
Author: Michael Ostermann
Latest version: 0.0.0

<div align="center">

<h1>tables</h1>

**Highly customizable tables for CLIs and Markdown.**

![Minified](https://img.shields.io/badge/Minified-25.13_KB-blue)
![Minzipped](https://img.shields.io/badge/Minzipped-9.07_KB-blue)

</div>

A library for creating complex tables that can handle unicode, alignments, styling, truncation, borders and paddings, primarily for printing to terminals.

It exposes high-level and easy to use functions that come with some defaults, as well as low-level building blocks that you can use to completely customize every single row and column if necessary!

## Examples

<div align="center">
    <h3>CLI</h3>
    <img src="./docs/examples/example1.png" alt="Example" width="700" />
    <img src="./docs/examples/example2.png" alt="Example" width="700" />
    <img src="./docs/examples/example3.png" alt="Example" width="700" />
    <h3>Markdown</h3>
    <img src="./docs/examples/example4.png" alt="Example" width="700" />
</div>

## Installation

```sh
npm install @monstermann/tables
yarn add @monstermann/tables
pnpm add @monstermann/tables
```

## Getting Started

```ts
import { cli } from '@monstermann/tables'

const result = cli.createTable({
    columns: ['foo', 'bar'],
    rows: [
        { foo: 'Foo', bar: 'Bar' },
    ],
})

console.log(result)
```

## Overview

- [CLI](./docs/cli.md#cli)
    - [Example](./docs/cli.md#example)
    - [Options](./docs/cli.md#options)
    - [Alignments](./docs/cli.md#alignments)
    - [Styles](./docs/cli.md#styles)
    - [Advanced](./docs/cli.md#advanced)
        - [`createConfig`](./docs/cli.md#createconfig)
        - [`createHeader`](./docs/cli.md#createheader)
        - [`createRow`](./docs/cli.md#createrow)
        - [`createRowSeparator`](./docs/cli.md#createrowseparator)
        - [`createBorderTop`](./docs/cli.md#createbordertop)
        - [`createBorderBottom`](./docs/cli.md#createborderbottom)
        - [`createBorder`](./docs/cli.md#createborder)
        - [`createCell`](./docs/cli.md#createcell)
- [Markdown](./docs/markdown.md#markdown)
    - [Example](./docs/markdown.md#example)
    - [Options](./docs/markdown.md#options)
- [Core](./docs/core.md#core)
    - [`Cell`](./docs/core.md#cell)
    - [`renderRows`](./docs/core.md#renderrows)
    - [`renderCell`](./docs/core.md#rendercell)
    - [`getCellContentWidth`](./docs/core#getcellcontentwidth)
    - [`getCellDecorationsWidth`](./docs/core#getcelldecorationswidth)
    - [`getCellWidth`](./docs/core.md#getcellwidth)
npm package: @monsterooo/next-international
Description: Type-safe internationalization (i18n) for Next.js
Latest version: 1.4.0

<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://github.com/QuiiBz/next-international/blob/main/assets/logo-white.png" />
    <source media="(prefers-color-scheme: light)" srcset="https://github.com/QuiiBz/next-international/blob/main/assets/logo-black.png" />
    <img alt="" height="100px" src="https://github.com/QuiiBz/next-international/blob/main/assets/logo-white.png" />
  </picture>
  <br />
  Type-safe internationalization (i18n) for Next.js
</p>

---

- [Features](#features)
- [Documentation](#documentation)
- [Sponsors](#sponsors)
- [License](#license)

## Features

- **100% Type-safe**: Locales in TS or JSON, type-safe `t()` & `scopedT()`, type-safe params, type-safe plurals, type-safe `changeLocale()`...
- **Small**: No dependencies, lazy-loaded
- **Simple**: No Webpack configuration, no CLI, no code generation, just pure TypeScript
- **Server and Client, Static Rendering**: Lazy-load server and client-side, support for Static Rendering
- **App or Pages Router**: With support for React Server Components

> **Note**: You can now build on top of the types used by next-international using [international-types](https://github.com/QuiiBz/next-international/tree/main/packages/international-types)!

Try it live on CodeSandbox:

[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/jovial-paper-skkprk?file=%2Fapp%2F%5Blocale%5D%2Fpage.tsx%3A1%2C1)

## Documentation

Check out the documentation at [https://next-international.vercel.app](https://next-international.vercel.app).

## Contributing

[See the contributing guide](./CONTRIBUTING.md).

## Sponsors

![Sponsors](https://github.com/QuiiBz/dotfiles/blob/main/sponsors.png?raw=true)

## License

[MIT](./LICENSE)