termcast 1.5.0 → 1.6.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.
Files changed (68) hide show
  1. package/dist/build.d.ts.map +1 -1
  2. package/dist/build.js +22 -5
  3. package/dist/build.js.map +1 -1
  4. package/dist/compile.d.ts.map +1 -1
  5. package/dist/compile.js +7 -1
  6. package/dist/compile.js.map +1 -1
  7. package/dist/components/bar-graph.d.ts +4 -4
  8. package/dist/components/bar-graph.js +2 -2
  9. package/dist/components/list.d.ts +7 -0
  10. package/dist/components/list.d.ts.map +1 -1
  11. package/dist/components/list.js +74 -11
  12. package/dist/components/list.js.map +1 -1
  13. package/dist/examples/list-detail-height-ratchet.d.ts +2 -0
  14. package/dist/examples/list-detail-height-ratchet.d.ts.map +1 -0
  15. package/dist/examples/list-detail-height-ratchet.js +26 -0
  16. package/dist/examples/list-detail-height-ratchet.js.map +1 -0
  17. package/dist/extensions/dev.d.ts.map +1 -1
  18. package/dist/extensions/dev.js +1 -0
  19. package/dist/extensions/dev.js.map +1 -1
  20. package/dist/globals.js +8 -0
  21. package/dist/globals.js.map +1 -1
  22. package/dist/package-json.d.ts +2 -0
  23. package/dist/package-json.d.ts.map +1 -1
  24. package/dist/package-json.js +20 -17
  25. package/dist/package-json.js.map +1 -1
  26. package/dist/profiler.d.ts +2 -0
  27. package/dist/profiler.d.ts.map +1 -0
  28. package/dist/profiler.js +390 -0
  29. package/dist/profiler.js.map +1 -0
  30. package/package.json +14 -15
  31. package/src/build.tsx +27 -5
  32. package/src/cli.tsx +0 -0
  33. package/src/compile.tsx +9 -1
  34. package/src/compile.vitest.tsx +8 -8
  35. package/src/components/bar-graph.tsx +9 -9
  36. package/src/components/list.tsx +92 -11
  37. package/src/examples/action-shortcut.vitest.tsx +4 -4
  38. package/src/examples/actions-context.vitest.tsx +2 -2
  39. package/src/examples/bar-graph-weekly.vitest.tsx +97 -97
  40. package/src/examples/github.vitest.tsx +17 -26
  41. package/src/examples/graph-bar-chart.vitest.tsx +36 -36
  42. package/src/examples/graph-polymarket.vitest.tsx +24 -24
  43. package/src/examples/graph-row.vitest.tsx +4 -4
  44. package/src/examples/graph-styles.vitest.tsx +65 -65
  45. package/src/examples/horizontal-bar-graph-weekly.vitest.tsx +52 -52
  46. package/src/examples/list-detail-height-ratchet.tsx +48 -0
  47. package/src/examples/list-detail-height-ratchet.vitest.tsx +161 -0
  48. package/src/examples/list-detail-metadata.vitest.tsx +49 -49
  49. package/src/examples/list-dropdown-default.vitest.tsx +27 -27
  50. package/src/examples/list-fetch-data.vitest.tsx +3 -3
  51. package/src/examples/list-loading-empty-view.vitest.tsx +1 -1
  52. package/src/examples/list-no-actions.vitest.tsx +3 -3
  53. package/src/examples/list-scrollbox.vitest.tsx +6 -6
  54. package/src/examples/list-spacing-mode.vitest.tsx +1 -1
  55. package/src/examples/list-with-detail.vitest.tsx +9 -9
  56. package/src/examples/list-with-dropdown.vitest.tsx +6 -6
  57. package/src/examples/list-with-sections.vitest.tsx +20 -20
  58. package/src/examples/list-with-toast.vitest.tsx +4 -4
  59. package/src/examples/simple-candle-chart.vitest.tsx +61 -59
  60. package/src/examples/simple-navigation.vitest.tsx +25 -25
  61. package/src/examples/simple-progress-bar.vitest.tsx +7 -7
  62. package/src/examples/swift-extension.vitest.tsx +3 -3
  63. package/src/examples/toast-action.vitest.tsx +4 -4
  64. package/src/extensions/dev.tsx +2 -1
  65. package/src/extensions/dev.vitest.tsx +17 -17
  66. package/src/globals.ts +9 -0
  67. package/src/package-json.tsx +24 -23
  68. package/src/profiler.tsx +487 -0
@@ -57,10 +57,10 @@ test('list with sections navigation', async () => {
57
57
  Pineapple Sweet and tangy
58
58
  Strawberry Red and sweet Popular
59
59
 
60
+ Vegetables
60
61
 
61
62
 
62
63
  ↵ view details ↑↓ navigate ^k actions :vim
63
-
64
64
  "
65
65
  `)
66
66
 
@@ -90,10 +90,10 @@ test('list with sections navigation', async () => {
90
90
  Pineapple Sweet and tangy
91
91
  Strawberry Red and sweet Popular
92
92
 
93
+ Vegetables
93
94
 
94
95
 
95
96
  ↵ view details ↑↓ navigate ^k actions :vim
96
-
97
97
  "
98
98
  `)
99
99
 
@@ -117,10 +117,10 @@ test('list with sections navigation', async () => {
117
117
  Pineapple Sweet and tangy
118
118
  Strawberry Red and sweet Popular
119
119
 
120
+ Vegetables
120
121
 
121
122
 
122
123
  ↑↓ navigate ^k actions :vim
123
-
124
124
  "
125
125
  `)
126
126
 
@@ -148,10 +148,10 @@ test('list with sections navigation', async () => {
148
148
  Pineapple Sweet and tangy
149
149
  Strawberry Red and sweet Popular
150
150
 
151
+ Vegetables
151
152
 
152
153
 
153
154
  ↑↓ navigate ^k actions :vim
154
-
155
155
  "
156
156
  `)
157
157
 
@@ -191,11 +191,11 @@ test('list with sections search functionality', async () => {
191
191
 
192
192
 
193
193
 
194
- ↵ view details ↑↓ navigate ^k actions :vim
195
194
 
196
195
 
197
196
 
198
197
 
198
+ ↵ view details ↑↓ navigate ^k actions :vim
199
199
  "
200
200
  `)
201
201
 
@@ -227,11 +227,11 @@ test('list with sections search functionality', async () => {
227
227
 
228
228
 
229
229
 
230
- ↵ view details ↑↓ navigate ^k actions :vim
231
230
 
232
231
 
233
232
 
234
233
 
234
+ ↵ view details ↑↓ navigate ^k actions :vim
235
235
  "
236
236
  `)
237
237
 
@@ -258,10 +258,10 @@ test('list with sections search functionality', async () => {
258
258
  Pineapple Sweet and tangy
259
259
  Strawberry Red and sweet Popular
260
260
 
261
+ Vegetables
261
262
 
262
263
 
263
264
  ↵ view details ↑↓ navigate ^k actions :vim
264
-
265
265
  "
266
266
  `)
267
267
 
@@ -290,11 +290,11 @@ test('list with sections search functionality', async () => {
290
290
 
291
291
 
292
292
 
293
- ↵ view details ↑↓ navigate ^k actions :vim
294
293
 
295
294
 
296
295
 
297
296
 
297
+ ↵ view details ↑↓ navigate ^k actions :vim
298
298
  "
299
299
  `)
300
300
 
@@ -423,10 +423,10 @@ test('list click functionality', async () => {
423
423
  Pineapple Sweet and tangy
424
424
  Strawberry Red and sweet Popular
425
425
 
426
+ Vegetables
426
427
 
427
428
 
428
429
  ↑↓ navigate ^k actions :vim
429
-
430
430
  "
431
431
  `)
432
432
  expect(afterClickGrape).toContain('Grape')
@@ -527,10 +527,10 @@ test('list actions panel with ctrl+k', async () => {
527
527
  Pineapple Sweet and tangy
528
528
  Strawberry Red and sweet Popular
529
529
 
530
+ Vegetables
530
531
 
531
532
 
532
533
  ✓ Added to Cart Apple has been added to your cart
533
-
534
534
  "
535
535
  `)
536
536
  }, 10000)
@@ -579,11 +579,11 @@ test('filtering selects first visible item and navigation works', async () => {
579
579
 
580
580
 
581
581
 
582
- ↑↓ navigate ^k actions :vim
583
582
 
584
583
 
585
584
 
586
585
 
586
+ ↑↓ navigate ^k actions :vim
587
587
  "
588
588
  `)
589
589
 
@@ -607,11 +607,11 @@ test('filtering selects first visible item and navigation works', async () => {
607
607
 
608
608
 
609
609
 
610
- ↵ view details ↑↓ navigate ^k actions :vim
611
610
 
612
611
 
613
612
 
614
613
 
614
+ ↵ view details ↑↓ navigate ^k actions :vim
615
615
  "
616
616
  `)
617
617
 
@@ -635,11 +635,11 @@ test('filtering selects first visible item and navigation works', async () => {
635
635
 
636
636
 
637
637
 
638
- ↵ view details ↑↓ navigate ^k actions :vim
639
638
 
640
639
 
641
640
 
642
641
 
642
+ ↵ view details ↑↓ navigate ^k actions :vim
643
643
  "
644
644
  `)
645
645
 
@@ -663,11 +663,11 @@ test('filtering selects first visible item and navigation works', async () => {
663
663
 
664
664
 
665
665
 
666
- ↵ view details ↑↓ navigate ^k actions :vim
667
666
 
668
667
 
669
668
 
670
669
 
670
+ ↵ view details ↑↓ navigate ^k actions :vim
671
671
  "
672
672
  `)
673
673
  // Verify Carrot is still selected (not wrapped to Orange)
@@ -700,10 +700,10 @@ test('list scrollbox scrolling with sections', async () => {
700
700
  Pineapple Sweet and tangy
701
701
  Strawberry Red and sweet Popular
702
702
 
703
+ Vegetables
703
704
 
704
705
 
705
706
  ↵ view details ↑↓ navigate ^k actions :vim
706
-
707
707
  "
708
708
  `)
709
709
 
@@ -733,10 +733,10 @@ test('list scrollbox scrolling with sections', async () => {
733
733
  Pineapple Sweet and tangy
734
734
  ›Strawberry Red and sweet Popular
735
735
 
736
+ Vegetables
736
737
 
737
738
 
738
739
  ↑↓ navigate ^k actions :vim
739
-
740
740
  "
741
741
  `)
742
742
 
@@ -754,6 +754,7 @@ test('list scrollbox scrolling with sections', async () => {
754
754
 
755
755
  > Search items...
756
756
 
757
+ Vegetables
757
758
  Carrot Orange and crunchy Healthy
758
759
  Lettuce Green and fresh
759
760
  ›Broccoli Green florets Healthy
@@ -766,7 +767,6 @@ test('list scrollbox scrolling with sections', async () => {
766
767
 
767
768
 
768
769
  ↑↓ navigate ^k actions :vim
769
-
770
770
  "
771
771
  `)
772
772
 
@@ -786,6 +786,7 @@ test('list scrollbox scrolling with sections', async () => {
786
786
 
787
787
  > Search items...
788
788
 
789
+ Vegetables
789
790
  Carrot Orange and crunchy Healthy
790
791
  Lettuce Green and fresh
791
792
  Broccoli Green florets Healthy
@@ -798,7 +799,6 @@ test('list scrollbox scrolling with sections', async () => {
798
799
 
799
800
 
800
801
  ↵ view details ↑↓ navigate ^k actions :vim
801
-
802
802
  "
803
803
  `)
804
804
 
@@ -825,10 +825,10 @@ test('list scrollbox scrolling with sections', async () => {
825
825
  Pineapple Sweet and tangy
826
826
  Strawberry Red and sweet Popular
827
827
 
828
+ Vegetables
828
829
 
829
830
 
830
831
  ↵ view details ↑↓ navigate ^k actions :vim
831
-
832
832
  "
833
833
  `)
834
834
  }, 15000)
@@ -899,10 +899,10 @@ test('list does not wrap at top boundary', async () => {
899
899
  Pineapple Sweet and tangy
900
900
  Strawberry Red and sweet Popular
901
901
 
902
+ Vegetables
902
903
 
903
904
 
904
905
  ↵ view details ↑↓ navigate ^k actions :vim
905
-
906
906
  "
907
907
  `)
908
908
  expect(afterUpSnapshot).toContain('›Apple')
@@ -40,11 +40,11 @@ test('list navigation works while toast is shown', async () => {
40
40
 
41
41
 
42
42
 
43
- ✓ Selected First Item
44
43
 
45
44
 
46
45
 
47
46
 
47
+ ✓ Selected First Item
48
48
  "
49
49
  `)
50
50
 
@@ -68,11 +68,11 @@ test('list navigation works while toast is shown', async () => {
68
68
 
69
69
 
70
70
 
71
- ✓ Selected Second Item
72
71
 
73
72
 
74
73
 
75
74
 
75
+ ✓ Selected Second Item
76
76
  "
77
77
  `)
78
78
 
@@ -96,11 +96,11 @@ test('list navigation works while toast is shown', async () => {
96
96
 
97
97
 
98
98
 
99
- ✓ Selected Third Item
100
99
 
101
100
 
102
101
 
103
102
 
103
+ ✓ Selected Third Item
104
104
  "
105
105
  `)
106
106
 
@@ -124,11 +124,11 @@ test('list navigation works while toast is shown', async () => {
124
124
 
125
125
 
126
126
 
127
- ✓ Selected Second Item
128
127
 
129
128
 
130
129
 
131
130
 
131
+ ✓ Selected Second Item
132
132
  "
133
133
  `)
134
134
  }, 10000)
@@ -39,27 +39,27 @@ test('candle chart renders in list detail with axes', async () => {
39
39
  > Search markets...
40
40
 
41
41
  Watchlist │ $74,678│ │
42
- ›BTC Bitcoin │ │ ▌▌▖│
43
- ETH Ethereum │ │ ▌│▘▌▖│
44
- SOL Solana │ $70,438│ │ │ ▌ │▘▘▌
45
- XRP XRP │ │ ▖▖▖▖ ▌▌ ▖▖▌ ▌││
46
- DOGE Dogecoin │ │ ▌││▌▖▖ ▖▖│││▌▘▌▌│ ▘▘▘▌
47
- BNB BNB │ $66,197│▖▖ │▌ ▘▘▘▌▖▖▌▘▌▖▌▌▌ ▘▘
42
+ ›BTC Bitcoin $67,641 -0.2% │ │ ▌▌▖│
43
+ ETH Ethereum $1,971 -0.3% │ │ ▌│▘▌▖│
44
+ SOL Solana $83.31 -0.4% │ $70,438│ │ │ ▌ │▘▘▌
45
+ XRP XRP $1.36 -0.4% │ │ ▖▖▖▖ ▌▌ ▖▖▌ ▌││
46
+ DOGE Dogecoin $0.0901 -0.5% │ │ ▌││▌▖▖ ▖▖│││▌▘▌▌│ ▘▘▘▌
47
+ BNB BNB $622 -0.3% │ $66,197│▖▖ │▌ ▘▘▘▌▖▖▌▘▌▖▌▌▌ ▘▘
48
48
  │ ││▌▖ │▌▘ ▘▘▌▌ ▘▘▘▘
49
49
  Mixed Components │ │ │▌▌▘▘ ▘▘
50
- BTC - Candles Real BTC/USD hourly candles │ $61,957│ ││
51
- ETH - Candle + Line Candles plus closing line │ 12d 8d 4d Now
52
- SOL - Candle + VolumeCandles plus volume split │
53
- BTC vs ETH Side-by-side crypto leaders │ Price: $67,641
54
- DOGE - Candle + Lin Low-priced ...t formatting
50
+ BTC - CandlesReal BTC/US...rly candles $67,641 │ $61,957│ ││
51
+ ETH - C...e + LineCandles p...sing line $1,971 │ 12d 8d 4d Now
52
+ SOL - Ca... + Volum Candles ...me split $83.31
53
+ BTC vs ETH Side-by-side crypto leaders $67,641 │ Price: $67,641
54
+ DOGE - ...e + LineLow-pric...ormatting $0.0901
55
55
  │ Change: -0.2%
56
56
 
57
57
  │ Category: Store of Value
58
58
 
59
59
  │ ────────────────────────────────────────────
60
60
 
61
- ↵ open detail ↑↓ navigate ^k actions :vi │ BTC-USD Hourly OHLC
62
-
61
+ │ BTC-USD Hourly OHLC
62
+ ↵ open detail ↑↓ navigate ^k actions :vi │
63
63
 
64
64
  "
65
65
  `)
@@ -128,7 +128,7 @@ test('candle + line overlay (mixed components)', async () => {
128
128
  }
129
129
 
130
130
  const text = await session.text({
131
- waitFor: (t) => t.includes('›ETH - Candle + Line') && t.includes('closing line'),
131
+ waitFor: (t) => t.includes('›ETH') && t.includes('Line') && t.includes('Price: $1,971'),
132
132
  timeout: 10000,
133
133
  })
134
134
 
@@ -141,19 +141,19 @@ test('candle + line overlay (mixed components)', async () => {
141
141
  > Search markets...
142
142
 
143
143
  Watchlist │ $2,220│ │
144
- BTC Bitcoin │ │ │ ▌▌▖▖
145
- ETH Ethereum │ $2,073│ ▖▖▖ │ ▖▖ ▖▌▘▘▌▖▖▖
146
- SOL Solana │ │ │▌│▘▌▌▌ ▖▖ ▌▘▌││▌│ │││▌
147
- XRP XRP │ │ │▌▘ │ ▌▖ ▖▌▘▌▖▌ ▌▌▘▘ ▌▌▘▘
148
- DOGE Dogecoin │ $1,927│▖▖ ▖▌ │▘▌▖▌ │││ │
149
- BNB BNB │ │▘▘▌▖▌▘│ ▘▘
144
+ BTC Bitcoin $67,641 -0.2% │ │ │ ▌▌▖▖
145
+ ETH Ethereum $1,971 -0.3% │ $2,073│ ▖▖▖ │ ▖▖ ▖▌▘▘▌▖▖▖
146
+ SOL Solana $83.31 -0.4% │ │ │▌│▘▌▌▌ ▖▖ ▌▘▌││▌│ │││▌
147
+ XRP XRP $1.36 -0.4% │ │ │▌▘ │ ▌▖ ▖▌▘▌▖▌ ▌▌▘▘ ▌▌▘▘
148
+ DOGE Dogecoin $0.0901 -0.5% │ $1,927│▖▖ ▖▌ │▘▌▖▌ │││ │
149
+ BNB BNB $622 -0.3% │ │▘▘▌▖▌▘│ ▘▘
150
150
  │ $1,780│ ▘▘
151
151
  Mixed Components │ 12d 8d 4d Now
152
- BTC - Candles Real BTC/USD hourly candles
153
- ›ETH - Candle + Line Candles plus closing line │ $2,197│ ⢠⣆⣠⡀
154
- SOL - Candle + VolumeCandles plus volume split │ │ ⣴⣤⣤ ⣀ ⢠⣀ ⢠⣿⣿⣿⣷⣶⣦⡀
155
- BTC vs ETH Side-by-side crypto leaders │ $1,997│ ⢰⣿⣿⣿⣿⣿⣇ ⣠⣷⣴⣄⣀⢸⣿⣶⣠⣤⣼⣿⣿⣿⣿⣿⣿⣧⣤⣤⣤
156
- DOGE - Candle + Lin Low-priced ...t formatting │ │⣶⡄ ⣦⣾⣿⣿⣿⣿⣿⣿⣶⣶⢠⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
152
+ BTC - CandlesReal BTC/US...rly candles $67,641
153
+ ›ETH - C...e + LineCandles p...sing line $1,971 │ $2,197│ ⢠⣆⣠⡀
154
+ SOL - Ca... + Volum Candles ...me split $83.31 │ │ ⣴⣤⣤ ⣀ ⢠⣀ ⢠⣿⣿⣿⣷⣶⣦⡀
155
+ BTC vs ETH Side-by-side crypto leaders $67,641 │ $1,997│ ⢰⣿⣿⣿⣿⣿⣇ ⣠⣷⣴⣄⣀⢸⣿⣶⣠⣤⣼⣿⣿⣿⣿⣿⣿⣧⣤⣤⣤
156
+ DOGE - ...e + LineLow-pric...ormatting $0.0901 │ │⣶⡄ ⣦⣾⣿⣿⣿⣿⣿⣿⣶⣶⢠⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
157
157
  │ $1,797│⣿⣿⣷⣦⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
158
158
  │ 12d 8d 4d Now
159
159
 
@@ -166,7 +166,8 @@ test('candle + line overlay (mixed components)', async () => {
166
166
  "
167
167
  `)
168
168
 
169
- expect(text).toContain('Candle + Line')
169
+ expect(text).toContain('›ETH')
170
+ expect(text).toContain('Line')
170
171
  }, 30000)
171
172
 
172
173
  test('candle + volume bar chart (mixed components)', async () => {
@@ -177,7 +178,7 @@ test('candle + volume bar chart (mixed components)', async () => {
177
178
  }
178
179
 
179
180
  const text = await session.text({
180
- waitFor: (t) => t.includes('›SOL - Candle + Volume') && t.includes('half'),
181
+ waitFor: (t) => t.includes('›SOL') && t.includes('Second half'),
181
182
  timeout: 10000,
182
183
  })
183
184
 
@@ -190,32 +191,33 @@ test('candle + volume bar chart (mixed components)', async () => {
190
191
  > Search markets...
191
192
 
192
193
  Watchlist │ $95.03│ ││
193
- BTC Bitcoin │ │ │ │ ▖▖▖▖
194
- ETH Ethereum │ $88.26│ ▌▌▖ ││ │ ▖▖ ▌▘▘▘▌▌▌│
195
- SOL Solana │ │ ▖▌│▘▌▌▌ │▌▌▖▖▌▘▌▖▌▘ ▘▌│││
196
- XRP XRP │ │ │▌ │ ▌▖│ ▌▘▘▘▌▌ ▘▘││ ▘▘▘▌
197
- DOGE Dogecoin │ $81.48│▖▖ ▌▘ │▘▌▌▘ │
198
- BNB BNB │ │▘▘▌▖▌▘ ▘▘
194
+ BTC Bitcoin $67,641 -0.2% │ │ │ │ ▖▖▖▖
195
+ ETH Ethereum $1,971 -0.3% │ $88.26│ ▌▌▖ ││ │ ▖▖ ▌▘▘▘▌▌▌│
196
+ SOL Solana $83.31 -0.4% │ │ ▖▌│▘▌▌▌ │▌▌▖▖▌▘▌▖▌▘ ▘▌│││
197
+ XRP XRP $1.36 -0.4% │ │ │▌ │ ▌▖│ ▌▘▘▘▌▌ ▘▘││ ▘▘▘▌
198
+ DOGE Dogecoin $0.0901 -0.5% │ $81.48│▖▖ ▌▘ │▘▌▌▘ │
199
+ BNB BNB $622 -0.3% │ │▘▘▌▖▌▘ ▘▘
199
200
  │ $74.71│ ▘▘│
200
201
  Mixed Components │ 12d 8d 4d Now
201
- BTC - Candles Real BTC/USD hourly candles
202
- ETH - Candle + Line Candles plus closing line │ ┌Second half: 95.3%┐
203
- ›SOL - Candle + VolumeCandles plus volume split │
204
- BTC vs ETH Side-by-side crypto leaders
205
- DOGE - Candle + Lin Low-priced ...t formatting │ ────────────────────────────────────────────
202
+ BTC - CandlesReal BTC/US...rly candles $67,641
203
+ ETH - C...e + LineCandles p...sing line $1,971 │ ┌Second half: 95.3%┐
204
+ ›SOL - Ca... + Volum Candles ...me split $83.31
205
+ BTC vs ETH Side-by-side crypto leaders $67,641
206
+ DOGE - ...e + LineLow-pric...ormatting $0.0901 │ ────────────────────────────────────────────
206
207
 
207
208
  │ Price: $83.31
208
209
 
209
- ↵ open detail ↑↓ navigate ^k actions :vi │ Change: -0.4%
210
-
211
-
212
-
213
-
210
+ │ Change: -0.4%
211
+
212
+
213
+
214
+ ↵ open detail ↑↓ navigate ^k actions :vi │
214
215
 
215
216
  "
216
217
  `)
217
218
 
218
- expect(text).toContain('Candle + Volume')
219
+ expect(text).toContain('›SOL')
220
+ expect(text).toContain('Second half')
219
221
  }, 30000)
220
222
 
221
223
  test('side-by-side candle charts in Row', async () => {
@@ -239,28 +241,28 @@ test('side-by-side candle charts in Row', async () => {
239
241
  > Search markets...
240
242
 
241
243
  Watchlist │ $74,678│ ││ $2,220│ │
242
- BTC Bitcoin │ │ ▌▌ │ │ ││
243
- ETH Ethereum │ │ │ │ ▌▘▌ │ ▖▖│ │ ▌▌▖
244
- SOL Solana │ │ ▖▖ ││▌ ▌│ │ ▌▘▌ ││││▌│▌
245
- XRP XRP │ $68,318│ ▌▘▌ ││▌▘▘ ▘▘ $2,000│ ▌│▌ ▌▌▌▌▌ ▘▘
246
- DOGE Dogecoin │ │▖ ▌│▌▖▌▘▘│ ││ ▌ ▘▌▌│││
247
- BNB BNB │ │▌▌▘ ▘▘ │▌▖▌ ││
244
+ BTC Bitcoin $67,641 -0.2% │ │ ▌▌ │ │ ││
245
+ ETH Ethereum $1,971 -0.3% │ │ │ │ ▌▘▌ │ ▖▖│ │ ▌▌▖
246
+ SOL Solana $83.31 -0.4% │ │ ▖▖ ││▌ ▌│ │ ▌▘▌ ││││▌│▌
247
+ XRP XRP $1.36 -0.4% │ $68,318│ ▌▘▌ ││▌▘▘ ▘▘ $2,000│ ▌│▌ ▌▌▌▌▌ ▘▘
248
+ DOGE Dogecoin $0.0901 -0.5% │ │▖ ▌│▌▖▌▘▘│ ││ ▌ ▘▌▌│││
249
+ BNB BNB $622 -0.3% │ │▌▌▘ ▘▘ │▌▖▌ ││
248
250
  │ $61,957│ │ │ $1,780│││
249
251
  Mixed Components │ 30d Now 30d Now
250
- BTC - Candles Real BTC/USD hourly candles
251
- ETH - Candle + Line Candles plus closing line │ ────────────────────────────────────────────
252
- SOL - Candle + VolumeCandles plus volume split │
253
- ›BTC vs ETH Side-by-side crypto leaders │ Price: $67,641
254
- DOGE - Candle + Lin Low-priced ...t formatting
252
+ BTC - CandlesReal BTC/US...rly candles $67,641
253
+ ETH - C...e + LineCandles p...sing line $1,971 │ ────────────────────────────────────────────
254
+ SOL - Ca... + Volum Candles ...me split $83.31
255
+ ›BTC vs ETH Side-by-side crypto leaders $67,641 │ Price: $67,641
256
+ DOGE - ...e + LineLow-pric...ormatting $0.0901
255
257
  │ Change: -0.2%
256
258
 
257
259
 
260
+
261
+
262
+
263
+
258
264
  ↵ open detail ↑↓ navigate ^k actions :vi │
259
265
 
260
-
261
-
262
-
263
-
264
266
  "
265
267
  `)
266
268