bi-sdk-react 0.0.21 → 0.0.22

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.
@@ -377,7 +377,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
377
377
  .conversation-list li small {
378
378
  white-space: nowrap;
379
379
  }
380
- `,t$=[],tF="bi-design",tY=e=>{let t,l,n,r,a,i,o,{agentList:s=t$,headExtra:d,style:u={},onEffect:p}=e,{pageId:x,schema:m,fetch:h,atItems:g,onRemoveAtItem:v}=(0,eO.useContext)(tu);if(!h)return null;let[j,b]=(0,eO.useState)(null),[w,C]=(0,eO.useState)([]),[S,z]=(0,eO.useState)([]),k=eO.default.useRef(null),I=()=>{setTimeout(()=>{k.current&&k.current.scrollToBottom()},100)},N=()=>{b(null),z([])},O=async e=>{q.confirm({title:"确认删除该对话吗?",okText:"确认",cancelText:"取消",onOk:async()=>{var t;await (null==(t=h.ai)?void 0:t.removeConversation(tF,x,e)),C(t=>t.filter(t=>t.id!==e)),z(t=>t.filter(t=>t.conversationId!==e)),j===e&&N()}})},T=async e=>{var t;b(e),C(t=>t.map(t=>({...t,isActived:t.id===e}))),z(await (null==(t=h.ai)?void 0:t.messageList(tF,x,e))||[])},E=async e=>{var t;let l={id:ex(),question:e.message,createdAt:new Date().toISOString(),files:e.files||[],agents:e.agents||[],atItems:g,sending:!0};z(e=>[...e,l]),I();let n=!j,{id:r,answer:a,createdAt:i,conversation:o}=await (null==(t=h.ai)?void 0:t.chat(tF,x,j,{...e,page:JSON.stringify(m),pageItems:g}));b((null==o?void 0:o.id)||""),C(e=>[n?o||{}:null,...e].filter(e=>null!==e)),Object.assign(l,{id:r,answer:a,createdAt:i,conversationId:(null==o?void 0:o.id)||"",sending:!1}),a.effect&&(null==p||p(a.effect)),z(e=>[...e]),I()},A=async e=>{var t;await (null==(t=h.ai)?void 0:t.removeMessage(tF,x,e)),z(t=>t.filter(t=>t.id!==e))},D=(t=new Date,l=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),(n=new Date(t)).setDate(t.getDate()-1),r=[],a=[],i=[],o=[],w.forEach(e=>{let s=new Date(e.createdAt);if(l(s,t))r.push(e);else if(l(s,n))a.push(e);else s.getFullYear()===t.getFullYear()&&s.getMonth()===t.getMonth()?i.push(e):o.push(e)}),[{title:"今天",items:r},{title:"昨天",items:a},{title:"本月内",items:i},{title:"很久以前",items:o}].filter(e=>e.items.length>0)),B=async()=>{try{var e,t;let l=await (null==(e=h.ai)?void 0:e.conversationList(tF,x));C(l||[]);let n=null==l?void 0:l.find(e=>e.isActived);if(n){b(n.id);let e=await (null==(t=h.ai)?void 0:t.messageList(tF,x,n.id));z(e||[])}}catch(e){console.error(e)}};return(0,eO.useEffect)(()=>{B()},[h]),(0,eO.useEffect)(()=>{I()},[]),(0,eN.jsxs)(tM,{style:u,children:[(0,eN.jsx)(tP,{title:"智能助理",extra:(0,eN.jsxs)(en,{children:[(0,eN.jsx)(es,{title:"新对话",placement:"topRight",children:(0,eN.jsx)("a",{onClick:N,children:(0,eN.jsx)(tS,{type:"icon-chat-plus"})})}),(0,eN.jsx)(W,{trigger:["click"],styles:{root:{boxShadow:"var(--ant-box-shadow-drawer-up)",backgroundColor:"#ffffff",borderRadius:"var(--ant-border-radius)"}},popupRender:()=>(0,eN.jsx)(tW,{children:D.map(e=>(0,eN.jsxs)("div",{className:"group",children:[(0,eN.jsx)("div",{className:"group-title",children:e.title}),(0,eN.jsx)("ul",{className:"group-list",children:e.items.map(e=>(0,eN.jsxs)("li",{className:e.isActived?"actived":"",children:[(0,eN.jsx)("a",{onClick:()=>T(e.id),children:e.name}),(0,eN.jsx)("small",{children:(0,eN.jsx)("a",{onClick:()=>O(e.id),children:(0,eN.jsx)(c,{})})})]},e.id))})]},e.title))}),placement:"topRight",children:(0,eN.jsx)("a",{children:(0,eN.jsx)(f,{})})}),d]}),style:{width:"initial"}}),(0,eN.jsxs)("div",{className:"body",children:[(0,eN.jsx)("div",{style:{flex:"1 1 auto",overflowY:"auto"},children:S.length?(0,eN.jsx)(tJ,{ref:k,list:S,onDeleteMessage:A}):(0,eN.jsx)(tG,{})}),0===S.length&&w.length>0&&(0,eN.jsx)(P,{title:"历史记录",size:"small",variant:"borderless",styles:{header:{padding:0,border:"none"},body:{padding:0}},style:{padding:"12px 12px 0 12px"},children:(0,eN.jsx)("ul",{className:"conversation-list",children:w.slice(0,3).map(e=>(0,eN.jsxs)("li",{children:[(0,eN.jsxs)("a",{children:[(0,eN.jsx)(y,{}),e.name]}),(0,eN.jsx)("small",{children:tN(e.createdAt)})]},e.id))})}),(0,eN.jsx)(tL,{agentList:s,style:{padding:12},atItems:g,onUploading:null==h?void 0:h.upload,onSubmit:E,onRemoveAtItem:v})]})]})},tH=t.div`
380
+ `,t$=[],tF="bi-design",tY=e=>{let t,l,n,r,a,i,o,{agentList:s=t$,headExtra:d,style:u={},onEffect:p}=e,{pageId:x,schema:m,fetch:h,atItems:g,onRemoveAtItem:v}=(0,eO.useContext)(tu);if(!h)return null;let[j,b]=(0,eO.useState)(null),[w,C]=(0,eO.useState)([]),[S,z]=(0,eO.useState)([]),k=eO.default.useRef(null),I=()=>{setTimeout(()=>{k.current&&k.current.scrollToBottom()},100)},N=()=>{b(null),z([])},O=async e=>{q.confirm({title:"确认删除该对话吗?",okText:"确认",cancelText:"取消",onOk:async()=>{var t;await (null==(t=h.ai)?void 0:t.removeConversation(tF,x,e)),C(t=>t.filter(t=>t.id!==e)),z(t=>t.filter(t=>t.conversationId!==e)),j===e&&N()}})},T=async e=>{var t;b(e),C(t=>t.map(t=>({...t,isActived:t.id===e}))),z(await (null==(t=h.ai)?void 0:t.messageList(tF,x,e))||[])},E=async e=>{var t;let l={id:ex(),question:e.message,createdAt:new Date().toISOString(),files:e.files||[],agents:e.agents||[],atItems:g,sending:!0};z(e=>[...e,l]),I();let n=!j,{id:r,answer:a,createdAt:i,conversation:o}=await (null==(t=h.ai)?void 0:t.chat(tF,x,j,{...e,page:JSON.stringify(m),pageItems:JSON.stringify(g||[])}));b((null==o?void 0:o.id)||""),C(e=>[n?o||{}:null,...e].filter(e=>null!==e)),Object.assign(l,{id:r,answer:a,createdAt:i,conversationId:(null==o?void 0:o.id)||"",sending:!1}),a.effect&&(null==p||p(a.effect)),z(e=>[...e]),I()},A=async e=>{var t;await (null==(t=h.ai)?void 0:t.removeMessage(tF,x,e)),z(t=>t.filter(t=>t.id!==e))},D=(t=new Date,l=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),(n=new Date(t)).setDate(t.getDate()-1),r=[],a=[],i=[],o=[],w.forEach(e=>{let s=new Date(e.createdAt);if(l(s,t))r.push(e);else if(l(s,n))a.push(e);else s.getFullYear()===t.getFullYear()&&s.getMonth()===t.getMonth()?i.push(e):o.push(e)}),[{title:"今天",items:r},{title:"昨天",items:a},{title:"本月内",items:i},{title:"很久以前",items:o}].filter(e=>e.items.length>0)),B=async()=>{try{var e,t;let l=await (null==(e=h.ai)?void 0:e.conversationList(tF,x));C(l||[]);let n=null==l?void 0:l.find(e=>e.isActived);if(n){b(n.id);let e=await (null==(t=h.ai)?void 0:t.messageList(tF,x,n.id));z(e||[])}}catch(e){console.error(e)}};return(0,eO.useEffect)(()=>{B()},[h]),(0,eO.useEffect)(()=>{I()},[]),(0,eN.jsxs)(tM,{style:u,children:[(0,eN.jsx)(tP,{title:"智能助理",extra:(0,eN.jsxs)(en,{children:[(0,eN.jsx)(es,{title:"新对话",placement:"topRight",children:(0,eN.jsx)("a",{onClick:N,children:(0,eN.jsx)(tS,{type:"icon-chat-plus"})})}),(0,eN.jsx)(W,{trigger:["click"],styles:{root:{boxShadow:"var(--ant-box-shadow-drawer-up)",backgroundColor:"#ffffff",borderRadius:"var(--ant-border-radius)"}},popupRender:()=>(0,eN.jsx)(tW,{children:D.map(e=>(0,eN.jsxs)("div",{className:"group",children:[(0,eN.jsx)("div",{className:"group-title",children:e.title}),(0,eN.jsx)("ul",{className:"group-list",children:e.items.map(e=>(0,eN.jsxs)("li",{className:e.isActived?"actived":"",children:[(0,eN.jsx)("a",{onClick:()=>T(e.id),children:e.name}),(0,eN.jsx)("small",{children:(0,eN.jsx)("a",{onClick:()=>O(e.id),children:(0,eN.jsx)(c,{})})})]},e.id))})]},e.title))}),placement:"topRight",children:(0,eN.jsx)("a",{children:(0,eN.jsx)(f,{})})}),d]}),style:{width:"initial"}}),(0,eN.jsxs)("div",{className:"body",children:[(0,eN.jsx)("div",{style:{flex:"1 1 auto",overflowY:"auto"},children:S.length?(0,eN.jsx)(tJ,{ref:k,list:S,onDeleteMessage:A}):(0,eN.jsx)(tG,{})}),0===S.length&&w.length>0&&(0,eN.jsx)(P,{title:"历史记录",size:"small",variant:"borderless",styles:{header:{padding:0,border:"none"},body:{padding:0}},style:{padding:"12px 12px 0 12px"},children:(0,eN.jsx)("ul",{className:"conversation-list",children:w.slice(0,3).map(e=>(0,eN.jsxs)("li",{children:[(0,eN.jsxs)("a",{children:[(0,eN.jsx)(y,{}),e.name]}),(0,eN.jsx)("small",{children:tN(e.createdAt)})]},e.id))})}),(0,eN.jsx)(tL,{agentList:s,style:{padding:12},atItems:g,onUploading:null==h?void 0:h.upload,onSubmit:E,onRemoveAtItem:v})]})]})},tH=t.div`
381
381
  flex: 1 1 auto;
382
382
  display: flex;
383
383
  align-items: center;
@@ -466,7 +466,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
466
466
  flex-direction: column;
467
467
  gap: 12px;
468
468
  padding-right: 8px;
469
-
469
+
470
470
  .msg {
471
471
  display: flex;
472
472
  flex-direction: column;
@@ -488,20 +488,21 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
488
488
  display: none;
489
489
  }
490
490
 
491
- &:hover .msg-tools {
492
- display: flex;
493
- }
494
-
495
491
  .msg-header {
496
492
  justify-content: flex-end;
497
493
  color: var(--ant-color-text-tertiary);
498
494
  padding: 4px 10px 8px 10px;
499
495
  }
500
-
496
+
501
497
  .msg-section {
502
498
  background: var(--ant-color-primary-bg);
503
499
  padding: 8px 10px;
504
500
  border-radius: var(--ant-border-radius);
501
+ position: relative;
502
+
503
+ &:hover .msg-tools {
504
+ display: flex;
505
+ }
505
506
  }
506
507
  }
507
508
  .assistant-message {
@@ -585,7 +586,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
585
586
  }
586
587
  }
587
588
  }
588
- `,tJ=(0,eO.forwardRef)((e,t)=>{let{list:l,onDeleteMessage:n}=e,r=(0,eO.useRef)(null),a=()=>{setTimeout(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},100)};return(0,eO.useImperativeHandle)(t,()=>({scrollToBottom:a})),(0,eN.jsx)(tK,{className:"message-list beautified_scrollbar",ref:r,children:l.map(e=>{var t,l,r,a,i,o,s,d,u,p;return(0,eN.jsxs)("div",{className:"msg",children:[(0,eN.jsxs)("div",{className:"user-message",children:[(0,eN.jsx)(en,{size:4,orientation:"vertical",className:"msg-tools",children:(0,eN.jsx)(V,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>n(e.id),children:(0,eN.jsx)(es,{title:"删除",children:(0,eN.jsx)(_,{type:"link",size:"small",icon:(0,eN.jsx)(c,{})})})})}),(0,eN.jsx)("div",{className:"msg-header",children:(0,eN.jsx)("span",{children:tN(e.createdAt)})}),(0,eN.jsxs)("div",{className:"msg-section",children:[(0,eN.jsx)("div",{className:"msg-content",children:e.question}),(null==(t=e.files)?void 0:t.length)||(null==(l=e.agents)?void 0:l.length)?(0,eN.jsxs)("div",{className:"msg-meta",children:[null==(r=e.files)?void 0:r.map(e=>(0,eN.jsxs)(ei,{color:"processing",children:[(0,eN.jsx)(tS,{type:"icon-paper-clip"})," ",e.name]},e.id)),null==(a=e.agents)?void 0:a.map(e=>(0,eN.jsxs)(ei,{color:"blue",children:[(0,eN.jsx)(tS,{type:"icon-at"})," ",e.name]},e.id)),null==(i=e.atItems)?void 0:i.map(e=>(0,eN.jsxs)(ei,{color:"blue",children:[(0,eN.jsx)(tS,{type:"icon-number"})," ",e.name]},e.id))]}):null]})]}),(0,eN.jsxs)("div",{className:"assistant-message",children:[(0,eN.jsx)("div",{className:"msg-header",children:(0,eN.jsxs)("span",{className:"msg-title",children:[(0,eN.jsx)(k,{})," 智能助理"]})}),(0,eN.jsx)("div",{className:"msg-section",children:e.sending?(0,eN.jsx)(el,{active:!0}):(0,eN.jsxs)(eN.Fragment,{children:[(0,eN.jsx)("div",{className:"msg-content",children:(null==(o=e.answer)?void 0:o.answer)||""}),!!(null==(d=e.answer)||null==(s=d.plans)?void 0:s.length)&&(0,eN.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,eN.jsx)("summary",{className:"msg-ai-meta-title",children:"PLANS:"}),(0,eN.jsx)("div",{className:"msg-ai-meta-list",children:e.answer.plans.map((e,t)=>(0,eN.jsx)(es,{title:e.description,children:(0,eN.jsx)(ei,{color:"blue",children:e.name})},t))})]}),!!(null==(p=e.answer)||null==(u=p.extra)?void 0:u.length)&&(0,eN.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,eN.jsx)("summary",{className:"msg-ai-meta-title",children:"ACTIONS:"}),(0,eN.jsx)("div",{className:"msg-ai-meta-list vertical",children:e.answer.extra.map((e,t)=>(0,eN.jsxs)("div",{className:"msg-ai-meta-list-item",children:[(0,eN.jsx)(ei,{color:"gold",children:e.element}),(0,eN.jsx)("span",{children:e.action})]},t))})]})]})})]})]},e.id)})})}),tU=t.div`
589
+ `,tJ=(0,eO.forwardRef)((e,t)=>{let{list:l,onDeleteMessage:n}=e,r=(0,eO.useRef)(null),a=()=>{setTimeout(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},100)};return(0,eO.useImperativeHandle)(t,()=>({scrollToBottom:a})),(0,eN.jsx)(tK,{className:"message-list beautified_scrollbar",ref:r,children:l.map(e=>{var t,l,r,a,i,o,s,d,u,p;return(0,eN.jsxs)("div",{className:"msg",children:[(0,eN.jsxs)("div",{className:"user-message",children:[(0,eN.jsx)("div",{className:"msg-header",children:(0,eN.jsx)("span",{children:tN(e.createdAt)})}),(0,eN.jsxs)("div",{className:"msg-section",children:[(0,eN.jsx)(en,{size:4,orientation:"vertical",className:"msg-tools",children:(0,eN.jsx)(V,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>n(e.id),children:(0,eN.jsx)(es,{title:"删除",children:(0,eN.jsx)(_,{type:"link",size:"small",icon:(0,eN.jsx)(c,{})})})})}),(0,eN.jsx)("div",{className:"msg-content",children:e.question}),(null==(t=e.files)?void 0:t.length)||(null==(l=e.agents)?void 0:l.length)?(0,eN.jsxs)("div",{className:"msg-meta",children:[null==(r=e.files)?void 0:r.map(e=>(0,eN.jsxs)(ei,{color:"processing",children:[(0,eN.jsx)(tS,{type:"icon-paper-clip"})," ",e.name]},e.id)),null==(a=e.agents)?void 0:a.map(e=>(0,eN.jsxs)(ei,{color:"blue",children:[(0,eN.jsx)(tS,{type:"icon-at"})," ",e.name]},e.id)),null==(i=e.atItems)?void 0:i.map(e=>(0,eN.jsxs)(ei,{color:"blue",children:[(0,eN.jsx)(tS,{type:"icon-number"})," ",e.name]},e.id))]}):null]})]}),(0,eN.jsxs)("div",{className:"assistant-message",children:[(0,eN.jsx)("div",{className:"msg-header",children:(0,eN.jsxs)("span",{className:"msg-title",children:[(0,eN.jsx)(k,{})," 智能助理"]})}),(0,eN.jsx)("div",{className:"msg-section",children:e.sending?(0,eN.jsx)(el,{active:!0}):(0,eN.jsxs)(eN.Fragment,{children:[(0,eN.jsx)("div",{className:"msg-content",children:(null==(o=e.answer)?void 0:o.answer)||""}),!!(null==(d=e.answer)||null==(s=d.plans)?void 0:s.length)&&(0,eN.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,eN.jsx)("summary",{className:"msg-ai-meta-title",children:"PLANS:"}),(0,eN.jsx)("div",{className:"msg-ai-meta-list",children:e.answer.plans.map((e,t)=>(0,eN.jsx)(es,{title:e.description,children:(0,eN.jsx)(ei,{color:"blue",children:e.name})},t))})]}),!!(null==(p=e.answer)||null==(u=p.extra)?void 0:u.length)&&(0,eN.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,eN.jsx)("summary",{className:"msg-ai-meta-title",children:"ACTIONS:"}),(0,eN.jsx)("div",{className:"msg-ai-meta-list vertical",children:e.answer.extra.map((e,t)=>(0,eN.jsxs)("div",{className:"msg-ai-meta-list-item",children:[(0,eN.jsx)(ei,{color:"gold",children:e.element}),(0,eN.jsx)("span",{children:e.action})]},t))})]})]})})]})]},e.id)})})}),tU=t.div`
589
590
  display: flex;
590
591
  flex-direction: column;
591
592
  height: 100%;
@@ -11,7 +11,7 @@ export type ChatRequestType = {
11
11
  name: string;
12
12
  }[] | null;
13
13
  page?: string | null;
14
- pageItems?: SchemaItemType[] | null;
14
+ pageItems?: string | null;
15
15
  };
16
16
  export type PageItemEffectType = {
17
17
  targetId: string;
@@ -1,5 +1,5 @@
1
1
  /*! For license information please see bi-sdk.umd.min.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@ant-design/icons"),require("echarts"),require("styled-components"),require("react"),require("antd"),require("uuid"),require("dayjs"),require("@monaco-editor/react")):"function"==typeof define&&define.amd?define(["@ant-design/icons","echarts","styled-components","react","antd","uuid","dayjs","@monaco-editor/react"],t):"object"==typeof exports?exports.BiSdk=t(require("@ant-design/icons"),require("echarts"),require("styled-components"),require("react"),require("antd"),require("uuid"),require("dayjs"),require("@monaco-editor/react")):e.BiSdk=t(e["@ant-design/icons"],e.echarts,e["styled-components"],e.react,e.antd,e.uuid,e.dayjs,e["@monaco-editor/react"])}(this,(e,t,l,n,r,a,i,o)=>(()=>{var s={290(e,t,l){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";var n=l(155),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){"use strict";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()}}},375(t){"use strict";t.exports=e},247(e){"use strict";e.exports=o},59(e){"use strict";e.exports=r},185(e){"use strict";e.exports=i},190(e){"use strict";e.exports=t},155(e){"use strict";e.exports=n},694(e){"use strict";e.exports=l},315(e){"use strict";e.exports=a}},d={};function c(e){var t=d[e];if(void 0!==t)return t.exports;var l=d[e]={exports:{}};return s[e].call(l.exports,l,l.exports,c),l.exports}c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},c.d=(e,t)=>{for(var l in t)c.o(t,l)&&!c.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:t[l]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var u={};return(()=>{"use strict";c.r(u),c.d(u,{EnvContext:()=>ex,PageCanvas:()=>ev,PageSchema:()=>o.PageSchema,PageContext:()=>eo,PageDesigner:()=>tu,PluginType:()=>o.PluginType,plugins:()=>tO,PropEditorProps:()=>s.PropEditorProps,PageProvider:()=>es,handleCallback:()=>ez,DropContainer:()=>em});var e,t,l,n,r,a,i,o={};c.r(o),c.d(o,{P:()=>tp});var s={};c.r(s);var d=c(848),p=c(155),m=c.n(p),x=c(694),h=c.n(x);function f(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 g(e,t){if(e){if("string"==typeof e)return f(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)?f(e,t):void 0}}function v(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)||g(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 y=c(951),j="data-pdnd-honey-pot";function b(e){return e instanceof Element&&e.hasAttribute(j)}function w(e){var t=v(document.elementsFromPoint(e.x,e.y),2),l=t[0],n=t[1];return l?b(l)?null!=n?n:null:l:null}function C(e){return(C="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 S(e,t,l){var n;return(n=function(e,t){if("object"!=C(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=C(n))return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"),(t="symbol"==C(n)?n:n+"")in e)?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function I(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 z(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?I(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):I(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function k(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 O(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 N(e){return function(e){if(Array.isArray(e))return f(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(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 T(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 R=T(function(){return navigator.userAgent.includes("Firefox")}),F=T(function(){var e=navigator.userAgent;return e.includes("AppleWebKit")&&!e.includes("Chrome")}),D={isLeavingWindow:Symbol("leaving"),isEnteringWindow:Symbol("entering")};if("undefined"!=typeof window&&F()){var A=E();(0,y.bindAll)(window,[{type:"dragstart",listener:function(){A.enterCount=0,A.isOverWindow=!0}},{type:"drop",listener:B},{type:"dragend",listener:B},{type:"dragenter",listener:function(e){A.isOverWindow||0!==A.enterCount||(e[D.isEnteringWindow]=!0),A.isOverWindow=!0,A.enterCount++}},{type:"dragleave",listener:function(e){A.enterCount--,A.isOverWindow&&0===A.enterCount&&(e[D.isLeavingWindow]=!0,A.isOverWindow=!1)}}],{capture:!0})}function E(){return{enterCount:0,isOverWindow:!1}}function B(){A=E()}function L(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 M=(e=function(e){return e()},t=[],l=null,(n=function(){for(var n=arguments.length,r=Array(n),a=0;a<n;a++)r[a]=arguments[a];t=r,l||(l=requestAnimationFrame(function(){l=null,e.apply(void 0,t)}))}).cancel=function(){l&&(cancelAnimationFrame(l),l=null)},n),P=(r=null,{schedule:function(e){r={frameId:requestAnimationFrame(function(){r=null,e()}),fn:e}},flush:function(){r&&(cancelAnimationFrame(r.frameId),r.fn(),r=null)}}),$={isActive:!1};function Y(){return!$.isActive}function _(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 H=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=e.dispatchEvent;if(Y()){var a,i,o=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=L(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});$.isActive=!0;var s={current:o};_({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}}),P.schedule(function(){a({eventName:"onDragStart",payload:{source:t,location:i}})})},dragUpdate:function(e){var n=e.current;P.flush(),M.cancel(),a({eventName:"onDropTargetChange",payload:{source:t,location:{initial:l,previous:r,current:n}}})},drag:function(e){var n=e.current;M(function(){P.flush(),a({eventName:"onDrag",payload:{source:t,location:{initial:l,previous:r,current:n}}})})},drop:function(e){var n=e.current,i=e.updatedSourcePayload;P.flush(),M.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,y.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&&(F()?!!F()&&t.hasOwnProperty(D.isLeavingWindow):null==n||(R()?"nodeName"in n&&n.ownerDocument!==document:n instanceof HTMLIFrameElement))})({dragLeave:e})&&(u({input:s.current.input,dropTargets:[]}),"external"===l.startedFrom&&m())}},{type:"drop",listener:function(e){(s.current={dropTargets:s.current.dropTargets,input:L(e)},s.current.dropTargets.length)?(e.preventDefault(),_({event:e,current:s.current.dropTargets}),d.drop({current:s.current,updatedSourcePayload:"external"===l.type?l.getDropPayload(e):null}),x()):m()}},{type:"dragend",listener:function(e){s.current={dropTargets:s.current.dropTargets,input:L(e)},m()}}].concat(N([{type:"pointermove",listener:(i=0,function(){i<20?i++:a()})},{type:"pointerdown",listener:a=m}])),{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=L(e),r=n({target:b(e.target)?w({x:t.clientX,y:t.clientY}):e.target,input:t,source:l.payload,current:s.current.dropTargets});r.length&&(e.preventDefault(),_({event:e,current:r})),u({dropTargets:r,input:t})}function m(){s.current.dropTargets.length&&u({dropTargets:[],input:s.current.input}),d.drop({current:s.current,updatedSourcePayload:null}),x()}function x(){$.isActive=!1,c()}},q=new Map;function G(){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 U(e,t){var l=t.attribute,n=t.value;return e.setAttribute(l,n),function(){return e.removeAttribute(l)}}function K(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 W(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?K(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):K(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function J(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 X(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)?X(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 X(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 V(e){return e.slice(0).reverse()}function Q(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 Z(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 ee=T(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")}),et="text/plain",el=new WeakMap,en=(a=null,{bindEvents:function(){return a=null,(0,y.bind)(window,{type:"pointermove",listener:function(e){a={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,i,o,s=n.location.initial.input,d=null!=a?a:{x:s.clientX,y:s.clientY};(r=document.createElement("div")).setAttribute(j,"true"),i=k({client:d}),Object.assign(r.style,z(z({backgroundColor:"transparent",position:"fixed",padding:0,margin:0,boxSizing:"border-box"},O({clientRect:i})),{},{pointerEvents:"auto",zIndex:0x7fffffff})),document.body.appendChild(r),o=(0,y.bind)(window,{type:"pointermove",listener:function(e){i=k({client:{x:e.clientX,y:e.clientY}}),Object.assign(r.style,O({clientRect:i}))},options:{capture:!0}}),e=function(e){var t,l,n,a=e.current;if(o(),l=(t={client:a,clientRect:i}).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,y.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 c,u=n.location.current.input;null==(c=e)||c({current:{x:u.clientX,y:u.clientY}}),e=null,a=null}}}}),er=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 Q(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)?Q(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?Z(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):Z(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}({},n);return e.add(r),l(r),T(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=J(r.location.current.dropTargets);try{for(a.s();!(t=a.n()).done;){var i,o=t.value,s=n.get(o.element),d=W(W({},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=J(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=W(W({},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 m,x=J(l.location.current.dropTargets);try{for(x.s();!(m=x.n()).done;){var h,f,g=m.value;if(!a.has(g.element)){var v=W(W({},l),{},{self:g}),y=n.get(g.element);null==y||null==(h=y.onDropTargetChange)||h.call(y,v),null==y||null==(f=y.onDragEnter)||f.call(y,v)}}}catch(e){x.e(e)}finally{x.f()}}};return{dropTargetForConsumers:function(e){return T(G(U(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,m=void 0===p?[]:p;if(null==c)return m;if(!(c instanceof Element))return c instanceof Node?e({source:d,target:c.parentElement,input:u,result:m}):m;var x=c.closest(a);if(null==x)return m;var h=n.get(x);if(null==h)return m;var f={input:u,source:d,element:h.element};if(h.canDrop&&!h.canDrop(f))return e({source:d,target:h.element.parentElement,input:u,result:m});var g=null!=(r=null==(i=h.getData)?void 0:i.call(h,f))?r:{},v=null!=(o=null==(s=h.getDropEffect)?void 0:s.call(h,f))?o:l,y={data:g,element:h.element,dropEffect:v,isActiveDueToStickiness:!1};return e({source:d,target:h.element.parentElement,input:u,result:[].concat(N(m),[y])})}({source:t,target:r,input:i});if(s.length>=o.length)return s;for(var d=V(o),c=V(s),u=[],p=0;p<d.length;p++){var m,x=d[p],h=c[p];if(null!=h){u.push(h);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(x.element);if(!v)break;var y={input:i,source:t,element:v.element};if(v.canDrop&&!v.canDrop(y)||!(null!=(m=v.getIsSticky)&&m.call(v,y)))break;u.push(W(W({},x),{},{isActiveDueToStickiness:!0}))}return V(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){H({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=q.get(t);if(n)return n.usageCount++,n;var r={typeKey:t,unmount:l(),usageCount:1};return q.set(t,r),r}(e={typeKey:t,mount:function(){return l({canStart:Y,start:d})}}),function(){n.usageCount--,n.usageCount>0||(n.unmount(),q.delete(e.typeKey))}},dropTarget:o.dropTargetForConsumers,monitor:i.monitorForConsumers}}({typeKey:"element",defaultDropEffect:"move",mount:function(e){return G(en.bindEvents(),(0,y.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=el.get(s);if(d){var c=L(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=w({x:c.clientX,y:c.clientY});if(!d.dragHandle.contains(p))return void t.preventDefault()}var m=null!=(n=null==(r=d.getInitialDataForExternal)?void 0:r.call(d,u))?n:null;if(m)for(var x=0,h=Object.entries(m);x<h.length;x++){var f=v(h[x],2),g=f[0],y=f[1];t.dataTransfer.setData(g,null!=y?y:"")}!ee()||t.dataTransfer.types.includes(et)||t.dataTransfer.types.includes("text/uri-list")||t.dataTransfer.setData(et,"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=el.get(r.source.element))||null==(l=t[n])||l.call(t,r)},onPostDispatch:en.getOnPostDispatch()}),ea=er.dropTarget;function ei(e){return T(G(er.registerUsage(),(el.set(e.element,e),function(){el.delete(e.element)}),U(e.element,{attribute:"draggable",value:"true"})))}er.monitor;let eo=(0,p.createContext)({pageId:"",designable:!1,plugins:[],schema:{info:{},datasources:[],scripts:[],variables:[],items:[]},selectedItem:null,atItems:null,setSchema:()=>{},setSelectedItem:()=>{},updateSelectedItem:()=>{},forceUpdate:()=>{},onAddAtItem:()=>{},onRemoveAtItem:()=>{},datasetSelector:void 0,fetch:void 0}),es=e=>{let{pageId:t,designable:l,plugins:n,schema:r,selectedItem:a,setSchema:i,setSelectedItem:o,datasetSelector:s,fetch:c,children:u}=e,[m,x]=(0,p.useState)([]);return(0,d.jsx)(eo.Provider,{value:{pageId:t,designable:!!l,plugins:n||[],schema:r,selectedItem:a,atItems:m,setSchema:i||(()=>{}),setSelectedItem:o||(()=>{}),updateSelectedItem:e=>{null==o||o(Object.assign(a,e||{})),null==i||i({...r})},datasetSelector:s,fetch:c,forceUpdate:()=>{null==i||i({...r})},onAddAtItem:e=>{null!=m&&m.includes(e)||x([...m,e])},onRemoveAtItem:(e,t)=>{x(m.filter(t=>t!==e))}},children:u})},ed=e=>{var t;let{item:l,onDelete:n,parentList:r,onListChange:a,index:i}=e,{designable:o,selectedItem:s,setSelectedItem:c,plugins:u,onAddAtItem:m}=(0,p.useContext)(eo),[x,h]=(0,p.useState)(!1),f=null==(t=u.find(e=>e.key===l.type))?void 0:t.component;return((0,p.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="1000",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");o.innerText="#",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",o.setAttribute("title","添加到对话"),n.appendChild(o),o.addEventListener("click",e=>{e.stopPropagation(),m&&m(l)});let s=document.createElement("a");return s.innerText="X",s.style.background="#1890ff",s.style.color="#fff",s.style.fontSize="12px",s.style.borderTopLeftRadius="4px",s.style.borderTopRightRadius="4px",s.style.padding="2px 8px",s.style.cursor="pointer",s.style.userSelect="none",s.setAttribute("title","删除"),n.appendChild(s),s.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,p.useEffect)(()=>{let e=document.getElementById(`page-item-${l.id}`);if(!e||!o)return;let t=ei({element:e,getInitialData:()=>({id:l.id,index:i,list:r,onListChange:a,data:l}),canDrag:()=>!!o,onDragStart:()=>{h(!0)},onDrop:()=>{h(!1)}}),n=e=>{e.stopPropagation(),c&&c(l)};return o&&e.addEventListener("click",n),()=>{t(),o&&e.removeEventListener("click",n)}},[o,l,i,r]),f)?(0,d.jsx)(f,{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:x?.5:1}}):null},ec=h().div`
2
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@ant-design/icons"),require("echarts"),require("styled-components"),require("react"),require("antd"),require("uuid"),require("dayjs"),require("@monaco-editor/react")):"function"==typeof define&&define.amd?define(["@ant-design/icons","echarts","styled-components","react","antd","uuid","dayjs","@monaco-editor/react"],t):"object"==typeof exports?exports.BiSdk=t(require("@ant-design/icons"),require("echarts"),require("styled-components"),require("react"),require("antd"),require("uuid"),require("dayjs"),require("@monaco-editor/react")):e.BiSdk=t(e["@ant-design/icons"],e.echarts,e["styled-components"],e.react,e.antd,e.uuid,e.dayjs,e["@monaco-editor/react"])}(this,(e,t,l,n,r,a,i,o)=>(()=>{var s={290(e,t,l){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";var n=l(155),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){"use strict";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()}}},375(t){"use strict";t.exports=e},247(e){"use strict";e.exports=o},59(e){"use strict";e.exports=r},185(e){"use strict";e.exports=i},190(e){"use strict";e.exports=t},155(e){"use strict";e.exports=n},694(e){"use strict";e.exports=l},315(e){"use strict";e.exports=a}},d={};function c(e){var t=d[e];if(void 0!==t)return t.exports;var l=d[e]={exports:{}};return s[e].call(l.exports,l,l.exports,c),l.exports}c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},c.d=(e,t)=>{for(var l in t)c.o(t,l)&&!c.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:t[l]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var u={};return(()=>{"use strict";c.r(u),c.d(u,{EnvContext:()=>ex,PageCanvas:()=>ev,PageSchema:()=>o.PageSchema,PageContext:()=>eo,PageDesigner:()=>tu,PluginType:()=>o.PluginType,plugins:()=>tO,PropEditorProps:()=>s.PropEditorProps,PageProvider:()=>es,handleCallback:()=>ez,DropContainer:()=>em});var e,t,l,n,r,a,i,o={};c.r(o),c.d(o,{P:()=>tp});var s={};c.r(s);var d=c(848),p=c(155),m=c.n(p),x=c(694),h=c.n(x);function f(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 g(e,t){if(e){if("string"==typeof e)return f(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)?f(e,t):void 0}}function v(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)||g(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 y=c(951),j="data-pdnd-honey-pot";function b(e){return e instanceof Element&&e.hasAttribute(j)}function w(e){var t=v(document.elementsFromPoint(e.x,e.y),2),l=t[0],n=t[1];return l?b(l)?null!=n?n:null:l:null}function C(e){return(C="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 S(e,t,l){var n;return(n=function(e,t){if("object"!=C(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0!==l){var n=l.call(e,t||"default");if("object"!=C(n))return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"),(t="symbol"==C(n)?n:n+"")in e)?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function I(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 z(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?I(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):I(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function k(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 O(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 N(e){return function(e){if(Array.isArray(e))return f(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(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 T(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 R=T(function(){return navigator.userAgent.includes("Firefox")}),F=T(function(){var e=navigator.userAgent;return e.includes("AppleWebKit")&&!e.includes("Chrome")}),D={isLeavingWindow:Symbol("leaving"),isEnteringWindow:Symbol("entering")};if("undefined"!=typeof window&&F()){var A=E();(0,y.bindAll)(window,[{type:"dragstart",listener:function(){A.enterCount=0,A.isOverWindow=!0}},{type:"drop",listener:B},{type:"dragend",listener:B},{type:"dragenter",listener:function(e){A.isOverWindow||0!==A.enterCount||(e[D.isEnteringWindow]=!0),A.isOverWindow=!0,A.enterCount++}},{type:"dragleave",listener:function(e){A.enterCount--,A.isOverWindow&&0===A.enterCount&&(e[D.isLeavingWindow]=!0,A.isOverWindow=!1)}}],{capture:!0})}function E(){return{enterCount:0,isOverWindow:!1}}function B(){A=E()}function L(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 M=(e=function(e){return e()},t=[],l=null,(n=function(){for(var n=arguments.length,r=Array(n),a=0;a<n;a++)r[a]=arguments[a];t=r,l||(l=requestAnimationFrame(function(){l=null,e.apply(void 0,t)}))}).cancel=function(){l&&(cancelAnimationFrame(l),l=null)},n),P=(r=null,{schedule:function(e){r={frameId:requestAnimationFrame(function(){r=null,e()}),fn:e}},flush:function(){r&&(cancelAnimationFrame(r.frameId),r.fn(),r=null)}}),$={isActive:!1};function Y(){return!$.isActive}function _(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 H=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=e.dispatchEvent;if(Y()){var a,i,o=function(e){var t=e.event,l=e.dragType,n=e.getDropTargetsOver,r=L(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});$.isActive=!0;var s={current:o};_({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}}),P.schedule(function(){a({eventName:"onDragStart",payload:{source:t,location:i}})})},dragUpdate:function(e){var n=e.current;P.flush(),M.cancel(),a({eventName:"onDropTargetChange",payload:{source:t,location:{initial:l,previous:r,current:n}}})},drag:function(e){var n=e.current;M(function(){P.flush(),a({eventName:"onDrag",payload:{source:t,location:{initial:l,previous:r,current:n}}})})},drop:function(e){var n=e.current,i=e.updatedSourcePayload;P.flush(),M.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,y.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&&(F()?!!F()&&t.hasOwnProperty(D.isLeavingWindow):null==n||(R()?"nodeName"in n&&n.ownerDocument!==document:n instanceof HTMLIFrameElement))})({dragLeave:e})&&(u({input:s.current.input,dropTargets:[]}),"external"===l.startedFrom&&m())}},{type:"drop",listener:function(e){(s.current={dropTargets:s.current.dropTargets,input:L(e)},s.current.dropTargets.length)?(e.preventDefault(),_({event:e,current:s.current.dropTargets}),d.drop({current:s.current,updatedSourcePayload:"external"===l.type?l.getDropPayload(e):null}),x()):m()}},{type:"dragend",listener:function(e){s.current={dropTargets:s.current.dropTargets,input:L(e)},m()}}].concat(N([{type:"pointermove",listener:(i=0,function(){i<20?i++:a()})},{type:"pointerdown",listener:a=m}])),{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=L(e),r=n({target:b(e.target)?w({x:t.clientX,y:t.clientY}):e.target,input:t,source:l.payload,current:s.current.dropTargets});r.length&&(e.preventDefault(),_({event:e,current:r})),u({dropTargets:r,input:t})}function m(){s.current.dropTargets.length&&u({dropTargets:[],input:s.current.input}),d.drop({current:s.current,updatedSourcePayload:null}),x()}function x(){$.isActive=!1,c()}},q=new Map;function G(){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 U(e,t){var l=t.attribute,n=t.value;return e.setAttribute(l,n),function(){return e.removeAttribute(l)}}function K(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 J(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?K(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):K(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}function W(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 X(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)?X(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 X(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 V(e){return e.slice(0).reverse()}function Q(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 Z(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 ee=T(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")}),et="text/plain",el=new WeakMap,en=(a=null,{bindEvents:function(){return a=null,(0,y.bind)(window,{type:"pointermove",listener:function(e){a={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,i,o,s=n.location.initial.input,d=null!=a?a:{x:s.clientX,y:s.clientY};(r=document.createElement("div")).setAttribute(j,"true"),i=k({client:d}),Object.assign(r.style,z(z({backgroundColor:"transparent",position:"fixed",padding:0,margin:0,boxSizing:"border-box"},O({clientRect:i})),{},{pointerEvents:"auto",zIndex:0x7fffffff})),document.body.appendChild(r),o=(0,y.bind)(window,{type:"pointermove",listener:function(e){i=k({client:{x:e.clientX,y:e.clientY}}),Object.assign(r.style,O({clientRect:i}))},options:{capture:!0}}),e=function(e){var t,l,n,a=e.current;if(o(),l=(t={client:a,clientRect:i}).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,y.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 c,u=n.location.current.input;null==(c=e)||c({current:{x:u.clientX,y:u.clientY}}),e=null,a=null}}}}),er=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 Q(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)?Q(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?Z(Object(l),!0).forEach(function(t){S(e,t,l[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):Z(Object(l)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))})}return e}({},n);return e.add(r),l(r),T(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=W(r.location.current.dropTargets);try{for(a.s();!(t=a.n()).done;){var i,o=t.value,s=n.get(o.element),d=J(J({},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=W(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=J(J({},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 m,x=W(l.location.current.dropTargets);try{for(x.s();!(m=x.n()).done;){var h,f,g=m.value;if(!a.has(g.element)){var v=J(J({},l),{},{self:g}),y=n.get(g.element);null==y||null==(h=y.onDropTargetChange)||h.call(y,v),null==y||null==(f=y.onDragEnter)||f.call(y,v)}}}catch(e){x.e(e)}finally{x.f()}}};return{dropTargetForConsumers:function(e){return T(G(U(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,m=void 0===p?[]:p;if(null==c)return m;if(!(c instanceof Element))return c instanceof Node?e({source:d,target:c.parentElement,input:u,result:m}):m;var x=c.closest(a);if(null==x)return m;var h=n.get(x);if(null==h)return m;var f={input:u,source:d,element:h.element};if(h.canDrop&&!h.canDrop(f))return e({source:d,target:h.element.parentElement,input:u,result:m});var g=null!=(r=null==(i=h.getData)?void 0:i.call(h,f))?r:{},v=null!=(o=null==(s=h.getDropEffect)?void 0:s.call(h,f))?o:l,y={data:g,element:h.element,dropEffect:v,isActiveDueToStickiness:!1};return e({source:d,target:h.element.parentElement,input:u,result:[].concat(N(m),[y])})}({source:t,target:r,input:i});if(s.length>=o.length)return s;for(var d=V(o),c=V(s),u=[],p=0;p<d.length;p++){var m,x=d[p],h=c[p];if(null!=h){u.push(h);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(x.element);if(!v)break;var y={input:i,source:t,element:v.element};if(v.canDrop&&!v.canDrop(y)||!(null!=(m=v.getIsSticky)&&m.call(v,y)))break;u.push(J(J({},x),{},{isActiveDueToStickiness:!0}))}return V(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){H({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=q.get(t);if(n)return n.usageCount++,n;var r={typeKey:t,unmount:l(),usageCount:1};return q.set(t,r),r}(e={typeKey:t,mount:function(){return l({canStart:Y,start:d})}}),function(){n.usageCount--,n.usageCount>0||(n.unmount(),q.delete(e.typeKey))}},dropTarget:o.dropTargetForConsumers,monitor:i.monitorForConsumers}}({typeKey:"element",defaultDropEffect:"move",mount:function(e){return G(en.bindEvents(),(0,y.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=el.get(s);if(d){var c=L(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=w({x:c.clientX,y:c.clientY});if(!d.dragHandle.contains(p))return void t.preventDefault()}var m=null!=(n=null==(r=d.getInitialDataForExternal)?void 0:r.call(d,u))?n:null;if(m)for(var x=0,h=Object.entries(m);x<h.length;x++){var f=v(h[x],2),g=f[0],y=f[1];t.dataTransfer.setData(g,null!=y?y:"")}!ee()||t.dataTransfer.types.includes(et)||t.dataTransfer.types.includes("text/uri-list")||t.dataTransfer.setData(et,"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=el.get(r.source.element))||null==(l=t[n])||l.call(t,r)},onPostDispatch:en.getOnPostDispatch()}),ea=er.dropTarget;function ei(e){return T(G(er.registerUsage(),(el.set(e.element,e),function(){el.delete(e.element)}),U(e.element,{attribute:"draggable",value:"true"})))}er.monitor;let eo=(0,p.createContext)({pageId:"",designable:!1,plugins:[],schema:{info:{},datasources:[],scripts:[],variables:[],items:[]},selectedItem:null,atItems:null,setSchema:()=>{},setSelectedItem:()=>{},updateSelectedItem:()=>{},forceUpdate:()=>{},onAddAtItem:()=>{},onRemoveAtItem:()=>{},datasetSelector:void 0,fetch:void 0}),es=e=>{let{pageId:t,designable:l,plugins:n,schema:r,selectedItem:a,setSchema:i,setSelectedItem:o,datasetSelector:s,fetch:c,children:u}=e,[m,x]=(0,p.useState)([]);return(0,d.jsx)(eo.Provider,{value:{pageId:t,designable:!!l,plugins:n||[],schema:r,selectedItem:a,atItems:m,setSchema:i||(()=>{}),setSelectedItem:o||(()=>{}),updateSelectedItem:e=>{null==o||o(Object.assign(a,e||{})),null==i||i({...r})},datasetSelector:s,fetch:c,forceUpdate:()=>{null==i||i({...r})},onAddAtItem:e=>{null!=m&&m.includes(e)||x([...m,e])},onRemoveAtItem:(e,t)=>{x(m.filter(t=>t!==e))}},children:u})},ed=e=>{var t;let{item:l,onDelete:n,parentList:r,onListChange:a,index:i}=e,{designable:o,selectedItem:s,setSelectedItem:c,plugins:u,onAddAtItem:m}=(0,p.useContext)(eo),[x,h]=(0,p.useState)(!1),f=null==(t=u.find(e=>e.key===l.type))?void 0:t.component;return((0,p.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="1000",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");o.innerText="#",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",o.setAttribute("title","添加到对话"),n.appendChild(o),o.addEventListener("click",e=>{e.stopPropagation(),m&&m(l)});let s=document.createElement("a");return s.innerText="X",s.style.background="#1890ff",s.style.color="#fff",s.style.fontSize="12px",s.style.borderTopLeftRadius="4px",s.style.borderTopRightRadius="4px",s.style.padding="2px 8px",s.style.cursor="pointer",s.style.userSelect="none",s.setAttribute("title","删除"),n.appendChild(s),s.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,p.useEffect)(()=>{let e=document.getElementById(`page-item-${l.id}`);if(!e||!o)return;let t=ei({element:e,getInitialData:()=>({id:l.id,index:i,list:r,onListChange:a,data:l}),canDrag:()=>!!o,onDragStart:()=>{h(!0)},onDrop:()=>{h(!1)}}),n=e=>{e.stopPropagation(),c&&c(l)};return o&&e.addEventListener("click",n),()=>{t(),o&&e.removeEventListener("click",n)}},[o,l,i,r]),f)?(0,d.jsx)(f,{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:x?.5:1}}):null},ec=h().div`
3
3
  position: absolute;
4
4
  background: #1890ff;
5
5
  pointer-events: none;
@@ -377,7 +377,7 @@
377
377
  .conversation-list li small {
378
378
  white-space: nowrap;
379
379
  }
380
- `,e$=[],eY="bi-design",e_=e=>{let t,l,n,r,a,i,o,{agentList:s=e$,headExtra:c,style:u={},onEffect:x}=e,{pageId:h,schema:f,fetch:g,atItems:v,onRemoveAtItem:y}=(0,p.useContext)(eo);if(!g)return null;let[j,b]=(0,p.useState)(null),[w,C]=(0,p.useState)([]),[S,I]=(0,p.useState)([]),z=m().useRef(null),k=()=>{setTimeout(()=>{z.current&&z.current.scrollToBottom()},100)},O=()=>{b(null),I([])},N=async e=>{ej.Modal.confirm({title:"确认删除该对话吗?",okText:"确认",cancelText:"取消",onOk:async()=>{var t;await (null==(t=g.ai)?void 0:t.removeConversation(eY,h,e)),C(t=>t.filter(t=>t.id!==e)),I(t=>t.filter(t=>t.conversationId!==e)),j===e&&O()}})},T=async e=>{var t;b(e),C(t=>t.map(t=>({...t,isActived:t.id===e}))),I(await (null==(t=g.ai)?void 0:t.messageList(eY,h,e))||[])},R=async e=>{var t;let l={id:ek(),question:e.message,createdAt:new Date().toISOString(),files:e.files||[],agents:e.agents||[],atItems:v,sending:!0};I(e=>[...e,l]),k();let n=!j,{id:r,answer:a,createdAt:i,conversation:o}=await (null==(t=g.ai)?void 0:t.chat(eY,h,j,{...e,page:JSON.stringify(f),pageItems:v}));b((null==o?void 0:o.id)||""),C(e=>[n?o||{}:null,...e].filter(e=>null!==e)),Object.assign(l,{id:r,answer:a,createdAt:i,conversationId:(null==o?void 0:o.id)||"",sending:!1}),a.effect&&(null==x||x(a.effect)),I(e=>[...e]),k()},F=async e=>{var t;await (null==(t=g.ai)?void 0:t.removeMessage(eY,h,e)),I(t=>t.filter(t=>t.id!==e))},D=(t=new Date,l=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),(n=new Date(t)).setDate(t.getDate()-1),r=[],a=[],i=[],o=[],w.forEach(e=>{let s=new Date(e.createdAt);if(l(s,t))r.push(e);else if(l(s,n))a.push(e);else s.getFullYear()===t.getFullYear()&&s.getMonth()===t.getMonth()?i.push(e):o.push(e)}),[{title:"今天",items:r},{title:"昨天",items:a},{title:"本月内",items:i},{title:"很久以前",items:o}].filter(e=>e.items.length>0)),A=async()=>{try{var e,t;let l=await (null==(e=g.ai)?void 0:e.conversationList(eY,h));C(l||[]);let n=null==l?void 0:l.find(e=>e.isActived);if(n){b(n.id);let e=await (null==(t=g.ai)?void 0:t.messageList(eY,h,n.id));I(e||[])}}catch(e){console.error(e)}};return(0,p.useEffect)(()=>{A()},[g]),(0,p.useEffect)(()=>{k()},[]),(0,d.jsxs)(eP,{style:u,children:[(0,d.jsx)(eM,{title:"智能助理",extra:(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Tooltip,{title:"新对话",placement:"topRight",children:(0,d.jsx)("a",{onClick:O,children:(0,d.jsx)(ew,{type:"icon-chat-plus"})})}),(0,d.jsx)(ej.Dropdown,{trigger:["click"],styles:{root:{boxShadow:"var(--ant-box-shadow-drawer-up)",backgroundColor:"#ffffff",borderRadius:"var(--ant-border-radius)"}},popupRender:()=>(0,d.jsx)(eG,{children:D.map(e=>(0,d.jsxs)("div",{className:"group",children:[(0,d.jsx)("div",{className:"group-title",children:e.title}),(0,d.jsx)("ul",{className:"group-list",children:e.items.map(e=>(0,d.jsxs)("li",{className:e.isActived?"actived":"",children:[(0,d.jsx)("a",{onClick:()=>T(e.id),children:e.name}),(0,d.jsx)("small",{children:(0,d.jsx)("a",{onClick:()=>N(e.id),children:(0,d.jsx)(ey.DeleteOutlined,{})})})]},e.id))})]},e.title))}),placement:"topRight",children:(0,d.jsx)("a",{children:(0,d.jsx)(ey.HistoryOutlined,{})})}),c]}),style:{width:"initial"}}),(0,d.jsxs)("div",{className:"body",children:[(0,d.jsx)("div",{style:{flex:"1 1 auto",overflowY:"auto"},children:S.length?(0,d.jsx)(eK,{ref:z,list:S,onDeleteMessage:F}):(0,d.jsx)(eq,{})}),0===S.length&&w.length>0&&(0,d.jsx)(ej.Card,{title:"历史记录",size:"small",variant:"borderless",styles:{header:{padding:0,border:"none"},body:{padding:0}},style:{padding:"12px 12px 0 12px"},children:(0,d.jsx)("ul",{className:"conversation-list",children:w.slice(0,3).map(e=>(0,d.jsxs)("li",{children:[(0,d.jsxs)("a",{children:[(0,d.jsx)(ey.MessageOutlined,{}),e.name]}),(0,d.jsx)("small",{children:eO(e.createdAt)})]},e.id))})}),(0,d.jsx)(eB,{agentList:s,style:{padding:12},atItems:v,onUploading:null==g?void 0:g.upload,onSubmit:R,onRemoveAtItem:y})]})]})},eH=h().div`
380
+ `,e$=[],eY="bi-design",e_=e=>{let t,l,n,r,a,i,o,{agentList:s=e$,headExtra:c,style:u={},onEffect:x}=e,{pageId:h,schema:f,fetch:g,atItems:v,onRemoveAtItem:y}=(0,p.useContext)(eo);if(!g)return null;let[j,b]=(0,p.useState)(null),[w,C]=(0,p.useState)([]),[S,I]=(0,p.useState)([]),z=m().useRef(null),k=()=>{setTimeout(()=>{z.current&&z.current.scrollToBottom()},100)},O=()=>{b(null),I([])},N=async e=>{ej.Modal.confirm({title:"确认删除该对话吗?",okText:"确认",cancelText:"取消",onOk:async()=>{var t;await (null==(t=g.ai)?void 0:t.removeConversation(eY,h,e)),C(t=>t.filter(t=>t.id!==e)),I(t=>t.filter(t=>t.conversationId!==e)),j===e&&O()}})},T=async e=>{var t;b(e),C(t=>t.map(t=>({...t,isActived:t.id===e}))),I(await (null==(t=g.ai)?void 0:t.messageList(eY,h,e))||[])},R=async e=>{var t;let l={id:ek(),question:e.message,createdAt:new Date().toISOString(),files:e.files||[],agents:e.agents||[],atItems:v,sending:!0};I(e=>[...e,l]),k();let n=!j,{id:r,answer:a,createdAt:i,conversation:o}=await (null==(t=g.ai)?void 0:t.chat(eY,h,j,{...e,page:JSON.stringify(f),pageItems:JSON.stringify(v||[])}));b((null==o?void 0:o.id)||""),C(e=>[n?o||{}:null,...e].filter(e=>null!==e)),Object.assign(l,{id:r,answer:a,createdAt:i,conversationId:(null==o?void 0:o.id)||"",sending:!1}),a.effect&&(null==x||x(a.effect)),I(e=>[...e]),k()},F=async e=>{var t;await (null==(t=g.ai)?void 0:t.removeMessage(eY,h,e)),I(t=>t.filter(t=>t.id!==e))},D=(t=new Date,l=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),(n=new Date(t)).setDate(t.getDate()-1),r=[],a=[],i=[],o=[],w.forEach(e=>{let s=new Date(e.createdAt);if(l(s,t))r.push(e);else if(l(s,n))a.push(e);else s.getFullYear()===t.getFullYear()&&s.getMonth()===t.getMonth()?i.push(e):o.push(e)}),[{title:"今天",items:r},{title:"昨天",items:a},{title:"本月内",items:i},{title:"很久以前",items:o}].filter(e=>e.items.length>0)),A=async()=>{try{var e,t;let l=await (null==(e=g.ai)?void 0:e.conversationList(eY,h));C(l||[]);let n=null==l?void 0:l.find(e=>e.isActived);if(n){b(n.id);let e=await (null==(t=g.ai)?void 0:t.messageList(eY,h,n.id));I(e||[])}}catch(e){console.error(e)}};return(0,p.useEffect)(()=>{A()},[g]),(0,p.useEffect)(()=>{k()},[]),(0,d.jsxs)(eP,{style:u,children:[(0,d.jsx)(eM,{title:"智能助理",extra:(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Tooltip,{title:"新对话",placement:"topRight",children:(0,d.jsx)("a",{onClick:O,children:(0,d.jsx)(ew,{type:"icon-chat-plus"})})}),(0,d.jsx)(ej.Dropdown,{trigger:["click"],styles:{root:{boxShadow:"var(--ant-box-shadow-drawer-up)",backgroundColor:"#ffffff",borderRadius:"var(--ant-border-radius)"}},popupRender:()=>(0,d.jsx)(eG,{children:D.map(e=>(0,d.jsxs)("div",{className:"group",children:[(0,d.jsx)("div",{className:"group-title",children:e.title}),(0,d.jsx)("ul",{className:"group-list",children:e.items.map(e=>(0,d.jsxs)("li",{className:e.isActived?"actived":"",children:[(0,d.jsx)("a",{onClick:()=>T(e.id),children:e.name}),(0,d.jsx)("small",{children:(0,d.jsx)("a",{onClick:()=>N(e.id),children:(0,d.jsx)(ey.DeleteOutlined,{})})})]},e.id))})]},e.title))}),placement:"topRight",children:(0,d.jsx)("a",{children:(0,d.jsx)(ey.HistoryOutlined,{})})}),c]}),style:{width:"initial"}}),(0,d.jsxs)("div",{className:"body",children:[(0,d.jsx)("div",{style:{flex:"1 1 auto",overflowY:"auto"},children:S.length?(0,d.jsx)(eK,{ref:z,list:S,onDeleteMessage:F}):(0,d.jsx)(eq,{})}),0===S.length&&w.length>0&&(0,d.jsx)(ej.Card,{title:"历史记录",size:"small",variant:"borderless",styles:{header:{padding:0,border:"none"},body:{padding:0}},style:{padding:"12px 12px 0 12px"},children:(0,d.jsx)("ul",{className:"conversation-list",children:w.slice(0,3).map(e=>(0,d.jsxs)("li",{children:[(0,d.jsxs)("a",{children:[(0,d.jsx)(ey.MessageOutlined,{}),e.name]}),(0,d.jsx)("small",{children:eO(e.createdAt)})]},e.id))})}),(0,d.jsx)(eB,{agentList:s,style:{padding:12},atItems:v,onUploading:null==g?void 0:g.upload,onSubmit:R,onRemoveAtItem:y})]})]})},eH=h().div`
381
381
  flex: 1 1 auto;
382
382
  display: flex;
383
383
  align-items: center;
@@ -466,7 +466,7 @@
466
466
  flex-direction: column;
467
467
  gap: 12px;
468
468
  padding-right: 8px;
469
-
469
+
470
470
  .msg {
471
471
  display: flex;
472
472
  flex-direction: column;
@@ -488,20 +488,21 @@
488
488
  display: none;
489
489
  }
490
490
 
491
- &:hover .msg-tools {
492
- display: flex;
493
- }
494
-
495
491
  .msg-header {
496
492
  justify-content: flex-end;
497
493
  color: var(--ant-color-text-tertiary);
498
494
  padding: 4px 10px 8px 10px;
499
495
  }
500
-
496
+
501
497
  .msg-section {
502
498
  background: var(--ant-color-primary-bg);
503
499
  padding: 8px 10px;
504
500
  border-radius: var(--ant-border-radius);
501
+ position: relative;
502
+
503
+ &:hover .msg-tools {
504
+ display: flex;
505
+ }
505
506
  }
506
507
  }
507
508
  .assistant-message {
@@ -585,7 +586,7 @@
585
586
  }
586
587
  }
587
588
  }
588
- `,eK=(0,p.forwardRef)((e,t)=>{let{list:l,onDeleteMessage:n}=e,r=(0,p.useRef)(null),a=()=>{setTimeout(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},100)};return(0,p.useImperativeHandle)(t,()=>({scrollToBottom:a})),(0,d.jsx)(eU,{className:"message-list beautified_scrollbar",ref:r,children:l.map(e=>{var t,l,r,a,i,o,s,c,u,p;return(0,d.jsxs)("div",{className:"msg",children:[(0,d.jsxs)("div",{className:"user-message",children:[(0,d.jsx)(ej.Space,{size:4,orientation:"vertical",className:"msg-tools",children:(0,d.jsx)(ej.Popconfirm,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>n(e.id),children:(0,d.jsx)(ej.Tooltip,{title:"删除",children:(0,d.jsx)(ej.Button,{type:"link",size:"small",icon:(0,d.jsx)(ey.DeleteOutlined,{})})})})}),(0,d.jsx)("div",{className:"msg-header",children:(0,d.jsx)("span",{children:eO(e.createdAt)})}),(0,d.jsxs)("div",{className:"msg-section",children:[(0,d.jsx)("div",{className:"msg-content",children:e.question}),(null==(t=e.files)?void 0:t.length)||(null==(l=e.agents)?void 0:l.length)?(0,d.jsxs)("div",{className:"msg-meta",children:[null==(r=e.files)?void 0:r.map(e=>(0,d.jsxs)(ej.Tag,{color:"processing",children:[(0,d.jsx)(ew,{type:"icon-paper-clip"})," ",e.name]},e.id)),null==(a=e.agents)?void 0:a.map(e=>(0,d.jsxs)(ej.Tag,{color:"blue",children:[(0,d.jsx)(ew,{type:"icon-at"})," ",e.name]},e.id)),null==(i=e.atItems)?void 0:i.map(e=>(0,d.jsxs)(ej.Tag,{color:"blue",children:[(0,d.jsx)(ew,{type:"icon-number"})," ",e.name]},e.id))]}):null]})]}),(0,d.jsxs)("div",{className:"assistant-message",children:[(0,d.jsx)("div",{className:"msg-header",children:(0,d.jsxs)("span",{className:"msg-title",children:[(0,d.jsx)(ey.RobotOutlined,{})," 智能助理"]})}),(0,d.jsx)("div",{className:"msg-section",children:e.sending?(0,d.jsx)(ej.Skeleton,{active:!0}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"msg-content",children:(null==(o=e.answer)?void 0:o.answer)||""}),!!(null==(c=e.answer)||null==(s=c.plans)?void 0:s.length)&&(0,d.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,d.jsx)("summary",{className:"msg-ai-meta-title",children:"PLANS:"}),(0,d.jsx)("div",{className:"msg-ai-meta-list",children:e.answer.plans.map((e,t)=>(0,d.jsx)(ej.Tooltip,{title:e.description,children:(0,d.jsx)(ej.Tag,{color:"blue",children:e.name})},t))})]}),!!(null==(p=e.answer)||null==(u=p.extra)?void 0:u.length)&&(0,d.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,d.jsx)("summary",{className:"msg-ai-meta-title",children:"ACTIONS:"}),(0,d.jsx)("div",{className:"msg-ai-meta-list vertical",children:e.answer.extra.map((e,t)=>(0,d.jsxs)("div",{className:"msg-ai-meta-list-item",children:[(0,d.jsx)(ej.Tag,{color:"gold",children:e.element}),(0,d.jsx)("span",{children:e.action})]},t))})]})]})})]})]},e.id)})})}),eW=h().div`
589
+ `,eK=(0,p.forwardRef)((e,t)=>{let{list:l,onDeleteMessage:n}=e,r=(0,p.useRef)(null),a=()=>{setTimeout(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},100)};return(0,p.useImperativeHandle)(t,()=>({scrollToBottom:a})),(0,d.jsx)(eU,{className:"message-list beautified_scrollbar",ref:r,children:l.map(e=>{var t,l,r,a,i,o,s,c,u,p;return(0,d.jsxs)("div",{className:"msg",children:[(0,d.jsxs)("div",{className:"user-message",children:[(0,d.jsx)("div",{className:"msg-header",children:(0,d.jsx)("span",{children:eO(e.createdAt)})}),(0,d.jsxs)("div",{className:"msg-section",children:[(0,d.jsx)(ej.Space,{size:4,orientation:"vertical",className:"msg-tools",children:(0,d.jsx)(ej.Popconfirm,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>n(e.id),children:(0,d.jsx)(ej.Tooltip,{title:"删除",children:(0,d.jsx)(ej.Button,{type:"link",size:"small",icon:(0,d.jsx)(ey.DeleteOutlined,{})})})})}),(0,d.jsx)("div",{className:"msg-content",children:e.question}),(null==(t=e.files)?void 0:t.length)||(null==(l=e.agents)?void 0:l.length)?(0,d.jsxs)("div",{className:"msg-meta",children:[null==(r=e.files)?void 0:r.map(e=>(0,d.jsxs)(ej.Tag,{color:"processing",children:[(0,d.jsx)(ew,{type:"icon-paper-clip"})," ",e.name]},e.id)),null==(a=e.agents)?void 0:a.map(e=>(0,d.jsxs)(ej.Tag,{color:"blue",children:[(0,d.jsx)(ew,{type:"icon-at"})," ",e.name]},e.id)),null==(i=e.atItems)?void 0:i.map(e=>(0,d.jsxs)(ej.Tag,{color:"blue",children:[(0,d.jsx)(ew,{type:"icon-number"})," ",e.name]},e.id))]}):null]})]}),(0,d.jsxs)("div",{className:"assistant-message",children:[(0,d.jsx)("div",{className:"msg-header",children:(0,d.jsxs)("span",{className:"msg-title",children:[(0,d.jsx)(ey.RobotOutlined,{})," 智能助理"]})}),(0,d.jsx)("div",{className:"msg-section",children:e.sending?(0,d.jsx)(ej.Skeleton,{active:!0}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"msg-content",children:(null==(o=e.answer)?void 0:o.answer)||""}),!!(null==(c=e.answer)||null==(s=c.plans)?void 0:s.length)&&(0,d.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,d.jsx)("summary",{className:"msg-ai-meta-title",children:"PLANS:"}),(0,d.jsx)("div",{className:"msg-ai-meta-list",children:e.answer.plans.map((e,t)=>(0,d.jsx)(ej.Tooltip,{title:e.description,children:(0,d.jsx)(ej.Tag,{color:"blue",children:e.name})},t))})]}),!!(null==(p=e.answer)||null==(u=p.extra)?void 0:u.length)&&(0,d.jsxs)("details",{className:"msg-ai-meta",open:!0,children:[(0,d.jsx)("summary",{className:"msg-ai-meta-title",children:"ACTIONS:"}),(0,d.jsx)("div",{className:"msg-ai-meta-list vertical",children:e.answer.extra.map((e,t)=>(0,d.jsxs)("div",{className:"msg-ai-meta-list-item",children:[(0,d.jsx)(ej.Tag,{color:"gold",children:e.element}),(0,d.jsx)("span",{children:e.action})]},t))})]})]})})]})]},e.id)})})}),eJ=h().div`
589
590
  display: flex;
590
591
  flex-direction: column;
591
592
  height: 100%;
@@ -624,7 +625,7 @@
624
625
  font-size: 16px;
625
626
  color: var(--ant-color-text-secondary);
626
627
  }
627
- `,eJ=e=>{let{}=e,{schema:t,selectedItem:l,setSelectedItem:n,plugins:r,forceUpdate:a}=(0,p.useContext)(eo),i=(0,p.useMemo)(()=>(r||[]).reduce((e,t)=>(e[t.key]=t,e),{}),[r]),o=(0,p.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]),s=(0,p.useMemo)(()=>o.reduce((e,t)=>(t.id&&(e[t.id]=t),e),{}),[o]),c=e=>{l&&(n(Object.assign(l,{cascadeIds:e})),a())};return(0,d.jsxs)(eW,{className:"cascade-panel",children:[(0,d.jsx)(eM,{title:"联动",extra:(null==l?void 0:l.cascadeIds)?(0,d.jsx)(ej.Space,{children:(0,d.jsx)(ej.Dropdown,{menu:{onClick:e=>{let{key:t}=e,n=[...(null==l?void 0:l.cascadeIds)||[]];n.push(String(t)),c&&c(n)},items:o.map(e=>{var t,l;return{key:e.id,label:(0,d.jsxs)("a",{children:[(0,d.jsx)(ew,{type:null==(t=i[e.type])?void 0:t.icon})," ",e.name||(null==(l=i[e.type])?void 0:l.label)," (",e.id,")"]})}})},placement:"bottomLeft",trigger:["click"],children:(0,d.jsxs)("a",{className:"toolbar",children:[(0,d.jsx)(ey.PlusOutlined,{}),(0,d.jsx)(ey.CaretDownOutlined,{style:{fontSize:8,verticalAlign:"sub"}})]})})}):null}),(0,d.jsx)("div",{className:"body beautified_scrollbar",children:(null==l?void 0:l.cascadeIds)&&(0,d.jsx)("ul",{children:(l.cascadeIds||[]).map((e,t)=>{var n,r,a,o,u;return(0,d.jsxs)("li",{children:[(0,d.jsxs)("div",{children:[(0,d.jsx)(ew,{type:null==(n=i[null==(r=s[e])?void 0:r.type])?void 0:n.icon})," ",(null==(a=s[e])?void 0:a.name)||(null==(o=i[null==(u=s[e])?void 0:u.type])?void 0:o.label)," (",e,")"]}),(0,d.jsx)(ej.Popconfirm,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>{let e=[...l.cascadeIds||[]];e.splice(t,1),c&&c(e)},children:(0,d.jsx)("a",{children:(0,d.jsx)(ey.DeleteOutlined,{})})})]},e)})})})]})};var eX=c(247),eV=c.n(eX),eQ=c(965),eZ=c.n(eQ);let e0=()=>{let{schema:e}=(0,p.useContext)(eo),t=(0,p.useMemo)(()=>JSON.stringify(e||{},null,2),[e]);return(0,d.jsxs)("div",{className:"code-panel",style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,d.jsx)(eM,{title:"代码",extra:(0,d.jsx)(ej.Space,{children:(0,d.jsx)(ej.Tooltip,{title:"复制到剪切板",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>{eZ()(t||"")&&ej.message.success("复制成功")},children:(0,d.jsx)(ey.CopyOutlined,{})})})})}),(0,d.jsx)("div",{className:"body",style:{flex:"1 1 auto",display:"flex"},children:(0,d.jsx)(eV(),{height:"100%",defaultLanguage:"json",value:t,options:{lineNumbers:"off",readOnly:!0,minimap:{enabled:!1}}})})]})},e1=h().div`
628
+ `,eW=e=>{let{}=e,{schema:t,selectedItem:l,setSelectedItem:n,plugins:r,forceUpdate:a}=(0,p.useContext)(eo),i=(0,p.useMemo)(()=>(r||[]).reduce((e,t)=>(e[t.key]=t,e),{}),[r]),o=(0,p.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]),s=(0,p.useMemo)(()=>o.reduce((e,t)=>(t.id&&(e[t.id]=t),e),{}),[o]),c=e=>{l&&(n(Object.assign(l,{cascadeIds:e})),a())};return(0,d.jsxs)(eJ,{className:"cascade-panel",children:[(0,d.jsx)(eM,{title:"联动",extra:(null==l?void 0:l.cascadeIds)?(0,d.jsx)(ej.Space,{children:(0,d.jsx)(ej.Dropdown,{menu:{onClick:e=>{let{key:t}=e,n=[...(null==l?void 0:l.cascadeIds)||[]];n.push(String(t)),c&&c(n)},items:o.map(e=>{var t,l;return{key:e.id,label:(0,d.jsxs)("a",{children:[(0,d.jsx)(ew,{type:null==(t=i[e.type])?void 0:t.icon})," ",e.name||(null==(l=i[e.type])?void 0:l.label)," (",e.id,")"]})}})},placement:"bottomLeft",trigger:["click"],children:(0,d.jsxs)("a",{className:"toolbar",children:[(0,d.jsx)(ey.PlusOutlined,{}),(0,d.jsx)(ey.CaretDownOutlined,{style:{fontSize:8,verticalAlign:"sub"}})]})})}):null}),(0,d.jsx)("div",{className:"body beautified_scrollbar",children:(null==l?void 0:l.cascadeIds)&&(0,d.jsx)("ul",{children:(l.cascadeIds||[]).map((e,t)=>{var n,r,a,o,u;return(0,d.jsxs)("li",{children:[(0,d.jsxs)("div",{children:[(0,d.jsx)(ew,{type:null==(n=i[null==(r=s[e])?void 0:r.type])?void 0:n.icon})," ",(null==(a=s[e])?void 0:a.name)||(null==(o=i[null==(u=s[e])?void 0:u.type])?void 0:o.label)," (",e,")"]}),(0,d.jsx)(ej.Popconfirm,{title:"确认删除吗?",okText:"确认",cancelText:"取消",onConfirm:()=>{let e=[...l.cascadeIds||[]];e.splice(t,1),c&&c(e)},children:(0,d.jsx)("a",{children:(0,d.jsx)(ey.DeleteOutlined,{})})})]},e)})})})]})};var eX=c(247),eV=c.n(eX),eQ=c(965),eZ=c.n(eQ);let e0=()=>{let{schema:e}=(0,p.useContext)(eo),t=(0,p.useMemo)(()=>JSON.stringify(e||{},null,2),[e]);return(0,d.jsxs)("div",{className:"code-panel",style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,d.jsx)(eM,{title:"代码",extra:(0,d.jsx)(ej.Space,{children:(0,d.jsx)(ej.Tooltip,{title:"复制到剪切板",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>{eZ()(t||"")&&ej.message.success("复制成功")},children:(0,d.jsx)(ey.CopyOutlined,{})})})})}),(0,d.jsx)("div",{className:"body",style:{flex:"1 1 auto",display:"flex"},children:(0,d.jsx)(eV(),{height:"100%",defaultLanguage:"json",value:t,options:{lineNumbers:"off",readOnly:!0,minimap:{enabled:!1}}})})]})},e1=h().div`
628
629
  display: flex;
629
630
  flex-direction: column;
630
631
  height: 100%;
@@ -931,7 +932,7 @@
931
932
  background: transparent;
932
933
  }
933
934
  }
934
- `,tc=e=>{let{open:t,onCancel:l,onOk:n}=e,[r,a]=(0,p.useState)(JSON.stringify({info:{},datasources:[],scripts:[],variables:[],items:[]}));return(0,d.jsx)(ej.Modal,{title:"导入页面",open:t,width:800,onCancel:l,onOk:()=>null==n?void 0:n(JSON.parse(r)),okText:"导入",cancelText:"取消",styles:{body:{height:"calc(100vh - 250px)",overflow:"auto"}},children:(0,d.jsx)("div",{className:"body",style:{flex:"1 1 auto",display:"flex",height:"100%"},children:(0,d.jsx)(eX.Editor,{height:"100%",defaultLanguage:"json",value:r,options:{minimap:{enabled:!1}},onChange:e=>a(e||"")})})})},tu=m().forwardRef((e,t)=>{var l;let n,{pageId:r,agentList:a=[],plugins:i=[],headerExtra:o,datasourceEnable:s=!0,scriptEnable:c=!0,datasetPanel:u,datasetSelector:m,fetch:x,onSave:h,loading:f=!1}=e,g=(0,p.useRef)(null),v=(0,p.useRef)(null),[y,j]=(0,p.useState)(1),[b,w]=(0,p.useState)([]),[C,S]=(0,p.useState)([]),[I,z]=(0,p.useState)(!1),[k,O]=(0,p.useState)("desktop"),[N,T]=(0,p.useState)("component"),[R,F]=(0,p.useState)((null==x?void 0:x.ai)?"ai":"props"),[D,A]=(0,p.useState)(!0),[E,B]=(0,p.useState)(!0),[L,M]=(0,p.useState)(null),[P,$]=(0,p.useState)({info:{},datasources:[],scripts:[],variables:[],items:[]}),[Y,_]=(0,p.useState)(!0),[H,q]=(0,p.useState)(!1),[G,U]=(0,p.useState)(!1),K=(0,p.useMemo)(()=>{let e=D?"250px":"",t=E?"400px":"";return{gridTemplateColumns:`${e} 1fr ${t}`}},[D,E]),W=(0,p.useMemo)(()=>({display:D?"flex":"none"}),[D]),J=(0,p.useMemo)(()=>({display:E?"flex":"none"}),[E]);l=[P],(n=(0,p.useRef)()).current===JSON.stringify(l)&&n.current||(n.current=JSON.stringify(l),(()=>{I||(w(e=>e.length?[...e,JSON.parse(JSON.stringify(P))].slice(-50):[JSON.parse(JSON.stringify(P))]),S([]))})()),(0,p.useImperativeHandle)(t,()=>({handleOpen(e){z(!0),X(e.items),$(e),w([JSON.parse(JSON.stringify(e))]),S([]),setTimeout(()=>z(!1),0)}}));let X=(e,t)=>{e&&e.forEach(e=>{e.id||(e.id=t||ek()),Array.isArray(e.children)?X(e.children):"object"==typeof e.children&&e.children&&Object.keys(e.children).forEach(t=>{Array.isArray(e.children[t])&&X(e.children[t],ek())})})},V=e=>{var t,l,n;if((null==(t=e.datasets)?void 0:t.length)&&(null==v||null==(l=v.current)?void 0:l.reload)&&v.current.reload(),e.schema){let t=JSON.parse(JSON.stringify(e.schema));X(t.items),$(t)}else if(null==(n=e.pageItems)?void 0:n.length){let t=new Map(e.pageItems.map(e=>[e.targetId,e])),l=JSON.parse(JSON.stringify(P)),n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e.forEach((l,r)=>{if(t.has(l.id)){let{position:n,insertSlot:d,pageItem:c}=t.get(l.id);switch(n){case"before":e.splice(r-1,0,c);break;case"after":e.splice(r+1,0,c);break;case"replace":Object.keys(l).forEach(e=>{"id"!==e&&delete l[e]}),Object.assign(l,t.get(l.id));break;case"insert":var a,o,s;let u=i.find(e=>e.key===l.type);Array.isArray(null==u||null==(a=u.defaultOptions)?void 0:a.children)?l.children=[...l.children||[],c]:"object"==typeof(null==u||null==(o=u.defaultOptions)?void 0:o.children)&&d&&(l.children={...l.children||{},[d]:[...(null==(s=l.children)?void 0:s[d])||[],c]})}}Array.isArray(l.children)?n(l.children):"object"==typeof l.children&&l.children&&Object.keys(l.children).forEach(e=>{Array.isArray(l.children[e])&&n(l.children[e])})})};n(l.items),$(l)}},Q=(0,p.useMemo)(()=>"cascade"!==R||(null==L?void 0:L.cascadeIds)?R:"props",[L,R]);return(0,d.jsxs)(es,{pageId:r,designable:Y,plugins:i,schema:P,selectedItem:L,setSchema:$,setSelectedItem:M,datasetSelector:m,fetch:x,children:[(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 24px",borderBottom:"solid 1px #e8e8e8"},children:[(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)("span",{style:{fontSize:16,fontWeight:500},children:"创建数据报表"}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"保存",children:(0,d.jsx)(ej.Button,{type:"link",className:"toolbar",onClick:()=>{null==h||h(P)},loading:f,children:(0,d.jsx)(ey.SaveOutlined,{})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"撤销",children:(0,d.jsx)("a",{className:`toolbar ${b.length>1?"active":""}`,onClick:()=>{w(e=>{if(e.length<=1)return e;z(!0);let t=e[e.length-2];return S(e=>[...e,JSON.parse(JSON.stringify(P))]),$(t),M(null),setTimeout(()=>z(!1),0),e.slice(0,-1)})},children:(0,d.jsx)(ey.UndoOutlined,{})})}),(0,d.jsx)(ej.Tooltip,{title:"重做",children:(0,d.jsx)("a",{className:`toolbar ${C.length>0?"active":""}`,onClick:()=>{S(e=>e.length?(z(!0),w(e=>[...e,JSON.parse(JSON.stringify(P))]),$(e[e.length-1]),M(null),setTimeout(()=>z(!1),0),e.slice(0,-1)):e)},children:(0,d.jsx)(ey.RedoOutlined,{})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"导入JSON",children:(0,d.jsx)("a",{className:`toolbar ${C.length>0?"active":""}`,onClick:()=>{q(!0)},children:(0,d.jsx)(ey.ImportOutlined,{})})})]}),(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Tooltip,{title:"缩小",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(parseFloat(Math.max(y-.1,.5).toFixed(1))),children:(0,d.jsx)(ey.ZoomOutOutlined,{})})}),(0,d.jsxs)("div",{style:{fontSize:12,color:"#999",userSelect:"none"},children:[(100*y).toFixed(0),"%"]}),(0,d.jsx)(ej.Tooltip,{title:"放大",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(parseFloat(Math.min(y+.1,2).toFixed(1))),children:(0,d.jsx)(ey.ZoomInOutlined,{})})}),(0,d.jsx)(ej.Tooltip,{title:"重置缩放",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(1),children:(0,d.jsx)(ew,{type:"icon-zoom-reset"})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"切换左侧栏",children:(0,d.jsx)("a",{className:`toolbar ${D?"active":""}`,onClick:()=>{A(e=>!e),setTimeout(()=>{var e,t;return null==(t=g.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,d.jsx)(ew,{type:"icon-sider-l"})})}),(0,d.jsx)(ej.Tooltip,{title:"切换右侧栏",children:(0,d.jsx)("a",{className:`toolbar ${E?"active":""}`,onClick:()=>{B(e=>!e),setTimeout(()=>{var e,t;return null==(t=g.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,d.jsx)(ew,{type:"icon-sider-r"})})}),o]})]}),(0,d.jsxs)(td,{style:K,children:[(0,d.jsxs)("div",{className:"left",style:W,children:[(0,d.jsx)("div",{style:{padding:"22px 1px 22px 0",borderRight:"solid 1px #e8e8e8"},children:(0,d.jsxs)(ej.Radio.Group,{value:N,onChange:e=>T(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"left-pane-tabs",children:[(0,d.jsx)(ej.Radio.Button,{value:"component",children:(0,d.jsx)(ej.Tooltip,{title:"组件",placement:"right",children:(0,d.jsx)(ew,{type:"icon-puzzle"})})}),(0,d.jsx)(ej.Radio.Button,{value:"layer",children:(0,d.jsx)(ej.Tooltip,{title:"图层",placement:"right",children:(0,d.jsx)(ew,{type:"icon-outline"})})}),!!u&&(0,d.jsx)(ej.Radio.Button,{value:"dataset",children:(0,d.jsx)(ej.Tooltip,{title:"数据集",placement:"right",children:(0,d.jsx)(ew,{type:"icon-dataset"})})}),s&&(0,d.jsx)(ej.Radio.Button,{value:"datasource",title:"数据源",children:(0,d.jsx)(ej.Tooltip,{title:"数据源",placement:"right",children:(0,d.jsx)(ew,{type:"icon-datasource"})})}),c&&(0,d.jsx)(ej.Radio.Button,{value:"script",children:(0,d.jsx)(ej.Tooltip,{title:"脚本",placement:"right",children:(0,d.jsx)(ew,{type:"icon-js"})})}),(0,d.jsx)(ej.Radio.Button,{value:"env",children:(0,d.jsx)(ej.Tooltip,{title:"环境变量",placement:"right",children:(0,d.jsx)(ew,{type:"icon-variable"})})}),(0,d.jsx)(ej.Radio.Button,{value:"code",children:(0,d.jsx)(ej.Tooltip,{title:"源码",placement:"right",children:(0,d.jsx)(ew,{type:"icon-json"})})})]})}),(0,d.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:["component"===N&&(0,d.jsx)(e4,{}),"layer"===N&&(0,d.jsx)(e3,{}),s&&"datasource"===N&&(0,d.jsx)(e5,{}),c&&"script"===N&&(0,d.jsx)(tr,{}),"env"===N&&(0,d.jsx)(ti,{}),"code"===N&&(0,d.jsx)(e0,{}),!!u&&"dataset"===N&&(0,d.jsx)(ts,{ref:v,renderNode:u})]})]}),(0,d.jsxs)("div",{className:"center",style:{flex:"1 1 auto"},children:[(0,d.jsx)(eM,{title:"页面",extra:(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Button,{size:"small",type:Y?"default":"primary",icon:Y?(0,d.jsx)(ey.EyeInvisibleOutlined,{}):(0,d.jsx)(ey.EyeOutlined,{}),onClick:()=>_(!Y)}),(0,d.jsxs)(ej.Radio.Group,{value:k,onChange:e=>O(e.target.value),size:"small",buttonStyle:"outline",children:[(0,d.jsx)(ej.Radio.Button,{value:"desktop",title:"桌面",children:(0,d.jsx)(ey.DesktopOutlined,{})}),(0,d.jsx)(ej.Radio.Button,{value:"mobile",title:"移动设备",children:(0,d.jsx)(ey.MobileOutlined,{})}),(0,d.jsx)(ej.Radio.Button,{value:"tablet",title:"平板设备",children:(0,d.jsx)(ey.TabletOutlined,{})})]})]})}),(0,d.jsx)("div",{className:["body beautified_scrollbar",k].join(" "),children:(0,d.jsx)("div",{style:{transform:`scale(${y})`,transformOrigin:"top center"},children:(0,d.jsx)(eg,{ref:g,device:k,fetch:x})})})]}),(0,d.jsxs)("div",{className:"right",style:J,children:[(0,d.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:[(0,d.jsx)(e_,{agentList:a,onEffect:V,style:{display:"ai"===Q&&(null==x?void 0:x.ai)?void 0:"none"}}),"props"===Q&&(0,d.jsx)(tt,{datasourceEnable:s}),"cascade"===Q&&(null==L?void 0:L.cascadeIds)&&(0,d.jsx)(eJ,{})]}),(0,d.jsx)("div",{style:{padding:"22px 0",borderLeft:"solid 1px #e8e8e8",display:"flex",flexDirection:"column",justifyContent:"space-between",alignItems:"center"},children:(0,d.jsxs)(ej.Radio.Group,{value:Q,onChange:e=>F(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"right-pane-tabs",children:[(null==x?void 0:x.ai)&&(0,d.jsx)(ej.Radio.Button,{value:"ai",children:(0,d.jsx)(ej.Tooltip,{title:"智能助理",placement:"right",children:(0,d.jsx)(ew,{type:"icon-assistant"})})}),(0,d.jsx)(ej.Radio.Button,{value:"props",children:(0,d.jsx)(ej.Tooltip,{title:"属性",placement:"right",children:(0,d.jsx)(ew,{type:"icon-info"})})}),(null==L?void 0:L.cascadeIds)&&(0,d.jsx)(ej.Radio.Button,{value:"cascade",children:(0,d.jsx)(ej.Tooltip,{title:"联动",placement:"right",children:(0,d.jsx)(ew,{type:"icon-cascade"})})})]})})]})]})]}),(0,d.jsx)(tc,{open:H,onOk:e=>{q(!1),$(e)},onCancel:()=>q(!1)}),(0,d.jsx)(ej.Drawer,{open:G,size:400,mask:!1,title:null,closable:!1,styles:{body:{padding:0}},onClose:()=>U(!1),children:(0,d.jsx)(e_,{agentList:a,headExtra:(0,d.jsx)(ej.Button,{type:"link",icon:(0,d.jsx)(ey.CloseOutlined,{}),onClick:()=>U(!1)}),onEffect:V})})]})});var tp=((i={}).STRING="STRING",i.NUMBER="NUMBER",i.BOOLEAN="BOOLEAN",i.OBJECT="OBJECT",i.ARRAY="ARRAY",i);let tm=h()(ey.InfoCircleOutlined)`
935
+ `,tc=e=>{let{open:t,onCancel:l,onOk:n}=e,[r,a]=(0,p.useState)(JSON.stringify({info:{},datasources:[],scripts:[],variables:[],items:[]}));return(0,d.jsx)(ej.Modal,{title:"导入页面",open:t,width:800,onCancel:l,onOk:()=>null==n?void 0:n(JSON.parse(r)),okText:"导入",cancelText:"取消",styles:{body:{height:"calc(100vh - 250px)",overflow:"auto"}},children:(0,d.jsx)("div",{className:"body",style:{flex:"1 1 auto",display:"flex",height:"100%"},children:(0,d.jsx)(eX.Editor,{height:"100%",defaultLanguage:"json",value:r,options:{minimap:{enabled:!1}},onChange:e=>a(e||"")})})})},tu=m().forwardRef((e,t)=>{var l;let n,{pageId:r,agentList:a=[],plugins:i=[],headerExtra:o,datasourceEnable:s=!0,scriptEnable:c=!0,datasetPanel:u,datasetSelector:m,fetch:x,onSave:h,loading:f=!1}=e,g=(0,p.useRef)(null),v=(0,p.useRef)(null),[y,j]=(0,p.useState)(1),[b,w]=(0,p.useState)([]),[C,S]=(0,p.useState)([]),[I,z]=(0,p.useState)(!1),[k,O]=(0,p.useState)("desktop"),[N,T]=(0,p.useState)("component"),[R,F]=(0,p.useState)((null==x?void 0:x.ai)?"ai":"props"),[D,A]=(0,p.useState)(!0),[E,B]=(0,p.useState)(!0),[L,M]=(0,p.useState)(null),[P,$]=(0,p.useState)({info:{},datasources:[],scripts:[],variables:[],items:[]}),[Y,_]=(0,p.useState)(!0),[H,q]=(0,p.useState)(!1),[G,U]=(0,p.useState)(!1),K=(0,p.useMemo)(()=>{let e=D?"250px":"",t=E?"400px":"";return{gridTemplateColumns:`${e} 1fr ${t}`}},[D,E]),J=(0,p.useMemo)(()=>({display:D?"flex":"none"}),[D]),W=(0,p.useMemo)(()=>({display:E?"flex":"none"}),[E]);l=[P],(n=(0,p.useRef)()).current===JSON.stringify(l)&&n.current||(n.current=JSON.stringify(l),(()=>{I||(w(e=>e.length?[...e,JSON.parse(JSON.stringify(P))].slice(-50):[JSON.parse(JSON.stringify(P))]),S([]))})()),(0,p.useImperativeHandle)(t,()=>({handleOpen(e){z(!0),X(e.items),$(e),w([JSON.parse(JSON.stringify(e))]),S([]),setTimeout(()=>z(!1),0)}}));let X=(e,t)=>{e&&e.forEach(e=>{e.id||(e.id=t||ek()),Array.isArray(e.children)?X(e.children):"object"==typeof e.children&&e.children&&Object.keys(e.children).forEach(t=>{Array.isArray(e.children[t])&&X(e.children[t],ek())})})},V=e=>{var t,l,n;if((null==(t=e.datasets)?void 0:t.length)&&(null==v||null==(l=v.current)?void 0:l.reload)&&v.current.reload(),e.schema){let t=JSON.parse(JSON.stringify(e.schema));X(t.items),$(t)}else if(null==(n=e.pageItems)?void 0:n.length){let t=new Map(e.pageItems.map(e=>[e.targetId,e])),l=JSON.parse(JSON.stringify(P)),n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e.forEach((l,r)=>{if(t.has(l.id)){let{position:n,insertSlot:d,pageItem:c}=t.get(l.id);switch(n){case"before":e.splice(r-1,0,c);break;case"after":e.splice(r+1,0,c);break;case"replace":Object.keys(l).forEach(e=>{"id"!==e&&delete l[e]}),Object.assign(l,t.get(l.id));break;case"insert":var a,o,s;let u=i.find(e=>e.key===l.type);Array.isArray(null==u||null==(a=u.defaultOptions)?void 0:a.children)?l.children=[...l.children||[],c]:"object"==typeof(null==u||null==(o=u.defaultOptions)?void 0:o.children)&&d&&(l.children={...l.children||{},[d]:[...(null==(s=l.children)?void 0:s[d])||[],c]})}}Array.isArray(l.children)?n(l.children):"object"==typeof l.children&&l.children&&Object.keys(l.children).forEach(e=>{Array.isArray(l.children[e])&&n(l.children[e])})})};n(l.items),$(l)}},Q=(0,p.useMemo)(()=>"cascade"!==R||(null==L?void 0:L.cascadeIds)?R:"props",[L,R]);return(0,d.jsxs)(es,{pageId:r,designable:Y,plugins:i,schema:P,selectedItem:L,setSchema:$,setSelectedItem:M,datasetSelector:m,fetch:x,children:[(0,d.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"8px 24px",borderBottom:"solid 1px #e8e8e8"},children:[(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)("span",{style:{fontSize:16,fontWeight:500},children:"创建数据报表"}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"保存",children:(0,d.jsx)(ej.Button,{type:"link",className:"toolbar",onClick:()=>{null==h||h(P)},loading:f,children:(0,d.jsx)(ey.SaveOutlined,{})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"撤销",children:(0,d.jsx)("a",{className:`toolbar ${b.length>1?"active":""}`,onClick:()=>{w(e=>{if(e.length<=1)return e;z(!0);let t=e[e.length-2];return S(e=>[...e,JSON.parse(JSON.stringify(P))]),$(t),M(null),setTimeout(()=>z(!1),0),e.slice(0,-1)})},children:(0,d.jsx)(ey.UndoOutlined,{})})}),(0,d.jsx)(ej.Tooltip,{title:"重做",children:(0,d.jsx)("a",{className:`toolbar ${C.length>0?"active":""}`,onClick:()=>{S(e=>e.length?(z(!0),w(e=>[...e,JSON.parse(JSON.stringify(P))]),$(e[e.length-1]),M(null),setTimeout(()=>z(!1),0),e.slice(0,-1)):e)},children:(0,d.jsx)(ey.RedoOutlined,{})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"导入JSON",children:(0,d.jsx)("a",{className:`toolbar ${C.length>0?"active":""}`,onClick:()=>{q(!0)},children:(0,d.jsx)(ey.ImportOutlined,{})})})]}),(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Tooltip,{title:"缩小",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(parseFloat(Math.max(y-.1,.5).toFixed(1))),children:(0,d.jsx)(ey.ZoomOutOutlined,{})})}),(0,d.jsxs)("div",{style:{fontSize:12,color:"#999",userSelect:"none"},children:[(100*y).toFixed(0),"%"]}),(0,d.jsx)(ej.Tooltip,{title:"放大",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(parseFloat(Math.min(y+.1,2).toFixed(1))),children:(0,d.jsx)(ey.ZoomInOutlined,{})})}),(0,d.jsx)(ej.Tooltip,{title:"重置缩放",children:(0,d.jsx)("a",{className:"toolbar",onClick:()=>j(1),children:(0,d.jsx)(ew,{type:"icon-zoom-reset"})})}),(0,d.jsx)(ej.Divider,{orientation:"vertical"}),(0,d.jsx)(ej.Tooltip,{title:"切换左侧栏",children:(0,d.jsx)("a",{className:`toolbar ${D?"active":""}`,onClick:()=>{A(e=>!e),setTimeout(()=>{var e,t;return null==(t=g.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,d.jsx)(ew,{type:"icon-sider-l"})})}),(0,d.jsx)(ej.Tooltip,{title:"切换右侧栏",children:(0,d.jsx)("a",{className:`toolbar ${E?"active":""}`,onClick:()=>{B(e=>!e),setTimeout(()=>{var e,t;return null==(t=g.current)||null==(e=t.handleResize)?void 0:e.call(t)},0)},children:(0,d.jsx)(ew,{type:"icon-sider-r"})})}),o]})]}),(0,d.jsxs)(td,{style:K,children:[(0,d.jsxs)("div",{className:"left",style:J,children:[(0,d.jsx)("div",{style:{padding:"22px 1px 22px 0",borderRight:"solid 1px #e8e8e8"},children:(0,d.jsxs)(ej.Radio.Group,{value:N,onChange:e=>T(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"left-pane-tabs",children:[(0,d.jsx)(ej.Radio.Button,{value:"component",children:(0,d.jsx)(ej.Tooltip,{title:"组件",placement:"right",children:(0,d.jsx)(ew,{type:"icon-puzzle"})})}),(0,d.jsx)(ej.Radio.Button,{value:"layer",children:(0,d.jsx)(ej.Tooltip,{title:"图层",placement:"right",children:(0,d.jsx)(ew,{type:"icon-outline"})})}),!!u&&(0,d.jsx)(ej.Radio.Button,{value:"dataset",children:(0,d.jsx)(ej.Tooltip,{title:"数据集",placement:"right",children:(0,d.jsx)(ew,{type:"icon-dataset"})})}),s&&(0,d.jsx)(ej.Radio.Button,{value:"datasource",title:"数据源",children:(0,d.jsx)(ej.Tooltip,{title:"数据源",placement:"right",children:(0,d.jsx)(ew,{type:"icon-datasource"})})}),c&&(0,d.jsx)(ej.Radio.Button,{value:"script",children:(0,d.jsx)(ej.Tooltip,{title:"脚本",placement:"right",children:(0,d.jsx)(ew,{type:"icon-js"})})}),(0,d.jsx)(ej.Radio.Button,{value:"env",children:(0,d.jsx)(ej.Tooltip,{title:"环境变量",placement:"right",children:(0,d.jsx)(ew,{type:"icon-variable"})})}),(0,d.jsx)(ej.Radio.Button,{value:"code",children:(0,d.jsx)(ej.Tooltip,{title:"源码",placement:"right",children:(0,d.jsx)(ew,{type:"icon-json"})})})]})}),(0,d.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:["component"===N&&(0,d.jsx)(e4,{}),"layer"===N&&(0,d.jsx)(e3,{}),s&&"datasource"===N&&(0,d.jsx)(e5,{}),c&&"script"===N&&(0,d.jsx)(tr,{}),"env"===N&&(0,d.jsx)(ti,{}),"code"===N&&(0,d.jsx)(e0,{}),!!u&&"dataset"===N&&(0,d.jsx)(ts,{ref:v,renderNode:u})]})]}),(0,d.jsxs)("div",{className:"center",style:{flex:"1 1 auto"},children:[(0,d.jsx)(eM,{title:"页面",extra:(0,d.jsxs)(ej.Space,{children:[(0,d.jsx)(ej.Button,{size:"small",type:Y?"default":"primary",icon:Y?(0,d.jsx)(ey.EyeInvisibleOutlined,{}):(0,d.jsx)(ey.EyeOutlined,{}),onClick:()=>_(!Y)}),(0,d.jsxs)(ej.Radio.Group,{value:k,onChange:e=>O(e.target.value),size:"small",buttonStyle:"outline",children:[(0,d.jsx)(ej.Radio.Button,{value:"desktop",title:"桌面",children:(0,d.jsx)(ey.DesktopOutlined,{})}),(0,d.jsx)(ej.Radio.Button,{value:"mobile",title:"移动设备",children:(0,d.jsx)(ey.MobileOutlined,{})}),(0,d.jsx)(ej.Radio.Button,{value:"tablet",title:"平板设备",children:(0,d.jsx)(ey.TabletOutlined,{})})]})]})}),(0,d.jsx)("div",{className:["body beautified_scrollbar",k].join(" "),children:(0,d.jsx)("div",{style:{transform:`scale(${y})`,transformOrigin:"top center"},children:(0,d.jsx)(eg,{ref:g,device:k,fetch:x})})})]}),(0,d.jsxs)("div",{className:"right",style:W,children:[(0,d.jsxs)("div",{style:{flex:"1 1 auto",display:"flex",flexDirection:"column",width:"calc(100% - 47px)"},children:[(0,d.jsx)(e_,{agentList:a,onEffect:V,style:{display:"ai"===Q&&(null==x?void 0:x.ai)?void 0:"none"}}),"props"===Q&&(0,d.jsx)(tt,{datasourceEnable:s}),"cascade"===Q&&(null==L?void 0:L.cascadeIds)&&(0,d.jsx)(eW,{})]}),(0,d.jsx)("div",{style:{padding:"22px 0",borderLeft:"solid 1px #e8e8e8",display:"flex",flexDirection:"column",justifyContent:"space-between",alignItems:"center"},children:(0,d.jsxs)(ej.Radio.Group,{value:Q,onChange:e=>F(e.target.value),buttonStyle:"outline",style:{fontWeight:"normal",display:"inline-flex",flexDirection:"column",gap:14},className:"right-pane-tabs",children:[(null==x?void 0:x.ai)&&(0,d.jsx)(ej.Radio.Button,{value:"ai",children:(0,d.jsx)(ej.Tooltip,{title:"智能助理",placement:"right",children:(0,d.jsx)(ew,{type:"icon-assistant"})})}),(0,d.jsx)(ej.Radio.Button,{value:"props",children:(0,d.jsx)(ej.Tooltip,{title:"属性",placement:"right",children:(0,d.jsx)(ew,{type:"icon-info"})})}),(null==L?void 0:L.cascadeIds)&&(0,d.jsx)(ej.Radio.Button,{value:"cascade",children:(0,d.jsx)(ej.Tooltip,{title:"联动",placement:"right",children:(0,d.jsx)(ew,{type:"icon-cascade"})})})]})})]})]})]}),(0,d.jsx)(tc,{open:H,onOk:e=>{q(!1),$(e)},onCancel:()=>q(!1)}),(0,d.jsx)(ej.Drawer,{open:G,size:400,mask:!1,title:null,closable:!1,styles:{body:{padding:0}},onClose:()=>U(!1),children:(0,d.jsx)(e_,{agentList:a,headExtra:(0,d.jsx)(ej.Button,{type:"link",icon:(0,d.jsx)(ey.CloseOutlined,{}),onClick:()=>U(!1)}),onEffect:V})})]})});var tp=((i={}).STRING="STRING",i.NUMBER="NUMBER",i.BOOLEAN="BOOLEAN",i.OBJECT="OBJECT",i.ARRAY="ARRAY",i);let tm=h()(ey.InfoCircleOutlined)`
935
936
  vertical-align: middle;
936
937
  margin-left: 2px;
937
938
  color: var(--ant-color-text-description);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bi-sdk-react",
3
- "version": "0.0.21",
3
+ "version": "0.0.22",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/umd/js/bi-sdk.umd.min.js",
@@ -2,7 +2,7 @@ import {
2
2
  DeleteOutlined,
3
3
  HistoryOutlined,
4
4
  MessageOutlined,
5
- RobotOutlined
5
+ RobotOutlined,
6
6
  } from "@ant-design/icons";
7
7
  import {
8
8
  Button,
@@ -95,7 +95,8 @@ export const AiPanel: React.FC<AiPanelProps> = ({
95
95
  style = {},
96
96
  onEffect,
97
97
  }) => {
98
- const { pageId, schema, fetch, atItems, onRemoveAtItem } = useContext(PageContext);
98
+ const { pageId, schema, fetch, atItems, onRemoveAtItem } =
99
+ useContext(PageContext);
99
100
  if (!fetch) return null;
100
101
  const [conversationId, setConversationId] = useState<string | null>(null);
101
102
  const [conversationList, setConversationList] = useState<
@@ -135,7 +136,7 @@ export const AiPanel: React.FC<AiPanelProps> = ({
135
136
  const handleActivateConversation = async (id: string) => {
136
137
  setConversationId(id);
137
138
  setConversationList((list) =>
138
- list.map((i) => ({ ...i, isActived: i.id === id }))
139
+ list.map((i) => ({ ...i, isActived: i.id === id })),
139
140
  );
140
141
  const messages = await fetch.ai?.messageList(BIZ_TYPE, pageId, id);
141
142
  setMessageList(messages || []);
@@ -158,7 +159,7 @@ export const AiPanel: React.FC<AiPanelProps> = ({
158
159
  setMessageList((list) => [...list, questionMessage]);
159
160
  scrollToBottom();
160
161
 
161
- const newConversation = !conversationId
162
+ const newConversation = !conversationId;
162
163
 
163
164
  const { id, answer, createdAt, conversation } = await fetch.ai?.chat(
164
165
  BIZ_TYPE,
@@ -167,14 +168,16 @@ export const AiPanel: React.FC<AiPanelProps> = ({
167
168
  {
168
169
  ...data,
169
170
  page: JSON.stringify(schema),
170
- pageItems: atItems,
171
- }
171
+ pageItems: JSON.stringify(atItems || []),
172
+ },
172
173
  )!;
173
174
  setConversationId(conversation?.id || "");
174
- setConversationList((list) => [
175
- newConversation ? conversation || ({} as ChatConversationType) : null,
176
- ...list,
177
- ].filter((i) => i !== null));
175
+ setConversationList((list) =>
176
+ [
177
+ newConversation ? conversation || ({} as ChatConversationType) : null,
178
+ ...list,
179
+ ].filter((i) => i !== null),
180
+ );
178
181
  Object.assign(questionMessage, {
179
182
  id,
180
183
  answer,
@@ -233,7 +236,7 @@ export const AiPanel: React.FC<AiPanelProps> = ({
233
236
  const messages = await fetch.ai?.messageList(
234
237
  BIZ_TYPE,
235
238
  pageId,
236
- active.id
239
+ active.id,
237
240
  );
238
241
  setMessageList(messages || []);
239
242
  }
@@ -478,7 +481,7 @@ const MessageRoot = styled.div`
478
481
  flex-direction: column;
479
482
  gap: 12px;
480
483
  padding-right: 8px;
481
-
484
+
482
485
  .msg {
483
486
  display: flex;
484
487
  flex-direction: column;
@@ -500,20 +503,21 @@ const MessageRoot = styled.div`
500
503
  display: none;
501
504
  }
502
505
 
503
- &:hover .msg-tools {
504
- display: flex;
505
- }
506
-
507
506
  .msg-header {
508
507
  justify-content: flex-end;
509
508
  color: var(--ant-color-text-tertiary);
510
509
  padding: 4px 10px 8px 10px;
511
510
  }
512
-
511
+
513
512
  .msg-section {
514
513
  background: var(--ant-color-primary-bg);
515
514
  padding: 8px 10px;
516
515
  border-radius: var(--ant-border-radius);
516
+ position: relative;
517
+
518
+ &:hover .msg-tools {
519
+ display: flex;
520
+ }
517
521
  }
518
522
  }
519
523
  .assistant-message {
@@ -626,26 +630,30 @@ const MessageList = forwardRef<
626
630
  {list.map((msg) => (
627
631
  <div className="msg" key={msg.id}>
628
632
  <div className="user-message">
629
- <Space size={4} orientation="vertical" className="msg-tools">
630
- <Popconfirm
631
- title="确认删除吗?"
632
- okText="确认"
633
- cancelText="取消"
634
- onConfirm={() => onDeleteMessage(msg.id)}
635
- >
636
- <Tooltip title="删除">
637
- <Button type="link" size="small" icon={<DeleteOutlined />} />
638
- </Tooltip>
639
- </Popconfirm>
640
- {/* <Tooltip title="重新发送">
641
- <Button type="link" size="small" icon={<ReloadOutlined />} />
642
- </Tooltip> */}
643
- </Space>
644
633
  <div className="msg-header">
645
634
  {/* <span className="msg-title">用户</span> */}
646
635
  <span>{formatTime(msg.createdAt)}</span>
647
636
  </div>
648
637
  <div className="msg-section">
638
+ <Space size={4} orientation="vertical" className="msg-tools">
639
+ <Popconfirm
640
+ title="确认删除吗?"
641
+ okText="确认"
642
+ cancelText="取消"
643
+ onConfirm={() => onDeleteMessage(msg.id)}
644
+ >
645
+ <Tooltip title="删除">
646
+ <Button
647
+ type="link"
648
+ size="small"
649
+ icon={<DeleteOutlined />}
650
+ />
651
+ </Tooltip>
652
+ </Popconfirm>
653
+ {/* <Tooltip title="重新发送">
654
+ <Button type="link" size="small" icon={<ReloadOutlined />} />
655
+ </Tooltip> */}
656
+ </Space>
649
657
  <div className="msg-content">{msg.question}</div>
650
658
  {msg.files?.length || msg.agents?.length ? (
651
659
  <div className="msg-meta">
@@ -690,9 +698,7 @@ const MessageList = forwardRef<
690
698
  <div className="msg-content">{msg.answer?.answer || ""}</div>
691
699
  {!!msg.answer?.plans?.length && (
692
700
  <details className="msg-ai-meta" open>
693
- <summary className="msg-ai-meta-title">
694
- PLANS:
695
- </summary>
701
+ <summary className="msg-ai-meta-title">PLANS:</summary>
696
702
  <div className="msg-ai-meta-list">
697
703
  {msg.answer.plans.map((e, index) => (
698
704
  <Tooltip title={e.description} key={index}>
@@ -704,9 +710,7 @@ const MessageList = forwardRef<
704
710
  )}
705
711
  {!!msg.answer?.extra?.length && (
706
712
  <details className="msg-ai-meta" open>
707
- <summary className="msg-ai-meta-title">
708
- ACTIONS:
709
- </summary>
713
+ <summary className="msg-ai-meta-title">ACTIONS:</summary>
710
714
  <div className="msg-ai-meta-list vertical">
711
715
  {msg.answer.extra.map((e: any, idx: number) => (
712
716
  <div className="msg-ai-meta-list-item" key={idx}>
@@ -5,7 +5,7 @@ export type ChatRequestType = {
5
5
  files?: { id: string; name: string; extension: string }[] | null;
6
6
  agents?: { id: string | number; name: string }[] | null;
7
7
  page?: string | null;
8
- pageItems?: SchemaItemType[] | null;
8
+ pageItems?: string | null;
9
9
  };
10
10
 
11
11
  export type PageItemEffectType = {