# Bone Flow #029 NumberBox - HTML Class Guide

Version: 1.0.17

## 1. 目的

このClassはJavaScriptの `class {}` ではありません。HTML要素の `class=""` に機能Classを設定し、対応Public APIを宣言的に呼び出すためのClass契約です。

Public API function **44件 = HTML Class 44件** を1対1で対応させます。

## 2. Class共通引数契約

- `class="bone-..."`: 対応するPublic APIを指定。
- `data-bone-event`: `load` / `click` / `input` / `change` / `manual` 等。未指定は `load`。
- `data-bone-args`: Public APIの順番に並べたJSON配列。
- `data-bone-arg-N`: 0始まりの引数個別指定。
- `data-bone-once="true"`: DOMイベントを1回だけ処理。
- `data-bone-append-result="false"`: Element戻り値の自動appendを停止。
- `data-bone-throw="true"`: Error保存後にDebug用再throw。

### 特殊値

- `$self`: Classを設定したHTML要素そのものを渡します。element / target / root などの第1引数に使用します。
- `$event`: Class起動の原因になったDOM Eventを渡します。click / input / change等のイベント情報が必要なAPI用です。
- `$value`: input / textarea / select等の現在の value を渡します。
- `$checked`: checkbox / radio等の現在の checked(Boolean)を渡します。
- `$text`: Classを設定した要素の textContent を渡します。
- `$dataset`: Classを設定した要素の dataset を通常Objectとして渡します。
- `$files`: file input の FileList を渡します。
- `$selector:...`: ...をCSS selectorとして document.querySelector() で解決し、そのElementを渡します。
- `$id:...`: ...をDOM idとして document.getElementById() で解決し、そのElementを渡します。
- `$global:...`: window / globalThis上の指定名の値を渡します。
- `$handler:...`: window / globalThis上の指定名のFunctionをコールバック引数として渡します。

## 3. Result / State 契約

- `element.__boneClassResult`: 生の戻り値。
- `data-bone-class-status`: `ok` / `error`。
- `data-bone-class-result`: serializeした結果。
- `bone-html-class-result`: 成功CustomEvent。
- `bone-html-class-error`: 失敗CustomEvent。

## 4. Class一覧

### 1. `bone-numberbox-defaults`

- Public API: `BoneNumberBox.defaults`
- 説明: BoneNumberBox.defaults の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - 引数なし
- HTML例:

```html
<div class="bone-numberbox-defaults" data-bone-event="manual"></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 2. `bone-numberbox-normalize-options`

- Public API: `BoneNumberBox.normalizeOptions`
- 説明: 設定をNumberBoxの正式契約に沿う形へ正規化します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: options` — Object — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-normalize-options" data-bone-event="manual" data-bone-args='[{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 3. `bone-numberbox-validate-value`

- Public API: `BoneNumberBox.validateValue`
- 説明: NumberBoxの入力・状態を検証し、Validation結果を返します。
- 使用する場面: HTMLイベントから検証・解析を実行し、その結果をResultとして受け取りたいとき。
- 引数:
  - `0: value` — String / API許容値 — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: options` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-validate-value" data-bone-event="manual" data-bone-args='[null,{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 4. `bone-numberbox-inspect-untrusted-number`

- Public API: `BoneNumberBox.inspectUntrustedNumber`
- 説明: NumberBoxの入力・状態を検査し、診断情報を返します。
- 使用する場面: HTMLイベントから検証・解析を実行し、その結果をResultとして受け取りたいとき。
- 引数:
  - `0: value` — String / API許容値 — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-inspect-untrusted-number" data-bone-event="manual" data-bone-args='[null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 5. `bone-numberbox-inspect-editing-text`

- Public API: `BoneNumberBox.inspectEditingText`
- 説明: NumberBoxの入力・状態を検査し、診断情報を返します。
- 使用する場面: HTMLイベントから検証・解析を実行し、その結果をResultとして受け取りたいとき。
- 引数:
  - `0: value` — String / API許容値 — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: limit` — Number — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-inspect-editing-text" data-bone-event="manual" data-bone-args='[null,0]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 6. `bone-numberbox-round-value`

- Public API: `BoneNumberBox.roundValue`
- 説明: BoneNumberBox.roundValue の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: value` — String / API許容値 — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: decimalPlaces` — API定義値 — `data-bone-arg-1` または `data-bone-args[1]`
  - `2: roundingMode` — String / API許容値 — `data-bone-arg-2` または `data-bone-args[2]`
- HTML例:

```html
<div class="bone-numberbox-round-value" data-bone-event="manual" data-bone-args='[null,null,null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 7. `bone-numberbox-format-display-value`

- Public API: `BoneNumberBox.formatDisplayValue`
- 説明: BoneNumberBox.formatDisplayValue の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: value` — String / API許容値 — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: options` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-format-display-value" data-bone-event="manual" data-bone-args='[null,{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 8. `bone-numberbox-create`

- Public API: `BoneNumberBox.create`
- 説明: NumberBoxの新しい要素またはRuntimeオブジェクトを生成します。
- 使用する場面: HTML上のホスト要素からUI生成・描画を開始したいとき。
- 引数:
  - `0: boneInput` — Object — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: options` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-create" data-bone-event="manual" data-bone-args='[null,{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 9. `bone-numberbox-is-instance`

- Public API: `BoneNumberBox.isInstance`
- 説明: 対象がNumberBoxの「Instance」条件を満たすか判定します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-is-instance" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 10. `bone-numberbox-get-input`

- Public API: `BoneNumberBox.getInput`
- 説明: NumberBoxの「Input」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-input" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 11. `bone-numberbox-get-value`

- Public API: `BoneNumberBox.getValue`
- 説明: NumberBoxの「Value」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-value" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 12. `bone-numberbox-get-editing-value`

- Public API: `BoneNumberBox.getEditingValue`
- 説明: NumberBoxの「Editing Value」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-editing-value" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 13. `bone-numberbox-get-committed-value`

- Public API: `BoneNumberBox.getCommittedValue`
- 説明: NumberBoxの「Committed Value」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-committed-value" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 14. `bone-numberbox-get-display-value`

- Public API: `BoneNumberBox.getDisplayValue`
- 説明: NumberBoxの「Display Value」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-display-value" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 15. `bone-numberbox-get-voucher-display-value`

- Public API: `BoneNumberBox.getVoucherDisplayValue`
- 説明: NumberBoxの「Voucher Display Value」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-voucher-display-value" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 16. `bone-numberbox-get-voucher-layout`

- Public API: `BoneNumberBox.getVoucherLayout`
- 説明: NumberBoxの「Voucher Layout」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-voucher-layout" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 17. `bone-numberbox-get-display-mode`

- Public API: `BoneNumberBox.getDisplayMode`
- 説明: NumberBoxの「Display Mode」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-display-mode" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 18. `bone-numberbox-get-bone`

- Public API: `BoneNumberBox.getBone`
- 説明: NumberBoxの「Bone」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-bone" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 19. `bone-numberbox-get-options`

- Public API: `BoneNumberBox.getOptions`
- 説明: NumberBoxの「Options」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-options" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 20. `bone-numberbox-get-state`

- Public API: `BoneNumberBox.getState`
- 説明: NumberBoxの「State」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-state" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 21. `bone-numberbox-set-value`

- Public API: `BoneNumberBox.setValue`
- 説明: NumberBoxの「Value」を設定します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: value` — String / API許容値 — `data-bone-arg-1` または `data-bone-args[1]`
  - `2: options` — Object — `data-bone-arg-2` または `data-bone-args[2]`
- HTML例:

```html
<div class="bone-numberbox-set-value" data-bone-event="manual" data-bone-args='["$self","$value",{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 22. `bone-numberbox-set-options`

- Public API: `BoneNumberBox.setOptions`
- 説明: NumberBoxの「Options」を設定します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: patch` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-set-options" data-bone-event="manual" data-bone-args='["$self",{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 23. `bone-numberbox-apply-bone`

- Public API: `BoneNumberBox.applyBone`
- 説明: NumberBoxへ指定内容を適用します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: boneInput` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-apply-bone" data-bone-event="manual" data-bone-args='["$self",null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 24. `bone-numberbox-apply-joint-input`

- Public API: `BoneNumberBox.applyJointInput`
- 説明: NumberBoxへ指定内容を適用します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: payload` — API定義値 — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-apply-joint-input" data-bone-event="manual" data-bone-args='["$self",null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 25. `bone-numberbox-build-output`

- Public API: `BoneNumberBox.buildOutput`
- 説明: NumberBoxで使用する出力・定義オブジェクトを構築します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: source` — String / API許容値 — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-build-output" data-bone-event="manual" data-bone-args='["$self","html-class"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 26. `bone-numberbox-connect-output`

- Public API: `BoneNumberBox.connectOutput`
- 説明: NumberBoxの接続・出力先を接続状態へ変更します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: options` — Object — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-connect-output" data-bone-event="manual" data-bone-args='["$self",{}]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 27. `bone-numberbox-disconnect-output`

- Public API: `BoneNumberBox.disconnectOutput`
- 説明: NumberBoxの接続・出力先を切断状態へ変更します。
- 使用する場面: HTML操作を契機に対象の破棄・削除・切断・終了を行いたいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-disconnect-output" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 28. `bone-numberbox-set-target-ready`

- Public API: `BoneNumberBox.setTargetReady`
- 説明: NumberBoxの「Target Ready」を設定します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: ready` — Boolean — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-set-target-ready" data-bone-event="manual" data-bone-args='["$self",true]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 29. `bone-numberbox-clear-output-block`

- Public API: `BoneNumberBox.clearOutputBlock`
- 説明: NumberBoxの指定状態・内容をクリアします。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-clear-output-block" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 30. `bone-numberbox-get-output-state`

- Public API: `BoneNumberBox.getOutputState`
- 説明: NumberBoxの「Output State」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-output-state" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 31. `bone-numberbox-get-output-queue`

- Public API: `BoneNumberBox.getOutputQueue`
- 説明: NumberBoxの「Output Queue」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-output-queue" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 32. `bone-numberbox-commit`

- Public API: `BoneNumberBox.commit`
- 説明: NumberBoxの現在値を正式値としてcommitします。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: source` — String / API許容値 — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-commit" data-bone-event="manual" data-bone-args='["$self","html-class"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 33. `bone-numberbox-reset`

- Public API: `BoneNumberBox.reset`
- 説明: NumberBoxを既定またはcommit済み状態へ戻します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-reset" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 34. `bone-numberbox-validate`

- Public API: `BoneNumberBox.validate`
- 説明: NumberBoxの入力・状態を検証し、Validation結果を返します。
- 使用する場面: HTMLイベントから検証・解析を実行し、その結果をResultとして受け取りたいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-validate" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 35. `bone-numberbox-focus`

- Public API: `BoneNumberBox.focus`
- 説明: NumberBoxの入力対象へフォーカスを移します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-focus" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 36. `bone-numberbox-blur`

- Public API: `BoneNumberBox.blur`
- 説明: NumberBoxの入力対象からフォーカスを外します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-blur" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 37. `bone-numberbox-show-voucher-display`

- Public API: `BoneNumberBox.showVoucherDisplay`
- 説明: BoneNumberBox.showVoucherDisplay の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-show-voucher-display" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 38. `bone-numberbox-show-input-mode`

- Public API: `BoneNumberBox.showInputMode`
- 説明: BoneNumberBox.showInputMode の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-show-input-mode" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 39. `bone-numberbox-select`

- Public API: `BoneNumberBox.select`
- 説明: NumberBoxの選択状態または選択範囲を設定します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-select" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 40. `bone-numberbox-set-selection-range`

- Public API: `BoneNumberBox.setSelectionRange`
- 説明: NumberBoxの「Selection Range」を設定します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: start` — Number — `data-bone-arg-1` または `data-bone-args[1]`
  - `2: end` — Number — `data-bone-arg-2` または `data-bone-args[2]`
  - `3: direction` — String / API許容値 — `data-bone-arg-3` または `data-bone-args[3]`
- HTML例:

```html
<div class="bone-numberbox-set-selection-range" data-bone-event="manual" data-bone-args='["$self",0,0,null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 41. `bone-numberbox-get-selection`

- Public API: `BoneNumberBox.getSelection`
- 説明: NumberBoxの「Selection」を取得します。
- 使用する場面: JavaScriptを直接記述せず、HTML要素から現在値・状態・一覧を取得したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-get-selection" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 42. `bone-numberbox-set-feedback`

- Public API: `BoneNumberBox.setFeedback`
- 説明: NumberBoxの「Feedback」を設定します。
- 使用する場面: HTMLのイベントを契機に、既存UIやRuntime状態を変更したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
  - `1: feedback` — API定義値 — `data-bone-arg-1` または `data-bone-args[1]`
- HTML例:

```html
<div class="bone-numberbox-set-feedback" data-bone-event="manual" data-bone-args='["$self",null]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 43. `bone-numberbox-sync-parent-style`

- Public API: `BoneNumberBox.syncParentStyle`
- 説明: BoneNumberBox.syncParentStyle の公開機能をHTML Classから呼び出します。
- 使用する場面: HTMLの class と data-bone-* 属性だけで対応Public APIを呼び出したいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-sync-parent-style" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。

### 44. `bone-numberbox-destroy`

- Public API: `BoneNumberBox.destroy`
- 説明: NumberBoxの対象インスタンスを破棄し、関連状態を解放します。
- 使用する場面: HTML操作を契機に対象の破棄・削除・切断・終了を行いたいとき。
- 引数:
  - `0: element` — Element / Instance — `data-bone-arg-0` または `data-bone-args[0]`
- HTML例:

```html
<div class="bone-numberbox-destroy" data-bone-event="manual" data-bone-args='["$self"]'></div>
```

- Result: `__boneClassResult` / `data-bone-class-status` / `data-bone-class-result`。


## Safe activation marker

HTML Functional Class is active only when `bone-html-class-use` is present together with the API class. Example: `class="bone-html-class-use bone-..."`. This prevents existing presentation classes from being executed as APIs.
