Files
supabase/apps/studio/components/interfaces/Storage/BucketFilePickerDialog/BucketFilePickerHeaderSelection.tsx
Ivan Vasilov 35905e70d5 feat: Add a logo picker for OAuth app creation sheet (#44995)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Logo field now accepts/editable logo URL, plus a new storage-based
Logo Picker to select or remove images from project storage.
* Full storage picker: browse buckets, columns/list views, search,
drag‑and‑drop uploads, file previews (image/audio/video), and
single-file selection with responsive mobile/desktop layouts.

* **Refactor**
* Logo submission streamlined to send the provided URL directly (legacy
file-read/upload flow removed).
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-05-06 16:44:18 +02:00

28 lines
939 B
TypeScript

import { X } from 'lucide-react'
import { Button } from 'ui'
import { useBucketFilePickerStateSnapshot } from './BucketFilePickerState'
export const BucketFilePickerHeaderSelection = () => {
const { selectedItems, clearSelectedItems } = useBucketFilePickerStateSnapshot()
return (
<div className="z-10 flex h-[40px] items-center rounded-t-md bg-brand-400 px-2 py-1 shadow in-data-[theme*=dark]:bg-brand-500">
<Button
icon={<X size={16} strokeWidth={2} />}
type="text"
onClick={() => clearSelectedItems()}
aria-label="Clear selected items"
/>
<div className="ml-1 flex items-center space-x-3">
<p className="mb-0 text-sm text-foreground">
<span style={{ fontVariantNumeric: 'tabular-nums' }}>{selectedItems.length}</span> items
selected
</p>
<div className="border-r border-green-900 py-3 opacity-50" />
</div>
</div>
)
}