mirror of
https://github.com/FranP-code/countries.git
synced 2025-10-13 00:02:15 +00:00
Add states field to country
This commit is contained in:
5
package-lock.json
generated
5
package-lock.json
generated
@@ -6707,6 +6707,11 @@
|
|||||||
"long": "^4.0.0"
|
"long": "^4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"provinces": {
|
||||||
|
"version": "1.11.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/provinces/-/provinces-1.11.0.tgz",
|
||||||
|
"integrity": "sha1-Rni9Y+iBHwoZTrwcV+7hxV585sI="
|
||||||
|
},
|
||||||
"proxy-addr": {
|
"proxy-addr": {
|
||||||
"version": "2.0.5",
|
"version": "2.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz",
|
||||||
|
|||||||
@@ -14,7 +14,8 @@
|
|||||||
"apollo-server": "^2.7.0",
|
"apollo-server": "^2.7.0",
|
||||||
"countries-list": "^2.4.3",
|
"countries-list": "^2.4.3",
|
||||||
"esm": "^3.2.25",
|
"esm": "^3.2.25",
|
||||||
"graphql": "^14.4.2"
|
"graphql": "^14.4.2",
|
||||||
|
"provinces": "^1.11.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@trevorblades/eslint-config": "^7.0.1",
|
"@trevorblades/eslint-config": "^7.0.1",
|
||||||
|
|||||||
20
resolvers.js
20
resolvers.js
@@ -1,3 +1,4 @@
|
|||||||
|
import provinces from 'provinces';
|
||||||
import {continents, countries, languages} from 'countries-list';
|
import {continents, countries, languages} from 'countries-list';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -8,20 +9,31 @@ export default {
|
|||||||
name: continents[continent]
|
name: continents[continent]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
languages(parent) {
|
languages(country) {
|
||||||
return parent.languages.map(code => {
|
return country.languages.map(code => {
|
||||||
const language = languages[code];
|
const language = languages[code];
|
||||||
return {
|
return {
|
||||||
...language,
|
...language,
|
||||||
code
|
code
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
states(country) {
|
||||||
|
return provinces.filter(province => province.country === country.code);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
State: {
|
||||||
|
code(state) {
|
||||||
|
return state.short;
|
||||||
|
},
|
||||||
|
country(state) {
|
||||||
|
return countries[state.country];
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
Continent: {
|
Continent: {
|
||||||
countries(parent) {
|
countries(continent) {
|
||||||
return Object.entries(countries)
|
return Object.entries(countries)
|
||||||
.filter(entry => entry[1].continent === parent.code)
|
.filter(entry => entry[1].continent === continent.code)
|
||||||
.map(([code, country]) => ({
|
.map(([code, country]) => ({
|
||||||
...country,
|
...country,
|
||||||
code
|
code
|
||||||
|
|||||||
Reference in New Issue
Block a user