@flatbiz/antd 4.4.12 → 4.4.14
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.
- package/esm/ace-editor-groovy/index.js +1 -1
- package/esm/ace-editor-groovy/index.js.map +1 -1
- package/esm/ace-editor-java/index.js +1 -1
- package/esm/ace-editor-java/index.js.map +1 -1
- package/esm/ace-editor-json/index.js +1 -1
- package/esm/ace-editor-json/index.js.map +1 -1
- package/esm/ace-editor-mysql/index.js +1 -1
- package/esm/ace-editor-mysql/index.js.map +1 -1
- package/esm/ace-editor-xml/index.js +1 -1
- package/esm/ace-editor-xml/index.js.map +1 -1
- package/esm/date-picker-wrapper/index.js +1 -1
- package/esm/date-picker-wrapper/index.js.map +1 -1
- package/esm/date-range-picker-wrapper/index.js +1 -1
- package/esm/date-range-picker-wrapper/index.js.map +1 -1
- package/esm/date-range-picker-wrapper-form-item/index.js +2 -1
- package/esm/date-range-picker-wrapper-form-item/index.js.map +1 -1
- package/esm/drag-form-list/index.css +1 -1
- package/esm/drag-form-list/index.js +4 -1
- package/esm/drag-form-list/index.js.map +1 -1
- package/esm/easy-form/index.js +2 -1
- package/esm/easy-form/index.js.map +1 -1
- package/esm/easy-table/index.js +5 -2
- package/esm/easy-table/index.js.map +1 -1
- package/esm/file-export/index.js +1 -1
- package/esm/file-export/index.js.map +1 -1
- package/esm/file-import/index.js.map +1 -1
- package/esm/form-item-text/index.js +2 -1
- package/esm/form-item-text/index.js.map +1 -1
- package/esm/form-item-wrapper/index.css +1 -0
- package/esm/form-item-wrapper/index.js +2 -1
- package/esm/form-item-wrapper/index.js.map +1 -1
- package/esm/form-list-wrapper/index.js +4 -1
- package/esm/form-list-wrapper/index.js.map +1 -1
- package/esm/form-wrapper/index.css +1 -0
- package/esm/form-wrapper/index.js +2 -1
- package/esm/form-wrapper/index.js.map +1 -1
- package/esm/index.js +5 -4
- package/esm/modal-action/index.js.map +1 -1
- package/esm/pre-defined-class-name/index.js +1 -1
- package/esm/pre-defined-class-name/index.js.map +1 -1
- package/esm/upload-wrapper/index.js.map +1 -1
- package/index.d.ts +235 -77
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/node_modules/ace-builds/src-noconflict/mode-java.js","@flatbiz/antd/node_modules/ace-builds/src-noconflict/snippets/java.js","@flatbiz/antd/src/ace-editor-java/editor.tsx"],"sourcesContent":["ace.define(\"ace/mode/jsdoc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar JsDocCommentHighlightRules = function () {\n this.$rules = {\n \"start\": [\n {\n token: [\"comment.doc.tag\", \"comment.doc.text\", \"lparen.doc\"],\n regex: \"(@(?:param|member|typedef|property|namespace|var|const|callback))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: [\"rparen.doc\", \"text.doc\", \"variable.parameter.doc\", \"lparen.doc\", \"variable.parameter.doc\", \"rparen.doc\"],\n regex: /(})(\\s*)(?:([\\w=:\\/\\.]+)|(?:(\\[)([\\w=:\\/\\.]+)(\\])))/,\n next: \"pop\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"lparen.doc\"],\n regex: \"(@(?:returns?|yields|type|this|suppress|public|protected|private|package|modifies|\"\n + \"implements|external|exception|throws|enum|define|extends))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@(?:alias|memberof|instance|module|name|lends|namespace|external|this|template|\"\n + \"requires|param|implements|function|extends|typedef|mixes|constructor|var|\"\n + \"memberof\\\\!|event|listens|exports|class|constructs|interface|emits|fires|\"\n + \"throws|const|callback|borrows|augments))(\\\\s+)(\\\\w[\\\\w#\\.:\\/~\\\"\\\\-]*)?\"\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@method)(\\\\s+)(\\\\w[\\\\w\\.\\\\(\\\\)]*)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@access\\\\s+(?:private|public|protected)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@kind\\\\s+(?:class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@\\\\w+(?=\\\\s|$)\"\n },\n JsDocCommentHighlightRules.getTagRule(),\n {\n defaultToken: \"comment.doc\",\n caseInsensitive: true\n }\n ],\n \"doc-syntax\": [{\n token: \"operator.doc\",\n regex: /[|:]/\n }, {\n token: \"paren.doc\",\n regex: /[\\[\\]]/\n }]\n };\n this.normalizeRules();\n};\noop.inherits(JsDocCommentHighlightRules, TextHighlightRules);\nJsDocCommentHighlightRules.getTagRule = function (start) {\n return {\n token: \"comment.doc.tag.storage.type\",\n regex: \"\\\\b(?:TODO|FIXME|XXX|HACK)\\\\b\"\n };\n};\nJsDocCommentHighlightRules.getStartRule = function (start) {\n return {\n token: \"comment.doc\", // doc comment\n regex: \"\\\\/\\\\*(?=\\\\*)\",\n next: start\n };\n};\nJsDocCommentHighlightRules.getEndRule = function (start) {\n return {\n token: \"comment.doc\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: start\n };\n};\nexports.JsDocCommentHighlightRules = JsDocCommentHighlightRules;\n\n});\n\nace.define(\"ace/mode/javascript_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/jsdoc_comment_highlight_rules\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar DocCommentHighlightRules = require(\"./jsdoc_comment_highlight_rules\").JsDocCommentHighlightRules;\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar identifierRe = \"[a-zA-Z\\\\$_\\u00a1-\\uffff][a-zA-Z\\\\d\\\\$_\\u00a1-\\uffff]*\";\nvar JavaScriptHighlightRules = function (options) {\n var keywordMapper = this.createKeywordMapper({\n \"variable.language\": \"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|\" + // Constructors\n \"Namespace|QName|XML|XMLList|\" + // E4X\n \"ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|\" +\n \"Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|\" +\n \"Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|\" + // Errors\n \"SyntaxError|TypeError|URIError|\" +\n \"decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|\" + // Non-constructor functions\n \"isNaN|parseFloat|parseInt|\" +\n \"JSON|Math|\" + // Other\n \"this|arguments|prototype|window|document\", // Pseudo\n \"keyword\": \"const|yield|import|get|set|async|await|\" +\n \"break|case|catch|continue|default|delete|do|else|finally|for|function|\" +\n \"if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|\" +\n \"__parent__|__count__|escape|unescape|with|__proto__|\" +\n \"class|enum|extends|super|export|implements|private|public|interface|package|protected|static|constructor\",\n \"storage.type\": \"const|let|var|function\",\n \"constant.language\": \"null|Infinity|NaN|undefined\",\n \"support.function\": \"alert\",\n \"constant.language.boolean\": \"true|false\"\n }, \"identifier\");\n var kwBeforeRe = \"case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void\";\n var escapedRe = \"\\\\\\\\(?:x[0-9a-fA-F]{2}|\" + // hex\n \"u[0-9a-fA-F]{4}|\" + // unicode\n \"u{[0-9a-fA-F]{1,6}}|\" + // es6 unicode\n \"[0-2][0-7]{0,2}|\" + // oct\n \"3[0-7][0-7]?|\" + // oct\n \"[4-7][0-7]?|\" + //oct\n \".)\";\n this.$rules = {\n \"no_regex\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"no_regex\"),\n {\n token: \"string\",\n regex: \"'(?=.)\",\n next: \"qstring\"\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n next: \"qqstring\"\n }, {\n token: \"constant.numeric\", // hexadecimal, octal and binary\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\", // decimal integers and floats\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"support.function\",\n \"punctuation.operator\", \"entity.name.function\", \"text\", \"keyword.operator\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(prototype)(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"keyword.operator\", \"text\", \"storage.type\",\n \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s+)(\\\\w+)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(function\\\\*?)(\\\\s+)(\" + identifierRe + \")(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"punctuation.operator\",\n \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"text\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"keyword\",\n regex: \"from(?=\\\\s*('|\\\"))\"\n }, {\n token: \"keyword\",\n regex: \"(?:\" + kwBeforeRe + \")\\\\b\",\n next: \"start\"\n }, {\n token: \"support.constant\",\n regex: /that\\b/\n }, {\n token: [\"storage.type\", \"punctuation.operator\", \"support.function.firebug\"],\n regex: /(console)(\\.)(warn|info|log|error|debug|time|trace|timeEnd|assert)\\b/\n }, {\n token: keywordMapper,\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/,\n next: \"property\"\n }, {\n token: \"storage.type\",\n regex: /=>/,\n next: \"start\"\n }, {\n token: \"keyword.operator\",\n regex: /--|\\+\\+|\\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\\|\\||\\?:|[!$%&*+\\-~\\/^]=?/,\n next: \"start\"\n }, {\n token: \"punctuation.operator\",\n regex: /[?:,;.]/,\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: /[\\[({]/,\n next: \"start\"\n }, {\n token: \"paren.rparen\",\n regex: /[\\])}]/\n }, {\n token: \"comment\",\n regex: /^#!.*$/\n }\n ],\n property: [{\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(?:(\\\\s+)(\\\\w+))?(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/\n }, {\n token: \"support.function\",\n regex: /(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\\b(?=\\()/\n }, {\n token: \"support.function.dom\",\n regex: /(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\\b(?=\\()/\n }, {\n token: \"support.constant\",\n regex: /(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\\b/\n }, {\n token: \"identifier\",\n regex: identifierRe\n }, {\n regex: \"\",\n token: \"empty\",\n next: \"no_regex\"\n }\n ],\n \"start\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"start\"),\n {\n token: \"string.regexp\",\n regex: \"\\\\/\",\n next: \"regex\"\n }, {\n token: \"text\",\n regex: \"\\\\s+|^$\",\n next: \"start\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"regex\": [\n {\n token: \"regexp.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"string.regexp\",\n regex: \"/[sxngimy]*\",\n next: \"no_regex\"\n }, {\n token: \"invalid\",\n regex: /\\{\\d+\\b,?\\d*\\}[+*]|[+*$^?][+*]|[$^][?]|\\?{3,}/\n }, {\n token: \"constant.language.escape\",\n regex: /\\(\\?[:=!]|\\)|\\{\\d+\\b,?\\d*\\}|[+*]\\?|[()$^+*?.]/\n }, {\n token: \"constant.language.delimiter\",\n regex: /\\|/\n }, {\n token: \"constant.language.escape\",\n regex: /\\[\\^?/,\n next: \"regex_character_class\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp\"\n }\n ],\n \"regex_character_class\": [\n {\n token: \"regexp.charclass.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"constant.language.escape\",\n regex: \"]\",\n next: \"regex\"\n }, {\n token: \"constant.language.escape\",\n regex: \"-\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp.charachterclass\"\n }\n ],\n \"default_parameter\": [\n {\n token: \"string\",\n regex: \"'(?=.)\",\n push: [\n {\n token: \"string\",\n regex: \"'|$\",\n next: \"pop\"\n }, {\n include: \"qstring\"\n }\n ]\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n push: [\n {\n token: \"string\",\n regex: '\"|$',\n next: \"pop\"\n }, {\n include: \"qqstring\"\n }\n ]\n }, {\n token: \"constant.language\",\n regex: \"null|Infinity|NaN|undefined\"\n }, {\n token: \"constant.numeric\", // hexadecimal, octal and binary\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\", // decimal integers and floats\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: \"punctuation.operator\",\n regex: \",\",\n next: \"function_arguments\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"function_arguments\": [\n comments(\"function_arguments\"),\n {\n token: \"variable.parameter\",\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: \",\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"qqstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ],\n \"qstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ]\n };\n if (!options || !options.noES6) {\n this.$rules.no_regex.unshift({\n regex: \"[{}]\", onMatch: function (val, state, stack) {\n this.next = val == \"{\" ? this.nextState : \"\";\n if (val == \"{\" && stack.length) {\n stack.unshift(\"start\", state);\n }\n else if (val == \"}\" && stack.length) {\n stack.shift();\n this.next = stack.shift();\n if (this.next.indexOf(\"string\") != -1 || this.next.indexOf(\"jsx\") != -1)\n return \"paren.quasi.end\";\n }\n return val == \"{\" ? \"paren.lparen\" : \"paren.rparen\";\n },\n nextState: \"start\"\n }, {\n token: \"string.quasi.start\",\n regex: /`/,\n push: [{\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"paren.quasi.start\",\n regex: /\\${/,\n push: \"start\"\n }, {\n token: \"string.quasi.end\",\n regex: /`/,\n next: \"pop\"\n }, {\n defaultToken: \"string.quasi\"\n }]\n }, {\n token: [\"variable.parameter\", \"text\"],\n regex: \"(\" + identifierRe + \")(\\\\s*)(?=\\\\=>)\"\n }, {\n token: \"paren.lparen\",\n regex: \"(\\\\()(?=.+\\\\s*=>)\",\n next: \"function_arguments\"\n }, {\n token: \"variable.language\",\n regex: \"(?:(?:(?:Weak)?(?:Set|Map))|Promise)\\\\b\"\n });\n this.$rules[\"function_arguments\"].unshift({\n token: \"keyword.operator\",\n regex: \"=\",\n next: \"default_parameter\"\n }, {\n token: \"keyword.operator\",\n regex: \"\\\\.{3}\"\n });\n this.$rules[\"property\"].unshift({\n token: \"support.function\",\n regex: \"(findIndex|repeat|startsWith|endsWith|includes|isSafeInteger|trunc|cbrt|log2|log10|sign|then|catch|\"\n + \"finally|resolve|reject|race|any|all|allSettled|keys|entries|isInteger)\\\\b(?=\\\\()\"\n }, {\n token: \"constant.language\",\n regex: \"(?:MAX_SAFE_INTEGER|MIN_SAFE_INTEGER|EPSILON)\\\\b\"\n });\n if (!options || options.jsx != false)\n JSX.call(this);\n }\n this.embedRules(DocCommentHighlightRules, \"doc-\", [DocCommentHighlightRules.getEndRule(\"no_regex\")]);\n this.normalizeRules();\n};\noop.inherits(JavaScriptHighlightRules, TextHighlightRules);\nfunction JSX() {\n var tagRegex = identifierRe.replace(\"\\\\d\", \"\\\\d\\\\-\");\n var jsxTag = {\n onMatch: function (val, state, stack) {\n var offset = val.charAt(1) == \"/\" ? 2 : 1;\n if (offset == 1) {\n if (state != this.nextState)\n stack.unshift(this.next, this.nextState, 0);\n else\n stack.unshift(this.next);\n stack[2]++;\n }\n else if (offset == 2) {\n if (state == this.nextState) {\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.shift();\n stack.shift();\n }\n }\n }\n return [{\n type: \"meta.tag.punctuation.\" + (offset == 1 ? \"\" : \"end-\") + \"tag-open.xml\",\n value: val.slice(0, offset)\n }, {\n type: \"meta.tag.tag-name.xml\",\n value: val.substr(offset)\n }];\n },\n regex: \"</?\" + tagRegex + \"\",\n next: \"jsxAttributes\",\n nextState: \"jsx\"\n };\n this.$rules.start.unshift(jsxTag);\n var jsxJsRule = {\n regex: \"{\",\n token: \"paren.quasi.start\",\n push: \"start\"\n };\n this.$rules.jsx = [\n jsxJsRule,\n jsxTag,\n { include: \"reference\" },\n { defaultToken: \"string\" }\n ];\n this.$rules.jsxAttributes = [{\n token: \"meta.tag.punctuation.tag-close.xml\",\n regex: \"/?>\",\n onMatch: function (value, currentState, stack) {\n if (currentState == stack[0])\n stack.shift();\n if (value.length == 2) {\n if (stack[0] == this.nextState)\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.splice(0, 2);\n }\n }\n this.next = stack[0] || \"start\";\n return [{ type: this.token, value: value }];\n },\n nextState: \"jsx\"\n },\n jsxJsRule,\n comments(\"jsxAttributes\"),\n {\n token: \"entity.other.attribute-name.xml\",\n regex: tagRegex\n }, {\n token: \"keyword.operator.attribute-equals.xml\",\n regex: \"=\"\n }, {\n token: \"text.tag-whitespace.xml\",\n regex: \"\\\\s+\"\n }, {\n token: \"string.attribute-value.xml\",\n regex: \"'\",\n stateName: \"jsx_attr_q\",\n push: [\n { token: \"string.attribute-value.xml\", regex: \"'\", next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n }, {\n token: \"string.attribute-value.xml\",\n regex: '\"',\n stateName: \"jsx_attr_qq\",\n push: [\n { token: \"string.attribute-value.xml\", regex: '\"', next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n },\n jsxTag\n ];\n this.$rules.reference = [{\n token: \"constant.language.escape.reference.xml\",\n regex: \"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\\\.-]+;)\"\n }];\n}\nfunction comments(next) {\n return [\n {\n token: \"comment\", // multi line comment\n regex: /\\/\\*/,\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"\\\\*\\\\/\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }, {\n token: \"comment\",\n regex: \"\\\\/\\\\/\",\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"$|^\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }\n ];\n}\nexports.JavaScriptHighlightRules = JavaScriptHighlightRules;\n\n});\n\nace.define(\"ace/mode/matching_brace_outdent\",[\"require\",\"exports\",\"module\",\"ace/range\"], function(require, exports, module){\"use strict\";\nvar Range = require(\"../range\").Range;\nvar MatchingBraceOutdent = function () { };\n(function () {\n this.checkOutdent = function (line, input) {\n if (!/^\\s+$/.test(line))\n return false;\n return /^\\s*\\}/.test(input);\n };\n this.autoOutdent = function (doc, row) {\n var line = doc.getLine(row);\n var match = line.match(/^(\\s*\\})/);\n if (!match)\n return 0;\n var column = match[1].length;\n var openBracePos = doc.findMatchingBracket({ row: row, column: column });\n if (!openBracePos || openBracePos.row == row)\n return 0;\n var indent = this.$getIndent(doc.getLine(openBracePos.row));\n doc.replace(new Range(row, 0, row, column - 1), indent);\n };\n this.$getIndent = function (line) {\n return line.match(/^\\s*/)[0];\n };\n}).call(MatchingBraceOutdent.prototype);\nexports.MatchingBraceOutdent = MatchingBraceOutdent;\n\n});\n\nace.define(\"ace/mode/folding/cstyle\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/range\",\"ace/mode/folding/fold_mode\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar Range = require(\"../../range\").Range;\nvar BaseFoldMode = require(\"./fold_mode\").FoldMode;\nvar FoldMode = exports.FoldMode = function (commentRegex) {\n if (commentRegex) {\n this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.start));\n this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.end));\n }\n};\noop.inherits(FoldMode, BaseFoldMode);\n(function () {\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 if (this.singleLineBlockCommentRe.test(line)) {\n if (!this.startRegionRe.test(line) && !this.tripleStarBlockCommentRe.test(line))\n return \"\";\n }\n var fw = this._getFoldWidgetBase(session, foldStyle, row);\n if (!fw && this.startRegionRe.test(line))\n return \"start\"; // lineCommentRegionStart\n return fw;\n };\n this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {\n var line = session.getLine(row);\n if (this.startRegionRe.test(line))\n return this.getCommentRegionBlock(session, line, row);\n var match = line.match(this.foldingStartMarker);\n if (match) {\n var i = match.index;\n if (match[1])\n return this.openingBracketBlock(session, match[1], row, i);\n var range = session.getCommentFoldRange(row, i + match[0].length, 1);\n if (range && !range.isMultiLine()) {\n if (forceMultiline) {\n range = this.getSectionRange(session, row);\n }\n else if (foldStyle != \"all\")\n range = null;\n }\n return range;\n }\n if (foldStyle === \"markbegin\")\n return;\n var match = line.match(this.foldingStopMarker);\n if (match) {\n var i = match.index + match[0].length;\n if (match[1])\n return this.closingBracketBlock(session, match[1], row, i);\n return session.getCommentFoldRange(row, i, -1);\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 if (subRange) {\n if (subRange.start.row <= startRow) {\n break;\n }\n else if (subRange.isMultiLine()) {\n row = subRange.end.row;\n }\n else if (startIndent == indent) {\n break;\n }\n }\n endRow = row;\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 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)\n continue;\n if (m[1])\n depth--;\n else\n depth++;\n if (!depth)\n break;\n }\n var endRow = row;\n if (endRow > startRow) {\n return new Range(startRow, startColumn, endRow, line.length);\n }\n };\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/javascript\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/javascript_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/worker/worker_client\",\"ace/mode/behaviour/cstyle\",\"ace/mode/folding/cstyle\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextMode = require(\"./text\").Mode;\nvar JavaScriptHighlightRules = require(\"./javascript_highlight_rules\").JavaScriptHighlightRules;\nvar MatchingBraceOutdent = require(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar WorkerClient = require(\"../worker/worker_client\").WorkerClient;\nvar CstyleBehaviour = require(\"./behaviour/cstyle\").CstyleBehaviour;\nvar CStyleFoldMode = require(\"./folding/cstyle\").FoldMode;\nvar Mode = function () {\n this.HighlightRules = JavaScriptHighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.$behaviour = new CstyleBehaviour();\n this.foldingRules = new CStyleFoldMode();\n};\noop.inherits(Mode, TextMode);\n(function () {\n this.lineCommentStart = \"//\";\n this.blockComment = { start: \"/*\", end: \"*/\" };\n this.$quotes = { '\"': '\"', \"'\": \"'\", \"`\": \"`\" };\n this.$pairQuotesAfter = {\n \"`\": /\\w/\n };\n this.getNextLineIndent = function (state, line, tab) {\n var indent = this.$getIndent(line);\n var tokenizedLine = this.getTokenizer().getLineTokens(line, state);\n var tokens = tokenizedLine.tokens;\n var endState = tokenizedLine.state;\n if (tokens.length && tokens[tokens.length - 1].type == \"comment\") {\n return indent;\n }\n if (state == \"start\" || state == \"no_regex\") {\n var match = line.match(/^.*(?:\\bcase\\b.*:|[\\{\\(\\[])\\s*$/);\n if (match) {\n indent += tab;\n }\n }\n else if (state == \"doc-start\") {\n if (endState == \"start\" || endState == \"no_regex\") {\n return \"\";\n }\n var match = line.match(/^\\s*(\\/?)\\*/);\n if (match) {\n if (match[1]) {\n indent += \" \";\n }\n indent += \"* \";\n }\n }\n return indent;\n };\n this.checkOutdent = function (state, line, input) {\n return this.$outdent.checkOutdent(line, input);\n };\n this.autoOutdent = function (state, doc, row) {\n this.$outdent.autoOutdent(doc, row);\n };\n this.createWorker = function (session) {\n var worker = new WorkerClient([\"ace\"], \"ace/mode/javascript_worker\", \"JavaScriptWorker\");\n worker.attachToDocument(session.getDocument());\n worker.on(\"annotate\", function (results) {\n session.setAnnotations(results.data);\n });\n worker.on(\"terminate\", function () {\n session.clearAnnotations();\n });\n return worker;\n };\n this.$id = \"ace/mode/javascript\";\n this.snippetFileId = \"ace/snippets/javascript\";\n}).call(Mode.prototype);\nexports.Mode = Mode;\n\n});\n\nace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar DocCommentHighlightRules = function () {\n this.$rules = {\n \"start\": [\n {\n token: \"comment.doc.tag\",\n regex: \"@\\\\w+(?=\\\\s|$)\"\n }, DocCommentHighlightRules.getTagRule(), {\n defaultToken: \"comment.doc\",\n caseInsensitive: true\n }\n ]\n };\n};\noop.inherits(DocCommentHighlightRules, TextHighlightRules);\nDocCommentHighlightRules.getTagRule = function (start) {\n return {\n token: \"comment.doc.tag.storage.type\",\n regex: \"\\\\b(?:TODO|FIXME|XXX|HACK)\\\\b\"\n };\n};\nDocCommentHighlightRules.getStartRule = function (start) {\n return {\n token: \"comment.doc\", // doc comment\n regex: \"\\\\/\\\\*(?=\\\\*)\",\n next: start\n };\n};\nDocCommentHighlightRules.getEndRule = function (start) {\n return {\n token: \"comment.doc\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: start\n };\n};\nexports.DocCommentHighlightRules = DocCommentHighlightRules;\n\n});\n\nace.define(\"ace/mode/java_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/doc_comment_highlight_rules\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar DocCommentHighlightRules = require(\"./doc_comment_highlight_rules\").DocCommentHighlightRules;\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar JavaHighlightRules = function () {\n var identifierRe = \"[a-zA-Z_$][a-zA-Z0-9_$]*\";\n var keywords = (\"abstract|continue|for|new|switch|\" +\n \"assert|default|goto|package|synchronized|\" +\n \"boolean|do|if|private|this|\" +\n \"break|double|implements|protected|throw|\" +\n \"byte|else|import|public|throws|\" +\n \"case|enum|instanceof|return|transient|\" +\n \"catch|extends|int|short|try|\" +\n \"char|final|interface|static|void|\" +\n \"class|finally|long|strictfp|volatile|\" +\n \"const|float|native|super|while|\" +\n \"var|exports|opens|requires|uses|yield|\" +\n \"module|permits|(?:non\\\\-)?sealed|var|\" +\n \"provides|to|when|\" +\n \"open|record|transitive|with\");\n var buildinConstants = (\"null|Infinity|NaN|undefined\");\n var langClasses = (\"AbstractMethodError|AssertionError|ClassCircularityError|\" +\n \"ClassFormatError|Deprecated|EnumConstantNotPresentException|\" +\n \"ExceptionInInitializerError|IllegalAccessError|\" +\n \"IllegalThreadStateException|InstantiationError|InternalError|\" +\n \"NegativeArraySizeException|NoSuchFieldError|Override|Process|\" +\n \"ProcessBuilder|SecurityManager|StringIndexOutOfBoundsException|\" +\n \"SuppressWarnings|TypeNotPresentException|UnknownError|\" +\n \"UnsatisfiedLinkError|UnsupportedClassVersionError|VerifyError|\" +\n \"InstantiationException|IndexOutOfBoundsException|\" +\n \"ArrayIndexOutOfBoundsException|CloneNotSupportedException|\" +\n \"NoSuchFieldException|IllegalArgumentException|NumberFormatException|\" +\n \"SecurityException|Void|InheritableThreadLocal|IllegalStateException|\" +\n \"InterruptedException|NoSuchMethodException|IllegalAccessException|\" +\n \"UnsupportedOperationException|Enum|StrictMath|Package|Compiler|\" +\n \"Readable|Runtime|StringBuilder|Math|IncompatibleClassChangeError|\" +\n \"NoSuchMethodError|ThreadLocal|RuntimePermission|ArithmeticException|\" +\n \"NullPointerException|Long|Integer|Short|Byte|Double|Number|Float|\" +\n \"Character|Boolean|StackTraceElement|Appendable|StringBuffer|\" +\n \"Iterable|ThreadGroup|Runnable|Thread|IllegalMonitorStateException|\" +\n \"StackOverflowError|OutOfMemoryError|VirtualMachineError|\" +\n \"ArrayStoreException|ClassCastException|LinkageError|\" +\n \"NoClassDefFoundError|ClassNotFoundException|RuntimeException|\" +\n \"Exception|ThreadDeath|Error|Throwable|System|ClassLoader|\" +\n \"Cloneable|Class|CharSequence|Comparable|String|Object\");\n var keywordMapper = this.createKeywordMapper({\n \"variable.language\": \"this\",\n \"constant.language\": buildinConstants,\n \"support.function\": langClasses\n }, \"identifier\");\n this.$rules = {\n \"start\": [\n {\n token: \"comment\",\n regex: \"\\\\/\\\\/.*$\"\n },\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n {\n token: \"comment\", // multi line comment\n regex: \"\\\\/\\\\*\",\n next: \"comment\"\n },\n { include: \"multiline-strings\" },\n { include: \"strings\" },\n { include: \"constants\" },\n {\n regex: \"(open(?:\\\\s+))?module(?=\\\\s*\\\\w)\",\n token: \"keyword\",\n next: [{\n regex: \"{\",\n token: \"paren.lparen\",\n next: [{\n regex: \"}\",\n token: \"paren.rparen\",\n next: \"start\"\n }, {\n regex: \"\\\\b(requires|transitive|exports|opens|to|uses|provides|with)\\\\b\",\n token: \"keyword\"\n }]\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"identifier\",\n regex: \"\\\\w+\"\n }, {\n token: \"punctuation.operator\",\n regex: \".\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n regex: \"\", // exit if there is anything else\n next: \"start\"\n }]\n },\n { include: \"statements\" }\n ],\n \"comment\": [\n {\n token: \"comment\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: \"start\"\n }, {\n defaultToken: \"comment\"\n }\n ],\n \"strings\": [\n {\n token: [\"punctuation\", \"string\"],\n regex: /(\\.)(\")/,\n push: [\n {\n token: \"lparen\",\n regex: /\\\\\\{/,\n push: [\n {\n token: \"text\",\n regex: /$/,\n next: \"start\"\n }, {\n token: \"rparen\",\n regex: /}/,\n next: \"pop\"\n }, {\n include: \"strings\"\n }, {\n include: \"constants\"\n }, {\n include: \"statements\"\n }\n ]\n }, {\n token: \"string\",\n regex: /\"/,\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }\n ]\n }, {\n token: \"string\", // single line\n regex: '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]'\n }, {\n token: \"string\", // single line\n regex: \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }\n ],\n \"multiline-strings\": [\n {\n token: [\"punctuation\", \"string\"],\n regex: /(\\.)(\"\"\")/,\n push: [\n {\n token: \"string\",\n regex: '\"\"\"',\n next: \"pop\"\n }, {\n token: \"lparen\",\n regex: /\\\\\\{/,\n push: [\n {\n token: \"text\",\n regex: /$/,\n next: \"start\"\n }, {\n token: \"rparen\",\n regex: /}/,\n next: \"pop\"\n }, {\n include: \"multiline-strings\"\n }, {\n include: \"strings\"\n }, {\n include: \"constants\"\n }, {\n include: \"statements\"\n }\n ]\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\./\n }, {\n defaultToken: \"string\"\n }\n ]\n },\n {\n token: \"string\",\n regex: '\"\"\"',\n push: [\n {\n token: \"string\",\n regex: '\"\"\"',\n next: \"pop\"\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\./\n }, {\n defaultToken: \"string\"\n }\n ]\n }\n ],\n \"constants\": [\n {\n token: \"constant.numeric\", // hex\n regex: /0(?:[xX][0-9a-fA-F][0-9a-fA-F_]*|[bB][01][01_]*)[LlSsDdFfYy]?\\b/\n }, {\n token: \"constant.numeric\", // float\n regex: /[+-]?\\d[\\d_]*(?:(?:\\.[\\d_]*)?(?:[eE][+-]?[\\d_]+)?)?[LlSsDdFfYy]?\\b/\n }, {\n token: \"constant.language.boolean\",\n regex: \"(?:true|false)\\\\b\"\n }\n ],\n \"statements\": [\n {\n token: [\"keyword\", \"text\", \"identifier\"],\n regex: \"(record)(\\\\s+)(\" + identifierRe + \")\\\\b\"\n },\n {\n token: \"keyword\",\n regex: \"(?:\" + keywords + \")\\\\b\"\n }, {\n token: \"storage.type.annotation\",\n regex: \"@\" + identifierRe + \"\\\\b\"\n }, {\n token: \"entity.name.function\",\n regex: identifierRe + \"(?=\\\\()\"\n }, {\n token: keywordMapper, // TODO: Unicode escape sequences\n regex: identifierRe + \"\\\\b\"\n }, {\n token: \"keyword.operator\",\n regex: \"!|\\\\$|%|&|\\\\||\\\\^|\\\\*|\\\\/|\\\\-\\\\-|\\\\-|\\\\+\\\\+|\\\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\\\|\\\\||\\\\?|\\\\:|\\\\*=|\\\\/=|%=|\\\\+=|\\\\-=|&=|\\\\|=|\\\\^=|\\\\b(?:in|instanceof|new|delete|typeof|void)\"\n }, {\n token: \"lparen\",\n regex: \"[[({]\"\n }, {\n token: \"rparen\",\n regex: \"[\\\\])}]\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }\n ]\n };\n this.embedRules(DocCommentHighlightRules, \"doc-\", [DocCommentHighlightRules.getEndRule(\"start\")]);\n this.normalizeRules();\n};\noop.inherits(JavaHighlightRules, TextHighlightRules);\nexports.JavaHighlightRules = JavaHighlightRules;\n\n});\n\nace.define(\"ace/mode/folding/java\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/folding/cstyle\",\"ace/range\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar CStyleFoldMode = require(\"./cstyle\").FoldMode;\nvar Range = require(\"../../range\").Range;\nvar FoldMode = exports.FoldMode = function () { };\noop.inherits(FoldMode, CStyleFoldMode);\n(function () {\n this.importRegex = /^import /;\n this.getCStyleFoldWidget = this.getFoldWidget;\n this.getFoldWidget = function (session, foldStyle, row) {\n if (foldStyle === \"markbegin\") {\n var line = session.getLine(row);\n if (this.importRegex.test(line)) {\n if (row == 0 || !this.importRegex.test(session.getLine(row - 1)))\n return \"start\";\n }\n }\n return this.getCStyleFoldWidget(session, foldStyle, row);\n };\n this.getCstyleFoldWidgetRange = this.getFoldWidgetRange;\n this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {\n var line = session.getLine(row);\n var match = line.match(this.importRegex);\n if (!match || foldStyle !== \"markbegin\")\n return this.getCstyleFoldWidgetRange(session, foldStyle, row, forceMultiline);\n var startColumn = match[0].length;\n var maxRow = session.getLength();\n var startRow = row;\n var endRow = row;\n while (++row < maxRow) {\n var line = session.getLine(row);\n if (line.match(/^\\s*$/))\n continue;\n if (!line.match(this.importRegex))\n break;\n endRow = row;\n }\n if (endRow > startRow) {\n var endColumn = session.getLine(endRow).length;\n return new Range(startRow, startColumn, endRow, endColumn);\n }\n };\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/java\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/javascript\",\"ace/mode/java_highlight_rules\",\"ace/mode/folding/java\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar JavaScriptMode = require(\"./javascript\").Mode;\nvar JavaHighlightRules = require(\"./java_highlight_rules\").JavaHighlightRules;\nvar JavaFoldMode = require(\"./folding/java\").FoldMode;\nvar Mode = function () {\n JavaScriptMode.call(this);\n this.HighlightRules = JavaHighlightRules;\n this.foldingRules = new JavaFoldMode();\n};\noop.inherits(Mode, JavaScriptMode);\n(function () {\n this.createWorker = function (session) {\n return null;\n };\n this.$id = \"ace/mode/java\";\n this.snippetFileId = \"ace/snippets/java\";\n}).call(Mode.prototype);\nexports.Mode = Mode;\n\n}); (function() {\n ace.require([\"ace/mode/java\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","ace.define(\"ace/snippets/java.snippets\",[\"require\",\"exports\",\"module\"], function(require, exports, module){module.exports = \"## Access Modifiers\\nsnippet po\\n\\tprotected\\nsnippet pu\\n\\tpublic\\nsnippet pr\\n\\tprivate\\n##\\n## Annotations\\nsnippet before\\n\\t@Before\\n\\tstatic void ${1:intercept}(${2:args}) { ${3} }\\nsnippet mm\\n\\t@ManyToMany\\n\\t${1}\\nsnippet mo\\n\\t@ManyToOne\\n\\t${1}\\nsnippet om\\n\\t@OneToMany${1:(cascade=CascadeType.ALL)}\\n\\t${2}\\nsnippet oo\\n\\t@OneToOne\\n\\t${1}\\n##\\n## Basic Java packages and import\\nsnippet im\\n\\timport\\nsnippet j.b\\n\\tjava.beans.\\nsnippet j.i\\n\\tjava.io.\\nsnippet j.m\\n\\tjava.math.\\nsnippet j.n\\n\\tjava.net.\\nsnippet j.u\\n\\tjava.util.\\n##\\n## Class\\nsnippet cl\\n\\tclass ${1:`Filename(\\\"\\\", \\\"untitled\\\")`} ${2}\\nsnippet in\\n\\tinterface ${1:`Filename(\\\"\\\", \\\"untitled\\\")`} ${2:extends Parent}${3}\\nsnippet tc\\n\\tpublic class ${1:`Filename()`} extends ${2:TestCase}\\n##\\n## Class Enhancements\\nsnippet ext\\n\\textends \\nsnippet imp\\n\\timplements\\n##\\n## Comments\\nsnippet /*\\n\\t/*\\n\\t * ${1}\\n\\t */\\n##\\n## Constants\\nsnippet co\\n\\tstatic public final ${1:String} ${2:var} = ${3};${4}\\nsnippet cos\\n\\tstatic public final String ${1:var} = \\\"${2}\\\";${3}\\n##\\n## Control Statements\\nsnippet case\\n\\tcase ${1}:\\n\\t\\t${2}\\nsnippet def\\n\\tdefault:\\n\\t\\t${2}\\nsnippet el\\n\\telse\\nsnippet elif\\n\\telse if (${1}) ${2}\\nsnippet if\\n\\tif (${1}) ${2}\\nsnippet sw\\n\\tswitch (${1}) {\\n\\t\\t${2}\\n\\t}\\n##\\n## Create a Method\\nsnippet m\\n\\t${1:void} ${2:method}(${3}) ${4:throws }${5}\\n##\\n## Create a Variable\\nsnippet v\\n\\t${1:String} ${2:var}${3: = null}${4};${5}\\n##\\n## Enhancements to Methods, variables, classes, etc.\\nsnippet ab\\n\\tabstract\\nsnippet fi\\n\\tfinal\\nsnippet st\\n\\tstatic\\nsnippet sy\\n\\tsynchronized\\n##\\n## Error Methods\\nsnippet err\\n\\tSystem.err.print(\\\"${1:Message}\\\");\\nsnippet errf\\n\\tSystem.err.printf(\\\"${1:Message}\\\", ${2:exception});\\nsnippet errln\\n\\tSystem.err.println(\\\"${1:Message}\\\");\\n##\\n## Exception Handling\\nsnippet as\\n\\tassert ${1:test} : \\\"${2:Failure message}\\\";${3}\\nsnippet ca\\n\\tcatch(${1:Exception} ${2:e}) ${3}\\nsnippet thr\\n\\tthrow\\nsnippet ths\\n\\tthrows\\nsnippet try\\n\\ttry {\\n\\t\\t${3}\\n\\t} catch(${1:Exception} ${2:e}) {\\n\\t}\\nsnippet tryf\\n\\ttry {\\n\\t\\t${3}\\n\\t} catch(${1:Exception} ${2:e}) {\\n\\t} finally {\\n\\t}\\n##\\n## Find Methods\\nsnippet findall\\n\\tList<${1:listName}> ${2:items} = ${1}.findAll();${3}\\nsnippet findbyid\\n\\t${1:var} ${2:item} = ${1}.findById(${3});${4}\\n##\\n## Javadocs\\nsnippet /**\\n\\t/**\\n\\t * ${1}\\n\\t */\\nsnippet @au\\n\\t@author `system(\\\"grep \\\\`id -un\\\\` /etc/passwd | cut -d \\\\\\\":\\\\\\\" -f5 | cut -d \\\\\\\",\\\\\\\" -f1\\\")`\\nsnippet @br\\n\\t@brief ${1:Description}\\nsnippet @fi\\n\\t@file ${1:`Filename()`}.java\\nsnippet @pa\\n\\t@param ${1:param}\\nsnippet @re\\n\\t@return ${1:param}\\n##\\n## Logger Methods\\nsnippet debug\\n\\tLogger.debug(${1:param});${2}\\nsnippet error\\n\\tLogger.error(${1:param});${2}\\nsnippet info\\n\\tLogger.info(${1:param});${2}\\nsnippet warn\\n\\tLogger.warn(${1:param});${2}\\n##\\n## Loops\\nsnippet enfor\\n\\tfor (${1} : ${2}) ${3}\\nsnippet for\\n\\tfor (${1}; ${2}; ${3}) ${4}\\nsnippet wh\\n\\twhile (${1}) ${2}\\n##\\n## Main method\\nsnippet main\\n\\tpublic static void main (String[] args) {\\n\\t\\t${1:/* code */}\\n\\t}\\n##\\n## Print Methods\\nsnippet print\\n\\tSystem.out.print(\\\"${1:Message}\\\");\\nsnippet printf\\n\\tSystem.out.printf(\\\"${1:Message}\\\", ${2:args});\\nsnippet println\\n\\tSystem.out.println(${1});\\n##\\n## Render Methods\\nsnippet ren\\n\\trender(${1:param});${2}\\nsnippet rena\\n\\trenderArgs.put(\\\"${1}\\\", ${2});${3}\\nsnippet renb\\n\\trenderBinary(${1:param});${2}\\nsnippet renj\\n\\trenderJSON(${1:param});${2}\\nsnippet renx\\n\\trenderXml(${1:param});${2}\\n##\\n## Setter and Getter Methods\\nsnippet set\\n\\t${1:public} void set${3:}(${2:String} ${4:}){\\n\\t\\tthis.$4 = $4;\\n\\t}\\nsnippet get\\n\\t${1:public} ${2:String} get${3:}(){\\n\\t\\treturn this.${4:};\\n\\t}\\n##\\n## Terminate Methods or Loops\\nsnippet re\\n\\treturn\\nsnippet br\\n\\tbreak;\\n##\\n## Test Methods\\nsnippet t\\n\\tpublic void test${1:Name}() throws Exception {\\n\\t\\t${2}\\n\\t}\\nsnippet test\\n\\t@Test\\n\\tpublic void test${1:Name}() throws Exception {\\n\\t\\t${2}\\n\\t}\\n##\\n## Utils\\nsnippet Sc\\n\\tScanner\\n##\\n## Miscellaneous\\nsnippet action\\n\\tpublic static void ${1:index}(${2:args}) { ${3} }\\nsnippet rnf\\n\\tnotFound(${1:param});${2}\\nsnippet rnfin\\n\\tnotFoundIfNull(${1:param});${2}\\nsnippet rr\\n\\tredirect(${1:param});${2}\\nsnippet ru\\n\\tunauthorized(${1:param});${2}\\nsnippet unless\\n\\t(unless=${1:param});${2}\\n\";\n\n});\n\nace.define(\"ace/snippets/java\",[\"require\",\"exports\",\"module\",\"ace/snippets/java.snippets\"], function(require, exports, module){\"use strict\";\nexports.snippetText = require(\"./java.snippets\");\nexports.scope = \"java\";\n\n}); (function() {\n ace.require([\"ace/snippets/java\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nimport { useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\n\nimport { classNames } from '@dimjs/utils';\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-java';\nimport 'ace-builds/src-noconflict/snippets/java';\n\nexport type AceEditorJavaProps = Omit<IAceEditorProps, 'onLoad' | 'mode' | 'value' | 'onChange' | 'theme'> & {\n /** 编辑器高度,默认值:100%,可输入值例如 300px、100% */\n height?: string;\n value?: string | TPlainObject | TPlainObject[];\n onChange?: (value?: string | TPlainObject | TPlainObject[]) => void;\n /** 配置输入自动提示关键字 */\n autoCompleterList?: { name: string; desc?: string }[];\n /**\n * 编辑器主题配置,例如:github、terminal、xcode\n * ```\n * 1. 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 2. 配置 theme = xxxx\n * ```\n */\n theme?: string;\n};\n\n/**\n * java编辑器\n * ```\n * 1. 受控组件,需要使用value、onChange配合显示数据\n * 2. heigth 默认为100%,如果外层无高度,需要自定义设置height属性\n * 3. 通过 autoCompleterList 配置自动提示关键字\n * 4. 通过 hiddenVerifyBtn、hiddenFormatterBtn可隐藏底部操作按钮\n * 5. 通过 theme 配置编辑器主题,例如:\n * 5.1 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 5.2 配置 theme = xxxx\n * ```\n */\nexport const AceEditorJava = (props: AceEditorJavaProps) => {\n const { value, onChange, height, autoCompleterList, ...otherProps } = props;\n const heightFt = isUndefinedOrNull(height) ? '100%' : height;\n\n const [rootNodekey, setRootNodekey] = useState(Date.now());\n\n const editorRef = useRef<TAny>();\n\n const valueNew = useMemo(() => {\n if (isObject(value)) {\n return JSON.stringify(value, null, 2);\n }\n return value as string | undefined;\n }, [value]);\n\n const getCompletions = hooks.useCallbackRef((_a, _b, _c, _d, callback) => {\n callback(\n null,\n autoCompleterList?.map((item) => ({\n name: item.name,\n value: item.name,\n // score: 100,\n meta: item.desc,\n })),\n );\n });\n\n const onLoad = (editor) => {\n editorRef.current = editor;\n /** 向编辑器中添加自动补全列表 */\n const findIndex = editor.completers.findIndex((item) => item.id === 'custom');\n if (findIndex >= 0) {\n editor.completers[findIndex] = { getCompletions, id: 'custom' };\n } else {\n editor.completers.push({ getCompletions, id: 'custom' });\n }\n };\n\n return (\n <div\n key={rootNodekey}\n className={classNames('ace-editor-java', props.className)}\n style={{ height: heightFt, ...props.style }}\n >\n <ErrorBoundaryWrapper\n onRenderReset={() => {\n onChange?.(undefined);\n setRootNodekey(Date.now());\n }}\n >\n <Ace\n fontSize={14}\n showPrintMargin={true}\n showGutter={true}\n highlightActiveLine={true}\n height=\"100%\"\n width=\"auto\"\n placeholder=\"请输入\"\n {...otherProps}\n setOptions={{\n useWorker: false,\n enableBasicAutocompletion: false,\n enableLiveAutocompletion: true,\n enableSnippets: false,\n showLineNumbers: true,\n tabSize: 2,\n ...otherProps.setOptions,\n }}\n mode=\"java\"\n onLoad={onLoad}\n onChange={onChange}\n value={valueNew}\n />\n </ErrorBoundaryWrapper>\n </div>\n );\n};\n"],"names":["ace","define","require","exports","module","oop","TextHighlightRules","JsDocCommentHighlightRules","this","$rules","start","token","regex","push","include","next","defaultToken","getTagRule","caseInsensitive","normalizeRules","inherits","getStartRule","getEndRule","DocCommentHighlightRules","identifierRe","JavaScriptHighlightRules","options","keywordMapper","createKeywordMapper","keyword","kwBeforeRe","escapedRe","no_regex","comments","property","regex_character_class","default_parameter","function_arguments","qqstring","consumeLineEnd","qstring","noES6","unshift","onMatch","val","state","stack","nextState","length","shift","indexOf","jsx","JSX","call","embedRules","tagRegex","replace","jsxTag","offset","charAt","type","value","slice","substr","jsxJsRule","jsxAttributes","currentState","splice","stateName","reference","Range","MatchingBraceOutdent","checkOutdent","line","input","test","autoOutdent","doc","row","getLine","match","column","openBracePos","findMatchingBracket","indent","$getIndent","prototype","BaseFoldMode","FoldMode","commentRegex","foldingStartMarker","RegExp","source","foldingStopMarker","end","singleLineBlockCommentRe","tripleStarBlockCommentRe","startRegionRe","_getFoldWidgetBase","getFoldWidget","session","foldStyle","fw","getFoldWidgetRange","forceMultiline","getCommentRegionBlock","i","index","openingBracketBlock","range","getCommentFoldRange","isMultiLine","getSectionRange","closingBracketBlock","startIndent","search","startRow","startColumn","endRow","maxRow","getLength","subRange","re","depth","m","exec","TextMode","Mode","WorkerClient","CstyleBehaviour","CStyleFoldMode","HighlightRules","$outdent","$behaviour","foldingRules","lineCommentStart","blockComment","$quotes","$pairQuotesAfter","getNextLineIndent","tab","tokenizedLine","getTokenizer","getLineTokens","tokens","endState","createWorker","worker","attachToDocument","getDocument","on","results","setAnnotations","data","clearAnnotations","$id","snippetFileId","JavaHighlightRules","keywords","buildinConstants","langClasses","comment","strings","constants","statements","importRegex","getCStyleFoldWidget","getCstyleFoldWidgetRange","endColumn","JavaScriptMode","JavaFoldMode","snippetText","scope","AceEditorJava","props","onChange","height","autoCompleterList","otherProps","_objectWithoutPropertiesLoose","_excluded","heightFt","isUndefinedOrNull","_useState","useState","Date","now","rootNodekey","setRootNodekey","editorRef","useRef","valueNew","useMemo","_isObject","JSON","stringify","getCompletions","_hooks","useCallbackRef","_a","_b","_c","_d","callback","map","item","name","meta","desc","onLoad","editor","current","findIndex","completers","id","_jsx","className","_classNames","style","_extends","children","ErrorBoundaryWrapper","onRenderReset","undefined","Ace","fontSize","showPrintMargin","showGutter","highlightActiveLine","width","placeholder","setOptions","useWorker","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","showLineNumbers","tabSize","mode"],"mappings":"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O,GACPG,KAAM,aAGdH,MAAS,CACL,CACID,MAAO,0BACPC,MAAO,6CACR,CACCD,MAAO,gBACPC,MAAO,cACPG,KAAM,YACP,CACCJ,MAAO,UACPC,MAAO,iDACR,CACCD,MAAO,2BACPC,MAAO,iDACR,CACCD,MAAO,8BACPC,MAAO,MACR,CACCD,MAAO,2BACPC,MAAO,QACPG,KAAM,yBACP,CACCJ,MAAO,QACPC,MAAO,IACPG,KAAM,YACP,CACCC,aAAc,kBAGtBmB,sBAAyB,CACrB,CACIxB,MAAO,oCACPC,MAAO,6CACR,CACCD,MAAO,2BACPC,MAAO,IACPG,KAAM,SACP,CACCJ,MAAO,2BACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,IACPG,KAAM,YACP,CACCC,aAAc,kCAGtBoB,kBAAqB,CACjB,CACIzB,MAAO,SACPC,MAAO,SACPC,KAAM,CACF,CACIF,MAAO,SACPC,MAAO,MACPG,KAAM,OACP,CACCD,QAAS,aAGlB,CACCH,MAAO,SACPC,MAAO,SACPC,KAAM,CACF,CACIF,MAAO,SACPC,MAAO,MACPG,KAAM,OACP,CACCD,QAAS,cAGlB,CACCH,MAAO,oBACPC,MAAO,+BACR,CACCD,MAAO,mBACPC,MAAO,gDACR,CACCD,MAAO,mBACPC,MAAO,gDACR,CACCD,MAAO,uBACPC,MAAO,IACPG,KAAM,sBACP,CACCJ,MAAO,OACPC,MAAO,QACR,CACCD,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,GACPG,KAAM,aAGdsB,mBAAsB,CAClBJ,EAAS,sBACT,CACItB,MAAO,qBACPC,MAAOY,GACR,CACCb,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,OACPC,MAAO,QACR,CACCD,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,GACPG,KAAM,aAGduB,SAAY,CACR,CACI3B,MAAO,2BACPC,MAAOmB,GACR,CACCpB,MAAO,SACPC,MAAO,QACP2B,eAAgB,MACjB,CACC5B,MAAO,SACPC,MAAO,MACPG,KAAM,YACP,CACCC,aAAc,WAGtBwB,QAAW,CACP,C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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/node_modules/ace-builds/src-noconflict/mode-java.js","@flatbiz/antd/node_modules/ace-builds/src-noconflict/snippets/java.js","@flatbiz/antd/src/ace-editor-java/editor.tsx"],"sourcesContent":["ace.define(\"ace/mode/jsdoc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar JsDocCommentHighlightRules = function () {\n this.$rules = {\n \"start\": [\n {\n token: [\"comment.doc.tag\", \"comment.doc.text\", \"lparen.doc\"],\n regex: \"(@(?:param|member|typedef|property|namespace|var|const|callback))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: [\"rparen.doc\", \"text.doc\", \"variable.parameter.doc\", \"lparen.doc\", \"variable.parameter.doc\", \"rparen.doc\"],\n regex: /(})(\\s*)(?:([\\w=:\\/\\.]+)|(?:(\\[)([\\w=:\\/\\.]+)(\\])))/,\n next: \"pop\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"lparen.doc\"],\n regex: \"(@(?:returns?|yields|type|this|suppress|public|protected|private|package|modifies|\"\n + \"implements|external|exception|throws|enum|define|extends))(\\\\s*)({)\",\n push: [\n {\n token: \"lparen.doc\",\n regex: \"{\",\n push: [\n {\n include: \"doc-syntax\"\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }\n ]\n }, {\n token: \"rparen.doc\",\n regex: \"}|(?=$)\",\n next: \"pop\"\n }, {\n include: \"doc-syntax\"\n }, {\n defaultToken: \"text.doc\"\n }\n ]\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@(?:alias|memberof|instance|module|name|lends|namespace|external|this|template|\"\n + \"requires|param|implements|function|extends|typedef|mixes|constructor|var|\"\n + \"memberof\\\\!|event|listens|exports|class|constructs|interface|emits|fires|\"\n + \"throws|const|callback|borrows|augments))(\\\\s+)(\\\\w[\\\\w#\\.:\\/~\\\"\\\\-]*)?\"\n }, {\n token: [\"comment.doc.tag\", \"text.doc\", \"variable.parameter.doc\"],\n regex: \"(@method)(\\\\s+)(\\\\w[\\\\w\\.\\\\(\\\\)]*)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@access\\\\s+(?:private|public|protected)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@kind\\\\s+(?:class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\"\n }, {\n token: \"comment.doc.tag\",\n regex: \"@\\\\w+(?=\\\\s|$)\"\n },\n JsDocCommentHighlightRules.getTagRule(),\n {\n defaultToken: \"comment.doc\",\n caseInsensitive: true\n }\n ],\n \"doc-syntax\": [{\n token: \"operator.doc\",\n regex: /[|:]/\n }, {\n token: \"paren.doc\",\n regex: /[\\[\\]]/\n }]\n };\n this.normalizeRules();\n};\noop.inherits(JsDocCommentHighlightRules, TextHighlightRules);\nJsDocCommentHighlightRules.getTagRule = function (start) {\n return {\n token: \"comment.doc.tag.storage.type\",\n regex: \"\\\\b(?:TODO|FIXME|XXX|HACK)\\\\b\"\n };\n};\nJsDocCommentHighlightRules.getStartRule = function (start) {\n return {\n token: \"comment.doc\", // doc comment\n regex: \"\\\\/\\\\*(?=\\\\*)\",\n next: start\n };\n};\nJsDocCommentHighlightRules.getEndRule = function (start) {\n return {\n token: \"comment.doc\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: start\n };\n};\nexports.JsDocCommentHighlightRules = JsDocCommentHighlightRules;\n\n});\n\nace.define(\"ace/mode/javascript_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/jsdoc_comment_highlight_rules\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar DocCommentHighlightRules = require(\"./jsdoc_comment_highlight_rules\").JsDocCommentHighlightRules;\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar identifierRe = \"[a-zA-Z\\\\$_\\u00a1-\\uffff][a-zA-Z\\\\d\\\\$_\\u00a1-\\uffff]*\";\nvar JavaScriptHighlightRules = function (options) {\n var keywordMapper = this.createKeywordMapper({\n \"variable.language\": \"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|\" + // Constructors\n \"Namespace|QName|XML|XMLList|\" + // E4X\n \"ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|\" +\n \"Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|\" +\n \"Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|\" + // Errors\n \"SyntaxError|TypeError|URIError|\" +\n \"decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|\" + // Non-constructor functions\n \"isNaN|parseFloat|parseInt|\" +\n \"JSON|Math|\" + // Other\n \"this|arguments|prototype|window|document\", // Pseudo\n \"keyword\": \"const|yield|import|get|set|async|await|\" +\n \"break|case|catch|continue|default|delete|do|else|finally|for|function|\" +\n \"if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|\" +\n \"__parent__|__count__|escape|unescape|with|__proto__|\" +\n \"class|enum|extends|super|export|implements|private|public|interface|package|protected|static|constructor\",\n \"storage.type\": \"const|let|var|function\",\n \"constant.language\": \"null|Infinity|NaN|undefined\",\n \"support.function\": \"alert\",\n \"constant.language.boolean\": \"true|false\"\n }, \"identifier\");\n var kwBeforeRe = \"case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void\";\n var escapedRe = \"\\\\\\\\(?:x[0-9a-fA-F]{2}|\" + // hex\n \"u[0-9a-fA-F]{4}|\" + // unicode\n \"u{[0-9a-fA-F]{1,6}}|\" + // es6 unicode\n \"[0-2][0-7]{0,2}|\" + // oct\n \"3[0-7][0-7]?|\" + // oct\n \"[4-7][0-7]?|\" + //oct\n \".)\";\n this.$rules = {\n \"no_regex\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"no_regex\"),\n {\n token: \"string\",\n regex: \"'(?=.)\",\n next: \"qstring\"\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n next: \"qqstring\"\n }, {\n token: \"constant.numeric\", // hexadecimal, octal and binary\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\", // decimal integers and floats\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"support.function\",\n \"punctuation.operator\", \"entity.name.function\", \"text\", \"keyword.operator\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(prototype)(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"keyword.operator\", \"text\", \"storage.type\",\n \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(\\\\s+)(\\\\w+)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(function\\\\*?)(\\\\s+)(\" + identifierRe + \")(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"entity.name.function\", \"text\", \"punctuation.operator\",\n \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\s*)(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: [\n \"text\", \"text\", \"storage.type\", \"text\", \"paren.lparen\"\n ],\n regex: \"(:)(\\\\s*)(function\\\\*?)(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"keyword\",\n regex: \"from(?=\\\\s*('|\\\"))\"\n }, {\n token: \"keyword\",\n regex: \"(?:\" + kwBeforeRe + \")\\\\b\",\n next: \"start\"\n }, {\n token: \"support.constant\",\n regex: /that\\b/\n }, {\n token: [\"storage.type\", \"punctuation.operator\", \"support.function.firebug\"],\n regex: /(console)(\\.)(warn|info|log|error|debug|time|trace|timeEnd|assert)\\b/\n }, {\n token: keywordMapper,\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/,\n next: \"property\"\n }, {\n token: \"storage.type\",\n regex: /=>/,\n next: \"start\"\n }, {\n token: \"keyword.operator\",\n regex: /--|\\+\\+|\\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\\|\\||\\?:|[!$%&*+\\-~\\/^]=?/,\n next: \"start\"\n }, {\n token: \"punctuation.operator\",\n regex: /[?:,;.]/,\n next: \"start\"\n }, {\n token: \"paren.lparen\",\n regex: /[\\[({]/,\n next: \"start\"\n }, {\n token: \"paren.rparen\",\n regex: /[\\])}]/\n }, {\n token: \"comment\",\n regex: /^#!.*$/\n }\n ],\n property: [{\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: [\n \"storage.type\", \"punctuation.operator\", \"entity.name.function\", \"text\",\n \"keyword.operator\", \"text\",\n \"storage.type\", \"text\", \"entity.name.function\", \"text\", \"paren.lparen\"\n ],\n regex: \"(\" + identifierRe + \")(\\\\.)(\" + identifierRe + \")(\\\\s*)(=)(\\\\s*)(function\\\\*?)(?:(\\\\s+)(\\\\w+))?(\\\\s*)(\\\\()\",\n next: \"function_arguments\"\n }, {\n token: \"punctuation.operator\",\n regex: /[.](?![.])/\n }, {\n token: \"support.function\",\n regex: /(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\\b(?=\\()/\n }, {\n token: \"support.function.dom\",\n regex: /(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\\b(?=\\()/\n }, {\n token: \"support.constant\",\n regex: /(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\\b/\n }, {\n token: \"identifier\",\n regex: identifierRe\n }, {\n regex: \"\",\n token: \"empty\",\n next: \"no_regex\"\n }\n ],\n \"start\": [\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n comments(\"start\"),\n {\n token: \"string.regexp\",\n regex: \"\\\\/\",\n next: \"regex\"\n }, {\n token: \"text\",\n regex: \"\\\\s+|^$\",\n next: \"start\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"regex\": [\n {\n token: \"regexp.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"string.regexp\",\n regex: \"/[sxngimy]*\",\n next: \"no_regex\"\n }, {\n token: \"invalid\",\n regex: /\\{\\d+\\b,?\\d*\\}[+*]|[+*$^?][+*]|[$^][?]|\\?{3,}/\n }, {\n token: \"constant.language.escape\",\n regex: /\\(\\?[:=!]|\\)|\\{\\d+\\b,?\\d*\\}|[+*]\\?|[()$^+*?.]/\n }, {\n token: \"constant.language.delimiter\",\n regex: /\\|/\n }, {\n token: \"constant.language.escape\",\n regex: /\\[\\^?/,\n next: \"regex_character_class\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp\"\n }\n ],\n \"regex_character_class\": [\n {\n token: \"regexp.charclass.keyword.operator\",\n regex: \"\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)\"\n }, {\n token: \"constant.language.escape\",\n regex: \"]\",\n next: \"regex\"\n }, {\n token: \"constant.language.escape\",\n regex: \"-\"\n }, {\n token: \"empty\",\n regex: \"$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string.regexp.charachterclass\"\n }\n ],\n \"default_parameter\": [\n {\n token: \"string\",\n regex: \"'(?=.)\",\n push: [\n {\n token: \"string\",\n regex: \"'|$\",\n next: \"pop\"\n }, {\n include: \"qstring\"\n }\n ]\n }, {\n token: \"string\",\n regex: '\"(?=.)',\n push: [\n {\n token: \"string\",\n regex: '\"|$',\n next: \"pop\"\n }, {\n include: \"qqstring\"\n }\n ]\n }, {\n token: \"constant.language\",\n regex: \"null|Infinity|NaN|undefined\"\n }, {\n token: \"constant.numeric\", // hexadecimal, octal and binary\n regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\\b/\n }, {\n token: \"constant.numeric\", // decimal integers and floats\n regex: /(?:\\d\\d*(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+\\b)?/\n }, {\n token: \"punctuation.operator\",\n regex: \",\",\n next: \"function_arguments\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"function_arguments\": [\n comments(\"function_arguments\"),\n {\n token: \"variable.parameter\",\n regex: identifierRe\n }, {\n token: \"punctuation.operator\",\n regex: \",\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.operator\",\n regex: \"$\"\n }, {\n token: \"empty\",\n regex: \"\",\n next: \"no_regex\"\n }\n ],\n \"qqstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: '\"|$',\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ],\n \"qstring\": [\n {\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"string\",\n regex: \"\\\\\\\\$\",\n consumeLineEnd: true\n }, {\n token: \"string\",\n regex: \"'|$\",\n next: \"no_regex\"\n }, {\n defaultToken: \"string\"\n }\n ]\n };\n if (!options || !options.noES6) {\n this.$rules.no_regex.unshift({\n regex: \"[{}]\", onMatch: function (val, state, stack) {\n this.next = val == \"{\" ? this.nextState : \"\";\n if (val == \"{\" && stack.length) {\n stack.unshift(\"start\", state);\n }\n else if (val == \"}\" && stack.length) {\n stack.shift();\n this.next = stack.shift();\n if (this.next.indexOf(\"string\") != -1 || this.next.indexOf(\"jsx\") != -1)\n return \"paren.quasi.end\";\n }\n return val == \"{\" ? \"paren.lparen\" : \"paren.rparen\";\n },\n nextState: \"start\"\n }, {\n token: \"string.quasi.start\",\n regex: /`/,\n push: [{\n token: \"constant.language.escape\",\n regex: escapedRe\n }, {\n token: \"paren.quasi.start\",\n regex: /\\${/,\n push: \"start\"\n }, {\n token: \"string.quasi.end\",\n regex: /`/,\n next: \"pop\"\n }, {\n defaultToken: \"string.quasi\"\n }]\n }, {\n token: [\"variable.parameter\", \"text\"],\n regex: \"(\" + identifierRe + \")(\\\\s*)(?=\\\\=>)\"\n }, {\n token: \"paren.lparen\",\n regex: \"(\\\\()(?=.+\\\\s*=>)\",\n next: \"function_arguments\"\n }, {\n token: \"variable.language\",\n regex: \"(?:(?:(?:Weak)?(?:Set|Map))|Promise)\\\\b\"\n });\n this.$rules[\"function_arguments\"].unshift({\n token: \"keyword.operator\",\n regex: \"=\",\n next: \"default_parameter\"\n }, {\n token: \"keyword.operator\",\n regex: \"\\\\.{3}\"\n });\n this.$rules[\"property\"].unshift({\n token: \"support.function\",\n regex: \"(findIndex|repeat|startsWith|endsWith|includes|isSafeInteger|trunc|cbrt|log2|log10|sign|then|catch|\"\n + \"finally|resolve|reject|race|any|all|allSettled|keys|entries|isInteger)\\\\b(?=\\\\()\"\n }, {\n token: \"constant.language\",\n regex: \"(?:MAX_SAFE_INTEGER|MIN_SAFE_INTEGER|EPSILON)\\\\b\"\n });\n if (!options || options.jsx != false)\n JSX.call(this);\n }\n this.embedRules(DocCommentHighlightRules, \"doc-\", [DocCommentHighlightRules.getEndRule(\"no_regex\")]);\n this.normalizeRules();\n};\noop.inherits(JavaScriptHighlightRules, TextHighlightRules);\nfunction JSX() {\n var tagRegex = identifierRe.replace(\"\\\\d\", \"\\\\d\\\\-\");\n var jsxTag = {\n onMatch: function (val, state, stack) {\n var offset = val.charAt(1) == \"/\" ? 2 : 1;\n if (offset == 1) {\n if (state != this.nextState)\n stack.unshift(this.next, this.nextState, 0);\n else\n stack.unshift(this.next);\n stack[2]++;\n }\n else if (offset == 2) {\n if (state == this.nextState) {\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.shift();\n stack.shift();\n }\n }\n }\n return [{\n type: \"meta.tag.punctuation.\" + (offset == 1 ? \"\" : \"end-\") + \"tag-open.xml\",\n value: val.slice(0, offset)\n }, {\n type: \"meta.tag.tag-name.xml\",\n value: val.substr(offset)\n }];\n },\n regex: \"</?\" + tagRegex + \"\",\n next: \"jsxAttributes\",\n nextState: \"jsx\"\n };\n this.$rules.start.unshift(jsxTag);\n var jsxJsRule = {\n regex: \"{\",\n token: \"paren.quasi.start\",\n push: \"start\"\n };\n this.$rules.jsx = [\n jsxJsRule,\n jsxTag,\n { include: \"reference\" },\n { defaultToken: \"string\" }\n ];\n this.$rules.jsxAttributes = [{\n token: \"meta.tag.punctuation.tag-close.xml\",\n regex: \"/?>\",\n onMatch: function (value, currentState, stack) {\n if (currentState == stack[0])\n stack.shift();\n if (value.length == 2) {\n if (stack[0] == this.nextState)\n stack[1]--;\n if (!stack[1] || stack[1] < 0) {\n stack.splice(0, 2);\n }\n }\n this.next = stack[0] || \"start\";\n return [{ type: this.token, value: value }];\n },\n nextState: \"jsx\"\n },\n jsxJsRule,\n comments(\"jsxAttributes\"),\n {\n token: \"entity.other.attribute-name.xml\",\n regex: tagRegex\n }, {\n token: \"keyword.operator.attribute-equals.xml\",\n regex: \"=\"\n }, {\n token: \"text.tag-whitespace.xml\",\n regex: \"\\\\s+\"\n }, {\n token: \"string.attribute-value.xml\",\n regex: \"'\",\n stateName: \"jsx_attr_q\",\n push: [\n { token: \"string.attribute-value.xml\", regex: \"'\", next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n }, {\n token: \"string.attribute-value.xml\",\n regex: '\"',\n stateName: \"jsx_attr_qq\",\n push: [\n { token: \"string.attribute-value.xml\", regex: '\"', next: \"pop\" },\n { include: \"reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n },\n jsxTag\n ];\n this.$rules.reference = [{\n token: \"constant.language.escape.reference.xml\",\n regex: \"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\\\.-]+;)\"\n }];\n}\nfunction comments(next) {\n return [\n {\n token: \"comment\", // multi line comment\n regex: /\\/\\*/,\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"\\\\*\\\\/\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }, {\n token: \"comment\",\n regex: \"\\\\/\\\\/\",\n next: [\n DocCommentHighlightRules.getTagRule(),\n { token: \"comment\", regex: \"$|^\", next: next || \"pop\" },\n { defaultToken: \"comment\", caseInsensitive: true }\n ]\n }\n ];\n}\nexports.JavaScriptHighlightRules = JavaScriptHighlightRules;\n\n});\n\nace.define(\"ace/mode/matching_brace_outdent\",[\"require\",\"exports\",\"module\",\"ace/range\"], function(require, exports, module){\"use strict\";\nvar Range = require(\"../range\").Range;\nvar MatchingBraceOutdent = function () { };\n(function () {\n this.checkOutdent = function (line, input) {\n if (!/^\\s+$/.test(line))\n return false;\n return /^\\s*\\}/.test(input);\n };\n this.autoOutdent = function (doc, row) {\n var line = doc.getLine(row);\n var match = line.match(/^(\\s*\\})/);\n if (!match)\n return 0;\n var column = match[1].length;\n var openBracePos = doc.findMatchingBracket({ row: row, column: column });\n if (!openBracePos || openBracePos.row == row)\n return 0;\n var indent = this.$getIndent(doc.getLine(openBracePos.row));\n doc.replace(new Range(row, 0, row, column - 1), indent);\n };\n this.$getIndent = function (line) {\n return line.match(/^\\s*/)[0];\n };\n}).call(MatchingBraceOutdent.prototype);\nexports.MatchingBraceOutdent = MatchingBraceOutdent;\n\n});\n\nace.define(\"ace/mode/folding/cstyle\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/range\",\"ace/mode/folding/fold_mode\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar Range = require(\"../../range\").Range;\nvar BaseFoldMode = require(\"./fold_mode\").FoldMode;\nvar FoldMode = exports.FoldMode = function (commentRegex) {\n if (commentRegex) {\n this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.start));\n this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\\|[^|]*?$/, \"|\" + commentRegex.end));\n }\n};\noop.inherits(FoldMode, BaseFoldMode);\n(function () {\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 if (this.singleLineBlockCommentRe.test(line)) {\n if (!this.startRegionRe.test(line) && !this.tripleStarBlockCommentRe.test(line))\n return \"\";\n }\n var fw = this._getFoldWidgetBase(session, foldStyle, row);\n if (!fw && this.startRegionRe.test(line))\n return \"start\"; // lineCommentRegionStart\n return fw;\n };\n this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {\n var line = session.getLine(row);\n if (this.startRegionRe.test(line))\n return this.getCommentRegionBlock(session, line, row);\n var match = line.match(this.foldingStartMarker);\n if (match) {\n var i = match.index;\n if (match[1])\n return this.openingBracketBlock(session, match[1], row, i);\n var range = session.getCommentFoldRange(row, i + match[0].length, 1);\n if (range && !range.isMultiLine()) {\n if (forceMultiline) {\n range = this.getSectionRange(session, row);\n }\n else if (foldStyle != \"all\")\n range = null;\n }\n return range;\n }\n if (foldStyle === \"markbegin\")\n return;\n var match = line.match(this.foldingStopMarker);\n if (match) {\n var i = match.index + match[0].length;\n if (match[1])\n return this.closingBracketBlock(session, match[1], row, i);\n return session.getCommentFoldRange(row, i, -1);\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 if (subRange) {\n if (subRange.start.row <= startRow) {\n break;\n }\n else if (subRange.isMultiLine()) {\n row = subRange.end.row;\n }\n else if (startIndent == indent) {\n break;\n }\n }\n endRow = row;\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 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)\n continue;\n if (m[1])\n depth--;\n else\n depth++;\n if (!depth)\n break;\n }\n var endRow = row;\n if (endRow > startRow) {\n return new Range(startRow, startColumn, endRow, line.length);\n }\n };\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/javascript\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text\",\"ace/mode/javascript_highlight_rules\",\"ace/mode/matching_brace_outdent\",\"ace/worker/worker_client\",\"ace/mode/behaviour/cstyle\",\"ace/mode/folding/cstyle\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextMode = require(\"./text\").Mode;\nvar JavaScriptHighlightRules = require(\"./javascript_highlight_rules\").JavaScriptHighlightRules;\nvar MatchingBraceOutdent = require(\"./matching_brace_outdent\").MatchingBraceOutdent;\nvar WorkerClient = require(\"../worker/worker_client\").WorkerClient;\nvar CstyleBehaviour = require(\"./behaviour/cstyle\").CstyleBehaviour;\nvar CStyleFoldMode = require(\"./folding/cstyle\").FoldMode;\nvar Mode = function () {\n this.HighlightRules = JavaScriptHighlightRules;\n this.$outdent = new MatchingBraceOutdent();\n this.$behaviour = new CstyleBehaviour();\n this.foldingRules = new CStyleFoldMode();\n};\noop.inherits(Mode, TextMode);\n(function () {\n this.lineCommentStart = \"//\";\n this.blockComment = { start: \"/*\", end: \"*/\" };\n this.$quotes = { '\"': '\"', \"'\": \"'\", \"`\": \"`\" };\n this.$pairQuotesAfter = {\n \"`\": /\\w/\n };\n this.getNextLineIndent = function (state, line, tab) {\n var indent = this.$getIndent(line);\n var tokenizedLine = this.getTokenizer().getLineTokens(line, state);\n var tokens = tokenizedLine.tokens;\n var endState = tokenizedLine.state;\n if (tokens.length && tokens[tokens.length - 1].type == \"comment\") {\n return indent;\n }\n if (state == \"start\" || state == \"no_regex\") {\n var match = line.match(/^.*(?:\\bcase\\b.*:|[\\{\\(\\[])\\s*$/);\n if (match) {\n indent += tab;\n }\n }\n else if (state == \"doc-start\") {\n if (endState == \"start\" || endState == \"no_regex\") {\n return \"\";\n }\n var match = line.match(/^\\s*(\\/?)\\*/);\n if (match) {\n if (match[1]) {\n indent += \" \";\n }\n indent += \"* \";\n }\n }\n return indent;\n };\n this.checkOutdent = function (state, line, input) {\n return this.$outdent.checkOutdent(line, input);\n };\n this.autoOutdent = function (state, doc, row) {\n this.$outdent.autoOutdent(doc, row);\n };\n this.createWorker = function (session) {\n var worker = new WorkerClient([\"ace\"], \"ace/mode/javascript_worker\", \"JavaScriptWorker\");\n worker.attachToDocument(session.getDocument());\n worker.on(\"annotate\", function (results) {\n session.setAnnotations(results.data);\n });\n worker.on(\"terminate\", function () {\n session.clearAnnotations();\n });\n return worker;\n };\n this.$id = \"ace/mode/javascript\";\n this.snippetFileId = \"ace/snippets/javascript\";\n}).call(Mode.prototype);\nexports.Mode = Mode;\n\n});\n\nace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar DocCommentHighlightRules = function () {\n this.$rules = {\n \"start\": [\n {\n token: \"comment.doc.tag\",\n regex: \"@\\\\w+(?=\\\\s|$)\"\n }, DocCommentHighlightRules.getTagRule(), {\n defaultToken: \"comment.doc\",\n caseInsensitive: true\n }\n ]\n };\n};\noop.inherits(DocCommentHighlightRules, TextHighlightRules);\nDocCommentHighlightRules.getTagRule = function (start) {\n return {\n token: \"comment.doc.tag.storage.type\",\n regex: \"\\\\b(?:TODO|FIXME|XXX|HACK)\\\\b\"\n };\n};\nDocCommentHighlightRules.getStartRule = function (start) {\n return {\n token: \"comment.doc\", // doc comment\n regex: \"\\\\/\\\\*(?=\\\\*)\",\n next: start\n };\n};\nDocCommentHighlightRules.getEndRule = function (start) {\n return {\n token: \"comment.doc\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: start\n };\n};\nexports.DocCommentHighlightRules = DocCommentHighlightRules;\n\n});\n\nace.define(\"ace/mode/java_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/doc_comment_highlight_rules\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar DocCommentHighlightRules = require(\"./doc_comment_highlight_rules\").DocCommentHighlightRules;\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar JavaHighlightRules = function () {\n var identifierRe = \"[a-zA-Z_$][a-zA-Z0-9_$]*\";\n var keywords = (\"abstract|continue|for|new|switch|\" +\n \"assert|default|goto|package|synchronized|\" +\n \"boolean|do|if|private|this|\" +\n \"break|double|implements|protected|throw|\" +\n \"byte|else|import|public|throws|\" +\n \"case|enum|instanceof|return|transient|\" +\n \"catch|extends|int|short|try|\" +\n \"char|final|interface|static|void|\" +\n \"class|finally|long|strictfp|volatile|\" +\n \"const|float|native|super|while|\" +\n \"var|exports|opens|requires|uses|yield|\" +\n \"module|permits|(?:non\\\\-)?sealed|var|\" +\n \"provides|to|when|\" +\n \"open|record|transitive|with\");\n var buildinConstants = (\"null|Infinity|NaN|undefined\");\n var langClasses = (\"AbstractMethodError|AssertionError|ClassCircularityError|\" +\n \"ClassFormatError|Deprecated|EnumConstantNotPresentException|\" +\n \"ExceptionInInitializerError|IllegalAccessError|\" +\n \"IllegalThreadStateException|InstantiationError|InternalError|\" +\n \"NegativeArraySizeException|NoSuchFieldError|Override|Process|\" +\n \"ProcessBuilder|SecurityManager|StringIndexOutOfBoundsException|\" +\n \"SuppressWarnings|TypeNotPresentException|UnknownError|\" +\n \"UnsatisfiedLinkError|UnsupportedClassVersionError|VerifyError|\" +\n \"InstantiationException|IndexOutOfBoundsException|\" +\n \"ArrayIndexOutOfBoundsException|CloneNotSupportedException|\" +\n \"NoSuchFieldException|IllegalArgumentException|NumberFormatException|\" +\n \"SecurityException|Void|InheritableThreadLocal|IllegalStateException|\" +\n \"InterruptedException|NoSuchMethodException|IllegalAccessException|\" +\n \"UnsupportedOperationException|Enum|StrictMath|Package|Compiler|\" +\n \"Readable|Runtime|StringBuilder|Math|IncompatibleClassChangeError|\" +\n \"NoSuchMethodError|ThreadLocal|RuntimePermission|ArithmeticException|\" +\n \"NullPointerException|Long|Integer|Short|Byte|Double|Number|Float|\" +\n \"Character|Boolean|StackTraceElement|Appendable|StringBuffer|\" +\n \"Iterable|ThreadGroup|Runnable|Thread|IllegalMonitorStateException|\" +\n \"StackOverflowError|OutOfMemoryError|VirtualMachineError|\" +\n \"ArrayStoreException|ClassCastException|LinkageError|\" +\n \"NoClassDefFoundError|ClassNotFoundException|RuntimeException|\" +\n \"Exception|ThreadDeath|Error|Throwable|System|ClassLoader|\" +\n \"Cloneable|Class|CharSequence|Comparable|String|Object\");\n var keywordMapper = this.createKeywordMapper({\n \"variable.language\": \"this\",\n \"constant.language\": buildinConstants,\n \"support.function\": langClasses\n }, \"identifier\");\n this.$rules = {\n \"start\": [\n {\n token: \"comment\",\n regex: \"\\\\/\\\\/.*$\"\n },\n DocCommentHighlightRules.getStartRule(\"doc-start\"),\n {\n token: \"comment\", // multi line comment\n regex: \"\\\\/\\\\*\",\n next: \"comment\"\n },\n { include: \"multiline-strings\" },\n { include: \"strings\" },\n { include: \"constants\" },\n {\n regex: \"(open(?:\\\\s+))?module(?=\\\\s*\\\\w)\",\n token: \"keyword\",\n next: [{\n regex: \"{\",\n token: \"paren.lparen\",\n next: [{\n regex: \"}\",\n token: \"paren.rparen\",\n next: \"start\"\n }, {\n regex: \"\\\\b(requires|transitive|exports|opens|to|uses|provides|with)\\\\b\",\n token: \"keyword\"\n }]\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n token: \"identifier\",\n regex: \"\\\\w+\"\n }, {\n token: \"punctuation.operator\",\n regex: \".\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }, {\n regex: \"\", // exit if there is anything else\n next: \"start\"\n }]\n },\n { include: \"statements\" }\n ],\n \"comment\": [\n {\n token: \"comment\", // closing comment\n regex: \"\\\\*\\\\/\",\n next: \"start\"\n }, {\n defaultToken: \"comment\"\n }\n ],\n \"strings\": [\n {\n token: [\"punctuation\", \"string\"],\n regex: /(\\.)(\")/,\n push: [\n {\n token: \"lparen\",\n regex: /\\\\\\{/,\n push: [\n {\n token: \"text\",\n regex: /$/,\n next: \"start\"\n }, {\n token: \"rparen\",\n regex: /}/,\n next: \"pop\"\n }, {\n include: \"strings\"\n }, {\n include: \"constants\"\n }, {\n include: \"statements\"\n }\n ]\n }, {\n token: \"string\",\n regex: /\"/,\n next: \"pop\"\n }, {\n defaultToken: \"string\"\n }\n ]\n }, {\n token: \"string\", // single line\n regex: '[\"](?:(?:\\\\\\\\.)|(?:[^\"\\\\\\\\]))*?[\"]'\n }, {\n token: \"string\", // single line\n regex: \"['](?:(?:\\\\\\\\.)|(?:[^'\\\\\\\\]))*?[']\"\n }\n ],\n \"multiline-strings\": [\n {\n token: [\"punctuation\", \"string\"],\n regex: /(\\.)(\"\"\")/,\n push: [\n {\n token: \"string\",\n regex: '\"\"\"',\n next: \"pop\"\n }, {\n token: \"lparen\",\n regex: /\\\\\\{/,\n push: [\n {\n token: \"text\",\n regex: /$/,\n next: \"start\"\n }, {\n token: \"rparen\",\n regex: /}/,\n next: \"pop\"\n }, {\n include: \"multiline-strings\"\n }, {\n include: \"strings\"\n }, {\n include: \"constants\"\n }, {\n include: \"statements\"\n }\n ]\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\./\n }, {\n defaultToken: \"string\"\n }\n ]\n },\n {\n token: \"string\",\n regex: '\"\"\"',\n push: [\n {\n token: \"string\",\n regex: '\"\"\"',\n next: \"pop\"\n }, {\n token: \"constant.language.escape\",\n regex: /\\\\./\n }, {\n defaultToken: \"string\"\n }\n ]\n }\n ],\n \"constants\": [\n {\n token: \"constant.numeric\", // hex\n regex: /0(?:[xX][0-9a-fA-F][0-9a-fA-F_]*|[bB][01][01_]*)[LlSsDdFfYy]?\\b/\n }, {\n token: \"constant.numeric\", // float\n regex: /[+-]?\\d[\\d_]*(?:(?:\\.[\\d_]*)?(?:[eE][+-]?[\\d_]+)?)?[LlSsDdFfYy]?\\b/\n }, {\n token: \"constant.language.boolean\",\n regex: \"(?:true|false)\\\\b\"\n }\n ],\n \"statements\": [\n {\n token: [\"keyword\", \"text\", \"identifier\"],\n regex: \"(record)(\\\\s+)(\" + identifierRe + \")\\\\b\"\n },\n {\n token: \"keyword\",\n regex: \"(?:\" + keywords + \")\\\\b\"\n }, {\n token: \"storage.type.annotation\",\n regex: \"@\" + identifierRe + \"\\\\b\"\n }, {\n token: \"entity.name.function\",\n regex: identifierRe + \"(?=\\\\()\"\n }, {\n token: keywordMapper, // TODO: Unicode escape sequences\n regex: identifierRe + \"\\\\b\"\n }, {\n token: \"keyword.operator\",\n regex: \"!|\\\\$|%|&|\\\\||\\\\^|\\\\*|\\\\/|\\\\-\\\\-|\\\\-|\\\\+\\\\+|\\\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\\\|\\\\||\\\\?|\\\\:|\\\\*=|\\\\/=|%=|\\\\+=|\\\\-=|&=|\\\\|=|\\\\^=|\\\\b(?:in|instanceof|new|delete|typeof|void)\"\n }, {\n token: \"lparen\",\n regex: \"[[({]\"\n }, {\n token: \"rparen\",\n regex: \"[\\\\])}]\"\n }, {\n token: \"text\",\n regex: \"\\\\s+\"\n }\n ]\n };\n this.embedRules(DocCommentHighlightRules, \"doc-\", [DocCommentHighlightRules.getEndRule(\"start\")]);\n this.normalizeRules();\n};\noop.inherits(JavaHighlightRules, TextHighlightRules);\nexports.JavaHighlightRules = JavaHighlightRules;\n\n});\n\nace.define(\"ace/mode/folding/java\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/folding/cstyle\",\"ace/range\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar CStyleFoldMode = require(\"./cstyle\").FoldMode;\nvar Range = require(\"../../range\").Range;\nvar FoldMode = exports.FoldMode = function () { };\noop.inherits(FoldMode, CStyleFoldMode);\n(function () {\n this.importRegex = /^import /;\n this.getCStyleFoldWidget = this.getFoldWidget;\n this.getFoldWidget = function (session, foldStyle, row) {\n if (foldStyle === \"markbegin\") {\n var line = session.getLine(row);\n if (this.importRegex.test(line)) {\n if (row == 0 || !this.importRegex.test(session.getLine(row - 1)))\n return \"start\";\n }\n }\n return this.getCStyleFoldWidget(session, foldStyle, row);\n };\n this.getCstyleFoldWidgetRange = this.getFoldWidgetRange;\n this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {\n var line = session.getLine(row);\n var match = line.match(this.importRegex);\n if (!match || foldStyle !== \"markbegin\")\n return this.getCstyleFoldWidgetRange(session, foldStyle, row, forceMultiline);\n var startColumn = match[0].length;\n var maxRow = session.getLength();\n var startRow = row;\n var endRow = row;\n while (++row < maxRow) {\n var line = session.getLine(row);\n if (line.match(/^\\s*$/))\n continue;\n if (!line.match(this.importRegex))\n break;\n endRow = row;\n }\n if (endRow > startRow) {\n var endColumn = session.getLine(endRow).length;\n return new Range(startRow, startColumn, endRow, endColumn);\n }\n };\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/java\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/javascript\",\"ace/mode/java_highlight_rules\",\"ace/mode/folding/java\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar JavaScriptMode = require(\"./javascript\").Mode;\nvar JavaHighlightRules = require(\"./java_highlight_rules\").JavaHighlightRules;\nvar JavaFoldMode = require(\"./folding/java\").FoldMode;\nvar Mode = function () {\n JavaScriptMode.call(this);\n this.HighlightRules = JavaHighlightRules;\n this.foldingRules = new JavaFoldMode();\n};\noop.inherits(Mode, JavaScriptMode);\n(function () {\n this.createWorker = function (session) {\n return null;\n };\n this.$id = \"ace/mode/java\";\n this.snippetFileId = \"ace/snippets/java\";\n}).call(Mode.prototype);\nexports.Mode = Mode;\n\n}); (function() {\n ace.require([\"ace/mode/java\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","ace.define(\"ace/snippets/java.snippets\",[\"require\",\"exports\",\"module\"], function(require, exports, module){module.exports = \"## Access Modifiers\\nsnippet po\\n\\tprotected\\nsnippet pu\\n\\tpublic\\nsnippet pr\\n\\tprivate\\n##\\n## Annotations\\nsnippet before\\n\\t@Before\\n\\tstatic void ${1:intercept}(${2:args}) { ${3} }\\nsnippet mm\\n\\t@ManyToMany\\n\\t${1}\\nsnippet mo\\n\\t@ManyToOne\\n\\t${1}\\nsnippet om\\n\\t@OneToMany${1:(cascade=CascadeType.ALL)}\\n\\t${2}\\nsnippet oo\\n\\t@OneToOne\\n\\t${1}\\n##\\n## Basic Java packages and import\\nsnippet im\\n\\timport\\nsnippet j.b\\n\\tjava.beans.\\nsnippet j.i\\n\\tjava.io.\\nsnippet j.m\\n\\tjava.math.\\nsnippet j.n\\n\\tjava.net.\\nsnippet j.u\\n\\tjava.util.\\n##\\n## Class\\nsnippet cl\\n\\tclass ${1:`Filename(\\\"\\\", \\\"untitled\\\")`} ${2}\\nsnippet in\\n\\tinterface ${1:`Filename(\\\"\\\", \\\"untitled\\\")`} ${2:extends Parent}${3}\\nsnippet tc\\n\\tpublic class ${1:`Filename()`} extends ${2:TestCase}\\n##\\n## Class Enhancements\\nsnippet ext\\n\\textends \\nsnippet imp\\n\\timplements\\n##\\n## Comments\\nsnippet /*\\n\\t/*\\n\\t * ${1}\\n\\t */\\n##\\n## Constants\\nsnippet co\\n\\tstatic public final ${1:String} ${2:var} = ${3};${4}\\nsnippet cos\\n\\tstatic public final String ${1:var} = \\\"${2}\\\";${3}\\n##\\n## Control Statements\\nsnippet case\\n\\tcase ${1}:\\n\\t\\t${2}\\nsnippet def\\n\\tdefault:\\n\\t\\t${2}\\nsnippet el\\n\\telse\\nsnippet elif\\n\\telse if (${1}) ${2}\\nsnippet if\\n\\tif (${1}) ${2}\\nsnippet sw\\n\\tswitch (${1}) {\\n\\t\\t${2}\\n\\t}\\n##\\n## Create a Method\\nsnippet m\\n\\t${1:void} ${2:method}(${3}) ${4:throws }${5}\\n##\\n## Create a Variable\\nsnippet v\\n\\t${1:String} ${2:var}${3: = null}${4};${5}\\n##\\n## Enhancements to Methods, variables, classes, etc.\\nsnippet ab\\n\\tabstract\\nsnippet fi\\n\\tfinal\\nsnippet st\\n\\tstatic\\nsnippet sy\\n\\tsynchronized\\n##\\n## Error Methods\\nsnippet err\\n\\tSystem.err.print(\\\"${1:Message}\\\");\\nsnippet errf\\n\\tSystem.err.printf(\\\"${1:Message}\\\", ${2:exception});\\nsnippet errln\\n\\tSystem.err.println(\\\"${1:Message}\\\");\\n##\\n## Exception Handling\\nsnippet as\\n\\tassert ${1:test} : \\\"${2:Failure message}\\\";${3}\\nsnippet ca\\n\\tcatch(${1:Exception} ${2:e}) ${3}\\nsnippet thr\\n\\tthrow\\nsnippet ths\\n\\tthrows\\nsnippet try\\n\\ttry {\\n\\t\\t${3}\\n\\t} catch(${1:Exception} ${2:e}) {\\n\\t}\\nsnippet tryf\\n\\ttry {\\n\\t\\t${3}\\n\\t} catch(${1:Exception} ${2:e}) {\\n\\t} finally {\\n\\t}\\n##\\n## Find Methods\\nsnippet findall\\n\\tList<${1:listName}> ${2:items} = ${1}.findAll();${3}\\nsnippet findbyid\\n\\t${1:var} ${2:item} = ${1}.findById(${3});${4}\\n##\\n## Javadocs\\nsnippet /**\\n\\t/**\\n\\t * ${1}\\n\\t */\\nsnippet @au\\n\\t@author `system(\\\"grep \\\\`id -un\\\\` /etc/passwd | cut -d \\\\\\\":\\\\\\\" -f5 | cut -d \\\\\\\",\\\\\\\" -f1\\\")`\\nsnippet @br\\n\\t@brief ${1:Description}\\nsnippet @fi\\n\\t@file ${1:`Filename()`}.java\\nsnippet @pa\\n\\t@param ${1:param}\\nsnippet @re\\n\\t@return ${1:param}\\n##\\n## Logger Methods\\nsnippet debug\\n\\tLogger.debug(${1:param});${2}\\nsnippet error\\n\\tLogger.error(${1:param});${2}\\nsnippet info\\n\\tLogger.info(${1:param});${2}\\nsnippet warn\\n\\tLogger.warn(${1:param});${2}\\n##\\n## Loops\\nsnippet enfor\\n\\tfor (${1} : ${2}) ${3}\\nsnippet for\\n\\tfor (${1}; ${2}; ${3}) ${4}\\nsnippet wh\\n\\twhile (${1}) ${2}\\n##\\n## Main method\\nsnippet main\\n\\tpublic static void main (String[] args) {\\n\\t\\t${1:/* code */}\\n\\t}\\n##\\n## Print Methods\\nsnippet print\\n\\tSystem.out.print(\\\"${1:Message}\\\");\\nsnippet printf\\n\\tSystem.out.printf(\\\"${1:Message}\\\", ${2:args});\\nsnippet println\\n\\tSystem.out.println(${1});\\n##\\n## Render Methods\\nsnippet ren\\n\\trender(${1:param});${2}\\nsnippet rena\\n\\trenderArgs.put(\\\"${1}\\\", ${2});${3}\\nsnippet renb\\n\\trenderBinary(${1:param});${2}\\nsnippet renj\\n\\trenderJSON(${1:param});${2}\\nsnippet renx\\n\\trenderXml(${1:param});${2}\\n##\\n## Setter and Getter Methods\\nsnippet set\\n\\t${1:public} void set${3:}(${2:String} ${4:}){\\n\\t\\tthis.$4 = $4;\\n\\t}\\nsnippet get\\n\\t${1:public} ${2:String} get${3:}(){\\n\\t\\treturn this.${4:};\\n\\t}\\n##\\n## Terminate Methods or Loops\\nsnippet re\\n\\treturn\\nsnippet br\\n\\tbreak;\\n##\\n## Test Methods\\nsnippet t\\n\\tpublic void test${1:Name}() throws Exception {\\n\\t\\t${2}\\n\\t}\\nsnippet test\\n\\t@Test\\n\\tpublic void test${1:Name}() throws Exception {\\n\\t\\t${2}\\n\\t}\\n##\\n## Utils\\nsnippet Sc\\n\\tScanner\\n##\\n## Miscellaneous\\nsnippet action\\n\\tpublic static void ${1:index}(${2:args}) { ${3} }\\nsnippet rnf\\n\\tnotFound(${1:param});${2}\\nsnippet rnfin\\n\\tnotFoundIfNull(${1:param});${2}\\nsnippet rr\\n\\tredirect(${1:param});${2}\\nsnippet ru\\n\\tunauthorized(${1:param});${2}\\nsnippet unless\\n\\t(unless=${1:param});${2}\\n\";\n\n});\n\nace.define(\"ace/snippets/java\",[\"require\",\"exports\",\"module\",\"ace/snippets/java.snippets\"], function(require, exports, module){\"use strict\";\nexports.snippetText = require(\"./java.snippets\");\nexports.scope = \"java\";\n\n}); (function() {\n ace.require([\"ace/snippets/java\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nimport { useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\n\nimport { classNames } from '@dimjs/utils';\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-java';\nimport 'ace-builds/src-noconflict/snippets/java';\n\nexport type AceEditorJavaProps = Omit<IAceEditorProps, 'mode' | 'value' | 'onChange' | 'theme'> & {\n /** 编辑器高度,默认值:100%,可输入值例如 300px、100% */\n height?: string;\n value?: string | TPlainObject | TPlainObject[];\n onChange?: (value?: string | TPlainObject | TPlainObject[]) => void;\n /** 配置输入自动提示关键字 */\n autoCompleterList?: { name: string; desc?: string }[];\n /**\n * 编辑器主题配置,例如:github、terminal、xcode\n * ```\n * 1. 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 2. 配置 theme = xxxx\n * ```\n */\n theme?: string;\n};\n\n/**\n * java编辑器\n * ```\n * 1. 受控组件,需要使用value、onChange配合显示数据\n * 2. heigth 默认为100%,如果外层无高度,需要自定义设置height属性\n * 3. 通过 autoCompleterList 配置自动提示关键字\n * 4. 通过 hiddenVerifyBtn、hiddenFormatterBtn可隐藏底部操作按钮\n * 5. 通过 theme 配置编辑器主题,例如:\n * 5.1 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 5.2 配置 theme = xxxx\n * ```\n */\nexport const AceEditorJava = (props: AceEditorJavaProps) => {\n const { value, onChange, height, autoCompleterList, onLoad, ...otherProps } = props;\n const heightFt = isUndefinedOrNull(height) ? '100%' : height;\n\n const [rootNodekey, setRootNodekey] = useState(Date.now());\n\n const editorRef = useRef<TAny>();\n\n const valueNew = useMemo(() => {\n if (isObject(value)) {\n return JSON.stringify(value, null, 2);\n }\n return value as string | undefined;\n }, [value]);\n\n const getCompletions = hooks.useCallbackRef((_a, _b, _c, _d, callback) => {\n callback(\n null,\n autoCompleterList?.map((item) => ({\n name: item.name,\n value: item.name,\n // score: 100,\n meta: item.desc,\n })),\n );\n });\n\n const onLoadHandle = (editor) => {\n editorRef.current = editor;\n /** 向编辑器中添加自动补全列表 */\n const findIndex = editor.completers.findIndex((item) => item.id === 'custom');\n if (findIndex >= 0) {\n editor.completers[findIndex] = { getCompletions, id: 'custom' };\n } else {\n editor.completers.push({ getCompletions, id: 'custom' });\n }\n onLoad?.(editor);\n };\n\n return (\n <div\n key={rootNodekey}\n className={classNames('ace-editor-java', props.className)}\n style={{ height: heightFt, ...props.style }}\n >\n <ErrorBoundaryWrapper\n onRenderReset={() => {\n onChange?.(undefined);\n setRootNodekey(Date.now());\n }}\n >\n <Ace\n fontSize={14}\n showPrintMargin={true}\n showGutter={true}\n highlightActiveLine={true}\n height=\"100%\"\n width=\"auto\"\n placeholder=\"请输入\"\n {...otherProps}\n setOptions={{\n useWorker: false,\n enableBasicAutocompletion: false,\n enableLiveAutocompletion: true,\n enableSnippets: false,\n showLineNumbers: true,\n tabSize: 2,\n ...otherProps.setOptions,\n }}\n mode=\"java\"\n onLoad={onLoadHandle}\n onChange={onChange}\n value={valueNew}\n />\n </ErrorBoundaryWrapper>\n </div>\n );\n};\n"],"names":["ace","define","require","exports","module","oop","TextHighlightRules","JsDocCommentHighlightRules","this","$rules","start","token","regex","push","include","next","defaultToken","getTagRule","caseInsensitive","normalizeRules","inherits","getStartRule","getEndRule","DocCommentHighlightRules","identifierRe","JavaScriptHighlightRules","options","keywordMapper","createKeywordMapper","keyword","kwBeforeRe","escapedRe","no_regex","comments","property","regex_character_class","default_parameter","function_arguments","qqstring","consumeLineEnd","qstring","noES6","unshift","onMatch","val","state","stack","nextState","length","shift","indexOf","jsx","JSX","call","embedRules","tagRegex","replace","jsxTag","offset","charAt","type","value","slice","substr","jsxJsRule","jsxAttributes","currentState","splice","stateName","reference","Range","MatchingBraceOutdent","checkOutdent","line","input","test","autoOutdent","doc","row","getLine","match","column","openBracePos","findMatchingBracket","indent","$getIndent","prototype","BaseFoldMode","FoldMode","commentRegex","foldingStartMarker","RegExp","source","foldingStopMarker","end","singleLineBlockCommentRe","tripleStarBlockCommentRe","startRegionRe","_getFoldWidgetBase","getFoldWidget","session","foldStyle","fw","getFoldWidgetRange","forceMultiline","getCommentRegionBlock","i","index","openingBracketBlock","range","getCommentFoldRange","isMultiLine","getSectionRange","closingBracketBlock","startIndent","search","startRow","startColumn","endRow","maxRow","getLength","subRange","re","depth","m","exec","TextMode","Mode","WorkerClient","CstyleBehaviour","CStyleFoldMode","HighlightRules","$outdent","$behaviour","foldingRules","lineCommentStart","blockComment","$quotes","$pairQuotesAfter","getNextLineIndent","tab","tokenizedLine","getTokenizer","getLineTokens","tokens","endState","createWorker","worker","attachToDocument","getDocument","on","results","setAnnotations","data","clearAnnotations","$id","snippetFileId","JavaHighlightRules","keywords","buildinConstants","langClasses","comment","strings","constants","statements","importRegex","getCStyleFoldWidget","getCstyleFoldWidgetRange","endColumn","JavaScriptMode","JavaFoldMode","snippetText","scope","AceEditorJava","props","onChange","height","autoCompleterList","onLoad","otherProps","_objectWithoutPropertiesLoose","_excluded","heightFt","isUndefinedOrNull","_useState","useState","Date","now","rootNodekey","setRootNodekey","editorRef","useRef","valueNew","useMemo","_isObject","JSON","stringify","getCompletions","_hooks","useCallbackRef","_a","_b","_c","_d","callback","map","item","name","meta","desc","onLoadHandle","editor","current","findIndex","completers","id","_jsx","className","_classNames","style","_extends","children","ErrorBoundaryWrapper","onRenderReset","undefined","Ace","fontSize","showPrintMargin","showGutter","highlightActiveLine","width","placeholder","setOptions","useWorker","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","showLineNumbers","tabSize","mode"],"mappings":"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O,GACPG,KAAM,aAGdH,MAAS,CACL,CACID,MAAO,0BACPC,MAAO,6CACR,CACCD,MAAO,gBACPC,MAAO,cACPG,KAAM,YACP,CACCJ,MAAO,UACPC,MAAO,iDACR,CACCD,MAAO,2BACPC,MAAO,iDACR,CACCD,MAAO,8BACPC,MAAO,MACR,CACCD,MAAO,2BACPC,MAAO,QACPG,KAAM,yBACP,CACCJ,MAAO,QACPC,MAAO,IACPG,KAAM,YACP,CACCC,aAAc,kBAGtBmB,sBAAyB,CACrB,CACIxB,MAAO,oCACPC,MAAO,6CACR,CACCD,MAAO,2BACPC,MAAO,IACPG,KAAM,SACP,CACCJ,MAAO,2BACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,IACPG,KAAM,YACP,CACCC,aAAc,kCAGtBoB,kBAAqB,CACjB,CACIzB,MAAO,SACPC,MAAO,SACPC,KAAM,CACF,CACIF,MAAO,SACPC,MAAO,MACPG,KAAM,OACP,CACCD,QAAS,aAGlB,CACCH,MAAO,SACPC,MAAO,SACPC,KAAM,CACF,CACIF,MAAO,SACPC,MAAO,MACPG,KAAM,OACP,CACCD,QAAS,cAGlB,CACCH,MAAO,oBACPC,MAAO,+BACR,CACCD,MAAO,mBACPC,MAAO,gDACR,CACCD,MAAO,mBACPC,MAAO,gDACR,CACCD,MAAO,uBACPC,MAAO,IACPG,KAAM,sBACP,CACCJ,MAAO,OACPC,MAAO,QACR,CACCD,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,GACPG,KAAM,aAGdsB,mBAAsB,CAClBJ,EAAS,sBACT,CACItB,MAAO,qBACPC,MAAOY,GACR,CACCb,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,OACPC,MAAO,QACR,CACCD,MAAO,uBACPC,MAAO,KACR,CACCD,MAAO,QACPC,MAAO,GACPG,KAAM,aAGduB,SAAY,CACR,CACI3B,MAAO,2BACPC,MAAOmB,GACR,CACCpB,MAAO,SACPC,MAAO,QACP2B,eAAgB,MACjB,CACC5B,MAAO,SACPC,MAAO,MACPG,KAAM,YACP,CACCC,aAAc,WAGtBwB,QAAW,CACP,C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","x_google_ignoreList":[0,1]}
|
|
@@ -8,5 +8,5 @@ import './../error-boundary-wrapper/index.css';
|
|
|
8
8
|
import './../flex-layout/index.css';
|
|
9
9
|
import './index.css';
|
|
10
10
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
11
|
-
import{a as e,_ as
|
|
11
|
+
import{a as e,_ as o}from"../_rollupPluginBabelHelpers-a0769acd.js";import{classNames as t}from"@dimjs/utils/cjs/class-names";import{hooks as r}from"@wove/react/cjs/hooks";import{isObject as i}from"@dimjs/lang/cjs/is-object";import{isUndefinedOrNull as n,jsonStringToJsonObject as a}from"@flatbiz/utils";import{useState as s,useRef as l,useMemo as u,Fragment as m}from"react";import d from"react-ace";import{ButtonWrapper as c}from"../button-wrapper/index.js";import{ErrorBoundaryWrapper as p}from"../error-boundary-wrapper/index.js";import{FlexLayout as f}from"../flex-layout/index.js";import"../ext-language_tools-0c27f877.js";import"../mode-json-062fdb24.js";import{jsxs as j,jsx as v}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"antd";import"../index-7f4ad045.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";var h={exports:{}};(function(e,o){(function(){ace.require(["ace/snippets/json"],(function(o){if(e){e.exports=o}}))})()})(h);var g=["value","onChange","height","hiddenVerifyBtn","autoCompleterList","onLoad"];var y=function h(y){var x=y.value,b=y.onChange,w=y.height,C=y.hiddenVerifyBtn,k=y.autoCompleterList,L=y.onLoad,N=e(y,g);var R=n(w)?"100%":w;var S=s(Date.now()),z=S[0],B=S[1];var O=s(),_=O[0],V=O[1];var A=l();var D=u((function(){if(i(x)){return JSON.stringify(x,null,2)}return x}),[x]);var P=r.useCallbackRef((function(e){if(_){V(undefined)}b==null?void 0:b(e)}));var q=r.useCallbackRef((function(e,o,t,r,i){i(null,k==null?void 0:k.map((function(e){return{name:e.name,value:e.name,meta:e.desc}})))}));var E=function e(o){A.current=o;var t=o.completers.findIndex((function(e){return e.id==="custom"}));if(t>=0){o.completers[t]={getCompletions:q,id:"custom"}}else{o.completers.push({getCompletions:q,id:"custom"})}L==null?void 0:L(o)};var F=function e(o){try{var t=a(o);b==null?void 0:b(t)}catch(e){V('数据解析异常,正确格式:{"name":"张三", "age": 20}')}};var I=j(m,{children:[v(c,{hidden:C===true,type:"primary",block:false,ghost:true,onClick:function e(){var o;var t=(o=A.current)==null?void 0:o.getValue();if(!t){b==null?void 0:b(t);return}F(t)},children:"验证数据"}),_?v("span",{style:{color:"red",marginLeft:10},children:_}):null]});return j(f,{fullIndex:0,className:t("ace-editor-json",y.className),style:o({height:R},y.style),children:[v("div",{className:"aej-content",children:v(p,{onRenderReset:function e(){b==null?void 0:b(undefined);B(Date.now())},children:v(d,o({fontSize:14,showPrintMargin:true,showGutter:true,highlightActiveLine:true,height:"100%",width:"auto",placeholder:"请输入"},N,{setOptions:o({useWorker:false,enableBasicAutocompletion:false,enableLiveAutocompletion:true,enableSnippets:false,showLineNumbers:true,tabSize:2},N.setOptions),mode:"json",onLoad:E,onChange:P,onBlur:function e(o,t){var r=t==null?void 0:t.getValue();if(r){F(r)}},value:D}))})}),v("div",{className:"ace-editor-mysql-footer",style:o({marginTop:10},y.footerStyle),children:y.footerExtraRender?y.footerExtraRender(I):v(m,{children:I})})]},z)};export{y as AceEditorJson};
|
|
12
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/node_modules/ace-builds/src-noconflict/snippets/json.js","@flatbiz/antd/src/ace-editor-json/editor.tsx"],"sourcesContent":["\n; (function() {\n ace.require([\"ace/snippets/json\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, jsonStringToJsonObject, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { CSSProperties, Fragment, ReactElement, useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\n\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\nimport { FlexLayout } from '../flex-layout';\n\nimport { classNames } from '@dimjs/utils';\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-json';\nimport 'ace-builds/src-noconflict/snippets/json';\n\nexport type AceEditorJsonProps = Omit<IAceEditorProps, '
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/node_modules/ace-builds/src-noconflict/snippets/json.js","@flatbiz/antd/src/ace-editor-json/editor.tsx"],"sourcesContent":["\n; (function() {\n ace.require([\"ace/snippets/json\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, jsonStringToJsonObject, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { CSSProperties, Fragment, ReactElement, useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\n\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\nimport { FlexLayout } from '../flex-layout';\n\nimport { classNames } from '@dimjs/utils';\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-json';\nimport 'ace-builds/src-noconflict/snippets/json';\n\nexport type AceEditorJsonProps = Omit<IAceEditorProps, 'mode' | 'value' | 'onChange' | 'theme'> & {\n /** 编辑器高度,默认值:100%,可输入值例如 300px、100% */\n height?: string;\n value?: string | TPlainObject | TPlainObject[];\n onChange?: (value?: string | TPlainObject | TPlainObject[]) => void;\n /** 配置输入自动提示关键字 */\n autoCompleterList?: { name: string; desc?: string }[];\n /** 是否隐藏【验证数据】按钮 */\n hiddenVerifyBtn?: boolean;\n /**\n * 编辑器主题配置,例如:github、terminal、xcode\n * ```\n * 1. 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 2. 配置 theme = xxxx\n * ```\n */\n theme?: string;\n /** 底部额外布局 */\n footerExtraRender?: (children: ReactElement) => ReactElement;\n footerStyle?: CSSProperties;\n};\n\n/**\n * Json编辑器\n * ```\n * 1. 受控组件,需要使用value、onChange配合显示数据\n * 2. heigth 默认为100%,如果外层无高度,需要自定义设置height属性\n * 3. 通过 autoCompleterList 配置自动提示关键字\n * 4. 通过 hiddenVerifyBtn 配置隐藏底部操作按钮\n * 5. 通过 theme 配置编辑器主题,例如:\n * 5.1 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 5.2 配置 theme = xxxx\n * ```\n */\nexport const AceEditorJson = (props: AceEditorJsonProps) => {\n const { value, onChange, height, hiddenVerifyBtn, autoCompleterList, onLoad, ...otherProps } = props;\n const heightFt = isUndefinedOrNull(height) ? '100%' : height;\n\n const [rootNodekey, setRootNodekey] = useState(Date.now());\n const [errorMsg, setErrorMsg] = useState<string>();\n\n const editorRef = useRef<TAny>();\n\n const valueNew = useMemo(() => {\n if (isObject(value)) {\n return JSON.stringify(value, null, 2);\n }\n return value as string | undefined;\n }, [value]);\n\n const handleChange = hooks.useCallbackRef((content: string) => {\n if (errorMsg) {\n setErrorMsg(undefined);\n }\n onChange?.(content);\n });\n\n const getCompletions = hooks.useCallbackRef((_a, _b, _c, _d, callback) => {\n callback(\n null,\n autoCompleterList?.map((item) => ({\n name: item.name,\n value: item.name,\n // score: 100,\n meta: item.desc,\n })),\n );\n });\n\n const onLoadHandle = (editor) => {\n editorRef.current = editor;\n /** 向编辑器中添加自动补全列表 */\n const findIndex = editor.completers.findIndex((item) => item.id === 'custom');\n if (findIndex >= 0) {\n editor.completers[findIndex] = { getCompletions, id: 'custom' };\n } else {\n editor.completers.push({ getCompletions, id: 'custom' });\n }\n onLoad?.(editor);\n };\n\n const inputValueVerify = (inputValue: string) => {\n try {\n const result = jsonStringToJsonObject(inputValue);\n onChange?.(result);\n } catch (error: TAny) {\n setErrorMsg('数据解析异常,正确格式:{\"name\":\"张三\", \"age\": 20}');\n }\n };\n const footer = (\n <Fragment>\n <ButtonWrapper\n hidden={hiddenVerifyBtn === true}\n type=\"primary\"\n block={false}\n ghost\n onClick={() => {\n const currentValue = editorRef.current?.getValue();\n if (!currentValue) {\n onChange?.(currentValue);\n return;\n }\n inputValueVerify(currentValue);\n }}\n >\n 验证数据\n </ButtonWrapper>\n {errorMsg ? <span style={{ color: 'red', marginLeft: 10 }}>{errorMsg}</span> : null}\n </Fragment>\n );\n\n return (\n <FlexLayout\n fullIndex={0}\n className={classNames('ace-editor-json', props.className)}\n style={{ height: heightFt, ...props.style }}\n key={rootNodekey}\n >\n <div className=\"aej-content\">\n <ErrorBoundaryWrapper\n onRenderReset={() => {\n onChange?.(undefined);\n setRootNodekey(Date.now());\n }}\n >\n <Ace\n fontSize={14}\n showPrintMargin={true}\n showGutter={true}\n highlightActiveLine={true}\n height=\"100%\"\n width=\"auto\"\n placeholder=\"请输入\"\n {...otherProps}\n setOptions={{\n useWorker: false,\n enableBasicAutocompletion: false,\n enableLiveAutocompletion: true,\n enableSnippets: false,\n showLineNumbers: true,\n tabSize: 2,\n ...otherProps.setOptions,\n }}\n mode=\"json\"\n onLoad={onLoadHandle}\n onChange={handleChange}\n onBlur={(_event, editor) => {\n const value = editor?.getValue();\n if (value) {\n inputValueVerify(value);\n }\n }}\n value={valueNew}\n />\n </ErrorBoundaryWrapper>\n </div>\n <div className=\"ace-editor-mysql-footer\" style={{ marginTop: 10, ...props.footerStyle }}>\n {props.footerExtraRender ? props.footerExtraRender(footer) : <Fragment>{footer}</Fragment>}\n </div>\n </FlexLayout>\n );\n};\n"],"names":["ace","require","m","module","exports","AceEditorJson","props","value","onChange","height","hiddenVerifyBtn","autoCompleterList","onLoad","otherProps","_objectWithoutPropertiesLoose","_excluded","heightFt","isUndefinedOrNull","_useState","useState","Date","now","rootNodekey","setRootNodekey","_useState2","errorMsg","setErrorMsg","editorRef","useRef","valueNew","useMemo","_isObject","JSON","stringify","handleChange","_hooks","useCallbackRef","content","undefined","getCompletions","_a","_b","_c","_d","callback","map","item","name","meta","desc","onLoadHandle","editor","current","findIndex","completers","id","push","inputValueVerify","inputValue","result","jsonStringToJsonObject","error","footer","_jsxs","Fragment","children","_jsx","ButtonWrapper","hidden","type","block","ghost","onClick","_editorRef$current","currentValue","getValue","style","color","marginLeft","FlexLayout","fullIndex","className","_classNames","_extends","ErrorBoundaryWrapper","onRenderReset","Ace","fontSize","showPrintMargin","showGutter","highlightActiveLine","width","placeholder","setOptions","useWorker","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","showLineNumbers","tabSize","mode","onBlur","_event","marginTop","footerStyle","footerExtraRender"],"mappings":"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","x_google_ignoreList":[0]}
|