@a3s-lab/office 0.10.0 → 0.11.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 +22 -12
- package/README.md +17 -14
- package/dist/{0~4705.js → 0~5093.js} +959 -10
- package/dist/0~document-editor.js +1 -0
- package/dist/0~work-docx-export.js +225 -6
- package/dist/0~work-docx-import.js +24 -753
- package/dist/0~work-office-diagnostics.js +6 -4
- package/dist/4104.js +1 -1
- package/dist/8928.js +448 -137
- package/dist/internal/features/work/work-document-format-change-tracking.d.ts +1 -1
- package/dist/internal/features/work/work-document-paragraph-format-change-tracking.d.ts +7 -0
- package/dist/internal/features/work/work-document-paragraph-format-changes.d.ts +8 -0
- package/dist/internal/features/work/work-docx-import.d.ts +3 -1
- package/dist/internal/features/work/work-docx-paragraph-alignment-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-borders-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-direction-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-format-change-export.d.ts +13 -0
- package/dist/internal/features/work/work-docx-paragraph-format-change-import.d.ts +17 -0
- package/dist/internal/features/work/work-docx-paragraph-indent-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-pagination-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-shading-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-paragraph-spacing-import.d.ts +1 -0
- package/dist/internal/features/work/work-docx-tab-stop-import.d.ts +1 -0
- package/dist/internal/features/work/work-types.d.ts +1 -1
- package/dist/office-kernel.wasm +0 -0
- package/dist/styles.css +8 -0
- package/docs/latest/en/browser-editor-architecture.md +18 -0
- package/package.json +5 -3
package/COLLABORATION_ROADMAP.md
CHANGED
|
@@ -110,17 +110,17 @@ Redis/NATS fan-out plus a distributed writer/lock policy.
|
|
|
110
110
|
|
|
111
111
|
Status: browser collaboration foundation, participant roster, remote
|
|
112
112
|
selection/caret projection, participant navigation, durable review-only
|
|
113
|
-
comment and suggestion modes, character-formatting revisions,
|
|
114
|
-
decision audit, and native text/options/bounded structural
|
|
113
|
+
comment and suggestion modes, character- and paragraph-formatting revisions,
|
|
114
|
+
immutable decision audit, and native text/options/bounded structural
|
|
115
115
|
paragraph/comment/suggestion mutations implemented; rich native mutation
|
|
116
116
|
parity remains pending.
|
|
117
117
|
|
|
118
118
|
- TipTap is bound to `document.content` through
|
|
119
119
|
`@tiptap/extension-collaboration`; StarterKit undo/redo is disabled and the
|
|
120
120
|
collaboration binding owns local history.
|
|
121
|
-
- Section/page OOXML state, comment anchors,
|
|
122
|
-
|
|
123
|
-
page color, tracking mode,
|
|
121
|
+
- Section/page OOXML state, comment anchors, text tracked-change marks, and
|
|
122
|
+
character-formatting marks or paragraph-formatting node revisions converge
|
|
123
|
+
in the ProseMirror fragment. Document-level page color, tracking mode,
|
|
124
124
|
comment threads/replies, and bibliography sources use conflict-local typed
|
|
125
125
|
roots instead of a serialized document blob.
|
|
126
126
|
- React, Vue, and Web Component adapters accept the same initialized session.
|
|
@@ -174,6 +174,14 @@ parity remains pending.
|
|
|
174
174
|
bold, italic, underline, strike, sub/superscript, font, size, color,
|
|
175
175
|
highlight, and grid marks without changing text. Supported DOCX
|
|
176
176
|
`w:rPrChange` records import into the same model and export natively.
|
|
177
|
+
- Paragraph-formatting commands create one shared `paragraph-formatting`
|
|
178
|
+
identity across every affected paragraph or heading and retain the complete
|
|
179
|
+
canonical old-property snapshot on each node. Accept keeps current paragraph
|
|
180
|
+
properties; reject atomically restores alignment, direction, indentation,
|
|
181
|
+
spacing and line rules, pagination controls, contextual spacing, outline
|
|
182
|
+
level, tab stops, borders, shading, and collapsed state without changing
|
|
183
|
+
text. Supported strict or transitional DOCX `w:pPrChange` records use the
|
|
184
|
+
same model and export natively.
|
|
177
185
|
- Rust, CLI, MCP, and A3S Code expose `document-comment-create`,
|
|
178
186
|
`document-comment-reply`, `document-comment-set-resolved`,
|
|
179
187
|
`document-comment-delete`, `document-suggestion-create`, and
|
|
@@ -191,19 +199,21 @@ parity remains pending.
|
|
|
191
199
|
content, structure, options, non-suggestion formatting, authorship, order,
|
|
192
200
|
claims, anchors, foreign deletion, or foreign suggestion changes fail before
|
|
193
201
|
the durable store changes.
|
|
194
|
-
- Native Yrs validation admits only the bounded
|
|
195
|
-
preserves
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
202
|
+
- Native Yrs validation admits only the bounded character- and
|
|
203
|
+
paragraph-formatting schemas, preserves them across restart and
|
|
204
|
+
duplicate/reordered delivery, exposes `formatting` and
|
|
205
|
+
`paragraph-formatting` in immutable decision projections, and makes
|
|
206
|
+
`suggest` updates retain existing formatting revisions byte-semantically.
|
|
207
|
+
Formatting revisions are Document change kinds, not native
|
|
208
|
+
insertion/deletion suggestion kinds; the current closed
|
|
209
|
+
`document-suggestion-*` mutations remain text-only.
|
|
200
210
|
|
|
201
211
|
Remaining:
|
|
202
212
|
|
|
203
213
|
- Prove concurrent full-table, list-restructure, section, comment, and revision
|
|
204
214
|
workflows, plus DOCX import/export after merged edits.
|
|
205
215
|
- Expand native convergence from bounded paragraph edits to complete table,
|
|
206
|
-
list, and section operations, comments, and tracked revisions.
|
|
216
|
+
list, and section operations, comments, and the remaining tracked revisions.
|
|
207
217
|
|
|
208
218
|
Exit criterion: two browsers and one native client converge on document
|
|
209
219
|
content and review state; local undo never removes a remote change; a DOCX
|
package/README.md
CHANGED
|
@@ -48,9 +48,9 @@ workflows, and a separate Rust automation plane.
|
|
|
48
48
|
participants and remote locations, plus browser, CLI, MCP, and A3S Code peers.
|
|
49
49
|
Document reviewers can submit attributed insertions, deletions, and
|
|
50
50
|
replacements without directly changing canonical text. Editors can also
|
|
51
|
-
track character-formatting revisions, accept the new
|
|
52
|
-
the exact prior marks, and retain either
|
|
53
|
-
decision audit.
|
|
51
|
+
track character- and paragraph-formatting revisions, accept the new
|
|
52
|
+
formatting or restore the exact prior marks/properties, and retain either
|
|
53
|
+
result in the immutable shared decision audit.
|
|
54
54
|
- **Automate deterministically** through the native CLI, standard MCP server,
|
|
55
55
|
or packaged Office Skill.
|
|
56
56
|
|
|
@@ -150,8 +150,9 @@ The images below are committed visual-regression baselines from the real
|
|
|
150
150
|
Presentation scene-element and z-order, and PDF annotation, form-value, and
|
|
151
151
|
review changes, including attributable Document selection comments, replies,
|
|
152
152
|
text suggestions, and atomic final decisions, retain browser/native actor
|
|
153
|
-
attribution, validate browser-created
|
|
154
|
-
records, and checkpoint without replacing a whole
|
|
153
|
+
attribution, validate browser-created character- and paragraph-formatting
|
|
154
|
+
revisions and their audit records, and checkpoint without replacing a whole
|
|
155
|
+
Office file.
|
|
155
156
|
|
|
156
157
|
## Real-time collaboration
|
|
157
158
|
|
|
@@ -174,13 +175,13 @@ deletions, and replacements while canonical text, structure, formatting,
|
|
|
174
175
|
options, comments, and other actors' suggestions remain protected. An `edit`
|
|
175
176
|
participant accepts or rejects a proposal and appends the final actor-attributed
|
|
176
177
|
decision to the immutable `document.change-decisions` audit trail. The A3S Boot
|
|
177
|
-
service also persists `edit`-mode character-formatting revisions
|
|
178
|
-
their bounded prior-format
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
remains receive-only.
|
|
178
|
+
service also persists `edit`-mode character- and paragraph-formatting revisions
|
|
179
|
+
and validates their bounded prior-format snapshots before broadcast. Character
|
|
180
|
+
decisions keep or restore direct marks. Paragraph decisions keep or restore
|
|
181
|
+
alignment, direction, indentation, spacing, pagination, outline, tab stops,
|
|
182
|
+
borders, shading, and collapsed state without deleting text. Authenticated
|
|
183
|
+
`suggest` updates must preserve both revision kinds and cannot rewrite their
|
|
184
|
+
identity or snapshot. `suggest` on non-Document formats remains receive-only.
|
|
184
185
|
See the bilingual [real-time collaboration guide](https://a3s-lab.github.io/Office/docs/components/collaboration.html)
|
|
185
186
|
for React, Vue, Web Component, reconnect, security, and native-agent setup.
|
|
186
187
|
The repository also ships a runnable
|
|
@@ -203,8 +204,9 @@ bun run playground
|
|
|
203
204
|
|
|
204
205
|
Then open the local URL printed by the development server. For a zero-install
|
|
205
206
|
tour, use the [live Playground](https://a3s-lab.github.io/Office/).
|
|
206
|
-
Choose **体验格式修订**, open **审阅**, then **查看修订(
|
|
207
|
-
Formatting
|
|
207
|
+
Choose **体验格式修订**, open **审阅**, then **查看修订(2)** to inspect the
|
|
208
|
+
independent Formatting and Paragraph Formatting cards and exercise accept or
|
|
209
|
+
reject semantics.
|
|
208
210
|
|
|
209
211
|
### Embed a controlled React editor
|
|
210
212
|
|
|
@@ -1336,6 +1338,7 @@ without hard-coded return URLs.
|
|
|
1336
1338
|
|
|
1337
1339
|
- [Live Playground](https://a3s-lab.github.io/Office/)
|
|
1338
1340
|
- [Documentation center](https://a3s-lab.github.io/Office/docs/)
|
|
1341
|
+
- [A3S Office 0.11.0 documentation](https://a3s-lab.github.io/Office/docs/0.11.0/)
|
|
1339
1342
|
- [A3S Office 0.10.0 documentation](https://a3s-lab.github.io/Office/docs/0.10.0/)
|
|
1340
1343
|
- [A3S Office 0.9.2 documentation](https://a3s-lab.github.io/Office/docs/0.9.2/)
|
|
1341
1344
|
- [A3S Office 0.9.1 documentation](https://a3s-lab.github.io/Office/docs/0.9.1/)
|