@davmash/bygone 0.5.2 → 0.7.0

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.
@@ -0,0 +1,725 @@
1
+ :root {
2
+ --tour-rail-width: 360px;
3
+ --tour-accent-bright: #a99fff;
4
+ --tour-surface: #11131a;
5
+ --tour-border: rgba(255, 255, 255, 0.09);
6
+ --tour-muted: rgba(232, 235, 246, 0.84);
7
+ --tour-faint: rgba(232, 235, 246, 0.72);
8
+ --tour-body: #eef1fa;
9
+ --tour-body-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
10
+ --tour-narrative-height: 296px;
11
+ }
12
+
13
+ .tour-shell {
14
+ position: fixed;
15
+ inset: 0 auto 0 0;
16
+ z-index: 100;
17
+ display: flex;
18
+ width: var(--tour-rail-width);
19
+ box-sizing: border-box;
20
+ flex-direction: column;
21
+ overflow: hidden;
22
+ color: #f5f6fb;
23
+ border-right: 1px solid var(--tour-border);
24
+ background: var(--tour-surface);
25
+ box-shadow: 18px 0 45px rgba(0, 0, 0, 0.22);
26
+ }
27
+
28
+ .tour-shell[hidden] {
29
+ display: none;
30
+ }
31
+
32
+ .tour-sidebar-hide,
33
+ .tour-sidebar-show {
34
+ border: 1px solid var(--tour-border);
35
+ border-radius: 6px;
36
+ background: rgba(255, 255, 255, 0.07);
37
+ color: #f5f6fb;
38
+ cursor: pointer;
39
+ font: inherit;
40
+ }
41
+
42
+ .tour-sidebar-hide {
43
+ position: absolute;
44
+ z-index: 2;
45
+ top: 14px;
46
+ right: 12px;
47
+ width: 28px;
48
+ height: 26px;
49
+ }
50
+
51
+ .tour-sidebar-show {
52
+ position: fixed;
53
+ z-index: 140;
54
+ top: 14px;
55
+ left: 0;
56
+ width: 28px;
57
+ height: 38px;
58
+ border-left: 0;
59
+ border-radius: 0 6px 6px 0;
60
+ background: var(--tour-surface);
61
+ }
62
+
63
+ .tour-sidebar-show[hidden] {
64
+ display: none;
65
+ }
66
+
67
+ .tour-sidebar-resizer {
68
+ position: absolute;
69
+ z-index: 4;
70
+ top: 0;
71
+ right: -4px;
72
+ bottom: 0;
73
+ width: 8px;
74
+ cursor: col-resize;
75
+ touch-action: none;
76
+ }
77
+
78
+ .tour-sidebar-resizer:hover,
79
+ .tour-sidebar-resizer:focus-visible,
80
+ body.is-resizing-tour-sidebar .tour-sidebar-resizer {
81
+ background: rgba(169, 159, 255, 0.75);
82
+ outline: none;
83
+ }
84
+
85
+ body.tour-sidebar-hidden {
86
+ --tour-rail-width: 0px;
87
+ }
88
+
89
+ body.tour-sidebar-hidden .tour-shell {
90
+ display: none;
91
+ }
92
+
93
+ body.tour-mode {
94
+ background: var(--tour-surface);
95
+ }
96
+
97
+ body.tour-mode .web-toolbar {
98
+ display: none;
99
+ }
100
+
101
+ body.tour-mode .change-hint {
102
+ display: none;
103
+ }
104
+
105
+ body.tour-mode #container {
106
+ width: calc(100vw - var(--tour-rail-width));
107
+ height: calc(100vh - var(--tour-narrative-height));
108
+ margin-left: var(--tour-rail-width);
109
+ margin-top: var(--tour-narrative-height);
110
+ }
111
+
112
+ body.tour-mode.tour-discussion #container {
113
+ visibility: hidden;
114
+ }
115
+
116
+ .tour-overview {
117
+ position: relative;
118
+ padding: 24px 46px 18px 22px;
119
+ border-bottom: 1px solid var(--tour-border);
120
+ }
121
+
122
+ .tour-overview h1 {
123
+ margin: 0 0 10px;
124
+ font-size: 20px;
125
+ line-height: 1.25;
126
+ text-wrap: balance;
127
+ }
128
+
129
+ .tour-source {
130
+ display: inline-block;
131
+ margin-bottom: 10px;
132
+ color: #bcb5ff;
133
+ font-size: 12px;
134
+ text-decoration: none;
135
+ }
136
+
137
+ .tour-source:hover {
138
+ color: #fff;
139
+ }
140
+
141
+ .tour-meta {
142
+ display: flex;
143
+ flex-wrap: wrap;
144
+ gap: 0.5ch;
145
+ align-items: baseline;
146
+ color: var(--tour-muted);
147
+ font-size: 11px;
148
+ line-height: 1.55;
149
+ }
150
+
151
+ .tour-range {
152
+ min-width: 0;
153
+ overflow: hidden;
154
+ text-overflow: ellipsis;
155
+ white-space: nowrap;
156
+ }
157
+
158
+ .tour-stats {
159
+ white-space: nowrap;
160
+ }
161
+
162
+ .tour-narrative {
163
+ position: fixed;
164
+ top: 0;
165
+ right: 0;
166
+ left: var(--tour-rail-width);
167
+ z-index: 90;
168
+ height: var(--tour-narrative-height);
169
+ box-sizing: border-box;
170
+ display: flex;
171
+ flex-direction: column;
172
+ overflow: auto;
173
+ padding: 20px 26px 18px;
174
+ color: #f5f6fb;
175
+ border-bottom: 1px solid var(--tour-border);
176
+ background: #151821;
177
+ scrollbar-gutter: stable;
178
+ font-family: var(--tour-body-font);
179
+ }
180
+
181
+ .tour-narrative[hidden] {
182
+ display: none;
183
+ }
184
+
185
+ .tour-narrative-nav {
186
+ display: grid;
187
+ grid-template-columns: auto minmax(0, 1fr) auto;
188
+ gap: 12px;
189
+ align-items: center;
190
+ margin-bottom: 14px;
191
+ padding: 0 0 10px;
192
+ border-bottom: 1px solid var(--tour-border);
193
+ background: rgba(255, 255, 255, 0.025);
194
+ }
195
+
196
+ .tour-narrative-nav button {
197
+ min-width: 72px;
198
+ padding: 7px 10px;
199
+ color: var(--tour-muted);
200
+ border: 1px solid transparent;
201
+ border-radius: 6px;
202
+ background: transparent;
203
+ cursor: pointer;
204
+ transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
205
+ }
206
+
207
+ .tour-narrative-nav button:hover,
208
+ .tour-narrative-nav button:focus-visible {
209
+ color: #fff;
210
+ border-color: var(--tour-border);
211
+ background: rgba(255, 255, 255, 0.05);
212
+ }
213
+
214
+ .tour-narrative-nav button:focus-visible {
215
+ outline: none;
216
+ box-shadow: 0 0 0 2px rgba(128, 117, 255, 0.28);
217
+ }
218
+
219
+ .tour-narrative-nav button:last-child {
220
+ justify-self: end;
221
+ }
222
+
223
+ .tour-narrative-nav button:disabled {
224
+ opacity: 0.35;
225
+ cursor: default;
226
+ }
227
+
228
+ .tour-breadcrumb {
229
+ min-width: 0;
230
+ color: var(--tour-muted);
231
+ font-family: var(--vscode-editor-font-family, monospace);
232
+ font-size: 10px;
233
+ text-align: center;
234
+ white-space: nowrap;
235
+ overflow: hidden;
236
+ text-overflow: ellipsis;
237
+ }
238
+
239
+ .tour-rail-sections {
240
+ display: grid;
241
+ flex: 1;
242
+ min-height: 0;
243
+ grid-template-rows: minmax(150px, 1fr) minmax(150px, 1fr);
244
+ }
245
+
246
+ .tour-rail-section {
247
+ display: flex;
248
+ flex-direction: column;
249
+ overflow: hidden;
250
+ min-height: 0;
251
+ }
252
+
253
+ .tour-rail-section + .tour-rail-section { border-top: 1px solid var(--tour-border); }
254
+
255
+ .tour-rail-heading {
256
+ display: flex;
257
+ align-items: center;
258
+ gap: 7px;
259
+ box-sizing: border-box;
260
+ min-height: 30px;
261
+ padding: 8px 12px 6px 18px;
262
+ color: var(--tour-muted);
263
+ font-size: 10px;
264
+ font-weight: 750;
265
+ letter-spacing: 0.09em;
266
+ text-transform: uppercase;
267
+ }
268
+
269
+ .tour-rail-count { color: var(--tour-faint); font: 500 10px var(--vscode-editor-font-family, monospace); letter-spacing: 0; }
270
+
271
+ .tour-return-focus {
272
+ margin-left: auto;
273
+ padding: 2px 6px;
274
+ color: var(--tour-accent-bright);
275
+ border: 1px solid rgba(169, 159, 255, 0.28);
276
+ border-radius: 4px;
277
+ background: transparent;
278
+ cursor: pointer;
279
+ font: 9px var(--tour-body-font);
280
+ letter-spacing: 0;
281
+ text-transform: none;
282
+ }
283
+
284
+ .tour-return-focus[hidden] { display: none; }
285
+ .tour-return-focus:hover { color: #fff; background: rgba(169, 159, 255, 0.1); }
286
+
287
+ .tour-scenes {
288
+ flex: 1;
289
+ overflow: auto;
290
+ padding: 10px 8px 18px;
291
+ }
292
+
293
+ .tour-files { flex: 1; overflow: auto; padding: 2px 8px 12px; }
294
+
295
+ .tour-file {
296
+ display: grid;
297
+ width: 100%;
298
+ box-sizing: border-box;
299
+ grid-template-columns: 12px minmax(0, 1fr);
300
+ gap: 7px;
301
+ align-items: start;
302
+ padding: 6px 9px;
303
+ color: #e5e7f0;
304
+ border: 1px solid transparent;
305
+ border-radius: 6px;
306
+ background: transparent;
307
+ text-align: left;
308
+ cursor: pointer;
309
+ }
310
+
311
+ .tour-file:hover:not(:disabled) { background: rgba(255, 255, 255, 0.045); }
312
+
313
+ .tour-file.is-active {
314
+ border-color: rgba(128, 117, 255, 0.4);
315
+ background: rgba(101, 83, 255, 0.14);
316
+ }
317
+
318
+ .tour-file:disabled { opacity: 0.62; cursor: default; }
319
+
320
+ .tour-file-marker {
321
+ padding-top: 1px;
322
+ color: var(--tour-faint);
323
+ font-size: 10px;
324
+ text-align: center;
325
+ }
326
+
327
+ .tour-file.is-tour-focus .tour-file-marker { color: var(--tour-accent-bright); }
328
+
329
+ .tour-file-copy,
330
+ .tour-file-path,
331
+ .tour-file-meta {
332
+ min-width: 0;
333
+ }
334
+
335
+ .tour-file-path,
336
+ .tour-file-meta {
337
+ display: block;
338
+ overflow: hidden;
339
+ text-overflow: ellipsis;
340
+ white-space: nowrap;
341
+ }
342
+
343
+ .tour-file-path {
344
+ color: #f5f6fb;
345
+ font-family: var(--vscode-editor-font-family, monospace);
346
+ font-size: 10px;
347
+ }
348
+
349
+ .tour-file-meta {
350
+ margin-top: 2px;
351
+ color: var(--tour-muted);
352
+ font-size: 9px;
353
+ }
354
+
355
+ .tour-file.is-omitted .tour-file-meta { color: #d7aa7b; }
356
+
357
+ .tour-chapter-title {
358
+ margin: 15px 10px 7px;
359
+ color: var(--tour-muted);
360
+ font-size: 10px;
361
+ font-weight: 750;
362
+ letter-spacing: 0.09em;
363
+ text-transform: uppercase;
364
+ }
365
+
366
+ .tour-scene {
367
+ display: grid;
368
+ width: 100%;
369
+ grid-template-columns: 24px minmax(0, 1fr);
370
+ gap: 7px;
371
+ align-items: start;
372
+ padding: 9px 10px;
373
+ color: #e5e7f0;
374
+ border: 1px solid transparent;
375
+ border-radius: 7px;
376
+ background: transparent;
377
+ text-align: left;
378
+ cursor: pointer;
379
+ }
380
+
381
+ .tour-scene:hover {
382
+ background: rgba(255, 255, 255, 0.045);
383
+ }
384
+
385
+ .tour-scene.is-active {
386
+ border-color: rgba(128, 117, 255, 0.44);
387
+ background: linear-gradient(90deg, rgba(101, 83, 255, 0.25), rgba(101, 83, 255, 0.07));
388
+ }
389
+
390
+ .tour-scene-number {
391
+ padding-top: 1px;
392
+ color: var(--tour-muted);
393
+ font-size: 10px;
394
+ }
395
+
396
+ .tour-scene-copy {
397
+ min-width: 0;
398
+ }
399
+
400
+ .tour-scene-title,
401
+ .tour-scene-path,
402
+ .tour-scene-note {
403
+ display: block;
404
+ overflow: hidden;
405
+ text-overflow: ellipsis;
406
+ white-space: nowrap;
407
+ }
408
+
409
+ .tour-scene-title {
410
+ margin-bottom: 3px;
411
+ color: #fff;
412
+ font-size: 12px;
413
+ font-weight: 650;
414
+ }
415
+
416
+ .tour-scene-path {
417
+ margin-bottom: 3px;
418
+ color: var(--tour-muted);
419
+ font-family: var(--vscode-editor-font-family, monospace);
420
+ font-size: 10px;
421
+ }
422
+
423
+ .tour-scene-note {
424
+ color: var(--tour-muted);
425
+ font-size: 10px;
426
+ }
427
+
428
+ .tour-commits-section {
429
+ max-height: 185px;
430
+ overflow: auto;
431
+ padding: 10px 18px 16px;
432
+ border-top: 1px solid var(--tour-border);
433
+ background: rgba(0, 0, 0, 0.12);
434
+ }
435
+
436
+ .tour-commits-section summary {
437
+ display: flex;
438
+ align-items: center;
439
+ gap: 8px;
440
+ margin: 0;
441
+ color: var(--tour-muted);
442
+ font-size: 10px;
443
+ font-weight: 750;
444
+ letter-spacing: 0.09em;
445
+ text-transform: uppercase;
446
+ cursor: pointer;
447
+ user-select: none;
448
+ list-style: none;
449
+ }
450
+
451
+ .tour-commits-section summary::marker {
452
+ content: '';
453
+ }
454
+
455
+ .tour-commits-section summary::before {
456
+ content: "▸";
457
+ }
458
+
459
+ .tour-commits-section[open] summary::before {
460
+ content: "▾";
461
+ }
462
+
463
+ .tour-commits-section summary::-webkit-details-marker {
464
+ display: none;
465
+ }
466
+
467
+ .tour-commits-section[open] summary {
468
+ margin-bottom: 8px;
469
+ }
470
+
471
+ .tour-commits {
472
+ display: grid;
473
+ gap: 6px;
474
+ margin: 0;
475
+ padding: 0;
476
+ list-style: none;
477
+ }
478
+
479
+ .tour-commits li {
480
+ color: var(--tour-faint);
481
+ font-size: 10px;
482
+ line-height: 1.35;
483
+ }
484
+
485
+ .tour-narrative-layout {
486
+ display: grid;
487
+ grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
488
+ gap: 18px 24px;
489
+ }
490
+
491
+ .tour-narrative-prose,
492
+ .tour-narrative-side {
493
+ min-width: 0;
494
+ }
495
+
496
+ .tour-narrative-prose {
497
+ display: flex;
498
+ flex-direction: column;
499
+ gap: 6px;
500
+ }
501
+
502
+ .tour-narrative-side {
503
+ display: flex;
504
+ flex-direction: column;
505
+ gap: 10px;
506
+ align-self: start;
507
+ }
508
+
509
+ .tour-narrative-chapter {
510
+ margin-bottom: 5px;
511
+ color: var(--tour-accent-bright);
512
+ font-size: 10px;
513
+ font-weight: 800;
514
+ letter-spacing: 0.12em;
515
+ text-transform: uppercase;
516
+ }
517
+
518
+ .tour-narrative h2 {
519
+ margin: 0 0 7px;
520
+ font-size: 19px;
521
+ text-wrap: balance;
522
+ }
523
+
524
+ .tour-narrative-summary {
525
+ margin: 0 0 8px;
526
+ color: var(--tour-body);
527
+ font-size: 13px;
528
+ line-height: 1.45;
529
+ }
530
+
531
+ .tour-narrative-bullets {
532
+ display: grid;
533
+ gap: 7px;
534
+ margin: 0 0 9px;
535
+ padding-left: 18px;
536
+ color: var(--tour-body);
537
+ font-size: 11px;
538
+ line-height: 1.5;
539
+ }
540
+
541
+ .tour-narrative-tags {
542
+ display: flex;
543
+ flex-wrap: wrap;
544
+ gap: 0;
545
+ color: var(--tour-muted);
546
+ font-size: 9px;
547
+ line-height: 1.45;
548
+ }
549
+
550
+ .tour-narrative-tags span + span::before {
551
+ margin: 0 8px;
552
+ color: var(--tour-faint);
553
+ content: "·";
554
+ font-size: 9px;
555
+ }
556
+
557
+ .tour-narrative-takeaway {
558
+ box-sizing: border-box;
559
+ padding: 8px 11px 8px 13px;
560
+ color: var(--tour-body);
561
+ border-left: 2px solid rgba(128, 117, 255, 0.28);
562
+ background: rgba(255, 255, 255, 0.015);
563
+ font-size: 11px;
564
+ }
565
+
566
+ .tour-step {
567
+ box-sizing: border-box;
568
+ padding: 11px 13px 11px 15px;
569
+ border-left: 2px solid rgba(166, 140, 255, 0.46);
570
+ background: rgba(255, 255, 255, 0.02);
571
+ }
572
+
573
+ .tour-step[hidden],
574
+ .tour-connection[hidden] {
575
+ display: none;
576
+ }
577
+
578
+ .tour-step-title { color: #fff; font-size: 13px; font-weight: 750; }
579
+ .tour-step-body { margin: 3px 0 0; color: var(--tour-body); font-size: 11px; line-height: 1.45; }
580
+
581
+ .tour-connection {
582
+ margin-top: 7px;
583
+ padding-top: 7px;
584
+ color: var(--tour-faint);
585
+ border-top: 1px solid rgba(166, 140, 255, 0.2);
586
+ font-family: var(--vscode-editor-font-family, monospace);
587
+ font-size: 9px;
588
+ }
589
+
590
+ body.tour-discussion .tour-narrative {
591
+ display: block;
592
+ bottom: 0;
593
+ height: auto;
594
+ padding: clamp(48px, 10vh, 100px) clamp(44px, 8vw, 120px);
595
+ }
596
+
597
+ body.tour-discussion .tour-narrative-nav {
598
+ margin-bottom: clamp(22px, 4vh, 36px);
599
+ }
600
+
601
+ body.tour-discussion .tour-narrative-layout {
602
+ display: block;
603
+ }
604
+
605
+ body.tour-discussion .tour-narrative h2 {
606
+ max-width: 900px;
607
+ font-size: clamp(30px, 4vw, 56px);
608
+ }
609
+
610
+ body.tour-discussion .tour-narrative-summary {
611
+ max-width: 980px;
612
+ font-size: clamp(16px, 1.8vw, 24px);
613
+ }
614
+
615
+ body.tour-discussion .tour-narrative-bullets {
616
+ display: grid;
617
+ max-width: 1000px;
618
+ gap: 10px;
619
+ margin-top: 24px;
620
+ font-size: 15px;
621
+ }
622
+
623
+ body.tour-discussion .tour-narrative-takeaway {
624
+ max-width: 620px;
625
+ font-size: 14px;
626
+ }
627
+
628
+ .tour-commit-oid {
629
+ margin-right: 6px;
630
+ color: var(--tour-accent-bright);
631
+ font-family: var(--vscode-editor-font-family, monospace);
632
+ }
633
+
634
+ @media (max-width: 1100px) {
635
+ :root {
636
+ --tour-rail-width: 285px;
637
+ --tour-narrative-height: 380px;
638
+ }
639
+
640
+ .tour-narrative-layout {
641
+ grid-template-columns: minmax(0, 1fr);
642
+ }
643
+ }
644
+
645
+ @media (max-width: 720px) {
646
+ :root {
647
+ --tour-rail-height: clamp(190px, 28vh, 260px);
648
+ --tour-rail-width: 0px;
649
+ --tour-narrative-height: clamp(300px, 42vh, 380px);
650
+ }
651
+
652
+ body.tour-mode {
653
+ --tour-rail-width: 0px;
654
+ }
655
+
656
+ .tour-shell {
657
+ inset: 0 0 auto;
658
+ display: grid;
659
+ width: 100%;
660
+ height: var(--tour-rail-height);
661
+ grid-template-columns: minmax(190px, 0.85fr) minmax(0, 1.15fr);
662
+ grid-template-rows: minmax(0, 1fr) auto;
663
+ border-right: 0;
664
+ border-bottom: 1px solid var(--tour-border);
665
+ box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
666
+ }
667
+
668
+ .tour-sidebar-resizer {
669
+ display: none;
670
+ }
671
+
672
+ body.tour-sidebar-hidden {
673
+ --tour-rail-height: 0px;
674
+ }
675
+
676
+ .tour-overview {
677
+ grid-row: 1 / span 2;
678
+ overflow: auto;
679
+ padding: 16px;
680
+ border-right: 1px solid var(--tour-border);
681
+ border-bottom: 0;
682
+ }
683
+
684
+ .tour-overview h1 {
685
+ font-size: 17px;
686
+ }
687
+
688
+ .tour-rail-sections {
689
+ grid-column: 2;
690
+ grid-row: 1;
691
+ }
692
+
693
+ .tour-commits-section {
694
+ grid-column: 2;
695
+ grid-row: 2;
696
+ max-height: 72px;
697
+ }
698
+
699
+ .tour-narrative {
700
+ top: var(--tour-rail-height);
701
+ left: 0;
702
+ padding: 16px 18px;
703
+ }
704
+
705
+ body.tour-mode #container {
706
+ width: 100vw;
707
+ height: calc(100vh - var(--tour-rail-height) - var(--tour-narrative-height));
708
+ margin-top: calc(var(--tour-rail-height) + var(--tour-narrative-height));
709
+ margin-left: 0;
710
+ }
711
+
712
+ body.tour-discussion .tour-narrative {
713
+ top: var(--tour-rail-height);
714
+ padding: clamp(28px, 7vh, 56px) 24px;
715
+ }
716
+
717
+ .tour-narrative-nav {
718
+ gap: 6px;
719
+ }
720
+
721
+ .tour-narrative-nav button {
722
+ min-width: 64px;
723
+ padding-inline: 7px;
724
+ }
725
+ }