mortezaei
5f033fc822
feat: add bottom sheet for currency selection with auto-mapping based on location country code
2 days ago
mortezaei
e6ef2291b1
feat(assessments): add native-like smooth horizontal slide transition to test questions
2 days ago
mortezaei
8f6934468f
fix(assessments): robust options parsing for Cattell and Glasser
2 days ago
mortezaei
bc8fceaf47
fix(birthplace): update question birthplace
3 days ago
mortezaei
6585535310
fix(geo): optimize geo-region listener and tests
3 days ago
mortezaei
2e55e3395e
fix(geo): update geo region and birthplace handling
3 days ago
mortezaei
175b0199bb
fix(birthplace): update birthplace state and tests
3 days ago
mortezaei
7225e65546
fix
3 days ago
mortezaei
4103f1c0ca
fix city and country
3 days ago
mortezaei
c0a380596e
fix(marriage): optimize multi-select sheet local state, silent retry with ErrorToast on Continue
3 days ago
mortezaei
2abad06265
fix(questions): accurately compute isAnswered for birthplace objects and strings
3 days ago
mortezaei
f33e40b82d
fix(birthplace): align string format with backend contract (Country, City)
3 days ago
mortezaei
095d1b5a93
fix(logs): stringify birthplace debug logs
3 days ago
mortezaei
98bcb7acb0
feat(debug): add detailed console logs for birthplace
3 days ago
mortezaei
c2fad42604
fix(birthplace): guarantee strict country and city independence with test suite
3 days ago
mortezaei
38953095a9
fix(birthplace): restore strict deterministic city and country parsing without swapping
3 days ago
mortezaei
1ac830d12b
fix(birthplace): preserve separate country and city state and update detectedLocation
3 days ago
mortezaei
55d64b6d03
fix(birthplace): prevent country state from being overwritten when typing city
3 days ago
mortezaei
76a8c4ba98
feat(geo): integrate Flutter bridge get_location action for IP-based country and city detection
3 days ago
mortezaei
b609b1363b
refactor: improve birthplace parsing logic, add auto-detection throttling, and include integration tests for country-city state management
3 days ago
mortezaei
cc31688ded
fix input autofill code
4 days ago
mortezaei
e98b405416
fix input autofill code
4 days ago
mortezaei
0443604714
fix input autofill code
4 days ago
mortezaei
4a4051ea93
fix input autofill code
4 days ago
mortezaei
cb3c34ee90
fix input autofill code
4 days ago
mortezaei
29126ce5c2
refactor: remove Flutter bridge location lookup to prioritize backend-based geolocation
4 days ago
mortezaei
9d96917f6a
feat(geo): integrate flutter bridge get_location to fetch native region from phone
4 days ago
mortezaei
b18218f992
feat(proxy): add security key support and add api testing pages
Add support for forwarding `security-key` and `x-security-key` headers in the
proxy route. The proxy will now automatically inject a security key from
environment variables if it is not already present in the request headers.
Additionally, introduce new test API pages to facilitate debugging and
verifying API responses, including localized country name resolution and
proxy functionality.
- Add `security-key` and `x-security-key` to forwarded headers in proxy
- Implement automatic injection of security key in `src/app/api/proxy/route.ts`
- Add `src/app/[lang]/test-api/page.tsx` for comprehensive API testing
- Add `src/app/test-api/page.tsx` as a root-level redirect/wrapper for the
test API page
4 days ago
mortezaei
de7c2eb953
refactor: add object support to field formatter and update internationalization translations
4 days ago
mortezaei
f90bdf84c9
refactor: add object support to field formatter and update internationalization translations
4 days ago
mortezaei
2a37174580
fix(geo): support force refresh in getUserGeoRegion and pass force on auto click
4 days ago
mortezaei
d351f32b25
fix(proxy): remove prohibited CF-* headers to prevent Cloudflare Error 1000
4 days ago
mortezaei
73758ec53f
refactor: improve geo-location handling by standardizing country name resolution and forwarding client IP headers to the backend
4 days ago
mortezaei
cc68e1dc27
fix: restrict option_id to choice types and update tests
4 days ago
mortezaei
7e82acb605
feat: ensure 1-to-1 canonical option keys across all languages for countries and languages
4 days ago
mortezaei
923a7c6219
fix: robust option_id mapping in createQuestionField
4 days ago
mortezaei
6121938a17
feat: support full 195 countries dataset merging in QuestionSheet for nationality and country fields
4 days ago
mortezaei
fe51e90efd
fix: calibrate initial keyboard estimate dynamically based on viewport height and latch intermediate animation frames
4 days ago
mortezaei
2663ed078b
fix: stabilize keyboard viewport lift during incremental animations by rounding values and adjusting height logic
4 days ago
mortezaei
c09ad72ba7
refactor: remove web bootstrap pending state and set ready status directly upon web_ready signal
4 days ago
mortezaei
38fbf009da
feat: add health and physical condition questions to schema and translations, and integrate new section assets and iconography
4 days ago
mortezaei
c9ee7a7d37
feat: enable multi-select support for dropdown components and update related tests
4 days ago
mortezaei
9ab34a7609
feat: implement automatic location pre-filling for birthplace questions using stored geo-region data
5 days ago
mortezaei
75144fd6eb
refactor(geo): centralize geolocation logic into a unified utility
Extract geolocation detection and storage logic from `QuestionBirthplace`
and `QuestionPhone` into a new `geo-region.ts` library. This provides a
single source of truth for user region data, including city, country,
and phone calling codes.
- Create `src/lib/geo-region.ts` to manage GeoIP fetching, caching,
and subscription-based updates.
- Refactor `QuestionBirthplace` to use the new `getUserGeoRegion` utility
instead of inline fetch logic.
- Refactor `QuestionPhone` to use the unified storage and retrieval
mechanism for phone calling codes.
- Add unit tests in `ui-config.test.tsx` to verify auto-detection
behavior when `enable_geoip` is enabled.
5 days ago
mortezaei
872129fe3a
refactor: remove swipe gestures from slider and improve keyboard viewport height estimation logic
5 days ago
mortezaei
879f864575
feat: implement phone number formatting, dynamic placeholders, and validation for QuestionPhone component with multi-language support
5 days ago
mortezaei
280599eb07
refactor: extract base geometry calculation and add phone number formatter import
5 days ago
mortezaei
2ddb4f31e5
feat: integrate Habib user region API for IP geolocation and update phone component shimmer UI
5 days ago
mortezaei
3f255ad185
refactor: optimize keyboard height updates and improve viewport coordinate state transitions
5 days ago
mortezaei
17a0db24fa
perf(ui): optimize transition timing and keyboard viewport coordination
Adjust the global section overlay transition duration and easing for a
snappier feel. Update the viewport coordinator to use a more responsive
keyboard threshold and provide a fallback default height to ensure
consistent lifting behavior when the last known height is insufficient.
5 days ago