1 |
- {"remainingRequest":"D:\\qianger\\7\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js!D:\\qianger\\7\\jindouyunNewFront\\node_modules\\eslint-loader\\index.js??ref--13-0!D:\\qianger\\7\\jindouyunNewFront\\src\\utils\\excel.js","dependencies":[{"path":"D:\\qianger\\7\\jindouyunNewFront\\src\\utils\\excel.js","mtime":1655374732000},{"path":"D:\\qianger\\7\\jindouyunNewFront\\babel.config.js","mtime":1655374732000},{"path":"D:\\qianger\\7\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\qianger\\7\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\qianger\\7\\jindouyunNewFront\\node_modules\\eslint-loader\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuc2V0LmpzIjsKaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAiZmlsZS1zYXZlciI7CmltcG9ydCBYTFNYIGZyb20gInhsc3giOwoKZnVuY3Rpb24gZ2VuZXJhdGVBcnJheSh0YWJsZSkgewogIGxldCBvdXQgPSBbXTsKICBsZXQgcm93cyA9IHRhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoInRyIik7CiAgbGV0IHJhbmdlcyA9IFtdOwoKICBmb3IgKGxldCBSID0gMDsgUiA8IHJvd3MubGVuZ3RoOyArK1IpIHsKICAgIGxldCBvdXRSb3cgPSBbXTsKICAgIGxldCByb3cgPSByb3dzW1JdOwogICAgbGV0IGNvbHVtbnMgPSByb3cucXVlcnlTZWxlY3RvckFsbCgidGQiKTsKCiAgICBmb3IgKGxldCBDID0gMDsgQyA8IGNvbHVtbnMubGVuZ3RoOyArK0MpIHsKICAgICAgbGV0IGNlbGwgPSBjb2x1bW5zW0NdOwogICAgICBsZXQgY29sc3BhbiA9IGNlbGwuZ2V0QXR0cmlidXRlKCJjb2xzcGFuIik7CiAgICAgIGxldCByb3dzcGFuID0gY2VsbC5nZXRBdHRyaWJ1dGUoInJvd3NwYW4iKTsKICAgICAgbGV0IGNlbGxWYWx1ZSA9IGNlbGwuaW5uZXJUZXh0OwogICAgICBpZiAoY2VsbFZhbHVlICE9PSAiIiAmJiBjZWxsVmFsdWUgPT0gK2NlbGxWYWx1ZSkgY2VsbFZhbHVlID0gK2NlbGxWYWx1ZTsKICAgICAgcmFuZ2VzLmZvckVhY2goZnVuY3Rpb24gKHJhbmdlKSB7CiAgICAgICAgaWYgKFIgPj0gcmFuZ2Uucy5yICYmIFIgPD0gcmFuZ2UuZS5yICYmIG91dFJvdy5sZW5ndGggPj0gcmFuZ2Uucy5jICYmIG91dFJvdy5sZW5ndGggPD0gcmFuZ2UuZS5jKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSByYW5nZS5lLmMgLSByYW5nZS5zLmM7ICsraSkgb3V0Um93LnB1c2gobnVsbCk7CiAgICAgICAgfQogICAgICB9KTsKCiAgICAgIGlmIChyb3dzcGFuIHx8IGNvbHNwYW4pIHsKICAgICAgICByb3dzcGFuID0gcm93c3BhbiB8fCAxOwogICAgICAgIGNvbHNwYW4gPSBjb2xzcGFuIHx8IDE7CiAgICAgICAgcmFuZ2VzLnB1c2goewogICAgICAgICAgczogewogICAgICAgICAgICByOiBSLAogICAgICAgICAgICBjOiBvdXRSb3cubGVuZ3RoCiAgICAgICAgICB9LAogICAgICAgICAgZTogewogICAgICAgICAgICByOiBSICsgcm93c3BhbiAtIDEsCiAgICAgICAgICAgIGM6IG91dFJvdy5sZW5ndGggKyBjb2xzcGFuIC0gMQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9CgogICAgICBvdXRSb3cucHVzaChjZWxsVmFsdWUgIT09ICIiID8gY2VsbFZhbHVlIDogbnVsbCk7CiAgICAgIGlmIChjb2xzcGFuKSBmb3IgKGxldCBrID0gMDsgayA8IGNvbHNwYW4gLSAxOyArK2spIG91dFJvdy5wdXNoKG51bGwpOwogICAgfQoKICAgIG91dC5wdXNoKG91dFJvdyk7CiAgfQoKICByZXR1cm4gW291dCwgcmFuZ2VzXTsKfQoKZnVuY3Rpb24gZGF0ZW51bSh2LCBkYXRlMTkwNCkgewogIGlmIChkYXRlMTkwNCkgdiArPSAxNDYyOwogIGxldCBlcG9jaCA9IERhdGUucGFyc2Uodik7CiAgcmV0dXJuIChlcG9jaCAtIG5ldyBEYXRlKERhdGUuVVRDKDE4OTksIDExLCAzMCkpKSAvICgyNCAqIDYwICogNjAgKiAxMDAwKTsKfQoKZnVuY3Rpb24gc2hlZXRfZnJvbV9hcnJheV9vZl9hcnJheXMoZGF0YSwgb3B0cykgewogIGxldCB3cyA9IHt9OwogIGxldCByYW5nZSA9IHsKICAgIHM6IHsKICAgICAgYzogMTAwMDAwMDAsCiAgICAgIHI6IDEwMDAwMDAwCiAgICB9LAogICAgZTogewogICAgICBjOiAwLAogICAgICByOiAwCiAgICB9CiAgfTsKCiAgZm9yIChsZXQgUiA9IDA7IFIgIT0gZGF0YS5sZW5ndGg7ICsrUikgewogICAgZm9yIChsZXQgQyA9IDA7IEMgIT0gZGF0YVtSXS5sZW5ndGg7ICsrQykgewogICAgICBpZiAocmFuZ2Uucy5yID4gUikgcmFuZ2Uucy5yID0gUjsKICAgICAgaWYgKHJhbmdlLnMuYyA+IEMpIHJhbmdlLnMuYyA9IEM7CiAgICAgIGlmIChyYW5nZS5lLnIgPCBSKSByYW5nZS5lLnIgPSBSOwogICAgICBpZiAocmFuZ2UuZS5jIDwgQykgcmFuZ2UuZS5jID0gQzsKICAgICAgbGV0IGNlbGwgPSB7CiAgICAgICAgdjogZGF0YVtSXVtDXQogICAgICB9OwogICAgICBpZiAoY2VsbC52ID09IG51bGwpIGNvbnRpbnVlOwogICAgICBsZXQgY2VsbF9yZWYgPSBYTFNYLnV0aWxzLmVuY29kZV9jZWxsKHsKICAgICAgICBjOiBDLAogICAgICAgIHI6IFIKICAgICAgfSk7CiAgICAgIGlmICh0eXBlb2YgY2VsbC52ID09PSAibnVtYmVyIikgY2VsbC50ID0gIm4iO2Vsc2UgaWYgKHR5cGVvZiBjZWxsLnYgPT09ICJib29sZWFuIikgY2VsbC50ID0gImIiO2Vsc2UgaWYgKGNlbGwudiBpbnN0YW5jZW9mIERhdGUpIHsKICAgICAgICBjZWxsLnQgPSAibiI7CiAgICAgICAgY2VsbC56ID0gWExTWC5TU0YuX3RhYmxlWzE0XTsKICAgICAgICBjZWxsLnYgPSBkYXRlbnVtKGNlbGwudik7CiAgICAgIH0gZWxzZSBjZWxsLnQgPSAicyI7CiAgICAgIHdzW2NlbGxfcmVmXSA9IGNlbGw7CiAgICB9CiAgfQoKICBpZiAocmFuZ2Uucy5jIDwgMTAwMDAwMDApIHdzWyIhcmVmIl0gPSBYTFNYLnV0aWxzLmVuY29kZV9yYW5nZShyYW5nZSk7CiAgcmV0dXJuIHdzOwp9CgpmdW5jdGlvbiBXb3JrYm9vaygpIHsKICBpZiAoISh0aGlzIGluc3RhbmNlb2YgV29ya2Jvb2spKSByZXR1cm4gbmV3IFdvcmtib29rKCk7CiAgdGhpcy5TaGVldE5hbWVzID0gW107CiAgdGhpcy5TaGVldHMgPSB7fTsKfQoKZnVuY3Rpb24gczJhYihzKSB7CiAgbGV0IGJ1ZiA9IG5ldyBBcnJheUJ1ZmZlcihzLmxlbmd0aCk7CiAgbGV0IHZpZXcgPSBuZXcgVWludDhBcnJheShidWYpOwoKICBmb3IgKGxldCBpID0gMDsgaSAhPSBzLmxlbmd0aDsgKytpKSB2aWV3W2ldID0gcy5jaGFyQ29kZUF0KGkpICYgMHhmZjsKCiAgcmV0dXJuIGJ1ZjsKfQoKZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydF90YWJsZV90b19leGNlbChpZCkgewogIGxldCB0aGVUYWJsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKICBsZXQgb28gPSBnZW5lcmF0ZUFycmF5KHRoZVRhYmxlKTsKICBsZXQgcmFuZ2VzID0gb29bMV07CiAgbGV0IGRhdGEgPSBvb1swXTsKICBsZXQgd3NfbmFtZSA9ICJTaGVldEpTIjsKICBsZXQgd2IgPSBuZXcgV29ya2Jvb2soKSwKICAgICAgd3MgPSBzaGVldF9mcm9tX2FycmF5X29mX2FycmF5cyhkYXRhKTsKICB3c1siIW1lcmdlcyJdID0gcmFuZ2VzOwogIHdiLlNoZWV0TmFtZXMucHVzaCh3c19uYW1lKTsKICB3Yi5TaGVldHNbd3NfbmFtZV0gPSB3czsKICBsZXQgd2JvdXQgPSBYTFNYLndyaXRlKHdiLCB7CiAgICBib29rVHlwZTogInhsc3giLAogICAgYm9va1NTVDogZmFsc2UsCiAgICB0eXBlOiAiYmluYXJ5IgogIH0pOwogIHNhdmVBcyhuZXcgQmxvYihbczJhYih3Ym91dCldLCB7CiAgICB0eXBlOiAiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIgogIH0pLCAidGVzdC54bHN4Iik7Cn0KZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydF9qc29uX3RvX2V4Y2VsKHsKICBtdWx0aUhlYWRlciA9IFtdLAogIGhlYWRlciwKICBkYXRhLAogIGZpbGVuYW1lLAogIG1lcmdlcyA9IFtdLAogIGF1dG9XaWR0aCA9IHRydWUsCiAgYm9va1R5cGUgPSAieGxzeCIKfSA9IHt9KSB7CiAgZmlsZW5hbWUgPSBmaWxlbmFtZSB8fCAiZXhjZWwtbGlzdCI7CiAgZGF0YSA9IFsuLi5kYXRhXTsKICBkYXRhLnVuc2hpZnQoaGVhZGVyKTsKCiAgZm9yIChsZXQgaSA9IG11bHRpSGVhZGVyLmxlbmd0aCAtIDE7IGkgPiAtMTsgaS0tKSB7CiAgICBkYXRhLnVuc2hpZnQobXVsdGlIZWFkZXJbaV0pOwogIH0KCiAgbGV0IHdzX25hbWUgPSAiU2hlZXRKUyI7CiAgbGV0IHdiID0gbmV3IFdvcmtib29rKCksCiAgICAgIHdzID0gc2hlZXRfZnJvbV9hcnJheV9vZl9hcnJheXMoZGF0YSk7CgogIGlmIChtZXJnZXMubGVuZ3RoID4gMCkgewogICAgaWYgKCF3c1siIW1lcmdlcyJdKSB3c1siIW1lcmdlcyJdID0gW107CiAgICBtZXJnZXMuZm9yRWFjaChpdGVtID0+IHsKICAgICAgd3NbIiFtZXJnZXMiXS5wdXNoKFhMU1gudXRpbHMuZGVjb2RlX3JhbmdlKGl0ZW0pKTsKICAgIH0pOwogIH0KCiAgaWYgKGF1dG9XaWR0aCkgewogICAgY29uc3QgY29sV2lkdGggPSBkYXRhLm1hcChyb3cgPT4gcm93Lm1hcCh2YWwgPT4gewogICAgICBpZiAodmFsID09IG51bGwpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgd2NoOiAxMAogICAgICAgIH07CiAgICAgIH0gZWxzZSBpZiAodmFsLnRvU3RyaW5nKCkuY2hhckNvZGVBdCgwKSA+IDI1NSkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICB3Y2g6IHZhbC50b1N0cmluZygpLmxlbmd0aCAqIDIKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICB3Y2g6IHZhbC50b1N0cmluZygpLmxlbmd0aAogICAgICAgIH07CiAgICAgIH0KICAgIH0pKTsKICAgIGxldCByZXN1bHQgPSBjb2xXaWR0aFswXTsKCiAgICBmb3IgKGxldCBpID0gMTsgaSA8IGNvbFdpZHRoLmxlbmd0aDsgaSsrKSB7CiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY29sV2lkdGhbaV0ubGVuZ3RoOyBqKyspIHsKICAgICAgICBpZiAocmVzdWx0W2pdWyJ3Y2giXSA8IGNvbFdpZHRoW2ldW2pdWyJ3Y2giXSkgewogICAgICAgICAgcmVzdWx0W2pdWyJ3Y2giXSA9IGNvbFdpZHRoW2ldW2pdWyJ3Y2giXTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KCiAgICB3c1siIWNvbHMiXSA9IHJlc3VsdDsKICB9CgogIHdiLlNoZWV0TmFtZXMucHVzaCh3c19uYW1lKTsKICB3Yi5TaGVldHNbd3NfbmFtZV0gPSB3czsKICBsZXQgd2JvdXQgPSBYTFNYLndyaXRlKHdiLCB7CiAgICBib29rVHlwZTogYm9va1R5cGUsCiAgICBib29rU1NUOiBmYWxzZSwKICAgIHR5cGU6ICJiaW5hcnkiCiAgfSk7CiAgc2F2ZUFzKG5ldyBCbG9iKFtzMmFiKHdib3V0KV0sIHsKICAgIHR5cGU6ICJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iCiAgfSksIGAke2ZpbGVuYW1lfS4ke2Jvb2tUeXBlfWApOwp9"},{"version":3,"names":["saveAs","XLSX","generateArray","table","out","rows","querySelectorAll","ranges","R","length","outRow","row","columns","C","cell","colspan","getAttribute","rowspan","cellValue","innerText","forEach","range","s","r","e","c","i","push","k","datenum","v","date1904","epoch","Date","parse","UTC","sheet_from_array_of_arrays","data","opts","ws","cell_ref","utils","encode_cell","t","z","SSF","_table","encode_range","Workbook","SheetNames","Sheets","s2ab","buf","ArrayBuffer","view","Uint8Array","charCodeAt","export_table_to_excel","id","theTable","document","getElementById","oo","ws_name","wb","wbout","write","bookType","bookSST","type","Blob","export_json_to_excel","multiHeader","header","filename","merges","autoWidth","unshift","item","decode_range","colWidth","map","val","wch","toString","result","j"],"sources":["D:/qianger/7/jindouyunNewFront/src/utils/excel.js"],"sourcesContent":["import { saveAs } from \"file-saver\";\nimport XLSX from \"xlsx\";\n\nfunction generateArray(table) {\n let out = [];\n let rows = table.querySelectorAll(\"tr\");\n let ranges = [];\n for (let R = 0; R < rows.length; ++R) {\n let outRow = [];\n let row = rows[R];\n let columns = row.querySelectorAll(\"td\");\n for (let C = 0; C < columns.length; ++C) {\n let cell = columns[C];\n let colspan = cell.getAttribute(\"colspan\");\n let rowspan = cell.getAttribute(\"rowspan\");\n let cellValue = cell.innerText;\n if (cellValue !== \"\" && cellValue == +cellValue) cellValue = +cellValue;\n\n ranges.forEach(function (range) {\n if (\n R >= range.s.r &&\n R <= range.e.r &&\n outRow.length >= range.s.c &&\n outRow.length <= range.e.c\n ) {\n for (let i = 0; i <= range.e.c - range.s.c; ++i) outRow.push(null);\n }\n });\n\n if (rowspan || colspan) {\n rowspan = rowspan || 1;\n colspan = colspan || 1;\n ranges.push({\n s: {\n r: R,\n c: outRow.length,\n },\n e: {\n r: R + rowspan - 1,\n c: outRow.length + colspan - 1,\n },\n });\n }\n\n outRow.push(cellValue !== \"\" ? cellValue : null);\n\n if (colspan) for (let k = 0; k < colspan - 1; ++k) outRow.push(null);\n }\n out.push(outRow);\n }\n return [out, ranges];\n}\n\nfunction datenum(v, date1904) {\n if (date1904) v += 1462;\n let epoch = Date.parse(v);\n return (epoch - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);\n}\n\nfunction sheet_from_array_of_arrays(data, opts) {\n let ws = {};\n let range = {\n s: {\n c: 10000000,\n r: 10000000,\n },\n e: {\n c: 0,\n r: 0,\n },\n };\n for (let R = 0; R != data.length; ++R) {\n for (let C = 0; C != data[R].length; ++C) {\n if (range.s.r > R) range.s.r = R;\n if (range.s.c > C) range.s.c = C;\n if (range.e.r < R) range.e.r = R;\n if (range.e.c < C) range.e.c = C;\n let cell = {\n v: data[R][C],\n };\n if (cell.v == null) continue;\n let cell_ref = XLSX.utils.encode_cell({\n c: C,\n r: R,\n });\n\n if (typeof cell.v === \"number\") cell.t = \"n\";\n else if (typeof cell.v === \"boolean\") cell.t = \"b\";\n else if (cell.v instanceof Date) {\n cell.t = \"n\";\n cell.z = XLSX.SSF._table[14];\n cell.v = datenum(cell.v);\n } else cell.t = \"s\";\n\n ws[cell_ref] = cell;\n }\n }\n if (range.s.c < 10000000) ws[\"!ref\"] = XLSX.utils.encode_range(range);\n return ws;\n}\n\nfunction Workbook() {\n if (!(this instanceof Workbook)) return new Workbook();\n this.SheetNames = [];\n this.Sheets = {};\n}\n\nfunction s2ab(s) {\n let buf = new ArrayBuffer(s.length);\n let view = new Uint8Array(buf);\n for (let i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xff;\n return buf;\n}\n\nexport function export_table_to_excel(id) {\n let theTable = document.getElementById(id);\n let oo = generateArray(theTable);\n let ranges = oo[1];\n\n let data = oo[0];\n let ws_name = \"SheetJS\";\n\n let wb = new Workbook(),\n ws = sheet_from_array_of_arrays(data);\n\n ws[\"!merges\"] = ranges;\n\n wb.SheetNames.push(ws_name);\n wb.Sheets[ws_name] = ws;\n\n let wbout = XLSX.write(wb, {\n bookType: \"xlsx\",\n bookSST: false,\n type: \"binary\",\n });\n\n saveAs(\n new Blob([s2ab(wbout)], {\n type: \"application/octet-stream\",\n }),\n \"test.xlsx\"\n );\n}\n\nexport function export_json_to_excel({\n multiHeader = [],\n header,\n data,\n filename,\n merges = [],\n autoWidth = true,\n bookType = \"xlsx\",\n} = {}) {\n filename = filename || \"excel-list\";\n data = [...data];\n data.unshift(header);\n\n for (let i = multiHeader.length - 1; i > -1; i--) {\n data.unshift(multiHeader[i]);\n }\n\n let ws_name = \"SheetJS\";\n let wb = new Workbook(),\n ws = sheet_from_array_of_arrays(data);\n\n if (merges.length > 0) {\n if (!ws[\"!merges\"]) ws[\"!merges\"] = [];\n merges.forEach((item) => {\n ws[\"!merges\"].push(XLSX.utils.decode_range(item));\n });\n }\n\n if (autoWidth) {\n const colWidth = data.map((row) =>\n row.map((val) => {\n if (val == null) {\n return {\n wch: 10,\n };\n } else if (val.toString().charCodeAt(0) > 255) {\n return {\n wch: val.toString().length * 2,\n };\n } else {\n return {\n wch: val.toString().length,\n };\n }\n })\n );\n let result = colWidth[0];\n for (let i = 1; i < colWidth.length; i++) {\n for (let j = 0; j < colWidth[i].length; j++) {\n if (result[j][\"wch\"] < colWidth[i][j][\"wch\"]) {\n result[j][\"wch\"] = colWidth[i][j][\"wch\"];\n }\n }\n }\n ws[\"!cols\"] = result;\n }\n\n wb.SheetNames.push(ws_name);\n wb.Sheets[ws_name] = ws;\n\n let wbout = XLSX.write(wb, {\n bookType: bookType,\n bookSST: false,\n type: \"binary\",\n });\n saveAs(\n new Blob([s2ab(wbout)], {\n type: \"application/octet-stream\",\n }),\n `${filename}.${bookType}`\n );\n}\n"],"mappings":"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"}]}
|