New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@pluginjs/image-loader

Package Overview
Dependencies
Maintainers
2
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pluginjs/image-loader - npm Package Compare versions

Comparing version 0.7.20 to 0.7.21

4

dist/image-loader.common.js
/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.

@@ -5,0 +5,0 @@ */

/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.
*/
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var is=require("@pluginjs/is"),SimpleEmitter=_interopDefault(require("@pluginjs/simple-emitter"));class ImageLoader extends SimpleEmitter{constructor(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];super(),this.element=e,this.img=new Image,is.isElement(this.element)&&"PICTURE"===this.element.nodeName&&(this.picture=this.element.querySelector("img")),t&&setTimeout(()=>{this.load()})}static of(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return new this(...t)}isLoaded(){if(is.isElement(this.element)){if("IMG"===this.element.nodeName)return this.element.complete&&this.element.naturalWidth;if("PICTURE"===this.element.nodeName)return this.picture.complete&&this.picture.naturalWidth}return this.img.complete&&this.img.naturalWidth}getBackgroundSrc(){var e=getComputedStyle(this.element);if(e){var t=/url\((['"])?(.*?)\1\)/gi.exec(e.backgroundImage);if(t)return t[2]}return""}load(){if(this.isLoaded())return this.trigger("loaded"),void this.trigger("always",!0);this.bind()}handleEvent(e){var t="on".concat(e.type);this[t]&&this[t](e)}bind(){if(this.img.addEventListener("load",this),this.img.addEventListener("error",this),is.isElement(this.element))if("IMG"===this.element.nodeName)this.element.addEventListener("load",this),this.element.addEventListener("error",this),this.img.src=this.element.src,this.img.srcset=this.element.srcset,this.img.sizes=this.img.sizes;else if("PICTURE"===this.element.nodeName)this.picture.addEventListener("load",this),this.picture.addEventListener("error",this),this.img.src=this.picture.src,this.img.srcset=this.picture.srcset,this.img.sizes=this.picture.sizes;else{var e=this.getBackgroundSrc();e&&(this.img.src=e)}else if(is.isString(this.element))this.img.src=this.element;else if(is.isPlainObject(this.element))for(var t in this.element)Object.prototype.hasOwnProperty.call(this.element,t)&&(this.img[t]=this.element[t])}onerror(){this.trigger("error"),this.trigger("always",!1),this.unbind()}onload(){this.trigger("loaded"),this.trigger("always",!0),this.unbind()}trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];this.emit(e,this.element,...i)}unbind(){is.isElement(this.element)&&("IMG"===this.element.nodeName?(this.element.removeEventListener("load",this),this.element.removeEventListener("error",this)):"PICTURE"===this.element.nodeName&&(this.picture.removeEventListener("load",this),this.picture.removeEventListener("error",this))),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)}}module.exports=ImageLoader;
/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.

@@ -5,0 +5,0 @@ */

/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.
*/
import{isElement as e,isString as t,isPlainObject as i}from"@pluginjs/is";import s from"@pluginjs/simple-emitter";export default class extends s{constructor(t){var i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];super(),this.element=t,this.img=new Image,e(this.element)&&"PICTURE"===this.element.nodeName&&(this.picture=this.element.querySelector("img")),i&&setTimeout(()=>{this.load()})}static of(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return new this(...t)}isLoaded(){if(e(this.element)){if("IMG"===this.element.nodeName)return this.element.complete&&this.element.naturalWidth;if("PICTURE"===this.element.nodeName)return this.picture.complete&&this.picture.naturalWidth}return this.img.complete&&this.img.naturalWidth}getBackgroundSrc(){var e=getComputedStyle(this.element);if(e){var t=/url\((['"])?(.*?)\1\)/gi.exec(e.backgroundImage);if(t)return t[2]}return""}load(){if(this.isLoaded())return this.trigger("loaded"),void this.trigger("always",!0);this.bind()}handleEvent(e){var t="on".concat(e.type);this[t]&&this[t](e)}bind(){if(this.img.addEventListener("load",this),this.img.addEventListener("error",this),e(this.element))if("IMG"===this.element.nodeName)this.element.addEventListener("load",this),this.element.addEventListener("error",this),this.img.src=this.element.src,this.img.srcset=this.element.srcset,this.img.sizes=this.img.sizes;else if("PICTURE"===this.element.nodeName)this.picture.addEventListener("load",this),this.picture.addEventListener("error",this),this.img.src=this.picture.src,this.img.srcset=this.picture.srcset,this.img.sizes=this.picture.sizes;else{var s=this.getBackgroundSrc();s&&(this.img.src=s)}else if(t(this.element))this.img.src=this.element;else if(i(this.element))for(var r in this.element)Object.prototype.hasOwnProperty.call(this.element,r)&&(this.img[r]=this.element[r])}onerror(){this.trigger("error"),this.trigger("always",!1),this.unbind()}onload(){this.trigger("loaded"),this.trigger("always",!0),this.unbind()}trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];this.emit(e,this.element,...i)}unbind(){e(this.element)&&("IMG"===this.element.nodeName?(this.element.removeEventListener("load",this),this.element.removeEventListener("error",this)):"PICTURE"===this.element.nodeName&&(this.picture.removeEventListener("load",this),this.picture.removeEventListener("error",this))),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)}}
/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.

@@ -5,0 +5,0 @@ */

/*!
* @pluginjs/image-loader v0.7.20 (https://pluginjs.com)
* Copyright 2019 Creation Studio Limited
* @pluginjs/image-loader v0.7.21 (https://pluginjs.com)
* Copyright 2020 Creation Studio Limited
* Released under the GPL-3.0 License.
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@pluginjs/is"),require("@pluginjs/simple-emitter")):"function"==typeof define&&define.amd?define(["@pluginjs/is","@pluginjs/simple-emitter"],t):(e=e||self)["@pluginjs/image-loader"]=t(e["@pluginjs/is"],e["@pluginjs/simple-emitter"])}(this,(function(e,t){"use strict";function i(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function n(e){return(n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e,t,i){return(s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}()?Reflect.construct:function(e,t,i){var n=[null];n.push.apply(n,t);var s=new(Function.bind.apply(e,n));return i&&r(s,i.prototype),s}).apply(null,arguments)}function o(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}return function(t){function l(t){var i,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(i=o(this,n(l).call(this))).element=t,i.img=new Image,e.isElement(i.element)&&"PICTURE"===i.element.nodeName&&(i.picture=i.element.querySelector("img")),r&&setTimeout((function(){i.load()})),i}var u,a,c;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}(l,t),u=l,c=[{key:"of",value:function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return s(this,t)}}],(a=[{key:"isLoaded",value:function(){if(e.isElement(this.element)){if("IMG"===this.element.nodeName)return this.element.complete&&this.element.naturalWidth;if("PICTURE"===this.element.nodeName)return this.picture.complete&&this.picture.naturalWidth}return this.img.complete&&this.img.naturalWidth}},{key:"getBackgroundSrc",value:function(){var e=getComputedStyle(this.element);if(e){var t=/url\((['"])?(.*?)\1\)/gi.exec(e.backgroundImage);if(t)return t[2]}return""}},{key:"load",value:function(){if(this.isLoaded())return this.trigger("loaded"),void this.trigger("always",!0);this.bind()}},{key:"handleEvent",value:function(e){var t="on".concat(e.type);this[t]&&this[t](e)}},{key:"bind",value:function(){if(this.img.addEventListener("load",this),this.img.addEventListener("error",this),e.isElement(this.element))if("IMG"===this.element.nodeName)this.element.addEventListener("load",this),this.element.addEventListener("error",this),this.img.src=this.element.src,this.img.srcset=this.element.srcset,this.img.sizes=this.img.sizes;else if("PICTURE"===this.element.nodeName)this.picture.addEventListener("load",this),this.picture.addEventListener("error",this),this.img.src=this.picture.src,this.img.srcset=this.picture.srcset,this.img.sizes=this.picture.sizes;else{var t=this.getBackgroundSrc();t&&(this.img.src=t)}else if(e.isString(this.element))this.img.src=this.element;else if(e.isPlainObject(this.element))for(var i in this.element)Object.prototype.hasOwnProperty.call(this.element,i)&&(this.img[i]=this.element[i])}},{key:"onerror",value:function(){this.trigger("error"),this.trigger("always",!1),this.unbind()}},{key:"onload",value:function(){this.trigger("loaded"),this.trigger("always",!0),this.unbind()}},{key:"trigger",value:function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];this.emit.apply(this,[e,this.element].concat(i))}},{key:"unbind",value:function(){e.isElement(this.element)&&("IMG"===this.element.nodeName?(this.element.removeEventListener("load",this),this.element.removeEventListener("error",this)):"PICTURE"===this.element.nodeName&&(this.picture.removeEventListener("load",this),this.picture.removeEventListener("error",this))),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)}}])&&i(u.prototype,a),c&&i(u,c),l}(t=t&&t.hasOwnProperty("default")?t.default:t)}));

@@ -14,3 +14,3 @@ {

},
"version": "0.7.20",
"version": "0.7.21",
"category": "media",

@@ -37,8 +37,8 @@ "main": "dist/image-loader.common.js",

"dependencies": {
"@pluginjs/is": "^0.7.17",
"@pluginjs/simple-emitter": "^0.7.16"
"@pluginjs/is": "^0.7.18",
"@pluginjs/simple-emitter": "^0.7.17"
},
"devDependencies": {
"@babel/core": "^7.7.5",
"@pluginjs/browserslist-config": "^1.2.12",
"@pluginjs/browserslist-config": "^1.2.14",
"@pluginjs/cli": "^0.7.15",

@@ -73,3 +73,3 @@ "babel-jest": "*",

],
"gitHead": "f0767d4ff57027169d885ad7a3a46dbc4ff5cf7f"
"gitHead": "45f59203aaa9720d1fb61f5e96cde6d73b4cf2c8"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc