follows-up on https://github.com/shapeshift/web/pull/6810 - since we can't do the noUncheckedIndexedAccess dance without having 500+ errors, this at least brings strictness for the specific
case of Array.prototype.split() returning (string | undefined)[] vs. string with our current compiler options.
Note that this aims to be a non-breaking change - while the strictness is now present, all type violations have been tackled in a way that should be non-breaking, with either:
nullish coalescing to '' (i.e no different than before, since we were assuming a string)
throwing exceptions when applicable, for the specific cases where this doesn't change the flow and things would already fail as-is
Pull Request Type
[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
Description
follows-up on https://github.com/shapeshift/web/pull/6810 - since we can't do the
noUncheckedIndexedAccess
dance without having 500+ errors, this at least brings strictness for the specific case ofArray.prototype.split()
returning(string | undefined)[]
vs.string
with our current compiler options.Note that this aims to be a non-breaking change - while the strictness is now present, all type violations have been tackled in a way that should be non-breaking, with either:
''
(i.e no different than before, since we were assuming a string)Pull Request Type
Issue (if applicable)
N/A, follows-up on https://github.com/shapeshift/web/pull/6810
Risk
Low but not nil by definition - see testing steps
Testing
The two above don't require new Tx - just do a full cache clear and ensure Txs look sane against develop
THOR Txs with a memo are still parsed in Tx history without errors thrown (e.g swaps)
THOR Txs without a memo are still parsed in Tx history without errors thrown (e.g sends)
Wallet creation is still happy on mobile (PR deployed to gome, just point your mobile app to gome and test it out)
Backup passphrase is still happy (test on either desktop or mobile)
Engineering
Operations
Screenshots (if applicable)
Txs look sane after a cache clear (left: develop, right: this diff with cleared cache)
Wallet creation is still happy on mobile (tested on linked upstream gome in the Android app)