## 1. Enhance TrendLine Plugin - [x] 1.1 Add `hitTest(x, y)` method to `TrendLine` class — calculate perpendicular distance from click point to line segment in pixel coordinates, return `PrimitiveHoveredItem` with annotation ID if within 10px tolerance - [x] 1.2 Add `setSelected(isSelected)` method and selection state to `TrendLine` — when selected, renderer draws thicker line and circular endpoint handles (radius 6px, white fill, colored stroke) - [x] 1.3 Add `attached()/detached()` lifecycle methods to `TrendLine` to store `SeriesAttachedParameter` reference (needed for hitTest coordinate conversion) - [x] 1.4 Add preview line support — dashed stroke style and reduced opacity when an `isPreview` option is set ## 2. Create RectangleDrawingPrimitive Plugin - [x] 2.1 Create `src/plugins/rectangle-drawing.ts` implementing `ISeriesPrimitive