# @churchapps/content-providers 中文文档

规范地址：https://npmcn.com/package/%40churchapps/content-providers/

版本：0\.16\.1
npm 元数据更新时间：2026-11-06T01:07:42.903Z
中文译文更新时间：2026-11-09T15:41:46.126Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40churchapps/content-providers
原文对照：https://npmcn.com/package/%40churchapps/content-providers/?lang=original
项目主页：https://github.com/ChurchApps/Packages#readme
源码仓库：https://github.com/ChurchApps/Packages

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

- 包体积（解压后）：4.4 MB，9 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-02-20T16:02:48.954Z
- 最新版本发布：2026-11-06T01:07:42.566Z
- 近 30 天下载量：2796（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：44（近 12 个月 44 个）

## 中文简介

与第三方提供者互动的帮助者课程

## 安装

```sh
npm install @churchapps/content-providers
```

也可以使用：`pnpm add @churchapps/content-providers`、`yarn add @churchapps/content-providers`、`bun add @churchapps/content-providers`

## README

![](https://raw.githubusercontent.com/ChurchApps/B1Admin/main/public/images/logo.png)

# @churchapps/内容提供者

> **内容 提供助手** 是TypeScript库,用于与第三方内容提供商,如规划中心(Planning Center),"经验教训"等进行整合. 教堂,还有更多。 它为浏览媒体库,处理OAuth认证,以及在教堂演示软件中检索回放内容提供了统一的界面.

## 安装

```bash
npm install @churchapps/content-providers
```

## 使用量

### 浏览可用供应商

```typescript
import { getAllProviders, getAvailableProviders } from '@churchapps/content-providers';

// Get all registered providers
const providers = getAllProviders();

// Get info about available providers
const available = getAvailableProviders();
console.log(available); // [{ id: 'planningcenter', name: 'Planning Center', ... }]
```

### 使用特定提供者

```typescript
import { getProvider } from '@churchapps/content-providers';

const provider = getProvider('planningcenter');

// Browse content
const items = await provider.browse();

// Get presentations/playlist for a service
const plan = await provider.getPresentations(serviceId);
```

### 内建供应商

-   **B1 教堂提供器** - B1. 教会计划(将计划项目与教学场所和外部提供者合并)
-   **经验教训** - 课程和附加
-   **规划中心** - 规划中心服务(仅浏览)
-   **圣经项目提供者** - 《圣经计划》录像
-   **APlay 提供者** - A.Play媒体图书馆
-   **签名 Presenter 服务器** - 签名播放列表
-   **弹出盒** - 来自 Dropbox 账户的媒体文件
-   **耶稣护法** - 耶稣电影计划(Arclight API)
-   **Cbn 提供** - CBN 超书课程
-   **高压设备** - 高压儿童课程(静态目录)
-   **生命教会** - 生活 - 生活 - Life. 教会儿童课程(静态目录)
-   **FreeShow提供工具** - 本地网络上发现的自由秀节目(模拟播放列表)

### 创建自定义提供者

```typescript
import { BaseProvider, registerProvider } from '@churchapps/content-providers';

class MyProvider extends BaseProvider {
  // Declare id/name/logos/config/requiresAuth/authTypes/capabilities and implement browse().
  // Every declared authType/capability must be backed by its IProvider methods (enforced by
  // tests/contentProviders.test.ts):
  //   oauth_pkce   -> generateCodeVerifier / buildAuthUrl / buildAuthUrlFromChallenge / exchangeCodeForTokens
  //                   (OAuthHelper implements the standard flow; delegate to it like SignPresenterProvider)
  //   device_flow  -> initiateDeviceFlow / pollDeviceFlowToken (see DeviceFlowHelper)
  //   form_login   -> performLogin
  //   network_discovery -> discoverInstances
  //   playlist / instructions / mediaLicensing -> getPlaylist / getInstructions / checkMediaLicense
  // The protected apiRequest() helper performs authenticated JSON fetches against config.apiBase.
}

registerProvider(new MyProvider());
```

## 参与

### 帮助我们

这个程序免费的唯一原因是由于用户的慷慨支持. 如果你想支持我们 保持这个自由, 请去 [教会附录](https://churchapps.org/partner) 或者说 [在 GitHub 上赞助我们](https://github.com/sponsors/ChurchApps/)谢谢你!

### 加入社区

我们有一个伟大的社区 最终用户在 [脸书](https://www.facebook.com/churchapps.org)。这是一个很好的方法 问问题,得到提示和跟踪新的更新。 来加入我们!

### 报告一个问题

如果你发现一个问题或有一个特征请求, 就把它交给我们 [问题日志](https://github.com/ChurchApps/ContentProviderHelper/issues)别害羞 程序就是这样好的.

### 加入我们Slack

如果你愿意以任何方式做出贡献, 请到我们这里去 [黑频道](https://join.slack.com/t/livechurchsolutions/shared_invite/zt-i88etpo5-ZZhYsQwQLVclW12DKtVflg) 自我介绍 我们很乐意听到你的消息.

### 开始编码

如果你愿意为这个项目捐款:

1.  清除仓库
2.  安装依赖性 : `npm install`
3.  运行开发游乐场: `npm run dev`
4.  构建 : `npm run build`

## 许可证

麻省理工学院

## 常见问题

### @churchapps/content-providers 是什么？

与第三方提供者互动的帮助者课程

### 如何安装 @churchapps/content-providers？

在项目目录运行 npm install @churchapps/content-providers，或使用 pnpm add / yarn add / bun add。

### @churchapps/content-providers 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @churchapps/content-providers 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @churchapps/content-providers 可以商用吗？

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

### @churchapps/content-providers 的下载量有多少？

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

### @churchapps/content-providers 还在维护吗？

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

