web-interface.assets.93b5186e225380c3e006a764ad08c7f6.js.map Maven / Gradle / Ivy
{"version":3,"sources":["webpack://graylog-web-interface/93b5186e225380c3e006a764ad08c7f6.js"],"sourcesContent":["ace.define(\"ace/occur\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/search\",\"ace/edit_session\",\"ace/search_highlight\",\"ace/lib/dom\"], function(require, exports, module){\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar oop = require(\"./lib/oop\");\nvar Search = require(\"./search\").Search;\nvar EditSession = require(\"./edit_session\").EditSession;\nvar SearchHighlight = require(\"./search_highlight\").SearchHighlight;\nvar Occur = /** @class */ (function (_super) {\n __extends(Occur, _super);\n function Occur() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Occur.prototype.enter = function (editor, options) {\n if (!options.needle)\n return false;\n var pos = editor.getCursorPosition();\n this.displayOccurContent(editor, options);\n var translatedPos = this.originalToOccurPosition(editor.session, pos);\n editor.moveCursorToPosition(translatedPos);\n return true;\n };\n Occur.prototype.exit = function (editor, options) {\n var pos = options.translatePosition && editor.getCursorPosition();\n var translatedPos = pos && this.occurToOriginalPosition(editor.session, pos);\n this.displayOriginalContent(editor);\n if (translatedPos)\n editor.moveCursorToPosition(translatedPos);\n return true;\n };\n Occur.prototype.highlight = function (sess, regexp) {\n var hl = sess.$occurHighlight = sess.$occurHighlight || sess.addDynamicMarker(new SearchHighlight(null, \"ace_occur-highlight\", \"text\"));\n hl.setRegexp(regexp);\n sess._emit(\"changeBackMarker\"); // force highlight layer redraw\n };\n Occur.prototype.displayOccurContent = function (editor, options) {\n this.$originalSession = editor.session;\n var found = this.matchingLines(editor.session, options);\n var lines = found.map(function (foundLine) { return foundLine.content; });\n var occurSession = new EditSession(lines.join('\\n'));\n occurSession.$occur = this;\n occurSession.$occurMatchingLines = found;\n editor.setSession(occurSession);\n this.$useEmacsStyleLineStart = this.$originalSession.$useEmacsStyleLineStart;\n occurSession.$useEmacsStyleLineStart = this.$useEmacsStyleLineStart;\n this.highlight(occurSession, options.re);\n occurSession._emit('changeBackMarker');\n };\n Occur.prototype.displayOriginalContent = function (editor) {\n editor.setSession(this.$originalSession);\n this.$originalSession.$useEmacsStyleLineStart = this.$useEmacsStyleLineStart;\n };\n Occur.prototype.originalToOccurPosition = function (session, pos) {\n var lines = session.$occurMatchingLines;\n var nullPos = { row: 0, column: 0 };\n if (!lines)\n return nullPos;\n for (var i = 0; i < lines.length; i++) {\n if (lines[i].row === pos.row)\n return { row: i, column: pos.column };\n }\n return nullPos;\n };\n Occur.prototype.occurToOriginalPosition = function (session, pos) {\n var lines = session.$occurMatchingLines;\n if (!lines || !lines[pos.row])\n return pos;\n return { row: lines[pos.row].row, column: pos.column };\n };\n Occur.prototype.matchingLines = function (session, options) {\n options = oop.mixin({}, options);\n if (!session || !options.needle)\n return [];\n var search = new Search();\n search.set(options);\n return search.findAll(session).reduce(function (lines, range) {\n var row = range.start.row;\n var last = lines[lines.length - 1];\n return last && last.row === row ?\n lines :\n lines.concat({ row: row, content: session.getLine(row) });\n }, []);\n };\n return Occur;\n}(Search));\nvar dom = require('./lib/dom');\ndom.importCssString(\".ace_occur-highlight {\\n\\\n border-radius: 4px;\\n\\\n background-color: rgba(87, 255, 8, 0.25);\\n\\\n position: absolute;\\n\\\n z-index: 4;\\n\\\n box-sizing: border-box;\\n\\\n box-shadow: 0 0 4px rgb(91, 255, 50);\\n\\\n}\\n\\\n.ace_dark .ace_occur-highlight {\\n\\\n background-color: rgb(80, 140, 85);\\n\\\n box-shadow: 0 0 4px rgb(60, 120, 70);\\n\\\n}\\n\", \"incremental-occur-highlighting\", false);\nexports.Occur = Occur;\n\n});\n\nace.define(\"ace/commands/occur_commands\",[\"require\",\"exports\",\"module\",\"ace/config\",\"ace/occur\",\"ace/keyboard/hash_handler\",\"ace/lib/oop\"], function(require, exports, module){var config = require(\"../config\"), Occur = require(\"../occur\").Occur;\nvar occurStartCommand = {\n name: \"occur\",\n exec: function (editor, options) {\n var alreadyInOccur = !!editor.session.$occur;\n var occurSessionActive = new Occur().enter(editor, options);\n if (occurSessionActive && !alreadyInOccur)\n OccurKeyboardHandler.installIn(editor);\n },\n readOnly: true\n};\nvar occurCommands = [{\n name: \"occurexit\",\n bindKey: 'esc|Ctrl-G',\n exec: function (editor) {\n var occur = editor.session.$occur;\n if (!occur)\n return;\n occur.exit(editor, {});\n if (!editor.session.$occur)\n OccurKeyboardHandler.uninstallFrom(editor);\n },\n readOnly: true\n }, {\n name: \"occuraccept\",\n bindKey: 'enter',\n exec: function (editor) {\n var occur = editor.session.$occur;\n if (!occur)\n return;\n occur.exit(editor, { translatePosition: true });\n if (!editor.session.$occur)\n OccurKeyboardHandler.uninstallFrom(editor);\n },\n readOnly: true\n }];\nvar HashHandler = require(\"../keyboard/hash_handler\").HashHandler;\nvar oop = require(\"../lib/oop\");\nfunction OccurKeyboardHandler() { }\noop.inherits(OccurKeyboardHandler, HashHandler);\n(function () {\n this.isOccurHandler = true;\n this.attach = function (editor) {\n HashHandler.call(this, occurCommands, editor.commands.platform);\n this.$editor = editor;\n };\n var handleKeyboard$super = this.handleKeyboard;\n this.handleKeyboard = function (data, hashId, key, keyCode) {\n var cmd = handleKeyboard$super.call(this, data, hashId, key, keyCode);\n return (cmd && cmd.command) ? cmd : undefined;\n };\n}).call(OccurKeyboardHandler.prototype);\nOccurKeyboardHandler.installIn = function (editor) {\n var handler = new this();\n editor.keyBinding.addKeyboardHandler(handler);\n editor.commands.addCommands(occurCommands);\n};\nOccurKeyboardHandler.uninstallFrom = function (editor) {\n editor.commands.removeCommands(occurCommands);\n var handler = editor.getKeyboardHandler();\n if (handler.isOccurHandler)\n editor.keyBinding.removeKeyboardHandler(handler);\n};\nexports.occurStartCommand = occurStartCommand;\n\n});\n\nace.define(\"ace/commands/incremental_search_commands\",[\"require\",\"exports\",\"module\",\"ace/config\",\"ace/lib/oop\",\"ace/keyboard/hash_handler\",\"ace/commands/occur_commands\"], function(require, exports, module){var config = require(\"../config\");\nvar oop = require(\"../lib/oop\");\nvar HashHandler = require(\"../keyboard/hash_handler\").HashHandler;\nvar occurStartCommand = require(\"./occur_commands\").occurStartCommand;\nexports.iSearchStartCommands = [{\n name: \"iSearch\",\n bindKey: { win: \"Ctrl-F\", mac: \"Command-F\" },\n exec: function (editor, options) {\n config.loadModule([\"core\", \"ace/incremental_search\"], function (e) {\n var iSearch = e.iSearch = e.iSearch || new e.IncrementalSearch();\n iSearch.activate(editor, options.backwards);\n if (options.jumpToFirstMatch)\n iSearch.next(options);\n });\n },\n readOnly: true\n }, {\n name: \"iSearchBackwards\",\n exec: function (editor, jumpToNext) { editor.execCommand('iSearch', { backwards: true }); },\n readOnly: true\n }, {\n name: \"iSearchAndGo\",\n bindKey: { win: \"Ctrl-K\", mac: \"Command-G\" },\n exec: function (editor, jumpToNext) { editor.execCommand('iSearch', { jumpToFirstMatch: true, useCurrentOrPrevSearch: true }); },\n readOnly: true\n }, {\n name: \"iSearchBackwardsAndGo\",\n bindKey: { win: \"Ctrl-Shift-K\", mac: \"Command-Shift-G\" },\n exec: function (editor) { editor.execCommand('iSearch', { jumpToFirstMatch: true, backwards: true, useCurrentOrPrevSearch: true }); },\n readOnly: true\n }];\nexports.iSearchCommands = [{\n name: \"restartSearch\",\n bindKey: { win: \"Ctrl-F\", mac: \"Command-F\" },\n exec: function (iSearch) {\n iSearch.cancelSearch(true);\n }\n }, {\n name: \"searchForward\",\n bindKey: { win: \"Ctrl-S|Ctrl-K\", mac: \"Ctrl-S|Command-G\" },\n exec: function (iSearch, options) {\n options.useCurrentOrPrevSearch = true;\n iSearch.next(options);\n }\n }, {\n name: \"searchBackward\",\n bindKey: { win: \"Ctrl-R|Ctrl-Shift-K\", mac: \"Ctrl-R|Command-Shift-G\" },\n exec: function (iSearch, options) {\n options.useCurrentOrPrevSearch = true;\n options.backwards = true;\n iSearch.next(options);\n }\n }, {\n name: \"extendSearchTerm\",\n exec: function (iSearch, string) {\n iSearch.addString(string);\n }\n }, {\n name: \"extendSearchTermSpace\",\n bindKey: \"space\",\n exec: function (iSearch) { iSearch.addString(' '); }\n }, {\n name: \"shrinkSearchTerm\",\n bindKey: \"backspace\",\n exec: function (iSearch) {\n iSearch.removeChar();\n }\n }, {\n name: 'confirmSearch',\n bindKey: 'return',\n exec: function (iSearch) { iSearch.deactivate(); }\n }, {\n name: 'cancelSearch',\n bindKey: 'esc|Ctrl-G',\n exec: function (iSearch) { iSearch.deactivate(true); }\n }, {\n name: 'occurisearch',\n bindKey: 'Ctrl-O',\n exec: function (iSearch) {\n var options = oop.mixin({}, iSearch.$options);\n iSearch.deactivate();\n occurStartCommand.exec(iSearch.$editor, options);\n }\n }, {\n name: \"yankNextWord\",\n bindKey: \"Ctrl-w\",\n exec: function (iSearch) {\n var ed = iSearch.$editor, range = ed.selection.getRangeOfMovements(function (sel) { sel.moveCursorWordRight(); }), string = ed.session.getTextRange(range);\n iSearch.addString(string);\n }\n }, {\n name: \"yankNextChar\",\n bindKey: \"Ctrl-Alt-y\",\n exec: function (iSearch) {\n var ed = iSearch.$editor, range = ed.selection.getRangeOfMovements(function (sel) { sel.moveCursorRight(); }), string = ed.session.getTextRange(range);\n iSearch.addString(string);\n }\n }, {\n name: 'recenterTopBottom',\n bindKey: 'Ctrl-l',\n exec: function (iSearch) { iSearch.$editor.execCommand('recenterTopBottom'); }\n }, {\n name: 'selectAllMatches',\n bindKey: 'Ctrl-space',\n exec: function (iSearch) {\n var ed = iSearch.$editor, hl = ed.session.$isearchHighlight, ranges = hl && hl.cache ? hl.cache\n .reduce(function (ranges, ea) {\n return ranges.concat(ea ? ea : []);\n }, []) : [];\n iSearch.deactivate(false);\n ranges.forEach(ed.selection.addRange.bind(ed.selection));\n }\n }, {\n name: 'searchAsRegExp',\n bindKey: 'Alt-r',\n exec: function (iSearch) {\n iSearch.convertNeedleToRegExp();\n }\n }].map(function (cmd) {\n cmd.readOnly = true;\n cmd.isIncrementalSearchCommand = true;\n cmd.scrollIntoView = \"animate-cursor\";\n return cmd;\n});\nfunction IncrementalSearchKeyboardHandler(iSearch) {\n this.$iSearch = iSearch;\n}\noop.inherits(IncrementalSearchKeyboardHandler, HashHandler);\n(function () {\n this.attach = function (editor) {\n var iSearch = this.$iSearch;\n HashHandler.call(this, exports.iSearchCommands, editor.commands.platform);\n this.$commandExecHandler = editor.commands.on('exec', function (e) {\n if (!e.command.isIncrementalSearchCommand)\n return iSearch.deactivate();\n e.stopPropagation();\n e.preventDefault();\n var scrollTop = editor.session.getScrollTop();\n var result = e.command.exec(iSearch, e.args || {});\n editor.renderer.scrollCursorIntoView(null, 0.5);\n editor.renderer.animateScrolling(scrollTop);\n return result;\n });\n };\n this.detach = function (editor) {\n if (!this.$commandExecHandler)\n return;\n editor.commands.off('exec', this.$commandExecHandler);\n delete this.$commandExecHandler;\n };\n var handleKeyboard$super = this.handleKeyboard;\n this.handleKeyboard = function (data, hashId, key, keyCode) {\n if (((hashId === 1 /*ctrl*/ || hashId === 8 /*command*/) && key === 'v')\n || (hashId === 1 /*ctrl*/ && key === 'y'))\n return null;\n var cmd = handleKeyboard$super.call(this, data, hashId, key, keyCode);\n if (cmd && cmd.command) {\n return cmd;\n }\n if (hashId == -1) {\n var extendCmd = this.commands.extendSearchTerm;\n if (extendCmd) {\n return { command: extendCmd, args: key };\n }\n }\n return false;\n };\n}).call(IncrementalSearchKeyboardHandler.prototype);\nexports.IncrementalSearchKeyboardHandler = IncrementalSearchKeyboardHandler;\n\n});\n\nace.define(\"ace/incremental_search\",[\"require\",\"exports\",\"module\",\"ace/range\",\"ace/search\",\"ace/search_highlight\",\"ace/commands/incremental_search_commands\",\"ace/lib/dom\",\"ace/commands/command_manager\",\"ace/editor\",\"ace/config\"], function(require, exports, module){\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar Range = require(\"./range\").Range;\nvar Search = require(\"./search\").Search;\nvar SearchHighlight = require(\"./search_highlight\").SearchHighlight;\nvar iSearchCommandModule = require(\"./commands/incremental_search_commands\");\nvar ISearchKbd = iSearchCommandModule.IncrementalSearchKeyboardHandler;\nfunction isRegExp(obj) {\n return obj instanceof RegExp;\n}\nfunction regExpToObject(re) {\n var string = String(re), start = string.indexOf('/'), flagStart = string.lastIndexOf('/');\n return {\n expression: string.slice(start + 1, flagStart),\n flags: string.slice(flagStart + 1)\n };\n}\nfunction stringToRegExp(string, flags) {\n try {\n return new RegExp(string, flags);\n }\n catch (e) {\n return string;\n }\n}\nfunction objectToRegExp(obj) {\n return stringToRegExp(obj.expression, obj.flags);\n}\nvar IncrementalSearch = /** @class */ (function (_super) {\n __extends(IncrementalSearch, _super);\n function IncrementalSearch() {\n var _this = _super.call(this) || this;\n _this.$options = { wrap: false, skipCurrent: false };\n _this.$keyboardHandler = new ISearchKbd(_this);\n return _this;\n }\n IncrementalSearch.prototype.activate = function (editor, backwards) {\n this.$editor = editor;\n this.$startPos = this.$currentPos = editor.getCursorPosition();\n this.$options.needle = '';\n this.$options.backwards = backwards;\n editor.keyBinding.addKeyboardHandler(this.$keyboardHandler);\n this.$originalEditorOnPaste = editor.onPaste;\n editor.onPaste = this.onPaste.bind(this);\n this.$mousedownHandler = editor.on('mousedown', this.onMouseDown.bind(this));\n this.selectionFix(editor);\n this.statusMessage(true);\n };\n IncrementalSearch.prototype.deactivate = function (reset) {\n this.cancelSearch(reset);\n var editor = this.$editor;\n editor.keyBinding.removeKeyboardHandler(this.$keyboardHandler);\n if (this.$mousedownHandler) {\n editor.off('mousedown', this.$mousedownHandler);\n delete this.$mousedownHandler;\n }\n editor.onPaste = this.$originalEditorOnPaste;\n this.message('');\n };\n IncrementalSearch.prototype.selectionFix = function (editor) {\n if (editor.selection.isEmpty() && !editor.session.$emacsMark) {\n editor.clearSelection();\n }\n };\n IncrementalSearch.prototype.highlight = function (regexp) {\n var sess = this.$editor.session, hl = sess.$isearchHighlight = sess.$isearchHighlight || sess.addDynamicMarker(new SearchHighlight(null, \"ace_isearch-result\", \"text\"));\n hl.setRegexp(regexp);\n sess._emit(\"changeBackMarker\"); // force highlight layer redraw\n };\n IncrementalSearch.prototype.cancelSearch = function (reset) {\n var e = this.$editor;\n this.$prevNeedle = this.$options.needle;\n this.$options.needle = '';\n if (reset) {\n e.moveCursorToPosition(this.$startPos);\n this.$currentPos = this.$startPos;\n }\n else {\n e.pushEmacsMark && e.pushEmacsMark(this.$startPos, false);\n }\n this.highlight(null);\n return Range.fromPoints(this.$currentPos, this.$currentPos);\n };\n IncrementalSearch.prototype.highlightAndFindWithNeedle = function (moveToNext, needleUpdateFunc) {\n if (!this.$editor)\n return null;\n var options = this.$options;\n if (needleUpdateFunc) {\n options.needle = needleUpdateFunc.call(this, options.needle || '') || '';\n }\n if (options.needle.length === 0) {\n this.statusMessage(true);\n return this.cancelSearch(true);\n }\n options.start = this.$currentPos;\n var session = this.$editor.session, found = this.find(session), shouldSelect = this.$editor.emacsMark ?\n !!this.$editor.emacsMark() : !this.$editor.selection.isEmpty();\n if (found) {\n if (options.backwards)\n found = Range.fromPoints(found.end, found.start);\n this.$editor.selection.setRange(Range.fromPoints(shouldSelect ? this.$startPos : found.end, found.end));\n if (moveToNext)\n this.$currentPos = found.end;\n this.highlight(options.re);\n }\n this.statusMessage(found);\n return found;\n };\n IncrementalSearch.prototype.addString = function (s) {\n return this.highlightAndFindWithNeedle(false, function (needle) {\n if (!isRegExp(needle))\n return needle + s;\n var reObj = regExpToObject(needle);\n reObj.expression += s;\n return objectToRegExp(reObj);\n });\n };\n IncrementalSearch.prototype.removeChar = function (c) {\n return this.highlightAndFindWithNeedle(false, function (needle) {\n if (!isRegExp(needle))\n return needle.substring(0, needle.length - 1);\n var reObj = regExpToObject(needle);\n reObj.expression = reObj.expression.substring(0, reObj.expression.length - 1);\n return objectToRegExp(reObj);\n });\n };\n IncrementalSearch.prototype.next = function (options) {\n options = options || {};\n this.$options.backwards = !!options.backwards;\n this.$currentPos = this.$editor.getCursorPosition();\n return this.highlightAndFindWithNeedle(true, function (needle) {\n return options.useCurrentOrPrevSearch && needle.length === 0 ?\n this.$prevNeedle || '' : needle;\n });\n };\n IncrementalSearch.prototype.onMouseDown = function (evt) {\n this.deactivate();\n return true;\n };\n IncrementalSearch.prototype.onPaste = function (text) {\n this.addString(text);\n };\n IncrementalSearch.prototype.convertNeedleToRegExp = function () {\n return this.highlightAndFindWithNeedle(false, function (needle) {\n return isRegExp(needle) ? needle : stringToRegExp(needle, 'ig');\n });\n };\n IncrementalSearch.prototype.convertNeedleToString = function () {\n return this.highlightAndFindWithNeedle(false, function (needle) {\n return isRegExp(needle) ? regExpToObject(needle).expression : needle;\n });\n };\n IncrementalSearch.prototype.statusMessage = function (found) {\n var options = this.$options, msg = '';\n msg += options.backwards ? 'reverse-' : '';\n msg += 'isearch: ' + options.needle;\n msg += found ? '' : ' (not found)';\n this.message(msg);\n };\n IncrementalSearch.prototype.message = function (msg) {\n if (this.$editor.showCommandLine) {\n this.$editor.showCommandLine(msg);\n this.$editor.focus();\n }\n };\n return IncrementalSearch;\n}(Search));\nexports.IncrementalSearch = IncrementalSearch;\nvar dom = require('./lib/dom');\ndom.importCssString(\"\\n.ace_marker-layer .ace_isearch-result {\\n position: absolute;\\n z-index: 6;\\n box-sizing: border-box;\\n}\\ndiv.ace_isearch-result {\\n border-radius: 4px;\\n background-color: rgba(255, 200, 0, 0.5);\\n box-shadow: 0 0 4px rgb(255, 200, 0);\\n}\\n.ace_dark div.ace_isearch-result {\\n background-color: rgb(100, 110, 160);\\n box-shadow: 0 0 4px rgb(80, 90, 140);\\n}\", \"incremental-search-highlighting\", false);\nvar commands = require(\"./commands/command_manager\");\n(function () {\n this.setupIncrementalSearch = function (editor, val) {\n if (this.usesIncrementalSearch == val)\n return;\n this.usesIncrementalSearch = val;\n var iSearchCommands = iSearchCommandModule.iSearchStartCommands;\n var method = val ? 'addCommands' : 'removeCommands';\n this[method](iSearchCommands);\n };\n}).call(commands.CommandManager.prototype);\nvar Editor = require(\"./editor\").Editor;\nrequire(\"./config\").defineOptions(Editor.prototype, \"editor\", {\n useIncrementalSearch: {\n set: function (val) {\n this.keyBinding.$handlers.forEach(function (handler) {\n if (handler.setupIncrementalSearch) {\n handler.setupIncrementalSearch(this, val);\n }\n });\n this._emit('incrementalSearchSettingChanged', { isEnabled: val });\n }\n }\n});\n\n});\n\nace.define(\"ace/keyboard/emacs\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\",\"ace/incremental_search\",\"ace/commands/incremental_search_commands\",\"ace/keyboard/hash_handler\",\"ace/lib/keys\"], function(require, exports, module){\"use strict\";\nvar dom = require(\"../lib/dom\");\nrequire(\"../incremental_search\");\nvar iSearchCommandModule = require(\"../commands/incremental_search_commands\");\nvar HashHandler = require(\"./hash_handler\").HashHandler;\nexports.handler = new HashHandler();\nexports.handler.isEmacs = true;\nexports.handler.$id = \"ace/keyboard/emacs\";\ndom.importCssString(\"\\n.emacs-mode .ace_cursor{\\n border: 1px rgba(50,250,50,0.8) solid!important;\\n box-sizing: border-box!important;\\n background-color: rgba(0,250,0,0.9);\\n opacity: 0.5;\\n}\\n.emacs-mode .ace_hidden-cursors .ace_cursor{\\n opacity: 1;\\n background-color: transparent;\\n}\\n.emacs-mode .ace_overwrite-cursors .ace_cursor {\\n opacity: 1;\\n background-color: transparent;\\n border-width: 0 0 2px 2px !important;\\n}\\n.emacs-mode .ace_text-layer {\\n z-index: 4\\n}\\n.emacs-mode .ace_cursor-layer {\\n z-index: 2\\n}\", 'emacsMode');\nvar $formerLongWords;\nvar $formerLineStart;\nexports.handler.attach = function (editor) {\n $formerLongWords = editor.session.$selectLongWords;\n editor.session.$selectLongWords = true;\n $formerLineStart = editor.session.$useEmacsStyleLineStart;\n editor.session.$useEmacsStyleLineStart = true;\n editor.session.$emacsMark = null; // the active mark\n editor.session.$emacsMarkRing = editor.session.$emacsMarkRing || [];\n editor.emacsMark = function () {\n return this.session.$emacsMark;\n };\n editor.setEmacsMark = function (p) {\n this.session.$emacsMark = p;\n };\n editor.pushEmacsMark = function (p, activate) {\n var prevMark = this.session.$emacsMark;\n if (prevMark)\n this.session.$emacsMarkRing.push(prevMark);\n if (!p || activate)\n this.setEmacsMark(p);\n else\n this.session.$emacsMarkRing.push(p);\n };\n editor.popEmacsMark = function () {\n var mark = this.emacsMark();\n if (mark) {\n this.setEmacsMark(null);\n return mark;\n }\n return this.session.$emacsMarkRing.pop();\n };\n editor.getLastEmacsMark = function (p) {\n return this.session.$emacsMark || this.session.$emacsMarkRing.slice(-1)[0];\n };\n editor.emacsMarkForSelection = function (replacement) {\n var sel = this.selection, multiRangeLength = this.multiSelect ?\n this.multiSelect.getAllRanges().length : 1, selIndex = sel.index || 0, markRing = this.session.$emacsMarkRing, markIndex = markRing.length - (multiRangeLength - selIndex), lastMark = markRing[markIndex] || sel.anchor;\n if (replacement) {\n markRing.splice(markIndex, 1, \"row\" in replacement && \"column\" in replacement ?\n replacement : undefined);\n }\n return lastMark;\n };\n editor.on(\"click\", $resetMarkMode);\n editor.on(\"changeSession\", $kbSessionChange);\n editor.renderer.$blockCursor = true;\n editor.setStyle(\"emacs-mode\");\n editor.commands.addCommands(commands);\n exports.handler.platform = editor.commands.platform;\n editor.$emacsModeHandler = this;\n editor.on('copy', this.onCopy);\n editor.on('paste', this.onPaste);\n};\nexports.handler.detach = function (editor) {\n editor.renderer.$blockCursor = false;\n editor.session.$selectLongWords = $formerLongWords;\n editor.session.$useEmacsStyleLineStart = $formerLineStart;\n editor.off(\"click\", $resetMarkMode);\n editor.off(\"changeSession\", $kbSessionChange);\n editor.unsetStyle(\"emacs-mode\");\n editor.commands.removeCommands(commands);\n editor.off('copy', this.onCopy);\n editor.off('paste', this.onPaste);\n editor.$emacsModeHandler = null;\n};\nvar $kbSessionChange = function (e) {\n if (e.oldSession) {\n e.oldSession.$selectLongWords = $formerLongWords;\n e.oldSession.$useEmacsStyleLineStart = $formerLineStart;\n }\n $formerLongWords = e.session.$selectLongWords;\n e.session.$selectLongWords = true;\n $formerLineStart = e.session.$useEmacsStyleLineStart;\n e.session.$useEmacsStyleLineStart = true;\n if (!e.session.hasOwnProperty('$emacsMark'))\n e.session.$emacsMark = null;\n if (!e.session.hasOwnProperty('$emacsMarkRing'))\n e.session.$emacsMarkRing = [];\n};\nvar $resetMarkMode = function (e) {\n e.editor.session.$emacsMark = null;\n};\nvar keys = require(\"../lib/keys\").KEY_MODS;\nvar eMods = { C: \"ctrl\", S: \"shift\", M: \"alt\", CMD: \"command\" };\nvar combinations = [\"C-S-M-CMD\",\n \"S-M-CMD\", \"C-M-CMD\", \"C-S-CMD\", \"C-S-M\",\n \"M-CMD\", \"S-CMD\", \"S-M\", \"C-CMD\", \"C-M\", \"C-S\",\n \"CMD\", \"M\", \"S\", \"C\"];\ncombinations.forEach(function (c) {\n var hashId = 0;\n c.split(\"-\").forEach(function (c) {\n hashId = hashId | keys[eMods[c]];\n });\n eMods[hashId] = c.toLowerCase() + \"-\";\n});\nexports.handler.onCopy = function (e, editor) {\n if (editor.$handlesEmacsOnCopy)\n return;\n editor.$handlesEmacsOnCopy = true;\n exports.handler.commands.killRingSave.exec(editor);\n editor.$handlesEmacsOnCopy = false;\n};\nexports.handler.onPaste = function (e, editor) {\n editor.pushEmacsMark(editor.getCursorPosition());\n};\nexports.handler.bindKey = function (key, command) {\n if (typeof key == \"object\")\n key = key[this.platform];\n if (!key)\n return;\n var ckb = this.commandKeyBinding;\n key.split(\"|\").forEach(function (keyPart) {\n keyPart = keyPart.toLowerCase();\n ckb[keyPart] = command;\n var keyParts = keyPart.split(\" \").slice(0, -1);\n keyParts.reduce(function (keyMapKeys, keyPart, i) {\n var prefix = keyMapKeys[i - 1] ? keyMapKeys[i - 1] + ' ' : '';\n return keyMapKeys.concat([prefix + keyPart]);\n }, []).forEach(function (keyPart) {\n if (!ckb[keyPart])\n ckb[keyPart] = \"null\";\n });\n }, this);\n};\nexports.handler.getStatusText = function (editor, data) {\n var str = \"\";\n if (data.count)\n str += data.count;\n if (data.keyChain)\n str += \" \" + data.keyChain;\n return str;\n};\nexports.handler.handleKeyboard = function (data, hashId, key, keyCode) {\n if (keyCode === -1)\n return undefined;\n var editor = data.editor;\n editor._signal(\"changeStatus\");\n if (hashId == -1) {\n editor.pushEmacsMark();\n if (data.count) {\n var str = new Array(data.count + 1).join(key);\n data.count = null;\n return { command: \"insertstring\", args: str };\n }\n }\n var modifier = eMods[hashId];\n if (modifier == \"c-\" || data.count) {\n var count = parseInt(key[key.length - 1]);\n if (typeof count === 'number' && !isNaN(count)) {\n data.count = Math.max(data.count, 0) || 0;\n data.count = 10 * data.count + count;\n return { command: \"null\" };\n }\n }\n if (modifier)\n key = modifier + key;\n if (data.keyChain)\n key = data.keyChain += \" \" + key;\n var command = this.commandKeyBinding[key];\n data.keyChain = command == \"null\" ? key : \"\";\n if (!command)\n return undefined;\n if (command === \"null\")\n return { command: \"null\" };\n if (command === \"universalArgument\") {\n data.count = -4;\n return { command: \"null\" };\n }\n var args;\n if (typeof command !== \"string\") {\n args = command.args;\n if (command.command)\n command = command.command;\n if (command === \"goorselect\") {\n command = editor.emacsMark() ? args[1] : args[0];\n args = null;\n }\n }\n if (typeof command === \"string\") {\n if (command === \"insertstring\" ||\n command === \"splitline\" ||\n command === \"togglecomment\") {\n editor.pushEmacsMark();\n }\n command = this.commands[command] || editor.commands.commands[command];\n if (!command)\n return undefined;\n }\n if (!command.readOnly && !command.isYank)\n data.lastCommand = null;\n if (!command.readOnly && editor.emacsMark())\n editor.setEmacsMark(null);\n if (data.count) {\n var count = data.count;\n data.count = 0;\n if (!command || !command.handlesCount) {\n return {\n args: args,\n command: {\n exec: function (editor, args) {\n for (var i = 0; i < count; i++)\n command.exec(editor, args);\n },\n multiSelectAction: command.multiSelectAction\n }\n };\n }\n else {\n if (!args)\n args = {};\n if (typeof args === 'object')\n args.count = count;\n }\n }\n return { command: command, args: args };\n};\nexports.emacsKeys = {\n \"Up|C-p\": { command: \"goorselect\", args: [\"golineup\", \"selectup\"] },\n \"Down|C-n\": { command: \"goorselect\", args: [\"golinedown\", \"selectdown\"] },\n \"Left|C-b\": { command: \"goorselect\", args: [\"gotoleft\", \"selectleft\"] },\n \"Right|C-f\": { command: \"goorselect\", args: [\"gotoright\", \"selectright\"] },\n \"C-Left|M-b\": { command: \"goorselect\", args: [\"gotowordleft\", \"selectwordleft\"] },\n \"C-Right|M-f\": { command: \"goorselect\", args: [\"gotowordright\", \"selectwordright\"] },\n \"Home|C-a\": { command: \"goorselect\", args: [\"gotolinestart\", \"selecttolinestart\"] },\n \"End|C-e\": { command: \"goorselect\", args: [\"gotolineend\", \"selecttolineend\"] },\n \"C-Home|S-M-,\": { command: \"goorselect\", args: [\"gotostart\", \"selecttostart\"] },\n \"C-End|S-M-.\": { command: \"goorselect\", args: [\"gotoend\", \"selecttoend\"] },\n \"S-Up|S-C-p\": \"selectup\",\n \"S-Down|S-C-n\": \"selectdown\",\n \"S-Left|S-C-b\": \"selectleft\",\n \"S-Right|S-C-f\": \"selectright\",\n \"S-C-Left|S-M-b\": \"selectwordleft\",\n \"S-C-Right|S-M-f\": \"selectwordright\",\n \"S-Home|S-C-a\": \"selecttolinestart\",\n \"S-End|S-C-e\": \"selecttolineend\",\n \"S-C-Home\": \"selecttostart\",\n \"S-C-End\": \"selecttoend\",\n \"C-l\": \"recenterTopBottom\",\n \"M-s\": \"centerselection\",\n \"M-g\": \"gotoline\",\n \"C-x C-p\": \"selectall\",\n \"C-Down\": { command: \"goorselect\", args: [\"gotopagedown\", \"selectpagedown\"] },\n \"C-Up\": { command: \"goorselect\", args: [\"gotopageup\", \"selectpageup\"] },\n \"PageDown|C-v\": { command: \"goorselect\", args: [\"gotopagedown\", \"selectpagedown\"] },\n \"PageUp|M-v\": { command: \"goorselect\", args: [\"gotopageup\", \"selectpageup\"] },\n \"S-C-Down\": \"selectpagedown\",\n \"S-C-Up\": \"selectpageup\",\n \"C-s\": \"iSearch\",\n \"C-r\": \"iSearchBackwards\",\n \"M-C-s\": \"findnext\",\n \"M-C-r\": \"findprevious\",\n \"S-M-5\": \"replace\",\n \"Backspace\": \"backspace\",\n \"Delete|C-d\": \"del\",\n \"Return|C-m\": { command: \"insertstring\", args: \"\\n\" },\n \"C-o\": \"splitline\",\n \"M-d|C-Delete\": { command: \"killWord\", args: \"right\" },\n \"C-Backspace|M-Backspace|M-Delete\": { command: \"killWord\", args: \"left\" },\n \"C-k\": \"killLine\",\n \"C-y|S-Delete\": \"yank\",\n \"M-y\": \"yankRotate\",\n \"C-g\": \"keyboardQuit\",\n \"C-w|C-S-W\": \"killRegion\",\n \"M-w\": \"killRingSave\",\n \"C-Space\": \"setMark\",\n \"C-x C-x\": \"exchangePointAndMark\",\n \"C-t\": \"transposeletters\",\n \"M-u\": \"touppercase\",\n \"M-l\": \"tolowercase\",\n \"M-/\": \"autocomplete\",\n \"C-u\": \"universalArgument\",\n \"M-;\": \"togglecomment\",\n \"C-/|C-x u|S-C--|C-z\": \"undo\",\n \"S-C-/|S-C-x u|C--|S-C-z\": \"redo\",\n \"C-x r\": \"selectRectangularRegion\",\n \"M-x\": { command: \"focusCommandLine\", args: \"M-x \" }\n};\nexports.handler.bindKeys(exports.emacsKeys);\nexports.handler.addCommands({\n recenterTopBottom: function (editor) {\n var renderer = editor.renderer;\n var pos = renderer.$cursorLayer.getPixelPosition();\n var h = renderer.$size.scrollerHeight - renderer.lineHeight;\n var scrollTop = renderer.scrollTop;\n if (Math.abs(pos.top - scrollTop) < 2) {\n scrollTop = pos.top - h;\n }\n else if (Math.abs(pos.top - scrollTop - h * 0.5) < 2) {\n scrollTop = pos.top;\n }\n else {\n scrollTop = pos.top - h * 0.5;\n }\n editor.session.setScrollTop(scrollTop);\n },\n selectRectangularRegion: function (editor) {\n editor.multiSelect.toggleBlockSelection();\n },\n setMark: {\n exec: function (editor, args) {\n if (args && args.count) {\n if (editor.inMultiSelectMode)\n editor.forEachSelection(moveToMark);\n else\n moveToMark();\n moveToMark();\n return;\n }\n var mark = editor.emacsMark(), ranges = editor.selection.getAllRanges(), rangePositions = ranges.map(function (r) { return { row: r.start.row, column: r.start.column }; }), transientMarkModeActive = true, hasNoSelection = ranges.every(function (range) { return range.isEmpty(); });\n if (transientMarkModeActive && (mark || !hasNoSelection)) {\n if (editor.inMultiSelectMode)\n editor.forEachSelection({ exec: editor.clearSelection.bind(editor) });\n else\n editor.clearSelection();\n if (mark)\n editor.pushEmacsMark(null);\n return;\n }\n if (!mark) {\n rangePositions.forEach(function (pos) { editor.pushEmacsMark(pos); });\n editor.setEmacsMark(rangePositions[rangePositions.length - 1]);\n return;\n }\n function moveToMark() {\n var mark = editor.popEmacsMark();\n mark && editor.moveCursorToPosition(mark);\n }\n },\n readOnly: true,\n handlesCount: true\n },\n exchangePointAndMark: {\n exec: function exchangePointAndMark$exec(editor, args) {\n var sel = editor.selection;\n if (!args.count && !sel.isEmpty()) { // just invert selection\n sel.setSelectionRange(sel.getRange(), !sel.isBackwards());\n return;\n }\n if (args.count) { // replace mark and point\n var pos = { row: sel.lead.row, column: sel.lead.column };\n sel.clearSelection();\n sel.moveCursorToPosition(editor.emacsMarkForSelection(pos));\n }\n else { // create selection to last mark\n sel.selectToPosition(editor.emacsMarkForSelection());\n }\n },\n readOnly: true,\n handlesCount: true,\n multiSelectAction: \"forEach\"\n },\n killWord: {\n exec: function (editor, dir) {\n editor.clearSelection();\n if (dir == \"left\")\n editor.selection.selectWordLeft();\n else\n editor.selection.selectWordRight();\n var range = editor.getSelectionRange();\n var text = editor.session.getTextRange(range);\n exports.killRing.add(text);\n editor.session.remove(range);\n editor.clearSelection();\n },\n multiSelectAction: \"forEach\"\n },\n killLine: function (editor) {\n editor.pushEmacsMark(null);\n editor.clearSelection();\n var range = editor.getSelectionRange();\n var line = editor.session.getLine(range.start.row);\n range.end.column = line.length;\n line = line.substr(range.start.column);\n var foldLine = editor.session.getFoldLine(range.start.row);\n if (foldLine && range.end.row != foldLine.end.row) {\n range.end.row = foldLine.end.row;\n line = \"x\";\n }\n if (/^\\s*$/.test(line)) {\n range.end.row++;\n line = editor.session.getLine(range.end.row);\n range.end.column = /^\\s*$/.test(line) ? line.length : 0;\n }\n var text = editor.session.getTextRange(range);\n if (editor.prevOp.command == this)\n exports.killRing.append(text);\n else\n exports.killRing.add(text);\n editor.session.remove(range);\n editor.clearSelection();\n },\n yank: function (editor) {\n editor.onPaste(exports.killRing.get() || '');\n editor.keyBinding.$data.lastCommand = \"yank\";\n },\n yankRotate: function (editor) {\n if (editor.keyBinding.$data.lastCommand != \"yank\")\n return;\n editor.undo();\n editor.session.$emacsMarkRing.pop(); // also undo recording mark\n editor.onPaste(exports.killRing.rotate());\n editor.keyBinding.$data.lastCommand = \"yank\";\n },\n killRegion: {\n exec: function (editor) {\n exports.killRing.add(editor.getCopyText());\n editor.commands.byName.cut.exec(editor);\n editor.setEmacsMark(null);\n },\n readOnly: true,\n multiSelectAction: \"forEach\"\n },\n killRingSave: {\n exec: function (editor) {\n editor.$handlesEmacsOnCopy = true;\n var marks = editor.session.$emacsMarkRing.slice(), deselectedMarks = [];\n exports.killRing.add(editor.getCopyText());\n setTimeout(function () {\n function deselect() {\n var sel = editor.selection, range = sel.getRange(), pos = sel.isBackwards() ? range.end : range.start;\n deselectedMarks.push({ row: pos.row, column: pos.column });\n sel.clearSelection();\n }\n editor.$handlesEmacsOnCopy = false;\n if (editor.inMultiSelectMode)\n editor.forEachSelection({ exec: deselect });\n else\n deselect();\n editor.setEmacsMark(null);\n editor.session.$emacsMarkRing = marks.concat(deselectedMarks.reverse());\n }, 0);\n },\n readOnly: true\n },\n keyboardQuit: function (editor) {\n editor.selection.clearSelection();\n editor.setEmacsMark(null);\n editor.keyBinding.$data.count = null;\n },\n focusCommandLine: function (editor, arg) {\n if (editor.showCommandLine)\n editor.showCommandLine(arg);\n }\n});\nexports.handler.addCommands(iSearchCommandModule.iSearchStartCommands);\nvar commands = exports.handler.commands;\ncommands.yank.isYank = true;\ncommands.yankRotate.isYank = true;\nexports.killRing = {\n $data: [],\n add: function (str) {\n str && this.$data.push(str);\n if (this.$data.length > 30)\n this.$data.shift();\n },\n append: function (str) {\n var idx = this.$data.length - 1;\n var text = this.$data[idx] || \"\";\n if (str)\n text += str;\n if (text)\n this.$data[idx] = text;\n },\n get: function (n) {\n n = n || 1;\n return this.$data.slice(this.$data.length - n, this.$data.length).reverse().join('\\n');\n },\n pop: function () {\n if (this.$data.length > 1)\n this.$data.pop();\n return this.get();\n },\n rotate: function () {\n this.$data.unshift(this.$data.pop());\n return this.get();\n }\n};\n\n}); (function() {\n ace.require([\"ace/keyboard/emacs\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n "],"mappings":"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","names":["require_b5186e225380c3e006a764ad08c7f6","__commonJSMin","exports","module","require","__extends","extendStatics","d","b","p","__","oop","Search","EditSession","SearchHighlight","Occur","_super","editor","options","pos","translatedPos","sess","regexp","hl","found","lines","foundLine","occurSession","session","nullPos","i","search","range","row","last","dom","config","occurStartCommand","alreadyInOccur","occurSessionActive","OccurKeyboardHandler","occurCommands","occur","HashHandler","handleKeyboard$super","data","hashId","key","keyCode","cmd","handler","e","iSearch","jumpToNext","string","ed","sel","ranges","ea","IncrementalSearchKeyboardHandler","scrollTop","result","extendCmd","Range","iSearchCommandModule","ISearchKbd","isRegExp","obj","regExpToObject","re","start","flagStart","stringToRegExp","flags","objectToRegExp","IncrementalSearch","_this","backwards","reset","moveToNext","needleUpdateFunc","shouldSelect","s","needle","reObj","c","evt","text","msg","commands","val","iSearchCommands","method","Editor","$formerLongWords","$formerLineStart","activate","prevMark","mark","replacement","multiRangeLength","selIndex","markRing","markIndex","lastMark","$resetMarkMode","$kbSessionChange","keys","eMods","combinations","command","ckb","keyPart","keyParts","keyMapKeys","prefix","str","modifier","count","args","renderer","h","moveToMark","rangePositions","r","transientMarkModeActive","hasNoSelection","dir","line","foldLine","marks","deselectedMarks","deselect","arg","idx","n","m"],"sourceRoot":"","file":"93b5186e225380c3e006a764ad08c7f6.js"}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy