@bendyline/docblocks-react 2.2.0 → 2.2.2
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/THIRD_PARTY_NOTICES.txt +11842 -0
- package/dist/{ExportDialog-VYATD5UC.js → ExportDialog-HPFPXELL.js} +1 -1
- package/dist/{ExportToolbarControls-C46GMPKC.js → ExportToolbarControls-773QRE4R.js} +141 -79
- package/dist/{GitToolbarControl-FW3BZFXV.js → GitToolbarControl-VJVK2B4X.js} +4 -3
- package/dist/{GitUI-GMH3PAYL.js → GitUI-CAKFVKWY.js} +4 -3
- package/dist/chunk-APC4KI4B.js +0 -0
- package/dist/{chunk-BPGEBGAN.js → chunk-JDJVRDOP.js} +23 -0
- package/dist/{chunk-3CZ27FOA.js → chunk-MHTQORMH.js} +1 -17
- package/dist/{chunk-TFMO7EVO.js → chunk-MRUK56JS.js} +23 -4
- package/dist/chunk-VRRL6VTD.js +606 -0
- package/dist/editor.d.ts +12 -1
- package/dist/editor.js +9 -3
- package/dist/export/index.d.ts +1 -3
- package/dist/export/index.js +1 -1
- package/dist/index.d.ts +61 -8
- package/dist/index.js +2154 -787
- package/dist/settings/index.d.ts +34 -2
- package/dist/settings/index.js +9 -3
- package/package.json +11 -10
- package/src/styles/docblocks.css +487 -17
- package/dist/chunk-3QSZY74C.js +0 -255
package/src/styles/docblocks.css
CHANGED
|
@@ -198,6 +198,136 @@
|
|
|
198
198
|
gap: 2px;
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
+
.db-pinned-documents {
|
|
202
|
+
display: flex;
|
|
203
|
+
flex-direction: column;
|
|
204
|
+
flex: 0 1 auto;
|
|
205
|
+
min-height: 0;
|
|
206
|
+
max-height: 38%;
|
|
207
|
+
overflow: hidden;
|
|
208
|
+
border-bottom: 1px solid var(--db-border-strong);
|
|
209
|
+
background: var(--db-bg-subtle);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
.db-pinned-documents-title {
|
|
213
|
+
display: flex;
|
|
214
|
+
align-items: center;
|
|
215
|
+
gap: 6px;
|
|
216
|
+
margin: 0;
|
|
217
|
+
padding: 8px 10px 5px;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.db-pinned-documents-title i {
|
|
221
|
+
font-size: 10px;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
.db-pinned-document-list {
|
|
225
|
+
min-height: 0;
|
|
226
|
+
overflow-y: auto;
|
|
227
|
+
padding: 0 0 4px;
|
|
228
|
+
scrollbar-color: var(--db-accent) var(--db-bg-subtle);
|
|
229
|
+
scrollbar-width: thin;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.db-pinned-document-row {
|
|
233
|
+
position: relative;
|
|
234
|
+
display: flex;
|
|
235
|
+
align-items: stretch;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.db-pinned-document {
|
|
239
|
+
display: flex;
|
|
240
|
+
align-items: center;
|
|
241
|
+
flex: 1;
|
|
242
|
+
gap: 7px;
|
|
243
|
+
min-width: 0;
|
|
244
|
+
padding: 6px 4px 6px 10px;
|
|
245
|
+
border: 0;
|
|
246
|
+
background: transparent;
|
|
247
|
+
color: var(--db-text);
|
|
248
|
+
font: inherit;
|
|
249
|
+
text-align: left;
|
|
250
|
+
cursor: pointer;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
.db-pinned-document-row:hover,
|
|
254
|
+
.db-pinned-document-row:has(:focus-visible) {
|
|
255
|
+
background: var(--db-bg-hover);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.db-pinned-document:focus-visible {
|
|
259
|
+
outline: 2px solid var(--db-focus);
|
|
260
|
+
outline-offset: -2px;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
.db-pinned-document-row--selected,
|
|
264
|
+
.db-pinned-document-row--selected:hover,
|
|
265
|
+
.db-pinned-document-row--selected:has(:focus-visible) {
|
|
266
|
+
--db-focus: #ffffff;
|
|
267
|
+
background: var(--db-bg-selected);
|
|
268
|
+
color: var(--db-text-on-selected);
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
.db-pinned-document-more {
|
|
272
|
+
display: flex;
|
|
273
|
+
align-items: center;
|
|
274
|
+
justify-content: center;
|
|
275
|
+
flex: 0 0 30px;
|
|
276
|
+
min-width: 30px;
|
|
277
|
+
border: 0;
|
|
278
|
+
background: transparent;
|
|
279
|
+
color: inherit;
|
|
280
|
+
cursor: pointer;
|
|
281
|
+
opacity: 0.72;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.db-pinned-document-more:hover,
|
|
285
|
+
.db-pinned-document-more--active {
|
|
286
|
+
opacity: 1;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.db-pinned-document-more:focus-visible {
|
|
290
|
+
outline: 2px solid var(--db-focus);
|
|
291
|
+
outline-offset: -2px;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.db-pinned-document-heading {
|
|
295
|
+
min-width: 0;
|
|
296
|
+
display: flex;
|
|
297
|
+
flex: 1;
|
|
298
|
+
align-items: baseline;
|
|
299
|
+
gap: 6px;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
.db-pinned-document-name {
|
|
303
|
+
flex: 1;
|
|
304
|
+
min-width: 0;
|
|
305
|
+
overflow: hidden;
|
|
306
|
+
text-overflow: ellipsis;
|
|
307
|
+
white-space: nowrap;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.db-pinned-document-missing {
|
|
311
|
+
flex: 0 0 auto;
|
|
312
|
+
color: var(--db-danger);
|
|
313
|
+
font-size: 11px;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
.db-pinned-document-row--selected .db-pinned-document-missing {
|
|
317
|
+
color: inherit;
|
|
318
|
+
opacity: 0.82;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
.db-pinned-document-error {
|
|
322
|
+
position: absolute;
|
|
323
|
+
z-index: 1;
|
|
324
|
+
top: 100%;
|
|
325
|
+
right: 4px;
|
|
326
|
+
left: 4px;
|
|
327
|
+
margin: 0;
|
|
328
|
+
background: var(--db-bg);
|
|
329
|
+
}
|
|
330
|
+
|
|
201
331
|
.db-explorer-btn {
|
|
202
332
|
width: 24px;
|
|
203
333
|
height: 24px;
|
|
@@ -411,6 +541,34 @@
|
|
|
411
541
|
flex: 1;
|
|
412
542
|
overflow-y: auto;
|
|
413
543
|
padding: 2px 0;
|
|
544
|
+
scrollbar-color: var(--db-accent) var(--db-bg);
|
|
545
|
+
scrollbar-width: thin;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
.db-tree::-webkit-scrollbar {
|
|
549
|
+
width: 12px;
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
.db-tree::-webkit-scrollbar-track,
|
|
553
|
+
.db-tree::-webkit-scrollbar-corner {
|
|
554
|
+
background: var(--db-bg);
|
|
555
|
+
}
|
|
556
|
+
|
|
557
|
+
.db-tree::-webkit-scrollbar-thumb {
|
|
558
|
+
min-height: 32px;
|
|
559
|
+
background: var(--db-accent);
|
|
560
|
+
border: 3px solid var(--db-bg);
|
|
561
|
+
border-radius: 999px;
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
.db-tree::-webkit-scrollbar-thumb:hover {
|
|
565
|
+
background: var(--db-accent-hover);
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
.db-tree::-webkit-scrollbar-button {
|
|
569
|
+
display: none;
|
|
570
|
+
width: 0;
|
|
571
|
+
height: 0;
|
|
414
572
|
}
|
|
415
573
|
|
|
416
574
|
.db-tree-loading,
|
|
@@ -429,6 +587,10 @@
|
|
|
429
587
|
font-size: 12px;
|
|
430
588
|
}
|
|
431
589
|
|
|
590
|
+
.db-tree-error--child {
|
|
591
|
+
margin-left: 24px;
|
|
592
|
+
}
|
|
593
|
+
|
|
432
594
|
.db-tree-error-retry {
|
|
433
595
|
border: 0;
|
|
434
596
|
padding: 0;
|
|
@@ -555,11 +717,18 @@
|
|
|
555
717
|
|
|
556
718
|
.db-tree-row:hover .db-tree-more,
|
|
557
719
|
.db-tree-row:focus-within .db-tree-more,
|
|
720
|
+
.db-tree-row--selected .db-tree-more,
|
|
558
721
|
.db-tree-more:focus-visible,
|
|
559
722
|
.db-tree-more--active {
|
|
560
723
|
visibility: visible;
|
|
561
724
|
}
|
|
562
725
|
|
|
726
|
+
@media (hover: none), (pointer: coarse) {
|
|
727
|
+
.db-tree-more {
|
|
728
|
+
visibility: visible;
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
|
|
563
732
|
.db-tree-more:hover {
|
|
564
733
|
background: var(--db-bg-hover);
|
|
565
734
|
color: var(--db-text);
|
|
@@ -1173,15 +1342,13 @@ body.db-resizing-sidebar * {
|
|
|
1173
1342
|
}
|
|
1174
1343
|
|
|
1175
1344
|
.db-shell-sidebar-footer-action {
|
|
1176
|
-
|
|
1345
|
+
flex-shrink: 0;
|
|
1177
1346
|
padding: 0;
|
|
1178
|
-
overflow: hidden;
|
|
1179
1347
|
border: 0;
|
|
1180
1348
|
background: transparent;
|
|
1181
1349
|
font: inherit;
|
|
1182
1350
|
line-height: inherit;
|
|
1183
1351
|
text-decoration: underline;
|
|
1184
|
-
text-overflow: ellipsis;
|
|
1185
1352
|
white-space: nowrap;
|
|
1186
1353
|
cursor: pointer;
|
|
1187
1354
|
}
|
|
@@ -1600,6 +1767,21 @@ body.db-resizing-sidebar * {
|
|
|
1600
1767
|
gap: 6px;
|
|
1601
1768
|
}
|
|
1602
1769
|
|
|
1770
|
+
.db-about-beta {
|
|
1771
|
+
margin-bottom: 10px;
|
|
1772
|
+
padding: 10px 12px;
|
|
1773
|
+
border: 1px solid var(--db-accent);
|
|
1774
|
+
border-radius: 6px;
|
|
1775
|
+
background: var(--db-accent-soft-08);
|
|
1776
|
+
color: var(--db-text-secondary);
|
|
1777
|
+
font-size: 12px;
|
|
1778
|
+
line-height: 1.5;
|
|
1779
|
+
}
|
|
1780
|
+
|
|
1781
|
+
.db-about-beta strong {
|
|
1782
|
+
color: var(--db-accent-deep);
|
|
1783
|
+
}
|
|
1784
|
+
|
|
1603
1785
|
.db-about-version {
|
|
1604
1786
|
display: flex;
|
|
1605
1787
|
align-items: center;
|
|
@@ -1637,7 +1819,7 @@ body.db-resizing-sidebar * {
|
|
|
1637
1819
|
}
|
|
1638
1820
|
|
|
1639
1821
|
.db-settings-fieldset + .db-settings-fieldset {
|
|
1640
|
-
margin-top:
|
|
1822
|
+
margin-top: 16px;
|
|
1641
1823
|
}
|
|
1642
1824
|
|
|
1643
1825
|
.db-settings-legend {
|
|
@@ -1679,6 +1861,16 @@ body.db-resizing-sidebar * {
|
|
|
1679
1861
|
accent-color: var(--db-accent);
|
|
1680
1862
|
}
|
|
1681
1863
|
|
|
1864
|
+
.db-settings-radio-row {
|
|
1865
|
+
display: flex;
|
|
1866
|
+
flex-wrap: wrap;
|
|
1867
|
+
gap: 8px 20px;
|
|
1868
|
+
}
|
|
1869
|
+
|
|
1870
|
+
.db-settings-radio--inline {
|
|
1871
|
+
padding: 2px 0;
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1682
1874
|
.db-settings-checkbox {
|
|
1683
1875
|
display: flex;
|
|
1684
1876
|
align-items: center;
|
|
@@ -1726,6 +1918,188 @@ body.db-resizing-sidebar * {
|
|
|
1726
1918
|
cursor: pointer;
|
|
1727
1919
|
}
|
|
1728
1920
|
|
|
1921
|
+
.db-settings-select {
|
|
1922
|
+
display: flex;
|
|
1923
|
+
flex-direction: column;
|
|
1924
|
+
gap: 6px;
|
|
1925
|
+
margin-top: 14px;
|
|
1926
|
+
color: var(--db-text);
|
|
1927
|
+
font-size: 13px;
|
|
1928
|
+
}
|
|
1929
|
+
|
|
1930
|
+
.db-settings-select-header {
|
|
1931
|
+
display: flex;
|
|
1932
|
+
align-items: baseline;
|
|
1933
|
+
justify-content: space-between;
|
|
1934
|
+
gap: 16px;
|
|
1935
|
+
}
|
|
1936
|
+
|
|
1937
|
+
.db-settings-select-input {
|
|
1938
|
+
width: 100%;
|
|
1939
|
+
padding: 6px 8px;
|
|
1940
|
+
font: inherit;
|
|
1941
|
+
font-size: 13px;
|
|
1942
|
+
background: var(--db-bg-subtle);
|
|
1943
|
+
color: var(--db-text);
|
|
1944
|
+
border: 1px solid var(--db-input-border);
|
|
1945
|
+
border-radius: 4px;
|
|
1946
|
+
outline: none;
|
|
1947
|
+
cursor: pointer;
|
|
1948
|
+
appearance: auto;
|
|
1949
|
+
}
|
|
1950
|
+
|
|
1951
|
+
.db-settings-select-input:focus-visible {
|
|
1952
|
+
border-color: var(--db-accent);
|
|
1953
|
+
}
|
|
1954
|
+
|
|
1955
|
+
.db-font-picker {
|
|
1956
|
+
position: relative;
|
|
1957
|
+
}
|
|
1958
|
+
|
|
1959
|
+
.db-font-picker-trigger {
|
|
1960
|
+
display: flex;
|
|
1961
|
+
align-items: center;
|
|
1962
|
+
gap: 12px;
|
|
1963
|
+
box-sizing: border-box;
|
|
1964
|
+
width: 100%;
|
|
1965
|
+
min-height: 54px;
|
|
1966
|
+
padding: 7px 10px 7px 12px;
|
|
1967
|
+
overflow: hidden;
|
|
1968
|
+
border: 1px solid var(--db-input-border);
|
|
1969
|
+
border-radius: 5px;
|
|
1970
|
+
outline: none;
|
|
1971
|
+
background: var(--db-bg-subtle);
|
|
1972
|
+
color: var(--db-text);
|
|
1973
|
+
text-align: left;
|
|
1974
|
+
cursor: pointer;
|
|
1975
|
+
}
|
|
1976
|
+
|
|
1977
|
+
.db-font-picker-trigger:hover,
|
|
1978
|
+
.db-font-picker-trigger[aria-expanded='true'] {
|
|
1979
|
+
background: var(--db-bg-hover);
|
|
1980
|
+
}
|
|
1981
|
+
|
|
1982
|
+
.db-font-picker-trigger:focus-visible {
|
|
1983
|
+
border-color: var(--db-accent);
|
|
1984
|
+
box-shadow: 0 0 0 1px var(--db-accent);
|
|
1985
|
+
}
|
|
1986
|
+
|
|
1987
|
+
.db-font-picker-caret {
|
|
1988
|
+
flex: 0 0 auto;
|
|
1989
|
+
width: 7px;
|
|
1990
|
+
height: 7px;
|
|
1991
|
+
margin: 0 3px 3px 0;
|
|
1992
|
+
border-right: 2px solid currentColor;
|
|
1993
|
+
border-bottom: 2px solid currentColor;
|
|
1994
|
+
color: var(--db-text-muted);
|
|
1995
|
+
transform: rotate(45deg);
|
|
1996
|
+
transition: transform 120ms ease;
|
|
1997
|
+
}
|
|
1998
|
+
|
|
1999
|
+
.db-font-picker-caret--open {
|
|
2000
|
+
margin-top: 5px;
|
|
2001
|
+
transform: rotate(225deg);
|
|
2002
|
+
}
|
|
2003
|
+
|
|
2004
|
+
.db-font-picker-menu {
|
|
2005
|
+
position: fixed;
|
|
2006
|
+
z-index: 3100;
|
|
2007
|
+
box-sizing: border-box;
|
|
2008
|
+
padding: 5px;
|
|
2009
|
+
overflow-y: auto;
|
|
2010
|
+
overscroll-behavior: contain;
|
|
2011
|
+
border: 1px solid var(--db-border-strong);
|
|
2012
|
+
border-radius: 6px;
|
|
2013
|
+
outline: none;
|
|
2014
|
+
background: var(--db-bg);
|
|
2015
|
+
color: var(--db-text);
|
|
2016
|
+
box-shadow: 0 10px 28px var(--db-shadow);
|
|
2017
|
+
}
|
|
2018
|
+
|
|
2019
|
+
.db-font-picker-group {
|
|
2020
|
+
padding: 10px 10px 4px;
|
|
2021
|
+
color: var(--db-text-muted);
|
|
2022
|
+
font:
|
|
2023
|
+
600 10px/1.2 system-ui,
|
|
2024
|
+
-apple-system,
|
|
2025
|
+
'Segoe UI',
|
|
2026
|
+
sans-serif;
|
|
2027
|
+
letter-spacing: 0.065em;
|
|
2028
|
+
text-transform: uppercase;
|
|
2029
|
+
}
|
|
2030
|
+
|
|
2031
|
+
.db-font-picker-option {
|
|
2032
|
+
display: flex;
|
|
2033
|
+
align-items: center;
|
|
2034
|
+
gap: 12px;
|
|
2035
|
+
min-height: 50px;
|
|
2036
|
+
padding: 6px 9px 6px 11px;
|
|
2037
|
+
border-radius: 4px;
|
|
2038
|
+
color: var(--db-text);
|
|
2039
|
+
cursor: pointer;
|
|
2040
|
+
user-select: none;
|
|
2041
|
+
}
|
|
2042
|
+
|
|
2043
|
+
.db-font-picker-option--active {
|
|
2044
|
+
background: var(--db-bg-hover);
|
|
2045
|
+
}
|
|
2046
|
+
|
|
2047
|
+
.db-font-picker-option--selected {
|
|
2048
|
+
background: var(--db-accent-soft-12);
|
|
2049
|
+
}
|
|
2050
|
+
|
|
2051
|
+
.db-font-picker-option--selected.db-font-picker-option--active {
|
|
2052
|
+
background: var(--db-accent-soft-25);
|
|
2053
|
+
}
|
|
2054
|
+
|
|
2055
|
+
.db-font-picker-preview {
|
|
2056
|
+
display: flex;
|
|
2057
|
+
flex: 1 1 auto;
|
|
2058
|
+
flex-direction: column;
|
|
2059
|
+
min-width: 0;
|
|
2060
|
+
line-height: 1.2;
|
|
2061
|
+
}
|
|
2062
|
+
|
|
2063
|
+
.db-font-picker-heading,
|
|
2064
|
+
.db-font-picker-body {
|
|
2065
|
+
overflow: hidden;
|
|
2066
|
+
text-overflow: ellipsis;
|
|
2067
|
+
white-space: nowrap;
|
|
2068
|
+
}
|
|
2069
|
+
|
|
2070
|
+
.db-font-picker-heading {
|
|
2071
|
+
color: var(--db-text);
|
|
2072
|
+
font-size: 16px;
|
|
2073
|
+
font-weight: 650;
|
|
2074
|
+
}
|
|
2075
|
+
|
|
2076
|
+
.db-font-picker-body {
|
|
2077
|
+
margin-top: 3px;
|
|
2078
|
+
color: var(--db-text-secondary);
|
|
2079
|
+
font-size: 12px;
|
|
2080
|
+
font-weight: 400;
|
|
2081
|
+
}
|
|
2082
|
+
|
|
2083
|
+
.db-font-picker-preview--compact .db-font-picker-heading {
|
|
2084
|
+
font-size: 15px;
|
|
2085
|
+
}
|
|
2086
|
+
|
|
2087
|
+
.db-font-picker-preview--compact .db-font-picker-body {
|
|
2088
|
+
color: var(--db-text-muted);
|
|
2089
|
+
font-size: 11px;
|
|
2090
|
+
}
|
|
2091
|
+
|
|
2092
|
+
.db-font-picker-check {
|
|
2093
|
+
flex: 0 0 18px;
|
|
2094
|
+
color: var(--db-accent-deep);
|
|
2095
|
+
font:
|
|
2096
|
+
700 14px/1 system-ui,
|
|
2097
|
+
-apple-system,
|
|
2098
|
+
'Segoe UI',
|
|
2099
|
+
sans-serif;
|
|
2100
|
+
text-align: center;
|
|
2101
|
+
}
|
|
2102
|
+
|
|
1729
2103
|
.db-settings-accent-grid {
|
|
1730
2104
|
display: grid;
|
|
1731
2105
|
grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
|
|
@@ -2043,6 +2417,15 @@ body.db-resizing-sidebar * {
|
|
|
2043
2417
|
padding: 4px 0;
|
|
2044
2418
|
}
|
|
2045
2419
|
|
|
2420
|
+
.db-export-toolbar-menu-dropdown {
|
|
2421
|
+
max-width: min(720px, calc(100vw - 16px));
|
|
2422
|
+
}
|
|
2423
|
+
|
|
2424
|
+
.db-export-toolbar-menu-dropdown .db-toolbar-menu-item {
|
|
2425
|
+
overflow: hidden;
|
|
2426
|
+
text-overflow: ellipsis;
|
|
2427
|
+
}
|
|
2428
|
+
|
|
2046
2429
|
.db-toolbar-menu-item {
|
|
2047
2430
|
display: block;
|
|
2048
2431
|
width: 100%;
|
|
@@ -2377,11 +2760,55 @@ body.db-resizing-sidebar * {
|
|
|
2377
2760
|
background: var(--db-editor-canvas);
|
|
2378
2761
|
}
|
|
2379
2762
|
|
|
2380
|
-
/* Bind Squisq's host-facing accent to the active DocBlocks appearance.
|
|
2763
|
+
/* Bind Squisq's host-facing accent to the active DocBlocks appearance.
|
|
2764
|
+
RawEditor uses the editor background/foreground variables for its
|
|
2765
|
+
textarea while Monaco's first lazy load is in flight. Define them here so
|
|
2766
|
+
Source view never paints Squisq's light fallback before the requested
|
|
2767
|
+
Monaco theme is ready. */
|
|
2381
2768
|
.db-shell .squisq-editor-shell {
|
|
2382
2769
|
--squisq-accent: var(--db-accent);
|
|
2383
2770
|
--squisq-accent-hover: var(--db-accent-hover);
|
|
2384
2771
|
--squisq-text-on-accent: var(--db-text-on-accent);
|
|
2772
|
+
--squisq-editor-background: #ffffff;
|
|
2773
|
+
--squisq-editor-foreground: #1f2937;
|
|
2774
|
+
}
|
|
2775
|
+
|
|
2776
|
+
.db-shell .squisq-editor-shell[data-theme='dark'] {
|
|
2777
|
+
/* Match Monaco's built-in vs-dark canvas exactly so replacing the loading
|
|
2778
|
+
textarea with Monaco does not introduce a second, subtler color flash. */
|
|
2779
|
+
--squisq-editor-background: #1e1e1e;
|
|
2780
|
+
--squisq-editor-foreground: #d4d4d4;
|
|
2781
|
+
}
|
|
2782
|
+
|
|
2783
|
+
/* The Write-canvas font picker is an explicit host preference, so its
|
|
2784
|
+
variables must beat the active document theme in Write mode. Squisq's base
|
|
2785
|
+
stylesheet intentionally puts theme fonts first; reverse that order only
|
|
2786
|
+
inside the DocBlocks shell. When "Inherit from theme" is selected the Write
|
|
2787
|
+
variables are absent, and these declarations fall straight through to the
|
|
2788
|
+
same theme title/body fonts as before. */
|
|
2789
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor {
|
|
2790
|
+
font-family: var(--squisq-write-body-font, var(--squisq-theme-body-font, inherit));
|
|
2791
|
+
}
|
|
2792
|
+
|
|
2793
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h1,
|
|
2794
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h2,
|
|
2795
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h3,
|
|
2796
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h4,
|
|
2797
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h5,
|
|
2798
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor h6 {
|
|
2799
|
+
font-family: var(
|
|
2800
|
+
--squisq-write-header-font,
|
|
2801
|
+
var(
|
|
2802
|
+
--squisq-write-body-font,
|
|
2803
|
+
var(--squisq-theme-title-font, var(--squisq-theme-body-font, inherit))
|
|
2804
|
+
)
|
|
2805
|
+
);
|
|
2806
|
+
}
|
|
2807
|
+
|
|
2808
|
+
/* Squisq's default horizontal rule uses a fixed slate border in both
|
|
2809
|
+
appearances. Keep document rules aligned with the selected host accent. */
|
|
2810
|
+
.db-shell .squisq-editor-shell .squisq-wysiwyg-editor hr {
|
|
2811
|
+
border-top-color: var(--db-accent);
|
|
2385
2812
|
}
|
|
2386
2813
|
|
|
2387
2814
|
/* Simple diagrams, drawings, and layout canvases share Squisq's Scene
|
|
@@ -4049,6 +4476,46 @@ html:has(.db-shell[data-theme='dark'])
|
|
|
4049
4476
|
border-color: var(--db-border);
|
|
4050
4477
|
}
|
|
4051
4478
|
|
|
4479
|
+
/* View menu. Squisq's dark appearance otherwise replaces its generic
|
|
4480
|
+
variables with a fixed slate-blue palette. Keep the popover and its
|
|
4481
|
+
controls on the same host palette as the DocBlocks app and overflow
|
|
4482
|
+
menus, including the native radio/checkbox selection color. */
|
|
4483
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-popover {
|
|
4484
|
+
background: var(--db-bg);
|
|
4485
|
+
border-color: var(--db-border);
|
|
4486
|
+
box-shadow: 0 4px 12px var(--db-shadow);
|
|
4487
|
+
color: var(--db-text-secondary);
|
|
4488
|
+
}
|
|
4489
|
+
|
|
4490
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-row:hover,
|
|
4491
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-radio-row:hover {
|
|
4492
|
+
background: var(--db-bg-hover);
|
|
4493
|
+
}
|
|
4494
|
+
|
|
4495
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-row--select:hover,
|
|
4496
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-row--radios:hover {
|
|
4497
|
+
background: transparent;
|
|
4498
|
+
}
|
|
4499
|
+
|
|
4500
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-row--select .squisq-view-menu-label,
|
|
4501
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-row--radios > .squisq-view-menu-label {
|
|
4502
|
+
color: var(--db-text-muted);
|
|
4503
|
+
}
|
|
4504
|
+
|
|
4505
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-select {
|
|
4506
|
+
background: var(--db-bg-subtle);
|
|
4507
|
+
border-color: var(--db-border);
|
|
4508
|
+
color: var(--db-text-secondary);
|
|
4509
|
+
}
|
|
4510
|
+
|
|
4511
|
+
.db-shell .squisq-editor-shell .squisq-view-menu-separator {
|
|
4512
|
+
background: var(--db-border);
|
|
4513
|
+
}
|
|
4514
|
+
|
|
4515
|
+
.db-shell .squisq-editor-shell :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
4516
|
+
accent-color: var(--db-accent);
|
|
4517
|
+
}
|
|
4518
|
+
|
|
4052
4519
|
/* Monaco's line-number gutter ("editorGutter.background") is set via
|
|
4053
4520
|
squisq's JS-side theme registration — those colors can't be CSS
|
|
4054
4521
|
variables. To make the gutter blend with the outline/preview chrome
|
|
@@ -4335,24 +4802,26 @@ html:has(.db-shell[data-theme='dark'])
|
|
|
4335
4802
|
box-shadow: 0 2px 8px var(--db-shadow);
|
|
4336
4803
|
}
|
|
4337
4804
|
|
|
4338
|
-
/* The expanded Reload/Later prompt
|
|
4339
|
-
the document-conflict card, accent-toned instead of warning. */
|
|
4805
|
+
/* The expanded Reload/Later prompt sits just above its status-bar trigger. */
|
|
4340
4806
|
.db-update-banner {
|
|
4341
|
-
position:
|
|
4342
|
-
|
|
4343
|
-
|
|
4807
|
+
position: absolute;
|
|
4808
|
+
right: 8px;
|
|
4809
|
+
bottom: 30px;
|
|
4344
4810
|
z-index: 210;
|
|
4345
4811
|
display: flex;
|
|
4346
4812
|
gap: 16px;
|
|
4347
4813
|
align-items: center;
|
|
4348
|
-
max-width: min(720px, calc(
|
|
4814
|
+
max-width: min(720px, calc(100% - 16px));
|
|
4349
4815
|
padding: 10px 12px;
|
|
4350
4816
|
color: var(--db-text);
|
|
4351
4817
|
background: var(--db-bg-elevated, var(--db-bg));
|
|
4352
4818
|
border: 1px solid var(--db-accent);
|
|
4353
4819
|
border-radius: 8px;
|
|
4354
4820
|
box-shadow: 0 6px 20px var(--db-shadow);
|
|
4355
|
-
|
|
4821
|
+
}
|
|
4822
|
+
|
|
4823
|
+
.db-update-banner--floating {
|
|
4824
|
+
bottom: 48px;
|
|
4356
4825
|
}
|
|
4357
4826
|
|
|
4358
4827
|
.db-update-banner-actions {
|
|
@@ -4440,6 +4909,7 @@ html:has(.db-shell[data-theme='dark'])
|
|
|
4440
4909
|
.db-dialog--wide {
|
|
4441
4910
|
width: 560px;
|
|
4442
4911
|
max-width: 100%;
|
|
4912
|
+
max-height: min(calc(100dvh - 32px), 660px);
|
|
4443
4913
|
}
|
|
4444
4914
|
|
|
4445
4915
|
.db-dialog--full {
|
|
@@ -5033,15 +5503,15 @@ button.db-git-file-row:hover {
|
|
|
5033
5503
|
padding-bottom: 2px;
|
|
5034
5504
|
}
|
|
5035
5505
|
|
|
5036
|
-
/*
|
|
5037
|
-
|
|
5038
|
-
|
|
5506
|
+
/* Keep the compact labels on the same visual center as the action glyphs.
|
|
5507
|
+
Move only the text; the tab hit area and active underline stay anchored
|
|
5508
|
+
to the titlebar edges. */
|
|
5039
5509
|
.db-shell .squisq-toolbar-view-tab-label {
|
|
5040
|
-
transform: translateY(
|
|
5510
|
+
transform: translateY(1px);
|
|
5041
5511
|
}
|
|
5042
5512
|
|
|
5043
5513
|
.db-shell .squisq-use-mode-trigger {
|
|
5044
|
-
padding-bottom:
|
|
5514
|
+
padding-bottom: 10px;
|
|
5045
5515
|
}
|
|
5046
5516
|
|
|
5047
5517
|
/* The 32px caption row leaves little room around Squisq's 28px action
|