@docmentis/udoc-viewer 0.6.21 → 0.6.23
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/package.json +1 -1
- package/dist/src/UDocClient.d.ts +22 -0
- package/dist/src/UDocClient.d.ts.map +1 -1
- package/dist/src/UDocClient.js +25 -1
- package/dist/src/UDocClient.js.map +1 -1
- package/dist/src/UDocViewer.d.ts +4 -3
- package/dist/src/UDocViewer.d.ts.map +1 -1
- package/dist/src/UDocViewer.js +50 -3
- package/dist/src/UDocViewer.js.map +1 -1
- package/dist/src/ui/viewer/actions.d.ts +34 -3
- package/dist/src/ui/viewer/actions.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/ShapeRenderer.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/ShapeRenderer.js +23 -16
- package/dist/src/ui/viewer/annotation/ShapeRenderer.js.map +1 -1
- package/dist/src/ui/viewer/annotation/index.d.ts +1 -1
- package/dist/src/ui/viewer/annotation/index.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/index.js +1 -1
- package/dist/src/ui/viewer/annotation/index.js.map +1 -1
- package/dist/src/ui/viewer/annotation/render.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/render.js +11 -4
- package/dist/src/ui/viewer/annotation/render.js.map +1 -1
- package/dist/src/ui/viewer/annotation/types.d.ts +9 -1
- package/dist/src/ui/viewer/annotation/types.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/utils.d.ts +10 -1
- package/dist/src/ui/viewer/annotation/utils.d.ts.map +1 -1
- package/dist/src/ui/viewer/annotation/utils.js +114 -0
- package/dist/src/ui/viewer/annotation/utils.js.map +1 -1
- package/dist/src/ui/viewer/components/ColorSelect.d.ts +26 -0
- package/dist/src/ui/viewer/components/ColorSelect.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/ColorSelect.js +120 -0
- package/dist/src/ui/viewer/components/ColorSelect.js.map +1 -0
- package/dist/src/ui/viewer/components/FloatingToolbar.js +12 -12
- package/dist/src/ui/viewer/components/FloatingToolbar.js.map +1 -1
- package/dist/src/ui/viewer/components/NumberInput.d.ts +32 -0
- package/dist/src/ui/viewer/components/NumberInput.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/NumberInput.js +101 -0
- package/dist/src/ui/viewer/components/NumberInput.js.map +1 -0
- package/dist/src/ui/viewer/components/Spread.d.ts +2 -2
- package/dist/src/ui/viewer/components/Spread.d.ts.map +1 -1
- package/dist/src/ui/viewer/components/Spread.js.map +1 -1
- package/dist/src/ui/viewer/components/SubToolbar.d.ts +10 -0
- package/dist/src/ui/viewer/components/SubToolbar.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/SubToolbar.js +481 -0
- package/dist/src/ui/viewer/components/SubToolbar.js.map +1 -0
- package/dist/src/ui/viewer/components/Toolbar.d.ts.map +1 -1
- package/dist/src/ui/viewer/components/Toolbar.js +147 -4
- package/dist/src/ui/viewer/components/Toolbar.js.map +1 -1
- package/dist/src/ui/viewer/components/ViewModeMenu.js +3 -3
- package/dist/src/ui/viewer/components/ViewModeMenu.js.map +1 -1
- package/dist/src/ui/viewer/components/Viewport.d.ts.map +1 -1
- package/dist/src/ui/viewer/components/Viewport.js +40 -2
- package/dist/src/ui/viewer/components/Viewport.js.map +1 -1
- package/dist/src/ui/viewer/i18n/ar.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/ar.js +40 -0
- package/dist/src/ui/viewer/i18n/ar.js.map +1 -1
- package/dist/src/ui/viewer/i18n/de.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/de.js +40 -0
- package/dist/src/ui/viewer/i18n/de.js.map +1 -1
- package/dist/src/ui/viewer/i18n/en.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/en.js +40 -0
- package/dist/src/ui/viewer/i18n/en.js.map +1 -1
- package/dist/src/ui/viewer/i18n/es.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/es.js +40 -0
- package/dist/src/ui/viewer/i18n/es.js.map +1 -1
- package/dist/src/ui/viewer/i18n/fr.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/fr.js +40 -0
- package/dist/src/ui/viewer/i18n/fr.js.map +1 -1
- package/dist/src/ui/viewer/i18n/ja.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/ja.js +40 -0
- package/dist/src/ui/viewer/i18n/ja.js.map +1 -1
- package/dist/src/ui/viewer/i18n/ko.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/ko.js +40 -0
- package/dist/src/ui/viewer/i18n/ko.js.map +1 -1
- package/dist/src/ui/viewer/i18n/pt-BR.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/pt-BR.js +40 -0
- package/dist/src/ui/viewer/i18n/pt-BR.js.map +1 -1
- package/dist/src/ui/viewer/i18n/ru.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/ru.js +40 -0
- package/dist/src/ui/viewer/i18n/ru.js.map +1 -1
- package/dist/src/ui/viewer/i18n/types.d.ts +35 -0
- package/dist/src/ui/viewer/i18n/types.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/zh-CN.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/zh-CN.js +40 -0
- package/dist/src/ui/viewer/i18n/zh-CN.js.map +1 -1
- package/dist/src/ui/viewer/i18n/zh-TW.d.ts.map +1 -1
- package/dist/src/ui/viewer/i18n/zh-TW.js +40 -0
- package/dist/src/ui/viewer/i18n/zh-TW.js.map +1 -1
- package/dist/src/ui/viewer/icons.d.ts +29 -0
- package/dist/src/ui/viewer/icons.d.ts.map +1 -1
- package/dist/src/ui/viewer/icons.js +42 -0
- package/dist/src/ui/viewer/icons.js.map +1 -1
- package/dist/src/ui/viewer/reducer.d.ts.map +1 -1
- package/dist/src/ui/viewer/reducer.js +109 -1
- package/dist/src/ui/viewer/reducer.js.map +1 -1
- package/dist/src/ui/viewer/search/search.d.ts +4 -4
- package/dist/src/ui/viewer/search/search.d.ts.map +1 -1
- package/dist/src/ui/viewer/search/search.js +1 -1
- package/dist/src/ui/viewer/search/search.js.map +1 -1
- package/dist/src/ui/viewer/shell.d.ts +2 -2
- package/dist/src/ui/viewer/shell.d.ts.map +1 -1
- package/dist/src/ui/viewer/shell.js +13 -2
- package/dist/src/ui/viewer/shell.js.map +1 -1
- package/dist/src/ui/viewer/state.d.ts +55 -2
- package/dist/src/ui/viewer/state.d.ts.map +1 -1
- package/dist/src/ui/viewer/state.js +30 -0
- package/dist/src/ui/viewer/state.js.map +1 -1
- package/dist/src/ui/viewer/styles-inline.d.ts +1 -1
- package/dist/src/ui/viewer/styles-inline.d.ts.map +1 -1
- package/dist/src/ui/viewer/styles-inline.js +875 -246
- package/dist/src/ui/viewer/styles-inline.js.map +1 -1
- package/dist/src/ui/viewer/text/render.d.ts +3 -3
- package/dist/src/ui/viewer/text/render.d.ts.map +1 -1
- package/dist/src/ui/viewer/text/render.js +2 -2
- package/dist/src/ui/viewer/text/render.js.map +1 -1
- package/dist/src/ui/viewer/tools/AnnotationDrawController.d.ts +21 -0
- package/dist/src/ui/viewer/tools/AnnotationDrawController.d.ts.map +1 -0
- package/dist/src/ui/viewer/tools/AnnotationDrawController.js +392 -0
- package/dist/src/ui/viewer/tools/AnnotationDrawController.js.map +1 -0
- package/dist/src/ui/viewer/tools/AnnotationSelectController.d.ts +22 -0
- package/dist/src/ui/viewer/tools/AnnotationSelectController.d.ts.map +1 -0
- package/dist/src/ui/viewer/tools/AnnotationSelectController.js +367 -0
- package/dist/src/ui/viewer/tools/AnnotationSelectController.js.map +1 -0
- package/dist/src/ui/viewer/tools/ViewToolController.d.ts +20 -0
- package/dist/src/ui/viewer/tools/ViewToolController.d.ts.map +1 -0
- package/dist/src/ui/viewer/tools/ViewToolController.js +194 -0
- package/dist/src/ui/viewer/tools/ViewToolController.js.map +1 -0
- package/dist/src/wasm/udoc.d.ts +399 -114
- package/dist/src/wasm/udoc.js +157 -81
- package/dist/src/wasm/udoc_bg.wasm +0 -0
- package/dist/src/wasm/udoc_bg.wasm.d.ts +8 -7
- package/dist/src/worker/WorkerClient.d.ts +17 -11
- package/dist/src/worker/WorkerClient.d.ts.map +1 -1
- package/dist/src/worker/WorkerClient.js +10 -2
- package/dist/src/worker/WorkerClient.js.map +1 -1
- package/dist/src/worker/index.d.ts +1 -1
- package/dist/src/worker/index.d.ts.map +1 -1
- package/dist/src/worker/worker-inline.js +1 -1
- package/dist/src/worker/worker.d.ts +26 -58
- package/dist/src/worker/worker.d.ts.map +1 -1
- package/dist/src/worker/worker.js +161 -80
- package/dist/src/worker/worker.js.map +1 -1
- package/package.json +1 -1
|
@@ -24,13 +24,13 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
24
24
|
--udoc-text-placeholder: #999;
|
|
25
25
|
--udoc-text-on-primary: #fff;
|
|
26
26
|
|
|
27
|
-
--udoc-primary: #
|
|
28
|
-
--udoc-primary-hover: #
|
|
29
|
-
--udoc-primary-active-bg: rgba(0,
|
|
30
|
-
--udoc-primary-active-bg-hover: rgba(0,
|
|
31
|
-
--udoc-primary-subtle-bg: rgba(0,
|
|
32
|
-
--udoc-primary-focus-ring: rgba(0,
|
|
33
|
-
--udoc-primary-muted: rgba(0,
|
|
27
|
+
--udoc-primary: #333;
|
|
28
|
+
--udoc-primary-hover: #1a1a1a;
|
|
29
|
+
--udoc-primary-active-bg: rgba(0, 0, 0, 0.1);
|
|
30
|
+
--udoc-primary-active-bg-hover: rgba(0, 0, 0, 0.14);
|
|
31
|
+
--udoc-primary-subtle-bg: rgba(0, 0, 0, 0.06);
|
|
32
|
+
--udoc-primary-focus-ring: rgba(0, 0, 0, 0.15);
|
|
33
|
+
--udoc-primary-muted: rgba(0, 0, 0, 0.25);
|
|
34
34
|
--udoc-primary-disabled: #94a3b8;
|
|
35
35
|
|
|
36
36
|
--udoc-border: #ddd;
|
|
@@ -56,9 +56,10 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
56
56
|
--udoc-search-highlight-active-outline: rgba(255, 140, 0, 0.8);
|
|
57
57
|
--udoc-search-match-bg: rgba(255, 200, 0, 0.4);
|
|
58
58
|
--udoc-search-match-text: #000;
|
|
59
|
-
--udoc-search-result-active-bg: rgba(0,
|
|
59
|
+
--udoc-search-result-active-bg: rgba(0, 0, 0, 0.06);
|
|
60
60
|
|
|
61
61
|
--udoc-text-selection: rgba(0, 120, 215, 0.5);
|
|
62
|
+
--udoc-selection-color: rgb(0, 120, 215);
|
|
62
63
|
|
|
63
64
|
--udoc-annotation-bg: #ffffc0;
|
|
64
65
|
--udoc-annotation-header-bg: #f0f0c0;
|
|
@@ -80,7 +81,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
80
81
|
--udoc-error-text: #dc2626;
|
|
81
82
|
|
|
82
83
|
--udoc-progress-track: #e5e7eb;
|
|
83
|
-
--udoc-progress-fill: #
|
|
84
|
+
--udoc-progress-fill: #333;
|
|
84
85
|
|
|
85
86
|
--udoc-scrollbar-thumb: rgba(0, 0, 0, 0.3);
|
|
86
87
|
--udoc-scrollbar-thumb-hover: rgba(0, 0, 0, 0.5);
|
|
@@ -91,6 +92,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
91
92
|
height: 100%;
|
|
92
93
|
container-type: inline-size;
|
|
93
94
|
container-name: udoc-viewer;
|
|
95
|
+
isolation: isolate;
|
|
94
96
|
}
|
|
95
97
|
|
|
96
98
|
.udoc-viewer-root.udoc-viewer-dark {
|
|
@@ -117,13 +119,13 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
117
119
|
--udoc-text-placeholder: #777;
|
|
118
120
|
--udoc-text-on-primary: #fff;
|
|
119
121
|
|
|
120
|
-
--udoc-primary: #
|
|
121
|
-
--udoc-primary-hover: #
|
|
122
|
-
--udoc-primary-active-bg: rgba(
|
|
123
|
-
--udoc-primary-active-bg-hover: rgba(
|
|
124
|
-
--udoc-primary-subtle-bg: rgba(
|
|
125
|
-
--udoc-primary-focus-ring: rgba(
|
|
126
|
-
--udoc-primary-muted: rgba(
|
|
122
|
+
--udoc-primary: #e0e0e0;
|
|
123
|
+
--udoc-primary-hover: #f0f0f0;
|
|
124
|
+
--udoc-primary-active-bg: rgba(255, 255, 255, 0.12);
|
|
125
|
+
--udoc-primary-active-bg-hover: rgba(255, 255, 255, 0.16);
|
|
126
|
+
--udoc-primary-subtle-bg: rgba(255, 255, 255, 0.07);
|
|
127
|
+
--udoc-primary-focus-ring: rgba(255, 255, 255, 0.2);
|
|
128
|
+
--udoc-primary-muted: rgba(255, 255, 255, 0.3);
|
|
127
129
|
--udoc-primary-disabled: #4a5568;
|
|
128
130
|
|
|
129
131
|
--udoc-border: #444;
|
|
@@ -149,9 +151,10 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
149
151
|
--udoc-search-highlight-active-outline: rgba(255, 140, 0, 0.85);
|
|
150
152
|
--udoc-search-match-bg: rgba(255, 200, 0, 0.3);
|
|
151
153
|
--udoc-search-match-text: #fff;
|
|
152
|
-
--udoc-search-result-active-bg: rgba(
|
|
154
|
+
--udoc-search-result-active-bg: rgba(255, 255, 255, 0.08);
|
|
153
155
|
|
|
154
156
|
--udoc-text-selection: rgba(77, 166, 255, 0.5);
|
|
157
|
+
--udoc-selection-color: rgb(77, 166, 255);
|
|
155
158
|
|
|
156
159
|
--udoc-annotation-bg: #4a4a20;
|
|
157
160
|
--udoc-annotation-header-bg: #3a3a18;
|
|
@@ -173,7 +176,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
173
176
|
--udoc-error-text: #f87171;
|
|
174
177
|
|
|
175
178
|
--udoc-progress-track: #404040;
|
|
176
|
-
--udoc-progress-fill: #
|
|
179
|
+
--udoc-progress-fill: #e0e0e0;
|
|
177
180
|
|
|
178
181
|
--udoc-scrollbar-thumb: rgba(255, 255, 255, 0.3);
|
|
179
182
|
--udoc-scrollbar-thumb-hover: rgba(255, 255, 255, 0.5);
|
|
@@ -182,7 +185,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
182
185
|
.udoc-viewer-root .udoc-toolbar-slot {
|
|
183
186
|
flex: 0 0 auto;
|
|
184
187
|
position: relative;
|
|
185
|
-
z-index:
|
|
188
|
+
z-index: 11;
|
|
186
189
|
}
|
|
187
190
|
|
|
188
191
|
.udoc-viewer-root .udoc-body-slot {
|
|
@@ -290,99 +293,11 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
290
293
|
align-items: center;
|
|
291
294
|
gap: 4px;
|
|
292
295
|
height: 40px;
|
|
293
|
-
padding: 0
|
|
296
|
+
padding: 0 6px;
|
|
294
297
|
background: var(--udoc-bg-surface);
|
|
295
298
|
border-radius: 8px;
|
|
296
299
|
box-shadow: var(--udoc-shadow-toolbar);
|
|
297
|
-
z-index:
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
.udoc-viewer-root .udoc-floating-toolbar__section {
|
|
301
|
-
display: flex;
|
|
302
|
-
align-items: center;
|
|
303
|
-
gap: 4px;
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
.udoc-viewer-root .udoc-floating-toolbar__divider {
|
|
307
|
-
width: 1px;
|
|
308
|
-
height: 20px;
|
|
309
|
-
background: var(--udoc-pressed-overlay);
|
|
310
|
-
margin: 0 4px;
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn {
|
|
314
|
-
display: flex;
|
|
315
|
-
align-items: center;
|
|
316
|
-
justify-content: center;
|
|
317
|
-
width: 28px;
|
|
318
|
-
height: 28px;
|
|
319
|
-
padding: 0;
|
|
320
|
-
border: none;
|
|
321
|
-
border-radius: 4px;
|
|
322
|
-
background: transparent;
|
|
323
|
-
color: var(--udoc-text-secondary);
|
|
324
|
-
cursor: pointer;
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn:hover {
|
|
328
|
-
background: var(--udoc-hover-overlay);
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn:active {
|
|
332
|
-
background: var(--udoc-pressed-overlay);
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn:disabled {
|
|
336
|
-
color: var(--udoc-text-disabled);
|
|
337
|
-
cursor: default;
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn:disabled:hover {
|
|
341
|
-
background: transparent;
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn svg {
|
|
345
|
-
width: 18px;
|
|
346
|
-
height: 18px;
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
.udoc-viewer-root .udoc-floating-toolbar__page-info {
|
|
350
|
-
display: flex;
|
|
351
|
-
align-items: center;
|
|
352
|
-
color: var(--udoc-text-primary);
|
|
353
|
-
font-size: 13px;
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
.udoc-viewer-root .udoc-floating-toolbar__page-input {
|
|
357
|
-
width: 36px;
|
|
358
|
-
padding: 2px 4px;
|
|
359
|
-
border: 1px solid var(--udoc-pressed-overlay);
|
|
360
|
-
border-radius: 4px;
|
|
361
|
-
background: transparent;
|
|
362
|
-
color: var(--udoc-text-primary);
|
|
363
|
-
font-size: 13px;
|
|
364
|
-
text-align: center;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
.udoc-viewer-root .udoc-floating-toolbar__page-input:focus {
|
|
368
|
-
outline: none;
|
|
369
|
-
border-color: var(--udoc-scrollbar-thumb);
|
|
370
|
-
background: var(--udoc-bg-input);
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
.udoc-viewer-root .udoc-floating-toolbar__page-total {
|
|
374
|
-
white-space: nowrap;
|
|
375
|
-
}
|
|
376
|
-
|
|
377
|
-
.udoc-viewer-root .udoc-floating-toolbar__zoom-level {
|
|
378
|
-
min-width: 44px;
|
|
379
|
-
color: var(--udoc-text-primary);
|
|
380
|
-
font-size: 13px;
|
|
381
|
-
text-align: center;
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn--active {
|
|
385
|
-
background: var(--udoc-active-overlay);
|
|
300
|
+
z-index: 30;
|
|
386
301
|
}
|
|
387
302
|
|
|
388
303
|
/* Zoom Dropdown */
|
|
@@ -510,7 +425,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
510
425
|
/* View Mode Menu */
|
|
511
426
|
.udoc-viewer-root .udoc-view-mode-menu {
|
|
512
427
|
position: relative;
|
|
513
|
-
height:
|
|
428
|
+
height: 32px;
|
|
514
429
|
display: flex;
|
|
515
430
|
align-items: center;
|
|
516
431
|
}
|
|
@@ -998,178 +913,727 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
998
913
|
.udoc-viewer-root .udoc-toolbar {
|
|
999
914
|
display: flex;
|
|
1000
915
|
align-items: center;
|
|
916
|
+
gap: 4px;
|
|
917
|
+
height: 40px;
|
|
918
|
+
padding: 0 4px;
|
|
919
|
+
background: var(--udoc-bg-panel);
|
|
920
|
+
border-bottom: 1px solid var(--udoc-border);
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
.udoc-viewer-root .udoc-toolbar__left,
|
|
924
|
+
.udoc-viewer-root .udoc-toolbar__right {
|
|
925
|
+
display: flex;
|
|
926
|
+
align-items: center;
|
|
927
|
+
gap: 4px;
|
|
928
|
+
}
|
|
929
|
+
|
|
930
|
+
.udoc-viewer-root .udoc-toolbar__right {
|
|
931
|
+
margin-left: auto;
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
.udoc-viewer-root .udoc-toolbar__spacer {
|
|
935
|
+
flex: 1;
|
|
936
|
+
}
|
|
937
|
+
|
|
938
|
+
.udoc-viewer-root .udoc-toolbar__btn {
|
|
939
|
+
display: flex;
|
|
940
|
+
align-items: center;
|
|
941
|
+
justify-content: center;
|
|
942
|
+
width: 32px;
|
|
943
|
+
height: 32px;
|
|
944
|
+
padding: 0;
|
|
945
|
+
border: none;
|
|
946
|
+
border-radius: 4px;
|
|
947
|
+
background: transparent;
|
|
948
|
+
color: var(--udoc-text-body);
|
|
949
|
+
cursor: pointer;
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
.udoc-viewer-root .udoc-toolbar__btn:hover {
|
|
953
|
+
background: var(--udoc-hover-overlay);
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
.udoc-viewer-root .udoc-toolbar__btn:active {
|
|
957
|
+
background: var(--udoc-active-overlay);
|
|
958
|
+
}
|
|
959
|
+
|
|
960
|
+
.udoc-viewer-root .udoc-toolbar__btn svg {
|
|
961
|
+
width: 20px;
|
|
962
|
+
height: 20px;
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
/* Toolbar center section (inline controls when floating toolbar is hidden) */
|
|
966
|
+
.udoc-viewer-root .udoc-toolbar__center {
|
|
967
|
+
display: flex;
|
|
968
|
+
align-items: center;
|
|
969
|
+
gap: 4px;
|
|
970
|
+
flex: 1;
|
|
971
|
+
justify-content: flex-start;
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
/* Overflow menu (hidden on desktop, shown on mobile) */
|
|
975
|
+
.udoc-viewer-root .udoc-overflow-menu {
|
|
976
|
+
display: none;
|
|
977
|
+
position: relative;
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
.udoc-viewer-root .udoc-overflow-menu__dropdown {
|
|
981
|
+
position: absolute;
|
|
982
|
+
top: 100%;
|
|
983
|
+
right: 0;
|
|
984
|
+
margin-top: 4px;
|
|
985
|
+
min-width: 180px;
|
|
986
|
+
background: var(--udoc-bg-surface);
|
|
987
|
+
border: 1px solid var(--udoc-border);
|
|
988
|
+
border-radius: 8px;
|
|
989
|
+
box-shadow: var(--udoc-shadow-dialog);
|
|
990
|
+
padding: 4px 0;
|
|
991
|
+
z-index: 80;
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
.udoc-viewer-root .udoc-overflow-menu__item {
|
|
995
|
+
display: flex;
|
|
996
|
+
align-items: center;
|
|
997
|
+
gap: 10px;
|
|
998
|
+
width: 100%;
|
|
999
|
+
padding: 10px 14px;
|
|
1000
|
+
border: none;
|
|
1001
|
+
background: transparent;
|
|
1002
|
+
color: var(--udoc-text-body);
|
|
1003
|
+
font-size: 14px;
|
|
1004
|
+
cursor: pointer;
|
|
1005
|
+
text-align: left;
|
|
1006
|
+
}
|
|
1007
|
+
|
|
1008
|
+
.udoc-viewer-root .udoc-overflow-menu__item:hover {
|
|
1009
|
+
background: var(--udoc-hover-overlay);
|
|
1010
|
+
}
|
|
1011
|
+
|
|
1012
|
+
.udoc-viewer-root .udoc-overflow-menu__item-icon {
|
|
1013
|
+
display: flex;
|
|
1014
|
+
align-items: center;
|
|
1015
|
+
justify-content: center;
|
|
1016
|
+
width: 20px;
|
|
1017
|
+
height: 20px;
|
|
1018
|
+
flex-shrink: 0;
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
.udoc-viewer-root .udoc-overflow-menu__item-icon svg {
|
|
1022
|
+
width: 18px;
|
|
1023
|
+
height: 18px;
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
.udoc-viewer-root .udoc-toolbar__group {
|
|
1027
|
+
display: flex;
|
|
1028
|
+
align-items: center;
|
|
1029
|
+
gap: 0;
|
|
1030
|
+
}
|
|
1031
|
+
|
|
1032
|
+
.udoc-viewer-root .udoc-toolbar__divider {
|
|
1033
|
+
width: 1px;
|
|
1034
|
+
height: 20px;
|
|
1035
|
+
background: var(--udoc-border);
|
|
1036
|
+
margin: 0 2px;
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
.udoc-viewer-root .udoc-toolbar__btn--nav {
|
|
1040
|
+
width: 32px;
|
|
1041
|
+
height: 32px;
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
.udoc-viewer-root .udoc-toolbar__btn--nav svg {
|
|
1045
|
+
width: 18px;
|
|
1046
|
+
height: 18px;
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
.udoc-viewer-root .udoc-toolbar__page-info {
|
|
1050
|
+
display: flex;
|
|
1051
|
+
align-items: center;
|
|
1052
|
+
font-size: 13px;
|
|
1053
|
+
color: var(--udoc-text-body);
|
|
1054
|
+
}
|
|
1055
|
+
|
|
1056
|
+
.udoc-viewer-root .udoc-toolbar__page-input {
|
|
1057
|
+
width: 36px;
|
|
1058
|
+
height: 24px;
|
|
1059
|
+
border: 1px solid var(--udoc-border-input);
|
|
1060
|
+
border-radius: 3px;
|
|
1061
|
+
text-align: center;
|
|
1062
|
+
font-size: 13px;
|
|
1063
|
+
padding: 0 2px;
|
|
1064
|
+
background: var(--udoc-bg-input);
|
|
1065
|
+
color: var(--udoc-text-heading);
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
.udoc-viewer-root .udoc-toolbar__page-input:focus {
|
|
1069
|
+
outline: none;
|
|
1070
|
+
border-color: var(--udoc-text-placeholder);
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
.udoc-viewer-root .udoc-toolbar__page-total {
|
|
1074
|
+
font-size: 13px;
|
|
1075
|
+
color: var(--udoc-text-muted);
|
|
1076
|
+
white-space: nowrap;
|
|
1077
|
+
}
|
|
1078
|
+
|
|
1079
|
+
/* Zoom dropdown in toolbar: drops down instead of up */
|
|
1080
|
+
.udoc-viewer-root .udoc-zoom-dropdown--toolbar .udoc-zoom-dropdown__menu {
|
|
1081
|
+
bottom: auto;
|
|
1082
|
+
top: calc(100% + 8px);
|
|
1083
|
+
}
|
|
1084
|
+
|
|
1085
|
+
/* View mode menu in toolbar: drops down instead of up */
|
|
1086
|
+
.udoc-viewer-root .udoc-toolbar__center .udoc-view-mode-menu__dropdown {
|
|
1087
|
+
bottom: auto;
|
|
1088
|
+
top: calc(100% + 8px);
|
|
1089
|
+
}
|
|
1090
|
+
|
|
1091
|
+
/* ===== Tool buttons (pointer split button & tool set buttons) ===== */
|
|
1092
|
+
|
|
1093
|
+
/* Split button container */
|
|
1094
|
+
.udoc-viewer-root .udoc-toolbar__split-btn {
|
|
1095
|
+
position: relative;
|
|
1096
|
+
display: flex;
|
|
1097
|
+
align-items: center;
|
|
1098
|
+
border-radius: 4px;
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
.udoc-viewer-root .udoc-toolbar__split-btn--active {
|
|
1102
|
+
background: var(--udoc-primary-active-bg);
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1105
|
+
.udoc-viewer-root .udoc-toolbar__split-btn--active:hover {
|
|
1106
|
+
background: var(--udoc-primary-active-bg-hover);
|
|
1107
|
+
}
|
|
1108
|
+
|
|
1109
|
+
.udoc-viewer-root .udoc-toolbar__split-btn-main {
|
|
1110
|
+
width: 26px;
|
|
1111
|
+
border-top-right-radius: 0;
|
|
1112
|
+
border-bottom-right-radius: 0;
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
.udoc-viewer-root .udoc-toolbar__split-btn-drop {
|
|
1116
|
+
width: 16px;
|
|
1117
|
+
padding: 0;
|
|
1118
|
+
border-top-left-radius: 0;
|
|
1119
|
+
border-bottom-left-radius: 0;
|
|
1120
|
+
}
|
|
1121
|
+
|
|
1122
|
+
.udoc-viewer-root .udoc-toolbar__split-btn-drop svg {
|
|
1123
|
+
width: 12px;
|
|
1124
|
+
height: 12px;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
/* Split button dropdown */
|
|
1128
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown {
|
|
1129
|
+
position: absolute;
|
|
1130
|
+
top: calc(100% + 4px);
|
|
1131
|
+
left: 0;
|
|
1132
|
+
min-width: 140px;
|
|
1133
|
+
background: var(--udoc-bg-surface);
|
|
1134
|
+
border: 1px solid var(--udoc-border);
|
|
1135
|
+
border-radius: 8px;
|
|
1136
|
+
box-shadow: var(--udoc-shadow-dialog);
|
|
1137
|
+
padding: 4px 0;
|
|
1138
|
+
z-index: 80;
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1141
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-item {
|
|
1142
|
+
display: flex;
|
|
1143
|
+
align-items: center;
|
|
1144
|
+
gap: 8px;
|
|
1145
|
+
width: 100%;
|
|
1146
|
+
padding: 6px 12px;
|
|
1147
|
+
border: none;
|
|
1148
|
+
background: transparent;
|
|
1149
|
+
color: var(--udoc-text-body);
|
|
1150
|
+
font-size: 13px;
|
|
1151
|
+
cursor: pointer;
|
|
1152
|
+
text-align: left;
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1155
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-item:hover {
|
|
1156
|
+
background: var(--udoc-hover-overlay);
|
|
1157
|
+
}
|
|
1158
|
+
|
|
1159
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-item--active {
|
|
1160
|
+
background: var(--udoc-primary-active-bg);
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-item--active:hover {
|
|
1164
|
+
background: var(--udoc-primary-active-bg-hover);
|
|
1165
|
+
}
|
|
1166
|
+
|
|
1167
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-icon {
|
|
1168
|
+
display: flex;
|
|
1169
|
+
align-items: center;
|
|
1170
|
+
justify-content: center;
|
|
1171
|
+
width: 20px;
|
|
1172
|
+
height: 20px;
|
|
1173
|
+
flex-shrink: 0;
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
.udoc-viewer-root .udoc-toolbar__split-dropdown-icon svg {
|
|
1177
|
+
width: 18px;
|
|
1178
|
+
height: 18px;
|
|
1179
|
+
}
|
|
1180
|
+
|
|
1181
|
+
/* Tool set buttons active state */
|
|
1182
|
+
.udoc-viewer-root .udoc-toolbar__btn--tool-active {
|
|
1183
|
+
background: var(--udoc-primary-active-bg);
|
|
1184
|
+
}
|
|
1185
|
+
|
|
1186
|
+
.udoc-viewer-root .udoc-toolbar__btn--tool-active:hover {
|
|
1187
|
+
background: var(--udoc-primary-active-bg-hover);
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
/* ===== Sub-toolbar (tool options bar) ===== */
|
|
1191
|
+
|
|
1192
|
+
.udoc-viewer-root .udoc-subtoolbar-slot {
|
|
1193
|
+
flex: 0 0 auto;
|
|
1194
|
+
position: relative;
|
|
1195
|
+
z-index: 10;
|
|
1196
|
+
}
|
|
1197
|
+
|
|
1198
|
+
.udoc-viewer-root .udoc-subtoolbar {
|
|
1199
|
+
display: flex;
|
|
1200
|
+
align-items: center;
|
|
1201
|
+
gap: 4px;
|
|
1001
1202
|
height: 40px;
|
|
1002
1203
|
padding: 0 8px;
|
|
1003
1204
|
background: var(--udoc-bg-panel);
|
|
1004
1205
|
border-bottom: 1px solid var(--udoc-border);
|
|
1005
1206
|
}
|
|
1006
1207
|
|
|
1007
|
-
.udoc-viewer-root .udoc-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1208
|
+
.udoc-viewer-root .udoc-subtoolbar__tools {
|
|
1209
|
+
display: flex;
|
|
1210
|
+
align-items: center;
|
|
1211
|
+
gap: 2px;
|
|
1212
|
+
}
|
|
1213
|
+
|
|
1214
|
+
.udoc-viewer-root .udoc-subtoolbar__divider {
|
|
1215
|
+
width: 1px;
|
|
1216
|
+
height: 20px;
|
|
1217
|
+
background: var(--udoc-border);
|
|
1218
|
+
margin: 0 4px;
|
|
1219
|
+
}
|
|
1220
|
+
|
|
1221
|
+
.udoc-viewer-root .udoc-subtoolbar__options {
|
|
1222
|
+
display: flex;
|
|
1223
|
+
align-items: center;
|
|
1224
|
+
gap: 8px;
|
|
1225
|
+
flex: 1;
|
|
1226
|
+
overflow-x: auto;
|
|
1227
|
+
}
|
|
1228
|
+
|
|
1229
|
+
.udoc-viewer-root .udoc-subtoolbar__btn {
|
|
1230
|
+
display: flex;
|
|
1231
|
+
align-items: center;
|
|
1232
|
+
justify-content: center;
|
|
1233
|
+
width: 32px;
|
|
1234
|
+
height: 32px;
|
|
1235
|
+
padding: 0;
|
|
1236
|
+
border: none;
|
|
1237
|
+
border-radius: 4px;
|
|
1238
|
+
background: transparent;
|
|
1239
|
+
color: var(--udoc-text-body);
|
|
1240
|
+
cursor: pointer;
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
.udoc-viewer-root .udoc-subtoolbar__btn:hover {
|
|
1244
|
+
background: var(--udoc-hover-overlay);
|
|
1245
|
+
}
|
|
1246
|
+
|
|
1247
|
+
.udoc-viewer-root .udoc-subtoolbar__btn--active {
|
|
1248
|
+
background: var(--udoc-primary-active-bg);
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
.udoc-viewer-root .udoc-subtoolbar__btn--active:hover {
|
|
1252
|
+
background: var(--udoc-primary-active-bg-hover);
|
|
1253
|
+
}
|
|
1254
|
+
|
|
1255
|
+
.udoc-viewer-root .udoc-subtoolbar__btn svg {
|
|
1256
|
+
width: 20px;
|
|
1257
|
+
height: 20px;
|
|
1258
|
+
}
|
|
1259
|
+
|
|
1260
|
+
/* ---- Dropdown trigger (shared) ---- */
|
|
1261
|
+
.udoc-viewer-root .udoc-subtoolbar__dropdown-trigger {
|
|
1262
|
+
display: flex;
|
|
1263
|
+
align-items: center;
|
|
1264
|
+
gap: 4px;
|
|
1265
|
+
height: 28px;
|
|
1266
|
+
padding: 0 6px;
|
|
1267
|
+
border: 1px solid var(--udoc-border);
|
|
1268
|
+
border-radius: 4px;
|
|
1269
|
+
background: var(--udoc-bg-panel);
|
|
1270
|
+
cursor: pointer;
|
|
1271
|
+
color: var(--udoc-text-body);
|
|
1272
|
+
box-sizing: border-box;
|
|
1273
|
+
}
|
|
1274
|
+
|
|
1275
|
+
.udoc-viewer-root .udoc-subtoolbar__dropdown-trigger:hover {
|
|
1276
|
+
background: var(--udoc-hover-overlay);
|
|
1277
|
+
}
|
|
1278
|
+
|
|
1279
|
+
.udoc-viewer-root .udoc-subtoolbar__dropdown-trigger--icon svg {
|
|
1280
|
+
width: 20px;
|
|
1281
|
+
height: 20px;
|
|
1282
|
+
}
|
|
1283
|
+
|
|
1284
|
+
.udoc-viewer-root .udoc-subtoolbar__dropdown-arrow {
|
|
1285
|
+
font-size: 10px;
|
|
1286
|
+
line-height: 1;
|
|
1287
|
+
color: var(--udoc-text-muted);
|
|
1288
|
+
}
|
|
1289
|
+
|
|
1290
|
+
/* ---- Color swatch in trigger ---- */
|
|
1291
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch {
|
|
1292
|
+
display: block;
|
|
1293
|
+
width: 18px;
|
|
1294
|
+
height: 18px;
|
|
1295
|
+
border-radius: 50%;
|
|
1296
|
+
padding: 0;
|
|
1297
|
+
box-sizing: border-box;
|
|
1298
|
+
pointer-events: none;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
/* Stroke swatch: outlined ring */
|
|
1302
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch--stroke {
|
|
1303
|
+
background: transparent;
|
|
1304
|
+
border: 3px solid var(--swatch-color);
|
|
1305
|
+
}
|
|
1306
|
+
|
|
1307
|
+
/* Stroke none: dashed ring */
|
|
1308
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch--stroke-none {
|
|
1309
|
+
border-color: var(--udoc-text-muted);
|
|
1310
|
+
border-style: dashed;
|
|
1311
|
+
border-width: 2px;
|
|
1312
|
+
}
|
|
1313
|
+
|
|
1314
|
+
/* Fill swatch: solid disc */
|
|
1315
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch--fill {
|
|
1316
|
+
background: var(--swatch-color);
|
|
1317
|
+
border: 2px solid var(--udoc-border);
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
/* Fill none: diagonal strike */
|
|
1321
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch--fill-none {
|
|
1322
|
+
background: transparent;
|
|
1323
|
+
position: relative;
|
|
1324
|
+
overflow: hidden;
|
|
1325
|
+
}
|
|
1326
|
+
|
|
1327
|
+
.udoc-viewer-root .udoc-subtoolbar__color-swatch--fill-none::after {
|
|
1328
|
+
content: "";
|
|
1329
|
+
position: absolute;
|
|
1330
|
+
width: 140%;
|
|
1331
|
+
height: 2px;
|
|
1332
|
+
background: var(--udoc-text-muted);
|
|
1333
|
+
top: 50%;
|
|
1334
|
+
left: -20%;
|
|
1335
|
+
transform: rotate(-45deg);
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1338
|
+
/* ---- NumberInput trigger ---- */
|
|
1339
|
+
.udoc-viewer-root .udoc-number-input__trigger {
|
|
1340
|
+
display: flex;
|
|
1341
|
+
align-items: center;
|
|
1342
|
+
justify-content: center;
|
|
1343
|
+
gap: 3px;
|
|
1344
|
+
width: 68px;
|
|
1345
|
+
height: 28px;
|
|
1346
|
+
padding: 0 4px;
|
|
1347
|
+
border: 1px solid var(--udoc-border);
|
|
1348
|
+
border-radius: 4px;
|
|
1349
|
+
background: var(--udoc-bg-panel);
|
|
1350
|
+
cursor: pointer;
|
|
1351
|
+
color: var(--udoc-text-body);
|
|
1352
|
+
box-sizing: border-box;
|
|
1353
|
+
}
|
|
1354
|
+
|
|
1355
|
+
.udoc-viewer-root .udoc-number-input__trigger:hover {
|
|
1356
|
+
background: var(--udoc-hover-overlay);
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
.udoc-viewer-root .udoc-number-input__icon {
|
|
1360
|
+
display: flex;
|
|
1361
|
+
align-items: center;
|
|
1362
|
+
width: 14px;
|
|
1363
|
+
height: 14px;
|
|
1364
|
+
color: var(--udoc-text-muted);
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
.udoc-viewer-root .udoc-number-input__icon svg {
|
|
1368
|
+
width: 14px;
|
|
1369
|
+
height: 14px;
|
|
1370
|
+
}
|
|
1371
|
+
|
|
1372
|
+
.udoc-viewer-root .udoc-number-input__value {
|
|
1373
|
+
font-size: 11px;
|
|
1374
|
+
font-weight: 500;
|
|
1375
|
+
white-space: nowrap;
|
|
1376
|
+
}
|
|
1377
|
+
|
|
1378
|
+
/* ---- NumberInput floating panel ---- */
|
|
1379
|
+
.udoc-viewer-root .udoc-number-input-panel {
|
|
1380
|
+
display: none;
|
|
1381
|
+
position: absolute;
|
|
1382
|
+
top: 100%;
|
|
1383
|
+
margin-top: 2px;
|
|
1384
|
+
padding: 8px 10px;
|
|
1385
|
+
background: var(--udoc-bg-panel);
|
|
1386
|
+
border: 1px solid var(--udoc-border);
|
|
1387
|
+
border-radius: 8px;
|
|
1388
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
1389
|
+
z-index: 100;
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1392
|
+
.udoc-viewer-root .udoc-number-input-panel--open {
|
|
1393
|
+
display: flex;
|
|
1394
|
+
align-items: center;
|
|
1395
|
+
gap: 8px;
|
|
1396
|
+
}
|
|
1397
|
+
|
|
1398
|
+
.udoc-viewer-root .udoc-number-input-panel__slider {
|
|
1399
|
+
width: 100px;
|
|
1400
|
+
height: 4px;
|
|
1401
|
+
cursor: pointer;
|
|
1402
|
+
accent-color: var(--udoc-primary);
|
|
1403
|
+
}
|
|
1404
|
+
|
|
1405
|
+
.udoc-viewer-root .udoc-number-input-panel__text {
|
|
1406
|
+
width: 48px;
|
|
1407
|
+
text-align: center;
|
|
1408
|
+
border: 1px solid var(--udoc-border);
|
|
1409
|
+
border-radius: 4px;
|
|
1410
|
+
padding: 3px 4px;
|
|
1411
|
+
font-size: 11px;
|
|
1412
|
+
font-family: inherit;
|
|
1413
|
+
color: var(--udoc-text-body);
|
|
1414
|
+
background: var(--udoc-bg-panel);
|
|
1415
|
+
box-sizing: border-box;
|
|
1416
|
+
}
|
|
1417
|
+
|
|
1418
|
+
.udoc-viewer-root .udoc-number-input-panel__text:focus {
|
|
1419
|
+
outline: 2px solid var(--udoc-primary);
|
|
1420
|
+
outline-offset: -1px;
|
|
1421
|
+
}
|
|
1422
|
+
|
|
1423
|
+
/* ---- Color panel (floating) ---- */
|
|
1424
|
+
.udoc-viewer-root .udoc-color-panel {
|
|
1425
|
+
display: none;
|
|
1426
|
+
position: absolute;
|
|
1427
|
+
top: 100%;
|
|
1428
|
+
margin-top: 2px;
|
|
1429
|
+
padding: 8px;
|
|
1430
|
+
background: var(--udoc-bg-panel);
|
|
1431
|
+
border: 1px solid var(--udoc-border);
|
|
1432
|
+
border-radius: 8px;
|
|
1433
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
1434
|
+
z-index: 100;
|
|
1435
|
+
}
|
|
1436
|
+
|
|
1437
|
+
.udoc-viewer-root .udoc-color-panel--open {
|
|
1438
|
+
display: block;
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1441
|
+
.udoc-viewer-root .udoc-color-panel__grid {
|
|
1442
|
+
display: grid;
|
|
1443
|
+
grid-template-columns: repeat(4, 1fr);
|
|
1444
|
+
gap: 10px;
|
|
1445
|
+
justify-items: center;
|
|
1446
|
+
}
|
|
1447
|
+
|
|
1448
|
+
/* Base swatch (shared) */
|
|
1449
|
+
.udoc-viewer-root .udoc-color-panel__swatch {
|
|
1450
|
+
width: 24px;
|
|
1451
|
+
height: 24px;
|
|
1452
|
+
border-radius: 50%;
|
|
1453
|
+
cursor: pointer;
|
|
1454
|
+
padding: 0;
|
|
1455
|
+
box-sizing: border-box;
|
|
1456
|
+
}
|
|
1457
|
+
|
|
1458
|
+
/* Fill panel: solid discs with subtle border */
|
|
1459
|
+
.udoc-viewer-root .udoc-color-panel__grid--fill .udoc-color-panel__swatch:not(.udoc-color-panel__swatch--none) {
|
|
1460
|
+
background: var(--swatch-color);
|
|
1461
|
+
border: 2px solid rgba(0, 0, 0, 0.1);
|
|
1462
|
+
}
|
|
1463
|
+
|
|
1464
|
+
/* Stroke panel: outlined rings */
|
|
1465
|
+
.udoc-viewer-root .udoc-color-panel__grid--stroke .udoc-color-panel__swatch:not(.udoc-color-panel__swatch--none) {
|
|
1466
|
+
background: transparent;
|
|
1467
|
+
border: 3px solid var(--swatch-color);
|
|
1012
1468
|
}
|
|
1013
1469
|
|
|
1014
|
-
|
|
1015
|
-
|
|
1470
|
+
/* Hover: both use outline */
|
|
1471
|
+
.udoc-viewer-root .udoc-color-panel__swatch:hover:not(.udoc-color-panel__swatch--active) {
|
|
1472
|
+
outline: 2px solid var(--udoc-text-muted);
|
|
1473
|
+
outline-offset: 1px;
|
|
1016
1474
|
}
|
|
1017
1475
|
|
|
1018
|
-
|
|
1019
|
-
|
|
1476
|
+
/* Active: both use outline */
|
|
1477
|
+
.udoc-viewer-root .udoc-color-panel__swatch--active:not(.udoc-color-panel__swatch--none) {
|
|
1478
|
+
outline: 2px solid var(--udoc-primary);
|
|
1479
|
+
outline-offset: 2px;
|
|
1020
1480
|
}
|
|
1021
1481
|
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
align-items: center;
|
|
1025
|
-
justify-content: center;
|
|
1026
|
-
width: 32px;
|
|
1027
|
-
height: 32px;
|
|
1028
|
-
padding: 0;
|
|
1029
|
-
border: none;
|
|
1030
|
-
border-radius: 4px;
|
|
1482
|
+
/* None swatch — shared base */
|
|
1483
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none {
|
|
1031
1484
|
background: transparent;
|
|
1032
|
-
color: var(--udoc-text-body);
|
|
1033
1485
|
cursor: pointer;
|
|
1034
1486
|
}
|
|
1035
1487
|
|
|
1036
|
-
.udoc-viewer-root .udoc-
|
|
1037
|
-
|
|
1488
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none.udoc-color-panel__swatch--active {
|
|
1489
|
+
outline: 2px solid var(--udoc-primary);
|
|
1490
|
+
outline-offset: 2px;
|
|
1038
1491
|
}
|
|
1039
1492
|
|
|
1040
|
-
|
|
1041
|
-
|
|
1493
|
+
/* None stroke: dashed ring (matches toolbar trigger) */
|
|
1494
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none-stroke {
|
|
1495
|
+
border: 2px dashed var(--udoc-text-muted);
|
|
1042
1496
|
}
|
|
1043
1497
|
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1498
|
+
/* None fill: diagonal strike (matches toolbar trigger) */
|
|
1499
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none-fill {
|
|
1500
|
+
border: 2px solid var(--udoc-border);
|
|
1501
|
+
position: relative;
|
|
1502
|
+
overflow: hidden;
|
|
1047
1503
|
}
|
|
1048
1504
|
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1505
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none-fill::after {
|
|
1506
|
+
content: "";
|
|
1507
|
+
position: absolute;
|
|
1508
|
+
width: 140%;
|
|
1509
|
+
height: 2px;
|
|
1510
|
+
background: var(--udoc-text-muted);
|
|
1511
|
+
top: 50%;
|
|
1512
|
+
left: -20%;
|
|
1513
|
+
transform: rotate(-45deg);
|
|
1056
1514
|
}
|
|
1057
1515
|
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
display: none;
|
|
1061
|
-
position: relative;
|
|
1516
|
+
.udoc-viewer-root .udoc-color-panel__swatch--none:hover {
|
|
1517
|
+
border-color: var(--udoc-text-muted);
|
|
1062
1518
|
}
|
|
1063
1519
|
|
|
1064
|
-
|
|
1520
|
+
/* ---- Line style panel (floating) ---- */
|
|
1521
|
+
.udoc-viewer-root .udoc-linestyle-panel {
|
|
1522
|
+
display: none;
|
|
1065
1523
|
position: absolute;
|
|
1066
1524
|
top: 100%;
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
background: var(--udoc-bg-surface);
|
|
1525
|
+
margin-top: 2px;
|
|
1526
|
+
padding: 4px;
|
|
1527
|
+
background: var(--udoc-bg-panel);
|
|
1071
1528
|
border: 1px solid var(--udoc-border);
|
|
1072
1529
|
border-radius: 8px;
|
|
1073
|
-
box-shadow:
|
|
1074
|
-
|
|
1075
|
-
z-index: 200;
|
|
1530
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
1531
|
+
z-index: 100;
|
|
1076
1532
|
}
|
|
1077
1533
|
|
|
1078
|
-
.udoc-viewer-root .udoc-
|
|
1534
|
+
.udoc-viewer-root .udoc-linestyle-panel--open {
|
|
1535
|
+
display: flex;
|
|
1536
|
+
flex-direction: column;
|
|
1537
|
+
gap: 2px;
|
|
1538
|
+
}
|
|
1539
|
+
|
|
1540
|
+
.udoc-viewer-root .udoc-linestyle-panel__item {
|
|
1079
1541
|
display: flex;
|
|
1080
1542
|
align-items: center;
|
|
1081
|
-
gap:
|
|
1082
|
-
|
|
1083
|
-
padding: 10px 14px;
|
|
1543
|
+
gap: 8px;
|
|
1544
|
+
padding: 6px 10px;
|
|
1084
1545
|
border: none;
|
|
1546
|
+
border-radius: 4px;
|
|
1085
1547
|
background: transparent;
|
|
1086
|
-
color: var(--udoc-text-body);
|
|
1087
|
-
font-size: 14px;
|
|
1088
1548
|
cursor: pointer;
|
|
1089
|
-
|
|
1549
|
+
white-space: nowrap;
|
|
1550
|
+
color: var(--udoc-text-body);
|
|
1090
1551
|
}
|
|
1091
1552
|
|
|
1092
|
-
.udoc-viewer-root .udoc-
|
|
1553
|
+
.udoc-viewer-root .udoc-linestyle-panel__item:hover {
|
|
1093
1554
|
background: var(--udoc-hover-overlay);
|
|
1094
1555
|
}
|
|
1095
1556
|
|
|
1096
|
-
.udoc-viewer-root .udoc-
|
|
1097
|
-
|
|
1098
|
-
align-items: center;
|
|
1099
|
-
justify-content: center;
|
|
1100
|
-
width: 20px;
|
|
1101
|
-
height: 20px;
|
|
1102
|
-
flex-shrink: 0;
|
|
1557
|
+
.udoc-viewer-root .udoc-linestyle-panel__item--active {
|
|
1558
|
+
background: var(--udoc-primary-active-bg);
|
|
1103
1559
|
}
|
|
1104
1560
|
|
|
1105
|
-
.udoc-viewer-root .udoc-
|
|
1106
|
-
|
|
1107
|
-
|
|
1561
|
+
.udoc-viewer-root .udoc-linestyle-panel__icon {
|
|
1562
|
+
display: flex;
|
|
1563
|
+
width: 24px;
|
|
1564
|
+
height: 24px;
|
|
1108
1565
|
}
|
|
1109
1566
|
|
|
1110
|
-
.udoc-viewer-root .udoc-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
gap: 2px;
|
|
1567
|
+
.udoc-viewer-root .udoc-linestyle-panel__icon svg {
|
|
1568
|
+
width: 24px;
|
|
1569
|
+
height: 24px;
|
|
1114
1570
|
}
|
|
1115
1571
|
|
|
1116
|
-
.udoc-viewer-root .udoc-
|
|
1117
|
-
|
|
1118
|
-
height: 20px;
|
|
1119
|
-
background: var(--udoc-border);
|
|
1120
|
-
margin: 0 4px;
|
|
1572
|
+
.udoc-viewer-root .udoc-linestyle-panel__label {
|
|
1573
|
+
font-size: 11px;
|
|
1121
1574
|
}
|
|
1122
1575
|
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1576
|
+
/* ---- Arrow head panel (floating) ---- */
|
|
1577
|
+
.udoc-viewer-root .udoc-arrowhead-panel {
|
|
1578
|
+
display: none;
|
|
1579
|
+
position: absolute;
|
|
1580
|
+
top: 100%;
|
|
1581
|
+
margin-top: 2px;
|
|
1582
|
+
padding: 8px;
|
|
1583
|
+
background: var(--udoc-bg-panel);
|
|
1584
|
+
border: 1px solid var(--udoc-border);
|
|
1585
|
+
border-radius: 8px;
|
|
1586
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
1587
|
+
z-index: 100;
|
|
1126
1588
|
}
|
|
1127
1589
|
|
|
1128
|
-
.udoc-viewer-root .udoc-
|
|
1129
|
-
|
|
1130
|
-
|
|
1590
|
+
.udoc-viewer-root .udoc-arrowhead-panel--open {
|
|
1591
|
+
display: flex;
|
|
1592
|
+
flex-direction: column;
|
|
1593
|
+
gap: 6px;
|
|
1131
1594
|
}
|
|
1132
1595
|
|
|
1133
|
-
.udoc-viewer-root .udoc-
|
|
1596
|
+
.udoc-viewer-root .udoc-arrowhead-panel__row {
|
|
1134
1597
|
display: flex;
|
|
1135
1598
|
align-items: center;
|
|
1136
|
-
|
|
1137
|
-
color: var(--udoc-text-body);
|
|
1599
|
+
gap: 4px;
|
|
1138
1600
|
}
|
|
1139
1601
|
|
|
1140
|
-
.udoc-viewer-root .udoc-
|
|
1602
|
+
.udoc-viewer-root .udoc-arrowhead-panel__row-label {
|
|
1603
|
+
font-size: 10px;
|
|
1604
|
+
font-weight: 600;
|
|
1605
|
+
text-transform: uppercase;
|
|
1606
|
+
color: var(--udoc-text-muted);
|
|
1607
|
+
letter-spacing: 0.05em;
|
|
1141
1608
|
width: 36px;
|
|
1142
|
-
|
|
1143
|
-
border: 1px solid var(--udoc-border-input);
|
|
1144
|
-
border-radius: 3px;
|
|
1145
|
-
text-align: center;
|
|
1146
|
-
font-size: 13px;
|
|
1147
|
-
padding: 0 2px;
|
|
1148
|
-
background: var(--udoc-bg-input);
|
|
1149
|
-
color: var(--udoc-text-heading);
|
|
1609
|
+
flex-shrink: 0;
|
|
1150
1610
|
}
|
|
1151
1611
|
|
|
1152
|
-
.udoc-viewer-root .udoc-
|
|
1153
|
-
|
|
1154
|
-
|
|
1612
|
+
.udoc-viewer-root .udoc-arrowhead-panel__btn {
|
|
1613
|
+
display: flex;
|
|
1614
|
+
align-items: center;
|
|
1615
|
+
justify-content: center;
|
|
1616
|
+
width: 32px;
|
|
1617
|
+
height: 28px;
|
|
1618
|
+
padding: 0;
|
|
1619
|
+
border: none;
|
|
1620
|
+
border-radius: 4px;
|
|
1621
|
+
background: transparent;
|
|
1622
|
+
cursor: pointer;
|
|
1623
|
+
color: var(--udoc-text-body);
|
|
1155
1624
|
}
|
|
1156
1625
|
|
|
1157
|
-
.udoc-viewer-root .udoc-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
white-space: nowrap;
|
|
1626
|
+
.udoc-viewer-root .udoc-arrowhead-panel__btn svg {
|
|
1627
|
+
width: 20px;
|
|
1628
|
+
height: 20px;
|
|
1161
1629
|
}
|
|
1162
1630
|
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
bottom: auto;
|
|
1166
|
-
top: calc(100% + 8px);
|
|
1631
|
+
.udoc-viewer-root .udoc-arrowhead-panel__btn:hover {
|
|
1632
|
+
background: var(--udoc-hover-overlay);
|
|
1167
1633
|
}
|
|
1168
1634
|
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
bottom: auto;
|
|
1172
|
-
top: calc(100% + 8px);
|
|
1635
|
+
.udoc-viewer-root .udoc-arrowhead-panel__btn--active {
|
|
1636
|
+
background: var(--udoc-primary-active-bg);
|
|
1173
1637
|
}
|
|
1174
1638
|
|
|
1175
1639
|
/* Right Panel */
|
|
@@ -1265,6 +1729,54 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1265
1729
|
user-select: none;
|
|
1266
1730
|
}
|
|
1267
1731
|
|
|
1732
|
+
/* View tool cursors */
|
|
1733
|
+
.udoc-viewer--tool-hand .udoc-viewport__scroll {
|
|
1734
|
+
cursor: grab;
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
.udoc-viewer--tool-hand-grabbing .udoc-viewport__scroll {
|
|
1738
|
+
cursor: grabbing;
|
|
1739
|
+
}
|
|
1740
|
+
|
|
1741
|
+
.udoc-viewer--tool-hand .udoc-spread__text-layer,
|
|
1742
|
+
.udoc-viewer--tool-hand-grabbing .udoc-spread__text-layer {
|
|
1743
|
+
pointer-events: none;
|
|
1744
|
+
}
|
|
1745
|
+
|
|
1746
|
+
.udoc-viewer--tool-hand .udoc-text-run,
|
|
1747
|
+
.udoc-viewer--tool-hand-grabbing .udoc-text-run {
|
|
1748
|
+
user-select: none;
|
|
1749
|
+
}
|
|
1750
|
+
|
|
1751
|
+
.udoc-viewer--tool-zoom .udoc-viewport__scroll {
|
|
1752
|
+
cursor: zoom-in;
|
|
1753
|
+
}
|
|
1754
|
+
|
|
1755
|
+
.udoc-viewer--tool-zoom-out .udoc-viewport__scroll {
|
|
1756
|
+
cursor: zoom-out;
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
.udoc-viewer--tool-zoom .udoc-spread__text-layer {
|
|
1760
|
+
pointer-events: none;
|
|
1761
|
+
}
|
|
1762
|
+
|
|
1763
|
+
.udoc-viewer--tool-zoom .udoc-text-run {
|
|
1764
|
+
user-select: none;
|
|
1765
|
+
}
|
|
1766
|
+
|
|
1767
|
+
/* Annotation draw tool cursor */
|
|
1768
|
+
.udoc-viewer--tool-draw .udoc-viewport__scroll {
|
|
1769
|
+
cursor: crosshair;
|
|
1770
|
+
}
|
|
1771
|
+
|
|
1772
|
+
.udoc-viewer--tool-draw .udoc-spread__text-layer {
|
|
1773
|
+
pointer-events: none;
|
|
1774
|
+
}
|
|
1775
|
+
|
|
1776
|
+
.udoc-viewer--tool-draw .udoc-text-run {
|
|
1777
|
+
user-select: none;
|
|
1778
|
+
}
|
|
1779
|
+
|
|
1268
1780
|
/* Annotation Layer */
|
|
1269
1781
|
.udoc-viewer-root .udoc-spread__annotation-layer {
|
|
1270
1782
|
position: absolute;
|
|
@@ -1335,7 +1847,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1335
1847
|
/* Annotation popup */
|
|
1336
1848
|
.udoc-viewer-root .udoc-annotation-popup {
|
|
1337
1849
|
position: absolute;
|
|
1338
|
-
z-index:
|
|
1850
|
+
z-index: 30;
|
|
1339
1851
|
min-width: 200px;
|
|
1340
1852
|
max-width: 300px;
|
|
1341
1853
|
background: var(--udoc-annotation-bg);
|
|
@@ -1700,7 +2212,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1700
2212
|
outline: 2px solid var(--udoc-primary);
|
|
1701
2213
|
outline-offset: 2px;
|
|
1702
2214
|
border-radius: 2px;
|
|
1703
|
-
z-index:
|
|
2215
|
+
z-index: 20;
|
|
1704
2216
|
}
|
|
1705
2217
|
|
|
1706
2218
|
/* Highlight indicator for full-layer markup annotations */
|
|
@@ -1712,7 +2224,125 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1712
2224
|
outline: 2px solid var(--udoc-primary);
|
|
1713
2225
|
outline-offset: 2px;
|
|
1714
2226
|
border-radius: 2px;
|
|
2227
|
+
z-index: 20;
|
|
2228
|
+
}
|
|
2229
|
+
|
|
2230
|
+
/* Annotation select tool */
|
|
2231
|
+
.udoc-viewer--tool-select .udoc-spread__text-layer {
|
|
2232
|
+
pointer-events: none;
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
.udoc-viewer--tool-select .udoc-text-run {
|
|
2236
|
+
user-select: none;
|
|
2237
|
+
}
|
|
2238
|
+
|
|
2239
|
+
/* SVG shape annotations: make drawn strokes/fills clickable (not empty SVG space) */
|
|
2240
|
+
.udoc-viewer--tool-select .udoc-spread__annotation-layer svg[data-annotation-index] * {
|
|
2241
|
+
pointer-events: painted;
|
|
2242
|
+
cursor: pointer;
|
|
2243
|
+
}
|
|
2244
|
+
|
|
2245
|
+
/* HTML-based annotations (markup quads, text icons, etc.): make children clickable */
|
|
2246
|
+
.udoc-viewer--tool-select .udoc-spread__annotation-layer div[data-annotation-index] > * {
|
|
2247
|
+
pointer-events: auto !important;
|
|
2248
|
+
cursor: pointer;
|
|
2249
|
+
}
|
|
2250
|
+
|
|
2251
|
+
/* Selected annotation bounding box */
|
|
2252
|
+
.udoc-viewer-root .udoc-annotation-select-bbox {
|
|
2253
|
+
pointer-events: none;
|
|
1715
2254
|
z-index: 10;
|
|
2255
|
+
overflow: visible;
|
|
2256
|
+
}
|
|
2257
|
+
|
|
2258
|
+
.udoc-viewer-root .udoc-annotation-select-bbox__inner {
|
|
2259
|
+
box-sizing: border-box;
|
|
2260
|
+
border: 2px solid var(--udoc-selection-color);
|
|
2261
|
+
cursor: grab;
|
|
2262
|
+
pointer-events: auto;
|
|
2263
|
+
}
|
|
2264
|
+
|
|
2265
|
+
/* Resize handles */
|
|
2266
|
+
.udoc-viewer-root .udoc-annotation-select-bbox__handle {
|
|
2267
|
+
position: absolute;
|
|
2268
|
+
width: 10px;
|
|
2269
|
+
height: 10px;
|
|
2270
|
+
background: #fff;
|
|
2271
|
+
border: 2px solid var(--udoc-selection-color);
|
|
2272
|
+
border-radius: 2px;
|
|
2273
|
+
pointer-events: auto;
|
|
2274
|
+
box-sizing: border-box;
|
|
2275
|
+
}
|
|
2276
|
+
|
|
2277
|
+
/* Corner handles */
|
|
2278
|
+
.udoc-annotation-select-bbox__handle--nw {
|
|
2279
|
+
top: -5px;
|
|
2280
|
+
left: -5px;
|
|
2281
|
+
}
|
|
2282
|
+
.udoc-annotation-select-bbox__handle--ne {
|
|
2283
|
+
top: -5px;
|
|
2284
|
+
right: -5px;
|
|
2285
|
+
}
|
|
2286
|
+
.udoc-annotation-select-bbox__handle--se {
|
|
2287
|
+
bottom: -5px;
|
|
2288
|
+
right: -5px;
|
|
2289
|
+
}
|
|
2290
|
+
.udoc-annotation-select-bbox__handle--sw {
|
|
2291
|
+
bottom: -5px;
|
|
2292
|
+
left: -5px;
|
|
2293
|
+
}
|
|
2294
|
+
|
|
2295
|
+
/* Edge midpoint handles */
|
|
2296
|
+
.udoc-annotation-select-bbox__handle--n {
|
|
2297
|
+
top: -5px;
|
|
2298
|
+
left: 50%;
|
|
2299
|
+
margin-left: -5px;
|
|
2300
|
+
}
|
|
2301
|
+
.udoc-annotation-select-bbox__handle--e {
|
|
2302
|
+
top: 50%;
|
|
2303
|
+
right: -5px;
|
|
2304
|
+
margin-top: -5px;
|
|
2305
|
+
}
|
|
2306
|
+
.udoc-annotation-select-bbox__handle--s {
|
|
2307
|
+
bottom: -5px;
|
|
2308
|
+
left: 50%;
|
|
2309
|
+
margin-left: -5px;
|
|
2310
|
+
}
|
|
2311
|
+
.udoc-annotation-select-bbox__handle--w {
|
|
2312
|
+
top: 50%;
|
|
2313
|
+
left: -5px;
|
|
2314
|
+
margin-top: -5px;
|
|
2315
|
+
}
|
|
2316
|
+
|
|
2317
|
+
/* Moving annotation cursor */
|
|
2318
|
+
.udoc-viewer--annotation-moving .udoc-viewport__scroll {
|
|
2319
|
+
cursor: grabbing !important;
|
|
2320
|
+
}
|
|
2321
|
+
|
|
2322
|
+
.udoc-viewer--annotation-moving .udoc-annotation-select-bbox__inner {
|
|
2323
|
+
cursor: grabbing;
|
|
2324
|
+
}
|
|
2325
|
+
|
|
2326
|
+
/* Resizing annotation — lock cursor globally */
|
|
2327
|
+
.udoc-viewer--annotation-resizing .udoc-viewport__scroll {
|
|
2328
|
+
cursor: inherit !important;
|
|
2329
|
+
}
|
|
2330
|
+
|
|
2331
|
+
/* Delete button in sub-toolbar */
|
|
2332
|
+
.udoc-viewer-root .udoc-subtoolbar__btn--delete {
|
|
2333
|
+
color: var(--udoc-text-color);
|
|
2334
|
+
transition:
|
|
2335
|
+
color 0.15s ease,
|
|
2336
|
+
opacity 0.15s ease;
|
|
2337
|
+
}
|
|
2338
|
+
|
|
2339
|
+
.udoc-viewer-root .udoc-subtoolbar__btn--delete:disabled {
|
|
2340
|
+
opacity: 0.35;
|
|
2341
|
+
cursor: default;
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
.udoc-viewer-root .udoc-subtoolbar__btn--delete:not(:disabled):hover {
|
|
2345
|
+
color: var(--udoc-error, #d32f2f);
|
|
1716
2346
|
}
|
|
1717
2347
|
|
|
1718
2348
|
/* Mobile Panel Overlay */
|
|
@@ -1724,7 +2354,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1724
2354
|
right: 0;
|
|
1725
2355
|
bottom: 0;
|
|
1726
2356
|
background: var(--udoc-bg-overlay);
|
|
1727
|
-
z-index:
|
|
2357
|
+
z-index: 40;
|
|
1728
2358
|
}
|
|
1729
2359
|
|
|
1730
2360
|
/* ===== Responsive: Small Mobile (≤480px) ===== */
|
|
@@ -1741,7 +2371,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1741
2371
|
left: 0;
|
|
1742
2372
|
bottom: 0;
|
|
1743
2373
|
width: 280px !important;
|
|
1744
|
-
z-index:
|
|
2374
|
+
z-index: 50;
|
|
1745
2375
|
transform: translateX(-100%);
|
|
1746
2376
|
transition: transform 0.2s ease;
|
|
1747
2377
|
}
|
|
@@ -1762,7 +2392,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1762
2392
|
right: 0;
|
|
1763
2393
|
bottom: 0;
|
|
1764
2394
|
width: 280px !important;
|
|
1765
|
-
z-index:
|
|
2395
|
+
z-index: 50;
|
|
1766
2396
|
transform: translateX(100%);
|
|
1767
2397
|
transition: transform 0.2s ease;
|
|
1768
2398
|
}
|
|
@@ -1804,16 +2434,17 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1804
2434
|
box-sizing: border-box;
|
|
1805
2435
|
background: var(--udoc-bg-panel);
|
|
1806
2436
|
border-top: 1px solid var(--udoc-border);
|
|
2437
|
+
box-shadow: none;
|
|
1807
2438
|
height: 40px;
|
|
1808
|
-
padding: 0
|
|
1809
|
-
gap:
|
|
2439
|
+
padding: 0 4px;
|
|
2440
|
+
gap: 4px;
|
|
1810
2441
|
max-width: none;
|
|
1811
2442
|
justify-content: center;
|
|
1812
2443
|
}
|
|
1813
2444
|
|
|
1814
2445
|
/* Raise toolbar above slide-out panels so overflow dropdown is not hidden */
|
|
1815
2446
|
.udoc-viewer-root .udoc-toolbar-slot {
|
|
1816
|
-
z-index:
|
|
2447
|
+
z-index: 60;
|
|
1817
2448
|
}
|
|
1818
2449
|
|
|
1819
2450
|
/* Hide individual right-section buttons on mobile; show overflow menu */
|
|
@@ -1830,26 +2461,25 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1830
2461
|
display: block;
|
|
1831
2462
|
}
|
|
1832
2463
|
|
|
1833
|
-
/*
|
|
2464
|
+
/* Panel tab buttons for touch */
|
|
1834
2465
|
.udoc-viewer-root .udoc-left-panel__tabs {
|
|
1835
|
-
width:
|
|
2466
|
+
width: 32px;
|
|
1836
2467
|
padding: 8px 0;
|
|
1837
2468
|
}
|
|
1838
2469
|
|
|
1839
2470
|
.udoc-viewer-root .udoc-left-panel__tab {
|
|
1840
|
-
width:
|
|
1841
|
-
height:
|
|
2471
|
+
width: 32px;
|
|
2472
|
+
height: 32px;
|
|
1842
2473
|
}
|
|
1843
2474
|
|
|
1844
2475
|
.udoc-viewer-root .udoc-left-panel__tab svg {
|
|
1845
|
-
width:
|
|
1846
|
-
height:
|
|
2476
|
+
width: 18px;
|
|
2477
|
+
height: 18px;
|
|
1847
2478
|
}
|
|
1848
2479
|
|
|
1849
2480
|
/* Toolbar adjustments */
|
|
1850
2481
|
.udoc-viewer-root .udoc-toolbar {
|
|
1851
2482
|
padding: 0 4px;
|
|
1852
|
-
gap: 4px;
|
|
1853
2483
|
}
|
|
1854
2484
|
|
|
1855
2485
|
.udoc-viewer-root .udoc-toolbar__btn {
|
|
@@ -1884,7 +2514,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1884
2514
|
display: flex;
|
|
1885
2515
|
align-items: center;
|
|
1886
2516
|
justify-content: center;
|
|
1887
|
-
z-index:
|
|
2517
|
+
z-index: 80;
|
|
1888
2518
|
}
|
|
1889
2519
|
|
|
1890
2520
|
.udoc-viewer-root .udoc-password-dialog {
|
|
@@ -1970,8 +2600,8 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
1970
2600
|
display: flex;
|
|
1971
2601
|
align-items: center;
|
|
1972
2602
|
justify-content: center;
|
|
1973
|
-
width:
|
|
1974
|
-
height:
|
|
2603
|
+
width: 32px;
|
|
2604
|
+
height: 32px;
|
|
1975
2605
|
border: none;
|
|
1976
2606
|
background: transparent;
|
|
1977
2607
|
color: var(--udoc-text-subtle);
|
|
@@ -2039,7 +2669,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2039
2669
|
display: flex;
|
|
2040
2670
|
align-items: center;
|
|
2041
2671
|
justify-content: center;
|
|
2042
|
-
z-index:
|
|
2672
|
+
z-index: 90;
|
|
2043
2673
|
}
|
|
2044
2674
|
|
|
2045
2675
|
.udoc-viewer-root .udoc-print-dialog {
|
|
@@ -2203,7 +2833,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2203
2833
|
display: flex;
|
|
2204
2834
|
align-items: center;
|
|
2205
2835
|
justify-content: center;
|
|
2206
|
-
z-index:
|
|
2836
|
+
z-index: 70;
|
|
2207
2837
|
backdrop-filter: blur(2px);
|
|
2208
2838
|
}
|
|
2209
2839
|
|
|
@@ -2379,8 +3009,8 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2379
3009
|
display: flex;
|
|
2380
3010
|
align-items: center;
|
|
2381
3011
|
justify-content: center;
|
|
2382
|
-
width:
|
|
2383
|
-
height:
|
|
3012
|
+
width: 32px;
|
|
3013
|
+
height: 32px;
|
|
2384
3014
|
border: 1px solid var(--udoc-border-input);
|
|
2385
3015
|
border-radius: 4px;
|
|
2386
3016
|
background: var(--udoc-bg-input);
|
|
@@ -2558,7 +3188,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2558
3188
|
position: absolute;
|
|
2559
3189
|
top: -100px;
|
|
2560
3190
|
left: 0;
|
|
2561
|
-
z-index:
|
|
3191
|
+
z-index: 100;
|
|
2562
3192
|
padding: 8px 16px;
|
|
2563
3193
|
background: var(--udoc-bg-surface);
|
|
2564
3194
|
color: var(--udoc-text-heading);
|
|
@@ -2600,7 +3230,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2600
3230
|
--udoc-border-input: #000;
|
|
2601
3231
|
--udoc-text-muted: rgba(0, 0, 0, 0.7);
|
|
2602
3232
|
--udoc-text-faint: rgba(0, 0, 0, 0.6);
|
|
2603
|
-
--udoc-primary-focus-ring: rgba(0,
|
|
3233
|
+
--udoc-primary-focus-ring: rgba(0, 0, 0, 0.4);
|
|
2604
3234
|
}
|
|
2605
3235
|
|
|
2606
3236
|
.udoc-viewer-root.udoc-viewer-dark {
|
|
@@ -2608,7 +3238,7 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2608
3238
|
--udoc-border-input: #aaa;
|
|
2609
3239
|
--udoc-text-muted: rgba(255, 255, 255, 0.7);
|
|
2610
3240
|
--udoc-text-faint: rgba(255, 255, 255, 0.6);
|
|
2611
|
-
--udoc-primary-focus-ring: rgba(
|
|
3241
|
+
--udoc-primary-focus-ring: rgba(255, 255, 255, 0.45);
|
|
2612
3242
|
}
|
|
2613
3243
|
|
|
2614
3244
|
.udoc-viewer-root :focus-visible {
|
|
@@ -2623,7 +3253,6 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2623
3253
|
}
|
|
2624
3254
|
|
|
2625
3255
|
.udoc-viewer-root .udoc-toolbar__btn,
|
|
2626
|
-
.udoc-viewer-root .udoc-floating-toolbar__btn,
|
|
2627
3256
|
.udoc-viewer-root .udoc-left-panel__tab {
|
|
2628
3257
|
border: 1px solid ButtonText;
|
|
2629
3258
|
}
|
|
@@ -2649,17 +3278,17 @@ export const inlineStyles = `.udoc-viewer-root {
|
|
|
2649
3278
|
/* Touch target sizes for coarse pointers (panels and side UI only — toolbars handle their own sizing) */
|
|
2650
3279
|
@media (pointer: coarse) {
|
|
2651
3280
|
.udoc-viewer-root .udoc-left-panel__tab {
|
|
2652
|
-
width:
|
|
2653
|
-
height:
|
|
3281
|
+
width: 32px;
|
|
3282
|
+
height: 32px;
|
|
2654
3283
|
}
|
|
2655
3284
|
|
|
2656
3285
|
.udoc-viewer-root .udoc-left-panel__tabs {
|
|
2657
|
-
width:
|
|
3286
|
+
width: 32px;
|
|
2658
3287
|
}
|
|
2659
3288
|
|
|
2660
3289
|
.udoc-viewer-root .udoc-outline-item__toggle {
|
|
2661
|
-
min-width:
|
|
2662
|
-
min-height:
|
|
3290
|
+
min-width: 32px;
|
|
3291
|
+
min-height: 32px;
|
|
2663
3292
|
}
|
|
2664
3293
|
}
|
|
2665
3294
|
`;
|