open-index/open-npm huggingface dataset:
npm package: @jeremyling/react-material-ui-rich-text-editor
Description: A WYSIWYG rich text editor built with Slate using Material UI components.
Author: Jeremy Ling
Latest version: 0.3.12

# React Material UI Rich Text Editor

A WYSIWYG rich text editor built with Slate using Material UI components. This project is heavily influenced by the examples provided in the [Slate documentation](https://www.slatejs.org/examples) and this article on [Smashing Magazine](https://www.smashingmagazine.com/2021/05/building-wysiwyg-editor-javascript-slatejs).

## Installation

```
npm install --save @jeremyling/react-material-ui-rich-text-editor
```

The following packages are peer dependencies and must be installed in your project for this package to work.

```
@emotion/react
@emotion/styled
@mui/icons-material
@mui/material
lodash
react-mui-color
```

## Usage Example

```jsx
import React, { useState } from "react";
import Editor from "@jeremyling/react-material-ui-rich-text-editor";

const initialHtml = "<p>Paragraph</p>";

export default function RichTextEditor(props) {
  const [html, setHtml] = useState(initialHtml);

  return <Editor html={html} updateHtml={(html) => setHtml(html)} />;
}
```

## Props

| Prop           | Type     | Default        | Description                                               |
| -------------- | -------- | -------------- | --------------------------------------------------------- |
| html           | `string` | `undefined`    | HTML to be deserialized as value.                         |
| updateHtml     | `func`   | `(html) => {}` | Method to update html, taking serialized html as argument |
| containerProps | `object` | `undefined`    | Props to pass to the Material UI Paper wrapper            |
| editableProps  | `object` | `undefined`    | Props to pass to the Slate Editable component             |

If `html` is not set, value will default to

```json
[
  {
    "type": "Paragraph",
    "children": [{ "text": "" }]
  }
]
```
npm package: @jeremyling/sg-paynow-qr
Description: A PayNow QR Generator for Singapore
Author: Jeremy Ling
Latest version: 0.1.5

# SG PayNow QR

A PayNow QR Generator for Singapore.

asImage flag does not work for now due to issues finding decent QRCode with logo generators for NodeJS. The QR string returned can be used as the content for QR Code generators on the browser.

## Installation

```
npm install --save @jeremyling/sg-paynow-qr
```

## Usage Example

```js
import * as pn from "@jeremyling/sg-paynow-qr";

const date = new Date();

const [qrString, error] = pn.generateQr({
  amount: 10.1, // Optional
  editable: 0, // 1 - Payment Amount is editable, 0 - Payment Amount not editable
  billNumber: "A12345", // Optional, defaults to '***' (User to input reference within payment app)
  merchantName: "Payee", // Optional, defaults to 'NA'
  merchantCountry: "SG", // Optional, defaults to 'SG'
  merchantCity: "Singapore", // Optional, defaults to 'Singapore'
  expiry: new Date(date.setDate(date.getDate() + 1)), // Optional, defaults to 1 day from now
  uen: undefined, // Required if mobile is null, PayNow registered UEN for businesses
  mobile: "+6591234567", // Required if uen is null, PayNow registered Mobile Number for P2P transfers
});
```
npm package: @jeremymoeglich/arktype-schema-patched
Description: Underlying schema language parsed from arktype syntax.
Author: David Blass
Latest version: 0.46.1

# @ark/schema

Underlying schema language parsed from arktype syntax.

The parts of ArkType's type system that exist in TS (i.e. not runtime-only constraints like bounds, divisors, custom predicates, morphs etc.) are structured like this:

- Union: a set of intersections
- Intersection: a set of a basis and constraints
- Basis: this is the base type to which refinements like props are applied. It is one of three things, getting narrower as you move down the list:
  - Domain: `"string" | "number" | "bigint" | "object" | "symbol"` parallels built-in TS keywords for non-enumerable value sets
  - Proto: Must be an `instanceof` some class (implies domain `"object"`)
  - Unit: Must `===` some value (can be intersected with any other constraint and reduced to itself or a disjoint)
- Constraint: an individual condition that must be satisfied:
  - Required: must have a specified literal string or symbol key and a value that conforms to a specified union or intersection
  - Optional: Required conditions met or the specified key is not present
  - Index: all keys that satisfy an index type must have values satisfying the corresponding value type

In this system, `L` extends/subtypes/is assignable to `R` if and only if the intersection `L & R` is equal to `L`.