{"version":3,"sources":["webpack:///./node_modules/vue-json-excel/dist/vue-json-excel.esm.js"],"names":["createCommonjsModule","fn","module","exports","download","root","factory","commonjsGlobal","data","strFileName","strMimeType","blob","reader","self","window","defaultMime","mimeType","payload","url","anchor","document","createElement","toString","a","String","myBlob","Blob","MozBlob","WebKitBlob","fileName","call","bind","this","length","split","pop","href","indexOf","ajax","XMLHttpRequest","open","responseType","onload","e","target","response","setTimeout","send","test","navigator","msSaveBlob","dataUrlToBlob","saver","type","i","tempUiArr","Uint8Array","mx","charCodeAt","strUrl","parts","decoder","atob","decodeURIComponent","binData","uiArr","winMode","setAttribute","className","innerHTML","style","display","body","appendChild","click","removeChild","URL","revokeObjectURL","userAgent","replace","confirm","location","f","src","createObjectURL","constructor","btoa","y","encodeURIComponent","FileReader","result","readAsDataURL","script","props","default","Array","required","fields","Object","exportFields","defaultValue","title","footer","name","fetch","Function","meta","worksheet","beforeGenerate","beforeFinish","computed","now","Date","getTime","undefined","methods","json","getProcessedJson","downloadFields","export","jsonToXLS","jsonToCSV","async","filename","mime","base64ToBlob","xlsTemp","xlsData","colspan","keys","_self","parseExtraData","key","map","item","index","valueReformattedForMultilines","csvData","push","escapedCSV","match","join","header","getKeys","newData","newItem","label","property","getValue","extraData","format","parseData","isArray","field","indexes","value","getValueFromNestedItem","parseValue","hasOwnProperty","getValueFromCallback","callback","nestedItem","base64","unescape","bstr","n","u8arr","Uint8ClampedArray","normalizeComponent","template","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","hook","options","render","staticRenderFns","_compiled","functional","_scopeId","context","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","originalRender","h","existing","beforeCreate","concat","normalizeComponent_1","__vue_script__","__vue_render__","_vm","_h","$createElement","_c","attrs","id","idName","on","generate","_t","_v","_s","__vue_staticRenderFns__","_withStripped","__vue_inject_styles__","__vue_scope_id__","__vue_module_identifier__","__vue_is_functional_template__","JsonExcel"],"mappings":"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","file":"js/chunk-2d22c6d7.9895e1bd.js","sourcesContent":["var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar download = createCommonjsModule(function (module, exports) {\n//download.js v4.2, by dandavis; 2008-2016. [MIT] see http://danml.com/download.html for tests/usage\n// v1 landed a FF+Chrome compat way of downloading strings to local un-named files, upgraded to use a hidden frame and optional mime\n// v2 added named files via a[download], msSaveBlob, IE (10+) support, and window.URL support for larger+faster saves than dataURLs\n// v3 added dataURL and Blob Input, bind-toggle arity, and legacy dataURL fallback was improved with force-download mime and base64 support. 3.1 improved safari handling.\n// v4 adds AMD/UMD, commonJS, and plain browser support\n// v4.1 adds url download capability via solo URL argument (same domain/CORS only)\n// v4.2 adds semantic variable names, long (over 2MB) dataURL support, and hidden by default temp anchors\n// https://github.com/rndme/download\n\n(function (root, factory) {\n\t{\n\t\t// Node. Does not work with strict CommonJS, but\n\t\t// only CommonJS-like environments that support module.exports,\n\t\t// like Node.\n\t\tmodule.exports = factory();\n\t}\n}(commonjsGlobal, function () {\n\n\treturn function download(data, strFileName, strMimeType) {\n\n\t\tvar self = window, // this script is only for browsers anyway...\n\t\t\tdefaultMime = \"application/octet-stream\", // this default mime also triggers iframe downloads\n\t\t\tmimeType = strMimeType || defaultMime,\n\t\t\tpayload = data,\n\t\t\turl = !strFileName && !strMimeType && payload,\n\t\t\tanchor = document.createElement(\"a\"),\n\t\t\ttoString = function(a){return String(a);},\n\t\t\tmyBlob = (self.Blob || self.MozBlob || self.WebKitBlob || toString),\n\t\t\tfileName = strFileName || \"download\",\n\t\t\tblob,\n\t\t\treader;\n\t\t\tmyBlob= myBlob.call ? myBlob.bind(self) : Blob ;\n\t \n\t\tif(String(this)===\"true\"){ //reverse arguments, allowing download.bind(true, \"text/xml\", \"export.xml\") to act as a callback\n\t\t\tpayload=[payload, mimeType];\n\t\t\tmimeType=payload[0];\n\t\t\tpayload=payload[1];\n\t\t}\n\n\n\t\tif(url && url.length< 2048){ // if no filename and no mime, assume a url was passed as the only argument\n\t\t\tfileName = url.split(\"/\").pop().split(\"?\")[0];\n\t\t\tanchor.href = url; // assign href prop to temp anchor\n\t\t \tif(anchor.href.indexOf(url) !== -1){ // if the browser determines that it's a potentially valid url path:\n \t\tvar ajax=new XMLHttpRequest();\n \t\tajax.open( \"GET\", url, true);\n \t\tajax.responseType = 'blob';\n \t\tajax.onload= function(e){ \n\t\t\t\t download(e.target.response, fileName, defaultMime);\n\t\t\t\t};\n \t\tsetTimeout(function(){ ajax.send();}, 0); // allows setting custom ajax headers using the return:\n\t\t\t return ajax;\n\t\t\t} // end if valid url?\n\t\t} // end if url?\n\n\n\t\t//go ahead and download dataURLs right away\n\t\tif(/^data:([\\w+-]+\\/[\\w+.-]+)?[,;]/.test(payload)){\n\t\t\n\t\t\tif(payload.length > (1024*1024*1.999) && myBlob !== toString ){\n\t\t\t\tpayload=dataUrlToBlob(payload);\n\t\t\t\tmimeType=payload.type || defaultMime;\n\t\t\t}else{\t\t\t\n\t\t\t\treturn navigator.msSaveBlob ? // IE10 can't do a[download], only Blobs:\n\t\t\t\t\tnavigator.msSaveBlob(dataUrlToBlob(payload), fileName) :\n\t\t\t\t\tsaver(payload) ; // everyone else can save dataURLs un-processed\n\t\t\t}\n\t\t\t\n\t\t}else{//not data url, is it a string with special needs?\n\t\t\tif(/([\\x80-\\xff])/.test(payload)){\t\t\t \n\t\t\t\tvar i=0, tempUiArr= new Uint8Array(payload.length), mx=tempUiArr.length;\n\t\t\t\tfor(i;i []\n }, \n worksheet: {\n type: String, \n default: \"Sheet1\"\n },\n //event before generate was called\n beforeGenerate:{\n type: Function,\n },\n //event before download pops up\n beforeFinish:{\n type: Function,\n },\n },\n computed: {\n // unique identifier\n idName() {\n var now = new Date().getTime();\n return \"export_\" + now;\n },\n\n downloadFields() {\n if (this.fields !== undefined) return this.fields;\n\n if (this.exportFields !== undefined) return this.exportFields;\n }\n },\n methods: {\n async generate() {\n if(typeof this.beforeGenerate === 'function'){\n await this.beforeGenerate();\n }\n let data = this.data;\n if(typeof this.fetch === 'function' || !data)\n data = await this.fetch();\n\n if (!data || !data.length) {\n return;\n }\n\n let json = this.getProcessedJson(data, this.downloadFields);\n if (this.type === \"html\") {\n // this is mainly for testing\n return this.export(\n this.jsonToXLS(json),\n this.name.replace(\".xls\", \".html\"),\n \"text/html\"\n );\n } else if (this.type === \"csv\") {\n return this.export(\n this.jsonToCSV(json),\n this.name.replace(\".xls\", \".csv\"),\n \"application/csv\"\n );\n }\n return this.export(\n this.jsonToXLS(json),\n this.name,\n \"application/vnd.ms-excel\"\n );\n },\n /*\n\t\tUse downloadjs to generate the download link\n\t\t*/\n export:async function(data, filename, mime) {\n let blob = this.base64ToBlob(data, mime);\n if(typeof this.beforeFinish === 'function')\n await this.beforeFinish();\n download(blob, filename, mime);\n },\n /*\n\t\tjsonToXLS\n\t\t---------------\n\t\tTransform json data into an xml document with MS Excel format, sadly\n\t\tit shows a prompt when it opens, that is a default behavior for\n\t\tMicrosoft office and cannot be avoided. It's recommended to use CSV format instead.\n\t\t*/\n jsonToXLS(data) {\n let xlsTemp =\n ' ${table}
';\n let xlsData = \"\";\n const colspan = Object.keys(data[0]).length;\n let _self = this;\n\n //Header\n if (this.title != null) {\n xlsData += this.parseExtraData(\n this.title,\n '${data}'\n );\n }\n\n //Fields\n xlsData += \"\";\n for (let key in data[0]) {\n xlsData += \"\" + key + \"\";\n }\n xlsData += \"\";\n xlsData += \"\";\n\n //Data\n xlsData += \"\";\n data.map(function(item, index) {\n xlsData += \"\";\n for (let key in item) {\n xlsData += \"\" + _self.valueReformattedForMultilines(item[key]) + \"\";\n }\n xlsData += \"\";\n });\n xlsData += \"\";\n\n //Footer\n if (this.footer != null) {\n xlsData += \"\";\n xlsData += this.parseExtraData(\n this.footer,\n '${data}'\n );\n xlsData += \"\";\n }\n\n return xlsTemp.replace(\"${table}\", xlsData).replace(\"${worksheet}\", this.worksheet);\n },\n /*\n\t\tjsonToCSV\n\t\t---------------\n\t\tTransform json data into an CSV file.\n\t\t*/\n jsonToCSV(data) {\n var csvData = [];\n //Header\n if (this.title != null) {\n csvData.push(this.parseExtraData(this.title, \"${data}\\r\\n\"));\n }\n //Fields\n for (let key in data[0]) {\n csvData.push(key);\n csvData.push(\",\");\n }\n csvData.pop();\n csvData.push(\"\\r\\n\");\n //Data\n data.map(function(item) {\n for (let key in item) {\n let escapedCSV = '=\\\"' + item[key] + '\\\"'; // cast Numbers to string\n if (escapedCSV.match(/[,\"\\n]/)) {\n escapedCSV = '\"' + escapedCSV.replace(/\\\"/g, '\"\"') + '\"';\n }\n csvData.push(escapedCSV);\n csvData.push(\",\");\n }\n csvData.pop();\n csvData.push(\"\\r\\n\");\n });\n //Footer\n if (this.footer != null) {\n csvData.push(this.parseExtraData(this.footer, \"${data}\\r\\n\"));\n }\n return csvData.join(\"\");\n },\n /*\n\t\tgetProcessedJson\n\t\t---------------\n\t\tGet only the data to export, if no fields are set return all the data\n\t\t*/\n getProcessedJson(data, header) {\n let keys = this.getKeys(data, header);\n let newData = [];\n let _self = this;\n data.map(function(item, index) {\n let newItem = {};\n for (let label in keys) {\n let property = keys[label];\n newItem[label] = _self.getValue(property, item);\n }\n newData.push(newItem);\n });\n\n return newData;\n },\n getKeys(data, header) {\n if (header) {\n return header;\n }\n\n let keys = {};\n for (let key in data[0]) {\n keys[key] = key;\n }\n return keys;\n },\n /*\n\t\tparseExtraData\n\t\t---------------\n\t\tParse title and footer attribute to the csv format\n\t\t*/\n parseExtraData(extraData, format) {\n let parseData = \"\";\n if (Array.isArray(extraData)) {\n for (var i = 0; i < extraData.length; i++) {\n parseData += format.replace(\"${data}\", extraData[i]);\n }\n } else {\n parseData += format.replace(\"${data}\", extraData);\n }\n return parseData;\n },\n\n getValue(key, item) {\n const field = typeof key !== \"object\" ? key : key.field;\n let indexes = typeof field !== \"string\" ? [] : field.split(\".\");\n let value = this.defaultValue;\n \n if (!field)\n\t value = item;\n else if( indexes.length > 1 )\n value = this.getValueFromNestedItem(item, indexes);\n else\n value = this.parseValue(item[field]);\n \n if( key.hasOwnProperty('callback'))\n value = this.getValueFromCallback(value, key.callback);\n \n return value;\n },\n\n /*\n convert values with newline \\n characters into
\n */\n valueReformattedForMultilines(value) {\n if (typeof(value)==\"string\") return(value.replace(/\\n/ig,\"
\"));\n else return(value);\n },\n\n getValueFromNestedItem(item, indexes){\n let nestedItem = item;\n for (let index of indexes) {\n if(nestedItem)\n nestedItem = nestedItem[index];\n }\n return this.parseValue(nestedItem);\n },\n\n getValueFromCallback(item, callback){\n if(typeof callback !== \"function\")\n return this.defaultValue\n const value = callback(item);\n return this.parseValue(value);\n },\n parseValue(value){\n return value || value === 0 || typeof value === 'boolean'\n ? value\n : this.defaultValue;\n },\n base64ToBlob(data, mime) {\n let base64 = window.btoa(window.unescape(encodeURIComponent(data)));\n let bstr = atob(base64);\n let n = bstr.length;\n let u8arr = new Uint8ClampedArray(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], { type: mime });\n }\n } // end methods\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\n \"div\",\n { attrs: { id: _vm.idName }, on: { click: _vm.generate } },\n [\n _vm._t(\"default\", [_vm._v(\"\\n\\t\\tDownload \" + _vm._s(_vm.name) + \"\\n\\t\")])\n ],\n 2\n )\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n\n \n var JsonExcel = normalizeComponent_1(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n undefined,\n undefined\n );\n\nexport default JsonExcel;\n"],"sourceRoot":""}