2023-06-07 10:06:30 -05:00
|
|
|
// eslint-disable-next-line no-unused-vars
|
2023-06-01 18:28:22 +02:00
|
|
|
import React from 'react'
|
|
|
|
import { withinPartBounds } from './utils.mjs'
|
|
|
|
|
2023-06-07 10:06:30 -05:00
|
|
|
export const Point = ({ stackName, partName, pointName, part, point, components, t }) => {
|
2023-06-01 18:28:22 +02:00
|
|
|
// Don't include points outside the part bounding box
|
|
|
|
if (!withinPartBounds(point, part)) return null
|
|
|
|
|
|
|
|
// Get potentially swizzled components
|
|
|
|
const { Circle, Text } = components
|
|
|
|
|
|
|
|
return point.attributes ? (
|
|
|
|
<>
|
|
|
|
{point.attributes.text ? <Text {...{ point, pointName, partName, stackName, t }} /> : null}
|
|
|
|
{point.attributes.circle ? <Circle point={point} /> : null}
|
|
|
|
</>
|
|
|
|
) : null
|
|
|
|
}
|