Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
storybook-xstate-addon
Advanced tools
Storybook addon for displaying xstate inspector inside storybook
npm install -D @storybook/addons storybook-xstate-addon @xstate/inspect @xstate/react
To use this in storybook simply add addons: ["storybook-xstate-addon/preset"]
to your storybook config.
If you want to enable the inspector in all stories, set the following in your /.storybook/preview.js
file. With this setting on you can disable the inspector in certain stories
export const parameters = {
xstate: true,
};
To enable the inspector in a single story/stories file, set the xstate parameter to true or an options object.
// this will turn on the inspector for all stories in the current file
export default {
title: "Example",
parameters: {
xstate: true,
// this option is passed to the inspect function
xstateInspectOptions: {
url: 'https://stately.ai/viz?inspect',
serialize: null
}
},
};
// this turns the inspector on for only a single story
StoryComponent.parameters = {
xstate: true,
};
To assist with viewing larger state charts, you can pass the height
option in the xstate parameter to force the height of the inspector.
StoryComponent.parameters = {
xstate: {
height: "1000px",
},
};
Additionally, you can send events to a machine by id when it is registered by adding the xstate
parameter.
For more example usages see [./stories/Button.stories.tsx] and [./stories/Machines.stories.tsx].
StoryComponent.parameters = {
xstate: {
machine_id1: {
events: "event",
},
machine_id2: {
events: { type: "event" },
},
machine_id3: {
events: [{ type: "event1" }, { type: "event2" }],
},
machine_id4: {
events: (state) => "event",
},
machine_id5: {
events: ["event1", "event2"],
delay: 2.5e3, // milliseconds to delay before sending the next event
shouldRepeatEvents: true, // for looping event sequences
},
},
};
If you wish to use the Inspector as the main story itself, simply use the following snippet (uses react).
import { RenderMachine } from 'storybook-xstate-addon/RenderMachine';
export const MachinePreview = () => <RenderMachine machine={confirmMachine.withConfig({ ... })} events={[...events]} />;
FAQs
Storybook addon for displaying xstate inspector inside storybook
The npm package storybook-xstate-addon receives a total of 4,636 weekly downloads. As such, storybook-xstate-addon popularity was classified as popular.
We found that storybook-xstate-addon demonstrated a healthy version release cadence and project activity because the last version was released less than 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
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.