import Option from '../common/Option/Option.mjs';
import Switch from '../switch/Switch.mjs';
import { jsx } from 'react/jsx-runtime';

const stopPropagation = event => {
  if (event) {
    event.stopPropagation();
    event.preventDefault();
    event.nativeEvent?.stopImmediatePropagation?.();
  }
};
/**
 * @deprecated Use `<ListItem />` instead (run codemod to migrate: **`npx @wise/wds-codemods@latest list-item`**).
 * @deprecatedSince 46.104.0
 * @see [Source](../listItem/ListItem.tsx)
 * @see [Storybook](https://storybook.wise.design/?path=/docs/content-listitem--docs)
 * @see [Design docs](https://wise.design/components/list-item)
 * @see [Release notes](https://transferwise.atlassian.net/wiki/spaces/DS/pages/3647251055/List+Item+release+notes)
 */
const SwitchOption = ({
  checked,
  complex,
  content,
  disabled,
  id,
  media,
  onChange,
  title,
  showMediaCircle,
  showMediaAtAllSizes,
  isContainerAligned,
  'aria-label': ariaLabel
}) => {
  const sharedProps = {
    media,
    title,
    content,
    complex,
    disabled,
    showMediaCircle,
    showMediaAtAllSizes,
    isContainerAligned
  };
  const toggle = event => {
    stopPropagation(event);
    if (disabled) {
      return;
    }
    onChange(!checked);
  };
  return /*#__PURE__*/jsx(Option, {
    ...sharedProps,
    className: "np-switch-option",
    button: /*#__PURE__*/jsx(Switch, {
      id: id,
      checked: checked,
      disabled: disabled,
      "aria-label": ariaLabel,
      onClick: toggle
    }),
    onClick: toggle
  });
};

export { SwitchOption as default };
//# sourceMappingURL=SwitchOption.mjs.map
