@devtable/dashboard 9.19.3 → 10.0.0
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/dashboard.es.js +1 -2
- package/dist/dashboard.umd.js +1 -1
- package/dist/stats.html +6177 -0
- package/package.json +1 -2
package/dist/dashboard.es.js
CHANGED
|
@@ -3021,7 +3021,7 @@ class Ji {
|
|
|
3021
3021
|
}), this.instanceRegistry.clear(), this.factoryRegistry.clear();
|
|
3022
3022
|
}
|
|
3023
3023
|
}
|
|
3024
|
-
const Js = "@devtable/dashboard", ea = "
|
|
3024
|
+
const Js = "@devtable/dashboard", ea = "10.0.0", el = "Apache-2.0", tl = {
|
|
3025
3025
|
access: "public",
|
|
3026
3026
|
registry: "https://registry.npmjs.org/"
|
|
3027
3027
|
}, nl = [
|
|
@@ -3037,7 +3037,6 @@ const Js = "@devtable/dashboard", ea = "9.19.3", el = "Apache-2.0", tl = {
|
|
|
3037
3037
|
}
|
|
3038
3038
|
}, sl = {
|
|
3039
3039
|
"dev-build": "tsc && vite build --watch",
|
|
3040
|
-
build: "tsc && vite build",
|
|
3041
3040
|
preview: "vite preview",
|
|
3042
3041
|
test: "vitest",
|
|
3043
3042
|
"test:ui": "vitest --ui",
|
package/dist/dashboard.umd.js
CHANGED
|
@@ -116,7 +116,7 @@ Check the top-level render call using <`+E+">.")}return M}}function fo(w,M){{if(
|
|
|
116
116
|
SELECT count(*) AS total
|
|
117
117
|
FROM ${n}.${t}
|
|
118
118
|
`}})).actions(e=>({setPage(t){e.page=t},resetPage(){e.page=1},setLimit(t){e.limit=t}})).actions(e=>({afterCreate(){y.addDisposer(e,ie.reaction(()=>e.keywordString,e.resetPage,{fireImmediately:!1,delay:0})),y.addDisposer(e,ie.reaction(()=>e.limit,e.resetPage,{fireImmediately:!1,delay:0}))}})),cl=y.types.model("DataSourceModel",{id:y.types.string,type:y.types.enumeration("DataSourceType",[he.HTTP,he.MySQL,he.Postgresql]),key:y.types.string,config:y.types.frozen(),tables:y.types.optional(ll,{}),columns:y.types.optional(sl,{}),tableData:y.types.optional(ul,{}),indexes:y.types.optional(ol,{}),table_schema:y.types.optional(y.types.string,""),table_name:y.types.optional(y.types.string,"")}).volatile(()=>({controllers:{tables:new AbortController,columns:new AbortController,indexes:new AbortController,tableData:new AbortController}})).actions(e=>({setKeywords(t,n){e.table_schema=t,e.table_name=n}})).actions(e=>({initKeywords(){if(e.tables.empty)return;const t=Object.keys(e.tables.data)[0],n=e.tables.data[t][0].table_name;e.setKeywords(t,n)}})).actions(e=>{const t=y.flow(function*(){var n;(n=e.controllers.tables)==null||n.abort(),e.controllers.tables=new AbortController,e.tables.state="loading";try{const i=yield*y.toGenerator(Ee.query(e.controllers.tables.signal)({type:e.type,key:e.key,query:e.tables.sql},{}));e.tables.data=v.groupBy(i,"table_schema"),e.tables.state="idle",e.tables.error=null,e.initKeywords()}catch(i){if(!Ze.isCancel(i)){e.tables.data={};const s=v.get(i,"message","unkown error");e.tables.error=v.get(i,"response.data.detail.message",s),e.tables.state="error"}}});return{loadTables:t,loadTablesIfEmpty(){e.tables.empty&&t()},loadColumns:y.flow(function*(){var n;(n=e.controllers.columns)==null||n.abort(),e.controllers.columns=new AbortController,e.columns.state="loading";try{e.columns.data=yield*y.toGenerator(Ee.query(e.controllers.columns.signal)({type:e.type,key:e.key,query:e.columns.sql},{})),e.columns.state="idle",e.columns.error=null}catch(i){if(Ze.isCancel(i))e.columns.state="idle",e.columns.error=null;else{e.columns.data=[];const s=v.get(i,"message","unkown error");e.columns.error=v.get(i,"response.data.detail.message",s),e.columns.state="error"}}}),loadIndexes:y.flow(function*(){var n;(n=e.controllers.indexes)==null||n.abort(),e.controllers.indexes=new AbortController,e.indexes.state="loading";try{e.indexes.data=yield*y.toGenerator(Ee.query(e.controllers.indexes.signal)({type:e.type,key:e.key,query:e.indexes.sql},{})),e.indexes.state="idle",e.indexes.error=null}catch(i){if(Ze.isCancel(i))e.indexes.state="idle",e.indexes.error=null;else{e.indexes.data=[];const s=v.get(i,"message","unkown error");e.indexes.error=v.get(i,"response.data.detail.message",s),e.indexes.state="error"}}}),loadTableData:y.flow(function*(){var i;(i=e.controllers.tableData)==null||i.abort(),e.controllers.tableData=new AbortController;const n=e.tableData;n.state="loading";try{n.data=yield*y.toGenerator(Ee.query(e.controllers.tableData.signal)({type:e.type,key:e.key,query:n.sql},{}));const[{total:s}]=yield*y.toGenerator(Ee.query(e.controllers.tableData.signal)({type:e.type,key:e.key,query:n.countSql},{}));n.total=Number(s),n.state="idle",n.error=null}catch(s){if(Ze.isCancel(s))n.state="idle",n.error=null;else{n.data=[];const o=v.get(s,"message","unkown error");n.error=v.get(s,"response.data.detail.message",o),n.state="error"}}})}}).actions(e=>({afterCreate(){y.addDisposer(e,ie.reaction(()=>e.columns.sql,e.loadColumns,{fireImmediately:!1,delay:500}))}})).actions(e=>({afterCreate(){y.addDisposer(e,ie.reaction(()=>e.indexes.sql,e.loadIndexes,{fireImmediately:!1,delay:500})),y.addDisposer(e,ie.reaction(()=>e.tableData.sql,e.loadTableData,{fireImmediately:!1,delay:0}))}})),dl=y.types.model("DataSourcesModel",{list:y.types.optional(y.types.array(cl),[])}).views(e=>({find({type:t,key:n}){return e.list.find(i=>i.key===n&&i.type===t)},get options(){return e.list.map(t=>({value:t.key,label:t.key}))}})).actions(e=>({replace(t){e.list.length=0,e.list.push(...t)}}));function Wt(e){return{label:e,value:e,_type:"ACTION",_action_type:e,Icon:null,children:null}}function pl(e){switch(e._type){case"GROUP":case"ACTION":return null;case"query_variables":return["_QUERY_VARS_"];case"mock_context":return["_MOCK_CONTEXT_"];case"filter":return["_FILTERS_",e.value];case"sql_snippet":return["_SQL_SNIPPETS_",e.value];case"query":return["_QUERIES_",e.value];case"view":return["_VIEWS_",e.value];case"panel":return e.parentID?["_VIEWS_",e.parentID,"_PANELS_",e.value]:(console.error("[getPathFromOption] parentID is required"),null)}}const hl=y.types.model("EditorModel",{path:y.types.optional(y.types.frozen(),[]),settings_open:y.types.optional(y.types.boolean,!1)}).views(e=>({get navOptions(){const{content:t}=y.getRoot(e),{filters:n,views:i,sqlSnippets:s,queries:o}=t;return[{label:"Query Variables",value:"_QUERY_VARS_",_type:"query_variables",Icon:L.IconVariable},{label:"Mock Context",value:"_MOCK_CONTEXT_",Icon:L.IconCodeDots,_type:"mock_context"},{label:"Filters",value:"_FILTERS_",Icon:L.IconFilter,children:[...n.options,Wt("_Add_A_Filter_")],_type:"GROUP"},{label:"SQL Snippets",value:"_SQL_SNIPPETS_",Icon:L.IconCopy,children:[...s.options,Wt("_Add_A_SQL_SNIPPET_")],_type:"GROUP"},{label:"Queries",value:"_QUERIES_",Icon:L.IconDatabase,children:[...o.options,Wt("_Add_A_QUERY_")],_type:"GROUP"},{label:"Views",value:"_VIEWS_",Icon:L.IconBoxMultiple,children:[...i.editorOptions,Wt("_Add_A_VIEW_")],_type:"GROUP"}]},isOptionActive(t,n){return t.length===0?!1:t[t.length-1]===n.value},isOptionOpened(t){const{path:n}=e;return n.length===0||!t.children||t.children.length===0?!1:n.includes(t.value)}})).actions(e=>({setPath(t){e.path=t},setSettingsOpen(t){e.settings_open=t}})).actions(e=>({open(t){e.setPath(t),e.setSettingsOpen(!0)},close(){e.setSettingsOpen(!1)},navigate(t){const n=pl(t);n&&e.setPath(n)}})),fl=y.types.model("MockContextModel",{current:y.types.optional(y.types.frozen(),{})}).views(e=>({get keys(){return Object.keys(e.current)},get entries(){return Object.entries(e.current)}})).actions(e=>({replace(t){e.current=t},get(t){return e.current[t]},set(t,n){e.current[t]=n}})),gl=y.types.model("VariableModel",{name:y.types.string,size:y.types.string,weight:y.types.string,color:y.types.union(y.types.model({type:y.types.literal("static"),staticColor:y.types.string}),y.types.model({type:y.types.literal("continuous"),valueRange:y.types.array(y.types.number),colorRange:y.types.array(y.types.string)}),y.types.model({type:y.types.literal("piecewise")})),formatter:y.types.model({output:y.types.enumeration("Output",["number","percent"]),average:y.types.optional(y.types.boolean,!1),mantissa:y.types.number,trimMantissa:y.types.optional(y.types.boolean,!1)}),data_field:y.types.string,aggregation:y.types.union(y.types.model({type:y.types.enumeration(["none","sum","mean","median","min","max","CV","std"]),config:y.types.frozen()}),y.types.model({type:y.types.literal("quantile"),config:y.types.model({p:y.types.number})}))}).views(e=>({get json(){const{name:t,size:n,weight:i,color:s,formatter:o,data_field:l,aggregation:u}=e;return v.cloneDeep({name:t,size:n,color:s,weight:i,formatter:o,data_field:l,aggregation:u})}}));class ml{constructor(t){V(this,"origin");V(this,"copy");this.origin=t,this.copy=y.clone(t),ie.makeAutoObservable(this,{},{autoBind:!0,deep:!1})}get changed(){return!v.isEqual(y.getSnapshot(this.origin),y.getSnapshot(this.copy))}commit(){y.applySnapshot(this.origin,y.getSnapshot(this.copy))}update(t){y.applySnapshot(this.copy,t)}}const yl=e=>new ml(e);class bl{constructor(){V(this,"migrations",[])}version(t,n){return this.migrations.push({version:t,handler:n}),this}run(t,n,i){var l;if(t.from===t.to)return n;if(t.from>t.to)throw new Error(`Can not downgrade from version '${t.from}' to (${t.to})`);const s=this.migrations.filter(u=>u.version>t.from&&u.version<=t.to),o=v.orderBy(s,"version","asc");if(((l=v.last(o))==null?void 0:l.version)!==t.to)throw new Error(`Migration to version ${t.to} not found`);return o.reduce((u,c)=>c.handler(u,i),n)}}class me extends bl{constructor(){super(),this.configVersions()}version(t,n){return super.version(t,(i,s)=>({version:t,...n(i,s)}))}async migrate({configData:t,panelModel:n}){const i=await t.getItem(null),s=v.get(i,"version",0),o=this.run({from:s,to:this.VERSION},i,{panelModel:n});await t.setItem(null,o)}async needMigration({configData:t}){const n=await t.getItem(null);return v.get(n,"version",0)<this.VERSION}}var qe=(e=>(e.string="string",e.number="number",e.eloc="eloc",e.percentage="percentage",e.custom="custom",e))(qe||{});const ca=["function text({ value }) {"," // your code goes here"," return value","}"].join(`
|
|
119
|
-
`),In={columns:[],fontSize:"14px",highlightOnHover:!0,horizontalSpacing:"14px",id_field:"",striped:!0,use_raw_columns:!0,verticalSpacing:"14px"};class pt{constructor(t,n){this.root=t,this.path=n}async deleteItem(t){t===null&&await this.root.deleteItem(this.path);const n=await this.root.getItem(this.path)||{};await this.root.setItem(this.path,v.omit(n,t))}async getItem(t){const n=await this.root.getItem(this.path);return t===null?n:v.get(n,t)}async setItem(t,n){if(t===null)await this.root.setItem(this.path,n);else{const i=await this.root.getItem(this.path)||{};await this.root.setItem(this.path,{...i,[t]:n})}return await this.getItem(t)}watchItem(t,n,i){return t===null?this.root.watchItem(this.path,(s,o)=>{n(s,o)},i):this.root.watchItem(this.path,(s,o)=>{const l=v.get(s,t),u=v.get(o,t);l!==u&&n(l,u)},i)}}class Mn{constructor(t,n,i){V(this,"attachmentStorage");this.instance=t,this.attachmentKey=n,this.constructInstance=i,this.attachmentStorage=new pt(t.instanceData,n)}async getInstance(t){if(await this.attachmentStorage.getItem(t))return this.constructInstance(new pt(this.attachmentStorage,t))}async create(t,n){return await this.attachmentStorage.setItem(t,n),this.constructInstance(new pt(this.attachmentStorage,t))}async remove(t){await this.attachmentStorage.deleteItem(t)}async list(){const t=await this.attachmentStorage.getItem(null);return Promise.all(v.values(t).map(n=>this.constructInstance(new pt(this.attachmentStorage,n.id))))}}class da{constructor(t){V(this,"rootRef");this.rootRef=ie.observable({current:t})}async deleteItem(t){ie.runInAction(()=>{v.unset(this.rootRef.current,[t])})}getItem(t){const n=this.getValueFromRoot(t);return Promise.resolve(n)}getValueFromRoot(t){return t===null?ie.toJS(this.rootRef.current):v.get(this.rootRef.current,[t])}setItem(t,n){if(t===null)if(v.isObject(n))ie.runInAction(()=>{this.rootRef.current=n});else throw new Error("Cannot set root value to non-object");else ie.runInAction(()=>{v.set(this.rootRef.current,[t],n)});return Promise.resolve(this.getItem(t))}watchItem(t,n,i){return ie.reaction(()=>this.getValueFromRoot(t),(s,o)=>{n(s,o)},{requiresObservable:!0,fireImmediately:v.get(i,"fireImmediately",!1)})}}class vl{constructor(){V(this,"channels",new Map);V(this,"globalChannel",new xi)}getChannel(t){const n=this.channels.get(t);if(n)return n;const i=new xi;return this.channels.set(t,i),i}}class xl{constructor(t){V(this,"instances",new Map);this.pluginManager=t}get availableVizList(){return this.pluginManager.installedPlugins.flatMap(t=>t.manifest.viz)}resolveComponent(t){return this.pluginManager.factory.viz(t)}getOrCreateInstance(t){const n=this.instances.get(t.id);if(n)return n;const i={id:t.id,name:t.viz.type,type:t.viz.type,messageChannels:new vl,instanceData:new da(t.viz.conf)};return this.instances.set(t.id,i),i}}function pa(e,t,n,i){return{vizManager:n,locale:"zh",msgChannels:e.messageChannels,instanceData:e.instanceData,pluginData:new da({}),colorPalette:{getColor(){return()=>""}},data:t,variables:i}}const Cl=e=>{const{panel:t,vizManager:n,data:i,variables:s}=e,o=n.resolveComponent(t.viz.type),l=n.getOrCreateInstance(t),u={...pa(l,i,n,s),viewport:{width:t.layout.w,height:t.layout.h}},c=o.viewRender;return r(c,{context:u,instance:l,...v.omit(e,["panel","vizManager","data"])})},wl=e=>{const{vizManager:t,panel:n,panelInfoEditor:i,data:s,variables:o}=e,l=t.resolveComponent(n.viz.type),u=t.getOrCreateInstance(n),c={...pa(u,s,t,o),panelInfoEditor:i},p=l.configRender;return r(p,{context:c,instance:u,...v.omit(e,["panel","vizManager","data","panelInfoEditor"])})},ha=(e,t)=>{const n=Re.bezier(e),i=Re.bezier(t);return function(s){return s<50?n(s*2/100).hex():i((s-50)*2/100).hex()}},jt=e=>{const t=Re.bezier(e);return function(n){return t(n/100).hex()}},_l={type:"interpolation",displayName:"Red / Green",getColor:ha(["darkred","deeppink","lightyellow"],["lightyellow","lightgreen","teal"]),name:"red-green",category:"diverging"},Sl={type:"interpolation",displayName:"Yellow / Blue",getColor:ha(["#8f531d","#ffd347","#e3efe3"],["#eefaee","#4ecbbf","#003f94"]),name:"yellow-blue",category:"diverging"},Tl={type:"interpolation",displayName:"Red",getColor:jt(["#fff7f1","darkred"]),name:"red",category:"sequential"},Dl={type:"interpolation",displayName:"Green",getColor:jt(["#f0ffed","darkgreen"]),name:"green",category:"sequential"},kl={type:"interpolation",displayName:"Blue",getColor:jt(["#f9fcff","#48b3e9","darkblue"]),name:"blue",category:"sequential"},Il={type:"interpolation",displayName:"Orange",getColor:jt(["#fff7f1","darkorange","#b60000"]),name:"orange",category:"sequential"};class Ml{constructor(t){V(this,"symbol");this.symbol=Symbol(t)}}function Qe(e){return new Ml(e)}class $n{constructor(){V(this,"parent");V(this,"factoryRegistry",new Map);V(this,"instanceRegistry",new Map)}createScoped(){const t=new $n;return t.parent=this,t}getRequired(t){return this.get(t)}get(t){if(this.instanceRegistry.has(t.symbol))return this.instanceRegistry.get(t.symbol);const n=this.factoryRegistry.get(t.symbol);if(n){const i=n(this);return this.instanceRegistry.set(t.symbol,i),i}if(this.parent)return this.parent.get(t)}provideFactory(t,n){return this.factoryRegistry.has(t.symbol)?console.warn(`Token ${t.symbol.toString()} is already registered`):this.factoryRegistry.set(t.symbol,n),this}provideValue(t,n){return this.factoryRegistry.has(t.symbol)?console.warn(`Token ${t.symbol.toString()} is already registered`):this.factoryRegistry.set(t.symbol,()=>n),this}dispose(){this.instanceRegistry.forEach(t=>{const n=v.get(t,"dispose");v.isFunction(n)&&n.bind(t)()}),this.instanceRegistry.clear(),this.factoryRegistry.clear()}}const fa="@devtable/dashboard",An="9.19.3",ga="Apache-2.0",ma={access:"public",registry:"https://registry.npmjs.org/"},ya=["dist"],ba="./dist/dashboard.umd.js",va="./dist/dashboard.es.js",xa="./dist/index.d.ts",Ca={".":{import:"./dist/dashboard.es.js",require:"./dist/dashboard.umd.js"},"./dist/style.css":{import:"./dist/style.css",require:"./dist/style.css"}},wa={"dev-build":"tsc && vite build --watch",build:"tsc && vite build",preview:"vite preview",test:"vitest","test:ui":"vitest --ui",coverage:"vitest --coverage"},_a={"@monaco-editor/react":"4.4.6","@types/chroma-js":"^2.1.4","file-saver":"2.0.5",mathjs:"11.8.0","monaco-editor":"0.36.0","performant-array-to-tree":"1.11.0",popmotion:"^11.0.3","rc-select":"14.1.0","rc-tree-select":"5.5.5",reactflow:"^11.5.3"},Sa={"@emotion/babel-plugin":"11.11.0","@faker-js/faker":"7.6.0","@mantine/core":"5.9.5","@mantine/dates":"5.9.5","@mantine/hooks":"5.9.5","@mantine/modals":"5.9.5","@mantine/notifications":"5.9.5","@mantine/prism":"5.9.5","@mantine/tiptap":"5.9.5","@tabler/icons":"1.119.0","@testing-library/cypress":"^9.0.0","@testing-library/jest-dom":"^5.16.4","@testing-library/react":"^13.3.0","@testing-library/react-hooks":"^8.0.1","@testing-library/user-event":"^14.3.0","@tiptap/extension-code-block-lowlight":"2.0.3","@tiptap/extension-color":"2.0.3","@tiptap/extension-highlight":"2.0.3","@tiptap/extension-link":"2.0.3","@tiptap/extension-placeholder":"2.0.3","@tiptap/extension-subscript":"2.0.3","@tiptap/extension-superscript":"2.0.3","@tiptap/extension-table":"2.0.3","@tiptap/extension-table-cell":"2.0.3","@tiptap/extension-table-header":"2.0.3","@tiptap/extension-table-row":"2.0.3","@tiptap/extension-text-align":"2.0.3","@tiptap/extension-text-style":"2.0.3","@tiptap/extension-underline":"2.0.3","@tiptap/pm":"2.0.3","@tiptap/react":"2.0.3","@tiptap/starter-kit":"2.0.3","@types/crypto-js":"v4.1.1","@types/d3-array":"3.0.4","@types/eventemitter2":"^4.1.0","@types/file-saver":"2.0.5","@types/lodash":"^4.14.182","@types/react":"^18.0.0","@types/react-dom":"^18.0.0","@types/react-grid-layout":"^1.3.2",ahooks:"^3.3.11",ajv:"8.12.0",axios:"^0.27.2","crypto-js":"^4.1.1",cypress:"^12.9.0","cypress-wait-until":"^1.7.2",echarts:"^5.3.2","echarts-for-react":"^3.0.2","echarts-gl":"^2.0.9",jsdom:"^20.0.0","jsdom-testing-mocks":"^1.5.0",lodash:"^4.17.21",lowlight:"^2.8.0",numbro:"^2.3.6","prosemirror-commands":"^1.5.0","prosemirror-dropcursor":"^1.6.1","prosemirror-gapcursor":"^1.3.1","prosemirror-history":"^1.3.0","prosemirror-keymap":"^1.2.0","prosemirror-schema-list":"^1.2.2","react-grid-layout":"^1.3.4","react-hook-form":"^7.31.2","rollup-plugin-visualizer":"5.9.0","tabler-icons-react":"^1.48.0",typescript:"^4.6.3","vite-plugin-static-copy":"0.13.1"},Ta={"@emotion/react":"11.10.6","@faker-js/faker":"7.6.0","@mantine/core":"5.9.5","@mantine/dates":"5.9.5","@mantine/hooks":"5.9.5","@mantine/modals":"5.9.5","@mantine/notifications":"5.9.5","@mantine/prism":"5.9.5","@mantine/tiptap":"5.9.5","@tabler/icons":"1.119.0","@tanstack/react-table":"^8.5.13","@tiptap/extension-code-block-lowlight":"2.0.3","@tiptap/extension-color":"2.0.3","@tiptap/extension-highlight":"2.0.3","@tiptap/extension-link":"2.0.3","@tiptap/extension-placeholder":"2.0.3","@tiptap/extension-subscript":"2.0.3","@tiptap/extension-superscript":"2.0.3","@tiptap/extension-table":"2.0.3","@tiptap/extension-table-cell":"2.0.3","@tiptap/extension-table-header":"2.0.3","@tiptap/extension-table-row":"2.0.3","@tiptap/extension-text-align":"2.0.3","@tiptap/extension-text-style":"2.0.3","@tiptap/extension-underline":"2.0.3","@tiptap/pm":"2.0.3","@tiptap/react":"2.0.3","@tiptap/starter-kit":"2.0.3",ahooks:"^3.3.11",axios:"^0.27.2","chroma-js":"^2.4.2","crypto-js":"^4.1.1","d3-array":"3.2.3","d3-regression":"1.3.10",dayjs:"1.11.7",echarts:"^5.3.2","echarts-for-react":"^3.0.2","echarts-gl":"^2.0.9",eventemitter2:"^6.4.6",jszip:"3.10.1",lodash:"^4.17.21",lowlight:"^2.8.0",mobx:"^6.6.1","mobx-react-lite":"^3.4.0","mobx-state-tree":"^5.1.5",numbro:"^2.3.6","prosemirror-commands":"^1.5.0","prosemirror-dropcursor":"^1.6.1","prosemirror-gapcursor":"^1.3.1","prosemirror-history":"^1.3.0","prosemirror-keymap":"^1.2.0","prosemirror-schema-list":"^1.2.2",react:"^16.8.0 || 17.x || 18.x","react-dom":"^16.8.0 || 17.x || 18.x","react-grid-layout":"^1.3.4","react-hook-form":"^7.31.2","react-router-dom":"^6.3.0","react-virtual":"^2.10.4","tabler-icons-react":"^1.48.0"},$l=Object.freeze(Object.defineProperty({__proto__:null,default:{name:fa,version:An,license:ga,publishConfig:ma,files:ya,main:ba,module:va,types:xa,exports:Ca,scripts:wa,dependencies:_a,devDependencies:Sa,peerDependencies:Ta},dependencies:_a,devDependencies:Sa,exports:Ca,files:ya,license:ga,main:ba,module:va,name:fa,peerDependencies:Ta,publishConfig:ma,scripts:wa,types:xa,version:An},Symbol.toStringTag,{value:"Module"}));class Al{constructor(t){V(this,"staticColors",new Map);V(this,"interpolations",new Map);t.installedPlugins.forEach(n=>{n.manifest.color.forEach(i=>{this.register(i)})})}getStaticColors(){return Array.from(this.staticColors.values())}register(t){const n=this.encodeColor(t);t.type==="single"?(this.staticColors.has(n)&&console.warn(`the color '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`),this.staticColors.set(n,t)):t.type==="interpolation"&&(this.interpolations.has(n)&&console.warn(`the interpolation '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`,`the interpolation '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`),this.interpolations.set(n,t))}decodeStaticColor(t){return this.staticColors.get(t)}encodeColor(t){return`\${${t.category}}.{${t.name}}`}decodeInterpolation(t){return this.interpolations.get(t)}getColorInterpolations(){return Array.from(this.interpolations.values())}}class zl{constructor(){V(this,"plugins",new Map);V(this,"vizComponents",new Map);V(this,"factory",{viz:t=>{const n=this.vizComponents.get(t);if(n)return n;throw new Error(`Viz Component (${t}) not found`)}})}install(t){if(this.plugins.has(t.id))throw new Error(`Plugin (${t.id}) has been installed before`);this.plugins.set(t.id,t);for(const n of t.manifest.viz){if(this.vizComponents.has(n.name))throw new Error(`Viz Component (${n.name}) has been installed before`);this.vizComponents.set(n.name,n)}}get installedPlugins(){return Array.from(this.plugins.values())}}const W=(e,t)=>{const[n,{setFalse:i}]=X.useBoolean(!0),[s,o]=m.useState();m.useEffect(()=>(e.getItem(t).then(u=>{o(u),i()}),e.watchItem(t,u=>{o(u)})));const l=m.useCallback(async u=>{await e.setItem(t,u),o(u)},[e,t]);return{loading:n,value:s,set:l}},zn={x_axis_data_key:"",y_axis_data_key:"",z_axis_data_key:"",xAxis3D:{type:"value",name:"X Axis Name"},yAxis3D:{type:"value",name:"Y Axis Name"},zAxis3D:{type:"value",name:"Z Axis Name"}};function O(e){const[t,n]=e.split(".");return{queryID:t,columnKey:n}}function Ue(e,t){var s;const{queryID:n,columnKey:i}=O(t);return n?i?((s=e[n])==null?void 0:s.map(o=>o[i]))??[]:e[n]:[]}function kt(e,t){const{queryID:n}=O(t);return n?e[n]:[]}function El(e){return Object.values(e)[0]}function Yt(e,t){const{queryID:n,columnKey:i}=O(t);return e[i]}oe.use([G.GridComponent,G.VisualMapComponent,G.LegendComponent,G.TooltipComponent,Ae.CanvasRenderer]);function Ll({context:e}){const{value:t}=W(e.instanceData,"config"),n=e.data,{width:i,height:s}=e.viewport,{x_axis_data_key:o,y_axis_data_key:l,z_axis_data_key:u,xAxis3D:c,yAxis3D:p,zAxis3D:f}=v.defaults({},t,zn),h=m.useMemo(()=>kt(n,o),[n,o]),{x:g,y:b,z:_}=m.useMemo(()=>({x:O(o),y:O(l),z:O(u)}),[o,l,u]),{min:C,max:S}=m.useMemo(()=>{const $=v.minBy(h,N=>N[_.columnKey]),q=v.maxBy(h,N=>N[_.columnKey]);return{min:v.get($,_.columnKey),max:v.get(q,_.columnKey)}},[h,_]),I={tooltip:{},backgroundColor:"#fff",visualMap:{show:!0,dimension:2,min:C,max:S,inRange:{color:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"]}},xAxis3D:c,yAxis3D:p,zAxis3D:f,grid3D:{viewControl:{projection:"orthographic",autoRotate:!1},light:{main:{shadow:!0,quality:"ultra",intensity:1.5}}},series:[{type:"bar3D",wireframe:{},data:h.map($=>[$[g.columnKey],$[b.columnKey],$[_.columnKey]])}]};return t?r(ze,{echarts:oe,option:I,style:{width:i,height:s},notMerge:!0,theme:"merico-light"}):null}const Da=m.createContext({panel:null,data:{},loading:!1,errors:[]}),En=Da.Provider;function Te(){const e=m.useContext(Da);if(!e.panel)throw new Error("Please use PanelContextProvider");return e}const Pl={fullScreenPanelID:"",setFullScreenPanelID:v.noop},Ln=m.createContext(Pl);function ka(){const e=m.useContext(Ln);if(!e)throw new Error("Please use FullScreenPanelContext.Provider");return e}const j=T.observer(m.forwardRef(({label:e,required:t,value:n,onChange:i,clearable:s=!1,sx:o,...l},u)=>{const{panel:c}=Te(),p=m.useMemo(()=>{const f=[...c.dataFieldOptions];return s&&f.unshift({label:"unset",value:"",group:""}),f},[c.dataFieldOptions]);return r(a.Select,{ref:u,label:e,data:p,value:n,onChange:i,required:t,sx:o,...l})}));function Ol({context:e}){const{value:t,set:n}=W(e.instanceData,"config"),i=v.defaults({},t,zn),{control:s,handleSubmit:o,reset:l}=x.useForm({defaultValues:i});return m.useEffect(()=>{l(i)},[t]),t?r(a.Stack,{spacing:"xs",children:d("form",{onSubmit:o(n),children:[r(a.Text,{children:"X Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"x_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"xAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Text,{mt:"lg",children:"Y Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"y_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"yAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Text,{mt:"lg",children:"Z Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"z_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"zAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Group,{position:"center",mt:"xl",grow:!0,sx:{width:"60%"},mx:"auto",children:d(a.Button,{color:"blue",type:"submit",children:[r(D.DeviceFloppy,{size:20}),r(a.Text,{ml:"md",children:"Save"})]})})]})}):null}function Vl(e,{panelModel:t}){try{const n=t.queryIDs[0];if(!n)throw new Error("cannot migrate when queryID is empty");const i=c=>c&&`${n}.${c}`,{x_axis_data_key:s,y_axis_data_key:o,z_axis_data_key:l,...u}=e;return{...u,x_axis_data_key:i(s),y_axis_data_key:i(o),z_axis_data_key:i(l)}}catch(n){throw console.error("[Migration failed]",n),n}}class Bl extends me{constructor(){super(...arguments);V(this,"VERSION",2)}configVersions(){this.version(1,n=>({version:1,config:n})),this.version(2,(n,i)=>{const{config:s}=n;return{...n,version:2,config:Vl(s,i)}})}}const ql={displayName:"Bar Chart (3D)",displayGroup:"ECharts-based charts",migrator:new Bl,name:"bar-3d",viewRender:Ll,configRender:Ol,createConfig(){return{version:2,config:v.cloneDeep(zn)}}};class Le extends m.Component{constructor(t){super(t),this.state={error:null}}componentDidCatch(t){this.setState({error:t})}render(){var t;if(this.state.error){const n=()=>{this.setState({error:null})};return d(a.Box,{children:[r(a.Text,{size:"xs",children:(t=this.state.error)==null?void 0:t.message}),r(a.Button,{variant:"subtle",size:"xs",mx:"auto",compact:!0,sx:{display:"block"},onClick:n,children:"Retry"})]})}return this.props.children}}const ke={mantissa:0,output:"number",trimMantissa:!1,average:!1};function Nl({value:e,onChange:t},n){const i=u=>{t({...e,output:u})},s=u=>{const c=u===0?!1:e.trimMantissa;t({...e,mantissa:u,trimMantissa:c})},o=u=>{t({...e,trimMantissa:u.currentTarget.checked})},l=u=>{t({...e,average:u.currentTarget.checked})};return d(a.Stack,{ref:n,children:[d(a.Group,{grow:!0,children:[r(a.Select,{label:"Format",data:[{label:"1234",value:"number"},{label:"99%",value:"percent"}],value:e.output,onChange:i,sx:{flexGrow:1}}),r(a.Switch,{label:d(a.Stack,{spacing:0,children:[r(a.Text,{children:"Average"}),r(a.Text,{size:12,color:"gray",children:"like 1.234k, 1.234m"})]}),checked:e.average,onChange:l,disabled:e.output!=="number",sx:{flexGrow:1},styles:{root:{alignSelf:"flex-end"},body:{alignItems:"center"},label:{display:"block"}}})]}),d(a.Group,{grow:!0,children:[r(a.NumberInput,{label:"Mantissa",defaultValue:0,min:0,step:1,max:4,value:e.mantissa,onChange:s}),r(a.Switch,{label:"Trim mantissa",checked:e.trimMantissa,onChange:o,disabled:e.mantissa===0,styles:{root:{alignSelf:"flex-end"},body:{alignItems:"center"}}})]}),d(a.Stack,{spacing:0,children:[r(a.Text,{weight:"bold",children:"Preview"}),r(Le,{children:d(a.Group,{position:"apart",children:[d(a.Text,{size:12,color:"gray",children:["123456789 ",r(D.ArrowRight,{size:9})," ",ee(123456789).format(e)]}),d(a.Text,{size:12,color:"gray",children:["1234 ",r(D.ArrowRight,{size:9})," ",ee(1234).format(e)]}),d(a.Text,{size:12,color:"gray",children:["0.1234 ",r(D.ArrowRight,{size:9})," ",ee(.1234).format(e)]})]})})]})]})}const Ne=m.forwardRef(Nl),Fe={enabled:!1,func_content:["function label(value, index) {"," // your code goes here"," // return value","}"].join(`
|
|
119
|
+
`),In={columns:[],fontSize:"14px",highlightOnHover:!0,horizontalSpacing:"14px",id_field:"",striped:!0,use_raw_columns:!0,verticalSpacing:"14px"};class pt{constructor(t,n){this.root=t,this.path=n}async deleteItem(t){t===null&&await this.root.deleteItem(this.path);const n=await this.root.getItem(this.path)||{};await this.root.setItem(this.path,v.omit(n,t))}async getItem(t){const n=await this.root.getItem(this.path);return t===null?n:v.get(n,t)}async setItem(t,n){if(t===null)await this.root.setItem(this.path,n);else{const i=await this.root.getItem(this.path)||{};await this.root.setItem(this.path,{...i,[t]:n})}return await this.getItem(t)}watchItem(t,n,i){return t===null?this.root.watchItem(this.path,(s,o)=>{n(s,o)},i):this.root.watchItem(this.path,(s,o)=>{const l=v.get(s,t),u=v.get(o,t);l!==u&&n(l,u)},i)}}class Mn{constructor(t,n,i){V(this,"attachmentStorage");this.instance=t,this.attachmentKey=n,this.constructInstance=i,this.attachmentStorage=new pt(t.instanceData,n)}async getInstance(t){if(await this.attachmentStorage.getItem(t))return this.constructInstance(new pt(this.attachmentStorage,t))}async create(t,n){return await this.attachmentStorage.setItem(t,n),this.constructInstance(new pt(this.attachmentStorage,t))}async remove(t){await this.attachmentStorage.deleteItem(t)}async list(){const t=await this.attachmentStorage.getItem(null);return Promise.all(v.values(t).map(n=>this.constructInstance(new pt(this.attachmentStorage,n.id))))}}class da{constructor(t){V(this,"rootRef");this.rootRef=ie.observable({current:t})}async deleteItem(t){ie.runInAction(()=>{v.unset(this.rootRef.current,[t])})}getItem(t){const n=this.getValueFromRoot(t);return Promise.resolve(n)}getValueFromRoot(t){return t===null?ie.toJS(this.rootRef.current):v.get(this.rootRef.current,[t])}setItem(t,n){if(t===null)if(v.isObject(n))ie.runInAction(()=>{this.rootRef.current=n});else throw new Error("Cannot set root value to non-object");else ie.runInAction(()=>{v.set(this.rootRef.current,[t],n)});return Promise.resolve(this.getItem(t))}watchItem(t,n,i){return ie.reaction(()=>this.getValueFromRoot(t),(s,o)=>{n(s,o)},{requiresObservable:!0,fireImmediately:v.get(i,"fireImmediately",!1)})}}class vl{constructor(){V(this,"channels",new Map);V(this,"globalChannel",new xi)}getChannel(t){const n=this.channels.get(t);if(n)return n;const i=new xi;return this.channels.set(t,i),i}}class xl{constructor(t){V(this,"instances",new Map);this.pluginManager=t}get availableVizList(){return this.pluginManager.installedPlugins.flatMap(t=>t.manifest.viz)}resolveComponent(t){return this.pluginManager.factory.viz(t)}getOrCreateInstance(t){const n=this.instances.get(t.id);if(n)return n;const i={id:t.id,name:t.viz.type,type:t.viz.type,messageChannels:new vl,instanceData:new da(t.viz.conf)};return this.instances.set(t.id,i),i}}function pa(e,t,n,i){return{vizManager:n,locale:"zh",msgChannels:e.messageChannels,instanceData:e.instanceData,pluginData:new da({}),colorPalette:{getColor(){return()=>""}},data:t,variables:i}}const Cl=e=>{const{panel:t,vizManager:n,data:i,variables:s}=e,o=n.resolveComponent(t.viz.type),l=n.getOrCreateInstance(t),u={...pa(l,i,n,s),viewport:{width:t.layout.w,height:t.layout.h}},c=o.viewRender;return r(c,{context:u,instance:l,...v.omit(e,["panel","vizManager","data"])})},wl=e=>{const{vizManager:t,panel:n,panelInfoEditor:i,data:s,variables:o}=e,l=t.resolveComponent(n.viz.type),u=t.getOrCreateInstance(n),c={...pa(u,s,t,o),panelInfoEditor:i},p=l.configRender;return r(p,{context:c,instance:u,...v.omit(e,["panel","vizManager","data","panelInfoEditor"])})},ha=(e,t)=>{const n=Re.bezier(e),i=Re.bezier(t);return function(s){return s<50?n(s*2/100).hex():i((s-50)*2/100).hex()}},jt=e=>{const t=Re.bezier(e);return function(n){return t(n/100).hex()}},_l={type:"interpolation",displayName:"Red / Green",getColor:ha(["darkred","deeppink","lightyellow"],["lightyellow","lightgreen","teal"]),name:"red-green",category:"diverging"},Sl={type:"interpolation",displayName:"Yellow / Blue",getColor:ha(["#8f531d","#ffd347","#e3efe3"],["#eefaee","#4ecbbf","#003f94"]),name:"yellow-blue",category:"diverging"},Tl={type:"interpolation",displayName:"Red",getColor:jt(["#fff7f1","darkred"]),name:"red",category:"sequential"},Dl={type:"interpolation",displayName:"Green",getColor:jt(["#f0ffed","darkgreen"]),name:"green",category:"sequential"},kl={type:"interpolation",displayName:"Blue",getColor:jt(["#f9fcff","#48b3e9","darkblue"]),name:"blue",category:"sequential"},Il={type:"interpolation",displayName:"Orange",getColor:jt(["#fff7f1","darkorange","#b60000"]),name:"orange",category:"sequential"};class Ml{constructor(t){V(this,"symbol");this.symbol=Symbol(t)}}function Qe(e){return new Ml(e)}class $n{constructor(){V(this,"parent");V(this,"factoryRegistry",new Map);V(this,"instanceRegistry",new Map)}createScoped(){const t=new $n;return t.parent=this,t}getRequired(t){return this.get(t)}get(t){if(this.instanceRegistry.has(t.symbol))return this.instanceRegistry.get(t.symbol);const n=this.factoryRegistry.get(t.symbol);if(n){const i=n(this);return this.instanceRegistry.set(t.symbol,i),i}if(this.parent)return this.parent.get(t)}provideFactory(t,n){return this.factoryRegistry.has(t.symbol)?console.warn(`Token ${t.symbol.toString()} is already registered`):this.factoryRegistry.set(t.symbol,n),this}provideValue(t,n){return this.factoryRegistry.has(t.symbol)?console.warn(`Token ${t.symbol.toString()} is already registered`):this.factoryRegistry.set(t.symbol,()=>n),this}dispose(){this.instanceRegistry.forEach(t=>{const n=v.get(t,"dispose");v.isFunction(n)&&n.bind(t)()}),this.instanceRegistry.clear(),this.factoryRegistry.clear()}}const fa="@devtable/dashboard",An="10.0.0",ga="Apache-2.0",ma={access:"public",registry:"https://registry.npmjs.org/"},ya=["dist"],ba="./dist/dashboard.umd.js",va="./dist/dashboard.es.js",xa="./dist/index.d.ts",Ca={".":{import:"./dist/dashboard.es.js",require:"./dist/dashboard.umd.js"},"./dist/style.css":{import:"./dist/style.css",require:"./dist/style.css"}},wa={"dev-build":"tsc && vite build --watch",preview:"vite preview",test:"vitest","test:ui":"vitest --ui",coverage:"vitest --coverage"},_a={"@monaco-editor/react":"4.4.6","@types/chroma-js":"^2.1.4","file-saver":"2.0.5",mathjs:"11.8.0","monaco-editor":"0.36.0","performant-array-to-tree":"1.11.0",popmotion:"^11.0.3","rc-select":"14.1.0","rc-tree-select":"5.5.5",reactflow:"^11.5.3"},Sa={"@emotion/babel-plugin":"11.11.0","@faker-js/faker":"7.6.0","@mantine/core":"5.9.5","@mantine/dates":"5.9.5","@mantine/hooks":"5.9.5","@mantine/modals":"5.9.5","@mantine/notifications":"5.9.5","@mantine/prism":"5.9.5","@mantine/tiptap":"5.9.5","@tabler/icons":"1.119.0","@testing-library/cypress":"^9.0.0","@testing-library/jest-dom":"^5.16.4","@testing-library/react":"^13.3.0","@testing-library/react-hooks":"^8.0.1","@testing-library/user-event":"^14.3.0","@tiptap/extension-code-block-lowlight":"2.0.3","@tiptap/extension-color":"2.0.3","@tiptap/extension-highlight":"2.0.3","@tiptap/extension-link":"2.0.3","@tiptap/extension-placeholder":"2.0.3","@tiptap/extension-subscript":"2.0.3","@tiptap/extension-superscript":"2.0.3","@tiptap/extension-table":"2.0.3","@tiptap/extension-table-cell":"2.0.3","@tiptap/extension-table-header":"2.0.3","@tiptap/extension-table-row":"2.0.3","@tiptap/extension-text-align":"2.0.3","@tiptap/extension-text-style":"2.0.3","@tiptap/extension-underline":"2.0.3","@tiptap/pm":"2.0.3","@tiptap/react":"2.0.3","@tiptap/starter-kit":"2.0.3","@types/crypto-js":"v4.1.1","@types/d3-array":"3.0.4","@types/eventemitter2":"^4.1.0","@types/file-saver":"2.0.5","@types/lodash":"^4.14.182","@types/react":"^18.0.0","@types/react-dom":"^18.0.0","@types/react-grid-layout":"^1.3.2",ahooks:"^3.3.11",ajv:"8.12.0",axios:"^0.27.2","crypto-js":"^4.1.1",cypress:"^12.9.0","cypress-wait-until":"^1.7.2",echarts:"^5.3.2","echarts-for-react":"^3.0.2","echarts-gl":"^2.0.9",jsdom:"^20.0.0","jsdom-testing-mocks":"^1.5.0",lodash:"^4.17.21",lowlight:"^2.8.0",numbro:"^2.3.6","prosemirror-commands":"^1.5.0","prosemirror-dropcursor":"^1.6.1","prosemirror-gapcursor":"^1.3.1","prosemirror-history":"^1.3.0","prosemirror-keymap":"^1.2.0","prosemirror-schema-list":"^1.2.2","react-grid-layout":"^1.3.4","react-hook-form":"^7.31.2","rollup-plugin-visualizer":"5.9.0","tabler-icons-react":"^1.48.0",typescript:"^4.6.3","vite-plugin-static-copy":"0.13.1"},Ta={"@emotion/react":"11.10.6","@faker-js/faker":"7.6.0","@mantine/core":"5.9.5","@mantine/dates":"5.9.5","@mantine/hooks":"5.9.5","@mantine/modals":"5.9.5","@mantine/notifications":"5.9.5","@mantine/prism":"5.9.5","@mantine/tiptap":"5.9.5","@tabler/icons":"1.119.0","@tanstack/react-table":"^8.5.13","@tiptap/extension-code-block-lowlight":"2.0.3","@tiptap/extension-color":"2.0.3","@tiptap/extension-highlight":"2.0.3","@tiptap/extension-link":"2.0.3","@tiptap/extension-placeholder":"2.0.3","@tiptap/extension-subscript":"2.0.3","@tiptap/extension-superscript":"2.0.3","@tiptap/extension-table":"2.0.3","@tiptap/extension-table-cell":"2.0.3","@tiptap/extension-table-header":"2.0.3","@tiptap/extension-table-row":"2.0.3","@tiptap/extension-text-align":"2.0.3","@tiptap/extension-text-style":"2.0.3","@tiptap/extension-underline":"2.0.3","@tiptap/pm":"2.0.3","@tiptap/react":"2.0.3","@tiptap/starter-kit":"2.0.3",ahooks:"^3.3.11",axios:"^0.27.2","chroma-js":"^2.4.2","crypto-js":"^4.1.1","d3-array":"3.2.3","d3-regression":"1.3.10",dayjs:"1.11.7",echarts:"^5.3.2","echarts-for-react":"^3.0.2","echarts-gl":"^2.0.9",eventemitter2:"^6.4.6",jszip:"3.10.1",lodash:"^4.17.21",lowlight:"^2.8.0",mobx:"^6.6.1","mobx-react-lite":"^3.4.0","mobx-state-tree":"^5.1.5",numbro:"^2.3.6","prosemirror-commands":"^1.5.0","prosemirror-dropcursor":"^1.6.1","prosemirror-gapcursor":"^1.3.1","prosemirror-history":"^1.3.0","prosemirror-keymap":"^1.2.0","prosemirror-schema-list":"^1.2.2",react:"^16.8.0 || 17.x || 18.x","react-dom":"^16.8.0 || 17.x || 18.x","react-grid-layout":"^1.3.4","react-hook-form":"^7.31.2","react-router-dom":"^6.3.0","react-virtual":"^2.10.4","tabler-icons-react":"^1.48.0"},$l=Object.freeze(Object.defineProperty({__proto__:null,default:{name:fa,version:An,license:ga,publishConfig:ma,files:ya,main:ba,module:va,types:xa,exports:Ca,scripts:wa,dependencies:_a,devDependencies:Sa,peerDependencies:Ta},dependencies:_a,devDependencies:Sa,exports:Ca,files:ya,license:ga,main:ba,module:va,name:fa,peerDependencies:Ta,publishConfig:ma,scripts:wa,types:xa,version:An},Symbol.toStringTag,{value:"Module"}));class Al{constructor(t){V(this,"staticColors",new Map);V(this,"interpolations",new Map);t.installedPlugins.forEach(n=>{n.manifest.color.forEach(i=>{this.register(i)})})}getStaticColors(){return Array.from(this.staticColors.values())}register(t){const n=this.encodeColor(t);t.type==="single"?(this.staticColors.has(n)&&console.warn(`the color '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`),this.staticColors.set(n,t)):t.type==="interpolation"&&(this.interpolations.has(n)&&console.warn(`the interpolation '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`,`the interpolation '${t.name}' has been registered under '${t.category}', previous registered value will be overridden`),this.interpolations.set(n,t))}decodeStaticColor(t){return this.staticColors.get(t)}encodeColor(t){return`\${${t.category}}.{${t.name}}`}decodeInterpolation(t){return this.interpolations.get(t)}getColorInterpolations(){return Array.from(this.interpolations.values())}}class zl{constructor(){V(this,"plugins",new Map);V(this,"vizComponents",new Map);V(this,"factory",{viz:t=>{const n=this.vizComponents.get(t);if(n)return n;throw new Error(`Viz Component (${t}) not found`)}})}install(t){if(this.plugins.has(t.id))throw new Error(`Plugin (${t.id}) has been installed before`);this.plugins.set(t.id,t);for(const n of t.manifest.viz){if(this.vizComponents.has(n.name))throw new Error(`Viz Component (${n.name}) has been installed before`);this.vizComponents.set(n.name,n)}}get installedPlugins(){return Array.from(this.plugins.values())}}const W=(e,t)=>{const[n,{setFalse:i}]=X.useBoolean(!0),[s,o]=m.useState();m.useEffect(()=>(e.getItem(t).then(u=>{o(u),i()}),e.watchItem(t,u=>{o(u)})));const l=m.useCallback(async u=>{await e.setItem(t,u),o(u)},[e,t]);return{loading:n,value:s,set:l}},zn={x_axis_data_key:"",y_axis_data_key:"",z_axis_data_key:"",xAxis3D:{type:"value",name:"X Axis Name"},yAxis3D:{type:"value",name:"Y Axis Name"},zAxis3D:{type:"value",name:"Z Axis Name"}};function O(e){const[t,n]=e.split(".");return{queryID:t,columnKey:n}}function Ue(e,t){var s;const{queryID:n,columnKey:i}=O(t);return n?i?((s=e[n])==null?void 0:s.map(o=>o[i]))??[]:e[n]:[]}function kt(e,t){const{queryID:n}=O(t);return n?e[n]:[]}function El(e){return Object.values(e)[0]}function Yt(e,t){const{queryID:n,columnKey:i}=O(t);return e[i]}oe.use([G.GridComponent,G.VisualMapComponent,G.LegendComponent,G.TooltipComponent,Ae.CanvasRenderer]);function Ll({context:e}){const{value:t}=W(e.instanceData,"config"),n=e.data,{width:i,height:s}=e.viewport,{x_axis_data_key:o,y_axis_data_key:l,z_axis_data_key:u,xAxis3D:c,yAxis3D:p,zAxis3D:f}=v.defaults({},t,zn),h=m.useMemo(()=>kt(n,o),[n,o]),{x:g,y:b,z:_}=m.useMemo(()=>({x:O(o),y:O(l),z:O(u)}),[o,l,u]),{min:C,max:S}=m.useMemo(()=>{const $=v.minBy(h,N=>N[_.columnKey]),q=v.maxBy(h,N=>N[_.columnKey]);return{min:v.get($,_.columnKey),max:v.get(q,_.columnKey)}},[h,_]),I={tooltip:{},backgroundColor:"#fff",visualMap:{show:!0,dimension:2,min:C,max:S,inRange:{color:["#313695","#4575b4","#74add1","#abd9e9","#e0f3f8","#ffffbf","#fee090","#fdae61","#f46d43","#d73027","#a50026"]}},xAxis3D:c,yAxis3D:p,zAxis3D:f,grid3D:{viewControl:{projection:"orthographic",autoRotate:!1},light:{main:{shadow:!0,quality:"ultra",intensity:1.5}}},series:[{type:"bar3D",wireframe:{},data:h.map($=>[$[g.columnKey],$[b.columnKey],$[_.columnKey]])}]};return t?r(ze,{echarts:oe,option:I,style:{width:i,height:s},notMerge:!0,theme:"merico-light"}):null}const Da=m.createContext({panel:null,data:{},loading:!1,errors:[]}),En=Da.Provider;function Te(){const e=m.useContext(Da);if(!e.panel)throw new Error("Please use PanelContextProvider");return e}const Pl={fullScreenPanelID:"",setFullScreenPanelID:v.noop},Ln=m.createContext(Pl);function ka(){const e=m.useContext(Ln);if(!e)throw new Error("Please use FullScreenPanelContext.Provider");return e}const j=T.observer(m.forwardRef(({label:e,required:t,value:n,onChange:i,clearable:s=!1,sx:o,...l},u)=>{const{panel:c}=Te(),p=m.useMemo(()=>{const f=[...c.dataFieldOptions];return s&&f.unshift({label:"unset",value:"",group:""}),f},[c.dataFieldOptions]);return r(a.Select,{ref:u,label:e,data:p,value:n,onChange:i,required:t,sx:o,...l})}));function Ol({context:e}){const{value:t,set:n}=W(e.instanceData,"config"),i=v.defaults({},t,zn),{control:s,handleSubmit:o,reset:l}=x.useForm({defaultValues:i});return m.useEffect(()=>{l(i)},[t]),t?r(a.Stack,{spacing:"xs",children:d("form",{onSubmit:o(n),children:[r(a.Text,{children:"X Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"x_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"xAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Text,{mt:"lg",children:"Y Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"y_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"yAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Text,{mt:"lg",children:"Z Axis"}),d(a.Group,{position:"apart",grow:!0,p:"md",sx:{position:"relative",border:"1px solid #eee"},children:[r(x.Controller,{name:"z_axis_data_key",control:s,render:({field:u})=>r(j,{label:"Data Field",required:!0,...u})}),r(x.Controller,{name:"zAxis3D.name",control:s,render:({field:u})=>r(a.TextInput,{sx:{flexGrow:1},size:"md",label:"Name",...u})})]}),r(a.Group,{position:"center",mt:"xl",grow:!0,sx:{width:"60%"},mx:"auto",children:d(a.Button,{color:"blue",type:"submit",children:[r(D.DeviceFloppy,{size:20}),r(a.Text,{ml:"md",children:"Save"})]})})]})}):null}function Vl(e,{panelModel:t}){try{const n=t.queryIDs[0];if(!n)throw new Error("cannot migrate when queryID is empty");const i=c=>c&&`${n}.${c}`,{x_axis_data_key:s,y_axis_data_key:o,z_axis_data_key:l,...u}=e;return{...u,x_axis_data_key:i(s),y_axis_data_key:i(o),z_axis_data_key:i(l)}}catch(n){throw console.error("[Migration failed]",n),n}}class Bl extends me{constructor(){super(...arguments);V(this,"VERSION",2)}configVersions(){this.version(1,n=>({version:1,config:n})),this.version(2,(n,i)=>{const{config:s}=n;return{...n,version:2,config:Vl(s,i)}})}}const ql={displayName:"Bar Chart (3D)",displayGroup:"ECharts-based charts",migrator:new Bl,name:"bar-3d",viewRender:Ll,configRender:Ol,createConfig(){return{version:2,config:v.cloneDeep(zn)}}};class Le extends m.Component{constructor(t){super(t),this.state={error:null}}componentDidCatch(t){this.setState({error:t})}render(){var t;if(this.state.error){const n=()=>{this.setState({error:null})};return d(a.Box,{children:[r(a.Text,{size:"xs",children:(t=this.state.error)==null?void 0:t.message}),r(a.Button,{variant:"subtle",size:"xs",mx:"auto",compact:!0,sx:{display:"block"},onClick:n,children:"Retry"})]})}return this.props.children}}const ke={mantissa:0,output:"number",trimMantissa:!1,average:!1};function Nl({value:e,onChange:t},n){const i=u=>{t({...e,output:u})},s=u=>{const c=u===0?!1:e.trimMantissa;t({...e,mantissa:u,trimMantissa:c})},o=u=>{t({...e,trimMantissa:u.currentTarget.checked})},l=u=>{t({...e,average:u.currentTarget.checked})};return d(a.Stack,{ref:n,children:[d(a.Group,{grow:!0,children:[r(a.Select,{label:"Format",data:[{label:"1234",value:"number"},{label:"99%",value:"percent"}],value:e.output,onChange:i,sx:{flexGrow:1}}),r(a.Switch,{label:d(a.Stack,{spacing:0,children:[r(a.Text,{children:"Average"}),r(a.Text,{size:12,color:"gray",children:"like 1.234k, 1.234m"})]}),checked:e.average,onChange:l,disabled:e.output!=="number",sx:{flexGrow:1},styles:{root:{alignSelf:"flex-end"},body:{alignItems:"center"},label:{display:"block"}}})]}),d(a.Group,{grow:!0,children:[r(a.NumberInput,{label:"Mantissa",defaultValue:0,min:0,step:1,max:4,value:e.mantissa,onChange:s}),r(a.Switch,{label:"Trim mantissa",checked:e.trimMantissa,onChange:o,disabled:e.mantissa===0,styles:{root:{alignSelf:"flex-end"},body:{alignItems:"center"}}})]}),d(a.Stack,{spacing:0,children:[r(a.Text,{weight:"bold",children:"Preview"}),r(Le,{children:d(a.Group,{position:"apart",children:[d(a.Text,{size:12,color:"gray",children:["123456789 ",r(D.ArrowRight,{size:9})," ",ee(123456789).format(e)]}),d(a.Text,{size:12,color:"gray",children:["1234 ",r(D.ArrowRight,{size:9})," ",ee(1234).format(e)]}),d(a.Text,{size:12,color:"gray",children:["0.1234 ",r(D.ArrowRight,{size:9})," ",ee(.1234).format(e)]})]})})]})]})}const Ne=m.forwardRef(Nl),Fe={enabled:!1,func_content:["function label(value, index) {"," // your code goes here"," // return value","}"].join(`
|
|
120
120
|
`)},Ia={id:"builtin:echarts:click-echart:series",displayName:"Click Chart Series",nameRender:Fl,configRender:Gl,payload:[{name:"type",description:"Always 'click'",valueType:"string"},{name:"seriesType",description:"'boxplot'",valueType:"string"},{name:"name",description:"Name of the series clicked",valueType:"string"},{name:"color",description:"Color",valueType:"string"},{name:"value",description:"Record of 'name', 'min', 'q1', 'median', 'q3', 'max'",valueType:"object"},{name:"rowData",description:"Data of the row",valueType:"object"}]};function Gl(e){return r(B,{})}function Fl(e){return r(a.Text,{children:"Click chart's series"})}const Wl=[{label:"Truncate",value:"truncate"},{label:"Break Line",value:"break"},{label:"Break Word",value:"breakAll"}],Rt=m.forwardRef(({sectionTitle:e,value:t,onChange:n},i)=>{const s=o=>l=>{const u=v.cloneDeep(t);v.set(u,o,l),n(u)};return d(a.Stack,{spacing:0,children:[e&&r(a.Divider,{mb:-5,mt:5,variant:"dotted",label:e,labelPosition:"right",labelProps:{color:"dimmed"}}),d(a.Group,{grow:!0,noWrap:!0,children:[r(a.NumberInput,{label:"Max Width",hideControls:!0,value:t.width,onChange:s("width")}),r(a.Select,{label:"Overflow",data:Wl,value:t.overflow,onChange:s("overflow")}),r(a.TextInput,{label:"Ellipsis",value:t.ellipsis,disabled:!0})]})]})}),et=m.forwardRef(({value:e,onChange:t},n)=>{const i=o=>{t({...e,on_axis:o})},s=o=>{t({...e,in_tooltip:o})};return d(a.Stack,{ref:n,spacing:0,children:[r(Rt,{sectionTitle:"Overflow on Axis",value:e.on_axis,onChange:i}),r(Rt,{sectionTitle:"Overflow in Tooltip",value:e.in_tooltip,onChange:s})]})}),Ge={on_axis:{width:80,overflow:"truncate",ellipsis:"..."},in_tooltip:{width:200,overflow:"break",ellipsis:"..."}};function tt({overflow:e,width:t}){const n={truncate:"initial",break:"break-all",breakAll:"break-word"}[e],i=e==="truncate"?"nowrap":"initial",s={truncate:"ellipsis",break:"clip",breakAll:"clip"}[e];return`
|
|
121
121
|
max-width: ${t}px;
|
|
122
122
|
word-break: ${n};
|