w-design-system 0.0.21 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/icon/chevron-down.svg +3 -0
- package/dist/assets/icon/chevron-left.svg +3 -0
- package/dist/assets/icon/chevron-right.svg +3 -0
- package/dist/assets/icon/dump.svg +3 -0
- package/dist/assets/icon/edit.svg +10 -0
- package/dist/assets/icon/index.d.ts +6 -1
- package/dist/assets/icon/index.d.ts.map +1 -1
- package/dist/assets/icon/index.js +6 -1
- package/dist/assets/icon/index.js.map +1 -1
- package/dist/assets/icon/index.ts +17 -1
- package/dist/assets/icon/spin.svg +3 -0
- package/dist/components/ButtonRound/index.d.ts.map +1 -1
- package/dist/components/ButtonRound/index.js +4 -4
- package/dist/components/ButtonRound/index.js.map +1 -1
- package/dist/components/ButtonRound/stories.d.ts.map +1 -1
- package/dist/components/ButtonRound/stories.js +1 -2
- package/dist/components/ButtonRound/stories.js.map +1 -1
- package/dist/components/ButtonRound/styles.js +5 -5
- package/dist/components/ButtonRound/styles.js.map +1 -1
- package/dist/components/CardStories/index.d.ts +9 -0
- package/dist/components/CardStories/index.d.ts.map +1 -0
- package/dist/components/CardStories/index.js +43 -0
- package/dist/components/CardStories/index.js.map +1 -0
- package/dist/components/CardStories/stories.d.ts +9 -0
- package/dist/components/CardStories/stories.d.ts.map +1 -0
- package/dist/components/CardStories/stories.js +35 -0
- package/dist/components/CardStories/stories.js.map +1 -0
- package/dist/components/Loading/index.d.ts +8 -0
- package/dist/components/Loading/index.d.ts.map +1 -0
- package/dist/components/Loading/index.js +50 -0
- package/dist/components/Loading/index.js.map +1 -0
- package/dist/components/Loading/stories.d.ts +12 -0
- package/dist/components/Loading/stories.d.ts.map +1 -0
- package/dist/components/Loading/stories.js +46 -0
- package/dist/components/Loading/stories.js.map +1 -0
- package/dist/components/Modal/stories.js +1 -1
- package/dist/components/Modal/stories.js.map +1 -1
- package/dist/components/Paginate/index.d.ts +10 -0
- package/dist/components/Paginate/index.d.ts.map +1 -0
- package/dist/components/Paginate/index.js +58 -0
- package/dist/components/Paginate/index.js.map +1 -0
- package/dist/components/Paginate/stories.d.ts +6 -0
- package/dist/components/Paginate/stories.d.ts.map +1 -0
- package/dist/components/Paginate/stories.js +37 -0
- package/dist/components/Paginate/stories.js.map +1 -0
- package/dist/components/Paginate/styles.d.ts +2 -0
- package/dist/components/Paginate/styles.d.ts.map +1 -0
- package/dist/components/Paginate/styles.js +97 -0
- package/dist/components/Paginate/styles.js.map +1 -0
- package/dist/components/Paragraph/index.d.ts +5 -1
- package/dist/components/Paragraph/index.d.ts.map +1 -1
- package/dist/components/Paragraph/index.js +31 -9
- package/dist/components/Paragraph/index.js.map +1 -1
- package/dist/components/Paragraph/stories.d.ts.map +1 -1
- package/dist/components/Paragraph/stories.js +18 -20
- package/dist/components/Paragraph/stories.js.map +1 -1
- package/dist/components/Table/index.d.ts +21 -0
- package/dist/components/Table/index.d.ts.map +1 -0
- package/dist/components/Table/index.js +90 -0
- package/dist/components/Table/index.js.map +1 -0
- package/dist/components/Table/stories.d.ts +9 -0
- package/dist/components/Table/stories.d.ts.map +1 -0
- package/dist/components/Table/stories.js +159 -0
- package/dist/components/Table/stories.js.map +1 -0
- package/dist/components/Table/styles.d.ts +1 -0
- package/dist/components/Table/styles.d.ts.map +1 -0
- package/dist/components/Table/styles.js +2 -0
- package/dist/components/Table/styles.js.map +1 -0
- package/dist/components/Tabs/stories.js +3 -3
- package/dist/components/Tabs/stories.js.map +1 -1
- package/dist/components/Types/index.d.ts +1 -0
- package/dist/components/Types/index.d.ts.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/package.json +1 -1
- package/src/assets/icon/chevron-down.svg +3 -0
- package/src/assets/icon/chevron-left.svg +3 -0
- package/src/assets/icon/chevron-right.svg +3 -0
- package/src/assets/icon/dump.svg +3 -0
- package/src/assets/icon/edit.svg +10 -0
- package/src/assets/icon/index.ts +17 -1
- package/src/assets/icon/spin.svg +3 -0
- package/src/components/ButtonRound/index.tsx +5 -4
- package/src/components/ButtonRound/stories.tsx +2 -2
- package/src/components/ButtonRound/styles.ts +5 -5
- package/src/components/CardStories/index.tsx +59 -0
- package/src/components/CardStories/stories.tsx +44 -0
- package/src/components/Loading/index.tsx +73 -0
- package/src/components/Loading/stories.tsx +65 -0
- package/src/components/Modal/stories.tsx +1 -1
- package/src/components/Paginate/index.tsx +108 -0
- package/src/components/Paginate/stories.tsx +53 -0
- package/src/components/Paginate/styles.ts +96 -0
- package/src/components/Paragraph/index.tsx +30 -11
- package/src/components/Paragraph/stories.tsx +18 -21
- package/src/components/Table/index.tsx +203 -0
- package/src/components/Table/stories.tsx +198 -0
- package/src/components/Table/styles.ts +0 -0
- package/src/components/Tabs/stories.tsx +3 -3
- package/src/components/Types/index.ts +1 -0
- package/src/components/index.tsx +2 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import { action } from '@storybook/addon-actions';
|
|
3
|
+
import { fn } from '@storybook/test';
|
|
4
|
+
import { Paginate } from '.';
|
|
5
|
+
const meta = {
|
|
6
|
+
title: 'Components/Paginate',
|
|
7
|
+
component: Paginate,
|
|
8
|
+
tags: ['autodocs'],
|
|
9
|
+
args: {
|
|
10
|
+
currentPage: 1,
|
|
11
|
+
itemCount: 100,
|
|
12
|
+
itemsPerPage: 10,
|
|
13
|
+
onChangePage: fn(),
|
|
14
|
+
onChangeItemsPerPage: fn(),
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
export default meta;
|
|
18
|
+
const NewPaginate = (args) => {
|
|
19
|
+
const [currentPage, setCurrentPage] = useState(args.currentPage);
|
|
20
|
+
const [itemCount, setItemCount] = useState(args.itemCount);
|
|
21
|
+
const [itemsPerPage, setItemsPerPage] = useState(args.itemsPerPage);
|
|
22
|
+
const handleChangePage = (page) => {
|
|
23
|
+
setCurrentPage(page);
|
|
24
|
+
action('changePage')(page);
|
|
25
|
+
};
|
|
26
|
+
const handleChangeItemsPerPage = (items) => {
|
|
27
|
+
setItemsPerPage(items);
|
|
28
|
+
action('changeItemsPerPage')(items);
|
|
29
|
+
};
|
|
30
|
+
return (React.createElement(Paginate, Object.assign({}, args, { currentPage: currentPage, itemCount: itemCount, itemsPerPage: itemsPerPage, onChangePage: handleChangePage, onChangeItemsPerPage: handleChangeItemsPerPage })));
|
|
31
|
+
};
|
|
32
|
+
export const Default = {
|
|
33
|
+
render: args => {
|
|
34
|
+
return React.createElement(NewPaginate, Object.assign({}, args));
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../src/components/Paginate/stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAiB,MAAM,GAAG,CAAA;AAE3C,MAAM,IAAI,GAAwB;IAChC,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,GAAG;QACd,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE,EAAE;QAClB,oBAAoB,EAAE,EAAE,EAAE;KAC3B;CACF,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,MAAM,WAAW,GAAG,CAAC,IAAmB,EAAE,EAAE;IAC1C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC1D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAEnE,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE;QACxC,cAAc,CAAC,IAAI,CAAC,CAAA;QACpB,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC,CAAA;IAED,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,EAAE;QACjD,eAAe,CAAC,KAAK,CAAC,CAAA;QACtB,MAAM,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,CAAA;IACrC,CAAC,CAAA;IACD,OAAO,CACL,oBAAC,QAAQ,oBACH,IAAI,IACR,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,gBAAgB,EAC9B,oBAAoB,EAAE,wBAAwB,IAC9C,CACH,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAA4B;IAC9C,MAAM,EAAE,IAAI,CAAC,EAAE;QACb,OAAO,oBAAC,WAAW,oBAAK,IAAI,EAAI,CAAA;IAClC,CAAC;CACF,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const Container: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
2
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/components/Paginate/styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,6NA4FrB,CAAA"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { theme } from '../Themes';
|
|
3
|
+
import { chevronDownSVG } from '../../assets/icon';
|
|
4
|
+
export const Container = styled.div `
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: space-between;
|
|
7
|
+
align-items: center;
|
|
8
|
+
|
|
9
|
+
.icon,
|
|
10
|
+
.icon svg,
|
|
11
|
+
.icon svg path {
|
|
12
|
+
fill: ${theme.colors.shade30} !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.icon:hover,
|
|
16
|
+
.icon:hover svg,
|
|
17
|
+
.icon:hover svg path {
|
|
18
|
+
fill: ${theme.colors.cyan30} !important;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.icon-disabled,
|
|
22
|
+
.icon-disabled svg,
|
|
23
|
+
.icon-disabled svg path {
|
|
24
|
+
fill: ${theme.colors.shade20} !important;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
ul.pagination {
|
|
28
|
+
display: flex;
|
|
29
|
+
gap: 1rem;
|
|
30
|
+
font-family: 'Nunito Sans', sans-serif;
|
|
31
|
+
font-size: 1rem;
|
|
32
|
+
color: ${theme.colors.shade40};
|
|
33
|
+
li {
|
|
34
|
+
list-style: none;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
li.page {
|
|
38
|
+
cursor: pointer;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
li.page:hover {
|
|
42
|
+
color: ${theme.colors.cyan30};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
li.page-active {
|
|
46
|
+
color: ${theme.colors.cyan30};
|
|
47
|
+
cursor: default;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.items-per-page-wrapper {
|
|
52
|
+
display: flex;
|
|
53
|
+
align-items: center;
|
|
54
|
+
|
|
55
|
+
gap: 1rem;
|
|
56
|
+
font-family: 'Nunito Sans', sans-serif;
|
|
57
|
+
color: ${theme.colors.shade40};
|
|
58
|
+
|
|
59
|
+
select {
|
|
60
|
+
/* styling */
|
|
61
|
+
cursor: pointer;
|
|
62
|
+
background-color: ${theme.colors.shade05};
|
|
63
|
+
background-image: url(${chevronDownSVG});
|
|
64
|
+
background-repeat: no-repeat;
|
|
65
|
+
background-size: 1rem;
|
|
66
|
+
background-position: right 1rem top calc(50% + 1px);
|
|
67
|
+
border: 1px solid ${theme.colors.shade20};
|
|
68
|
+
color: ${theme.colors.shade40};
|
|
69
|
+
border-radius: 4px;
|
|
70
|
+
display: inline-block;
|
|
71
|
+
font: inherit;
|
|
72
|
+
outline: 0;
|
|
73
|
+
|
|
74
|
+
padding: 18px 48px 14px 16px;
|
|
75
|
+
|
|
76
|
+
margin: 0;
|
|
77
|
+
-webkit-box-sizing: border-box;
|
|
78
|
+
-moz-box-sizing: border-box;
|
|
79
|
+
box-sizing: border-box;
|
|
80
|
+
-webkit-appearance: none;
|
|
81
|
+
-moz-appearance: none; /* Firefox */
|
|
82
|
+
-webkit-appearance: none; /* Safari and Chrome */
|
|
83
|
+
appearance: none;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
select:hover {
|
|
87
|
+
background-color: ${theme.colors.shade10};
|
|
88
|
+
border: 1px solid ${theme.colors.shade20};
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
select:focus {
|
|
92
|
+
background-color: ${theme.colors.shade10};
|
|
93
|
+
border: 1px solid ${theme.colors.shade30};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
`;
|
|
97
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/Paginate/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;YAQvB,KAAK,CAAC,MAAM,CAAC,OAAO;;;;;;YAMpB,KAAK,CAAC,MAAM,CAAC,MAAM;;;;;;YAMnB,KAAK,CAAC,MAAM,CAAC,OAAO;;;;;;;;aAQnB,KAAK,CAAC,MAAM,CAAC,OAAO;;;;;;;;;;eAUlB,KAAK,CAAC,MAAM,CAAC,MAAM;;;;eAInB,KAAK,CAAC,MAAM,CAAC,MAAM;;;;;;;;;;;aAWrB,KAAK,CAAC,MAAM,CAAC,OAAO;;;;;0BAKP,KAAK,CAAC,MAAM,CAAC,OAAO;8BAChB,cAAc;;;;0BAIlB,KAAK,CAAC,MAAM,CAAC,OAAO;eAC/B,KAAK,CAAC,MAAM,CAAC,OAAO;;;;;;;;;;;;;;;;;;;0BAmBT,KAAK,CAAC,MAAM,CAAC,OAAO;0BACpB,KAAK,CAAC,MAAM,CAAC,OAAO;;;;0BAIpB,KAAK,CAAC,MAAM,CAAC,OAAO;0BACpB,KAAK,CAAC,MAAM,CAAC,OAAO;;;CAG7C,CAAA"}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface ParagraphProps {
|
|
3
3
|
size?: 'x-small' | 'small' | 'medium' | 'large';
|
|
4
|
-
weight?: 400 | 600 | 700 | 800;
|
|
5
4
|
as?: 'span' | 'div' | 'label' | 'p';
|
|
6
5
|
color?: string;
|
|
6
|
+
textTransform?: 'none' | 'capitalize' | 'uppercase' | 'lowercase';
|
|
7
7
|
children: React.ReactNode;
|
|
8
|
+
lightBod?: boolean;
|
|
9
|
+
semiBod?: boolean;
|
|
10
|
+
strongBod?: boolean;
|
|
11
|
+
heavyBod?: boolean;
|
|
8
12
|
}
|
|
9
13
|
export declare const Paragraph: React.FC<ParagraphProps>;
|
|
10
14
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Paragraph/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC/C,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Paragraph/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC/C,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,GAAG,CAAA;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,CAAA;IACjE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAkCD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAa9C,CAAA"}
|
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
1
12
|
import React from 'react';
|
|
2
13
|
import styled from 'styled-components';
|
|
3
14
|
const sizes = {
|
|
@@ -7,21 +18,32 @@ const sizes = {
|
|
|
7
18
|
large: '18px',
|
|
8
19
|
};
|
|
9
20
|
const weights = {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
21
|
+
lightBod: 400,
|
|
22
|
+
semiBod: 600,
|
|
23
|
+
strongBod: 700,
|
|
24
|
+
heavyBod: 800,
|
|
25
|
+
};
|
|
26
|
+
const getFontWeight = (props) => {
|
|
27
|
+
if (props.heavyBod)
|
|
28
|
+
return weights.heavyBod;
|
|
29
|
+
if (props.strongBod)
|
|
30
|
+
return weights.strongBod;
|
|
31
|
+
if (props.semiBod)
|
|
32
|
+
return weights.semiBod;
|
|
33
|
+
return weights.lightBod;
|
|
14
34
|
};
|
|
15
35
|
const ParagraphStyled = styled.p `
|
|
16
36
|
margin: 0;
|
|
17
37
|
padding: 0;
|
|
18
|
-
font-size: ${
|
|
19
|
-
font-weight: ${props => (props
|
|
38
|
+
font-size: ${({ size = 'small' }) => sizes[size]};
|
|
39
|
+
font-weight: ${props => getFontWeight(props)};
|
|
20
40
|
line-height: 140%;
|
|
21
41
|
font-family: 'Nunito Sans', sans-serif;
|
|
22
|
-
color: ${
|
|
42
|
+
color: ${({ color = 'inherit' }) => color};
|
|
43
|
+
text-transform: ${({ textTransform = 'none' }) => textTransform};
|
|
23
44
|
`;
|
|
24
|
-
export const Paragraph = (
|
|
25
|
-
|
|
45
|
+
export const Paragraph = (_a) => {
|
|
46
|
+
var { size = 'small', as = 'p', color = 'inherit', textTransform = 'none', children } = _a, props = __rest(_a, ["size", "as", "color", "textTransform", "children"]);
|
|
47
|
+
return (React.createElement(ParagraphStyled, Object.assign({ as: as, size: size, color: color, textTransform: textTransform }, props), children));
|
|
26
48
|
};
|
|
27
49
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Paragraph/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,MAAM,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Paragraph/index.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,MAAM,MAAM,mBAAmB,CAAA;AActC,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;CACd,CAAA;AAED,MAAM,OAAO,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;CACd,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,KAAqB,EAAE,EAAE;IAC9C,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAA;IAC3C,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,SAAS,CAAA;IAC7C,IAAI,KAAK,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,OAAO,CAAA;IACzC,OAAO,OAAO,CAAC,QAAQ,CAAA;AACzB,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAgB;;;eAGjC,CAAC,EAAE,IAAI,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;iBACjC,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC;;;WAGnC,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC,KAAK;oBACvB,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,aAAa;CAChE,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAA6B,CAAC,EAOnD,EAAE,EAAE;QAP+C,EAClD,IAAI,GAAG,OAAO,EACd,EAAE,GAAG,GAAG,EACR,KAAK,GAAG,SAAS,EACjB,aAAa,GAAG,MAAM,EACtB,QAAQ,OAET,EADI,KAAK,cAN0C,oDAOnD,CADS;IAER,OAAO,CACL,oBAAC,eAAe,kBAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,IAAM,KAAK,GACvF,QAAQ,CACO,CACnB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../../src/components/Paragraph/stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,
|
|
1
|
+
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../../src/components/Paragraph/stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CA4BC,CAAA;AAElC,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AAElC,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAOnB,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAOpB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAMnB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAQ3B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAA"}
|
|
@@ -11,62 +11,61 @@ const meta = {
|
|
|
11
11
|
control: { type: 'select', options: ['x-small', 'small', 'medium', 'large'] },
|
|
12
12
|
description: 'Select the size of the paragraph',
|
|
13
13
|
},
|
|
14
|
-
weight: {
|
|
15
|
-
control: { type: 'select', options: [400, 600, 700, 800] },
|
|
16
|
-
description: 'Select the font weight of the paragraph',
|
|
17
|
-
},
|
|
18
14
|
as: {
|
|
19
15
|
control: { type: 'select', options: ['span', 'div', 'label', 'p'] },
|
|
20
16
|
description: 'Select the HTML element to render',
|
|
21
17
|
},
|
|
22
18
|
color: {
|
|
23
|
-
control: 'color',
|
|
19
|
+
control: 'color',
|
|
24
20
|
description: 'Select the color of the text',
|
|
25
21
|
},
|
|
26
22
|
children: {
|
|
27
23
|
control: 'text',
|
|
28
24
|
description: 'Content of the paragraph',
|
|
29
25
|
},
|
|
26
|
+
semiBod: { control: 'boolean', description: 'Use semiBod weight' },
|
|
27
|
+
strongBod: { control: 'boolean', description: 'Use strongBod weight' },
|
|
28
|
+
heavyBod: { control: 'boolean', description: 'Use heavyBod weight' },
|
|
30
29
|
},
|
|
31
30
|
};
|
|
32
31
|
export default meta;
|
|
33
|
-
// Define different stories for the Paragraph component
|
|
34
32
|
export const XSmall = {
|
|
35
33
|
args: {
|
|
36
34
|
size: 'x-small',
|
|
37
|
-
color: '#000000',
|
|
38
|
-
children: 'This is an X-small paragraph.',
|
|
35
|
+
color: '#000000',
|
|
36
|
+
children: 'This is an X-small paragraph with LightBod weight.',
|
|
39
37
|
},
|
|
40
38
|
};
|
|
41
39
|
export const Small = {
|
|
42
40
|
args: {
|
|
43
41
|
size: 'small',
|
|
44
|
-
|
|
45
|
-
color: '#333333',
|
|
46
|
-
children: 'This is a small paragraph with weight
|
|
42
|
+
semiBod: true,
|
|
43
|
+
color: '#333333',
|
|
44
|
+
children: 'This is a small paragraph with SemiBod weight.',
|
|
47
45
|
},
|
|
48
46
|
};
|
|
49
47
|
export const Medium = {
|
|
50
48
|
args: {
|
|
51
49
|
size: 'medium',
|
|
52
|
-
|
|
53
|
-
color: '#666666',
|
|
54
|
-
children: 'This is a medium paragraph with weight
|
|
50
|
+
strongBod: true,
|
|
51
|
+
color: '#666666',
|
|
52
|
+
children: 'This is a medium paragraph with StrongBod weight.',
|
|
55
53
|
},
|
|
56
54
|
};
|
|
57
55
|
export const Large = {
|
|
58
56
|
args: {
|
|
59
57
|
size: 'large',
|
|
60
|
-
color: '#999999',
|
|
61
|
-
children: 'This is a large paragraph.',
|
|
58
|
+
color: '#999999',
|
|
59
|
+
children: 'This is a large paragraph with LightBod weight.',
|
|
62
60
|
},
|
|
63
61
|
};
|
|
64
62
|
export const CustomElement = {
|
|
65
63
|
args: {
|
|
66
64
|
size: 'medium',
|
|
67
65
|
as: 'label',
|
|
68
|
-
color: '#CC0000',
|
|
69
|
-
children: 'This is a medium paragraph rendered as a label.',
|
|
66
|
+
color: '#CC0000',
|
|
67
|
+
children: 'This is a medium paragraph rendered as a label with LightBod weight.',
|
|
68
|
+
strongBod: true,
|
|
70
69
|
},
|
|
71
70
|
};
|
|
72
71
|
export const AllSizes = {
|
|
@@ -79,9 +78,8 @@ export const AllSizes = {
|
|
|
79
78
|
export const AllWeights = {
|
|
80
79
|
args: {
|
|
81
80
|
size: 'medium',
|
|
82
|
-
weight: 400,
|
|
83
81
|
color: '#000000',
|
|
84
|
-
children: 'This paragraph weight can be adjusted to
|
|
82
|
+
children: 'This paragraph weight can be adjusted to LightBod, SemiBod, StrongBod, or HeavyBod.',
|
|
85
83
|
},
|
|
86
84
|
};
|
|
87
85
|
export const AllElements = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../src/components/Paragraph/stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,IAAI,GAA2B;IACnC,KAAK,EAAE,sBAAsB;IAC7B,SAAS,EAAE,SAAS;IACpB,UAAU,EAAE;QACV,MAAM,EAAE,UAAU;KACnB;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;YAC7E,WAAW,EAAE,kCAAkC;SAChD;QACD,
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../src/components/Paragraph/stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,IAAI,GAA2B;IACnC,KAAK,EAAE,sBAAsB;IAC7B,SAAS,EAAE,SAAS;IACpB,UAAU,EAAE;QACV,MAAM,EAAE,UAAU;KACnB;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;YAC7E,WAAW,EAAE,kCAAkC;SAChD;QACD,EAAE,EAAE;YACF,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE;YACnE,WAAW,EAAE,mCAAmC;SACjD;QACD,KAAK,EAAE;YACL,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,8BAA8B;SAC5C;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,0BAA0B;SACxC;QACD,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,oBAAoB,EAAE;QAClE,SAAS,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;QACtE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,qBAAqB,EAAE;KACrE;CAC+B,CAAA;AAElC,eAAe,IAAI,CAAA;AAGnB,MAAM,CAAC,MAAM,MAAM,GAAU;IAC3B,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,oDAAoD;KAC/D;CACF,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,gDAAgD;KAC3D;CACF,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAU;IAC3B,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,mDAAmD;KAC9D;CACF,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,iDAAiD;KAC5D;CACF,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAU;IAClC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,sEAAsE;QAChF,SAAS,EAAE,IAAI;KAChB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,gEAAgE;KAC3E;CACF,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAU;IAC/B,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,qFAAqF;KAChG;CACF,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAU;IAChC,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,4DAA4D;KACvE;CACF,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type Column = {
|
|
3
|
+
header: string;
|
|
4
|
+
accessor: string;
|
|
5
|
+
width?: string;
|
|
6
|
+
sortable?: boolean;
|
|
7
|
+
onClick?: (row: any) => void;
|
|
8
|
+
Cell?: (row: any, handleExpandClick: (id: number) => void) => React.ReactNode;
|
|
9
|
+
align?: 'left' | 'center' | 'right';
|
|
10
|
+
};
|
|
11
|
+
type TableProps = {
|
|
12
|
+
columns: Column[] | any;
|
|
13
|
+
data: any[];
|
|
14
|
+
height?: string;
|
|
15
|
+
loading?: boolean;
|
|
16
|
+
emptyStateMessage?: string;
|
|
17
|
+
striped?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare const Table: React.FC<TableProps>;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Table/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAMvC,KAAK,MAAM,GAAG;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IAC5B,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,KAAK,KAAK,CAAC,SAAS,CAAA;IAC7E,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;CACpC,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;IACvB,IAAI,EAAE,GAAG,EAAE,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AA+ED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAoGtC,CAAA"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
import { Paragraph } from '../Paragraph';
|
|
4
|
+
import { theme } from '../Themes';
|
|
5
|
+
import { ContainerLoading } from '../Loading';
|
|
6
|
+
const TableContainer = styled.div `
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
width: 100%;
|
|
10
|
+
height: 100%;
|
|
11
|
+
overflow-x: auto;
|
|
12
|
+
`;
|
|
13
|
+
const StyledTable = styled.table `
|
|
14
|
+
width: 100%;
|
|
15
|
+
border-collapse: collapse;
|
|
16
|
+
height: 100%;
|
|
17
|
+
`;
|
|
18
|
+
const Thead = styled.thead `
|
|
19
|
+
display: table-header-group;
|
|
20
|
+
border-bottom: 1px solid #ddd;
|
|
21
|
+
`;
|
|
22
|
+
const Tbody = styled.tbody `
|
|
23
|
+
display: block;
|
|
24
|
+
width: 100%;
|
|
25
|
+
overflow-y: auto;
|
|
26
|
+
height: ${props => props.height || '100%'};
|
|
27
|
+
`;
|
|
28
|
+
const Tr = styled.tr `
|
|
29
|
+
display: table;
|
|
30
|
+
width: 100%;
|
|
31
|
+
table-layout: fixed;
|
|
32
|
+
`;
|
|
33
|
+
const TrRow = styled.tr `
|
|
34
|
+
display: table;
|
|
35
|
+
width: 100%;
|
|
36
|
+
table-layout: fixed;
|
|
37
|
+
&:nth-of-type(n + 2) {
|
|
38
|
+
background-color: ${props => (props.striped ? '#f9f9f9' : 'transparent')};
|
|
39
|
+
}
|
|
40
|
+
&:nth-of-type(odd) {
|
|
41
|
+
background-color: ${props => (props.striped ? '#fff' : 'transparent')};
|
|
42
|
+
}
|
|
43
|
+
`;
|
|
44
|
+
const Th = styled.th `
|
|
45
|
+
padding: 10px;
|
|
46
|
+
text-align: ${props => props.align || 'left'};
|
|
47
|
+
width: ${props => props.width || 'auto'};
|
|
48
|
+
`;
|
|
49
|
+
const Td = styled.td `
|
|
50
|
+
padding: 12px;
|
|
51
|
+
width: ${props => (props === null || props === void 0 ? void 0 : props.width) || 'auto'};
|
|
52
|
+
text-align: ${props => (props === null || props === void 0 ? void 0 : props.align) || 'left'};
|
|
53
|
+
`;
|
|
54
|
+
const ExpandableRow = styled.div `
|
|
55
|
+
padding: 8px;
|
|
56
|
+
min-height: 50px;
|
|
57
|
+
`;
|
|
58
|
+
const LoadingWrapper = styled.div `
|
|
59
|
+
display: flex;
|
|
60
|
+
align-items: center;
|
|
61
|
+
justify-content: center;
|
|
62
|
+
width: 100%;
|
|
63
|
+
height: 100%;
|
|
64
|
+
`;
|
|
65
|
+
const EmptyStateWrapper = styled.div `
|
|
66
|
+
display: flex;
|
|
67
|
+
align-items: center;
|
|
68
|
+
justify-content: center;
|
|
69
|
+
width: 100%;
|
|
70
|
+
height: 100%;
|
|
71
|
+
padding: 20px;
|
|
72
|
+
`;
|
|
73
|
+
export const Table = ({ columns, data, height = '100%', loading = false, emptyStateMessage = 'No data available', striped = false, }) => {
|
|
74
|
+
const [expandedRow, setExpandedRow] = useState(null);
|
|
75
|
+
const handleExpandClick = (id) => {
|
|
76
|
+
setExpandedRow(expandedRow === id ? null : id);
|
|
77
|
+
};
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
return (React.createElement(TableContainer, null,
|
|
80
|
+
React.createElement(StyledTable, null,
|
|
81
|
+
React.createElement(Thead, null,
|
|
82
|
+
React.createElement(Tr, { striped: striped }, columns.map((col, index) => (React.createElement(Th, { key: index, width: col.width, align: col.align },
|
|
83
|
+
React.createElement(Paragraph, { color: theme.colors.shade30, textTransform: 'uppercase' }, col.header)))))),
|
|
84
|
+
React.createElement(Tbody, { height: height }, loading ? (React.createElement(LoadingWrapper, null,
|
|
85
|
+
React.createElement(ContainerLoading, { size: 'small' }))) : data.length === 0 ? (React.createElement(EmptyStateWrapper, null,
|
|
86
|
+
React.createElement(Paragraph, null, emptyStateMessage))) : (data.map((row, rowIndex) => (React.createElement(React.Fragment, { key: row.id },
|
|
87
|
+
React.createElement(TrRow, { striped: striped }, columns.map((col, colIndex) => (React.createElement(Td, { key: colIndex, width: col === null || col === void 0 ? void 0 : col.width, align: col === null || col === void 0 ? void 0 : col.align }, col.Cell ? (col.Cell(row, handleExpandClick)) : (React.createElement(Paragraph, { color: theme.colors.shade40 }, row[col.accessor])))))),
|
|
88
|
+
expandedRow === row.id && row.containerColapsed && (React.createElement(ExpandableRow, null, row.containerColapsed(row)))))))))));
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Table/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { Table } from './index';
|
|
3
|
+
declare const meta: Meta<typeof Table>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const LoadingState: Story;
|
|
8
|
+
export declare const EmptyState: Story;
|
|
9
|
+
//# sourceMappingURL=stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stories.d.ts","sourceRoot":"","sources":["../../../src/components/Table/stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAItD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAI/B,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,CAyBC,CAAA;AAE9B,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AA+ElC,eAAO,MAAM,OAAO,EAAE,KAiErB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAQ1B,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAA"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ButtonRound } from '../ButtonRound';
|
|
3
|
+
import { dumpSVG, editSVG } from '../../assets/icon';
|
|
4
|
+
import { Table } from './index';
|
|
5
|
+
import CardStories from '../CardStories';
|
|
6
|
+
import { Paragraph } from '../Paragraph';
|
|
7
|
+
const meta = {
|
|
8
|
+
title: 'Components/Table',
|
|
9
|
+
component: Table,
|
|
10
|
+
parameters: {
|
|
11
|
+
layout: 'centered',
|
|
12
|
+
},
|
|
13
|
+
tags: ['autodocs'],
|
|
14
|
+
argTypes: {
|
|
15
|
+
columns: {
|
|
16
|
+
control: 'object',
|
|
17
|
+
description: 'Array of column definitions',
|
|
18
|
+
},
|
|
19
|
+
data: {
|
|
20
|
+
control: 'object',
|
|
21
|
+
description: 'Array of data objects',
|
|
22
|
+
},
|
|
23
|
+
loading: {
|
|
24
|
+
control: 'boolean',
|
|
25
|
+
description: 'Loading state of the table',
|
|
26
|
+
},
|
|
27
|
+
emptyStateMessage: {
|
|
28
|
+
control: 'text',
|
|
29
|
+
description: 'Message to display when there is no data',
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
export default meta;
|
|
34
|
+
const columns = [
|
|
35
|
+
{
|
|
36
|
+
header: 'id',
|
|
37
|
+
accessor: 'id',
|
|
38
|
+
width: 'auto',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
header: 'item',
|
|
42
|
+
accessor: 'item',
|
|
43
|
+
width: 'auto',
|
|
44
|
+
sortable: true,
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
header: 'unidades',
|
|
48
|
+
accessor: 'unidades',
|
|
49
|
+
width: 'auto',
|
|
50
|
+
sortable: true,
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
header: 'marca/ fabricante',
|
|
54
|
+
accessor: 'marca_fabricante',
|
|
55
|
+
width: 'auto',
|
|
56
|
+
Cell: (row) => (React.createElement("div", { onClick: () => alert('aqui'), style: {
|
|
57
|
+
background: 'red',
|
|
58
|
+
color: 'white',
|
|
59
|
+
padding: '4px, 2px',
|
|
60
|
+
borderRadius: '8px',
|
|
61
|
+
display: 'flex',
|
|
62
|
+
alignItems: 'center',
|
|
63
|
+
justifyContent: 'center',
|
|
64
|
+
} }, row.marca_fabricante)),
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
header: 'modelo',
|
|
68
|
+
accessor: 'modelo',
|
|
69
|
+
width: 'auto',
|
|
70
|
+
sortable: true,
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
header: 'quantidade solitada',
|
|
74
|
+
accessor: 'quantidade_solitada',
|
|
75
|
+
width: 'auto',
|
|
76
|
+
sortable: true,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
header: 'valor estimado unitario',
|
|
80
|
+
accessor: 'valor_estimado_unitario',
|
|
81
|
+
width: 'auto',
|
|
82
|
+
sortable: true,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
header: 'valor estimado total',
|
|
86
|
+
accessor: 'valor_estimado_total',
|
|
87
|
+
width: 'auto',
|
|
88
|
+
sortable: true,
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
header: 'Actions',
|
|
92
|
+
accessor: 'valor_estimado_total',
|
|
93
|
+
width: '100px',
|
|
94
|
+
align: 'center',
|
|
95
|
+
Cell: (row, handleExpandClick) => (React.createElement("div", { style: { display: 'flex', gap: '8px', justifyContent: 'center' } },
|
|
96
|
+
React.createElement(ButtonRound, { icon: editSVG, onClick: () => handleExpandClick(row.id) }),
|
|
97
|
+
React.createElement(ButtonRound, { icon: dumpSVG, onClick: () => alert(`Delete ID: ${row.id}`), variant: 'danger' }))),
|
|
98
|
+
},
|
|
99
|
+
];
|
|
100
|
+
export const Default = {
|
|
101
|
+
args: {
|
|
102
|
+
height: 'auto',
|
|
103
|
+
columns: columns,
|
|
104
|
+
striped: true,
|
|
105
|
+
loading: false,
|
|
106
|
+
emptyStateMessage: 'No data available',
|
|
107
|
+
data: [
|
|
108
|
+
{
|
|
109
|
+
id: 1,
|
|
110
|
+
item: 'Beetlejuice',
|
|
111
|
+
unidades: '1988',
|
|
112
|
+
marca_fabricante: 'adidas',
|
|
113
|
+
modelo: 'modelo',
|
|
114
|
+
quantidade_solitada: '10000',
|
|
115
|
+
valor_estimado_unitario: '1000',
|
|
116
|
+
valor_estimado_total: '10000000',
|
|
117
|
+
colapsed: true,
|
|
118
|
+
containerColapsed: ({ item }) => (React.createElement("div", null,
|
|
119
|
+
React.createElement(Paragraph, { size: 'large', heavyBod: true }, item),
|
|
120
|
+
React.createElement(Paragraph, null, "Esta \u00E9 uma informa\u00E7\u00E3o adicional sobre ."))),
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
id: 2,
|
|
124
|
+
item: 'Beetlejuice',
|
|
125
|
+
unidades: '1988',
|
|
126
|
+
marca_fabricante: 'adidas',
|
|
127
|
+
modelo: 'modelo',
|
|
128
|
+
quantidade_solitada: '10000',
|
|
129
|
+
valor_estimado_unitario: '1000',
|
|
130
|
+
valor_estimado_total: '10000000',
|
|
131
|
+
containerColapsed: ({ item }) => (React.createElement("div", null,
|
|
132
|
+
React.createElement(Paragraph, { size: 'large', heavyBod: true }, item),
|
|
133
|
+
React.createElement(Paragraph, null, "Esta \u00E9 uma informa\u00E7\u00E3o adicional sobre ."))),
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
id: 3,
|
|
137
|
+
item: 'Beetlejuice',
|
|
138
|
+
unidades: '1988',
|
|
139
|
+
marca_fabricante: 'adidas',
|
|
140
|
+
modelo: 'modelo',
|
|
141
|
+
quantidade_solitada: '10000',
|
|
142
|
+
valor_estimado_unitario: '1000',
|
|
143
|
+
valor_estimado_total: '10000000',
|
|
144
|
+
containerColapsed: ({ item }) => (React.createElement("div", null,
|
|
145
|
+
React.createElement(Paragraph, { size: 'large', heavyBod: true }, item),
|
|
146
|
+
React.createElement(Paragraph, null, "Esta \u00E9 uma informa\u00E7\u00E3o adicional sobre ."))),
|
|
147
|
+
},
|
|
148
|
+
],
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
export const LoadingState = {
|
|
152
|
+
render: () => (React.createElement(CardStories, { title: 'Tabela', subTitle: 'tabela-loading' },
|
|
153
|
+
React.createElement("div", { style: { width: '900px', height: '800px' } },
|
|
154
|
+
React.createElement(Table, { columns: columns, loading: true, height: '100%', data: [] })))),
|
|
155
|
+
};
|
|
156
|
+
export const EmptyState = {
|
|
157
|
+
args: Object.assign(Object.assign({}, Default.args), { data: [] }),
|
|
158
|
+
};
|
|
159
|
+
//# sourceMappingURL=stories.js.map
|