@forgedevstack/bear 1.2.6 → 1.2.8
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/README.md +6 -2
- package/dist/components/AppBar/AppBar.cjs +1 -1
- package/dist/components/AppBar/AppBar.js +37 -36
- package/dist/components/AppShell/AppShell.cjs +1 -0
- package/dist/components/AppShell/AppShell.const.cjs +1 -0
- package/dist/components/AppShell/AppShell.const.d.ts +19 -0
- package/dist/components/AppShell/AppShell.const.js +25 -0
- package/dist/components/AppShell/AppShell.d.ts +3 -0
- package/dist/components/AppShell/AppShell.js +82 -0
- package/dist/components/AppShell/AppShell.types.d.ts +16 -0
- package/dist/components/AppShell/index.d.ts +2 -0
- package/dist/components/Autocomplete/Autocomplete.cjs +1 -1
- package/dist/components/Autocomplete/Autocomplete.js +32 -32
- package/dist/components/Backdrop/Backdrop.cjs +1 -1
- package/dist/components/Backdrop/Backdrop.const.cjs +1 -1
- package/dist/components/Backdrop/Backdrop.const.d.ts +2 -1
- package/dist/components/Backdrop/Backdrop.const.js +4 -3
- package/dist/components/Backdrop/Backdrop.js +36 -29
- package/dist/components/Backdrop/Backdrop.types.d.ts +2 -0
- package/dist/components/Banner/Banner.cjs +1 -0
- package/dist/components/Banner/Banner.const.cjs +1 -0
- package/dist/components/Banner/Banner.const.d.ts +21 -0
- package/dist/components/Banner/Banner.const.js +33 -0
- package/dist/components/Banner/Banner.d.ts +3 -0
- package/dist/components/Banner/Banner.js +70 -0
- package/dist/components/Banner/Banner.types.d.ts +21 -0
- package/dist/components/Banner/helpers/BannerErrorSvg.cjs +1 -0
- package/dist/components/Banner/helpers/BannerErrorSvg.d.ts +2 -0
- package/dist/components/Banner/helpers/BannerErrorSvg.js +22 -0
- package/dist/components/Banner/helpers/BannerInfoSvg.cjs +1 -0
- package/dist/components/Banner/helpers/BannerInfoSvg.d.ts +2 -0
- package/dist/components/Banner/helpers/BannerInfoSvg.js +22 -0
- package/dist/components/Banner/helpers/BannerSuccessSvg.cjs +1 -0
- package/dist/components/Banner/helpers/BannerSuccessSvg.d.ts +2 -0
- package/dist/components/Banner/helpers/BannerSuccessSvg.js +21 -0
- package/dist/components/Banner/helpers/BannerWarningSvg.cjs +1 -0
- package/dist/components/Banner/helpers/BannerWarningSvg.d.ts +2 -0
- package/dist/components/Banner/helpers/BannerWarningSvg.js +22 -0
- package/dist/components/Banner/helpers/index.d.ts +4 -0
- package/dist/components/Banner/index.d.ts +2 -0
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.js +48 -48
- package/dist/components/Chip/Chip.cjs +1 -1
- package/dist/components/Chip/Chip.const.cjs +1 -1
- package/dist/components/Chip/Chip.const.d.ts +10 -0
- package/dist/components/Chip/Chip.const.js +11 -1
- package/dist/components/Chip/Chip.js +24 -22
- package/dist/components/ChipGroup/ChipGroup.cjs +1 -1
- package/dist/components/ChipGroup/ChipGroup.const.cjs +1 -1
- package/dist/components/ChipGroup/ChipGroup.const.d.ts +6 -3
- package/dist/components/ChipGroup/ChipGroup.const.js +6 -3
- package/dist/components/ChipGroup/ChipGroup.js +83 -29
- package/dist/components/ChipGroup/ChipGroup.types.d.ts +5 -0
- package/dist/components/Drawer/Drawer.cjs +1 -1
- package/dist/components/Drawer/Drawer.js +57 -54
- package/dist/components/EmptyState/EmptyState.cjs +1 -1
- package/dist/components/EmptyState/EmptyState.const.cjs +1 -0
- package/dist/components/EmptyState/EmptyState.const.d.ts +26 -1
- package/dist/components/EmptyState/EmptyState.const.js +29 -0
- package/dist/components/EmptyState/EmptyState.js +49 -31
- package/dist/components/Input/Input.cjs +1 -1
- package/dist/components/Input/Input.const.cjs +1 -1
- package/dist/components/Input/Input.const.d.ts +10 -0
- package/dist/components/Input/Input.const.js +16 -6
- package/dist/components/Input/Input.js +96 -96
- package/dist/components/MessageList/MessageList.cjs +1 -1
- package/dist/components/MessageList/MessageList.js +98 -92
- package/dist/components/MessageList/MessageList.types.d.ts +2 -0
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.const.cjs +1 -1
- package/dist/components/Modal/Modal.const.js +7 -8
- package/dist/components/Modal/Modal.js +60 -55
- package/dist/components/PageHeader/PageHeader.cjs +1 -0
- package/dist/components/PageHeader/PageHeader.const.cjs +1 -0
- package/dist/components/PageHeader/PageHeader.const.d.ts +6 -0
- package/dist/components/PageHeader/PageHeader.const.js +9 -0
- package/dist/components/PageHeader/PageHeader.d.ts +3 -0
- package/dist/components/PageHeader/PageHeader.js +57 -0
- package/dist/components/PageHeader/PageHeader.types.d.ts +10 -0
- package/dist/components/PageHeader/index.d.ts +2 -0
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.js +108 -99
- package/dist/components/Select/Select.types.d.ts +3 -1
- package/dist/components/Snackbar/Snackbar.cjs +1 -1
- package/dist/components/Snackbar/Snackbar.js +62 -60
- package/dist/components/Snackbar/Snackbar.types.d.ts +2 -0
- package/dist/components/Tabs/Tabs.cjs +1 -1
- package/dist/components/Tabs/Tabs.const.cjs +1 -0
- package/dist/components/Tabs/Tabs.const.d.ts +2 -0
- package/dist/components/Tabs/Tabs.const.js +5 -0
- package/dist/components/Tabs/Tabs.js +40 -35
- package/dist/components/Tabs/Tabs.types.d.ts +1 -0
- package/dist/components/Toast/Toast.cjs +1 -1
- package/dist/components/Toast/Toast.const.cjs +1 -1
- package/dist/components/Toast/Toast.const.js +7 -15
- package/dist/components/Toast/Toast.js +99 -95
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.js +277 -271
- package/dist/context/BearProvider.js +1 -1
- package/dist/hooks/index.cjs +1 -1
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +45 -41
- package/dist/hooks/useBreakpoint/index.d.ts +4 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.cjs +1 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.const.cjs +1 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.const.d.ts +8 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.const.js +10 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.d.ts +2 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.js +26 -0
- package/dist/hooks/useBreakpoint/useBreakpoint.types.d.ts +12 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +452 -433
- package/dist/styles.css +0 -4
- package/dist/utils/generateBearId.const.cjs +1 -1
- package/dist/utils/generateBearId.const.d.ts +4 -2
- package/dist/utils/generateBearId.const.js +6 -4
- package/dist/utils/generateBearId.utils.cjs +1 -1
- package/dist/utils/generateBearId.utils.js +33 -21
- package/dist/utils/index.cjs +1 -1
- package/dist/utils/index.d.ts +4 -1
- package/dist/utils/index.js +27 -18
- package/dist/utils/liveRegion.const.cjs +1 -0
- package/dist/utils/liveRegion.const.d.ts +5 -0
- package/dist/utils/liveRegion.const.js +17 -0
- package/dist/utils/liveRegion.utils.cjs +1 -0
- package/dist/utils/liveRegion.utils.d.ts +7 -0
- package/dist/utils/liveRegion.utils.js +10 -0
- package/dist/utils/useBearId.cjs +1 -1
- package/dist/utils/useBearId.js +5 -4
- package/package.json +1 -1
|
@@ -1,70 +1,76 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useRef as
|
|
3
|
-
import { Avatar as
|
|
4
|
-
import { Typography as
|
|
5
|
-
import { MESSAGE_LIST_DEFAULT_HEIGHT as
|
|
6
|
-
import { buildMessageListItems as
|
|
1
|
+
import { jsxs as i, jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as a, useState as M, useEffect as C, useLayoutEffect as St } from "react";
|
|
3
|
+
import { Avatar as ct } from "../Avatar/Avatar.js";
|
|
4
|
+
import { Typography as d } from "../Typography/Typography.js";
|
|
5
|
+
import { MESSAGE_LIST_DEFAULT_HEIGHT as w, MESSAGE_LIST_VIRTUALIZE_THRESHOLD as ot, MESSAGE_LIST_DEFAULT_TRANSLATIONS as _t, MESSAGE_LIST_EMPTY_CLASSES as it, MESSAGE_LIST_ROOT_CLASS as e, MESSAGE_LIST_SCROLLER_CLASSES as at, MESSAGE_LIST_NEW_MESSAGES_CLASSES as Et, MESSAGE_LIST_BASE_CLASSES as dt, MESSAGE_LIST_GROUP_WINDOW_MS as At, MESSAGE_LIST_OVERSCAN as ut, MESSAGE_LIST_DAY_LINE_CLASSES as P, MESSAGE_LIST_DAY_LABEL_CLASSES as Lt, MESSAGE_LIST_DAY_SEPARATOR_CLASSES as mt, MESSAGE_LIST_BOTTOM_THRESHOLD_PX as Tt, MESSAGE_LIST_AUTHOR_CLASSES as pt, MESSAGE_LIST_TIMESTAMP_CLASSES as U, MESSAGE_LIST_META_CLASSES as It, MESSAGE_LIST_BUBBLE_OWN_CLASSES as ht, MESSAGE_LIST_BUBBLE_CLASSES as ft, MESSAGE_LIST_GROUP_BODY_OWN_CLASSES as Mt, MESSAGE_LIST_GROUP_BODY_CLASSES as Gt, MESSAGE_LIST_GROUP_OWN_CLASSES as Ot, MESSAGE_LIST_GROUP_CLASSES as Nt } from "./MessageList.const.js";
|
|
6
|
+
import { buildMessageListItems as vt, getMessageListWindow as Rt, getDefaultDayLabel as Ht, getDefaultTimestamp as yt } from "./MessageList.utils.js";
|
|
7
7
|
import { cn as s } from "../../utils/cn.js";
|
|
8
|
-
import { resolveBearId as
|
|
9
|
-
import { useBearId as
|
|
10
|
-
const
|
|
11
|
-
id:
|
|
12
|
-
testId:
|
|
13
|
-
messages:
|
|
14
|
-
currentUserId:
|
|
15
|
-
groupWindowMs:
|
|
16
|
-
showDaySeparators:
|
|
17
|
-
showAvatars:
|
|
8
|
+
import { resolveBearId as Bt } from "../../utils/generateBearId.utils.js";
|
|
9
|
+
import { useBearId as $t } from "../../utils/useBearId.js";
|
|
10
|
+
const Yt = ({
|
|
11
|
+
id: D,
|
|
12
|
+
testId: x,
|
|
13
|
+
messages: r,
|
|
14
|
+
currentUserId: g,
|
|
15
|
+
groupWindowMs: W = At,
|
|
16
|
+
showDaySeparators: Y = !0,
|
|
17
|
+
showAvatars: F = !0,
|
|
18
18
|
showTimestamps: G = !0,
|
|
19
|
-
autoScroll:
|
|
20
|
-
virtualized:
|
|
21
|
-
|
|
19
|
+
autoScroll: O = !0,
|
|
20
|
+
virtualized: V,
|
|
21
|
+
overscan: j = ut,
|
|
22
|
+
height: o = w,
|
|
22
23
|
renderMessage: A,
|
|
23
|
-
emptyState:
|
|
24
|
-
formatDayLabel:
|
|
24
|
+
emptyState: k,
|
|
25
|
+
formatDayLabel: u,
|
|
25
26
|
formatTimestamp: L,
|
|
26
|
-
translations:
|
|
27
|
+
translations: z,
|
|
27
28
|
onNewMessagesClick: m,
|
|
28
|
-
className:
|
|
29
|
+
className: X
|
|
29
30
|
}) => {
|
|
30
|
-
const
|
|
31
|
-
typeof
|
|
32
|
-
),
|
|
33
|
-
const n =
|
|
31
|
+
const Z = $t("MessageList"), q = Bt(D, Z), c = a(null), N = a(!0), T = a(null), p = a(null), I = a(null), [J, h] = M(!1), [K, v] = M(0), [Q, R] = M(
|
|
32
|
+
typeof o == "number" ? o : w
|
|
33
|
+
), f = { ..._t, ...z }, E = vt(r, g, W, Y), tt = (t) => (u == null ? void 0 : u(t)) ?? Ht(t, f), H = (t) => (L == null ? void 0 : L(t)) ?? yt(t), y = V ?? r.length >= ot, B = (t) => {
|
|
34
|
+
const n = c.current;
|
|
34
35
|
n && n.scrollTo({ top: n.scrollHeight, behavior: t ? "smooth" : "auto" });
|
|
35
|
-
},
|
|
36
|
-
const t =
|
|
36
|
+
}, et = () => {
|
|
37
|
+
const t = c.current;
|
|
37
38
|
if (!t) return;
|
|
38
|
-
|
|
39
|
-
const
|
|
40
|
-
|
|
39
|
+
v(t.scrollTop), R(t.clientHeight);
|
|
40
|
+
const S = t.scrollHeight - t.scrollTop - t.clientHeight <= Tt;
|
|
41
|
+
N.current = S, S && h(!1);
|
|
41
42
|
};
|
|
42
|
-
|
|
43
|
-
const t =
|
|
44
|
-
t &&
|
|
45
|
-
}, [
|
|
46
|
-
const t =
|
|
47
|
-
if (
|
|
48
|
-
if (
|
|
49
|
-
|
|
43
|
+
C(() => {
|
|
44
|
+
const t = c.current;
|
|
45
|
+
t && R(t.clientHeight);
|
|
46
|
+
}, [o]), C(() => {
|
|
47
|
+
const t = r.length > 0 ? r[0].id : null, n = r.length > 0 ? r[r.length - 1].id : null, S = T.current === null, lt = t !== null && p.current !== null && t !== p.current, rt = n !== null && n !== T.current;
|
|
48
|
+
if (lt && c.current && (I.current = c.current.scrollHeight), p.current = t, T.current = n, !!rt) {
|
|
49
|
+
if (S || O && N.current) {
|
|
50
|
+
B(!S);
|
|
50
51
|
return;
|
|
51
52
|
}
|
|
52
|
-
|
|
53
|
+
h(!0);
|
|
53
54
|
}
|
|
54
|
-
}, [
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
}, [r, O]), St(() => {
|
|
56
|
+
const t = c.current, n = I.current;
|
|
57
|
+
if (!t || n === null) return;
|
|
58
|
+
const S = t.scrollHeight - n;
|
|
59
|
+
S > 0 && (t.scrollTop += S, v(t.scrollTop)), I.current = null;
|
|
60
|
+
}, [r]);
|
|
61
|
+
const nt = () => {
|
|
62
|
+
B(!0), h(!1), m == null || m();
|
|
63
|
+
}, st = (t) => /* @__PURE__ */ i(
|
|
58
64
|
"div",
|
|
59
65
|
{
|
|
60
66
|
className: s(
|
|
61
67
|
`${e}__group`,
|
|
62
|
-
|
|
63
|
-
t.isOwn &&
|
|
68
|
+
Nt,
|
|
69
|
+
t.isOwn && Ot
|
|
64
70
|
),
|
|
65
71
|
children: [
|
|
66
|
-
|
|
67
|
-
|
|
72
|
+
F && !t.isOwn && /* @__PURE__ */ l(
|
|
73
|
+
ct,
|
|
68
74
|
{
|
|
69
75
|
src: t.author.avatar,
|
|
70
76
|
initials: t.author.name[0],
|
|
@@ -72,55 +78,55 @@ const Ut = ({
|
|
|
72
78
|
className: "bear-flex-shrink-0"
|
|
73
79
|
}
|
|
74
80
|
),
|
|
75
|
-
/* @__PURE__ */
|
|
81
|
+
/* @__PURE__ */ i(
|
|
76
82
|
"div",
|
|
77
83
|
{
|
|
78
84
|
className: s(
|
|
79
85
|
`${e}__group-body`,
|
|
80
|
-
|
|
81
|
-
t.isOwn &&
|
|
86
|
+
Gt,
|
|
87
|
+
t.isOwn && Mt
|
|
82
88
|
),
|
|
83
89
|
children: [
|
|
84
|
-
!t.isOwn && /* @__PURE__ */
|
|
85
|
-
/* @__PURE__ */
|
|
86
|
-
|
|
90
|
+
!t.isOwn && /* @__PURE__ */ i("div", { className: s(`${e}__meta`, It), children: [
|
|
91
|
+
/* @__PURE__ */ l(
|
|
92
|
+
d,
|
|
87
93
|
{
|
|
88
94
|
variant: "caption",
|
|
89
95
|
component: "span",
|
|
90
|
-
className: s(`${e}__author`,
|
|
96
|
+
className: s(`${e}__author`, pt),
|
|
91
97
|
children: t.author.name
|
|
92
98
|
}
|
|
93
99
|
),
|
|
94
|
-
G && /* @__PURE__ */
|
|
95
|
-
|
|
100
|
+
G && /* @__PURE__ */ l(
|
|
101
|
+
d,
|
|
96
102
|
{
|
|
97
103
|
variant: "caption",
|
|
98
104
|
component: "span",
|
|
99
|
-
className: s(`${e}__timestamp`,
|
|
100
|
-
children:
|
|
105
|
+
className: s(`${e}__timestamp`, U),
|
|
106
|
+
children: H(t.messages[0].timestamp)
|
|
101
107
|
}
|
|
102
108
|
)
|
|
103
109
|
] }),
|
|
104
|
-
t.messages.map((n) => /* @__PURE__ */
|
|
110
|
+
t.messages.map((n) => /* @__PURE__ */ l(
|
|
105
111
|
"div",
|
|
106
112
|
{
|
|
107
113
|
className: s(
|
|
108
114
|
`${e}__bubble`,
|
|
109
|
-
|
|
115
|
+
ft,
|
|
110
116
|
t.isOwn && `${e}__bubble--own`,
|
|
111
|
-
t.isOwn &&
|
|
117
|
+
t.isOwn && ht
|
|
112
118
|
),
|
|
113
119
|
children: (A == null ? void 0 : A(n)) ?? n.content
|
|
114
120
|
},
|
|
115
121
|
n.id
|
|
116
122
|
)),
|
|
117
|
-
t.isOwn && G && /* @__PURE__ */
|
|
118
|
-
|
|
123
|
+
t.isOwn && G && /* @__PURE__ */ l(
|
|
124
|
+
d,
|
|
119
125
|
{
|
|
120
126
|
variant: "caption",
|
|
121
127
|
component: "span",
|
|
122
|
-
className: s(`${e}__timestamp`,
|
|
123
|
-
children:
|
|
128
|
+
className: s(`${e}__timestamp`, U),
|
|
129
|
+
children: H(t.messages[t.messages.length - 1].timestamp)
|
|
124
130
|
}
|
|
125
131
|
)
|
|
126
132
|
]
|
|
@@ -129,60 +135,60 @@ const Ut = ({
|
|
|
129
135
|
]
|
|
130
136
|
},
|
|
131
137
|
t.key
|
|
132
|
-
),
|
|
138
|
+
), $ = (t) => t.kind === "day" ? /* @__PURE__ */ i(
|
|
133
139
|
"div",
|
|
134
140
|
{
|
|
135
141
|
className: s(
|
|
136
142
|
`${e}__day-separator`,
|
|
137
|
-
|
|
143
|
+
mt
|
|
138
144
|
),
|
|
139
145
|
children: [
|
|
140
|
-
/* @__PURE__ */
|
|
141
|
-
/* @__PURE__ */
|
|
142
|
-
/* @__PURE__ */
|
|
146
|
+
/* @__PURE__ */ l("span", { className: s(`${e}__day-line`, P) }),
|
|
147
|
+
/* @__PURE__ */ l("span", { className: s(`${e}__day-label`, Lt), children: tt(t.date) }),
|
|
148
|
+
/* @__PURE__ */ l("span", { className: s(`${e}__day-line`, P) })
|
|
143
149
|
]
|
|
144
150
|
},
|
|
145
151
|
t.key
|
|
146
|
-
) :
|
|
147
|
-
return /* @__PURE__ */
|
|
152
|
+
) : st(t), _ = y ? Rt(E, K, Q, j) : null, b = _ === null ? E : E.slice(_.startIndex, _.endIndex + 1);
|
|
153
|
+
return /* @__PURE__ */ i(
|
|
148
154
|
"div",
|
|
149
155
|
{
|
|
150
|
-
id:
|
|
151
|
-
"data-testid":
|
|
152
|
-
className: s(e,
|
|
153
|
-
style: { height: typeof
|
|
156
|
+
id: q,
|
|
157
|
+
"data-testid": x,
|
|
158
|
+
className: s(e, dt, X),
|
|
159
|
+
style: { height: typeof o == "number" ? `${o}px` : o },
|
|
154
160
|
children: [
|
|
155
|
-
/* @__PURE__ */
|
|
161
|
+
/* @__PURE__ */ i(
|
|
156
162
|
"div",
|
|
157
163
|
{
|
|
158
|
-
ref:
|
|
159
|
-
onScroll:
|
|
160
|
-
className: s(`${e}__scroller`,
|
|
164
|
+
ref: c,
|
|
165
|
+
onScroll: et,
|
|
166
|
+
className: s(`${e}__scroller`, at),
|
|
161
167
|
role: "log",
|
|
162
168
|
"aria-live": "polite",
|
|
163
169
|
children: [
|
|
164
|
-
|
|
165
|
-
|
|
170
|
+
E.length === 0 && /* @__PURE__ */ l("div", { className: s(`${e}__empty`, it), children: k ?? /* @__PURE__ */ l(d, { variant: "body2", component: "span", children: f.emptyLabel }) }),
|
|
171
|
+
y && _ ? /* @__PURE__ */ l(
|
|
166
172
|
"div",
|
|
167
173
|
{
|
|
168
174
|
className: `${e}__virtual`,
|
|
169
|
-
style: { height:
|
|
170
|
-
children: /* @__PURE__ */
|
|
175
|
+
style: { height: _.totalHeight, position: "relative" },
|
|
176
|
+
children: /* @__PURE__ */ l("div", { style: { transform: `translateY(${_.offsetTop}px)` }, children: b.map((t) => $(t)) })
|
|
171
177
|
}
|
|
172
|
-
) :
|
|
178
|
+
) : b.map((t) => $(t))
|
|
173
179
|
]
|
|
174
180
|
}
|
|
175
181
|
),
|
|
176
|
-
|
|
182
|
+
J && /* @__PURE__ */ l(
|
|
177
183
|
"button",
|
|
178
184
|
{
|
|
179
185
|
type: "button",
|
|
180
|
-
onClick:
|
|
186
|
+
onClick: nt,
|
|
181
187
|
className: s(
|
|
182
188
|
`${e}__new-messages`,
|
|
183
|
-
|
|
189
|
+
Et
|
|
184
190
|
),
|
|
185
|
-
children:
|
|
191
|
+
children: f.newMessages
|
|
186
192
|
}
|
|
187
193
|
)
|
|
188
194
|
]
|
|
@@ -190,5 +196,5 @@ const Ut = ({
|
|
|
190
196
|
);
|
|
191
197
|
};
|
|
192
198
|
export {
|
|
193
|
-
|
|
199
|
+
Yt as MessageList
|
|
194
200
|
};
|
|
@@ -55,6 +55,8 @@ export interface MessageListProps {
|
|
|
55
55
|
autoScroll?: boolean;
|
|
56
56
|
/** Enable windowed rendering for long conversations (auto when message count exceeds threshold) */
|
|
57
57
|
virtualized?: boolean;
|
|
58
|
+
/** Extra items rendered above/below the viewport when virtualized */
|
|
59
|
+
overscan?: number;
|
|
58
60
|
/** Height of the scrollable area */
|
|
59
61
|
height?: number | string;
|
|
60
62
|
/** Custom message content renderer */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("react"),N=require("react-dom"),o=require("../../utils/cn.cjs"),D=require("../../utils/generateBearId.utils.cjs"),I=require("../../utils/useBearId.cjs"),q=require("../Icon/icons/navigation.cjs"),g=require("../Backdrop/Backdrop.cjs"),a=require("./Modal.const.cjs"),w=b=>{const{isOpen:r,onClose:s,title:l,children:B,size:E="md",showCloseButton:n=!0,closeOnEscape:M=!0,disableEscapeKeyDown:C=!1,lockBodyScroll:L=!0,cancelPreventScroll:f=!1,closeOnBackdrop:k=!0,hideBackdrop:v=!1,keepMounted:d=!1,isCancelBackgroundClick:i,className:p,footer:u,testId:y,id:A}=b,O=I.useBearId("Modal"),c=D.resolveBearId(A,O),_=L&&!f,h=i!==void 0?i:k,S=M&&!C,t=m.useCallback(x=>{S&&x.key==="Escape"&&s()},[S,s]);if(m.useEffect(()=>{if(r)return document.addEventListener("keydown",t),_&&(document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",t),document.body.style.overflow=""}},[r,t,_]),!r&&!d)return null;const j=e.jsxs("div",{className:"Bear-Modal bear-fixed bear-inset-0 bear-z-[11000] bear-flex bear-items-center bear-justify-center bear-p-4","data-testid":y,id:c,children:[!v&&e.jsx(g.Backdrop,{open:r,keepMounted:d,blur:!0,className:"Bear-Modal__backdrop",onClick:h?()=>s():void 0}),e.jsxs("div",{role:"dialog","aria-modal":"true","aria-labelledby":l?`${c}-title`:void 0,className:o.cn("Bear-Modal__container",a.MODAL_CONTAINER_CLASSES,a.MODAL_SIZE_CLASSES[E],p),children:[(l||n)&&e.jsxs("div",{className:o.cn("Bear-Modal__header",a.MODAL_HEADER_CLASSES),children:[l&&e.jsx("h2",{id:`${c}-title`,className:o.cn("Bear-Modal__title",a.MODAL_TITLE_CLASSES),children:l}),n&&e.jsx("button",{onClick:s,className:o.cn("Bear-Modal__close",a.MODAL_CLOSE_CLASSES),"aria-label":"Close modal",children:e.jsx(q.CloseIcon,{className:"bear-w-5 bear-h-5"})})]}),e.jsx("div",{className:o.cn("Bear-Modal__body",a.MODAL_BODY_CLASSES),children:B}),u&&e.jsx("div",{className:o.cn("Bear-Modal__footer",a.MODAL_FOOTER_CLASSES),children:u})]})]});return N.createPortal(j,document.body)};exports.Modal=w;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r={sm:"bear-max-w-sm",md:"bear-max-w-md",lg:"bear-max-w-lg",xl:"bear-max-w-xl",full:"bear-max-w-full bear-mx-4"},e="bear-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r={sm:"bear-max-w-sm",md:"bear-max-w-md",lg:"bear-max-w-lg",xl:"bear-max-w-xl",full:"bear-max-w-full bear-mx-4"},e="bear-relative bear-w-full bear-max-h-[calc(100vh-2rem)] bear-overflow-y-auto bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-2xl bear-border bear-border-gray-200 dark:bear-border-zinc-700 bear-transform bear-transition-all bear-animate-in bear-fade-in bear-zoom-in-95",a="bear-flex bear-items-center bear-justify-between bear-px-6 bear-py-4 bear-border-b bear-border-gray-200 dark:bear-border-zinc-700",b="bear-text-lg bear-font-semibold bear-text-gray-900 dark:bear-text-white",t="bear-p-1 bear-rounded-lg bear-text-gray-400 dark:bear-text-zinc-500 hover:bear-text-gray-600 dark:hover:bear-text-white hover:bear-bg-gray-100 dark:hover:bear-bg-zinc-700 bear-transition-colors",S="bear-px-6 bear-py-4 bear-text-gray-600 dark:bear-text-gray-300",o="bear-flex bear-items-center bear-justify-end bear-gap-3 bear-px-6 bear-py-4 bear-border-t bear-border-gray-200 dark:bear-border-zinc-700";exports.MODAL_BODY_CLASSES=S;exports.MODAL_CLOSE_CLASSES=t;exports.MODAL_CONTAINER_CLASSES=e;exports.MODAL_FOOTER_CLASSES=o;exports.MODAL_HEADER_CLASSES=a;exports.MODAL_SIZE_CLASSES=r;exports.MODAL_TITLE_CLASSES=b;
|
|
@@ -4,14 +4,13 @@ const r = {
|
|
|
4
4
|
lg: "bear-max-w-lg",
|
|
5
5
|
xl: "bear-max-w-xl",
|
|
6
6
|
full: "bear-max-w-full bear-mx-4"
|
|
7
|
-
}, e = "bear-
|
|
7
|
+
}, e = "bear-relative bear-w-full bear-max-h-[calc(100vh-2rem)] bear-overflow-y-auto bear-bg-white dark:bear-bg-zinc-900 bear-rounded-xl bear-shadow-2xl bear-border bear-border-gray-200 dark:bear-border-zinc-700 bear-transform bear-transition-all bear-animate-in bear-fade-in bear-zoom-in-95", a = "bear-flex bear-items-center bear-justify-between bear-px-6 bear-py-4 bear-border-b bear-border-gray-200 dark:bear-border-zinc-700", b = "bear-text-lg bear-font-semibold bear-text-gray-900 dark:bear-text-white", t = "bear-p-1 bear-rounded-lg bear-text-gray-400 dark:bear-text-zinc-500 hover:bear-text-gray-600 dark:hover:bear-text-white hover:bear-bg-gray-100 dark:hover:bear-bg-zinc-700 bear-transition-colors", o = "bear-px-6 bear-py-4 bear-text-gray-600 dark:bear-text-gray-300", n = "bear-flex bear-items-center bear-justify-end bear-gap-3 bear-px-6 bear-py-4 bear-border-t bear-border-gray-200 dark:bear-border-zinc-700";
|
|
8
8
|
export {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
b as MODAL_HEADER_CLASSES,
|
|
9
|
+
o as MODAL_BODY_CLASSES,
|
|
10
|
+
t as MODAL_CLOSE_CLASSES,
|
|
11
|
+
e as MODAL_CONTAINER_CLASSES,
|
|
12
|
+
n as MODAL_FOOTER_CLASSES,
|
|
13
|
+
a as MODAL_HEADER_CLASSES,
|
|
15
14
|
r as MODAL_SIZE_CLASSES,
|
|
16
|
-
|
|
15
|
+
b as MODAL_TITLE_CLASSES
|
|
17
16
|
};
|
|
@@ -1,98 +1,103 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useCallback as
|
|
3
|
-
import { createPortal as
|
|
4
|
-
import { cn as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
1
|
+
import { jsxs as s, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback as D, useEffect as I } from "react";
|
|
3
|
+
import { createPortal as w } from "react-dom";
|
|
4
|
+
import { cn as o } from "../../utils/cn.js";
|
|
5
|
+
import { resolveBearId as x } from "../../utils/generateBearId.utils.js";
|
|
6
|
+
import { useBearId as T } from "../../utils/useBearId.js";
|
|
7
|
+
import { CloseIcon as g } from "../Icon/icons/navigation.js";
|
|
8
|
+
import { Backdrop as j } from "../Backdrop/Backdrop.js";
|
|
9
|
+
import { MODAL_TITLE_CLASSES as R, MODAL_CLOSE_CLASSES as z, MODAL_HEADER_CLASSES as P, MODAL_BODY_CLASSES as $, MODAL_FOOTER_CLASSES as F, MODAL_SIZE_CLASSES as H, MODAL_CONTAINER_CLASSES as K } from "./Modal.const.js";
|
|
10
|
+
const X = (u) => {
|
|
8
11
|
const {
|
|
9
|
-
isOpen:
|
|
10
|
-
onClose:
|
|
12
|
+
isOpen: a,
|
|
13
|
+
onClose: r,
|
|
11
14
|
title: l,
|
|
12
15
|
children: S,
|
|
13
|
-
size:
|
|
14
|
-
showCloseButton:
|
|
15
|
-
closeOnEscape:
|
|
16
|
+
size: p = "md",
|
|
17
|
+
showCloseButton: c = !0,
|
|
18
|
+
closeOnEscape: b = !0,
|
|
16
19
|
disableEscapeKeyDown: E = !1,
|
|
17
20
|
lockBodyScroll: C = !0,
|
|
18
|
-
cancelPreventScroll:
|
|
21
|
+
cancelPreventScroll: B = !1,
|
|
19
22
|
closeOnBackdrop: L = !0,
|
|
20
|
-
hideBackdrop:
|
|
21
|
-
keepMounted:
|
|
22
|
-
isCancelBackgroundClick:
|
|
23
|
-
className:
|
|
24
|
-
footer:
|
|
25
|
-
testId:
|
|
26
|
-
id:
|
|
27
|
-
} =
|
|
28
|
-
(
|
|
29
|
-
|
|
23
|
+
hideBackdrop: M = !1,
|
|
24
|
+
keepMounted: n = !1,
|
|
25
|
+
isCancelBackgroundClick: i,
|
|
26
|
+
className: k,
|
|
27
|
+
footer: m,
|
|
28
|
+
testId: A,
|
|
29
|
+
id: h
|
|
30
|
+
} = u, v = T("Modal"), d = x(h, v), _ = C && !B, O = i !== void 0 ? i : L, f = b && !E, t = D(
|
|
31
|
+
(N) => {
|
|
32
|
+
f && N.key === "Escape" && r();
|
|
30
33
|
},
|
|
31
|
-
[
|
|
34
|
+
[f, r]
|
|
32
35
|
);
|
|
33
|
-
if (
|
|
34
|
-
if (
|
|
35
|
-
return document.addEventListener("keydown",
|
|
36
|
-
document.removeEventListener("keydown",
|
|
36
|
+
if (I(() => {
|
|
37
|
+
if (a)
|
|
38
|
+
return document.addEventListener("keydown", t), _ && (document.body.style.overflow = "hidden"), () => {
|
|
39
|
+
document.removeEventListener("keydown", t), document.body.style.overflow = "";
|
|
37
40
|
};
|
|
38
|
-
}, [
|
|
39
|
-
const
|
|
41
|
+
}, [a, t, _]), !a && !n) return null;
|
|
42
|
+
const y = /* @__PURE__ */ s(
|
|
40
43
|
"div",
|
|
41
44
|
{
|
|
42
45
|
className: "Bear-Modal bear-fixed bear-inset-0 bear-z-[11000] bear-flex bear-items-center bear-justify-center bear-p-4",
|
|
43
|
-
"data-testid":
|
|
44
|
-
id:
|
|
46
|
+
"data-testid": A,
|
|
47
|
+
id: d,
|
|
45
48
|
children: [
|
|
46
|
-
!
|
|
47
|
-
|
|
49
|
+
!M && /* @__PURE__ */ e(
|
|
50
|
+
j,
|
|
48
51
|
{
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
+
open: a,
|
|
53
|
+
keepMounted: n,
|
|
54
|
+
blur: !0,
|
|
55
|
+
className: "Bear-Modal__backdrop",
|
|
56
|
+
onClick: O ? () => r() : void 0
|
|
52
57
|
}
|
|
53
58
|
),
|
|
54
|
-
/* @__PURE__ */
|
|
59
|
+
/* @__PURE__ */ s(
|
|
55
60
|
"div",
|
|
56
61
|
{
|
|
57
62
|
role: "dialog",
|
|
58
63
|
"aria-modal": "true",
|
|
59
|
-
"aria-labelledby": l ?
|
|
60
|
-
className:
|
|
64
|
+
"aria-labelledby": l ? `${d}-title` : void 0,
|
|
65
|
+
className: o(
|
|
61
66
|
"Bear-Modal__container",
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
K,
|
|
68
|
+
H[p],
|
|
69
|
+
k
|
|
65
70
|
),
|
|
66
71
|
children: [
|
|
67
|
-
(l ||
|
|
68
|
-
l && /* @__PURE__ */
|
|
72
|
+
(l || c) && /* @__PURE__ */ s("div", { className: o("Bear-Modal__header", P), children: [
|
|
73
|
+
l && /* @__PURE__ */ e(
|
|
69
74
|
"h2",
|
|
70
75
|
{
|
|
71
|
-
id:
|
|
72
|
-
className:
|
|
76
|
+
id: `${d}-title`,
|
|
77
|
+
className: o("Bear-Modal__title", R),
|
|
73
78
|
children: l
|
|
74
79
|
}
|
|
75
80
|
),
|
|
76
|
-
|
|
81
|
+
c && /* @__PURE__ */ e(
|
|
77
82
|
"button",
|
|
78
83
|
{
|
|
79
|
-
onClick:
|
|
80
|
-
className:
|
|
84
|
+
onClick: r,
|
|
85
|
+
className: o("Bear-Modal__close", z),
|
|
81
86
|
"aria-label": "Close modal",
|
|
82
|
-
children: /* @__PURE__ */
|
|
87
|
+
children: /* @__PURE__ */ e(g, { className: "bear-w-5 bear-h-5" })
|
|
83
88
|
}
|
|
84
89
|
)
|
|
85
90
|
] }),
|
|
86
|
-
/* @__PURE__ */
|
|
87
|
-
|
|
91
|
+
/* @__PURE__ */ e("div", { className: o("Bear-Modal__body", $), children: S }),
|
|
92
|
+
m && /* @__PURE__ */ e("div", { className: o("Bear-Modal__footer", F), children: m })
|
|
88
93
|
]
|
|
89
94
|
}
|
|
90
95
|
)
|
|
91
96
|
]
|
|
92
97
|
}
|
|
93
98
|
);
|
|
94
|
-
return
|
|
99
|
+
return w(y, document.body);
|
|
95
100
|
};
|
|
96
101
|
export {
|
|
97
|
-
|
|
102
|
+
X as Modal
|
|
98
103
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),e=require("./PageHeader.const.cjs"),E=require("../Typography/Typography.cjs"),a=require("../Flex/Flex.cjs"),s=require("../../utils/cn.cjs");require("react");const R=require("../../utils/generateBearId.utils.cjs"),u=require("../../utils/useBearId.cjs"),P=n=>{const{id:t,testId:A,title:i,description:_,breadcrumbs:o,actions:c,className:S}=n,d=u.useBearId("PageHeader"),l=R.resolveBearId(t,d);return r.jsxs("header",{id:l,"data-testid":A,className:s.cn(e.PAGE_HEADER_ROOT_CLASS,e.PAGE_HEADER_BASE_CLASSES,S),children:[o,r.jsxs(a.Flex,{className:s.cn(`${e.PAGE_HEADER_ROOT_CLASS}__row`,e.PAGE_HEADER_ROW_CLASSES),children:[r.jsxs(a.Flex,{direction:"column",gap:1,className:`${e.PAGE_HEADER_ROOT_CLASS}__copy`,children:[r.jsx(E.Typography,{component:"h1",className:s.cn(`${e.PAGE_HEADER_ROOT_CLASS}__title`,e.PAGE_HEADER_TITLE_CLASSES),children:i}),_&&r.jsx(E.Typography,{component:"p",className:s.cn(`${e.PAGE_HEADER_ROOT_CLASS}__description`,e.PAGE_HEADER_DESCRIPTION_CLASSES),children:_})]}),c&&r.jsx("div",{className:s.cn(`${e.PAGE_HEADER_ROOT_CLASS}__actions`,e.PAGE_HEADER_ACTIONS_CLASSES),children:c})]})]})};exports.PageHeader=P;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="Bear-PageHeader",E="bear-flex bear-flex-col bear-gap-3 bear-w-full",S="bear-flex bear-flex-col sm:bear-flex-row sm:bear-items-start sm:bear-justify-between bear-gap-3",A="bear-text-2xl bear-font-semibold bear-text-[var(--bear-text-primary)]",a="bear-text-sm bear-text-[var(--bear-text-secondary)] bear-max-w-2xl",r="bear-flex bear-flex-wrap bear-items-center bear-gap-2";exports.PAGE_HEADER_ACTIONS_CLASSES=r;exports.PAGE_HEADER_BASE_CLASSES=E;exports.PAGE_HEADER_DESCRIPTION_CLASSES=a;exports.PAGE_HEADER_ROOT_CLASS=e;exports.PAGE_HEADER_ROW_CLASSES=S;exports.PAGE_HEADER_TITLE_CLASSES=A;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const PAGE_HEADER_ROOT_CLASS = "Bear-PageHeader";
|
|
2
|
+
export declare const PAGE_HEADER_BASE_CLASSES = "bear-flex bear-flex-col bear-gap-3 bear-w-full";
|
|
3
|
+
export declare const PAGE_HEADER_ROW_CLASSES = "bear-flex bear-flex-col sm:bear-flex-row sm:bear-items-start sm:bear-justify-between bear-gap-3";
|
|
4
|
+
export declare const PAGE_HEADER_TITLE_CLASSES = "bear-text-2xl bear-font-semibold bear-text-[var(--bear-text-primary)]";
|
|
5
|
+
export declare const PAGE_HEADER_DESCRIPTION_CLASSES = "bear-text-sm bear-text-[var(--bear-text-secondary)] bear-max-w-2xl";
|
|
6
|
+
export declare const PAGE_HEADER_ACTIONS_CLASSES = "bear-flex bear-flex-wrap bear-items-center bear-gap-2";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const e = "Bear-PageHeader", a = "bear-flex bear-flex-col bear-gap-3 bear-w-full", r = "bear-flex bear-flex-col sm:bear-flex-row sm:bear-items-start sm:bear-justify-between bear-gap-3", t = "bear-text-2xl bear-font-semibold bear-text-[var(--bear-text-primary)]", E = "bear-text-sm bear-text-[var(--bear-text-secondary)] bear-max-w-2xl", b = "bear-flex bear-flex-wrap bear-items-center bear-gap-2";
|
|
2
|
+
export {
|
|
3
|
+
b as PAGE_HEADER_ACTIONS_CLASSES,
|
|
4
|
+
a as PAGE_HEADER_BASE_CLASSES,
|
|
5
|
+
E as PAGE_HEADER_DESCRIPTION_CLASSES,
|
|
6
|
+
e as PAGE_HEADER_ROOT_CLASS,
|
|
7
|
+
r as PAGE_HEADER_ROW_CLASSES,
|
|
8
|
+
t as PAGE_HEADER_TITLE_CLASSES
|
|
9
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { jsxs as o, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { PAGE_HEADER_ROOT_CLASS as e, PAGE_HEADER_TITLE_CLASSES as p, PAGE_HEADER_DESCRIPTION_CLASSES as h, PAGE_HEADER_ACTIONS_CLASSES as I, PAGE_HEADER_ROW_CLASSES as N, PAGE_HEADER_BASE_CLASSES as P } from "./PageHeader.const.js";
|
|
3
|
+
import { Typography as c } from "../Typography/Typography.js";
|
|
4
|
+
import { Flex as i } from "../Flex/Flex.js";
|
|
5
|
+
import { cn as r } from "../../utils/cn.js";
|
|
6
|
+
import "react";
|
|
7
|
+
import { resolveBearId as R } from "../../utils/generateBearId.utils.js";
|
|
8
|
+
import { useBearId as C } from "../../utils/useBearId.js";
|
|
9
|
+
const $ = (_) => {
|
|
10
|
+
const {
|
|
11
|
+
id: m,
|
|
12
|
+
testId: E,
|
|
13
|
+
title: d,
|
|
14
|
+
description: s,
|
|
15
|
+
breadcrumbs: n,
|
|
16
|
+
actions: a,
|
|
17
|
+
className: A
|
|
18
|
+
} = _, S = C("PageHeader"), l = R(m, S);
|
|
19
|
+
return /* @__PURE__ */ o(
|
|
20
|
+
"header",
|
|
21
|
+
{
|
|
22
|
+
id: l,
|
|
23
|
+
"data-testid": E,
|
|
24
|
+
className: r(e, P, A),
|
|
25
|
+
children: [
|
|
26
|
+
n,
|
|
27
|
+
/* @__PURE__ */ o(i, { className: r(`${e}__row`, N), children: [
|
|
28
|
+
/* @__PURE__ */ o(i, { direction: "column", gap: 1, className: `${e}__copy`, children: [
|
|
29
|
+
/* @__PURE__ */ t(
|
|
30
|
+
c,
|
|
31
|
+
{
|
|
32
|
+
component: "h1",
|
|
33
|
+
className: r(`${e}__title`, p),
|
|
34
|
+
children: d
|
|
35
|
+
}
|
|
36
|
+
),
|
|
37
|
+
s && /* @__PURE__ */ t(
|
|
38
|
+
c,
|
|
39
|
+
{
|
|
40
|
+
component: "p",
|
|
41
|
+
className: r(
|
|
42
|
+
`${e}__description`,
|
|
43
|
+
h
|
|
44
|
+
),
|
|
45
|
+
children: s
|
|
46
|
+
}
|
|
47
|
+
)
|
|
48
|
+
] }),
|
|
49
|
+
a && /* @__PURE__ */ t("div", { className: r(`${e}__actions`, I), children: a })
|
|
50
|
+
] })
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
);
|
|
54
|
+
};
|
|
55
|
+
export {
|
|
56
|
+
$ as PageHeader
|
|
57
|
+
};
|