open-index/open-npm huggingface dataset:
npm package: @panzhiyue/vuepress-plugin-demo-container-v2
Description: Vuepress plugin for demo block.
Author: PanZhiYue
Latest version: 1.0.3

# Introduction

[中文 README](https://github.com/panzhiyue/vuepress-plugin-demo-container-v2/blob/master/README.zh-CN.md)

`Demo Container V2` is a `Vuepress-based` plug-in, which can help you add `Vue` examples when writing documents.

It can help you:
1. Write an example to automatically generate component examples and code examples by the custom `::: demo` syntax;
2. Support the `import` syntax in code example;

# Install
Use `yarn`:
```bash
yarn add vuepress-plugin-demo-container-v2 -D
```
Or `npm`:
```bash
npm i vuepress-plugin-demo-container-v2 -D
```

# Usage
Open the `.vuepress/config.js` file, and then reference the plugin in the appropriate location:

```js
module.exports = {
  plugins: ['demo-container-v2']
}
```

Write the following code in the Markdown file:

```html
::: demo
```vue
<template>
  <div>
    <p>{{ message }}</p>
    <input v-model="message" placeholder="Input something..."/>
  </div>
</template>
<script>
  import { ref } from 'vue-demi'
  export default {
    setup () {
      const message = ref('Hello Here')

      return {
        message
      }
    }
  }
</script>
` ``
<!-- ignore space in the previous line -->
:::
```

[View full documentation](https://panzhiyue.github.io/vuepress-plugin-demo-container-v2/zh/)

# Thanks
This project is heavily inspired by the [md-loader](https://github.com/element-plus/element-plus/tree/dev/website/md-loader) of ElemeFE team.

# Contributors
<p>
  <a href="https://github.com/calebman" target="_blank">
    <img src="https://avatars0.githubusercontent.com/u/27751088" width="54px" height="54px" style="border-radius: 50%;" title="JianhuiChen" class="avatar-user avatar">
  </a>
  <a href="https://github.com/panzhiyue" target="_blank">
    <img src="https://avatars0.githubusercontent.com/u/8675871" width="54px" height="54px" style="border-radius: 50%;" title="panzhiyue" class="avatar-user avatar">
  </a>
</p>

# License

[MIT License](https://github.com/panzhiyue/vuepress-plugin-demo-container-v2/blob/master/LICENSE) @2020-PRESENT [Wayco Wei](https://github.com/panzhiyue)
npm package: @panzi/getpass
Description: Simple password prompt for the command line.
Author: Mathias Panzenböck
Latest version: 1.1.0

getpass
=======

[![Test Status](https://img.shields.io/github/actions/workflow/status/panzi/getpass-ts/tests.yml)](https://github.com/panzi/getpass-ts/actions/workflows/tests.yml)
[![Release](https://img.shields.io/github/v/tag/panzi/getpass-ts)](https://github.com/panzi/getpass-ts/tags)
[![MIT License](https://img.shields.io/github/license/panzi/getpass-ts)](https://github.com/panzi/getpass-ts/blob/main/LICENSE.txt)
[![API Reference](https://img.shields.io/badge/API_Reference-informational)](https://panzi.github.io/getpass-ts)

Simple CLI password prompt for NodeJS for Unix(-like) operating systems. This
is inspired by [arekinath/node-getpass](https://github.com/arekinath/node-getpass),
but uses TypeScript and promises instead of callbacks.

The user can delete the entered password via backspace, but no other editing
features are supported at the moment. A password can contain a new line
character by pressing Shift+Enter. Pasting also preserves new lines, though
escape sequences are still interpreted in pasted text, because pasting happens
via escape sequences.

The input is accepted when the user hits Ctrl+D, or when a new line, carriage
return, or null byte is read.

The user can abort by pressing Escape, Ctrl+C, or by a premature end of the
input stream. An API user can cancle the process via an
[AbortSignal](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal).

There are multiple options how invalid UTF-8/ASCII input can be handled. Per
default it is done in the same way Python does with it's "surrogate escape"
method.

Install
-------

```bash
npm install --save @panzi/getpass
```

Example
-------

```TypeScript
import getPass from '@panzi/getpass';

const password = await getPass();

if (password === null) {
    console.log('Aborted by user!');
    process.exit();
}
```

Dependencies
------------

This library has no hard dependencies, but if you enable echoing then for the
width calculation on the `echoChar` various `wcswidth()` libraries are tried to
be used and if none are available a simple fallback is used. The library
fallback order is:

* [wcwidth-o1](https://www.npmjs.com/package/wcwidth-o1)
* [wcswidth](https://www.npmjs.com/package/wcwidth)
* [simple-wcswidth](https://www.npmjs.com/package/simple-wcswidth)

The simple built-in fallback is:

```TypeScript
function wcswidth(text: string): number {
    return text.replace(/([^\n])\p{Mn}+/gu, '$1').replace(/\p{Emoji_Presentation}/gu, 'xx').length;
}
```

License
-------

[MIT License](LICENSE.txt)
npm package: @panzi/isomorphic-webcrypto
Description: Expose the WebCrypto object in browser and NodeJS including types.
Latest version: 1.0.0

# isomorphic-webcrypto

Expose the WebCrypto object in browser and NodeJS including types.

All this does is:

```JavaScript
exports.default = crypto;
```

Plus giving it types via:

```TypeScript
import { webcrypto } from 'node:crypto';
export default webcrypto;
```

This way you can use the WebCrypto API the same way in a browser or a NodeJS
based project.
npm package: @panzi/unicode-bar-chart
Description: A very simple function to plot a bar chart for console output using Unicode.
Author: Mathias Panzenböck
Latest version: 1.1.2

Unicode Bar Chart
=================

A very simple function to plot a bar chart for console output using Unicode.

Because of the used [Unicode block elements](https://en.wikipedia.org/wiki/Block_Elements)
the bars actually display 8 steps per character.

Horizontally these symbols are used:
`▏` `▎` `▍` `▌` `▋` `▊` `▉` `█`

And vertically these symbols are used:
`▁` `▂` `▃` `▄` `▅` `▆` `▇` `█`

Demo
----

[Demo Video](https://www.youtube.com/watch?v=DCGuczlimZs)

[![Demo Video](screenshot.png)](https://www.youtube.com/watch?v=DCGuczlimZs)
npm package: @panzi/unicode-plot
Description: A very simple function to plot data as Unicode for console output.
Author: Mathias Panzenböck
Latest version: 1.2.0

Unicode Plot
============

A very simple function to plot data as Unicode for console output.

The Unicode [block element](https://en.m.wikipedia.org/wiki/Box-drawing_characters#Block_Elements)
symbols allow the graph to have a higher resolution than just one pixel by
character. That is each character has 2x2 pixels. The used symbols are:
`▗` `▝` `▐` `▖` `▄` `▞` `▟` `▘` `▚` `▀` `▜` `▌` `▙` `▛` `█`

Newer Unicode standards have
[symbols for legacy computing](https://en.wikipedia.org/wiki/Symbols_for_Legacy_Computing)
which would even allow 2x3 pixels by character, but the required symbols for
that aren't widely supported yet. Some examples for those symbols are:
`🬀` `🬁` `🬂` `🬃` `🬄` `🬅` `🬆` `🬇` `🬈` `🬉` `🬊` `🬋` `🬌` `🬍` `🬎` `🬏`  
Are they rendered correctly on your system?

Other software uses [braille patterns](https://en.wikipedia.org/wiki/Braille_Patterns#Block)
for this, which gives you even 2x4 pixels by character, but depending on the
used font the empty spots might actually be just empty circles and thus still
fill up the space that is supposed to be empty. Braille example characters:
`⠅` `⠇` `⠍` `⠝` `⠕` `⠏` `⠟` `⠗` `⠎` `⠞`

[Video Demo](https://www.youtube.com/watch?v=Cbuor9gwZxk)

Example
-------

```TypeScript
const TAU = 2 * Math.PI;
const values = new Array(320);
for (let index = 0; index < values.length; ++ index) {
    const x = TAU * (index / values.length);
    values[index] = [x, Math.sin(x)];
}
const lines = unicodePlot(values, {
    yRange: [-1.5, 1.5],
    xLabel: x => x.toFixed(3),
    yLabel: y => y.toFixed(3),
});
console.log(lines.join('\n'));
```

![Screenshot of the output](screenshot.png)