aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFridon <[email protected]>2022-06-24 13:10:11 +0400
committerFridon <[email protected]>2022-06-24 13:10:11 +0400
commit8622f3f37988333251265144c2fd8efb75a04d34 (patch)
tree66df4474ddd74be0ec0e0333d05eb671978c508d
parent001a25e6761f832dfc6241b7d97f54210ab39381 (diff)
downloadcountryfetch-8622f3f37988333251265144c2fd8efb75a04d34.tar.xz
countryfetch-8622f3f37988333251265144c2fd8efb75a04d34.zip
add lat/lng, subregion and timezones
-rw-r--r--src/countries.ts4
-rw-r--r--src/environment/environment.ts3
-rw-r--r--src/models/FetchedCountry.model.ts4
-rw-r--r--src/models/country.model.ts6
-rw-r--r--src/util/logger.ts12
5 files changed, 26 insertions, 3 deletions
diff --git a/src/countries.ts b/src/countries.ts
index 8b81972..4b0a0c9 100644
--- a/src/countries.ts
+++ b/src/countries.ts
@@ -101,10 +101,14 @@ export class Countries {
this.logger.logCountry({
country: country.name.common,
+ latlng: country.latlng.join("/"),
capital: country.capital[0],
flag: country.flag,
population: country.population.toLocaleString(),
region: country.region,
+ subregion: country.subregion,
+ capitalLatLng: country.capitalInfo.latlng.join("/"),
+ timezones: country.timezones.join("\n\t\t "),
currencies,
languages,
});
diff --git a/src/environment/environment.ts b/src/environment/environment.ts
index bc82b40..479de91 100644
--- a/src/environment/environment.ts
+++ b/src/environment/environment.ts
@@ -5,5 +5,6 @@ export const environment = {
baseUrl: "https://restcountries.com/v3.1/",
syncInterval: 7,
cacheDir: join(home_dir() as string, ".cache", "countryfetch"),
- queries: `all?fields=name,capital,currencies,population,flag,region,continent,languages,region`,
+ queries:
+ "all?fields=name,capital,currencies,population,flag,languages,region,subregion,timezones,latlng,capitalInfo",
};
diff --git a/src/models/FetchedCountry.model.ts b/src/models/FetchedCountry.model.ts
index 0dd783d..af80281 100644
--- a/src/models/FetchedCountry.model.ts
+++ b/src/models/FetchedCountry.model.ts
@@ -1,9 +1,13 @@
export interface FetchedCountry {
country: string;
+ latlng: string;
flag: string;
languages: string;
capital: string;
+ capitalLatLng: string;
region: string;
+ subregion: string;
population: string;
currencies: string;
+ timezones: string;
}
diff --git a/src/models/country.model.ts b/src/models/country.model.ts
index 1a6b3ae..7866187 100644
--- a/src/models/country.model.ts
+++ b/src/models/country.model.ts
@@ -28,4 +28,10 @@ export interface Country {
population: number;
languages: Languages;
region: Region;
+ subregion: string; //can later be explicit enum
+ timezones: string[];
+ latlng: number[];
+ capitalInfo: {
+ latlng: number[];
+ };
}
diff --git a/src/util/logger.ts b/src/util/logger.ts
index 2e9045a..bfbffbf 100644
--- a/src/util/logger.ts
+++ b/src/util/logger.ts
@@ -23,14 +23,22 @@ export class Logger {
nano.cyan("\nCountry:\t"),
country.country,
country.flag,
+ nano.green("\nLat/Lng\t\t"),
+ country.latlng,
+ nano.green("\nPopulation:\t"),
+ country.population,
nano.green("\nLanguages:\t"),
country.languages,
nano.green("\nCapital:\t"),
country.capital,
+ nano.green("\nCapital Lat/Lng:"),
+ country.capitalLatLng,
nano.green("\nRegion:\t\t"),
country.region,
- nano.green("\nPopulation:\t"),
- country.population,
+ nano.green("\nSubregion:\t"),
+ country.subregion,
+ nano.green("\nTimezones:\t"),
+ country.timezones,
nano.green("\nCurrencies:\t"),
country.currencies
);