{"version":3,"sources":["../src/components/Nav/NavDrawer/useNavDrawer.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { slot } from '@fluentui/react-utilities';\n\nimport { Drawer } from '../../Drawer';\nimport { useNav } from '../useNav';\nimport type { NavDrawerProps, NavDrawerState } from './NavDrawer.types';\n\n/**\n * Create the state required to render NavDrawer.\n *\n * Combines headless Nav state with a headless Drawer as root.\n *\n * @param props - props from this instance of NavDrawer\n * @param ref - reference to root HTMLElement of NavDrawer\n */\nexport const useNavDrawer = (props: NavDrawerProps, ref: React.Ref<HTMLElement>): NavDrawerState => {\n  const navState = useNav(props, ref as React.Ref<HTMLDivElement>);\n\n  return {\n    ...navState,\n    components: {\n      root: Drawer,\n    },\n    root: slot.always(\n      { ref: ref as React.Ref<HTMLDivElement>, ...props },\n      {\n        elementType: Drawer,\n      },\n    ),\n  };\n};\n"],"names":["useNavDrawer","props","ref","navState","useNav","components","root","Drawer","slot","always","elementType"],"mappings":"AAAA;;;;;+BAiBaA;;;eAAAA;;;gCAdQ;wBAEE;wBACA;AAWhB,MAAMA,eAAe,CAACC,OAAuBC;IAClD,MAAMC,WAAWC,IAAAA,cAAM,EAACH,OAAOC;IAE/B,OAAO;QACL,GAAGC,QAAQ;QACXE,YAAY;YACVC,MAAMC,cAAM;QACd;QACAD,MAAME,oBAAI,CAACC,MAAM,CACf;YAAEP,KAAKA;YAAkC,GAAGD,KAAK;QAAC,GAClD;YACES,aAAaH,cAAM;QACrB;IAEJ;AACF"}