Skip to content

feat: add partial search and viewport filtering for stores#33

Merged
prudentbird merged 4 commits intodevfrom
feat/filtering-overhaul
Sep 3, 2025
Merged

feat: add partial search and viewport filtering for stores#33
prudentbird merged 4 commits intodevfrom
feat/filtering-overhaul

Conversation

@prudentbird
Copy link
Copy Markdown
Member

Description

This PR introduces enhancements to the store search functionality by adding support for:

  • Partial text search on store names
  • Geographic viewport filtering using latitude/longitude bounds
  • Combined filtering with other exact-match fields

These improvements enable more flexible and efficient querying of store data, supporting both text-based and location-based searches.

Type of Change

  • feat: New feature

How Has This Been Tested?

  • Unit tests
  • Integration tests
  • Manual tests

Test Evidence

image

Checklist

  • My changes generate no new warnings
  • My code follows the project's coding style
  • I have included a screenshot showing all tests passing
  • New and existing unit tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works

Additional Notes

This feature lays the foundation for advanced store discovery and filtering, improving both API capabilities and user-facing search experiences.

The commit adds support for:
- Partial text search on store names
- Geographic viewport filtering using lat/lng bounds
- Combined filtering with other exact-match fields
@prudentbird prudentbird self-assigned this Aug 30, 2025
- Updated .gitignore to include all .env files while excluding .env.example.
- Improved orderBy logic in AbstractModelAction to handle range keys and set a default sort order by createdAt if no sorting is specified.
- Added SkipThrottle decorator to the getStores method in AdminController for rate limiting control.
- Introduced the SkipThrottle decorator to the listStores method in StoreController to implement rate limiting, enhancing API performance and user experience.
- Changed partialSearchFields and rangeFields in AbstractModelAction to readonly arrays for better immutability.
- Updated StoreModelAction to use constants for searchable and filterable columns.
- Replaced IsNumberString with IsLatitude and IsLongitude validators in StoreDto for stricter validation.
- Adjusted types in StoreFilterOptions to use template literals for latitude and longitude properties.
@prudentbird prudentbird merged commit 295006a into dev Sep 3, 2025
1 check 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.

1 participant