UNPKG

@devgateway/dvz-ui-react

Version:

A modular, embeddable React component library for data visualization and UI, built with TypeScript. Provides reusable components for charts, maps, dashboards, and more, with built-in support for internationalization and Redux integration.

2 lines (1 loc) 1.92 kB
"use strict";const t=require("react/jsx-runtime"),l=require("react"),E=require("react-redux"),o=require("../utils/parseUtils.js"),v=require("./Map.js"),S=require("./BaseLayer.js"),M=require("./DataLayer.js"),k=require("./LatLongLayer.js"),D=require("./ZoomControl.js"),U=require("./ProjectedContainer.js"),I=require("./Legends.js"),N=require("./FlowLayer.js"),q=require("@devgateway/wp-react-lib"),T=m=>{const{unique:a,editing:s,"data-group":n,"data-layers":f="[]","data-height":g=400,"data-width":b=1e3,"data-back-ground-color":L="#88e8dc","data-map-position":h="{}","data-projection":w="geoMercator","data-zoom-enabled":y=!0,"data-rotation-enabled":j=!1,intl:i}=m,[c,x]=l.useState(o.parse(f),[]),P=l.useRef(null),d=l.useRef(null),[u,z]=l.useState(null);l.useEffect(()=>{const e=o.parse(f);o.compareJsonProps(c,e)||x(e)},[f]);const C=e=>{const r=c.slice(),p=r.find(R=>R.id==e);p&&(p.visible=!p.visible),x(r)};return t.jsx("div",{ref:P,className:"d3map-container",children:t.jsx(q.SettingProvider,{locale:i.locale,changeUUID:a,children:t.jsx(q.SettingsConsumer,{children:t.jsxs(U,{backgroundColor:o.decode(L),height:g,width:b,projectionName:w,editing:s,initialPosition:o.parse(h,s),children:[t.jsx(v,{rotationEnabled:o.parse(j,s),children:c&&c.filter(e=>e.visible!=!1).map((e,r)=>{if(e.type==="base")return t.jsx(S,{transform:u,intl:i,zoom:d,unique:a,...e},r);if(e.type==="data")return t.jsx(M,{onLayerCreated:p=>{},transform:u,intl:i,group:n,zoom:d,unique:a,...e,settings:m.wordress},r);if(e.type==="flow")return t.jsx(N,{transform:u,intl:i,group:n,zoom:d,unique:a,...e},r);if(e.type==="dataPoints")return t.jsx(k,{transform:u,intl:i,group:n,zoom:d,unique:a,...e},r)})}),t.jsx(I,{patternsData:null,layers:c,group:n,onItemClick:C}),t.jsx(D,{rootationEmabled:o.parse(j,s),zoomEnabled:o.parse(y,s),onZoomed:z,width:b,height:g,ref:d,group:n,editing:s})]})})})})},Z=(m,a)=>({}),A={},B=E.connect(Z,A)(T);module.exports=B;