superdoc 2.12.0-next.2 → 2.12.0-next.20
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/{FindReplaceSurface-40AnrqWk.es.js → FindReplaceSurface-CVKgivXi.es.js} +8 -2
- package/dist/chunks/{FindReplaceSurface-0p7EtMZh.cjs → FindReplaceSurface-qi9OhbwN.cjs} +8 -2
- package/dist/chunks/{create-super-doc-ui-CBFGggZ2.cjs → create-super-doc-ui-BWWWNPP8.cjs} +180 -84
- package/dist/chunks/{create-super-doc-ui-C-AuEM9F.es.js → create-super-doc-ui-FnwgTkUv.es.js} +180 -84
- package/dist/collaboration-upgrade-engine.cjs +1 -1
- package/dist/collaboration-upgrade-engine.es.js +1 -1
- package/dist/layout-engine/contracts/src/column-layout.d.ts +58 -1
- package/dist/layout-engine/contracts/src/graphic-placement.d.ts +3 -0
- package/dist/layout-engine/contracts/src/index.d.ts +17 -3
- package/dist/layout-engine/contracts/src/run-helpers.d.ts +8 -0
- package/dist/layout-engine/layout-bridge/src/cache.d.ts +5 -4
- package/dist/layout-engine/layout-bridge/src/incrementalLayout.d.ts +4 -1
- package/dist/layout-engine/layout-bridge/src/note-marker-measure-key.d.ts +3 -0
- package/dist/layout-engine/layout-bridge/src/remeasure.d.ts +2 -1
- package/dist/layout-engine/layout-engine/src/column-balancing.d.ts +11 -7
- package/dist/layout-engine/layout-engine/src/layout-paragraph.d.ts +2 -6
- package/dist/layout-engine/painters/dom/src/derived-run-text-plane.d.ts +9 -0
- package/dist/layout-engine/painters/dom/src/index.d.ts +1 -0
- package/dist/layout-engine/painters/dom/src/page-content.d.ts +3 -1
- package/dist/layout-engine/painters/dom/src/persistent-page-surface.d.ts +2 -0
- package/dist/layout-engine/painters/dom/src/renderer.d.ts +9 -16
- package/dist/public/ui-react.cjs +56 -10
- package/dist/public/ui-react.es.js +56 -11
- package/dist/public/ui-vue.cjs +18 -1
- package/dist/public/ui-vue.es.js +18 -2
- package/dist/public/ui.cjs +1 -1
- package/dist/public/ui.es.js +1 -1
- package/dist/shared/font-system/src/index.d.ts +3 -1
- package/dist/shared/font-system/src/natural-line-metrics.d.ts +11 -0
- package/dist/shared/font-system/src/resolver.d.ts +14 -0
- package/dist/style.css +65 -65
- package/dist/style.layered.css +65 -65
- package/dist/superdoc/src/core/types/index.d.ts +35 -12
- package/dist/superdoc/src/public/index.d.cts +2 -0
- package/dist/superdoc/src/public/index.d.ts +1 -0
- package/dist/superdoc/src/public/ui/react.d.ts +12 -3
- package/dist/superdoc/src/public/ui/types.d.ts +81 -21
- package/dist/superdoc/src/public/ui/vue.d.ts +4 -2
- package/dist/superdoc/src/public/ui-react.d.cts +3 -0
- package/dist/superdoc/src/public/ui-react.d.ts +2 -2
- package/dist/superdoc/src/public/ui-vue.d.cts +1 -0
- package/dist/superdoc/src/public/ui-vue.d.ts +1 -1
- package/dist/superdoc/src/public/ui.d.cts +2 -0
- package/dist/superdoc/src/public/ui.d.ts +1 -1
- package/dist/superdoc.cjs +166 -14
- package/dist/superdoc.es.js +166 -14
- package/dist-cdn/style.layered.css +1 -1
- package/dist-cdn/superdoc.min.css +1 -1
- package/dist-cdn/superdoc.min.js +37 -37
- package/package.json +2 -2
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-FnwgTkUv.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
|
|
@@ -188,6 +188,22 @@ var EMPTY_SELECTION = {
|
|
|
188
188
|
function useSuperDocSelection() {
|
|
189
189
|
return useSuperDocSlice((ui) => ui.selection, EMPTY_SELECTION);
|
|
190
190
|
}
|
|
191
|
+
/** Subscribe to the current Search session. */
|
|
192
|
+
function useSuperDocSearch() {
|
|
193
|
+
return useSuperDocSlice((ui) => ui.search, {
|
|
194
|
+
query: "",
|
|
195
|
+
total: 0,
|
|
196
|
+
activeIndex: -1,
|
|
197
|
+
open: false,
|
|
198
|
+
available: false,
|
|
199
|
+
caseSensitive: false,
|
|
200
|
+
includeTrackedDeletions: false,
|
|
201
|
+
includeDeletedText: false,
|
|
202
|
+
regex: false,
|
|
203
|
+
canReplace: false,
|
|
204
|
+
canReplaceAll: false
|
|
205
|
+
});
|
|
206
|
+
}
|
|
191
207
|
/** Subscribe to the comments slice. */
|
|
192
208
|
function useSuperDocComments() {
|
|
193
209
|
return useSuperDocSlice((ui) => ui.comments, {
|
|
@@ -299,4 +315,4 @@ function useSuperDocZoom() {
|
|
|
299
315
|
});
|
|
300
316
|
}
|
|
301
317
|
//#endregion
|
|
302
|
-
export { provideSuperDocUI, useClearSuperDoc, useSetSuperDoc, useSuperDocCommand, useSuperDocComments, useSuperDocContentControls, useSuperDocDocument, useSuperDocFontOptions, useSuperDocFontSizeOptions, useSuperDocHost, useSuperDocSelection, useSuperDocSlice, useSuperDocToolbar, useSuperDocTrackChanges, useSuperDocUI, useSuperDocZoom };
|
|
318
|
+
export { provideSuperDocUI, useClearSuperDoc, useSetSuperDoc, useSuperDocCommand, useSuperDocComments, useSuperDocContentControls, useSuperDocDocument, useSuperDocFontOptions, useSuperDocFontSizeOptions, useSuperDocHost, useSuperDocSearch, useSuperDocSelection, useSuperDocSlice, useSuperDocToolbar, useSuperDocTrackChanges, useSuperDocUI, useSuperDocZoom };
|
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-BWWWNPP8.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 { n as shallowEqual, r as BUILT_IN_COMMAND_IDS, t as createSuperDocUI } from "../chunks/create-super-doc-ui-
|
|
1
|
+
import { n as shallowEqual, r as BUILT_IN_COMMAND_IDS, t as createSuperDocUI } from "../chunks/create-super-doc-ui-FnwgTkUv.es.js";
|
|
2
2
|
export { BUILT_IN_COMMAND_IDS, createSuperDocUI, shallowEqual };
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
export type { FontLoadStatus, FontFaceSource, FontFaceDescriptor, RegisteredFace, RegisterFaceResult, FontLoadResult, FontLoadSummary, FontFaceRequest, FontFaceLoadResult, FontAssetUrlContext, FontAssetUrlResolver, RequiredFace, } from './types.js';
|
|
17
17
|
export { SETTLED_STATUSES, isSettled } from './types.js';
|
|
18
|
-
export type { FontResolution, FontResolutionReason, FaceKey, HasFace, FontMeasureContext, ResolvePhysicalFamily, } from './resolver.js';
|
|
18
|
+
export type { FontResolution, FontResolutionReason, FaceKey, HasFace, FontMeasureCapabilities, FontMeasureContext, FontMeasureFace, ResolvePhysicalFamily, ResolveNaturalLineMultiplier, } from './resolver.js';
|
|
19
19
|
export { FontResolver, createFontResolver, insertFontFamilyBeforeGeneric } from './resolver.js';
|
|
20
20
|
export { resolveFontFamily, resolvePhysicalFamily, resolvePrimaryPhysicalFamily, resolvePhysicalFamilies, resolveFace, DEFAULT_FONT_MEASURE_CONTEXT, } from './resolver.js';
|
|
21
21
|
export { getFontConfigVersion, bumpFontConfigVersion, __resetFontConfigVersion } from './epoch.js';
|
|
@@ -26,6 +26,8 @@ export type { FontResolutionRecord, ResolvedFontEvidence, UsedFace } from './rep
|
|
|
26
26
|
export { buildFontReport, buildFaceReport } from './report.js';
|
|
27
27
|
export type { EmbeddingPolicy } from './os2.js';
|
|
28
28
|
export { parseEmbeddingPolicy } from './os2.js';
|
|
29
|
+
export type { SfntNaturalLineMetrics } from './natural-line-metrics.js';
|
|
30
|
+
export { parseSfntNaturalLineMetrics } from './natural-line-metrics.js';
|
|
29
31
|
export type { UnicodeCoverage, UnicodeRange } from './unicode-coverage.js';
|
|
30
32
|
export { parseUnicodeCoverage, textForUnicodeCoverage, unicodeCoverageIncludes } from './unicode-coverage.js';
|
|
31
33
|
export { CORE_SYMBOL_FALLBACK_COVERAGE, CORE_SYMBOL_FALLBACK_FAMILY, installCoreSymbolFallback, textForCoreSymbolFallback, } from './core-symbol-fallback.js';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface SfntNaturalLineMetrics {
|
|
2
|
+
unitsPerEm: number;
|
|
3
|
+
lineHeightUnits: number;
|
|
4
|
+
lineHeightMultiplier: number;
|
|
5
|
+
source: 'os2-typo' | 'legacy-win-hhea';
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Read a static SFNT face's design-unit baseline pitch without consulting browser font state.
|
|
9
|
+
* Variable fonts fail closed until their MVAR/axis instance can be applied to these metrics.
|
|
10
|
+
*/
|
|
11
|
+
export declare function parseSfntNaturalLineMetrics(bytes: ArrayBuffer | ArrayBufferView): SfntNaturalLineMetrics | null;
|
|
@@ -190,6 +190,8 @@ export declare function resolveFace(logicalFamily: string, face: FaceKey, hasFac
|
|
|
190
190
|
* never mapped onto a Bold/Italic run it cannot render unless the evidence explicitly allows it.
|
|
191
191
|
*/
|
|
192
192
|
export type ResolvePhysicalFamily = (cssFontFamily: string, face: FaceKey) => string;
|
|
193
|
+
/** Resolve a loaded physical face's deterministic baseline-pitch ratio for the given run text. */
|
|
194
|
+
export type ResolveNaturalLineMultiplier = (cssFontFamily: string, face: FaceKey, text: string) => number | undefined;
|
|
193
195
|
/**
|
|
194
196
|
* The per-document font identity that every measure and paint path needs, carried as ONE value so
|
|
195
197
|
* the resolver and its signature cannot travel separately and drift:
|
|
@@ -207,8 +209,20 @@ export type ResolvePhysicalFamily = (cssFontFamily: string, face: FaceKey) => st
|
|
|
207
209
|
*/
|
|
208
210
|
export interface FontMeasureContext {
|
|
209
211
|
resolvePhysical: ResolvePhysicalFamily;
|
|
212
|
+
resolveNaturalLineMultiplier?: ResolveNaturalLineMultiplier;
|
|
210
213
|
fontSignature: string;
|
|
211
214
|
}
|
|
215
|
+
/** Font face inputs whose measured digit advances can affect layout reuse. */
|
|
216
|
+
export interface FontMeasureFace {
|
|
217
|
+
family: string;
|
|
218
|
+
sizePx: number;
|
|
219
|
+
weight: FaceKey['weight'];
|
|
220
|
+
style: FaceKey['style'];
|
|
221
|
+
}
|
|
222
|
+
/** Immutable, invocation-scoped facts established by the active measurement surface. */
|
|
223
|
+
export interface FontMeasureCapabilities {
|
|
224
|
+
hasTabularDigits(face: FontMeasureFace): boolean;
|
|
225
|
+
}
|
|
212
226
|
/**
|
|
213
227
|
* The global-resolver / empty-signature context. The behavior-preserving default for outer entry
|
|
214
228
|
* points and non-document callers (tests, the global measure path). Frozen so a stray
|
package/dist/style.css
CHANGED
|
@@ -1818,11 +1818,11 @@ img[data-v-c95b2073] {
|
|
|
1818
1818
|
pointer-events: auto;
|
|
1819
1819
|
}
|
|
1820
1820
|
|
|
1821
|
-
.superdoc[data-v-
|
|
1821
|
+
.superdoc[data-v-770204b4] {
|
|
1822
1822
|
display: flex;
|
|
1823
1823
|
position: relative;
|
|
1824
1824
|
}
|
|
1825
|
-
.sd-visually-hidden[data-v-
|
|
1825
|
+
.sd-visually-hidden[data-v-770204b4] {
|
|
1826
1826
|
position: absolute;
|
|
1827
1827
|
width: 1px;
|
|
1828
1828
|
height: 1px;
|
|
@@ -1833,14 +1833,14 @@ img[data-v-c95b2073] {
|
|
|
1833
1833
|
white-space: nowrap;
|
|
1834
1834
|
border: 0;
|
|
1835
1835
|
}
|
|
1836
|
-
.superdoc__mutation-status[data-v-
|
|
1836
|
+
.superdoc__mutation-status[data-v-770204b4] {
|
|
1837
1837
|
position: sticky;
|
|
1838
1838
|
z-index: 10;
|
|
1839
1839
|
top: 12px;
|
|
1840
1840
|
height: 0;
|
|
1841
1841
|
pointer-events: none;
|
|
1842
1842
|
}
|
|
1843
|
-
.superdoc__edit-rejected-status[data-v-
|
|
1843
|
+
.superdoc__edit-rejected-status[data-v-770204b4] {
|
|
1844
1844
|
position: absolute;
|
|
1845
1845
|
top: 0;
|
|
1846
1846
|
left: 50%;
|
|
@@ -1858,30 +1858,30 @@ img[data-v-c95b2073] {
|
|
|
1858
1858
|
line-height: 20px;
|
|
1859
1859
|
pointer-events: none;
|
|
1860
1860
|
}
|
|
1861
|
-
.right-sidebar[data-v-
|
|
1861
|
+
.right-sidebar[data-v-770204b4] {
|
|
1862
1862
|
min-width: 320px;
|
|
1863
1863
|
height: 100%;
|
|
1864
1864
|
}
|
|
1865
|
-
.floating-comments[data-v-
|
|
1865
|
+
.floating-comments[data-v-770204b4] {
|
|
1866
1866
|
min-width: 300px;
|
|
1867
1867
|
width: 300px;
|
|
1868
1868
|
height: 100%;
|
|
1869
1869
|
overflow: visible;
|
|
1870
1870
|
}
|
|
1871
|
-
.superdoc__layers[data-v-
|
|
1871
|
+
.superdoc__layers[data-v-770204b4] {
|
|
1872
1872
|
height: 100%;
|
|
1873
1873
|
position: relative;
|
|
1874
1874
|
box-sizing: border-box;
|
|
1875
1875
|
}
|
|
1876
|
-
.superdoc__document[data-v-
|
|
1876
|
+
.superdoc__document[data-v-770204b4] {
|
|
1877
1877
|
width: 100%;
|
|
1878
1878
|
position: relative;
|
|
1879
1879
|
}
|
|
1880
|
-
.superdoc__sub-document[data-v-
|
|
1880
|
+
.superdoc__sub-document[data-v-770204b4] {
|
|
1881
1881
|
width: 100%;
|
|
1882
1882
|
position: relative;
|
|
1883
1883
|
}
|
|
1884
|
-
.superdoc__selection-layer[data-v-
|
|
1884
|
+
.superdoc__selection-layer[data-v-770204b4] {
|
|
1885
1885
|
position: absolute;
|
|
1886
1886
|
min-width: 100%;
|
|
1887
1887
|
min-height: 100%;
|
|
@@ -1892,13 +1892,13 @@ img[data-v-c95b2073] {
|
|
|
1892
1892
|
/* SD-3497: PDF whiteboard overlay sits above the rendered PDF canvas but below
|
|
1893
1893
|
the PDF comment anchors (z-index 6 in PdfCommentsLayer) so anchors stay
|
|
1894
1894
|
clickable, and below the selection layer (z-index 10). */
|
|
1895
|
-
.superdoc__whiteboard-layer[data-v-
|
|
1895
|
+
.superdoc__whiteboard-layer[data-v-770204b4] {
|
|
1896
1896
|
z-index: 4;
|
|
1897
1897
|
}
|
|
1898
|
-
.superdoc__temp-selection[data-v-
|
|
1898
|
+
.superdoc__temp-selection[data-v-770204b4] {
|
|
1899
1899
|
position: absolute;
|
|
1900
1900
|
}
|
|
1901
|
-
.superdoc__right-sidebar[data-v-
|
|
1901
|
+
.superdoc__right-sidebar[data-v-770204b4] {
|
|
1902
1902
|
width: 320px;
|
|
1903
1903
|
min-width: 320px;
|
|
1904
1904
|
padding: 0 10px;
|
|
@@ -1906,7 +1906,7 @@ img[data-v-c95b2073] {
|
|
|
1906
1906
|
position: relative;
|
|
1907
1907
|
z-index: 2;
|
|
1908
1908
|
}
|
|
1909
|
-
.superdoc__compact-comment-popover[data-v-
|
|
1909
|
+
.superdoc__compact-comment-popover[data-v-770204b4] {
|
|
1910
1910
|
position: absolute;
|
|
1911
1911
|
top: 12px;
|
|
1912
1912
|
right: 12px;
|
|
@@ -1915,14 +1915,14 @@ img[data-v-c95b2073] {
|
|
|
1915
1915
|
}
|
|
1916
1916
|
|
|
1917
1917
|
/* Tools styles */
|
|
1918
|
-
.tools[data-v-
|
|
1918
|
+
.tools[data-v-770204b4] {
|
|
1919
1919
|
position: absolute;
|
|
1920
1920
|
z-index: 3;
|
|
1921
1921
|
display: flex;
|
|
1922
1922
|
flex-direction: column;
|
|
1923
1923
|
gap: var(--sd-ui-tools-gap, 6px);
|
|
1924
1924
|
}
|
|
1925
|
-
.tools-item[data-v-
|
|
1925
|
+
.tools-item[data-v-770204b4] {
|
|
1926
1926
|
display: flex;
|
|
1927
1927
|
align-items: center;
|
|
1928
1928
|
justify-content: center;
|
|
@@ -1933,10 +1933,10 @@ img[data-v-c95b2073] {
|
|
|
1933
1933
|
cursor: pointer;
|
|
1934
1934
|
position: relative;
|
|
1935
1935
|
}
|
|
1936
|
-
.tools-item i[data-v-
|
|
1936
|
+
.tools-item i[data-v-770204b4] {
|
|
1937
1937
|
cursor: pointer;
|
|
1938
1938
|
}
|
|
1939
|
-
.superdoc__tools-icon[data-v-
|
|
1939
|
+
.superdoc__tools-icon[data-v-770204b4] {
|
|
1940
1940
|
width: var(--sd-ui-tools-icon-size, 20px);
|
|
1941
1941
|
height: var(--sd-ui-tools-icon-size, 20px);
|
|
1942
1942
|
flex-shrink: 0;
|
|
@@ -1951,22 +1951,22 @@ img[data-v-c95b2073] {
|
|
|
1951
1951
|
|
|
1952
1952
|
/* 834px is iPad screen size in portrait orientation */
|
|
1953
1953
|
@media (max-width: 834px) {
|
|
1954
|
-
.superdoc .superdoc__layers[data-v-
|
|
1954
|
+
.superdoc .superdoc__layers[data-v-770204b4] {
|
|
1955
1955
|
margin: 0;
|
|
1956
1956
|
border: 0 !important;
|
|
1957
1957
|
box-shadow: none;
|
|
1958
1958
|
}
|
|
1959
|
-
.superdoc__sub-document[data-v-
|
|
1959
|
+
.superdoc__sub-document[data-v-770204b4] {
|
|
1960
1960
|
max-width: 100%;
|
|
1961
1961
|
}
|
|
1962
|
-
.superdoc__right-sidebar[data-v-
|
|
1962
|
+
.superdoc__right-sidebar[data-v-770204b4] {
|
|
1963
1963
|
padding: 10px;
|
|
1964
1964
|
position: relative;
|
|
1965
1965
|
}
|
|
1966
1966
|
}
|
|
1967
1967
|
|
|
1968
1968
|
/* AI Writer styles */
|
|
1969
|
-
.ai-writer-container[data-v-
|
|
1969
|
+
.ai-writer-container[data-v-770204b4] {
|
|
1970
1970
|
position: fixed;
|
|
1971
1971
|
z-index: 1000;
|
|
1972
1972
|
background: white;
|
|
@@ -1982,10 +1982,10 @@ img[data-v-c95b2073] {
|
|
|
1982
1982
|
transform: translateY(-50%);
|
|
1983
1983
|
z-index: 50;
|
|
1984
1984
|
} */
|
|
1985
|
-
.ai-tool > svg[data-v-
|
|
1985
|
+
.ai-tool > svg[data-v-770204b4] {
|
|
1986
1986
|
fill: transparent;
|
|
1987
1987
|
}
|
|
1988
|
-
.ai-tool[data-v-
|
|
1988
|
+
.ai-tool[data-v-770204b4]::before {
|
|
1989
1989
|
content: '';
|
|
1990
1990
|
position: absolute;
|
|
1991
1991
|
width: 20px;
|
|
@@ -2006,7 +2006,7 @@ img[data-v-c95b2073] {
|
|
|
2006
2006
|
filter: brightness(1.2);
|
|
2007
2007
|
transition: filter 0.2s ease;
|
|
2008
2008
|
}
|
|
2009
|
-
.ai-tool[data-v-
|
|
2009
|
+
.ai-tool[data-v-770204b4]:hover::before {
|
|
2010
2010
|
filter: brightness(1.3);
|
|
2011
2011
|
}
|
|
2012
2012
|
|
|
@@ -3016,7 +3016,7 @@ img[data-v-c95b2073] {
|
|
|
3016
3016
|
background: var(--sd-ui-password-prompt-submit-hover-bg, var(--sd-ui-action-hover));
|
|
3017
3017
|
}
|
|
3018
3018
|
|
|
3019
|
-
.sd-find-replace[data-v-
|
|
3019
|
+
.sd-find-replace[data-v-5dba4c36] {
|
|
3020
3020
|
display: flex;
|
|
3021
3021
|
flex-direction: column;
|
|
3022
3022
|
gap: var(--sd-ui-find-replace-gap, 6px);
|
|
@@ -3024,7 +3024,7 @@ img[data-v-c95b2073] {
|
|
|
3024
3024
|
so it needs room to breathe before the query starts truncating. */
|
|
3025
3025
|
min-width: var(--sd-ui-find-replace-min-width, 380px);
|
|
3026
3026
|
}
|
|
3027
|
-
.sd-find-replace__row[data-v-
|
|
3027
|
+
.sd-find-replace__row[data-v-5dba4c36] {
|
|
3028
3028
|
display: flex;
|
|
3029
3029
|
align-items: center;
|
|
3030
3030
|
gap: var(--sd-ui-find-replace-gap, 6px);
|
|
@@ -3032,13 +3032,13 @@ img[data-v-c95b2073] {
|
|
|
3032
3032
|
|
|
3033
3033
|
/* Mirrors the expander's footprint so the replace field and the error line
|
|
3034
3034
|
align with the find field. */
|
|
3035
|
-
.sd-find-replace__row-indent[data-v-
|
|
3035
|
+
.sd-find-replace__row-indent[data-v-5dba4c36] {
|
|
3036
3036
|
flex: 0 0 var(--sd-ui-find-replace-expander-size, 24px);
|
|
3037
3037
|
}
|
|
3038
3038
|
|
|
3039
3039
|
/* The field carries the border; the input inside is naked so the count and
|
|
3040
3040
|
the query toggles sit visually inside the control. */
|
|
3041
|
-
.sd-find-replace__field[data-v-
|
|
3041
|
+
.sd-find-replace__field[data-v-5dba4c36] {
|
|
3042
3042
|
flex: 1;
|
|
3043
3043
|
min-width: 0;
|
|
3044
3044
|
display: flex;
|
|
@@ -3053,24 +3053,24 @@ img[data-v-c95b2073] {
|
|
|
3053
3053
|
border-color 0.12s ease-out,
|
|
3054
3054
|
box-shadow 0.12s ease-out;
|
|
3055
3055
|
}
|
|
3056
|
-
.sd-find-replace__field[data-v-
|
|
3056
|
+
.sd-find-replace__field[data-v-5dba4c36]:focus-within {
|
|
3057
3057
|
border-color: var(--sd-ui-find-replace-input-focus-border, var(--sd-ui-action));
|
|
3058
3058
|
box-shadow: 0 0 0 3px
|
|
3059
3059
|
var(--sd-ui-find-replace-input-focus-ring, color-mix(in srgb, var(--sd-ui-action) 15%, transparent));
|
|
3060
3060
|
}
|
|
3061
|
-
.sd-find-replace__field--error[data-v-
|
|
3062
|
-
.sd-find-replace__field--error[data-v-
|
|
3061
|
+
.sd-find-replace__field--error[data-v-5dba4c36],
|
|
3062
|
+
.sd-find-replace__field--error[data-v-5dba4c36]:focus-within {
|
|
3063
3063
|
border-color: var(--sd-ui-find-replace-error-color, #b3261e);
|
|
3064
3064
|
}
|
|
3065
|
-
.sd-find-replace__field--error[data-v-
|
|
3065
|
+
.sd-find-replace__field--error[data-v-5dba4c36]:focus-within {
|
|
3066
3066
|
box-shadow: 0 0 0 3px color-mix(in srgb, var(--sd-ui-find-replace-error-color, #b3261e) 12%, transparent);
|
|
3067
3067
|
}
|
|
3068
|
-
.sd-find-replace__search-icon[data-v-
|
|
3068
|
+
.sd-find-replace__search-icon[data-v-5dba4c36] {
|
|
3069
3069
|
color: var(--sd-ui-find-replace-search-icon-color, #9ca3af);
|
|
3070
3070
|
flex-shrink: 0;
|
|
3071
3071
|
margin-right: 6px;
|
|
3072
3072
|
}
|
|
3073
|
-
.sd-find-replace__input[data-v-
|
|
3073
|
+
.sd-find-replace__input[data-v-5dba4c36] {
|
|
3074
3074
|
flex: 1;
|
|
3075
3075
|
min-width: 0;
|
|
3076
3076
|
height: 100%;
|
|
@@ -3082,7 +3082,7 @@ img[data-v-c95b2073] {
|
|
|
3082
3082
|
border: none;
|
|
3083
3083
|
outline: none;
|
|
3084
3084
|
}
|
|
3085
|
-
.sd-find-replace__count[data-v-
|
|
3085
|
+
.sd-find-replace__count[data-v-5dba4c36] {
|
|
3086
3086
|
font-size: var(--sd-ui-find-replace-count-font-size, 12px);
|
|
3087
3087
|
color: var(--sd-ui-find-replace-count-color, #6b7280);
|
|
3088
3088
|
pointer-events: none;
|
|
@@ -3092,23 +3092,23 @@ img[data-v-c95b2073] {
|
|
|
3092
3092
|
padding: 0 5px 0 4px;
|
|
3093
3093
|
flex-shrink: 0;
|
|
3094
3094
|
}
|
|
3095
|
-
.sd-find-replace__divider[data-v-
|
|
3095
|
+
.sd-find-replace__divider[data-v-5dba4c36] {
|
|
3096
3096
|
width: 1px;
|
|
3097
3097
|
height: 16px;
|
|
3098
3098
|
margin: 0 4px;
|
|
3099
3099
|
background: var(--sd-ui-find-replace-input-border, var(--sd-ui-border));
|
|
3100
3100
|
flex-shrink: 0;
|
|
3101
3101
|
}
|
|
3102
|
-
.sd-find-replace__nav[data-v-
|
|
3102
|
+
.sd-find-replace__nav[data-v-5dba4c36] {
|
|
3103
3103
|
display: flex;
|
|
3104
3104
|
align-items: center;
|
|
3105
3105
|
gap: var(--sd-ui-find-replace-nav-gap, 2px);
|
|
3106
3106
|
flex-shrink: 0;
|
|
3107
3107
|
}
|
|
3108
|
-
.sd-find-replace__nav--actions[data-v-
|
|
3108
|
+
.sd-find-replace__nav--actions[data-v-5dba4c36] {
|
|
3109
3109
|
gap: var(--sd-ui-find-replace-gap, 6px);
|
|
3110
3110
|
}
|
|
3111
|
-
.sd-find-replace__btn[data-v-
|
|
3111
|
+
.sd-find-replace__btn[data-v-5dba4c36] {
|
|
3112
3112
|
display: inline-flex;
|
|
3113
3113
|
align-items: center;
|
|
3114
3114
|
justify-content: center;
|
|
@@ -3123,47 +3123,47 @@ img[data-v-c95b2073] {
|
|
|
3123
3123
|
border-color 0.12s ease-out,
|
|
3124
3124
|
transform 90ms ease-out;
|
|
3125
3125
|
}
|
|
3126
|
-
.sd-find-replace__btn[data-v-
|
|
3126
|
+
.sd-find-replace__btn[data-v-5dba4c36]:active:not(:disabled) {
|
|
3127
3127
|
transform: scale(0.96);
|
|
3128
3128
|
}
|
|
3129
|
-
.sd-find-replace__btn[data-v-
|
|
3129
|
+
.sd-find-replace__btn[data-v-5dba4c36]:focus-visible {
|
|
3130
3130
|
outline: 2px solid var(--sd-ui-action);
|
|
3131
3131
|
outline-offset: 1px;
|
|
3132
3132
|
}
|
|
3133
|
-
.sd-find-replace__btn[data-v-
|
|
3133
|
+
.sd-find-replace__btn[data-v-5dba4c36]:disabled {
|
|
3134
3134
|
opacity: var(--sd-ui-find-replace-btn-disabled-opacity, 0.4);
|
|
3135
3135
|
cursor: not-allowed;
|
|
3136
3136
|
}
|
|
3137
|
-
.sd-find-replace__btn--icon[data-v-
|
|
3137
|
+
.sd-find-replace__btn--icon[data-v-5dba4c36] {
|
|
3138
3138
|
width: var(--sd-ui-find-replace-btn-size, 28px);
|
|
3139
3139
|
height: var(--sd-ui-find-replace-btn-size, 28px);
|
|
3140
3140
|
border-radius: var(--sd-ui-find-replace-btn-radius, 6px);
|
|
3141
3141
|
color: var(--sd-ui-find-replace-btn-color, #4b5563);
|
|
3142
3142
|
}
|
|
3143
|
-
.sd-find-replace__btn--icon[data-v-
|
|
3143
|
+
.sd-find-replace__btn--icon[data-v-5dba4c36]:hover:not(:disabled) {
|
|
3144
3144
|
background: var(--sd-ui-find-replace-btn-hover-bg, color-mix(in srgb, currentColor 8%, transparent));
|
|
3145
3145
|
}
|
|
3146
|
-
.sd-find-replace__btn--expander[data-v-
|
|
3146
|
+
.sd-find-replace__btn--expander[data-v-5dba4c36] {
|
|
3147
3147
|
width: var(--sd-ui-find-replace-expander-size, 24px);
|
|
3148
3148
|
height: var(--sd-ui-find-replace-expander-size, 24px);
|
|
3149
3149
|
border-radius: var(--sd-ui-find-replace-btn-radius, 6px);
|
|
3150
3150
|
color: var(--sd-ui-find-replace-count-color, #6b7280);
|
|
3151
3151
|
flex-shrink: 0;
|
|
3152
3152
|
}
|
|
3153
|
-
.sd-find-replace__btn--expander[data-v-
|
|
3153
|
+
.sd-find-replace__btn--expander[data-v-5dba4c36]:hover:not(:disabled) {
|
|
3154
3154
|
background: var(--sd-ui-find-replace-btn-hover-bg, color-mix(in srgb, currentColor 8%, transparent));
|
|
3155
3155
|
color: var(--sd-ui-find-replace-btn-color, var(--sd-ui-text));
|
|
3156
3156
|
}
|
|
3157
|
-
.sd-find-replace__btn--expander svg[data-v-
|
|
3157
|
+
.sd-find-replace__btn--expander svg[data-v-5dba4c36] {
|
|
3158
3158
|
transition: transform 0.16s ease-out;
|
|
3159
3159
|
}
|
|
3160
|
-
.sd-find-replace__btn--expander-open svg[data-v-
|
|
3160
|
+
.sd-find-replace__btn--expander-open svg[data-v-5dba4c36] {
|
|
3161
3161
|
transform: rotate(90deg);
|
|
3162
3162
|
}
|
|
3163
3163
|
|
|
3164
3164
|
/* Query-scoped toggles inside the field (match case / diacritics / regex).
|
|
3165
3165
|
Kept compact so they never crowd the query text. */
|
|
3166
|
-
.sd-find-replace__btn--toggle[data-v-
|
|
3166
|
+
.sd-find-replace__btn--toggle[data-v-5dba4c36] {
|
|
3167
3167
|
height: 20px;
|
|
3168
3168
|
min-width: 20px;
|
|
3169
3169
|
padding: var(--sd-ui-find-replace-btn-toggle-padding, 0 3px);
|
|
@@ -3174,15 +3174,15 @@ img[data-v-c95b2073] {
|
|
|
3174
3174
|
color: var(--sd-ui-find-replace-count-color, #6b7280);
|
|
3175
3175
|
flex-shrink: 0;
|
|
3176
3176
|
}
|
|
3177
|
-
.sd-find-replace__btn--toggle + .sd-find-replace__btn--toggle[data-v-
|
|
3177
|
+
.sd-find-replace__btn--toggle + .sd-find-replace__btn--toggle[data-v-5dba4c36] {
|
|
3178
3178
|
margin-left: 1px;
|
|
3179
3179
|
}
|
|
3180
|
-
.sd-find-replace__btn--toggle[data-v-
|
|
3180
|
+
.sd-find-replace__btn--toggle[data-v-5dba4c36]:hover:not(:disabled) {
|
|
3181
3181
|
background: var(--sd-ui-find-replace-btn-hover-bg, color-mix(in srgb, currentColor 8%, transparent));
|
|
3182
3182
|
color: var(--sd-ui-find-replace-btn-color, var(--sd-ui-text));
|
|
3183
3183
|
}
|
|
3184
|
-
.sd-find-replace__btn--active[data-v-
|
|
3185
|
-
.sd-find-replace__btn--active[data-v-
|
|
3184
|
+
.sd-find-replace__btn--active[data-v-5dba4c36],
|
|
3185
|
+
.sd-find-replace__btn--active[data-v-5dba4c36]:hover:not(:disabled) {
|
|
3186
3186
|
background: var(--sd-ui-find-replace-toggle-active-bg, color-mix(in srgb, var(--sd-ui-action) 12%, transparent));
|
|
3187
3187
|
border-color: var(
|
|
3188
3188
|
--sd-ui-find-replace-toggle-active-border,
|
|
@@ -3190,7 +3190,7 @@ img[data-v-c95b2073] {
|
|
|
3190
3190
|
);
|
|
3191
3191
|
color: var(--sd-ui-find-replace-toggle-active-color, var(--sd-ui-action));
|
|
3192
3192
|
}
|
|
3193
|
-
.sd-find-replace__btn--action[data-v-
|
|
3193
|
+
.sd-find-replace__btn--action[data-v-5dba4c36] {
|
|
3194
3194
|
height: var(--sd-ui-find-replace-btn-size, 28px);
|
|
3195
3195
|
padding: var(--sd-ui-find-replace-action-btn-padding, 0 12px);
|
|
3196
3196
|
font-size: var(--sd-ui-find-replace-count-font-size, 13px);
|
|
@@ -3199,13 +3199,13 @@ img[data-v-c95b2073] {
|
|
|
3199
3199
|
background: var(--sd-ui-find-replace-action-btn-bg, var(--sd-ui-action));
|
|
3200
3200
|
color: var(--sd-ui-find-replace-action-btn-color, #fff);
|
|
3201
3201
|
}
|
|
3202
|
-
.sd-find-replace__btn--action[data-v-
|
|
3202
|
+
.sd-find-replace__btn--action[data-v-5dba4c36]:hover:not(:disabled) {
|
|
3203
3203
|
background: var(
|
|
3204
3204
|
--sd-ui-find-replace-action-btn-hover-bg,
|
|
3205
3205
|
color-mix(in srgb, var(--sd-ui-find-replace-action-btn-bg, var(--sd-ui-action)) 88%, #000)
|
|
3206
3206
|
);
|
|
3207
3207
|
}
|
|
3208
|
-
.sd-find-replace__error[data-v-
|
|
3208
|
+
.sd-find-replace__error[data-v-5dba4c36] {
|
|
3209
3209
|
display: flex;
|
|
3210
3210
|
align-items: center;
|
|
3211
3211
|
gap: var(--sd-ui-find-replace-gap, 6px);
|
|
@@ -3213,12 +3213,12 @@ img[data-v-c95b2073] {
|
|
|
3213
3213
|
font-size: var(--sd-ui-find-replace-error-font-size, 12px);
|
|
3214
3214
|
letter-spacing: 0.01em;
|
|
3215
3215
|
padding: var(--sd-ui-find-replace-error-padding, 0 2px);
|
|
3216
|
-
animation: sd-find-replace-error-in-
|
|
3216
|
+
animation: sd-find-replace-error-in-5dba4c36 0.16s ease-out;
|
|
3217
3217
|
}
|
|
3218
|
-
.sd-find-replace__error-text[data-v-
|
|
3218
|
+
.sd-find-replace__error-text[data-v-5dba4c36] {
|
|
3219
3219
|
padding-left: 4px;
|
|
3220
3220
|
}
|
|
3221
|
-
@keyframes sd-find-replace-error-in-
|
|
3221
|
+
@keyframes sd-find-replace-error-in-5dba4c36 {
|
|
3222
3222
|
from {
|
|
3223
3223
|
opacity: 0;
|
|
3224
3224
|
transform: translateY(-2px);
|
|
@@ -3229,15 +3229,15 @@ to {
|
|
|
3229
3229
|
}
|
|
3230
3230
|
}
|
|
3231
3231
|
@media (prefers-reduced-motion: reduce) {
|
|
3232
|
-
.sd-find-replace__field[data-v-
|
|
3233
|
-
.sd-find-replace__btn[data-v-
|
|
3234
|
-
.sd-find-replace__btn--expander svg[data-v-
|
|
3232
|
+
.sd-find-replace__field[data-v-5dba4c36],
|
|
3233
|
+
.sd-find-replace__btn[data-v-5dba4c36],
|
|
3234
|
+
.sd-find-replace__btn--expander svg[data-v-5dba4c36] {
|
|
3235
3235
|
transition: none;
|
|
3236
3236
|
}
|
|
3237
|
-
.sd-find-replace__btn[data-v-
|
|
3237
|
+
.sd-find-replace__btn[data-v-5dba4c36]:active:not(:disabled) {
|
|
3238
3238
|
transform: none;
|
|
3239
3239
|
}
|
|
3240
|
-
.sd-find-replace__error[data-v-
|
|
3240
|
+
.sd-find-replace__error[data-v-5dba4c36] {
|
|
3241
3241
|
animation: none;
|
|
3242
3242
|
}
|
|
3243
3243
|
}
|