@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 666 B
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.19/LICENSE.txt */
import{isAborted as e,createAbortError as r}from"../core/promiseUtils.js";function t(t,n,o=!1,i){return new Promise((s,l)=>{if(e(i))return void l(r());let a=()=>{v(),l(new Error(`Unable to load ${n}`))},d=async()=>{const e=t;try{await e.decode()}catch{}v(),s(e)},c=()=>{if(!t)return;const e=t;v(),e.src="",l(r())};const v=()=>{t&&(t.removeEventListener("error",a),t.removeEventListener("load",d),a=null,d=null,t=null,i?.removeEventListener("abort",c),c=null,o&&URL.revokeObjectURL(n))};i?.addEventListener("abort",c),t.addEventListener("error",a),t.addEventListener("load",d)})}export{t as loadImage};