MCPcopy
hub / github.com/supermemoryai/supermemory / SpaceSelector

Function SpaceSelector

apps/web/components/space-selector.tsx:109–920  ·  view source on GitHub ↗
({
	selectedProjects,
	onValueChange,
	variant = "default",
	triggerClassName,
	showNewSpace = true,
	enableDelete = false,
	compact = false,
	includeAuto = false,
	hideCount = false,
	enableEdit = false,
}: SpaceSelectorProps)

Source from the content-addressed store, hash-verified

107}
108
109export function SpaceSelector({
110 selectedProjects,
111 onValueChange,
112 variant = "default",
113 triggerClassName,
114 showNewSpace = true,
115 enableDelete = false,
116 compact = false,
117 includeAuto = false,
118 hideCount = false,
119 enableEdit = false,
120}: SpaceSelectorProps) {
121 const [showCreateDialog, setShowCreateDialog] = useState(false)
122 const [showSelectSpacesModal, setShowSelectSpacesModal] = useState(false)
123 const [showEditDialog, setShowEditDialog] = useState(false)
124 const [recents, setRecents] = useState<string[]>([])
125 const [deleteDialog, setDeleteDialog] = useState<{
126 open: boolean
127 project: DeleteProjectTarget | null
128 action: "move" | "delete"
129 targetProjectId: string
130 }>({
131 open: false,
132 project: null,
133 action: "move",
134 targetProjectId: "",
135 })
136 const [bulkDeleteDialog, setBulkDeleteDialog] = useState<{
137 open: boolean
138 projects: DeleteProjectTarget[]
139 confirmation: string
140 }>({
141 open: false,
142 projects: [],
143 confirmation: "",
144 })
145
146 const { deleteProjectMutation, deleteProjectsMutation } =
147 useProjectMutations()
148 const { allProjects, isLoading } = useContainerTags()
149 const { user } = useAuth()
150
151 useEffect(() => {
152 setRecents(readRecents())
153 }, [])
154
155 const activeTag = selectedProjects[0] ?? DEFAULT_PROJECT_ID
156 const { data: spaceCountData } = useQuery({
157 queryKey: ["space-selector-count", activeTag],
158 queryFn: async (): Promise<number> => {
159 const response = await $fetch("@post/documents/documents", {
160 body: {
161 page: 1,
162 limit: 1,
163 sort: "createdAt",
164 order: "desc",
165 containerTags: [activeTag],
166 },

Callers

nothing calls this directly

Calls 15

useProjectMutationsFunction · 0.90
useContainerTagsFunction · 0.90
useAuthFunction · 0.90
detectPluginSpaceFunction · 0.90
usePluginSpaceMetaFunction · 0.90
isOwnConversationSpaceFunction · 0.90
spaceSelectorDisplayNameFunction · 0.90
cnFunction · 0.90
dmSansClassNameFunction · 0.90
pluginInitialFunction · 0.90
dmSans125ClassNameFunction · 0.90
readRecentsFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…