@expcat/tigercat-react 2.0.19 → 2.1.1

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 (186) hide show
  1. package/README.md +25 -16
  2. package/dist/chunk-246DAUEF.mjs +181 -0
  3. package/dist/{chunk-PU3JY6RE.mjs → chunk-2JMI7TCM.mjs} +1 -1
  4. package/dist/chunk-2YBLMVDT.mjs +428 -0
  5. package/dist/chunk-2YOP55OF.mjs +639 -0
  6. package/dist/{chunk-25D5TXZH.mjs → chunk-32MCQMBJ.mjs} +8 -6
  7. package/dist/chunk-3HHEVMHE.mjs +180 -0
  8. package/dist/{chunk-HSBN5MLS.mjs → chunk-3LACOSJQ.mjs} +1 -1
  9. package/dist/{chunk-F6WV53BS.mjs → chunk-3LDDXHW2.mjs} +28 -11
  10. package/dist/{chunk-IXQAECFP.mjs → chunk-3QNIFKVF.mjs} +12 -14
  11. package/dist/{chunk-UD4DTVJZ.mjs → chunk-4C2X5PZO.mjs} +57 -25
  12. package/dist/chunk-5JETWHLJ.mjs +28 -0
  13. package/dist/{chunk-VA6PZWOH.mjs → chunk-5SEMRHBD.mjs} +14 -6
  14. package/dist/{chunk-EKILTLUO.mjs → chunk-72CJNKDY.mjs} +1 -1
  15. package/dist/{chunk-XE4YFBOZ.mjs → chunk-AUD3VOLO.mjs} +1 -1
  16. package/dist/{chunk-UT5BV2VO.mjs → chunk-AYFKHWJS.mjs} +16 -10
  17. package/dist/{chunk-RPSHILHD.mjs → chunk-BXAH2GH3.mjs} +8 -2
  18. package/dist/{chunk-EW5EO7VE.mjs → chunk-BYD7EAWK.mjs} +1 -1
  19. package/dist/{chunk-BOGOQ44C.mjs → chunk-CQOLQAB5.mjs} +105 -90
  20. package/dist/{chunk-L55UK45A.mjs → chunk-CRIEUKMD.mjs} +5 -2
  21. package/dist/{chunk-DKNVSQSV.mjs → chunk-CUAXRBKO.mjs} +12 -0
  22. package/dist/{chunk-E7OTDBI6.mjs → chunk-DECUASRW.mjs} +17 -19
  23. package/dist/{chunk-XMTEMBQV.mjs → chunk-EAAWB3CK.mjs} +16 -13
  24. package/dist/{chunk-D33BIMGK.mjs → chunk-EG7EMDKK.mjs} +12 -2
  25. package/dist/chunk-EW43YBPV.mjs +457 -0
  26. package/dist/{chunk-HOYBHB7B.mjs → chunk-FNK2VWPP.mjs} +1 -1
  27. package/dist/{chunk-RJPNBYK5.mjs → chunk-FQS24AUH.mjs} +12 -3
  28. package/dist/{chunk-LADKKOJT.mjs → chunk-GBEDWXLL.mjs} +16 -10
  29. package/dist/chunk-GR3Y3XWP.mjs +47 -0
  30. package/dist/{chunk-2ENQZECC.mjs → chunk-HAXRHSCN.mjs} +4 -3
  31. package/dist/{chunk-K4GIKSZE.mjs → chunk-I2BENK5X.mjs} +2 -1
  32. package/dist/chunk-IGBQGR6G.mjs +234 -0
  33. package/dist/chunk-J76R2S62.mjs +161 -0
  34. package/dist/{chunk-DNOPEJ5I.mjs → chunk-JZZPLKTW.mjs} +7 -4
  35. package/dist/{chunk-7KCQMXJA.mjs → chunk-KDURW5AS.mjs} +4 -3
  36. package/dist/{chunk-TFMEHUVZ.mjs → chunk-KKN7KLTB.mjs} +0 -1
  37. package/dist/{chunk-6MGQAJ62.mjs → chunk-KL6YJIZ3.mjs} +24 -7
  38. package/dist/chunk-KRDHM5KB.mjs +259 -0
  39. package/dist/{chunk-HHIW7V7B.mjs → chunk-M6ZPTGBV.mjs} +2 -10
  40. package/dist/chunk-MFPVVGNA.mjs +248 -0
  41. package/dist/{chunk-PXRZ6CKY.mjs → chunk-MJVSZ2UJ.mjs} +46 -16
  42. package/dist/{chunk-LZKBDQE4.mjs → chunk-MYI3FPG4.mjs} +23 -4
  43. package/dist/{chunk-OIGEBCAS.mjs → chunk-NADODEZX.mjs} +69 -1
  44. package/dist/{chunk-KMP5CVNK.mjs → chunk-NJWTZ5MO.mjs} +57 -45
  45. package/dist/chunk-NLGLBTSM.mjs +138 -0
  46. package/dist/chunk-NT7GW2FD.mjs +40 -0
  47. package/dist/{chunk-773LH7BK.mjs → chunk-O6VYD4E4.mjs} +24 -2
  48. package/dist/{chunk-G7D4QV7A.mjs → chunk-O7TV5OKS.mjs} +33 -6
  49. package/dist/{chunk-DPWRXXXW.mjs → chunk-OJ6SHHOZ.mjs} +3 -3
  50. package/dist/chunk-OKYMTHFQ.mjs +279 -0
  51. package/dist/{chunk-UYJJLHVA.mjs → chunk-PMQJ6AYT.mjs} +23 -21
  52. package/dist/chunk-PY2VUNEJ.mjs +494 -0
  53. package/dist/{chunk-BEJZPJIK.mjs → chunk-QOAOOD53.mjs} +10 -4
  54. package/dist/{chunk-2WGEHH5A.mjs → chunk-QU3QXUTC.mjs} +49 -23
  55. package/dist/{chunk-V6P7ZK6O.mjs → chunk-QXSUG7SN.mjs} +3 -3
  56. package/dist/{chunk-FYINJRYN.mjs → chunk-R7YZ6FKP.mjs} +27 -16
  57. package/dist/{chunk-YI6YWH66.mjs → chunk-RE5ZLA5D.mjs} +6 -6
  58. package/dist/{chunk-UCBW5RJN.mjs → chunk-RGVU4EMA.mjs} +11 -6
  59. package/dist/{chunk-IBSOUQGB.mjs → chunk-RRGPDFDI.mjs} +7 -4
  60. package/dist/{chunk-ZH5ZBLAN.mjs → chunk-RUQ3F3MV.mjs} +34 -7
  61. package/dist/chunk-SEOG5AGS.mjs +72 -0
  62. package/dist/{chunk-PGD5RPKF.mjs → chunk-SVIJ2UZA.mjs} +2 -1
  63. package/dist/chunk-SXWEFZOF.mjs +766 -0
  64. package/dist/{chunk-NCHUEGUW.mjs → chunk-TEVEXDY2.mjs} +27 -16
  65. package/dist/{chunk-DJOFM2VO.mjs → chunk-TO6MZFNQ.mjs} +52 -40
  66. package/dist/chunk-TQ6RIFWR.mjs +135 -0
  67. package/dist/chunk-U4M3DC2P.mjs +48 -0
  68. package/dist/{chunk-ZCGIZOMT.mjs → chunk-V7HJ5HLC.mjs} +6 -10
  69. package/dist/{chunk-SIDDYP3O.mjs → chunk-VJWSKJLJ.mjs} +1 -1
  70. package/dist/{chunk-ZG56T75O.mjs → chunk-WTHWLCRL.mjs} +51 -11
  71. package/dist/{chunk-KP6DEYWB.mjs → chunk-X4L3W7RQ.mjs} +1 -1
  72. package/dist/{chunk-ZMRTETN2.mjs → chunk-X6C6MNG5.mjs} +4 -3
  73. package/dist/chunk-XT43B7ZI.mjs +58 -0
  74. package/dist/{chunk-OGG2TQDG.mjs → chunk-XVHTJQ4T.mjs} +12 -1
  75. package/dist/{chunk-QJE3MZBO.mjs → chunk-Y6UH3EKE.mjs} +1 -1
  76. package/dist/chunk-YJ5T4XZN.mjs +81 -0
  77. package/dist/{chunk-VVNFXJMN.mjs → chunk-YNDPQVEK.mjs} +8 -1
  78. package/dist/{chunk-QGZ32NFQ.mjs → chunk-Z23KOLNU.mjs} +4 -3
  79. package/dist/{chunk-5CKMYMTS.mjs → chunk-ZATZRXMW.mjs} +27 -8
  80. package/dist/components/ActivityFeed.mjs +3 -3
  81. package/dist/components/Affix.mjs +1 -1
  82. package/dist/components/Anchor.mjs +1 -1
  83. package/dist/components/AreaChart.mjs +5 -4
  84. package/dist/components/AspectRatio.d.mts +10 -0
  85. package/dist/components/AspectRatio.mjs +8 -0
  86. package/dist/components/AutoComplete.mjs +1 -1
  87. package/dist/components/BarChart.mjs +5 -4
  88. package/dist/components/Calendar.mjs +1 -1
  89. package/dist/components/Cascader.mjs +1 -1
  90. package/dist/components/ChartCanvas.mjs +1 -1
  91. package/dist/components/ChatWindow.mjs +4 -4
  92. package/dist/components/Code.mjs +3 -1
  93. package/dist/components/CollapsePanel.mjs +1 -1
  94. package/dist/components/ColorPicker.mjs +1 -1
  95. package/dist/components/CommentThread.mjs +2 -2
  96. package/dist/components/ContextMenu.d.mts +36 -0
  97. package/dist/components/ContextMenu.mjs +17 -0
  98. package/dist/components/DataExport.mjs +2 -2
  99. package/dist/components/DataTableWithToolbar.mjs +7 -7
  100. package/dist/components/DonutChart.mjs +4 -4
  101. package/dist/components/Dropdown.mjs +1 -1
  102. package/dist/components/FileManager.mjs +2 -1
  103. package/dist/components/FloatButton.mjs +1 -1
  104. package/dist/components/FormItem.mjs +1 -1
  105. package/dist/components/FormWizard.mjs +1 -1
  106. package/dist/components/FunnelChart.mjs +3 -3
  107. package/dist/components/Gantt.d.mts +3 -1
  108. package/dist/components/Gantt.mjs +2 -2
  109. package/dist/components/GaugeChart.mjs +2 -2
  110. package/dist/components/HeatmapChart.mjs +3 -3
  111. package/dist/components/Highlight.d.mts +11 -0
  112. package/dist/components/Highlight.mjs +8 -0
  113. package/dist/components/Image.mjs +4 -4
  114. package/dist/components/ImageCompare.d.mts +15 -0
  115. package/dist/components/ImageCompare.mjs +8 -0
  116. package/dist/components/ImageGroup.mjs +2 -2
  117. package/dist/components/ImagePreview.mjs +1 -1
  118. package/dist/components/Input.mjs +1 -1
  119. package/dist/components/InputNumber.d.mts +1 -1
  120. package/dist/components/InputNumber.mjs +1 -1
  121. package/dist/components/InputOTP.d.mts +33 -0
  122. package/dist/components/InputOTP.mjs +12 -0
  123. package/dist/components/Kanban.mjs +2 -2
  124. package/dist/components/Kbd.d.mts +10 -0
  125. package/dist/components/Kbd.mjs +8 -0
  126. package/dist/components/LineChart.mjs +5 -4
  127. package/dist/components/List.mjs +2 -2
  128. package/dist/components/Loading.mjs +1 -1
  129. package/dist/components/LoadingBar.d.mts +8 -0
  130. package/dist/components/LoadingBar.mjs +138 -0
  131. package/dist/components/LoadingBarContainer.d.mts +8 -0
  132. package/dist/components/LoadingBarContainer.mjs +8 -0
  133. package/dist/components/LoadingBarRoot.d.mts +6 -0
  134. package/dist/components/LoadingBarRoot.mjs +6 -0
  135. package/dist/components/Marquee.d.mts +10 -0
  136. package/dist/components/Marquee.mjs +8 -0
  137. package/dist/components/MaskInput.d.mts +37 -0
  138. package/dist/components/MaskInput.mjs +10 -0
  139. package/dist/components/Masonry.d.mts +10 -0
  140. package/dist/components/Masonry.mjs +8 -0
  141. package/dist/components/NavigationMenu.d.mts +84 -0
  142. package/dist/components/NavigationMenu.mjs +23 -0
  143. package/dist/components/NotificationCenter.mjs +4 -4
  144. package/dist/components/OrgChart.mjs +2 -2
  145. package/dist/components/PageHeader.d.mts +34 -0
  146. package/dist/components/PageHeader.mjs +11 -0
  147. package/dist/components/Pagination.mjs +1 -1
  148. package/dist/components/PieChart.mjs +3 -3
  149. package/dist/components/Popconfirm.mjs +2 -2
  150. package/dist/components/Popover.mjs +2 -2
  151. package/dist/components/QRCode.d.mts +2 -2
  152. package/dist/components/QRCode.mjs +1 -1
  153. package/dist/components/RadarChart.mjs +4 -4
  154. package/dist/components/Rate.mjs +1 -1
  155. package/dist/components/ScatterChart.mjs +5 -4
  156. package/dist/components/ScrollArea.d.mts +10 -0
  157. package/dist/components/ScrollArea.mjs +8 -0
  158. package/dist/components/ScrollSpy.mjs +1 -1
  159. package/dist/components/Signature.mjs +1 -1
  160. package/dist/components/SplitButton.d.mts +38 -0
  161. package/dist/components/SplitButton.mjs +12 -0
  162. package/dist/components/Splitter.mjs +1 -1
  163. package/dist/components/Stepper.d.mts +2 -0
  164. package/dist/components/Stepper.mjs +2 -1
  165. package/dist/components/SunburstChart.mjs +3 -3
  166. package/dist/components/Switch.d.mts +5 -1
  167. package/dist/components/Switch.mjs +2 -1
  168. package/dist/components/Table.mjs +2 -2
  169. package/dist/components/TagsInput.d.mts +41 -0
  170. package/dist/components/TagsInput.mjs +13 -0
  171. package/dist/components/TaskBoard.mjs +1 -1
  172. package/dist/components/Textarea.mjs +1 -1
  173. package/dist/components/Tooltip.mjs +2 -2
  174. package/dist/components/Tour.mjs +1 -1
  175. package/dist/components/TreeMapChart.mjs +3 -3
  176. package/dist/components/TreeSelect.mjs +2 -1
  177. package/dist/components/Upload.mjs +1 -1
  178. package/dist/hooks/useChartInteraction.d.mts +5 -0
  179. package/dist/hooks/useChartInteraction.mjs +1 -1
  180. package/dist/index.d.mts +17 -1
  181. package/dist/index.mjs +406 -0
  182. package/package.json +117 -2
  183. package/dist/chunk-7AFRHC7P.mjs +0 -312
  184. package/dist/chunk-CB4SK5AU.mjs +0 -235
  185. package/dist/chunk-KPACLRQH.mjs +0 -55
  186. package/dist/chunk-YIB6ZXZF.mjs +0 -386
@@ -2,6 +2,7 @@
2
2
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
3
3
  import {
4
4
  classNames,
5
+ createProgrammaticScrollLock,
5
6
  createScrollSpyObserver,
6
7
  createScrollSpyPayload,
7
8
  flattenScrollSpyItems,
@@ -42,6 +43,7 @@ var ScrollSpy = ({
42
43
  const activeKeyString = currentActiveKey === void 0 ? "" : getScrollSpyKeyString(currentActiveKey);
43
44
  const getContainerRef = useRef(getContainer);
44
45
  getContainerRef.current = getContainer;
46
+ const scrollLockRef = useRef(createProgrammaticScrollLock(() => getContainerRef.current()));
45
47
  const onActiveKeyChangeRef = useRef(onActiveKeyChange);
46
48
  onActiveKeyChangeRef.current = onActiveKeyChange;
47
49
  const emitActive = useCallback(
@@ -68,15 +70,24 @@ var ScrollSpy = ({
68
70
  offsetTop,
69
71
  targetOffset,
70
72
  bounds,
71
- onChange: (item) => emitActive(item, "scroll")
73
+ onChange: (item) => {
74
+ if (scrollLockRef.current.isLocked()) return;
75
+ emitActive(item, "scroll");
76
+ }
72
77
  });
73
78
  }, [bounds, emitActive, items, offsetTop, targetOffset]);
79
+ useEffect(() => {
80
+ return () => {
81
+ scrollLockRef.current.dispose();
82
+ };
83
+ }, []);
74
84
  const handleClick = useCallback(
75
85
  (item, event) => {
76
86
  event.preventDefault();
77
87
  if (item.disabled) return;
78
88
  onClick?.(item, event);
79
89
  emitActive(item, "click");
90
+ scrollLockRef.current.lock();
80
91
  scrollToScrollSpyItem(item, getContainerRef.current(), targetOffset ?? offsetTop);
81
92
  },
82
93
  [emitActive, offsetTop, onClick, targetOffset]
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Pagination
3
- } from "./chunk-HHIW7V7B.mjs";
3
+ } from "./chunk-M6ZPTGBV.mjs";
4
4
  import {
5
5
  VirtualList
6
6
  } from "./chunk-Y5X3G2LD.mjs";
@@ -0,0 +1,81 @@
1
+ import {
2
+ useTigerConfig
3
+ } from "./chunk-YSIXURBW.mjs";
4
+
5
+ // src/components/Code.tsx
6
+ import { useEffect, useMemo, useState } from "react";
7
+ import {
8
+ codeBlockPreClasses,
9
+ copyTextToClipboard,
10
+ getCodeBlockContainerClasses,
11
+ getCodeBlockCopyButtonClasses,
12
+ getCodeLabels,
13
+ mergeTigerLocale,
14
+ resolveLocaleText
15
+ } from "@expcat/tigercat-core";
16
+ import { jsx, jsxs } from "react/jsx-runtime";
17
+ var Code = ({
18
+ code,
19
+ copyable = true,
20
+ copyLabel,
21
+ copiedLabel,
22
+ copyFailedLabel,
23
+ locale,
24
+ labels: labelsOverride,
25
+ onCopy,
26
+ className,
27
+ ...props
28
+ }) => {
29
+ const config = useTigerConfig();
30
+ const mergedLocale = useMemo(
31
+ () => mergeTigerLocale(config.locale, locale),
32
+ [config.locale, locale]
33
+ );
34
+ const labels = useMemo(
35
+ () => getCodeLabels(mergedLocale, labelsOverride),
36
+ [mergedLocale, labelsOverride]
37
+ );
38
+ const resolvedCopyLabel = resolveLocaleText(labels.copyLabel, copyLabel);
39
+ const resolvedCopiedLabel = resolveLocaleText(labels.copiedLabel, copiedLabel);
40
+ const resolvedCopyFailedLabel = resolveLocaleText(labels.copyFailedLabel, copyFailedLabel);
41
+ const [copyStatus, setCopyStatus] = useState("idle");
42
+ useEffect(() => {
43
+ if (copyStatus === "idle") return;
44
+ const timer = window.setTimeout(() => {
45
+ setCopyStatus("idle");
46
+ }, 1500);
47
+ return () => window.clearTimeout(timer);
48
+ }, [copyStatus]);
49
+ const handleCopy = async () => {
50
+ if (!copyable) return;
51
+ const ok = await copyTextToClipboard(code);
52
+ if (ok) {
53
+ setCopyStatus("copied");
54
+ onCopy?.(code);
55
+ } else {
56
+ setCopyStatus("failed");
57
+ }
58
+ };
59
+ const containerClasses = getCodeBlockContainerClasses(className);
60
+ const copyButtonClasses = getCodeBlockCopyButtonClasses(copyStatus);
61
+ const buttonLabel = copyStatus === "failed" ? resolvedCopyFailedLabel : copyStatus === "copied" ? resolvedCopiedLabel : resolvedCopyLabel;
62
+ return /* @__PURE__ */ jsxs("div", { className: containerClasses, ...props, children: [
63
+ /* @__PURE__ */ jsx("pre", { className: codeBlockPreClasses, children: /* @__PURE__ */ jsx("code", { className: "block", children: code }) }),
64
+ copyable && /* @__PURE__ */ jsx(
65
+ "button",
66
+ {
67
+ type: "button",
68
+ className: copyButtonClasses,
69
+ onClick: handleCopy,
70
+ "aria-label": buttonLabel,
71
+ children: buttonLabel
72
+ }
73
+ )
74
+ ] });
75
+ };
76
+ var Code_default = Code;
77
+
78
+ export {
79
+ Code,
80
+ Code_default
81
+ };
@@ -58,6 +58,9 @@ var CollapsePanel = ({
58
58
  collapseContext.handlePanelClick(panelKey);
59
59
  }
60
60
  }, [disabled, collapseContext, panelKey]);
61
+ const handleExtraClick = useCallback((event) => {
62
+ event.stopPropagation();
63
+ }, []);
61
64
  const handleKeyDown = useCallback(
62
65
  (event) => {
63
66
  if (disabled) {
@@ -119,7 +122,7 @@ var CollapsePanel = ({
119
122
  children: [
120
123
  showArrow && collapseContext.expandIconPosition === "start" && arrowIcon,
121
124
  /* @__PURE__ */ jsx("span", { className: collapseHeaderTextClasses, children: header }),
122
- extra && /* @__PURE__ */ jsx("span", { className: "ml-auto", children: extra }),
125
+ extra && /* @__PURE__ */ jsx("span", { className: "ml-auto", onClick: handleExtraClick, children: extra }),
123
126
  showArrow && collapseContext.expandIconPosition === "end" && arrowIcon
124
127
  ]
125
128
  }
@@ -131,6 +134,10 @@ var CollapsePanel = ({
131
134
  "data-tiger-collapse-content": "",
132
135
  className: collapsePanelContentWrapperClasses,
133
136
  style: initialContentStyleRef.current,
137
+ ...!isActive ? {
138
+ inert: true,
139
+ "aria-hidden": true
140
+ } : {},
134
141
  children: /* @__PURE__ */ jsx("div", { className: collapsePanelContentBaseClasses, children })
135
142
  }
136
143
  )
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  useChartInteraction
3
- } from "./chunk-DNOPEJ5I.mjs";
3
+ } from "./chunk-JZZPLKTW.mjs";
4
4
  import {
5
5
  ChartTooltip
6
6
  } from "./chunk-YORCCCQX.mjs";
7
7
  import {
8
8
  ChartCanvas
9
- } from "./chunk-DKNVSQSV.mjs";
9
+ } from "./chunk-CUAXRBKO.mjs";
10
10
  import {
11
11
  ChartLegend
12
12
  } from "./chunk-F2ITBDUS.mjs";
@@ -86,6 +86,7 @@ var PieChart = ({
86
86
  wrapperClasses
87
87
  } = useChartInteraction({
88
88
  hoverable,
89
+ showTooltip,
89
90
  hoveredIndexProp,
90
91
  selectable,
91
92
  selectedIndexProp,
@@ -288,7 +289,7 @@ var PieChart = ({
288
289
  ChartTooltip,
289
290
  {
290
291
  content: tooltipContent,
291
- open: hoverable && resolvedHoveredIndex !== null && tooltipContent !== "",
292
+ open: resolvedHoveredIndex !== null && tooltipContent !== "",
292
293
  x: tooltipPosition.x,
293
294
  y: tooltipPosition.y
294
295
  }
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-XZVQ3PJS.mjs";
7
7
  import {
8
8
  Loading
9
- } from "./chunk-K4GIKSZE.mjs";
9
+ } from "./chunk-I2BENK5X.mjs";
10
10
  import {
11
11
  Tag
12
12
  } from "./chunk-7EXOY7GD.mjs";
@@ -19,6 +19,9 @@ import {
19
19
  import {
20
20
  Avatar
21
21
  } from "./chunk-OO562MFD.mjs";
22
+ import {
23
+ useTigerConfig
24
+ } from "./chunk-YSIXURBW.mjs";
22
25
 
23
26
  // src/components/ActivityFeed.tsx
24
27
  import { useMemo } from "react";
@@ -26,6 +29,9 @@ import {
26
29
  classNames,
27
30
  buildActivityGroups,
28
31
  formatActivityTime,
32
+ getActivityFeedLabels,
33
+ mergeTigerLocale,
34
+ resolveLocaleText,
29
35
  toActivityTimelineItems,
30
36
  activityItemClasses,
31
37
  activityItemLayoutClasses,
@@ -97,8 +103,10 @@ var ActivityFeed = ({
97
103
  groupBy,
98
104
  groupOrder,
99
105
  loading = false,
100
- loadingText = "\u52A0\u8F7D\u4E2D...",
101
- emptyText = "\u6682\u65E0\u52A8\u6001",
106
+ loadingText,
107
+ emptyText,
108
+ locale,
109
+ labels: labelsOverride,
102
110
  showAvatar = true,
103
111
  showTime = true,
104
112
  showGroupTitle = true,
@@ -107,6 +115,17 @@ var ActivityFeed = ({
107
115
  className,
108
116
  ...props
109
117
  }) => {
118
+ const config = useTigerConfig();
119
+ const mergedLocale = useMemo(
120
+ () => mergeTigerLocale(config.locale, locale),
121
+ [config.locale, locale]
122
+ );
123
+ const labels = useMemo(
124
+ () => getActivityFeedLabels(mergedLocale, labelsOverride),
125
+ [mergedLocale, labelsOverride]
126
+ );
127
+ const resolvedLoadingText = resolveLocaleText(labels.loadingText, loadingText);
128
+ const resolvedEmptyText = resolveLocaleText(labels.emptyText, emptyText);
110
129
  const resolvedGroups = useMemo(
111
130
  () => buildActivityGroups(items, groups, groupBy, groupOrder),
112
131
  [items, groups, groupBy, groupOrder]
@@ -176,7 +195,7 @@ var ActivityFeed = ({
176
195
  {
177
196
  className: wrapperClasses,
178
197
  role: "feed",
179
- "aria-label": "\u52A8\u6001",
198
+ "aria-label": "Activity",
180
199
  "aria-busy": true,
181
200
  ...props,
182
201
  "data-tiger-activity-feed": true,
@@ -186,7 +205,7 @@ var ActivityFeed = ({
186
205
  variant: "bordered",
187
206
  size: "sm",
188
207
  className: classNames("tiger-activity-feed-loading", activityFeedStateCardClasses),
189
- children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-8", children: /* @__PURE__ */ jsx(Loading, { text: loadingText, className: activityFeedLoadingClasses }) })
208
+ children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-8", children: /* @__PURE__ */ jsx(Loading, { text: resolvedLoadingText, className: activityFeedLoadingClasses }) })
190
209
  }
191
210
  )
192
211
  }
@@ -198,7 +217,7 @@ var ActivityFeed = ({
198
217
  {
199
218
  className: wrapperClasses,
200
219
  role: "feed",
201
- "aria-label": "\u52A8\u6001",
220
+ "aria-label": "Activity",
202
221
  ...props,
203
222
  "data-tiger-activity-feed": true,
204
223
  children: /* @__PURE__ */ jsx(
@@ -226,7 +245,7 @@ var ActivityFeed = ({
226
245
  )
227
246
  }
228
247
  ),
229
- /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", color: "muted", className: "font-medium", children: emptyText })
248
+ /* @__PURE__ */ jsx(Text, { tag: "div", size: "sm", color: "muted", className: "font-medium", children: resolvedEmptyText })
230
249
  ] })
231
250
  }
232
251
  )
@@ -238,7 +257,7 @@ var ActivityFeed = ({
238
257
  {
239
258
  className: wrapperClasses,
240
259
  role: "feed",
241
- "aria-label": "\u52A8\u6001",
260
+ "aria-label": "Activity",
242
261
  ...props,
243
262
  "data-tiger-activity-feed": true,
244
263
  children: resolvedGroups.map((group, groupIndex) => {
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  ActivityFeed,
3
3
  ActivityFeed_default
4
- } from "../chunk-5CKMYMTS.mjs";
4
+ } from "../chunk-ZATZRXMW.mjs";
5
5
  import "../chunk-QB5472NM.mjs";
6
6
  import "../chunk-XZVQ3PJS.mjs";
7
- import "../chunk-K4GIKSZE.mjs";
7
+ import "../chunk-I2BENK5X.mjs";
8
8
  import "../chunk-7EXOY7GD.mjs";
9
9
  import "../chunk-HLS4CHWX.mjs";
10
10
  import "../chunk-IXV5YBCZ.mjs";
11
- import "../chunk-HKAZXG74.mjs";
12
11
  import "../chunk-OO562MFD.mjs";
13
12
  import "../chunk-FPQMJFFM.mjs";
13
+ import "../chunk-HKAZXG74.mjs";
14
14
  import "../chunk-YSIXURBW.mjs";
15
15
  import "../chunk-TGXBCKOU.mjs";
16
16
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Affix
3
- } from "../chunk-XMTEMBQV.mjs";
3
+ } from "../chunk-EAAWB3CK.mjs";
4
4
  export {
5
5
  Affix
6
6
  };
@@ -3,7 +3,7 @@ import {
3
3
  AnchorLink,
4
4
  Anchor_default,
5
5
  useAnchorContext
6
- } from "../chunk-IXQAECFP.mjs";
6
+ } from "../chunk-3QNIFKVF.mjs";
7
7
  export {
8
8
  Anchor,
9
9
  AnchorLink,
@@ -1,14 +1,15 @@
1
1
  import {
2
2
  AreaChart,
3
3
  AreaChart_default
4
- } from "../chunk-FYINJRYN.mjs";
5
- import "../chunk-DNOPEJ5I.mjs";
4
+ } from "../chunk-R7YZ6FKP.mjs";
5
+ import "../chunk-5JETWHLJ.mjs";
6
+ import "../chunk-JZZPLKTW.mjs";
7
+ import "../chunk-SDLMB34Y.mjs";
6
8
  import "../chunk-YORCCCQX.mjs";
7
9
  import "../chunk-RQSQXQN6.mjs";
8
- import "../chunk-DKNVSQSV.mjs";
10
+ import "../chunk-CUAXRBKO.mjs";
9
11
  import "../chunk-677VSTPW.mjs";
10
12
  import "../chunk-F2ITBDUS.mjs";
11
- import "../chunk-SDLMB34Y.mjs";
12
13
  export {
13
14
  AreaChart,
14
15
  AreaChart_default as default
@@ -0,0 +1,10 @@
1
+ import React__default from 'react';
2
+ import { AspectRatioProps as AspectRatioProps$1 } from '@expcat/tigercat-core';
3
+
4
+ interface AspectRatioProps extends AspectRatioProps$1, Omit<React__default.HTMLAttributes<HTMLDivElement>, 'className'> {
5
+ /** Additional CSS classes */
6
+ className?: string;
7
+ }
8
+ declare const AspectRatio: React__default.ForwardRefExoticComponent<AspectRatioProps & React__default.RefAttributes<HTMLDivElement>>;
9
+
10
+ export { AspectRatio, type AspectRatioProps, AspectRatio as default };
@@ -0,0 +1,8 @@
1
+ import {
2
+ AspectRatio,
3
+ AspectRatio_default
4
+ } from "../chunk-NT7GW2FD.mjs";
5
+ export {
6
+ AspectRatio,
7
+ AspectRatio_default as default
8
+ };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AutoComplete
3
- } from "../chunk-2ENQZECC.mjs";
3
+ } from "../chunk-HAXRHSCN.mjs";
4
4
  import "../chunk-HKAZXG74.mjs";
5
5
  import "../chunk-YSIXURBW.mjs";
6
6
  import "../chunk-TGXBCKOU.mjs";
@@ -1,14 +1,15 @@
1
1
  import {
2
2
  BarChart,
3
3
  BarChart_default
4
- } from "../chunk-UT5BV2VO.mjs";
5
- import "../chunk-DNOPEJ5I.mjs";
4
+ } from "../chunk-AYFKHWJS.mjs";
5
+ import "../chunk-5JETWHLJ.mjs";
6
+ import "../chunk-JZZPLKTW.mjs";
7
+ import "../chunk-SDLMB34Y.mjs";
6
8
  import "../chunk-YORCCCQX.mjs";
7
9
  import "../chunk-RQSQXQN6.mjs";
8
- import "../chunk-DKNVSQSV.mjs";
10
+ import "../chunk-CUAXRBKO.mjs";
9
11
  import "../chunk-677VSTPW.mjs";
10
12
  import "../chunk-F2ITBDUS.mjs";
11
- import "../chunk-SDLMB34Y.mjs";
12
13
  export {
13
14
  BarChart,
14
15
  BarChart_default as default
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Calendar,
3
3
  Calendar_default
4
- } from "../chunk-BEJZPJIK.mjs";
4
+ } from "../chunk-QOAOOD53.mjs";
5
5
  import "../chunk-YSIXURBW.mjs";
6
6
  import "../chunk-TGXBCKOU.mjs";
7
7
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Cascader
3
- } from "../chunk-YIB6ZXZF.mjs";
3
+ } from "../chunk-SXWEFZOF.mjs";
4
4
  import "../chunk-HKAZXG74.mjs";
5
5
  import "../chunk-YSIXURBW.mjs";
6
6
  import "../chunk-TGXBCKOU.mjs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  ChartCanvas,
3
3
  ChartCanvas_default
4
- } from "../chunk-DKNVSQSV.mjs";
4
+ } from "../chunk-CUAXRBKO.mjs";
5
5
  export {
6
6
  ChartCanvas,
7
7
  ChartCanvas_default as default
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  ChatWindow,
3
3
  ChatWindow_default
4
- } from "../chunk-PXRZ6CKY.mjs";
4
+ } from "../chunk-MJVSZ2UJ.mjs";
5
5
  import "../chunk-Y5X3G2LD.mjs";
6
- import "../chunk-F6WV53BS.mjs";
7
- import "../chunk-W7BC4I2Y.mjs";
6
+ import "../chunk-3LDDXHW2.mjs";
8
7
  import "../chunk-F6T3OLTQ.mjs";
9
- import "../chunk-UYJJLHVA.mjs";
8
+ import "../chunk-W7BC4I2Y.mjs";
9
+ import "../chunk-PMQJ6AYT.mjs";
10
10
  import "../chunk-34VGG7AK.mjs";
11
11
  import "../chunk-MEFARVQI.mjs";
12
12
  import "../chunk-5TE7KLE5.mjs";
@@ -1,7 +1,9 @@
1
1
  import {
2
2
  Code,
3
3
  Code_default
4
- } from "../chunk-KPACLRQH.mjs";
4
+ } from "../chunk-YJ5T4XZN.mjs";
5
+ import "../chunk-YSIXURBW.mjs";
6
+ import "../chunk-TGXBCKOU.mjs";
5
7
  export {
6
8
  Code,
7
9
  Code_default as default
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CollapsePanel,
3
3
  CollapsePanel_default
4
- } from "../chunk-VVNFXJMN.mjs";
4
+ } from "../chunk-YNDPQVEK.mjs";
5
5
  import "../chunk-Y6557RWE.mjs";
6
6
  export {
7
7
  CollapsePanel,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ColorPicker
3
- } from "../chunk-6MGQAJ62.mjs";
3
+ } from "../chunk-KL6YJIZ3.mjs";
4
4
  import "../chunk-HKAZXG74.mjs";
5
5
  export {
6
6
  ColorPicker
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  CommentThread,
3
3
  CommentThread_default
4
- } from "../chunk-UD4DTVJZ.mjs";
5
- import "../chunk-UYJJLHVA.mjs";
4
+ } from "../chunk-4C2X5PZO.mjs";
5
+ import "../chunk-PMQJ6AYT.mjs";
6
6
  import "../chunk-34VGG7AK.mjs";
7
7
  import "../chunk-MEFARVQI.mjs";
8
8
  import "../chunk-5TE7KLE5.mjs";
@@ -0,0 +1,36 @@
1
+ import React__default from 'react';
2
+ import { ContextMenuProps as ContextMenuProps$1, FloatingPlacement, ContextMenuItemProps as ContextMenuItemProps$1, ContextMenuMenuProps as ContextMenuMenuProps$1, ContextMenuSubProps as ContextMenuSubProps$1 } from '@expcat/tigercat-core';
3
+
4
+ interface ContextMenuContextValue {
5
+ closeOnClick: boolean;
6
+ handleItemClick: () => void;
7
+ portal: boolean;
8
+ open: boolean;
9
+ }
10
+ declare const ContextMenuContext: React__default.Context<ContextMenuContextValue | null>;
11
+ interface ContextMenuMenuProps extends Omit<ContextMenuMenuProps$1, 'style'>, Omit<React__default.HTMLAttributes<HTMLDivElement>, 'style'> {
12
+ style?: React__default.CSSProperties;
13
+ children?: React__default.ReactNode;
14
+ }
15
+ declare const ContextMenuMenu: React__default.FC<ContextMenuMenuProps>;
16
+ interface ContextMenuItemProps extends Omit<ContextMenuItemProps$1, 'className' | 'key'>, Omit<React__default.ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'disabled'> {
17
+ className?: string;
18
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
19
+ children?: React__default.ReactNode;
20
+ }
21
+ declare const ContextMenuItem: React__default.FC<ContextMenuItemProps>;
22
+ interface ContextMenuSubProps extends Omit<ContextMenuSubProps$1, 'className'> {
23
+ className?: string;
24
+ style?: React__default.CSSProperties;
25
+ children?: React__default.ReactNode;
26
+ }
27
+ declare const ContextMenuSub: React__default.FC<ContextMenuSubProps>;
28
+ interface ContextMenuProps extends Omit<ContextMenuProps$1, 'style'>, Omit<React__default.HTMLAttributes<HTMLDivElement>, 'style' | 'onContextMenu'> {
29
+ style?: React__default.CSSProperties;
30
+ placement?: FloatingPlacement;
31
+ onOpenChange?: (open: boolean) => void;
32
+ children?: React__default.ReactNode;
33
+ }
34
+ declare const ContextMenu: React__default.FC<ContextMenuProps>;
35
+
36
+ export { ContextMenu, ContextMenuContext, type ContextMenuContextValue, ContextMenuItem, type ContextMenuItemProps, ContextMenuMenu, type ContextMenuMenuProps, type ContextMenuProps, ContextMenuSub, type ContextMenuSubProps, ContextMenu as default };
@@ -0,0 +1,17 @@
1
+ import {
2
+ ContextMenu,
3
+ ContextMenuContext,
4
+ ContextMenuItem,
5
+ ContextMenuMenu,
6
+ ContextMenuSub,
7
+ ContextMenu_default
8
+ } from "../chunk-EW43YBPV.mjs";
9
+ import "../chunk-HKAZXG74.mjs";
10
+ export {
11
+ ContextMenu,
12
+ ContextMenuContext,
13
+ ContextMenuItem,
14
+ ContextMenuMenu,
15
+ ContextMenuSub,
16
+ ContextMenu_default as default
17
+ };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  DataExport
3
- } from "../chunk-D33BIMGK.mjs";
4
- import "../chunk-YI6YWH66.mjs";
3
+ } from "../chunk-EG7EMDKK.mjs";
4
+ import "../chunk-RE5ZLA5D.mjs";
5
5
  import "../chunk-HKAZXG74.mjs";
6
6
  import "../chunk-YSIXURBW.mjs";
7
7
  import "../chunk-TGXBCKOU.mjs";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  DataTableWithToolbar,
3
3
  DataTableWithToolbar_default
4
- } from "../chunk-V6P7ZK6O.mjs";
5
- import "../chunk-BOGOQ44C.mjs";
4
+ } from "../chunk-QXSUG7SN.mjs";
5
+ import "../chunk-CQOLQAB5.mjs";
6
6
  import "../chunk-KVCI2346.mjs";
7
- import "../chunk-HOYBHB7B.mjs";
8
7
  import "../chunk-IIWUQK2P.mjs";
9
8
  import "../chunk-AKNWUI7K.mjs";
10
- import "../chunk-HHIW7V7B.mjs";
11
- import "../chunk-ZG56T75O.mjs";
12
- import "../chunk-F6WV53BS.mjs";
13
- import "../chunk-W7BC4I2Y.mjs";
9
+ import "../chunk-FNK2VWPP.mjs";
10
+ import "../chunk-M6ZPTGBV.mjs";
11
+ import "../chunk-WTHWLCRL.mjs";
12
+ import "../chunk-3LDDXHW2.mjs";
14
13
  import "../chunk-F6T3OLTQ.mjs";
14
+ import "../chunk-W7BC4I2Y.mjs";
15
15
  import "../chunk-34VGG7AK.mjs";
16
16
  import "../chunk-EPWAROC2.mjs";
17
17
  import "../chunk-OL3RXYMG.mjs";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  DonutChart,
3
3
  DonutChart_default
4
- } from "../chunk-EW5EO7VE.mjs";
5
- import "../chunk-QGZ32NFQ.mjs";
6
- import "../chunk-DNOPEJ5I.mjs";
4
+ } from "../chunk-BYD7EAWK.mjs";
5
+ import "../chunk-Z23KOLNU.mjs";
6
+ import "../chunk-JZZPLKTW.mjs";
7
7
  import "../chunk-YORCCCQX.mjs";
8
- import "../chunk-DKNVSQSV.mjs";
8
+ import "../chunk-CUAXRBKO.mjs";
9
9
  import "../chunk-F2ITBDUS.mjs";
10
10
  export {
11
11
  DonutChart,
@@ -3,7 +3,7 @@ import {
3
3
  DropdownContext,
4
4
  DropdownItem,
5
5
  DropdownMenu
6
- } from "../chunk-YI6YWH66.mjs";
6
+ } from "../chunk-RE5ZLA5D.mjs";
7
7
  import "../chunk-HKAZXG74.mjs";
8
8
  export {
9
9
  Dropdown,
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  FileManager,
3
3
  FileManager_default
4
- } from "../chunk-VA6PZWOH.mjs";
4
+ } from "../chunk-5SEMRHBD.mjs";
5
+ import "../chunk-MEFARVQI.mjs";
5
6
  import "../chunk-YSIXURBW.mjs";
6
7
  import "../chunk-TGXBCKOU.mjs";
7
8
  export {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  FloatButton,
3
3
  FloatButtonGroup
4
- } from "../chunk-G7D4QV7A.mjs";
4
+ } from "../chunk-O7TV5OKS.mjs";
5
5
  export {
6
6
  FloatButton,
7
7
  FloatButtonGroup
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  FormItem
3
- } from "../chunk-ZH5ZBLAN.mjs";
3
+ } from "../chunk-RUQ3F3MV.mjs";
4
4
  import "../chunk-OQLP452R.mjs";
5
5
  import "../chunk-F6T3OLTQ.mjs";
6
6
  import "../chunk-HKAZXG74.mjs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  FormWizard,
3
3
  FormWizard_default
4
- } from "../chunk-IBSOUQGB.mjs";
4
+ } from "../chunk-RRGPDFDI.mjs";
5
5
  import "../chunk-6UIVNRAR.mjs";
6
6
  import "../chunk-5TE7KLE5.mjs";
7
7
  import "../chunk-ZJWUBR2X.mjs";