Lemma File Browser
lemma/lemma-file-browserFreeBlock
A datastore file workspace with folder navigation, breadcrumbs, search, upload, rename, move, folder creation, picker actions, link flows, and delete handling.
Install it
npx shadcn@latest add https://raw.githubusercontent.com/lemma-work/lemma-platform/main/lemma-typescript/public/r/lemma-file-browser.jsonSource
1"use client"23import * as React from "react"4import {5 Download,6 File,7 FileText,8 Folder,9 FolderPlus,10 Building2,11 Home,12 Image,13 Loader2,14 LockKeyhole,15 MoreHorizontal,16 Pencil,17 RefreshCw,18 Search,19 Trash2,20 Upload,21 Waypoints,22} from "lucide-react"23import {24 AlertDialog,25 AlertDialogAction,26 AlertDialogCancel,27 AlertDialogContent,28 AlertDialogDescription,29 AlertDialogFooter,30 AlertDialogHeader,31 AlertDialogTitle,32} from "@/components/lemma/ui/alert-dialog"33import { Button } from "@/components/lemma/ui/button"34import {35 Breadcrumb,36 BreadcrumbItem,37 BreadcrumbLink,38 BreadcrumbList,39 BreadcrumbPage,40 BreadcrumbSeparator,41} from "@/components/lemma/ui/breadcrumb"42import {43 Dialog,44 DialogContent,45 DialogDescription,46 DialogFooter,47 DialogHeader,48 DialogTitle,49} from "@/components/lemma/ui/dialog"50import {51 DropdownMenu,52 DropdownMenuContent,53 DropdownMenuItem,54 DropdownMenuSeparator,55 DropdownMenuTrigger,56} from "@/components/lemma/ui/dropdown-menu"57import { Input } from "@/components/lemma/ui/input"58import { Label } from "@/components/lemma/ui/label"59import { Skeleton } from "@/components/lemma/ui/skeleton"60import { useFiles, useFileSearch } from "lemma-sdk/react"61import type { FileResponse, FileSearchResultSchema, LemmaClient } from "lemma-sdk"62import { cn } from "@/components/lemma/lib/utils"6364export type LemmaFileBrowserAppearance = "default" | "minimal" | "borderless" | "contained"65export type LemmaFileBrowserDensity = "compact" | "comfortable" | "spacious"66export type LemmaFileBrowserRadius = "none" | "sm" | "md" | "lg" | "xl"67export type LemmaFileBrowserMode = "browser" | "picker"68export type LemmaFileBrowserNamespace = "PRIVATE" | "POD"6970export interface LemmaFileBrowserLinkAction {71 key: string72 label: React.ReactNode73 onSelect: (file: FileResponse) => void | Promise<void>74 disabled?: boolean75 hidden?: boolean76}7778export interface LemmaFileBrowserProps {79 client: LemmaClient80 podId?: string81 initialPath?: string82 selectedPath?: string | null83 enabled?: boolean84 limit?: number85 searchMinLength?: number86 mode?: LemmaFileBrowserMode87 namespace?: LemmaFileBrowserNamespace88 showNamespaceTabs?: boolean89 pickLabel?: React.ReactNode90 uploadEnabled?: boolean91 deleteEnabled?: boolean92 renameEnabled?: boolean93 moveEnabled?: boolean94 publishToPodEnabled?: boolean95 createFolderEnabled?: boolean96 linkActions?: LemmaFileBrowserLinkAction[]97 appearance?: LemmaFileBrowserAppearance98// … truncated
What it pulls in
npm packages
Other registry items
Files it writes
More from lemma
All 20 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Lemma Action Surfacelemma-action-surface | lemma | Blocks | Free | 4 deps | |
| Lemma Activity Feedlemma-activity-feed | lemma | Blocks | Free | 4 deps · 3 files | |
| Lemma Agent Conversation Experiencelemma-assistant-experience | lemma | Blocks | Free | 7 deps · 3 files | |
| Lemma Breadcrumbslemma-breadcrumbs | lemma | Blocks | Free | 3 deps | |
| Lemma Commentslemma-comments | lemma | Blocks | Free | 4 deps · 3 files | |
| Lemma Detail Panellemma-detail-panel | lemma | Blocks | Free | 4 deps · 7 files | |
| Lemma Document Workspacelemma-document-workspace | lemma | Blocks | Free | 6 deps | |
| Lemma Global Searchlemma-global-search | lemma | Blocks | Free | 4 deps |
