Skip to content

City & District: searchable, name-sorted picker sheets - #2

Merged
olcayertas merged 1 commit into
mainfrom
claude/city-district-picker-sheet-search
Jun 29, 2026
Merged

olcayertas merged 1 commit into
mainfrom
claude/city-district-picker-sheet-search

Conversation

@olcayertas

Copy link
Copy Markdown
Owner

Generalize the country picker sheet into a reusable PlacePickerSheet and apply it to all three levels, so City and District get the same searchable, name-sorted list (with checkmark) as Country.

  • Place.swift: add a NamedPlace protocol (Identifiable with String id + name) conformed by Country/City/District.
  • LocationPickerView: replace the City/District Pickers with tappable rows that present PlacePickerSheet; sort/filter logic now lives in the generic sheet. City selection still cascades to districts; district selection sets selectedDistrictId.
  • LocationPickerModel: add selectedCityName / selectedDistrictName; drop the country-specific countries(matching:) (folded into the sheet).

Claude-Session: https://claude.ai/code/session_015bPk9UojsfzaVV4N2DWtm6

Generalize the country picker sheet into a reusable PlacePickerSheet and
apply it to all three levels, so City and District get the same
searchable, name-sorted list (with checkmark) as Country.

- Place.swift: add a NamedPlace protocol (Identifiable with String id +
  name) conformed by Country/City/District.
- LocationPickerView: replace the City/District Pickers with tappable
  rows that present PlacePickerSheet; sort/filter logic now lives in the
  generic sheet. City selection still cascades to districts; district
  selection sets selectedDistrictId.
- LocationPickerModel: add selectedCityName / selectedDistrictName;
  drop the country-specific countries(matching:) (folded into the sheet).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015bPk9UojsfzaVV4N2DWtm6
@olcayertas
olcayertas merged commit 6b8db1e into main Jun 29, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants