@mirai/core 0.4.464 → 0.4.466
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/build/components/Chat/Chat.constants.js +5 -1
- package/build/components/Chat/Chat.constants.js.map +1 -1
- package/build/components/Chat/Chat.js +9 -5
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/components/Aura/Aura.js +126 -36
- package/build/components/Chat/components/Aura/Aura.js.map +1 -1
- package/build/components/Chat/components/Aura/Aura.l10n.js +15 -0
- package/build/components/Chat/components/Aura/Aura.l10n.js.map +1 -0
- package/build/components/Chat/components/Aura/Aura.module.css +109 -4
- package/build/components/Chat/components/{AiHalo/AiHalo.js → Aura/Aura.waveform.js} +27 -43
- package/build/components/Chat/components/Aura/Aura.waveform.js.map +1 -0
- package/build/components/Chat/components/Aura/helpers/elevenLabs.js +42 -0
- package/build/components/Chat/components/Aura/helpers/elevenLabs.js.map +1 -0
- package/build/components/Chat/components/Aura/helpers/index.js +17 -0
- package/build/components/Chat/components/Aura/helpers/index.js.map +1 -0
- package/build/components/Chat/components/Aura/hooks/useOpenAiRealtimeSession.js +237 -0
- package/build/components/Chat/components/Aura/hooks/useOpenAiRealtimeSession.js.map +1 -0
- package/build/components/Chat/components/Input/Input.js +3 -8
- package/build/components/Chat/components/Input/Input.js.map +1 -1
- package/build/components/Chat/components/Welcome/Welcome.js +37 -105
- package/build/components/Chat/components/Welcome/Welcome.js.map +1 -1
- package/build/components/Chat/components/Welcome/Welcome.l10n.js +14 -2
- package/build/components/Chat/components/Welcome/Welcome.l10n.js.map +1 -1
- package/build/components/Chat/components/Welcome/Welcome.module.css +29 -9
- package/build/components/helpers/ICON.js +1 -0
- package/build/components/helpers/ICON.js.map +1 -1
- package/package.json +1 -1
- package/build/components/Chat/components/AiHalo/AiHalo.js.map +0 -1
- package/build/components/Chat/components/AiHalo/AiHalo.module.css +0 -92
- package/build/components/Chat/components/AiHalo/index.js +0 -13
- package/build/components/Chat/components/AiHalo/index.js.map +0 -1
- package/build/components/Chat/components/Welcome/Welcome.Destination.js +0 -133
- package/build/components/Chat/components/Welcome/Welcome.Destination.js.map +0 -1
- package/build/components/Chat/components/Welcome/Welcome.Destination.module.css +0 -93
- package/build/components/Chat/helpers/auraHelpers.js +0 -135
- package/build/components/Chat/helpers/auraHelpers.js.map +0 -1
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.Destination = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
var _ui = require("@mirai/ui");
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var style = _interopRequireWildcard(require("./Welcome.Destination.module.css"));
|
|
12
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
13
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
const Destination = _ref => {
|
|
15
|
-
let {
|
|
16
|
-
onSelect = () => {}
|
|
17
|
-
} = _ref;
|
|
18
|
-
const {
|
|
19
|
-
value: {
|
|
20
|
-
hotel: {
|
|
21
|
-
features = {}
|
|
22
|
-
} = {},
|
|
23
|
-
language
|
|
24
|
-
} = {}
|
|
25
|
-
} = (0, _dataSources.useStore)();
|
|
26
|
-
const [selectedCountry, setSelectedCountry] = (0, _react.useState)(null);
|
|
27
|
-
const [selectedProvince, setSelectedProvince] = (0, _react.useState)(null);
|
|
28
|
-
const hotels = Object.entries(features).filter(_ref2 => {
|
|
29
|
-
let [key] = _ref2;
|
|
30
|
-
return !isNaN(key);
|
|
31
|
-
}).map(_ref3 => {
|
|
32
|
-
var _hotel$country;
|
|
33
|
-
let [id, hotel] = _ref3;
|
|
34
|
-
return {
|
|
35
|
-
address: hotel.address,
|
|
36
|
-
country: (_hotel$country = hotel.country) === null || _hotel$country === void 0 ? void 0 : _hotel$country[language],
|
|
37
|
-
id,
|
|
38
|
-
initial: hotel.name.charAt(0).toUpperCase(),
|
|
39
|
-
location: [hotel.address, hotel.province].filter(Boolean).join(', '),
|
|
40
|
-
logo: hotel.logo,
|
|
41
|
-
name: hotel.name,
|
|
42
|
-
province: hotel.province,
|
|
43
|
-
type: hotel.type
|
|
44
|
-
};
|
|
45
|
-
});
|
|
46
|
-
const countries = [...new Set(hotels.map(_ref4 => {
|
|
47
|
-
let {
|
|
48
|
-
country
|
|
49
|
-
} = _ref4;
|
|
50
|
-
return country;
|
|
51
|
-
}).filter(Boolean))];
|
|
52
|
-
const countryFilteredHotels = selectedCountry ? hotels.filter(h => h.country === selectedCountry) : hotels;
|
|
53
|
-
const provinces = countryFilteredHotels.length > 8 ? [...new Set(countryFilteredHotels.map(h => h.province).filter(Boolean))] : [];
|
|
54
|
-
const filteredHotels = selectedProvince ? countryFilteredHotels.filter(h => h.province === selectedProvince) : countryFilteredHotels;
|
|
55
|
-
const handleHotelSelect = hotelId => {
|
|
56
|
-
onSelect(hotelId);
|
|
57
|
-
};
|
|
58
|
-
const handleResetCountry = () => {
|
|
59
|
-
setSelectedCountry(null);
|
|
60
|
-
setSelectedProvince(null);
|
|
61
|
-
};
|
|
62
|
-
const handleResetProvince = () => {
|
|
63
|
-
setSelectedProvince(null);
|
|
64
|
-
};
|
|
65
|
-
return hotels.length > 0 ? /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
66
|
-
className: style.container
|
|
67
|
-
}, (selectedCountry || selectedProvince) && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
68
|
-
row: true,
|
|
69
|
-
className: style.breadcrumb
|
|
70
|
-
}, selectedCountry && /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
71
|
-
onPress: handleResetCountry,
|
|
72
|
-
className: style.card
|
|
73
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
74
|
-
bold: true
|
|
75
|
-
}, selectedCountry)), selectedProvince && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, null, " > "), /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
76
|
-
onPress: handleResetProvince,
|
|
77
|
-
className: style.card
|
|
78
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
79
|
-
bold: true
|
|
80
|
-
}, selectedProvince)))), countries.length > 1 && !selectedCountry && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
81
|
-
row: true,
|
|
82
|
-
className: style.list
|
|
83
|
-
}, countries.map(country => /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
84
|
-
key: country,
|
|
85
|
-
onPress: () => setSelectedCountry(country),
|
|
86
|
-
className: style.card
|
|
87
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
88
|
-
medium: true
|
|
89
|
-
}, country)))), selectedCountry && provinces.length > 1 && !selectedProvince && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
90
|
-
row: true,
|
|
91
|
-
className: style.list
|
|
92
|
-
}, provinces.map(province => /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
93
|
-
key: province,
|
|
94
|
-
onPress: () => setSelectedProvince(province),
|
|
95
|
-
className: style.card
|
|
96
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
97
|
-
medium: true
|
|
98
|
-
}, province)))), (countries.length === 1 || selectedCountry) && (provinces.length <= 1 || selectedProvince) && /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
|
|
99
|
-
scrollIndicator: true,
|
|
100
|
-
snap: false,
|
|
101
|
-
className: (0, _ui.styles)(style.scrollView)
|
|
102
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
103
|
-
className: (0, _ui.styles)(style.list)
|
|
104
|
-
}, filteredHotels.map(hotel => /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
105
|
-
key: hotel.id,
|
|
106
|
-
onPress: () => handleHotelSelect(hotel.id),
|
|
107
|
-
className: style.card
|
|
108
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
109
|
-
row: true
|
|
110
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
111
|
-
className: (0, _ui.styles)(style.logo, !hotel.logo && style.logoInitial),
|
|
112
|
-
style: hotel.logo ? {
|
|
113
|
-
backgroundImage: "url(".concat(hotel.logo, ")")
|
|
114
|
-
} : {}
|
|
115
|
-
}, !hotel.logo && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
116
|
-
medium: true,
|
|
117
|
-
headline: true,
|
|
118
|
-
level: 2
|
|
119
|
-
}, hotel.initial)), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
120
|
-
flex: true
|
|
121
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
122
|
-
medium: true
|
|
123
|
-
}, hotel.name), hotel.location && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
124
|
-
color: "secondary",
|
|
125
|
-
small: true
|
|
126
|
-
}, hotel.location)))))))) : null;
|
|
127
|
-
};
|
|
128
|
-
exports.Destination = Destination;
|
|
129
|
-
Destination.displayName = 'Mirai:Core:Chat.Welcome.Destination';
|
|
130
|
-
Destination.propTypes = {
|
|
131
|
-
onSelect: _propTypes.default.func
|
|
132
|
-
};
|
|
133
|
-
//# sourceMappingURL=Welcome.Destination.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Welcome.Destination.js","names":["_dataSources","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Destination","_ref","onSelect","value","hotel","features","language","useStore","selectedCountry","setSelectedCountry","useState","selectedProvince","setSelectedProvince","hotels","entries","filter","_ref2","key","isNaN","map","_ref3","_hotel$country","id","address","country","initial","name","charAt","toUpperCase","location","province","Boolean","join","logo","type","countries","Set","_ref4","countryFilteredHotels","h","provinces","length","filteredHotels","handleHotelSelect","hotelId","handleResetCountry","handleResetProvince","createElement","View","className","container","row","breadcrumb","Pressable","onPress","card","Text","bold","Fragment","list","medium","ScrollView","scrollIndicator","snap","styles","scrollView","logoInitial","backgroundImage","concat","headline","level","flex","color","small","exports","displayName","propTypes","PropTypes","func"],"sources":["../../../../../src/components/Chat/components/Welcome/Welcome.Destination.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { Pressable, ScrollView, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport * as style from './Welcome.Destination.module.css';\n\nconst Destination = ({ onSelect = () => {} }) => {\n const { value: { hotel: { features = {} } = {}, language } = {} } = useStore();\n\n const [selectedCountry, setSelectedCountry] = useState(null);\n const [selectedProvince, setSelectedProvince] = useState(null);\n\n const hotels = Object.entries(features)\n .filter(([key]) => !isNaN(key))\n .map(([id, hotel]) => ({\n address: hotel.address,\n country: hotel.country?.[language],\n id,\n initial: hotel.name.charAt(0).toUpperCase(),\n location: [hotel.address, hotel.province].filter(Boolean).join(', '),\n logo: hotel.logo,\n name: hotel.name,\n province: hotel.province,\n type: hotel.type,\n }));\n\n const countries = [...new Set(hotels.map(({ country }) => country).filter(Boolean))];\n const countryFilteredHotels = selectedCountry ? hotels.filter((h) => h.country === selectedCountry) : hotels;\n\n const provinces =\n countryFilteredHotels.length > 8 ? [...new Set(countryFilteredHotels.map((h) => h.province).filter(Boolean))] : [];\n\n const filteredHotels = selectedProvince\n ? countryFilteredHotels.filter((h) => h.province === selectedProvince)\n : countryFilteredHotels;\n\n const handleHotelSelect = (hotelId) => {\n onSelect(hotelId);\n };\n\n const handleResetCountry = () => {\n setSelectedCountry(null);\n setSelectedProvince(null);\n };\n\n const handleResetProvince = () => {\n setSelectedProvince(null);\n };\n\n return hotels.length > 0 ? (\n <View className={style.container}>\n {(selectedCountry || selectedProvince) && (\n <View row className={style.breadcrumb}>\n {selectedCountry && (\n <Pressable onPress={handleResetCountry} className={style.card}>\n <Text bold>{selectedCountry}</Text>\n </Pressable>\n )}\n {selectedProvince && (\n <>\n <Text> > </Text>\n <Pressable onPress={handleResetProvince} className={style.card}>\n <Text bold>{selectedProvince}</Text>\n </Pressable>\n </>\n )}\n </View>\n )}\n\n {countries.length > 1 && !selectedCountry && (\n <View row className={style.list}>\n {countries.map((country) => (\n <Pressable key={country} onPress={() => setSelectedCountry(country)} className={style.card}>\n <Text medium>{country}</Text>\n </Pressable>\n ))}\n </View>\n )}\n\n {selectedCountry && provinces.length > 1 && !selectedProvince && (\n <View row className={style.list}>\n {provinces.map((province) => (\n <Pressable key={province} onPress={() => setSelectedProvince(province)} className={style.card}>\n <Text medium>{province}</Text>\n </Pressable>\n ))}\n </View>\n )}\n\n {(countries.length === 1 || selectedCountry) && (provinces.length <= 1 || selectedProvince) && (\n <ScrollView scrollIndicator snap={false} className={styles(style.scrollView)}>\n <View className={styles(style.list)}>\n {filteredHotels.map((hotel) => (\n <Pressable key={hotel.id} onPress={() => handleHotelSelect(hotel.id)} className={style.card}>\n <View row>\n <View\n className={styles(style.logo, !hotel.logo && style.logoInitial)}\n style={hotel.logo ? { backgroundImage: `url(${hotel.logo})` } : {}}\n >\n {!hotel.logo && (\n <Text medium headline level={2}>\n {hotel.initial}\n </Text>\n )}\n </View>\n <View flex>\n <Text medium>{hotel.name}</Text>\n {hotel.location && (\n <Text color=\"secondary\" small>\n {hotel.location}\n </Text>\n )}\n </View>\n </View>\n </Pressable>\n ))}\n </View>\n </ScrollView>\n )}\n </View>\n ) : null;\n};\n\nDestination.displayName = 'Mirai:Core:Chat.Welcome.Destination';\n\nDestination.propTypes = {\n onSelect: PropTypes.func,\n};\n\nexport { Destination };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
.container {
|
|
2
|
-
gap: var(--mirai-chat-space);
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.card {
|
|
6
|
-
align-items: center;
|
|
7
|
-
border: solid var(--mirai-chat-border-size) var(--mirai-chat-border-color);
|
|
8
|
-
border-radius: var(--mirai-chat-border-radius);
|
|
9
|
-
cursor: pointer;
|
|
10
|
-
gap: var(--mirai-chat-space);
|
|
11
|
-
padding: var(--mirai-chat-space);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.breadcrumb {
|
|
15
|
-
align-items: center;
|
|
16
|
-
gap: calc(var(--mirai-chat-space) / 2);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.breadcrumb .card {
|
|
20
|
-
padding: calc(var(--mirai-chat-space) / 2) var(--mirai-chat-space);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.list {
|
|
24
|
-
gap: var(--mirai-ui-space-M);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.scrollView {
|
|
28
|
-
max-height: 66svh;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
.list .card {
|
|
32
|
-
box-sizing: border-box;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.logo {
|
|
36
|
-
align-items: center;
|
|
37
|
-
justify-content: center;
|
|
38
|
-
background-size: contain;
|
|
39
|
-
background-position: center;
|
|
40
|
-
background-repeat: no-repeat;
|
|
41
|
-
flex-shrink: 0;
|
|
42
|
-
margin-right: var(--mirai-chat-space);
|
|
43
|
-
width: var(--mirai-ui-space-XXL);
|
|
44
|
-
height: var(--mirai-ui-space-XXL);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.logoInitial {
|
|
48
|
-
background-color: var(--mirai-ui-content-border);
|
|
49
|
-
border-radius: var(--mirai-chat-border-radius);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/* L */
|
|
53
|
-
@media only screen and (max-width: 480px) {
|
|
54
|
-
.scrollView {
|
|
55
|
-
max-height: 60svh;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
.list {
|
|
59
|
-
flex-direction: column;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.list .card {
|
|
63
|
-
width: 100%;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/* M & L */
|
|
68
|
-
@media only screen and (min-width: 481px) {
|
|
69
|
-
.scrollView {
|
|
70
|
-
max-height: 50svh;
|
|
71
|
-
width: 100%;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.list {
|
|
75
|
-
align-items: stretch;
|
|
76
|
-
flex-direction: row;
|
|
77
|
-
flex-wrap: wrap;
|
|
78
|
-
width: 100%;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.list .card {
|
|
82
|
-
flex-basis: calc(50% - calc(var(--mirai-ui-space-M) / 2));
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.card:hover {
|
|
86
|
-
background-color: var(--mirai-ui-content);
|
|
87
|
-
border-color: var(--mirai-ui-content);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.card:hover * {
|
|
91
|
-
color: var(--mirai-chat-background);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.subscribeToMessageSent = exports.openUrlClientTool = exports.handleConversation = exports.getElevenLabsSignedUrl = exports.createSessionConfig = exports.createMessageSentHandler = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
var _helpers = require("../../../components/helpers");
|
|
9
|
-
const createMessageSentHandler = (busyConversation, conversation, setBusyConversation) => {
|
|
10
|
-
return async () => {
|
|
11
|
-
if (busyConversation) {
|
|
12
|
-
await conversation.endSession();
|
|
13
|
-
setBusyConversation(false);
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
};
|
|
17
|
-
exports.createMessageSentHandler = createMessageSentHandler;
|
|
18
|
-
const subscribeToMessageSent = handler => {
|
|
19
|
-
_dataSources.Event.subscribe(_helpers.EVENT.SARAI_MESSAGE_SENT, handler);
|
|
20
|
-
return () => _dataSources.Event.unsubscribe(_helpers.EVENT.SARAI_MESSAGE_SENT, handler);
|
|
21
|
-
};
|
|
22
|
-
exports.subscribeToMessageSent = subscribeToMessageSent;
|
|
23
|
-
const getElevenLabsSignedUrl = async function () {
|
|
24
|
-
let chain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
25
|
-
try {
|
|
26
|
-
const endpoint = chain ? '/elevenlabs/signed-url?chain=true' : '/elevenlabs/signed-url';
|
|
27
|
-
const response = await (0, _dataSources.request)({
|
|
28
|
-
endpoint,
|
|
29
|
-
hostname: process.env.SERVICE_SYNAPSE,
|
|
30
|
-
method: 'GET'
|
|
31
|
-
});
|
|
32
|
-
return (response === null || response === void 0 ? void 0 : response.signedUrl) || null;
|
|
33
|
-
} catch (error) {
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
exports.getElevenLabsSignedUrl = getElevenLabsSignedUrl;
|
|
38
|
-
const openUrlClientTool = _ref => {
|
|
39
|
-
let {
|
|
40
|
-
url
|
|
41
|
-
} = _ref;
|
|
42
|
-
try {
|
|
43
|
-
if (!url) return 'Error: No URL provided';
|
|
44
|
-
let validUrl;
|
|
45
|
-
try {
|
|
46
|
-
validUrl = new URL(url.startsWith('http') ? url : "https://".concat(url));
|
|
47
|
-
} catch (_unused) {
|
|
48
|
-
return 'Error: Invalid URL format';
|
|
49
|
-
}
|
|
50
|
-
window.location.href = validUrl.href;
|
|
51
|
-
return "Successfully opened URL: ".concat(validUrl.href);
|
|
52
|
-
} catch (error) {
|
|
53
|
-
return 'Error: Failed to open URL';
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
exports.openUrlClientTool = openUrlClientTool;
|
|
57
|
-
const createSessionConfig = function (signedUrl, assistant, context, locale, callbacks) {
|
|
58
|
-
let chain = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
|
|
59
|
-
let chainId = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
60
|
-
const {
|
|
61
|
-
onConnect,
|
|
62
|
-
onDisconnect,
|
|
63
|
-
onError,
|
|
64
|
-
onMessage
|
|
65
|
-
} = callbacks;
|
|
66
|
-
const dynamicVariables = chain ? {
|
|
67
|
-
assistant_name: assistant.name || 'Sarai',
|
|
68
|
-
chain_id: chainId || ''
|
|
69
|
-
} : {
|
|
70
|
-
assistant_name: assistant.name || 'Sarai',
|
|
71
|
-
hotelId: context.hotelId
|
|
72
|
-
};
|
|
73
|
-
return {
|
|
74
|
-
clientTools: {
|
|
75
|
-
open_url: openUrlClientTool
|
|
76
|
-
},
|
|
77
|
-
dynamicVariables,
|
|
78
|
-
overrides: {
|
|
79
|
-
agent: {
|
|
80
|
-
language: locale.split('-')[0]
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
signedUrl,
|
|
84
|
-
onConnect,
|
|
85
|
-
onDisconnect,
|
|
86
|
-
onError: onError || (message => {
|
|
87
|
-
// eslint-disable-next-line no-console
|
|
88
|
-
console.log(message);
|
|
89
|
-
}),
|
|
90
|
-
onMessage: onMessage || (message => {
|
|
91
|
-
// eslint-disable-next-line no-console
|
|
92
|
-
console.log(message);
|
|
93
|
-
})
|
|
94
|
-
};
|
|
95
|
-
};
|
|
96
|
-
exports.createSessionConfig = createSessionConfig;
|
|
97
|
-
const handleConversation = async function (busyConversation, isConnecting, context, conversation, assistant, locale, setIsConnecting, setBusyConversation) {
|
|
98
|
-
let chain = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : false;
|
|
99
|
-
let chainId = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;
|
|
100
|
-
if (!navigator.mediaDevices || !conversation || !context && !chain) return;
|
|
101
|
-
if (!busyConversation) {
|
|
102
|
-
setIsConnecting(true);
|
|
103
|
-
try {
|
|
104
|
-
await navigator.mediaDevices.getUserMedia({
|
|
105
|
-
audio: true
|
|
106
|
-
});
|
|
107
|
-
const signedUrl = await getElevenLabsSignedUrl(chain);
|
|
108
|
-
const sessionConfig = createSessionConfig(signedUrl, assistant, context, locale, {
|
|
109
|
-
onConnect: () => {
|
|
110
|
-
setIsConnecting(false);
|
|
111
|
-
setBusyConversation(true);
|
|
112
|
-
},
|
|
113
|
-
onDisconnect: () => {
|
|
114
|
-
setIsConnecting(false);
|
|
115
|
-
setBusyConversation(false);
|
|
116
|
-
},
|
|
117
|
-
onError: message => {
|
|
118
|
-
setIsConnecting(false);
|
|
119
|
-
// eslint-disable-next-line no-console
|
|
120
|
-
console.log(message);
|
|
121
|
-
}
|
|
122
|
-
}, chain, chainId);
|
|
123
|
-
await conversation.startSession(sessionConfig);
|
|
124
|
-
} catch (error) {
|
|
125
|
-
setIsConnecting(false);
|
|
126
|
-
// eslint-disable-next-line no-console
|
|
127
|
-
console.error('Error starting conversation:', error);
|
|
128
|
-
}
|
|
129
|
-
} else {
|
|
130
|
-
await conversation.endSession();
|
|
131
|
-
setBusyConversation(false);
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
exports.handleConversation = handleConversation;
|
|
135
|
-
//# sourceMappingURL=auraHelpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auraHelpers.js","names":["_dataSources","require","_helpers","createMessageSentHandler","busyConversation","conversation","setBusyConversation","endSession","exports","subscribeToMessageSent","handler","Event","subscribe","EVENT","SARAI_MESSAGE_SENT","unsubscribe","getElevenLabsSignedUrl","chain","arguments","length","undefined","endpoint","response","request","hostname","process","env","SERVICE_SYNAPSE","method","signedUrl","error","openUrlClientTool","_ref","url","validUrl","URL","startsWith","concat","_unused","window","location","href","createSessionConfig","assistant","context","locale","callbacks","chainId","onConnect","onDisconnect","onError","onMessage","dynamicVariables","assistant_name","name","chain_id","hotelId","clientTools","open_url","overrides","agent","language","split","message","console","log","handleConversation","isConnecting","setIsConnecting","navigator","mediaDevices","getUserMedia","audio","sessionConfig","startSession"],"sources":["../../../../src/components/Chat/helpers/auraHelpers.js"],"sourcesContent":["import { Event, request } from '@mirai/data-sources';\n\nimport { EVENT } from '../../../components/helpers';\n\nexport const createMessageSentHandler = (busyConversation, conversation, setBusyConversation) => {\n return async () => {\n if (busyConversation) {\n await conversation.endSession();\n setBusyConversation(false);\n }\n };\n};\n\nexport const subscribeToMessageSent = (handler) => {\n Event.subscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n return () => Event.unsubscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n};\n\nexport const getElevenLabsSignedUrl = async (chain = false) => {\n try {\n const endpoint = chain ? '/elevenlabs/signed-url?chain=true' : '/elevenlabs/signed-url';\n const response = await request({\n endpoint,\n hostname: process.env.SERVICE_SYNAPSE,\n method: 'GET',\n });\n return response?.signedUrl || null;\n } catch (error) {\n return null;\n }\n};\n\nexport const openUrlClientTool = ({ url }) => {\n try {\n if (!url) return 'Error: No URL provided';\n\n let validUrl;\n try {\n validUrl = new URL(url.startsWith('http') ? url : `https://${url}`);\n } catch {\n return 'Error: Invalid URL format';\n }\n\n window.location.href = validUrl.href;\n\n return `Successfully opened URL: ${validUrl.href}`;\n } catch (error) {\n return 'Error: Failed to open URL';\n }\n};\n\nexport const createSessionConfig = (\n signedUrl,\n assistant,\n context,\n locale,\n callbacks,\n chain = false,\n chainId = null,\n) => {\n const { onConnect, onDisconnect, onError, onMessage } = callbacks;\n\n const dynamicVariables = chain\n ? {\n assistant_name: assistant.name || 'Sarai',\n chain_id: chainId || '',\n }\n : {\n assistant_name: assistant.name || 'Sarai',\n hotelId: context.hotelId,\n };\n\n return {\n clientTools: {\n open_url: openUrlClientTool,\n },\n dynamicVariables,\n overrides: {\n agent: {\n language: locale.split('-')[0],\n },\n },\n signedUrl,\n onConnect,\n onDisconnect,\n onError:\n onError ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n onMessage:\n onMessage ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n };\n};\n\nexport const handleConversation = async (\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n chain = false,\n chainId = null,\n) => {\n if (!navigator.mediaDevices || !conversation || (!context && !chain)) return;\n\n if (!busyConversation) {\n setIsConnecting(true);\n try {\n await navigator.mediaDevices.getUserMedia({ audio: true });\n\n const signedUrl = await getElevenLabsSignedUrl(chain);\n\n const sessionConfig = createSessionConfig(\n signedUrl,\n assistant,\n context,\n locale,\n {\n onConnect: () => {\n setIsConnecting(false);\n setBusyConversation(true);\n },\n onDisconnect: () => {\n setIsConnecting(false);\n setBusyConversation(false);\n },\n onError: (message) => {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.log(message);\n },\n },\n chain,\n chainId,\n );\n\n await conversation.startSession(sessionConfig);\n } catch (error) {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.error('Error starting conversation:', error);\n }\n } else {\n await conversation.endSession();\n setBusyConversation(false);\n }\n};\n"],"mappings":"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","ignoreList":[]}
|