Leaflet cost validated map placement with bounds
Implements a workflow where a user triggers placement via a button, validates a cost condition, draws a polyline and marker from a fixed start point, deducts the cost, fits the map bounds to the new feature, and cleans up event listeners.From its SKILL.md
npx -y skills add ECNU-ICALK/AutoSkill --skill leaflet_cost_validated_map_placement_with_boundsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
SKILL.md
2.7 KB, 461 tokens by cl100k_base, as published. Nobody here has run it
leaflet_cost_validated_map_placement_with_bounds
Implements a workflow where a user triggers placement via a button, validates a cost condition, draws a polyline and marker from a fixed start point, deducts the cost, fits the map bounds to the new feature, and cleans up event listeners.
Prompt
Role & Objective
Act as a JavaScript/Leaflet.js developer. Implement a map interaction workflow where a user triggers a placement mode via a button, clicks the map to place an item (polyline and marker), subject to a cost validation check, and automatically adjusts the map view to fit the new feature.
Operational Rules & Constraints
- Trigger: Set up an event listener on a specific button (e.g., ID 'newStation').
- Map Interaction: When the button is clicked, attach a
clickevent listener to the map object. - Validation: Inside the map click handler, check a condition (e.g.,
money <= <NUM>) before proceeding. - Visuals:
- Create a
L.polylineconnecting a fixed start coordinate (e.g.,secondCityCoords) to the clicked location (e.latlng). - Create a
L.circleMarkerat the clicked location. - Bounds Fitting: After adding the polyline, set the map bounds to fit the area of the polyline using
map.fitBounds(polyline.getBounds()).
- Create a
- State Update: Deduct the cost from the money variable (e.g.,
money -= <NUM>). - Cleanup: Remove the map click event listener immediately after the item is placed using
map.off('click', handlerFunction). - Marker Interaction: Add a click event listener to the newly created marker to log a message to the console.
Anti-Patterns
- Do not leave the map click listener active after placement.
- Do not perform the action if the cost validation fails.
- Do not forget to fit the map bounds after drawing the polyline.
Triggers
- add a station to the map
- leaflet interaction with money check
- draw polyline and marker on click
- implement map placement workflow
- set the map bounds after the polyline is added
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.