@feltmaps/js-sdk 1.7.0-next.7 → 1.7.0-next.9

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