Implement custom styling for select one from map question type
- Dominant language
- TypeScript
- Stars
- 38
- Forks
- 22
- PR merge metrics
- No merged PRs in 30d
Description
#### Description
Implement custom styling, including Point (`marker-color`, `marker-symbol`), Line (`stroke`, `stroke-width`), and Polygon (`stroke`, `stroke-width`, `fill` with fixed transparency), supporting valid long/short hex colors and non-Latin characters/emojis.
---
#### Checklist
- **Does it need UI/UX design?**
- [ ] Yes. Describe the UI/UX requirements or attach a Figma link in the "Design" section.
- [x] No
- **Does it need API design?**
- [ ] Yes. Specify the endpoints, methods, or data structures needed.
- [x] No
- **Does it need design around state flow?**
- [ ] Yes. Outline the state flow requirements.
- [x] No
- **Does it need a test plan?**
- [x] Yes. Add the test plan as a comment in this task or attach the document.
- Test plan to include:
- Verify Point choices render with marker-color (e.g., #aaccee) and marker-symbol (e.g., A, 7, 🏥, 🟢).
- Confirm Line choices render with stroke (e.g., #aaccee) and stroke-width (e.g., 5, 6.5).
- Confirm Polygon choices render with stroke, stroke-width, and fill with fixed transparency.
---
#### User Stories
- **As a** map user,
**I want** to customize the appearance of Points, Lines, and Polygons,
**so that** I can visually distinguish different map features according to my preferences.
---
#### Design
- **Figma**: N/A
- **Design Docs**: N/A
---
#### Related Issues
- https://github.com/getodk/web-forms/issues/305
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names no files or tests; start by locating the select-one-from-map rendering entry point and review related issue 305. Implement styling for Point, Line, and Polygon choices, including the listed color, width, symbol, emoji, and transparency cases, then verify each item in the test plan.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100