@xcelsior/ui-spreadsheets 1.0.13 → 1.0.15
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/.storybook/preview.tsx +1 -0
- package/.turbo/turbo-build.log +28 -0
- package/.turbo/turbo-lint.log +147 -12
- package/CHANGELOG.md +9 -0
- package/dist/index.d.mts +41 -10
- package/dist/index.d.ts +41 -10
- package/dist/index.js +670 -164
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +668 -162
- package/dist/index.mjs.map +1 -1
- package/dist/styles/globals.css +1402 -0
- package/dist/styles/globals.css.map +1 -0
- package/dist/styles/globals.d.mts +2 -0
- package/dist/styles/globals.d.ts +2 -0
- package/package.json +8 -5
- package/src/components/Spreadsheet.stories.tsx +33 -8
- package/src/components/Spreadsheet.tsx +168 -114
- package/src/components/SpreadsheetCell.tsx +95 -87
- package/src/components/SpreadsheetToolbar.tsx +5 -3
- package/src/hooks/useSpreadsheetKeyboardShortcuts.ts +58 -6
- package/src/hooks/useSpreadsheetSelection.ts +678 -0
- package/src/index.ts +3 -0
- package/src/styles/globals.css +3 -0
- package/src/types.ts +42 -8
- package/tsup.config.ts +1 -1
package/.storybook/preview.tsx
CHANGED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
|
|
2
|
+
> @xcelsior/ui-spreadsheets@1.0.14 build /Users/tuannguyen/Work/xcelsior-packages/packages/ui/ui-spreadsheets
|
|
3
|
+
> tsup && tsc --noEmit
|
|
4
|
+
|
|
5
|
+
[34mCLI[39m Building entry: src/index.ts, src/styles/globals.css
|
|
6
|
+
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
7
|
+
[34mCLI[39m tsup v8.5.1
|
|
8
|
+
[34mCLI[39m Using tsup config: /Users/tuannguyen/Work/xcelsior-packages/packages/ui/ui-spreadsheets/tsup.config.ts
|
|
9
|
+
[34mCLI[39m Target: es2020
|
|
10
|
+
[34mCLI[39m Cleaning output folder
|
|
11
|
+
[34mCJS[39m Build start
|
|
12
|
+
[34mESM[39m Build start
|
|
13
|
+
DTS Build start
|
|
14
|
+
[32mESM[39m [1mdist/index.mjs [22m[32m147.76 KB[39m
|
|
15
|
+
[32mESM[39m [1mdist/styles/globals.css [22m[32m33.17 KB[39m
|
|
16
|
+
[32mESM[39m [1mdist/styles/globals.css.map [22m[32m55.33 KB[39m
|
|
17
|
+
[32mESM[39m [1mdist/index.mjs.map [22m[32m4.62 MB[39m
|
|
18
|
+
[32mESM[39m ⚡️ Build success in 359ms
|
|
19
|
+
[32mCJS[39m [1mdist/styles/globals.css [22m[32m33.17 KB[39m
|
|
20
|
+
[32mCJS[39m [1mdist/index.js [22m[32m158.96 KB[39m
|
|
21
|
+
[32mCJS[39m [1mdist/styles/globals.css.map [22m[32m55.33 KB[39m
|
|
22
|
+
[32mCJS[39m [1mdist/index.js.map [22m[32m4.62 MB[39m
|
|
23
|
+
[32mCJS[39m ⚡️ Build success in 360ms
|
|
24
|
+
DTS ⚡️ Build success in 2017ms
|
|
25
|
+
DTS dist/styles/globals.d.ts 13.00 B
|
|
26
|
+
DTS dist/index.d.ts 22.84 KB
|
|
27
|
+
DTS dist/styles/globals.d.mts 13.00 B
|
|
28
|
+
DTS dist/index.d.mts 22.84 KB
|
package/.turbo/turbo-lint.log
CHANGED
|
@@ -1,26 +1,138 @@
|
|
|
1
1
|
|
|
2
|
-
> @xcelsior/ui-spreadsheets@1.0.
|
|
2
|
+
> @xcelsior/ui-spreadsheets@1.0.14 lint /Users/tuannguyen/Work/xcelsior-packages/packages/ui/ui-spreadsheets
|
|
3
3
|
> biome check . && tsc
|
|
4
4
|
|
|
5
|
-
[0m at src/components/
|
|
5
|
+
[0m at src/components/CommentModals.tsx[0m[0m:[0m[0m57[0m[0m:[0m[0m21[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-autofocus\lint/a11y/noAutofocus]8;;\[0m[0m [0m[0m[30m[47m FIXABLE [0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
6
|
+
|
|
7
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mAvoid the [0m[0m[1m[33mautoFocus[0m[0m[33m attribute.[0m[0m
|
|
8
|
+
[0m[0m [0m[0m
|
|
9
|
+
[0m[0m [0m[0m [0m[0m[1m55 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mp[0m[0ml[0m[0ma[0m[0mc[0m[0me[0m[0mh[0m[0mo[0m[0ml[0m[0md[0m[0me[0m[0mr[0m[0m=[0m[0m"[0m[0mE[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0m [0m[0my[0m[0mo[0m[0mu[0m[0mr[0m[0m [0m[0mc[0m[0mo[0m[0mm[0m[0mm[0m[0me[0m[0mn[0m[0mt[0m[0m.[0m[0m.[0m[0m.[0m[0m"[0m[0m
|
|
10
|
+
[0m[0m [0m[0m [0m[0m[1m56 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0ml[0m[0ma[0m[0ms[0m[0ms[0m[0mN[0m[0ma[0m[0mm[0m[0me[0m[0m=[0m[0m"[0m[0mw[0m[0m-[0m[0mf[0m[0mu[0m[0ml[0m[0ml[0m[0m [0m[0mh[0m[0m-[0m[0m2[0m[0m4[0m[0m [0m[0mp[0m[0m-[0m[0m3[0m[0m [0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m [0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m-[0m[0mg[0m[0mr[0m[0ma[0m[0my[0m[0m-[0m[0m3[0m[0m0[0m[0m0[0m[0m [0m[0mr[0m[0mo[0m[0mu[0m[0mn[0m[0md[0m[0me[0m[0md[0m[0m-[0m[0ml[0m[0mg[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m-[0m[0m2[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m-[0m[0mb[0m[0ml[0m[0mu[0m[0me[0m[0m-[0m[0m5[0m[0m0[0m[0m0[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m-[0m[0mb[0m[0ml[0m[0mu[0m[0me[0m[0m-[0m[0m5[0m[0m0[0m[0m0[0m[0m [0m[0mr[0m[0me[0m[0ms[0m[0mi[0m[0mz[0m[0me[0m[0m-[0m[0mn[0m[0mo[0m[0mn[0m[0me[0m[0m"[0m[0m
|
|
11
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m57 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ma[0m[0mu[0m[0mt[0m[0mo[0m[0mF[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m
|
|
12
|
+
[0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
13
|
+
[0m[0m [0m[0m [0m[0m[1m58 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m/[0m[0m>[0m[0m
|
|
14
|
+
[0m[0m [0m[0m [0m[0m[1m59 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m<[0m[0md[0m[0mi[0m[0mv[0m[0m [0m[0mc[0m[0ml[0m[0ma[0m[0ms[0m[0ms[0m[0mN[0m[0ma[0m[0mm[0m[0me[0m[0m=[0m[0m"[0m[0mf[0m[0ml[0m[0me[0m[0mx[0m[0m [0m[0mj[0m[0mu[0m[0ms[0m[0mt[0m[0mi[0m[0mf[0m[0my[0m[0m-[0m[0me[0m[0mn[0m[0md[0m[0m [0m[0mg[0m[0ma[0m[0mp[0m[0m-[0m[0m2[0m[0m [0m[0mm[0m[0mt[0m[0m-[0m[0m4[0m[0m"[0m[0m>[0m[0m
|
|
15
|
+
[0m[0m [0m[0m
|
|
16
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnsafe fix: Remove the [0m[0m[1m[34mautoFocus[0m[0m[34m attribute.[0m[0m
|
|
17
|
+
[0m[0m [0m[0m
|
|
18
|
+
[0m[0m [0m[0m [0m[0m[1m 55[0m[0m [0m[0m[1m 55[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mp[0m[0ml[0m[0ma[0m[0mc[0m[0me[0m[0mh[0m[0mo[0m[0ml[0m[0md[0m[0me[0m[0mr[0m[0m=[0m[0m"[0m[0mE[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0m [0m[0my[0m[0mo[0m[0mu[0m[0mr[0m[0m [0m[0mc[0m[0mo[0m[0mm[0m[0mm[0m[0me[0m[0mn[0m[0mt[0m[0m.[0m[0m.[0m[0m.[0m[0m"[0m[0m
|
|
19
|
+
[0m[0m [0m[0m [0m[0m[1m 56[0m[0m [0m[0m[1m 56[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0ml[0m[0ma[0m[0ms[0m[0ms[0m[0mN[0m[0ma[0m[0mm[0m[0me[0m[0m=[0m[0m"[0m[0mw[0m[0m-[0m[0mf[0m[0mu[0m[0ml[0m[0ml[0m[0m [0m[0mh[0m[0m-[0m[0m2[0m[0m4[0m[0m [0m[0mp[0m[0m-[0m[0m3[0m[0m [0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m [0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m-[0m[0mg[0m[0mr[0m[0ma[0m[0my[0m[0m-[0m[0m3[0m[0m0[0m[0m0[0m[0m [0m[0mr[0m[0mo[0m[0mu[0m[0mn[0m[0md[0m[0me[0m[0md[0m[0m-[0m[0ml[0m[0mg[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m-[0m[0m2[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m-[0m[0mb[0m[0ml[0m[0mu[0m[0me[0m[0m-[0m[0m5[0m[0m0[0m[0m0[0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0m:[0m[0mb[0m[0mo[0m[0mr[0m[0md[0m[0me[0m[0mr[0m[0m-[0m[0mb[0m[0ml[0m[0mu[0m[0me[0m[0m-[0m[0m5[0m[0m0[0m[0m0[0m[0m [0m[0mr[0m[0me[0m[0ms[0m[0mi[0m[0mz[0m[0me[0m[0m-[0m[0mn[0m[0mo[0m[0mn[0m[0me[0m[0m"[0m[0m
|
|
20
|
+
[0m[0m [0m[0m [0m[0m[1m 57[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m[31m-[0m[0m [0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[2m[31m·[0m[0m[1m[31ma[0m[0m[1m[31mu[0m[0m[1m[31mt[0m[0m[1m[31mo[0m[0m[1m[31mF[0m[0m[1m[31mo[0m[0m[1m[31mc[0m[0m[1m[31mu[0m[0m[1m[31ms[0m[0m
|
|
21
|
+
[0m[0m [0m[0m [0m[0m[1m 58[0m[0m [0m[0m[1m 57[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m/[0m[0m>[0m[0m
|
|
22
|
+
[0m[0m [0m[0m [0m[0m[1m 59[0m[0m [0m[0m[1m 58[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m<[0m[0md[0m[0mi[0m[0mv[0m[0m [0m[0mc[0m[0ml[0m[0ma[0m[0ms[0m[0ms[0m[0mN[0m[0ma[0m[0mm[0m[0me[0m[0m=[0m[0m"[0m[0mf[0m[0ml[0m[0me[0m[0mx[0m[0m [0m[0mj[0m[0mu[0m[0ms[0m[0mt[0m[0mi[0m[0mf[0m[0my[0m[0m-[0m[0me[0m[0mn[0m[0md[0m[0m [0m[0mg[0m[0ma[0m[0mp[0m[0m-[0m[0m2[0m[0m [0m[0mm[0m[0mt[0m[0m-[0m[0m4[0m[0m"[0m[0m>[0m[0m
|
|
23
|
+
[0m[0m [0m[0m
|
|
24
|
+
[0m
|
|
25
|
+
[0m at src/components/Spreadsheet.stories.tsx[0m[0m:[0m[0m333[0m[0m:[0m[0m34[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-unused-function-parameters\lint/correctness/noUnusedFunctionParameters]8;;\[0m[0m [0m[0m[30m[47m FIXABLE [0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
26
|
+
|
|
27
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mThis [0m[0m[1m[33mparameter[0m[0m[33m is unused.[0m[0m
|
|
28
|
+
[0m[0m [0m[0m
|
|
29
|
+
[0m[0m [0m[0m [0m[0m[1m331 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
30
|
+
[0m[0m [0m[0m [0m[0m[1m332 │ [0m[0m
|
|
31
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m333 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0mo[0m[0mn[0m[0ms[0m[0mt[0m[0m [0m[0mh[0m[0ma[0m[0mn[0m[0md[0m[0ml[0m[0me[0m[0mR[0m[0mo[0m[0mw[0m[0mD[0m[0me[0m[0ml[0m[0me[0m[0mt[0m[0me[0m[0m [0m[0m=[0m[0m [0m[0m([0m[0mr[0m[0mo[0m[0mw[0m[0m:[0m[0m [0m[0mU[0m[0ms[0m[0me[0m[0mr[0m[0m,[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m:[0m[0m [0m[0ms[0m[0mt[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m [0m[0m|[0m[0m [0m[0mn[0m[0mu[0m[0mm[0m[0mb[0m[0me[0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0m{[0m[0m
|
|
32
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
33
|
+
[0m[0m [0m[0m [0m[0m[1m334 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mD[0m[0ma[0m[0mt[0m[0ma[0m[0m([0m[0m([0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m.[0m[0mf[0m[0mi[0m[0ml[0m[0mt[0m[0me[0m[0mr[0m[0m([0m[0m([0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mr[0m[0m.[0m[0mi[0m[0md[0m[0m [0m[0m![0m[0m=[0m[0m=[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m)[0m[0m)[0m[0m;[0m[0m
|
|
34
|
+
[0m[0m [0m[0m [0m[0m[1m335 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
35
|
+
[0m[0m [0m[0m
|
|
36
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnused parameters might be the result of an incomplete refactoring.[0m[0m
|
|
37
|
+
[0m[0m [0m[0m
|
|
38
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnsafe fix: If this is intentional, prepend [0m[0m[1m[34mrow[0m[0m[34m with an underscore.[0m[0m
|
|
39
|
+
[0m[0m [0m[0m
|
|
40
|
+
[0m[0m [0m[0m [0m[0m[1m 331[0m[0m [0m[0m[1m 331[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
41
|
+
[0m[0m [0m[0m [0m[0m[1m 332[0m[0m [0m[0m[1m 332[0m[0m[1m │ [0m[0m [0m[0m [0m[0m
|
|
42
|
+
[0m[0m [0m[0m [0m[0m[1m 333[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m[31m-[0m[0m [0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[31mc[0m[0m[31mo[0m[0m[31mn[0m[0m[31ms[0m[0m[31mt[0m[0m[2m[31m·[0m[0m[31mh[0m[0m[31ma[0m[0m[31mn[0m[0m[31md[0m[0m[31ml[0m[0m[31me[0m[0m[31mR[0m[0m[31mo[0m[0m[31mw[0m[0m[31mD[0m[0m[31me[0m[0m[31ml[0m[0m[31me[0m[0m[31mt[0m[0m[31me[0m[0m[2m[31m·[0m[0m[31m=[0m[0m[2m[31m·[0m[0m[31m([0m[0m[1m[31mr[0m[0m[1m[31mo[0m[0m[1m[31mw[0m[0m[31m:[0m[0m[2m[31m·[0m[0m[31mU[0m[0m[31ms[0m[0m[31me[0m[0m[31mr[0m[0m[31m,[0m[0m[2m[31m·[0m[0m[31mr[0m[0m[31mo[0m[0m[31mw[0m[0m[31mI[0m[0m[31md[0m[0m[31m:[0m[0m[2m[31m·[0m[0m[31ms[0m[0m[31mt[0m[0m[31mr[0m[0m[31mi[0m[0m[31mn[0m[0m[31mg[0m[0m[2m[31m·[0m[0m[31m|[0m[0m[2m[31m·[0m[0m[31mn[0m[0m[31mu[0m[0m[31mm[0m[0m[31mb[0m[0m[31me[0m[0m[31mr[0m[0m[31m)[0m[0m[2m[31m·[0m[0m[31m=[0m[0m[31m>[0m[0m[2m[31m·[0m[0m[31m{[0m[0m
|
|
43
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m 333[0m[0m[1m │ [0m[0m[32m+[0m[0m [0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[32mc[0m[0m[32mo[0m[0m[32mn[0m[0m[32ms[0m[0m[32mt[0m[0m[2m[32m·[0m[0m[32mh[0m[0m[32ma[0m[0m[32mn[0m[0m[32md[0m[0m[32ml[0m[0m[32me[0m[0m[32mR[0m[0m[32mo[0m[0m[32mw[0m[0m[32mD[0m[0m[32me[0m[0m[32ml[0m[0m[32me[0m[0m[32mt[0m[0m[32me[0m[0m[2m[32m·[0m[0m[32m=[0m[0m[2m[32m·[0m[0m[32m([0m[0m[1m[32m_[0m[0m[1m[32mr[0m[0m[1m[32mo[0m[0m[1m[32mw[0m[0m[32m:[0m[0m[2m[32m·[0m[0m[32mU[0m[0m[32ms[0m[0m[32me[0m[0m[32mr[0m[0m[32m,[0m[0m[2m[32m·[0m[0m[32mr[0m[0m[32mo[0m[0m[32mw[0m[0m[32mI[0m[0m[32md[0m[0m[32m:[0m[0m[2m[32m·[0m[0m[32ms[0m[0m[32mt[0m[0m[32mr[0m[0m[32mi[0m[0m[32mn[0m[0m[32mg[0m[0m[2m[32m·[0m[0m[32m|[0m[0m[2m[32m·[0m[0m[32mn[0m[0m[32mu[0m[0m[32mm[0m[0m[32mb[0m[0m[32me[0m[0m[32mr[0m[0m[32m)[0m[0m[2m[32m·[0m[0m[32m=[0m[0m[32m>[0m[0m[2m[32m·[0m[0m[32m{[0m[0m
|
|
44
|
+
[0m[0m [0m[0m [0m[0m[1m 334[0m[0m [0m[0m[1m 334[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mD[0m[0ma[0m[0mt[0m[0ma[0m[0m([0m[0m([0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m.[0m[0mf[0m[0mi[0m[0ml[0m[0mt[0m[0me[0m[0mr[0m[0m([0m[0m([0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mr[0m[0m.[0m[0mi[0m[0md[0m[0m [0m[0m![0m[0m=[0m[0m=[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m)[0m[0m)[0m[0m;[0m[0m
|
|
45
|
+
[0m[0m [0m[0m [0m[0m[1m 335[0m[0m [0m[0m[1m 335[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
46
|
+
[0m[0m [0m[0m
|
|
47
|
+
[0m
|
|
48
|
+
[0m at src/components/Spreadsheet.stories.tsx[0m[0m:[0m[0m385[0m[0m:[0m[0m34[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-unused-function-parameters\lint/correctness/noUnusedFunctionParameters]8;;\[0m[0m [0m[0m[30m[47m FIXABLE [0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
49
|
+
|
|
50
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mThis [0m[0m[1m[33mparameter[0m[0m[33m is unused.[0m[0m
|
|
51
|
+
[0m[0m [0m[0m
|
|
52
|
+
[0m[0m [0m[0m [0m[0m[1m383 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
53
|
+
[0m[0m [0m[0m [0m[0m[1m384 │ [0m[0m
|
|
54
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m385 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0mo[0m[0mn[0m[0ms[0m[0mt[0m[0m [0m[0mh[0m[0ma[0m[0mn[0m[0md[0m[0ml[0m[0me[0m[0mR[0m[0mo[0m[0mw[0m[0mD[0m[0me[0m[0ml[0m[0me[0m[0mt[0m[0me[0m[0m [0m[0m=[0m[0m [0m[0m([0m[0mr[0m[0mo[0m[0mw[0m[0m:[0m[0m [0m[0mU[0m[0ms[0m[0me[0m[0mr[0m[0m,[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m:[0m[0m [0m[0ms[0m[0mt[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m [0m[0m|[0m[0m [0m[0mn[0m[0mu[0m[0mm[0m[0mb[0m[0me[0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0m{[0m[0m
|
|
55
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
56
|
+
[0m[0m [0m[0m [0m[0m[1m386 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mD[0m[0ma[0m[0mt[0m[0ma[0m[0m([0m[0m([0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m.[0m[0mf[0m[0mi[0m[0ml[0m[0mt[0m[0me[0m[0mr[0m[0m([0m[0m([0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mr[0m[0m.[0m[0mi[0m[0md[0m[0m [0m[0m![0m[0m=[0m[0m=[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m)[0m[0m)[0m[0m;[0m[0m
|
|
57
|
+
[0m[0m [0m[0m [0m[0m[1m387 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
58
|
+
[0m[0m [0m[0m
|
|
59
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnused parameters might be the result of an incomplete refactoring.[0m[0m
|
|
60
|
+
[0m[0m [0m[0m
|
|
61
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnsafe fix: If this is intentional, prepend [0m[0m[1m[34mrow[0m[0m[34m with an underscore.[0m[0m
|
|
62
|
+
[0m[0m [0m[0m
|
|
63
|
+
[0m[0m [0m[0m [0m[0m[1m 383[0m[0m [0m[0m[1m 383[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
64
|
+
[0m[0m [0m[0m [0m[0m[1m 384[0m[0m [0m[0m[1m 384[0m[0m[1m │ [0m[0m [0m[0m [0m[0m
|
|
65
|
+
[0m[0m [0m[0m [0m[0m[1m 385[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m[31m-[0m[0m [0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[31mc[0m[0m[31mo[0m[0m[31mn[0m[0m[31ms[0m[0m[31mt[0m[0m[2m[31m·[0m[0m[31mh[0m[0m[31ma[0m[0m[31mn[0m[0m[31md[0m[0m[31ml[0m[0m[31me[0m[0m[31mR[0m[0m[31mo[0m[0m[31mw[0m[0m[31mD[0m[0m[31me[0m[0m[31ml[0m[0m[31me[0m[0m[31mt[0m[0m[31me[0m[0m[2m[31m·[0m[0m[31m=[0m[0m[2m[31m·[0m[0m[31m([0m[0m[1m[31mr[0m[0m[1m[31mo[0m[0m[1m[31mw[0m[0m[31m:[0m[0m[2m[31m·[0m[0m[31mU[0m[0m[31ms[0m[0m[31me[0m[0m[31mr[0m[0m[31m,[0m[0m[2m[31m·[0m[0m[31mr[0m[0m[31mo[0m[0m[31mw[0m[0m[31mI[0m[0m[31md[0m[0m[31m:[0m[0m[2m[31m·[0m[0m[31ms[0m[0m[31mt[0m[0m[31mr[0m[0m[31mi[0m[0m[31mn[0m[0m[31mg[0m[0m[2m[31m·[0m[0m[31m|[0m[0m[2m[31m·[0m[0m[31mn[0m[0m[31mu[0m[0m[31mm[0m[0m[31mb[0m[0m[31me[0m[0m[31mr[0m[0m[31m)[0m[0m[2m[31m·[0m[0m[31m=[0m[0m[31m>[0m[0m[2m[31m·[0m[0m[31m{[0m[0m
|
|
66
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m 385[0m[0m[1m │ [0m[0m[32m+[0m[0m [0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[32mc[0m[0m[32mo[0m[0m[32mn[0m[0m[32ms[0m[0m[32mt[0m[0m[2m[32m·[0m[0m[32mh[0m[0m[32ma[0m[0m[32mn[0m[0m[32md[0m[0m[32ml[0m[0m[32me[0m[0m[32mR[0m[0m[32mo[0m[0m[32mw[0m[0m[32mD[0m[0m[32me[0m[0m[32ml[0m[0m[32me[0m[0m[32mt[0m[0m[32me[0m[0m[2m[32m·[0m[0m[32m=[0m[0m[2m[32m·[0m[0m[32m([0m[0m[1m[32m_[0m[0m[1m[32mr[0m[0m[1m[32mo[0m[0m[1m[32mw[0m[0m[32m:[0m[0m[2m[32m·[0m[0m[32mU[0m[0m[32ms[0m[0m[32me[0m[0m[32mr[0m[0m[32m,[0m[0m[2m[32m·[0m[0m[32mr[0m[0m[32mo[0m[0m[32mw[0m[0m[32mI[0m[0m[32md[0m[0m[32m:[0m[0m[2m[32m·[0m[0m[32ms[0m[0m[32mt[0m[0m[32mr[0m[0m[32mi[0m[0m[32mn[0m[0m[32mg[0m[0m[2m[32m·[0m[0m[32m|[0m[0m[2m[32m·[0m[0m[32mn[0m[0m[32mu[0m[0m[32mm[0m[0m[32mb[0m[0m[32me[0m[0m[32mr[0m[0m[32m)[0m[0m[2m[32m·[0m[0m[32m=[0m[0m[32m>[0m[0m[2m[32m·[0m[0m[32m{[0m[0m
|
|
67
|
+
[0m[0m [0m[0m [0m[0m[1m 386[0m[0m [0m[0m[1m 386[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mD[0m[0ma[0m[0mt[0m[0ma[0m[0m([0m[0m([0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mp[0m[0mr[0m[0me[0m[0mv[0m[0m.[0m[0mf[0m[0mi[0m[0ml[0m[0mt[0m[0me[0m[0mr[0m[0m([0m[0m([0m[0mr[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mr[0m[0m.[0m[0mi[0m[0md[0m[0m [0m[0m![0m[0m=[0m[0m=[0m[0m [0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m)[0m[0m)[0m[0m;[0m[0m
|
|
68
|
+
[0m[0m [0m[0m [0m[0m[1m 387[0m[0m [0m[0m[1m 387[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m;[0m[0m
|
|
69
|
+
[0m[0m [0m[0m
|
|
70
|
+
[0m
|
|
71
|
+
[0m at src/components/Spreadsheet.tsx[0m[0m:[0m[0m829[0m[0m:[0m[0m49[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/use-key-with-click-events\lint/a11y/useKeyWithClickEvents]8;;\[0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
6
72
|
|
|
7
73
|
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mEnforce to have the [0m[0m[1m[33monClick[0m[0m[33m mouse event with the [0m[0m[1m[33monKeyUp[0m[0m[33m, the [0m[0m[1m[33monKeyDown[0m[0m[33m, or the [0m[0m[1m[33monKeyPress[0m[0m[33m keyboard event.[0m[0m
|
|
8
74
|
[0m[0m [0m[0m
|
|
9
|
-
[0m[0m [0m[0m [0m[0m[
|
|
10
|
-
[0m[0m [0m[0m [0m[0m[
|
|
11
|
-
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[
|
|
75
|
+
[0m[0m [0m[0m [0m[0m[1m827 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m{[0m[0m/[0m[0m*[0m[0m [0m[0mR[0m[0mo[0m[0mw[0m[0m [0m[0mI[0m[0mn[0m[0md[0m[0me[0m[0mx[0m[0m [0m[0mC[0m[0mo[0m[0ml[0m[0mu[0m[0mm[0m[0mn[0m[0m [0m[0m*[0m[0m/[0m[0m}[0m[0m
|
|
76
|
+
[0m[0m [0m[0m [0m[0m[1m828 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m{[0m[0me[0m[0mf[0m[0mf[0m[0me[0m[0mc[0m[0mt[0m[0mi[0m[0mv[0m[0me[0m[0mS[0m[0mh[0m[0mo[0m[0mw[0m[0mR[0m[0mo[0m[0mw[0m[0mI[0m[0mn[0m[0md[0m[0me[0m[0mx[0m[0m [0m[0m&[0m[0m&[0m[0m [0m[0m([0m[0m
|
|
77
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m829 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m<[0m[0mt[0m[0md[0m[0m
|
|
12
78
|
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
13
|
-
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[
|
|
79
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m830 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mC[0m[0ml[0m[0mi[0m[0mc[0m[0mk[0m[0m=[0m[0m{[0m[0m([0m[0me[0m[0m)[0m[0m [0m[0m=[0m[0m>[0m[0m [0m[0mh[0m[0ma[0m[0mn[0m[0md[0m[0ml[0m[0me[0m[0mR[0m[0mo[0m[0mw[0m[0mS[0m[0me[0m[0ml[0m[0me[0m[0mc[0m[0mt[0m[0m([0m[0mr[0m[0mo[0m[0mw[0m[0mI[0m[0md[0m[0m,[0m[0m [0m[0me[0m[0m)[0m[0m}[0m[0m
|
|
14
80
|
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m ...
|
|
15
|
-
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[
|
|
16
|
-
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[
|
|
81
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m856 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m}[0m[0m
|
|
82
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m857 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m>[0m[0m
|
|
17
83
|
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m
|
|
18
|
-
[0m[0m [0m[0m [0m[0m[
|
|
19
|
-
[0m[0m [0m[0m [0m[0m[
|
|
84
|
+
[0m[0m [0m[0m [0m[0m[1m858 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m<[0m[0md[0m[0mi[0m[0mv[0m[0m [0m[0mc[0m[0ml[0m[0ma[0m[0ms[0m[0ms[0m[0mN[0m[0ma[0m[0mm[0m[0me[0m[0m=[0m[0m"[0m[0mr[0m[0me[0m[0ml[0m[0ma[0m[0mt[0m[0mi[0m[0mv[0m[0me[0m[0m [0m[0mf[0m[0ml[0m[0me[0m[0mx[0m[0m [0m[0mi[0m[0mt[0m[0me[0m[0mm[0m[0ms[0m[0m-[0m[0mc[0m[0me[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0m [0m[0mj[0m[0mu[0m[0ms[0m[0mt[0m[0mi[0m[0mf[0m[0my[0m[0m-[0m[0mc[0m[0me[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0m"[0m[0m>[0m[0m
|
|
85
|
+
[0m[0m [0m[0m [0m[0m[1m859 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m{[0m[0m/[0m[0m*[0m[0m [0m[0mR[0m[0mo[0m[0mw[0m[0m [0m[0mn[0m[0mu[0m[0mm[0m[0mb[0m[0me[0m[0mr[0m[0m [0m[0m-[0m[0m [0m[0ma[0m[0ml[0m[0mw[0m[0ma[0m[0my[0m[0ms[0m[0m [0m[0mc[0m[0me[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0me[0m[0md[0m[0m [0m[0m*[0m[0m/[0m[0m}[0m[0m
|
|
20
86
|
[0m[0m [0m[0m
|
|
21
87
|
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mActions triggered using mouse events should have corresponding keyboard events to account for keyboard-only navigation.[0m[0m
|
|
22
88
|
[0m[0m [0m[0m
|
|
23
89
|
[0m
|
|
90
|
+
[0m at src/components/Spreadsheet.tsx[0m[0m:[0m[0m27[0m[0m:[0m[0m15[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-unused-imports\lint/correctness/noUnusedImports]8;;\[0m[0m [0m[0m[30m[47m FIXABLE [0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
91
|
+
|
|
92
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mSeveral of these [0m[0m[1m[33mimports[0m[0m[33m are unused.[0m[0m
|
|
93
|
+
[0m[0m [0m[0m
|
|
94
|
+
[0m[0m [0m[0m [0m[0m[1m25 │ [0m[0mi[0m[0mm[0m[0mp[0m[0mo[0m[0mr[0m[0mt[0m[0m [0m[0m{[0m[0m [0m[0mu[0m[0ms[0m[0me[0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mK[0m[0me[0m[0my[0m[0mb[0m[0mo[0m[0ma[0m[0mr[0m[0md[0m[0mS[0m[0mh[0m[0mo[0m[0mr[0m[0mt[0m[0mc[0m[0mu[0m[0mt[0m[0ms[0m[0m [0m[0m}[0m[0m [0m[0mf[0m[0mr[0m[0mo[0m[0mm[0m[0m [0m[0m'[0m[0m.[0m[0m.[0m[0m/[0m[0mh[0m[0mo[0m[0mo[0m[0mk[0m[0ms[0m[0m/[0m[0mu[0m[0ms[0m[0me[0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mK[0m[0me[0m[0my[0m[0mb[0m[0mo[0m[0ma[0m[0mr[0m[0md[0m[0mS[0m[0mh[0m[0mo[0m[0mr[0m[0mt[0m[0mc[0m[0mu[0m[0mt[0m[0ms[0m[0m'[0m[0m;[0m[0m
|
|
95
|
+
[0m[0m [0m[0m [0m[0m[1m26 │ [0m[0mi[0m[0mm[0m[0mp[0m[0mo[0m[0mr[0m[0mt[0m[0m [0m[0m{[0m[0m [0m[0mu[0m[0ms[0m[0me[0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mS[0m[0me[0m[0ml[0m[0me[0m[0mc[0m[0mt[0m[0mi[0m[0mo[0m[0mn[0m[0m [0m[0m}[0m[0m [0m[0mf[0m[0mr[0m[0mo[0m[0mm[0m[0m [0m[0m'[0m[0m.[0m[0m.[0m[0m/[0m[0mh[0m[0mo[0m[0mo[0m[0mk[0m[0ms[0m[0m/[0m[0mu[0m[0ms[0m[0me[0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mS[0m[0me[0m[0ml[0m[0me[0m[0mc[0m[0mt[0m[0mi[0m[0mo[0m[0mn[0m[0m'[0m[0m;[0m[0m
|
|
96
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m27 │ [0m[0mi[0m[0mm[0m[0mp[0m[0mo[0m[0mr[0m[0mt[0m[0m [0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0m [0m[0m{[0m[0m [0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0mE[0m[0md[0m[0mi[0m[0mt[0m[0m,[0m[0m [0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0mP[0m[0mo[0m[0ms[0m[0mi[0m[0mt[0m[0mi[0m[0mo[0m[0mn[0m[0m,[0m[0m [0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mP[0m[0mr[0m[0mo[0m[0mp[0m[0ms[0m[0m [0m[0m}[0m[0m [0m[0mf[0m[0mr[0m[0mo[0m[0mm[0m[0m [0m[0m'[0m[0m.[0m[0m.[0m[0m/[0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0ms[0m[0m'[0m[0m;[0m[0m
|
|
97
|
+
[0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
98
|
+
[0m[0m [0m[0m [0m[0m[1m28 │ [0m[0m
|
|
99
|
+
[0m[0m [0m[0m [0m[0m[1m29 │ [0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0m [0m[0mS[0m[0mi[0m[0mn[0m[0mg[0m[0ml[0m[0me[0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0mE[0m[0md[0m[0mi[0m[0mt[0m[0m [0m[0m=[0m[0m [0m[0m{[0m[0m
|
|
100
|
+
[0m[0m [0m[0m
|
|
101
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnused imports might be the result of an incomplete refactoring.[0m[0m
|
|
102
|
+
[0m[0m [0m[0m
|
|
103
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnsafe fix: Remove the unused imports.[0m[0m
|
|
104
|
+
[0m[0m [0m[0m
|
|
105
|
+
[0m[0m [0m[0m[1m 27 │ [0m[0mi[0m[0mm[0m[0mp[0m[0mo[0m[0mr[0m[0mt[0m[0m[2m·[0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0m[2m·[0m[0m{[0m[0m[2m·[0m[0m[31mC[0m[0m[31me[0m[0m[31ml[0m[0m[31ml[0m[0m[31mE[0m[0m[31md[0m[0m[31mi[0m[0m[31mt[0m[0m[31m,[0m[0m[2m[31m·[0m[0m[31mC[0m[0m[31me[0m[0m[31ml[0m[0m[31ml[0m[0m[31mP[0m[0m[31mo[0m[0m[31ms[0m[0m[31mi[0m[0m[31mt[0m[0m[31mi[0m[0m[31mo[0m[0m[31mn[0m[0m[31m,[0m[0m[2m[31m·[0m[0mS[0m[0mp[0m[0mr[0m[0me[0m[0ma[0m[0md[0m[0ms[0m[0mh[0m[0me[0m[0me[0m[0mt[0m[0mP[0m[0mr[0m[0mo[0m[0mp[0m[0ms[0m[0m[2m·[0m[0m}[0m[0m[2m·[0m[0mf[0m[0mr[0m[0mo[0m[0mm[0m[0m[2m·[0m[0m'[0m[0m.[0m[0m.[0m[0m/[0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0ms[0m[0m'[0m[0m;[0m[0m
|
|
106
|
+
[0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m[31m-[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m
|
|
107
|
+
[0m
|
|
108
|
+
[0m at src/components/Spreadsheet.tsx[0m[0m:[0m[0m329[0m[0m:[0m[0m9[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-unused-variables\lint/correctness/noUnusedVariables]8;;\[0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
109
|
+
|
|
110
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mThis variable [0m[0m[1m[33msetFocusedCell[0m[0m[33m is unused.[0m[0m
|
|
111
|
+
[0m[0m [0m[0m
|
|
112
|
+
[0m[0m [0m[0m [0m[0m[1m327 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0mo[0m[0mn[0m[0ms[0m[0mt[0m[0m [0m[0m{[0m[0m
|
|
113
|
+
[0m[0m [0m[0m [0m[0m[1m328 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mf[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0me[0m[0md[0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0m,[0m[0m
|
|
114
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m329 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mF[0m[0mo[0m[0mc[0m[0mu[0m[0ms[0m[0me[0m[0md[0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0m,[0m[0m
|
|
115
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
116
|
+
[0m[0m [0m[0m [0m[0m[1m330 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0me[0m[0md[0m[0mi[0m[0mt[0m[0mi[0m[0mn[0m[0mg[0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0m,[0m[0m
|
|
117
|
+
[0m[0m [0m[0m [0m[0m[1m331 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0ms[0m[0me[0m[0mt[0m[0mE[0m[0md[0m[0mi[0m[0mt[0m[0mi[0m[0mn[0m[0mg[0m[0mC[0m[0me[0m[0ml[0m[0ml[0m[0m,[0m[0m
|
|
118
|
+
[0m[0m [0m[0m
|
|
119
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnused variables are often the result of typos, incomplete refactors, or other sources of bugs.[0m[0m
|
|
120
|
+
[0m[0m [0m[0m
|
|
121
|
+
[0m
|
|
122
|
+
[0m at src/components/SpreadsheetCell.tsx[0m[0m:[0m[0m54[0m[0m:[0m[0m5[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-unused-function-parameters\lint/correctness/noUnusedFunctionParameters]8;;\[0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
123
|
+
|
|
124
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mThis [0m[0m[1m[33mparameter[0m[0m[33m is unused.[0m[0m
|
|
125
|
+
[0m[0m [0m[0m
|
|
126
|
+
[0m[0m [0m[0m [0m[0m[1m52 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mM[0m[0mo[0m[0mu[0m[0ms[0m[0me[0m[0mD[0m[0mo[0m[0mw[0m[0mn[0m[0m,[0m[0m
|
|
127
|
+
[0m[0m [0m[0m [0m[0m[1m53 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mM[0m[0mo[0m[0mu[0m[0ms[0m[0me[0m[0mE[0m[0mn[0m[0mt[0m[0me[0m[0mr[0m[0m,[0m[0m
|
|
128
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m54 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mC[0m[0mh[0m[0ma[0m[0mn[0m[0mg[0m[0me[0m[0m,[0m[0m
|
|
129
|
+
[0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
130
|
+
[0m[0m [0m[0m [0m[0m[1m55 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mC[0m[0mo[0m[0mn[0m[0mf[0m[0mi[0m[0mr[0m[0mm[0m[0m,[0m[0m
|
|
131
|
+
[0m[0m [0m[0m [0m[0m[1m56 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mo[0m[0mn[0m[0mC[0m[0ma[0m[0mn[0m[0mc[0m[0me[0m[0ml[0m[0m,[0m[0m
|
|
132
|
+
[0m[0m [0m[0m
|
|
133
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnused parameters might be the result of an incomplete refactoring.[0m[0m
|
|
134
|
+
[0m[0m [0m[0m
|
|
135
|
+
[0m
|
|
24
136
|
[0m at src/components/SpreadsheetFilterDropdown.tsx[0m[0m:[0m[0m188[0m[0m:[0m[0m9[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-static-element-interactions\lint/a11y/noStaticElementInteractions]8;;\[0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
25
137
|
|
|
26
138
|
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[33mStatic Elements should not be interactive.[0m[0m
|
|
@@ -57,5 +169,28 @@
|
|
|
57
169
|
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mActions triggered using mouse events should have corresponding keyboard events to account for keyboard-only navigation.[0m[0m
|
|
58
170
|
[0m[0m [0m[0m
|
|
59
171
|
[0m
|
|
60
|
-
[0m
|
|
61
|
-
|
|
172
|
+
[0m at src/hooks/useSpreadsheetSelection.ts[0m[0m:[0m[0m602[0m[0m:[0m[0m37[0m[0m [0m[0m]8;;https://biomejs.dev/linter/rules/no-global-is-nan\lint/suspicious/noGlobalIsNan]8;;\[0m[0m [0m[0m[30m[47m FIXABLE [0m[0m [0m[0m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m[0m
|
|
173
|
+
|
|
174
|
+
[0m[0m [0m[0m[1m[33m⚠[0m[0m [0m[0m[1m[33misNaN[0m[0m[33m is unsafe. It attempts a type coercion. Use [0m[0m[1m[33mNumber.isNaN[0m[0m[33m instead.[0m[0m
|
|
175
|
+
[0m[0m [0m[0m
|
|
176
|
+
[0m[0m [0m[0m [0m[0m[1m600 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mi[0m[0mf[0m[0m [0m[0m([0m[0mc[0m[0mo[0m[0ml[0m[0mu[0m[0mm[0m[0mn[0m[0m.[0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0m [0m[0m=[0m[0m=[0m[0m=[0m[0m [0m[0m'[0m[0mn[0m[0mu[0m[0mm[0m[0mb[0m[0me[0m[0mr[0m[0m'[0m[0m [0m[0m&[0m[0m&[0m[0m [0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0mo[0m[0mf[0m[0m [0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m [0m[0m=[0m[0m=[0m[0m=[0m[0m [0m[0m'[0m[0ms[0m[0mt[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m'[0m[0m)[0m[0m [0m[0m{[0m[0m
|
|
177
|
+
[0m[0m [0m[0m [0m[0m[1m601 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0mo[0m[0mn[0m[0ms[0m[0mt[0m[0m [0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0md[0m[0m [0m[0m=[0m[0m [0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0mF[0m[0ml[0m[0mo[0m[0ma[0m[0mt[0m[0m([0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m)[0m[0m;[0m[0m
|
|
178
|
+
[0m[0m [0m[0m[1m[31m>[0m[0m [0m[0m[1m602 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m [0m[0m=[0m[0m [0m[0mi[0m[0ms[0m[0mN[0m[0ma[0m[0mN[0m[0m([0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0md[0m[0m)[0m[0m [0m[0m?[0m[0m [0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m [0m[0m:[0m[0m [0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0md[0m[0m;[0m[0m
|
|
179
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m[1m[31m^[0m[0m
|
|
180
|
+
[0m[0m [0m[0m [0m[0m[1m603 │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m
|
|
181
|
+
[0m[0m [0m[0m [0m[0m[1m604 │ [0m[0m
|
|
182
|
+
[0m[0m [0m[0m
|
|
183
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mSee [0m[0m[34m]8;;https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/isNaN#description\the MDN documentation]8;;\[0m[0m[34m for more details.[0m[0m
|
|
184
|
+
[0m[0m [0m[0m
|
|
185
|
+
[0m[0m [0m[0m[1m[34mℹ[0m[0m [0m[0m[34mUnsafe fix: Use [0m[0m[1m[34mNumber.isNaN[0m[0m[34m instead.[0m[0m
|
|
186
|
+
[0m[0m [0m[0m
|
|
187
|
+
[0m[0m [0m[0m [0m[0m[1m600[0m[0m [0m[0m[1m600[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mi[0m[0mf[0m[0m [0m[0m([0m[0mc[0m[0mo[0m[0ml[0m[0mu[0m[0mm[0m[0mn[0m[0m.[0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0m [0m[0m=[0m[0m=[0m[0m=[0m[0m [0m[0m'[0m[0mn[0m[0mu[0m[0mm[0m[0mb[0m[0me[0m[0mr[0m[0m'[0m[0m [0m[0m&[0m[0m&[0m[0m [0m[0mt[0m[0my[0m[0mp[0m[0me[0m[0mo[0m[0mf[0m[0m [0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m [0m[0m=[0m[0m=[0m[0m=[0m[0m [0m[0m'[0m[0ms[0m[0mt[0m[0mr[0m[0mi[0m[0mn[0m[0mg[0m[0m'[0m[0m)[0m[0m [0m[0m{[0m[0m
|
|
188
|
+
[0m[0m [0m[0m [0m[0m[1m601[0m[0m [0m[0m[1m601[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0mc[0m[0mo[0m[0mn[0m[0ms[0m[0mt[0m[0m [0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0md[0m[0m [0m[0m=[0m[0m [0m[0mp[0m[0ma[0m[0mr[0m[0ms[0m[0me[0m[0mF[0m[0ml[0m[0mo[0m[0ma[0m[0mt[0m[0m([0m[0mc[0m[0me[0m[0ml[0m[0ml[0m[0mV[0m[0ma[0m[0ml[0m[0mu[0m[0me[0m[0m)[0m[0m;[0m[0m
|
|
189
|
+
[0m[0m [0m[0m [0m[0m[1m602[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m │ [0m[0m[31m-[0m[0m [0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[2m[31m·[0m[0m[31mc[0m[0m[31me[0m[0m[31ml[0m[0m[31ml[0m[0m[31mV[0m[0m[31ma[0m[0m[31ml[0m[0m[31mu[0m[0m[31me[0m[0m[2m[31m·[0m[0m[31m=[0m[0m[2m[31m·[0m[0m[1m[31mi[0m[0m[1m[31ms[0m[0m[1m[31mN[0m[0m[1m[31ma[0m[0m[1m[31mN[0m[0m[31m([0m[0m[31mp[0m[0m[31ma[0m[0m[31mr[0m[0m[31ms[0m[0m[31me[0m[0m[31md[0m[0m[31m)[0m[0m[2m[31m·[0m[0m[31m?[0m[0m[2m[31m·[0m[0m[31mc[0m[0m[31me[0m[0m[31ml[0m[0m[31ml[0m[0m[31mV[0m[0m[31ma[0m[0m[31ml[0m[0m[31mu[0m[0m[31me[0m[0m[2m[31m·[0m[0m[31m:[0m[0m[2m[31m·[0m[0m[31mp[0m[0m[31ma[0m[0m[31mr[0m[0m[31ms[0m[0m[31me[0m[0m[31md[0m[0m[31m;[0m[0m
|
|
190
|
+
[0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m[1m602[0m[0m[1m │ [0m[0m[32m+[0m[0m [0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[2m[32m·[0m[0m[32mc[0m[0m[32me[0m[0m[32ml[0m[0m[32ml[0m[0m[32mV[0m[0m[32ma[0m[0m[32ml[0m[0m[32mu[0m[0m[32me[0m[0m[2m[32m·[0m[0m[32m=[0m[0m[2m[32m·[0m[0m[1m[32mN[0m[0m[1m[32mu[0m[0m[1m[32mm[0m[0m[1m[32mb[0m[0m[1m[32me[0m[0m[1m[32mr[0m[0m[1m[32m.[0m[0m[1m[32mi[0m[0m[1m[32ms[0m[0m[1m[32mN[0m[0m[1m[32ma[0m[0m[1m[32mN[0m[0m[32m([0m[0m[32mp[0m[0m[32ma[0m[0m[32mr[0m[0m[32ms[0m[0m[32me[0m[0m[32md[0m[0m[32m)[0m[0m[2m[32m·[0m[0m[32m?[0m[0m[2m[32m·[0m[0m[32mc[0m[0m[32me[0m[0m[32ml[0m[0m[32ml[0m[0m[32mV[0m[0m[32ma[0m[0m[32ml[0m[0m[32mu[0m[0m[32me[0m[0m[2m[32m·[0m[0m[32m:[0m[0m[2m[32m·[0m[0m[32mp[0m[0m[32ma[0m[0m[32mr[0m[0m[32ms[0m[0m[32me[0m[0m[32md[0m[0m[32m;[0m[0m
|
|
191
|
+
[0m[0m [0m[0m [0m[0m[1m603[0m[0m [0m[0m[1m603[0m[0m[1m │ [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m [0m[0m}[0m[0m
|
|
192
|
+
[0m[0m [0m[0m [0m[0m[1m604[0m[0m [0m[0m[1m604[0m[0m[1m │ [0m[0m [0m[0m [0m[0m
|
|
193
|
+
[0m[0m [0m[0m
|
|
194
|
+
[0m
|
|
195
|
+
[0m[34mChecked [0m[0m[34m31[0m[0m[34m [0m[0m[34mfiles[0m[0m[34m in [0m[0m[34m18[0m[0m[2m[34mms[0m[0m[34m.[0m[0m[34m No fixes applied.[0m[0m
|
|
196
|
+
[0m[0m[33mFound [0m[0m[33m10[0m[0m[33m warnings.[0m
|
package/CHANGELOG.md
CHANGED
package/dist/index.d.mts
CHANGED
|
@@ -127,6 +127,26 @@ interface CellPosition {
|
|
|
127
127
|
/** Column ID */
|
|
128
128
|
columnId: string;
|
|
129
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Cell range for multi-cell selection
|
|
132
|
+
*/
|
|
133
|
+
interface CellRange {
|
|
134
|
+
/** Start position of the range */
|
|
135
|
+
start: CellPosition;
|
|
136
|
+
/** End position of the range */
|
|
137
|
+
end: CellPosition;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Cell edit for batch operations
|
|
141
|
+
*/
|
|
142
|
+
interface CellEdit {
|
|
143
|
+
/** Row ID */
|
|
144
|
+
rowId: string | number;
|
|
145
|
+
/** Column ID */
|
|
146
|
+
columnId: string;
|
|
147
|
+
/** New value */
|
|
148
|
+
value: any;
|
|
149
|
+
}
|
|
130
150
|
/**
|
|
131
151
|
* Cell highlight configuration
|
|
132
152
|
*/
|
|
@@ -239,8 +259,8 @@ interface SpreadsheetProps<T = any> {
|
|
|
239
259
|
columnGroups?: SpreadsheetColumnGroup[];
|
|
240
260
|
/** Unique key accessor for each row */
|
|
241
261
|
getRowId: (row: T) => string | number;
|
|
242
|
-
/** Callback when
|
|
243
|
-
|
|
262
|
+
/** Callback when cell values are edited (batch operation) */
|
|
263
|
+
onCellsEdit?: (edits: CellEdit[]) => void;
|
|
244
264
|
/** Callback when selection changes */
|
|
245
265
|
onSelectionChange?: (selectedRows: (string | number)[]) => void;
|
|
246
266
|
/** Callback when sort changes */
|
|
@@ -337,6 +357,15 @@ interface SpreadsheetProps<T = any> {
|
|
|
337
357
|
*/
|
|
338
358
|
filters?: Record<string, SpreadsheetColumnFilter>;
|
|
339
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* Selection edge for cell border styling
|
|
362
|
+
*/
|
|
363
|
+
interface SelectionEdge {
|
|
364
|
+
top?: boolean;
|
|
365
|
+
right?: boolean;
|
|
366
|
+
bottom?: boolean;
|
|
367
|
+
left?: boolean;
|
|
368
|
+
}
|
|
340
369
|
/**
|
|
341
370
|
* Props for SpreadsheetCell component
|
|
342
371
|
*/
|
|
@@ -357,6 +386,10 @@ interface SpreadsheetCellProps {
|
|
|
357
386
|
isEditing?: boolean;
|
|
358
387
|
/** Whether the cell is focused */
|
|
359
388
|
isFocused?: boolean;
|
|
389
|
+
/** Whether the cell is part of a multi-cell selection */
|
|
390
|
+
isInSelection?: boolean;
|
|
391
|
+
/** Selection edge for border styling (top/right/bottom/left) */
|
|
392
|
+
selectionEdge?: SelectionEdge;
|
|
360
393
|
/** Whether the row is selected */
|
|
361
394
|
isRowSelected?: boolean;
|
|
362
395
|
/** Whether the row is hovered */
|
|
@@ -381,24 +414,22 @@ interface SpreadsheetCellProps {
|
|
|
381
414
|
rightOffset?: number;
|
|
382
415
|
/** Callback when cell is clicked */
|
|
383
416
|
onClick?: (event: React$1.MouseEvent) => void;
|
|
417
|
+
/** Callback when mouse down on cell (for drag selection) */
|
|
418
|
+
onMouseDown?: (event: React$1.MouseEvent) => void;
|
|
419
|
+
/** Callback when mouse enters cell (for drag selection) */
|
|
420
|
+
onMouseEnter?: (event: React$1.MouseEvent) => void;
|
|
384
421
|
/** Callback when cell value changes (only called on blur/confirm, not during typing) */
|
|
385
422
|
onChange?: (newValue: any) => void;
|
|
386
423
|
/** Callback when editing is confirmed, receives the final value */
|
|
387
424
|
onConfirm?: (finalValue?: any) => void;
|
|
388
425
|
/** Callback when editing is cancelled */
|
|
389
426
|
onCancel?: () => void;
|
|
390
|
-
/** Callback to copy value down */
|
|
391
|
-
onCopyDown?: () => void;
|
|
392
|
-
/** Callback to copy to selected rows */
|
|
393
|
-
onCopyToSelected?: () => void;
|
|
394
427
|
/** Callback to add highlight */
|
|
395
428
|
onHighlight?: () => void;
|
|
396
429
|
/** Callback to add comment */
|
|
397
430
|
onAddComment?: () => void;
|
|
398
431
|
/** Callback to view comments */
|
|
399
432
|
onViewComments?: () => void;
|
|
400
|
-
/** Whether there are selected rows (for showing copy to selected button) */
|
|
401
|
-
hasSelectedRows?: boolean;
|
|
402
433
|
/** Custom className */
|
|
403
434
|
className?: string;
|
|
404
435
|
}
|
|
@@ -573,7 +604,7 @@ interface SpreadsheetColumnGroupHeaderProps {
|
|
|
573
604
|
* />
|
|
574
605
|
* ```
|
|
575
606
|
*/
|
|
576
|
-
declare function Spreadsheet<T extends Record<string, any>>({ data, columns, columnGroups, getRowId,
|
|
607
|
+
declare function Spreadsheet<T extends Record<string, any>>({ data, columns, columnGroups, getRowId, onCellsEdit, onSelectionChange, onSortChange, onFilterChange, onRowClick, onRowDoubleClick, onRowClone, onRowDelete, onAddCellComment, onRowHighlight, showToolbar, showPagination, showRowIndex, enableRowSelection, enableCellEditing, enableComments, enableHighlighting, enableUndoRedo, defaultPageSize, pageSizeOptions, defaultZoom, autoSave, compactMode, isLoading, className, emptyMessage, rowHighlights: externalRowHighlights, cellComments: externalCellComments, rowActions, toolbarMenuItems, serverSide, totalItems, currentPage: controlledCurrentPage, pageSize: controlledPageSize, onPageChange, sortConfig: controlledSortConfig, filters: controlledFilters, }: SpreadsheetProps<T>): react_jsx_runtime.JSX.Element;
|
|
577
608
|
declare namespace Spreadsheet {
|
|
578
609
|
var displayName: string;
|
|
579
610
|
}
|
|
@@ -689,4 +720,4 @@ interface SpreadsheetSettingsModalProps {
|
|
|
689
720
|
*/
|
|
690
721
|
declare const SpreadsheetSettingsModal: React.FC<SpreadsheetSettingsModalProps>;
|
|
691
722
|
|
|
692
|
-
export { type CellComment, type CellHighlight, type CellPosition, type PaginationState, type RowAction, type SelectionState, Spreadsheet, MemoizedSpreadsheetCell as SpreadsheetCell, type SpreadsheetCellProps, type SpreadsheetColumn, type SpreadsheetColumnFilter, type SpreadsheetColumnGroup, type SpreadsheetColumnGroupHeaderProps, SpreadsheetFilterDropdown, type SpreadsheetFilterDropdownProps, SpreadsheetHeader, type SpreadsheetHeaderProps, type SpreadsheetProps, type SpreadsheetSettings, SpreadsheetSettingsModal, type SpreadsheetSortConfig, type SpreadsheetState, SpreadsheetToolbar, type SpreadsheetToolbarProps, type ToolbarMenuItem };
|
|
723
|
+
export { type CellComment, type CellEdit, type CellHighlight, type CellPosition, type CellRange, type PaginationState, type RowAction, type SelectionEdge, type SelectionState, Spreadsheet, MemoizedSpreadsheetCell as SpreadsheetCell, type SpreadsheetCellProps, type SpreadsheetColumn, type SpreadsheetColumnFilter, type SpreadsheetColumnGroup, type SpreadsheetColumnGroupHeaderProps, SpreadsheetFilterDropdown, type SpreadsheetFilterDropdownProps, SpreadsheetHeader, type SpreadsheetHeaderProps, type SpreadsheetProps, type SpreadsheetSettings, SpreadsheetSettingsModal, type SpreadsheetSortConfig, type SpreadsheetState, SpreadsheetToolbar, type SpreadsheetToolbarProps, type ToolbarMenuItem };
|
package/dist/index.d.ts
CHANGED
|
@@ -127,6 +127,26 @@ interface CellPosition {
|
|
|
127
127
|
/** Column ID */
|
|
128
128
|
columnId: string;
|
|
129
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Cell range for multi-cell selection
|
|
132
|
+
*/
|
|
133
|
+
interface CellRange {
|
|
134
|
+
/** Start position of the range */
|
|
135
|
+
start: CellPosition;
|
|
136
|
+
/** End position of the range */
|
|
137
|
+
end: CellPosition;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Cell edit for batch operations
|
|
141
|
+
*/
|
|
142
|
+
interface CellEdit {
|
|
143
|
+
/** Row ID */
|
|
144
|
+
rowId: string | number;
|
|
145
|
+
/** Column ID */
|
|
146
|
+
columnId: string;
|
|
147
|
+
/** New value */
|
|
148
|
+
value: any;
|
|
149
|
+
}
|
|
130
150
|
/**
|
|
131
151
|
* Cell highlight configuration
|
|
132
152
|
*/
|
|
@@ -239,8 +259,8 @@ interface SpreadsheetProps<T = any> {
|
|
|
239
259
|
columnGroups?: SpreadsheetColumnGroup[];
|
|
240
260
|
/** Unique key accessor for each row */
|
|
241
261
|
getRowId: (row: T) => string | number;
|
|
242
|
-
/** Callback when
|
|
243
|
-
|
|
262
|
+
/** Callback when cell values are edited (batch operation) */
|
|
263
|
+
onCellsEdit?: (edits: CellEdit[]) => void;
|
|
244
264
|
/** Callback when selection changes */
|
|
245
265
|
onSelectionChange?: (selectedRows: (string | number)[]) => void;
|
|
246
266
|
/** Callback when sort changes */
|
|
@@ -337,6 +357,15 @@ interface SpreadsheetProps<T = any> {
|
|
|
337
357
|
*/
|
|
338
358
|
filters?: Record<string, SpreadsheetColumnFilter>;
|
|
339
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* Selection edge for cell border styling
|
|
362
|
+
*/
|
|
363
|
+
interface SelectionEdge {
|
|
364
|
+
top?: boolean;
|
|
365
|
+
right?: boolean;
|
|
366
|
+
bottom?: boolean;
|
|
367
|
+
left?: boolean;
|
|
368
|
+
}
|
|
340
369
|
/**
|
|
341
370
|
* Props for SpreadsheetCell component
|
|
342
371
|
*/
|
|
@@ -357,6 +386,10 @@ interface SpreadsheetCellProps {
|
|
|
357
386
|
isEditing?: boolean;
|
|
358
387
|
/** Whether the cell is focused */
|
|
359
388
|
isFocused?: boolean;
|
|
389
|
+
/** Whether the cell is part of a multi-cell selection */
|
|
390
|
+
isInSelection?: boolean;
|
|
391
|
+
/** Selection edge for border styling (top/right/bottom/left) */
|
|
392
|
+
selectionEdge?: SelectionEdge;
|
|
360
393
|
/** Whether the row is selected */
|
|
361
394
|
isRowSelected?: boolean;
|
|
362
395
|
/** Whether the row is hovered */
|
|
@@ -381,24 +414,22 @@ interface SpreadsheetCellProps {
|
|
|
381
414
|
rightOffset?: number;
|
|
382
415
|
/** Callback when cell is clicked */
|
|
383
416
|
onClick?: (event: React$1.MouseEvent) => void;
|
|
417
|
+
/** Callback when mouse down on cell (for drag selection) */
|
|
418
|
+
onMouseDown?: (event: React$1.MouseEvent) => void;
|
|
419
|
+
/** Callback when mouse enters cell (for drag selection) */
|
|
420
|
+
onMouseEnter?: (event: React$1.MouseEvent) => void;
|
|
384
421
|
/** Callback when cell value changes (only called on blur/confirm, not during typing) */
|
|
385
422
|
onChange?: (newValue: any) => void;
|
|
386
423
|
/** Callback when editing is confirmed, receives the final value */
|
|
387
424
|
onConfirm?: (finalValue?: any) => void;
|
|
388
425
|
/** Callback when editing is cancelled */
|
|
389
426
|
onCancel?: () => void;
|
|
390
|
-
/** Callback to copy value down */
|
|
391
|
-
onCopyDown?: () => void;
|
|
392
|
-
/** Callback to copy to selected rows */
|
|
393
|
-
onCopyToSelected?: () => void;
|
|
394
427
|
/** Callback to add highlight */
|
|
395
428
|
onHighlight?: () => void;
|
|
396
429
|
/** Callback to add comment */
|
|
397
430
|
onAddComment?: () => void;
|
|
398
431
|
/** Callback to view comments */
|
|
399
432
|
onViewComments?: () => void;
|
|
400
|
-
/** Whether there are selected rows (for showing copy to selected button) */
|
|
401
|
-
hasSelectedRows?: boolean;
|
|
402
433
|
/** Custom className */
|
|
403
434
|
className?: string;
|
|
404
435
|
}
|
|
@@ -573,7 +604,7 @@ interface SpreadsheetColumnGroupHeaderProps {
|
|
|
573
604
|
* />
|
|
574
605
|
* ```
|
|
575
606
|
*/
|
|
576
|
-
declare function Spreadsheet<T extends Record<string, any>>({ data, columns, columnGroups, getRowId,
|
|
607
|
+
declare function Spreadsheet<T extends Record<string, any>>({ data, columns, columnGroups, getRowId, onCellsEdit, onSelectionChange, onSortChange, onFilterChange, onRowClick, onRowDoubleClick, onRowClone, onRowDelete, onAddCellComment, onRowHighlight, showToolbar, showPagination, showRowIndex, enableRowSelection, enableCellEditing, enableComments, enableHighlighting, enableUndoRedo, defaultPageSize, pageSizeOptions, defaultZoom, autoSave, compactMode, isLoading, className, emptyMessage, rowHighlights: externalRowHighlights, cellComments: externalCellComments, rowActions, toolbarMenuItems, serverSide, totalItems, currentPage: controlledCurrentPage, pageSize: controlledPageSize, onPageChange, sortConfig: controlledSortConfig, filters: controlledFilters, }: SpreadsheetProps<T>): react_jsx_runtime.JSX.Element;
|
|
577
608
|
declare namespace Spreadsheet {
|
|
578
609
|
var displayName: string;
|
|
579
610
|
}
|
|
@@ -689,4 +720,4 @@ interface SpreadsheetSettingsModalProps {
|
|
|
689
720
|
*/
|
|
690
721
|
declare const SpreadsheetSettingsModal: React.FC<SpreadsheetSettingsModalProps>;
|
|
691
722
|
|
|
692
|
-
export { type CellComment, type CellHighlight, type CellPosition, type PaginationState, type RowAction, type SelectionState, Spreadsheet, MemoizedSpreadsheetCell as SpreadsheetCell, type SpreadsheetCellProps, type SpreadsheetColumn, type SpreadsheetColumnFilter, type SpreadsheetColumnGroup, type SpreadsheetColumnGroupHeaderProps, SpreadsheetFilterDropdown, type SpreadsheetFilterDropdownProps, SpreadsheetHeader, type SpreadsheetHeaderProps, type SpreadsheetProps, type SpreadsheetSettings, SpreadsheetSettingsModal, type SpreadsheetSortConfig, type SpreadsheetState, SpreadsheetToolbar, type SpreadsheetToolbarProps, type ToolbarMenuItem };
|
|
723
|
+
export { type CellComment, type CellEdit, type CellHighlight, type CellPosition, type CellRange, type PaginationState, type RowAction, type SelectionEdge, type SelectionState, Spreadsheet, MemoizedSpreadsheetCell as SpreadsheetCell, type SpreadsheetCellProps, type SpreadsheetColumn, type SpreadsheetColumnFilter, type SpreadsheetColumnGroup, type SpreadsheetColumnGroupHeaderProps, SpreadsheetFilterDropdown, type SpreadsheetFilterDropdownProps, SpreadsheetHeader, type SpreadsheetHeaderProps, type SpreadsheetProps, type SpreadsheetSettings, SpreadsheetSettingsModal, type SpreadsheetSortConfig, type SpreadsheetState, SpreadsheetToolbar, type SpreadsheetToolbarProps, type ToolbarMenuItem };
|