UNPKG

prisme-flow

Version:

prisme platform flow engine

1 lines 1.85 kB
define("ace/mode/jsonata",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules","ace/worker/worker_client","ace/mode/text"],function(a,b,c){"use strict";var d=a("../lib/oop"),e=a("./text_highlight_rules").TextHighlightRules,f=a("../worker/worker_client").WorkerClient,g=Object.keys(jsonata.functions);g.sort(function(a,b){return b.length-a.length}),g=g.join("|").replace(/\$/g,"\\$");var h=function(){var a=this.createKeywordMapper({"keyword.operator":"and|or|in","constant.language":"null|Infinity|NaN|undefined","constant.language.boolean":"true|false","storage.type":"function"},"identifier");this.$rules={start:[{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/[+-]?\d[\d_]*(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?\b/},{token:"keyword",regex:/λ/},{token:"keyword",regex:g},{token:a,regex:"[a-zA-Z\\$_¡-￿][a-zA-Z\\d\\$_¡-￿]*"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"keyword.operator",regex:/\|\||<=|>=|\.\.|\*\*|!=|:=|[=<>`!$%&*+\-~\/^]/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/}],qqstring:[{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],qstring:[{token:"string",regex:"'|$",next:"start"},{defaultToken:"string"}]}};d.inherits(h,e);var i=a("./text").Mode,j=function(){this.HighlightRules=h};d.inherits(j,i),function(){this.createWorker=function(a){var b=new f(["ace"],"ace/mode/jsonata_worker","JSONataWorker");return b.attachToDocument(a.getDocument()),b.on("annotate",function(b){a.setAnnotations(b.data)}),b.on("terminate",function(){a.clearAnnotations()}),b},this.$id="ace/mode/jsonata"}.call(j.prototype),b.Mode=j});