@once-ui-system/core 1.0.13 → 1.0.14
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/components/Accordion.js +15 -33
- package/dist/components/Accordion.js.map +1 -1
- package/dist/components/AccordionGroup.js +6 -24
- package/dist/components/AccordionGroup.js.map +1 -1
- package/dist/components/Arrow.js +15 -32
- package/dist/components/Arrow.js.map +1 -1
- package/dist/components/AutoScroll.js +7 -25
- package/dist/components/AutoScroll.js.map +1 -1
- package/dist/components/Avatar.js +19 -30
- package/dist/components/Avatar.js.map +1 -1
- package/dist/components/AvatarGroup.js +14 -26
- package/dist/components/AvatarGroup.js.map +1 -1
- package/dist/components/Background.js +37 -59
- package/dist/components/Background.js.map +1 -1
- package/dist/components/Badge.d.ts.map +1 -1
- package/dist/components/Badge.js +14 -61
- package/dist/components/Badge.js.map +1 -1
- package/dist/components/Banner.js +5 -22
- package/dist/components/Banner.js.map +1 -1
- package/dist/components/Button.d.ts.map +1 -1
- package/dist/components/Button.js +12 -29
- package/dist/components/Button.js.map +1 -1
- package/dist/components/Card.js +11 -27
- package/dist/components/Card.js.map +1 -1
- package/dist/components/Carousel.js +18 -32
- package/dist/components/Carousel.js.map +1 -1
- package/dist/components/Checkbox.js +18 -36
- package/dist/components/Checkbox.js.map +1 -1
- package/dist/components/Chip.js +20 -35
- package/dist/components/Chip.js.map +1 -1
- package/dist/components/ColorInput.js +12 -27
- package/dist/components/ColorInput.js.map +1 -1
- package/dist/components/Column.js +6 -21
- package/dist/components/Column.js.map +1 -1
- package/dist/components/CompareImage.js +15 -33
- package/dist/components/CompareImage.js.map +1 -1
- package/dist/components/CursorCard.js +23 -37
- package/dist/components/CursorCard.js.map +1 -1
- package/dist/components/DateInput.js +24 -35
- package/dist/components/DateInput.js.map +1 -1
- package/dist/components/DatePicker.js +40 -65
- package/dist/components/DatePicker.js.map +1 -1
- package/dist/components/DateRangeInput.js +17 -35
- package/dist/components/DateRangeInput.js.map +1 -1
- package/dist/components/DateRangePicker.js +15 -30
- package/dist/components/DateRangePicker.js.map +1 -1
- package/dist/components/Dialog.js +33 -87
- package/dist/components/Dialog.js.map +1 -1
- package/dist/components/Dropdown.js +6 -21
- package/dist/components/Dropdown.js.map +1 -1
- package/dist/components/DropdownWrapper.js +42 -45
- package/dist/components/DropdownWrapper.js.map +1 -1
- package/dist/components/ElementType.js +10 -28
- package/dist/components/ElementType.js.map +1 -1
- package/dist/components/Fade.js +19 -33
- package/dist/components/Fade.js.map +1 -1
- package/dist/components/Feedback.js +6 -21
- package/dist/components/Feedback.js.map +1 -1
- package/dist/components/Flex.js +18 -26
- package/dist/components/Flex.js.map +1 -1
- package/dist/components/FlipFx.js +29 -37
- package/dist/components/FlipFx.js.map +1 -1
- package/dist/components/GlitchFx.js +13 -31
- package/dist/components/GlitchFx.js.map +1 -1
- package/dist/components/Grid.js +18 -26
- package/dist/components/Grid.js.map +1 -1
- package/dist/components/Heading.js +10 -24
- package/dist/components/Heading.js.map +1 -1
- package/dist/components/HoloFx.js +35 -36
- package/dist/components/HoloFx.js.map +1 -1
- package/dist/components/Icon.js +14 -32
- package/dist/components/Icon.js.map +1 -1
- package/dist/components/IconButton.js +15 -33
- package/dist/components/IconButton.js.map +1 -1
- package/dist/components/InfiniteScroll.js +16 -63
- package/dist/components/InfiniteScroll.js.map +1 -1
- package/dist/components/InlineCode.js +8 -26
- package/dist/components/InlineCode.js.map +1 -1
- package/dist/components/Input.js +31 -49
- package/dist/components/Input.js.map +1 -1
- package/dist/components/InteractiveDetails.js +6 -9
- package/dist/components/InteractiveDetails.js.map +1 -1
- package/dist/components/Kbd.js +5 -22
- package/dist/components/Kbd.js.map +1 -1
- package/dist/components/LetterFx.js +13 -19
- package/dist/components/LetterFx.js.map +1 -1
- package/dist/components/Line.js +6 -21
- package/dist/components/Line.js.map +1 -1
- package/dist/components/Logo.js +12 -30
- package/dist/components/Logo.js.map +1 -1
- package/dist/components/LogoCloud.js +14 -29
- package/dist/components/LogoCloud.js.map +1 -1
- package/dist/components/Mask.js +17 -32
- package/dist/components/Mask.js.map +1 -1
- package/dist/components/Media.js +25 -36
- package/dist/components/Media.js.map +1 -1
- package/dist/components/NavIcon.js +8 -26
- package/dist/components/NavIcon.js.map +1 -1
- package/dist/components/NumberInput.js +11 -30
- package/dist/components/NumberInput.js.map +1 -1
- package/dist/components/OTPInput.js +16 -37
- package/dist/components/OTPInput.js.map +1 -1
- package/dist/components/OgCard.js +22 -30
- package/dist/components/OgCard.js.map +1 -1
- package/dist/components/Option.js +15 -33
- package/dist/components/Option.js.map +1 -1
- package/dist/components/Particle.js +9 -57
- package/dist/components/Particle.js.map +1 -1
- package/dist/components/PasswordInput.js +8 -11
- package/dist/components/PasswordInput.js.map +1 -1
- package/dist/components/RadioButton.js +17 -35
- package/dist/components/RadioButton.js.map +1 -1
- package/dist/components/RevealFx.js +18 -32
- package/dist/components/RevealFx.js.map +1 -1
- package/dist/components/Row.js +6 -21
- package/dist/components/Row.js.map +1 -1
- package/dist/components/ScrollToTop.js +9 -28
- package/dist/components/ScrollToTop.js.map +1 -1
- package/dist/components/Scroller.js +30 -77
- package/dist/components/Scroller.js.map +1 -1
- package/dist/components/SegmentedControl.js +15 -32
- package/dist/components/SegmentedControl.js.map +1 -1
- package/dist/components/Select.js +32 -50
- package/dist/components/Select.js.map +1 -1
- package/dist/components/Skeleton.js +8 -26
- package/dist/components/Skeleton.js.map +1 -1
- package/dist/components/SmartLink.js +28 -34
- package/dist/components/SmartLink.js.map +1 -1
- package/dist/components/Spinner.js +8 -26
- package/dist/components/Spinner.js.map +1 -1
- package/dist/components/StatusIndicator.js +8 -26
- package/dist/components/StatusIndicator.js.map +1 -1
- package/dist/components/StyleOverlay.js +9 -27
- package/dist/components/StyleOverlay.js.map +1 -1
- package/dist/components/StylePanel.js +45 -63
- package/dist/components/StylePanel.js.map +1 -1
- package/dist/components/Switch.js +18 -36
- package/dist/components/Switch.js.map +1 -1
- package/dist/components/Table.js +12 -29
- package/dist/components/Table.js.map +1 -1
- package/dist/components/Tag.js +8 -26
- package/dist/components/Tag.js.map +1 -1
- package/dist/components/TagInput.js +9 -24
- package/dist/components/TagInput.js.map +1 -1
- package/dist/components/Text.js +10 -24
- package/dist/components/Text.js.map +1 -1
- package/dist/components/Textarea.js +34 -81
- package/dist/components/Textarea.js.map +1 -1
- package/dist/components/ThemeSwitcher.js +10 -46
- package/dist/components/ThemeSwitcher.js.map +1 -1
- package/dist/components/TiltFx.js +8 -26
- package/dist/components/TiltFx.js.map +1 -1
- package/dist/components/Toast.js +14 -20
- package/dist/components/Toast.js.map +1 -1
- package/dist/components/Toaster.js +10 -16
- package/dist/components/Toaster.js.map +1 -1
- package/dist/components/ToggleButton.js +9 -27
- package/dist/components/ToggleButton.js.map +1 -1
- package/dist/components/Tooltip.js +11 -25
- package/dist/components/Tooltip.js.map +1 -1
- package/dist/components/User.js +8 -25
- package/dist/components/User.js.map +1 -1
- package/dist/components/UserMenu.js +8 -26
- package/dist/components/UserMenu.js.map +1 -1
- package/dist/components/index.js +81 -97
- package/dist/components/index.js.map +1 -1
- package/dist/contexts/DataThemeProvider.js +23 -19
- package/dist/contexts/DataThemeProvider.js.map +1 -1
- package/dist/contexts/IconProvider.js +9 -14
- package/dist/contexts/IconProvider.js.map +1 -1
- package/dist/contexts/ThemeProvider.js +43 -32
- package/dist/contexts/ThemeProvider.js.map +1 -1
- package/dist/contexts/ToastProvider.js +14 -15
- package/dist/contexts/ToastProvider.js.map +1 -1
- package/dist/contexts/index.js +4 -20
- package/dist/contexts/index.js.map +1 -1
- package/dist/hooks/index.js +3 -19
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useDebounce.d.ts.map +1 -1
- package/dist/hooks/useDebounce.js +5 -7
- package/dist/hooks/useDebounce.js.map +1 -1
- package/dist/hooks/useFetchOg.d.ts.map +1 -1
- package/dist/hooks/useFetchOg.js +8 -11
- package/dist/hooks/useFetchOg.js.map +1 -1
- package/dist/hooks/useHeadingLinks.d.ts.map +1 -1
- package/dist/hooks/useHeadingLinks.js +5 -8
- package/dist/hooks/useHeadingLinks.js.map +1 -1
- package/dist/icons.js +31 -34
- package/dist/icons.js.map +1 -1
- package/dist/index.js +8 -24
- package/dist/index.js.map +1 -1
- package/dist/interfaces.js +1 -2
- package/dist/modules/code/CodeBlock.js +33 -84
- package/dist/modules/code/CodeBlock.js.map +1 -1
- package/dist/modules/data/BarChart.js +30 -75
- package/dist/modules/data/BarChart.js.map +1 -1
- package/dist/modules/data/ChartHeader.js +29 -45
- package/dist/modules/data/ChartHeader.js.map +1 -1
- package/dist/modules/data/ChartStatus.js +4 -8
- package/dist/modules/data/ChartStatus.js.map +1 -1
- package/dist/modules/data/DataTooltip.js +14 -17
- package/dist/modules/data/DataTooltip.js.map +1 -1
- package/dist/modules/data/Gradient.js +6 -11
- package/dist/modules/data/Gradient.js.map +1 -1
- package/dist/modules/data/Legend.js +8 -11
- package/dist/modules/data/Legend.js.map +1 -1
- package/dist/modules/data/LineBarChart.js +29 -77
- package/dist/modules/data/LineBarChart.js.map +1 -1
- package/dist/modules/data/LineChart.js +42 -87
- package/dist/modules/data/LineChart.js.map +1 -1
- package/dist/modules/data/PieChart.js +28 -78
- package/dist/modules/data/PieChart.js.map +1 -1
- package/dist/modules/data/Swatch.js +17 -12
- package/dist/modules/data/Swatch.js.map +1 -1
- package/dist/modules/data/index.js +11 -27
- package/dist/modules/data/index.js.map +1 -1
- package/dist/modules/data/interfaces.js +1 -2
- package/dist/modules/data/utils/colorDistribution.js +8 -12
- package/dist/modules/data/utils/colorDistribution.js.map +1 -1
- package/dist/modules/data/utils/formatDate.js +6 -9
- package/dist/modules/data/utils/formatDate.js.map +1 -1
- package/dist/modules/index.js +19 -41
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/media/MediaUpload.js +16 -34
- package/dist/modules/media/MediaUpload.js.map +1 -1
- package/dist/modules/navigation/HeadingLink.js +7 -26
- package/dist/modules/navigation/HeadingLink.js.map +1 -1
- package/dist/modules/navigation/HeadingNav.js +24 -42
- package/dist/modules/navigation/HeadingNav.js.map +1 -1
- package/dist/modules/navigation/Kbar.js +52 -109
- package/dist/modules/navigation/Kbar.js.map +1 -1
- package/dist/modules/navigation/MegaMenu.js +27 -44
- package/dist/modules/navigation/MegaMenu.js.map +1 -1
- package/dist/modules/navigation/MobileMegaMenu.js +10 -25
- package/dist/modules/navigation/MobileMegaMenu.js.map +1 -1
- package/dist/modules/navigation/index.js +5 -21
- package/dist/modules/navigation/index.js.map +1 -1
- package/dist/modules/seo/Meta.js +28 -19
- package/dist/modules/seo/Meta.js.map +1 -1
- package/dist/modules/seo/Schema.js +16 -17
- package/dist/modules/seo/Schema.js.map +1 -1
- package/dist/package.json +2 -4
- package/dist/types.js +1 -4
- package/dist/types.js.map +1 -1
- package/dist/utils/devLogger.js +1 -4
- package/dist/utils/devLogger.js.map +1 -1
- package/dist/utils/index.js +1 -17
- package/dist/utils/index.js.map +1 -1
- package/next-env.d.ts +5 -0
- package/package.json +18 -20
|
@@ -1,99 +1,48 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
"use client";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(o, k2, desc);
|
|
10
|
-
}) : (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
o[k2] = m[k];
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
-
var ownKeys = function(o) {
|
|
21
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
-
var ar = [];
|
|
23
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
-
return ar;
|
|
25
|
-
};
|
|
26
|
-
return ownKeys(o);
|
|
27
|
-
};
|
|
28
|
-
return function (mod) {
|
|
29
|
-
if (mod && mod.__esModule) return mod;
|
|
30
|
-
var result = {};
|
|
31
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
-
__setModuleDefault(result, mod);
|
|
33
|
-
return result;
|
|
34
|
-
};
|
|
35
|
-
})();
|
|
36
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
-
var t = {};
|
|
38
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
-
t[p] = s[p];
|
|
40
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
-
t[p[i]] = s[p[i]];
|
|
44
|
-
}
|
|
45
|
-
return t;
|
|
46
|
-
};
|
|
47
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
-
};
|
|
50
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
-
exports.CodeBlock = void 0;
|
|
52
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
53
|
-
const react_1 = __importStar(require("react"));
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import React, { useState, useEffect, useRef } from "react";
|
|
54
4
|
// We'll import CSS files dynamically on the client side
|
|
55
5
|
const loadCssFiles = () => {
|
|
56
6
|
if (typeof window !== 'undefined') {
|
|
57
|
-
|
|
58
|
-
|
|
7
|
+
import("./CodeHighlight.css");
|
|
8
|
+
import("./LineNumber.css");
|
|
59
9
|
}
|
|
60
10
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
11
|
+
import styles from "./CodeBlock.module.scss";
|
|
12
|
+
import { Flex, Button, IconButton, Scroller, Row, StyleOverlay } from "../../components";
|
|
13
|
+
import Prism from "prismjs";
|
|
64
14
|
// We'll load these dynamically on the client side only
|
|
65
15
|
const loadPrismDependencies = () => {
|
|
66
16
|
if (typeof window !== 'undefined') {
|
|
67
17
|
// Only import these on the client side
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
18
|
+
import("prismjs/plugins/line-highlight/prism-line-highlight");
|
|
19
|
+
import("prismjs/plugins/line-numbers/prism-line-numbers");
|
|
20
|
+
import("prismjs/components/prism-jsx");
|
|
21
|
+
import("prismjs/components/prism-css");
|
|
22
|
+
import("prismjs/components/prism-typescript");
|
|
23
|
+
import("prismjs/components/prism-tsx");
|
|
74
24
|
}
|
|
75
25
|
};
|
|
76
|
-
|
|
77
|
-
const CodeBlock = (
|
|
78
|
-
|
|
79
|
-
const
|
|
80
|
-
const
|
|
81
|
-
const [
|
|
82
|
-
const [isFullscreen, setIsFullscreen] = (0, react_1.useState)(false);
|
|
26
|
+
import classNames from "classnames";
|
|
27
|
+
const CodeBlock = ({ highlight, codeHeight, fillHeight, previewPadding = "l", codes = [], preview, copyButton = true, styleButton = false, reloadButton = false, fullscreenButton = false, lineNumbers = false, compact = false, className, style, onInstanceChange, ...rest }) => {
|
|
28
|
+
const codeRef = useRef(null);
|
|
29
|
+
const preRef = useRef(null);
|
|
30
|
+
const [selectedInstance, setSelectedInstance] = useState(0);
|
|
31
|
+
const [isFullscreen, setIsFullscreen] = useState(false);
|
|
83
32
|
const { code, language, label } = codes[selectedInstance] || {
|
|
84
33
|
code: "",
|
|
85
34
|
language: "",
|
|
86
35
|
label: "Select code",
|
|
87
36
|
};
|
|
88
|
-
|
|
37
|
+
useEffect(() => {
|
|
89
38
|
// Load Prism dependencies and CSS files when the component mounts
|
|
90
39
|
loadPrismDependencies();
|
|
91
40
|
loadCssFiles();
|
|
92
41
|
if (codeRef.current && codes.length > 0) {
|
|
93
|
-
|
|
42
|
+
Prism.highlightAll();
|
|
94
43
|
}
|
|
95
44
|
}, [code, codes.length]);
|
|
96
|
-
|
|
45
|
+
useEffect(() => {
|
|
97
46
|
if (isFullscreen) {
|
|
98
47
|
document.body.style.overflow = "hidden";
|
|
99
48
|
const handleEscKey = (event) => {
|
|
@@ -114,7 +63,7 @@ const CodeBlock = (_a) => {
|
|
|
114
63
|
document.body.style.overflow = "";
|
|
115
64
|
};
|
|
116
65
|
}, [isFullscreen]);
|
|
117
|
-
const [copyIcon, setCopyIcon] =
|
|
66
|
+
const [copyIcon, setCopyIcon] = useState("clipboard");
|
|
118
67
|
const handleCopy = () => {
|
|
119
68
|
if (codes.length > 0 && code) {
|
|
120
69
|
navigator.clipboard
|
|
@@ -130,7 +79,7 @@ const CodeBlock = (_a) => {
|
|
|
130
79
|
});
|
|
131
80
|
}
|
|
132
81
|
};
|
|
133
|
-
const [refreshKey, setRefreshKey] =
|
|
82
|
+
const [refreshKey, setRefreshKey] = useState(0);
|
|
134
83
|
const handleRefresh = () => {
|
|
135
84
|
setRefreshKey((prev) => prev + 1);
|
|
136
85
|
};
|
|
@@ -143,20 +92,20 @@ const CodeBlock = (_a) => {
|
|
|
143
92
|
const toggleFullscreen = () => {
|
|
144
93
|
setIsFullscreen((prev) => !prev);
|
|
145
94
|
};
|
|
146
|
-
return ((
|
|
147
|
-
[
|
|
148
|
-
}), style: style
|
|
95
|
+
return (_jsxs(Flex, { position: isFullscreen ? "fixed" : "relative", zIndex: 0, background: "surface", radius: "l", overflow: "hidden", border: "neutral-medium", direction: "column", vertical: "center", fillWidth: true, minHeight: 3, className: classNames(className, {
|
|
96
|
+
[styles.fullscreen]: isFullscreen,
|
|
97
|
+
}), style: style, ...rest, children: [(codes.length > 1 || (copyButton && !compact)) && (_jsxs(Flex, { borderBottom: "neutral-medium", zIndex: 2, position: "static", fillWidth: true, horizontal: "space-between", gap: "16", children: [codes.length > 1 ? (_jsx(Scroller, { paddingX: "4", children: codes.map((instance, index) => (_jsx(Row, { paddingY: "4", paddingRight: "2", children: _jsx(Button, { className: "mr-2", weight: "default", size: "s", variant: selectedInstance === index ? "secondary" : "tertiary", label: instance.label, onClick: () => {
|
|
149
98
|
setSelectedInstance(index);
|
|
150
|
-
onInstanceChange
|
|
99
|
+
onInstanceChange?.(index);
|
|
151
100
|
handleContent(instance.label);
|
|
152
|
-
} }) }, index))) })) : ((
|
|
101
|
+
} }) }, index))) })) : (_jsx(Row, { paddingY: "12", paddingX: "16", textVariant: "label-default-s", onBackground: "neutral-strong", children: codes[0].label })), !compact && (_jsxs(Flex, { padding: "4", gap: "2", position: "static", children: [reloadButton && (_jsx(IconButton, { size: "m", tooltip: "Reload", tooltipPosition: "left", variant: "tertiary", onClick: handleRefresh, icon: "refresh" })), fullscreenButton && (_jsx(IconButton, { size: "m", tooltip: isFullscreen ? "Exit fullscreen" : "Fullscreen", tooltipPosition: "left", variant: "tertiary", icon: isFullscreen ? "minimize" : "maximize", onClick: toggleFullscreen })), styleButton && (_jsx(StyleOverlay, { children: _jsx(IconButton, { variant: "tertiary", icon: "sparkle" }) })), copyButton && (_jsx(IconButton, { size: "m", tooltip: "Copy", tooltipPosition: "left", variant: "tertiary", onClick: handleCopy, icon: copyIcon }))] }))] })), preview && (_jsx(Flex, { style: {
|
|
153
102
|
isolation: "isolate",
|
|
154
103
|
}, padding: previewPadding, fillHeight: true, horizontal: "center", overflowY: "auto", children: Array.isArray(preview)
|
|
155
|
-
? preview.map((item, index) => (
|
|
156
|
-
: preview }, refreshKey)), codes.length > 0 && code && ((
|
|
104
|
+
? preview.map((item, index) => _jsx(React.Fragment, { children: item }, index))
|
|
105
|
+
: preview }, refreshKey)), codes.length > 0 && code && (_jsxs(Flex, { borderTop: !compact && preview ? "neutral-medium" : undefined, fillWidth: true, fillHeight: fillHeight, children: [_jsx(Flex, { overflowX: "auto", fillWidth: true, children: _jsx("pre", { style: { maxHeight: `${codeHeight}rem` }, "data-line": highlight, ref: preRef, className: classNames(lineNumbers ? styles.lineNumberPadding : styles.padding, styles.pre, `language-${language}`, {
|
|
157
106
|
"line-numbers": lineNumbers,
|
|
158
|
-
}), tabIndex: -1, children: (
|
|
107
|
+
}), tabIndex: -1, children: _jsx("code", { ref: codeRef, className: classNames(styles.code, `language-${language}`), children: typeof code === "string" ? code : code.content }) }) }), compact && copyButton && (_jsx(Flex, { position: "absolute", right: "8", top: "8", className: styles.compactCopy, zIndex: 1, children: _jsx(IconButton, { tooltip: "Copy", tooltipPosition: "left", "aria-label": "Copy code", onClick: handleCopy, icon: copyIcon, size: "m", variant: "tertiary" }) }))] }))] }));
|
|
159
108
|
};
|
|
160
|
-
exports.CodeBlock = CodeBlock;
|
|
161
109
|
CodeBlock.displayName = "CodeBlock";
|
|
110
|
+
export { CodeBlock };
|
|
162
111
|
//# sourceMappingURL=CodeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/modules/code/CodeBlock.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/modules/code/CodeBlock.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,102 +1,57 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
"use client";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
-
var ownKeys = function(o) {
|
|
21
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
-
var ar = [];
|
|
23
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
-
return ar;
|
|
25
|
-
};
|
|
26
|
-
return ownKeys(o);
|
|
27
|
-
};
|
|
28
|
-
return function (mod) {
|
|
29
|
-
if (mod && mod.__esModule) return mod;
|
|
30
|
-
var result = {};
|
|
31
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
-
__setModuleDefault(result, mod);
|
|
33
|
-
return result;
|
|
34
|
-
};
|
|
35
|
-
})();
|
|
36
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
-
var t = {};
|
|
38
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
-
t[p] = s[p];
|
|
40
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
-
t[p[i]] = s[p[i]];
|
|
44
|
-
}
|
|
45
|
-
return t;
|
|
46
|
-
};
|
|
47
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
-
exports.BarChart = void 0;
|
|
49
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
50
|
-
const react_1 = __importStar(require("react"));
|
|
51
|
-
const formatDate_1 = require("./utils/formatDate");
|
|
52
|
-
const recharts_1 = require("recharts");
|
|
53
|
-
const components_1 = require("../../components");
|
|
54
|
-
const colorDistribution_1 = require("./utils/colorDistribution");
|
|
55
|
-
const _1 = require(".");
|
|
56
|
-
const DataThemeProvider_1 = require("../../contexts/DataThemeProvider");
|
|
57
|
-
const BarChart = (_a) => {
|
|
58
|
-
var { title, description, data, series, date, emptyState, loading = false, legend: legendProp = {}, axis = "both", border = "neutral-medium", variant: variantProp, barWidth = "l", hover = false, "data-viz-style": dataVizStyle } = _a, flex = __rest(_a, ["title", "description", "data", "series", "date", "emptyState", "loading", "legend", "axis", "border", "variant", "barWidth", "hover", "data-viz-style"]);
|
|
59
|
-
const { chart } = (0, DataThemeProvider_1.useDataTheme)();
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import React, { useState, useEffect } from "react";
|
|
4
|
+
import { formatDate } from "./utils/formatDate";
|
|
5
|
+
import { BarChart as RechartsBarChart, Bar as RechartsBar, XAxis as RechartsXAxis, YAxis as RechartsYAxis, ResponsiveContainer as RechartsResponsiveContainer, CartesianGrid as RechartsCartesianGrid, Tooltip as RechartsTooltip, Legend as RechartsLegend, } from "recharts";
|
|
6
|
+
import { Column, Row } from "../../components";
|
|
7
|
+
import { getDistributedColor } from "./utils/colorDistribution";
|
|
8
|
+
import { LinearGradient, DataTooltip, Legend, ChartStatus, ChartHeader, } from ".";
|
|
9
|
+
import { useDataTheme } from "../../contexts/DataThemeProvider";
|
|
10
|
+
const BarChart = ({ title, description, data, series, date, emptyState, loading = false, legend: legendProp = {}, axis = "both", border = "neutral-medium", variant: variantProp, barWidth = "l", hover = false, "data-viz-style": dataVizStyle, ...flex }) => {
|
|
11
|
+
const { chart } = useDataTheme();
|
|
60
12
|
const variant = variantProp || chart.variant;
|
|
61
13
|
const legend = {
|
|
62
14
|
display: legendProp.display !== undefined ? legendProp.display : true,
|
|
63
15
|
position: legendProp.position || "top-left",
|
|
64
16
|
direction: legendProp.direction,
|
|
65
17
|
};
|
|
66
|
-
const [selectedDateRange, setSelectedDateRange] =
|
|
18
|
+
const [selectedDateRange, setSelectedDateRange] = useState(date?.start && date?.end
|
|
67
19
|
? {
|
|
68
20
|
startDate: date.start,
|
|
69
21
|
endDate: date.end,
|
|
70
22
|
}
|
|
71
23
|
: undefined);
|
|
72
|
-
|
|
73
|
-
if (
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (date?.start && date?.end) {
|
|
74
26
|
setSelectedDateRange({
|
|
75
27
|
startDate: date.start,
|
|
76
28
|
endDate: date.end,
|
|
77
29
|
});
|
|
78
30
|
}
|
|
79
|
-
}, [date
|
|
31
|
+
}, [date?.start, date?.end]);
|
|
80
32
|
const handleDateRangeChange = (newRange) => {
|
|
81
33
|
setSelectedDateRange(newRange);
|
|
82
|
-
if (date
|
|
34
|
+
if (date?.onChange) {
|
|
83
35
|
date.onChange(newRange);
|
|
84
36
|
}
|
|
85
37
|
};
|
|
86
38
|
const seriesArray = Array.isArray(series) ? series : series ? [series] : [];
|
|
87
39
|
const seriesKeys = seriesArray.map((s) => s.key);
|
|
88
|
-
const chartId =
|
|
89
|
-
const coloredSeriesArray = seriesArray.map((s, index) => (
|
|
40
|
+
const chartId = React.useMemo(() => Math.random().toString(36).substring(2, 9), []);
|
|
41
|
+
const coloredSeriesArray = seriesArray.map((s, index) => ({
|
|
42
|
+
...s,
|
|
43
|
+
color: s.color || getDistributedColor(index, seriesArray.length),
|
|
44
|
+
}));
|
|
90
45
|
const xAxisKey = Object.keys(data[0] || {}).find((key) => !seriesKeys.includes(key)) || "name";
|
|
91
46
|
const autoKeys = Object.keys(data[0] || {}).filter((key) => key !== xAxisKey);
|
|
92
47
|
const autoSeries = seriesArray.length > 0
|
|
93
48
|
? coloredSeriesArray
|
|
94
49
|
: autoKeys.map((key, index) => ({
|
|
95
50
|
key,
|
|
96
|
-
color:
|
|
51
|
+
color: getDistributedColor(index, autoKeys.length),
|
|
97
52
|
}));
|
|
98
53
|
const barColors = autoSeries.map((s) => `var(--data-${s.color})`);
|
|
99
|
-
const filteredData =
|
|
54
|
+
const filteredData = React.useMemo(() => {
|
|
100
55
|
if (!selectedDateRange || !data || data.length === 0) {
|
|
101
56
|
return data;
|
|
102
57
|
}
|
|
@@ -115,12 +70,12 @@ const BarChart = (_a) => {
|
|
|
115
70
|
}
|
|
116
71
|
});
|
|
117
72
|
}, [data, selectedDateRange, xAxisKey]);
|
|
118
|
-
return ((
|
|
73
|
+
return (_jsxs(Column, { fillWidth: true, height: chart.height, border: border, radius: "l", "data-viz-style": dataVizStyle || chart.mode, ...flex, children: [_jsx(ChartHeader, { title: title, description: description, borderBottom: border, dateRange: selectedDateRange, date: date, onDateRangeChange: handleDateRangeChange, presets: date?.presets }), _jsxs(Row, { fill: true, children: [_jsx(ChartStatus, { loading: loading, isEmpty: !filteredData || filteredData.length === 0, emptyState: emptyState }), !loading && filteredData && filteredData.length > 0 && (_jsx(RechartsResponsiveContainer, { width: "100%", height: "100%", children: _jsxs(RechartsBarChart, { data: filteredData, margin: { left: 0, bottom: 0, top: 0, right: 0 }, barGap: 4, children: [_jsx(RechartsCartesianGrid, { horizontal: true, vertical: false, stroke: "var(--neutral-alpha-weak)" }), legend.display && (_jsx(RechartsLegend, { content: (props) => {
|
|
119
74
|
const customPayload = autoSeries.map((series, index) => ({
|
|
120
75
|
value: series.key,
|
|
121
76
|
color: barColors[index],
|
|
122
77
|
}));
|
|
123
|
-
return ((
|
|
78
|
+
return (_jsx(Legend, { variant: variant, payload: customPayload, labels: axis, position: legend.position, direction: legend.direction }));
|
|
124
79
|
}, wrapperStyle: {
|
|
125
80
|
position: "absolute",
|
|
126
81
|
top: legend.position === "top-center" ||
|
|
@@ -148,20 +103,20 @@ const BarChart = (_a) => {
|
|
|
148
103
|
: "100%",
|
|
149
104
|
right: 0,
|
|
150
105
|
margin: 0,
|
|
151
|
-
} })), (
|
|
106
|
+
} })), _jsx(RechartsXAxis, { dataKey: xAxisKey, axisLine: false, tickLine: false, tick: axis === "x" || axis === "both"
|
|
152
107
|
? {
|
|
153
108
|
fill: chart.tick.fill,
|
|
154
109
|
fontSize: chart.tick.fontSize,
|
|
155
110
|
}
|
|
156
111
|
: false, tickFormatter: (value) => {
|
|
157
112
|
const dataPoint = data.find((item) => item[xAxisKey] === value);
|
|
158
|
-
return
|
|
159
|
-
}, hide: !(axis === "x" || axis === "both") }), (axis === "y" || axis === "both") && ((
|
|
113
|
+
return formatDate(value, date, dataPoint);
|
|
114
|
+
}, hide: !(axis === "x" || axis === "both") }), (axis === "y" || axis === "both") && (_jsx(RechartsYAxis, { allowDataOverflow: true, width: 64, padding: { top: 40 }, tickLine: false, tick: {
|
|
160
115
|
fill: chart.tick.fill,
|
|
161
116
|
fontSize: chart.tick.fontSize,
|
|
162
117
|
}, axisLine: {
|
|
163
118
|
stroke: chart.axisLine.stroke,
|
|
164
|
-
} })), (
|
|
119
|
+
} })), _jsx(RechartsTooltip, { cursor: { fill: hover ? "var(--neutral-alpha-weak)" : "var(--static-transparent)" }, content: (props) => (_jsx(DataTooltip, { ...props, date: date, variant: variant })) }), _jsx("defs", { children: barColors.map((color, index) => (_jsx(LinearGradient, { id: `barGradient${chartId}${index}`, color: color, variant: variant }, `gradient-${chartId}-${index}`))) }), autoSeries.map((series, index) => (_jsx(RechartsBar, { dataKey: series.key, name: series.key, fill: `url(#barGradient${chartId}${index})`, stroke: barColors[index], strokeWidth: 1, transform: "translate(0, -1)", barSize: typeof barWidth === "string" && barWidth === "fill"
|
|
165
120
|
? "100%"
|
|
166
121
|
: typeof barWidth === "string" && barWidth === "xs"
|
|
167
122
|
? 12
|
|
@@ -173,8 +128,8 @@ const BarChart = (_a) => {
|
|
|
173
128
|
? 40
|
|
174
129
|
: typeof barWidth === "string" && barWidth === "xl"
|
|
175
130
|
? 64
|
|
176
|
-
: barWidth, radius: barWidth === "fill" || barWidth === "xl" ? [10, 10, 10, 10] : [6, 6, 6, 6] }, series.key)))] }) }))] })] }))
|
|
131
|
+
: barWidth, radius: barWidth === "fill" || barWidth === "xl" ? [10, 10, 10, 10] : [6, 6, 6, 6] }, series.key)))] }) }))] })] }));
|
|
177
132
|
};
|
|
178
|
-
exports.BarChart = BarChart;
|
|
179
133
|
BarChart.displayName = "BarChart";
|
|
134
|
+
export { BarChart };
|
|
180
135
|
//# sourceMappingURL=BarChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BarChart.js","sourceRoot":"","sources":["../../../src/modules/data/BarChart.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BarChart.js","sourceRoot":"","sources":["../../../src/modules/data/BarChart.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,86 +1,71 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
"use client";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
9
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
10
|
-
t[p[i]] = s[p[i]];
|
|
11
|
-
}
|
|
12
|
-
return t;
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.ChartHeader = void 0;
|
|
16
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
17
|
-
const react_1 = require("react");
|
|
18
|
-
const date_fns_1 = require("date-fns");
|
|
19
|
-
const components_1 = require("../../components");
|
|
20
|
-
const ChartHeader = (_a) => {
|
|
21
|
-
var { title, description, dateRange, date, onDateRangeChange, presets = { display: true, granularity: "week" } } = _a, flex = __rest(_a, ["title", "description", "dateRange", "date", "onDateRangeChange", "presets"]);
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState, useEffect } from "react";
|
|
4
|
+
import { startOfYear, endOfYear, startOfMonth, endOfMonth, startOfWeek, endOfWeek, subYears, subMonths, subWeeks, isSameDay, } from "date-fns";
|
|
5
|
+
import { Column, Text, Row, DateRangePicker, DropdownWrapper, IconButton, ToggleButton, } from "../../components";
|
|
6
|
+
export const ChartHeader = ({ title, description, dateRange, date, onDateRangeChange, presets = { display: true, granularity: "week" }, ...flex }) => {
|
|
22
7
|
if (!title && !description && !dateRange && !date) {
|
|
23
8
|
return null;
|
|
24
9
|
}
|
|
25
|
-
const [dateRangeOpen, setDateRangeOpen] =
|
|
26
|
-
const [selectedPreset, setSelectedPreset] =
|
|
10
|
+
const [dateRangeOpen, setDateRangeOpen] = useState(false);
|
|
11
|
+
const [selectedPreset, setSelectedPreset] = useState(null);
|
|
27
12
|
const dateRangePresets = {
|
|
28
13
|
"This year": {
|
|
29
14
|
getRange: () => ({
|
|
30
|
-
startDate:
|
|
31
|
-
endDate:
|
|
15
|
+
startDate: startOfYear(new Date()),
|
|
16
|
+
endDate: endOfYear(new Date()),
|
|
32
17
|
}),
|
|
33
18
|
},
|
|
34
19
|
"This month": {
|
|
35
20
|
getRange: () => ({
|
|
36
|
-
startDate:
|
|
37
|
-
endDate:
|
|
21
|
+
startDate: startOfMonth(new Date()),
|
|
22
|
+
endDate: endOfMonth(new Date()),
|
|
38
23
|
}),
|
|
39
24
|
},
|
|
40
25
|
"This week": {
|
|
41
26
|
getRange: () => ({
|
|
42
|
-
startDate:
|
|
43
|
-
endDate:
|
|
27
|
+
startDate: startOfWeek(new Date()),
|
|
28
|
+
endDate: endOfWeek(new Date()),
|
|
44
29
|
}),
|
|
45
30
|
},
|
|
46
31
|
"Last year": {
|
|
47
32
|
getRange: () => {
|
|
48
|
-
const lastYear =
|
|
33
|
+
const lastYear = subYears(new Date(), 1);
|
|
49
34
|
return {
|
|
50
|
-
startDate:
|
|
51
|
-
endDate:
|
|
35
|
+
startDate: startOfYear(lastYear),
|
|
36
|
+
endDate: endOfYear(lastYear),
|
|
52
37
|
};
|
|
53
38
|
},
|
|
54
39
|
},
|
|
55
40
|
"Last month": {
|
|
56
41
|
getRange: () => {
|
|
57
|
-
const lastMonth =
|
|
42
|
+
const lastMonth = subMonths(new Date(), 1);
|
|
58
43
|
return {
|
|
59
|
-
startDate:
|
|
60
|
-
endDate:
|
|
44
|
+
startDate: startOfMonth(lastMonth),
|
|
45
|
+
endDate: endOfMonth(lastMonth),
|
|
61
46
|
};
|
|
62
47
|
},
|
|
63
48
|
},
|
|
64
49
|
"Last week": {
|
|
65
50
|
getRange: () => {
|
|
66
|
-
const lastWeek =
|
|
51
|
+
const lastWeek = subWeeks(new Date(), 1);
|
|
67
52
|
return {
|
|
68
|
-
startDate:
|
|
69
|
-
endDate:
|
|
53
|
+
startDate: startOfWeek(lastWeek),
|
|
54
|
+
endDate: endOfWeek(lastWeek),
|
|
70
55
|
};
|
|
71
56
|
},
|
|
72
57
|
},
|
|
73
58
|
};
|
|
74
|
-
|
|
59
|
+
useEffect(() => {
|
|
75
60
|
if (dateRange) {
|
|
76
61
|
const matchingPreset = Object.entries(dateRangePresets).find(([name, preset]) => {
|
|
77
62
|
const presetRange = preset.getRange();
|
|
78
63
|
return (dateRange.startDate &&
|
|
79
64
|
presetRange.startDate &&
|
|
80
|
-
|
|
65
|
+
isSameDay(dateRange.startDate, presetRange.startDate) &&
|
|
81
66
|
dateRange.endDate &&
|
|
82
67
|
presetRange.endDate &&
|
|
83
|
-
|
|
68
|
+
isSameDay(dateRange.endDate, presetRange.endDate));
|
|
84
69
|
});
|
|
85
70
|
setSelectedPreset(matchingPreset ? matchingPreset[0] : null);
|
|
86
71
|
}
|
|
@@ -88,7 +73,7 @@ const ChartHeader = (_a) => {
|
|
|
88
73
|
setSelectedPreset(null);
|
|
89
74
|
}
|
|
90
75
|
}, [dateRange]);
|
|
91
|
-
|
|
76
|
+
useEffect(() => {
|
|
92
77
|
const handleEscapeKey = (event) => {
|
|
93
78
|
if (event.key === "Escape" && dateRangeOpen) {
|
|
94
79
|
setDateRangeOpen(false);
|
|
@@ -111,10 +96,10 @@ const ChartHeader = (_a) => {
|
|
|
111
96
|
setSelectedPreset(presetName);
|
|
112
97
|
handleDateRangeChange(newRange);
|
|
113
98
|
};
|
|
114
|
-
if (!title && !description && !
|
|
99
|
+
if (!title && !description && !date?.selector) {
|
|
115
100
|
return null;
|
|
116
101
|
}
|
|
117
|
-
return ((
|
|
102
|
+
return (_jsx(Column, { fillWidth: true, paddingX: "20", paddingY: "12", gap: "4", ...flex, children: _jsxs(Row, { fillWidth: true, vertical: "center", children: [_jsxs(Column, { fillWidth: true, gap: "4", children: [title && _jsx(Text, { variant: "heading-strong-xs", children: title }), description && (_jsx(Text, { variant: "label-default-s", onBackground: "neutral-weak", children: description }))] }), dateRange && date?.selector && (_jsx(DropdownWrapper, { isOpen: dateRangeOpen, onOpenChange: (isOpen) => setDateRangeOpen(isOpen), placement: "bottom-end", trigger: _jsx(IconButton, { icon: "calendar", onClick: () => setDateRangeOpen(!dateRangeOpen), variant: "secondary", size: "m" }), dropdown: _jsxs(Row, { padding: "4", mobileDirection: "column", children: [presets.display && (_jsx(Column, { mobileDirection: "row", padding: "4", gap: "2", minWidth: 8, border: "neutral-alpha-weak", radius: "m", overflowX: "scroll", children: Object.keys(dateRangePresets)
|
|
118
103
|
.filter((presetName) => {
|
|
119
104
|
if (presets.granularity === "year") {
|
|
120
105
|
return presetName.includes("year");
|
|
@@ -126,7 +111,6 @@ const ChartHeader = (_a) => {
|
|
|
126
111
|
return true;
|
|
127
112
|
}
|
|
128
113
|
})
|
|
129
|
-
.map((presetName) => ((
|
|
114
|
+
.map((presetName) => (_jsx(ToggleButton, { style: { paddingLeft: "0.25rem" }, fillWidth: true, horizontal: "start", selected: selectedPreset === presetName, onClick: () => handlePresetClick(presetName), children: presetName }, presetName))) })), _jsx(DateRangePicker, { size: "s", padding: "16", gap: "24", id: "chart-date-range", maxDate: date?.max, minDate: date?.min, dual: date?.dual, value: dateRange, onChange: handleDateRangeChange })] }) }))] }) }));
|
|
130
115
|
};
|
|
131
|
-
exports.ChartHeader = ChartHeader;
|
|
132
116
|
//# sourceMappingURL=ChartHeader.js.map
|