Coerce prop values across compatible types on JS component prop-shape change (instead of dropping)
Follow-up to #3587711 / !1015 on this comment: https://git.drupalcode.org/project/canvas/-/merge_requests/1015#note_858260 On #3587711 we drop values when a Code Component's prop type changes between versions. The `JsComponentInstanceUpdater::update()` validates the existing input against the new shape and drops the props that no longer validates. Some values can be convert it to the new prop type without losing it: - `integer` -> `string` - `string, format: uri` -> `string` - `string` -> `integer` (if `$previous_prop == $future_prop` same, not equal) - others?
issue