Frontmatter
| id | 9111 |
| title | Support ISO 2 country codes in CountryFlag component and grid column |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Feb 12, 2026, 10:12 AM |
| updatedAt | Feb 12, 2026, 11:41 AM |
| githubUrl | https://github.com/neomjs/neo/issues/9111 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 9106 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Feb 12, 2026, 11:41 AM |
Support ISO 2 country codes in CountryFlag component and grid column
tobiu assigned to @tobiu on Feb 12, 2026, 10:15 AM
tobiu added parent issue #9106 on Feb 12, 2026, 10:15 AM

tobiu
Feb 12, 2026, 11:41 AM
Input from Gemini 3 Pro:
✦ Implemented full support for ISO 2 country code filtering and rendering in DevIndex.
Framework Enhancements:
Neo.data.Store: Fixed a critical issue in Turbo Mode (autoInitRecords: false) where filtering during streaming (insertion) failed because raw data objects (POJOs) were not hydrated with mapped fields. OverriddenisFilteredItemto resolve filter properties on the fly.Neo.component.CountryFlag: AddedcountryCode_andresolveCountryCode_configs to support direct ISO code rendering without relying on location string parsing.Neo.grid.column.CountryFlag: AddedcontentFieldconfig to separate the flag source (dataField) from the text label source.App Implementation:
- Store: Switched
Contributorsstore to filter bycountry_codeusing exact match (===) instead of looselocationsearch.- View: Updated
GridContainerto usecountry_codefor the Location column. UpdatedControlsContainerto bind the Country combo tocountry_codeand return the ISO code (valueField: 'code').- Logic: Ensured filter values are uppercased to match ISO standards in the data.
Verified that both initial loading with URL parameters and manual filtering now work correctly with the streaming grid.
tobiu closed this issue on Feb 12, 2026, 11:41 AM
Support ISO 2 country codes in CountryFlag component and grid column.
src/component/CountryFlag.mjs:countryCode_reactive config.afterSetLocationlogic to prioritizecountryCodefor flag URL generation if available.locationfor the text label.src/grid/column/CountryFlag.mjs:contentFieldconfig (defaulting to 'location').applyRecordConfigsto mapcountryCodefrom the record if available.apps/devindex/view/home/GridContainer.mjs:dataFieldfor the 'Location' column from'location'to'country_code'.sortable: falsefor this column.