xref: /plugin/visualindex/parser/VisualIndexNode.php (revision 3c9c7f3beeea1dce712c368cb507b309c63f5d06)
1*3c9c7f3bSLORTET<?php
2*3c9c7f3bSLORTET
3*3c9c7f3bSLORTETnamespace dokuwiki\plugin\visualindex\parser;
4*3c9c7f3bSLORTET
5*3c9c7f3bSLORTETuse dokuwiki\plugin\prosemirror\parser\Node;
6*3c9c7f3bSLORTET
7*3c9c7f3bSLORTETclass VisualIndexNode extends Node
8*3c9c7f3bSLORTET{
9*3c9c7f3bSLORTET    protected $data;
10*3c9c7f3bSLORTET    protected $parent;
11*3c9c7f3bSLORTET
12*3c9c7f3bSLORTET    public function __construct($data, Node $parent)
13*3c9c7f3bSLORTET    {
14*3c9c7f3bSLORTET        $this->data = $data;
15*3c9c7f3bSLORTET        $this->parent = $parent;
16*3c9c7f3bSLORTET    }
17*3c9c7f3bSLORTET
18*3c9c7f3bSLORTET    public function toSyntax()
19*3c9c7f3bSLORTET    {
20*3c9c7f3bSLORTET        $attrs = $this->data['attrs'] ?? [];
21*3c9c7f3bSLORTET        $syntax = trim((string)($attrs['syntax'] ?? ''));
22*3c9c7f3bSLORTET        if ($syntax !== '') return $syntax;
23*3c9c7f3bSLORTET        return '{{visualindex>.}}';
24*3c9c7f3bSLORTET    }
25*3c9c7f3bSLORTET}
26