Skip to main content
← Back to Table of Contents

Summary

Mapbox-powered address search without a map — combobox autocomplete with structured or string storage. Shares geocoding logic with MapPickerField but omits coordinates by default. On phones and tablets, suggestions open as a bottom sheet with an in-sheet search field (same overlay stack as SelectField) instead of a desktop dropdown. Requires Mapbox token in config('filament-flex-fields.mapbox.access_token') or per-field mapboxToken().

Basic usage

Structured address storage

String storage


State & storage

Canonical keys

The field uses a standard set of keys for internal state: street, city, region, postcode, country, country_name, place_name.

Storage formats


Configuration API

All methods accept Closure unless noted.

searchTypes()

Limit results to specific Mapbox place types:
Supported type strings / enum cases: country, region, postcode, district, place, locality, neighborhood, address, poi.
Note: Mapbox Geocoding v5 treats poi as general points of interest. It does not filter by category (restaurant vs cafe). Category search requires Mapbox Search Box (not wired in this field).

language()

Preferred language for result labels. When null (or omitted), the field falls back to config('filament-flex-fields.mapbox.default_language'), then app()->getLocale().

FlexField / Flex Forms schema config

When building via FlexFieldFormBuilder / Flex Forms Studio, these config keys map onto the fluent API (see also GeocodingSearchScope presets): GeocodingSearchScope enum (Bjanczak\FilamentFlexFields\Enums\GeocodingSearchScope) is the shared preset map used by Address Autocomplete and Map Picker configurators.

Real-world examples

Simple city picker

Full shipping address


Playground

/admin/flex-fields-playground/address-autocomplete See Playground for setup.

CSS classes (reference)


Performance