superdoc 2.6.0-next.2 → 2.6.0-next.3
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/collaboration-upgrade-engine.cjs +1 -1
- package/dist/collaboration-upgrade-engine.es.js +1 -1
- package/dist/layout-engine/layout-bridge/src/cache.d.ts +4 -1
- package/dist/layout-engine/layout-bridge/src/incrementalLayout.d.ts +6 -1
- package/dist/layout-engine/layout-engine/src/footnote-anchor-index.d.ts +1 -0
- package/dist/layout-engine/painters/dom/src/renderer.d.ts +6 -8
- package/dist/style.css +44 -44
- package/dist/style.layered.css +44 -44
- package/dist/superdoc.cjs +13 -7
- package/dist/superdoc.es.js +13 -7
- package/dist-cdn/style.layered.css +1 -1
- package/dist-cdn/superdoc.min.css +1 -1
- package/dist-cdn/superdoc.min.js +17 -17
- package/package.json +2 -2
|
@@ -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.6.0-next.
|
|
22
|
+
superdocVersion: "2.6.0-next.3",
|
|
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.6.0-next.
|
|
21
|
+
superdocVersion: "2.6.0-next.3",
|
|
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
|
|
@@ -59,11 +59,13 @@ export type MeasureCacheStats = {
|
|
|
59
59
|
* Performance characteristics:
|
|
60
60
|
* - get(): O(1) - Map lookup + delete + re-insert for LRU tracking
|
|
61
61
|
* - set(): O(1) - eviction (delete first key) + insert
|
|
62
|
-
* - invalidate(): O(
|
|
62
|
+
* - invalidate(): O(k) - where k = cached variants for the requested block IDs
|
|
63
63
|
* - Memory: Bounded at 10K entries ~= 50-100MB
|
|
64
64
|
*/
|
|
65
65
|
export declare class MeasureCache<T> {
|
|
66
66
|
private cache;
|
|
67
|
+
private keysByBlockId;
|
|
68
|
+
private blockIdByKey;
|
|
67
69
|
private stats;
|
|
68
70
|
/**
|
|
69
71
|
* Retrieve a cached measure for the given block and dimensions.
|
|
@@ -130,6 +132,7 @@ export declare class MeasureCache<T> {
|
|
|
130
132
|
* Update size statistics
|
|
131
133
|
*/
|
|
132
134
|
private updateSizeStats;
|
|
135
|
+
private deleteKey;
|
|
133
136
|
/**
|
|
134
137
|
* Composes a cache key from block properties and dimensions.
|
|
135
138
|
* Validates and clamps dimensions to prevent memory exhaustion.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NonFlowingPageRelativeAnchorDependencyProof, PageCheckpointDependencyClass, FlowBlock, Layout, Measure, HeaderFooterLayout, ColumnLayout } from '../../contracts/src/index.js';
|
|
1
|
+
import { NonFlowingPageRelativeAnchorDependencyProof, PageCheckpointDependencyClass, FlowBlock, Layout, LayoutBlockResumeCheckpoint, Measure, HeaderFooterLayout, ColumnLayout } from '../../contracts/src/index.js';
|
|
2
2
|
import { FontMeasureContext } from '../../../shared/font-system/src/index.js';
|
|
3
3
|
import { LayoutOptions, HeaderFooterConstraints, LayoutExecutionCheckpoint } from '../../layout-engine/src/index.js';
|
|
4
4
|
import { computeDirtyRegions } from './diff.js';
|
|
@@ -353,6 +353,11 @@ export declare function incrementalLayout(previousBlocks: FlowBlock[], _previous
|
|
|
353
353
|
measures: Measure[];
|
|
354
354
|
};
|
|
355
355
|
}, layoutReuse?: IncrementalLayoutReuseOptions, measureReuseProof?: IncrementalMeasureReuseProof, execution?: IncrementalLayoutExecutionControl): Promise<IncrementalLayoutResult>;
|
|
356
|
+
export declare function __test_only_splicedCheckpointStats(map: ReadonlyMap<string, LayoutBlockResumeCheckpoint> | undefined): {
|
|
357
|
+
pieceCount: number;
|
|
358
|
+
sourceCount: number;
|
|
359
|
+
maximumTransformTreeDepth: number;
|
|
360
|
+
} | null;
|
|
356
361
|
/**
|
|
357
362
|
* Normalizes a margin value, using a fallback for undefined or non-finite values.
|
|
358
363
|
* Prevents NaN content sizes when margin properties are partially defined.
|
|
@@ -229,9 +229,14 @@ export type PaintSnapshot = {
|
|
|
229
229
|
pages: PaintSnapshotPage[];
|
|
230
230
|
entities: PaintSnapshotEntities;
|
|
231
231
|
};
|
|
232
|
+
type PainterFragmentFailure = {
|
|
233
|
+
readonly blockId: string;
|
|
234
|
+
readonly code: 'painter-fragment-unavailable';
|
|
235
|
+
};
|
|
232
236
|
type PersistentPagePainterTransaction = {
|
|
233
237
|
commit(): void;
|
|
234
238
|
rollback(): void;
|
|
239
|
+
readFragmentFailures(): readonly PainterFragmentFailure[];
|
|
235
240
|
};
|
|
236
241
|
/**
|
|
237
242
|
* DOM-based document painter that renders layout fragments to HTML elements.
|
|
@@ -478,14 +483,6 @@ export declare class DomPainter {
|
|
|
478
483
|
* @returns HTMLElement containing the rendered fragment or error placeholder
|
|
479
484
|
*/
|
|
480
485
|
private renderParagraphFragment;
|
|
481
|
-
/**
|
|
482
|
-
* Creates an error placeholder element for failed fragment renders.
|
|
483
|
-
* Prevents entire paint operation from failing due to single fragment error.
|
|
484
|
-
*
|
|
485
|
-
* @param blockId - The block ID that failed to render
|
|
486
|
-
* @param error - The error that occurred
|
|
487
|
-
* @returns HTMLElement showing the error
|
|
488
|
-
*/
|
|
489
486
|
private createErrorPlaceholder;
|
|
490
487
|
private renderImageFragment;
|
|
491
488
|
/**
|
|
@@ -628,6 +625,7 @@ export declare class DomPainter {
|
|
|
628
625
|
* Selects the wrapper's section-scoped identity and legacy PM attributes.
|
|
629
626
|
*/
|
|
630
627
|
private updateFragmentElement;
|
|
628
|
+
private applyRenderDiagnosticFragmentFrame;
|
|
631
629
|
/**
|
|
632
630
|
* Applies fragment positioning, dimensions, and metadata to an HTML element.
|
|
633
631
|
*
|
package/dist/style.css
CHANGED
|
@@ -1976,20 +1976,20 @@ img[data-v-c95b2073] {
|
|
|
1976
1976
|
width: 16px;
|
|
1977
1977
|
}
|
|
1978
1978
|
|
|
1979
|
-
.sd-toolbar-item[data-v-
|
|
1979
|
+
.sd-toolbar-item[data-v-22817fa7] {
|
|
1980
1980
|
position: relative;
|
|
1981
1981
|
z-index: 1;
|
|
1982
1982
|
min-width: 30px;
|
|
1983
1983
|
margin: 0 calc(var(--sd-ui-toolbar-item-gap, 2px) / 2);
|
|
1984
1984
|
}
|
|
1985
|
-
.sd-visually-hidden[data-v-
|
|
1985
|
+
.sd-visually-hidden[data-v-22817fa7] {
|
|
1986
1986
|
position: absolute;
|
|
1987
1987
|
left: -9999px;
|
|
1988
1988
|
height: 1px;
|
|
1989
1989
|
width: 1px;
|
|
1990
1990
|
overflow: hidden;
|
|
1991
1991
|
}
|
|
1992
|
-
.sd-toolbar-button[data-v-
|
|
1992
|
+
.sd-toolbar-button[data-v-22817fa7] {
|
|
1993
1993
|
padding: var(--sd-ui-toolbar-item-padding, 5px);
|
|
1994
1994
|
height: var(--sd-ui-toolbar-height, 32px);
|
|
1995
1995
|
max-height: var(--sd-ui-toolbar-height, 32px);
|
|
@@ -2005,21 +2005,21 @@ img[data-v-c95b2073] {
|
|
|
2005
2005
|
position: relative;
|
|
2006
2006
|
box-sizing: border-box;
|
|
2007
2007
|
}
|
|
2008
|
-
.sd-toolbar-button[data-v-
|
|
2008
|
+
.sd-toolbar-button[data-v-22817fa7]:hover {
|
|
2009
2009
|
background-color: var(--sd-ui-toolbar-button-hover-bg, var(--sd-ui-hover-bg, #dbdbdb));
|
|
2010
2010
|
}
|
|
2011
|
-
.sd-toolbar-button:hover .sd-toolbar-icon.high-contrast[data-v-
|
|
2011
|
+
.sd-toolbar-button:hover .sd-toolbar-icon.high-contrast[data-v-22817fa7] {
|
|
2012
2012
|
color: #fff;
|
|
2013
2013
|
}
|
|
2014
|
-
.sd-toolbar-button:hover.high-contrast[data-v-
|
|
2014
|
+
.sd-toolbar-button:hover.high-contrast[data-v-22817fa7] {
|
|
2015
2015
|
background-color: #000;
|
|
2016
2016
|
color: #fff;
|
|
2017
2017
|
}
|
|
2018
|
-
.sd-toolbar-button[data-v-
|
|
2019
|
-
.sd-active[data-v-
|
|
2018
|
+
.sd-toolbar-button[data-v-22817fa7]:active,
|
|
2019
|
+
.sd-active[data-v-22817fa7] {
|
|
2020
2020
|
background-color: var(--sd-ui-toolbar-button-active-bg, var(--sd-ui-active-bg, #c8d0d8));
|
|
2021
2021
|
}
|
|
2022
|
-
.sd-button-label[data-v-
|
|
2022
|
+
.sd-button-label[data-v-22817fa7] {
|
|
2023
2023
|
overflow: hidden;
|
|
2024
2024
|
width: 100%;
|
|
2025
2025
|
text-align: center;
|
|
@@ -2029,15 +2029,15 @@ img[data-v-c95b2073] {
|
|
|
2029
2029
|
font-size: var(--sd-ui-font-size-500, 15px);
|
|
2030
2030
|
margin: 5px;
|
|
2031
2031
|
}
|
|
2032
|
-
.sd-toolbar-icon + .sd-dropdown-caret[data-v-
|
|
2032
|
+
.sd-toolbar-icon + .sd-dropdown-caret[data-v-22817fa7] {
|
|
2033
2033
|
margin-left: 4px;
|
|
2034
2034
|
}
|
|
2035
|
-
.sd-toolbar-button.split[data-v-
|
|
2035
|
+
.sd-toolbar-button.split[data-v-22817fa7] {
|
|
2036
2036
|
padding: 0;
|
|
2037
2037
|
gap: 0;
|
|
2038
2038
|
}
|
|
2039
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2040
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2039
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7],
|
|
2040
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2041
2041
|
display: flex;
|
|
2042
2042
|
align-items: center;
|
|
2043
2043
|
justify-content: center;
|
|
@@ -2046,12 +2046,12 @@ img[data-v-c95b2073] {
|
|
|
2046
2046
|
position: relative;
|
|
2047
2047
|
z-index: 1;
|
|
2048
2048
|
}
|
|
2049
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2049
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7] {
|
|
2050
2050
|
padding: 0 3px 0 var(--sd-ui-toolbar-item-padding, 5px);
|
|
2051
2051
|
border-top-left-radius: var(--sd-ui-radius, 6px);
|
|
2052
2052
|
border-bottom-left-radius: var(--sd-ui-radius, 6px);
|
|
2053
2053
|
}
|
|
2054
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2054
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2055
2055
|
padding: 0 4px 0 2px;
|
|
2056
2056
|
border-top-right-radius: var(--sd-ui-radius, 6px);
|
|
2057
2057
|
border-bottom-right-radius: var(--sd-ui-radius, 6px);
|
|
@@ -2060,17 +2060,17 @@ img[data-v-c95b2073] {
|
|
|
2060
2060
|
/* Unified hover: hovering anywhere on the split button highlights the whole
|
|
2061
2061
|
button so it reads as a single grouped item, with a slightly darker tint
|
|
2062
2062
|
on the half the cursor is actually over. */
|
|
2063
|
-
.sd-toolbar-button.split[data-v-
|
|
2063
|
+
.sd-toolbar-button.split[data-v-22817fa7]:hover {
|
|
2064
2064
|
background-color: var(--sd-ui-toolbar-button-hover-bg, var(--sd-ui-hover-bg, #dbdbdb));
|
|
2065
2065
|
}
|
|
2066
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2067
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2066
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7]:hover,
|
|
2067
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7]:hover {
|
|
2068
2068
|
background-color: var(--sd-ui-toolbar-button-active-bg, var(--sd-ui-active-bg, #c8d0d8));
|
|
2069
2069
|
}
|
|
2070
2070
|
|
|
2071
2071
|
/* Subtle divider only appears on hover, hinting at the two affordances
|
|
2072
2072
|
without making them look like separate buttons at rest. */
|
|
2073
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2073
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2074
2074
|
content: '';
|
|
2075
2075
|
position: absolute;
|
|
2076
2076
|
left: 0;
|
|
@@ -2080,46 +2080,46 @@ img[data-v-c95b2073] {
|
|
|
2080
2080
|
background-color: transparent;
|
|
2081
2081
|
transition: background-color 0.15s ease-out;
|
|
2082
2082
|
}
|
|
2083
|
-
.sd-toolbar-button.split:hover .sd-toolbar-button__caret[data-v-
|
|
2083
|
+
.sd-toolbar-button.split:hover .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2084
2084
|
background-color: var(--sd-ui-border, rgba(71, 72, 74, 0.2));
|
|
2085
2085
|
}
|
|
2086
|
-
.sd-toolbar-button.split.sd-disabled[data-v-
|
|
2087
|
-
.sd-toolbar-button.split.sd-disabled[data-v-
|
|
2086
|
+
.sd-toolbar-button.split.sd-disabled[data-v-22817fa7],
|
|
2087
|
+
.sd-toolbar-button.split.sd-disabled[data-v-22817fa7]:hover {
|
|
2088
2088
|
background-color: initial;
|
|
2089
2089
|
}
|
|
2090
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-
|
|
2091
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2090
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-22817fa7],
|
|
2091
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2092
2092
|
cursor: default;
|
|
2093
2093
|
}
|
|
2094
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-
|
|
2095
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2094
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-22817fa7]:hover,
|
|
2095
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7]:hover {
|
|
2096
2096
|
background-color: initial;
|
|
2097
2097
|
}
|
|
2098
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2098
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2099
2099
|
background-color: transparent;
|
|
2100
2100
|
}
|
|
2101
|
-
.left[data-v-
|
|
2102
|
-
.right[data-v-
|
|
2101
|
+
.left[data-v-22817fa7],
|
|
2102
|
+
.right[data-v-22817fa7] {
|
|
2103
2103
|
width: 50%;
|
|
2104
2104
|
height: 100%;
|
|
2105
2105
|
background-color: #dbdbdb;
|
|
2106
2106
|
border-radius: 60%;
|
|
2107
2107
|
}
|
|
2108
|
-
.has-inline-text-input[data-v-
|
|
2108
|
+
.has-inline-text-input[data-v-22817fa7]:hover {
|
|
2109
2109
|
cursor: text;
|
|
2110
2110
|
}
|
|
2111
|
-
.sd-disabled[data-v-
|
|
2111
|
+
.sd-disabled[data-v-22817fa7] {
|
|
2112
2112
|
cursor: default;
|
|
2113
2113
|
}
|
|
2114
|
-
.sd-disabled[data-v-
|
|
2114
|
+
.sd-disabled[data-v-22817fa7]:hover {
|
|
2115
2115
|
cursor: default;
|
|
2116
2116
|
background-color: initial;
|
|
2117
2117
|
}
|
|
2118
|
-
.sd-disabled .sd-toolbar-icon[data-v-
|
|
2119
|
-
.sd-disabled .sd-button-label[data-v-
|
|
2118
|
+
.sd-disabled .sd-toolbar-icon[data-v-22817fa7],
|
|
2119
|
+
.sd-disabled .sd-button-label[data-v-22817fa7] {
|
|
2120
2120
|
opacity: 0.35;
|
|
2121
2121
|
}
|
|
2122
|
-
.button-text-input[data-v-
|
|
2122
|
+
.button-text-input[data-v-22817fa7] {
|
|
2123
2123
|
color: var(--sd-ui-toolbar-button-text, #47484a);
|
|
2124
2124
|
border-radius: 4px;
|
|
2125
2125
|
text-align: center;
|
|
@@ -2133,19 +2133,19 @@ img[data-v-c95b2073] {
|
|
|
2133
2133
|
border: 1px solid var(--sd-ui-border, #dbdbdb);
|
|
2134
2134
|
box-sizing: border-box;
|
|
2135
2135
|
}
|
|
2136
|
-
.button-text-input.high-contrast[data-v-
|
|
2136
|
+
.button-text-input.high-contrast[data-v-22817fa7] {
|
|
2137
2137
|
background-color: #fff;
|
|
2138
2138
|
}
|
|
2139
|
-
.button-text-input--font-size[data-v-
|
|
2139
|
+
.button-text-input--font-size[data-v-22817fa7] {
|
|
2140
2140
|
width: 36px;
|
|
2141
2141
|
}
|
|
2142
|
-
.button-text-input--font-family[data-v-
|
|
2142
|
+
.button-text-input--font-family[data-v-22817fa7] {
|
|
2143
2143
|
width: 88px;
|
|
2144
2144
|
}
|
|
2145
|
-
.button-text-input[data-v-
|
|
2145
|
+
.button-text-input[data-v-22817fa7]::placeholder {
|
|
2146
2146
|
color: var(--sd-ui-toolbar-button-text, #47484a);
|
|
2147
2147
|
}
|
|
2148
|
-
.sd-dropdown-caret[data-v-
|
|
2148
|
+
.sd-dropdown-caret[data-v-22817fa7] {
|
|
2149
2149
|
display: inline-flex;
|
|
2150
2150
|
align-items: center;
|
|
2151
2151
|
justify-content: center;
|
|
@@ -2154,16 +2154,16 @@ img[data-v-c95b2073] {
|
|
|
2154
2154
|
width: 10px;
|
|
2155
2155
|
height: 10px;
|
|
2156
2156
|
}
|
|
2157
|
-
.sd-toolbar-item--doc-mode-compact .sd-button-label[data-v-
|
|
2157
|
+
.sd-toolbar-item--doc-mode-compact .sd-button-label[data-v-22817fa7] {
|
|
2158
2158
|
display: none;
|
|
2159
2159
|
}
|
|
2160
|
-
.sd-toolbar-item--doc-mode-compact .sd-toolbar-icon[data-v-
|
|
2160
|
+
.sd-toolbar-item--doc-mode-compact .sd-toolbar-icon[data-v-22817fa7] {
|
|
2161
2161
|
margin-right: 5px;
|
|
2162
2162
|
}
|
|
2163
|
-
.sd-toolbar-item--linked-styles-compact[data-v-
|
|
2163
|
+
.sd-toolbar-item--linked-styles-compact[data-v-22817fa7] {
|
|
2164
2164
|
width: auto !important;
|
|
2165
2165
|
}
|
|
2166
|
-
.sd-toolbar-item--linked-styles-compact .sd-button-label[data-v-
|
|
2166
|
+
.sd-toolbar-item--linked-styles-compact .sd-button-label[data-v-22817fa7] {
|
|
2167
2167
|
display: none;
|
|
2168
2168
|
}
|
|
2169
2169
|
|
package/dist/style.layered.css
CHANGED
|
@@ -1976,20 +1976,20 @@ img[data-v-c95b2073] {
|
|
|
1976
1976
|
width: 16px;
|
|
1977
1977
|
}
|
|
1978
1978
|
|
|
1979
|
-
.sd-toolbar-item[data-v-
|
|
1979
|
+
.sd-toolbar-item[data-v-22817fa7] {
|
|
1980
1980
|
position: relative;
|
|
1981
1981
|
z-index: 1;
|
|
1982
1982
|
min-width: 30px;
|
|
1983
1983
|
margin: 0 calc(var(--sd-ui-toolbar-item-gap, 2px) / 2);
|
|
1984
1984
|
}
|
|
1985
|
-
.sd-visually-hidden[data-v-
|
|
1985
|
+
.sd-visually-hidden[data-v-22817fa7] {
|
|
1986
1986
|
position: absolute;
|
|
1987
1987
|
left: -9999px;
|
|
1988
1988
|
height: 1px;
|
|
1989
1989
|
width: 1px;
|
|
1990
1990
|
overflow: hidden;
|
|
1991
1991
|
}
|
|
1992
|
-
.sd-toolbar-button[data-v-
|
|
1992
|
+
.sd-toolbar-button[data-v-22817fa7] {
|
|
1993
1993
|
padding: var(--sd-ui-toolbar-item-padding, 5px);
|
|
1994
1994
|
height: var(--sd-ui-toolbar-height, 32px);
|
|
1995
1995
|
max-height: var(--sd-ui-toolbar-height, 32px);
|
|
@@ -2005,21 +2005,21 @@ img[data-v-c95b2073] {
|
|
|
2005
2005
|
position: relative;
|
|
2006
2006
|
box-sizing: border-box;
|
|
2007
2007
|
}
|
|
2008
|
-
.sd-toolbar-button[data-v-
|
|
2008
|
+
.sd-toolbar-button[data-v-22817fa7]:hover {
|
|
2009
2009
|
background-color: var(--sd-ui-toolbar-button-hover-bg, var(--sd-ui-hover-bg, #dbdbdb));
|
|
2010
2010
|
}
|
|
2011
|
-
.sd-toolbar-button:hover .sd-toolbar-icon.high-contrast[data-v-
|
|
2011
|
+
.sd-toolbar-button:hover .sd-toolbar-icon.high-contrast[data-v-22817fa7] {
|
|
2012
2012
|
color: #fff;
|
|
2013
2013
|
}
|
|
2014
|
-
.sd-toolbar-button:hover.high-contrast[data-v-
|
|
2014
|
+
.sd-toolbar-button:hover.high-contrast[data-v-22817fa7] {
|
|
2015
2015
|
background-color: #000;
|
|
2016
2016
|
color: #fff;
|
|
2017
2017
|
}
|
|
2018
|
-
.sd-toolbar-button[data-v-
|
|
2019
|
-
.sd-active[data-v-
|
|
2018
|
+
.sd-toolbar-button[data-v-22817fa7]:active,
|
|
2019
|
+
.sd-active[data-v-22817fa7] {
|
|
2020
2020
|
background-color: var(--sd-ui-toolbar-button-active-bg, var(--sd-ui-active-bg, #c8d0d8));
|
|
2021
2021
|
}
|
|
2022
|
-
.sd-button-label[data-v-
|
|
2022
|
+
.sd-button-label[data-v-22817fa7] {
|
|
2023
2023
|
overflow: hidden;
|
|
2024
2024
|
width: 100%;
|
|
2025
2025
|
text-align: center;
|
|
@@ -2029,15 +2029,15 @@ img[data-v-c95b2073] {
|
|
|
2029
2029
|
font-size: var(--sd-ui-font-size-500, 15px);
|
|
2030
2030
|
margin: 5px;
|
|
2031
2031
|
}
|
|
2032
|
-
.sd-toolbar-icon + .sd-dropdown-caret[data-v-
|
|
2032
|
+
.sd-toolbar-icon + .sd-dropdown-caret[data-v-22817fa7] {
|
|
2033
2033
|
margin-left: 4px;
|
|
2034
2034
|
}
|
|
2035
|
-
.sd-toolbar-button.split[data-v-
|
|
2035
|
+
.sd-toolbar-button.split[data-v-22817fa7] {
|
|
2036
2036
|
padding: 0;
|
|
2037
2037
|
gap: 0;
|
|
2038
2038
|
}
|
|
2039
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2040
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2039
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7],
|
|
2040
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2041
2041
|
display: flex;
|
|
2042
2042
|
align-items: center;
|
|
2043
2043
|
justify-content: center;
|
|
@@ -2046,12 +2046,12 @@ img[data-v-c95b2073] {
|
|
|
2046
2046
|
position: relative;
|
|
2047
2047
|
z-index: 1;
|
|
2048
2048
|
}
|
|
2049
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2049
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7] {
|
|
2050
2050
|
padding: 0 3px 0 var(--sd-ui-toolbar-item-padding, 5px);
|
|
2051
2051
|
border-top-left-radius: var(--sd-ui-radius, 6px);
|
|
2052
2052
|
border-bottom-left-radius: var(--sd-ui-radius, 6px);
|
|
2053
2053
|
}
|
|
2054
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2054
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2055
2055
|
padding: 0 4px 0 2px;
|
|
2056
2056
|
border-top-right-radius: var(--sd-ui-radius, 6px);
|
|
2057
2057
|
border-bottom-right-radius: var(--sd-ui-radius, 6px);
|
|
@@ -2060,17 +2060,17 @@ img[data-v-c95b2073] {
|
|
|
2060
2060
|
/* Unified hover: hovering anywhere on the split button highlights the whole
|
|
2061
2061
|
button so it reads as a single grouped item, with a slightly darker tint
|
|
2062
2062
|
on the half the cursor is actually over. */
|
|
2063
|
-
.sd-toolbar-button.split[data-v-
|
|
2063
|
+
.sd-toolbar-button.split[data-v-22817fa7]:hover {
|
|
2064
2064
|
background-color: var(--sd-ui-toolbar-button-hover-bg, var(--sd-ui-hover-bg, #dbdbdb));
|
|
2065
2065
|
}
|
|
2066
|
-
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-
|
|
2067
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2066
|
+
.sd-toolbar-button.split .sd-toolbar-button__main[data-v-22817fa7]:hover,
|
|
2067
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7]:hover {
|
|
2068
2068
|
background-color: var(--sd-ui-toolbar-button-active-bg, var(--sd-ui-active-bg, #c8d0d8));
|
|
2069
2069
|
}
|
|
2070
2070
|
|
|
2071
2071
|
/* Subtle divider only appears on hover, hinting at the two affordances
|
|
2072
2072
|
without making them look like separate buttons at rest. */
|
|
2073
|
-
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-
|
|
2073
|
+
.sd-toolbar-button.split .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2074
2074
|
content: '';
|
|
2075
2075
|
position: absolute;
|
|
2076
2076
|
left: 0;
|
|
@@ -2080,46 +2080,46 @@ img[data-v-c95b2073] {
|
|
|
2080
2080
|
background-color: transparent;
|
|
2081
2081
|
transition: background-color 0.15s ease-out;
|
|
2082
2082
|
}
|
|
2083
|
-
.sd-toolbar-button.split:hover .sd-toolbar-button__caret[data-v-
|
|
2083
|
+
.sd-toolbar-button.split:hover .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2084
2084
|
background-color: var(--sd-ui-border, rgba(71, 72, 74, 0.2));
|
|
2085
2085
|
}
|
|
2086
|
-
.sd-toolbar-button.split.sd-disabled[data-v-
|
|
2087
|
-
.sd-toolbar-button.split.sd-disabled[data-v-
|
|
2086
|
+
.sd-toolbar-button.split.sd-disabled[data-v-22817fa7],
|
|
2087
|
+
.sd-toolbar-button.split.sd-disabled[data-v-22817fa7]:hover {
|
|
2088
2088
|
background-color: initial;
|
|
2089
2089
|
}
|
|
2090
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-
|
|
2091
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2090
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-22817fa7],
|
|
2091
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7] {
|
|
2092
2092
|
cursor: default;
|
|
2093
2093
|
}
|
|
2094
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-
|
|
2095
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2094
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__main[data-v-22817fa7]:hover,
|
|
2095
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7]:hover {
|
|
2096
2096
|
background-color: initial;
|
|
2097
2097
|
}
|
|
2098
|
-
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-
|
|
2098
|
+
.sd-toolbar-button.split.sd-disabled .sd-toolbar-button__caret[data-v-22817fa7]::before {
|
|
2099
2099
|
background-color: transparent;
|
|
2100
2100
|
}
|
|
2101
|
-
.left[data-v-
|
|
2102
|
-
.right[data-v-
|
|
2101
|
+
.left[data-v-22817fa7],
|
|
2102
|
+
.right[data-v-22817fa7] {
|
|
2103
2103
|
width: 50%;
|
|
2104
2104
|
height: 100%;
|
|
2105
2105
|
background-color: #dbdbdb;
|
|
2106
2106
|
border-radius: 60%;
|
|
2107
2107
|
}
|
|
2108
|
-
.has-inline-text-input[data-v-
|
|
2108
|
+
.has-inline-text-input[data-v-22817fa7]:hover {
|
|
2109
2109
|
cursor: text;
|
|
2110
2110
|
}
|
|
2111
|
-
.sd-disabled[data-v-
|
|
2111
|
+
.sd-disabled[data-v-22817fa7] {
|
|
2112
2112
|
cursor: default;
|
|
2113
2113
|
}
|
|
2114
|
-
.sd-disabled[data-v-
|
|
2114
|
+
.sd-disabled[data-v-22817fa7]:hover {
|
|
2115
2115
|
cursor: default;
|
|
2116
2116
|
background-color: initial;
|
|
2117
2117
|
}
|
|
2118
|
-
.sd-disabled .sd-toolbar-icon[data-v-
|
|
2119
|
-
.sd-disabled .sd-button-label[data-v-
|
|
2118
|
+
.sd-disabled .sd-toolbar-icon[data-v-22817fa7],
|
|
2119
|
+
.sd-disabled .sd-button-label[data-v-22817fa7] {
|
|
2120
2120
|
opacity: 0.35;
|
|
2121
2121
|
}
|
|
2122
|
-
.button-text-input[data-v-
|
|
2122
|
+
.button-text-input[data-v-22817fa7] {
|
|
2123
2123
|
color: var(--sd-ui-toolbar-button-text, #47484a);
|
|
2124
2124
|
border-radius: 4px;
|
|
2125
2125
|
text-align: center;
|
|
@@ -2133,19 +2133,19 @@ img[data-v-c95b2073] {
|
|
|
2133
2133
|
border: 1px solid var(--sd-ui-border, #dbdbdb);
|
|
2134
2134
|
box-sizing: border-box;
|
|
2135
2135
|
}
|
|
2136
|
-
.button-text-input.high-contrast[data-v-
|
|
2136
|
+
.button-text-input.high-contrast[data-v-22817fa7] {
|
|
2137
2137
|
background-color: #fff;
|
|
2138
2138
|
}
|
|
2139
|
-
.button-text-input--font-size[data-v-
|
|
2139
|
+
.button-text-input--font-size[data-v-22817fa7] {
|
|
2140
2140
|
width: 36px;
|
|
2141
2141
|
}
|
|
2142
|
-
.button-text-input--font-family[data-v-
|
|
2142
|
+
.button-text-input--font-family[data-v-22817fa7] {
|
|
2143
2143
|
width: 88px;
|
|
2144
2144
|
}
|
|
2145
|
-
.button-text-input[data-v-
|
|
2145
|
+
.button-text-input[data-v-22817fa7]::placeholder {
|
|
2146
2146
|
color: var(--sd-ui-toolbar-button-text, #47484a);
|
|
2147
2147
|
}
|
|
2148
|
-
.sd-dropdown-caret[data-v-
|
|
2148
|
+
.sd-dropdown-caret[data-v-22817fa7] {
|
|
2149
2149
|
display: inline-flex;
|
|
2150
2150
|
align-items: center;
|
|
2151
2151
|
justify-content: center;
|
|
@@ -2154,16 +2154,16 @@ img[data-v-c95b2073] {
|
|
|
2154
2154
|
width: 10px;
|
|
2155
2155
|
height: 10px;
|
|
2156
2156
|
}
|
|
2157
|
-
.sd-toolbar-item--doc-mode-compact .sd-button-label[data-v-
|
|
2157
|
+
.sd-toolbar-item--doc-mode-compact .sd-button-label[data-v-22817fa7] {
|
|
2158
2158
|
display: none;
|
|
2159
2159
|
}
|
|
2160
|
-
.sd-toolbar-item--doc-mode-compact .sd-toolbar-icon[data-v-
|
|
2160
|
+
.sd-toolbar-item--doc-mode-compact .sd-toolbar-icon[data-v-22817fa7] {
|
|
2161
2161
|
margin-right: 5px;
|
|
2162
2162
|
}
|
|
2163
|
-
.sd-toolbar-item--linked-styles-compact[data-v-
|
|
2163
|
+
.sd-toolbar-item--linked-styles-compact[data-v-22817fa7] {
|
|
2164
2164
|
width: auto !important;
|
|
2165
2165
|
}
|
|
2166
|
-
.sd-toolbar-item--linked-styles-compact .sd-button-label[data-v-
|
|
2166
|
+
.sd-toolbar-item--linked-styles-compact .sd-button-label[data-v-22817fa7] {
|
|
2167
2167
|
display: none;
|
|
2168
2168
|
}
|
|
2169
2169
|
|
package/dist/superdoc.cjs
CHANGED
|
@@ -7443,9 +7443,10 @@ var useCommentsStore = defineStore("comments", () => {
|
|
|
7443
7443
|
*/
|
|
7444
7444
|
const getComment = (id) => {
|
|
7445
7445
|
if (id === void 0 || id === null) return null;
|
|
7446
|
-
const
|
|
7447
|
-
|
|
7448
|
-
|
|
7446
|
+
const byPrimaryId = (c) => c.commentId == id;
|
|
7447
|
+
const byAliasId = (c) => c.importedId == id || c.trackedChangeAnchorKey == id || c?.trackedChange && buildTrackedChangeImportedPositionId(c.importedId) == id;
|
|
7448
|
+
const findIn = (list) => list.find(byPrimaryId) ?? list.find(byAliasId);
|
|
7449
|
+
return findIn(commentsList.value) ?? findIn(reviewDirectoryList.value) ?? getTrackedChangeCommentByPositionAlias(id);
|
|
7449
7450
|
};
|
|
7450
7451
|
const getThreadParent = (comment) => {
|
|
7451
7452
|
if (!comment?.parentCommentId) return comment;
|
|
@@ -37087,7 +37088,11 @@ var _sfc_main$19 = {
|
|
|
37087
37088
|
var ToolbarButtonIcon_default = /*#__PURE__*/ require__plugin_vue_export_helper._plugin_vue_export_helper_default(_sfc_main$19, [["__scopeId", "data-v-d7d79424"]]);
|
|
37088
37089
|
//#endregion
|
|
37089
37090
|
//#region src/internal/toolbar/built-in/ToolbarButton.vue
|
|
37090
|
-
var _hoisted_1$14 = [
|
|
37091
|
+
var _hoisted_1$14 = [
|
|
37092
|
+
"role",
|
|
37093
|
+
"aria-label",
|
|
37094
|
+
"aria-disabled"
|
|
37095
|
+
];
|
|
37091
37096
|
var _hoisted_2$11 = ["data-item"];
|
|
37092
37097
|
var _hoisted_3$9 = ["data-item"];
|
|
37093
37098
|
var _hoisted_4$6 = {
|
|
@@ -37278,6 +37283,7 @@ var _sfc_main$18 = {
|
|
|
37278
37283
|
style: (0, vue.normalizeStyle)(getStyle.value),
|
|
37279
37284
|
role: __props.isOverflowItem ? "menuitem" : "button",
|
|
37280
37285
|
"aria-label": (0, vue.unref)(attributes).ariaLabel,
|
|
37286
|
+
"aria-disabled": (0, vue.unref)(disabled) ? "true" : void 0,
|
|
37281
37287
|
"data-sd-part": "toolbar-item",
|
|
37282
37288
|
onClick: handleOuterClick,
|
|
37283
37289
|
onKeydown: _cache[9] || (_cache[9] = (0, vue.withKeys)(($event) => onEnterKeydown($event), ["enter"])),
|
|
@@ -37379,7 +37385,7 @@ var _sfc_main$18 = {
|
|
|
37379
37385
|
};
|
|
37380
37386
|
}
|
|
37381
37387
|
};
|
|
37382
|
-
var ToolbarButton_default = /*#__PURE__*/ require__plugin_vue_export_helper._plugin_vue_export_helper_default(_sfc_main$18, [["__scopeId", "data-v-
|
|
37388
|
+
var ToolbarButton_default = /*#__PURE__*/ require__plugin_vue_export_helper._plugin_vue_export_helper_default(_sfc_main$18, [["__scopeId", "data-v-22817fa7"]]);
|
|
37383
37389
|
//#endregion
|
|
37384
37390
|
//#region src/internal/toolbar/built-in/ToolbarSeparator.vue
|
|
37385
37391
|
var _hoisted_1$13 = {
|
|
@@ -42535,7 +42541,7 @@ var BuiltInToolbar = class extends require_eventemitter3.import_eventemitter3.de
|
|
|
42535
42541
|
return true;
|
|
42536
42542
|
}
|
|
42537
42543
|
if (name === "search") {
|
|
42538
|
-
item.setDisabled(
|
|
42544
|
+
item.setDisabled(this.superdoc?.uiConfig?.search?.enabled !== true);
|
|
42539
42545
|
return true;
|
|
42540
42546
|
}
|
|
42541
42547
|
if (getBuiltInToolbarItem(name)?.disposition === "host-routed") {
|
|
@@ -43277,7 +43283,7 @@ var SuperDoc = class extends require_eventemitter3.import_eventemitter3.default
|
|
|
43277
43283
|
this.config.colors = shuffleArray(this.config.colors);
|
|
43278
43284
|
this.userColorMap = /* @__PURE__ */ new Map();
|
|
43279
43285
|
this.colorIndex = 0;
|
|
43280
|
-
this.version = "2.6.0-next.
|
|
43286
|
+
this.version = "2.6.0-next.3";
|
|
43281
43287
|
this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
|
|
43282
43288
|
this.superdocId = config.superdocId || require_uuid.v4();
|
|
43283
43289
|
this.colors = this.config.colors ?? [];
|
package/dist/superdoc.es.js
CHANGED
|
@@ -7442,9 +7442,10 @@ var useCommentsStore = defineStore("comments", () => {
|
|
|
7442
7442
|
*/
|
|
7443
7443
|
const getComment = (id) => {
|
|
7444
7444
|
if (id === void 0 || id === null) return null;
|
|
7445
|
-
const
|
|
7446
|
-
|
|
7447
|
-
|
|
7445
|
+
const byPrimaryId = (c) => c.commentId == id;
|
|
7446
|
+
const byAliasId = (c) => c.importedId == id || c.trackedChangeAnchorKey == id || c?.trackedChange && buildTrackedChangeImportedPositionId(c.importedId) == id;
|
|
7447
|
+
const findIn = (list) => list.find(byPrimaryId) ?? list.find(byAliasId);
|
|
7448
|
+
return findIn(commentsList.value) ?? findIn(reviewDirectoryList.value) ?? getTrackedChangeCommentByPositionAlias(id);
|
|
7448
7449
|
};
|
|
7449
7450
|
const getThreadParent = (comment) => {
|
|
7450
7451
|
if (!comment?.parentCommentId) return comment;
|
|
@@ -37046,7 +37047,11 @@ var ToolbarButtonIcon_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
|
|
|
37046
37047
|
}, [["__scopeId", "data-v-d7d79424"]]);
|
|
37047
37048
|
//#endregion
|
|
37048
37049
|
//#region src/internal/toolbar/built-in/ToolbarButton.vue
|
|
37049
|
-
var _hoisted_1$14 = [
|
|
37050
|
+
var _hoisted_1$14 = [
|
|
37051
|
+
"role",
|
|
37052
|
+
"aria-label",
|
|
37053
|
+
"aria-disabled"
|
|
37054
|
+
];
|
|
37050
37055
|
var _hoisted_2$11 = ["data-item"];
|
|
37051
37056
|
var _hoisted_3$9 = ["data-item"];
|
|
37052
37057
|
var _hoisted_4$6 = {
|
|
@@ -37237,6 +37242,7 @@ var ToolbarButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
37237
37242
|
style: normalizeStyle(getStyle.value),
|
|
37238
37243
|
role: __props.isOverflowItem ? "menuitem" : "button",
|
|
37239
37244
|
"aria-label": unref(attributes).ariaLabel,
|
|
37245
|
+
"aria-disabled": unref(disabled) ? "true" : void 0,
|
|
37240
37246
|
"data-sd-part": "toolbar-item",
|
|
37241
37247
|
onClick: handleOuterClick,
|
|
37242
37248
|
onKeydown: _cache[9] || (_cache[9] = withKeys(($event) => onEnterKeydown($event), ["enter"])),
|
|
@@ -37337,7 +37343,7 @@ var ToolbarButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default({
|
|
|
37337
37343
|
], 10, _hoisted_2$11)], 46, _hoisted_1$14);
|
|
37338
37344
|
};
|
|
37339
37345
|
}
|
|
37340
|
-
}, [["__scopeId", "data-v-
|
|
37346
|
+
}, [["__scopeId", "data-v-22817fa7"]]);
|
|
37341
37347
|
//#endregion
|
|
37342
37348
|
//#region src/internal/toolbar/built-in/ToolbarSeparator.vue
|
|
37343
37349
|
var _hoisted_1$13 = {
|
|
@@ -42468,7 +42474,7 @@ var BuiltInToolbar = class extends import_eventemitter3.default {
|
|
|
42468
42474
|
return true;
|
|
42469
42475
|
}
|
|
42470
42476
|
if (name === "search") {
|
|
42471
|
-
item.setDisabled(
|
|
42477
|
+
item.setDisabled(this.superdoc?.uiConfig?.search?.enabled !== true);
|
|
42472
42478
|
return true;
|
|
42473
42479
|
}
|
|
42474
42480
|
if (getBuiltInToolbarItem(name)?.disposition === "host-routed") {
|
|
@@ -43210,7 +43216,7 @@ var SuperDoc = class extends import_eventemitter3.default {
|
|
|
43210
43216
|
this.config.colors = shuffleArray(this.config.colors);
|
|
43211
43217
|
this.userColorMap = /* @__PURE__ */ new Map();
|
|
43212
43218
|
this.colorIndex = 0;
|
|
43213
|
-
this.version = "2.6.0-next.
|
|
43219
|
+
this.version = "2.6.0-next.3";
|
|
43214
43220
|
this.#log("🦋 [superdoc] Using SuperDoc version:", this.version);
|
|
43215
43221
|
this.superdocId = config.superdocId || v4();
|
|
43216
43222
|
this.colors = this.config.colors ?? [];
|