(window.presentationUtil_bundle_jsonpfunction=window.presentationUtil_bundle_jsonpfunction||[]).push([[6,12],{108:function(e,n,t){"use strict";t.r(n),t.d(n,"ExpressionInput",(function(){return T})),t.d(n,"registerExpressionsLanguage",(function(){return R.registerExpressionsLanguage}));var r=t(0),o=t(15),i=t(78),a=t.n(i),u=t(33),s=t(2);const c={autoClosingPairs:[{open:"{",close:"}"}]},l={scrollBeyondLastLine:!1,quickSuggestions:!0,minimap:{enabled:!1},wordWrap:"on",wrappingIndent:"indent"};var f=t(32);function g(e){return"object"==typeof(null==e?void 0:e.node)}function d(e,n,t,r){var o=Error.call(this,e);return Object.setPrototypeOf&&Object.setPrototypeOf(o,d.prototype),o.expected=n,o.found=t,o.location=r,o.name="SyntaxError",o}function p(e,n,t){return t=t||" ",e.length>n?e:(n-=e.length,e+(t+=t.repeat(n)).slice(0,n))}!function(e,n){function t(){this.constructor=e}t.prototype=n.prototype,e.prototype=new t}(d,Error),d.prototype.format=function(e){var n="Error: "+this.message;if(this.location){var t,r=null;for(t=0;t0){for(n=1,t=1;n[\]$`|= \t\n\r]/,_=/^[^"'(){}<>[\]$`|= \t\n\r]/,x=/^[^"]/,E=/^[^']/,C=pe("|",!1),N=he("function"),T=pe("=",!1),R=pe("$",!1),S=pe("{",!1),M=pe("}",!1),j=me([["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),L=he("literal"),I=pe('"',!1),B=pe("'",!1),w=me([" ","\t","\r","\n"],!1,!1),F=pe("//",!1),K=me(["\n"],!0,!1),$=pe("/*",!1),k=pe("*/",!1),P={type:"any"},U=pe("\\",!1),G=me(['"',"'","(",")","{","}","<",">","[","]","$","`","|","="," ","\t","\n","\r"],!1,!1),q=me(['"',"'","(",")","{","}","<",">","[","]","$","`","|","="," ","\t","\n","\r"],!0,!1),V=me(['"'],!0,!1),z=me(["'"],!0,!1),X=function(e,n){return n},W=function(e,n){return Me({type:"expression",chain:e?[e].concat(n):[]},ge(),de())},Z=function(e,n){return Me({type:"function",function:e,arguments:n},ge(),de())},H=function(e,n){return{name:e,value:n}},J=function(e){return{name:"_",value:e}},Q=function(e){return e},Y=function(e){return Me(e,ge(),de())},ee=function(e){return e},ne=function(e){return e.reduce(((e,{name:n,value:t})=>({...e,[n]:(e[n]||[]).concat(t)})),{})},te=function(e){return e.join("")},re=function(e){return e.join("")},oe=function(e){var n=e.join("");return"null"===n?null:"true"===n||"false"!==n&&(isNaN(Number(n))?n:Number(n))},ie=function(e){return e},ae=0,ue=0,se=[{line:1,column:1}],ce=0,le=[],fe=0;if("startRule"in n){if(!(n.startRule in i))throw new Error("Can't start parsing from rule \""+n.startRule+'".');a=i[n.startRule]}function ge(){return e.substring(ue,ae)}function de(){return ye(ue,ae)}function pe(e,n){return{type:"literal",text:e,ignoreCase:n}}function me(e,n,t){return{type:"class",parts:e,inverted:n,ignoreCase:t}}function he(e){return{type:"other",description:e}}function Ae(n){var t,r=se[n];if(r)return r;for(t=n-1;!se[t];)t--;for(r={line:(r=se[t]).line,column:r.column};tce&&(ce=ae,le=[]),le.push(e))}function ve(){var n,t,o,i,a,s;for(n=ae,Ee(),(t=be())===r&&(t=null),o=[],i=ae,124===e.charCodeAt(ae)?(a=u,ae++):(a=r,0===fe&&De(C)),a!==r?(Ee(),(s=be())!==r?(ue=i,i=X(t,s)):(ae=i,i=r)):(ae=i,i=r);i!==r;)o.push(i),i=ae,124===e.charCodeAt(ae)?(a=u,ae++):(a=r,0===fe&&De(C)),a!==r?(Ee(),(s=be())!==r?(ue=i,i=X(t,s)):(ae=i,i=r)):(ae=i,i=r);return ue=n,W(t,o)}function be(){var e,n,t;return fe++,e=ae,(n=xe())!==r?(t=function(){var e,n,t,o;for(e=ae,n=[],t=ae,Ee()!==r&&(o=Oe())!==r?(ue=t,t=ee(o)):(ae=t,t=r);t!==r;)n.push(t),t=ae,Ee()!==r&&(o=Oe())!==r?(ue=t,t=ee(o)):(ae=t,t=r);return(t=Ee())===r&&(t=null),ue=e,e=ne(n)}(),ue=e,e=Z(n,t)):(ae=e,e=r),fe--,e===r&&(n=r,0===fe&&De(N)),e}function Oe(){var n,t,o,i;return n=ae,(t=xe())!==r?(Ee(),61===e.charCodeAt(ae)?(o=s,ae++):(o=r,0===fe&&De(T)),o!==r?(Ee(),(i=_e())!==r?(ue=n,n=H(t,i)):(ae=n,n=r)):(ae=n,n=r)):(ae=n,n=r),n===r&&(n=ae,(t=_e())!==r&&(ue=n,t=J(t)),n=t),n}function _e(){var n,t,o,i,a;return n=ae,36===e.charCodeAt(ae)?(t=c,ae++):(t=r,0===fe&&De(R)),t===r&&(t=null),123===e.charCodeAt(ae)?(o=l,ae++):(o=r,0===fe&&De(S)),o!==r&&(i=ve())!==r?(125===e.charCodeAt(ae)?(a=f,ae++):(a=r,0===fe&&De(M)),a!==r?(ue=n,n=Q(i)):(ae=n,n=r)):(ae=n,n=r),n===r&&(n=ae,t=function(){var n;return fe++,n=function(){var n,t,o,i;if(n=ae,34===e.charCodeAt(ae)?(t=g,ae++):(t=r,0===fe&&De(I)),t!==r){for(o=[],i=Re();i!==r;)o.push(i),i=Re();34===e.charCodeAt(ae)?(i=g,ae++):(i=r,0===fe&&De(I)),i!==r?(ue=n,n=re(o)):(ae=n,n=r)}else ae=n,n=r;if(n===r)if(n=ae,39===e.charCodeAt(ae)?(t=p,ae++):(t=r,0===fe&&De(B)),t!==r){for(o=[],i=Se();i!==r;)o.push(i),i=Se();39===e.charCodeAt(ae)?(i=p,ae++):(i=r,0===fe&&De(B)),i!==r?(ue=n,n=re(o)):(ae=n,n=r)}else ae=n,n=r;return n}(),n===r&&(n=function(){var e,n,t,o;if(e=ae,n=ae,fe++,t=Ne(),fe--,t===r?n=void 0:(ae=n,n=r),n!==r){if(t=[],(o=Te())!==r)for(;o!==r;)t.push(o),o=Te();else t=r;t!==r?(ue=e,e=oe(t)):(ae=e,e=r)}else ae=e,e=r;return e}()),fe--,n===r&&0===fe&&De(L),n}(),t!==r&&(ue=n,t=Y(t)),n=t),n}function xe(){var n,t,o;if(n=ae,t=[],D.test(e.charAt(ae))?(o=e.charAt(ae),ae++):(o=r,0===fe&&De(j)),o!==r)for(;o!==r;)t.push(o),D.test(e.charAt(ae))?(o=e.charAt(ae),ae++):(o=r,0===fe&&De(j));else t=r;return t!==r&&(ue=n,t=te(t)),t}function Ee(){var e,n;if(e=[],(n=Ce())===r&&(n=Ne()),n!==r)for(;n!==r;)e.push(n),(n=Ce())===r&&(n=Ne());else e=r;return e}function Ce(){var n;return v.test(e.charAt(ae))?(n=e.charAt(ae),ae++):(n=r,0===fe&&De(w)),n}function Ne(){var n;return(n=function(){var n,t,o,i;if(n=ae,e.substr(ae,2)===m?(t=m,ae+=2):(t=r,0===fe&&De(F)),t!==r){for(o=[],b.test(e.charAt(ae))?(i=e.charAt(ae),ae++):(i=r,0===fe&&De(K));i!==r;)o.push(i),b.test(e.charAt(ae))?(i=e.charAt(ae),ae++):(i=r,0===fe&&De(K));n=t=[t,o]}else ae=n,n=r;return n}())===r&&(n=function(){var n,t,o,i,a,u;if(n=ae,e.substr(ae,2)===h?(t=h,ae+=2):(t=r,0===fe&&De($)),t!==r){for(o=[],i=ae,a=ae,fe++,e.substr(ae,2)===A?(u=A,ae+=2):(u=r,0===fe&&De(k)),fe--,u===r?a=void 0:(ae=a,a=r),a!==r?(e.length>ae?(u=e.charAt(ae),ae++):(u=r,0===fe&&De(P)),u!==r?i=a=[a,u]:(ae=i,i=r)):(ae=i,i=r);i!==r;)o.push(i),i=ae,a=ae,fe++,e.substr(ae,2)===A?(u=A,ae+=2):(u=r,0===fe&&De(k)),fe--,u===r?a=void 0:(ae=a,a=r),a!==r?(e.length>ae?(u=e.charAt(ae),ae++):(u=r,0===fe&&De(P)),u!==r?i=a=[a,u]:(ae=i,i=r)):(ae=i,i=r);e.substr(ae,2)===A?(i=A,ae+=2):(i=r,0===fe&&De(k)),i===r&&(i=null),n=t=[t,o,i]}else ae=n,n=r;return n}()),n}function Te(){var n,t,o;return n=ae,92===e.charCodeAt(ae)?(t=y,ae++):(t=r,0===fe&&De(U)),t!==r?(O.test(e.charAt(ae))?(o=e.charAt(ae),ae++):(o=r,0===fe&&De(G)),o===r&&(92===e.charCodeAt(ae)?(o=y,ae++):(o=r,0===fe&&De(U))),o!==r?(ue=n,n=ie(o)):(ae=n,n=r)):(ae=n,n=r),n===r&&(_.test(e.charAt(ae))?(n=e.charAt(ae),ae++):(n=r,0===fe&&De(q))),n}function Re(){var n,t,o;return n=ae,92===e.charCodeAt(ae)?(t=y,ae++):(t=r,0===fe&&De(U)),t!==r?(34===e.charCodeAt(ae)?(o=g,ae++):(o=r,0===fe&&De(I)),o===r&&(92===e.charCodeAt(ae)?(o=y,ae++):(o=r,0===fe&&De(U))),o!==r?(ue=n,n=ie(o)):(ae=n,n=r)):(ae=n,n=r),n===r&&(x.test(e.charAt(ae))?(n=e.charAt(ae),ae++):(n=r,0===fe&&De(V))),n}function Se(){var n,t,o;return n=ae,92===e.charCodeAt(ae)?(t=y,ae++):(t=r,0===fe&&De(U)),t!==r?(39===e.charCodeAt(ae)?(o=p,ae++):(o=r,0===fe&&De(B)),o===r&&(92===e.charCodeAt(ae)?(o=y,ae++):(o=r,0===fe&&De(U))),o!==r?(ue=n,n=ie(o)):(ae=n,n=r)):(ae=n,n=r),n===r&&(E.test(e.charAt(ae))?(n=e.charAt(ae),ae++):(n=r,0===fe&&De(z))),n}function Me(e,t,{start:{offset:r},end:{offset:o}}){return n.addMeta?{node:e,text:t,start:r,end:o}:e}if((t=a())!==r&&ae===e.length)return t;throw t!==r&&aefunction(e,n){return e.toLowerCase().includes(n.toLowerCase().trim())}(e,c))),f=Object(h.getByAlias)(e,r),g=Object(h.getByAlias)(f.args,o);if(!g)return[];const d=i?Object(h.getByAlias)(e,i):null,p=d&&d.type,m=g.types;return l.sort(((e,n)=>{const t=v(e,p,m,!0),r=v(n,p,m,!0);return t===r?e.namer?-1:1})).map((e=>({type:"function",text:e.name+" ",start:a,end:u-A.length,fnDef:e})))}(e,i,a,c,u,l);if(f.function.includes(A))return function(e,n,t){const{start:r,end:o}=n.node.chain[t],i=n.node.chain[t-1],a=n.node.chain.length>t+1?n.node.chain[t+1]:null,u=i&&Object(h.getByAlias)(e,i.node.function),s=u&&u.type,c=a&&Object(h.getByAlias)(e,a.node.function),l=c&&c.inputTypes;return e.sort(((e,n)=>{const t=v(e,s,l,!1),r=v(n,s,l,!1);return t===r?e.namer?-1:1})).map((e=>({type:"function",text:`${e.name} `,start:r,end:o-A.length,fnDef:e})))}(e,i,a);if("_"===u&&void 0!==s)return function(e,n,t,r,o){const i=n.node.chain[t].node,a=Object(h.getByAlias)(e,i.function);if(!a)return[];const{start:u,end:s}=i.arguments[r][o],c=Object.entries(i.arguments).map((([e,n])=>[e,n.filter((e=>!e.text.includes(A)))]));return Object.entries(a.args).filter((([e,n])=>!!n.multi||!c.some((([t,r])=>r.length>0&&(t===e||(n.aliases||[]).includes(t)))))).map((([e,n])=>n)).sort(b).map((e=>({type:"argument",text:e.name+"=",start:u,end:s-A.length,argDef:e})))}(e,i,a,u,s);if(u&&void 0!==s)return function(e,n,t,r,i){const a=n.node.chain[t].node,u=Object(h.getByAlias)(e,a.function);if(!u)return[];const s=Object(h.getByAlias)(u.args,r);if(!s)return[];const{start:c,end:l,node:f}=a.arguments[r][i];if("string"!=typeof f)return[];const g=[...s.options?s.options:[]];return void 0!==s.default&&g.push(s.default),Object(o.uniq)(g).map((e=>{const n=function(e){return"string"==typeof e?e.match(/^\{.*\}$/)?e:`"${e.replace(/"/g,'\\"')}"`:e}(e)+" ";return{start:c,end:l-A.length,type:"value",text:n}}))}(e,i,a,u,s)}catch(e){}return[]}function D(e,n){const t=e.node.chain.findIndex((e=>e.start<=n&&n<=e.end)),r=e.node.chain[t];for(const[o,i]of Object.entries(r.node.arguments))for(let a=0;a0?e.node.chain[t-1].node.function:null:i.ast.node.chain[i.fnIndex-1].node.function;return{...i,argName:o,argIndex:a,argStart:s,argEnd:c,parentFn:r.node.function,contextFn:n}}return i}return{ast:e,fnIndex:t,argName:o,argIndex:a,argStart:s,argEnd:c}}}return{ast:e,fnIndex:t}}function v(e,n,t,r){let o=0;n||(n="null");const i=e.inputTypes||[];if(r)t&&e.type&&t.length&&t.includes(e.type)&&(o++,i.includes(n)&&o++);else if(e.inputTypes){const t=i.includes("null");t||"null"===n?t&&"null"===n&&(o++,e.type&&"null"!==e.type&&o++):(o++,e.inputTypes.includes(n)&&o++)}return o}function b(e,n){return(n.aliases&&n.aliases.includes("_")?1:0)-(e.aliases&&e.aliases.includes("_")?1:0)}var O=t(6);const _="**",x={getArgReferenceAliasesDetail:e=>O.i18n.translate("presentationUtil.expressionInput.argReferenceAliasesDetail",{defaultMessage:"{BOLD_MD_TOKEN}Aliases{BOLD_MD_TOKEN}: {aliases}",values:{BOLD_MD_TOKEN:_,aliases:e}}),getArgReferenceDefaultDetail:e=>O.i18n.translate("presentationUtil.expressionInput.argReferenceDefaultDetail",{defaultMessage:"{BOLD_MD_TOKEN}Default{BOLD_MD_TOKEN}: {defaultVal}",values:{BOLD_MD_TOKEN:_,defaultVal:e}}),getArgReferenceRequiredDetail:e=>O.i18n.translate("presentationUtil.expressionInput.argReferenceRequiredDetail",{defaultMessage:"{BOLD_MD_TOKEN}Required{BOLD_MD_TOKEN}: {required}",values:{BOLD_MD_TOKEN:_,required:e}}),getArgReferenceTypesDetail:e=>O.i18n.translate("presentationUtil.expressionInput.argReferenceTypesDetail",{defaultMessage:"{BOLD_MD_TOKEN}Types{BOLD_MD_TOKEN}: {types}",values:{BOLD_MD_TOKEN:_,types:e}}),getFunctionReferenceAcceptsDetail:e=>O.i18n.translate("presentationUtil.expressionInput.functionReferenceAccepts",{defaultMessage:"{BOLD_MD_TOKEN}Accepts{BOLD_MD_TOKEN}: {acceptTypes}",values:{BOLD_MD_TOKEN:_,acceptTypes:e}}),getFunctionReferenceReturnsDetail:e=>O.i18n.translate("presentationUtil.expressionInput.functionReferenceReturns",{defaultMessage:"{BOLD_MD_TOKEN}Returns{BOLD_MD_TOKEN}: {returnType}",values:{BOLD_MD_TOKEN:_,returnType:e}})};function E(e){const{help:n,type:t,inputTypes:r}=e,o=r?r.join(" | "):"null",i=t||"null";return`${x.getFunctionReferenceAcceptsDetail(o)} ${x.getFunctionReferenceReturnsDetail(i)}\n\n\n${n}`}function C(e){const{aliases:n,types:t,default:r,required:o,help:i}=e,a=[];null!=r&&a.push(x.getArgReferenceDefaultDetail(String(r))),n&&n.length&&a.push(x.getArgReferenceAliasesDetail(n.join(" | ")));const u=t&&t.length?t.join(" | "):"null",s=String(Boolean(o));return`${x.getArgReferenceTypesDetail(u)} ${x.getArgReferenceRequiredDetail(s)}\n \n\n${a.join(" ")}\n \n\n${i}`}var N=t(1);const T=e=>{const{expressionFunctions:n,expression:t,onChange:i,isCompact:g,height:d,style:p,editorRef:A,onEditorDidMount:v,...b}=e,[O,_]=Object(r.useState)(t),x=a()(t);Object(r.useEffect)((()=>{x!==t&&_(t)}),[x,t]);const T=Object(r.useMemo)((()=>(e=>({triggerCharacters:[" ","{"],provideCompletionItems:(n,t,r)=>{const o=n.getValue(),i=n.getFullModelRange(),a=n.getValueLengthInRange({startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.endLineNumber,endColumn:i.endColumn});let u,s;if("{"===r.triggerCharacter)n.getWordAtPosition(t.delta(0,-3))&&(u=new f.monaco.Range(t.lineNumber,t.column,t.lineNumber,t.column),s=y(e,o.substring(0,o.length-a)+"}",o.length-a));else{const r=n.getWordUntilPosition(t);u=new f.monaco.Range(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn),s=y(e,o,o.length-a)}return s?{suggestions:s.map(((e,n)=>{const t=String.fromCharCode(n);return"argument"===e.type?{label:e.argDef.name,kind:f.monaco.languages.CompletionItemKind.Variable,documentation:{value:C(e.argDef),isTrusted:!0},insertText:e.text,command:{title:"Trigger Suggestion Dialog",id:"editor.action.triggerSuggest"},range:u,sortText:t}:"value"===e.type?{label:e.text,kind:f.monaco.languages.CompletionItemKind.Value,insertText:e.text,command:{title:"Trigger Suggestion Dialog",id:"editor.action.triggerSuggest"},range:u,sortText:t}:{label:e.fnDef.name,kind:f.monaco.languages.CompletionItemKind.Function,documentation:{value:E(e.fnDef),isTrusted:!0},insertText:e.text,command:{title:"Trigger Suggestion Dialog",id:"editor.action.triggerSuggest"},range:u,sortText:t}}))}:{suggestions:[]}}}))(n)),[n]),R=Object(r.useMemo)((()=>(e=>({provideHover:(n,t)=>{const r=n.getValue(),o=n.getWordAtPosition(t);if(!o)return{contents:[]};const i=n.getValueLengthInRange({startLineNumber:0,startColumn:0,endLineNumber:t.lineNumber,endColumn:o.endColumn}),{fnDef:a,argDef:u,argStart:s,argEnd:c}=function(e,n,t){try{const r=m(n,{addMeta:!0}),{ast:o,fnIndex:i,argName:a,argStart:u,argEnd:s}=D(r,t),c=o.node.chain[i].node,l=Object(h.getByAlias)(e,c.function);return l&&a?{fnDef:l,argDef:Object(h.getByAlias)(l.args,a),argStart:u,argEnd:s}:{fnDef:l}}catch(e){}return{}}(e,r,i);if(u&&s&&c){const e=n.getPositionAt(s),t=n.getPositionAt(c),r=new f.monaco.Range(e.lineNumber,e.column,t.lineNumber,t.column);return{contents:[{value:C(u),isTrusted:!0}],range:r}}return a?{contents:[{value:E(a),isTrusted:!0}]}:{contents:[]}}}))(n)),[n]),S=Object(o.debounce)((e=>_(e)),500,{leading:!0,trailing:!1});return Object(N.jsx)("div",{style:{height:d,...p},rest:b},Object(N.jsx)(u.CodeEditor,{languageId:s.EXPRESSIONS_LANGUAGE_ID,languageConfiguration:c,value:O,onChange:e=>{S(e),i(e)},suggestionProvider:T,hoverProvider:R,options:{...l,fontSize:g?12:16},editorDidMount:e=>{const n=e.getModel();null==n||n.updateOptions({tabSize:2}),null==v||v(e),A&&(A.current=e)}}))};var R=t(41);n.default=T},41:function(e,n,t){"use strict";t.r(n),t.d(n,"registerExpressionsLanguage",(function(){return a}));var r=t(32),o=t(2);const i={keywords:[],deprecated:[],symbols:/[=|]/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,boolean:["true","false"],null:["null"],tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/[a-z_$][\w$]*=/,"identifier"],[/[a-z_$][\w$]*/,{cases:{"@keywords":{cases:{"@deprecated":"keyword.deprecated","@default":"keyword"}},"@null":"keyword","@boolean":"keyword","@default":"identifier"}}],[/(@digits)/,"number"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/@symbols/,"delimiter"],[/\/\*/,"comment","@multiline_comment"],[/\/\/.*$/,"comment"]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}],multiline_comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]]}};function a(e){i.keywords=e.map((e=>e.name)),i.deprecated=e.filter((e=>e.deprecated)).map((e=>e.name)),r.monaco.languages.onLanguage(o.EXPRESSIONS_LANGUAGE_ID,(()=>{r.monaco.languages.setMonarchTokensProvider(o.EXPRESSIONS_LANGUAGE_ID,i)})),r.monaco.languages.register({id:o.EXPRESSIONS_LANGUAGE_ID})}},78:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r=t(0);n.default=function(e){var n=r.useRef();return r.useEffect((function(){n.current=e})),n.current}}}]);