@expcat/tigercat-react 1.2.23 → 1.2.31

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.
Files changed (51) hide show
  1. package/dist/{chunk-MMGZEG7G.mjs → chunk-56DP32W7.mjs} +93 -45
  2. package/dist/{chunk-36WZNVQ5.mjs → chunk-5XE5VBDS.mjs} +2 -3
  3. package/dist/{chunk-2DH6MGC6.js → chunk-7KPALCG3.js} +11 -7
  4. package/dist/{chunk-7YUD6VIC.js → chunk-APODZAVO.js} +47 -16
  5. package/dist/{chunk-LKKZLYCA.mjs → chunk-CPNDCACQ.mjs} +1 -1
  6. package/dist/{chunk-XHT2VIDR.js → chunk-FXVKJWUP.js} +19 -9
  7. package/dist/{chunk-RUZQN7X3.js → chunk-FZIF5LZW.js} +52 -25
  8. package/dist/{chunk-X37Q7VME.mjs → chunk-GYFR2O27.mjs} +11 -7
  9. package/dist/chunk-I5YYA7FB.mjs +244 -0
  10. package/dist/{chunk-3FEFHD3E.mjs → chunk-IUOTJ73N.mjs} +1 -0
  11. package/dist/{chunk-T7ACOL7K.mjs → chunk-IWLUYAZV.mjs} +62 -15
  12. package/dist/{chunk-5EZWYEGJ.js → chunk-IXHXSD2E.js} +65 -18
  13. package/dist/{chunk-EX63M5ID.js → chunk-JCINYGGM.js} +93 -45
  14. package/dist/{chunk-CSH2QOOH.js → chunk-K5B4XXAI.js} +2 -2
  15. package/dist/{chunk-UE52NMPO.js → chunk-KTV3ZDSQ.js} +1 -0
  16. package/dist/{chunk-XPA2YCQO.js → chunk-M7HBWFQO.js} +1 -2
  17. package/dist/{chunk-DTYDPMNR.js → chunk-P4INKEQ3.js} +76 -9
  18. package/dist/{chunk-5XS6PXBX.mjs → chunk-PKWHSCFK.mjs} +52 -25
  19. package/dist/{chunk-J5R4Q2QM.mjs → chunk-UQOMRXTD.mjs} +74 -7
  20. package/dist/chunk-UVWLYRAC.js +244 -0
  21. package/dist/{chunk-6CAKUMWV.mjs → chunk-VUODYCCC.mjs} +46 -15
  22. package/dist/{chunk-ZB55SAGI.mjs → chunk-WWDCH2XX.mjs} +19 -9
  23. package/dist/components/ActivityFeed.js +2 -2
  24. package/dist/components/ActivityFeed.mjs +1 -1
  25. package/dist/components/ChatWindow.js +3 -2
  26. package/dist/components/ChatWindow.mjs +2 -1
  27. package/dist/components/CommentThread.js +2 -2
  28. package/dist/components/CommentThread.mjs +1 -1
  29. package/dist/components/CropUpload.js +2 -2
  30. package/dist/components/CropUpload.mjs +1 -1
  31. package/dist/components/DataTableWithToolbar.js +4 -3
  32. package/dist/components/DataTableWithToolbar.mjs +3 -2
  33. package/dist/components/FormWizard.js +3 -3
  34. package/dist/components/FormWizard.mjs +2 -2
  35. package/dist/components/Kanban.js +3 -3
  36. package/dist/components/Kanban.mjs +2 -2
  37. package/dist/components/NotificationCenter.js +2 -2
  38. package/dist/components/NotificationCenter.mjs +1 -1
  39. package/dist/components/Steps.js +2 -2
  40. package/dist/components/Steps.mjs +1 -1
  41. package/dist/components/StepsItem.js +2 -2
  42. package/dist/components/StepsItem.mjs +1 -1
  43. package/dist/components/Table.js +3 -2
  44. package/dist/components/Table.mjs +2 -1
  45. package/dist/components/TaskBoard.js +2 -2
  46. package/dist/components/TaskBoard.mjs +1 -1
  47. package/dist/index.js +15 -15
  48. package/dist/index.mjs +14 -14
  49. package/package.json +2 -2
  50. package/dist/chunk-DXMSDLVJ.js +0 -168
  51. package/dist/chunk-GBJILZTY.mjs +0 -168
@@ -1,168 +0,0 @@
1
- import {
2
- Timeline
3
- } from "./chunk-JVTAKNRO.mjs";
4
- import {
5
- Loading
6
- } from "./chunk-FNJDBFKM.mjs";
7
- import {
8
- Link
9
- } from "./chunk-XZVQ3PJS.mjs";
10
- import {
11
- Tag
12
- } from "./chunk-TGKNEMD4.mjs";
13
- import {
14
- Text
15
- } from "./chunk-HLS4CHWX.mjs";
16
- import {
17
- Card
18
- } from "./chunk-P6E3DILH.mjs";
19
- import {
20
- Avatar
21
- } from "./chunk-4ZZ7YRTB.mjs";
22
-
23
- // src/components/ActivityFeed.tsx
24
- import { useMemo } from "react";
25
- import {
26
- classNames,
27
- buildActivityGroups,
28
- formatActivityTime,
29
- toActivityTimelineItems,
30
- activityItemClasses,
31
- activityItemLayoutClasses,
32
- activityItemBodyClasses,
33
- activityItemHeaderClasses,
34
- activityItemTitleGroupClasses,
35
- activityItemDescriptionClasses,
36
- activityItemActionsClasses
37
- } from "@expcat/tigercat-core";
38
- import { jsx, jsxs } from "react/jsx-runtime";
39
- var renderAction = (item, action, index) => {
40
- const key = action.key ?? `${item.id}-action-${index}`;
41
- return /* @__PURE__ */ jsx(
42
- Link,
43
- {
44
- size: "sm",
45
- variant: "primary",
46
- href: action.href,
47
- target: action.target,
48
- disabled: action.disabled,
49
- onClick: () => action.onClick?.(item, action),
50
- children: action.label
51
- },
52
- key
53
- );
54
- };
55
- var ActivityFeed = ({
56
- items = [],
57
- groups,
58
- groupBy,
59
- groupOrder,
60
- loading = false,
61
- loadingText = "\u52A0\u8F7D\u4E2D...",
62
- emptyText = "\u6682\u65E0\u52A8\u6001",
63
- showAvatar = true,
64
- showTime = true,
65
- showGroupTitle = true,
66
- renderItem,
67
- renderGroupHeader,
68
- className,
69
- ...props
70
- }) => {
71
- const resolvedGroups = useMemo(
72
- () => buildActivityGroups(items, groups, groupBy, groupOrder),
73
- [items, groups, groupBy, groupOrder]
74
- );
75
- const wrapperClasses = classNames(
76
- "tiger-activity-feed",
77
- "flex",
78
- "flex-col",
79
- "gap-6",
80
- "w-full",
81
- className
82
- );
83
- const renderDefaultItem = (item, index, group) => {
84
- if (renderItem) return renderItem(item, index, group);
85
- const titleText = item.title ?? (typeof item.content === "string" || typeof item.content === "number" ? String(item.content) : "");
86
- const descriptionText = item.description;
87
- const timeText = showTime ? formatActivityTime(item.time) : "";
88
- const actionNodes = item.actions?.map(
89
- (action, actionIndex) => renderAction(item, action, actionIndex)
90
- );
91
- return /* @__PURE__ */ jsx("div", { className: activityItemClasses, children: /* @__PURE__ */ jsxs("div", { className: activityItemLayoutClasses, children: [
92
- showAvatar && item.user ? /* @__PURE__ */ jsx(Avatar, { size: "sm", src: item.user.avatar, text: item.user.name, className: "shrink-0" }) : null,
93
- /* @__PURE__ */ jsxs("div", { className: activityItemBodyClasses, children: [
94
- /* @__PURE__ */ jsxs("div", { className: activityItemHeaderClasses, children: [
95
- /* @__PURE__ */ jsxs("div", { className: activityItemTitleGroupClasses, children: [
96
- titleText ? /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", weight: "medium", className: "truncate", children: titleText }) : null,
97
- item.status ? /* @__PURE__ */ jsx(Tag, { variant: item.status.variant ?? "default", size: "sm", className: "shrink-0", children: item.status.label }) : null
98
- ] }),
99
- timeText ? /* @__PURE__ */ jsx(Text, { tag: "div", size: "xs", color: "muted", className: "shrink-0 whitespace-nowrap", children: timeText }) : null
100
- ] }),
101
- descriptionText ? /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", color: "muted", className: activityItemDescriptionClasses, children: descriptionText }) : null,
102
- actionNodes?.length ? /* @__PURE__ */ jsx("div", { className: activityItemActionsClasses, children: actionNodes }) : null
103
- ] })
104
- ] }) });
105
- };
106
- if (loading) {
107
- return /* @__PURE__ */ jsx(
108
- "div",
109
- {
110
- className: wrapperClasses,
111
- role: "feed",
112
- "aria-label": "\u52A8\u6001",
113
- "aria-busy": true,
114
- ...props,
115
- "data-tiger-activity-feed": true,
116
- children: /* @__PURE__ */ jsx(Card, { variant: "bordered", size: "sm", className: "tiger-activity-feed-loading", children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsx(Loading, { text: loadingText }) }) })
117
- }
118
- );
119
- }
120
- if (resolvedGroups.length === 0) {
121
- return /* @__PURE__ */ jsx(
122
- "div",
123
- {
124
- className: wrapperClasses,
125
- role: "feed",
126
- "aria-label": "\u52A8\u6001",
127
- ...props,
128
- "data-tiger-activity-feed": true,
129
- children: /* @__PURE__ */ jsx(Card, { variant: "bordered", size: "sm", className: "tiger-activity-feed-empty", children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-6", children: /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", color: "muted", children: emptyText }) }) })
130
- }
131
- );
132
- }
133
- return /* @__PURE__ */ jsx(
134
- "div",
135
- {
136
- className: wrapperClasses,
137
- role: "feed",
138
- "aria-label": "\u52A8\u6001",
139
- ...props,
140
- "data-tiger-activity-feed": true,
141
- children: resolvedGroups.map((group, groupIndex) => {
142
- const headerNode = renderGroupHeader?.(group);
143
- const groupTitle = group.title;
144
- const timelineItems = toActivityTimelineItems(group.items);
145
- return /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
146
- showGroupTitle && groupTitle ? headerNode ?? /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", weight: "medium", color: "muted", children: groupTitle }) : null,
147
- /* @__PURE__ */ jsx(
148
- Timeline,
149
- {
150
- items: timelineItems,
151
- renderItem: (timelineItem, index) => {
152
- const activity = timelineItem.activity;
153
- if (!activity) return null;
154
- return renderDefaultItem(activity, index, group);
155
- }
156
- }
157
- )
158
- ] }, group.key ?? groupIndex);
159
- })
160
- }
161
- );
162
- };
163
- var ActivityFeed_default = ActivityFeed;
164
-
165
- export {
166
- ActivityFeed,
167
- ActivityFeed_default
168
- };