@procore/labs-filters v4.0.1
Filters
The continuation and new home of @particles/filters components.
Installation
yarn add @procore/labs-filtersDependencies
@procore/core-react and react are listed as external peer dependencies. The package will not bundle the code, and requires the app client to provide it as a dependency. The external peer dep is to assure React Context is consistent in a client's React tree, the child consumers can reference the correct parent provider. If the package uses latest features or bug fixes and a new minimum version of core-react is required, it should be considered a breaking change as the peer dependency version must be met.
Motivation
While integrating @particles/filters in Procore, it was found to have several design and implementation issues that needed to be addressed, which resulted in code duplication within the micro-frontend architecture.
labs-filters main goal is to eliminate code duplication within the app, but it also addresses other issues of @particles/filters, such as:
@particles/filtersimplicitly provides controlled and uncontrolled ways of using it, which violates interface segregation principleonChangemethod is only provided with an unordered list of selected filters, making persistance of selected filters a problemonChangeis overloaded with unnecessary concerns, such as handling "filter unfocused" events- Filters are not displayed in the correct order when used via controlled API
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
8 years ago
8 years ago
8 years ago