@a3s-lab/office 0.35.0 → 0.37.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 +34 -10
- package/dist/0~7048.js +590 -3
- package/dist/0~spreadsheet-editor.js +515 -44
- package/dist/0~work-office-diagnostics.js +1 -1
- package/dist/3266.js +549 -10
- package/dist/4121.js +2202 -1942
- package/dist/8715.js +299 -299
- package/dist/core.js +41 -4
- package/dist/internal/features/work/editors/spreadsheet-calculation-model.d.ts +1 -1
- package/dist/internal/features/work/editors/spreadsheet-calculation-projection.d.ts +5 -2
- package/dist/internal/features/work/editors/spreadsheet-table-calculated-columns.d.ts +42 -0
- package/dist/internal/features/work/editors/spreadsheet-table-totals.d.ts +39 -0
- package/dist/internal/features/work/editors/spreadsheet-table.d.ts +11 -1
- package/dist/internal/features/work/work-types.d.ts +20 -1
- package/dist/internal/kernel/office-kernel-protocol.d.ts +1 -1
- package/dist/internal/kernel/office-kernel-spreadsheet-fallback-formula.d.ts +11 -0
- package/dist/internal/kernel/office-kernel-spreadsheet-protocol.d.ts +18 -0
- package/dist/internal/kernel/office-kernel-spreadsheet-structured-reference.d.ts +48 -0
- package/dist/office-kernel.wasm +0 -0
- package/dist/office-kernel.worker.js +598 -3
- package/dist/styles.css +120 -0
- package/docs/latest/en/browser-editor-architecture.md +27 -8
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -56,9 +56,8 @@ workflows, and a separate Rust automation plane.
|
|
|
56
56
|
|
|
57
57
|
## Latest on `main`
|
|
58
58
|
|
|
59
|
-
The `0.
|
|
60
|
-
|
|
61
|
-
detail in the documentation:
|
|
59
|
+
The `0.37.0` release exposes these capabilities as normal user-facing
|
|
60
|
+
Playground templates, with matching implementation detail in the documentation:
|
|
62
61
|
|
|
63
62
|
| Editor | Latest capability | Public entry |
|
|
64
63
|
| --- | --- | --- |
|
|
@@ -69,12 +68,13 @@ detail in the documentation:
|
|
|
69
68
|
| Writer | Native character shading with exact `w:shd` patterns, foreground/background color identity, explicit resets, authoring, and DOCX reopen | Playground **Latest capabilities → 字符底纹** · [Document reference](docs/latest/en/components/document.mdx#native-character-shading) |
|
|
70
69
|
| Writer | Independent Latin, East Asian, and bidi proofing languages plus explicit `w:noProof` inclusion/exclusion | Playground **Latest capabilities → 校对语言** · [Document reference](docs/latest/en/components/document.mdx#native-proofing-languages) |
|
|
71
70
|
| Spreadsheet | Complete common Data Validation input, blank/dropdown, and Stop/Warning/Information error settings with native XLSX round trips | Playground **Latest capabilities → 数据验证** · [Spreadsheet reference](docs/latest/en/components/spreadsheet.mdx#data-validation) |
|
|
71
|
+
| Spreadsheet | Native totals-row authoring with per-column aggregates, labels, custom formulas, filtered-row-aware `SUBTOTAL`, automatic calculated-column fill for newly inserted table body rows, and bounded structured-reference calculation across Rust/WASM and JavaScript fallback | Playground **Latest capabilities → 结构化引用** · [Totals-row reference](docs/latest/en/components/spreadsheet.mdx#native-totals-row-authoring) · [Structured-reference calculation](docs/latest/en/components/spreadsheet.mdx#structured-reference-calculation) |
|
|
72
72
|
| PDF | Insert, delete, rotate, reorder, extract, merge, and split pages through a dedicated Web Worker, with Blob-level Undo/Redo and independent binary reopen verification | Playground **Latest capabilities → 组织 PDF 页面** · [PDF reference](docs/latest/en/components/pdf.mdx#page-organization) |
|
|
73
73
|
|
|
74
|
-
All
|
|
74
|
+
All nine entries are reachable from the first Playground viewport. The
|
|
75
75
|
filterable capability gallery groups releases by editor, publishes the source
|
|
76
76
|
release on every card, and grows from one shared metadata list instead of a
|
|
77
|
-
fixed-width strip. The
|
|
77
|
+
fixed-width strip. The eight content templates also remain under **新建**;
|
|
78
78
|
**组织 PDF 页面** opens the normal PDF file workflow because page organization
|
|
79
79
|
must operate on host-provided source bytes.
|
|
80
80
|
|
|
@@ -151,8 +151,8 @@ baseline rather than one specific release.
|
|
|
151
151
|
| Cells, sheets, navigation, and history | **Supported** — multiple sheets, sparse editing, search, clipboard, four-direction fill, exact formula/value copy from above, and undo/redo | Mature grid workflows across desktop and web |
|
|
152
152
|
| Formatting and style rendering | **Partial** — native fonts, colors, borders, alignment, number formats, cell styles, all 17 native non-solid OOXML pattern fills, native linear/path XLSX gradients, and one Format Cells surface that authors none, solid, pattern, or gradient fills with exact geometry and 2–256 ordered stops; static date/time entry, contrast-safe font preview, native XLSX rich-text runs, selected-text font formatting, direct formula-bar/F2 insertion or deletion, and bounded authenticated formatted-HTML paste | Disjoint multi-edit rich-text authoring, broader themes, locale formats, and advanced style effects |
|
|
153
153
|
| Ribbon and shortcuts | **Partial** — common Office-style Home/Data/View commands, grid-scoped shortcuts, and focused Font-dialog aliases | Larger command catalog and platform-specific accelerators |
|
|
154
|
-
| Formulas and recalculation | **Partial** — dependency-aware calculation and
|
|
155
|
-
| Tables, pivots, charts, and rules | **Partial** — native tables, pivots, charts, conditional formatting, and common validation rules with complete input/error-setting authoring |
|
|
154
|
+
| Formulas and recalculation | **Partial** — dependency-aware calculation plus bounded structured references (`Table[Column]`, contiguous ranges, `#All`/`#Headers`/`#Data`/`#Totals`/`#This Row`, and `[@Column]`) in the shared Rust/WASM and JavaScript paths | Wider functions, arrays, volatile semantics, and calculation parity |
|
|
155
|
+
| Tables, pivots, charts, and rules | **Partial** — native tables, bounded structured-reference formulas, calculated-column formulas with automatic fill for newly inserted body rows, complete common totals-row authoring, pivots, charts, conditional formatting, and common validation rules with complete input/error-setting authoring | Slicers, pivot charts, custom/dependent validation rules, advanced analysis, and broader browser alert flows |
|
|
156
156
|
| Large worksheets | **Supported with boundaries** — maximum-dimension sparse import/editing and viewport-bounded Canvas painting | Highly optimized native grid with hardware-dependent limits |
|
|
157
157
|
| Files and printing | **Partial** — XLS/XLSX/ODS/CSV import, XLSX export, and PDF output | Broader round trips, external data, print fidelity, and legacy conversion |
|
|
158
158
|
| External data, macros, and specialist analysis | **Gap** — active macros are never executed; bounded models are still needed for data connections and solver-like tools | Established data, macro/add-in, scenario, and optimization ecosystems |
|
|
@@ -740,9 +740,31 @@ stable IDs, workbook-unique names, zero-based ranges, ordered columns, filters,
|
|
|
740
740
|
header/totals flags, and built-in style identity. XLSX import and export keep
|
|
741
741
|
native table parts and relationships. Table styling is resolved only for the
|
|
742
742
|
visible Canvas cells; converting a table to a range materializes the confirmed
|
|
743
|
-
appearance without densifying unrelated worksheet space.
|
|
744
|
-
|
|
745
|
-
|
|
743
|
+
appearance without densifying unrelated worksheet space.
|
|
744
|
+
|
|
745
|
+
The calculation kernel resolves a bounded common structured-reference subset:
|
|
746
|
+
table names or `displayName`, worksheet-qualified tables, contiguous column
|
|
747
|
+
ranges, `#All`, `#Headers`, `#Data`, `#Totals`, `#This Row`, and table-local
|
|
748
|
+
`[@Column]` formulas. Rust/WASM and JavaScript fallback share the parser,
|
|
749
|
+
catalog, dependency graph, and no-history projection path. Requests accept at
|
|
750
|
+
most 1,024 tables and materialize at most 100,000 cells per structured range;
|
|
751
|
+
whole-row/column, three-dimensional, external, disjoint, missing, or
|
|
752
|
+
over-budget references fail closed. A validated calculated-column rule is
|
|
753
|
+
inferred from matching current-row formulas and fills only newly inserted table
|
|
754
|
+
body rows. Existing values, formulas, and manual exceptions always win; a
|
|
755
|
+
conflicting column fails closed and drops its automatic rule. XLSX
|
|
756
|
+
`<calculatedColumnFormula>` metadata round-trips with the leading `=` restored
|
|
757
|
+
in the controlled model, while unsafe or external formulas are omitted.
|
|
758
|
+
The Playground's **结构化引用** template shows a calculated `Revenue` column,
|
|
759
|
+
an insertion hint, an editable totals row, and a worksheet-qualified summary.
|
|
760
|
+
The Table Design totals menu enables or disables the row and assigns each
|
|
761
|
+
column a label, one of ten native aggregate functions, or a bounded custom
|
|
762
|
+
formula. Native aggregates emit filtered-row-aware `SUBTOTAL` formulas; direct
|
|
763
|
+
cell edits reconcile back into table metadata, table structure changes move
|
|
764
|
+
the row without overwriting manual cells, and table renames rewrite only
|
|
765
|
+
generated formulas. Dense and sparse worksheets, Yjs collaboration, and XLSX
|
|
766
|
+
`totalsRowFunction`, `totalsRowLabel`, and `totalsRowFormula` round trips share
|
|
767
|
+
the same model. Slicers and external/query tables remain explicit boundaries.
|
|
746
768
|
|
|
747
769
|
Use `downloadArtifact` to start a browser download or
|
|
748
770
|
`createArtifactBlob` when your application owns upload and persistence.
|
|
@@ -1625,6 +1647,8 @@ keep working without hard-coded return URLs.
|
|
|
1625
1647
|
|
|
1626
1648
|
- [Live Playground](https://a3s-lab.github.io/Office/playground/)
|
|
1627
1649
|
- [Documentation center](https://a3s-lab.github.io/Office/docs/)
|
|
1650
|
+
- [A3S Office 0.37.0 documentation](https://a3s-lab.github.io/Office/docs/0.37.0/)
|
|
1651
|
+
- [A3S Office 0.36.0 documentation](https://a3s-lab.github.io/Office/docs/0.36.0/)
|
|
1628
1652
|
- [A3S Office 0.34.0 documentation](https://a3s-lab.github.io/Office/docs/0.34.0/)
|
|
1629
1653
|
- [A3S Office 0.33.0 documentation](https://a3s-lab.github.io/Office/docs/0.33.0/)
|
|
1630
1654
|
- [A3S Office 0.32.0 documentation](https://a3s-lab.github.io/Office/docs/0.32.0/)
|