MASTER DATA HUB

master-data-hub

マスターデータ配布システム

対象

マスターデータ管理

構成

SvelteKit 基盤

状態

初期セットアップ

ADMIN

ユーザ管理 → 企業一覧

DASHBOARD

マスターデータ配布システム

一覧画面、API 接続、権限や検索条件などを今後追加しやすいように、画面構成と共通処理の基盤を整えたトップページです。

管理対象

5件

NEXT STEP

一覧画面と API 接続を追加しやすい構成

`src/lib/api` に共通 API クライアント、`src/lib/config` に環境変数参照、`src/lib/types` に画面共通の型定義を配置しています。

配布対象マスター

対象データごとに一覧画面を追加できるよう、カード形式で入口を用意しています。

CODE

ディーラーコード

作業中

販売会社や拠点に紐づくディーラーコードを管理し、各システムへ一貫した形で配布します。

一覧を見る

ADDRESS

住所コード

作業中

郵便番号、住所、住所カナを扱う住所コードの一覧です。まずはダミーデータで画面構成とページングを確認できます。

一覧を見る

SPEC

諸元データ

作業中

車種や商品属性などの諸元情報を対象に、今後の検索・一覧・配信 API 実装の土台を用意します。

一覧を見る

ECOCARDATA

エコカーデータ

作業中

エコカー減税対象車のリストを管理します。メーカー、車名、型式などで検索可能な一覧を提供します。

一覧を見る

FEE

諸費用データ

作業中

諸費用に関わるマスターデータを取り扱うための入口です。今後の一覧画面や登録画面追加を見据えています。

一覧を見る

IME CHECK

自前 IME(Phase 1: モード切替 + かな確定 + 漢字変換)の動作確認

入力欄ごとに「日本語(かな)/ 英数」モードを use:imeField で自動切替する基盤の検証ページです。各欄をクリックして打鍵し、右肩のバッジ(あ = 日本語 / A = 英数)と入力結果を確かめてください。Ctrl+Space でモードを反転できます。OS の IME で変換中はバッジがグレーアウトし、自前 IME は手を引いて OS に委譲します。
日本語モード欄は漢字変換に対応にほんご → Space → 日本語。単一文節・送りなし)。カナ固定欄(convert=off)は漢字変換せず、ローマ字を自前変換して指定文字種(かな/カナ/半角カナ)に固定します。

data-ime="ja"。ローマ字を打つと ひらがなに逐次変換され(下線付きの未確定で表示)、Space で漢字変換(SKK 辞書)。候補は Space で次 / Shift+Space で前 / 数字 1-9 で直接選択 / Enter で確定 / Esc でかなへ。未ヒットなら Space でかな確定。Enter で変換せずかな確定。Ctrl+Space で英数モードへ。

data-ime="latin"。打った結果を 半角英数記号だけに矯正(全角→半角+それ以外を除去)。日本語のまま打っても確定すると半角英数だけが残ります。Ctrl+Space で日本語モードへ。

A

英数の文字種制限(ime="latin" + latinKind:英字のみ/数字のみ/数字+符号小数点)

data-ime-latin で latin 欄の入力文字種を絞ります。全角で打っても半角へ寄せてから対象外文字を除去します。 各欄に ABC123-4.5(全角混じり)と打って結果を見比べてください。

A

小文字運用なら latinKind="alpha-lower"(ABC → abc)。

A
A

呼び出し側 style="font-size:1.25rem; padding:0.5rem 0.75rem" を当てた欄。ImeInput が font を固定しないので大きいまま表示され、 未確定下線(nihongo 等を打って Space 前)も文字直下に揃います。

カナ固定欄(convert=off:ローマ字を自前変換して文字種固定)

data-ime="ja" + data-ime-convert="off"入力モードが英数(あ/A バッジが A)でも、ローマ字を自前で変換して data-ime-kana に指定した文字種へ固定確定します。漢字変換はしません(Space/Enter はかな確定のみ・候補ポップアップは出ません)。OS IME を日本語にして確定した場合も、その確定文字を同じ文字種へ矯正します。各欄に sushi と打って試してください。

設定で文字種を動的切替(kana を props で動的バインド)

下のボタンで文字種を切り替えると、同じ入力欄の「以後の新規入力」だけが選んだ文字種で強制されます。すでに確定済みの文字は再矯正しません(例: sushi →「すし」と確定後に katakana へ切り替えても「すし」のまま、続けて sushi と打つと 「スシ」が追記されます)。設定画面で文字種を選ぶと入力欄がそれに従う、という実ユースケースのデモです。

確定値: (空)

幅の透過と maxlength(バッジ非表示=業務フォーム想定)

これらの欄は showBadge を付けないので あ/A バッジは出ません。呼び出し側の size / style="width:..." / 幅クラスがそのまま効き、maxlength は確定後にcode point 単位で切り詰めます(自前 IME は keydown を奪うためネイティブ maxlength が効かないので action が成形)。

確定値(0 文字): (空)

設計: IME の状態(かな/英数)自体は Web から強制できないため、発想を変えて 「打った結果」を目的の文字種に収束させる。ロジックは DOM 非依存の純粋関数(src/lib/ime/composition.ts)に分離し、use:imeFieldsrc/lib/ime/imeField.ts)が focus/keydown/composition/blur を束ねます。isComposing ガードを最優先で内蔵し、OS IME が動いていたら自前は完全に手を引いて委譲します。漢字変換(SKK 辞書)は Phase 1 で日本語モード欄に追加済み(辞書は static/dict/ を fetch し IndexedDB にキャッシュ。単一文節・送りなし変換)。