{"version":3,"sources":["../src/components/InteractionTag/InteractionTagPrimary/useInteractionTagPrimary.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useInteractionTagPrimaryBase_unstable } from '@fluentui/react-tags';\n\nimport type { InteractionTagPrimaryProps, InteractionTagPrimaryState } from './InteractionTagPrimary.types';\nimport { stringifyDataAttribute } from '../../../utils';\n\n/**\n * Returns the state for an InteractionTagPrimary component, given its props and ref.\n * The returned state can be modified with hooks before being passed to `renderInteractionTagPrimary`.\n */\nexport const useInteractionTagPrimary = (\n  props: InteractionTagPrimaryProps,\n  ref: React.Ref<HTMLButtonElement>,\n): InteractionTagPrimaryState => {\n  const state: InteractionTagPrimaryState = useInteractionTagPrimaryBase_unstable(props, ref);\n\n  /* eslint-disable react-hooks/immutability -- intentional: decorate base state with data-* attrs for styling */\n  state.root['data-disabled'] = stringifyDataAttribute(state.disabled);\n  state.root['data-selected'] = stringifyDataAttribute(state.selected);\n  state.root['data-has-secondary-action'] = stringifyDataAttribute(state.hasSecondaryAction);\n  /* eslint-enable react-hooks/immutability */\n\n  return state;\n};\n"],"names":["useInteractionTagPrimary","props","ref","state","useInteractionTagPrimaryBase_unstable","root","stringifyDataAttribute","disabled","selected","hasSecondaryAction"],"mappings":"AAAA;;;;;+BAYaA;;;eAAAA;;;2BATyC;uBAGf;AAMhC,MAAMA,2BAA2B,CACtCC,OACAC;IAEA,MAAMC,QAAoCC,IAAAA,gDAAqC,EAACH,OAAOC;IAEvF,6GAA6G,GAC7GC,MAAME,IAAI,CAAC,gBAAgB,GAAGC,IAAAA,6BAAsB,EAACH,MAAMI,QAAQ;IACnEJ,MAAME,IAAI,CAAC,gBAAgB,GAAGC,IAAAA,6BAAsB,EAACH,MAAMK,QAAQ;IACnEL,MAAME,IAAI,CAAC,4BAA4B,GAAGC,IAAAA,6BAAsB,EAACH,MAAMM,kBAAkB;IACzF,0CAA0C,GAE1C,OAAON;AACT"}