@feltmaps/js-sdk 1.7.0-next.4 → 1.7.0-next.5

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