> ## Documentation Index
> Fetch the complete documentation index at: https://flex-fields.bjanczak.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Examples target Filament 5. Verify optional dependencies before configuring integrations.
> Upload transfer completion, permanent storage and record acceptance are separate milestones. Native and Spatie image conversions retain the original.

# Handle an unavailable extension

> Inspect stored schemas and preserve data when a package or version is missing.

```php theme={"theme":{"light":"github-light","dark":"github-dark"}}
use Bjanczak\FilamentFlexFields\Support\Components\Schema\FamilySchemaAvailability;

$report = app(FamilySchemaAvailability::class)->inspect($definitions);

if (! $report['ready']) {
    // Show an appropriate application configuration message.
    // Retain the original definitions and values until the issue is resolved.
}
```

The bounded preflight reports missing families/adapters, required configuration
migrations, configuration newer than the installed contract, value-version
mismatches and malformed current configuration. It uses immutable registration
metadata and never instantiates optional adapters. Reports contain identifiers,
version numbers and issue codes, without values, option contents or PHP classes.
`ready` is an installation/configuration preflight, not an authorization result
or a promise that a custom migration callback will succeed. A save that includes
an unavailable family fails explicitly instead of silently deleting its data.

## Continue reading

[Extension guides](https://flex-fields.bjanczak.com/docs/extensions.md) · [Definition and registration reference](https://flex-fields.bjanczak.com/docs/extensions/definition-reference.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.