1.0.5 • Published 10 months ago
@gtb-0310/filter-lib v1.0.5
FilterManager
Functions
_loadFromStorage()
- Parameters: None.
- Description: Loads the filters from
localStorageif they exist, otherwise uses the default filters. - Returns: None.
save(filters)
- Parameters:
filters(Object): An object containing the filters to be saved.
Example:{ StartDate: "2025-01-01", EndDate: "2025-12-31" }.
- Description: Saves the given filters to
localStorage. - Returns: None.
load()
- Parameters: None.
- Description: Loads the filters from
localStorageor returns the default filters if no saved filters are found. - Returns:
- (Object): The saved filters or the default filters.
Example:{ StartDate: "2025-01-01", EndDate: "2025-12-31" }.
- (Object): The saved filters or the default filters.
reset()
- Parameters: None.
- Description: Resets the filters to the default values defined during initialization.
- Returns:
- (Object): The reset filters.
Example:{ StartDate: null, EndDate: null, Category: [] }.
- (Object): The reset filters.
update(key, value)
- Parameters:
key(String): The name of the filter to update.
Example:"Category".value(Any): The new value for the filter.
Example:["Electronics", "Books"].
- Description: Updates or adds a specific filter.
- Returns: None.
get(key)
- Parameters:
key(String): The name of the filter to retrieve.
Example:"StartDate".
- Description: Retrieves the value of a specific filter.
- Returns:
- (Any): The value of the requested filter.
Example:"2025-01-01".
- (Any): The value of the requested filter.
getAll()
- Parameters: None.
- Description: Retrieves all currently loaded filters.
- Returns:
- (Object): All current filters.
Example:{ StartDate: "2025-01-01", EndDate: "2025-12-31", Category: ["Electronics", "Books"] }.
- (Object): All current filters.
Example Usage
const { FilterManager } = require("frontend-utils");
const filterManager = new FilterManager({
storageKey: "myAppFilters",
defaultFilters: { StartDate: null, EndDate: null, Category: [] },
});
// Save filters
filterManager.save({ StartDate: "2025-01-01", EndDate: "2025-12-31" });
// Load filters
console.log(filterManager.load());
// Reset filters
console.log(filterManager.reset());
// Update a specific filter
filterManager.update("Category", ["Books", "Movies"]);
console.log(filterManager.get("Category"));
// Get all filters
console.log(filterManager.getAll());