@next-bricks/visual-builder 1.39.10 → 1.39.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +1 -1
- package/dist/chunks/2475.5b883974.js +3 -0
- package/dist/chunks/2475.5b883974.js.map +1 -0
- package/dist/chunks/{3171.1e6913a1.js → 3171.875199eb.js} +2 -2
- package/dist/chunks/{3171.1e6913a1.js.map → 3171.875199eb.js.map} +1 -1
- package/dist/chunks/{4765.a42492b9.js → 4765.b8c1db9e.js} +2 -2
- package/dist/chunks/{7146.078b8ac4.js.map → 4765.b8c1db9e.js.map} +1 -1
- package/dist/chunks/{4837.69df2655.js → 4837.97a0dcd6.js} +2 -2
- package/dist/chunks/{4837.69df2655.js.map → 4837.97a0dcd6.js.map} +1 -1
- package/dist/chunks/{5522.4d152e93.js → 5522.16e54d5e.js} +3 -3
- package/dist/chunks/{5522.4d152e93.js.map → 5522.16e54d5e.js.map} +1 -1
- package/dist/chunks/{5552.08fd5ac1.js → 5552.aca70f55.js} +2 -2
- package/dist/chunks/{5552.08fd5ac1.js.map → 5552.aca70f55.js.map} +1 -1
- package/dist/chunks/{7146.078b8ac4.js → 7146.cc71b664.js} +2 -2
- package/dist/chunks/{4765.a42492b9.js.map → 7146.cc71b664.js.map} +1 -1
- package/dist/chunks/{7218.a19700c5.js → 7218.c816a650.js} +2 -2
- package/dist/chunks/{7218.a19700c5.js.map → 7218.c816a650.js.map} +1 -1
- package/dist/chunks/7250.5712832d.js +2 -0
- package/dist/chunks/7250.5712832d.js.map +1 -0
- package/dist/chunks/8734.cdd8c904.js +2 -0
- package/dist/chunks/8734.cdd8c904.js.map +1 -0
- package/dist/chunks/9057.dc9ef655.js +2 -0
- package/dist/chunks/9057.dc9ef655.js.map +1 -0
- package/dist/chunks/9653.b9c29b0d.js +2 -0
- package/dist/chunks/9653.b9c29b0d.js.map +1 -0
- package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js → batch-update-raw-data-generated-view.16272062.js} +3 -3
- package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js.map → batch-update-raw-data-generated-view.16272062.js.map} +1 -1
- package/dist/chunks/chat-conversation.c9d27c2f.js +3 -0
- package/dist/chunks/chat-conversation.c9d27c2f.js.map +1 -0
- package/dist/chunks/chat-preview.fd35dba0.js +3 -0
- package/dist/chunks/chat-preview.fd35dba0.js.map +1 -0
- package/dist/chunks/{check-editor-by-name.5d5227ec.js → check-editor-by-name.545857a0.js} +2 -2
- package/dist/chunks/{check-editor-by-name.5d5227ec.js.map → check-editor-by-name.545857a0.js.map} +1 -1
- package/dist/chunks/contract-select.dad05385.js +3 -0
- package/dist/chunks/contract-select.dad05385.js.map +1 -0
- package/dist/chunks/generate-snippets-context-menu.c82ed4db.js +2 -0
- package/dist/chunks/generate-snippets-context-menu.c82ed4db.js.map +1 -0
- package/dist/chunks/get-config-by-data-for-ai.b5269977.js +3 -0
- package/dist/chunks/get-config-by-data-for-ai.b5269977.js.map +1 -0
- package/dist/chunks/get-data-deps.487a2b6c.js +2 -0
- package/dist/chunks/{get-data-deps.84dd8d22.js.map → get-data-deps.487a2b6c.js.map} +1 -1
- package/dist/chunks/get-dependency-tree.596d699c.js +2 -0
- package/dist/chunks/get-dependency-tree.596d699c.js.map +1 -0
- package/dist/chunks/{get-raw-data-system-prompts.b114707f.js → get-raw-data-system-prompts.d1206300.js} +2 -2
- package/dist/chunks/{get-raw-data-system-prompts.b114707f.js.map → get-raw-data-system-prompts.d1206300.js.map} +1 -1
- package/dist/chunks/{get-usage-member-statistics.4be301d2.js → get-usage-member-statistics.d964ca53.js} +2 -2
- package/dist/chunks/{get-usage-member-statistics.4be301d2.js.map → get-usage-member-statistics.d964ca53.js.map} +1 -1
- package/dist/chunks/{inject-chat-preview-agent.c2d213c2.js → inject-chat-preview-agent.c94459a5.js} +2 -2
- package/dist/chunks/{inject-chat-preview-agent.c2d213c2.js.map → inject-chat-preview-agent.c94459a5.js.map} +1 -1
- package/dist/chunks/main.abdebced.js +2 -0
- package/dist/chunks/{main.265d3af1.js.map → main.abdebced.js.map} +1 -1
- package/dist/chunks/{page-arch-node.57481be9.js → page-arch-node.974674c0.js} +3 -3
- package/dist/chunks/page-arch-node.974674c0.js.map +1 -0
- package/dist/chunks/parse-path.fba42203.js +2 -0
- package/dist/chunks/parse-path.fba42203.js.map +1 -0
- package/dist/chunks/{pre-generated-config-preview.ef0d5c22.js → pre-generated-config-preview.0b6e46f0.js} +2 -2
- package/dist/chunks/pre-generated-config-preview.0b6e46f0.js.map +1 -0
- package/dist/chunks/pre-generated-config.e3a01708.js +2 -0
- package/dist/chunks/pre-generated-config.e3a01708.js.map +1 -0
- package/dist/chunks/pre-generated-container.6eb4ab6b.js +2 -0
- package/dist/chunks/pre-generated-container.6eb4ab6b.js.map +1 -0
- package/dist/chunks/pre-generated-preview.98b88329.js +3 -0
- package/dist/chunks/pre-generated-preview.98b88329.js.map +1 -0
- package/dist/chunks/pre-generated-table-view.8a9d5527.js +2 -0
- package/dist/chunks/pre-generated-table-view.8a9d5527.js.map +1 -0
- package/dist/chunks/{property-editor.414d0e04.js → property-editor.866bca42.js} +2 -2
- package/dist/chunks/{property-editor.414d0e04.js.map → property-editor.866bca42.js.map} +1 -1
- package/dist/chunks/raw-data-preview.9be74f23.js +3 -0
- package/dist/chunks/raw-data-preview.9be74f23.js.map +1 -0
- package/dist/chunks/raw-metric-preview.db39bab8.js +3 -0
- package/dist/chunks/raw-metric-preview.db39bab8.js.map +1 -0
- package/dist/chunks/workbench-action-list.cd3e2ff1.js +2 -0
- package/dist/chunks/workbench-action-list.cd3e2ff1.js.map +1 -0
- package/dist/chunks/workbench-action.5b993227.js +3 -0
- package/dist/chunks/workbench-action.5b993227.js.map +1 -0
- package/dist/chunks/workbench-history-action.2b34f98b.js +3 -0
- package/dist/chunks/workbench-history-action.2b34f98b.js.map +1 -0
- package/dist/chunks/{workbench-pane.1cb1ad53.js → workbench-pane.7e85de42.js} +3 -3
- package/dist/chunks/{workbench-pane.1cb1ad53.js.map → workbench-pane.7e85de42.js.map} +1 -1
- package/dist/chunks/workbench-sidebar.01731e99.js +2 -0
- package/dist/chunks/workbench-sidebar.01731e99.js.map +1 -0
- package/dist/chunks/workbench-tree.e71a583f.js +3 -0
- package/dist/chunks/{workbench-tree.636b214f.js.map → workbench-tree.e71a583f.js.map} +1 -1
- package/dist/index.51404b90.js +2 -0
- package/dist/{index.70a04098.js.map → index.51404b90.js.map} +1 -1
- package/package.json +3 -3
- package/dist/chunks/1304.9f954ce8.js +0 -2
- package/dist/chunks/1304.9f954ce8.js.map +0 -1
- package/dist/chunks/2475.34e54f88.js +0 -3
- package/dist/chunks/2475.34e54f88.js.map +0 -1
- package/dist/chunks/2980.fda8788e.js +0 -2
- package/dist/chunks/2980.fda8788e.js.map +0 -1
- package/dist/chunks/3623.a1c5249f.js +0 -2
- package/dist/chunks/3623.a1c5249f.js.map +0 -1
- package/dist/chunks/9080.0b863051.js +0 -2
- package/dist/chunks/9080.0b863051.js.map +0 -1
- package/dist/chunks/chat-conversation.f2e17e56.js +0 -3
- package/dist/chunks/chat-conversation.f2e17e56.js.map +0 -1
- package/dist/chunks/chat-preview.26ea1314.js +0 -3
- package/dist/chunks/chat-preview.26ea1314.js.map +0 -1
- package/dist/chunks/contract-select.24b13215.js +0 -3
- package/dist/chunks/contract-select.24b13215.js.map +0 -1
- package/dist/chunks/generate-snippets-context-menu.b7dad236.js +0 -2
- package/dist/chunks/generate-snippets-context-menu.b7dad236.js.map +0 -1
- package/dist/chunks/get-config-by-data-for-ai.c97aaf83.js +0 -3
- package/dist/chunks/get-config-by-data-for-ai.c97aaf83.js.map +0 -1
- package/dist/chunks/get-data-deps.84dd8d22.js +0 -2
- package/dist/chunks/get-dependency-tree.8f7e6c4f.js +0 -2
- package/dist/chunks/get-dependency-tree.8f7e6c4f.js.map +0 -1
- package/dist/chunks/main.265d3af1.js +0 -2
- package/dist/chunks/page-arch-node.57481be9.js.map +0 -1
- package/dist/chunks/parse-path.2c755de8.js +0 -2
- package/dist/chunks/parse-path.2c755de8.js.map +0 -1
- package/dist/chunks/pre-generated-config-preview.ef0d5c22.js.map +0 -1
- package/dist/chunks/pre-generated-config.16c186aa.js +0 -2
- package/dist/chunks/pre-generated-config.16c186aa.js.map +0 -1
- package/dist/chunks/pre-generated-container.053eff29.js +0 -2
- package/dist/chunks/pre-generated-container.053eff29.js.map +0 -1
- package/dist/chunks/pre-generated-preview.b36231d9.js +0 -3
- package/dist/chunks/pre-generated-preview.b36231d9.js.map +0 -1
- package/dist/chunks/pre-generated-table-view.aebbc5c2.js +0 -2
- package/dist/chunks/pre-generated-table-view.aebbc5c2.js.map +0 -1
- package/dist/chunks/raw-data-preview.d9d2d8a6.js +0 -3
- package/dist/chunks/raw-data-preview.d9d2d8a6.js.map +0 -1
- package/dist/chunks/raw-metric-preview.9b355f06.js +0 -3
- package/dist/chunks/raw-metric-preview.9b355f06.js.map +0 -1
- package/dist/chunks/workbench-action-list.1d26ee09.js +0 -2
- package/dist/chunks/workbench-action-list.1d26ee09.js.map +0 -1
- package/dist/chunks/workbench-action.005f76b5.js +0 -3
- package/dist/chunks/workbench-action.005f76b5.js.map +0 -1
- package/dist/chunks/workbench-history-action.9b7f8ba5.js +0 -3
- package/dist/chunks/workbench-history-action.9b7f8ba5.js.map +0 -1
- package/dist/chunks/workbench-sidebar.d0076cb0.js +0 -2
- package/dist/chunks/workbench-sidebar.d0076cb0.js.map +0 -1
- package/dist/chunks/workbench-tree.636b214f.js +0 -3
- package/dist/index.70a04098.js +0 -2
- /package/dist/chunks/{2475.34e54f88.js.LICENSE.txt → 2475.5b883974.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{5522.4d152e93.js.LICENSE.txt → 5522.16e54d5e.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{batch-update-raw-data-generated-view.d031fa7c.js.LICENSE.txt → batch-update-raw-data-generated-view.16272062.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{chat-conversation.f2e17e56.js.LICENSE.txt → chat-conversation.c9d27c2f.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{chat-preview.26ea1314.js.LICENSE.txt → chat-preview.fd35dba0.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{contract-select.24b13215.js.LICENSE.txt → contract-select.dad05385.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{get-config-by-data-for-ai.c97aaf83.js.LICENSE.txt → get-config-by-data-for-ai.b5269977.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{page-arch-node.57481be9.js.LICENSE.txt → page-arch-node.974674c0.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{pre-generated-preview.b36231d9.js.LICENSE.txt → pre-generated-preview.98b88329.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{raw-data-preview.d9d2d8a6.js.LICENSE.txt → raw-data-preview.9be74f23.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{raw-metric-preview.9b355f06.js.LICENSE.txt → raw-metric-preview.db39bab8.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-action.005f76b5.js.LICENSE.txt → workbench-action.5b993227.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-history-action.9b7f8ba5.js.LICENSE.txt → workbench-history-action.2b34f98b.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-pane.1cb1ad53.js.LICENSE.txt → workbench-pane.7e85de42.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-tree.636b214f.js.LICENSE.txt → workbench-tree.e71a583f.js.LICENSE.txt} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
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(30981),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(30981).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(30981),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.0b863051.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/9080.0b863051.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,3 +0,0 @@
|
|
|
1
|
-
/*! For license information please see chat-conversation.f2e17e56.js.LICENSE.txt */
|
|
2
|
-
(globalThis.webpackChunk_next_bricks_visual_builder=globalThis.webpackChunk_next_bricks_visual_builder||[]).push([[3555],{4537:(e,t,n)=>{"use strict";n.d(t,{DA:()=>h});var r=n(62142),o=n(56948),a=n(64149),i=n(29755);const s={json:()=>n.e(4190).then(n.bind(n,64190)),javascript:()=>n.e(5065).then(n.bind(n,15065)),js:()=>n.e(5065).then(n.bind(n,15065)),typescript:()=>n.e(2449).then(n.bind(n,72449)),ts:()=>n.e(2449).then(n.bind(n,72449)),html:()=>Promise.all([n.e(5065),n.e(2593),n.e(4735)]).then(n.bind(n,74735)),"html-derivative":()=>Promise.all([n.e(5065),n.e(2593),n.e(4735),n.e(9251)]).then(n.bind(n,9251)),xml:()=>n.e(8263).then(n.bind(n,28263)),css:()=>n.e(2593).then(n.bind(n,62593)),markdown:()=>n.e(8311).then(n.bind(n,88311)),md:()=>n.e(8311).then(n.bind(n,88311)),mermaid:()=>n.e(8757).then(n.bind(n,58757)),mmd:()=>n.e(8757).then(n.bind(n,58757)),jsx:()=>n.e(1136).then(n.bind(n,58755)),tsx:()=>n.e(4609).then(n.bind(n,54609)),shellscript:()=>n.e(1215).then(n.bind(n,1215)),bash:()=>n.e(1215).then(n.bind(n,1215)),sh:()=>n.e(1215).then(n.bind(n,1215)),shell:()=>n.e(1215).then(n.bind(n,1215)),zsh:()=>n.e(1215).then(n.bind(n,1215)),python:()=>n.e(2510).then(n.bind(n,82510)),py:()=>n.e(2510).then(n.bind(n,82510)),go:()=>n.e(5498).then(n.bind(n,75498)),sql:()=>n.e(1120).then(n.bind(n,21120))},c={"light-plus":r.A,"dark-plus":o.A},l=(0,a.q6)({langs:s,themes:c,engine:()=>(0,i.Mk)(n.e(5032).then(n.bind(n,75032)))}),{codeToHtml:u,codeToHast:d,codeToTokensBase:m,codeToTokens:p,codeToTokensWithThemes:f,getSingletonHighlighter:h,getLastGrammarState:g}=(0,a.CZ)(l,{guessEmbeddedLanguages(e,t){if("markdown"===t||"md"===t)return["mermaid"]}})},5536:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(12559);function o(e,t,n){return n((0,r.A)(e,t))}},11369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(17545);function o(e){var t=function(e){if("object"!=(0,r.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,r.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},12559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},17545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},24969:(e,t,n)=>{"use strict";function r(e){const t=e.properties.className||[];for(const e of t)if("language-"===e.slice(0,9))return e.slice(9).toLowerCase();return null}n.d(t,{G:()=>r})},26902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(17545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},36758:e=>{"use strict";e.exports=function(e){return e[1]}},37384:(e,t,n)=>{"use strict";n.d(t,{N:()=>f});var r=n(18769),o=n(31085),a=n(51309),i=n(81735),s=n(35532),c=n(23640),l=n(48302),u=n(45619),d=n(4537),m=n(50220);const p={Fragment:o.Fragment,jsx:o.jsx,jsxs:o.jsxs};function f(e){var t;let{content:n,components:o,shiki:f}=e;const[h,g]=(0,r.useState)(null),v=null!==(t=null==f?void 0:f.theme)&&void 0!==t?t:"dark-plus";return(0,r.useEffect)((()=>{let e=!1;return(async()=>{try{const t=await(0,d.DA)({themes:[v]});if(e)return;const r=await(0,a.l)().use(i.A).use(s.A).use(c.A).use(m.b).use(u.A,t,{theme:v,lazy:!0,defaultLanguage:"text"}).use(l.A,{...p,passNode:!0,components:o}).process(n);e||g(r.result)}catch(t){e||(console.error("Convert markdown failed:",t),g(null))}})(),()=>{e=!0}}),[o,n,v]),h}},40935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(r)for(var s=0;s<this.length;s++){var c=this[s][0];null!=c&&(i[c]=!0)}for(var l=0;l<e.length;l++){var u=[].concat(e[l]);r&&i[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},44705:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ChatConversation:()=>C,ChatConversationComponent:()=>O});var r,o=n(74635),a=n(70918),i=n(26902),s=n(5536),c=n(86121),l=n(70829),u=n(62740),d=n(18769),m=n.n(d),p=n(90870),f=n(30981),h=(n(34419),n(57035)),g=n(87236);let v,b,y,w,E,A,k,x,S;const{defineElement:N,property:T,event:j}=(0,p.createDecorators)();let C;var $=new WeakMap,B=new WeakMap,L=new WeakMap,_=new WeakSet,M=new WeakMap;class D extends f.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,_),(0,a.A)(this,$,b(this)),(0,a.A)(this,B,(y(this),w(this))),(0,a.A)(this,L,(E(this),A(this))),(0,a.A)(this,M,(S(this),e=>{(0,s.A)(_,this,k).emit(e)}))}get messages(){return(0,l.A)($,this)}set messages(e){(0,c.A)($,this,e)}get errorBoundary(){return(0,l.A)(B,this)}set errorBoundary(e){(0,c.A)(B,this,e)}render(){return m().createElement(O,{host:this,messages:this.messages,errorBoundary:this.errorBoundary,onStoryboardUpdate:(0,l.A)(M,this)})}}function O(e){let{messages:t,host:n,errorBoundary:r,onStoryboardUpdate:o}=e;const a=(0,d.useMemo)((()=>/(?:^|\n)```easy_cmd_vb_block_(page|storyboard)\n([\s\S]*?)\n```(?:$|\n)/gm),[]),i=(0,d.useRef)(new Map),[s,c]=(0,d.useState)([]),l=(0,d.useRef)(!1);(0,d.useEffect)((()=>{for(const n of null!=t?t:[]){var e;if("assistant"!==n.role)continue;let t;a.lastIndex=null!==(e=i.current.get(n.key))&&void 0!==e?e:0;const r=[];let o=!1;for(;t=a.exec(n.content);){i.current.set(n.key,a.lastIndex);const[,e,s]=t;try{const t=JSON.parse(s);"page"===e?(o=!0,r.push(...t)):r.push({...t,type:"item"})}catch(e){console.error("parse storyboard failed:",e)}}o?c(r):r.length>0&&c((e=>[...e,...r]))}}),[a,t]);const[u,p]=(0,d.useState)([]);(0,d.useEffect)((()=>{const e=[],t=new Map;for(const n of s)"block"===n.type?e.push(n):n.storyboard&&t.set(n.uuid,n.storyboard);e.sort(((e,t)=>e.seq-t.seq));const n={brick:"eo-content-layout",children:[]},o={brick:"eo-main-view",children:[{brick:"eo-page-title",slot:"pageTitle",properties:{pageTitle:"测试页面"}}]};let a=!1;for(const i of e)if("全局操作区"===i.name)for(const e of i.children){const n=t.get(e);n&&(o.children.push({...n,properties:{...n.properties,slot:void 0},errorBoundary:r,slot:"toolbar",iid:`item:${e}`,meta:{type:"item",uuid:e,block:{uuid:i.uuid,name:i.name}}}),a=!0)}else{const e=t.get(i.uuid);if(e){const o={...e,children:[],errorBoundary:r,iid:`block:${i.uuid}`,meta:{type:"block",uuid:i.uuid,name:i.name}};a=!0,n.children.push(o);for(const e of i.children){const n=t.get(e);n&&o.children.push({...n,errorBoundary:r,iid:`item:${e}`,meta:{type:"item",uuid:e}})}}else if(!i.hasContainer)for(const e of i.children){const o=t.get(e);o&&(n.children.push({...o,errorBoundary:r,iid:`item:${e}`,meta:{type:"item",uuid:e}}),a=!0)}}o.children.push(n),p((e=>a?[o]:0===e.length?e:[]))}),[s,r]),(0,d.useEffect)((()=>{null==o||o(u)}),[o,u]);const f=(0,d.useMemo)((()=>{let e=n;for(;e;){const t=getComputedStyle(e,null).getPropertyValue("overflow-y");if("auto"===t||"scroll"===t)return e;if(e.parentNode instanceof ShadowRoot)e=e.parentNode.host;else{if(!(e.parentNode instanceof Element))break;e=e.parentNode}}return document.scrollingElement||document.documentElement}),[n]);return(0,d.useEffect)((()=>{l.current||setTimeout((()=>{f.scrollTo(0,f.scrollHeight)}),1)}),[t,f]),(0,d.useEffect)((()=>{const e=()=>{l.current=f.scrollTop+f.clientHeight+6<f.scrollHeight};return f.addEventListener("scroll",e),()=>{f.removeEventListener("scroll",e)}}),[f]),m().createElement(m().Fragment,null,null==t?void 0:t.map(((e,t)=>{var n;return m().createElement(h.V,{key:null!==(n=e.key)&&void 0!==n?n:`index-${t}`,message:e})})))}r=D,({e:[b,y,w,E,A,k,x,S],c:[C,v]}=(0,u.A)(r,[N("visual-builder.chat-conversation",{styleTexts:[g.A]})],[[T({attribute:!1}),1,"messages"],[T({type:Boolean}),1,"errorBoundary"],[j({type:"storyboard.update"}),1,"storyboardUpdate",e=>(0,l.A)(L,e),(e,t)=>(0,c.A)(L,e,t)]],0,(e=>M.has((0,i.A)(e))),f.ReactNextElement)),v()},50220:(e,t,n)=>{"use strict";n.d(t,{b:()=>d});var r=n(74269),o=n(74650),a=n(96271),i=n(24969);let s;let c=0;const l=new DOMParser,u=new XMLSerializer;function d(){return async e=>{const t=[];(0,r.YR)(e,"element",((e,r,d)=>{d&&"element"===d.type&&"pre"===d.tagName&&"code"===e.tagName&&"mermaid"===(0,i.G)(e)&&t.push((async()=>{const t="mermaid-"+c++;let i;try{const r=await(s||(s=async function(){const e=(await Promise.all([n.e(6724),n.e(934)]).then(n.bind(n,934))).default;return e.initialize({startOnLoad:!1,theme:"base",themeVariables:{fontSize:"14px",lineColor:"#979797",primaryColor:"#DCD2F3",primaryBorderColor:"#0000001A"}}),e}(),s));i=(await r.render(t,(0,o.d)(e))).svg}catch(e){var m;return console.error("Error rendering mermaid diagram:",e),void(null===(m=document.getElementById(t))||void 0===m||m.remove())}const p=l.parseFromString(i,"text/html"),f=p.querySelector("svg"),h=p.createElementNS("http://www.w3.org/2000/svg","defs");h.innerHTML=`<linearGradient id="linear-gradient-${t}" x1="0%" y1="0%" x2="0%" y2="100%">\n <stop offset="0%" stop-color="#F0EBFA" />\n <stop offset="75%" stop-color="#DED4F4" />\n <stop offset="100%" stop-color="#C5C7FA" />\n</linearGradient>`,f.prepend(h);const g=p.createElementNS("http://www.w3.org/2000/svg","style");g.textContent=`\n#${t} .node rect,\n#${t} .node circle,\n#${t} .node ellipse,\n#${t} .node polygon,\n#${t} .node path {\n fill: url(#linear-gradient-${t});\n}\n#${t} .node rect {\n rx: 4;\n ry: 4;\n}\n#${t} .labelBkg {\n background-color: #f5f8ff;\n}\n#${t} .edgeLabel,\n#${t} .edgeLabel p {\n background-color: transparent;\n}\n#${t} .edgeLabel {\n color: #8c8c8c;\n font-size: 12px;\n}\n`,f.appendChild(g);const v=u.serializeToString(f),b=(0,a.f)(v,{fragment:!0}).children;d.children.splice(r,1,...b),d.properties.className=(d.properties.className||[]).concat("mermaid")})())})),await Promise.all(t)}}},53373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,a(n)))}return e}function a(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=i(t,n));return t}function i(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},57035:(e,t,n)=>{"use strict";n.d(t,{V:()=>l});var r=n(18769),o=n.n(r),a=n(53373),i=n.n(a),s=n(37384);const c=(0,n(30981).wrapBrick)("eo-avatar");function l(e){let{message:t}=e;const n=(0,r.useMemo)((()=>{const e=[];if("assistant"===t.role){const n=/(?:^|\n)```(easy_cmd_\S+)\n([\s\S]*?)\n```(?:$|\n)/gm;let r,o=0;for(;r=n.exec(t.content);){const[a,i,s]=r,c=r.index,l=t.content.slice(o,c).trim();l.length>0&&e.push({type:"markdown",content:l}),e.push({type:"command",command:i,content:s.trim(),raw:a}),o=n.lastIndex}const a=t.content.slice(o).trim();a.length>0&&e.push({type:"markdown",content:a})}else e.push({type:"plain",content:t.content});return e}),[t.content,t.role]),a=(0,r.useRef)(null);return(0,r.useEffect)((()=>{const e=a.current;e&&setTimeout((()=>{const n=e.parentElement.querySelectorAll(".texting");for(const e of n)e.classList.remove("texting");if(!t.partial)return;let r=e;for(;r;){const e=r.lastChild;if((null==e?void 0:e.nodeType)!==Node.ELEMENT_NODE||"DETAILS"===(null==e?void 0:e.tagName)&&!e.open){var o;if((null==e?void 0:e.nodeType)!==Node.TEXT_NODE||0!==e.textContent.trim().length||(null===(o=e.previousSibling)||void 0===o?void 0:o.nodeType)!==Node.ELEMENT_NODE)break;r=e.previousSibling}else r=e}r.classList.add("texting")}),1)}),[t.partial,t.content]),o().createElement("div",{className:i()("message",{failed:t.failed})},o().createElement("div",{className:"avatar"},o().createElement(c,{icon:{lib:"easyops",icon:"assistant"===t.role?"robot":"account"},size:"small",className:`role-${t.role}`})),o().createElement("div",{className:"main"},o().createElement("div",{className:"label"},"assistant"===t.role?"Assistant":"You"),o().createElement("div",{className:"content",ref:a},n.map(((e,t)=>o().createElement(u,{key:t,chunk:e}))))))}function u(e){let{chunk:t}=e;return o().createElement(o().Fragment,null,"markdown"===t.type?o().createElement("div",{className:"markdown"},o().createElement(s.N,{content:t.content})):"command"===t.type?o().createElement(o().Fragment,null,o().createElement("details",{className:"command"},o().createElement("summary",null,"```",t.command),o().createElement("pre",null,o().createElement("code",null,t.content)))):o().createElement("div",{className:"plain"},t.content))}},62740:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(17545),o=n(26902);function a(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var i=n(11369);function s(e,t,n,s,c,l){var u,d,m,p,f,h,g,v=Symbol.metadata||Symbol.for("Symbol.metadata"),b=Object.defineProperty,y=Object.create,w=[y(null),y(null)],E=t.length;function A(t,n,r){return function(o,a){n&&(a=o,o=e);for(var i=0;i<t.length;i++)a=t[i].apply(o,r?[a]:[]);return r?a:o}}function k(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function x(e,t,n,o,i,s,c,l,m,p,f){function h(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),v=t[3],y=!c,E=1===i,x=3===i,S=4===i,N=2===i;function T(t,n,r){return function(o,a){return n&&(a=o,o=e),r&&r(o),j[t].call(o,a)}}if(!y){var j={},C=[],$=x?"get":S||E?"set":"value";if(m?(p||E?j={get:a((function(){return v(this)}),o,"get"),set:function(e){t[4](this,e)}}:j[$]=v,p||a(j[$],o,N?"":$)):p||(j=Object.getOwnPropertyDescriptor(e,o)),!p&&!m){if((d=w[+l][o])&&7!=(d^i))throw Error("Decorating two elements with the same name ("+j[$].name+") is not supported yet");w[+l][o]=i<3?1:i}}for(var B=e,L=g.length-1;L>=0;L-=n?2:1){var _=k(g[L],"A decorator","be",!0),M=n?g[L-1]:void 0,D={},O={kind:["field","accessor","method","getter","setter","class"][i],name:o,metadata:u,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");k(t,"An initializer","be",!0),s.push(t)}.bind(null,D)};if(y)d=_.call(M,B,O),D.v=1,k(d,"class decorators","return")&&(B=d);else if(O.static=l,O.private=m,d=O.access={has:m?f.bind():function(e){return o in e}},S||(d.get=m?N?function(e){return h(e),j.value}:T("get",0,h):function(e){return e[o]}),N||x||(d.set=m?T("set",0,h):function(e,t){e[o]=t}),B=_.call(M,E?{get:j.get,set:j.set}:j[$],O),D.v=1,E){if("object"==(0,r.A)(B)&&B)(d=k(B.get,"accessor.get"))&&(j.get=d),(d=k(B.set,"accessor.set"))&&(j.set=d),(d=k(B.init,"accessor.init"))&&C.unshift(d);else if(void 0!==B)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else k(B,(p?"field":"method")+" decorators","return")&&(p?C.unshift(B):j[$]=B)}return i<2&&c.push(A(C,l,1),A(s,l,0)),p||y||(m?E?c.splice(-1,0,T("get",l),T("set",l)):c.push(N?j[$]:k.call.bind(j[$])):b(e,o,j)),B}function S(e){return b(e,v,{configurable:!0,enumerable:!0,value:u})}return void 0!==l&&(u=l[v]),u=y(null==u?null:u),f=[],h=function(e){e&&f.push(A(e))},g=function(t,r){for(var a=0;a<n.length;a++){var s=n[a],l=s[1],u=7&l;if((8&l)==t&&!u==r){var d=s[2],h=!!s[3],g=16&l;x(t?e:e.prototype,s,g,h?"#"+d:(0,i.A)(d),u,u<2?[]:t?p=p||[]:m=m||[],f,!!t,h,r,t&&h?function(t){return(0,o.A)(t)===e}:c)}}},g(8,0),g(0,0),g(8,1),g(0,1),h(m),h(p),d=f,E||S(e),{e:d,get c(){var n=[];return E&&[S(e=x(e,[t],s,e.name,5,n)),A(n,1)]}}}},70829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(12559);function o(e,t){return e.get((0,r.A)(e,t))}},70918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(72016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},72016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},74635:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(72016);function o(e,t){(0,r.A)(e,t),t.add(e)}},86121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(12559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},87236:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(36758),o=n.n(r),a=n(40935),i=n.n(a)()(o());i.push([e.id,':host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.message{display:flex;gap:8px}.main{flex:1;min-width:0}.label{font-weight:bold;line-height:28px}.message:not(:last-child){margin-bottom:2em}.invisible-dots{opacity:0}.failed .content{color:var(--color-error)}.command:not(:first-child){margin-top:1em}.command:not(:last-child){margin-bottom:1em}pre{white-space:pre-wrap;background-color:var(--palette-gray-3);border-radius:6px;padding:1em}.markdown > :first-child{margin-top:0}.markdown > :last-child{margin-bottom:0}.avatar{align-self:flex-start;display:flex;align-items:center;justify-content:center}.texting::after{content:" ";animation:texting 2s infinite;white-space:pre}@keyframes texting{0%{content:" "}25%{content:". "}50%{content:".. "}75%{content:"..."}100%{content:" "}}pre[class*="language-"]{overflow:visible}pre[class*="language-"],\ncode[class*="language-"]{white-space:pre-wrap}eo-avatar.role-assistant::part(avatar-icon){background-color:var(--palette-blue-5)}.content{word-wrap:break-word}.plain{white-space:pre-wrap}',""]);const s=i.toString()}}]);
|
|
3
|
-
//# sourceMappingURL=chat-conversation.f2e17e56.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/chat-conversation.f2e17e56.js","mappings":"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","sources":["webpack:///../../src/index.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../src/utils.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../src/MarkdownComponent.tsx","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///./src/chat-conversation/index.tsx","webpack:///../../src/rehypeMermaid.ts","webpack:///../../node_modules/classnames/index.js","webpack:///./src/chat-conversation/MessageComponent.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/chat-conversation/styles.shadow.css"],"sourcesContent":["// istanbul ignore file\n\n/*\nnpx shiki-codegen \\\n --langs json,javascript,typescript,html,html-derivative,xml,css,markdown,mermaid,jsx,tsx,shellscript,python,go,sql \\\n --themes light-plus,dark-plus \\\n --engine oniguruma \\\n ./shared/shiki/src/bundle.ts\n*/\n\nimport lightPlus from \"@shikijs/themes/light-plus\";\nimport darkPlus from \"@shikijs/themes/dark-plus\";\n\n/* Generate by @shikijs/codegen */\nimport type {\n DynamicImportLanguageRegistration,\n HighlighterGeneric,\n ThemeInput,\n} from \"@shikijs/types\";\nimport {\n createSingletonShorthands,\n createdBundledHighlighter,\n} from \"@shikijs/core\";\nimport { createOnigurumaEngine } from \"@shikijs/engine-oniguruma\";\n\ntype BundledLanguage =\n | \"json\"\n | \"javascript\"\n | \"js\"\n | \"typescript\"\n | \"ts\"\n | \"html\"\n | \"html-derivative\"\n | \"xml\"\n | \"css\"\n | \"markdown\"\n | \"md\"\n | \"mermaid\"\n | \"mmd\"\n | \"jsx\"\n | \"tsx\"\n | \"shellscript\"\n | \"bash\"\n | \"sh\"\n | \"shell\"\n | \"zsh\"\n | \"python\"\n | \"py\"\n | \"go\"\n | \"sql\";\ntype BundledTheme = \"light-plus\" | \"dark-plus\";\ntype Highlighter = HighlighterGeneric<BundledLanguage, BundledTheme>;\n\nconst bundledLanguages = {\n json: () => import(\"@shikijs/langs/json\"),\n javascript: () => import(\"@shikijs/langs/javascript\"),\n js: () => import(\"@shikijs/langs/javascript\"),\n typescript: () => import(\"@shikijs/langs/typescript\"),\n ts: () => import(\"@shikijs/langs/typescript\"),\n html: () => import(\"@shikijs/langs/html\"),\n \"html-derivative\": () => import(\"@shikijs/langs/html-derivative\"),\n xml: () => import(\"@shikijs/langs/xml\"),\n css: () => import(\"@shikijs/langs/css\"),\n markdown: () => import(\"@shikijs/langs/markdown\"),\n md: () => import(\"@shikijs/langs/markdown\"),\n mermaid: () => import(\"@shikijs/langs/mermaid\"),\n mmd: () => import(\"@shikijs/langs/mermaid\"),\n jsx: () => import(\"@shikijs/langs/jsx\"),\n tsx: () => import(\"@shikijs/langs/tsx\"),\n shellscript: () => import(\"@shikijs/langs/shellscript\"),\n bash: () => import(\"@shikijs/langs/shellscript\"),\n sh: () => import(\"@shikijs/langs/shellscript\"),\n shell: () => import(\"@shikijs/langs/shellscript\"),\n zsh: () => import(\"@shikijs/langs/shellscript\"),\n python: () => import(\"@shikijs/langs/python\"),\n py: () => import(\"@shikijs/langs/python\"),\n go: () => import(\"@shikijs/langs/go\"),\n sql: () => import(\"@shikijs/langs/sql\"),\n} as Record<BundledLanguage, DynamicImportLanguageRegistration>;\n\nconst bundledThemes = {\n \"light-plus\": lightPlus,\n \"dark-plus\": darkPlus,\n} as Record<BundledTheme, ThemeInput>;\n\nconst createHighlighter = /* @__PURE__ */ createdBundledHighlighter<\n BundledLanguage,\n BundledTheme\n>({\n langs: bundledLanguages,\n themes: bundledThemes,\n engine: () => createOnigurumaEngine(import(\"shiki/wasm\")),\n});\n\nconst {\n codeToHtml,\n codeToHast,\n codeToTokensBase,\n codeToTokens,\n codeToTokensWithThemes,\n getSingletonHighlighter,\n getLastGrammarState,\n} = /* @__PURE__ */ createSingletonShorthands<BundledLanguage, BundledTheme>(\n createHighlighter,\n {\n guessEmbeddedLanguages(code, lang) {\n if (lang === \"markdown\" || lang === \"md\") {\n return [\"mermaid\"];\n }\n },\n }\n);\n\nexport {\n bundledLanguages,\n bundledThemes,\n codeToHast,\n codeToHtml,\n codeToTokens,\n codeToTokensBase,\n codeToTokensWithThemes,\n getLastGrammarState,\n getSingletonHighlighter,\n};\nexport type { BundledLanguage, BundledTheme, Highlighter };\n","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import type { Element } from \"hast\";\n\nexport function getCodeLanguage(node: Element) {\n const className = (node.properties.className as string[]) || [];\n\n for (const classListItem of className) {\n if (classListItem.slice(0, 9) === \"language-\") {\n return classListItem.slice(9).toLowerCase();\n }\n }\n\n return null;\n}\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","import { useEffect, useState } from \"react\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { unified } from \"unified\";\nimport remarkParse from \"remark-parse\";\nimport remarkGfm from \"remark-gfm\";\nimport remarkToRehype from \"remark-rehype\";\nimport rehypeReact, { Options as RehypeReactOptions } from \"rehype-react\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\nimport rehypeShikiFromHighlighter from \"@shikijs/rehype/core\";\nimport { getSingletonHighlighter } from \"@next-shared/shiki\";\nimport { rehypeMermaid } from \"./rehypeMermaid.js\";\n\nconst production = { Fragment, jsx, jsxs };\n\nexport interface MarkdownComponentProps {\n content?: string;\n components?: Partial<Components>;\n shiki?: {\n /** @default \"dark-plus\" */\n theme?: \"light-plus\" | \"dark-plus\";\n };\n}\n\n// Reference https://github.com/remarkjs/react-remark/blob/39553e5f5c9e9b903bebf261788ff45130668de0/src/index.ts\nexport function MarkdownComponent({\n content,\n components,\n shiki,\n}: MarkdownComponentProps): JSX.Element | null {\n const [reactContent, setReactContent] = useState<JSX.Element | null>(null);\n const theme = shiki?.theme ?? \"dark-plus\";\n\n useEffect(() => {\n let ignore = false;\n (async () => {\n try {\n const highlighter = await getSingletonHighlighter({\n themes: [theme],\n });\n if (ignore) {\n return;\n }\n const vFile = await unified()\n .use(remarkParse)\n .use(remarkGfm)\n .use(remarkToRehype)\n .use(rehypeMermaid)\n .use(rehypeShikiFromHighlighter, highlighter as any, {\n theme,\n lazy: true,\n defaultLanguage: \"text\",\n })\n .use(rehypeReact, {\n ...production,\n passNode: true,\n components,\n } as RehypeReactOptions)\n .process(content);\n if (!ignore) {\n setReactContent(vFile.result);\n }\n } catch (error) {\n if (!ignore) {\n // eslint-disable-next-line no-console\n console.error(\"Convert markdown failed:\", error);\n setReactContent(null);\n }\n }\n })();\n return () => {\n ignore = true;\n };\n }, [components, content, theme]);\n\n return reactContent;\n}\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","import React, { useEffect, useMemo, useRef, useState } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport type { BrickConf } from \"@next-core/types\";\nimport { MessageComponent } from \"./MessageComponent\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface Message {\n role: \"user\" | \"assistant\";\n content: string;\n key: number;\n partial?: boolean;\n failed?: boolean;\n}\n\nexport interface ChatConversationProps {\n messages?: Message[];\n errorBoundary?: boolean;\n}\n\ntype StoryboardChunk = StoryboardChunkBlock | StoryboardChunkBlockItem;\n\ninterface StoryboardChunkBlock {\n type: \"block\";\n uuid: string;\n children: string[];\n name: string;\n seq: number;\n hasContainer?: boolean;\n}\n\ninterface StoryboardChunkBlockItem {\n type: \"item\";\n uuid: string;\n storyboard?: BrickConf;\n}\n\n/**\n * 用于 Visual Builder 的智能聊天对话列表\n */\nexport\n@defineElement(\"visual-builder.chat-conversation\", {\n styleTexts: [styleText],\n})\nclass ChatConversation\n extends ReactNextElement\n implements ChatConversationProps\n{\n @property({ attribute: false })\n accessor messages: Message[] | undefined;\n\n @property({ type: Boolean })\n accessor errorBoundary: boolean | undefined;\n\n @event({ type: \"storyboard.update\" })\n accessor #storyboardUpdate!: EventEmitter<BrickConf[]>;\n\n #handleStoryboardUpdate = (storyboard: BrickConf[]) => {\n this.#storyboardUpdate.emit(storyboard);\n };\n\n render() {\n return (\n <ChatConversationComponent\n host={this}\n messages={this.messages}\n errorBoundary={this.errorBoundary}\n onStoryboardUpdate={this.#handleStoryboardUpdate}\n />\n );\n }\n}\n\nexport interface ChatConversationComponentProps extends ChatConversationProps {\n host: Element;\n onStoryboardUpdate?: (storyboard: BrickConf[]) => void;\n}\n\nexport function ChatConversationComponent({\n messages,\n host,\n errorBoundary,\n onStoryboardUpdate,\n}: ChatConversationComponentProps) {\n const chunkRegExp = useMemo(\n () =>\n /(?:^|\\n)```easy_cmd_vb_block_(page|storyboard)\\n([\\s\\S]*?)\\n```(?:$|\\n)/gm,\n []\n );\n const lastIndexMapRef = useRef(new Map<number, number>());\n const [chunks, setChunks] = useState<StoryboardChunk[]>([]);\n const manualScrolledRef = useRef(false);\n\n useEffect(() => {\n for (const message of messages ?? []) {\n if (message.role !== \"assistant\") {\n continue;\n }\n chunkRegExp.lastIndex = lastIndexMapRef.current.get(message.key) ?? 0;\n let match: RegExpExecArray | null;\n const newChunks: StoryboardChunk[] = [];\n let newPage = false;\n while ((match = chunkRegExp.exec(message.content))) {\n lastIndexMapRef.current.set(message.key, chunkRegExp.lastIndex);\n const [, type, content] = match;\n try {\n const parsed = JSON.parse(content) as unknown;\n if (type === \"page\") {\n newPage = true;\n newChunks.push(\n ...(parsed as (StoryboardChunkBlock | StoryboardChunkBlockItem)[])\n );\n } else {\n newChunks.push({\n ...(parsed as StoryboardChunkBlockItem),\n type: \"item\",\n });\n }\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"parse storyboard failed:\", e);\n }\n }\n if (newPage) {\n setChunks(newChunks);\n } else if (newChunks.length > 0) {\n setChunks((prev) => [...prev, ...newChunks]);\n }\n }\n }, [chunkRegExp, messages]);\n\n const [storyboard, setStoryboard] = useState<BrickConf[]>([]);\n\n useEffect(() => {\n const blocks = [];\n const storyboardMap = new Map<string, BrickConf>();\n for (const chunk of chunks) {\n if (chunk.type === \"block\") {\n blocks.push(chunk);\n } else if (chunk.storyboard) {\n storyboardMap.set(chunk.uuid, chunk.storyboard);\n }\n }\n\n // Sort by seq ascent\n blocks.sort((a, b) => a.seq - b.seq);\n\n const contentLayout: BrickConf = {\n brick: \"eo-content-layout\",\n children: [],\n };\n const main: BrickConf = {\n brick: \"eo-main-view\",\n children: [\n {\n brick: \"eo-page-title\",\n slot: \"pageTitle\",\n properties: {\n pageTitle: \"测试页面\",\n },\n },\n ],\n };\n\n let hasContent = false;\n for (const block of blocks) {\n // No container\n if (block.name === \"全局操作区\") {\n for (const child of block.children) {\n const childBrick = storyboardMap.get(child);\n if (childBrick) {\n main.children.push({\n ...childBrick,\n properties: {\n ...childBrick.properties,\n slot: undefined,\n },\n errorBoundary,\n slot: \"toolbar\",\n iid: `item:${child}`,\n meta: {\n type: \"item\",\n uuid: child,\n block: {\n uuid: block.uuid,\n name: block.name,\n },\n },\n } as BrickConf);\n hasContent = true;\n }\n }\n } else {\n const rawBrick = storyboardMap.get(block.uuid);\n if (rawBrick) {\n const brick: BrickConf = {\n ...rawBrick,\n children: [],\n errorBoundary,\n iid: `block:${block.uuid}`,\n meta: {\n type: \"block\",\n uuid: block.uuid,\n name: block.name,\n },\n } as BrickConf;\n hasContent = true;\n contentLayout.children.push(brick);\n for (const child of block.children) {\n const childBrick = storyboardMap.get(child);\n if (childBrick) {\n brick.children.push({\n ...childBrick,\n errorBoundary,\n iid: `item:${child}`,\n meta: {\n type: \"item\",\n uuid: child,\n },\n } as BrickConf);\n }\n }\n } else if (!block.hasContainer) {\n for (const child of block.children) {\n const childBrick = storyboardMap.get(child);\n if (childBrick) {\n contentLayout.children.push({\n ...childBrick,\n errorBoundary,\n iid: `item:${child}`,\n meta: {\n type: \"item\",\n uuid: child,\n },\n } as BrickConf);\n hasContent = true;\n }\n }\n }\n }\n }\n\n main.children.push(contentLayout);\n\n setStoryboard((prev) =>\n hasContent ? [main] : prev.length === 0 ? prev : []\n );\n }, [chunks, errorBoundary]);\n\n useEffect(() => {\n onStoryboardUpdate?.(storyboard);\n }, [onStoryboardUpdate, storyboard]);\n\n const verticalScrollParent = useMemo(() => {\n // Lookup the nearest scrollable parent (on axis y)\n let current = host;\n while (current) {\n const overflowY = getComputedStyle(current, null).getPropertyValue(\n \"overflow-y\"\n );\n if (overflowY === \"auto\" || overflowY === \"scroll\") {\n return current;\n }\n if (current.parentNode instanceof ShadowRoot) {\n current = current.parentNode.host;\n } else if (current.parentNode instanceof Element) {\n current = current.parentNode;\n } else {\n break;\n }\n }\n return document.scrollingElement || document.documentElement;\n }, [host]);\n\n useEffect(() => {\n if (manualScrolledRef.current) {\n return;\n }\n setTimeout(() => {\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n verticalScrollParent.scrollTo(0, verticalScrollParent.scrollHeight!);\n }, 1);\n }, [messages, verticalScrollParent]);\n\n useEffect(() => {\n const handleScroll = () => {\n manualScrolledRef.current =\n verticalScrollParent.scrollTop +\n verticalScrollParent.clientHeight! +\n 6 <\n verticalScrollParent.scrollHeight;\n };\n verticalScrollParent.addEventListener(\"scroll\", handleScroll);\n return () => {\n verticalScrollParent.removeEventListener(\"scroll\", handleScroll);\n };\n }, [verticalScrollParent]);\n\n return (\n <>\n {messages?.map((message, index) => (\n <MessageComponent\n key={message.key ?? `index-${index}`}\n message={message}\n />\n ))}\n </>\n );\n}\n","import { visit } from \"unist-util-visit\";\nimport { toString } from \"hast-util-to-string\";\nimport type { Element } from \"hast\";\nimport type Mermaid from \"mermaid\";\nimport { fromHtmlIsomorphic } from \"hast-util-from-html-isomorphic\";\nimport { getCodeLanguage } from \"./utils.js\";\n\nlet mermaidPromise: Promise<typeof Mermaid> | undefined;\n\nfunction loadMermaid() {\n if (mermaidPromise) {\n return mermaidPromise;\n }\n mermaidPromise = doLoadMermaid();\n return mermaidPromise;\n}\n\nasync function doLoadMermaid() {\n const mermaid = (await import(\"mermaid\")).default;\n mermaid.initialize({\n startOnLoad: false,\n theme: \"base\",\n themeVariables: {\n fontSize: \"14px\",\n lineColor: \"#979797\",\n primaryColor: \"#DCD2F3\",\n primaryBorderColor: \"#0000001A\",\n },\n });\n return mermaid;\n}\n\nlet count = 0;\n\nconst parser = new DOMParser();\nconst serializer = new XMLSerializer();\n\n// Reference https://github.com/remcohaszing/rehype-mermaid\nexport function rehypeMermaid() {\n return async (tree: Element) => {\n const promises: Promise<void>[] = [];\n\n visit(tree, \"element\", (node, index, parent) => {\n if (\n !parent ||\n parent.type !== \"element\" ||\n parent.tagName !== \"pre\" ||\n node.tagName !== \"code\"\n ) {\n return;\n }\n\n const lang = getCodeLanguage(node);\n\n if (lang !== \"mermaid\") {\n return;\n }\n\n promises.push(\n (async () => {\n const id = `mermaid-${count++}`;\n let svg: string;\n try {\n const mermaid = await loadMermaid();\n const result = await mermaid.render(id, toString(node));\n svg = result.svg;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error rendering mermaid diagram:\", error);\n document.getElementById(id)?.remove();\n return;\n }\n const root = parser.parseFromString(svg, \"text/html\");\n const svgElement = root.querySelector(\"svg\") as SVGSVGElement;\n\n const defs = root.createElementNS(\n \"http://www.w3.org/2000/svg\",\n \"defs\"\n );\n defs.innerHTML = `<linearGradient id=\"linear-gradient-${id}\" x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n <stop offset=\"0%\" stop-color=\"#F0EBFA\" />\n <stop offset=\"75%\" stop-color=\"#DED4F4\" />\n <stop offset=\"100%\" stop-color=\"#C5C7FA\" />\n</linearGradient>`;\n svgElement.prepend(defs);\n\n const style = root.createElementNS(\n \"http://www.w3.org/2000/svg\",\n \"style\"\n );\n style.textContent = `\n#${id} .node rect,\n#${id} .node circle,\n#${id} .node ellipse,\n#${id} .node polygon,\n#${id} .node path {\n fill: url(#linear-gradient-${id});\n}\n#${id} .node rect {\n rx: 4;\n ry: 4;\n}\n#${id} .labelBkg {\n background-color: #f5f8ff;\n}\n#${id} .edgeLabel,\n#${id} .edgeLabel p {\n background-color: transparent;\n}\n#${id} .edgeLabel {\n color: #8c8c8c;\n font-size: 12px;\n}\n`;\n svgElement.appendChild(style);\n\n const modifiedSvg = serializer.serializeToString(svgElement);\n\n const replacements = fromHtmlIsomorphic(modifiedSvg, {\n fragment: true,\n }).children as Element[];\n parent.children.splice(index!, 1, ...replacements);\n parent.properties.className = (\n (parent.properties.className as string[]) || []\n ).concat(\"mermaid\");\n })()\n );\n });\n\n await Promise.all(promises);\n };\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useEffect, useMemo, useRef } from \"react\";\nimport classNames from \"classnames\";\nimport { MarkdownComponent } from \"@next-shared/markdown\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { AvatarProps, EoAvatar } from \"@next-bricks/basic/avatar\";\nimport type { Message } from \"./index\";\n\nconst WrappedAvatar = wrapBrick<EoAvatar, AvatarProps>(\"eo-avatar\");\n\nexport interface MessageComponentProps {\n message: Message;\n}\n\ntype MessageChunk =\n | MessageChunkPlain\n | MessageChunkMarkdown\n | MessageChunkCommand;\n\ninterface MessageChunkPlain {\n type: \"plain\";\n content: string;\n}\n\ninterface MessageChunkMarkdown {\n type: \"markdown\";\n content: string;\n}\n\ninterface MessageChunkCommand {\n type: \"command\";\n command: string;\n content: string;\n raw: string;\n}\n\nexport function MessageComponent({ message }: MessageComponentProps) {\n const messageChunks = useMemo(() => {\n const chunks: MessageChunk[] = [];\n\n if (message.role === \"assistant\") {\n const chunkRegExp =\n /(?:^|\\n)```(easy_cmd_\\S+)\\n([\\s\\S]*?)\\n```(?:$|\\n)/gm;\n\n let match: RegExpExecArray | null;\n let lastIndex = 0;\n while ((match = chunkRegExp.exec(message.content))) {\n const [fullMatch, command, content] = match;\n const start = match.index;\n const previousText = message.content.slice(lastIndex, start).trim();\n if (previousText.length > 0) {\n chunks.push({\n type: \"markdown\",\n content: previousText,\n });\n }\n chunks.push({\n type: \"command\",\n command,\n content: content.trim(),\n raw: fullMatch,\n });\n lastIndex = chunkRegExp.lastIndex;\n }\n const lastText = message.content.slice(lastIndex).trim();\n if (lastText.length > 0) {\n chunks.push({\n type: \"markdown\",\n content: lastText,\n });\n }\n } else {\n chunks.push({\n type: \"plain\",\n content: message.content,\n });\n }\n\n return chunks;\n }, [message.content, message.role]);\n\n const contentRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n const contentElement = contentRef.current;\n if (!contentElement) {\n return;\n }\n setTimeout(() => {\n const textingElements =\n contentElement.parentElement.querySelectorAll(\".texting\");\n for (const element of textingElements) {\n element.classList.remove(\"texting\");\n }\n if (!message.partial) {\n return;\n }\n // Find the last text element descendant of the message element,\n // and apply a texting effect to it.\n let current = contentElement as HTMLElement;\n while (current) {\n const lastChild = current.lastChild;\n if (\n lastChild?.nodeType === Node.ELEMENT_NODE &&\n ((lastChild as HTMLElement)?.tagName !== \"DETAILS\" ||\n (lastChild as HTMLDetailsElement).open)\n ) {\n current = lastChild as HTMLElement;\n } else {\n // Handle a special case: the last child is a text node without any\n // non-whitespace content. In such case, we should apply the texting\n // effect to the previous sibling element.\n if (\n lastChild?.nodeType === Node.TEXT_NODE &&\n lastChild.textContent.trim().length === 0 &&\n lastChild.previousSibling?.nodeType === Node.ELEMENT_NODE\n ) {\n current = lastChild.previousSibling as HTMLElement;\n } else {\n break;\n }\n }\n }\n current.classList.add(\"texting\");\n }, 1);\n }, [message.partial, message.content]);\n\n return (\n <div className={classNames(\"message\", { failed: message.failed })}>\n <div className=\"avatar\">\n <WrappedAvatar\n icon={{\n lib: \"easyops\",\n icon: message.role === \"assistant\" ? \"robot\" : \"account\",\n }}\n size=\"small\"\n className={`role-${message.role}`}\n />\n </div>\n <div className=\"main\">\n <div className=\"label\">\n {message.role === \"assistant\" ? \"Assistant\" : \"You\"}\n </div>\n <div className=\"content\" ref={contentRef}>\n {messageChunks.map((chunk, index) => (\n <MessageChunkComponent key={index} chunk={chunk} />\n ))}\n </div>\n </div>\n </div>\n );\n}\n\nfunction MessageChunkComponent({ chunk }: { chunk: MessageChunk }) {\n return (\n <>\n {chunk.type === \"markdown\" ? (\n <div className=\"markdown\">\n <MarkdownComponent content={chunk.content} />\n </div>\n ) : chunk.type === \"command\" ? (\n <>\n <details className=\"command\">\n <summary>```{chunk.command}</summary>\n <pre>\n <code>{chunk.content}</code>\n </pre>\n </details>\n </>\n ) : (\n <div className=\"plain\">{chunk.content}</div>\n )}\n </>\n );\n}\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\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, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.message{display:flex;gap:8px}.main{flex:1;min-width:0}.label{font-weight:bold;line-height:28px}.message:not(:last-child){margin-bottom:2em}.invisible-dots{opacity:0}.failed .content{color:var(--color-error)}.command:not(:first-child){margin-top:1em}.command:not(:last-child){margin-bottom:1em}pre{white-space:pre-wrap;background-color:var(--palette-gray-3);border-radius:6px;padding:1em}.markdown > :first-child{margin-top:0}.markdown > :last-child{margin-bottom:0}.avatar{align-self:flex-start;display:flex;align-items:center;justify-content:center}.texting::after{content:\" \";animation:texting 2s infinite;white-space:pre}@keyframes texting{0%{content:\" \"}25%{content:\". \"}50%{content:\".. \"}75%{content:\"...\"}100%{content:\" \"}}pre[class*=\"language-\"]{overflow:visible}pre[class*=\"language-\"],\ncode[class*=\"language-\"]{white-space:pre-wrap}eo-avatar.role-assistant::part(avatar-icon){background-color:var(--palette-blue-5)}.content{word-wrap:break-word}.plain{white-space:pre-wrap}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["bundledLanguages","json","javascript","js","typescript","ts","html","html-derivative","xml","css","markdown","md","mermaid","mmd","jsx","tsx","shellscript","bash","sh","shell","zsh","python","py","go","sql","bundledThemes","lightPlus","darkPlus","createHighlighter","createdBundledHighlighter","langs","themes","engine","createOnigurumaEngine","codeToHtml","codeToHast","codeToTokensBase","codeToTokens","codeToTokensWithThemes","getSingletonHighlighter","getLastGrammarState","createSingletonShorthands","guessEmbeddedLanguages","code","lang","_classPrivateGetter","s","r","a","toPropertyKey","t","i","e","Symbol","toPrimitive","call","TypeError","String","_assertClassBrand","n","has","arguments","length","_typeof","o","iterator","constructor","prototype","getCodeLanguage","node","className","properties","classListItem","slice","toLowerCase","_checkInRHS","Object","module","exports","production","Fragment","jsxs","MarkdownComponent","_ref","_shiki$theme","content","components","shiki","reactContent","setReactContent","useState","theme","useEffect","ignore","highlighter","vFile","unified","use","remarkParse","remarkGfm","remarkToRehype","rehypeMermaid","rehypeShikiFromHighlighter","lazy","defaultLanguage","rehypeReact","passNode","process","result","error","console","cssWithMappingToString","list","toString","this","map","item","needLayer","concat","join","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","defineElement","property","event","createDecorators","_ChatConversation","_A","WeakMap","_B","_C","_ChatConversation_brand","WeakSet","_handleStoryboardUpdate","ChatConversation","ReactNextElement","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_messages","_init_extra_messages","_init_errorBoundary","_init_extra_errorBoundary","_init_storyboardUpdate","_init_extra_storyboardUpdate","storyboard","_get_storyboardUpdate","emit","messages","_classPrivateFieldGet","v","_classPrivateFieldSet","errorBoundary","render","React","ChatConversationComponent","host","onStoryboardUpdate","chunkRegExp","useMemo","lastIndexMapRef","useRef","Map","chunks","setChunks","manualScrolledRef","message","_lastIndexMapRef$curr","role","match","lastIndex","current","get","key","newChunks","newPage","exec","set","type","parsed","JSON","parse","prev","setStoryboard","blocks","storyboardMap","chunk","uuid","sort","b","seq","contentLayout","brick","children","main","slot","pageTitle","hasContent","block","name","child","childBrick","iid","meta","rawBrick","hasContainer","verticalScrollParent","overflowY","getComputedStyle","getPropertyValue","parentNode","ShadowRoot","Element","document","scrollingElement","documentElement","setTimeout","scrollTo","scrollHeight","handleScroll","scrollTop","clientHeight","addEventListener","removeEventListener","index","_message$key","MessageComponent","_ChatConversation2","_set_storyboardUpdate","c","_initClass","_applyDecs","styleTexts","styleText","attribute","Boolean","_","mermaidPromise","count","parser","DOMParser","serializer","XMLSerializer","async","promises","visit","tree","parent","tagName","svg","default","initialize","startOnLoad","themeVariables","fontSize","lineColor","primaryColor","primaryBorderColor","doLoadMermaid","_document$getElementB","getElementById","remove","root","parseFromString","svgElement","querySelector","defs","createElementNS","innerHTML","prepend","style","textContent","appendChild","modifiedSvg","serializeToString","replacements","fromHtmlIsomorphic","fragment","splice","Promise","all","hasOwn","hasOwnProperty","classNames","classes","arg","appendClass","parseValue","Array","isArray","apply","includes","value","newClass","WrappedAvatar","wrapBrick","messageChunks","fullMatch","command","start","previousText","trim","raw","lastText","contentRef","contentElement","textingElements","parentElement","querySelectorAll","element","classList","partial","lastChild","nodeType","Node","ELEMENT_NODE","open","_lastChild$previousSi","TEXT_NODE","previousSibling","add","failed","icon","lib","size","ref","MessageChunkComponent","_ref2","setFunctionName","description","defineProperty","configurable","applyDecs2311","u","f","l","p","d","metadata","m","h","create","y","g","applyDec","w","D","S","j","E","I","P","F","getOwnPropertyDescriptor","Error","N","O","z","A","H","K","kind","addInitializer","bind","access","init","unshift","enumerable","checkInRHS","_classPrivateFieldGet2","obj","privateMap","_checkPrivateRedeclaration","privateCollection","privateSet","_classPrivateFieldSet2","___CSS_LOADER_EXPORT___"],"sourceRoot":""}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! For license information please see chat-preview.26ea1314.js.LICENSE.txt */
|
|
2
|
-
(globalThis.webpackChunk_next_bricks_visual_builder=globalThis.webpackChunk_next_bricks_visual_builder||[]).push([[5402],{5536:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(12559);function i(e,t,n){return n((0,r.A)(e,t))}},11369:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(17545);function i(e){var t=function(e){if("object"!=(0,r.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,r.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},12559:(e,t,n)=>{"use strict";function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},17545:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},20044:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ChatPreview:()=>D,ChatPreviewComponent:()=>Y});var r,i=n(89575),o=n(74635),a=n(70918),s=n(26902),c=n(5536),u=n(86121),l=n(70829),p=n(62740),d=n(18769),h=n.n(d),f=n(90870),v=n(30981),g=(n(34419),n(51921)),b=n(55310),y=n(53373),m=n.n(y),w=n(99047),A=n(81563);let k,x,E,S,_,j,T,O,P,C,M,W,z,V,B,N;const{defineElement:R,property:I,event:L,method:$}=(0,f.createDecorators)();let D;var q=new WeakMap,H=new WeakMap,J=new WeakMap,U=new WeakMap,F=new WeakMap,G=new WeakMap,K=new WeakSet,Q=new WeakMap;class X extends v.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,K),(0,a.A)(this,q,(k(this),E(this))),(0,a.A)(this,H,(S(this),_(this))),(0,a.A)(this,J,(j(this),T(this))),(0,a.A)(this,U,(O(this),P(this))),(0,a.A)(this,F,(C(this),M(this))),(0,a.A)(this,G,(W(this),z(this))),(0,a.A)(this,Q,(N(this),e=>{(0,c.A)(K,this,V).emit(e)}))}get storyboard(){return(0,l.A)(q,this)}set storyboard(e){(0,u.A)(q,this,e)}get theme(){return(0,l.A)(H,this)}set theme(e){(0,u.A)(H,this,e)}get uiVersion(){return(0,l.A)(J,this)}set uiVersion(e){(0,u.A)(J,this,e)}get app(){return(0,l.A)(U,this)}set app(e){(0,u.A)(U,this,e)}get inspecting(){return(0,l.A)(F,this)}set inspecting(e){(0,u.A)(F,this,e)}select(e){var t;const n=null===(t=this.shadowRoot)||void 0===t||null===(t=t.querySelector("iframe"))||void 0===t?void 0:t.contentWindow;null==n||n.postMessage({channel:"chat-preview",type:"select",payload:e},location.origin)}render(){return h().createElement(Y,{storyboard:this.storyboard,theme:this.theme,uiVersion:this.uiVersion,app:this.app,inspecting:this.inspecting,onActiveTargetChange:(0,l.A)(Q,this)})}}function Y(e){let{storyboard:t,theme:n,uiVersion:r,app:o,inspecting:a,onActiveTargetChange:s}=e;const c=(0,d.useRef)(),[u,l]=(0,d.useState)(!1),[p,f]=(0,d.useState)(!1),[v,y]=(0,d.useState)({x:0,y:0}),[A,k]=(0,d.useState)([]),[x,E]=(0,d.useState)([]),[S,_]=(0,d.useState)([]),[j,T]=(0,d.useState)([]),O=(0,d.useCallback)((()=>{const e=()=>{var t;const n=null===(t=c.current)||void 0===t?void 0:t.contentWindow;null!=n&&n._preview_only_render?l(!0):setTimeout(e,100)};e()}),[]);(0,d.useEffect)((()=>{var e,t;if(!u)return;const n=g.__secret_internals.getBrickPackagesById("bricks/visual-builder");if(!n)throw new Error("Cannot find preview agent package: bricks/visual-builder");(null===(e=c.current)||void 0===e||null===(e=e.contentWindow)||void 0===e?void 0:e._preview_only_inject)("visual-builder.inject-chat-preview-agent",{...n,filePath:`${location.origin}${(0,g.getBasePath)()}${null!==(t=window.PUBLIC_ROOT)&&void 0!==t?t:""}${n.filePath}`})}),[u]),(0,d.useEffect)((()=>{var e;if(!u)return;const i=null===(e=c.current)||void 0===e||null===(e=e.contentWindow)||void 0===e?void 0:e._preview_only_render;i&&i("yaml",{yaml:(0,b.safeDump)(t,{schema:b.JSON_SCHEMA,skipInvalid:!0,noRefs:!0,noCompatMode:!0})},{app:o,theme:n,uiVersion:r})}),[o,u,t,n,r]);const P=(0,d.useMemo)((()=>{if(p)return()=>{setTimeout((()=>{window.postMessage({channel:"chat-preview",type:"inspect-hover",payload:{outlines:[]}})}),100)}}),[p]);(0,d.useEffect)((()=>{const e=e=>{var t;if("chat-preview"===(null===(t=e.data)||void 0===t?void 0:t.channel))switch(e.data.type){case"initialized":f(!0);break;case"inspect-hover":k(e.data.payload.outlines);break;case"scroll":y(e.data.payload);break;case"inspect-active":E(e.data.payload.outlines)}};return window.addEventListener("message",e),()=>{window.removeEventListener("message",e)}}),[]),(0,d.useEffect)((()=>{var e;p&&(null===(e=c.current)||void 0===e||null===(e=e.contentWindow)||void 0===e||e.postMessage({channel:"chat-preview",type:"toggle-inspecting",payload:{inspecting:a}},location.origin))}),[p,a]);const C=(0,d.useCallback)((e=>e.map((e=>{var t,n,r,i;const o=null!==(t=null==c||null===(n=c.current)||void 0===n?void 0:n.offsetLeft)&&void 0!==t?t:0,a=null!==(r=null==c||null===(i=c.current)||void 0===i?void 0:i.offsetTop)&&void 0!==r?r:0,{width:s,height:u,left:l,top:p,...d}=e;return{width:1*s,height:1*u,left:1*(l-v.x)+o,top:1*(p-v.y)+a,...d}}))),[v.x,v.y]);return(0,d.useEffect)((()=>{s(x[0])}),[x,s]),(0,d.useEffect)((()=>{T(C(x))}),[x,C]),(0,d.useEffect)((()=>{_(C(A))}),[A,C]),h().createElement("div",{className:m()("container",{inspecting:a})},h().createElement("iframe",{ref:c,src:`${(0,g.getBasePath)()}_brick-preview-v3_/preview/`,loading:"lazy",onLoad:O,onMouseOut:P}),S.map(((e,t)=>h().createElement(w.e,(0,i.A)({key:t,variant:"hover"},e)))),j.map(((e,t)=>h().createElement(w.e,(0,i.A)({key:t,variant:"active"},e)))))}r=X,({e:[E,S,_,j,T,O,P,C,M,W,z,V,B,N,k],c:[D,x]}=(0,p.A)(r,[R("visual-builder.chat-preview",{styleTexts:[A.A]})],[[I({attribute:!1}),1,"storyboard"],[I(),1,"theme"],[I(),1,"uiVersion"],[I(),1,"app"],[I({type:Boolean}),1,"inspecting"],[L({type:"activeTarget.change"}),1,"activeTargetChangeEvent",e=>(0,l.A)(G,e),(e,t)=>(0,u.A)(G,e,t)],[$(),2,"select"]],0,(e=>Q.has((0,s.A)(e))),v.ReactNextElement)),x()},26902:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(17545);function i(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,r.A)(e):"null"));return e}},36758:e=>{"use strict";e.exports=function(e){return e[1]}},40935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,i,o){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var c=this[s][0];null!=c&&(a[c]=!0)}for(var u=0;u<e.length;u++){var l=[].concat(e[u]);r&&a[l[0]]||(void 0!==o&&(void 0===l[5]||(l[1]="@layer".concat(l[5].length>0?" ".concat(l[5]):""," {").concat(l[1],"}")),l[5]=o),n&&(l[2]?(l[1]="@media ".concat(l[2]," {").concat(l[1],"}"),l[2]=n):l[2]=n),i&&(l[4]?(l[1]="@supports (".concat(l[4],") {").concat(l[1],"}"),l[4]=i):l[4]="".concat(i)),t.push(l))}},t}},53373:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,o(n)))}return e}function o(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return i.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(i.default=i,e.exports=i):void 0===(n=function(){return i}.apply(t,[]))||(e.exports=n)}()},62740:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(17545),i=n(26902);function o(e,t,n){"symbol"==(0,r.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var a=n(11369);function s(e,t,n,s,c,u){var l,p,d,h,f,v,g,b=Symbol.metadata||Symbol.for("Symbol.metadata"),y=Object.defineProperty,m=Object.create,w=[m(null),m(null)],A=t.length;function k(t,n,r){return function(i,o){n&&(o=i,i=e);for(var a=0;a<t.length;a++)o=t[a].apply(i,r?[o]:[]);return r?o:i}}function x(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function E(e,t,n,i,a,s,c,u,d,h,f){function v(e){if(!f(e))throw new TypeError("Attempted to access private element on non-instance")}var g=[].concat(t[0]),b=t[3],m=!c,A=1===a,E=3===a,S=4===a,_=2===a;function j(t,n,r){return function(i,o){return n&&(o=i,i=e),r&&r(i),T[t].call(i,o)}}if(!m){var T={},O=[],P=E?"get":S||A?"set":"value";if(d?(h||A?T={get:o((function(){return b(this)}),i,"get"),set:function(e){t[4](this,e)}}:T[P]=b,h||o(T[P],i,_?"":P)):h||(T=Object.getOwnPropertyDescriptor(e,i)),!h&&!d){if((p=w[+u][i])&&7!=(p^a))throw Error("Decorating two elements with the same name ("+T[P].name+") is not supported yet");w[+u][i]=a<3?1:a}}for(var C=e,M=g.length-1;M>=0;M-=n?2:1){var W=x(g[M],"A decorator","be",!0),z=n?g[M-1]:void 0,V={},B={kind:["field","accessor","method","getter","setter","class"][a],name:i,metadata:l,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");x(t,"An initializer","be",!0),s.push(t)}.bind(null,V)};if(m)p=W.call(z,C,B),V.v=1,x(p,"class decorators","return")&&(C=p);else if(B.static=u,B.private=d,p=B.access={has:d?f.bind():function(e){return i in e}},S||(p.get=d?_?function(e){return v(e),T.value}:j("get",0,v):function(e){return e[i]}),_||E||(p.set=d?j("set",0,v):function(e,t){e[i]=t}),C=W.call(z,A?{get:T.get,set:T.set}:T[P],B),V.v=1,A){if("object"==(0,r.A)(C)&&C)(p=x(C.get,"accessor.get"))&&(T.get=p),(p=x(C.set,"accessor.set"))&&(T.set=p),(p=x(C.init,"accessor.init"))&&O.unshift(p);else if(void 0!==C)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else x(C,(h?"field":"method")+" decorators","return")&&(h?O.unshift(C):T[P]=C)}return a<2&&c.push(k(O,u,1),k(s,u,0)),h||m||(d?A?c.splice(-1,0,j("get",u),j("set",u)):c.push(_?T[P]:x.call.bind(T[P])):y(e,i,T)),C}function S(e){return y(e,b,{configurable:!0,enumerable:!0,value:l})}return void 0!==u&&(l=u[b]),l=m(null==l?null:l),f=[],v=function(e){e&&f.push(k(e))},g=function(t,r){for(var o=0;o<n.length;o++){var s=n[o],u=s[1],l=7&u;if((8&u)==t&&!l==r){var p=s[2],v=!!s[3],g=16&u;E(t?e:e.prototype,s,g,v?"#"+p:(0,a.A)(p),l,l<2?[]:t?h=h||[]:d=d||[],f,!!t,v,r,t&&v?function(t){return(0,i.A)(t)===e}:c)}}},g(8,0),g(0,0),g(8,1),g(0,1),v(d),v(h),p=f,A||S(e),{e:p,get c(){var n=[];return A&&[S(e=E(e,[t],s,e.name,5,n)),k(n,1)]}}}},70829:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(12559);function i(e,t){return e.get((0,r.A)(e,t))}},70918:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(72016);function i(e,t,n){(0,r.A)(e,t),t.set(e,n)}},72016:(e,t,n)=>{"use strict";function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},74635:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(72016);function i(e,t){(0,r.A)(e,t),t.add(e)}},81563:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var r=n(36758),i=n.n(r),o=n(40935),a=n.n(o)()(i());a.push([e.id,":host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.container,\niframe{width:100%;height:100%;border-radius:4px}.container{position:relative;box-shadow:rgba(204,204,204,0.2) 0px 0px 0px 1px}iframe{display:block;border:none;margin:0;padding:0;transform-origin:0% 0%;-webkit-user-select:none;user-select:none}.outline{position:absolute;border-style:solid;border-width:2px;border-radius:0 4px 4px;pointer-events:none}.label{position:absolute;left:-2px;top:-20px;height:18px;line-height:16px;padding:2px 5px 0;font-size:12px;border-radius:4px 4px 0 0;white-space:nowrap}.outline.hover{border-color:rgba(var(--palette-blue-6-channel),0.3)}.outline.hover .label{background:rgba(var(--palette-blue-6-channel),0.3)}.outline.active{border-color:var(--palette-blue-6)}.outline.active .label{background:var(--palette-blue-6)}.container:not(.inspecting) .outline{display:none}",""]);const s=a.toString()},86121:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(12559);function i(e,t,n){return e.set((0,r.A)(e,t),n),n}},89575:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{A:()=>r})},99047:(e,t,n)=>{"use strict";n.d(t,{e:()=>o});var r=n(18769),i=n.n(r);function o(e){let{variant:t,width:n,height:r,left:o,top:a,label:s}=e;return i().createElement("div",{className:"outline "+t,style:{width:n+8,height:r+8,left:o-4,top:a-4}},i().createElement("div",{className:"label"},s))}}}]);
|
|
3
|
-
//# sourceMappingURL=chat-preview.26ea1314.js.map
|