The reading configuration $config = $this->config->get("types.$entity_type");
, prev the changes introduced, may return a null value that is not compatible with the declaration of the second argument of the hook function ( hook_content_lock_entity_lockable(\Drupal\Core\Entity\EntityInterface $entity, array $config, string $form_op = NULL)
), which expects an array.
This causes a TypeError error.
With these changes the month selector does not appear if the prev month the current has no slots.
In this way you cannot select a next months.
Example:
Start date: April 10th
End date: June 28th
Current date: May 11th
I would also apply the substitution to the variable with the element name
I'm having a problem with this change.
The ID (in getWrapperId
method) is recalculated on every interaction with the form (ex. Ajax), in my case when the inline-entity-form throws a validation error of some field. Once corrected the value and re-submitted the form is not closed, I think because the unique id is recalculated in subsequent calls (no button between "create" or "cancel" works).
For a quick test you can create an "entity-reference" field that uses the "inlineEntityForm Complex" widget. The referenced entity must have some validation, such as a required field.
When creating the related entity try to throw error, correct and save the inline-entity-form.
Rolling back the change (or static id assignment like in the previous version) solves the problem.