@expofp/floorplan
Version:
Interactive floor plan library for expos and events
2 lines (1 loc) • 668 B
JavaScript
import{CURRENT_POSITION_POINT_ID as I}from"./positionView";function p(n,c){return!c||!n.bounds&&n.id!==I}export function createEndpointView({renderer:n,iconProvider:c,floorContext:e,layer:i}){return{place(s,o,t,l){if(!t.length)return;const a=e.isLayerVisible(s.layer),d=e.isLayerVisible(o.layer),u=t[t.length-1],r=t[0],y=s.id===I&&l;n.setIcon("source",{canvas:c.getIcon(y?"source_inactive":"source").canvas,layer:i,x:u.x,y:u.y,hidden:p(s,a),dimmed:!a,cardinalSnap:!0}),n.setIcon("destination",{canvas:c.getIcon("destination").canvas,layer:i,x:r.x,y:r.y,hidden:!d||!o.bounds,dimmed:!d,cardinalSnap:!0})},hide(){n.setIcon("source",null),n.setIcon("destination",null)}}}