@feltmaps/js-sdk 1.5.0-next.16 → 1.5.0-next.18

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