instantsearch-ui-components 0.14.0 → 0.15.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.
- package/dist/cjs/components/Carousel.js +4 -4
- package/dist/cjs/components/autocomplete/AutocompleteIndex.js +1 -1
- package/dist/cjs/components/autocomplete/AutocompletePanel.js +9 -2
- package/dist/cjs/components/autocomplete/AutocompleteRecentSearch.js +4 -3
- package/dist/cjs/components/autocomplete/AutocompleteSearch.js +8 -4
- package/dist/cjs/components/autocomplete/AutocompleteSuggestion.js +3 -3
- package/dist/cjs/components/autocomplete/createAutocompletePropGetters.js +41 -16
- package/dist/cjs/components/autocomplete/createAutocompleteStorage.js +29 -5
- package/dist/cjs/components/autocomplete/icons.js +11 -17
- package/dist/cjs/components/chat/ChatHeader.js +10 -12
- package/dist/cjs/components/chat/ChatMessage.js +1 -1
- package/dist/cjs/components/chat/ChatMessageError.js +1 -1
- package/dist/cjs/components/chat/ChatMessageLoader.js +1 -1
- package/dist/cjs/components/chat/ChatMessages.js +3 -3
- package/dist/cjs/components/chat/ChatPrompt.js +2 -2
- package/dist/cjs/components/chat/ChatToggleButton.js +6 -10
- package/dist/cjs/components/chat/icons.js +45 -149
- package/dist/cjs/version.js +1 -1
- package/dist/es/components/Carousel.js +4 -4
- package/dist/es/components/autocomplete/AutocompleteIndex.js +1 -1
- package/dist/es/components/autocomplete/AutocompletePanel.js +9 -2
- package/dist/es/components/autocomplete/AutocompleteRecentSearch.d.ts +3 -2
- package/dist/es/components/autocomplete/AutocompleteRecentSearch.js +5 -4
- package/dist/es/components/autocomplete/AutocompleteSearch.js +9 -5
- package/dist/es/components/autocomplete/AutocompleteSuggestion.d.ts +3 -2
- package/dist/es/components/autocomplete/AutocompleteSuggestion.js +4 -4
- package/dist/es/components/autocomplete/createAutocompletePropGetters.d.ts +2 -1
- package/dist/es/components/autocomplete/createAutocompletePropGetters.js +41 -16
- package/dist/es/components/autocomplete/createAutocompleteStorage.d.ts +11 -0
- package/dist/es/components/autocomplete/createAutocompleteStorage.js +29 -5
- package/dist/es/components/autocomplete/icons.d.ts +5 -5
- package/dist/es/components/autocomplete/icons.js +6 -12
- package/dist/es/components/chat/ChatHeader.d.ts +1 -1
- package/dist/es/components/chat/ChatHeader.js +11 -13
- package/dist/es/components/chat/ChatMessage.js +2 -2
- package/dist/es/components/chat/ChatMessageError.js +2 -2
- package/dist/es/components/chat/ChatMessageLoader.js +2 -2
- package/dist/es/components/chat/ChatMessages.js +4 -4
- package/dist/es/components/chat/ChatPrompt.js +3 -3
- package/dist/es/components/chat/ChatToggleButton.d.ts +1 -1
- package/dist/es/components/chat/ChatToggleButton.js +7 -11
- package/dist/es/components/chat/icons.d.ts +16 -19
- package/dist/es/components/chat/icons.js +30 -134
- package/dist/es/version.d.ts +1 -1
- package/dist/es/version.js +1 -1
- package/package.json +2 -2
|
@@ -10,8 +10,10 @@ export function createAutocompletePropGetters(_ref) {
|
|
|
10
10
|
var indices = _ref2.indices,
|
|
11
11
|
indicesConfig = _ref2.indicesConfig,
|
|
12
12
|
onRefine = _ref2.onRefine,
|
|
13
|
-
globalOnSelect = _ref2.onSelect
|
|
13
|
+
globalOnSelect = _ref2.onSelect,
|
|
14
|
+
placeholder = _ref2.placeholder;
|
|
14
15
|
var getElementId = createGetElementId(useId());
|
|
16
|
+
var inputRef = useRef(null);
|
|
15
17
|
var rootRef = useRef(null);
|
|
16
18
|
var _useState = useState(false),
|
|
17
19
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -43,7 +45,7 @@ export function createAutocompletePropGetters(_ref) {
|
|
|
43
45
|
document.body.removeEventListener('click', onBodyClick);
|
|
44
46
|
};
|
|
45
47
|
}, [rootRef]);
|
|
46
|
-
var
|
|
48
|
+
var getNextActiveDescendant = function getNextActiveDescendant(key) {
|
|
47
49
|
switch (key) {
|
|
48
50
|
case 'ArrowLeft':
|
|
49
51
|
case 'ArrowUp':
|
|
@@ -62,11 +64,21 @@ export function createAutocompletePropGetters(_ref) {
|
|
|
62
64
|
}
|
|
63
65
|
};
|
|
64
66
|
var submit = function submit() {
|
|
65
|
-
var
|
|
66
|
-
|
|
67
|
-
if (
|
|
67
|
+
var _override$activeDesce;
|
|
68
|
+
var override = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
69
|
+
if (isOpen) {
|
|
70
|
+
setIsOpen(false);
|
|
71
|
+
} else {
|
|
72
|
+
var _inputRef$current;
|
|
73
|
+
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();
|
|
74
|
+
}
|
|
75
|
+
var actualDescendant = (_override$activeDesce = override.activeDescendant) !== null && _override$activeDesce !== void 0 ? _override$activeDesce : activeDescendant;
|
|
76
|
+
if (!actualDescendant && override.query) {
|
|
77
|
+
onRefine(override.query);
|
|
78
|
+
}
|
|
79
|
+
if (actualDescendant && items.has(actualDescendant)) {
|
|
68
80
|
var _getQuery;
|
|
69
|
-
var _ref3 = items.get(
|
|
81
|
+
var _ref3 = items.get(actualDescendant),
|
|
70
82
|
_item = _ref3.item,
|
|
71
83
|
_ref3$config = _ref3.config,
|
|
72
84
|
indexOnSelect = _ref3$config.onSelect,
|
|
@@ -88,43 +100,54 @@ export function createAutocompletePropGetters(_ref) {
|
|
|
88
100
|
getInputProps: function getInputProps() {
|
|
89
101
|
return {
|
|
90
102
|
id: getElementId('input'),
|
|
103
|
+
ref: inputRef,
|
|
91
104
|
role: 'combobox',
|
|
92
105
|
'aria-autocomplete': 'list',
|
|
93
106
|
'aria-expanded': isOpen,
|
|
94
107
|
'aria-haspopup': 'grid',
|
|
95
108
|
'aria-controls': getElementId('panel'),
|
|
96
109
|
'aria-activedescendant': activeDescendant,
|
|
110
|
+
placeholder: placeholder,
|
|
97
111
|
onFocus: function onFocus() {
|
|
98
112
|
return setIsOpen(true);
|
|
99
113
|
},
|
|
100
114
|
onKeyDown: function onKeyDown(event) {
|
|
101
|
-
if (event.key === 'Escape') {
|
|
102
|
-
setActiveDescendant(undefined);
|
|
103
|
-
setIsOpen(false);
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
115
|
switch (event.key) {
|
|
116
|
+
case 'Escape':
|
|
117
|
+
{
|
|
118
|
+
if (isOpen) {
|
|
119
|
+
setIsOpen(false);
|
|
120
|
+
event.preventDefault();
|
|
121
|
+
} else {
|
|
122
|
+
setActiveDescendant(undefined);
|
|
123
|
+
}
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
107
126
|
case 'ArrowLeft':
|
|
108
127
|
case 'ArrowUp':
|
|
109
128
|
case 'ArrowRight':
|
|
110
129
|
case 'ArrowDown':
|
|
111
130
|
{
|
|
112
131
|
var _document$getElementB;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
(
|
|
132
|
+
setIsOpen(true);
|
|
133
|
+
var nextActiveDescendant = getNextActiveDescendant(event.key);
|
|
134
|
+
setActiveDescendant(nextActiveDescendant);
|
|
135
|
+
(_document$getElementB = document.getElementById(nextActiveDescendant)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.scrollIntoView(false);
|
|
116
136
|
event.preventDefault();
|
|
117
137
|
break;
|
|
118
138
|
}
|
|
119
139
|
case 'Enter':
|
|
120
140
|
{
|
|
121
|
-
submit(
|
|
141
|
+
submit({
|
|
142
|
+
query: event.target.value
|
|
143
|
+
});
|
|
122
144
|
break;
|
|
123
145
|
}
|
|
124
146
|
case 'Tab':
|
|
125
147
|
setIsOpen(false);
|
|
126
148
|
break;
|
|
127
149
|
default:
|
|
150
|
+
setIsOpen(true);
|
|
128
151
|
return;
|
|
129
152
|
}
|
|
130
153
|
},
|
|
@@ -152,7 +175,9 @@ export function createAutocompletePropGetters(_ref) {
|
|
|
152
175
|
role: 'row',
|
|
153
176
|
'aria-selected': id === activeDescendant,
|
|
154
177
|
onSelect: function onSelect() {
|
|
155
|
-
return submit(
|
|
178
|
+
return submit({
|
|
179
|
+
activeDescendant: id
|
|
180
|
+
});
|
|
156
181
|
}
|
|
157
182
|
};
|
|
158
183
|
},
|
|
@@ -38,6 +38,17 @@ export declare function createAutocompleteStorage({ useEffect, useMemo, useState
|
|
|
38
38
|
objectID: string;
|
|
39
39
|
query: string;
|
|
40
40
|
__indexName: string;
|
|
41
|
+
_highlightResult: {
|
|
42
|
+
query: {
|
|
43
|
+
matchLevel: string;
|
|
44
|
+
value?: undefined;
|
|
45
|
+
};
|
|
46
|
+
} | {
|
|
47
|
+
query: {
|
|
48
|
+
value: string;
|
|
49
|
+
matchLevel?: undefined;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
41
52
|
}[];
|
|
42
53
|
indicesForPropGetters: {
|
|
43
54
|
indexName: string;
|
|
@@ -44,7 +44,13 @@ export function createAutocompleteStorage(_ref) {
|
|
|
44
44
|
return {
|
|
45
45
|
objectID: value,
|
|
46
46
|
query: value,
|
|
47
|
-
__indexName: 'recent-searches'
|
|
47
|
+
__indexName: 'recent-searches',
|
|
48
|
+
_highlightResult: getHighlightedAttribute({
|
|
49
|
+
item: {
|
|
50
|
+
query: value
|
|
51
|
+
},
|
|
52
|
+
query: query || ''
|
|
53
|
+
})
|
|
48
54
|
};
|
|
49
55
|
});
|
|
50
56
|
var indicesForPropGetters = _toConsumableArray(indices);
|
|
@@ -80,6 +86,24 @@ function isLocalStorageSupported() {
|
|
|
80
86
|
return false;
|
|
81
87
|
}
|
|
82
88
|
}
|
|
89
|
+
function getHighlightedAttribute(_ref3) {
|
|
90
|
+
var item = _ref3.item,
|
|
91
|
+
query = _ref3.query;
|
|
92
|
+
if (!query.trim().length) {
|
|
93
|
+
return {
|
|
94
|
+
query: {
|
|
95
|
+
matchLevel: 'none'
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
return {
|
|
100
|
+
query: {
|
|
101
|
+
value: item.query.replace(new RegExp(query.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&'), 'gi'), function (match) {
|
|
102
|
+
return "<mark>".concat(match, "</mark>");
|
|
103
|
+
})
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
}
|
|
83
107
|
function getLocalStorage() {
|
|
84
108
|
var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : LOCAL_STORAGE_KEY;
|
|
85
109
|
if (!isLocalStorageSupported()) {
|
|
@@ -104,10 +128,10 @@ function getLocalStorage() {
|
|
|
104
128
|
}
|
|
105
129
|
};
|
|
106
130
|
}
|
|
107
|
-
export function createStorage(
|
|
108
|
-
var
|
|
109
|
-
limit =
|
|
110
|
-
storageKey =
|
|
131
|
+
export function createStorage(_ref4) {
|
|
132
|
+
var _ref4$limit = _ref4.limit,
|
|
133
|
+
limit = _ref4$limit === void 0 ? 5 : _ref4$limit,
|
|
134
|
+
storageKey = _ref4.storageKey;
|
|
111
135
|
var storage = getLocalStorage(storageKey);
|
|
112
136
|
var updateListener = null;
|
|
113
137
|
return {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/** @jsx createElement */
|
|
2
2
|
import type { Renderer } from '../../types';
|
|
3
3
|
type IconProps = Pick<Renderer, 'createElement'>;
|
|
4
|
-
export declare function
|
|
5
|
-
export declare function
|
|
6
|
-
export declare function
|
|
7
|
-
export declare function
|
|
8
|
-
export declare function
|
|
4
|
+
export declare function SubmitIcon({ createElement }: IconProps): JSX.Element;
|
|
5
|
+
export declare function LoadingIcon({ createElement }: IconProps): JSX.Element;
|
|
6
|
+
export declare function ClearIcon({ createElement }: IconProps): JSX.Element;
|
|
7
|
+
export declare function ClockIcon({ createElement }: IconProps): JSX.Element;
|
|
8
|
+
export declare function TrashIcon({ createElement }: IconProps): JSX.Element;
|
|
9
9
|
export {};
|
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
export function
|
|
1
|
+
export function SubmitIcon(_ref) {
|
|
2
2
|
var createElement = _ref.createElement;
|
|
3
3
|
return createElement("svg", {
|
|
4
4
|
className: "ais-AutocompleteSubmitIcon",
|
|
5
5
|
viewBox: "0 0 24 24",
|
|
6
|
-
width: "20",
|
|
7
|
-
height: "20",
|
|
8
6
|
fill: "currentColor"
|
|
9
7
|
}, createElement("path", {
|
|
10
8
|
d: "M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"
|
|
11
9
|
}));
|
|
12
10
|
}
|
|
13
|
-
export function
|
|
11
|
+
export function LoadingIcon(_ref2) {
|
|
14
12
|
var createElement = _ref2.createElement;
|
|
15
13
|
return createElement("svg", {
|
|
16
14
|
className: "ais-AutocompleteLoadingIcon",
|
|
17
|
-
viewBox: "0 0 100 100"
|
|
18
|
-
width: "20",
|
|
19
|
-
height: "20"
|
|
15
|
+
viewBox: "0 0 100 100"
|
|
20
16
|
}, createElement("circle", {
|
|
21
17
|
cx: "50",
|
|
22
18
|
cy: "50",
|
|
@@ -34,19 +30,17 @@ export function AutocompleteLoadingIcon(_ref2) {
|
|
|
34
30
|
keyTimes: "0;0.40;0.65;1"
|
|
35
31
|
})));
|
|
36
32
|
}
|
|
37
|
-
export function
|
|
33
|
+
export function ClearIcon(_ref3) {
|
|
38
34
|
var createElement = _ref3.createElement;
|
|
39
35
|
return createElement("svg", {
|
|
40
36
|
className: "ais-AutocompleteClearIcon",
|
|
41
37
|
viewBox: "0 0 24 24",
|
|
42
|
-
width: "18",
|
|
43
|
-
height: "18",
|
|
44
38
|
fill: "currentColor"
|
|
45
39
|
}, createElement("path", {
|
|
46
40
|
d: "M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"
|
|
47
41
|
}));
|
|
48
42
|
}
|
|
49
|
-
export function
|
|
43
|
+
export function ClockIcon(_ref4) {
|
|
50
44
|
var createElement = _ref4.createElement;
|
|
51
45
|
return createElement("svg", {
|
|
52
46
|
viewBox: "0 0 24 24",
|
|
@@ -55,7 +49,7 @@ export function AutocompleteClockIcon(_ref4) {
|
|
|
55
49
|
d: "M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z"
|
|
56
50
|
}));
|
|
57
51
|
}
|
|
58
|
-
export function
|
|
52
|
+
export function TrashIcon(_ref5) {
|
|
59
53
|
var createElement = _ref5.createElement;
|
|
60
54
|
return createElement("svg", {
|
|
61
55
|
viewBox: "0 0 24 24",
|
|
@@ -96,4 +96,4 @@ export type ChatHeaderOwnProps = {
|
|
|
96
96
|
translations?: Partial<ChatHeaderTranslations>;
|
|
97
97
|
};
|
|
98
98
|
export type ChatHeaderProps = ComponentProps<'div'> & ChatHeaderOwnProps;
|
|
99
|
-
export declare function createChatHeaderComponent({ createElement }: Renderer): ({ maximized, onToggleMaximize, onClose, onClear, canClear, closeIconComponent:
|
|
99
|
+
export declare function createChatHeaderComponent({ createElement }: Renderer): ({ maximized, onToggleMaximize, onClose, onClear, canClear, closeIconComponent: CloseIcon, minimizeIconComponent: MinimizeIcon, maximizeIconComponent: MaximizeIcon, titleIconComponent: TitleIcon, classNames, translations: userTranslations, ...props }: ChatHeaderProps) => JSX.Element;
|
|
@@ -6,7 +6,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
6
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
7
|
import { cx } from "../../lib/index.js";
|
|
8
8
|
import { createButtonComponent } from "../Button.js";
|
|
9
|
-
import {
|
|
9
|
+
import { SparklesIcon, MaximizeIcon as MaximizeIconDefault, MinimizeIcon as MinimizeIconDefault, CloseIcon as CloseIconDefault } from "./icons.js";
|
|
10
10
|
export function createChatHeaderComponent(_ref) {
|
|
11
11
|
var createElement = _ref.createElement;
|
|
12
12
|
var Button = createButtonComponent({
|
|
@@ -20,10 +20,10 @@ export function createChatHeaderComponent(_ref) {
|
|
|
20
20
|
onClear = _ref2.onClear,
|
|
21
21
|
_ref2$canClear = _ref2.canClear,
|
|
22
22
|
canClear = _ref2$canClear === void 0 ? false : _ref2$canClear,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
CloseIcon = _ref2.closeIconComponent,
|
|
24
|
+
MinimizeIcon = _ref2.minimizeIconComponent,
|
|
25
|
+
MaximizeIcon = _ref2.maximizeIconComponent,
|
|
26
|
+
TitleIcon = _ref2.titleIconComponent,
|
|
27
27
|
_ref2$classNames = _ref2.classNames,
|
|
28
28
|
classNames = _ref2$classNames === void 0 ? {} : _ref2$classNames,
|
|
29
29
|
userTranslations = _ref2.translations,
|
|
@@ -35,9 +35,9 @@ export function createChatHeaderComponent(_ref) {
|
|
|
35
35
|
closeLabel: 'Close chat',
|
|
36
36
|
clearLabel: 'Clear'
|
|
37
37
|
}, userTranslations);
|
|
38
|
-
var defaultMaximizeIcon = maximized ? createElement(
|
|
38
|
+
var defaultMaximizeIcon = maximized ? createElement(MinimizeIconDefault, {
|
|
39
39
|
createElement: createElement
|
|
40
|
-
}) : createElement(
|
|
40
|
+
}) : createElement(MaximizeIconDefault, {
|
|
41
41
|
createElement: createElement
|
|
42
42
|
});
|
|
43
43
|
return createElement("div", _extends({
|
|
@@ -46,10 +46,8 @@ export function createChatHeaderComponent(_ref) {
|
|
|
46
46
|
className: cx('ais-ChatHeader-title', classNames.title)
|
|
47
47
|
}, createElement("span", {
|
|
48
48
|
className: cx('ais-ChatHeader-titleIcon', classNames.titleIcon)
|
|
49
|
-
},
|
|
50
|
-
createElement: createElement
|
|
51
|
-
width: 20,
|
|
52
|
-
height: 20
|
|
49
|
+
}, TitleIcon ? createElement(TitleIcon, null) : createElement(SparklesIcon, {
|
|
50
|
+
createElement: createElement
|
|
53
51
|
})), translations.title), createElement("div", {
|
|
54
52
|
className: cx('ais-ChatHeader-actions')
|
|
55
53
|
}, onClear && createElement(Button, {
|
|
@@ -65,7 +63,7 @@ export function createChatHeaderComponent(_ref) {
|
|
|
65
63
|
className: cx('ais-ChatHeader-maximize', classNames.maximize),
|
|
66
64
|
onClick: onToggleMaximize,
|
|
67
65
|
"aria-label": maximized ? translations.minimizeLabel : translations.maximizeLabel
|
|
68
|
-
},
|
|
66
|
+
}, MaximizeIcon ? createElement(MaximizeIcon, {
|
|
69
67
|
maximized: maximized
|
|
70
68
|
}) : defaultMaximizeIcon), createElement(Button, {
|
|
71
69
|
variant: "ghost",
|
|
@@ -75,7 +73,7 @@ export function createChatHeaderComponent(_ref) {
|
|
|
75
73
|
onClick: onClose,
|
|
76
74
|
"aria-label": translations.closeLabel,
|
|
77
75
|
title: translations.closeLabel
|
|
78
|
-
},
|
|
76
|
+
}, CloseIcon ? createElement(CloseIcon, null) : createElement(CloseIconDefault, {
|
|
79
77
|
createElement: createElement
|
|
80
78
|
}))));
|
|
81
79
|
};
|
|
@@ -7,7 +7,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
7
7
|
import { compiler } from 'markdown-to-jsx';
|
|
8
8
|
import { cx, startsWith } from "../../lib/index.js";
|
|
9
9
|
import { createButtonComponent } from "../Button.js";
|
|
10
|
-
import {
|
|
10
|
+
import { MenuIcon } from "./icons.js";
|
|
11
11
|
export function createChatMessageComponent(_ref) {
|
|
12
12
|
var createElement = _ref.createElement;
|
|
13
13
|
var Button = createButtonComponent({
|
|
@@ -124,7 +124,7 @@ export function createChatMessageComponent(_ref) {
|
|
|
124
124
|
var _action$onClick;
|
|
125
125
|
return (_action$onClick = action.onClick) === null || _action$onClick === void 0 ? void 0 : _action$onClick.call(action, message);
|
|
126
126
|
}
|
|
127
|
-
}, action.icon ? createElement(action.icon, null) : createElement(
|
|
127
|
+
}, action.icon ? createElement(action.icon, null) : createElement(MenuIcon, {
|
|
128
128
|
createElement: createElement
|
|
129
129
|
}));
|
|
130
130
|
})), FooterComponent && createElement("div", {
|
|
@@ -5,7 +5,7 @@ var _excluded = ["onReload", "actions", "translations"];
|
|
|
5
5
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
7
|
import { createButtonComponent } from "../Button.js";
|
|
8
|
-
import {
|
|
8
|
+
import { ReloadIcon } from "./icons.js";
|
|
9
9
|
export function createChatMessageErrorComponent(_ref) {
|
|
10
10
|
var createElement = _ref.createElement;
|
|
11
11
|
var Button = createButtonComponent({
|
|
@@ -43,7 +43,7 @@ export function createChatMessageErrorComponent(_ref) {
|
|
|
43
43
|
onClick: function onClick() {
|
|
44
44
|
return onReload === null || onReload === void 0 ? void 0 : onReload();
|
|
45
45
|
}
|
|
46
|
-
}, createElement(
|
|
46
|
+
}, createElement(ReloadIcon, {
|
|
47
47
|
createElement: createElement
|
|
48
48
|
}), translations.retryText)))));
|
|
49
49
|
};
|
|
@@ -4,7 +4,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
|
|
|
4
4
|
var _excluded = ["translations"];
|
|
5
5
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
|
-
import {
|
|
7
|
+
import { LoadingSpinnerIcon } from "./icons.js";
|
|
8
8
|
export function createChatMessageLoaderComponent(_ref) {
|
|
9
9
|
var createElement = _ref.createElement;
|
|
10
10
|
return function ChatMessageLoader(_ref2) {
|
|
@@ -21,7 +21,7 @@ export function createChatMessageLoaderComponent(_ref) {
|
|
|
21
21
|
className: "ais-ChatMessage-leading"
|
|
22
22
|
}, createElement("div", {
|
|
23
23
|
className: "ais-ChatMessageLoader-spinner"
|
|
24
|
-
}, createElement(
|
|
24
|
+
}, createElement(LoadingSpinnerIcon, {
|
|
25
25
|
createElement: createElement
|
|
26
26
|
}))), createElement("div", {
|
|
27
27
|
className: "ais-ChatMessage-content"
|
|
@@ -10,7 +10,7 @@ import { createButtonComponent } from "../Button.js";
|
|
|
10
10
|
import { createChatMessageComponent } from "./ChatMessage.js";
|
|
11
11
|
import { createChatMessageErrorComponent } from "./ChatMessageError.js";
|
|
12
12
|
import { createChatMessageLoaderComponent } from "./ChatMessageLoader.js";
|
|
13
|
-
import {
|
|
13
|
+
import { ChevronDownIcon, CopyIcon, ReloadIcon } from "./icons.js";
|
|
14
14
|
var getTextContent = function getTextContent(message) {
|
|
15
15
|
return message.parts.map(function (part) {
|
|
16
16
|
return 'text' in part ? part.text : '';
|
|
@@ -45,7 +45,7 @@ function createDefaultMessageComponent(_ref) {
|
|
|
45
45
|
var defaultAssistantActions = [].concat(_toConsumableArray(hasTextContent(message) ? [{
|
|
46
46
|
title: translations.copyToClipboardLabel,
|
|
47
47
|
icon: function icon() {
|
|
48
|
-
return createElement(
|
|
48
|
+
return createElement(CopyIcon, {
|
|
49
49
|
createElement: createElement
|
|
50
50
|
});
|
|
51
51
|
},
|
|
@@ -53,7 +53,7 @@ function createDefaultMessageComponent(_ref) {
|
|
|
53
53
|
}] : []), [{
|
|
54
54
|
title: translations.regenerateLabel,
|
|
55
55
|
icon: function icon() {
|
|
56
|
-
return createElement(
|
|
56
|
+
return createElement(ReloadIcon, {
|
|
57
57
|
createElement: createElement
|
|
58
58
|
});
|
|
59
59
|
},
|
|
@@ -187,7 +187,7 @@ export function createChatMessagesComponent(_ref3) {
|
|
|
187
187
|
onClick: onScrollToBottom,
|
|
188
188
|
"aria-label": translations.scrollToBottomLabel,
|
|
189
189
|
tabIndex: isScrollAtBottom ? -1 : 0
|
|
190
|
-
}, createElement(
|
|
190
|
+
}, createElement(ChevronDownIcon, {
|
|
191
191
|
createElement: createElement
|
|
192
192
|
})));
|
|
193
193
|
};
|
|
@@ -6,7 +6,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
6
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
7
|
import { cx } from "../../lib/index.js";
|
|
8
8
|
import { createButtonComponent } from "../Button.js";
|
|
9
|
-
import {
|
|
9
|
+
import { ArrowUpIcon, StopIcon } from "./icons.js";
|
|
10
10
|
export function createChatPromptComponent(_ref) {
|
|
11
11
|
var createElement = _ref.createElement;
|
|
12
12
|
var Button = createButtonComponent({
|
|
@@ -87,9 +87,9 @@ export function createChatPromptComponent(_ref) {
|
|
|
87
87
|
var hasValue = typeof value === 'string' ? value.trim() !== '' : Boolean(value);
|
|
88
88
|
var canStop = status === 'submitted' || status === 'streaming';
|
|
89
89
|
var buttonDisabled = !hasValue && !canStop || disabled;
|
|
90
|
-
var submitIcon = canStop ? createElement(
|
|
90
|
+
var submitIcon = canStop ? createElement(StopIcon, {
|
|
91
91
|
createElement: createElement
|
|
92
|
-
}) : createElement(
|
|
92
|
+
}) : createElement(ArrowUpIcon, {
|
|
93
93
|
createElement: createElement
|
|
94
94
|
});
|
|
95
95
|
return createElement("form", {
|
|
@@ -26,4 +26,4 @@ export type ChatToggleButtonOwnProps = {
|
|
|
26
26
|
classNames?: Partial<ChatToggleButtonClassNames>;
|
|
27
27
|
};
|
|
28
28
|
export type ChatToggleButtonProps = ComponentProps<'button'> & ChatToggleButtonOwnProps;
|
|
29
|
-
export declare function createChatToggleButtonComponent({ createElement }: Renderer): ({ open, onClick, toggleIconComponent:
|
|
29
|
+
export declare function createChatToggleButtonComponent({ createElement }: Renderer): ({ open, onClick, toggleIconComponent: ToggleIcon, classNames, className, ...props }: ChatToggleButtonProps) => JSX.Element;
|
|
@@ -3,7 +3,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
|
|
|
3
3
|
var _excluded = ["open", "onClick", "toggleIconComponent", "classNames", "className"];
|
|
4
4
|
import { cx } from "../../lib/cx.js";
|
|
5
5
|
import { createButtonComponent } from "../Button.js";
|
|
6
|
-
import {
|
|
6
|
+
import { SparklesIcon, ChevronUpIcon } from "./icons.js";
|
|
7
7
|
export function createChatToggleButtonComponent(_ref) {
|
|
8
8
|
var createElement = _ref.createElement;
|
|
9
9
|
var Button = createButtonComponent({
|
|
@@ -12,19 +12,15 @@ export function createChatToggleButtonComponent(_ref) {
|
|
|
12
12
|
return function ChatToggleButton(_ref2) {
|
|
13
13
|
var open = _ref2.open,
|
|
14
14
|
onClick = _ref2.onClick,
|
|
15
|
-
|
|
15
|
+
ToggleIcon = _ref2.toggleIconComponent,
|
|
16
16
|
_ref2$classNames = _ref2.classNames,
|
|
17
17
|
classNames = _ref2$classNames === void 0 ? {} : _ref2$classNames,
|
|
18
18
|
className = _ref2.className,
|
|
19
19
|
props = _objectWithoutProperties(_ref2, _excluded);
|
|
20
|
-
var defaultIcon = open ? createElement(
|
|
21
|
-
createElement: createElement
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}) : createElement(SparklesIconComponent, {
|
|
25
|
-
createElement: createElement,
|
|
26
|
-
width: 28,
|
|
27
|
-
height: 28
|
|
20
|
+
var defaultIcon = open ? createElement(ChevronUpIcon, {
|
|
21
|
+
createElement: createElement
|
|
22
|
+
}) : createElement(SparklesIcon, {
|
|
23
|
+
createElement: createElement
|
|
28
24
|
});
|
|
29
25
|
return createElement(Button, _extends({
|
|
30
26
|
variant: "primary",
|
|
@@ -32,7 +28,7 @@ export function createChatToggleButtonComponent(_ref) {
|
|
|
32
28
|
iconOnly: true,
|
|
33
29
|
className: cx('ais-ChatToggleButton', open && 'ais-ChatToggleButton--open', classNames.root, className),
|
|
34
30
|
onClick: onClick
|
|
35
|
-
}, props),
|
|
31
|
+
}, props), ToggleIcon ? createElement(ToggleIcon, {
|
|
36
32
|
isOpen: open
|
|
37
33
|
}) : defaultIcon);
|
|
38
34
|
};
|
|
@@ -1,22 +1,19 @@
|
|
|
1
1
|
/** @jsx createElement */
|
|
2
2
|
import type { Renderer } from '../../types';
|
|
3
|
-
type IconProps = Pick<Renderer, 'createElement'
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
7
|
-
export declare function
|
|
8
|
-
export declare function
|
|
9
|
-
export declare function
|
|
10
|
-
export declare function
|
|
11
|
-
export declare function
|
|
12
|
-
export declare function
|
|
13
|
-
export declare function
|
|
14
|
-
export declare function
|
|
15
|
-
export declare function
|
|
16
|
-
export declare function
|
|
17
|
-
export declare function
|
|
18
|
-
export declare function
|
|
19
|
-
export declare function LoadingSpinnerIconComponent({ createElement, width, height, }: IconProps): JSX.Element;
|
|
20
|
-
export declare function ChevronLeftIconComponent({ createElement, width, height, }: IconProps): JSX.Element;
|
|
21
|
-
export declare function ChevronRightIconComponent({ createElement, width, height, }: IconProps): JSX.Element;
|
|
3
|
+
type IconProps = Pick<Renderer, 'createElement'>;
|
|
4
|
+
export declare function SparklesIcon({ createElement }: IconProps): JSX.Element;
|
|
5
|
+
export declare function ArrowUpIcon({ createElement }: IconProps): JSX.Element;
|
|
6
|
+
export declare function ArrowRightIcon({ createElement }: IconProps): JSX.Element;
|
|
7
|
+
export declare function ChevronUpIcon({ createElement }: IconProps): JSX.Element;
|
|
8
|
+
export declare function ChevronDownIcon({ createElement }: IconProps): JSX.Element;
|
|
9
|
+
export declare function CloseIcon({ createElement }: IconProps): JSX.Element;
|
|
10
|
+
export declare function MaximizeIcon({ createElement }: IconProps): JSX.Element;
|
|
11
|
+
export declare function MinimizeIcon({ createElement }: IconProps): JSX.Element;
|
|
12
|
+
export declare function StopIcon({ createElement }: IconProps): JSX.Element;
|
|
13
|
+
export declare function ReloadIcon({ createElement }: IconProps): JSX.Element;
|
|
14
|
+
export declare function CopyIcon({ createElement }: IconProps): JSX.Element;
|
|
15
|
+
export declare function MenuIcon({ createElement }: IconProps): JSX.Element;
|
|
16
|
+
export declare function LoadingSpinnerIcon({ createElement }: IconProps): JSX.Element;
|
|
17
|
+
export declare function ChevronLeftIcon({ createElement }: IconProps): JSX.Element;
|
|
18
|
+
export declare function ChevronRightIcon({ createElement }: IconProps): JSX.Element;
|
|
22
19
|
export {};
|