Welcome to mirror list, hosted at ThFree Co, Russian Federation.

pl-mode.bundle.js.map « build - github.com/nextcloud/files_texteditor.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 1576792ea14f00a5294338e2af3a1d374a5cf8e4 (plain)
1
{"version":3,"sources":["webpack:///./node_modules/brace/mode/perl.js"],"names":["ace","define","acequire","exports","module","oop","TextHighlightRules","PerlHighlightRules","keywordMapper","this","createKeywordMapper","keyword","constant.language","support.function","$rules","start","token","regex","next","qqstring","qstring","block_comment","defaultToken","inherits","Range","MatchingBraceOutdent","checkOutdent","line","input","test","autoOutdent","doc","row","match","getLine","column","length","openBracePos","findMatchingBracket","indent","$getIndent","replace","call","prototype","BaseFoldMode","FoldMode","commentRegex","foldingStartMarker","RegExp","source","foldingStopMarker","end","singleLineBlockCommentRe","tripleStarBlockCommentRe","startRegionRe","_getFoldWidgetBase","getFoldWidget","session","foldStyle","fw","getFoldWidgetRange","forceMultiline","getCommentRegionBlock","i","index","openingBracketBlock","range","getCommentFoldRange","isMultiLine","getSectionRange","closingBracketBlock","startIndent","search","startRow","startColumn","endRow","maxRow","getLength","subRange","re","depth","m","exec","TextMode","Mode","CStyleFoldMode","HighlightRules","$outdent","foldingRules","$behaviour","$defaultBehaviour","lineCommentStart","blockComment","lineStartOnly","getNextLineIndent","state","tab","tokens","getTokenizer","getLineTokens","type","$id"],"mappings":"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","file":"pl-mode.bundle.js","sourcesContent":["ace.define(\"ace/mode/perl_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextHighlightRules = acequire(\"./text_highlight_rules\").TextHighlightRules;\n\nvar PerlHighlightRules = function() {\n\n    var keywords = (\n        \"base|constant|continue|else|elsif|for|foreach|format|goto|if|last|local|my|next|\" +\n         \"no|package|parent|redo|acequire|scalar|sub|unless|until|while|use|vars\"\n    );\n\n    var buildinConstants = (\"ARGV|ENV|INC|SIG\");\n\n    var builtinFunctions = (\n        \"getprotobynumber|getprotobyname|getservbyname|gethostbyaddr|\" +\n         \"gethostbyname|getservbyport|getnetbyaddr|getnetbyname|getsockname|\" +\n         \"getpeername|setpriority|getprotoent|setprotoent|getpriority|\" +\n         \"endprotoent|getservent|setservent|endservent|sethostent|socketpair|\" +\n         \"getsockopt|gethostent|endhostent|setsockopt|setnetent|quotemeta|\" +\n         \"localtime|prototype|getnetent|endnetent|rewinddir|wantarray|getpwuid|\" +\n         \"closedir|getlogin|readlink|endgrent|getgrgid|getgrnam|shmwrite|\" +\n         \"shutdown|readline|endpwent|setgrent|readpipe|formline|truncate|\" +\n         \"dbmclose|syswrite|setpwent|getpwnam|getgrent|getpwent|ucfirst|sysread|\" +\n         \"setpgrp|shmread|sysseek|sysopen|telldir|defined|opendir|connect|\" +\n         \"lcfirst|getppid|binmode|syscall|sprintf|getpgrp|readdir|seekdir|\" +\n         \"waitpid|reverse|unshift|symlink|dbmopen|semget|msgrcv|rename|listen|\" +\n         \"chroot|msgsnd|shmctl|accept|unpack|exists|fileno|shmget|system|\" +\n         \"unlink|printf|gmtime|msgctl|semctl|values|rindex|substr|splice|\" +\n         \"length|msgget|select|socket|return|caller|delete|alarm|ioctl|index|\" +\n         \"undef|lstat|times|srand|chown|fcntl|close|write|umask|rmdir|study|\" +\n         \"sleep|chomp|untie|print|utime|mkdir|atan2|split|crypt|flock|chmod|\" +\n         \"BEGIN|bless|chdir|semop|shift|reset|link|stat|chop|grep|fork|dump|\" +\n         \"join|open|tell|pipe|exit|glob|warn|each|bind|sort|pack|eval|push|\" +\n         \"keys|getc|kill|seek|sqrt|send|wait|rand|tied|read|time|exec|recv|\" +\n         \"eof|chr|int|ord|exp|pos|pop|sin|log|abs|oct|hex|tie|cos|vec|END|ref|\" +\n         \"map|die|uc|lc|do\"\n    );\n\n    var keywordMapper = this.createKeywordMapper({\n        \"keyword\": keywords,\n        \"constant.language\": buildinConstants,\n        \"support.function\": builtinFunctions\n    }, \"identifier\");\n\n    this.$rules = {\n        \"start\" : [\n            {\n                token : \"comment.doc\",\n                regex : \"^=(?:begin|item)\\\\b\",\n                next : \"block_comment\"\n            }, {\n                token : \"string.regexp\",\n                regex : \"[/](?:(?:\\\\[(?:\\\\\\\\]|[^\\\\]])+\\\\])|(?:\\\\\\\\/|[^\\\\]/]))*[/]\\\\w*\\\\s*(?=[).,;]|$)\"\n            }, {\n                token : \"string\", // single line\n                regex : '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]'\n            }, {\n                token : \"string\", // multi line string start\n                regex : '[\"].*\\\\\\\\$',\n                next : \"qqstring\"\n            }, {\n                token : \"string\", // single line\n                regex : \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n            }, {\n                token : \"string\", // multi line string start\n                regex : \"['].*\\\\\\\\$\",\n                next : \"qstring\"\n            }, {\n                token : \"constant.numeric\", // hex\n                regex : \"0x[0-9a-fA-F]+\\\\b\"\n            }, {\n                token : \"constant.numeric\", // float\n                regex : \"[+-]?\\\\d+(?:(?:\\\\.\\\\d*)?(?:[eE][+-]?\\\\d+)?)?\\\\b\"\n            }, {\n                token : keywordMapper,\n                regex : \"[a-zA-Z_$][a-zA-Z0-9_$]*\\\\b\"\n            }, {\n                token : \"keyword.operator\",\n                regex : \"%#|\\\\$#|\\\\.\\\\.\\\\.|\\\\|\\\\|=|>>=|<<=|<=>|&&=|=>|!~|\\\\^=|&=|\\\\|=|\\\\.=|x=|%=|\\\\/=|\\\\*=|\\\\-=|\\\\+=|=~|\\\\*\\\\*|\\\\-\\\\-|\\\\.\\\\.|\\\\|\\\\||&&|\\\\+\\\\+|\\\\->|!=|==|>=|<=|>>|<<|,|=|\\\\?\\\\:|\\\\^|\\\\||x|%|\\\\/|\\\\*|<|&|\\\\\\\\|~|!|>|\\\\.|\\\\-|\\\\+|\\\\-C|\\\\-b|\\\\-S|\\\\-u|\\\\-t|\\\\-p|\\\\-l|\\\\-d|\\\\-f|\\\\-g|\\\\-s|\\\\-z|\\\\-k|\\\\-e|\\\\-O|\\\\-T|\\\\-B|\\\\-M|\\\\-A|\\\\-X|\\\\-W|\\\\-c|\\\\-R|\\\\-o|\\\\-x|\\\\-w|\\\\-r|\\\\b(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|xor)\"\n            }, {\n                token : \"comment\",\n                regex : \"#.*$\"\n            }, {\n                token : \"lparen\",\n                regex : \"[[({]\"\n            }, {\n                token : \"rparen\",\n                regex : \"[\\\\])}]\"\n            }, {\n                token : \"text\",\n                regex : \"\\\\s+\"\n            }\n        ],\n        \"qqstring\" : [\n            {\n                token : \"string\",\n                regex : '(?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?\"',\n                next : \"start\"\n            }, {\n                token : \"string\",\n                regex : '.+'\n            }\n        ],\n        \"qstring\" : [\n            {\n                token : \"string\",\n                regex : \"(?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?'\",\n                next : \"start\"\n            }, {\n                token : \"string\",\n                regex : '.+'\n            }\n        ],\n        \"block_comment\": [\n            {\n                token: \"comment.doc\", \n                regex: \"^=cut\\\\b\",\n                next: \"start\"\n            },\n            {\n                defaultToken: \"comment.doc\"\n            }\n        ]\n    };\n};\n\noop.inherits(PerlHighlightRules, TextHighlightRules);\n\nexports.PerlHighlightRules = PerlHighlightRules;\n});\n\nace.define(\"ace/mode/matching_brace_outdent\",[\"require\",\"exports\",\"module\",\"ace/range\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar Range = acequire(\"../range\").Range;\n\nvar MatchingBraceOutdent = function() {};\n\n(function() {\n\n    this.checkOutdent = function(line, input) {\n        if (! /^\\s+$/.test(line))\n            return false;\n\n        return /^\\s*\\}/.test(input);\n    };\n\n    this.autoOutdent = function(doc, row) {\n        var line = doc.getLine(row);\n        var match = line.match(/^(\\s*\\})/);\n\n        if (!match) return 0;\n\n        var column = match[1].length;\n        var openBracePos = doc.findMatchingBracket({row: row, column: column});\n\n        if (!openBracePos || openBracePos.row == row) return 0;\n\n        var indent = this.$getIndent(doc.getLine(openBracePos.row));\n        doc.replace(new Range(row, 0, row, column-1), indent);\n    };\n\n    this.$getIndent = function(line) {\n        return line.match(/^\\s*/)[0];\n    };\n\n}).call(MatchingBraceOutdent.prototype);\n\nexports.MatchingBraceOutdent = MatchingBraceOutdent;\n});\n\nace.define(\"ace/mode/folding/cstyle\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/range\",\"ace/mode/folding/fold_mode\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../../lib/oop\");\nvar Range = acequire(\"../../range\").Range;\nvar BaseFoldMode = acequire(\"./fold_mode\").FoldMode;\n\nvar FoldMode = exports.FoldMode = function(commentRegex) {\n    if (commentRegex) {\n        this.foldingStartMarker = new RegExp(\n            this.foldingStartMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.start)\n        );\n        this.foldingStopMarker = new RegExp(\n            this.foldingStopMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.end)\n        );\n    }\n};\noop.inherits(FoldMode, BaseFoldMode);\n\n(function() {\n    \n    this.foldingStartMarker = /([\\{\\[\\(])[^\\}\\]\\)]*$|^\\s*(\\/\\*)/;\n    this.foldingStopMarker = /^[^\\[\\{\\(]*([\\}\\]\\)])|^[\\s\\*]*(\\*\\/)/;\n    this.singleLineBlockCommentRe= /^\\s*(\\/\\*).*\\*\\/\\s*$/;\n    this.tripleStarBlockCommentRe = /^\\s*(\\/\\*\\*\\*).*\\*\\/\\s*$/;\n    this.startRegionRe = /^\\s*(\\/\\*|\\/\\/)#?region\\b/;\n    this._getFoldWidgetBase = this.getFoldWidget;\n    this.getFoldWidget = function(session, foldStyle, row) {\n        var line = session.getLine(row);\n    \n        if (this.singleLineBlockCommentRe.test(line)) {\n            if (!this.startRegionRe.test(line) && !this.tripleStarBlockCommentRe.test(line))\n                return \"\";\n        }\n    \n        var fw = this._getFoldWidgetBase(session, foldStyle, row);\n    \n        if (!fw && this.startRegionRe.test(line))\n            return \"start\"; // lineCommentRegionStart\n    \n        return fw;\n    };\n\n    this.getFoldWidgetRange = function(session, foldStyle, row, forceMultiline) {\n        var line = session.getLine(row);\n        \n        if (this.startRegionRe.test(line))\n            return this.getCommentRegionBlock(session, line, row);\n        \n        var match = line.match(this.foldingStartMarker);\n        if (match) {\n            var i = match.index;\n\n            if (match[1])\n                return this.openingBracketBlock(session, match[1], row, i);\n                \n            var range = session.getCommentFoldRange(row, i + match[0].length, 1);\n            \n            if (range && !range.isMultiLine()) {\n                if (forceMultiline) {\n                    range = this.getSectionRange(session, row);\n                } else if (foldStyle != \"all\")\n                    range = null;\n            }\n            \n            return range;\n        }\n\n        if (foldStyle === \"markbegin\")\n            return;\n\n        var match = line.match(this.foldingStopMarker);\n        if (match) {\n            var i = match.index + match[0].length;\n\n            if (match[1])\n                return this.closingBracketBlock(session, match[1], row, i);\n\n            return session.getCommentFoldRange(row, i, -1);\n        }\n    };\n    \n    this.getSectionRange = function(session, row) {\n        var line = session.getLine(row);\n        var startIndent = line.search(/\\S/);\n        var startRow = row;\n        var startColumn = line.length;\n        row = row + 1;\n        var endRow = row;\n        var maxRow = session.getLength();\n        while (++row < maxRow) {\n            line = session.getLine(row);\n            var indent = line.search(/\\S/);\n            if (indent === -1)\n                continue;\n            if  (startIndent > indent)\n                break;\n            var subRange = this.getFoldWidgetRange(session, \"all\", row);\n            \n            if (subRange) {\n                if (subRange.start.row <= startRow) {\n                    break;\n                } else if (subRange.isMultiLine()) {\n                    row = subRange.end.row;\n                } else if (startIndent == indent) {\n                    break;\n                }\n            }\n            endRow = row;\n        }\n        \n        return new Range(startRow, startColumn, endRow, session.getLine(endRow).length);\n    };\n    this.getCommentRegionBlock = function(session, line, row) {\n        var startColumn = line.search(/\\s*$/);\n        var maxRow = session.getLength();\n        var startRow = row;\n        \n        var re = /^\\s*(?:\\/\\*|\\/\\/|--)#?(end)?region\\b/;\n        var depth = 1;\n        while (++row < maxRow) {\n            line = session.getLine(row);\n            var m = re.exec(line);\n            if (!m) continue;\n            if (m[1]) depth--;\n            else depth++;\n\n            if (!depth) break;\n        }\n\n        var endRow = row;\n        if (endRow > startRow) {\n            return new Range(startRow, startColumn, endRow, line.length);\n        }\n    };\n\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/perl\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/perl_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/mode/folding/cstyle\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar PerlHighlightRules = acequire(\"./perl_highlight_rules\").PerlHighlightRules;\nvar MatchingBraceOutdent = acequire(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar CStyleFoldMode = acequire(\"./folding/cstyle\").FoldMode;\n\nvar Mode = function() {\n    this.HighlightRules = PerlHighlightRules;\n    \n    this.$outdent = new MatchingBraceOutdent();\n    this.foldingRules = new CStyleFoldMode({start: \"^=(begin|item)\\\\b\", end: \"^=(cut)\\\\b\"});\n    this.$behaviour = this.$defaultBehaviour;\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n    this.lineCommentStart = \"#\";\n    this.blockComment = [\n        {start: \"=begin\", end: \"=cut\", lineStartOnly: true},\n        {start: \"=item\", end: \"=cut\", lineStartOnly: true}\n    ];\n\n\n    this.getNextLineIndent = function(state, line, tab) {\n        var indent = this.$getIndent(line);\n\n        var tokenizedLine = this.getTokenizer().getLineTokens(line, state);\n        var tokens = tokenizedLine.tokens;\n\n        if (tokens.length && tokens[tokens.length-1].type == \"comment\") {\n            return indent;\n        }\n\n        if (state == \"start\") {\n            var match = line.match(/^.*[\\{\\(\\[:]\\s*$/);\n            if (match) {\n                indent += tab;\n            }\n        }\n\n        return indent;\n    };\n\n    this.checkOutdent = function(state, line, input) {\n        return this.$outdent.checkOutdent(line, input);\n    };\n\n    this.autoOutdent = function(state, doc, row) {\n        this.$outdent.autoOutdent(doc, row);\n    };\n\n    this.$id = \"ace/mode/perl\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/brace/mode/perl.js\n// module id = ./node_modules/brace/mode/perl.js\n// module chunks = 23"],"sourceRoot":""}