Research
Security News
Kill Switch Hidden in npm Packages Typosquatting Chalk and Chokidar
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
@ebay/storybook-addon-themepicker
Advanced tools
Storybook addon for toggling between various emotion themes
This package provides a way to easily preview various themes applied to your emotion-based React components using Storybook.
As with all Storybook addons, first register the addon in your addons.js
file:
import '@ebay/storybook-addon-themepicker/register';
Then, simply wrap your component using the WithThemes
component:
import {WithThemes} from '@ebay/storybook-addon-themepicker';
storiesOf('MyComponent', module)
.add('with themes', () => (
<WithThemes themes={themeChoices}>
<MyComponent />
</WithThemes>
));
The themes
parameter passed to WithThemes
should be an array of objects, each containing a theme name
and the theme
itself:
const defaultTheme = {
borderColor: '#333',
backgroundColor: '#eee',
textColor: '#333'
};
const darkTheme = {
borderColor: '#777',
backgroundColor: '#333',
textColor: '#eee'
};
const themeChoices = [
{
name: 'Normal',
theme: defaultTheme
},
{
name: 'Dark Mode',
theme: darkTheme
}
];
The package exports the ThemeDescriptor
type for use with TypeScript. The above declaration of themeChoices
would
change to look like this in a TypeScript-based project:
import {ThemeDescriptor} from '@ebay/storybook-addon-themepicker';
// Your theme type:
type Theme = {
borderColor: string;
backgroundColor: string;
textColor: string;
};
// Your theme objects that implement your theme type:
export const defaultTheme: Theme = {
borderColor: '#333',
backgroundColor: '#eee',
textColor: '#333'
};
export const darkTheme: Theme = {
borderColor: '#777',
backgroundColor: '#333',
textColor: '#eee'
};
// ThemeDescriptor is parameterized by your theme type:
const themeChoices: Array<ThemeDescriptor<Theme>> = [
{
name: 'Normal',
theme: defaultTheme
},
{
name: 'Dark Mode',
theme: darkTheme
}
];
The github project comes with an example project that uses @ebay/storybook-addon-themepicker
. See the example's
README for instructions on how to build and run the example project.
Feel free to submit pull requests against this project.
Be sure to run tslint
on your code, and run the unit tests. To do so, simply run
yarn lint
yarn test
Copyright 2018-2019 eBay Inc.
Developer/Author: Frederik Goris
Use of this source code is governed by an MIT-style license that can be found in the LICENSE file or at https://opensource.org/licenses/MIT.
FAQs
Storybook addon for toggling between various emotion themes
We found that @ebay/storybook-addon-themepicker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 10 open source maintainers 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.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.