summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-tsx.js
blob: e6104c7ac99bbe8a635317a71cb0c5e3483fbec2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(function (Prism) {
  var typescript = Prism.util.clone(Prism.languages.typescript);
  Prism.languages.tsx = Prism.languages.extend('jsx', typescript);

  // doesn't work with TS because TS is too complex
  delete Prism.languages.tsx['parameter'];
  delete Prism.languages.tsx['literal-property'];

  // This will prevent collisions between TSX tags and TS generic types.
  // Idea by https://github.com/karlhorky
  // Discussion: https://github.com/PrismJS/prism/issues/2594#issuecomment-710666928
  var tag = Prism.languages.tsx.tag;
  tag.pattern = RegExp(
    /(^|[^\w$]|(?=<\/))/.source + '(?:' + tag.pattern.source + ')',
    tag.pattern.flags
  );
  tag.lookbehind = true;
})(Prism);
lass="p">{ pattern: RegExp(n), greedy: !0 }, i = { pattern: /(^[ \t]*)#.*/m, lookbehind: !0, greedy: !0 }; function a(e, n) { return ( (e = e .replace(/<OPT>/g, function () { return t; }) .replace(/<SP>/g, function () { return r; })), RegExp(e, n) ); } (e.languages.docker = { instruction: { pattern: /(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im, lookbehind: !0, greedy: !0, inside: { options: { pattern: a('(^(?:ONBUILD<SP>)?\\w+<SP>)<OPT>(?:<SP><OPT>)*', 'i'), lookbehind: !0, greedy: !0, inside: { property: { pattern: /(^|\s)--[\w-]+/, lookbehind: !0 }, string: [ o, { pattern: /(=)(?!["'])(?:[^\s\\]|\\.)+/, lookbehind: !0 }, ], operator: /\\$/m, punctuation: /=/, }, }, keyword: [ { pattern: a( '(^(?:ONBUILD<SP>)?HEALTHCHECK<SP>(?:<OPT><SP>)*)(?:CMD|NONE)\\b', 'i' ), lookbehind: !0, greedy: !0, }, { pattern: a( '(^(?:ONBUILD<SP>)?FROM<SP>(?:<OPT><SP>)*(?!--)[^ \t\\\\]+<SP>)AS', 'i' ), lookbehind: !0, greedy: !0, }, { pattern: a('(^ONBUILD<SP>)\\w+', 'i'), lookbehind: !0, greedy: !0 }, { pattern: /^\w+/, greedy: !0 }, ], comment: i, string: o, variable: /\$(?:\w+|\{[^{}"'\\]*\})/, operator: /\\$/m, }, }, comment: i, }), (e.languages.dockerfile = e.languages.docker); })(Prism);