superdoc 2.4.0-next.27 → 2.4.0-next.29
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 +15 -18
- package/dist/chunks/{eventemitter3-DEIiXiH2.es.js → eventemitter3-CMOjDs74.es.js} +1 -1
- package/dist/chunks/{eventemitter3-C_TAnXOl.cjs → eventemitter3-D38u8ta_.cjs} +1 -1
- package/dist/chunks/{jszip-D8mAFF-r.cjs → jszip-RC64TPzL.cjs} +1 -1
- package/dist/chunks/{jszip-BzJ3CyxR.es.js → jszip-VxCFV9YS.es.js} +1 -1
- package/dist/chunks/{rolldown-runtime-0pSA04fp.es.js → rolldown-runtime-B5TtN50X.es.js} +1 -1
- package/dist/chunks/{rolldown-runtime-74VwNCz7.cjs → rolldown-runtime-DtsSbkrh.cjs} +1 -1
- package/dist/collaboration-upgrade-engine.cjs +1 -1
- package/dist/collaboration-upgrade-engine.es.js +1 -1
- package/dist/style.css +23 -23
- package/dist/style.layered.css +23 -23
- package/dist/superdoc/src/core/types/index.d.ts +11 -0
- package/dist/superdoc.cjs +38 -71
- package/dist/superdoc.es.js +38 -71
- package/dist-cdn/style.layered.css +1 -1
- package/dist-cdn/superdoc.min.css +1 -1
- package/dist-cdn/superdoc.min.js +36 -36
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -5,15 +5,14 @@
|
|
|
5
5
|
[](https://docs.superdoc.dev/)
|
|
6
6
|
[](https://www.gnu.org/licenses/agpl-3.0)
|
|
7
7
|
[](https://www.npmjs.com/package/superdoc)
|
|
8
|
-
[](https://codecov.io/gh/superdoc/docx-editor)
|
|
9
8
|
[](https://discord.com/invite/b9UuaZRyaB)
|
|
10
9
|
|
|
11
|
-
SuperDoc renders and edits DOCX files in the browser. Built on OOXML
|
|
10
|
+
SuperDoc renders and edits DOCX files in the browser. Built on OOXML, not bolted onto HTML. As you type, you write directly to the XML, so edits do not pass through an HTML conversion step.
|
|
12
11
|
|
|
13
12
|
## Features
|
|
14
13
|
|
|
15
|
-
- **Real DOCX, not rich text** — Built on OOXML.
|
|
16
|
-
- **Self-hosted** —
|
|
14
|
+
- **Real DOCX, not rich text** — Built on OOXML. Pagination, section breaks, headers/footers, and complex tables are modeled as themselves, not flattened into HTML. Not a contenteditable wrapper with export bolted on.
|
|
15
|
+
- **Self-hosted** — The editor needs no server of its own. Documents go where your application sends them, and nowhere else by default.
|
|
17
16
|
- **Any framework** — React, Vue, Angular, Svelte, vanilla JS. One component, zero lock-in.
|
|
18
17
|
- **Real-time collaboration** — Yjs-based CRDT. Multiplayer editing with comments, tracked changes, and automatic conflict resolution.
|
|
19
18
|
- **Built for agents** — [SDK](https://www.npmjs.com/package/@superdoc/sdk), [CLI](https://www.npmjs.com/package/@superdoc/cli), and [MCP server](https://www.npmjs.com/package/@superdoc/mcp) let LLMs read, edit, and save .docx files programmatically.
|
|
@@ -25,6 +24,13 @@ SuperDoc renders and edits DOCX files in the browser. Built on OOXML — not bol
|
|
|
25
24
|
npm install superdoc
|
|
26
25
|
```
|
|
27
26
|
|
|
27
|
+
SuperDoc mounts into an element you provide, so the page needs it before this
|
|
28
|
+
runs:
|
|
29
|
+
|
|
30
|
+
```html
|
|
31
|
+
<div id="superdoc"></div>
|
|
32
|
+
```
|
|
33
|
+
|
|
28
34
|
```javascript
|
|
29
35
|
import 'superdoc/style.css';
|
|
30
36
|
import { SuperDoc } from 'superdoc';
|
|
@@ -32,16 +38,13 @@ import { SuperDoc } from 'superdoc';
|
|
|
32
38
|
const superdoc = new SuperDoc({
|
|
33
39
|
selector: '#superdoc',
|
|
34
40
|
documentMode: 'editing',
|
|
35
|
-
|
|
36
|
-
{
|
|
37
|
-
id: 'my-doc-id',
|
|
38
|
-
type: 'docx',
|
|
39
|
-
data: fileObject,
|
|
40
|
-
},
|
|
41
|
-
],
|
|
41
|
+
document: fileObject,
|
|
42
42
|
});
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
+
`document` accepts a URL, a `File`, or a `Blob`. Omit it to start from a blank
|
|
46
|
+
DOCX. The constructor throws if `selector` matches no element.
|
|
47
|
+
|
|
45
48
|
Supported document modes are `editing`, `viewing`, and `suggesting`. Do not use `edit`, `view`, or `suggest`.
|
|
46
49
|
|
|
47
50
|
### Browser Document API contract
|
|
@@ -64,13 +67,7 @@ export function embedSuperDoc({ file }) {
|
|
|
64
67
|
return new SuperDoc({
|
|
65
68
|
selector: '#editor',
|
|
66
69
|
documentMode: 'editing',
|
|
67
|
-
|
|
68
|
-
{
|
|
69
|
-
id: 'contract',
|
|
70
|
-
type: 'docx',
|
|
71
|
-
data: file,
|
|
72
|
-
},
|
|
73
|
-
],
|
|
70
|
+
document: file,
|
|
74
71
|
});
|
|
75
72
|
}
|
|
76
73
|
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as __toESM, t as __commonJSMin } from "./rolldown-runtime-
|
|
1
|
+
import { i as __toESM, t as __commonJSMin } from "./rolldown-runtime-B5TtN50X.es.js";
|
|
2
2
|
//#endregion
|
|
3
3
|
//#region ../../node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.mjs
|
|
4
4
|
var import_eventemitter3 = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_rolldown_runtime = require("./rolldown-runtime-
|
|
1
|
+
const require_rolldown_runtime = require("./rolldown-runtime-DtsSbkrh.cjs");
|
|
2
2
|
//#region ../../node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.js
|
|
3
3
|
var require_eventemitter3 = /* @__PURE__ */ require_rolldown_runtime.__commonJSMin(((exports, module) => {
|
|
4
4
|
var has = Object.prototype.hasOwnProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_rolldown_runtime = require("./rolldown-runtime-
|
|
1
|
+
const require_rolldown_runtime = require("./rolldown-runtime-DtsSbkrh.cjs");
|
|
2
2
|
//#region ../../node_modules/.pnpm/vite-plugin-node-polyfills@0.28.0_rollup@4.60.2_vite@7.3.1_@types+node@25.6.0_jiti@2.7._79de22fafa9a94a397e22a8c8322f563/node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js
|
|
3
3
|
function getLens(b64) {
|
|
4
4
|
var len = b64.length;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as __esmMin, r as __require, t as __commonJSMin } from "./rolldown-runtime-
|
|
1
|
+
import { n as __esmMin, r as __require, t as __commonJSMin } from "./rolldown-runtime-B5TtN50X.es.js";
|
|
2
2
|
//#region ../../node_modules/.pnpm/vite-plugin-node-polyfills@0.28.0_rollup@4.60.2_vite@7.3.1_@types+node@25.6.0_jiti@2.7._79de22fafa9a94a397e22a8c8322f563/node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js
|
|
3
3
|
function getLens(b64) {
|
|
4
4
|
var len = b64.length;
|
|
@@ -24,7 +24,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
}
|
|
25
25
|
return to;
|
|
26
26
|
};
|
|
27
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
27
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
28
28
|
value: mod,
|
|
29
29
|
enumerable: true
|
|
30
30
|
}) : target, mod));
|
|
@@ -24,7 +24,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
}
|
|
25
25
|
return to;
|
|
26
26
|
};
|
|
27
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
27
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
28
28
|
value: mod,
|
|
29
29
|
enumerable: true
|
|
30
30
|
}) : target, mod));
|
|
@@ -19,7 +19,7 @@ var COLLABORATION_UPGRADE_ENGINE_MINIMUM_NODE_MAJOR = 20;
|
|
|
19
19
|
var PRIVATE_ENGINE_INFO = (0, _superdoc_docx_engine_collaboration_upgrade_engine.getCollaborationUpgradeEngineInfo)();
|
|
20
20
|
var ENGINE_INFO = Object.freeze({
|
|
21
21
|
...PRIVATE_ENGINE_INFO,
|
|
22
|
-
superdocVersion: "2.4.0-next.
|
|
22
|
+
superdocVersion: "2.4.0-next.29",
|
|
23
23
|
roomSchemaVersion: Object.freeze({ ...PRIVATE_ENGINE_INFO.roomSchemaVersion }),
|
|
24
24
|
supportedBundleVersions: SUPPORTED_COLLABORATION_UPGRADE_BUNDLE_VERSIONS,
|
|
25
25
|
supportedV1ReaderContractVersions: SUPPORTED_V1_READER_CONTRACT_VERSIONS
|
|
@@ -18,7 +18,7 @@ var COLLABORATION_UPGRADE_ENGINE_MINIMUM_NODE_MAJOR = 20;
|
|
|
18
18
|
var PRIVATE_ENGINE_INFO = getCollaborationUpgradeEngineInfo$1();
|
|
19
19
|
var ENGINE_INFO = Object.freeze({
|
|
20
20
|
...PRIVATE_ENGINE_INFO,
|
|
21
|
-
superdocVersion: "2.4.0-next.
|
|
21
|
+
superdocVersion: "2.4.0-next.29",
|
|
22
22
|
roomSchemaVersion: Object.freeze({ ...PRIVATE_ENGINE_INFO.roomSchemaVersion }),
|
|
23
23
|
supportedBundleVersions: SUPPORTED_COLLABORATION_UPGRADE_BUNDLE_VERSIONS,
|
|
24
24
|
supportedV1ReaderContractVersions: SUPPORTED_V1_READER_CONTRACT_VERSIONS
|
package/dist/style.css
CHANGED
|
@@ -1770,11 +1770,11 @@ img[data-v-c95b2073] {
|
|
|
1770
1770
|
pointer-events: auto;
|
|
1771
1771
|
}
|
|
1772
1772
|
|
|
1773
|
-
.superdoc[data-v-
|
|
1773
|
+
.superdoc[data-v-d39f5239] {
|
|
1774
1774
|
display: flex;
|
|
1775
1775
|
position: relative;
|
|
1776
1776
|
}
|
|
1777
|
-
.sd-visually-hidden[data-v-
|
|
1777
|
+
.sd-visually-hidden[data-v-d39f5239] {
|
|
1778
1778
|
position: absolute;
|
|
1779
1779
|
width: 1px;
|
|
1780
1780
|
height: 1px;
|
|
@@ -1785,30 +1785,30 @@ img[data-v-c95b2073] {
|
|
|
1785
1785
|
white-space: nowrap;
|
|
1786
1786
|
border: 0;
|
|
1787
1787
|
}
|
|
1788
|
-
.right-sidebar[data-v-
|
|
1788
|
+
.right-sidebar[data-v-d39f5239] {
|
|
1789
1789
|
min-width: 320px;
|
|
1790
1790
|
height: 100%;
|
|
1791
1791
|
}
|
|
1792
|
-
.floating-comments[data-v-
|
|
1792
|
+
.floating-comments[data-v-d39f5239] {
|
|
1793
1793
|
min-width: 300px;
|
|
1794
1794
|
width: 300px;
|
|
1795
1795
|
height: 100%;
|
|
1796
1796
|
overflow: visible;
|
|
1797
1797
|
}
|
|
1798
|
-
.superdoc__layers[data-v-
|
|
1798
|
+
.superdoc__layers[data-v-d39f5239] {
|
|
1799
1799
|
height: 100%;
|
|
1800
1800
|
position: relative;
|
|
1801
1801
|
box-sizing: border-box;
|
|
1802
1802
|
}
|
|
1803
|
-
.superdoc__document[data-v-
|
|
1803
|
+
.superdoc__document[data-v-d39f5239] {
|
|
1804
1804
|
width: 100%;
|
|
1805
1805
|
position: relative;
|
|
1806
1806
|
}
|
|
1807
|
-
.superdoc__sub-document[data-v-
|
|
1807
|
+
.superdoc__sub-document[data-v-d39f5239] {
|
|
1808
1808
|
width: 100%;
|
|
1809
1809
|
position: relative;
|
|
1810
1810
|
}
|
|
1811
|
-
.superdoc__selection-layer[data-v-
|
|
1811
|
+
.superdoc__selection-layer[data-v-d39f5239] {
|
|
1812
1812
|
position: absolute;
|
|
1813
1813
|
min-width: 100%;
|
|
1814
1814
|
min-height: 100%;
|
|
@@ -1819,13 +1819,13 @@ img[data-v-c95b2073] {
|
|
|
1819
1819
|
/* SD-3497: PDF whiteboard overlay sits above the rendered PDF canvas but below
|
|
1820
1820
|
the PDF comment anchors (z-index 6 in PdfCommentsLayer) so anchors stay
|
|
1821
1821
|
clickable, and below the selection layer (z-index 10). */
|
|
1822
|
-
.superdoc__whiteboard-layer[data-v-
|
|
1822
|
+
.superdoc__whiteboard-layer[data-v-d39f5239] {
|
|
1823
1823
|
z-index: 4;
|
|
1824
1824
|
}
|
|
1825
|
-
.superdoc__temp-selection[data-v-
|
|
1825
|
+
.superdoc__temp-selection[data-v-d39f5239] {
|
|
1826
1826
|
position: absolute;
|
|
1827
1827
|
}
|
|
1828
|
-
.superdoc__right-sidebar[data-v-
|
|
1828
|
+
.superdoc__right-sidebar[data-v-d39f5239] {
|
|
1829
1829
|
width: 320px;
|
|
1830
1830
|
min-width: 320px;
|
|
1831
1831
|
padding: 0 10px;
|
|
@@ -1833,7 +1833,7 @@ img[data-v-c95b2073] {
|
|
|
1833
1833
|
position: relative;
|
|
1834
1834
|
z-index: 2;
|
|
1835
1835
|
}
|
|
1836
|
-
.superdoc__compact-comment-popover[data-v-
|
|
1836
|
+
.superdoc__compact-comment-popover[data-v-d39f5239] {
|
|
1837
1837
|
position: absolute;
|
|
1838
1838
|
top: 12px;
|
|
1839
1839
|
right: 12px;
|
|
@@ -1842,14 +1842,14 @@ img[data-v-c95b2073] {
|
|
|
1842
1842
|
}
|
|
1843
1843
|
|
|
1844
1844
|
/* Tools styles */
|
|
1845
|
-
.tools[data-v-
|
|
1845
|
+
.tools[data-v-d39f5239] {
|
|
1846
1846
|
position: absolute;
|
|
1847
1847
|
z-index: 3;
|
|
1848
1848
|
display: flex;
|
|
1849
1849
|
flex-direction: column;
|
|
1850
1850
|
gap: var(--sd-ui-tools-gap, 6px);
|
|
1851
1851
|
}
|
|
1852
|
-
.tools-item[data-v-
|
|
1852
|
+
.tools-item[data-v-d39f5239] {
|
|
1853
1853
|
display: flex;
|
|
1854
1854
|
align-items: center;
|
|
1855
1855
|
justify-content: center;
|
|
@@ -1860,10 +1860,10 @@ img[data-v-c95b2073] {
|
|
|
1860
1860
|
cursor: pointer;
|
|
1861
1861
|
position: relative;
|
|
1862
1862
|
}
|
|
1863
|
-
.tools-item i[data-v-
|
|
1863
|
+
.tools-item i[data-v-d39f5239] {
|
|
1864
1864
|
cursor: pointer;
|
|
1865
1865
|
}
|
|
1866
|
-
.superdoc__tools-icon[data-v-
|
|
1866
|
+
.superdoc__tools-icon[data-v-d39f5239] {
|
|
1867
1867
|
width: var(--sd-ui-tools-icon-size, 20px);
|
|
1868
1868
|
height: var(--sd-ui-tools-icon-size, 20px);
|
|
1869
1869
|
flex-shrink: 0;
|
|
@@ -1878,22 +1878,22 @@ img[data-v-c95b2073] {
|
|
|
1878
1878
|
|
|
1879
1879
|
/* 834px is iPad screen size in portrait orientation */
|
|
1880
1880
|
@media (max-width: 834px) {
|
|
1881
|
-
.superdoc .superdoc__layers[data-v-
|
|
1881
|
+
.superdoc .superdoc__layers[data-v-d39f5239] {
|
|
1882
1882
|
margin: 0;
|
|
1883
1883
|
border: 0 !important;
|
|
1884
1884
|
box-shadow: none;
|
|
1885
1885
|
}
|
|
1886
|
-
.superdoc__sub-document[data-v-
|
|
1886
|
+
.superdoc__sub-document[data-v-d39f5239] {
|
|
1887
1887
|
max-width: 100%;
|
|
1888
1888
|
}
|
|
1889
|
-
.superdoc__right-sidebar[data-v-
|
|
1889
|
+
.superdoc__right-sidebar[data-v-d39f5239] {
|
|
1890
1890
|
padding: 10px;
|
|
1891
1891
|
position: relative;
|
|
1892
1892
|
}
|
|
1893
1893
|
}
|
|
1894
1894
|
|
|
1895
1895
|
/* AI Writer styles */
|
|
1896
|
-
.ai-writer-container[data-v-
|
|
1896
|
+
.ai-writer-container[data-v-d39f5239] {
|
|
1897
1897
|
position: fixed;
|
|
1898
1898
|
z-index: 1000;
|
|
1899
1899
|
background: white;
|
|
@@ -1909,10 +1909,10 @@ img[data-v-c95b2073] {
|
|
|
1909
1909
|
transform: translateY(-50%);
|
|
1910
1910
|
z-index: 50;
|
|
1911
1911
|
} */
|
|
1912
|
-
.ai-tool > svg[data-v-
|
|
1912
|
+
.ai-tool > svg[data-v-d39f5239] {
|
|
1913
1913
|
fill: transparent;
|
|
1914
1914
|
}
|
|
1915
|
-
.ai-tool[data-v-
|
|
1915
|
+
.ai-tool[data-v-d39f5239]::before {
|
|
1916
1916
|
content: '';
|
|
1917
1917
|
position: absolute;
|
|
1918
1918
|
width: 20px;
|
|
@@ -1933,7 +1933,7 @@ img[data-v-c95b2073] {
|
|
|
1933
1933
|
filter: brightness(1.2);
|
|
1934
1934
|
transition: filter 0.2s ease;
|
|
1935
1935
|
}
|
|
1936
|
-
.ai-tool[data-v-
|
|
1936
|
+
.ai-tool[data-v-d39f5239]:hover::before {
|
|
1937
1937
|
filter: brightness(1.3);
|
|
1938
1938
|
}
|
|
1939
1939
|
|
package/dist/style.layered.css
CHANGED
|
@@ -1770,11 +1770,11 @@ img[data-v-c95b2073] {
|
|
|
1770
1770
|
pointer-events: auto;
|
|
1771
1771
|
}
|
|
1772
1772
|
|
|
1773
|
-
.superdoc[data-v-
|
|
1773
|
+
.superdoc[data-v-d39f5239] {
|
|
1774
1774
|
display: flex;
|
|
1775
1775
|
position: relative;
|
|
1776
1776
|
}
|
|
1777
|
-
.sd-visually-hidden[data-v-
|
|
1777
|
+
.sd-visually-hidden[data-v-d39f5239] {
|
|
1778
1778
|
position: absolute;
|
|
1779
1779
|
width: 1px;
|
|
1780
1780
|
height: 1px;
|
|
@@ -1785,30 +1785,30 @@ img[data-v-c95b2073] {
|
|
|
1785
1785
|
white-space: nowrap;
|
|
1786
1786
|
border: 0;
|
|
1787
1787
|
}
|
|
1788
|
-
.right-sidebar[data-v-
|
|
1788
|
+
.right-sidebar[data-v-d39f5239] {
|
|
1789
1789
|
min-width: 320px;
|
|
1790
1790
|
height: 100%;
|
|
1791
1791
|
}
|
|
1792
|
-
.floating-comments[data-v-
|
|
1792
|
+
.floating-comments[data-v-d39f5239] {
|
|
1793
1793
|
min-width: 300px;
|
|
1794
1794
|
width: 300px;
|
|
1795
1795
|
height: 100%;
|
|
1796
1796
|
overflow: visible;
|
|
1797
1797
|
}
|
|
1798
|
-
.superdoc__layers[data-v-
|
|
1798
|
+
.superdoc__layers[data-v-d39f5239] {
|
|
1799
1799
|
height: 100%;
|
|
1800
1800
|
position: relative;
|
|
1801
1801
|
box-sizing: border-box;
|
|
1802
1802
|
}
|
|
1803
|
-
.superdoc__document[data-v-
|
|
1803
|
+
.superdoc__document[data-v-d39f5239] {
|
|
1804
1804
|
width: 100%;
|
|
1805
1805
|
position: relative;
|
|
1806
1806
|
}
|
|
1807
|
-
.superdoc__sub-document[data-v-
|
|
1807
|
+
.superdoc__sub-document[data-v-d39f5239] {
|
|
1808
1808
|
width: 100%;
|
|
1809
1809
|
position: relative;
|
|
1810
1810
|
}
|
|
1811
|
-
.superdoc__selection-layer[data-v-
|
|
1811
|
+
.superdoc__selection-layer[data-v-d39f5239] {
|
|
1812
1812
|
position: absolute;
|
|
1813
1813
|
min-width: 100%;
|
|
1814
1814
|
min-height: 100%;
|
|
@@ -1819,13 +1819,13 @@ img[data-v-c95b2073] {
|
|
|
1819
1819
|
/* SD-3497: PDF whiteboard overlay sits above the rendered PDF canvas but below
|
|
1820
1820
|
the PDF comment anchors (z-index 6 in PdfCommentsLayer) so anchors stay
|
|
1821
1821
|
clickable, and below the selection layer (z-index 10). */
|
|
1822
|
-
.superdoc__whiteboard-layer[data-v-
|
|
1822
|
+
.superdoc__whiteboard-layer[data-v-d39f5239] {
|
|
1823
1823
|
z-index: 4;
|
|
1824
1824
|
}
|
|
1825
|
-
.superdoc__temp-selection[data-v-
|
|
1825
|
+
.superdoc__temp-selection[data-v-d39f5239] {
|
|
1826
1826
|
position: absolute;
|
|
1827
1827
|
}
|
|
1828
|
-
.superdoc__right-sidebar[data-v-
|
|
1828
|
+
.superdoc__right-sidebar[data-v-d39f5239] {
|
|
1829
1829
|
width: 320px;
|
|
1830
1830
|
min-width: 320px;
|
|
1831
1831
|
padding: 0 10px;
|
|
@@ -1833,7 +1833,7 @@ img[data-v-c95b2073] {
|
|
|
1833
1833
|
position: relative;
|
|
1834
1834
|
z-index: 2;
|
|
1835
1835
|
}
|
|
1836
|
-
.superdoc__compact-comment-popover[data-v-
|
|
1836
|
+
.superdoc__compact-comment-popover[data-v-d39f5239] {
|
|
1837
1837
|
position: absolute;
|
|
1838
1838
|
top: 12px;
|
|
1839
1839
|
right: 12px;
|
|
@@ -1842,14 +1842,14 @@ img[data-v-c95b2073] {
|
|
|
1842
1842
|
}
|
|
1843
1843
|
|
|
1844
1844
|
/* Tools styles */
|
|
1845
|
-
.tools[data-v-
|
|
1845
|
+
.tools[data-v-d39f5239] {
|
|
1846
1846
|
position: absolute;
|
|
1847
1847
|
z-index: 3;
|
|
1848
1848
|
display: flex;
|
|
1849
1849
|
flex-direction: column;
|
|
1850
1850
|
gap: var(--sd-ui-tools-gap, 6px);
|
|
1851
1851
|
}
|
|
1852
|
-
.tools-item[data-v-
|
|
1852
|
+
.tools-item[data-v-d39f5239] {
|
|
1853
1853
|
display: flex;
|
|
1854
1854
|
align-items: center;
|
|
1855
1855
|
justify-content: center;
|
|
@@ -1860,10 +1860,10 @@ img[data-v-c95b2073] {
|
|
|
1860
1860
|
cursor: pointer;
|
|
1861
1861
|
position: relative;
|
|
1862
1862
|
}
|
|
1863
|
-
.tools-item i[data-v-
|
|
1863
|
+
.tools-item i[data-v-d39f5239] {
|
|
1864
1864
|
cursor: pointer;
|
|
1865
1865
|
}
|
|
1866
|
-
.superdoc__tools-icon[data-v-
|
|
1866
|
+
.superdoc__tools-icon[data-v-d39f5239] {
|
|
1867
1867
|
width: var(--sd-ui-tools-icon-size, 20px);
|
|
1868
1868
|
height: var(--sd-ui-tools-icon-size, 20px);
|
|
1869
1869
|
flex-shrink: 0;
|
|
@@ -1878,22 +1878,22 @@ img[data-v-c95b2073] {
|
|
|
1878
1878
|
|
|
1879
1879
|
/* 834px is iPad screen size in portrait orientation */
|
|
1880
1880
|
@media (max-width: 834px) {
|
|
1881
|
-
.superdoc .superdoc__layers[data-v-
|
|
1881
|
+
.superdoc .superdoc__layers[data-v-d39f5239] {
|
|
1882
1882
|
margin: 0;
|
|
1883
1883
|
border: 0 !important;
|
|
1884
1884
|
box-shadow: none;
|
|
1885
1885
|
}
|
|
1886
|
-
.superdoc__sub-document[data-v-
|
|
1886
|
+
.superdoc__sub-document[data-v-d39f5239] {
|
|
1887
1887
|
max-width: 100%;
|
|
1888
1888
|
}
|
|
1889
|
-
.superdoc__right-sidebar[data-v-
|
|
1889
|
+
.superdoc__right-sidebar[data-v-d39f5239] {
|
|
1890
1890
|
padding: 10px;
|
|
1891
1891
|
position: relative;
|
|
1892
1892
|
}
|
|
1893
1893
|
}
|
|
1894
1894
|
|
|
1895
1895
|
/* AI Writer styles */
|
|
1896
|
-
.ai-writer-container[data-v-
|
|
1896
|
+
.ai-writer-container[data-v-d39f5239] {
|
|
1897
1897
|
position: fixed;
|
|
1898
1898
|
z-index: 1000;
|
|
1899
1899
|
background: white;
|
|
@@ -1909,10 +1909,10 @@ img[data-v-c95b2073] {
|
|
|
1909
1909
|
transform: translateY(-50%);
|
|
1910
1910
|
z-index: 50;
|
|
1911
1911
|
} */
|
|
1912
|
-
.ai-tool > svg[data-v-
|
|
1912
|
+
.ai-tool > svg[data-v-d39f5239] {
|
|
1913
1913
|
fill: transparent;
|
|
1914
1914
|
}
|
|
1915
|
-
.ai-tool[data-v-
|
|
1915
|
+
.ai-tool[data-v-d39f5239]::before {
|
|
1916
1916
|
content: '';
|
|
1917
1917
|
position: absolute;
|
|
1918
1918
|
width: 20px;
|
|
@@ -1933,7 +1933,7 @@ img[data-v-c95b2073] {
|
|
|
1933
1933
|
filter: brightness(1.2);
|
|
1934
1934
|
transition: filter 0.2s ease;
|
|
1935
1935
|
}
|
|
1936
|
-
.ai-tool[data-v-
|
|
1936
|
+
.ai-tool[data-v-d39f5239]:hover::before {
|
|
1937
1937
|
filter: brightness(1.3);
|
|
1938
1938
|
}
|
|
1939
1939
|
|
|
@@ -3580,6 +3580,17 @@ export interface Config {
|
|
|
3580
3580
|
* Omitted entries keep SuperDoc's bundled worker URLs.
|
|
3581
3581
|
*/
|
|
3582
3582
|
workerUrls?: V2WorkerUrlsConfig;
|
|
3583
|
+
/**
|
|
3584
|
+
* Budget for the document worker to start up, in milliseconds
|
|
3585
|
+
* (default: 30000). Measured from worker spawn, so it covers script
|
|
3586
|
+
* download, parsing, evaluation, and the worker's first response to
|
|
3587
|
+
* SuperDoc. Raise it when a large worker chunk is served
|
|
3588
|
+
* over a slow connection or a cold dev-server cache; lower it to fail faster.
|
|
3589
|
+
* Worker load errors are reported immediately and do not wait for this
|
|
3590
|
+
* budget. Must be a finite positive number no greater than 2147483647, the
|
|
3591
|
+
* platform timer ceiling above which a delay would fire immediately.
|
|
3592
|
+
*/
|
|
3593
|
+
workerStartupTimeoutMs?: number;
|
|
3583
3594
|
/**
|
|
3584
3595
|
* Opt-in toggle for the layout engine. Auto-disabled when web layout is
|
|
3585
3596
|
* requested without `layoutEngineOptions.flowMode === 'semantic'`; the
|