@cashub/ui 0.4.1 → 0.5.0
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/Tab/Tab.js +28 -0
- package/Tab/TabContext.js +12 -0
- package/Tab/TabList.js +47 -0
- package/Tab/TabPanel.js +85 -0
- package/Tab/TabTab.js +63 -0
- package/Tab/index.js +24 -0
- package/assets/font/helvetica/Helvetica.ttf +0 -0
- package/assets/font/nanumGothic/NanumGothic-Bold.ttf +0 -0
- package/assets/font/nanumGothic/NanumGothic-ExtraBold.ttf +0 -0
- package/assets/font/nanumGothic/NanumGothic-Regular.ttf +0 -0
- package/assets/icons/app-management.png +0 -0
- package/assets/icons/burger.png +0 -0
- package/assets/icons/file.svg +1 -0
- package/assets/icons/map_icon1.png +0 -0
- package/assets/icons/map_icon4.png +0 -0
- package/assets/images/bg-chart-circle.png +0 -0
- package/assets/images/bg-chart-triangle.png +0 -0
- package/assets/images/cashub-logo-only.png +0 -0
- package/assets/images/default-user.jpg +0 -0
- package/assets/images/logo-cashub.png +0 -0
- package/assets/images/map.png +0 -0
- package/assets/images/qrcode.png +0 -0
- package/billing/BarChart.js +58 -0
- package/billing/Grid.js +49 -0
- package/billing/Header2.js +28 -0
- package/billing/Header3.js +44 -0
- package/billing/Paragraph.js +39 -0
- package/billing/ParagraphGroup.js +25 -0
- package/billing/ParagraphText.js +31 -0
- package/billing/Section.js +60 -0
- package/billing/SectionBody.js +20 -0
- package/billing/SectionHeader.js +31 -0
- package/billing/__stories__/BarChart.stories.js_bak +46 -0
- package/billing/__stories__/Grid.stories.js_bak +57 -0
- package/billing/__stories__/Header2.stories.js_bak +62 -0
- package/billing/__stories__/Header3.stories.js_bak +69 -0
- package/billing/__stories__/Paragraph.stories.js_bak +84 -0
- package/billing/__stories__/ParagraphGroup.stories.js_bak +68 -0
- package/billing/__stories__/ParagraphText.stories.js_bak +64 -0
- package/billing/__stories__/Section.stories.js_bak +115 -0
- package/billing/__stories__/SectionBody.stories.js_bak +62 -0
- package/billing/__stories__/SectionHeader.stories.js-bak +68 -0
- package/callout/Callout.js +36 -0
- package/callout/index.js +15 -0
- package/chart/BarChart.js +130 -0
- package/chart/DoughnutChart.js +59 -0
- package/chart/LineChart.js +121 -0
- package/chart/SingleBarChart.js +31 -0
- package/chart/index.js +39 -0
- package/container/FlexContainer.js +25 -0
- package/container/index.js +15 -0
- package/datetimePicker/Accordion.js +342 -0
- package/datetimePicker/CustomTimeInput.js +77 -0
- package/datetimePicker/DatePicker.js +401 -0
- package/datetimePicker/DatePickerV2.js +432 -0
- package/datetimePicker/DateTimePickerContext.js +12 -0
- package/datetimePicker/DatetimePicker.js +80 -0
- package/datetimePicker/DatetimePickerV2.js +438 -0
- package/datetimePicker/TimeInput.js +37 -0
- package/datetimePicker/TimePicker.js +324 -0
- package/datetimePicker/accordion/Month.js +188 -0
- package/datetimePicker/accordion/Year.js +247 -0
- package/datetimePicker/hooks/index.js +31 -0
- package/datetimePicker/hooks/useChangeNumber.js +55 -0
- package/datetimePicker/hooks/useDecrease.js +54 -0
- package/datetimePicker/hooks/useIncrease.js +54 -0
- package/datetimePicker/index.js +47 -0
- package/datetimePicker/provider/constant.js +44 -0
- package/datetimePicker/utils/pad.js +17 -0
- package/descriptionList/DescriptionDetail.js +22 -0
- package/descriptionList/DescriptionList.js +22 -0
- package/descriptionList/DescriptionTerm.js +19 -0
- package/descriptionList/index.js +31 -0
- package/divider/Divider.js +22 -0
- package/divider/index.js +15 -0
- package/dropdown/Dropdown.js +92 -0
- package/dropdown/DropdownButtonOption.js +19 -0
- package/dropdown/DropdownContent.js +94 -0
- package/dropdown/DropdownContext.js +12 -0
- package/dropdown/DropdownDivOption.js +19 -0
- package/dropdown/DropdownItem.js +32 -0
- package/dropdown/DropdownLinkOption.js +20 -0
- package/dropdown/DropdownToggle.js +58 -0
- package/dropdown/index.js +53 -0
- package/geolocation/MapInteractor.js +41 -0
- package/geolocation/MapSearchBoxControl.js +100 -0
- package/geolocation/ReverseGeolocation.js +160 -0
- package/geolocation/index.js +23 -0
- package/grid/Column.js +33 -0
- package/grid/Grid.js +28 -0
- package/grid/index.js +23 -0
- package/heading/Heading1.js +22 -0
- package/heading/Heading2.js +25 -0
- package/heading/Heading3.js +4 -4
- package/heading/index.js +31 -0
- package/icon/IconFigure.js +36 -0
- package/icon/index.js +15 -0
- package/iconbox/ApplicationIconBox.js +51 -0
- package/iconbox/IconBox.js +56 -0
- package/iconbox/IconBoxFigure.js +37 -0
- package/iconbox/IconBoxImage.js +32 -0
- package/iconbox/IconBoxV2.js +42 -0
- package/iconbox/index.js +31 -0
- package/index.js +377 -0
- package/jsoneditor/JsonEditor.js +53 -0
- package/jsoneditor/index.js +15 -0
- package/layout/Backdrop.js +25 -0
- package/layout/Container.js +34 -0
- package/layout/Footer.js +32 -0
- package/layout/Logo.js +34 -0
- package/layout/MenuIcon.js +43 -0
- package/link/LinkSpan.js +57 -0
- package/link/index.js +15 -0
- package/map/CustomLeafletMapContainer.js +23 -0
- package/map/LeafletMap.js +224 -0
- package/map/index.js +23 -0
- package/module/geolocation/api.js +51 -0
- package/module/message/index.js +59 -0
- package/package.json +16 -1
- package/paginate/Paginate.js +110 -0
- package/paginate/index.js +15 -0
- package/popover/Popover.js +122 -0
- package/popover/index.js +15 -0
- package/qrcode/QRCode.js +57 -0
- package/qrcode/QRCodeContainter.js +34 -0
- package/qrcode/index.js +23 -0
- package/ribbon/Ribbon.js +28 -0
- package/ribbon/index.js +15 -0
- package/section/Section.js +64 -0
- package/section/SectionBody.js +38 -0
- package/section/SectionHeader.js +42 -0
- package/section/SectionToolbar.js +22 -0
- package/section/index.js +50 -0
- package/select/ListBox.js +26 -0
- package/select/Option.js +28 -0
- package/select/OptionGroup.js +20 -0
- package/select/Options.js +25 -0
- package/select/SearchBox.js +52 -0
- package/select/Select.js +625 -0
- package/select/SelectedMultiple.js +34 -0
- package/select/SelectedSingle.js +20 -0
- package/select/index.js +15 -0
- package/services/api/index.js +73 -0
- package/styles/header.style.js +11 -0
- package/styles/sidebar.style.js +18 -0
- package/styles/theme/dark.theme.js +95 -0
- package/styles/theme/index.js +16 -0
- package/table/ImageBox.js +39 -0
- package/table/Logo.js +40 -0
- package/table/PermissionTable.js +42 -0
- package/table/Table.js +377 -0
- package/table/TableFooter.js +19 -0
- package/table/TableFooterInfo.js +19 -0
- package/table/TableFooterPager.js +19 -0
- package/table/TableHeadCell.js +39 -0
- package/table/TableSort.js +34 -0
- package/table/hooks/index.js +31 -0
- package/table/hooks/useLimitChange.js +34 -0
- package/table/hooks/usePageChange.js +33 -0
- package/table/hooks/useSortChange.js +35 -0
- package/table/index.js +31 -0
- package/tagify/Tags.js +55 -0
- package/tagify/index.js +15 -0
- package/text/Paragraph.js +34 -0
- package/text/index.js +15 -0
- package/timeline/Timeline.js +51 -0
- package/timeline/index.js +15 -0
- package/toast/CustomToastContainer.js +20 -0
- package/toast/index.js +23 -0
- package/tooltip/Tooltip.js +154 -0
- package/tooltip/index.js +15 -0
- package/utils/array/generateRange.js +19 -0
- package/utils/chart/customTooltip.js +89 -0
- package/utils/chart/padEmptyChartBar.js +48 -0
- package/utils/format/datetimeFormat.js +71 -0
- package/utils/format/formatDate.js +46 -0
- package/utils/hooks/useCustomPopper.js +50 -0
- package/utils/hooks/useForkRef.js +28 -0
- package/utils/hooks/usePagination.js +86 -0
- package/utils/react/setRef.js +17 -0
- package/utils/regex/check.js +13 -0
- package/wizard/Wizard.js +217 -0
- package/wizard/index.js +15 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { useContext } from 'react';
|
|
2
|
+
import { ThemeContext } from 'styled-components';
|
|
3
|
+
import {
|
|
4
|
+
PDFViewer,
|
|
5
|
+
Document,
|
|
6
|
+
Page,
|
|
7
|
+
View,
|
|
8
|
+
StyleSheet,
|
|
9
|
+
Font,
|
|
10
|
+
} from '@react-pdf/renderer';
|
|
11
|
+
import BillingSectionHeader from '../SectionHeader';
|
|
12
|
+
import BillingHeader3 from '../Header3';
|
|
13
|
+
import NanumGothicBold from '../../assets/font/nanumGothic/NanumGothic-Bold.ttf';
|
|
14
|
+
import NanumGothicExtraBold from '../../assets/font/nanumGothic/NanumGothic-ExtraBold.ttf';
|
|
15
|
+
import NanumGothicRegular from '../../assets/font/nanumGothic/NanumGothic-Regular.ttf';
|
|
16
|
+
|
|
17
|
+
export default {
|
|
18
|
+
title: 'billing/BillingSectionHeader',
|
|
19
|
+
component: BillingSectionHeader,
|
|
20
|
+
subComponent: {
|
|
21
|
+
BillingHeader3,
|
|
22
|
+
},
|
|
23
|
+
argTypes: {
|
|
24
|
+
children: {
|
|
25
|
+
description: 'A BillingHeader3 component must be passed in.',
|
|
26
|
+
},
|
|
27
|
+
inline: { description: 'Style variant' },
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const Default = (args) => {
|
|
32
|
+
const theme = useContext(ThemeContext);
|
|
33
|
+
Font.register({
|
|
34
|
+
family: 'Nanum Gothic',
|
|
35
|
+
fonts: [
|
|
36
|
+
{ src: NanumGothicBold },
|
|
37
|
+
{ src: NanumGothicExtraBold },
|
|
38
|
+
{ src: NanumGothicRegular },
|
|
39
|
+
],
|
|
40
|
+
});
|
|
41
|
+
const styles = StyleSheet.create({
|
|
42
|
+
page: {
|
|
43
|
+
family: 'Nanum Gothic',
|
|
44
|
+
color: '#ffffff',
|
|
45
|
+
backgroundColor: theme.bgColor2,
|
|
46
|
+
padding: 8,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
return (
|
|
51
|
+
<PDFViewer style={{ width: '100%' }}>
|
|
52
|
+
<Document>
|
|
53
|
+
<Page size='A4' style={styles.page}>
|
|
54
|
+
<View>
|
|
55
|
+
<BillingSectionHeader {...args}>
|
|
56
|
+
<BillingHeader3>BillingHeader3</BillingHeader3>
|
|
57
|
+
<BillingHeader3>BillingHeader3</BillingHeader3>
|
|
58
|
+
</BillingSectionHeader>
|
|
59
|
+
</View>
|
|
60
|
+
</Page>
|
|
61
|
+
</Document>
|
|
62
|
+
</PDFViewer>
|
|
63
|
+
);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
Default.args = {
|
|
67
|
+
inline: false,
|
|
68
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
|
+
|
|
10
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
15
|
+
|
|
16
|
+
var Callout = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: var(--spacing);\n border-radius: var(--border-radius);\n background: var(--color-background4);\n margin-bottom: var(--spacing);\n"])));
|
|
17
|
+
|
|
18
|
+
var Body = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n"])));
|
|
19
|
+
|
|
20
|
+
var Content = _styledComponents.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n flex: 2;\n"])));
|
|
21
|
+
|
|
22
|
+
var Title = _styledComponents.default.h3(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n font-size: var(--font-h3);\n font-weight: 500;\n color: var(--font-on-background);\n margin-bottom: var(--border-radius);\n"])));
|
|
23
|
+
|
|
24
|
+
var Description = _styledComponents.default.p(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n font-size: var(--font-body1);\n line-height: 1.5;\n color: var(--font-on-mute);\n padding-right: var(--spacing);\n font-weight: 400;\n\n &:last-child {\n margin-bottom: 0;\n }\n"])));
|
|
25
|
+
|
|
26
|
+
var Action = _styledComponents.default.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n justify-content: center;\n"])));
|
|
27
|
+
|
|
28
|
+
var _default = Object.assign(Callout, {
|
|
29
|
+
Body: Body,
|
|
30
|
+
Content: Content,
|
|
31
|
+
Title: Title,
|
|
32
|
+
Description: Description,
|
|
33
|
+
Action: Action
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
exports.default = _default;
|
package/callout/index.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Callout", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _Callout.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
var _Callout = _interopRequireDefault(require("./Callout"));
|
|
14
|
+
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _styledComponents = require("styled-components");
|
|
11
|
+
|
|
12
|
+
var _reactChartjs = require("react-chartjs-2");
|
|
13
|
+
|
|
14
|
+
var _customTooltip = _interopRequireDefault(require("../utils/chart/customTooltip"));
|
|
15
|
+
|
|
16
|
+
var _padEmptyChartBar = _interopRequireDefault(require("../utils/chart/padEmptyChartBar"));
|
|
17
|
+
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
var BarChart = function BarChart(_ref) {
|
|
23
|
+
var _ref$height = _ref.height,
|
|
24
|
+
height = _ref$height === void 0 ? 300 : _ref$height,
|
|
25
|
+
data = _ref.data,
|
|
26
|
+
_ref$options = _ref.options,
|
|
27
|
+
options = _ref$options === void 0 ? {} : _ref$options;
|
|
28
|
+
var theme = (0, _react.useContext)(_styledComponents.ThemeContext); // fix: read value from theme
|
|
29
|
+
|
|
30
|
+
_reactChartjs.defaults.font.family = theme.fontFamily;
|
|
31
|
+
_reactChartjs.defaults.font.size = 16;
|
|
32
|
+
_reactChartjs.defaults.color = theme.fontOnBg;
|
|
33
|
+
_reactChartjs.defaults.plugins.tooltip.external = (0, _customTooltip.default)(theme);
|
|
34
|
+
var customOptions = (0, _react.useMemo)(function () {
|
|
35
|
+
return {
|
|
36
|
+
onlyFirstTooltips: options.onlyFirstTooltips === undefined ? true : options.onlyFirstTooltips,
|
|
37
|
+
maxBarNumber: options.maxBarNumber === undefined ? 5 : options.maxBarNumber,
|
|
38
|
+
stacked: options.stacked === undefined ? true : options.stacked,
|
|
39
|
+
suggestedMax: options.suggestedMax === undefined ? 10 : options.suggestedMax,
|
|
40
|
+
showLegend: options.showLegend === undefined ? false : options.showLegend,
|
|
41
|
+
rotateLabel: options.rotateLabel === undefined ? true : options.rotateLabel
|
|
42
|
+
};
|
|
43
|
+
}, [options]);
|
|
44
|
+
var defaultOptions = (0, _react.useMemo)(function () {
|
|
45
|
+
return {
|
|
46
|
+
responsive: true,
|
|
47
|
+
maintainAspectRatio: false,
|
|
48
|
+
aspectRatio: 1,
|
|
49
|
+
plugins: {
|
|
50
|
+
padEmptyChartBar: {
|
|
51
|
+
maxBarNumber: customOptions.maxBarNumber
|
|
52
|
+
},
|
|
53
|
+
legend: {
|
|
54
|
+
position: "bottom",
|
|
55
|
+
display: customOptions.showLegend
|
|
56
|
+
},
|
|
57
|
+
tooltip: {
|
|
58
|
+
enabled: false,
|
|
59
|
+
intersect: false,
|
|
60
|
+
filter: function filter(context) {
|
|
61
|
+
return !customOptions.onlyFirstTooltips || context.datasetIndex === 0 && context.label !== "null";
|
|
62
|
+
},
|
|
63
|
+
callbacks: {
|
|
64
|
+
title: function title(context) {
|
|
65
|
+
return context[0] ? context[0].label.match(/(.{1,20})/g) : "";
|
|
66
|
+
},
|
|
67
|
+
label: function label(context) {
|
|
68
|
+
var label = context.dataset.data[context.dataIndex];
|
|
69
|
+
|
|
70
|
+
if (context.dataset.customLabel) {
|
|
71
|
+
return context.dataset.customLabel[context.dataIndex].toString();
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return label.toString();
|
|
75
|
+
},
|
|
76
|
+
labelTextColor: function labelTextColor() {
|
|
77
|
+
return theme.fontOnPrimary;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
scales: {
|
|
83
|
+
x: {
|
|
84
|
+
stacked: customOptions.stacked,
|
|
85
|
+
grid: {
|
|
86
|
+
display: false,
|
|
87
|
+
drawBorder: false
|
|
88
|
+
},
|
|
89
|
+
ticks: {
|
|
90
|
+
minRotation: customOptions.rotateLabel ? 15 : 0,
|
|
91
|
+
callback: function callback(value) {
|
|
92
|
+
var label = this.getLabelForValue(value);
|
|
93
|
+
return label && label.length > 11 ? "".concat(label.substr(0, 11), "...") : label;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
y: {
|
|
98
|
+
beginAtZero: true,
|
|
99
|
+
suggestedMax: customOptions.suggestedMax,
|
|
100
|
+
grid: {
|
|
101
|
+
display: false,
|
|
102
|
+
drawBorder: false
|
|
103
|
+
},
|
|
104
|
+
ticks: {
|
|
105
|
+
callback: function callback(value) {
|
|
106
|
+
if (value % 1 === 0) {
|
|
107
|
+
return value;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return null;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
}, [customOptions, theme.fontOnPrimary]);
|
|
117
|
+
console.log("defaultOptions", defaultOptions);
|
|
118
|
+
var Chart = (0, _react.useMemo)(function () {
|
|
119
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactChartjs.Bar, {
|
|
120
|
+
height: height,
|
|
121
|
+
data: data,
|
|
122
|
+
options: defaultOptions,
|
|
123
|
+
plugins: [_padEmptyChartBar.default]
|
|
124
|
+
});
|
|
125
|
+
}, [height, data, defaultOptions]);
|
|
126
|
+
return Chart;
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
var _default = BarChart;
|
|
130
|
+
exports.default = _default;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _styledComponents = require("styled-components");
|
|
11
|
+
|
|
12
|
+
var _reactChartjs = require("react-chartjs-2");
|
|
13
|
+
|
|
14
|
+
var _customTooltip = _interopRequireDefault(require("../utils/chart/customTooltip"));
|
|
15
|
+
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
var DoughnutChart = function DoughnutChart(_ref) {
|
|
21
|
+
var _ref$height = _ref.height,
|
|
22
|
+
height = _ref$height === void 0 ? 300 : _ref$height,
|
|
23
|
+
data = _ref.data;
|
|
24
|
+
var theme = (0, _react.useContext)(_styledComponents.ThemeContext); // fix: read value from theme
|
|
25
|
+
|
|
26
|
+
_reactChartjs.defaults.font.family = theme.fontFamily;
|
|
27
|
+
_reactChartjs.defaults.font.size = 16;
|
|
28
|
+
_reactChartjs.defaults.color = theme.fontOnBg;
|
|
29
|
+
_reactChartjs.defaults.plugins.tooltip.external = (0, _customTooltip.default)(theme);
|
|
30
|
+
var defaultOptions = (0, _react.useMemo)(function () {
|
|
31
|
+
return {
|
|
32
|
+
responsive: true,
|
|
33
|
+
maintainAspectRatio: false,
|
|
34
|
+
aspectRatio: 1,
|
|
35
|
+
plugins: {
|
|
36
|
+
legend: {
|
|
37
|
+
position: "bottom",
|
|
38
|
+
labels: {
|
|
39
|
+
padding: 24
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
tooltip: {
|
|
43
|
+
enabled: false
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
}, []);
|
|
48
|
+
var Chart = (0, _react.useMemo)(function () {
|
|
49
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactChartjs.Doughnut, {
|
|
50
|
+
height: height,
|
|
51
|
+
data: data,
|
|
52
|
+
options: defaultOptions
|
|
53
|
+
});
|
|
54
|
+
}, [height, data, defaultOptions]);
|
|
55
|
+
return Chart;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
var _default = DoughnutChart;
|
|
59
|
+
exports.default = _default;
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _styledComponents = require("styled-components");
|
|
11
|
+
|
|
12
|
+
var _reactChartjs = require("react-chartjs-2");
|
|
13
|
+
|
|
14
|
+
var _customTooltip = _interopRequireDefault(require("../utils/chart/customTooltip"));
|
|
15
|
+
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
var LineChart = function LineChart(_ref) {
|
|
21
|
+
var _ref$height = _ref.height,
|
|
22
|
+
height = _ref$height === void 0 ? 300 : _ref$height,
|
|
23
|
+
data = _ref.data,
|
|
24
|
+
_ref$options = _ref.options,
|
|
25
|
+
options = _ref$options === void 0 ? {} : _ref$options;
|
|
26
|
+
var theme = (0, _react.useContext)(_styledComponents.ThemeContext); // fix: read value from theme
|
|
27
|
+
|
|
28
|
+
_reactChartjs.defaults.font.family = theme.fontFamily;
|
|
29
|
+
_reactChartjs.defaults.font.size = 16;
|
|
30
|
+
_reactChartjs.defaults.color = theme.fontOnBg;
|
|
31
|
+
_reactChartjs.defaults.plugins.tooltip.external = (0, _customTooltip.default)(theme);
|
|
32
|
+
var customOptions = (0, _react.useMemo)(function () {
|
|
33
|
+
return {
|
|
34
|
+
suggestedMax: options.suggestedMax ? options.suggestedMax : 10,
|
|
35
|
+
tooltipTitlePrefix: "",
|
|
36
|
+
tooltipLabelPrefix: ""
|
|
37
|
+
};
|
|
38
|
+
}, [options]);
|
|
39
|
+
|
|
40
|
+
if (options.tooltips) {
|
|
41
|
+
var tooltipsOptions = options.tooltips;
|
|
42
|
+
customOptions.tooltipTitlePrefix = tooltipsOptions.titlePrefix || "";
|
|
43
|
+
customOptions.tooltipLabelPrefix = tooltipsOptions.labelPrefix || "";
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
var defaultOptions = (0, _react.useMemo)(function () {
|
|
47
|
+
return {
|
|
48
|
+
responsive: true,
|
|
49
|
+
maintainAspectRatio: false,
|
|
50
|
+
aspectRatio: 1,
|
|
51
|
+
plugins: {
|
|
52
|
+
legend: {
|
|
53
|
+
display: false
|
|
54
|
+
},
|
|
55
|
+
tooltip: {
|
|
56
|
+
enabled: false,
|
|
57
|
+
intersect: false,
|
|
58
|
+
filter: function filter(context) {
|
|
59
|
+
return context.datasetIndex === 0 && context.label !== "null";
|
|
60
|
+
},
|
|
61
|
+
callbacks: {
|
|
62
|
+
title: function title(context) {
|
|
63
|
+
var content = context[0] ? context[0].label.match(/(.{1,20})/g) : "";
|
|
64
|
+
return "".concat(customOptions.tooltipTitlePrefix).concat(content);
|
|
65
|
+
},
|
|
66
|
+
label: function label(context) {
|
|
67
|
+
var content = context.dataset.data[context.dataIndex].toString();
|
|
68
|
+
return "".concat(customOptions.tooltipLabelPrefix).concat(content);
|
|
69
|
+
},
|
|
70
|
+
labelColor: function labelColor(context) {
|
|
71
|
+
var borderColor = context.dataset.borderColor;
|
|
72
|
+
return {
|
|
73
|
+
borderColor: borderColor,
|
|
74
|
+
backgroundColor: borderColor
|
|
75
|
+
};
|
|
76
|
+
},
|
|
77
|
+
labelTextColor: function labelTextColor() {
|
|
78
|
+
return theme.fontOnPrimary;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
scales: {
|
|
84
|
+
x: {
|
|
85
|
+
grid: {
|
|
86
|
+
display: false,
|
|
87
|
+
drawBorder: false
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
y: {
|
|
91
|
+
beginAtZero: true,
|
|
92
|
+
suggestedMax: customOptions.suggestedMax,
|
|
93
|
+
grid: {
|
|
94
|
+
display: false,
|
|
95
|
+
drawBorder: false
|
|
96
|
+
},
|
|
97
|
+
ticks: {
|
|
98
|
+
callback: function callback(value) {
|
|
99
|
+
if (value % 1 === 0) {
|
|
100
|
+
return value;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
}, [customOptions, theme.fontOnPrimary]);
|
|
110
|
+
var Chart = (0, _react.useMemo)(function () {
|
|
111
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactChartjs.Line, {
|
|
112
|
+
height: height,
|
|
113
|
+
data: data,
|
|
114
|
+
options: defaultOptions
|
|
115
|
+
});
|
|
116
|
+
}, [height, data, defaultOptions]);
|
|
117
|
+
return Chart;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
var _default = LineChart;
|
|
121
|
+
exports.default = _default;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
|
+
|
|
10
|
+
var _backgroundColor = _interopRequireDefault(require("../styles/mixin/backgroundColor"));
|
|
11
|
+
|
|
12
|
+
var _templateObject;
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
17
|
+
|
|
18
|
+
var SingleBarChart = _styledComponents.default.div.attrs(function () {
|
|
19
|
+
return {
|
|
20
|
+
primary: true
|
|
21
|
+
};
|
|
22
|
+
})(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n width: 100%;\n height: 1rem;\n border-radius: var(--border-radius);\n background: var(--color-background3);\n\n &::before {\n position: absolute;\n content: \"\";\n width: ", "%;\n border-radius: var(--border-radius);\n top: 0;\n bottom: 0;\n\n ", "\n }\n\n ", "\n"])), function (_ref) {
|
|
23
|
+
var percentage = _ref.percentage;
|
|
24
|
+
return percentage;
|
|
25
|
+
}, _backgroundColor.default, function (_ref2) {
|
|
26
|
+
var marginTop = _ref2.marginTop;
|
|
27
|
+
return marginTop && "margin-top: var(--spacing-s)";
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
var _default = SingleBarChart;
|
|
31
|
+
exports.default = _default;
|
package/chart/index.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "BarChart", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _BarChart.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "DoughnutChart", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _DoughnutChart.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "LineChart", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _LineChart.default;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "SingleBarChart", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _SingleBarChart.default;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
var _BarChart = _interopRequireDefault(require("./BarChart"));
|
|
32
|
+
|
|
33
|
+
var _DoughnutChart = _interopRequireDefault(require("./DoughnutChart"));
|
|
34
|
+
|
|
35
|
+
var _LineChart = _interopRequireDefault(require("./LineChart"));
|
|
36
|
+
|
|
37
|
+
var _SingleBarChart = _interopRequireDefault(require("./SingleBarChart"));
|
|
38
|
+
|
|
39
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
|
+
|
|
10
|
+
var _templateObject;
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
15
|
+
|
|
16
|
+
var FlexContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n\n ", ";\n\n ", ";\n"])), function (_ref) {
|
|
17
|
+
var marginBottom = _ref.marginBottom;
|
|
18
|
+
return marginBottom && 'margin-bottom: var(--spacing-l)';
|
|
19
|
+
}, function (_ref2) {
|
|
20
|
+
var wrap = _ref2.wrap;
|
|
21
|
+
return wrap && 'flex-wrap: wrap';
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
var _default = FlexContainer;
|
|
25
|
+
exports.default = _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "FlexContainer", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _FlexContainer.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
var _FlexContainer = _interopRequireDefault(require("./FlexContainer"));
|
|
14
|
+
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|