bi-sdk-react 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/css/bi-sdk.css +1 -0
- package/dist/es/js/bi-sdk.es.js +795 -0
- package/dist/es/js/bi-sdk.es.js.LICENSE.txt +9 -0
- package/dist/types/components/PageDesigner.d.ts +10 -0
- package/dist/types/components/context/DesignerContext.d.ts +15 -0
- package/dist/types/components/context/EnvContext.d.ts +15 -0
- package/dist/types/components/dnd/DropContainer.d.ts +21 -0
- package/dist/types/components/example.d.ts +225 -0
- package/dist/types/components/hooks/datasource.d.ts +1 -0
- package/dist/types/components/hooks/useDeepCompareEffect.d.ts +1 -0
- package/dist/types/components/icon/IconFont.d.ts +6 -0
- package/dist/types/components/index.d.ts +10 -0
- package/dist/types/components/layout/PageCanvas.d.ts +6 -0
- package/dist/types/components/layout/PageItem.d.ts +27 -0
- package/dist/types/components/panel/AiPanel.d.ts +8 -0
- package/dist/types/components/panel/CascadePanel.d.ts +2 -0
- package/dist/types/components/panel/ChatInput.d.ts +28 -0
- package/dist/types/components/panel/CodePanel.d.ts +2 -0
- package/dist/types/components/panel/ComponentPanel.d.ts +2 -0
- package/dist/types/components/panel/DatasourcePanel.d.ts +2 -0
- package/dist/types/components/panel/LayerPanel.d.ts +2 -0
- package/dist/types/components/panel/PaneHeader.d.ts +6 -0
- package/dist/types/components/panel/PropertiesPanel.d.ts +2 -0
- package/dist/types/components/panel/ScriptPanel.d.ts +2 -0
- package/dist/types/components/panel/VariablesPanel.d.ts +2 -0
- package/dist/types/components/panel/index.d.ts +9 -0
- package/dist/types/components/plugins/@antd/index.d.ts +22 -0
- package/dist/types/components/plugins/@antd/item-props/ButtonProps.d.ts +8 -0
- package/dist/types/components/plugins/@antd/item-props/CapsuleProps.d.ts +13 -0
- package/dist/types/components/plugins/@antd/item-props/CardProps.d.ts +8 -0
- package/dist/types/components/plugins/@antd/item-props/CheckboxProps.d.ts +13 -0
- package/dist/types/components/plugins/@antd/item-props/ColProps.d.ts +12 -0
- package/dist/types/components/plugins/@antd/item-props/DatePickerProps.d.ts +8 -0
- package/dist/types/components/plugins/@antd/item-props/EchartsProps.d.ts +6 -0
- package/dist/types/components/plugins/@antd/item-props/HtmlProps.d.ts +6 -0
- package/dist/types/components/plugins/@antd/item-props/ImageProps.d.ts +10 -0
- package/dist/types/components/plugins/@antd/item-props/InputNumberProps.d.ts +9 -0
- package/dist/types/components/plugins/@antd/item-props/InputProps.d.ts +10 -0
- package/dist/types/components/plugins/@antd/item-props/ListProps.d.ts +10 -0
- package/dist/types/components/plugins/@antd/item-props/PageHeaderProps.d.ts +7 -0
- package/dist/types/components/plugins/@antd/item-props/RowProps.d.ts +6 -0
- package/dist/types/components/plugins/@antd/item-props/SelectProps.d.ts +16 -0
- package/dist/types/components/plugins/@antd/item-props/SpaceProps.d.ts +7 -0
- package/dist/types/components/plugins/@antd/item-props/SwitchProps.d.ts +6 -0
- package/dist/types/components/plugins/@antd/item-props/TableProps.d.ts +15 -0
- package/dist/types/components/plugins/@antd/item-props/TextProps.d.ts +6 -0
- package/dist/types/components/plugins/@antd/item-props/index.d.ts +19 -0
- package/dist/types/components/plugins/@antd/item-props/types.d.ts +5 -0
- package/dist/types/components/plugins/@antd/items/ButtonRender.d.ts +14 -0
- package/dist/types/components/plugins/@antd/items/CapsuleRender.d.ts +14 -0
- package/dist/types/components/plugins/@antd/items/CardRender.d.ts +12 -0
- package/dist/types/components/plugins/@antd/items/CheckboxRender.d.ts +14 -0
- package/dist/types/components/plugins/@antd/items/ColRender.d.ts +13 -0
- package/dist/types/components/plugins/@antd/items/DatePickerRender.d.ts +14 -0
- package/dist/types/components/plugins/@antd/items/EchartsRender.d.ts +10 -0
- package/dist/types/components/plugins/@antd/items/HtmlRender.d.ts +20 -0
- package/dist/types/components/plugins/@antd/items/ImageRender.d.ts +10 -0
- package/dist/types/components/plugins/@antd/items/InputNumberRender.d.ts +17 -0
- package/dist/types/components/plugins/@antd/items/InputRender.d.ts +17 -0
- package/dist/types/components/plugins/@antd/items/ListRender.d.ts +11 -0
- package/dist/types/components/plugins/@antd/items/PageHeaderRender.d.ts +8 -0
- package/dist/types/components/plugins/@antd/items/RowRender.d.ts +13 -0
- package/dist/types/components/plugins/@antd/items/SelectRender.d.ts +18 -0
- package/dist/types/components/plugins/@antd/items/SpaceRender.d.ts +10 -0
- package/dist/types/components/plugins/@antd/items/SwitchRender.d.ts +14 -0
- package/dist/types/components/plugins/@antd/items/TableRender.d.ts +12 -0
- package/dist/types/components/plugins/@antd/items/TextRender.d.ts +9 -0
- package/dist/types/components/plugins/@antd/items/index.d.ts +19 -0
- package/dist/types/components/typing.d.ts +80 -0
- package/dist/types/components/utils.d.ts +9 -0
- package/dist/types/example.d.ts +2 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/umd/css/bi-sdk.css +1 -0
- package/dist/umd/js/bi-sdk.umd.min.js +795 -0
- package/dist/umd/js/bi-sdk.umd.min.js.LICENSE.txt +9 -0
- package/package.json +52 -0
- package/src/components/PageDesigner.tsx +509 -0
- package/src/components/context/DesignerContext.tsx +71 -0
- package/src/components/context/EnvContext.tsx +42 -0
- package/src/components/dnd/DropContainer.tsx +474 -0
- package/src/components/example.ts +577 -0
- package/src/components/hooks/datasource.ts +23 -0
- package/src/components/hooks/useDeepCompareEffect.ts +12 -0
- package/src/components/icon/IconFont.tsx +16 -0
- package/src/components/index.ts +29 -0
- package/src/components/layout/PageCanvas.tsx +145 -0
- package/src/components/layout/PageItem.tsx +182 -0
- package/src/components/panel/AiPanel.tsx +116 -0
- package/src/components/panel/CascadePanel.tsx +163 -0
- package/src/components/panel/ChatInput.tsx +550 -0
- package/src/components/panel/CodePanel.tsx +48 -0
- package/src/components/panel/ComponentPanel.tsx +119 -0
- package/src/components/panel/DatasourcePanel.tsx +419 -0
- package/src/components/panel/LayerPanel.tsx +238 -0
- package/src/components/panel/PaneHeader.tsx +34 -0
- package/src/components/panel/PropertiesPanel.tsx +394 -0
- package/src/components/panel/ScriptPanel.tsx +175 -0
- package/src/components/panel/VariablesPanel.tsx +153 -0
- package/src/components/panel/index.ts +9 -0
- package/src/components/plugins/@antd/index.ts +445 -0
- package/src/components/plugins/@antd/item-props/ButtonProps.tsx +91 -0
- package/src/components/plugins/@antd/item-props/CapsuleProps.tsx +102 -0
- package/src/components/plugins/@antd/item-props/CardProps.tsx +58 -0
- package/src/components/plugins/@antd/item-props/CheckboxProps.tsx +75 -0
- package/src/components/plugins/@antd/item-props/ColProps.tsx +43 -0
- package/src/components/plugins/@antd/item-props/DatePickerProps.tsx +72 -0
- package/src/components/plugins/@antd/item-props/EchartsProps.tsx +35 -0
- package/src/components/plugins/@antd/item-props/HtmlProps.tsx +61 -0
- package/src/components/plugins/@antd/item-props/ImageProps.tsx +43 -0
- package/src/components/plugins/@antd/item-props/InputNumberProps.tsx +18 -0
- package/src/components/plugins/@antd/item-props/InputProps.tsx +89 -0
- package/src/components/plugins/@antd/item-props/ListProps.tsx +69 -0
- package/src/components/plugins/@antd/item-props/PageHeaderProps.tsx +20 -0
- package/src/components/plugins/@antd/item-props/RowProps.tsx +21 -0
- package/src/components/plugins/@antd/item-props/SelectProps.tsx +136 -0
- package/src/components/plugins/@antd/item-props/SpaceProps.tsx +52 -0
- package/src/components/plugins/@antd/item-props/SwitchProps.tsx +17 -0
- package/src/components/plugins/@antd/item-props/TableProps.tsx +200 -0
- package/src/components/plugins/@antd/item-props/TextProps.tsx +41 -0
- package/src/components/plugins/@antd/item-props/index.ts +20 -0
- package/src/components/plugins/@antd/item-props/types.ts +6 -0
- package/src/components/plugins/@antd/items/ButtonRender.tsx +63 -0
- package/src/components/plugins/@antd/items/CapsuleRender.tsx +49 -0
- package/src/components/plugins/@antd/items/CardRender.tsx +119 -0
- package/src/components/plugins/@antd/items/CheckboxRender.tsx +56 -0
- package/src/components/plugins/@antd/items/ColRender.tsx +78 -0
- package/src/components/plugins/@antd/items/DatePickerRender.tsx +117 -0
- package/src/components/plugins/@antd/items/EchartsRender.tsx +98 -0
- package/src/components/plugins/@antd/items/HtmlRender.tsx +74 -0
- package/src/components/plugins/@antd/items/ImageRender.tsx +37 -0
- package/src/components/plugins/@antd/items/InputNumberRender.tsx +57 -0
- package/src/components/plugins/@antd/items/InputRender.tsx +75 -0
- package/src/components/plugins/@antd/items/ListRender.tsx +227 -0
- package/src/components/plugins/@antd/items/PageHeaderRender.tsx +74 -0
- package/src/components/plugins/@antd/items/RowRender.tsx +47 -0
- package/src/components/plugins/@antd/items/SelectRender.tsx +53 -0
- package/src/components/plugins/@antd/items/SpaceRender.tsx +54 -0
- package/src/components/plugins/@antd/items/SwitchRender.tsx +52 -0
- package/src/components/plugins/@antd/items/TableRender.tsx +99 -0
- package/src/components/plugins/@antd/items/TextRender.tsx +25 -0
- package/src/components/plugins/@antd/items/index.ts +20 -0
- package/src/components/styles.css +12 -0
- package/src/components/typing.ts +80 -0
- package/src/components/utils.ts +37 -0
- package/src/example.tsx +136 -0
- package/src/index.tsx +17 -0
|
@@ -0,0 +1,795 @@
|
|
|
1
|
+
/*! For license information please see bi-sdk.es.js.LICENSE.txt */
|
|
2
|
+
import*as e from"react";import t,{css as l}from"styled-components";import{AlignCenterOutlined as n,AlignLeftOutlined as r,AlignRightOutlined as a,CaretDownOutlined as i,CopyOutlined as o,DeleteOutlined as s,DesktopOutlined as d,EditOutlined as c,EyeInvisibleOutlined as u,EyeOutlined as p,HistoryOutlined as x,InboxOutlined as h,InfoCircleOutlined as m,MessageOutlined as f,MinusSquareOutlined as g,MobileOutlined as v,PaperClipOutlined as j,PlusOutlined as y,PlusSquareOutlined as b,RedoOutlined as C,SaveOutlined as w,SendOutlined as S,TabletOutlined as z,UndoOutlined as k,UploadOutlined as I,ZoomInOutlined as O,ZoomOutOutlined as N,createFromIconfontCN as D}from"@ant-design/icons";import{Avatar as E,Button as T,Card as A,Checkbox as B,Col as L,DatePicker as P,Divider as R,Dropdown as _,Form as M,Input as $,InputNumber as F,Modal as G,Pagination as H,Popconfirm as Y,Radio as K,Row as W,Select as U,Space as q,Switch as J,Table as X,TimePicker as V,Tooltip as Q,Tree as Z,Upload as ee,message as et}from"antd";import{read as el,utils as en}from"xlsx";import er from"@monaco-editor/react";import{v4 as ea}from"uuid";import ei from"dayjs";import*as eo from"echarts";var es={290(e,t,l){var n=this&&this.__assign||function(){return(n=Object.assign||function(e){for(var t,l=1,n=arguments.length;l<n;l++)for(var r in t=arguments[l])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.bindAll=void 0;var r=l(352);function a(e){if(void 0!==e)return"boolean"==typeof e?{capture:e}:e}t.bindAll=function(e,t,l){var i=t.map(function(t){var i=null==l?t:n(n({},t),{options:n(n({},a(l)),a(t.options))});return(0,r.bind)(e,i)});return function(){i.forEach(function(e){return e()})}}},352(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.bind=void 0,t.bind=function(e,t){var l=t.type,n=t.listener,r=t.options;return e.addEventListener(l,n,r),function(){e.removeEventListener(l,n,r)}}},951(e,t,l){t.bindAll=t.bind=void 0;var n=l(352);Object.defineProperty(t,"bind",{enumerable:!0,get:function(){return n.bind}});var r=l(290);Object.defineProperty(t,"bindAll",{enumerable:!0,get:function(){return r.bindAll}})},965(e,t,l){var n=l(426),r={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var l,a,i,o,s,d,c,u,p=!1;t||(t={}),i=t.debug||!1;try{if(s=n(),d=document.createRange(),c=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",function(l){if(l.stopPropagation(),t.format)if(l.preventDefault(),void 0===l.clipboardData){i&&console.warn("unable to use e.clipboardData"),i&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var n=r[t.format]||r.default;window.clipboardData.setData(n,e)}else l.clipboardData.clearData(),l.clipboardData.setData(t.format,e);t.onCopy&&(l.preventDefault(),t.onCopy(l.clipboardData))}),document.body.appendChild(u),d.selectNodeContents(u),c.addRange(d),!document.execCommand("copy"))throw Error("copy command was unsuccessful");p=!0}catch(n){i&&console.error("unable to copy using execCommand: ",n),i&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),p=!0}catch(n){i&&console.error("unable to copy using clipboardData: ",n),i&&console.error("falling back to prompt"),l="message"in t?t.message:"Copy to clipboard: #{key}, Enter",a=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C",o=l.replace(/#{\s*key\s*}/g,a),window.prompt(o,e)}}finally{c&&("function"==typeof c.removeRange?c.removeRange(d):c.removeAllRanges()),u&&document.body.removeChild(u),s()}return p}},20(e,t,l){var n=l(649),r=Symbol.for("react.element"),a=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,o=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function d(e,t,l){var n,a={},d=null,c=null;for(n in void 0!==l&&(d=""+l),void 0!==t.key&&(d=""+t.key),void 0!==t.ref&&(c=t.ref),t)i.call(t,n)&&!s.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===a[n]&&(a[n]=t[n]);return{$$typeof:r,type:e,key:d,ref:c,props:a,_owner:o.current}}t.Fragment=a,t.jsx=d,t.jsxs=d},848(e,t,l){e.exports=l(20)},426(e){e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,l=[],n=0;n<e.rangeCount;n++)l.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||l.forEach(function(t){e.addRange(t)}),t&&t.focus()}}},649(t){t.exports=e}},ed={};function ec(e){var t=ed[e];if(void 0!==t)return t.exports;var l=ed[e]={exports:{}};return es[e].call(l.exports,l,l.exports,ec),l.exports}ec.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return ec.d(t,{a:t}),t},ec.d=(e,t)=>{for(var l in t)ec.o(t,l)&&!ec.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:t[l]})},ec.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),ec.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var eu={};(()=>{ec.d(eu,{Wg:()=>tN,R3:()=>to,Nx:()=>t6,Ei:()=>tu,QE:()=>em.PluginType,Ho:()=>te,V2:()=>em.PageSchema,B7:()=>tW,NG:()=>ef.PropEditorProps,ru:()=>ti});var e,es,ed,ep,ex,eh,em={};ec.r(em);var ef={};ec.r(ef);var eg=ec(848),ev=ec(649);function ej(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function ey(e,t){if(e){if("string"==typeof e)return ej(e,t);var l=({}).toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?ej(e,t):void 0}}function eb(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var l=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var n,r,a,i,o=[],s=!0,d=!1;try{if(a=(l=l.call(e)).next,0===t){if(Object(l)!==l)return;s=!1}else for(;!(s=(n=a.call(l)).done)&&(o.push(n.value),o.length!==t);s=!0);}catch(e){d=!0,r=e}finally{try{if(!s&&null!=l.return&&(i=l.return(),Object(i)!==i))return}finally{if(d)throw r}}return o}}(e,t)||ey(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var eC=ec(951),ew="data-pdnd-honey-pot";function eS(e){return e instanceof Element&&e.hasAttribute(ew)}function ez(e){var t=eb(document.elementsFromPoint(e.x,e.y),2),l=t[0],n=t[1];return l?eS(l)?null!=n?n:null:l:null}function ek(e){return(ek="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})(e)}function eI(e,t,l){var n;return(n=function(e,t){if("object"!=ek(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=ek(n))return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"),(t="symbol"==ek(n)?n:n+"")in e)?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function eO(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function eN(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?eO(Object(l),!0).forEach(function(t){eI(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):eO(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function eD(e){var t,l,n,r,a={x:Math.min((r={x:Math.max((n={x:(l={x:Math.floor((t=e.client).x),y:Math.floor(t.y)}).x-1,y:l.y-1}).x,0),y:Math.max(n.y,0)}).x,window.innerWidth-2),y:Math.min(r.y,window.innerHeight-2)};return DOMRect.fromRect({x:a.x,y:a.y,width:2,height:2})}function eE(e){var t=e.clientRect;return{left:"".concat(t.left,"px"),top:"".concat(t.top,"px"),width:"".concat(t.width,"px"),height:"".concat(t.height,"px")}}function eT(e){return function(e){if(Array.isArray(e))return ej(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ey(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function eA(e){var t=null;return function(){if(!t){for(var l=arguments.length,n=Array(l),r=0;r<l;r++)n[r]=arguments[r];t={result:e.apply(this,n)}}return t.result}}var eB=eA(function(){return navigator.userAgent.includes("Firefox")}),eL=eA(function(){var e=navigator.userAgent;return e.includes("AppleWebKit")&&!e.includes("Chrome")}),eP={isLeavingWindow:Symbol("leaving"),isEnteringWindow:Symbol("entering")};if("undefined"!=typeof window&&eL()){var eR=e_();(0,eC.bindAll)(window,[{type:"dragstart",listener:function(){eR.enterCount=0,eR.isOverWindow=!0}},{type:"drop",listener:eM},{type:"dragend",listener:eM},{type:"dragenter",listener:function(e){eR.isOverWindow||0!==eR.enterCount||(e[eP.isEnteringWindow]=!0),eR.isOverWindow=!0,eR.enterCount++}},{type:"dragleave",listener:function(e){eR.enterCount--,eR.isOverWindow&&0===eR.enterCount&&(e[eP.isLeavingWindow]=!0,eR.isOverWindow=!1)}}],{capture:!0})}function e_(){return{enterCount:0,isOverWindow:!1}}function eM(){eR=e_()}function e$(e){return{altKey:e.altKey,button:e.button,buttons:e.buttons,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY}}var eF=(e=function(e){return e()},es=[],ed=null,(ep=function(){for(var t=arguments.length,l=Array(t),n=0;n<t;n++)l[n]=arguments[n];es=l,ed||(ed=requestAnimationFrame(function(){ed=null,e.apply(void 0,es)}))}).cancel=function(){ed&&(cancelAnimationFrame(ed),ed=null)},ep),eG=(ex=null,{schedule:function(e){ex={frameId:requestAnimationFrame(function(){ex=null,e()}),fn:e}},flush:function(){ex&&(cancelAnimationFrame(ex.frameId),ex.fn(),ex=null)}}),eH={isActive:!1};function eY(){return!eH.isActive}function eK(e){var t,l=e.event,n=null==(t=e.current[0])?void 0:t.dropEffect;null!=n&&l.dataTransfer&&(l.dataTransfer.dropEffect=n)}var eW=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=e.dispatchEvent;if(eY()){var a,i,o=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=e$(t);if("external"===l.startedFrom)return{input:r,dropTargets:[]};var a=n({input:r,source:l.payload,target:t.target,current:[]});return{input:r,dropTargets:a}}({event:t,dragType:l,getDropTargetsOver:n});eH.isActive=!0;var s={current:o};eK({event:t,current:o.dropTargets});var d=function(e){var t=e.source,l=e.initial,n=e.dispatchEvent,r={dropTargets:[]};function a(e){n(e),r={dropTargets:e.payload.location.current.dropTargets}}return{start:function(e){var n=e.nativeSetDragImage,i={current:l,previous:r,initial:l};a({eventName:"onGenerateDragPreview",payload:{source:t,location:i,nativeSetDragImage:n}}),eG.schedule(function(){a({eventName:"onDragStart",payload:{source:t,location:i}})})},dragUpdate:function(e){var n=e.current;eG.flush(),eF.cancel(),a({eventName:"onDropTargetChange",payload:{source:t,location:{initial:l,previous:r,current:n}}})},drag:function(e){var n=e.current;eF(function(){eG.flush(),a({eventName:"onDrag",payload:{source:t,location:{initial:l,previous:r,current:n}}})})},drop:function(e){var n=e.current,i=e.updatedSourcePayload;eG.flush(),eF.cancel(),a({eventName:"onDrop",payload:{source:null!=i?i:t,location:{current:n,previous:r,initial:l}}})}}}({source:l.payload,dispatchEvent:r,initial:o}),c=(0,eC.bindAll)(window,[{type:"dragover",listener:function(e){p(e),d.drag({current:s.current})}},{type:"dragenter",listener:p},{type:"dragleave",listener:function(e){(function(e){var t=e.dragLeave,l=t.type,n=t.relatedTarget;return"dragleave"===l&&(eL()?!!eL()&&t.hasOwnProperty(eP.isLeavingWindow):null==n||(eB()?"nodeName"in n&&n.ownerDocument!==document:n instanceof HTMLIFrameElement))})({dragLeave:e})&&(u({input:s.current.input,dropTargets:[]}),"external"===l.startedFrom&&x())}},{type:"drop",listener:function(e){(s.current={dropTargets:s.current.dropTargets,input:e$(e)},s.current.dropTargets.length)?(e.preventDefault(),eK({event:e,current:s.current.dropTargets}),d.drop({current:s.current,updatedSourcePayload:"external"===l.type?l.getDropPayload(e):null}),h()):x()}},{type:"dragend",listener:function(e){s.current={dropTargets:s.current.dropTargets,input:e$(e)},x()}}].concat(eT([{type:"pointermove",listener:(i=0,function(){i<20?i++:a()})},{type:"pointerdown",listener:a=x}])),{capture:!0});d.start({nativeSetDragImage:t.dataTransfer?t.dataTransfer.setDragImage.bind(t.dataTransfer):null})}function u(e){var t=function(e){var t=e.current,l=e.next;if(t.length!==l.length)return!0;for(var n=0;n<t.length;n++)if(t[n].element!==l[n].element)return!0;return!1}({current:s.current.dropTargets,next:e.dropTargets});s.current=e,t&&d.dragUpdate({current:s.current})}function p(e){var t=e$(e),r=n({target:eS(e.target)?ez({x:t.clientX,y:t.clientY}):e.target,input:t,source:l.payload,current:s.current.dropTargets});r.length&&(e.preventDefault(),eK({event:e,current:r})),u({dropTargets:r,input:t})}function x(){s.current.dropTargets.length&&u({dropTargets:[],input:s.current.input}),d.drop({current:s.current,updatedSourcePayload:null}),h()}function h(){eH.isActive=!1,c()}},eU=new Map;function eq(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];return function(){t.forEach(function(e){return e()})}}function eJ(e,t){var l=t.attribute,n=t.value;return e.setAttribute(l,n),function(){return e.removeAttribute(l)}}function eX(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}function eV(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?eX(Object(l),!0).forEach(function(t){eI(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):eX(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function eQ(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=function(e,t){if(e){if("string"==typeof e)return eZ(e,void 0);var l=({}).toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?eZ(e,void 0):void 0}}(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==l.return||l.return()}finally{if(o)throw a}}}}function eZ(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function e0(e){return e.slice(0).reverse()}function e1(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=Array(t);l<t;l++)n[l]=e[l];return n}function e2(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),l.push.apply(l,n)}return l}var e4=eA(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")}),e8="text/plain",e6=new WeakMap,e9=(eh=null,{bindEvents:function(){return eh=null,(0,eC.bind)(window,{type:"pointermove",listener:function(e){eh={x:e.clientX,y:e.clientY}},options:{capture:!0}})},getOnPostDispatch:function(){var e=null;return function(t){var l=t.eventName,n=t.payload;if("onDragStart"===l){var r,a,i,o=n.location.initial.input,s=null!=eh?eh:{x:o.clientX,y:o.clientY};(r=document.createElement("div")).setAttribute(ew,"true"),a=eD({client:s}),Object.assign(r.style,eN(eN({backgroundColor:"transparent",position:"fixed",padding:0,margin:0,boxSizing:"border-box"},eE({clientRect:a})),{},{pointerEvents:"auto",zIndex:0x7fffffff})),document.body.appendChild(r),i=(0,eC.bind)(window,{type:"pointermove",listener:function(e){a=eD({client:{x:e.clientX,y:e.clientY}}),Object.assign(r.style,eE({clientRect:a}))},options:{capture:!0}}),e=function(e){var t,l,n,o=e.current;if(i(),l=(t={client:o,clientRect:a}).client,n=t.clientRect,l.x>=n.x&&l.x<=n.x+n.width&&l.y>=n.y&&l.y<=n.y+n.height)return void r.remove();function s(){d(),r.remove()}var d=(0,eC.bindAll)(window,[{type:"pointerdown",listener:s},{type:"pointermove",listener:s},{type:"focusin",listener:s},{type:"focusout",listener:s},{type:"dragstart",listener:s},{type:"dragenter",listener:s},{type:"dragover",listener:s}],{capture:!0})}}if("onDrop"===l){var d,c=n.location.current.input;null==(d=e)||d({current:{x:c.clientX,y:c.clientY}}),e=null,eh=null}}}}),e5=function(e){var t=e.typeKey,l=e.mount,n=e.dispatchEventToSource,r=e.onPostDispatch,a=e.defaultDropEffect,i=function(){var e=new Set,t=null;function l(e){t&&(!e.canMonitor||e.canMonitor(t.canMonitorArgs))&&t.active.add(e)}return{dispatchEvent:function(n){var r=n.eventName,a=n.payload;if("onGenerateDragPreview"===r){t={canMonitorArgs:{initial:a.location.initial,source:a.source},active:new Set};var i,o=function(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=function(e,t){if(e){if("string"==typeof e)return e1(e,void 0);var l=({}).toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?e1(e,void 0):void 0}}(e))){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==l.return||l.return()}finally{if(o)throw a}}}}(e);try{for(o.s();!(i=o.n()).done;){var s=i.value;l(s)}}catch(e){o.e(e)}finally{o.f()}}if(t){for(var d=Array.from(t.active),c=0;c<d.length;c++){var u,p=d[c];t.active.has(p)&&(null==(u=p[r])||u.call(p,a))}"onDrop"===r&&(t.active.clear(),t=null)}},monitorForConsumers:function(n){var r=function(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?e2(Object(l),!0).forEach(function(t){eI(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):e2(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}({},n);return e.add(r),l(r),eA(function(){e.delete(r),t&&t.active.delete(r)})}}}(),o=function(e){var t=e.typeKey,l=e.defaultDropEffect,n=new WeakMap,r="data-drop-target-for-".concat(t),a="[".concat(r,"]");function i(e){var t,l=e.eventName,r=e.payload,a=eQ(r.location.current.dropTargets);try{for(a.s();!(t=a.n()).done;){var i,o=t.value,s=n.get(o.element),d=eV(eV({},r),{},{self:o});null==s||null==(i=s[l])||i.call(s,d)}}catch(e){a.e(e)}finally{a.f()}}var o={onGenerateDragPreview:i,onDrag:i,onDragStart:i,onDrop:i,onDropTargetChange:function(e){var t,l=e.payload,r=new Set(l.location.current.dropTargets.map(function(e){return e.element})),a=new Set,i=eQ(l.location.previous.dropTargets);try{for(i.s();!(t=i.n()).done;){var o,s,d=t.value;a.add(d.element);var c=n.get(d.element),u=r.has(d.element),p=eV(eV({},l),{},{self:d});null==c||null==(o=c.onDropTargetChange)||o.call(c,p),u||null==c||null==(s=c.onDragLeave)||s.call(c,p)}}catch(e){i.e(e)}finally{i.f()}var x,h=eQ(l.location.current.dropTargets);try{for(h.s();!(x=h.n()).done;){var m,f,g=x.value;if(!a.has(g.element)){var v=eV(eV({},l),{},{self:g}),j=n.get(g.element);null==j||null==(m=j.onDropTargetChange)||m.call(j,v),null==j||null==(f=j.onDragEnter)||f.call(j,v)}}}catch(e){h.e(e)}finally{h.f()}}};return{dropTargetForConsumers:function(e){return eA(eq(eJ(e.element,{attribute:r,value:"true"}),(n.set(e.element,e),function(){return n.delete(e.element)})))},getIsOver:function(e){var t=e.source,r=e.target,i=e.input,o=e.current,s=function e(t){var r,i,o,s,d=t.source,c=t.target,u=t.input,p=t.result,x=void 0===p?[]:p;if(null==c)return x;if(!(c instanceof Element))return c instanceof Node?e({source:d,target:c.parentElement,input:u,result:x}):x;var h=c.closest(a);if(null==h)return x;var m=n.get(h);if(null==m)return x;var f={input:u,source:d,element:m.element};if(m.canDrop&&!m.canDrop(f))return e({source:d,target:m.element.parentElement,input:u,result:x});var g=null!=(r=null==(i=m.getData)?void 0:i.call(m,f))?r:{},v=null!=(o=null==(s=m.getDropEffect)?void 0:s.call(m,f))?o:l,j={data:g,element:m.element,dropEffect:v,isActiveDueToStickiness:!1};return e({source:d,target:m.element.parentElement,input:u,result:[].concat(eT(x),[j])})}({source:t,target:r,input:i});if(s.length>=o.length)return s;for(var d=e0(o),c=e0(s),u=[],p=0;p<d.length;p++){var x,h=d[p],m=c[p];if(null!=m){u.push(m);continue}var f=u[p-1],g=d[p-1];if((null==f?void 0:f.element)!==(null==g?void 0:g.element))break;var v=n.get(h.element);if(!v)break;var j={input:i,source:t,element:v.element};if(v.canDrop&&!v.canDrop(j)||!(null!=(x=v.getIsSticky)&&x.call(v,j)))break;u.push(eV(eV({},h),{},{isActiveDueToStickiness:!0}))}return e0(u)},dispatchEvent:function(e){o[e.eventName](e)}}}({typeKey:t,defaultDropEffect:a});function s(e){null==n||n(e),o.dispatchEvent(e),i.dispatchEvent(e),null==r||r(e)}function d(e){eW({event:e.event,dragType:e.dragType,getDropTargetsOver:o.getIsOver,dispatchEvent:s})}return{registerUsage:function(){var e,n;return n=function(e){var t=e.typeKey,l=e.mount,n=eU.get(t);if(n)return n.usageCount++,n;var r={typeKey:t,unmount:l(),usageCount:1};return eU.set(t,r),r}(e={typeKey:t,mount:function(){return l({canStart:eY,start:d})}}),function(){n.usageCount--,n.usageCount>0||(n.unmount(),eU.delete(e.typeKey))}},dropTarget:o.dropTargetForConsumers,monitor:i.monitorForConsumers}}({typeKey:"element",defaultDropEffect:"move",mount:function(e){return eq(e9.bindEvents(),(0,eC.bind)(document,{type:"dragstart",listener:function(t){if(e.canStart(t)&&!t.defaultPrevented&&t.dataTransfer){var l,n,r,a,i,o,s=t.target;if(s instanceof HTMLElement){var d=e6.get(s);if(d){var c=e$(t),u={element:d.element,dragHandle:null!=(l=d.dragHandle)?l:null,input:c};if(d.canDrag&&!d.canDrag(u))return void t.preventDefault();if(d.dragHandle){var p=ez({x:c.clientX,y:c.clientY});if(!d.dragHandle.contains(p))return void t.preventDefault()}var x=null!=(n=null==(r=d.getInitialDataForExternal)?void 0:r.call(d,u))?n:null;if(x)for(var h=0,m=Object.entries(x);h<m.length;h++){var f=eb(m[h],2),g=f[0],v=f[1];t.dataTransfer.setData(g,null!=v?v:"")}!e4()||t.dataTransfer.types.includes(e8)||t.dataTransfer.types.includes("text/uri-list")||t.dataTransfer.setData(e8,"pdnd:android-fallback"),t.dataTransfer.setData("application/vnd.pdnd","");var j={element:d.element,dragHandle:null!=(a=d.dragHandle)?a:null,data:null!=(i=null==(o=d.getInitialData)?void 0:o.call(d,u))?i:{}};e.start({event:t,dragType:{type:"element",payload:j,startedFrom:"internal"}})}}}}}))},dispatchEventToSource:function(e){var t,l,n=e.eventName,r=e.payload;null==(t=e6.get(r.source.element))||null==(l=t[n])||l.call(t,r)},onPostDispatch:e9.getOnPostDispatch()}),e3=e5.dropTarget;function e7(e){return eA(eq(e5.registerUsage(),(e6.set(e.element,e),function(){e6.delete(e.element)}),eJ(e.element,{attribute:"draggable",value:"true"})))}e5.monitor;let te=(0,ev.createContext)({designable:!1,plugins:[],schema:{info:{},datasources:[],scripts:[],variables:[],items:[]},selectedItem:null,setSchema:()=>{},setSelectedItem:()=>{},updateSelectedItem:()=>{},forceUpdate:()=>{}}),tt=e=>{let{designable:t,plugins:l,schema:n,selectedItem:r,setSchema:a,setSelectedItem:i,children:o}=e;return(0,eg.jsx)(te.Provider,{value:{designable:!!t,plugins:l||[],schema:n,selectedItem:r,setSchema:a||(()=>{}),setSelectedItem:i||(()=>{}),updateSelectedItem:e=>{null==i||i(Object.assign(r,e||{})),null==a||a({...n})},forceUpdate:()=>{null==a||a({...n})}},children:o})},tl=e=>{var t;let{item:l,onDelete:n,parentList:r,onListChange:a,index:i}=e,{designable:o,selectedItem:s,setSelectedItem:d,plugins:c}=(0,ev.useContext)(te),[u,p]=(0,ev.useState)(!1),x=null==(t=c.find(e=>e.key===l.type))?void 0:t.component;return((0,ev.useEffect)(()=>{let e=()=>{if(!t.current)return;let e=document.getElementById(`page-item-${l.id}`);if(!e)return void r();let n=e.getBoundingClientRect();if(0===n.width&&0===n.height){t.current.style.display="none";return}t.current.style.display="flex";let a=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,i=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;t.current.style.top=`${n.top+a-22}px`,t.current.style.left=`${n.left+i-1}px`},t={current:null},r=()=>{if(t.current){let l=t.current.querySelector("a");l&&l.removeEventListener("click",a),document.body.contains(t.current)&&document.body.removeChild(t.current),t.current=null,window.removeEventListener("scroll",e,!0),window.removeEventListener("resize",e)}},a=e=>{e.stopPropagation(),n&&n()};if(s&&s===l&&o){let n=document.createElement("div");n.style.position="absolute",n.style.zIndex="9999",n.style.display="flex",n.style.gap="4px";let i=document.createElement("span");i.innerText=l.name||l.type+`(${l.id})`,i.style.background="#1890ff",i.style.color="#fff",i.style.fontSize="12px",i.style.borderTopLeftRadius="4px",i.style.borderTopRightRadius="4px",i.style.padding="2px 8px",i.style.cursor="pointer",i.style.userSelect="none",n.appendChild(i);let o=document.createElement("a");return o.innerText="X",o.style.background="#1890ff",o.style.color="#fff",o.style.fontSize="12px",o.style.borderTopLeftRadius="4px",o.style.borderTopRightRadius="4px",o.style.padding="2px 8px",o.style.cursor="pointer",o.style.userSelect="none",n.appendChild(o),o.addEventListener("click",a),document.body.appendChild(n),t.current=n,e(),window.addEventListener("scroll",e,!0),window.addEventListener("resize",e),()=>r()}},[s,o,l,n]),(0,ev.useEffect)(()=>{let e=document.getElementById(`page-item-${l.id}`);if(!e||!o)return;let t=e7({element:e,getInitialData:()=>({id:l.id,index:i,list:r,onListChange:a,data:l}),canDrag:()=>!!o,onDragStart:()=>{p(!0)},onDrop:()=>{p(!1)}}),n=e=>{e.stopPropagation(),d&&d(l)};return o&&e.addEventListener("click",n),()=>{t(),o&&e.removeEventListener("click",n)}},[o,l,i,r]),x)?(0,eg.jsx)(x,{id:`page-item-${l.id}`,"data-item-id":l.id,...l.props||{},item:l,className:`page-item-component ${o?"designable":""} ${s===l?"selected":""}`,style:{...l.style||{},opacity:u?.5:1}}):null},tn=t.div`
|
|
3
|
+
position: absolute;
|
|
4
|
+
background: #1890ff;
|
|
5
|
+
pointer-events: none;
|
|
6
|
+
opacity: ${e=>+!!e.$visible};
|
|
7
|
+
transition: all 0.1s ease-out;
|
|
8
|
+
|
|
9
|
+
/* Horizontal bar (Vertical list) */
|
|
10
|
+
${e=>!e.$vertical&&`
|
|
11
|
+
left: 8px;
|
|
12
|
+
right: 8px;
|
|
13
|
+
height: 2px;
|
|
14
|
+
top: ${e.$offset}px;
|
|
15
|
+
`}
|
|
16
|
+
|
|
17
|
+
/* Vertical bar (Horizontal list) */
|
|
18
|
+
${e=>e.$vertical&&`
|
|
19
|
+
top: 8px;
|
|
20
|
+
bottom: 8px;
|
|
21
|
+
width: 2px;
|
|
22
|
+
left: ${e.$offset}px;
|
|
23
|
+
`}
|
|
24
|
+
|
|
25
|
+
&::before,
|
|
26
|
+
&::after {
|
|
27
|
+
content: "";
|
|
28
|
+
position: absolute;
|
|
29
|
+
width: 8px;
|
|
30
|
+
height: 8px;
|
|
31
|
+
background: #1890ff;
|
|
32
|
+
border-radius: 50%;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
${e=>!e.$vertical&&`
|
|
36
|
+
&::before { top: -3px; left: -4px; }
|
|
37
|
+
&::after { top: -3px; right: -4px; }
|
|
38
|
+
`}
|
|
39
|
+
|
|
40
|
+
${e=>e.$vertical&&`
|
|
41
|
+
&::before { left: -3px; top: -4px; }
|
|
42
|
+
&::after { left: -3px; bottom: -4px; }
|
|
43
|
+
`}
|
|
44
|
+
`,tr=(e,t,l,n)=>{let r=e.getBoundingClientRect(),a=Array.from(e.children).filter(e=>!e.classList.contains("drop-indicator")&&e.getBoundingClientRect().width>0),i=(e=>{let t=Array.from(e.children).filter(e=>!e.classList.contains("drop-indicator")&&e.getBoundingClientRect().width>0);if(0===t.length){let t=window.getComputedStyle(e),{display:l,flexDirection:n}=t;return"flex"===l||"inline-flex"===l?!n.includes("column"):"grid"===l&&!t.gridAutoFlow.includes("column")}if(1===t.length){let l=window.getComputedStyle(t[0]),n=window.getComputedStyle(e);return"flex"===n.display||"inline-flex"===n.display?!n.flexDirection.includes("column"):!!["inline","inline-block","inline-flex"].includes(l.display)||"none"!==l.float}let l=0,n=0,r=t.map(e=>{let t=e.getBoundingClientRect(),r=t.left+t.width/2,a=t.top+t.height/2;return l+=r,n+=a,{cx:r,cy:a}}),a=l/t.length,i=n/t.length,o=0,s=0;return r.forEach(e=>{o+=(e.cx-a)**2,s+=(e.cy-i)**2}),o>=s})(e),o=e.scrollLeft,s=e.scrollTop;if(0===a.length)return{index:0,indicatorOffset:15,isHorizontal:i};let d=(e,t)=>i?(t?e.left:e.right)-r.left+o+(t?-4:4):(t?e.top:e.bottom)-r.top+s+(t?-4:4),c=e=>{let t=e.getAttribute("data-item-id");if(t){let e=n.findIndex(e=>e.id===t);if(-1!==e)return e}return a.indexOf(e)};for(let e=0;e<a.length;e++){let n=a[e].getBoundingClientRect();if(t>=n.left-5&&t<=n.right+5&&l>=n.top-5&&l<=n.bottom+5){let r=i?t<n.left+n.width/2:l<n.top+n.height/2,o=c(a[e]);return{index:r?o:o+1,indicatorOffset:d(n,r),isHorizontal:i}}}let u=1/0,p=!1,x=null,h=null;for(let e=0;e<a.length;e++){let n=a[e].getBoundingClientRect(),r=n.left+n.width/2,o=n.top+n.height/2,s=(t-r)**2+(l-o)**2;s<u&&(u=s,x=n,h=a[e],p=i?t<r:l<o)}if(h&&x){let e=c(h);return{index:p?e:e+1,indicatorOffset:d(x,p),isHorizontal:i}}let m=a[a.length-1].getBoundingClientRect();return{index:n.length,indicatorOffset:d(m,!1),isHorizontal:i}},ta=e=>{let{rootComponent:t="div",rootData:l={},list:n=[],item:r,onListChange:a,className:i}=e,{designable:o,selectedItem:s,setSelectedItem:d,forceUpdate:c}=(0,ev.useContext)(te),u=(0,ev.useRef)(null),[p,x]=(0,ev.useState)(!1),[h,m]=(0,ev.useState)(0),[f,g]=(0,ev.useState)(!1),[v,j]=(0,ev.useState)(!1),y=(0,ev.useRef)(n),b=(0,ev.useRef)(a);(0,ev.useEffect)(()=>{y.current=n,b.current=a},[n,a]);let C=(0,ev.useMemo)(()=>n||[],[n]);(0,ev.useEffect)(()=>{let e=u.current;if(!e)return;let t=e3({element:e,canDrop:e=>{let{source:t,element:l}=e;if(!o)return!1;let{data:n}=t.data||{};return(!l.classList.contains("ant-row")||(null==n?void 0:n.type)==="b-col")&&(!!l.classList.contains("ant-row")||(null==n?void 0:n.type)!=="b-col")},getData:()=>({localList:y.current}),onDragEnter:t=>{if(!o)return!1;let[l]=t.location.current.dropTargets;if((null==l?void 0:l.element)!==e)return;x(!0),j(!0);let n=t.location.current.input.clientY,{indicatorOffset:r,isHorizontal:a}=tr(e,t.location.current.input.clientX,n,y.current||[]);m(r),g(a)},onDrag:t=>{if(!o)return!1;let[l]=t.location.current.dropTargets;if((null==l?void 0:l.element)!==e){x(!1),j(!1);return}x(!0),j(!0);let n=t.location.current.input.clientY,{indicatorOffset:r,isHorizontal:a}=tr(e,t.location.current.input.clientX,n,y.current||[]);m(r),g(a)},onDragLeave:()=>{if(!o)return!1;x(!1),j(!1)},onDrop(t){if(!o)return!1;let[l]=t.location.current.dropTargets;if((null==l?void 0:l.element)!==e)return;x(!1),j(!1);let{data:n,list:r,onListChange:a,index:i}=t.source.data;null==d||d(n);let s=y.current||[],c=b.current,u=r===s||s.some(e=>e.id===n.id),p=t.location.current.input.clientY,{index:h}=tr(e,t.location.current.input.clientX,p,s);if(r)if(u){let e=[...s],t=e.findIndex(e=>e.id===n.id);if(-1!==t){let[l]=e.splice(t,1);e.splice(h>t?h-1:h,0,l),null==c||c(e)}else e.splice(h,0,n),null==c||c(e)}else{a&&r&&a(r.filter(e=>e.id!==n.id));let e=[...s];e.some(e=>e.id===n.id)||(e.splice(h,0,n),null==c||c(e))}else{let e=[...s];e.splice(h,0,n),null==c||c(e)}}});return()=>t()},[]);let w=[i,"drag-container","page-item-component",!n.length?"empty-container":"",s===r?"selected":"",o?"designable":""].filter(Boolean).join(" ");return(0,eg.jsxs)(t,{...l||{},ref:u,className:w,style:{...null==l?void 0:l.style,position:"relative",minHeight:o?24:void 0,outline:p?"1px dashed #1890ff":void 0},children:[(0,eg.jsx)(tn,{className:"drop-indicator",$offset:h,$vertical:f,$visible:v}),(Array.isArray(C)?C:[]).filter(Boolean).map((e,t)=>(0,eg.jsx)(tl,{item:e,parentList:C,onListChange:a,index:t,onDelete:()=>null==a?void 0:a(C.filter(t=>t.id!==e.id))},e.id||t))]})},ti=ta,to=(0,ev.createContext)({deviceWidth:0,env:{global:{},local:{}},callbacks:{},initCallback:e=>{let{id:t,callback:l}=e}}),ts=e=>{let{deviceWidth:t,env:l,callbacks:n,initCallback:r,children:a}=e;return(0,eg.jsx)(to.Provider,{value:{deviceWidth:t,env:l,callbacks:n,initCallback:r},children:a})},td=t.div`
|
|
45
|
+
.empty-container.designable {
|
|
46
|
+
min-width: 10px;
|
|
47
|
+
min-height: 30px;
|
|
48
|
+
background-color: #f5f5f5;
|
|
49
|
+
border: 1px dashed #d9d9d9;
|
|
50
|
+
}
|
|
51
|
+
.page-canvas {
|
|
52
|
+
// display: flex;
|
|
53
|
+
// flex-direction: column;
|
|
54
|
+
// gap: 16px;
|
|
55
|
+
padding: 12px;
|
|
56
|
+
padding-bottom: 24px;
|
|
57
|
+
min-width: 0;
|
|
58
|
+
max-width: 100%;
|
|
59
|
+
overflow-x: hidden;
|
|
60
|
+
user-select: none;
|
|
61
|
+
background: #ffffff;
|
|
62
|
+
|
|
63
|
+
.page-item-component.designable {
|
|
64
|
+
position: relative;
|
|
65
|
+
}
|
|
66
|
+
.page-item-component.designable:hover {
|
|
67
|
+
outline: 1px dashed #1890ff;
|
|
68
|
+
cursor: move;
|
|
69
|
+
}
|
|
70
|
+
.page-item-component.designable.ant-row {
|
|
71
|
+
padding: 6px;
|
|
72
|
+
}
|
|
73
|
+
.page-item-component.designable.selected {
|
|
74
|
+
position: relative;
|
|
75
|
+
outline: 1px solid #1890ff;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
`,tc=ev.default.forwardRef(function(e,t){let{device:l="desktop"}=e,{schema:n,forceUpdate:r}=(0,ev.useContext)(te),a=(0,ev.useRef)(null),[i,o]=(0,ev.useState)(0),[s,d]=(0,ev.useState)({}),[c,u]=(0,ev.useState)({global:{},local:{}}),p=(0,ev.useMemo)(()=>n.items||[],[n.items]),[x,h]=(0,ev.useState)(p);(0,ev.useEffect)(()=>{h(n.items||[])},[n.items]),(0,ev.useEffect)(()=>{let e={};(n.variables||[]).forEach(t=>{e[t.name]=t.value}),u(t=>({...t,global:e}))},[n.variables]);let m=()=>{var e;let t=null==(e=a.current)?void 0:e.parentElement,l=null==t?void 0:t.getBoundingClientRect(),n=(null==l?void 0:l.width)||0;n<=100?setTimeout(m,10):o(n?n-36:0)};return(0,ev.useEffect)(()=>{m()},[l]),(0,ev.useEffect)(()=>{let e=()=>m();return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),(0,ev.useImperativeHandle)(t,()=>({handleResize(){m()},get dom(){return a.current}})),(0,eg.jsx)(ts,{deviceWidth:i,env:c,callbacks:s,initCallback:e=>{let{id:t,callback:l}=e;d(e=>({...e,[t]:l}))},children:(0,eg.jsx)(td,{ref:a,children:(0,eg.jsx)(ta,{list:x,onListChange:e=>{let t=[...e];n.items=t,h(t),null==r||r()},className:"page-canvas"})})})}),tu=tc,tp=D({scriptUrl:"https://at.alicdn.com/t/c/font_5072483_pswdqptbsip.js"}),tx=e=>{let{type:t,className:l=""}=e;return(0,eg.jsx)(tp,{type:t,className:l})},th=t.div`
|
|
79
|
+
width: 100%;
|
|
80
|
+
padding: 0 12px;
|
|
81
|
+
border-bottom: solid 1px #e8e8e8;
|
|
82
|
+
background: #ffffff;
|
|
83
|
+
height: 40px;
|
|
84
|
+
display: flex;
|
|
85
|
+
align-items: center;
|
|
86
|
+
justify-content: space-between;
|
|
87
|
+
.title {
|
|
88
|
+
font-size: 14px;
|
|
89
|
+
line-height: 40px;
|
|
90
|
+
}
|
|
91
|
+
.extra {
|
|
92
|
+
line-height: 32px;
|
|
93
|
+
}
|
|
94
|
+
`,tm=e=>{let{title:t="",extra:l}=e;return(0,eg.jsxs)(th,{className:"pane-header",children:[(0,eg.jsx)("span",{className:"title",children:t}),(0,eg.jsx)("div",{className:"extra",children:l})]})},tf=t.div`
|
|
95
|
+
ul.agent-list {
|
|
96
|
+
margin: 0;
|
|
97
|
+
padding: 0;
|
|
98
|
+
list-style: none;
|
|
99
|
+
display: flex;
|
|
100
|
+
flex-direction: column;
|
|
101
|
+
gap: 4px;
|
|
102
|
+
}
|
|
103
|
+
ul.agent-list li {
|
|
104
|
+
padding: 4px 8px;
|
|
105
|
+
cursor: pointer;
|
|
106
|
+
font-size: 14px;
|
|
107
|
+
}
|
|
108
|
+
ul.agent-list li:hover {
|
|
109
|
+
background: var(--link-bg-color);
|
|
110
|
+
border-radius: 2px;
|
|
111
|
+
}
|
|
112
|
+
ul.agent-list li a {
|
|
113
|
+
color: var(--ant-color-text-secondary);
|
|
114
|
+
flex: auto;
|
|
115
|
+
overflow: hidden;
|
|
116
|
+
text-overflow: ellipsis;
|
|
117
|
+
white-space: nowrap;
|
|
118
|
+
}
|
|
119
|
+
.chat-input {
|
|
120
|
+
display: flex;
|
|
121
|
+
flex-direction: column;
|
|
122
|
+
width: 100%;
|
|
123
|
+
position: relative;
|
|
124
|
+
}
|
|
125
|
+
.input-stack {
|
|
126
|
+
display: flex;
|
|
127
|
+
flex-direction: column;
|
|
128
|
+
gap: 0;
|
|
129
|
+
}
|
|
130
|
+
.attachment-bar {
|
|
131
|
+
display: flex;
|
|
132
|
+
flex-wrap: wrap;
|
|
133
|
+
gap: 8px;
|
|
134
|
+
width: 100%;
|
|
135
|
+
box-sizing: border-box;
|
|
136
|
+
padding: 8px;
|
|
137
|
+
border: 1px solid #ddd;
|
|
138
|
+
border-radius: 6px 6px 0 0;
|
|
139
|
+
border-bottom: none;
|
|
140
|
+
background-color: #eff1f9;
|
|
141
|
+
}
|
|
142
|
+
.attachment-card {
|
|
143
|
+
max-height: 171px;
|
|
144
|
+
overflow: auto;
|
|
145
|
+
display: inline-flex;
|
|
146
|
+
align-items: center;
|
|
147
|
+
flex-direction: column;
|
|
148
|
+
gap: 12px;
|
|
149
|
+
padding: 8px;
|
|
150
|
+
border: 1px solid #eaeaea;
|
|
151
|
+
border-radius: 6px;
|
|
152
|
+
background-color: #fafafa;
|
|
153
|
+
font-size: 12px;
|
|
154
|
+
position: relative;
|
|
155
|
+
}
|
|
156
|
+
.attachment-card .name {
|
|
157
|
+
max-width: 80px;
|
|
158
|
+
overflow: hidden;
|
|
159
|
+
text-overflow: ellipsis;
|
|
160
|
+
white-space: nowrap;
|
|
161
|
+
color: #555;
|
|
162
|
+
}
|
|
163
|
+
.attachment-card .remove {
|
|
164
|
+
color: #999;
|
|
165
|
+
cursor: pointer;
|
|
166
|
+
transition: color 0.2s ease;
|
|
167
|
+
position: absolute;
|
|
168
|
+
top: 4px;
|
|
169
|
+
right: 2px;
|
|
170
|
+
}
|
|
171
|
+
.attachment-card .remove:hover {
|
|
172
|
+
color: #666;
|
|
173
|
+
}
|
|
174
|
+
.agent-info {
|
|
175
|
+
box-sizing: border-box;
|
|
176
|
+
padding: 4px 8px;
|
|
177
|
+
border: 1px solid #ddd;
|
|
178
|
+
border-radius: 6px 6px 0 0;
|
|
179
|
+
border-bottom: none;
|
|
180
|
+
background-color: #eff1f9;
|
|
181
|
+
font-size: 14px;
|
|
182
|
+
color: #555;
|
|
183
|
+
display: flex;
|
|
184
|
+
align-items: center;
|
|
185
|
+
justify-content: space-between;
|
|
186
|
+
user-select: none;
|
|
187
|
+
}
|
|
188
|
+
.attachment-bar + .agent-info {
|
|
189
|
+
border-radius: 0;
|
|
190
|
+
}
|
|
191
|
+
.agent-info + .title-input,
|
|
192
|
+
.agent-info + .textarea-stacked {
|
|
193
|
+
border-radius: 0;
|
|
194
|
+
}
|
|
195
|
+
.title-input {
|
|
196
|
+
width: 100%;
|
|
197
|
+
box-sizing: border-box;
|
|
198
|
+
padding: 8px;
|
|
199
|
+
border: 1px solid #ddd;
|
|
200
|
+
border-radius: 6px 6px 0 0;
|
|
201
|
+
border-bottom: none;
|
|
202
|
+
font-size: 14px;
|
|
203
|
+
}
|
|
204
|
+
.attachment-bar + .title-input {
|
|
205
|
+
border-top-left-radius: 0;
|
|
206
|
+
border-top-right-radius: 0;
|
|
207
|
+
}
|
|
208
|
+
.input {
|
|
209
|
+
width: 100%;
|
|
210
|
+
box-sizing: border-box;
|
|
211
|
+
padding: 8px;
|
|
212
|
+
border: 1px solid #ddd;
|
|
213
|
+
border-radius: 6px;
|
|
214
|
+
resize: vertical;
|
|
215
|
+
font-size: 14px;
|
|
216
|
+
}
|
|
217
|
+
.textarea-stacked {
|
|
218
|
+
border-top-left-radius: 5px;
|
|
219
|
+
border-top-right-radius: 5px;
|
|
220
|
+
border-bottom-left-radius: 0;
|
|
221
|
+
border-bottom-right-radius: 0;
|
|
222
|
+
outline: none;
|
|
223
|
+
resize: none;
|
|
224
|
+
}
|
|
225
|
+
.title-input + .textarea-stacked,
|
|
226
|
+
.attachment-bar + .textarea-stacked {
|
|
227
|
+
border-top-left-radius: 0;
|
|
228
|
+
border-top-right-radius: 0;
|
|
229
|
+
}
|
|
230
|
+
.footer {
|
|
231
|
+
display: flex;
|
|
232
|
+
justify-content: space-between;
|
|
233
|
+
align-items: center;
|
|
234
|
+
gap: 8px;
|
|
235
|
+
bottom: 0;
|
|
236
|
+
left: 0;
|
|
237
|
+
right: 0;
|
|
238
|
+
padding: 8px;
|
|
239
|
+
border: solid 1px #dddddd;
|
|
240
|
+
border-top: none;
|
|
241
|
+
border-bottom-left-radius: 5px;
|
|
242
|
+
border-bottom-right-radius: 5px;
|
|
243
|
+
background-color: #eff1f9;
|
|
244
|
+
}
|
|
245
|
+
.footer .left {
|
|
246
|
+
display: flex;
|
|
247
|
+
align-items: center;
|
|
248
|
+
gap: 8px;
|
|
249
|
+
}
|
|
250
|
+
.agent-trigger {
|
|
251
|
+
display: inline-flex;
|
|
252
|
+
align-items: center;
|
|
253
|
+
justify-content: center;
|
|
254
|
+
gap: 4px;
|
|
255
|
+
width: auto;
|
|
256
|
+
height: 26px;
|
|
257
|
+
color: var(--chat-blue);
|
|
258
|
+
background-color: #ffffff;
|
|
259
|
+
cursor: pointer;
|
|
260
|
+
transition: all 0.2s ease;
|
|
261
|
+
font-size: 12px;
|
|
262
|
+
border: solid 1px #dcdcdc;
|
|
263
|
+
border-radius: 5px;
|
|
264
|
+
padding: 0 4px;
|
|
265
|
+
}
|
|
266
|
+
.agent-trigger:hover {
|
|
267
|
+
background-color: #f7f7f7;
|
|
268
|
+
}
|
|
269
|
+
.title-toggle {
|
|
270
|
+
display: none;
|
|
271
|
+
align-items: center;
|
|
272
|
+
gap: 6px;
|
|
273
|
+
background-color: #ffffff;
|
|
274
|
+
border: solid 1px #dcdcdc;
|
|
275
|
+
border-radius: 5px;
|
|
276
|
+
padding: 0 4px;
|
|
277
|
+
height: 26px;
|
|
278
|
+
}
|
|
279
|
+
.title-toggle .label {
|
|
280
|
+
color: #666;
|
|
281
|
+
font-size: 12px;
|
|
282
|
+
user-select: none;
|
|
283
|
+
}
|
|
284
|
+
.attach-upload {
|
|
285
|
+
display: inline-flex;
|
|
286
|
+
align-items: center;
|
|
287
|
+
gap: 6px;
|
|
288
|
+
color: var(--chat-blue);
|
|
289
|
+
background-color: #ffffff;
|
|
290
|
+
border: solid 1px #dcdcdc;
|
|
291
|
+
border-radius: 5px;
|
|
292
|
+
padding: 0 4px;
|
|
293
|
+
height: 26px;
|
|
294
|
+
font-size: 12px;
|
|
295
|
+
cursor: pointer;
|
|
296
|
+
}
|
|
297
|
+
.tips {
|
|
298
|
+
color: #999;
|
|
299
|
+
font-size: 12px;
|
|
300
|
+
user-select: none;
|
|
301
|
+
padding: 4px;
|
|
302
|
+
border-radius: 4px;
|
|
303
|
+
}
|
|
304
|
+
.send-btn {
|
|
305
|
+
display: flex;
|
|
306
|
+
align-items: center;
|
|
307
|
+
justify-content: center;
|
|
308
|
+
width: 50px;
|
|
309
|
+
height: 26px;
|
|
310
|
+
color: #fff;
|
|
311
|
+
font-size: 22px;
|
|
312
|
+
background-color: rgb(184, 184, 191);
|
|
313
|
+
border: unset;
|
|
314
|
+
border-radius: 14px;
|
|
315
|
+
transition: background-color 0.3s ease 0s;
|
|
316
|
+
cursor: pointer;
|
|
317
|
+
}
|
|
318
|
+
.send-btn.send-btn-active {
|
|
319
|
+
background-color: var(--chat-blue);
|
|
320
|
+
}
|
|
321
|
+
`,tg=[],tv=[],tj=ev.default.forwardRef((e,t)=>{let{value:l="",placeholder:n="请输入需求,例如:分析 2025 年人口结构并生成可视化报告",disabled:r=!1,sending:a=!1,rows:i=6,agentList:o=tg,title:s="",agentId:d=null,attachments:c=tv,onInput:u,onSubmit:p,onUpdateTitle:x,onUpdateAgentId:h,onUpdateAttachments:m}=e,f=(0,ev.useRef)(null),[g,v]=(0,ev.useState)(s||""),[y,b]=(0,ev.useState)(d||null),[C,w]=(0,ev.useState)(null),[z,k]=(0,ev.useState)(l||""),[I,O]=(0,ev.useState)(0),[N,D]=(0,ev.useState)(!1),[E,A]=(0,ev.useState)(Array.isArray(c)?c:[]),B=(0,ev.useMemo)(()=>!1,[]);(0,ev.useImperativeHandle)(t,()=>({focus(){var e;null==(e=f.current)||e.focus()}})),(0,ev.useEffect)(()=>k(l||""),[l]),(0,ev.useEffect)(()=>{u&&u(z)},[z]),(0,ev.useEffect)(()=>v(s||""),[s]),(0,ev.useEffect)(()=>{b(d||null),w(d&&o.find(e=>e.id===d)||null)},[d,o]),(0,ev.useEffect)(()=>A(Array.isArray(c)?c:[]),[c]);let L=!!(z&&z.trim());(0,ev.useMemo)(()=>y&&o.find(e=>e.id===y)||null,[y,o]);let P=async e=>{let t=el(e,{type:"array",cellDates:!0,dateNF:"yyyy-mm-dd hh:mm:ss"}),l={};return t.SheetNames.forEach(e=>{let n=t.Sheets[e],r=en.sheet_to_csv(n);l[e]=r}),l},R=()=>{if(!L||a)return;let e=Date.now();if(e-I<400)return;O(e);let t=(z||"").trim();if(!t)return;let l={demand:t,title:N?g:"",agentId:y||void 0,csvData:E.reduce((e,t)=>({...e,[t.name]:t.csvBySheet}),{})};p&&p(l),k("")},M=(0,eg.jsx)("div",{style:{maxHeight:400,overflow:"auto",background:"#fff"},children:(0,eg.jsx)("ul",{className:"agent-list",children:o.map(e=>(0,eg.jsx)("li",{children:(0,eg.jsx)("a",{onClick:()=>{let t;b(t=e.id||null),h&&h(t),w(e)},children:e.name})},String(e.id)))})});return(0,eg.jsx)(tf,{children:(0,eg.jsxs)("div",{className:"chat-input",children:[(0,eg.jsxs)("div",{className:"input-stack",children:[E.length>0&&(0,eg.jsx)("div",{className:"attachment-bar",children:E.map(e=>(0,eg.jsxs)(Q,{title:e.name,className:"attachment-card",children:[(0,eg.jsx)("svg",{style:{width:25,height:25},viewBox:"0 0 24 24",children:(0,eg.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",fill:"#1f6f43"})}),(0,eg.jsx)("span",{className:"name",children:e.name}),(0,eg.jsx)("a",{className:"remove",onClick:()=>{var t;let l;return t=e.uid,void(A(l=E.filter(e=>e.uid!==t)),m&&m(l))},children:"\xd7"})]},e.uid))}),C&&(0,eg.jsxs)("div",{className:"agent-info",children:[(0,eg.jsxs)("span",{className:"name",children:["@ ",C.name]}),(0,eg.jsx)("a",{className:"remove",onClick:()=>{b(null),h&&h(null),w(null)},children:"\xd7"})]}),N&&(0,eg.jsx)($,{className:"title-input",placeholder:"请输入报告标题(可选)",disabled:r||a,value:g,onChange:e=>{let t=e.target.value;v(t),x&&x(t)}}),(0,eg.jsx)($.TextArea,{ref:f,className:"input textarea-stacked",placeholder:n,disabled:r||a,autoSize:{minRows:i,maxRows:i},value:z,onPressEnter:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),R()))},onChange:e=>k(e.target.value)})]}),(0,eg.jsxs)("div",{className:"footer",children:[(0,eg.jsxs)("div",{className:"left",children:[(0,eg.jsx)(_,{trigger:["click"],popupRender:()=>M,placement:"topLeft",children:(0,eg.jsx)(Q,{title:"选择助理",children:(0,eg.jsx)(T,{className:"agent-trigger",onClick:e=>e.preventDefault(),children:"@"})})}),(0,eg.jsxs)("div",{className:"title-toggle",children:[(0,eg.jsx)("span",{className:"label",children:"标题"}),(0,eg.jsx)(J,{size:"small",checked:N,disabled:r||a,onChange:e=>D(e)})]}),(0,eg.jsx)(ee,{multiple:!0,accept:".xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",beforeUpload:e=>{let t="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"===e.type||!e.type,l=(e.name||"").toLowerCase().endsWith(".xlsx");if(!t||!l)return ee.LIST_IGNORE;let n=new FileReader;return n.onload=async t=>{try{var l;let n=null==(l=t.target)?void 0:l.result,r=await P(n),a=[...E,{uid:`${Date.now()}_${Math.random()}`,name:e.name,size:e.size,csvBySheet:r}];A(a),m&&m(a)}catch{}},n.readAsArrayBuffer(e),!1},showUploadList:!1,disabled:r||a,children:(0,eg.jsx)(Q,{title:"上传 Excel 数据",children:(0,eg.jsx)(T,{className:"attach-upload",icon:(0,eg.jsx)(j,{})})})})]}),(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[!B&&(0,eg.jsx)("div",{className:"tips",children:"按 Enter 发送,Shift+Enter 换行"}),(0,eg.jsx)("a",{className:`send-btn ${!a&&(null==z?void 0:z.length)>0?"send-btn-active":""}`,onClick:R,children:(0,eg.jsx)(S,{})})]})]})]})})}),ty=t.div`
|
|
322
|
+
display: flex;
|
|
323
|
+
flex-direction: column;
|
|
324
|
+
height: 100%;
|
|
325
|
+
.body {
|
|
326
|
+
flex: 1 1 auto;
|
|
327
|
+
display: flex;
|
|
328
|
+
flex-direction: column;
|
|
329
|
+
gap: 12px;
|
|
330
|
+
padding: 12px;
|
|
331
|
+
}
|
|
332
|
+
.conversation-list {
|
|
333
|
+
margin: 0;
|
|
334
|
+
padding: 0;
|
|
335
|
+
list-style: none;
|
|
336
|
+
display: flex;
|
|
337
|
+
flex-direction: column;
|
|
338
|
+
gap: 4px;
|
|
339
|
+
}
|
|
340
|
+
.conversation-list li {
|
|
341
|
+
margin: 0;
|
|
342
|
+
display: flex;
|
|
343
|
+
align-items: center;
|
|
344
|
+
gap: 6px;
|
|
345
|
+
justify-content: space-between;
|
|
346
|
+
padding: 4px 8px;
|
|
347
|
+
background: var(--link-bg-color);
|
|
348
|
+
border-radius: 2px;
|
|
349
|
+
cursor: pointer;
|
|
350
|
+
font-size: 14px;
|
|
351
|
+
}
|
|
352
|
+
.conversation-list li a {
|
|
353
|
+
color: var(--ant-color-text-secondary);
|
|
354
|
+
flex: auto;
|
|
355
|
+
overflow: hidden;
|
|
356
|
+
text-overflow: ellipsis;
|
|
357
|
+
white-space: nowrap;
|
|
358
|
+
}
|
|
359
|
+
.conversation-list li small {
|
|
360
|
+
white-space: nowrap;
|
|
361
|
+
}
|
|
362
|
+
`,tb=[],tC=e=>{let{agentList:t=tb}=e;return(0,eg.jsxs)(ty,{children:[(0,eg.jsx)(tm,{title:"智能助理",extra:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(Q,{title:"新对话",placement:"topRight",children:(0,eg.jsx)("a",{children:(0,eg.jsx)(f,{})})}),(0,eg.jsx)(Q,{title:"历史记录",placement:"topRight",children:(0,eg.jsx)("a",{children:(0,eg.jsx)(x,{})})})]})}),(0,eg.jsxs)("div",{className:"body",children:[(0,eg.jsx)("div",{style:{flex:"1 1 auto"}}),(0,eg.jsx)(A,{title:"历史记录",size:"small",variant:"borderless",styles:{header:{padding:0,border:"none"},body:{padding:0}},children:(0,eg.jsxs)("ul",{className:"conversation-list",children:[(0,eg.jsxs)("li",{children:[(0,eg.jsxs)("a",{children:[(0,eg.jsx)(f,{}),"你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好你好"]}),(0,eg.jsx)("small",{children:"刚刚"})]}),(0,eg.jsxs)("li",{children:[(0,eg.jsxs)("a",{children:[(0,eg.jsx)(f,{}),"你好"]}),(0,eg.jsx)("small",{children:"刚刚"})]})]})}),(0,eg.jsx)(tj,{agentList:t})]})]})},tw=t.div`
|
|
363
|
+
display: flex;
|
|
364
|
+
flex-direction: column;
|
|
365
|
+
height: 100%;
|
|
366
|
+
.body {
|
|
367
|
+
flex: 1 1 auto;
|
|
368
|
+
display: flex;
|
|
369
|
+
flex-direction: column;
|
|
370
|
+
gap: 12px;
|
|
371
|
+
padding: 12px;
|
|
372
|
+
overflow-y: auto;
|
|
373
|
+
overflow-x: hidden;
|
|
374
|
+
}
|
|
375
|
+
ul,
|
|
376
|
+
li {
|
|
377
|
+
list-style: none;
|
|
378
|
+
padding: 0;
|
|
379
|
+
margin: 0;
|
|
380
|
+
}
|
|
381
|
+
li {
|
|
382
|
+
display: flex;
|
|
383
|
+
align-items: center;
|
|
384
|
+
justify-content: space-between;
|
|
385
|
+
padding: 8px;
|
|
386
|
+
border-bottom: 1px dotted #d9d9d9;
|
|
387
|
+
}
|
|
388
|
+
li > div:first-child {
|
|
389
|
+
flex: 1 1 auto;
|
|
390
|
+
white-space: nowrap;
|
|
391
|
+
overflow: hidden;
|
|
392
|
+
text-overflow: ellipsis;
|
|
393
|
+
}
|
|
394
|
+
li:last-child {
|
|
395
|
+
border-bottom: none;
|
|
396
|
+
}
|
|
397
|
+
a.toolbar {
|
|
398
|
+
font-size: 16px;
|
|
399
|
+
color: var(--ant-color-text-secondary);
|
|
400
|
+
}
|
|
401
|
+
`,tS=e=>{let{}=e,{schema:t,selectedItem:l,setSelectedItem:n,plugins:r,forceUpdate:a}=(0,ev.useContext)(te),o=(0,ev.useMemo)(()=>(r||[]).reduce((e,t)=>(e[t.key]=t,e),{}),[r]),d=(0,ev.useMemo)(()=>{let e=[],l=t=>{Array.isArray(t)&&t.forEach(t=>{e.push(t),Array.isArray(t.children)?l(t.children):"object"==typeof t.children&&t.children&&Object.keys(t.children).forEach(e=>l(t.children[e]))})};return l((null==t?void 0:t.items)||[]),e},[t]),c=(0,ev.useMemo)(()=>d.reduce((e,t)=>(t.id&&(e[t.id]=t),e),{}),[d]),u=e=>{l&&(n(Object.assign(l,{cascadeIds:e})),a())};return(0,eg.jsxs)(tw,{className:"cascade-panel",children:[(0,eg.jsx)(tm,{title:"联动",extra:(null==l?void 0:l.cascadeIds)?(0,eg.jsx)(q,{children:(0,eg.jsx)(_,{menu:{onClick:e=>{let{key:t}=e,n=[...(null==l?void 0:l.cascadeIds)||[]];n.push(String(t)),u&&u(n)},items:d.map(e=>{var t,l;return{key:e.id,label:(0,eg.jsxs)("a",{children:[(0,eg.jsx)(tx,{type:null==(t=o[e.type])?void 0:t.icon})," ",e.name||(null==(l=o[e.type])?void 0:l.label)," (",e.id,")"]})}})},placement:"bottomLeft",trigger:["click"],children:(0,eg.jsxs)("a",{className:"toolbar",children:[(0,eg.jsx)(y,{}),(0,eg.jsx)(i,{style:{fontSize:8,verticalAlign:"sub"}})]})})}):null}),(0,eg.jsx)("div",{className:"body",children:(null==l?void 0:l.cascadeIds)&&(0,eg.jsx)("ul",{children:(l.cascadeIds||[]).map((e,t)=>{var n,r,a,i,d;return(0,eg.jsxs)("li",{children:[(0,eg.jsxs)("div",{children:[(0,eg.jsx)(tx,{type:null==(n=o[null==(r=c[e])?void 0:r.type])?void 0:n.icon})," ",(null==(a=c[e])?void 0:a.name)||(null==(i=o[null==(d=c[e])?void 0:d.type])?void 0:i.label)," (",e,")"]}),(0,eg.jsx)(Y,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>{let e=[...l.cascadeIds||[]];e.splice(t,1),u&&u(e)},children:(0,eg.jsx)("a",{children:(0,eg.jsx)(s,{})})})]},e)})})})]})};var tz=ec(965),tk=ec.n(tz);let tI=()=>{let{schema:e}=(0,ev.useContext)(te),t=(0,ev.useMemo)(()=>JSON.stringify(e||{},null,2),[e]);return(0,eg.jsxs)("div",{className:"code-panel",style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,eg.jsx)(tm,{title:"代码",extra:(0,eg.jsx)(q,{children:(0,eg.jsx)(Q,{title:"复制到剪切板",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>{tk()(t||"")&&et.success("复制成功")},children:(0,eg.jsx)(o,{})})})})}),(0,eg.jsx)("div",{className:"body",style:{flex:"1 1 auto",display:"flex"},children:(0,eg.jsx)(er,{height:"100%",defaultLanguage:"json",value:t,options:{lineNumbers:"off",readOnly:!0,minimap:{enabled:!1}}})})]})},tO=(e,t,l,n)=>{(t.cascadeIds||[]).forEach(t=>{e.local[t]=e.local[t]||{},e.local[t][l]=n})},tN=(e,t,l)=>{let n={...e.global,...e.local[t.id||""]||{}};(t.cascadeIds||[]).forEach(e=>{let t=l[e];"function"==typeof t&&t(n)})},tD=t.div`
|
|
402
|
+
display: flex;
|
|
403
|
+
flex-direction: column;
|
|
404
|
+
height: 100%;
|
|
405
|
+
.body {
|
|
406
|
+
flex: 1 1 auto;
|
|
407
|
+
display: flex;
|
|
408
|
+
flex-direction: column;
|
|
409
|
+
gap: 12px;
|
|
410
|
+
padding: 12px;
|
|
411
|
+
}
|
|
412
|
+
.group-title {
|
|
413
|
+
font-size: 12px;
|
|
414
|
+
color: #ababab;
|
|
415
|
+
padding: 4px 12px;
|
|
416
|
+
}
|
|
417
|
+
.plugin-list {
|
|
418
|
+
display: flex;
|
|
419
|
+
flex-wrap: wrap;
|
|
420
|
+
gap: 20px 12px;
|
|
421
|
+
padding: 12px;
|
|
422
|
+
}
|
|
423
|
+
.plugin {
|
|
424
|
+
display: flex;
|
|
425
|
+
flex-direction: column;
|
|
426
|
+
align-items: center;
|
|
427
|
+
gap: 6px;
|
|
428
|
+
font-size: 14px;
|
|
429
|
+
width: calc(50% - 6px);
|
|
430
|
+
cursor: pointer;
|
|
431
|
+
user-select: none;
|
|
432
|
+
}
|
|
433
|
+
.plugin .icon {
|
|
434
|
+
font-size: 24px;
|
|
435
|
+
color: #191b35;
|
|
436
|
+
}
|
|
437
|
+
.plugin .label {
|
|
438
|
+
text-overflow: ellipsis;
|
|
439
|
+
white-space: nowrap;
|
|
440
|
+
overflow: hidden;
|
|
441
|
+
font-size: 12px;
|
|
442
|
+
}
|
|
443
|
+
`,tE=e=>{let{plugin:t}=e,l=(0,ev.useRef)(null);return(0,ev.useEffect)(()=>{let e=l.current;if(!e)return;let n=e7({element:e,getInitialData:()=>{let e={id:ea(),type:t.key,name:t.label,...JSON.parse(JSON.stringify(t.defaultOptions||{}))};return{id:e.id,data:e}},canDrag:()=>!0,onDragStart:()=>{},onDrop:()=>{}});return()=>n()},[]),(0,eg.jsxs)("div",{className:"plugin drag-move",ref:l,children:[(0,eg.jsx)(tx,{className:"icon",type:t.icon}),(0,eg.jsx)("div",{className:"label",children:t.label})]})},tT=()=>{let{plugins:e}=(0,ev.useContext)(te),t=(0,ev.useMemo)(()=>{let t=[];return e.forEach(e=>{let l=t.find(t=>t.group===e.group);l?l.items.push(e):t.push({group:e.group,items:[e]})}),t},[e]);return(0,eg.jsxs)(tD,{className:"component-panel",children:[(0,eg.jsx)(tm,{title:"组件库"}),(0,eg.jsx)("div",{className:"body",children:t.map(e=>(0,eg.jsxs)("div",{className:"plugin-group",children:[(0,eg.jsx)("div",{className:"group-title",children:e.group}),(0,eg.jsx)("div",{className:"plugin-list",children:e.items.map(e=>(0,eg.jsx)(tE,{plugin:e},e.key))})]},e.group))})]})},tA=t.div`
|
|
444
|
+
display: flex;
|
|
445
|
+
flex-direction: column;
|
|
446
|
+
height: 100%;
|
|
447
|
+
.body {
|
|
448
|
+
flex: 1 1 auto;
|
|
449
|
+
display: flex;
|
|
450
|
+
flex-direction: column;
|
|
451
|
+
gap: 12px;
|
|
452
|
+
padding: 12px;
|
|
453
|
+
overflow: auto;
|
|
454
|
+
}
|
|
455
|
+
ul,
|
|
456
|
+
li {
|
|
457
|
+
list-style: none;
|
|
458
|
+
padding: 0;
|
|
459
|
+
margin: 0;
|
|
460
|
+
}
|
|
461
|
+
li {
|
|
462
|
+
display: flex;
|
|
463
|
+
align-items: center;
|
|
464
|
+
justify-content: space-between;
|
|
465
|
+
padding: 8px;
|
|
466
|
+
border-bottom: 1px dotted #d9d9d9;
|
|
467
|
+
}
|
|
468
|
+
li > div:first-child {
|
|
469
|
+
flex: 1 1 auto;
|
|
470
|
+
white-space: nowrap;
|
|
471
|
+
overflow: hidden;
|
|
472
|
+
text-overflow: ellipsis;
|
|
473
|
+
}
|
|
474
|
+
li:last-child {
|
|
475
|
+
border-bottom: none;
|
|
476
|
+
}
|
|
477
|
+
.margin-bottom-0 {
|
|
478
|
+
margin-bottom: 0;
|
|
479
|
+
}
|
|
480
|
+
`,tB=()=>{let{schema:e,setSchema:t}=(0,ev.useContext)(te),[l,n]=(0,ev.useState)(!1),[r,a]=(0,ev.useState)(!1),[o,d]=(0,ev.useState)(-1),[u,p]=(0,ev.useState)({id:ea(),type:"api",name:"",url:"",method:"GET",headers:[],formData:[],body:""}),[x,h]=(0,ev.useState)({id:ea(),type:"sql",name:"",query:""}),m=(0,ev.useMemo)(()=>e.datasources,[e.datasources]),f=l=>{t({...e,datasources:l})},g=[{title:"键",dataIndex:"name",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.name,onChange:e=>{let t=[...u.headers];t[l]={...t[l],name:e.target.value},p({...u,headers:t})}})},{title:"值",dataIndex:"value",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.value,onChange:e=>{let t=[...u.headers];t[l]={...t[l],value:e.target.value},p({...u,headers:t})}})},{title:"操作",width:50,align:"center",render:(e,t,l)=>(0,eg.jsx)(q,{children:(0,eg.jsx)("a",{onClick:()=>{let e=[...u.headers];e.splice(l,1),p({...u,headers:e})},children:(0,eg.jsx)(s,{})})})}];return(0,eg.jsxs)(tA,{className:"datasource-panel",children:[(0,eg.jsx)(tm,{title:"数据源",extra:(0,eg.jsx)(q,{children:(0,eg.jsx)(_,{menu:{onClick:e=>{let{key:t}=e;"api"===t?(d(-1),p({id:ea(),type:"api",name:"",url:"",method:"GET",headers:[],formData:[],body:""}),n(!0)):(d(-1),h({id:ea(),type:"sql",name:"",query:""}),a(!0))},items:[{key:"api",label:(0,eg.jsx)("a",{children:"API接口"})},{key:"sql",label:(0,eg.jsx)("a",{children:"SQL查询"})}]},placement:"bottom",children:(0,eg.jsxs)("a",{className:"toolbar",children:[(0,eg.jsx)(y,{}),(0,eg.jsx)(i,{style:{fontSize:8,verticalAlign:"sub"}})]})})})}),(0,eg.jsx)("div",{className:"body",children:(0,eg.jsx)("ul",{children:m.map((e,t)=>(0,eg.jsxs)("li",{children:[(0,eg.jsxs)("div",{title:e.name,children:[(0,eg.jsx)(tx,{type:"icon-drag"})," ",e.name]}),(0,eg.jsxs)(q,{children:[(0,eg.jsx)("a",{onClick:()=>{d(t),"api"===e.type?(p({...e}),n(!0)):(h({...e}),a(!0))},children:(0,eg.jsx)(c,{})}),(0,eg.jsx)(Y,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>{let e;(e=[...m]).splice(t,1),f&&f(e)},children:(0,eg.jsx)("a",{children:(0,eg.jsx)(s,{})})})]})]},e.id))})}),(0,eg.jsx)(G,{title:"添加API接口",open:l,width:600,styles:{body:{maxHeight:"calc(100vh - 250px)",overflow:"auto"}},onCancel:()=>n(!1),footer:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(T,{type:"primary",onClick:()=>{if(!u.name||!u.url)return;let e=[...m];-1===o?e.push(u):e[o]=u,f&&f(e),n(!1)},children:"确定"}),(0,eg.jsx)(T,{onClick:()=>n(!1),children:"取消"})]}),children:(0,eg.jsxs)(M,{labelCol:{span:24},wrapperCol:{span:24},children:[(0,eg.jsx)(M.Item,{label:"接口名称",required:!0,children:(0,eg.jsx)($,{value:u.name,onChange:e=>p({...u,name:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"接口URL",required:!0,children:(0,eg.jsx)($,{value:u.url,onChange:e=>p({...u,url:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"请求方法",children:(0,eg.jsxs)(K.Group,{value:u.method,onChange:e=>p({...u,method:e.target.value}),children:[(0,eg.jsx)(K.Button,{value:"GET",children:"GET"}),(0,eg.jsx)(K.Button,{value:"POST",children:"POST"}),(0,eg.jsx)(K.Button,{value:"PUT",children:"PUT"}),(0,eg.jsx)(K.Button,{value:"DELETE",children:"DELETE"})]})}),(0,eg.jsx)("label",{style:{display:"block",color:"#000000d9",padding:"8px 0"},children:"请求头"}),(0,eg.jsx)(X,{columns:g,dataSource:u.headers,pagination:!1,locale:{emptyText:"暂无数据"},size:"small",bordered:!0,rowKey:(e,t)=>String(t)}),(0,eg.jsx)(T,{size:"small",block:!0,onClick:()=>p({...u,headers:[...u.headers,{name:"",value:""}]}),children:"添加"}),(0,eg.jsx)("label",{style:{display:"block",color:"#000000d9",padding:"8px 0"},children:"表单数据"}),(0,eg.jsx)(X,{columns:g,dataSource:u.formData,pagination:!1,locale:{emptyText:"暂无数据"},size:"small",bordered:!0,rowKey:(e,t)=>`f-${t}`}),(0,eg.jsx)(T,{size:"small",block:!0,onClick:()=>p({...u,formData:[...u.formData,{name:"",value:""}]}),children:"添加"}),(0,eg.jsx)(M.Item,{label:"请求体",children:(0,eg.jsx)("div",{style:{border:"1px solid var(--ant-color-border)",borderRadius:"var(--ant-border-radius)",padding:1},children:(0,eg.jsx)(er,{height:"300px",defaultLanguage:"json",value:u.body,onChange:e=>p({...u,body:e||""}),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})}),(0,eg.jsx)(G,{title:"添加SQL查询",open:r,width:600,styles:{body:{maxHeight:"calc(100vh - 250px)",overflow:"auto"}},onCancel:()=>a(!1),footer:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(T,{type:"primary",onClick:()=>{if(!x.name||!x.query)return;let e=[...m];-1===o?e.push(x):e[o]=x,f&&f(e),a(!1)},children:"确定"}),(0,eg.jsx)(T,{onClick:()=>a(!1),children:"取消"})]}),children:(0,eg.jsxs)(M,{layout:"vertical",children:[(0,eg.jsx)(M.Item,{label:"查询名称",required:!0,children:(0,eg.jsx)($,{value:x.name,onChange:e=>h({...x,name:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"查询语句",required:!0,children:(0,eg.jsx)("div",{style:{border:"1px solid var(--ant-color-border)",borderRadius:"var(--ant-border-radius)",padding:1},children:(0,eg.jsx)(er,{height:"300px",defaultLanguage:"sql",value:x.query,onChange:e=>h({...x,query:e||""}),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})})]})},tL=t.div`
|
|
481
|
+
display: flex;
|
|
482
|
+
flex-direction: column;
|
|
483
|
+
height: 100%;
|
|
484
|
+
.body {
|
|
485
|
+
flex: 1 1 auto;
|
|
486
|
+
display: flex;
|
|
487
|
+
flex-direction: column;
|
|
488
|
+
gap: 12px;
|
|
489
|
+
padding: 12px;
|
|
490
|
+
overflow: auto;
|
|
491
|
+
}
|
|
492
|
+
`,tP=t(Z)`
|
|
493
|
+
.ant-tree-draggable-icon {
|
|
494
|
+
display: none;
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
.ant-tree-title {
|
|
498
|
+
white-space: nowrap;
|
|
499
|
+
overflow: hidden;
|
|
500
|
+
text-overflow: ellipsis;
|
|
501
|
+
}
|
|
502
|
+
`,tR=()=>{let{schema:e,setSchema:t,selectedItem:l,setSelectedItem:n,plugins:r}=(0,ev.useContext)(te),[a,i]=(0,ev.useState)([]),o=(0,ev.useMemo)(()=>l?[l.id]:[],[l]),s=(0,ev.useMemo)(()=>{let t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.map(e=>{let l,{id:n,type:r,children:a}=e;return Array.isArray(a)?l=t(a):"object"==typeof a&&a&&(l=[],Object.keys(a).forEach(e=>{Array.isArray(a[e])&&l.push({key:ea(),type:"slot",slot:e,origin:a,children:t(a[e])})})),{key:n,title:r,item:e,type:r,children:l}})};return t(e.items)},[e]),d=(0,ev.useMemo)(()=>{let e=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t.map(t=>{var l,n,a;return{key:t.key,title:(0,eg.jsx)("span",{children:(l=t.type,n=t.slot,"slot"===l?"插槽-"+n:(null==(a=r.find(e=>e.key===l))?void 0:a.label)||l)}),children:t.children?e(t.children):void 0,dataRef:t}})};return e(s)},[s]);return(0,eg.jsxs)(tL,{className:"layer-panel",children:[(0,eg.jsx)(tm,{title:"图层",extra:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(Q,{title:"全部展开",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>{let t=[],l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e.forEach(e=>{var n;t.push(e.id),(null==(n=e.children)?void 0:n.length)&&l(e.children)})};l(e.items),i(t)},children:(0,eg.jsx)(b,{})})}),(0,eg.jsx)(Q,{title:"全部收起",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>i([]),children:(0,eg.jsx)(g,{})})})]})}),(0,eg.jsx)("div",{className:"body",children:(0,eg.jsx)(tP,{draggable:{icon:!1,nodeDraggable:e=>!1},showIcon:!1,showLine:{showLeafIcon:!1},treeData:d,selectedKeys:o,expandedKeys:a,onSelect:(e,t)=>{"slot"!==t.node.dataRef.type&&n&&n(t.node.dataRef.item)},onDrop:l=>{let n;if(!(e=>{let t=e.node,l=e.dragNode;if("slot"===l.dataRef.type||!e.dropToGap&&!["b-row","b-col","b-card","slot"].includes(t.dataRef.type))return!1;if("b-col"===l.dataRef.type)if(!e.dropToGap)return"b-row"===t.dataRef.type;else return"b-col"===t.dataRef.type;return("b-col"!==t.dataRef.type||!e.dropToGap)&&("b-row"!==t.dataRef.type||!!e.dropToGap)||"b-col"===l.dataRef.type})(l))return;let r=l.node.key,a=l.dragNode.key,i=l.node.pos.split("-"),o=l.dropPosition-Number(i[i.length-1]),s=(e,t,l)=>{e.forEach((e,n,r)=>{if(e.id===t)return(e.children=e.children||[],"slot"===e.type)?l(e,n,r,e.children[e.slot]):l(e,n,r,e.children);if(Array.isArray(e.children))return s(e.children,t,l);if("object"==typeof e.children)for(let n in e.children)Array.isArray(e.children[n])&&s(e.children[n],t,l)})},d=e.items;if(s(d,a,(e,t,l)=>{l.splice(t,1),n=e}),l.dropToGap)if((l.node.children||[]).length>0&&l.node.expanded&&1===o)s(d,r,(e,t,l)=>{e.children=e.children||[],e.children.unshift(n)});else{let e=[],t=0;s(d,r,(l,n,r)=>{e=r,t=n}),-1===o?e.splice(t,0,n):e.splice(t+1,0,n)}else{if("slot"===l.node.dataRef.type){let{slot:e,origin:t}=l.node.dataRef;console.log(e,JSON.stringify(t)),t[e]=t[e]||[],t[e].push(n)}s(d,r,e=>{e.children=e.children||[],e.children.push(n)})}t&&t({...e,items:d})},onExpand:e=>i(e)})})]})},t_=t.div`
|
|
503
|
+
display: flex;
|
|
504
|
+
flex-direction: column;
|
|
505
|
+
height: 100%;
|
|
506
|
+
.body {
|
|
507
|
+
flex: 1 1 auto;
|
|
508
|
+
display: flex;
|
|
509
|
+
flex-direction: column;
|
|
510
|
+
gap: 12px;
|
|
511
|
+
padding: 12px;
|
|
512
|
+
overflow: auto;
|
|
513
|
+
|
|
514
|
+
.ant-form-item-label {
|
|
515
|
+
text-align: left;
|
|
516
|
+
|
|
517
|
+
label {
|
|
518
|
+
display: inline;
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
.ant-form-item-control-input,
|
|
523
|
+
.ant-form-item-control-input-content {
|
|
524
|
+
text-align: end;
|
|
525
|
+
justify-content: flex-end;
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
`,tM=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=[],l=e=>{Array.isArray(e)&&e.forEach(e=>{t.push(e),Array.isArray(e.children)?l(e.children):"object"==typeof e.children&&e.children&&Object.keys(e.children).forEach(t=>l(e.children[t]))})};return l(e||[]),t},t$=()=>{var e;let{plugins:t,selectedItem:l,updateSelectedItem:n,schema:r,setSchema:a}=(0,ev.useContext)(te),i=(0,ev.useRef)(null),[o,d]=(0,ev.useState)("1"),c=(0,ev.useMemo)(()=>tM((null==r?void 0:r.items)||[]),[r]),u=(0,ev.useMemo)(()=>l&&c.find(e=>e.id===l.id),[c,l]),p=u?o:"1",x=(0,ev.useMemo)(()=>t.find(e=>e.key===(null==l?void 0:l.type)),[t,l]),m=null==x?void 0:x.formComponent,f=(null==l?void 0:l.props)||{},g=(null==l?void 0:l.style)||{},[v,j]=(0,ev.useState)((null==r?void 0:r.info)||{}),[y,b]=(0,ev.useState)((null==l?void 0:l.datasource)||{}),C=e=>{a({...r,info:e})},w={Authorization:`Bearer ${localStorage.getItem("ASKDATA_TOKEN")||""}`};return ev.default.useEffect(()=>{d(l?"2":"1"),b((null==l?void 0:l.datasource)||{})},[l]),(0,eg.jsxs)(t_,{className:"properties-panel",children:[(0,eg.jsx)(tm,{title:"属性",extra:(0,eg.jsxs)(K.Group,{value:p,size:"small",buttonStyle:"outline",onChange:e=>d(e.target.value),children:[(0,eg.jsx)(K.Button,{value:"1",children:"页面"}),u&&(0,eg.jsx)(K.Button,{value:"2",children:"组件"})]})}),(0,eg.jsxs)("div",{className:"body",children:["1"===p&&(0,eg.jsxs)(M,{labelCol:{span:24},wrapperCol:{span:24},children:[(0,eg.jsx)(M.Item,{label:"页面名称",children:(0,eg.jsx)($,{size:"small",value:null==v?void 0:v.name,placeholder:"请输入页面名称",onChange:e=>{let t={...v,name:e.target.value};j(t),C&&C(t)}})}),(0,eg.jsx)(M.Item,{label:"页面描述",children:(0,eg.jsx)($.TextArea,{size:"small",value:null==v?void 0:v.description,placeholder:"请输入页面描述",onChange:e=>{let t={...v,description:e.target.value};j(t),C&&C(t)}})}),(0,eg.jsxs)(M.Item,{label:"封面",children:[(0,eg.jsxs)(ee.Dragger,{name:"file",multiple:!1,accept:".png,.jpg,.jpeg",headers:w,action:"/api/datareport/upload",showUploadList:!1,beforeUpload:e=>e.type.startsWith("image/"),onChange:e=>{if("done"===e.file.status){var t;let l={url:null==(t=e.file.response)?void 0:t.data,name:e.file.name},n={...v,cover:l};j(n),C&&C(n)}},children:[(0,eg.jsx)("p",{className:"ant-upload-drag-icon",children:(0,eg.jsx)(h,{})}),(0,eg.jsx)("p",{className:"ant-upload-text",children:"点击或将文件拖拽到此区域进行上传"}),(0,eg.jsx)("p",{className:"ant-upload-hint",children:"严禁上传公司数据或其他被禁止的文件。"})]}),(null==v||null==(e=v.cover)?void 0:e.url)&&(0,eg.jsxs)("div",{style:{marginTop:10,textAlign:"left"},children:[(0,eg.jsxs)("div",{style:{display:"flex",justifyContent:"space-between"},children:[(0,eg.jsx)("label",{children:"封面预览"}),(0,eg.jsx)("a",{onClick:()=>{let e={...v,cover:null};j(e),C&&C(e)},children:(0,eg.jsx)(s,{})})]}),(0,eg.jsx)("img",{src:v.cover.url,style:{width:"100%",maxHeight:200}})]})]})]}),"2"===p&&(0,eg.jsxs)(eg.Fragment,{children:[(0,eg.jsx)(R,{children:"基础属性"}),(0,eg.jsxs)(M,{labelCol:{span:24},wrapperCol:{span:24},children:[(0,eg.jsx)(M.Item,{label:"组件标识",labelCol:{span:12},wrapperCol:{span:12},children:(null==l?void 0:l.id)||""}),(0,eg.jsx)(M.Item,{label:"组件名称",children:(0,eg.jsx)($,{size:"small",value:null==l?void 0:l.name,onChange:e=>n&&n({...l,name:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"组件描述",children:(0,eg.jsx)($.TextArea,{size:"small",value:null==l?void 0:l.description,onChange:e=>n&&n({...l,description:e.target.value})})})]}),(null==l?void 0:l.datasource)&&(0,eg.jsx)(R,{children:"数据源"}),(null==l?void 0:l.datasource)&&(0,eg.jsx)(M,{labelCol:{span:24},wrapperCol:{span:24},children:(0,eg.jsxs)(M.Item,{label:(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["数据来源",(0,eg.jsxs)(K.Group,{size:"small",value:null==y?void 0:y.source,onChange:e=>{let t={...y||{},source:e.target.value};b(t),n&&n({...l,datasource:t})},children:[(0,eg.jsx)(K.Button,{value:"define",children:"已定义数据源"}),(0,eg.jsx)(K.Button,{value:"custom",children:"自定义"})]})]}),children:[(null==y?void 0:y.source)==="define"&&(0,eg.jsxs)(eg.Fragment,{children:[(0,eg.jsx)(M.Item,{label:"数据源",labelCol:{span:24},wrapperCol:{span:24},children:(0,eg.jsx)(U,{size:"small",value:null==y?void 0:y.datasourceId,onChange:e=>{let t={...y||{},datasourceId:e};b(t),n&&n({...l,datasource:t})},children:((null==r?void 0:r.datasources)||[]).map(e=>(0,eg.jsx)(U.Option,{value:e.id,children:e.name},e.id))})}),(0,eg.jsx)(M.Item,{label:"数据处理脚本",labelCol:{span:24},wrapperCol:{span:24},children:(0,eg.jsx)(U,{size:"small",value:null==y?void 0:y.scriptId,onChange:e=>{let t={...y||{},scriptId:e};b(t),n&&n({...l,datasource:t})},children:((null==r?void 0:r.scripts)||[]).map(e=>(0,eg.jsx)(U.Option,{value:e.id,children:e.name},e.id))})})]}),(null==y?void 0:y.source)==="custom"&&(0,eg.jsx)(eg.Fragment,{children:(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["自定义",(0,eg.jsxs)("a",{onClick:()=>{var e,t;let l=null==(e=i.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:[(0,eg.jsx)(tx,{type:"icon-formate"})," 格式化"]})]}),labelCol:{span:24},wrapperCol:{span:24},children:(0,eg.jsx)("div",{style:{border:"1px solid var(--ant-color-border)",borderRadius:"var(--ant-border-radius)",padding:1},children:(0,eg.jsx)(er,{height:"200px",onMount:e=>{i.current={editor:e}},defaultLanguage:"json",value:null==y?void 0:y.custom,onChange:e=>{let t={...y||{},custom:e||""};b(t),n&&n({...l,datasource:t})},options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})})]})}),m&&(0,eg.jsx)(R,{children:"特有属性"}),m&&(0,eg.jsx)(m,{model:f,customStyle:g,onChange:e=>{l&&n&&n({...l,props:e})}})]})]})]})},tF=t.div`
|
|
529
|
+
display: flex;
|
|
530
|
+
flex-direction: column;
|
|
531
|
+
height: 100%;
|
|
532
|
+
.body {
|
|
533
|
+
flex: 1 1 auto;
|
|
534
|
+
display: flex;
|
|
535
|
+
flex-direction: column;
|
|
536
|
+
gap: 12px;
|
|
537
|
+
padding: 12px;
|
|
538
|
+
overflow: auto;
|
|
539
|
+
}
|
|
540
|
+
ul,
|
|
541
|
+
li {
|
|
542
|
+
list-style: none;
|
|
543
|
+
padding: 0;
|
|
544
|
+
margin: 0;
|
|
545
|
+
}
|
|
546
|
+
li {
|
|
547
|
+
display: flex;
|
|
548
|
+
align-items: center;
|
|
549
|
+
justify-content: space-between;
|
|
550
|
+
padding: 8px;
|
|
551
|
+
border-bottom: 1px dotted #d9d9d9;
|
|
552
|
+
}
|
|
553
|
+
li > div:first-child {
|
|
554
|
+
flex: 1 1 auto;
|
|
555
|
+
white-space: nowrap;
|
|
556
|
+
overflow: hidden;
|
|
557
|
+
text-overflow: ellipsis;
|
|
558
|
+
}
|
|
559
|
+
li:last-child {
|
|
560
|
+
border-bottom: none;
|
|
561
|
+
}
|
|
562
|
+
.function-wrapper {
|
|
563
|
+
color: #0000ff;
|
|
564
|
+
font-size: 14px;
|
|
565
|
+
padding: 0 50px;
|
|
566
|
+
}
|
|
567
|
+
`,tG=()=>{let{schema:e,setSchema:t}=(0,ev.useContext)(te),[l,n]=ev.default.useState(!1),[r,a]=ev.default.useState(-1),[i]=M.useForm(),o=(0,ev.useMemo)(()=>e.scripts||[],[e]),d=l=>{t({...e,scripts:l})},u=async()=>{let e=await i.validateFields().catch(()=>null);if(!e)return;let t=[...o];-1===r?t.push({id:Math.random().toString(36).slice(2,10),...e}):t[r]={...t[r],...e},d&&d(t),n(!1),a(-1),i.resetFields()};return(0,eg.jsxs)(tF,{className:"script-panel",children:[(0,eg.jsx)(tm,{title:"脚本",extra:(0,eg.jsx)(q,{children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>{a(-1),i.setFieldsValue({name:"",script:"return {};"}),n(!0)},children:"+"})})}),(0,eg.jsx)("div",{className:"body",children:(0,eg.jsx)("ul",{children:o.map((e,t)=>(0,eg.jsxs)("li",{children:[(0,eg.jsxs)("div",{title:e.name,children:[(0,eg.jsx)(tx,{type:"icon-drag"})," ",e.name]}),(0,eg.jsxs)(q,{children:[(0,eg.jsx)("a",{onClick:()=>{a(t),i.setFieldsValue({name:e.name,script:e.script}),n(!0)},children:(0,eg.jsx)(c,{})}),(0,eg.jsx)("a",{onClick:()=>{let e=[...o];e.splice(t,1),d&&d(e)},children:(0,eg.jsx)(s,{})})]})]},e.id||t))})}),(0,eg.jsx)(G,{title:"添加脚本",open:l,width:600,styles:{body:{maxHeight:"calc(100vh - 250px)",overflow:"auto"}},onCancel:()=>n(!1),footer:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(T,{type:"primary",onClick:u,children:"确定"}),(0,eg.jsx)(T,{onClick:()=>n(!1),children:"取消"})]}),children:(0,eg.jsxs)(M,{form:i,layout:"vertical",children:[(0,eg.jsx)(M.Item,{label:"脚本名称",name:"name",rules:[{required:!0,message:"请输入脚本名称"}],children:(0,eg.jsx)($,{})}),(0,eg.jsx)(M.Item,{label:"脚本语句",name:"script",rules:[{required:!0,message:"请输入脚本语句"}],children:(0,eg.jsxs)("div",{style:{border:"1px solid #d9d9d9",padding:"0 10px"},children:[(0,eg.jsxs)("div",{className:"function-wrapper",children:["function fixed(data) ","{"]}),(0,eg.jsx)(er,{height:"200px",defaultLanguage:"javascript",value:i.getFieldValue("script"),onChange:e=>i.setFieldsValue({script:e||""}),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}}),(0,eg.jsx)("div",{className:"function-wrapper",children:"}"})]})})]})})]})},tH=t.div`
|
|
568
|
+
display: flex;
|
|
569
|
+
flex-direction: column;
|
|
570
|
+
height: 100%;
|
|
571
|
+
.body {
|
|
572
|
+
flex: 1 1 auto;
|
|
573
|
+
display: flex;
|
|
574
|
+
flex-direction: column;
|
|
575
|
+
gap: 12px;
|
|
576
|
+
padding: 12px;
|
|
577
|
+
}
|
|
578
|
+
`,tY=()=>{let{schema:e,setSchema:t}=(0,ev.useContext)(te),[l,n]=ev.default.useState(!1),[r,a]=ev.default.useState(-1),[i]=M.useForm(),o=(0,ev.useMemo)(()=>e.variables||[],[e.variables]),d=l=>{t({...e,variables:l})},u=[{title:"名称",dataIndex:"name",render:(e,t)=>(0,eg.jsxs)("div",{title:e,children:[(0,eg.jsx)(tx,{type:"icon-drag"})," ",e]})},{title:"值",dataIndex:"value"},{title:"操作",width:60,align:"center",render:(e,t,l)=>(0,eg.jsxs)(q,{children:[(0,eg.jsx)("a",{onClick:()=>{a(l),i.setFieldsValue({name:t.name,value:t.value}),n(!0)},children:(0,eg.jsx)(c,{})}),(0,eg.jsx)(Y,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>{let e=[...o];e.splice(l,1),d&&d(e)},children:(0,eg.jsx)("a",{children:(0,eg.jsx)(s,{})})})]})}],p=async()=>{let e=await i.validateFields().catch(()=>null);if(!e)return;let t=[...o];-1===r?t.push({...e}):t[r]={...t[r],...e},d&&d(t),n(!1),a(-1),i.resetFields()};return(0,eg.jsxs)(tH,{children:[(0,eg.jsx)(tm,{title:"环境变量",extra:(0,eg.jsx)(q,{children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>{a(-1),i.resetFields(),n(!0)},children:"+"})})}),(0,eg.jsx)("div",{className:"body",children:(0,eg.jsx)(X,{rowKey:e=>e.id||e.name,dataSource:o,columns:u,pagination:!1,size:"small",locale:{emptyText:"暂无环境变量"}})}),(0,eg.jsx)(G,{title:"添加环境变量",open:l,width:600,styles:{body:{maxHeight:"calc(100vh - 250px)",overflow:"auto"}},onCancel:()=>n(!1),footer:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(T,{type:"primary",onClick:p,children:"确定"}),(0,eg.jsx)(T,{onClick:()=>n(!1),children:"取消"})]}),children:(0,eg.jsxs)(M,{form:i,layout:"vertical",children:[(0,eg.jsx)(M.Item,{label:"环境变量名称",name:"name",rules:[{required:!0,message:"请输入环境变量名称"}],children:(0,eg.jsx)($,{})}),(0,eg.jsx)(M.Item,{label:"环境变量值",name:"value",rules:[{required:!0,message:"请输入环境变量值"}],children:(0,eg.jsx)($,{})})]})})]})},tK=t.div`
|
|
579
|
+
height: 100%;
|
|
580
|
+
display: grid;
|
|
581
|
+
background: #ffffff;
|
|
582
|
+
* {
|
|
583
|
+
box-sizing: border-box;
|
|
584
|
+
}
|
|
585
|
+
& > div {
|
|
586
|
+
height: calc(100vh - 40px);
|
|
587
|
+
display: flex;
|
|
588
|
+
flex-direction: column;
|
|
589
|
+
}
|
|
590
|
+
& > .center {
|
|
591
|
+
background: #ebe7e7;
|
|
592
|
+
align-items: center;
|
|
593
|
+
min-width: 0;
|
|
594
|
+
|
|
595
|
+
.body {
|
|
596
|
+
flex: 1 1 auto;
|
|
597
|
+
overflow: auto;
|
|
598
|
+
position: relative;
|
|
599
|
+
background: #f3f3f3;
|
|
600
|
+
box-sizing: border-box;
|
|
601
|
+
max-width: 100%;
|
|
602
|
+
}
|
|
603
|
+
.body.desktop {
|
|
604
|
+
width: 100%;
|
|
605
|
+
}
|
|
606
|
+
.body.mobile,
|
|
607
|
+
.body.tablet {
|
|
608
|
+
padding: 0;
|
|
609
|
+
margin-top: 20px;
|
|
610
|
+
margin-bottom: 20px;
|
|
611
|
+
border-radius: 8px;
|
|
612
|
+
}
|
|
613
|
+
.body.tablet {
|
|
614
|
+
width: 1024px;
|
|
615
|
+
}
|
|
616
|
+
.body.mobile {
|
|
617
|
+
width: 430px;
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
& > .left,
|
|
622
|
+
& > .right {
|
|
623
|
+
transition: all 0.25s ease-in-out;
|
|
624
|
+
overflow: hidden;
|
|
625
|
+
}
|
|
626
|
+
& > .left {
|
|
627
|
+
border-right: 1px solid #e8e8e8;
|
|
628
|
+
display: flex;
|
|
629
|
+
flex-direction: row;
|
|
630
|
+
}
|
|
631
|
+
& > .left .body {
|
|
632
|
+
flex: 1 1 auto;
|
|
633
|
+
overflow: auto;
|
|
634
|
+
}
|
|
635
|
+
& > .right {
|
|
636
|
+
display: flex;
|
|
637
|
+
flex-direction: row;
|
|
638
|
+
border-left: 1px solid #e8e8e8;
|
|
639
|
+
}
|
|
640
|
+
& > .right .body {
|
|
641
|
+
flex: 1 1 auto;
|
|
642
|
+
display: flex;
|
|
643
|
+
flex-direction: column;
|
|
644
|
+
gap: 12px;
|
|
645
|
+
padding: 12px;
|
|
646
|
+
}
|
|
647
|
+
.left-pane-tabs > label,
|
|
648
|
+
.right-pane-tabs > label {
|
|
649
|
+
border: none;
|
|
650
|
+
height: 32px;
|
|
651
|
+
padding: 7px;
|
|
652
|
+
font-size: 20px;
|
|
653
|
+
padding: 0 12px;
|
|
654
|
+
border-radius: 0;
|
|
655
|
+
|
|
656
|
+
&:not(:first-child)::before {
|
|
657
|
+
content: none;
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
.left-pane-tabs > label.ant-radio-button-wrapper-checked {
|
|
661
|
+
border-left: solid 2px #1890ff;
|
|
662
|
+
background: linear-gradient(to right, #1890ff1a, #ffffff);
|
|
663
|
+
}
|
|
664
|
+
.right-pane-tabs > label.ant-radio-button-wrapper-checked {
|
|
665
|
+
border-right: solid 2px #1890ff;
|
|
666
|
+
background: linear-gradient(to left, #1890ff1a, #ffffff);
|
|
667
|
+
}
|
|
668
|
+
`,tW=ev.default.forwardRef((e,t)=>{var l;let n,{agentList:r=[],plugins:a=[],headerExtra:i}=e,o=(0,ev.useRef)(null),[s,c]=(0,ev.useState)(1),[x,h]=(0,ev.useState)([]),[m,f]=(0,ev.useState)([]),[g,j]=(0,ev.useState)(!1),[y,b]=(0,ev.useState)("desktop"),[S,I]=(0,ev.useState)("component"),[D,E]=(0,ev.useState)("ai"),[A,B]=(0,ev.useState)(!0),[L,P]=(0,ev.useState)(!0),[_,M]=(0,ev.useState)(null),[$,F]=(0,ev.useState)({info:{},datasources:[],scripts:[],variables:[],items:[]}),[G,H]=(0,ev.useState)(!0),Y=(0,ev.useMemo)(()=>{let e=A?"250px":"",t=L?"400px":"";return{gridTemplateColumns:`${e} 1fr ${t}`}},[A,L]),W=(0,ev.useMemo)(()=>({display:A?"flex":"none"}),[A]),U=(0,ev.useMemo)(()=>({display:L?"flex":"none"}),[L]);l=[$],(n=(0,ev.useRef)()).current===JSON.stringify(l)&&n.current||(n.current=JSON.stringify(l),(()=>{g||(h(e=>e.length?[...e,JSON.parse(JSON.stringify($))].slice(-50):[JSON.parse(JSON.stringify($))]),f([]))})()),(0,ev.useImperativeHandle)(t,()=>({handleOpen(e){j(!0),J(e.items),F(e),h([JSON.parse(JSON.stringify(e))]),f([]),setTimeout(()=>j(!1),0)}}));let J=(e,t)=>{e&&e.forEach(e=>{e.id||(e.id=t||Math.random().toString(36).slice(2,10)),Array.isArray(e.children)?J(e.children):"object"==typeof e.children&&e.children&&Object.keys(e.children).forEach(t=>{Array.isArray(e.children[t])&&J(e.children[t],Math.random().toString(36).slice(2,10))})})};return(0,eg.jsx)(tt,{designable:G,plugins:a,schema:$,selectedItem:_,setSchema:F,setSelectedItem:M,children:(0,eg.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 24px",borderBottom:"solid 1px #e8e8e8"},children:[(0,eg.jsxs)(q,{children:[(0,eg.jsx)("span",{style:{fontSize:16,fontWeight:500},children:"创建数据报表"}),(0,eg.jsx)(R,{orientation:"vertical"}),(0,eg.jsx)(Q,{title:"保存",children:(0,eg.jsx)("a",{className:"toolbar",children:(0,eg.jsx)(w,{})})}),(0,eg.jsx)(R,{orientation:"vertical"}),(0,eg.jsx)(Q,{title:"撤销",children:(0,eg.jsx)("a",{className:`toolbar ${x.length>1?"active":""}`,onClick:()=>{h(e=>{if(e.length<=1)return e;j(!0);let t=e[e.length-2];return f(e=>[...e,JSON.parse(JSON.stringify($))]),F(t),M(null),setTimeout(()=>j(!1),0),e.slice(0,-1)})},children:(0,eg.jsx)(k,{})})}),(0,eg.jsx)(Q,{title:"重做",children:(0,eg.jsx)("a",{className:`toolbar ${m.length>0?"active":""}`,onClick:()=>{f(e=>e.length?(j(!0),h(e=>[...e,JSON.parse(JSON.stringify($))]),F(e[e.length-1]),M(null),setTimeout(()=>j(!1),0),e.slice(0,-1)):e)},children:(0,eg.jsx)(C,{})})})]}),(0,eg.jsxs)(q,{children:[(0,eg.jsx)(Q,{title:"缩小",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>c(parseFloat(Math.max(s-.1,.5).toFixed(1))),children:(0,eg.jsx)(N,{})})}),(0,eg.jsxs)("div",{style:{fontSize:12,color:"#999",userSelect:"none"},children:[(100*s).toFixed(0),"%"]}),(0,eg.jsx)(Q,{title:"放大",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>c(parseFloat(Math.min(s+.1,2).toFixed(1))),children:(0,eg.jsx)(O,{})})}),(0,eg.jsx)(Q,{title:"重置缩放",children:(0,eg.jsx)("a",{className:"toolbar",onClick:()=>c(1),children:(0,eg.jsx)(tx,{type:"icon-zoom-reset"})})}),(0,eg.jsx)(R,{orientation:"vertical"}),(0,eg.jsx)(Q,{title:"切换左侧栏",children:(0,eg.jsx)("a",{className:`toolbar ${A?"active":""}`,onClick:()=>{B(e=>!e),setTimeout(()=>{var e,t;return null==(t=o.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,eg.jsx)(tx,{type:"icon-sider-l"})})}),(0,eg.jsx)(Q,{title:"切换右侧栏",children:(0,eg.jsx)("a",{className:`toolbar ${L?"active":""}`,onClick:()=>{P(e=>!e),setTimeout(()=>{var e,t;return null==(t=o.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,eg.jsx)(tx,{type:"icon-sider-r"})})}),i]})]}),(0,eg.jsxs)(tK,{style:Y,children:[(0,eg.jsxs)("div",{className:"left",style:W,children:[(0,eg.jsx)("div",{style:{padding:"22px 1px 22px 0",borderRight:"solid 1px #e8e8e8"},children:(0,eg.jsxs)(K.Group,{value:S,onChange:e=>I(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"left-pane-tabs",children:[(0,eg.jsx)(K.Button,{value:"component",children:(0,eg.jsx)(Q,{title:"组件",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-puzzle"})})}),(0,eg.jsx)(K.Button,{value:"layer",children:(0,eg.jsx)(Q,{title:"图层",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-outline"})})}),(0,eg.jsx)(K.Button,{value:"datasource",children:(0,eg.jsx)(Q,{title:"数据集",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-datasource"})})}),(0,eg.jsx)(K.Button,{value:"script",children:(0,eg.jsx)(Q,{title:"脚本",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-js"})})}),(0,eg.jsx)(K.Button,{value:"env",children:(0,eg.jsx)(Q,{title:"环境变量",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-variable"})})}),(0,eg.jsx)(K.Button,{value:"code",children:(0,eg.jsx)(Q,{title:"源码",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-json"})})})]})}),(0,eg.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:["component"===S&&(0,eg.jsx)(tT,{}),"layer"===S&&(0,eg.jsx)(tR,{}),"datasource"===S&&(0,eg.jsx)(tB,{}),"script"===S&&(0,eg.jsx)(tG,{}),"env"===S&&(0,eg.jsx)(tY,{}),"code"===S&&(0,eg.jsx)(tI,{})]})]}),(0,eg.jsxs)("div",{className:"center",style:{flex:"1 1 auto"},children:[(0,eg.jsx)(tm,{title:"页面",extra:(0,eg.jsxs)(q,{children:[(0,eg.jsx)(T,{size:"small",type:G?"default":"primary",icon:G?(0,eg.jsx)(u,{}):(0,eg.jsx)(p,{}),onClick:()=>H(!G)}),(0,eg.jsxs)(K.Group,{value:y,onChange:e=>b(e.target.value),size:"small",buttonStyle:"outline",children:[(0,eg.jsx)(K.Button,{value:"desktop",title:"桌面",children:(0,eg.jsx)(d,{})}),(0,eg.jsx)(K.Button,{value:"mobile",title:"移动设备",children:(0,eg.jsx)(v,{})}),(0,eg.jsx)(K.Button,{value:"tablet",title:"平板设备",children:(0,eg.jsx)(z,{})})]})]})}),(0,eg.jsx)("div",{className:["body",y].join(" "),children:(0,eg.jsx)("div",{style:{transform:`scale(${s})`,transformOrigin:"top center"},children:(0,eg.jsx)(tc,{ref:o,device:y})})})]}),(0,eg.jsxs)("div",{className:"right",style:U,children:[(0,eg.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:["ai"===D&&(0,eg.jsx)(tC,{agentList:r}),"props"===D&&(0,eg.jsx)(t$,{}),"cascade"===D&&(0,eg.jsx)(tS,{})]}),(0,eg.jsx)("div",{style:{padding:"22px 0",borderLeft:"solid 1px #e8e8e8"},children:(0,eg.jsxs)(K.Group,{value:D,onChange:e=>E(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"right-pane-tabs",children:[(0,eg.jsx)(K.Button,{value:"ai",children:(0,eg.jsx)(Q,{title:"智能体",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-assistant"})})}),(0,eg.jsx)(K.Button,{value:"props",children:(0,eg.jsx)(Q,{title:"属性",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-info"})})}),(0,eg.jsx)(K.Button,{value:"cascade",children:(0,eg.jsx)(Q,{title:"联动",placement:"right",children:(0,eg.jsx)(tx,{type:"icon-cascade"})})})]})})]})]})]})})}),tU=t(m)`
|
|
669
|
+
vertical-align: middle;
|
|
670
|
+
margin-left: 2px;
|
|
671
|
+
color: var(--ant-color-text-description);
|
|
672
|
+
`,tq=t.div`
|
|
673
|
+
width: 100%;
|
|
674
|
+
padding: 0 12px;
|
|
675
|
+
border-bottom: solid 1px #e8e8e8;
|
|
676
|
+
background: #ffffff;
|
|
677
|
+
height: 40px;
|
|
678
|
+
display: flex;
|
|
679
|
+
align-items: center;
|
|
680
|
+
justify-content: space-between;
|
|
681
|
+
.title {
|
|
682
|
+
display: flex;
|
|
683
|
+
flex-direction: column;
|
|
684
|
+
}
|
|
685
|
+
.title .main {
|
|
686
|
+
font-size: 14px;
|
|
687
|
+
}
|
|
688
|
+
.title .sub {
|
|
689
|
+
color: #999;
|
|
690
|
+
font-size: 12px;
|
|
691
|
+
}
|
|
692
|
+
`,tJ=(e,t)=>(0,ev.useMemo)(()=>{if(!t)return null;if("custom"===(t.source||"custom"))try{return JSON.parse(t.custom||"[]")}catch(e){}return null},[e,t]),tX=t.div`
|
|
693
|
+
box-sizing: border-box;
|
|
694
|
+
margin: 0;
|
|
695
|
+
padding: 0;
|
|
696
|
+
color: rgba(0, 0, 0, 0.85);
|
|
697
|
+
font-size: 14px;
|
|
698
|
+
line-height: 1.5715;
|
|
699
|
+
list-style: none;
|
|
700
|
+
display: flex;
|
|
701
|
+
flex-direction: column;
|
|
702
|
+
|
|
703
|
+
${e=>e.$bordered&&l`
|
|
704
|
+
border: 1px solid #d9d9d9;
|
|
705
|
+
border-radius: 2px;
|
|
706
|
+
`}
|
|
707
|
+
|
|
708
|
+
${e=>"vertical"===e.$itemLayout&&l`
|
|
709
|
+
flex-direction: column;
|
|
710
|
+
`}
|
|
711
|
+
`,tV=t.div`
|
|
712
|
+
display: flex;
|
|
713
|
+
align-items: center;
|
|
714
|
+
justify-content: space-between;
|
|
715
|
+
padding: ${e=>e.$padding||"12px 0"};
|
|
716
|
+
color: rgba(0, 0, 0, 0.85);
|
|
717
|
+
|
|
718
|
+
${e=>e.$split&&l`
|
|
719
|
+
border-bottom: 1px solid #f0f0f0;
|
|
720
|
+
&:last-child {
|
|
721
|
+
border-bottom: none;
|
|
722
|
+
}
|
|
723
|
+
`}
|
|
724
|
+
`,tQ=t.div`
|
|
725
|
+
display: flex;
|
|
726
|
+
flex: 1;
|
|
727
|
+
align-items: flex-start;
|
|
728
|
+
max-width: 100%;
|
|
729
|
+
`,tZ=t.div`
|
|
730
|
+
margin-right: 16px;
|
|
731
|
+
`,t0=t.div`
|
|
732
|
+
flex: 1 0;
|
|
733
|
+
width: 0;
|
|
734
|
+
color: rgba(0, 0, 0, 0.85);
|
|
735
|
+
`,t1=t.h4`
|
|
736
|
+
margin-bottom: 4px;
|
|
737
|
+
color: rgba(0, 0, 0, 0.85);
|
|
738
|
+
font-size: 14px;
|
|
739
|
+
line-height: 1.5715;
|
|
740
|
+
margin-top: 0;
|
|
741
|
+
|
|
742
|
+
> a {
|
|
743
|
+
color: rgba(0, 0, 0, 0.85);
|
|
744
|
+
transition: all 0.3s;
|
|
745
|
+
text-decoration: none;
|
|
746
|
+
cursor: pointer;
|
|
747
|
+
&:hover {
|
|
748
|
+
color: #1890ff;
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
`,t2=t.div`
|
|
752
|
+
color: rgba(0, 0, 0, 0.45);
|
|
753
|
+
font-size: 14px;
|
|
754
|
+
line-height: 1.5715;
|
|
755
|
+
`;t.div`
|
|
756
|
+
margin-top: 16px;
|
|
757
|
+
text-align: right;
|
|
758
|
+
padding: ${e=>e.$bordered?"0 24px 24px":"0"};
|
|
759
|
+
`;let t4=e=>{let{item:t,split:l,padding:n}=e;return(0,eg.jsx)(tV,{$split:l,$padding:n,children:(0,eg.jsxs)(tQ,{children:[t.avatar&&(0,eg.jsx)(tZ,{children:(0,eg.jsx)(E,{src:t.avatar})}),(0,eg.jsxs)(t0,{children:[t.title&&(0,eg.jsx)(t1,{children:t.href?(0,eg.jsx)("a",{href:t.href,children:t.title}):t.title}),t.description&&(0,eg.jsx)(t2,{children:t.description})]})]})})},t8=e=>{let{list:t=[],split:l,bordered:n,size:r,itemLayout:a,style:i,className:o}=e,s=(0,ev.useMemo)(()=>"small"===r?"8px 16px":n?"12px 24px":"12px 0",[r,n]);return(0,eg.jsx)(tX,{$bordered:n,$split:l,$size:r,style:i,$itemLayout:a,className:o,children:t.map((e,t)=>(0,eg.jsx)(t4,{item:e,split:l,padding:s},String(t)))})},t6=[{group:"基础组件",key:"b-text",label:"文本",icon:"icon-text",component:e=>{let{id:t,text:l,item:n,style:r={},className:a}=e;return(0,eg.jsx)("span",{id:t,style:{...(null==n?void 0:n.style)||{},...r},className:a,children:l})},formComponent:e=>{let{model:t,customStyle:l={},onChange:n}=e,r=(e,r)=>{let a={...l,[e]:r};n&&n({...t,customStyle:a})};return(0,eg.jsxs)(M,{children:[(0,eg.jsx)(M.Item,{label:"文本内容",children:(0,eg.jsx)($.TextArea,{size:"small",value:t.text,onChange:e=>{let l;return l=e.target.value,n&&n({...t,text:l})}})}),(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,eg.jsxs)($.Group,{compact:!0,children:[(0,eg.jsxs)(U,{size:"small",value:l.fontFamily,style:{width:90},onChange:e=>r("fontFamily",e),children:[(0,eg.jsx)(U.Option,{value:"'黑体', 'SimHei', sans-serif",children:"黑体"}),(0,eg.jsx)(U.Option,{value:"'宋体', 'SimSun', serif",children:"宋体"}),(0,eg.jsx)(U.Option,{value:"'仿宋', 'FangSong', serif",children:"仿宋"}),(0,eg.jsx)(U.Option,{value:"'楷体', 'KaiTi', serif",children:"楷体"}),(0,eg.jsx)(U.Option,{value:"Arial, sans-serif",children:"Arial"})]}),(0,eg.jsx)(U,{size:"small",value:l.fontSize,style:{width:90},onChange:e=>r("fontSize",e),children:["12px","14px","16px","20px","22px","24px","32px","48px"].map(e=>(0,eg.jsx)(U.Option,{value:e,children:e},e))}),(0,eg.jsx)($,{size:"small",type:"color",value:l.color,onChange:e=>r("color",e.target.value),style:{width:90}})]}),(0,eg.jsxs)($.Group,{compact:!0,children:[(0,eg.jsx)(T,{type:"bold"===l.fontWeight?"primary":void 0,size:"small",onClick:()=>r("fontWeight","bold"===l.fontWeight?"normal":"bold"),children:"B"}),(0,eg.jsx)(T,{type:"italic"===l.fontStyle?"primary":void 0,size:"small",onClick:()=>r("fontStyle","italic"===l.fontStyle?"normal":"italic"),children:"I"}),(0,eg.jsx)(T,{type:"underline"===l.textDecoration?"primary":void 0,size:"small",onClick:()=>r("textDecoration","underline"===l.textDecoration?"none":"underline"),children:"U"})]})]})]})},defaultOptions:{style:{fontSize:14,color:"#444444",fontFamily:"'宋体', 'SimSun', serif",fontWeight:"normal",fontStyle:"normal",textDecoration:"none"},props:{text:"文本内容"}}},{group:"基础组件",key:"b-image",label:"图片",icon:"icon-image",component:e=>{let{id:t,src:l,alt:n,width:r,height:a,href:i,className:o}=e,s=(0,eg.jsx)("img",{id:t,src:l,alt:n,style:{width:r,height:a},className:o});return i&&i.length?(0,eg.jsx)("a",{href:i,target:"_blank",rel:"noreferrer",children:s}):(0,eg.jsx)("div",{children:s})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r={Authorization:`Bearer ${localStorage.getItem("ASKDATA_TOKEN")||""}`};return(0,eg.jsxs)(M,{labelCol:{span:24},wrapperCol:{span:24},children:[(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["图片URL",(0,eg.jsx)(ee,{name:"file",multiple:!1,accept:".png,.jpg,.jpeg",headers:r,action:"/api/datareport/upload",showUploadList:!1,beforeUpload:e=>{let t=e.type.startsWith("image/");return t||et.error("上传封面只能是图片文件"),t},onChange:e=>{if("done"===e.file.status){var t;n("src",null==(t=e.file.response)?void 0:t.data),et.success("上传成功")}else"error"===e.file.status&&et.error("上传失败")},children:(0,eg.jsx)(T,{size:"small",type:"link",icon:(0,eg.jsx)(I,{})})})]}),children:(0,eg.jsx)($,{size:"small",value:t.src,onChange:e=>n("src",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"图片替代文本",children:(0,eg.jsx)($,{size:"small",value:t.alt,onChange:e=>n("alt",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"图片链接",children:(0,eg.jsx)($,{size:"small",value:t.href,onChange:e=>n("href",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"图片宽度",children:(0,eg.jsx)($,{size:"small",value:t.width,onChange:e=>n("width",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"图片高度",children:(0,eg.jsx)($,{size:"small",value:t.height,onChange:e=>n("height",e.target.value)})})]})},defaultOptions:{props:{src:"https://gw.alipayobjects.com/zos/rmsportal/JiqGstEfoWAOHiTxclqi.png",alt:"",href:"",width:"100%",height:"auto"}}},{group:"基础组件",key:"b-button",label:"按钮",icon:"icon-button",component:e=>{let{id:t,text:l="按钮",type:n="middle",icon:r,size:a,block:i=!1,shape:o="default",ghost:s=!1,item:d,style:c,className:u}=e,{env:p,callbacks:x}=(0,ev.useContext)(to),h="danger"===n,m="string"==typeof r?r?(0,eg.jsx)(tx,{type:r}):void 0:r;return(0,eg.jsx)(T,{id:t,type:h?"default":n,icon:m,size:a,block:i,shape:["round","circle"].includes(o)?o:void 0,ghost:s,danger:h,onClick:()=>{p&&d&&x&&tN(p,d,x)},style:c,className:u,children:l})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"文本",children:(0,eg.jsx)($,{size:"small",value:t.text,onChange:e=>n("text",e.target.value),placeholder:"请输入按钮文本"})}),(0,eg.jsx)(M.Item,{label:"图标",children:(0,eg.jsx)($,{size:"small",value:t.icon,onChange:e=>n("icon",e.target.value),placeholder:"请输入按钮图标(antdv 1.7.8)"})}),(0,eg.jsx)(M.Item,{label:"类型",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.type,onChange:e=>n("type",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"default",children:"默认"}),(0,eg.jsx)(K.Button,{value:"primary",children:"主要"}),(0,eg.jsx)(K.Button,{value:"link",children:"链接"}),(0,eg.jsx)(K.Button,{value:"dashed",children:"虚线"}),(0,eg.jsx)(K.Button,{value:"text",children:"文本"})]})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"形状",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.shape,onChange:e=>n("shape",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"default",children:"默认"}),(0,eg.jsx)(K.Button,{value:"round",children:"圆角"}),(0,eg.jsx)(K.Button,{value:"circle",children:"圆形"})]})}),(0,eg.jsx)(M.Item,{label:"块级",children:(0,eg.jsx)(J,{size:"small",checked:!!t.block,onChange:e=>n("block",e)})}),(0,eg.jsx)(M.Item,{label:"幽灵",children:(0,eg.jsx)(J,{size:"small",checked:!!t.ghost,onChange:e=>n("ghost",e)})})]})},defaultOptions:{props:{type:"primary",size:"default",shape:"default",block:!1,ghost:!1,text:"按钮文本",icon:""},cascadeIds:[]}},{group:"基础组件",key:"b-page-header",label:"页面标题",icon:"icon-page-header",component:e=>{let{id:t,title:l,subTitle:n,item:r,style:a={},className:i}=e,o=(0,ev.useMemo)(()=>!r.children||Array.isArray(r.children)||"object"!=typeof r.children?null:r.children.extra||[],[r]),[s,d]=(0,ev.useState)(o||[]);return(0,eg.jsxs)(tq,{id:t,style:{...a},className:i,children:[(0,eg.jsxs)("div",{className:"title",children:[(0,eg.jsx)("span",{className:"main",children:l}),n&&(0,eg.jsx)("span",{className:"sub",children:n})]}),(0,eg.jsx)("div",{children:(0,eg.jsx)(ta,{list:s,onListChange:e=>{let t=[...e];r.children.extra=t,d(t)}})})]})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{layout:"vertical",children:[(0,eg.jsx)(M.Item,{label:"标题",children:(0,eg.jsx)($,{size:"small",value:t.title,onChange:e=>n("title",e.target.value),placeholder:"请输入标题"})}),(0,eg.jsx)(M.Item,{label:"副标题",children:(0,eg.jsx)($,{size:"small",value:t.subTitle,onChange:e=>n("subTitle",e.target.value),placeholder:"请输入副标题"})})]})},defaultOptions:{props:{title:"标题",subTitle:"副标题"},children:{extra:[]}}},{group:"基础组件",key:"b-table",label:"数据表格",icon:"icon-table",component:e=>{let{id:t,dataSource:l=[],columns:n=[],pageSize:r=10,bordered:a=!0,size:i,showHeader:o=!0,style:s={},className:d}=e,c=!!r&&!(r<=l.length)&&{total:l.length,pageSize:r,size:i,showSizeChanger:!0,showQuickJumper:!0,hideOnSinglePage:!0,pageSizeOptions:["10","20","30","40"],showTotal:(e,t)=>`共 ${e} 条记录,显示第 ${t[0]}-${t[1]} 条`},u=n.map(e=>({...e,render:e.customRender&&("string"!=typeof e.customRender||""!==e.customRender.trim())?(t,l,n)=>Function("console","Math","Date","Array","Object","String","Number","Boolean","text","record","index",`
|
|
760
|
+
"use strict";
|
|
761
|
+
const window = undefined;
|
|
762
|
+
const document = undefined;
|
|
763
|
+
const global = undefined;
|
|
764
|
+
const process = undefined;
|
|
765
|
+
const require = undefined;
|
|
766
|
+
const module = undefined;
|
|
767
|
+
const exports = undefined;
|
|
768
|
+
${e.customRender}
|
|
769
|
+
`)(console,Math,Date,Array,Object,String,Number,Boolean,t,l,n):e.render}));return(0,eg.jsx)(X,{id:t,dataSource:l,columns:u,pagination:c,bordered:a,size:i,showHeader:"boolean"!=typeof o||o,rowKey:(e,t)=>String(t),style:{padding:1,...s},className:d})},formComponent:e=>{let{model:t,onChange:l}=e,i=(e,n)=>l&&l({...t,[e]:n}),o=(e,l)=>{let n=[...t.columns||[]];n[e]={...n[e],...l},i("columns",n)},[d,u]=(0,ev.useState)(!1),[p,x]=(0,ev.useState)(null),h=null!=p&&t.columns[p]?t.columns[p]:{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1},m=[{title:"列名",dataIndex:"title"},{title:"数据索引",dataIndex:"dataIndex"},{title:"操作",width:80,align:"center",render:(e,l,n)=>(0,eg.jsxs)(q,{children:[(0,eg.jsx)("a",{onClick:()=>{x(n),u(!0)},children:(0,eg.jsx)(c,{})}),(0,eg.jsx)("a",{onClick:()=>{let e;(e=[...t.columns||[]]).splice(n,1),i("columns",e)},children:(0,eg.jsx)(s,{})})]})}];return(0,eg.jsxs)("div",{children:[(0,eg.jsxs)(M,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>i("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"边框",children:(0,eg.jsx)(J,{size:"small",checked:!!t.bordered,onChange:e=>i("bordered",e)})}),(0,eg.jsx)(M.Item,{label:"显示表头",children:(0,eg.jsx)(J,{size:"small",checked:!!t.showHeader,onChange:e=>i("showHeader",e)})}),(0,eg.jsx)(M.Item,{label:"分页大小",children:(0,eg.jsx)(F,{size:"small",value:t.pageSize,onChange:e=>i("pageSize",e)})})]}),(0,eg.jsx)(R,{children:"表格列设置"}),(0,eg.jsx)(X,{size:"small",dataSource:t.columns,rowKey:(e,t)=>String(t),columns:m,pagination:!1,bordered:!0}),(0,eg.jsx)(T,{size:"small",onClick:()=>{i("columns",[...t.columns||[],{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1}])},block:!0,children:"添加列"}),(0,eg.jsx)(G,{title:"编辑列",open:d,footer:null,width:400,onCancel:()=>u(!1),children:(0,eg.jsx)(M,{layout:"vertical",children:(0,eg.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,eg.jsx)(M.Item,{label:"列名",children:(0,eg.jsx)($,{value:h.title,onChange:e=>o(p,{title:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"数据索引",children:(0,eg.jsx)($,{value:h.dataIndex,onChange:e=>o(p,{dataIndex:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"宽度",children:(0,eg.jsx)($,{value:h.width,onChange:e=>o(p,{width:e.target.value})})}),(0,eg.jsx)(M.Item,{label:"对齐",children:(0,eg.jsxs)(K.Group,{value:h.align,onChange:e=>o(p,{align:e.target.value}),children:[(0,eg.jsx)(K.Button,{value:"left",children:(0,eg.jsx)(r,{})}),(0,eg.jsx)(K.Button,{value:"center",children:(0,eg.jsx)(n,{})}),(0,eg.jsx)(K.Button,{value:"right",children:(0,eg.jsx)(a,{})})]})}),(0,eg.jsx)(M.Item,{label:"省略",children:(0,eg.jsx)(J,{checked:!!h.ellipsis,onChange:e=>o(p,{ellipsis:e})})})]})})})]})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:null},props:{size:"default",bordered:!0,showHeader:!0,pageSize:10,dataSource:[{name:"苹果",count:12},{name:"华为",count:803},{name:"OPPO",count:654},{name:"vivo",count:719}],columns:[{title:"品牌",dataIndex:"name"},{title:"日销量(件)",dataIndex:"count"}]}}},{group:"基础组件",key:"b-list",label:"列表",icon:"icon-unordered-list",component:e=>{let{id:t,pageSize:l=10,bordered:n=!0,size:r="default",itemLayout:a="horizontal",item:i,split:o=!0,style:s={},className:d}=e,c=tJ(t,i.datasource)||[],u=(0,ev.useMemo)(()=>!!l&&!(l<=c.length)&&{total:c.length,pageSize:l,size:"default"===r?void 0:r,showSizeChanger:!0,showQuickJumper:!0,hideOnSinglePage:!0,pageSizeOptions:["10","20","30","40"],showTotal:(e,t)=>`共 ${e} 条记录,显示第 ${t[0]}-${t[1]} 条`},[l,c.length,r]),p=["p-list",a?`p-list--${a}`:void 0,r?`p-list--${r}`:void 0,o?"p-list--split":void 0,n?"p-list--bordered":void 0,d];return(0,eg.jsxs)("div",{id:t,style:{display:"flex",flexDirection:"column",...s},className:p.filter(Boolean).join(" "),children:[(0,eg.jsx)(t8,{list:c,split:o,bordered:n,size:r,itemLayout:a}),u&&(0,eg.jsx)(H,{...u})]})},formComponent:e=>{let{model:t,onChange:l}=e,[n]=M.useForm();return(0,ev.useEffect)(()=>{n.setFieldsValue({size:t.size||"default",itemLayout:t.itemLayout||"horizontal",bordered:t.bordered??!1,split:t.split??!0,pageSize:t.pageSize||10})},[t,n]),(0,eg.jsxs)(M,{form:n,labelCol:{span:12},wrapperCol:{span:12},onValuesChange:e=>{null==l||l({...t,...e})},children:[(0,eg.jsx)(M.Item,{label:"大小",name:"size",children:(0,eg.jsxs)(K.Group,{size:"small",buttonStyle:"solid",children:[(0,eg.jsx)(K.Button,{value:"default",children:"默认"}),(0,eg.jsx)(K.Button,{value:"small",children:"小"})]})}),(0,eg.jsx)(M.Item,{label:"布局",name:"itemLayout",children:(0,eg.jsxs)(K.Group,{size:"small",buttonStyle:"solid",children:[(0,eg.jsx)(K.Button,{value:"horizontal",children:"水平"}),(0,eg.jsx)(K.Button,{value:"vertical",children:"垂直"})]})}),(0,eg.jsx)(M.Item,{label:"边框",name:"bordered",valuePropName:"checked",children:(0,eg.jsx)(J,{size:"small"})}),(0,eg.jsx)(M.Item,{label:"分割线",name:"split",valuePropName:"checked",children:(0,eg.jsx)(J,{size:"small"})}),(0,eg.jsx)(M.Item,{label:"分页大小",name:"pageSize",children:(0,eg.jsx)(F,{size:"small"})})]})},defaultOptions:{datasource:{source:"custom",custom:"[]"},props:{size:"default",itemLayout:"horizontal",bordered:!0,split:!0,pageSize:10}}},{group:"基础组件",key:"b-html",label:"HTML",icon:"icon-html",component:e=>{let{id:t,template:l="",item:n,style:r,className:a}=e,i=tJ(t,n.datasource),o=(0,ev.useMemo)(()=>Object.keys(i||{}),[i]),s=(0,ev.useMemo)(()=>o.map(e=>null==i?void 0:i[e]),[o,i]),d=(0,ev.useMemo)(()=>(l||"").replace(/{{\s*([^}]+)\s*}}/g,(e,t)=>{try{return Function(...o,`
|
|
770
|
+
"use strict";
|
|
771
|
+
const window = undefined;
|
|
772
|
+
const document = undefined;
|
|
773
|
+
const global = undefined;
|
|
774
|
+
const process = undefined;
|
|
775
|
+
const require = undefined;
|
|
776
|
+
const module = undefined;
|
|
777
|
+
const exports = undefined;
|
|
778
|
+
return ${t};
|
|
779
|
+
`)(...s)}catch{return""}}),[l,s]);return(0,eg.jsx)("div",{id:t,style:r,className:a,dangerouslySetInnerHTML:{__html:d}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,ev.useRef)(null);return(0,eg.jsx)("div",{children:(0,eg.jsx)(M,{layout:"vertical",children:(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["模板 ",(0,eg.jsx)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:"格式化"})]}),children:(0,eg.jsx)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:(0,eg.jsx)(er,{onMount:e=>{n.current={editor:e}},height:"300px",defaultLanguage:"html",value:t.template,onChange:e=>{let n;return n=e||"",l&&l({...t,template:n||""})},options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'{"name": "Confucius"}'},props:{dataSource:{name:"Confucius"},template:"<div>{{name}}, welcome to the world of programming.</div>"}}},{group:"基础组件",key:"b-echarts",label:"图表",icon:"icon-echarts",component:e=>{let{id:t,script:l="",item:n,height:r=400,style:a,className:i}=e,o=(0,ev.useRef)(null),[s,d]=(0,ev.useState)(null),c=tJ(t,n.datasource);return(0,ev.useEffect)(()=>{if(!o.current)return;let e=eo.init(o.current);d(e);let t=()=>e.resize();return window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t),e.dispose()}},[]),(0,ev.useEffect)(()=>{let e=(e=>{try{return JSON.parse(e)}catch(t){try{return Function("echarts","console","Math","Date","Array","Object","String","Number","Boolean","data",`
|
|
780
|
+
"use strict";
|
|
781
|
+
const window = undefined;
|
|
782
|
+
const document = undefined;
|
|
783
|
+
const global = undefined;
|
|
784
|
+
const process = undefined;
|
|
785
|
+
const require = undefined;
|
|
786
|
+
const module = undefined;
|
|
787
|
+
const exports = undefined;
|
|
788
|
+
${e}
|
|
789
|
+
`)(eo,console,Math,Date,Array,Object,String,Number,Boolean,c)}catch(e){return console.error("ECharts 配置解析失败:",e),null}}})(l);s&&e&&(s.setOption(e),setTimeout(()=>s.resize(),50))},[s,l]),(0,eg.jsx)("div",{id:t,style:{width:"100%",height:r,...a},className:i,children:(0,eg.jsx)("div",{ref:o,style:{width:"100%",height:r,...a}})})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,ev.useRef)(null);return(0,eg.jsx)(M,{labelCol:{span:24},wrapperCol:{span:24},children:(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["Echarts 渲染脚本 ",(0,eg.jsx)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:"格式化"})]}),children:(0,eg.jsxs)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:[(0,eg.jsxs)("div",{style:{color:"#0000ff",fontSize:14,padding:"0 50px"},children:["function getOptions(data) ","{"," "]}),(0,eg.jsx)(er,{onMount:e=>{n.current={editor:e}},height:"400px",defaultLanguage:"javascript",value:t.script,onChange:e=>{let n;return n=e||"",l&&l({...t,script:n||""})},options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}}),(0,eg.jsx)("div",{style:{color:"#0000ff",fontSize:14,padding:"0 50px"},children:"}"})]})})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'[{"name":"Mon","value":150},{"name":"Tue","value":230},{"name":"Wed","value":224},{"name":"Thu","value":218},{"name":"Fri","value":135},{"name":"Sat","value":147},{"name":"Sun","value":260}]'},props:{script:`
|
|
790
|
+
return {
|
|
791
|
+
xAxis: { type: 'category', data: data.map(i => i.name) },
|
|
792
|
+
yAxis: { type: 'value' },
|
|
793
|
+
series: [{ data: data.map(i => i.value), type: 'line' }]
|
|
794
|
+
}
|
|
795
|
+
`}}},{group:"表单组件",key:"b-input",label:"输入框",icon:"icon-form-input",component:e=>{let{id:t,var:l="",placeholder:n="",prefix:r,suffix:a,size:i,allowClear:o=!1,search:s=!1,item:d,value:c,onChange:u,onSearch:p,style:x={},className:h}=e,{env:m,callbacks:f}=(0,ev.useContext)(to),g=e=>{u&&u(e),m&&d&&l&&tO(m,d,l,e)};return s?(0,eg.jsx)($.Search,{id:t,value:c,size:i,allowClear:o,placeholder:n,onChange:e=>g(e.target.value),onSearch:()=>{p&&p(c||""),m&&d&&f&&tN(m,d,f)},style:{...x},className:h}):(0,eg.jsx)($,{id:t,value:c,size:i,allowClear:o,placeholder:n,prefix:"string"==typeof r?void 0:r,suffix:"string"==typeof a?void 0:a,onChange:e=>g(e.target.value),style:{...x},className:h})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"搜索框",children:(0,eg.jsx)(J,{size:"small",checked:!!t.search,onChange:e=>n("search",e)})}),(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value),placeholder:"请输入变量名"})}),(0,eg.jsx)(M.Item,{label:"占位符",children:(0,eg.jsx)($,{size:"small",value:t.placeholder,onChange:e=>n("placeholder",e.target.value),placeholder:"请输入占位符"})}),!t.search&&(0,eg.jsxs)(eg.Fragment,{children:[(0,eg.jsx)(M.Item,{label:"前缀",children:(0,eg.jsx)($,{size:"small",value:t.prefix,onChange:e=>n("prefix",e.target.value),placeholder:"请输入前缀"})}),(0,eg.jsx)(M.Item,{label:"后缀",children:(0,eg.jsx)($,{size:"small",value:t.suffix,onChange:e=>n("suffix",e.target.value),placeholder:"请输入后缀"})})]}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"清除图标",children:(0,eg.jsx)(J,{size:"small",checked:!!t.allowClear,onChange:e=>n("allowClear",e)})})]})},defaultOptions:{props:{var:"",size:"default",allowClear:!0,search:!1,prefix:"",suffix:"",placeholder:"请输入"},cascadeIds:[]}},{group:"表单组件",key:"b-input-number",label:"数字输入框",icon:"icon-form-input-number",component:e=>{let{id:t,var:l="",value:n,size:r,placeholder:a="请输入",min:i=0,max:o=Number.MAX_SAFE_INTEGER,step:s=1,precision:d=0,item:c,onChange:u,style:p={},className:x}=e,{env:h,callbacks:m}=(0,ev.useContext)(to);return(0,eg.jsx)(F,{id:t,value:n,placeholder:a,size:r,min:i,max:o,step:s,precision:d,onChange:e=>{var t;return t=e??void 0,void(u&&u(t),h&&c&&l&&tO(h,c,l,t),h&&c&&m&&tN(h,c,m))},style:{width:"100%",...p},className:x})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"最小值",children:(0,eg.jsx)(F,{size:"small",value:t.min,onChange:e=>n("min",e)})}),(0,eg.jsx)(M.Item,{label:"最大值",children:(0,eg.jsx)(F,{size:"small",value:t.max,onChange:e=>n("max",e)})}),(0,eg.jsx)(M.Item,{label:"步长",children:(0,eg.jsx)(F,{size:"small",value:t.step,onChange:e=>n("step",e)})})]})},defaultOptions:{props:{var:"",size:"default",allowClear:!0,prefix:"",suffix:"",placeholder:"请输入",step:1,min:0,max:100,precision:0},cascadeIds:[]}},{group:"表单组件",key:"b-select",label:"选择框",icon:"icon-form-select",component:e=>{let{id:t,var:l="",size:n,placeholder:r="请选择",allowClear:a=!1,multiple:i=!1,options:o=[],item:s,value:d,onChange:c,style:u={},className:p}=e,{env:x,callbacks:h}=(0,ev.useContext)(to);return(0,eg.jsx)(U,{id:t,value:d,size:n,placeholder:r,allowClear:a,mode:i?"multiple":void 0,options:o,onChange:e=>{c&&c(e),x&&s&&l&&tO(x,s,l,e),x&&s&&h&&tN(x,s,h)},style:{width:"100%",...u},className:p})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=(e,l,r)=>{let a=[...t.options||[]];a[e]={...a[e],[l]:r},n("options",a)},a=[{title:"选项标签",dataIndex:"label",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.label,onChange:e=>r(l,"label",e.target.value)})},{title:"选项值",dataIndex:"value",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.value,onChange:e=>r(l,"value",e.target.value)})},{title:"操作",render:(e,l,r)=>(0,eg.jsx)(q,{children:(0,eg.jsx)(T,{danger:!0,size:"small",onClick:()=>{let e;(e=[...t.options||[]]).splice(r,1),n("options",e)},children:(0,eg.jsx)(s,{})})})}];return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value),placeholder:"请输入变量名"})}),(0,eg.jsx)(M.Item,{label:"占位符",children:(0,eg.jsx)($,{size:"small",value:t.placeholder,onChange:e=>n("placeholder",e.target.value),placeholder:"请输入占位符"})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"清除图标",children:(0,eg.jsx)(J,{size:"small",checked:!!t.allowClear,onChange:e=>n("allowClear",e)})}),(0,eg.jsx)(M.Item,{label:"多选",children:(0,eg.jsx)(J,{size:"small",checked:!!t.multiple,onChange:e=>n("multiple",e)})}),(0,eg.jsxs)(M.Item,{children:[(0,eg.jsx)(X,{size:"small",dataSource:t.options,columns:a,pagination:!1,rowKey:(e,t)=>String(t),bordered:!0}),(0,eg.jsx)(T,{size:"small",block:!0,onClick:()=>{n("options",[...t.options||[],{label:"",value:""}])},children:"添加选项"})]})]})},defaultOptions:{props:{var:"",size:"default",allowClear:!0,multiple:!1,options:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}]},cascadeIds:[]}},{group:"表单组件",key:"b-capsule",label:"胶囊选择框",icon:"icon-form-capsule",component:e=>{let{id:t,var:l="",size:n="middle",options:r=[],item:a,onChange:i,style:o,className:s}=e,{env:d,callbacks:c}=(0,ev.useContext)(to);return(0,eg.jsx)("span",{id:t,children:(0,eg.jsx)(K.Group,{id:t,size:n,buttonStyle:"solid",onChange:e=>{var t;return t=e.target.value,void(i&&i(t),d&&a&&l&&tO(d,a,l,t),d&&a&&c&&tN(d,a,c))},style:o,className:s,children:r.map(e=>(0,eg.jsx)(K.Button,{value:e.value,children:e.label},e.value))})})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=(e,l,r)=>{let a=[...t.options||[]];a[e]={...a[e],[l]:r},n("options",a)},a=[{title:"选项标签",dataIndex:"label",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.label,onChange:e=>r(l,"label",e.target.value)})},{title:"选项值",dataIndex:"value",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.value,onChange:e=>r(l,"value",e.target.value)})},{title:"操作",render:(e,l,r)=>(0,eg.jsx)(q,{children:(0,eg.jsx)(T,{danger:!0,size:"small",onClick:()=>{let e;(e=[...t.options||[]]).splice(r,1),n("options",e)},children:(0,eg.jsx)(s,{})})})}];return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value),placeholder:"请输入变量名"})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsxs)(M.Item,{children:[(0,eg.jsx)(X,{size:"small",dataSource:t.options,columns:a,pagination:!1,rowKey:(e,t)=>String(t),bordered:!0}),(0,eg.jsx)(T,{size:"small",block:!0,onClick:()=>{n("options",[...t.options||[],{label:"",value:""}])},children:"添加选项"})]})]})},defaultOptions:{props:{var:"",size:"default",allowClear:!0,multiple:!1,options:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}]},cascadeIds:[]}},{group:"表单组件",key:"b-checkbox",label:"复选框",icon:"icon-form-checkbox",component:e=>{let{id:t,var:l="",layout:n="horizontal",lineNumber:r=3,options:a=[],item:i,onChange:o,style:s,className:d}=e,{env:c,callbacks:u}=(0,ev.useContext)(to),p={...s,display:"grid"===n?"grid":"flex",gap:"grid"===n?void 0:"8px",flexDirection:"vertical"===n?"column":"row",gridTemplateColumns:"grid"===n?`repeat(${r}, 1fr)`:void 0};return(0,eg.jsx)("span",{id:t,children:(0,eg.jsx)(B.Group,{onChange:e=>{o&&o(e),c&&i&&l&&tO(c,i,l,e),c&&i&&u&&tN(c,i,u)},style:p,className:d,children:a.map(e=>(0,eg.jsx)(B,{value:e.value,children:e.label},e.value))})})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=(e,l,r)=>{let a=[...t.options||[]];a[e]={...a[e],[l]:r},n("options",a)},a=[{title:"选项标签",dataIndex:"label",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.label,onChange:e=>r(l,"label",e.target.value)})},{title:"选项值",dataIndex:"value",render:(e,t,l)=>(0,eg.jsx)($,{size:"small",value:t.value,onChange:e=>r(l,"value",e.target.value)})},{title:"操作",render:(e,l,r)=>(0,eg.jsx)(q,{children:(0,eg.jsx)(T,{danger:!0,size:"small",onClick:()=>{let e;(e=[...t.options||[]]).splice(r,1),n("options",e)},children:(0,eg.jsx)(s,{})})})}];return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value),placeholder:"请输入变量名"})}),(0,eg.jsx)(M.Item,{label:"布局",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.layout,onChange:e=>n("layout",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"horizontal",children:"水平"}),(0,eg.jsx)(K.Button,{value:"vertical",children:"垂直"}),(0,eg.jsx)(K.Button,{value:"grid",children:"网格"})]})}),"grid"===t.layout&&(0,eg.jsx)(M.Item,{label:"网格行数",children:(0,eg.jsx)(F,{size:"small",value:t.lineNumber,onChange:e=>n("lineNumber",e),min:1,max:10})}),(0,eg.jsxs)(M.Item,{children:[(0,eg.jsx)(X,{size:"small",dataSource:t.options,columns:a,pagination:!1,rowKey:(e,t)=>String(t),bordered:!0}),(0,eg.jsx)(T,{size:"small",block:!0,onClick:()=>{n("options",[...t.options||[],{label:"",value:""}])},children:"添加选项"})]})]})},defaultOptions:{props:{var:"",layout:"horizontal",lineNumber:3,options:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}]},cascadeIds:[]}},{group:"表单组件",key:"b-date-picker",label:"日期选择器",icon:"icon-form-date-picker",component:e=>{let{id:t,var:l="",size:n,allowClear:r=!1,type:a="date",showTime:i=!1,value:o,item:s,onChange:d,style:c={},className:u}=e,{env:p,callbacks:x}=(0,ev.useContext)(to),h=e=>{d&&d(e),p&&s&&l&&tO(p,s,l,e),p&&s&&x&&tN(p,s,x)};if("time"===a){let e="string"==typeof o&&o?ei(o,"HH:mm"):void 0;return(0,eg.jsx)(V,{id:t,value:e,format:"HH:mm",placeholder:"请选择时间",size:n,allowClear:r,onChange:e=>h(e?e.format("HH:mm"):void 0),style:{...(null==s?void 0:s.style)||{},...c},className:u})}if("month"===a||"year"===a){let e="month"===a?"YYYY-MM":"YYYY",l="string"==typeof o&&o?ei(o,e):void 0;return(0,eg.jsx)(P,{id:t,picker:a,value:l,format:e,placeholder:"month"===a?"请选择月份":"请选择年份",size:n,allowClear:r,onChange:t=>h(t?t.format(e):void 0),onPanelChange:t=>h(t?t.format(e):void 0),style:{...(null==s?void 0:s.style)||{},...c},className:u})}if("range"===a){let e=i?"YYYY-MM-DD HH:mm":"YYYY-MM-DD",l=Array.isArray(o)&&o[0]?ei(o[0],e):void 0,a=Array.isArray(o)&&o[1]?ei(o[1],e):void 0;return(0,eg.jsx)(P.RangePicker,{id:t,value:[l,a],format:e,placeholder:["开始日期","结束日期"],size:n,allowClear:r,showTime:i,onChange:t=>h(t&&t[0]&&t[1]?[t[0].format(e),t[1].format(e)]:void 0),style:{...(null==s?void 0:s.style)||{},...c},className:u})}let m=i?"YYYY-MM-DD HH:mm":"YYYY-MM-DD",f="string"==typeof o&&o?ei(o,m):void 0;return(0,eg.jsx)(P,{id:t,value:f,format:m,placeholder:"请选择日期",size:n,allowClear:r,showTime:i,style:{...(null==s?void 0:s.style)||{},...c},className:u,onChange:e=>h(e?e.format(m):void 0)})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>n("var",e.target.value),placeholder:"请输入变量名"})}),(0,eg.jsx)(M.Item,{label:"类型",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.type,onChange:e=>n("type",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"date",children:"日期"}),(0,eg.jsx)(K.Button,{value:"time",children:"时间"}),(0,eg.jsx)(K.Button,{value:"month",children:"月份"}),(0,eg.jsx)(K.Button,{value:"year",children:"年份"}),(0,eg.jsx)(K.Button,{value:"range",children:"日期范围"})]})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"清除图标",children:(0,eg.jsx)(J,{size:"small",checked:!!t.allowClear,onChange:e=>n("allowClear",e)})}),(0,eg.jsx)(M.Item,{label:"显示时间",children:(0,eg.jsx)(J,{size:"small",checked:!!t.showTime,onChange:e=>n("showTime",e)})})]})},defaultOptions:{props:{var:"",size:"default",allowClear:!0,showTime:!1,type:"date"},cascadeIds:[]}},{group:"表单组件",key:"b-switch",label:"开关",icon:"icon-form-switch",component:e=>{let{id:t,var:l="",checked:n,disabled:r,size:a="default",checkedChildren:i,unCheckedChildren:o,item:s,onChange:d,style:c={},className:u}=e,{env:p,callbacks:x}=(0,ev.useContext)(to);return(0,eg.jsx)("span",{children:(0,eg.jsx)(J,{id:t,checked:n,disabled:r,size:"small"===a?"small":void 0,checkedChildren:i,unCheckedChildren:o,onChange:e=>{d&&d(e),p&&s&&l&&tO(p,s,l,e),p&&s&&x&&tN(p,s,x)},style:c,className:u})})},formComponent:e=>{let{model:t,onChange:l}=e;return(0,eg.jsx)(M,{labelCol:{span:6},wrapperCol:{span:18},children:(0,eg.jsx)(M.Item,{label:"变量名",children:(0,eg.jsx)($,{size:"small",value:t.var,onChange:e=>{let n;return n=e.target.value,l&&l({...t,var:n})},placeholder:"请输入变量名"})})})},defaultOptions:{props:{var:"",size:"default",checkedChildren:"开",unCheckedChildren:"关"},cascadeIds:[]}},{group:"容器组件",key:"b-space",label:"容器",icon:"icon-space",component:e=>{let{id:t,align:l="start",size:n="small",direction:r="horizontal",item:a,style:i={},className:o}=e,{designable:s}=(0,ev.useContext)(te),[d,c]=(0,ev.useState)(a.children||[]),u=(0,ev.useMemo)(()=>({...i,...a.style||{},alignItems:l,flexDirection:r,gap:n}),[a,l,n,r]);return(0,eg.jsx)(ta,{rootComponent:q,rootData:{id:t,style:u,className:o},list:d,item:a,onListChange:e=>{a.children=e,c(e)}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:6},wrapperCol:{span:18},children:[(0,eg.jsx)(M.Item,{label:"方向",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.direction,onChange:e=>n("direction",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"horizontal",children:"水平"}),(0,eg.jsx)(K.Button,{value:"vertical",children:"垂直"})]})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"small",children:"小"}),(0,eg.jsx)(K.Button,{value:"middle",children:"中"}),(0,eg.jsx)(K.Button,{value:"large",children:"大"})]})}),(0,eg.jsx)(M.Item,{label:"对齐",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.align,onChange:e=>n("align",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"start",children:"开始"}),(0,eg.jsx)(K.Button,{value:"end",children:"结束"}),(0,eg.jsx)(K.Button,{value:"center",children:"居中"}),(0,eg.jsx)(K.Button,{value:"baseline",children:"基线"})]})})]})},defaultOptions:{props:{align:"flex-start",direction:"row",size:"8px"},children:[]}},{group:"容器组件",key:"b-card",label:"卡片",icon:"icon-card",component:e=>{let{id:t,bordered:l=!1,size:n="default",title:r,hoverable:a=!1,shadow:i=!0,item:o,style:s,className:d}=e,c=(0,ev.useMemo)(()=>!o.children||Array.isArray(o.children)||"object"!=typeof o.children?null:o.children.title||[],[o]),[u,p]=(0,ev.useState)(c||[]),x=(0,ev.useMemo)(()=>!o.children||Array.isArray(o.children)||"object"!=typeof o.children?null:o.children.extra||[],[o]),[h,m]=(0,ev.useState)(x||[]),f=(0,ev.useMemo)(()=>o.children?Array.isArray(o.children)?o.children:"object"!=typeof o.children?null:o.children.body||[]:null,[o]),[g,v]=(0,ev.useState)(f||[]),j=(0,ev.useMemo)(()=>!o.children||Array.isArray(o.children)||"object"!=typeof o.children?null:o.children.actions||[],[o]),[y,b]=(0,ev.useState)(j||[]);return(0,eg.jsx)(A,{id:t,variant:l?"outlined":"borderless",size:n,hoverable:a,className:[i?"ant-card-shadow":void 0,d].filter(Boolean).join(" "),title:(null==r?void 0:r.length)&&!(null==c?void 0:c.length)?r:c?(0,eg.jsx)(ta,{list:u,onListChange:e=>{o.children.title=e,p(e)}}):r,extra:x&&(0,eg.jsx)(ta,{list:h,onListChange:e=>{o.children.extra=e,m(e)}}),actions:j&&[(0,eg.jsx)(ta,{list:y,onListChange:e=>{o.children.actions=e,b(e)}})],styles:{header:{borderBottom:"none"}},style:s,children:f&&(0,eg.jsx)(ta,{list:g,onListChange:e=>{Array.isArray(o.children)?o.children=e:o.children.body=e,v(e)}})})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eg.jsx)(M.Item,{label:"标题",children:(0,eg.jsx)($,{size:"small",value:t.title,onChange:e=>n("title",e.target.value)})}),(0,eg.jsx)(M.Item,{label:"边框",children:(0,eg.jsx)(J,{size:"small",checked:!!t.bordered,onChange:e=>n("bordered",e)})}),(0,eg.jsx)(M.Item,{label:"悬停效果",children:(0,eg.jsx)(J,{size:"small",checked:!!t.hoverable,onChange:e=>n("hoverable",e)})}),(0,eg.jsx)(M.Item,{label:"阴影",children:(0,eg.jsx)(J,{size:"small",checked:!!t.shadow,onChange:e=>n("shadow",e)})}),(0,eg.jsx)(M.Item,{label:"大小",children:(0,eg.jsxs)(K.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,eg.jsx)(K.Button,{value:"default",children:"默认"}),(0,eg.jsx)(K.Button,{value:"small",children:"小"})]})})]})},defaultOptions:{props:{title:"标题",bordered:!0,hoverable:!0,shadow:!0,size:"default"},children:{title:[],extra:[],body:[],actions:[]}}},{group:"容器组件",key:"b-row",label:"栅格行",icon:"icon-grid-row",component:e=>{let{id:t,gutter:l,item:n,style:r,className:a}=e,{designable:i}=(0,ev.useContext)(te),[o,s]=(0,ev.useState)(n.children||[]);return(0,eg.jsx)(ta,{rootComponent:W,rootData:{id:t,gutter:l,style:n.style||r,className:n.className||a},list:o,item:n,onListChange:e=>{n.children=e,s(e)}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=t.gutter||[0,0];return(0,eg.jsxs)(M,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eg.jsx)(M.Item,{label:"列间距",children:(0,eg.jsx)(F,{size:"small",value:r[0],min:0,step:4,onChange:e=>n("gutter",[e||0,r[1]])})}),(0,eg.jsx)(M.Item,{label:"行间距",children:(0,eg.jsx)(F,{size:"small",value:r[1],min:0,step:4,onChange:e=>n("gutter",[r[0],e||0])})})]})},defaultOptions:{props:{gutter:[12,12]},children:[]}},{group:"容器组件",key:"b-col",label:"栅格列",icon:"icon-grid-columns",component:e=>{let{id:t,span:l=24,xs:n,sm:r,md:a,lg:i,xl:o,xxl:s,item:d,style:c={},className:u}=e,{designable:p}=(0,ev.useContext)(te),{deviceWidth:x}=(0,ev.useContext)(to),[h,m]=(0,ev.useState)(d.children||[]),f=(0,ev.useMemo)(()=>{let e=x||1600,t=null;return e<576&&n&&(t=n),e>=576&&r&&(t=r),e>=768&&a&&(t=a),e>=992&&i&&(t=i),e>=1200&&o&&(t=o),e>=1600&&s&&(t=s),t||l},[n,r,a,i,o,s,l,x]);return(0,eg.jsx)(ta,{rootComponent:L,rootData:{id:t||d.id,span:f,style:{...d.style||{},...c},className:u},list:h,item:d,onListChange:e=>{d.children=e,m(e)}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n});return(0,eg.jsxs)(M,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eg.jsx)(M.Item,{label:"默认列数",children:(0,eg.jsx)(F,{size:"small",value:t.span,min:0,max:24,step:4,onChange:e=>n("span",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["xs ",(0,eg.jsx)(Q,{title:"<576px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.xs,min:0,max:24,step:4,onChange:e=>n("xs",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["sm ",(0,eg.jsx)(Q,{title:"≥576px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.sm,min:0,max:24,step:4,onChange:e=>n("sm",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["md ",(0,eg.jsx)(Q,{title:"≥768px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.md,min:0,max:24,step:4,onChange:e=>n("md",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["lg ",(0,eg.jsx)(Q,{title:"≥992px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.lg,min:0,max:24,step:4,onChange:e=>n("lg",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["xl ",(0,eg.jsx)(Q,{title:"≥1200px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.xl,min:0,max:24,step:4,onChange:e=>n("xl",e||0)})}),(0,eg.jsx)(M.Item,{label:(0,eg.jsxs)(eg.Fragment,{children:["xxl ",(0,eg.jsx)(Q,{title:"≥1600px 响应式栅格",children:(0,eg.jsx)(tU,{})})]}),children:(0,eg.jsx)(F,{size:"small",value:t.xxl,min:0,max:24,step:4,onChange:e=>n("xxl",e||0)})})]})},defaultOptions:{props:{xs:24,sm:12,md:12,lg:6,xl:6,xxl:6,span:8},children:[]}}]})();var ep=eu.Ho,ex=eu.ru,eh=eu.R3,em=eu.Ei,ef=eu.B7,eg=eu.V2,ev=eu.QE,ej=eu.NG,ey=eu.Wg,eb=eu.Nx;export{ep as DesignerContext,ex as DropContainer,eh as EnvContext,em as PageCanvas,ef as PageDesigner,eg as PageSchema,ev as PluginType,ej as PropEditorProps,ey as handleCallback,eb as plugins};
|