{"version":3,"file":"leaf.mjs","sources":["../../../../../../node_modules/highlight.js/lib/languages/leaf.js"],"sourcesContent":["/*\nLanguage: Leaf\nDescription: A Swift-based templating language created for the Vapor project.\nWebsite: https://docs.vapor.codes/leaf/overview\nCategory: template\n*/\n\nfunction leaf(hljs) {\n  const IDENT = /([A-Za-z_][A-Za-z_0-9]*)?/;\n  const LITERALS = [\n    'true',\n    'false',\n    'in'\n  ];\n  const PARAMS = {\n    scope: 'params',\n    begin: /\\(/,\n    end: /\\)(?=\\:?)/,\n    endsParent: true,\n    relevance: 7,\n    contains: [\n      {\n        scope: 'string',\n        begin: '\"',\n        end: '\"'\n      },\n      {\n        scope: 'keyword',\n        match: LITERALS.join(\"|\"),\n      },\n      {\n        scope: 'variable',\n        match: /[A-Za-z_][A-Za-z_0-9]*/\n      },\n      {\n        scope: 'operator',\n        match: /\\+|\\-|\\*|\\/|\\%|\\=\\=|\\=|\\!|\\>|\\<|\\&\\&|\\|\\|/\n      }\n    ]\n  };\n  const INSIDE_DISPATCH = {\n    match: [\n      IDENT,\n      /(?=\\()/,\n    ],\n    scope: {\n      1: \"keyword\"\n    },\n    contains: [ PARAMS ]\n  };\n  PARAMS.contains.unshift(INSIDE_DISPATCH);\n  return {\n    name: 'Leaf',\n    contains: [\n      // #ident():\n      {\n        match: [\n          /#+/,\n          IDENT,\n          /(?=\\()/,\n        ],\n        scope: {\n          1: \"punctuation\",\n          2: \"keyword\"\n        },\n        // will start up after the ending `)` match from line ~44\n        // just to grab the trailing `:` if we can match it\n        starts: {\n          contains: [\n            {\n              match: /\\:/,\n              scope: \"punctuation\"\n            }\n          ]\n        },\n        contains: [\n          PARAMS\n        ],\n      },\n      // #ident or #ident:\n      {\n        match: [\n          /#+/,\n          IDENT,\n          /:?/,\n        ],\n        scope: {\n          1: \"punctuation\",\n          2: \"keyword\",\n          3: \"punctuation\"\n        }\n      },\n    ]\n  };\n}\n\nmodule.exports = leaf;\n"],"names":["leaf","hljs","IDENT","PARAMS","INSIDE_DISPATCH","leaf_1"],"mappings":";;;;AAOA,WAASA,EAAKC,GAAM;AAClB,UAAMC,IAAQ,6BAMRC,IAAS;AAAA,MACb,OAAO;AAAA,MACP,OAAO;AAAA,MACP,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,UAAU;AAAA,QACR;AAAA,UACE,OAAO;AAAA,UACP,OAAO;AAAA,UACP,KAAK;AAAA;QAEP;AAAA,UACE,OAAO;AAAA,UACP,OAnBW;AAAA,YACf;AAAA,YACA;AAAA,YACA;AAAA,UACJ,EAewB,KAAK,GAAG;AAAA;QAE1B;AAAA,UACE,OAAO;AAAA,UACP,OAAO;AAAA;QAET;AAAA,UACE,OAAO;AAAA,UACP,OAAO;AAAA;;IAGf,GACQC,IAAkB;AAAA,MACtB,OAAO;AAAA,QACLF;AAAA,QACA;AAAA;MAEF,OAAO;AAAA,QACL,GAAG;AAAA;MAEL,UAAU,CAAEC,CAAM;AAAA,IACtB;AACE,WAAAA,EAAO,SAAS,QAAQC,CAAe,GAChC;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA;AAAA,QAER;AAAA,UACE,OAAO;AAAA,YACL;AAAA,YACAF;AAAA,YACA;AAAA;UAEF,OAAO;AAAA,YACL,GAAG;AAAA,YACH,GAAG;AAAA;;;UAIL,QAAQ;AAAA,YACN,UAAU;AAAA,cACR;AAAA,gBACE,OAAO;AAAA,gBACP,OAAO;AAAA;;;UAIb,UAAU;AAAA,YACRC;AAAA;;;QAIJ;AAAA,UACE,OAAO;AAAA,YACL;AAAA,YACAD;AAAA,YACA;AAAA;UAEF,OAAO;AAAA,YACL,GAAG;AAAA,YACH,GAAG;AAAA,YACH,GAAG;AAAA;;;IAIb;AAAA,EACA;AAEA,SAAAG,IAAiBL;;","x_google_ignoreList":[0]}