@next-bricks/visual-builder 1.38.12 → 1.39.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.
Files changed (40) hide show
  1. package/dist/bricks.json +12 -12
  2. package/dist/chunks/{1940.0dd01dd4.js → 1940.83be4317.js} +2 -2
  3. package/dist/chunks/{9559.4e223669.js.map → 1940.83be4317.js.map} +1 -1
  4. package/dist/chunks/3831.d86abb48.js +2 -0
  5. package/dist/chunks/3831.d86abb48.js.map +1 -0
  6. package/dist/chunks/{4291.f0245838.js → 4291.28fadd65.js} +2 -2
  7. package/dist/chunks/{4291.f0245838.js.map → 4291.28fadd65.js.map} +1 -1
  8. package/dist/chunks/5247.e1dcd513.js +3 -0
  9. package/dist/chunks/{5247.869172ba.js.map → 5247.e1dcd513.js.map} +1 -1
  10. package/dist/chunks/{8595.7f5079c6.js → 8595.c2633081.js} +3 -3
  11. package/dist/chunks/8595.c2633081.js.map +1 -0
  12. package/dist/chunks/{9080.09a7e610.js → 9080.e8687386.js} +2 -2
  13. package/dist/chunks/{9080.09a7e610.js.map → 9080.e8687386.js.map} +1 -1
  14. package/dist/chunks/{9559.4e223669.js → 9559.040c34a4.js} +2 -2
  15. package/dist/chunks/{1940.0dd01dd4.js.map → 9559.040c34a4.js.map} +1 -1
  16. package/dist/chunks/chat-conversation.4f9551df.js +2 -0
  17. package/dist/chunks/chat-conversation.4f9551df.js.map +1 -0
  18. package/dist/chunks/main.a6dc2bdf.js +2 -0
  19. package/dist/chunks/{main.56ac3be7.js.map → main.a6dc2bdf.js.map} +1 -1
  20. package/dist/chunks/{property-editor.3ced3a84.js → property-editor.37a0c94a.js} +2 -2
  21. package/dist/chunks/{property-editor.3ced3a84.js.map → property-editor.37a0c94a.js.map} +1 -1
  22. package/dist/chunks/{workbench-history-action.2114495b.js → workbench-history-action.3c741fb6.js} +3 -3
  23. package/dist/chunks/{workbench-history-action.2114495b.js.map → workbench-history-action.3c741fb6.js.map} +1 -1
  24. package/dist/index.110efd7c.js +2 -0
  25. package/dist/index.110efd7c.js.map +1 -0
  26. package/dist/manifest.json +72 -72
  27. package/dist/types.json +309 -309
  28. package/package.json +2 -2
  29. package/dist/chunks/3831.d8ad73ce.js +0 -2
  30. package/dist/chunks/3831.d8ad73ce.js.map +0 -1
  31. package/dist/chunks/5247.869172ba.js +0 -3
  32. package/dist/chunks/8595.7f5079c6.js.map +0 -1
  33. package/dist/chunks/chat-conversation.e84ad258.js +0 -2
  34. package/dist/chunks/chat-conversation.e84ad258.js.map +0 -1
  35. package/dist/chunks/main.56ac3be7.js +0 -2
  36. package/dist/index.1de70298.js +0 -2
  37. package/dist/index.1de70298.js.map +0 -1
  38. /package/dist/chunks/{5247.869172ba.js.LICENSE.txt → 5247.e1dcd513.js.LICENSE.txt} +0 -0
  39. /package/dist/chunks/{8595.7f5079c6.js.LICENSE.txt → 8595.c2633081.js.LICENSE.txt} +0 -0
  40. /package/dist/chunks/{workbench-history-action.2114495b.js.LICENSE.txt → workbench-history-action.3c741fb6.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_visual_builder=globalThis.webpackChunk_next_bricks_visual_builder||[]).push([[9080],{21477:(e,t,o)=>{o.d(t,{r:()=>s});var a=o(89575),r=o(18769),n=o.n(r),l=o(47327),i=o(37091),c=o(25908),p=o(22080);function s(e){var t;const[o,s]=(0,r.useState)(!0),m=(0,i.mN)(),d=(0,i.Mt)(),{url:u,href:v}=null!==(t=e.transform)&&void 0!==t?t:{url:"url",href:"href"},f=(0,r.useMemo)((()=>(0,c.fA)(p.ADVANCED_CHANGE_KEY,((e,t)=>o=>{o(e,t)}))),[]),b=(0,r.useCallback)((()=>{const t=!o;s(t),m.setValues({[t?u:v]:e.value}),m.deleteValuesIn(t?v:u)}),[o,m,u,e.value,v]),g=(0,r.useCallback)((t=>{e.onChange(t),m.setValues({[o?u:v]:t})}),[e,m,o,u,v]),h=(0,r.useMemo)((()=>o?"内链":"外链"),[o]),x=(0,r.useCallback)((e=>{var t;const{values:o}=e.getState(),a=d.props.name;e.setValuesIn(a,null!==(t=o[u])&&void 0!==t?t:o[v]),s(!o[v])}),[d.props.name,v,u]);return(0,r.useEffect)((()=>{m.addEffects("onAdvancedChange",(()=>{(0,c.oJ)(x),f(((e,t)=>{const o=d.props.name;e&&t.deleteValuesIn(o)}))}))}),[m,d,f,x]),(0,r.useEffect)((()=>{x(m)}),[]),n().createElement(l.pd,(0,a.A)({},e,{suffix:n().createElement("div",{style:{cursor:"pointer"},slot:"suffix",onClick:b},h),onChange:e=>g(e.target.value)}))}},26110:(e,t,o)=>{o.d(t,{i:()=>I});var a=o(47327),r=o(99646),n=o(17070),l=o(18769),i=o.n(l),c=o(72591),p=o.n(c),s=o(1740),m=o.n(s),d=o(88128),u=o.n(d),v=o(30855),f=o.n(v),b=o(93051),g=o.n(b),h=o(73656),x=o.n(h),y=o(53607),E={};E.styleTagTransform=x(),E.setAttributes=f(),E.insert=u().bind(null,"head"),E.domAPI=m(),E.insertStyleElement=g(),p()(y.A,E);const k=y.A&&y.A.locals?y.A.locals:void 0;var C=o(53373),A=o.n(C),W=function(e){return e[e.top=0]="top",e[e.right=1]="right",e[e.bottom=2]="bottom",e[e.left=3]="left",e}(W||{});function I(e){let{onChange:t,value:o,mode:c}=e;const[p,s]=(0,l.useState)(),[m,d]=(0,l.useState)(!1),[u,v]=(0,l.useState)(),f=(0,l.useMemo)((()=>"in"===c),[c]),b=e=>{v(e)},g=()=>{v(null)},h=(0,l.useCallback)(((e,a)=>{const r=a.match(/\d+/),n=Number(null!==r?r[0]:0),l=m?`${n}px`:`${(null!=o?o:"0px 0px 0px 0px").match(/(\d+px)/g).map(((t,o)=>W[e]===o?`${n}px`:t)).join(" ")}`;t(l)}),[m,t,o]),x=e=>{d(e)},y=(0,l.useCallback)((e=>{const t=(null!=e?e:"0px 0px 0px 0px").match(/(\d+)/g);var o,a;1===t.length?(d(!0),s({top:t[0],right:t[0],bottom:t[0],left:t[0]})):s({top:t[0],right:t[1],bottom:null!==(o=t[2])&&void 0!==o?o:t[0],left:null!==(a=t[3])&&void 0!==a?a:t[1]})}),[]);return(0,l.useEffect)((()=>{y(o)}),[o,y]),i().createElement("div",{className:k.boxSizeComponent},i().createElement("div",{className:k.leftWrapper},i().createElement("div",{className:k.outBox},i().createElement("div",{className:k.inBox,style:{position:f?"relative":"initial"}},i().createElement("div",{className:A()(k.top,k.line,k.vertical,{[k.active]:"top"===u||m})}),i().createElement("div",{className:A()(k.right,k.line,k.horizontal,{[k.active]:"right"===u||m})}),i().createElement("div",{className:A()(k.left,k.line,k.horizontal,{[k.active]:"left"===u||m})}),i().createElement("div",{className:A()(k.bottom,k.line,k.vertical,{[k.active]:"bottom"===u||m})}),i().createElement("div",{className:"connect-btn"},m?i().createElement(r.A,{style:{color:"var(--color-brand)"},onClick:()=>x(!1)}):i().createElement(n.A,{onClick:()=>x(!0)}))))),i().createElement("div",{className:k.rightWrapper},i().createElement("div",{className:k.inputWrapper},i().createElement(a.pd,{prefix:"上",placeholder:"0",value:null==p?void 0:p.top,onFocus:()=>b("top"),onBlur:g,onChange:e=>h("top",e.target.value)}),i().createElement(a.pd,{prefix:"左",placeholder:"0",value:null==p?void 0:p.left,onFocus:()=>b("left"),onChange:e=>h("left",e.target.value),onBlur:g})),i().createElement("div",{className:k.inputWrapper},i().createElement(a.pd,{prefix:"下",placeholder:"0",value:null==p?void 0:p.bottom,onFocus:()=>b("bottom"),onBlur:g,onChange:e=>h("bottom",e.target.value)}),i().createElement(a.pd,{prefix:"右",placeholder:"0",value:null==p?void 0:p.right,onFocus:()=>b("right"),onBlur:g,onChange:e=>h("right",e.target.value)}))))}},27621:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".custom-category-title{font-size:14px;font-weight:600;line-height:28px;margin:16px -16px 6px -16px;padding-left:16px;background-color:var(--palette-gray-6)}.custom-category-title:first-child{margin-top:0}",""]);const i=l},30767:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".useChildrenSelectWrapper--IczULak5{display:flex;gap:12px}.useChildrenSelectWrapper--IczULak5 .plusIcon--CyQgp1bl{cursor:pointer;font-size:22px;color:var(--color-brand)}",""]),l.locals={useChildrenSelectWrapper:"useChildrenSelectWrapper--IczULak5",plusIcon:"plusIcon--CyQgp1bl"};const i=l},33768:(e,t,o)=>{o.d(t,{H:()=>n});var a=o(18769),r=o.n(a);function n(e){return r().createElement("div",{className:"custom-category-title"},e.text)}},40966:(e,t,o)=>{o.d(t,{U:()=>i});var a=o(89575),r=o(18769),n=o.n(r),l=o(47327);function i(e){const[t,o]=(0,r.useState)(),i=(0,r.useCallback)((t=>{e.onChange(t?`${t}${e.suffix}`:void 0)}),[e]);return(0,r.useEffect)((()=>{var t;const a=(null!==(t=e.value)&&void 0!==t?t:"").replace(e.suffix,"");o(a)}),[e.suffix,e.value]),n().createElement(l.pd,(0,a.A)({},e,{value:t,onChange:e=>i(e.target.value)}))}},42803:(e,t,o)=>{o.d(t,{M:()=>h});var a=o(89575),r=o(18769),n=o.n(r),l=o(47327),i=o(11280),c=o(37091),p=o(53373),s=o.n(p),m=o(41030),d=o(25908),u=o(71321),v=o(55310),f=o.n(v);const b=(0,i.wrapBrick)("eo-icon"),g=(0,i.wrapBrick)("eo-tooltip");function h(e){var t;const o=(0,c.mN)(),i=(0,c.Mt)(),p=(0,c.X0)(),v=(0,c.Ov)(),[h,x]=(0,r.useState)("CodeEditor"===(null===(t=i.component)||void 0===t?void 0:t[0])?"advanced":"normal"),y=(0,r.useMemo)((()=>"advanced"===h),[h]),E=(0,r.useRef)([]),k=(0,r.useCallback)((()=>{const e=E.current,t=y?"normal":"advanced",a="advanced"===t;x(t),i.setComponent(a?"CodeEditor":e[0],{...a?{...null!=v?v:{},lineNumbers:"off",glyphMargin:!1}:e[1]});const r=o.getValuesIn(i.props.name);if(a&&(0,m.isObject)(r))o.setInitialValues({[i.props.name]:f().safeDump(r)});else if(!a&&r&&"string"==typeof r){let e;try{e=f().load(r)}catch{e=null}o.setInitialValues({[i.props.name]:e},"overwrite")}}),[o,i,y,v]);return(0,c.Uf)((()=>{(0,d.J4)(i.props.name,(e=>{let{value:t}=e;"string"==typeof t&&(0,u.isEvaluable)(t)&&(x("advanced"),i.setComponent("CodeEditor",{...null!=v?v:{},lineNumbers:"off",glyphMargin:!1}))}))})),(0,r.useEffect)((()=>{E.current=[p["x-component"],p["x-component-props"]]}),[p]),n().createElement("div",{className:"advanced-form-item"},n().createElement(l.eI,(0,a.A)({},e,{layout:y?null:e.layout||"vertical"}),e.children),n().createElement("div",{className:"advanced-mode-check-wrapper"},n().createElement(g,{content:"normal"===h?"使用表达式":"关闭表达式"},n().createElement(b,{className:s()({isActive:y}),lib:"fa",icon:"code",onClick:k}))))}},43995:(e,t,o)=>{o.d(t,{qZ:()=>l,N4:()=>n,cV:()=>c});var a=o(41030);const r={type:"void",name:"style",children:[{name:"width",title:"宽度",type:"string",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:{name:"Input"}},{name:"height",title:"高度",type:"string",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:{name:"Input"}},{type:"string",name:"textAlign",title:"对齐",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:"TextAlignRadio"},{type:"string",name:"background",title:"背景",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:"ColorPicker"},{type:"string",name:"margin",title:"外边距(px)",decorator:{name:"FormItemWithoutAdvanced"},component:"BoxSize"},{type:"string",name:"padding",title:"内边距(px)",decorator:{name:"FormItemWithoutAdvanced"},component:{name:"BoxSize",props:{mode:"in"}}}]},n="#normal_form",l="#advanced_form";function i(e,t){var o;return e?"string"==typeof e?{[`x-${t}`]:e}:{[`x-${t}`]:e.name,[`x-${t}-props`]:{..."CodeEditor"===e.name?{extraLibs:"{{extraLibs}}",links:"{{links}}",tokenClick:"{{tokenClick}}",lineNumbers:"off",glyphMargin:!1}:{},...null!==(o=e.props)&&void 0!==o?o:{}}}:{}}function c(e,t){const{isDefault:o=!0}="object"==typeof t?t:{},c=e=>{let t,o={};e.children&&(t=e.children.map(c));const{name:r,type:n,component:l,decorator:p}=e,s="string"===n?{name:"FormItem"}:"boolean"===n?{name:"FormItem",props:{layout:"horizontal"}}:{},m="string"===n?{name:"Input"}:"boolean"===n?{name:"Switch",props:{size:"small"}}:{},d={type:null!=n?n:"void",...(0,a.omit)(e,["children","component","decorator"]),...i({...s,..."string"==typeof p?{name:p}:p},"decorator"),...i({...m,..."string"==typeof l?{name:l}:l},"component")};if("string"==typeof r?o[r]=d:o=d,t){d.properties={};for(const e of t)"string"==typeof e.name?d.properties[e.name]=e:d.properties={...d.properties,...e}}return o};return o?{type:"object",properties:{[n]:{type:"void","x-component":"CustomTab","x-component-props":{activeTab:"property"},properties:{property:{type:"void","x-component":"CustomTab.TabPanel","x-component-props":{title:"属性",tab:"property"},properties:c({...e,children:[{name:"id",title:"id",type:"string",decorator:{name:"FormItem",props:{layout:"horizontal"}}},{name:"hidden",title:"隐藏",type:"boolean"},...e.children]})},style:{type:"object",name:"style","x-component":"CustomTab.TabPanel","x-component-props":{title:"样式",tab:"style"},properties:c(r)}}},[l]:{name:l,type:"string","x-decorator":"FormItemWithoutAdvanced","x-component":"CodeEditor","x-component-props":{extraLibs:"{{extraLibs}}",links:"{{links}}",tokenClick:"{{tokenClick}}",minLines:5,glyphMargin:!1}}}}:c(e)}},45768:(e,t,o)=>{o.d(t,{_:()=>C});var a=o(18769),r=o.n(a),n=o(47327),l=o(74808),i=o(11469),c=o(72591),p=o.n(c),s=o(1740),m=o.n(s),d=o(88128),u=o.n(d),v=o(30855),f=o.n(v),b=o(93051),g=o.n(b),h=o(73656),x=o.n(h),y=o(30767),E={};E.styleTagTransform=x(),E.setAttributes=f(),E.insert=u().bind(null,"head"),E.domAPI=m(),E.insertStyleElement=g(),p()(y.A,E);const k=y.A&&y.A.locals?y.A.locals:void 0;function C(e){return r().createElement("div",{className:k.useChildrenSelectWrapper},r().createElement(n.l6,e),r().createElement(l.A,{title:"点击添加子节点"},r().createElement(i.A,{className:k.plusIcon,onClick:()=>{var t;null==e||null===(t=e.triggerAction)||void 0===t||t.call(e,"add-slot")}})))}},53607:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".boxSizeComponent--a96YEG0R{display:flex;gap:8px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he{width:80px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF{border:1px solid var(--palette-gray-6);height:80px;padding:10px;border-radius:6px;position:relative}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u{border:1px dashed var(--palette-gray-5);height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u .connect-btn--iG4M5iHm{cursor:pointer}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI{position:absolute;background-color:var(--palette-gray-6)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI.active--kwDvPu6c{background-color:var(--color-brand)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .vertical--PTCuTBBU{left:50%;width:2px;height:10px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .horizontal--C56jlFEU{top:50%;width:10px;height:2px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .top--IAYy5_q3{top:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .right--lywbhIOD{right:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .bottom--bcHIN61S{bottom:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .left--ZqcFMgN_{left:0}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ{flex:1;display:flex;flex-direction:column;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs{display:flex;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs .antdV5-input{text-align:right}",""]),l.locals={boxSizeComponent:"boxSizeComponent--a96YEG0R",leftWrapper:"leftWrapper--YJoTo4he",outBox:"outBox--bSstM0ZF",inBox:"inBox--VAdQyQ8u","connect-btn":"connect-btn--iG4M5iHm",line:"line--MEU6xbQI",active:"active--kwDvPu6c",vertical:"vertical--PTCuTBBU",horizontal:"horizontal--C56jlFEU",top:"top--IAYy5_q3",right:"right--lywbhIOD",bottom:"bottom--bcHIN61S",left:"left--ZqcFMgN_",rightWrapper:"rightWrapper--VEyni1eJ",inputWrapper:"inputWrapper--dlSjkwzs"};const i=l},55944:(e,t,o)=>{o.d(t,{F:()=>B});var a=o(18769),r=o.n(a),n=o(72591),l=o.n(n),i=o(1740),c=o.n(i),p=o(88128),s=o.n(p),m=o(30855),d=o.n(m),u=o(93051),v=o.n(u),f=o(73656),b=o.n(f),g=o(80803),h={};h.styleTagTransform=b(),h.setAttributes=d(),h.insert=s().bind(null,"head"),h.domAPI=c(),h.insertStyleElement=v(),l()(g.A,h);const x=g.A&&g.A.locals?g.A.locals:void 0;var y=o(11469),E=o(37091),k=o(70042),C=o(14128),A=o(43995),W=o(22080),I=o(25908),T=o(41030);const S="$custom_wrapper",w="$option_id";function B(e){let{schema:t,displayLabel:o,value:n,onChange:l}=e;const[i,c]=(0,a.useState)(),[p,s]=(0,a.useState)(!1),[m,d]=(0,a.useState)([]),u=(0,a.useMemo)((()=>(0,A.cV)({name:S,type:"void",children:t},{isDefault:!1})),[t]),v=(0,a.useMemo)((()=>(0,I.DG)()),[]),f=(0,a.useCallback)((()=>{let e=m;e=i?m.map((e=>e[w]===i[w]?v.values:e)):m.concat(v.values),d(e),l(e.map((e=>(0,T.omit)(e,[w])))),s(!1)}),[v,l,m,i]),b=()=>{s(!1)},g=(0,a.useCallback)((()=>{const e=m.filter((e=>e[w]!==i[w]));d(e),l(e.map((e=>(0,T.omit)(e,[w])))),s(!1)}),[m,i,l]);return(0,a.useEffect)((()=>{n&&d(n.map((e=>({...e,[w]:Math.random()}))))}),[n]),r().createElement("div",{className:x.actionOptionsWrapper},r().createElement(k.A,{title:(i?"编辑":"新增")+"数据",open:p,onOk:f,onCancel:b,footer:()=>r().createElement("div",{className:x.modalFooter},r().createElement("div",null,i&&r().createElement(C.Ay,{danger:!0,type:"primary",onClick:g},"删除")),r().createElement("div",null,r().createElement(C.Ay,{type:"text",onClick:b},"取消"),r().createElement(C.Ay,{type:"primary",onClick:f},"确认")))},r().createElement(E.Op,{form:v},r().createElement(W.SchemaField,{schema:null==u?void 0:u[S]}))),r().createElement("div",{className:x.optionList},m.length?m.map(((e,t)=>r().createElement("div",{className:x.optionItem,key:t,onClick:()=>{return c(t=e),v.setValues(t,"overwrite"),void s(!0);var t}},e[o]))):r().createElement("div",{className:x.emptyItem},"无数据")),r().createElement(y.A,{className:x.addIcon,onClick:()=>{c(null),v.reset(),s(!0)}}))}},56265:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,'.advanced-form-item{position:relative}.advanced-form-item .advanced-mode-check-wrapper{position:absolute;top:6px;right:6px;line-height:0;z-index:1}.advanced-form-item .advanced-mode-check-wrapper eo-icon[icon="code"]{cursor:pointer;padding:2px 4px;border-radius:6px;color:var(--text-color-secondary)}.advanced-form-item .advanced-mode-check-wrapper eo-icon.isActive[icon="code"]{background:var(--color-brand);color:var(--color-normal-text)}',""]);const i=l},60074:(e,t,o)=>{var a=o(72591),r=o.n(a),n=o(1740),l=o.n(n),i=o(88128),c=o.n(i),p=o(30855),s=o.n(p),m=o(93051),d=o.n(m),u=o(73656),v=o.n(u),f=o(73276),b={};b.styleTagTransform=v(),b.setAttributes=s(),b.insert=c().bind(null,"head"),b.domAPI=l(),b.insertStyleElement=d(),r()(f.A,b),f.A&&f.A.locals&&f.A.locals},68409:(e,t,o)=>{o.d(t,{v:()=>W});var a=o(37091),r=o(18769),n=o.n(r),l=o(72591),i=o.n(l),c=o(1740),p=o.n(c),s=o(88128),m=o.n(s),d=o(30855),u=o.n(d),v=o(93051),f=o.n(v),b=o(73656),g=o.n(b),h=o(70244),x={};x.styleTagTransform=g(),x.setAttributes=u(),x.insert=m().bind(null,"head"),x.domAPI=p(),x.insertStyleElement=f(),i()(h.A,x);const y=h.A&&h.A.locals?h.A.locals:void 0;var E=o(53373),k=o.n(E);const C=(0,r.createContext)({}),A=()=>{const e=(0,a.Mt)(),t=(0,a.X0)(),o=[];return t.mapProperties(((t,a)=>{var r;const n=e.query(e.address.concat(a)).take();if("none"!==(null==n?void 0:n.display)&&"hidden"!==(null==n?void 0:n.display)&&(null===(r=t["x-component"])||void 0===r?void 0:r.indexOf("CustomTab.TabPanel"))>-1){var l,i;const e=(null==n||null===(l=n.componentProps)||void 0===l?void 0:l.key)||(null==t||null===(i=t["x-component-props"])||void 0===i?void 0:i.key)||a;o.push({name:a,props:{...null==t?void 0:t["x-component-props"],...null==n?void 0:n.componentProps,key:e},schema:t})}})),o};function W(e){var t;const o=A(),[a,l]=(0,r.useState)(null===(t=o[0])||void 0===t?void 0:t.name);return n().createElement(C.Provider,{value:{activeTab:a}},n().createElement("div",{className:y.customTabWrapper},n().createElement("div",{className:y.customTabList},o.map((e=>{var t,o;return n().createElement("div",{className:k()(y.customTabItem,{[y.active]:a===(null===(t=e.props)||void 0===t?void 0:t.key)}),key:null===(o=e.props)||void 0===o?void 0:o.key,onClick:()=>l(e.props.key)},n().createElement("div",{className:y.customTabItemLabel},e.props.title))}))),e.children))}W.TabPanel=function(e){const{activeTab:t}=(0,r.useContext)(C);return(0,r.useMemo)((()=>e.tab===t),[t,e.tab])?n().createElement("div",{className:y.customTabPanel},e.children):null}},70244:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG{position:relative;display:flex;align-items:stretch;justify-items:flex-start;margin-bottom:16px;border-radius:4px;background-color:var(--palette-gray-blue-3);padding:2px;width:108px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5{position:relative;text-align:center;cursor:pointer;transition:all 0.2s cubic-bezier(0.645,0.045,0.355,1);border-radius:4px;transform:translateZ(0)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5.active--ULNnDJEv{background-color:var(--palette-gray-2);box-shadow:0 1px 2px 0 rgba(0,0,0,0.03),0 1px 6px -1px rgba(0,0,0,0.02),0 2px 4px 0 rgba(0,0,0,0.02);color:var(--color-brand)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5 .customTabItemLabel--scejdE0w{padding:2px 12px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5:hover{color:var(--color-brand-hover)}",""]),l.locals={customTabWrapper:"customTabWrapper--rhCkGBJ2",customTabList:"customTabList--yAojeBWG",customTabItem:"customTabItem--Zjxji9O5",active:"active--ULNnDJEv",customTabItemLabel:"customTabItemLabel--scejdE0w"};const i=l},72513:(e,t,o)=>{o.d(t,{r:()=>l});var a=o(18769),r=o.n(a);const n=(0,o(11280).wrapBrick)("eo-icon-select",{onChange:"change"});function l(e){return r().createElement(n,e)}},73276:(e,t,o)=>{o.d(t,{A:()=>s});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n),i=o(56265),c=o(27621),p=l()(r());p.i(i.A),p.i(c.A),p.push([e.id,".property-form-wrapper{padding-left:16px;padding-right:16px}.property-form-wrapper .antdV5-formily-item-feedback-layout-loose{margin-bottom:10px}.property-form-wrapper .antdV5-formily-item .antdV5-formily-item-control{align-self:center}.property-form-wrapper .antdV5-formily-item-layout-vertical .antdV5-formily-item-label{line-height:32px;min-height:30px;padding:0}",""]);const s=p},74287:(e,t,o)=>{o.d(t,{p:()=>s});var a=o(89575),r=o(18769),n=o.n(r),l=o(38144),i=o(11979),c=o(56394),p=o(34514);function s(e){return n().createElement(l.Ay.Group,(0,a.A)({},e,{size:"small"}),n().createElement(l.Ay.Button,{value:"left"},n().createElement(i.A,null)),!e.hideCenter&&n().createElement(l.Ay.Button,{value:"center"},n().createElement(c.A,null)),n().createElement(l.Ay.Button,{value:"right"},n().createElement(p.A,null)))}},75067:(e,t,o)=>{o.d(t,{h:()=>b});var a=o(89575),r=o(18769),n=o.n(r),l=o(45660),i=o(97043);const c=[{label:"gray",colors:Object.values({"var(--palette-gray-1)":"#ffffff","var(--palette-gray-2)":"#fafafa","var(--palette-gray-3)":"#f5f5f5","var(--palette-gray-4)":"#e8e8e8","var(--palette-gray-5)":"#d9d9d9","var(--palette-gray-6)":"#bfbfbf","var(--palette-gray-7)":"#8c8c8c","var(--palette-gray-8)":"#595959","var(--palette-gray-9)":"#262626","var(--palette-gray-10)":"#000000"})}].concat((p={red:"#f24c25",orange:"#e38306",yellow:"#fadb14",green:"#08BF33",cyan:"#21d4f3",blue:"#1a7aff",purple:"#893ad8",amber:"#f7bf02",pink:"#ff1a79",indigo:"#3844e8","deep-purple":"#6641f9","gray-blue":"#778dc3",teal:"#1dc897"},Object.entries(p).map((e=>{let[t,o]=e;return{label:t,colors:(0,i.cM)(o)}}))));var p;const s={"#595959":"var(--color-normal-text)","#bfbfbf":"var(--color-disabled-text)","#8c8c8c":"var(--color-secondary-text)","#262626":"var(--color-strong-text)","#d9d9d9":"var(--color-border-divider-line)","#e8e8e8":"var(--color-text-divider-line)"},m={"#08bf33":"var(--theme-green-color)","#77e686":"var(--theme-green-border-color)","#e6ffe7":"var(--theme-green-background)","#f24c25":"var(--theme-red-color)","#ffbba1":"var(--theme-red-border-color)","#fff5f0":"var(--theme-red-background)","#1a7aff":"var(--theme-blue-color)","#94cbff":"var(--theme-blue-border-color)","#e6f4ff":"var(--theme-blue-background)","#e38306":"var(--theme-orange-color)","#ffd582":"var(--theme-orange-border-color)","#fff8e6":"var(--theme-orange-background)","#21d4f3":"var(--theme-cyan-color)","#9efaff":"var(--theme-cyan-border-color)","#f0ffff":"var(--theme-cyan-background)","#893ad8":"var(--theme-purple-color)","#e6bfff":"var(--theme-purple-border-color)","#faf0ff":"var(--theme-purple-background)","#3844e8":"var(--theme-geekblue-color)","#b8c4ff":"var(--theme-geekblue-border-color)","#f0f3ff":"var(--theme-geekblue-background)"},d={...s,...m},u=[{label:"文本与线条",colors:Object.keys(s),defaultOpen:!0},{label:"常用主题色",colors:Object.keys(m),defaultOpen:!0}].concat((e=>[{label:"调色板",colors:e.map((e=>e.colors)).flat(),defaultOpen:!1}])(c)),v=(e,t,o)=>{if(o in t)return t[o];let a=o;return e.forEach((e=>{const t=e.label,o=e.colors.findIndex((e=>"string"==typeof e?e===a:e.toHsbString()===a));o>=0&&(a=`var(--palette-${t}-${o+1})`)})),a},f=(e,t,o)=>{var a;for(const e in t)if(t[e]===o)return e;const[,r,n]=null!==(a=o.match(/^var\(--palette-([\w-]+)-(\d+)\)$/))&&void 0!==a?a:[];let l=o;return r&&n&&e.forEach((e=>{const t=e.colors[Number(n)-1];e.label===r&&t&&(l="string"==typeof t?t:t.toHsbString())})),l};function b(e){const[t,o]=(0,r.useState)(),i=(0,r.useMemo)((()=>u),[]);return(0,r.useEffect)((()=>{if(e.value){const t=f(c,d,e.value);o(t)}else{var t;o(null!==(t=e.value)&&void 0!==t?t:"")}}),[e.value]),n().createElement(l.A,(0,a.A)({getPopupContainer:()=>document.body,showText:e=>v(c,d,e.toHexString()),presets:i},e,{value:t,onChange:(t,o)=>{var a,r;a=o,null===(r=e.onChange)||void 0===r||r.call(e,v(c,d,a))}}))}},80803:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7,.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;font-size:14px;border-top:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{cursor:pointer}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:hover{background-color:var(--palette-gray-5)}.actionOptionsWrapper--HuwosiuP .addIcon--ptNA7JRE{width:100%;border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;padding:4px;font-size:22px}.modalFooter--eRxlWgTL{display:flex;justify-content:space-between}",""]),l.locals={actionOptionsWrapper:"actionOptionsWrapper--HuwosiuP",optionList:"optionList--lJm6W8Kr",emptyItem:"emptyItem--gMv4r0f7",optionItem:"optionItem--xEPQt9Mw",addIcon:"addIcon--ptNA7JRE",modalFooter:"modalFooter--eRxlWgTL"};const i=l},93824:(e,t,o)=>{o.d(t,{S:()=>m});var a=o(89575),r=o(18769),n=o.n(r),l=o(11280),i=o(55310),c=o.n(i),p=o(41030);const s=(0,l.wrapBrick)("vs.code-editor",{onChange:"code.change",tokenClick:"token.click"});function m(e){var t;const[o,l]=(0,r.useState)(),[i,m]=(0,r.useState)(),d=(0,r.useCallback)((t=>{var o;m(t.detail?t.detail:void 0);const a=t.detail?c().safeLoad(t.detail):void 0;null==e||null===(o=e.onChange)||void 0===o||o.call(e,a)}),[e]);return(0,r.useEffect)((()=>{if(e.value&&!o){let t=e.value;t&&"string"!=typeof t&&(t=(0,p.isEmpty)(t)?"":c().safeDump(Array.isArray(t)?t:(0,p.omit)(t,(0,p.isEmpty)(t.style)?["style"]:[]),{skipInvalid:!0})),m(t),l(t)}}),[e.value,o]),n().createElement(s,(0,a.A)({minLines:null!==(t=e.minLines)&&void 0!==t?t:1,automaticLayout:"fit-content",language:"brick_next_yaml",theme:"vs-dark"},e,{value:i,onChange:d}))}}}]);
2
- //# sourceMappingURL=9080.09a7e610.js.map
1
+ "use strict";(globalThis.webpackChunk_next_bricks_visual_builder=globalThis.webpackChunk_next_bricks_visual_builder||[]).push([[9080],{21477:(e,t,o)=>{o.d(t,{r:()=>s});var a=o(89575),r=o(18769),n=o.n(r),l=o(69708),i=o(37091),c=o(25908),p=o(22080);function s(e){var t;const[o,s]=(0,r.useState)(!0),m=(0,i.mN)(),d=(0,i.Mt)(),{url:u,href:v}=null!==(t=e.transform)&&void 0!==t?t:{url:"url",href:"href"},f=(0,r.useMemo)((()=>(0,c.fA)(p.ADVANCED_CHANGE_KEY,((e,t)=>o=>{o(e,t)}))),[]),b=(0,r.useCallback)((()=>{const t=!o;s(t),m.setValues({[t?u:v]:e.value}),m.deleteValuesIn(t?v:u)}),[o,m,u,e.value,v]),g=(0,r.useCallback)((t=>{e.onChange(t),m.setValues({[o?u:v]:t})}),[e,m,o,u,v]),h=(0,r.useMemo)((()=>o?"内链":"外链"),[o]),x=(0,r.useCallback)((e=>{var t;const{values:o}=e.getState(),a=d.props.name;e.setValuesIn(a,null!==(t=o[u])&&void 0!==t?t:o[v]),s(!o[v])}),[d.props.name,v,u]);return(0,r.useEffect)((()=>{m.addEffects("onAdvancedChange",(()=>{(0,c.oJ)(x),f(((e,t)=>{const o=d.props.name;e&&t.deleteValuesIn(o)}))}))}),[m,d,f,x]),(0,r.useEffect)((()=>{x(m)}),[]),n().createElement(l.pd,(0,a.A)({},e,{suffix:n().createElement("div",{style:{cursor:"pointer"},slot:"suffix",onClick:b},h),onChange:e=>g(e.target.value)}))}},26110:(e,t,o)=>{o.d(t,{i:()=>I});var a=o(69708),r=o(99646),n=o(17070),l=o(18769),i=o.n(l),c=o(72591),p=o.n(c),s=o(1740),m=o.n(s),d=o(88128),u=o.n(d),v=o(30855),f=o.n(v),b=o(93051),g=o.n(b),h=o(73656),x=o.n(h),y=o(53607),E={};E.styleTagTransform=x(),E.setAttributes=f(),E.insert=u().bind(null,"head"),E.domAPI=m(),E.insertStyleElement=g(),p()(y.A,E);const k=y.A&&y.A.locals?y.A.locals:void 0;var C=o(53373),A=o.n(C),W=function(e){return e[e.top=0]="top",e[e.right=1]="right",e[e.bottom=2]="bottom",e[e.left=3]="left",e}(W||{});function I(e){let{onChange:t,value:o,mode:c}=e;const[p,s]=(0,l.useState)(),[m,d]=(0,l.useState)(!1),[u,v]=(0,l.useState)(),f=(0,l.useMemo)((()=>"in"===c),[c]),b=e=>{v(e)},g=()=>{v(null)},h=(0,l.useCallback)(((e,a)=>{const r=a.match(/\d+/),n=Number(null!==r?r[0]:0),l=m?`${n}px`:`${(null!=o?o:"0px 0px 0px 0px").match(/(\d+px)/g).map(((t,o)=>W[e]===o?`${n}px`:t)).join(" ")}`;t(l)}),[m,t,o]),x=e=>{d(e)},y=(0,l.useCallback)((e=>{const t=(null!=e?e:"0px 0px 0px 0px").match(/(\d+)/g);var o,a;1===t.length?(d(!0),s({top:t[0],right:t[0],bottom:t[0],left:t[0]})):s({top:t[0],right:t[1],bottom:null!==(o=t[2])&&void 0!==o?o:t[0],left:null!==(a=t[3])&&void 0!==a?a:t[1]})}),[]);return(0,l.useEffect)((()=>{y(o)}),[o,y]),i().createElement("div",{className:k.boxSizeComponent},i().createElement("div",{className:k.leftWrapper},i().createElement("div",{className:k.outBox},i().createElement("div",{className:k.inBox,style:{position:f?"relative":"initial"}},i().createElement("div",{className:A()(k.top,k.line,k.vertical,{[k.active]:"top"===u||m})}),i().createElement("div",{className:A()(k.right,k.line,k.horizontal,{[k.active]:"right"===u||m})}),i().createElement("div",{className:A()(k.left,k.line,k.horizontal,{[k.active]:"left"===u||m})}),i().createElement("div",{className:A()(k.bottom,k.line,k.vertical,{[k.active]:"bottom"===u||m})}),i().createElement("div",{className:"connect-btn"},m?i().createElement(r.A,{style:{color:"var(--color-brand)"},onClick:()=>x(!1)}):i().createElement(n.A,{onClick:()=>x(!0)}))))),i().createElement("div",{className:k.rightWrapper},i().createElement("div",{className:k.inputWrapper},i().createElement(a.pd,{prefix:"上",placeholder:"0",value:null==p?void 0:p.top,onFocus:()=>b("top"),onBlur:g,onChange:e=>h("top",e.target.value)}),i().createElement(a.pd,{prefix:"左",placeholder:"0",value:null==p?void 0:p.left,onFocus:()=>b("left"),onChange:e=>h("left",e.target.value),onBlur:g})),i().createElement("div",{className:k.inputWrapper},i().createElement(a.pd,{prefix:"下",placeholder:"0",value:null==p?void 0:p.bottom,onFocus:()=>b("bottom"),onBlur:g,onChange:e=>h("bottom",e.target.value)}),i().createElement(a.pd,{prefix:"右",placeholder:"0",value:null==p?void 0:p.right,onFocus:()=>b("right"),onBlur:g,onChange:e=>h("right",e.target.value)}))))}},27621:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".custom-category-title{font-size:14px;font-weight:600;line-height:28px;margin:16px -16px 6px -16px;padding-left:16px;background-color:var(--palette-gray-6)}.custom-category-title:first-child{margin-top:0}",""]);const i=l},30767:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".useChildrenSelectWrapper--IczULak5{display:flex;gap:12px}.useChildrenSelectWrapper--IczULak5 .plusIcon--CyQgp1bl{cursor:pointer;font-size:22px;color:var(--color-brand)}",""]),l.locals={useChildrenSelectWrapper:"useChildrenSelectWrapper--IczULak5",plusIcon:"plusIcon--CyQgp1bl"};const i=l},33768:(e,t,o)=>{o.d(t,{H:()=>n});var a=o(18769),r=o.n(a);function n(e){return r().createElement("div",{className:"custom-category-title"},e.text)}},40966:(e,t,o)=>{o.d(t,{U:()=>i});var a=o(89575),r=o(18769),n=o.n(r),l=o(69708);function i(e){const[t,o]=(0,r.useState)(),i=(0,r.useCallback)((t=>{e.onChange(t?`${t}${e.suffix}`:void 0)}),[e]);return(0,r.useEffect)((()=>{var t;const a=(null!==(t=e.value)&&void 0!==t?t:"").replace(e.suffix,"");o(a)}),[e.suffix,e.value]),n().createElement(l.pd,(0,a.A)({},e,{value:t,onChange:e=>i(e.target.value)}))}},42803:(e,t,o)=>{o.d(t,{M:()=>h});var a=o(89575),r=o(18769),n=o.n(r),l=o(69708),i=o(11280),c=o(37091),p=o(53373),s=o.n(p),m=o(41030),d=o(25908),u=o(71321),v=o(55310),f=o.n(v);const b=(0,i.wrapBrick)("eo-icon"),g=(0,i.wrapBrick)("eo-tooltip");function h(e){var t;const o=(0,c.mN)(),i=(0,c.Mt)(),p=(0,c.X0)(),v=(0,c.Ov)(),[h,x]=(0,r.useState)("CodeEditor"===(null===(t=i.component)||void 0===t?void 0:t[0])?"advanced":"normal"),y=(0,r.useMemo)((()=>"advanced"===h),[h]),E=(0,r.useRef)([]),k=(0,r.useCallback)((()=>{const e=E.current,t=y?"normal":"advanced",a="advanced"===t;x(t),i.setComponent(a?"CodeEditor":e[0],{...a?{...null!=v?v:{},lineNumbers:"off",glyphMargin:!1}:e[1]});const r=o.getValuesIn(i.props.name);if(a&&(0,m.isObject)(r))o.setInitialValues({[i.props.name]:f().safeDump(r)});else if(!a&&r&&"string"==typeof r){let e;try{e=f().load(r)}catch{e=null}o.setInitialValues({[i.props.name]:e},"overwrite")}}),[o,i,y,v]);return(0,c.Uf)((()=>{(0,d.J4)(i.props.name,(e=>{let{value:t}=e;"string"==typeof t&&(0,u.isEvaluable)(t)&&(x("advanced"),i.setComponent("CodeEditor",{...null!=v?v:{},lineNumbers:"off",glyphMargin:!1}))}))})),(0,r.useEffect)((()=>{E.current=[p["x-component"],p["x-component-props"]]}),[p]),n().createElement("div",{className:"advanced-form-item"},n().createElement(l.eI,(0,a.A)({},e,{layout:y?null:e.layout||"vertical"}),e.children),n().createElement("div",{className:"advanced-mode-check-wrapper"},n().createElement(g,{content:"normal"===h?"使用表达式":"关闭表达式"},n().createElement(b,{className:s()({isActive:y}),lib:"fa",icon:"code",onClick:k}))))}},43995:(e,t,o)=>{o.d(t,{qZ:()=>l,N4:()=>n,cV:()=>c});var a=o(41030);const r={type:"void",name:"style",children:[{name:"width",title:"宽度",type:"string",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:{name:"Input"}},{name:"height",title:"高度",type:"string",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:{name:"Input"}},{type:"string",name:"textAlign",title:"对齐",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:"TextAlignRadio"},{type:"string",name:"background",title:"背景",decorator:{name:"FormItemWithoutAdvanced",props:{layout:"vertail"}},component:"ColorPicker"},{type:"string",name:"margin",title:"外边距(px)",decorator:{name:"FormItemWithoutAdvanced"},component:"BoxSize"},{type:"string",name:"padding",title:"内边距(px)",decorator:{name:"FormItemWithoutAdvanced"},component:{name:"BoxSize",props:{mode:"in"}}}]},n="#normal_form",l="#advanced_form";function i(e,t){var o;return e?"string"==typeof e?{[`x-${t}`]:e}:{[`x-${t}`]:e.name,[`x-${t}-props`]:{..."CodeEditor"===e.name?{extraLibs:"{{extraLibs}}",links:"{{links}}",tokenClick:"{{tokenClick}}",lineNumbers:"off",glyphMargin:!1}:{},...null!==(o=e.props)&&void 0!==o?o:{}}}:{}}function c(e,t){const{isDefault:o=!0}="object"==typeof t?t:{},c=e=>{let t,o={};e.children&&(t=e.children.map(c));const{name:r,type:n,component:l,decorator:p}=e,s="string"===n?{name:"FormItem"}:"boolean"===n?{name:"FormItem",props:{layout:"horizontal"}}:{},m="string"===n?{name:"Input"}:"boolean"===n?{name:"Switch",props:{size:"small"}}:{},d={type:null!=n?n:"void",...(0,a.omit)(e,["children","component","decorator"]),...i({...s,..."string"==typeof p?{name:p}:p},"decorator"),...i({...m,..."string"==typeof l?{name:l}:l},"component")};if("string"==typeof r?o[r]=d:o=d,t){d.properties={};for(const e of t)"string"==typeof e.name?d.properties[e.name]=e:d.properties={...d.properties,...e}}return o};return o?{type:"object",properties:{[n]:{type:"void","x-component":"CustomTab","x-component-props":{activeTab:"property"},properties:{property:{type:"void","x-component":"CustomTab.TabPanel","x-component-props":{title:"属性",tab:"property"},properties:c({...e,children:[{name:"id",title:"id",type:"string",decorator:{name:"FormItem",props:{layout:"horizontal"}}},{name:"hidden",title:"隐藏",type:"boolean"},...e.children]})},style:{type:"object",name:"style","x-component":"CustomTab.TabPanel","x-component-props":{title:"样式",tab:"style"},properties:c(r)}}},[l]:{name:l,type:"string","x-decorator":"FormItemWithoutAdvanced","x-component":"CodeEditor","x-component-props":{extraLibs:"{{extraLibs}}",links:"{{links}}",tokenClick:"{{tokenClick}}",minLines:5,glyphMargin:!1}}}}:c(e)}},45768:(e,t,o)=>{o.d(t,{_:()=>C});var a=o(18769),r=o.n(a),n=o(69708),l=o(74808),i=o(11469),c=o(72591),p=o.n(c),s=o(1740),m=o.n(s),d=o(88128),u=o.n(d),v=o(30855),f=o.n(v),b=o(93051),g=o.n(b),h=o(73656),x=o.n(h),y=o(30767),E={};E.styleTagTransform=x(),E.setAttributes=f(),E.insert=u().bind(null,"head"),E.domAPI=m(),E.insertStyleElement=g(),p()(y.A,E);const k=y.A&&y.A.locals?y.A.locals:void 0;function C(e){return r().createElement("div",{className:k.useChildrenSelectWrapper},r().createElement(n.l6,e),r().createElement(l.A,{title:"点击添加子节点"},r().createElement(i.A,{className:k.plusIcon,onClick:()=>{var t;null==e||null===(t=e.triggerAction)||void 0===t||t.call(e,"add-slot")}})))}},53607:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".boxSizeComponent--a96YEG0R{display:flex;gap:8px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he{width:80px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF{border:1px solid var(--palette-gray-6);height:80px;padding:10px;border-radius:6px;position:relative}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u{border:1px dashed var(--palette-gray-5);height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u .connect-btn--iG4M5iHm{cursor:pointer}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI{position:absolute;background-color:var(--palette-gray-6)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI.active--kwDvPu6c{background-color:var(--color-brand)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .vertical--PTCuTBBU{left:50%;width:2px;height:10px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .horizontal--C56jlFEU{top:50%;width:10px;height:2px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .top--IAYy5_q3{top:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .right--lywbhIOD{right:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .bottom--bcHIN61S{bottom:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .left--ZqcFMgN_{left:0}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ{flex:1;display:flex;flex-direction:column;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs{display:flex;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs .antdV5-input{text-align:right}",""]),l.locals={boxSizeComponent:"boxSizeComponent--a96YEG0R",leftWrapper:"leftWrapper--YJoTo4he",outBox:"outBox--bSstM0ZF",inBox:"inBox--VAdQyQ8u","connect-btn":"connect-btn--iG4M5iHm",line:"line--MEU6xbQI",active:"active--kwDvPu6c",vertical:"vertical--PTCuTBBU",horizontal:"horizontal--C56jlFEU",top:"top--IAYy5_q3",right:"right--lywbhIOD",bottom:"bottom--bcHIN61S",left:"left--ZqcFMgN_",rightWrapper:"rightWrapper--VEyni1eJ",inputWrapper:"inputWrapper--dlSjkwzs"};const i=l},55944:(e,t,o)=>{o.d(t,{F:()=>B});var a=o(18769),r=o.n(a),n=o(72591),l=o.n(n),i=o(1740),c=o.n(i),p=o(88128),s=o.n(p),m=o(30855),d=o.n(m),u=o(93051),v=o.n(u),f=o(73656),b=o.n(f),g=o(80803),h={};h.styleTagTransform=b(),h.setAttributes=d(),h.insert=s().bind(null,"head"),h.domAPI=c(),h.insertStyleElement=v(),l()(g.A,h);const x=g.A&&g.A.locals?g.A.locals:void 0;var y=o(11469),E=o(37091),k=o(70042),C=o(14128),A=o(43995),W=o(22080),I=o(25908),T=o(41030);const S="$custom_wrapper",w="$option_id";function B(e){let{schema:t,displayLabel:o,value:n,onChange:l}=e;const[i,c]=(0,a.useState)(),[p,s]=(0,a.useState)(!1),[m,d]=(0,a.useState)([]),u=(0,a.useMemo)((()=>(0,A.cV)({name:S,type:"void",children:t},{isDefault:!1})),[t]),v=(0,a.useMemo)((()=>(0,I.DG)()),[]),f=(0,a.useCallback)((()=>{let e=m;e=i?m.map((e=>e[w]===i[w]?v.values:e)):m.concat(v.values),d(e),l(e.map((e=>(0,T.omit)(e,[w])))),s(!1)}),[v,l,m,i]),b=()=>{s(!1)},g=(0,a.useCallback)((()=>{const e=m.filter((e=>e[w]!==i[w]));d(e),l(e.map((e=>(0,T.omit)(e,[w])))),s(!1)}),[m,i,l]);return(0,a.useEffect)((()=>{n&&d(n.map((e=>({...e,[w]:Math.random()}))))}),[n]),r().createElement("div",{className:x.actionOptionsWrapper},r().createElement(k.A,{title:(i?"编辑":"新增")+"数据",open:p,onOk:f,onCancel:b,footer:()=>r().createElement("div",{className:x.modalFooter},r().createElement("div",null,i&&r().createElement(C.Ay,{danger:!0,type:"primary",onClick:g},"删除")),r().createElement("div",null,r().createElement(C.Ay,{type:"text",onClick:b},"取消"),r().createElement(C.Ay,{type:"primary",onClick:f},"确认")))},r().createElement(E.Op,{form:v},r().createElement(W.SchemaField,{schema:null==u?void 0:u[S]}))),r().createElement("div",{className:x.optionList},m.length?m.map(((e,t)=>r().createElement("div",{className:x.optionItem,key:t,onClick:()=>{return c(t=e),v.setValues(t,"overwrite"),void s(!0);var t}},e[o]))):r().createElement("div",{className:x.emptyItem},"无数据")),r().createElement(y.A,{className:x.addIcon,onClick:()=>{c(null),v.reset(),s(!0)}}))}},56265:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,'.advanced-form-item{position:relative}.advanced-form-item .advanced-mode-check-wrapper{position:absolute;top:6px;right:6px;line-height:0;z-index:1}.advanced-form-item .advanced-mode-check-wrapper eo-icon[icon="code"]{cursor:pointer;padding:2px 4px;border-radius:6px;color:var(--text-color-secondary)}.advanced-form-item .advanced-mode-check-wrapper eo-icon.isActive[icon="code"]{background:var(--color-brand);color:var(--color-normal-text)}',""]);const i=l},60074:(e,t,o)=>{var a=o(72591),r=o.n(a),n=o(1740),l=o.n(n),i=o(88128),c=o.n(i),p=o(30855),s=o.n(p),m=o(93051),d=o.n(m),u=o(73656),v=o.n(u),f=o(73276),b={};b.styleTagTransform=v(),b.setAttributes=s(),b.insert=c().bind(null,"head"),b.domAPI=l(),b.insertStyleElement=d(),r()(f.A,b),f.A&&f.A.locals&&f.A.locals},68409:(e,t,o)=>{o.d(t,{v:()=>W});var a=o(37091),r=o(18769),n=o.n(r),l=o(72591),i=o.n(l),c=o(1740),p=o.n(c),s=o(88128),m=o.n(s),d=o(30855),u=o.n(d),v=o(93051),f=o.n(v),b=o(73656),g=o.n(b),h=o(70244),x={};x.styleTagTransform=g(),x.setAttributes=u(),x.insert=m().bind(null,"head"),x.domAPI=p(),x.insertStyleElement=f(),i()(h.A,x);const y=h.A&&h.A.locals?h.A.locals:void 0;var E=o(53373),k=o.n(E);const C=(0,r.createContext)({}),A=()=>{const e=(0,a.Mt)(),t=(0,a.X0)(),o=[];return t.mapProperties(((t,a)=>{var r;const n=e.query(e.address.concat(a)).take();if("none"!==(null==n?void 0:n.display)&&"hidden"!==(null==n?void 0:n.display)&&(null===(r=t["x-component"])||void 0===r?void 0:r.indexOf("CustomTab.TabPanel"))>-1){var l,i;const e=(null==n||null===(l=n.componentProps)||void 0===l?void 0:l.key)||(null==t||null===(i=t["x-component-props"])||void 0===i?void 0:i.key)||a;o.push({name:a,props:{...null==t?void 0:t["x-component-props"],...null==n?void 0:n.componentProps,key:e},schema:t})}})),o};function W(e){var t;const o=A(),[a,l]=(0,r.useState)(null===(t=o[0])||void 0===t?void 0:t.name);return n().createElement(C.Provider,{value:{activeTab:a}},n().createElement("div",{className:y.customTabWrapper},n().createElement("div",{className:y.customTabList},o.map((e=>{var t,o;return n().createElement("div",{className:k()(y.customTabItem,{[y.active]:a===(null===(t=e.props)||void 0===t?void 0:t.key)}),key:null===(o=e.props)||void 0===o?void 0:o.key,onClick:()=>l(e.props.key)},n().createElement("div",{className:y.customTabItemLabel},e.props.title))}))),e.children))}W.TabPanel=function(e){const{activeTab:t}=(0,r.useContext)(C);return(0,r.useMemo)((()=>e.tab===t),[t,e.tab])?n().createElement("div",{className:y.customTabPanel},e.children):null}},70244:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG{position:relative;display:flex;align-items:stretch;justify-items:flex-start;margin-bottom:16px;border-radius:4px;background-color:var(--palette-gray-blue-3);padding:2px;width:108px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5{position:relative;text-align:center;cursor:pointer;transition:all 0.2s cubic-bezier(0.645,0.045,0.355,1);border-radius:4px;transform:translateZ(0)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5.active--ULNnDJEv{background-color:var(--palette-gray-2);box-shadow:0 1px 2px 0 rgba(0,0,0,0.03),0 1px 6px -1px rgba(0,0,0,0.02),0 2px 4px 0 rgba(0,0,0,0.02);color:var(--color-brand)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5 .customTabItemLabel--scejdE0w{padding:2px 12px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5:hover{color:var(--color-brand-hover)}",""]),l.locals={customTabWrapper:"customTabWrapper--rhCkGBJ2",customTabList:"customTabList--yAojeBWG",customTabItem:"customTabItem--Zjxji9O5",active:"active--ULNnDJEv",customTabItemLabel:"customTabItemLabel--scejdE0w"};const i=l},72513:(e,t,o)=>{o.d(t,{r:()=>l});var a=o(18769),r=o.n(a);const n=(0,o(11280).wrapBrick)("eo-icon-select",{onChange:"change"});function l(e){return r().createElement(n,e)}},73276:(e,t,o)=>{o.d(t,{A:()=>s});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n),i=o(56265),c=o(27621),p=l()(r());p.i(i.A),p.i(c.A),p.push([e.id,".property-form-wrapper{padding-left:16px;padding-right:16px}.property-form-wrapper .antdV5-formily-item-feedback-layout-loose{margin-bottom:10px}.property-form-wrapper .antdV5-formily-item .antdV5-formily-item-control{align-self:center}.property-form-wrapper .antdV5-formily-item-layout-vertical .antdV5-formily-item-label{line-height:32px;min-height:30px;padding:0}",""]);const s=p},74287:(e,t,o)=>{o.d(t,{p:()=>s});var a=o(89575),r=o(18769),n=o.n(r),l=o(38144),i=o(11979),c=o(56394),p=o(34514);function s(e){return n().createElement(l.Ay.Group,(0,a.A)({},e,{size:"small"}),n().createElement(l.Ay.Button,{value:"left"},n().createElement(i.A,null)),!e.hideCenter&&n().createElement(l.Ay.Button,{value:"center"},n().createElement(c.A,null)),n().createElement(l.Ay.Button,{value:"right"},n().createElement(p.A,null)))}},75067:(e,t,o)=>{o.d(t,{h:()=>b});var a=o(89575),r=o(18769),n=o.n(r),l=o(45660),i=o(97043);const c=[{label:"gray",colors:Object.values({"var(--palette-gray-1)":"#ffffff","var(--palette-gray-2)":"#fafafa","var(--palette-gray-3)":"#f5f5f5","var(--palette-gray-4)":"#e8e8e8","var(--palette-gray-5)":"#d9d9d9","var(--palette-gray-6)":"#bfbfbf","var(--palette-gray-7)":"#8c8c8c","var(--palette-gray-8)":"#595959","var(--palette-gray-9)":"#262626","var(--palette-gray-10)":"#000000"})}].concat((p={red:"#f24c25",orange:"#e38306",yellow:"#fadb14",green:"#08BF33",cyan:"#21d4f3",blue:"#1a7aff",purple:"#893ad8",amber:"#f7bf02",pink:"#ff1a79",indigo:"#3844e8","deep-purple":"#6641f9","gray-blue":"#778dc3",teal:"#1dc897"},Object.entries(p).map((e=>{let[t,o]=e;return{label:t,colors:(0,i.cM)(o)}}))));var p;const s={"#595959":"var(--color-normal-text)","#bfbfbf":"var(--color-disabled-text)","#8c8c8c":"var(--color-secondary-text)","#262626":"var(--color-strong-text)","#d9d9d9":"var(--color-border-divider-line)","#e8e8e8":"var(--color-text-divider-line)"},m={"#08bf33":"var(--theme-green-color)","#77e686":"var(--theme-green-border-color)","#e6ffe7":"var(--theme-green-background)","#f24c25":"var(--theme-red-color)","#ffbba1":"var(--theme-red-border-color)","#fff5f0":"var(--theme-red-background)","#1a7aff":"var(--theme-blue-color)","#94cbff":"var(--theme-blue-border-color)","#e6f4ff":"var(--theme-blue-background)","#e38306":"var(--theme-orange-color)","#ffd582":"var(--theme-orange-border-color)","#fff8e6":"var(--theme-orange-background)","#21d4f3":"var(--theme-cyan-color)","#9efaff":"var(--theme-cyan-border-color)","#f0ffff":"var(--theme-cyan-background)","#893ad8":"var(--theme-purple-color)","#e6bfff":"var(--theme-purple-border-color)","#faf0ff":"var(--theme-purple-background)","#3844e8":"var(--theme-geekblue-color)","#b8c4ff":"var(--theme-geekblue-border-color)","#f0f3ff":"var(--theme-geekblue-background)"},d={...s,...m},u=[{label:"文本与线条",colors:Object.keys(s),defaultOpen:!0},{label:"常用主题色",colors:Object.keys(m),defaultOpen:!0}].concat((e=>[{label:"调色板",colors:e.map((e=>e.colors)).flat(),defaultOpen:!1}])(c)),v=(e,t,o)=>{if(o in t)return t[o];let a=o;return e.forEach((e=>{const t=e.label,o=e.colors.findIndex((e=>"string"==typeof e?e===a:e.toHsbString()===a));o>=0&&(a=`var(--palette-${t}-${o+1})`)})),a},f=(e,t,o)=>{var a;for(const e in t)if(t[e]===o)return e;const[,r,n]=null!==(a=o.match(/^var\(--palette-([\w-]+)-(\d+)\)$/))&&void 0!==a?a:[];let l=o;return r&&n&&e.forEach((e=>{const t=e.colors[Number(n)-1];e.label===r&&t&&(l="string"==typeof t?t:t.toHsbString())})),l};function b(e){const[t,o]=(0,r.useState)(),i=(0,r.useMemo)((()=>u),[]);return(0,r.useEffect)((()=>{if(e.value){const t=f(c,d,e.value);o(t)}else{var t;o(null!==(t=e.value)&&void 0!==t?t:"")}}),[e.value]),n().createElement(l.A,(0,a.A)({getPopupContainer:()=>document.body,showText:e=>v(c,d,e.toHexString()),presets:i},e,{value:t,onChange:(t,o)=>{var a,r;a=o,null===(r=e.onChange)||void 0===r||r.call(e,v(c,d,a))}}))}},80803:(e,t,o)=>{o.d(t,{A:()=>i});var a=o(36758),r=o.n(a),n=o(40935),l=o.n(n)()(r());l.push([e.id,".actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7,.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;font-size:14px;border-top:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{cursor:pointer}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:hover{background-color:var(--palette-gray-5)}.actionOptionsWrapper--HuwosiuP .addIcon--ptNA7JRE{width:100%;border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;padding:4px;font-size:22px}.modalFooter--eRxlWgTL{display:flex;justify-content:space-between}",""]),l.locals={actionOptionsWrapper:"actionOptionsWrapper--HuwosiuP",optionList:"optionList--lJm6W8Kr",emptyItem:"emptyItem--gMv4r0f7",optionItem:"optionItem--xEPQt9Mw",addIcon:"addIcon--ptNA7JRE",modalFooter:"modalFooter--eRxlWgTL"};const i=l},93824:(e,t,o)=>{o.d(t,{S:()=>m});var a=o(89575),r=o(18769),n=o.n(r),l=o(11280),i=o(55310),c=o.n(i),p=o(41030);const s=(0,l.wrapBrick)("vs.code-editor",{onChange:"code.change",tokenClick:"token.click"});function m(e){var t;const[o,l]=(0,r.useState)(),[i,m]=(0,r.useState)(),d=(0,r.useCallback)((t=>{var o;m(t.detail?t.detail:void 0);const a=t.detail?c().safeLoad(t.detail):void 0;null==e||null===(o=e.onChange)||void 0===o||o.call(e,a)}),[e]);return(0,r.useEffect)((()=>{if(e.value&&!o){let t=e.value;t&&"string"!=typeof t&&(t=(0,p.isEmpty)(t)?"":c().safeDump(Array.isArray(t)?t:(0,p.omit)(t,(0,p.isEmpty)(t.style)?["style"]:[]),{skipInvalid:!0})),m(t),l(t)}}),[e.value,o]),n().createElement(s,(0,a.A)({minLines:null!==(t=e.minLines)&&void 0!==t?t:1,automaticLayout:"fit-content",language:"brick_next_yaml",theme:"vs-dark"},e,{value:i,onChange:d}))}}}]);
2
+ //# sourceMappingURL=9080.e8687386.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/9080.09a7e610.js","mappings":"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","sources":["webpack:///./src/property-editor/components/common/InputWithUrlComponent.tsx","webpack:///./src/property-editor/components/common/BoxSizeComponent.module.css?766a","webpack:///./src/property-editor/components/common/BoxSizeComponent.tsx","webpack:///./src/property-editor/components/CategoryTitle/CategoryTitle.shadow.css","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.module.css","webpack:///./src/property-editor/components/CategoryTitle/index.tsx","webpack:///./src/property-editor/components/common/InputWithUnitComponent.tsx","webpack:///./src/property-editor/components/AdvancedFormItem/index.tsx","webpack:///./src/property-editor/schema/styles.schema.ts","webpack:///./src/property-editor/utils/formilySchemaFormatter.ts","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.module.css?b0be","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.tsx","webpack:///./src/property-editor/components/common/BoxSizeComponent.module.css","webpack:///./src/property-editor/components/common/CutomOptionsComponent.module.css?273b","webpack:///./src/property-editor/components/common/CustomOptionsComponent.tsx","webpack:///./src/property-editor/components/AdvancedFormItem/AdvancedFormItem.shadow.css","webpack:///./src/property-editor/style.css?280e","webpack:///./src/property-editor/components/common/CustomTab.module.css?aeb2","webpack:///./src/property-editor/components/common/CustomTab.tsx","webpack:///./src/property-editor/components/common/CustomTab.module.css","webpack:///./src/property-editor/components/common/IconSelectComponent.tsx","webpack:///./src/property-editor/style.css","webpack:///./src/property-editor/components/common/TextAlignRadioComponent.tsx","webpack:///./src/property-editor/utils/colorTransform.ts","webpack:///./src/property-editor/components/common/ColorPickerComponent.tsx","webpack:///./src/property-editor/components/common/CutomOptionsComponent.module.css","webpack:///./src/property-editor/components/common/CodeEditorComponent.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Input } from \"@formily/antd-v5\";\nimport { useField, useForm } from \"@formily/react\";\nimport {\n createEffectHook,\n Form,\n onFormInitialValuesChange,\n} from \"@formily/core\";\nimport { ADVANCED_CHANGE_KEY } from \"../../index.js\";\n\ninterface InputWithUrlComponentProps {\n onChange: (value: string) => void;\n value: string;\n name: string;\n advancedMode?: boolean;\n transform: {\n url: string;\n href: string;\n };\n}\n\nexport function InputWithUrlComponent(props: InputWithUrlComponentProps) {\n const [mode, setMode] = useState<boolean>(true);\n const form = useForm();\n const field = useField();\n const { url, href } = props.transform ?? { url: \"url\", href: \"href\" };\n\n const onAdvancedChangeEffect = useMemo(\n () =>\n createEffectHook(\n ADVANCED_CHANGE_KEY,\n (advancedMode, form) => (listener) => {\n listener(advancedMode, form);\n }\n ),\n []\n );\n\n const handleModeClick = useCallback(() => {\n const realMode = !mode;\n setMode(realMode);\n\n form.setValues({ [realMode ? url : href]: props.value });\n form.deleteValuesIn(realMode ? href : url);\n }, [mode, form, url, props.value, href]);\n\n const handleChange = useCallback(\n (value: string) => {\n props.onChange(value);\n\n form.setValues({ [mode ? url : href]: value });\n },\n [props, form, mode, url, href]\n );\n\n const suffixText = useMemo(() => `${mode ? \"内链\" : \"外链\"}`, [mode]);\n\n const computedLink = useCallback(\n (form: Form) => {\n const { values } = form.getState();\n const fieldName = field.props.name;\n\n form.setValuesIn(fieldName, values[url] ?? values[href]);\n\n setMode(!values[href]);\n },\n [field.props.name, href, url]\n );\n\n useEffect(() => {\n form.addEffects(\"onAdvancedChange\", () => {\n onFormInitialValuesChange(computedLink),\n onAdvancedChangeEffect((advancedMode: boolean, form: Form) => {\n const fieldName = field.props.name;\n if (advancedMode) {\n form.deleteValuesIn(fieldName);\n }\n });\n });\n }, [form, field, onAdvancedChangeEffect, computedLink]);\n\n useEffect(() => {\n computedLink(form);\n }, []);\n\n return (\n <Input\n {...props}\n suffix={\n <div\n style={{ cursor: \"pointer\" }}\n slot=\"suffix\"\n onClick={handleModeClick}\n >\n {suffixText}\n </div>\n }\n onChange={(event) => handleChange(event.target.value)}\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[3].use[1]!../../../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./BoxSizeComponent.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]!./BoxSizeComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { Input } from \"@formily/antd-v5\";\nimport { DisconnectOutlined, LinkOutlined } from \"@ant-design/icons\";\nimport React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport styles from \"./BoxSizeComponent.module.css\";\nimport classNames from \"classnames\";\n\ntype Direction = \"top\" | \"bottom\" | \"left\" | \"right\";\n\nenum DirectionEnum {\n top = 0,\n right = 1,\n bottom = 2,\n left = 3,\n}\n\ntype BoxValue = {\n [key in Direction]: number | string;\n};\n\ninterface BoxSizeComponentProps {\n onChange: (value: string) => void;\n value: string;\n mode: \"in\" | \"out\";\n}\n\nexport function BoxSizeComponent({\n onChange,\n value,\n mode,\n}: BoxSizeComponentProps) {\n const [tranformValue, setTransformValue] = useState<BoxValue>();\n const [connect, setConnect] = useState<boolean>(false);\n const [direction, setDirection] = useState<Direction>();\n const isInMode = useMemo(() => mode === \"in\", [mode]);\n\n const handleFocus = (direction: Direction) => {\n setDirection(direction);\n };\n\n const handleBlur = () => {\n setDirection(null);\n };\n\n const handleChange = useCallback(\n (direction: Direction, inputValue: string) => {\n const newValue = inputValue.match(/\\d+/);\n\n const realValue = Number(newValue !== null ? newValue[0] : 0);\n\n const changeValue = connect\n ? `${realValue}px`\n : `${(value ?? \"0px 0px 0px 0px\")\n .match(/(\\d+px)/g)\n .map((item, index) => {\n if (DirectionEnum[direction] === index) {\n return `${realValue}px`;\n }\n return item;\n })\n .join(\" \")}`;\n onChange(changeValue);\n },\n [connect, onChange, value]\n );\n\n const handleConnectClick = (isConnect: boolean) => {\n setConnect(isConnect);\n };\n\n const transfrom = useCallback((value: string) => {\n const realValue = (value ?? \"0px 0px 0px 0px\").match(/(\\d+)/g);\n\n if (realValue.length === 1) {\n setConnect(true);\n\n setTransformValue({\n top: realValue[0],\n right: realValue[0],\n bottom: realValue[0],\n left: realValue[0],\n });\n } else {\n setTransformValue({\n top: realValue[0],\n right: realValue[1],\n bottom: realValue[2] ?? realValue[0],\n left: realValue[3] ?? realValue[1],\n });\n }\n }, []);\n\n useEffect(() => {\n transfrom(value);\n }, [value, transfrom]);\n\n return (\n <div className={styles.boxSizeComponent}>\n <div className={styles.leftWrapper}>\n <div className={styles.outBox}>\n <div\n className={styles.inBox}\n style={{\n position: isInMode ? \"relative\" : \"initial\",\n }}\n >\n <div\n className={classNames(styles.top, styles.line, styles.vertical, {\n [styles.active]: direction === \"top\" || connect,\n })}\n />\n <div\n className={classNames(\n styles.right,\n styles.line,\n styles.horizontal,\n { [styles.active]: direction === \"right\" || connect }\n )}\n />\n <div\n className={classNames(\n styles.left,\n styles.line,\n styles.horizontal,\n { [styles.active]: direction === \"left\" || connect }\n )}\n />\n <div\n className={classNames(\n styles.bottom,\n styles.line,\n styles.vertical,\n { [styles.active]: direction === \"bottom\" || connect }\n )}\n />\n\n <div className=\"connect-btn\">\n {connect ? (\n <LinkOutlined\n style={{ color: \"var(--color-brand)\" }}\n onClick={() => handleConnectClick(false)}\n />\n ) : (\n <DisconnectOutlined onClick={() => handleConnectClick(true)} />\n )}\n </div>\n </div>\n </div>\n </div>\n <div className={styles.rightWrapper}>\n <div className={styles.inputWrapper}>\n <Input\n prefix={\"上\"}\n placeholder=\"0\"\n value={tranformValue?.top}\n onFocus={() => handleFocus(\"top\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"top\", event.target.value)}\n />\n <Input\n prefix={\"左\"}\n placeholder=\"0\"\n value={tranformValue?.left}\n onFocus={() => handleFocus(\"left\")}\n onChange={(event) => handleChange(\"left\", event.target.value)}\n onBlur={handleBlur}\n />\n </div>\n <div className={styles.inputWrapper}>\n <Input\n prefix={\"下\"}\n placeholder=\"0\"\n value={tranformValue?.bottom}\n onFocus={() => handleFocus(\"bottom\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"bottom\", event.target.value)}\n />\n <Input\n prefix={\"右\"}\n placeholder=\"0\"\n value={tranformValue?.right}\n onFocus={() => handleFocus(\"right\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"right\", event.target.value)}\n />\n </div>\n </div>\n </div>\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, `.custom-category-title{font-size:14px;font-weight:600;line-height:28px;margin:16px -16px 6px -16px;padding-left:16px;background-color:var(--palette-gray-6)}.custom-category-title:first-child{margin-top:0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.useChildrenSelectWrapper--IczULak5{display:flex;gap:12px}.useChildrenSelectWrapper--IczULak5 .plusIcon--CyQgp1bl{cursor:pointer;font-size:22px;color:var(--color-brand)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"useChildrenSelectWrapper\": `useChildrenSelectWrapper--IczULak5`,\n\t\"plusIcon\": `plusIcon--CyQgp1bl`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\n\ninterface categoryTitleProps {\n text: string;\n}\nexport function CategoryTitle(props: categoryTitleProps): React.ReactElement {\n return <div className=\"custom-category-title\">{props.text}</div>;\n}\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport { Input } from \"@formily/antd-v5\";\nimport { InputProps } from \"antd\";\n\ntype InputWithUnitComponentProps = InputProps & {\n onChange: (value: string) => void;\n};\n\nexport function InputWithUnitComponent(props: InputWithUnitComponentProps) {\n const [transformValue, setTransfromValue] = useState<string>();\n const handleChange = useCallback(\n (value: string) => {\n props.onChange(value ? `${value}${props.suffix as string}` : undefined);\n },\n [props]\n );\n\n useEffect(() => {\n const realValue = ((props.value as string) ?? \"\").replace(\n props.suffix as string,\n \"\"\n );\n setTransfromValue(realValue);\n }, [props.suffix, props.value]);\n\n return (\n <Input\n {...props}\n value={transformValue}\n onChange={(e) => handleChange(e.target.value)}\n />\n );\n}\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { FormItem, IFormItemProps } from \"@formily/antd-v5\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport {\n useExpressionScope,\n useField,\n useFieldSchema,\n useForm,\n useFormEffects,\n} from \"@formily/react\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport { EoTooltip, ToolTipProps } from \"@next-bricks/basic/src/tooltip\";\nimport classNames from \"classnames\";\nimport { isObject } from \"lodash\";\nimport { onFieldInitialValueChange } from \"@formily/core\";\nimport { isEvaluable } from \"@next-core/cook\";\nimport yaml from \"js-yaml\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedToolTip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\n\ntype Mode = \"normal\" | \"advanced\";\n\ninterface AdvancedFormItemProps extends IFormItemProps {\n children: React.ReactElement;\n formEffect?: () => void;\n}\n\nexport function AdvancedFormItem(props: AdvancedFormItemProps) {\n const form = useForm();\n const field = useField();\n const schema = useFieldSchema();\n const scope = useExpressionScope();\n const [mode, setMode] = useState<Mode>(\n (field.component as any)?.[0] === \"CodeEditor\" ? \"advanced\" : \"normal\"\n );\n const isAdvanced = useMemo(() => mode === \"advanced\", [mode]);\n const fieldOriginComponentRef = useRef<any>([]);\n\n const handleModeCheck = useCallback(() => {\n const fieldOriginComponent = fieldOriginComponentRef.current;\n const updateMode = isAdvanced ? \"normal\" : \"advanced\";\n const isAdvancedMode = updateMode === \"advanced\";\n setMode(updateMode);\n field.setComponent(\n isAdvancedMode ? \"CodeEditor\" : fieldOriginComponent[0],\n {\n ...(isAdvancedMode\n ? { ...(scope ?? {}), lineNumbers: \"off\", glyphMargin: false }\n : fieldOriginComponent[1]),\n }\n );\n\n const value = form.getValuesIn(field.props.name);\n if (isAdvancedMode && isObject(value)) {\n form.setInitialValues({\n [field.props.name as string]: yaml.safeDump(value),\n });\n } else if (!isAdvancedMode && value && typeof value === \"string\") {\n let newValue: any;\n try {\n newValue = yaml.load(value);\n } catch {\n newValue = null;\n }\n form.setInitialValues(\n {\n [field.props.name as string]: newValue,\n },\n \"overwrite\"\n );\n }\n }, [form, field, isAdvanced, scope]);\n\n useFormEffects(() => {\n onFieldInitialValueChange(field.props.name, ({ value }) => {\n if (typeof value === \"string\" && isEvaluable(value)) {\n setMode(\"advanced\");\n\n field.setComponent(\"CodeEditor\", {\n ...(scope ?? {}),\n lineNumbers: \"off\",\n glyphMargin: false,\n });\n }\n });\n });\n\n useEffect(() => {\n fieldOriginComponentRef.current = [\n schema[\"x-component\"],\n schema[\"x-component-props\"],\n ];\n }, [schema]);\n\n return (\n <div className=\"advanced-form-item\">\n <FormItem\n {...{\n ...props,\n layout: isAdvanced ? null : props.layout || \"vertical\",\n }}\n >\n {props.children}\n </FormItem>\n <div className=\"advanced-mode-check-wrapper\">\n <WrappedToolTip\n content={mode === \"normal\" ? \"使用表达式\" : \"关闭表达式\"}\n >\n <WrappedIcon\n className={classNames({\n isActive: isAdvanced,\n })}\n lib=\"fa\"\n icon=\"code\"\n onClick={handleModeCheck}\n />\n </WrappedToolTip>\n </div>\n </div>\n );\n}\n","import { DataNode } from \"../utils/formilySchemaFormatter\";\n\nexport const stylesSchema: DataNode = {\n type: \"void\",\n name: \"style\",\n children: [\n {\n name: \"width\",\n title: \"宽度\",\n type: \"string\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: {\n name: \"Input\",\n },\n },\n {\n name: \"height\",\n title: \"高度\",\n type: \"string\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: {\n name: \"Input\",\n },\n },\n {\n type: \"string\",\n name: \"textAlign\",\n title: \"对齐\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: \"TextAlignRadio\",\n },\n {\n type: \"string\",\n name: \"background\",\n title: \"背景\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: \"ColorPicker\",\n },\n {\n type: \"string\",\n name: \"margin\",\n title: \"外边距(px)\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n },\n component: \"BoxSize\",\n },\n {\n type: \"string\",\n name: \"padding\",\n title: \"内边距(px)\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n },\n component: {\n name: \"BoxSize\",\n props: {\n mode: \"in\",\n },\n },\n },\n ],\n};\n","import type { ISchema } from \"@formily/react\";\nimport { omit } from \"lodash\";\nimport { stylesSchema } from \"../schema/styles.schema\";\n\nexport const NORMAL_FORM_KEY = \"#normal_form\";\nexport const ADVANCED_FORM_KEY = \"#advanced_form\";\n\ntype ComponentType =\n | string\n | {\n name: string;\n props?: Record<string, any>;\n };\n\nexport interface DataNode {\n type: \"void\" | \"string\" | \"object\" | \"boolean\" | \"array\";\n name: string;\n title?: string;\n props?: Record<string, any>;\n decorator?: ComponentType;\n component?: ComponentType;\n children?: DataNode[];\n [k: string]: any;\n}\n\nfunction transformComponent(\n data: ComponentType,\n key: \"decorator\" | \"component\"\n): Record<string, any> {\n if (!data) return {};\n if (typeof data === \"string\") {\n return {\n [`x-${key}`]: data,\n };\n }\n return {\n [`x-${key}`]: data.name,\n [`x-${key}-props`]: {\n ...(data.name === \"CodeEditor\"\n ? {\n extraLibs: \"{{extraLibs}}\",\n links: \"{{links}}\",\n tokenClick: \"{{tokenClick}}\",\n lineNumbers: \"off\",\n glyphMargin: false,\n }\n : {}),\n ...(data.props ?? {}),\n },\n };\n}\n\ntype formilySchemaFormatterOptions = {\n isDefault: boolean;\n};\n\nexport function formilySchemaFormatter(\n data: DataNode,\n options?: formilySchemaFormatterOptions | boolean\n): ISchema {\n const { isDefault = true } = typeof options === \"object\" ? options : {};\n\n const walk = (data: DataNode): Record<string, any> => {\n let children: Record<string, any>[] | undefined;\n let result: Record<string, any> = {};\n if (data.children) {\n children = data.children.map(walk);\n }\n const { name, type, component, decorator } = data;\n\n const defaultDecorator: Record<string, any> =\n type === \"string\"\n ? {\n name: \"FormItem\",\n }\n : type === \"boolean\"\n ? {\n name: \"FormItem\",\n props: {\n layout: \"horizontal\",\n },\n }\n : {};\n\n const defaultComponent: Record<string, any> =\n type === \"string\"\n ? {\n name: \"Input\",\n }\n : type === \"boolean\"\n ? {\n name: \"Switch\",\n props: {\n size: \"small\",\n },\n }\n : {};\n\n const childNode: Record<string, any> = {\n type: type ?? \"void\",\n ...omit(data, [\"children\", \"component\", \"decorator\"]),\n ...transformComponent(\n {\n ...defaultDecorator,\n ...(typeof decorator === \"string\" ? { name: decorator } : decorator),\n },\n \"decorator\"\n ),\n ...transformComponent(\n {\n ...defaultComponent,\n ...(typeof component === \"string\" ? { name: component } : component),\n },\n \"component\"\n ),\n };\n\n if (typeof name === \"string\") {\n result[name] = childNode;\n } else {\n result = childNode;\n }\n\n if (children) {\n childNode.properties = {};\n for (const item of children) {\n if (typeof item.name === \"string\") {\n childNode.properties[item.name] = item;\n } else {\n childNode.properties = {\n ...childNode.properties,\n ...item,\n };\n }\n }\n }\n return result;\n };\n\n const defaultFields = [\n {\n name: \"id\",\n title: \"id\",\n type: \"string\",\n decorator: {\n name: \"FormItem\",\n props: {\n layout: \"horizontal\",\n },\n },\n },\n {\n name: \"hidden\",\n title: \"隐藏\",\n type: \"boolean\",\n },\n ] as DataNode[];\n\n if (!isDefault) {\n return walk(data);\n }\n\n return {\n type: \"object\",\n properties: {\n [NORMAL_FORM_KEY]: {\n type: \"void\",\n \"x-component\": \"CustomTab\",\n \"x-component-props\": {\n activeTab: \"property\",\n },\n properties: {\n property: {\n type: \"void\",\n \"x-component\": \"CustomTab.TabPanel\",\n \"x-component-props\": {\n title: \"属性\",\n tab: \"property\",\n },\n properties: walk({\n ...data,\n children: [...defaultFields, ...data.children],\n }),\n },\n style: {\n type: \"object\",\n name: \"style\",\n \"x-component\": \"CustomTab.TabPanel\",\n \"x-component-props\": {\n title: \"样式\",\n tab: \"style\",\n },\n properties: walk(stylesSchema),\n },\n },\n },\n [ADVANCED_FORM_KEY]: {\n name: ADVANCED_FORM_KEY,\n type: \"string\",\n \"x-decorator\": \"FormItemWithoutAdvanced\",\n \"x-component\": \"CodeEditor\",\n \"x-component-props\": {\n extraLibs: \"{{extraLibs}}\",\n links: \"{{links}}\",\n tokenClick: \"{{tokenClick}}\",\n minLines: 5,\n glyphMargin: false,\n },\n },\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[3].use[1]!../../../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./UseChildrenSelectComponent.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]!./UseChildrenSelectComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React from \"react\";\nimport { Select } from \"@formily/antd-v5\";\nimport { Tooltip, SelectProps } from \"antd\";\nimport { PlusCircleOutlined } from \"@ant-design/icons\";\nimport styles from \"./UseChildrenSelectComponent.module.css\";\n\ntype UseChildrenSelectComponentProps = SelectProps & {\n triggerAction: (action: string) => void;\n};\n\nexport function UseChildrenSelectComponent(\n props: UseChildrenSelectComponentProps\n) {\n const handlePlusIconClick = () => {\n props?.triggerAction?.(\"add-slot\");\n };\n\n return (\n <div className={styles.useChildrenSelectWrapper}>\n <Select {...props} />\n <Tooltip title=\"点击添加子节点\">\n <PlusCircleOutlined\n className={styles.plusIcon}\n onClick={handlePlusIconClick}\n />\n </Tooltip>\n </div>\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, `.boxSizeComponent--a96YEG0R{display:flex;gap:8px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he{width:80px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF{border:1px solid var(--palette-gray-6);height:80px;padding:10px;border-radius:6px;position:relative}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u{border:1px dashed var(--palette-gray-5);height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u .connect-btn--iG4M5iHm{cursor:pointer}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI{position:absolute;background-color:var(--palette-gray-6)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI.active--kwDvPu6c{background-color:var(--color-brand)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .vertical--PTCuTBBU{left:50%;width:2px;height:10px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .horizontal--C56jlFEU{top:50%;width:10px;height:2px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .top--IAYy5_q3{top:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .right--lywbhIOD{right:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .bottom--bcHIN61S{bottom:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .left--ZqcFMgN_{left:0}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ{flex:1;display:flex;flex-direction:column;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs{display:flex;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs .antdV5-input{text-align:right}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"boxSizeComponent\": `boxSizeComponent--a96YEG0R`,\n\t\"leftWrapper\": `leftWrapper--YJoTo4he`,\n\t\"outBox\": `outBox--bSstM0ZF`,\n\t\"inBox\": `inBox--VAdQyQ8u`,\n\t\"connect-btn\": `connect-btn--iG4M5iHm`,\n\t\"line\": `line--MEU6xbQI`,\n\t\"active\": `active--kwDvPu6c`,\n\t\"vertical\": `vertical--PTCuTBBU`,\n\t\"horizontal\": `horizontal--C56jlFEU`,\n\t\"top\": `top--IAYy5_q3`,\n\t\"right\": `right--lywbhIOD`,\n\t\"bottom\": `bottom--bcHIN61S`,\n\t\"left\": `left--ZqcFMgN_`,\n\t\"rightWrapper\": `rightWrapper--VEyni1eJ`,\n\t\"inputWrapper\": `inputWrapper--dlSjkwzs`\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]!./CutomOptionsComponent.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]!./CutomOptionsComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport styles from \"./CutomOptionsComponent.module.css\";\nimport { PlusCircleOutlined } from \"@ant-design/icons\";\nimport { FormProvider } from \"@formily/react\";\nimport { Modal, Button } from \"antd\";\nimport {\n DataNode,\n formilySchemaFormatter,\n} from \"../../utils/formilySchemaFormatter\";\nimport { SchemaField } from \"../..\";\nimport { createForm } from \"@formily/core\";\nimport { omit } from \"lodash\";\n\ninterface ActionOptionsComponentProps {\n onChange: (value: any[]) => void;\n displayLabel: string;\n schema: DataNode[];\n value: any;\n}\n\nconst CUSTOM_WRAPPER = \"$custom_wrapper\";\nconst OPTION_ID = \"$option_id\";\n\nexport function CustomOptionsComponent({\n schema,\n displayLabel,\n value,\n onChange,\n}: ActionOptionsComponentProps) {\n const [editItem, setEditItem] = useState<any>();\n const [isModalOpen, setIsModalOpen] = useState<boolean>(false);\n const [options, setOptions] = useState<any[]>([]);\n const formatSchema: any = useMemo(\n () =>\n formilySchemaFormatter(\n {\n name: CUSTOM_WRAPPER,\n type: \"void\",\n children: schema,\n },\n {\n isDefault: false,\n }\n ),\n [schema]\n );\n\n const form = useMemo(() => createForm(), []);\n\n const handleAddAction = () => {\n setEditItem(null);\n form.reset();\n setIsModalOpen(true);\n };\n\n const handleEditItem = (data: any) => {\n setEditItem(data);\n form.setValues(data, \"overwrite\");\n setIsModalOpen(true);\n };\n\n const handleOk = useCallback(() => {\n let newOptions = options;\n if (editItem) {\n newOptions = options.map((item) => {\n if (item[OPTION_ID] === editItem[OPTION_ID]) {\n return form.values;\n }\n return item;\n });\n } else {\n newOptions = options.concat(form.values);\n }\n setOptions(newOptions);\n\n onChange(newOptions.map((item) => omit(item, [OPTION_ID])));\n setIsModalOpen(false);\n }, [form, onChange, options, editItem]);\n\n const handleCancel = () => {\n setIsModalOpen(false);\n };\n\n const handleDelete = useCallback(() => {\n const newOptions = options.filter(\n (item) => item[OPTION_ID] !== editItem[OPTION_ID]\n );\n setOptions(newOptions);\n\n onChange(newOptions.map((item) => omit(item, [OPTION_ID])));\n\n setIsModalOpen(false);\n }, [options, editItem, onChange]);\n\n useEffect(() => {\n if (value) {\n setOptions(\n value.map((item: any) => ({\n ...item,\n [OPTION_ID]: Math.random(),\n }))\n );\n }\n }, [value]);\n\n return (\n <div className={styles.actionOptionsWrapper}>\n <Modal\n title={`${editItem ? \"编辑\" : \"新增\"}数据`}\n open={isModalOpen}\n onOk={handleOk}\n onCancel={handleCancel}\n footer={() => (\n <div className={styles.modalFooter}>\n <div>\n {editItem && (\n <Button danger type=\"primary\" onClick={handleDelete}>\n 删除\n </Button>\n )}\n </div>\n <div>\n <Button type=\"text\" onClick={handleCancel}>\n 取消\n </Button>\n <Button type=\"primary\" onClick={handleOk}>\n 确认\n </Button>\n </div>\n </div>\n )}\n >\n <FormProvider form={form}>\n <SchemaField schema={formatSchema?.[CUSTOM_WRAPPER]} />\n </FormProvider>\n </Modal>\n <div className={styles.optionList}>\n {options.length ? (\n options.map((item, index) => {\n return (\n <div\n className={styles.optionItem}\n key={index}\n onClick={() => handleEditItem(item)}\n >\n {item[displayLabel]}\n </div>\n );\n })\n ) : (\n <div className={styles.emptyItem}>无数据</div>\n )}\n </div>\n <PlusCircleOutlined\n className={styles.addIcon}\n onClick={handleAddAction}\n />\n </div>\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, `.advanced-form-item{position:relative}.advanced-form-item .advanced-mode-check-wrapper{position:absolute;top:6px;right:6px;line-height:0;z-index:1}.advanced-form-item .advanced-mode-check-wrapper eo-icon[icon=\"code\"]{cursor:pointer;padding:2px 4px;border-radius:6px;color:var(--text-color-secondary)}.advanced-form-item .advanced-mode-check-wrapper eo-icon.isActive[icon=\"code\"]{background:var(--color-brand);color:var(--color-normal-text)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./style.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]!./style.css\";\n export default content && content.locals ? content.locals : undefined;\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]!./CustomTab.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]!./CustomTab.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { Schema, SchemaKey, useField, useFieldSchema } from \"@formily/react\";\nimport React, { createContext, useContext, useMemo, useState } from \"react\";\nimport styles from \"./CustomTab.module.css\";\nimport classNames from \"classnames\";\n\ninterface CustomTabContextProps {\n activeTab?: string;\n}\n\nconst CustomTabContext = createContext<CustomTabContextProps>({});\nconst useCustonTabContext = () => useContext(CustomTabContext);\n\nconst useTabs = () => {\n const tabsField = useField();\n const schema = useFieldSchema();\n const tabs: { name: SchemaKey; props: any; schema: Schema }[] = [];\n schema.mapProperties((schema, name) => {\n const field = tabsField.query(tabsField.address.concat(name)).take();\n if (field?.display === \"none\" || field?.display === \"hidden\") return;\n if (schema[\"x-component\"]?.indexOf(\"CustomTab.TabPanel\") > -1) {\n const key =\n field?.componentProps?.key ||\n schema?.[\"x-component-props\"]?.key ||\n name;\n tabs.push({\n name,\n props: {\n ...schema?.[\"x-component-props\"],\n ...field?.componentProps,\n key,\n },\n schema,\n });\n }\n });\n return tabs;\n};\n\nexport function CustomTab(props: any) {\n const tabs = useTabs();\n const [activeTab, setActiveTab] = useState<string>(tabs[0]?.name as string);\n\n return (\n <CustomTabContext.Provider\n value={{\n activeTab: activeTab,\n }}\n >\n <div className={styles.customTabWrapper}>\n <div className={styles.customTabList}>\n {tabs.map((item) => {\n return (\n <div\n className={classNames(styles.customTabItem, {\n [styles.active]: activeTab === item.props?.key,\n })}\n key={item.props?.key}\n onClick={() => setActiveTab(item.props.key)}\n >\n <div className={styles.customTabItemLabel}>\n {item.props.title}\n </div>\n </div>\n );\n })}\n </div>\n {props.children}\n </div>\n </CustomTabContext.Provider>\n );\n}\n\nCustomTab.TabPanel = function TabPanel(props: any) {\n const { activeTab } = useCustonTabContext();\n\n const isActive = useMemo(\n () => props.tab === activeTab,\n [activeTab, props.tab]\n );\n\n if (!isActive) return null;\n\n return <div className={styles.customTabPanel}>{props.children}</div>;\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, `.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG{position:relative;display:flex;align-items:stretch;justify-items:flex-start;margin-bottom:16px;border-radius:4px;background-color:var(--palette-gray-blue-3);padding:2px;width:108px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5{position:relative;text-align:center;cursor:pointer;transition:all 0.2s cubic-bezier(0.645,0.045,0.355,1);border-radius:4px;transform:translateZ(0)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5.active--ULNnDJEv{background-color:var(--palette-gray-2);box-shadow:0 1px 2px 0 rgba(0,0,0,0.03),0 1px 6px -1px rgba(0,0,0,0.02),0 2px 4px 0 rgba(0,0,0,0.02);color:var(--color-brand)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5 .customTabItemLabel--scejdE0w{padding:2px 12px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5:hover{color:var(--color-brand-hover)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"customTabWrapper\": `customTabWrapper--rhCkGBJ2`,\n\t\"customTabList\": `customTabList--yAojeBWG`,\n\t\"customTabItem\": `customTabItem--Zjxji9O5`,\n\t\"active\": `active--ULNnDJEv`,\n\t\"customTabItemLabel\": `customTabItemLabel--scejdE0w`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { IconSelect, IconSelectProps } from \"@next-bricks/form/icon-select\";\nimport { wrapBrick } from \"@next-core/react-element\";\ninterface IconSelectComponentProps extends IconSelectProps {\n onChange?: (value?: any) => void;\n}\ninterface IconSelectEvents {\n change?: (value?: any) => void;\n}\nexport interface IconSelectEventsMapping {\n onChange: \"change\";\n}\nconst WrappedIconSelect = wrapBrick<\n IconSelect,\n IconSelectProps,\n IconSelectEvents,\n IconSelectEventsMapping\n>(\"eo-icon-select\", {\n onChange: \"change\",\n});\nexport function IconSelectComponent(props: IconSelectComponentProps) {\n return <WrappedIconSelect {...props} />;\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]!./components/AdvancedFormItem/AdvancedFormItem.shadow.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]!./components/CategoryTitle/CategoryTitle.shadow.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, `.property-form-wrapper{padding-left:16px;padding-right:16px}.property-form-wrapper .antdV5-formily-item-feedback-layout-loose{margin-bottom:10px}.property-form-wrapper .antdV5-formily-item .antdV5-formily-item-control{align-self:center}.property-form-wrapper .antdV5-formily-item-layout-vertical .antdV5-formily-item-label{line-height:32px;min-height:30px;padding:0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { Radio } from \"antd\";\nimport {\n AlignLeftOutlined,\n AlignCenterOutlined,\n AlignRightOutlined,\n} from \"@ant-design/icons\";\n\nexport function TextAlignRadioComponent(props: any): React.ReactElement {\n return (\n <Radio.Group {...props} size=\"small\">\n <Radio.Button value=\"left\">\n <AlignLeftOutlined />\n </Radio.Button>\n {!props.hideCenter && (\n <Radio.Button value=\"center\">\n <AlignCenterOutlined />\n </Radio.Button>\n )}\n <Radio.Button value=\"right\">\n <AlignRightOutlined />\n </Radio.Button>\n </Radio.Group>\n );\n}\n","import { generate } from \"@ant-design/colors\";\nimport type { ColorPickerProps } from \"antd\";\n\nexport type Presets = Required<ColorPickerProps>[\"presets\"];\n\nexport type ColorItem = {\n metaColor: {\n format?: string;\n originalInput: string;\n };\n};\n\nconst genPresets = (presets: Record<string, string>): Presets =>\n Object.entries(presets).map(([label, colors]) => ({\n label,\n colors: generate(colors),\n }));\n\nconst paletteGrayColorsMap: Record<string, string> = {\n \"var(--palette-gray-1)\": \"#ffffff\",\n \"var(--palette-gray-2)\": \"#fafafa\",\n \"var(--palette-gray-3)\": \"#f5f5f5\",\n \"var(--palette-gray-4)\": \"#e8e8e8\",\n \"var(--palette-gray-5)\": \"#d9d9d9\",\n \"var(--palette-gray-6)\": \"#bfbfbf\",\n \"var(--palette-gray-7)\": \"#8c8c8c\",\n \"var(--palette-gray-8)\": \"#595959\",\n \"var(--palette-gray-9)\": \"#262626\",\n \"var(--palette-gray-10)\": \"#000000\",\n};\n\nconst extraPalettePresets: Presets = [\n {\n label: \"gray\",\n colors: Object.values(paletteGrayColorsMap),\n },\n];\n\nexport const palettePresets = extraPalettePresets.concat(\n genPresets({\n red: \"#f24c25\",\n orange: \"#e38306\",\n yellow: \"#fadb14\",\n green: \"#08BF33\",\n cyan: \"#21d4f3\",\n blue: \"#1a7aff\",\n purple: \"#893ad8\",\n amber: \"#f7bf02\",\n pink: \"#ff1a79\",\n indigo: \"#3844e8\",\n \"deep-purple\": \"#6641f9\",\n \"gray-blue\": \"#778dc3\",\n teal: \"#1dc897\",\n })\n);\n\n// 内置颜色: 文本与线条\nconst textAndLineColorMap: Record<string, string> = {\n \"#595959\": \"var(--color-normal-text)\", // var(--palette-gray-8);\n \"#bfbfbf\": \"var(--color-disabled-text)\", // var(--palette-gray-6);\n \"#8c8c8c\": \"var(--color-secondary-text)\", // var(--palette-gray-7);\n \"#262626\": \"var(--color-strong-text)\", // var(--palette-gray-9);\n \"#d9d9d9\": \"var(--color-border-divider-line)\", // var(--palette-gray-5);\n \"#e8e8e8\": \"var(--color-text-divider-line)\", // var(--palette-gray-4);\n};\n\n// 内置颜色: 常用主题色\nconst themeColorMap: Record<string, string> = {\n \"#08bf33\": \"var(--theme-green-color)\", // var(--palette-green-6);\n \"#77e686\": \"var(--theme-green-border-color)\", // var(--palette-green-3);\n \"#e6ffe7\": \"var(--theme-green-background)\", // var(--palette-green-1);\n \"#f24c25\": \"var(--theme-red-color)\", // var(--palette-red-6);\n \"#ffbba1\": \"var(--theme-red-border-color)\", // var(--palette-red-3);\n \"#fff5f0\": \"var(--theme-red-background)\", // var(--palette-red-1);\n \"#1a7aff\": \"var(--theme-blue-color)\", // var(--palette-blue-6);\n \"#94cbff\": \"var(--theme-blue-border-color)\", // var(--palette-blue-3);\n \"#e6f4ff\": \"var(--theme-blue-background)\", // var(--palette-blue-1);\n \"#e38306\": \"var(--theme-orange-color)\", // var(--palette-orange-6);\n \"#ffd582\": \"var(--theme-orange-border-color)\", // var(--palette-orange-3);\n \"#fff8e6\": \"var(--theme-orange-background)\", // var(--palette-orange-1);\n \"#21d4f3\": \"var(--theme-cyan-color)\", // var(--palette-cyan-6);\n \"#9efaff\": \"var(--theme-cyan-border-color)\", // var(--palette-cyan-3);\n \"#f0ffff\": \"var(--theme-cyan-background)\", // var(--palette-cyan-1);\n \"#893ad8\": \"var(--theme-purple-color)\", // var(--palette-purple-6);\n \"#e6bfff\": \"var(--theme-purple-border-color)\", // var(--palette-purple-3);\n \"#faf0ff\": \"var(--theme-purple-background)\", // var(--palette-purple-1);\n \"#3844e8\": \"var(--theme-geekblue-color)\", // var(--palette-geekblue-6);\n \"#b8c4ff\": \"var(--theme-geekblue-border-color)\", // var(--palette-geekblue-3);\n \"#f0f3ff\": \"var(--theme-geekblue-background)\", // var(--palette-geekblue-1);\n};\nexport const systemPresetColorsMap: Record<string, string> = {\n ...textAndLineColorMap,\n ...themeColorMap,\n};\n\nexport const compressPalettePresets = (palettePresets: Presets): Presets => {\n return [\n {\n label: \"调色板\",\n colors: palettePresets.map((item) => item.colors).flat(),\n defaultOpen: false,\n },\n ];\n};\n\nexport const allPresets: Presets = (\n [\n {\n label: \"文本与线条\",\n colors: Object.keys(textAndLineColorMap),\n defaultOpen: true,\n },\n {\n label: \"常用主题色\",\n colors: Object.keys(themeColorMap),\n defaultOpen: true,\n },\n ] as Presets\n).concat(compressPalettePresets(palettePresets));\n\nexport const trasnformColorToCssVariables = (\n palettePresets: Presets,\n systemPresetColorsMap: Record<string, string>,\n color: string\n) => {\n if (color in systemPresetColorsMap) {\n return systemPresetColorsMap[color];\n }\n\n let matchColor = color;\n palettePresets.forEach((preset) => {\n const key = preset.label;\n\n const index = preset.colors.findIndex((item) =>\n typeof item === \"string\"\n ? item === matchColor\n : item.toHsbString() === matchColor\n );\n\n if (index >= 0) {\n matchColor = `var(--palette-${key}-${index + 1})`;\n }\n });\n\n return matchColor;\n};\n\nexport const transformCssVariablesToColor = (\n presets: Presets,\n systemPresetColorsMap: Record<string, string>,\n colorVairable: string\n) => {\n for (const color in systemPresetColorsMap) {\n if (systemPresetColorsMap[color] === colorVairable) {\n return color;\n }\n }\n\n const [, key, index] =\n colorVairable.match(/^var\\(--palette-([\\w-]+)-(\\d+)\\)$/) ?? [];\n\n let matchColor = colorVairable;\n if (key && index) {\n presets.forEach((preset) => {\n const color = preset.colors[Number(index) - 1];\n if (preset.label === key && color) {\n matchColor = typeof color === \"string\" ? color : color.toHsbString();\n }\n });\n }\n\n return matchColor;\n};\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { ColorPicker } from \"antd\";\nimport type { ColorPickerProps } from \"antd/es/color-picker\";\nimport {\n palettePresets,\n systemPresetColorsMap,\n transformCssVariablesToColor,\n trasnformColorToCssVariables,\n allPresets,\n} from \"../../utils/colorTransform\";\ninterface ColorPickerComponentProps extends Omit<ColorPickerProps, \"onChange\"> {\n onChange?: (value: string) => void;\n}\n\nexport function ColorPickerComponent(\n props: ColorPickerComponentProps\n): React.ReactElement {\n const [value, setValue] = useState<string>();\n const transformPresets = useMemo(() => allPresets, []);\n\n const handleChange = (color: string) => {\n props.onChange?.(\n trasnformColorToCssVariables(palettePresets, systemPresetColorsMap, color)\n ); // 转成颜色变量存储\n };\n\n useEffect(() => {\n if (props.value) {\n const value = transformCssVariablesToColor(\n palettePresets,\n systemPresetColorsMap,\n props.value as string\n );\n setValue(value);\n } else {\n setValue((props.value as string) ?? \"\");\n }\n }, [props.value]);\n\n return (\n <ColorPicker\n getPopupContainer={() => document.body}\n showText={(color) =>\n trasnformColorToCssVariables(\n palettePresets,\n systemPresetColorsMap,\n color.toHexString()\n )\n } // 转成颜色变量展示\n presets={transformPresets}\n {...props}\n value={value}\n onChange={(_, hex) => {\n handleChange(hex);\n }}\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, `.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7,.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;font-size:14px;border-top:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{cursor:pointer}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:hover{background-color:var(--palette-gray-5)}.actionOptionsWrapper--HuwosiuP .addIcon--ptNA7JRE{width:100%;border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;padding:4px;font-size:22px}.modalFooter--eRxlWgTL{display:flex;justify-content:space-between}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"actionOptionsWrapper\": `actionOptionsWrapper--HuwosiuP`,\n\t\"optionList\": `optionList--lJm6W8Kr`,\n\t\"emptyItem\": `emptyItem--gMv4r0f7`,\n\t\"optionItem\": `optionItem--xEPQt9Mw`,\n\t\"addIcon\": `addIcon--ptNA7JRE`,\n\t\"modalFooter\": `modalFooter--eRxlWgTL`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { CodeEditor, CodeEditorProps } from \"@next-bricks/vs/code-editor\";\nimport yaml from \"js-yaml\";\nimport { isEmpty, omit } from \"lodash\";\n\ninterface CodeEditorComponentProps extends CodeEditorProps {\n onChange?: (value?: any) => void;\n tokenClick?: (value?: any) => void;\n scope: any;\n}\n\ninterface CodeEditorEvents {\n \"code.change\"?: (value?: any) => void;\n \"token.click\"?: (value?: any) => void;\n}\n\ninterface CodeEditorEventsMapping {\n onChange: \"code.change\";\n tokenClick: \"token.click\";\n}\n\nconst WrappedCodeEditor = wrapBrick<\n CodeEditor,\n CodeEditorProps,\n CodeEditorEvents,\n CodeEditorEventsMapping\n>(\"vs.code-editor\", {\n onChange: \"code.change\",\n tokenClick: \"token.click\",\n});\n\nexport function CodeEditorComponent(\n props: CodeEditorComponentProps\n): React.ReactElement {\n const [initValue, setInitValue] = useState<string>();\n const [value, setValue] = useState<string>();\n\n const handleChange = useCallback(\n (event: any) => {\n setValue(event.detail ? event.detail : undefined);\n const value = event.detail ? yaml.safeLoad(event.detail) : undefined;\n props?.onChange?.(value);\n },\n [props]\n );\n\n useEffect(() => {\n if (props.value && !initValue) {\n let value = props.value as any;\n if (value && typeof value !== \"string\") {\n if (isEmpty(value)) {\n value = \"\";\n } else {\n value = yaml.safeDump(\n Array.isArray(value)\n ? value\n : omit(value, isEmpty(value.style) ? [\"style\"] : []),\n {\n skipInvalid: true,\n }\n );\n }\n }\n\n setValue(value);\n setInitValue(value);\n }\n }, [props.value, initValue]);\n\n return (\n <WrappedCodeEditor\n minLines={props.minLines ?? 1}\n automaticLayout=\"fit-content\"\n language={\"brick_next_yaml\"}\n theme={\"vs-dark\"}\n {...props}\n value={value}\n onChange={handleChange}\n />\n );\n}\n"],"names":["InputWithUrlComponent","props","_props$transform","mode","setMode","useState","form","useForm","field","useField","url","href","transform","onAdvancedChangeEffect","useMemo","createEffectHook","ADVANCED_CHANGE_KEY","advancedMode","listener","handleModeClick","useCallback","realMode","setValues","value","deleteValuesIn","handleChange","onChange","suffixText","computedLink","_values$url","values","getState","fieldName","name","setValuesIn","useEffect","addEffects","onFormInitialValuesChange","React","Input","_extends","suffix","style","cursor","slot","onClick","event","target","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","undefined","DirectionEnum","BoxSizeComponent","_ref","tranformValue","setTransformValue","connect","setConnect","direction","setDirection","isInMode","handleFocus","handleBlur","inputValue","newValue","match","realValue","Number","changeValue","map","item","index","join","handleConnectClick","isConnect","transfrom","_realValue$","_realValue$2","length","top","right","bottom","left","className","styles","boxSizeComponent","leftWrapper","outBox","inBox","position","classNames","line","vertical","active","horizontal","LinkOutlined","color","DisconnectOutlined","rightWrapper","inputWrapper","prefix","placeholder","onFocus","onBlur","___CSS_LOADER_EXPORT___","push","module","id","CategoryTitle","text","InputWithUnitComponent","transformValue","setTransfromValue","replace","e","WrappedIcon","wrapBrick","WrappedToolTip","AdvancedFormItem","_field$component","schema","useFieldSchema","scope","useExpressionScope","component","isAdvanced","fieldOriginComponentRef","useRef","handleModeCheck","fieldOriginComponent","current","updateMode","isAdvancedMode","setComponent","lineNumbers","glyphMargin","getValuesIn","isObject","setInitialValues","yaml","useFormEffects","onFieldInitialValueChange","isEvaluable","FormItem","layout","children","content","isActive","lib","icon","stylesSchema","type","title","decorator","NORMAL_FORM_KEY","ADVANCED_FORM_KEY","transformComponent","data","key","_data$props","extraLibs","links","tokenClick","formilySchemaFormatter","isDefault","walk","result","defaultDecorator","defaultComponent","size","childNode","omit","properties","activeTab","property","tab","minLines","UseChildrenSelectComponent","useChildrenSelectWrapper","Select","Tooltip","PlusCircleOutlined","plusIcon","handlePlusIconClick","_props$triggerAction","triggerAction","call","CUSTOM_WRAPPER","OPTION_ID","CustomOptionsComponent","displayLabel","editItem","setEditItem","isModalOpen","setIsModalOpen","setOptions","formatSchema","createForm","handleOk","newOptions","concat","handleCancel","handleDelete","filter","Math","random","actionOptionsWrapper","Modal","open","onOk","onCancel","footer","modalFooter","Button","danger","FormProvider","SchemaField","optionList","optionItem","handleEditItem","emptyItem","addIcon","handleAddAction","reset","CustomTabContext","createContext","useTabs","tabsField","tabs","mapProperties","_schema$xComponent","query","address","take","display","indexOf","_field$componentProps","_schema$xComponentP","componentProps","CustomTab","_tabs$","setActiveTab","Provider","customTabWrapper","customTabList","_item$props","_item$props2","customTabItem","customTabItemLabel","TabPanel","useContext","customTabPanel","WrappedIconSelect","IconSelectComponent","i","TextAlignRadioComponent","Radio","AlignLeftOutlined","hideCenter","AlignCenterOutlined","AlignRightOutlined","palettePresets","label","colors","Object","presets","red","orange","yellow","green","cyan","blue","purple","amber","pink","indigo","teal","entries","generate","textAndLineColorMap","themeColorMap","systemPresetColorsMap","allPresets","keys","defaultOpen","flat","compressPalettePresets","trasnformColorToCssVariables","matchColor","forEach","preset","findIndex","toHsbString","transformCssVariablesToColor","colorVairable","_colorVairable$match","ColorPickerComponent","setValue","transformPresets","ColorPicker","getPopupContainer","document","body","showText","toHexString","_","hex","_props$onChange","WrappedCodeEditor","CodeEditorComponent","_props$minLines","initValue","setInitValue","detail","isEmpty","Array","isArray","skipInvalid","automaticLayout","language","theme"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/9080.e8687386.js","mappings":"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","sources":["webpack:///./src/property-editor/components/common/InputWithUrlComponent.tsx","webpack:///./src/property-editor/components/common/BoxSizeComponent.module.css?766a","webpack:///./src/property-editor/components/common/BoxSizeComponent.tsx","webpack:///./src/property-editor/components/CategoryTitle/CategoryTitle.shadow.css","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.module.css","webpack:///./src/property-editor/components/CategoryTitle/index.tsx","webpack:///./src/property-editor/components/common/InputWithUnitComponent.tsx","webpack:///./src/property-editor/components/AdvancedFormItem/index.tsx","webpack:///./src/property-editor/schema/styles.schema.ts","webpack:///./src/property-editor/utils/formilySchemaFormatter.ts","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.module.css?b0be","webpack:///./src/property-editor/components/common/UseChildrenSelectComponent.tsx","webpack:///./src/property-editor/components/common/BoxSizeComponent.module.css","webpack:///./src/property-editor/components/common/CutomOptionsComponent.module.css?273b","webpack:///./src/property-editor/components/common/CustomOptionsComponent.tsx","webpack:///./src/property-editor/components/AdvancedFormItem/AdvancedFormItem.shadow.css","webpack:///./src/property-editor/style.css?280e","webpack:///./src/property-editor/components/common/CustomTab.module.css?aeb2","webpack:///./src/property-editor/components/common/CustomTab.tsx","webpack:///./src/property-editor/components/common/CustomTab.module.css","webpack:///./src/property-editor/components/common/IconSelectComponent.tsx","webpack:///./src/property-editor/style.css","webpack:///./src/property-editor/components/common/TextAlignRadioComponent.tsx","webpack:///./src/property-editor/utils/colorTransform.ts","webpack:///./src/property-editor/components/common/ColorPickerComponent.tsx","webpack:///./src/property-editor/components/common/CutomOptionsComponent.module.css","webpack:///./src/property-editor/components/common/CodeEditorComponent.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Input } from \"@formily/antd-v5\";\nimport { useField, useForm } from \"@formily/react\";\nimport {\n createEffectHook,\n Form,\n onFormInitialValuesChange,\n} from \"@formily/core\";\nimport { ADVANCED_CHANGE_KEY } from \"../../index.js\";\n\ninterface InputWithUrlComponentProps {\n onChange: (value: string) => void;\n value: string;\n name: string;\n advancedMode?: boolean;\n transform: {\n url: string;\n href: string;\n };\n}\n\nexport function InputWithUrlComponent(props: InputWithUrlComponentProps) {\n const [mode, setMode] = useState<boolean>(true);\n const form = useForm();\n const field = useField();\n const { url, href } = props.transform ?? { url: \"url\", href: \"href\" };\n\n const onAdvancedChangeEffect = useMemo(\n () =>\n createEffectHook(\n ADVANCED_CHANGE_KEY,\n (advancedMode, form) => (listener) => {\n listener(advancedMode, form);\n }\n ),\n []\n );\n\n const handleModeClick = useCallback(() => {\n const realMode = !mode;\n setMode(realMode);\n\n form.setValues({ [realMode ? url : href]: props.value });\n form.deleteValuesIn(realMode ? href : url);\n }, [mode, form, url, props.value, href]);\n\n const handleChange = useCallback(\n (value: string) => {\n props.onChange(value);\n\n form.setValues({ [mode ? url : href]: value });\n },\n [props, form, mode, url, href]\n );\n\n const suffixText = useMemo(() => `${mode ? \"内链\" : \"外链\"}`, [mode]);\n\n const computedLink = useCallback(\n (form: Form) => {\n const { values } = form.getState();\n const fieldName = field.props.name;\n\n form.setValuesIn(fieldName, values[url] ?? values[href]);\n\n setMode(!values[href]);\n },\n [field.props.name, href, url]\n );\n\n useEffect(() => {\n form.addEffects(\"onAdvancedChange\", () => {\n onFormInitialValuesChange(computedLink),\n onAdvancedChangeEffect((advancedMode: boolean, form: Form) => {\n const fieldName = field.props.name;\n if (advancedMode) {\n form.deleteValuesIn(fieldName);\n }\n });\n });\n }, [form, field, onAdvancedChangeEffect, computedLink]);\n\n useEffect(() => {\n computedLink(form);\n }, []);\n\n return (\n <Input\n {...props}\n suffix={\n <div\n style={{ cursor: \"pointer\" }}\n slot=\"suffix\"\n onClick={handleModeClick}\n >\n {suffixText}\n </div>\n }\n onChange={(event) => handleChange(event.target.value)}\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[3].use[1]!../../../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./BoxSizeComponent.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]!./BoxSizeComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { Input } from \"@formily/antd-v5\";\nimport { DisconnectOutlined, LinkOutlined } from \"@ant-design/icons\";\nimport React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport styles from \"./BoxSizeComponent.module.css\";\nimport classNames from \"classnames\";\n\ntype Direction = \"top\" | \"bottom\" | \"left\" | \"right\";\n\nenum DirectionEnum {\n top = 0,\n right = 1,\n bottom = 2,\n left = 3,\n}\n\ntype BoxValue = {\n [key in Direction]: number | string;\n};\n\ninterface BoxSizeComponentProps {\n onChange: (value: string) => void;\n value: string;\n mode: \"in\" | \"out\";\n}\n\nexport function BoxSizeComponent({\n onChange,\n value,\n mode,\n}: BoxSizeComponentProps) {\n const [tranformValue, setTransformValue] = useState<BoxValue>();\n const [connect, setConnect] = useState<boolean>(false);\n const [direction, setDirection] = useState<Direction>();\n const isInMode = useMemo(() => mode === \"in\", [mode]);\n\n const handleFocus = (direction: Direction) => {\n setDirection(direction);\n };\n\n const handleBlur = () => {\n setDirection(null);\n };\n\n const handleChange = useCallback(\n (direction: Direction, inputValue: string) => {\n const newValue = inputValue.match(/\\d+/);\n\n const realValue = Number(newValue !== null ? newValue[0] : 0);\n\n const changeValue = connect\n ? `${realValue}px`\n : `${(value ?? \"0px 0px 0px 0px\")\n .match(/(\\d+px)/g)\n .map((item, index) => {\n if (DirectionEnum[direction] === index) {\n return `${realValue}px`;\n }\n return item;\n })\n .join(\" \")}`;\n onChange(changeValue);\n },\n [connect, onChange, value]\n );\n\n const handleConnectClick = (isConnect: boolean) => {\n setConnect(isConnect);\n };\n\n const transfrom = useCallback((value: string) => {\n const realValue = (value ?? \"0px 0px 0px 0px\").match(/(\\d+)/g);\n\n if (realValue.length === 1) {\n setConnect(true);\n\n setTransformValue({\n top: realValue[0],\n right: realValue[0],\n bottom: realValue[0],\n left: realValue[0],\n });\n } else {\n setTransformValue({\n top: realValue[0],\n right: realValue[1],\n bottom: realValue[2] ?? realValue[0],\n left: realValue[3] ?? realValue[1],\n });\n }\n }, []);\n\n useEffect(() => {\n transfrom(value);\n }, [value, transfrom]);\n\n return (\n <div className={styles.boxSizeComponent}>\n <div className={styles.leftWrapper}>\n <div className={styles.outBox}>\n <div\n className={styles.inBox}\n style={{\n position: isInMode ? \"relative\" : \"initial\",\n }}\n >\n <div\n className={classNames(styles.top, styles.line, styles.vertical, {\n [styles.active]: direction === \"top\" || connect,\n })}\n />\n <div\n className={classNames(\n styles.right,\n styles.line,\n styles.horizontal,\n { [styles.active]: direction === \"right\" || connect }\n )}\n />\n <div\n className={classNames(\n styles.left,\n styles.line,\n styles.horizontal,\n { [styles.active]: direction === \"left\" || connect }\n )}\n />\n <div\n className={classNames(\n styles.bottom,\n styles.line,\n styles.vertical,\n { [styles.active]: direction === \"bottom\" || connect }\n )}\n />\n\n <div className=\"connect-btn\">\n {connect ? (\n <LinkOutlined\n style={{ color: \"var(--color-brand)\" }}\n onClick={() => handleConnectClick(false)}\n />\n ) : (\n <DisconnectOutlined onClick={() => handleConnectClick(true)} />\n )}\n </div>\n </div>\n </div>\n </div>\n <div className={styles.rightWrapper}>\n <div className={styles.inputWrapper}>\n <Input\n prefix={\"上\"}\n placeholder=\"0\"\n value={tranformValue?.top}\n onFocus={() => handleFocus(\"top\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"top\", event.target.value)}\n />\n <Input\n prefix={\"左\"}\n placeholder=\"0\"\n value={tranformValue?.left}\n onFocus={() => handleFocus(\"left\")}\n onChange={(event) => handleChange(\"left\", event.target.value)}\n onBlur={handleBlur}\n />\n </div>\n <div className={styles.inputWrapper}>\n <Input\n prefix={\"下\"}\n placeholder=\"0\"\n value={tranformValue?.bottom}\n onFocus={() => handleFocus(\"bottom\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"bottom\", event.target.value)}\n />\n <Input\n prefix={\"右\"}\n placeholder=\"0\"\n value={tranformValue?.right}\n onFocus={() => handleFocus(\"right\")}\n onBlur={handleBlur}\n onChange={(event) => handleChange(\"right\", event.target.value)}\n />\n </div>\n </div>\n </div>\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, `.custom-category-title{font-size:14px;font-weight:600;line-height:28px;margin:16px -16px 6px -16px;padding-left:16px;background-color:var(--palette-gray-6)}.custom-category-title:first-child{margin-top:0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.useChildrenSelectWrapper--IczULak5{display:flex;gap:12px}.useChildrenSelectWrapper--IczULak5 .plusIcon--CyQgp1bl{cursor:pointer;font-size:22px;color:var(--color-brand)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"useChildrenSelectWrapper\": `useChildrenSelectWrapper--IczULak5`,\n\t\"plusIcon\": `plusIcon--CyQgp1bl`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\n\ninterface categoryTitleProps {\n text: string;\n}\nexport function CategoryTitle(props: categoryTitleProps): React.ReactElement {\n return <div className=\"custom-category-title\">{props.text}</div>;\n}\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport { Input } from \"@formily/antd-v5\";\nimport { InputProps } from \"antd\";\n\ntype InputWithUnitComponentProps = InputProps & {\n onChange: (value: string) => void;\n};\n\nexport function InputWithUnitComponent(props: InputWithUnitComponentProps) {\n const [transformValue, setTransfromValue] = useState<string>();\n const handleChange = useCallback(\n (value: string) => {\n props.onChange(value ? `${value}${props.suffix as string}` : undefined);\n },\n [props]\n );\n\n useEffect(() => {\n const realValue = ((props.value as string) ?? \"\").replace(\n props.suffix as string,\n \"\"\n );\n setTransfromValue(realValue);\n }, [props.suffix, props.value]);\n\n return (\n <Input\n {...props}\n value={transformValue}\n onChange={(e) => handleChange(e.target.value)}\n />\n );\n}\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { FormItem, IFormItemProps } from \"@formily/antd-v5\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport {\n useExpressionScope,\n useField,\n useFieldSchema,\n useForm,\n useFormEffects,\n} from \"@formily/react\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport { EoTooltip, ToolTipProps } from \"@next-bricks/basic/src/tooltip\";\nimport classNames from \"classnames\";\nimport { isObject } from \"lodash\";\nimport { onFieldInitialValueChange } from \"@formily/core\";\nimport { isEvaluable } from \"@next-core/cook\";\nimport yaml from \"js-yaml\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedToolTip = wrapBrick<EoTooltip, ToolTipProps>(\"eo-tooltip\");\n\ntype Mode = \"normal\" | \"advanced\";\n\ninterface AdvancedFormItemProps extends IFormItemProps {\n children: React.ReactElement;\n formEffect?: () => void;\n}\n\nexport function AdvancedFormItem(props: AdvancedFormItemProps) {\n const form = useForm();\n const field = useField();\n const schema = useFieldSchema();\n const scope = useExpressionScope();\n const [mode, setMode] = useState<Mode>(\n (field.component as any)?.[0] === \"CodeEditor\" ? \"advanced\" : \"normal\"\n );\n const isAdvanced = useMemo(() => mode === \"advanced\", [mode]);\n const fieldOriginComponentRef = useRef<any>([]);\n\n const handleModeCheck = useCallback(() => {\n const fieldOriginComponent = fieldOriginComponentRef.current;\n const updateMode = isAdvanced ? \"normal\" : \"advanced\";\n const isAdvancedMode = updateMode === \"advanced\";\n setMode(updateMode);\n field.setComponent(\n isAdvancedMode ? \"CodeEditor\" : fieldOriginComponent[0],\n {\n ...(isAdvancedMode\n ? { ...(scope ?? {}), lineNumbers: \"off\", glyphMargin: false }\n : fieldOriginComponent[1]),\n }\n );\n\n const value = form.getValuesIn(field.props.name);\n if (isAdvancedMode && isObject(value)) {\n form.setInitialValues({\n [field.props.name as string]: yaml.safeDump(value),\n });\n } else if (!isAdvancedMode && value && typeof value === \"string\") {\n let newValue: any;\n try {\n newValue = yaml.load(value);\n } catch {\n newValue = null;\n }\n form.setInitialValues(\n {\n [field.props.name as string]: newValue,\n },\n \"overwrite\"\n );\n }\n }, [form, field, isAdvanced, scope]);\n\n useFormEffects(() => {\n onFieldInitialValueChange(field.props.name, ({ value }) => {\n if (typeof value === \"string\" && isEvaluable(value)) {\n setMode(\"advanced\");\n\n field.setComponent(\"CodeEditor\", {\n ...(scope ?? {}),\n lineNumbers: \"off\",\n glyphMargin: false,\n });\n }\n });\n });\n\n useEffect(() => {\n fieldOriginComponentRef.current = [\n schema[\"x-component\"],\n schema[\"x-component-props\"],\n ];\n }, [schema]);\n\n return (\n <div className=\"advanced-form-item\">\n <FormItem\n {...{\n ...props,\n layout: isAdvanced ? null : props.layout || \"vertical\",\n }}\n >\n {props.children}\n </FormItem>\n <div className=\"advanced-mode-check-wrapper\">\n <WrappedToolTip\n content={mode === \"normal\" ? \"使用表达式\" : \"关闭表达式\"}\n >\n <WrappedIcon\n className={classNames({\n isActive: isAdvanced,\n })}\n lib=\"fa\"\n icon=\"code\"\n onClick={handleModeCheck}\n />\n </WrappedToolTip>\n </div>\n </div>\n );\n}\n","import { DataNode } from \"../utils/formilySchemaFormatter\";\n\nexport const stylesSchema: DataNode = {\n type: \"void\",\n name: \"style\",\n children: [\n {\n name: \"width\",\n title: \"宽度\",\n type: \"string\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: {\n name: \"Input\",\n },\n },\n {\n name: \"height\",\n title: \"高度\",\n type: \"string\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: {\n name: \"Input\",\n },\n },\n {\n type: \"string\",\n name: \"textAlign\",\n title: \"对齐\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: \"TextAlignRadio\",\n },\n {\n type: \"string\",\n name: \"background\",\n title: \"背景\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n props: {\n layout: \"vertail\",\n },\n },\n component: \"ColorPicker\",\n },\n {\n type: \"string\",\n name: \"margin\",\n title: \"外边距(px)\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n },\n component: \"BoxSize\",\n },\n {\n type: \"string\",\n name: \"padding\",\n title: \"内边距(px)\",\n decorator: {\n name: \"FormItemWithoutAdvanced\",\n },\n component: {\n name: \"BoxSize\",\n props: {\n mode: \"in\",\n },\n },\n },\n ],\n};\n","import type { ISchema } from \"@formily/react\";\nimport { omit } from \"lodash\";\nimport { stylesSchema } from \"../schema/styles.schema\";\n\nexport const NORMAL_FORM_KEY = \"#normal_form\";\nexport const ADVANCED_FORM_KEY = \"#advanced_form\";\n\ntype ComponentType =\n | string\n | {\n name: string;\n props?: Record<string, any>;\n };\n\nexport interface DataNode {\n type: \"void\" | \"string\" | \"object\" | \"boolean\" | \"array\";\n name: string;\n title?: string;\n props?: Record<string, any>;\n decorator?: ComponentType;\n component?: ComponentType;\n children?: DataNode[];\n [k: string]: any;\n}\n\nfunction transformComponent(\n data: ComponentType,\n key: \"decorator\" | \"component\"\n): Record<string, any> {\n if (!data) return {};\n if (typeof data === \"string\") {\n return {\n [`x-${key}`]: data,\n };\n }\n return {\n [`x-${key}`]: data.name,\n [`x-${key}-props`]: {\n ...(data.name === \"CodeEditor\"\n ? {\n extraLibs: \"{{extraLibs}}\",\n links: \"{{links}}\",\n tokenClick: \"{{tokenClick}}\",\n lineNumbers: \"off\",\n glyphMargin: false,\n }\n : {}),\n ...(data.props ?? {}),\n },\n };\n}\n\ntype formilySchemaFormatterOptions = {\n isDefault: boolean;\n};\n\nexport function formilySchemaFormatter(\n data: DataNode,\n options?: formilySchemaFormatterOptions | boolean\n): ISchema {\n const { isDefault = true } = typeof options === \"object\" ? options : {};\n\n const walk = (data: DataNode): Record<string, any> => {\n let children: Record<string, any>[] | undefined;\n let result: Record<string, any> = {};\n if (data.children) {\n children = data.children.map(walk);\n }\n const { name, type, component, decorator } = data;\n\n const defaultDecorator: Record<string, any> =\n type === \"string\"\n ? {\n name: \"FormItem\",\n }\n : type === \"boolean\"\n ? {\n name: \"FormItem\",\n props: {\n layout: \"horizontal\",\n },\n }\n : {};\n\n const defaultComponent: Record<string, any> =\n type === \"string\"\n ? {\n name: \"Input\",\n }\n : type === \"boolean\"\n ? {\n name: \"Switch\",\n props: {\n size: \"small\",\n },\n }\n : {};\n\n const childNode: Record<string, any> = {\n type: type ?? \"void\",\n ...omit(data, [\"children\", \"component\", \"decorator\"]),\n ...transformComponent(\n {\n ...defaultDecorator,\n ...(typeof decorator === \"string\" ? { name: decorator } : decorator),\n },\n \"decorator\"\n ),\n ...transformComponent(\n {\n ...defaultComponent,\n ...(typeof component === \"string\" ? { name: component } : component),\n },\n \"component\"\n ),\n };\n\n if (typeof name === \"string\") {\n result[name] = childNode;\n } else {\n result = childNode;\n }\n\n if (children) {\n childNode.properties = {};\n for (const item of children) {\n if (typeof item.name === \"string\") {\n childNode.properties[item.name] = item;\n } else {\n childNode.properties = {\n ...childNode.properties,\n ...item,\n };\n }\n }\n }\n return result;\n };\n\n const defaultFields = [\n {\n name: \"id\",\n title: \"id\",\n type: \"string\",\n decorator: {\n name: \"FormItem\",\n props: {\n layout: \"horizontal\",\n },\n },\n },\n {\n name: \"hidden\",\n title: \"隐藏\",\n type: \"boolean\",\n },\n ] as DataNode[];\n\n if (!isDefault) {\n return walk(data);\n }\n\n return {\n type: \"object\",\n properties: {\n [NORMAL_FORM_KEY]: {\n type: \"void\",\n \"x-component\": \"CustomTab\",\n \"x-component-props\": {\n activeTab: \"property\",\n },\n properties: {\n property: {\n type: \"void\",\n \"x-component\": \"CustomTab.TabPanel\",\n \"x-component-props\": {\n title: \"属性\",\n tab: \"property\",\n },\n properties: walk({\n ...data,\n children: [...defaultFields, ...data.children],\n }),\n },\n style: {\n type: \"object\",\n name: \"style\",\n \"x-component\": \"CustomTab.TabPanel\",\n \"x-component-props\": {\n title: \"样式\",\n tab: \"style\",\n },\n properties: walk(stylesSchema),\n },\n },\n },\n [ADVANCED_FORM_KEY]: {\n name: ADVANCED_FORM_KEY,\n type: \"string\",\n \"x-decorator\": \"FormItemWithoutAdvanced\",\n \"x-component\": \"CodeEditor\",\n \"x-component-props\": {\n extraLibs: \"{{extraLibs}}\",\n links: \"{{links}}\",\n tokenClick: \"{{tokenClick}}\",\n minLines: 5,\n glyphMargin: false,\n },\n },\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[3].use[1]!../../../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./UseChildrenSelectComponent.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]!./UseChildrenSelectComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React from \"react\";\nimport { Select } from \"@formily/antd-v5\";\nimport { Tooltip, SelectProps } from \"antd\";\nimport { PlusCircleOutlined } from \"@ant-design/icons\";\nimport styles from \"./UseChildrenSelectComponent.module.css\";\n\ntype UseChildrenSelectComponentProps = SelectProps & {\n triggerAction: (action: string) => void;\n};\n\nexport function UseChildrenSelectComponent(\n props: UseChildrenSelectComponentProps\n) {\n const handlePlusIconClick = () => {\n props?.triggerAction?.(\"add-slot\");\n };\n\n return (\n <div className={styles.useChildrenSelectWrapper}>\n <Select {...props} />\n <Tooltip title=\"点击添加子节点\">\n <PlusCircleOutlined\n className={styles.plusIcon}\n onClick={handlePlusIconClick}\n />\n </Tooltip>\n </div>\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, `.boxSizeComponent--a96YEG0R{display:flex;gap:8px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he{width:80px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF{border:1px solid var(--palette-gray-6);height:80px;padding:10px;border-radius:6px;position:relative}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u{border:1px dashed var(--palette-gray-5);height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .inBox--VAdQyQ8u .connect-btn--iG4M5iHm{cursor:pointer}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI{position:absolute;background-color:var(--palette-gray-6)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .line--MEU6xbQI.active--kwDvPu6c{background-color:var(--color-brand)}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .vertical--PTCuTBBU{left:50%;width:2px;height:10px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .horizontal--C56jlFEU{top:50%;width:10px;height:2px}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .top--IAYy5_q3{top:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .right--lywbhIOD{right:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .bottom--bcHIN61S{bottom:0}.boxSizeComponent--a96YEG0R .leftWrapper--YJoTo4he .outBox--bSstM0ZF .left--ZqcFMgN_{left:0}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ{flex:1;display:flex;flex-direction:column;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs{display:flex;gap:12px}.boxSizeComponent--a96YEG0R .rightWrapper--VEyni1eJ .inputWrapper--dlSjkwzs .antdV5-input{text-align:right}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"boxSizeComponent\": `boxSizeComponent--a96YEG0R`,\n\t\"leftWrapper\": `leftWrapper--YJoTo4he`,\n\t\"outBox\": `outBox--bSstM0ZF`,\n\t\"inBox\": `inBox--VAdQyQ8u`,\n\t\"connect-btn\": `connect-btn--iG4M5iHm`,\n\t\"line\": `line--MEU6xbQI`,\n\t\"active\": `active--kwDvPu6c`,\n\t\"vertical\": `vertical--PTCuTBBU`,\n\t\"horizontal\": `horizontal--C56jlFEU`,\n\t\"top\": `top--IAYy5_q3`,\n\t\"right\": `right--lywbhIOD`,\n\t\"bottom\": `bottom--bcHIN61S`,\n\t\"left\": `left--ZqcFMgN_`,\n\t\"rightWrapper\": `rightWrapper--VEyni1eJ`,\n\t\"inputWrapper\": `inputWrapper--dlSjkwzs`\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]!./CutomOptionsComponent.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]!./CutomOptionsComponent.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport styles from \"./CutomOptionsComponent.module.css\";\nimport { PlusCircleOutlined } from \"@ant-design/icons\";\nimport { FormProvider } from \"@formily/react\";\nimport { Modal, Button } from \"antd\";\nimport {\n DataNode,\n formilySchemaFormatter,\n} from \"../../utils/formilySchemaFormatter\";\nimport { SchemaField } from \"../..\";\nimport { createForm } from \"@formily/core\";\nimport { omit } from \"lodash\";\n\ninterface ActionOptionsComponentProps {\n onChange: (value: any[]) => void;\n displayLabel: string;\n schema: DataNode[];\n value: any;\n}\n\nconst CUSTOM_WRAPPER = \"$custom_wrapper\";\nconst OPTION_ID = \"$option_id\";\n\nexport function CustomOptionsComponent({\n schema,\n displayLabel,\n value,\n onChange,\n}: ActionOptionsComponentProps) {\n const [editItem, setEditItem] = useState<any>();\n const [isModalOpen, setIsModalOpen] = useState<boolean>(false);\n const [options, setOptions] = useState<any[]>([]);\n const formatSchema: any = useMemo(\n () =>\n formilySchemaFormatter(\n {\n name: CUSTOM_WRAPPER,\n type: \"void\",\n children: schema,\n },\n {\n isDefault: false,\n }\n ),\n [schema]\n );\n\n const form = useMemo(() => createForm(), []);\n\n const handleAddAction = () => {\n setEditItem(null);\n form.reset();\n setIsModalOpen(true);\n };\n\n const handleEditItem = (data: any) => {\n setEditItem(data);\n form.setValues(data, \"overwrite\");\n setIsModalOpen(true);\n };\n\n const handleOk = useCallback(() => {\n let newOptions = options;\n if (editItem) {\n newOptions = options.map((item) => {\n if (item[OPTION_ID] === editItem[OPTION_ID]) {\n return form.values;\n }\n return item;\n });\n } else {\n newOptions = options.concat(form.values);\n }\n setOptions(newOptions);\n\n onChange(newOptions.map((item) => omit(item, [OPTION_ID])));\n setIsModalOpen(false);\n }, [form, onChange, options, editItem]);\n\n const handleCancel = () => {\n setIsModalOpen(false);\n };\n\n const handleDelete = useCallback(() => {\n const newOptions = options.filter(\n (item) => item[OPTION_ID] !== editItem[OPTION_ID]\n );\n setOptions(newOptions);\n\n onChange(newOptions.map((item) => omit(item, [OPTION_ID])));\n\n setIsModalOpen(false);\n }, [options, editItem, onChange]);\n\n useEffect(() => {\n if (value) {\n setOptions(\n value.map((item: any) => ({\n ...item,\n [OPTION_ID]: Math.random(),\n }))\n );\n }\n }, [value]);\n\n return (\n <div className={styles.actionOptionsWrapper}>\n <Modal\n title={`${editItem ? \"编辑\" : \"新增\"}数据`}\n open={isModalOpen}\n onOk={handleOk}\n onCancel={handleCancel}\n footer={() => (\n <div className={styles.modalFooter}>\n <div>\n {editItem && (\n <Button danger type=\"primary\" onClick={handleDelete}>\n 删除\n </Button>\n )}\n </div>\n <div>\n <Button type=\"text\" onClick={handleCancel}>\n 取消\n </Button>\n <Button type=\"primary\" onClick={handleOk}>\n 确认\n </Button>\n </div>\n </div>\n )}\n >\n <FormProvider form={form}>\n <SchemaField schema={formatSchema?.[CUSTOM_WRAPPER]} />\n </FormProvider>\n </Modal>\n <div className={styles.optionList}>\n {options.length ? (\n options.map((item, index) => {\n return (\n <div\n className={styles.optionItem}\n key={index}\n onClick={() => handleEditItem(item)}\n >\n {item[displayLabel]}\n </div>\n );\n })\n ) : (\n <div className={styles.emptyItem}>无数据</div>\n )}\n </div>\n <PlusCircleOutlined\n className={styles.addIcon}\n onClick={handleAddAction}\n />\n </div>\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, `.advanced-form-item{position:relative}.advanced-form-item .advanced-mode-check-wrapper{position:absolute;top:6px;right:6px;line-height:0;z-index:1}.advanced-form-item .advanced-mode-check-wrapper eo-icon[icon=\"code\"]{cursor:pointer;padding:2px 4px;border-radius:6px;color:var(--text-color-secondary)}.advanced-form-item .advanced-mode-check-wrapper eo-icon.isActive[icon=\"code\"]{background:var(--color-brand);color:var(--color-normal-text)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./style.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]!./style.css\";\n export default content && content.locals ? content.locals : undefined;\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]!./CustomTab.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]!./CustomTab.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import { Schema, SchemaKey, useField, useFieldSchema } from \"@formily/react\";\nimport React, { createContext, useContext, useMemo, useState } from \"react\";\nimport styles from \"./CustomTab.module.css\";\nimport classNames from \"classnames\";\n\ninterface CustomTabContextProps {\n activeTab?: string;\n}\n\nconst CustomTabContext = createContext<CustomTabContextProps>({});\nconst useCustonTabContext = () => useContext(CustomTabContext);\n\nconst useTabs = () => {\n const tabsField = useField();\n const schema = useFieldSchema();\n const tabs: { name: SchemaKey; props: any; schema: Schema }[] = [];\n schema.mapProperties((schema, name) => {\n const field = tabsField.query(tabsField.address.concat(name)).take();\n if (field?.display === \"none\" || field?.display === \"hidden\") return;\n if (schema[\"x-component\"]?.indexOf(\"CustomTab.TabPanel\") > -1) {\n const key =\n field?.componentProps?.key ||\n schema?.[\"x-component-props\"]?.key ||\n name;\n tabs.push({\n name,\n props: {\n ...schema?.[\"x-component-props\"],\n ...field?.componentProps,\n key,\n },\n schema,\n });\n }\n });\n return tabs;\n};\n\nexport function CustomTab(props: any) {\n const tabs = useTabs();\n const [activeTab, setActiveTab] = useState<string>(tabs[0]?.name as string);\n\n return (\n <CustomTabContext.Provider\n value={{\n activeTab: activeTab,\n }}\n >\n <div className={styles.customTabWrapper}>\n <div className={styles.customTabList}>\n {tabs.map((item) => {\n return (\n <div\n className={classNames(styles.customTabItem, {\n [styles.active]: activeTab === item.props?.key,\n })}\n key={item.props?.key}\n onClick={() => setActiveTab(item.props.key)}\n >\n <div className={styles.customTabItemLabel}>\n {item.props.title}\n </div>\n </div>\n );\n })}\n </div>\n {props.children}\n </div>\n </CustomTabContext.Provider>\n );\n}\n\nCustomTab.TabPanel = function TabPanel(props: any) {\n const { activeTab } = useCustonTabContext();\n\n const isActive = useMemo(\n () => props.tab === activeTab,\n [activeTab, props.tab]\n );\n\n if (!isActive) return null;\n\n return <div className={styles.customTabPanel}>{props.children}</div>;\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, `.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG{position:relative;display:flex;align-items:stretch;justify-items:flex-start;margin-bottom:16px;border-radius:4px;background-color:var(--palette-gray-blue-3);padding:2px;width:108px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5{position:relative;text-align:center;cursor:pointer;transition:all 0.2s cubic-bezier(0.645,0.045,0.355,1);border-radius:4px;transform:translateZ(0)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5.active--ULNnDJEv{background-color:var(--palette-gray-2);box-shadow:0 1px 2px 0 rgba(0,0,0,0.03),0 1px 6px -1px rgba(0,0,0,0.02),0 2px 4px 0 rgba(0,0,0,0.02);color:var(--color-brand)}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5 .customTabItemLabel--scejdE0w{padding:2px 12px}.customTabWrapper--rhCkGBJ2 .customTabList--yAojeBWG .customTabItem--Zjxji9O5:hover{color:var(--color-brand-hover)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"customTabWrapper\": `customTabWrapper--rhCkGBJ2`,\n\t\"customTabList\": `customTabList--yAojeBWG`,\n\t\"customTabItem\": `customTabItem--Zjxji9O5`,\n\t\"active\": `active--ULNnDJEv`,\n\t\"customTabItemLabel\": `customTabItemLabel--scejdE0w`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { IconSelect, IconSelectProps } from \"@next-bricks/form/icon-select\";\nimport { wrapBrick } from \"@next-core/react-element\";\ninterface IconSelectComponentProps extends IconSelectProps {\n onChange?: (value?: any) => void;\n}\ninterface IconSelectEvents {\n change?: (value?: any) => void;\n}\nexport interface IconSelectEventsMapping {\n onChange: \"change\";\n}\nconst WrappedIconSelect = wrapBrick<\n IconSelect,\n IconSelectProps,\n IconSelectEvents,\n IconSelectEventsMapping\n>(\"eo-icon-select\", {\n onChange: \"change\",\n});\nexport function IconSelectComponent(props: IconSelectComponentProps) {\n return <WrappedIconSelect {...props} />;\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]!./components/AdvancedFormItem/AdvancedFormItem.shadow.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]!./components/CategoryTitle/CategoryTitle.shadow.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, `.property-form-wrapper{padding-left:16px;padding-right:16px}.property-form-wrapper .antdV5-formily-item-feedback-layout-loose{margin-bottom:10px}.property-form-wrapper .antdV5-formily-item .antdV5-formily-item-control{align-self:center}.property-form-wrapper .antdV5-formily-item-layout-vertical .antdV5-formily-item-label{line-height:32px;min-height:30px;padding:0}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { Radio } from \"antd\";\nimport {\n AlignLeftOutlined,\n AlignCenterOutlined,\n AlignRightOutlined,\n} from \"@ant-design/icons\";\n\nexport function TextAlignRadioComponent(props: any): React.ReactElement {\n return (\n <Radio.Group {...props} size=\"small\">\n <Radio.Button value=\"left\">\n <AlignLeftOutlined />\n </Radio.Button>\n {!props.hideCenter && (\n <Radio.Button value=\"center\">\n <AlignCenterOutlined />\n </Radio.Button>\n )}\n <Radio.Button value=\"right\">\n <AlignRightOutlined />\n </Radio.Button>\n </Radio.Group>\n );\n}\n","import { generate } from \"@ant-design/colors\";\nimport type { ColorPickerProps } from \"antd\";\n\nexport type Presets = Required<ColorPickerProps>[\"presets\"];\n\nexport type ColorItem = {\n metaColor: {\n format?: string;\n originalInput: string;\n };\n};\n\nconst genPresets = (presets: Record<string, string>): Presets =>\n Object.entries(presets).map(([label, colors]) => ({\n label,\n colors: generate(colors),\n }));\n\nconst paletteGrayColorsMap: Record<string, string> = {\n \"var(--palette-gray-1)\": \"#ffffff\",\n \"var(--palette-gray-2)\": \"#fafafa\",\n \"var(--palette-gray-3)\": \"#f5f5f5\",\n \"var(--palette-gray-4)\": \"#e8e8e8\",\n \"var(--palette-gray-5)\": \"#d9d9d9\",\n \"var(--palette-gray-6)\": \"#bfbfbf\",\n \"var(--palette-gray-7)\": \"#8c8c8c\",\n \"var(--palette-gray-8)\": \"#595959\",\n \"var(--palette-gray-9)\": \"#262626\",\n \"var(--palette-gray-10)\": \"#000000\",\n};\n\nconst extraPalettePresets: Presets = [\n {\n label: \"gray\",\n colors: Object.values(paletteGrayColorsMap),\n },\n];\n\nexport const palettePresets = extraPalettePresets.concat(\n genPresets({\n red: \"#f24c25\",\n orange: \"#e38306\",\n yellow: \"#fadb14\",\n green: \"#08BF33\",\n cyan: \"#21d4f3\",\n blue: \"#1a7aff\",\n purple: \"#893ad8\",\n amber: \"#f7bf02\",\n pink: \"#ff1a79\",\n indigo: \"#3844e8\",\n \"deep-purple\": \"#6641f9\",\n \"gray-blue\": \"#778dc3\",\n teal: \"#1dc897\",\n })\n);\n\n// 内置颜色: 文本与线条\nconst textAndLineColorMap: Record<string, string> = {\n \"#595959\": \"var(--color-normal-text)\", // var(--palette-gray-8);\n \"#bfbfbf\": \"var(--color-disabled-text)\", // var(--palette-gray-6);\n \"#8c8c8c\": \"var(--color-secondary-text)\", // var(--palette-gray-7);\n \"#262626\": \"var(--color-strong-text)\", // var(--palette-gray-9);\n \"#d9d9d9\": \"var(--color-border-divider-line)\", // var(--palette-gray-5);\n \"#e8e8e8\": \"var(--color-text-divider-line)\", // var(--palette-gray-4);\n};\n\n// 内置颜色: 常用主题色\nconst themeColorMap: Record<string, string> = {\n \"#08bf33\": \"var(--theme-green-color)\", // var(--palette-green-6);\n \"#77e686\": \"var(--theme-green-border-color)\", // var(--palette-green-3);\n \"#e6ffe7\": \"var(--theme-green-background)\", // var(--palette-green-1);\n \"#f24c25\": \"var(--theme-red-color)\", // var(--palette-red-6);\n \"#ffbba1\": \"var(--theme-red-border-color)\", // var(--palette-red-3);\n \"#fff5f0\": \"var(--theme-red-background)\", // var(--palette-red-1);\n \"#1a7aff\": \"var(--theme-blue-color)\", // var(--palette-blue-6);\n \"#94cbff\": \"var(--theme-blue-border-color)\", // var(--palette-blue-3);\n \"#e6f4ff\": \"var(--theme-blue-background)\", // var(--palette-blue-1);\n \"#e38306\": \"var(--theme-orange-color)\", // var(--palette-orange-6);\n \"#ffd582\": \"var(--theme-orange-border-color)\", // var(--palette-orange-3);\n \"#fff8e6\": \"var(--theme-orange-background)\", // var(--palette-orange-1);\n \"#21d4f3\": \"var(--theme-cyan-color)\", // var(--palette-cyan-6);\n \"#9efaff\": \"var(--theme-cyan-border-color)\", // var(--palette-cyan-3);\n \"#f0ffff\": \"var(--theme-cyan-background)\", // var(--palette-cyan-1);\n \"#893ad8\": \"var(--theme-purple-color)\", // var(--palette-purple-6);\n \"#e6bfff\": \"var(--theme-purple-border-color)\", // var(--palette-purple-3);\n \"#faf0ff\": \"var(--theme-purple-background)\", // var(--palette-purple-1);\n \"#3844e8\": \"var(--theme-geekblue-color)\", // var(--palette-geekblue-6);\n \"#b8c4ff\": \"var(--theme-geekblue-border-color)\", // var(--palette-geekblue-3);\n \"#f0f3ff\": \"var(--theme-geekblue-background)\", // var(--palette-geekblue-1);\n};\nexport const systemPresetColorsMap: Record<string, string> = {\n ...textAndLineColorMap,\n ...themeColorMap,\n};\n\nexport const compressPalettePresets = (palettePresets: Presets): Presets => {\n return [\n {\n label: \"调色板\",\n colors: palettePresets.map((item) => item.colors).flat(),\n defaultOpen: false,\n },\n ];\n};\n\nexport const allPresets: Presets = (\n [\n {\n label: \"文本与线条\",\n colors: Object.keys(textAndLineColorMap),\n defaultOpen: true,\n },\n {\n label: \"常用主题色\",\n colors: Object.keys(themeColorMap),\n defaultOpen: true,\n },\n ] as Presets\n).concat(compressPalettePresets(palettePresets));\n\nexport const trasnformColorToCssVariables = (\n palettePresets: Presets,\n systemPresetColorsMap: Record<string, string>,\n color: string\n) => {\n if (color in systemPresetColorsMap) {\n return systemPresetColorsMap[color];\n }\n\n let matchColor = color;\n palettePresets.forEach((preset) => {\n const key = preset.label;\n\n const index = preset.colors.findIndex((item) =>\n typeof item === \"string\"\n ? item === matchColor\n : item.toHsbString() === matchColor\n );\n\n if (index >= 0) {\n matchColor = `var(--palette-${key}-${index + 1})`;\n }\n });\n\n return matchColor;\n};\n\nexport const transformCssVariablesToColor = (\n presets: Presets,\n systemPresetColorsMap: Record<string, string>,\n colorVairable: string\n) => {\n for (const color in systemPresetColorsMap) {\n if (systemPresetColorsMap[color] === colorVairable) {\n return color;\n }\n }\n\n const [, key, index] =\n colorVairable.match(/^var\\(--palette-([\\w-]+)-(\\d+)\\)$/) ?? [];\n\n let matchColor = colorVairable;\n if (key && index) {\n presets.forEach((preset) => {\n const color = preset.colors[Number(index) - 1];\n if (preset.label === key && color) {\n matchColor = typeof color === \"string\" ? color : color.toHsbString();\n }\n });\n }\n\n return matchColor;\n};\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { ColorPicker } from \"antd\";\nimport type { ColorPickerProps } from \"antd/es/color-picker\";\nimport {\n palettePresets,\n systemPresetColorsMap,\n transformCssVariablesToColor,\n trasnformColorToCssVariables,\n allPresets,\n} from \"../../utils/colorTransform\";\ninterface ColorPickerComponentProps extends Omit<ColorPickerProps, \"onChange\"> {\n onChange?: (value: string) => void;\n}\n\nexport function ColorPickerComponent(\n props: ColorPickerComponentProps\n): React.ReactElement {\n const [value, setValue] = useState<string>();\n const transformPresets = useMemo(() => allPresets, []);\n\n const handleChange = (color: string) => {\n props.onChange?.(\n trasnformColorToCssVariables(palettePresets, systemPresetColorsMap, color)\n ); // 转成颜色变量存储\n };\n\n useEffect(() => {\n if (props.value) {\n const value = transformCssVariablesToColor(\n palettePresets,\n systemPresetColorsMap,\n props.value as string\n );\n setValue(value);\n } else {\n setValue((props.value as string) ?? \"\");\n }\n }, [props.value]);\n\n return (\n <ColorPicker\n getPopupContainer={() => document.body}\n showText={(color) =>\n trasnformColorToCssVariables(\n palettePresets,\n systemPresetColorsMap,\n color.toHexString()\n )\n } // 转成颜色变量展示\n presets={transformPresets}\n {...props}\n value={value}\n onChange={(_, hex) => {\n handleChange(hex);\n }}\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, `.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7,.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;font-size:14px;border-top:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:first-child{border-top:1px solid var(--palette-gray-6)}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .emptyItem--gMv4r0f7:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:last-child{border-bottom:none}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw{cursor:pointer}.actionOptionsWrapper--HuwosiuP .optionList--lJm6W8Kr .optionItem--xEPQt9Mw:hover{background-color:var(--palette-gray-5)}.actionOptionsWrapper--HuwosiuP .addIcon--ptNA7JRE{width:100%;border:1px solid var(--palette-gray-6);display:flex;justify-content:center;align-items:center;padding:4px;font-size:22px}.modalFooter--eRxlWgTL{display:flex;justify-content:space-between}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"actionOptionsWrapper\": `actionOptionsWrapper--HuwosiuP`,\n\t\"optionList\": `optionList--lJm6W8Kr`,\n\t\"emptyItem\": `emptyItem--gMv4r0f7`,\n\t\"optionItem\": `optionItem--xEPQt9Mw`,\n\t\"addIcon\": `addIcon--ptNA7JRE`,\n\t\"modalFooter\": `modalFooter--eRxlWgTL`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport { CodeEditor, CodeEditorProps } from \"@next-bricks/vs/code-editor\";\nimport yaml from \"js-yaml\";\nimport { isEmpty, omit } from \"lodash\";\n\ninterface CodeEditorComponentProps extends CodeEditorProps {\n onChange?: (value?: any) => void;\n tokenClick?: (value?: any) => void;\n scope: any;\n}\n\ninterface CodeEditorEvents {\n \"code.change\"?: (value?: any) => void;\n \"token.click\"?: (value?: any) => void;\n}\n\ninterface CodeEditorEventsMapping {\n onChange: \"code.change\";\n tokenClick: \"token.click\";\n}\n\nconst WrappedCodeEditor = wrapBrick<\n CodeEditor,\n CodeEditorProps,\n CodeEditorEvents,\n CodeEditorEventsMapping\n>(\"vs.code-editor\", {\n onChange: \"code.change\",\n tokenClick: \"token.click\",\n});\n\nexport function CodeEditorComponent(\n props: CodeEditorComponentProps\n): React.ReactElement {\n const [initValue, setInitValue] = useState<string>();\n const [value, setValue] = useState<string>();\n\n const handleChange = useCallback(\n (event: any) => {\n setValue(event.detail ? event.detail : undefined);\n const value = event.detail ? yaml.safeLoad(event.detail) : undefined;\n props?.onChange?.(value);\n },\n [props]\n );\n\n useEffect(() => {\n if (props.value && !initValue) {\n let value = props.value as any;\n if (value && typeof value !== \"string\") {\n if (isEmpty(value)) {\n value = \"\";\n } else {\n value = yaml.safeDump(\n Array.isArray(value)\n ? value\n : omit(value, isEmpty(value.style) ? [\"style\"] : []),\n {\n skipInvalid: true,\n }\n );\n }\n }\n\n setValue(value);\n setInitValue(value);\n }\n }, [props.value, initValue]);\n\n return (\n <WrappedCodeEditor\n minLines={props.minLines ?? 1}\n automaticLayout=\"fit-content\"\n language={\"brick_next_yaml\"}\n theme={\"vs-dark\"}\n {...props}\n value={value}\n onChange={handleChange}\n />\n );\n}\n"],"names":["InputWithUrlComponent","props","_props$transform","mode","setMode","useState","form","useForm","field","useField","url","href","transform","onAdvancedChangeEffect","useMemo","createEffectHook","ADVANCED_CHANGE_KEY","advancedMode","listener","handleModeClick","useCallback","realMode","setValues","value","deleteValuesIn","handleChange","onChange","suffixText","computedLink","_values$url","values","getState","fieldName","name","setValuesIn","useEffect","addEffects","onFormInitialValuesChange","React","Input","_extends","suffix","style","cursor","slot","onClick","event","target","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","undefined","DirectionEnum","BoxSizeComponent","_ref","tranformValue","setTransformValue","connect","setConnect","direction","setDirection","isInMode","handleFocus","handleBlur","inputValue","newValue","match","realValue","Number","changeValue","map","item","index","join","handleConnectClick","isConnect","transfrom","_realValue$","_realValue$2","length","top","right","bottom","left","className","styles","boxSizeComponent","leftWrapper","outBox","inBox","position","classNames","line","vertical","active","horizontal","LinkOutlined","color","DisconnectOutlined","rightWrapper","inputWrapper","prefix","placeholder","onFocus","onBlur","___CSS_LOADER_EXPORT___","push","module","id","CategoryTitle","text","InputWithUnitComponent","transformValue","setTransfromValue","replace","e","WrappedIcon","wrapBrick","WrappedToolTip","AdvancedFormItem","_field$component","schema","useFieldSchema","scope","useExpressionScope","component","isAdvanced","fieldOriginComponentRef","useRef","handleModeCheck","fieldOriginComponent","current","updateMode","isAdvancedMode","setComponent","lineNumbers","glyphMargin","getValuesIn","isObject","setInitialValues","yaml","useFormEffects","onFieldInitialValueChange","isEvaluable","FormItem","layout","children","content","isActive","lib","icon","stylesSchema","type","title","decorator","NORMAL_FORM_KEY","ADVANCED_FORM_KEY","transformComponent","data","key","_data$props","extraLibs","links","tokenClick","formilySchemaFormatter","isDefault","walk","result","defaultDecorator","defaultComponent","size","childNode","omit","properties","activeTab","property","tab","minLines","UseChildrenSelectComponent","useChildrenSelectWrapper","Select","Tooltip","PlusCircleOutlined","plusIcon","handlePlusIconClick","_props$triggerAction","triggerAction","call","CUSTOM_WRAPPER","OPTION_ID","CustomOptionsComponent","displayLabel","editItem","setEditItem","isModalOpen","setIsModalOpen","setOptions","formatSchema","createForm","handleOk","newOptions","concat","handleCancel","handleDelete","filter","Math","random","actionOptionsWrapper","Modal","open","onOk","onCancel","footer","modalFooter","Button","danger","FormProvider","SchemaField","optionList","optionItem","handleEditItem","emptyItem","addIcon","handleAddAction","reset","CustomTabContext","createContext","useTabs","tabsField","tabs","mapProperties","_schema$xComponent","query","address","take","display","indexOf","_field$componentProps","_schema$xComponentP","componentProps","CustomTab","_tabs$","setActiveTab","Provider","customTabWrapper","customTabList","_item$props","_item$props2","customTabItem","customTabItemLabel","TabPanel","useContext","customTabPanel","WrappedIconSelect","IconSelectComponent","i","TextAlignRadioComponent","Radio","AlignLeftOutlined","hideCenter","AlignCenterOutlined","AlignRightOutlined","palettePresets","label","colors","Object","presets","red","orange","yellow","green","cyan","blue","purple","amber","pink","indigo","teal","entries","generate","textAndLineColorMap","themeColorMap","systemPresetColorsMap","allPresets","keys","defaultOpen","flat","compressPalettePresets","trasnformColorToCssVariables","matchColor","forEach","preset","findIndex","toHsbString","transformCssVariablesToColor","colorVairable","_colorVairable$match","ColorPickerComponent","setValue","transformPresets","ColorPicker","getPopupContainer","document","body","showText","toHexString","_","hex","_props$onChange","WrappedCodeEditor","CodeEditorComponent","_props$minLines","initValue","setInitValue","detail","isEmpty","Array","isArray","skipInvalid","automaticLayout","language","theme"],"sourceRoot":""}