aboutsummaryrefslogtreecommitdiffstats
path: root/public/prism/prism-xeora.min.js
blob: 30989f10ff117e7affb8564cf9cb506be3aca36b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
!(function (n) {
  (n.languages.xeora = n.languages.extend('markup', {
    constant: {
      pattern: /\$(?:DomainContents|PageRenderDuration)\$/,
      inside: { punctuation: { pattern: /\$/ } },
    },
    variable: {
      pattern: /\$@?(?:#+|[-+*~=^])?[\w.]+\$/,
      inside: {
        punctuation: { pattern: /[$.]/ },
        operator: { pattern: /#+|[-+*~=^@]/ },
      },
    },
    'function-inline': {
      pattern:
        /\$F:[-\w.]+\?[-\w.]+(?:,(?:(?:@[-#]*\w+\.[\w+.]\.*)*\|)*(?:(?:[\w+]|[-#*.~^]+[\w+]|=\S)(?:[^$=]|=+[^=])*=*|(?:@[-#]*\w+\.[\w+.]\.*)+(?:(?:[\w+]|[-#*~^][-#*.~^]*[\w+]|=\S)(?:[^$=]|=+[^=])*=*)?)?)?\$/,
      inside: {
        variable: {
          pattern: /(?:[,|])@?(?:#+|[-+*~=^])?[\w.]+/,
          inside: {
            punctuation: { pattern: /[,.|]/ },
            operator: { pattern: /#+|[-+*~=^@]/ },
          },
        },
        punctuation: { pattern: /\$\w:|[$:?.,|]/ },
      },
      alias: 'function',
    },
    'function-block': {
      pattern:
        /\$XF:\{[-\w.]+\?[-\w.]+(?:,(?:(?:@[-#]*\w+\.[\w+.]\.*)*\|)*(?:(?:[\w+]|[-#*.~^]+[\w+]|=\S)(?:[^$=]|=+[^=])*=*|(?:@[-#]*\w+\.[\w+.]\.*)+(?:(?:[\w+]|[-#*~^][-#*.~^]*[\w+]|=\S)(?:[^$=]|=+[^=])*=*)?)?)?\}:XF\$/,
      inside: { punctuation: { pattern: /[$:{}?.,|]/ } },
      alias: 'function',
    },
    'directive-inline': {
      pattern: /\$\w(?:#\d+\+?)?(?:\[[-\w.]+\])?:[-\/\w.]+\$/,
      inside: {
        punctuation: {
          pattern: /\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,
          inside: { tag: { pattern: /#\d/ } },
        },
      },
      alias: 'function',
    },
    'directive-block-open': {
      pattern:
        /\$\w+:\{|\$\w(?:#\d+\+?)?(?:\[[-\w.]+\])?:[-\w.]+:\{(?:![A-Z]+)?/,
      inside: {
        punctuation: {
          pattern: /\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,
          inside: { tag: { pattern: /#\d/ } },
        },
        attribute: {
          pattern: /![A-Z]+$/,
          inside: { punctuation: { pattern: /!/ } },
          alias: 'keyword',
        },
      },
      alias: 'function',
    },
    'directive-block-separator': {
      pattern: /\}:[-\w.]+:\{/,
      inside: { punctuation: { pattern: /[:{}]/ } },
      alias: 'function',
    },
    'directive-block-close': {
      pattern: /\}:[-\w.]+\$/,
      inside: { punctuation: { pattern: /[:{}$]/ } },
      alias: 'function',
    },
  })),
    n.languages.insertBefore(
      'inside',
      'punctuation',
      { variable: n.languages.xeora['function-inline'].inside.variable },
      n.languages.xeora['function-block']
    ),
    (n.languages.xeoracube = n.languages.xeora);
})(Prism);