mirror of
https://github.com/elastic/kibana.git
synced 2025-04-25 10:23:14 -04:00
## Summary Removes `testing-library/dom` from dependencies. As all the utilities from`dom` are available already in `testing-library/react`, there's no need to have both `dom` and `react` libraries available in our package.json. Following the [@testing-library/react documentation:](https://testing-library.com/docs/react-testing-library/intro) > [React Testing Library](https://github.com/testing-library/react-testing-library) builds on top of DOM Testing Library by adding APIs for working with React components. Let's just import everything from `testing-library/react`, this way we won't need to worry about inconsistencies between `testing-library/dom` we have in our `package.json` and the one that is `testing-library/react` dependency. |
||
---|---|---|
.. | ||
src | ||
index.ts | ||
jest.config.js | ||
kibana.jsonc | ||
package.json | ||
README.md | ||
setup_test.ts | ||
tsconfig.json |
@kbn/securitysolution-exception-list-components
Common exceptions' components
Aim
- To have most of the Exceptions' components in one place, to be shared accross multiple pages and used for different logic.
- This
package
holds the presetational part of the components only as the API or the logic part should reside under the consumer page
Pattern used
component
index.tsx
index.styles.ts <-- to hold styles if the component has many custom styles
use_component.ts <-- for logic if the Presentational Component has logic
component.test.tsx
use_component.test.tsx
Testing
In order to unify our testing tools, we configured only two libraries, the React-Testing-Library
to test the component UI part and the Reat-Testing-Hooks
to test the component's UI interactions
Styling
In order to follow the KBN-Packages's
recommendations, to define a custom CSS we can only use the @emotion/react
or @emotion/css
libraries
Next
- Now the
ExceptionItems, ExceptionItemCard and ExceptionItemCardMetaInfo
receivesecurityLinkAnchorComponent, exceptionsUtilityComponent , and exceptionsUtilityComponent
as props to avoid moving all thecommon
components under thex-pack
at once, later we should move all building blocks to thiskbn-package