open-index/open-npm huggingface dataset:
npm package: @litnn/react-yandex-maps
Description: Yandex.Maps API bindings for React
Latest version: 1.0.2

# FORK React Yandex Maps

[![npm](https://img.shields.io/npm/v/@pbe/react-yandex-maps)](https://www.npmjs.com/package/@pbe/react-yandex-maps)
[![npm bundle size](https://img.shields.io/bundlephobia/minzip/@pbe/react-yandex-maps)](https://bundlephobia.com/package/@pbe/react-yandex-maps)

[Yandex Maps API][ymaps-api] bindings for React v19.x

[ymaps-api]:
  https://tech.yandex.com/maps/doc/jsapi/2.1/quick-start/index-docpage/

### Features

- Supports TypeScript out of the box
- Automatic yamps api and modules loading
- Declarative rendering

### Installation

npm:

```
npm install @litnn/react-yandex-maps
```

yarn:

```
yarn add @litnn/react-yandex-maps
```

### Getting Started

Try running a simple example:

```jsx
import React from 'react';
import { YMaps, Map, Placemark } from '@lit/react-yandex-maps';

export default function App() {
  const defaultState = {
    center: [55.751574, 37.573856],
    zoom: 5,
  };

  return (
    <YMaps>
      <Map defaultState={defaultState}>
        <Placemark geometry={[55.684758, 37.738521]} />
      </Map>
    </YMaps>
  );
}
```

### Documentation

The React Yandex Maps docs are located at
[website](https://pbe-react-yandex-maps.vercel.app)

- [Getting Started](https://pbe-react-yandex-maps.vercel.app/)
- [Core Principles](https://pbe-react-yandex-maps.vercel.app/core-principles/)
- [API Reference](https://pbe-react-yandex-maps.vercel.app/category/api-reference/)

### Contribution

We appreciate your help!

To contribute, please read our [contributing instructions](./CONTRIBUTING.md).

### License

[MIT](./LICENSE)
npm package: @litomore/xo-config
Description: XO config for LitoMore
Latest version: 0.1.0

# @litomore/xo-config

The XO config for LitoMore

## Install

```shell
npm i -D @litomore/xo-config
```

## Usage

Simply add the following to your `xo.config.mjs`.

```js
import litomoreXoConifg from "@litomore/xo-config";

const xoFlatConfig = [...litomoreXoConifg];

export default xoFlatConfig;
```

## License

MIT
npm package: @litou.cjs/stock-data-downloader
Description: Download Chinese A-share financial reports (annual, semi-annual, quarterly) | 下载 A 股上市公司财务报告
Author: 陈建生
Latest version: 0.1.0

# Stock Data Downloader | A股财务报告下载工具

[![npm version](https://img.shields.io/npm/v/@litou.cjs/stock-data-downloader.svg)](https://www.npmjs.com/package/@litou.cjs/stock-data-downloader)
[![npm downloads](https://img.shields.io/npm/dm/@litou.cjs/stock-data-downloader.svg)](https://www.npmjs.com/package/@litou.cjs/stock-data-downloader)
[![Node.js Version](https://img.shields.io/node/v/@litou.cjs/stock-data-downloader.svg)](https://nodejs.org/)

一个命令行工具，用于批量下载 A 股上市公司的财务报告（年报、半年报、季报）。

## 功能特性

- ✅ **多种报告类型**: 支持年报、半年报、季报下载
- 🔍 **智能搜索**: 支持股票代码、公司名称、拼音模糊匹配
- ⚡ **并发下载**: 可配置并发数，默认 3 个并发
- 🔄 **自动重试**: 失败自动重试，支持指数退避
- 📊 **进度显示**: 实时进度条显示下载状态
- 📝 **日志记录**: 支持控制台和文件双路日志输出
- ✅ **文件验证**: 自动验证 PDF 文件完整性
- 🚫 **去重处理**: 自动跳过已下载的文件

## 安装

```bash
npm install -g @litou.cjs/stock-data-downloader
```

## 快速开始

### 交互式模式

```bash
stock-data-downloader
```

程序会提示你输入股票代码或公司名称，然后展示匹配结果供选择。

### 命令行模式

```bash
# 下载贵州茅台最近10年的报告
stock-data-downloader --stock 600519

# 下载平安银行最近5年的报告
stock-data-downloader --stock 平安银行 --years 5

# 指定输出路径和并发数
stock-data-downloader --stock 600519 --output ./reports --concurrency 5

# 详细日志模式
stock-data-downloader --stock 600519 --verbose
```

## 命令行选项

```
Options:
  -s, --stock <code>         股票代码或公司名称
  -y, --years <number>       下载年份数量 (默认: 10)
  -o, --output <path>        输出路径 (默认: ./downloads)
  -c, --concurrency <number> 并发下载数 (默认: 3)
  --timeout <ms>             超时时间（毫秒） (默认: 30000)
  -v, --verbose              详细日志模式
  -V, --version              显示版本号
  -h, --help                 显示帮助信息
```

## 输出文件结构

```
downloads/
└── 600519_贵州茅台/
    ├── 600519_贵州茅台_2023_年报.pdf
    ├── 600519_贵州茅台_2023_半年报.pdf
    ├── 600519_贵州茅台_2023_Q1报.pdf
    ├── 600519_贵州茅台_2023_Q3报.pdf
    ├── 600519_贵州茅台_2022_年报.pdf
    └── ...
```

## 数据源

- **主数据源**: 巨潮资讯网 (cninfo.com.cn)
- **官方、权威、完整**的 A 股上市公司公告数据

## 开发

### 项目结构

```
src/
├── cli/              # CLI 入口和命令行处理
│   └── index.ts
├── core/             # 核心逻辑
│   ├── downloader.ts # 下载引擎（并发、重试、进度）
│   └── fuzzySearch.ts # 模糊搜索功能
├── datasources/      # 数据源实现
│   └── cninfo.ts     # 巨潮资讯网接口
├── utils/            # 工具函数
│   ├── logger.ts     # 日志系统
│   ├── progress.ts   # 进度条
│   └── fileUtils.ts  # 文件工具
└── types/            # TypeScript 类型定义
    └── index.ts
```

## 技术栈

- **语言**: TypeScript
- **运行时**: Node.js >= 18.0.0
- **主要依赖**:
  - `axios`: HTTP 请求
  - `commander`: CLI 框架
  - `inquirer`: 交互式命令行
  - `p-queue`: 并发控制
  - `cli-progress`: 进度条
  - `winston`: 日志系统
  - `pinyin-pro`: 拼音转换
  - `fs-extra`: 文件操作

## 常见问题

### Q: 为什么有些报告下载失败？

A: 可能的原因：
1. 网络不稳定：程序会自动重试3次
2. 数据源限流：程序内置了速率限制机制
3. 文件不存在：部分公司某些季度可能未发布报告

### Q: 支持哪些股票市场？

A: 当前版本仅支持 A 股（上交所、深交所）。未来版本计划支持港股和美股。

### Q: 如何处理重复下载？

A: 程序会自动检查文件是否已存在，已存在的文件会被跳过。

## License

MIT

## Author

陈建生

## Changelog

### v0.1.0 (2026-03-25)

- 初始 MVP 版本发布
- 支持 A 股年报、半年报、季报下载
- 实现模糊搜索功能
- 支持并发下载和自动重试