namirasoft-site-react 1.3.429 → 1.3.431
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/App.js +74 -3
- package/dist/App.js.map +1 -1
- package/dist/components/NSBoxBoolean.module.css +0 -1
- package/dist/components/{NSRadioButton.d.ts → NSBoxRadio.d.ts} +5 -5
- package/dist/components/{NSRadioButton.js → NSBoxRadio.js} +3 -3
- package/dist/components/NSBoxRadio.js.map +1 -0
- package/{src/components/NSRadioButton.module.css → dist/components/NSBoxRadio.module.css} +1 -0
- package/dist/components/NSCardScreenshot.d.ts +9 -0
- package/dist/components/NSCardScreenshot.js +12 -0
- package/dist/components/NSCardScreenshot.js.map +1 -0
- package/dist/components/NSCardScreenshot.module.css +41 -0
- package/dist/components/NSChartColumn.d.ts +12 -0
- package/dist/components/NSChartColumn.js +81 -0
- package/dist/components/NSChartColumn.js.map +1 -0
- package/dist/components/NSChartColumn.module.css +8 -0
- package/dist/components/NSChartTable.d.ts +15 -0
- package/dist/components/NSChartTable.js +62 -0
- package/dist/components/NSChartTable.js.map +1 -0
- package/dist/components/NSChartTable.module.css +22 -0
- package/dist/components/NSDownload.d.ts +6 -0
- package/dist/components/NSDownload.js +23 -0
- package/dist/components/NSDownload.js.map +1 -0
- package/dist/components/NSDownload.module.css +47 -0
- package/dist/components/NSPageSelectionModal.js +2 -2
- package/dist/components/NSPageSelectionModal.js.map +1 -1
- package/dist/components/NSTable.module.css +7 -3
- package/dist/main.d.ts +4 -1
- package/dist/main.js +4 -1
- package/dist/main.js.map +1 -1
- package/package.json +3 -3
- package/src/App.tsx +76 -3
- package/src/components/NSBoxBoolean.module.css +0 -1
- package/{dist/components/NSRadioButton.module.css → src/components/NSBoxRadio.module.css} +1 -0
- package/src/components/{NSRadioButton.tsx → NSBoxRadio.tsx} +6 -6
- package/src/components/NSCardScreenshot.module.css +41 -0
- package/src/components/NSCardScreenshot.tsx +31 -0
- package/src/components/NSChartColumn.module.css +8 -0
- package/src/components/NSChartColumn.tsx +107 -0
- package/src/components/NSChartTable.module.css +22 -0
- package/src/components/NSChartTable.tsx +93 -0
- package/src/components/NSDownload.module.css +47 -0
- package/src/components/NSDownload.tsx +58 -0
- package/src/components/NSPageSelectionModal.tsx +9 -9
- package/src/components/NSTable.module.css +7 -3
- package/src/main.ts +4 -1
- package/dist/components/NSRadioButton.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NSPageSelectionModal.js","sourceRoot":"","sources":["../../src/components/NSPageSelectionModal.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"NSPageSelectionModal.js","sourceRoot":"","sources":["../../src/components/NSPageSelectionModal.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAgB1C,MAAM,OAAO,oBAA8B,SAAQ,SAAwE;IASvH,YAAY,KAAyC;QAEjD,KAAK,CAAC,KAAK,CAAC,CAAC;QATT,aAAQ,GAAoC,SAAS,EAAE,CAAC;QACxD,6BAAwB,GAAgC,SAAS,EAAE,CAAC;QACpE,+BAA0B,GAAgC,SAAS,EAAE,CAAC;QACtE,4BAAuB,GAAgC,SAAS,EAAE,CAAC;QACnE,yBAAoB,GAAgC,SAAS,EAAE,CAAC;QAChE,sBAAiB,GAAiC,SAAS,EAAE,CAAC;QAKlE,IAAI,CAAC,KAAK,GAAG;YACT,aAAa,EAAE,cAAc;SAChC,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IACQ,iBAAiB;QAEtB,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChE,CAAC;IACQ,oBAAoB;QAEzB,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACnE,CAAC;IACD,eAAe,CAAC,WAAmB;QAE/B,IAAI,GAAG,GAAa,EAAE,CAAC;QACvB,IAAI,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC;YACI,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EACzB;gBACI,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC/C,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EACnB;oBACI,IAAI,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3B,IAAI,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzB,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE;wBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;;oBAEG,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC,CAAC;aACvD;iBAED;gBACI,IAAI,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC1B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACf;SACJ;QACD,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAEZ,IAAI,CAAC,GAAG,CAAC;gBACL,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAChE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACvB,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzF,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAC;IACf,CAAC;IACO,cAAc,CAAC,KAAiB;QAEpC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EAClF;YACI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;SACxB;IACL,CAAC;IACO,iBAAiB,CAAC,aAAqB;QAE3C,IAAI,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IACrC,CAAC;IACQ,MAAM;QAEX,OAAO,CACH,4BAEQ,8BACI,cAAK,SAAS,EAAE,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,YACzD,eAAK,SAAS,EAAE,MAAM,CAAC,eAAe,aAClC,cACI,GAAG,EAAC,4DAA4D,EAChE,GAAG,EAAC,OAAO,EACX,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;wCAEX,CAAC,CAAC,eAAe,EAAE,CAAC;wCACpB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oCACzB,CAAC,EACD,SAAS,EAAE,MAAM,CAAC,aAAa,GACjC,EACF,eAAK,SAAS,EAAE,MAAM,CAAC,cAAc,aACjC,cACI,GAAG,EAAC,4DAA4D,EAChE,GAAG,EAAC,OAAO,EACX,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,GACZ,EACF,aAAI,SAAS,EAAC,KAAK,+BAAoB,IACrC,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,YAAG,SAAS,EAAE,MAAM,CAAC,oBAAoB,oEAAyD,EAClG,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,eAAK,SAAS,EAAE,MAAM,CAAC,mBAAmB,aACtC,KAAC,UAAU,IACP,YAAY,EAAE,IAAI,EAClB,GAAG,EAAE,IAAI,CAAC,wBAAwB,EAClC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,KAAK,EACf,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,cAAc,EACvD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,GACvD,EACF,KAAC,UAAU,IACP,GAAG,EAAE,IAAI,CAAC,0BAA0B,EACpC,KAAK,EAAE,qBAAqB,EAC5B,QAAQ,EAAE,KAAK,EACf,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,gBAAgB,EACzD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GACzD,EACF,KAAC,UAAU,IACP,GAAG,EAAE,IAAI,CAAC,uBAAuB,EACjC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,KAAK,EACf,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,aAAa,EACtD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,GACtD,EACF,KAAC,UAAU,IACP,GAAG,EAAE,IAAI,CAAC,oBAAoB,EAC9B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,KAAK,EACf,IAAI,EAAE,eAAe,EACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,UAAU,EACnD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GACnD,IACA,EACN,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACvC,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,aAAa,IAAI,CAC3C,KAAC,WAAW,IAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAC,cAAc,EAChH,QAAQ,EAAE,KAAK,CAAC,EAAE;wCAEd,IACA;4CACI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;4CAC5B,OAAO,IAAI,CAAC;yCACf;wCAAC,OAAO,KAAU,EACnB;4CACI,OAAO,KAAK,CAAC,OAAO,CAAC;yCACxB;oCACL,CAAC,GAAI,CACZ,EACD,KAAC,OAAO,IAAC,IAAI,EAAE,eAAe,CAAC,KAAK,GAAI,EACxC,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAC,OAAO,EAAC,OAAO,EAAE,GAAS,EAAE;;wCAEtE,IACA;4CACI,IAAI,KAAK,GAAc,EAAE,CAAC;4CAC1B,IAAI,MAAA,IAAI,CAAC,wBAAwB,CAAC,OAAO,0CAAE,QAAQ,EAAE,EACrD;gDACI,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gDACnE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;6CACrB;iDACI,IAAI,MAAA,IAAI,CAAC,0BAA0B,CAAC,OAAO,0CAAE,QAAQ,EAAE,EAC5D;gDACI,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gDAClE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;6CACrB;iDACI,IAAI,MAAA,IAAI,CAAC,uBAAuB,CAAC,OAAO,0CAAE,QAAQ,EAAE,EACzD;gDACI,IAAI,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC;gDACnE,IAAI,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;gDAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC;oDACI,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oDACpD,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;iDACrB;6CACJ;iDACI,IAAI,MAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,0CAAE,QAAQ,EAAE,EACtD;gDACI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,EAC7C;oDACI,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oDAC7C,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;iDACrB;6CACJ;iDAED,GAAG;4CACH,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;yCAC9B;wCAAC,OAAO,KAAK,EACd;yCAEC;oCACL,CAAC,CAAA,GAAI,IACH,GACJ,EACN,cAAK,SAAS,EAAE,MAAM,CAAC,mBAAmB,GAAQ,IACnD,GAER,CACN,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -48,7 +48,9 @@
|
|
|
48
48
|
/* Button Group */
|
|
49
49
|
.ns_pagination_button {
|
|
50
50
|
display: flex;
|
|
51
|
-
flex-direction: column;
|
|
51
|
+
flex-direction: column-reverse;
|
|
52
|
+
justify-content: space-between;
|
|
53
|
+
align-items: flex-start;
|
|
52
54
|
}
|
|
53
55
|
|
|
54
56
|
.ns_button {
|
|
@@ -56,6 +58,7 @@
|
|
|
56
58
|
flex-direction: row;
|
|
57
59
|
justify-content: space-between;
|
|
58
60
|
align-items: center;
|
|
61
|
+
width: 100%;
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
.ns_modal a {
|
|
@@ -73,7 +76,7 @@
|
|
|
73
76
|
justify-content: center
|
|
74
77
|
}
|
|
75
78
|
|
|
76
|
-
@media screen and (min-width:
|
|
79
|
+
@media screen and (min-width: 992px) {
|
|
77
80
|
.ns_table {
|
|
78
81
|
color: #000000;
|
|
79
82
|
}
|
|
@@ -139,7 +142,7 @@
|
|
|
139
142
|
/* Button Group */
|
|
140
143
|
.ns_pagination_button {
|
|
141
144
|
display: flex;
|
|
142
|
-
flex-direction:
|
|
145
|
+
flex-direction: column;
|
|
143
146
|
align-items: center;
|
|
144
147
|
justify-content: center;
|
|
145
148
|
padding: 16px 0;
|
|
@@ -151,6 +154,7 @@
|
|
|
151
154
|
justify-content: space-between;
|
|
152
155
|
align-items: center;
|
|
153
156
|
gap: 24px;
|
|
157
|
+
width: 100%;
|
|
154
158
|
}
|
|
155
159
|
|
|
156
160
|
.ns_check_box {
|
package/dist/main.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export * from "./components/NSBoxLabel";
|
|
|
20
20
|
export * from "./components/NSBoxPassword";
|
|
21
21
|
export * from "./components/NSBoxPhone";
|
|
22
22
|
export * from "./components/NSBoxPrice";
|
|
23
|
+
export * from "./components/NSBoxRadio";
|
|
23
24
|
export * from "./components/NSBoxString";
|
|
24
25
|
export * from "./components/NSBoxSearch";
|
|
25
26
|
export * from "./components/NSBoxTextArea";
|
|
@@ -30,10 +31,13 @@ export * from "./components/NSButtonBlue";
|
|
|
30
31
|
export * from "./components/NSButtonGreen";
|
|
31
32
|
export * from "./components/NSButtonRed";
|
|
32
33
|
export * from "./components/NSCard";
|
|
34
|
+
export * from "./components/NSCardScreenshot";
|
|
33
35
|
export * from "./components/NSCopyToClipboard";
|
|
36
|
+
export * from "./components/NSChartColumn";
|
|
34
37
|
export * from "./components/NSChartPie";
|
|
35
38
|
export * from "./components/NSDeleteDialog";
|
|
36
39
|
export * from "./components/NSDialog";
|
|
40
|
+
export * from "./components/NSDownload";
|
|
37
41
|
export * from "./components/NSElectronicCard";
|
|
38
42
|
export * from "./components/NSEntityBar";
|
|
39
43
|
export * from "./components/NSEntityCardBackground";
|
|
@@ -56,7 +60,6 @@ export * from "./components/NSPagination";
|
|
|
56
60
|
export * from "./components/NSPanel";
|
|
57
61
|
export * from "./components/NSPageSelectionModal";
|
|
58
62
|
export * from "./components/NSProductList";
|
|
59
|
-
export * from "./components/NSRadioButton";
|
|
60
63
|
export * from "./components/NSRepeater";
|
|
61
64
|
export * from "./components/NSSection";
|
|
62
65
|
export * from "./components/NSSectionBars";
|
package/dist/main.js
CHANGED
|
@@ -20,6 +20,7 @@ export * from "./components/NSBoxLabel";
|
|
|
20
20
|
export * from "./components/NSBoxPassword";
|
|
21
21
|
export * from "./components/NSBoxPhone";
|
|
22
22
|
export * from "./components/NSBoxPrice";
|
|
23
|
+
export * from "./components/NSBoxRadio";
|
|
23
24
|
export * from "./components/NSBoxString";
|
|
24
25
|
export * from "./components/NSBoxSearch";
|
|
25
26
|
export * from "./components/NSBoxTextArea";
|
|
@@ -30,10 +31,13 @@ export * from "./components/NSButtonBlue";
|
|
|
30
31
|
export * from "./components/NSButtonGreen";
|
|
31
32
|
export * from "./components/NSButtonRed";
|
|
32
33
|
export * from "./components/NSCard";
|
|
34
|
+
export * from "./components/NSCardScreenshot";
|
|
33
35
|
export * from "./components/NSCopyToClipboard";
|
|
36
|
+
export * from "./components/NSChartColumn";
|
|
34
37
|
export * from "./components/NSChartPie";
|
|
35
38
|
export * from "./components/NSDeleteDialog";
|
|
36
39
|
export * from "./components/NSDialog";
|
|
40
|
+
export * from "./components/NSDownload";
|
|
37
41
|
export * from "./components/NSElectronicCard";
|
|
38
42
|
export * from "./components/NSEntityBar";
|
|
39
43
|
export * from "./components/NSEntityCardBackground";
|
|
@@ -56,7 +60,6 @@ export * from "./components/NSPagination";
|
|
|
56
60
|
export * from "./components/NSPanel";
|
|
57
61
|
export * from "./components/NSPageSelectionModal";
|
|
58
62
|
export * from "./components/NSProductList";
|
|
59
|
-
export * from "./components/NSRadioButton";
|
|
60
63
|
export * from "./components/NSRepeater";
|
|
61
64
|
export * from "./components/NSSection";
|
|
62
65
|
export * from "./components/NSSectionBars";
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.3.
|
|
11
|
+
"version": "1.3.431",
|
|
12
12
|
"author": "Amir Abolhasani, Alireza Esmaeeli, Sepideh Mazloumi, Hooman Shashaeh, Mehrab Bahramian",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/main.js",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"@types/react": "^18.3.3",
|
|
27
27
|
"@types/react-bootstrap": "^0.32.37",
|
|
28
28
|
"@types/react-dom": "^18.3.0",
|
|
29
|
-
"antd": "^5.20.
|
|
29
|
+
"antd": "^5.20.1",
|
|
30
30
|
"bootstrap": "^5.3.3",
|
|
31
31
|
"chart.js": "^4.4.3",
|
|
32
32
|
"copyfiles": "^2.4.1",
|
|
33
33
|
"link-react": "^3.0.0",
|
|
34
|
-
"namirasoft-api-link": "^1.4.
|
|
34
|
+
"namirasoft-api-link": "^1.4.2",
|
|
35
35
|
"namirasoft-api-product": "^1.4.1",
|
|
36
36
|
"namirasoft-core": "^1.4.5",
|
|
37
37
|
"path-browserify": "^1.0.1",
|
package/src/App.tsx
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import './App.css';
|
|
2
2
|
import 'bootstrap/dist/css/bootstrap.min.css';
|
|
3
|
-
import { NSBarAction, NSBoxBoolean, NSBoxEmail, NSBoxEnum, NSBoxSearch, NSBoxString, NSEntityBar, NSLayout, NSNoData, NSPagination, NSPanel, NSRepeater, NSSpace, NSSpaceSizeType, NSTabPage, NSHeaderScreenshot } from './main';
|
|
3
|
+
import { NSBarAction, NSBoxBoolean, NSBoxEmail, NSBoxEnum, NSBoxSearch, NSBoxString, NSEntityBar, NSLayout, NSNoData, NSPagination, NSPanel, NSRepeater, NSSpace, NSSpaceSizeType, NSTabPage, NSHeaderScreenshot, NSBoxRadio } from './main';
|
|
4
4
|
import { NSBoxLabel } from './components/NSBoxLabel';
|
|
5
|
-
import { NSRadioButton } from './components/NSRadioButton';
|
|
6
5
|
import { NSTag, NSTagValue } from './components/NSTag';
|
|
7
6
|
import { NSButton } from './components/NSButton';
|
|
8
7
|
import { useState } from 'react';
|
|
@@ -33,6 +32,79 @@ const fakeColumns: TableColumnInfo[] = [
|
|
|
33
32
|
text: 'Column 2',
|
|
34
33
|
formatter: fakeFormatter,
|
|
35
34
|
},
|
|
35
|
+
{
|
|
36
|
+
index: 1,
|
|
37
|
+
name: 'Column2',
|
|
38
|
+
text: 'Column 2',
|
|
39
|
+
formatter: fakeFormatter,
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
index: 1,
|
|
43
|
+
name: 'Column2',
|
|
44
|
+
text: 'Column 2',
|
|
45
|
+
formatter: fakeFormatter,
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
index: 1,
|
|
49
|
+
name: 'Column2',
|
|
50
|
+
text: 'Column 2',
|
|
51
|
+
formatter: fakeFormatter,
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
index: 1,
|
|
55
|
+
name: 'Column2',
|
|
56
|
+
text: 'Column 2',
|
|
57
|
+
formatter: fakeFormatter,
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
index: 1,
|
|
61
|
+
name: 'Column2',
|
|
62
|
+
text: 'Column 2',
|
|
63
|
+
formatter: fakeFormatter,
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
index: 1,
|
|
67
|
+
name: 'Column2',
|
|
68
|
+
text: 'Column 2',
|
|
69
|
+
formatter: fakeFormatter,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
index: 1,
|
|
73
|
+
name: 'Column2',
|
|
74
|
+
text: 'Column 2',
|
|
75
|
+
formatter: fakeFormatter,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
index: 1,
|
|
79
|
+
name: 'Column2',
|
|
80
|
+
text: 'Column 2',
|
|
81
|
+
formatter: fakeFormatter,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
index: 1,
|
|
85
|
+
name: 'Column2',
|
|
86
|
+
text: 'Column 2',
|
|
87
|
+
formatter: fakeFormatter,
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
index: 1,
|
|
91
|
+
name: 'Column2',
|
|
92
|
+
text: 'Column 2',
|
|
93
|
+
formatter: fakeFormatter,
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
index: 1,
|
|
97
|
+
name: 'Column2',
|
|
98
|
+
text: 'Column 2',
|
|
99
|
+
formatter: fakeFormatter,
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
index: 1,
|
|
103
|
+
name: 'Column2',
|
|
104
|
+
text: 'Column 2',
|
|
105
|
+
formatter: fakeFormatter,
|
|
106
|
+
},
|
|
107
|
+
|
|
36
108
|
];
|
|
37
109
|
const getFakeRows = async (page: number, size: number) =>
|
|
38
110
|
{
|
|
@@ -166,7 +238,7 @@ export function App()
|
|
|
166
238
|
<NSBarAction title='test' description='test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test ' menus={group} />
|
|
167
239
|
<NSBoxEmail title='Email' required />
|
|
168
240
|
<NSBoxString title='String' required />
|
|
169
|
-
<
|
|
241
|
+
<NSBoxRadio title={"Radio Button"} required={false} />
|
|
170
242
|
<NSSpace size={NSSpaceSizeType.LARGE} />
|
|
171
243
|
<NSBoxBoolean defaultValue={true} title='' required />
|
|
172
244
|
<NSButton title='Clear Filters' onClick={() => window.location.reload()} style={{ width: "136px", border: "2px solid #001664" }} />
|
|
@@ -180,6 +252,7 @@ export function App()
|
|
|
180
252
|
</div>
|
|
181
253
|
<NSSpace size={NSSpaceSizeType.MEDUIM} />
|
|
182
254
|
<NSBoxBoolean title='CheckBox' required />
|
|
255
|
+
<NSBoxRadio title='RadioButton' required />
|
|
183
256
|
<NSEntityBar title='' description='' image={{ src: "" }} />
|
|
184
257
|
{
|
|
185
258
|
state &&
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import Styles from "./
|
|
2
|
+
import Styles from "./NSBoxRadio.module.css";
|
|
3
3
|
import { IBaseComponentProps } from "../props/IBaseComponentProps";
|
|
4
4
|
import { IValidationProps } from "../props/IValidationProps";
|
|
5
5
|
import { IValidationStringProps } from "../props/IValidationStringProps";
|
|
6
6
|
import { NSBoxErrorNotifier } from "./NSBoxErrorNotifier";
|
|
7
7
|
|
|
8
|
-
export interface
|
|
8
|
+
export interface INSBoxRadioProps extends IBaseComponentProps, IValidationProps, IValidationStringProps
|
|
9
9
|
{
|
|
10
10
|
title: string;
|
|
11
11
|
placeholder?: string;
|
|
12
12
|
defaultValue?: boolean;
|
|
13
13
|
isSelected?: boolean;
|
|
14
|
-
onChanged?: (e:
|
|
14
|
+
onChanged?: (e: NSBoxRadio) => void;
|
|
15
15
|
onClick?: () => void;
|
|
16
16
|
}
|
|
17
17
|
|
|
@@ -21,9 +21,9 @@ export interface INSBoxBooleanState
|
|
|
21
21
|
error?: string;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
export class
|
|
24
|
+
export class NSBoxRadio extends React.Component<INSBoxRadioProps, INSBoxBooleanState>
|
|
25
25
|
{
|
|
26
|
-
constructor(props:
|
|
26
|
+
constructor(props: INSBoxRadioProps)
|
|
27
27
|
{
|
|
28
28
|
super(props);
|
|
29
29
|
this.state = { value: props.defaultValue ?? false };
|
|
@@ -67,7 +67,7 @@ export class NSRadioButton extends React.Component<INSRadioButtonProps, INSBoxBo
|
|
|
67
67
|
this.props.onClick();
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
override componentDidUpdate(prevProps:
|
|
70
|
+
override componentDidUpdate(prevProps: INSBoxRadioProps)
|
|
71
71
|
{
|
|
72
72
|
if (prevProps.isSelected !== this.props.isSelected)
|
|
73
73
|
{
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
.card_screenshot {
|
|
2
|
+
border: 1px solid #CBD7FF;
|
|
3
|
+
border-radius: 8px;
|
|
4
|
+
width: 100%;
|
|
5
|
+
max-width: 376px;
|
|
6
|
+
height: 266px;
|
|
7
|
+
padding: 8px;
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
gap: 8px;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.card_screenshot_header {
|
|
15
|
+
display: flex;
|
|
16
|
+
justify-content: space-between;
|
|
17
|
+
align-items: center;
|
|
18
|
+
padding: 8px 0;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.timeSpent {
|
|
22
|
+
font-size: 16px;
|
|
23
|
+
font-weight: 600;
|
|
24
|
+
color: #141B5C,
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.deleteButton {
|
|
28
|
+
cursor: pointer;
|
|
29
|
+
width: 24px;
|
|
30
|
+
height: 24px;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.deleteButton img {
|
|
34
|
+
width: 100%;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.screenshot_imageSection img {
|
|
38
|
+
width: 100%;
|
|
39
|
+
object-fit: cover;
|
|
40
|
+
border-radius: 4px;
|
|
41
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { IBaseComponentProps } from "../main";
|
|
2
|
+
import Styles from "./NSCardScreenshot.module.css"
|
|
3
|
+
|
|
4
|
+
export interface NSCardScreenshotProps extends IBaseComponentProps {
|
|
5
|
+
key: number;
|
|
6
|
+
screenshot: string;
|
|
7
|
+
timeSpent: string;
|
|
8
|
+
onDelete: () => void;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const NSCardScreenshot = (props: NSCardScreenshotProps) => {
|
|
12
|
+
return (
|
|
13
|
+
<div className={`${Styles.card_screenshot} ${props.classList?.join(' ')}`} style={props.style}>
|
|
14
|
+
<div className={Styles.card_screenshot_header}>
|
|
15
|
+
<span className={Styles.timeSpent}>{props.timeSpent}</span>
|
|
16
|
+
<div onClick={() => {
|
|
17
|
+
if (props.onDelete)
|
|
18
|
+
props.onDelete()
|
|
19
|
+
}}
|
|
20
|
+
className={Styles.deleteButton}>
|
|
21
|
+
<img src="https://static.namirasoft.com/image/concept/delete/blue.svg" alt="" />
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
<div className={Styles.screenshot_imageSection}>
|
|
25
|
+
<img src={props.screenshot} alt="Screenshot" className={Styles.image} />
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export default NSCardScreenshot;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Bar } from 'react-chartjs-2';
|
|
2
|
+
import {
|
|
3
|
+
Chart as ChartJS,
|
|
4
|
+
CategoryScale,
|
|
5
|
+
LinearScale,
|
|
6
|
+
BarElement,
|
|
7
|
+
Title,
|
|
8
|
+
Tooltip,
|
|
9
|
+
Legend,
|
|
10
|
+
ChartOptions,
|
|
11
|
+
} from 'chart.js';
|
|
12
|
+
import { IBaseComponentProps } from '../main';
|
|
13
|
+
import Styles from "./NSChartColumn.module.css"
|
|
14
|
+
|
|
15
|
+
ChartJS.register(CategoryScale, LinearScale, BarElement, Title, Tooltip, Legend);
|
|
16
|
+
|
|
17
|
+
export interface NSChartColumnProps extends IBaseComponentProps {
|
|
18
|
+
labels: string[];
|
|
19
|
+
datasets: number[];
|
|
20
|
+
range: {
|
|
21
|
+
min: number,
|
|
22
|
+
max: number,
|
|
23
|
+
}
|
|
24
|
+
yGrid?: boolean
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const NSChartColumn = (props: NSChartColumnProps) => {
|
|
28
|
+
const data = {
|
|
29
|
+
labels: props.labels,
|
|
30
|
+
datasets: [
|
|
31
|
+
{
|
|
32
|
+
label: 'Dataset 1',
|
|
33
|
+
data: props.datasets,
|
|
34
|
+
backgroundColor: '#3354F4',
|
|
35
|
+
borderRadius: 10,
|
|
36
|
+
barThickness: 12,
|
|
37
|
+
borderSkipped: false,
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
const options: ChartOptions<'bar'> = {
|
|
43
|
+
responsive: true,
|
|
44
|
+
maintainAspectRatio: false,
|
|
45
|
+
plugins: {
|
|
46
|
+
legend: {
|
|
47
|
+
display: false,
|
|
48
|
+
},
|
|
49
|
+
tooltip: {
|
|
50
|
+
enabled: true,
|
|
51
|
+
callbacks: {
|
|
52
|
+
label: function (context) {
|
|
53
|
+
return `$${context.raw}`;
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
scales: {
|
|
59
|
+
x: {
|
|
60
|
+
ticks: {
|
|
61
|
+
font: {
|
|
62
|
+
size: 8,
|
|
63
|
+
weight: 700
|
|
64
|
+
},
|
|
65
|
+
color: '#141B5C',
|
|
66
|
+
maxRotation: 554,
|
|
67
|
+
minRotation: 0,
|
|
68
|
+
},
|
|
69
|
+
grid: {
|
|
70
|
+
display: false,
|
|
71
|
+
},
|
|
72
|
+
border: {
|
|
73
|
+
display: false,
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
y: {
|
|
77
|
+
min: props.range.min,
|
|
78
|
+
max: props.range.max,
|
|
79
|
+
ticks: {
|
|
80
|
+
callback: function (value) {
|
|
81
|
+
return `$${value}`;
|
|
82
|
+
},
|
|
83
|
+
font: {
|
|
84
|
+
size: 8,
|
|
85
|
+
weight: 700,
|
|
86
|
+
},
|
|
87
|
+
color: '#141B5C',
|
|
88
|
+
},
|
|
89
|
+
grid: {
|
|
90
|
+
display: props.yGrid,
|
|
91
|
+
color: "#E6EEF5"
|
|
92
|
+
},
|
|
93
|
+
border: {
|
|
94
|
+
display: false,
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
return (
|
|
101
|
+
<div style={props.style} className={`${Styles.chart_column_container} ${props.classList?.join(" ")}`}>
|
|
102
|
+
<Bar data={data} options={options} />
|
|
103
|
+
</div>
|
|
104
|
+
);
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
export default NSChartColumn;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
.custom_row td {
|
|
2
|
+
border: none;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.custom_row td:nth-child(2),
|
|
6
|
+
.custom_row td:nth-child(3),
|
|
7
|
+
.custom_row td:nth-child(4),
|
|
8
|
+
.custom_row td:nth-child(5),
|
|
9
|
+
.custom_row td:nth-child(6) {
|
|
10
|
+
border-bottom: 1px dashed #d9d9d9;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/* Override default Ant Design row borders */
|
|
14
|
+
.ant-table-tbody>tr>td {
|
|
15
|
+
border-bottom: none !important;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Increase progress bar height */
|
|
19
|
+
.ant-progress {
|
|
20
|
+
height: 16px !important;
|
|
21
|
+
/* Adjust as needed */
|
|
22
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Table, Progress } from 'antd';
|
|
2
|
+
import { ColumnType } from 'antd/es/table';
|
|
3
|
+
import { IBaseComponentProps } from '../main';
|
|
4
|
+
import Styles from "./NSChartTable.module.css"
|
|
5
|
+
|
|
6
|
+
interface DataType {
|
|
7
|
+
key: string;
|
|
8
|
+
job: string;
|
|
9
|
+
totalHours: number;
|
|
10
|
+
percentage: number;
|
|
11
|
+
cost: number;
|
|
12
|
+
income: number;
|
|
13
|
+
benefit: number;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
interface CustomTableProps extends IBaseComponentProps {
|
|
17
|
+
data: DataType[];
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const NSChartTable = (props: CustomTableProps) => {
|
|
21
|
+
const getColor = (percentage: number) => {
|
|
22
|
+
if (percentage >= 75) return '#368F01';
|
|
23
|
+
if (percentage >= 60) return '#44B400';
|
|
24
|
+
if (percentage >= 50) return '#56E500';
|
|
25
|
+
if (percentage >= 25) return '#FAFF00';
|
|
26
|
+
return 'red';
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const columns: ColumnType<DataType>[] = [
|
|
30
|
+
{
|
|
31
|
+
title: '',
|
|
32
|
+
dataIndex: 'job',
|
|
33
|
+
key: 'job',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
title: 'Total Hours',
|
|
37
|
+
dataIndex: 'totalHours',
|
|
38
|
+
key: 'totalHours',
|
|
39
|
+
render: (text: number) => <div>{text}</div>,
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
title: 'Percentage',
|
|
43
|
+
dataIndex: 'percentage',
|
|
44
|
+
key: 'percentage',
|
|
45
|
+
render: (text: number) => <div>{text}%</div>,
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
title: 'Cost',
|
|
49
|
+
dataIndex: 'cost',
|
|
50
|
+
key: 'cost',
|
|
51
|
+
render: (text: number) => <div>${text}</div>,
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
title: 'Income',
|
|
55
|
+
dataIndex: 'income',
|
|
56
|
+
key: 'income',
|
|
57
|
+
render: (text: number) => <div>${text}</div>,
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
title: 'Benefit',
|
|
61
|
+
dataIndex: 'benefit',
|
|
62
|
+
key: 'benefit',
|
|
63
|
+
render: (text: number) => <div>${text}</div>,
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
title: '',
|
|
67
|
+
dataIndex: 'totalHours',
|
|
68
|
+
key: 'chart',
|
|
69
|
+
render: (totalHours: number, record: DataType) => (
|
|
70
|
+
<Progress
|
|
71
|
+
percent={(totalHours / 8) * 100}
|
|
72
|
+
showInfo={false}
|
|
73
|
+
strokeColor={getColor(record.percentage)}
|
|
74
|
+
strokeWidth={16}
|
|
75
|
+
size={{ width: 310, height: 16 }}
|
|
76
|
+
/>
|
|
77
|
+
),
|
|
78
|
+
},
|
|
79
|
+
];
|
|
80
|
+
|
|
81
|
+
return (
|
|
82
|
+
<div>
|
|
83
|
+
<Table
|
|
84
|
+
columns={columns}
|
|
85
|
+
dataSource={props.data}
|
|
86
|
+
pagination={false}
|
|
87
|
+
rowClassName={() => Styles.custom_row}
|
|
88
|
+
/>
|
|
89
|
+
</div>
|
|
90
|
+
);
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
export default NSChartTable;
|