
Security News
Bun 1.2.19 Adds Isolated Installs for Better Monorepo Support
Bun 1.2.19 introduces isolated installs for smoother monorepo workflows, along with performance boosts, new tooling, and key compatibility fixes.
react-util-kit
Advanced tools
A long time has passed since I wrote this package and it's beginning to age. In the interest of performance, I no longer wanted to bundle together multiple compononents and distribute them together, therefore I decided to split out ConditionallyRender into it's own package that is updated with modern technology and is also typescript ready. You can find the relevant links here:
react-util-kit is a small library focused on common operations with React simple and readable by wrapping them in components. react-util-kit is primarily concerned with behaviour, not styling nor boilerplate. I don't make any assumptions about how you want to style or structure your code.
npm install --save react-util-kit
Import the whole library like this:
import reactUtils from 'react-util-kit'
Or use individual components:
import { ConditionallyRender, Dropdown } from 'react-util-kit'
import { ConditionallyRender } from 'react-util-kit'
The ConditionallyRender component makes conditional rendering in React simple and readable. It takes an expression, component to render if expression is true and alternatively a component to render if the expression is false.
The component takes the following Props:
ifTrue: boolean,
show: React Component,
elseShow: React Component,
Examples:
class SomeClass extends Component {
constructor(props) {
super(props);
this.state {
show: false;
}
}
handleButtonClick = () => this.setState(prevState => ({ show: !prevState.show }))
render() {
<div className="container">
<ConditionallyRender ifTrue={this.state.show} show={<Sidebar />} elseShow={<SomeContent />}/>
<button onClick={this.handleButtonClick}>Show Sidebar</button>
</div>
}
}
import { Dropdown } from 'react-util-kit'
The Dropdown component exposes a render method that sends through properties from the component. It gives you access to a dropdownOpen boolean, and methods for controlling this state.
It gives you the following properties through a render property:
dropdownOpen: boolean,
toggleDropdown: () => void (toggles dropdownOpen state)
closeDropdown: () => void (switches dropdownOpen to false)
openDropdown: () => void (switches dropdownOpen to true)
Examples:
JS:
class SomeClass extends Component {
render() {
<div className="container">
<Dropdown render={(dropdownOpen, toggleDropdown) => {
<ConditionallyRender ifTrue={dropdownOpen} show={<DropdownMenu />} />
<button onClick={toggleDropdown}>Show dropdown menu</button>
} }>
</div>
}
}
FAQs
Contains utility components for React
The npm package react-util-kit receives a total of 0 weekly downloads. As such, react-util-kit popularity was classified as not popular.
We found that react-util-kit demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Bun 1.2.19 introduces isolated installs for smoother monorepo workflows, along with performance boosts, new tooling, and key compatibility fixes.
Security News
Popular npm packages like eslint-config-prettier were compromised after a phishing attack stole a maintainer’s token, spreading malicious updates.
Security News
/Research
A phishing attack targeted developers using a typosquatted npm domain (npnjs.com) to steal credentials via fake login pages - watch out for similar scams.