@mirai/core 0.4.464 → 0.4.465
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 +103 -34
- 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/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,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":[]}
|