# @brainly/onesky-utils 中文文档

规范地址：https://npmcn.com/package/%40brainly/onesky-utils/

版本：1\.4\.2
npm 元数据更新时间：2024-07-18T10:03:35.761Z
中文译文更新时间：2026-11-08T13:41:48.380Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40brainly/onesky-utils
原文对照：https://npmcn.com/package/%40brainly/onesky-utils/?lang=original
项目主页：https://github.com/brainly/nodejs-onesky-utils
源码仓库：https://github.com/brainly/nodejs-onesky-utils

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：38.5 kB，23 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：3 个
- 首次发布：2018-03-01T11:52:34.901Z
- 最新版本发布：2023-06-28T11:17:18.748Z
- 近 30 天下载量：13546（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：7（近 12 个月 0 个）

## 中文简介

与OneSky翻译服务合作的Node.js utils.

## 安装

```sh
npm install @brainly/onesky-utils
```

也可以使用：`pnpm add @brainly/onesky-utils`、`yarn add @brainly/onesky-utils`、`bun add @brainly/onesky-utils`

## README

# 节点功能 [![Build Status](https://travis-ci.org/brainly/nodejs-onesky-utils.svg?branch=master)](https://travis-ci.org/brainly/nodejs-onesky-utils) [![Code Climate](https://codeclimate.com/github/brainly/nodejs-onesky-utils/badges/gpa.svg)](https://codeclimate.com/github/brainly/nodejs-onesky-utils) [![npm version](https://badge.fury.io/js/%40brainly%2Fonesky-utils.svg)](https://www.npmjs.com/package/@brainly/onesky-utils)

用于合作的节点.js utils [一个Sky](http://www.oneskyapp.com/) 翻译服务.

## 安装

```
$ npm i @brainly/onesky-utils
```

## 示例

### 获取文件

```js
var onesky = require('@brainly/onesky-utils');

var options = {
  language: 'en_EN',
  secret: '1234567',
  apiKey: 'abcdefg',
  projectId: '123',
  fileName: 'translations.po'
};

onesky.getFile(options).then(function(content) {
  console.log(content);
}).catch(function(error) {
  console.log(error);
});
```

### 获取文件

```js
var onesky = require('@brainly/onesky-utils');

var options = {
  secret: '1234567',
  apiKey: 'abcdefg',
  projectId: '123',
};

onesky.getFiles(options).then(function(content) {
  console.log(content);
}).catch(function(error) {
  console.log(error);
});
```

### 获取多语言文件

```js
var onesky = require('onesky-utils');

var options = {
  language: 'en_EN',
  secret: '1234567',
  apiKey: 'abcdefg',
  projectId: '123',
  fileName: 'translations.po',
  format: 'I18NEXT_MULTILINGUAL_JSON'
};

onesky.getMultilingualFile(options).then(function(content) {
  console.log(content);
}).catch(function(error) {
  console.log(error);
});
```

### 弹出后

```js
var onesky = require('onesky-utils');

var options = {
  secret: '1234567',
  apiKey: 'abcdefg',
  projectId: '123',
  name: 'screenshot-name',
  image: 'base64-encoded-image',
  tags: [
    {
      key: 'translation-key',
      x: 100,
      y: 100,
      width: 100,
      height: 100,
      file: 'translations.po',
    },
  ],
};

onesky.postScreenshot(options).then(function(response) {
    console.log(response);
  }).catch(function(error) {
    console.log(error);
  });
```

### 邮箱

```js
var onesky = require('onesky-utils');

var options = {
  language: 'en-US',
  secret: '1234567',
  apiKey: 'abcdefg',
  projectId: '123',
  fileName: 'translations.json',
  format: 'HIERARCHICAL_JSON',
  content: JSON.stringify(translations),
  keepStrings: true
};

onesky.postFile(options).then(function(content) {
  console.log(content);
}).catch(function(error) {
  console.log(error);
});
```

### 获取语言

```js
var onesky = require('onesky-utils');

var options = {
  apiKey: 'abcdefg',
  secret: '1234567',
  projectId: '123'
};

onesky.getLanguages(options).then(function(content) {
  console.log(content);
}).catch(function(error) {
  console.log(error);
});
```

## API 密码

### 获取文件( 选项)

从 OneSky 下载翻译文件 .

通过承诺返回文件内容 .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项. 文件Name** - 翻译文件名称
-   **选项。语言** - 语言版本
-   **选项** - 说吧 `secret` 财务报告和审定财务报表 `apiKey` 用于认证
-   **选项. apiKey**

### 获取文件( 选项)

通过承诺返回每个文件的信息 .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项** - 说吧 `secret` 财务报告和审定财务报表 `apiKey` 用于认证
-   **选项. apiKey**

### 获取多语言文件( 选项)

从 OneSky 下载多语言翻译.

通过承诺返回文件内容 .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项. 文件Name** - 翻译文件名称
-   **选项。格式** - 反应文件格式(可选. 默认为 `I18NEXT_MULTILINGUAL_JSON`(中文(简体) )
-   **选项。语言** - 语言版本
-   **选项** - 说吧 `secret` 财务报告和审定财务报表 `apiKey` 用于认证
-   **选项. apiKey**

### 后Screenshot( 选项)

上传截图文件到 OneSky .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项** - 说吧 `secret` 用于认证
-   **选项. apiKey** - 说吧 `apiKey` 用于认证
-   **选项。名称** - 一个独特的名称,用于识别您网站、应用软件、博客等中图像的位置(提示:网页路径)
-   **选项.图像** - Base64在Data URI方案结构中编码了图像数据。 请参看Data URI计划和Base64
-   **选项.tags \[\]** - 翻译与截图结合
-   **选项.tags\[\]。 键** - 翻译的钥匙
-   **选项.tags\[\].x** - 翻译部分的X轴
-   **选项.tags\[\].y** - 翻译部分的Y轴
-   **选项.tags \[\].width** - 翻译部分的宽度
-   **选项.tags\[\].hight** - 翻译部分的高度
-   **选项.tags\[\].file** (可选) - 字符串文件名称

### 后文件( 选项)

上传翻译文件到 OneSky .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项. 文件Name** - 翻译文件名称
-   **选项。语言** - 语言版本
-   **选项。格式** - 文件格式([在此列出](https://github.com/onesky/api-documentation-platform/blob/master/reference/format.md)(中文(简体) )
-   **选项。内容** 与文件内容的字符串
-   **选项。 保留字符串** 布尔语句如果此文件中未显示的已上传字符串, 则应该贬值或保留
-   **选项.allow 相同的原文** 保留与源文本相同的翻译(可选. 默认为 `false`(中文(简体) )
-   **选项** - 说吧 `secret` 财务报告和审定财务报表 `apiKey` 用于认证
-   **选项. apiKey**

通过承诺返回 JSON API 响应内容 . 示例

```JSON
{
    "meta": {
        "status": 200,
        "record_count": 16
    },
    "data": [
        {
            "name": "translations.json",
            "string_count": 236,
            "last_import": {
                "id": 123,
                "status": "in-progress"
            },
            "uploaded_at": "2013-10-07T15:27:10+0000",
            "uploaded_at_timestamp": 1381159630
        }
    ]
}
```

### 获取语言( 选项)

获取项目语言列表 .

这个 `options` 需要对象。 选项包括:

-   **选项。projectId** - 项目数字标识
-   **选项** - 说吧 `secret` 财务报告和审定财务报表 `apiKey` 用于认证
-   **选项. apiKey**

通过承诺返回 JSON API 响应内容 . 示例

```JSON
{
    "meta": {
        "status": 200,
        "record_count": 2
    },
    "data": [
        {
            "code": "en-US",
            "english_name": "English (United States)",
            "local_name": "English (United States)",
            "locale": "en",
            "region": "US",
            "is_base_language": true,
            "is_ready_to_publish": true,
            "translation_progress": "100%",
            "uploaded_at": "2013-10-07T15:27:10+0000",
            "uploaded_at_timestamp": 1381159630
        },
        {
            "code": "ja-JP",
            "english_name": "Japanese",
            "local_name": "日本語",
            "locale": "ja",
            "region": "JP",
            "is_base_language": false,
            "is_ready_to_publish": true,
            "translation_progress": "98%",
            "uploaded_at": "2013-10-07T15:27:10+0000",
            "uploaded_at_timestamp": 1381159630
        }
    ]
}
```

## 测试

```
$ npm test
```

## 许可证

[麻省理工学院](https://npmcn.com/package/%40brainly/onesky-utils/LICENSE)

## 常见问题

### @brainly/onesky-utils 是什么？

与OneSky翻译服务合作的Node\.js utils\.

### 如何安装 @brainly/onesky-utils？

在项目目录运行 npm install @brainly/onesky-utils，或使用 pnpm add / yarn add / bun add。

### @brainly/onesky-utils 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/brainly\_\_onesky-utils 是否存在。

### @brainly/onesky-utils 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @brainly/onesky-utils 可以商用吗？

@brainly/onesky-utils 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @brainly/onesky-utils 的下载量有多少？

根据 npm 官方下载统计，@brainly/onesky-utils 在 2026/10/09 – 2026/11/07 这 30 天内被下载 13,546 次，日均约 452 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @brainly/onesky-utils 还在维护吗？

最新版本 1\.4\.2 发布于 2023/06/28（3 年前）；至今共发布 7 个版本，其中过去 12 个月发布了 0 个；首次发布于 2018/03/01。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

