{"version":3,"sources":["../src/components/CompoundButton/useCompoundButton.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useCompoundButtonBase_unstable } from '@fluentui/react-button';\n\nimport { stringifyDataAttribute } from '../../utils';\nimport type { CompoundButtonProps, CompoundButtonState } from './CompoundButton.types';\n\n/**\n * Returns the state for a CompoundButton component, given its props and ref.\n */\nexport const useCompoundButton = (\n  props: CompoundButtonProps,\n  ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): CompoundButtonState => {\n  const state: CompoundButtonState = useCompoundButtonBase_unstable(props, ref);\n  const hasSecondaryContent = Boolean(!state.iconOnly && state.secondaryContent);\n\n  // eslint-disable-next-line react-hooks/immutability\n  state.root['data-disabled'] = stringifyDataAttribute(state.disabled);\n  // eslint-disable-next-line react-hooks/immutability\n  state.root['data-disabled-focusable'] = stringifyDataAttribute(state.disabledFocusable);\n  // eslint-disable-next-line react-hooks/immutability\n  state.root['data-icon-only'] = stringifyDataAttribute(state.iconOnly);\n  // eslint-disable-next-line react-hooks/immutability\n  state.root['data-has-secondary-content'] = stringifyDataAttribute(hasSecondaryContent);\n\n  return state;\n};\n"],"names":["useCompoundButton","props","ref","state","useCompoundButtonBase_unstable","hasSecondaryContent","Boolean","iconOnly","secondaryContent","root","stringifyDataAttribute","disabled","disabledFocusable"],"mappings":"AAAA;;;;;+BAWaA;;;eAAAA;;;6BARkC;uBAER;AAMhC,MAAMA,oBAAoB,CAC/BC,OACAC;IAEA,MAAMC,QAA6BC,IAAAA,2CAA8B,EAACH,OAAOC;IACzE,MAAMG,sBAAsBC,QAAQ,CAACH,MAAMI,QAAQ,IAAIJ,MAAMK,gBAAgB;IAE7E,oDAAoD;IACpDL,MAAMM,IAAI,CAAC,gBAAgB,GAAGC,IAAAA,6BAAsB,EAACP,MAAMQ,QAAQ;IACnE,oDAAoD;IACpDR,MAAMM,IAAI,CAAC,0BAA0B,GAAGC,IAAAA,6BAAsB,EAACP,MAAMS,iBAAiB;IACtF,oDAAoD;IACpDT,MAAMM,IAAI,CAAC,iBAAiB,GAAGC,IAAAA,6BAAsB,EAACP,MAAMI,QAAQ;IACpE,oDAAoD;IACpDJ,MAAMM,IAAI,CAAC,6BAA6B,GAAGC,IAAAA,6BAAsB,EAACL;IAElE,OAAOF;AACT"}