Skip to content

Commit 2ea7776

Browse files
committed
fix: add base tag to allow relative links to other chapters
1 parent 44205ad commit 2ea7776

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

src/Web/BaseUriViewProcessor.php

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
namespace App\Web;
4+
5+
use App\GitHub\GetStargazersCount;
6+
use Tempest\Router\Request;
7+
use Tempest\View\View;
8+
use Tempest\View\ViewProcessor;
9+
10+
use function Tempest\Support\Str\strip_end;
11+
12+
/**
13+
* This processor is used to add a `<base>` tag without the trailing slash,
14+
* allowing the documentation to use relative links to other chapters.
15+
*/
16+
final readonly class BaseUriViewProcessor implements ViewProcessor
17+
{
18+
public function __construct(
19+
private Request $request,
20+
) {
21+
}
22+
23+
#[\Override]
24+
public function process(View $view): View
25+
{
26+
return $view->data(baseUri: strip_end($this->request->uri, suffix: '/'));
27+
}
28+
}

src/Web/x-base.view.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
<meta charset="UTF-8"/>
88
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
9+
<base :href="$baseUri">
910

1011
<!-- Current meta image -->
1112
<?php

0 commit comments

Comments
 (0)