1ddebf0fd7717011295d83b45cf9787a.json 2.68 KB
{"ast":null,"code":"/**\r\n * @author NHN Ent. FE Development Team <dl_javascript@nhn.com>\r\n * @fileoverview Command factory\r\n */\nimport Command from '../interface/command';\nconst commands = {};\n/**\r\n * Create a command\r\n * @param {string} name - Command name\r\n * @param {...*} args - Arguments for creating command\r\n * @returns {Command}\r\n * @ignore\r\n */\n\nfunction create(name, ...args) {\n  const actions = commands[name];\n\n  if (actions) {\n    return new Command(actions, args);\n  }\n\n  return null;\n}\n/**\r\n * Register a command with name as a key\r\n * @param {Object} command - {name:{string}, execute: {function}, undo: {function}}\r\n * @param {string} command.name - command name\r\n * @param {function} command.execute - executable function\r\n * @param {function} command.undo - undo function\r\n * @ignore\r\n */\n\n\nfunction register(command) {\n  commands[command.name] = command;\n}\n\nexport default {\n  create,\n  register\n};","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/src/js/factory/command.js"],"names":["Command","commands","create","name","args","actions","register","command"],"mappings":"AAAA;AACA;AACA;AACA;AACA,OAAOA,OAAP,MAAoB,sBAApB;AAEA,MAAMC,QAAQ,GAAG,EAAjB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,SAASC,MAAT,CAAgBC,IAAhB,EAAsB,GAAGC,IAAzB,EAA+B;AAC7B,QAAMC,OAAO,GAAGJ,QAAQ,CAACE,IAAD,CAAxB;;AACA,MAAIE,OAAJ,EAAa;AACX,WAAO,IAAIL,OAAJ,CAAYK,OAAZ,EAAqBD,IAArB,CAAP;AACD;;AAED,SAAO,IAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASE,QAAT,CAAkBC,OAAlB,EAA2B;AACzBN,EAAAA,QAAQ,CAACM,OAAO,CAACJ,IAAT,CAAR,GAAyBI,OAAzB;AACD;;AAED,eAAe;AACbL,EAAAA,MADa;AAEbI,EAAAA;AAFa,CAAf","sourcesContent":["/**\r\n * @author NHN Ent. FE Development Team <dl_javascript@nhn.com>\r\n * @fileoverview Command factory\r\n */\r\nimport Command from '../interface/command';\r\n\r\nconst commands = {};\r\n\r\n/**\r\n * Create a command\r\n * @param {string} name - Command name\r\n * @param {...*} args - Arguments for creating command\r\n * @returns {Command}\r\n * @ignore\r\n */\r\nfunction create(name, ...args) {\r\n  const actions = commands[name];\r\n  if (actions) {\r\n    return new Command(actions, args);\r\n  }\r\n\r\n  return null;\r\n}\r\n\r\n/**\r\n * Register a command with name as a key\r\n * @param {Object} command - {name:{string}, execute: {function}, undo: {function}}\r\n * @param {string} command.name - command name\r\n * @param {function} command.execute - executable function\r\n * @param {function} command.undo - undo function\r\n * @ignore\r\n */\r\nfunction register(command) {\r\n  commands[command.name] = command;\r\n}\r\n\r\nexport default {\r\n  create,\r\n  register,\r\n};\r\n"]},"metadata":{},"sourceType":"module"}