1d489e3e639ad86eb0d0836c7bffefe6.json 5.65 KB
{"ast":null,"code":"/**\r\n * @author NHN Ent. FE Development Team <dl_javascript@nhn.com>\r\n * @fileoverview Load a background (main) image\r\n */\nimport commandFactory from '../factory/command';\nimport { componentNames, commandNames } from '../consts';\nconst {\n  IMAGE_LOADER\n} = componentNames;\nconst command = {\n  name: commandNames.LOAD_IMAGE,\n\n  /**\r\n   * Load a background (main) image\r\n   * @param {Graphics} graphics - Graphics instance\r\n   * @param {string} imageName - Image name\r\n   * @param {string} imgUrl - Image Url\r\n   * @returns {Promise}\r\n   */\n  execute(graphics, imageName, imgUrl) {\n    const loader = graphics.getComponent(IMAGE_LOADER);\n    const prevImage = loader.getCanvasImage();\n    const prevImageWidth = prevImage ? prevImage.width : 0;\n    const prevImageHeight = prevImage ? prevImage.height : 0;\n    const objects = graphics.removeAll(true).filter(objectItem => objectItem.type !== 'cropzone');\n    objects.forEach(objectItem => {\n      objectItem.evented = true;\n    });\n    this.undoData = {\n      name: loader.getImageName(),\n      image: prevImage,\n      objects\n    };\n    return loader.load(imageName, imgUrl).then(newImage => ({\n      oldWidth: prevImageWidth,\n      oldHeight: prevImageHeight,\n      newWidth: newImage.width,\n      newHeight: newImage.height\n    }));\n  },\n\n  /**\r\n   * @param {Graphics} graphics - Graphics instance\r\n   * @returns {Promise}\r\n   */\n  undo(graphics) {\n    const loader = graphics.getComponent(IMAGE_LOADER);\n    const {\n      objects,\n      name,\n      image\n    } = this.undoData;\n    graphics.removeAll(true);\n    graphics.add(objects);\n    return loader.load(name, image);\n  }\n\n};\ncommandFactory.register(command);\nexport default command;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/src/js/command/loadImage.js"],"names":["commandFactory","componentNames","commandNames","IMAGE_LOADER","command","name","LOAD_IMAGE","execute","graphics","imageName","imgUrl","loader","getComponent","prevImage","getCanvasImage","prevImageWidth","width","prevImageHeight","height","objects","removeAll","filter","objectItem","type","forEach","evented","undoData","getImageName","image","load","then","newImage","oldWidth","oldHeight","newWidth","newHeight","undo","add","register"],"mappings":"AAAA;AACA;AACA;AACA;AACA,OAAOA,cAAP,MAA2B,oBAA3B;AACA,SAASC,cAAT,EAAyBC,YAAzB,QAA6C,WAA7C;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAmBF,cAAzB;AAEA,MAAMG,OAAO,GAAG;AACdC,EAAAA,IAAI,EAAEH,YAAY,CAACI,UADL;;AAGd;AACF;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,OAAO,CAACC,QAAD,EAAWC,SAAX,EAAsBC,MAAtB,EAA8B;AACnC,UAAMC,MAAM,GAAGH,QAAQ,CAACI,YAAT,CAAsBT,YAAtB,CAAf;AACA,UAAMU,SAAS,GAAGF,MAAM,CAACG,cAAP,EAAlB;AACA,UAAMC,cAAc,GAAGF,SAAS,GAAGA,SAAS,CAACG,KAAb,GAAqB,CAArD;AACA,UAAMC,eAAe,GAAGJ,SAAS,GAAGA,SAAS,CAACK,MAAb,GAAsB,CAAvD;AACA,UAAMC,OAAO,GAAGX,QAAQ,CAACY,SAAT,CAAmB,IAAnB,EAAyBC,MAAzB,CAAiCC,UAAD,IAAgBA,UAAU,CAACC,IAAX,KAAoB,UAApE,CAAhB;AAEAJ,IAAAA,OAAO,CAACK,OAAR,CAAiBF,UAAD,IAAgB;AAC9BA,MAAAA,UAAU,CAACG,OAAX,GAAqB,IAArB;AACD,KAFD;AAIA,SAAKC,QAAL,GAAgB;AACdrB,MAAAA,IAAI,EAAEM,MAAM,CAACgB,YAAP,EADQ;AAEdC,MAAAA,KAAK,EAAEf,SAFO;AAGdM,MAAAA;AAHc,KAAhB;AAMA,WAAOR,MAAM,CAACkB,IAAP,CAAYpB,SAAZ,EAAuBC,MAAvB,EAA+BoB,IAA/B,CAAqCC,QAAD,KAAe;AACxDC,MAAAA,QAAQ,EAAEjB,cAD8C;AAExDkB,MAAAA,SAAS,EAAEhB,eAF6C;AAGxDiB,MAAAA,QAAQ,EAAEH,QAAQ,CAACf,KAHqC;AAIxDmB,MAAAA,SAAS,EAAEJ,QAAQ,CAACb;AAJoC,KAAf,CAApC,CAAP;AAMD,GAjCa;;AAmCd;AACF;AACA;AACA;AACEkB,EAAAA,IAAI,CAAC5B,QAAD,EAAW;AACb,UAAMG,MAAM,GAAGH,QAAQ,CAACI,YAAT,CAAsBT,YAAtB,CAAf;AACA,UAAM;AAAEgB,MAAAA,OAAF;AAAWd,MAAAA,IAAX;AAAiBuB,MAAAA;AAAjB,QAA2B,KAAKF,QAAtC;AAEAlB,IAAAA,QAAQ,CAACY,SAAT,CAAmB,IAAnB;AACAZ,IAAAA,QAAQ,CAAC6B,GAAT,CAAalB,OAAb;AAEA,WAAOR,MAAM,CAACkB,IAAP,CAAYxB,IAAZ,EAAkBuB,KAAlB,CAAP;AACD;;AA/Ca,CAAhB;AAkDA5B,cAAc,CAACsC,QAAf,CAAwBlC,OAAxB;AAEA,eAAeA,OAAf","sourcesContent":["/**\r\n * @author NHN Ent. FE Development Team <dl_javascript@nhn.com>\r\n * @fileoverview Load a background (main) image\r\n */\r\nimport commandFactory from '../factory/command';\r\nimport { componentNames, commandNames } from '../consts';\r\n\r\nconst { IMAGE_LOADER } = componentNames;\r\n\r\nconst command = {\r\n  name: commandNames.LOAD_IMAGE,\r\n\r\n  /**\r\n   * Load a background (main) image\r\n   * @param {Graphics} graphics - Graphics instance\r\n   * @param {string} imageName - Image name\r\n   * @param {string} imgUrl - Image Url\r\n   * @returns {Promise}\r\n   */\r\n  execute(graphics, imageName, imgUrl) {\r\n    const loader = graphics.getComponent(IMAGE_LOADER);\r\n    const prevImage = loader.getCanvasImage();\r\n    const prevImageWidth = prevImage ? prevImage.width : 0;\r\n    const prevImageHeight = prevImage ? prevImage.height : 0;\r\n    const objects = graphics.removeAll(true).filter((objectItem) => objectItem.type !== 'cropzone');\r\n\r\n    objects.forEach((objectItem) => {\r\n      objectItem.evented = true;\r\n    });\r\n\r\n    this.undoData = {\r\n      name: loader.getImageName(),\r\n      image: prevImage,\r\n      objects,\r\n    };\r\n\r\n    return loader.load(imageName, imgUrl).then((newImage) => ({\r\n      oldWidth: prevImageWidth,\r\n      oldHeight: prevImageHeight,\r\n      newWidth: newImage.width,\r\n      newHeight: newImage.height,\r\n    }));\r\n  },\r\n\r\n  /**\r\n   * @param {Graphics} graphics - Graphics instance\r\n   * @returns {Promise}\r\n   */\r\n  undo(graphics) {\r\n    const loader = graphics.getComponent(IMAGE_LOADER);\r\n    const { objects, name, image } = this.undoData;\r\n\r\n    graphics.removeAll(true);\r\n    graphics.add(objects);\r\n\r\n    return loader.load(name, image);\r\n  },\r\n};\r\n\r\ncommandFactory.register(command);\r\n\r\nexport default command;\r\n"]},"metadata":{},"sourceType":"module"}