xl1 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
"use strict";var
|
1
|
+
"use strict";var m=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+s+'" is not supported')});var _=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports);var q=_((re,E)=>{var j=m("fs"),d=m("xlsx"),Q=s=>{let{file:e,sheet:t,range:n,defval:a,noNullRow:r}=s;if(!j.existsSync(e)){console.log("file not found, ",e);return}if(![".xlsx",".xlsm"].find(h=>e.endsWith(h))){console.log("file type error, ",e);return}let o=d.readFile(e,{bookSheets:!1});if(!o)return null;let c=o.Sheets[t||o.SheetNames[0]],p={range:n,blankrows:!1,defval:a},i=d.utils.sheet_to_json(c,p);return r?i.filter(h=>Object.values(h).some(w=>!!w)):i},T=s=>{let{file:e,data:t,sheet:n}=s;if(!(e&&t&&Array.isArray(t)&&t.length>0))return;let a=Array.isArray(t[0])?d.utils.aoa_to_sheet(t):d.utils.json_to_sheet(t),r=j.existsSync(e)?d.readFile(e,{cellDates:!0}):d.utils.book_new();d.utils.book_append_sheet(r,a,n?n.substring(0,31):"Sheet1",!0),d.writeFile(r,e,{compression:!0})},y=s=>{let[e,t]=s.split(":"),n=e.replace(/\D/g,""),a=t.replace(/\D/g,""),r=e.replace(/\d/g,""),o=t.replace(/\d/g,"");return{startRow:parseInt(n),endRow:parseInt(a),startCol:r,endCol:o,firstRow:`${e}:${o}${n}`,firstCol:`${e}:${r}${a}`}},D=(s,e,t,n,a)=>{console.log([e,t,n,a]);let r=[];for(let o=e;o<=t;o++){let g=[];for(let c=n;c<=a;c++){let i=s[""];g.push(i?i.v:null)}r.push(g)}return r},O=(s,e)=>{let t=y(e);return D(s,t.startRow,t.endRow,t.startCol,t.endCol)},U=(s,e)=>{let t=y(e);return O(s,t.firstRow)[0]},V=(s,e)=>{let t=y(e);return console.log(t.firstCol),O(s,t.firstCol)[0]};E.exports={readXlsx:Q,writeXlsx:T,getSheetData:O,getSheetData2:D,parseRange:y,getFirstRow:U,getFirstCol:V}});var M=_((le,H)=>{var{readXlsx:Y}=q(),ee={command:"read",describe:"load excel file",builder:{file:{alias:"f",describe:"load xlsx file ",demandOption:!0,type:"string"},sheet:{alias:"s",describe:"xlsx sheet name",demandOption:!1,type:"string"},range:{alias:"r",describe:"range of excel",default:"A1:Z2000",demandOption:!1,type:"string"},defval:{describe:"defval of cell",demandOption:!1,default:void 0,type:"string"}},handler(s){(async()=>{let e=Y(s);console.log(JSON.stringify(e,null,2))})()}};H.exports=ee});var L=_((ie,Z)=>{var{readXlsx:se,parseRange:W,getFirstRow:ae,getFirstCol:ce}=q(),u=m("xlsx"),te=m("fs"),oe={command:"merge <files..>",describe:"merge multiple excel sheets into the first sheet. (format: file|sheet|range, file|Sheet1|A1:Z2000)",builder:{output:{alias:"o",describe:"output file name",default:"MergedBook.xlsx",type:"string"},sheet:{alias:"s",describe:"xlsx sheet name",demandOption:!1,type:"string"},debug:{alias:"d",describe:"print debug log",demandOption:!1,type:"boolean"}},handler(s){(async()=>{let e=(...l)=>{s.debug&&console.log(...l)},t=l=>{let[f,x,R]=l.split("|");return{file:f,sheet:x,range:R||"A1:Z2000",defval:null,noNullRow:!0,debug:s.debug}},n=l=>{let f=Object.values(l);return f&&f.length>0?f[0]:""},[a,...r]=s.files,o=t(a),g=u.readFile(o.file,{bookSheets:!1}),c=g.Sheets[o.sheet||g.SheetNames[0]],p=W(o.range),i=u.utils.sheet_to_json(c,{header:1,range:p.firstRow,blankrows:!0,defval:null})[0],h=u.utils.sheet_to_json(c,{header:1,range:p.firstCol,blankrows:!0,defval:null}).map(l=>l[0]);e(W(o.range)),e("Header",i),e("RowIds",h);let w=r.map(t);w.forEach((l,f)=>{let x=se(l),R=x.map(n);console.log(`================${l.sheet}=================`),R.forEach((k,J)=>{let F=h.findIndex(b=>k&&k===b);if(e(l.sheet,k,F>-1?"OK":"NG",`SheetProcess:${f+1}/${w.length}`),F>-1){let b=x[J],$=Object.keys(b).slice(1);$.forEach((A,K)=>{let z=i.findIndex(X=>X&&A===X),v=F,I=z,N=u.utils.encode_cell({r:v,c:I});c[N]={t:"s",v:b[A]},s.debug&&console.log(l.sheet,k,`RowProcess:${(K+1)/$.length*100}%`,[N,v,I,b[A]])})}})}),console.log("Merge completed successfully.");let S=s.output,C=te.existsSync(S)?u.readFile(S,{cellDates:!0}):u.utils.book_new(),G=(s.sheet||"MergedSheet").substring(0,31);u.utils.book_append_sheet(C,c,G,!0),u.writeFile(C,S,{compression:!0})})()}};Z.exports=oe});var B=_((de,P)=>{P.exports=()=>{let s=m("yargs").scriptName("xl1");s.command(M()),s.command(L());let e=s.parse();(!e._||e._.length===0)&&s.showHelp()}});B()();
|