Skip to content

Backward incompatible changes in 1.1.0

There are quite a number of backward incompatible changes in this release, but we expect the impact to be limited, as many are in classes and interfaces not commonly used for checkout customizations.

We expect the most impact to be for custom form field implementations, which is why those changes are listed first. Other changes that will impact most implementations are a new translation phrase and a template change.

The following backward incompatible changes are included in release 1.1.0.

Backward incompatible localization changes

New phrase "Preparing form"

A new translation phrase "Preparing form" was added, in addition to the previously used phrase "Preparing address form".
Add the new phrase to all localizations before upgrading. Ensure to also keep the previous phrase "Preparing address form" in place.

Backward incompatible template changes

src/view/frontend/templates/checkout/address-view/address-list/form.phtml

DOM section "Save in address book" moved

Previously the "Save in address book" checkbox was rendered by this template if $magewire->canSaveToAddressBook() was true.
Now the checkbox is added as a form field dynamically using the form modifier API.
If you override the template in your theme, be sure to remove the section from the template after the upgrade, to avoid the checkbox being rendered twice.

src/view/frontend/templates/breadcrumbs.phtml

CSS selector changed

In the template breadcrumbs.phtml a typo in the CSS class nav-braincrumbs was fixed. The new CSS class is nav-breadcrumbs.
Any custom JavaScript, CSS, or tests using the old CSS class need to be changed after the upgrade.

di.xml preference changes

Other DI configuration changes in regard to constructor argument changes are listed with the respective classes below.

Preference for Hyva\Checkout\Model\Form\EntityFieldInterface changed

The preference for the interface configured in etc/di.xml has changed from \Hyva\Checkout\Model\Form\EntityField\EavAttributeField to \Hyva\Checkout\Model\Form\EntityField\Input.

Backward incompatible PHP Class and Interface changes

Class \Hyva\Checkout\Model\Form\EntityFormFieldFactory

The changes in this class will likely impact any instance using custom field implementations because of how they are registered in di.xml.

Method __construct signature change

This mainly affects how field types are registered in di.xml.
The $customFields argument is no longer present Previously field types were registered using:

    <type name="Hyva\Checkout\Model\Form\EntityFormFieldFactory">
        <arguments>
            <argument name="customFields" xsi:type="array">
                <item name="telephone" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\TelephoneAttributeField</item>
                <item name="email" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityCustomer\EmailAttributeField</item>
                <item name="password" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\Password</item>
                <item name="street" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\StreetAttributeField</item>
                <item name="region" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\RegionAttributeField</item>
                <item name="country_id" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\CountryAttributeField</item>
                <item name="postcode" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\PostcodeAttributeField</item>
                <item name="prefix" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\PrefixAttributeField</item>
                <item name="gender" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\GenderAttributeField</item>
            </argument>
        </arguments>
    </type>
This configuration no longer has any effect.
Before the upgrade, add any custom fields to the EntityFormFactory constructor argument $elements.
    <type name="Hyva\Checkout\Model\Form\EntityFormFactory">
        <arguments>
            <argument name="elements" xsi:type="array">
                <!-- Default EAV fields -->
                <item name="telephone" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\TelephoneAttributeField</item>
                <item name="email" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityCustomer\EmailAttributeField</item>
                <item name="street" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\StreetAttributeField</item>
                <item name="region" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\RegionAttributeField</item>
                <item name="country_id" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\CountryAttributeField</item>
                <item name="postcode" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\PostcodeAttributeField</item>
                <item name="prefix" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\PrefixAttributeField</item>
                <item name="gender" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\GenderAttributeField</item>

                <!-- Regular fields -->
                <item name="id" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\PrimaryKey</item>
                <item name="save" xsi:type="string">Hyva\Checkout\Model\Form\EntityField\SaveAs</item>
            </argument>
        </arguments>
   </type>
Alternatively, consider if it is possible to refactor your custom fields to be added dynamically using the form modifier API, avoiding di.xml registration completely.

After the upgrade, the old $customFields configuration for custom fields can be removed.

Method create signature change

The signature of create changed from
create(string $id, string $form = null, array $data = [], string $default = null) to
create(string $name, EntityFormInterface $form, array $arguments = [], string $type = null)

Any custom code calling this method needs to be changed after the upgrade.

Method getCustomFields removed

The method has no replacement after the upgrade.
Any plugins to the method will no longer be called. To dynamically add fields, change the code to the new form modifier API instead.

Interface \Hyva\Checkout\Model\Form\EntityFieldInterface

Method addAttribute deprecated.

The method remains for backward compatibility.
No action in custom code is required, but we recommend using the new setAttribute method instead:

public function setAttribute(string $name, $value = null): self

Method getFrontendInputAlias deprecated

The method remains for backward compatibility, but now simply returns getFrontendInput.
It is no longer called, so plugins to this method will no longer be triggered.

Before the upgrade, custom logic calling this method should be implemented additionally using the new form modifier API.
Custom form field implementations need to be prepared to no longer rely on this method.
After the upgrade, the old implementation using getFrontendInputAlias can be removed.

Method getBlockNameAffix deprecated

The method remains for backward compatibility, but now simply returns getFrontendInput.
It is no longer called, so plugins using this method will not be triggered after the upgrade.

Custom form field implementations need to be prepared to no longer rely on this method.

Method reset added

Before the upgrade implement the method in custom form field implementations unless they extend from \Hyva\Checkout\Model\Form\EntityField\AbstractEntityField which provides a default implementation.

Method setValidationRuleadded

Before the upgrade implement the method in custom form field implementations unless they extend from \Hyva\Checkout\Model\Form\EntityField\AbstractEntityField which provides a default implementation.

Method removeValidationRule added

Before the upgrade implement the method in custom form field implementations unless they extend from \Hyva\Checkout\Model\Form\EntityField\AbstractEntityField which provides a default implementation.

Class \Hyva\Checkout\Model\Form\EntityField\AbstractEntityField

The changes to this class will impact instances with custom form field implementations overriding the constructor.

Method __construct signature change

All parent dependencies have been encapsulated in a container to avoid future constructor signature changes.

public function __construct(FormFieldDependencies $context, array $data = [])
This change affects all custom form field implementations overriding __construct. Be aware the required change to keep your code compatible can not be done before the upgrade.
After the upgrade, change the overridden constructor to receive the new \Hyva\Checkout\Model\Form\EntityField\FormFieldDependencies dependency and pass it on to the parent.

Method renderValidationRules removed

Rendering validation rule attributes now is done via element attributes.
For Hyvä-Checkout native fields, these attributes are set by \Hyva\Checkout\Model\Form\EntityFormModifier\MagewireAddressModifier::applyHyvaValidationApiModifications.

Plugins to renderValidationRules method will need to be changed to use MagewireAddressModifier::applyHyvaValidationApiModifications instead, as the plugin no longer will be triggered.

Custom field implementations have to be changed to render the rules via renderAttributes instead.
Note the helper method setValidationRule can be used to set a rule on a field without accidentally removing already existing rules.

Method addAttribute deprecated

The method remains for backward compatibility.
No action in custom code is required, but we recommend using the new setAttribute method instead:

public function setAttribute(string $name, $value = null): self

Class \Hyva\Checkout\Model\Form\EntityField\EavAttributeField

The changes to this class will impact instances with custom form field implementations overriding the constructor.

Method __construct signature change

All parent dependencies have been encapsulated in a container to avoid future constructor signature changes.

public function __construct(FormFieldDependencies $context)
This change affects all custom form field implementations overriding __construct. Be aware the required change to keep your code compatible can not be done before the upgrade.
After the upgrade, change the overridden constructor to receive the new \Hyva\Checkout\Model\Form\EntityField\FormFieldDependencies dependency and pass it on to the parent.

Interface \Hyva\Checkout\Model\Form\EntityFormInterface

Method submit signature changed

Previously, the values to submit to a form were passed as an array argument to the submit method.
After the upgrade, submit no longer receives an argument.
The values should instead be set on the form using $form->fill($values), followed by $form->submit() without any argument.

Method createField signature changed

The old method signature is createField(string $name, array $data = []) The new method signature is createField(string $name, string $type = 'text', array $arguments = [])

After the upgrade, change any custom code calling the method to use the new signature.
Also, plugins on createField referring to the arguments need to be changed accordingly.

Method store removed

Previously this method was called by the frontend via Magewire to trigger state synchronization. The store method implementation in AbstractEntityForm did nothing at all.
If code in your instance calls the method store on a form instance, the call can be removed without issues.

New method group

The purpose of the method is to assign an array of elements as relatives to an ancestor.
Add this method to custom entity form implementations before the upgrade unless your custom form implementation extends from \Hyva\Checkout\Model\Form\AbstractEntityForm which provides a default implementation.

Method fill signature changed

Custom form implementations need to change the fill method to match the new signature defined in the interface.
This will only affect custom implementations not extending from \Hyva\Checkout\Model\Form\AbstractEntityForm.

The signature change is backward compatible for custom code calling fill, so no change is required there.
Plugins to the method should also continue to work without changes.

Method addField signature changed

The old method signature is public function addField(string $name, EntityFieldInterface $field)
The new method signature is public function addField(EntityFieldInterface $field)
Custom form implementations need to change the fill method to match the new signature defined in the interface.
This will only affect custom implementations not extending from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Custom code calling addField will need to be changed after the upgrade to no longer supply the field name as the first argument.

Method removeField signature changed

The old method signature is public function removeField(string $name) The new method signature is public function removeField(EntityFieldInterface $field)

Custom form implementations need to change the removeField method to match the new signature defined in the interface unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.
Custom code calling the method needs to be changed after the upgrade to supply the field instance instead of the field name.

Method createElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method addElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method getElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method removeElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method reinstateElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method createField signature changed

The old method signature is createField(string $name, array $data = []) The new method signature is createField(string $name, string $type = 'text', array $arguments = [])

Custom implementations need to be changed to match the new signature after the upgrade. Also, change any custom code calling the method to use the new signature, and plugins on createField referring to the arguments need to be changed accordingly, too.

Method getFactoryFor added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method getSaveService added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method registerModificationListener added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method unregisterModificationListener added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method dispatchModificationHook added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Class \Hyva\Checkout\Magewire\Checkout\AddressView\AbstractMagewireAddressForm

Method updatingAddressCountryId removed

Now the generic lifecycle method updated($value, $name) is used.

This potentially affects custom plugins for updatingAddressCountryId.
If such plugins exist in your Magento instance, before upgrading, add a matching plugin for the updated method.
In the plugin, place your custom code in a condition checking

`if ($name === 'address.country_id')`

After the upgrade, the original plugin method on updatingAddressCountryId can be removed.

saveDateTime and getSaveDateTime() deprecated

The property and the method still exist, but they have been deprecated without a replacement. If you are referring to these in your code, please change your code to keep track of the value with custom logic depending on your needs.

Any plugins to getSaveDateTime will no longer be executed after the upgrade, because the method is no longer called.

Interface \Hyva\Checkout\Model\Form\EntityFormInterface

Method submit signature changed

Previously, the values to submit to a form were passed as an array argument to the submit method.
After the upgrade, submit no longer receives an argument.
The values should instead be set on the form using $form->fill($values), followed by $form->submit() without any argument.

Method createField signature changed

The old method signature is createField(string $name, array $data = []) The new method signature is createField(string $name, string $type = 'text', array $arguments = [])

After the upgrade, change any custom code calling the method to use the new signature.
Also, plugins on createField referring to the arguments need to be changed accordingly.

Method store removed

Previously this method was called by the frontend via Magewire to trigger state synchronization. The store method implementation in AbstractEntityForm did nothing at all.
If code in your instance calls the method store on a form instance, the call can be removed without issues.

New method group

The purpose of the method is to assign an array of elements as relatives to an ancestor.
Add this method to custom entity form implementations before the upgrade unless your custom form implementation extends from \Hyva\Checkout\Model\Form\AbstractEntityForm which provides a default implementation.

Method fill signature changed

Custom form implementations need to change the fill method to match the new signature defined in the interface.
This will only affect custom implementations not extending from \Hyva\Checkout\Model\Form\AbstractEntityForm.

The signature change is backward compatible for custom code calling fill, so no change is required there.
Plugins to the method should also continue to work without changes.

Method addField signature changed

The old method signature is public function addField(string $name, EntityFieldInterface $field)
The new method signature is public function addField(EntityFieldInterface $field)
Custom form implementations need to change the fill method to match the new signature defined in the interface.
This will only affect custom implementations not extending from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Custom code calling addField will need to be changed after the upgrade to no longer supply the field name as the first argument.

Method removeField signature changed

The old method signature is public function removeField(string $name) The new method signature is public function removeField(EntityFieldInterface $field)

Custom form implementations need to change the removeField method to match the new signature defined in the interface unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.
Custom code calling the method needs to be changed after the upgrade to supply the field instance instead of the field name.

Method createElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method addElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method getElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method removeElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method reinstateElement added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method createField signature changed

The old method signature is createField(string $name, array $data = []) The new method signature is createField(string $name, string $type = 'text', array $arguments = [])

Custom implementations need to be changed to match the new signature after the upgrade. Also, change any custom code calling the method to use the new signature and plugins on createField referring to the arguments need to be changed accordingly, too.

Method getFactoryFor added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method getSaveService added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method registerModificationListener added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method unregisterModificationListener added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Method dispatchModificationHook added

Custom form implementations need to implement the method unless they extend from \Hyva\Checkout\Model\Form\AbstractEntityForm.

Interface \Hyva\Checkout\Magewire\Checkout\AddressView\MagewireAddressFormInterface

Method getAutoSaveTimeout deprecated

The method remains in the interface for backward compatibility.
Instead of the method, the $autoSaveTimeout public property of the implementation \Hyva\Checkout\Magewire\Checkout\AddressView\AbstractMagewireAddressForm should be used.

If code in your instance calls getAutoSaveTimeout() on Magewire components, no action is required. If there are plugins to getAutoSaveTimeout in your instance, they probably to be changed since the getAutoSaveTimeout method is no longer called, and thus the plugins will not be executed.

Method canSaveToAddressBook deprecated

The method remains in the interface for backward compatibility.
It is no longer called, so any plugins on the method will no longer be triggered.

Instead of this method, the form modifier \Hyva\Checkout\Model\Form\EntityFormModifier\WithAuthenticationModifier now registers a hook method that adds the "Save to Address Book" field if possible.

Class \Hyva\Checkout\Model\Component\AbstractAddressType

Method getComponentViewBlock is now abstract

As before, the method is also declared in the interface \Hyva\Checkout\Model\Component\AddressTypeInterface.
Now however, the getComponentViewBlock method is declared as abstract on AbstractAddressType, so any implementing class is required to implement it. Example implementations can be found in the child classes AddressTypeBilling or AddressTypeShipping.

This will only impact you if you implement AbstractAddressType in custom code. In that case, you now will need to implement the method.
The previous default implementation simply returned false.

Class \Hyva\Checkout\Model\Form\AbstractEntityForm

Method __construct signature change

A new optional constructor argument $factories = [] was added as the last parameter.
If an implementation of AbstractEntityForm overrides the default constructor, the new argument needs to be added to the constructor signature and passed to the parent constructor.
Technically, the new argument is optional (it defaults to an empty array), but if it is empty, an undefined index exception will be thrown, so it needs to be present.

Method store removed

Previously this method was called by the frontend via Magewire to trigger state synchronization. The store method itself did nothing at all.
If code in your instance calls the method store on a form instance, the call can be removed without issues.

New abstract method populate

This will only affect custom implementations of AbstractEntityForm. In this case, have a look at one of the implementations of the method in EavAttributeBillingAddressForm or EavAttributeShippingAddressForm.
The purpose of the method is to create all required form field elements and add them to the form instance.

New abstract method getTitle

As with populate, this change will only affect custom implementations of AbstractEntityForm.
The method simply returns the form name as an (untranslated) string.

Protected property entityFormFieldFactory removed

Instead of calling $this->entityFormFieldFactory->createField(...), use $this->createField(...) and pass the type of field to create as a fourth argument. The possible field factory types are the array keys declared in etc/frontend/di.xml for the Hyva\Checkout\Model\Form\AbstractEntityForm argument factories, that is, one of elements, fields or eav_fields.
For example:

$eavAttrField = $this->createField('my_eav_attr', 'text', $fieldContructorArguments, 'eav_fields');

Protected property layout deprecated

The property remains present for backward compatibility. The reason it is deprecated is that referring to it in the form is a layer violation.
The form instance should not directly handle rendering. This should instead be handled by renderer blocks, Magewire components, or view models.

No action is required before upgrading, but should there be a custom form implementation in your instance, we recommend refactoring the code accordingly.

Protected property $fields renamed to $elements

This change will impact instances with custom form implementations extending from AbstractEntityForm.
Before the upgrade, change your code to create a temporary getter or setter that uses either $this->fields - if it is present, or $this->elements as a fallback.

For example:

public function myGetFields()
{
  return property_exists($this, 'fields') ? $this->fields : $this->elements;
}

public function mySetField($key, $value)
{
    if (property_exists($this, 'fields')) {
        $this->fields[$key] = $value;
    } else {
        $this->elements[$key] = $value;
    }
}

After the upgrade, the custom form implementation can be changed to refer to $this->elements directly, and the temporary getter and setter can be removed.

Interface \Hyva\Checkout\Model\Form\EntityFieldFactoryInterface renamed to EntityElementFactoryInterface

This change will affect any custom field factory implementation, or any custom form implementation that depends on the interface.
Should this be the case in your instance, be aware the required changes can not be done before the upgrade to keep your code compatible.
After the upgrade, change your code accordingly to use the new interface.

Class \Hyva\Checkout\Model\Form\EntityField\Config\EavAttributeMappingConfig

Method hasTooltip removed

Before the upgrade, plugins to this method have to be changed to use getTooltip instead, as the original method will no longer be called.
Custom code calling hasTooltip needs to be changed to use getTooltip and use the return value in a boolean context instead.

Interface \Hyva\Checkout\Model\Form\EntityField\EavAttributeMappingConfigInterface

Method getComment added

Before the upgrade, add this method to custom implementations of the interface.

Class \Hyva\Checkout\Model\Form\EntityField\EavEntityAddress\RegionAttributeField

Method setIsRequired removed

The isRequired method now returns $this->attribute->getIsRequired() || $this->getConfig()->getRequired(), so setting it via property is no longer possible.
Plugins to this method and custom code calling it need to be changed accordingly before the upgrade.

Class \Hyva\Checkout\Model\Form\EntityField\Renderer\Regular removed

The class is replaced by \Hyva\Checkout\Model\Form\EntityFormElement\Renderer\Element. The method signatures also changed slightly, as the $form argument is no longer required.
The new renderer class also implements a new interface \Hyva\Checkout\Model\Form\EntityFormElement\RendererInterface instead of the old \Hyva\Checkout\Model\Form\EntityField\RendererInterface.

Class \Hyva\Checkout\Model\Form\EntityFormModifier\MagewireAddressModifier

Method applyCustomModificationsForField removed

Plugins to this method will no longer be triggered after the upgrade. Before the upgrade, implement the same customizations that were done in the plugin using the new form modifier API.

The same is true for custom code calling the method.

Method applyHyvaValidationApiModifications signature changed

Custom code calling the method as well as plugins to the method have to be changed accordingly after the upgrade.

Method withComponent removed

Plugins to this method will no longer be triggered after the upgrade.
Custom code calling the method will cease to function.
Change the code to use the new form modifier API, where the component can be received as an argument in specific hook method callbacks.

Class \Hyva\Checkout\Model\Form\EntityFormModifier\MagewireAuthenticationModifier

Method withEmail removed

Plugins to this method will no longer be triggered after the upgrade.
Custom code calling the method will cease to function.
Change the code to use the new form modifier API, where the field value can be retrieved by from the email form field.

Method withComponent removed

Plugins to this method will no longer be triggered after the upgrade.
Custom code calling the method will cease to function.
Change the code to use the new form modifier API, where the component can be received as an argument in specific hook method callbacks.

Class \Hyva\Checkout\ViewModel\Checkout\AddressView

Method __construct signature change

The constructor of the abstract class AddressView changed.
After the upgrade, all custom implementations overriding the constructor need to be changed to pass all required arguments to the parent.

Class \Hyva\Checkout\ViewModel\Checkout\AddressView\AbstractAddressList

Method __construct signature change

The constructor of the abstract class AbstractAddressList changed.
After the upgrade, all custom implementations overriding the constructor need to be changed to pass only the required arguments to the parent.

Interface \Hyva\Checkout\ViewModel\Checkout\AddressView\AddressListInterface

Method getAddressListItems signature changed

The return type changed from being not declared to array.
Any custom implementation not extending from \Hyva\Checkout\ViewModel\Checkout\AddressView\AbstractAddressList needs to be changed after the upgrade to match the new signature.

Interface \Hyva\Checkout\Model\Form\EntityFormFieldsFilterInterface removed

The interface was never used, so any custom implementations need to be changed to use a custom interface instead.

Interface \Hyva\Checkout\Model\Form\EntityField\RendererInterface deprecated

The new release introduces the concept of form elements, which are a superset of form fields.
Because of this change, the new interface Hyva\Checkout\Model\Form\EntityFormElement\RendererInterface was introduced as a replacement.

The old interface remains for backward compatibility, but because the signatures of the methods it defines are incompatible with the same methods in the new interface, it can no longer be used.

After the upgrade, and custom code referring to EntityField\RendererInterface has to be changed to refer to EntityFormElement\RendererInterface instead.