Releases: davidjbradshaw/iframe-resizer
Releases · davidjbradshaw/iframe-resizer
v5.1.5
What's Changed
- Added: Babel runtime to
@iframe-resizer/react
in #1289 - Fixed: Upgrade link in version mismatch warning in
@iframe-resizer/child
Full Changelog: v5.1.4...v5.1.5
v5.1.4
What's Changed
- Fixed: Issue when child code is run before
document.body
has a value in #1277
Full Changelog: v5.1.3...v5.1.4
v5.1.3
What's Changed
- Fixed: WeakMap TypeError on 0 height iframes in #1276
Full Changelog: v5.1.2...v5.1.3
v5.1.2
What's Changed
- Fixed: Title attr check failed due to missing iframe on page in #1274
Full Changelog: v5.1.0...v5.1.2
v5.1.1
What's Changed
Improved logging when calculating page size from document elements due to content overflow being detected.
- The first time a new element has been found to have the largest position, it is now logged to the console.
- Perf warnings are now throttled and only a worst perf number will trigger an additional warning.
- Perf warning now has a link to the performance page on the website for further advice.
v5.1.0
What's Changed
- Added:
scrollBy()
to Child API in #1259 - Added:
sizeSelector
to Child options in #1271 - Added:
waitForLoad
to Parent options in #1267 - Added: Alias
getParentProps
->getParentProperties
in #1266 - Accessibility: Set iframe
title
attribute from child page<title>
in #1257
Full Changelog: v5.0.2...v5.1.0
v5.0.2
v5.0.1
What's Changed
- Fix: Add throttling to call from ResizeObserver events to address issue in Safari when iframe contains animations.
v5.0.0
New documentation site
Upgrade
For the most part version 5 will be a drop in replacement. The following guide explains how the API has been simplified in the new version.
License
This package is now dual licensed via the GPL / Commercial license.
New features
- Added automatic selection of best page size calculation method
- Added check for html elements overflowing document body with console warning to advise on how to optimise the performance of page size calculation in this this situation
- Added
getParentProperties()
function that returns the following information from the parent page:- iFrame boundingClientRect details
- Position and size of scrollable page area
- Inner size of the bowser window
- Added
offset
option to adjust values returned from iframe - Added
direction
option - Added
postMessageTarget
option to better support GAS iframes - Log element used to calculate lowest/rightmost/tagged element
- Added visibility checks to disable resizing when either the page or the iframe is hidden
- Added direct message passing for same domain iframes, this gives much improved performance over
postMessage()
- Added CSS animation to examples
- Added width resizing to the examples
- Added WordPress guide to docs
Changes
- Changed default height calculation method to
auto
- Improved performance optimisation of element based page size calculation methods
- Replaced user interaction and browser event detection with the newish
ResizeObserver
API, by adding it to all non-static page elements. This provides improved detection of CSS:hover
, CSS Animation,<textarea/>
user resizing events and remove the need for user interaction event listeners. - Deprecated
heightCalculationMethod
/widthCalculationMethod
in favour of auto calculation mode detection - Deprecated
data-iframe-height
/date-iframe-width
fordata-iframe-size
- Deprecated
sizeHeight
andsizeWidth
in favour of newdirection
option - Deprecated
getPageInfo()
in favour ofgetParentProperties()
which returns more reliable and useful data - Renamed
onInit()
->onReady()
, and added deprecation warning - Renamed
size()
->resize()
in iframe, and added deprecation warning - Split out jQuery support into it's own packages
@iframe-resizer/jquery
- Changed
MutationObserver
to now just look for added nodes in the document tree and ensure that new non-static elements are covered byResizeObserver
- Enhanced warning messages
- Removed
minHeight
,maxHeight
,minWidth
andmaxHeight
options, as modern CSS can now deal with this for us. - Removed log messages from production build (reduces file sizes by 20%)
- Removed deprecated v3 methods. Calls to v3 methods will now fail, rather than be a warning
- Removed
mouse
,touch
andresize
event listeners, as not required alongsideResizeObserver
- Removed jQuery from examples
- Removed legacy browser support, base support is now ecmaScript2020
- Removed interval fallback, as no longer support browsers that require it
- Removed Firefox invisible iframe fix, as no longer required
Fixes
- Updated
lowestElement
to exclude non-visible elements (head
,meta
,base
,title
,script
,link
,style
,map
,area
,option
,optgroup
,template
,track
,wbr
,nobr
) and then check remaining elements usingelement.checkVisibility()
- Stop rounding up sub-pixel heights
- Fixed possible memory leak in addImageListeners (function no longer required)
- Deconflict AMD and CommonJS
- Created React Example (onMessage)
- Fixed
getPageInfo()
to update when the size of the iframe changes - Fix disabling
getPageInfo()
updates after leaving page in iframe that requested them - Fixed forcing html/body height to
auto !important
, incorrectly setting these values is the number one cause of problems effecting the page resizing - Fixed issue with height / width being returned as strings, rather than numbers by some Parent Page API methods.
Chore
- Migrate build to Rollup
- Migrate integration test to Chrome Headless
- Split into multiple packages
- Refactored code to more modern JavaScript (ongoing)
- Migrate unit tests to Jest (ongoing)
- Create publish script
- Updated dependancies
v4.3.6
4.3.6