revamp template
This commit is contained in:
47
src/utils/Common.ts
Normal file
47
src/utils/Common.ts
Normal file
@ -0,0 +1,47 @@
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
export const throttle = (func: (...args: any[]) => void, limit: number) => {
|
||||
let lastFunc: any;
|
||||
let lastRan: number;
|
||||
return function (this: any, ...args: any[]) {
|
||||
if (!lastRan) {
|
||||
func.apply(this, args);
|
||||
lastRan = Date.now();
|
||||
} else {
|
||||
clearTimeout(lastFunc);
|
||||
lastFunc = setTimeout(
|
||||
() => {
|
||||
if (Date.now() - lastRan >= limit) {
|
||||
func.apply(this, args);
|
||||
lastRan = Date.now();
|
||||
}
|
||||
},
|
||||
limit - (Date.now() - lastRan)
|
||||
);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
export const jsonToQueryParams = (json: any) => {
|
||||
const params = new URLSearchParams();
|
||||
|
||||
for (const key in json) {
|
||||
if (json.hasOwnProperty(key)) {
|
||||
params.append(key, json[key]);
|
||||
}
|
||||
}
|
||||
|
||||
return params.toString();
|
||||
};
|
||||
|
||||
|
||||
export const ApplicationFileDownloadUrl = (API_URL: any, token: any, fileName: any) => {
|
||||
return `${API_URL}/application/file/download?name=${fileName}&token=${token}`;
|
||||
}
|
||||
|
||||
export const getFileExtension = (filename: string): string | null => {
|
||||
const lastDotIndex = filename.lastIndexOf('.');
|
||||
if (lastDotIndex === -1 || lastDotIndex === 0 || lastDotIndex === filename.length - 1) {
|
||||
return null; // No extension found or invalid format
|
||||
}
|
||||
return filename.substring(lastDotIndex + 1);
|
||||
}
|
||||
Reference in New Issue
Block a user