open-index/open-npm huggingface dataset:
npm package: @markwhen/view-client
Description: Utility for a markwhen view to communicate with hosting app
Author: Rob Koch
Latest version: 1.6.1

# Markwhen view client

## Usage

```js
import { useLpc } from "@markwhen/view-client"

const { postRequest } = useLpc({
  markwhenState(ms) {
    // When there is some state change from the editor
    console.log(ms)
  }
  appState(newState) {
    // When the app state changes (dark mode, hovering event, selected event, etc)
    console.log(newState)
  }
}, {
  // Proxy all keystrokes by default; override specific combos when you want
  // to handle them inside the view instead of the parent window
  keystrokeOverrides: [
    { combo: "meta+k", action: "skip" },
    { combo: "ctrl+p", action: "proxy" }
  ],
  // Prevent default in the iframe when proxying (default: true)
  preventDefaultOnProxy: true
})
```

## Changelog

## 1.6.0

- Proxy keydown events to the parent window by default
- Prevent default on proxied keydown events by default (configurable via `preventDefaultOnProxy`)
- Allow opt-out or forced proxying for specific key combinations via `keystrokeOverrides`

## 1.4.4

- Bump deps

## 1.4.3

- Bump parser
- Add close function to close sockets and/or remove event listeners

## 1.4.2

- VS code support

## 1.4.1

- Error if nothing to post to

### 1.4.0
- Separate state into appState and markwhenState instead of sending both at the same time

### 1.3.0
- Bump parser (0.9.1)
- Support for imports

### 1.2.1
- Bump parser (0.8.1)
- Add colorMap to appState

### 1.1.1
- Use initially set state even if we have a socket connection

### 1.1.0
- Add websocket support
npm package: @markwylde/ftp-deploy
Description: Deploy a folder via ftp
Author: Mark Wylde
Latest version: 2.0.3

# simple ftp deploy
Deploy a folder to an ftp server.

## Installation
```
npm install @markwylde/ftp-deploy
```

## Usage
### Via command line
```
simple-ftp-deploy deployConfig.js
```

### Via API
```javascript
import deploy from '@markwylde/ftp-deploy';

const config = {
  // optional: default is false
  verbose: true,

  // optional: logger if verbose is true
  log: console.log,

  // list of syncs to make
  tasks: [
    {
      hostname: process.env.WEBSITE1_FTP_HOSTNAME,

      // optional
      port: 22,
      username: process.env.WEBSITE1_FTP_USERNAME,
      password: process.env.WEBSITE1_FTP_PASSWORD,

      // can be folder or file
      source: './dist/website1',

      // must be folder (if source is folder) or (file is source if file)
      destination: '',

      // optional: wipe everything in the destination folder
      clearDestination: true,
    }
  ]
};

deploy(config);
```
npm package: @markxmind/markxmind-core
Description: MarkXMind parser - Parse Markdown-like syntax to XMind mind map data structure.
Author: Zhichao
Latest version: 0.1.2

# @markxmind/markxmind-core

[![License](https://img.shields.io/github/license/jinzcdev/markxmind.svg)](https://github.com/jinzcdev/markxmind/blob/main/LICENSE)
[![中文文档](https://img.shields.io/badge/中文文档-点击查看-blue)](./README_zh-CN.md)
[![npm](https://img.shields.io/npm/v/@markxmind/markxmind-core.svg)](https://www.npmjs.com/package/@markxmind/markxmind-core)
[![GitHub Stars](https://img.shields.io/github/stars/jinzcdev/markxmind?style=social)](https://github.com/jinzcdev/markxmind)

MarkXMind parser — turn Markdown-like text into XMind mind map data.

> 🎉 **Use MarkXMind online**
>
> [**MarkXMind**](https://github.com/jinzcdev/markxmind) is an online editor that builds mind maps from XMindMark syntax. It offers real-time preview, export to .xmind / .svg / .png, and import of existing XMind files. [**Try it now**](https://markxmind.js.org/) →

## ⚙️ Requirements

- **Node.js** ≥ 18 (when used in Node).
- **Bundlers / runtimes** that support ES modules and/or CommonJS (package ships both).

## 📦 Install

```bash
npm install @markxmind/markxmind-core
```

## 📚 API

| Function                                                                       | Description                                                          |
| ------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
| `createMapByXMindMark(raw?: string)`                                           | Parse XMindMark text into a `SheetModel` (XMind sheet data).         |
| `parseXMindMarkToXMindFile(content: string)`                                   | Convert XMindMark text to a `.xmind` file (`Promise<ArrayBuffer>`).  |
| `parseXMindToXMindMarkFile(xmindFile: ArrayBuffer, targetSheetOrder?: number)` | Parse a `.xmind` file and return XMindMark text (`Promise<string>`). |

## 💡 Usage

```typescript
import {
    createMapByXMindMark,
    parseXMindMarkToXMindFile,
    parseXMindToXMindMarkFile,
    type SheetModel
} from "@markxmind/markxmind-core"

// Parse XMindMark text into a data structure
const sheetModel: SheetModel = createMapByXMindMark(`
Central Topic
- Main Topic 1
- Main Topic 2
    - Subtopic 2.1
    - Subtopic 2.2
`)

// Export as .xmind file
const arrayBuffer = await parseXMindMarkToXMindFile(xmindMarkContent)

// Read .xmind file as XMindMark text
const xmindMarkText = await parseXMindToXMindMarkFile(xmindFileBuffer)
```

## 📐 Type exports

```typescript
import type {
    SheetModel,
    TopicModel,
    TopicChildren,
    TopicType,
    BoundaryModel,
    SummaryModel,
    RelationshipModel
} from "@markxmind/markxmind-core"
```

## 🎯 Use cases

- **Web editors** — Live preview of MarkXMind text.
- **CLI tools** — Convert between `.xmind` and `.xmindmark` on the command line.

## 📄 License

MIT