function buildFactory(getURL) {
const tattle = DOM.element("div");
function create(z, x, y, loadCallBack) {
var tileHref = getURL(z, x, y);
const img = loadImage(tileHref, checkData);
const tale = new Event("tileLoaded");
const tile = {
z,
x,
y,
img,
cancel,
canceled: false,
rendered: false
};
function checkData(err) {
if (err) return console.log(err);
tile.rendered = true;
tattle.dispatchEvent(tale);
}
function cancel() {
img.src = "";
tile.canceled = true;
}
return tile;
}
return { create, element: tattle };
}