open-index/open-npm huggingface dataset:
npm package: @swimlane/swinger
Description: Aggregate multiple swagger specs into a single file. Useful when providing a combined definition for multiple microservices
Author: Swimlane
Latest version: 1.0.0

# Swinger

[![Build Status](https://travis-ci.org/swimlane/swinger.svg?branch=master)](https://travis-ci.org/swimlane/swinger) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/c13a68ee85a14c029d180154549ab829)](https://www.codacy.com?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=swimlane/swinger&amp;utm_campaign=Badge_Grade) [![Codacy Badge](https://api.codacy.com/project/badge/Coverage/c13a68ee85a14c029d180154549ab829)](https://www.codacy.com?utm_source=github.com&utm_medium=referral&utm_content=swimlane/swinger&utm_campaign=Badge_Coverage)

Swagger aggregation for microservices!

Swinger merges multiple swagger specifications into a single file. This allows you to provide a single specification that covers all your microservices.

## Features

- Merges any number of specifications
- Applies `basePath` (swagger 2.0) and `security` globals to every path before merging
- Namespaces `definitions` (swagger 2.0) if there are collisions
- Updates references (`$ref`) to include proper namespace
- Merges and deduplicates `tags`
- Merges `securityDefinitions` (swagger 2.0), deduplicating when named entry is shared between specs
- No external dependencies
- Typescript typings included

## Install

`npm install swinger`

## Usage

Swinger provides a `merge()` function. This function takes an array of Swagger specs in object (JSON) format. It then merges left to right. The first spec in the array is treated as the _Final_ spec with all the others merged into it.

### Example

```typescript
import * as swinger from 'swinger';

// get your specs from somewhere
const specs = getSpecs();

const masterSpec = {
  info: {
    title: 'Merged Spec',
    description: 'One spec to rule them all'
  },
  basePath: '/api',
  tags: [ 'merged' ]
};

const mergedSpec = swinger.merge([masterSpec, ...specs]);
```

## Credits

`swinger` is a [Swimlane](https://swimlane.com) open-source project; we believe in giving back to the open-source community by sharing some of the projects we build for our application. Swimlane is a security automation and orchestration (SAO) platform. Our platform empowers organizations to manage, respond to and neutralize cyber threats with the adaptability, efficiency and speed necessary to combat today’s rapidly evolving cyber threats.
npm package: @swimlane/turbine-transformations
Description: Turbine Transformations
Author: Swimlane
Latest version: 2.1.1

# Turbine Transformations

Transformation functions for use within Turbine.

## Install

`npm i @swimlane/turbine-transformations`

## Building

`npm run build`

## Testing

`npm run test`

## Usage

In order to utilize the transformation functions, you will first need to instantiate an evaluator. The only evaluators
that are currently supported are a Native evaluator and a JSONata evaluator. The JSONata evaluator allows the
transformation functions to be invoked from within JSONata expressions and the Native evaluator allows the
transformation
functions to be invoked directly (i.e. no intermediate expression language) via the same abstraction (i.e. the
TransformationEvaluator abstraction).

Due to a limitation with JSONata, functions can only be accessed via their namespaced-concatenated names. That is,
by concatenating the function's namespace with the function's capitalized name. For example: `date.adjust` -> `dateAdjust`.

### JSONata

```typescript
const evaluator = new JSONataEvaluator();
const context: TransformationContext<JSONataInput> = {
  input: {
    expression: `$dateAdjust(date, 5, 'days')`,
    data: {
      date: new Date(Date.now()).toISOString()
    }
  }
};
const result = await evaluator.evaluate(context) as string;
```

### Native

```typescript
const evaluator = new NativeEvaluator();
const context: TransformationContext<NativeInput> = {
  input: {
    function: 'dateAdjust',
    arguments: [new Date(Date.now()).toISOString(), 5, 'days']
  }
};
const result = await evaluator.evaluate(context) as string;
```
npm package: @swimly/miui
Description: 一个漂亮的webcomponent组件库！
Latest version: 1.0.0

#### 介绍

miui作为一个致敬miui12的前端ui组件库，其很多组件的样式都是遵循miui12的设计风格，采用`stencil`编写，利用现在最流行的`web-component`技术实现。能够实现一处编写多处使用，支持`vue`、`react`、`angular`、`ember`的嵌入使用！

#### 安装

``` bash
  npm install --save @swimly/miui
  yarn add @swimly/miui
```

#### CDN

`@0.2.2`为版本号，替换相应版本号即可！

``` html
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/miui.css">
  <script type="module" src="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/miui.esm.js"></script>
  <script nomodule="" src="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/dist/miui.js"></script>
```

#### HTML使用

如果你还没使用任何第三方框架，也可以直接使用该组件库，而且使用方式极其简单！

###### 引入样式
``` html
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/miui.css">
```
###### 引入插件
``` html
  <script type="module" src="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/miui.esm.js"></script>
  <script nomodule="" src="https://cdn.jsdelivr.net/gh/swimly/miui@v0.2.2/dist/miui.js"></script>
```
###### 使用插件
所有的控件都可以直接写一个标签名就可以，极大的减少了常用ui组件库的繁琐程度。
``` html
  <hc-button>按钮</hc-button>
```
其他使用方式，后续完善！
npm package: @swimm/tree-sitter
Description: Incremental parsers for node
Author: Max Brunsfeld
Latest version: 0.20.11

node tree-sitter
================

Incremental parsers for node

### Installation

```sh
npm install tree-sitter
```

### Usage

First, you'll need a Tree-sitter grammar for the language you want to parse. There are many [existing grammars](https://github.com/tree-sitter) such as [tree-sitter-javascript](http://github.com/tree-sitter/tree-sitter-javascript) and [tree-sitter-go](http://github.com/tree-sitter/tree-sitter-go). You can also develop a new grammar using the [Tree-sitter CLI](https://github.com/tree-sitter/tree-sitter/tree/master/cli).

Once you've got your grammar, create a parser with that grammar.

```javascript
const Parser = require('tree-sitter');
const JavaScript = require('tree-sitter-javascript');

const parser = new Parser();
parser.setLanguage(JavaScript);
```

Then you can parse some source code,

```javascript
const sourceCode = 'let x = 1; console.log(x);';
const tree = parser.parse(sourceCode);
```

and inspect the syntax tree.

```javascript
console.log(tree.rootNode.toString());

// (program
//   (lexical_declaration
//     (variable_declarator (identifier) (number)))
//   (expression_statement
//     (call_expression
//       (member_expression (identifier) (property_identifier))
//       (arguments (identifier)))))

const callExpression = tree.rootNode.child(1).firstChild;
console.log(callExpression);

// { type: 'call_expression',
//   startPosition: {row: 0, column: 16},
//   endPosition: {row: 0, column: 30},
//   startIndex: 0,
//   endIndex: 30 }
```

If your source code *changes*, you can update the syntax tree. This will take less time than the first parse.

```javascript
// Replace 'let' with 'const'
const newSourceCode = 'const x = 1; console.log(x);';

tree.edit({
  startIndex: 0,
  oldEndIndex: 3,
  newEndIndex: 5,
  startPosition: {row: 0, column: 0},
  oldEndPosition: {row: 0, column: 3},
  newEndPosition: {row: 0, column: 5},
});

const newTree = parser.parse(newSourceCode, tree);
```

### Parsing Text From a Custom Data Structure

If your text is stored in a data structure other than a single string, you can parse it by supplying a callback to `parse` instead of a string:

```javascript
const sourceLines = [
  'let x = 1;',
  'console.log(x);'
];

const tree = parser.parse((index, position) => {
  let line = sourceLines[position.row];
  if (line) {
    return line.slice(position.column);
  }
});
```
npm package: @swimm/tree-sitter-kotlin
Description: Tree-Sitter grammar for Kotlin
Author: fwcd
Latest version: 0.3.2

# Kotlin Grammar for Tree-Sitter

[![Build](https://github.com/fwcd/tree-sitter-kotlin/actions/workflows/build.yml/badge.svg)](https://github.com/fwcd/tree-sitter-kotlin/actions/workflows/build.yml)
[![NPM](https://img.shields.io/npm/v/tree-sitter-kotlin)](https://www.npmjs.com/package/tree-sitter-kotlin)
[![crates.io](https://img.shields.io/crates/v/tree-sitter-kotlin)](https://crates.io/crates/tree-sitter-kotlin)

[Kotlin](https://kotlinlang.org) language grammar for [Tree-Sitter](http://tree-sitter.github.io/tree-sitter/). You can try it out directly [on the web](https://fwcd.github.io/tree-sitter-kotlin).

![Icon](Icon128.png)

The grammar is based on the [official language grammar](https://kotlinlang.org/docs/reference/grammar.html).

## Project Structure

| File | Description |
| ---- | ----------- |
| grammar.js | The Tree-Sitter grammar |
| grammar-reference.js | A direct translation of the Kotlin language grammar that is, however, ambiguous to Tree-Sitter |
| src | The generated parser |

## Setup

>`npm install`

## Development

### Compilation

To (re-)compile the grammar, run:

>`npm run generate`

Note that the grammar is written completely in JavaScript (`grammar.js`), the other source files are generated by `tree-sitter`.

### Testing

To run the unit tests, run:

>`npm run test`

## WebAssembly

### Compilation

First make sure to have [Emscripten](https://emscripten.org/) installed. If you use Homebrew, you can `brew install emscripten`. Then run:

>`npm run build-wasm`

### Playground

After compiling the grammar to WebAssembly, you can invoke

>`npm run playground`

to launch an interactive editing environment that displays the parsed syntax tree on-the-fly in the browser. You can also view a deployed version of this playground [on the web](https://fwcd.github.io/tree-sitter-kotlin).

![Screenshot](playground-screenshot.png)

## Documentation

More documentation on how to create Tree-Sitter grammars [can be found here](https://tree-sitter.github.io/tree-sitter/creating-parsers).

## See also

* [Kotlin Language Server](https://github.com/fwcd/kotlin-language-server) for code completion, diagnostics and more
* [Kotlin Debug Adapter](https://github.com/fwcd/kotlin-debug-adapter) for JVM debugging support
npm package: @swimm/tree-sitter-powershell
Description: Powershell grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter)
Latest version: 1.1.1

# tree-sitter-powershell

Powershell grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter)

## References

* [Powershell 7.3](https://learn.microsoft.com/en-us/powershell/scripting/lang-spec/chapter-15?view=powershell-7.3)
npm package: @swimm/tree-sitter-ruby
Description: Ruby grammar for tree-sitter
Author: Rob Rix
Latest version: 0.20.1

tree-sitter-ruby
================

[![build](https://github.com/tree-sitter/tree-sitter-ruby/actions/workflows/ci.yml/badge.svg)](https://github.com/tree-sitter/tree-sitter-ruby/actions/workflows/ci.yml)

Ruby grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter).

#### References

* [AST Format of the Whitequark parser](https://github.com/whitequark/parser/blob/master/doc/AST_FORMAT.md)
npm package: @swimm/ui
Description: Swimm's Design System and Component Library
Latest version: 2.20.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# swimm-ui 

[![Test](https://github.com/swimmio/swimm-ui/actions/workflows/test.yml/badge.svg)](https://github.com/swimmio/swimm-ui/actions/workflows/test.yml)
[![npm version](https://badge.fury.io/js/@swimm%2Fui.svg)](https://badge.fury.io/js/@swimm%2Fui)

This repository contains components for Swimm's information architecture (styles, UI fixtures and other things). 
You can view the component library [here](https://swimmio.github.io/swimm-ui/).

## Contributing

Follow the [guide](.swm/development-workflow.o175v.sw.md).