Skip to content

Commit ae20079

Browse files
committed
lint
1 parent 0334d4c commit ae20079

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

src/api/base_api.ts

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios';
2-
import { BaseApiResponseHandler } from './base_api_response_handler';
3-
import { ApiResponse, ApiResponseError, ApiResponseSuccess } from '../types';
4-
import { DjangoApiResponseHandler } from './django_service/django_api_response_handler';
5-
import DjangoApi from './django_service/django_api';
1+
import axios, { type AxiosInstance, type AxiosRequestConfig, type AxiosResponse } from 'axios'
2+
import { BaseApiResponseHandler } from './base_api_response_handler'
3+
import { type ApiResponse, ApiResponseError } from '../types'
4+
import { DjangoApiResponseHandler } from './django_service/django_api_response_handler'
5+
import DjangoApi from './django_service/django_api'
66

77
/**
88
* BASE API
@@ -57,7 +57,6 @@ export abstract class BaseApi {
5757
return this._axiosInstance
5858
}
5959

60-
6160
/**
6261
* HTTP METHODS
6362
*
@@ -94,48 +93,49 @@ export abstract class BaseApi {
9493
this.loading = false
9594
return response
9695
}
96+
9797
/**
9898
* catchDuplicates
9999
* A helper/wrapper function to handle retrying requests if necessary.
100100
* Avoids duplicate requests within a certain time window.
101101
*/
102102
async catchDuplicates<T = null>(requestFunction: () => Promise<AxiosResponse>, urlToCall: string): Promise<ApiResponse<T>> {
103-
const now = Date.now();
103+
const now = Date.now()
104104
// this accounts for both the page the URL is called on and the URL itself
105105
// that way if a user is changing pages, the following ID is different and
106106
// the request will go through
107-
const pageUrlId = `${urlToCall}`;
107+
const pageUrlId = `${urlToCall}`
108108

109109
// Check if the request is a duplicate
110-
const lastRequestTime = BaseApi.lastRequestTimestamps[pageUrlId] || 0;
111-
const timeElapsed = now - lastRequestTime;
112-
const duplicateCall = timeElapsed < this.minimumDelay;
113-
const lastSuccessfulResponse = BaseApi.lastSuccessfulResponses[pageUrlId];
110+
const lastRequestTime = BaseApi.lastRequestTimestamps[pageUrlId] || 0
111+
const timeElapsed = now - lastRequestTime
112+
const duplicateCall = timeElapsed < this.minimumDelay
113+
const lastSuccessfulResponse = BaseApi.lastSuccessfulResponses[pageUrlId]
114114

115115
if (duplicateCall && lastSuccessfulResponse) {
116-
lastSuccessfulResponse.duplicate = true;
117-
return lastSuccessfulResponse;
116+
lastSuccessfulResponse.duplicate = true
117+
return lastSuccessfulResponse
118118
}
119119

120120
// Update the last request timestamp
121-
BaseApi.lastRequestTimestamps[pageUrlId] = now;
121+
BaseApi.lastRequestTimestamps[pageUrlId] = now
122122

123123
// Get the response handler
124124
const responseHandler =
125125
this instanceof DjangoApi
126126
? new DjangoApiResponseHandler<T>(this, requestFunction())
127-
: new BaseApiResponseHandler<T>(this, requestFunction());
127+
: new BaseApiResponseHandler<T>(this, requestFunction())
128128

129129
try {
130130
// Make the request
131-
const response = await responseHandler.handleResponse();
131+
const response = await responseHandler.handleResponse()
132132

133133
// Store the response
134-
BaseApi.lastSuccessfulResponses[pageUrlId] = response;
135-
return response;
134+
BaseApi.lastSuccessfulResponses[pageUrlId] = response
135+
return response
136136
} catch (error) {
137-
console.error(`Error in ${this.name} for URL ${urlToCall}:`, error);
138-
return new ApiResponseError<T>({} as AxiosResponse);
137+
console.error(`Error in ${this.name} for URL ${urlToCall}:`, error)
138+
return new ApiResponseError<T>({} as AxiosResponse)
139139
}
140140
}
141-
}
141+
}

0 commit comments

Comments
 (0)