@mujian/js-sdk 0.0.6-beta.89 → 0.0.6-beta.90
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/index.d.ts +0 -1
- package/dist/index.js +2 -30
- package/dist/lite.d.ts +0 -1
- package/dist/modules/ai/chat/settings/index.d.ts +1 -2
- package/dist/modules/ai/chat/settings/persona.d.ts +0 -8
- package/dist/modules/ai/openai/chat.d.ts +0 -3
- package/dist/modules/ai/openai/completions.d.ts +0 -2
- package/dist/modules/ai/openai/images.d.ts +0 -2
- package/dist/modules/ai/openai/responses.d.ts +0 -2
- package/dist/modules/config.d.ts +0 -1
- package/dist/react/components/MdRenderer/index.d.ts +3 -2
- package/dist/react.js +12 -36
- package/dist/umd/index.js +1 -1
- package/dist/umd/react.js +16 -21
- package/package.json +5 -5
- package/dist/modules/ai/chat/settings/model.d.ts +0 -24
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -131,22 +131,6 @@ const getInfo = async function() {
|
|
|
131
131
|
const getActive = async function() {
|
|
132
132
|
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE);
|
|
133
133
|
};
|
|
134
|
-
const setActive = async function(personaId) {
|
|
135
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_PERSONA_SET_ACTIVE, {
|
|
136
|
-
personaId
|
|
137
|
-
});
|
|
138
|
-
};
|
|
139
|
-
const model_getActive = async function() {
|
|
140
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_GET_ACTIVE);
|
|
141
|
-
};
|
|
142
|
-
const model_setActive = async function(modelId) {
|
|
143
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_SET_ACTIVE, {
|
|
144
|
-
modelId
|
|
145
|
-
});
|
|
146
|
-
};
|
|
147
|
-
const model_getAll = async function() {
|
|
148
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_GET_ALL);
|
|
149
|
-
};
|
|
150
134
|
async function getConfig() {
|
|
151
135
|
return await this.call(events_EVENT.MUJIAN_GET_CONFIG);
|
|
152
136
|
}
|
|
@@ -266,14 +250,8 @@ class MujianSdk {
|
|
|
266
250
|
getInfo: getInfo.bind(this)
|
|
267
251
|
},
|
|
268
252
|
settings: {
|
|
269
|
-
model: {
|
|
270
|
-
getAll: model_getAll.bind(this),
|
|
271
|
-
getActive: model_getActive.bind(this),
|
|
272
|
-
setActive: model_setActive.bind(this)
|
|
273
|
-
},
|
|
274
253
|
persona: {
|
|
275
|
-
getActive: getActive.bind(this)
|
|
276
|
-
setActive: setActive.bind(this)
|
|
254
|
+
getActive: getActive.bind(this)
|
|
277
255
|
}
|
|
278
256
|
},
|
|
279
257
|
complete: chat_complete.bind(this),
|
|
@@ -484,14 +462,8 @@ class src_MujianSdk {
|
|
|
484
462
|
getInfo: getInfo.bind(this)
|
|
485
463
|
},
|
|
486
464
|
settings: {
|
|
487
|
-
model: {
|
|
488
|
-
getAll: model_getAll.bind(this),
|
|
489
|
-
getActive: model_getActive.bind(this),
|
|
490
|
-
setActive: model_setActive.bind(this)
|
|
491
|
-
},
|
|
492
465
|
persona: {
|
|
493
|
-
getActive: getActive.bind(this)
|
|
494
|
-
setActive: setActive.bind(this)
|
|
466
|
+
getActive: getActive.bind(this)
|
|
495
467
|
}
|
|
496
468
|
},
|
|
497
469
|
complete: chat_complete.bind(this),
|
package/dist/lite.d.ts
CHANGED
|
@@ -7,11 +7,3 @@ import type { PersonaInfo } from '../../../../types';
|
|
|
7
7
|
export declare const getActive: (
|
|
8
8
|
/** @hidden */
|
|
9
9
|
this: MujianSdk) => Promise<PersonaInfo>;
|
|
10
|
-
/**
|
|
11
|
-
* 设置当前激活的个人设置
|
|
12
|
-
* @param personaId 个人设置ID
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
export declare const setActive: (
|
|
16
|
-
/** @hidden */
|
|
17
|
-
this: MujianSdk, personaId: string) => Promise<void>;
|
|
@@ -2,18 +2,15 @@ import { MujianSdk } from '../../../index';
|
|
|
2
2
|
import type OpenAI from 'openai';
|
|
3
3
|
/**
|
|
4
4
|
* @namespace openai.chat
|
|
5
|
-
* @description OpenAI 聊天补全
|
|
6
5
|
*/
|
|
7
6
|
export declare const chat: {
|
|
8
7
|
/**
|
|
9
8
|
* @namespace openai.chat.completions
|
|
10
|
-
* @description OpenAI 聊天补全
|
|
11
9
|
*/
|
|
12
10
|
completions: {
|
|
13
11
|
/**
|
|
14
12
|
* OpenAI 聊天补全
|
|
15
13
|
* @function openai.chat.completions.create
|
|
16
|
-
* @async
|
|
17
14
|
* @param {OpenAI.ChatCompletionCreateParams} params - 聊天补全参数
|
|
18
15
|
* @param {OpenAI.RequestOptions} options - 聊天补全选项
|
|
19
16
|
* @param {Function} onData - 数据生成时的回调
|
|
@@ -2,13 +2,11 @@ import { MujianSdk } from '../../../index';
|
|
|
2
2
|
import type OpenAI from 'openai';
|
|
3
3
|
/**
|
|
4
4
|
* @namespace openai.completions
|
|
5
|
-
* @description OpenAI 文本补全
|
|
6
5
|
*/
|
|
7
6
|
export declare const completions: {
|
|
8
7
|
/**
|
|
9
8
|
* OpenAI 文本补全
|
|
10
9
|
* @function openai.completions.create
|
|
11
|
-
* @async
|
|
12
10
|
* @param {OpenAI.CompletionCreateParams} params - 文本补全参数
|
|
13
11
|
* @param {OpenAI.RequestOptions} options - 文本补全选项
|
|
14
12
|
* @param {Function} onData - 数据生成时的回调
|
|
@@ -2,13 +2,11 @@ import { MujianSdk } from '../../../index';
|
|
|
2
2
|
import type OpenAI from 'openai';
|
|
3
3
|
/**
|
|
4
4
|
* @namespace openai.images
|
|
5
|
-
* @description OpenAI 图像生成
|
|
6
5
|
*/
|
|
7
6
|
export declare const images: {
|
|
8
7
|
/**
|
|
9
8
|
* OpenAI 图像生成
|
|
10
9
|
* @function openai.images.generate
|
|
11
|
-
* @async
|
|
12
10
|
* @param {OpenAI.ImageGenerateParams} params - 图像生成参数
|
|
13
11
|
* @param {OpenAI.RequestOptions} options - 图像生成选项
|
|
14
12
|
* @param {Function} onData - 数据生成时的回调
|
|
@@ -3,13 +3,11 @@ import type OpenAI from 'openai';
|
|
|
3
3
|
import type { ResponseCreateParams } from 'openai/resources/responses/responses.mjs';
|
|
4
4
|
/**
|
|
5
5
|
* @namespace openai.responses
|
|
6
|
-
* @description OpenAI 响应创建
|
|
7
6
|
*/
|
|
8
7
|
export declare const responses: {
|
|
9
8
|
/**
|
|
10
9
|
* OpenAI 响应创建
|
|
11
10
|
* @function openai.responses.create
|
|
12
|
-
* @async
|
|
13
11
|
* @param {ResponseCreateParams} params - 响应创建参数
|
|
14
12
|
* @param {OpenAI.RequestOptions} options - 响应创建选项
|
|
15
13
|
* @param {Function} onData - 数据生成时的回调
|
package/dist/modules/config.d.ts
CHANGED
|
@@ -7,15 +7,16 @@ export type MdRendererProps = {
|
|
|
7
7
|
content: string;
|
|
8
8
|
unsafe?: boolean;
|
|
9
9
|
extra?: Record<string, unknown>;
|
|
10
|
+
lang?: string;
|
|
10
11
|
};
|
|
11
12
|
/**
|
|
12
13
|
* A React component that renders markdown content as HTML
|
|
13
14
|
*/
|
|
14
15
|
export declare const MdRendererBase: {
|
|
15
|
-
({ content, unsafe, extra, }: MdRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
({ content, unsafe, extra, lang, }: MdRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
16
17
|
displayName: string;
|
|
17
18
|
};
|
|
18
19
|
export declare const MdRenderer: React.MemoExoticComponent<{
|
|
19
|
-
({ content, unsafe, extra, }: MdRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
({ content, unsafe, extra, lang, }: MdRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
20
21
|
displayName: string;
|
|
21
22
|
}>;
|
package/dist/react.js
CHANGED
|
@@ -406,7 +406,14 @@ function messageFormatting(mes, sanitizerOverrides = {}) {
|
|
|
406
406
|
});
|
|
407
407
|
return mes;
|
|
408
408
|
}
|
|
409
|
-
const
|
|
409
|
+
const loadingTranslates = {
|
|
410
|
+
'zh-hans': '加载中...',
|
|
411
|
+
'zh-hant': '載入中...',
|
|
412
|
+
en: 'Loading...',
|
|
413
|
+
ja: '読み込み中...',
|
|
414
|
+
th: 'กำลังโหลด...'
|
|
415
|
+
};
|
|
416
|
+
const MdRendererBase = ({ content, unsafe = false, extra = {}, lang })=>{
|
|
410
417
|
const containerRef = useRef(null);
|
|
411
418
|
const [iframeIdList, setIframeIdList] = useState([]);
|
|
412
419
|
useEffect(()=>{
|
|
@@ -423,16 +430,12 @@ const MdRendererBase = ({ content, unsafe = false, extra = {} })=>{
|
|
|
423
430
|
id
|
|
424
431
|
]);
|
|
425
432
|
const escapedSrcdoc = escapeHtmlAttribute(srcdoc);
|
|
433
|
+
const loadingText = loadingTranslates[lang ?? 'zh-hans'] || loadingTranslates['zh-hans'];
|
|
426
434
|
return `
|
|
427
435
|
<div class="MJ-iframe-container" id="${containerId}" style="display:flex;width:100%;height:100%;position:relative;">
|
|
428
436
|
<div class="spin-overlay" id="MJ-spin-${id}" style="width:100%;height:100%;position:absolute;top:0;left:0;z-index:1000;background-color:rgba(0,0,0,0.5);display:flex;justify-content:center;align-items:center;">
|
|
429
437
|
<div class="spin-inner wave-text" style="font-weight:500;font-size:16px;color:white;display:flex;justify-content:center;align-items:center;">
|
|
430
|
-
|
|
431
|
-
<span>载</span>
|
|
432
|
-
<span>中</span>
|
|
433
|
-
<span>.</span>
|
|
434
|
-
<span>.</span>
|
|
435
|
-
<span>.</span>
|
|
438
|
+
${loadingText.split('').map((t)=>`<span>${t}</span>`).join('')}
|
|
436
439
|
</div>
|
|
437
440
|
</div>
|
|
438
441
|
<iframe id="${iframeId}" class="w-full" sandbox="${unsafe ? "allow-scripts" : "allow-scripts allow-same-origin"}" loading="lazy"
|
|
@@ -630,22 +633,6 @@ const getInfo = async function() {
|
|
|
630
633
|
const getActive = async function() {
|
|
631
634
|
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE);
|
|
632
635
|
};
|
|
633
|
-
const setActive = async function(personaId) {
|
|
634
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_PERSONA_SET_ACTIVE, {
|
|
635
|
-
personaId
|
|
636
|
-
});
|
|
637
|
-
};
|
|
638
|
-
const model_getActive = async function() {
|
|
639
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_GET_ACTIVE);
|
|
640
|
-
};
|
|
641
|
-
const model_setActive = async function(modelId) {
|
|
642
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_SET_ACTIVE, {
|
|
643
|
-
modelId
|
|
644
|
-
});
|
|
645
|
-
};
|
|
646
|
-
const model_getAll = async function() {
|
|
647
|
-
return await this.call(events_EVENT.MUJIAN_AI_SETTINGS_MODEL_GET_ALL);
|
|
648
|
-
};
|
|
649
636
|
const generate = async function(content) {
|
|
650
637
|
return await this.call(MujianSdk.EVENT.MUJIAN_AI_TEXT_GENERATE, {
|
|
651
638
|
content
|
|
@@ -808,14 +795,8 @@ class MujianSdk {
|
|
|
808
795
|
getInfo: getInfo.bind(this)
|
|
809
796
|
},
|
|
810
797
|
settings: {
|
|
811
|
-
model: {
|
|
812
|
-
getAll: model_getAll.bind(this),
|
|
813
|
-
getActive: model_getActive.bind(this),
|
|
814
|
-
setActive: model_setActive.bind(this)
|
|
815
|
-
},
|
|
816
798
|
persona: {
|
|
817
|
-
getActive: getActive.bind(this)
|
|
818
|
-
setActive: setActive.bind(this)
|
|
799
|
+
getActive: getActive.bind(this)
|
|
819
800
|
}
|
|
820
801
|
},
|
|
821
802
|
complete: chat_complete.bind(this),
|
|
@@ -1141,7 +1122,6 @@ async function* callSdk(mujian, content, type = 'generate', signal) {
|
|
|
1141
1122
|
});
|
|
1142
1123
|
}
|
|
1143
1124
|
const NOT_SAVED_MSG_ID_PREFIX = 'not_saved';
|
|
1144
|
-
const FALLBACK_MESSAGE = `AI什么也没返回(该条不扣费)`;
|
|
1145
1125
|
const useChatStreaming = ({ common, setError, setMessages, getMessages, setInput, mujian })=>{
|
|
1146
1126
|
const { body } = common;
|
|
1147
1127
|
const [isStreaming, setIsStreaming] = useState(false);
|
|
@@ -1268,11 +1248,7 @@ const useChatStreaming = ({ common, setError, setMessages, getMessages, setInput
|
|
|
1268
1248
|
}
|
|
1269
1249
|
setMessages(produce((draft)=>{
|
|
1270
1250
|
const lastMessage = draft[draft.length - 1];
|
|
1271
|
-
if (!lastMessage.swipes[lastMessage.activeSwipeId] && !signal?.aborted && !lastMessage.flags.contentFilter)
|
|
1272
|
-
lastMessage.swipes[lastMessage.activeSwipeId] = FALLBACK_MESSAGE;
|
|
1273
|
-
lastMessage.content = FALLBACK_MESSAGE;
|
|
1274
|
-
lastMessage.flags.emptyResponse = true;
|
|
1275
|
-
}
|
|
1251
|
+
if (!lastMessage.swipes[lastMessage.activeSwipeId] && !signal?.aborted && !lastMessage.flags.contentFilter) lastMessage.flags.emptyResponse = true;
|
|
1276
1252
|
}));
|
|
1277
1253
|
} catch (error) {
|
|
1278
1254
|
Log.e('Stream error', error);
|
package/dist/umd/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.MujianUMD=e():t.MujianUMD=e()}(globalThis,()=>(()=>{"use strict";var t,e={};e.d=(t,i)=>{for(var n in i)e.o(i,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:i[n]})},e.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),e.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var i={};e.r(i),e.d(i,{MujianSdk:()=>D,EVENT:()=>u});var n="application/x-postmate-v1+json",a=0,s=function(t){var e=document.createElement("a");e.href=t;var i=e.protocol.length>4?e.protocol:window.location.protocol,n=e.host.length?"80"===e.port||"443"===e.port?e.hostname:e.host:window.location.host;return e.origin||i+"//"+n},r={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},o=function(t,e){return("string"!=typeof e||t.origin===e)&&!!t.data&&("object"!=typeof t.data||"postmate"in t.data)&&t.data.type===n&&!!r[t.data.postmate]},c=function(t,e){var i="function"==typeof t[e]?t[e]():t[e];return h.Promise.resolve(i)},l=function(){function t(t){var e=this;this.parent=t.parent,this.frame=t.frame,this.child=t.child,this.childOrigin=t.childOrigin,this.events={},this.listener=function(t){if(!o(t,e.childOrigin))return!1;var i=((t||{}).data||{}).value||{},n=i.data,a=i.name;"emit"===t.data.postmate&&a in e.events&&e.events[a].call(e,n)},this.parent.addEventListener("message",this.listener,!1)}var e=t.prototype;return e.get=function(t){var e=this;return new h.Promise(function(i){var s=++a;e.parent.addEventListener("message",function t(n){n.data.uid===s&&"reply"===n.data.postmate&&(e.parent.removeEventListener("message",t,!1),i(n.data.value))},!1),e.child.postMessage({postmate:"request",type:n,property:t,uid:s},e.childOrigin)})},e.call=function(t,e){this.child.postMessage({postmate:"call",type:n,property:t,data:e},this.childOrigin)},e.on=function(t,e){this.events[t]=e},e.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame)},t}(),d=function(){function t(t){var e=this;this.model=t.model,this.parent=t.parent,this.parentOrigin=t.parentOrigin,this.child=t.child,this.child.addEventListener("message",function(t){if(o(t,e.parentOrigin)){var i=t.data,a=i.property,s=i.uid,r=i.data;if("call"===t.data.postmate){a in e.model&&"function"==typeof e.model[a]&&e.model[a](r);return}c(e.model,a).then(function(e){return t.source.postMessage({property:a,postmate:"reply",type:n,uid:s,value:e},t.origin)})}})}return t.prototype.emit=function(t,e){this.parent.postMessage({postmate:"emit",type:n,value:{name:t,data:e}},this.parentOrigin)},t}(),h=function(){function t(t){var e=t.container,i=void 0===e?void 0!==i?i:document.body:e,n=t.model,a=t.url,s=t.name,r=t.classListArray;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=s||"",this.frame.classList.add.apply(this.frame.classList,void 0===r?[]:r),i.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=n||{},this.sendHandshake(a)}return t.prototype.sendHandshake=function(e){var i,a=this,r=s(e),c=0;return new t.Promise(function(t,s){a.parent.addEventListener("message",function e(n){return!!o(n,r)&&("handshake-reply"===n.data.postmate?(clearInterval(i),a.parent.removeEventListener("message",e,!1),a.childOrigin=n.origin,t(new l(a))):s("Failed handshake"))},!1);var d=function(){c++,a.child.postMessage({postmate:"handshake",type:n,model:a.model},r),5===c&&clearInterval(i)},h=function(){d(),i=setInterval(d,500)};a.frame.attachEvent?a.frame.attachEvent("onload",h):a.frame.onload=h,a.frame.src=e})},t}();h.debug=!1,h.Promise=function(){try{return window?window.Promise:Promise}catch(t){return null}}(),h.Model=function(){function t(t){return this.child=window,this.model=t,this.parent=this.child.parent,this.sendHandshakeReply()}return t.prototype.sendHandshakeReply=function(){var t=this;return new h.Promise(function(e,i){t.child.addEventListener("message",function a(s){if(s.data.postmate){if("handshake"===s.data.postmate){t.child.removeEventListener("message",a,!1),s.source.postMessage({postmate:"handshake-reply",type:n},s.origin),t.parentOrigin=s.origin;var r=s.data.model;return r&&Object.keys(r).forEach(function(e){t.model[e]=r[e]}),e(new d(t))}return i("Handshake Reply Failed")}},!1)})},t}();var u=((t={}).MUJIAN_INIT="mujian:init",t.MUJIAN_AI_CHAT_STOP="mujian:ai:chat:stop",t.MUJIAN_AI_CHAT_COMPLETE="mujian:ai:chat:complete",t.MUJIAN_AI_CHAT_APPLY_REGEX="mujian:ai:chat:applyRegex",t.MUJIAN_AI_CHAT_RENDER_MESSAGE="mujian:ai:chat:renderMessage",t.MUJIAN_AI_TEXT_GENERATE="mujian:ai:text:generate",t.MUJIAN_AI_OPENAI_COMPLETIONS_CREATE="mujian:ai:openai:completions:create",t.MUJIAN_AI_OPENAI_CHAT_COMPLETIONS_CREATE="mujian:ai:openai:chat:completions:create",t.MUJIAN_AI_OPENAI_RESPONSES_CREATE="mujian:ai:openai:responses:create",t.MUJIAN_AI_CHAT_MESSAGE_GET_ALL="mujian:ai:chat:message:getAll",t.MUJIAN_AI_CHAT_MESSAGE_GET_PAGE="mujian:ai:chat:message:getPage",t.MUJIAN_AI_CHAT_PROJECT_GET_INFO="mujian:ai:chat:project:getInfo",t.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE="mujian:ai:settings:persona:getActive",t.MUJIAN_AI_SETTINGS_PERSONA_SET_ACTIVE="mujian:ai:settings:persona:setActive",t.MUJIAN_AI_SETTINGS_MODEL_GET_ALL="mujian:ai:settings:model:getAll",t.MUJIAN_AI_SETTINGS_MODEL_SET_ACTIVE="mujian:ai:settings:model:setActive",t.MUJIAN_AI_SETTINGS_MODEL_GET_ACTIVE="mujian:ai:settings:model:getActive",t.MUJIAN_AI_CHAT_MESSAGE_DELETE_ONE="mujian:ai:chat:message:deleteOne",t.MUJIAN_AI_CHAT_MESSAGE_EDIT_ONE="mujian:ai:chat:message:editOne",t.MUJIAN_AI_CHAT_MESSAGE_SWIPE="mujian:ai:chat:message:swipe",t.MUJIAN_AI_OPENAI_IMAGES_GENERATE="mujian:ai:openai:images:generate",t.MUJIAN_UTILS_CLIPBOARD_WRITE_TEXT="mujian:utils:clipboard:writeText",t.MUJIAN_GET_CONFIG="mujian:getConfig",t);let _=async function(t,e,i,n={}){let a,s,r,o;await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{content:t},{onData:n.parseContent?(a="",s="",function(t){let i=(s+=t).split("\n");for(let t of(s=i.pop()||"",i))if(t.startsWith("data: "))try{let i=JSON.parse(t.slice(6));if(i.question_id&&(r=i.question_id),i.reply_id&&(o=i.reply_id),i.isFinished)return void e({isFinished:!0,deltaContent:"",fullContent:a,questionId:r,replyId:o});let n=i?.choices?.[0]?.delta?.content;n?.length>0&&(a+=n,e({isFinished:!1,deltaContent:n,fullContent:a,questionId:r,replyId:o}))}catch(t){e({isFinished:!0,error:t,deltaContent:"",fullContent:a,questionId:r,replyId:o});return}}):e,signal:i})},p=async function(t){return await this.call(u.MUJIAN_AI_CHAT_APPLY_REGEX,t)},m=async function(t){return await this.call(u.MUJIAN_AI_CHAT_RENDER_MESSAGE,t)},A=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{isContinue:!0},{onData:t,signal:e})},E=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{isRegenerate:!0},{onData:t,signal:e})},I=async function(){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_GET_ALL)},g=async function(t){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_DELETE_ONE,{messageId:t})},f=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_EDIT_ONE,{messageId:t,content:e})},T=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_SWIPE,{messageId:t,swipeId:e})};async function y(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_GET_PAGE,{fromCursor:t,pageSize:e})}let M=async function(){return await this.call(u.MUJIAN_AI_CHAT_PROJECT_GET_INFO)},N=async function(){return await this.call(u.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE)},C=async function(t){return await this.call(u.MUJIAN_AI_SETTINGS_PERSONA_SET_ACTIVE,{personaId:t})},w=async function(){return await this.call(u.MUJIAN_AI_SETTINGS_MODEL_GET_ACTIVE)},S=async function(t){return await this.call(u.MUJIAN_AI_SETTINGS_MODEL_SET_ACTIVE,{modelId:t})},b=async function(){return await this.call(u.MUJIAN_AI_SETTINGS_MODEL_GET_ALL)};async function v(){return await this.call(u.MUJIAN_GET_CONFIG)}let O=async function(){},j=async function(){};async function P(t){return await this.call(u.MUJIAN_UTILS_CLIPBOARD_WRITE_TEXT,t)}let J={i(...t){console.log("[MujianSDK] ",...t)},e(...t){console.error("[MujianSDK] ",...t)}};class U{constructor(){}static EVENT=u;static getInstance(){return window.$mujian||(window.$mujian=new U),window.$mujian}parent=null;ready=!1;get isReady(){return this.ready}pendingRequests=new Map;_config;get openapi(){return this._config?.openapi}initPromise=null;async init(){return this.initPromise||(this.initPromise=(async()=>{let t=new h.Model({reply:({id:t,complete:e,data:i,error:n})=>{let a=this.pendingRequests.get(t);if(a){if(n){a.reject(n),this.pendingRequests.delete(t);return}a.onData?.(i),e&&(a.onComplete?.(),a.resolve(i),this.pendingRequests.delete(t))}}});try{let e=await t;this.ready=!0,this.parent=e,J.i("mujian sdk client init"),await this.call(u.MUJIAN_INIT);let i=await this.ai.chat.project.getInfo();if(i.config?.customCss){let t=document.createElement("style");t.setAttribute("type","text/css"),t.setAttribute("id","mujian-custom-css"),t.textContent=i.config.customCss,document.head.appendChild(t)}if(i.config?.customJs){let t=document.createElement("script");t.setAttribute("type","text/javascript"),t.setAttribute("id","mujian-custom-js"),t.textContent=i.config.customJs,document.head.appendChild(t)}let n=await v.call(this);n&&(this._config=n)}catch(t){J.e("init error",t)}})()),this.initPromise}emit(t,e){if(!this.ready)throw Error("Mujian is not initialized");this.parent?.emit(t,e)}nextCallId=0;getCallId(){let t=this.nextCallId;return this.nextCallId+=1,t}async call(t,e,i){if(!this.ready)throw Error("Mujian is not initialized");let n=this.getCallId();return new Promise((a,s)=>{this.pendingRequests.set(n,{resolve:a,reject:s,...i}),this.emit(t,{id:n,data:e}),i?.signal?.addEventListener("abort",()=>{this.emit(u.MUJIAN_AI_CHAT_STOP,{id:n})})})}ai={chat:{project:{getInfo:M.bind(this)},settings:{model:{getAll:b.bind(this),getActive:w.bind(this),setActive:S.bind(this)},persona:{getActive:N.bind(this),setActive:C.bind(this)}},complete:_.bind(this),applyRegex:p.bind(this),renderMessage:m.bind(this),continue:A.bind(this),regenerate:E.bind(this),message:{getAll:I.bind(this),deleteOne:g.bind(this),editOne:f.bind(this),swipe:T.bind(this),getPage:y.bind(this)}},text:{complete:G.bind(this)},openai:{completions:{create:L.create.bind(this)},chat:{completions:{create:R.completions.create.bind(this)}},responses:{create:H.create.bind(this)},images:{generate:x.generate.bind(this)}}};ui={};utils={clipboard:{writeText:P.bind(this)}};hybrid={};player={};game={assets:()=>{console.log("assets")},saves:{saveGame:O.bind(this),loadGame:j.bind(this)},ranking:()=>{console.log("ranking")}}}let G=async function(t){return await this.call(U.EVENT.MUJIAN_AI_TEXT_GENERATE,{content:t})},R={completions:{create:async function(t,e,i,n){return await this.call(U.EVENT.MUJIAN_AI_OPENAI_CHAT_COMPLETIONS_CREATE,{params:t,options:e},{onData:i,signal:n})}}},L={create:async function(t,e,i,n){return await this.call(U.EVENT.MUJIAN_AI_OPENAI_COMPLETIONS_CREATE,{params:t,options:e},{onData:i,signal:n})}},H={create:async function(t,e,i,n){return await this.call(U.EVENT.MUJIAN_AI_OPENAI_RESPONSES_CREATE,{params:t,options:e},{onData:i,signal:n})}},x={generate:async function(t,e,i,n){return await this.call(U.EVENT.MUJIAN_AI_OPENAI_IMAGES_GENERATE,{params:t,options:e},{onData:i,signal:n})}};class D{constructor(){}static EVENT=u;static getInstance(){return window.$mujian||(window.$mujian=new D),window.$mujian}parent=null;ready=!1;get isReady(){return this.ready}pendingRequests=new Map;_config;get openapi(){return this._config?.openapi}initPromise=null;async init(){return this.initPromise||(this.initPromise=(async()=>{let t=new h.Model({reply:({id:t,complete:e,data:i,error:n})=>{let a=this.pendingRequests.get(t);if(a){if(n){a.reject(n),this.pendingRequests.delete(t);return}a.onData?.(i),e&&(a.onComplete?.(),a.resolve(i),this.pendingRequests.delete(t))}}});try{let e=await t;this.ready=!0,this.parent=e,J.i("mujian sdk client init"),await this.call(u.MUJIAN_INIT);let i=await this.ai.chat.project.getInfo();if(i.config?.customCss){let t=document.createElement("style");t.setAttribute("type","text/css"),t.setAttribute("id","mujian-custom-css"),t.textContent=i.config.customCss,document.head.appendChild(t)}if(i.config?.customJs){let t=document.createElement("script");t.setAttribute("type","text/javascript"),t.setAttribute("id","mujian-custom-js"),t.textContent=i.config.customJs,document.head.appendChild(t)}let n=await v.call(this);n&&(this._config=n)}catch(t){J.e("init error",t)}})()),this.initPromise}emit(t,e){if(!this.ready)throw Error("Mujian is not initialized");this.parent?.emit(t,e)}nextCallId=0;getCallId(){let t=this.nextCallId;return this.nextCallId+=1,t}async call(t,e,i){if(!this.ready)throw Error("Mujian is not initialized");let n=this.getCallId();return new Promise((a,s)=>{this.pendingRequests.set(n,{resolve:a,reject:s,...i}),this.emit(t,{id:n,data:e}),i?.signal?.addEventListener("abort",()=>{this.emit(u.MUJIAN_AI_CHAT_STOP,{id:n})})})}ai={chat:{project:{getInfo:M.bind(this)},settings:{model:{getAll:b.bind(this),getActive:w.bind(this),setActive:S.bind(this)},persona:{getActive:N.bind(this),setActive:C.bind(this)}},complete:_.bind(this),applyRegex:p.bind(this),renderMessage:m.bind(this),continue:A.bind(this),regenerate:E.bind(this),message:{getAll:I.bind(this),deleteOne:g.bind(this),editOne:f.bind(this),swipe:T.bind(this),getPage:y.bind(this)}},text:{complete:G.bind(this)},openai:{completions:{create:L.create.bind(this)},chat:{completions:{create:R.completions.create.bind(this)}},responses:{create:H.create.bind(this)},images:{generate:x.generate.bind(this)}}};ui={};utils={clipboard:{writeText:P.bind(this)}};hybrid={};player={};game={assets:()=>{console.log("assets")},saves:{saveGame:O.bind(this),loadGame:j.bind(this)},ranking:()=>{console.log("ranking")}}}return i})());
|
|
2
|
+
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.MujianUMD=e():t.MujianUMD=e()}(globalThis,()=>(()=>{"use strict";var t,e={};e.d=(t,i)=>{for(var n in i)e.o(i,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:i[n]})},e.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),e.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var i={};e.r(i),e.d(i,{MujianSdk:()=>R,EVENT:()=>u});var n="application/x-postmate-v1+json",a=0,s=function(t){var e=document.createElement("a");e.href=t;var i=e.protocol.length>4?e.protocol:window.location.protocol,n=e.host.length?"80"===e.port||"443"===e.port?e.hostname:e.host:window.location.host;return e.origin||i+"//"+n},r={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},o=function(t,e){return("string"!=typeof e||t.origin===e)&&!!t.data&&("object"!=typeof t.data||"postmate"in t.data)&&t.data.type===n&&!!r[t.data.postmate]},c=function(t,e){var i="function"==typeof t[e]?t[e]():t[e];return h.Promise.resolve(i)},l=function(){function t(t){var e=this;this.parent=t.parent,this.frame=t.frame,this.child=t.child,this.childOrigin=t.childOrigin,this.events={},this.listener=function(t){if(!o(t,e.childOrigin))return!1;var i=((t||{}).data||{}).value||{},n=i.data,a=i.name;"emit"===t.data.postmate&&a in e.events&&e.events[a].call(e,n)},this.parent.addEventListener("message",this.listener,!1)}var e=t.prototype;return e.get=function(t){var e=this;return new h.Promise(function(i){var s=++a;e.parent.addEventListener("message",function t(n){n.data.uid===s&&"reply"===n.data.postmate&&(e.parent.removeEventListener("message",t,!1),i(n.data.value))},!1),e.child.postMessage({postmate:"request",type:n,property:t,uid:s},e.childOrigin)})},e.call=function(t,e){this.child.postMessage({postmate:"call",type:n,property:t,data:e},this.childOrigin)},e.on=function(t,e){this.events[t]=e},e.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame)},t}(),d=function(){function t(t){var e=this;this.model=t.model,this.parent=t.parent,this.parentOrigin=t.parentOrigin,this.child=t.child,this.child.addEventListener("message",function(t){if(o(t,e.parentOrigin)){var i=t.data,a=i.property,s=i.uid,r=i.data;if("call"===t.data.postmate){a in e.model&&"function"==typeof e.model[a]&&e.model[a](r);return}c(e.model,a).then(function(e){return t.source.postMessage({property:a,postmate:"reply",type:n,uid:s,value:e},t.origin)})}})}return t.prototype.emit=function(t,e){this.parent.postMessage({postmate:"emit",type:n,value:{name:t,data:e}},this.parentOrigin)},t}(),h=function(){function t(t){var e=t.container,i=void 0===e?void 0!==i?i:document.body:e,n=t.model,a=t.url,s=t.name,r=t.classListArray;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=s||"",this.frame.classList.add.apply(this.frame.classList,void 0===r?[]:r),i.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=n||{},this.sendHandshake(a)}return t.prototype.sendHandshake=function(e){var i,a=this,r=s(e),c=0;return new t.Promise(function(t,s){a.parent.addEventListener("message",function e(n){return!!o(n,r)&&("handshake-reply"===n.data.postmate?(clearInterval(i),a.parent.removeEventListener("message",e,!1),a.childOrigin=n.origin,t(new l(a))):s("Failed handshake"))},!1);var d=function(){c++,a.child.postMessage({postmate:"handshake",type:n,model:a.model},r),5===c&&clearInterval(i)},h=function(){d(),i=setInterval(d,500)};a.frame.attachEvent?a.frame.attachEvent("onload",h):a.frame.onload=h,a.frame.src=e})},t}();h.debug=!1,h.Promise=function(){try{return window?window.Promise:Promise}catch(t){return null}}(),h.Model=function(){function t(t){return this.child=window,this.model=t,this.parent=this.child.parent,this.sendHandshakeReply()}return t.prototype.sendHandshakeReply=function(){var t=this;return new h.Promise(function(e,i){t.child.addEventListener("message",function a(s){if(s.data.postmate){if("handshake"===s.data.postmate){t.child.removeEventListener("message",a,!1),s.source.postMessage({postmate:"handshake-reply",type:n},s.origin),t.parentOrigin=s.origin;var r=s.data.model;return r&&Object.keys(r).forEach(function(e){t.model[e]=r[e]}),e(new d(t))}return i("Handshake Reply Failed")}},!1)})},t}();var u=((t={}).MUJIAN_INIT="mujian:init",t.MUJIAN_AI_CHAT_STOP="mujian:ai:chat:stop",t.MUJIAN_AI_CHAT_COMPLETE="mujian:ai:chat:complete",t.MUJIAN_AI_CHAT_APPLY_REGEX="mujian:ai:chat:applyRegex",t.MUJIAN_AI_CHAT_RENDER_MESSAGE="mujian:ai:chat:renderMessage",t.MUJIAN_AI_TEXT_GENERATE="mujian:ai:text:generate",t.MUJIAN_AI_OPENAI_COMPLETIONS_CREATE="mujian:ai:openai:completions:create",t.MUJIAN_AI_OPENAI_CHAT_COMPLETIONS_CREATE="mujian:ai:openai:chat:completions:create",t.MUJIAN_AI_OPENAI_RESPONSES_CREATE="mujian:ai:openai:responses:create",t.MUJIAN_AI_CHAT_MESSAGE_GET_ALL="mujian:ai:chat:message:getAll",t.MUJIAN_AI_CHAT_MESSAGE_GET_PAGE="mujian:ai:chat:message:getPage",t.MUJIAN_AI_CHAT_PROJECT_GET_INFO="mujian:ai:chat:project:getInfo",t.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE="mujian:ai:settings:persona:getActive",t.MUJIAN_AI_SETTINGS_PERSONA_SET_ACTIVE="mujian:ai:settings:persona:setActive",t.MUJIAN_AI_SETTINGS_MODEL_GET_ALL="mujian:ai:settings:model:getAll",t.MUJIAN_AI_SETTINGS_MODEL_SET_ACTIVE="mujian:ai:settings:model:setActive",t.MUJIAN_AI_SETTINGS_MODEL_GET_ACTIVE="mujian:ai:settings:model:getActive",t.MUJIAN_AI_CHAT_MESSAGE_DELETE_ONE="mujian:ai:chat:message:deleteOne",t.MUJIAN_AI_CHAT_MESSAGE_EDIT_ONE="mujian:ai:chat:message:editOne",t.MUJIAN_AI_CHAT_MESSAGE_SWIPE="mujian:ai:chat:message:swipe",t.MUJIAN_AI_OPENAI_IMAGES_GENERATE="mujian:ai:openai:images:generate",t.MUJIAN_UTILS_CLIPBOARD_WRITE_TEXT="mujian:utils:clipboard:writeText",t.MUJIAN_GET_CONFIG="mujian:getConfig",t);let p=async function(t,e,i,n={}){let a,s,r,o;await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{content:t},{onData:n.parseContent?(a="",s="",function(t){let i=(s+=t).split("\n");for(let t of(s=i.pop()||"",i))if(t.startsWith("data: "))try{let i=JSON.parse(t.slice(6));if(i.question_id&&(r=i.question_id),i.reply_id&&(o=i.reply_id),i.isFinished)return void e({isFinished:!0,deltaContent:"",fullContent:a,questionId:r,replyId:o});let n=i?.choices?.[0]?.delta?.content;n?.length>0&&(a+=n,e({isFinished:!1,deltaContent:n,fullContent:a,questionId:r,replyId:o}))}catch(t){e({isFinished:!0,error:t,deltaContent:"",fullContent:a,questionId:r,replyId:o});return}}):e,signal:i})},m=async function(t){return await this.call(u.MUJIAN_AI_CHAT_APPLY_REGEX,t)},_=async function(t){return await this.call(u.MUJIAN_AI_CHAT_RENDER_MESSAGE,t)},A=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{isContinue:!0},{onData:t,signal:e})},E=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_COMPLETE,{isRegenerate:!0},{onData:t,signal:e})},I=async function(){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_GET_ALL)},g=async function(t){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_DELETE_ONE,{messageId:t})},f=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_EDIT_ONE,{messageId:t,content:e})},T=async function(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_SWIPE,{messageId:t,swipeId:e})};async function y(t,e){return await this.call(u.MUJIAN_AI_CHAT_MESSAGE_GET_PAGE,{fromCursor:t,pageSize:e})}let M=async function(){return await this.call(u.MUJIAN_AI_CHAT_PROJECT_GET_INFO)},N=async function(){return await this.call(u.MUJIAN_AI_SETTINGS_PERSONA_GET_ACTIVE)};async function C(){return await this.call(u.MUJIAN_GET_CONFIG)}let w=async function(){},b=async function(){};async function v(t){return await this.call(u.MUJIAN_UTILS_CLIPBOARD_WRITE_TEXT,t)}let S={i(...t){console.log("[MujianSDK] ",...t)},e(...t){console.error("[MujianSDK] ",...t)}};class O{constructor(){}static EVENT=u;static getInstance(){return window.$mujian||(window.$mujian=new O),window.$mujian}parent=null;ready=!1;get isReady(){return this.ready}pendingRequests=new Map;_config;get openapi(){return this._config?.openapi}initPromise=null;async init(){return this.initPromise||(this.initPromise=(async()=>{let t=new h.Model({reply:({id:t,complete:e,data:i,error:n})=>{let a=this.pendingRequests.get(t);if(a){if(n){a.reject(n),this.pendingRequests.delete(t);return}a.onData?.(i),e&&(a.onComplete?.(),a.resolve(i),this.pendingRequests.delete(t))}}});try{let e=await t;this.ready=!0,this.parent=e,S.i("mujian sdk client init"),await this.call(u.MUJIAN_INIT);let i=await this.ai.chat.project.getInfo();if(i.config?.customCss){let t=document.createElement("style");t.setAttribute("type","text/css"),t.setAttribute("id","mujian-custom-css"),t.textContent=i.config.customCss,document.head.appendChild(t)}if(i.config?.customJs){let t=document.createElement("script");t.setAttribute("type","text/javascript"),t.setAttribute("id","mujian-custom-js"),t.textContent=i.config.customJs,document.head.appendChild(t)}let n=await C.call(this);n&&(this._config=n)}catch(t){S.e("init error",t)}})()),this.initPromise}emit(t,e){if(!this.ready)throw Error("Mujian is not initialized");this.parent?.emit(t,e)}nextCallId=0;getCallId(){let t=this.nextCallId;return this.nextCallId+=1,t}async call(t,e,i){if(!this.ready)throw Error("Mujian is not initialized");let n=this.getCallId();return new Promise((a,s)=>{this.pendingRequests.set(n,{resolve:a,reject:s,...i}),this.emit(t,{id:n,data:e}),i?.signal?.addEventListener("abort",()=>{this.emit(u.MUJIAN_AI_CHAT_STOP,{id:n})})})}ai={chat:{project:{getInfo:M.bind(this)},settings:{persona:{getActive:N.bind(this)}},complete:p.bind(this),applyRegex:m.bind(this),renderMessage:_.bind(this),continue:A.bind(this),regenerate:E.bind(this),message:{getAll:I.bind(this),deleteOne:g.bind(this),editOne:f.bind(this),swipe:T.bind(this),getPage:y.bind(this)}},text:{complete:j.bind(this)},openai:{completions:{create:J.create.bind(this)},chat:{completions:{create:P.completions.create.bind(this)}},responses:{create:U.create.bind(this)},images:{generate:G.generate.bind(this)}}};ui={};utils={clipboard:{writeText:v.bind(this)}};hybrid={};player={};game={assets:()=>{console.log("assets")},saves:{saveGame:w.bind(this),loadGame:b.bind(this)},ranking:()=>{console.log("ranking")}}}let j=async function(t){return await this.call(O.EVENT.MUJIAN_AI_TEXT_GENERATE,{content:t})},P={completions:{create:async function(t,e,i,n){return await this.call(O.EVENT.MUJIAN_AI_OPENAI_CHAT_COMPLETIONS_CREATE,{params:t,options:e},{onData:i,signal:n})}}},J={create:async function(t,e,i,n){return await this.call(O.EVENT.MUJIAN_AI_OPENAI_COMPLETIONS_CREATE,{params:t,options:e},{onData:i,signal:n})}},U={create:async function(t,e,i,n){return await this.call(O.EVENT.MUJIAN_AI_OPENAI_RESPONSES_CREATE,{params:t,options:e},{onData:i,signal:n})}},G={generate:async function(t,e,i,n){return await this.call(O.EVENT.MUJIAN_AI_OPENAI_IMAGES_GENERATE,{params:t,options:e},{onData:i,signal:n})}};class R{constructor(){}static EVENT=u;static getInstance(){return window.$mujian||(window.$mujian=new R),window.$mujian}parent=null;ready=!1;get isReady(){return this.ready}pendingRequests=new Map;_config;get openapi(){return this._config?.openapi}initPromise=null;async init(){return this.initPromise||(this.initPromise=(async()=>{let t=new h.Model({reply:({id:t,complete:e,data:i,error:n})=>{let a=this.pendingRequests.get(t);if(a){if(n){a.reject(n),this.pendingRequests.delete(t);return}a.onData?.(i),e&&(a.onComplete?.(),a.resolve(i),this.pendingRequests.delete(t))}}});try{let e=await t;this.ready=!0,this.parent=e,S.i("mujian sdk client init"),await this.call(u.MUJIAN_INIT);let i=await this.ai.chat.project.getInfo();if(i.config?.customCss){let t=document.createElement("style");t.setAttribute("type","text/css"),t.setAttribute("id","mujian-custom-css"),t.textContent=i.config.customCss,document.head.appendChild(t)}if(i.config?.customJs){let t=document.createElement("script");t.setAttribute("type","text/javascript"),t.setAttribute("id","mujian-custom-js"),t.textContent=i.config.customJs,document.head.appendChild(t)}let n=await C.call(this);n&&(this._config=n)}catch(t){S.e("init error",t)}})()),this.initPromise}emit(t,e){if(!this.ready)throw Error("Mujian is not initialized");this.parent?.emit(t,e)}nextCallId=0;getCallId(){let t=this.nextCallId;return this.nextCallId+=1,t}async call(t,e,i){if(!this.ready)throw Error("Mujian is not initialized");let n=this.getCallId();return new Promise((a,s)=>{this.pendingRequests.set(n,{resolve:a,reject:s,...i}),this.emit(t,{id:n,data:e}),i?.signal?.addEventListener("abort",()=>{this.emit(u.MUJIAN_AI_CHAT_STOP,{id:n})})})}ai={chat:{project:{getInfo:M.bind(this)},settings:{persona:{getActive:N.bind(this)}},complete:p.bind(this),applyRegex:m.bind(this),renderMessage:_.bind(this),continue:A.bind(this),regenerate:E.bind(this),message:{getAll:I.bind(this),deleteOne:g.bind(this),editOne:f.bind(this),swipe:T.bind(this),getPage:y.bind(this)}},text:{complete:j.bind(this)},openai:{completions:{create:J.create.bind(this)},chat:{completions:{create:P.completions.create.bind(this)}},responses:{create:U.create.bind(this)},images:{generate:G.generate.bind(this)}}};ui={};utils={clipboard:{writeText:v.bind(this)}};hybrid={};player={};game={assets:()=>{console.log("assets")},saves:{saveGame:w.bind(this),loadGame:b.bind(this)},ranking:()=>{console.log("ranking")}}}return i})());
|