You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some values like vMerge and vAlign are type-hinted as string (not nullable) although they are initialized as null until explicitly set/parsed.
That means, there is no proper way to unset some values where it would make sense to 'remove' that attribute.
The parameter for setVMerge and setVAlign for example even has a default value of null set, which is not valid according to its type-hint and makes everything even more confusing.
Expected behavior
I think it would make sense to allow null to be set for some attributes and everything to be type-hinted accordingly.
I wouldn't mind creating a PR for that if allowing null is the correct thing to do.
I'm planning to do some PRs anyway already – I just wasn't sure if such a PR would be accepted or whether another solution would be preferred.
* fix: Allow vAlign and vMerge on Style\Cell to be set to null (#2673)
vAlign and vMerge are initialized as `null` in every style until it is explicitly set.
Right now, it is not possible to unset them, after it has been set once.
I've added a null-check to skip the validation, based on the default
parameter value of `null`, which indicates to me that it once was intended to work like this.
I've also fixed the type-hints, which were wrong from the start.
* docs(changelog): Add note about supporting vAlign and vMerge to be unset
* test: Extend existing table test case to check if unsetting vAlign works
* test: Add test case to check if unsetting vMerge works
This should fix the reduction in test coverage because of the
new null checking code in the Setter
Describe the bug and add attachments
Some values like vMerge and vAlign are type-hinted as
string
(not nullable) although they are initialized asnull
until explicitly set/parsed.That means, there is no proper way to unset some values where it would make sense to 'remove' that attribute.
The parameter for
setVMerge
andsetVAlign
for example even has a default value ofnull
set, which is not valid according to its type-hint and makes everything even more confusing.Expected behavior
I think it would make sense to allow
null
to be set for some attributes and everything to be type-hinted accordingly.Steps to reproduce
PHPWord version(s) where the bug happened
master
PHP version(s) where the bug happened
8.3 and all the others
Priority
The text was updated successfully, but these errors were encountered: