# Magic Picker

**Dosyayı seçin, geriye bir MagicFile alın.**

Magic framework uygulamaları için `Pick` facade'i: galeriyi, kamerayı, dosya diyaloğunu ve kaydetme diyaloğunu açın, seçicilerden `MagicFile` alın.

## Seçin, kaydedin, paylaşın.

`Pick` facade'i galeriyi, kamerayı, dosya diyaloğunu ve kaydetme diyaloğunu açar. Android, iOS, web, macOS, Windows ve Linux'ta çalışır; iki istisna aşağıda.

### Galeriden seçim

`Pick.image`, `Pick.images`, `Pick.media` ve `Pick.video` galeriyi açar, `MagicFile` döndürür; `Pick.images` iptalde boş liste verir.

[Daha fazla Galeriden seçim hakkında](https://anilcancakir.com/magic/docs/picker/basics/pick.md)

### Kamerayla çekim

`Pick.camera` ve `Pick.recordVideo`, `fallbackToGallery` seçeneğini ve `onError` callback'ini alır. Desktop'ta kamera için özel bir `image_picker` delegate'i gerekir.

[Daha fazla Kamerayla çekim hakkında](https://anilcancakir.com/magic/docs/picker/basics/pick.md)

### Sistem dosya diyaloğu

`Pick.file`, `Pick.files` ve `Pick.directory` sistem dosya diyaloğunu açar; isteğe bağlı `extensions` filtresi vardır. `Pick.directory` yol döndürür, web'de yoktur.

[Daha fazla Sistem dosya diyaloğu hakkında](https://anilcancakir.com/magic/docs/picker/basics/pick.md)

### Kaydetme diyaloğu

`Pick.saveFile` kaydetme diyaloğunu açar ve `Uri?` döndürür: desktop ve iOS'ta `file`, Android'de `content`, web'de `blob` scheme'i.

[Daha fazla Kaydetme diyaloğu hakkında](https://anilcancakir.com/magic/docs/picker/basics/pick.md)

### İki yönlü dönüşüm

`XFile.toMagicFile()` ve `MagicFile.toXFile()` iki yönde çevirir. Byte'lar `bytesReader` ile ihtiyaç anında okunur; web'de `toXFile` asenkrondur.

[Daha fazla İki yönlü dönüşüm hakkında](https://anilcancakir.com/magic/docs/picker/basics/xfile.md)

### Share sheet ile indirme

`PickerServiceProvider` download handler'ını ayarlar; `Storage.download` mobilde ve desktop'ta share sheet açar. Web'de indirme tarayıcıda başlar.

[Daha fazla Share sheet ile indirme hakkında](https://anilcancakir.com/magic/docs/picker/basics/download.md)

## Saniyeler içinde ekleyin

```bash
flutter pub add magic_picker
```

Ya da `pubspec.yaml` dosyasına ekleyin:

```yaml
dependencies:
  magic_picker: ^1.0.1
```

Ya da yapay zeka ajanınıza şu istemi verin:

```text
https://anilcancakir.com/magic/docs/picker/llms.txt adresini oku ve Magic Picker paketini bu projeye kur.
```

## Dokümanlar

### Getting Started

- [Installation](https://anilcancakir.com/magic/docs/picker/getting-started/installation.md)

### The Basics

- [Pick](https://anilcancakir.com/magic/docs/picker/basics/pick.md)
- [Download](https://anilcancakir.com/magic/docs/picker/basics/download.md)
- [XFile Conversion](https://anilcancakir.com/magic/docs/picker/basics/xfile.md)

### Guides

- [Testing](https://anilcancakir.com/magic/docs/picker/guides/testing.md)
