@lobehub/ui 1.11.1 → 1.11.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.
Files changed (183) hide show
  1. package/package.json +1 -1
  2. package/lib/ActionIcon/index.d.ts +0 -49
  3. package/lib/ActionIcon/index.js +0 -80
  4. package/lib/ActionIcon/style.d.ts +0 -6
  5. package/lib/ActionIcon/style.js +0 -20
  6. package/lib/Avatar/index.d.ts +0 -10
  7. package/lib/Avatar/index.js +0 -69
  8. package/lib/Chat/const.d.ts +0 -1
  9. package/lib/Chat/const.js +0 -8
  10. package/lib/Chat/index.d.ts +0 -2
  11. package/lib/Chat/index.js +0 -27
  12. package/lib/Chat/store/index.d.ts +0 -20
  13. package/lib/Chat/store/index.js +0 -50
  14. package/lib/Chat/store/initialState.d.ts +0 -28
  15. package/lib/Chat/store/initialState.js +0 -16
  16. package/lib/Chat/store/messageReducer.d.ts +0 -37
  17. package/lib/Chat/store/messageReducer.js +0 -75
  18. package/lib/Chat/store/selectors.d.ts +0 -9
  19. package/lib/Chat/store/selectors.js +0 -51
  20. package/lib/Chat/store/store.d.ts +0 -34
  21. package/lib/Chat/store/store.js +0 -246
  22. package/lib/Chat/types.d.ts +0 -77
  23. package/lib/Chat/types.js +0 -5
  24. package/lib/Chat/utils/fetch.d.ts +0 -11
  25. package/lib/Chat/utils/fetch.js +0 -108
  26. package/lib/ContextMenu/MenuItem/icons.d.ts +0 -4
  27. package/lib/ContextMenu/MenuItem/icons.js +0 -82
  28. package/lib/ContextMenu/MenuItem/index.d.ts +0 -12
  29. package/lib/ContextMenu/MenuItem/index.js +0 -79
  30. package/lib/ContextMenu/MenuItem/style.d.ts +0 -7
  31. package/lib/ContextMenu/MenuItem/style.js +0 -24
  32. package/lib/ContextMenu/index.d.ts +0 -9
  33. package/lib/ContextMenu/index.js +0 -270
  34. package/lib/ContextMenu/style.d.ts +0 -4
  35. package/lib/ContextMenu/style.js +0 -20
  36. package/lib/ContextMenu/types/index.d.ts +0 -5
  37. package/lib/ContextMenu/types/index.js +0 -16
  38. package/lib/ContextMenu/types/menuItem.d.ts +0 -21
  39. package/lib/ContextMenu/types/menuItem.js +0 -5
  40. package/lib/Conversation/App.d.ts +0 -13
  41. package/lib/Conversation/App.js +0 -50
  42. package/lib/Conversation/ChatList/MessageItem/Content.d.ts +0 -8
  43. package/lib/Conversation/ChatList/MessageItem/Content.js +0 -109
  44. package/lib/Conversation/ChatList/MessageItem/Toolbar.d.ts +0 -10
  45. package/lib/Conversation/ChatList/MessageItem/Toolbar.js +0 -100
  46. package/lib/Conversation/ChatList/MessageItem/index.d.ts +0 -9
  47. package/lib/Conversation/ChatList/MessageItem/index.js +0 -132
  48. package/lib/Conversation/ChatList/index.d.ts +0 -14
  49. package/lib/Conversation/ChatList/index.js +0 -67
  50. package/lib/Conversation/InputArea/ActionBar.d.ts +0 -4
  51. package/lib/Conversation/InputArea/ActionBar.js +0 -79
  52. package/lib/Conversation/InputArea/index.d.ts +0 -4
  53. package/lib/Conversation/InputArea/index.js +0 -109
  54. package/lib/Conversation/StoreUpdater.d.ts +0 -7
  55. package/lib/Conversation/StoreUpdater.js +0 -32
  56. package/lib/Conversation/index.d.ts +0 -8
  57. package/lib/Conversation/index.js +0 -33
  58. package/lib/CopyButton/index.d.ts +0 -26
  59. package/lib/CopyButton/index.js +0 -41
  60. package/lib/DraggablePanel/index.d.ts +0 -92
  61. package/lib/DraggablePanel/index.js +0 -202
  62. package/lib/DraggablePanel/style.d.ts +0 -18
  63. package/lib/DraggablePanel/style.js +0 -38
  64. package/lib/DraggablePanel/utils.d.ts +0 -2
  65. package/lib/DraggablePanel/utils.js +0 -19
  66. package/lib/EditableMessage/index.d.ts +0 -43
  67. package/lib/EditableMessage/index.js +0 -73
  68. package/lib/EditableMessageList/index.d.ts +0 -9
  69. package/lib/EditableMessageList/index.js +0 -109
  70. package/lib/EditableText/index.d.ts +0 -5
  71. package/lib/EditableText/index.js +0 -43
  72. package/lib/Highlighter/SyntaxHighlighter/Prism.d.ts +0 -7
  73. package/lib/Highlighter/SyntaxHighlighter/Prism.js +0 -46
  74. package/lib/Highlighter/SyntaxHighlighter/index.d.ts +0 -5
  75. package/lib/Highlighter/SyntaxHighlighter/index.js +0 -64
  76. package/lib/Highlighter/SyntaxHighlighter/style.d.ts +0 -5
  77. package/lib/Highlighter/SyntaxHighlighter/style.js +0 -23
  78. package/lib/Highlighter/index.d.ts +0 -36
  79. package/lib/Highlighter/index.js +0 -56
  80. package/lib/Highlighter/style.d.ts +0 -5
  81. package/lib/Highlighter/style.js +0 -25
  82. package/lib/Icon/index.d.ts +0 -21
  83. package/lib/Icon/index.js +0 -45
  84. package/lib/Input/index.d.ts +0 -13
  85. package/lib/Input/index.js +0 -47
  86. package/lib/Input/style.d.ts +0 -6
  87. package/lib/Input/style.js +0 -20
  88. package/lib/List/ListItem/index.d.ts +0 -64
  89. package/lib/List/ListItem/index.js +0 -115
  90. package/lib/List/ListItem/time.d.ts +0 -2
  91. package/lib/List/ListItem/time.js +0 -18
  92. package/lib/List/index.d.ts +0 -5
  93. package/lib/List/index.js +0 -13
  94. package/lib/Logo/Divider.d.ts +0 -3
  95. package/lib/Logo/Divider.js +0 -28
  96. package/lib/Logo/Logo3D.d.ts +0 -3
  97. package/lib/Logo/Logo3D.js +0 -19
  98. package/lib/Logo/LogoFlat.d.ts +0 -3
  99. package/lib/Logo/LogoFlat.js +0 -110
  100. package/lib/Logo/LogoHighContrast.d.ts +0 -3
  101. package/lib/Logo/LogoHighContrast.js +0 -32
  102. package/lib/Logo/LogoText.d.ts +0 -3
  103. package/lib/Logo/LogoText.js +0 -26
  104. package/lib/Logo/index.d.ts +0 -20
  105. package/lib/Logo/index.js +0 -102
  106. package/lib/Logo/style.d.ts +0 -4
  107. package/lib/Logo/style.js +0 -18
  108. package/lib/Markdown/Code.d.ts +0 -3
  109. package/lib/Markdown/Code.js +0 -19
  110. package/lib/Markdown/CodeBlock.d.ts +0 -3
  111. package/lib/Markdown/CodeBlock.js +0 -36
  112. package/lib/Markdown/index.d.ts +0 -13
  113. package/lib/Markdown/index.js +0 -39
  114. package/lib/Markdown/style.d.ts +0 -4
  115. package/lib/Markdown/style.js +0 -20
  116. package/lib/MessageInput/index.d.ts +0 -37
  117. package/lib/MessageInput/index.js +0 -63
  118. package/lib/MessageModal/index.d.ts +0 -11
  119. package/lib/MessageModal/index.js +0 -87
  120. package/lib/SearchBar/index.d.ts +0 -8
  121. package/lib/SearchBar/index.js +0 -90
  122. package/lib/SearchBar/style.d.ts +0 -6
  123. package/lib/SearchBar/style.js +0 -21
  124. package/lib/SideNav/index.d.ts +0 -18
  125. package/lib/SideNav/index.js +0 -46
  126. package/lib/SideNav/style.d.ts +0 -1
  127. package/lib/SideNav/style.js +0 -16
  128. package/lib/Snippet/index.d.ts +0 -29
  129. package/lib/Snippet/index.js +0 -44
  130. package/lib/Snippet/style.d.ts +0 -1
  131. package/lib/Snippet/style.js +0 -16
  132. package/lib/StroyBook/index.d.ts +0 -17
  133. package/lib/StroyBook/index.js +0 -64
  134. package/lib/StroyBook/style.d.ts +0 -8
  135. package/lib/StroyBook/style.js +0 -22
  136. package/lib/Swatches/index.d.ts +0 -8
  137. package/lib/Swatches/index.js +0 -50
  138. package/lib/TabsNav/index.d.ts +0 -22
  139. package/lib/TabsNav/index.js +0 -26
  140. package/lib/TabsNav/style.d.ts +0 -3
  141. package/lib/TabsNav/style.js +0 -22
  142. package/lib/ThemeProvider/GlobalStyle.d.ts +0 -3
  143. package/lib/ThemeProvider/GlobalStyle.js +0 -31
  144. package/lib/ThemeProvider/index.d.ts +0 -22
  145. package/lib/ThemeProvider/index.js +0 -46
  146. package/lib/ThemeSwitch/index.d.ts +0 -27
  147. package/lib/ThemeSwitch/index.js +0 -66
  148. package/lib/Tooltip/index.d.ts +0 -5
  149. package/lib/Tooltip/index.js +0 -29
  150. package/lib/Tooltip/style.d.ts +0 -3
  151. package/lib/Tooltip/style.js +0 -18
  152. package/lib/components/ControlInput.d.ts +0 -9
  153. package/lib/components/ControlInput.js +0 -90
  154. package/lib/hooks/useCopied.d.ts +0 -4
  155. package/lib/hooks/useCopied.js +0 -34
  156. package/lib/hooks/useHighlight.d.ts +0 -36
  157. package/lib/hooks/useHighlight.js +0 -71
  158. package/lib/index.d.ts +0 -27
  159. package/lib/index.js +0 -213
  160. package/lib/styles/algorithms/generateColorPalette.d.ts +0 -11
  161. package/lib/styles/algorithms/generateColorPalette.js +0 -40
  162. package/lib/styles/algorithms/generateCustomStylish.d.ts +0 -17
  163. package/lib/styles/algorithms/generateCustomStylish.js +0 -27
  164. package/lib/styles/algorithms/generateCustomToken.d.ts +0 -3
  165. package/lib/styles/algorithms/generateCustomToken.js +0 -65
  166. package/lib/styles/algorithms/generateTheme.d.ts +0 -5
  167. package/lib/styles/algorithms/generateTheme.js +0 -28
  168. package/lib/styles/colors.d.ts +0 -38
  169. package/lib/styles/colors.js +0 -183
  170. package/lib/styles/index.d.ts +0 -3
  171. package/lib/styles/index.js +0 -26
  172. package/lib/styles/theme/base.d.ts +0 -2
  173. package/lib/styles/theme/base.js +0 -20
  174. package/lib/styles/theme/dark.d.ts +0 -3
  175. package/lib/styles/theme/dark.js +0 -50
  176. package/lib/styles/theme/light.d.ts +0 -3
  177. package/lib/styles/theme/light.js +0 -50
  178. package/lib/types/customToken.d.ts +0 -1027
  179. package/lib/types/global.d.ts +0 -12
  180. package/lib/types/index.d.ts +0 -6
  181. package/lib/types/index.js +0 -5
  182. package/lib/utils/colorUtils.d.ts +0 -1
  183. package/lib/utils/colorUtils.js +0 -18
@@ -1,270 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = require("@floating-ui/react");
12
- var _react2 = require("react");
13
- var _antd = require("antd");
14
- var _MenuItem = _interopRequireDefault(require("./MenuItem"));
15
- var _style = require("./style");
16
- var _jsxRuntime = require("react/jsx-runtime");
17
- var _excluded = ["items", "label", "container"];
18
- var MenuComponent = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, forwardedRef) {
19
- var items = _ref.items,
20
- label = _ref.label,
21
- container = _ref.container,
22
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
23
- var _useStyles = (0, _style.useStyles)(),
24
- styles = _useStyles.styles;
25
- var _useState = (0, _react2.useState)(false),
26
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
27
- isOpen = _useState2[0],
28
- setIsOpen = _useState2[1];
29
- var _useState3 = (0, _react2.useState)(null),
30
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
31
- activeIndex = _useState4[0],
32
- setActiveIndex = _useState4[1];
33
- var _useState5 = (0, _react2.useState)(false),
34
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
35
- allowHover = _useState6[0],
36
- setAllowHover = _useState6[1];
37
- var listItemsRef = (0, _react2.useRef)([]);
38
- var listContentRef = (0, _react2.useRef)(items.map(function (item) {
39
- return item.label;
40
- }));
41
- var allowMouseUpCloseRef = (0, _react2.useRef)(false);
42
- var tree = (0, _react.useFloatingTree)();
43
- var nodeId = (0, _react.useFloatingNodeId)();
44
- var parentId = (0, _react.useFloatingParentNodeId)();
45
- var isNested = parentId !== null;
46
- var _useFloating = (0, _react.useFloating)({
47
- nodeId: nodeId,
48
- open: isOpen,
49
- onOpenChange: setIsOpen,
50
- placement: isNested ? 'right-start' : 'bottom-start',
51
- middleware: [(0, _react.offset)({
52
- mainAxis: isNested ? 0 : 4,
53
- alignmentAxis: isNested ? -4 : 0
54
- }), (0, _react.flip)(), (0, _react.shift)()],
55
- whileElementsMounted: _react.autoUpdate
56
- }),
57
- refs = _useFloating.refs,
58
- floatingStyles = _useFloating.floatingStyles,
59
- context = _useFloating.context;
60
- var hover = (0, _react.useHover)(context, {
61
- enabled: isNested && allowHover,
62
- delay: {
63
- open: 75
64
- },
65
- handleClose: (0, _react.safePolygon)({
66
- blockPointerEvents: true
67
- })
68
- });
69
- var click = (0, _react.useClick)(context, {
70
- event: 'mousedown',
71
- toggle: !isNested || !allowHover,
72
- ignoreMouse: isNested
73
- });
74
- var role = (0, _react.useRole)(context, {
75
- role: 'menu'
76
- });
77
- var dismiss = (0, _react.useDismiss)(context);
78
- var listNavigation = (0, _react.useListNavigation)(context, {
79
- listRef: listItemsRef,
80
- activeIndex: activeIndex,
81
- nested: isNested,
82
- onNavigate: setActiveIndex
83
- });
84
- var typeahead = (0, _react.useTypeahead)(context, {
85
- enabled: isOpen,
86
- listRef: listContentRef,
87
- onMatch: isOpen ? setActiveIndex : undefined,
88
- activeIndex: activeIndex
89
- });
90
- var _useInteractions = (0, _react.useInteractions)([hover, click, role, dismiss, listNavigation, typeahead]),
91
- getReferenceProps = _useInteractions.getReferenceProps,
92
- getFloatingProps = _useInteractions.getFloatingProps,
93
- getItemProps = _useInteractions.getItemProps;
94
-
95
- // Event emitter allows you to communicate across tree components.
96
- // This effect closes all menus when an item gets clicked anywhere
97
- // in the tree.
98
- (0, _react2.useEffect)(function () {
99
- if (!tree) return;
100
- function handleTreeClick() {
101
- setIsOpen(false);
102
- }
103
- function onSubMenuOpen(event) {
104
- if (event.nodeId !== nodeId && event.parentId === parentId) {
105
- setIsOpen(false);
106
- }
107
- }
108
- tree.events.on('click', handleTreeClick);
109
- tree.events.on('menuopen', onSubMenuOpen);
110
- return function () {
111
- tree.events.off('click', handleTreeClick);
112
- tree.events.off('menuopen', onSubMenuOpen);
113
- };
114
- }, [tree, nodeId, parentId]);
115
- (0, _react2.useEffect)(function () {
116
- if (isOpen && tree) {
117
- tree.events.emit('menuopen', {
118
- parentId: parentId,
119
- nodeId: nodeId
120
- });
121
- }
122
- }, [tree, isOpen, nodeId, parentId]);
123
-
124
- // Determine if "hover" logic can run based on the modality of input. This
125
- // prevents unwanted focus synchronization as menus open and close with
126
- // keyboard navigation and the cursor is resting on the menu.
127
- (0, _react2.useEffect)(function () {
128
- function onPointerMove(_ref2) {
129
- var pointerType = _ref2.pointerType;
130
- if (pointerType !== 'touch') {
131
- setAllowHover(true);
132
- }
133
- }
134
- function onKeyDown() {
135
- setAllowHover(false);
136
- }
137
- window.addEventListener('pointermove', onPointerMove, {
138
- once: true,
139
- capture: true
140
- });
141
- window.addEventListener('keydown', onKeyDown, true);
142
- return function () {
143
- window.removeEventListener('pointermove', onPointerMove, {
144
- capture: true
145
- });
146
- window.removeEventListener('keydown', onKeyDown, true);
147
- };
148
- }, [allowHover]);
149
- (0, _react2.useEffect)(function () {
150
- var timeout;
151
- function onContextMenu(e) {
152
- e.preventDefault();
153
- refs.setPositionReference({
154
- getBoundingClientRect: function getBoundingClientRect() {
155
- return {
156
- width: 0,
157
- height: 0,
158
- x: e.clientX,
159
- y: e.clientY,
160
- top: e.clientY,
161
- right: e.clientX,
162
- bottom: e.clientY,
163
- left: e.clientX
164
- };
165
- }
166
- });
167
- setIsOpen(true);
168
- clearTimeout(timeout);
169
- allowMouseUpCloseRef.current = false;
170
- timeout = window.setTimeout(function () {
171
- allowMouseUpCloseRef.current = true;
172
- }, 300);
173
- }
174
- function onMouseUp() {
175
- if (allowMouseUpCloseRef.current) {
176
- setIsOpen(false);
177
- }
178
- }
179
- document.addEventListener('contextmenu', onContextMenu);
180
- document.addEventListener('mouseup', onMouseUp);
181
- return function () {
182
- document.removeEventListener('contextmenu', onContextMenu);
183
- document.removeEventListener('mouseup', onMouseUp);
184
- clearTimeout(timeout);
185
- };
186
- }, [refs, container]);
187
- var renderMenuItem = (0, _react2.useCallback)(function (item, index) {
188
- // 支持渲染分割线
189
- if ('type' in item && item.type === 'divider') return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Divider, {
190
- style: {
191
- margin: '4px 12px',
192
- minWidth: 'auto',
193
- width: 'auto'
194
- }
195
- });
196
- var data = item;
197
- var props = (0, _objectSpread2.default)({
198
- label: data.label,
199
- key: data.key,
200
- icon: data.icon,
201
- shortcut: data.shortcut,
202
- active: activeIndex === index
203
- }, getItemProps({
204
- ref: function ref(node) {
205
- listItemsRef.current[index] = node;
206
- },
207
- onClick: function onClick() {
208
- var _data$onClick;
209
- (_data$onClick = data.onClick) === null || _data$onClick === void 0 ? void 0 : _data$onClick.call(data);
210
- setIsOpen(false);
211
- },
212
- onMouseUp: function onMouseUp() {
213
- var _data$onClick2;
214
- (_data$onClick2 = data.onClick) === null || _data$onClick2 === void 0 ? void 0 : _data$onClick2.call(data);
215
- setIsOpen(false);
216
- }
217
- }));
218
- if ('children' in item) {
219
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(MenuComponent, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
220
- items: item.children
221
- }));
222
- }
223
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, (0, _objectSpread2.default)({}, props));
224
- }, [activeIndex]);
225
- var referenceRef = (0, _react.useMergeRefs)([refs.setReference, forwardedRef]);
226
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.FloatingNode, {
227
- id: nodeId,
228
- children: [!label ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_MenuItem.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({
229
- ref: referenceRef,
230
- nested: isNested,
231
- label: label
232
- // Indicates this is a nested <Menu /> acting as a <MenuItem />.
233
- ,
234
- role: isNested ? 'menuitem' : 'menu'
235
- }, props), getReferenceProps({
236
- onClick: function onClick(event) {
237
- event.stopPropagation();
238
- }
239
- }))), /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.FloatingPortal, {
240
- children: isOpen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.FloatingFocusManager, {
241
- context: context
242
- // Prevent outside content interference.
243
- ,
244
- modal: false
245
- // Only initially focus the root floating menu.
246
- ,
247
- initialFocus: isNested ? -1 : 0
248
- // Only return focus to the root menu's reference when menus close.
249
- ,
250
- returnFocus: !isNested,
251
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", (0, _objectSpread2.default)((0, _objectSpread2.default)({
252
- ref: refs.setFloating,
253
- className: styles.container,
254
- style: floatingStyles
255
- }, getFloatingProps()), {}, {
256
- children: items === null || items === void 0 ? void 0 : items.map(renderMenuItem)
257
- }))
258
- })
259
- })]
260
- });
261
- });
262
- var ContextMenu = /*#__PURE__*/(0, _react2.forwardRef)(function (props, ref) {
263
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.FloatingTree, {
264
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(MenuComponent, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
265
- ref: ref
266
- }))
267
- });
268
- });
269
- var _default = ContextMenu;
270
- exports.default = _default;
@@ -1,4 +0,0 @@
1
- export declare const useStyles: (props?: string | undefined) => import("antd-style").ReturnStyles<{
2
- container: string;
3
- button: string;
4
- }>;
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.useStyles = void 0;
8
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
- var _antdStyle = require("antd-style");
10
- var _templateObject, _templateObject2;
11
- var useStyles = (0, _antdStyle.createStyles)(function (_ref, prefixCls) {
12
- var css = _ref.css,
13
- cx = _ref.cx,
14
- token = _ref.token;
15
- return {
16
- container: cx(prefixCls, css(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n user-select: none;\n scrollbar-width: none;\n\n overflow-y: auto;\n overscroll-behavior: contain;\n\n box-sizing: border-box;\n width: 200px;\n padding: 5px;\n\n font-size: ", ";\n\n background: ", ";\n border: 1px solid ", ";\n border-radius: 8px;\n outline: 0;\n box-shadow: ", ";\n\n &::-webkit-scrollbar {\n display: none;\n }\n "])), token.fontSize, token.colorBgContainer, token.colorBorder, token.boxShadowSecondary)),
17
- button: cx("".concat(prefixCls, "-button"), css(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n all: unset;\n\n cursor: default;\n user-select: none;\n\n padding: 12px 10px;\n\n font-size: ", "px;\n line-height: 1;\n color: ", ";\n\n background: ", ";\n border: 1px solid ", ";\n border-radius: ", "px;\n\n -webkit-tap-highlight-color: transparent;\n\n &:hover {\n background: ", ";\n border-color: transparent;\n }\n\n &:focus-visible {\n border-color: ", ";\n box-shadow: 0 0 0 2px ", ";\n }\n "])), token.fontSize, token.colorText, token.colorBgContainer, token.colorBorder, token.borderRadius, token.colorPrimaryBg, token.colorPrimary, token.colorPrimaryBg))
18
- };
19
- });
20
- exports.useStyles = useStyles;
@@ -1,5 +0,0 @@
1
- import { MenuItemType } from './menuItem';
2
- export * from './menuItem';
3
- export interface MenuProps {
4
- items: MenuItemType[];
5
- }
@@ -1,16 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _menuItem = require("./menuItem");
7
- Object.keys(_menuItem).forEach(function (key) {
8
- if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _menuItem[key]) return;
10
- Object.defineProperty(exports, key, {
11
- enumerable: true,
12
- get: function get() {
13
- return _menuItem[key];
14
- }
15
- });
16
- });
@@ -1,21 +0,0 @@
1
- import { ReactNode } from 'react';
2
- interface CommonType {
3
- key: string;
4
- label: string;
5
- onClick?: () => void;
6
- icon?: ReactNode;
7
- }
8
- export interface GeneralItemType extends CommonType {
9
- disabled?: boolean;
10
- danger?: boolean;
11
- shortcut?: ('meta' | 'control' | 'shift' | 'alt' | string)[];
12
- }
13
- export interface SubMenuType extends CommonType {
14
- children: MenuItemType[];
15
- }
16
- export interface MenuDividerType {
17
- type: 'divider';
18
- dashed?: boolean;
19
- }
20
- export declare type MenuItemType = GeneralItemType | SubMenuType | MenuDividerType;
21
- export {};
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- export interface AppProps {
3
- /**
4
- * @title 是否只读
5
- */
6
- readonly?: boolean;
7
- /**
8
- * @title 是否包含系统消息
9
- */
10
- includeSystem?: boolean;
11
- }
12
- declare const _default: import("react").NamedExoticComponent<AppProps>;
13
- export default _default;
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _antd = require("antd");
10
- var _fastDeepEqual = _interopRequireDefault(require("fast-deep-equal"));
11
- var _react = require("react");
12
- var _reactLayoutKit = require("react-layout-kit");
13
- var _ChatList = _interopRequireDefault(require("./ChatList"));
14
- var _InputArea = _interopRequireDefault(require("./InputArea"));
15
- var _store = require("../Chat/store");
16
- var _jsxRuntime = require("react/jsx-runtime");
17
- var ChatContainer = function ChatContainer(_ref) {
18
- var readonly = _ref.readonly,
19
- _ref$includeSystem = _ref.includeSystem,
20
- includeSystem = _ref$includeSystem === void 0 ? true : _ref$includeSystem;
21
- var _useStore = (0, _store.useStore)(function (s) {
22
- return [!s.changingSystemRole, s.title, s.description];
23
- }, _fastDeepEqual.default),
24
- _useStore2 = (0, _slicedToArray2.default)(_useStore, 3),
25
- showInput = _useStore2[0],
26
- title = _useStore2[1],
27
- description = _useStore2[2];
28
- if (readonly) return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatList.default, {
29
- readonly: true,
30
- includeSystem: includeSystem
31
- });
32
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactLayoutKit.Flexbox, {
33
- width: '100%',
34
- height: '100%',
35
- gap: 24,
36
- children: [title || description ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactLayoutKit.Flexbox, {
37
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Title, {
38
- level: 4,
39
- children: title
40
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Text, {
41
- type: 'secondary',
42
- children: description
43
- })]
44
- }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatList.default, {
45
- includeSystem: includeSystem
46
- }), showInput ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputArea.default, {}) : null]
47
- });
48
- };
49
- var _default = /*#__PURE__*/(0, _react.memo)(ChatContainer);
50
- exports.default = _default;
@@ -1,8 +0,0 @@
1
- import { FC } from 'react';
2
- import { ChatMessage } from "../../../Chat/types";
3
- export interface ContentProps extends Pick<ChatMessage, 'content' | 'role' | 'error'> {
4
- index: number;
5
- loading: boolean;
6
- }
7
- declare const Content: FC<ContentProps>;
8
- export default Content;
@@ -1,109 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _icons = require("@ant-design/icons");
10
- var _antd = require("antd");
11
- var _react = require("react");
12
- var _shallow = require("zustand/shallow");
13
- var _Markdown = _interopRequireDefault(require("../../../Markdown"));
14
- var _MessageInput = _interopRequireDefault(require("../../../MessageInput"));
15
- var _store = require("../../../Chat/store");
16
- var _jsxRuntime = require("react/jsx-runtime");
17
- var Content = /*#__PURE__*/(0, _react.memo)(function (_ref) {
18
- var content = _ref.content,
19
- role = _ref.role,
20
- index = _ref.index,
21
- error = _ref.error,
22
- loading = _ref.loading;
23
- var _useStore = (0, _store.useStore)(function (s) {
24
- return [s.editingMessageId, s.dispatchMessage, s.handleMessageEditing, s.resendMessage];
25
- }, _shallow.shallow),
26
- _useStore2 = (0, _slicedToArray2.default)(_useStore, 4),
27
- editingMessageId = _useStore2[0],
28
- dispatchMessage = _useStore2[1],
29
- handleMessageEditing = _useStore2[2],
30
- resendMessage = _useStore2[3];
31
- var isEditing = editingMessageId === index;
32
- var isUser = role === 'user';
33
- if (isEditing) {
34
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MessageInput.default, {
35
- defaultValue: content,
36
- renderButtons: function renderButtons(text) {
37
- return [{
38
- type: 'primary',
39
- children: isUser ? '更新并重新生成' : '更新',
40
- onClick: function onClick() {
41
- dispatchMessage({
42
- type: 'updateMessage',
43
- message: text,
44
- index: index
45
- });
46
- handleMessageEditing(null);
47
- // 如果是用户的消息,那么重新生成下一条消息
48
- if (isUser) {
49
- resendMessage(index + 1);
50
- }
51
- }
52
- }, isUser ? {
53
- children: '仅更新',
54
- onClick: function onClick() {
55
- dispatchMessage({
56
- type: 'updateMessage',
57
- message: text,
58
- index: index
59
- });
60
- handleMessageEditing(null);
61
- }
62
- } : null, {
63
- type: 'text',
64
- children: '取消',
65
- onClick: function onClick() {
66
- return handleMessageEditing(null);
67
- }
68
- }].filter(Boolean);
69
- }
70
- });
71
- }
72
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
73
- children: [!loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Markdown.default, {
74
- children: content
75
- }) : !!error ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
76
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LoadingOutlined, {
77
- style: {
78
- fontSize: 20
79
- },
80
- spin: true
81
- })
82
- }), error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Alert, {
83
- type: 'error',
84
- showIcon: true,
85
- description: error.type === 'openai' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
86
- children: [error.message, " \uFF08\u9519\u8BEF\u7801\uFF1A", /*#__PURE__*/(0, _jsxRuntime.jsx)("code", {
87
- children: error.status
88
- }), "\uFF0C\u8BE6\u60C5\u53EF\u67E5\u770B", ' ', /*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
89
- target: '_blank',
90
- href: "https://platform.openai.com/docs/guides/error-codes",
91
- rel: "noreferrer",
92
- children: "\u5B98\u65B9\u6587\u6863"
93
- }), "\uFF09"]
94
- }) : error.message,
95
- message: error.type === 'openai' ? "\u8BF7\u6C42 OpenAI \u670D\u52A1\u51FA\u9519" : "\u4F1A\u8BDD\u51FA\u9519\u5566\uFF08\u9519\u8BEF\u7801 ".concat(error.status, "\uFF09"),
96
- action: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Button, {
97
- onClick: function onClick() {
98
- return resendMessage(index);
99
- },
100
- children: "\u91CD\u8BD5"
101
- }),
102
- style: {
103
- marginTop: 12
104
- }
105
- })]
106
- });
107
- });
108
- var _default = Content;
109
- exports.default = _default;
@@ -1,10 +0,0 @@
1
- import { FC } from 'react';
2
- export interface ToolbarProps {
3
- index: number;
4
- content: string;
5
- readonly?: boolean;
6
- className?: string;
7
- isUser?: boolean;
8
- }
9
- declare const Toolbar: FC<ToolbarProps>;
10
- export default Toolbar;
@@ -1,100 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
- var _antd = require("antd");
11
- var _antdStyle = require("antd-style");
12
- var _lucideReact = require("lucide-react");
13
- var _polished = require("polished");
14
- var _react = require("react");
15
- var _reactLayoutKit = require("react-layout-kit");
16
- var _shallow = require("zustand/shallow");
17
- var _ActionIcon = _interopRequireDefault(require("../../../ActionIcon"));
18
- var _store = require("../../../Chat/store");
19
- var _CopyButton = _interopRequireDefault(require("../../../CopyButton"));
20
- var _jsxRuntime = require("react/jsx-runtime");
21
- var _templateObject;
22
- var useStyles = (0, _antdStyle.createStyles)(function (_ref) {
23
- var css = _ref.css,
24
- token = _ref.token;
25
- return {
26
- container: css(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n background: ", ";\n backdrop-filter: blur(6px);\n border-radius: 4px;\n "])), (0, _polished.rgba)(token.colorBgElevated, 0.2))
27
- };
28
- });
29
- var Toolbar = /*#__PURE__*/(0, _react.memo)(function (_ref2) {
30
- var content = _ref2.content,
31
- isUser = _ref2.isUser,
32
- index = _ref2.index,
33
- readonly = _ref2.readonly,
34
- className = _ref2.className;
35
- var _useStyles = useStyles(),
36
- styles = _useStyles.styles,
37
- cx = _useStyles.cx;
38
- var _useStore = (0, _store.useStore)(function (s) {
39
- return [s.dispatchMessage, s.handleMessageEditing, s.resendMessage];
40
- }, _shallow.shallow),
41
- _useStore2 = (0, _slicedToArray2.default)(_useStore, 3),
42
- dispatchMessage = _useStore2[0],
43
- handleMessageEditing = _useStore2[1],
44
- resendMessage = _useStore2[2];
45
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactLayoutKit.Flexbox, {
46
- gap: 4,
47
- horizontal: true,
48
- className: cx(className, styles.container),
49
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_CopyButton.default, {
50
- placement: 'top',
51
- title: '复制',
52
- content: content
53
- // icon={CopyIcon}
54
- ,
55
- size: 'small'
56
- // onClick={() => {
57
- // copy(content);
58
- // }}
59
- }), readonly ? null : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
60
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionIcon.default, {
61
- placement: 'top',
62
- title: isUser ? '重新生成回答' : '重新生成',
63
- icon: _lucideReact.RotateCwIcon,
64
- size: 'small',
65
- onClick: function onClick() {
66
- resendMessage(isUser ? index + 1 : index);
67
- }
68
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionIcon.default, {
69
- placement: 'top',
70
- title: '编辑',
71
- icon: _lucideReact.EditIcon,
72
- size: 'small',
73
- onClick: function onClick() {
74
- return handleMessageEditing(index);
75
- }
76
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Popconfirm, {
77
- title: '确定要删除这条消息吗?',
78
- okButtonProps: {
79
- danger: true
80
- },
81
- onConfirm: function onConfirm() {
82
- dispatchMessage({
83
- type: 'deleteMessage',
84
- index: index
85
- });
86
- },
87
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionIcon.default
88
- // type={'danger'}
89
- , {
90
- placement: 'top',
91
- title: '删除',
92
- icon: _lucideReact.TrashIcon,
93
- size: 'small'
94
- })
95
- })]
96
- })]
97
- });
98
- });
99
- var _default = Toolbar;
100
- exports.default = _default;
@@ -1,9 +0,0 @@
1
- import { FC } from 'react';
2
- import { ChatMessage } from "../../../Chat/types";
3
- export interface MessageItemProps extends ChatMessage {
4
- index: number;
5
- readonly?: boolean;
6
- userAvatarImg?: string;
7
- }
8
- declare const MessageItem: FC<MessageItemProps>;
9
- export default MessageItem;