From 0844e9e0c1f7bf6fabd2e6826056005490aa6b63 Mon Sep 17 00:00:00 2001 From: Jordan Eldredge Date: Mon, 14 May 2018 17:14:28 -0700 Subject: [PATCH] Lazy load JSZip --- js/skinParser.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/js/skinParser.js b/js/skinParser.js index e708b6f2..a5eb82ba 100644 --- a/js/skinParser.js +++ b/js/skinParser.js @@ -1,4 +1,3 @@ -import JSZip from "../node_modules/jszip/dist/jszip"; // Hack import SKIN_SPRITES from "./skinSprites"; import regionParser from "./regionParser"; import { @@ -8,6 +7,14 @@ import { } from "./constants"; import { parseViscolors, parseIni, getFileExtension } from "./utils"; +const getJSZip = () => { + return new Promise(resolve => { + require.ensure("../node_modules/jszip/dist/jszip", require => { + resolve(require("../node_modules/jszip/dist/jszip")); + }); + }); +}; + const shallowMerge = objs => objs.reduce((prev, img) => Object.assign(prev, img), {}); @@ -240,6 +247,7 @@ async function genGenTextSprites(zip) { // A promise that, given an array buffer returns a skin style object async function skinParser(zipFileBuffer) { + const JSZip = await getJSZip(); const zip = await JSZip.loadAsync(zipFileBuffer); const [ colors,