{"version":3,"sources":["webpack:////build/source/node_modules/highlight.js/lib/languages/yaml.js"],"names":["module","exports","hljs","LITERALS","URI_CHARACTERS","STRING","className","relevance","variants","begin","end","contains","BACKSLASH_ESCAPE","CONTAINER_STRING","inherit","TIMESTAMP","VALUE_CONTAINER","endsWithParent","excludeEnd","keywords","OBJECT","illegal","ARRAY","MODES","subLanguage","excludeBegin","UNDERSCORE_IDENT_RE","HASH_COMMENT_MODE","beginKeywords","literal","C_NUMBER_RE","match","scope","VALUE_MODES","pop","push","name","case_insensitive","aliases"],"mappings":"4CAoNAA,EAAOC,QA3MP,SAAcC,GACZ,MAAMC,EAAW,yBAGXC,EAAiB,8BA8CjBC,EAAS,CACbC,UAAW,SACXC,UAAW,EACXC,SAAU,CACR,CACEC,MAAO,IACPC,IAAK,KAEP,CAAED,MAAO,QAEXE,SAAU,CACRT,EAAKU,iBAvCkB,CACzBN,UAAW,oBACXE,SAAU,CACR,CACEC,MAAO,OACPC,IAAK,QAEP,CACED,MAAO,MACPC,IAAK,UAqCLG,EAAmBX,EAAKY,QAAQT,EAAQ,CAAEG,SAAU,CACxD,CACEC,MAAO,IACPC,IAAK,IACLC,SAAU,CACR,CACEF,MAAO,KACPF,UAAW,KAIjB,CACEE,MAAO,IACPC,IAAK,KAEP,CAAED,MAAO,mBAOLM,EAAY,CAChBT,UAAW,SACXG,MAAO,iIAGHO,EAAkB,CACtBN,IAAK,IACLO,gBAAgB,EAChBC,YAAY,EACZC,SAAUhB,EACVI,UAAW,GAEPa,EAAS,CACbX,MAAO,KACPC,IAAK,KACLC,SAAU,CAAEK,GACZK,QAAS,MACTd,UAAW,GAEPe,EAAQ,CACZb,MAAO,MACPC,IAAK,MACLC,SAAU,CAAEK,GACZK,QAAS,MACTd,UAAW,GAGPgB,EAAQ,CA3GF,CACVjB,UAAW,OACXE,SAAU,CAER,CAAEC,MAAO,qCACT,CACEA,MAAO,uCACT,CACEA,MAAO,yCAqGX,CACEH,UAAW,OACXG,MAAO,YACPF,UAAW,IAEb,CAKED,UAAW,SACXG,MAAO,iEAET,CACEA,MAAO,WACPC,IAAK,UACLc,YAAa,OACbC,cAAc,EACdP,YAAY,EACZX,UAAW,GAEb,CACED,UAAW,OACXG,MAAO,SAAWL,GAGpB,CACEE,UAAW,OACXG,MAAO,KAAOL,EAAiB,KAEjC,CACEE,UAAW,OACXG,MAAO,IAAML,GAEf,CACEE,UAAW,OACXG,MAAO,KAAOL,GAEhB,CACEE,UAAW,OACXG,MAAO,IAAMP,EAAKwB,oBAAsB,KAE1C,CACEpB,UAAW,OACXG,MAAO,MAAQP,EAAKwB,oBAAsB,KAE5C,CACEpB,UAAW,SAEXG,MAAO,aACPF,UAAW,GAEbL,EAAKyB,kBACL,CACEC,cAAezB,EACfgB,SAAU,CAAEU,QAAS1B,IAEvBY,EAGA,CACET,UAAW,SACXG,MAAOP,EAAK4B,YAAc,MAC1BvB,UAAW,GAEba,EACAE,EArJ0B,CAC1BhB,UAAW,SACXC,UAAW,EACXE,MAAO,IACPC,IAAK,IACLC,SAAU,CACR,CACEoB,MAAO,KACPC,MAAO,cACPzB,UAAW,KA8IfF,GAGI4B,EAAc,IAAKV,GAKzB,OAJAU,EAAYC,MACZD,EAAYE,KAAKtB,GACjBG,EAAgBL,SAAWsB,EAEpB,CACLG,KAAM,OACNC,kBAAkB,EAClBC,QAAS,CAAE,OACX3B,SAAUY","file":"hl-yaml.56510aab.chunk.worker.js","sourcesContent":["/*\nLanguage: YAML\nDescription: Yet Another Markdown Language\nAuthor: Stefan Wienert <stwienert@gmail.com>\nContributors: Carl Baxter <carl@cbax.tech>\nRequires: ruby.js\nWebsite: https://yaml.org\nCategory: common, config\n*/\nfunction yaml(hljs) {\n  const LITERALS = 'true false yes no null';\n\n  // YAML spec allows non-reserved URI characters in tags.\n  const URI_CHARACTERS = '[\\\\w#;/?:@&=+$,.~*\\'()[\\\\]]+';\n\n  // Define keys as starting with a word character\n  // ...containing word chars, spaces, colons, forward-slashes, hyphens and periods\n  // ...and ending with a colon followed immediately by a space, tab or newline.\n  // The YAML spec allows for much more than this, but this covers most use-cases.\n  const KEY = {\n    className: 'attr',\n    variants: [\n      // added brackets support and special char support\n      { begin: /[\\w*@][\\w*@ :()\\./-]*:(?=[ \\t]|$)/ },\n      { // double quoted keys - with brackets and special char support\n        begin: /\"[\\w*@][\\w*@ :()\\./-]*\":(?=[ \\t]|$)/ },\n      { // single quoted keys - with brackets and special char support\n        begin: /'[\\w*@][\\w*@ :()\\./-]*':(?=[ \\t]|$)/ },\n    ]\n  };\n  \n  const TEMPLATE_VARIABLES = {\n    className: 'template-variable',\n    variants: [\n      { // jinja templates Ansible\n        begin: /\\{\\{/,\n        end: /\\}\\}/\n      },\n      { // Ruby i18n\n        begin: /%\\{/,\n        end: /\\}/\n      }\n    ]\n  };\n\n  const SINGLE_QUOTE_STRING = {\n    className: 'string',\n    relevance: 0,\n    begin: /'/,\n    end: /'/,\n    contains: [\n      {\n        match: /''/,\n        scope: 'char.escape',\n        relevance: 0\n      }\n    ]\n  };\n\n  const STRING = {\n    className: 'string',\n    relevance: 0,\n    variants: [\n      {\n        begin: /\"/,\n        end: /\"/\n      },\n      { begin: /\\S+/ }\n    ],\n    contains: [\n      hljs.BACKSLASH_ESCAPE,\n      TEMPLATE_VARIABLES\n    ]\n  };\n\n  // Strings inside of value containers (objects) can't contain braces,\n  // brackets, or commas\n  const CONTAINER_STRING = hljs.inherit(STRING, { variants: [\n    {\n      begin: /'/,\n      end: /'/,\n      contains: [\n        {\n          begin: /''/,\n          relevance: 0\n        }\n      ]\n    },\n    {\n      begin: /\"/,\n      end: /\"/\n    },\n    { begin: /[^\\s,{}[\\]]+/ }\n  ] });\n\n  const DATE_RE = '[0-9]{4}(-[0-9][0-9]){0,2}';\n  const TIME_RE = '([Tt \\\\t][0-9][0-9]?(:[0-9][0-9]){2})?';\n  const FRACTION_RE = '(\\\\.[0-9]*)?';\n  const ZONE_RE = '([ \\\\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?';\n  const TIMESTAMP = {\n    className: 'number',\n    begin: '\\\\b' + DATE_RE + TIME_RE + FRACTION_RE + ZONE_RE + '\\\\b'\n  };\n\n  const VALUE_CONTAINER = {\n    end: ',',\n    endsWithParent: true,\n    excludeEnd: true,\n    keywords: LITERALS,\n    relevance: 0\n  };\n  const OBJECT = {\n    begin: /\\{/,\n    end: /\\}/,\n    contains: [ VALUE_CONTAINER ],\n    illegal: '\\\\n',\n    relevance: 0\n  };\n  const ARRAY = {\n    begin: '\\\\[',\n    end: '\\\\]',\n    contains: [ VALUE_CONTAINER ],\n    illegal: '\\\\n',\n    relevance: 0\n  };\n\n  const MODES = [\n    KEY,\n    {\n      className: 'meta',\n      begin: '^---\\\\s*$',\n      relevance: 10\n    },\n    { // multi line string\n      // Blocks start with a | or > followed by a newline\n      //\n      // Indentation of subsequent lines must be the same to\n      // be considered part of the block\n      className: 'string',\n      begin: '[\\\\|>]([1-9]?[+-])?[ ]*\\\\n( +)[^ ][^\\\\n]*\\\\n(\\\\2[^\\\\n]+\\\\n?)*'\n    },\n    { // Ruby/Rails erb\n      begin: '<%[%=-]?',\n      end: '[%-]?%>',\n      subLanguage: 'ruby',\n      excludeBegin: true,\n      excludeEnd: true,\n      relevance: 0\n    },\n    { // named tags\n      className: 'type',\n      begin: '!\\\\w+!' + URI_CHARACTERS\n    },\n    // https://yaml.org/spec/1.2/spec.html#id2784064\n    { // verbatim tags\n      className: 'type',\n      begin: '!<' + URI_CHARACTERS + \">\"\n    },\n    { // primary tags\n      className: 'type',\n      begin: '!' + URI_CHARACTERS\n    },\n    { // secondary tags\n      className: 'type',\n      begin: '!!' + URI_CHARACTERS\n    },\n    { // fragment id &ref\n      className: 'meta',\n      begin: '&' + hljs.UNDERSCORE_IDENT_RE + '$'\n    },\n    { // fragment reference *ref\n      className: 'meta',\n      begin: '\\\\*' + hljs.UNDERSCORE_IDENT_RE + '$'\n    },\n    { // array listing\n      className: 'bullet',\n      // TODO: remove |$ hack when we have proper look-ahead support\n      begin: '-(?=[ ]|$)',\n      relevance: 0\n    },\n    hljs.HASH_COMMENT_MODE,\n    {\n      beginKeywords: LITERALS,\n      keywords: { literal: LITERALS }\n    },\n    TIMESTAMP,\n    // numbers are any valid C-style number that\n    // sit isolated from other words\n    {\n      className: 'number',\n      begin: hljs.C_NUMBER_RE + '\\\\b',\n      relevance: 0\n    },\n    OBJECT,\n    ARRAY,\n    SINGLE_QUOTE_STRING,\n    STRING\n  ];\n\n  const VALUE_MODES = [ ...MODES ];\n  VALUE_MODES.pop();\n  VALUE_MODES.push(CONTAINER_STRING);\n  VALUE_CONTAINER.contains = VALUE_MODES;\n\n  return {\n    name: 'YAML',\n    case_insensitive: true,\n    aliases: [ 'yml' ],\n    contains: MODES\n  };\n}\n\nmodule.exports = yaml;\n"],"sourceRoot":""}