- How do I install this package for Filament v4 or v5?
- Run `composer require codewithdennis/filament-advanced-choice`, then add `@source '../../../../vendor/codewithdennis/filament-advanced-choice/resources/**/*.blade.php'` to your Filament theme CSS. Finally, rebuild assets with `npm run build` or `npm run dev`.
- Which Filament versions are supported?
- This package supports FilamentPHP v4 and v5 only. If you're using an older or newer version, check the GitHub repo for compatibility updates or migration paths.
- What’s the difference between `RadioCard` and `RadioStackedCard`?
- `RadioCard` displays options in a visually appealing card layout, while `RadioStackedCard` stacks options vertically for a more compact design. Both support the same methods like `options()` and `required()`.
- Can I use the `CheckboxList` field with descriptions and extras?
- Yes! The `CheckboxList` field supports descriptions (e.g., delivery details) and extras (e.g., pricing) via the `descriptions()` and `extras()` methods. These appear alongside each option for richer UX.
- Will this package work with my custom Filament theme?
- Yes, but ensure your theme includes the `@source` directive for the package’s Blade files. If CSS conflicts arise, namespace your theme’s styles or use Filament’s built-in utility classes for isolation.
- Are there any performance concerns with the additional JavaScript?
- The package adds minimal JS for features like `searchable()` or `bulkToggleable()`. If performance is critical, test in staging first—these features are optional and can be disabled if unused.
- How do I migrate from legacy Filament form fields to these new ones?
- Replace old fields (e.g., `Select` or `Checkbox`) with the new components (e.g., `CheckboxList`) in your resource classes. Start with non-critical fields, then rebuild assets. Use feature flags to roll out changes incrementally.
- Does this package support localization for multi-language apps?
- It integrates with Filament’s built-in localization system. Custom labels or descriptions must be manually translated in your language files, but the package itself handles localization hooks.
- What if another Filament package modifies the same form fields?
- Conflicts are possible if other packages override the same field classes. Test thoroughly in a staging environment, and consider isolating your theme’s CSS or using Filament’s plugin architecture to merge changes.
- Is there a test suite or documentation for edge cases?
- The package lacks an explicit test suite, so edge cases (e.g., large datasets or complex nested options) should be tested manually. Check the GitHub issues for reported bugs or community solutions.