import { Meta, StoryObj } from '@storybook/react';
import React from 'react';
import { NJAccordion } from './NJAccordion';
import { NJAccordionAction } from './NJAccordionAction';
import { NJAccordionActions } from './NJAccordionActions';
import { NJAccordionItem } from './NJAccordionItem';
import { NJAccordionItemContent } from './NJAccordionItemContent';
import { NJAccordionItemHeader } from './NJAccordionItemHeader';

/**
 * Represents a single action within the `NJAccordionActions` component.
 */
const meta: Meta<typeof NJAccordionAction> = {
  title: 'Components/Accordion/Subcomponents/Action',
  id: 'accordion-action',
  component: NJAccordionAction,
  parameters: {
    docs: {
      imports: [NJAccordion, NJAccordionActions, NJAccordionAction]
    }
  }
};

export default meta;

type Story = StoryObj<typeof meta>;

export const Basic: Story = {
  args: {
    label: 'Expand All',
    action: 'expand'
  },
  render: (props) => {
    return (
      <NJAccordion>
        <NJAccordionActions>
          <NJAccordionAction {...props} />
        </NJAccordionActions>
        <NJAccordionItem>
          <NJAccordionItemHeader>Header</NJAccordionItemHeader>
          <NJAccordionItemContent>Favere etiam ducunt ad fatalis vita.</NJAccordionItemContent>
        </NJAccordionItem>
        <NJAccordionItem>
          <NJAccordionItemHeader>Header</NJAccordionItemHeader>
          <NJAccordionItemContent>Favere etiam ducunt ad fatalis vita.</NJAccordionItemContent>
        </NJAccordionItem>
      </NJAccordion>
    );
  }
};
