/* eslint-disable react-hooks/rules-of-hooks */
import React, { useEffect, useState } from 'react';
import { StoryMetaType, StoryType } from '@lg-tools/storybook-utils';
import { css } from '@leafygreen-ui/emotion';
import LeafyGreenProvider from '@leafygreen-ui/leafygreen-provider';
import { transitionDuration } from '@leafygreen-ui/tokens';
import { State } from '../SearchInput';
import { SearchInputContextProvider } from '../SearchInputContext';
import { SearchResult } from '../SearchResult';
import { SearchResultsMenu } from '.';
const demoChild = Search Result;
const meta: StoryMetaType = {
title: 'Components/Inputs/SearchInput/SearchResultsMenu',
component: SearchResultsMenu,
parameters: {
default: null,
generate: {
combineArgs: {
darkMode: [false, true],
children: [undefined, demoChild],
state: Object.values(State),
},
excludeCombinations: [
{
state: State.Loading,
children: demoChild,
},
],
decorator: (Instance, ctx) => {
const [open, setOpen] = useState(false);
useEffect(() => {
setOpen(true);
}, []);
const divRef = React.useRef(null);
return (
SearchInput Placeholder
);
},
},
},
};
export default meta;
export const Demo = () => {
const [open, setOpen] = useState(false);
useEffect(() => {
setOpen(true);
}, []);
const divRef = React.useRef(null);
return (
<>
SearchInput Placeholder
Example 1
Example 2
Example 3
>
);
};
Demo.parameters = {
chromatic: { disableSnapshot: true },
};
export const Generated: StoryType = () => <>>;
Generated.parameters = {
chromatic: {
delay: transitionDuration.slowest,
// This test is flaky
// FIXME: componentize & test the menu contents
disableSnapshot: true,
},
};