xl1 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var S=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(e,o)=>(typeof require<"u"?require:e)[o]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+s+'" is not supported')});var b=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports);var w=b((P,q)=>{var O=S("fs"),r=S("xlsx"),R=s=>{let{file:e,sheet:o,range:a,defval:c,noNullRow:l}=s;if(!O.existsSync(e)){console.log("file not found, ",e);return}if(![".xlsx",".xlsm"].find(u=>e.endsWith(u))){console.log("file type error, ",e);return}let i=r.readFile(e,{bookSheets:!1});if(!i)return null;let g=i.Sheets[o||i.SheetNames[0]],k={range:a,blankrows:!1,defval:c},p=r.utils.sheet_to_json(g,k);return l?p.filter(u=>Object.values(u).some(x=>!!x)):p},Z=s=>{let{file:e,data:o,sheet:a}=s;if(!(e&&o&&Array.isArray(o)&&o.length>0))return;let c=Array.isArray(o[0])?r.utils.aoa_to_sheet(o):r.utils.json_to_sheet(o),l=O.existsSync(e)?r.readFile(e,{cellDates:!0}):r.utils.book_new();r.utils.book_append_sheet(l,c,a?a.substring(0,31):"Sheet1",!0),r.writeFile(l,e,{compression:!0})};q.exports={readXlsx:R,writeXlsx:Z}});var v=b((T,j)=>{var{readXlsx:D}=w(),W={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=D(s);console.log(JSON.stringify(e,null,2))})()}};j.exports=W});var F=b((Y,X)=>{var{readXlsx:I,writeXlsx:B}=w(),H={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=t=>{let[n,_,f]=t.split("|");return{file:n,sheet:_,range:f||"A1:Z2000",defval:null,noNullRow:!0}},[o,...a]=s.files,c=e(o),l=a.map(e),i=t=>{let n=Object.values(t);return n&&n.length>0?n[0]:""},d=I(c),g=d.map(i);l.map(t=>I(t)).forEach((t,n)=>{t.map(i).forEach((f,M)=>{let y=g.findIndex(h=>f&&f===h);if(y>-1){let h=t[M],A=d[y];Object.keys(h).slice(1).forEach(m=>{m in A&&h[m]&&(A[m]=h[m])})}s.debug&&console.log(l[n].sheet,f,y>-1?"found in baseSheet":"not found in baseSheet")})}),console.log("Merge completed successfully.");let p=Object.keys(d[0]).map(t=>t.startsWith("__EMPTY")?null:t),u=d.slice(1).map(t=>Object.values(t)).filter(t=>t.some(n=>n!==null)),x=[p,...u];B({file:s.output,data:x,sheet:s.sheet||"MergedSheet"})})()}};X.exports=H});var E=b((z,N)=>{N.exports=()=>{let s=S("yargs").scriptName("xl1");s.command(v()),s.command(F());let e=s.parse();(!e._||e._.length===0)&&s.showHelp()}});E()();
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()();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xl1",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "just some xlsx script.",
5
5
  "bin": {
6
6
  "xl1": "bin/cli.js"