Skip to content

Commit cdb6b83

Browse files
committed
feat: update npm dependencies
1 parent 8a9a3bb commit cdb6b83

14 files changed

+50
-51
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,4 @@ test.ts
1818
!/bin
1919
.env
2020
package-lock.json
21+
/yalc.lock

README.md

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ providing a powerful abstraction layer for geocoding manipulations.
2828

2929
## Installation
3030

31-
$ npm i @goparrot/geocoder reflect-metadata axios class-transformer class-validator
31+
$ npm i @goparrot/geocoder reflect-metadata axios
3232

3333
<sub>⚠️️ Each reflect-metadata installation has its own metadata storage, from which it reads and writes from.
3434
So if you had a project with multiple reflect-metadata packages, it could happen that in one file you write metadata in one reflect-metadata package and in another file you’re trying to retrieve this metadata accidently from the other reflect-metadata package, which of course doesn’t exist there.</sub>
@@ -137,13 +137,11 @@ axios.interceptors.request.use((request: AxiosRequestConfig) => {
137137
});
138138

139139
// You can log all responses
140-
axios.interceptors.response.use(
141-
(response: AxiosResponse): AxiosResponse => {
142-
logger.debug(`api response ${response.status}`, response.data);
140+
axios.interceptors.response.use((response: AxiosResponse): AxiosResponse => {
141+
logger.debug(`api response ${response.status}`, response.data);
143142

144-
return response;
145-
},
146-
);
143+
return response;
144+
});
147145

148146
/**
149147
* Caching adapter for axios. Store request results in a configurable store to prevent unneeded network requests.
@@ -298,12 +296,9 @@ geocoder.registerProvider(new GoogleMapsProvider(axios, 'YOUR_API_KEY'));
298296
The `ProviderAggregator`'s API is fluent, meaning you can write:
299297

300298
```typescript
301-
const locations: Location[] = geocoder
302-
.registerProvider(new MyCustomProvider(axios))
303-
.using(MyCustomProvider)
304-
.geocode({
305-
// ...
306-
});
299+
const locations: Location[] = geocoder.registerProvider(new MyCustomProvider(axios)).using(MyCustomProvider).geocode({
300+
// ...
301+
});
307302
```
308303

309304
The `using()` method allows you to choose the `provider` to use by its class name.

bin/prepublish.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,16 @@ import path from 'path';
33

44
async function run(): Promise<void> {
55
// eslint-disable-next-line @typescript-eslint/no-unused-vars
6-
const { scripts, devDependencies, husky, files, 'lint-staged': lintStaged, directories, config, ...packageJson } = JSON.parse(
7-
fs.readFileSync(path.join(process.cwd(), 'package.json')).toString(),
8-
);
6+
const {
7+
scripts,
8+
devDependencies,
9+
husky,
10+
files,
11+
'lint-staged': lintStaged,
12+
directories,
13+
config,
14+
...packageJson
15+
} = JSON.parse(fs.readFileSync(path.join(process.cwd(), 'package.json')).toString());
916

1017
packageJson.main = './cjs/index.js';
1118
packageJson.module = './esm/index.js';

package.json

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,11 @@
9292
},
9393
"peerDependencies": {
9494
"axios": ">=0.21.1",
95-
"class-transformer": "^0.3.1",
96-
"class-validator": "^0.12.2",
9795
"reflect-metadata": ">=0.1.13"
9896
},
9997
"dependencies": {
98+
"class-transformer": "^0.4.0",
99+
"class-validator": "^0.13.1",
100100
"lodash.isempty": "^4.4.0",
101101
"world-countries": "^4.0.0"
102102
},
@@ -110,26 +110,24 @@
110110
"@types/lodash.isempty": "^4.4.6",
111111
"@types/mocha": "^8.2.1",
112112
"@types/node": "^14.14.33",
113-
"@types/sinon": "^9.0.11",
113+
"@types/sinon": "^10.0.0",
114114
"@types/supertest": "^2.0.10",
115115
"@typescript-eslint/eslint-plugin": "^4.17.0",
116116
"@typescript-eslint/parser": "^4.17.0",
117117
"axios": "^0.21.1",
118118
"axios-mock-adapter": "^1.19.0",
119119
"chai": "^4.3.3",
120120
"chai-as-promised": "^7.1.1",
121-
"class-transformer": "^0.3.1",
122-
"class-validator": "^0.12.2",
123121
"commitizen": "^4.2.3",
124122
"conventional-github-releaser": "^3.1.5",
125-
"dotenv": "^8.2.0",
123+
"dotenv": "^9.0.2",
126124
"eslint": "^7.21.0",
127125
"eslint-config-prettier": "^8.1.0",
128126
"eslint-import-resolver-typescript": "^2.4.0",
129127
"eslint-plugin-import": "^2.22.1",
130128
"eslint-plugin-prettier": "^3.3.1",
131-
"husky": "^5.1.3",
132-
"lint-staged": "^10.5.4",
129+
"husky": "^6.0.0",
130+
"lint-staged": "^11.0.0",
133131
"mocha": "^8.3.1",
134132
"mocha-junit-reporter": "^2.0.0",
135133
"npm-run-all": "^4.1.5",
@@ -142,7 +140,7 @@
142140
"remark-lint-emphasis-marker": "^2.0.1",
143141
"remark-lint-strong-marker": "^2.0.1",
144142
"rimraf": "^3.0.2",
145-
"sinon": "^9.2.4",
143+
"sinon": "^10.0.0",
146144
"source-map-support": "^0.5.19",
147145
"standard-version": "^9.1.1",
148146
"supertest": "^6.1.3",

src/command/abstract-location.command.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { AbstractCommand } from './abstract.command';
1313
export abstract class AbstractLocationCommand<
1414
GeocoderQueryType extends QueryInterface = any,
1515
ProviderRequestType = any,
16-
ProviderResponseType = any
16+
ProviderResponseType = any,
1717
> extends AbstractCommand<GeocoderQueryType, Location, AbstractLocationTransformer, ProviderRequestType, ProviderResponseType> {
1818
protected async parseResponse(_response: AxiosResponse<ProviderResponseType>, _query: GeocoderQueryType): Promise<AbstractLocationTransformer[]> {
1919
throw new Error('AbstractLocationCommand.parseResponse: not implemented');

src/command/abstract-suggest.command.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { AbstractCommand } from './abstract.command';
77
export abstract class AbstractSuggestCommand<
88
GeocoderQueryType extends QueryInterface = any,
99
ProviderRequestType = any,
10-
ProviderResponseType = any
10+
ProviderResponseType = any,
1111
> extends AbstractCommand<GeocoderQueryType, Suggestion, AbstractSuggestionTransformer, ProviderRequestType, ProviderResponseType> {
1212
protected async parseResponse(_response: AxiosResponse<ProviderResponseType>, _query: GeocoderQueryType): Promise<AbstractSuggestionTransformer[]> {
1313
throw new Error('AbstractSuggestCommand.parseResponse: not implemented');

src/command/abstract.command.ts

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export abstract class AbstractCommand<
2222
GeocoderResponseType = any,
2323
GeocoderTransformerType extends AbstractTransformer = any,
2424
ProviderRequestType = any,
25-
ProviderResponseType = any
25+
ProviderResponseType = any,
2626
> extends LoggableMixin(Function) {
2727
['constructor']: Pick<typeof AbstractCommand, keyof typeof AbstractCommand> & { name: string } & LoggableInterface;
2828

@@ -117,13 +117,11 @@ export abstract class AbstractCommand<
117117
const transformers: GeocoderTransformerType[] = await this.parseResponse(response, query);
118118

119119
return Promise.all<GeocoderResponseType>(
120-
transformers.map(
121-
async (transformer: GeocoderTransformerType): Promise<GeocoderResponseType> => {
122-
return transformer.transform({
123-
groups: query.withRaw ? ['raw'] : undefined,
124-
});
125-
},
126-
),
120+
transformers.map(async (transformer: GeocoderTransformerType): Promise<GeocoderResponseType> => {
121+
return transformer.transform({
122+
groups: query.withRaw ? ['raw'] : undefined,
123+
});
124+
}),
127125
);
128126
}
129127

src/transformer/abstract-suggestion-transformer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { AbstractTransformer } from './abstract-transformer';
77

88
export abstract class AbstractSuggestionTransformer<
99
HttpProviderClass extends AbstractHttpProvider = any,
10-
ProviderRawEntryType = any
10+
ProviderRawEntryType = any,
1111
> extends AbstractTransformer<HttpProviderClass, ProviderRawEntryType> {
1212
abstract getFormattedAddress(): Promise<SuggestionInterface['formattedAddress']>;
1313
abstract getPlaceId(): Promise<SuggestionInterface['placeId']>;

src/util/transformer/to-boolean.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Transform } from 'class-transformer';
22

33
export function ToBoolean(): (target: any, key: string) => void {
4-
return Transform((value: any) => value === 'true' || value === true || value === 1 || value === '1');
4+
return Transform(({ value }) => value === 'true' || value === true || value === 1 || value === '1');
55
}

src/util/world-country-state/world-country-state-query.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,22 @@ export class WorldCountryStateQuery implements WorldCountryStateQueryInterface {
77
@IsString()
88
@MinLength(2)
99
@MaxLength(2)
10-
@Transform((v: string) => v.trim())
10+
@Transform(({ value }) => value?.trim())
1111
@Expose()
1212
countryCode: string;
1313

1414
@IsOptional()
1515
@IsString()
1616
@MinLength(2)
1717
@MaxLength(100)
18-
@Transform((v: string) => (v ? v.toString().trim().toUpperCase() : undefined))
18+
@Transform(({ value }) => value?.toString().trim().toUpperCase())
1919
@Expose()
2020
stateCode?: string;
2121

2222
@IsString()
2323
@IsOptional()
2424
@MinLength(1)
25-
@Transform((v: string) => (v ? v.trim() : undefined))
25+
@Transform(({ value }) => value?.trim())
2626
@Expose()
2727
name?: string;
2828
}

0 commit comments

Comments
 (0)