mirror of
https://github.com/Combodo/iTop.git
synced 2026-04-26 20:18:52 +02:00
N°5621 Move jquery.fileupload.js 9.22.0 (?) to NPM
Update to 9.22.1 to fix https://github.com/advisories/GHSA-4cj8-g9cp-v5wr
This commit is contained in:
138
node_modules/blueimp-load-image/js/load-image.js
generated
vendored
Normal file
138
node_modules/blueimp-load-image/js/load-image.js
generated
vendored
Normal file
@@ -0,0 +1,138 @@
|
||||
/*
|
||||
* JavaScript Load Image
|
||||
* https://github.com/blueimp/JavaScript-Load-Image
|
||||
*
|
||||
* Copyright 2011, Sebastian Tschan
|
||||
* https://blueimp.net
|
||||
*
|
||||
* Licensed under the MIT license:
|
||||
* https://opensource.org/licenses/MIT
|
||||
*/
|
||||
|
||||
/* global define, URL, webkitURL, FileReader */
|
||||
|
||||
;(function ($) {
|
||||
'use strict'
|
||||
|
||||
// Loads an image for a given File object.
|
||||
// Invokes the callback with an img or optional canvas
|
||||
// element (if supported by the browser) as parameter:
|
||||
function loadImage (file, callback, options) {
|
||||
var img = document.createElement('img')
|
||||
var url
|
||||
img.onerror = function (event) {
|
||||
return loadImage.onerror(img, event, file, callback, options)
|
||||
}
|
||||
img.onload = function (event) {
|
||||
return loadImage.onload(img, event, file, callback, options)
|
||||
}
|
||||
if (typeof file === 'string') {
|
||||
loadImage.fetchBlob(file, function (blob) {
|
||||
if (blob) {
|
||||
file = blob
|
||||
url = loadImage.createObjectURL(file)
|
||||
} else {
|
||||
url = file
|
||||
if (options && options.crossOrigin) {
|
||||
img.crossOrigin = options.crossOrigin
|
||||
}
|
||||
}
|
||||
img.src = url
|
||||
}, options)
|
||||
return img
|
||||
} else if (loadImage.isInstanceOf('Blob', file) ||
|
||||
// Files are also Blob instances, but some browsers
|
||||
// (Firefox 3.6) support the File API but not Blobs:
|
||||
loadImage.isInstanceOf('File', file)) {
|
||||
url = img._objectURL = loadImage.createObjectURL(file)
|
||||
if (url) {
|
||||
img.src = url
|
||||
return img
|
||||
}
|
||||
return loadImage.readFile(file, function (e) {
|
||||
var target = e.target
|
||||
if (target && target.result) {
|
||||
img.src = target.result
|
||||
} else if (callback) {
|
||||
callback(e)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
// The check for URL.revokeObjectURL fixes an issue with Opera 12,
|
||||
// which provides URL.createObjectURL but doesn't properly implement it:
|
||||
var urlAPI = (window.createObjectURL && window) ||
|
||||
(window.URL && URL.revokeObjectURL && URL) ||
|
||||
(window.webkitURL && webkitURL)
|
||||
|
||||
function revokeHelper (img, options) {
|
||||
if (img._objectURL && !(options && options.noRevoke)) {
|
||||
loadImage.revokeObjectURL(img._objectURL)
|
||||
delete img._objectURL
|
||||
}
|
||||
}
|
||||
|
||||
// If the callback given to this function returns a blob, it is used as image
|
||||
// source instead of the original url and overrides the file argument used in
|
||||
// the onload and onerror event callbacks:
|
||||
loadImage.fetchBlob = function (url, callback, options) {
|
||||
callback()
|
||||
}
|
||||
|
||||
loadImage.isInstanceOf = function (type, obj) {
|
||||
// Cross-frame instanceof check
|
||||
return Object.prototype.toString.call(obj) === '[object ' + type + ']'
|
||||
}
|
||||
|
||||
loadImage.transform = function (img, options, callback, file, data) {
|
||||
callback(img, data)
|
||||
}
|
||||
|
||||
loadImage.onerror = function (img, event, file, callback, options) {
|
||||
revokeHelper(img, options)
|
||||
if (callback) {
|
||||
callback.call(img, event)
|
||||
}
|
||||
}
|
||||
|
||||
loadImage.onload = function (img, event, file, callback, options) {
|
||||
revokeHelper(img, options)
|
||||
if (callback) {
|
||||
loadImage.transform(img, options, callback, file, {})
|
||||
}
|
||||
}
|
||||
|
||||
loadImage.createObjectURL = function (file) {
|
||||
return urlAPI ? urlAPI.createObjectURL(file) : false
|
||||
}
|
||||
|
||||
loadImage.revokeObjectURL = function (url) {
|
||||
return urlAPI ? urlAPI.revokeObjectURL(url) : false
|
||||
}
|
||||
|
||||
// Loads a given File object via FileReader interface,
|
||||
// invokes the callback with the event object (load or error).
|
||||
// The result can be read via event.target.result:
|
||||
loadImage.readFile = function (file, callback, method) {
|
||||
if (window.FileReader) {
|
||||
var fileReader = new FileReader()
|
||||
fileReader.onload = fileReader.onerror = callback
|
||||
method = method || 'readAsDataURL'
|
||||
if (fileReader[method]) {
|
||||
fileReader[method](file)
|
||||
return fileReader
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
define(function () {
|
||||
return loadImage
|
||||
})
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
module.exports = loadImage
|
||||
} else {
|
||||
$.loadImage = loadImage
|
||||
}
|
||||
}(window))
|
||||
Reference in New Issue
Block a user