Skip to content

Commit

Permalink
Release 1.0.12
Browse files Browse the repository at this point in the history
  • Loading branch information
Donaldcwl committed Jun 4, 2020
1 parent f205579 commit 9fcc363
Show file tree
Hide file tree
Showing 20 changed files with 167 additions and 138 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## v1.0.12 (4 June 2020)
* fixed: issue with SSR [#58](https://github.com/Donaldcwl/browser-image-compression/issues/58)

## v1.0.11 (8 May 2020)
* fixed: issue with IE support [#38](https://github.com/Donaldcwl/browser-image-compression/issues/38) [#23](https://github.com/Donaldcwl/browser-image-compression/issues/23)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ yarn add browser-image-compression
```
or use a CDN like [delivrjs]:
```
https://cdn.jsdelivr.net/npm/browser-image-compression@1.0.11/dist/browser-image-compression.js
https://cdn.jsdelivr.net/npm/browser-image-compression@1.0.12/dist/browser-image-compression.js
or
https://cdn.jsdelivr.net/npm/browser-image-compression@latest/dist/browser-image-compression.js
```
Expand Down
6 changes: 3 additions & 3 deletions coverage/coverage-final.json

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions coverage/coverage-summary.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{"total": {"lines":{"total":206,"covered":167,"skipped":0,"pct":81.07},"statements":{"total":220,"covered":169,"skipped":0,"pct":76.82},"functions":{"total":28,"covered":24,"skipped":0,"pct":85.71},"branches":{"total":103,"covered":58,"skipped":0,"pct":56.31}}
{"total": {"lines":{"total":206,"covered":167,"skipped":0,"pct":81.07},"statements":{"total":220,"covered":169,"skipped":0,"pct":76.82},"functions":{"total":28,"covered":24,"skipped":0,"pct":85.71},"branches":{"total":105,"covered":60,"skipped":0,"pct":57.14}}
,"D:\\Projects\\browser-image-compression\\lib\\image-compression.js": {"lines":{"total":47,"covered":47,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":47,"covered":47,"skipped":0,"pct":100},"branches":{"total":24,"covered":20,"skipped":0,"pct":83.33}}
,"D:\\Projects\\browser-image-compression\\lib\\index.js": {"lines":{"total":30,"covered":27,"skipped":0,"pct":90},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":30,"covered":27,"skipped":0,"pct":90},"branches":{"total":19,"covered":13,"skipped":0,"pct":68.42}}
,"D:\\Projects\\browser-image-compression\\lib\\utils.js": {"lines":{"total":129,"covered":93,"skipped":0,"pct":72.09},"functions":{"total":23,"covered":19,"skipped":0,"pct":82.61},"statements":{"total":143,"covered":95,"skipped":0,"pct":66.43},"branches":{"total":60,"covered":25,"skipped":0,"pct":41.67}}
,"D:\\Projects\\browser-image-compression\\lib\\utils.js": {"lines":{"total":129,"covered":93,"skipped":0,"pct":72.09},"functions":{"total":23,"covered":19,"skipped":0,"pct":82.61},"statements":{"total":143,"covered":95,"skipped":0,"pct":66.43},"branches":{"total":62,"covered":27,"skipped":0,"pct":43.55}}
}
18 changes: 12 additions & 6 deletions coverage/image-compression.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,9 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<a name='L109'></a><a href='#L109'>109</a>
<a name='L110'></a><a href='#L110'>110</a>
<a name='L111'></a><a href='#L111'>111</a>
<a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
<a name='L112'></a><a href='#L112'>112</a>
<a name='L113'></a><a href='#L113'>113</a>
<a name='L114'></a><a href='#L114'>114</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
Expand Down Expand Up @@ -236,6 +238,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">6x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">6x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
Expand All @@ -251,6 +255,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">9x</span>
Expand All @@ -268,8 +274,6 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">2x</span>
Expand Down Expand Up @@ -345,6 +349,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
&nbsp;
const origExceedMaxSize = tempFile.size &gt; maxSizeByte
const sizeBecomeLarger = tempFile.size &gt; file.size
// console.log('original file size', file.size)
// console.log('current file size', tempFile.size)
&nbsp;
// check if we need to compress or resize
if (!origExceedMaxSize &amp;&amp; !sizeBecomeLarger) {
Expand All @@ -362,6 +368,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
while (remainingTrials-- &amp;&amp; (currentSize &gt; maxSizeByte || currentSize &gt; sourceSize)) {
const newWidth = origExceedMaxSize ? canvas.width * 0.95 : <span class="branch-1 cbranch-no" title="branch not covered" >canvas.width</span>
const newHeight = origExceedMaxSize ? canvas.height * 0.95 : <span class="branch-1 cbranch-no" title="branch not covered" >canvas.height;</span>
// console.log('current width', newWidth);
// console.log('current height', newHeight);
[newCanvas, ctx] = getNewCanvasAndCtx(newWidth, newHeight)
&nbsp;
ctx.drawImage(canvas, 0, 0, newWidth, newHeight)
Expand All @@ -379,8 +387,6 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
setProgress(Math.min(99, Math.floor((renderedSize - currentSize) / (renderedSize - maxSizeByte) * 100)))
}
&nbsp;
// garbage clean canvas for safari
// ref: https://bugs.webkit.org/show_bug.cgi?id=195325
cleanupCanvasMemory(canvas)
cleanupCanvasMemory(newCanvas)
cleanupCanvasMemory(maxWidthOrHeightFixedCanvas)
Expand All @@ -397,7 +403,7 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
10 changes: 5 additions & 5 deletions coverage/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ <h1>All files</h1>


<div class='fl pad1y space-right2'>
<span class="strong">56.31% </span>
<span class="strong">57.14% </span>
<span class="quiet">Branches</span>
<span class='fraction'>58/103</span>
<span class='fraction'>60/105</span>
</div>


Expand Down Expand Up @@ -109,8 +109,8 @@ <h1>All files</h1>
</td>
<td data-value="66.43" class="pct medium">66.43%</td>
<td data-value="143" class="abs medium">95/143</td>
<td data-value="41.67" class="pct low">41.67%</td>
<td data-value="60" class="abs low">25/60</td>
<td data-value="43.55" class="pct low">43.55%</td>
<td data-value="62" class="abs low">27/62</td>
<td data-value="82.61" class="pct high">82.61%</td>
<td data-value="23" class="abs high">19/23</td>
<td data-value="72.09" class="pct medium">72.09%</td>
Expand All @@ -125,7 +125,7 @@ <h1>All files</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
4 changes: 2 additions & 2 deletions coverage/index.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ <h1><a href="index.html">All files</a> index.js</h1>
imageCompression.handleMaxWidthOrHeight = handleMaxWidthOrHeight
imageCompression.followExifOrientation = followExifOrientation
imageCompression.cleanupMemory = cleanupCanvasMemory
imageCompression.version = '1.0.11'
imageCompression.version = '1.0.12'
&nbsp;
export default imageCompression
&nbsp;</pre></td></tr></table></pre>
Expand All @@ -343,7 +343,7 @@ <h1><a href="index.html">All files</a> index.js</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
18 changes: 12 additions & 6 deletions coverage/lcov-report/image-compression.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,9 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<a name='L109'></a><a href='#L109'>109</a>
<a name='L110'></a><a href='#L110'>110</a>
<a name='L111'></a><a href='#L111'>111</a>
<a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
<a name='L112'></a><a href='#L112'>112</a>
<a name='L113'></a><a href='#L113'>113</a>
<a name='L114'></a><a href='#L114'>114</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
Expand Down Expand Up @@ -236,6 +238,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">6x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">6x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
Expand All @@ -251,6 +255,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">9x</span>
Expand All @@ -268,8 +274,6 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<span class="cline-any cline-yes">9x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">2x</span>
<span class="cline-any cline-yes">2x</span>
Expand Down Expand Up @@ -345,6 +349,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
&nbsp;
const origExceedMaxSize = tempFile.size &gt; maxSizeByte
const sizeBecomeLarger = tempFile.size &gt; file.size
// console.log('original file size', file.size)
// console.log('current file size', tempFile.size)
&nbsp;
// check if we need to compress or resize
if (!origExceedMaxSize &amp;&amp; !sizeBecomeLarger) {
Expand All @@ -362,6 +368,8 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
while (remainingTrials-- &amp;&amp; (currentSize &gt; maxSizeByte || currentSize &gt; sourceSize)) {
const newWidth = origExceedMaxSize ? canvas.width * 0.95 : <span class="branch-1 cbranch-no" title="branch not covered" >canvas.width</span>
const newHeight = origExceedMaxSize ? canvas.height * 0.95 : <span class="branch-1 cbranch-no" title="branch not covered" >canvas.height;</span>
// console.log('current width', newWidth);
// console.log('current height', newHeight);
[newCanvas, ctx] = getNewCanvasAndCtx(newWidth, newHeight)
&nbsp;
ctx.drawImage(canvas, 0, 0, newWidth, newHeight)
Expand All @@ -379,8 +387,6 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
setProgress(Math.min(99, Math.floor((renderedSize - currentSize) / (renderedSize - maxSizeByte) * 100)))
}
&nbsp;
// garbage clean canvas for safari
// ref: https://bugs.webkit.org/show_bug.cgi?id=195325
cleanupCanvasMemory(canvas)
cleanupCanvasMemory(newCanvas)
cleanupCanvasMemory(maxWidthOrHeightFixedCanvas)
Expand All @@ -397,7 +403,7 @@ <h1><a href="index.html">All files</a> image-compression.js</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
10 changes: 5 additions & 5 deletions coverage/lcov-report/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ <h1>All files</h1>


<div class='fl pad1y space-right2'>
<span class="strong">56.31% </span>
<span class="strong">57.14% </span>
<span class="quiet">Branches</span>
<span class='fraction'>58/103</span>
<span class='fraction'>60/105</span>
</div>


Expand Down Expand Up @@ -109,8 +109,8 @@ <h1>All files</h1>
</td>
<td data-value="66.43" class="pct medium">66.43%</td>
<td data-value="143" class="abs medium">95/143</td>
<td data-value="41.67" class="pct low">41.67%</td>
<td data-value="60" class="abs low">25/60</td>
<td data-value="43.55" class="pct low">43.55%</td>
<td data-value="62" class="abs low">27/62</td>
<td data-value="82.61" class="pct high">82.61%</td>
<td data-value="23" class="abs high">19/23</td>
<td data-value="72.09" class="pct medium">72.09%</td>
Expand All @@ -125,7 +125,7 @@ <h1>All files</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
4 changes: 2 additions & 2 deletions coverage/lcov-report/index.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ <h1><a href="index.html">All files</a> index.js</h1>
imageCompression.handleMaxWidthOrHeight = handleMaxWidthOrHeight
imageCompression.followExifOrientation = followExifOrientation
imageCompression.cleanupMemory = cleanupCanvasMemory
imageCompression.version = '1.0.11'
imageCompression.version = '1.0.12'
&nbsp;
export default imageCompression
&nbsp;</pre></td></tr></table></pre>
Expand All @@ -343,7 +343,7 @@ <h1><a href="index.html">All files</a> index.js</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
18 changes: 12 additions & 6 deletions coverage/lcov-report/utils.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ <h1><a href="index.html">All files</a> utils.js</h1>


<div class='fl pad1y space-right2'>
<span class="strong">41.67% </span>
<span class="strong">43.55% </span>
<span class="quiet">Branches</span>
<span class='fraction'>25/60</span>
<span class='fraction'>27/62</span>
</div>


Expand Down Expand Up @@ -375,7 +375,9 @@ <h1><a href="index.html">All files</a> utils.js</h1>
<a name='L316'></a><a href='#L316'>316</a>
<a name='L317'></a><a href='#L317'>317</a>
<a name='L318'></a><a href='#L318'>318</a>
<a name='L319'></a><a href='#L319'>319</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
<a name='L319'></a><a href='#L319'>319</a>
<a name='L320'></a><a href='#L320'>320</a>
<a name='L321'></a><a href='#L321'>321</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1x</span>
Expand Down Expand Up @@ -681,6 +683,8 @@ <h1><a href="index.html">All files</a> utils.js</h1>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">30x</span>
<span class="cline-any cline-yes">30x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
Expand All @@ -702,7 +706,7 @@ <h1><a href="index.html">All files</a> utils.js</h1>
&nbsp;
// Check if browser supports automatic image orientation
// see https://github.com/blueimp/JavaScript-Load-Image/blob/1e4df707821a0afcc11ea0720ee403b8759f3881/js/load-image-orientation.js#L37-L53
export const isAutoOrientationInBrowser = (async () =&gt; {
export const isAutoOrientationInBrowser = isBrowser &amp;&amp; (async () =&gt; {
// black 2x1 JPEG, with the following meta information set:
// EXIF Orientation: 6 (Rotated 90° CCW)
const testImageURL =
Expand Down Expand Up @@ -751,7 +755,7 @@ <h1><a href="index.html">All files</a> utils.js</h1>
return new Promise((resolve) =&gt; {
const arr = dataUrl.split(',')
const mime = arr[0].match(/:(.*?);/)[1]
const bstr = atob(arr[1])
const bstr = window.atob(arr[1])
let n = bstr.length
const u8arr = new Uint8Array(n)
while (n--) {
Expand Down Expand Up @@ -999,6 +1003,8 @@ <h1><a href="index.html">All files</a> utils.js</h1>
* @returns null
*/
export function cleanupCanvasMemory (canvas) {
// garbage clean canvas for safari
// ref: https://bugs.webkit.org/show_bug.cgi?id=195325
canvas.width = 0
canvas.height = 0
}
Expand All @@ -1018,7 +1024,7 @@ <h1><a href="index.html">All files</a> utils.js</h1>
<div class='footer quiet pad2 space-top1 center small'>
Code coverage generated by
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
at Fri May 08 2020 00:21:28 GMT+0800 (香港標準時間)
at Thu Jun 04 2020 13:37:49 GMT+0800 (香港標準時間)
</div>
</div>
<script src="prettify.js"></script>
Expand Down

0 comments on commit 9fcc363

Please sign in to comment.