bi-sdk-react 0.0.31 → 0.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/js/bi-sdk.es.js +3 -3
- package/dist/types/components/hooks/datasource.d.ts +3 -1
- package/dist/umd/js/bi-sdk.umd.min.js +3 -3
- package/package.json +1 -1
- package/src/components/hooks/datasource.ts +2 -2
- package/src/components/plugins/@antd/items/EchartsRender.tsx +1 -1
- package/src/components/plugins/@antd/items/HtmlRender.tsx +2 -2
- package/src/components/plugins/@antd/items/ListRender.tsx +1 -1
package/dist/es/js/bi-sdk.es.js
CHANGED
|
@@ -1008,7 +1008,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
|
|
|
1008
1008
|
color: #999;
|
|
1009
1009
|
font-size: 12px;
|
|
1010
1010
|
}
|
|
1011
|
-
`,lu=(e,t)=>{let[l,n]=(0,eE.useState)(null),{fetch:r,getVars:a}=(0,eE.useContext)(eA);return(0,eE.useEffect)(()=>{if(!(null==e?void 0:e.datasource))return n(null);switch((null==e?void 0:e.datasource.source)||"custom"){case"custom":try{return n(JSON.parse((null==e?void 0:e.datasource.custom)||"[]"))}catch(e){break}case"dataset":if(!(null==e?void 0:e.datasource.dataset)||!(null==r?void 0:r.dataset))break;let t=a(e.id||"");r.dataset(null==e?void 0:e.datasource.dataset.id,t).then(e=>n((null==e?void 0:e.data)||null)).catch(e=>{console.error(e),n(null)})}return n(null)},[null==e?void 0:e.datasource,t]),l},lp=t.div`
|
|
1011
|
+
`,lu=(e,t)=>{let[l,n]=(0,eE.useState)(null),{fetch:r,getVars:a}=(0,eE.useContext)(eA);return(0,eE.useEffect)(()=>{if(!(null==e?void 0:e.datasource))return n(null);switch((null==e?void 0:e.datasource.source)||"custom"){case"custom":try{return n(JSON.parse((null==e?void 0:e.datasource.custom)||"[]"))}catch(e){break}case"dataset":if(!(null==e?void 0:e.datasource.dataset)||!(null==r?void 0:r.dataset))break;let t=a(e.id||"");r.dataset(null==e?void 0:e.datasource.dataset.id,t).then(e=>n((null==e?void 0:e.data)||null)).catch(e=>{console.error(e),n(null)})}return n(null)},[null==e?void 0:e.datasource,t]),{datasource:l}},lp=t.div`
|
|
1012
1012
|
box-sizing: border-box;
|
|
1013
1013
|
margin: 0;
|
|
1014
1014
|
padding: 0;
|
|
@@ -1085,7 +1085,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
|
|
|
1085
1085
|
const module = undefined;
|
|
1086
1086
|
const exports = undefined;
|
|
1087
1087
|
${e.customRender}
|
|
1088
|
-
`)(console,Math,Date,Array,Object,String,Number,Boolean,t,l,n):e.render})),m=()=>{console.log("callback table")};return(0,eE.useEffect)(()=>{u({id:l.id,callback:m})},[]),(0,eO.jsx)(ea,{id:t,dataSource:n,columns:x,pagination:p,bordered:i,size:o,showHeader:"boolean"!=typeof s||s,rowKey:(e,t)=>String(t),style:{padding:1,...d},className:c})},formComponent:e=>{let{model:t,onChange:l}=e,i=(e,n)=>l&&l({...t,[e]:n}),o=(e,l)=>{let n=[...t.columns||[]];n[e]={...n[e],...l},i("columns",n)},[s,d]=(0,eE.useState)(!1),[u,x]=(0,eE.useState)(null),m=null!=u&&t.columns[u]?t.columns[u]:{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1},h=[{title:"列名",dataIndex:"title"},{title:"数据索引",dataIndex:"dataIndex"},{title:"操作",width:80,align:"center",render:(e,l,n)=>(0,eO.jsxs)(en,{children:[(0,eO.jsx)("a",{onClick:()=>{x(n),d(!0)},children:(0,eO.jsx)(p,{})}),(0,eO.jsx)("a",{onClick:()=>{let e;(e=[...t.columns||[]]).splice(n,1),i("columns",e)},children:(0,eO.jsx)(c,{})})]})}];return(0,eO.jsxs)("div",{children:[(0,eO.jsxs)(K,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eO.jsx)(K.Item,{label:"大小",children:(0,eO.jsxs)(Z.Group,{size:"small",value:t.size,onChange:e=>i("size",e.target.value),children:[(0,eO.jsx)(Z.Button,{value:"small",children:"小"}),(0,eO.jsx)(Z.Button,{value:"middle",children:"中"}),(0,eO.jsx)(Z.Button,{value:"large",children:"大"})]})}),(0,eO.jsx)(K.Item,{label:"边框",children:(0,eO.jsx)(er,{size:"small",checked:!!t.bordered,onChange:e=>i("bordered",e)})}),(0,eO.jsx)(K.Item,{label:"显示表头",children:(0,eO.jsx)(er,{size:"small",checked:!!t.showHeader,onChange:e=>i("showHeader",e)})}),(0,eO.jsx)(K.Item,{label:"分页大小",children:(0,eO.jsx)(U,{size:"small",value:t.pageSize,onChange:e=>i("pageSize",e)})})]}),(0,eO.jsx)(H,{children:"表格列设置"}),(0,eO.jsx)(ea,{size:"small",dataSource:t.columns,rowKey:(e,t)=>String(t),columns:h,pagination:!1,bordered:!0}),(0,eO.jsx)(P,{size:"small",onClick:()=>{i("columns",[...t.columns||[],{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1}])},block:!0,children:"添加列"}),(0,eO.jsx)(q,{title:"编辑列",open:s,footer:null,width:400,onCancel:()=>d(!1),children:(0,eO.jsx)(K,{layout:"vertical",children:(0,eO.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,eO.jsx)(K.Item,{label:"列名",children:(0,eO.jsx)(W,{value:m.title,onChange:e=>o(u,{title:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"数据索引",children:(0,eO.jsx)(W,{value:m.dataIndex,onChange:e=>o(u,{dataIndex:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"宽度",children:(0,eO.jsx)(W,{value:m.width,onChange:e=>o(u,{width:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"对齐",children:(0,eO.jsxs)(Z.Group,{value:m.align,onChange:e=>o(u,{align:e.target.value}),children:[(0,eO.jsx)(Z.Button,{value:"left",children:(0,eO.jsx)(r,{})}),(0,eO.jsx)(Z.Button,{value:"center",children:(0,eO.jsx)(n,{})}),(0,eO.jsx)(Z.Button,{value:"right",children:(0,eO.jsx)(a,{})})]})}),(0,eO.jsx)(K.Item,{label:"省略",children:(0,eO.jsx)(er,{checked:!!m.ellipsis,onChange:e=>o(u,{ellipsis:e})})})]})})})]})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:null},props:{size:"default",bordered:!0,showHeader:!0,pageSize:10,dataSource:[{name:"苹果",count:12},{name:"华为",count:803},{name:"OPPO",count:654},{name:"vivo",count:719}],columns:[{title:"品牌",dataIndex:"name"},{title:"日销量(件)",dataIndex:"count"}]}}},{group:"基础组件",key:"b-list",label:"列表",icon:"icon-unordered-list",component:e=>{let{id:t,pageSize:l=10,bordered:n=!0,size:r="default",itemLayout:a="horizontal",item:i,split:o=!0,style:s={},className:d}=e,{initCallback:c}=(0,eE.useContext)(eA),[u,p]=(0,eE.useState)(0),x=lu(i,u),m=(0,eE.useRef)(x);(0,eE.useEffect)(()=>{m.current=x},[x]);let
|
|
1088
|
+
`)(console,Math,Date,Array,Object,String,Number,Boolean,t,l,n):e.render})),m=()=>{console.log("callback table")};return(0,eE.useEffect)(()=>{u({id:l.id,callback:m})},[]),(0,eO.jsx)(ea,{id:t,dataSource:n,columns:x,pagination:p,bordered:i,size:o,showHeader:"boolean"!=typeof s||s,rowKey:(e,t)=>String(t),style:{padding:1,...d},className:c})},formComponent:e=>{let{model:t,onChange:l}=e,i=(e,n)=>l&&l({...t,[e]:n}),o=(e,l)=>{let n=[...t.columns||[]];n[e]={...n[e],...l},i("columns",n)},[s,d]=(0,eE.useState)(!1),[u,x]=(0,eE.useState)(null),m=null!=u&&t.columns[u]?t.columns[u]:{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1},h=[{title:"列名",dataIndex:"title"},{title:"数据索引",dataIndex:"dataIndex"},{title:"操作",width:80,align:"center",render:(e,l,n)=>(0,eO.jsxs)(en,{children:[(0,eO.jsx)("a",{onClick:()=>{x(n),d(!0)},children:(0,eO.jsx)(p,{})}),(0,eO.jsx)("a",{onClick:()=>{let e;(e=[...t.columns||[]]).splice(n,1),i("columns",e)},children:(0,eO.jsx)(c,{})})]})}];return(0,eO.jsxs)("div",{children:[(0,eO.jsxs)(K,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,eO.jsx)(K.Item,{label:"大小",children:(0,eO.jsxs)(Z.Group,{size:"small",value:t.size,onChange:e=>i("size",e.target.value),children:[(0,eO.jsx)(Z.Button,{value:"small",children:"小"}),(0,eO.jsx)(Z.Button,{value:"middle",children:"中"}),(0,eO.jsx)(Z.Button,{value:"large",children:"大"})]})}),(0,eO.jsx)(K.Item,{label:"边框",children:(0,eO.jsx)(er,{size:"small",checked:!!t.bordered,onChange:e=>i("bordered",e)})}),(0,eO.jsx)(K.Item,{label:"显示表头",children:(0,eO.jsx)(er,{size:"small",checked:!!t.showHeader,onChange:e=>i("showHeader",e)})}),(0,eO.jsx)(K.Item,{label:"分页大小",children:(0,eO.jsx)(U,{size:"small",value:t.pageSize,onChange:e=>i("pageSize",e)})})]}),(0,eO.jsx)(H,{children:"表格列设置"}),(0,eO.jsx)(ea,{size:"small",dataSource:t.columns,rowKey:(e,t)=>String(t),columns:h,pagination:!1,bordered:!0}),(0,eO.jsx)(P,{size:"small",onClick:()=>{i("columns",[...t.columns||[],{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1}])},block:!0,children:"添加列"}),(0,eO.jsx)(q,{title:"编辑列",open:s,footer:null,width:400,onCancel:()=>d(!1),children:(0,eO.jsx)(K,{layout:"vertical",children:(0,eO.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,eO.jsx)(K.Item,{label:"列名",children:(0,eO.jsx)(W,{value:m.title,onChange:e=>o(u,{title:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"数据索引",children:(0,eO.jsx)(W,{value:m.dataIndex,onChange:e=>o(u,{dataIndex:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"宽度",children:(0,eO.jsx)(W,{value:m.width,onChange:e=>o(u,{width:e.target.value})})}),(0,eO.jsx)(K.Item,{label:"对齐",children:(0,eO.jsxs)(Z.Group,{value:m.align,onChange:e=>o(u,{align:e.target.value}),children:[(0,eO.jsx)(Z.Button,{value:"left",children:(0,eO.jsx)(r,{})}),(0,eO.jsx)(Z.Button,{value:"center",children:(0,eO.jsx)(n,{})}),(0,eO.jsx)(Z.Button,{value:"right",children:(0,eO.jsx)(a,{})})]})}),(0,eO.jsx)(K.Item,{label:"省略",children:(0,eO.jsx)(er,{checked:!!m.ellipsis,onChange:e=>o(u,{ellipsis:e})})})]})})})]})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:null},props:{size:"default",bordered:!0,showHeader:!0,pageSize:10,dataSource:[{name:"苹果",count:12},{name:"华为",count:803},{name:"OPPO",count:654},{name:"vivo",count:719}],columns:[{title:"品牌",dataIndex:"name"},{title:"日销量(件)",dataIndex:"count"}]}}},{group:"基础组件",key:"b-list",label:"列表",icon:"icon-unordered-list",component:e=>{let{id:t,pageSize:l=10,bordered:n=!0,size:r="default",itemLayout:a="horizontal",item:i,split:o=!0,style:s={},className:d}=e,{initCallback:c}=(0,eE.useContext)(eA),[u,p]=(0,eE.useState)(0),x=lu(i,u),m=(0,eE.useRef)(x);(0,eE.useEffect)(()=>{m.current=x},[x]);let{datasource:h}=m.current||[],f=(0,eE.useMemo)(()=>!!l&&!(l<=h.length)&&{total:h.length,pageSize:l,size:"default"===r?void 0:r,showSizeChanger:!0,showQuickJumper:!0,hideOnSinglePage:!0,pageSizeOptions:["10","20","30","40"],showTotal:(e,t)=>`共 ${e} 条记录,显示第 ${t[0]}-${t[1]} 条`},[l,h.length,r]),g=["p-list",a?`p-list--${a}`:void 0,r?`p-list--${r}`:void 0,o?"p-list--split":void 0,n?"p-list--bordered":void 0,d],v=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&p(e=>e+1),{target:i,data:m.current}};return(0,eE.useEffect)(()=>{c({id:i.id,callback:v})},[]),(0,eO.jsxs)("div",{id:t,style:{display:"flex",flexDirection:"column",...s},className:g.filter(Boolean).join(" "),children:[(0,eO.jsx)(lb,{list:h,split:o,bordered:n,size:r,itemLayout:a}),f&&(0,eO.jsx)(X,{...f})]})},formComponent:e=>{let{model:t,onChange:l}=e,[n]=K.useForm();return(0,eE.useEffect)(()=>{n.setFieldsValue({size:t.size||"default",itemLayout:t.itemLayout||"horizontal",bordered:t.bordered??!1,split:t.split??!0,pageSize:t.pageSize||10})},[t,n]),(0,eO.jsxs)(K,{form:n,labelCol:{span:12},wrapperCol:{span:12},onValuesChange:e=>{null==l||l({...t,...e})},children:[(0,eO.jsx)(K.Item,{label:"大小",name:"size",children:(0,eO.jsxs)(Z.Group,{size:"small",buttonStyle:"solid",children:[(0,eO.jsx)(Z.Button,{value:"default",children:"默认"}),(0,eO.jsx)(Z.Button,{value:"small",children:"小"})]})}),(0,eO.jsx)(K.Item,{label:"布局",name:"itemLayout",children:(0,eO.jsxs)(Z.Group,{size:"small",buttonStyle:"solid",children:[(0,eO.jsx)(Z.Button,{value:"horizontal",children:"水平"}),(0,eO.jsx)(Z.Button,{value:"vertical",children:"垂直"})]})}),(0,eO.jsx)(K.Item,{label:"边框",name:"bordered",valuePropName:"checked",children:(0,eO.jsx)(er,{size:"small"})}),(0,eO.jsx)(K.Item,{label:"分割线",name:"split",valuePropName:"checked",children:(0,eO.jsx)(er,{size:"small"})}),(0,eO.jsx)(K.Item,{label:"分页大小",name:"pageSize",children:(0,eO.jsx)(U,{size:"small"})})]})},defaultOptions:{datasource:{source:"custom",custom:"[]"},props:{size:"default",itemLayout:"horizontal",bordered:!0,split:!0,pageSize:10}}},{group:"基础组件",key:"b-html",label:"HTML",icon:"icon-html",component:e=>{let{id:t,template:l="",item:n,style:r,className:a,classNames:i=[]}=e,{initCallback:o}=(0,eE.useContext)(eA),[s,d]=(0,eE.useState)(0),{datasource:c}=lu(n,s),u=(0,eE.useRef)(c);(0,eE.useEffect)(()=>{u.current=c},[c]);let p=(0,eE.useMemo)(()=>Object.keys(c||{}),[c]),x=(0,eE.useMemo)(()=>p.map(e=>null==c?void 0:c[e]),[p,c]),m=(0,eE.useMemo)(()=>(l||"").replace(/##\s*([^#]+)\s*##/g,(e,t)=>{try{return Function(...p,`
|
|
1089
1089
|
"use strict";
|
|
1090
1090
|
const window = undefined;
|
|
1091
1091
|
const document = undefined;
|
|
@@ -1095,7 +1095,7 @@ import*as e from"react";import t,{css as l}from"styled-components";import{AlignC
|
|
|
1095
1095
|
const module = undefined;
|
|
1096
1096
|
const exports = undefined;
|
|
1097
1097
|
return ${t};
|
|
1098
|
-
`)(...x)}catch{return""}}),[l,x]),h=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&d(e=>e+1),{target:n,data:u.current}};return(0,eE.useEffect)(()=>{o({id:n.id,callback:h})},[]),(0,eO.jsx)("div",{id:t,style:r,className:(i||[]).join(" ")+" "+a,dangerouslySetInnerHTML:{__html:m}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,eE.useRef)(null),r=(e,n)=>l&&l({...t,[e]:n});return(0,eO.jsx)("div",{children:(0,eO.jsxs)(K,{layout:"vertical",children:[(0,eO.jsx)(K.Item,{label:"类名",children:(0,eO.jsx)(et,{size:"small",value:t.classNames,mode:"tags",onChange:e=>r("classNames",e)})}),(0,eO.jsx)(K.Item,{label:(0,eO.jsxs)(eO.Fragment,{children:["模板",(0,eO.jsxs)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:[(0,eO.jsx)(th,{type:"icon-formate"})," 格式化"]})]}),className:"ant-form-item-label-space",children:(0,eO.jsx)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:(0,eO.jsx)(em,{onMount:e=>{n.current={editor:e}},height:"300px",defaultLanguage:"html",value:t.template,onChange:e=>r("template",e||""),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'{"name": "Confucius"}'},props:{template:"<div>{{name}}, welcome to the world of programming.</div>"}}},{group:"基础组件",key:"b-echarts",label:"图表",icon:"icon-echarts",component:e=>{let{id:t,script:l="",item:n,height:r=400,style:a,className:i}=e,{initCallback:o}=(0,eE.useContext)(eA),s=(0,eE.useRef)(null),[d,c]=(0,eE.useState)(null),[u,p]=(0,eE.useState)(0),x=lu(n,u),m=(0,eE.useRef)(x);(0,eE.useEffect)(()=>{console.log("datasource",x),m.current=x},[x]);let h=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return arguments.length>1&&arguments[1],e&&p(e=>e+1),{target:n,data:m.current}};return(0,eE.useEffect)(()=>{if(!s.current)return;let e=ev.init(s.current);c(e);let t=()=>e.resize();return window.addEventListener("resize",t),o({id:n.id,callback:h}),()=>{window.removeEventListener("resize",t),e.dispose()}},[]),(0,eE.useEffect)(()=>{let e;e=(e=>{try{return JSON.parse(e)}catch(t){try{return Function("echarts","console","Math","Date","Array","Object","String","Number","Boolean","data",`
|
|
1098
|
+
`)(...x)}catch{return""}}),[l,x]),h=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&d(e=>e+1),{target:n,data:u.current}};return(0,eE.useEffect)(()=>{o({id:n.id,callback:h})},[]),(0,eO.jsx)("div",{id:t,style:r,className:(i||[]).join(" ")+" "+a,dangerouslySetInnerHTML:{__html:m}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,eE.useRef)(null),r=(e,n)=>l&&l({...t,[e]:n});return(0,eO.jsx)("div",{children:(0,eO.jsxs)(K,{layout:"vertical",children:[(0,eO.jsx)(K.Item,{label:"类名",children:(0,eO.jsx)(et,{size:"small",value:t.classNames,mode:"tags",onChange:e=>r("classNames",e)})}),(0,eO.jsx)(K.Item,{label:(0,eO.jsxs)(eO.Fragment,{children:["模板",(0,eO.jsxs)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:[(0,eO.jsx)(th,{type:"icon-formate"})," 格式化"]})]}),className:"ant-form-item-label-space",children:(0,eO.jsx)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:(0,eO.jsx)(em,{onMount:e=>{n.current={editor:e}},height:"300px",defaultLanguage:"html",value:t.template,onChange:e=>r("template",e||""),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'{"name": "Confucius"}'},props:{template:"<div>{{name}}, welcome to the world of programming.</div>"}}},{group:"基础组件",key:"b-echarts",label:"图表",icon:"icon-echarts",component:e=>{let{id:t,script:l="",item:n,height:r=400,style:a,className:i}=e,{initCallback:o}=(0,eE.useContext)(eA),s=(0,eE.useRef)(null),[d,c]=(0,eE.useState)(null),[u,p]=(0,eE.useState)(0),{datasource:x}=lu(n,u),m=(0,eE.useRef)(x);(0,eE.useEffect)(()=>{console.log("datasource",x),m.current=x},[x]);let h=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return arguments.length>1&&arguments[1],e&&p(e=>e+1),{target:n,data:m.current}};return(0,eE.useEffect)(()=>{if(!s.current)return;let e=ev.init(s.current);c(e);let t=()=>e.resize();return window.addEventListener("resize",t),o({id:n.id,callback:h}),()=>{window.removeEventListener("resize",t),e.dispose()}},[]),(0,eE.useEffect)(()=>{let e;e=(e=>{try{return JSON.parse(e)}catch(t){try{return Function("echarts","console","Math","Date","Array","Object","String","Number","Boolean","data",`
|
|
1099
1099
|
"use strict";
|
|
1100
1100
|
const window = undefined;
|
|
1101
1101
|
const document = undefined;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { SchemaItemType } from "../typing";
|
|
2
2
|
export type Signal = string | number;
|
|
3
|
-
export declare const useDatasource: (item: SchemaItemType, signal?: Signal) =>
|
|
3
|
+
export declare const useDatasource: (item: SchemaItemType, signal?: Signal) => {
|
|
4
|
+
datasource: any;
|
|
5
|
+
};
|
|
@@ -1008,7 +1008,7 @@
|
|
|
1008
1008
|
color: #999;
|
|
1009
1009
|
font-size: 12px;
|
|
1010
1010
|
}
|
|
1011
|
-
`,tx=(e,t)=>{let[l,n]=(0,c.useState)(null),{fetch:r,getVars:a}=(0,c.useContext)(f);return(0,c.useEffect)(()=>{if(!(null==e?void 0:e.datasource))return n(null);switch((null==e?void 0:e.datasource.source)||"custom"){case"custom":try{return n(JSON.parse((null==e?void 0:e.datasource.custom)||"[]"))}catch(e){break}case"dataset":if(!(null==e?void 0:e.datasource.dataset)||!(null==r?void 0:r.dataset))break;let t=a(e.id||"");r.dataset(null==e?void 0:e.datasource.dataset.id,t).then(e=>n((null==e?void 0:e.data)||null)).catch(e=>{console.error(e),n(null)})}return n(null)},[null==e?void 0:e.datasource,t]),l},th=h().div`
|
|
1011
|
+
`,tx=(e,t)=>{let[l,n]=(0,c.useState)(null),{fetch:r,getVars:a}=(0,c.useContext)(f);return(0,c.useEffect)(()=>{if(!(null==e?void 0:e.datasource))return n(null);switch((null==e?void 0:e.datasource.source)||"custom"){case"custom":try{return n(JSON.parse((null==e?void 0:e.datasource.custom)||"[]"))}catch(e){break}case"dataset":if(!(null==e?void 0:e.datasource.dataset)||!(null==r?void 0:r.dataset))break;let t=a(e.id||"");r.dataset(null==e?void 0:e.datasource.dataset.id,t).then(e=>n((null==e?void 0:e.data)||null)).catch(e=>{console.error(e),n(null)})}return n(null)},[null==e?void 0:e.datasource,t]),{datasource:l}},th=h().div`
|
|
1012
1012
|
box-sizing: border-box;
|
|
1013
1013
|
margin: 0;
|
|
1014
1014
|
padding: 0;
|
|
@@ -1085,7 +1085,7 @@
|
|
|
1085
1085
|
const module = undefined;
|
|
1086
1086
|
const exports = undefined;
|
|
1087
1087
|
${e.customRender}
|
|
1088
|
-
`)(console,Math,Date,Array,Object,String,Number,Boolean,t,l,n):e.render})),g=()=>{console.log("callback table")};return(0,c.useEffect)(()=>{m({id:l.id,callback:g})},[]),(0,d.jsx)(ep.Table,{id:t,dataSource:n,columns:h,pagination:x,bordered:i,size:o,showHeader:"boolean"!=typeof s||s,rowKey:(e,t)=>String(t),style:{padding:1,...u},className:p})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=(e,l)=>{let r=[...t.columns||[]];r[e]={...r[e],...l},n("columns",r)},[a,i]=(0,c.useState)(!1),[o,s]=(0,c.useState)(null),u=null!=o&&t.columns[o]?t.columns[o]:{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1},p=[{title:"列名",dataIndex:"title"},{title:"数据索引",dataIndex:"dataIndex"},{title:"操作",width:80,align:"center",render:(e,l,r)=>(0,d.jsxs)(ep.Space,{children:[(0,d.jsx)("a",{onClick:()=>{s(r),i(!0)},children:(0,d.jsx)(ed.EditOutlined,{})}),(0,d.jsx)("a",{onClick:()=>{let e;(e=[...t.columns||[]]).splice(r,1),n("columns",e)},children:(0,d.jsx)(ed.DeleteOutlined,{})})]})}];return(0,d.jsxs)("div",{children:[(0,d.jsxs)(ep.Form,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,d.jsx)(ep.Form.Item,{label:"大小",children:(0,d.jsxs)(ep.Radio.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,d.jsx)(ep.Radio.Button,{value:"small",children:"小"}),(0,d.jsx)(ep.Radio.Button,{value:"middle",children:"中"}),(0,d.jsx)(ep.Radio.Button,{value:"large",children:"大"})]})}),(0,d.jsx)(ep.Form.Item,{label:"边框",children:(0,d.jsx)(ep.Switch,{size:"small",checked:!!t.bordered,onChange:e=>n("bordered",e)})}),(0,d.jsx)(ep.Form.Item,{label:"显示表头",children:(0,d.jsx)(ep.Switch,{size:"small",checked:!!t.showHeader,onChange:e=>n("showHeader",e)})}),(0,d.jsx)(ep.Form.Item,{label:"分页大小",children:(0,d.jsx)(ep.InputNumber,{size:"small",value:t.pageSize,onChange:e=>n("pageSize",e)})})]}),(0,d.jsx)(ep.Divider,{children:"表格列设置"}),(0,d.jsx)(ep.Table,{size:"small",dataSource:t.columns,rowKey:(e,t)=>String(t),columns:p,pagination:!1,bordered:!0}),(0,d.jsx)(ep.Button,{size:"small",onClick:()=>{n("columns",[...t.columns||[],{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1}])},block:!0,children:"添加列"}),(0,d.jsx)(ep.Modal,{title:"编辑列",open:a,footer:null,width:400,onCancel:()=>i(!1),children:(0,d.jsx)(ep.Form,{layout:"vertical",children:(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,d.jsx)(ep.Form.Item,{label:"列名",children:(0,d.jsx)(ep.Input,{value:u.title,onChange:e=>r(o,{title:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"数据索引",children:(0,d.jsx)(ep.Input,{value:u.dataIndex,onChange:e=>r(o,{dataIndex:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"宽度",children:(0,d.jsx)(ep.Input,{value:u.width,onChange:e=>r(o,{width:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"对齐",children:(0,d.jsxs)(ep.Radio.Group,{value:u.align,onChange:e=>r(o,{align:e.target.value}),children:[(0,d.jsx)(ep.Radio.Button,{value:"left",children:(0,d.jsx)(ed.AlignLeftOutlined,{})}),(0,d.jsx)(ep.Radio.Button,{value:"center",children:(0,d.jsx)(ed.AlignCenterOutlined,{})}),(0,d.jsx)(ep.Radio.Button,{value:"right",children:(0,d.jsx)(ed.AlignRightOutlined,{})})]})}),(0,d.jsx)(ep.Form.Item,{label:"省略",children:(0,d.jsx)(ep.Switch,{checked:!!u.ellipsis,onChange:e=>r(o,{ellipsis:e})})})]})})})]})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:null},props:{size:"default",bordered:!0,showHeader:!0,pageSize:10,dataSource:[{name:"苹果",count:12},{name:"华为",count:803},{name:"OPPO",count:654},{name:"vivo",count:719}],columns:[{title:"品牌",dataIndex:"name"},{title:"日销量(件)",dataIndex:"count"}]}}},{group:"基础组件",key:"b-list",label:"列表",icon:"icon-unordered-list",component:e=>{let{id:t,pageSize:l=10,bordered:n=!0,size:r="default",itemLayout:a="horizontal",item:i,split:o=!0,style:s={},className:u}=e,{initCallback:p}=(0,c.useContext)(f),[m,x]=(0,c.useState)(0),h=tx(i,m),g=(0,c.useRef)(h);(0,c.useEffect)(()=>{g.current=h},[h]);let
|
|
1088
|
+
`)(console,Math,Date,Array,Object,String,Number,Boolean,t,l,n):e.render})),g=()=>{console.log("callback table")};return(0,c.useEffect)(()=>{m({id:l.id,callback:g})},[]),(0,d.jsx)(ep.Table,{id:t,dataSource:n,columns:h,pagination:x,bordered:i,size:o,showHeader:"boolean"!=typeof s||s,rowKey:(e,t)=>String(t),style:{padding:1,...u},className:p})},formComponent:e=>{let{model:t,onChange:l}=e,n=(e,n)=>l&&l({...t,[e]:n}),r=(e,l)=>{let r=[...t.columns||[]];r[e]={...r[e],...l},n("columns",r)},[a,i]=(0,c.useState)(!1),[o,s]=(0,c.useState)(null),u=null!=o&&t.columns[o]?t.columns[o]:{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1},p=[{title:"列名",dataIndex:"title"},{title:"数据索引",dataIndex:"dataIndex"},{title:"操作",width:80,align:"center",render:(e,l,r)=>(0,d.jsxs)(ep.Space,{children:[(0,d.jsx)("a",{onClick:()=>{s(r),i(!0)},children:(0,d.jsx)(ed.EditOutlined,{})}),(0,d.jsx)("a",{onClick:()=>{let e;(e=[...t.columns||[]]).splice(r,1),n("columns",e)},children:(0,d.jsx)(ed.DeleteOutlined,{})})]})}];return(0,d.jsxs)("div",{children:[(0,d.jsxs)(ep.Form,{labelCol:{span:12},wrapperCol:{span:12},children:[(0,d.jsx)(ep.Form.Item,{label:"大小",children:(0,d.jsxs)(ep.Radio.Group,{size:"small",value:t.size,onChange:e=>n("size",e.target.value),children:[(0,d.jsx)(ep.Radio.Button,{value:"small",children:"小"}),(0,d.jsx)(ep.Radio.Button,{value:"middle",children:"中"}),(0,d.jsx)(ep.Radio.Button,{value:"large",children:"大"})]})}),(0,d.jsx)(ep.Form.Item,{label:"边框",children:(0,d.jsx)(ep.Switch,{size:"small",checked:!!t.bordered,onChange:e=>n("bordered",e)})}),(0,d.jsx)(ep.Form.Item,{label:"显示表头",children:(0,d.jsx)(ep.Switch,{size:"small",checked:!!t.showHeader,onChange:e=>n("showHeader",e)})}),(0,d.jsx)(ep.Form.Item,{label:"分页大小",children:(0,d.jsx)(ep.InputNumber,{size:"small",value:t.pageSize,onChange:e=>n("pageSize",e)})})]}),(0,d.jsx)(ep.Divider,{children:"表格列设置"}),(0,d.jsx)(ep.Table,{size:"small",dataSource:t.columns,rowKey:(e,t)=>String(t),columns:p,pagination:!1,bordered:!0}),(0,d.jsx)(ep.Button,{size:"small",onClick:()=>{n("columns",[...t.columns||[],{title:"",dataIndex:"",width:"",align:"left",ellipsis:!1}])},block:!0,children:"添加列"}),(0,d.jsx)(ep.Modal,{title:"编辑列",open:a,footer:null,width:400,onCancel:()=>i(!1),children:(0,d.jsx)(ep.Form,{layout:"vertical",children:(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,d.jsx)(ep.Form.Item,{label:"列名",children:(0,d.jsx)(ep.Input,{value:u.title,onChange:e=>r(o,{title:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"数据索引",children:(0,d.jsx)(ep.Input,{value:u.dataIndex,onChange:e=>r(o,{dataIndex:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"宽度",children:(0,d.jsx)(ep.Input,{value:u.width,onChange:e=>r(o,{width:e.target.value})})}),(0,d.jsx)(ep.Form.Item,{label:"对齐",children:(0,d.jsxs)(ep.Radio.Group,{value:u.align,onChange:e=>r(o,{align:e.target.value}),children:[(0,d.jsx)(ep.Radio.Button,{value:"left",children:(0,d.jsx)(ed.AlignLeftOutlined,{})}),(0,d.jsx)(ep.Radio.Button,{value:"center",children:(0,d.jsx)(ed.AlignCenterOutlined,{})}),(0,d.jsx)(ep.Radio.Button,{value:"right",children:(0,d.jsx)(ed.AlignRightOutlined,{})})]})}),(0,d.jsx)(ep.Form.Item,{label:"省略",children:(0,d.jsx)(ep.Switch,{checked:!!u.ellipsis,onChange:e=>r(o,{ellipsis:e})})})]})})})]})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:null},props:{size:"default",bordered:!0,showHeader:!0,pageSize:10,dataSource:[{name:"苹果",count:12},{name:"华为",count:803},{name:"OPPO",count:654},{name:"vivo",count:719}],columns:[{title:"品牌",dataIndex:"name"},{title:"日销量(件)",dataIndex:"count"}]}}},{group:"基础组件",key:"b-list",label:"列表",icon:"icon-unordered-list",component:e=>{let{id:t,pageSize:l=10,bordered:n=!0,size:r="default",itemLayout:a="horizontal",item:i,split:o=!0,style:s={},className:u}=e,{initCallback:p}=(0,c.useContext)(f),[m,x]=(0,c.useState)(0),h=tx(i,m),g=(0,c.useRef)(h);(0,c.useEffect)(()=>{g.current=h},[h]);let{datasource:v}=g.current||[],j=(0,c.useMemo)(()=>!!l&&!(l<=v.length)&&{total:v.length,pageSize:l,size:"default"===r?void 0:r,showSizeChanger:!0,showQuickJumper:!0,hideOnSinglePage:!0,pageSizeOptions:["10","20","30","40"],showTotal:(e,t)=>`共 ${e} 条记录,显示第 ${t[0]}-${t[1]} 条`},[l,v.length,r]),b=["p-list",a?`p-list--${a}`:void 0,r?`p-list--${r}`:void 0,o?"p-list--split":void 0,n?"p-list--bordered":void 0,u],y=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&x(e=>e+1),{target:i,data:g.current}};return(0,c.useEffect)(()=>{p({id:i.id,callback:y})},[]),(0,d.jsxs)("div",{id:t,style:{display:"flex",flexDirection:"column",...s},className:b.filter(Boolean).join(" "),children:[(0,d.jsx)(tC,{list:v,split:o,bordered:n,size:r,itemLayout:a}),j&&(0,d.jsx)(ep.Pagination,{...j})]})},formComponent:e=>{let{model:t,onChange:l}=e,[n]=ep.Form.useForm();return(0,c.useEffect)(()=>{n.setFieldsValue({size:t.size||"default",itemLayout:t.itemLayout||"horizontal",bordered:t.bordered??!1,split:t.split??!0,pageSize:t.pageSize||10})},[t,n]),(0,d.jsxs)(ep.Form,{form:n,labelCol:{span:12},wrapperCol:{span:12},onValuesChange:e=>{null==l||l({...t,...e})},children:[(0,d.jsx)(ep.Form.Item,{label:"大小",name:"size",children:(0,d.jsxs)(ep.Radio.Group,{size:"small",buttonStyle:"solid",children:[(0,d.jsx)(ep.Radio.Button,{value:"default",children:"默认"}),(0,d.jsx)(ep.Radio.Button,{value:"small",children:"小"})]})}),(0,d.jsx)(ep.Form.Item,{label:"布局",name:"itemLayout",children:(0,d.jsxs)(ep.Radio.Group,{size:"small",buttonStyle:"solid",children:[(0,d.jsx)(ep.Radio.Button,{value:"horizontal",children:"水平"}),(0,d.jsx)(ep.Radio.Button,{value:"vertical",children:"垂直"})]})}),(0,d.jsx)(ep.Form.Item,{label:"边框",name:"bordered",valuePropName:"checked",children:(0,d.jsx)(ep.Switch,{size:"small"})}),(0,d.jsx)(ep.Form.Item,{label:"分割线",name:"split",valuePropName:"checked",children:(0,d.jsx)(ep.Switch,{size:"small"})}),(0,d.jsx)(ep.Form.Item,{label:"分页大小",name:"pageSize",children:(0,d.jsx)(ep.InputNumber,{size:"small"})})]})},defaultOptions:{datasource:{source:"custom",custom:"[]"},props:{size:"default",itemLayout:"horizontal",bordered:!0,split:!0,pageSize:10}}},{group:"基础组件",key:"b-html",label:"HTML",icon:"icon-html",component:e=>{let{id:t,template:l="",item:n,style:r,className:a,classNames:i=[]}=e,{initCallback:o}=(0,c.useContext)(f),[s,u]=(0,c.useState)(0),{datasource:p}=tx(n,s),m=(0,c.useRef)(p);(0,c.useEffect)(()=>{m.current=p},[p]);let x=(0,c.useMemo)(()=>Object.keys(p||{}),[p]),h=(0,c.useMemo)(()=>x.map(e=>null==p?void 0:p[e]),[x,p]),g=(0,c.useMemo)(()=>(l||"").replace(/##\s*([^#]+)\s*##/g,(e,t)=>{try{return Function(...x,`
|
|
1089
1089
|
"use strict";
|
|
1090
1090
|
const window = undefined;
|
|
1091
1091
|
const document = undefined;
|
|
@@ -1095,7 +1095,7 @@
|
|
|
1095
1095
|
const module = undefined;
|
|
1096
1096
|
const exports = undefined;
|
|
1097
1097
|
return ${t};
|
|
1098
|
-
`)(...h)}catch{return""}}),[l,h]),v=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&u(e=>e+1),{target:n,data:m.current}};return(0,c.useEffect)(()=>{o({id:n.id,callback:v})},[]),(0,d.jsx)("div",{id:t,style:r,className:(i||[]).join(" ")+" "+a,dangerouslySetInnerHTML:{__html:g}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,c.useRef)(null),r=(e,n)=>l&&l({...t,[e]:n});return(0,d.jsx)("div",{children:(0,d.jsxs)(ep.Form,{layout:"vertical",children:[(0,d.jsx)(ep.Form.Item,{label:"类名",children:(0,d.jsx)(ep.Select,{size:"small",value:t.classNames,mode:"tags",onChange:e=>r("classNames",e)})}),(0,d.jsx)(ep.Form.Item,{label:(0,d.jsxs)(d.Fragment,{children:["模板",(0,d.jsxs)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:[(0,d.jsx)(eu,{type:"icon-formate"})," 格式化"]})]}),className:"ant-form-item-label-space",children:(0,d.jsx)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:(0,d.jsx)(ef(),{onMount:e=>{n.current={editor:e}},height:"300px",defaultLanguage:"html",value:t.template,onChange:e=>r("template",e||""),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'{"name": "Confucius"}'},props:{template:"<div>{{name}}, welcome to the world of programming.</div>"}}},{group:"基础组件",key:"b-echarts",label:"图表",icon:"icon-echarts",component:e=>{let{id:t,script:l="",item:n,height:r=400,style:a,className:i}=e,{initCallback:o}=(0,c.useContext)(f),s=(0,c.useRef)(null),[u,p]=(0,c.useState)(null),[m,x]=(0,c.useState)(0),h=tx(n,m),g=(0,c.useRef)(h);(0,c.useEffect)(()=>{console.log("datasource",h),g.current=h},[h]);let v=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return arguments.length>1&&arguments[1],e&&x(e=>e+1),{target:n,data:g.current}};return(0,c.useEffect)(()=>{if(!s.current)return;let e=tS.init(s.current);p(e);let t=()=>e.resize();return window.addEventListener("resize",t),o({id:n.id,callback:v}),()=>{window.removeEventListener("resize",t),e.dispose()}},[]),(0,c.useEffect)(()=>{let e;e=(e=>{try{return JSON.parse(e)}catch(t){try{return Function("echarts","console","Math","Date","Array","Object","String","Number","Boolean","data",`
|
|
1098
|
+
`)(...h)}catch{return""}}),[l,h]),v=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e&&u(e=>e+1),{target:n,data:m.current}};return(0,c.useEffect)(()=>{o({id:n.id,callback:v})},[]),(0,d.jsx)("div",{id:t,style:r,className:(i||[]).join(" ")+" "+a,dangerouslySetInnerHTML:{__html:g}})},formComponent:e=>{let{model:t,onChange:l}=e,n=(0,c.useRef)(null),r=(e,n)=>l&&l({...t,[e]:n});return(0,d.jsx)("div",{children:(0,d.jsxs)(ep.Form,{layout:"vertical",children:[(0,d.jsx)(ep.Form.Item,{label:"类名",children:(0,d.jsx)(ep.Select,{size:"small",value:t.classNames,mode:"tags",onChange:e=>r("classNames",e)})}),(0,d.jsx)(ep.Form.Item,{label:(0,d.jsxs)(d.Fragment,{children:["模板",(0,d.jsxs)("a",{onClick:()=>{var e,t;let l=null==(e=n.current)?void 0:e.editor;null==l||null==(t=l.getAction("editor.action.formatDocument"))||t.run()},children:[(0,d.jsx)(eu,{type:"icon-formate"})," 格式化"]})]}),className:"ant-form-item-label-space",children:(0,d.jsx)("div",{style:{border:"1px solid #d9d9d9",borderRadius:4,textAlign:"left"},children:(0,d.jsx)(ef(),{onMount:e=>{n.current={editor:e}},height:"300px",defaultLanguage:"html",value:t.template,onChange:e=>r("template",e||""),options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2}})})})]})})},defaultOptions:{datasource:{source:"custom",datasourceId:null,scriptId:null,custom:'{"name": "Confucius"}'},props:{template:"<div>{{name}}, welcome to the world of programming.</div>"}}},{group:"基础组件",key:"b-echarts",label:"图表",icon:"icon-echarts",component:e=>{let{id:t,script:l="",item:n,height:r=400,style:a,className:i}=e,{initCallback:o}=(0,c.useContext)(f),s=(0,c.useRef)(null),[u,p]=(0,c.useState)(null),[m,x]=(0,c.useState)(0),{datasource:h}=tx(n,m),g=(0,c.useRef)(h);(0,c.useEffect)(()=>{console.log("datasource",h),g.current=h},[h]);let v=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return arguments.length>1&&arguments[1],e&&x(e=>e+1),{target:n,data:g.current}};return(0,c.useEffect)(()=>{if(!s.current)return;let e=tS.init(s.current);p(e);let t=()=>e.resize();return window.addEventListener("resize",t),o({id:n.id,callback:v}),()=>{window.removeEventListener("resize",t),e.dispose()}},[]),(0,c.useEffect)(()=>{let e;e=(e=>{try{return JSON.parse(e)}catch(t){try{return Function("echarts","console","Math","Date","Array","Object","String","Number","Boolean","data",`
|
|
1099
1099
|
"use strict";
|
|
1100
1100
|
const window = undefined;
|
|
1101
1101
|
const document = undefined;
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@ import { SchemaItemType } from "../typing";
|
|
|
4
4
|
|
|
5
5
|
export type Signal = string | number;
|
|
6
6
|
|
|
7
|
-
export const useDatasource = (item: SchemaItemType, signal?: Signal): any => {
|
|
7
|
+
export const useDatasource = (item: SchemaItemType, signal?: Signal): { datasource: any } => {
|
|
8
8
|
const [datasource, setDatasource] = useState<any>(null);
|
|
9
9
|
const { fetch, getVars } = useContext(PageContext);
|
|
10
10
|
useEffect(() => {
|
|
@@ -39,5 +39,5 @@ export const useDatasource = (item: SchemaItemType, signal?: Signal): any => {
|
|
|
39
39
|
return setDatasource(null);
|
|
40
40
|
}, [item?.datasource, signal]);
|
|
41
41
|
|
|
42
|
-
return datasource;
|
|
42
|
+
return { datasource };
|
|
43
43
|
};
|
|
@@ -24,7 +24,7 @@ export const EchartsRender: React.FC<EchartsRenderProps> = ({
|
|
|
24
24
|
const chartRef = useRef<HTMLDivElement | null>(null);
|
|
25
25
|
const [chart, setChart] = useState<echarts.ECharts | null>(null);
|
|
26
26
|
const [signal, setSignal] = useState<number>(0);
|
|
27
|
-
const datasource = useDatasource(item, signal);
|
|
27
|
+
const { datasource } = useDatasource(item, signal);
|
|
28
28
|
const datasourceRef = useRef(datasource);
|
|
29
29
|
useEffect(() => {
|
|
30
30
|
console.log("datasource", datasource);
|
|
@@ -32,8 +32,8 @@ export const HtmlRender: React.FC<HtmlRenderProps> = ({
|
|
|
32
32
|
}) => {
|
|
33
33
|
const { initCallback } = useContext(PageContext);
|
|
34
34
|
const [signal, setSignal] = useState<number>(0);
|
|
35
|
-
const datasource = useDatasource(item, signal);
|
|
36
|
-
|
|
35
|
+
const { datasource } = useDatasource(item, signal);
|
|
36
|
+
|
|
37
37
|
const datasourceRef = useRef(datasource);
|
|
38
38
|
useEffect(() => {
|
|
39
39
|
datasourceRef.current = datasource;
|
|
@@ -194,7 +194,7 @@ export const ListRender: React.FC<ListRenderProps> = ({
|
|
|
194
194
|
datasourceRef.current = datasource;
|
|
195
195
|
}, [datasource]);
|
|
196
196
|
|
|
197
|
-
const list = datasourceRef.current || [];
|
|
197
|
+
const { datasource: list } = datasourceRef.current || [];
|
|
198
198
|
const pagination = useMemo(() => {
|
|
199
199
|
if (!pageSize || pageSize <= list.length) return false;
|
|
200
200
|
return {
|