@threestarsoftware/tssgrid 0.1.10 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +5 -0
- package/package.json +1 -1
- package/src/tssgrid.d.ts +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
TssGrid の各リリースの変更点。日付は JST。形式は [Keep a Changelog](https://keepachangelog.com/ja/1.1.0/) 準拠(ゆるめ)。
|
|
4
4
|
数値は特記なき限り**自社調べ**(headless Chrome / Windows 11・環境差あり)。
|
|
5
5
|
|
|
6
|
+
## [0.1.11] - 2026-09-16
|
|
7
|
+
|
|
8
|
+
### 修正
|
|
9
|
+
- **表全体版 `cellClass` / `cellStyle` / `rowClass` と `CellClassCtx` の `src`(元レコード)を `any` に**(型定義のみ・実行時は不変)— `src` は関数の**引数(反変位置)**なので `Record<string, any> | null` で固定すると、**自分で行の型を書いている利用者が関数を渡せず** `as unknown as MyRow` の二重キャストを強いられていた(0.1.9〜0.1.10 で該当)。`any` にすると利用側が `src: MyRow` と**そのまま注釈でき、関数内はその型で検査される**(今より安全側・既に `row: any[]` なので揃う)。d.ts 4か所(`CellClassCtx.src` / 表全体 `cellClass`・`cellStyle`・`rowClass`)+ api.html を更新。※将来の `TssGrid<Row>` ジェネリック化は 0.2 系で検討。
|
|
10
|
+
|
|
6
11
|
## [0.1.10] - 2026-09-16
|
|
7
12
|
|
|
8
13
|
### 追加
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@threestarsoftware/tssgrid",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.11",
|
|
4
4
|
"description": "軽量・ノービルド・日本語IME堅牢な編集グリッド(vanilla JS / 依存なし / MIT)。Excel ライクな入力画面を <script> タグ1本で。",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "ThreeStarSoftware (https://www.threestarsoftware.co.jp/)",
|
package/src/tssgrid.d.ts
CHANGED
|
@@ -25,8 +25,9 @@ export interface ChangeItem {
|
|
|
25
25
|
/** 選択範囲。r0/c0=開始、r1/c1=終了(昇順とは限らない)。 */
|
|
26
26
|
export interface SelectionRange { r0: number; c0: number; r1: number; c1: number; }
|
|
27
27
|
export interface CellCoord { r: number; c: number; }
|
|
28
|
-
/** cellClass/cellStyle(列版)が受け取る第2引数。row=その行の値配列, src=元レコード(object モード時・非表示フィールドも見える/配列モードは null)。
|
|
29
|
-
|
|
28
|
+
/** cellClass/cellStyle(列版)が受け取る第2引数。row=その行の値配列, src=元レコード(object モード時・非表示フィールドも見える/配列モードは null)。
|
|
29
|
+
* src は `any`=利用側が自分の行型(`src: MyRow`)でそのまま受けられる(`Record<string,any>|null` だと二重キャストを強いるため)。 */
|
|
30
|
+
export interface CellClassCtx { r: number; c: number; row: any[]; src: any; }
|
|
30
31
|
/** cellClass/cellStyle の戻り値のクラス。文字列(空白区切り可)/配列/null 等(=クラス無し)。 */
|
|
31
32
|
export type ClassValue = string | string[] | null | undefined | false;
|
|
32
33
|
/** cellStyle の戻り値。CSS プロパティのオブジェクト(`{'background':'#fde','--pct':'42%'}`)か文字列(`'background:#fde;--pct:42%'`)。 */
|
|
@@ -114,12 +115,12 @@ export interface TssGridOptions {
|
|
|
114
115
|
columns?: ColumnDef[];
|
|
115
116
|
/** 表全体の条件付きクラス(全セルで呼ばれる)。**引数は `(r, c, value, row, src)`**(先頭が行/列番号・列版と順序が違う)。
|
|
116
117
|
* `row`=その行の値配列, `src`=元レコード(object モード時・非表示フィールドも見える)。行に色を付けたいなら `rowClass` の方が簡単。 */
|
|
117
|
-
cellClass?: (r: number, c: number, value: any, row: any[], src:
|
|
118
|
+
cellClass?: (r: number, c: number, value: any, row: any[], src: any) => ClassValue;
|
|
118
119
|
/** 表全体のセル単位インラインスタイル。**引数は `(r, c, value, row, src)`**。返り値は CSS オブジェクト or 文字列。 */
|
|
119
|
-
cellStyle?: (r: number, c: number, value: any, row: any[], src:
|
|
120
|
+
cellStyle?: (r: number, c: number, value: any, row: any[], src: any) => StyleValue;
|
|
120
121
|
/** 行ごとに `<tr>` へ付与する CSS クラス(**行に色を付けるならこれ**)。`(r, row, src)` で呼ばれ、文字列/配列を返す。
|
|
121
122
|
* 編集でセルが再描画されると即追従。CSS は `.tssgrid tr.クラス > td { … }` のように行単位で当てる。 */
|
|
122
|
-
rowClass?: (r: number, row: any[], src:
|
|
123
|
+
rowClass?: (r: number, row: any[], src: any) => ClassValue;
|
|
123
124
|
/** 検証NG時。'revert'=元に戻す / 'keep'=赤く警告して残す。 */
|
|
124
125
|
invalidMode?: 'revert' | 'keep';
|
|
125
126
|
invalidTitle?: boolean;
|