open-index/open-npm huggingface dataset:
npm package: @schoenbergerb/logical-expression-parser
Description: Logical expression parser and evaluates result, suitable for permissions management
Author: Bernhard Schönberger
Latest version: 1.1.7




# Logical Expression Parser

<br />

This is a logical expression parser for TypeScript, it can parse a logical expression into a AST object and evaluates the result using your token checking function.

It's original developed by NimitzDEV: 
https://github.com/NimitzDEV/logical-expression-parser

<br />

### Improvements compared to the original:
- typescript support
- custom logical operators

<br />

#### [Default] logical operators
 - `/` Or
 - `&` And
 - `!` Not
 - `()` Parentheses

<br />

## How it works
1. The parser parse and tokenize the expression, for example one of your function requires `REGISTERED&(SPECIAL/INVITED)`
1. Parser then will pass `REGISTERED`, `SPECIAL` and `INVITED` into your token checking function to get a boolean result
1. Finaly the parser will evaluates the final result

<br />
<br />

## Examples
```typescript
  const { evaluate } = ExpressionParserFactory.init().build();
  const result1 = evaluate("REGISTERED&(SPECIAL/INVITED)", ["REGISTERED", "INVITED"]); // --> true
  const result2 = evaluate("REGISTERED&(SPECIAL/INVITED)", ["REGISTERED"]); // --> false
```
<br />

use custom operators if needed:
```typescript

  const { evaluate } = ExpressionParserFactory.init()
    .setToken(Token.OPERATOR_AND, '+')
    .setToken(Token.OPERATOR_NOT, '-')
    .setToken(Token.OPERATOR_OR, '|')
    .setToken(Token.PARENTHESES_OPEN, '{')
    .setToken(Token.PARENTHESES_CLOSE, '}')
    .build();

  const result = evaluator.evaluate("{A+C}|{B&-C}", ['A', 'B'])
```
npm package: @schoenwald/atomicmarket
Description: js module to fetch data from the atomicmarket contract
Author: pink.network
Latest version: 0.3.0

# AtomicMarket JavaScript

JS Library to read data from the atomicmarket contract which is based on the atomicassets NFT standard.

Contract / General Documentation can be found on [https://github.com/pinknetworkx/atomicmarket-contract/wiki](https://github.com/pinknetworkx/atomicmarket-contract/wiki)

## Usage

This is a [Node.js](https://nodejs.org/en/) module available through the
[npm registry](https://www.npmjs.com/). Installation is done using the
[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):

```sh
$ npm install atomicmarket
```

### Initialize

Web library can be found in the [dist](https://github.com/pinknetworkx/atomicmarket-js/blob/master/dist/atomicmarket.js) folder

```javascript
// standard import
const {ExplorerApi} = require("atomicmarket");
// ES6 import
import {ExplorerApi} from "atomicmarket"
```

## Documentation

There are two methods available to fetch data from the blockchain.

* **ExplorerAPI**: uses an hosted API which proves simple and fast REST API endpoints
* **RpcAPI**: uses only native nodeos calls

### Explorer API

The explorer API uses [eosio-contract-api](https://github.com/pinknetworkx/eosio-contract-api) to query data about the NFTs. 
A documentation of each endpoint and its responses can be found [here](https://wax-test.api.atomicassets.io/atomicmarket/docs/swagger).
It is recommended to self-host the API for the best performance.


#### Example
```javascript
// init Explorer Api
// endpoint: server where atomicmarket api is deployed
// namespace: used namespace for the API
// options:
// - fetch: either node-fetch module or the browser equivalent
const api = new ExplorerApi("https://test.wax.api.atomicassets.io", "atomicmarket", {fetch});

const asset = await api.getSale("100");
```

#### Methods

Currently missing

#### Types

Each method returns the unmodified response from the API call. For more information look at the Models 
on [the documentation](https://test.wax.api.atomicassets.io/atomicmarket/docs/swagger)

### RpcApi

Coming eventually
npm package: @schoepferisch/leaflet-control-position
Description: [*LeafletJS*](https://leafletjs.com/) Plugin for customizing Control position.
Author: schoepferisch
Latest version: 1.0.1

# L.ControlPosition
[*LeafletJS*](https://leafletjs.com/) Plugin for customizing Control position.

## Defined Corners
```javascript
        topcenter, topleft, topright,
        bottomcenter, bottomleft, bottomright,
        middlecenter, middleleft, middleright,

// you can define your own pair of corners by adding classes .customx and .customy in your stylesheets
        customxcustomy, 
        customxleft, customxright, customxcenter
        topcustomy, bottomcustomy, middlecustomy
```

![L.ControlPosition](https://github.com/schoepferisch/L.ControlPosition/raw/main/L.ControlPosition.PNG "Control position customization")

## Motivation
>Tired writing the same code in different projects. I found an example of L.Map.include on stackoverflow and extended it by some useful methods. 

## How to use
Import *Leaflet* first and *L.ControlPosition* after
```html
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css"
   integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A=="
   crossorigin=""/>

<link rel="stylesheet" href="src/L.ControlPosition.css">

<!-- Make sure you put this AFTER Leaflet's CSS -->
<script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"
   integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA=="
   crossorigin=""></script>

<script src="src/L.ControlPosition.js"></script>
<!-- other libraries -->

<!-- dont forget to put here the body and map div -->
<script>
var map = L.map("map", { maxZoom: 15 }).setView([11, 11], 9);
console.log(map.getCorner('middlecenter'));
</script>
```

### Tested with *Leaflet* 1.7.1, other versions unknown

## Methods

```javascript
// check if the corner was added to the map
hasCorner(pos: String): Boolean
//  returns `false` if the corner wasnt added to the map
```

```javascript
// get the String with a DIV according to the current corner
getCorner(pos: String): String or undefined
// retruns undefined if the corner wasnt added to the map
```

```javascript
// iterate through all corners, which were added to the map
eachCorner(fn: Function, context?: Object): this

// for example if you want to get a list of existing corners
map.eachCorner(function (position, cornerDiv) {
    console.log(position, cornerDiv);
});
```

```javascript
// check if to the existing corner a control was added to the map
hasControlAtCorner(pos: String): Boolean or undefined
// retruns undefined if the corner wasnt added to the map
```

# License
L.ControlPosition is free software, and may be redistributed under the MIT-LICENSE.

# To contributors
Contributors are welcome. If you want to contribute, please add a new issue.
npm package: @schoko/schematics
Description: ITH-Schematics
Latest version: 1.0.2

# Getting Started With Schematics

This repository is a basic Schematic implementation that serves as a starting point to create and publish Schematics to NPM.

### Testing

To test locally, install `@angular-devkit/schematics-cli` globally and use the `schematics` command line tool. That tool acts the same as the `generate` command of the Angular CLI, but also has a debug mode.

Check the documentation with
```bash
schematics --help
```

### Unit Testing

`npm run test` will run the unit tests, using Jasmine as a runner and test framework.

### Publishing

To publish, simply do:

```bash
npm run build
npm publish
```

That's it!
npm package: @schola-team/components-test
Description: SDS UI React library
Author: Schola Product Team
Latest version: 1.0.3

#  Schola Components Library
React component library for Schola UI platforms.


###  To collaborate
Clone this repository to your local environment and run:

    npm install

  We use Storybook to organize our components and design system. To develop use:

    npm run storybook



##  To build and publish to NPM
Add the components to the file: `src/lib/index.js` that wants to be in the final package. So then run:

    npm run build

Now, it's time to make logging on NPM in your browser. Ask the credentials to the team. Then, log in to your terminal. For more information, [consult here.](https://docs.npmjs.com/creating-a-new-npm-user-account#testing-your-new-account-with-npm-login)

Every time that we want to update the library, we need to set manually the new version number on the package.json. Eg. `"version": "0.1.15"`. Otherwise, it will output an error in the publishing process.

Once the build process and the version are completed we will be able to publish the library on NPM. Run:

    npm publish

Automatically the package will be updated to NPM. [Check it here.](https://www.npmjs.com/package/schola-components)


##  To deploy to Chromatic
The process to make an update of our Storybook into Chromatic is simpler. Run:

    npm run chromatic
This command contains the token that connect our Storybook to our Chromatic account. In a few seconds the deploy will be available.