Files
Fluxup_PAP/node_modules/expo-router/build/native-tabs/common/elements.js
2026-03-10 16:18:05 +00:00

76 lines
2.9 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.NativeTabsBottomAccessory = exports.NativeTabsTriggerBadge = exports.NativeTabsTriggerPromiseIcon = exports.NativeTabsTriggerVectorIcon = exports.NativeTabsTriggerIcon = exports.NativeTabsTriggerLabel = void 0;
const primitives_1 = require("../../primitives");
exports.NativeTabsTriggerLabel = primitives_1.Label;
/**
* Renders an icon for the tab.
*
* Accepts various icon sources such as SF Symbols, xcasset images, drawable resources, material icons, or image sources.
*
* Acceptable props combinations:
* - `sf` and `drawable` - `sf` will be used for iOS icon, `drawable` for Android icon
* - `sf` and `src` - `sf` will be used for iOS icon, `src` for Android icon
* - `xcasset` and `drawable` - `xcasset` will be used for iOS icon, `drawable` for Android icon
* - `xcasset` and `md` - `xcasset` will be used for iOS icon, `md` for Android icon
* - `xcasset` and `src` - `xcasset` will be used for iOS icon, `src` for Android icon
* - `src` and `drawable` - `src` will be used for iOS icon, `drawable` for Android icon
* - `src` only - `src` will be used for both iOS and Android icons
*
* Priority on iOS: `sf` > `xcasset` > `src`. Priority on Android: `drawable` > `md` > `src`.
*
* @platform ios
* @platform android
*/
exports.NativeTabsTriggerIcon = primitives_1.Icon;
/**
* Helper component which can be used to load vector icons for `NativeTabs`.
*
* @example
* ```tsx
* import { NativeTabs } from 'expo-router/unstable-native-tabs';
* import MaterialCommunityIcons from '@expo/vector-icons/MaterialCommunityIcons';
*
* export default Layout(){
* return (
* <NativeTabs>
* <NativeTabs.Trigger name="index">
* <NativeTabs.Trigger.Icon src={<NativeTabs.Trigger.VectorIcon family={MaterialCommunityIcons} name="home" />} />
* </NativeTabs.Trigger>
* </NativeTabs>
* );
* }
* ```
*/
exports.NativeTabsTriggerVectorIcon = primitives_1.VectorIcon;
const NativeTabsTriggerPromiseIcon = function NativeTabsTriggerPromiseIcon(props) {
return null;
};
exports.NativeTabsTriggerPromiseIcon = NativeTabsTriggerPromiseIcon;
exports.NativeTabsTriggerBadge = primitives_1.Badge;
/**
* A [bottom accessory](https://developer.apple.com/documentation/uikit/uitabbarcontroller/bottomaccessory) for `NativeTabs` on iOS 26 and above.
*
* @example
* ```tsx
* import { NativeTabs } from 'expo-router/unstable-native-tabs';
*
* export default Layout(){
* return (
* <NativeTabs>
* <NativeTabs.BottomAccessory>
* <YourAccessoryComponent />
* </NativeTabs.BottomAccessory>
* <NativeTabs.Trigger name="index" />
* </NativeTabs>
* );
* }
* ```
*
* @platform iOS 26+
*/
const NativeTabsBottomAccessory = () => {
return null;
};
exports.NativeTabsBottomAccessory = NativeTabsBottomAccessory;
//# sourceMappingURL=elements.js.map