@sheetwrite/react 0.4.0 → 0.5.0
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 +6 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +44 -151
- package/package.json +7 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
package/README.md
CHANGED
|
@@ -61,6 +61,12 @@ replace the grid. Live inputs are `theme`, `readOnly`, `config`, `overscan`, and
|
|
|
61
61
|
|
|
62
62
|
`ref` receives the current `Grid` before `onReady({ grid, generation, reason })` runs and clears on replacement or unmount. Reasons are `initial`, `input-reset`, and `renderer-reset`.
|
|
63
63
|
|
|
64
|
+
Readiness observes the latest committed live options. A throwing ref or ready
|
|
65
|
+
callback retires the new Grid; consumer errors are not initialization failures.
|
|
66
|
+
Omitted `renderer` and `"canvas"` are equivalent. Changing an explicit
|
|
67
|
+
`wasmSource` after readiness preserves the Grid and retains the loader's
|
|
68
|
+
first-source warning.
|
|
69
|
+
|
|
64
70
|
Grid events use collision-free names: `onGridChange`, `onViewportChange`, `onSelectionChange`, `onEditBegin`, `onEditCommit`, `onSearch`, `onCommandStateChange`, `onActiveSheetChange`, `onMutationRejected`, `onRendererFallback`, `onDatasourceError`, and `onExportError`. Native host `onChange` and `onScroll` remain ordinary DOM handlers.
|
|
65
71
|
|
|
66
72
|
For vanilla/preload control, import `initSheetwrite()` and `createGrid()` from `@sheetwrite/core`. See [installation](https://sheetwrite.vercel.app/docs/start/installation/), [React integration](https://sheetwrite.vercel.app/docs/frameworks/react/), and [collaboration](https://sheetwrite.vercel.app/docs/guides/collaboration/).
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CellScalar, Grid, GridOptions } from "@sheetwrite/core";
|
|
2
2
|
import { createSimpleRowBridge, type GridAdapterEventHandlers, type GridSizeProps, type RowBridge, type RowBridgeHandler, type RowBridgeId, type SheetwriteInitializationProps, type SimpleColumn } from "@sheetwrite/core/adapter";
|
|
3
3
|
import { type CSSProperties, type ForwardedRef, type HTMLAttributes, type ReactElement, type ReactNode } from "react";
|
|
4
4
|
type GridAdapterEventHandlerName = "onGridChange" | "onRowDelta" | "onSelectionChange" | "onViewportChange" | "onEditBegin" | "onEditCommit" | "onSearch" | "onCommandStateChange" | "onActiveSheetChange" | "onMutationRejected" | "onRendererFallback" | "onDatasourceError" | "onExportError" | "onReady" | "onInitializationError";
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { createGridController, createSimpleGridInput, createSimpleRowBridge, getGridResetReason, gridSizeStyle, } from "@sheetwrite/core/adapter";
|
|
2
|
+
import { createAdapterGridController, createSimpleGridInput, createSimpleRowBridge, extractGridOptions, gridSizeStyle, } from "@sheetwrite/core/adapter";
|
|
4
3
|
import { forwardRef, useEffect, useLayoutEffect, useMemo, useRef, useState, } from "react";
|
|
5
4
|
const useCommitLayoutEffect = typeof window === "undefined" ? useEffect : useLayoutEffect;
|
|
6
5
|
function publishGrid(ref, grid) {
|
|
@@ -14,20 +13,9 @@ const SheetwriteGridComponent = forwardRef(function SheetwriteGrid(props, ref) {
|
|
|
14
13
|
const { className, style, fallback, wasmSource, onInitializationError, onGridChange, onRowDelta, onSelectionChange, onViewportChange, onEditBegin, onEditCommit, onSearch, onCommandStateChange, onActiveSheetChange, onMutationRejected, onRendererFallback, onDatasourceError, onExportError, onReady, rowBridge, workbook, data, datasource, datasourceStorage, renderer, workerUrl, presentation, theme, readOnly, protectionResolver, mutationPolicy, transactionResourceLimits, hyperlinkActivation, renderers, editors, overscan, minColumns, config, height, fill, ...hostAttributes } = props;
|
|
15
14
|
const hostRef = useRef(null);
|
|
16
15
|
const controllerRef = useRef(null);
|
|
16
|
+
const currentGrid = useRef(null);
|
|
17
17
|
const publishedRef = useRef(null);
|
|
18
|
-
const
|
|
19
|
-
const initializedRef = useRef(isSheetwriteReady());
|
|
20
|
-
const mountedRef = useRef(false);
|
|
21
|
-
const [initializationState, setInitializationState] = useState(initializedRef.current ? "ready" : "loading");
|
|
22
|
-
const previousOptionsRef = useRef(null);
|
|
23
|
-
const liveOptionsRef = useRef({
|
|
24
|
-
theme,
|
|
25
|
-
readOnly,
|
|
26
|
-
overscan,
|
|
27
|
-
minColumns,
|
|
28
|
-
config,
|
|
29
|
-
});
|
|
30
|
-
liveOptionsRef.current = { theme, readOnly, overscan, minColumns, config };
|
|
18
|
+
const [initializationState, setInitializationState] = useState("loading");
|
|
31
19
|
const handlers = useRef(null);
|
|
32
20
|
useCommitLayoutEffect(() => {
|
|
33
21
|
const committedHandlers = {
|
|
@@ -74,7 +62,7 @@ const SheetwriteGridComponent = forwardRef(function SheetwriteGrid(props, ref) {
|
|
|
74
62
|
if (previous && previous !== ref)
|
|
75
63
|
publishGrid(previous, null);
|
|
76
64
|
publishedRef.current = ref;
|
|
77
|
-
publishGrid(ref,
|
|
65
|
+
publishGrid(ref, currentGrid.current);
|
|
78
66
|
return () => {
|
|
79
67
|
if (publishedRef.current !== ref)
|
|
80
68
|
return;
|
|
@@ -82,151 +70,56 @@ const SheetwriteGridComponent = forwardRef(function SheetwriteGrid(props, ref) {
|
|
|
82
70
|
publishedRef.current = null;
|
|
83
71
|
};
|
|
84
72
|
}, [ref]);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
mountedRef.current = false;
|
|
89
|
-
};
|
|
90
|
-
}, []);
|
|
91
|
-
useEffect(() => {
|
|
92
|
-
let current = true;
|
|
93
|
-
if (isSheetwriteReady()) {
|
|
94
|
-
initializedRef.current = true;
|
|
95
|
-
setInitializationState("ready");
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
setInitializationState("loading");
|
|
99
|
-
void initSheetwrite(wasmSource).then(() => {
|
|
100
|
-
if (!mountedRef.current || !isSheetwriteReady())
|
|
101
|
-
return;
|
|
102
|
-
initializedRef.current = true;
|
|
103
|
-
setInitializationState("ready");
|
|
104
|
-
}, (error) => {
|
|
105
|
-
if (!current || !mountedRef.current)
|
|
106
|
-
return;
|
|
107
|
-
initializedRef.current = false;
|
|
108
|
-
setInitializationState("error");
|
|
109
|
-
handlers.current?.onInitializationError?.(error);
|
|
110
|
-
});
|
|
111
|
-
return () => {
|
|
112
|
-
current = false;
|
|
113
|
-
};
|
|
114
|
-
}, [wasmSource]);
|
|
115
|
-
useEffect(() => {
|
|
116
|
-
if (initializationState !== "ready")
|
|
117
|
-
return;
|
|
118
|
-
const host = hostRef.current;
|
|
119
|
-
if (!host)
|
|
120
|
-
return;
|
|
121
|
-
const options = {
|
|
122
|
-
workbook,
|
|
123
|
-
data,
|
|
124
|
-
datasource,
|
|
125
|
-
datasourceStorage,
|
|
126
|
-
renderer,
|
|
127
|
-
workerUrl,
|
|
128
|
-
presentation,
|
|
129
|
-
renderers,
|
|
130
|
-
editors,
|
|
131
|
-
protectionResolver,
|
|
132
|
-
mutationPolicy,
|
|
133
|
-
transactionResourceLimits,
|
|
134
|
-
hyperlinkActivation,
|
|
135
|
-
...liveOptionsRef.current,
|
|
136
|
-
};
|
|
137
|
-
const previousOptions = previousOptionsRef.current;
|
|
138
|
-
const reason = generationRef.current === 0
|
|
139
|
-
? "initial"
|
|
140
|
-
: ((previousOptions && getGridResetReason(previousOptions, options)) ?? "input-reset");
|
|
141
|
-
const controller = createGridController(host, options, {
|
|
73
|
+
if (!controllerRef.current) {
|
|
74
|
+
const forwardCommandStateChange = (event) => handlers.current?.onCommandStateChange?.(event);
|
|
75
|
+
controllerRef.current = createAdapterGridController({
|
|
142
76
|
onGridChange: (event) => handlers.current?.onGridChange?.(event),
|
|
143
|
-
onRowDelta: (
|
|
144
|
-
onSelectionChange: (
|
|
77
|
+
onRowDelta: (event) => handlers.current?.onRowDelta?.(event),
|
|
78
|
+
onSelectionChange: (event) => handlers.current?.onSelectionChange?.(event),
|
|
145
79
|
onViewportChange: (event) => handlers.current?.onViewportChange?.(event),
|
|
146
80
|
onEditBegin: (event) => handlers.current?.onEditBegin?.(event),
|
|
147
81
|
onEditCommit: (event) => handlers.current?.onEditCommit?.(event),
|
|
148
|
-
onSearch: (
|
|
149
|
-
onCommandStateChange
|
|
82
|
+
onSearch: (event) => handlers.current?.onSearch?.(event),
|
|
83
|
+
get onCommandStateChange() {
|
|
84
|
+
return handlers.current?.onCommandStateChange ? forwardCommandStateChange : undefined;
|
|
85
|
+
},
|
|
150
86
|
onActiveSheetChange: (event) => handlers.current?.onActiveSheetChange?.(event),
|
|
151
87
|
onMutationRejected: (event) => handlers.current?.onMutationRejected?.(event),
|
|
152
88
|
onRendererFallback: (event) => handlers.current?.onRendererFallback?.(event),
|
|
153
89
|
onDatasourceError: (event) => handlers.current?.onDatasourceError?.(event),
|
|
154
90
|
onExportError: (event) => handlers.current?.onExportError?.(event),
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
catch (error) {
|
|
172
|
-
cleanupError = error;
|
|
173
|
-
cleanupFailed = true;
|
|
174
|
-
}
|
|
175
|
-
if (detachPublishedRef && publishedRef.current === published)
|
|
176
|
-
publishedRef.current = null;
|
|
177
|
-
try {
|
|
178
|
-
controller.destroy();
|
|
179
|
-
}
|
|
180
|
-
catch (error) {
|
|
181
|
-
cleanupError = cleanupFailed
|
|
182
|
-
? new AggregateError([cleanupError, error], "Sheetwrite React controller cleanup failed")
|
|
183
|
-
: error;
|
|
184
|
-
cleanupFailed = true;
|
|
185
|
-
}
|
|
186
|
-
if (cleanupFailed)
|
|
187
|
-
throw cleanupError;
|
|
188
|
-
};
|
|
189
|
-
try {
|
|
190
|
-
publishGrid(publishedRef.current, controller.grid);
|
|
191
|
-
handlers.current?.onReady?.({
|
|
192
|
-
grid: controller.grid,
|
|
193
|
-
generation: generationRef.current,
|
|
194
|
-
reason,
|
|
195
|
-
});
|
|
196
|
-
previousOptionsRef.current = options;
|
|
197
|
-
}
|
|
198
|
-
catch (error) {
|
|
199
|
-
try {
|
|
200
|
-
teardown(true);
|
|
201
|
-
}
|
|
202
|
-
catch (cleanupError) {
|
|
203
|
-
throw new AggregateError([error, cleanupError], "Sheetwrite React controller creation and cleanup failed");
|
|
204
|
-
}
|
|
205
|
-
throw error;
|
|
206
|
-
}
|
|
207
|
-
return teardown;
|
|
208
|
-
}, [
|
|
209
|
-
initializationState,
|
|
210
|
-
workbook,
|
|
211
|
-
data,
|
|
212
|
-
datasource,
|
|
213
|
-
datasourceStorage,
|
|
214
|
-
renderer,
|
|
215
|
-
workerUrl,
|
|
216
|
-
presentation,
|
|
217
|
-
protectionResolver,
|
|
218
|
-
mutationPolicy,
|
|
219
|
-
transactionResourceLimits,
|
|
220
|
-
hyperlinkActivation,
|
|
221
|
-
renderers,
|
|
222
|
-
editors,
|
|
91
|
+
onReady: (event) => handlers.current?.onReady?.(event),
|
|
92
|
+
onInitializationError: (error) => handlers.current?.onInitializationError?.(error),
|
|
93
|
+
}, {
|
|
94
|
+
publish(grid) {
|
|
95
|
+
currentGrid.current = grid;
|
|
96
|
+
publishGrid(publishedRef.current, grid);
|
|
97
|
+
},
|
|
98
|
+
setInitializationState,
|
|
99
|
+
reportConsumerFailure(thrown) {
|
|
100
|
+
reportError(thrown);
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
const committedInput = useRef({
|
|
105
|
+
options: extractGridOptions({ ...props }),
|
|
223
106
|
rowBridge,
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
useEffect(() =>
|
|
107
|
+
wasmSource,
|
|
108
|
+
});
|
|
109
|
+
useCommitLayoutEffect(() => {
|
|
110
|
+
committedInput.current = { options: extractGridOptions({ ...props }), rowBridge, wasmSource };
|
|
111
|
+
});
|
|
112
|
+
useEffect(() => {
|
|
113
|
+
const controller = controllerRef.current;
|
|
114
|
+
const host = hostRef.current;
|
|
115
|
+
if (!controller || !host)
|
|
116
|
+
return;
|
|
117
|
+
controller.mount(host, committedInput.current);
|
|
118
|
+
return () => controller.unmount();
|
|
119
|
+
}, []);
|
|
120
|
+
useEffect(() => {
|
|
121
|
+
controllerRef.current?.update(committedInput.current);
|
|
122
|
+
});
|
|
230
123
|
const hostClassName = className ? `sheetwrite ${className}` : "sheetwrite";
|
|
231
124
|
const sizing = gridSizeStyle({ height, fill });
|
|
232
125
|
const hostStyle = { ...style, ...sizing };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sheetwrite/react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "React adapter for Sheetwrite.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -19,6 +19,9 @@
|
|
|
19
19
|
"react",
|
|
20
20
|
"canvas"
|
|
21
21
|
],
|
|
22
|
+
"sideEffects": [
|
|
23
|
+
"**/*.css"
|
|
24
|
+
],
|
|
22
25
|
"main": "./dist/index.js",
|
|
23
26
|
"module": "./dist/index.js",
|
|
24
27
|
"types": "./dist/index.d.ts",
|
|
@@ -30,7 +33,8 @@
|
|
|
30
33
|
"./styles.css": "./styles.css"
|
|
31
34
|
},
|
|
32
35
|
"files": [
|
|
33
|
-
"dist",
|
|
36
|
+
"dist/**/*.js",
|
|
37
|
+
"dist/**/*.d.ts",
|
|
34
38
|
"styles.css"
|
|
35
39
|
],
|
|
36
40
|
"publishConfig": {
|
|
@@ -45,6 +49,6 @@
|
|
|
45
49
|
"react": ">=18"
|
|
46
50
|
},
|
|
47
51
|
"dependencies": {
|
|
48
|
-
"@sheetwrite/core": "0.
|
|
52
|
+
"@sheetwrite/core": "0.5.0"
|
|
49
53
|
}
|
|
50
54
|
}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|