{"version":3,"sources":["../src/components/SplitButton/useSplitButton.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { slot } from '@fluentui/react-utilities';\nimport { useSplitButtonBase_unstable } from '@fluentui/react-button';\nimport { Button } from '../Button/Button';\nimport { MenuButton } from '../MenuButton/MenuButton';\nimport type { SplitButtonProps, SplitButtonState } from './SplitButton.types';\n\n/**\n * Returns the state for a SplitButton component, given its props and ref.\n *\n * Composes base behavior with headless Button and MenuButton slots without adding\n * SplitButton-level styling or state attributes.\n */\nexport const useSplitButton = (props: SplitButtonProps, ref: React.Ref<HTMLDivElement>): SplitButtonState => {\n  const baseState = useSplitButtonBase_unstable(props, ref);\n\n  const menuButtonShorthand = slot.optional(props.menuButton, {\n    defaultProps: {\n      ...baseState.menuButton,\n      disabledFocusable: baseState.disabledFocusable,\n      menuIcon: props.menuIcon,\n    },\n    renderByDefault: true,\n    elementType: MenuButton,\n  });\n  const primaryActionButtonShorthand = slot.optional(props.primaryActionButton, {\n    defaultProps: {\n      ...baseState.primaryActionButton,\n      disabledFocusable: baseState.disabledFocusable,\n      icon: props.icon,\n      iconPosition: baseState.iconPosition,\n    },\n    renderByDefault: true,\n    elementType: Button,\n  });\n\n  return {\n    ...baseState,\n    components: { root: 'div', menuButton: MenuButton, primaryActionButton: Button },\n    menuButton: menuButtonShorthand,\n    primaryActionButton: primaryActionButtonShorthand,\n  };\n};\n"],"names":["useSplitButton","props","ref","baseState","useSplitButtonBase_unstable","menuButtonShorthand","slot","optional","menuButton","defaultProps","disabledFocusable","menuIcon","renderByDefault","elementType","MenuButton","primaryActionButtonShorthand","primaryActionButton","icon","iconPosition","Button","components","root"],"mappings":"AAAA;;;;;+BAeaA;;;eAAAA;;;gCAZQ;6BACuB;wBACrB;4BACI;AASpB,MAAMA,iBAAiB,CAACC,OAAyBC;IACtD,MAAMC,YAAYC,IAAAA,wCAA2B,EAACH,OAAOC;IAErD,MAAMG,sBAAsBC,oBAAI,CAACC,QAAQ,CAACN,MAAMO,UAAU,EAAE;QAC1DC,cAAc;YACZ,GAAGN,UAAUK,UAAU;YACvBE,mBAAmBP,UAAUO,iBAAiB;YAC9CC,UAAUV,MAAMU,QAAQ;QAC1B;QACAC,iBAAiB;QACjBC,aAAaC,sBAAU;IACzB;IACA,MAAMC,+BAA+BT,oBAAI,CAACC,QAAQ,CAACN,MAAMe,mBAAmB,EAAE;QAC5EP,cAAc;YACZ,GAAGN,UAAUa,mBAAmB;YAChCN,mBAAmBP,UAAUO,iBAAiB;YAC9CO,MAAMhB,MAAMgB,IAAI;YAChBC,cAAcf,UAAUe,YAAY;QACtC;QACAN,iBAAiB;QACjBC,aAAaM,cAAM;IACrB;IAEA,OAAO;QACL,GAAGhB,SAAS;QACZiB,YAAY;YAAEC,MAAM;YAAOb,YAAYM,sBAAU;YAAEE,qBAAqBG,cAAM;QAAC;QAC/EX,YAAYH;QACZW,qBAAqBD;IACvB;AACF"}