@next-bricks/advanced 0.44.0 → 0.44.2

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.
@@ -1,2 +0,0 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_advanced=globalThis.webpackChunk_next_bricks_advanced||[]).push([[771],{1740:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(r){!function(e,t,r){var n="";r.supports&&(n+="@supports (".concat(r.supports,") {")),r.media&&(n+="@media ".concat(r.media," {"));var a=void 0!==r.layer;a&&(n+="@layer".concat(r.layer.length>0?" ".concat(r.layer):""," {")),n+=r.css,a&&(n+="}"),r.media&&(n+="}"),r.supports&&(n+="}");var i=r.sourceMap;i&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleTagTransform(n,e,t.options)}(t,e,r)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},5536:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(12559);function a(e,t,r){return r((0,n.A)(e,t))}},7231:(e,t,r)=>{r.d(t,{q:()=>p});var n=r(18769),a=r.n(n),i=r(88361),o=r(99859),s=r(47522),l=r(41640),c=r(41030);const d=(0,o.wrapBrick)("eo-icon");function p(e){const{component:t,isEdit:r,onDrop:n,onDelete:o,layout:p}=e,[,u]=(0,s.H)({accept:"component",drop:e=>null==n?void 0:n(e)});return a().createElement("div",{className:l.A.component,style:t.style,ref:u},r&&a().createElement("div",{className:l.A.editMask,onMouseDown:e=>{e.preventDefault()},"data-testid":"droppable-component-layout-item-edit-mask"}),a().createElement(i.ReactUseBrick,{useBrick:(0,c.cloneDeep)(t.useBrick),data:p}),r&&a().createElement(d,{icon:"delete",lib:"antd",className:l.A.deleteIcon,onClick:e=>{e.preventDefault(),null==o||o()},"data-testid":"droppable-component-layout-item-delete"}))}},20504:(e,t,r)=>{r.r(t),r.d(t,{EoWorkbenchLayoutComponent:()=>ke,EoWorkbenchLayoutV2:()=>we,defaultCardConfig:()=>fe});var n,a=r(74635),i=r(70918),o=r(26902),s=r(5536),l=r(86121),c=r(70829),d=r(62740),p=r(18769),u=r.n(p),h=r(6192),m=r(99859),g=r(49523),b=r(88361),y=r(69113),f=r(45833),v=(r(76477),r(47522)),A=r(63737),k=r(50692),w=r(53435),x=r.n(w),z=r(41030),W=r.n(z),E=r(7231),M=r(79120),I=r(72465),C=r(41640);let L,D,B,T,N,S,P,R,O,H,Q,j,U,Z,G,_,K,Y,F,J,X,$,q,V,ee,te,re,ne,ae,ie,oe,se,le,ce;r(78259);const{defineElement:de,property:pe,event:ue,method:he}=(0,h.createDecorators)(),me=(0,m.wrapBrick)("eo-sidebar-menu"),ge=(0,m.wrapBrick)("eo-button"),be=(0,m.wrapBrick)("eo-dropdown-button",{onActionClick:"action.click"}),ye=(0,g.unwrapProvider)("basic.show-dialog"),fe={cardWidth:2,showMoreIcon:!1,cardBorderStyle:"solid",cardTitleFontSize:16,cardBorderWidth:1,cardBorderRadius:6,cardTitleColor:"#262626",cardBorderColor:"#e8e8e8"},ve=e=>null!=e&&e.includes(":")?e.split(":")[0]:e,{isAdmin:Ae}=y.auth.getAuth(),ke=(0,p.forwardRef)((function(e,t){let{cardTitle:r="卡片列表",layouts:n,toolbarBricks:a,componentList:i=[],isEdit:o,showSettingButton:s,onChange:l,onSave:c,onCancel:d,onActionClick:h,onSetting:m}=e;const g=(0,p.useMemo)((()=>(0,f.WidthProvider)(f.Responsive)),[]),y=(0,p.useRef)(null),A=(0,p.useRef)(null),k=(0,p.useRef)(null!=n?n:[]),[w,L]=(0,p.useState)(k.current),[D,B]=(0,p.useState)(3),[T,N]=(0,p.useState)(),S=(0,p.useCallback)((e=>{k.current=e,L(e)}),[]);(0,p.useImperativeHandle)(t,(()=>({setLayouts:S})));const P=(0,p.useCallback)((e=>{S(e),null==l||l(e)}),[l,S]),R=(0,p.useCallback)((e=>{if(!o)return;const t=W().keyBy(e,"i");let r=!0;for(let t=0;t<e.length;t++){const{x:a,w:i,y:o,h:s,i:l,minH:c}=e[t];if(i>1&&a>0){r=!1;break}if(1===i&&a<2){const r=e.find((e=>e.i!==l&&1===e.w&&e.y===o&&a<2));var n;r&&(e[t].minH=null!==(n=e[t].minH)&&void 0!==n?n:s,e[t].h=Math.max(r.h,s))}else e[t].h=null!=c?c:s,e[t].minH=void 0}P(r?e.map((e=>({...null==t?void 0:t[e.i],...e,type:ve(e.i)}))):k.current.map((e=>{const{w:t,type:r,i:n}=e,a=null!=n?n:`${ve(r)}:${Math.random()}`;let i=e.x;return t>1&&i>0&&(i=0),{...e,x:i,i:a}})))}),[P,o,w]),O=e=>{P(w.concat({...fe,...e.position,type:e.key,x:e.position.w>1?0:2*w.length%D,y:1/0}))},[,H]=(0,v.H)({accept:"component",canDrop:(e,t)=>t.isOver({shallow:!0}),drop:e=>{null==O||O(e)}}),Q=()=>{P([])},j=(0,p.useCallback)((()=>{null==c||c(w)}),[w,c]),U=(0,p.useCallback)(((e,t,r)=>{P(x()(w,{$splice:[[r,0,{...fe,...e.position,type:e.key,...(0,z.pick)(t,["x","y"])}]]}))}),[P,w]),Z=(0,p.useCallback)((e=>{var t;P(null!==(t=w.filter((t=>ve(t.i)!==e.key)))&&void 0!==t?t:[])}),[P,w]),G=(0,p.useMemo)((()=>w.map(((e,t)=>{var r;const n=i.find((t=>t.key===ve(e.type)));return n?u().createElement("div",{className:"drag-box","data-grid":{...null!==(r=n.position)&&void 0!==r?r:{},...e,w:e.cardWidth||e.w},key:e.i},u().createElement(E.q,{component:n,isEdit:o,layout:e,onDrop:r=>U(r,e,t),onDelete:()=>Z(n)})):null})).filter(Boolean)),[w,i,o,U,Z]),_=(0,p.useCallback)((()=>{if(A&&o){var e,t;const{top:r}=null!==(e=null===(t=A.current)||void 0===t||null===(t=t.getClientRects())||void 0===t?void 0:t[0])&&void 0!==e?e:{};void 0!==r&&N({height:document.body.clientHeight-r})}}),[o]);return(0,p.useEffect)((()=>{if(o)return _(),S(n||[]),window.addEventListener("resize",_),()=>{window.removeEventListener("resize",_)}}),[o,_,n,S]),u().createElement("div",{className:I.A.gridLayoutWrapper,ref:y},o&&u().createElement("div",{className:I.A.componentWrapper,style:T},u().createElement("div",{className:I.A.componentTitle},r),u().createElement("div",{className:I.A.componentList},u().createElement(me,null,null==i?void 0:i.map(((e,t)=>u().createElement(M.T,{component:e,onClick:()=>{O(e)},key:e.key||t})))),(null==a?void 0:a.useBrick)&&u().createElement(b.ReactUseMultipleBricks,{useBrick:a.useBrick}))),u().createElement("div",{className:I.A.layoutWrapper,ref:A,style:T},o&&u().createElement("div",{className:I.A.actionsWrapper},u().createElement(ge,{type:"primary",onClick:j},"保存"),u().createElement(ge,{onClick:()=>{null==d||d()}},"取消"),s&&u().createElement(ge,{"data-testid":"setting-button",onClick:()=>{null==m||m()}},"设置"),u().createElement(be,{btnText:"更多",icon:{lib:"antd",icon:"down"},actions:[...Ae?[{text:"另存为模板",event:"saveAsTemplate"}]:[],{text:"从模版加载",event:"loadFromTemplate"},{text:"清空所有",danger:!0,event:"clear"}],onActionClick:e=>{(e=>{const{event:t}=e;"clear"===t?ye({type:"confirm",title:"清空确认",content:"将清空所有卡片,从零开始编辑,该操作无法撤回。"}).then(Q):null==h||h(e,(null!=w?w:[]).map((e=>({...e,i:ve(e.i)}))))})(e.detail)},"data-testid":"edit-layout-actions"})),u().createElement(g,{className:I.A.layout,draggableCancel:`.${C.A.deleteIcon},.edit-actions,.ignore-item`,breakpoints:{lg:1300,md:1024,sm:768},rowHeight:1,cols:{lg:3,md:3,sm:o?3:1},isResizable:!1,isDraggable:o,onDrag:(e,t,r)=>{var n;const a=null===(n=y.current)||void 0===n?void 0:n.querySelector(".react-grid-placeholder");a&&(r.w>1&&r.x>0?!a.classList.contains("forbidden")&&a.classList.add("forbidden"):a.classList.contains("forbidden")&&a.classList.remove("forbidden"))},onLayoutChange:R,onBreakpointChange:(e,t)=>{B(t)},innerRef:H},G)))}));let we;var xe=new WeakMap,ze=new WeakMap,We=new WeakMap,Ee=new WeakMap,Me=new WeakMap,Ie=new WeakMap,Ce=new WeakMap,Le=new WeakMap,De=new WeakSet,Be=new WeakMap,Te=new WeakMap,Ne=new WeakMap,Se=new WeakMap,Pe=new WeakMap,Re=new WeakMap,Oe=new WeakMap,He=new WeakMap,Qe=new WeakMap;class je extends m.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,De),(0,i.A)(this,xe,(L(this),(0,p.createRef)())),(0,i.A)(this,ze,B(this)),(0,i.A)(this,We,(T(this),N(this))),(0,i.A)(this,Ee,(S(this),P(this))),(0,i.A)(this,Me,(R(this),O(this))),(0,i.A)(this,Ie,(H(this),Q(this))),(0,i.A)(this,Ce,(j(this),U(this))),(0,i.A)(this,Le,(Z(this),G(this))),(0,i.A)(this,Be,(Y(this),e=>{(0,s.A)(De,this,_).emit(e)})),(0,i.A)(this,Te,F(this)),(0,i.A)(this,Ne,($(this),e=>{(0,s.A)(De,this,J).emit(e)})),(0,i.A)(this,Se,q(this)),(0,i.A)(this,Pe,(te(this),()=>{(0,s.A)(De,this,V).emit()})),(0,i.A)(this,Re,re(this)),(0,i.A)(this,Oe,(ie(this),()=>{(0,s.A)(De,this,ne).emit()})),(0,i.A)(this,He,oe(this)),(0,i.A)(this,Qe,(ce(this),(e,t)=>{(0,s.A)(De,this,se).emit({action:e,layouts:t}),e.event&&this.dispatchEvent(new CustomEvent(e.event,{detail:t}))}))}get cardTitle(){return(0,c.A)(ze,this)}set cardTitle(e){(0,l.A)(ze,this,e)}get isEdit(){return(0,c.A)(We,this)}set isEdit(e){(0,l.A)(We,this,e)}get layouts(){return(0,c.A)(Ee,this)}set layouts(e){(0,l.A)(Ee,this,e)}get toolbarBricks(){return(0,c.A)(Me,this)}set toolbarBricks(e){(0,l.A)(Me,this,e)}get componentList(){return(0,c.A)(Ie,this)}set componentList(e){(0,l.A)(Ie,this,e)}get showSettingButton(){return(0,c.A)(Ce,this)}set showSettingButton(e){(0,l.A)(Ce,this,e)}setLayouts(e){var t;null===(t=(0,c.A)(xe,this).current)||void 0===t||t.setLayouts(e)}connectedCallback(){this.style.display||(this.style.display="block"),super.connectedCallback()}render(){return u().createElement(A.Q,{backend:k.t2,context:window},u().createElement(ke,{cardTitle:this.cardTitle,layouts:this.layouts,toolbarBricks:this.toolbarBricks,componentList:this.componentList,showSettingButton:this.showSettingButton,isEdit:this.isEdit,onChange:(0,c.A)(Be,this),onSave:(0,c.A)(Ne,this),onCancel:(0,c.A)(Pe,this),onActionClick:(0,c.A)(Qe,this),onSetting:(0,c.A)(Oe,this),ref:(0,c.A)(xe,this)}))}}n=je,({e:[B,T,N,S,P,R,O,H,Q,j,U,Z,G,_,K,Y,F,J,X,$,q,V,ee,te,re,ne,ae,ie,oe,se,le,ce,L],c:[we,D]}=(0,d.A)(n,[de("eo-workbench-layout-v2",{shadowOptions:!1})],[[pe(),1,"cardTitle"],[pe({type:Boolean}),1,"isEdit"],[pe({attribute:!1}),1,"layouts"],[pe({attribute:!1}),1,"toolbarBricks"],[pe({attribute:!1}),1,"componentList"],[pe({type:Boolean}),1,"showSettingButton"],[ue({type:"change"}),1,"changeEvent",e=>(0,c.A)(Le,e),(e,t)=>(0,l.A)(Le,e,t)],[ue({type:"save"}),1,"saveEvent",e=>(0,c.A)(Te,e),(e,t)=>(0,l.A)(Te,e,t)],[ue({type:"cancel"}),1,"cancelEvent",e=>(0,c.A)(Se,e),(e,t)=>(0,l.A)(Se,e,t)],[ue({type:"setting"}),1,"settingEvent",e=>(0,c.A)(Re,e),(e,t)=>(0,l.A)(Re,e,t)],[ue({type:"action.click"}),1,"actionClickEvent",e=>(0,c.A)(He,e),(e,t)=>(0,l.A)(He,e,t)],[he(),2,"setLayouts"]],0,(e=>Qe.has((0,o.A)(e))),m.ReactNextElement)),D()},30855:(e,t,r)=>{e.exports=function(e){var t=r.nc;t&&e.setAttribute("nonce",t)}},37564:(e,t,r)=>{r.d(t,{A:()=>u});var n=r(36758),a=r.n(n),i=r(40935),o=r.n(i),s=r(20062),l=r.n(s),c=new URL(r(59224),r.b),d=o()(a()),p=l()(c);d.push([e.id,`.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(${p});background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,\n.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,\n.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}`,""]);const u=d},41640:(e,t,r)=>{r.d(t,{A:()=>y});var n=r(72591),a=r.n(n),i=r(1740),o=r.n(i),s=r(88128),l=r.n(s),c=r(30855),d=r.n(c),p=r(93051),u=r.n(p),h=r(73656),m=r.n(h),g=r(61590),b={};b.styleTagTransform=m(),b.setAttributes=d(),b.insert=l().bind(null,"head"),b.domAPI=o(),b.insertStyleElement=u(),a()(g.A,b);const y=g.A&&g.A.locals?g.A.locals:void 0},59224:e=>{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+"},61590:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(36758),a=r.n(n),i=r(40935),o=r.n(i)()(a());o.push([e.id,".component--MVAoEnGN{height:100%}.editMask--nl6r17tE{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.deleteIcon--tNyE_ou4{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.deleteIcon--tNyE_ou4:hover{color:var(--color-error)}.deleteIcon--tNyE_ou4:active{color:var(--color-error-active)}",""]),o.locals={component:"component--MVAoEnGN",editMask:"editMask--nl6r17tE",deleteIcon:"deleteIcon--tNyE_ou4"};const s=o},72465:(e,t,r)=>{r.d(t,{A:()=>y});var n=r(72591),a=r.n(n),i=r(1740),o=r.n(i),s=r(88128),l=r.n(s),c=r(30855),d=r.n(c),p=r(93051),u=r.n(p),h=r(73656),m=r.n(h),g=r(89739),b={};b.styleTagTransform=m(),b.setAttributes=d(),b.insert=l().bind(null,"head"),b.domAPI=o(),b.insertStyleElement=u(),a()(g.A,b);const y=g.A&&g.A.locals?g.A.locals:void 0},72591:e=>{var t=[];function r(e){for(var r=-1,n=0;n<t.length;n++)if(t[n].identifier===e){r=n;break}return r}function n(e,n){for(var i={},o=[],s=0;s<e.length;s++){var l=e[s],c=n.base?l[0]+n.base:l[0],d=i[c]||0,p="".concat(c," ").concat(d);i[c]=d+1;var u=r(p),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==u)t[u].references++,t[u].updater(h);else{var m=a(h,n);n.byIndex=s,t.splice(s,0,{identifier:p,updater:m,references:1})}o.push(p)}return o}function a(e,t){var r=t.domAPI(t);return r.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;r.update(e=t)}else r.remove()}}e.exports=function(e,a){var i=n(e=e||[],a=a||{});return function(e){e=e||[];for(var o=0;o<i.length;o++){var s=r(i[o]);t[s].references--}for(var l=n(e,a),c=0;c<i.length;c++){var d=r(i[c]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}i=l}}},73656:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},74635:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(72016);function a(e,t){(0,n.A)(e,t),t.add(e)}},78259:(e,t,r)=>{var n=r(72591),a=r.n(n),i=r(1740),o=r.n(i),s=r(88128),l=r.n(s),c=r(30855),d=r.n(c),p=r(93051),u=r.n(p),h=r(73656),m=r.n(h),g=r(85689),b={};b.styleTagTransform=m(),b.setAttributes=d(),b.insert=l().bind(null,"head"),b.domAPI=o(),b.insertStyleElement=u(),a()(g.A,b),g.A&&g.A.locals&&g.A.locals},79120:(e,t,r)=>{r.d(t,{T:()=>l});var n=r(18769),a=r.n(n),i=r(99859),o=r(80255);const s=(0,i.wrapBrick)("eo-sidebar-menu-item");function l(e){const{component:t,onClick:r}=e,{title:n}=t,[{isDragging:i},l]=(0,o.i)({type:"component",item:t,collect:e=>({isDragging:e.isDragging()})});return a().createElement(s,{icon:{lib:"antd",icon:"menu"},title:n,style:{opacity:i?.4:1},onClick:r,"data-testid":"draggable-component-menu-item",ref:l},n)}},85689:(e,t,r)=>{r.d(t,{A:()=>d});var n=r(36758),a=r.n(n),i=r(40935),o=r.n(i),s=r(87796),l=r(37564),c=o()(a());c.i(s.A),c.i(l.A),c.push([e.id,".react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}",""]);const d=c},87796:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(36758),a=r.n(n),i=r(40935),o=r.n(i)()(a());o.push([e.id,'.react-grid-layout{position:relative;transition:height 200ms ease}.react-grid-item{transition:all 200ms ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:0.2;transition-duration:100ms;z-index:2;-webkit-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item > .react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item > .react-resizable-handle::after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,0.4);border-bottom:2px solid rgba(0,0,0,0.4)}.react-resizable-hide > .react-resizable-handle{display:none}.react-grid-item > .react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-w,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-n,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}',""]);const s=o},88128:e=>{var t={};e.exports=function(e,r){var n=function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(r)}},89739:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(36758),a=r.n(n),i=r(40935),o=r.n(i)()(a());o.push([e.id,".gridLayoutWrapper--DIttynOM{display:flex;height:100%;position:relative}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{overflow:auto}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP{width:200px;padding:6px 12px;overflow-y:scroll;box-shadow:1px 0 0 0 var(--palette-gray-5);background:var(--color-fill-bg-container-1);z-index:999;position:sticky;top:0}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentTitle--nKf9GEoj{font-size:16px;padding:6px 0;font-weight:500}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB{margin-top:6px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{flex:1;display:flex;flex-direction:column;align-items:center}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{width:100%}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj{flex-grow:1;max-width:1300px;margin:0 auto}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{position:sticky;top:0;z-index:999;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}",""]),o.locals={gridLayoutWrapper:"gridLayoutWrapper--DIttynOM",componentWrapper:"componentWrapper--P8xsKOQP",layoutWrapper:"layoutWrapper--pk1t3UAR",componentTitle:"componentTitle--nKf9GEoj",componentList:"componentList--s3XnAYsB",layout:"layout--kz28taJj",actionsWrapper:"actionsWrapper--vQro2Dyn"};const s=o},93051:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}}}]);
2
- //# sourceMappingURL=eo-workbench-layout-v2.fe6d0c65.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/eo-workbench-layout-v2.fe6d0c65.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.tsx","webpack:///./src/workbench-layout-v2/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///../../node_modules/react-resizable/css/styles.css?2de9","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css?5d2f","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css","webpack:///./src/workbench-layout-v2/styles.module.css?4307","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///./src/workbench-layout-v2/styles.css?4d90","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.tsx","webpack:///./src/workbench-layout-v2/styles.css","webpack:///../../node_modules/react-grid-layout/css/styles.css?df02","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/workbench-layout-v2/styles.module.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import React from \"react\";\nimport { ReactUseBrick } from \"@next-core/react-runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { useDrop } from \"react-dnd\";\n\nimport { WorkbenchComponent, ExtraLayout } from \"../interfaces\";\n\nimport styles from \"./DroppableComponentLayoutItem.module.css\";\nimport { cloneDeep } from \"lodash\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface DroppableComponentLayoutItemProps {\n component: WorkbenchComponent;\n layout?: ExtraLayout;\n isEdit?: boolean;\n onDrop?(component: WorkbenchComponent): void;\n onDelete?(): void;\n}\n\nexport function DroppableComponentLayoutItem(\n props: DroppableComponentLayoutItemProps\n): React.ReactElement {\n const { component, isEdit, onDrop, onDelete, layout } = props;\n\n const [, drop] = useDrop({\n accept: \"component\",\n drop: (component: WorkbenchComponent) => onDrop?.(component),\n });\n\n const handleEditMaskClick = (e: React.MouseEvent) => {\n e.preventDefault();\n };\n\n const handleDeleteClick = (e: React.MouseEvent) => {\n e.preventDefault();\n onDelete?.();\n };\n\n return (\n <div className={styles.component} style={component.style} ref={drop}>\n {isEdit && (\n <div\n className={styles.editMask}\n onMouseDown={handleEditMaskClick}\n data-testid=\"droppable-component-layout-item-edit-mask\"\n />\n )}\n <ReactUseBrick useBrick={cloneDeep(component.useBrick)} data={layout} />\n {isEdit && (\n <WrappedIcon\n icon=\"delete\"\n lib=\"antd\"\n className={styles.deleteIcon}\n onClick={handleDeleteClick}\n data-testid=\"droppable-component-layout-item-delete\"\n />\n )}\n </div>\n );\n}\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport { UseSingleBrickConf } from \"@next-core/types\";\nimport { ReactUseMultipleBricks } from \"@next-core/react-runtime\";\nimport { auth } from \"@next-core/easyops-runtime\";\nimport {\n ItemCallback,\n Layout,\n Responsive,\n WidthProvider,\n} from \"react-grid-layout\";\nimport \"@next-core/theme\";\nimport {\n EoSidebarMenu,\n EoSidebarMenuProps,\n} from \"@next-bricks/nav/sidebar/sidebar-menu\";\nimport type { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport {\n DropdownButton,\n DropdownButtonEvents,\n DropdownButtonEventsMap,\n DropdownButtonProps,\n} from \"@next-bricks/basic/dropdown-button\";\nimport type { showDialog as _showDialog } from \"@next-bricks/basic/data-providers/show-dialog/show-dialog\";\nimport { SimpleAction } from \"@next-bricks/basic/actions\";\nimport { DndProvider, useDrop } from \"react-dnd\";\nimport { HTML5Backend } from \"react-dnd-html5-backend\";\nimport update from \"immutability-helper\";\nimport _, { pick } from \"lodash\";\n\nimport { WorkbenchComponent, ExtraLayout, CardStyleConfig } from \"../interfaces\";\nimport { DroppableComponentLayoutItem } from \"./DroppableComponentLayoutItem\";\nimport { DraggableComponentMenuItem } from \"./DraggableComponentMenuItem\";\n\nimport styles from \"./styles.module.css\";\nimport layoutItemStyles from \"./DroppableComponentLayoutItem.module.css\";\nimport \"./styles.css\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst WrappedSidebarMenu = wrapBrick<EoSidebarMenu, EoSidebarMenuProps>(\n \"eo-sidebar-menu\"\n);\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\nconst WrappedDropdownButton = wrapBrick<\n DropdownButton,\n DropdownButtonProps,\n DropdownButtonEvents,\n DropdownButtonEventsMap\n>(\"eo-dropdown-button\", { onActionClick: \"action.click\" });\nconst showDialog = unwrapProvider<typeof _showDialog>(\"basic.show-dialog\");\n\n/* istanbul ignore next */\nexport const defaultCardConfig: CardStyleConfig = {\n cardWidth: 2,\n showMoreIcon: false,\n cardBorderStyle: \"solid\",\n cardTitleFontSize: 16,\n cardBorderWidth: 1,\n cardBorderRadius: 6,\n cardTitleColor: \"#262626\",\n cardBorderColor: \"#e8e8e8\",\n};\n\nexport interface EoWorkbenchLayoutV2Props {\n cardTitle?: string;\n layouts?: ExtraLayout[];\n toolbarBricks?: { useBrick: UseSingleBrickConf[] };\n componentList?: WorkbenchComponent[];\n isEdit?: boolean;\n showSettingButton?: boolean;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentRef {\n setLayouts(layouts: ExtraLayout[]): void;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentProps\n extends EoWorkbenchLayoutV2Props {\n onChange?: (layout: ExtraLayout[]) => void;\n onSave?: (layout: ExtraLayout[]) => void;\n onCancel?: () => void;\n onActionClick?: (action: SimpleAction, layouts: ExtraLayout[]) => void;\n onSetting?: () => void;\n}\n\nconst getRealKey = (key: string): string =>\n key?.includes(\":\") ? key.split(\":\")[0] : key;\nconst { isAdmin } = auth.getAuth();\n\nexport const EoWorkbenchLayoutComponent = forwardRef<\n EoWorkbenchLayoutV2ComponentRef,\n EoWorkbenchLayoutV2ComponentProps\n>(function EoWorkbenchLayoutComponent(\n {\n cardTitle = \"卡片列表\",\n layouts: layoutsProps,\n toolbarBricks,\n componentList = [],\n isEdit,\n showSettingButton,\n onChange,\n onSave,\n onCancel,\n onActionClick,\n onSetting,\n },\n ref\n) {\n const ResponsiveReactGridLayout = useMemo(\n () => WidthProvider(Responsive),\n []\n );\n const gridLayoutRef = useRef<HTMLDivElement>(null);\n const layoutWrapperRef = useRef<HTMLDivElement>(null);\n const layoutCacheRef = useRef<ExtraLayout[]>(layoutsProps ?? []);\n\n const [layouts, _setLayouts] = useState<ExtraLayout[]>(layoutCacheRef.current);\n const [cols, setCols] = useState<number>(3);\n const [layoutWrapperStyle, setLayoutWrapperStyle] =\n useState<React.CSSProperties>();\n\n const setLayouts = useCallback((layouts: ExtraLayout[]) => {\n layoutCacheRef.current = layouts;\n _setLayouts(layouts);\n }, []);\n\n useImperativeHandle(ref, () => ({ setLayouts }));\n\n const handleChange = useCallback(\n (layouts: ExtraLayout[]) => {\n setLayouts(layouts);\n onChange?.(layouts);\n },\n [onChange, setLayouts]\n );\n\n const handleDragCallback: ItemCallback = (layout, oldItem, newItem) => {\n const placeholderDOM = gridLayoutRef.current?.querySelector(\n \".react-grid-placeholder\"\n );\n if (placeholderDOM) {\n if (newItem.w > 1 && newItem.x > 0) {\n !placeholderDOM.classList.contains(\"forbidden\") &&\n placeholderDOM.classList.add(\"forbidden\");\n } else {\n placeholderDOM.classList.contains(\"forbidden\") &&\n placeholderDOM.classList.remove(\"forbidden\");\n }\n }\n };\n\n /* istanbul ignore next */\n const handleLayoutChange = useCallback(\n (currentLayout: ExtraLayout[]) => {\n if (!isEdit) {\n return;\n }\n\n const currentLayoutMap = _.keyBy(currentLayout,\"i\");\n \n let isAllowAction = true;\n for (let t = 0; t < currentLayout.length; t++) {\n const { x, w, y, h, i, minH } = currentLayout[t];\n if (w > 1 && x > 0) {\n isAllowAction = false;\n break;\n }\n if (w === 1 && x < 2) {\n const matchItem = currentLayout.find(\n (item) => item.i !== i && item.w === 1 && item.y === y && x < 2\n );\n if (matchItem) {\n currentLayout[t].minH = currentLayout[t].minH ?? h;\n currentLayout[t].h = Math.max(matchItem.h, h);\n }\n } else {\n currentLayout[t].h = minH ?? h;\n currentLayout[t].minH = undefined;\n }\n }\n\n handleChange(\n !isAllowAction\n ? // revert to previous layouts\n layoutCacheRef.current.map((item) => {\n const { w, type, i } = item;\n // should update key to refresh layout\n const key = i ?? `${getRealKey(type as string)}:${Math.random()}`;\n let x = item.x;\n\n if (w > 1 && x > 0) {\n x = 0;\n }\n\n return { ...item, x, i: key };\n })\n : currentLayout.map((v) => {\n const layoutItem = currentLayoutMap?.[v.i];\n return { ...layoutItem, ...v, type: getRealKey(v.i) };\n })\n );\n },\n [handleChange, isEdit, layouts]\n );\n\n const handleBreakpointChange = (_newBreakpoint: string, newCols: number) => {\n setCols(newCols);\n };\n\n const addComponent = (component: WorkbenchComponent): void => {\n handleChange(\n layouts.concat({\n ...defaultCardConfig,\n ...component.position,\n type: component.key,\n x: component.position.w > 1 ? 0 : (layouts.length * 2) % cols,\n y: Infinity,\n })\n );\n };\n\n /* istanbul ignore next */\n const [, drop] = useDrop({\n accept: \"component\",\n canDrop: (item, monitor) => monitor.isOver({ shallow: true }),\n drop: (component: WorkbenchComponent) => {\n addComponent?.(component);\n },\n });\n\n const handleClearLayout = () => {\n handleChange([]);\n };\n\n const handleSave = useCallback(() => {\n onSave?.(layouts);\n }, [layouts, onSave]);\n\n const handleSetting = () => {\n onSetting?.();\n };\n\n const handleCancel = () => {\n onCancel?.();\n };\n\n const handleActionClick = (action: SimpleAction) => {\n const { event } = action;\n\n switch (event) {\n case \"clear\":\n showDialog({\n type: \"confirm\",\n title: \"清空确认\",\n content: \"将清空所有卡片,从零开始编辑,该操作无法撤回。\",\n }).then(handleClearLayout);\n break;\n default:\n onActionClick?.(\n action,\n (layouts ?? []).map((item) => ({ ...item, i: getRealKey(item.i) }))\n );\n }\n };\n\n const handleLayoutItemDrop = useCallback((component: WorkbenchComponent,layout: ExtraLayout,index: number): void => {\n handleChange(\n update(layouts, {\n $splice: [\n [\n index,\n 0,\n {\n ...defaultCardConfig,\n ...component.position,\n type: component.key,\n ...pick(layout, [\"x\", \"y\"]),\n },\n ],\n ],\n })\n );\n },\n [handleChange, layouts]\n );\n\n const handleDeleteItem = useCallback(\n (deletedItem: WorkbenchComponent) => {\n handleChange(\n layouts.filter((item) => getRealKey(item.i) !== deletedItem.key) ?? []\n );\n },\n [handleChange, layouts]\n );\n\n const renderChild = useMemo(\n () =>\n layouts\n .map((layout, index) => {\n const component = componentList.find(\n (item) => item.key === getRealKey(layout.type as string)\n );\n if (!component) {\n return null;\n }\n return (\n <div\n className=\"drag-box\"\n data-grid={{...(component.position ?? {}),...layout, w: layout.cardWidth || layout.w }}\n key={layout.i}\n >\n <DroppableComponentLayoutItem\n component={component}\n isEdit={isEdit}\n layout={layout}\n onDrop={(component) =>\n handleLayoutItemDrop(component, layout, index)\n }\n onDelete={() => handleDeleteItem(component)}\n />\n </div>\n );\n })\n .filter(Boolean),\n [layouts, componentList, isEdit, handleLayoutItemDrop, handleDeleteItem]\n );\n\n const handleWatchLayoutSizeChange = useCallback(() => {\n if (layoutWrapperRef && isEdit) {\n const { top } =\n layoutWrapperRef.current?.getClientRects()?.[0] ?? ({} as DOMRect);\n top !== undefined &&\n setLayoutWrapperStyle({\n height: document.body.clientHeight - top,\n });\n }\n }, [isEdit]);\n\n useEffect(() => {\n if (isEdit) {\n handleWatchLayoutSizeChange();\n setLayouts(layoutsProps || []); // 编辑的情况下需要动态改变一些布局\n window.addEventListener(\"resize\", handleWatchLayoutSizeChange);\n\n return () => {\n window.removeEventListener(\"resize\", handleWatchLayoutSizeChange);\n };\n }\n }, [isEdit, handleWatchLayoutSizeChange, layoutsProps, setLayouts]);\n\n return (\n <div className={styles.gridLayoutWrapper} ref={gridLayoutRef}>\n {isEdit && (\n <div className={styles.componentWrapper} style={layoutWrapperStyle}>\n <div className={styles.componentTitle}>{cardTitle}</div>\n <div className={styles.componentList}>\n <WrappedSidebarMenu>\n {componentList?.map((component, index) => (\n <DraggableComponentMenuItem\n component={component}\n onClick={() => {\n addComponent(component);\n }}\n key={component.key || index}\n />\n ))}\n </WrappedSidebarMenu>\n {toolbarBricks?.useBrick && (\n <ReactUseMultipleBricks useBrick={toolbarBricks.useBrick} />\n )}\n </div>\n </div>\n )}\n <div\n className={styles.layoutWrapper}\n ref={layoutWrapperRef}\n style={layoutWrapperStyle}\n >\n {isEdit && (\n <div className={styles.actionsWrapper}>\n <WrappedButton type=\"primary\" onClick={handleSave}>\n 保存\n </WrappedButton>\n <WrappedButton onClick={handleCancel}>取消</WrappedButton>\n {showSettingButton && (\n <WrappedButton\n data-testid=\"setting-button\"\n onClick={handleSetting}\n >\n 设置\n </WrappedButton>\n )}\n <WrappedDropdownButton\n btnText=\"更多\"\n icon={{ lib: \"antd\", icon: \"down\" }}\n actions={[\n ...(isAdmin\n ? [{ text: \"另存为模板\", event: \"saveAsTemplate\" }]\n : []),\n { text: \"从模版加载\", event: \"loadFromTemplate\" },\n { text: \"清空所有\", danger: true, event: \"clear\" },\n ]}\n onActionClick={(e) => {\n handleActionClick(e.detail);\n }}\n data-testid=\"edit-layout-actions\"\n />\n </div>\n )}\n <ResponsiveReactGridLayout\n className={styles.layout}\n draggableCancel={`.${layoutItemStyles.deleteIcon},.edit-actions,.ignore-item`}\n breakpoints={{ lg: 1300, md: 1024, sm: 768 }}\n rowHeight={1}\n cols={{ lg: 3, md: 3, sm: isEdit ? 3 : 1 }}\n isResizable={false}\n isDraggable={isEdit}\n onDrag={handleDragCallback}\n onLayoutChange={handleLayoutChange}\n onBreakpointChange={handleBreakpointChange}\n innerRef={drop}\n >\n {renderChild}\n </ResponsiveReactGridLayout>\n </div>\n </div>\n );\n});\n\n/**\n * 工作台布局V2,未使用shadow dom\n */\nexport\n@defineElement(\"eo-workbench-layout-v2\", { shadowOptions: false })\nclass EoWorkbenchLayoutV2 extends ReactNextElement {\n #componentRef = createRef<EoWorkbenchLayoutV2ComponentRef>();\n\n @property()\n accessor cardTitle: string | undefined;\n\n @property({ type: Boolean })\n accessor isEdit: boolean | undefined;\n\n @property({ attribute: false })\n accessor layouts: ExtraLayout[] | undefined;\n\n @property({ attribute: false })\n accessor toolbarBricks: { useBrick: UseSingleBrickConf[] } | undefined;\n\n @property({ attribute: false })\n accessor componentList: WorkbenchComponent[] | undefined;\n /**\n * description: 用于设置页面样式和布局的按钮\n */\n @property({ type: Boolean })\n accessor showSettingButton: boolean | undefined;\n\n @event({ type: \"change\" })\n accessor #changeEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleChange = (layouts: ExtraLayout[]) => {\n this.#changeEvent.emit(layouts);\n };\n\n @event({ type: \"save\" })\n accessor #saveEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleSave = (layouts: ExtraLayout[]) => {\n this.#saveEvent.emit(layouts);\n };\n\n @event({ type: \"cancel\" })\n accessor #cancelEvent!: EventEmitter<void>;\n\n #handleCancel = () => {\n this.#cancelEvent.emit();\n };\n\n @event({ type: \"setting\" })\n accessor #settingEvent!: EventEmitter<void>;\n #handleSetting = () => {\n this.#settingEvent.emit();\n };\n\n /**\n * 操作点击事件\n * @detail {\n action: SimpleAction;\n layouts: Layout[];\n }\n */\n @event({ type: \"action.click\" })\n accessor #actionClickEvent!: EventEmitter<{\n action: SimpleAction;\n layouts: Layout[];\n }>;\n\n #handleActionClick = (action: SimpleAction, layouts: Layout[]): void => {\n this.#actionClickEvent.emit({ action, layouts });\n action.event &&\n this.dispatchEvent(new CustomEvent(action.event, { detail: layouts }));\n };\n\n @method()\n setLayouts(layouts: Layout[]) {\n this.#componentRef.current?.setLayouts(layouts);\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 <DndProvider backend={HTML5Backend} context={window}>\n <EoWorkbenchLayoutComponent\n cardTitle={this.cardTitle}\n layouts={this.layouts}\n toolbarBricks={this.toolbarBricks}\n componentList={this.componentList}\n showSettingButton={this.showSettingButton}\n isEdit={this.isEdit}\n onChange={this.#handleChange}\n onSave={this.#handleSave}\n onCancel={this.#handleCancel}\n onActionClick={this.#handleActionClick}\n onSetting={this.#handleSetting}\n ref={this.#componentRef}\n />\n </DndProvider>\n );\n }\n}\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,\n.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,\n.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n export default content && content.locals ? content.locals : undefined;\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, `.component--MVAoEnGN{height:100%}.editMask--nl6r17tE{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.deleteIcon--tNyE_ou4{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.deleteIcon--tNyE_ou4:hover{color:var(--color-error)}.deleteIcon--tNyE_ou4:active{color:var(--color-error-active)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"component\": `component--MVAoEnGN`,\n\t\"editMask\": `editMask--nl6r17tE`,\n\t\"deleteIcon\": `deleteIcon--tNyE_ou4`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\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]!./styles.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\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]!./styles.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n EoSidebarMenuItem,\n EoSidebarMenuItemProps,\n} from \"@next-bricks/nav/sidebar/sidebar-menu-item\";\nimport { useDrag } from \"react-dnd\";\n\nimport { WorkbenchComponent } from \"../interfaces\";\n\nconst WrappedSidebarMenuItem = wrapBrick<\n EoSidebarMenuItem,\n EoSidebarMenuItemProps\n>(\"eo-sidebar-menu-item\");\n\nexport interface DraggableComponentMenuItemProps {\n component: WorkbenchComponent;\n onClick?(): void;\n}\n\nexport function DraggableComponentMenuItem(\n props: DraggableComponentMenuItemProps\n): React.ReactElement {\n const { component, onClick } = props;\n const { title } = component;\n /* istanbul ignore next */\n const [{ isDragging }, drag] = useDrag({\n type: \"component\",\n item: component,\n collect: (monitor) => ({ isDragging: monitor.isDragging() }),\n });\n\n return (\n <WrappedSidebarMenuItem\n icon={{\n lib: \"antd\",\n icon: \"menu\",\n }}\n title={title}\n style={{ opacity: isDragging ? 0.4 : 1 }}\n onClick={onClick}\n data-testid=\"draggable-component-menu-item\"\n ref={drag}\n >\n {title}\n </WrappedSidebarMenuItem>\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\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_0___ 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]!../../../../node_modules/react-grid-layout/css/styles.css\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_1___ 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]!../../../../node_modules/react-resizable/css/styles.css\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../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, `.react-grid-layout{position:relative;transition:height 200ms ease}.react-grid-item{transition:all 200ms ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:0.2;transition-duration:100ms;z-index:2;-webkit-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item > .react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item > .react-resizable-handle::after{content:\"\";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,0.4);border-bottom:2px solid rgba(0,0,0,0.4)}.react-resizable-hide > .react-resizable-handle{display:none}.react-grid-item > .react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-w,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-n,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","// 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, `.gridLayoutWrapper--DIttynOM{display:flex;height:100%;position:relative}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{overflow:auto}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP{width:200px;padding:6px 12px;overflow-y:scroll;box-shadow:1px 0 0 0 var(--palette-gray-5);background:var(--color-fill-bg-container-1);z-index:999;position:sticky;top:0}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentTitle--nKf9GEoj{font-size:16px;padding:6px 0;font-weight:500}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB{margin-top:6px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{flex:1;display:flex;flex-direction:column;align-items:center}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{width:100%}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj{flex-grow:1;max-width:1300px;margin:0 auto}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{position:sticky;top:0;z-index:999;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"gridLayoutWrapper\": `gridLayoutWrapper--DIttynOM`,\n\t\"componentWrapper\": `componentWrapper--P8xsKOQP`,\n\t\"layoutWrapper\": `layoutWrapper--pk1t3UAR`,\n\t\"componentTitle\": `componentTitle--nKf9GEoj`,\n\t\"componentList\": `componentList--s3XnAYsB`,\n\t\"layout\": `layout--kz28taJj`,\n\t\"actionsWrapper\": `actionsWrapper--vQro2Dyn`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","_classPrivateGetter","s","r","a","WrappedIcon","wrapBrick","DroppableComponentLayoutItem","props","component","isEdit","onDrop","onDelete","layout","drop","useDrop","accept","React","className","styles","style","ref","editMask","onMouseDown","e","preventDefault","ReactUseBrick","useBrick","cloneDeep","data","icon","lib","deleteIcon","onClick","defineElement","property","event","method","createDecorators","WrappedSidebarMenu","WrappedButton","WrappedDropdownButton","onActionClick","showDialog","unwrapProvider","defaultCardConfig","cardWidth","showMoreIcon","cardBorderStyle","cardTitleFontSize","cardBorderWidth","cardBorderRadius","cardTitleColor","cardBorderColor","getRealKey","key","includes","split","isAdmin","auth","getAuth","EoWorkbenchLayoutComponent","forwardRef","_ref","cardTitle","layouts","layoutsProps","toolbarBricks","componentList","showSettingButton","onChange","onSave","onCancel","onSetting","ResponsiveReactGridLayout","useMemo","WidthProvider","Responsive","gridLayoutRef","useRef","layoutWrapperRef","layoutCacheRef","_setLayouts","useState","current","cols","setCols","layoutWrapperStyle","setLayoutWrapperStyle","setLayouts","useCallback","useImperativeHandle","handleChange","handleLayoutChange","currentLayout","currentLayoutMap","_","isAllowAction","t","x","w","y","h","i","minH","matchItem","find","item","_currentLayout$t$minH","Math","max","undefined","map","v","type","random","addComponent","position","Infinity","canDrop","monitor","isOver","shallow","handleClearLayout","handleSave","handleLayoutItemDrop","index","$splice","pick","handleDeleteItem","deletedItem","_layouts$filter","filter","renderChild","_component$position","Boolean","handleWatchLayoutSizeChange","_layoutWrapperRef$cur","_layoutWrapperRef$cur2","top","getClientRects","height","body","clientHeight","useEffect","window","addEventListener","removeEventListener","gridLayoutWrapper","componentWrapper","componentTitle","DraggableComponentMenuItem","ReactUseMultipleBricks","layoutWrapper","actionsWrapper","handleCancel","handleSetting","btnText","actions","text","danger","action","title","content","then","handleActionClick","detail","draggableCancel","layoutItemStyles","breakpoints","lg","md","sm","rowHeight","isResizable","isDraggable","onDrag","handleDragCallback","oldItem","newItem","_gridLayoutRef$curren","placeholderDOM","querySelector","classList","contains","add","onLayoutChange","onBreakpointChange","handleBreakpointChange","_newBreakpoint","newCols","innerRef","_EoWorkbenchLayoutV","_componentRef","WeakMap","_A","_B","_C","_D","_E","_F","_G","_EoWorkbenchLayoutV2_brand","WeakSet","_handleChange","_H","_handleSave","_I","_handleCancel","_J","_handleSetting","_K","_handleActionClick","EoWorkbenchLayoutV2","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","createRef","_init_cardTitle","_init_extra_cardTitle","_init_isEdit","_init_extra_isEdit","_init_layouts","_init_extra_layouts","_init_toolbarBricks","_init_extra_toolbarBricks","_init_componentList","_init_extra_componentList","_init_showSettingButton","_init_extra_showSettingButton","_init_changeEvent","_init_extra_changeEvent","this","_get_changeEvent","emit","_init_saveEvent","_init_extra_saveEvent","_get_saveEvent","_init_cancelEvent","_init_extra_cancelEvent","_get_cancelEvent","_init_settingEvent","_init_extra_settingEvent","_get_settingEvent","_init_actionClickEvent","_init_extra_actionClickEvent","_get_actionClickEvent","dispatchEvent","CustomEvent","_classPrivateFieldGet","_classPrivateFieldSet","_classPrivateFieldGet2","connectedCallback","display","super","render","DndProvider","backend","HTML5Backend","context","_EoWorkbenchLayoutV2","_set_changeEvent","_set_saveEvent","_set_cancelEvent","_set_settingEvent","_set_actionClickEvent","c","_initClass","_applyDecs","shadowOptions","attribute","o","has","_checkInRHS","nonce","setAttribute","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","id","setAttributes","insert","domAPI","locals","stylesInDOM","getIndexByIdentifier","identifier","result","modulesToDom","list","idCountMap","identifiers","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","privateSet","WrappedSidebarMenuItem","isDragging","drag","useDrag","collect","opacity","memo","target","styleTarget","HTMLIFrameElement","contentDocument","head","getTarget","Error","element","createElement","attributes"],"sourceRoot":""}