{"version":3,"file":"StackToolbar.js","names":[],"sources":["esm/layouts/stack-utils/StackToolbar.js"],"sourcesContent":["import { useEffect, useMemo } from \"react\";\nimport { useNavigation } from \"@react-navigation/native\";\nimport { NAVIGATOR_CONFIG } from \"../../headless/children\";\nimport { PLATFORM } from \"../../utils/platform\";\nimport {\n  TOOLBAR_KIND,\n  appendStackToolbarPropsToOptions,\n  isToolbarKind\n} from \"./stackToolbarDescriptors\";\nimport { BottomToolbarHost } from \"./StackToolbarBottomHost\";\nimport { appendStackToolbarPropsToOptions as appendStackToolbarPropsToOptions2 } from \"./stackToolbarDescriptors\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction mark(component, kind) {\n  return Object.assign(component, { [NAVIGATOR_CONFIG]: true, [TOOLBAR_KIND]: kind });\n}\nfunction StackToolbarComponent(props) {\n  const placement = props.placement ?? \"bottom\";\n  if (placement === \"bottom\") {\n    if (PLATFORM !== \"ios\") return null;\n    return /* @__PURE__ */ jsx(BottomToolbarHost, { children: props.children });\n  }\n  return /* @__PURE__ */ jsx(StackToolbarHeaderOptions, { props });\n}\nmark(StackToolbarComponent, \"toolbar\");\nfunction StackToolbarHeaderOptions({ props }) {\n  const navigation = useNavigation();\n  const options = useMemo(\n    () => appendStackToolbarPropsToOptions({}, props),\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n    [props.children, props.placement, props.asChild]\n  );\n  useEffect(() => {\n    navigation.setOptions(options);\n  }, [navigation, options]);\n  return null;\n}\nfunction StackToolbarButton(_props) {\n  return null;\n}\nmark(StackToolbarButton, \"button\");\nfunction StackToolbarMenu(_props) {\n  return null;\n}\nmark(StackToolbarMenu, \"menu\");\nfunction StackToolbarMenuAction(_props) {\n  return null;\n}\nmark(StackToolbarMenuAction, \"menuAction\");\nfunction StackToolbarSpacer(_props) {\n  return null;\n}\nmark(StackToolbarSpacer, \"spacer\");\nfunction StackToolbarSearchBarSlot(_props) {\n  return null;\n}\nmark(StackToolbarSearchBarSlot, \"searchBarSlot\");\nfunction StackToolbarLabel(_props) {\n  return null;\n}\nmark(StackToolbarLabel, \"label\");\nfunction StackToolbarIcon(_props) {\n  return null;\n}\nmark(StackToolbarIcon, \"icon\");\nfunction StackToolbarBadge(_props) {\n  return null;\n}\nmark(StackToolbarBadge, \"badge\");\nexport {\n  StackToolbarBadge,\n  StackToolbarButton,\n  StackToolbarComponent,\n  StackToolbarIcon,\n  StackToolbarLabel,\n  StackToolbarMenu,\n  StackToolbarMenuAction,\n  StackToolbarSearchBarSlot,\n  StackToolbarSpacer,\n  appendStackToolbarPropsToOptions2 as appendStackToolbarPropsToOptions,\n  isToolbarKind\n};\n//# sourceMappingURL=StackToolbar.js.map\n"],"mappings":";;;;;;;;;AAYA,SAAS,KAAK,WAAW,MAAM;CAC7B,OAAO,OAAO,OAAO,WAAW;GAAG,mBAAmB;GAAO,eAAe;CAAK,CAAC;AACpF;AACA,SAAS,sBAAsB,OAAO;CACpC,MAAM,YAAY,MAAM,aAAa;CACrC,IAAI,cAAc,UAAU;EAC1B,IAAI,aAAa,OAAO,OAAO;EAC/B,OAAuB,oBAAI,mBAAmB,EAAE,UAAU,MAAM,SAAS,CAAC;CAC5E;CACA,OAAuB,oBAAI,2BAA2B,EAAE,MAAM,CAAC;AACjE;AACA,KAAK,uBAAuB,SAAS;AACrC,SAAS,0BAA0B,EAAE,SAAS;CAC5C,MAAM,aAAa,cAAc;CACjC,MAAM,UAAU,cACR,iCAAiC,CAAC,GAAG,KAAK,GAEhD;EAAC,MAAM;EAAU,MAAM;EAAW,MAAM;CAAO,CACjD;CACA,gBAAgB;EACd,WAAW,WAAW,OAAO;CAC/B,GAAG,CAAC,YAAY,OAAO,CAAC;CACxB,OAAO;AACT;AACA,SAAS,mBAAmB,QAAQ;CAClC,OAAO;AACT;AACA,KAAK,oBAAoB,QAAQ;AACjC,SAAS,iBAAiB,QAAQ;CAChC,OAAO;AACT;AACA,KAAK,kBAAkB,MAAM;AAC7B,SAAS,uBAAuB,QAAQ;CACtC,OAAO;AACT;AACA,KAAK,wBAAwB,YAAY;AACzC,SAAS,mBAAmB,QAAQ;CAClC,OAAO;AACT;AACA,KAAK,oBAAoB,QAAQ;AACjC,SAAS,0BAA0B,QAAQ;CACzC,OAAO;AACT;AACA,KAAK,2BAA2B,eAAe;AAC/C,SAAS,kBAAkB,QAAQ;CACjC,OAAO;AACT;AACA,KAAK,mBAAmB,OAAO;AAC/B,SAAS,iBAAiB,QAAQ;CAChC,OAAO;AACT;AACA,KAAK,kBAAkB,MAAM;AAC7B,SAAS,kBAAkB,QAAQ;CACjC,OAAO;AACT;AACA,KAAK,mBAAmB,OAAO"}