open-index/open-npm huggingface dataset:
npm package: @onsvisual/svelte-maps
Description: Reusable map components for Svelte projects.
Author: Ahmad Barclay
Latest version: 1.2.28

# @onsvisual/svelte-maps

[![npm version](https://badge.fury.io/js/@onsvisual%2Fsvelte-maps.svg)](https://www.npmjs.com/package/@onsvisual/svelte-maps)

Reusable map components for Svelte projects built on Maplibre GL JS.

Usage examples can be found in the **/src/App.svelte** file in this repo, which can be [previewed live here](https://onsvisual.github.io/svelte-maps/).
npm package: @ont-community/html5-websocket
Description: HTML5 WebSocket for node.js
Author: Pedro Ladaria
Latest version: 2.0.3

# html5-websocket

This module implements the standard [HTML5 WebSocket API](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) as a thin layer over the great [ws](https://www.npmjs.com/package/ws) library.

The motivation behind this module is to be able to write WebSocket based libraries that will run without changes in Node.js, Browsers or React Native apps.

## Install

```bash
npm install --save @ont-community/html5-websocket
```

## Usage

The API is the same as the standard HTML5 Socket API so nothing new here...

```javascript
const WebSocket = require('@ont-community/html5-websocket');

const ws = new WebSocket('ws://html5rocks.websocket.org/echo');

ws.onopen = function () {
    ws.send('Hello!');
};

ws.onmessage = function (e) {
    console.log(e.data);
};

ws.onerror = function (error) {
    console.log('Fail:', error);
};
```

You can also use the DOM Level 2 Event Model

```javascript
const handleMessage = function (e) {
    console.log(e.data);
};

// add listener
ws.addEventListener('message', handleMessage);

// remove listener
ws.removeEventListener('message', handleMessage);
```

## License

MIT
npm package: @ont-dev/sm.js
Description: SM series cryptography in javascript implementation
Author: Alver Lyu
Latest version: 0.1.7

# sm.js

SM series cryptography in javascript implementation.

SM2 signature and SM3 hash are implemented.

## install

`sm.js` is available in npm.

```sh
npm install sm.js
```

## Usage 

### SM2 key pair

Generate a key pair

```js
var sm2 = require('sm.js').sm2;

var key = sm2.genKeyPair();
```

The public key can be converted to a string or a byte array, for storing or
transmitting on network.

```js
var pubKeyString = key.pubToString();
var pubKeyBytes = key.pubToBytes('compress');
```

Note that there are 3 conversion modes: compress, nocompress and mex.
The default mode is nocompress.

To parse the public key string/array, simply use the key pair constructor

```
var key = new sm2.SM2KeyPair(pubKeyString);
```


### SM2 signature

The key pair can be used to sign message or verify the signature.

```js
var msg = 'abc';
var signature = key.sign(msg);

if (key.verify(msg, signature.r, signature.s)) {
	console.log('PASS');
}
```

Note that `key.pri` should not be null when signing, as well as `key.pub` for
verifying.

`sign` will combine the input message with extra infos(a constant ID, the curve
parameters and the public key), and use SM3 as the hash algorithm. While there
is a function pair `signRaw` and `verifyRaw` which do not use the extra infos.
Also there is a function pair `signDigest` and `verifyDigest` use the message
digest as the input, allowing for custom hashing.


### SM3 hash algorithm

The sm3 module is used to generate digest using SM3 hash algorithm.

```js
var sm3 = require('sm.js').sm3;

var msg = 'abc';
var hash = new sm3();
var digest = hash.sum(msg);
```