superdoc 2.20.0 → 2.20.1-next.1
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/dist/chunks/{create-super-doc-ui-D5VrP4Dx.es.js → create-super-doc-ui-B4_V1haj.es.js} +20 -6
- package/dist/chunks/{create-super-doc-ui-BQBQsjoe.cjs → create-super-doc-ui-DFCfYEpW.cjs} +20 -6
- package/dist/collaboration-upgrade-engine.cjs +1 -1
- package/dist/collaboration-upgrade-engine.es.js +1 -1
- package/dist/public/ui-react.cjs +1 -1
- package/dist/public/ui-react.es.js +1 -1
- package/dist/public/ui-vue.cjs +1 -1
- package/dist/public/ui-vue.es.js +1 -1
- package/dist/public/ui.cjs +1 -1
- package/dist/public/ui.es.js +1 -1
- package/dist/style.css +22 -22
- package/dist/style.layered.css +22 -22
- package/dist/superdoc/src/core/types/index.d.ts +4 -2
- package/dist/superdoc/src/internal/toolbar/built-in/default-items.d.ts +1 -1
- package/dist/superdoc.cjs +65 -11
- package/dist/superdoc.es.js +65 -11
- package/dist-cdn/style.layered.css +1 -1
- package/dist-cdn/superdoc.min.css +1 -1
- package/dist-cdn/superdoc.min.js +39 -39
- package/package.json +2 -2
package/dist/chunks/{create-super-doc-ui-D5VrP4Dx.es.js → create-super-doc-ui-B4_V1haj.es.js}
RENAMED
|
@@ -4219,6 +4219,14 @@ function readCollapsedHostTrackChangeId(snapshot) {
|
|
|
4219
4219
|
const focusId = focusVisual?.trackChangeId;
|
|
4220
4220
|
return typeof anchorId === "string" && anchorId.length > 0 && anchorId === focusId ? anchorId : null;
|
|
4221
4221
|
}
|
|
4222
|
+
function isNonCollapsedHostSelection(snapshot) {
|
|
4223
|
+
if (!snapshot || typeof snapshot !== "object") return false;
|
|
4224
|
+
const record = snapshot;
|
|
4225
|
+
const anchor = record.anchor;
|
|
4226
|
+
const focus = record.focus;
|
|
4227
|
+
if (typeof anchor?.blockId !== "string" || !anchor.blockId || typeof focus?.blockId !== "string" || !focus.blockId || !Number.isFinite(anchor.blockOffset) || !Number.isFinite(focus.blockOffset)) return false;
|
|
4228
|
+
return anchor.blockId !== focus.blockId || anchor.blockOffset !== focus.blockOffset || Number.isFinite(anchor.trackedBlockOffset) && Number.isFinite(focus.trackedBlockOffset) && anchor.trackedBlockOffset !== focus.trackedBlockOffset;
|
|
4229
|
+
}
|
|
4222
4230
|
var trackedChangeIdContextCache = /* @__PURE__ */ new WeakMap();
|
|
4223
4231
|
/**
|
|
4224
4232
|
* Collect the raw source-provenance ids a tracked-change list item exposes,
|
|
@@ -6250,7 +6258,7 @@ function createSuperDocUI(options) {
|
|
|
6250
6258
|
}
|
|
6251
6259
|
if (pendingPostPaintSelectionRefresh) continue;
|
|
6252
6260
|
selectionEpoch += 1;
|
|
6253
|
-
|
|
6261
|
+
refreshSelectionFromHost();
|
|
6254
6262
|
recompute(paintCompleted ? "post-paint-selection" : "post-paint-selection-failed");
|
|
6255
6263
|
}
|
|
6256
6264
|
};
|
|
@@ -6647,8 +6655,9 @@ function createSuperDocUI(options) {
|
|
|
6647
6655
|
* effective font resolved from it) on the next recompute, instead of serving
|
|
6648
6656
|
* the previous selection until the worker `selection.current` round-trip lands
|
|
6649
6657
|
* (SD-3652). Only a resolvable COLLAPSED CARET is seeded - a range's snapshot
|
|
6650
|
-
* cannot be resolved synchronously in worker mode, so
|
|
6651
|
-
* read
|
|
6658
|
+
* cannot be resolved synchronously in worker mode, so a new range starts an
|
|
6659
|
+
* authoritative async read without waiting for the input-idle gate (SD-5394).
|
|
6660
|
+
* Seeding an empty value would wrongly disable range-only commands. The
|
|
6652
6661
|
* authoritative async read still overwrites marks/text/review overlap, but
|
|
6653
6662
|
* foreground typing defers and coalesces that worker hop through the shared
|
|
6654
6663
|
* retry gate. Previous marks are carried forward for toolbar continuity. A
|
|
@@ -6656,14 +6665,19 @@ function createSuperDocUI(options) {
|
|
|
6656
6665
|
* same carrier, or while an active typing dispatch advances the same caret by
|
|
6657
6666
|
* one code point. Pending work alone never carries review command context.
|
|
6658
6667
|
*/
|
|
6659
|
-
const
|
|
6668
|
+
const refreshSelectionFromHost = (hostSelectionSnapshot) => {
|
|
6669
|
+
const foreground = foregroundMutationState();
|
|
6670
|
+
if (isNonCollapsedHostSelection(hostSelectionSnapshot) && !(foreground && foreground.active > 0)) {
|
|
6671
|
+
pendingSelectionSeedValidationToken = null;
|
|
6672
|
+
issueAsyncRead("selection", selectionReadToken(), selectionCurrentRun, normalizeSelectionInfo);
|
|
6673
|
+
return;
|
|
6674
|
+
}
|
|
6660
6675
|
const host = getHost();
|
|
6661
6676
|
const read = host?.readLiveSelectionSyncSnapshot;
|
|
6662
6677
|
if (typeof read !== "function") return;
|
|
6663
6678
|
const seed = normalizeSelectionInfo(safeCall(() => read.call(host), null));
|
|
6664
6679
|
if (!seed || !isCollapsedCaretSnapshot(seed)) return;
|
|
6665
6680
|
const token = selectionReadToken();
|
|
6666
|
-
const foreground = foregroundMutationState();
|
|
6667
6681
|
const deferAuthoritativeRead = Boolean(foreground && (foreground.active > 0 || foreground.pending > 0));
|
|
6668
6682
|
if (!deferAuthoritativeRead) {
|
|
6669
6683
|
pendingSelectionSeedValidationToken = null;
|
|
@@ -8895,7 +8909,7 @@ function createSuperDocUI(options) {
|
|
|
8895
8909
|
const unsubscribe = next.subscribe((snapshot) => {
|
|
8896
8910
|
if (foregroundMutationActive() && caretSelectionNeedsProjectionPaint() && schedulePostPaintSelectionRefresh()) return;
|
|
8897
8911
|
selectionEpoch += 1;
|
|
8898
|
-
|
|
8912
|
+
refreshSelectionFromHost(snapshot);
|
|
8899
8913
|
recompute("host-selection");
|
|
8900
8914
|
});
|
|
8901
8915
|
if (typeof unsubscribe === "function") detachHostSelection = unsubscribe;
|
|
@@ -4220,6 +4220,14 @@ function readCollapsedHostTrackChangeId(snapshot) {
|
|
|
4220
4220
|
const focusId = focusVisual?.trackChangeId;
|
|
4221
4221
|
return typeof anchorId === "string" && anchorId.length > 0 && anchorId === focusId ? anchorId : null;
|
|
4222
4222
|
}
|
|
4223
|
+
function isNonCollapsedHostSelection(snapshot) {
|
|
4224
|
+
if (!snapshot || typeof snapshot !== "object") return false;
|
|
4225
|
+
const record = snapshot;
|
|
4226
|
+
const anchor = record.anchor;
|
|
4227
|
+
const focus = record.focus;
|
|
4228
|
+
if (typeof anchor?.blockId !== "string" || !anchor.blockId || typeof focus?.blockId !== "string" || !focus.blockId || !Number.isFinite(anchor.blockOffset) || !Number.isFinite(focus.blockOffset)) return false;
|
|
4229
|
+
return anchor.blockId !== focus.blockId || anchor.blockOffset !== focus.blockOffset || Number.isFinite(anchor.trackedBlockOffset) && Number.isFinite(focus.trackedBlockOffset) && anchor.trackedBlockOffset !== focus.trackedBlockOffset;
|
|
4230
|
+
}
|
|
4223
4231
|
var trackedChangeIdContextCache = /* @__PURE__ */ new WeakMap();
|
|
4224
4232
|
/**
|
|
4225
4233
|
* Collect the raw source-provenance ids a tracked-change list item exposes,
|
|
@@ -6251,7 +6259,7 @@ function createSuperDocUI(options) {
|
|
|
6251
6259
|
}
|
|
6252
6260
|
if (pendingPostPaintSelectionRefresh) continue;
|
|
6253
6261
|
selectionEpoch += 1;
|
|
6254
|
-
|
|
6262
|
+
refreshSelectionFromHost();
|
|
6255
6263
|
recompute(paintCompleted ? "post-paint-selection" : "post-paint-selection-failed");
|
|
6256
6264
|
}
|
|
6257
6265
|
};
|
|
@@ -6648,8 +6656,9 @@ function createSuperDocUI(options) {
|
|
|
6648
6656
|
* effective font resolved from it) on the next recompute, instead of serving
|
|
6649
6657
|
* the previous selection until the worker `selection.current` round-trip lands
|
|
6650
6658
|
* (SD-3652). Only a resolvable COLLAPSED CARET is seeded - a range's snapshot
|
|
6651
|
-
* cannot be resolved synchronously in worker mode, so
|
|
6652
|
-
* read
|
|
6659
|
+
* cannot be resolved synchronously in worker mode, so a new range starts an
|
|
6660
|
+
* authoritative async read without waiting for the input-idle gate (SD-5394).
|
|
6661
|
+
* Seeding an empty value would wrongly disable range-only commands. The
|
|
6653
6662
|
* authoritative async read still overwrites marks/text/review overlap, but
|
|
6654
6663
|
* foreground typing defers and coalesces that worker hop through the shared
|
|
6655
6664
|
* retry gate. Previous marks are carried forward for toolbar continuity. A
|
|
@@ -6657,14 +6666,19 @@ function createSuperDocUI(options) {
|
|
|
6657
6666
|
* same carrier, or while an active typing dispatch advances the same caret by
|
|
6658
6667
|
* one code point. Pending work alone never carries review command context.
|
|
6659
6668
|
*/
|
|
6660
|
-
const
|
|
6669
|
+
const refreshSelectionFromHost = (hostSelectionSnapshot) => {
|
|
6670
|
+
const foreground = foregroundMutationState();
|
|
6671
|
+
if (isNonCollapsedHostSelection(hostSelectionSnapshot) && !(foreground && foreground.active > 0)) {
|
|
6672
|
+
pendingSelectionSeedValidationToken = null;
|
|
6673
|
+
issueAsyncRead("selection", selectionReadToken(), selectionCurrentRun, normalizeSelectionInfo);
|
|
6674
|
+
return;
|
|
6675
|
+
}
|
|
6661
6676
|
const host = getHost();
|
|
6662
6677
|
const read = host?.readLiveSelectionSyncSnapshot;
|
|
6663
6678
|
if (typeof read !== "function") return;
|
|
6664
6679
|
const seed = normalizeSelectionInfo(safeCall(() => read.call(host), null));
|
|
6665
6680
|
if (!seed || !isCollapsedCaretSnapshot(seed)) return;
|
|
6666
6681
|
const token = selectionReadToken();
|
|
6667
|
-
const foreground = foregroundMutationState();
|
|
6668
6682
|
const deferAuthoritativeRead = Boolean(foreground && (foreground.active > 0 || foreground.pending > 0));
|
|
6669
6683
|
if (!deferAuthoritativeRead) {
|
|
6670
6684
|
pendingSelectionSeedValidationToken = null;
|
|
@@ -8896,7 +8910,7 @@ function createSuperDocUI(options) {
|
|
|
8896
8910
|
const unsubscribe = next.subscribe((snapshot) => {
|
|
8897
8911
|
if (foregroundMutationActive() && caretSelectionNeedsProjectionPaint() && schedulePostPaintSelectionRefresh()) return;
|
|
8898
8912
|
selectionEpoch += 1;
|
|
8899
|
-
|
|
8913
|
+
refreshSelectionFromHost(snapshot);
|
|
8900
8914
|
recompute("host-selection");
|
|
8901
8915
|
});
|
|
8902
8916
|
if (typeof unsubscribe === "function") detachHostSelection = unsubscribe;
|
|
@@ -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.20.
|
|
22
|
+
superdocVersion: "2.20.1-next.1",
|
|
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.20.
|
|
21
|
+
superdocVersion: "2.20.1-next.1",
|
|
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/public/ui-react.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-
|
|
2
|
+
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-DFCfYEpW.cjs");
|
|
3
3
|
const require_slice_source = require("../chunks/slice-source-CFaqq0Vo.cjs");
|
|
4
4
|
let react = require("react");
|
|
5
5
|
//#region src/public/ui/react.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as createSuperDocUI } from "../chunks/create-super-doc-ui-
|
|
1
|
+
import { t as createSuperDocUI } from "../chunks/create-super-doc-ui-B4_V1haj.es.js";
|
|
2
2
|
import { t as toSliceSource } from "../chunks/slice-source-gfOhG2MW.es.js";
|
|
3
3
|
import { createContext, createElement, useCallback, useContext, useEffect, useRef, useState } from "react";
|
|
4
4
|
//#region src/public/ui/react.ts
|
package/dist/public/ui-vue.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-
|
|
2
|
+
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-DFCfYEpW.cjs");
|
|
3
3
|
const require_slice_source = require("../chunks/slice-source-CFaqq0Vo.cjs");
|
|
4
4
|
let superdoc_entry_vue = require("vue");
|
|
5
5
|
//#region src/public/ui/vue.ts
|
package/dist/public/ui-vue.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as createSuperDocUI } from "../chunks/create-super-doc-ui-
|
|
1
|
+
import { t as createSuperDocUI } from "../chunks/create-super-doc-ui-B4_V1haj.es.js";
|
|
2
2
|
import { t as toSliceSource } from "../chunks/slice-source-gfOhG2MW.es.js";
|
|
3
3
|
import { computed, inject, onScopeDispose, provide, shallowRef, toRaw, toValue, watch } from "vue";
|
|
4
4
|
//#region src/public/ui/vue.ts
|
package/dist/public/ui.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-
|
|
2
|
+
const require_create_super_doc_ui = require("../chunks/create-super-doc-ui-DFCfYEpW.cjs");
|
|
3
3
|
exports.BUILT_IN_COMMAND_IDS = require_create_super_doc_ui.BUILT_IN_COMMAND_IDS;
|
|
4
4
|
exports.createSuperDocUI = require_create_super_doc_ui.createSuperDocUI;
|
|
5
5
|
exports.shallowEqual = require_create_super_doc_ui.shallowEqual;
|
package/dist/public/ui.es.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as BUILT_IN_COMMAND_IDS, t as createSuperDocUI, u as shallowEqual } from "../chunks/create-super-doc-ui-
|
|
1
|
+
import { a as BUILT_IN_COMMAND_IDS, t as createSuperDocUI, u as shallowEqual } from "../chunks/create-super-doc-ui-B4_V1haj.es.js";
|
|
2
2
|
export { BUILT_IN_COMMAND_IDS, createSuperDocUI, shallowEqual };
|
package/dist/style.css
CHANGED
|
@@ -2340,34 +2340,34 @@ img[data-v-c95b2073] {
|
|
|
2340
2340
|
pointer-events: auto;
|
|
2341
2341
|
}
|
|
2342
2342
|
|
|
2343
|
-
.superdoc[data-v-
|
|
2343
|
+
.superdoc[data-v-e476c448] {
|
|
2344
2344
|
display: flex;
|
|
2345
2345
|
position: relative;
|
|
2346
2346
|
}
|
|
2347
|
-
.right-sidebar[data-v-
|
|
2347
|
+
.right-sidebar[data-v-e476c448] {
|
|
2348
2348
|
min-width: 320px;
|
|
2349
2349
|
height: 100%;
|
|
2350
2350
|
}
|
|
2351
|
-
.floating-comments[data-v-
|
|
2351
|
+
.floating-comments[data-v-e476c448] {
|
|
2352
2352
|
min-width: 300px;
|
|
2353
2353
|
width: 300px;
|
|
2354
2354
|
height: 100%;
|
|
2355
2355
|
overflow: visible;
|
|
2356
2356
|
}
|
|
2357
|
-
.superdoc__layers[data-v-
|
|
2357
|
+
.superdoc__layers[data-v-e476c448] {
|
|
2358
2358
|
height: 100%;
|
|
2359
2359
|
position: relative;
|
|
2360
2360
|
box-sizing: border-box;
|
|
2361
2361
|
}
|
|
2362
|
-
.superdoc__document[data-v-
|
|
2362
|
+
.superdoc__document[data-v-e476c448] {
|
|
2363
2363
|
width: 100%;
|
|
2364
2364
|
position: relative;
|
|
2365
2365
|
}
|
|
2366
|
-
.superdoc__sub-document[data-v-
|
|
2366
|
+
.superdoc__sub-document[data-v-e476c448] {
|
|
2367
2367
|
width: 100%;
|
|
2368
2368
|
position: relative;
|
|
2369
2369
|
}
|
|
2370
|
-
.superdoc__selection-layer[data-v-
|
|
2370
|
+
.superdoc__selection-layer[data-v-e476c448] {
|
|
2371
2371
|
position: absolute;
|
|
2372
2372
|
min-width: 100%;
|
|
2373
2373
|
min-height: 100%;
|
|
@@ -2378,13 +2378,13 @@ img[data-v-c95b2073] {
|
|
|
2378
2378
|
/* SD-3497: PDF whiteboard overlay sits above the rendered PDF canvas but below
|
|
2379
2379
|
the PDF comment anchors (z-index 6 in PdfCommentsLayer) so anchors stay
|
|
2380
2380
|
clickable, and below the selection layer (z-index 10). */
|
|
2381
|
-
.superdoc__whiteboard-layer[data-v-
|
|
2381
|
+
.superdoc__whiteboard-layer[data-v-e476c448] {
|
|
2382
2382
|
z-index: 4;
|
|
2383
2383
|
}
|
|
2384
|
-
.superdoc__temp-selection[data-v-
|
|
2384
|
+
.superdoc__temp-selection[data-v-e476c448] {
|
|
2385
2385
|
position: absolute;
|
|
2386
2386
|
}
|
|
2387
|
-
.superdoc__right-sidebar[data-v-
|
|
2387
|
+
.superdoc__right-sidebar[data-v-e476c448] {
|
|
2388
2388
|
width: 320px;
|
|
2389
2389
|
min-width: 320px;
|
|
2390
2390
|
padding: 0 10px;
|
|
@@ -2392,7 +2392,7 @@ img[data-v-c95b2073] {
|
|
|
2392
2392
|
position: relative;
|
|
2393
2393
|
z-index: 2;
|
|
2394
2394
|
}
|
|
2395
|
-
.superdoc__compact-comment-popover[data-v-
|
|
2395
|
+
.superdoc__compact-comment-popover[data-v-e476c448] {
|
|
2396
2396
|
position: absolute;
|
|
2397
2397
|
top: 12px;
|
|
2398
2398
|
right: 12px;
|
|
@@ -2401,14 +2401,14 @@ img[data-v-c95b2073] {
|
|
|
2401
2401
|
}
|
|
2402
2402
|
|
|
2403
2403
|
/* Tools styles */
|
|
2404
|
-
.tools[data-v-
|
|
2404
|
+
.tools[data-v-e476c448] {
|
|
2405
2405
|
position: absolute;
|
|
2406
2406
|
z-index: 3;
|
|
2407
2407
|
display: flex;
|
|
2408
2408
|
flex-direction: column;
|
|
2409
2409
|
gap: var(--sd-ui-tools-gap, 6px);
|
|
2410
2410
|
}
|
|
2411
|
-
.tools-item[data-v-
|
|
2411
|
+
.tools-item[data-v-e476c448] {
|
|
2412
2412
|
display: flex;
|
|
2413
2413
|
align-items: center;
|
|
2414
2414
|
justify-content: center;
|
|
@@ -2419,10 +2419,10 @@ img[data-v-c95b2073] {
|
|
|
2419
2419
|
cursor: pointer;
|
|
2420
2420
|
position: relative;
|
|
2421
2421
|
}
|
|
2422
|
-
.tools-item i[data-v-
|
|
2422
|
+
.tools-item i[data-v-e476c448] {
|
|
2423
2423
|
cursor: pointer;
|
|
2424
2424
|
}
|
|
2425
|
-
.superdoc__tools-icon[data-v-
|
|
2425
|
+
.superdoc__tools-icon[data-v-e476c448] {
|
|
2426
2426
|
width: var(--sd-ui-tools-icon-size, 20px);
|
|
2427
2427
|
height: var(--sd-ui-tools-icon-size, 20px);
|
|
2428
2428
|
flex-shrink: 0;
|
|
@@ -2437,22 +2437,22 @@ img[data-v-c95b2073] {
|
|
|
2437
2437
|
|
|
2438
2438
|
/* 834px is iPad screen size in portrait orientation */
|
|
2439
2439
|
@media (max-width: 834px) {
|
|
2440
|
-
.superdoc .superdoc__layers[data-v-
|
|
2440
|
+
.superdoc .superdoc__layers[data-v-e476c448] {
|
|
2441
2441
|
margin: 0;
|
|
2442
2442
|
border: 0 !important;
|
|
2443
2443
|
box-shadow: none;
|
|
2444
2444
|
}
|
|
2445
|
-
.superdoc__sub-document[data-v-
|
|
2445
|
+
.superdoc__sub-document[data-v-e476c448] {
|
|
2446
2446
|
max-width: 100%;
|
|
2447
2447
|
}
|
|
2448
|
-
.superdoc__right-sidebar[data-v-
|
|
2448
|
+
.superdoc__right-sidebar[data-v-e476c448] {
|
|
2449
2449
|
padding: 10px;
|
|
2450
2450
|
position: relative;
|
|
2451
2451
|
}
|
|
2452
2452
|
}
|
|
2453
2453
|
|
|
2454
2454
|
/* AI Writer styles */
|
|
2455
|
-
.ai-writer-container[data-v-
|
|
2455
|
+
.ai-writer-container[data-v-e476c448] {
|
|
2456
2456
|
position: fixed;
|
|
2457
2457
|
z-index: 1000;
|
|
2458
2458
|
background: white;
|
|
@@ -2468,10 +2468,10 @@ img[data-v-c95b2073] {
|
|
|
2468
2468
|
transform: translateY(-50%);
|
|
2469
2469
|
z-index: 50;
|
|
2470
2470
|
} */
|
|
2471
|
-
.ai-tool > svg[data-v-
|
|
2471
|
+
.ai-tool > svg[data-v-e476c448] {
|
|
2472
2472
|
fill: transparent;
|
|
2473
2473
|
}
|
|
2474
|
-
.ai-tool[data-v-
|
|
2474
|
+
.ai-tool[data-v-e476c448]::before {
|
|
2475
2475
|
content: '';
|
|
2476
2476
|
position: absolute;
|
|
2477
2477
|
width: 20px;
|
|
@@ -2492,7 +2492,7 @@ img[data-v-c95b2073] {
|
|
|
2492
2492
|
filter: brightness(1.2);
|
|
2493
2493
|
transition: filter 0.2s ease;
|
|
2494
2494
|
}
|
|
2495
|
-
.ai-tool[data-v-
|
|
2495
|
+
.ai-tool[data-v-e476c448]:hover::before {
|
|
2496
2496
|
filter: brightness(1.3);
|
|
2497
2497
|
}
|
|
2498
2498
|
|
package/dist/style.layered.css
CHANGED
|
@@ -2340,34 +2340,34 @@ img[data-v-c95b2073] {
|
|
|
2340
2340
|
pointer-events: auto;
|
|
2341
2341
|
}
|
|
2342
2342
|
|
|
2343
|
-
.superdoc[data-v-
|
|
2343
|
+
.superdoc[data-v-e476c448] {
|
|
2344
2344
|
display: flex;
|
|
2345
2345
|
position: relative;
|
|
2346
2346
|
}
|
|
2347
|
-
.right-sidebar[data-v-
|
|
2347
|
+
.right-sidebar[data-v-e476c448] {
|
|
2348
2348
|
min-width: 320px;
|
|
2349
2349
|
height: 100%;
|
|
2350
2350
|
}
|
|
2351
|
-
.floating-comments[data-v-
|
|
2351
|
+
.floating-comments[data-v-e476c448] {
|
|
2352
2352
|
min-width: 300px;
|
|
2353
2353
|
width: 300px;
|
|
2354
2354
|
height: 100%;
|
|
2355
2355
|
overflow: visible;
|
|
2356
2356
|
}
|
|
2357
|
-
.superdoc__layers[data-v-
|
|
2357
|
+
.superdoc__layers[data-v-e476c448] {
|
|
2358
2358
|
height: 100%;
|
|
2359
2359
|
position: relative;
|
|
2360
2360
|
box-sizing: border-box;
|
|
2361
2361
|
}
|
|
2362
|
-
.superdoc__document[data-v-
|
|
2362
|
+
.superdoc__document[data-v-e476c448] {
|
|
2363
2363
|
width: 100%;
|
|
2364
2364
|
position: relative;
|
|
2365
2365
|
}
|
|
2366
|
-
.superdoc__sub-document[data-v-
|
|
2366
|
+
.superdoc__sub-document[data-v-e476c448] {
|
|
2367
2367
|
width: 100%;
|
|
2368
2368
|
position: relative;
|
|
2369
2369
|
}
|
|
2370
|
-
.superdoc__selection-layer[data-v-
|
|
2370
|
+
.superdoc__selection-layer[data-v-e476c448] {
|
|
2371
2371
|
position: absolute;
|
|
2372
2372
|
min-width: 100%;
|
|
2373
2373
|
min-height: 100%;
|
|
@@ -2378,13 +2378,13 @@ img[data-v-c95b2073] {
|
|
|
2378
2378
|
/* SD-3497: PDF whiteboard overlay sits above the rendered PDF canvas but below
|
|
2379
2379
|
the PDF comment anchors (z-index 6 in PdfCommentsLayer) so anchors stay
|
|
2380
2380
|
clickable, and below the selection layer (z-index 10). */
|
|
2381
|
-
.superdoc__whiteboard-layer[data-v-
|
|
2381
|
+
.superdoc__whiteboard-layer[data-v-e476c448] {
|
|
2382
2382
|
z-index: 4;
|
|
2383
2383
|
}
|
|
2384
|
-
.superdoc__temp-selection[data-v-
|
|
2384
|
+
.superdoc__temp-selection[data-v-e476c448] {
|
|
2385
2385
|
position: absolute;
|
|
2386
2386
|
}
|
|
2387
|
-
.superdoc__right-sidebar[data-v-
|
|
2387
|
+
.superdoc__right-sidebar[data-v-e476c448] {
|
|
2388
2388
|
width: 320px;
|
|
2389
2389
|
min-width: 320px;
|
|
2390
2390
|
padding: 0 10px;
|
|
@@ -2392,7 +2392,7 @@ img[data-v-c95b2073] {
|
|
|
2392
2392
|
position: relative;
|
|
2393
2393
|
z-index: 2;
|
|
2394
2394
|
}
|
|
2395
|
-
.superdoc__compact-comment-popover[data-v-
|
|
2395
|
+
.superdoc__compact-comment-popover[data-v-e476c448] {
|
|
2396
2396
|
position: absolute;
|
|
2397
2397
|
top: 12px;
|
|
2398
2398
|
right: 12px;
|
|
@@ -2401,14 +2401,14 @@ img[data-v-c95b2073] {
|
|
|
2401
2401
|
}
|
|
2402
2402
|
|
|
2403
2403
|
/* Tools styles */
|
|
2404
|
-
.tools[data-v-
|
|
2404
|
+
.tools[data-v-e476c448] {
|
|
2405
2405
|
position: absolute;
|
|
2406
2406
|
z-index: 3;
|
|
2407
2407
|
display: flex;
|
|
2408
2408
|
flex-direction: column;
|
|
2409
2409
|
gap: var(--sd-ui-tools-gap, 6px);
|
|
2410
2410
|
}
|
|
2411
|
-
.tools-item[data-v-
|
|
2411
|
+
.tools-item[data-v-e476c448] {
|
|
2412
2412
|
display: flex;
|
|
2413
2413
|
align-items: center;
|
|
2414
2414
|
justify-content: center;
|
|
@@ -2419,10 +2419,10 @@ img[data-v-c95b2073] {
|
|
|
2419
2419
|
cursor: pointer;
|
|
2420
2420
|
position: relative;
|
|
2421
2421
|
}
|
|
2422
|
-
.tools-item i[data-v-
|
|
2422
|
+
.tools-item i[data-v-e476c448] {
|
|
2423
2423
|
cursor: pointer;
|
|
2424
2424
|
}
|
|
2425
|
-
.superdoc__tools-icon[data-v-
|
|
2425
|
+
.superdoc__tools-icon[data-v-e476c448] {
|
|
2426
2426
|
width: var(--sd-ui-tools-icon-size, 20px);
|
|
2427
2427
|
height: var(--sd-ui-tools-icon-size, 20px);
|
|
2428
2428
|
flex-shrink: 0;
|
|
@@ -2437,22 +2437,22 @@ img[data-v-c95b2073] {
|
|
|
2437
2437
|
|
|
2438
2438
|
/* 834px is iPad screen size in portrait orientation */
|
|
2439
2439
|
@media (max-width: 834px) {
|
|
2440
|
-
.superdoc .superdoc__layers[data-v-
|
|
2440
|
+
.superdoc .superdoc__layers[data-v-e476c448] {
|
|
2441
2441
|
margin: 0;
|
|
2442
2442
|
border: 0 !important;
|
|
2443
2443
|
box-shadow: none;
|
|
2444
2444
|
}
|
|
2445
|
-
.superdoc__sub-document[data-v-
|
|
2445
|
+
.superdoc__sub-document[data-v-e476c448] {
|
|
2446
2446
|
max-width: 100%;
|
|
2447
2447
|
}
|
|
2448
|
-
.superdoc__right-sidebar[data-v-
|
|
2448
|
+
.superdoc__right-sidebar[data-v-e476c448] {
|
|
2449
2449
|
padding: 10px;
|
|
2450
2450
|
position: relative;
|
|
2451
2451
|
}
|
|
2452
2452
|
}
|
|
2453
2453
|
|
|
2454
2454
|
/* AI Writer styles */
|
|
2455
|
-
.ai-writer-container[data-v-
|
|
2455
|
+
.ai-writer-container[data-v-e476c448] {
|
|
2456
2456
|
position: fixed;
|
|
2457
2457
|
z-index: 1000;
|
|
2458
2458
|
background: white;
|
|
@@ -2468,10 +2468,10 @@ img[data-v-c95b2073] {
|
|
|
2468
2468
|
transform: translateY(-50%);
|
|
2469
2469
|
z-index: 50;
|
|
2470
2470
|
} */
|
|
2471
|
-
.ai-tool > svg[data-v-
|
|
2471
|
+
.ai-tool > svg[data-v-e476c448] {
|
|
2472
2472
|
fill: transparent;
|
|
2473
2473
|
}
|
|
2474
|
-
.ai-tool[data-v-
|
|
2474
|
+
.ai-tool[data-v-e476c448]::before {
|
|
2475
2475
|
content: '';
|
|
2476
2476
|
position: absolute;
|
|
2477
2477
|
width: 20px;
|
|
@@ -2492,7 +2492,7 @@ img[data-v-c95b2073] {
|
|
|
2492
2492
|
filter: brightness(1.2);
|
|
2493
2493
|
transition: filter 0.2s ease;
|
|
2494
2494
|
}
|
|
2495
|
-
.ai-tool[data-v-
|
|
2495
|
+
.ai-tool[data-v-e476c448]:hover::before {
|
|
2496
2496
|
filter: brightness(1.3);
|
|
2497
2497
|
}
|
|
2498
2498
|
|
|
@@ -3694,16 +3694,18 @@ export interface ToolbarConfig {
|
|
|
3694
3694
|
* syntax resolves to nothing.
|
|
3695
3695
|
*/
|
|
3696
3696
|
container?: string | HTMLElement;
|
|
3697
|
-
/** Built-in controls to render by region.
|
|
3697
|
+
/** Built-in controls to render by region. Each region's controls render in the array order given. Omit to use the default toolbar. */
|
|
3698
3698
|
items?: Readonly<Partial<Record<ToolbarRegion, readonly ToolbarItemId[]>>>;
|
|
3699
3699
|
/**
|
|
3700
3700
|
* Which groups render, or which items they contain.
|
|
3701
3701
|
*
|
|
3702
3702
|
* An array selects groups. The built-in layout still places them in its
|
|
3703
3703
|
* left, center, and right regions, and always renders the center region.
|
|
3704
|
+
* Item order within each region stays the built-in order for this shape.
|
|
3704
3705
|
*
|
|
3705
3706
|
* An object maps each group to its toolbar item ids. Its keys choose the
|
|
3706
|
-
* regions
|
|
3707
|
+
* regions; its values form both the group's composition and the render
|
|
3708
|
+
* order of items within that region.
|
|
3707
3709
|
* @deprecated replaceWith=`ui.toolbar.items` removeIn=v3.0
|
|
3708
3710
|
*/
|
|
3709
3711
|
groups?: readonly string[] | Readonly<Record<string, readonly string[]>>;
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* callers share this one rule so the two cannot drift apart.
|
|
10
10
|
*/
|
|
11
11
|
export function withLinkHref(attributes: any, href: any): any;
|
|
12
|
-
export function makeDefaultItems({ superToolbar, toolbarIcons, toolbarTexts, toolbarFonts, hideButtons, availableWidth, role, isDev, configuredItemNames, excludedItemNames, additionalItems, }?: {
|
|
12
|
+
export function makeDefaultItems({ superToolbar, toolbarIcons, toolbarTexts, toolbarFonts, hideButtons, availableWidth, role, isDev, configuredItemNames, configuredItemOrder, excludedItemNames, additionalItems, }?: {
|
|
13
13
|
isDev?: boolean | undefined;
|
|
14
14
|
additionalItems?: never[] | undefined;
|
|
15
15
|
}): {
|