@mirai/core 0.4.442 → 0.4.443

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.
@@ -35,11 +35,9 @@ const Aura = () => {
35
35
  }, [busyConversation, conversation]);
36
36
  (0, _react2.useEffect)(() => {
37
37
  if (type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008') return;
38
- const callback = async () => {
39
- const hotelContext = await (0, _auraHelpers.loadHotelContext)(hotel.id);
40
- setContext(hotelContext);
41
- };
42
- callback();
38
+ setContext({
39
+ hotelId: hotel.id
40
+ });
43
41
  }, [hotel.id, type, id]);
44
42
  const handlePressConversation = () => {
45
43
  const isChain = type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008';
@@ -1 +1 @@
1
- {"version":3,"file":"Aura.js","names":["_react","require","_dataSources","_ui","_react2","_interopRequireWildcard","style","_Core","_helpers","_auraHelpers","_AiHalo","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Aura","busyConversation","setBusyConversation","useState","isConnecting","setIsConnecting","context","setContext","isHovering","setIsHovering","conversation","useConversation","value","assistant","hotel","locale","type","id","useStore","useEffect","handler","createMessageSentHandler","subscribeToMessageSent","TYPE","CHAIN","process","env","NODE_ENV","callback","hotelContext","loadHotelContext","handlePressConversation","isChain","chainId","handleConversation","getIcon","ICON","HANG_UP","RECORD","AGENT","createElement","AiHalo","active","sensitivity","onMouseEnter","onMouseLeave","Button","busy","squared","top","onPress","className","styles","button","hangup","Icon","exports"],"sources":["../../../../../src/components/Chat/components/Aura/Aura.jsx"],"sourcesContent":["import { useConversation } from '@elevenlabs/react';\nimport { useStore } from '@mirai/data-sources';\nimport { Button, Icon, styles } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './Aura.module.css';\nimport { TYPE } from '../../../../Core.constants';\nimport { ICON } from '../../../helpers';\nimport {\n createMessageSentHandler,\n subscribeToMessageSent,\n loadHotelContext,\n handleConversation,\n} from '../../helpers/auraHelpers';\nimport { AiHalo } from '../AiHalo';\n\nconst Aura = () => {\n const [busyConversation, setBusyConversation] = useState(false);\n const [isConnecting, setIsConnecting] = useState(false);\n const [context, setContext] = useState(null);\n const [isHovering, setIsHovering] = useState(false);\n const conversation = useConversation();\n const {\n value: { assistant = {}, hotel = {}, locale, type, id },\n } = useStore();\n\n useEffect(() => {\n const handler = createMessageSentHandler(busyConversation, conversation, setBusyConversation);\n return subscribeToMessageSent(handler);\n }, [busyConversation, conversation]);\n\n useEffect(() => {\n if ((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008')) return;\n\n const callback = async () => {\n const hotelContext = await loadHotelContext(hotel.id);\n setContext(hotelContext);\n };\n callback();\n }, [hotel.id, type, id]);\n\n const handlePressConversation = () => {\n const isChain =\n (type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008');\n const chainId = process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : isChain ? id : null;\n\n handleConversation(\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n isChain,\n chainId,\n );\n };\n\n if (\n !context &&\n !((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008'))\n )\n return null;\n\n const getIcon = () => {\n if (busyConversation && isHovering) return ICON.HANG_UP;\n if (busyConversation) return ICON.RECORD;\n return ICON.AGENT;\n };\n\n return (\n <AiHalo\n active={busyConversation}\n conversation={conversation}\n sensitivity={1.2}\n onMouseEnter={() => setIsHovering(true)}\n onMouseLeave={() => setIsHovering(false)}\n >\n <Button\n busy={isConnecting}\n squared\n top\n onPress={handlePressConversation}\n className={styles(style.button, busyConversation && isHovering && style.hangup)}\n >\n <Icon value={getIcon()} />\n </Button>\n </AiHalo>\n );\n};\n\nexport { Aura };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Aura.js","names":["_react","require","_dataSources","_ui","_react2","_interopRequireWildcard","style","_Core","_helpers","_auraHelpers","_AiHalo","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Aura","busyConversation","setBusyConversation","useState","isConnecting","setIsConnecting","context","setContext","isHovering","setIsHovering","conversation","useConversation","value","assistant","hotel","locale","type","id","useStore","useEffect","handler","createMessageSentHandler","subscribeToMessageSent","TYPE","CHAIN","process","env","NODE_ENV","hotelId","handlePressConversation","isChain","chainId","handleConversation","getIcon","ICON","HANG_UP","RECORD","AGENT","createElement","AiHalo","active","sensitivity","onMouseEnter","onMouseLeave","Button","busy","squared","top","onPress","className","styles","button","hangup","Icon","exports"],"sources":["../../../../../src/components/Chat/components/Aura/Aura.jsx"],"sourcesContent":["import { useConversation } from '@elevenlabs/react';\nimport { useStore } from '@mirai/data-sources';\nimport { Button, Icon, styles } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './Aura.module.css';\nimport { TYPE } from '../../../../Core.constants';\nimport { ICON } from '../../../helpers';\nimport { createMessageSentHandler, subscribeToMessageSent, handleConversation } from '../../helpers/auraHelpers';\nimport { AiHalo } from '../AiHalo';\n\nconst Aura = () => {\n const [busyConversation, setBusyConversation] = useState(false);\n const [isConnecting, setIsConnecting] = useState(false);\n const [context, setContext] = useState(null);\n const [isHovering, setIsHovering] = useState(false);\n const conversation = useConversation();\n const {\n value: { assistant = {}, hotel = {}, locale, type, id },\n } = useStore();\n\n useEffect(() => {\n const handler = createMessageSentHandler(busyConversation, conversation, setBusyConversation);\n return subscribeToMessageSent(handler);\n }, [busyConversation, conversation]);\n\n useEffect(() => {\n if ((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008')) return;\n\n setContext({ hotelId: hotel.id });\n }, [hotel.id, type, id]);\n\n const handlePressConversation = () => {\n const isChain =\n (type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008');\n const chainId = process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : isChain ? id : null;\n\n handleConversation(\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n isChain,\n chainId,\n );\n };\n\n if (\n !context &&\n !((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008'))\n )\n return null;\n\n const getIcon = () => {\n if (busyConversation && isHovering) return ICON.HANG_UP;\n if (busyConversation) return ICON.RECORD;\n return ICON.AGENT;\n };\n\n return (\n <AiHalo\n active={busyConversation}\n conversation={conversation}\n sensitivity={1.2}\n onMouseEnter={() => setIsHovering(true)}\n onMouseLeave={() => setIsHovering(false)}\n >\n <Button\n busy={isConnecting}\n squared\n top\n onPress={handlePressConversation}\n className={styles(style.button, busyConversation && isHovering && style.hangup)}\n >\n <Icon value={getIcon()} />\n </Button>\n </AiHalo>\n );\n};\n\nexport { Aura };\n"],"mappings":"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","ignoreList":[]}
@@ -3,14 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.subscribeToMessageSent = exports.openUrlClientTool = exports.loadHotelContext = exports.handleConversation = exports.getElevenLabsSignedUrl = exports.createSessionConfig = exports.createMessageSentHandler = void 0;
6
+ exports.subscribeToMessageSent = exports.openUrlClientTool = exports.handleConversation = exports.getElevenLabsSignedUrl = exports.createSessionConfig = exports.createMessageSentHandler = void 0;
7
7
  var _dataSources = require("@mirai/data-sources");
8
8
  var _helpers = require("../../../components/helpers");
9
- 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; }
10
- 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; }
11
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
13
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
14
9
  const createMessageSentHandler = (busyConversation, conversation, setBusyConversation) => {
15
10
  return async () => {
16
11
  if (busyConversation) {
@@ -25,21 +20,6 @@ const subscribeToMessageSent = handler => {
25
20
  return () => _dataSources.Event.unsubscribe(_helpers.EVENT.SARAI_MESSAGE_SENT, handler);
26
21
  };
27
22
  exports.subscribeToMessageSent = subscribeToMessageSent;
28
- const loadHotelContext = async hotelId => {
29
- try {
30
- const hotelInfo = await (0, _dataSources.request)({
31
- endpoint: "/context/".concat(hotelId),
32
- hostname: process.env.SERVICE_MIRA,
33
- method: 'GET'
34
- });
35
- return _objectSpread(_objectSpread({}, (hotelInfo === null || hotelInfo === void 0 ? void 0 : hotelInfo.value) || {}), {}, {
36
- hotelId
37
- });
38
- } catch (error) {
39
- return null;
40
- }
41
- };
42
- exports.loadHotelContext = loadHotelContext;
43
23
  const getElevenLabsSignedUrl = async function () {
44
24
  let chain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
45
25
  try {
@@ -88,8 +68,7 @@ const createSessionConfig = function (signedUrl, assistant, context, locale, cal
88
68
  chain_id: chainId || ''
89
69
  } : {
90
70
  assistant_name: assistant.name || 'Sarai',
91
- hotelId: context.hotelId,
92
- hotel_info: JSON.stringify(context)
71
+ hotelId: context.hotelId
93
72
  };
94
73
  return {
95
74
  clientTools: {
@@ -1 +1 @@
1
- {"version":3,"file":"auraHelpers.js","names":["_dataSources","require","_helpers","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","createMessageSentHandler","busyConversation","conversation","setBusyConversation","endSession","exports","subscribeToMessageSent","handler","Event","subscribe","EVENT","SARAI_MESSAGE_SENT","unsubscribe","loadHotelContext","hotelId","hotelInfo","request","endpoint","concat","hostname","process","env","SERVICE_MIRA","method","error","getElevenLabsSignedUrl","chain","undefined","response","SERVICE_SYNAPSE","signedUrl","openUrlClientTool","_ref","url","validUrl","URL","startsWith","_unused","window","location","href","createSessionConfig","assistant","context","locale","callbacks","chainId","onConnect","onDisconnect","onError","onMessage","dynamicVariables","assistant_name","name","chain_id","hotel_info","JSON","stringify","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 loadHotelContext = async (hotelId) => {\n try {\n const hotelInfo = await request({\n endpoint: `/context/${hotelId}`,\n hostname: process.env.SERVICE_MIRA,\n method: 'GET',\n });\n\n return { ...(hotelInfo?.value || {}), hotelId };\n } catch (error) {\n return null;\n }\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 hotel_info: JSON.stringify(context),\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":[]}
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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,wBAAwB,GAAGA,CAACC,gBAAgB,EAAEC,YAAY,EAAEC,mBAAmB,KAAK;EAC/F,OAAO,YAAY;IACjB,IAAIF,gBAAgB,EAAE;MACpB,MAAMC,YAAY,CAACE,UAAU,CAAC,CAAC;MAC/BD,mBAAmB,CAAC,KAAK,CAAC;IAC5B;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAL,wBAAA,GAAAA,wBAAA;AAEK,MAAMM,sBAAsB,GAAIC,OAAO,IAAK;EACjDC,kBAAK,CAACC,SAAS,CAACC,cAAK,CAACC,kBAAkB,EAAEJ,OAAO,CAAC;EAClD,OAAO,MAAMC,kBAAK,CAACI,WAAW,CAACF,cAAK,CAACC,kBAAkB,EAAEJ,OAAO,CAAC;AACnE,CAAC;AAACF,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AAEK,MAAMO,sBAAsB,GAAG,eAAAA,CAAA,EAAyB;EAAA,IAAlBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;EACxD,IAAI;IACF,MAAMG,QAAQ,GAAGJ,KAAK,GAAG,mCAAmC,GAAG,wBAAwB;IACvF,MAAMK,QAAQ,GAAG,MAAM,IAAAC,oBAAO,EAAC;MAC7BF,QAAQ;MACRG,QAAQ,EAAEC,OAAO,CAACC,GAAG,CAACC,eAAe;MACrCC,MAAM,EAAE;IACV,CAAC,CAAC;IACF,OAAO,CAAAN,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEO,SAAS,KAAI,IAAI;EACpC,CAAC,CAAC,OAAOC,KAAK,EAAE;IACd,OAAO,IAAI;EACb;AACF,CAAC;AAACtB,OAAA,CAAAQ,sBAAA,GAAAA,sBAAA;AAEK,MAAMe,iBAAiB,GAAGC,IAAA,IAAa;EAAA,IAAZ;IAAEC;EAAI,CAAC,GAAAD,IAAA;EACvC,IAAI;IACF,IAAI,CAACC,GAAG,EAAE,OAAO,wBAAwB;IAEzC,IAAIC,QAAQ;IACZ,IAAI;MACFA,QAAQ,GAAG,IAAIC,GAAG,CAACF,GAAG,CAACG,UAAU,CAAC,MAAM,CAAC,GAAGH,GAAG,cAAAI,MAAA,CAAcJ,GAAG,CAAE,CAAC;IACrE,CAAC,CAAC,OAAAK,OAAA,EAAM;MACN,OAAO,2BAA2B;IACpC;IAEAC,MAAM,CAACC,QAAQ,CAACC,IAAI,GAAGP,QAAQ,CAACO,IAAI;IAEpC,mCAAAJ,MAAA,CAAmCH,QAAQ,CAACO,IAAI;EAClD,CAAC,CAAC,OAAOX,KAAK,EAAE;IACd,OAAO,2BAA2B;EACpC;AACF,CAAC;AAACtB,OAAA,CAAAuB,iBAAA,GAAAA,iBAAA;AAEK,MAAMW,mBAAmB,GAAG,SAAAA,CACjCb,SAAS,EACTc,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,SAAS,EAGN;EAAA,IAFH7B,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;EAAA,IACb6B,OAAO,GAAA7B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;EAEd,MAAM;IAAE8B,SAAS;IAAEC,YAAY;IAAEC,OAAO;IAAEC;EAAU,CAAC,GAAGL,SAAS;EAEjE,MAAMM,gBAAgB,GAAGnC,KAAK,GAC1B;IACEoC,cAAc,EAAEV,SAAS,CAACW,IAAI,IAAI,OAAO;IACzCC,QAAQ,EAAER,OAAO,IAAI;EACvB,CAAC,GACD;IACEM,cAAc,EAAEV,SAAS,CAACW,IAAI,IAAI,OAAO;IACzCE,OAAO,EAAEZ,OAAO,CAACY;EACnB,CAAC;EAEL,OAAO;IACLC,WAAW,EAAE;MACXC,QAAQ,EAAE3B;IACZ,CAAC;IACDqB,gBAAgB;IAChBO,SAAS,EAAE;MACTC,KAAK,EAAE;QACLC,QAAQ,EAAEhB,MAAM,CAACiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;MAC/B;IACF,CAAC;IACDjC,SAAS;IACTmB,SAAS;IACTC,YAAY;IACZC,OAAO,EACLA,OAAO,KACLa,OAAO,IAAK;MACZ;MACAC,OAAO,CAACC,GAAG,CAACF,OAAO,CAAC;IACtB,CAAC,CAAC;IACJZ,SAAS,EACPA,SAAS,KACPY,OAAO,IAAK;MACZ;MACAC,OAAO,CAACC,GAAG,CAACF,OAAO,CAAC;IACtB,CAAC;EACL,CAAC;AACH,CAAC;AAACvD,OAAA,CAAAkC,mBAAA,GAAAA,mBAAA;AAEK,MAAMwB,kBAAkB,GAAG,eAAAA,CAChC9D,gBAAgB,EAChB+D,YAAY,EACZvB,OAAO,EACPvC,YAAY,EACZsC,SAAS,EACTE,MAAM,EACNuB,eAAe,EACf9D,mBAAmB,EAGhB;EAAA,IAFHW,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;EAAA,IACb6B,OAAO,GAAA7B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;EAEd,IAAI,CAACmD,SAAS,CAACC,YAAY,IAAI,CAACjE,YAAY,IAAK,CAACuC,OAAO,IAAI,CAAC3B,KAAM,EAAE;EAEtE,IAAI,CAACb,gBAAgB,EAAE;IACrBgE,eAAe,CAAC,IAAI,CAAC;IACrB,IAAI;MACF,MAAMC,SAAS,CAACC,YAAY,CAACC,YAAY,CAAC;QAAEC,KAAK,EAAE;MAAK,CAAC,CAAC;MAE1D,MAAM3C,SAAS,GAAG,MAAMb,sBAAsB,CAACC,KAAK,CAAC;MAErD,MAAMwD,aAAa,GAAG/B,mBAAmB,CACvCb,SAAS,EACTc,SAAS,EACTC,OAAO,EACPC,MAAM,EACN;QACEG,SAAS,EAAEA,CAAA,KAAM;UACfoB,eAAe,CAAC,KAAK,CAAC;UACtB9D,mBAAmB,CAAC,IAAI,CAAC;QAC3B,CAAC;QACD2C,YAAY,EAAEA,CAAA,KAAM;UAClBmB,eAAe,CAAC,KAAK,CAAC;UACtB9D,mBAAmB,CAAC,KAAK,CAAC;QAC5B,CAAC;QACD4C,OAAO,EAAGa,OAAO,IAAK;UACpBK,eAAe,CAAC,KAAK,CAAC;UACtB;UACAJ,OAAO,CAACC,GAAG,CAACF,OAAO,CAAC;QACtB;MACF,CAAC,EACD9C,KAAK,EACL8B,OACF,CAAC;MAED,MAAM1C,YAAY,CAACqE,YAAY,CAACD,aAAa,CAAC;IAChD,CAAC,CAAC,OAAO3C,KAAK,EAAE;MACdsC,eAAe,CAAC,KAAK,CAAC;MACtB;MACAJ,OAAO,CAAClC,KAAK,CAAC,8BAA8B,EAAEA,KAAK,CAAC;IACtD;EACF,CAAC,MAAM;IACL,MAAMzB,YAAY,CAACE,UAAU,CAAC,CAAC;IAC/BD,mBAAmB,CAAC,KAAK,CAAC;EAC5B;AACF,CAAC;AAACE,OAAA,CAAA0D,kBAAA,GAAAA,kBAAA","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.442",
3
+ "version": "0.4.443",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",