@feltmaps/js-sdk 1.5.0-next.1 → 1.5.0-next.11
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/client.cjs +1 -1
- package/dist/client.d.cts +576 -24
- package/dist/client.d.ts +576 -24
- package/dist/client.js +1 -1
- package/dist/handler.cjs +1 -1
- package/dist/handler.d.cts +2119 -127
- package/dist/handler.d.ts +2119 -127
- package/dist/handler.js +1 -1
- package/dist/types-CI-GVo6N.d.cts +3555 -0
- package/dist/types-CI-GVo6N.d.ts +3555 -0
- package/handler.d.ts +2119 -127
- package/handler.js +1 -1
- package/package.json +9 -7
- package/types-CI-GVo6N.d.ts +3555 -0
- package/dist/types-CVxZMwC_.d.cts +0 -1203
- package/dist/types-CVxZMwC_.d.ts +0 -1203
- package/types-CVxZMwC_.d.ts +0 -1203
package/dist/handler.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as l}from"zod";import{z as f}from"zod";import{z as y}from"zod";function t(n,h){return y.strictObject({type:y.literal(n),params:h})}function d(n,h){return y.strictObject({eventName:y.literal(n),id:y.string(),options:h})}function p(n){return y.strictObject({eventName:y.literal(n),id:y.string()})}import{z as m}from"zod";var z=m.number(),F=m.number(),L=m.object({latitude:F,longitude:z}),j=m.number().min(1).max(23),x=m.tuple([z,F,z,F]),u=m.object({show:m.array(m.string()).optional(),hide:m.array(m.string()).optional()});import{z as S}from"zod";var N=S.object({ids:S.array(S.string()).optional()}),R=S.object({ids:S.array(S.string()).optional()});var ce=t("getElement",f.string()),ye=t("getElementGeometry",f.string()),ge=t("getElements",N.optional()),de=t("getElementGroup",f.string()),ue=t("getElementGroups",R.optional()),fe=t("setElementGroupVisibility",u),he=d("onElementChange",f.object({id:f.string()})),Se=d("onElementGroupChange",f.object({id:f.string()})),U={methods:[ce,ye,ge,de,ue,fe],listeners:[he,Se]};var be=p("onPointerClick"),Me=p("onPointerMove"),B={methods:null,listeners:[be,Me]};import{z as a}from"zod";import{z as o}from"zod";var Le=o.enum(["in","ni"]),xe=o.enum(["lt","gt","le","ge","eq","ne","cn","nc","is","isnt"]),Ut=o.enum(["and","or"]),Z=o.union([o.number(),o.string(),o.boolean(),o.null()]),A=o.string().or(o.null()),Ge=o.tuple([A,Le,o.array(Z).or(o.null())]),Ie=o.tuple([A,xe,Z]),E=o.union([Ge,Ie]),v=o.tuple([o.lazy(()=>o.union([v,E,o.null(),o.boolean()])),o.enum(["and","or"]),o.lazy(()=>o.union([v,E,o.null(),o.boolean()]))]),q=o.union([v,E,o.null(),o.boolean()]);import{z as r}from"zod";var qt=r.enum(["processing","completed","failed","incomplete"]),H=r.object({ids:r.array(r.string()).optional()}),W=r.object({ids:r.array(r.string()).optional()}),b=r.object({id:r.string(),layerId:r.string()}),K=r.object({ids:b.array().optional(),layerIds:r.string().array().optional()}),_=r.object({layerIds:r.array(r.string()).optional(),areaQuery:r.union([r.object({coordinates:L}),r.object({boundary:x})]).optional()});var Te=t("getLayer",a.string()),Ce=t("getLayers",H.optional()),ze=t("setLayerVisibility",u),Fe=d("onLayerChange",a.object({id:a.string()})),Ee=t("setLayerStyle",a.object({id:a.string(),style:a.object({}).passthrough()})),ve=t("setLayerLegendVisibility",u),we=t("getLayerGroup",a.string()),Pe=t("getLayerGroups",W.optional()),Ve=t("setLayerGroupVisibility",u),ke=t("setLayerGroupLegendVisibility",u),Oe=d("onLayerGroupChange",a.object({id:a.string()})),je=t("getLegendItem",b),Ne=t("getLegendItems",K.optional()),Re=d("onLegendItemChange",b),Ue=t("setLegendItemVisibility",a.object({show:b.array().optional(),hide:b.array().optional()})),Be=t("getLayerFilters",a.string()),Ze=t("setLayerFilters",a.object({layerId:a.string(),filters:q,note:a.string().optional()})),Ae=t("getRenderedFeatures",_.optional()),Q={methods:[Te,Ce,ze,Ee,ve,we,Pe,Ve,ke,je,Ne,Ue,Be,Ze,Ae],listeners:[Fe,Oe,Re]};import{z as G}from"zod";import{z as g}from"zod";var D=g.object({id:g.string().or(g.number()),layerId:g.string(),showPopup:g.boolean().optional(),fitViewport:g.boolean().or(g.object({maxZoom:g.number()})).optional()});var qe=t("getSelection",G.undefined()),He=p("onSelectionChange"),We=t("selectFeature",D),Ke=t("clearSelection",G.object({features:G.boolean().optional(),elements:G.boolean().optional()}).optional()),$={methods:[qe,We,Ke],listeners:[He]};import{z as ot}from"zod";import{z as e}from"zod";var J=["pin","line","route","polygon","circle","marker","highlighter","text","note"],X=e.enum([...J,"link"]),Y=e.enum(J),_e=e.object({color:e.string(),symbol:e.string(),frame:e.enum(["frame-circle","frame-square"]).nullable()}),Qe=e.object({color:e.string(),strokeOpacity:e.number(),strokeWidth:e.number(),strokeStyle:e.enum(["solid","dashed","dotted"]),distanceMarker:e.boolean()}),De=e.object({color:e.string(),routingMode:e.enum(["driving","cycling","walking","flying"]),strokeOpacity:e.number(),strokeWidth:e.number(),strokeStyle:e.enum(["solid","dashed","dotted"]),distanceMarker:e.boolean(),endCaps:e.boolean()}),$e=e.object({color:e.string(),fillOpacity:e.number().min(0).max(1),strokeOpacity:e.number().min(0).max(1),strokeWidth:e.number().min(0),strokeStyle:e.enum(["solid","dashed","dotted"]),areaMarker:e.boolean()}),Je=e.object({color:e.string(),fillOpacity:e.number().min(0).max(1),strokeOpacity:e.number().min(0).max(1),strokeWidth:e.number().min(0),strokeStyle:e.enum(["solid","dashed","dotted"]),radiusMarker:e.boolean()}),Xe=e.object({color:e.string(),opacity:e.number().min(0).max(1),size:e.number().min(0).max(100)}),Ye=e.object({color:e.string(),opacity:e.number().min(0).max(1),size:e.number().min(0).max(200)}),et=e.object({color:e.string(),align:e.enum(["left","center","right"]),style:e.enum(["italic","light","regular","caps"])}),tt=e.object({color:e.string(),align:e.enum(["left","center","right"]),style:e.enum(["italic","light","regular","caps"])}),ee=e.discriminatedUnion("tool",[_e.partial().extend({tool:e.literal("pin")}),Qe.partial().extend({tool:e.literal("line")}),De.partial().extend({tool:e.literal("route")}),$e.partial().extend({tool:e.literal("polygon")}),Je.partial().extend({tool:e.literal("circle")}),Xe.partial().extend({tool:e.literal("marker")}),Ye.partial().extend({tool:e.literal("highlighter")}),et.partial().extend({tool:e.literal("text")}),tt.partial().extend({tool:e.literal("note")})]);var nt=t("setTool",X.nullable()),rt=t("getTool",ot.undefined()),at=p("onToolChange"),it=t("setToolSettings",ee),st=t("getToolSettings",Y),lt=p("onToolSettingsChange"),te={methods:[nt,rt,it,st],listeners:[at,lt]};import{z as s}from"zod";var oe=s.object({showLegend:s.boolean().optional(),cooperativeGestures:s.boolean().optional(),fullScreenButton:s.boolean().optional(),geolocation:s.boolean().optional(),zoomControls:s.boolean().optional(),scaleBar:s.boolean().optional()}),ne=s.object({featureSelectPanel:s.boolean().optional(),featureHoverPanel:s.boolean().optional(),elementSelectPanel:s.boolean().optional(),linkClickOpen:s.boolean().optional(),imageLightboxOpen:s.boolean().optional()});var pt=t("updateUiControls",oe),mt=t("setOnMapInteractionsUi",ne),re={methods:[pt,mt],listeners:null};import{z as ct}from"zod";import{z as w}from"zod";var ae=w.object({center:L,zoom:j}),ie=w.object({center:ae.shape.center.optional(),zoom:ae.shape.zoom.optional()}),se=w.object({bounds:x});var yt=t("getViewport",ct.undefined()),gt=t("setViewport",ie),dt=t("fitViewportToBounds",se),ut=p("onViewportMove"),ft=p("onViewportMoveEnd"),ht=p("onMapIdle"),le={methods:[gt,yt,dt],listeners:[ut,ft,ht]};var P=[re,le,Q,U,$,B,te];function Po(n,h,V){let I=new Map;async function k(c){if(!Gt.safeParse(c.data).success){V?.onUnknownMessage?.(c.data);return}let O=me.safeParse(c.data);if(!O.success){V?.onInvalidMessage?.(c.data);return}let{data:i}=O;if(i.type==="felt.ready")c.ports[0]?.postMessage(!0);else if(i.type==="felt.addListener"){if(i.event.eventName==="")throw new Error("felt.addListener eventName cannot be empty");let M="options"in i.event?{options:"options"in i.event?i.event.options:void 0,handler:C=>{c.ports[0]?.postMessage(C)}}:{handler:C=>{c.ports[0]?.postMessage(C)}},T=h.listeners[i.event.eventName](M);I.set(i.event.id,T)}else if(i.type==="felt.removeListener")I.get(i.id)?.(),I.delete(i.id);else try{let M=h.methods[i.type],T=await M(i.params);c.ports[0]?.postMessage(T)}catch(M){c.ports[0]?.postMessage({__error__:St(M)})}}return n.addEventListener("message",k),()=>{n.removeEventListener("message",k)}}function St(n){return n instanceof Error?n.message:typeof n=="object"&&n!==null&&"message"in n?String(n.message):typeof n=="string"?n:"Unknown error"}var pe={methods:P.map(n=>n.methods??[]).flat(),listeners:P.map(n=>n.listeners??[]).flat()},bt=l.discriminatedUnion("eventName",[l.strictObject({eventName:l.literal("")}),...pe.listeners]),Mt=l.strictObject({type:l.literal("felt.addListener"),event:bt}),Lt=l.strictObject({type:l.literal("felt.removeListener"),id:l.string()}),xt=l.strictObject({type:l.literal("felt.ready")}),me=l.discriminatedUnion("type",[xt,Mt,Lt,...pe.methods]),Gt=l.object({type:l.enum(me.options.map(n=>n.shape.type.value))});export{Po as createMessageHandler};
|
|
1
|
+
import{z as g}from"zod";import{z as d}from"zod";import{z as b}from"zod";function t(i,T){return b.strictObject({type:b.literal(i),params:T})}function h(i,T){return b.strictObject({eventName:b.literal(i),id:b.string(),options:T})}function l(i){return b.strictObject({eventName:b.literal(i),id:b.string()})}import{z as n}from"zod";var F=n.number(),k=n.number(),v=n.object({latitude:k,longitude:F}),M=n.tuple([F,k]),pe=n.object({type:n.literal("Point"),coordinates:M}),ce=n.object({type:n.literal("Polygon"),coordinates:n.array(n.array(M))}),et=n.object({type:n.literal("LineString"),coordinates:n.array(M)}),L=n.object({type:n.literal("MultiLineString"),coordinates:n.array(et.shape.coordinates)}),ge=n.number().min(1).max(23),G=n.tuple([F,k,F,k]),I=n.object({show:n.array(n.string()).optional(),hide:n.array(n.string()).optional()}),tt=n.enum(["asc","desc"]),ye=n.object({attribute:n.string(),direction:tt});import{z as e}from"zod";var y=e.object({id:e.string(),groupId:e.string().nullable(),color:e.string(),name:e.union([e.string(),e.null()]),description:e.union([e.string(),e.null()]),attributes:e.record(e.string(),e.unknown()),interaction:e.enum(["default","locked"]).optional()}),w=e.object({imageUrl:e.string().nullable()}),H=e.object({strokeOpacity:e.number(),strokeWidth:e.number(),strokeStyle:e.enum(["solid","dashed","dotted"])}),ot=e.enum(["meter","kilometer","foot","mile"]),de=y.extend(w.shape).extend({type:e.literal("Place"),coordinates:pe.shape.coordinates,symbol:e.string(),frame:e.enum(["frame-circle","frame-square"]).nullable(),hideLabel:e.boolean()}),B=y.extend(w.shape).extend(H.shape).extend({type:e.literal("Path"),coordinates:L.shape.coordinates,distanceMarker:e.boolean(),endCaps:e.boolean(),routingMode:e.enum(["driving","cycling","walking","flying"]).nullable()}),D=y.extend(w.shape).extend(H.shape).extend({type:e.literal("Polygon"),coordinates:L.shape.coordinates,fillOpacity:e.number().min(0).max(1),areaMarker:e.boolean()}),ue=y.extend(w.shape).extend(H.shape).extend({type:e.literal("Circle"),coordinates:M,radius:e.number(),radiusDisplayAngle:e.number(),radiusDisplayUnit:ot.nullable(),fillOpacity:e.number().min(0).max(1),radiusMarker:e.boolean()}),Z=y.extend({type:e.literal("Marker"),coordinates:L.shape.coordinates,opacity:e.number().min(0).max(1),size:e.number().min(0).max(100),zoom:e.number().min(0).max(23)}),J=y.extend({type:e.literal("Highlighter"),coordinates:L.shape.coordinates,opacity:e.number().min(0).max(1)}),he=e.object({position:M,rotation:e.number(),scale:e.number(),zoom:e.number().min(0).max(23),coordinates:L.shape.coordinates}),fe=e.object({text:e.string(),align:e.enum(["left","center","right"]),style:e.enum(["italic","light","regular","caps"]),name:e.string()}),W=y.extend(he.shape).extend(fe.shape).extend({type:e.literal("Text")}),_=y.extend(he.shape).extend(fe.shape).extend({type:e.literal("Note"),widthScale:e.number().min(0)}),Q=y.extend({type:e.literal("Image"),coordinates:L.shape.coordinates,imageUrl:e.string(),opacity:e.number().min(0).max(1)}).omit({color:!0}),rt=y.extend({type:e.literal("Link"),coordinates:L.shape.coordinates,url:e.string()}),f={type:!0,coordinates:!0},S={id:!0},$=de.partial().required(f).omit(S),V=B.partial().required(f).omit(S),K=D.partial().required(f).omit(S),X=ue.partial().required(f).required({radius:!0}).omit(S),Y=Z.partial().required(f).omit(S),ee=J.partial().required(f).omit(S),te=W.partial().required(f).required({text:!0}).omit(S).omit({coordinates:!0,name:!0}),oe=_.partial().required(f).required({text:!0}).omit(S).omit({coordinates:!0,name:!0}),nt=Q.partial().required(f).required({imageUrl:!0}).omit(S),Se=e.discriminatedUnion("type",[$,V,K,X,Y,ee,nt,te,oe]);var rr=B.omit({coordinates:!0}),nr=D.omit({coordinates:!0});var ar=Z.omit({coordinates:!0}),ir=J.omit({coordinates:!0}),sr=W.omit({coordinates:!0}),lr=_.omit({coordinates:!0}),mr=Q.omit({coordinates:!0}),pr=rt.omit({coordinates:!0}),x={type:!0,id:!0},at=de.partial().required(x),it=B.partial().required(x),st=D.partial().required(x),lt=ue.partial().required(x),mt=Z.partial().required(x),pt=J.partial().required(x),ct=W.partial().required(x).omit({coordinates:!0,name:!0}),gt=_.partial().required(x).omit({coordinates:!0,name:!0}),yt=Q.partial().required(x),xe=e.discriminatedUnion("type",[at,it,st,lt,mt,pt,ct,gt,yt]),be=e.object({ids:e.array(e.string()).optional()}),Me=e.object({ids:e.array(e.string()).optional()});var dt=t("getElement",d.string()),ut=t("getElementGeometry",d.string()),ht=t("getElements",be.optional()),ft=t("getElementGroup",d.string()),St=t("getElementGroups",Me.optional()),xt=t("setElementGroupVisibility",I),bt=h("onElementChange",d.object({id:d.string()})),Mt=l("onElementCreate"),Lt=l("onElementCreateEnd"),Ct=h("onElementDelete",d.object({id:d.string()})),Gt=h("onElementGroupChange",d.object({id:d.string()})),It=t("createElement",Se),Et=t("updateElement",xe),Tt=t("deleteElement",d.string()),Le={methods:[dt,ut,ht,ft,St,xt,It,Et,Tt],listeners:[bt,Mt,Lt,Ct,Gt]};var zt=l("onPointerClick"),Pt=l("onPointerMove"),Ce={methods:null,listeners:[zt,Pt]};import{z as a}from"zod";import{z as r}from"zod";var Ft=r.enum(["in","ni"]),kt=r.enum(["lt","gt","le","ge","eq","ne","cn","nc","is","isnt"]),br=r.enum(["and","or"]),Ge=r.union([r.number(),r.string(),r.boolean(),r.null()]),Ie=r.string().or(r.null()),vt=r.tuple([Ie,Ft,r.array(Ge).or(r.null())]),wt=r.tuple([Ie,kt,Ge]),re=r.union([vt,wt]),ne=r.tuple([r.lazy(()=>r.union([ne,re,r.null(),r.boolean()])),r.enum(["and","or"]),r.lazy(()=>r.union([ne,re,r.null(),r.boolean()]))]),E=r.union([ne,re,r.null(),r.boolean()]);import{z as o}from"zod";var Ee=o.enum(["avg","max","min","sum","median"]),Vt=o.object({method:Ee,attribute:o.string()}),Ot=o.object({methods:o.array(o.union([Ee,o.literal("count")])),attribute:o.string().optional()}),O=o.union([G,ce,o.array(M)]),Te=o.object({boundary:O.optional(),filters:E.optional(),aggregation:Vt.optional()}),ze=o.object({layerId:o.string(),attribute:o.string(),limit:o.number().optional(),boundary:O.optional(),filters:E.optional(),values:Te.optional()}),Ir=o.object({key:o.union([o.number(),o.string(),o.boolean()]),value:o.number().nullable()}),Ut=o.object({type:o.literal("equal-intervals"),count:o.number()}),Nt=o.object({type:o.literal("time-interval"),interval:o.enum(["hour","day","week","month","year"])}),Pe=o.object({layerId:o.string(),attribute:o.string(),steps:o.union([Ut,Nt,o.array(o.number())]),boundary:O.optional(),filters:E.optional(),values:Te.optional()}),Er=o.object({min:o.number(),max:o.number(),value:o.number()}),Fe=o.object({layerId:o.string(),boundary:O.optional(),filters:E.optional(),aggregation:Ot});import{z as s}from"zod";var Fr=s.enum(["processing","completed","failed","incomplete"]),ke=s.object({ids:s.array(s.string()).optional()}),ve=s.object({ids:s.array(s.string()).optional()}),z=s.object({id:s.string(),layerId:s.string()}),we=s.object({ids:z.array().optional(),layerIds:s.string().array().optional()}),Ve=s.object({layerIds:s.array(s.string()).optional(),areaQuery:s.union([s.object({coordinates:v}),s.object({boundary:G})]).optional()});var Rt=t("getLayer",a.string()),jt=t("getLayers",ke.optional()),At=t("setLayerVisibility",I),qt=h("onLayerChange",a.object({id:a.string()})),Ht=t("setLayerStyle",a.object({id:a.string(),style:a.object({}).passthrough()})),Bt=t("setLayerLegendVisibility",I),Dt=t("getLayerGroup",a.string()),Zt=t("getLayerGroups",ve.optional()),Jt=t("setLayerGroupVisibility",I),Wt=t("setLayerGroupLegendVisibility",I),_t=h("onLayerGroupChange",a.object({id:a.string()})),Qt=t("getLegendItem",z),$t=t("getLegendItems",we.optional()),Kt=h("onLegendItemChange",z),Xt=t("setLegendItemVisibility",a.object({show:z.array().optional(),hide:z.array().optional()})),Yt=t("getLayerFilters",a.string()),eo=t("setLayerFilters",a.object({layerId:a.string(),filters:E,note:a.string().optional()})),to=h("onLayerFiltersChange",a.object({layerId:a.string()})),oo=t("getRenderedFeatures",Ve.optional()),ro=t("getFeature",a.object({id:a.string().or(a.number()),layerId:a.string()})),no=t("getGeoJsonFeature",a.object({id:a.string().or(a.number()),layerId:a.string()})),ao=t("getCategoryData",ze),io=t("getHistogramData",Pe),so=t("getAggregates",Fe),lo=t("getLayerSchema",a.string()),Oe={methods:[Rt,jt,At,Ht,Bt,Dt,Zt,Jt,Wt,Qt,$t,Xt,Yt,eo,oo,ro,no,ao,io,so,lo],listeners:[qt,_t,Kt,to]};import{z as mo}from"zod";var po=t("getMapDetails",mo.undefined()),Ue={methods:[po],listeners:[]};import{z as U}from"zod";import{z as C}from"zod";var Ne=C.object({id:C.string().or(C.number()),layerId:C.string(),showPopup:C.boolean().optional(),fitViewport:C.boolean().or(C.object({maxZoom:C.number()})).optional()});var co=t("getSelection",U.undefined()),go=l("onSelectionChange"),yo=t("selectFeature",Ne),uo=t("clearSelection",U.object({features:U.boolean().optional(),elements:U.boolean().optional()}).optional()),Re={methods:[co,yo,uo],listeners:[go]};import{z as Io}from"zod";import{z as m}from"zod";var je=["pin","line","route","polygon","circle","marker","highlighter","text","note"],Ae=m.enum([...je,"link"]),qe=m.enum(je),ho=$.pick({color:!0,symbol:!0,frame:!0}).extend({afterCreation:m.enum(["enter name","add another","select"])}).required(),fo=V.pick({color:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0}).required(),So=V.pick({color:!0,routingMode:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,distanceMarker:!0,endCaps:!0}).required(),xo=K.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,areaMarker:!0}).required(),bo=X.pick({color:!0,fillOpacity:!0,strokeOpacity:!0,strokeWidth:!0,strokeStyle:!0,radiusMarker:!0}).required(),Mo=Y.pick({color:!0,opacity:!0,size:!0}).required(),Lo=ee.pick({color:!0,opacity:!0}).extend({size:m.number().min(0).max(200)}).required(),Co=te.pick({color:!0,align:!0,style:!0}).required(),Go=oe.pick({color:!0,align:!0,style:!0}).required(),He=m.discriminatedUnion("tool",[ho.partial().extend({tool:m.literal("pin")}),fo.partial().extend({tool:m.literal("line")}),So.partial().extend({tool:m.literal("route")}),xo.partial().extend({tool:m.literal("polygon")}),bo.partial().extend({tool:m.literal("circle")}),Mo.partial().extend({tool:m.literal("marker")}),Lo.partial().extend({tool:m.literal("highlighter")}),Co.partial().extend({tool:m.literal("text")}),Go.partial().extend({tool:m.literal("note")})]);var Eo=t("setTool",Ae.nullable()),To=t("getTool",Io.undefined()),zo=l("onToolChange"),Po=t("setToolSettings",He),Fo=t("getToolSettings",qe),ko=l("onToolSettingsChange"),Be={methods:[Eo,To,Po,Fo],listeners:[zo,ko]};import{z as ae}from"zod";import{z as c}from"zod";var De=c.object({showLegend:c.boolean().optional(),cooperativeGestures:c.boolean().optional(),fullScreenButton:c.boolean().optional(),geolocation:c.boolean().optional(),zoomControls:c.boolean().optional(),scaleBar:c.boolean().optional()}),Ze=c.object({featureSelectPanel:c.boolean().optional(),featureHoverPanel:c.boolean().optional(),elementSelectPanel:c.boolean().optional(),linkClickOpen:c.boolean().optional(),imageLightboxOpen:c.boolean().optional()});var vo=t("updateUiControls",De),wo=t("setOnMapInteractionsUi",Ze),Vo=t("showLayerDataTable",ae.object({layerId:ae.string(),sorting:ye.optional()}).optional()),Oo=t("hideLayerDataTable",ae.undefined()),Je={methods:[vo,wo,Vo,Oo],listeners:null};import{z as $e}from"zod";import{z as R}from"zod";var N=R.object({center:v,zoom:ge}),We=R.object({center:N.shape.center.optional(),zoom:N.shape.zoom.optional()}),_e=R.object({minZoom:N.shape.zoom.nullish(),maxZoom:N.shape.zoom.nullish(),bounds:G.nullish()}).nullable(),Qe=R.object({bounds:G});var Uo=t("getViewport",$e.undefined()),No=t("setViewport",We),Ro=t("getViewportConstraints",$e.undefined()),jo=t("setViewportConstraints",_e),Ao=t("fitViewportToBounds",Qe),qo=l("onViewportMove"),Ho=l("onViewportMoveEnd"),Bo=l("onMapIdle"),Ke={methods:[No,Uo,Ro,jo,Ao],listeners:[qo,Ho,Bo]};var ie=[Je,Ke,Oe,Le,Re,Ce,Be,Ue];function Tn(i,T,se){let j=new Map;async function le(u){if(!Qo.safeParse(u.data).success){se?.onUnknownMessage?.(u.data);return}let me=Ye.safeParse(u.data);if(!me.success){se?.onInvalidMessage?.(u.data);return}let{data:p}=me;if(p.type==="felt.ready")u.ports[0]?.postMessage(!0);else if(p.type==="felt.addListener"){if(p.event.eventName==="")throw new Error("felt.addListener eventName cannot be empty");let P="options"in p.event?{options:"options"in p.event?p.event.options:void 0,handler:q=>{u.ports[0]?.postMessage(q)}}:{handler:q=>{u.ports[0]?.postMessage(q)}},A=T.listeners[p.event.eventName](P);j.set(p.event.id,A)}else if(p.type==="felt.removeListener")j.get(p.id)?.(),j.delete(p.id);else try{let P=T.methods[p.type],A=await P(p.params);u.ports[0]?.postMessage(A)}catch(P){u.ports[0]?.postMessage({__error__:Do(P)})}}return i.addEventListener("message",le),()=>{i.removeEventListener("message",le)}}function Do(i){return i instanceof Error?i.message:typeof i=="object"&&i!==null&&"message"in i?String(i.message):typeof i=="string"?i:"Unknown error"}var Xe={methods:ie.map(i=>i.methods??[]).flat(),listeners:ie.map(i=>i.listeners??[]).flat()},Zo=g.discriminatedUnion("eventName",[g.strictObject({eventName:g.literal("")}),...Xe.listeners]),Jo=g.strictObject({type:g.literal("felt.addListener"),event:Zo}),Wo=g.strictObject({type:g.literal("felt.removeListener"),id:g.string()}),_o=g.strictObject({type:g.literal("felt.ready")}),Ye=g.discriminatedUnion("type",[_o,Jo,Wo,...Xe.methods]),Qo=g.object({type:g.enum(Ye.options.map(i=>i.shape.type.value))});export{Tn as createMessageHandler};
|