@a3s-lab/office 0.14.0 → 0.16.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/COLLABORATION_ROADMAP.md +15 -5
- package/README.md +34 -1
- package/dist/0~6090.js +7 -8
- package/dist/0~spreadsheet-editor.js +6869 -3427
- package/dist/0~work-office-diagnostics.js +1 -1
- package/dist/{4476.js → 2180.js} +404 -35
- package/dist/4104.js +698 -41
- package/dist/5184.js +1 -1
- package/dist/8715.js +156 -156
- package/dist/core.js +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/collaboration/office-spreadsheet-collaboration-records.d.ts +2 -0
- package/dist/internal/collaboration/office-spreadsheet-collaboration-validation-support.d.ts +6 -0
- package/dist/internal/features/work/editors/spreadsheet-auto-filter.d.ts +1 -0
- package/dist/internal/features/work/editors/spreadsheet-command-catalog.d.ts +44 -1
- package/dist/internal/features/work/editors/spreadsheet-command-controller.d.ts +28 -0
- package/dist/internal/features/work/editors/spreadsheet-data-validation-command.d.ts +3 -0
- package/dist/internal/features/work/editors/spreadsheet-data-validation-dialog.d.ts +9 -0
- package/dist/internal/features/work/editors/spreadsheet-data-validation.d.ts +50 -0
- package/dist/internal/features/work/editors/spreadsheet-editor-ribbon.d.ts +4 -2
- package/dist/internal/features/work/editors/spreadsheet-editor-support.d.ts +1 -0
- package/dist/internal/features/work/editors/spreadsheet-hyperlink-command.d.ts +3 -0
- package/dist/internal/features/work/editors/spreadsheet-hyperlink-dialog.d.ts +9 -0
- package/dist/internal/features/work/editors/spreadsheet-hyperlink.d.ts +44 -0
- package/dist/internal/features/work/editors/spreadsheet-table-command.d.ts +3 -0
- package/dist/internal/features/work/editors/spreadsheet-table-conversion.d.ts +7 -0
- package/dist/internal/features/work/editors/spreadsheet-table-dialog.d.ts +8 -0
- package/dist/internal/features/work/editors/spreadsheet-table-limits.d.ts +1 -0
- package/dist/internal/features/work/editors/spreadsheet-table-reconciliation.d.ts +21 -0
- package/dist/internal/features/work/editors/spreadsheet-table-render.d.ts +16 -0
- package/dist/internal/features/work/editors/spreadsheet-table-ribbon.d.ts +8 -0
- package/dist/internal/features/work/editors/spreadsheet-table-style.d.ts +31 -0
- package/dist/internal/features/work/editors/spreadsheet-table.d.ts +55 -0
- package/dist/internal/features/work/editors/use-spreadsheet-data-validation.d.ts +23 -0
- package/dist/internal/features/work/editors/use-spreadsheet-hyperlink.d.ts +24 -0
- package/dist/internal/features/work/editors/use-spreadsheet-table.d.ts +23 -0
- package/dist/internal/features/work/work-spreadsheet-data-validation.d.ts +2 -0
- package/dist/internal/features/work/work-types.d.ts +100 -0
- package/dist/internal/features/work/work-xlsx-interop.d.ts +2 -0
- package/dist/internal/features/work/work-xlsx-table-filters.d.ts +3 -0
- package/dist/internal/features/work/work-xlsx-tables.d.ts +4 -0
- package/dist/office-kernel.wasm +0 -0
- package/dist/styles.css +486 -0
- package/dist/work-spreadsheet-package-scan.worker.js +3 -2
- package/docs/latest/en/browser-editor-architecture.md +43 -0
- package/package.json +12 -3
package/COLLABORATION_ROADMAP.md
CHANGED
|
@@ -271,9 +271,10 @@ comments, and delete-vs-edit cases converge and survive PPTX round trips.
|
|
|
271
271
|
|
|
272
272
|
### Phase 4: Spreadsheet
|
|
273
273
|
|
|
274
|
-
Status: browser collaboration foundation
|
|
275
|
-
and atomic batch-cell mutations
|
|
276
|
-
|
|
274
|
+
Status: browser collaboration foundation, ordered ID-keyed native table
|
|
275
|
+
records, and native conflict-local single-cell plus atomic batch-cell mutations
|
|
276
|
+
implemented; broader structural operations, native recalculation parity, and
|
|
277
|
+
XLSX concurrency coverage are pending.
|
|
277
278
|
|
|
278
279
|
- Stable sheet/named-range order arrays, ID-keyed records, and append-only
|
|
279
280
|
creation claims avoid a serialized workbook or dense worksheet root.
|
|
@@ -285,6 +286,12 @@ recalculation parity, and XLSX concurrency coverage are pending.
|
|
|
285
286
|
and dynamic-array metadata leaves do not replace their containing object.
|
|
286
287
|
- Images, charts, pivot tables, defined names, calculation settings, print
|
|
287
288
|
areas/titles, page breaks, and page setup have conflict-local typed roots.
|
|
289
|
+
- Native Tables/ListObjects use a per-sheet ID-keyed record map plus an explicit
|
|
290
|
+
order array. Immutable parent-scoped creation claims prevent ID reuse;
|
|
291
|
+
recursively patched name, range, column, filter, style, header/totals, and
|
|
292
|
+
stripe fields let independent browser design edits converge. Shared-input
|
|
293
|
+
validation rejects duplicate table/defined names, overlaps, invalid styles,
|
|
294
|
+
malformed columns or filters, and out-of-sheet ranges before projection.
|
|
288
295
|
- Snapshot writes are translated into `previous -> next` patches. Unrelated
|
|
289
296
|
stale snapshots preserve remote cells and records; a delete that would
|
|
290
297
|
discard a remote edit fails closed and asks the caller to refresh.
|
|
@@ -316,8 +323,11 @@ recalculation parity, and XLSX concurrency coverage are pending.
|
|
|
316
323
|
|
|
317
324
|
Remaining:
|
|
318
325
|
|
|
319
|
-
- Add
|
|
320
|
-
insertion/deletion, merged ranges,
|
|
326
|
+
- Add native typed structural operations and reference transforms for
|
|
327
|
+
row/column insertion/deletion, merged ranges, sort, and named references;
|
|
328
|
+
bridge the existing native table add/set/remove file mutations into the
|
|
329
|
+
browser-convergent table records, then add collaboration-aware conversion,
|
|
330
|
+
calculated-column, totals, and structured-reference operations.
|
|
321
331
|
- Treat calculated values as derived once browser and native recalculation are
|
|
322
332
|
deterministic and source formulas remain the only canonical formula state.
|
|
323
333
|
- Add offline/reordered-update property tests plus merged XLSX export/reopen.
|
package/README.md
CHANGED
|
@@ -192,6 +192,9 @@ through the CLI, standard MCP server, or A3S Code.
|
|
|
192
192
|
The host owns rooms, authentication, authorization, network delivery, offline
|
|
193
193
|
buffering, persistence, and the `Y.Doc`; A3S Office owns format-specific
|
|
194
194
|
bindings, local undo, validated presence, and conflict-local typed mutations.
|
|
195
|
+
Spreadsheet table state uses ordered, ID-keyed records with creation claims;
|
|
196
|
+
independent table name, style, stripe, column, and filter fields can converge
|
|
197
|
+
without replacing a serialized worksheet.
|
|
195
198
|
An authenticated Document `comment` session can select text, create a durable
|
|
196
199
|
thread, reply, resolve or reopen it, and delete only review records owned by
|
|
197
200
|
its actor while canonical content remains read-only. The server independently
|
|
@@ -534,7 +537,26 @@ interaction model.
|
|
|
534
537
|
modes, arithmetic operations, Skip blanks, Transpose, translated formula
|
|
535
538
|
references, rich same-editor styles/comments/validation/merges/column widths,
|
|
536
539
|
bounded TSV fallback, one-step Undo, and fail-closed protected or unsafe
|
|
537
|
-
targets,
|
|
540
|
+
targets, an Insert and Links Hyperlink command with grid-scoped `Cmd/Ctrl+K`,
|
|
541
|
+
accessible Web page, cell-range, and worksheet targets, explicit Edit and
|
|
542
|
+
Remove, immutable dense/sparse updates, content/style/comment preservation,
|
|
543
|
+
exact focus restoration, one-step Undo, and fail-closed unsafe, hidden,
|
|
544
|
+
protected, pivot, or out-of-bounds targets, a Data and Data Tools Validation
|
|
545
|
+
command for lists, whole numbers, decimals, dates, and text length across
|
|
546
|
+
multiple ranges, compact rule writes and removal, input messages,
|
|
547
|
+
invalid-input blocking, 1900/1904-aware XLSX date round trips, exact focus
|
|
548
|
+
restoration, one-step Undo, and fail-closed protected, merged, pivot,
|
|
549
|
+
read-only, invalid, out-of-bounds, or over-10,000-cell targets, native
|
|
550
|
+
Spreadsheet Tables/ListObjects through Insert and grid-scoped `Cmd/Ctrl+T`,
|
|
551
|
+
bounded current-region or explicit-range creation, canonical unique headers,
|
|
552
|
+
a contextual Table Design ribbon with editable names, 60 OOXML
|
|
553
|
+
Light/Medium/Dark styles, first/last-column emphasis and row/column stripes,
|
|
554
|
+
visible-range Canvas styling, sparse-safe Convert to Range, row/column
|
|
555
|
+
reconciliation, native XLSX table parts and supported filters, one-step Undo,
|
|
556
|
+
browser/Yjs record convergence, and fail-closed overlap, merge, AutoFilter,
|
|
557
|
+
protection, pivot, invalid, or over-100,000-cell targets, a WPS-style
|
|
558
|
+
Format Painter with
|
|
559
|
+
single-use and double-click locked
|
|
538
560
|
sessions, cross-sheet range-pattern tiling, Escape cancellation, and native
|
|
539
561
|
style-only writes, a Home and Font cell-border split control with side, all,
|
|
540
562
|
outside, inside, horizontal, vertical, clear, and diagonal targets, ten
|
|
@@ -723,6 +745,15 @@ Protection ranges, passwordless editable ranges, and conditional formatting
|
|
|
723
745
|
also remain compact and round-trip through native XLSX records without
|
|
724
746
|
allocating every covered cell.
|
|
725
747
|
|
|
748
|
+
Worksheet Tables/ListObjects live in `sheet.tables` as semantic records with
|
|
749
|
+
stable IDs, workbook-unique names, zero-based ranges, ordered columns, filters,
|
|
750
|
+
header/totals flags, and built-in style identity. XLSX import and export keep
|
|
751
|
+
native table parts and relationships. Table styling is resolved only for the
|
|
752
|
+
visible Canvas cells; converting a table to a range materializes the confirmed
|
|
753
|
+
appearance without densifying unrelated worksheet space. Structured-reference
|
|
754
|
+
calculation, calculated columns, complete totals authoring, slicers, and
|
|
755
|
+
external/query tables are not yet claimed.
|
|
756
|
+
|
|
726
757
|
Use `downloadArtifact` to start a browser download or
|
|
727
758
|
`createArtifactBlob` when your application owns upload and persistence.
|
|
728
759
|
Imported DOCX artifacts are source-backed: safe source-only OPC parts,
|
|
@@ -1484,6 +1515,8 @@ without hard-coded return URLs.
|
|
|
1484
1515
|
|
|
1485
1516
|
- [Live Playground](https://a3s-lab.github.io/Office/)
|
|
1486
1517
|
- [Documentation center](https://a3s-lab.github.io/Office/docs/)
|
|
1518
|
+
- [A3S Office 0.16.0 documentation](https://a3s-lab.github.io/Office/docs/0.16.0/)
|
|
1519
|
+
- [A3S Office 0.15.0 documentation](https://a3s-lab.github.io/Office/docs/0.15.0/)
|
|
1487
1520
|
- [A3S Office 0.14.0 documentation](https://a3s-lab.github.io/Office/docs/0.14.0/)
|
|
1488
1521
|
- [A3S Office 0.13.1 documentation](https://a3s-lab.github.io/Office/docs/0.13.1/)
|
|
1489
1522
|
- [A3S Office 0.13.0 documentation](https://a3s-lab.github.io/Office/docs/0.13.0/)
|
package/dist/0~6090.js
CHANGED
|
@@ -571,17 +571,16 @@ function Popover({ label, panelLabel, trigger, children, disabled = false, class
|
|
|
571
571
|
portal,
|
|
572
572
|
updateFloatingPosition
|
|
573
573
|
]);
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
});
|
|
574
|
+
const panelReadyForFocus = !portal || null !== floatingPosition;
|
|
575
|
+
useLayoutEffect(()=>{
|
|
576
|
+
if (!open || !focusFirstOnOpen || !panelReadyForFocus) return;
|
|
577
|
+
firstFocusableElement(panelElementRef.current)?.focus({
|
|
578
|
+
preventScroll: true
|
|
580
579
|
});
|
|
581
|
-
return ()=>cancelAnimationFrame(frame);
|
|
582
580
|
}, [
|
|
583
581
|
focusFirstOnOpen,
|
|
584
|
-
open
|
|
582
|
+
open,
|
|
583
|
+
panelReadyForFocus
|
|
585
584
|
]);
|
|
586
585
|
const triggerProps = {
|
|
587
586
|
ref: (element)=>{
|