@particle-academy/fancy-sheets 0.7.5 → 0.7.6

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/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @particle-academy/fancy-sheets
2
2
 
3
+ [![Fancified](art/fancified.svg)](https://particle.academy)
4
+
3
5
  A full-featured spreadsheet component with formulas, formatting, selection, multi-sheet workbooks, clipboard, CSV import/export, and undo/redo. Custom engine — no third-party dependency.
4
6
 
5
7
  ## Installation
package/dist/index.cjs CHANGED
@@ -1561,7 +1561,7 @@ function reducer(state, action) {
1561
1561
  };
1562
1562
  }
1563
1563
  case "SET_WORKBOOK":
1564
- return { ...state, workbook: action.workbook };
1564
+ return { ...state, workbook: recalculateWorkbook(action.workbook) };
1565
1565
  default:
1566
1566
  return state;
1567
1567
  }
@@ -2260,7 +2260,13 @@ function SpreadsheetGrid({ className }) {
2260
2260
  return /* @__PURE__ */ jsxRuntime.jsxs(
2261
2261
  "div",
2262
2262
  {
2263
- className: "flex",
2263
+ className: reactFancy.cn(
2264
+ "flex",
2265
+ // Frozen rows need a solid background so scrolling content
2266
+ // doesn't bleed through any cell-level transparency
2267
+ // (highlight overlays, alpha format colors, etc.).
2268
+ isFrozenRow && "bg-white dark:bg-zinc-900"
2269
+ ),
2264
2270
  style: isFrozenRow ? {
2265
2271
  position: "sticky",
2266
2272
  top: rowHeight + rowIdx * rowHeight,
@@ -2274,6 +2280,12 @@ function SpreadsheetGrid({ className }) {
2274
2280
  return /* @__PURE__ */ jsxRuntime.jsx(
2275
2281
  "div",
2276
2282
  {
2283
+ className: reactFancy.cn(
2284
+ // Same solid-background guarantee for frozen
2285
+ // columns — keeps the column opaque while content
2286
+ // scrolls horizontally underneath.
2287
+ isFrozenCol && "bg-white dark:bg-zinc-900"
2288
+ ),
2277
2289
  style: isFrozenCol ? {
2278
2290
  position: "sticky",
2279
2291
  left: 48 + Array.from({ length: colIdx }, (_3, c) => getColumnWidth(c)).reduce((a, b) => a + b, 0),