@feltmaps/js-sdk 1.5.0-next.9 → 1.5.1

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