@next-bricks/vs 0.2.2 → 0.3.0

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/dist/bricks.json CHANGED
@@ -10,5 +10,5 @@
10
10
  "eo-form-item"
11
11
  ]
12
12
  },
13
- "filePath": "bricks/vs/dist/index.d563b587.js"
13
+ "filePath": "bricks/vs/dist/index.aa851d2a.js"
14
14
  }
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[]).push([[2383],{92383:(e,t,n)=>{n.r(t);var r,i,a=n(33028),s=n(53395),l=n(40381),u=n(70687),o=n(25303),h=n(48657),c=n.n(h),d=n(75476),m=n(29049),g=n(16989),{method:v}=(0,d.createDecorators)();r=v();var p=new WeakMap,b=new WeakMap,f=new WeakMap,Z=new WeakMap,k=new WeakMap,C=new WeakMap;class w extends m.ReactNextElement{constructor(){super(...arguments),(0,s.Z)(this,C,{get:E,set:S}),(0,s.Z)(this,Z,{get:N,set:M}),(0,s.Z)(this,b,{get:y,set:L}),(0,s.Z)(this,p,{writable:!0,value:!1}),(0,s.Z)(this,f,{writable:!0,value:"normal"}),(0,s.Z)(this,k,{writable:!0,value:!1}),i(this)}get isFormItemElement(){return!0}set validateState(e){(0,l.Z)(this,Z,e),this._render()}get validateState(){return(0,u.Z)(this,Z)}set notRender(e){this.hidden=e,(0,l.Z)(this,b,e),this._render()}get notRender(){return(0,u.Z)(this,b)}get $bindFormItem(){return(0,u.Z)(this,C)}set $bindFormItem(e){(0,l.Z)(this,C,e),this._render()}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function y(){return(0,u.Z)(this,p)}function L(e){(0,l.Z)(this,p,e)}function N(){return(0,u.Z)(this,f)}function M(e){(0,l.Z)(this,f,e)}function E(){return(0,u.Z)(this,k)}function S(e){(0,l.Z)(this,k,e)}[i]=(0,o.Z)(w,[[r,2,"getFormElement"]],[]).e;var x=n(46475),T=n(73701),I=n(47637),R=n(64167),W=n(27680),A=n(42308),P=n.n(A),_=n(56666),K=n(78035),z=new WeakMap,V=new WeakMap,B=new WeakMap;n(65254);var O=18,F=12,H=12,q=n(36023),D=["CTX","STATE","DATA","EVENT","FLAGS","APP","ANCHOR","HASH","INSTALLED_APPS","ITEM","LOCAL_STORAGE","MEDIA","MISC","PARAMS","PATH","PROCESSORS","QUERY","QUERY_ARRAY","SESSION_STORAGE","TPL","SYS","BASE_URL","IMG","FN","I18N","I18N_TEXT","PERMISSIONS","THEME"],U=["target","targetRef","properties","events","method","callback","success","error","action","useProvider","useChildren","useBrick","args","if","then"],j={hit:1,info:2,warn:4,error:8},$=(e,t,n)=>{for(var r=[],i=[],a="",s=n,l=t.startColumn;s>0;){var u=e.getValueInRange({startLineNumber:s,endLineNumber:s,startColumn:0,endColumn:1/0}).match(/^([\s|-]*)(\w+)(?=:)/);if(u){var[o,h,c]=u;h.length===t.startColumn-1&&r.unshift(c),h.length<l-1&&(!a&&(a=c),l=h.length,i.unshift(c))}s--}return{curLevelKeys:r,keyList:i,parentKey:a}},G=n(46062),X=n.n(G),Y=n(44036),Q=n.n(Y),J=n(96793),ee=n.n(J),te=n(17892),ne=n.n(te),re=n(11173),ie=n.n(re),ae=n(42464),se=n.n(ae),le=n(76126),ue={};ue.styleTagTransform=se(),ue.setAttributes=ne(),ue.insert=ee().bind(null,"head"),ue.domAPI=Q(),ue.insertStyleElement=ie(),X()(le.Z,ue),le.Z&&le.Z.locals&&le.Z.locals;var oe,he,ce,de,me,ge,ve,pe,be,fe,Ze,ke,Ce,we,ye,Le,Ne,Me,Ee,Se,xe,Te,Ie,Re,We,Ae,Pe,_e,Ke,ze,Ve,Be,Oe,Fe,He,qe,De,Ue,je,$e,Ge,Xe,Ye,Qe,Je,et=n(98319);(0,T.z2)(x),(0,I.z2)(x),(0,R.z2)(x,"brick_next_yaml"),(0,W.z2)(x);var tt,{defineElement:nt,property:rt,event:it}=(0,d.createDecorators)(),at=(0,m.wrapBrick)("eo-form-item");he=nt("vs.code-editor",{shadowOptions:!1}),ce=rt(),me=rt(),ve=rt({attribute:!1}),be=rt(),Ze=rt(),Ce=rt({type:Boolean}),ye=rt({type:Boolean}),Ne=rt(),Ee=rt({type:Number}),xe=rt({attribute:!1}),Ie=rt({attribute:!1}),We=rt({attribute:!1}),Pe=rt({attribute:!1}),Ke=rt({type:Number}),Ve=rt({attribute:!1}),Oe=it({type:"code.change"}),De=it({type:"user.input"}),Ge=it({type:"token.click"});var st=new WeakMap,lt=new WeakMap,ut=new WeakMap,ot=new WeakMap,ht=new WeakMap,ct=new WeakMap,dt=new WeakMap,mt=new WeakMap,gt=new WeakMap,vt=new WeakMap,pt=new WeakMap,bt=new WeakMap,ft=new WeakMap,Zt=new WeakMap,kt=new WeakMap,Ct=new WeakMap,wt=new WeakMap,yt=new WeakMap,Lt=new WeakMap,Nt=new WeakMap,Mt=new WeakMap,Et=new WeakMap,St=new WeakMap;function xt(e){qe(this,e)}function Tt(){return He(this)}function It(e){$e(this,e)}function Rt(){return je(this)}function Wt(e){Qe(this,e)}function At(){return Ye(this)}function Pt(e){var{value:t,language:n,theme:r,minLines:i,maxLines:o,height:d,automaticLayout:m,completers:v,advancedCompleters:p,markers:b,links:f,onChange:Z,onHighlightClick:k}=e,C=null!=t?t:"",w=null!=n?n:"plaintext",y=null!=r?r:"auto",L=null!=i?i:3,N=null!=o?o:1/0,M=null!=d?d:500,E=(0,h.useRef)(null),S=(0,h.useRef)(),T=(0,h.useRef)(),I=(0,h.useRef)({width:300,height:_t(C,L,N)}),[R,W]=(0,h.useState)(),A=(0,h.useRef)(m),G=(0,g.useCurrentTheme)();(0,h.useEffect)((()=>{x.editor.setTheme("auto"===y?"dark"===G||"dark-v2"===G?"vs-dark":"vs":y)}),[G,y]),(0,h.useEffect)((()=>{if(T.current){var e=T.current.getModel();x.editor.setModelLanguage(e,w),(0,K.isEqual)(e.getValue(),C)||e.setValue(C)}}),[C,w]),(0,h.useEffect)((()=>{if("brick_next_yaml"===w){var e=((e,t)=>(n,r,i,s)=>{var l=n.getWordUntilPosition(r),{word:u,token:o}=((e,t)=>{var n,r=e.getWordUntilPosition(t),i=e.getValueInRange({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:t.column-r.word.length-1,endColumn:t.column-r.word.length}),s=e.getWordAtPosition((0,a.Z)((0,a.Z)({},t),{},{column:t.column-(null==r||null===(n=r.word)||void 0===n?void 0:n.length)-1}));return{word:null==s?void 0:s.word,token:i}})(n,r),h=n.getValueInRange({startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:0,endColumn:1/0}),c={startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:l.startColumn,endColumn:l.endColumn},d=1===l.startColumn,{curLevelKeys:m}=$(n,l,n.getLineCount());if("<"===i.triggerCharacter)return"<"!==n.getValueInRange({startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:r.column-2,endColumn:r.column+2}).trim()?{suggestions:[]}:{suggestions:[{label:"<% %>",detail:"Evalute Body",kind:x.languages.CompletionItemKind.Value,insertText:"% ${0} %>",insertTextRules:x.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:c},{label:"<%= %>",detail:"Track Evalute Body",kind:x.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:x.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:c}]};if(d)return{suggestions:(null!=e?e:[]).filter((e=>!m.includes(e.label))).map((e=>(0,a.Z)((0,a.Z)({},e),{},{label:e.label,insertText:e.insertText||e.label,kind:x.languages.CompletionItemKind.Keyword,range:c})))};if(":"===i.triggerCharacter||"."===i.triggerCharacter&&u&&!["CTX","STATE","FN"].includes(u)){var g,v;if("action"===u&&":"===i.triggerCharacter)return{suggestions:null===(g=null!==(v=(0,K.get)(q,"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==v?v:[])||void 0===g?void 0:g.map((e=>({label:" ".concat(e),detail:"event action",kind:x.languages.CompletionItemKind.Keyword,insertText:" ".concat(e),range:c})))};var p,b,f=null==t?void 0:t[u],Z="";if(f&&!Array.isArray(f)?(p=f.completers,Z=f.triggerCharacter):p=f,Z?i.triggerCharacter===Z&&p:p)return{suggestions:(null!==(b=p)&&void 0!==b?b:[]).map((e=>{var t=":"===Z?" ".concat(e.label):e.label;return(0,a.Z)((0,a.Z)({},e),{},{label:t,kind:x.languages.CompletionItemKind.Value,insertText:e.insertText||t,range:c})}))}}if(((e,t)=>{var n=e.getWordUntilPosition(t),r=e.findPreviousMatch("<%",t,!1,!1,null,!1),i=e.findNextMatch("%>",t,!1,!1,null,!1);if((null==r?void 0:r.range.startLineNumber)&&(null==i?void 0:i.range.startLineNumber)&&r.range.startLineNumber<=t.lineNumber&&i.range.endLineNumber>=t.lineNumber){var{parentKey:a}=$(e,r.range,null==r?void 0:r.range.startLineNumber),{parentKey:s}=$(e,i.range,null==i?void 0:i.range.startLineNumber),{keyList:l}=$(e,n,t.lineNumber);if(a===s&&l.includes(a))return!0}return!1})(n,r)){var k,C,w,y;if(u&&["CTX","STATE"].includes(u)&&t)return{suggestions:(null!==(k=null===(C=t[u])||void 0===C?void 0:C.completers)&&void 0!==k?k:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:c})))};if("FN"===u&&"."===i.triggerCharacter&&t)return{suggestions:(null!==(w=null===(y=t.FN)||void 0===y?void 0:y.completers)&&void 0!==w?w:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:c})))};if("APP"===u&&"."===i.triggerCharacter){var L=(0,K.get)(q,"definitions.MicroApp.properties"),N=[];for(var[M,E]of Object.entries(L))N.push({label:M,kind:x.languages.CompletionItemKind.Value,documentation:E.description,detail:E.enum?E.enum.join("|"):E.type,insertText:M,range:c});return{suggestions:N}}return[".",":"].includes(o)?{suggestions:[]}:{suggestions:D.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:c})))}}return/^[\s|-]*\w$/.test(h)?{suggestions:U.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:c}))).filter((e=>!m.includes(e.label)))}:{suggestions:[]}})(v,p),t=x.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[v,p,w]);var X=(0,h.useCallback)((()=>{var e=new class{constructor(){(0,s.Z)(this,z,{writable:!0,value:void 0}),(0,s.Z)(this,V,{writable:!0,value:void 0}),(0,s.Z)(this,B,{writable:!0,value:void 0}),(0,_.Z)(this,"getTokens",(()=>(0,u.Z)(this,z))),(0,l.Z)(this,z,[]),(0,l.Z)(this,V,0),(0,l.Z)(this,B,"")}handleState(e,t){if("close"===e){var{line:n,position:r,lineStart:i,result:a}=t,s=t.input.substring(i,r);if(s.trim()===(0,u.Z)(this,B).trim())return;(0,l.Z)(this,B,s);var o=n+1,h=n+1,c=r-i-a.length,d=r-i-t.lineIndent;if("string"==typeof a&&/^\s*<%[~=]?\s/.test(a)&&/\s%>\s*$/.test(a)){var m,g=a,v=null===(m=a.match(/\n/g))||void 0===m?void 0:m.length;if(v){for(var p=(0,u.Z)(this,V),b=(0,u.Z)(this,V);b<t.input.length;b++)if("\n"===t.input[b]){p=b+1;break}var f=/(\|-|>-)/.test(t.input.substring((0,u.Z)(this,V),r-1));g=t.input.substring(p,r-1),o=t.line-v+1-Number(f),h=n,c=0,d=0}var Z={source:g,startLineNumber:o,endLineNumber:h,startColumn:c,endColumn:d,isString:['"',"'"].includes(t.input[i+c-2])};!(0,u.Z)(this,z).find((e=>(0,K.isEqual)(e,Z)))&&(0,u.Z)(this,z).push(Z)}(0,l.Z)(this,V,r)}}listen(){return this.handleState.bind(this)}};if(T.current){var t=T.current.getModel();try{if(P().load(C,{listener:e.listen()}),(f||b)&&T.current){var n,r=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:i}=e,a=[],s=(0,et.preevaluate)(e.source,{hooks:{beforeVisit(e){"MemberExpression"===e.type&&"Identifier"===e.object.type&&D.includes(e.object.name)&&"Identifier"===e.property.type&&a.push(e)}}});a.forEach((a=>{var{start:l,end:u,loc:o}=a;if(e.startLineNumber!==e.endLineNumber){var h,c,d,m,g,v=/<%[ ]+/.test(s.prefix);r.push({token:null===(h=a.object)||void 0===h?void 0:h.name,property:a.property.name,startLineNumber:e.startLineNumber+(null==o||null===(c=o.start)||void 0===c?void 0:c.line)-Number(v),endLineNumber:e.startLineNumber+(null==o||null===(d=o.end)||void 0===d?void 0:d.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(m=o.start)||void 0===m?void 0:m.column)+1,endColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(g=o.end)||void 0===g?void 0:g.column)+1})}else{var p,b,f;r.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:i+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:i+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(n=S.current)||void 0===n||n.set(r.filter((e=>null==f?void 0:f.includes(e.token))).map((e=>({range:new x.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),options:{inlineClassName:"highlight"}})))),b){var i=r.map((e=>{var t,n,r=b.find((t=>t.token===e.token));return(null==r||null===(t=r.params)||void 0===t?void 0:t.includes(e.property))?r&&r.message?(0,a.Z)((0,a.Z)({severity:j[null!==(n=null==r?void 0:r.level)&&void 0!==n?n:"warn"],message:r.message},r.code?{code:{value:r.code.value,target:x.Uri.parse(r.code.target)}}:{}),{},{startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}):void 0:{severity:j.warn,message:"Miss Property",startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}})).filter(Boolean);x.editor.setModelMarkers(t,"brick_next_yaml",i)}}}catch(e){var o;x.editor.setModelMarkers(t,"brick_next_yaml",[]),null==S||null===(o=S.current)||void 0===o||o.set([]),console.log(e)}}}),[C,b,f]);return(0,h.useEffect)((()=>{X()}),[X]),(0,h.useLayoutEffect)((()=>{var e;if("fit-content"===A.current&&E.current){I.current.width=E.current.getBoundingClientRect().width,null===(e=T.current)||void 0===e||e.layout(I.current);var t=new ResizeObserver((e=>{for(var t of e)if(t.target===E.current){var n,r=t.contentBoxSize?t.contentBoxSize[0].inlineSize:t.contentRect.width;r!==I.current.width&&(I.current.width=r,null===(n=T.current)||void 0===n||n.layout(I.current));break}}));return t.observe(E.current),()=>{t.disconnect()}}}),[]),(0,h.useLayoutEffect)((()=>{if("fit-container"===A.current){var e=function(e){for(var t=e;t;){var n="vs.code-editor"===t.tagName.toLowerCase();if(t=t.parentElement,n)return t}}(E.current);if(e){var t=new ResizeObserver((()=>{W(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,h.useEffect)((()=>{"fit-container"!==A.current&&"fit-content"!==A.current&&W(M)}),[M]),(0,h.useEffect)((()=>{if(!T.current&&E.current){var e=x.editor.createModel(C,w);T.current=x.editor.create(E.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==A.current,fontSize:12,lineHeight:O,scrollbar:{horizontalScrollbarSize:F,verticalScrollbarSize:F,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:H,bottom:"fit-content"==A.current?void 0:H},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},quickSuggestions:{strings:!0,other:!0,comments:!0}}),S.current=T.current.createDecorationsCollection()}}),[C,w]),(0,h.useEffect)((()=>{var e=T.current;if("brick_next_yaml"===w&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=S.current;(null!==(n=null==i||null===(r=i.getRanges)||void 0===r?void 0:r.call(i))&&void 0!==n?n:[]).forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)&&k(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=S.current;t&&t.getRanges().forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";if(n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)){var i=t.getRanges().map((e=>({range:e,options:{inlineClassName:n.equalsRange(e)?"highlight pointer":"highlight"}})));t.set(i)}else if(!e.event[r]){var a=t.getRanges().map((e=>({range:e,options:{inlineClassName:"highlight"}})));t.set(a)}}))}));return X(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[w,k,G,y,X]),(0,h.useEffect)((()=>{var e=T.current;if(e&&E.current&&"fit-content"===A.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=Kt(t.contentHeight,L,N);n!==I.current.height&&(I.current.height=n,e.layout(I.current))}})),n=Kt(e.getContentHeight(),L,N);return n!==I.current.height&&(I.current.height=n,e.layout(I.current)),()=>{t.dispose()}}}),[N,L]),(0,h.useEffect)((()=>{if(T.current){var e=T.current.getModel(),t=e.onDidChangeContent((t=>{Z(e.getValue(),t.isFlush)}));return()=>{t.dispose()}}}),[Z]),(0,h.useEffect)((()=>()=>{var e,t,n;null===(e=T.current)||void 0===e||null===(t=e.getModel())||void 0===t||t.dispose(),null===(n=T.current)||void 0===n||n.dispose()}),[]),c().createElement("div",{ref:E,style:{height:R}})}function _t(e,t,n){return zt(Math.min(n,Math.max(t,e.split("\n").length)))}function Kt(e,t,n){var r=e;return(e-H)%O==0&&(r=e+F),Math.min(zt(n),Math.max(r,zt(t)))}function zt(e){return e*O+F+H}({e:[de,ge,pe,fe,ke,we,Le,Me,Se,Te,Re,Ae,_e,ze,Be,Fe,He,qe,Ue,je,$e,Xe,Ye,Qe,Je],c:[tt,oe]}=(0,o.Z)(class extends w{constructor(){super(...arguments),(0,s.Z)(this,Et,{get:At,set:Wt}),(0,s.Z)(this,Lt,{get:Rt,set:It}),(0,s.Z)(this,wt,{get:Tt,set:xt}),(0,s.Z)(this,st,{writable:!0,value:(Je(this),de(this))}),(0,s.Z)(this,lt,{writable:!0,value:ge(this)}),(0,s.Z)(this,ut,{writable:!0,value:pe(this)}),(0,s.Z)(this,ot,{writable:!0,value:fe(this)}),(0,s.Z)(this,ht,{writable:!0,value:ke(this)}),(0,s.Z)(this,ct,{writable:!0,value:we(this)}),(0,s.Z)(this,dt,{writable:!0,value:Le(this)}),(0,s.Z)(this,mt,{writable:!0,value:Me(this)}),(0,s.Z)(this,gt,{writable:!0,value:Se(this)}),(0,s.Z)(this,vt,{writable:!0,value:Te(this)}),(0,s.Z)(this,pt,{writable:!0,value:Re(this)}),(0,s.Z)(this,bt,{writable:!0,value:Ae(this)}),(0,s.Z)(this,ft,{writable:!0,value:_e(this)}),(0,s.Z)(this,Zt,{writable:!0,value:ze(this)}),(0,s.Z)(this,kt,{writable:!0,value:Be(this)}),(0,s.Z)(this,Ct,{writable:!0,value:Fe(this)}),(0,s.Z)(this,yt,{writable:!0,value:Ue(this)}),(0,s.Z)(this,Nt,{writable:!0,value:(e,t)=>{var n;null===(n=this.getFormElement())||void 0===n||n.formStore.onChange(this.name,e),this.value=e,(0,u.Z)(this,wt).emit(e),t||(0,u.Z)(this,Lt).emit(e)}}),(0,s.Z)(this,Mt,{writable:!0,value:Xe(this)}),(0,s.Z)(this,St,{writable:!0,value:e=>{(0,u.Z)(this,Et).emit(e)}})}get name(){return(0,u.Z)(this,st)}set name(e){(0,l.Z)(this,st,e)}get label(){return(0,u.Z)(this,lt)}set label(e){(0,l.Z)(this,lt,e)}get value(){return(0,u.Z)(this,ut)}set value(e){(0,l.Z)(this,ut,e)}get language(){return(0,u.Z)(this,ot)}set language(e){(0,l.Z)(this,ot,e)}get theme(){return(0,u.Z)(this,ht)}set theme(e){(0,l.Z)(this,ht,e)}get required(){return(0,u.Z)(this,ct)}set required(e){(0,l.Z)(this,ct,e)}get readOnly(){return(0,u.Z)(this,dt)}set readOnly(e){(0,l.Z)(this,dt,e)}get automaticLayout(){return(0,u.Z)(this,mt)}set automaticLayout(e){(0,l.Z)(this,mt,e)}get minLines(){return(0,u.Z)(this,gt)}set minLines(e){(0,l.Z)(this,gt,e)}get completers(){return(0,u.Z)(this,vt)}set completers(e){(0,l.Z)(this,vt,e)}get advancedCompleters(){return(0,u.Z)(this,pt)}set advancedCompleters(e){(0,l.Z)(this,pt,e)}get markers(){return(0,u.Z)(this,bt)}set markers(e){(0,l.Z)(this,bt,e)}get links(){return(0,u.Z)(this,ft)}set links(e){(0,l.Z)(this,ft,e)}get maxLines(){return(0,u.Z)(this,Zt)}set maxLines(e){(0,l.Z)(this,Zt,e)}get height(){return(0,u.Z)(this,kt)}set height(e){(0,l.Z)(this,kt,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return c().createElement(at,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required},c().createElement(Pt,{value:this.value,language:this.language,theme:this.theme,automaticLayout:this.automaticLayout,minLines:this.minLines,maxLines:this.maxLines,height:this.height,completers:this.completers,advancedCompleters:this.advancedCompleters,markers:this.markers,links:this.links,onChange:(0,u.Z)(this,Nt),onHighlightClick:(0,u.Z)(this,St)}))}},[[ce,1,"name"],[me,1,"label"],[ve,1,"value"],[be,1,"language"],[Ze,1,"theme"],[Ce,1,"required"],[ye,1,"readOnly"],[Ne,1,"automaticLayout"],[Ee,1,"minLines"],[xe,1,"completers"],[Ie,1,"advancedCompleters"],[We,1,"markers"],[Pe,1,"links"],[Ke,1,"maxLines"],[Ve,1,"height"],[Oe,1,"codeChange",function(){return(0,u.Z)(this,Ct)},function(e){(0,l.Z)(this,Ct,e)}],[De,1,"userInput",function(){return(0,u.Z)(this,yt)},function(e){(0,l.Z)(this,yt,e)}],[Ge,1,"highlighClickEvent",function(){return(0,u.Z)(this,Mt)},function(e){(0,l.Z)(this,Mt,e)}]],[he])),oe()},76126:(e,t,n)=>{n.d(t,{Z:()=>l});var r=n(39601),i=n.n(r),a=n(82609),s=n.n(a)()(i());s.push([e.id,".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}",""]);const l=s}}]);
2
+ //# sourceMappingURL=2383.b7fe4330.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/2383.b7fe4330.js","mappings":"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","sources":["webpack:///../../src/FormItemElement.tsx","webpack:///./src/code-editor/utils/brickNextSourceMap.ts","webpack:///./src/code-editor/constants.ts","webpack:///./src/code-editor/utils/constants.ts","webpack:///./src/code-editor/utils/brickNextYaml.ts","webpack:///./src/code-editor/index.css?aefa","webpack:///./src/code-editor/index.tsx","webpack:///./src/code-editor/index.css"],"sourcesContent":["import { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type { AbstractForm } from \"./Form.js\";\n\nconst { method } = createDecorators();\n\nexport abstract class FormItemElementBase extends ReactNextElement {\n accessor #_notRender = false;\n accessor #validate = \"normal\";\n accessor #bindFormItem = false;\n\n get isFormItemElement(): true {\n return true;\n }\n\n set validateState(value: string) {\n this.#validate = value;\n this._render();\n }\n get validateState() {\n return this.#validate;\n }\n\n /**\n * 控制该表单项是否隐藏\n * @default false\n * @group ui\n */\n set notRender(value: boolean) {\n this.hidden = value;\n this.#_notRender = value;\n this._render();\n }\n get notRender(): boolean {\n return this.#_notRender;\n }\n\n get $bindFormItem() {\n return this.#bindFormItem;\n }\n set $bindFormItem(value: boolean) {\n this.#bindFormItem = value;\n this._render();\n }\n\n @method()\n getFormElement(): AbstractForm | null {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n let element: AbstractForm | null = this as unknown as AbstractForm;\n while ((element = element.parentNode as AbstractForm | null)) {\n if (!element || element.isFormElement) {\n break;\n }\n }\n return element as AbstractForm | null;\n }\n}\n","import type { State } from \"js-yaml\";\nimport { isEqual } from \"lodash\";\n\nexport interface Token {\n startLineNumber: number;\n endLineNumber: number;\n startColumn: number;\n endColumn: number;\n source: string;\n isString?: boolean;\n}\n\nclass BrickNextYamlSourceMap {\n #recordsToken: Token[];\n #prefixPosition: number;\n #recordLastWord: string;\n\n constructor() {\n this.#recordsToken = [];\n this.#prefixPosition = 0;\n this.#recordLastWord = \"\";\n }\n\n private handleState(event: \"open\" | \"close\", state: State): void {\n if (event === \"close\") {\n const { line, position, lineStart, result } = state;\n const curWord = state.input.substring(lineStart, position);\n if (curWord.trim() === this.#recordLastWord.trim()) return;\n this.#recordLastWord = curWord;\n let startLineNumber = line + 1;\n let endLineNumber = line + 1;\n let startColumn = position - lineStart - result.length;\n let endColumn = position - lineStart - state.lineIndent;\n if (\n typeof result === \"string\" &&\n /^\\s*<%[~=]?\\s/.test(result) &&\n /\\s%>\\s*$/.test(result)\n ) {\n let source = result;\n const wrapLength = result.match(/\\n/g)?.length;\n if (wrapLength) {\n let nearWrapIndex = this.#prefixPosition;\n for (let i = this.#prefixPosition; i < state.input.length; i++) {\n if (state.input[i] === \"\\n\") {\n nearWrapIndex = i + 1;\n break;\n }\n }\n const specilStringPrefix = /(\\|-|>-)/.test(\n state.input.substring(this.#prefixPosition, position - 1)\n );\n source = state.input.substring(nearWrapIndex, position - 1);\n startLineNumber =\n state.line - wrapLength + 1 - Number(specilStringPrefix);\n endLineNumber = line;\n startColumn = 0;\n endColumn = 0;\n }\n const token = {\n source,\n startLineNumber,\n endLineNumber,\n startColumn,\n endColumn,\n isString: ['\"', \"'\"].includes(\n state.input[lineStart + startColumn - 2]\n ),\n };\n !this.#recordsToken.find((item) => isEqual(item, token)) &&\n this.#recordsToken.push(token);\n }\n this.#prefixPosition = position;\n }\n }\n\n public listen() {\n return this.handleState.bind(this);\n }\n\n public getTokens = () => {\n return this.#recordsToken;\n };\n}\n\nexport default BrickNextYamlSourceMap;\n","export const EDITOR_FONT_SIZE = 12;\nexport const EDITOR_LINE_HEIGHT = 18;\nexport const EDITOR_SCROLLBAR_SIZE = 12;\nexport const EDITOR_PADDING_VERTICAL = 12;\n","export const EVALUATE_KEYWORD = [\n \"CTX\",\n \"STATE\",\n \"DATA\",\n \"EVENT\",\n \"FLAGS\",\n \"APP\",\n \"ANCHOR\",\n \"HASH\",\n \"INSTALLED_APPS\",\n \"ITEM\",\n \"LOCAL_STORAGE\",\n \"MEDIA\",\n \"MISC\",\n \"PARAMS\",\n \"PATH\",\n \"PROCESSORS\",\n \"QUERY\",\n \"QUERY_ARRAY\",\n \"SESSION_STORAGE\",\n \"TPL\",\n \"SYS\",\n \"BASE_URL\",\n \"IMG\",\n \"FN\",\n \"I18N\",\n \"I18N_TEXT\",\n \"PERMISSIONS\",\n \"THEME\",\n];\n\nexport const brickNextKeywords = [\n \"target\",\n \"targetRef\",\n \"properties\",\n \"events\",\n \"method\",\n \"callback\",\n \"success\",\n \"error\",\n \"action\",\n \"useProvider\",\n \"useChildren\",\n \"useBrick\",\n \"args\",\n \"if\",\n \"then\",\n];\n\nexport const Level = {\n hit: 1,\n info: 2,\n warn: 4,\n error: 8,\n};\n","import * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { EVALUATE_KEYWORD, brickNextKeywords, Level } from \"./constants.js\";\nimport { get } from \"lodash\";\n\nconst findKeys = (\n model: monaco.editor.ITextModel,\n range: monaco.Range | monaco.editor.IWordAtPosition,\n line: number\n) => {\n const curLevelKeys: string[] = [];\n const keyList: string[] = [];\n let parentKey = \"\";\n let i = line;\n let startColumn = range.startColumn;\n while (i > 0) {\n const prefixLineWord = model.getValueInRange({\n startLineNumber: i,\n endLineNumber: i,\n startColumn: 0,\n endColumn: Infinity,\n });\n const matchWord = prefixLineWord.match(/^([\\s|-]*)(\\w+)(?=:)/);\n if (matchWord) {\n const [_, wordspace, key] = matchWord;\n if (wordspace.length === range.startColumn - 1) {\n curLevelKeys.unshift(key);\n }\n if (wordspace.length < startColumn - 1) {\n !parentKey && (parentKey = key);\n startColumn = wordspace.length;\n keyList.unshift(key);\n }\n }\n i--;\n }\n return {\n curLevelKeys,\n keyList,\n parentKey,\n };\n};\n\nconst getPrefixWord = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): {\n word: string | undefined;\n token: string;\n} => {\n const word = model.getWordUntilPosition(position);\n const prefixToken = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - word.word.length - 1,\n endColumn: position.column - word.word.length,\n });\n const prefixWord = model.getWordAtPosition({\n ...position,\n column: position.column - word?.word?.length - 1,\n });\n return {\n word: prefixWord?.word,\n token: prefixToken,\n };\n};\n\nexport const isInEvaluateBody = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): boolean => {\n const word = model.getWordUntilPosition(position);\n const prefixEvaluateOperator = model.findPreviousMatch(\n \"<%\",\n position,\n false,\n false,\n null,\n false\n );\n const suffixEvaluateOperator = model.findNextMatch(\n \"%>\",\n position,\n false,\n false,\n null,\n false\n );\n const isInEvaluateBody =\n prefixEvaluateOperator?.range.startLineNumber &&\n suffixEvaluateOperator?.range.startLineNumber &&\n prefixEvaluateOperator.range.startLineNumber <= position.lineNumber &&\n suffixEvaluateOperator.range.endLineNumber >= position.lineNumber;\n\n if (isInEvaluateBody) {\n const { parentKey: prefixParentKey } = findKeys(\n model,\n prefixEvaluateOperator.range,\n prefixEvaluateOperator?.range.startLineNumber\n );\n const { parentKey: suffixParentKey } = findKeys(\n model,\n suffixEvaluateOperator.range,\n suffixEvaluateOperator?.range.startLineNumber\n );\n const { keyList } = findKeys(model, word, position.lineNumber);\n if (\n prefixParentKey === suffixParentKey &&\n keyList.includes(prefixParentKey)\n ) {\n return true;\n }\n }\n return false;\n};\n\nexport const brickNextYAMLProvideCompletionItems = (\n completers?: monaco.languages.CompletionItem[],\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >\n) => {\n return (\n model: monaco.editor.ITextModel,\n position: monaco.Position,\n context: monaco.languages.CompletionContext,\n _token: monaco.CancellationToken\n ): monaco.languages.ProviderResult<monaco.languages.CompletionList> => {\n const word = model.getWordUntilPosition(position);\n const { word: prefixWord, token: prefixToken } = getPrefixWord(\n model,\n position\n );\n const curLineWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: 0,\n endColumn: Infinity,\n });\n const range = {\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: word.startColumn,\n endColumn: word.endColumn,\n };\n\n const isFirstLevelProperty = word.startColumn === 1;\n const { curLevelKeys } = findKeys(model, word, model.getLineCount());\n\n if (context.triggerCharacter === \"<\") {\n const fullWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - 2,\n endColumn: position.column + 2,\n });\n if (fullWord.trim() !== \"<\") {\n return {\n suggestions: [],\n };\n }\n return {\n suggestions: [\n {\n label: \"<% %>\",\n detail: \"Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"% ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n {\n label: \"<%= %>\",\n detail: \"Track Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"%= ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n ],\n };\n }\n\n if (isFirstLevelProperty) {\n return {\n suggestions: (completers ?? [])\n .filter((item) => !curLevelKeys.includes(item.label as string))\n .map((item) => ({\n ...item,\n label: item.label,\n insertText: item.insertText || (item.label as string),\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (\n context.triggerCharacter === \":\" ||\n (context.triggerCharacter === \".\" &&\n prefixWord &&\n ![\"CTX\", \"STATE\", \"FN\"].includes(prefixWord))\n ) {\n if (prefixWord === \"action\" && context.triggerCharacter === \":\") {\n const actions = get(\n storyboardJsonSchema,\n \"definitions.BuiltinBrickEventHandler.properties.action.enum\"\n );\n return {\n suggestions: ((actions as unknown as string[]) ?? [])?.map(\n (item) => ({\n label: ` ${item}`,\n detail: \"event action\",\n kind: monaco.languages.CompletionItemKind.Keyword,\n insertText: ` ${item}`,\n range,\n })\n ),\n };\n }\n const matchCompletion = advancedCompleters?.[prefixWord as string];\n let matchTriggerCharacter = \"\";\n let list: monaco.languages.CompletionItem[] | undefined;\n if (matchCompletion && !Array.isArray(matchCompletion)) {\n list = matchCompletion.completers;\n matchTriggerCharacter = matchCompletion.triggerCharacter;\n } else {\n list = matchCompletion;\n }\n if (\n matchTriggerCharacter\n ? context.triggerCharacter === matchTriggerCharacter && list\n : list\n ) {\n return {\n suggestions: (list ?? []).map((item) => {\n const label =\n matchTriggerCharacter === \":\"\n ? ` ${item.label}`\n : (item.label as string);\n return {\n ...item,\n label: label,\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: item.insertText || label,\n range,\n };\n }),\n };\n }\n }\n\n if (isInEvaluateBody(model, position)) {\n if (\n prefixWord &&\n [\"CTX\", \"STATE\"].includes(prefixWord) &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[prefixWord]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (\n prefixWord === \"FN\" &&\n context.triggerCharacter === \".\" &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[\"FN\"]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (prefixWord === \"APP\" && context.triggerCharacter === \".\") {\n const appProperties = get(\n storyboardJsonSchema,\n \"definitions.MicroApp.properties\"\n );\n const suggestions = [];\n for (const [k, v] of Object.entries(\n appProperties as unknown as Record<\n string,\n {\n description: string;\n type: string;\n enum: string[];\n }\n >\n )) {\n suggestions.push({\n label: k,\n kind: monaco.languages.CompletionItemKind.Value,\n documentation: v.description,\n detail: v.enum ? v.enum.join(\"|\") : v.type,\n insertText: k,\n range,\n });\n }\n return {\n suggestions,\n };\n }\n\n if ([\".\", \":\"].includes(prefixToken)) {\n return {\n suggestions: [],\n };\n }\n\n return {\n suggestions: EVALUATE_KEYWORD.map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (/^[\\s|-]*\\w$/.test(curLineWord)) {\n return {\n suggestions: brickNextKeywords\n .map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n }))\n .filter((item) => !curLevelKeys.includes(item.label as string)),\n };\n }\n\n return {\n suggestions: [],\n };\n };\n};\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { useCurrentTheme } from \"@next-core/react-runtime\";\nimport { FormItemElementBase } from \"@next-shared/form\";\nimport type { FormItem, FormItemProps } from \"@next-bricks/form/form-item\";\nimport * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport { register as registerJavaScript } from \"@next-core/monaco-contributions/javascript\";\nimport { register as registerTypeScript } from \"@next-core/monaco-contributions/typescript\";\nimport { register as registerYaml } from \"@next-core/monaco-contributions/yaml\";\nimport { register as registerHtml } from \"@next-core/monaco-contributions/html\";\nimport yaml from \"js-yaml\";\nimport BrickNextYamlSourceMap, { Token } from \"./utils/brickNextSourceMap.js\";\nimport \"@next-core/theme\";\nimport { isEqual } from \"lodash\";\nimport {\n EDITOR_SCROLLBAR_SIZE,\n EDITOR_PADDING_VERTICAL,\n EDITOR_LINE_HEIGHT,\n EDITOR_FONT_SIZE,\n} from \"./constants.js\";\nimport { brickNextYAMLProvideCompletionItems } from \"./utils/brickNextYaml.js\";\nimport \"./index.css\";\nimport { EVALUATE_KEYWORD, Level } from \"./utils/constants.js\";\nimport type { MemberExpression, Identifier } from \"@babel/types\";\nimport { preevaluate } from \"@next-core/cook\";\n\nregisterJavaScript(monaco);\nregisterTypeScript(monaco);\nregisterYaml(monaco, \"brick_next_yaml\");\nregisterHtml(monaco);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedFormItem = wrapBrick<FormItem, FormItemProps>(\"eo-form-item\");\n\nexport interface CodeEditorProps {\n name?: string;\n label?: string;\n value?: string;\n language?: string;\n theme?: string;\n required?: boolean;\n readOnly?: boolean;\n automaticLayout?: \"fit-container\" | \"fit-content\" | \"none\";\n minLines?: number;\n maxLines?: number;\n height?: string | number;\n completers?: monaco.languages.CompletionItem[];\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >;\n markers?: Marker[];\n links?: string[];\n}\n\nexport interface Marker {\n token: string;\n level: keyof typeof Level;\n message: string;\n code?: {\n value: string;\n target: string;\n };\n params?: string[];\n}\n\n/**\n * 构件 code-editor\n */\nexport\n@defineElement(\"vs.code-editor\", {\n // There are a few issues for monaco-editor with shadow DOM.\n // So we use light DOM for now.\n // See https://github.com/microsoft/monaco-editor/issues?q=is%3Aissue+is%3Aopen+shadow+dom\n shadowOptions: false,\n})\nclass CodeEditor extends FormItemElementBase implements CodeEditorProps {\n @property()\n accessor name: string | undefined;\n\n @property()\n accessor label: string | undefined;\n\n @property({ attribute: false })\n accessor value: string | undefined;\n\n /**\n * @default \"plaintext\"\n */\n @property()\n accessor language: string | undefined;\n\n /**\n * 主题,支持 `\"auto\" | \"vs\" | \"vs-dark\"`\n *\n * @default \"auto\"\n * @group ui\n */\n @property() accessor theme: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor required: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor readOnly: boolean | undefined;\n\n @property()\n accessor automaticLayout:\n | \"fit-container\"\n | \"fit-content\"\n | \"none\"\n | undefined;\n\n /**\n * @default 3\n */\n @property({ type: Number })\n accessor minLines: number | undefined;\n\n @property({\n attribute: false,\n })\n accessor completers: monaco.languages.CompletionItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor advancedCompleters:\n | Record<\n string,\n {\n triggerCharacter: string;\n completers: monaco.languages.CompletionItem[];\n }\n >\n | undefined;\n\n @property({ attribute: false })\n accessor markers: Marker[] | undefined;\n\n @property({ attribute: false })\n accessor links: string[] | undefined;\n\n /**\n * @default Infinity\n */\n @property({ type: Number })\n accessor maxLines: number | undefined;\n\n @property({ attribute: false })\n accessor height: string | number | undefined;\n\n @event({ type: \"code.change\" })\n accessor #codeChange!: EventEmitter<string>;\n\n @event({ type: \"user.input\" })\n accessor #userInput!: EventEmitter<string>;\n\n #handleChange = (value: string, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.value = value;\n this.#codeChange.emit(value);\n if (!isFlush) {\n this.#userInput.emit(value);\n }\n };\n\n @event({ type: \"token.click\" })\n accessor #highlighClickEvent!: EventEmitter<string>;\n\n #handleHighlightClick = (word: string) => {\n this.#highlighClickEvent.emit(word);\n };\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <WrappedFormItem\n curElement={this}\n formElement={this.getFormElement()}\n name={this.name}\n label={this.label}\n required={this.required}\n >\n <CodeEditorComponent\n value={this.value}\n language={this.language}\n theme={this.theme}\n automaticLayout={this.automaticLayout}\n minLines={this.minLines}\n maxLines={this.maxLines}\n height={this.height}\n completers={this.completers}\n advancedCompleters={this.advancedCompleters}\n markers={this.markers}\n links={this.links}\n onChange={this.#handleChange}\n onHighlightClick={this.#handleHighlightClick}\n />\n </WrappedFormItem>\n );\n }\n}\n\nexport function CodeEditorComponent({\n value: _value,\n language: _language,\n theme: _theme,\n minLines: _minLines,\n maxLines: _maxLines,\n height: _height,\n automaticLayout,\n completers,\n advancedCompleters,\n markers,\n links,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, isFlush: boolean): void;\n onHighlightClick(word: string): void;\n}) {\n const value = _value ?? \"\";\n const language = _language ?? \"plaintext\";\n const theme = _theme ?? \"auto\";\n const minLines = _minLines ?? 3;\n const maxLines = _maxLines ?? Infinity;\n const height = _height ?? 500;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const decorationsCollection =\n useRef<monaco.editor.IEditorDecorationsCollection>();\n const editorRef = useRef<monaco.editor.IStandaloneCodeEditor>();\n const size = useRef<monaco.editor.IDimension>({\n width: 300,\n height: getContentHeightByCode(value, minLines, maxLines),\n });\n const [actualHeight, setActualHeight] = useState<string | number>();\n // `automaticLayout` should never change\n const automaticLayoutRef = useRef(automaticLayout);\n const systemTheme = useCurrentTheme();\n\n useEffect(() => {\n // Currently theme is configured globally.\n // See https://github.com/microsoft/monaco-editor/issues/338\n monaco.editor.setTheme(\n theme === \"auto\"\n ? systemTheme === \"dark\" || systemTheme === \"dark-v2\"\n ? \"vs-dark\"\n : \"vs\"\n : theme\n );\n }, [systemTheme, theme]);\n\n useEffect(() => {\n if (editorRef.current) {\n const currentModel = editorRef.current.getModel()!;\n monaco.editor.setModelLanguage(currentModel, language);\n if (!isEqual(currentModel.getValue(), value)) {\n currentModel.setValue(value);\n }\n }\n }, [value, language]);\n\n useEffect(() => {\n if (language === \"brick_next_yaml\") {\n const provideCompletionItems = brickNextYAMLProvideCompletionItems(\n completers,\n advancedCompleters\n );\n const monacoProviderRef = monaco.languages.registerCompletionItemProvider(\n \"brick_next_yaml\",\n {\n provideCompletionItems,\n triggerCharacters: [\".\", \":\", \"<\"],\n }\n );\n return () => {\n monacoProviderRef.dispose();\n };\n }\n }, [completers, advancedCompleters, language]);\n\n const parseYaml = useCallback(() => {\n const map = new BrickNextYamlSourceMap();\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n yaml.load(value, {\n listener: map.listen(),\n });\n\n if ((links || markers) && editorRef.current) {\n const tokens: Omit<\n Token & { token: string; property: string },\n \"source\"\n >[] = [];\n map.getTokens().forEach((item) => {\n const { startLineNumber, endLineNumber, startColumn } = item;\n const globalNodes: MemberExpression[] = [];\n const result = preevaluate(item.source, {\n hooks: {\n beforeVisit(node) {\n if (\n node.type === \"MemberExpression\" &&\n node.object.type === \"Identifier\" &&\n EVALUATE_KEYWORD.includes(node.object.name) &&\n node.property.type === \"Identifier\"\n ) {\n globalNodes.push(node);\n }\n },\n },\n });\n\n globalNodes.forEach((node) => {\n const { start, end, loc } = node;\n if (item.startLineNumber !== item.endLineNumber) {\n const hadWrap = /<%[ ]+/.test(result.prefix);\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber:\n item.startLineNumber +\n (loc?.start?.line as number) -\n Number(hadWrap),\n endLineNumber:\n item.startLineNumber +\n (loc?.end?.line as number) -\n Number(hadWrap),\n startColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.start?.column as number) +\n 1,\n endColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.end?.column as number) +\n 1,\n });\n } else {\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber,\n endLineNumber,\n startColumn:\n startColumn +\n (start as number) +\n result.prefix?.length +\n Number(!item.isString),\n endColumn:\n startColumn +\n (end as number) +\n result.prefix?.length +\n Number(!item.isString),\n });\n }\n });\n });\n\n decorationsCollection.current?.set(\n tokens\n .filter((token) => links?.includes(token.token))\n .map((token) => ({\n range: new monaco.Range(\n token.startLineNumber,\n token.startColumn,\n token.endLineNumber,\n token.endColumn\n ),\n options: {\n inlineClassName: \"highlight\",\n },\n }))\n );\n\n if (markers) {\n const modelMarkers = tokens\n .map((token) => {\n const matchTokenConf = markers.find(\n (item) => item.token === token.token\n );\n const hadProperty = matchTokenConf?.params?.includes(\n token.property\n );\n if (!hadProperty) {\n return {\n severity: Level.warn,\n message: \"Miss Property\",\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n if (matchTokenConf && matchTokenConf.message) {\n return {\n severity: Level[matchTokenConf?.level ?? \"warn\"],\n message: matchTokenConf.message,\n ...(matchTokenConf.code\n ? {\n code: {\n value: matchTokenConf.code.value,\n target: monaco.Uri.parse(\n matchTokenConf.code.target\n ),\n },\n }\n : {}),\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n })\n .filter(Boolean) as monaco.editor.IMarkerData[];\n\n monaco.editor.setModelMarkers(\n model,\n \"brick_next_yaml\",\n modelMarkers\n );\n }\n }\n } catch (e) {\n monaco.editor.setModelMarkers(model, \"brick_next_yaml\", []);\n decorationsCollection?.current?.set([]);\n // TODO: validate error\n // eslint-disable-next-line no-console\n console.log(e);\n }\n }\n }, [value, markers, links]);\n\n useEffect(() => {\n parseYaml();\n }, [parseYaml]);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-content\" || !containerRef.current) {\n return;\n }\n\n size.current.width = containerRef.current.getBoundingClientRect().width;\n editorRef.current?.layout(size.current);\n\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === containerRef.current) {\n const newWidth = entry.contentBoxSize\n ? entry.contentBoxSize[0].inlineSize\n : entry.contentRect.width;\n if (newWidth !== size.current.width) {\n size.current.width = newWidth;\n editorRef.current?.layout(size.current);\n }\n break;\n }\n }\n });\n observer.observe(containerRef.current);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-container\") {\n return;\n }\n\n const container = getDOMContainer(containerRef.current);\n if (!container) {\n return;\n }\n // Manually layout the editor once the container resized.\n const observer = new ResizeObserver((): void => {\n setActualHeight(container.offsetHeight);\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useEffect(() => {\n if (\n automaticLayoutRef.current !== \"fit-container\" &&\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n setActualHeight(height);\n }\n }, [height]);\n\n useEffect(() => {\n if (editorRef.current || !containerRef.current) {\n return;\n }\n const model = monaco.editor.createModel(value, language);\n editorRef.current = monaco.editor.create(containerRef.current, {\n model,\n minimap: {\n enabled: false,\n },\n scrollBeyondLastLine: false,\n tabSize: 2,\n insertSpaces: true,\n automaticLayout: automaticLayoutRef.current !== \"fit-content\",\n fontSize: EDITOR_FONT_SIZE,\n lineHeight: EDITOR_LINE_HEIGHT,\n scrollbar: {\n horizontalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n verticalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n horizontalSliderSize: 8,\n verticalSliderSize: 8,\n alwaysConsumeMouseWheel: false,\n },\n padding: {\n top: EDITOR_PADDING_VERTICAL,\n // When use `fit-content`, we always plus the height with the vertical padding.\n // Thus the possible x-scrollbar will not take extra space at the bottom.\n bottom:\n automaticLayoutRef.current == \"fit-content\"\n ? undefined\n : EDITOR_PADDING_VERTICAL,\n },\n overviewRulerBorder: false,\n mouseWheelScrollSensitivity: 0.5,\n suggest: {\n insertMode: \"insert\",\n preview: true,\n },\n quickSuggestions: { strings: true, other: true, comments: true },\n });\n\n decorationsCollection.current =\n editorRef.current.createDecorationsCollection();\n }, [value, language]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (language === \"brick_next_yaml\" && editor) {\n const model = editor.getModel()!;\n const editorMouseDownEvent = editor.onMouseDown(function (e) {\n const decorations = decorationsCollection.current;\n (decorations?.getRanges?.() ?? []).forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n onHighlightClick(model.getValueInRange(range));\n }\n });\n });\n\n const mouseOverEvent = editor.onMouseMove(function (e) {\n const decorations = decorationsCollection.current;\n if (!decorations) return;\n decorations.getRanges().forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: range.equalsRange(item)\n ? \"highlight pointer\"\n : \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n } else if (!e.event[modKey]) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n }\n });\n });\n\n parseYaml();\n\n return () => {\n mouseOverEvent?.dispose();\n editorMouseDownEvent?.dispose();\n };\n }\n }, [language, onHighlightClick, systemTheme, theme, parseYaml]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (\n !editor ||\n !containerRef.current ||\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n return;\n }\n\n const listener = editor.onDidContentSizeChange((e) => {\n if (e.contentHeightChanged) {\n const newHeight = fixEditorHeightWithScrollBar(\n e.contentHeight,\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n }\n });\n\n const newHeight = fixEditorHeightWithScrollBar(\n editor.getContentHeight(),\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n\n return () => {\n listener.dispose();\n };\n }, [maxLines, minLines]);\n\n useEffect(() => {\n if (!editorRef.current) {\n return;\n }\n const currentModel = editorRef.current.getModel()!;\n const listener = currentModel.onDidChangeContent((e) => {\n onChange(currentModel.getValue(), e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return <div ref={containerRef} style={{ height: actualHeight }} />;\n}\n\nfunction getContentHeightByCode(\n code: string,\n minLines: number,\n maxLines: number\n): number {\n return getContentHeightByLines(\n Math.min(maxLines, Math.max(minLines, code.split(\"\\n\").length))\n );\n}\n\nfunction fixEditorHeightWithScrollBar(\n contentHeight: number,\n minLines: number,\n maxLines: number\n): number {\n let fixedHeight = contentHeight;\n if ((contentHeight - EDITOR_PADDING_VERTICAL) % EDITOR_LINE_HEIGHT === 0) {\n fixedHeight = contentHeight + EDITOR_SCROLLBAR_SIZE;\n }\n return Math.min(\n getContentHeightByLines(maxLines),\n Math.max(fixedHeight, getContentHeightByLines(minLines))\n );\n}\n\nfunction getContentHeightByLines(lines: number): number {\n return (\n lines * EDITOR_LINE_HEIGHT + EDITOR_SCROLLBAR_SIZE + EDITOR_PADDING_VERTICAL\n );\n}\n\n/** Get the direct DOM container of `vs.code-editor` */\nfunction getDOMContainer(element: HTMLElement | null) {\n let brick = element;\n while (brick) {\n const found = brick.tagName.toLowerCase() === \"vs.code-editor\";\n brick = brick.parentElement;\n if (found) {\n return brick;\n }\n }\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["method","createDecorators","_dec","_A","WeakMap","_notRender","_B","_validate","_C","_bindFormItem","FormItemElementBase","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_bindFormItem","set","_set_bindFormItem","_get_validate","_set_validate","_get__notRender","_set__notRender","writable","value","_initProto","isFormItemElement","validateState","_classPrivateFieldSet","this","_render","_classPrivateFieldGet","notRender","hidden","$bindFormItem","getFormElement","element","parentNode","isFormElement","v","_applyDecs2203R","e","_recordsToken","_prefixPosition","_recordLastWord","EDITOR_LINE_HEIGHT","EDITOR_SCROLLBAR_SIZE","EDITOR_PADDING_VERTICAL","EVALUATE_KEYWORD","brickNextKeywords","Level","hit","info","warn","error","findKeys","model","range","line","curLevelKeys","keyList","parentKey","i","startColumn","matchWord","getValueInRange","startLineNumber","endLineNumber","endColumn","Infinity","match","_","wordspace","key","length","unshift","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","registerJavaScript","monaco","registerTypeScript","registerYaml","registerHtml","_CodeEditor","defineElement","property","event","WrappedFormItem","wrapBrick","shadowOptions","_dec2","_dec3","_dec4","attribute","_dec5","_dec6","_dec7","type","Boolean","_dec8","_dec9","_dec10","Number","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_codeChange","_Q","_userInput","_handleChange","_R","_highlighClickEvent","_handleHighlightClick","_set_codeChange2","_set_codeChange","_get_codeChange2","_get_codeChange","_set_userInput2","_set_userInput","_get_userInput2","_get_userInput","_set_highlighClickEvent2","_set_highlighClickEvent","_get_highlighClickEvent2","_get_highlighClickEvent","CodeEditorComponent","_ref","_value","language","_language","theme","_theme","minLines","_minLines","maxLines","_maxLines","height","_height","automaticLayout","completers","advancedCompleters","markers","links","onChange","onHighlightClick","containerRef","useRef","decorationsCollection","editorRef","size","width","getContentHeightByCode","actualHeight","setActualHeight","useState","automaticLayoutRef","systemTheme","useCurrentTheme","useEffect","current","currentModel","getModel","isEqual","getValue","setValue","provideCompletionItems","brickNextYAMLProvideCompletionItems","position","context","_token","word","getWordUntilPosition","prefixWord","token","prefixToken","getPrefixWord","_word$word","lineNumber","column","getWordAtPosition","_objectSpread","curLineWord","isFirstLevelProperty","getLineCount","triggerCharacter","trim","suggestions","label","detail","kind","insertText","insertTextRules","filter","item","includes","map","_ref2","storyboardJsonSchema","concat","list","_list","matchCompletion","matchTriggerCharacter","Array","isArray","isInEvaluateBody","prefixEvaluateOperator","findPreviousMatch","suffixEvaluateOperator","findNextMatch","prefixParentKey","suffixParentKey","_advancedCompleters$p","_advancedCompleters$p2","_advancedCompleters$F","_advancedCompleters$F2","appProperties","k","Object","entries","push","documentation","description","enum","join","test","monacoProviderRef","triggerCharacters","dispose","parseYaml","useCallback","_defineProperty","handleState","state","lineStart","result","curWord","input","substring","lineIndent","_result$match","source","wrapLength","nearWrapIndex","specilStringPrefix","isString","find","listen","bind","yaml","listener","_decorationsCollectio","tokens","getTokens","forEach","globalNodes","preevaluate","hooks","beforeVisit","node","object","name","start","end","loc","_node$object","_loc$start","_loc$end","_loc$start2","_loc$end2","hadWrap","prefix","_node$object2","_result$prefix","_result$prefix2","inlineClassName","modelMarkers","_matchTokenConf$param","_matchTokenConf$level","matchTokenConf","params","message","severity","level","code","target","_decorationsCollectio2","console","log","useLayoutEffect","_editorRef$current","getBoundingClientRect","layout","observer","ResizeObserver","entry","_editorRef$current2","newWidth","contentBoxSize","inlineSize","contentRect","observe","disconnect","container","brick","found","tagName","toLowerCase","parentElement","getDOMContainer","offsetHeight","minimap","enabled","scrollBeyondLastLine","tabSize","insertSpaces","fontSize","lineHeight","scrollbar","horizontalScrollbarSize","verticalScrollbarSize","horizontalSliderSize","verticalSliderSize","alwaysConsumeMouseWheel","padding","top","bottom","undefined","overviewRulerBorder","mouseWheelScrollSensitivity","suggest","insertMode","preview","quickSuggestions","strings","other","comments","createDecorationsCollection","editor","editorMouseDownEvent","onMouseDown","_decorations$getRange","_decorations$getRange2","decorations","getRanges","call","modKey","navigator","platform","containsPosition","mouseOverEvent","onMouseMove","newDecorations","equalsRange","onDidContentSizeChange","contentHeightChanged","newHeight","fixEditorHeightWithScrollBar","contentHeight","getContentHeight","onDidChangeContent","isFlush","_editorRef$current3","_editorRef$current3$g","_editorRef$current4","React","ref","style","getContentHeightByLines","Math","min","max","split","fixedHeight","lines","_init_name","_init_label","_init_value","_init_language","_init_theme","_init_required","_init_readOnly","_init_automaticLayout","_init_minLines","_init_completers","_init_advancedCompleters","_init_markers","_init_links","_init_maxLines","_init_height","_init_codeChange","_init_userInput","_init_highlighClickEvent","c","_initClass","_this$getFormElement","formStore","emit","required","readOnly","connectedCallback","display","super","render","curElement","formElement","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[]).push([[1085],{34622:(e,t,n)=>{n.d(t,{LS:()=>s,Mv:()=>i,P0:()=>r,sE:()=>a});var r=12,i=18,a=12,s=12},31074:(e,t,n)=>{n.r(t),n.d(t,{CodeEditor:()=>fe,CodeEditorComponent:()=>Je});var r,i,a,s,l,u,o,h,d,c,m,g,v,p,b,f,Z,C,k,w,L,y,N,M,E,S,x,T,I,R,W,A,P,_,K,z,V,B,O,F,H,q,D,U,j,G=n(33028),$=n(53395),X=n(40381),Y=n(70687),Q=n(25303),J=n(48657),ee=n.n(J),te=n(75476),ne=n(29049),re=n(16989),ie=n(81391),ae=n(46475),se=n(73701),le=n(47637),ue=n(64167),oe=n(27680),he=n(42308),de=n.n(he),ce=n(69435),me=(n(65254),n(78035)),ge=n(34622),ve=n(9486),pe=(n(53154),n(65107)),be=n(98319);(0,se.z2)(ae),(0,le.z2)(ae),(0,ue.z2)(ae,"brick_next_yaml"),(0,oe.z2)(ae);var fe,{defineElement:Ze,property:Ce,event:ke}=(0,te.createDecorators)(),we=(0,ne.wrapBrick)("eo-form-item");i=Ze("vs.code-editor",{shadowOptions:!1}),a=Ce(),l=Ce(),o=Ce({attribute:!1}),d=Ce(),m=Ce(),v=Ce({type:Boolean}),b=Ce({type:Boolean}),Z=Ce(),k=Ce({type:Number}),L=Ce({attribute:!1}),N=Ce({attribute:!1}),E=Ce({attribute:!1}),x=Ce({attribute:!1}),I=Ce({type:Number}),W=Ce({attribute:!1}),P=ke({type:"code.change"}),V=ke({type:"user.input"}),H=ke({type:"token.click"});var Le=new WeakMap,ye=new WeakMap,Ne=new WeakMap,Me=new WeakMap,Ee=new WeakMap,Se=new WeakMap,xe=new WeakMap,Te=new WeakMap,Ie=new WeakMap,Re=new WeakMap,We=new WeakMap,Ae=new WeakMap,Pe=new WeakMap,_e=new WeakMap,Ke=new WeakMap,ze=new WeakMap,Ve=new WeakMap,Be=new WeakMap,Oe=new WeakMap,Fe=new WeakMap,He=new WeakMap,qe=new WeakMap,De=new WeakMap;class Ue extends ie.G{constructor(){super(...arguments),(0,$.Z)(this,qe,{get:Qe,set:Ye}),(0,$.Z)(this,Oe,{get:Xe,set:$e}),(0,$.Z)(this,Ve,{get:Ge,set:je}),(0,$.Z)(this,Le,{writable:!0,value:(j(this),s(this))}),(0,$.Z)(this,ye,{writable:!0,value:u(this)}),(0,$.Z)(this,Ne,{writable:!0,value:h(this)}),(0,$.Z)(this,Me,{writable:!0,value:c(this)}),(0,$.Z)(this,Ee,{writable:!0,value:g(this)}),(0,$.Z)(this,Se,{writable:!0,value:p(this)}),(0,$.Z)(this,xe,{writable:!0,value:f(this)}),(0,$.Z)(this,Te,{writable:!0,value:C(this)}),(0,$.Z)(this,Ie,{writable:!0,value:w(this)}),(0,$.Z)(this,Re,{writable:!0,value:y(this)}),(0,$.Z)(this,We,{writable:!0,value:M(this)}),(0,$.Z)(this,Ae,{writable:!0,value:S(this)}),(0,$.Z)(this,Pe,{writable:!0,value:T(this)}),(0,$.Z)(this,_e,{writable:!0,value:R(this)}),(0,$.Z)(this,Ke,{writable:!0,value:A(this)}),(0,$.Z)(this,ze,{writable:!0,value:_(this)}),(0,$.Z)(this,Be,{writable:!0,value:B(this)}),(0,$.Z)(this,Fe,{writable:!0,value:(e,t)=>{var n;null===(n=this.getFormElement())||void 0===n||n.formStore.onChange(this.name,e),this.value=e,(0,Y.Z)(this,Ve).emit(e),t||(0,Y.Z)(this,Oe).emit(e)}}),(0,$.Z)(this,He,{writable:!0,value:q(this)}),(0,$.Z)(this,De,{writable:!0,value:e=>{(0,Y.Z)(this,qe).emit(e)}})}get name(){return(0,Y.Z)(this,Le)}set name(e){(0,X.Z)(this,Le,e)}get label(){return(0,Y.Z)(this,ye)}set label(e){(0,X.Z)(this,ye,e)}get value(){return(0,Y.Z)(this,Ne)}set value(e){(0,X.Z)(this,Ne,e)}get language(){return(0,Y.Z)(this,Me)}set language(e){(0,X.Z)(this,Me,e)}get theme(){return(0,Y.Z)(this,Ee)}set theme(e){(0,X.Z)(this,Ee,e)}get required(){return(0,Y.Z)(this,Se)}set required(e){(0,X.Z)(this,Se,e)}get readOnly(){return(0,Y.Z)(this,xe)}set readOnly(e){(0,X.Z)(this,xe,e)}get automaticLayout(){return(0,Y.Z)(this,Te)}set automaticLayout(e){(0,X.Z)(this,Te,e)}get minLines(){return(0,Y.Z)(this,Ie)}set minLines(e){(0,X.Z)(this,Ie,e)}get completers(){return(0,Y.Z)(this,Re)}set completers(e){(0,X.Z)(this,Re,e)}get advancedCompleters(){return(0,Y.Z)(this,We)}set advancedCompleters(e){(0,X.Z)(this,We,e)}get markers(){return(0,Y.Z)(this,Ae)}set markers(e){(0,X.Z)(this,Ae,e)}get links(){return(0,Y.Z)(this,Pe)}set links(e){(0,X.Z)(this,Pe,e)}get maxLines(){return(0,Y.Z)(this,_e)}set maxLines(e){(0,X.Z)(this,_e,e)}get height(){return(0,Y.Z)(this,Ke)}set height(e){(0,X.Z)(this,Ke,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return ee().createElement(we,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required},ee().createElement(Je,{value:this.value,language:this.language,theme:this.theme,automaticLayout:this.automaticLayout,minLines:this.minLines,maxLines:this.maxLines,height:this.height,completers:this.completers,advancedCompleters:this.advancedCompleters,markers:this.markers,links:this.links,onChange:(0,Y.Z)(this,Fe),onHighlightClick:(0,Y.Z)(this,De)}))}}function je(e){z(this,e)}function Ge(){return K(this)}function $e(e){F(this,e)}function Xe(){return O(this)}function Ye(e){U(this,e)}function Qe(){return D(this)}function Je(e){var{value:t,language:n,theme:r,minLines:i,maxLines:a,height:s,automaticLayout:l,completers:u,advancedCompleters:o,markers:h,links:d,onChange:c,onHighlightClick:m}=e,g=null!=t?t:"",v=null!=n?n:"plaintext",p=null!=r?r:"auto",b=null!=i?i:3,f=null!=a?a:1/0,Z=null!=s?s:500,C=(0,J.useRef)(null),k=(0,J.useRef)(),w=(0,J.useRef)(),L=(0,J.useRef)({width:300,height:et(g,b,f)}),[y,N]=(0,J.useState)(),M=(0,J.useRef)(l),E=(0,re.useCurrentTheme)();(0,J.useEffect)((()=>{ae.editor.setTheme("auto"===p?"dark"===E||"dark-v2"===E?"vs-dark":"vs":p)}),[E,p]),(0,J.useEffect)((()=>{if(w.current){var e=w.current.getModel();ae.editor.setModelLanguage(e,v),(0,me.isEqual)(e.getValue(),g)||e.setValue(g)}}),[g,v]),(0,J.useEffect)((()=>{if("brick_next_yaml"===v){var e=(0,ve.Z)(u,o),t=ae.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[u,o,v]);var S=(0,J.useCallback)((()=>{var e=new ce.Z;if(w.current){var t=w.current.getModel();try{if(de().load(g,{listener:e.listen()}),(d||h)&&w.current){var n,r=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:i}=e,a=[],s=(0,be.preevaluate)(e.source,{hooks:{beforeVisit(e){"MemberExpression"===e.type&&"Identifier"===e.object.type&&pe.fT.includes(e.object.name)&&"Identifier"===e.property.type&&a.push(e)}}});a.forEach((a=>{var{start:l,end:u,loc:o}=a;if(e.startLineNumber!==e.endLineNumber){var h,d,c,m,g,v=/<%[ ]+/.test(s.prefix);r.push({token:null===(h=a.object)||void 0===h?void 0:h.name,property:a.property.name,startLineNumber:e.startLineNumber+(null==o||null===(d=o.start)||void 0===d?void 0:d.line)-Number(v),endLineNumber:e.startLineNumber+(null==o||null===(c=o.end)||void 0===c?void 0:c.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(m=o.start)||void 0===m?void 0:m.column)+1,endColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(g=o.end)||void 0===g?void 0:g.column)+1})}else{var p,b,f;r.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:i+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:i+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(n=k.current)||void 0===n||n.set(r.filter((e=>null==d?void 0:d.includes(e.token))).map((e=>({range:new ae.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),options:{inlineClassName:"highlight"}})))),h){var i=r.map((e=>{var t,n,r=h.find((t=>t.token===e.token));return(null==r||null===(t=r.params)||void 0===t?void 0:t.includes(e.property))?r&&r.message?(0,G.Z)((0,G.Z)({severity:pe.aC[null!==(n=null==r?void 0:r.level)&&void 0!==n?n:"warn"],message:r.message},r.code?{code:{value:r.code.value,target:ae.Uri.parse(r.code.target)}}:{}),{},{startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}):void 0:{severity:pe.aC.warn,message:"Miss Property",startLineNumber:e.startLineNumber,endLineNumber:e.endLineNumber,startColumn:e.startColumn,endColumn:e.endColumn}})).filter(Boolean);ae.editor.setModelMarkers(t,"brick_next_yaml",i)}}}catch(e){var a;ae.editor.setModelMarkers(t,"brick_next_yaml",[]),null==k||null===(a=k.current)||void 0===a||a.set([]),console.log(e)}}}),[g,h,d]);return(0,J.useEffect)((()=>{S()}),[S]),(0,J.useLayoutEffect)((()=>{var e;if("fit-content"===M.current&&C.current){L.current.width=C.current.getBoundingClientRect().width,null===(e=w.current)||void 0===e||e.layout(L.current);var t=new ResizeObserver((e=>{for(var t of e)if(t.target===C.current){var n,r=t.contentBoxSize?t.contentBoxSize[0].inlineSize:t.contentRect.width;r!==L.current.width&&(L.current.width=r,null===(n=w.current)||void 0===n||n.layout(L.current));break}}));return t.observe(C.current),()=>{t.disconnect()}}}),[]),(0,J.useLayoutEffect)((()=>{if("fit-container"===M.current){var e=function(e){for(var t=e;t;){var n="vs.code-editor"===t.tagName.toLowerCase();if(t=t.parentElement,n)return t}}(C.current);if(e){var t=new ResizeObserver((()=>{N(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,J.useEffect)((()=>{"fit-container"!==M.current&&"fit-content"!==M.current&&N(Z)}),[Z]),(0,J.useEffect)((()=>{if(!w.current&&C.current){var e=ae.editor.createModel(g,v);w.current=ae.editor.create(C.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==M.current,fontSize:ge.P0,lineHeight:ge.Mv,scrollbar:{horizontalScrollbarSize:ge.sE,verticalScrollbarSize:ge.sE,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:ge.LS,bottom:"fit-content"==M.current?void 0:ge.LS},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},quickSuggestions:{strings:!0,other:!0,comments:!0}}),k.current=w.current.createDecorationsCollection()}}),[g,v]),(0,J.useEffect)((()=>{var e=w.current;if("brick_next_yaml"===v&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=k.current;(null!==(n=null==i||null===(r=i.getRanges)||void 0===r?void 0:r.call(i))&&void 0!==n?n:[]).forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)&&m(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=k.current;t&&t.getRanges().forEach((n=>{var r=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey";if(n&&e.target.position&&e.event[r]&&n.containsPosition(e.target.position)){var i=t.getRanges().map((e=>({range:e,options:{inlineClassName:n.equalsRange(e)?"highlight pointer":"highlight"}})));t.set(i)}else if(!e.event[r]){var a=t.getRanges().map((e=>({range:e,options:{inlineClassName:"highlight"}})));t.set(a)}}))}));return S(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[v,m,E,p,S]),(0,J.useEffect)((()=>{var e=w.current;if(e&&C.current&&"fit-content"===M.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=tt(t.contentHeight,b,f);n!==L.current.height&&(L.current.height=n,e.layout(L.current))}})),n=tt(e.getContentHeight(),b,f);return n!==L.current.height&&(L.current.height=n,e.layout(L.current)),()=>{t.dispose()}}}),[f,b]),(0,J.useEffect)((()=>{if(w.current){var e=w.current.getModel(),t=e.onDidChangeContent((t=>{c(e.getValue(),t.isFlush)}));return()=>{t.dispose()}}}),[c]),(0,J.useEffect)((()=>()=>{var e,t,n;null===(e=w.current)||void 0===e||null===(t=e.getModel())||void 0===t||t.dispose(),null===(n=w.current)||void 0===n||n.dispose()}),[]),ee().createElement("div",{ref:C,style:{height:y}})}function et(e,t,n){return nt(Math.min(n,Math.max(t,e.split("\n").length)))}function tt(e,t,n){var r=e;return(e-ge.LS)%ge.Mv==0&&(r=e+ge.sE),Math.min(nt(n),Math.max(r,nt(t)))}function nt(e){return e*ge.Mv+ge.sE+ge.LS}({e:[s,u,h,c,g,p,f,C,w,y,M,S,T,R,A,_,K,z,B,O,F,q,D,U,j],c:[fe,r]}=(0,Q.Z)(Ue,[[a,1,"name"],[l,1,"label"],[o,1,"value"],[d,1,"language"],[m,1,"theme"],[v,1,"required"],[b,1,"readOnly"],[Z,1,"automaticLayout"],[k,1,"minLines"],[L,1,"completers"],[N,1,"advancedCompleters"],[E,1,"markers"],[x,1,"links"],[I,1,"maxLines"],[W,1,"height"],[P,1,"codeChange",function(){return(0,Y.Z)(this,ze)},function(e){(0,X.Z)(this,ze,e)}],[V,1,"userInput",function(){return(0,Y.Z)(this,Be)},function(e){(0,X.Z)(this,Be,e)}],[H,1,"highlighClickEvent",function(){return(0,Y.Z)(this,He)},function(e){(0,X.Z)(this,He,e)}]],[i])),r()},69435:(e,t,n)=>{n.d(t,{Z:()=>d});var r=n(56666),i=n(53395),a=n(70687),s=n(40381),l=n(78035),u=new WeakMap,o=new WeakMap,h=new WeakMap;const d=class{constructor(){(0,i.Z)(this,u,{writable:!0,value:void 0}),(0,i.Z)(this,o,{writable:!0,value:void 0}),(0,i.Z)(this,h,{writable:!0,value:void 0}),(0,r.Z)(this,"getTokens",(()=>(0,a.Z)(this,u))),(0,s.Z)(this,u,[]),(0,s.Z)(this,o,0),(0,s.Z)(this,h,"")}handleState(e,t){if("close"===e){var{line:n,position:r,lineStart:i,result:d}=t,c=t.input.substring(i,r);if(c.trim()===(0,a.Z)(this,h).trim())return;(0,s.Z)(this,h,c);var m=n+1,g=n+1,v=r-i-d.length,p=r-i-t.lineIndent;if("string"==typeof d&&/^\s*<%[~=]?\s/.test(d)&&/\s%>\s*$/.test(d)){var b,f=d,Z=null===(b=d.match(/\n/g))||void 0===b?void 0:b.length;if(Z){for(var C=(0,a.Z)(this,o),k=(0,a.Z)(this,o);k<t.input.length;k++)if("\n"===t.input[k]){C=k+1;break}var w=/(\|-|>-)/.test(t.input.substring((0,a.Z)(this,o),r-1));f=t.input.substring(C,r-1),m=t.line-Z+1-Number(w),g=n,v=0,p=0}var L={source:f,startLineNumber:m,endLineNumber:g,startColumn:v,endColumn:p,isString:['"',"'"].includes(t.input[i+v-2])};!(0,a.Z)(this,u).find((e=>(0,l.isEqual)(e,L)))&&(0,a.Z)(this,u).push(L)}(0,s.Z)(this,o,r)}}listen(){return this.handleState.bind(this)}}},9486:(e,t,n)=>{n.d(t,{Z:()=>o});var r=n(33028),i=n(46475),a=n(36023),s=n(65107),l=n(78035),u=(e,t,n)=>{for(var r=[],i=[],a="",s=n,l=t.startColumn;s>0;){var u=e.getValueInRange({startLineNumber:s,endLineNumber:s,startColumn:0,endColumn:1/0}).match(/^([\s|-]*)(\w+)(?=:)/);if(u){var[o,h,d]=u;h.length===t.startColumn-1&&r.unshift(d),h.length<l-1&&(!a&&(a=d),l=h.length,i.unshift(d))}s--}return{curLevelKeys:r,keyList:i,parentKey:a}},o=(e,t)=>(n,o,h,d)=>{var c=n.getWordUntilPosition(o),{word:m,token:g}=((e,t)=>{var n,i=e.getWordUntilPosition(t),a=e.getValueInRange({startLineNumber:t.lineNumber,endLineNumber:t.lineNumber,startColumn:t.column-i.word.length-1,endColumn:t.column-i.word.length}),s=e.getWordAtPosition((0,r.Z)((0,r.Z)({},t),{},{column:t.column-(null==i||null===(n=i.word)||void 0===n?void 0:n.length)-1}));return{word:null==s?void 0:s.word,token:a}})(n,o),v=n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:0,endColumn:1/0}),p={startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:c.startColumn,endColumn:c.endColumn},b=1===c.startColumn,{curLevelKeys:f}=u(n,c,n.getLineCount());if("<"===h.triggerCharacter)return"<"!==n.getValueInRange({startLineNumber:o.lineNumber,endLineNumber:o.lineNumber,startColumn:o.column-2,endColumn:o.column+2}).trim()?{suggestions:[]}:{suggestions:[{label:"<% %>",detail:"Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"% ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p},{label:"<%= %>",detail:"Track Evalute Body",kind:i.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:i.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:p}]};if(b)return{suggestions:(null!=e?e:[]).filter((e=>!f.includes(e.label))).map((e=>(0,r.Z)((0,r.Z)({},e),{},{label:e.label,insertText:e.insertText||e.label,kind:i.languages.CompletionItemKind.Keyword,range:p})))};if(":"===h.triggerCharacter||"."===h.triggerCharacter&&m&&!["CTX","STATE","FN"].includes(m)){var Z,C;if("action"===m&&":"===h.triggerCharacter)return{suggestions:null===(Z=null!==(C=(0,l.get)(a,"definitions.BuiltinBrickEventHandler.properties.action.enum"))&&void 0!==C?C:[])||void 0===Z?void 0:Z.map((e=>({label:" ".concat(e),detail:"event action",kind:i.languages.CompletionItemKind.Keyword,insertText:" ".concat(e),range:p})))};var k,w,L=null==t?void 0:t[m],y="";if(L&&!Array.isArray(L)?(k=L.completers,y=L.triggerCharacter):k=L,y?h.triggerCharacter===y&&k:k)return{suggestions:(null!==(w=k)&&void 0!==w?w:[]).map((e=>{var t=":"===y?" ".concat(e.label):e.label;return(0,r.Z)((0,r.Z)({},e),{},{label:t,kind:i.languages.CompletionItemKind.Value,insertText:e.insertText||t,range:p})}))}}if(((e,t)=>{var n=e.getWordUntilPosition(t),r=e.findPreviousMatch("<%",t,!1,!1,null,!1),i=e.findNextMatch("%>",t,!1,!1,null,!1);if((null==r?void 0:r.range.startLineNumber)&&(null==i?void 0:i.range.startLineNumber)&&r.range.startLineNumber<=t.lineNumber&&i.range.endLineNumber>=t.lineNumber){var{parentKey:a}=u(e,r.range,null==r?void 0:r.range.startLineNumber),{parentKey:s}=u(e,i.range,null==i?void 0:i.range.startLineNumber),{keyList:l}=u(e,n,t.lineNumber);if(a===s&&l.includes(a))return!0}return!1})(n,o)){var N,M,E,S;if(m&&["CTX","STATE"].includes(m)&&t)return{suggestions:(null!==(N=null===(M=t[m])||void 0===M?void 0:M.completers)&&void 0!==N?N:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("FN"===m&&"."===h.triggerCharacter&&t)return{suggestions:(null!==(E=null===(S=t.FN)||void 0===S?void 0:S.completers)&&void 0!==E?E:[]).map((e=>({label:e.label,insertText:e.label,kind:i.languages.CompletionItemKind.Value,range:p})))};if("APP"===m&&"."===h.triggerCharacter){var x=(0,l.get)(a,"definitions.MicroApp.properties"),T=[];for(var[I,R]of Object.entries(x))T.push({label:I,kind:i.languages.CompletionItemKind.Value,documentation:R.description,detail:R.enum?R.enum.join("|"):R.type,insertText:I,range:p});return{suggestions:T}}return[".",":"].includes(g)?{suggestions:[]}:{suggestions:s.fT.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p})))}}return/^[\s|-]*\w$/.test(v)?{suggestions:s.Wu.map((e=>({label:e,insertText:e,kind:i.languages.CompletionItemKind.Keyword,range:p}))).filter((e=>!f.includes(e.label)))}:{suggestions:[]}}},65107:(e,t,n)=>{n.d(t,{Wu:()=>i,aC:()=>a,fT:()=>r});var r=["CTX","STATE","DATA","EVENT","FLAGS","APP","ANCHOR","HASH","INSTALLED_APPS","ITEM","LOCAL_STORAGE","MEDIA","MISC","PARAMS","PATH","PROCESSORS","QUERY","QUERY_ARRAY","SESSION_STORAGE","TPL","SYS","BASE_URL","IMG","FN","I18N","I18N_TEXT","PERMISSIONS","THEME"],i=["target","targetRef","properties","events","method","callback","success","error","action","useProvider","useChildren","useBrick","args","if","then"],a={hit:1,info:2,warn:4,error:8}},76126:(e,t,n)=>{n.d(t,{Z:()=>l});var r=n(39601),i=n.n(r),a=n(82609),s=n.n(a)()(i());s.push([e.id,".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}",""]);const l=s},53154:(e,t,n)=>{var r=n(46062),i=n.n(r),a=n(44036),s=n.n(a),l=n(96793),u=n.n(l),o=n(17892),h=n.n(o),d=n(11173),c=n.n(d),m=n(42464),g=n.n(m),v=n(76126),p={};p.styleTagTransform=g(),p.setAttributes=h(),p.insert=u().bind(null,"head"),p.domAPI=s(),p.insertStyleElement=c(),i()(v.Z,p),v.Z&&v.Z.locals&&v.Z.locals},81391:(e,t,n)=>{n.d(t,{G:()=>f});var r,i,a=n(53395),s=n(40381),l=n(70687),u=n(25303),o=n(75476),h=n(29049),{method:d}=(0,o.createDecorators)();r=d();var c=new WeakMap,m=new WeakMap,g=new WeakMap,v=new WeakMap,p=new WeakMap,b=new WeakMap;class f extends h.ReactNextElement{constructor(){super(...arguments),(0,a.Z)(this,b,{get:L,set:y}),(0,a.Z)(this,v,{get:k,set:w}),(0,a.Z)(this,m,{get:Z,set:C}),(0,a.Z)(this,c,{writable:!0,value:!1}),(0,a.Z)(this,g,{writable:!0,value:"normal"}),(0,a.Z)(this,p,{writable:!0,value:!1}),i(this)}get isFormItemElement(){return!0}set validateState(e){(0,s.Z)(this,v,e),this._render()}get validateState(){return(0,l.Z)(this,v)}set notRender(e){this.hidden=e,(0,s.Z)(this,m,e),this._render()}get notRender(){return(0,l.Z)(this,m)}get $bindFormItem(){return(0,l.Z)(this,b)}set $bindFormItem(e){(0,s.Z)(this,b,e),this._render()}getFormElement(){for(var e=this;(e=e.parentNode)&&e&&!e.isFormElement;);return e}}function Z(){return(0,l.Z)(this,c)}function C(e){(0,s.Z)(this,c,e)}function k(){return(0,l.Z)(this,g)}function w(e){(0,s.Z)(this,g,e)}function L(){return(0,l.Z)(this,p)}function y(e){(0,s.Z)(this,p,e)}[i]=(0,u.Z)(f,[[r,2,"getFormElement"]],[]).e}}]);
2
+ //# sourceMappingURL=code-editor.d16ee5da.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/code-editor.d16ee5da.js","mappings":"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","sources":["webpack:///./src/code-editor/constants.ts","webpack:///./src/code-editor/index.tsx","webpack:///./src/code-editor/utils/brickNextSourceMap.ts","webpack:///./src/code-editor/utils/brickNextYaml.ts","webpack:///./src/code-editor/utils/constants.ts","webpack:///./src/code-editor/index.css","webpack:///./src/code-editor/index.css?aefa","webpack:///../../src/FormItemElement.tsx"],"sourcesContent":["export const EDITOR_FONT_SIZE = 12;\nexport const EDITOR_LINE_HEIGHT = 18;\nexport const EDITOR_SCROLLBAR_SIZE = 12;\nexport const EDITOR_PADDING_VERTICAL = 12;\n","import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { useCurrentTheme } from \"@next-core/react-runtime\";\nimport { FormItemElementBase } from \"@next-shared/form\";\nimport type { FormItem, FormItemProps } from \"@next-bricks/form/form-item\";\nimport * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport { register as registerJavaScript } from \"@next-core/monaco-contributions/javascript\";\nimport { register as registerTypeScript } from \"@next-core/monaco-contributions/typescript\";\nimport { register as registerYaml } from \"@next-core/monaco-contributions/yaml\";\nimport { register as registerHtml } from \"@next-core/monaco-contributions/html\";\nimport yaml from \"js-yaml\";\nimport BrickNextYamlSourceMap, { Token } from \"./utils/brickNextSourceMap.js\";\nimport \"@next-core/theme\";\nimport { isEqual } from \"lodash\";\nimport {\n EDITOR_SCROLLBAR_SIZE,\n EDITOR_PADDING_VERTICAL,\n EDITOR_LINE_HEIGHT,\n EDITOR_FONT_SIZE,\n} from \"./constants.js\";\nimport { brickNextYAMLProvideCompletionItems } from \"./utils/brickNextYaml.js\";\nimport \"./index.css\";\nimport { EVALUATE_KEYWORD, Level } from \"./utils/constants.js\";\nimport type { MemberExpression, Identifier } from \"@babel/types\";\nimport { preevaluate } from \"@next-core/cook\";\n\nregisterJavaScript(monaco);\nregisterTypeScript(monaco);\nregisterYaml(monaco, \"brick_next_yaml\");\nregisterHtml(monaco);\n\nconst { defineElement, property, event } = createDecorators();\n\nconst WrappedFormItem = wrapBrick<FormItem, FormItemProps>(\"eo-form-item\");\n\nexport interface CodeEditorProps {\n name?: string;\n label?: string;\n value?: string;\n language?: string;\n theme?: string;\n required?: boolean;\n readOnly?: boolean;\n automaticLayout?: \"fit-container\" | \"fit-content\" | \"none\";\n minLines?: number;\n maxLines?: number;\n height?: string | number;\n completers?: monaco.languages.CompletionItem[];\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >;\n markers?: Marker[];\n links?: string[];\n}\n\nexport interface Marker {\n token: string;\n level: keyof typeof Level;\n message: string;\n code?: {\n value: string;\n target: string;\n };\n params?: string[];\n}\n\n/**\n * 构件 code-editor\n */\nexport\n@defineElement(\"vs.code-editor\", {\n // There are a few issues for monaco-editor with shadow DOM.\n // So we use light DOM for now.\n // See https://github.com/microsoft/monaco-editor/issues?q=is%3Aissue+is%3Aopen+shadow+dom\n shadowOptions: false,\n})\nclass CodeEditor extends FormItemElementBase implements CodeEditorProps {\n @property()\n accessor name: string | undefined;\n\n @property()\n accessor label: string | undefined;\n\n @property({ attribute: false })\n accessor value: string | undefined;\n\n /**\n * @default \"plaintext\"\n */\n @property()\n accessor language: string | undefined;\n\n /**\n * 主题,支持 `\"auto\" | \"vs\" | \"vs-dark\"`\n *\n * @default \"auto\"\n * @group ui\n */\n @property() accessor theme: string | undefined;\n\n @property({\n type: Boolean,\n })\n accessor required: boolean | undefined;\n\n @property({\n type: Boolean,\n })\n accessor readOnly: boolean | undefined;\n\n @property()\n accessor automaticLayout:\n | \"fit-container\"\n | \"fit-content\"\n | \"none\"\n | undefined;\n\n /**\n * @default 3\n */\n @property({ type: Number })\n accessor minLines: number | undefined;\n\n @property({\n attribute: false,\n })\n accessor completers: monaco.languages.CompletionItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor advancedCompleters:\n | Record<\n string,\n {\n triggerCharacter: string;\n completers: monaco.languages.CompletionItem[];\n }\n >\n | undefined;\n\n @property({ attribute: false })\n accessor markers: Marker[] | undefined;\n\n @property({ attribute: false })\n accessor links: string[] | undefined;\n\n /**\n * @default Infinity\n */\n @property({ type: Number })\n accessor maxLines: number | undefined;\n\n @property({ attribute: false })\n accessor height: string | number | undefined;\n\n @event({ type: \"code.change\" })\n accessor #codeChange!: EventEmitter<string>;\n\n @event({ type: \"user.input\" })\n accessor #userInput!: EventEmitter<string>;\n\n #handleChange = (value: string, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.value = value;\n this.#codeChange.emit(value);\n if (!isFlush) {\n this.#userInput.emit(value);\n }\n };\n\n @event({ type: \"token.click\" })\n accessor #highlighClickEvent!: EventEmitter<string>;\n\n #handleHighlightClick = (word: string) => {\n this.#highlighClickEvent.emit(word);\n };\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <WrappedFormItem\n curElement={this}\n formElement={this.getFormElement()}\n name={this.name}\n label={this.label}\n required={this.required}\n >\n <CodeEditorComponent\n value={this.value}\n language={this.language}\n theme={this.theme}\n automaticLayout={this.automaticLayout}\n minLines={this.minLines}\n maxLines={this.maxLines}\n height={this.height}\n completers={this.completers}\n advancedCompleters={this.advancedCompleters}\n markers={this.markers}\n links={this.links}\n onChange={this.#handleChange}\n onHighlightClick={this.#handleHighlightClick}\n />\n </WrappedFormItem>\n );\n }\n}\n\nexport function CodeEditorComponent({\n value: _value,\n language: _language,\n theme: _theme,\n minLines: _minLines,\n maxLines: _maxLines,\n height: _height,\n automaticLayout,\n completers,\n advancedCompleters,\n markers,\n links,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, isFlush: boolean): void;\n onHighlightClick(word: string): void;\n}) {\n const value = _value ?? \"\";\n const language = _language ?? \"plaintext\";\n const theme = _theme ?? \"auto\";\n const minLines = _minLines ?? 3;\n const maxLines = _maxLines ?? Infinity;\n const height = _height ?? 500;\n\n const containerRef = useRef<HTMLDivElement>(null);\n const decorationsCollection =\n useRef<monaco.editor.IEditorDecorationsCollection>();\n const editorRef = useRef<monaco.editor.IStandaloneCodeEditor>();\n const size = useRef<monaco.editor.IDimension>({\n width: 300,\n height: getContentHeightByCode(value, minLines, maxLines),\n });\n const [actualHeight, setActualHeight] = useState<string | number>();\n // `automaticLayout` should never change\n const automaticLayoutRef = useRef(automaticLayout);\n const systemTheme = useCurrentTheme();\n\n useEffect(() => {\n // Currently theme is configured globally.\n // See https://github.com/microsoft/monaco-editor/issues/338\n monaco.editor.setTheme(\n theme === \"auto\"\n ? systemTheme === \"dark\" || systemTheme === \"dark-v2\"\n ? \"vs-dark\"\n : \"vs\"\n : theme\n );\n }, [systemTheme, theme]);\n\n useEffect(() => {\n if (editorRef.current) {\n const currentModel = editorRef.current.getModel()!;\n monaco.editor.setModelLanguage(currentModel, language);\n if (!isEqual(currentModel.getValue(), value)) {\n currentModel.setValue(value);\n }\n }\n }, [value, language]);\n\n useEffect(() => {\n if (language === \"brick_next_yaml\") {\n const provideCompletionItems = brickNextYAMLProvideCompletionItems(\n completers,\n advancedCompleters\n );\n const monacoProviderRef = monaco.languages.registerCompletionItemProvider(\n \"brick_next_yaml\",\n {\n provideCompletionItems,\n triggerCharacters: [\".\", \":\", \"<\"],\n }\n );\n return () => {\n monacoProviderRef.dispose();\n };\n }\n }, [completers, advancedCompleters, language]);\n\n const parseYaml = useCallback(() => {\n const map = new BrickNextYamlSourceMap();\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n yaml.load(value, {\n listener: map.listen(),\n });\n\n if ((links || markers) && editorRef.current) {\n const tokens: Omit<\n Token & { token: string; property: string },\n \"source\"\n >[] = [];\n map.getTokens().forEach((item) => {\n const { startLineNumber, endLineNumber, startColumn } = item;\n const globalNodes: MemberExpression[] = [];\n const result = preevaluate(item.source, {\n hooks: {\n beforeVisit(node) {\n if (\n node.type === \"MemberExpression\" &&\n node.object.type === \"Identifier\" &&\n EVALUATE_KEYWORD.includes(node.object.name) &&\n node.property.type === \"Identifier\"\n ) {\n globalNodes.push(node);\n }\n },\n },\n });\n\n globalNodes.forEach((node) => {\n const { start, end, loc } = node;\n if (item.startLineNumber !== item.endLineNumber) {\n const hadWrap = /<%[ ]+/.test(result.prefix);\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber:\n item.startLineNumber +\n (loc?.start?.line as number) -\n Number(hadWrap),\n endLineNumber:\n item.startLineNumber +\n (loc?.end?.line as number) -\n Number(hadWrap),\n startColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.start?.column as number) +\n 1,\n endColumn:\n (hadWrap && loc?.start.line === 1\n ? result.prefix.length\n : 0) +\n (loc?.end?.column as number) +\n 1,\n });\n } else {\n tokens.push({\n token: (node.object as Identifier)?.name,\n property: (node.property as Identifier).name,\n startLineNumber,\n endLineNumber,\n startColumn:\n startColumn +\n (start as number) +\n result.prefix?.length +\n Number(!item.isString),\n endColumn:\n startColumn +\n (end as number) +\n result.prefix?.length +\n Number(!item.isString),\n });\n }\n });\n });\n\n decorationsCollection.current?.set(\n tokens\n .filter((token) => links?.includes(token.token))\n .map((token) => ({\n range: new monaco.Range(\n token.startLineNumber,\n token.startColumn,\n token.endLineNumber,\n token.endColumn\n ),\n options: {\n inlineClassName: \"highlight\",\n },\n }))\n );\n\n if (markers) {\n const modelMarkers = tokens\n .map((token) => {\n const matchTokenConf = markers.find(\n (item) => item.token === token.token\n );\n const hadProperty = matchTokenConf?.params?.includes(\n token.property\n );\n if (!hadProperty) {\n return {\n severity: Level.warn,\n message: \"Miss Property\",\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n if (matchTokenConf && matchTokenConf.message) {\n return {\n severity: Level[matchTokenConf?.level ?? \"warn\"],\n message: matchTokenConf.message,\n ...(matchTokenConf.code\n ? {\n code: {\n value: matchTokenConf.code.value,\n target: monaco.Uri.parse(\n matchTokenConf.code.target\n ),\n },\n }\n : {}),\n startLineNumber: token.startLineNumber,\n endLineNumber: token.endLineNumber,\n startColumn: token.startColumn,\n endColumn: token.endColumn,\n };\n }\n })\n .filter(Boolean) as monaco.editor.IMarkerData[];\n\n monaco.editor.setModelMarkers(\n model,\n \"brick_next_yaml\",\n modelMarkers\n );\n }\n }\n } catch (e) {\n monaco.editor.setModelMarkers(model, \"brick_next_yaml\", []);\n decorationsCollection?.current?.set([]);\n // TODO: validate error\n // eslint-disable-next-line no-console\n console.log(e);\n }\n }\n }, [value, markers, links]);\n\n useEffect(() => {\n parseYaml();\n }, [parseYaml]);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-content\" || !containerRef.current) {\n return;\n }\n\n size.current.width = containerRef.current.getBoundingClientRect().width;\n editorRef.current?.layout(size.current);\n\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === containerRef.current) {\n const newWidth = entry.contentBoxSize\n ? entry.contentBoxSize[0].inlineSize\n : entry.contentRect.width;\n if (newWidth !== size.current.width) {\n size.current.width = newWidth;\n editorRef.current?.layout(size.current);\n }\n break;\n }\n }\n });\n observer.observe(containerRef.current);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useLayoutEffect(() => {\n if (automaticLayoutRef.current !== \"fit-container\") {\n return;\n }\n\n const container = getDOMContainer(containerRef.current);\n if (!container) {\n return;\n }\n // Manually layout the editor once the container resized.\n const observer = new ResizeObserver((): void => {\n setActualHeight(container.offsetHeight);\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n useEffect(() => {\n if (\n automaticLayoutRef.current !== \"fit-container\" &&\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n setActualHeight(height);\n }\n }, [height]);\n\n useEffect(() => {\n if (editorRef.current || !containerRef.current) {\n return;\n }\n const model = monaco.editor.createModel(value, language);\n editorRef.current = monaco.editor.create(containerRef.current, {\n model,\n minimap: {\n enabled: false,\n },\n scrollBeyondLastLine: false,\n tabSize: 2,\n insertSpaces: true,\n automaticLayout: automaticLayoutRef.current !== \"fit-content\",\n fontSize: EDITOR_FONT_SIZE,\n lineHeight: EDITOR_LINE_HEIGHT,\n scrollbar: {\n horizontalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n verticalScrollbarSize: EDITOR_SCROLLBAR_SIZE,\n horizontalSliderSize: 8,\n verticalSliderSize: 8,\n alwaysConsumeMouseWheel: false,\n },\n padding: {\n top: EDITOR_PADDING_VERTICAL,\n // When use `fit-content`, we always plus the height with the vertical padding.\n // Thus the possible x-scrollbar will not take extra space at the bottom.\n bottom:\n automaticLayoutRef.current == \"fit-content\"\n ? undefined\n : EDITOR_PADDING_VERTICAL,\n },\n overviewRulerBorder: false,\n mouseWheelScrollSensitivity: 0.5,\n suggest: {\n insertMode: \"insert\",\n preview: true,\n },\n quickSuggestions: { strings: true, other: true, comments: true },\n });\n\n decorationsCollection.current =\n editorRef.current.createDecorationsCollection();\n }, [value, language]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (language === \"brick_next_yaml\" && editor) {\n const model = editor.getModel()!;\n const editorMouseDownEvent = editor.onMouseDown(function (e) {\n const decorations = decorationsCollection.current;\n (decorations?.getRanges?.() ?? []).forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n onHighlightClick(model.getValueInRange(range));\n }\n });\n });\n\n const mouseOverEvent = editor.onMouseMove(function (e) {\n const decorations = decorationsCollection.current;\n if (!decorations) return;\n decorations.getRanges().forEach((range) => {\n const modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n if (\n range &&\n e.target.position &&\n e.event[modKey] &&\n range.containsPosition(e.target.position)\n ) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: range.equalsRange(item)\n ? \"highlight pointer\"\n : \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n } else if (!e.event[modKey]) {\n const newDecorations = decorations.getRanges().map((item) => ({\n range: item,\n options: {\n inlineClassName: \"highlight\",\n },\n }));\n decorations.set(newDecorations);\n }\n });\n });\n\n parseYaml();\n\n return () => {\n mouseOverEvent?.dispose();\n editorMouseDownEvent?.dispose();\n };\n }\n }, [language, onHighlightClick, systemTheme, theme, parseYaml]);\n\n useEffect(() => {\n const editor = editorRef.current;\n if (\n !editor ||\n !containerRef.current ||\n automaticLayoutRef.current !== \"fit-content\"\n ) {\n return;\n }\n\n const listener = editor.onDidContentSizeChange((e) => {\n if (e.contentHeightChanged) {\n const newHeight = fixEditorHeightWithScrollBar(\n e.contentHeight,\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n }\n });\n\n const newHeight = fixEditorHeightWithScrollBar(\n editor.getContentHeight(),\n minLines,\n maxLines\n );\n if (newHeight !== size.current.height) {\n size.current.height = newHeight;\n editor.layout(size.current);\n }\n\n return () => {\n listener.dispose();\n };\n }, [maxLines, minLines]);\n\n useEffect(() => {\n if (!editorRef.current) {\n return;\n }\n const currentModel = editorRef.current.getModel()!;\n const listener = currentModel.onDidChangeContent((e) => {\n onChange(currentModel.getValue(), e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return <div ref={containerRef} style={{ height: actualHeight }} />;\n}\n\nfunction getContentHeightByCode(\n code: string,\n minLines: number,\n maxLines: number\n): number {\n return getContentHeightByLines(\n Math.min(maxLines, Math.max(minLines, code.split(\"\\n\").length))\n );\n}\n\nfunction fixEditorHeightWithScrollBar(\n contentHeight: number,\n minLines: number,\n maxLines: number\n): number {\n let fixedHeight = contentHeight;\n if ((contentHeight - EDITOR_PADDING_VERTICAL) % EDITOR_LINE_HEIGHT === 0) {\n fixedHeight = contentHeight + EDITOR_SCROLLBAR_SIZE;\n }\n return Math.min(\n getContentHeightByLines(maxLines),\n Math.max(fixedHeight, getContentHeightByLines(minLines))\n );\n}\n\nfunction getContentHeightByLines(lines: number): number {\n return (\n lines * EDITOR_LINE_HEIGHT + EDITOR_SCROLLBAR_SIZE + EDITOR_PADDING_VERTICAL\n );\n}\n\n/** Get the direct DOM container of `vs.code-editor` */\nfunction getDOMContainer(element: HTMLElement | null) {\n let brick = element;\n while (brick) {\n const found = brick.tagName.toLowerCase() === \"vs.code-editor\";\n brick = brick.parentElement;\n if (found) {\n return brick;\n }\n }\n}\n","import type { State } from \"js-yaml\";\nimport { isEqual } from \"lodash\";\n\nexport interface Token {\n startLineNumber: number;\n endLineNumber: number;\n startColumn: number;\n endColumn: number;\n source: string;\n isString?: boolean;\n}\n\nclass BrickNextYamlSourceMap {\n #recordsToken: Token[];\n #prefixPosition: number;\n #recordLastWord: string;\n\n constructor() {\n this.#recordsToken = [];\n this.#prefixPosition = 0;\n this.#recordLastWord = \"\";\n }\n\n private handleState(event: \"open\" | \"close\", state: State): void {\n if (event === \"close\") {\n const { line, position, lineStart, result } = state;\n const curWord = state.input.substring(lineStart, position);\n if (curWord.trim() === this.#recordLastWord.trim()) return;\n this.#recordLastWord = curWord;\n let startLineNumber = line + 1;\n let endLineNumber = line + 1;\n let startColumn = position - lineStart - result.length;\n let endColumn = position - lineStart - state.lineIndent;\n if (\n typeof result === \"string\" &&\n /^\\s*<%[~=]?\\s/.test(result) &&\n /\\s%>\\s*$/.test(result)\n ) {\n let source = result;\n const wrapLength = result.match(/\\n/g)?.length;\n if (wrapLength) {\n let nearWrapIndex = this.#prefixPosition;\n for (let i = this.#prefixPosition; i < state.input.length; i++) {\n if (state.input[i] === \"\\n\") {\n nearWrapIndex = i + 1;\n break;\n }\n }\n const specilStringPrefix = /(\\|-|>-)/.test(\n state.input.substring(this.#prefixPosition, position - 1)\n );\n source = state.input.substring(nearWrapIndex, position - 1);\n startLineNumber =\n state.line - wrapLength + 1 - Number(specilStringPrefix);\n endLineNumber = line;\n startColumn = 0;\n endColumn = 0;\n }\n const token = {\n source,\n startLineNumber,\n endLineNumber,\n startColumn,\n endColumn,\n isString: ['\"', \"'\"].includes(\n state.input[lineStart + startColumn - 2]\n ),\n };\n !this.#recordsToken.find((item) => isEqual(item, token)) &&\n this.#recordsToken.push(token);\n }\n this.#prefixPosition = position;\n }\n }\n\n public listen() {\n return this.handleState.bind(this);\n }\n\n public getTokens = () => {\n return this.#recordsToken;\n };\n}\n\nexport default BrickNextYamlSourceMap;\n","import * as monaco from \"monaco-editor/esm/vs/editor/editor.api.js\";\nimport storyboardJsonSchema from \"@next-core/types/storyboard.json\";\nimport { EVALUATE_KEYWORD, brickNextKeywords, Level } from \"./constants.js\";\nimport { get } from \"lodash\";\n\nconst findKeys = (\n model: monaco.editor.ITextModel,\n range: monaco.Range | monaco.editor.IWordAtPosition,\n line: number\n) => {\n const curLevelKeys: string[] = [];\n const keyList: string[] = [];\n let parentKey = \"\";\n let i = line;\n let startColumn = range.startColumn;\n while (i > 0) {\n const prefixLineWord = model.getValueInRange({\n startLineNumber: i,\n endLineNumber: i,\n startColumn: 0,\n endColumn: Infinity,\n });\n const matchWord = prefixLineWord.match(/^([\\s|-]*)(\\w+)(?=:)/);\n if (matchWord) {\n const [_, wordspace, key] = matchWord;\n if (wordspace.length === range.startColumn - 1) {\n curLevelKeys.unshift(key);\n }\n if (wordspace.length < startColumn - 1) {\n !parentKey && (parentKey = key);\n startColumn = wordspace.length;\n keyList.unshift(key);\n }\n }\n i--;\n }\n return {\n curLevelKeys,\n keyList,\n parentKey,\n };\n};\n\nconst getPrefixWord = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): {\n word: string | undefined;\n token: string;\n} => {\n const word = model.getWordUntilPosition(position);\n const prefixToken = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - word.word.length - 1,\n endColumn: position.column - word.word.length,\n });\n const prefixWord = model.getWordAtPosition({\n ...position,\n column: position.column - word?.word?.length - 1,\n });\n return {\n word: prefixWord?.word,\n token: prefixToken,\n };\n};\n\nexport const isInEvaluateBody = (\n model: monaco.editor.ITextModel,\n position: monaco.Position\n): boolean => {\n const word = model.getWordUntilPosition(position);\n const prefixEvaluateOperator = model.findPreviousMatch(\n \"<%\",\n position,\n false,\n false,\n null,\n false\n );\n const suffixEvaluateOperator = model.findNextMatch(\n \"%>\",\n position,\n false,\n false,\n null,\n false\n );\n const isInEvaluateBody =\n prefixEvaluateOperator?.range.startLineNumber &&\n suffixEvaluateOperator?.range.startLineNumber &&\n prefixEvaluateOperator.range.startLineNumber <= position.lineNumber &&\n suffixEvaluateOperator.range.endLineNumber >= position.lineNumber;\n\n if (isInEvaluateBody) {\n const { parentKey: prefixParentKey } = findKeys(\n model,\n prefixEvaluateOperator.range,\n prefixEvaluateOperator?.range.startLineNumber\n );\n const { parentKey: suffixParentKey } = findKeys(\n model,\n suffixEvaluateOperator.range,\n suffixEvaluateOperator?.range.startLineNumber\n );\n const { keyList } = findKeys(model, word, position.lineNumber);\n if (\n prefixParentKey === suffixParentKey &&\n keyList.includes(prefixParentKey)\n ) {\n return true;\n }\n }\n return false;\n};\n\nexport const brickNextYAMLProvideCompletionItems = (\n completers?: monaco.languages.CompletionItem[],\n advancedCompleters?: Record<\n string,\n { triggerCharacter: string; completers: monaco.languages.CompletionItem[] }\n >\n) => {\n return (\n model: monaco.editor.ITextModel,\n position: monaco.Position,\n context: monaco.languages.CompletionContext,\n _token: monaco.CancellationToken\n ): monaco.languages.ProviderResult<monaco.languages.CompletionList> => {\n const word = model.getWordUntilPosition(position);\n const { word: prefixWord, token: prefixToken } = getPrefixWord(\n model,\n position\n );\n const curLineWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: 0,\n endColumn: Infinity,\n });\n const range = {\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: word.startColumn,\n endColumn: word.endColumn,\n };\n\n const isFirstLevelProperty = word.startColumn === 1;\n const { curLevelKeys } = findKeys(model, word, model.getLineCount());\n\n if (context.triggerCharacter === \"<\") {\n const fullWord = model.getValueInRange({\n startLineNumber: position.lineNumber,\n endLineNumber: position.lineNumber,\n startColumn: position.column - 2,\n endColumn: position.column + 2,\n });\n if (fullWord.trim() !== \"<\") {\n return {\n suggestions: [],\n };\n }\n return {\n suggestions: [\n {\n label: \"<% %>\",\n detail: \"Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"% ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n {\n label: \"<%= %>\",\n detail: \"Track Evalute Body\",\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: \"%= ${0} %>\",\n insertTextRules:\n monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,\n range: range,\n },\n ],\n };\n }\n\n if (isFirstLevelProperty) {\n return {\n suggestions: (completers ?? [])\n .filter((item) => !curLevelKeys.includes(item.label as string))\n .map((item) => ({\n ...item,\n label: item.label,\n insertText: item.insertText || (item.label as string),\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (\n context.triggerCharacter === \":\" ||\n (context.triggerCharacter === \".\" &&\n prefixWord &&\n ![\"CTX\", \"STATE\", \"FN\"].includes(prefixWord))\n ) {\n if (prefixWord === \"action\" && context.triggerCharacter === \":\") {\n const actions = get(\n storyboardJsonSchema,\n \"definitions.BuiltinBrickEventHandler.properties.action.enum\"\n );\n return {\n suggestions: ((actions as unknown as string[]) ?? [])?.map(\n (item) => ({\n label: ` ${item}`,\n detail: \"event action\",\n kind: monaco.languages.CompletionItemKind.Keyword,\n insertText: ` ${item}`,\n range,\n })\n ),\n };\n }\n const matchCompletion = advancedCompleters?.[prefixWord as string];\n let matchTriggerCharacter = \"\";\n let list: monaco.languages.CompletionItem[] | undefined;\n if (matchCompletion && !Array.isArray(matchCompletion)) {\n list = matchCompletion.completers;\n matchTriggerCharacter = matchCompletion.triggerCharacter;\n } else {\n list = matchCompletion;\n }\n if (\n matchTriggerCharacter\n ? context.triggerCharacter === matchTriggerCharacter && list\n : list\n ) {\n return {\n suggestions: (list ?? []).map((item) => {\n const label =\n matchTriggerCharacter === \":\"\n ? ` ${item.label}`\n : (item.label as string);\n return {\n ...item,\n label: label,\n kind: monaco.languages.CompletionItemKind.Value,\n insertText: item.insertText || label,\n range,\n };\n }),\n };\n }\n }\n\n if (isInEvaluateBody(model, position)) {\n if (\n prefixWord &&\n [\"CTX\", \"STATE\"].includes(prefixWord) &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[prefixWord]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (\n prefixWord === \"FN\" &&\n context.triggerCharacter === \".\" &&\n advancedCompleters\n ) {\n return {\n suggestions: (advancedCompleters[\"FN\"]?.completers ?? []).map(\n (item) => ({\n label: item.label,\n insertText: item.label as string,\n kind: monaco.languages.CompletionItemKind.Value,\n range,\n })\n ),\n };\n }\n\n if (prefixWord === \"APP\" && context.triggerCharacter === \".\") {\n const appProperties = get(\n storyboardJsonSchema,\n \"definitions.MicroApp.properties\"\n );\n const suggestions = [];\n for (const [k, v] of Object.entries(\n appProperties as unknown as Record<\n string,\n {\n description: string;\n type: string;\n enum: string[];\n }\n >\n )) {\n suggestions.push({\n label: k,\n kind: monaco.languages.CompletionItemKind.Value,\n documentation: v.description,\n detail: v.enum ? v.enum.join(\"|\") : v.type,\n insertText: k,\n range,\n });\n }\n return {\n suggestions,\n };\n }\n\n if ([\".\", \":\"].includes(prefixToken)) {\n return {\n suggestions: [],\n };\n }\n\n return {\n suggestions: EVALUATE_KEYWORD.map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n })),\n };\n }\n\n if (/^[\\s|-]*\\w$/.test(curLineWord)) {\n return {\n suggestions: brickNextKeywords\n .map((item) => ({\n label: item,\n insertText: item,\n kind: monaco.languages.CompletionItemKind.Keyword,\n range,\n }))\n .filter((item) => !curLevelKeys.includes(item.label as string)),\n };\n }\n\n return {\n suggestions: [],\n };\n };\n};\n","export const EVALUATE_KEYWORD = [\n \"CTX\",\n \"STATE\",\n \"DATA\",\n \"EVENT\",\n \"FLAGS\",\n \"APP\",\n \"ANCHOR\",\n \"HASH\",\n \"INSTALLED_APPS\",\n \"ITEM\",\n \"LOCAL_STORAGE\",\n \"MEDIA\",\n \"MISC\",\n \"PARAMS\",\n \"PATH\",\n \"PROCESSORS\",\n \"QUERY\",\n \"QUERY_ARRAY\",\n \"SESSION_STORAGE\",\n \"TPL\",\n \"SYS\",\n \"BASE_URL\",\n \"IMG\",\n \"FN\",\n \"I18N\",\n \"I18N_TEXT\",\n \"PERMISSIONS\",\n \"THEME\",\n];\n\nexport const brickNextKeywords = [\n \"target\",\n \"targetRef\",\n \"properties\",\n \"events\",\n \"method\",\n \"callback\",\n \"success\",\n \"error\",\n \"action\",\n \"useProvider\",\n \"useChildren\",\n \"useBrick\",\n \"args\",\n \"if\",\n \"then\",\n];\n\nexport const Level = {\n hit: 1,\n info: 2,\n warn: 4,\n error: 8,\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".highlight{color:rgb(74 170 189)!important;text-decoration:underline;font-weight:bold;font-style:oblique}.pointer{cursor:pointer}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./index.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport type { AbstractForm } from \"./Form.js\";\n\nconst { method } = createDecorators();\n\nexport abstract class FormItemElementBase extends ReactNextElement {\n accessor #_notRender = false;\n accessor #validate = \"normal\";\n accessor #bindFormItem = false;\n\n get isFormItemElement(): true {\n return true;\n }\n\n set validateState(value: string) {\n this.#validate = value;\n this._render();\n }\n get validateState() {\n return this.#validate;\n }\n\n /**\n * 控制该表单项是否隐藏\n * @default false\n * @group ui\n */\n set notRender(value: boolean) {\n this.hidden = value;\n this.#_notRender = value;\n this._render();\n }\n get notRender(): boolean {\n return this.#_notRender;\n }\n\n get $bindFormItem() {\n return this.#bindFormItem;\n }\n set $bindFormItem(value: boolean) {\n this.#bindFormItem = value;\n this._render();\n }\n\n @method()\n getFormElement(): AbstractForm | null {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n let element: AbstractForm | null = this as unknown as AbstractForm;\n while ((element = element.parentNode as AbstractForm | null)) {\n if (!element || element.isFormElement) {\n break;\n }\n }\n return element as AbstractForm | null;\n }\n}\n"],"names":["EDITOR_FONT_SIZE","EDITOR_LINE_HEIGHT","EDITOR_SCROLLBAR_SIZE","EDITOR_PADDING_VERTICAL","registerJavaScript","monaco","registerTypeScript","registerYaml","registerHtml","_CodeEditor","defineElement","property","event","createDecorators","WrappedFormItem","wrapBrick","_dec","shadowOptions","_dec2","_dec3","_dec4","attribute","_dec5","_dec6","_dec7","type","Boolean","_dec8","_dec9","_dec10","Number","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_codeChange","_Q","_userInput","_handleChange","_R","_highlighClickEvent","_handleHighlightClick","CodeEditor","FormItemElementBase","constructor","arguments","_classPrivateFieldInitSpec","get","_get_highlighClickEvent2","set","_set_highlighClickEvent2","_get_userInput2","_set_userInput2","_get_codeChange2","_set_codeChange2","writable","value","_initProto","_init_name","_init_label","_init_value","_init_language","_init_theme","_init_required","_init_readOnly","_init_automaticLayout","_init_minLines","_init_completers","_init_advancedCompleters","_init_markers","_init_links","_init_maxLines","_init_height","_init_codeChange","_init_userInput","isFlush","_this$getFormElement","this","getFormElement","formStore","onChange","name","_classPrivateFieldGet","emit","_init_highlighClickEvent","word","v","_classPrivateFieldSet","label","language","theme","required","readOnly","automaticLayout","minLines","completers","advancedCompleters","markers","links","maxLines","height","connectedCallback","style","display","super","render","React","curElement","formElement","CodeEditorComponent","onHighlightClick","_set_codeChange","_get_codeChange","_set_userInput","_get_userInput","_set_highlighClickEvent","_get_highlighClickEvent","_ref","_value","_language","_theme","_minLines","_maxLines","_height","Infinity","containerRef","useRef","decorationsCollection","editorRef","size","width","getContentHeightByCode","actualHeight","setActualHeight","useState","automaticLayoutRef","systemTheme","useCurrentTheme","useEffect","current","currentModel","getModel","isEqual","getValue","setValue","provideCompletionItems","brickNextYAMLProvideCompletionItems","monacoProviderRef","triggerCharacters","dispose","parseYaml","useCallback","map","BrickNextYamlSourceMap","model","yaml","listener","listen","_decorationsCollectio","tokens","getTokens","forEach","item","startLineNumber","endLineNumber","startColumn","globalNodes","result","preevaluate","source","hooks","beforeVisit","node","object","EVALUATE_KEYWORD","push","start","end","loc","_node$object","_loc$start","_loc$end","_loc$start2","_loc$end2","hadWrap","test","prefix","token","line","length","column","endColumn","_node$object2","_result$prefix","_result$prefix2","isString","filter","includes","range","options","inlineClassName","modelMarkers","_matchTokenConf$param","_matchTokenConf$level","matchTokenConf","find","params","message","_objectSpread","severity","Level","level","code","target","e","_decorationsCollectio2","console","log","useLayoutEffect","_editorRef$current","getBoundingClientRect","layout","observer","ResizeObserver","entries","entry","_editorRef$current2","newWidth","contentBoxSize","inlineSize","contentRect","observe","disconnect","container","element","brick","found","tagName","toLowerCase","parentElement","getDOMContainer","offsetHeight","minimap","enabled","scrollBeyondLastLine","tabSize","insertSpaces","fontSize","lineHeight","scrollbar","horizontalScrollbarSize","verticalScrollbarSize","horizontalSliderSize","verticalSliderSize","alwaysConsumeMouseWheel","padding","top","bottom","undefined","overviewRulerBorder","mouseWheelScrollSensitivity","suggest","insertMode","preview","quickSuggestions","strings","other","comments","createDecorationsCollection","editor","editorMouseDownEvent","onMouseDown","_decorations$getRange","_decorations$getRange2","decorations","getRanges","call","modKey","navigator","platform","position","containsPosition","getValueInRange","mouseOverEvent","onMouseMove","newDecorations","equalsRange","onDidContentSizeChange","contentHeightChanged","newHeight","fixEditorHeightWithScrollBar","contentHeight","getContentHeight","onDidChangeContent","_editorRef$current3","_editorRef$current3$g","_editorRef$current4","ref","getContentHeightByLines","Math","min","max","split","fixedHeight","lines","c","_initClass","_applyDecs2203R","_recordsToken","_prefixPosition","_recordLastWord","_defineProperty","handleState","state","lineStart","curWord","input","substring","trim","lineIndent","_result$match","wrapLength","match","nearWrapIndex","i","specilStringPrefix","bind","findKeys","curLevelKeys","keyList","parentKey","matchWord","_","wordspace","key","unshift","context","_token","getWordUntilPosition","prefixWord","prefixToken","getPrefixWord","_word$word","lineNumber","getWordAtPosition","curLineWord","isFirstLevelProperty","getLineCount","triggerCharacter","suggestions","detail","kind","insertText","insertTextRules","_ref2","storyboardJsonSchema","concat","list","_list","matchCompletion","matchTriggerCharacter","Array","isArray","isInEvaluateBody","prefixEvaluateOperator","findPreviousMatch","suffixEvaluateOperator","findNextMatch","prefixParentKey","suffixParentKey","_advancedCompleters$p","_advancedCompleters$p2","_advancedCompleters$F","_advancedCompleters$F2","appProperties","k","Object","documentation","description","enum","join","brickNextKeywords","hit","info","warn","error","___CSS_LOADER_EXPORT___","module","id","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","method","_notRender","_validate","_bindFormItem","ReactNextElement","_get_bindFormItem","_set_bindFormItem","_get_validate","_set_validate","_get__notRender","_set__notRender","isFormItemElement","validateState","_render","notRender","hidden","$bindFormItem","parentNode","isFormElement"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ (()=>{var e,t,r,n,a,o,l,c,i,u,d,s,f,h,p,m,b,v,x,g,y,P,k={98986:(e,t,r)=>{Promise.all([r.e(7379),r.e(8657),r.e(8319),r.e(5476),r.e(178),r.e(2383)]).then(r.bind(r,92383))}},w={};function j(e){var t=w[e];if(void 0!==t)return t.exports;var r=w[e]={id:e,loaded:!1,exports:{}};return k[e].call(r.exports,r,r.exports,j),r.loaded=!0,r.exports}j.m=k,j.c=w,j.amdO={},j.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return j.d(t,{a:t}),t},j.d=(e,t)=>{for(var r in t)j.o(t,r)&&!j.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},j.f={},j.e=e=>Promise.all(Object.keys(j.f).reduce(((t,r)=>(j.f[r](e,t),t)),[])),j.u=e=>"chunks/"+e+"."+{178:"52a46b50",491:"58a3b522",628:"c8318776",873:"92b93270",1646:"09712b50",2014:"44a4dae7",2024:"99e3b01b",2108:"b9493cdd",2287:"8456ff19",2372:"a5db8cde",2383:"b7fe4330",2432:"dbb41a9b",2754:"0d40c795",2784:"17d5d74a",2993:"bf5fdbb3",3399:"40e38a3f",3458:"22dd99e7",3494:"53295751",3914:"7ab92f1d",4049:"760cd61b",4085:"ad7f4b15",4131:"53daaa04",4246:"7af13f22",4275:"9be09c16",4454:"7dbb7be2",4639:"c331664b",4717:"b46d0750",4795:"8a2b69e7",5151:"8bc39611",5178:"852e89f4",5202:"97c3f376",5476:"2ed43073",5628:"06a5c3fc",5637:"22194672",5725:"8abeed2f",5900:"392c08ff",5924:"59b43191",6162:"4309a14b",6205:"49f11623",6473:"f6dc6145",6635:"c4c37914",6650:"d0050981",7110:"174e25e0",7135:"cf4cec34",7164:"702ebb68",7379:"58598777",7672:"d1273a3c",7746:"edc40552",7822:"ce0d3b54",7915:"1f876f96",8008:"4e66a262",8147:"d73c6fed",8316:"02b58335",8319:"3666c8a2",8561:"511a427e",8657:"f54c151e",8691:"63c392be",8874:"e4554599",8947:"aa1a8cf8",9342:"450fbeec",9431:"b817d5c9",9549:"08993ffb",9758:"856a559d",9909:"f456c08d"}[e]+".js",j.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),j.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="@next-bricks/vs:",j.l=(r,n,a,o)=>{if(e[r])e[r].push(n);else{var l,c;if(void 0!==a)for(var i=document.getElementsByTagName("script"),u=0;u<i.length;u++){var d=i[u];if(d.getAttribute("src")==r||d.getAttribute("data-webpack")==t+a){l=d;break}}l||(c=!0,(l=document.createElement("script")).charset="utf-8",l.timeout=120,j.nc&&l.setAttribute("nonce",j.nc),l.setAttribute("data-webpack",t+a),l.src=r),e[r]=[n];var s=(t,n)=>{l.onerror=l.onload=null,clearTimeout(f);var a=e[r];if(delete e[r],l.parentNode&&l.parentNode.removeChild(l),a&&a.forEach((e=>e(n))),t)return t(n)},f=setTimeout(s.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=s.bind(null,l.onerror),l.onload=s.bind(null,l.onload),c&&document.head.appendChild(l)}},j.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},j.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{j.S={};var e={},t={};j.I=(r,n)=>{n||(n=[]);var a=t[r];if(a||(a=t[r]={}),!(n.indexOf(a)>=0)){if(n.push(a),e[r])return e[r];j.o(j.S,r)||(j.S[r]={});var o=j.S[r],l="@next-bricks/vs",c=(e,t,r,n)=>{var a=o[e]=o[e]||{},c=a[t];(!c||!c.loaded&&(!n!=!c.eager?n:l>c.from))&&(a[t]={get:r,from:l,eager:!!n})},i=[];return"default"===r&&(c("@easyops-cn/brick-next-pipes","0.4.0",(()=>Promise.all([j.e(5637),j.e(9758)]).then((()=>()=>j(25637))))),c("@next-core/cook","2.2.3",(()=>j.e(5151).then((()=>()=>j(25151))))),c("@next-core/element","1.1.1",(()=>j.e(9549).then((()=>()=>j(19549))))),c("@next-core/http","1.0.7",(()=>j.e(5202).then((()=>()=>j(35202))))),c("@next-core/i18n","1.0.22",(()=>Promise.all([j.e(2372),j.e(8561),j.e(7164)]).then((()=>()=>j(27164))))),c("@next-core/inject","1.0.15",(()=>Promise.all([j.e(5178),j.e(2432),j.e(7672)]).then((()=>()=>j(17672))))),c("@next-core/loader","1.3.4",(()=>j.e(4454).then((()=>()=>j(74454))))),c("@next-core/pipes","2.0.7",(()=>j.e(4275).then((()=>()=>j(74275))))),c("@next-core/react-element","1.0.9",(()=>Promise.all([j.e(8657),j.e(5476),j.e(6650),j.e(1646)]).then((()=>()=>j(21646))))),c("@next-core/react-runtime","1.0.52",(()=>Promise.all([j.e(8657),j.e(4639),j.e(7822)]).then((()=>()=>j(27822))))),c("@next-core/runtime","1.17.5",(()=>Promise.all([j.e(4131),j.e(8319),j.e(5178),j.e(8874),j.e(2372),j.e(5628),j.e(4795)]).then((()=>()=>j(54131))))),c("@next-core/supply","2.1.2",(()=>Promise.all([j.e(5178),j.e(2432),j.e(8874),j.e(4049)]).then((()=>()=>j(54049))))),c("@next-core/theme","1.1.1",(()=>Promise.all([j.e(2108),j.e(4085)]).then((()=>()=>j(62108))))),c("@next-core/utils/general","1.5.5",(()=>j.e(7110).then((()=>()=>j(27110))))),c("@next-core/utils/storyboard","1.5.5",(()=>Promise.all([j.e(8319),j.e(628),j.e(3458)]).then((()=>()=>j(43458))))),c("history","4.10.1",(()=>j.e(2024).then((()=>()=>j(82024))))),c("i18next-browser-languagedetector","7.0.1",(()=>j.e(2754).then((()=>()=>j(42754))))),c("i18next","22.5.0",(()=>j.e(2993).then((()=>()=>j(92993))))),c("js-yaml","3.14.1",(()=>j.e(9431).then((()=>()=>j(49431))))),c("lodash","4.17.21",(()=>j.e(6635).then((()=>()=>j(76635))))),c("moment/locale/zh-cn.js","2.29.4",(()=>Promise.all([j.e(8008),j.e(7915)]).then((()=>()=>j(7414))))),c("moment","2.29.4",(()=>Promise.all([j.e(8008),j.e(7915)]).then((()=>()=>j(19034))))),c("react-dom","0.0.0-experimental-ee8509801-20230117",(()=>Promise.all([j.e(8316),j.e(8657)]).then((()=>()=>j(28316))))),c("react","0.0.0-experimental-ee8509801-20230117",(()=>j.e(2784).then((()=>()=>j(2784)))))),e[r]=i.length?Promise.all(i).then((()=>e[r]=1)):1}}})(),(()=>{var e;j.g.importScripts&&(e=j.g.location+"");var t=j.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var n=r.length-1;n>-1&&!e;)e=r[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),j.p=e+"../"})(),r=e=>{var t=e=>e.split(".").map((e=>+e==e?+e:e)),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),n=r[1]?t(r[1]):[];return r[2]&&(n.length++,n.push.apply(n,t(r[2]))),r[3]&&(n.push([]),n.push.apply(n,t(r[3]))),n},n=(e,t)=>{e=r(e),t=r(t);for(var n=0;;){if(n>=e.length)return n<t.length&&"u"!=(typeof t[n])[0];var a=e[n],o=(typeof a)[0];if(n>=t.length)return"u"==o;var l=t[n],c=(typeof l)[0];if(o!=c)return"o"==o&&"n"==c||"s"==c||"u"==o;if("o"!=o&&"u"!=o&&a!=l)return a<l;n++}},a=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,o=1;o<e.length;o++)n--,r+="u"==(typeof(c=e[o]))[0]?"-":(n>0?".":"")+(n=2,c);return r}var l=[];for(o=1;o<e.length;o++){var c=e[o];l.push(0===c?"not("+i()+")":1===c?"("+i()+" || "+i()+")":2===c?l.pop()+" "+l.pop():a(c))}return i();function i(){return l.pop().replace(/^\((.+)\)$/,"$1")}},o=(e,t)=>{if(0 in e){t=r(t);var n=e[0],a=n<0;a&&(n=-n-1);for(var l=0,c=1,i=!0;;c++,l++){var u,d,s=c<e.length?(typeof e[c])[0]:"";if(l>=t.length||"o"==(d=(typeof(u=t[l]))[0]))return!i||("u"==s?c>n&&!a:""==s!=a);if("u"==d){if(!i||"u"!=s)return!1}else if(i)if(s==d)if(c<=n){if(u!=e[c])return!1}else{if(a?u>e[c]:u<e[c])return!1;u!=e[c]&&(i=!1)}else if("s"!=s&&"n"!=s){if(a||c<=n)return!1;i=!1,c--}else{if(c<=n||d<s!=a)return!1;i=!1}else"s"!=s&&"n"!=s&&(i=!1,c--)}}var f=[],h=f.pop.bind(f);for(l=1;l<e.length;l++){var p=e[l];f.push(1==p?h()|h():2==p?h()&h():p?o(p,t):!h())}return!!h()},l=(e,t)=>{var r=e[t];return(t=Object.keys(r).reduce(((e,t)=>!e||n(e,t)?t:e),0))&&r[t]},c=(e,t)=>{var r=e[t];return Object.keys(r).reduce(((e,t)=>!e||!r[e].loaded&&n(e,t)?t:e),0)},i=(e,t,r,n)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+a(n)+")",u=(e,t,r,n)=>{var a=c(e,r);return h(e[r][a])},d=(e,t,r,n)=>{var a=c(e,r);return o(n,a)||f(i(e,r,a,n)),h(e[r][a])},s=(e,t,r)=>{var a=e[t];return(t=Object.keys(a).reduce(((e,t)=>!o(r,t)||e&&!n(e,t)?e:t),0))&&a[t]},f=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},h=e=>(e.loaded=1,e.get()),m=(p=e=>function(t,r,n,a){var o=j.I(t);return o&&o.then?o.then(e.bind(e,t,j.S[t],r,n,a)):e(t,j.S[t],r,n,a)})(((e,t,r,n)=>t&&j.o(t,r)?h(l(t,r)):n())),b=p(((e,t,r,n)=>t&&j.o(t,r)?u(t,0,r):n())),v=p(((e,t,r,n,a)=>t&&j.o(t,r)?d(t,0,r,n):a())),x=p(((e,t,r,n,a)=>{var o=t&&j.o(t,r)&&s(t,r,n);return o?h(o):a()})),g={},y={48657:()=>x("default","react",[6,0,0,0,,"experimental-ee8509801-20230117"],(()=>j.e(2784).then((()=>()=>j(2784))))),98319:()=>v("default","@next-core/cook",[1,2,2,3],(()=>j.e(5151).then((()=>()=>j(25151))))),75476:()=>x("default","@next-core/element",[1,1,1,1],(()=>j.e(4717).then((()=>()=>j(19549))))),16989:()=>x("default","@next-core/react-runtime",[1,1,0,52],(()=>Promise.all([j.e(4639),j.e(3494)]).then((()=>()=>j(27822))))),29049:()=>x("default","@next-core/react-element",[1,1,0,9],(()=>Promise.all([j.e(6650),j.e(7746)]).then((()=>()=>j(21646))))),42308:()=>b("default","js-yaml",(()=>j.e(9431).then((()=>()=>j(49431))))),65254:()=>v("default","@next-core/theme",[1,1,1,1],(()=>j.e(2108).then((()=>()=>j(62108))))),78035:()=>b("default","lodash",(()=>j.e(6635).then((()=>()=>j(76635))))),5872:()=>v("default","moment",[1,2,27,0],(()=>Promise.all([j.e(8008),j.e(7915)]).then((()=>()=>j(19034))))),35899:()=>v("default","js-yaml",[1,3,14,0],(()=>j.e(9431).then((()=>()=>j(49431))))),96976:()=>v("default","lodash",[1,4,17,19],(()=>j.e(6635).then((()=>()=>j(76635))))),32372:()=>v("default","@next-core/utils/general",[1,1,5,5],(()=>j.e(7110).then((()=>()=>j(27110))))),54829:()=>v("default","i18next",[1,22,5,0],(()=>j.e(2993).then((()=>()=>j(92993))))),70860:()=>b("default","@next-core/i18n",(()=>()=>j(27164))),75366:()=>v("default","i18next-browser-languagedetector",[1,7,0,1],(()=>j.e(2754).then((()=>()=>j(42754))))),45178:()=>v("default","lodash",[1,4,17,21],(()=>j.e(6635).then((()=>()=>j(76635))))),22432:()=>v("default","@next-core/pipes",[1,2,0,7],(()=>j.e(4275).then((()=>()=>j(74275))))),665:()=>v("default","@easyops-cn/brick-next-pipes",[2,0,4,0],(()=>Promise.all([j.e(5637),j.e(9758)]).then((()=>()=>j(25637))))),46650:()=>m("default","react-dom",(()=>j.e(8316).then((()=>()=>j(28316))))),74639:()=>v("default","@next-core/runtime",[1,1,17,5],(()=>Promise.all([j.e(4131),j.e(8319),j.e(5178),j.e(8874),j.e(2372),j.e(5628)]).then((()=>()=>j(54131))))),18874:()=>v("default","moment",[1,2,29,4],(()=>Promise.all([j.e(8008),j.e(7915)]).then((()=>()=>j(19034))))),17374:()=>v("default","@next-core/inject",[1,1,0,15],(()=>Promise.all([j.e(2432),j.e(5725)]).then((()=>()=>j(17672))))),18525:()=>v("default","moment/locale/zh-cn.js",[1,2,29,4],(()=>Promise.all([j.e(8008),j.e(7915)]).then((()=>()=>j(7414))))),30234:()=>v("default","@next-core/utils/storyboard",[1,1,5,5],(()=>Promise.all([j.e(628),j.e(8691)]).then((()=>()=>j(43458))))),38540:()=>v("default","@next-core/supply",[1,2,1,2],(()=>Promise.all([j.e(2432),j.e(6473)]).then((()=>()=>j(54049))))),47704:()=>v("default","@next-core/http",[1,1,0,7],(()=>j.e(3914).then((()=>()=>j(35202))))),48201:()=>v("default","@next-core/loader",[1,1,3,4],(()=>j.e(873).then((()=>()=>j(74454))))),67857:()=>v("default","history",[1,4,10,1],(()=>j.e(2024).then((()=>()=>j(82024))))),77355:()=>v("default","@next-core/i18n",[1,1,0,22],(()=>Promise.all([j.e(8561),j.e(6205)]).then((()=>()=>j(27164))))),10628:()=>b("default","@next-core/utils/general",(()=>j.e(7110).then((()=>()=>j(27110)))))},P={178:[16989,29049,42308,65254,78035],628:[10628],2372:[32372],2432:[22432],4275:[665],4639:[74639],5178:[45178],5476:[75476],5628:[17374,18525,30234,38540,47704,48201,67857,77355],6650:[46650],8319:[98319],8561:[54829,70860,75366],8657:[48657],8874:[18874],9758:[5872,35899,96976]},j.f.consumes=(e,t)=>{j.o(P,e)&&P[e].forEach((e=>{if(j.o(g,e))return t.push(g[e]);var r=t=>{g[e]=0,j.m[e]=r=>{delete j.c[e],r.exports=t()}},n=t=>{delete g[e],j.m[e]=r=>{throw delete j.c[e],t}};try{var a=y[e]();a.then?t.push(g[e]=a.then(r).catch(n)):r(a)}catch(e){n(e)}}))},(()=>{j.b=document.baseURI||self.location.href;var e={179:0};j.f.j=(t,r)=>{var n=j.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else if(/^(5(178|476|628)|8(319|561|657|874)|(17|62|975)8|2372|2432|4639|6650)$/.test(t))e[t]=0;else{var a=new Promise(((r,a)=>n=e[t]=[r,a]));r.push(n[2]=a);var o=j.p+j.u(t),l=new Error;j.l(o,(r=>{if(j.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var a=r&&("load"===r.type?"missing":r.type),o=r&&r.target&&r.target.src;l.message="Loading chunk "+t+" failed.\n("+a+": "+o+")",l.name="ChunkLoadError",l.type=a,l.request=o,n[1](l)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,a,[o,l,c]=r,i=0;if(o.some((t=>0!==e[t]))){for(n in l)j.o(l,n)&&(j.m[n]=l[n]);c&&c(j)}for(t&&t(r);i<o.length;i++)a=o[i],j.o(e,a)&&e[a]&&e[a][0](),e[a]=0},r=self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),j.nc=void 0,j(98986)})();
2
+ //# sourceMappingURL=main.9c392a4e.js.map