diff --git a/packages/grafana-ui/src/components/ColorPicker/SpectrumPalette.story.tsx b/packages/grafana-ui/src/components/ColorPicker/SpectrumPalette.story.tsx
index 8b50293f658..4ba6ad3d9ed 100644
--- a/packages/grafana-ui/src/components/ColorPicker/SpectrumPalette.story.tsx
+++ b/packages/grafana-ui/src/components/ColorPicker/SpectrumPalette.story.tsx
@@ -1,13 +1,14 @@
-import React from 'react';
+import { action } from '@storybook/addon-actions';
+import { useArgs } from '@storybook/client-api';
+import { Meta, Story } from '@storybook/react';
-import { UseState } from '../../utils/storybook/UseState';
import { withCenteredStory } from '../../utils/storybook/withCenteredStory';
import { renderComponentWithTheme } from '../../utils/storybook/withTheme';
import mdx from './ColorPicker.mdx';
-import SpectrumPalette from './SpectrumPalette';
+import SpectrumPalette, { SpectrumPaletteProps } from './SpectrumPalette';
-export default {
+const meta: Meta = {
title: 'Pickers and Editors/ColorPicker/Palettes/SpectrumPalette',
component: SpectrumPalette,
decorators: [withCenteredStory],
@@ -15,15 +16,24 @@ export default {
docs: {
page: mdx,
},
+ controls: {
+ exclude: ['onChange'],
+ },
+ },
+ args: {
+ color: 'red',
},
};
-export const simple = () => {
- return (
-
- {(selectedColor, updateSelectedColor) => {
- return renderComponentWithTheme(SpectrumPalette, { color: selectedColor, onChange: updateSelectedColor });
- }}
-
- );
+export const Simple: Story = ({ color }) => {
+ const [, updateArgs] = useArgs();
+ return renderComponentWithTheme(SpectrumPalette, {
+ color,
+ onChange: (color: string) => {
+ action('Color changed')(color);
+ updateArgs({ color });
+ },
+ });
};
+
+export default meta;