@next-bricks/presentational-bricks 1.261.0 → 1.262.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/deploy/contract.yaml +109 -109
  3. package/dist/bricks.json +29 -29
  4. package/dist/editors/{editors.38198ded.js → editors.0025c20e.js} +1 -1
  5. package/dist/editors/{editors.38198ded.js.map → editors.0025c20e.js.map} +1 -1
  6. package/dist/{index.e1bf129d.js → index.af4a4aa6.js} +2 -2
  7. package/dist/index.af4a4aa6.js.map +1 -0
  8. package/dist/lazy-bricks/{brick-code-display.dd92.03968d70.js → brick-code-display.dd92.db59b01b.js} +1 -1
  9. package/dist/lazy-bricks/{brick-code-display.dd92.03968d70.js.map → brick-code-display.dd92.db59b01b.js.map} +1 -1
  10. package/dist/lazy-bricks/{brick-collapse-card.dd92.a3b3be63.js → brick-collapse-card.dd92.95f70682.js} +1 -1
  11. package/dist/lazy-bricks/brick-collapse-card.dd92.95f70682.js.map +1 -0
  12. package/dist/lazy-bricks/{card-item.dd92.8204267f.js → card-item.dd92.ff491f7f.js} +1 -1
  13. package/dist/lazy-bricks/card-item.dd92.ff491f7f.js.map +1 -0
  14. package/dist/lazy-bricks/{code-editor.dd92.52955eb6.js → code-editor.dd92.6a96047b.js} +1 -1
  15. package/dist/lazy-bricks/{code-editor.dd92.52955eb6.js.map → code-editor.dd92.6a96047b.js.map} +1 -1
  16. package/dist/lazy-bricks/{~bricks-use-form-and-markdown.dd92.83f526e4.js → ~bricks-use-form-and-markdown.dd92.27801fd5.js} +2 -2
  17. package/dist/lazy-bricks/~bricks-use-form-and-markdown.dd92.27801fd5.js.map +1 -0
  18. package/dist/lazy-bricks/{~bricks-use-html-to-react.dd92.0ffd6580.js → ~bricks-use-html-to-react.dd92.63d05e5d.js} +2 -2
  19. package/dist/lazy-bricks/~bricks-use-html-to-react.dd92.63d05e5d.js.map +1 -0
  20. package/dist/stories.json +15 -0
  21. package/package.json +2 -2
  22. package/dist/index.e1bf129d.js.map +0 -1
  23. package/dist/lazy-bricks/brick-collapse-card.dd92.a3b3be63.js.map +0 -1
  24. package/dist/lazy-bricks/card-item.dd92.8204267f.js.map +0 -1
  25. package/dist/lazy-bricks/~bricks-use-form-and-markdown.dd92.83f526e4.js.map +0 -1
  26. package/dist/lazy-bricks/~bricks-use-html-to-react.dd92.0ffd6580.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///./node_modules/brace/theme/tomorrow.js","webpack:///./node_modules/brace/worker/json.js","webpack:///./bricks/presentational-bricks/src/code-editor/index.module.css","webpack:///./node_modules/brace/theme/monokai.js","webpack:///./bricks/presentational-bricks/src/code-editor/index.module.css?e9dc","webpack:///./bricks/presentational-bricks/src/code-editor/CodeEditor.tsx","webpack:///./bricks/presentational-bricks/src/code-editor/index.tsx","webpack:///./node_modules/brace/mode/yaml.js","webpack:///./node_modules/brace/mode/sh.js","webpack:///./node_modules/brace/theme/github.js","webpack:///./node_modules/brace/mode/json.js","webpack:///delegated ./node_modules/react-ace/lib/index.js from dll-reference DllOfAce"],"names":["ace","define","acequire","exports","module","isDark","cssClass","cssText","importCssString","id","src","___CSS_LOADER_EXPORT___","i","push","locals","options","CodeEditor","theme","mode","setOptions","editorProps","dataSource","configProps","handleChange","handleBlur","handleErrorChange","required","editorStyle","value","setValue","useState","hasError","setHasError","handleOnChange","newValue","useEffect","name","style","onChange","onValidate","err","requiredError","find","onBlur","$blockScrolling","Infinity","className","classNames","aceContainer","CodeEditorElement","event","type","bubbles","property","attribute","console","warn","this","display","_render","ReactDOM","unmountComponentAtNode","codeChange","emit","codeErrorChang","editorBlur","isConnected","mutableProps","fields","get","render","_editorProps","_configProps","_handleChange","_handleErrorChange","_handleBlur","Boolean","UpdatingElement","customElements","oop","TextHighlightRules","YamlHighlightRules","$rules","token","regex","onMatch","val","state","stack","line","indent","exec","length","next","splice","normalizeRules","inherits","Range","MatchingBraceOutdent","checkOutdent","input","test","autoOutdent","doc","row","match","getLine","column","openBracePos","findMatchingBracket","$getIndent","replace","call","prototype","BaseFoldMode","FoldMode","getFoldWidgetRange","session","foldStyle","range","indentationBlock","re","startLevel","search","startColumn","maxRow","getLength","startRow","endRow","level","endColumn","getFoldWidget","prev","prevIndent","nextIndent","foldWidgets","TextMode","Mode","HighlightRules","$outdent","foldingRules","$behaviour","$defaultBehaviour","lineCommentStart","getNextLineIndent","tab","$id","reservedKeywords","languageConstructs","ShHighlightRules","keywordMapper","createKeywordMapper","include","defaultToken","stateName","currentState","tokens","split","splitRegex","rules","heredoc","shift","indentedHeredoc","start","end","integer","variables","commentRegex","foldingStartMarker","RegExp","source","foldingStopMarker","singleLineBlockCommentRe","tripleStarBlockCommentRe","startRegionRe","_getFoldWidgetBase","fw","forceMultiline","getCommentRegionBlock","index","openingBracketBlock","getCommentFoldRange","isMultiLine","getSectionRange","closingBracketBlock","startIndent","subRange","depth","m","CStyleFoldMode","CstyleBehaviour","getTokenizer","getLineTokens","outdents","trim","last","pop","getTabString","slice","remove","JsonHighlightRules","WorkerClient","createWorker","worker","attachToDocument","getDocument","on","e","setAnnotations","data","clearAnnotations","__webpack_require__"],"mappings":"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","file":"lazy-bricks/code-editor.dd92.52955eb6.js","sourcesContent":["ace.define(\"ace/theme/tomorrow\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = false;\nexports.cssClass = \"ace-tomorrow\";\nexports.cssText = \".ace-tomorrow .ace_gutter {\\\nbackground: #f6f6f6;\\\ncolor: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #f6f6f6\\\n}\\\n.ace-tomorrow {\\\nbackground-color: #FFFFFF;\\\ncolor: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_cursor {\\\ncolor: #AEAFAD\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_selection {\\\nbackground: #D6D6D6\\\n}\\\n.ace-tomorrow.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px #FFFFFF;\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_step {\\\nbackground: rgb(255, 255, 0)\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid #D1D1D1\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_active-line {\\\nbackground: #EFEFEF\\\n}\\\n.ace-tomorrow .ace_gutter-active-line {\\\nbackground-color : #dcdcdc\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_selected-word {\\\nborder: 1px solid #D6D6D6\\\n}\\\n.ace-tomorrow .ace_invisible {\\\ncolor: #D1D1D1\\\n}\\\n.ace-tomorrow .ace_keyword,\\\n.ace-tomorrow .ace_meta,\\\n.ace-tomorrow .ace_storage,\\\n.ace-tomorrow .ace_storage.ace_type,\\\n.ace-tomorrow .ace_support.ace_type {\\\ncolor: #8959A8\\\n}\\\n.ace-tomorrow .ace_keyword.ace_operator {\\\ncolor: #3E999F\\\n}\\\n.ace-tomorrow .ace_constant.ace_character,\\\n.ace-tomorrow .ace_constant.ace_language,\\\n.ace-tomorrow .ace_constant.ace_numeric,\\\n.ace-tomorrow .ace_keyword.ace_other.ace_unit,\\\n.ace-tomorrow .ace_support.ace_constant,\\\n.ace-tomorrow .ace_variable.ace_parameter {\\\ncolor: #F5871F\\\n}\\\n.ace-tomorrow .ace_constant.ace_other {\\\ncolor: #666969\\\n}\\\n.ace-tomorrow .ace_invalid {\\\ncolor: #FFFFFF;\\\nbackground-color: #C82829\\\n}\\\n.ace-tomorrow .ace_invalid.ace_deprecated {\\\ncolor: #FFFFFF;\\\nbackground-color: #8959A8\\\n}\\\n.ace-tomorrow .ace_fold {\\\nbackground-color: #4271AE;\\\nborder-color: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_entity.ace_name.ace_function,\\\n.ace-tomorrow .ace_support.ace_function,\\\n.ace-tomorrow .ace_variable {\\\ncolor: #4271AE\\\n}\\\n.ace-tomorrow .ace_support.ace_class,\\\n.ace-tomorrow .ace_support.ace_type {\\\ncolor: #C99E00\\\n}\\\n.ace-tomorrow .ace_heading,\\\n.ace-tomorrow .ace_markup.ace_heading,\\\n.ace-tomorrow .ace_string {\\\ncolor: #718C00\\\n}\\\n.ace-tomorrow .ace_entity.ace_name.ace_tag,\\\n.ace-tomorrow .ace_entity.ace_other.ace_attribute-name,\\\n.ace-tomorrow .ace_meta.ace_tag,\\\n.ace-tomorrow .ace_string.ace_regexp,\\\n.ace-tomorrow .ace_variable {\\\ncolor: #C82829\\\n}\\\n.ace-tomorrow .ace_comment {\\\ncolor: #8E908C\\\n}\\\n.ace-tomorrow .ace_indent-guide {\\\nbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==) right repeat-y\\\n}\";\n\nvar dom = acequire(\"../lib/dom\");\ndom.importCssString(exports.cssText, exports.cssClass);\n});\n","module.exports.id = 'ace/mode/json_worker';\nmodule.exports.src = \"\\\"no use strict\\\";!function(window){function resolveModuleId(id,paths){for(var testPath=id,tail=\\\"\\\";testPath;){var alias=paths[testPath];if(\\\"string\\\"==typeof alias)return alias+tail;if(alias)return alias.location.replace(/\\\\/*$/,\\\"/\\\")+(tail||alias.main||alias.name);if(alias===!1)return\\\"\\\";var i=testPath.lastIndexOf(\\\"/\\\");if(-1===i)break;tail=testPath.substr(i)+tail,testPath=testPath.slice(0,i)}return id}if(!(void 0!==window.window&&window.document||window.acequire&&window.define)){window.console||(window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:\\\"log\\\",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console),window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:\\\"error\\\",data:{message:message,data:err.data,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf(\\\"!\\\")){var chunks=moduleName.split(\\\"!\\\");return window.normalizeModule(parentId,chunks[0])+\\\"!\\\"+window.normalizeModule(parentId,chunks[1])}if(\\\".\\\"==moduleName.charAt(0)){var base=parentId.split(\\\"/\\\").slice(0,-1).join(\\\"/\\\");for(moduleName=(base?base+\\\"/\\\":\\\"\\\")+moduleName;-1!==moduleName.indexOf(\\\".\\\")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\\\.\\\\//,\\\"\\\").replace(/\\\\/\\\\.\\\\//,\\\"/\\\").replace(/[^\\\\/]+\\\\/\\\\.\\\\.\\\\//,\\\"\\\")}}return moduleName},window.acequire=function acequire(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error(\\\"worker.js acequire() accepts only (parentId, id) as arguments\\\");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;if(!window.acequire.tlns)return console.log(\\\"unable to load \\\"+id);var path=resolveModuleId(id,window.acequire.tlns);return\\\".js\\\"!=path.slice(-3)&&(path+=\\\".js\\\"),window.acequire.id=id,window.acequire.modules[id]={},importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,\\\"string\\\"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),\\\"function\\\"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=[\\\"require\\\",\\\"exports\\\",\\\"module\\\"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case\\\"require\\\":return req;case\\\"exports\\\":return module.exports;case\\\"module\\\":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},acequire.tlns={},window.initBaseUrls=function(topLevelNamespaces){for(var i in topLevelNamespaces)acequire.tlns[i]=topLevelNamespaces[i]},window.initSender=function(){var EventEmitter=window.acequire(\\\"ace/lib/event_emitter\\\").EventEmitter,oop=window.acequire(\\\"ace/lib/oop\\\"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:\\\"call\\\",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:\\\"event\\\",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.event&&sender)sender._signal(msg.event,msg.data);else if(msg.command)if(main[msg.command])main[msg.command].apply(main,msg.args);else{if(!window[msg.command])throw Error(\\\"Unknown command:\\\"+msg.command);window[msg.command].apply(window,msg.args)}else if(msg.init){window.initBaseUrls(msg.tlns),acequire(\\\"ace/lib/es5-shim\\\"),sender=window.sender=window.initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}}}}(this),ace.define(\\\"ace/lib/oop\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define(\\\"ace/range\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return\\\"Range: [\\\"+this.start.row+\\\"/\\\"+this.start.column+\\\"] -> [\\\"+this.end.row+\\\"/\\\"+this.end.column+\\\"]\\\"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){\\\"object\\\"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){\\\"object\\\"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define(\\\"ace/apply_delta\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.applyDelta=function(docLines,delta){var row=delta.start.row,startColumn=delta.start.column,line=docLines[row]||\\\"\\\";switch(delta.action){case\\\"insert\\\":var lines=delta.lines;if(1===lines.length)docLines[row]=line.substring(0,startColumn)+delta.lines[0]+line.substring(startColumn);else{var args=[row,1].concat(delta.lines);docLines.splice.apply(docLines,args),docLines[row]=line.substring(0,startColumn)+docLines[row],docLines[row+delta.lines.length-1]+=line.substring(startColumn)}break;case\\\"remove\\\":var endColumn=delta.end.column,endRow=delta.end.row;row===endRow?docLines[row]=line.substring(0,startColumn)+line.substring(endColumn):docLines.splice(row,endRow-row+1,line.substring(0,startColumn)+docLines[endRow].substring(endColumn))}}}),ace.define(\\\"ace/lib/event_emitter\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){\\\"object\\\"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?\\\"unshift\\\":\\\"push\\\"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define(\\\"ace/anchor\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/lib/event_emitter\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"./lib/oop\\\"),EventEmitter=acequire(\\\"./lib/event_emitter\\\").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){function $pointsInOrder(point1,point2,equalPointsInOrder){var bColIsAfter=equalPointsInOrder?point1.column<=point2.column:point1.column<point2.column;return point1.row<point2.row||point1.row==point2.row&&bColIsAfter}function $getTransformedPoint(delta,point,moveIfEqual){var deltaIsInsert=\\\"insert\\\"==delta.action,deltaRowShift=(deltaIsInsert?1:-1)*(delta.end.row-delta.start.row),deltaColShift=(deltaIsInsert?1:-1)*(delta.end.column-delta.start.column),deltaStart=delta.start,deltaEnd=deltaIsInsert?deltaStart:delta.end;return $pointsInOrder(point,deltaStart,moveIfEqual)?{row:point.row,column:point.column}:$pointsInOrder(deltaEnd,point,!moveIfEqual)?{row:point.row+deltaRowShift,column:point.column+(point.row==deltaEnd.row?deltaColShift:0)}:{row:deltaStart.row,column:deltaStart.column}}oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(delta){if(!(delta.start.row==delta.end.row&&delta.start.row!=this.row||delta.start.row>this.row)){var point=$getTransformedPoint(delta,{row:this.row,column:this.column},this.$insertRight);this.setPosition(point.row,point.column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal(\\\"change\\\",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener(\\\"change\\\",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on(\\\"change\\\",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define(\\\"ace/document\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/apply_delta\\\",\\\"ace/lib/event_emitter\\\",\\\"ace/range\\\",\\\"ace/anchor\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"./lib/oop\\\"),applyDelta=acequire(\\\"./apply_delta\\\").applyDelta,EventEmitter=acequire(\\\"./lib/event_emitter\\\").EventEmitter,Range=acequire(\\\"./range\\\").Range,Anchor=acequire(\\\"./anchor\\\").Anchor,Document=function(textOrLines){this.$lines=[\\\"\\\"],0===textOrLines.length?this.$lines=[\\\"\\\"]:Array.isArray(textOrLines)?this.insertMergedLines({row:0,column:0},textOrLines):this.insert({row:0,column:0},textOrLines)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength()-1;this.remove(new Range(0,0,len,this.getLine(len).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0===\\\"aaa\\\".split(/a/).length?function(text){return text.replace(/\\\\r\\\\n|\\\\r/g,\\\"\\\\n\\\").split(\\\"\\\\n\\\")}:function(text){return text.split(/\\\\r\\\\n|\\\\r|\\\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\\\r\\\\n|\\\\r|\\\\n)/m);this.$autoNewLine=match?match[1]:\\\"\\\\n\\\",this._signal(\\\"changeNewLineMode\\\")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case\\\"windows\\\":return\\\"\\\\r\\\\n\\\";case\\\"unix\\\":return\\\"\\\\n\\\";default:return this.$autoNewLine||\\\"\\\\n\\\"}},this.$autoNewLine=\\\"\\\",this.$newLineMode=\\\"auto\\\",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal(\\\"changeNewLineMode\\\"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return\\\"\\\\r\\\\n\\\"==text||\\\"\\\\r\\\"==text||\\\"\\\\n\\\"==text},this.getLine=function(row){return this.$lines[row]||\\\"\\\"},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){return this.getLinesForRange(range).join(this.getNewLineCharacter())},this.getLinesForRange=function(range){var lines;if(range.start.row===range.end.row)lines=[this.getLine(range.start.row).substring(range.start.column,range.end.column)];else{lines=this.getLines(range.start.row,range.end.row),lines[0]=(lines[0]||\\\"\\\").substring(range.start.column);var l=lines.length-1;range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column))}return lines},this.insertLines=function(row,lines){return console.warn(\\\"Use of document.insertLines is deprecated. Use the insertFullLines method instead.\\\"),this.insertFullLines(row,lines)},this.removeLines=function(firstRow,lastRow){return console.warn(\\\"Use of document.removeLines is deprecated. Use the removeFullLines method instead.\\\"),this.removeFullLines(firstRow,lastRow)},this.insertNewLine=function(position){return console.warn(\\\"Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead.\\\"),this.insertMergedLines(position,[\\\"\\\",\\\"\\\"])},this.insert=function(position,text){return 1>=this.getLength()&&this.$detectNewLine(text),this.insertMergedLines(position,this.$split(text))},this.insertInLine=function(position,text){var start=this.clippedPos(position.row,position.column),end=this.pos(position.row,position.column+text.length);return this.applyDelta({start:start,end:end,action:\\\"insert\\\",lines:[text]},!0),this.clonePos(end)},this.clippedPos=function(row,column){var length=this.getLength();void 0===row?row=length:0>row?row=0:row>=length&&(row=length-1,column=void 0);var line=this.getLine(row);return void 0==column&&(column=line.length),column=Math.min(Math.max(column,0),line.length),{row:row,column:column}},this.clonePos=function(pos){return{row:pos.row,column:pos.column}},this.pos=function(row,column){return{row:row,column:column}},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):(position.row=Math.max(0,position.row),position.column=Math.min(Math.max(position.column,0),this.getLine(position.row).length)),position},this.insertFullLines=function(row,lines){row=Math.min(Math.max(row,0),this.getLength());var column=0;this.getLength()>row?(lines=lines.concat([\\\"\\\"]),column=0):(lines=[\\\"\\\"].concat(lines),row--,column=this.$lines[row].length),this.insertMergedLines({row:row,column:column},lines)},this.insertMergedLines=function(position,lines){var start=this.clippedPos(position.row,position.column),end={row:start.row+lines.length-1,column:(1==lines.length?start.column:0)+lines[lines.length-1].length};return this.applyDelta({start:start,end:end,action:\\\"insert\\\",lines:lines}),this.clonePos(end)},this.remove=function(range){var start=this.clippedPos(range.start.row,range.start.column),end=this.clippedPos(range.end.row,range.end.column);return this.applyDelta({start:start,end:end,action:\\\"remove\\\",lines:this.getLinesForRange({start:start,end:end})}),this.clonePos(start)},this.removeInLine=function(row,startColumn,endColumn){var start=this.clippedPos(row,startColumn),end=this.clippedPos(row,endColumn);return this.applyDelta({start:start,end:end,action:\\\"remove\\\",lines:this.getLinesForRange({start:start,end:end})},!0),this.clonePos(start)},this.removeFullLines=function(firstRow,lastRow){firstRow=Math.min(Math.max(0,firstRow),this.getLength()-1),lastRow=Math.min(Math.max(0,lastRow),this.getLength()-1);var deleteFirstNewLine=lastRow==this.getLength()-1&&firstRow>0,deleteLastNewLine=this.getLength()-1>lastRow,startRow=deleteFirstNewLine?firstRow-1:firstRow,startCol=deleteFirstNewLine?this.getLine(startRow).length:0,endRow=deleteLastNewLine?lastRow+1:lastRow,endCol=deleteLastNewLine?0:this.getLine(endRow).length,range=new Range(startRow,startCol,endRow,endCol),deletedLines=this.$lines.slice(firstRow,lastRow+1);return this.applyDelta({start:range.start,end:range.end,action:\\\"remove\\\",lines:this.getLinesForRange(range)}),deletedLines},this.removeNewLine=function(row){this.getLength()-1>row&&row>=0&&this.applyDelta({start:this.pos(row,this.getLine(row).length),end:this.pos(row+1,0),action:\\\"remove\\\",lines:[\\\"\\\",\\\"\\\"]})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0===text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;this.remove(range);var end;return end=text?this.insert(range.start,text):range.start},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++)this.applyDelta(deltas[i])},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--)this.revertDelta(deltas[i])},this.applyDelta=function(delta,doNotValidate){var isInsert=\\\"insert\\\"==delta.action;(isInsert?1>=delta.lines.length&&!delta.lines[0]:!Range.comparePoints(delta.start,delta.end))||(isInsert&&delta.lines.length>2e4&&this.$splitAndapplyLargeDelta(delta,2e4),applyDelta(this.$lines,delta,doNotValidate),this._signal(\\\"change\\\",delta))},this.$splitAndapplyLargeDelta=function(delta,MAX){for(var lines=delta.lines,l=lines.length,row=delta.start.row,column=delta.start.column,from=0,to=0;;){from=to,to+=MAX-1;var chunk=lines.slice(from,to);if(to>l){delta.lines=chunk,delta.start.row=row+from,delta.start.column=column;break}chunk.push(\\\"\\\"),this.applyDelta({start:this.pos(row+from,column),end:this.pos(row+to,column=0),action:delta.action,lines:chunk},!0)}},this.revertDelta=function(delta){this.applyDelta({start:this.clonePos(delta.start),end:this.clonePos(delta.end),action:\\\"insert\\\"==delta.action?\\\"remove\\\":\\\"insert\\\",lines:delta.lines.slice()})},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define(\\\"ace/lib/lang\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split(\\\"\\\").reverse().join(\\\"\\\")},exports.stringRepeat=function(string,count){for(var result=\\\"\\\";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\\\s\\\\s*/,trimEndRegexp=/\\\\s\\\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,\\\"\\\")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,\\\"\\\")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&\\\"object\\\"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function deepCopy(obj){if(\\\"object\\\"!=typeof obj||!obj)return obj;var copy;if(Array.isArray(obj)){copy=[];for(var key=0;obj.length>key;key++)copy[key]=deepCopy(obj[key]);return copy}if(\\\"[object Object]\\\"!==Object.prototype.toString.call(obj))return obj;copy={};for(var key in obj)copy[key]=deepCopy(obj[key]);return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\\\]\\\\/\\\\\\\\])/g,\\\"\\\\\\\\$1\\\")},exports.escapeHTML=function(str){return str.replace(/&/g,\\\"&#38;\\\").replace(/\\\"/g,\\\"&#34;\\\").replace(/'/g,\\\"&#39;\\\").replace(/</g,\\\"&#60;\\\")},exports.getMatchOffsets=function(string,regExp){var matches=[];return string.replace(regExp,function(str){matches.push({offset:arguments[arguments.length-2],length:str.length})}),matches},exports.deferredCall=function(fcn){var timer=null,callback=function(){timer=null,fcn()},deferred=function(timeout){return deferred.cancel(),timer=setTimeout(callback,timeout||0),deferred};return deferred.schedule=deferred,deferred.call=function(){return this.cancel(),fcn(),deferred},deferred.cancel=function(){return clearTimeout(timer),timer=null,deferred},deferred.isPending=function(){return timer},deferred},exports.delayedCall=function(fcn,defaultTimeout){var timer=null,callback=function(){timer=null,fcn()},_self=function(timeout){null==timer&&(timer=setTimeout(callback,timeout||defaultTimeout))};return _self.delay=function(timeout){timer&&clearTimeout(timer),timer=setTimeout(callback,timeout||defaultTimeout)},_self.schedule=_self,_self.call=function(){this.cancel(),fcn()},_self.cancel=function(){timer&&clearTimeout(timer),timer=null},_self.isPending=function(){return timer},_self}}),ace.define(\\\"ace/worker/mirror\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/range\\\",\\\"ace/document\\\",\\\"ace/lib/lang\\\"],function(acequire,exports){\\\"use strict\\\";acequire(\\\"../range\\\").Range;var Document=acequire(\\\"../document\\\").Document,lang=acequire(\\\"../lib/lang\\\"),Mirror=exports.Mirror=function(sender){this.sender=sender;var doc=this.doc=new Document(\\\"\\\"),deferredUpdate=this.deferredUpdate=lang.delayedCall(this.onUpdate.bind(this)),_self=this;sender.on(\\\"change\\\",function(e){var data=e.data;if(data[0].start)doc.applyDeltas(data);else for(var i=0;data.length>i;i+=2){if(Array.isArray(data[i+1]))var d={action:\\\"insert\\\",start:data[i],lines:data[i+1]};else var d={action:\\\"remove\\\",start:data[i],end:data[i+1]};doc.applyDelta(d,!0)}return _self.$timeout?deferredUpdate.schedule(_self.$timeout):(_self.onUpdate(),void 0)})};(function(){this.$timeout=500,this.setTimeout=function(timeout){this.$timeout=timeout},this.setValue=function(value){this.doc.setValue(value),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(callbackId){this.sender.callback(this.doc.getValue(),callbackId)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(Mirror.prototype)}),ace.define(\\\"ace/mode/json/json_parse\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(){\\\"use strict\\\";var at,ch,text,value,escapee={'\\\"':'\\\"',\\\"\\\\\\\\\\\":\\\"\\\\\\\\\\\",\\\"/\\\":\\\"/\\\",b:\\\"\\\\b\\\",f:\\\"\\\\f\\\",n:\\\"\\\\n\\\",r:\\\"\\\\r\\\",t:\\\"\\t\\\"},error=function(m){throw{name:\\\"SyntaxError\\\",message:m,at:at,text:text}},next=function(c){return c&&c!==ch&&error(\\\"Expected '\\\"+c+\\\"' instead of '\\\"+ch+\\\"'\\\"),ch=text.charAt(at),at+=1,ch},number=function(){var number,string=\\\"\\\";for(\\\"-\\\"===ch&&(string=\\\"-\\\",next(\\\"-\\\"));ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch,next();if(\\\".\\\"===ch)for(string+=\\\".\\\";next()&&ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch;if(\\\"e\\\"===ch||\\\"E\\\"===ch)for(string+=ch,next(),(\\\"-\\\"===ch||\\\"+\\\"===ch)&&(string+=ch,next());ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error(\\\"Bad number\\\"),void 0):number},string=function(){var hex,i,uffff,string=\\\"\\\";if('\\\"'===ch)for(;next();){if('\\\"'===ch)return next(),string;if(\\\"\\\\\\\\\\\"===ch)if(next(),\\\"u\\\"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if(\\\"string\\\"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error(\\\"Bad string\\\")},white=function(){for(;ch&&\\\" \\\">=ch;)next()},word=function(){switch(ch){case\\\"t\\\":return next(\\\"t\\\"),next(\\\"r\\\"),next(\\\"u\\\"),next(\\\"e\\\"),!0;case\\\"f\\\":return next(\\\"f\\\"),next(\\\"a\\\"),next(\\\"l\\\"),next(\\\"s\\\"),next(\\\"e\\\"),!1;case\\\"n\\\":return next(\\\"n\\\"),next(\\\"u\\\"),next(\\\"l\\\"),next(\\\"l\\\"),null}error(\\\"Unexpected '\\\"+ch+\\\"'\\\")},array=function(){var array=[];if(\\\"[\\\"===ch){if(next(\\\"[\\\"),white(),\\\"]\\\"===ch)return next(\\\"]\\\"),array;for(;ch;){if(array.push(value()),white(),\\\"]\\\"===ch)return next(\\\"]\\\"),array;next(\\\",\\\"),white()}}error(\\\"Bad array\\\")},object=function(){var key,object={};if(\\\"{\\\"===ch){if(next(\\\"{\\\"),white(),\\\"}\\\"===ch)return next(\\\"}\\\"),object;for(;ch;){if(key=string(),white(),next(\\\":\\\"),Object.hasOwnProperty.call(object,key)&&error('Duplicate key \\\"'+key+'\\\"'),object[key]=value(),white(),\\\"}\\\"===ch)return next(\\\"}\\\"),object;next(\\\",\\\"),white()}}error(\\\"Bad object\\\")};return value=function(){switch(white(),ch){case\\\"{\\\":return object();case\\\"[\\\":return array();case'\\\"':return string();case\\\"-\\\":return number();default:return ch>=\\\"0\\\"&&\\\"9\\\">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=\\\" \\\",result=value(),white(),ch&&error(\\\"Syntax error\\\"),\\\"function\\\"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&\\\"object\\\"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({\\\"\\\":result},\\\"\\\"):result}}),ace.define(\\\"ace/mode/json_worker\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/worker/mirror\\\",\\\"ace/mode/json/json_parse\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"../lib/oop\\\"),Mirror=acequire(\\\"../worker/mirror\\\").Mirror,parse=acequire(\\\"./json/json_parse\\\"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue(),errors=[];try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);errors.push({row:pos.row,column:pos.column,text:e.message,type:\\\"error\\\"})}this.sender.emit(\\\"annotate\\\",errors)}}.call(JsonWorker.prototype)}),ace.define(\\\"ace/lib/es5-shim\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,\\\"sentinel\\\",{}),\\\"sentinel\\\"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if(\\\"function\\\"!=typeof target)throw new TypeError(\\\"Function.prototype.bind called on incompatible \\\"+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,\\\"__defineGetter__\\\"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,\\\"XXX\\\"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0\\n}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return\\\"[object Array]\\\"==_toString(obj)});var boxedString=Object(\\\"a\\\"),splitString=\\\"a\\\"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,thisp=arguments[1],i=-1,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError;for(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,result=[],thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");if(!length&&1==arguments.length)throw new TypeError(\\\"reduce of empty array with no initial value\\\");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError(\\\"reduce of empty array with no initial value\\\")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");if(!length&&1==arguments.length)throw new TypeError(\\\"reduceRight of empty array with no initial value\\\");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError(\\\"reduceRight of empty array with no initial value\\\")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT=\\\"Object.getOwnPropertyDescriptor called on a non-object: \\\";Object.getOwnPropertyDescriptor=function(object,property){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if(\\\"object\\\"!=typeof prototype)throw new TypeError(\\\"typeof prototype[\\\"+typeof prototype+\\\"] != 'object'\\\");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom=\\\"undefined\\\"==typeof document||doesDefinePropertyWork(document.createElement(\\\"div\\\"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR=\\\"Property description must be an object: \\\",ERR_NON_OBJECT_TARGET=\\\"Object.defineProperty called on non-object: \\\",ERR_ACCESSORS_NOT_SUPPORTED=\\\"getters & setters can not be defined on this javascript engine\\\";Object.defineProperty=function(object,property,descriptor){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if(\\\"object\\\"!=typeof descriptor&&\\\"function\\\"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,\\\"value\\\"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,\\\"get\\\")&&defineGetter(object,property,descriptor.get),owns(descriptor,\\\"set\\\")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return\\\"function\\\"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name=\\\"\\\";owns(object,name);)name+=\\\"?\\\";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=[\\\"toString\\\",\\\"toLocaleString\\\",\\\"valueOf\\\",\\\"hasOwnProperty\\\",\\\"isPrototypeOf\\\",\\\"propertyIsEnumerable\\\",\\\"constructor\\\"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(\\\"Object.keys called on a non-object\\\");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws=\\\"\\t\\\\n\\u000b\\\\f\\\\r   ᠎              \\\\u2028\\\\u2029\\\";if(!String.prototype.trim||ws.trim()){ws=\\\"[\\\"+ws+\\\"]\\\";var trimBeginRegexp=RegExp(\\\"^\\\"+ws+ws+\\\"*\\\"),trimEndRegexp=RegExp(ws+ws+\\\"*$\\\");String.prototype.trim=function(){return(this+\\\"\\\").replace(trimBeginRegexp,\\\"\\\").replace(trimEndRegexp,\\\"\\\")}}var toObject=function(o){if(null==o)throw new TypeError(\\\"can't convert \\\"+o+\\\" to object\\\");return Object(o)}});\";","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".aceContainer--1oNSiiKV {\\n border: 1px solid #e8e8e8;\\n border-radius: 4px;\\n}\\n\\n.hasError--11Ifzica {\\n border-color: red;\\n}\\n\", \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"aceContainer\": \"aceContainer--1oNSiiKV\",\n\t\"hasError\": \"hasError--11Ifzica\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n","ace.define(\"ace/theme/monokai\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = true;\nexports.cssClass = \"ace-monokai\";\nexports.cssText = \".ace-monokai .ace_gutter {\\\nbackground: #2F3129;\\\ncolor: #8F908A\\\n}\\\n.ace-monokai .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #555651\\\n}\\\n.ace-monokai {\\\nbackground-color: #272822;\\\ncolor: #F8F8F2\\\n}\\\n.ace-monokai .ace_cursor {\\\ncolor: #F8F8F0\\\n}\\\n.ace-monokai .ace_marker-layer .ace_selection {\\\nbackground: #49483E\\\n}\\\n.ace-monokai.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px #272822;\\\n}\\\n.ace-monokai .ace_marker-layer .ace_step {\\\nbackground: rgb(102, 82, 0)\\\n}\\\n.ace-monokai .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid #49483E\\\n}\\\n.ace-monokai .ace_marker-layer .ace_active-line {\\\nbackground: #202020\\\n}\\\n.ace-monokai .ace_gutter-active-line {\\\nbackground-color: #272727\\\n}\\\n.ace-monokai .ace_marker-layer .ace_selected-word {\\\nborder: 1px solid #49483E\\\n}\\\n.ace-monokai .ace_invisible {\\\ncolor: #52524d\\\n}\\\n.ace-monokai .ace_entity.ace_name.ace_tag,\\\n.ace-monokai .ace_keyword,\\\n.ace-monokai .ace_meta.ace_tag,\\\n.ace-monokai .ace_storage {\\\ncolor: #F92672\\\n}\\\n.ace-monokai .ace_punctuation,\\\n.ace-monokai .ace_punctuation.ace_tag {\\\ncolor: #fff\\\n}\\\n.ace-monokai .ace_constant.ace_character,\\\n.ace-monokai .ace_constant.ace_language,\\\n.ace-monokai .ace_constant.ace_numeric,\\\n.ace-monokai .ace_constant.ace_other {\\\ncolor: #AE81FF\\\n}\\\n.ace-monokai .ace_invalid {\\\ncolor: #F8F8F0;\\\nbackground-color: #F92672\\\n}\\\n.ace-monokai .ace_invalid.ace_deprecated {\\\ncolor: #F8F8F0;\\\nbackground-color: #AE81FF\\\n}\\\n.ace-monokai .ace_support.ace_constant,\\\n.ace-monokai .ace_support.ace_function {\\\ncolor: #66D9EF\\\n}\\\n.ace-monokai .ace_fold {\\\nbackground-color: #A6E22E;\\\nborder-color: #F8F8F2\\\n}\\\n.ace-monokai .ace_storage.ace_type,\\\n.ace-monokai .ace_support.ace_class,\\\n.ace-monokai .ace_support.ace_type {\\\nfont-style: italic;\\\ncolor: #66D9EF\\\n}\\\n.ace-monokai .ace_entity.ace_name.ace_function,\\\n.ace-monokai .ace_entity.ace_other,\\\n.ace-monokai .ace_entity.ace_other.ace_attribute-name,\\\n.ace-monokai .ace_variable {\\\ncolor: #A6E22E\\\n}\\\n.ace-monokai .ace_variable.ace_parameter {\\\nfont-style: italic;\\\ncolor: #FD971F\\\n}\\\n.ace-monokai .ace_string {\\\ncolor: #E6DB74\\\n}\\\n.ace-monokai .ace_comment {\\\ncolor: #75715E\\\n}\\\n.ace-monokai .ace_indent-guide {\\\nbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y\\\n}\";\n\nvar dom = acequire(\"../lib/dom\");\ndom.importCssString(exports.cssText, exports.cssClass);\n});\n","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../../node_modules/css-loader/dist/cjs.js??ref--13-1!../../../../node_modules/postcss-loader/dist/cjs.js??ref--13-2!./index.module.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import React, { useState, useEffect } from \"react\";\nimport AceEditor from \"react-ace\";\nimport \"./brace/mode\";\nimport \"./brace/theme\";\nimport style from \"./index.module.css\";\nimport classNames from \"classnames\";\nimport { find } from \"lodash\";\n\ninterface CodeEditorProps {\n theme: string;\n mode: string;\n setOptions?: Record<string, any>;\n editorProps?: Record<string, any>;\n editorStyle?: Record<string, any>;\n dataSource: any;\n configProps?: any;\n handleChange?: (value: any) => void;\n handleErrorChange?: (value: boolean) => void;\n handleBlur?: (value: any) => void;\n handleValidate?: (value: any) => void;\n required: boolean;\n}\n\nexport function CodeEditor({\n theme,\n mode,\n setOptions,\n editorProps,\n dataSource,\n configProps,\n handleChange,\n handleBlur,\n handleErrorChange,\n required,\n editorStyle\n}: CodeEditorProps): React.ReactElement {\n const [value, setValue] = useState(dataSource || \"\");\n const [hasError, setHasError] = useState(false);\n\n const handleOnChange = (newValue: string): void => {\n setValue(newValue);\n };\n\n useEffect(() => {\n handleChange(value);\n }, [value]);\n\n useEffect(() => {\n handleOnChange(dataSource || \"\");\n }, [dataSource]);\n\n const handleOnBlur = (): void => {\n handleBlur(value);\n };\n\n const onValidate = err => {\n let requiredError = false;\n if (required) {\n requiredError = !value;\n }\n setHasError(!!find(err, [\"type\", \"error\"]) || requiredError);\n };\n\n useEffect(() => {\n handleErrorChange(hasError);\n }, [hasError]);\n\n return (\n <AceEditor\n name=\"commands-editor\"\n style={editorStyle}\n theme={theme}\n mode={mode}\n value={value}\n setOptions={setOptions}\n {...configProps}\n onChange={handleOnChange}\n onValidate={onValidate}\n onBlur={handleOnBlur}\n // Tips: Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message\n editorProps={{ ...editorProps, $blockScrolling: Infinity }}\n className={classNames(style.aceContainer, {\n [style.hasError]: hasError\n })}\n />\n );\n}\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {\n BrickWrapper,\n UpdatingElement,\n property,\n event,\n EventEmitter,\n} from \"@next-core/brick-kit\";\nimport { CodeEditor } from \"./CodeEditor\";\nimport { get } from \"lodash\";\n\n/**\n * @id presentational-bricks.code-editor\n * @name presentational-bricks.code-editor\n * @docKind brick\n * @description 支持Shell、Python、CSS、HTML等语法高亮\n * @author lynette\n * @slots\n * @history\n * @memo\n * ## Tips\n * > 该不符合 form 表单项的原则,且只支持少部分语言高亮,现已废弃,请使用新的[代码编辑构件](developers/brick-book/brick/code-bricks.code-editor)\n *\n * ## 支持语言:\n *\n * - json\n * - sh\n * - text\n * - yaml\n * @noInheritDoc\n */\nexport class CodeEditorElement extends UpdatingElement {\n /**\n * @detail string\n * @description 值变化的时候发出的事件,detail 为值\n */\n @event({ type: \"code.change\" })\n codeChange: EventEmitter<string>;\n\n /**\n * @detail boolean\n * @description 值错误变化的时候发出的事件,detail 为是否有错误\n */\n @event({ type: \"code.error.change\", bubbles: true })\n codeErrorChang: EventEmitter<boolean>;\n\n /**\n * @detail string\n * @description 编辑器失去焦点的时候发出的事件,detail 为值\n */\n @event({ type: \"editor.blur\" })\n editorBlur: EventEmitter<string>;\n\n /**\n * @kind string\n * @required false\n * @default -\n * @description 代码内容\n */\n @property() value: string;\n\n /**\n * @kind { value?: string; mode?: string; }\n * @required false\n * @default -\n * @description [已废弃]字段映射, 跟 dataSource 一起使用来获得运行时 value\n */\n @property({ attribute: false }) fields: {\n value?: string;\n mode?: string;\n };\n\n private _editorProps: Record<string, any>;\n private _configProps: Record<string, any>;\n\n connectedCallback(): void {\n // eslint-disable-next-line no-console\n console.warn(\n \"`presentational-bricks.code-editor` are deprecated, use `code-bricks.code-editor` instead.\"\n );\n this.style.display = \"block\";\n this._render();\n }\n\n disconnectedCallback(): void {\n ReactDOM.unmountComponentAtNode(this);\n }\n\n private _handleChange = (value: any) => {\n this.codeChange.emit(value);\n };\n\n private _handleErrorChange = (hasError: boolean) => {\n this.codeErrorChang.emit(hasError);\n };\n\n private _handleBlur = (value: any) => {\n this.editorBlur.emit(value);\n };\n\n protected _render(): void {\n if (this.isConnected) {\n const mutableProps = {\n value: this.value,\n mode: this.mode,\n };\n if (this.dataSource) {\n mutableProps.value = this.fields?.value\n ? get(this.dataSource, this.fields.value)\n : this.dataSource;\n if (this.fields?.mode) {\n mutableProps.mode = get(this.dataSource, this.fields.mode);\n }\n }\n ReactDOM.render(\n <BrickWrapper>\n <CodeEditor\n theme={this.theme}\n mode={mutableProps.mode}\n dataSource={mutableProps.value}\n setOptions={this.setOptions}\n editorProps={this._editorProps}\n configProps={this._configProps}\n editorStyle={this.editorStyle}\n handleChange={this._handleChange}\n handleErrorChange={this._handleErrorChange}\n handleBlur={this._handleBlur}\n required={this.required}\n />\n </BrickWrapper>,\n this\n );\n }\n }\n\n /**\n * @kind Record<string, any>\n * @required false\n * @default -\n * @description [已废弃]数据源\n */\n @property({\n attribute: false,\n })\n dataSource: Record<string, any>;\n\n /**\n * @kind string\n * @required true\n * @default -\n * @description 语言模式,支持语言如下\n */\n @property({\n attribute: false,\n })\n mode = \"text\";\n\n /**\n * @kind string\n * @required false\n * @default tomorrow\n * @description 主题,支持 tomorrow、monokai、github\n */\n @property({\n attribute: false,\n })\n theme = \"tomorrow\";\n\n /**\n * @kind object\n * @required false\n * @default -\n * @description 设置选项,例如 tabSize、maxLines 等,参考[react-ace](https://github.com/securingsincity/react-ace/blob/master/docs/Ace.md)\n */\n @property({\n attribute: false,\n })\n setOptions: Record<string, any>;\n\n set editorProps(value: Record<string, any>) {\n this._editorProps = value;\n this._render();\n }\n\n set configProps(value: Record<string, any>) {\n this._configProps = value;\n this._render();\n }\n\n /**\n * @kind Record<string,any>\n * @required false\n * @default -\n * @description 代码编辑器的样式,一般不用设置\n */\n @property({\n attribute: false,\n })\n editorStyle: Record<string, any>;\n\n /**\n * @kind boolean\n * @required false\n * @default -\n * @description 是否必填,必填的时候如果没有值,编辑框会标红报错\n */\n @property({\n type: Boolean,\n })\n required: boolean;\n}\n\ncustomElements.define(\"presentational-bricks.code-editor\", CodeEditorElement);\n","ace.define(\"ace/mode/yaml_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 YamlHighlightRules = function() {\n this.$rules = {\n \"start\" : [\n {\n token : \"comment\",\n regex : \"#.*$\"\n }, {\n token : \"list.markup\",\n regex : /^(?:-{3}|\\.{3})\\s*(?=#|$)/\n }, {\n token : \"list.markup\",\n regex : /^\\s*[\\-?](?:$|\\s)/\n }, {\n token: \"constant\",\n regex: \"!![\\\\w//]+\"\n }, {\n token: \"constant.language\",\n regex: \"[&\\\\*][a-zA-Z0-9-_]+\"\n }, {\n token: [\"meta.tag\", \"keyword\"],\n regex: /^(\\s*\\w.*?)(:(?=\\s|$))/\n },{\n token: [\"meta.tag\", \"keyword\"],\n regex: /(\\w+?)(\\s*:(?=\\s|$))/\n }, {\n token : \"keyword.operator\",\n regex : \"<<\\\\w*:\\\\w*\"\n }, {\n token : \"keyword.operator\",\n regex : \"-\\\\s*(?=[{])\"\n }, {\n token : \"string\", // single line\n regex : '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]'\n }, {\n token : \"string\", // multi line string start\n regex : /[|>][-+\\d\\s]*$/,\n onMatch: function(val, state, stack, line) {\n var indent = /^\\s*/.exec(line)[0];\n if (stack.length < 1) {\n stack.push(this.next);\n } else {\n stack[0] = \"mlString\";\n }\n\n if (stack.length < 2) {\n stack.push(indent.length);\n }\n else {\n stack[1] = indent.length;\n }\n return this.token;\n },\n next : \"mlString\"\n }, {\n token : \"string\", // single quoted string\n regex : \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }, {\n token : \"constant.numeric\", // float\n regex : /(\\b|[+\\-\\.])[\\d_]+(?:(?:\\.[\\d_]*)?(?:[eE][+\\-]?[\\d_]+)?)(?=[^\\d-\\w]|$)/\n }, {\n token : \"constant.numeric\", // other number\n regex : /[+\\-]?\\.inf\\b|NaN\\b|0x[\\dA-Fa-f_]+|0b[10_]+/\n }, {\n token : \"constant.language.boolean\",\n regex : \"\\\\b(?:true|false|TRUE|FALSE|True|False|yes|no)\\\\b\"\n }, {\n token : \"paren.lparen\",\n regex : \"[[({]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\])}]\"\n }, {\n token : \"text\",\n regex : /[^\\s,:\\[\\]\\{\\}]+/\n }\n ],\n \"mlString\" : [\n {\n token : \"indent\",\n regex : /^\\s*$/\n }, {\n token : \"indent\",\n regex : /^\\s*/,\n onMatch: function(val, state, stack) {\n var curIndent = stack[1];\n\n if (curIndent >= val.length) {\n this.next = \"start\";\n stack.splice(0);\n }\n else {\n this.next = \"mlString\";\n }\n return this.token;\n },\n next : \"mlString\"\n }, {\n token : \"string\",\n regex : '.+'\n }\n ]};\n this.normalizeRules();\n\n};\n\noop.inherits(YamlHighlightRules, TextHighlightRules);\n\nexports.YamlHighlightRules = YamlHighlightRules;\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/coffee\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/folding/fold_mode\",\"ace/range\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../../lib/oop\");\nvar BaseFoldMode = acequire(\"./fold_mode\").FoldMode;\nvar Range = acequire(\"../../range\").Range;\n\nvar FoldMode = exports.FoldMode = function() {};\noop.inherits(FoldMode, BaseFoldMode);\n\n(function() {\n\n this.getFoldWidgetRange = function(session, foldStyle, row) {\n var range = this.indentationBlock(session, row);\n if (range)\n return range;\n\n var re = /\\S/;\n var line = session.getLine(row);\n var startLevel = line.search(re);\n if (startLevel == -1 || line[startLevel] != \"#\")\n return;\n\n var startColumn = line.length;\n var maxRow = session.getLength();\n var startRow = row;\n var endRow = row;\n\n while (++row < maxRow) {\n line = session.getLine(row);\n var level = line.search(re);\n\n if (level == -1)\n continue;\n\n if (line[level] != \"#\")\n break;\n\n endRow = row;\n }\n\n if (endRow > startRow) {\n var endColumn = session.getLine(endRow).length;\n return new Range(startRow, startColumn, endRow, endColumn);\n }\n };\n this.getFoldWidget = function(session, foldStyle, row) {\n var line = session.getLine(row);\n var indent = line.search(/\\S/);\n var next = session.getLine(row + 1);\n var prev = session.getLine(row - 1);\n var prevIndent = prev.search(/\\S/);\n var nextIndent = next.search(/\\S/);\n\n if (indent == -1) {\n session.foldWidgets[row - 1] = prevIndent!= -1 && prevIndent < nextIndent ? \"start\" : \"\";\n return \"\";\n }\n if (prevIndent == -1) {\n if (indent == nextIndent && line[indent] == \"#\" && next[indent] == \"#\") {\n session.foldWidgets[row - 1] = \"\";\n session.foldWidgets[row + 1] = \"\";\n return \"start\";\n }\n } else if (prevIndent == indent && line[indent] == \"#\" && prev[indent] == \"#\") {\n if (session.getLine(row - 2).search(/\\S/) == -1) {\n session.foldWidgets[row - 1] = \"start\";\n session.foldWidgets[row + 1] = \"\";\n return \"\";\n }\n }\n\n if (prevIndent!= -1 && prevIndent < indent)\n session.foldWidgets[row - 1] = \"start\";\n else\n session.foldWidgets[row - 1] = \"\";\n\n if (indent < nextIndent)\n return \"start\";\n else\n return \"\";\n };\n\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/yaml\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/yaml_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/mode/folding/coffee\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar YamlHighlightRules = acequire(\"./yaml_highlight_rules\").YamlHighlightRules;\nvar MatchingBraceOutdent = acequire(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar FoldMode = acequire(\"./folding/coffee\").FoldMode;\n\nvar Mode = function() {\n this.HighlightRules = YamlHighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.foldingRules = new FoldMode();\n this.$behaviour = this.$defaultBehaviour;\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n this.lineCommentStart = [\"#\", \"//\"];\n \n this.getNextLineIndent = function(state, line, tab) {\n var indent = this.$getIndent(line);\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\n this.$id = \"ace/mode/yaml\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n\n});\n","ace.define(\"ace/mode/sh_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 reservedKeywords = exports.reservedKeywords = (\n '!|{|}|case|do|done|elif|else|'+\n 'esac|fi|for|if|in|then|until|while|'+\n '&|;|export|local|read|typeset|unset|'+\n 'elif|select|set|function|declare|readonly'\n );\n\nvar languageConstructs = exports.languageConstructs = (\n '[|]|alias|bg|bind|break|builtin|'+\n 'cd|command|compgen|complete|continue|'+\n 'dirs|disown|echo|enable|eval|exec|'+\n 'exit|fc|fg|getopts|hash|help|history|'+\n 'jobs|kill|let|logout|popd|printf|pushd|'+\n 'pwd|return|set|shift|shopt|source|'+\n 'suspend|test|times|trap|type|ulimit|'+\n 'umask|unalias|wait'\n);\n\nvar ShHighlightRules = function() {\n var keywordMapper = this.createKeywordMapper({\n \"keyword\": reservedKeywords,\n \"support.function.builtin\": languageConstructs,\n \"invalid.deprecated\": \"debugger\"\n }, \"identifier\");\n\n var integer = \"(?:(?:[1-9]\\\\d*)|(?:0))\";\n\n var fraction = \"(?:\\\\.\\\\d+)\";\n var intPart = \"(?:\\\\d+)\";\n var pointFloat = \"(?:(?:\" + intPart + \"?\" + fraction + \")|(?:\" + intPart + \"\\\\.))\";\n var exponentFloat = \"(?:(?:\" + pointFloat + \"|\" + intPart + \")\" + \")\";\n var floatNumber = \"(?:\" + exponentFloat + \"|\" + pointFloat + \")\";\n var fileDescriptor = \"(?:&\" + intPart + \")\";\n\n var variableName = \"[a-zA-Z_][a-zA-Z0-9_]*\";\n var variable = \"(?:\" + variableName + \"(?==))\";\n\n var builtinVariable = \"(?:\\\\$(?:SHLVL|\\\\$|\\\\!|\\\\?))\";\n\n var func = \"(?:\" + variableName + \"\\\\s*\\\\(\\\\))\";\n\n this.$rules = {\n \"start\" : [{\n token : \"constant\",\n regex : /\\\\./\n }, {\n token : [\"text\", \"comment\"],\n regex : /(^|\\s)(#.*)$/\n }, {\n token : \"string.start\",\n regex : '\"',\n push : [{\n token : \"constant.language.escape\",\n regex : /\\\\(?:[$`\"\\\\]|$)/\n }, {\n include : \"variables\"\n }, {\n token : \"keyword.operator\",\n regex : /`/ // TODO highlight `\n }, {\n token : \"string.end\",\n regex : '\"',\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }]\n }, {\n token : \"string\",\n regex : \"\\\\$'\",\n push : [{\n token : \"constant.language.escape\",\n regex : /\\\\(?:[abeEfnrtv\\\\'\"]|x[a-fA-F\\d]{1,2}|u[a-fA-F\\d]{4}([a-fA-F\\d]{4})?|c.|\\d{1,3})/\n }, {\n token : \"string\",\n regex : \"'\",\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }]\n }, {\n regex : \"<<<\",\n token : \"keyword.operator\"\n }, {\n stateName: \"heredoc\",\n regex : \"(<<-?)(\\\\s*)(['\\\"`]?)([\\\\w\\\\-]+)(['\\\"`]?)\",\n onMatch : function(value, currentState, stack) {\n var next = value[2] == '-' ? \"indentedHeredoc\" : \"heredoc\";\n var tokens = value.split(this.splitRegex);\n stack.push(next, tokens[4]);\n return [\n {type:\"constant\", value: tokens[1]},\n {type:\"text\", value: tokens[2]},\n {type:\"string\", value: tokens[3]},\n {type:\"support.class\", value: tokens[4]},\n {type:\"string\", value: tokens[5]}\n ];\n },\n rules: {\n heredoc: [{\n onMatch: function(value, currentState, stack) {\n if (value === stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack[0] || \"start\";\n return \"support.class\";\n }\n this.next = \"\";\n return \"string\";\n },\n regex: \".*$\",\n next: \"start\"\n }],\n indentedHeredoc: [{\n token: \"string\",\n regex: \"^\\t+\"\n }, {\n onMatch: function(value, currentState, stack) {\n if (value === stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack[0] || \"start\";\n return \"support.class\";\n }\n this.next = \"\";\n return \"string\";\n },\n regex: \".*$\",\n next: \"start\"\n }]\n }\n }, {\n regex : \"$\",\n token : \"empty\",\n next : function(currentState, stack) {\n if (stack[0] === \"heredoc\" || stack[0] === \"indentedHeredoc\")\n return stack[0];\n return currentState;\n }\n }, {\n token : [\"keyword\", \"text\", \"text\", \"text\", \"variable\"],\n regex : /(declare|local|readonly)(\\s+)(?:(-[fixar]+)(\\s+))?([a-zA-Z_][a-zA-Z0-9_]*\\b)/\n }, {\n token : \"variable.language\",\n regex : builtinVariable\n }, {\n token : \"variable\",\n regex : variable\n }, {\n include : \"variables\"\n }, {\n token : \"support.function\",\n regex : func\n }, {\n token : \"support.function\",\n regex : fileDescriptor\n }, {\n token : \"string\", // ' string\n start : \"'\", end : \"'\"\n }, {\n token : \"constant.numeric\", // float\n regex : floatNumber\n }, {\n token : \"constant.numeric\", // integer\n regex : integer + \"\\\\b\"\n }, {\n token : keywordMapper,\n regex : \"[a-zA-Z_][a-zA-Z0-9_]*\\\\b\"\n }, {\n token : \"keyword.operator\",\n regex : \"\\\\+|\\\\-|\\\\*|\\\\*\\\\*|\\\\/|\\\\/\\\\/|~|<|>|<=|=>|=|!=|[%&|`]\"\n }, {\n token : \"punctuation.operator\",\n regex : \";\"\n }, {\n token : \"paren.lparen\",\n regex : \"[\\\\[\\\\(\\\\{]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\]]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\)\\\\}]\",\n next : \"pop\"\n }],\n variables: [{\n token : \"variable\",\n regex : /(\\$)(\\w+)/\n }, {\n token : [\"variable\", \"paren.lparen\"],\n regex : /(\\$)(\\()/,\n push : \"start\"\n }, {\n token : [\"variable\", \"paren.lparen\", \"keyword.operator\", \"variable\", \"keyword.operator\"],\n regex : /(\\$)(\\{)([#!]?)(\\w+|[*@#?\\-$!0_])(:[?+\\-=]?|##?|%%?|,,?\\/|\\^\\^?)?/,\n push : \"start\"\n }, {\n token : \"variable\",\n regex : /\\$[*@#?\\-$!0_]/\n }, {\n token : [\"variable\", \"paren.lparen\"],\n regex : /(\\$)(\\{)/,\n push : \"start\"\n }]\n };\n \n this.normalizeRules();\n};\n\noop.inherits(ShHighlightRules, TextHighlightRules);\n\nexports.ShHighlightRules = ShHighlightRules;\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/sh\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/sh_highlight_rules\",\"ace/range\",\"ace/mode/folding/cstyle\",\"ace/mode/behaviour/cstyle\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar ShHighlightRules = acequire(\"./sh_highlight_rules\").ShHighlightRules;\nvar Range = acequire(\"../range\").Range;\nvar CStyleFoldMode = acequire(\"./folding/cstyle\").FoldMode;\nvar CstyleBehaviour = acequire(\"./behaviour/cstyle\").CstyleBehaviour;\n\nvar Mode = function() {\n this.HighlightRules = ShHighlightRules;\n this.foldingRules = new CStyleFoldMode();\n this.$behaviour = new CstyleBehaviour();\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n \n this.lineCommentStart = \"#\";\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 var outdents = {\n \"pass\": 1,\n \"return\": 1,\n \"raise\": 1,\n \"break\": 1,\n \"continue\": 1\n };\n\n this.checkOutdent = function(state, line, input) {\n if (input !== \"\\r\\n\" && input !== \"\\r\" && input !== \"\\n\")\n return false;\n\n var tokens = this.getTokenizer().getLineTokens(line.trim(), state).tokens;\n\n if (!tokens)\n return false;\n do {\n var last = tokens.pop();\n } while (last && (last.type == \"comment\" || (last.type == \"text\" && last.value.match(/^\\s+$/))));\n\n if (!last)\n return false;\n\n return (last.type == \"keyword\" && outdents[last.value]);\n };\n\n this.autoOutdent = function(state, doc, row) {\n\n row += 1;\n var indent = this.$getIndent(doc.getLine(row));\n var tab = doc.getTabString();\n if (indent.slice(-tab.length) == tab)\n doc.remove(new Range(row, indent.length-tab.length, row, indent.length));\n };\n\n this.$id = \"ace/mode/sh\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n});\n","ace.define(\"ace/theme/github\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = false;\nexports.cssClass = \"ace-github\";\nexports.cssText = \"\\\n.ace-github .ace_gutter {\\\nbackground: #e8e8e8;\\\ncolor: #AAA;\\\n}\\\n.ace-github {\\\nbackground: #fff;\\\ncolor: #000;\\\n}\\\n.ace-github .ace_keyword {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_string {\\\ncolor: #D14;\\\n}\\\n.ace-github .ace_variable.ace_class {\\\ncolor: teal;\\\n}\\\n.ace-github .ace_constant.ace_numeric {\\\ncolor: #099;\\\n}\\\n.ace-github .ace_constant.ace_buildin {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_support.ace_function {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_comment {\\\ncolor: #998;\\\nfont-style: italic;\\\n}\\\n.ace-github .ace_variable.ace_language {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_paren {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_boolean {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_string.ace_regexp {\\\ncolor: #009926;\\\nfont-weight: normal;\\\n}\\\n.ace-github .ace_variable.ace_instance {\\\ncolor: teal;\\\n}\\\n.ace-github .ace_constant.ace_language {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_cursor {\\\ncolor: black;\\\n}\\\n.ace-github.ace_focus .ace_marker-layer .ace_active-line {\\\nbackground: rgb(255, 255, 204);\\\n}\\\n.ace-github .ace_marker-layer .ace_active-line {\\\nbackground: rgb(245, 245, 245);\\\n}\\\n.ace-github .ace_marker-layer .ace_selection {\\\nbackground: rgb(181, 213, 255);\\\n}\\\n.ace-github.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px white;\\\n}\\\n.ace-github.ace_nobold .ace_line > span {\\\nfont-weight: normal !important;\\\n}\\\n.ace-github .ace_marker-layer .ace_step {\\\nbackground: rgb(252, 255, 0);\\\n}\\\n.ace-github .ace_marker-layer .ace_stack {\\\nbackground: rgb(164, 229, 101);\\\n}\\\n.ace-github .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid rgb(192, 192, 192);\\\n}\\\n.ace-github .ace_gutter-active-line {\\\nbackground-color : rgba(0, 0, 0, 0.07);\\\n}\\\n.ace-github .ace_marker-layer .ace_selected-word {\\\nbackground: rgb(250, 250, 255);\\\nborder: 1px solid rgb(200, 200, 250);\\\n}\\\n.ace-github .ace_invisible {\\\ncolor: #BFBFBF\\\n}\\\n.ace-github .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #e8e8e8;\\\n}\\\n.ace-github .ace_indent-guide {\\\nbackground: url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\\\") right repeat-y;\\\n}\";\n\n var dom = acequire(\"../lib/dom\");\n dom.importCssString(exports.cssText, exports.cssClass);\n});\n","ace.define(\"ace/mode/json_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 JsonHighlightRules = function() {\n this.$rules = {\n \"start\" : [\n {\n token : \"variable\", // single line\n regex : '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]\\\\s*(?=:)'\n }, {\n token : \"string\", // single line\n regex : '\"',\n next : \"string\"\n }, {\n token : \"constant.numeric\", // hex\n regex : \"0[xX][0-9a-fA-F]+\\\\b\"\n }, {\n token : \"constant.numeric\", // float\n regex : \"[+-]?\\\\d+(?:(?:\\\\.\\\\d*)?(?:[eE][+-]?\\\\d+)?)?\\\\b\"\n }, {\n token : \"constant.language.boolean\",\n regex : \"(?:true|false)\\\\b\"\n }, {\n token : \"text\", // single quoted strings are not allowed\n regex : \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }, {\n token : \"comment\", // comments are not allowed, but who cares?\n regex : \"\\\\/\\\\/.*$\"\n }, {\n token : \"comment.start\", // comments are not allowed, but who cares?\n regex : \"\\\\/\\\\*\",\n next : \"comment\"\n }, {\n token : \"paren.lparen\",\n regex : \"[[({]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\])}]\"\n }, {\n token : \"text\",\n regex : \"\\\\s+\"\n }\n ],\n \"string\" : [\n {\n token : \"constant.language.escape\",\n regex : /\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|[\"\\\\\\/bfnrt])/\n }, {\n token : \"string\",\n regex : '\"|$',\n next : \"start\"\n }, {\n defaultToken : \"string\"\n }\n ],\n \"comment\" : [\n {\n token : \"comment.end\", // comments are not allowed, but who cares?\n regex : \"\\\\*\\\\/\",\n next : \"start\"\n }, {\n defaultToken: \"comment\"\n }\n ]\n };\n \n};\n\noop.inherits(JsonHighlightRules, TextHighlightRules);\n\nexports.JsonHighlightRules = JsonHighlightRules;\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/json\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/json_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/mode/behaviour/cstyle\",\"ace/mode/folding/cstyle\",\"ace/worker/worker_client\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar HighlightRules = acequire(\"./json_highlight_rules\").JsonHighlightRules;\nvar MatchingBraceOutdent = acequire(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar CstyleBehaviour = acequire(\"./behaviour/cstyle\").CstyleBehaviour;\nvar CStyleFoldMode = acequire(\"./folding/cstyle\").FoldMode;\nvar WorkerClient = acequire(\"../worker/worker_client\").WorkerClient;\n\nvar Mode = function() {\n this.HighlightRules = HighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.$behaviour = new CstyleBehaviour();\n this.foldingRules = new CStyleFoldMode();\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n this.getNextLineIndent = function(state, line, tab) {\n var indent = this.$getIndent(line);\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.createWorker = function(session) {\n var worker = new WorkerClient([\"ace\"], require(\"../worker/json\"), \"JsonWorker\");\n worker.attachToDocument(session.getDocument());\n\n worker.on(\"annotate\", function(e) {\n session.setAnnotations(e.data);\n });\n\n worker.on(\"terminate\", function() {\n session.clearAnnotations();\n });\n\n return worker;\n };\n\n\n this.$id = \"ace/mode/json\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n});\n","module.exports = (__webpack_require__(\"bricks/presentational-bricks:JYlb\"))(\"lc5D\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///./node_modules/brace/theme/tomorrow.js","webpack:///./node_modules/brace/worker/json.js","webpack:///./bricks/presentational-bricks/src/code-editor/index.module.css","webpack:///./node_modules/brace/theme/monokai.js","webpack:///./bricks/presentational-bricks/src/code-editor/index.module.css?ab33","webpack:///./bricks/presentational-bricks/src/code-editor/CodeEditor.tsx","webpack:///./bricks/presentational-bricks/src/code-editor/index.tsx","webpack:///./node_modules/brace/mode/yaml.js","webpack:///./node_modules/brace/mode/sh.js","webpack:///./node_modules/brace/theme/github.js","webpack:///./node_modules/brace/mode/json.js","webpack:///delegated ./node_modules/react-ace/lib/index.js from dll-reference DllOfAce"],"names":["ace","define","acequire","exports","module","isDark","cssClass","cssText","importCssString","id","src","___CSS_LOADER_EXPORT___","i","push","locals","options","CodeEditor","theme","mode","setOptions","editorProps","dataSource","configProps","handleChange","handleBlur","handleErrorChange","required","editorStyle","value","setValue","useState","hasError","setHasError","handleOnChange","newValue","useEffect","name","style","onChange","onValidate","err","requiredError","find","onBlur","$blockScrolling","Infinity","className","classNames","aceContainer","CodeEditorElement","event","type","bubbles","property","attribute","console","warn","this","display","_render","ReactDOM","unmountComponentAtNode","codeChange","emit","codeErrorChang","editorBlur","isConnected","mutableProps","fields","get","render","_editorProps","_configProps","_handleChange","_handleErrorChange","_handleBlur","Boolean","UpdatingElement","customElements","oop","TextHighlightRules","YamlHighlightRules","$rules","token","regex","onMatch","val","state","stack","line","indent","exec","length","next","splice","normalizeRules","inherits","Range","MatchingBraceOutdent","checkOutdent","input","test","autoOutdent","doc","row","match","getLine","column","openBracePos","findMatchingBracket","$getIndent","replace","call","prototype","BaseFoldMode","FoldMode","getFoldWidgetRange","session","foldStyle","range","indentationBlock","re","startLevel","search","startColumn","maxRow","getLength","startRow","endRow","level","endColumn","getFoldWidget","prev","prevIndent","nextIndent","foldWidgets","TextMode","Mode","HighlightRules","$outdent","foldingRules","$behaviour","$defaultBehaviour","lineCommentStart","getNextLineIndent","tab","$id","reservedKeywords","languageConstructs","ShHighlightRules","keywordMapper","createKeywordMapper","include","defaultToken","stateName","currentState","tokens","split","splitRegex","rules","heredoc","shift","indentedHeredoc","start","end","integer","variables","commentRegex","foldingStartMarker","RegExp","source","foldingStopMarker","singleLineBlockCommentRe","tripleStarBlockCommentRe","startRegionRe","_getFoldWidgetBase","fw","forceMultiline","getCommentRegionBlock","index","openingBracketBlock","getCommentFoldRange","isMultiLine","getSectionRange","closingBracketBlock","startIndent","subRange","depth","m","CStyleFoldMode","CstyleBehaviour","getTokenizer","getLineTokens","outdents","trim","last","pop","getTabString","slice","remove","JsonHighlightRules","WorkerClient","createWorker","worker","attachToDocument","getDocument","on","e","setAnnotations","data","clearAnnotations","__webpack_require__"],"mappings":"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","file":"lazy-bricks/code-editor.dd92.6a96047b.js","sourcesContent":["ace.define(\"ace/theme/tomorrow\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = false;\nexports.cssClass = \"ace-tomorrow\";\nexports.cssText = \".ace-tomorrow .ace_gutter {\\\nbackground: #f6f6f6;\\\ncolor: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #f6f6f6\\\n}\\\n.ace-tomorrow {\\\nbackground-color: #FFFFFF;\\\ncolor: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_cursor {\\\ncolor: #AEAFAD\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_selection {\\\nbackground: #D6D6D6\\\n}\\\n.ace-tomorrow.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px #FFFFFF;\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_step {\\\nbackground: rgb(255, 255, 0)\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid #D1D1D1\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_active-line {\\\nbackground: #EFEFEF\\\n}\\\n.ace-tomorrow .ace_gutter-active-line {\\\nbackground-color : #dcdcdc\\\n}\\\n.ace-tomorrow .ace_marker-layer .ace_selected-word {\\\nborder: 1px solid #D6D6D6\\\n}\\\n.ace-tomorrow .ace_invisible {\\\ncolor: #D1D1D1\\\n}\\\n.ace-tomorrow .ace_keyword,\\\n.ace-tomorrow .ace_meta,\\\n.ace-tomorrow .ace_storage,\\\n.ace-tomorrow .ace_storage.ace_type,\\\n.ace-tomorrow .ace_support.ace_type {\\\ncolor: #8959A8\\\n}\\\n.ace-tomorrow .ace_keyword.ace_operator {\\\ncolor: #3E999F\\\n}\\\n.ace-tomorrow .ace_constant.ace_character,\\\n.ace-tomorrow .ace_constant.ace_language,\\\n.ace-tomorrow .ace_constant.ace_numeric,\\\n.ace-tomorrow .ace_keyword.ace_other.ace_unit,\\\n.ace-tomorrow .ace_support.ace_constant,\\\n.ace-tomorrow .ace_variable.ace_parameter {\\\ncolor: #F5871F\\\n}\\\n.ace-tomorrow .ace_constant.ace_other {\\\ncolor: #666969\\\n}\\\n.ace-tomorrow .ace_invalid {\\\ncolor: #FFFFFF;\\\nbackground-color: #C82829\\\n}\\\n.ace-tomorrow .ace_invalid.ace_deprecated {\\\ncolor: #FFFFFF;\\\nbackground-color: #8959A8\\\n}\\\n.ace-tomorrow .ace_fold {\\\nbackground-color: #4271AE;\\\nborder-color: #4D4D4C\\\n}\\\n.ace-tomorrow .ace_entity.ace_name.ace_function,\\\n.ace-tomorrow .ace_support.ace_function,\\\n.ace-tomorrow .ace_variable {\\\ncolor: #4271AE\\\n}\\\n.ace-tomorrow .ace_support.ace_class,\\\n.ace-tomorrow .ace_support.ace_type {\\\ncolor: #C99E00\\\n}\\\n.ace-tomorrow .ace_heading,\\\n.ace-tomorrow .ace_markup.ace_heading,\\\n.ace-tomorrow .ace_string {\\\ncolor: #718C00\\\n}\\\n.ace-tomorrow .ace_entity.ace_name.ace_tag,\\\n.ace-tomorrow .ace_entity.ace_other.ace_attribute-name,\\\n.ace-tomorrow .ace_meta.ace_tag,\\\n.ace-tomorrow .ace_string.ace_regexp,\\\n.ace-tomorrow .ace_variable {\\\ncolor: #C82829\\\n}\\\n.ace-tomorrow .ace_comment {\\\ncolor: #8E908C\\\n}\\\n.ace-tomorrow .ace_indent-guide {\\\nbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==) right repeat-y\\\n}\";\n\nvar dom = acequire(\"../lib/dom\");\ndom.importCssString(exports.cssText, exports.cssClass);\n});\n","module.exports.id = 'ace/mode/json_worker';\nmodule.exports.src = \"\\\"no use strict\\\";!function(window){function resolveModuleId(id,paths){for(var testPath=id,tail=\\\"\\\";testPath;){var alias=paths[testPath];if(\\\"string\\\"==typeof alias)return alias+tail;if(alias)return alias.location.replace(/\\\\/*$/,\\\"/\\\")+(tail||alias.main||alias.name);if(alias===!1)return\\\"\\\";var i=testPath.lastIndexOf(\\\"/\\\");if(-1===i)break;tail=testPath.substr(i)+tail,testPath=testPath.slice(0,i)}return id}if(!(void 0!==window.window&&window.document||window.acequire&&window.define)){window.console||(window.console=function(){var msgs=Array.prototype.slice.call(arguments,0);postMessage({type:\\\"log\\\",data:msgs})},window.console.error=window.console.warn=window.console.log=window.console.trace=window.console),window.window=window,window.ace=window,window.onerror=function(message,file,line,col,err){postMessage({type:\\\"error\\\",data:{message:message,data:err.data,file:file,line:line,col:col,stack:err.stack}})},window.normalizeModule=function(parentId,moduleName){if(-1!==moduleName.indexOf(\\\"!\\\")){var chunks=moduleName.split(\\\"!\\\");return window.normalizeModule(parentId,chunks[0])+\\\"!\\\"+window.normalizeModule(parentId,chunks[1])}if(\\\".\\\"==moduleName.charAt(0)){var base=parentId.split(\\\"/\\\").slice(0,-1).join(\\\"/\\\");for(moduleName=(base?base+\\\"/\\\":\\\"\\\")+moduleName;-1!==moduleName.indexOf(\\\".\\\")&&previous!=moduleName;){var previous=moduleName;moduleName=moduleName.replace(/^\\\\.\\\\//,\\\"\\\").replace(/\\\\/\\\\.\\\\//,\\\"/\\\").replace(/[^\\\\/]+\\\\/\\\\.\\\\.\\\\//,\\\"\\\")}}return moduleName},window.acequire=function acequire(parentId,id){if(id||(id=parentId,parentId=null),!id.charAt)throw Error(\\\"worker.js acequire() accepts only (parentId, id) as arguments\\\");id=window.normalizeModule(parentId,id);var module=window.acequire.modules[id];if(module)return module.initialized||(module.initialized=!0,module.exports=module.factory().exports),module.exports;if(!window.acequire.tlns)return console.log(\\\"unable to load \\\"+id);var path=resolveModuleId(id,window.acequire.tlns);return\\\".js\\\"!=path.slice(-3)&&(path+=\\\".js\\\"),window.acequire.id=id,window.acequire.modules[id]={},importScripts(path),window.acequire(parentId,id)},window.acequire.modules={},window.acequire.tlns={},window.define=function(id,deps,factory){if(2==arguments.length?(factory=deps,\\\"string\\\"!=typeof id&&(deps=id,id=window.acequire.id)):1==arguments.length&&(factory=id,deps=[],id=window.acequire.id),\\\"function\\\"!=typeof factory)return window.acequire.modules[id]={exports:factory,initialized:!0},void 0;deps.length||(deps=[\\\"require\\\",\\\"exports\\\",\\\"module\\\"]);var req=function(childId){return window.acequire(id,childId)};window.acequire.modules[id]={exports:{},factory:function(){var module=this,returnExports=factory.apply(this,deps.map(function(dep){switch(dep){case\\\"require\\\":return req;case\\\"exports\\\":return module.exports;case\\\"module\\\":return module;default:return req(dep)}}));return returnExports&&(module.exports=returnExports),module}}},window.define.amd={},acequire.tlns={},window.initBaseUrls=function(topLevelNamespaces){for(var i in topLevelNamespaces)acequire.tlns[i]=topLevelNamespaces[i]},window.initSender=function(){var EventEmitter=window.acequire(\\\"ace/lib/event_emitter\\\").EventEmitter,oop=window.acequire(\\\"ace/lib/oop\\\"),Sender=function(){};return function(){oop.implement(this,EventEmitter),this.callback=function(data,callbackId){postMessage({type:\\\"call\\\",id:callbackId,data:data})},this.emit=function(name,data){postMessage({type:\\\"event\\\",name:name,data:data})}}.call(Sender.prototype),new Sender};var main=window.main=null,sender=window.sender=null;window.onmessage=function(e){var msg=e.data;if(msg.event&&sender)sender._signal(msg.event,msg.data);else if(msg.command)if(main[msg.command])main[msg.command].apply(main,msg.args);else{if(!window[msg.command])throw Error(\\\"Unknown command:\\\"+msg.command);window[msg.command].apply(window,msg.args)}else if(msg.init){window.initBaseUrls(msg.tlns),acequire(\\\"ace/lib/es5-shim\\\"),sender=window.sender=window.initSender();var clazz=acequire(msg.module)[msg.classname];main=window.main=new clazz(sender)}}}}(this),ace.define(\\\"ace/lib/oop\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.inherits=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})},exports.mixin=function(obj,mixin){for(var key in mixin)obj[key]=mixin[key];return obj},exports.implement=function(proto,mixin){exports.mixin(proto,mixin)}}),ace.define(\\\"ace/range\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";var comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},Range=function(startRow,startColumn,endRow,endColumn){this.start={row:startRow,column:startColumn},this.end={row:endRow,column:endColumn}};(function(){this.isEqual=function(range){return this.start.row===range.start.row&&this.end.row===range.end.row&&this.start.column===range.start.column&&this.end.column===range.end.column},this.toString=function(){return\\\"Range: [\\\"+this.start.row+\\\"/\\\"+this.start.column+\\\"] -> [\\\"+this.end.row+\\\"/\\\"+this.end.column+\\\"]\\\"},this.contains=function(row,column){return 0==this.compare(row,column)},this.compareRange=function(range){var cmp,end=range.end,start=range.start;return cmp=this.compare(end.row,end.column),1==cmp?(cmp=this.compare(start.row,start.column),1==cmp?2:0==cmp?1:0):-1==cmp?-2:(cmp=this.compare(start.row,start.column),-1==cmp?-1:1==cmp?42:0)},this.comparePoint=function(p){return this.compare(p.row,p.column)},this.containsRange=function(range){return 0==this.comparePoint(range.start)&&0==this.comparePoint(range.end)},this.intersects=function(range){var cmp=this.compareRange(range);return-1==cmp||0==cmp||1==cmp},this.isEnd=function(row,column){return this.end.row==row&&this.end.column==column},this.isStart=function(row,column){return this.start.row==row&&this.start.column==column},this.setStart=function(row,column){\\\"object\\\"==typeof row?(this.start.column=row.column,this.start.row=row.row):(this.start.row=row,this.start.column=column)},this.setEnd=function(row,column){\\\"object\\\"==typeof row?(this.end.column=row.column,this.end.row=row.row):(this.end.row=row,this.end.column=column)},this.inside=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)||this.isStart(row,column)?!1:!0:!1},this.insideStart=function(row,column){return 0==this.compare(row,column)?this.isEnd(row,column)?!1:!0:!1},this.insideEnd=function(row,column){return 0==this.compare(row,column)?this.isStart(row,column)?!1:!0:!1},this.compare=function(row,column){return this.isMultiLine()||row!==this.start.row?this.start.row>row?-1:row>this.end.row?1:this.start.row===row?column>=this.start.column?0:-1:this.end.row===row?this.end.column>=column?0:1:0:this.start.column>column?-1:column>this.end.column?1:0},this.compareStart=function(row,column){return this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.compareEnd=function(row,column){return this.end.row==row&&this.end.column==column?1:this.compare(row,column)},this.compareInside=function(row,column){return this.end.row==row&&this.end.column==column?1:this.start.row==row&&this.start.column==column?-1:this.compare(row,column)},this.clipRows=function(firstRow,lastRow){if(this.end.row>lastRow)var end={row:lastRow+1,column:0};else if(firstRow>this.end.row)var end={row:firstRow,column:0};if(this.start.row>lastRow)var start={row:lastRow+1,column:0};else if(firstRow>this.start.row)var start={row:firstRow,column:0};return Range.fromPoints(start||this.start,end||this.end)},this.extend=function(row,column){var cmp=this.compare(row,column);if(0==cmp)return this;if(-1==cmp)var start={row:row,column:column};else var end={row:row,column:column};return Range.fromPoints(start||this.start,end||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return Range.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new Range(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new Range(this.start.row,0,this.end.row,0)},this.toScreenRange=function(session){var screenPosStart=session.documentToScreenPosition(this.start),screenPosEnd=session.documentToScreenPosition(this.end);return new Range(screenPosStart.row,screenPosStart.column,screenPosEnd.row,screenPosEnd.column)},this.moveBy=function(row,column){this.start.row+=row,this.start.column+=column,this.end.row+=row,this.end.column+=column}}).call(Range.prototype),Range.fromPoints=function(start,end){return new Range(start.row,start.column,end.row,end.column)},Range.comparePoints=comparePoints,Range.comparePoints=function(p1,p2){return p1.row-p2.row||p1.column-p2.column},exports.Range=Range}),ace.define(\\\"ace/apply_delta\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.applyDelta=function(docLines,delta){var row=delta.start.row,startColumn=delta.start.column,line=docLines[row]||\\\"\\\";switch(delta.action){case\\\"insert\\\":var lines=delta.lines;if(1===lines.length)docLines[row]=line.substring(0,startColumn)+delta.lines[0]+line.substring(startColumn);else{var args=[row,1].concat(delta.lines);docLines.splice.apply(docLines,args),docLines[row]=line.substring(0,startColumn)+docLines[row],docLines[row+delta.lines.length-1]+=line.substring(startColumn)}break;case\\\"remove\\\":var endColumn=delta.end.column,endRow=delta.end.row;row===endRow?docLines[row]=line.substring(0,startColumn)+line.substring(endColumn):docLines.splice(row,endRow-row+1,line.substring(0,startColumn)+docLines[endRow].substring(endColumn))}}}),ace.define(\\\"ace/lib/event_emitter\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";var EventEmitter={},stopPropagation=function(){this.propagationStopped=!0},preventDefault=function(){this.defaultPrevented=!0};EventEmitter._emit=EventEmitter._dispatchEvent=function(eventName,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var listeners=this._eventRegistry[eventName]||[],defaultHandler=this._defaultHandlers[eventName];if(listeners.length||defaultHandler){\\\"object\\\"==typeof e&&e||(e={}),e.type||(e.type=eventName),e.stopPropagation||(e.stopPropagation=stopPropagation),e.preventDefault||(e.preventDefault=preventDefault),listeners=listeners.slice();for(var i=0;listeners.length>i&&(listeners[i](e,this),!e.propagationStopped);i++);return defaultHandler&&!e.defaultPrevented?defaultHandler(e,this):void 0}},EventEmitter._signal=function(eventName,e){var listeners=(this._eventRegistry||{})[eventName];if(listeners){listeners=listeners.slice();for(var i=0;listeners.length>i;i++)listeners[i](e,this)}},EventEmitter.once=function(eventName,callback){var _self=this;callback&&this.addEventListener(eventName,function newCallback(){_self.removeEventListener(eventName,newCallback),callback.apply(null,arguments)})},EventEmitter.setDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers||(handlers=this._defaultHandlers={_disabled_:{}}),handlers[eventName]){var old=handlers[eventName],disabled=handlers._disabled_[eventName];disabled||(handlers._disabled_[eventName]=disabled=[]),disabled.push(old);var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}handlers[eventName]=callback},EventEmitter.removeDefaultHandler=function(eventName,callback){var handlers=this._defaultHandlers;if(handlers){var disabled=handlers._disabled_[eventName];if(handlers[eventName]==callback)handlers[eventName],disabled&&this.setDefaultHandler(eventName,disabled.pop());else if(disabled){var i=disabled.indexOf(callback);-1!=i&&disabled.splice(i,1)}}},EventEmitter.on=EventEmitter.addEventListener=function(eventName,callback,capturing){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];return listeners||(listeners=this._eventRegistry[eventName]=[]),-1==listeners.indexOf(callback)&&listeners[capturing?\\\"unshift\\\":\\\"push\\\"](callback),callback},EventEmitter.off=EventEmitter.removeListener=EventEmitter.removeEventListener=function(eventName,callback){this._eventRegistry=this._eventRegistry||{};var listeners=this._eventRegistry[eventName];if(listeners){var index=listeners.indexOf(callback);-1!==index&&listeners.splice(index,1)}},EventEmitter.removeAllListeners=function(eventName){this._eventRegistry&&(this._eventRegistry[eventName]=[])},exports.EventEmitter=EventEmitter}),ace.define(\\\"ace/anchor\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/lib/event_emitter\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"./lib/oop\\\"),EventEmitter=acequire(\\\"./lib/event_emitter\\\").EventEmitter,Anchor=exports.Anchor=function(doc,row,column){this.$onChange=this.onChange.bind(this),this.attach(doc),column===void 0?this.setPosition(row.row,row.column):this.setPosition(row,column)};(function(){function $pointsInOrder(point1,point2,equalPointsInOrder){var bColIsAfter=equalPointsInOrder?point1.column<=point2.column:point1.column<point2.column;return point1.row<point2.row||point1.row==point2.row&&bColIsAfter}function $getTransformedPoint(delta,point,moveIfEqual){var deltaIsInsert=\\\"insert\\\"==delta.action,deltaRowShift=(deltaIsInsert?1:-1)*(delta.end.row-delta.start.row),deltaColShift=(deltaIsInsert?1:-1)*(delta.end.column-delta.start.column),deltaStart=delta.start,deltaEnd=deltaIsInsert?deltaStart:delta.end;return $pointsInOrder(point,deltaStart,moveIfEqual)?{row:point.row,column:point.column}:$pointsInOrder(deltaEnd,point,!moveIfEqual)?{row:point.row+deltaRowShift,column:point.column+(point.row==deltaEnd.row?deltaColShift:0)}:{row:deltaStart.row,column:deltaStart.column}}oop.implement(this,EventEmitter),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(delta){if(!(delta.start.row==delta.end.row&&delta.start.row!=this.row||delta.start.row>this.row)){var point=$getTransformedPoint(delta,{row:this.row,column:this.column},this.$insertRight);this.setPosition(point.row,point.column,!0)}},this.setPosition=function(row,column,noClip){var pos;if(pos=noClip?{row:row,column:column}:this.$clipPositionToDocument(row,column),this.row!=pos.row||this.column!=pos.column){var old={row:this.row,column:this.column};this.row=pos.row,this.column=pos.column,this._signal(\\\"change\\\",{old:old,value:pos})}},this.detach=function(){this.document.removeEventListener(\\\"change\\\",this.$onChange)},this.attach=function(doc){this.document=doc||this.document,this.document.on(\\\"change\\\",this.$onChange)},this.$clipPositionToDocument=function(row,column){var pos={};return row>=this.document.getLength()?(pos.row=Math.max(0,this.document.getLength()-1),pos.column=this.document.getLine(pos.row).length):0>row?(pos.row=0,pos.column=0):(pos.row=row,pos.column=Math.min(this.document.getLine(pos.row).length,Math.max(0,column))),0>column&&(pos.column=0),pos}}).call(Anchor.prototype)}),ace.define(\\\"ace/document\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/apply_delta\\\",\\\"ace/lib/event_emitter\\\",\\\"ace/range\\\",\\\"ace/anchor\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"./lib/oop\\\"),applyDelta=acequire(\\\"./apply_delta\\\").applyDelta,EventEmitter=acequire(\\\"./lib/event_emitter\\\").EventEmitter,Range=acequire(\\\"./range\\\").Range,Anchor=acequire(\\\"./anchor\\\").Anchor,Document=function(textOrLines){this.$lines=[\\\"\\\"],0===textOrLines.length?this.$lines=[\\\"\\\"]:Array.isArray(textOrLines)?this.insertMergedLines({row:0,column:0},textOrLines):this.insert({row:0,column:0},textOrLines)};(function(){oop.implement(this,EventEmitter),this.setValue=function(text){var len=this.getLength()-1;this.remove(new Range(0,0,len,this.getLine(len).length)),this.insert({row:0,column:0},text)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(row,column){return new Anchor(this,row,column)},this.$split=0===\\\"aaa\\\".split(/a/).length?function(text){return text.replace(/\\\\r\\\\n|\\\\r/g,\\\"\\\\n\\\").split(\\\"\\\\n\\\")}:function(text){return text.split(/\\\\r\\\\n|\\\\r|\\\\n/)},this.$detectNewLine=function(text){var match=text.match(/^.*?(\\\\r\\\\n|\\\\r|\\\\n)/m);this.$autoNewLine=match?match[1]:\\\"\\\\n\\\",this._signal(\\\"changeNewLineMode\\\")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case\\\"windows\\\":return\\\"\\\\r\\\\n\\\";case\\\"unix\\\":return\\\"\\\\n\\\";default:return this.$autoNewLine||\\\"\\\\n\\\"}},this.$autoNewLine=\\\"\\\",this.$newLineMode=\\\"auto\\\",this.setNewLineMode=function(newLineMode){this.$newLineMode!==newLineMode&&(this.$newLineMode=newLineMode,this._signal(\\\"changeNewLineMode\\\"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(text){return\\\"\\\\r\\\\n\\\"==text||\\\"\\\\r\\\"==text||\\\"\\\\n\\\"==text},this.getLine=function(row){return this.$lines[row]||\\\"\\\"},this.getLines=function(firstRow,lastRow){return this.$lines.slice(firstRow,lastRow+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(range){return this.getLinesForRange(range).join(this.getNewLineCharacter())},this.getLinesForRange=function(range){var lines;if(range.start.row===range.end.row)lines=[this.getLine(range.start.row).substring(range.start.column,range.end.column)];else{lines=this.getLines(range.start.row,range.end.row),lines[0]=(lines[0]||\\\"\\\").substring(range.start.column);var l=lines.length-1;range.end.row-range.start.row==l&&(lines[l]=lines[l].substring(0,range.end.column))}return lines},this.insertLines=function(row,lines){return console.warn(\\\"Use of document.insertLines is deprecated. Use the insertFullLines method instead.\\\"),this.insertFullLines(row,lines)},this.removeLines=function(firstRow,lastRow){return console.warn(\\\"Use of document.removeLines is deprecated. Use the removeFullLines method instead.\\\"),this.removeFullLines(firstRow,lastRow)},this.insertNewLine=function(position){return console.warn(\\\"Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead.\\\"),this.insertMergedLines(position,[\\\"\\\",\\\"\\\"])},this.insert=function(position,text){return 1>=this.getLength()&&this.$detectNewLine(text),this.insertMergedLines(position,this.$split(text))},this.insertInLine=function(position,text){var start=this.clippedPos(position.row,position.column),end=this.pos(position.row,position.column+text.length);return this.applyDelta({start:start,end:end,action:\\\"insert\\\",lines:[text]},!0),this.clonePos(end)},this.clippedPos=function(row,column){var length=this.getLength();void 0===row?row=length:0>row?row=0:row>=length&&(row=length-1,column=void 0);var line=this.getLine(row);return void 0==column&&(column=line.length),column=Math.min(Math.max(column,0),line.length),{row:row,column:column}},this.clonePos=function(pos){return{row:pos.row,column:pos.column}},this.pos=function(row,column){return{row:row,column:column}},this.$clipPosition=function(position){var length=this.getLength();return position.row>=length?(position.row=Math.max(0,length-1),position.column=this.getLine(length-1).length):(position.row=Math.max(0,position.row),position.column=Math.min(Math.max(position.column,0),this.getLine(position.row).length)),position},this.insertFullLines=function(row,lines){row=Math.min(Math.max(row,0),this.getLength());var column=0;this.getLength()>row?(lines=lines.concat([\\\"\\\"]),column=0):(lines=[\\\"\\\"].concat(lines),row--,column=this.$lines[row].length),this.insertMergedLines({row:row,column:column},lines)},this.insertMergedLines=function(position,lines){var start=this.clippedPos(position.row,position.column),end={row:start.row+lines.length-1,column:(1==lines.length?start.column:0)+lines[lines.length-1].length};return this.applyDelta({start:start,end:end,action:\\\"insert\\\",lines:lines}),this.clonePos(end)},this.remove=function(range){var start=this.clippedPos(range.start.row,range.start.column),end=this.clippedPos(range.end.row,range.end.column);return this.applyDelta({start:start,end:end,action:\\\"remove\\\",lines:this.getLinesForRange({start:start,end:end})}),this.clonePos(start)},this.removeInLine=function(row,startColumn,endColumn){var start=this.clippedPos(row,startColumn),end=this.clippedPos(row,endColumn);return this.applyDelta({start:start,end:end,action:\\\"remove\\\",lines:this.getLinesForRange({start:start,end:end})},!0),this.clonePos(start)},this.removeFullLines=function(firstRow,lastRow){firstRow=Math.min(Math.max(0,firstRow),this.getLength()-1),lastRow=Math.min(Math.max(0,lastRow),this.getLength()-1);var deleteFirstNewLine=lastRow==this.getLength()-1&&firstRow>0,deleteLastNewLine=this.getLength()-1>lastRow,startRow=deleteFirstNewLine?firstRow-1:firstRow,startCol=deleteFirstNewLine?this.getLine(startRow).length:0,endRow=deleteLastNewLine?lastRow+1:lastRow,endCol=deleteLastNewLine?0:this.getLine(endRow).length,range=new Range(startRow,startCol,endRow,endCol),deletedLines=this.$lines.slice(firstRow,lastRow+1);return this.applyDelta({start:range.start,end:range.end,action:\\\"remove\\\",lines:this.getLinesForRange(range)}),deletedLines},this.removeNewLine=function(row){this.getLength()-1>row&&row>=0&&this.applyDelta({start:this.pos(row,this.getLine(row).length),end:this.pos(row+1,0),action:\\\"remove\\\",lines:[\\\"\\\",\\\"\\\"]})},this.replace=function(range,text){if(range instanceof Range||(range=Range.fromPoints(range.start,range.end)),0===text.length&&range.isEmpty())return range.start;if(text==this.getTextRange(range))return range.end;this.remove(range);var end;return end=text?this.insert(range.start,text):range.start},this.applyDeltas=function(deltas){for(var i=0;deltas.length>i;i++)this.applyDelta(deltas[i])},this.revertDeltas=function(deltas){for(var i=deltas.length-1;i>=0;i--)this.revertDelta(deltas[i])},this.applyDelta=function(delta,doNotValidate){var isInsert=\\\"insert\\\"==delta.action;(isInsert?1>=delta.lines.length&&!delta.lines[0]:!Range.comparePoints(delta.start,delta.end))||(isInsert&&delta.lines.length>2e4&&this.$splitAndapplyLargeDelta(delta,2e4),applyDelta(this.$lines,delta,doNotValidate),this._signal(\\\"change\\\",delta))},this.$splitAndapplyLargeDelta=function(delta,MAX){for(var lines=delta.lines,l=lines.length,row=delta.start.row,column=delta.start.column,from=0,to=0;;){from=to,to+=MAX-1;var chunk=lines.slice(from,to);if(to>l){delta.lines=chunk,delta.start.row=row+from,delta.start.column=column;break}chunk.push(\\\"\\\"),this.applyDelta({start:this.pos(row+from,column),end:this.pos(row+to,column=0),action:delta.action,lines:chunk},!0)}},this.revertDelta=function(delta){this.applyDelta({start:this.clonePos(delta.start),end:this.clonePos(delta.end),action:\\\"insert\\\"==delta.action?\\\"remove\\\":\\\"insert\\\",lines:delta.lines.slice()})},this.indexToPosition=function(index,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,i=startRow||0,l=lines.length;l>i;i++)if(index-=lines[i].length+newlineLength,0>index)return{row:i,column:index+lines[i].length+newlineLength};return{row:l-1,column:lines[l-1].length}},this.positionToIndex=function(pos,startRow){for(var lines=this.$lines||this.getAllLines(),newlineLength=this.getNewLineCharacter().length,index=0,row=Math.min(pos.row,lines.length),i=startRow||0;row>i;++i)index+=lines[i].length+newlineLength;return index+pos.column}}).call(Document.prototype),exports.Document=Document}),ace.define(\\\"ace/lib/lang\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(acequire,exports){\\\"use strict\\\";exports.last=function(a){return a[a.length-1]},exports.stringReverse=function(string){return string.split(\\\"\\\").reverse().join(\\\"\\\")},exports.stringRepeat=function(string,count){for(var result=\\\"\\\";count>0;)1&count&&(result+=string),(count>>=1)&&(string+=string);return result};var trimBeginRegexp=/^\\\\s\\\\s*/,trimEndRegexp=/\\\\s\\\\s*$/;exports.stringTrimLeft=function(string){return string.replace(trimBeginRegexp,\\\"\\\")},exports.stringTrimRight=function(string){return string.replace(trimEndRegexp,\\\"\\\")},exports.copyObject=function(obj){var copy={};for(var key in obj)copy[key]=obj[key];return copy},exports.copyArray=function(array){for(var copy=[],i=0,l=array.length;l>i;i++)copy[i]=array[i]&&\\\"object\\\"==typeof array[i]?this.copyObject(array[i]):array[i];return copy},exports.deepCopy=function deepCopy(obj){if(\\\"object\\\"!=typeof obj||!obj)return obj;var copy;if(Array.isArray(obj)){copy=[];for(var key=0;obj.length>key;key++)copy[key]=deepCopy(obj[key]);return copy}if(\\\"[object Object]\\\"!==Object.prototype.toString.call(obj))return obj;copy={};for(var key in obj)copy[key]=deepCopy(obj[key]);return copy},exports.arrayToMap=function(arr){for(var map={},i=0;arr.length>i;i++)map[arr[i]]=1;return map},exports.createMap=function(props){var map=Object.create(null);for(var i in props)map[i]=props[i];return map},exports.arrayRemove=function(array,value){for(var i=0;array.length>=i;i++)value===array[i]&&array.splice(i,1)},exports.escapeRegExp=function(str){return str.replace(/([.*+?^${}()|[\\\\]\\\\/\\\\\\\\])/g,\\\"\\\\\\\\$1\\\")},exports.escapeHTML=function(str){return str.replace(/&/g,\\\"&#38;\\\").replace(/\\\"/g,\\\"&#34;\\\").replace(/'/g,\\\"&#39;\\\").replace(/</g,\\\"&#60;\\\")},exports.getMatchOffsets=function(string,regExp){var matches=[];return string.replace(regExp,function(str){matches.push({offset:arguments[arguments.length-2],length:str.length})}),matches},exports.deferredCall=function(fcn){var timer=null,callback=function(){timer=null,fcn()},deferred=function(timeout){return deferred.cancel(),timer=setTimeout(callback,timeout||0),deferred};return deferred.schedule=deferred,deferred.call=function(){return this.cancel(),fcn(),deferred},deferred.cancel=function(){return clearTimeout(timer),timer=null,deferred},deferred.isPending=function(){return timer},deferred},exports.delayedCall=function(fcn,defaultTimeout){var timer=null,callback=function(){timer=null,fcn()},_self=function(timeout){null==timer&&(timer=setTimeout(callback,timeout||defaultTimeout))};return _self.delay=function(timeout){timer&&clearTimeout(timer),timer=setTimeout(callback,timeout||defaultTimeout)},_self.schedule=_self,_self.call=function(){this.cancel(),fcn()},_self.cancel=function(){timer&&clearTimeout(timer),timer=null},_self.isPending=function(){return timer},_self}}),ace.define(\\\"ace/worker/mirror\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/range\\\",\\\"ace/document\\\",\\\"ace/lib/lang\\\"],function(acequire,exports){\\\"use strict\\\";acequire(\\\"../range\\\").Range;var Document=acequire(\\\"../document\\\").Document,lang=acequire(\\\"../lib/lang\\\"),Mirror=exports.Mirror=function(sender){this.sender=sender;var doc=this.doc=new Document(\\\"\\\"),deferredUpdate=this.deferredUpdate=lang.delayedCall(this.onUpdate.bind(this)),_self=this;sender.on(\\\"change\\\",function(e){var data=e.data;if(data[0].start)doc.applyDeltas(data);else for(var i=0;data.length>i;i+=2){if(Array.isArray(data[i+1]))var d={action:\\\"insert\\\",start:data[i],lines:data[i+1]};else var d={action:\\\"remove\\\",start:data[i],end:data[i+1]};doc.applyDelta(d,!0)}return _self.$timeout?deferredUpdate.schedule(_self.$timeout):(_self.onUpdate(),void 0)})};(function(){this.$timeout=500,this.setTimeout=function(timeout){this.$timeout=timeout},this.setValue=function(value){this.doc.setValue(value),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(callbackId){this.sender.callback(this.doc.getValue(),callbackId)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(Mirror.prototype)}),ace.define(\\\"ace/mode/json/json_parse\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(){\\\"use strict\\\";var at,ch,text,value,escapee={'\\\"':'\\\"',\\\"\\\\\\\\\\\":\\\"\\\\\\\\\\\",\\\"/\\\":\\\"/\\\",b:\\\"\\\\b\\\",f:\\\"\\\\f\\\",n:\\\"\\\\n\\\",r:\\\"\\\\r\\\",t:\\\"\\t\\\"},error=function(m){throw{name:\\\"SyntaxError\\\",message:m,at:at,text:text}},next=function(c){return c&&c!==ch&&error(\\\"Expected '\\\"+c+\\\"' instead of '\\\"+ch+\\\"'\\\"),ch=text.charAt(at),at+=1,ch},number=function(){var number,string=\\\"\\\";for(\\\"-\\\"===ch&&(string=\\\"-\\\",next(\\\"-\\\"));ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch,next();if(\\\".\\\"===ch)for(string+=\\\".\\\";next()&&ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch;if(\\\"e\\\"===ch||\\\"E\\\"===ch)for(string+=ch,next(),(\\\"-\\\"===ch||\\\"+\\\"===ch)&&(string+=ch,next());ch>=\\\"0\\\"&&\\\"9\\\">=ch;)string+=ch,next();return number=+string,isNaN(number)?(error(\\\"Bad number\\\"),void 0):number},string=function(){var hex,i,uffff,string=\\\"\\\";if('\\\"'===ch)for(;next();){if('\\\"'===ch)return next(),string;if(\\\"\\\\\\\\\\\"===ch)if(next(),\\\"u\\\"===ch){for(uffff=0,i=0;4>i&&(hex=parseInt(next(),16),isFinite(hex));i+=1)uffff=16*uffff+hex;string+=String.fromCharCode(uffff)}else{if(\\\"string\\\"!=typeof escapee[ch])break;string+=escapee[ch]}else string+=ch}error(\\\"Bad string\\\")},white=function(){for(;ch&&\\\" \\\">=ch;)next()},word=function(){switch(ch){case\\\"t\\\":return next(\\\"t\\\"),next(\\\"r\\\"),next(\\\"u\\\"),next(\\\"e\\\"),!0;case\\\"f\\\":return next(\\\"f\\\"),next(\\\"a\\\"),next(\\\"l\\\"),next(\\\"s\\\"),next(\\\"e\\\"),!1;case\\\"n\\\":return next(\\\"n\\\"),next(\\\"u\\\"),next(\\\"l\\\"),next(\\\"l\\\"),null}error(\\\"Unexpected '\\\"+ch+\\\"'\\\")},array=function(){var array=[];if(\\\"[\\\"===ch){if(next(\\\"[\\\"),white(),\\\"]\\\"===ch)return next(\\\"]\\\"),array;for(;ch;){if(array.push(value()),white(),\\\"]\\\"===ch)return next(\\\"]\\\"),array;next(\\\",\\\"),white()}}error(\\\"Bad array\\\")},object=function(){var key,object={};if(\\\"{\\\"===ch){if(next(\\\"{\\\"),white(),\\\"}\\\"===ch)return next(\\\"}\\\"),object;for(;ch;){if(key=string(),white(),next(\\\":\\\"),Object.hasOwnProperty.call(object,key)&&error('Duplicate key \\\"'+key+'\\\"'),object[key]=value(),white(),\\\"}\\\"===ch)return next(\\\"}\\\"),object;next(\\\",\\\"),white()}}error(\\\"Bad object\\\")};return value=function(){switch(white(),ch){case\\\"{\\\":return object();case\\\"[\\\":return array();case'\\\"':return string();case\\\"-\\\":return number();default:return ch>=\\\"0\\\"&&\\\"9\\\">=ch?number():word()}},function(source,reviver){var result;return text=source,at=0,ch=\\\" \\\",result=value(),white(),ch&&error(\\\"Syntax error\\\"),\\\"function\\\"==typeof reviver?function walk(holder,key){var k,v,value=holder[key];if(value&&\\\"object\\\"==typeof value)for(k in value)Object.hasOwnProperty.call(value,k)&&(v=walk(value,k),void 0!==v?value[k]=v:delete value[k]);return reviver.call(holder,key,value)}({\\\"\\\":result},\\\"\\\"):result}}),ace.define(\\\"ace/mode/json_worker\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\",\\\"ace/lib/oop\\\",\\\"ace/worker/mirror\\\",\\\"ace/mode/json/json_parse\\\"],function(acequire,exports){\\\"use strict\\\";var oop=acequire(\\\"../lib/oop\\\"),Mirror=acequire(\\\"../worker/mirror\\\").Mirror,parse=acequire(\\\"./json/json_parse\\\"),JsonWorker=exports.JsonWorker=function(sender){Mirror.call(this,sender),this.setTimeout(200)};oop.inherits(JsonWorker,Mirror),function(){this.onUpdate=function(){var value=this.doc.getValue(),errors=[];try{value&&parse(value)}catch(e){var pos=this.doc.indexToPosition(e.at-1);errors.push({row:pos.row,column:pos.column,text:e.message,type:\\\"error\\\"})}this.sender.emit(\\\"annotate\\\",errors)}}.call(JsonWorker.prototype)}),ace.define(\\\"ace/lib/es5-shim\\\",[\\\"require\\\",\\\"exports\\\",\\\"module\\\"],function(){function Empty(){}function doesDefinePropertyWork(object){try{return Object.defineProperty(object,\\\"sentinel\\\",{}),\\\"sentinel\\\"in object}catch(exception){}}function toInteger(n){return n=+n,n!==n?n=0:0!==n&&n!==1/0&&n!==-(1/0)&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}Function.prototype.bind||(Function.prototype.bind=function(that){var target=this;if(\\\"function\\\"!=typeof target)throw new TypeError(\\\"Function.prototype.bind called on incompatible \\\"+target);var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var result=target.apply(this,args.concat(slice.call(arguments)));return Object(result)===result?result:this}return target.apply(that,args.concat(slice.call(arguments)))};return target.prototype&&(Empty.prototype=target.prototype,bound.prototype=new Empty,Empty.prototype=null),bound});var defineGetter,defineSetter,lookupGetter,lookupSetter,supportsAccessors,call=Function.prototype.call,prototypeOfArray=Array.prototype,prototypeOfObject=Object.prototype,slice=prototypeOfArray.slice,_toString=call.bind(prototypeOfObject.toString),owns=call.bind(prototypeOfObject.hasOwnProperty);if((supportsAccessors=owns(prototypeOfObject,\\\"__defineGetter__\\\"))&&(defineGetter=call.bind(prototypeOfObject.__defineGetter__),defineSetter=call.bind(prototypeOfObject.__defineSetter__),lookupGetter=call.bind(prototypeOfObject.__lookupGetter__),lookupSetter=call.bind(prototypeOfObject.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function makeArray(l){var a=Array(l+2);return a[0]=a[1]=0,a}var lengthBefore,array=[];return array.splice.apply(array,makeArray(20)),array.splice.apply(array,makeArray(26)),lengthBefore=array.length,array.splice(5,0,\\\"XXX\\\"),lengthBefore+1==array.length,lengthBefore+1==array.length?!0:void 0\\n}()){var array_splice=Array.prototype.splice;Array.prototype.splice=function(start,deleteCount){return arguments.length?array_splice.apply(this,[void 0===start?0:start,void 0===deleteCount?this.length-start:deleteCount].concat(slice.call(arguments,2))):[]}}else Array.prototype.splice=function(pos,removeCount){var length=this.length;pos>0?pos>length&&(pos=length):void 0==pos?pos=0:0>pos&&(pos=Math.max(length+pos,0)),length>pos+removeCount||(removeCount=length-pos);var removed=this.slice(pos,pos+removeCount),insert=slice.call(arguments,2),add=insert.length;if(pos===length)add&&this.push.apply(this,insert);else{var remove=Math.min(removeCount,length-pos),tailOldPos=pos+remove,tailNewPos=tailOldPos+add-remove,tailCount=length-tailOldPos,lengthAfterRemove=length-remove;if(tailOldPos>tailNewPos)for(var i=0;tailCount>i;++i)this[tailNewPos+i]=this[tailOldPos+i];else if(tailNewPos>tailOldPos)for(i=tailCount;i--;)this[tailNewPos+i]=this[tailOldPos+i];if(add&&pos===lengthAfterRemove)this.length=lengthAfterRemove,this.push.apply(this,insert);else for(this.length=lengthAfterRemove+add,i=0;add>i;++i)this[pos+i]=insert[i]}return removed};Array.isArray||(Array.isArray=function(obj){return\\\"[object Array]\\\"==_toString(obj)});var boxedString=Object(\\\"a\\\"),splitString=\\\"a\\\"!=boxedString[0]||!(0 in boxedString);if(Array.prototype.forEach||(Array.prototype.forEach=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,thisp=arguments[1],i=-1,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError;for(;length>++i;)i in self&&fun.call(thisp,self[i],i,object)}),Array.prototype.map||(Array.prototype.map=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,result=Array(length),thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)i in self&&(result[i]=fun.call(thisp,self[i],i,object));return result}),Array.prototype.filter||(Array.prototype.filter=function(fun){var value,object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,result=[],thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)i in self&&(value=self[i],fun.call(thisp,value,i,object)&&result.push(value));return result}),Array.prototype.every||(Array.prototype.every=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)if(i in self&&!fun.call(thisp,self[i],i,object))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0,thisp=arguments[1];if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");for(var i=0;length>i;i++)if(i in self&&fun.call(thisp,self[i],i,object))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");if(!length&&1==arguments.length)throw new TypeError(\\\"reduce of empty array with no initial value\\\");var result,i=0;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i++];break}if(++i>=length)throw new TypeError(\\\"reduce of empty array with no initial value\\\")}for(;length>i;i++)i in self&&(result=fun.call(void 0,result,self[i],i,object));return result}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(fun){var object=toObject(this),self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):object,length=self.length>>>0;if(\\\"[object Function]\\\"!=_toString(fun))throw new TypeError(fun+\\\" is not a function\\\");if(!length&&1==arguments.length)throw new TypeError(\\\"reduceRight of empty array with no initial value\\\");var result,i=length-1;if(arguments.length>=2)result=arguments[1];else for(;;){if(i in self){result=self[i--];break}if(0>--i)throw new TypeError(\\\"reduceRight of empty array with no initial value\\\")}do i in this&&(result=fun.call(void 0,result,self[i],i,object));while(i--);return result}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(sought){var self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):toObject(this),length=self.length>>>0;if(!length)return-1;var i=0;for(arguments.length>1&&(i=toInteger(arguments[1])),i=i>=0?i:Math.max(0,length+i);length>i;i++)if(i in self&&self[i]===sought)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(sought){var self=splitString&&\\\"[object String]\\\"==_toString(this)?this.split(\\\"\\\"):toObject(this),length=self.length>>>0;if(!length)return-1;var i=length-1;for(arguments.length>1&&(i=Math.min(i,toInteger(arguments[1]))),i=i>=0?i:length-Math.abs(i);i>=0;i--)if(i in self&&sought===self[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(object){return object.__proto__||(object.constructor?object.constructor.prototype:prototypeOfObject)}),!Object.getOwnPropertyDescriptor){var ERR_NON_OBJECT=\\\"Object.getOwnPropertyDescriptor called on a non-object: \\\";Object.getOwnPropertyDescriptor=function(object,property){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT+object);if(owns(object,property)){var descriptor,getter,setter;if(descriptor={enumerable:!0,configurable:!0},supportsAccessors){var prototype=object.__proto__;object.__proto__=prototypeOfObject;var getter=lookupGetter(object,property),setter=lookupSetter(object,property);if(object.__proto__=prototype,getter||setter)return getter&&(descriptor.get=getter),setter&&(descriptor.set=setter),descriptor}return descriptor.value=object[property],descriptor}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(object){return Object.keys(object)}),!Object.create){var createEmpty;createEmpty=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var empty={};for(var i in empty)empty[i]=null;return empty.constructor=empty.hasOwnProperty=empty.propertyIsEnumerable=empty.isPrototypeOf=empty.toLocaleString=empty.toString=empty.valueOf=empty.__proto__=null,empty},Object.create=function(prototype,properties){var object;if(null===prototype)object=createEmpty();else{if(\\\"object\\\"!=typeof prototype)throw new TypeError(\\\"typeof prototype[\\\"+typeof prototype+\\\"] != 'object'\\\");var Type=function(){};Type.prototype=prototype,object=new Type,object.__proto__=prototype}return void 0!==properties&&Object.defineProperties(object,properties),object}}if(Object.defineProperty){var definePropertyWorksOnObject=doesDefinePropertyWork({}),definePropertyWorksOnDom=\\\"undefined\\\"==typeof document||doesDefinePropertyWork(document.createElement(\\\"div\\\"));if(!definePropertyWorksOnObject||!definePropertyWorksOnDom)var definePropertyFallback=Object.defineProperty}if(!Object.defineProperty||definePropertyFallback){var ERR_NON_OBJECT_DESCRIPTOR=\\\"Property description must be an object: \\\",ERR_NON_OBJECT_TARGET=\\\"Object.defineProperty called on non-object: \\\",ERR_ACCESSORS_NOT_SUPPORTED=\\\"getters & setters can not be defined on this javascript engine\\\";Object.defineProperty=function(object,property,descriptor){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(ERR_NON_OBJECT_TARGET+object);if(\\\"object\\\"!=typeof descriptor&&\\\"function\\\"!=typeof descriptor||null===descriptor)throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR+descriptor);if(definePropertyFallback)try{return definePropertyFallback.call(Object,object,property,descriptor)}catch(exception){}if(owns(descriptor,\\\"value\\\"))if(supportsAccessors&&(lookupGetter(object,property)||lookupSetter(object,property))){var prototype=object.__proto__;object.__proto__=prototypeOfObject,delete object[property],object[property]=descriptor.value,object.__proto__=prototype}else object[property]=descriptor.value;else{if(!supportsAccessors)throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);owns(descriptor,\\\"get\\\")&&defineGetter(object,property,descriptor.get),owns(descriptor,\\\"set\\\")&&defineSetter(object,property,descriptor.set)}return object}}Object.defineProperties||(Object.defineProperties=function(object,properties){for(var property in properties)owns(properties,property)&&Object.defineProperty(object,property,properties[property]);return object}),Object.seal||(Object.seal=function(object){return object}),Object.freeze||(Object.freeze=function(object){return object});try{Object.freeze(function(){})}catch(exception){Object.freeze=function(freezeObject){return function(object){return\\\"function\\\"==typeof object?object:freezeObject(object)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(object){return object}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(object){if(Object(object)===object)throw new TypeError;for(var name=\\\"\\\";owns(object,name);)name+=\\\"?\\\";object[name]=!0;var returnValue=owns(object,name);return delete object[name],returnValue}),!Object.keys){var hasDontEnumBug=!0,dontEnums=[\\\"toString\\\",\\\"toLocaleString\\\",\\\"valueOf\\\",\\\"hasOwnProperty\\\",\\\"isPrototypeOf\\\",\\\"propertyIsEnumerable\\\",\\\"constructor\\\"],dontEnumsLength=dontEnums.length;for(var key in{toString:null})hasDontEnumBug=!1;Object.keys=function(object){if(\\\"object\\\"!=typeof object&&\\\"function\\\"!=typeof object||null===object)throw new TypeError(\\\"Object.keys called on a non-object\\\");var keys=[];for(var name in object)owns(object,name)&&keys.push(name);if(hasDontEnumBug)for(var i=0,ii=dontEnumsLength;ii>i;i++){var dontEnum=dontEnums[i];owns(object,dontEnum)&&keys.push(dontEnum)}return keys}}Date.now||(Date.now=function(){return(new Date).getTime()});var ws=\\\"\\t\\\\n\\u000b\\\\f\\\\r   ᠎              \\\\u2028\\\\u2029\\\";if(!String.prototype.trim||ws.trim()){ws=\\\"[\\\"+ws+\\\"]\\\";var trimBeginRegexp=RegExp(\\\"^\\\"+ws+ws+\\\"*\\\"),trimEndRegexp=RegExp(ws+ws+\\\"*$\\\");String.prototype.trim=function(){return(this+\\\"\\\").replace(trimBeginRegexp,\\\"\\\").replace(trimEndRegexp,\\\"\\\")}}var toObject=function(o){if(null==o)throw new TypeError(\\\"can't convert \\\"+o+\\\" to object\\\");return Object(o)}});\";","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".aceContainer--1oNSiiKV {\\n border: 1px solid #e8e8e8;\\n border-radius: 4px;\\n}\\n\\n.hasError--11Ifzica {\\n border-color: red;\\n}\\n\", \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"aceContainer\": \"aceContainer--1oNSiiKV\",\n\t\"hasError\": \"hasError--11Ifzica\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n","ace.define(\"ace/theme/monokai\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = true;\nexports.cssClass = \"ace-monokai\";\nexports.cssText = \".ace-monokai .ace_gutter {\\\nbackground: #2F3129;\\\ncolor: #8F908A\\\n}\\\n.ace-monokai .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #555651\\\n}\\\n.ace-monokai {\\\nbackground-color: #272822;\\\ncolor: #F8F8F2\\\n}\\\n.ace-monokai .ace_cursor {\\\ncolor: #F8F8F0\\\n}\\\n.ace-monokai .ace_marker-layer .ace_selection {\\\nbackground: #49483E\\\n}\\\n.ace-monokai.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px #272822;\\\n}\\\n.ace-monokai .ace_marker-layer .ace_step {\\\nbackground: rgb(102, 82, 0)\\\n}\\\n.ace-monokai .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid #49483E\\\n}\\\n.ace-monokai .ace_marker-layer .ace_active-line {\\\nbackground: #202020\\\n}\\\n.ace-monokai .ace_gutter-active-line {\\\nbackground-color: #272727\\\n}\\\n.ace-monokai .ace_marker-layer .ace_selected-word {\\\nborder: 1px solid #49483E\\\n}\\\n.ace-monokai .ace_invisible {\\\ncolor: #52524d\\\n}\\\n.ace-monokai .ace_entity.ace_name.ace_tag,\\\n.ace-monokai .ace_keyword,\\\n.ace-monokai .ace_meta.ace_tag,\\\n.ace-monokai .ace_storage {\\\ncolor: #F92672\\\n}\\\n.ace-monokai .ace_punctuation,\\\n.ace-monokai .ace_punctuation.ace_tag {\\\ncolor: #fff\\\n}\\\n.ace-monokai .ace_constant.ace_character,\\\n.ace-monokai .ace_constant.ace_language,\\\n.ace-monokai .ace_constant.ace_numeric,\\\n.ace-monokai .ace_constant.ace_other {\\\ncolor: #AE81FF\\\n}\\\n.ace-monokai .ace_invalid {\\\ncolor: #F8F8F0;\\\nbackground-color: #F92672\\\n}\\\n.ace-monokai .ace_invalid.ace_deprecated {\\\ncolor: #F8F8F0;\\\nbackground-color: #AE81FF\\\n}\\\n.ace-monokai .ace_support.ace_constant,\\\n.ace-monokai .ace_support.ace_function {\\\ncolor: #66D9EF\\\n}\\\n.ace-monokai .ace_fold {\\\nbackground-color: #A6E22E;\\\nborder-color: #F8F8F2\\\n}\\\n.ace-monokai .ace_storage.ace_type,\\\n.ace-monokai .ace_support.ace_class,\\\n.ace-monokai .ace_support.ace_type {\\\nfont-style: italic;\\\ncolor: #66D9EF\\\n}\\\n.ace-monokai .ace_entity.ace_name.ace_function,\\\n.ace-monokai .ace_entity.ace_other,\\\n.ace-monokai .ace_entity.ace_other.ace_attribute-name,\\\n.ace-monokai .ace_variable {\\\ncolor: #A6E22E\\\n}\\\n.ace-monokai .ace_variable.ace_parameter {\\\nfont-style: italic;\\\ncolor: #FD971F\\\n}\\\n.ace-monokai .ace_string {\\\ncolor: #E6DB74\\\n}\\\n.ace-monokai .ace_comment {\\\ncolor: #75715E\\\n}\\\n.ace-monokai .ace_indent-guide {\\\nbackground: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y\\\n}\";\n\nvar dom = acequire(\"../lib/dom\");\ndom.importCssString(exports.cssText, exports.cssClass);\n});\n","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../../node_modules/css-loader/dist/cjs.js??ref--15-1!../../../../node_modules/postcss-loader/dist/cjs.js??ref--15-2!./index.module.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import React, { useState, useEffect } from \"react\";\nimport AceEditor from \"react-ace\";\nimport \"./brace/mode\";\nimport \"./brace/theme\";\nimport style from \"./index.module.css\";\nimport classNames from \"classnames\";\nimport { find } from \"lodash\";\n\ninterface CodeEditorProps {\n theme: string;\n mode: string;\n setOptions?: Record<string, any>;\n editorProps?: Record<string, any>;\n editorStyle?: Record<string, any>;\n dataSource: any;\n configProps?: any;\n handleChange?: (value: any) => void;\n handleErrorChange?: (value: boolean) => void;\n handleBlur?: (value: any) => void;\n handleValidate?: (value: any) => void;\n required: boolean;\n}\n\nexport function CodeEditor({\n theme,\n mode,\n setOptions,\n editorProps,\n dataSource,\n configProps,\n handleChange,\n handleBlur,\n handleErrorChange,\n required,\n editorStyle\n}: CodeEditorProps): React.ReactElement {\n const [value, setValue] = useState(dataSource || \"\");\n const [hasError, setHasError] = useState(false);\n\n const handleOnChange = (newValue: string): void => {\n setValue(newValue);\n };\n\n useEffect(() => {\n handleChange(value);\n }, [value]);\n\n useEffect(() => {\n handleOnChange(dataSource || \"\");\n }, [dataSource]);\n\n const handleOnBlur = (): void => {\n handleBlur(value);\n };\n\n const onValidate = err => {\n let requiredError = false;\n if (required) {\n requiredError = !value;\n }\n setHasError(!!find(err, [\"type\", \"error\"]) || requiredError);\n };\n\n useEffect(() => {\n handleErrorChange(hasError);\n }, [hasError]);\n\n return (\n <AceEditor\n name=\"commands-editor\"\n style={editorStyle}\n theme={theme}\n mode={mode}\n value={value}\n setOptions={setOptions}\n {...configProps}\n onChange={handleOnChange}\n onValidate={onValidate}\n onBlur={handleOnBlur}\n // Tips: Automatically scrolling cursor into view after selection change this will be disabled in the next version set editor.$blockScrolling = Infinity to disable this message\n editorProps={{ ...editorProps, $blockScrolling: Infinity }}\n className={classNames(style.aceContainer, {\n [style.hasError]: hasError\n })}\n />\n );\n}\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {\n BrickWrapper,\n UpdatingElement,\n property,\n event,\n EventEmitter,\n} from \"@next-core/brick-kit\";\nimport { CodeEditor } from \"./CodeEditor\";\nimport { get } from \"lodash\";\n\n/**\n * @id presentational-bricks.code-editor\n * @name presentational-bricks.code-editor\n * @docKind brick\n * @description 支持Shell、Python、CSS、HTML等语法高亮\n * @author lynette\n * @slots\n * @history\n * @memo\n * ## Tips\n * > 该不符合 form 表单项的原则,且只支持少部分语言高亮,现已废弃,请使用新的[代码编辑构件](developers/brick-book/brick/code-bricks.code-editor)\n *\n * ## 支持语言:\n *\n * - json\n * - sh\n * - text\n * - yaml\n * @noInheritDoc\n */\nexport class CodeEditorElement extends UpdatingElement {\n /**\n * @detail string\n * @description 值变化的时候发出的事件,detail 为值\n */\n @event({ type: \"code.change\" })\n codeChange: EventEmitter<string>;\n\n /**\n * @detail boolean\n * @description 值错误变化的时候发出的事件,detail 为是否有错误\n */\n @event({ type: \"code.error.change\", bubbles: true })\n codeErrorChang: EventEmitter<boolean>;\n\n /**\n * @detail string\n * @description 编辑器失去焦点的时候发出的事件,detail 为值\n */\n @event({ type: \"editor.blur\" })\n editorBlur: EventEmitter<string>;\n\n /**\n * @kind string\n * @required false\n * @default -\n * @description 代码内容\n */\n @property() value: string;\n\n /**\n * @kind { value?: string; mode?: string; }\n * @required false\n * @default -\n * @description [已废弃]字段映射, 跟 dataSource 一起使用来获得运行时 value\n */\n @property({ attribute: false }) fields: {\n value?: string;\n mode?: string;\n };\n\n private _editorProps: Record<string, any>;\n private _configProps: Record<string, any>;\n\n connectedCallback(): void {\n // eslint-disable-next-line no-console\n console.warn(\n \"`presentational-bricks.code-editor` are deprecated, use `code-bricks.code-editor` instead.\"\n );\n this.style.display = \"block\";\n this._render();\n }\n\n disconnectedCallback(): void {\n ReactDOM.unmountComponentAtNode(this);\n }\n\n private _handleChange = (value: any) => {\n this.codeChange.emit(value);\n };\n\n private _handleErrorChange = (hasError: boolean) => {\n this.codeErrorChang.emit(hasError);\n };\n\n private _handleBlur = (value: any) => {\n this.editorBlur.emit(value);\n };\n\n protected _render(): void {\n if (this.isConnected) {\n const mutableProps = {\n value: this.value,\n mode: this.mode,\n };\n if (this.dataSource) {\n mutableProps.value = this.fields?.value\n ? get(this.dataSource, this.fields.value)\n : this.dataSource;\n if (this.fields?.mode) {\n mutableProps.mode = get(this.dataSource, this.fields.mode);\n }\n }\n ReactDOM.render(\n <BrickWrapper>\n <CodeEditor\n theme={this.theme}\n mode={mutableProps.mode}\n dataSource={mutableProps.value}\n setOptions={this.setOptions}\n editorProps={this._editorProps}\n configProps={this._configProps}\n editorStyle={this.editorStyle}\n handleChange={this._handleChange}\n handleErrorChange={this._handleErrorChange}\n handleBlur={this._handleBlur}\n required={this.required}\n />\n </BrickWrapper>,\n this\n );\n }\n }\n\n /**\n * @kind Record<string, any>\n * @required false\n * @default -\n * @description [已废弃]数据源\n */\n @property({\n attribute: false,\n })\n dataSource: Record<string, any>;\n\n /**\n * @kind string\n * @required true\n * @default -\n * @description 语言模式,支持语言如下\n */\n @property({\n attribute: false,\n })\n mode = \"text\";\n\n /**\n * @kind string\n * @required false\n * @default tomorrow\n * @description 主题,支持 tomorrow、monokai、github\n */\n @property({\n attribute: false,\n })\n theme = \"tomorrow\";\n\n /**\n * @kind object\n * @required false\n * @default -\n * @description 设置选项,例如 tabSize、maxLines 等,参考[react-ace](https://github.com/securingsincity/react-ace/blob/master/docs/Ace.md)\n */\n @property({\n attribute: false,\n })\n setOptions: Record<string, any>;\n\n set editorProps(value: Record<string, any>) {\n this._editorProps = value;\n this._render();\n }\n\n set configProps(value: Record<string, any>) {\n this._configProps = value;\n this._render();\n }\n\n /**\n * @kind Record<string,any>\n * @required false\n * @default -\n * @description 代码编辑器的样式,一般不用设置\n */\n @property({\n attribute: false,\n })\n editorStyle: Record<string, any>;\n\n /**\n * @kind boolean\n * @required false\n * @default -\n * @description 是否必填,必填的时候如果没有值,编辑框会标红报错\n */\n @property({\n type: Boolean,\n })\n required: boolean;\n}\n\ncustomElements.define(\"presentational-bricks.code-editor\", CodeEditorElement);\n","ace.define(\"ace/mode/yaml_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 YamlHighlightRules = function() {\n this.$rules = {\n \"start\" : [\n {\n token : \"comment\",\n regex : \"#.*$\"\n }, {\n token : \"list.markup\",\n regex : /^(?:-{3}|\\.{3})\\s*(?=#|$)/\n }, {\n token : \"list.markup\",\n regex : /^\\s*[\\-?](?:$|\\s)/\n }, {\n token: \"constant\",\n regex: \"!![\\\\w//]+\"\n }, {\n token: \"constant.language\",\n regex: \"[&\\\\*][a-zA-Z0-9-_]+\"\n }, {\n token: [\"meta.tag\", \"keyword\"],\n regex: /^(\\s*\\w.*?)(:(?=\\s|$))/\n },{\n token: [\"meta.tag\", \"keyword\"],\n regex: /(\\w+?)(\\s*:(?=\\s|$))/\n }, {\n token : \"keyword.operator\",\n regex : \"<<\\\\w*:\\\\w*\"\n }, {\n token : \"keyword.operator\",\n regex : \"-\\\\s*(?=[{])\"\n }, {\n token : \"string\", // single line\n regex : '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]'\n }, {\n token : \"string\", // multi line string start\n regex : /[|>][-+\\d\\s]*$/,\n onMatch: function(val, state, stack, line) {\n var indent = /^\\s*/.exec(line)[0];\n if (stack.length < 1) {\n stack.push(this.next);\n } else {\n stack[0] = \"mlString\";\n }\n\n if (stack.length < 2) {\n stack.push(indent.length);\n }\n else {\n stack[1] = indent.length;\n }\n return this.token;\n },\n next : \"mlString\"\n }, {\n token : \"string\", // single quoted string\n regex : \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }, {\n token : \"constant.numeric\", // float\n regex : /(\\b|[+\\-\\.])[\\d_]+(?:(?:\\.[\\d_]*)?(?:[eE][+\\-]?[\\d_]+)?)(?=[^\\d-\\w]|$)/\n }, {\n token : \"constant.numeric\", // other number\n regex : /[+\\-]?\\.inf\\b|NaN\\b|0x[\\dA-Fa-f_]+|0b[10_]+/\n }, {\n token : \"constant.language.boolean\",\n regex : \"\\\\b(?:true|false|TRUE|FALSE|True|False|yes|no)\\\\b\"\n }, {\n token : \"paren.lparen\",\n regex : \"[[({]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\])}]\"\n }, {\n token : \"text\",\n regex : /[^\\s,:\\[\\]\\{\\}]+/\n }\n ],\n \"mlString\" : [\n {\n token : \"indent\",\n regex : /^\\s*$/\n }, {\n token : \"indent\",\n regex : /^\\s*/,\n onMatch: function(val, state, stack) {\n var curIndent = stack[1];\n\n if (curIndent >= val.length) {\n this.next = \"start\";\n stack.splice(0);\n }\n else {\n this.next = \"mlString\";\n }\n return this.token;\n },\n next : \"mlString\"\n }, {\n token : \"string\",\n regex : '.+'\n }\n ]};\n this.normalizeRules();\n\n};\n\noop.inherits(YamlHighlightRules, TextHighlightRules);\n\nexports.YamlHighlightRules = YamlHighlightRules;\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/coffee\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/folding/fold_mode\",\"ace/range\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../../lib/oop\");\nvar BaseFoldMode = acequire(\"./fold_mode\").FoldMode;\nvar Range = acequire(\"../../range\").Range;\n\nvar FoldMode = exports.FoldMode = function() {};\noop.inherits(FoldMode, BaseFoldMode);\n\n(function() {\n\n this.getFoldWidgetRange = function(session, foldStyle, row) {\n var range = this.indentationBlock(session, row);\n if (range)\n return range;\n\n var re = /\\S/;\n var line = session.getLine(row);\n var startLevel = line.search(re);\n if (startLevel == -1 || line[startLevel] != \"#\")\n return;\n\n var startColumn = line.length;\n var maxRow = session.getLength();\n var startRow = row;\n var endRow = row;\n\n while (++row < maxRow) {\n line = session.getLine(row);\n var level = line.search(re);\n\n if (level == -1)\n continue;\n\n if (line[level] != \"#\")\n break;\n\n endRow = row;\n }\n\n if (endRow > startRow) {\n var endColumn = session.getLine(endRow).length;\n return new Range(startRow, startColumn, endRow, endColumn);\n }\n };\n this.getFoldWidget = function(session, foldStyle, row) {\n var line = session.getLine(row);\n var indent = line.search(/\\S/);\n var next = session.getLine(row + 1);\n var prev = session.getLine(row - 1);\n var prevIndent = prev.search(/\\S/);\n var nextIndent = next.search(/\\S/);\n\n if (indent == -1) {\n session.foldWidgets[row - 1] = prevIndent!= -1 && prevIndent < nextIndent ? \"start\" : \"\";\n return \"\";\n }\n if (prevIndent == -1) {\n if (indent == nextIndent && line[indent] == \"#\" && next[indent] == \"#\") {\n session.foldWidgets[row - 1] = \"\";\n session.foldWidgets[row + 1] = \"\";\n return \"start\";\n }\n } else if (prevIndent == indent && line[indent] == \"#\" && prev[indent] == \"#\") {\n if (session.getLine(row - 2).search(/\\S/) == -1) {\n session.foldWidgets[row - 1] = \"start\";\n session.foldWidgets[row + 1] = \"\";\n return \"\";\n }\n }\n\n if (prevIndent!= -1 && prevIndent < indent)\n session.foldWidgets[row - 1] = \"start\";\n else\n session.foldWidgets[row - 1] = \"\";\n\n if (indent < nextIndent)\n return \"start\";\n else\n return \"\";\n };\n\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/yaml\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/yaml_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/mode/folding/coffee\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar YamlHighlightRules = acequire(\"./yaml_highlight_rules\").YamlHighlightRules;\nvar MatchingBraceOutdent = acequire(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar FoldMode = acequire(\"./folding/coffee\").FoldMode;\n\nvar Mode = function() {\n this.HighlightRules = YamlHighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.foldingRules = new FoldMode();\n this.$behaviour = this.$defaultBehaviour;\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n this.lineCommentStart = [\"#\", \"//\"];\n \n this.getNextLineIndent = function(state, line, tab) {\n var indent = this.$getIndent(line);\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\n this.$id = \"ace/mode/yaml\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n\n});\n","ace.define(\"ace/mode/sh_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 reservedKeywords = exports.reservedKeywords = (\n '!|{|}|case|do|done|elif|else|'+\n 'esac|fi|for|if|in|then|until|while|'+\n '&|;|export|local|read|typeset|unset|'+\n 'elif|select|set|function|declare|readonly'\n );\n\nvar languageConstructs = exports.languageConstructs = (\n '[|]|alias|bg|bind|break|builtin|'+\n 'cd|command|compgen|complete|continue|'+\n 'dirs|disown|echo|enable|eval|exec|'+\n 'exit|fc|fg|getopts|hash|help|history|'+\n 'jobs|kill|let|logout|popd|printf|pushd|'+\n 'pwd|return|set|shift|shopt|source|'+\n 'suspend|test|times|trap|type|ulimit|'+\n 'umask|unalias|wait'\n);\n\nvar ShHighlightRules = function() {\n var keywordMapper = this.createKeywordMapper({\n \"keyword\": reservedKeywords,\n \"support.function.builtin\": languageConstructs,\n \"invalid.deprecated\": \"debugger\"\n }, \"identifier\");\n\n var integer = \"(?:(?:[1-9]\\\\d*)|(?:0))\";\n\n var fraction = \"(?:\\\\.\\\\d+)\";\n var intPart = \"(?:\\\\d+)\";\n var pointFloat = \"(?:(?:\" + intPart + \"?\" + fraction + \")|(?:\" + intPart + \"\\\\.))\";\n var exponentFloat = \"(?:(?:\" + pointFloat + \"|\" + intPart + \")\" + \")\";\n var floatNumber = \"(?:\" + exponentFloat + \"|\" + pointFloat + \")\";\n var fileDescriptor = \"(?:&\" + intPart + \")\";\n\n var variableName = \"[a-zA-Z_][a-zA-Z0-9_]*\";\n var variable = \"(?:\" + variableName + \"(?==))\";\n\n var builtinVariable = \"(?:\\\\$(?:SHLVL|\\\\$|\\\\!|\\\\?))\";\n\n var func = \"(?:\" + variableName + \"\\\\s*\\\\(\\\\))\";\n\n this.$rules = {\n \"start\" : [{\n token : \"constant\",\n regex : /\\\\./\n }, {\n token : [\"text\", \"comment\"],\n regex : /(^|\\s)(#.*)$/\n }, {\n token : \"string.start\",\n regex : '\"',\n push : [{\n token : \"constant.language.escape\",\n regex : /\\\\(?:[$`\"\\\\]|$)/\n }, {\n include : \"variables\"\n }, {\n token : \"keyword.operator\",\n regex : /`/ // TODO highlight `\n }, {\n token : \"string.end\",\n regex : '\"',\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }]\n }, {\n token : \"string\",\n regex : \"\\\\$'\",\n push : [{\n token : \"constant.language.escape\",\n regex : /\\\\(?:[abeEfnrtv\\\\'\"]|x[a-fA-F\\d]{1,2}|u[a-fA-F\\d]{4}([a-fA-F\\d]{4})?|c.|\\d{1,3})/\n }, {\n token : \"string\",\n regex : \"'\",\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }]\n }, {\n regex : \"<<<\",\n token : \"keyword.operator\"\n }, {\n stateName: \"heredoc\",\n regex : \"(<<-?)(\\\\s*)(['\\\"`]?)([\\\\w\\\\-]+)(['\\\"`]?)\",\n onMatch : function(value, currentState, stack) {\n var next = value[2] == '-' ? \"indentedHeredoc\" : \"heredoc\";\n var tokens = value.split(this.splitRegex);\n stack.push(next, tokens[4]);\n return [\n {type:\"constant\", value: tokens[1]},\n {type:\"text\", value: tokens[2]},\n {type:\"string\", value: tokens[3]},\n {type:\"support.class\", value: tokens[4]},\n {type:\"string\", value: tokens[5]}\n ];\n },\n rules: {\n heredoc: [{\n onMatch: function(value, currentState, stack) {\n if (value === stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack[0] || \"start\";\n return \"support.class\";\n }\n this.next = \"\";\n return \"string\";\n },\n regex: \".*$\",\n next: \"start\"\n }],\n indentedHeredoc: [{\n token: \"string\",\n regex: \"^\\t+\"\n }, {\n onMatch: function(value, currentState, stack) {\n if (value === stack[1]) {\n stack.shift();\n stack.shift();\n this.next = stack[0] || \"start\";\n return \"support.class\";\n }\n this.next = \"\";\n return \"string\";\n },\n regex: \".*$\",\n next: \"start\"\n }]\n }\n }, {\n regex : \"$\",\n token : \"empty\",\n next : function(currentState, stack) {\n if (stack[0] === \"heredoc\" || stack[0] === \"indentedHeredoc\")\n return stack[0];\n return currentState;\n }\n }, {\n token : [\"keyword\", \"text\", \"text\", \"text\", \"variable\"],\n regex : /(declare|local|readonly)(\\s+)(?:(-[fixar]+)(\\s+))?([a-zA-Z_][a-zA-Z0-9_]*\\b)/\n }, {\n token : \"variable.language\",\n regex : builtinVariable\n }, {\n token : \"variable\",\n regex : variable\n }, {\n include : \"variables\"\n }, {\n token : \"support.function\",\n regex : func\n }, {\n token : \"support.function\",\n regex : fileDescriptor\n }, {\n token : \"string\", // ' string\n start : \"'\", end : \"'\"\n }, {\n token : \"constant.numeric\", // float\n regex : floatNumber\n }, {\n token : \"constant.numeric\", // integer\n regex : integer + \"\\\\b\"\n }, {\n token : keywordMapper,\n regex : \"[a-zA-Z_][a-zA-Z0-9_]*\\\\b\"\n }, {\n token : \"keyword.operator\",\n regex : \"\\\\+|\\\\-|\\\\*|\\\\*\\\\*|\\\\/|\\\\/\\\\/|~|<|>|<=|=>|=|!=|[%&|`]\"\n }, {\n token : \"punctuation.operator\",\n regex : \";\"\n }, {\n token : \"paren.lparen\",\n regex : \"[\\\\[\\\\(\\\\{]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\]]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\)\\\\}]\",\n next : \"pop\"\n }],\n variables: [{\n token : \"variable\",\n regex : /(\\$)(\\w+)/\n }, {\n token : [\"variable\", \"paren.lparen\"],\n regex : /(\\$)(\\()/,\n push : \"start\"\n }, {\n token : [\"variable\", \"paren.lparen\", \"keyword.operator\", \"variable\", \"keyword.operator\"],\n regex : /(\\$)(\\{)([#!]?)(\\w+|[*@#?\\-$!0_])(:[?+\\-=]?|##?|%%?|,,?\\/|\\^\\^?)?/,\n push : \"start\"\n }, {\n token : \"variable\",\n regex : /\\$[*@#?\\-$!0_]/\n }, {\n token : [\"variable\", \"paren.lparen\"],\n regex : /(\\$)(\\{)/,\n push : \"start\"\n }]\n };\n \n this.normalizeRules();\n};\n\noop.inherits(ShHighlightRules, TextHighlightRules);\n\nexports.ShHighlightRules = ShHighlightRules;\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/sh\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/sh_highlight_rules\",\"ace/range\",\"ace/mode/folding/cstyle\",\"ace/mode/behaviour/cstyle\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar ShHighlightRules = acequire(\"./sh_highlight_rules\").ShHighlightRules;\nvar Range = acequire(\"../range\").Range;\nvar CStyleFoldMode = acequire(\"./folding/cstyle\").FoldMode;\nvar CstyleBehaviour = acequire(\"./behaviour/cstyle\").CstyleBehaviour;\n\nvar Mode = function() {\n this.HighlightRules = ShHighlightRules;\n this.foldingRules = new CStyleFoldMode();\n this.$behaviour = new CstyleBehaviour();\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n \n this.lineCommentStart = \"#\";\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 var outdents = {\n \"pass\": 1,\n \"return\": 1,\n \"raise\": 1,\n \"break\": 1,\n \"continue\": 1\n };\n\n this.checkOutdent = function(state, line, input) {\n if (input !== \"\\r\\n\" && input !== \"\\r\" && input !== \"\\n\")\n return false;\n\n var tokens = this.getTokenizer().getLineTokens(line.trim(), state).tokens;\n\n if (!tokens)\n return false;\n do {\n var last = tokens.pop();\n } while (last && (last.type == \"comment\" || (last.type == \"text\" && last.value.match(/^\\s+$/))));\n\n if (!last)\n return false;\n\n return (last.type == \"keyword\" && outdents[last.value]);\n };\n\n this.autoOutdent = function(state, doc, row) {\n\n row += 1;\n var indent = this.$getIndent(doc.getLine(row));\n var tab = doc.getTabString();\n if (indent.slice(-tab.length) == tab)\n doc.remove(new Range(row, indent.length-tab.length, row, indent.length));\n };\n\n this.$id = \"ace/mode/sh\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n});\n","ace.define(\"ace/theme/github\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\"], function(acequire, exports, module) {\n\nexports.isDark = false;\nexports.cssClass = \"ace-github\";\nexports.cssText = \"\\\n.ace-github .ace_gutter {\\\nbackground: #e8e8e8;\\\ncolor: #AAA;\\\n}\\\n.ace-github {\\\nbackground: #fff;\\\ncolor: #000;\\\n}\\\n.ace-github .ace_keyword {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_string {\\\ncolor: #D14;\\\n}\\\n.ace-github .ace_variable.ace_class {\\\ncolor: teal;\\\n}\\\n.ace-github .ace_constant.ace_numeric {\\\ncolor: #099;\\\n}\\\n.ace-github .ace_constant.ace_buildin {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_support.ace_function {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_comment {\\\ncolor: #998;\\\nfont-style: italic;\\\n}\\\n.ace-github .ace_variable.ace_language {\\\ncolor: #0086B3;\\\n}\\\n.ace-github .ace_paren {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_boolean {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_string.ace_regexp {\\\ncolor: #009926;\\\nfont-weight: normal;\\\n}\\\n.ace-github .ace_variable.ace_instance {\\\ncolor: teal;\\\n}\\\n.ace-github .ace_constant.ace_language {\\\nfont-weight: bold;\\\n}\\\n.ace-github .ace_cursor {\\\ncolor: black;\\\n}\\\n.ace-github.ace_focus .ace_marker-layer .ace_active-line {\\\nbackground: rgb(255, 255, 204);\\\n}\\\n.ace-github .ace_marker-layer .ace_active-line {\\\nbackground: rgb(245, 245, 245);\\\n}\\\n.ace-github .ace_marker-layer .ace_selection {\\\nbackground: rgb(181, 213, 255);\\\n}\\\n.ace-github.ace_multiselect .ace_selection.ace_start {\\\nbox-shadow: 0 0 3px 0px white;\\\n}\\\n.ace-github.ace_nobold .ace_line > span {\\\nfont-weight: normal !important;\\\n}\\\n.ace-github .ace_marker-layer .ace_step {\\\nbackground: rgb(252, 255, 0);\\\n}\\\n.ace-github .ace_marker-layer .ace_stack {\\\nbackground: rgb(164, 229, 101);\\\n}\\\n.ace-github .ace_marker-layer .ace_bracket {\\\nmargin: -1px 0 0 -1px;\\\nborder: 1px solid rgb(192, 192, 192);\\\n}\\\n.ace-github .ace_gutter-active-line {\\\nbackground-color : rgba(0, 0, 0, 0.07);\\\n}\\\n.ace-github .ace_marker-layer .ace_selected-word {\\\nbackground: rgb(250, 250, 255);\\\nborder: 1px solid rgb(200, 200, 250);\\\n}\\\n.ace-github .ace_invisible {\\\ncolor: #BFBFBF\\\n}\\\n.ace-github .ace_print-margin {\\\nwidth: 1px;\\\nbackground: #e8e8e8;\\\n}\\\n.ace-github .ace_indent-guide {\\\nbackground: url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\\\") right repeat-y;\\\n}\";\n\n var dom = acequire(\"../lib/dom\");\n dom.importCssString(exports.cssText, exports.cssClass);\n});\n","ace.define(\"ace/mode/json_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 JsonHighlightRules = function() {\n this.$rules = {\n \"start\" : [\n {\n token : \"variable\", // single line\n regex : '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]\\\\s*(?=:)'\n }, {\n token : \"string\", // single line\n regex : '\"',\n next : \"string\"\n }, {\n token : \"constant.numeric\", // hex\n regex : \"0[xX][0-9a-fA-F]+\\\\b\"\n }, {\n token : \"constant.numeric\", // float\n regex : \"[+-]?\\\\d+(?:(?:\\\\.\\\\d*)?(?:[eE][+-]?\\\\d+)?)?\\\\b\"\n }, {\n token : \"constant.language.boolean\",\n regex : \"(?:true|false)\\\\b\"\n }, {\n token : \"text\", // single quoted strings are not allowed\n regex : \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }, {\n token : \"comment\", // comments are not allowed, but who cares?\n regex : \"\\\\/\\\\/.*$\"\n }, {\n token : \"comment.start\", // comments are not allowed, but who cares?\n regex : \"\\\\/\\\\*\",\n next : \"comment\"\n }, {\n token : \"paren.lparen\",\n regex : \"[[({]\"\n }, {\n token : \"paren.rparen\",\n regex : \"[\\\\])}]\"\n }, {\n token : \"text\",\n regex : \"\\\\s+\"\n }\n ],\n \"string\" : [\n {\n token : \"constant.language.escape\",\n regex : /\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|[\"\\\\\\/bfnrt])/\n }, {\n token : \"string\",\n regex : '\"|$',\n next : \"start\"\n }, {\n defaultToken : \"string\"\n }\n ],\n \"comment\" : [\n {\n token : \"comment.end\", // comments are not allowed, but who cares?\n regex : \"\\\\*\\\\/\",\n next : \"start\"\n }, {\n defaultToken: \"comment\"\n }\n ]\n };\n \n};\n\noop.inherits(JsonHighlightRules, TextHighlightRules);\n\nexports.JsonHighlightRules = JsonHighlightRules;\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/json\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/json_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/mode/behaviour/cstyle\",\"ace/mode/folding/cstyle\",\"ace/worker/worker_client\"], function(acequire, exports, module) {\n\"use strict\";\n\nvar oop = acequire(\"../lib/oop\");\nvar TextMode = acequire(\"./text\").Mode;\nvar HighlightRules = acequire(\"./json_highlight_rules\").JsonHighlightRules;\nvar MatchingBraceOutdent = acequire(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar CstyleBehaviour = acequire(\"./behaviour/cstyle\").CstyleBehaviour;\nvar CStyleFoldMode = acequire(\"./folding/cstyle\").FoldMode;\nvar WorkerClient = acequire(\"../worker/worker_client\").WorkerClient;\n\nvar Mode = function() {\n this.HighlightRules = HighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.$behaviour = new CstyleBehaviour();\n this.foldingRules = new CStyleFoldMode();\n};\noop.inherits(Mode, TextMode);\n\n(function() {\n\n this.getNextLineIndent = function(state, line, tab) {\n var indent = this.$getIndent(line);\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.createWorker = function(session) {\n var worker = new WorkerClient([\"ace\"], require(\"../worker/json\"), \"JsonWorker\");\n worker.attachToDocument(session.getDocument());\n\n worker.on(\"annotate\", function(e) {\n session.setAnnotations(e.data);\n });\n\n worker.on(\"terminate\", function() {\n session.clearAnnotations();\n });\n\n return worker;\n };\n\n\n this.$id = \"ace/mode/json\";\n}).call(Mode.prototype);\n\nexports.Mode = Mode;\n});\n","module.exports = (__webpack_require__(\"bricks/presentational-bricks:JYlb\"))(\"lc5D\");"],"sourceRoot":""}