@forgedevstack/bear 1.2.0 → 1.2.2
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/AnimatedCounter/AnimatedCounter.cjs +1 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.const.cjs +1 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.const.d.ts +5 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.const.js +7 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.d.ts +3 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.js +59 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.types.d.ts +26 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.utils.cjs +1 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.utils.d.ts +6 -0
- package/dist/components/AnimatedCounter/AnimatedCounter.utils.js +13 -0
- package/dist/components/AnimatedCounter/index.d.ts +2 -0
- package/dist/components/Autocomplete/Autocomplete.cjs +1 -1
- package/dist/components/Autocomplete/Autocomplete.const.cjs +1 -0
- package/dist/components/Autocomplete/Autocomplete.const.d.ts +1 -0
- package/dist/components/Autocomplete/Autocomplete.const.js +4 -0
- package/dist/components/Autocomplete/Autocomplete.js +110 -72
- package/dist/components/BottomSheet/BottomSheet.cjs +1 -1
- package/dist/components/BottomSheet/BottomSheet.js +74 -53
- package/dist/components/BottomSheet/BottomSheet.types.d.ts +2 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.cjs +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.js +126 -46
- package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts +11 -4
- package/dist/components/Breadcrumbs/index.d.ts +1 -1
- package/dist/components/Cascader/Cascader.cjs +1 -1
- package/dist/components/Cascader/Cascader.const.cjs +1 -1
- package/dist/components/Cascader/Cascader.const.d.ts +1 -1
- package/dist/components/Cascader/Cascader.const.js +1 -1
- package/dist/components/Cascader/Cascader.js +109 -146
- package/dist/components/Cascader/components/CascaderPanel/CascaderPanel.cjs +1 -0
- package/dist/components/Cascader/components/CascaderPanel/CascaderPanel.d.ts +3 -0
- package/dist/components/Cascader/components/CascaderPanel/CascaderPanel.js +50 -0
- package/dist/components/Cascader/components/CascaderPanel/index.d.ts +1 -0
- package/dist/components/Chart/BarChart.cjs +1 -0
- package/dist/components/Chart/BarChart.d.ts +3 -0
- package/dist/components/Chart/BarChart.js +65 -0
- package/dist/components/Chart/Chart.cjs +1 -1
- package/dist/components/Chart/Chart.const.cjs +1 -1
- package/dist/components/Chart/Chart.const.d.ts +7 -0
- package/dist/components/Chart/Chart.const.js +12 -2
- package/dist/components/Chart/Chart.d.ts +1 -13
- package/dist/components/Chart/Chart.js +18 -204
- package/dist/components/Chart/Chart.types.d.ts +7 -1
- package/dist/components/Chart/LineChart.cjs +1 -0
- package/dist/components/Chart/LineChart.d.ts +3 -0
- package/dist/components/Chart/LineChart.js +73 -0
- package/dist/components/Chart/PieChart.cjs +1 -0
- package/dist/components/Chart/PieChart.d.ts +3 -0
- package/dist/components/Chart/PieChart.js +110 -0
- package/dist/components/Chart/index.d.ts +4 -1
- package/dist/components/ColorPicker/ColorPicker.cjs +1 -1
- package/dist/components/ColorPicker/ColorPicker.const.cjs +1 -1
- package/dist/components/ColorPicker/ColorPicker.const.d.ts +4 -2
- package/dist/components/ColorPicker/ColorPicker.const.js +8 -6
- package/dist/components/ColorPicker/ColorPicker.js +135 -73
- package/dist/components/ColorPicker/ColorPicker.utils.cjs +1 -0
- package/dist/components/ColorPicker/ColorPicker.utils.d.ts +17 -0
- package/dist/components/ColorPicker/ColorPicker.utils.js +43 -0
- package/dist/components/CountdownTimer/CountdownTimer.cjs +1 -1
- package/dist/components/CountdownTimer/CountdownTimer.const.cjs +1 -1
- package/dist/components/CountdownTimer/CountdownTimer.const.d.ts +2 -0
- package/dist/components/CountdownTimer/CountdownTimer.const.js +29 -17
- package/dist/components/CountdownTimer/CountdownTimer.js +91 -61
- package/dist/components/CountdownTimer/CountdownTimer.types.d.ts +11 -2
- package/dist/components/CreditInput/CreditInput.cjs +1 -1
- package/dist/components/CreditInput/CreditInput.js +80 -78
- package/dist/components/CurrencyInput/CurrencyInput.cjs +1 -0
- package/dist/components/CurrencyInput/CurrencyInput.const.cjs +1 -0
- package/dist/components/CurrencyInput/CurrencyInput.const.d.ts +4 -0
- package/dist/components/CurrencyInput/CurrencyInput.const.js +19 -0
- package/dist/components/CurrencyInput/CurrencyInput.d.ts +3 -0
- package/dist/components/CurrencyInput/CurrencyInput.js +60 -0
- package/dist/components/CurrencyInput/CurrencyInput.types.d.ts +22 -0
- package/dist/components/CurrencyInput/CurrencyInput.utils.cjs +1 -0
- package/dist/components/CurrencyInput/CurrencyInput.utils.d.ts +2 -0
- package/dist/components/CurrencyInput/CurrencyInput.utils.js +14 -0
- package/dist/components/CurrencyInput/index.d.ts +2 -0
- package/dist/components/DateRangePicker/DateRangePicker.cjs +1 -1
- package/dist/components/DateRangePicker/DateRangePicker.js +89 -84
- package/dist/components/DiffSquares/DiffSquares.cjs +1 -0
- package/dist/components/DiffSquares/DiffSquares.const.cjs +1 -0
- package/dist/components/DiffSquares/DiffSquares.const.d.ts +3 -0
- package/dist/components/DiffSquares/DiffSquares.const.js +6 -0
- package/dist/components/DiffSquares/DiffSquares.d.ts +3 -0
- package/dist/components/DiffSquares/DiffSquares.js +70 -0
- package/dist/components/DiffSquares/DiffSquares.types.d.ts +23 -0
- package/dist/components/DiffSquares/DiffSquares.utils.cjs +1 -0
- package/dist/components/DiffSquares/DiffSquares.utils.d.ts +3 -0
- package/dist/components/DiffSquares/DiffSquares.utils.js +12 -0
- package/dist/components/DiffSquares/index.d.ts +2 -0
- package/dist/components/DiffViewer/DiffViewer.cjs +1 -1
- package/dist/components/DiffViewer/DiffViewer.const.cjs +1 -1
- package/dist/components/DiffViewer/DiffViewer.const.d.ts +6 -0
- package/dist/components/DiffViewer/DiffViewer.const.js +17 -4
- package/dist/components/DiffViewer/DiffViewer.d.ts +0 -14
- package/dist/components/DiffViewer/DiffViewer.js +97 -105
- package/dist/components/DiffViewer/DiffViewer.types.d.ts +5 -0
- package/dist/components/DiffViewer/index.d.ts +1 -1
- package/dist/components/Drawer/Drawer.cjs +1 -1
- package/dist/components/Drawer/Drawer.js +41 -41
- package/dist/components/Dropdown/Dropdown.cjs +1 -1
- package/dist/components/Dropdown/Dropdown.const.cjs +1 -0
- package/dist/components/Dropdown/Dropdown.const.d.ts +7 -0
- package/dist/components/Dropdown/Dropdown.const.js +10 -0
- package/dist/components/Dropdown/Dropdown.d.ts +0 -1
- package/dist/components/Dropdown/Dropdown.js +102 -92
- package/dist/components/Dropdown/Dropdown.types.d.ts +2 -0
- package/dist/components/Gauge/Gauge.cjs +1 -1
- package/dist/components/Gauge/Gauge.js +61 -50
- package/dist/components/Gauge/Gauge.types.d.ts +2 -0
- package/dist/components/GlowCard/GlowCard.cjs +1 -0
- package/dist/components/GlowCard/GlowCard.const.cjs +1 -0
- package/dist/components/GlowCard/GlowCard.const.d.ts +11 -0
- package/dist/components/GlowCard/GlowCard.const.js +13 -0
- package/dist/components/GlowCard/GlowCard.d.ts +3 -0
- package/dist/components/GlowCard/GlowCard.js +185 -0
- package/dist/components/GlowCard/GlowCard.types.d.ts +21 -0
- package/dist/components/GlowCard/index.d.ts +2 -0
- package/dist/components/Heatmap/Heatmap.cjs +1 -0
- package/dist/components/Heatmap/Heatmap.const.cjs +1 -0
- package/dist/components/Heatmap/Heatmap.const.d.ts +8 -0
- package/dist/components/Heatmap/Heatmap.const.js +11 -0
- package/dist/components/Heatmap/Heatmap.d.ts +3 -0
- package/dist/components/Heatmap/Heatmap.js +103 -0
- package/dist/components/Heatmap/Heatmap.types.d.ts +34 -0
- package/dist/components/Heatmap/Heatmap.utils.cjs +1 -0
- package/dist/components/Heatmap/Heatmap.utils.d.ts +2 -0
- package/dist/components/Heatmap/Heatmap.utils.js +18 -0
- package/dist/components/Heatmap/index.d.ts +2 -0
- package/dist/components/HoverCard/HoverCard.cjs +6 -6
- package/dist/components/HoverCard/HoverCard.js +72 -54
- package/dist/components/Icon/icons/status.js +1 -1
- package/dist/components/ImageAnnotation/ImageAnnotation.cjs +1 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.const.cjs +1 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.const.d.ts +3 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.const.js +6 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.d.ts +3 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.js +113 -0
- package/dist/components/ImageAnnotation/ImageAnnotation.types.d.ts +28 -0
- package/dist/components/ImageAnnotation/index.d.ts +2 -0
- package/dist/components/MediaPlayer/MediaPlayer.cjs +1 -0
- package/dist/components/MediaPlayer/MediaPlayer.const.cjs +1 -0
- package/dist/components/MediaPlayer/MediaPlayer.const.d.ts +36 -0
- package/dist/components/MediaPlayer/MediaPlayer.const.js +11 -0
- package/dist/components/MediaPlayer/MediaPlayer.d.ts +3 -0
- package/dist/components/MediaPlayer/MediaPlayer.js +279 -0
- package/dist/components/MediaPlayer/MediaPlayer.types.d.ts +69 -0
- package/dist/components/MediaPlayer/MediaPlayer.utils.cjs +1 -0
- package/dist/components/MediaPlayer/MediaPlayer.utils.d.ts +1 -0
- package/dist/components/MediaPlayer/MediaPlayer.utils.js +7 -0
- package/dist/components/MediaPlayer/index.d.ts +2 -0
- package/dist/components/MentionsInput/MentionsInput.cjs +1 -1
- package/dist/components/MentionsInput/MentionsInput.js +106 -83
- package/dist/components/Menu/Menu.cjs +1 -1
- package/dist/components/Menu/Menu.js +91 -80
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.const.cjs +1 -1
- package/dist/components/Modal/Modal.const.d.ts +1 -1
- package/dist/components/Modal/Modal.const.js +1 -1
- package/dist/components/Modal/Modal.js +50 -44
- package/dist/components/Modal/Modal.types.d.ts +6 -0
- package/dist/components/MultiSelect/MultiSelect.cjs +1 -1
- package/dist/components/MultiSelect/MultiSelect.js +123 -78
- package/dist/components/NavigableSelect/NavigableSelect.cjs +1 -1
- package/dist/components/NavigableSelect/NavigableSelect.const.cjs +1 -1
- package/dist/components/NavigableSelect/NavigableSelect.const.d.ts +1 -1
- package/dist/components/NavigableSelect/NavigableSelect.const.js +1 -1
- package/dist/components/NavigableSelect/NavigableSelect.js +167 -143
- package/dist/components/NotificationCenter/NotificationCenter.cjs +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.const.cjs +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.const.d.ts +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.const.js +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.js +87 -81
- package/dist/components/OTPInput/OTPInput.cjs +1 -1
- package/dist/components/OTPInput/OTPInput.const.cjs +1 -0
- package/dist/components/OTPInput/OTPInput.const.d.ts +6 -0
- package/dist/components/OTPInput/OTPInput.const.js +14 -0
- package/dist/components/OTPInput/OTPInput.js +99 -65
- package/dist/components/OTPInput/OTPInput.types.d.ts +7 -0
- package/dist/components/PhoneInput/PhoneInput.cjs +1 -1
- package/dist/components/PhoneInput/PhoneInput.const.cjs +1 -1
- package/dist/components/PhoneInput/PhoneInput.const.d.ts +1 -1
- package/dist/components/PhoneInput/PhoneInput.const.js +1 -1
- package/dist/components/PhoneInput/PhoneInput.js +88 -83
- package/dist/components/Popconfirm/Popconfirm.cjs +1 -1
- package/dist/components/Popconfirm/Popconfirm.const.cjs +1 -1
- package/dist/components/Popconfirm/Popconfirm.const.d.ts +1 -3
- package/dist/components/Popconfirm/Popconfirm.const.js +12 -18
- package/dist/components/Popconfirm/Popconfirm.js +71 -51
- package/dist/components/Popover/Popover.cjs +1 -1
- package/dist/components/Popover/Popover.js +36 -31
- package/dist/components/Portal/Portal.cjs +1 -1
- package/dist/components/Portal/Portal.d.ts +0 -3
- package/dist/components/Portal/Portal.js +4 -10
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.js +71 -51
- package/dist/components/Stepper/Stepper.cjs +1 -1
- package/dist/components/Stepper/Stepper.const.cjs +1 -1
- package/dist/components/Stepper/Stepper.const.d.ts +26 -4
- package/dist/components/Stepper/Stepper.const.js +39 -20
- package/dist/components/Stepper/Stepper.d.ts +3 -10
- package/dist/components/Stepper/Stepper.js +189 -130
- package/dist/components/Stepper/Stepper.types.d.ts +14 -0
- package/dist/components/Stepper/Stepper.utils.cjs +1 -0
- package/dist/components/Stepper/Stepper.utils.d.ts +12 -0
- package/dist/components/Stepper/Stepper.utils.js +19 -0
- package/dist/components/Stepper/components/StepperControls.cjs +1 -0
- package/dist/components/Stepper/components/StepperControls.d.ts +2 -0
- package/dist/components/Stepper/components/StepperControls.js +32 -0
- package/dist/components/Stepper/index.d.ts +2 -1
- package/dist/components/Tabs/TabList.cjs +1 -1
- package/dist/components/Tabs/TabList.js +72 -57
- package/dist/components/Tabs/Tabs.types.d.ts +4 -2
- package/dist/components/Tabs/index.d.ts +2 -2
- package/dist/components/TagCloud/TagCloud.cjs +1 -0
- package/dist/components/TagCloud/TagCloud.const.cjs +1 -0
- package/dist/components/TagCloud/TagCloud.const.d.ts +5 -0
- package/dist/components/TagCloud/TagCloud.const.js +8 -0
- package/dist/components/TagCloud/TagCloud.d.ts +3 -0
- package/dist/components/TagCloud/TagCloud.js +76 -0
- package/dist/components/TagCloud/TagCloud.types.d.ts +26 -0
- package/dist/components/TagCloud/index.d.ts +2 -0
- package/dist/components/TimePicker/components/TimePickerDialDropdown/TimePickerDialDropdown.cjs +1 -1
- package/dist/components/TimePicker/components/TimePickerDialDropdown/TimePickerDialDropdown.js +26 -26
- package/dist/components/TimePicker/helpers/ClockFaceSvg.cjs +1 -1
- package/dist/components/TimePicker/helpers/ClockFaceSvg.js +17 -17
- package/dist/components/TimelineChart/TimelineChart.cjs +1 -0
- package/dist/components/TimelineChart/TimelineChart.const.cjs +1 -0
- package/dist/components/TimelineChart/TimelineChart.const.d.ts +6 -0
- package/dist/components/TimelineChart/TimelineChart.const.js +9 -0
- package/dist/components/TimelineChart/TimelineChart.d.ts +3 -0
- package/dist/components/TimelineChart/TimelineChart.js +65 -0
- package/dist/components/TimelineChart/TimelineChart.types.d.ts +31 -0
- package/dist/components/TimelineChart/index.d.ts +2 -0
- package/dist/components/Toast/Toast.cjs +1 -1
- package/dist/components/Toast/Toast.js +86 -82
- package/dist/components/Toast/Toast.types.d.ts +2 -0
- package/dist/components/Tooltip/Tooltip.cjs +1 -1
- package/dist/components/Tooltip/Tooltip.js +52 -44
- package/dist/components/TreeSelect/TreeSelect.cjs +1 -1
- package/dist/components/TreeSelect/TreeSelect.const.cjs +1 -1
- package/dist/components/TreeSelect/TreeSelect.const.d.ts +1 -1
- package/dist/components/TreeSelect/TreeSelect.const.js +3 -3
- package/dist/components/TreeSelect/TreeSelect.js +120 -88
- package/dist/components/Watermark/Watermark.cjs +1 -1
- package/dist/components/Watermark/Watermark.const.cjs +1 -1
- package/dist/components/Watermark/Watermark.const.d.ts +6 -3
- package/dist/components/Watermark/Watermark.const.js +13 -11
- package/dist/components/Watermark/Watermark.js +87 -61
- package/dist/components/Watermark/Watermark.types.d.ts +2 -0
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.d.ts +22 -4
- package/dist/components/index.js +319 -296
- package/dist/hooks/index.cjs +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.js +55 -54
- package/dist/hooks/useClickOutside.cjs +1 -1
- package/dist/hooks/useClickOutside.d.ts +4 -11
- package/dist/hooks/useClickOutside.js +26 -7
- package/dist/index.cjs +1 -1
- package/dist/index.js +412 -388
- package/dist/styles/_effects.css +32 -0
- package/dist/styles.css +1 -1
- package/dist/utils/maxVisible.utils.cjs +1 -0
- package/dist/utils/maxVisible.utils.d.ts +12 -0
- package/dist/utils/maxVisible.utils.js +15 -0
- package/package.json +1 -1
- package/dist/components/HoverCard/HoverCard.utils.cjs +0 -1
- package/dist/components/HoverCard/HoverCard.utils.js +0 -23
|
@@ -1,127 +1,119 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useMemo as
|
|
3
|
-
import { cn as
|
|
4
|
-
import { useBear as
|
|
5
|
-
import { Typography as
|
|
6
|
-
import { LINE_NUMBER_WIDTH as
|
|
7
|
-
import { computeDiff as
|
|
8
|
-
const
|
|
9
|
-
oldValue:
|
|
10
|
-
newValue:
|
|
11
|
-
viewMode:
|
|
12
|
-
showLineNumbers:
|
|
13
|
-
oldTitle:
|
|
14
|
-
newTitle:
|
|
15
|
-
showStats:
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
import { jsxs as t, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { useState as R, useMemo as x, useCallback as y } from "react";
|
|
3
|
+
import { cn as o } from "../../utils/cn.js";
|
|
4
|
+
import { useBear as W } from "../../context/BearProvider.js";
|
|
5
|
+
import { Typography as n } from "../Typography/Typography.js";
|
|
6
|
+
import { DEFAULT_OLD_TITLE as j, DEFAULT_NEW_TITLE as G, DEFAULT_SPACING as H, LINE_NUMBER_WIDTH as P, LINE_SPACING as V, DIFF_COLORS as $, LINE_HOVER_LABELS as q } from "./DiffViewer.const.js";
|
|
7
|
+
import { computeDiff as z, computeStats as J } from "./DiffViewer.utils.js";
|
|
8
|
+
const ae = ({
|
|
9
|
+
oldValue: p,
|
|
10
|
+
newValue: f,
|
|
11
|
+
viewMode: L = "split",
|
|
12
|
+
showLineNumbers: E = !0,
|
|
13
|
+
oldTitle: k = j,
|
|
14
|
+
newTitle: _ = G,
|
|
15
|
+
showStats: D = !0,
|
|
16
|
+
spacing: T = H,
|
|
17
|
+
showLineHoverInfo: i = !1,
|
|
18
|
+
className: w,
|
|
19
|
+
testId: v
|
|
18
20
|
}) => {
|
|
19
|
-
const { mode:
|
|
21
|
+
const { mode: C } = W(), S = C === "dark", [A, b] = R(null), d = x(() => z(p, f), [p, f]), c = x(() => J(d), [d]), h = V[T], B = y((e) => {
|
|
22
|
+
i && b(e);
|
|
23
|
+
}, [i]), F = y(() => {
|
|
24
|
+
b(null);
|
|
25
|
+
}, []), l = (e) => E ? /* @__PURE__ */ a(
|
|
20
26
|
"span",
|
|
21
27
|
{
|
|
22
|
-
className: "select-none text-gray-400 dark:text-gray-600 text-right pr-3",
|
|
23
|
-
style: { minWidth:
|
|
28
|
+
className: o("select-none text-gray-400 dark:text-gray-600 text-right pr-3", h),
|
|
29
|
+
style: { minWidth: P },
|
|
24
30
|
children: e ?? ""
|
|
25
31
|
}
|
|
26
|
-
) : null,
|
|
27
|
-
const
|
|
28
|
-
return /* @__PURE__ */
|
|
32
|
+
) : null, m = (e, r, s) => {
|
|
33
|
+
const g = $[r], U = r === "add" ? "+" : r === "remove" ? "-" : " ", I = s != null && A === s;
|
|
34
|
+
return /* @__PURE__ */ t(
|
|
29
35
|
"div",
|
|
30
36
|
{
|
|
31
|
-
className: "flex font-mono text-sm",
|
|
37
|
+
className: o("flex font-mono text-sm relative group", h),
|
|
32
38
|
style: {
|
|
33
|
-
backgroundColor:
|
|
34
|
-
borderLeft: `3px solid ${
|
|
39
|
+
backgroundColor: g.bg,
|
|
40
|
+
borderLeft: `3px solid ${g.border}`
|
|
35
41
|
},
|
|
42
|
+
onMouseEnter: () => s != null && B(s),
|
|
43
|
+
onMouseLeave: F,
|
|
36
44
|
children: [
|
|
37
|
-
/* @__PURE__ */
|
|
45
|
+
/* @__PURE__ */ a(
|
|
38
46
|
"span",
|
|
39
47
|
{
|
|
40
48
|
className: "px-2 select-none font-bold",
|
|
41
|
-
style: { color:
|
|
42
|
-
children:
|
|
49
|
+
style: { color: g.text },
|
|
50
|
+
children: U
|
|
43
51
|
}
|
|
44
52
|
),
|
|
45
|
-
/* @__PURE__ */
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"rounded-lg overflow-hidden border",
|
|
57
|
-
b ? "bg-gray-900 border-gray-700" : "bg-white border-gray-200",
|
|
58
|
-
p
|
|
59
|
-
),
|
|
60
|
-
"data-testid": g,
|
|
61
|
-
children: [
|
|
62
|
-
f && /* @__PURE__ */ r("div", { className: "flex items-center gap-4 px-4 py-2 border-b border-gray-200 dark:border-gray-700", children: [
|
|
63
|
-
/* @__PURE__ */ r(i, { variant: "caption", className: "text-green-600", children: [
|
|
64
|
-
"+",
|
|
65
|
-
t.additions,
|
|
66
|
-
" additions"
|
|
67
|
-
] }),
|
|
68
|
-
/* @__PURE__ */ r(i, { variant: "caption", className: "text-red-600", children: [
|
|
69
|
-
"-",
|
|
70
|
-
t.deletions,
|
|
71
|
-
" deletions"
|
|
72
|
-
] })
|
|
73
|
-
] }),
|
|
74
|
-
/* @__PURE__ */ d("div", { className: "overflow-x-auto", children: o.map((e, a) => /* @__PURE__ */ r("div", { className: "flex", children: [
|
|
75
|
-
n(e.oldLineNumber || e.newLineNumber),
|
|
76
|
-
/* @__PURE__ */ d("div", { className: "flex-1", children: s(e.content, e.type) })
|
|
77
|
-
] }, a)) })
|
|
53
|
+
/* @__PURE__ */ a("span", { className: "flex-1 whitespace-pre", children: e }),
|
|
54
|
+
i && I && r !== "context" && /* @__PURE__ */ a(
|
|
55
|
+
"span",
|
|
56
|
+
{
|
|
57
|
+
className: o(
|
|
58
|
+
"absolute right-2 top-1/2 -translate-y-1/2 text-xs px-2 py-0.5 rounded",
|
|
59
|
+
r === "add" ? "bg-green-500/20 text-green-600 dark:text-green-400" : "bg-red-500/20 text-red-600 dark:text-red-400"
|
|
60
|
+
),
|
|
61
|
+
children: q[r]
|
|
62
|
+
}
|
|
63
|
+
)
|
|
78
64
|
]
|
|
79
65
|
}
|
|
80
66
|
);
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
t.deletions,
|
|
102
|
-
" deletions"
|
|
103
|
-
] })
|
|
104
|
-
] }),
|
|
105
|
-
/* @__PURE__ */ r("div", { className: "grid grid-cols-2 divide-x divide-gray-200 dark:divide-gray-700", children: [
|
|
106
|
-
/* @__PURE__ */ r("div", { children: [
|
|
107
|
-
/* @__PURE__ */ d("div", { className: "px-3 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ d(i, { variant: "caption", className: "font-semibold", children: N }) }),
|
|
108
|
-
/* @__PURE__ */ d("div", { className: "overflow-x-auto", children: k.map((e, a) => /* @__PURE__ */ r("div", { className: "flex", children: [
|
|
109
|
-
n(e.oldLineNumber),
|
|
110
|
-
/* @__PURE__ */ d("div", { className: "flex-1", children: s(e.content, e.type === "remove" ? "remove" : "context") })
|
|
111
|
-
] }, a)) })
|
|
112
|
-
] }),
|
|
113
|
-
/* @__PURE__ */ r("div", { children: [
|
|
114
|
-
/* @__PURE__ */ d("div", { className: "px-3 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ d(i, { variant: "caption", className: "font-semibold", children: u }) }),
|
|
115
|
-
/* @__PURE__ */ d("div", { className: "overflow-x-auto", children: L.map((e, a) => /* @__PURE__ */ r("div", { className: "flex", children: [
|
|
116
|
-
n(e.newLineNumber),
|
|
117
|
-
/* @__PURE__ */ d("div", { className: "flex-1", children: s(e.content, e.type === "add" ? "add" : "context") })
|
|
118
|
-
] }, a)) })
|
|
119
|
-
] })
|
|
120
|
-
] })
|
|
121
|
-
]
|
|
122
|
-
}
|
|
67
|
+
}, u = () => D ? /* @__PURE__ */ t("div", { className: "flex items-center gap-4 px-4 py-2 border-b border-gray-200 dark:border-gray-700", children: [
|
|
68
|
+
/* @__PURE__ */ t(n, { variant: "caption", className: "text-green-600", children: [
|
|
69
|
+
"+",
|
|
70
|
+
c.additions,
|
|
71
|
+
" additions"
|
|
72
|
+
] }),
|
|
73
|
+
/* @__PURE__ */ t(n, { variant: "caption", className: "text-red-600", children: [
|
|
74
|
+
"-",
|
|
75
|
+
c.deletions,
|
|
76
|
+
" deletions"
|
|
77
|
+
] }),
|
|
78
|
+
/* @__PURE__ */ t(n, { variant: "caption", className: "text-gray-500", children: [
|
|
79
|
+
c.unchanged,
|
|
80
|
+
" unchanged"
|
|
81
|
+
] })
|
|
82
|
+
] }) : null, N = o(
|
|
83
|
+
"Bear-DiffViewer",
|
|
84
|
+
"rounded-lg overflow-hidden border",
|
|
85
|
+
S ? "bg-gray-900 border-gray-700" : "bg-white border-gray-200",
|
|
86
|
+
w
|
|
123
87
|
);
|
|
88
|
+
if (L === "unified")
|
|
89
|
+
return /* @__PURE__ */ t("div", { className: N, "data-testid": v, children: [
|
|
90
|
+
u(),
|
|
91
|
+
/* @__PURE__ */ a("div", { className: "overflow-x-auto", children: d.map((e, r) => /* @__PURE__ */ t("div", { className: "flex", children: [
|
|
92
|
+
l(e.oldLineNumber || e.newLineNumber),
|
|
93
|
+
/* @__PURE__ */ a("div", { className: "flex-1", children: m(e.content, e.type, r) })
|
|
94
|
+
] }, r)) })
|
|
95
|
+
] });
|
|
96
|
+
const M = d.filter((e) => e.type !== "add"), O = d.filter((e) => e.type !== "remove");
|
|
97
|
+
return /* @__PURE__ */ t("div", { className: N, "data-testid": v, children: [
|
|
98
|
+
u(),
|
|
99
|
+
/* @__PURE__ */ t("div", { className: "grid grid-cols-2 divide-x divide-gray-200 dark:divide-gray-700", children: [
|
|
100
|
+
/* @__PURE__ */ t("div", { children: [
|
|
101
|
+
/* @__PURE__ */ a("div", { className: "px-3 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ a(n, { variant: "caption", className: "font-semibold", children: k }) }),
|
|
102
|
+
/* @__PURE__ */ a("div", { className: "overflow-x-auto", children: M.map((e, r) => /* @__PURE__ */ t("div", { className: "flex", children: [
|
|
103
|
+
l(e.oldLineNumber),
|
|
104
|
+
/* @__PURE__ */ a("div", { className: "flex-1", children: m(e.content, e.type === "remove" ? "remove" : "context", r) })
|
|
105
|
+
] }, r)) })
|
|
106
|
+
] }),
|
|
107
|
+
/* @__PURE__ */ t("div", { children: [
|
|
108
|
+
/* @__PURE__ */ a("div", { className: "px-3 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700", children: /* @__PURE__ */ a(n, { variant: "caption", className: "font-semibold", children: _ }) }),
|
|
109
|
+
/* @__PURE__ */ a("div", { className: "overflow-x-auto", children: O.map((e, r) => /* @__PURE__ */ t("div", { className: "flex", children: [
|
|
110
|
+
l(e.newLineNumber),
|
|
111
|
+
/* @__PURE__ */ a("div", { className: "flex-1", children: m(e.content, e.type === "add" ? "add" : "context", r) })
|
|
112
|
+
] }, r)) })
|
|
113
|
+
] })
|
|
114
|
+
] })
|
|
115
|
+
] });
|
|
124
116
|
};
|
|
125
117
|
export {
|
|
126
|
-
|
|
118
|
+
ae as DiffViewer
|
|
127
119
|
};
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export type DiffViewMode = 'split' | 'unified';
|
|
5
5
|
export type DiffLineType = 'add' | 'remove' | 'context';
|
|
6
|
+
export type DiffSpacing = 'compact' | 'comfortable' | 'spacious';
|
|
6
7
|
export interface DiffViewerProps {
|
|
7
8
|
/** Original text (left side) */
|
|
8
9
|
oldValue: string;
|
|
@@ -22,6 +23,10 @@ export interface DiffViewerProps {
|
|
|
22
23
|
newTitle?: string;
|
|
23
24
|
/** Show diff statistics */
|
|
24
25
|
showStats?: boolean;
|
|
26
|
+
/** Line spacing density */
|
|
27
|
+
spacing?: DiffSpacing;
|
|
28
|
+
/** Show a tooltip on line hover with change type */
|
|
29
|
+
showLineHoverInfo?: boolean;
|
|
25
30
|
/** Custom class name */
|
|
26
31
|
className?: string;
|
|
27
32
|
/** Test ID */
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { DiffViewer } from './DiffViewer';
|
|
2
|
-
export type { DiffViewerProps, DiffViewMode, DiffLine, DiffStats } from './DiffViewer.types';
|
|
2
|
+
export type { DiffViewerProps, DiffViewMode, DiffLine, DiffStats, DiffSpacing } from './DiffViewer.types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),a=require("react"),j=require("react-dom"),x=require("../../utils/cn.cjs"),N=require("../Icon/index.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),a=require("react"),j=require("react-dom"),x=require("../../utils/cn.cjs"),N=require("../Icon/index.cjs"),m=300,q={left:{sm:"bear-w-full sm:bear-w-64 bear-max-w-full sm:bear-max-w-none",md:"bear-w-full sm:bear-w-80 bear-max-w-full sm:bear-max-w-none",lg:"bear-w-full sm:bear-w-96 bear-max-w-full sm:bear-max-w-none",xl:"bear-w-full sm:bear-w-[32rem] bear-max-w-full sm:bear-max-w-none"},right:{sm:"bear-w-full sm:bear-w-64 bear-max-w-full sm:bear-max-w-none",md:"bear-w-full sm:bear-w-80 bear-max-w-full sm:bear-max-w-none",lg:"bear-w-full sm:bear-w-96 bear-max-w-full sm:bear-max-w-none",xl:"bear-w-full sm:bear-w-[32rem] bear-max-w-full sm:bear-max-w-none"},top:{sm:"bear-h-32",md:"bear-h-48",lg:"bear-h-64",xl:"bear-h-96"},bottom:{sm:"bear-h-32",md:"bear-h-48",lg:"bear-h-64",xl:"bear-h-96"}},C={left:"bear-left-0 bear-top-0 bear-h-full",right:"bear-right-0 bear-top-0 bear-h-full",top:"bear-top-0 bear-left-0 bear-w-full",bottom:"bear-bottom-0 bear-left-0 bear-w-full"},D={left:"bear-translate-x-0",right:"bear-translate-x-0",top:"bear-translate-y-0",bottom:"bear-translate-y-0"},E={left:"-bear-translate-x-full",right:"bear-translate-x-full",top:"-bear-translate-y-full",bottom:"bear-translate-y-full"},S=({isOpen:n,onClose:l,title:s,children:h,side:e="right",size:g="md",showCloseButton:i=!0,closeOnBackdrop:y=!0,closeOnEscape:d=!0,className:p})=>{const[t,f]=a.useState(n),[c,o]=a.useState(!1),[v,w]=a.useState(!1);a.useEffect(()=>{if(n){f(!0),o(!1);const b=requestAnimationFrame(()=>w(!0));return()=>cancelAnimationFrame(b)}if(t){w(!1),o(!0);const b=setTimeout(()=>{f(!1),o(!1)},m);return()=>clearTimeout(b)}},[n,t]);const u=a.useCallback(b=>{d&&b.key==="Escape"&&l()},[d,l]);if(a.useEffect(()=>(t&&(document.addEventListener("keydown",u),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",u),document.body.style.overflow=""}),[t,u]),!t)return null;const k=r.jsxs("div",{className:"bear-fixed bear-inset-0 bear-z-[11000]",children:[r.jsx("div",{className:x.cn("bear-absolute bear-inset-0 bear-bg-black/60 bear-backdrop-blur-sm bear-transition-opacity",c?"bear-opacity-0":"bear-opacity-100"),style:{transitionDuration:`${m}ms`},onClick:y?l:void 0,"aria-hidden":"true"}),r.jsxs("div",{role:"dialog","aria-modal":"true","aria-labelledby":s?"drawer-title":void 0,className:x.cn("bear-absolute bear-bg-white dark:bear-bg-neutral-900 bear-shadow-2xl","bear-border-neutral-200 dark:bear-border-neutral-700 bear-overflow-hidden","bear-transform bear-transition-transform",e==="left"&&"bear-border-r",e==="right"&&"bear-border-l",e==="top"&&"bear-border-b",e==="bottom"&&"bear-border-t",C[e],q[e][g],v&&!c?D[e]:E[e],p),style:{transitionDuration:`${m}ms`},children:[(s||i)&&r.jsxs("div",{className:"bear-flex bear-items-center bear-justify-between bear-px-4 bear-py-3 bear-border-b bear-border-neutral-200 dark:bear-border-neutral-700",children:[s&&r.jsx("h2",{id:"drawer-title",className:"bear-text-lg bear-font-semibold bear-text-neutral-900 dark:bear-text-white",children:s}),i&&r.jsx("button",{onClick:l,className:"bear-p-1 bear-rounded-lg bear-text-neutral-500 dark:bear-text-neutral-400 hover:bear-text-neutral-900 dark:hover:bear-text-white hover:bear-bg-neutral-100 dark:hover:bear-bg-neutral-700 bear-transition-colors","aria-label":"Close drawer",children:r.jsx(N.XIcon,{className:"bear-w-5 bear-h-5"})})]}),r.jsx("div",{className:"bear-flex-1 bear-overflow-y-auto bear-p-4 bear-text-neutral-700 dark:bear-text-neutral-300",children:h})]})]});return j.createPortal(k,document.body)};exports.Drawer=S;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
1
|
+
import { jsxs as m, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { useState as u, useEffect as h, useCallback as A } from "react";
|
|
3
3
|
import { createPortal as E } from "react-dom";
|
|
4
|
-
import { cn as
|
|
4
|
+
import { cn as p } from "../../utils/cn.js";
|
|
5
5
|
import { XIcon as I } from "../Icon/index.js";
|
|
6
|
-
const
|
|
6
|
+
const i = 300, D = {
|
|
7
7
|
left: {
|
|
8
|
-
sm: "bear-w-64",
|
|
9
|
-
md: "bear-w-80",
|
|
10
|
-
lg: "bear-w-96",
|
|
11
|
-
xl: "bear-w-[32rem]"
|
|
8
|
+
sm: "bear-w-full sm:bear-w-64 bear-max-w-full sm:bear-max-w-none",
|
|
9
|
+
md: "bear-w-full sm:bear-w-80 bear-max-w-full sm:bear-max-w-none",
|
|
10
|
+
lg: "bear-w-full sm:bear-w-96 bear-max-w-full sm:bear-max-w-none",
|
|
11
|
+
xl: "bear-w-full sm:bear-w-[32rem] bear-max-w-full sm:bear-max-w-none"
|
|
12
12
|
},
|
|
13
13
|
right: {
|
|
14
|
-
sm: "bear-w-64",
|
|
15
|
-
md: "bear-w-80",
|
|
16
|
-
lg: "bear-w-96",
|
|
17
|
-
xl: "bear-w-[32rem]"
|
|
14
|
+
sm: "bear-w-full sm:bear-w-64 bear-max-w-full sm:bear-max-w-none",
|
|
15
|
+
md: "bear-w-full sm:bear-w-80 bear-max-w-full sm:bear-max-w-none",
|
|
16
|
+
lg: "bear-w-full sm:bear-w-96 bear-max-w-full sm:bear-max-w-none",
|
|
17
|
+
xl: "bear-w-full sm:bear-w-[32rem] bear-max-w-full sm:bear-max-w-none"
|
|
18
18
|
},
|
|
19
19
|
top: {
|
|
20
20
|
sm: "bear-h-32",
|
|
@@ -44,61 +44,61 @@ const m = 300, D = {
|
|
|
44
44
|
top: "-bear-translate-y-full",
|
|
45
45
|
bottom: "bear-translate-y-full"
|
|
46
46
|
}, _ = ({
|
|
47
|
-
isOpen:
|
|
47
|
+
isOpen: o,
|
|
48
48
|
onClose: b,
|
|
49
|
-
title:
|
|
49
|
+
title: l,
|
|
50
50
|
children: g,
|
|
51
51
|
side: e = "right",
|
|
52
52
|
size: y = "md",
|
|
53
|
-
showCloseButton:
|
|
53
|
+
showCloseButton: d = !0,
|
|
54
54
|
closeOnBackdrop: v = !0,
|
|
55
|
-
closeOnEscape:
|
|
55
|
+
closeOnEscape: f = !0,
|
|
56
56
|
className: k
|
|
57
57
|
}) => {
|
|
58
|
-
const [r,
|
|
59
|
-
|
|
60
|
-
if (
|
|
61
|
-
|
|
62
|
-
const a = requestAnimationFrame(() =>
|
|
58
|
+
const [r, w] = u(o), [c, n] = u(!1), [N, x] = u(!1);
|
|
59
|
+
h(() => {
|
|
60
|
+
if (o) {
|
|
61
|
+
w(!0), n(!1);
|
|
62
|
+
const a = requestAnimationFrame(() => x(!0));
|
|
63
63
|
return () => cancelAnimationFrame(a);
|
|
64
64
|
}
|
|
65
65
|
if (r) {
|
|
66
|
-
|
|
66
|
+
x(!1), n(!0);
|
|
67
67
|
const a = setTimeout(() => {
|
|
68
|
-
|
|
69
|
-
},
|
|
68
|
+
w(!1), n(!1);
|
|
69
|
+
}, i);
|
|
70
70
|
return () => clearTimeout(a);
|
|
71
71
|
}
|
|
72
|
-
}, [
|
|
72
|
+
}, [o, r]);
|
|
73
73
|
const s = A(
|
|
74
74
|
(a) => {
|
|
75
|
-
|
|
75
|
+
f && a.key === "Escape" && b();
|
|
76
76
|
},
|
|
77
|
-
[
|
|
77
|
+
[f, b]
|
|
78
78
|
);
|
|
79
|
-
if (
|
|
79
|
+
if (h(() => (r && (document.addEventListener("keydown", s), document.body.style.overflow = "hidden"), () => {
|
|
80
80
|
document.removeEventListener("keydown", s), document.body.style.overflow = "";
|
|
81
81
|
}), [r, s]), !r) return null;
|
|
82
|
-
const C = /* @__PURE__ */
|
|
82
|
+
const C = /* @__PURE__ */ m("div", { className: "bear-fixed bear-inset-0 bear-z-[11000]", children: [
|
|
83
83
|
/* @__PURE__ */ t(
|
|
84
84
|
"div",
|
|
85
85
|
{
|
|
86
|
-
className:
|
|
86
|
+
className: p(
|
|
87
87
|
"bear-absolute bear-inset-0 bear-bg-black/60 bear-backdrop-blur-sm bear-transition-opacity",
|
|
88
|
-
|
|
88
|
+
c ? "bear-opacity-0" : "bear-opacity-100"
|
|
89
89
|
),
|
|
90
|
-
style: { transitionDuration: `${
|
|
90
|
+
style: { transitionDuration: `${i}ms` },
|
|
91
91
|
onClick: v ? b : void 0,
|
|
92
92
|
"aria-hidden": "true"
|
|
93
93
|
}
|
|
94
94
|
),
|
|
95
|
-
/* @__PURE__ */
|
|
95
|
+
/* @__PURE__ */ m(
|
|
96
96
|
"div",
|
|
97
97
|
{
|
|
98
98
|
role: "dialog",
|
|
99
99
|
"aria-modal": "true",
|
|
100
|
-
"aria-labelledby":
|
|
101
|
-
className:
|
|
100
|
+
"aria-labelledby": l ? "drawer-title" : void 0,
|
|
101
|
+
className: p(
|
|
102
102
|
"bear-absolute bear-bg-white dark:bear-bg-neutral-900 bear-shadow-2xl",
|
|
103
103
|
"bear-border-neutral-200 dark:bear-border-neutral-700 bear-overflow-hidden",
|
|
104
104
|
"bear-transform bear-transition-transform",
|
|
@@ -108,21 +108,21 @@ const m = 300, D = {
|
|
|
108
108
|
e === "bottom" && "bear-border-t",
|
|
109
109
|
M[e],
|
|
110
110
|
D[e][y],
|
|
111
|
-
N && !
|
|
111
|
+
N && !c ? j[e] : T[e],
|
|
112
112
|
k
|
|
113
113
|
),
|
|
114
|
-
style: { transitionDuration: `${
|
|
114
|
+
style: { transitionDuration: `${i}ms` },
|
|
115
115
|
children: [
|
|
116
|
-
(
|
|
117
|
-
|
|
116
|
+
(l || d) && /* @__PURE__ */ m("div", { className: "bear-flex bear-items-center bear-justify-between bear-px-4 bear-py-3 bear-border-b bear-border-neutral-200 dark:bear-border-neutral-700", children: [
|
|
117
|
+
l && /* @__PURE__ */ t(
|
|
118
118
|
"h2",
|
|
119
119
|
{
|
|
120
120
|
id: "drawer-title",
|
|
121
121
|
className: "bear-text-lg bear-font-semibold bear-text-neutral-900 dark:bear-text-white",
|
|
122
|
-
children:
|
|
122
|
+
children: l
|
|
123
123
|
}
|
|
124
124
|
),
|
|
125
|
-
|
|
125
|
+
d && /* @__PURE__ */ t(
|
|
126
126
|
"button",
|
|
127
127
|
{
|
|
128
128
|
onClick: b,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),t=require("react"),E=require("../../utils/cn.cjs"),J=require("../../hooks/useClickOutside.cjs");require("../../context/BearProvider.cjs");require("../../hooks/useBearComponent/useBearComponent.cjs");const Q=require("../Portal/Portal.cjs"),X=require("./Dropdown.const.cjs"),Y=({trigger:x,items:c,open:j,defaultOpen:q=!1,placement:i="bottom-start",offset:v=4,matchWidth:C=!1,minWidth:h=150,maxHeight:M=300,size:S="md",closeOnSelect:I=!0,closeOnClickOutside:g=!0,disabled:R=!1,onOpenChange:f,className:P,testId:W,...z})=>{const[A,U]=t.useState(q),[b,u]=t.useState(-1),[k,B]=t.useState({top:0,left:0,minWidth:h}),D=t.useRef(null),L=t.useRef(null),N=t.useRef(null),w=j!==void 0,n=w?j:A,p=t.useCallback(e=>{w||U(e),f==null||f(e)},[w,f]),F=t.useCallback(()=>{R||p(!n)},[R,n,p]),d=t.useCallback(()=>{p(!1),u(-1)},[p]),y=t.useCallback(e=>{var r;e.disabled||e.divider||e.header||((r=e.onClick)==null||r.call(e),I&&!e.items&&d())},[I,d]),T=t.useCallback(()=>{n&&g&&d()},[n,g,d]);J.useClickOutsideMultiple([D,L],T,{enabled:n&&g}),t.useEffect(()=>{if(!n)return;const e=c.filter(a=>!a.disabled&&!a.divider&&!a.header),r=a=>{switch(a.key){case"Escape":a.preventDefault(),d();break;case"ArrowDown":a.preventDefault(),u(o=>{const l=o+1;return l>=e.length?0:l});break;case"ArrowUp":a.preventDefault(),u(o=>{const l=o-1;return l<0?e.length-1:l});break;case"Enter":case" ":a.preventDefault(),b>=0&&b<e.length&&y(e[b]);break}};return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[n,c,b,d,y]),t.useEffect(()=>{if(!n)return;const e=()=>{var m;const r=(m=N.current)==null?void 0:m.getBoundingClientRect();if(!r)return;const a=window.innerWidth,o=C?r.width:h,Z=i.endsWith("end")?r.right-o:i==="top"||i==="bottom"?r.left+r.width/2-o/2:r.left,G=Math.min(Math.max(8,Z),Math.max(8,a-o-8)),H=i.startsWith("top")?r.top-v:r.bottom+v;B({top:H,left:G,minWidth:o})};return e(),window.addEventListener("resize",e),window.addEventListener("scroll",e,!0),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e,!0)}},[n,C,h,i,v]),t.useEffect(()=>{n||u(-1)},[n]);const _=t.useMemo(()=>c.map((e,r)=>({item:e,index:r})).filter(({item:e})=>!e.disabled&&!e.divider&&!e.header),[c]),K=(e,r)=>{if(e.divider)return s.jsx("div",{className:"bear-my-1 bear-mx-2 bear-h-px",style:{backgroundColor:"var(--bear-border-default)"},role:"separator"},e.key);if(e.header)return s.jsx("div",{className:"bear-px-3 bear-py-1.5 bear-text-xs bear-font-semibold bear-uppercase bear-tracking-wider",style:{color:"var(--bear-text-muted)"},children:e.label},e.key);const a=_.findIndex(l=>l.index===r),o=b===a;return s.jsxs("button",{type:"button",role:"menuitem",disabled:e.disabled,onClick:()=>y(e),onMouseEnter:()=>u(a),className:E.cn("bear-w-full bear-flex bear-items-center bear-gap-2 bear-text-left bear-border-none bear-bg-transparent",X.SIZE_CLASSES[S],"bear-transition-colors bear-cursor-pointer",e.selected&&!e.danger&&"bear-bg-[var(--bear-bg-tertiary)] bear-text-[var(--bear-text-primary)]",o&&!e.danger&&"bear-bg-[var(--bear-bg-tertiary)]",e.danger&&"bear-text-red-600 dark:bear-text-red-400 hover:bear-bg-red-50 dark:hover:bear-bg-red-900/20",!e.danger&&!e.disabled&&"hover:bear-bg-[var(--bear-bg-tertiary)]",e.disabled&&"bear-opacity-50 bear-cursor-not-allowed bear-pointer-events-none"),style:e.disabled?{color:"var(--bear-text-muted)"}:e.danger?void 0:{color:"var(--bear-text-secondary)"},children:[e.icon&&s.jsx("span",{className:"bear-flex-shrink-0 bear-w-5 bear-h-5 bear-flex bear-items-center bear-justify-center",children:e.icon}),s.jsx("span",{className:"bear-flex-1",children:e.label}),e.trailing&&s.jsx("span",{className:"bear-flex-shrink-0",style:{color:"var(--bear-text-muted)"},children:e.trailing}),e.items&&s.jsx("svg",{className:"bear-w-4 bear-h-4 bear-flex-shrink-0",style:{color:"var(--bear-text-muted)"},viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:s.jsx("polyline",{points:"9 18 15 12 9 6"})})]},e.key)},V=t.isValidElement(x)?t.cloneElement(x,{onClick:F,ref:N,"aria-expanded":n,"aria-haspopup":!0}):x;return s.jsxs("div",{ref:D,className:E.cn("bear-relative bear-inline-block",P),"data-testid":W,...z,children:[V,n&&s.jsx(Q.Portal,{children:s.jsx("div",{ref:L,role:"menu",className:E.cn("bear-fixed","bear-border bear-rounded-lg bear-shadow-lg","bear-py-1 bear-overflow-y-auto","bear-duration-100"),style:{backgroundColor:"var(--bear-bg-primary)",borderColor:"var(--bear-border-default)",minWidth:k.minWidth,maxHeight:M,top:k.top,left:k.left,zIndex:11e3},children:c.map((e,r)=>K(e,r))})})]})};exports.Dropdown=Y;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={xs:"bear-text-xs bear-py-1 bear-px-2",sm:"bear-text-sm bear-py-1.5 bear-px-3",md:"bear-text-sm bear-py-2 bear-px-3",lg:"bear-text-base bear-py-2.5 bear-px-4",xl:"bear-text-lg bear-py-3 bear-px-5"};exports.SIZE_CLASSES=e;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const SIZE_CLASSES: {
|
|
2
|
+
readonly xs: "bear-text-xs bear-py-1 bear-px-2";
|
|
3
|
+
readonly sm: "bear-text-sm bear-py-1.5 bear-px-3";
|
|
4
|
+
readonly md: "bear-text-sm bear-py-2 bear-px-3";
|
|
5
|
+
readonly lg: "bear-text-base bear-py-2.5 bear-px-4";
|
|
6
|
+
readonly xl: "bear-text-lg bear-py-3 bear-px-5";
|
|
7
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
xs: "bear-text-xs bear-py-1 bear-px-2",
|
|
3
|
+
sm: "bear-text-sm bear-py-1.5 bear-px-3",
|
|
4
|
+
md: "bear-text-sm bear-py-2 bear-px-3",
|
|
5
|
+
lg: "bear-text-base bear-py-2.5 bear-px-4",
|
|
6
|
+
xl: "bear-text-lg bear-py-3 bear-px-5"
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
e as SIZE_CLASSES
|
|
10
|
+
};
|