UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.

3 lines 97.3 kB
import{j as h,B as Z,kR as En,kS as zn,aX as Ge,kT as Cn,dW as Mn,m as Er,r as T,kU as Fe,kV as Ye,dx as Tn,dl as Ln,dm as kn,b6 as sr,u as Hn,A as Wn,l as zr,Q as Nn,t as Cr,T as Oe,s as H,b as Mr,ai as Tr,ao as $n,bG as qn,i as ar,c8 as An,kW as In,dz as Lr,cW as lr,ej as Bn,aZ as Gn,a$ as Fn,aA as Yn,dA as Xn,kX as Un,kt as kr,kY as Vn,kZ as kt,k_ as he,g as Kn}from"./index-Cikp5fMR.js";const Zn=({formData:t,actions:e,metricSeries:r,loading:n,labelsFilter:o})=>h.jsxs(Z,{children:[h.jsxs(Z,{sx:i=>({display:"flex",flexDirection:"column",gap:i.spacing(3)}),children:[h.jsx(En,{value:t.metricName,onChange:e.handleSeriesChange,options:r,loading:n}),o,t.metricName?h.jsxs(h.Fragment,{children:[h.jsxs(zn,{value:t.timeRange,onChange:e.setTimeRange,children:[h.jsx(Ge,{value:"hour",children:"Last hour"}),h.jsx(Ge,{value:"day",children:"Last 24 hours"}),h.jsx(Ge,{value:"week",children:"Last 7 days"}),h.jsx(Ge,{value:"month",children:"Last 30 days"})]}),h.jsx(Cn,{value:t.aggregationMode,onChange:e.setAggregationMode,metricType:t.metricType})]}):null]}),t.metricName?h.jsx(Mn,{sx:i=>({margin:i.spacing(1.5,0)}),control:h.jsx(Er,{checked:t.yAxisMin==="zero",onChange:i=>e.setYAxisMin(i.target.checked?"zero":"auto")}),label:"Begin at zero"}):null]}),Jn=({open:t,initialConfig:e})=>{const[r,n]=T.useState((e==null?void 0:e.title)||""),[o,i]=T.useState((e==null?void 0:e.metricName)||""),[s,u]=T.useState((e==null?void 0:e.timeRange)||"day"),[a,l]=T.useState((e==null?void 0:e.yAxisMin)||"auto"),[c,d]=T.useState((e==null?void 0:e.labelSelectors)||{}),[f,p]=T.useState((e==null?void 0:e.aggregationMode)||Fe(Ye(o))),[w,D]=T.useState(e==null?void 0:e.source),{data:{labels:S}}=Tn(o?{series:o,range:s,aggregationMode:f,source:w}:void 0);T.useEffect(()=>{t&&e?(n(e.title||""),i(e.metricName),u(e.timeRange),l(e.yAxisMin),d(e.labelSelectors),p(e.aggregationMode||Fe(Ye(e.metricName))),D(e.source)):t&&!e&&(n(""),i(""),u("day"),l("auto"),d({}),p("count"),D(void 0))},[t,e]);const g=y=>{i(y.metricName),D(y.source),d({});const j=Ye(y.metricName);j!=="unknown"&&p(Fe(j))},b=()=>({title:r||void 0,metricName:o,timeRange:s,yAxisMin:a,labelSelectors:c,aggregationMode:f,source:w}),m=o.length>0,x=Ye(o,S==null?void 0:S.metric_type);return T.useEffect(()=>{o!==(e==null?void 0:e.metricName)&&x!=="unknown"&&p(Fe(x))},[o,x]),{formData:{title:r,metricName:o,metricType:x,timeRange:s,yAxisMin:a,aggregationMode:f,labelSelectors:c,source:w},actions:{setTitle:n,setMetricName:i,setTimeRange:u,setYAxisMin:l,setAggregationMode:p,setLabelSelectors:d,handleSeriesChange:g,getConfigToSave:b},isValid:m,currentAvailableLabels:S}},Qn=()=>{const t="api/admin/impact-metrics/config",{data:e,refetch:r,loading:n,error:o}=Ln(sr(t),()=>kn(sr(t),"impactMetricsConfig"));return{configs:(e==null?void 0:e.configs)||[],refetch:r,loading:n,error:o}},eo=t=>{const e=t?`api/admin/projects/${t.projectId}/features/${t.featureName}/impact-metrics/config`:"api/admin/impact-metrics/config",{makeRequest:r,createRequest:n,errors:o,loading:i}=Hn({propagateErrors:!0}),s=T.useCallback(async a=>{const l=n(e,{method:"POST",body:JSON.stringify(a)},"updateImpactMetric");return r(l.caller,l.id)},[r,n]),u=T.useCallback(async a=>{const l=n(`${e}/${a}`,{method:"DELETE"},"deleteImpactMetric");return r(l.caller,l.id)},[r,n,e]);return{createImpactMetric:s,deleteImpactMetric:u,errors:o,loading:i}},de="*",aa=()=>{const{configs:t,loading:e,error:r,refetch:n}=Qn(),{layout:o,charts:i}=T.useMemo(()=>({layout:t.map((p,w)=>{const D=w%2,S=Math.floor(w/2);return{i:p.id,x:D*6,y:S*2,w:6,h:2,minW:4,minH:2,maxW:12,maxH:8}}),charts:t}),[t]),{createImpactMetric:s,deleteImpactMetric:u,loading:a,errors:l}=eo(),c=T.useCallback(async p=>{await s(p),n()},[s,n]),d=T.useCallback(async(p,w)=>{await s({...w,id:p}),n()},[t,s,n]),f=T.useCallback(async p=>{await u(p),n()},[t,u,n]);return{charts:i,layout:o,loading:e||a,error:r||Object.keys(l).length>0?l:void 0,addChart:c,updateChart:d,deleteChart:f}},to=({labelKey:t,options:e,value:r,onChange:n})=>{const o=r.includes(de),i=`autocomplete-${t}`,s=e.length>=1e3,u=[de,...e];return h.jsx(Wn,{multiple:!0,disableCloseOnSelect:!0,id:i,options:u,value:o?e:r,getOptionLabel:a=>a===de?"(Select all)":a,onChange:(a,l,c,d)=>{if((d==null?void 0:d.option)===de){n(o?[]:[de]);return}n(l.filter(f=>f!==de))},renderOption:(a,l,{selected:c})=>{const{key:d,...f}=a;return h.jsxs("li",{...f,children:[h.jsx(Er,{size:"small",checked:l===de?o:c,style:{marginRight:8}}),l===de?h.jsx(Oe,{component:"span",sx:{color:"text.secondary"},children:"Select all"}):l]},d||l)},renderTags:(a,l)=>{const d=a.slice(-5),f=a.length-5;return h.jsxs(h.Fragment,{children:[d.map((p,w)=>{const{key:D,...S}=l({index:w});return T.createElement(Cr,{...S,key:D,label:p,size:"small"})}),f>0?h.jsxs(Oe,{component:"span",sx:{color:"text.secondary"},children:[" ","(+",f,")"]}):null]})},renderInput:a=>h.jsxs(h.Fragment,{children:[h.jsx(zr,{...a,label:t,placeholder:o?void 0:"Select values…",variant:"outlined",size:"small",inputProps:{...a.inputProps}}),s&&h.jsx(Nn,{severity:"warning",sx:l=>({padding:l.spacing(1,2),marginTop:l.spacing(1)}),children:"Maximum of 1000 values loaded due to performance."})]})})},ro=H(Z)(({theme:t})=>({display:"flex",flexDirection:"column",gap:t.spacing(1),width:"100%"})),no=H(Z)(({theme:t})=>({width:"100%",display:"flex",alignItems:"center",gap:t.spacing(1)})),oo=H(Z)(({theme:t})=>({display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(250px, 1fr))",gap:t.spacing(2),flexGrow:1})),io=H(Z)({display:"flex",flexDirection:"column",flexGrow:1}),so=H(Oe)({lineHeight:1.5,height:"24px"}),ao=H(Cr)(({theme:t})=>({position:"relative",height:"20px",margin:t.spacing(-1,0)})),ur=({title:t,labels:e,labelSelectors:r,onLabelChange:n,onAllToggle:o,onChange:i})=>{const s=e.map(([l])=>l),u=s.some(l=>r[l]),a=()=>{const l={};Object.entries(r).forEach(([c,d])=>{s.includes(c)||(l[c]=d)}),i(l)};return h.jsxs(ro,{children:[h.jsxs(no,{children:[h.jsx(so,{variant:"subtitle2",children:t}),u&&h.jsx(ao,{label:"Clear all",size:"small",variant:"outlined",onClick:a})]}),h.jsx(oo,{children:e.map(([l,c])=>{const d=r[l]||[];return h.jsx(io,{children:h.jsx(to,{labelKey:l,options:c,value:d,onChange:f=>n(l,f),handleAllToggle:o})},l)})})]})},cr=["environment","appName","origin"],lo=({labelSelectors:t,onChange:e,availableLabels:r})=>{const n=(u,a)=>{const l={...t};a.length===0?delete l[u]:l[u]=a,e(l)},o=(u,a)=>{const l={...t};a?l[u]=["*"]:delete l[u],e(l)};if(!r||Object.keys(r).length===0)return null;const i=Object.entries(r).filter(([u])=>cr.includes(u)).sort(),s=Object.entries(r).filter(([u])=>!cr.includes(u)&&u!=="type"&&u!=="metric_type").sort();return h.jsxs(Z,{sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[i.length>0&&h.jsx(ur,{title:"Filter by labels",labels:i,labelSelectors:t,onLabelChange:n,onAllToggle:o,onChange:e}),s.length>0&&h.jsx(ur,{title:"Other filters",labels:s,labelSelectors:t,onLabelChange:n,onAllToggle:o,onChange:e})]})},uo=H(An)(({theme:t})=>({"& .MuiDialog-paper":{borderRadius:t.shape.borderRadiusLarge,maxWidth:t.spacing(170),width:"100%",backgroundColor:"transparent"},padding:0,"& .MuiPaper-root > section":{overflowX:"hidden"}})),co=H("form")({display:"flex",flexDirection:"column",height:"100%"}),fo=H("h1")(({theme:t})=>({fontWeight:"normal",fontSize:t.typography.h1.fontSize,margin:0})),po=H("div")(({theme:t})=>({display:"flex",flexDirection:"column",gap:t.spacing(3),padding:t.spacing(6),flexGrow:1,minHeight:600})),ho=H("div")(({theme:t})=>({display:"flex",gap:t.spacing(3),justifyContent:"flex-end",padding:t.spacing(4,6),borderTop:`1px solid ${t.palette.divider}`})),go=H(Oe)(({theme:t})=>({fontWeight:t.typography.fontWeightBold,color:t.palette.common.white,marginBottom:t.spacing(1)})),mo=H("a")(({theme:t})=>({color:t.palette.common.white,display:"flex",alignItems:"center",gap:t.spacing(1),marginTop:t.spacing(1.5),textDecoration:"underline","&:hover":{textDecoration:"none"}})),yo=H(Oe)(({theme:t})=>({fontWeight:t.typography.fontWeightBold,color:t.palette.common.white,marginBottom:t.spacing(1.5)})),vo=H(Z)(({theme:t})=>({borderRadius:t.shape.borderRadiusLarge,overflow:"hidden",backgroundColor:t.palette.background.paper,padding:t.spacing(2)})),la=({open:t,onClose:e,onSave:r,onDocsClicked:n,initialConfig:o,metricSeries:i,loading:s=!1})=>{const{formData:u,actions:a,isValid:l,currentAvailableLabels:c}=Jn({open:t,initialConfig:o}),d=Mr(),f=Tr(d.breakpoints.down("lg")),{trackEvent:p}=$n(),w=()=>{l&&(r(a.getConfigToSave()),p("impact-metrics",{props:{eventType:"chart added"}}),e())},D=h.jsxs(h.Fragment,{children:[h.jsx(go,{children:"Did you know?"}),"Impact metrics let you track how your feature rollouts affect key outcomes like error rates, latency, and adoption — directly inside Unleash.",h.jsxs(mo,{href:"https://docs.getunleash.io/reference/impact-metrics",target:"_blank",rel:"noopener noreferrer",onClick:()=>{p("impact-metrics",{props:{eventType:"sidebar docs clicked"}}),n==null||n()},children:[h.jsx(In,{fontSize:"small"}),"Learn how to use impact metrics"]}),h.jsxs(Z,{sx:{mt:3},children:[h.jsx(yo,{children:"Preview chart"}),h.jsx(vo,{children:h.jsx(Lr,{metricName:u.metricName,timeRange:u.timeRange,labelSelectors:u.labelSelectors,yAxisMin:u.yAxisMin,aggregationMode:u.aggregationMode,source:u.source,isPreview:!0},f?"small":"large")})]})]});return h.jsx(uo,{open:t,onClose:e,children:h.jsx(qn,{compact:!0,disablePadding:!0,description:D,showLink:!1,sidebarWidth:"55%",children:h.jsxs(co,{onSubmit:S=>{S.preventDefault(),w()},children:[h.jsxs(po,{children:[h.jsx(fo,{children:o?"Edit impact metric":"Add impact metric"}),h.jsx(zr,{label:"Chart Title (optional)",value:u.title,onChange:S=>a.setTitle(S.target.value),fullWidth:!0,variant:"outlined",size:"small"}),h.jsx(Zn,{formData:u,actions:a,metricSeries:i,loading:s,labelsFilter:c?h.jsx(lo,{labelSelectors:u.labelSelectors,onChange:a.setLabelSelectors,availableLabels:c}):null})]}),h.jsxs(ho,{children:[h.jsx(ar,{onClick:e,children:"Cancel"}),h.jsx(ar,{variant:"contained",type:"submit",disabled:!l,children:o?"Update":"Add impact metric"})]})]})})})},bo=t=>{const e=[];t.displayName&&e.push(`${t.displayName}`),e.push(`last ${t.timeRange}`),e.push(t.aggregationMode);const r=Object.keys(t.labelSelectors).length;return r>0&&e.push(`${r} filter${r>1?"s":""}`),e.join(" • ")},wo=H(Yn)(({theme:t})=>({borderRadius:`${t.shape.borderRadiusMedium}px`,boxShadow:"none",display:"flex",flexDirection:"column",height:"100%"})),So=H(Z)({flex:1,display:"flex",flexDirection:"column",minHeight:0}),xo=H(Z)(({theme:t})=>({position:"relative",minWidth:0,flexGrow:1,height:"100%",display:"flex",flexDirection:"column",margin:"auto 0",padding:t.spacing(3)})),Oo=H(Z)(({theme:t})=>({display:"flex",gap:t.spacing(1),alignItems:"center",padding:t.spacing(1.5,2),borderBottom:`1px solid ${t.palette.divider}`})),Do=H(Z)(({theme:t})=>({display:"flex",flexDirection:"column",justifyContent:"flex-end",flexGrow:1,overflow:"hidden",textOverflow:"ellipsis"})),_o=H(Z)(({theme:t})=>({marginLeft:"auto",display:"flex",alignItems:"center",gap:t.spacing(.5)})),Ro=H(Xn)(({theme:t})=>({alignSelf:"start",color:t.palette.primary.main,marginTop:t.spacing(.25)})),ua=({config:t,onEdit:e,onDelete:r,permission:n=Bn,projectId:o,dragHandle:i,icon:s})=>h.jsxs(wo,{children:[h.jsxs(Oo,{children:[i,t.mode==="read"?h.jsx(Ro,{}):null,h.jsxs(Do,{children:[t.title&&h.jsx(Oe,{variant:"h3",children:t.title}),h.jsx(Oe,{variant:"body2",color:"text.secondary",children:bo(t)})]}),s,t.mode!=="read"&&h.jsxs(_o,{children:[h.jsx(lr,{onClick:()=>e(t),permission:n,projectId:o,tooltipProps:{title:"Edit chart"},children:h.jsx(Gn,{})}),h.jsx(lr,{onClick:()=>r(t.id),permission:n,projectId:o,tooltipProps:{title:"Remove chart"},children:h.jsx(Fn,{})})]})]}),h.jsx(So,{children:h.jsx(xo,{children:h.jsx(Lr,{metricName:t.metricName,timeRange:t.timeRange,labelSelectors:t.labelSelectors,yAxisMin:t.yAxisMin,aggregationMode:t.aggregationMode,source:t.source,aspectRatio:1.5,overrideOptions:{maintainAspectRatio:!1},emptyDataDescription:"Send impact metrics using Unleash SDK for this series to view the chart."})})})]});var Hr={exports:{}},qe={},Rt={exports:{}};(function(t,e){(function(r,n){n(e)})(Un,function(r){function n(v){return function(L,C,M,N,B,te,$){return v(L,C,$)}}function o(v){return function(L,C,M,N){if(!L||!C||typeof L!="object"||typeof C!="object")return v(L,C,M,N);var B=N.get(L),te=N.get(C);if(B&&te)return B===C&&te===L;N.set(L,C),N.set(C,L);var $=v(L,C,M,N);return N.delete(L),N.delete(C),$}}function i(v,_){var L={};for(var C in v)L[C]=v[C];for(var C in _)L[C]=_[C];return L}function s(v){return v.constructor===Object||v.constructor==null}function u(v){return typeof v.then=="function"}function a(v,_){return v===_||v!==v&&_!==_}var l="[object Arguments]",c="[object Boolean]",d="[object Date]",f="[object RegExp]",p="[object Map]",w="[object Number]",D="[object Object]",S="[object Set]",g="[object String]",b=Object.prototype.toString;function m(v){var _=v.areArraysEqual,L=v.areDatesEqual,C=v.areMapsEqual,M=v.areObjectsEqual,N=v.areRegExpsEqual,B=v.areSetsEqual,te=v.createIsNestedEqual,$=te(oe);function oe(k,q,ie){if(k===q)return!0;if(!k||!q||typeof k!="object"||typeof q!="object")return k!==k&&q!==q;if(s(k)&&s(q))return M(k,q,$,ie);var or=Array.isArray(k),ir=Array.isArray(q);if(or||ir)return or===ir&&_(k,q,$,ie);var se=b.call(k);return se!==b.call(q)?!1:se===d?L(k,q,$,ie):se===f?N(k,q,$,ie):se===p?C(k,q,$,ie):se===S?B(k,q,$,ie):se===D||se===l?u(k)||u(q)?!1:M(k,q,$,ie):se===c||se===w||se===g?a(k.valueOf(),q.valueOf()):!1}return oe}function x(v,_,L,C){var M=v.length;if(_.length!==M)return!1;for(;M-- >0;)if(!L(v[M],_[M],M,M,v,_,C))return!1;return!0}var y=o(x);function j(v,_){return a(v.valueOf(),_.valueOf())}function A(v,_,L,C){var M=v.size===_.size;if(!M)return!1;if(!v.size)return!0;var N={},B=0;return v.forEach(function(te,$){if(M){var oe=!1,k=0;_.forEach(function(q,ie){!oe&&!N[k]&&(oe=L($,ie,B,k,v,_,C)&&L(te,q,$,ie,v,_,C))&&(N[k]=!0),k++}),B++,M=oe}}),M}var I=o(A),V="_owner",J=Object.prototype.hasOwnProperty;function Te(v,_,L,C){var M=Object.keys(v),N=M.length;if(Object.keys(_).length!==N)return!1;for(var B;N-- >0;){if(B=M[N],B===V){var te=!!v.$$typeof,$=!!_.$$typeof;if((te||$)&&te!==$)return!1}if(!J.call(_,B)||!L(v[B],_[B],B,B,v,_,C))return!1}return!0}var gt=o(Te);function Le(v,_){return v.source===_.source&&v.flags===_.flags}function ke(v,_,L,C){var M=v.size===_.size;if(!M)return!1;if(!v.size)return!0;var N={};return v.forEach(function(B,te){if(M){var $=!1,oe=0;_.forEach(function(k,q){!$&&!N[oe]&&($=L(B,k,te,q,v,_,C))&&(N[oe]=!0),oe++}),M=$}}),M}var nr=o(ke),ge=Object.freeze({areArraysEqual:x,areDatesEqual:j,areMapsEqual:A,areObjectsEqual:Te,areRegExpsEqual:Le,areSetsEqual:ke,createIsNestedEqual:n}),me=Object.freeze({areArraysEqual:y,areDatesEqual:j,areMapsEqual:I,areObjectsEqual:gt,areRegExpsEqual:Le,areSetsEqual:nr,createIsNestedEqual:n}),Be=m(ge);function mt(v,_){return Be(v,_,void 0)}var Sn=m(i(ge,{createIsNestedEqual:function(){return a}}));function xn(v,_){return Sn(v,_,void 0)}var On=m(me);function Dn(v,_){return On(v,_,new WeakMap)}var _n=m(i(me,{createIsNestedEqual:function(){return a}}));function Rn(v,_){return _n(v,_,new WeakMap)}function Pn(v){return m(i(ge,v(ge)))}function jn(v){var _=m(i(me,v(me)));return function(L,C,M){return M===void 0&&(M=new WeakMap),_(L,C,M)}}r.circularDeepEqual=Dn,r.circularShallowEqual=Rn,r.createCustomCircularEqual=jn,r.createCustomEqual=Pn,r.deepEqual=mt,r.sameValueZeroEqual=a,r.shallowEqual=xn,Object.defineProperty(r,"__esModule",{value:!0})})})(Rt,Rt.exports);var Ht=Rt.exports;const tt=kr(Vn);var E={},Po=function(e,r,n){return e===r?!0:e.className===r.className&&n(e.style,r.style)&&e.width===r.width&&e.autoSize===r.autoSize&&e.cols===r.cols&&e.draggableCancel===r.draggableCancel&&e.draggableHandle===r.draggableHandle&&n(e.verticalCompact,r.verticalCompact)&&n(e.compactType,r.compactType)&&n(e.layout,r.layout)&&n(e.margin,r.margin)&&n(e.containerPadding,r.containerPadding)&&e.rowHeight===r.rowHeight&&e.maxRows===r.maxRows&&e.isBounded===r.isBounded&&e.isDraggable===r.isDraggable&&e.isResizable===r.isResizable&&e.allowOverlap===r.allowOverlap&&e.preventCollision===r.preventCollision&&e.useCSSTransforms===r.useCSSTransforms&&e.transformScale===r.transformScale&&e.isDroppable===r.isDroppable&&n(e.resizeHandles,r.resizeHandles)&&n(e.resizeHandle,r.resizeHandle)&&e.onLayoutChange===r.onLayoutChange&&e.onDragStart===r.onDragStart&&e.onDrag===r.onDrag&&e.onDragStop===r.onDragStop&&e.onResizeStart===r.onResizeStart&&e.onResize===r.onResize&&e.onResizeStop===r.onResizeStop&&e.onDrop===r.onDrop&&n(e.droppingItem,r.droppingItem)&&n(e.innerRef,r.innerRef)};Object.defineProperty(E,"__esModule",{value:!0});E.bottom=rt;E.childrenEqual=To;E.cloneLayout=Wr;E.cloneLayoutItem=xe;E.collides=nt;E.compact=$r;E.compactItem=qr;E.compactType=Xo;E.correctBounds=Ar;E.fastPositionEqual=Lo;E.fastRGLPropsEqual=void 0;E.getAllCollisions=Ir;E.getFirstCollision=we;E.getLayoutItem=Wt;E.getStatics=Nt;E.modifyLayout=Nr;E.moveElement=Ne;E.moveElementAwayFromCollision=jt;E.noop=void 0;E.perc=Ho;E.resizeItemInDirection=Io;E.setTopLeft=Go;E.setTransform=Bo;E.sortLayoutItems=Gt;E.sortLayoutItemsByColRow=Xr;E.sortLayoutItemsByRowCol=Yr;E.synchronizeLayoutWithChildren=Fo;E.validateLayout=Yo;E.withLayoutItem=Mo;var dr=Ht,We=jo(T);function jo(t){return t&&t.__esModule?t:{default:t}}function fr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Ze(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?fr(Object(r),!0).forEach(function(n){Eo(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):fr(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Eo(t,e,r){return(e=zo(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function zo(t){var e=Co(t,"string");return typeof e=="symbol"?e:e+""}function Co(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function rt(t){let e=0,r;for(let n=0,o=t.length;n<o;n++)r=t[n].y+t[n].h,r>e&&(e=r);return e}function Wr(t){const e=Array(t.length);for(let r=0,n=t.length;r<n;r++)e[r]=xe(t[r]);return e}function Nr(t,e){const r=Array(t.length);for(let n=0,o=t.length;n<o;n++)e.i===t[n].i?r[n]=e:r[n]=t[n];return r}function Mo(t,e,r){let n=Wt(t,e);return n?(n=r(xe(n)),t=Nr(t,n),[t,n]):[t,null]}function xe(t){return{w:t.w,h:t.h,x:t.x,y:t.y,i:t.i,minW:t.minW,maxW:t.maxW,minH:t.minH,maxH:t.maxH,moved:!!t.moved,static:!!t.static,isDraggable:t.isDraggable,isResizable:t.isResizable,resizeHandles:t.resizeHandles,isBounded:t.isBounded}}function To(t,e){return(0,dr.deepEqual)(We.default.Children.map(t,r=>r==null?void 0:r.key),We.default.Children.map(e,r=>r==null?void 0:r.key))&&(0,dr.deepEqual)(We.default.Children.map(t,r=>r==null?void 0:r.props["data-grid"]),We.default.Children.map(e,r=>r==null?void 0:r.props["data-grid"]))}E.fastRGLPropsEqual=Po;function Lo(t,e){return t.left===e.left&&t.top===e.top&&t.width===e.width&&t.height===e.height}function nt(t,e){return!(t.i===e.i||t.x+t.w<=e.x||t.x>=e.x+e.w||t.y+t.h<=e.y||t.y>=e.y+e.h)}function $r(t,e,r,n){const o=Nt(t);let i=rt(o);const s=Gt(t,e),u=Array(t.length);for(let a=0,l=s.length;a<l;a++){let c=xe(s[a]);c.static||(c=qr(o,c,e,r,s,n,i),i=Math.max(i,c.y+c.h),o.push(c)),u[t.indexOf(s[a])]=c,c.moved=!1}return u}const ko={x:"w",y:"h"};function Pt(t,e,r,n){const o=ko[n];e[n]+=1;const i=t.map(s=>s.i).indexOf(e.i);for(let s=i+1;s<t.length;s++){const u=t[s];if(!u.static){if(u.y>e.y+e.h)break;nt(e,u)&&Pt(t,u,r+e[o],n)}}e[n]=r}function qr(t,e,r,n,o,i,s){const u=r==="vertical",a=r==="horizontal";if(u)for(typeof s=="number"?e.y=Math.min(s,e.y):e.y=Math.min(rt(t),e.y);e.y>0&&!we(t,e);)e.y--;else if(a)for(;e.x>0&&!we(t,e);)e.x--;let l;for(;(l=we(t,e))&&!(r===null&&i);)if(a?Pt(o,e,l.x+l.w,"x"):Pt(o,e,l.y+l.h,"y"),a&&e.x+e.w>n)for(e.x=n-e.w,e.y++;e.x>0&&!we(t,e);)e.x--;return e.y=Math.max(e.y,0),e.x=Math.max(e.x,0),e}function Ar(t,e){const r=Nt(t);for(let n=0,o=t.length;n<o;n++){const i=t[n];if(i.x+i.w>e.cols&&(i.x=e.cols-i.w),i.x<0&&(i.x=0,i.w=e.cols),!i.static)r.push(i);else for(;we(r,i);)i.y++}return t}function Wt(t,e){for(let r=0,n=t.length;r<n;r++)if(t[r].i===e)return t[r]}function we(t,e){for(let r=0,n=t.length;r<n;r++)if(nt(t[r],e))return t[r]}function Ir(t,e){return t.filter(r=>nt(r,e))}function Nt(t){return t.filter(e=>e.static)}function Ne(t,e,r,n,o,i,s,u,a){if(e.static&&e.isDraggable!==!0||e.y===n&&e.x===r)return t;"Moving element ".concat(e.i," to [").concat(String(r),",").concat(String(n),"] from [").concat(e.x,",").concat(e.y,"]");const l=e.x,c=e.y;typeof r=="number"&&(e.x=r),typeof n=="number"&&(e.y=n),e.moved=!0;let d=Gt(t,s);(s==="vertical"&&typeof n=="number"?c>=n:s==="horizontal"&&typeof r=="number"?l>=r:!1)&&(d=d.reverse());const p=Ir(d,e),w=p.length>0;if(w&&a)return Wr(t);if(w&&i)return"Collision prevented on ".concat(e.i,", reverting."),e.x=l,e.y=c,e.moved=!1,t;for(let D=0,S=p.length;D<S;D++){const g=p[D];"Resolving collision between ".concat(e.i," at [").concat(e.x,",").concat(e.y,"] and ").concat(g.i," at [").concat(g.x,",").concat(g.y,"]"),!g.moved&&(g.static?t=jt(t,g,e,o,s):t=jt(t,e,g,o,s))}return t}function jt(t,e,r,n,o,i){const s=o==="horizontal",u=o==="vertical",a=e.static;if(n){n=!1;const d={x:s?Math.max(e.x-r.w,0):r.x,y:u?Math.max(e.y-r.h,0):r.y,w:r.w,h:r.h,i:"-1"},f=we(t,d),p=f&&f.y+f.h>e.y,w=f&&e.x+e.w>f.x;if(f){if(p&&u)return Ne(t,r,void 0,r.y+1,n,a,o);if(p&&o==null)return e.y=r.y,r.y=r.y+r.h,t;if(w&&s)return Ne(t,e,r.x,void 0,n,a,o)}else return"Doing reverse collision on ".concat(r.i," up to [").concat(d.x,",").concat(d.y,"]."),Ne(t,r,s?d.x:void 0,u?d.y:void 0,n,a,o)}const l=s?r.x+1:void 0,c=u?r.y+1:void 0;return l==null&&c==null?t:Ne(t,r,s?r.x+1:void 0,u?r.y+1:void 0,n,a,o)}function Ho(t){return t*100+"%"}const Br=(t,e,r,n)=>t+r>n?e:r,Gr=(t,e,r)=>t<0?e:r,Fr=t=>Math.max(0,t),$t=t=>Math.max(0,t),qt=(t,e,r)=>{let{left:n,height:o,width:i}=e;const s=t.top-(o-t.height);return{left:n,width:i,height:Gr(s,t.height,o),top:$t(s)}},At=(t,e,r)=>{let{top:n,left:o,height:i,width:s}=e;return{top:n,height:i,width:Br(t.left,t.width,s,r),left:Fr(o)}},It=(t,e,r)=>{let{top:n,height:o,width:i}=e;const s=t.left-(i-t.width);return{height:o,width:s<0?t.width:Br(t.left,t.width,i,r),top:$t(n),left:Fr(s)}},Bt=(t,e,r)=>{let{top:n,left:o,height:i,width:s}=e;return{width:s,left:o,height:Gr(n,t.height,i),top:$t(n)}},Wo=function(){return qt(arguments.length<=0?void 0:arguments[0],At(...arguments))},No=function(){return qt(arguments.length<=0?void 0:arguments[0],It(...arguments))},$o=function(){return Bt(arguments.length<=0?void 0:arguments[0],At(...arguments))},qo=function(){return Bt(arguments.length<=0?void 0:arguments[0],It(...arguments))},Ao={n:qt,ne:Wo,e:At,se:$o,s:Bt,sw:qo,w:It,nw:No};function Io(t,e,r,n){const o=Ao[t];return o?o(e,Ze(Ze({},e),r),n):r}function Bo(t){let{top:e,left:r,width:n,height:o}=t;const i="translate(".concat(r,"px,").concat(e,"px)");return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:"".concat(n,"px"),height:"".concat(o,"px"),position:"absolute"}}function Go(t){let{top:e,left:r,width:n,height:o}=t;return{top:"".concat(e,"px"),left:"".concat(r,"px"),width:"".concat(n,"px"),height:"".concat(o,"px"),position:"absolute"}}function Gt(t,e){return e==="horizontal"?Xr(t):e==="vertical"?Yr(t):t}function Yr(t){return t.slice(0).sort(function(e,r){return e.y>r.y||e.y===r.y&&e.x>r.x?1:e.y===r.y&&e.x===r.x?0:-1})}function Xr(t){return t.slice(0).sort(function(e,r){return e.x>r.x||e.x===r.x&&e.y>r.y?1:-1})}function Fo(t,e,r,n,o){t=t||[];const i=[];We.default.Children.forEach(e,u=>{if((u==null?void 0:u.key)==null)return;const a=Wt(t,String(u.key)),l=u.props["data-grid"];a&&l==null?i.push(xe(a)):l?i.push(xe(Ze(Ze({},l),{},{i:u.key}))):i.push(xe({w:1,h:1,x:0,y:rt(i),i:String(u.key)}))});const s=Ar(i,{cols:r});return o?s:$r(s,n,r)}function Yo(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Layout";const r=["x","y","w","h"];if(!Array.isArray(t))throw new Error(e+" must be an array!");for(let n=0,o=t.length;n<o;n++){const i=t[n];for(let s=0;s<r.length;s++){const u=r[s],a=i[u];if(typeof a!="number"||Number.isNaN(a))throw new Error("ReactGridLayout: ".concat(e,"[").concat(n,"].").concat(u," must be a number! Received: ").concat(a," (").concat(typeof a,")"))}if(typeof i.i<"u"&&typeof i.i!="string")throw new Error("ReactGridLayout: ".concat(e,"[").concat(n,"].i must be a string! Received: ").concat(i.i," (").concat(typeof i.i,")"))}}function Xo(t){const{verticalCompact:e,compactType:r}=t||{};return e===!1?null:r}const Uo=()=>{};E.noop=Uo;var ae={};Object.defineProperty(ae,"__esModule",{value:!0});ae.calcGridColWidth=ot;ae.calcGridItemPosition=Vo;ae.calcGridItemWHPx=Et;ae.calcWH=Zo;ae.calcXY=Ko;ae.clamp=Se;function ot(t){const{margin:e,containerPadding:r,containerWidth:n,cols:o}=t;return(n-e[0]*(o-1)-r[0]*2)/o}function Et(t,e,r){return Number.isFinite(t)?Math.round(e*t+Math.max(0,t-1)*r):t}function Vo(t,e,r,n,o,i){const{margin:s,containerPadding:u,rowHeight:a}=t,l=ot(t),c={};return i&&i.resizing?(c.width=Math.round(i.resizing.width),c.height=Math.round(i.resizing.height)):(c.width=Et(n,l,s[0]),c.height=Et(o,a,s[1])),i&&i.dragging?(c.top=Math.round(i.dragging.top),c.left=Math.round(i.dragging.left)):i&&i.resizing&&typeof i.resizing.top=="number"&&typeof i.resizing.left=="number"?(c.top=Math.round(i.resizing.top),c.left=Math.round(i.resizing.left)):(c.top=Math.round((a+s[1])*r+u[1]),c.left=Math.round((l+s[0])*e+u[0])),c}function Ko(t,e,r,n,o){const{margin:i,containerPadding:s,cols:u,rowHeight:a,maxRows:l}=t,c=ot(t);let d=Math.round((r-s[0])/(c+i[0])),f=Math.round((e-s[1])/(a+i[1]));return d=Se(d,0,u-n),f=Se(f,0,l-o),{x:d,y:f}}function Zo(t,e,r,n,o,i){const{margin:s,maxRows:u,cols:a,rowHeight:l}=t,c=ot(t);let d=Math.round((e+s[0])/(c+s[0])),f=Math.round((r+s[1])/(l+s[1])),p=Se(d,0,a-n),w=Se(f,0,u-o);return["sw","w","nw"].indexOf(i)!==-1&&(p=Se(d,0,a)),["nw","n","ne"].indexOf(i)!==-1&&(w=Se(f,0,u)),{w:p,h:w}}function Se(t,e,r){return Math.max(Math.min(t,r),e)}var it={},st={exports:{}},Ur={},W={},le={};Object.defineProperty(le,"__esModule",{value:!0});le.dontSetMe=ri;le.findInArray=Jo;le.int=ti;le.isFunction=Qo;le.isNum=ei;function Jo(t,e){for(let r=0,n=t.length;r<n;r++)if(e.apply(e,[t[r],r,t]))return t[r]}function Qo(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Function]"}function ei(t){return typeof t=="number"&&!isNaN(t)}function ti(t){return parseInt(t,10)}function ri(t,e,r){if(t[e])return new Error(`Invalid prop ${e} passed to ${r} - do not set this, set it on the child.`)}var De={};Object.defineProperty(De,"__esModule",{value:!0});De.browserPrefixToKey=Kr;De.browserPrefixToStyle=ni;De.default=void 0;De.getPrefix=Vr;const yt=["Moz","Webkit","O","ms"];function Vr(){var r,n;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"transform";if(typeof window>"u")return"";const e=(n=(r=window.document)==null?void 0:r.documentElement)==null?void 0:n.style;if(!e||t in e)return"";for(let o=0;o<yt.length;o++)if(Kr(t,yt[o])in e)return yt[o];return""}function Kr(t,e){return e?`${e}${oi(t)}`:t}function ni(t,e){return e?`-${e.toLowerCase()}-${t}`:t}function oi(t){let e="",r=!0;for(let n=0;n<t.length;n++)r?(e+=t[n].toUpperCase(),r=!1):t[n]==="-"?r=!0:e+=t[n];return e}De.default=Vr();Object.defineProperty(W,"__esModule",{value:!0});W.addClassName=Qr;W.addEvent=si;W.addUserSelectStyles=yi;W.createCSSTransform=pi;W.createSVGTransform=hi;W.getTouch=gi;W.getTouchIdentifier=mi;W.getTranslation=Ft;W.innerHeight=ci;W.innerWidth=di;W.matchesSelector=Jr;W.matchesSelectorAndParentsTo=ii;W.offsetXYFromParent=fi;W.outerHeight=li;W.outerWidth=ui;W.removeClassName=en;W.removeEvent=ai;W.scheduleRemoveUserSelectStyles=vi;var ee=le,pr=Zr(De);function Zr(t,e){if(typeof WeakMap=="function")var r=new WeakMap,n=new WeakMap;return(Zr=function(o,i){if(!i&&o&&o.__esModule)return o;var s,u,a={__proto__:null,default:o};if(o===null||typeof o!="object"&&typeof o!="function")return a;if(s=i?n:r){if(s.has(o))return s.get(o);s.set(o,a)}for(const l in o)l!=="default"&&{}.hasOwnProperty.call(o,l)&&((u=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(o,l))&&(u.get||u.set)?s(a,l,u):a[l]=o[l]);return a})(t,e)}let Xe="";function Jr(t,e){return Xe||(Xe=(0,ee.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(r){return(0,ee.isFunction)(t[r])})),(0,ee.isFunction)(t[Xe])?t[Xe](e):!1}function ii(t,e,r){let n=t;do{if(Jr(n,e))return!0;if(n===r)return!1;n=n.parentNode}while(n);return!1}function si(t,e,r,n){if(!t)return;const o={capture:!0,...n};t.addEventListener?t.addEventListener(e,r,o):t.attachEvent?t.attachEvent("on"+e,r):t["on"+e]=r}function ai(t,e,r,n){if(!t)return;const o={capture:!0,...n};t.removeEventListener?t.removeEventListener(e,r,o):t.detachEvent?t.detachEvent("on"+e,r):t["on"+e]=null}function li(t){let e=t.clientHeight;const r=t.ownerDocument.defaultView.getComputedStyle(t);return e+=(0,ee.int)(r.borderTopWidth),e+=(0,ee.int)(r.borderBottomWidth),e}function ui(t){let e=t.clientWidth;const r=t.ownerDocument.defaultView.getComputedStyle(t);return e+=(0,ee.int)(r.borderLeftWidth),e+=(0,ee.int)(r.borderRightWidth),e}function ci(t){let e=t.clientHeight;const r=t.ownerDocument.defaultView.getComputedStyle(t);return e-=(0,ee.int)(r.paddingTop),e-=(0,ee.int)(r.paddingBottom),e}function di(t){let e=t.clientWidth;const r=t.ownerDocument.defaultView.getComputedStyle(t);return e-=(0,ee.int)(r.paddingLeft),e-=(0,ee.int)(r.paddingRight),e}function fi(t,e,r){const o=e===e.ownerDocument.body?{left:0,top:0}:e.getBoundingClientRect(),i=(t.clientX+e.scrollLeft-o.left)/r,s=(t.clientY+e.scrollTop-o.top)/r;return{x:i,y:s}}function pi(t,e){const r=Ft(t,e,"px");return{[(0,pr.browserPrefixToKey)("transform",pr.default)]:r}}function hi(t,e){return Ft(t,e,"")}function Ft(t,e,r){let{x:n,y:o}=t,i=`translate(${n}${r},${o}${r})`;if(e){const s=`${typeof e.x=="string"?e.x:e.x+r}`,u=`${typeof e.y=="string"?e.y:e.y+r}`;i=`translate(${s}, ${u})`+i}return i}function gi(t,e){return t.targetTouches&&(0,ee.findInArray)(t.targetTouches,r=>e===r.identifier)||t.changedTouches&&(0,ee.findInArray)(t.changedTouches,r=>e===r.identifier)}function mi(t){if(t.targetTouches&&t.targetTouches[0])return t.targetTouches[0].identifier;if(t.changedTouches&&t.changedTouches[0])return t.changedTouches[0].identifier}function yi(t){if(!t)return;let e=t.getElementById("react-draggable-style-el");e||(e=t.createElement("style"),e.type="text/css",e.id="react-draggable-style-el",e.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;} `,e.innerHTML+=`.react-draggable-transparent-selection *::selection {all: inherit;} `,t.getElementsByTagName("head")[0].appendChild(e)),t.body&&Qr(t.body,"react-draggable-transparent-selection")}function vi(t){window.requestAnimationFrame?window.requestAnimationFrame(()=>{hr(t)}):hr(t)}function hr(t){if(t)try{if(t.body&&en(t.body,"react-draggable-transparent-selection"),t.selection)t.selection.empty();else{const e=(t.defaultView||window).getSelection();e&&e.type!=="Caret"&&e.removeAllRanges()}}catch{}}function Qr(t,e){t.classList?t.classList.add(e):t.className.match(new RegExp(`(?:^|\\s)${e}(?!\\S)`))||(t.className+=` ${e}`)}function en(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(`(?:^|\\s)${e}(?!\\S)`,"g"),"")}var ue={};Object.defineProperty(ue,"__esModule",{value:!0});ue.canDragX=Si;ue.canDragY=xi;ue.createCoreData=Di;ue.createDraggableData=_i;ue.getBoundPosition=bi;ue.getControlPosition=Oi;ue.snapToGrid=wi;var Q=le,ze=W;function bi(t,e,r){if(!t.props.bounds)return[e,r];let{bounds:n}=t.props;n=typeof n=="string"?n:Ri(n);const o=Yt(t);if(typeof n=="string"){const{ownerDocument:i}=o,s=i.defaultView;let u;if(n==="parent"?u=o.parentNode:u=o.getRootNode().querySelector(n),!(u instanceof s.HTMLElement))throw new Error('Bounds selector "'+n+'" could not find an element.');const a=u,l=s.getComputedStyle(o),c=s.getComputedStyle(a);n={left:-o.offsetLeft+(0,Q.int)(c.paddingLeft)+(0,Q.int)(l.marginLeft),top:-o.offsetTop+(0,Q.int)(c.paddingTop)+(0,Q.int)(l.marginTop),right:(0,ze.innerWidth)(a)-(0,ze.outerWidth)(o)-o.offsetLeft+(0,Q.int)(c.paddingRight)-(0,Q.int)(l.marginRight),bottom:(0,ze.innerHeight)(a)-(0,ze.outerHeight)(o)-o.offsetTop+(0,Q.int)(c.paddingBottom)-(0,Q.int)(l.marginBottom)}}return(0,Q.isNum)(n.right)&&(e=Math.min(e,n.right)),(0,Q.isNum)(n.bottom)&&(r=Math.min(r,n.bottom)),(0,Q.isNum)(n.left)&&(e=Math.max(e,n.left)),(0,Q.isNum)(n.top)&&(r=Math.max(r,n.top)),[e,r]}function wi(t,e,r){const n=Math.round(e/t[0])*t[0],o=Math.round(r/t[1])*t[1];return[n,o]}function Si(t){return t.props.axis==="both"||t.props.axis==="x"}function xi(t){return t.props.axis==="both"||t.props.axis==="y"}function Oi(t,e,r){const n=typeof e=="number"?(0,ze.getTouch)(t,e):null;if(typeof e=="number"&&!n)return null;const o=Yt(r),i=r.props.offsetParent||o.offsetParent||o.ownerDocument.body;return(0,ze.offsetXYFromParent)(n||t,i,r.props.scale)}function Di(t,e,r){const n=!(0,Q.isNum)(t.lastX),o=Yt(t);return n?{node:o,deltaX:0,deltaY:0,lastX:e,lastY:r,x:e,y:r}:{node:o,deltaX:e-t.lastX,deltaY:r-t.lastY,lastX:t.lastX,lastY:t.lastY,x:e,y:r}}function _i(t,e){const r=t.props.scale;return{node:e.node,x:t.state.x+e.deltaX/r,y:t.state.y+e.deltaY/r,deltaX:e.deltaX/r,deltaY:e.deltaY/r,lastX:t.state.x,lastY:t.state.y}}function Ri(t){return{left:t.left,top:t.top,right:t.right,bottom:t.bottom}}function Yt(t){const e=t.findDOMNode();if(!e)throw new Error("<DraggableCore>: Unmounted during event!");return e}var at={},lt={};Object.defineProperty(lt,"__esModule",{value:!0});lt.default=Pi;function Pi(){}Object.defineProperty(at,"__esModule",{value:!0});at.default=void 0;var vt=tn(T),X=Xt(he),ji=Xt(kt),Y=W,fe=ue,bt=le,He=Xt(lt);function Xt(t){return t&&t.__esModule?t:{default:t}}function tn(t,e){if(typeof WeakMap=="function")var r=new WeakMap,n=new WeakMap;return(tn=function(o,i){if(!i&&o&&o.__esModule)return o;var s,u,a={__proto__:null,default:o};if(o===null||typeof o!="object"&&typeof o!="function")return a;if(s=i?n:r){if(s.has(o))return s.get(o);s.set(o,a)}for(const l in o)l!=="default"&&{}.hasOwnProperty.call(o,l)&&((u=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(o,l))&&(u.get||u.set)?s(a,l,u):a[l]=o[l]);return a})(t,e)}function U(t,e,r){return(e=Ei(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Ei(t){var e=zi(t,"string");return typeof e=="symbol"?e:e+""}function zi(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}const re={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}};let pe=re.mouse,ut=class extends vt.Component{constructor(){super(...arguments),U(this,"dragging",!1),U(this,"lastX",NaN),U(this,"lastY",NaN),U(this,"touchIdentifier",null),U(this,"mounted",!1),U(this,"handleDragStart",e=>{if(this.props.onMouseDown(e),!this.props.allowAnyClick&&typeof e.button=="number"&&e.button!==0)return!1;const r=this.findDOMNode();if(!r||!r.ownerDocument||!r.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");const{ownerDocument:n}=r;if(this.props.disabled||!(e.target instanceof n.defaultView.Node)||this.props.handle&&!(0,Y.matchesSelectorAndParentsTo)(e.target,this.props.handle,r)||this.props.cancel&&(0,Y.matchesSelectorAndParentsTo)(e.target,this.props.cancel,r))return;e.type==="touchstart"&&!this.props.allowMobileScroll&&e.preventDefault();const o=(0,Y.getTouchIdentifier)(e);this.touchIdentifier=o;const i=(0,fe.getControlPosition)(e,o,this);if(i==null)return;const{x:s,y:u}=i,a=(0,fe.createCoreData)(this,s,u);(0,He.default)("DraggableCore: handleDragStart: %j",a),(0,He.default)("calling",this.props.onStart),!(this.props.onStart(e,a)===!1||this.mounted===!1)&&(this.props.enableUserSelectHack&&(0,Y.addUserSelectStyles)(n),this.dragging=!0,this.lastX=s,this.lastY=u,(0,Y.addEvent)(n,pe.move,this.handleDrag),(0,Y.addEvent)(n,pe.stop,this.handleDragStop))}),U(this,"handleDrag",e=>{const r=(0,fe.getControlPosition)(e,this.touchIdentifier,this);if(r==null)return;let{x:n,y:o}=r;if(Array.isArray(this.props.grid)){let u=n-this.lastX,a=o-this.lastY;if([u,a]=(0,fe.snapToGrid)(this.props.grid,u,a),!u&&!a)return;n=this.lastX+u,o=this.lastY+a}const i=(0,fe.createCoreData)(this,n,o);if((0,He.default)("DraggableCore: handleDrag: %j",i),this.props.onDrag(e,i)===!1||this.mounted===!1){try{this.handleDragStop(new MouseEvent("mouseup"))}catch{const a=document.createEvent("MouseEvents");a.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(a)}return}this.lastX=n,this.lastY=o}),U(this,"handleDragStop",e=>{if(!this.dragging)return;const r=(0,fe.getControlPosition)(e,this.touchIdentifier,this);if(r==null)return;let{x:n,y:o}=r;if(Array.isArray(this.props.grid)){let a=n-this.lastX||0,l=o-this.lastY||0;[a,l]=(0,fe.snapToGrid)(this.props.grid,a,l),n=this.lastX+a,o=this.lastY+l}const i=(0,fe.createCoreData)(this,n,o);if(this.props.onStop(e,i)===!1||this.mounted===!1)return!1;const u=this.findDOMNode();u&&this.props.enableUserSelectHack&&(0,Y.scheduleRemoveUserSelectStyles)(u.ownerDocument),(0,He.default)("DraggableCore: handleDragStop: %j",i),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,u&&((0,He.default)("DraggableCore: Removing handlers"),(0,Y.removeEvent)(u.ownerDocument,pe.move,this.handleDrag),(0,Y.removeEvent)(u.ownerDocument,pe.stop,this.handleDragStop))}),U(this,"onMouseDown",e=>(pe=re.mouse,this.handleDragStart(e))),U(this,"onMouseUp",e=>(pe=re.mouse,this.handleDragStop(e))),U(this,"onTouchStart",e=>(pe=re.touch,this.handleDragStart(e))),U(this,"onTouchEnd",e=>(pe=re.touch,this.handleDragStop(e)))}componentDidMount(){this.mounted=!0;const e=this.findDOMNode();e&&(0,Y.addEvent)(e,re.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;const e=this.findDOMNode();if(e){const{ownerDocument:r}=e;(0,Y.removeEvent)(r,re.mouse.move,this.handleDrag),(0,Y.removeEvent)(r,re.touch.move,this.handleDrag),(0,Y.removeEvent)(r,re.mouse.stop,this.handleDragStop),(0,Y.removeEvent)(r,re.touch.stop,this.handleDragStop),(0,Y.removeEvent)(e,re.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&(0,Y.scheduleRemoveUserSelectStyles)(r)}}findDOMNode(){var e,r,n;return(e=this.props)!=null&&e.nodeRef?(n=(r=this.props)==null?void 0:r.nodeRef)==null?void 0:n.current:ji.default.findDOMNode(this)}render(){return vt.cloneElement(vt.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}};at.default=ut;U(ut,"displayName","DraggableCore");U(ut,"propTypes",{allowAnyClick:X.default.bool,allowMobileScroll:X.default.bool,children:X.default.node.isRequired,disabled:X.default.bool,enableUserSelectHack:X.default.bool,offsetParent:function(t,e){if(t[e]&&t[e].nodeType!==1)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:X.default.arrayOf(X.default.number),handle:X.default.string,cancel:X.default.string,nodeRef:X.default.object,onStart:X.default.func,onDrag:X.default.func,onStop:X.default.func,onMouseDown:X.default.func,scale:X.default.number,className:bt.dontSetMe,style:bt.dontSetMe,transform:bt.dontSetMe});U(ut,"defaultProps",{allowAnyClick:!1,allowMobileScroll:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1});(function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"DraggableCore",{enumerable:!0,get:function(){return a.default}}),t.default=void 0;var e=d(T),r=c(he),n=c(kt),o=tt,i=W,s=ue,u=le,a=c(at),l=c(lt);function c(g){return g&&g.__esModule?g:{default:g}}function d(g,b){if(typeof WeakMap=="function")var m=new WeakMap,x=new WeakMap;return(d=function(y,j){if(!j&&y&&y.__esModule)return y;var A,I,V={__proto__:null,default:y};if(y===null||typeof y!="object"&&typeof y!="function")return V;if(A=j?x:m){if(A.has(y))return A.get(y);A.set(y,V)}for(const J in y)J!=="default"&&{}.hasOwnProperty.call(y,J)&&((I=(A=Object.defineProperty)&&Object.getOwnPropertyDescriptor(y,J))&&(I.get||I.set)?A(V,J,I):V[J]=y[J]);return V})(g,b)}function f(){return f=Object.assign?Object.assign.bind():function(g){for(var b=1;b<arguments.length;b++){var m=arguments[b];for(var x in m)({}).hasOwnProperty.call(m,x)&&(g[x]=m[x])}return g},f.apply(null,arguments)}function p(g,b,m){return(b=w(b))in g?Object.defineProperty(g,b,{value:m,enumerable:!0,configurable:!0,writable:!0}):g[b]=m,g}function w(g){var b=D(g,"string");return typeof b=="symbol"?b:b+""}function D(g,b){if(typeof g!="object"||!g)return g;var m=g[Symbol.toPrimitive];if(m!==void 0){var x=m.call(g,b);if(typeof x!="object")return x;throw new TypeError("@@toPrimitive must return a primitive value.")}return(b==="string"?String:Number)(g)}class S extends e.Component{static getDerivedStateFromProps(b,m){let{position:x}=b,{prevPropsPosition:y}=m;return x&&(!y||x.x!==y.x||x.y!==y.y)?((0,l.default)("Draggable: getDerivedStateFromProps %j",{position:x,prevPropsPosition:y}),{x:x.x,y:x.y,prevPropsPosition:{...x}}):null}constructor(b){super(b),p(this,"onDragStart",(m,x)=>{if((0,l.default)("Draggable: onDragStart: %j",x),this.props.onStart(m,(0,s.createDraggableData)(this,x))===!1)return!1;this.setState({dragging:!0,dragged:!0})}),p(this,"onDrag",(m,x)=>{if(!this.state.dragging)return!1;(0,l.default)("Draggable: onDrag: %j",x);const y=(0,s.createDraggableData)(this,x),j={x:y.x,y:y.y,slackX:0,slackY:0};if(this.props.bounds){const{x:I,y:V}=j;j.x+=this.state.slackX,j.y+=this.state.slackY;const[J,Te]=(0,s.getBoundPosition)(this,j.x,j.y);j.x=J,j.y=Te,j.slackX=this.state.slackX+(I-j.x),j.slackY=this.state.slackY+(V-j.y),y.x=j.x,y.y=j.y,y.deltaX=j.x-this.state.x,y.deltaY=j.y-this.state.y}if(this.props.onDrag(m,y)===!1)return!1;this.setState(j)}),p(this,"onDragStop",(m,x)=>{if(!this.state.dragging||this.props.onStop(m,(0,s.createDraggableData)(this,x))===!1)return!1;(0,l.default)("Draggable: onDragStop: %j",x);const j={dragging:!1,slackX:0,slackY:0};if(!!this.props.position){const{x:I,y:V}=this.props.position;j.x=I,j.y=V}this.setState(j)}),this.state={dragging:!1,dragged:!1,x:b.position?b.position.x:b.defaultPosition.x,y:b.position?b.position.y:b.defaultPosition.y,prevPropsPosition:{...b.position},slackX:0,slackY:0,isElementSVG:!1},b.position&&!(b.onDrag||b.onStop)&&console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}componentDidMount(){typeof window.SVGElement<"u"&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.state.dragging&&this.setState({dragging:!1})}findDOMNode(){var b,m;return((m=(b=this.props)==null?void 0:b.nodeRef)==null?void 0:m.current)??n.default.findDOMNode(this)}render(){const{axis:b,bounds:m,children:x,defaultPosition:y,defaultClassName:j,defaultClassNameDragging:A,defaultClassNameDragged:I,position:V,positionOffset:J,scale:Te,...gt}=this.props;let Le={},ke=null;const ge=!!!V||this.state.dragging,me=V||y,Be={x:(0,s.canDragX)(this)&&ge?this.state.x:me.x,y:(0,s.canDragY)(this)&&ge?this.state.y:me.y};this.state.isElementSVG?ke=(0,i.createSVGTransform)(Be,J):Le=(0,i.createCSSTransform)(Be,J);const mt=(0,o.clsx)(x.props.className||"",j,{[A]:this.state.dragging,[I]:this.state.dragged});return e.createElement(a.default,f({},gt,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),e.cloneElement(e.Children.only(x),{className:mt,style:{...x.props.style,...Le},transform:ke}))}}t.default=S,p(S,"displayName","Draggable"),p(S,"propTypes",{...a.default.propTypes,axis:r.default.oneOf(["both","x","y","none"]),bounds:r.default.oneOfType([r.default.shape({left:r.default.number,right:r.default.number,top:r.default.number,bottom:r.default.number}),r.default.string,r.default.oneOf([!1])]),defaultClassName:r.default.string,defaultClassNameDragging:r.default.string,defaultClassNameDragged:r.default.string,defaultPosition:r.default.shape({x:r.default.number,y:r.default.number}),positionOffset:r.default.shape({x:r.default.oneOfType([r.default.number,r.default.string]),y:r.default.oneOfType([r.default.number,r.default.string])}),position:r.default.shape({x:r.default.number,y:r.default.number}),className:u.dontSetMe,style:u.dontSetMe,transform:u.dontSetMe}),p(S,"defaultProps",{...a.default.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1})})(Ur);const{default:rn,DraggableCore:Ci}=Ur;st.exports=rn;st.exports.default=rn;st.exports.DraggableCore=Ci;var nn=st.exports,ct={exports:{}},Ae={},Ut={};Ut.__esModule=!0;Ut.cloneElement=Wi;var Mi=Ti(T);function Ti(t){return t&&t.__esModule?t:{default:t}}function gr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function mr(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?gr(Object(r),!0).forEach(function(n){Li(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):gr(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Li(t,e,r){return(e=ki(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function ki(t){var e=Hi(t,"string");return typeof e=="symbol"?e:e+""}function Hi(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function Wi(t,e){return e.style&&t.props.style&&(e.style=mr(mr({},t.props.style),e.style)),e.className&&t.props.className&&(e.className=`${t.props.className} ${e.className}`),Mi.default.cloneElement(t,e)}var Ie={};Ie.__esModule=!0;Ie.resizableProps=void 0;var R=Ni(he);function Ni(t){return t&&t.__esModule?t:{default:t}}Ie.resizableProps={axis:R.default.oneOf(["both","x","y","none"]),className:R.default.string,children:R.default.element.isRequired,draggableOpts:R.default.shape({allowAnyClick:R.default.bool,cancel:R.default.string,children:R.default.node,disabled:R.default.bool,enableUserSelectHack:R.default.bool,offsetParent:typeof Element<"u"?R.default.instanceOf(Element):R.default.any,grid:R.default.arrayOf(R.default.number),handle:R.default.string,nodeRef:R.default.object,onStart:R.default.func,onDrag:R.default.func,onStop:R.default.func,onMouseDown:R.default.func,scale:R.default.number}),height:function(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];const[n]=e;return n.axis==="both"||n.axis==="y"?R.default.number.isRequired(...e):R.default.number(...e)},handle:R.default.oneOfType([R.default.node,R.default.func]),handleSize:R.default.arrayOf(R.default.number),lockAspectRatio:R.default.bool,maxConstraints:R.default.arrayOf(R.default.number),minConstraints:R.default.arrayOf(R.default.number),onResizeStop:R.default.func,onResizeStart:R.default.func,onResize:R.default.func,resizeHandles:R.default.arrayOf(R.default.oneOf(["s","w","e","n","sw","nw","se","ne"])),transformScale:R.default.number,width:function(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];const[n]=e;return n.axis==="both"||n.axis==="x"?R.default.number.isRequired(...e):R.default.number(...e)}};Ae.__esModule=!0;Ae.default=void 0;var Re=on(T),$i=nn,qi=Ut,Ai=Ie;const Ii=["children","className","draggableOpts","width","height","handle","handleSize","lockAspectRatio","axis","minConstraints","maxConstraints","onResize","onResizeStop","onResizeStart","resizeHandles","transformScale"];function on(t,e){if(typeof WeakMap=="function")var r=new WeakMap,n=new WeakMap;return(on=function(o,i){if(!i&&o&&o.__esModule)return o;var s,u,a={__proto__:null,default:o};if(o===null||typeof o!="object"&&typeof o!="function")return a;if(s=i?n:r){if(s.has(o))return s.get(o);s.set(o,a)}for(const l in o)l!=="default"&&{}.hasOwnProperty.call(o,l)&&((u=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(o,l))&&(u.get||u.set)?s(a,l,u):a[l]=o[l]);return a})(t,e)}function zt(){return zt=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},zt.apply(null,arguments)}function Bi(t,e){if(t==null)return{};var r,n,o=Gi(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)r=i[n],e.indexOf(r)===-1&&{}.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Gi(t,e){if(t==null)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(e.indexOf(n)!==-1)continue;r[n]=t[n]}return r}function yr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function wt(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?yr(Object(r),!0).forEach