Skip to content

Commit 290d650

Browse files
committedJan 12, 2022
fix: 🎨 improve readability of code
1 parent afe0cee commit 290d650

File tree

5 files changed

+1018
-3
lines changed

5 files changed

+1018
-3
lines changed
 

‎README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# what is react-multy-csv-viewer??
22

3-
React component to visualize csv file
3+
React component to visualize csv files
44

55
# installation
66

‎dist/index.es.js

+95-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,95 @@
1-
import e,{useState as t}from"react";import{Row as a,Col as n,Tabs as r,Table as o,Upload as l,Button as c}from"antd";import*as s from"papaparse";import"antd/dist/antd.css";const{TabPane:m}=r,i=({dataTransformed:t})=>e.createElement(a,null,e.createElement(n,{span:24},e.createElement(r,{defaultActiveKey:"1",centered:!0},t.map((({name:t,data:a,colomns:n},r)=>e.createElement(m,{key:r+1,tab:t},e.createElement(o,{dataSource:a,columns:n}))))))),p=()=>{const[r,o]=t([]),m=e=>{const{data:t}=s.parse(e,{header:!0});return[t,p(t[0])]},p=e=>{let t=[];for(const[a]of Object.entries(e))t.push(a);return t.map((e=>({title:e.toUpperCase(),dataIndex:e,key:e})))},d=e=>{const t=new FileReader;return new Promise(((a,n)=>{t.onerror=()=>{t.abort(),n(new DOMException("Problem parsing input file."))},t.onload=()=>{a(t.result)},t.readAsText(e)}))};return e.createElement(a,{gutter:[48,0]},e.createElement(n,{span:24},e.createElement(l,{accept:".txt, .csv",onChange:async e=>{let t=[];const{fileList:a}=e;for(let e of a){const{originFileObj:a,name:n}=e,r=await d(a),[o,l]=m(r);t.push({name:n,data:o,colomns:l})}o(t)},multiple:!0,action:!1,showUploadList:!1},e.createElement(c,null,"Choose File"))),r.length&&e.createElement(n,{span:24},e.createElement(i,{dataTransformed:r})))},d=()=>e.createElement("div",null,e.createElement(p,null));export{d as MultipleCsvViewer};
1+
import e, { useState as t } from "react";
2+
import {
3+
Row as a,
4+
Col as n,
5+
Tabs as r,
6+
Table as o,
7+
Upload as l,
8+
Button as s,
9+
} from "antd";
10+
import * as c from "papaparse";
11+
import "antd/dist/antd.css";
12+
const { TabPane: m } = r,
13+
i = ({ dataTransformed: t }) =>
14+
e.createElement(
15+
a,
16+
null,
17+
e.createElement(
18+
n,
19+
{ span: 24 },
20+
e.createElement(
21+
r,
22+
{ defaultActiveKey: "1", centered: !0 },
23+
t.map(({ name: t, data: a, colomns: n }, r) =>
24+
e.createElement(
25+
m,
26+
{ key: r + 1, tab: t },
27+
e.createElement(o, { dataSource: a, columns: n })
28+
)
29+
)
30+
)
31+
)
32+
),
33+
p = () => {
34+
const [r, o] = t([]),
35+
m = (e) => {
36+
const { data: t } = c.parse(e, { header: !0 });
37+
return [t, p(t[0])];
38+
},
39+
p = (e) => {
40+
let t = [];
41+
for (const [a] of Object.entries(e)) t.push(a);
42+
return t.map((e) => ({ title: e.toUpperCase(), dataIndex: e, key: e }));
43+
},
44+
d = (e) => {
45+
const t = new FileReader();
46+
return new Promise((a, n) => {
47+
(t.onerror = () => {
48+
t.abort(), n(new DOMException("Problem parsing input file."));
49+
}),
50+
(t.onload = () => {
51+
a(t.result);
52+
}),
53+
t.readAsText(e);
54+
});
55+
};
56+
return e.createElement(
57+
a,
58+
{ gutter: [48, 0] },
59+
e.createElement(
60+
n,
61+
{ span: 24 },
62+
e.createElement(
63+
l,
64+
{
65+
accept: ".txt, .csv",
66+
onChange: async (e) => {
67+
let t = [];
68+
const { fileList: a } = e;
69+
for (let e of a) {
70+
const { originFileObj: a, name: n } = e;
71+
if (n.endsWith(".csv")) {
72+
const e = await d(a),
73+
[r, o] = m(e);
74+
t.push({ name: n, data: r, colomns: o });
75+
}
76+
}
77+
o(t);
78+
},
79+
multiple: !0,
80+
action: !1,
81+
showUploadList: !1,
82+
},
83+
e.createElement(s, null, "Choose File")
84+
)
85+
),
86+
r.length &&
87+
e.createElement(
88+
n,
89+
{ span: 24 },
90+
e.createElement(i, { dataTransformed: r })
91+
)
92+
);
93+
},
94+
d = () => e.createElement("div", null, e.createElement(p, null));
95+
export { d as MultipleCsvViewer };

‎dist/index.js

+121-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,121 @@
1-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("antd"),a=require("papaparse");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function n(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,Object.freeze(t)}require("antd/dist/antd.css");var l=r(e),o=n(a);const{TabPane:u}=t.Tabs,c=({dataTransformed:e})=>l.default.createElement(t.Row,null,l.default.createElement(t.Col,{span:24},l.default.createElement(t.Tabs,{defaultActiveKey:"1",centered:!0},e.map((({name:e,data:a,colomns:r},n)=>l.default.createElement(u,{key:n+1,tab:e},l.default.createElement(t.Table,{dataSource:a,columns:r}))))))),s=()=>{const[a,r]=e.useState([]),n=e=>{const{data:t}=o.parse(e,{header:!0});return[t,u(t[0])]},u=e=>{let t=[];for(const[a]of Object.entries(e))t.push(a);return t.map((e=>({title:e.toUpperCase(),dataIndex:e,key:e})))},s=e=>{const t=new FileReader;return new Promise(((a,r)=>{t.onerror=()=>{t.abort(),r(new DOMException("Problem parsing input file."))},t.onload=()=>{a(t.result)},t.readAsText(e)}))};return l.default.createElement(t.Row,{gutter:[48,0]},l.default.createElement(t.Col,{span:24},l.default.createElement(t.Upload,{accept:".txt, .csv",onChange:async e=>{let t=[];const{fileList:a}=e;for(let e of a){const{originFileObj:a,name:r}=e,l=await s(a),[o,u]=n(l);t.push({name:r,data:o,colomns:u})}r(t)},multiple:!0,action:!1,showUploadList:!1},l.default.createElement(t.Button,null,"Choose File"))),a.length&&l.default.createElement(t.Col,{span:24},l.default.createElement(c,{dataTransformed:a})))};exports.MultipleCsvViewer=()=>l.default.createElement("div",null,l.default.createElement(s,null));
1+
"use strict";
2+
Object.defineProperty(exports, "__esModule", { value: !0 });
3+
var e = require("react"),
4+
t = require("antd"),
5+
a = require("papaparse");
6+
function r(e) {
7+
return e && "object" == typeof e && "default" in e ? e : { default: e };
8+
}
9+
function n(e) {
10+
if (e && e.__esModule) return e;
11+
var t = Object.create(null);
12+
return (
13+
e &&
14+
Object.keys(e).forEach(function (a) {
15+
if ("default" !== a) {
16+
var r = Object.getOwnPropertyDescriptor(e, a);
17+
Object.defineProperty(
18+
t,
19+
a,
20+
r.get
21+
? r
22+
: {
23+
enumerable: !0,
24+
get: function () {
25+
return e[a];
26+
},
27+
}
28+
);
29+
}
30+
}),
31+
(t.default = e),
32+
Object.freeze(t)
33+
);
34+
}
35+
require("antd/dist/antd.css");
36+
var l = r(e),
37+
o = n(a);
38+
const { TabPane: u } = t.Tabs,
39+
c = ({ dataTransformed: e }) =>
40+
l.default.createElement(
41+
t.Row,
42+
null,
43+
l.default.createElement(
44+
t.Col,
45+
{ span: 24 },
46+
l.default.createElement(
47+
t.Tabs,
48+
{ defaultActiveKey: "1", centered: !0 },
49+
e.map(({ name: e, data: a, colomns: r }, n) =>
50+
l.default.createElement(
51+
u,
52+
{ key: n + 1, tab: e },
53+
l.default.createElement(t.Table, { dataSource: a, columns: r })
54+
)
55+
)
56+
)
57+
)
58+
),
59+
s = () => {
60+
const [a, r] = e.useState([]),
61+
n = (e) => {
62+
const { data: t } = o.parse(e, { header: !0 });
63+
return [t, u(t[0])];
64+
},
65+
u = (e) => {
66+
let t = [];
67+
for (const [a] of Object.entries(e)) t.push(a);
68+
return t.map((e) => ({ title: e.toUpperCase(), dataIndex: e, key: e }));
69+
},
70+
s = (e) => {
71+
const t = new FileReader();
72+
return new Promise((a, r) => {
73+
(t.onerror = () => {
74+
t.abort(), r(new DOMException("Problem parsing input file."));
75+
}),
76+
(t.onload = () => {
77+
a(t.result);
78+
}),
79+
t.readAsText(e);
80+
});
81+
};
82+
return l.default.createElement(
83+
t.Row,
84+
{ gutter: [48, 0] },
85+
l.default.createElement(
86+
t.Col,
87+
{ span: 24 },
88+
l.default.createElement(
89+
t.Upload,
90+
{
91+
accept: ".txt, .csv",
92+
onChange: async (e) => {
93+
let t = [];
94+
const { fileList: a } = e;
95+
for (let e of a) {
96+
const { originFileObj: a, name: r } = e;
97+
if (r.endsWith(".csv")) {
98+
const e = await s(a),
99+
[l, o] = n(e);
100+
t.push({ name: r, data: l, colomns: o });
101+
}
102+
}
103+
r(t);
104+
},
105+
multiple: !0,
106+
action: !1,
107+
showUploadList: !1,
108+
},
109+
l.default.createElement(t.Button, null, "Choose File")
110+
)
111+
),
112+
a.length &&
113+
l.default.createElement(
114+
t.Col,
115+
{ span: 24 },
116+
l.default.createElement(c, { dataTransformed: a })
117+
)
118+
);
119+
};
120+
exports.MultipleCsvViewer = () =>
121+
l.default.createElement("div", null, l.default.createElement(s, null));

0 commit comments

Comments
 (0)