{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "esuiss-rn-stylesheet",
  "homepage": "https://suiss.app/ui",
  "items": [
    {
      "name": "accordion",
      "type": "registry:ui",
      "title": "Accordion",
      "description": "A vertically stacked set of headings that each reveal a section of content.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-accordion",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/accordion.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/accordion"
        }
      }
    },
    {
      "name": "alert-dialog",
      "type": "registry:ui",
      "title": "Alert Dialog",
      "description": "A modal dialog that interrupts the user to confirm an important action or acknowledge information.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-screens",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/primitives-alert-dialog",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/alert-dialog.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/alert-dialog"
        }
      }
    },
    {
      "name": "alert-sheet",
      "type": "registry:ui",
      "title": "Alert Sheet",
      "description": "An action sheet that slides up from the bottom of the screen to confirm or choose an action.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-alert-dialog",
        "@esuiss-rn/primitives-dialog",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/alert-sheet.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/alert-sheet"
        }
      }
    },
    {
      "name": "alert",
      "type": "registry:ui",
      "title": "Alert",
      "description": "A static callout that draws attention to an important message without interrupting the user.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/alert.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/alert"
        }
      }
    },
    {
      "name": "amount-input",
      "type": "registry:ui",
      "title": "Amount Input",
      "description": "A large, locale-formatted money display with an on-screen keypad for entering an amount.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/keypad",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/amount-input.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/amount-input"
        }
      }
    },
    {
      "name": "animated-view",
      "type": "registry:ui",
      "title": "Animated View",
      "description": "An animated view or pressable for entering, exiting and layout animations.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/animated-view.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "aspect-ratio",
      "type": "registry:ui",
      "title": "Aspect Ratio",
      "description": "A container that keeps its content at a fixed width-to-height ratio.",
      "registryDependencies": [
        "@esuiss-rn/primitives-aspect-ratio"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/aspect-ratio.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/aspect-ratio"
        }
      }
    },
    {
      "name": "attachment",
      "type": "registry:ui",
      "title": "Attachment",
      "description": "A compact file card that shows a document or image with its name, details, upload state and actions.",
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-progress",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/progress",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/attachment.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/attachment"
        }
      }
    },
    {
      "name": "avatar",
      "type": "registry:ui",
      "title": "Avatar",
      "description": "A circular image that represents a person, with initials or an icon when no image is available.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-avatar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/avatar.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/avatar"
        }
      }
    },
    {
      "name": "badge",
      "type": "registry:ui",
      "title": "Badge",
      "description": "A small inline label for status, counts or metadata.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/badge.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/badge"
        }
      }
    },
    {
      "name": "bottom-bar",
      "type": "registry:ui",
      "title": "Bottom Bar",
      "description": "A bar pinned to the bottom of a screen for primary actions, which rises above the keyboard.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/primitives-keyboard",
        "@esuiss-rn/screen",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/bottom-bar.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/bottom-bar"
        }
      }
    },
    {
      "name": "bubble",
      "type": "registry:ui",
      "title": "Bubble",
      "description": "A chat-style message bubble with variants, alignment, a tail and optional reactions.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/bubble.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/bubble"
        }
      }
    },
    {
      "name": "button-group",
      "type": "registry:ui",
      "title": "Button Group",
      "description": "A container that joins related buttons, inputs and menus into a single connected control.",
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/separator",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/button-group.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/button-group"
        }
      }
    },
    {
      "name": "button",
      "type": "registry:ui",
      "title": "Button",
      "description": "A pill-shaped button that triggers an action, with variants for every level of emphasis.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/button.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/button"
        }
      }
    },
    {
      "name": "calendar",
      "type": "registry:ui",
      "title": "Calendar",
      "description": "A month-grid date picker for selecting a single date, several dates or a date range.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-calendar",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/select",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/calendar.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/calendar"
        }
      }
    },
    {
      "name": "card",
      "type": "registry:ui",
      "title": "Card",
      "description": "A raised container that groups related content and actions about a single subject.",
      "registryDependencies": [
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/card.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/card"
        }
      }
    },
    {
      "name": "carousel",
      "type": "registry:ui",
      "title": "Carousel",
      "description": "A swipeable track of slides with buttons, dots and optional autoplay, built on Embla Carousel.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-carousel",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/carousel.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/carousel"
        }
      }
    },
    {
      "name": "chart",
      "type": "registry:ui",
      "title": "Chart",
      "description": "Themed building blocks for Recharts charts, with a shared color config, tooltip and legend.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/chart.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/chart"
        }
      }
    },
    {
      "name": "checkbox",
      "type": "registry:ui",
      "title": "Checkbox",
      "description": "A control that lets people turn a single option on or off.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-checkbox",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/checkbox"
        }
      }
    },
    {
      "name": "chip",
      "type": "registry:ui",
      "title": "Chip",
      "description": "A compact, selectable pill for filters and tags, with an optional icon and remove button.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-toggle",
        "@esuiss-rn/primitives-toggle-group",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/chip.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/chip"
        }
      }
    },
    {
      "name": "code-block",
      "type": "registry:ui",
      "title": "Code Block",
      "description": "A surface for code, terminal output and diffs, with copy, line numbers, line states and streaming syntax highlighting.",
      "dependencies": [
        "expo-clipboard",
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/code-block.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/code-block"
        }
      }
    },
    {
      "name": "collapsible",
      "type": "registry:ui",
      "title": "Collapsible",
      "description": "A section that people can expand and collapse to show or hide its content.",
      "registryDependencies": [
        "@esuiss-rn/primitives-collapsible"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/collapsible.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/collapsible"
        }
      }
    },
    {
      "name": "combobox",
      "type": "registry:ui",
      "title": "Combobox",
      "description": "A text input with a filterable list of options, for choosing one or more values by typing.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-combobox",
        "@esuiss-rn/primitives-field",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/combobox.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/combobox"
        }
      }
    },
    {
      "name": "context-menu",
      "type": "registry:ui",
      "title": "Context Menu",
      "description": "A menu of actions that opens at the pointer when people right-click an area.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-context-menu",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/context-menu.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/context-menu"
        }
      }
    },
    {
      "name": "dialog",
      "type": "registry:ui",
      "title": "Dialog",
      "description": "A modal window that appears above the page to focus people on a task or message.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-dialog",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/dialog.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/dialog"
        }
      }
    },
    {
      "name": "drawer",
      "type": "registry:ui",
      "title": "Drawer",
      "description": "A panel that slides in from an edge of the screen and can be dismissed with a swipe.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-drawer",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/drawer"
        }
      }
    },
    {
      "name": "dropdown-menu",
      "type": "registry:ui",
      "title": "Dropdown Menu",
      "description": "A menu of actions or options that opens from a button.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-menu",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/dropdown-menu.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/dropdown-menu"
        }
      }
    },
    {
      "name": "empty",
      "type": "registry:ui",
      "title": "Empty",
      "description": "A placeholder that explains why a view has no content and what people can do next.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/empty.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/empty"
        }
      }
    },
    {
      "name": "fab",
      "type": "registry:ui",
      "title": "FAB",
      "description": "A floating action button pinned to the bottom corner, with an optional label and speed-dial actions.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/fab.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/fab"
        }
      }
    },
    {
      "name": "field",
      "type": "registry:ui",
      "title": "Field",
      "description": "Building blocks for form fields that pair controls with labels, descriptions and error messages.",
      "registryDependencies": [
        "@esuiss-rn/primitives-field",
        "@esuiss-rn/primitives-fieldset",
        "@esuiss-rn/separator",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/field.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/field"
        }
      }
    },
    {
      "name": "haptics-expo",
      "type": "registry:ui",
      "title": "Haptics Expo",
      "description": "Plays the haptic feedback of the components through expo-haptics.",
      "dependencies": [
        "expo-haptics"
      ],
      "registryDependencies": [
        "@esuiss-rn/haptics"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/haptics-expo.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "haptics",
      "type": "registry:ui",
      "title": "Haptics",
      "description": "A provider that connects components to your haptics library, with a hook to trigger feedback.",
      "registryDependencies": [
        "@esuiss-rn/primitives-haptics"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/haptics.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/haptics"
        }
      }
    },
    {
      "name": "header",
      "type": "registry:ui",
      "title": "Header",
      "description": "A navigation bar with a back button, a centered title, actions and an optional large title that collapses on scroll.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/header.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/header"
        }
      }
    },
    {
      "name": "icon",
      "type": "registry:ui",
      "title": "Icon",
      "description": "Renders a Phosphor icon with size and color set through class names.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/icon.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/icon"
        }
      }
    },
    {
      "name": "input-accessory-bar",
      "type": "registry:ui",
      "title": "Input Accessory Bar",
      "description": "A toolbar above the keyboard with previous, next and done buttons for moving through form fields.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-keyboard",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/input-accessory-bar.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/input-accessory-bar"
        }
      }
    },
    {
      "name": "input-group",
      "type": "registry:ui",
      "title": "Input Group",
      "description": "A text field with icons, text, buttons or keyboard hints attached inside its border.",
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/primitives-field",
        "@esuiss-rn/text",
        "@esuiss-rn/textarea",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/input-group.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/input-group"
        }
      }
    },
    {
      "name": "input-otp",
      "type": "registry:ui",
      "title": "Input OTP",
      "description": "A segmented field for entering one-time passcodes, one character per slot.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-otp-field",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/input-otp.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/input-otp"
        }
      }
    },
    {
      "name": "input",
      "type": "registry:ui",
      "title": "Input",
      "description": "A single-line text field for entering and editing short values.",
      "registryDependencies": [
        "@esuiss-rn/primitives-input",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/input.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/input"
        }
      }
    },
    {
      "name": "item",
      "type": "registry:ui",
      "title": "Item",
      "description": "A flexible row that pairs media, a title, a description and actions, for lists and settings.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/item.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/item"
        }
      }
    },
    {
      "name": "keyboard-scroll-view",
      "type": "registry:ui",
      "title": "Keyboard Scroll View",
      "description": "A scroll view that keeps the focused text field visible above the on-screen keyboard.",
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-keyboard"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/keyboard-scroll-view.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/keyboard-scroll-view"
        }
      }
    },
    {
      "name": "keypad",
      "type": "registry:ui",
      "title": "Keypad",
      "description": "A numeric keypad with round digit keys, a delete key and an optional decimal or biometric key.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/keypad.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/keypad"
        }
      }
    },
    {
      "name": "label",
      "type": "registry:ui",
      "title": "Label",
      "description": "An accessible text label that names a form control.",
      "registryDependencies": [
        "@esuiss-rn/primitives-label",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/label.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/label"
        }
      }
    },
    {
      "name": "marker",
      "type": "registry:ui",
      "title": "Marker",
      "description": "An inline annotation for timelines and conversations, such as a date divider or system event.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/marker.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/marker"
        }
      }
    },
    {
      "name": "message-scroller",
      "type": "registry:ui",
      "title": "Message Scroller",
      "description": "A scroll container for chat transcripts that opens at the latest message and keeps scroll position stable.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/message-scroller.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/message-scroller"
        }
      }
    },
    {
      "name": "message",
      "type": "registry:ui",
      "title": "Message",
      "description": "Lays out a single chat message with an optional avatar, header and footer.",
      "registryDependencies": [
        "@esuiss-rn/bubble",
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/message.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/message"
        }
      }
    },
    {
      "name": "page-indicator",
      "type": "registry:ui",
      "title": "Page Indicator",
      "description": "A row of dots that shows the current page in a pager or carousel, with an elongated dot for the active page.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/page-indicator.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/page-indicator"
        }
      }
    },
    {
      "name": "pin-pad",
      "type": "registry:ui",
      "title": "Pin Pad",
      "description": "A passcode entry screen element with a row of dots and a numeric keypad.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/keypad",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/pin-pad.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/pin-pad"
        }
      }
    },
    {
      "name": "popover",
      "type": "registry:ui",
      "title": "Popover",
      "description": "A floating panel anchored to a trigger, for supplementary content and lightweight controls.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-screens",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/primitives-popover",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/popover.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/popover"
        }
      }
    },
    {
      "name": "progress",
      "type": "registry:ui",
      "title": "Progress",
      "description": "A horizontal bar that shows the completion of a task.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-progress",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/progress.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/progress"
        }
      }
    },
    {
      "name": "qr-scanner",
      "type": "registry:ui",
      "title": "QR Scanner",
      "description": "A camera overlay with a rounded cut-out scan frame, rounded corner brackets, an optional scan line and an optional flashlight toggle.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/qr-scanner.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/qr-scanner"
        }
      }
    },
    {
      "name": "questionnaire",
      "type": "registry:ui",
      "title": "Questionnaire",
      "description": "A step-by-step form that shows one question at a time, with validation, skipping and keyboard shortcuts.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/questionnaire.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/questionnaire"
        }
      }
    },
    {
      "name": "radio-group",
      "type": "registry:ui",
      "title": "Radio Group",
      "description": "A set of radio buttons where only one option can be selected at a time.",
      "registryDependencies": [
        "@esuiss-rn/primitives-radio",
        "@esuiss-rn/primitives-radio-group",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/radio-group"
        }
      }
    },
    {
      "name": "screen",
      "type": "registry:ui",
      "title": "Screen",
      "description": "A full-screen container that pads for safe area insets and sets the status bar style.",
      "dependencies": [
        "react-native-safe-area-context"
      ],
      "registryDependencies": [
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/screen.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/screen"
        }
      }
    },
    {
      "name": "select",
      "type": "registry:ui",
      "title": "Select",
      "description": "A button that opens a list of options so people can pick one value.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-field",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-select",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/select.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/select"
        }
      }
    },
    {
      "name": "separator",
      "type": "registry:ui",
      "title": "Separator",
      "description": "A thin line that visually divides content, horizontally or vertically.",
      "registryDependencies": [
        "@esuiss-rn/primitives-separator",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/separator.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/separator"
        }
      }
    },
    {
      "name": "sheet",
      "type": "registry:ui",
      "title": "Sheet",
      "description": "A panel that slides in from an edge of the screen over the page.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-drawer",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/sheet.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/sheet"
        }
      }
    },
    {
      "name": "signature-pad",
      "type": "registry:ui",
      "title": "Signature Pad",
      "description": "A drawing area that captures a handwritten signature as strokes and can export it as an SVG string.",
      "dependencies": [
        "react-native-gesture-handler",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/signature-pad.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/signature-pad"
        }
      }
    },
    {
      "name": "skeleton",
      "type": "registry:ui",
      "title": "Skeleton",
      "description": "A pulsing placeholder block that stands in for content while it loads.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/skeleton.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/skeleton"
        }
      }
    },
    {
      "name": "slider",
      "type": "registry:ui",
      "title": "Slider",
      "description": "A track with one or more draggable thumbs for choosing a value or range.",
      "registryDependencies": [
        "@esuiss-rn/primitives-slider",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/slider.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/slider"
        }
      }
    },
    {
      "name": "spinner",
      "type": "registry:ui",
      "title": "Spinner",
      "description": "An eight-spoke activity indicator that shows an indeterminate wait.",
      "registryDependencies": [
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/spinner.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/spinner"
        }
      }
    },
    {
      "name": "switch",
      "type": "registry:ui",
      "title": "Switch",
      "description": "A toggle control that turns a single setting on or off.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-switch",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/switch.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/switch"
        }
      }
    },
    {
      "name": "tab-bar",
      "type": "registry:ui",
      "title": "Tab Bar",
      "description": "A floating bottom navigation bar whose overflow and extra sections expand from a More button.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-safe-area-context",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-tabs",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/tab-bar.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/tab-bar"
        }
      }
    },
    {
      "name": "tabs",
      "type": "registry:ui",
      "title": "Tabs",
      "description": "A set of tabs that switches between panels of related content in the same place.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-tabs",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/tabs.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/tabs"
        }
      }
    },
    {
      "name": "text",
      "type": "registry:ui",
      "title": "Text",
      "description": "Styled text with typography variants for headings, body copy, quotes, code and captions.",
      "registryDependencies": [
        "@esuiss-rn/primitives-font",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/text.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/text"
        }
      }
    },
    {
      "name": "textarea",
      "type": "registry:ui",
      "title": "Textarea",
      "description": "A multi-line text field that grows with its content, with an optional resize handle.",
      "registryDependencies": [
        "@esuiss-rn/primitives-input",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/textarea.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/textarea"
        }
      }
    },
    {
      "name": "theme",
      "type": "registry:ui",
      "title": "Theme",
      "description": "A theme provider with a light, dark and system toggle and an animated switch between them.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/primitives-toggle",
        "@esuiss-rn/primitives-toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/theme.ts",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      }
    },
    {
      "name": "toast",
      "type": "registry:ui",
      "title": "Toast",
      "description": "Brief, stacked notifications that appear at the bottom of the screen and dismiss themselves.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-toast",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/toast.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/toast"
        }
      }
    },
    {
      "name": "toggle-group",
      "type": "registry:ui",
      "title": "Toggle Group",
      "description": "A set of toggle buttons for choosing one or several related options, including segmented controls.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-toggle",
        "@esuiss-rn/primitives-toggle-group",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/toggle-group.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/toggle-group"
        }
      }
    },
    {
      "name": "toggle",
      "type": "registry:ui",
      "title": "Toggle",
      "description": "A two-state button that stays pressed until it's pressed again.",
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-toggle",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/toggle.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/toggle"
        }
      }
    },
    {
      "name": "trace",
      "type": "registry:ui",
      "title": "Trace",
      "description": "Rows for the steps an agent takes: reasoning, tool calls, sources, plans and file edits.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-collapsible",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/trace.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/trace"
        }
      }
    },
    {
      "name": "wheel-picker",
      "type": "registry:ui",
      "title": "Wheel Picker",
      "description": "A scrolling, 3D-curved wheel of options, like the iOS picker, for choosing values such as dates and times.",
      "registryDependencies": [
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/primitives-wheel-picker",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/wheel-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/wheel-picker"
        }
      }
    },
    {
      "name": "widget",
      "type": "registry:ui",
      "title": "Widget",
      "description": "A rounded card in the style of home screen widgets, with fixed sizes and optional drag-to-resize.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/widget.tsx",
          "type": "registry:ui"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/components/widget"
        }
      }
    },
    {
      "name": "action-bar",
      "type": "registry:component",
      "title": "Action Bar",
      "description": "A row of menus that renders as a menubar on desktop and a single More actions sheet on mobile.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/alert-sheet",
        "@esuiss-rn/button",
        "@esuiss-rn/drawer",
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/action-bar.tsx",
          "type": "registry:component",
          "target": "@components/patterns/action-bar.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/action-bar"
        }
      }
    },
    {
      "name": "confirm",
      "type": "registry:component",
      "title": "Confirm",
      "description": "A confirmation prompt that opens as an alert dialog on desktop and an action sheet on mobile.",
      "registryDependencies": [
        "@esuiss-rn/alert-sheet"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/confirm.tsx",
          "type": "registry:component",
          "target": "@components/patterns/confirm.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/confirm"
        }
      }
    },
    {
      "name": "context-actions",
      "type": "registry:component",
      "title": "Context Actions",
      "description": "Actions for an element that open as a context menu on right click, or an action sheet on long press on mobile.",
      "registryDependencies": [
        "@esuiss-rn/alert-sheet"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/context-actions.tsx",
          "type": "registry:component",
          "target": "@components/patterns/context-actions.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/context-actions"
        }
      }
    },
    {
      "name": "date-picker",
      "type": "registry:component",
      "title": "Date Picker",
      "description": "A date field that opens a calendar popover on desktop and wheel pickers in a drawer on mobile.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/drawer",
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/wheel-picker"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/date-picker.tsx",
          "type": "registry:component",
          "target": "@components/patterns/date-picker.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/date-picker"
        }
      }
    },
    {
      "name": "paged-list",
      "type": "registry:component",
      "title": "Paged List",
      "description": "A list that pages through items with numbered pagination on desktop and a Load more button on mobile.",
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/text"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/paged-list.tsx",
          "type": "registry:component",
          "target": "@components/patterns/paged-list.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/paged-list"
        }
      }
    },
    {
      "name": "picker",
      "type": "registry:component",
      "title": "Picker",
      "description": "A single-choice picker that renders a custom Select on desktop and a native select on mobile.",
      "registryDependencies": [
        "@esuiss-rn/select"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/picker.tsx",
          "type": "registry:component",
          "target": "@components/patterns/picker.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/picker"
        }
      }
    },
    {
      "name": "preview",
      "type": "registry:component",
      "title": "Preview",
      "description": "A link preview that shows a hover card on desktop and a drawer on mobile.",
      "registryDependencies": [
        "@esuiss-rn/drawer",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/preview.tsx",
          "type": "registry:component",
          "target": "@components/patterns/preview.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/preview"
        }
      }
    },
    {
      "name": "search-picker",
      "type": "registry:component",
      "title": "Search Picker",
      "description": "A searchable single-choice picker that renders a Combobox on desktop and a search drawer on mobile.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/drawer",
        "@esuiss-rn/icon",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/search-picker.tsx",
          "type": "registry:component",
          "target": "@components/patterns/search-picker.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/search-picker"
        }
      }
    },
    {
      "name": "split-view",
      "type": "registry:component",
      "title": "Split View",
      "description": "A two- or three-column sidebar, list and detail layout that becomes a push navigation stack on mobile.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/split-view.tsx",
          "type": "registry:component",
          "target": "@components/patterns/split-view.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/split-view"
        }
      }
    },
    {
      "name": "table-list",
      "type": "registry:component",
      "title": "Table List",
      "description": "Tabular data that renders as a table on desktop and a grouped list on mobile.",
      "registryDependencies": [
        "@esuiss-rn/item",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/patterns/table-list.tsx",
          "type": "registry:component",
          "target": "@components/patterns/table-list.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/patterns/table-list"
        }
      }
    },
    {
      "name": "card-stack",
      "type": "registry:component",
      "title": "Card Stack",
      "description": "A deck of cards the user swipes left or right one at a time, with buttons, undo and an empty state.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/card-stack.tsx",
          "type": "registry:component",
          "target": "@components/interactions/card-stack.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/card-stack"
        }
      }
    },
    {
      "name": "image-viewer",
      "type": "registry:component",
      "title": "Image Viewer",
      "description": "A full-screen photo viewer with swipe paging, pinch and double-tap zoom, and swipe down to close.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-image-viewer",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/image-viewer.tsx",
          "type": "registry:component",
          "target": "@components/interactions/image-viewer.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/image-viewer"
        }
      }
    },
    {
      "name": "island",
      "type": "registry:component",
      "title": "Island",
      "description": "A floating pill at the top of the screen that shows live activities and brief notifications, like the Dynamic Island.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/island.tsx",
          "type": "registry:component",
          "target": "@components/interactions/island.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/island"
        }
      }
    },
    {
      "name": "otp-autofill",
      "type": "registry:component",
      "title": "OTP Autofill",
      "description": "A one-time code field that offers an incoming code, fills it digit by digit, and verifies it automatically.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/input-otp",
        "@esuiss-rn/primitives-keyboard",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/otp-autofill.tsx",
          "type": "registry:component",
          "target": "@components/interactions/otp-autofill.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/otp-autofill"
        }
      }
    },
    {
      "name": "preview-menu",
      "type": "registry:component",
      "title": "Preview Menu",
      "description": "A context menu that lifts the pressed item into an enlarged preview above its actions, like iOS context menus.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-screens",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-preview-menu",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/preview-menu.tsx",
          "type": "registry:component",
          "target": "@components/interactions/preview-menu.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/preview-menu"
        }
      }
    },
    {
      "name": "pull-to-refresh",
      "type": "registry:component",
      "title": "Pull to Refresh",
      "description": "A scroll container that refreshes its content when the user pulls down from the top.",
      "registryDependencies": [
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/pull-to-refresh.tsx",
          "type": "registry:component",
          "target": "@components/interactions/pull-to-refresh.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/pull-to-refresh"
        }
      }
    },
    {
      "name": "reorder-list",
      "type": "registry:component",
      "title": "Reorder List",
      "description": "A list whose rows are dragged by a handle to change their order, with haptics and move up and down actions.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/reorder-list.tsx",
          "type": "registry:component",
          "target": "@components/interactions/reorder-list.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/reorder-list"
        }
      }
    },
    {
      "name": "search-reveal",
      "type": "registry:component",
      "title": "Search Reveal",
      "description": "A scrolling list with a search field tucked above it that appears when the user scrolls up.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/search-reveal.tsx",
          "type": "registry:component",
          "target": "@components/interactions/search-reveal.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/search-reveal"
        }
      }
    },
    {
      "name": "section-index",
      "type": "registry:component",
      "title": "Section Index",
      "description": "An A to Z index bar for jumping between sections of a long list by tapping, dragging, or typing.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/primitives-section-index",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/section-index.tsx",
          "type": "registry:component",
          "target": "@components/interactions/section-index.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/section-index"
        }
      }
    },
    {
      "name": "selection-list",
      "type": "registry:component",
      "title": "Selection List",
      "description": "A list with an edit mode for selecting multiple rows and acting on them from a floating toolbar.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/selection-list.tsx",
          "type": "registry:component",
          "target": "@components/interactions/selection-list.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/selection-list"
        }
      }
    },
    {
      "name": "stepper",
      "type": "registry:component",
      "title": "Stepper",
      "description": "A numeric field with minus and plus buttons that step the value, accelerating while held.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-number-field",
        "@esuiss-rn/primitives-use-render",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/stepper.tsx",
          "type": "registry:component",
          "target": "@components/interactions/stepper.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/stepper"
        }
      }
    },
    {
      "name": "swipe-actions",
      "type": "registry:component",
      "title": "Swipe Actions",
      "description": "A list row that reveals action buttons when swiped sideways, with optional full swipe to run an action.",
      "dependencies": [
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/swipe-actions.tsx",
          "type": "registry:component",
          "target": "@components/interactions/swipe-actions.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/swipe-actions"
        }
      }
    },
    {
      "name": "tip",
      "type": "registry:component",
      "title": "Tip",
      "description": "A dismissible feature tip shown inline or as a popover, remembered once dismissed and sequenced in groups.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-screens",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-popover",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/tip.tsx",
          "type": "registry:component",
          "target": "@components/interactions/tip.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/tip"
        }
      }
    },
    {
      "name": "top-banner",
      "type": "registry:component",
      "title": "Top Banner",
      "description": "Short banners that slide in from the top of the screen, queue one at a time and can be swiped up to dismiss.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/top-banner.tsx",
          "type": "registry:component",
          "target": "@components/interactions/top-banner.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/top-banner"
        }
      }
    },
    {
      "name": "undo-bar",
      "type": "registry:component",
      "title": "Undo Bar",
      "description": "A floating bar that offers to undo the last action for a few seconds before committing it.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-safe-area-context",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/interactions/undo-bar.tsx",
          "type": "registry:component",
          "target": "@components/interactions/undo-bar.tsx"
        }
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/interactions/undo-bar"
        }
      }
    },
    {
      "name": "bag-checkout",
      "type": "registry:block",
      "title": "Bag Checkout",
      "description": "A three-step checkout with delivery, payment, and review steps beside an order summary.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/radio-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/bag-checkout.tsx",
          "type": "registry:component",
          "target": "@components/blocks/bag-checkout.tsx"
        }
      ],
      "categories": [
        "blocks",
        "bag"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/bag-checkout"
        }
      }
    },
    {
      "name": "bag-configure",
      "type": "registry:block",
      "title": "Bag Configure",
      "description": "A product configurator for choosing a model, finish, and storage, with a live price and Add to Bag button.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/bag-configure.tsx",
          "type": "registry:component",
          "target": "@components/blocks/bag-configure.tsx"
        }
      ],
      "categories": [
        "blocks",
        "bag"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/bag-configure"
        }
      }
    },
    {
      "name": "bag-review",
      "type": "registry:block",
      "title": "Bag Review",
      "description": "A shopping bag review page with quantity steppers, removable line items, and a totals summary.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/screen",
        "@esuiss-rn/stepper",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/bag-review.tsx",
          "type": "registry:component",
          "target": "@components/blocks/bag-review.tsx"
        }
      ],
      "categories": [
        "blocks",
        "bag"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/bag-review"
        }
      }
    },
    {
      "name": "chat-conversations",
      "type": "registry:block",
      "title": "Chat Conversations",
      "description": "A messaging app layout with a conversation list beside the selected thread and a message composer.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/bubble",
        "@esuiss-rn/button",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/message",
        "@esuiss-rn/message-scroller",
        "@esuiss-rn/screen",
        "@esuiss-rn/swipe-actions",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/chat-conversations.tsx",
          "type": "registry:component",
          "target": "@components/blocks/chat-conversations.tsx"
        }
      ],
      "categories": [
        "blocks",
        "chat"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/chat-conversations"
        }
      }
    },
    {
      "name": "chat-support",
      "type": "registry:block",
      "title": "Chat Support",
      "description": "A support landing section with a floating chat panel, quick-reply suggestions, and a launcher button.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/bubble",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/message",
        "@esuiss-rn/message-scroller",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/chat-support.tsx",
          "type": "registry:component",
          "target": "@components/blocks/chat-support.tsx"
        }
      ],
      "categories": [
        "blocks",
        "chat"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/chat-support"
        }
      }
    },
    {
      "name": "chat-thread",
      "type": "registry:block",
      "title": "Chat Thread",
      "description": "A single message thread inside a phone frame, with heart reactions and simulated replies.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/attachment",
        "@esuiss-rn/avatar",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/bubble",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/message",
        "@esuiss-rn/message-scroller",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/chat-thread.tsx",
          "type": "registry:component",
          "target": "@components/blocks/chat-thread.tsx"
        }
      ],
      "categories": [
        "blocks",
        "chat"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/chat-thread"
        }
      }
    },
    {
      "name": "dash-analytics",
      "type": "registry:block",
      "title": "Dash Analytics",
      "description": "An app analytics dashboard with a metric switcher, an interactive area chart, and a regional breakdown.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/chart",
        "@esuiss-rn/dropdown-menu",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/dash-analytics.tsx",
          "type": "registry:component",
          "target": "@components/blocks/dash-analytics.tsx"
        }
      ],
      "categories": [
        "blocks",
        "dash"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/dash-analytics"
        }
      }
    },
    {
      "name": "dash-health",
      "type": "registry:block",
      "title": "Dash Health",
      "description": "A health summary dashboard with pinned metric cards, sparklines, and category views in a sidebar.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/dash-health.tsx",
          "type": "registry:component",
          "target": "@components/blocks/dash-health.tsx"
        }
      ],
      "categories": [
        "blocks",
        "dash"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/dash-health"
        }
      }
    },
    {
      "name": "dash-store",
      "type": "registry:block",
      "title": "Dash Store",
      "description": "A store admin overview with sales stats, an online versus in-store bar chart, and a filterable orders list.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/chart",
        "@esuiss-rn/chip",
        "@esuiss-rn/dropdown-menu",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/dash-store.tsx",
          "type": "registry:component",
          "target": "@components/blocks/dash-store.tsx"
        }
      ],
      "categories": [
        "blocks",
        "dash"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/dash-store"
        }
      }
    },
    {
      "name": "empty-bag",
      "type": "registry:block",
      "title": "Empty Bag",
      "description": "An empty shopping bag state with sign-in and shopping actions above a row of recommended products.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/empty",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/empty-bag.tsx",
          "type": "registry:component",
          "target": "@components/blocks/empty-bag.tsx"
        }
      ],
      "categories": [
        "blocks",
        "empty"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/empty-bag"
        }
      }
    },
    {
      "name": "empty-offline",
      "type": "registry:block",
      "title": "Empty Offline",
      "description": "An offline empty state with a retry action that reconnects and reveals a grid of albums.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/empty",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/spinner",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/empty-offline.tsx",
          "type": "registry:component",
          "target": "@components/blocks/empty-offline.tsx"
        }
      ],
      "categories": [
        "blocks",
        "empty"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/empty-offline"
        }
      }
    },
    {
      "name": "empty-search",
      "type": "registry:block",
      "title": "Empty Search",
      "description": "A search page showing live suggestions, a no-results state, and suggested queries.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/empty",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/empty-search.tsx",
          "type": "registry:component",
          "target": "@components/blocks/empty-search.tsx"
        }
      ],
      "categories": [
        "blocks",
        "empty"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/empty-search"
        }
      }
    },
    {
      "name": "grid-accessories",
      "type": "registry:block",
      "title": "Grid Accessories",
      "description": "A filterable accessories grid with category chips and add-to-bag buttons that update a bag counter.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/chip",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/grid-accessories.tsx",
          "type": "registry:component",
          "target": "@components/blocks/grid-accessories.tsx"
        }
      ],
      "categories": [
        "blocks",
        "grid"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/grid-accessories"
        }
      }
    },
    {
      "name": "grid-carousel",
      "type": "registry:block",
      "title": "Grid Carousel",
      "description": "A horizontally scrolling carousel of product cards with previous and next controls.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/carousel",
        "@esuiss-rn/page-indicator",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/grid-carousel.tsx",
          "type": "registry:component",
          "target": "@components/blocks/grid-carousel.tsx"
        }
      ],
      "categories": [
        "blocks",
        "grid"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/grid-carousel"
        }
      }
    },
    {
      "name": "grid-lineup",
      "type": "registry:block",
      "title": "Grid Lineup",
      "description": "A product lineup comparing models side by side, each with finish swatches, a price, and buy actions.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/grid-lineup.tsx",
          "type": "registry:component",
          "target": "@components/blocks/grid-lineup.tsx"
        }
      ],
      "categories": [
        "blocks",
        "grid"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/grid-lineup"
        }
      }
    },
    {
      "name": "inbox-categories",
      "type": "registry:block",
      "title": "Inbox Categories",
      "description": "A mail inbox sorted into Primary, Transactions, Updates, and Promotions, with a message reader and inline reply.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/split-view",
        "@esuiss-rn/swipe-actions",
        "@esuiss-rn/text",
        "@esuiss-rn/textarea",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/inbox-categories.tsx",
          "type": "registry:component",
          "target": "@components/blocks/inbox-categories.tsx"
        }
      ],
      "categories": [
        "blocks",
        "inbox"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/inbox-categories"
        }
      }
    },
    {
      "name": "inbox-mail",
      "type": "registry:block",
      "title": "Inbox Mail",
      "description": "A three-column mail client with mailboxes, a searchable message list, and a message reader with reply.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/split-view",
        "@esuiss-rn/swipe-actions",
        "@esuiss-rn/text",
        "@esuiss-rn/textarea",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/inbox-mail.tsx",
          "type": "registry:component",
          "target": "@components/blocks/inbox-mail.tsx"
        }
      ],
      "categories": [
        "blocks",
        "inbox"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/inbox-mail"
        }
      }
    },
    {
      "name": "inbox-support",
      "type": "registry:block",
      "title": "Inbox Support",
      "description": "A support ticket inbox with status views, a ticket list with priorities, and a detail pane for replying and resolving.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/split-view",
        "@esuiss-rn/text",
        "@esuiss-rn/textarea",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/inbox-support.tsx",
          "type": "registry:component",
          "target": "@components/blocks/inbox-support.tsx"
        }
      ],
      "categories": [
        "blocks",
        "inbox"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/inbox-support"
        }
      }
    },
    {
      "name": "log-activity",
      "type": "registry:block",
      "title": "Log Activity",
      "description": "An admin activity log grouped by day, with a type filter and expandable before-and-after details.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/chip",
        "@esuiss-rn/collapsible",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/log-activity.tsx",
          "type": "registry:component",
          "target": "@components/blocks/log-activity.tsx"
        }
      ],
      "categories": [
        "blocks",
        "log"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/log-activity"
        }
      }
    },
    {
      "name": "log-live",
      "type": "registry:block",
      "title": "Log Live",
      "description": "A live admin activity feed that streams new events, with session stats and a pause control.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/log-live.tsx",
          "type": "registry:component",
          "target": "@components/blocks/log-live.tsx"
        }
      ],
      "categories": [
        "blocks",
        "log"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/log-live"
        }
      }
    },
    {
      "name": "log-security",
      "type": "registry:block",
      "title": "Log Security",
      "description": "A security overview with a computed score ring, alert counts by severity, and resolvable alerts.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/chip",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/log-security.tsx",
          "type": "registry:component",
          "target": "@components/blocks/log-security.tsx"
        }
      ],
      "categories": [
        "blocks",
        "log"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/log-security"
        }
      }
    },
    {
      "name": "login-account",
      "type": "registry:block",
      "title": "Login Account",
      "description": "A two-step account sign-in form that asks for an email, then reveals a password field.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/checkbox",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/label",
        "@esuiss-rn/screen",
        "@esuiss-rn/spinner",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/login-account.tsx",
          "type": "registry:component",
          "target": "@components/blocks/login-account.tsx"
        }
      ],
      "categories": [
        "blocks",
        "login"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/login-account"
        }
      }
    },
    {
      "name": "login-passkey",
      "type": "registry:block",
      "title": "Login Passkey",
      "description": "A passwordless sign-in screen that runs a simulated face scan in a dialog, then welcomes the user.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/dialog",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/login-passkey.tsx",
          "type": "registry:component",
          "target": "@components/blocks/login-passkey.tsx"
        }
      ],
      "categories": [
        "blocks",
        "login"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/login-passkey"
        }
      }
    },
    {
      "name": "login-sheet",
      "type": "registry:block",
      "title": "Login Sheet",
      "description": "A mobile app welcome screen with a Sign in with suiss bottom sheet for sharing or hiding an email.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/button",
        "@esuiss-rn/drawer",
        "@esuiss-rn/icon",
        "@esuiss-rn/radio-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/spinner",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/login-sheet.tsx",
          "type": "registry:component",
          "target": "@components/blocks/login-sheet.tsx"
        }
      ],
      "categories": [
        "blocks",
        "login"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/login-sheet"
        }
      }
    },
    {
      "name": "nav-categories",
      "type": "registry:block",
      "title": "Nav Categories",
      "description": "A store landing header with a draggable carousel of category tiles and a heading that follows the selection.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/chip",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/nav-categories.tsx",
          "type": "registry:component",
          "target": "@components/blocks/nav-categories.tsx"
        }
      ],
      "categories": [
        "blocks",
        "nav"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/nav-categories"
        }
      }
    },
    {
      "name": "onboarding",
      "type": "registry:block",
      "title": "Onboarding",
      "description": "A paged onboarding flow with illustrations, a page indicator and Continue and Skip buttons.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/carousel",
        "@esuiss-rn/icon",
        "@esuiss-rn/page-indicator",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/onboarding.tsx",
          "type": "registry:component",
          "target": "@components/blocks/onboarding.tsx"
        }
      ],
      "categories": [
        "blocks",
        "onboarding"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/onboarding"
        }
      }
    },
    {
      "name": "permission-primer",
      "type": "registry:block",
      "title": "Permission Primer",
      "description": "A screen that explains why the app needs a permission before asking, with Allow and Not now buttons.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/permission-primer.tsx",
          "type": "registry:component",
          "target": "@components/blocks/permission-primer.tsx"
        }
      ],
      "categories": [
        "blocks",
        "permission"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/permission-primer"
        }
      }
    },
    {
      "name": "price-bundle",
      "type": "registry:block",
      "title": "Price Bundle",
      "description": "A dark subscription bundle picker comparing three plans and the services each one includes.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/price-bundle.tsx",
          "type": "registry:component",
          "target": "@components/blocks/price-bundle.tsx"
        }
      ],
      "categories": [
        "blocks",
        "price"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/price-bundle"
        }
      }
    },
    {
      "name": "price-care",
      "type": "registry:block",
      "title": "Price Care",
      "description": "A device protection plan picker with device chips, payment options, an optional theft add-on, and a live total.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/radio-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/switch",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/price-care.tsx",
          "type": "registry:component",
          "target": "@components/blocks/price-care.tsx"
        }
      ],
      "categories": [
        "blocks",
        "price"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/price-care"
        }
      }
    },
    {
      "name": "price-storage",
      "type": "registry:block",
      "title": "Price Storage",
      "description": "A cloud storage plan picker with a monthly or yearly toggle, four plan cards, and a switch action.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/radio-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/price-storage.tsx",
          "type": "registry:component",
          "target": "@components/blocks/price-storage.tsx"
        }
      ],
      "categories": [
        "blocks",
        "price"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/price-storage"
        }
      }
    },
    {
      "name": "roles-editor",
      "type": "registry:block",
      "title": "Roles Editor",
      "description": "A role editor that lists roles beside grouped permission switches, with save and revert for unsaved changes.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/split-view",
        "@esuiss-rn/switch",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/roles-editor.tsx",
          "type": "registry:component",
          "target": "@components/blocks/roles-editor.tsx"
        }
      ],
      "categories": [
        "blocks",
        "roles"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/roles-editor"
        }
      }
    },
    {
      "name": "roles-requests",
      "type": "registry:block",
      "title": "Roles Requests",
      "description": "An access request queue where admins approve or deny permission requests, with an approval length setting.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/empty",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/picker",
        "@esuiss-rn/screen",
        "@esuiss-rn/swipe-actions",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/roles-requests.tsx",
          "type": "registry:component",
          "target": "@components/blocks/roles-requests.tsx"
        }
      ],
      "categories": [
        "blocks",
        "roles"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/roles-requests"
        }
      }
    },
    {
      "name": "settings-account",
      "type": "registry:block",
      "title": "Settings Account",
      "description": "An account settings page with a profile sidebar and a Sign-In and Security section of editable cards.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/switch",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/settings-account.tsx",
          "type": "registry:component",
          "target": "@components/blocks/settings-account.tsx"
        }
      ],
      "categories": [
        "blocks",
        "settings"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/settings-account"
        }
      }
    },
    {
      "name": "settings-device",
      "type": "registry:block",
      "title": "Settings Device",
      "description": "A phone-style Settings screen with a search field, an account row, and grouped rows with switches.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/avatar",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/item",
        "@esuiss-rn/screen",
        "@esuiss-rn/switch",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/settings-device.tsx",
          "type": "registry:component",
          "target": "@components/blocks/settings-device.tsx"
        }
      ],
      "categories": [
        "blocks",
        "settings"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/settings-device"
        }
      }
    },
    {
      "name": "settings-notifications",
      "type": "registry:block",
      "title": "Settings Notifications",
      "description": "Per-app notification settings with a live lock screen preview that reflects each choice.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/picker",
        "@esuiss-rn/screen",
        "@esuiss-rn/switch",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/settings-notifications.tsx",
          "type": "registry:component",
          "target": "@components/blocks/settings-notifications.tsx"
        }
      ],
      "categories": [
        "blocks",
        "settings"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/settings-notifications"
        }
      }
    },
    {
      "name": "signup-form",
      "type": "registry:block",
      "title": "Signup Form",
      "description": "A full account creation form with name, country, birthday, email, and password fields and live password rules.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-accessory-bar",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/picker",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/signup-form.tsx",
          "type": "registry:component",
          "target": "@components/blocks/signup-form.tsx"
        }
      ],
      "categories": [
        "blocks",
        "signup"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/signup-form"
        }
      }
    },
    {
      "name": "signup-steps",
      "type": "registry:block",
      "title": "Signup Steps",
      "description": "A one-question-at-a-time signup flow for name, email, and password, with a progress indicator.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/signup-steps.tsx",
          "type": "registry:component",
          "target": "@components/blocks/signup-steps.tsx"
        }
      ],
      "categories": [
        "blocks",
        "signup"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/signup-steps"
        }
      }
    },
    {
      "name": "signup-trial",
      "type": "registry:block",
      "title": "Signup Trial",
      "description": "A free trial signup split between a promotional image panel and a short form with a password strength meter.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/checkbox",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-accessory-bar",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/label",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/signup-trial.tsx",
          "type": "registry:component",
          "target": "@components/blocks/signup-trial.tsx"
        }
      ],
      "categories": [
        "blocks",
        "signup"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/signup-trial"
        }
      }
    },
    {
      "name": "users-detail",
      "type": "registry:block",
      "title": "Users Detail",
      "description": "A user directory with a member list beside a detail pane for profile, sessions, and security settings.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/avatar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/item",
        "@esuiss-rn/picker",
        "@esuiss-rn/screen",
        "@esuiss-rn/split-view",
        "@esuiss-rn/switch",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/users-detail.tsx",
          "type": "registry:component",
          "target": "@components/blocks/users-detail.tsx"
        }
      ],
      "categories": [
        "blocks",
        "users"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/users-detail"
        }
      }
    },
    {
      "name": "users-invite",
      "type": "registry:block",
      "title": "Users Invite",
      "description": "An invite form that collects several email addresses as chips, assigns a role, and lists pending invitations.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/button",
        "@esuiss-rn/chip",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/input",
        "@esuiss-rn/item",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/picker",
        "@esuiss-rn/screen",
        "@esuiss-rn/switch",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toast"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/users-invite.tsx",
          "type": "registry:component",
          "target": "@components/blocks/users-invite.tsx"
        }
      ],
      "categories": [
        "blocks",
        "users"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/users-invite"
        }
      }
    },
    {
      "name": "users-table",
      "type": "registry:block",
      "title": "Users Table",
      "description": "A searchable users table with role filters, row selection, and bulk role and status actions.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/avatar",
        "@esuiss-rn/badge",
        "@esuiss-rn/button",
        "@esuiss-rn/chip",
        "@esuiss-rn/header",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-group",
        "@esuiss-rn/screen",
        "@esuiss-rn/selection-list",
        "@esuiss-rn/tab-bar",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/users-table.tsx",
          "type": "registry:component",
          "target": "@components/blocks/users-table.tsx"
        }
      ],
      "categories": [
        "blocks",
        "users"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/users-table"
        }
      }
    },
    {
      "name": "verify-code",
      "type": "registry:block",
      "title": "Verify Code",
      "description": "A two-factor authentication screen with a six-digit code entry, error feedback, and a resend countdown.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-otp",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/verify-code.tsx",
          "type": "registry:component",
          "target": "@components/blocks/verify-code.tsx"
        }
      ],
      "categories": [
        "blocks",
        "verify"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/verify-code"
        }
      }
    },
    {
      "name": "verify-device",
      "type": "registry:block",
      "title": "Verify Device",
      "description": "A trusted-device sign-in flow that pairs instructions with a simulated approval alert and code entry.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/icon",
        "@esuiss-rn/input-otp",
        "@esuiss-rn/keyboard-scroll-view",
        "@esuiss-rn/screen",
        "@esuiss-rn/spinner",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/verify-device.tsx",
          "type": "registry:component",
          "target": "@components/blocks/verify-device.tsx"
        }
      ],
      "categories": [
        "blocks",
        "verify"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/verify-device"
        }
      }
    },
    {
      "name": "verify-email",
      "type": "registry:block",
      "title": "Verify Email",
      "description": "A check-your-inbox screen after signup, with open mail and resend actions and a cooldown timer.",
      "dependencies": [
        "phosphor-react-native",
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/animated-view",
        "@esuiss-rn/bottom-bar",
        "@esuiss-rn/button",
        "@esuiss-rn/icon",
        "@esuiss-rn/screen",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/blocks/verify-email.tsx",
          "type": "registry:component",
          "target": "@components/blocks/verify-email.tsx"
        }
      ],
      "categories": [
        "blocks",
        "verify"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/blocks/verify-email"
        }
      }
    },
    {
      "name": "area-chart-axes",
      "type": "registry:block",
      "title": "Area Chart Axes",
      "description": "A gradient area with visible dots and a value axis on the right edge of the plot.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-axes.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-axes.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-axes"
        }
      }
    },
    {
      "name": "area-chart-default",
      "type": "registry:block",
      "title": "Area Chart Default",
      "description": "A single filled area with a smooth curve showing one series across six months.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-default"
        }
      }
    },
    {
      "name": "area-chart-gradient",
      "type": "registry:block",
      "title": "Area Chart Gradient",
      "description": "Two overlapping areas whose fills fade out toward the bottom using SVG linear gradients.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-gradient.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-gradient.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-gradient"
        }
      }
    },
    {
      "name": "area-chart-interactive",
      "type": "registry:block",
      "title": "Area Chart Interactive",
      "description": "A stock price chart with time-range toggles, a scrubbing cursor that updates the header, and animated transitions between ranges.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-interactive"
        }
      }
    },
    {
      "name": "area-chart-linear",
      "type": "registry:block",
      "title": "Area Chart Linear",
      "description": "A single filled area whose points are joined by straight segments instead of a smoothed curve.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-linear.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-linear.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-linear"
        }
      }
    },
    {
      "name": "area-chart-range",
      "type": "registry:block",
      "title": "Area Chart Range",
      "description": "A heart-rate band showing each hour's low-to-high range as a shaded area with an average line through it.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-range.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-range.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-range"
        }
      }
    },
    {
      "name": "area-chart-sparkline",
      "type": "registry:block",
      "title": "Area Chart Sparkline",
      "description": "A watchlist with a tiny gradient area chart beside each price, colored by whether the stock is rising or falling.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-sparkline.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-sparkline.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-sparkline"
        }
      }
    },
    {
      "name": "area-chart-stacked-expand",
      "type": "registry:block",
      "title": "Area Chart Stacked Expand",
      "description": "Two stacked areas normalized so every month fills 100%, showing each series' share rather than its value.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-stacked-expand.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-stacked-expand.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-stacked-expand"
        }
      }
    },
    {
      "name": "area-chart-stacked",
      "type": "registry:block",
      "title": "Area Chart Stacked",
      "description": "Two areas stacked on top of each other so the top edge shows the combined total, with a legend.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-stacked.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-stacked.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-stacked"
        }
      }
    },
    {
      "name": "area-chart-step",
      "type": "registry:block",
      "title": "Area Chart Step",
      "description": "A single filled area drawn as steps, holding each value flat until the next reading.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/area-chart-step.tsx",
          "type": "registry:component",
          "target": "@components/charts/area-chart-step.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-area"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/area-chart-step"
        }
      }
    },
    {
      "name": "bar-chart-active",
      "type": "registry:block",
      "title": "Bar Chart Active",
      "description": "A week of step counts where clicking a bar selects it, dims the others and updates the header.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-active.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-active.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-active"
        }
      }
    },
    {
      "name": "bar-chart-default",
      "type": "registry:block",
      "title": "Bar Chart Default",
      "description": "A single series of rounded vertical bars, one per month.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-default"
        }
      }
    },
    {
      "name": "bar-chart-horizontal",
      "type": "registry:block",
      "title": "Bar Chart Horizontal",
      "description": "Horizontal bars with category names on the left and a distinct color for each category.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-horizontal.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-horizontal.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-horizontal"
        }
      }
    },
    {
      "name": "bar-chart-hourly",
      "type": "registry:block",
      "title": "Bar Chart Hourly",
      "description": "Twenty-four thin bars of screen time per hour, with a dashed line marking the hourly average.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-hourly.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-hourly.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-hourly"
        }
      }
    },
    {
      "name": "bar-chart-interactive",
      "type": "registry:block",
      "title": "Bar Chart Interactive",
      "description": "A screen-time report with stacked category bars, a week and day toggle, selectable days and a most-used apps list.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-interactive"
        }
      }
    },
    {
      "name": "bar-chart-labeled",
      "type": "registry:block",
      "title": "Bar Chart Labeled",
      "description": "A single bar series with each value printed above its bar and no grid lines.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-labeled.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-labeled.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-labeled"
        }
      }
    },
    {
      "name": "bar-chart-multiple",
      "type": "registry:block",
      "title": "Bar Chart Multiple",
      "description": "Two series drawn as grouped bars side by side for each month.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-multiple.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-multiple.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-multiple"
        }
      }
    },
    {
      "name": "bar-chart-negative",
      "type": "registry:block",
      "title": "Bar Chart Negative",
      "description": "Monthly cash flow bars that turn green above zero and red below it, with a zero baseline.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-negative.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-negative.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-negative"
        }
      }
    },
    {
      "name": "bar-chart-range",
      "type": "registry:block",
      "title": "Bar Chart Range",
      "description": "A weather forecast where each horizontal pill spans the day's low and high on a shared gradient scale.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-range.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-range.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-range"
        }
      }
    },
    {
      "name": "bar-chart-stacked",
      "type": "registry:block",
      "title": "Bar Chart Stacked",
      "description": "Two series stacked into one bar per month, with a legend below the plot.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/bar-chart-stacked.tsx",
          "type": "registry:component",
          "target": "@components/charts/bar-chart-stacked.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-bar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/bar-chart-stacked"
        }
      }
    },
    {
      "name": "line-chart-default",
      "type": "registry:block",
      "title": "Line Chart Default",
      "description": "A single smooth line through six months of values, without point markers.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-default"
        }
      }
    },
    {
      "name": "line-chart-dots",
      "type": "registry:block",
      "title": "Line Chart Dots",
      "description": "A weight trend with a dot at every monthly reading and a fixed value axis on the right.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-dots.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-dots.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-dots"
        }
      }
    },
    {
      "name": "line-chart-forecast",
      "type": "registry:block",
      "title": "Line Chart Forecast",
      "description": "A solid line for actual values that continues as a dashed forecast over a shaded future range.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-forecast.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-forecast.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-forecast"
        }
      }
    },
    {
      "name": "line-chart-goal-dots",
      "type": "registry:block",
      "title": "Line Chart Goal Dots",
      "description": "Nightly sleep hours with a goal line and dots colored green or orange depending on whether the goal was met.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-goal-dots.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-goal-dots.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-goal-dots"
        }
      }
    },
    {
      "name": "line-chart-goal",
      "type": "registry:block",
      "title": "Line Chart Goal",
      "description": "Daily step counts plotted against a labeled dashed goal line at 10,000 steps.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-goal.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-goal.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-goal"
        }
      }
    },
    {
      "name": "line-chart-interactive",
      "type": "registry:block",
      "title": "Line Chart Interactive",
      "description": "Monthly temperatures for several cities, with chips to show or hide each city and an average, high or low switch.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-interactive"
        }
      }
    },
    {
      "name": "line-chart-labeled",
      "type": "registry:block",
      "title": "Line Chart Labeled",
      "description": "A single line with a dot and a printed value at every point, and no grid.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-labeled.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-labeled.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-labeled"
        }
      }
    },
    {
      "name": "line-chart-linear",
      "type": "registry:block",
      "title": "Line Chart Linear",
      "description": "A single line drawn with straight segments between readings instead of a smoothed curve.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-linear.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-linear.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-linear"
        }
      }
    },
    {
      "name": "line-chart-multiple",
      "type": "registry:block",
      "title": "Line Chart Multiple",
      "description": "Two lines compared on the same axes, with a legend identifying each series.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-multiple.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-multiple.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-multiple"
        }
      }
    },
    {
      "name": "line-chart-step",
      "type": "registry:block",
      "title": "Line Chart Step",
      "description": "A single line drawn as horizontal steps, holding each value until the next reading.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/line-chart-step.tsx",
          "type": "registry:component",
          "target": "@components/charts/line-chart-step.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-line"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/line-chart-step"
        }
      }
    },
    {
      "name": "pie-chart-active",
      "type": "registry:block",
      "title": "Pie Chart Active",
      "description": "A donut where one slice is enlarged and outlined with an outer arc to highlight it.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-active.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-active.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-active"
        }
      }
    },
    {
      "name": "pie-chart-default",
      "type": "registry:block",
      "title": "Pie Chart Default",
      "description": "A full pie split into five device slices, separated by thin card-colored borders.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-default"
        }
      }
    },
    {
      "name": "pie-chart-donut-text",
      "type": "registry:block",
      "title": "Pie Chart Donut Text",
      "description": "A donut with the total number of users displayed in the center of the ring.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-donut-text.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-donut-text.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-donut-text"
        }
      }
    },
    {
      "name": "pie-chart-donut",
      "type": "registry:block",
      "title": "Pie Chart Donut",
      "description": "A donut chart with a hollow center and small gaps between slices.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-donut.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-donut.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-donut"
        }
      }
    },
    {
      "name": "pie-chart-half",
      "type": "registry:block",
      "title": "Pie Chart Half",
      "description": "A semicircular gauge-style pie showing battery share by device, with a caption under the arc.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-half.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-half.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-half"
        }
      }
    },
    {
      "name": "pie-chart-interactive",
      "type": "registry:block",
      "title": "Pie Chart Interactive",
      "description": "A storage breakdown donut with a device switch, hover-linked list and lifted slices, plus a linear usage bar.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-interactive"
        }
      }
    },
    {
      "name": "pie-chart-label",
      "type": "registry:block",
      "title": "Pie Chart Label",
      "description": "A pie with each category name drawn outside its slice and joined by a leader line.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-label.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-label.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-label"
        }
      }
    },
    {
      "name": "pie-chart-legend",
      "type": "registry:block",
      "title": "Pie Chart Legend",
      "description": "A donut with a legend beneath it that lists every category and its color.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-legend.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-legend.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-legend"
        }
      }
    },
    {
      "name": "pie-chart-nested",
      "type": "registry:block",
      "title": "Pie Chart Nested",
      "description": "Two concentric pies: an inner ring of grouped totals surrounded by an outer ring of individual categories.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-nested.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-nested.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-nested"
        }
      }
    },
    {
      "name": "pie-chart-separated",
      "type": "registry:block",
      "title": "Pie Chart Separated",
      "description": "A donut whose slices are pulled apart with wide gaps and rounded corners.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/pie-chart-separated.tsx",
          "type": "registry:component",
          "target": "@components/charts/pie-chart-separated.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-pie"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/pie-chart-separated"
        }
      }
    },
    {
      "name": "radar-chart-default",
      "type": "registry:block",
      "title": "Radar Chart Default",
      "description": "A single filled radar shape showing this month's scores across six training skills.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-default"
        }
      }
    },
    {
      "name": "radar-chart-dots",
      "type": "registry:block",
      "title": "Radar Chart Dots",
      "description": "A single radar shape with a solid dot marking the value on every axis.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-dots.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-dots.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-dots"
        }
      }
    },
    {
      "name": "radar-chart-grid-circle",
      "type": "registry:block",
      "title": "Radar Chart Grid Circle",
      "description": "A single radar shape drawn over circular rings instead of polygonal grid lines.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-grid-circle.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-grid-circle.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-grid-circle"
        }
      }
    },
    {
      "name": "radar-chart-grid-filled",
      "type": "registry:block",
      "title": "Radar Chart Grid Filled",
      "description": "A borderless radar shape over shaded circular rings separated by card-colored lines.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-grid-filled.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-grid-filled.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-grid-filled"
        }
      }
    },
    {
      "name": "radar-chart-grid-none",
      "type": "registry:block",
      "title": "Radar Chart Grid None",
      "description": "A single solid radar shape with no grid and no outline, leaving only the shape and axis labels.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-grid-none.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-grid-none.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-grid-none"
        }
      }
    },
    {
      "name": "radar-chart-interactive",
      "type": "registry:block",
      "title": "Radar Chart Interactive",
      "description": "A phone model comparison where toggle chips show up to three models, which grow in and out of the radar.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-interactive"
        }
      }
    },
    {
      "name": "radar-chart-legend",
      "type": "registry:block",
      "title": "Radar Chart Legend",
      "description": "Two overlapping radar shapes with a legend beneath that names each series.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-legend.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-legend.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-legend"
        }
      }
    },
    {
      "name": "radar-chart-lines-only",
      "type": "registry:block",
      "title": "Radar Chart Lines Only",
      "description": "Two radar outlines with no fill, comparing this month and last month by stroke alone.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-lines-only.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-lines-only.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-lines-only"
        }
      }
    },
    {
      "name": "radar-chart-multiple",
      "type": "registry:block",
      "title": "Radar Chart Multiple",
      "description": "Two overlapping radar shapes comparing this month with last month.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-multiple.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-multiple.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-multiple"
        }
      }
    },
    {
      "name": "radar-chart-radius-axis",
      "type": "registry:block",
      "title": "Radar Chart Radius Axis",
      "description": "A single radar shape with a visible 0 to 100 value scale along the vertical axis.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radar-chart-radius-axis.tsx",
          "type": "registry:component",
          "target": "@components/charts/radar-chart-radius-axis.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radar"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radar-chart-radius-axis"
        }
      }
    },
    {
      "name": "radial-chart-batteries",
      "type": "registry:block",
      "title": "Radial Chart Batteries",
      "description": "A row of small battery rings, one per device, that turn red when charge is at or below 20%.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-batteries.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-batteries.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-batteries"
        }
      }
    },
    {
      "name": "radial-chart-default",
      "type": "registry:block",
      "title": "Radial Chart Default",
      "description": "Concentric radial bars, one per device, each running around a gray background track.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-default.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-default.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-default"
        }
      }
    },
    {
      "name": "radial-chart-gauge",
      "type": "registry:block",
      "title": "Radial Chart Gauge",
      "description": "A 240-degree gauge arc showing an air quality reading with its value and rating below the center.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-gauge.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-gauge.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-gauge"
        }
      }
    },
    {
      "name": "radial-chart-interactive",
      "type": "registry:block",
      "title": "Radial Chart Interactive",
      "description": "A weekly activity view where picking a day animates three large rings and updates each ring's totals.",
      "dependencies": [
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss",
        "@esuiss-rn/toggle-group"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-interactive.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-interactive.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-interactive"
        }
      }
    },
    {
      "name": "radial-chart-label",
      "type": "registry:block",
      "title": "Radial Chart Label",
      "description": "Concentric radial bars with each category's name printed at the start of its bar.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-label.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-label.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-label"
        }
      }
    },
    {
      "name": "radial-chart-progress",
      "type": "registry:block",
      "title": "Radial Chart Progress",
      "description": "A three-quarter arc tracking progress toward a goal, with the count shown in the center.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-progress.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-progress.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-progress"
        }
      }
    },
    {
      "name": "radial-chart-rings",
      "type": "registry:block",
      "title": "Radial Chart Rings",
      "description": "Three nested activity rings for move, exercise and stand, drawn as plain SVG circles.",
      "dependencies": [
        "react-native-svg"
      ],
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-rings.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-rings.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-rings"
        }
      }
    },
    {
      "name": "radial-chart-stacked",
      "type": "registry:block",
      "title": "Radial Chart Stacked",
      "description": "A half-circle arc with two series stacked end to end and the combined total beneath it.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-stacked.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-stacked.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-stacked"
        }
      }
    },
    {
      "name": "radial-chart-text",
      "type": "registry:block",
      "title": "Radial Chart Text",
      "description": "A single full-circle progress ring with a percentage and caption centered inside.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart",
        "@esuiss-rn/text",
        "@esuiss-rn/theme-suiss"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-text.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-text.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-text"
        }
      }
    },
    {
      "name": "radial-chart-tinted",
      "type": "registry:block",
      "title": "Radial Chart Tinted",
      "description": "Concentric radial bars whose unfilled track is a soft tint of each bar's own color.",
      "registryDependencies": [
        "@esuiss-rn/card",
        "@esuiss-rn/chart"
      ],
      "files": [
        {
          "path": "stylesheet/components/charts/radial-chart-tinted.tsx",
          "type": "registry:component",
          "target": "@components/charts/radial-chart-tinted.tsx"
        }
      ],
      "categories": [
        "charts",
        "charts-radial"
      ],
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/charts/radial-chart-tinted"
        }
      }
    },
    {
      "name": "primitives-accordion",
      "type": "registry:component",
      "title": "Accordion Primitive",
      "description": "The headless accordion behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/accordion.tsx",
          "type": "registry:component",
          "target": "@components/primitives/accordion.tsx"
        }
      ]
    },
    {
      "name": "primitives-alert-dialog",
      "type": "registry:component",
      "title": "Alert Dialog Primitive",
      "description": "The headless alert dialog behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-dialog",
        "@esuiss-rn/primitives-floating-root"
      ],
      "files": [
        {
          "path": "components/primitives/alert-dialog.tsx",
          "type": "registry:component",
          "target": "@components/primitives/alert-dialog.tsx"
        }
      ]
    },
    {
      "name": "primitives-aspect-ratio",
      "type": "registry:component",
      "title": "Aspect Ratio Primitive",
      "description": "The headless aspect ratio behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/aspect-ratio.tsx",
          "type": "registry:component",
          "target": "@components/primitives/aspect-ratio.tsx"
        }
      ]
    },
    {
      "name": "primitives-avatar",
      "type": "registry:component",
      "title": "Avatar Primitive",
      "description": "The headless avatar behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/avatar.tsx",
          "type": "registry:component",
          "target": "@components/primitives/avatar.tsx"
        }
      ]
    },
    {
      "name": "primitives-calendar",
      "type": "registry:component",
      "title": "Calendar Primitive",
      "description": "The headless calendar behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/calendar.tsx",
          "type": "registry:component",
          "target": "@components/primitives/calendar.tsx"
        }
      ]
    },
    {
      "name": "primitives-carousel",
      "type": "registry:component",
      "title": "Carousel Primitive",
      "description": "The headless carousel behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/carousel.tsx",
          "type": "registry:component",
          "target": "@components/primitives/carousel.tsx"
        }
      ]
    },
    {
      "name": "primitives-chart",
      "type": "registry:component",
      "title": "Chart Primitive",
      "description": "The headless chart behavior the components build on.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-haptics"
      ],
      "files": [
        {
          "path": "components/primitives/chart.tsx",
          "type": "registry:component",
          "target": "@components/primitives/chart.tsx"
        }
      ]
    },
    {
      "name": "primitives-checkbox-group",
      "type": "registry:component",
      "title": "Checkbox Group Primitive",
      "description": "The headless checkbox group behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/checkbox-group.tsx",
          "type": "registry:component",
          "target": "@components/primitives/checkbox-group.tsx"
        }
      ]
    },
    {
      "name": "primitives-checkbox",
      "type": "registry:component",
      "title": "Checkbox Primitive",
      "description": "The headless checkbox behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-checkbox-group",
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/checkbox.tsx",
          "type": "registry:component",
          "target": "@components/primitives/checkbox.tsx"
        }
      ]
    },
    {
      "name": "primitives-collapsible",
      "type": "registry:component",
      "title": "Collapsible Primitive",
      "description": "The headless collapsible behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/collapsible.tsx",
          "type": "registry:component",
          "target": "@components/primitives/collapsible.tsx"
        }
      ]
    },
    {
      "name": "primitives-combobox",
      "type": "registry:component",
      "title": "Combobox Primitive",
      "description": "The headless combobox behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-font",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/combobox.tsx",
          "type": "registry:component",
          "target": "@components/primitives/combobox.tsx"
        }
      ]
    },
    {
      "name": "primitives-context-menu",
      "type": "registry:component",
      "title": "Context Menu Primitive",
      "description": "The headless context menu behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-menu",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/context-menu.tsx",
          "type": "registry:component",
          "target": "@components/primitives/context-menu.tsx"
        }
      ]
    },
    {
      "name": "primitives-dialog",
      "type": "registry:component",
      "title": "Dialog Primitive",
      "description": "The headless dialog behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/dialog.tsx",
          "type": "registry:component",
          "target": "@components/primitives/dialog.tsx"
        }
      ]
    },
    {
      "name": "primitives-drawer",
      "type": "registry:component",
      "title": "Drawer Primitive",
      "description": "The headless drawer behavior the components build on.",
      "dependencies": [
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-dialog",
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/drawer.tsx",
          "type": "registry:component",
          "target": "@components/primitives/drawer.tsx"
        }
      ]
    },
    {
      "name": "primitives-event-details",
      "type": "registry:component",
      "title": "Event Details Primitive",
      "description": "The headless event details behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types"
      ],
      "files": [
        {
          "path": "components/primitives/event-details.ts",
          "type": "registry:component",
          "target": "@components/primitives/event-details.ts"
        }
      ]
    },
    {
      "name": "primitives-field",
      "type": "registry:component",
      "title": "Field Primitive",
      "description": "The headless field behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-fieldset",
        "@esuiss-rn/primitives-font",
        "@esuiss-rn/primitives-form",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/field.tsx",
          "type": "registry:component",
          "target": "@components/primitives/field.tsx"
        }
      ]
    },
    {
      "name": "primitives-fieldset",
      "type": "registry:component",
      "title": "Fieldset Primitive",
      "description": "The headless fieldset behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/fieldset.tsx",
          "type": "registry:component",
          "target": "@components/primitives/fieldset.tsx"
        }
      ]
    },
    {
      "name": "primitives-floating-root",
      "type": "registry:component",
      "title": "Floating Root Primitive",
      "description": "The headless floating root behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state"
      ],
      "files": [
        {
          "path": "components/primitives/floating-root.tsx",
          "type": "registry:component",
          "target": "@components/primitives/floating-root.tsx"
        }
      ]
    },
    {
      "name": "primitives-font",
      "type": "registry:component",
      "title": "Font Primitive",
      "description": "The headless font behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/font.ts",
          "type": "registry:component",
          "target": "@components/primitives/font.ts"
        }
      ]
    },
    {
      "name": "primitives-form",
      "type": "registry:component",
      "title": "Form Primitive",
      "description": "The headless form behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/form.tsx",
          "type": "registry:component",
          "target": "@components/primitives/form.tsx"
        }
      ]
    },
    {
      "name": "primitives-haptics",
      "type": "registry:component",
      "title": "Haptics Primitive",
      "description": "The headless haptics behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/haptics.tsx",
          "type": "registry:component",
          "target": "@components/primitives/haptics.tsx"
        }
      ]
    },
    {
      "name": "primitives-hooks",
      "type": "registry:component",
      "title": "Hooks Primitive",
      "description": "The headless hooks behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/hooks.ts",
          "type": "registry:component",
          "target": "@components/primitives/hooks.ts"
        }
      ]
    },
    {
      "name": "primitives-image-viewer",
      "type": "registry:component",
      "title": "Image Viewer Primitive",
      "description": "The headless image viewer behavior the components build on.",
      "dependencies": [
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/image-viewer.tsx",
          "type": "registry:component",
          "target": "@components/primitives/image-viewer.tsx"
        }
      ]
    },
    {
      "name": "primitives-input",
      "type": "registry:component",
      "title": "Input Primitive",
      "description": "The headless input behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-field"
      ],
      "files": [
        {
          "path": "components/primitives/input.tsx",
          "type": "registry:component",
          "target": "@components/primitives/input.tsx"
        }
      ]
    },
    {
      "name": "primitives-keyboard",
      "type": "registry:component",
      "title": "Keyboard Primitive",
      "description": "The headless keyboard behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/keyboard.ts",
          "type": "registry:component",
          "target": "@components/primitives/keyboard.ts"
        }
      ]
    },
    {
      "name": "primitives-label",
      "type": "registry:component",
      "title": "Label Primitive",
      "description": "The headless label behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/label.tsx",
          "type": "registry:component",
          "target": "@components/primitives/label.tsx"
        }
      ]
    },
    {
      "name": "primitives-menu",
      "type": "registry:component",
      "title": "Menu Primitive",
      "description": "The headless menu behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/menu.tsx",
          "type": "registry:component",
          "target": "@components/primitives/menu.tsx"
        }
      ]
    },
    {
      "name": "primitives-merge-props",
      "type": "registry:component",
      "title": "Merge Props Primitive",
      "description": "The headless merge props behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/merge-props.ts",
          "type": "registry:component",
          "target": "@components/primitives/merge-props.ts"
        }
      ]
    },
    {
      "name": "primitives-number-field",
      "type": "registry:component",
      "title": "Number Field Primitive",
      "description": "The headless number field behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-font",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/number-field.tsx",
          "type": "registry:component",
          "target": "@components/primitives/number-field.tsx"
        }
      ]
    },
    {
      "name": "primitives-otp-field",
      "type": "registry:component",
      "title": "OTP Field Primitive",
      "description": "The headless otp field behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/otp-field.tsx",
          "type": "registry:component",
          "target": "@components/primitives/otp-field.tsx"
        }
      ]
    },
    {
      "name": "primitives-popover",
      "type": "registry:component",
      "title": "Popover Primitive",
      "description": "The headless popover behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/popover.tsx",
          "type": "registry:component",
          "target": "@components/primitives/popover.tsx"
        }
      ]
    },
    {
      "name": "primitives-portal",
      "type": "registry:component",
      "title": "Portal Primitive",
      "description": "The headless portal behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-haptics"
      ],
      "files": [
        {
          "path": "components/primitives/portal.tsx",
          "type": "registry:component",
          "target": "@components/primitives/portal.tsx"
        }
      ]
    },
    {
      "name": "primitives-positioner",
      "type": "registry:component",
      "title": "Positioner Primitive",
      "description": "The headless positioner behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/positioner.tsx",
          "type": "registry:component",
          "target": "@components/primitives/positioner.tsx"
        }
      ]
    },
    {
      "name": "primitives-preview-menu",
      "type": "registry:component",
      "title": "Preview Menu Primitive",
      "description": "The headless preview menu behavior the components build on.",
      "dependencies": [
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-menu",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/preview-menu.tsx",
          "type": "registry:component",
          "target": "@components/primitives/preview-menu.tsx"
        }
      ]
    },
    {
      "name": "primitives-progress",
      "type": "registry:component",
      "title": "Progress Primitive",
      "description": "The headless progress behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/progress.tsx",
          "type": "registry:component",
          "target": "@components/primitives/progress.tsx"
        }
      ]
    },
    {
      "name": "primitives-radio-group",
      "type": "registry:component",
      "title": "Radio Group Primitive",
      "description": "The headless radio group behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/radio-group.tsx",
          "type": "registry:component",
          "target": "@components/primitives/radio-group.tsx"
        }
      ]
    },
    {
      "name": "primitives-radio",
      "type": "registry:component",
      "title": "Radio Primitive",
      "description": "The headless radio behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-radio-group",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/radio.tsx",
          "type": "registry:component",
          "target": "@components/primitives/radio.tsx"
        }
      ]
    },
    {
      "name": "primitives-section-index",
      "type": "registry:component",
      "title": "Section Index Primitive",
      "description": "The headless section index behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/section-index.tsx",
          "type": "registry:component",
          "target": "@components/primitives/section-index.tsx"
        }
      ]
    },
    {
      "name": "primitives-select",
      "type": "registry:component",
      "title": "Select Primitive",
      "description": "The headless select behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-floating-root",
        "@esuiss-rn/primitives-positioner",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/select.tsx",
          "type": "registry:component",
          "target": "@components/primitives/select.tsx"
        }
      ]
    },
    {
      "name": "primitives-separator",
      "type": "registry:component",
      "title": "Separator Primitive",
      "description": "The headless separator behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/separator.tsx",
          "type": "registry:component",
          "target": "@components/primitives/separator.tsx"
        }
      ]
    },
    {
      "name": "primitives-slider",
      "type": "registry:component",
      "title": "Slider Primitive",
      "description": "The headless slider behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/slider.tsx",
          "type": "registry:component",
          "target": "@components/primitives/slider.tsx"
        }
      ]
    },
    {
      "name": "primitives-switch",
      "type": "registry:component",
      "title": "Switch Primitive",
      "description": "The headless switch behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/switch.tsx",
          "type": "registry:component",
          "target": "@components/primitives/switch.tsx"
        }
      ]
    },
    {
      "name": "primitives-tabs",
      "type": "registry:component",
      "title": "Tabs Primitive",
      "description": "The headless tabs behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/tabs.tsx",
          "type": "registry:component",
          "target": "@components/primitives/tabs.tsx"
        }
      ]
    },
    {
      "name": "primitives-toast",
      "type": "registry:component",
      "title": "Toast Primitive",
      "description": "The headless toast behavior the components build on.",
      "dependencies": [
        "react-native-gesture-handler",
        "react-native-reanimated",
        "react-native-worklets"
      ],
      "registryDependencies": [
        "@esuiss-rn/primitives-portal",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/toast.tsx",
          "type": "registry:component",
          "target": "@components/primitives/toast.tsx"
        }
      ]
    },
    {
      "name": "primitives-toggle-group",
      "type": "registry:component",
      "title": "Toggle Group Primitive",
      "description": "The headless toggle group behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/toggle-group.tsx",
          "type": "registry:component",
          "target": "@components/primitives/toggle-group.tsx"
        }
      ]
    },
    {
      "name": "primitives-toggle",
      "type": "registry:component",
      "title": "Toggle Primitive",
      "description": "The headless toggle behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-toggle-group",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/toggle.tsx",
          "type": "registry:component",
          "target": "@components/primitives/toggle.tsx"
        }
      ]
    },
    {
      "name": "primitives-types",
      "type": "registry:component",
      "title": "Types Primitive",
      "description": "The headless types behavior the components build on.",
      "files": [
        {
          "path": "components/primitives/types.ts",
          "type": "registry:component",
          "target": "@components/primitives/types.ts"
        }
      ]
    },
    {
      "name": "primitives-use-controllable-state",
      "type": "registry:component",
      "title": "Use Controllable State Primitive",
      "description": "The headless use controllable state behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types"
      ],
      "files": [
        {
          "path": "components/primitives/use-controllable-state.ts",
          "type": "registry:component",
          "target": "@components/primitives/use-controllable-state.ts"
        }
      ]
    },
    {
      "name": "primitives-use-render",
      "type": "registry:component",
      "title": "Use Render Primitive",
      "description": "The headless use render behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-merge-props",
        "@esuiss-rn/primitives-types"
      ],
      "files": [
        {
          "path": "components/primitives/use-render.tsx",
          "type": "registry:component",
          "target": "@components/primitives/use-render.tsx"
        }
      ]
    },
    {
      "name": "primitives-wheel-picker",
      "type": "registry:component",
      "title": "Wheel Picker Primitive",
      "description": "The headless wheel picker behavior the components build on.",
      "registryDependencies": [
        "@esuiss-rn/primitives-event-details",
        "@esuiss-rn/primitives-haptics",
        "@esuiss-rn/primitives-hooks",
        "@esuiss-rn/primitives-types",
        "@esuiss-rn/primitives-use-controllable-state",
        "@esuiss-rn/primitives-use-render"
      ],
      "files": [
        {
          "path": "components/primitives/wheel-picker.tsx",
          "type": "registry:component",
          "target": "@components/primitives/wheel-picker.tsx"
        }
      ]
    },
    {
      "name": "theme-suiss",
      "title": "suiss/ui Theme",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "stylesheet/components/ui/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-vega",
      "title": "suiss/ui Theme (Vega)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the vega style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/vega/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-nova",
      "title": "suiss/ui Theme (Nova)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the nova style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/nova/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-maia",
      "title": "suiss/ui Theme (Maia)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the maia style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/maia/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-lyra",
      "title": "suiss/ui Theme (Lyra)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the lyra style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/lyra/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-mira",
      "title": "suiss/ui Theme (Mira)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the mira style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/mira/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-luma",
      "title": "suiss/ui Theme (Luma)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the luma style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/luma/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-sera",
      "title": "suiss/ui Theme (Sera)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the sera style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/sera/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    },
    {
      "name": "theme-rhea",
      "title": "suiss/ui Theme (Rhea)",
      "description": "The suiss/ui theme object with the colors for light and dark mode, the type scale and radius scale, and the useTheme hook. Uses the rhea style for radius, sizes, spacing, weights and shadows.",
      "meta": {
        "links": {
          "docs": "https://suiss.app/ui/docs/theming"
        }
      },
      "type": "registry:lib",
      "dependencies": [
        "react-native-reanimated",
        "react-native-svg",
        "react-native-worklets"
      ],
      "files": [
        {
          "path": "styles/presets/rhea/theme.ts",
          "type": "registry:lib",
          "target": "@ui/theme.ts"
        }
      ]
    }
  ]
}
