Skip to content

Commit

Permalink
Fix: Row and column size overrides not being applied correctly
Browse files Browse the repository at this point in the history
  • Loading branch information
12joan committed Jan 8, 2024
1 parent 432dc6e commit 17e91c6
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 6 deletions.
5 changes: 5 additions & 0 deletions .changeset/good-cats-scream.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@udecode/plate-core": minor
---

Export `atom` from `jotai`
5 changes: 5 additions & 0 deletions .changeset/violet-mugs-shake.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@udecode/plate-table": patch
---

Fix: Row and column size overrides not being applied correctly
1 change: 1 addition & 0 deletions packages/core/src/libs/jotai.ts
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
export { createAtomStore } from 'jotai-x';
export { atom } from 'jotai';
11 changes: 5 additions & 6 deletions packages/table/src/stores/tableStore.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import React from 'react';
import { createAtomStore, TElement } from '@udecode/plate-common';
import { atom, createAtomStore, TElement } from '@udecode/plate-common';

export type TableStoreSizeOverrides = Map<number, number>;

export const { tableStore, useTableStore, TableProvider } = createAtomStore(
{
colSizeOverrides: new Map() as TableStoreSizeOverrides,
rowSizeOverrides: new Map() as TableStoreSizeOverrides,
colSizeOverrides: atom(new Map() as TableStoreSizeOverrides),
rowSizeOverrides: atom(new Map() as TableStoreSizeOverrides),
marginLeftOverride: null as number | null,
hoveredColIndex: null as number | null,
selectedCells: null as TElement[] | null,
Expand Down Expand Up @@ -37,15 +37,14 @@ const useOverrideSizeFactory = (
[setOverrides]
);

// jotai supports setting with functions, but createAtomStore doesn't know that
export const useOverrideColSize = () => {
const setColSizeOverrides = useTableStore().set.colSizeOverrides();
return useOverrideSizeFactory(setColSizeOverrides as unknown as any);
return useOverrideSizeFactory(setColSizeOverrides);
};

export const useOverrideRowSize = () => {
const setRowSizeOverrides = useTableStore().set.rowSizeOverrides();
return useOverrideSizeFactory(setRowSizeOverrides as unknown as any);
return useOverrideSizeFactory(setRowSizeOverrides);
};

export const useOverrideMarginLeft = () =>
Expand Down

0 comments on commit 17e91c6

Please sign in to comment.