TssGrid 例: 休日カレンダー対応の日付ピッカー
会社の休日カレンダーを JSON で渡す日付ピッカー(plugins/tss-calendar.js)。ネイティブ <input type=date> では出来ない、祝日/会社休日のハイライト+名称表示ができ、勤怠・シフト・予約などで便利です。
「納品日」セルは右端に 📅 が出て、シングルクリックで開閉(もう一度押すと閉じる=トグル)。開いている間もフィルハンドルで下へコピーできます(ドロップダウンと同じ操作感)。年・月はプルダウンで直接ジャンプ(年送りが速い)。祝日は赤+名称ツールチップ、土日は色分け。
そのまま打てます=セルに 2026/06/20 と打ち始めればそのまま編集開始(1文字目が消えない・IME直打ちもOK)、カレンダーは打った日へ追従します。確定は Enter か日をクリック。矢印はセル移動のまま(カレンダーは奪いません)=キー派は打つ/マウス派はクリック。inline: false で旧型(カレンダーにフォーカスして矢印で日移動)にも戻せます。
見た目は CSS変数(--cal-accent 等)を上書きするだけで業務ごとに統一できます(依存ゼロ)。
デモ
休日 JSON と差し込み(抜粋)
const holidays = {
'2026-01-01': '元日', '2026-01-12': '成人の日', '2026-05-03': '憲法記念日',
'2026-05-04': 'みどりの日', '2026-05-05': 'こどもの日',
'2026-08-13': { name: '夏季休業', type: 'company' }, // 会社休日(type で色分けも可)
};
const cal = TssCalendar({ holidays }); // ← CSS は tss-calendar.css
new TssGrid(host, {
columns: [ /* … */ { type:'date', editor: cal, format:'yyyy/mm/dd' } ], // ← カスタムエディタに差すだけ
data: rows,
});