@tiger-analytics/utils
v0.0.7
Published
@tiger-analytics/utils is a module designed to enhance the developer experience by providing common reusable functions, saving developer time and reducing code repetition across your projects.
Downloads
110
Readme
@tiger-analytics/utils
Overview
@tiger-analytics/utils is a module designed to enhance the developer experience by providing common reusable functions, saving developer time and reducing code repetition across your projects.
Features
fetchApi
fetchApi is a robust wrapper around the native fetch function that simplifies error handling and improves the overall API interaction process.
Key Features:
- Centralized Error Handling: Configure 401 handler and other error responses for a wide range of HTTP status codes (e.g., 401, 403, etc) in one place. This saves time and ensures consistency across your application.
- Customizable Error Handlers: Overwrite or partially overwrite the default error handlers for specific cases. For instance, when checking if a username exists, a 404 error can be handled differently to indicate that the absence of a username is expected.
- Aborted Requests: Automatically abort API requests when the user navigates to a different page, preventing irrelevant notifications from appearing in the new context.
Benefits:
- Time-Saving: Avoid the repetitive task of writing error handling code for each API call. This is especially useful in larger projects where maintaining consistency can be challenging.
- Reduced Code Duplication: Keep your codebase clean and maintainable by centralizing error handling logic.
Note: Support for handling parallel multiple API error cases will be added soon!
useLoader
useLoader is a custom hook designed to manage loading states more effectively during API calls.
Key Features:
- Threshold Loading Time: Ensures the loading state is true for a minimum threshold duration (default: 400ms). This prevents flickering when API calls return quickly.
- Enhanced User Experience: Provides a more polished user experience by displaying a loader overlay consistently, improving accessibility and reducing abrupt visual changes.
Benefits:
- Improved Accessibility: By maintaining the loading state for a minimum time, users are better informed about ongoing processes, making the application more user-friendly.