@feltmaps/js-sdk 1.7.0-next.14 → 1.7.0-next.16

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