@next-bricks/vs 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bricks.json CHANGED
@@ -10,5 +10,5 @@
10
10
  "eo-form-item"
11
11
  ]
12
12
  },
13
- "filePath": "bricks/vs/dist/index.a513d002.js"
13
+ "filePath": "bricks/vs/dist/index.6525ea91.js"
14
14
  }
@@ -1,2 +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),d=n.n(h),m=n(75476),c=n(29049),g=n(16989),{method:v}=(0,m.createDecorators)();r=v();var p=new WeakMap,b=new WeakMap,f=new WeakMap,Z=new WeakMap,k=new WeakMap,w=new WeakMap;class C extends c.ReactNextElement{constructor(){super(...arguments),(0,s.Z)(this,w,{get:S,set:E}),(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,w)}set $bindFormItem(e){(0,l.Z)(this,w,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 S(){return(0,u.Z)(this,k)}function E(e){(0,l.Z)(this,k,e)}[i]=(0,o.Z)(C,[[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,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}},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,de,me,ce,ge,ve,pe,be,fe,Ze,ke,we,Ce,ye,Le,Ne,Me,Se,Ee,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,tt,nt=n(98319);(0,T.z2)(x),(0,I.z2)(x),(0,R.z2)(x,"brick_next_yaml"),(0,W.z2)(x);var rt,{defineElement:it,property:at,event:st}=(0,m.createDecorators)(),lt=(0,c.wrapBrick)("eo-form-item");he=it("vs.code-editor",{shadowOptions:!1}),de=at(),ce=at(),ve=at({attribute:!1}),be=at(),Ze=at(),we=at({type:Boolean}),ye=at({type:Boolean}),Ne=at(),Se=at({type:Number}),xe=at({attribute:!1}),Ie=at({attribute:!1}),We=at({attribute:!1}),Pe=at({attribute:!1}),Ke=at({type:Number}),Ve=at({attribute:!1}),Oe=at(),He=st({type:"code.change"}),je=st({type:"user.input"}),Ye=st({type:"token.click"});var ut=new WeakMap,ot=new WeakMap,ht=new WeakMap,dt=new WeakMap,mt=new WeakMap,ct=new WeakMap,gt=new WeakMap,vt=new WeakMap,pt=new WeakMap,bt=new WeakMap,ft=new WeakMap,Zt=new WeakMap,kt=new WeakMap,wt=new WeakMap,Ct=new WeakMap,yt=new WeakMap,Lt=new WeakMap,Nt=new WeakMap,Mt=new WeakMap,St=new WeakMap,Et=new WeakMap,xt=new WeakMap,Tt=new WeakMap,It=new WeakMap,Rt=new WeakMap;function Wt(e){Ue(this,e)}function At(){return De(this)}function Pt(e){Xe(this,e)}function _t(){return Ge(this)}function Kt(e){et(this,e)}function zt(){return Je(this)}function Vt(e){var{value:t,language:n,theme:r,minLines:i,maxLines:o,height:m,automaticLayout:c,completers:v,advancedCompleters:p,markers:b,links:f,validateState:Z,onChange:k,onHighlightClick:w}=e,C=null!=t?t:"",y=null!=n?n:"plaintext",L=null!=r?r:"auto",N=null!=i?i:3,M=null!=o?o:1/0,S=null!=m?m:500,E=(0,h.useRef)(null),T=(0,h.useRef)(),I=(0,h.useRef)(),R=(0,h.useRef)({width:300,height:Bt(C,N,M)}),[W,A]=(0,h.useState)(),G=(0,h.useRef)(c),X=(0,g.useCurrentTheme)();(0,h.useEffect)((()=>{x.editor.setTheme("auto"===L?"dark"===X||"dark-v2"===X?"vs-dark":"vs":L)}),[X,L]),(0,h.useEffect)((()=>{if(I.current){var e=I.current.getModel();x.editor.setModelLanguage(e,y),(0,K.isEqual)(e.getValue(),C)||e.setValue(C)}}),[C,y]),(0,h.useEffect)((()=>{if("brick_next_yaml"===y){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}),d={startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:l.startColumn,endColumn:l.endColumn},m=1===l.startColumn,{curLevelKeys:c}=$(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:d},{label:"<%= %>",detail:"Track Evalute Body",kind:x.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:x.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:d}]};if(m)return{suggestions:(null!=e?e:[]).filter((e=>!c.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:d})))};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:d})))};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:d})}))}}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,w,C,y;if(u&&["CTX","STATE"].includes(u)&&t)return{suggestions:(null!==(k=null===(w=t[u])||void 0===w?void 0:w.completers)&&void 0!==k?k:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:d})))};if("FN"===u&&"."===i.triggerCharacter&&t)return{suggestions:(null!==(C=null===(y=t.FN)||void 0===y?void 0:y.completers)&&void 0!==C?C:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:d})))};if("APP"===u&&"."===i.triggerCharacter){var L=(0,K.get)(q,"definitions.MicroApp.properties"),N=[];for(var[M,S]of Object.entries(L))N.push({label:M,kind:x.languages.CompletionItemKind.Value,documentation:S.description,detail:S.enum?S.enum.join("|"):S.type,insertText:M,range:d});return{suggestions:N}}return[".",":"].includes(o)?{suggestions:[]}:{suggestions:D.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:d})))}}return/^[\s|-]*\w$/.test(h)?{suggestions:U.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:d}))).filter((e=>!c.includes(e.label)))}:{suggestions:[]}})(v,p),t=x.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[v,p,y]);var Y=(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,d=r-i-a.length,m=r-i-t.lineIndent;if("string"==typeof a&&/^\s*<%[~=]?\s/.test(a)&&/\s%>\s*$/.test(a)){var c,g=a,v=null===(c=a.match(/\n/g))||void 0===c?void 0:c.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,d=0,m=0}var Z={source:g,startLineNumber:o,endLineNumber:h,startColumn:d,endColumn:m,isString:['"',"'"].includes(t.input[i+d-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)}},t=void 0;if(I.current){var n=I.current.getModel();try{if(t=P().load(C,{listener:e.listen()}),(f||b)&&I.current){var r,i=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:r}=e,a=[],s=(0,nt.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,d,m,c,g,v=/<%[ ]+/.test(s.prefix);i.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===(m=o.end)||void 0===m?void 0:m.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(c=o.start)||void 0===c?void 0:c.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;i.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:r+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:r+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(r=T.current)||void 0===r||r.set(i.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 o=i.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(n,"brick_next_yaml",o)}}}catch(e){var h;x.editor.setModelMarkers(n,"brick_next_yaml",[]),null==T||null===(h=T.current)||void 0===h||h.set([])}}return t}),[C,f,b]);return(0,h.useLayoutEffect)((()=>{var e;if("fit-content"===G.current&&E.current){R.current.width=E.current.getBoundingClientRect().width,null===(e=I.current)||void 0===e||e.layout(R.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!==R.current.width&&(R.current.width=r,null===(n=I.current)||void 0===n||n.layout(R.current));break}}));return t.observe(E.current),()=>{t.disconnect()}}}),[]),(0,h.useLayoutEffect)((()=>{if("fit-container"===G.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((()=>{A(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,h.useEffect)((()=>{"fit-container"!==G.current&&"fit-content"!==G.current&&A(S)}),[S]),(0,h.useEffect)((()=>{if(!I.current&&E.current){var e=x.editor.createModel(C,y);I.current=x.editor.create(E.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==G.current,fontSize:12,lineHeight:O,scrollbar:{horizontalScrollbarSize:F,verticalScrollbarSize:F,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:H,bottom:"fit-content"==G.current?void 0:H},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},quickSuggestions:{strings:!0,other:!0,comments:!0}}),T.current=I.current.createDecorationsCollection()}}),[C,y]),(0,h.useEffect)((()=>{var e=I.current;if("brick_next_yaml"===y&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=T.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)&&w(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=T.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 Y(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[y,w,X,L,Y]),(0,h.useEffect)((()=>{var e=I.current;if(e&&E.current&&"fit-content"===G.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=Ot(t.contentHeight,N,M);n!==R.current.height&&(R.current.height=n,e.layout(R.current))}})),n=Ot(e.getContentHeight(),N,M);return n!==R.current.height&&(R.current.height=n,e.layout(R.current)),()=>{t.dispose()}}}),[M,N]),(0,h.useEffect)((()=>{if(I.current){var e=I.current.getModel(),t=e.onDidChangeContent((t=>{var n=Y();k(e.getValue(),n,t.isFlush)}));return()=>{t.dispose()}}}),[k,Y]),(0,h.useEffect)((()=>()=>{var e,t,n;null===(e=I.current)||void 0===e||null===(t=e.getModel())||void 0===t||t.dispose(),null===(n=I.current)||void 0===n||n.dispose()}),[]),d().createElement("div",{ref:E,style:(0,a.Z)({height:W},"error"===Z?{outline:"1px solid var(--antd-error-color)"}:{})})}function Bt(e,t,n){return Ft(Math.min(n,Math.max(t,e.split("\n").length)))}function Ot(e,t,n){var r=e;return(e-H)%O==0&&(r=e+F),Math.min(Ft(n),Math.max(r,Ft(t)))}function Ft(e){return e*O+F+H}({e:[me,ge,pe,fe,ke,Ce,Le,Me,Ee,Te,Re,Ae,_e,ze,Be,Fe,qe,De,Ue,$e,Ge,Xe,Qe,Je,et,tt],c:[rt,oe]}=(0,o.Z)(class extends C{constructor(){super(...arguments),(0,s.Z)(this,Tt,{get:zt,set:Kt}),(0,s.Z)(this,St,{get:_t,set:Pt}),(0,s.Z)(this,Nt,{get:At,set:Wt}),(0,s.Z)(this,ut,{writable:!0,value:(tt(this),me(this))}),(0,s.Z)(this,ot,{writable:!0,value:ge(this)}),(0,s.Z)(this,ht,{writable:!0,value:pe(this)}),(0,s.Z)(this,dt,{writable:!0,value:fe(this)}),(0,s.Z)(this,mt,{writable:!0,value:ke(this)}),(0,s.Z)(this,ct,{writable:!0,value:Ce(this)}),(0,s.Z)(this,gt,{writable:!0,value:Le(this)}),(0,s.Z)(this,vt,{writable:!0,value:Me(this)}),(0,s.Z)(this,pt,{writable:!0,value:Ee(this)}),(0,s.Z)(this,bt,{writable:!0,value:Te(this)}),(0,s.Z)(this,ft,{writable:!0,value:Re(this)}),(0,s.Z)(this,Zt,{writable:!0,value:Ae(this)}),(0,s.Z)(this,kt,{writable:!0,value:_e(this)}),(0,s.Z)(this,wt,{writable:!0,value:ze(this)}),(0,s.Z)(this,Ct,{writable:!0,value:Be(this)}),(0,s.Z)(this,yt,{writable:!0,value:Fe(this)}),(0,s.Z)(this,Lt,{writable:!0,value:qe(this)}),(0,s.Z)(this,Mt,{writable:!0,value:$e(this)}),(0,s.Z)(this,Et,{writable:!0,value:(e,t,n)=>{var r;null===(r=this.getFormElement())||void 0===r||r.formStore.onChange(this.name,e),(0,u.Z)(this,Nt).emit(t),n||(0,u.Z)(this,St).emit(t)}}),(0,s.Z)(this,xt,{writable:!0,value:Qe(this)}),(0,s.Z)(this,It,{writable:!0,value:e=>{(0,u.Z)(this,Tt).emit(e)}}),(0,s.Z)(this,Rt,{writable:!0,value:e=>{try{P().load(e)}catch(e){return"请填写正确的格式"}return""}})}get name(){return(0,u.Z)(this,ut)}set name(e){(0,l.Z)(this,ut,e)}get label(){return(0,u.Z)(this,ot)}set label(e){(0,l.Z)(this,ot,e)}get value(){return(0,u.Z)(this,ht)}set value(e){(0,l.Z)(this,ht,e)}get language(){return(0,u.Z)(this,dt)}set language(e){(0,l.Z)(this,dt,e)}get theme(){return(0,u.Z)(this,mt)}set theme(e){(0,l.Z)(this,mt,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,gt)}set readOnly(e){(0,l.Z)(this,gt,e)}get automaticLayout(){return(0,u.Z)(this,vt)}set automaticLayout(e){(0,l.Z)(this,vt,e)}get minLines(){return(0,u.Z)(this,pt)}set minLines(e){(0,l.Z)(this,pt,e)}get completers(){return(0,u.Z)(this,bt)}set completers(e){(0,l.Z)(this,bt,e)}get advancedCompleters(){return(0,u.Z)(this,ft)}set advancedCompleters(e){(0,l.Z)(this,ft,e)}get markers(){return(0,u.Z)(this,Zt)}set markers(e){(0,l.Z)(this,Zt,e)}get links(){return(0,u.Z)(this,kt)}set links(e){(0,l.Z)(this,kt,e)}get maxLines(){return(0,u.Z)(this,wt)}set maxLines(e){(0,l.Z)(this,wt,e)}get height(){return(0,u.Z)(this,Ct)}set height(e){(0,l.Z)(this,Ct,e)}get message(){return(0,u.Z)(this,yt)}set message(e){(0,l.Z)(this,yt,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return d().createElement(lt,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required,validator:(0,u.Z)(this,Rt)},d().createElement(Vt,{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,validateState:this.validateState,onChange:(0,u.Z)(this,Et),onHighlightClick:(0,u.Z)(this,It)}))}},[[de,1,"name"],[ce,1,"label"],[ve,1,"value"],[be,1,"language"],[Ze,1,"theme"],[we,1,"required"],[ye,1,"readOnly"],[Ne,1,"automaticLayout"],[Se,1,"minLines"],[xe,1,"completers"],[Ie,1,"advancedCompleters"],[We,1,"markers"],[Pe,1,"links"],[Ke,1,"maxLines"],[Ve,1,"height"],[Oe,1,"message"],[He,1,"codeChange",function(){return(0,u.Z)(this,Lt)},function(e){(0,l.Z)(this,Lt,e)}],[je,1,"userInput",function(){return(0,u.Z)(this,Mt)},function(e){(0,l.Z)(this,Mt,e)}],[Ye,1,"highlighClickEvent",function(){return(0,u.Z)(this,xt)},function(e){(0,l.Z)(this,xt,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.d28fda57.js.map
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),d=n.n(h),m=n(75476),c=n(29049),g=n(57482),{method:v}=(0,m.createDecorators)();r=v();var p=new WeakMap,b=new WeakMap,f=new WeakMap,Z=new WeakMap,k=new WeakMap,w=new WeakMap;class C extends c.ReactNextElement{constructor(){super(...arguments),(0,s.Z)(this,w,{get:S,set:E}),(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,w)}set $bindFormItem(e){(0,l.Z)(this,w,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 S(){return(0,u.Z)(this,k)}function E(e){(0,l.Z)(this,k,e)}[i]=(0,o.Z)(C,[[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,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}},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,de,me,ce,ge,ve,pe,be,fe,Ze,ke,we,Ce,ye,Le,Ne,Me,Se,Ee,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,tt,nt=n(98319);(0,T.z2)(x),(0,I.z2)(x),(0,R.z2)(x,"brick_next_yaml"),(0,W.z2)(x);var rt,{defineElement:it,property:at,event:st}=(0,m.createDecorators)(),lt=(0,c.wrapBrick)("eo-form-item");he=it("vs.code-editor",{shadowOptions:!1}),de=at(),ce=at(),ve=at({attribute:!1}),be=at(),Ze=at(),we=at({type:Boolean}),ye=at({type:Boolean}),Ne=at(),Se=at({type:Number}),xe=at({attribute:!1}),Ie=at({attribute:!1}),We=at({attribute:!1}),Pe=at({attribute:!1}),Ke=at({type:Number}),Ve=at({attribute:!1}),Oe=at(),He=st({type:"code.change"}),je=st({type:"user.input"}),Ye=st({type:"token.click"});var ut=new WeakMap,ot=new WeakMap,ht=new WeakMap,dt=new WeakMap,mt=new WeakMap,ct=new WeakMap,gt=new WeakMap,vt=new WeakMap,pt=new WeakMap,bt=new WeakMap,ft=new WeakMap,Zt=new WeakMap,kt=new WeakMap,wt=new WeakMap,Ct=new WeakMap,yt=new WeakMap,Lt=new WeakMap,Nt=new WeakMap,Mt=new WeakMap,St=new WeakMap,Et=new WeakMap,xt=new WeakMap,Tt=new WeakMap,It=new WeakMap,Rt=new WeakMap;function Wt(e){Ue(this,e)}function At(){return De(this)}function Pt(e){Xe(this,e)}function _t(){return Ge(this)}function Kt(e){et(this,e)}function zt(){return Je(this)}function Vt(e){var{value:t,language:n,theme:r,minLines:i,maxLines:o,height:m,automaticLayout:c,completers:v,advancedCompleters:p,markers:b,links:f,validateState:Z,onChange:k,onHighlightClick:w}=e,C=null!=t?t:"",y=null!=n?n:"plaintext",L=null!=r?r:"auto",N=null!=i?i:3,M=null!=o?o:1/0,S=null!=m?m:500,E=(0,h.useRef)(null),T=(0,h.useRef)(),I=(0,h.useRef)(),R=(0,h.useRef)({width:300,height:Bt(C,N,M)}),[W,A]=(0,h.useState)(),G=(0,h.useRef)(c),X=(0,g.useCurrentTheme)();(0,h.useEffect)((()=>{x.editor.setTheme("auto"===L?"dark"===X||"dark-v2"===X?"vs-dark":"vs":L)}),[X,L]),(0,h.useEffect)((()=>{if(I.current){var e=I.current.getModel();x.editor.setModelLanguage(e,y),(0,K.isEqual)(e.getValue(),C)||e.setValue(C)}}),[C,y]),(0,h.useEffect)((()=>{if("brick_next_yaml"===y){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}),d={startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:l.startColumn,endColumn:l.endColumn},m=1===l.startColumn,{curLevelKeys:c}=$(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:d},{label:"<%= %>",detail:"Track Evalute Body",kind:x.languages.CompletionItemKind.Value,insertText:"%= ${0} %>",insertTextRules:x.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:d}]};if(m)return{suggestions:(null!=e?e:[]).filter((e=>!c.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:d})))};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:d})))};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:d})}))}}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,w,C,y;if(u&&["CTX","STATE"].includes(u)&&t)return{suggestions:(null!==(k=null===(w=t[u])||void 0===w?void 0:w.completers)&&void 0!==k?k:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:d})))};if("FN"===u&&"."===i.triggerCharacter&&t)return{suggestions:(null!==(C=null===(y=t.FN)||void 0===y?void 0:y.completers)&&void 0!==C?C:[]).map((e=>({label:e.label,insertText:e.label,kind:x.languages.CompletionItemKind.Value,range:d})))};if("APP"===u&&"."===i.triggerCharacter){var L=(0,K.get)(q,"definitions.MicroApp.properties"),N=[];for(var[M,S]of Object.entries(L))N.push({label:M,kind:x.languages.CompletionItemKind.Value,documentation:S.description,detail:S.enum?S.enum.join("|"):S.type,insertText:M,range:d});return{suggestions:N}}return[".",":"].includes(o)?{suggestions:[]}:{suggestions:D.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:d})))}}return/^[\s|-]*\w$/.test(h)?{suggestions:U.map((e=>({label:e,insertText:e,kind:x.languages.CompletionItemKind.Keyword,range:d}))).filter((e=>!c.includes(e.label)))}:{suggestions:[]}})(v,p),t=x.languages.registerCompletionItemProvider("brick_next_yaml",{provideCompletionItems:e,triggerCharacters:[".",":","<"]});return()=>{t.dispose()}}}),[v,p,y]);var Y=(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,d=r-i-a.length,m=r-i-t.lineIndent;if("string"==typeof a&&/^\s*<%[~=]?\s/.test(a)&&/\s%>\s*$/.test(a)){var c,g=a,v=null===(c=a.match(/\n/g))||void 0===c?void 0:c.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,d=0,m=0}var Z={source:g,startLineNumber:o,endLineNumber:h,startColumn:d,endColumn:m,isString:['"',"'"].includes(t.input[i+d-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)}},t=void 0;if(I.current){var n=I.current.getModel();try{if(t=P().load(C,{listener:e.listen()}),(f||b)&&I.current){var r,i=[];if(e.getTokens().forEach((e=>{var{startLineNumber:t,endLineNumber:n,startColumn:r}=e,a=[],s=(0,nt.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,d,m,c,g,v=/<%[ ]+/.test(s.prefix);i.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===(m=o.end)||void 0===m?void 0:m.line)-Number(v),startColumn:(v&&1===(null==o?void 0:o.start.line)?s.prefix.length:0)+(null==o||null===(c=o.start)||void 0===c?void 0:c.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;i.push({token:null===(p=a.object)||void 0===p?void 0:p.name,property:a.property.name,startLineNumber:t,endLineNumber:n,startColumn:r+l+(null===(b=s.prefix)||void 0===b?void 0:b.length)+Number(!e.isString),endColumn:r+u+(null===(f=s.prefix)||void 0===f?void 0:f.length)+Number(!e.isString)})}}))})),null===(r=T.current)||void 0===r||r.set(i.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 o=i.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(n,"brick_next_yaml",o)}}}catch(e){var h;x.editor.setModelMarkers(n,"brick_next_yaml",[]),null==T||null===(h=T.current)||void 0===h||h.set([])}}return t}),[C,f,b]);return(0,h.useLayoutEffect)((()=>{var e;if("fit-content"===G.current&&E.current){R.current.width=E.current.getBoundingClientRect().width,null===(e=I.current)||void 0===e||e.layout(R.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!==R.current.width&&(R.current.width=r,null===(n=I.current)||void 0===n||n.layout(R.current));break}}));return t.observe(E.current),()=>{t.disconnect()}}}),[]),(0,h.useLayoutEffect)((()=>{if("fit-container"===G.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((()=>{A(e.offsetHeight)}));return t.observe(e),()=>{t.disconnect()}}}}),[]),(0,h.useEffect)((()=>{"fit-container"!==G.current&&"fit-content"!==G.current&&A(S)}),[S]),(0,h.useEffect)((()=>{if(!I.current&&E.current){var e=x.editor.createModel(C,y);I.current=x.editor.create(E.current,{model:e,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,insertSpaces:!0,automaticLayout:"fit-content"!==G.current,fontSize:12,lineHeight:O,scrollbar:{horizontalScrollbarSize:F,verticalScrollbarSize:F,horizontalSliderSize:8,verticalSliderSize:8,alwaysConsumeMouseWheel:!1},padding:{top:H,bottom:"fit-content"==G.current?void 0:H},overviewRulerBorder:!1,mouseWheelScrollSensitivity:.5,suggest:{insertMode:"insert",preview:!0},quickSuggestions:{strings:!0,other:!0,comments:!0}}),T.current=I.current.createDecorationsCollection()}}),[C,y]),(0,h.useEffect)((()=>{var e=I.current;if("brick_next_yaml"===y&&e){var t=e.getModel(),n=e.onMouseDown((function(e){var n,r,i=T.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)&&w(t.getValueInRange(n))}))})),r=e.onMouseMove((function(e){var t=T.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 Y(),()=>{null==r||r.dispose(),null==n||n.dispose()}}}),[y,w,X,L,Y]),(0,h.useEffect)((()=>{var e=I.current;if(e&&E.current&&"fit-content"===G.current){var t=e.onDidContentSizeChange((t=>{if(t.contentHeightChanged){var n=Ot(t.contentHeight,N,M);n!==R.current.height&&(R.current.height=n,e.layout(R.current))}})),n=Ot(e.getContentHeight(),N,M);return n!==R.current.height&&(R.current.height=n,e.layout(R.current)),()=>{t.dispose()}}}),[M,N]),(0,h.useEffect)((()=>{if(I.current){var e=I.current.getModel(),t=e.onDidChangeContent((t=>{var n=Y();k(e.getValue(),n,t.isFlush)}));return()=>{t.dispose()}}}),[k,Y]),(0,h.useEffect)((()=>()=>{var e,t,n;null===(e=I.current)||void 0===e||null===(t=e.getModel())||void 0===t||t.dispose(),null===(n=I.current)||void 0===n||n.dispose()}),[]),d().createElement("div",{ref:E,style:(0,a.Z)({height:W},"error"===Z?{outline:"1px solid var(--antd-error-color)"}:{})})}function Bt(e,t,n){return Ft(Math.min(n,Math.max(t,e.split("\n").length)))}function Ot(e,t,n){var r=e;return(e-H)%O==0&&(r=e+F),Math.min(Ft(n),Math.max(r,Ft(t)))}function Ft(e){return e*O+F+H}({e:[me,ge,pe,fe,ke,Ce,Le,Me,Ee,Te,Re,Ae,_e,ze,Be,Fe,qe,De,Ue,$e,Ge,Xe,Qe,Je,et,tt],c:[rt,oe]}=(0,o.Z)(class extends C{constructor(){super(...arguments),(0,s.Z)(this,Tt,{get:zt,set:Kt}),(0,s.Z)(this,St,{get:_t,set:Pt}),(0,s.Z)(this,Nt,{get:At,set:Wt}),(0,s.Z)(this,ut,{writable:!0,value:(tt(this),me(this))}),(0,s.Z)(this,ot,{writable:!0,value:ge(this)}),(0,s.Z)(this,ht,{writable:!0,value:pe(this)}),(0,s.Z)(this,dt,{writable:!0,value:fe(this)}),(0,s.Z)(this,mt,{writable:!0,value:ke(this)}),(0,s.Z)(this,ct,{writable:!0,value:Ce(this)}),(0,s.Z)(this,gt,{writable:!0,value:Le(this)}),(0,s.Z)(this,vt,{writable:!0,value:Me(this)}),(0,s.Z)(this,pt,{writable:!0,value:Ee(this)}),(0,s.Z)(this,bt,{writable:!0,value:Te(this)}),(0,s.Z)(this,ft,{writable:!0,value:Re(this)}),(0,s.Z)(this,Zt,{writable:!0,value:Ae(this)}),(0,s.Z)(this,kt,{writable:!0,value:_e(this)}),(0,s.Z)(this,wt,{writable:!0,value:ze(this)}),(0,s.Z)(this,Ct,{writable:!0,value:Be(this)}),(0,s.Z)(this,yt,{writable:!0,value:Fe(this)}),(0,s.Z)(this,Lt,{writable:!0,value:qe(this)}),(0,s.Z)(this,Mt,{writable:!0,value:$e(this)}),(0,s.Z)(this,Et,{writable:!0,value:(e,t,n)=>{var r;null===(r=this.getFormElement())||void 0===r||r.formStore.onChange(this.name,e),(0,u.Z)(this,Nt).emit(t),n||(0,u.Z)(this,St).emit(t)}}),(0,s.Z)(this,xt,{writable:!0,value:Qe(this)}),(0,s.Z)(this,It,{writable:!0,value:e=>{(0,u.Z)(this,Tt).emit(e)}}),(0,s.Z)(this,Rt,{writable:!0,value:e=>{try{P().load(e)}catch(e){return"请填写正确的格式"}return""}})}get name(){return(0,u.Z)(this,ut)}set name(e){(0,l.Z)(this,ut,e)}get label(){return(0,u.Z)(this,ot)}set label(e){(0,l.Z)(this,ot,e)}get value(){return(0,u.Z)(this,ht)}set value(e){(0,l.Z)(this,ht,e)}get language(){return(0,u.Z)(this,dt)}set language(e){(0,l.Z)(this,dt,e)}get theme(){return(0,u.Z)(this,mt)}set theme(e){(0,l.Z)(this,mt,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,gt)}set readOnly(e){(0,l.Z)(this,gt,e)}get automaticLayout(){return(0,u.Z)(this,vt)}set automaticLayout(e){(0,l.Z)(this,vt,e)}get minLines(){return(0,u.Z)(this,pt)}set minLines(e){(0,l.Z)(this,pt,e)}get completers(){return(0,u.Z)(this,bt)}set completers(e){(0,l.Z)(this,bt,e)}get advancedCompleters(){return(0,u.Z)(this,ft)}set advancedCompleters(e){(0,l.Z)(this,ft,e)}get markers(){return(0,u.Z)(this,Zt)}set markers(e){(0,l.Z)(this,Zt,e)}get links(){return(0,u.Z)(this,kt)}set links(e){(0,l.Z)(this,kt,e)}get maxLines(){return(0,u.Z)(this,wt)}set maxLines(e){(0,l.Z)(this,wt,e)}get height(){return(0,u.Z)(this,Ct)}set height(e){(0,l.Z)(this,Ct,e)}get message(){return(0,u.Z)(this,yt)}set message(e){(0,l.Z)(this,yt,e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return d().createElement(lt,{curElement:this,formElement:this.getFormElement(),name:this.name,label:this.label,required:this.required,validator:(0,u.Z)(this,Rt)},d().createElement(Vt,{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,validateState:this.validateState,onChange:(0,u.Z)(this,Et),onHighlightClick:(0,u.Z)(this,It)}))}},[[de,1,"name"],[ce,1,"label"],[ve,1,"value"],[be,1,"language"],[Ze,1,"theme"],[we,1,"required"],[ye,1,"readOnly"],[Ne,1,"automaticLayout"],[Se,1,"minLines"],[xe,1,"completers"],[Ie,1,"advancedCompleters"],[We,1,"markers"],[Pe,1,"links"],[Ke,1,"maxLines"],[Ve,1,"height"],[Oe,1,"message"],[He,1,"codeChange",function(){return(0,u.Z)(this,Lt)},function(e){(0,l.Z)(this,Lt,e)}],[je,1,"userInput",function(){return(0,u.Z)(this,Mt)},function(e){(0,l.Z)(this,Mt,e)}],[Ye,1,"highlighClickEvent",function(){return(0,u.Z)(this,xt)},function(e){(0,l.Z)(this,xt,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.a5602c99.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/2383.d28fda57.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 validateState?: 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 @property()\n accessor message: string | 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, parseValue: any, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.#codeChange.emit(parseValue);\n if (!isFlush) {\n this.#userInput.emit(parseValue);\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 #handleValidtor = (value: string) => {\n try {\n yaml.load(value);\n } catch {\n return \"请填写正确的格式\";\n }\n return \"\";\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 validator={this.#handleValidtor}\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 validateState={this.validateState}\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 validateState,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, parseValue: any, 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 let parseValue = undefined;\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n parseValue = 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 }\n }\n return parseValue;\n }, [value, links, markers]);\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 const parseValue = parseYaml();\n onChange(currentModel.getValue(), parseValue, e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange, parseYaml]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return (\n <div\n ref={containerRef}\n style={{\n height: actualHeight,\n ...(validateState === \"error\"\n ? {\n outline: \"1px solid var(--antd-error-color)\",\n }\n : {}),\n }}\n />\n );\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","_dec20","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_codeChange","_R","_userInput","_handleChange","_S","_highlighClickEvent","_handleHighlightClick","_handleValidtor","_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","parseValue","undefined","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","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","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","outline","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_message","_init_codeChange","_init_userInput","_init_highlighClickEvent","c","_initClass","_this$getFormElement","formStore","emit","_unused","required","readOnly","connectedCallback","display","super","render","curElement","formElement","validator","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/2383.a5602c99.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 validateState?: 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 @property()\n accessor message: string | 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, parseValue: any, isFlush: boolean) => {\n this.getFormElement()?.formStore.onChange(this.name!, value);\n this.#codeChange.emit(parseValue);\n if (!isFlush) {\n this.#userInput.emit(parseValue);\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 #handleValidtor = (value: string) => {\n try {\n yaml.load(value);\n } catch {\n return \"请填写正确的格式\";\n }\n return \"\";\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 validator={this.#handleValidtor}\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 validateState={this.validateState}\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 validateState,\n onChange,\n onHighlightClick,\n}: CodeEditorProps & {\n onChange(value: string, parseValue: any, 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 let parseValue = undefined;\n if (editorRef.current) {\n const model = editorRef.current.getModel()!;\n\n try {\n parseValue = 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 }\n }\n return parseValue;\n }, [value, links, markers]);\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 const parseValue = parseYaml();\n onChange(currentModel.getValue(), parseValue, e.isFlush);\n });\n return () => {\n listener.dispose();\n };\n }, [onChange, parseYaml]);\n\n useEffect(() => {\n return () => {\n editorRef.current?.getModel()?.dispose();\n editorRef.current?.dispose();\n };\n }, []);\n\n return (\n <div\n ref={containerRef}\n style={{\n height: actualHeight,\n ...(validateState === \"error\"\n ? {\n outline: \"1px solid var(--antd-error-color)\",\n }\n : {}),\n }}\n />\n );\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","_dec20","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_codeChange","_R","_userInput","_handleChange","_S","_highlighClickEvent","_handleHighlightClick","_handleValidtor","_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","parseValue","undefined","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","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","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","outline","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_message","_init_codeChange","_init_userInput","_init_highlighClickEvent","c","_initClass","_this$getFormElement","formStore","emit","_unused","required","readOnly","connectedCallback","display","super","render","curElement","formElement","validator","___CSS_LOADER_EXPORT___","module","id"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_next_bricks_vs=self.webpackChunk_next_bricks_vs||[]).push([[3494,7822,4795],{34795:(e,t,r)=>{function n(e,t,r,n,u,a,c){try{var i=e[a](c),s=i.value}catch(e){return void r(e)}i.done?t(s):Promise.resolve(s).then(n,u)}function u(e){return function(){var t=this,r=arguments;return new Promise((function(u,a){var c=e.apply(t,r);function i(e){n(c,u,a,i,s,"next",e)}function s(e){n(c,u,a,i,s,"throw",e)}i(void 0)}))}}r.d(t,{Z:()=>u})},27822:(e,t,r)=>{r.r(t),r.d(t,{ReactUseBrick:()=>c,ReactUseMultipleBricks:()=>i,useCurrentApp:()=>o,useCurrentTheme:()=>s,useRecentApps:()=>l});var n=r(34795),u=r(48657),a=r(2593);function c(e){var{useBrick:t,data:r}=e,[c,i]=(0,u.useState)(null),s=(0,u.useRef)(),[l,o]=(0,u.useState)(),f=(0,u.useRef)(0);(0,u.useEffect)((()=>{function e(){return(e=(0,n.Z)((function*(){try{i(yield a.__secret_internals.renderUseBrick(t,r)),o(++f.current)}catch(e){console.error("Render useBrick failed:",t,"with data:",r),(0,a.handleHttpError)(e)}}))).apply(this,arguments)}!function(){e.apply(this,arguments)}()}),[r,t]);var d=(0,u.useCallback)((e=>{e?s.current=a.__secret_internals.mountUseBrick(c,e):(a.__secret_internals.unmountUseBrick(c,s.current),s.current=void 0)}),[c]);if(!c)return null;var{tagName:v}=c;if(null===v)return null;var p=v;return u.createElement(p,{key:l,ref:d})}function i(e){var{useBrick:t,data:r}=e;return Array.isArray(t)?u.createElement(u.Fragment,null,t.map(((e,t)=>u.createElement(c,{key:t,useBrick:e,data:r})))):u.createElement(c,{useBrick:t,data:r})}function s(){var[e,t]=(0,u.useState)(a.getCurrentTheme);return(0,u.useEffect)((()=>{var e=e=>{t(e.detail)};return window.addEventListener("theme.change",e),()=>{window.removeEventListener("theme.change",e)}}),[]),e}function l(){var[e,t]=u.useState((()=>(0,a.getRuntime)().getRecentApps()));return u.useEffect((()=>{var e=e=>{t(e.detail)};return window.addEventListener("app.change",e),()=>window.removeEventListener("app.change",e)}),[]),e}function o(){return l().currentApp}}}]);
2
+ //# sourceMappingURL=3494.47d9e87e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/7822.ce0d3b54.js","mappings":"6HAAA,SAASA,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQC,EAAKC,GACpE,IACE,IAAIC,EAAOP,EAAIK,GAAKC,GAChBE,EAAQD,EAAKC,KACnB,CAAE,MAAOC,GAEP,YADAP,EAAOO,EAET,CACIF,EAAKG,KACPT,EAAQO,GAERG,QAAQV,QAAQO,GAAOI,KAAKT,EAAOC,EAEvC,CACe,SAASS,EAAkBC,GACxC,OAAO,WACL,IAAIC,EAAOC,KACTC,EAAOC,UACT,OAAO,IAAIP,SAAQ,SAAUV,EAASC,GACpC,IAAIF,EAAMc,EAAGK,MAAMJ,EAAME,GACzB,SAASd,EAAMK,GACbT,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,OAAQI,EAClE,CACA,SAASJ,EAAOgB,GACdrB,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,QAASgB,EACnE,CACAjB,OAAMkB,EACR,GACF,CACF,C,sMCxBO,SAASC,EAAcC,GAC5B,IAAI,SACFC,EAAQ,KACRC,GACEF,GACCG,EAAcC,IAAmB,IAAAC,UAAS,MAC3CC,GAAc,IAAAC,WACbC,EAAWC,IAAgB,IAAAJ,YAC5BK,GAAe,IAAAH,QAAO,IAC1B,IAAAI,YAAU,KAIR,SAASC,IAWP,OAVAA,GAAQ,QAAkB,YACxB,IACER,QAAsB,EAAAS,mBAAA,eAAkCZ,EAAUC,IAClEO,IAAyBC,EAyCpBI,QAxCP,CAAE,MAAO5B,GAEP6B,QAAQ7B,MAAM,0BAA2Be,EAAU,aAAcC,IACjE,IAAAc,iBAAgB9B,EAClB,CACF,KACaU,MAAMH,KAAME,UAC3B,EAfA,WACSiB,EAAMhB,MAAMH,KAAME,UAC3B,CAcAsB,EAAM,GACL,CAACf,EAAMD,IACV,IAAIiB,GAAc,IAAAC,cAAYC,IACxBA,EACFd,EAAYQ,QAAU,EAAAD,mBAAA,cAEtBV,EAAciB,IAGd,EAAAP,mBAAA,gBAAmCV,EAAcG,EAAYQ,SAC7DR,EAAYQ,aAAUhB,EACxB,GACC,CAACK,IACJ,IAAKA,EAEH,OAAO,KAIT,IAAI,QACFkB,GACElB,EACJ,GAAgB,OAAZkB,EACF,OAAO,KAET,IAAIC,EAAeD,EACnB,OAAoB,gBAAoBC,EAAc,CACpDxC,IAAK0B,EACLe,IAAKL,GAET,CAIO,SAASM,EAAuBC,GACrC,IAAI,SACFxB,EAAQ,KACRC,GACEuB,EACJ,OAAIC,MAAMC,QAAQ1B,GACI,gBAAoB,WAAgB,KAAMA,EAAS2B,KAAI,CAACC,EAAMC,IAAuB,gBAAoB/B,EAAe,CAC1IjB,IAAKgD,EACL7B,SAAU4B,EACV3B,KAAMA,OAGU,gBAAoBH,EAAe,CACrDE,SAAUA,EACVC,KAAMA,GAEV,CC/EO,SAAS6B,IACd,IAAKC,EAAcC,IAAmB,IAAA5B,UAAS,EAAA6B,iBAU/C,OATA,IAAAvB,YAAU,KACR,IAAIwB,EAAsBC,IACxBH,EAAgBG,EAAMC,OAAO,EAG/B,OADAC,OAAOC,iBAAiB,eAAgBJ,GACjC,KACLG,OAAOE,oBAAoB,eAAgBL,EAAoB,CAChE,GACA,IACIH,CACT,CCZO,SAASS,IACd,IAAKC,EAAYC,GAAiB,YAAe,KAAM,IAAAC,cAAaC,kBAQpE,OAPA,aAAgB,KACd,IAAIC,EAAWV,IACbO,EAAcP,EAAMC,OAAO,EAG7B,OADAC,OAAOC,iBAAiB,aAAcO,GAC/B,IAAMR,OAAOE,oBAAoB,aAAcM,EAAS,GAC9D,IACIJ,CACT,CCIO,SAASK,IACd,OAAON,IAAgBO,UACzB,C","sources":["webpack:///../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/ReactUseBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentTheme.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRecentApps.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentApp.js"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { __secret_internals, handleHttpError } from \"@next-core/runtime\";\n// Note: always synchronize code in LegacyUseBrick:\n// `bricks/v2-adapter/src/data-providers/legacy-brick-kit/getLegacyUseBrick.ts`\nexport function ReactUseBrick(_ref) {\n var {\n useBrick,\n data\n } = _ref;\n var [renderResult, setRenderResult] = useState(null);\n var mountResult = useRef();\n var [renderKey, setRenderKey] = useState();\n var IdCounterRef = useRef(0);\n useEffect(() => {\n function init() {\n return _init.apply(this, arguments);\n }\n function _init() {\n _init = _asyncToGenerator(function* () {\n try {\n setRenderResult(yield __secret_internals.renderUseBrick(useBrick, data));\n setRenderKey(getUniqueId(IdCounterRef));\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Render useBrick failed:\", useBrick, \"with data:\", data);\n handleHttpError(error);\n }\n });\n return _init.apply(this, arguments);\n }\n init();\n }, [data, useBrick]);\n var refCallback = useCallback(element => {\n if (element) {\n mountResult.current = __secret_internals.mountUseBrick(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n renderResult, element);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n __secret_internals.unmountUseBrick(renderResult, mountResult.current);\n mountResult.current = undefined;\n }\n }, [renderResult]);\n if (!renderResult) {\n // Fallback when loading/\n return null;\n // return <span>🌀 Loading...</span>;\n }\n\n var {\n tagName\n } = renderResult;\n if (tagName === null) {\n return null;\n }\n var WebComponent = tagName;\n return /*#__PURE__*/React.createElement(WebComponent, {\n key: renderKey,\n ref: refCallback\n });\n}\nfunction getUniqueId(ref) {\n return ++ref.current;\n}\nexport function ReactUseMultipleBricks(_ref2) {\n var {\n useBrick,\n data\n } = _ref2;\n if (Array.isArray(useBrick)) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, useBrick.map((item, index) => /*#__PURE__*/React.createElement(ReactUseBrick, {\n key: index,\n useBrick: item,\n data: data\n })));\n }\n return /*#__PURE__*/React.createElement(ReactUseBrick, {\n useBrick: useBrick,\n data: data\n });\n}\n//# sourceMappingURL=ReactUseBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getCurrentTheme } from \"@next-core/runtime\";\nexport function useCurrentTheme() {\n var [currentTheme, setCurrentTheme] = useState(getCurrentTheme);\n useEffect(() => {\n var listenToThemeChange = event => {\n setCurrentTheme(event.detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n return currentTheme;\n}\n//# sourceMappingURL=useCurrentTheme.js.map","import React from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useRecentApps() {\n var [recentApps, setRecentApps] = React.useState(() => getRuntime().getRecentApps());\n React.useEffect(() => {\n var listener = event => {\n setRecentApps(event.detail);\n };\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n return recentApps;\n}\n//# sourceMappingURL=useRecentApps.js.map","import { useRecentApps } from \"./useRecentApps.js\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp() {\n return useRecentApps().currentApp;\n}\n//# sourceMappingURL=useCurrentApp.js.map"],"names":["asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","this","args","arguments","apply","err","undefined","ReactUseBrick","_ref","useBrick","data","renderResult","setRenderResult","useState","mountResult","useRef","renderKey","setRenderKey","IdCounterRef","useEffect","_init","__secret_internals","current","console","handleHttpError","init","refCallback","useCallback","element","tagName","WebComponent","ref","ReactUseMultipleBricks","_ref2","Array","isArray","map","item","index","useCurrentTheme","currentTheme","setCurrentTheme","getCurrentTheme","listenToThemeChange","event","detail","window","addEventListener","removeEventListener","useRecentApps","recentApps","setRecentApps","getRuntime","getRecentApps","listener","useCurrentApp","currentApp"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/3494.47d9e87e.js","mappings":"6HAAA,SAASA,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQC,EAAKC,GACpE,IACE,IAAIC,EAAOP,EAAIK,GAAKC,GAChBE,EAAQD,EAAKC,KACnB,CAAE,MAAOC,GAEP,YADAP,EAAOO,EAET,CACIF,EAAKG,KACPT,EAAQO,GAERG,QAAQV,QAAQO,GAAOI,KAAKT,EAAOC,EAEvC,CACe,SAASS,EAAkBC,GACxC,OAAO,WACL,IAAIC,EAAOC,KACTC,EAAOC,UACT,OAAO,IAAIP,SAAQ,SAAUV,EAASC,GACpC,IAAIF,EAAMc,EAAGK,MAAMJ,EAAME,GACzB,SAASd,EAAMK,GACbT,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,OAAQI,EAClE,CACA,SAASJ,EAAOgB,GACdrB,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,QAASgB,EACnE,CACAjB,OAAMkB,EACR,GACF,CACF,C,qMCxBO,SAASC,EAAcC,GAC5B,IAAI,SACFC,EAAQ,KACRC,GACEF,GACCG,EAAcC,IAAmB,IAAAC,UAAS,MAC3CC,GAAc,IAAAC,WACbC,EAAWC,IAAgB,IAAAJ,YAC5BK,GAAe,IAAAH,QAAO,IAC1B,IAAAI,YAAU,KAIR,SAASC,IAWP,OAVAA,GAAQ,QAAkB,YACxB,IACER,QAAsB,EAAAS,mBAAA,eAAkCZ,EAAUC,IAClEO,IAAyBC,EAyCpBI,QAxCP,CAAE,MAAO5B,GAEP6B,QAAQ7B,MAAM,0BAA2Be,EAAU,aAAcC,IACjE,IAAAc,iBAAgB9B,EAClB,CACF,KACaU,MAAMH,KAAME,UAC3B,EAfA,WACSiB,EAAMhB,MAAMH,KAAME,UAC3B,CAcAsB,EAAM,GACL,CAACf,EAAMD,IACV,IAAIiB,GAAc,IAAAC,cAAYC,IACxBA,EACFd,EAAYQ,QAAU,EAAAD,mBAAA,cAEtBV,EAAciB,IAGd,EAAAP,mBAAA,gBAAmCV,EAAcG,EAAYQ,SAC7DR,EAAYQ,aAAUhB,EACxB,GACC,CAACK,IACJ,IAAKA,EAEH,OAAO,KAIT,IAAI,QACFkB,GACElB,EACJ,GAAgB,OAAZkB,EACF,OAAO,KAET,IAAIC,EAAeD,EACnB,OAAoB,gBAAoBC,EAAc,CACpDxC,IAAK0B,EACLe,IAAKL,GAET,CAIO,SAASM,EAAuBC,GACrC,IAAI,SACFxB,EAAQ,KACRC,GACEuB,EACJ,OAAIC,MAAMC,QAAQ1B,GACI,gBAAoB,WAAgB,KAAMA,EAAS2B,KAAI,CAACC,EAAMC,IAAuB,gBAAoB/B,EAAe,CAC1IjB,IAAKgD,EACL7B,SAAU4B,EACV3B,KAAMA,OAGU,gBAAoBH,EAAe,CACrDE,SAAUA,EACVC,KAAMA,GAEV,CC/EO,SAAS6B,IACd,IAAKC,EAAcC,IAAmB,IAAA5B,UAAS,EAAA6B,iBAU/C,OATA,IAAAvB,YAAU,KACR,IAAIwB,EAAsBC,IACxBH,EAAgBG,EAAMC,OAAO,EAG/B,OADAC,OAAOC,iBAAiB,eAAgBJ,GACjC,KACLG,OAAOE,oBAAoB,eAAgBL,EAAoB,CAChE,GACA,IACIH,CACT,CCZO,SAASS,IACd,IAAKC,EAAYC,GAAiB,YAAe,KAAM,IAAAC,cAAaC,kBAQpE,OAPA,aAAgB,KACd,IAAIC,EAAWV,IACbO,EAAcP,EAAMC,OAAO,EAG7B,OADAC,OAAOC,iBAAiB,aAAcO,GAC/B,IAAMR,OAAOE,oBAAoB,aAAcM,EAAS,GAC9D,IACIJ,CACT,CCIO,SAASK,IACd,OAAON,IAAgBO,UACzB,C","sources":["webpack:///../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/ReactUseBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentTheme.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRecentApps.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentApp.js"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { __secret_internals, handleHttpError } from \"@next-core/runtime\";\n// Note: always synchronize code in LegacyUseBrick:\n// `bricks/v2-adapter/src/data-providers/legacy-brick-kit/getLegacyUseBrick.ts`\nexport function ReactUseBrick(_ref) {\n var {\n useBrick,\n data\n } = _ref;\n var [renderResult, setRenderResult] = useState(null);\n var mountResult = useRef();\n var [renderKey, setRenderKey] = useState();\n var IdCounterRef = useRef(0);\n useEffect(() => {\n function init() {\n return _init.apply(this, arguments);\n }\n function _init() {\n _init = _asyncToGenerator(function* () {\n try {\n setRenderResult(yield __secret_internals.renderUseBrick(useBrick, data));\n setRenderKey(getUniqueId(IdCounterRef));\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Render useBrick failed:\", useBrick, \"with data:\", data);\n handleHttpError(error);\n }\n });\n return _init.apply(this, arguments);\n }\n init();\n }, [data, useBrick]);\n var refCallback = useCallback(element => {\n if (element) {\n mountResult.current = __secret_internals.mountUseBrick(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n renderResult, element);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n __secret_internals.unmountUseBrick(renderResult, mountResult.current);\n mountResult.current = undefined;\n }\n }, [renderResult]);\n if (!renderResult) {\n // Fallback when loading/\n return null;\n // return <span>🌀 Loading...</span>;\n }\n\n var {\n tagName\n } = renderResult;\n if (tagName === null) {\n return null;\n }\n var WebComponent = tagName;\n return /*#__PURE__*/React.createElement(WebComponent, {\n key: renderKey,\n ref: refCallback\n });\n}\nfunction getUniqueId(ref) {\n return ++ref.current;\n}\nexport function ReactUseMultipleBricks(_ref2) {\n var {\n useBrick,\n data\n } = _ref2;\n if (Array.isArray(useBrick)) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, useBrick.map((item, index) => /*#__PURE__*/React.createElement(ReactUseBrick, {\n key: index,\n useBrick: item,\n data: data\n })));\n }\n return /*#__PURE__*/React.createElement(ReactUseBrick, {\n useBrick: useBrick,\n data: data\n });\n}\n//# sourceMappingURL=ReactUseBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getCurrentTheme } from \"@next-core/runtime\";\nexport function useCurrentTheme() {\n var [currentTheme, setCurrentTheme] = useState(getCurrentTheme);\n useEffect(() => {\n var listenToThemeChange = event => {\n setCurrentTheme(event.detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n return currentTheme;\n}\n//# sourceMappingURL=useCurrentTheme.js.map","import React from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useRecentApps() {\n var [recentApps, setRecentApps] = React.useState(() => getRuntime().getRecentApps());\n React.useEffect(() => {\n var listener = event => {\n setRecentApps(event.detail);\n };\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n return recentApps;\n}\n//# sourceMappingURL=useRecentApps.js.map","import { useRecentApps } from \"./useRecentApps.js\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp() {\n return useRecentApps().currentApp;\n}\n//# sourceMappingURL=useCurrentApp.js.map"],"names":["asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","this","args","arguments","apply","err","undefined","ReactUseBrick","_ref","useBrick","data","renderResult","setRenderResult","useState","mountResult","useRef","renderKey","setRenderKey","IdCounterRef","useEffect","_init","__secret_internals","current","console","handleHttpError","init","refCallback","useCallback","element","tagName","WebComponent","ref","ReactUseMultipleBricks","_ref2","Array","isArray","map","item","index","useCurrentTheme","currentTheme","setCurrentTheme","getCurrentTheme","listenToThemeChange","event","detail","window","addEventListener","removeEventListener","useRecentApps","recentApps","setRecentApps","getRuntime","getRecentApps","listener","useCurrentApp","currentApp"],"sourceRoot":""}