- Removed the use of deleteTool and deletePointOrLine states, replacing them with a unified toolMode state.
- Updated Point, Arrows, PointsCreator, TriggerConnector, and other components to utilize toolMode for determining delete actions.
- Cleaned up unused imports and commented-out code related to deleteTool.
- Enhanced event handling in selectionControls and trigger connections to respond to toolMode changes.
- Adjusted color and interaction logic based on the current toolMode.
- Created a new store for selected products using Zustand and immer for state management.
- Introduced `useMainProduct` and `useComparisonProduct` hooks to manage main and comparison products.
- Implemented `ComparisonScene` and `ComparisonSceneProvider` components to handle product comparisons.
- Updated `MainScene` to allow selection of main products with a dropdown.
- Enhanced styles for comparison layout and product selection UI.
- Established a context for product management to streamline state access across components.
- Updated import paths for `upsertProductOrEventApi`, `deleteEventDataApi`, `deleteProductApi`, `getProductApi`, `getAllProductsApi`, and `renameProductApi` to point to the new `products` directory.
- Removed old API files for `UpsertProductOrEventApi`, `deleteEventDataApi`, `deleteProductApi`, `getProductApi`, `getAllProductsApi`, and `renameProductApi`.
- Introduced new implementations for the above APIs in the `products` directory.
- Added `MaterialCollisionDetector` component to handle material collision detection using a web worker.
- Updated various components to utilize the new API structure and ensure proper functionality.