PHPackages                             insitaction/easyadmin-fields-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. insitaction/easyadmin-fields-bundle

ActiveSymfony-bundle[Admin Panels](/categories/admin)

insitaction/easyadmin-fields-bundle
===================================

Set of easyadmin fields and useful helpers for Insitaction

5.1.0(2y ago)1910.3k↓37.8%4[3 issues](https://github.com/TCM-dev/EasyAdminFieldsBundle/issues)MITPHPPHP &gt;=8.0

Since Nov 12Pushed 5mo ago2 watchersCompare

[ Source](https://github.com/TCM-dev/EasyAdminFieldsBundle)[ Packagist](https://packagist.org/packages/insitaction/easyadmin-fields-bundle)[ RSS](/packages/insitaction-easyadmin-fields-bundle/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (4)Versions (26)Used By (0)

This package is not maintained anymore
======================================

[](#this-package-is-not-maintained-anymore)

I don't have time for this and I don't work on EasyAdmin backoffice anymore I strongly encourage anyone who can to make a better bundle for this, many bugs were encountered, the main paint points are to find a correct selector that won't have any side effects, and make everything compatible with the lifecycle of the forms

EasyAdminFieldsBundle
=====================

[](#easyadminfieldsbundle)

Installation
------------

[](#installation)

Run the following command to install EasyAdminFields in your application:

```
$ composer require insitaction/easyadmin-fields-bundle
```

Use the bundle assets

```
// DashboardController.php

use Insitaction\EasyAdminFieldsBundle\EasyAdminFieldsBundle;

public function configureAssets(): Assets
{
    $assets = parent::configureAssets();

    return EasyAdminFieldsBundle::configureAssets($assets);
}
```

Without the helper method

```
// DashboardController.php

use Insitaction\EasyAdminFieldsBundle\Asset\AssetPackage;

public function configureAssets(): Assets
{
    $jsAsset = Asset::new('app.js')->package(AssetPackage::PACKAGE_NAME);
    $cssAsset = Asset::new('app.css')->package(AssetPackage::PACKAGE_NAME);

    return parent::configureAssets()
        ->addJsFile($jsAsset)
        ->addCssFile($cssAsset);
}
```

Fields
------

[](#fields)

### Mask field

[](#mask-field)

The mask field allows you to show or hide other fields depending on one field's value

#### Usage

[](#usage)

- With the MaskField wrapper

```
MaskField::adapt(
    BooleanField::new('hasAuthor'),
    [
        "true" => ['author']
    ]
)
```

- Directly adding form type options to your field

```
BooleanField::new('hasAuthor')
    ->setFormTypeOptions([
        'row_attr' => [
            'data-controller' => 'mask-field',
            'data-mask-field-map' => MaskField::encodeMap([
                "true" => ['author']
            ])
        ],
    ])
```

#### Configuration

[](#configuration)

The map configuration works like this:

- The key corresponds to an input value
- The value is an array of field names

With this map configuration :

```
[
    "true" => ['author']
]
```

The `author` field is shown only when `true` is the input value, otherwise, the `author` field is masked

With this map configuration :

```
[
    "A" => ['field1'],
    "B" => ['field1', 'field2'],
    "C" => ['field2'],
]
```

The `field1` field is shown when either `A` or `B` is the input value, the `field2` field is shown when either `B`or `C` is the input value

### Dependent field

[](#dependent-field)

The dependent field can wrap ChoiceField or AssociationField to make their available options dynamic If any of the field dependencies is updated, a request is emitted to retrieve new options for the dependent field

#### Usage

[](#usage-1)

- With the DependentField wrapper

```
 DependentField::adapt(
    AssociationField::new('author'),
    [
        'callback_url' => $this->urlGenerator->generate('authors', [], UrlGeneratorInterface::ABSOLUTE_URL),
        'dependencies' => ['gender'],
        'fetch_on_init' => true
    ]
)
```

#### Configuration

[](#configuration-1)

##### Dependencies

[](#dependencies)

The `dependencies` array is an array of string corresponding to other fields name

With this dependencies configuration, the callback will be called everytime the `gender` field is updated

```
'dependencies' => ['gender']
```

##### Callback Url

[](#callback-url)

The `callback_url` must be an url that accepts a GET request which returns data of this format:

```
[
  {
    "text": "John Doe",
    "value": 1
  },
  {
    "text": "John Snow",
    "value": 2
  }
]
```

The following query parameters will be sent with the request (this corresponds to the dependencies array and the corresponding field value)

```
{
  "gender": "Male"
}
```

##### Fetch on init

[](#fetch-on-init)

The `fetch_on_init` parameter defines wheter or not the callback should be executed immediatly after the field is mounted

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance45

Moderate activity, may be stable

Popularity35

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 81.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~33 days

Total

25

Last Release

836d ago

Major Versions

1.5.1 → 2.0.02022-01-04

2.1.1 → 3.0.332022-10-03

3.2.4 → 4.02022-11-02

4.0.7 → 5.0.02023-12-15

PHP version history (2 changes)1.1.0PHP &gt;=7.4

1.1.1PHP &gt;=8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/9eba58f767c3088bea3b0c9f3fc566069153cd24e344c3a29505b05fc11f9b89?d=identicon)[vwojtasinski](/maintainers/vwojtasinski)

![](https://avatars.githubusercontent.com/u/96786948?v=4)[Insitaction](/maintainers/Insitaction)[@Insitaction](https://github.com/Insitaction)

---

Top Contributors

[![TCM-dev](https://avatars.githubusercontent.com/u/51787551?v=4)](https://github.com/TCM-dev "TCM-dev (13 commits)")[![BurningDog](https://avatars.githubusercontent.com/u/787653?v=4)](https://github.com/BurningDog "BurningDog (1 commits)")[![evotodi](https://avatars.githubusercontent.com/u/1625853?v=4)](https://github.com/evotodi "evotodi (1 commits)")[![Yonn-Trimoreau](https://avatars.githubusercontent.com/u/5746666?v=4)](https://github.com/Yonn-Trimoreau "Yonn-Trimoreau (1 commits)")

### Embed Badge

![Health badge](/badges/insitaction-easyadmin-fields-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/insitaction-easyadmin-fields-bundle/health.svg)](https://phpackages.com/packages/insitaction-easyadmin-fields-bundle)
```

###  Alternatives

[easycorp/easyadmin-demo

EasyAdmin Demo Application

145.7k](/packages/easycorp-easyadmin-demo)[appaydin/pd-admin

Symfony Powerful Admin Dashboard

1001.1k](/packages/appaydin-pd-admin)[2lenet/crudit-bundle

The easy like Crud'it Bundle.

1714.8k8](/packages/2lenet-crudit-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
