wimui 0.51.2 → 0.52.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/dist/components/_internal/FeedbackCloseButton.cjs +1 -1
- package/dist/components/_internal/FeedbackCloseButton.js +14 -13
- package/dist/components/_internal/FieldLabelContent.cjs +1 -1
- package/dist/components/_internal/FieldLabelContent.js +18 -17
- package/dist/components/ai/AIResponseFeedback/AIResponseFeedback.cjs +1 -1
- package/dist/components/ai/AIResponseFeedback/AIResponseFeedback.js +46 -45
- package/dist/components/ai/AgentStatus/AgentStatus.cjs +1 -1
- package/dist/components/ai/AgentStatus/AgentStatus.js +24 -23
- package/dist/components/ai/ArtifactsOverlay/ArtifactsOverlay.cjs +1 -1
- package/dist/components/ai/ArtifactsOverlay/ArtifactsOverlay.js +47 -45
- package/dist/components/ai/ChatUI/ChatUI.cjs +1 -1
- package/dist/components/ai/ChatUI/ChatUI.js +82 -81
- package/dist/components/ai/CodeBlock/CodeBlock.cjs +3 -3
- package/dist/components/ai/CodeBlock/CodeBlock.js +53 -52
- package/dist/components/ai/CodeDiffViewer/CodeDiffViewer.cjs +2 -2
- package/dist/components/ai/CodeDiffViewer/CodeDiffViewer.js +105 -104
- package/dist/components/ai/MarkdownRenderer/MarkdownRenderer.cjs +1 -1
- package/dist/components/ai/MarkdownRenderer/MarkdownRenderer.js +60 -59
- package/dist/components/ai/ModelSelector/ModelSelector.cjs +1 -1
- package/dist/components/ai/ModelSelector/ModelSelector.js +83 -82
- package/dist/components/ai/ModelSelector/model-selector.module.cjs +1 -1
- package/dist/components/ai/ModelSelector/model-selector.module.js +1 -1
- package/dist/components/ai/PromptInput/PromptInput.cjs +1 -1
- package/dist/components/ai/PromptInput/PromptInput.js +76 -75
- package/dist/components/ai/SourceCitation/SourceCitation.cjs +1 -1
- package/dist/components/ai/SourceCitation/SourceCitation.js +39 -38
- package/dist/components/ai/Terminal/Terminal.cjs +2 -2
- package/dist/components/ai/Terminal/Terminal.js +65 -64
- package/dist/components/ai/ThreadList/ThreadList.cjs +1 -1
- package/dist/components/ai/ThreadList/ThreadList.js +58 -57
- package/dist/components/data-display/Barcode/Barcode.cjs +1 -1
- package/dist/components/data-display/Barcode/Barcode.js +76 -75
- package/dist/components/data-display/Calendar/Calendar.cjs +1 -1
- package/dist/components/data-display/Calendar/Calendar.js +75 -74
- package/dist/components/data-display/CalendarHeatmap/CalendarHeatmap.cjs +1 -1
- package/dist/components/data-display/CalendarHeatmap/CalendarHeatmap.js +54 -52
- package/dist/components/data-display/Carousel/Carousel.cjs +1 -1
- package/dist/components/data-display/Carousel/Carousel.js +62 -61
- package/dist/components/data-display/Chip/Chip.cjs +1 -1
- package/dist/components/data-display/Chip/Chip.js +36 -35
- package/dist/components/data-display/Comment/Comment.cjs +1 -1
- package/dist/components/data-display/Comment/Comment.js +58 -57
- package/dist/components/data-display/Countdown/Countdown.cjs +1 -1
- package/dist/components/data-display/Countdown/Countdown.js +56 -55
- package/dist/components/data-display/DataGrid/DataGrid.cjs +1 -1
- package/dist/components/data-display/DataGrid/DataGrid.js +128 -127
- package/dist/components/data-display/JsonViewer/JsonViewer.cjs +1 -1
- package/dist/components/data-display/JsonViewer/JsonViewer.js +153 -152
- package/dist/components/data-display/Kanban/Kanban.cjs +1 -1
- package/dist/components/data-display/Kanban/Kanban.js +95 -94
- package/dist/components/data-display/NodeGraph/NodeGraph.cjs +1 -1
- package/dist/components/data-display/NodeGraph/NodeGraph.js +62 -61
- package/dist/components/data-display/PivotTable/PivotTable.cjs +1 -1
- package/dist/components/data-display/PivotTable/PivotTable.js +153 -152
- package/dist/components/data-display/Presence/Presence.cjs +1 -1
- package/dist/components/data-display/Presence/Presence.js +28 -27
- package/dist/components/data-display/PullToRefresh/PullToRefresh.cjs +1 -1
- package/dist/components/data-display/PullToRefresh/PullToRefresh.js +73 -72
- package/dist/components/data-display/Reaction/Reaction.cjs +1 -1
- package/dist/components/data-display/Reaction/Reaction.js +31 -30
- package/dist/components/data-display/ScheduleView/ScheduleView.cjs +1 -1
- package/dist/components/data-display/ScheduleView/ScheduleView.js +49 -48
- package/dist/components/data-display/SortableList/SortableList.cjs +1 -1
- package/dist/components/data-display/SortableList/SortableList.js +44 -43
- package/dist/components/data-display/Tag/Tag.cjs +1 -1
- package/dist/components/data-display/Tag/Tag.js +29 -28
- package/dist/components/data-display/TreeDiagram/TreeDiagram.cjs +1 -1
- package/dist/components/data-display/TreeDiagram/TreeDiagram.js +85 -84
- package/dist/components/data-display/TreeView/TreeView.cjs +1 -1
- package/dist/components/data-display/TreeView/TreeView.js +123 -122
- package/dist/components/feedback/Autosave/Autosave.cjs +1 -1
- package/dist/components/feedback/Autosave/Autosave.js +32 -31
- package/dist/components/feedback/ErrorBoundary/ErrorBoundary.cjs +1 -1
- package/dist/components/feedback/ErrorBoundary/ErrorBoundary.js +35 -34
- package/dist/components/feedback/ScrollProgress/ScrollProgress.cjs +1 -1
- package/dist/components/feedback/ScrollProgress/ScrollProgress.js +21 -20
- package/dist/components/feedback/Tour/Tour.cjs +1 -1
- package/dist/components/feedback/Tour/Tour.js +98 -97
- package/dist/components/form/Button/Button.cjs +1 -1
- package/dist/components/form/Button/Button.js +55 -54
- package/dist/components/form/ColorInput/ColorInput.cjs +1 -1
- package/dist/components/form/ColorInput/ColorInput.js +30 -29
- package/dist/components/form/ColorPicker/color-picker.module.cjs +1 -1
- package/dist/components/form/ColorPicker/color-picker.module.js +1 -1
- package/dist/components/form/CopyButton/CopyButton.cjs +1 -1
- package/dist/components/form/CopyButton/CopyButton.js +27 -26
- package/dist/components/form/DatePicker/DatePicker.cjs +1 -1
- package/dist/components/form/DatePicker/DatePicker.js +47 -46
- package/dist/components/form/DateRangePicker/DateRangePicker.cjs +1 -1
- package/dist/components/form/DateRangePicker/DateRangePicker.js +36 -35
- package/dist/components/form/Dropzone/Dropzone.cjs +1 -1
- package/dist/components/form/Dropzone/Dropzone.js +56 -55
- package/dist/components/form/FileUpload/FileUpload.cjs +1 -1
- package/dist/components/form/FileUpload/FileUpload.js +47 -46
- package/dist/components/form/FloatButton/FloatButton.cjs +1 -1
- package/dist/components/form/FloatButton/FloatButton.d.ts +4 -1
- package/dist/components/form/FloatButton/FloatButton.js +6 -6
- package/dist/components/form/ImageCropper/ImageCropper.cjs +1 -1
- package/dist/components/form/ImageCropper/ImageCropper.js +101 -99
- package/dist/components/form/InlineEdit/InlineEdit.cjs +1 -1
- package/dist/components/form/InlineEdit/InlineEdit.js +66 -65
- package/dist/components/form/Input/Input.cjs +1 -1
- package/dist/components/form/Input/Input.js +45 -44
- package/dist/components/form/InputBase/InputBase.cjs +1 -1
- package/dist/components/form/InputBase/InputBase.js +51 -50
- package/dist/components/form/InputBase/input-base.module.cjs +1 -1
- package/dist/components/form/InputBase/input-base.module.js +1 -1
- package/dist/components/form/MultiSelect/multiselect.module.cjs +1 -1
- package/dist/components/form/MultiSelect/multiselect.module.js +1 -1
- package/dist/components/form/PasswordStrength/PasswordStrength.cjs +1 -1
- package/dist/components/form/PasswordStrength/PasswordStrength.js +27 -26
- package/dist/components/form/PhoneInput/PhoneInput.cjs +1 -1
- package/dist/components/form/PhoneInput/PhoneInput.js +10 -10
- package/dist/components/form/QueryBuilder/QueryBuilder.cjs +1 -1
- package/dist/components/form/QueryBuilder/QueryBuilder.js +90 -89
- package/dist/components/form/RangeSlider/RangeSlider.cjs +1 -1
- package/dist/components/form/RangeSlider/RangeSlider.js +30 -29
- package/dist/components/form/RichTextEditor/RichTextEditor.cjs +1 -1
- package/dist/components/form/RichTextEditor/RichTextEditor.js +223 -222
- package/dist/components/form/SegmentedControl/SegmentedControl.cjs +1 -1
- package/dist/components/form/SegmentedControl/SegmentedControl.js +7 -7
- package/dist/components/form/Select/Select.cjs +1 -1
- package/dist/components/form/Select/Select.js +112 -111
- package/dist/components/form/SignaturePad/SignaturePad.cjs +1 -1
- package/dist/components/form/SignaturePad/SignaturePad.js +86 -79
- package/dist/components/form/SmartSearchInput/SmartSearchInput.cjs +1 -1
- package/dist/components/form/SmartSearchInput/SmartSearchInput.js +63 -62
- package/dist/components/form/TagInput/TagInput.cjs +1 -1
- package/dist/components/form/TagInput/TagInput.js +68 -67
- package/dist/components/form/ThemeToggle/ThemeToggle.cjs +1 -1
- package/dist/components/form/ThemeToggle/ThemeToggle.js +68 -67
- package/dist/components/form/ThemeToggle/theme-toggle.module.cjs +1 -1
- package/dist/components/form/ThemeToggle/theme-toggle.module.js +1 -1
- package/dist/components/form/ToggleGroup/ToggleGroup.cjs +1 -1
- package/dist/components/form/ToggleGroup/ToggleGroup.js +6 -6
- package/dist/components/form/Transfer/Transfer.cjs +1 -1
- package/dist/components/form/Transfer/Transfer.js +127 -126
- package/dist/components/form/TreeSelect/TreeSelect.cjs +1 -1
- package/dist/components/form/TreeSelect/TreeSelect.js +6 -6
- package/dist/components/layout/Dashboard/Dashboard.cjs +1 -1
- package/dist/components/layout/Dashboard/Dashboard.js +90 -89
- package/dist/components/layout/Navbar/Navbar.cjs +1 -1
- package/dist/components/layout/Navbar/Navbar.d.ts +1 -1
- package/dist/components/layout/Navbar/Navbar.js +1 -1
- package/dist/components/layout/Sidebar/Sidebar.d.ts +1 -1
- package/dist/components/layout/Splitter/Splitter.cjs +1 -1
- package/dist/components/layout/Splitter/Splitter.js +40 -39
- package/dist/components/layout/Toolbar/Toolbar.cjs +1 -1
- package/dist/components/layout/Toolbar/Toolbar.js +66 -39
- package/dist/components/media/Audio/Audio.cjs +1 -1
- package/dist/components/media/Audio/Audio.js +90 -89
- package/dist/components/media/Audio/components/AudioCustomControls.cjs +1 -1
- package/dist/components/media/Audio/components/AudioCustomControls.js +115 -114
- package/dist/components/media/Gallery/Gallery.cjs +1 -1
- package/dist/components/media/Gallery/Gallery.js +132 -131
- package/dist/components/media/ImageCompare/ImageCompare.cjs +1 -1
- package/dist/components/media/ImageCompare/ImageCompare.js +72 -71
- package/dist/components/media/Lightbox/Lightbox.cjs +1 -1
- package/dist/components/media/Lightbox/Lightbox.js +128 -127
- package/dist/components/media/Video/Video.cjs +1 -1
- package/dist/components/media/Video/Video.js +56 -55
- package/dist/components/media/Video/components/VideoAdvancedMenu.cjs +1 -1
- package/dist/components/media/Video/components/VideoAdvancedMenu.js +136 -135
- package/dist/components/media/Video/components/VideoControls.cjs +1 -1
- package/dist/components/media/Video/components/VideoControls.js +103 -102
- package/dist/components/navigation/BackTop/BackTop.cjs +1 -1
- package/dist/components/navigation/BackTop/BackTop.js +37 -36
- package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs +1 -1
- package/dist/components/navigation/Breadcrumb/Breadcrumb.js +41 -40
- package/dist/components/navigation/CommandPalette/CommandPalette.cjs +1 -1
- package/dist/components/navigation/CommandPalette/CommandPalette.js +100 -99
- package/dist/components/navigation/HamburgerMenu/HamburgerMenu.cjs +1 -1
- package/dist/components/navigation/HamburgerMenu/HamburgerMenu.d.ts +6 -0
- package/dist/components/navigation/HamburgerMenu/HamburgerMenu.js +32 -22
- package/dist/components/navigation/Pagination/Pagination.cjs +1 -1
- package/dist/components/navigation/Pagination/Pagination.js +39 -38
- package/dist/components/navigation/SpeedDial/SpeedDial.cjs +1 -1
- package/dist/components/navigation/SpeedDial/SpeedDial.js +44 -43
- package/dist/components/overlay/ContextMenu/ContextMenu.cjs +1 -1
- package/dist/components/overlay/ContextMenu/ContextMenu.js +4 -4
- package/dist/components/overlay/Popover/Popover.cjs +1 -1
- package/dist/components/overlay/Popover/Popover.js +63 -62
- package/dist/components/typography/Spoiler/Spoiler.cjs +1 -1
- package/dist/components/typography/Spoiler/Spoiler.js +38 -37
- package/dist/i18n/generated/common.cjs +2 -0
- package/dist/i18n/generated/common.d.ts +3 -0
- package/dist/i18n/generated/common.js +570 -0
- package/dist/i18n/generated/components.cjs +2 -0
- package/dist/i18n/generated/components.d.ts +3 -0
- package/dist/i18n/generated/components.js +399 -0
- package/dist/i18n/generated/data-display.cjs +2 -0
- package/dist/i18n/generated/data-display.d.ts +3 -0
- package/dist/i18n/generated/data-display.js +12 -0
- package/dist/i18n/generated/form.cjs +2 -0
- package/dist/i18n/generated/form.d.ts +3 -0
- package/dist/i18n/generated/form.js +321 -0
- package/dist/i18n/generated/keys.d.ts +5 -1
- package/dist/i18n/generated/locales.cjs +2 -0
- package/dist/i18n/generated/locales.d.ts +1 -0
- package/dist/i18n/generated/locales.js +9 -0
- package/dist/i18n/instance.cjs +1 -1
- package/dist/i18n/instance.d.ts +18 -3
- package/dist/i18n/instance.js +24 -26
- package/dist/i18n/useWimTranslation.cjs +1 -1
- package/dist/i18n/useWimTranslation.d.ts +7 -8
- package/dist/i18n/useWimTranslation.js +6 -5
- package/dist/llms-full.txt +7 -3
- package/dist/llms.txt +1 -1
- package/dist/styles.css +1 -1
- package/dist/wimui.umd.css +1 -1
- package/dist/wimui.umd.js +5 -5
- package/package.json +10 -10
- package/dist/i18n/generated/resources.cjs +0 -2
- package/dist/i18n/generated/resources.d.ts +0 -4
- package/dist/i18n/generated/resources.js +0 -1283
|
@@ -1,120 +1,121 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { useWimTranslation as e } from "../../../i18n/useWimTranslation.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import a from "./
|
|
7
|
-
import o from "
|
|
8
|
-
import s from "
|
|
9
|
-
import
|
|
3
|
+
import { commonNs as t } from "../../../i18n/generated/common.js";
|
|
4
|
+
import { useMergedRef as n } from "../../../hooks/useMergedRef.js";
|
|
5
|
+
import { encodeBarcode as r, toRuns as i } from "./encode.js";
|
|
6
|
+
import { warnUnencodableValue as a } from "./warn-unencodable-value.js";
|
|
7
|
+
import o from "./barcode.module.js";
|
|
8
|
+
import s from "react";
|
|
9
|
+
import c from "classnames";
|
|
10
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
10
11
|
//#region src/components/data-display/Barcode/Barcode.tsx
|
|
11
|
-
var
|
|
12
|
+
var d = {
|
|
12
13
|
code128: "Code 128",
|
|
13
14
|
ean13: "EAN-13"
|
|
14
|
-
},
|
|
15
|
-
let { t:
|
|
16
|
-
|
|
17
|
-
let e =
|
|
15
|
+
}, f = 11, p = 8, m = .35, h = 7, g = s.forwardRef(({ value: g, format: _ = "code128", height: v = 64, moduleWidth: y = 2, showValue: b = !0, label: x, className: S, ...C }, w) => {
|
|
16
|
+
let { t: T } = e(t), E = r(g, _), D = s.useRef(null), [O, k] = s.useState(!1);
|
|
17
|
+
s.useLayoutEffect(() => {
|
|
18
|
+
let e = D.current;
|
|
18
19
|
if (!e || typeof ResizeObserver > "u") return;
|
|
19
|
-
let t = () =>
|
|
20
|
+
let t = () => k(e.scrollWidth > e.clientWidth);
|
|
20
21
|
t();
|
|
21
22
|
let n = new ResizeObserver(t);
|
|
22
23
|
return n.observe(e), () => n.disconnect();
|
|
23
|
-
}, [
|
|
24
|
-
let
|
|
25
|
-
if (!
|
|
26
|
-
|
|
27
|
-
let e =
|
|
28
|
-
return /* @__PURE__ */
|
|
29
|
-
ref:
|
|
24
|
+
}, [E?.modules, y]);
|
|
25
|
+
let A = n(w, D);
|
|
26
|
+
if (!E) {
|
|
27
|
+
a(g, _, d[_]);
|
|
28
|
+
let e = T("barcode.invalid", { format: d[_] });
|
|
29
|
+
return /* @__PURE__ */ u("div", {
|
|
30
|
+
ref: A,
|
|
30
31
|
"data-invalid": "true",
|
|
31
|
-
className:
|
|
32
|
-
...
|
|
33
|
-
children: [/* @__PURE__ */
|
|
34
|
-
className:
|
|
32
|
+
className: c("wim-barcode", o.root, o.invalid, S),
|
|
33
|
+
...C,
|
|
34
|
+
children: [/* @__PURE__ */ l("span", {
|
|
35
|
+
className: o.invalidMessage,
|
|
35
36
|
children: e
|
|
36
|
-
}), /* @__PURE__ */
|
|
37
|
-
className:
|
|
38
|
-
children:
|
|
37
|
+
}), /* @__PURE__ */ l("span", {
|
|
38
|
+
className: o.invalidValue,
|
|
39
|
+
children: g
|
|
39
40
|
})]
|
|
40
41
|
});
|
|
41
42
|
}
|
|
42
|
-
let
|
|
43
|
-
let n =
|
|
44
|
-
return
|
|
43
|
+
let j = E.modules.length + 22, M = j * y, N = f, P = i(E.modules).map(([e, t]) => {
|
|
44
|
+
let n = N;
|
|
45
|
+
return N += t, e ? {
|
|
45
46
|
x: n,
|
|
46
47
|
width: t,
|
|
47
|
-
module: n -
|
|
48
|
+
module: n - f
|
|
48
49
|
} : null;
|
|
49
|
-
}),
|
|
50
|
+
}), F = _ === "ean13" && b ? E.print : void 0, I = F ? Math.min(p * y, v * m) : 0, L = v - I, R = (e) => F ? F.guards.some(([t, n]) => e.module >= t && e.module + e.width <= n) : !1, z = F ? [...[...F.left.text].map((e, t) => ({
|
|
50
51
|
key: `l${t}`,
|
|
51
52
|
digit: e,
|
|
52
|
-
module:
|
|
53
|
-
})), ...[...
|
|
53
|
+
module: F.left.from + t * h + h / 2
|
|
54
|
+
})), ...[...F.right.text].map((e, t) => ({
|
|
54
55
|
key: `r${t}`,
|
|
55
56
|
digit: e,
|
|
56
|
-
module:
|
|
57
|
+
module: F.right.from + t * h + h / 2
|
|
57
58
|
}))] : [];
|
|
58
|
-
return /* @__PURE__ */
|
|
59
|
-
ref:
|
|
59
|
+
return /* @__PURE__ */ u("div", {
|
|
60
|
+
ref: A,
|
|
60
61
|
role: "img",
|
|
61
|
-
tabIndex:
|
|
62
|
-
"aria-label":
|
|
63
|
-
"data-format":
|
|
64
|
-
className:
|
|
65
|
-
...
|
|
66
|
-
children: [
|
|
67
|
-
className:
|
|
68
|
-
width:
|
|
69
|
-
height:
|
|
70
|
-
viewBox: `0 0 ${
|
|
62
|
+
tabIndex: O ? 0 : void 0,
|
|
63
|
+
"aria-label": x ?? T("barcode.aria_label", { value: E.text }),
|
|
64
|
+
"data-format": _,
|
|
65
|
+
className: c("wim-barcode", o.root, S),
|
|
66
|
+
...C,
|
|
67
|
+
children: [F ? /* @__PURE__ */ u("svg", {
|
|
68
|
+
className: o.symbol,
|
|
69
|
+
width: M,
|
|
70
|
+
height: v,
|
|
71
|
+
viewBox: `0 0 ${M} ${v}`,
|
|
71
72
|
shapeRendering: "crispEdges",
|
|
72
73
|
"aria-hidden": "true",
|
|
73
74
|
children: [
|
|
74
|
-
|
|
75
|
-
x: e.x *
|
|
75
|
+
P.map((e) => e ? /* @__PURE__ */ l("rect", {
|
|
76
|
+
x: e.x * y,
|
|
76
77
|
y: 0,
|
|
77
|
-
width: e.width *
|
|
78
|
-
height:
|
|
79
|
-
"data-guard":
|
|
78
|
+
width: e.width * y,
|
|
79
|
+
height: R(e) ? v : L,
|
|
80
|
+
"data-guard": R(e) ? "true" : void 0
|
|
80
81
|
}, e.x) : null),
|
|
81
|
-
/* @__PURE__ */
|
|
82
|
-
className:
|
|
83
|
-
x: 10 *
|
|
84
|
-
y:
|
|
82
|
+
/* @__PURE__ */ l("text", {
|
|
83
|
+
className: o.printedDigit,
|
|
84
|
+
x: 10 * y,
|
|
85
|
+
y: v,
|
|
85
86
|
textAnchor: "end",
|
|
86
|
-
fontSize:
|
|
87
|
-
children:
|
|
87
|
+
fontSize: I * .86,
|
|
88
|
+
children: F.lead
|
|
88
89
|
}),
|
|
89
|
-
|
|
90
|
-
className:
|
|
91
|
-
x: (
|
|
92
|
-
y:
|
|
90
|
+
z.map((e) => /* @__PURE__ */ l("text", {
|
|
91
|
+
className: o.printedDigit,
|
|
92
|
+
x: (f + e.module) * y,
|
|
93
|
+
y: v,
|
|
93
94
|
textAnchor: "middle",
|
|
94
|
-
fontSize:
|
|
95
|
+
fontSize: I * .86,
|
|
95
96
|
children: e.digit
|
|
96
97
|
}, e.key))
|
|
97
98
|
]
|
|
98
|
-
}) : /* @__PURE__ */
|
|
99
|
-
className:
|
|
100
|
-
width:
|
|
101
|
-
height:
|
|
102
|
-
viewBox: `0 0 ${
|
|
99
|
+
}) : /* @__PURE__ */ l("svg", {
|
|
100
|
+
className: o.symbol,
|
|
101
|
+
width: M,
|
|
102
|
+
height: v,
|
|
103
|
+
viewBox: `0 0 ${j} ${v}`,
|
|
103
104
|
preserveAspectRatio: "none",
|
|
104
105
|
shapeRendering: "crispEdges",
|
|
105
106
|
"aria-hidden": "true",
|
|
106
|
-
children:
|
|
107
|
+
children: P.map((e) => e ? /* @__PURE__ */ l("rect", {
|
|
107
108
|
x: e.x,
|
|
108
109
|
y: 0,
|
|
109
110
|
width: e.width,
|
|
110
|
-
height:
|
|
111
|
+
height: v
|
|
111
112
|
}, e.x) : null)
|
|
112
|
-
}),
|
|
113
|
-
className:
|
|
114
|
-
children:
|
|
113
|
+
}), b && !F ? /* @__PURE__ */ l("span", {
|
|
114
|
+
className: o.value,
|
|
115
|
+
children: E.text
|
|
115
116
|
}) : null]
|
|
116
117
|
});
|
|
117
118
|
});
|
|
118
|
-
|
|
119
|
+
g.displayName = "Barcode";
|
|
119
120
|
//#endregion
|
|
120
|
-
export {
|
|
121
|
+
export { g as Barcode };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../i18n/useWimTranslation.cjs"),n=require("../../../icon/chevron-left.cjs"),
|
|
2
|
+
const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../i18n/useWimTranslation.cjs"),n=require("../../../i18n/generated/common.cjs"),r=require("../../../icon/chevron-left.cjs"),i=require("../../../icon/chevron-right.cjs"),a=require("../../media/Icon/Icon.cjs"),o=require("./useCalendar.cjs"),s=require("./calendar.module.cjs");let c=require("react");c=e.__toESM(c,1);let l=require("classnames");l=e.__toESM(l,1);let u=require("react/jsx-runtime");var d=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t),f=(e,t)=>{let n=new Date(e.getFullYear(),e.getMonth()+t+1,0).getDate();return new Date(e.getFullYear(),e.getMonth()+t,Math.min(e.getDate(),n))},p=e=>`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}`,m=366,h=({className:e,disabled:h=!1,value:g,defaultValue:_,onChange:v,rangeMode:y=!1,range:b,defaultRange:x,onRangeChange:S,minDate:C,maxDate:w,disabledDates:T,isDateDisabled:E,weekStartsOn:D=0,...O})=>{let{t:k,i18n:A}=t.useWimTranslation(n.commonNs),{viewDate:j,setViewDate:M,year:N,month:P,daysGrid:F,isDateDisabled:I}=o.useCalendar({defaultValue:_||y&&x?.start||void 0,value:g||y&&b?.start||void 0,minDate:C,maxDate:w,disabledDates:T,isDateDisabled:E,weekStartsOn:D}),[L,R]=(0,c.useState)(x||{start:null,end:null}),z=b||L,B=(0,c.useRef)(null),[V,H]=(0,c.useState)(j),U=(0,c.useRef)(!1),W=e=>e.getFullYear()===N&&e.getMonth()===P,G=W(V)&&!I(V)?V:F.find(e=>e.currentMonth&&!I(e.date))?.date??null;(0,c.useEffect)(()=>{U.current&&(U.current=!1,B.current?.querySelector(`[data-calendar-day][tabindex="0"]`)?.focus())},[V,N,P]);let K=(e,t)=>{let n=e;for(let e=0;e<m&&I(n);e++)n=d(n,t);return!I(n)&&(U.current=!0,H(n),W(n)||M(new Date(n.getFullYear(),n.getMonth(),1)),!0)},q=e=>{let t=f(W(V)?V:new Date(N,P,1),e);H(t),M(new Date(t.getFullYear(),t.getMonth(),1))},J=e=>{if(!(h||I(e))){if(y){let t;if(!z.start||z.start&&z.end)t={start:e,end:null};else{let n=z.start,r=e;t=r<n?{start:r,end:n}:{start:n,end:r}}b||R(t),S?.(t)}else v?.(e)}},Y=e=>{if(h)return;let t=e.target.closest(`[data-calendar-day]`),n=t?F.find(e=>p(e.date)===t.getAttribute(`data-date`))?.date:void 0,r=t=>{e.preventDefault(),!(n&&K(f(n,t),t>0?-1:1))&&q(t)};switch(e.key){case`PageUp`:r(e.ctrlKey||e.shiftKey?-12:-1);break;case`PageDown`:r(e.ctrlKey||e.shiftKey?12:1);break;case`ArrowLeft`:case`ArrowRight`:case`ArrowUp`:case`ArrowDown`:{if(!n)return;e.preventDefault();let t={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7}[e.key];K(d(n,t),t);break}case`Home`:case`End`:{if(!n)return;e.preventDefault();let t=(n.getDay()-D+7)%7;e.key===`Home`?K(d(n,-t),1):K(d(n,6-t),-1);break}}},X=e=>y?o.isSameDay(e,z.start)||o.isSameDay(e,z.end):o.isSameDay(e,g||null),Z=e=>{if(!y||!z.start||!z.end)return!1;let t=new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime(),n=new Date(z.start.getFullYear(),z.start.getMonth(),z.start.getDate()).getTime(),r=new Date(z.end.getFullYear(),z.end.getMonth(),z.end.getDate()).getTime();return t>n&&t<r},Q=[...(0,c.useMemo)(()=>{let e=new Intl.DateTimeFormat(A.language,{weekday:`short`,timeZone:`UTC`});return Array.from({length:7},(t,n)=>e.format(new Date(Date.UTC(1970,0,4+n))))},[A.language])];return D===1&&Q.push(Q.shift()),(0,u.jsxs)(`div`,{className:(0,l.default)(`wim-calendar`,s.default.root,h&&s.default.disabled,e),onKeyDown:Y,role:`application`,"aria-label":k(`a11y.calendar`),...O,children:[(0,u.jsxs)(`div`,{className:s.default.header,children:[(0,u.jsx)(`button`,{type:`button`,className:s.default.navBtn,onClick:()=>q(-1),disabled:h,"aria-label":k(`a11y.prev_month`),children:(0,u.jsx)(a.Icon,{component:r.default,size:`sm`})}),(0,u.jsxs)(`div`,{className:s.default.title,"aria-live":`polite`,children:[N,` / `,P+1]}),(0,u.jsx)(`button`,{type:`button`,className:s.default.navBtn,onClick:()=>q(1),disabled:h,"aria-label":k(`a11y.next_month`),children:(0,u.jsx)(a.Icon,{component:i.default,size:`sm`})})]}),(0,u.jsxs)(`div`,{className:s.default.grid,role:`grid`,ref:B,children:[(0,u.jsx)(`div`,{role:`row`,children:Q.map((e,t)=>{let n=(t+(D||0))%7;return(0,u.jsx)(`div`,{role:`columnheader`,className:(0,l.default)(s.default.weekday,{[s.default.sunday]:n===0,[s.default.saturday]:n===6}),children:e},t)})}),(()=>{let e=[];for(let t=0;t<F.length;t+=7)e.push(F.slice(t,t+7));return e.map((e,t)=>(0,u.jsx)(`div`,{role:`row`,children:e.map((e,n)=>{let r=t*7+n,i=X(e.date),a=Z(e.date),c=h||I(e.date),d=o.isToday(e.date),f=!e.currentMonth,m=y&&o.isSameDay(e.date,z.start),g=y&&o.isSameDay(e.date,z.end),_=p(e.date),v=!!G&&o.isSameDay(e.date,G);return(0,u.jsx)(`button`,{type:`button`,role:`gridcell`,"aria-selected":i,"aria-current":d?`date`:void 0,"data-calendar-day":!0,"data-date":_,tabIndex:v?0:-1,onFocus:()=>H(e.date),"data-selected":i||void 0,"data-other-month":f||void 0,className:(0,l.default)(s.default.day,{[s.default.selected]:i,[s.default.inRange]:a,[s.default.rangeStart]:m,[s.default.rangeEnd]:g,[s.default.disabled]:c,[s.default.today]:d,[s.default.otherMonth]:f,[s.default.sunday]:e.date.getDay()===0,[s.default.saturday]:e.date.getDay()===6}),onClick:()=>J(e.date),onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),J(e.date))},disabled:c,"aria-label":_,children:e.date.getDate()},r)})},t))})()]})]})};exports.Calendar=h;
|
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { useWimTranslation as e } from "../../../i18n/useWimTranslation.js";
|
|
3
|
-
import t from "../../../
|
|
4
|
-
import n from "../../../icon/chevron-
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
import s from "./
|
|
8
|
-
import
|
|
9
|
-
import f from "
|
|
10
|
-
import
|
|
3
|
+
import { commonNs as t } from "../../../i18n/generated/common.js";
|
|
4
|
+
import n from "../../../icon/chevron-left.js";
|
|
5
|
+
import r from "../../../icon/chevron-right.js";
|
|
6
|
+
import { Icon as i } from "../../media/Icon/Icon.js";
|
|
7
|
+
import { isSameDay as a, isToday as o, useCalendar as s } from "./useCalendar.js";
|
|
8
|
+
import c from "./calendar.module.js";
|
|
9
|
+
import { useEffect as l, useMemo as u, useRef as d, useState as f } from "react";
|
|
10
|
+
import p from "classnames";
|
|
11
|
+
import { jsx as m, jsxs as h } from "react/jsx-runtime";
|
|
11
12
|
//#region src/components/data-display/Calendar/Calendar.tsx
|
|
12
|
-
var
|
|
13
|
+
var g = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), _ = (e, t) => {
|
|
13
14
|
let n = new Date(e.getFullYear(), e.getMonth() + t + 1, 0).getDate();
|
|
14
15
|
return new Date(e.getFullYear(), e.getMonth() + t, Math.min(e.getDate(), n));
|
|
15
|
-
},
|
|
16
|
-
let { t: N, i18n: P } = e(
|
|
17
|
-
defaultValue:
|
|
18
|
-
value:
|
|
16
|
+
}, v = (e) => `${e.getFullYear()}-${e.getMonth() + 1}-${e.getDate()}`, y = 366, b = ({ className: b, disabled: x = !1, value: S, defaultValue: C, onChange: ee, rangeMode: w = !1, range: T, defaultRange: E, onRangeChange: D, minDate: O, maxDate: k, disabledDates: A, isDateDisabled: j, weekStartsOn: M = 0, ...te }) => {
|
|
17
|
+
let { t: N, i18n: P } = e(t), { viewDate: F, setViewDate: I, year: L, month: R, daysGrid: z, isDateDisabled: B } = s({
|
|
18
|
+
defaultValue: C || w && E?.start || void 0,
|
|
19
|
+
value: S || w && T?.start || void 0,
|
|
19
20
|
minDate: O,
|
|
20
21
|
maxDate: k,
|
|
21
22
|
disabledDates: A,
|
|
22
|
-
isDateDisabled:
|
|
23
|
-
weekStartsOn:
|
|
24
|
-
}), [V, H] =
|
|
23
|
+
isDateDisabled: j,
|
|
24
|
+
weekStartsOn: M
|
|
25
|
+
}), [V, H] = f(E || {
|
|
25
26
|
start: null,
|
|
26
27
|
end: null
|
|
27
|
-
}), U = T || V, W =
|
|
28
|
-
|
|
28
|
+
}), U = T || V, W = d(null), [G, K] = f(F), q = d(!1), J = (e) => e.getFullYear() === L && e.getMonth() === R, Y = J(G) && !B(G) ? G : z.find((e) => e.currentMonth && !B(e.date))?.date ?? null;
|
|
29
|
+
l(() => {
|
|
29
30
|
q.current && (q.current = !1, W.current?.querySelector("[data-calendar-day][tabindex=\"0\"]")?.focus());
|
|
30
31
|
}, [
|
|
31
32
|
G,
|
|
@@ -34,13 +35,13 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
34
35
|
]);
|
|
35
36
|
let X = (e, t) => {
|
|
36
37
|
let n = e;
|
|
37
|
-
for (let e = 0; e <
|
|
38
|
+
for (let e = 0; e < y && B(n); e++) n = g(n, t);
|
|
38
39
|
return !B(n) && (q.current = !0, K(n), J(n) || I(new Date(n.getFullYear(), n.getMonth(), 1)), !0);
|
|
39
40
|
}, Z = (e) => {
|
|
40
|
-
let t =
|
|
41
|
+
let t = _(J(G) ? G : new Date(L, R, 1), e);
|
|
41
42
|
K(t), I(new Date(t.getFullYear(), t.getMonth(), 1));
|
|
42
43
|
}, Q = (e) => {
|
|
43
|
-
if (!(
|
|
44
|
+
if (!(x || B(e))) {
|
|
44
45
|
if (w) {
|
|
45
46
|
let t;
|
|
46
47
|
if (!U.start || U.start && U.end) t = {
|
|
@@ -58,12 +59,12 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
58
59
|
};
|
|
59
60
|
}
|
|
60
61
|
T || H(t), D?.(t);
|
|
61
|
-
} else
|
|
62
|
+
} else ee?.(e);
|
|
62
63
|
}
|
|
63
|
-
},
|
|
64
|
-
if (
|
|
65
|
-
let t = e.target.closest("[data-calendar-day]"), n = t ? z.find((e) =>
|
|
66
|
-
e.preventDefault(), !(n && X(
|
|
64
|
+
}, ne = (e) => {
|
|
65
|
+
if (x) return;
|
|
66
|
+
let t = e.target.closest("[data-calendar-day]"), n = t ? z.find((e) => v(e.date) === t.getAttribute("data-date"))?.date : void 0, r = (t) => {
|
|
67
|
+
e.preventDefault(), !(n && X(_(n, t), t > 0 ? -1 : 1)) && Z(t);
|
|
67
68
|
};
|
|
68
69
|
switch (e.key) {
|
|
69
70
|
case "PageUp":
|
|
@@ -84,51 +85,51 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
84
85
|
ArrowUp: -7,
|
|
85
86
|
ArrowDown: 7
|
|
86
87
|
}[e.key];
|
|
87
|
-
X(
|
|
88
|
+
X(g(n, t), t);
|
|
88
89
|
break;
|
|
89
90
|
}
|
|
90
91
|
case "Home":
|
|
91
92
|
case "End": {
|
|
92
93
|
if (!n) return;
|
|
93
94
|
e.preventDefault();
|
|
94
|
-
let t = (n.getDay() -
|
|
95
|
-
e.key === "Home" ? X(
|
|
95
|
+
let t = (n.getDay() - M + 7) % 7;
|
|
96
|
+
e.key === "Home" ? X(g(n, -t), 1) : X(g(n, 6 - t), -1);
|
|
96
97
|
break;
|
|
97
98
|
}
|
|
98
99
|
}
|
|
99
|
-
},
|
|
100
|
+
}, re = (e) => w ? a(e, U.start) || a(e, U.end) : a(e, S || null), ie = (e) => {
|
|
100
101
|
if (!w || !U.start || !U.end) return !1;
|
|
101
102
|
let t = new Date(e.getFullYear(), e.getMonth(), e.getDate()).getTime(), n = new Date(U.start.getFullYear(), U.start.getMonth(), U.start.getDate()).getTime(), r = new Date(U.end.getFullYear(), U.end.getMonth(), U.end.getDate()).getTime();
|
|
102
103
|
return t > n && t < r;
|
|
103
|
-
}, $ = [...
|
|
104
|
+
}, $ = [...u(() => {
|
|
104
105
|
let e = new Intl.DateTimeFormat(P.language, {
|
|
105
106
|
weekday: "short",
|
|
106
107
|
timeZone: "UTC"
|
|
107
108
|
});
|
|
108
109
|
return Array.from({ length: 7 }, (t, n) => e.format(new Date(Date.UTC(1970, 0, 4 + n))));
|
|
109
110
|
}, [P.language])];
|
|
110
|
-
return
|
|
111
|
-
className:
|
|
112
|
-
onKeyDown:
|
|
111
|
+
return M === 1 && $.push($.shift()), /* @__PURE__ */ h("div", {
|
|
112
|
+
className: p("wim-calendar", c.root, x && c.disabled, b),
|
|
113
|
+
onKeyDown: ne,
|
|
113
114
|
role: "application",
|
|
114
115
|
"aria-label": N("a11y.calendar"),
|
|
115
|
-
...
|
|
116
|
-
children: [/* @__PURE__ */
|
|
117
|
-
className:
|
|
116
|
+
...te,
|
|
117
|
+
children: [/* @__PURE__ */ h("div", {
|
|
118
|
+
className: c.header,
|
|
118
119
|
children: [
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
+
/* @__PURE__ */ m("button", {
|
|
120
121
|
type: "button",
|
|
121
|
-
className:
|
|
122
|
+
className: c.navBtn,
|
|
122
123
|
onClick: () => Z(-1),
|
|
123
|
-
disabled:
|
|
124
|
+
disabled: x,
|
|
124
125
|
"aria-label": N("a11y.prev_month"),
|
|
125
|
-
children: /* @__PURE__ */
|
|
126
|
-
component:
|
|
126
|
+
children: /* @__PURE__ */ m(i, {
|
|
127
|
+
component: n,
|
|
127
128
|
size: "sm"
|
|
128
129
|
})
|
|
129
130
|
}),
|
|
130
|
-
/* @__PURE__ */
|
|
131
|
-
className:
|
|
131
|
+
/* @__PURE__ */ h("div", {
|
|
132
|
+
className: c.title,
|
|
132
133
|
"aria-live": "polite",
|
|
133
134
|
children: [
|
|
134
135
|
L,
|
|
@@ -136,31 +137,31 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
136
137
|
R + 1
|
|
137
138
|
]
|
|
138
139
|
}),
|
|
139
|
-
/* @__PURE__ */
|
|
140
|
+
/* @__PURE__ */ m("button", {
|
|
140
141
|
type: "button",
|
|
141
|
-
className:
|
|
142
|
+
className: c.navBtn,
|
|
142
143
|
onClick: () => Z(1),
|
|
143
|
-
disabled:
|
|
144
|
+
disabled: x,
|
|
144
145
|
"aria-label": N("a11y.next_month"),
|
|
145
|
-
children: /* @__PURE__ */
|
|
146
|
-
component:
|
|
146
|
+
children: /* @__PURE__ */ m(i, {
|
|
147
|
+
component: r,
|
|
147
148
|
size: "sm"
|
|
148
149
|
})
|
|
149
150
|
})
|
|
150
151
|
]
|
|
151
|
-
}), /* @__PURE__ */
|
|
152
|
-
className:
|
|
152
|
+
}), /* @__PURE__ */ h("div", {
|
|
153
|
+
className: c.grid,
|
|
153
154
|
role: "grid",
|
|
154
155
|
ref: W,
|
|
155
|
-
children: [/* @__PURE__ */
|
|
156
|
+
children: [/* @__PURE__ */ m("div", {
|
|
156
157
|
role: "row",
|
|
157
158
|
children: $.map((e, t) => {
|
|
158
|
-
let n = (t + (
|
|
159
|
-
return /* @__PURE__ */
|
|
159
|
+
let n = (t + (M || 0)) % 7;
|
|
160
|
+
return /* @__PURE__ */ m("div", {
|
|
160
161
|
role: "columnheader",
|
|
161
|
-
className:
|
|
162
|
-
[
|
|
163
|
-
[
|
|
162
|
+
className: p(c.weekday, {
|
|
163
|
+
[c.sunday]: n === 0,
|
|
164
|
+
[c.saturday]: n === 6
|
|
164
165
|
}),
|
|
165
166
|
children: e
|
|
166
167
|
}, t);
|
|
@@ -168,31 +169,31 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
168
169
|
}), (() => {
|
|
169
170
|
let e = [];
|
|
170
171
|
for (let t = 0; t < z.length; t += 7) e.push(z.slice(t, t + 7));
|
|
171
|
-
return e.map((e, t) => /* @__PURE__ */
|
|
172
|
+
return e.map((e, t) => /* @__PURE__ */ m("div", {
|
|
172
173
|
role: "row",
|
|
173
174
|
children: e.map((e, n) => {
|
|
174
|
-
let r = t * 7 + n,
|
|
175
|
-
return /* @__PURE__ */
|
|
175
|
+
let r = t * 7 + n, i = re(e.date), s = ie(e.date), l = x || B(e.date), u = o(e.date), d = !e.currentMonth, f = w && a(e.date, U.start), h = w && a(e.date, U.end), g = v(e.date), _ = !!Y && a(e.date, Y);
|
|
176
|
+
return /* @__PURE__ */ m("button", {
|
|
176
177
|
type: "button",
|
|
177
178
|
role: "gridcell",
|
|
178
|
-
"aria-selected":
|
|
179
|
+
"aria-selected": i,
|
|
179
180
|
"aria-current": u ? "date" : void 0,
|
|
180
181
|
"data-calendar-day": !0,
|
|
181
182
|
"data-date": g,
|
|
182
|
-
tabIndex:
|
|
183
|
+
tabIndex: _ ? 0 : -1,
|
|
183
184
|
onFocus: () => K(e.date),
|
|
184
|
-
"data-selected":
|
|
185
|
+
"data-selected": i || void 0,
|
|
185
186
|
"data-other-month": d || void 0,
|
|
186
|
-
className:
|
|
187
|
-
[
|
|
188
|
-
[
|
|
189
|
-
[
|
|
190
|
-
[
|
|
191
|
-
[
|
|
192
|
-
[
|
|
193
|
-
[
|
|
194
|
-
[
|
|
195
|
-
[
|
|
187
|
+
className: p(c.day, {
|
|
188
|
+
[c.selected]: i,
|
|
189
|
+
[c.inRange]: s,
|
|
190
|
+
[c.rangeStart]: f,
|
|
191
|
+
[c.rangeEnd]: h,
|
|
192
|
+
[c.disabled]: l,
|
|
193
|
+
[c.today]: u,
|
|
194
|
+
[c.otherMonth]: d,
|
|
195
|
+
[c.sunday]: e.date.getDay() === 0,
|
|
196
|
+
[c.saturday]: e.date.getDay() === 6
|
|
196
197
|
}),
|
|
197
198
|
onClick: () => Q(e.date),
|
|
198
199
|
onKeyDown: (t) => {
|
|
@@ -209,4 +210,4 @@ var h = (e, t) => new Date(e.getFullYear(), e.getMonth(), e.getDate() + t), g =
|
|
|
209
210
|
});
|
|
210
211
|
};
|
|
211
212
|
//#endregion
|
|
212
|
-
export {
|
|
213
|
+
export { b as Calendar };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../node_modules/@radix-ui/react-slot/dist/index.cjs"),n=require("../../../i18n/useWimTranslation.cjs"),r=require("../../overlay/Tooltip/Tooltip.cjs"),
|
|
2
|
+
const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../node_modules/@radix-ui/react-slot/dist/index.cjs"),n=require("../../../i18n/useWimTranslation.cjs"),r=require("../../../i18n/generated/common.cjs"),i=require("../../../i18n/generated/components.cjs"),a=require("../../overlay/Tooltip/Tooltip.cjs"),o=require("./calendar-heatmap.module.cjs");let s=require("react");s=e.__toESM(s,1);let c=require("classnames");c=e.__toESM(c,1);let l=require("react/jsx-runtime");var u=s.default.forwardRef(({data:e=[],year:u=new Date().getFullYear(),getColorLevel:d=e=>e===0?0:e<3?1:e<6?2:e<9?3:4,className:f,tooltipFormatter:p,asChild:m=!1,children:h,...g},_)=>{let{t:v}=n.useWimTranslation([r.commonNs,i.componentsNs]),y=m?t.Root:`div`,b=(0,s.useMemo)(()=>{let t=new Map;return e.forEach(e=>t.set(e.date,e.count)),t},[e]),x=(0,s.useMemo)(()=>{let e=[],t=new Date(u,0,1),n=new Date(t);n.setDate(n.getDate()-n.getDay());for(let t=0;t<53;t++){let t=[];for(let e=0;e<7;e++){let e=n.toISOString().split(`T`)[0],r=b.get(e)||0;t.push({date:e,count:r,level:d(r)}),n.setDate(n.getDate()+1)}if(e.push(t),n.getFullYear()>u&&n.getMonth()>0)break}return e},[u,b,d]),S=[v(`sun`),v(`mon`),v(`tue`),v(`wed`),v(`thu`),v(`fri`),v(`sat`)];return(0,l.jsxs)(y,{className:(0,c.default)(`wim-calendar-heatmap`,o.default.root,f),ref:_,...g,children:[(0,l.jsx)(t.Slottable,{children:h}),(0,l.jsx)(`div`,{className:o.default.internalWrapper,children:(0,l.jsxs)(`div`,{className:o.default.grid,role:`grid`,"aria-readonly":`true`,children:[(0,l.jsx)(`div`,{className:o.default.labels,children:S.map((e,t)=>(0,l.jsx)(`span`,{children:e},t))}),x.map((e,t)=>(0,l.jsx)(`div`,{className:o.default.week,role:`row`,children:e.map(e=>{let t=p?p(e.date,e.count):`${e.date}: ${e.count} activities`;return(0,l.jsxs)(a.Tooltip,{children:[(0,l.jsx)(a.TooltipTrigger,{asChild:!0,children:(0,l.jsx)(`div`,{className:(0,c.default)(o.default.cell,o.default[`level${e.level}`]),"data-date":e.date,"data-count":e.count,role:`gridcell`,"aria-label":`${e.count} activities on ${e.date}`,"aria-selected":!1})}),(0,l.jsx)(a.TooltipContent,{children:t})]},e.date)})},t))]})}),(0,l.jsxs)(`div`,{className:o.default.footer,children:[(0,l.jsx)(`span`,{children:v(`calendar_heatmap.less`)}),(0,l.jsx)(`div`,{className:o.default.legend,children:[0,1,2,3,4].map(e=>(0,l.jsx)(`div`,{className:(0,c.default)(o.default.cell,o.default[`level${e}`])},e))}),(0,l.jsx)(`span`,{children:v(`calendar_heatmap.more`)})]})]})});u.displayName=`CalendarHeatmap`,exports.CalendarHeatmap=u;
|