Usage

Give a tab a title and platform icon

This type is used by Tab

tsx
import { Route, Router, Tab, Tabs, Text } from 'kuito';

function Discover() {
  return <Text padding={16}>Discover</Text>;
}

function Library() {
  return <Text padding={16}>Library</Text>;
}

export default function App() {
  return (
    <Router>
      <Tabs>
        <Tab name="discover" title="Discover" icon={{ ios: 'safari', android: 'explore' }}>
          <Route name="index" path="/" screen={Discover} title="Discover" />
        </Tab>
        <Tab
          name="library"
          title="Library"
          icon={{ ios: 'books.vertical', android: 'library_music' }}
        >
          <Route name="library" path="/library" screen={Library} title="Library" />
        </Tab>
      </Tabs>
    </Router>
  );
}

Type declaration

ts
export interface TabProps {
  name: string;
  title: string;
  /**
   * The platform's symbol name: an SF Symbol on iOS, a Material Symbol on
   * Android. `{ ios, android }` names one per platform; `{ uri }` is any image
   * (docs/navigation.md).
   */
  icon?: TabIcon;
  children: KuitoNode;
}

Members 4

NameTypeRequiredDescription
namestringYes—
titlestringYes—
iconTabIconNoThe platform's symbol name: an SF Symbol on iOS, a Material Symbol on Android. { ios, android } names one per platform; { uri } is any image (docs/navigation.md).
childrenKuitoNodeYes—
Generated from the public TypeScript declarations: signatures, props and defaults come from the checked source, descriptions from its JSDoc. No defaults are invented.