@feltmaps/js-sdk 1.7.0-next.13 → 1.7.0-next.15

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/handler.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var ze=Object.defineProperty;var bo=Object.getOwnPropertyDescriptor;var Io=Object.getOwnPropertyNames;var Eo=Object.prototype.hasOwnProperty;var Co=(r,g)=>{for(var H in g)ze(r,H,{get:g[H],enumerable:!0})},Lo=(r,g,H,q)=>{if(g&&typeof g=="object"||typeof g=="function")for(let A of Io(g))!Eo.call(r,A)&&A!==H&&ze(r,A,{get:()=>g[A],enumerable:!(q=bo(g,A))||q.enumerable});return r};var Mo=r=>Lo(ze({},"__esModule",{value:!0}),r);var qa={};Co(qa,{createMessageHandler:()=>Aa});module.exports=Mo(qa);var d=require("zod");var E=require("zod");var T=require("zod");function e(r,g){return T.z.strictObject({type:T.z.literal(r),params:g})}function M(r,g){return T.z.strictObject({eventName:T.z.literal(r),id:T.z.string(),options:g})}function S(r){return T.z.strictObject({eventName:T.z.literal(r),id:T.z.string()})}var l=require("zod"),fe=l.z.number(),Se=l.z.number(),xe=l.z.object({latitude:Se,longitude:fe}),R=l.z.tuple([fe,Se]),ee=l.z.object({type:l.z.literal("Polygon"),coordinates:l.z.array(l.z.array(R).min(4).refine(r=>r[0][0]===r[r.length-1][0]&&r[0][1]===r[r.length-1][1],"The last point of each ring must be identical to the first"))}),be=l.z.object({type:l.z.literal("MultiPolygon"),coordinates:l.z.array(ee.shape.coordinates)}),Uo=l.z.object({type:l.z.literal("LineString"),coordinates:l.z.array(R).min(2)}),te=l.z.object({type:l.z.literal("MultiLineString"),coordinates:l.z.array(Uo.shape.coordinates)}),st=l.z.number().min(1).max(23),G=l.z.tuple([fe,Se,fe,Se]),J=l.z.object({show:l.z.array(l.z.string()).optional(),hide:l.z.array(l.z.string()).optional()}),Po=l.z.enum(["asc","desc"]),Ie=l.z.object({attribute:l.z.string(),direction:Po});var t=require("zod");var U=t.z.object({id:t.z.string(),groupId:t.z.string().nullable(),color:t.z.string(),name:t.z.string().nullable(),description:t.z.string().nullable(),attributes:t.z.record(t.z.string(),t.z.unknown()),interaction:t.z.enum(["default","locked"]).optional()}),Le=t.z.object({imageUrl:t.z.string().nullable()}),Be=t.z.object({strokeOpacity:t.z.number(),strokeWidth:t.z.number(),strokeStyle:t.z.enum(["solid","dashed","dotted"])}),To=t.z.enum(["meter","kilometer","foot","mile"]),Ee=U.extend(Le.shape).extend({type:t.z.literal("Place"),coordinates:R,symbol:t.z.string(),frame:t.z.enum(["frame-circle","frame-square"]).nullable(),hideLabel:t.z.boolean()}),oe=U.extend(Le.shape).extend(Be.shape).extend({type:t.z.literal("Path"),coordinates:te.shape.coordinates,distanceMarker:t.z.boolean(),routingMode:t.z.enum(["driving","cycling","walking","flying"]).nullable(),endCaps:t.z.boolean()}),ne=U.extend(Le.shape).extend(Be.shape).extend({type:t.z.literal("Polygon"),coordinates:ee.shape.coordinates,fillOpacity:t.z.number().min(0).max(1),areaMarker:t.z.boolean()}),Ce=U.extend(Le.shape).extend(Be.shape).extend({type:t.z.literal("Circle"),center:R,radius:t.z.number(),radiusMarker:t.z.boolean(),radiusDisplayAngle:t.z.number(),radiusDisplayUnit:To.nullable(),fillOpacity:t.z.number().min(0).max(1)}),ae=U.extend({type:t.z.literal("Marker"),coordinates:te.shape.coordinates,opacity:t.z.number().min(0).max(1),size:t.z.number().min(0).max(100),zoom:t.z.number().min(0).max(23)}),re=U.extend({type:t.z.literal("Highlighter"),coordinates:be.shape.coordinates,renderHoles:t.z.boolean(),opacity:t.z.number().min(0).max(1)}),lt=t.z.object({position:R,rotation:t.z.number(),scale:t.z.number(),zoom:t.z.number().min(0).max(23),text:t.z.string(),align:t.z.enum(["left","center","right"]),style:t.z.enum(["italic","light","regular","caps"]),name:t.z.string()}),Fe=U.extend(lt.shape).extend({type:t.z.literal("Text")}),ke=U.extend(lt.shape).extend({type:t.z.literal("Note"),widthScale:t.z.number().min(0)}),ie=U.extend({type:t.z.literal("Image"),coordinates:te.shape.coordinates,imageUrl:t.z.string(),opacity:t.z.number().min(0).max(1)}).omit({color:!0}),Go=U.extend({type:t.z.literal("Link"),coordinates:te.shape.coordinates,url:t.z.string()}),W={type:!0,coordinates:!0},z={id:!0},ve=Ee.partial().extend(Ee.pick(W).shape).omit(z),Me=oe.partial().extend(oe.pick(W).shape).omit(z),je=ne.partial().extend(ne.pick(W).shape).omit(z),Oe=Ce.partial().extend(Ce.pick({type:!0,center:!0,radius:!0}).shape).omit(z),we=ae.partial().extend(ae.pick(W).shape).omit(z),Ve=re.partial().extend(re.pick(W).shape).omit(z),Ae=Fe.partial().omit({...z,name:!0,type:!0}).extend({type:t.z.literal("Text"),text:t.z.string()}),Re=ke.partial().omit({...z,name:!0,type:!0}).extend({type:t.z.literal("Note"),text:t.z.string()}),zo=ie.partial().extend(ie.pick({...W,imageUrl:!0}).shape).omit(z),mt=t.z.discriminatedUnion("type",[ve,Me,je,Oe,we,Ve,zo,Ae,Re]);var Xa=oe.omit({coordinates:!0}),Ya=ne.omit({coordinates:!0});var er=ae.omit({coordinates:!0}),tr=re.omit({coordinates:!0});var or=ie.omit({coordinates:!0}),nr=Go.omit({coordinates:!0}),F={type:!0,id:!0},Fo=Ee.partial().extend(Ee.pick(F).shape),ko=oe.partial().extend(oe.pick(F).shape),Bo=ne.partial().extend(ne.pick(F).shape),vo=Ce.partial().extend(Ce.pick(F).shape),jo=ae.partial().extend(ae.pick(F).shape),Oo=re.partial().extend(re.pick(F).shape),wo=Fe.partial().extend(Fe.pick(F).shape).omit({name:!0}),Vo=ke.partial().extend(ke.pick(F).shape).omit({name:!0}),Ao=ie.partial().extend(ie.pick(F).shape),pt=t.z.discriminatedUnion("type",[Fo,ko,Bo,vo,jo,Oo,wo,Vo,Ao]),ct=t.z.object({ids:t.z.array(t.z.string()).optional()}),dt=t.z.object({ids:t.z.array(t.z.string()).optional()});var Ro=e("getElement",E.z.string()),Do=e("getElementGeometry",E.z.string()),No=e("getElements",ct.optional()),Ho=e("getElementGroup",E.z.string()),Jo=e("getElementGroups",dt.optional()),Zo=e("setElementGroupVisibility",J),qo=M("onElementChange",E.z.object({id:E.z.string()})),Wo=S("onElementCreate"),Ko=S("onElementCreateEnd"),_o=M("onElementDelete",E.z.object({id:E.z.string()})),Qo=M("onElementGroupChange",E.z.object({id:E.z.string()})),$o=e("createElement",mt),Xo=e("updateElement",pt),Yo=e("deleteElement",E.z.string()),gt={methods:[Ro,Do,No,Ho,Jo,Zo,$o,Xo,Yo],listeners:[qo,Wo,Ko,_o,Qo]};var en=S("onPointerClick"),tn=S("onPointerMove"),yt={methods:null,listeners:[en,tn]};var i=require("zod");var s=require("zod");var on=s.z.enum(["in","ni"]),nn=s.z.enum(["lt","gt","le","ge","eq","ne","cn","nc","is","isnt"]),dr=s.z.enum(["and","or"]),ut=s.z.union([s.z.number(),s.z.string(),s.z.boolean(),s.z.null()]),ht=s.z.string().or(s.z.null()),an=s.z.tuple([ht,on,s.z.array(ut).or(s.z.null())]),rn=s.z.tuple([ht,nn,ut]),De=s.z.union([an,rn]),Ne=s.z.tuple([s.z.lazy(()=>s.z.union([Ne,De,s.z.null(),s.z.boolean()])),s.z.enum(["and","or"]),s.z.lazy(()=>s.z.union([Ne,De,s.z.null(),s.z.boolean()]))]),k=s.z.union([Ne,De,s.z.null(),s.z.boolean()]),B=s.z.union([G,ee,be,s.z.array(R)]);var n=require("zod");var ft=n.z.enum(["avg","max","min","sum","median"]),St=n.z.enum(["avg","max","min","sum","count"]),sn=n.z.object({method:ft,attribute:n.z.string()}),ln=n.z.object({methods:n.z.array(n.z.union([ft,n.z.literal("count")])),attribute:n.z.string().optional()}),xt=n.z.object({boundary:B.optional(),filters:k.optional(),aggregation:sn.optional()}),bt=n.z.object({layerId:n.z.string(),attribute:n.z.string(),limit:n.z.number().optional(),boundary:B.optional(),filters:k.optional(),values:xt.optional()}),ur=n.z.object({key:n.z.union([n.z.number(),n.z.string(),n.z.boolean()]),value:n.z.number().nullable()}),mn=n.z.object({type:n.z.literal("equal-intervals"),count:n.z.number()}),pn=n.z.object({type:n.z.literal("time-interval"),interval:n.z.enum(["hour","day","week","month","year"])}),It=n.z.object({layerId:n.z.string(),attribute:n.z.string(),steps:n.z.union([mn,pn,n.z.array(n.z.number())]),boundary:B.optional(),filters:k.optional(),values:xt.optional()}),hr=n.z.object({min:n.z.number(),max:n.z.number(),value:n.z.number()}),Et=n.z.object({layerId:n.z.string(),boundary:B.optional(),filters:k.optional(),aggregation:ln}),Ct=n.z.enum(["h3"]),cn=n.z.object({type:Ct,resolution:n.z.number(),method:St.extract(["count"])}),dn=n.z.object({type:Ct,resolution:n.z.number(),method:St.exclude(["count"]),attribute:n.z.string()}),gn=n.z.union([cn,dn]),Lt=n.z.object({layerId:n.z.string(),boundary:B.optional(),filters:k.optional(),gridConfig:gn});var a=require("zod");var xr=a.z.enum(["processing","completed","failed","incomplete"]),Mt=a.z.object({type:a.z.literal("geoJsonUrl"),url:a.z.string().url(),refreshInterval:a.z.number().min(250).max(5*60*1e3).nullable().optional()}),Ut=a.z.object({type:a.z.literal("geoJsonData"),data:a.z.object({}).passthrough().or(a.z.instanceof(ArrayBuffer))}),Pt=a.z.object({type:a.z.literal("geoJsonFile"),file:a.z.instanceof(File)}),Tt=a.z.object({id:a.z.string(),style:a.z.object({}).passthrough().optional(),shownInLegend:a.z.boolean().optional(),name:a.z.string().optional(),caption:a.z.string().optional(),description:a.z.string().optional(),bounds:G.optional(),source:a.z.union([Mt,Ut,Pt]).optional()}),Gt=a.z.object({ids:a.z.array(a.z.string()).optional()}),zt=a.z.object({ids:a.z.array(a.z.string()).optional()}),K=a.z.object({id:a.z.string(),layerId:a.z.string()}),Ft=a.z.object({ids:K.array().optional(),layerIds:a.z.string().array().optional()}),kt=a.z.object({layerIds:a.z.array(a.z.string()).optional(),areaQuery:a.z.union([a.z.object({coordinates:xe}),a.z.object({boundary:G})]).optional()}),yn=a.z.object({Point:a.z.object({}).passthrough().optional(),Line:a.z.object({}).passthrough().optional(),Polygon:a.z.object({}).passthrough().optional()}),Bt=a.z.object({source:a.z.union([Mt,Ut,Pt]),name:a.z.string(),bounds:G.optional(),caption:a.z.string().optional(),description:a.z.string().optional(),geometryStyles:yn.optional()});var un=e("getLayer",i.z.string()),hn=e("getLayers",Gt.optional()),fn=e("setLayerVisibility",J),Sn=M("onLayerChange",i.z.object({id:i.z.string()})),xn=e("setLayerStyle",i.z.object({id:i.z.string(),style:i.z.object({}).passthrough()})),bn=e("setLayerLegendVisibility",J),In=e("createLayersFromGeoJson",Bt),En=e("updateLayer",Tt),Cn=e("deleteLayer",i.z.string()),Ln=e("getLayerGroup",i.z.string()),Mn=e("getLayerGroups",zt.optional()),Un=e("setLayerGroupVisibility",J),Pn=e("setLayerGroupLegendVisibility",J),Tn=M("onLayerGroupChange",i.z.object({id:i.z.string()})),Gn=e("getLegendItem",K),zn=e("getLegendItems",Ft.optional()),Fn=M("onLegendItemChange",K),kn=e("setLegendItemVisibility",i.z.object({show:K.array().optional(),hide:K.array().optional()})),Bn=e("getLayerFilters",i.z.string()),vn=e("setLayerFilters",i.z.object({layerId:i.z.string(),filters:k,note:i.z.string().optional()})),jn=M("onLayerFiltersChange",i.z.object({layerId:i.z.string()})),On=e("getLayerBoundaries",i.z.string()),wn=e("setLayerBoundary",i.z.object({layerIds:i.z.array(i.z.string()),boundary:B.nullable()})),Vn=M("onLayerBoundariesChange",i.z.object({layerId:i.z.string()})),An=e("getRenderedFeatures",kt.optional()),Rn=e("getFeature",i.z.object({id:i.z.string().or(i.z.number()),layerId:i.z.string()})),Dn=e("getFeatures",i.z.object({layerId:i.z.string(),filters:k.optional(),sorting:Ie.optional(),boundary:B.optional(),search:i.z.string().optional(),pagination:i.z.string().optional().nullish()})),Nn=e("getGeoJsonFeature",i.z.object({id:i.z.string().or(i.z.number()),layerId:i.z.string()})),Hn=e("getCategoryData",bt),Jn=e("getHistogramData",It),Zn=e("getAggregates",Et),qn=e("getPrecomputedAggregates",Lt),Wn=e("getLayerSchema",i.z.string()),vt={methods:[un,hn,fn,xn,bn,In,Cn,En,Ln,Mn,Un,Pn,Gn,zn,kn,Bn,vn,On,wn,An,Rn,Dn,Nn,Hn,Jn,Zn,qn,Wn],listeners:[Sn,Tn,Fn,jn,Vn]};var jt=require("zod");var Kn=e("getMapDetails",jt.z.undefined()),Ot={methods:[Kn],listeners:[]};var se=require("zod");var v=require("zod"),wt=v.z.object({id:v.z.string().or(v.z.number()),layerId:v.z.string(),showPopup:v.z.boolean().optional(),fitViewport:v.z.boolean().or(v.z.object({maxZoom:v.z.number()})).optional()});var _n=e("getSelection",se.z.undefined()),Qn=S("onSelectionChange"),$n=e("selectFeature",wt),Xn=e("clearSelection",se.z.object({features:se.z.boolean().optional(),elements:se.z.boolean().optional()}).optional()),Vt={methods:[_n,$n,Xn],listeners:[Qn]};var Ht=require("zod");var y=require("zod");var At=["circle","highlighter","line","marker","note","pin","polygon","route","text"],Yn=[...At,"link"],Rt=y.z.enum(Yn),Dt=y.z.enum(At),j={showInspector:y.z.boolean().optional()},ea=ve.pick({color:!0,symbol:!0,frame:!0}).extend({afterCreation:y.z.enum(["enter name","add another","select"])}).required(),ta=Me.pick({color:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0}).required(),oa=Me.pick({color:!0,routingMode:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0,endCaps:!0}).required(),na=je.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,areaMarker:!0}).required(),aa=Oe.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,radiusMarker:!0}).required(),ra=we.pick({color:!0,opacity:!0,size:!0}).required(),ia=Ve.pick({color:!0,opacity:!0,renderHoles:!0}).extend({size:y.z.number().min(0).max(200)}).required(),sa=Ae.pick({color:!0,align:!0,style:!0}).required(),la=Re.pick({color:!0,align:!0,style:!0}).required(),Nt=y.z.discriminatedUnion("tool",[ea.partial().extend({tool:y.z.literal("pin"),...j}),ta.partial().extend({tool:y.z.literal("line"),...j}),oa.partial().extend({tool:y.z.literal("route"),...j}),na.partial().extend({tool:y.z.literal("polygon"),...j}),aa.partial().extend({tool:y.z.literal("circle"),...j}),ra.partial().extend({tool:y.z.literal("marker"),...j}),ia.partial().extend({tool:y.z.literal("highlighter"),...j}),sa.partial().extend({tool:y.z.literal("text"),...j}),la.partial().extend({tool:y.z.literal("note"),...j})]);var ma=e("setTool",Rt.nullable()),pa=e("getTool",Ht.z.undefined()),ca=S("onToolChange"),da=e("setToolSettings",Nt),ga=e("getToolSettings",Dt),ya=S("onToolSettingsChange"),Jt={methods:[ma,pa,da,ga],listeners:[ca,ya]};var X=require("zod");var o=require("zod");var D=require("zod"),Z=D.z.union([D.z.object({after:D.z.string()}),D.z.object({before:D.z.string()}),D.z.object({at:D.z.enum(["start","end"])})]);var f=require("zod");var u=require("zod"),ua=u.z.object({onCreate:u.z.function().args(u.z.object({id:u.z.string()})).returns(u.z.void()).optional(),onDestroy:u.z.function().args(u.z.object({id:u.z.string()})).returns(u.z.void()).optional()}),ha=u.z.object({onCreate:u.z.string().optional(),onDestroy:u.z.string().optional()}),h=ua.extend({id:u.z.string()}),Zt=h.partial({id:!0}),p={params:Zt,clonable:Zt.extend(ha.shape)},_=h.extend({label:u.z.string().optional()}),Q={params:_.extend(p.params.shape),clonable:_.extend(p.clonable.shape)};function c(r){return r.partial().extend({id:u.z.string(),type:r.shape.type})}var He=f.z.object({type:f.z.literal("ActionTrigger"),label:f.z.string(),disabled:f.z.boolean().optional()}),le={read:h.extend(He.shape).extend({onTrigger:f.z.function().args(f.z.object({id:f.z.string()})).returns(f.z.void())}),create:p.params.extend(He.shape).extend({type:f.z.undefined()}).extend({onTrigger:f.z.function().args(f.z.object({id:f.z.string()})).returns(f.z.void())}),clonable:p.clonable.extend(He.shape).extend({type:f.z.undefined()}).extend({onTrigger:f.z.string()})};var Wt=require("zod");var Je=h.extend({type:Wt.z.literal("FlexibleSpace")}),qt=Je.partial({id:!0}),O={params:qt,clonable:qt.extend(p.clonable.shape)},Ze={params:c(O.params),clonable:c(O.clonable)};var b=require("zod");var $=require("zod");var P=require("zod");var me=h.extend({type:P.z.literal("Button"),label:P.z.string(),variant:P.z.enum(["primary","outlined","transparent","transparentThin"]).optional(),disabled:P.z.boolean().optional(),onClick:P.z.function().args(P.z.object({id:P.z.string()})).returns(P.z.void())}),Kt=me.extend(p.params.shape),w={params:Kt,clonable:Kt.extend(p.clonable.shape).extend({onClick:P.z.string()})},qe={params:c(w.params),clonable:c(w.clonable)};var C=require("zod");var We=require("zod");var pe=h.extend({type:We.z.literal("Text"),content:We.z.string()}),_t=pe.extend(p.params.shape),V={params:_t,clonable:_t.extend(p.clonable.shape)},Ke={params:c(V.params),clonable:c(V.clonable)};var _e=h.extend({type:C.z.literal("ButtonGroup"),align:C.z.enum(["start","end"]).optional(),items:C.z.array(C.z.union([me,pe,Je]))}),Qt=_e.extend(p.params.shape).omit({items:!0}).extend({items:C.z.array(C.z.union([w.params,V.params,O.params]))}),ce={params:Qt,clonable:Qt.extend(p.clonable.shape).extend({items:C.z.array(C.z.union([w.clonable,V.clonable,O.clonable]))})},Qe={params:c(ce.params),clonable:c(ce.clonable.extend({items:C.z.array(C.z.union([w.clonable,V.clonable,O.clonable]))}))};var Xt=require("zod");var $e=h.extend({type:Xt.z.literal("Divider")}),$t=$e.partial({id:!0}),de={params:$t,clonable:$t.extend(p.clonable.shape)},Xe={params:c(de.params),clonable:c(de.clonable)};var x=require("zod");var Ye=_.extend({type:x.z.literal("Select"),options:x.z.array(x.z.object({label:x.z.string(),value:x.z.string()})),value:x.z.string().optional(),placeholder:x.z.string().optional(),search:x.z.boolean().optional(),onChange:x.z.function().args(x.z.object({value:x.z.string(),id:x.z.string()})).returns(x.z.void())}),Yt=Ye.extend(Q.params.shape),ge={params:Yt,clonable:Yt.extend(Q.clonable.shape).extend({onChange:x.z.string()})},et={params:c(ge.params),clonable:c(ge.clonable)};var m=require("zod");var tt=_.extend({type:m.z.literal("TextInput"),value:m.z.string(),placeholder:m.z.string().optional(),onChange:m.z.function().args(m.z.object({value:m.z.string(),id:m.z.string()})).returns(m.z.void()).optional(),onBlur:m.z.function().args(m.z.object({value:m.z.string(),id:m.z.string()})).returns(m.z.void()).optional(),onFocus:m.z.function().args(m.z.object({value:m.z.string(),id:m.z.string()})).returns(m.z.void()).optional()}),eo=tt.extend(Q.params.shape),ye={params:eo,clonable:eo.extend(Q.clonable.shape).extend({onChange:m.z.string().optional(),onBlur:m.z.string().optional(),onFocus:m.z.string().optional()})},ot={params:c(ye.params),clonable:c(ye.clonable)};var nt=$.z.discriminatedUnion("type",[me,pe,_e,$e,tt,Ye]),N={params:$.z.discriminatedUnion("type",[w.params,V.params,ce.params,de.params,ye.params,ge.params]),clonable:$.z.discriminatedUnion("type",[w.clonable,V.clonable,ce.clonable,de.clonable,ye.clonable,ge.clonable])},at={params:$.z.discriminatedUnion("type",[qe.params,Ke.params,Qe.params,ot.params,et.params,Ze.params,Xe.params]),clonable:$.z.discriminatedUnion("type",[qe.clonable,Ke.clonable,Qe.clonable,ot.clonable,et.clonable,Ze.clonable,Xe.clonable])};var fa=h.extend({type:b.z.literal("Panel"),title:b.z.string().optional(),body:b.z.array(nt),footer:b.z.array(nt).optional(),onClickClose:b.z.function().args(b.z.object({id:b.z.string()})).returns(b.z.void()).optional()}),to=fa.extend(p.params.shape).partial({type:!0}).omit({body:!0,footer:!0}).extend({body:b.z.array(N.params),footer:b.z.array(N.params).optional()}),Ue={params:to,clonable:to.extend(p.clonable.shape).extend({onClickClose:b.z.string().optional(),body:b.z.array(N.clonable),footer:b.z.array(N.clonable).optional()})};var Ii=o.z.object({actionTrigger:le.create,placement:Z.optional()}),oo=o.z.object({actionTrigger:le.clonable,placement:Z.optional()}),Ei=le.create.partial().required({id:!0}),no=le.clonable.partial().required({id:!0}),Ci=o.z.object({panel:Ue.params,placement:Z.optional()}),ao=o.z.object({panel:Ue.clonable,placement:Z.optional()}),ro=Ue.clonable.partial().required({id:!0}),Li=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:o.z.union([N.params,O.params]),container:o.z.union([o.z.literal("body"),o.z.literal("footer"),o.z.object({id:o.z.string()})]).optional(),placement:Z.optional()}))}),io=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:o.z.union([N.clonable,O.clonable]),container:o.z.union([o.z.literal("body"),o.z.literal("footer"),o.z.object({id:o.z.string()})]).optional(),placement:Z.optional()}))}),Mi=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:at.params}))}),so=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:at.clonable}))}),lo=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.string())}),mo=o.z.object({showLegend:o.z.boolean().optional(),cooperativeGestures:o.z.boolean().optional(),fullScreenButton:o.z.boolean().optional(),geolocation:o.z.boolean().optional(),zoomControls:o.z.boolean().optional(),scaleBar:o.z.boolean().optional()}),po=o.z.object({featureSelectPanel:o.z.boolean().optional(),featureHoverPanel:o.z.boolean().optional(),elementSelectPanel:o.z.boolean().optional(),linkClickOpen:o.z.boolean().optional(),imageLightboxOpen:o.z.boolean().optional()});var Sa=e("createActionTrigger",oo),xa=e("updateActionTrigger",no),ba=e("deleteActionTrigger",X.z.string()),Ia=e("createPanel",ao),Ea=e("updatePanel",ro),Ca=e("deletePanel",X.z.string()),La=e("createPanelElements",io),Ma=e("updatePanelElements",so),Ua=e("deletePanelElements",lo),Pa=e("updateUiControls",mo),Ta=e("setOnMapInteractionsUi",po),Ga=e("showLayerDataTable",X.z.object({layerId:X.z.string(),sorting:Ie.optional()}).optional()),za=e("hideLayerDataTable",X.z.undefined()),co={methods:[Sa,xa,ba,Ia,Ea,Ca,La,Ma,Ua,Pa,Ta,Ga,za],listeners:null};var rt=require("zod");var ue=require("zod");var Pe=ue.z.object({center:xe,zoom:st}),go=ue.z.object({center:Pe.shape.center.optional(),zoom:Pe.shape.zoom.optional()}),yo=ue.z.object({minZoom:Pe.shape.zoom.nullish(),maxZoom:Pe.shape.zoom.nullish(),bounds:G.nullish()}).nullable(),uo=ue.z.object({bounds:G});var Fa=e("getViewport",rt.z.undefined()),ka=e("setViewport",go),Ba=e("getViewportConstraints",rt.z.undefined()),va=e("setViewportConstraints",yo),ja=e("fitViewportToBounds",uo),Oa=S("onViewportMove"),wa=S("onViewportMoveEnd"),Va=S("onMapIdle"),ho={methods:[ka,Fa,Ba,va,ja],listeners:[Oa,wa,Va]};var it=[co,ho,vt,gt,Vt,yt,Jt,Ot];function Aa(r,g,H){let q=new Map;async function A(L){if(!Ja.safeParse(L.data).success){H?.onUnknownMessage?.(L.data);return}let he=xo.safeParse(L.data);if(!he.success){H?.onInvalidMessage?.(L.data,he.error),L.ports[0]?.postMessage(fo(he.error.message));return}let{data:I}=he;if(I.type==="felt.ready")L.ports[0]?.postMessage(!0);else if(I.type==="felt.addListener"){if(I.event.eventName==="")throw new Error("felt.addListener eventName cannot be empty");let Y="options"in I.event?{options:"options"in I.event?I.event.options:void 0,handler:Ge=>{L.ports[0]?.postMessage(Ge)}}:{handler:Ge=>{L.ports[0]?.postMessage(Ge)}},Te=g.listeners[I.event.eventName](Y);q.set(I.event.id,Te)}else if(I.type==="felt.removeListener")q.get(I.id)?.(),q.delete(I.id);else try{let Y=g.methods[I.type],Te=await Y(I.params);L.ports[0]?.postMessage(Te)}catch(Y){L.ports[0]?.postMessage(fo(Y))}}return r.addEventListener("message",A),()=>{r.removeEventListener("message",A)}}var So={methods:it.map(r=>r.methods??[]).flat(),listeners:it.map(r=>r.listeners??[]).flat()},Ra=d.z.discriminatedUnion("eventName",[d.z.strictObject({eventName:d.z.literal("")}),d.z.strictObject({eventName:d.z.literal("onGenericEvent"),id:d.z.string(),options:d.z.object({id:d.z.string()})}),...So.listeners]),Da=d.z.strictObject({type:d.z.literal("felt.addListener"),event:Ra}),Na=d.z.strictObject({type:d.z.literal("felt.removeListener"),id:d.z.string()}),Ha=d.z.strictObject({type:d.z.literal("felt.ready")}),xo=d.z.discriminatedUnion("type",[Ha,Da,Na,...So.methods]),Ja=d.z.object({type:d.z.enum(xo.options.map(r=>r.shape.type.value))});function fo(r){return{__error__:Za(r)}}function Za(r){return r instanceof Error?r.message:typeof r=="object"&&r!==null&&"message"in r?String(r.message):typeof r=="string"?r:"Unknown error"}0&&(module.exports={createMessageHandler});
1
+ "use strict";var ve=Object.defineProperty;var Ua=Object.getOwnPropertyDescriptor;var Ma=Object.getOwnPropertyNames;var La=Object.prototype.hasOwnProperty;var Ta=(a,g)=>{for(var H in g)ve(a,H,{get:g[H],enumerable:!0})},Pa=(a,g,H,K)=>{if(g&&typeof g=="object"||typeof g=="function")for(let D of Ma(g))!La.call(a,D)&&D!==H&&ve(a,D,{get:()=>g[D],enumerable:!(K=Ua(g,D))||K.enumerable});return a};var Ga=a=>Pa(ve({},"__esModule",{value:!0}),a);var nr={};Ta(nr,{createMessageHandler:()=>Qo});module.exports=Ga(nr);var d=require("zod");var E=require("zod");var G=require("zod");function e(a,g){return G.z.strictObject({type:G.z.literal(a),params:g})}function T(a,g){return G.z.strictObject({eventName:G.z.literal(a),id:G.z.string(),options:g})}function S(a){return G.z.strictObject({eventName:G.z.literal(a),id:G.z.string()})}var s=require("zod"),Ce=s.z.number(),Ee=s.z.number(),Ie=s.z.object({latitude:Ee,longitude:Ce}),N=s.z.tuple([Ce,Ee]),te=s.z.object({type:s.z.literal("Polygon"),coordinates:s.z.array(s.z.array(N).min(4).refine(a=>a[0][0]===a[a.length-1][0]&&a[0][1]===a[a.length-1][1],"The last point of each ring must be identical to the first"))}),Ue=s.z.object({type:s.z.literal("MultiPolygon"),coordinates:s.z.array(te.shape.coordinates)}),za=s.z.object({type:s.z.literal("LineString"),coordinates:s.z.array(N).min(2)}),ae=s.z.object({type:s.z.literal("MultiLineString"),coordinates:s.z.array(za.shape.coordinates)}),ct=s.z.number().min(1).max(23),z=s.z.tuple([Ce,Ee,Ce,Ee]),J=s.z.object({show:s.z.array(s.z.string()).optional(),hide:s.z.array(s.z.string()).optional()}),Fa=s.z.enum(["asc","desc"]),Me=s.z.object({attribute:s.z.string(),direction:Fa});var t=require("zod");var P=t.z.object({id:t.z.string(),groupId:t.z.string().nullable(),color:t.z.string(),name:t.z.string().nullable(),description:t.z.string().nullable(),attributes:t.z.record(t.z.string(),t.z.unknown()),interaction:t.z.enum(["default","locked"]).optional()}),Pe=t.z.object({imageUrl:t.z.string().nullable()}),we=t.z.object({strokeOpacity:t.z.number(),strokeWidth:t.z.number(),strokeStyle:t.z.enum(["solid","dashed","dotted"])}),ka=t.z.enum(["meter","kilometer","foot","mile"]),Le=P.extend(Pe.shape).extend({type:t.z.literal("Place"),coordinates:N,symbol:t.z.string(),frame:t.z.enum(["frame-circle","frame-square"]).nullable(),hideLabel:t.z.boolean()}),ne=P.extend(Pe.shape).extend(we.shape).extend({type:t.z.literal("Path"),coordinates:ae.shape.coordinates,distanceMarker:t.z.boolean(),routingMode:t.z.enum(["driving","cycling","walking","flying"]).nullable(),endCaps:t.z.boolean()}),oe=P.extend(Pe.shape).extend(we.shape).extend({type:t.z.literal("Polygon"),coordinates:te.shape.coordinates,fillOpacity:t.z.number().min(0).max(1),areaMarker:t.z.boolean()}),Te=P.extend(Pe.shape).extend(we.shape).extend({type:t.z.literal("Circle"),center:N,radius:t.z.number(),radiusMarker:t.z.boolean(),radiusDisplayAngle:t.z.number(),radiusDisplayUnit:ka.nullable(),fillOpacity:t.z.number().min(0).max(1)}),re=P.extend({type:t.z.literal("Marker"),coordinates:ae.shape.coordinates,opacity:t.z.number().min(0).max(1),size:t.z.number().min(0).max(100),zoom:t.z.number().min(0).max(23)}),ie=P.extend({type:t.z.literal("Highlighter"),coordinates:Ue.shape.coordinates,renderHoles:t.z.boolean(),opacity:t.z.number().min(0).max(1)}),dt=t.z.object({position:N,rotation:t.z.number(),scale:t.z.number(),zoom:t.z.number().min(0).max(23),text:t.z.string(),align:t.z.enum(["left","center","right"]),style:t.z.enum(["italic","light","regular","caps"]),name:t.z.string()}),Oe=P.extend(dt.shape).extend({type:t.z.literal("Text")}),je=P.extend(dt.shape).extend({type:t.z.literal("Note"),widthScale:t.z.number().min(0)}),le=P.extend({type:t.z.literal("Image"),coordinates:ae.shape.coordinates,imageUrl:t.z.string(),opacity:t.z.number().min(0).max(1)}).omit({color:!0}),Ba=P.extend({type:t.z.literal("Link"),coordinates:ae.shape.coordinates,url:t.z.string()}),W={type:!0,coordinates:!0},F={id:!0},Ve=Le.partial().extend(Le.pick(W).shape).omit(F),Ge=ne.partial().extend(ne.pick(W).shape).omit(F),Ae=oe.partial().extend(oe.pick(W).shape).omit(F),Re=Te.partial().extend(Te.pick({type:!0,center:!0,radius:!0}).shape).omit(F),De=re.partial().extend(re.pick(W).shape).omit(F),Ne=ie.partial().extend(ie.pick(W).shape).omit(F),Ze=Oe.partial().omit({...F,name:!0,type:!0}).extend({type:t.z.literal("Text"),text:t.z.string()}),He=je.partial().omit({...F,name:!0,type:!0}).extend({type:t.z.literal("Note"),text:t.z.string()}),va=le.partial().extend(le.pick({...W,imageUrl:!0}).shape).omit(F),yt=t.z.discriminatedUnion("type",[Ve,Ge,Ae,Re,De,Ne,va,Ze,He]);var mr=ne.omit({coordinates:!0}),pr=oe.omit({coordinates:!0});var cr=re.omit({coordinates:!0}),dr=ie.omit({coordinates:!0});var yr=le.omit({coordinates:!0}),gr=Ba.omit({coordinates:!0}),k={type:!0,id:!0},Oa=Le.partial().extend(Le.pick(k).shape),ja=ne.partial().extend(ne.pick(k).shape),wa=oe.partial().extend(oe.pick(k).shape),Va=Te.partial().extend(Te.pick(k).shape),Aa=re.partial().extend(re.pick(k).shape),Ra=ie.partial().extend(ie.pick(k).shape),Da=Oe.partial().extend(Oe.pick(k).shape).omit({name:!0}),Na=je.partial().extend(je.pick(k).shape).omit({name:!0}),Za=le.partial().extend(le.pick(k).shape),gt=t.z.discriminatedUnion("type",[Oa,ja,wa,Va,Aa,Ra,Da,Na,Za]),ut=t.z.object({ids:t.z.array(t.z.string()).optional()}),ht=t.z.object({ids:t.z.array(t.z.string()).optional()});var Ha=e("getElement",E.z.string()),Ja=e("getElementGeometry",E.z.string()),qa=e("getElements",ut.optional()),Ka=e("getElementGroup",E.z.string()),Wa=e("getElementGroups",ht.optional()),_a=e("setElementGroupVisibility",J),Qa=T("onElementChange",E.z.object({id:E.z.string()})),$a=S("onElementCreate"),Xa=S("onElementCreateEnd"),Ya=T("onElementDelete",E.z.object({id:E.z.string()})),en=T("onElementGroupChange",E.z.object({id:E.z.string()})),tn=e("createElement",yt),an=e("updateElement",gt),nn=e("deleteElement",E.z.string()),ft={methods:[Ha,Ja,qa,Ka,Wa,_a,tn,an,nn],listeners:[Qa,$a,Xa,Ya,en]};var on=S("onPointerClick"),rn=S("onPointerMove"),St={methods:null,listeners:[on,rn]};var i=require("zod");var l=require("zod");var ln=l.z.enum(["in","ni"]),sn=l.z.enum(["lt","gt","le","ge","eq","ne","cn","nc","is","isnt"]),Ir=l.z.enum(["and","or"]),xt=l.z.union([l.z.number(),l.z.string(),l.z.boolean(),l.z.null()]),bt=l.z.string().or(l.z.null()),mn=l.z.tuple([bt,ln,l.z.array(xt).or(l.z.null())]),pn=l.z.tuple([bt,sn,xt]),Je=l.z.union([mn,pn]),qe=l.z.tuple([l.z.lazy(()=>l.z.union([qe,Je,l.z.null(),l.z.boolean()])),l.z.enum(["and","or"]),l.z.lazy(()=>l.z.union([qe,Je,l.z.null(),l.z.boolean()]))]),B=l.z.union([qe,Je,l.z.null(),l.z.boolean()]),v=l.z.union([z,te,Ue,l.z.array(N)]);var n=require("zod");var Ct=n.z.enum(["avg","max","min","sum","median"]),Et=n.z.enum(["avg","max","min","sum","count"]),cn=n.z.object({method:Ct,attribute:n.z.string()}),dn=n.z.object({methods:n.z.array(n.z.union([Ct,n.z.literal("count")])),attribute:n.z.string().optional()}),It=n.z.object({boundary:v.optional(),filters:B.optional(),aggregation:cn.optional()}),Ut=n.z.object({layerId:n.z.string(),attribute:n.z.string(),limit:n.z.number().optional(),boundary:v.optional(),filters:B.optional(),values:It.optional()}),Lr=n.z.object({key:n.z.union([n.z.number(),n.z.string(),n.z.boolean()]),value:n.z.number().nullable()}),yn=n.z.object({type:n.z.literal("equal-intervals"),count:n.z.number()}),gn=n.z.object({type:n.z.literal("time-interval"),interval:n.z.enum(["hour","day","week","month","year"])}),Mt=n.z.object({layerId:n.z.string(),attribute:n.z.string(),steps:n.z.union([yn,gn,n.z.array(n.z.number())]),boundary:v.optional(),filters:B.optional(),values:It.optional()}),Tr=n.z.object({min:n.z.number(),max:n.z.number(),value:n.z.number()}),Lt=n.z.object({layerId:n.z.string(),boundary:v.optional(),filters:B.optional(),aggregation:dn}),Tt=n.z.enum(["h3"]),un=n.z.object({type:Tt,resolution:n.z.number(),method:Et.extract(["count"])}),hn=n.z.object({type:Tt,resolution:n.z.number(),method:Et.exclude(["count"]),attribute:n.z.string()}),fn=n.z.union([un,hn]),Pt=n.z.object({layerId:n.z.string(),boundary:v.optional(),filters:B.optional(),gridConfig:fn});var r=require("zod");var zr=r.z.enum(["processing","completed","failed","incomplete"]),Gt=r.z.object({type:r.z.literal("geoJsonUrl"),url:r.z.string().url(),refreshInterval:r.z.number().min(250).max(5*60*1e3).nullable().optional()}),zt=r.z.object({type:r.z.literal("geoJsonData"),data:r.z.object({}).passthrough().or(r.z.instanceof(ArrayBuffer))}),Ft=r.z.object({type:r.z.literal("geoJsonFile"),file:r.z.instanceof(File)}),kt=r.z.object({id:r.z.string(),style:r.z.object({}).passthrough().optional(),shownInLegend:r.z.boolean().optional(),name:r.z.string().optional(),caption:r.z.string().optional(),description:r.z.string().optional(),bounds:z.optional(),source:r.z.union([Gt,zt,Ft]).optional()}),Bt=r.z.object({ids:r.z.array(r.z.string()).optional()}),vt=r.z.object({ids:r.z.array(r.z.string()).optional()}),_=r.z.object({id:r.z.string(),layerId:r.z.string()}),Ot=r.z.object({ids:_.array().optional(),layerIds:r.z.string().array().optional()}),jt=r.z.object({layerIds:r.z.array(r.z.string()).optional(),areaQuery:r.z.union([r.z.object({coordinates:Ie}),r.z.object({boundary:z})]).optional()}),Sn=r.z.object({Point:r.z.object({}).passthrough().optional(),Line:r.z.object({}).passthrough().optional(),Polygon:r.z.object({}).passthrough().optional()}),wt=r.z.object({source:r.z.union([Gt,zt,Ft]),name:r.z.string(),bounds:z.optional(),caption:r.z.string().optional(),description:r.z.string().optional(),geometryStyles:Sn.optional()});var xn=e("getLayer",i.z.string()),bn=e("getLayers",Bt.optional()),Cn=e("setLayerVisibility",J),En=T("onLayerChange",i.z.object({id:i.z.string()})),In=e("setLayerStyle",i.z.object({id:i.z.string(),style:i.z.object({}).passthrough()})),Un=e("setLayerLegendVisibility",J),Mn=e("createLayersFromGeoJson",wt),Ln=e("updateLayer",kt),Tn=e("deleteLayer",i.z.string()),Pn=e("getLayerGroup",i.z.string()),Gn=e("getLayerGroups",vt.optional()),zn=e("setLayerGroupVisibility",J),Fn=e("setLayerGroupLegendVisibility",J),kn=T("onLayerGroupChange",i.z.object({id:i.z.string()})),Bn=e("getLegendItem",_),vn=e("getLegendItems",Ot.optional()),On=T("onLegendItemChange",_),jn=e("setLegendItemVisibility",i.z.object({show:_.array().optional(),hide:_.array().optional()})),wn=e("getLayerFilters",i.z.string()),Vn=e("setLayerFilters",i.z.object({layerId:i.z.string(),filters:B,note:i.z.string().optional()})),An=T("onLayerFiltersChange",i.z.object({layerId:i.z.string()})),Rn=e("getLayerBoundaries",i.z.string()),Dn=e("setLayerBoundary",i.z.object({layerIds:i.z.array(i.z.string()),boundary:v.nullable()})),Nn=T("onLayerBoundariesChange",i.z.object({layerId:i.z.string()})),Zn=e("getRenderedFeatures",jt.optional()),Hn=e("getFeature",i.z.object({id:i.z.string().or(i.z.number()),layerId:i.z.string()})),Jn=e("getFeatures",i.z.object({layerId:i.z.string(),filters:B.optional(),sorting:Me.optional(),boundary:v.optional(),search:i.z.string().optional(),pagination:i.z.string().optional().nullish()})),qn=e("getGeoJsonFeature",i.z.object({id:i.z.string().or(i.z.number()),layerId:i.z.string()})),Kn=e("getCategoryData",Ut),Wn=e("getHistogramData",Mt),_n=e("getAggregates",Lt),Qn=e("getPrecomputedAggregates",Pt),$n=e("getLayerSchema",i.z.string()),Vt={methods:[xn,bn,Cn,In,Un,Mn,Tn,Ln,Pn,Gn,zn,Fn,Bn,vn,jn,wn,Vn,Rn,Dn,Zn,Hn,Jn,qn,Kn,Wn,_n,Qn,$n],listeners:[En,kn,On,An,Nn]};var At=require("zod");var Xn=e("getMapDetails",At.z.undefined()),Rt={methods:[Xn],listeners:[]};var se=require("zod");var O=require("zod"),Dt=O.z.object({id:O.z.string().or(O.z.number()),layerId:O.z.string(),showPopup:O.z.boolean().optional(),fitViewport:O.z.boolean().or(O.z.object({maxZoom:O.z.number()})).optional()});var Yn=e("getSelection",se.z.undefined()),eo=S("onSelectionChange"),to=e("selectFeature",Dt),ao=e("clearSelection",se.z.object({features:se.z.boolean().optional(),elements:se.z.boolean().optional()}).optional()),Nt={methods:[Yn,to,ao],listeners:[eo]};var Kt=require("zod");var u=require("zod");var Zt=["circle","highlighter","line","marker","note","pin","polygon","route","text"],no=[...Zt,"link"],Ht=u.z.enum(no),Jt=u.z.enum(Zt),j={showInspector:u.z.boolean().optional()},oo=Ve.pick({color:!0,symbol:!0,frame:!0}).extend({afterCreation:u.z.enum(["enter name","add another","select"])}).required(),ro=Ge.pick({color:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0}).required(),io=Ge.pick({color:!0,routingMode:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0,endCaps:!0}).required(),lo=Ae.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,areaMarker:!0}).required(),so=Re.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,radiusMarker:!0}).required(),mo=De.pick({color:!0,opacity:!0,size:!0}).required(),po=Ne.pick({color:!0,opacity:!0,renderHoles:!0}).extend({size:u.z.number().min(0).max(200)}).required(),co=Ze.pick({color:!0,align:!0,style:!0}).required(),yo=He.pick({color:!0,align:!0,style:!0}).required(),qt=u.z.discriminatedUnion("tool",[oo.partial().extend({tool:u.z.literal("pin"),...j}),ro.partial().extend({tool:u.z.literal("line"),...j}),io.partial().extend({tool:u.z.literal("route"),...j}),lo.partial().extend({tool:u.z.literal("polygon"),...j}),so.partial().extend({tool:u.z.literal("circle"),...j}),mo.partial().extend({tool:u.z.literal("marker"),...j}),po.partial().extend({tool:u.z.literal("highlighter"),...j}),co.partial().extend({tool:u.z.literal("text"),...j}),yo.partial().extend({tool:u.z.literal("note"),...j})]);var go=e("setTool",Ht.nullable()),uo=e("getTool",Kt.z.undefined()),ho=S("onToolChange"),fo=e("setToolSettings",qt),So=e("getToolSettings",Jt),xo=S("onToolSettingsChange"),Wt={methods:[go,uo,fo,So],listeners:[ho,xo]};var Y=require("zod");var o=require("zod");var Z=require("zod"),q=Z.z.union([Z.z.object({after:Z.z.string()}),Z.z.object({before:Z.z.string()}),Z.z.object({at:Z.z.enum(["start","end"])})]);var f=require("zod");var h=require("zod"),bo=h.z.object({onCreate:h.z.function().args(h.z.object({id:h.z.string()})).returns(h.z.void()).optional(),onDestroy:h.z.function().args(h.z.object({id:h.z.string()})).returns(h.z.void()).optional()}),Co=h.z.object({onCreate:h.z.string().optional(),onDestroy:h.z.string().optional()}),y=bo.extend({id:h.z.string()}),_t=y.partial({id:!0}),m={params:_t,clonable:_t.extend(Co.shape)},Q=y.extend({label:h.z.string().optional()}),$={params:Q.extend(m.params.shape),clonable:Q.extend(m.clonable.shape)};function p(a){return a.partial().extend({id:h.z.string(),type:a.shape.type})}var Ke=f.z.object({type:f.z.literal("ActionTrigger"),label:f.z.string(),disabled:f.z.boolean().optional()}),me={read:y.extend(Ke.shape).extend({onTrigger:f.z.function().args(f.z.object({id:f.z.string()})).returns(f.z.void())}),create:m.params.extend(Ke.shape).extend({type:f.z.undefined()}).extend({onTrigger:f.z.function().args(f.z.object({id:f.z.string()})).returns(f.z.void())}),clonable:m.clonable.extend(Ke.shape).extend({type:f.z.undefined()}).extend({onTrigger:f.z.string()})};var $t=require("zod");var pe=y.extend({type:$t.z.literal("FlexibleSpace")}),Qt=pe.partial({id:!0}),w={params:Qt,clonable:Qt.extend(m.clonable.shape)},We={params:p(w.params),clonable:p(w.clonable)};var b=require("zod");var X=require("zod");var I=require("zod");var ce=y.extend({type:I.z.literal("Button"),label:I.z.string(),variant:I.z.enum(["filled","transparent","outlined"]).optional(),tint:I.z.enum(["default","primary","accent","danger"]).optional(),disabled:I.z.boolean().optional(),onClick:I.z.function().args(I.z.object({id:I.z.string()})).returns(I.z.void())}),Xt=ce.extend(m.params.shape),V={params:Xt,clonable:Xt.extend(m.clonable.shape).extend({onClick:I.z.string()})},_e={params:p(V.params),clonable:p(V.clonable)};var U=require("zod");var Qe=require("zod");var de=y.extend({type:Qe.z.literal("Text"),content:Qe.z.string()}),Yt=de.extend(m.params.shape),A={params:Yt,clonable:Yt.extend(m.clonable.shape)},$e={params:p(A.params),clonable:p(A.clonable)};var Xe=y.extend({type:U.z.literal("ButtonGroup"),align:U.z.enum(["start","end"]).optional(),items:U.z.array(U.z.union([ce,de,pe]))}),ea=Xe.extend(m.params.shape).omit({items:!0}).extend({items:U.z.array(U.z.union([V.params,A.params,w.params]))}),ye={params:ea,clonable:ea.extend(m.clonable.shape).extend({items:U.z.array(U.z.union([V.clonable,A.clonable,w.clonable]))})},Ye={params:p(ye.params),clonable:p(ye.clonable.extend({items:U.z.array(U.z.union([V.clonable,A.clonable,w.clonable]))}))};var aa=require("zod");var et=y.extend({type:aa.z.literal("Divider")}),ta=et.partial({id:!0}),ge={params:ta,clonable:ta.extend(m.clonable.shape)},tt={params:p(ge.params),clonable:p(ge.clonable)};var R=require("zod");var Eo=R.z.lazy(()=>R.z.array(he.refine(a=>a.type!=="Grid"))),Io=R.z.lazy(()=>R.z.array(M.params.refine(a=>a.type!=="Grid"))),Uo=R.z.lazy(()=>R.z.array(M.clonable.refine(a=>a.type!=="Grid"))),at=y.extend({type:R.z.literal("Grid"),grid:R.z.string().optional(),items:Eo}),na=at.extend(m.params.shape).omit({items:!0}).extend({items:Io}),Mo=na.extend(m.clonable.shape).extend({items:Uo}),ue={params:na,clonable:Mo},nt={params:p(ue.params),clonable:p(ue.clonable)};var x=require("zod");var ot=Q.extend({type:x.z.literal("Select"),options:x.z.array(x.z.object({label:x.z.string(),value:x.z.string()})),value:x.z.string().optional(),placeholder:x.z.string().optional(),search:x.z.boolean().optional(),onChange:x.z.function().args(x.z.object({value:x.z.string(),id:x.z.string()})).returns(x.z.void())}),oa=ot.extend($.params.shape),fe={params:oa,clonable:oa.extend($.clonable.shape).extend({onChange:x.z.string()})},rt={params:p(fe.params),clonable:p(fe.clonable)};var c=require("zod");var it=Q.extend({type:c.z.literal("TextInput"),value:c.z.string(),placeholder:c.z.string().optional(),onChange:c.z.function().args(c.z.object({value:c.z.string(),id:c.z.string()})).returns(c.z.void()).optional(),onBlur:c.z.function().args(c.z.object({value:c.z.string(),id:c.z.string()})).returns(c.z.void()).optional(),onFocus:c.z.function().args(c.z.object({value:c.z.string(),id:c.z.string()})).returns(c.z.void()).optional()}),ra=it.extend($.params.shape),Se={params:ra,clonable:ra.extend($.clonable.shape).extend({onChange:c.z.string().optional(),onBlur:c.z.string().optional(),onFocus:c.z.string().optional()})},lt={params:p(Se.params),clonable:p(Se.clonable)};var he=X.z.discriminatedUnion("type",[ce,de,Xe,et,it,ot,pe,at]),Lo=X.z.discriminatedUnion("type",[V.params,A.params,ye.params,ge.params,Se.params,fe.params,w.params,ue.params]),To=X.z.discriminatedUnion("type",[V.clonable,A.clonable,ye.clonable,ge.clonable,Se.clonable,fe.clonable,w.clonable,ue.clonable]),M={params:Lo,clonable:To},st={params:X.z.discriminatedUnion("type",[_e.params,$e.params,Ye.params,lt.params,rt.params,tt.params,We.params,nt.params]),clonable:X.z.discriminatedUnion("type",[_e.clonable,$e.clonable,Ye.clonable,lt.clonable,rt.clonable,tt.clonable,We.clonable,nt.clonable])};var Po=y.extend({type:b.z.literal("Panel"),title:b.z.string().optional(),body:b.z.array(he),footer:b.z.array(he).optional(),onClickClose:b.z.function().args(b.z.object({id:b.z.string()})).returns(b.z.void()).optional()}),ia=Po.extend(m.params.shape).partial({type:!0}).omit({body:!0,footer:!0}).extend({body:b.z.array(M.params),footer:b.z.array(M.params).optional()}),ze={params:ia,clonable:ia.extend(m.clonable.shape).extend({onClickClose:b.z.string().optional(),body:b.z.array(M.clonable),footer:b.z.array(M.clonable).optional()})};var ji=o.z.object({actionTrigger:me.create,placement:q.optional()}),la=o.z.object({actionTrigger:me.clonable,placement:q.optional()}),wi=me.create.partial().required({id:!0}),sa=me.clonable.partial().required({id:!0}),Vi=o.z.object({panel:ze.params,placement:q.optional()}),ma=o.z.object({panel:ze.clonable,placement:q.optional()}),pa=ze.clonable.partial().required({id:!0}),Ai=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:M.params,container:o.z.union([o.z.literal("body"),o.z.literal("footer"),o.z.object({id:o.z.string()})]).optional(),placement:q.optional()}))}),ca=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:M.clonable,container:o.z.union([o.z.literal("body"),o.z.literal("footer"),o.z.object({id:o.z.string()})]).optional(),placement:q.optional()}))}),Ri=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:st.params}))}),da=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.object({element:st.clonable}))}),ya=o.z.object({panelId:o.z.string(),elements:o.z.array(o.z.string())}),ga=o.z.object({showLegend:o.z.boolean().optional(),cooperativeGestures:o.z.boolean().optional(),fullScreenButton:o.z.boolean().optional(),geolocation:o.z.boolean().optional(),zoomControls:o.z.boolean().optional(),scaleBar:o.z.boolean().optional()}),ua=o.z.object({featureSelectPanel:o.z.boolean().optional(),featureHoverPanel:o.z.boolean().optional(),elementSelectPanel:o.z.boolean().optional(),linkClickOpen:o.z.boolean().optional(),imageLightboxOpen:o.z.boolean().optional()});var Go=e("createActionTrigger",la),zo=e("updateActionTrigger",sa),Fo=e("deleteActionTrigger",Y.z.string()),ko=e("createPanel",ma),Bo=e("updatePanel",pa),vo=e("deletePanel",Y.z.string()),Oo=e("createPanelElements",ca),jo=e("updatePanelElements",da),wo=e("deletePanelElements",ya),Vo=e("updateUiControls",ga),Ao=e("setOnMapInteractionsUi",ua),Ro=e("showLayerDataTable",Y.z.object({layerId:Y.z.string(),sorting:Me.optional()}).optional()),Do=e("hideLayerDataTable",Y.z.undefined()),ha={methods:[Go,zo,Fo,ko,Bo,vo,Oo,jo,wo,Vo,Ao,Ro,Do],listeners:null};var mt=require("zod");var xe=require("zod");var Fe=xe.z.object({center:Ie,zoom:ct}),fa=xe.z.object({center:Fe.shape.center.optional(),zoom:Fe.shape.zoom.optional()}),Sa=xe.z.object({minZoom:Fe.shape.zoom.nullish(),maxZoom:Fe.shape.zoom.nullish(),bounds:z.nullish()}).nullable(),xa=xe.z.object({bounds:z});var No=e("getViewport",mt.z.undefined()),Zo=e("setViewport",fa),Ho=e("getViewportConstraints",mt.z.undefined()),Jo=e("setViewportConstraints",Sa),qo=e("fitViewportToBounds",xa),Ko=S("onViewportMove"),Wo=S("onViewportMoveEnd"),_o=S("onMapIdle"),ba={methods:[Zo,No,Ho,Jo,qo],listeners:[Ko,Wo,_o]};var pt=[ha,ba,Vt,ft,Nt,St,Wt,Rt];function Qo(a,g,H){let K=new Map;async function D(L){if(!tr.safeParse(L.data).success){H?.onUnknownMessage?.(L.data);return}let be=Ia.safeParse(L.data);if(!be.success){H?.onInvalidMessage?.(L.data,be.error),L.ports[0]?.postMessage(Ca(be.error.message));return}let{data:C}=be;if(C.type==="felt.ready")L.ports[0]?.postMessage(!0);else if(C.type==="felt.addListener"){if(C.event.eventName==="")throw new Error("felt.addListener eventName cannot be empty");let ee="options"in C.event?{options:"options"in C.event?C.event.options:void 0,handler:Be=>{L.ports[0]?.postMessage(Be)}}:{handler:Be=>{L.ports[0]?.postMessage(Be)}},ke=g.listeners[C.event.eventName](ee);K.set(C.event.id,ke)}else if(C.type==="felt.removeListener")K.get(C.id)?.(),K.delete(C.id);else try{let ee=g.methods[C.type],ke=await ee(C.params);L.ports[0]?.postMessage(ke)}catch(ee){L.ports[0]?.postMessage(Ca(ee))}}return a.addEventListener("message",D),()=>{a.removeEventListener("message",D)}}var Ea={methods:pt.map(a=>a.methods??[]).flat(),listeners:pt.map(a=>a.listeners??[]).flat()},$o=d.z.discriminatedUnion("eventName",[d.z.strictObject({eventName:d.z.literal("")}),d.z.strictObject({eventName:d.z.literal("onGenericEvent"),id:d.z.string(),options:d.z.object({id:d.z.string()})}),...Ea.listeners]),Xo=d.z.strictObject({type:d.z.literal("felt.addListener"),event:$o}),Yo=d.z.strictObject({type:d.z.literal("felt.removeListener"),id:d.z.string()}),er=d.z.strictObject({type:d.z.literal("felt.ready")}),Ia=d.z.discriminatedUnion("type",[er,Xo,Yo,...Ea.methods]),tr=d.z.object({type:d.z.enum(Ia.options.map(a=>a.shape.type.value))});function Ca(a){return{__error__:ar(a)}}function ar(a){return a instanceof Error?a.message:typeof a=="object"&&a!==null&&"message"in a?String(a.message):typeof a=="string"?a:"Unknown error"}0&&(module.exports={createMessageHandler});