@feltmaps/js-sdk 1.5.0-next.2 → 1.5.0-next.3

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