{"ast":null,"code":"/*\nLanguage: YAML\nDescription: Yet Another Markdown Language\nAuthor: Stefan Wienert \nContributors: Carl Baxter \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 \n {\n begin: /\\w[\\w :()\\./-]*:(?=[ \\t]|$)/\n }, {\n // double quoted keys - with brackets\n begin: /\"\\w[\\w :()\\./-]*\":(?=[ \\t]|$)/\n }, {\n // single quoted keys - with brackets\n begin: /'\\w[\\w :()\\./-]*':(?=[ \\t]|$)/\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 const STRING = {\n className: 'string',\n relevance: 0,\n variants: [{\n begin: /'/,\n end: /'/\n }, {\n begin: /\"/,\n end: /\"/\n }, {\n begin: /\\S+/\n }],\n contains: [hljs.BACKSLASH_ESCAPE, TEMPLATE_VARIABLES]\n };\n\n // Strings inside of value containers (objects) can't contain braces,\n // brackets, or commas\n const CONTAINER_STRING = hljs.inherit(STRING, {\n variants: [{\n begin: /'/,\n end: /'/\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 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 const MODES = [KEY, {\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 {\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 }, hljs.HASH_COMMENT_MODE, {\n beginKeywords: LITERALS,\n keywords: {\n 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 }, OBJECT, ARRAY, STRING];\n const VALUE_MODES = [...MODES];\n VALUE_MODES.pop();\n VALUE_MODES.push(CONTAINER_STRING);\n VALUE_CONTAINER.contains = VALUE_MODES;\n return {\n name: 'YAML',\n case_insensitive: true,\n aliases: ['yml'],\n contains: MODES\n };\n}\nmodule.exports = yaml;","map":{"version":3,"names":["yaml","hljs","LITERALS","URI_CHARACTERS","KEY","className","variants","begin","TEMPLATE_VARIABLES","end","STRING","relevance","contains","BACKSLASH_ESCAPE","CONTAINER_STRING","inherit","DATE_RE","TIME_RE","FRACTION_RE","ZONE_RE","TIMESTAMP","VALUE_CONTAINER","endsWithParent","excludeEnd","keywords","OBJECT","illegal","ARRAY","MODES","subLanguage","excludeBegin","UNDERSCORE_IDENT_RE","HASH_COMMENT_MODE","beginKeywords","literal","C_NUMBER_RE","VALUE_MODES","pop","push","name","case_insensitive","aliases","module","exports"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/highlight.js/lib/languages/yaml.js"],"sourcesContent":["/*\nLanguage: YAML\nDescription: Yet Another Markdown Language\nAuthor: Stefan Wienert \nContributors: Carl Baxter \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 \n { begin: /\\w[\\w :()\\./-]*:(?=[ \\t]|$)/ },\n { // double quoted keys - with brackets\n begin: /\"\\w[\\w :()\\./-]*\":(?=[ \\t]|$)/ },\n { // single quoted keys - with brackets\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 const STRING = {\n className: 'string',\n relevance: 0,\n variants: [\n {\n begin: /'/,\n end: /'/\n },\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 },\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 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"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}