# コンテンツコントロール

- Human documentation: [https://docs.univer.ai/ja-JP/guides/docs/features/content-controls](https://docs.univer.ai/ja-JP/guides/docs/features/content-controls)

- Agent Markdown: [https://docs.univer.ai/ja-JP/guides/docs/features/content-controls.md](https://docs.univer.ai/ja-JP/guides/docs/features/content-controls.md)

- Requested language: `ja-JP`

- Content language: `ja-JP`

- Documentation version: `1.1.0`

- Source: [docs/features/content-controls.ja-JP.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/docs/features/content-controls.ja-JP.mdx)

---

コンテンツコントロール（SDT）はリッチテキスト、テキスト、チェックボックス、日付、リスト、画像、グループ、繰り返しセクション、文書パーツに対応します。Docs Core と Pro ライセンスを設定し、文書作成前に以下を登録します。UI ロケールを `locales` にマージして CSS を読み込みます。Docs Advanced には含まれません。

#### npm

```bash
npm install @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-ui
```

#### pnpm

```bash
pnpm add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-ui
```

#### yarn

```bash
yarn add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-ui
```

#### bun

```bash
bun add @univerjs-pro/docs-sdt @univerjs-pro/docs-sdt-ui
```

```ts
import { UniverDocsSdtPlugin } from '@univerjs-pro/docs-sdt'
import { UniverDocsSdtUIPlugin } from '@univerjs-pro/docs-sdt-ui'
import FeatureLocale from '@univerjs-pro/docs-sdt-ui/locale/ja-JP'
import { LocaleType } from '@univerjs/core'

import '@univerjs-pro/docs-sdt-ui/lib/index.css'

univerAPI.loadLocales(LocaleType.JA_JP, FeatureLocale)

univer.registerPlugin(UniverDocsSdtPlugin)
univer.registerPlugin(UniverDocsSdtUIPlugin)
```

## 選択位置に挿入

コマンドは現在のテキスト選択を使用します。対応するコントロールは既存の選択内容を囲みます。繰り返し項目は親セクション経由で作成します。

```ts
import { InsertSdtCommand } from '@univerjs-pro/docs-sdt-ui'

await univerAPI.executeCommand(InsertSdtCommand.id, { kind: 'checkbox' })
```

## ロックと保存

コントロールは `IDocumentBody.customRanges` の `CustomRangeType.SDT` 範囲として保存され、メタデータは `ISdtCustomRange.properties` に格納されます。内容ロックは値変更、コントロールロックは枠の削除を防止します。繰り返しセクションは項目の追加・削除も制限できます。元に戻す・やり直す処理のため、変更はコマンド経由で行います。

[モデルコマンド](https://docs.univer.ai/ja-JP/reference/packages/plugins/univerjs-pro/docs-sdt.md)と [UI API](https://docs.univer.ai/ja-JP/reference/packages/plugins/univerjs-pro/docs-sdt-ui.md)を参照してください。DOCX 変換は [Exchange](https://docs.univer.ai/ja-JP/guides/docs/features/import-export.md) が担当し、すべての Word 属性や XML バインディングの完全な再現を保証するものではありません。
