@tenphi/starlight 0.6.0 → 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.
@@ -1,13 +1,5 @@
1
1
  import { tasty } from "@tenphi/tasty";
2
- import chevronDownIcon from "../icons/chevron-down.svg?raw";
3
- import closeIcon from "../icons/close.svg?raw";
4
- import contrastIcon from "../icons/contrast.svg?raw";
5
- import deviceIcon from "../icons/device-desktop.svg?raw";
6
- import moonIcon from "../icons/moon.svg?raw";
7
- import searchIcon from "../icons/search.svg?raw";
8
- import sunIcon from "../icons/sun.svg?raw";
9
2
  import { customizeComponent } from "./customize-component.js";
10
- import { svgIconUrl } from "./svg-icon.js";
11
3
  import { configureCookbookStates } from "./tasty-states.js";
12
4
 
13
5
  configureCookbookStates();
@@ -31,6 +23,10 @@ export const LogoRoot = customizeComponent(
31
23
  inlineSize: "100%",
32
24
  blockSize: "100%",
33
25
  },
26
+ Mark: {
27
+ $: "> svg > .td-logo__mark",
28
+ color: "#accent-surface-text",
29
+ },
34
30
  },
35
31
  }),
36
32
  );
@@ -112,7 +108,7 @@ export const StarlightHeaderRoot = customizeComponent(
112
108
  display: "flex",
113
109
  flow: "column",
114
110
  inlineSize: "100%",
115
- maxInlineSize: "($layout-width - ($sl-sidebar-pad-x * 2))",
111
+ maxInlineSize: "($layout-width - ($docs-sidebar-pad-x * 2))",
116
112
  blockSize: "100%",
117
113
  minInlineSize: "0",
118
114
  marginInlineStart: "auto",
@@ -154,13 +150,26 @@ export const StarlightHeaderRoot = customizeComponent(
154
150
  overflow: "hidden",
155
151
  maxInlineSize: {
156
152
  "": "none",
157
- "@mobile": "(100% - (($sl-menu-button-size + $sl-nav-gap) * 3))",
153
+ "@mobile": "(100% - (($docs-menu-button-size + $docs-nav-gap) * 3))",
154
+ },
155
+ },
156
+ Logo: {
157
+ $: ".td-header__logo",
158
+ inlineSize: {
159
+ "": "2rem",
160
+ "@mobile": "1.75rem",
161
+ },
162
+ blockSize: {
163
+ "": "2rem",
164
+ "@mobile": "1.75rem",
158
165
  },
159
166
  },
160
167
  SiteTitle: {
161
168
  $: ".site-title",
162
169
  color: "#text",
163
170
  preset: { "": "h4 / strong", "@mobile": "h5 / strong" },
171
+ textDecoration: "none",
172
+ whiteSpace: "nowrap",
164
173
  },
165
174
  Search: {
166
175
  $: ".td-header__search",
@@ -168,26 +177,27 @@ export const StarlightHeaderRoot = customizeComponent(
168
177
  zIndex: { "": "auto", "@mobile": "10" },
169
178
  inset: {
170
179
  "": "auto top",
171
- "@mobile": "(($sl-nav-height - $sl-menu-button-size) / 2) top",
180
+ "@mobile": "(($docs-nav-height - $docs-menu-button-size) / 2) top",
172
181
  },
173
182
  insetInlineEnd: {
174
183
  "": "auto",
175
184
  "@mobile":
176
- "($sl-nav-pad-x + (($sl-menu-button-size + $sl-nav-gap) * 2))",
185
+ "($docs-nav-pad-x + (($docs-menu-button-size + $docs-nav-gap) * 2))",
177
186
  },
178
187
  placeItems: { "": "normal", "@mobile": "center" },
179
- inlineSize: { "": "auto", "@mobile": "$sl-menu-button-size" },
180
- blockSize: { "": "auto", "@mobile": "$sl-menu-button-size" },
188
+ inlineSize: { "": "auto", "@mobile": "$docs-menu-button-size" },
189
+ blockSize: { "": "auto", "@mobile": "$docs-menu-button-size" },
181
190
  marginInlineStart: "0",
182
191
  },
183
192
  SearchElement: {
184
193
  $: ".td-header__search site-search",
185
194
  inlineSize: "100%",
186
- blockSize: { "": "auto", "@mobile": "$sl-menu-button-size" },
195
+ blockSize: { "": "auto", "@mobile": "$docs-menu-button-size" },
187
196
  },
188
197
  Tools: {
189
198
  $: ".td-header__tools",
190
199
  display: "flex",
200
+ hide: { "": false, "@mobile": true },
191
201
  flow: "row",
192
202
  alignItems: "center",
193
203
  justifyContent: "flex-end",
@@ -210,125 +220,144 @@ export const StarlightHeaderRoot = customizeComponent(
210
220
  zIndex: { "": "auto", "@mobile": "10" },
211
221
  inset: {
212
222
  "": "auto top",
213
- "@mobile": "(($sl-nav-height - $sl-menu-button-size) / 2) top",
223
+ "@mobile": "(($docs-nav-height - $docs-menu-button-size) / 2) top",
214
224
  },
215
225
  insetInlineEnd: {
216
226
  "": "auto",
217
- "@mobile": "($sl-nav-pad-x + $sl-menu-button-size + $sl-nav-gap)",
227
+ "@mobile":
228
+ "($docs-nav-pad-x + $docs-menu-button-size + $docs-nav-gap)",
218
229
  },
219
230
  placeItems: { "": "normal", "@mobile": "center" },
220
- inlineSize: { "": "auto", "@mobile": "$sl-menu-button-size" },
221
- blockSize: { "": "auto", "@mobile": "$sl-menu-button-size" },
231
+ inlineSize: { "": "auto", "@mobile": "$docs-menu-button-size" },
232
+ blockSize: { "": "auto", "@mobile": "$docs-menu-button-size" },
222
233
  },
223
234
  },
224
235
  }),
225
236
  );
226
237
 
238
+ const appearanceSelectStyles = {
239
+ display: "grid",
240
+ flexShrink: "0",
241
+ placeItems: "center",
242
+ margin: "0",
243
+ inlineSize: {
244
+ "": "$control-height",
245
+ "@mobile": "$docs-menu-button-size",
246
+ },
247
+ blockSize: {
248
+ "": "$control-height",
249
+ "@mobile": "$docs-menu-button-size",
250
+ },
251
+
252
+ Label: {
253
+ $: "label",
254
+ boxSizing: "border-box",
255
+ position: "relative",
256
+ display: "inline-flex",
257
+ alignItems: "center",
258
+ inlineSize: "100%",
259
+ blockSize: "100%",
260
+ padding: "0",
261
+ border: "0",
262
+ fill: "#clear",
263
+ },
264
+ Icon: {
265
+ $: ".label-icon",
266
+ position: "absolute",
267
+ zIndex: "1",
268
+ insetInlineStart: "50%",
269
+ inlineSize: "1rem",
270
+ blockSize: "1rem",
271
+ color: "#text-soft",
272
+ translate: "-50% 0",
273
+ pointerEvents: "none",
274
+ },
275
+ IconSvg: {
276
+ $: ".label-icon > svg",
277
+ display: "block",
278
+ inlineSize: "100%",
279
+ blockSize: "100%",
280
+ },
281
+ Select: {
282
+ $: "select",
283
+ appearance: "base-select",
284
+ position: "static",
285
+ inlineSize: "100%",
286
+ minInlineSize: "0",
287
+ blockSize: "100%",
288
+ minBlockSize: "0",
289
+ padding: "0",
290
+ margin: "0",
291
+ color: "#clear",
292
+ preset: "small / strong",
293
+ border: true,
294
+ radius: "$radius",
295
+ fill: {
296
+ "": "#surface-3",
297
+ ":hover": "#surface-3-hover",
298
+ ":active": "#surface-3-pressed",
299
+ },
300
+ shadow: "none",
301
+ cursor: "pointer",
302
+ transition: "color 120ms ease, fill 120ms ease",
303
+ },
304
+ PickerIcon: { $: "select::picker-icon", hide: true },
305
+ Picker: {
306
+ $: "select::picker(select)",
307
+ appearance: "base-select",
308
+ gap: "1px",
309
+ minInlineSize: "8rem",
310
+ marginBlockStart: "0.5rem",
311
+ padding: "4px",
312
+ color: "#text",
313
+ border: true,
314
+ radius: "$card-radius",
315
+ fill: "#surface-2",
316
+ shadow: "0 0.75rem 2rem #shadow",
317
+ },
318
+ OpenPicker: {
319
+ $: "select::picker(select):popover-open",
320
+ display: "grid",
321
+ },
322
+ Option: {
323
+ $: "option",
324
+ padding: "0.625rem 0.75rem",
325
+ color: "#text",
326
+ preset: "small",
327
+ radius: "$radius",
328
+ fill: "#surface-2",
329
+ },
330
+ HoverOption: {
331
+ $: "option:hover, option:focus",
332
+ fill: "#surface-2-hover",
333
+ },
334
+ CheckedOption: {
335
+ $: "option:checked",
336
+ color: "#accent-text",
337
+ fill: "#accent-surface-2-subtle",
338
+ },
339
+ Checkmark: {
340
+ $: "option::checkmark",
341
+ order: "1",
342
+ marginInlineStart: "auto",
343
+ },
344
+ };
345
+
227
346
  export const ThemeSelectRoot = customizeComponent(
228
347
  "ThemeSelect",
229
348
  { as: "starlight-theme-select" },
230
349
  tasty({
231
350
  as: "starlight-theme-select",
232
- styles: {
233
- display: "grid",
234
- placeItems: "center",
235
- margin: "0",
236
- inlineSize: {
237
- "": "$control-height",
238
- "@mobile": "$sl-menu-button-size",
239
- },
240
- blockSize: {
241
- "": "$control-height",
242
- "@mobile": "$sl-menu-button-size",
243
- },
351
+ styles: appearanceSelectStyles,
352
+ }),
353
+ );
244
354
 
245
- Label: {
246
- $: "label",
247
- boxSizing: "border-box",
248
- position: "relative",
249
- display: "inline-flex",
250
- alignItems: "center",
251
- inlineSize: "100%",
252
- blockSize: "100%",
253
- padding: "0",
254
- border: "0",
255
- fill: "#clear",
256
- },
257
- Icon: {
258
- $: ".label-icon",
259
- position: "absolute",
260
- zIndex: "1",
261
- insetInlineStart: "50%",
262
- inlineSize: "1rem",
263
- blockSize: "1rem",
264
- color: "#text-soft",
265
- translate: "-50% 0",
266
- pointerEvents: "none",
267
- },
268
- Select: {
269
- $: "select",
270
- appearance: "base-select",
271
- position: "static",
272
- inlineSize: "100%",
273
- minInlineSize: "0",
274
- blockSize: "100%",
275
- minBlockSize: "0",
276
- padding: "0",
277
- margin: "0",
278
- color: "#clear",
279
- preset: "small / strong",
280
- border: true,
281
- radius: "$radius",
282
- fill: {
283
- "": "#surface-3",
284
- ":hover": "#surface-3-hover",
285
- ":active": "#surface-3-pressed",
286
- },
287
- shadow: "none",
288
- cursor: "pointer",
289
- transition: "color 120ms ease, fill 120ms ease",
290
- },
291
- PickerIcon: { $: "select::picker-icon", hide: true },
292
- Picker: {
293
- $: "select::picker(select)",
294
- appearance: "base-select",
295
- gap: "1px",
296
- minInlineSize: "8rem",
297
- marginBlockStart: "0.5rem",
298
- padding: "4px",
299
- color: "#text",
300
- border: true,
301
- radius: "$card-radius",
302
- fill: "#surface-2",
303
- shadow: "0 0.75rem 2rem #shadow",
304
- },
305
- OpenPicker: {
306
- $: "select::picker(select):popover-open",
307
- display: "grid",
308
- },
309
- Option: {
310
- $: "option",
311
- padding: "0.625rem 0.75rem",
312
- color: "#text",
313
- preset: "small",
314
- radius: "$radius",
315
- fill: "#surface-2",
316
- },
317
- HoverOption: {
318
- $: "option:hover, option:focus",
319
- fill: "#surface-2-hover",
320
- },
321
- CheckedOption: {
322
- $: "option:checked",
323
- color: "#accent-text",
324
- fill: "color-mix(in oklab, #accent-surface 12%, #surface-2)",
325
- },
326
- Checkmark: {
327
- $: "option::checkmark",
328
- order: "1",
329
- marginInlineStart: "auto",
330
- },
331
- },
355
+ export const ContrastSelectRoot = customizeComponent(
356
+ "ContrastSelect",
357
+ { as: "cookbook-contrast-select" },
358
+ tasty({
359
+ as: "cookbook-contrast-select",
360
+ styles: appearanceSelectStyles,
332
361
  }),
333
362
  );
334
363
 
@@ -379,7 +408,7 @@ export const MobileNavigationTabsRoot = customizeComponent(
379
408
  CurrentLink: {
380
409
  $: 'a[aria-current="page"]',
381
410
  color: "#accent-text",
382
- fill: "color-mix(in oklab, #accent-surface 12%, #surface)",
411
+ fill: "#accent-surface-subtle",
383
412
  },
384
413
  },
385
414
  }),
@@ -410,343 +439,3 @@ export const MobileMenuFooterRoot = customizeComponent(
410
439
  },
411
440
  }),
412
441
  );
413
-
414
- export const NavigationTreeRoot = customizeComponent(
415
- "NavigationTree",
416
- { as: "ul" },
417
- tasty({
418
- as: "ul",
419
- styles: {
420
- margin: "0",
421
- padding: "0",
422
- listStyle: "none",
423
- NestedList: {
424
- $: "ul",
425
- margin: "0",
426
- padding: "0 0 0 ($gap * 1.5)",
427
- listStyle: "none",
428
- },
429
- Summary: {
430
- $: "details > summary",
431
- display: "flex",
432
- alignItems: "center",
433
- justifyContent: "space-between",
434
- padding: "($gap * 0.9) ($gap * 1.25)",
435
- color: "#text",
436
- preset: "body / strong",
437
- cursor: "pointer",
438
- listStyle: "none",
439
- },
440
- Marker: { $: "details > summary::-webkit-details-marker", hide: true },
441
- SummaryIcon: {
442
- $: "details > summary::after",
443
- content: '""',
444
- inlineSize: "1rem",
445
- blockSize: "1rem",
446
- fill: "#text-soft",
447
- mask: `url("${svgIconUrl(chevronDownIcon)}") center / contain no-repeat`,
448
- },
449
- ClosedSummaryIcon: {
450
- $: "details:not([open]) > summary::after",
451
- rotate: "-90deg",
452
- },
453
- Link: {
454
- $: "a",
455
- display: "block",
456
- padding: "($gap * 0.9) ($gap * 1.25)",
457
- color: "#text-soft",
458
- radius: "$radius",
459
- textDecoration: "none",
460
- },
461
- HoverLink: { $: "a:hover", color: "#text", fill: "#surface-2" },
462
- CurrentLink: {
463
- $: 'a[aria-current="page"]',
464
- color: "#accent-text",
465
- preset: "body / strong",
466
- fill: "color-mix(in oklab, #accent-surface 12%, #surface)",
467
- },
468
- },
469
- }),
470
- );
471
-
472
- export const StandaloneHeaderRoot = customizeComponent(
473
- "StandaloneHeader",
474
- { as: "header" },
475
- tasty({
476
- as: "header",
477
- styles: {
478
- position: "sticky",
479
- inset: "0 top",
480
- zIndex: "2",
481
- display: "flex",
482
- flow: "column",
483
- paddingInline: {
484
- "": "clamp(1.25rem, 3vw, 2rem)",
485
- "@shell-mobile": "1rem",
486
- },
487
- fill: "color-mix(in oklab, #surface 96%, #clear)",
488
- backdropFilter: "blur(12px)",
489
- border: { "": "0", "@desktop": "1bw bottom" },
490
- Primary: {
491
- $: ".td-shell__header-primary",
492
- display: "flex",
493
- alignItems: "center",
494
- justifyContent: "space-between",
495
- gap: "($gap * 3)",
496
- inlineSize: "100%",
497
- maxInlineSize: "($layout-width - ($gap * 6))",
498
- minBlockSize: "4.5rem",
499
- marginInlineStart: "auto",
500
- marginInlineEnd: "auto",
501
- },
502
- Brand: {
503
- $: ".td-shell__brand",
504
- display: "flex",
505
- alignItems: "center",
506
- gap: "$gap",
507
- minInlineSize: "0",
508
- },
509
- BrandLink: {
510
- $: ".td-shell__brand > a",
511
- color: "#text",
512
- preset: "heading",
513
- textDecoration: "none",
514
- },
515
- Actions: {
516
- $: ".td-shell__actions",
517
- display: "flex",
518
- alignItems: { "": "center", "@shell-mobile": "stretch" },
519
- flow: { "": "row nowrap", "@shell-mobile": "row wrap" },
520
- gap: "$gap",
521
- },
522
- TopNavigation: {
523
- $: "> .td-top-tabs",
524
- maxInlineSize: "($layout-width - ($gap * 6))",
525
- marginInlineStart: "auto",
526
- marginInlineEnd: "auto",
527
- },
528
- },
529
- }),
530
- );
531
-
532
- export const AppearanceControlRoot = customizeComponent(
533
- "AppearanceControl",
534
- { as: "label" },
535
- tasty({
536
- as: "label",
537
- styles: {
538
- position: "relative",
539
- display: "grid",
540
- placeItems: "center",
541
- inlineSize: "$control-height",
542
- blockSize: "$control-height",
543
- radius: "$radius",
544
- fill: { "": "#surface-2", ":hover": "#surface-2-hover" },
545
- Select: {
546
- $: "select",
547
- position: "absolute",
548
- inset: "0",
549
- inlineSize: "100%",
550
- blockSize: "100%",
551
- padding: "0",
552
- border: "0",
553
- opacity: "0",
554
- cursor: "pointer",
555
- },
556
- Icon: {
557
- $: "&::before",
558
- content: '""',
559
- inlineSize: "1rem",
560
- blockSize: "1rem",
561
- fill: "#text-soft",
562
- mask: {
563
- "": `url("${svgIconUrl(deviceIcon)}") center / contain no-repeat`,
564
- ':has([data-docs-theme] option[value="light"]:checked)': `url("${svgIconUrl(sunIcon)}") center / contain no-repeat`,
565
- ':has([data-docs-theme] option[value="dark"]:checked)': `url("${svgIconUrl(moonIcon)}") center / contain no-repeat`,
566
- ".td-appearance-control--contrast": `url("${svgIconUrl(contrastIcon)}") center / contain no-repeat`,
567
- },
568
- pointerEvents: "none",
569
- },
570
- },
571
- }),
572
- );
573
-
574
- export const SearchTriggerRoot = customizeComponent(
575
- "SearchTrigger",
576
- { as: "button" },
577
- tasty({
578
- as: "button",
579
- styles: {
580
- display: "inline-flex",
581
- alignItems: "center",
582
- gap: "$gap",
583
- paddingInline: "($gap * 1.5)",
584
- color: "#text",
585
- border: true,
586
- radius: "$radius",
587
- fill: {
588
- "": "#surface-2",
589
- ":hover": "#surface-2-hover",
590
- ":active": "#surface-2-pressed",
591
- },
592
- transition: "fill 120ms ease",
593
- Icon: {
594
- $: "&::before",
595
- content: '""',
596
- inlineSize: "1rem",
597
- blockSize: "1rem",
598
- flexGrow: "0",
599
- flexShrink: "0",
600
- flexBasis: "auto",
601
- fill: "#current",
602
- mask: `url("${svgIconUrl(searchIcon)}") center / contain no-repeat`,
603
- },
604
- Shortcut: {
605
- $: "> kbd",
606
- display: "flex",
607
- gap: "0.125rem",
608
- marginInlineStart: "($gap * 1.5)",
609
- color: "#text-soft",
610
- preset: "small",
611
- font: "$body-font-family",
612
- },
613
- Key: { $: "kbd", font: "$body-font-family" },
614
- },
615
- }),
616
- );
617
-
618
- export const DocsLayoutRoot = customizeComponent(
619
- "DocsLayout",
620
- { as: "div" },
621
- tasty({
622
- as: "div",
623
- styles: {
624
- display: "grid",
625
- gridColumns: {
626
- "": "minmax(13rem, $sidebar-width) minmax(0, 1fr)",
627
- "@shell-mobile": "1fr",
628
- },
629
- inlineSize: "min(100%, $layout-width)",
630
- minBlockSize: "100vh",
631
- marginInlineStart: "auto",
632
- marginInlineEnd: "auto",
633
- },
634
- }),
635
- );
636
-
637
- export const DocsSidebarRoot = customizeComponent(
638
- "DocsSidebar",
639
- { as: "nav" },
640
- tasty({
641
- as: "nav",
642
- styles: {
643
- padding: {
644
- "": "($gap * 5) ($gap * 3)",
645
- "@shell-mobile": "($gap * 2) ($gap * 3)",
646
- },
647
- },
648
- }),
649
- );
650
-
651
- export const DocsArticleRoot = customizeComponent(
652
- "DocsArticle",
653
- { as: "main" },
654
- tasty({
655
- as: "main",
656
- styles: {
657
- inlineSize: "min(100%, $content-width)",
658
- padding: "($gap * 3) clamp(1.5rem, 5vw, 4rem) ($gap * 10)",
659
- },
660
- }),
661
- );
662
-
663
- export const SearchDialogRoot = customizeComponent(
664
- "SearchDialog",
665
- { as: "dialog" },
666
- tasty({
667
- as: "dialog",
668
- styles: {
669
- inlineSize: "min(42rem, calc(100% - 2rem))",
670
- padding: "($gap * 2.5)",
671
- color: "#text",
672
- fill: "#surface",
673
- border: "$border-width solid #border-strong",
674
- radius: "$card-radius",
675
- shadow: "$sl-shadow-lg",
676
- Backdrop: { $: "&::backdrop", fill: "#overlay" },
677
- Form: { $: "form", float: "inline-end" },
678
- LabelAndInput: {
679
- $: "label, input",
680
- display: "block",
681
- inlineSize: "100%",
682
- },
683
- Input: {
684
- $: "input",
685
- marginBlock: "$gap ($gap * 2)",
686
- paddingInline: "($gap * 1.5)",
687
- color: "#text",
688
- border: true,
689
- radius: "$radius",
690
- fill: "#surface",
691
- },
692
- Close: {
693
- $: 'button[aria-label="Close search"]',
694
- display: "grid",
695
- placeItems: "center",
696
- inlineSize: "$control-height",
697
- padding: "0",
698
- overflow: "hidden",
699
- color: "#clear",
700
- border: true,
701
- radius: "$radius",
702
- fill: {
703
- "": "#surface-2",
704
- ":hover": "#surface-2-hover",
705
- ":active": "#surface-2-pressed",
706
- },
707
- },
708
- CloseIcon: {
709
- $: 'button[aria-label="Close search"]::before',
710
- content: '""',
711
- inlineSize: "1rem",
712
- blockSize: "1rem",
713
- color: "#text",
714
- fill: "#current",
715
- mask: `url("${svgIconUrl(closeIcon)}") center / contain no-repeat`,
716
- },
717
- },
718
- }),
719
- );
720
-
721
- export const SkipLinkRoot = customizeComponent(
722
- "SkipLink",
723
- { as: "a" },
724
- tasty({
725
- as: "a",
726
- styles: {
727
- position: "fixed",
728
- inset: "$gap auto auto $gap",
729
- zIndex: "4",
730
- translate: { "": "0 -150%", ":focus": "0" },
731
- padding: "$gap ($gap * 1.5)",
732
- color: "#accent-surface-text",
733
- radius: "$radius",
734
- fill: "#accent-surface",
735
- },
736
- }),
737
- );
738
-
739
- export const VisuallyHiddenRoot = tasty({
740
- as: "span",
741
- styles: {
742
- position: "absolute",
743
- inlineSize: "1px",
744
- blockSize: "1px",
745
- padding: "0",
746
- margin: "-1px",
747
- overflow: "hidden",
748
- clip: "rect(0, 0, 0, 0)",
749
- whiteSpace: "nowrap",
750
- border: "0",
751
- },
752
- });
@@ -28,11 +28,13 @@ const {
28
28
  >
29
29
  <rect width="64" height="64" rx="14" fill="currentColor"></rect>
30
30
  <path
31
- fill="#fff"
31
+ class="td-logo__mark"
32
+ fill="currentColor"
32
33
  d="M14.8 16c6.7.2 12.3 2 16.7 5.4v28.4c-4.4-3.1-10-4.7-16.6-4.9a3 3 0 0 1-2.9-3V19a3 3 0 0 1 2.8-3Z"
33
34
  ></path>
34
35
  <path
35
- fill="#fff"
36
+ class="td-logo__mark"
37
+ fill="currentColor"
36
38
  d="M49.2 16c-6.7.2-12.3 2-16.7 5.4v28.4c4.4-3.1 10-4.7 16.6-4.9a3 3 0 0 0 2.9-3V19a3 3 0 0 0-2.8-3Z"
37
39
  ></path>
38
40
  </svg>