Floorplan interface component
npm install @density/ui-floorplanThis component can be used to render a floorplan, with optionally clickable shapes within it. The
floorplan can be panned and zoomed both on normal and touch devices. As an option, clicking on a
shape allows a popup to be shown around it and if a flag is set for it to be moved.
width: Number - width of floorplan control in pixelsheight: Number - height of floorplan control in pixelsshapes: [Shape] - an array of shapes to render on the floorplan. See below for a definition ofShape. requiredimage: String - a url to an image that will be rendered as the floorplan's background image.imageRotation: Number - an optional number of degrees to rotate the floorplan.cursorTagText: String - Text to display in the cursor tag that is visible when no shape isClick to add a doorway.onCreateShape: (Number, Number) => any - Called when the user clicks the background of theonShapeMovement: (String, Number, Number) - A shape that has its allowMovement flag enabledshapes prop in order for shapeonShapeClick: (String) => any - Called when a shape has been clicked. The id of the clickedid: String - id of the shape.shape: ReactElement - "shape" to render on the floorplan. Passed the contents of this object inshape prop along with a selected and isMoving flag, and expected to render a svg groupx: Number - X coordinate of the shape.y: Number - Y coordinate of the shape.width: Number - Width of the shape, used to calculate the shape's center.height: Number - Height of the shape, used to calculate the shape's center.allowMovement: Boolean - can this shape be moved when selected/popup: ReactElement - a component to render in the popup that is rendered when a shape is