1<?php
2
3namespace dokuwiki\plugin\prosemirror\parser;
4
5class LocalLinkNode extends LinkNode
6{
7
8    public function toSyntax()
9    {
10        return $this->getDefaultLinkSyntax($this->attrs['href']);
11    }
12
13    public static function render($renderer, $hash, $name)
14    {
15        global $ID;
16
17        $additionalAttributes = [
18            'data-resolvedTitle' => $ID . ' ↵',
19            'data-resolvedID' => $ID . '#' . $hash,
20            'data-resolvedName' => $hash,
21            'data-resolvedClass' => 'wikilink1',
22        ];
23
24        self::renderToJSON(
25            $renderer,
26            'internallink',
27            '#' . $hash,
28            $name,
29            $additionalAttributes
30        );
31    }
32
33    public static function resolveLocalLink($hash, $id)
34    {
35        $trimmedHash = trim($hash, '#');
36        return [
37            'id' => $id . '#' . $trimmedHash,
38            'exists' => true,
39            'heading' => $trimmedHash,
40            'title' => $id . ' ↵',
41        ];
42    }
43}
44