@bendyline/docblocks-react 2.7.2 → 2.7.4
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 +215 -23
- package/dist/{AiDiagrams-LFV4YU6W.js → AiDiagrams-QZMJNGDT.js} +3 -3
- package/dist/{AiEditorAssistant-GN2KXKZD.js → AiEditorAssistant-4HFFGVU4.js} +205 -166
- package/dist/AiStudyDialog-P3E7PJV5.js +1150 -0
- package/dist/{AudioExportDialog-F23QXNPB.js → AudioExportDialog-IOYIEAER.js} +1 -1
- package/dist/{DocumentConflictDialog-5LRVIGXS.js → DocumentConflictDialog-DZ2BV2IH.js} +1 -1
- package/dist/ExportDialog-LGWBXIWN.js +9 -0
- package/dist/{ExportToolbarControls-2FEIHNMW.js → ExportToolbarControls-HOV424TO.js} +114 -14
- package/dist/{GitUI-RCWUZVS6.js → GitUI-F3CNBURE.js} +1 -1
- package/dist/{KeyboardShortcutsDialog-NOD4P25G.js → KeyboardShortcutsDialog-HVKDFP5Z.js} +2 -2
- package/dist/{PresentationMaker-ITNP5SDO.js → PresentationMaker-MUMFAXEI.js} +3 -3
- package/dist/{QuickOpenDialog-2KK4SEBU.js → QuickOpenDialog-ENVFGIHS.js} +1 -1
- package/dist/{Settings-RDYvDDI0.d.ts → Settings-CfhY489G.d.ts} +3 -5
- package/dist/{ShareDialog-XUA2OVGI.js → ShareDialog-PF7D7ORP.js} +1 -1
- package/dist/{SpeechToolbarControl-CLU7RB2G.js → SpeechToolbarControl-KNI2C4JJ.js} +1 -1
- package/dist/{TextFromNarration-NITJQ4IB.js → TextFromNarration-EYOMW2IW.js} +1 -1
- package/dist/{chunk-HRWEGPTY.js → chunk-7CSBRAMT.js} +109 -24
- package/dist/{chunk-NAH52736.js → chunk-7V34VUK6.js} +969 -98
- package/dist/{chunk-K7XJDJUJ.js → chunk-ACQF63SB.js} +14 -4
- package/dist/{chunk-X3DDTJKR.js → chunk-D4HIOS7E.js} +256 -18
- package/dist/{chunk-BLUEZG7T.js → chunk-FBPCURCS.js} +9 -2
- package/dist/{chunk-Y5OE3HJC.js → chunk-GFK4TCKN.js} +11 -5
- package/dist/chunk-H3BK5MK6.js +34 -0
- package/dist/{chunk-6B7G33D5.js → chunk-KBUHWZCF.js} +1 -1
- package/dist/{chunk-SSB43524.js → chunk-PNZFIIWW.js} +91 -12
- package/dist/{chunk-56KO2LYN.js → chunk-VJPGZCFS.js} +4 -0
- package/dist/chunk-XNT66JC2.js +168 -0
- package/dist/editor.js +4 -4
- package/dist/export/index.d.ts +19 -4
- package/dist/export/index.js +4 -4
- package/dist/index.d.ts +19 -5
- package/dist/index.js +858 -557
- package/dist/{run-export-CS3HRNAZ.js → run-export-SPNNH32M.js} +1 -1
- package/dist/settings/index.d.ts +1 -1
- package/dist/settings/index.js +2 -2
- package/package.json +8 -8
- package/src/styles/docblocks.css +526 -63
- package/dist/ExportDialog-JRVZCG3J.js +0 -9
- package/dist/chunk-YBEYTVU2.js +0 -12
package/src/styles/docblocks.css
CHANGED
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
'Helvetica Neue', Arial, sans-serif;
|
|
35
35
|
/* Metadata face: counts, timestamps, version strings, section labels. A
|
|
36
36
|
small mono sets what you read apart from what you act on. */
|
|
37
|
-
--db-meta-font: '
|
|
37
|
+
--db-meta-font: 'Inconsolata', ui-monospace, SFMono-Regular, Consolas, monospace;
|
|
38
38
|
/* Squisq's chrome reads `--squisq-ux-font` with a `system-ui` fallback, the
|
|
39
39
|
same bridge shape as the `--squisq-*` color tokens further down. Binding
|
|
40
40
|
it carries the chrome face into the editor toolbar, menus and dialogs.
|
|
@@ -329,7 +329,7 @@
|
|
|
329
329
|
.db-explorer-title {
|
|
330
330
|
font-family: var(--db-meta-font);
|
|
331
331
|
font-weight: 500;
|
|
332
|
-
font-size:
|
|
332
|
+
font-size: 12px;
|
|
333
333
|
text-transform: uppercase;
|
|
334
334
|
letter-spacing: 0.06em;
|
|
335
335
|
color: var(--db-text-muted);
|
|
@@ -805,6 +805,16 @@
|
|
|
805
805
|
cursor: pointer;
|
|
806
806
|
}
|
|
807
807
|
|
|
808
|
+
/* A listed file the provider could not read (e.g. a sync client holding it). */
|
|
809
|
+
.db-tree-read-issue {
|
|
810
|
+
flex-shrink: 0;
|
|
811
|
+
margin-left: 4px;
|
|
812
|
+
padding: 0 4px;
|
|
813
|
+
color: var(--db-danger, #c33);
|
|
814
|
+
font-size: 11px;
|
|
815
|
+
font-weight: 700;
|
|
816
|
+
}
|
|
817
|
+
|
|
808
818
|
.db-tree--drop-target {
|
|
809
819
|
box-shadow: inset 0 0 0 2px var(--db-accent);
|
|
810
820
|
background: var(--db-accent-soft-08);
|
|
@@ -883,7 +893,7 @@
|
|
|
883
893
|
overflow: hidden;
|
|
884
894
|
color: var(--db-text-secondary);
|
|
885
895
|
font-family: var(--db-meta-font);
|
|
886
|
-
font-size:
|
|
896
|
+
font-size: 12px;
|
|
887
897
|
font-variant-numeric: tabular-nums;
|
|
888
898
|
text-align: right;
|
|
889
899
|
text-overflow: ellipsis;
|
|
@@ -1792,6 +1802,7 @@ body.db-resizing-sidebar * {
|
|
|
1792
1802
|
.db-shell .squisq-status-bar {
|
|
1793
1803
|
line-height: 16px;
|
|
1794
1804
|
font-family: var(--db-meta-font);
|
|
1805
|
+
font-size: 13px;
|
|
1795
1806
|
}
|
|
1796
1807
|
|
|
1797
1808
|
.db-shell-sidebar-footer {
|
|
@@ -2341,21 +2352,6 @@ html:has(.db-shell--mobile) .squisq-toolbar-overflow-menu {
|
|
|
2341
2352
|
gap: 6px 16px;
|
|
2342
2353
|
}
|
|
2343
2354
|
|
|
2344
|
-
.db-about-beta {
|
|
2345
|
-
margin-bottom: 10px;
|
|
2346
|
-
padding: 10px 12px;
|
|
2347
|
-
border: 1px solid var(--db-accent);
|
|
2348
|
-
border-radius: 6px;
|
|
2349
|
-
background: var(--db-accent-soft-08);
|
|
2350
|
-
color: var(--db-text-secondary);
|
|
2351
|
-
font-size: 12px;
|
|
2352
|
-
line-height: 1.5;
|
|
2353
|
-
}
|
|
2354
|
-
|
|
2355
|
-
.db-about-beta strong {
|
|
2356
|
-
color: var(--db-accent-deep);
|
|
2357
|
-
}
|
|
2358
|
-
|
|
2359
2355
|
.db-about-version {
|
|
2360
2356
|
display: flex;
|
|
2361
2357
|
align-items: center;
|
|
@@ -2377,6 +2373,7 @@ html:has(.db-shell--mobile) .squisq-toolbar-overflow-menu {
|
|
|
2377
2373
|
.db-about-version code {
|
|
2378
2374
|
color: var(--db-text);
|
|
2379
2375
|
font-family: var(--db-meta-font);
|
|
2376
|
+
font-size: 14px;
|
|
2380
2377
|
user-select: all;
|
|
2381
2378
|
}
|
|
2382
2379
|
|
|
@@ -2394,7 +2391,7 @@ html:has(.db-shell--mobile) .squisq-toolbar-overflow-menu {
|
|
|
2394
2391
|
|
|
2395
2392
|
.db-settings-legend {
|
|
2396
2393
|
font-family: var(--db-meta-font);
|
|
2397
|
-
font-size:
|
|
2394
|
+
font-size: 12px;
|
|
2398
2395
|
font-weight: 500;
|
|
2399
2396
|
text-transform: uppercase;
|
|
2400
2397
|
letter-spacing: 0.06em;
|
|
@@ -3431,12 +3428,17 @@ html:has(.db-shell--mobile) .squisq-toolbar-overflow-menu {
|
|
|
3431
3428
|
|
|
3432
3429
|
.db-export-footer {
|
|
3433
3430
|
display: flex;
|
|
3431
|
+
flex-wrap: wrap;
|
|
3434
3432
|
justify-content: flex-end;
|
|
3435
3433
|
gap: 8px;
|
|
3436
3434
|
padding: 12px 20px 16px;
|
|
3437
3435
|
border-top: 1px solid var(--db-border);
|
|
3438
3436
|
}
|
|
3439
3437
|
|
|
3438
|
+
.db-export-open-after-save {
|
|
3439
|
+
flex-basis: 100%;
|
|
3440
|
+
}
|
|
3441
|
+
|
|
3440
3442
|
.db-export-more-formats {
|
|
3441
3443
|
margin: 4px 0 0;
|
|
3442
3444
|
padding-top: 12px;
|
|
@@ -4003,13 +4005,19 @@ html:has(.db-shell--mobile) .squisq-toolbar-overflow-menu {
|
|
|
4003
4005
|
color: var(--db-text-secondary);
|
|
4004
4006
|
}
|
|
4005
4007
|
|
|
4006
|
-
.db-shell
|
|
4008
|
+
.db-shell
|
|
4009
|
+
.squisq-editor-shell
|
|
4010
|
+
.squisq-media-bin
|
|
4011
|
+
:is(.squisq-media-bin-record, .squisq-media-bin-upload) {
|
|
4007
4012
|
background: var(--db-accent-tint-strong);
|
|
4008
4013
|
border-color: var(--db-border);
|
|
4009
4014
|
color: var(--db-text-secondary);
|
|
4010
4015
|
}
|
|
4011
4016
|
|
|
4012
|
-
.db-shell
|
|
4017
|
+
.db-shell
|
|
4018
|
+
.squisq-editor-shell
|
|
4019
|
+
.squisq-media-bin
|
|
4020
|
+
:is(.squisq-media-bin-record, .squisq-media-bin-upload):hover {
|
|
4013
4021
|
background: var(--db-bg-hover);
|
|
4014
4022
|
border-color: var(--db-border-strong);
|
|
4015
4023
|
}
|
|
@@ -5640,62 +5648,149 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
5640
5648
|
already autosaved on every keystroke; this just confirms it
|
|
5641
5649
|
so muscle-memory savers feel at ease. */
|
|
5642
5650
|
|
|
5643
|
-
/* ── Welcome
|
|
5644
|
-
/*
|
|
5645
|
-
|
|
5646
|
-
|
|
5651
|
+
/* ── Welcome screen ─────────────────────────────────────────── */
|
|
5652
|
+
/* First visit on a two-pane layout: covers the editor area -- the welcome
|
|
5653
|
+
document mounts, inert, beneath it -- with what DocBlocks is and two
|
|
5654
|
+
choices. Dismissed for good via localStorage. Phones keep their card in
|
|
5655
|
+
the file pane (`.db-mobile-first-run`). The class names predate this
|
|
5656
|
+
screen; they were a toast over a slideshow. */
|
|
5657
|
+
|
|
5658
|
+
.db-shell-editor-content {
|
|
5659
|
+
display: contents;
|
|
5660
|
+
}
|
|
5647
5661
|
|
|
5648
5662
|
.db-welcome-gateway {
|
|
5649
5663
|
position: absolute;
|
|
5650
|
-
|
|
5651
|
-
left: 50%;
|
|
5652
|
-
transform: translateX(-50%);
|
|
5664
|
+
inset: 0;
|
|
5653
5665
|
z-index: 60;
|
|
5654
5666
|
display: flex;
|
|
5655
5667
|
align-items: center;
|
|
5656
|
-
|
|
5657
|
-
|
|
5658
|
-
padding:
|
|
5659
|
-
background:
|
|
5660
|
-
|
|
5661
|
-
border-radius: 10px;
|
|
5662
|
-
box-shadow: 0 10px 32px var(--db-shadow);
|
|
5668
|
+
justify-content: center;
|
|
5669
|
+
overflow-y: auto;
|
|
5670
|
+
padding: calc(var(--db-safe-top) + 40px) 40px 40px;
|
|
5671
|
+
background:
|
|
5672
|
+
radial-gradient(circle at 88% 8%, var(--db-accent-soft-12), transparent 42%), var(--db-bg);
|
|
5663
5673
|
color: var(--db-text);
|
|
5664
|
-
|
|
5665
|
-
line-height: 1.45;
|
|
5666
|
-
animation: db-welcome-gateway-in 0.4s ease-out;
|
|
5674
|
+
container-type: inline-size;
|
|
5667
5675
|
}
|
|
5668
5676
|
|
|
5669
|
-
.db-welcome-gateway-
|
|
5670
|
-
|
|
5671
|
-
|
|
5672
|
-
|
|
5677
|
+
.db-welcome-gateway-body {
|
|
5678
|
+
display: grid;
|
|
5679
|
+
width: min(1040px, 100%);
|
|
5680
|
+
margin: auto 0;
|
|
5681
|
+
gap: 36px;
|
|
5682
|
+
align-items: center;
|
|
5683
|
+
}
|
|
5684
|
+
|
|
5685
|
+
@container (min-width: 980px) {
|
|
5686
|
+
.db-welcome-gateway-body {
|
|
5687
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
|
|
5688
|
+
gap: 56px;
|
|
5689
|
+
}
|
|
5690
|
+
}
|
|
5691
|
+
|
|
5692
|
+
.db-welcome-gateway-eyebrow {
|
|
5693
|
+
margin: 0 0 12px;
|
|
5694
|
+
color: var(--db-accent);
|
|
5695
|
+
font-size: 12px;
|
|
5696
|
+
font-weight: 700;
|
|
5697
|
+
letter-spacing: 0.1em;
|
|
5698
|
+
text-transform: uppercase;
|
|
5699
|
+
}
|
|
5700
|
+
|
|
5701
|
+
.db-welcome-gateway h1 {
|
|
5702
|
+
margin: 0;
|
|
5703
|
+
color: var(--db-text);
|
|
5704
|
+
font-family: 'PT Serif', Georgia, 'Times New Roman', serif;
|
|
5705
|
+
font-size: clamp(30px, 4.4cqi, 46px);
|
|
5706
|
+
font-weight: 700;
|
|
5707
|
+
line-height: 1.1;
|
|
5708
|
+
letter-spacing: -0.01em;
|
|
5709
|
+
}
|
|
5710
|
+
|
|
5711
|
+
.db-welcome-gateway-copy > p:not(.db-welcome-gateway-eyebrow) {
|
|
5712
|
+
max-width: 34em;
|
|
5713
|
+
margin: 16px 0 0;
|
|
5714
|
+
color: var(--db-text-secondary);
|
|
5715
|
+
font-size: 16px;
|
|
5716
|
+
line-height: 1.6;
|
|
5717
|
+
}
|
|
5718
|
+
|
|
5719
|
+
.db-welcome-gateway-copy > .db-welcome-gateway-note {
|
|
5720
|
+
margin-top: 8px;
|
|
5721
|
+
color: var(--db-text-muted);
|
|
5722
|
+
font-size: 14px;
|
|
5723
|
+
}
|
|
5724
|
+
|
|
5725
|
+
.db-welcome-gateway-actions {
|
|
5726
|
+
display: flex;
|
|
5727
|
+
flex-wrap: wrap;
|
|
5728
|
+
gap: 10px;
|
|
5729
|
+
margin-top: 28px;
|
|
5730
|
+
}
|
|
5731
|
+
|
|
5732
|
+
.db-welcome-gateway-actions button,
|
|
5733
|
+
.db-welcome-gateway-actions a {
|
|
5734
|
+
min-height: 44px;
|
|
5735
|
+
padding: 10px 20px;
|
|
5736
|
+
border: 1px solid var(--db-border-strong);
|
|
5737
|
+
border-radius: 8px;
|
|
5738
|
+
background: var(--db-bg);
|
|
5739
|
+
color: var(--db-text);
|
|
5740
|
+
font: inherit;
|
|
5741
|
+
font-size: 15px;
|
|
5673
5742
|
font-weight: 600;
|
|
5743
|
+
cursor: pointer;
|
|
5744
|
+
}
|
|
5745
|
+
|
|
5746
|
+
/* The apps link wears the button treatment; this centers its label the way a
|
|
5747
|
+
button's is and drops the underline. */
|
|
5748
|
+
.db-welcome-gateway-actions a {
|
|
5749
|
+
box-sizing: border-box;
|
|
5750
|
+
display: inline-flex;
|
|
5751
|
+
align-items: center;
|
|
5752
|
+
text-decoration: none;
|
|
5753
|
+
}
|
|
5754
|
+
|
|
5755
|
+
.db-welcome-gateway-actions button:hover,
|
|
5756
|
+
.db-welcome-gateway-actions a:hover {
|
|
5757
|
+
border-color: var(--db-accent);
|
|
5758
|
+
background: var(--db-bg-hover);
|
|
5759
|
+
}
|
|
5760
|
+
|
|
5761
|
+
.db-welcome-gateway-actions .db-welcome-gateway-primary {
|
|
5762
|
+
border-color: var(--db-accent);
|
|
5674
5763
|
background: var(--db-accent);
|
|
5675
5764
|
color: var(--db-text-on-accent);
|
|
5676
|
-
border: none;
|
|
5677
|
-
border-radius: 6px;
|
|
5678
|
-
cursor: pointer;
|
|
5679
|
-
white-space: nowrap;
|
|
5680
5765
|
}
|
|
5681
5766
|
|
|
5682
|
-
.db-welcome-gateway-
|
|
5767
|
+
.db-welcome-gateway-actions .db-welcome-gateway-primary:hover {
|
|
5768
|
+
border-color: var(--db-accent-hover);
|
|
5683
5769
|
background: var(--db-accent-hover);
|
|
5684
5770
|
}
|
|
5685
5771
|
|
|
5772
|
+
.db-welcome-gateway-actions button:focus-visible,
|
|
5773
|
+
.db-welcome-gateway-actions a:focus-visible,
|
|
5774
|
+
.db-welcome-gateway-dismiss:focus-visible {
|
|
5775
|
+
outline: 2px solid var(--db-focus);
|
|
5776
|
+
outline-offset: 2px;
|
|
5777
|
+
}
|
|
5778
|
+
|
|
5686
5779
|
.db-welcome-gateway-dismiss {
|
|
5687
|
-
|
|
5780
|
+
position: absolute;
|
|
5781
|
+
top: calc(var(--db-safe-top) + 12px);
|
|
5782
|
+
right: 12px;
|
|
5688
5783
|
display: inline-flex;
|
|
5689
5784
|
align-items: center;
|
|
5690
5785
|
justify-content: center;
|
|
5691
|
-
width:
|
|
5692
|
-
height:
|
|
5693
|
-
|
|
5694
|
-
|
|
5786
|
+
width: 32px;
|
|
5787
|
+
height: 32px;
|
|
5788
|
+
border: none;
|
|
5789
|
+
border-radius: 8px;
|
|
5695
5790
|
background: transparent;
|
|
5696
5791
|
color: var(--db-text-muted);
|
|
5697
|
-
|
|
5698
|
-
|
|
5792
|
+
font-size: 20px;
|
|
5793
|
+
line-height: 1;
|
|
5699
5794
|
cursor: pointer;
|
|
5700
5795
|
}
|
|
5701
5796
|
|
|
@@ -5704,12 +5799,239 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
5704
5799
|
color: var(--db-text);
|
|
5705
5800
|
}
|
|
5706
5801
|
|
|
5707
|
-
|
|
5708
|
-
|
|
5709
|
-
|
|
5802
|
+
/* One Markdown file becoming a PDF page, a slide and a video frame on a 9 s
|
|
5803
|
+
loop. The frames share one stage and take turns; each label lights with
|
|
5804
|
+
its frame. The page and slide colors are fixed: they depict output, which
|
|
5805
|
+
looks the same whatever theme the app is in. */
|
|
5806
|
+
.db-welcome-loop {
|
|
5807
|
+
display: grid;
|
|
5808
|
+
grid-template-columns: minmax(0, 0.95fr) auto minmax(0, 1.1fr);
|
|
5809
|
+
align-items: center;
|
|
5810
|
+
gap: 14px 16px;
|
|
5811
|
+
}
|
|
5812
|
+
|
|
5813
|
+
.db-welcome-loop-source {
|
|
5814
|
+
padding: 14px 16px;
|
|
5815
|
+
border: 1px solid var(--db-border-strong);
|
|
5816
|
+
border-radius: 10px;
|
|
5817
|
+
background: var(--db-bg-subtle);
|
|
5818
|
+
box-shadow: 0 10px 28px var(--db-shadow);
|
|
5819
|
+
}
|
|
5820
|
+
|
|
5821
|
+
.db-welcome-loop-file {
|
|
5822
|
+
display: block;
|
|
5823
|
+
margin-bottom: 10px;
|
|
5824
|
+
color: var(--db-text-muted);
|
|
5825
|
+
font: 600 12px/1 var(--db-meta-font);
|
|
5826
|
+
letter-spacing: 0.04em;
|
|
5827
|
+
}
|
|
5828
|
+
|
|
5829
|
+
.db-welcome-loop-source code {
|
|
5830
|
+
display: block;
|
|
5831
|
+
overflow: hidden;
|
|
5832
|
+
color: var(--db-text-secondary);
|
|
5833
|
+
font: 13px/1.65 var(--db-meta-font);
|
|
5834
|
+
white-space: pre-wrap;
|
|
5835
|
+
overflow-wrap: anywhere;
|
|
5836
|
+
}
|
|
5837
|
+
|
|
5838
|
+
.db-welcome-loop-mark {
|
|
5839
|
+
color: var(--db-accent);
|
|
5840
|
+
}
|
|
5841
|
+
|
|
5842
|
+
.db-welcome-loop-arrow {
|
|
5843
|
+
color: var(--db-accent);
|
|
5844
|
+
font-size: 24px;
|
|
5845
|
+
animation: db-welcome-loop-nudge 3s ease-in-out infinite;
|
|
5846
|
+
}
|
|
5847
|
+
|
|
5848
|
+
.db-welcome-loop-stage {
|
|
5849
|
+
position: relative;
|
|
5850
|
+
aspect-ratio: 4 / 3;
|
|
5851
|
+
}
|
|
5852
|
+
|
|
5853
|
+
.db-welcome-loop-frame {
|
|
5854
|
+
position: absolute;
|
|
5855
|
+
inset: 0;
|
|
5856
|
+
display: flex;
|
|
5857
|
+
flex-direction: column;
|
|
5858
|
+
gap: 6px;
|
|
5859
|
+
margin: auto;
|
|
5860
|
+
padding: 18px;
|
|
5861
|
+
overflow: hidden;
|
|
5862
|
+
border-radius: 8px;
|
|
5863
|
+
box-shadow: 0 14px 34px var(--db-shadow);
|
|
5864
|
+
font-family: 'PT Serif', Georgia, 'Times New Roman', serif;
|
|
5865
|
+
opacity: 0;
|
|
5866
|
+
animation: db-welcome-loop-frame 9s ease-in-out infinite both;
|
|
5867
|
+
}
|
|
5868
|
+
|
|
5869
|
+
.db-welcome-loop-frame strong {
|
|
5870
|
+
font-size: 17px;
|
|
5871
|
+
line-height: 1.2;
|
|
5872
|
+
}
|
|
5873
|
+
|
|
5874
|
+
.db-welcome-loop-frame span {
|
|
5875
|
+
font-size: 11.5px;
|
|
5876
|
+
line-height: 1.4;
|
|
5877
|
+
}
|
|
5878
|
+
|
|
5879
|
+
.db-welcome-loop-frame em {
|
|
5880
|
+
margin-top: 4px;
|
|
5881
|
+
font-size: 13px;
|
|
5882
|
+
font-style: normal;
|
|
5883
|
+
font-weight: 700;
|
|
5884
|
+
}
|
|
5885
|
+
|
|
5886
|
+
.db-welcome-loop-frame--page {
|
|
5887
|
+
width: 74%;
|
|
5888
|
+
border: 1px solid #e3dccb;
|
|
5889
|
+
background: #fffdf8;
|
|
5890
|
+
color: #2b241c;
|
|
5891
|
+
}
|
|
5892
|
+
|
|
5893
|
+
.db-welcome-loop-frame--slide,
|
|
5894
|
+
.db-welcome-loop-frame--video {
|
|
5895
|
+
height: 75%;
|
|
5896
|
+
justify-content: center;
|
|
5897
|
+
background: radial-gradient(circle at 30% 20%, #5a3322, #24170f 72%);
|
|
5898
|
+
color: #f6ecdc;
|
|
5899
|
+
}
|
|
5900
|
+
|
|
5901
|
+
.db-welcome-loop-frame--slide {
|
|
5902
|
+
align-items: center;
|
|
5903
|
+
text-align: center;
|
|
5904
|
+
animation-delay: 3s;
|
|
5905
|
+
}
|
|
5906
|
+
|
|
5907
|
+
.db-welcome-loop-frame--slide strong {
|
|
5908
|
+
font-size: 21px;
|
|
5909
|
+
}
|
|
5910
|
+
|
|
5911
|
+
.db-welcome-loop-frame--video {
|
|
5912
|
+
justify-content: flex-start;
|
|
5913
|
+
animation-delay: 6s;
|
|
5914
|
+
}
|
|
5915
|
+
|
|
5916
|
+
.db-welcome-loop-play {
|
|
5917
|
+
position: absolute;
|
|
5918
|
+
bottom: 11px;
|
|
5919
|
+
left: 14px;
|
|
5920
|
+
font-size: 10px;
|
|
5921
|
+
font-style: normal;
|
|
5922
|
+
}
|
|
5923
|
+
|
|
5924
|
+
.db-welcome-loop-progress {
|
|
5925
|
+
position: absolute;
|
|
5926
|
+
right: 14px;
|
|
5927
|
+
bottom: 15px;
|
|
5928
|
+
left: 32px;
|
|
5929
|
+
height: 3px;
|
|
5930
|
+
border-radius: 2px;
|
|
5931
|
+
background: rgba(246, 236, 220, 0.25);
|
|
5932
|
+
}
|
|
5933
|
+
|
|
5934
|
+
.db-welcome-loop-progress::after {
|
|
5935
|
+
position: absolute;
|
|
5936
|
+
inset: 0;
|
|
5937
|
+
width: 0;
|
|
5938
|
+
border-radius: inherit;
|
|
5939
|
+
background: #e7a36d;
|
|
5940
|
+
content: '';
|
|
5941
|
+
animation: db-welcome-loop-progress 9s linear infinite both;
|
|
5942
|
+
animation-delay: 6s;
|
|
5943
|
+
}
|
|
5944
|
+
|
|
5945
|
+
.db-welcome-loop-labels {
|
|
5946
|
+
display: flex;
|
|
5947
|
+
grid-column: 3;
|
|
5948
|
+
justify-content: center;
|
|
5949
|
+
gap: 20px;
|
|
5950
|
+
margin: 0;
|
|
5951
|
+
padding: 0;
|
|
5952
|
+
color: var(--db-text-muted);
|
|
5953
|
+
font: 600 12px/1 var(--db-meta-font);
|
|
5954
|
+
letter-spacing: 0.08em;
|
|
5955
|
+
list-style: none;
|
|
5956
|
+
text-transform: uppercase;
|
|
5957
|
+
}
|
|
5958
|
+
|
|
5959
|
+
.db-welcome-loop-labels li {
|
|
5960
|
+
animation: db-welcome-loop-label 9s ease-in-out infinite both;
|
|
5961
|
+
}
|
|
5962
|
+
|
|
5963
|
+
.db-welcome-loop-labels li:nth-child(2) {
|
|
5964
|
+
animation-delay: 3s;
|
|
5965
|
+
}
|
|
5966
|
+
|
|
5967
|
+
.db-welcome-loop-labels li:nth-child(3) {
|
|
5968
|
+
animation-delay: 6s;
|
|
5969
|
+
}
|
|
5970
|
+
|
|
5971
|
+
@keyframes db-welcome-loop-frame {
|
|
5972
|
+
0% {
|
|
5973
|
+
opacity: 0;
|
|
5974
|
+
transform: translateY(8px) scale(0.98);
|
|
5710
5975
|
}
|
|
5711
|
-
|
|
5712
|
-
|
|
5976
|
+
4%,
|
|
5977
|
+
28% {
|
|
5978
|
+
opacity: 1;
|
|
5979
|
+
transform: none;
|
|
5980
|
+
}
|
|
5981
|
+
32%,
|
|
5982
|
+
100% {
|
|
5983
|
+
opacity: 0;
|
|
5984
|
+
transform: translateY(-6px) scale(0.99);
|
|
5985
|
+
}
|
|
5986
|
+
}
|
|
5987
|
+
|
|
5988
|
+
@keyframes db-welcome-loop-label {
|
|
5989
|
+
0%,
|
|
5990
|
+
32%,
|
|
5991
|
+
100% {
|
|
5992
|
+
color: var(--db-text-muted);
|
|
5993
|
+
}
|
|
5994
|
+
4%,
|
|
5995
|
+
28% {
|
|
5996
|
+
color: var(--db-accent);
|
|
5997
|
+
}
|
|
5998
|
+
}
|
|
5999
|
+
|
|
6000
|
+
@keyframes db-welcome-loop-progress {
|
|
6001
|
+
0% {
|
|
6002
|
+
width: 0;
|
|
6003
|
+
}
|
|
6004
|
+
33%,
|
|
6005
|
+
100% {
|
|
6006
|
+
width: 100%;
|
|
6007
|
+
}
|
|
6008
|
+
}
|
|
6009
|
+
|
|
6010
|
+
@keyframes db-welcome-loop-nudge {
|
|
6011
|
+
0%,
|
|
6012
|
+
100% {
|
|
6013
|
+
transform: translateX(0);
|
|
6014
|
+
}
|
|
6015
|
+
50% {
|
|
6016
|
+
transform: translateX(4px);
|
|
6017
|
+
}
|
|
6018
|
+
}
|
|
6019
|
+
|
|
6020
|
+
@media (prefers-reduced-motion: reduce) {
|
|
6021
|
+
/* Without motion, hold on the page: the labels still name all three. */
|
|
6022
|
+
.db-welcome-loop-arrow,
|
|
6023
|
+
.db-welcome-loop-labels li {
|
|
6024
|
+
animation: none;
|
|
6025
|
+
}
|
|
6026
|
+
|
|
6027
|
+
.db-welcome-loop-frame--page {
|
|
6028
|
+
opacity: 1;
|
|
6029
|
+
animation: none;
|
|
6030
|
+
}
|
|
6031
|
+
|
|
6032
|
+
.db-welcome-loop-frame--slide,
|
|
6033
|
+
.db-welcome-loop-frame--video {
|
|
6034
|
+
display: none;
|
|
5713
6035
|
}
|
|
5714
6036
|
}
|
|
5715
6037
|
|
|
@@ -6250,6 +6572,8 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6250
6572
|
|
|
6251
6573
|
.db-text-from-narration button:not(.db-dialog-close),
|
|
6252
6574
|
.db-ai-draft-dialog .db-dialog-footer button,
|
|
6575
|
+
.db-ai-study-dialog .db-dialog-footer button,
|
|
6576
|
+
.db-ai-study-saved button,
|
|
6253
6577
|
.db-ai-draft-start button,
|
|
6254
6578
|
.db-ai-review-panel button {
|
|
6255
6579
|
min-height: var(--db-target-min);
|
|
@@ -6264,6 +6588,7 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6264
6588
|
|
|
6265
6589
|
.db-text-from-narration .db-dialog-footer button:last-child,
|
|
6266
6590
|
.db-ai-draft-dialog .db-dialog-footer button:last-child,
|
|
6591
|
+
.db-ai-study-dialog .db-dialog-footer button:last-child,
|
|
6267
6592
|
.db-ai-draft-start button,
|
|
6268
6593
|
.db-ai-review-finding-actions button:last-child,
|
|
6269
6594
|
.db-ai-review-actions button {
|
|
@@ -6274,6 +6599,8 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6274
6599
|
|
|
6275
6600
|
.db-text-from-narration button:not(.db-dialog-close):hover:not(:disabled),
|
|
6276
6601
|
.db-ai-draft-dialog .db-dialog-footer button:hover:not(:disabled),
|
|
6602
|
+
.db-ai-study-dialog .db-dialog-footer button:hover:not(:disabled),
|
|
6603
|
+
.db-ai-study-saved button:hover,
|
|
6277
6604
|
.db-ai-draft-start button:hover,
|
|
6278
6605
|
.db-ai-review-panel button:hover:not(:disabled) {
|
|
6279
6606
|
border-color: var(--db-accent-hover);
|
|
@@ -6284,6 +6611,8 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6284
6611
|
.db-text-from-narration button:focus-visible,
|
|
6285
6612
|
.db-text-from-narration textarea:focus-visible,
|
|
6286
6613
|
.db-ai-draft-dialog .db-dialog-footer button:focus-visible,
|
|
6614
|
+
.db-ai-study-dialog .db-dialog-footer button:focus-visible,
|
|
6615
|
+
.db-ai-study-saved button:focus-visible,
|
|
6287
6616
|
.db-ai-draft-start button:focus-visible,
|
|
6288
6617
|
.db-ai-review-panel button:focus-visible {
|
|
6289
6618
|
outline: 2px solid var(--db-focus);
|
|
@@ -6292,6 +6621,7 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6292
6621
|
|
|
6293
6622
|
.db-text-from-narration button:disabled,
|
|
6294
6623
|
.db-ai-draft-dialog .db-dialog-footer button:disabled,
|
|
6624
|
+
.db-ai-study-dialog .db-dialog-footer button:disabled,
|
|
6295
6625
|
.db-ai-review-panel button:disabled {
|
|
6296
6626
|
opacity: 0.5;
|
|
6297
6627
|
cursor: default;
|
|
@@ -6546,6 +6876,133 @@ html:has(.db-shell) :is(.squisq-view-menu-checkbox, .squisq-view-menu-radio) {
|
|
|
6546
6876
|
cursor: pointer;
|
|
6547
6877
|
}
|
|
6548
6878
|
|
|
6879
|
+
/* Report AI output: the flag beside each AI disclaimer and its dialog. */
|
|
6880
|
+
.db-ai-report-button {
|
|
6881
|
+
white-space: nowrap;
|
|
6882
|
+
}
|
|
6883
|
+
|
|
6884
|
+
.db-ai-report-intro {
|
|
6885
|
+
margin: 0 0 14px;
|
|
6886
|
+
color: var(--db-text-secondary);
|
|
6887
|
+
font-size: 13px;
|
|
6888
|
+
line-height: 1.5;
|
|
6889
|
+
}
|
|
6890
|
+
|
|
6891
|
+
.db-ai-report-dialog .db-settings-fieldset {
|
|
6892
|
+
margin-bottom: 14px;
|
|
6893
|
+
}
|
|
6894
|
+
|
|
6895
|
+
/* Study aids: Summarize document, Create quiz, Create flashcards. */
|
|
6896
|
+
.db-ai-study-dialog .db-dialog-header,
|
|
6897
|
+
.db-ai-study-dialog .db-dialog-footer {
|
|
6898
|
+
flex-shrink: 0;
|
|
6899
|
+
}
|
|
6900
|
+
|
|
6901
|
+
.db-ai-study-dialog .db-ai-study-footer {
|
|
6902
|
+
flex-direction: column;
|
|
6903
|
+
align-items: stretch;
|
|
6904
|
+
}
|
|
6905
|
+
|
|
6906
|
+
.db-ai-study-start,
|
|
6907
|
+
.db-ai-study-result,
|
|
6908
|
+
.db-ai-study-running {
|
|
6909
|
+
display: flex;
|
|
6910
|
+
flex-direction: column;
|
|
6911
|
+
gap: 10px;
|
|
6912
|
+
}
|
|
6913
|
+
|
|
6914
|
+
.db-ai-study-start p,
|
|
6915
|
+
.db-ai-study-result p,
|
|
6916
|
+
.db-ai-study-running p {
|
|
6917
|
+
margin: 0;
|
|
6918
|
+
}
|
|
6919
|
+
|
|
6920
|
+
/* In the full-height deck dialog the result fills the body, and the deck
|
|
6921
|
+
takes whatever the notes and disclaimer leave. */
|
|
6922
|
+
.db-ai-study-result {
|
|
6923
|
+
flex: 1 1 auto;
|
|
6924
|
+
min-height: 0;
|
|
6925
|
+
}
|
|
6926
|
+
|
|
6927
|
+
.db-ai-study-intro,
|
|
6928
|
+
.db-ai-study-stage,
|
|
6929
|
+
.db-ai-study-saved-title {
|
|
6930
|
+
color: var(--db-text);
|
|
6931
|
+
font-size: 13px;
|
|
6932
|
+
line-height: 1.5;
|
|
6933
|
+
}
|
|
6934
|
+
|
|
6935
|
+
.db-ai-study-stage,
|
|
6936
|
+
.db-ai-study-saved-title {
|
|
6937
|
+
font-weight: 600;
|
|
6938
|
+
}
|
|
6939
|
+
|
|
6940
|
+
.db-ai-study-saved {
|
|
6941
|
+
display: flex;
|
|
6942
|
+
flex-wrap: wrap;
|
|
6943
|
+
align-items: center;
|
|
6944
|
+
justify-content: space-between;
|
|
6945
|
+
gap: 10px 12px;
|
|
6946
|
+
padding: 10px 12px;
|
|
6947
|
+
border: 1px solid var(--db-border);
|
|
6948
|
+
border-radius: 6px;
|
|
6949
|
+
background: var(--db-bg-subtle);
|
|
6950
|
+
}
|
|
6951
|
+
|
|
6952
|
+
.db-ai-study-saved-text {
|
|
6953
|
+
display: grid;
|
|
6954
|
+
gap: 2px;
|
|
6955
|
+
min-width: 0;
|
|
6956
|
+
}
|
|
6957
|
+
|
|
6958
|
+
.db-ai-study-stale {
|
|
6959
|
+
color: var(--db-accent-deep);
|
|
6960
|
+
font-size: 12px;
|
|
6961
|
+
}
|
|
6962
|
+
|
|
6963
|
+
.db-ai-study-summary,
|
|
6964
|
+
.db-ai-study-deck {
|
|
6965
|
+
border: 1px solid var(--db-border);
|
|
6966
|
+
border-radius: 6px;
|
|
6967
|
+
background: var(--db-bg-subtle);
|
|
6968
|
+
}
|
|
6969
|
+
|
|
6970
|
+
.db-ai-study-summary {
|
|
6971
|
+
max-height: min(52dvh, 460px);
|
|
6972
|
+
overflow: auto;
|
|
6973
|
+
}
|
|
6974
|
+
|
|
6975
|
+
/* Squisq's compact deck fills the pane it is given and scrolls its own card,
|
|
6976
|
+
so the frame takes the height the dialog has left and hands all of it
|
|
6977
|
+
over. The minimum is what the deck's toolbar and a few card lines need;
|
|
6978
|
+
the body scrolls instead only when a short window cannot fit even that. */
|
|
6979
|
+
.db-ai-study-deck {
|
|
6980
|
+
display: flex;
|
|
6981
|
+
flex-direction: column;
|
|
6982
|
+
flex: 1 1 0;
|
|
6983
|
+
min-height: min(280px, 50dvh);
|
|
6984
|
+
overflow: hidden;
|
|
6985
|
+
}
|
|
6986
|
+
|
|
6987
|
+
.db-ai-study-deck > .squisq-flashcards {
|
|
6988
|
+
flex: 1 1 auto;
|
|
6989
|
+
height: auto;
|
|
6990
|
+
min-height: 0;
|
|
6991
|
+
}
|
|
6992
|
+
|
|
6993
|
+
/* The deck dialog spends its height on the deck. */
|
|
6994
|
+
.db-ai-study-dialog.db-dialog--full .db-ai-study-body {
|
|
6995
|
+
padding-block: 12px;
|
|
6996
|
+
}
|
|
6997
|
+
|
|
6998
|
+
.db-ai-study-meta {
|
|
6999
|
+
display: flex;
|
|
7000
|
+
flex-wrap: wrap;
|
|
7001
|
+
align-items: baseline;
|
|
7002
|
+
gap: 4px 12px;
|
|
7003
|
+
font-size: 12px;
|
|
7004
|
+
}
|
|
7005
|
+
|
|
6549
7006
|
@media (prefers-reduced-motion: reduce) {
|
|
6550
7007
|
.db-ai-spinner {
|
|
6551
7008
|
animation: none;
|
|
@@ -7209,7 +7666,6 @@ button.db-git-file-row:hover {
|
|
|
7209
7666
|
transition: none;
|
|
7210
7667
|
}
|
|
7211
7668
|
|
|
7212
|
-
.db-welcome-gateway,
|
|
7213
7669
|
.db-save-toast {
|
|
7214
7670
|
animation: none;
|
|
7215
7671
|
}
|
|
@@ -7412,10 +7868,12 @@ button.db-git-file-row:hover {
|
|
|
7412
7868
|
-webkit-app-region: no-drag;
|
|
7413
7869
|
}
|
|
7414
7870
|
|
|
7415
|
-
/* Folder and empty states do not render Squisq's toolbar
|
|
7416
|
-
drag strip in those states and
|
|
7871
|
+
/* Folder and empty states do not render Squisq's toolbar, and the first-run
|
|
7872
|
+
welcome screen covers it. Preserve a top drag strip in those states and
|
|
7873
|
+
keep folder content below it. */
|
|
7417
7874
|
.db-shell .db-shell-empty::before,
|
|
7418
|
-
.db-shell .db-folder-view::before
|
|
7875
|
+
.db-shell .db-folder-view::before,
|
|
7876
|
+
.db-shell .db-welcome-gateway::before {
|
|
7419
7877
|
content: '';
|
|
7420
7878
|
position: absolute;
|
|
7421
7879
|
top: 0;
|
|
@@ -7430,6 +7888,11 @@ button.db-git-file-row:hover {
|
|
|
7430
7888
|
box-sizing: border-box;
|
|
7431
7889
|
padding-top: calc(24px + var(--db-wco-titlebar-height));
|
|
7432
7890
|
}
|
|
7891
|
+
|
|
7892
|
+
/* Clear the caption buttons at the top right. */
|
|
7893
|
+
.db-shell .db-welcome-gateway-dismiss {
|
|
7894
|
+
top: calc(var(--db-wco-titlebar-height) + 8px);
|
|
7895
|
+
}
|
|
7433
7896
|
}
|
|
7434
7897
|
|
|
7435
7898
|
/* Transcript review shares the shell's dialog and theme tokens. */
|