16 Commits

Author SHA1 Message Date
david.nguyen 46af2dd229 Remove dist, node_modules, and build artifacts from version control
This commit cleans up the repository by removing files that should be ignored according to .gitignore:
- Removed entire node_modules/ directory
- Removed dist and build artifacts (fesm2022/, lib/, index.d.ts)
- Removed IDE files (.idea/, .editorconfig)
- Removed .DS_Store files
- Removed .npmignore (not needed for source repo)

Kept .vscode/ files (extensions.json, launch.json, tasks.json) as they are explicitly allowed in .gitignore.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 16:02:08 -05:00
david.nguyen 7551c0f26c Merge branch 'feature/main'
# Conflicts:
#	package-lock.json
#	package.json
2025-11-05 15:59:22 -05:00
david.nguyen 824b41656a Add isPointInPolygon utility function for polygon containment checks
Implements ray-casting algorithm to determine if a point lies within a polygon boundary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: David Nguyen <david.nguyen@goutezplanb.com>
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-04 11:16:08 -05:00
david.nguyen 5205ebff6c Refactor map adapters for improved marker and routing management
- Remove deliveryCheckMarker in favor of ID-tracked markers across all adapters
- Add polygon tracking by zone ID in LeafletAdapter for better zone lifecycle management
- Refactor LibreAdapter routing to use MapLibre GL Directions with proper cleanup
- Improve marker recreation logic and click handler persistence in LibreAdapter
- Update updateMarkerPopup interface to accept HTMLElement for type safety
- Add routing profile support (driving/walking/cycling) to RouteOptions
- Enhance destroy methods to properly clean up all resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: David Nguyen <david.nguyen@goutezplanb.com>
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 17:21:51 -05:00
david.nguyen 30cc53f9ad Add custom icon support and routing functionality to map adapters
- Add icon parameter to IMapAdapter.addMarker() supporting DivIcon (Leaflet) and HTMLElement (MapLibre)
- Implement routing with leaflet-routing-machine and @maplibre/maplibre-gl-directions
- Add marker management methods: hasMarker, updateMarkerIcon, updateMarkerPopup, addMarkerClickHandler
- Add route management methods: addRoute, updateRoute, removeRoute, removeAllRoutes
- Update MapFacade to proxy all new marker and route management methods
- Add RouteOptions interface with customizable line styles and waypoint options

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: David Nguyen <david.nguyen@goutezplanb.com>
2025-10-30 23:01:58 -04:00
david.nguyen 2cc110adc3 Update Zone interface id type from string to number
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: David Nguyen <david.nguyen@goutezplanb.com>
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-29 11:30:14 -04:00
david.nguyen ef665f7bf1 Refactor Zone interface to use separate shipping schedule fields
Replace single deliverySchedule field with shippingScheduleStart and shippingScheduleEnd for more granular control over delivery time windows. Update both Leaflet and Libre adapters to display the new fields.

Co-Authored-By: David Nguyen <david.nguyen@goutezplanb.com>

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-28 17:13:13 -04:00
david.nguyen 46e6f7f44a Make IMapAdapter generic and add zone/marker management
This update adds support for adapter-specific marker types and implements comprehensive zone and marker management functionality:

- Make IMapAdapter generic with TMarker type parameter to support different marker implementations
- Fix Leaflet popup implementation to use Popup class instead of invisible markers
- Add marker tracking with getMarker() and getAllMarkers() methods
- Add zone management with addZone(), updateZone(), openZonePopup(), and closePopup()
- Implement marker addition/removal with ID-based tracking
- Update MapFacade to handle generic marker types
- Bump version to 0.2.2

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: davidnguyen <david.nguyen@goutezplanb.com>
2025-10-27 21:37:59 -04:00
mathias 00cc9eab09 real initial commit 2025-10-27 13:39:29 -04:00
david.nguyen b285feb132 update to 0.2.2 2025-10-27 09:20:22 -04:00
david.nguyen 9f573b9371 chore: bump version to 0.2.1 2025-10-27 09:13:44 -04:00
david.nguyen e97016d02b Merge pull request 'feature/zone' (#1) from feature/zone into main
Reviewed-on: #1
2025-10-22 13:26:02 -04:00
david.nguyen 943c4fc4ae add zone, add popup address, add popup zone, add remove marker, add close popup 2025-10-22 13:24:37 -04:00
david.nguyen 849a6f07a0 add zone, add popup address, add popup zone, add remove marker, add close popup 2025-10-07 16:25:24 -04:00
david.nguyen db3ec6cddd add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
mathias 67c94197e1 initial commit 2025-09-04 13:47:54 -04:00