* chore(platform): resize works correctly
* chore(platform): height correct after resize
* test(platform): add new dimensions unit tests
* chore(platform): works with keyboard too
* chore(platform): store values
* chore(platform): change const to var
Internal refactor completed in order to improve tree shaking and dead
code removal. The public API, with an exception to ion-slides, has
stayed the same. However, internally many changes were required so
bundlers could better exclude modules which should not be bundled.
Ultimately most changes resorted to removing references to `window` or
`document`, or a module that referenced one of those.
BREAKING CHANGES
ion-slides was refactored to remove the external dependencies, and
rewritten in TypeScript/ES6 modules to again improve tree shaking
abilities.
It was possible for the incorrect window width and height to be
remember when the keyboard was showing. This makes sure to keep the
most accurate dimensions whether the app started either landscape or
portrait, if the keyboard was opened or closed, and if the app was
rotated. Related #6228