diff --git a/src/api.test.ts b/src/api.test.ts index 24df2c1..aa3cb34 100644 --- a/src/api.test.ts +++ b/src/api.test.ts @@ -146,7 +146,9 @@ test('API calls populate resource field', async done => { test('API explodes list based parameters properly', async done => { nock('https://api.pagerduty.com') - .get('/incidents?additional_fields[]=one&additional_fields[]=two&additional_fields[]=three') + .get( + '/incidents?additional_fields[]=one&additional_fields[]=two&additional_fields[]=three' + ) .reply(200, { incidents: ['one', 1, null], limit: 25, @@ -159,10 +161,13 @@ test('API explodes list based parameters properly', async done => { token: 'someToken1234567890', endpoint: '/incidents', queryParameters: { - 'additional_fields[]': ['one', 'two', 'three'] - } + 'additional_fields[]': ['one', 'two', 'three'], + }, }); - expect(resp.url).toEqual('https://api.pagerduty.com/incidents?additional_fields%5B%5D=one&additional_fields%5B%5D=two&additional_fields%5B%5D=three'); + + expect(resp.url).toEqual( + `https://api.pagerduty.com/incidents?additional_fields%5B%5D=one&additional_fields%5B%5D=two&additional_fields%5B%5D=three` + ); done(); }); diff --git a/src/api.ts b/src/api.ts index 943dff4..02a01ba 100644 --- a/src/api.ts +++ b/src/api.ts @@ -35,7 +35,9 @@ export interface APIResponse extends Response { export function api(apiParameters: APIParameters): APIPromise; export function api(apiParameters: Partial): PartialCall; -export function api(apiParameters: Partial): APIPromise | PartialCall { +export function api( + apiParameters: Partial +): APIPromise | PartialCall { // If the apiParameters don't include `endpoint` treat it as a partial // application. if (!apiParameters.endpoint && !apiParameters.url) { @@ -64,7 +66,8 @@ export function api(apiParameters: Partial): APIPromise | Partial // Allow `data` for `queryParameters` for requests without bodies. if (isReadonlyRequest(config.method!) && data) { - config.queryParameters = config.queryParameters ?? (data as Record); + config.queryParameters = + config.queryParameters ?? (data as Record); } else { config.body = JSON.stringify(data); } @@ -76,7 +79,9 @@ export function api(apiParameters: Partial): APIPromise | Partial } export function all(apiParameters: APIParameters): Promise { - return (api(apiParameters) as APIPromise).then(response => allInner([response])); + return (api(apiParameters) as APIPromise).then(response => + allInner([response]) + ); } function allInner(responses: APIResponse[]): Promise { @@ -197,7 +202,12 @@ function partialCall(apiParameters: Partial) { endpoint: string, shorthandParameters?: Partial ): APIPromise => - api({endpoint, method, ...partialParameters, ...shorthandParameters}) as APIPromise; + api({ + endpoint, + method, + ...partialParameters, + ...shorthandParameters, + }) as APIPromise; partial.get = shorthand('get'); partial.post = shorthand('post'); diff --git a/src/common.ts b/src/common.ts index 477281d..51be4b4 100644 --- a/src/common.ts +++ b/src/common.ts @@ -81,13 +81,12 @@ function applyParameters(url: URL, queryParameters?: QueryParameter): URL { const combinedParameters = url.searchParams; for (const key of Object.keys(queryParameters)) { - let parameter = queryParameters[key]; + const parameter = queryParameters[key]; if (Array.isArray(parameter)) { // Support for array based keys like `additional_fields[]` - console.log(parameter); - parameter.forEach((item) => { + parameter.forEach(item => { combinedParameters.append(key, item); - }) + }); } else { combinedParameters.append(key, parameter); } diff --git a/src/events.ts b/src/events.ts index 84e24e2..5ad512b 100644 --- a/src/events.ts +++ b/src/events.ts @@ -81,7 +81,9 @@ export function event(eventParameters: EventParameters): EventPromise { }); } -const shorthand = (action: Action) => (eventParameters: EventParameters): EventPromise => { +const shorthand = (action: Action) => ( + eventParameters: EventParameters +): EventPromise => { const typeField = 'event_action'; return event({