403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/code-parser/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/code-parser/dist/code-parser.bundle.js.map
{"version":3,"file":"code-parser.bundle.js","sources":["../src/token-types.js","../src/merge-tokens.js","../src/code-parser.js"],"sourcesContent":["export const TokenType: Object<string, string> = {\n\tWHITESPACE: 'whitespace',\n\t// LINE_BREAK: 'line-break',\n\t// TAB: 'tab',\n\tSEMICOLON: 'semicolon',\n\tOPERATOR: 'operator',\n\tBRACE: 'brace',\n\tBRACKET: 'bracket',\n\tPARENTHESES: 'parentheses',\n\tWORD: 'word',\n\tREGEX: 'regex',\n\tSTRING_DOUBLE: 'string-double',\n\tSTRING_SINGLE: 'string-single',\n\tSTRING_TEMPLATE: 'string-template',\n\tXML_COMMENT: 'comment-xml',\n\tCOMMENT_MULTILINE: 'comment-multiline',\n\tCOMMENT_SLASH: 'comment-slash',\n\tCOMMENT_HASH: 'comment-hash',\n};\n\nexport const CommentTokenTypes: Set<string> = new Set([\n\tTokenType.XML_COMMENT,\n\tTokenType.COMMENT_MULTILINE,\n\tTokenType.COMMENT_SLASH,\n\tTokenType.COMMENT_HASH,\n]);\n\nexport const StringTokenTypes: Set<string> = new Set([\n\tTokenType.STRING_SINGLE,\n\tTokenType.STRING_DOUBLE,\n\tTokenType.STRING_TEMPLATE,\n]);\n\nexport type CodeToken = {\n\ttype: string;\n\tcontent: string;\n}\n","import { type CodeToken } from './token-types';\n\nexport const mergeTokens = (tokens: CodeToken[]): CodeToken[] => {\n\tconst result: CodeToken[] = [];\n\tlet prevToken = null;\n\ttokens.forEach((token: CodeToken) => {\n\t\t// Merge sibling words into one word token\n\t\tif (\n\t\t\t(token.type === 'whitespace' || token.type === 'word')\n\t\t\t&& prevToken !== null\n\t\t\t&& (prevToken.type === 'whitespace' || prevToken.type === 'word')\n\t\t)\n\t\t{\n\t\t\tprevToken.type = 'word';\n\t\t\tprevToken.content += token.content;\n\n\t\t\treturn;\n\t\t}\n\n\t\t// Merge operator like '===' or '++' into one token\n\t\tif (token.type === 'operator' && prevToken !== null && prevToken.type === 'operator')\n\t\t{\n\t\t\tprevToken.content += token.content;\n\n\t\t\treturn;\n\t\t}\n\n\t\tprevToken = token;\n\t\tresult.push(token);\n\t});\n\n\treturn result;\n};\n","import { mergeTokens } from './merge-tokens';\nimport { CommentTokenTypes, StringTokenTypes, TokenType, type CodeToken } from './token-types';\n\nconst WORD_REGEX = /[\\p{L}\\p{N}0-9_$]/u;\n// const NON_WHITESPACE_REGEX = /[^\\v\\f \\u00A0\\u1680\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]/;\n\nconst keywords: Set<string> = new Set([\n\t'abstract', 'alias', 'and', 'arguments', 'array', 'asm', 'assert', 'auto',\n\t'base', 'begin', 'bool', 'boolean', 'break', 'byte', 'case', 'catch',\n\t'char', 'checked', 'class', 'clone', 'compl', 'const', 'continue',\n\t'debugger', 'decimal', 'declare', 'def', 'default', 'defer', 'deinit', 'del', 'delegate',\n\t'delete', 'do', 'double', 'echo', 'elif', 'else', 'elseif', 'elsif', 'end',\n\t'ensure', 'enum', 'event', 'except', 'exec', 'explicit', 'export',\n\t'extends', 'extension', 'extern', 'fallthrough', 'false', 'final',\n\t'finally', 'fixed', 'float', 'for', 'foreach', 'friend', 'from', 'func',\n\t'function', 'global', 'goto', 'guard', 'if', 'implements', 'implicit',\n\t'import', 'include', 'include_once', 'init', 'inline', 'inout',\n\t'instanceof', 'int', 'interface', 'internal', 'is', 'lambda', 'let',\n\t'lock', 'long', 'module', 'mutable', 'namespace', 'NaN', 'native', 'new',\n\t'next', 'nil', 'none', 'not', 'null', 'object', 'operator', 'or', 'out',\n\t'override', 'package', 'params', 'pass', 'private', 'protected', 'protocol',\n\t'public', 'raise', 'readonly', 'redo', 'ref', 'register', 'repeat',\n\t'require', 'require_once', 'rescue', 'restrict', 'retry', 'return',\n\t'sbyte', 'sealed', 'self', 'short', 'signed', 'sizeof', 'static',\n\t'string', 'struct', 'subscript', 'super', 'switch', 'synchronized',\n\t'template', 'then', 'this', 'throw', 'throws', 'transient', 'true', 'try',\n\t'typealias', 'typedef', 'typeid', 'typename', 'typeof', 'unchecked',\n\t'undef', 'undefined', 'union', 'unless', 'unsigned', 'until', 'use',\n\t'using', 'var', 'virtual', 'void', 'volatile', 'wchar_t', 'when', 'where',\n\t'while', 'with', 'xor', 'yield',\n]);\n\nexport class CodeParser\n{\n\t// eslint-disable-next-line max-lines-per-function\n\tparse(text, merge = true): CodeToken[]\n\t{\n\t\tlet currentPosition = 0;\n\t\tlet nextChar = text[0];\n\t\tlet currentChar = 1;\n\t\tlet prevChar = null;\n\t\tlet beforePrevChar = null;\n\t\tlet tokenContent = '';\n\t\tlet tokenType: string = null;\n\t\tlet lastTokenType = null;\n\t\tlet isMultiChar = null;\n\t\tconst result = [];\n\n\t\tconst shouldFinalizeToken = (): boolean => {\n\t\t\tif (!currentChar)\n\t\t\t{\n\t\t\t\t// end of content\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tswitch (tokenType)\n\t\t\t{\n\t\t\t\t// case TokenType.LINE_BREAK:\n\t\t\t\t// \tif (prevChar === '\\r' && currentChar === '\\n')\n\t\t\t\t// \t{\n\t\t\t\t// \t\treturn false;\n\t\t\t\t// \t}\n\t\t\t\t//\n\t\t\t\t// \treturn true;\n\t\t\t\t// case TokenType.TAB:\n\t\t\t\t// \treturn true;\n\t\t\t\tcase TokenType.WHITESPACE:\n\t\t\t\t\treturn /\\S/.test(currentChar);\n\t\t\t\t// return NON_WHITESPACE_REGEX.test(currentChar);\n\t\t\t\tcase TokenType.OPERATOR:\n\t\t\t\tcase TokenType.SEMICOLON:\n\t\t\t\tcase TokenType.BRACKET:\n\t\t\t\tcase TokenType.BRACE:\n\t\t\t\tcase TokenType.PARENTHESES:\n\t\t\t\t\treturn true;\n\t\t\t\tcase TokenType.WORD:\n\t\t\t\t\treturn !WORD_REGEX.test(currentChar);\n\t\t\t\tcase TokenType.REGEX:\n\t\t\t\t\treturn (prevChar === '/' || prevChar === '\\n') && isMultiChar;\n\t\t\t\tcase TokenType.STRING_DOUBLE:\n\t\t\t\t\treturn prevChar === '\"' && isMultiChar;\n\t\t\t\tcase TokenType.STRING_SINGLE:\n\t\t\t\t\treturn prevChar === '\\'' && isMultiChar;\n\t\t\t\tcase TokenType.STRING_TEMPLATE:\n\t\t\t\t\treturn prevChar === '`' && isMultiChar;\n\t\t\t\tcase TokenType.XML_COMMENT:\n\t\t\t\t\treturn text[currentPosition - 4] + beforePrevChar + prevChar === '-->';\n\t\t\t\tcase TokenType.COMMENT_MULTILINE:\n\t\t\t\t\treturn beforePrevChar + prevChar === '*/';\n\t\t\t\tcase TokenType.COMMENT_SLASH:\n\t\t\t\tcase TokenType.COMMENT_HASH:\n\t\t\t\t\treturn currentChar === '\\n';\n\t\t\t\tdefault:\n\t\t\t\t\treturn false;\n\t\t\t}\n\t\t};\n\n\t\tconst getTokenType = (): string => {\n\t\t\tif (currentChar === '#')\n\t\t\t{\n\t\t\t\treturn TokenType.COMMENT_HASH;\n\t\t\t}\n\n\t\t\tif (currentChar + nextChar === '//')\n\t\t\t{\n\t\t\t\treturn TokenType.COMMENT_SLASH;\n\t\t\t}\n\n\t\t\tif (currentChar + nextChar === '/*')\n\t\t\t{\n\t\t\t\treturn TokenType.COMMENT_MULTILINE;\n\t\t\t}\n\n\t\t\tif (currentChar + nextChar + text[currentPosition + 1] + text[currentPosition + 2] === '<!--')\n\t\t\t{\n\t\t\t\treturn TokenType.XML_COMMENT;\n\t\t\t}\n\n\t\t\tif (currentChar === '`')\n\t\t\t{\n\t\t\t\treturn TokenType.STRING_TEMPLATE;\n\t\t\t}\n\n\t\t\tif (currentChar === '\\'')\n\t\t\t{\n\t\t\t\treturn TokenType.STRING_SINGLE;\n\t\t\t}\n\n\t\t\tif (currentChar === '\"')\n\t\t\t{\n\t\t\t\treturn TokenType.STRING_DOUBLE;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tcurrentChar === '/'\n\t\t\t\t&& [TokenType.WHITESPACE, TokenType.OPERATOR].includes(lastTokenType)\n\t\t\t\t&& prevChar !== '<'\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn TokenType.REGEX;\n\t\t\t}\n\n\t\t\tif (currentChar === '(' || currentChar === ')')\n\t\t\t{\n\t\t\t\treturn TokenType.PARENTHESES;\n\t\t\t}\n\n\t\t\tif (currentChar === '[' || currentChar === ']')\n\t\t\t{\n\t\t\t\treturn TokenType.BRACKET;\n\t\t\t}\n\n\t\t\tif (currentChar === '{' || currentChar === '}')\n\t\t\t{\n\t\t\t\treturn TokenType.BRACE;\n\t\t\t}\n\n\t\t\tif (WORD_REGEX.test(currentChar))\n\t\t\t{\n\t\t\t\treturn TokenType.WORD;\n\t\t\t}\n\n\t\t\t// if (currentChar === '\\n' || (currentChar === '\\r' && nextChar === '\\n'))\n\t\t\t// {\n\t\t\t// \treturn TokenType.LINE_BREAK;\n\t\t\t// }\n\t\t\t//\n\t\t\t// if (currentChar === '\\t')\n\t\t\t// {\n\t\t\t// \treturn TokenType.TAB;\n\t\t\t// }\n\n\t\t\tif (currentChar === ';')\n\t\t\t{\n\t\t\t\treturn TokenType.SEMICOLON;\n\t\t\t}\n\n\t\t\tif (/[!&*+,./:;<=>?@\\\\|~-]/.test(currentChar))\n\t\t\t{\n\t\t\t\treturn TokenType.OPERATOR;\n\t\t\t}\n\n\t\t\treturn TokenType.WHITESPACE;\n\t\t};\n\n\t\t// eslint-disable-next-line no-cond-assign\n\t\twhile ((prevChar = !CommentTokenTypes.has(tokenType) && prevChar === '\\\\' ? true : currentChar))\n\t\t{\n\t\t\tcurrentChar = nextChar;\n\t\t\tnextChar = text[++currentPosition];\n\t\t\tisMultiChar = tokenContent.length > 1;\n\n\t\t\tif (tokenType === null)\n\t\t\t{\n\t\t\t\ttokenType = getTokenType();\n\t\t\t}\n\n\t\t\tif (shouldFinalizeToken())\n\t\t\t{\n\t\t\t\tif (tokenContent)\n\t\t\t\t{\n\t\t\t\t\tresult.push({\n\t\t\t\t\t\tcontent: tokenContent,\n\t\t\t\t\t\ttype: this.#normalizeTokenType(tokenType, tokenContent),\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (tokenType !== TokenType.WHITESPACE && !CommentTokenTypes.has(tokenType))\n\t\t\t\t{\n\t\t\t\t\tlastTokenType = tokenType;\n\t\t\t\t}\n\n\t\t\t\ttokenContent = '';\n\t\t\t\ttokenType = getTokenType();\n\t\t\t}\n\n\t\t\ttokenContent += currentChar;\n\t\t\tbeforePrevChar = prevChar;\n\t\t}\n\n\t\treturn merge ? mergeTokens(result) : result;\n\t}\n\n\t#normalizeTokenType(type: string, content: string): string\n\t{\n\t\tif (CommentTokenTypes.has(type))\n\t\t{\n\t\t\treturn 'comment';\n\t\t}\n\n\t\tif (StringTokenTypes.has(type))\n\t\t{\n\t\t\treturn 'string';\n\t\t}\n\n\t\tif (type === TokenType.WORD)\n\t\t{\n\t\t\tif (keywords.has(content))\n\t\t\t{\n\t\t\t\treturn 'keyword';\n\t\t\t}\n\n\t\t\tif (/^\\d+/.test(content))\n\t\t\t{\n\t\t\t\treturn 'number';\n\t\t\t}\n\t\t}\n\n\t\treturn type;\n\t}\n}\n"],"names":["TokenType","WHITESPACE","SEMICOLON","OPERATOR","BRACE","BRACKET","PARENTHESES","WORD","REGEX","STRING_DOUBLE","STRING_SINGLE","STRING_TEMPLATE","XML_COMMENT","COMMENT_MULTILINE","COMMENT_SLASH","COMMENT_HASH","CommentTokenTypes","Set","StringTokenTypes","mergeTokens","tokens","result","prevToken","forEach","token","type","content","push","WORD_REGEX","keywords","CodeParser","parse","text","merge","currentPosition","nextChar","currentChar","prevChar","beforePrevChar","tokenContent","tokenType","lastTokenType","isMultiChar","shouldFinalizeToken","test","getTokenType","includes","has","length"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit