715 lines
46 KiB
JavaScript
715 lines
46 KiB
JavaScript
exports.id = 4417;
|
|
exports.ids = [4417];
|
|
exports.modules = {
|
|
|
|
/***/ 94417:
|
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
|
|
"use strict";
|
|
__webpack_require__.r(__webpack_exports__);
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ ContextPrompts: () => (/* binding */ ContextPrompts),
|
|
/* harmony export */ MaskAvatar: () => (/* binding */ MaskAvatar),
|
|
/* harmony export */ MaskConfig: () => (/* binding */ MaskConfig),
|
|
/* harmony export */ MaskPage: () => (/* binding */ MaskPage)
|
|
/* harmony export */ });
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(56786);
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39378);
|
|
/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(13727);
|
|
/* harmony import */ var _mask_module_scss__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(95073);
|
|
/* harmony import */ var _mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(_mask_module_scss__WEBPACK_IMPORTED_MODULE_26__);
|
|
/* harmony import */ var _icons_download_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(24624);
|
|
/* harmony import */ var _icons_upload_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(62030);
|
|
/* harmony import */ var _icons_edit_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(54095);
|
|
/* harmony import */ var _icons_add_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(31935);
|
|
/* harmony import */ var _icons_close_svg__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(54299);
|
|
/* harmony import */ var _icons_delete_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(77360);
|
|
/* harmony import */ var _icons_eye_svg__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(61221);
|
|
/* harmony import */ var _icons_copy_svg__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(53231);
|
|
/* harmony import */ var _icons_drag_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(3276);
|
|
/* harmony import */ var _store_mask__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(73706);
|
|
/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(1075);
|
|
/* harmony import */ var _client_api__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(10616);
|
|
/* harmony import */ var _ui_lib__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(24552);
|
|
/* harmony import */ var _emoji__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(85563);
|
|
/* harmony import */ var _locales__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(57254);
|
|
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(99742);
|
|
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_25__);
|
|
/* harmony import */ var _chat_module_scss__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(48563);
|
|
/* harmony import */ var _chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(_chat_module_scss__WEBPACK_IMPORTED_MODULE_23__);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(18038);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_18__);
|
|
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(92842);
|
|
/* harmony import */ var _model_config__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(80663);
|
|
/* harmony import */ var _constant__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(43684);
|
|
/* harmony import */ var _masks__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(8586);
|
|
/* harmony import */ var _hello_pangea_dnd__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(41423);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// drag and drop helper function
|
|
function reorder(list, startIndex, endIndex) {
|
|
const result = [
|
|
...list
|
|
];
|
|
const [removed] = result.splice(startIndex, 1);
|
|
result.splice(endIndex, 0, removed);
|
|
return result;
|
|
}
|
|
function MaskAvatar(props) {
|
|
return props.avatar !== _store_mask__WEBPACK_IMPORTED_MODULE_12__/* .DEFAULT_MASK_AVATAR */ ._G ? /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_emoji__WEBPACK_IMPORTED_MODULE_16__/* .Avatar */ .qE, {
|
|
avatar: props.avatar
|
|
}) : /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_emoji__WEBPACK_IMPORTED_MODULE_16__/* .Avatar */ .qE, {
|
|
model: props.model
|
|
});
|
|
}
|
|
function MaskConfig(props) {
|
|
const [showPicker, setShowPicker] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)(false);
|
|
const updateConfig = (updater)=>{
|
|
if (props.readonly) return;
|
|
const config = {
|
|
...props.mask.modelConfig
|
|
};
|
|
updater(config);
|
|
props.updateMask((mask)=>{
|
|
mask.modelConfig = config;
|
|
// if user changed current session mask, it will disable auto sync
|
|
mask.syncGlobalConfig = false;
|
|
});
|
|
};
|
|
const copyMaskLink = ()=>{
|
|
const maskLink = `${location.protocol}//${location.host}/#${_constant__WEBPACK_IMPORTED_MODULE_21__/* .Path */ .y$.NewChat}?mask=${props.mask.id}`;
|
|
(0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .copyToClipboard */ .vQ)(maskLink);
|
|
};
|
|
const globalConfig = (0,_store__WEBPACK_IMPORTED_MODULE_13__/* .useAppConfig */ .MG)();
|
|
return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(ContextPrompts, {
|
|
context: props.mask.context,
|
|
updateContext: (updater)=>{
|
|
const context = props.mask.context.slice();
|
|
updater(context);
|
|
props.updateMask((mask)=>mask.context = context);
|
|
}
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .List */ .aV, {
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .ListItem */ .HC, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Avatar,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .Popover */ .J2, {
|
|
content: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_emoji__WEBPACK_IMPORTED_MODULE_16__/* .AvatarPicker */ .aR, {
|
|
onEmojiClick: (emoji)=>{
|
|
props.updateMask((mask)=>mask.avatar = emoji);
|
|
setShowPicker(false);
|
|
}
|
|
}),
|
|
open: showPicker,
|
|
onClose: ()=>setShowPicker(false),
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
onClick: ()=>setShowPicker(true),
|
|
style: {
|
|
cursor: "pointer"
|
|
},
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(MaskAvatar, {
|
|
avatar: props.mask.avatar,
|
|
model: props.mask.modelConfig.model
|
|
})
|
|
})
|
|
})
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .ListItem */ .HC, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Name,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
|
|
type: "text",
|
|
value: props.mask.name,
|
|
onInput: (e)=>props.updateMask((mask)=>{
|
|
mask.name = e.currentTarget.value;
|
|
})
|
|
})
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .ListItem */ .HC, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.HideContext.Title,
|
|
subTitle: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.HideContext.SubTitle,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
|
|
type: "checkbox",
|
|
checked: props.mask.hideContext,
|
|
onChange: (e)=>{
|
|
props.updateMask((mask)=>{
|
|
mask.hideContext = e.currentTarget.checked;
|
|
});
|
|
}
|
|
})
|
|
}),
|
|
!props.shouldSyncFromGlobal ? /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .ListItem */ .HC, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Share.Title,
|
|
subTitle: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Share.SubTitle,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_copy_svg__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Share.Action,
|
|
onClick: copyMaskLink
|
|
})
|
|
}) : null,
|
|
props.shouldSyncFromGlobal ? /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .ListItem */ .HC, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Sync.Title,
|
|
subTitle: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Sync.SubTitle,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
|
|
type: "checkbox",
|
|
checked: props.mask.syncGlobalConfig,
|
|
onChange: async (e)=>{
|
|
const checked = e.currentTarget.checked;
|
|
if (checked && await (0,_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .showConfirm */ .i0)(_locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Config.Sync.Confirm)) {
|
|
props.updateMask((mask)=>{
|
|
mask.syncGlobalConfig = checked;
|
|
mask.modelConfig = {
|
|
...globalConfig.modelConfig
|
|
};
|
|
});
|
|
} else if (!checked) {
|
|
props.updateMask((mask)=>{
|
|
mask.syncGlobalConfig = checked;
|
|
});
|
|
}
|
|
}
|
|
})
|
|
}) : null
|
|
]
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .List */ .aV, {
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_model_config__WEBPACK_IMPORTED_MODULE_20__/* .ModelConfigList */ .j, {
|
|
modelConfig: {
|
|
...props.mask.modelConfig
|
|
},
|
|
updateConfig: updateConfig
|
|
}),
|
|
props.extraListItems
|
|
]
|
|
})
|
|
]
|
|
});
|
|
}
|
|
function ContextPromptItem(props) {
|
|
const [focusingInput, setFocusingInput] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)(false);
|
|
return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-prompt-row"]),
|
|
children: [
|
|
!focusingInput && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-drag"]),
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_drag_svg__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {})
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .Select */ .Ph, {
|
|
value: props.prompt.role,
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-role"]),
|
|
onChange: (e)=>props.update({
|
|
...props.prompt,
|
|
role: e.target.value
|
|
}),
|
|
children: _client_api__WEBPACK_IMPORTED_MODULE_14__/* .ROLES */ .K$.map((r)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("option", {
|
|
value: r,
|
|
children: r
|
|
}, r))
|
|
})
|
|
]
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .Input */ .II, {
|
|
value: (0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .getMessageTextContent */ .YK)(props.prompt),
|
|
type: "text",
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-content"]),
|
|
rows: focusingInput ? 5 : 1,
|
|
onFocus: ()=>setFocusingInput(true),
|
|
onBlur: ()=>{
|
|
setFocusingInput(false);
|
|
// If the selection is not removed when the user loses focus, some
|
|
// extensions like "Translate" will always display a floating bar
|
|
window?.getSelection()?.removeAllRanges();
|
|
},
|
|
onInput: (e)=>props.update({
|
|
...props.prompt,
|
|
content: e.currentTarget.value
|
|
})
|
|
}),
|
|
!focusingInput && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_delete_svg__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {}),
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-delete-button"]),
|
|
onClick: ()=>props.remove(),
|
|
bordered: true
|
|
})
|
|
]
|
|
});
|
|
}
|
|
function ContextPrompts(props) {
|
|
const context = props.context;
|
|
const addContextPrompt = (prompt, i)=>{
|
|
props.updateContext((context)=>context.splice(i, 0, prompt));
|
|
};
|
|
const removeContextPrompt = (i)=>{
|
|
props.updateContext((context)=>context.splice(i, 1));
|
|
};
|
|
const updateContextPrompt = (i, prompt)=>{
|
|
props.updateContext((context)=>{
|
|
const images = (0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .getMessageImages */ .Bs)(context[i]);
|
|
context[i] = prompt;
|
|
if (images.length > 0) {
|
|
const text = (0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .getMessageTextContent */ .YK)(context[i]);
|
|
const newContext = [
|
|
{
|
|
type: "text",
|
|
text
|
|
}
|
|
];
|
|
for (const img of images){
|
|
newContext.push({
|
|
type: "image_url",
|
|
image_url: {
|
|
url: img
|
|
}
|
|
});
|
|
}
|
|
context[i].content = newContext;
|
|
}
|
|
});
|
|
};
|
|
const onDragEnd = (result)=>{
|
|
if (!result.destination) {
|
|
return;
|
|
}
|
|
const newContext = reorder(context, result.source.index, result.destination.index);
|
|
props.updateContext((context)=>{
|
|
context.splice(0, context.length, ...newContext);
|
|
});
|
|
};
|
|
return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
|
|
children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-prompt"]),
|
|
style: {
|
|
marginBottom: 20
|
|
},
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_hello_pangea_dnd__WEBPACK_IMPORTED_MODULE_24__/* .DragDropContext */ .Z5, {
|
|
onDragEnd: onDragEnd,
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_hello_pangea_dnd__WEBPACK_IMPORTED_MODULE_24__/* .Droppable */ .bK, {
|
|
droppableId: "context-prompt-list",
|
|
children: (provided)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
ref: provided.innerRef,
|
|
...provided.droppableProps,
|
|
children: [
|
|
context.map((c, i)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_hello_pangea_dnd__WEBPACK_IMPORTED_MODULE_24__/* .Draggable */ ._l, {
|
|
draggableId: c.id || i.toString(),
|
|
index: i,
|
|
children: (provided)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
ref: provided.innerRef,
|
|
...provided.draggableProps,
|
|
...provided.dragHandleProps,
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(ContextPromptItem, {
|
|
index: i,
|
|
prompt: c,
|
|
update: (prompt)=>updateContextPrompt(i, prompt),
|
|
remove: ()=>removeContextPrompt(i)
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-prompt-insert"]),
|
|
onClick: ()=>{
|
|
addContextPrompt((0,_store__WEBPACK_IMPORTED_MODULE_13__/* .createMessage */ .tn)({
|
|
role: "user",
|
|
content: "",
|
|
date: new Date().toLocaleString()
|
|
}), i + 1);
|
|
},
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_add_svg__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {})
|
|
})
|
|
]
|
|
})
|
|
}, c.id)),
|
|
provided.placeholder
|
|
]
|
|
})
|
|
})
|
|
}),
|
|
props.context.length === 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-prompt-row"]),
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_add_svg__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Context.Add,
|
|
bordered: true,
|
|
className: (_chat_module_scss__WEBPACK_IMPORTED_MODULE_23___default()["context-prompt-button"]),
|
|
onClick: ()=>addContextPrompt((0,_store__WEBPACK_IMPORTED_MODULE_13__/* .createMessage */ .tn)({
|
|
role: "user",
|
|
content: "",
|
|
date: ""
|
|
}), props.context.length)
|
|
})
|
|
})
|
|
]
|
|
})
|
|
});
|
|
}
|
|
function MaskPage() {
|
|
const navigate = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_25__.useNavigate)();
|
|
const maskStore = (0,_store_mask__WEBPACK_IMPORTED_MODULE_12__/* .useMaskStore */ .Zy)();
|
|
const chatStore = (0,_store__WEBPACK_IMPORTED_MODULE_13__/* .useChatStore */ .aK)();
|
|
const [filterLang, setFilterLang] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)();
|
|
const allMasks = maskStore.getAll().filter((m)=>!filterLang || m.lang === filterLang);
|
|
const [searchMasks, setSearchMasks] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)([]);
|
|
const [searchText, setSearchText] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)("");
|
|
const masks = searchText.length > 0 ? searchMasks : allMasks;
|
|
// refactored already, now it accurate
|
|
const onSearch = (text)=>{
|
|
setSearchText(text);
|
|
if (text.length > 0) {
|
|
const result = allMasks.filter((m)=>m.name.toLowerCase().includes(text.toLowerCase()));
|
|
setSearchMasks(result);
|
|
} else {
|
|
setSearchMasks(allMasks);
|
|
}
|
|
};
|
|
const [editingMaskId, setEditingMaskId] = (0,react__WEBPACK_IMPORTED_MODULE_18__.useState)();
|
|
const editingMask = maskStore.get(editingMaskId) ?? _masks__WEBPACK_IMPORTED_MODULE_22__/* .BUILTIN_MASK_STORE */ .$n.get(editingMaskId);
|
|
const closeMaskModal = ()=>setEditingMaskId(undefined);
|
|
const downloadAll = ()=>{
|
|
(0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .downloadAs */ .CP)(JSON.stringify(masks.filter((v)=>!v.builtin)), _constant__WEBPACK_IMPORTED_MODULE_21__/* .FileName */ .dJ.Masks);
|
|
};
|
|
const importFromFile = ()=>{
|
|
(0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .readFromFile */ .j2)().then((content)=>{
|
|
try {
|
|
const importMasks = JSON.parse(content);
|
|
if (Array.isArray(importMasks)) {
|
|
for (const mask of importMasks){
|
|
if (mask.name) {
|
|
maskStore.create(mask);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
//if the content is a single mask.
|
|
if (importMasks.name) {
|
|
maskStore.create(importMasks);
|
|
}
|
|
} catch {}
|
|
});
|
|
};
|
|
return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_error__WEBPACK_IMPORTED_MODULE_2__/* .ErrorBoundary */ .S, {
|
|
children: [
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-page"]),
|
|
children: [
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: "window-header",
|
|
children: [
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: "window-header-title",
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "window-header-main-title",
|
|
children: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Page.Title
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "window-header-submai-title",
|
|
children: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Page.SubTitle(allMasks.length)
|
|
})
|
|
]
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: "window-actions",
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "window-action-button",
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_download_svg__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {}),
|
|
bordered: true,
|
|
onClick: downloadAll,
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.UI.Export
|
|
})
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "window-action-button",
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_upload_svg__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.UI.Import,
|
|
bordered: true,
|
|
onClick: ()=>importFromFile()
|
|
})
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "window-action-button",
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_close_svg__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {}),
|
|
bordered: true,
|
|
onClick: ()=>navigate(-1)
|
|
})
|
|
})
|
|
]
|
|
})
|
|
]
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-page-body"]),
|
|
children: [
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-filter"]),
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
|
|
type: "text",
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["search-bar"]),
|
|
placeholder: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Page.Search,
|
|
autoFocus: true,
|
|
onInput: (e)=>onSearch(e.currentTarget.value)
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .Select */ .Ph, {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-filter-lang"]),
|
|
value: filterLang ?? _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Settings.Lang.All,
|
|
onChange: (e)=>{
|
|
const value = e.currentTarget.value;
|
|
if (value === _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Settings.Lang.All) {
|
|
setFilterLang(undefined);
|
|
} else {
|
|
setFilterLang(value);
|
|
}
|
|
},
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("option", {
|
|
value: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Settings.Lang.All,
|
|
children: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Settings.Lang.All
|
|
}, "all"),
|
|
_locales__WEBPACK_IMPORTED_MODULE_17__/* .AllLangs */ .DC.map((lang)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("option", {
|
|
value: lang,
|
|
children: _locales__WEBPACK_IMPORTED_MODULE_17__/* .ALL_LANG_OPTIONS */ .nW[lang]
|
|
}, lang))
|
|
]
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-create"]),
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_add_svg__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Page.Create,
|
|
bordered: true,
|
|
onClick: ()=>{
|
|
const createdMask = maskStore.create();
|
|
setEditingMaskId(createdMask.id);
|
|
}
|
|
})
|
|
]
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
children: masks.map((m)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-item"]),
|
|
children: [
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-header"]),
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-icon"]),
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(MaskAvatar, {
|
|
avatar: m.avatar,
|
|
model: m.modelConfig.model
|
|
})
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-title"]),
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-name"]),
|
|
children: m.name
|
|
}),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-info"]) + " one-line",
|
|
children: `${_locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.Info(m.context.length)} / ${_locales__WEBPACK_IMPORTED_MODULE_17__/* .ALL_LANG_OPTIONS */ .nW[m.lang]} / ${m.modelConfig.model}`
|
|
})
|
|
]
|
|
})
|
|
]
|
|
}),
|
|
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
className: (_mask_module_scss__WEBPACK_IMPORTED_MODULE_26___default()["mask-actions"]),
|
|
children: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_add_svg__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.Chat,
|
|
onClick: ()=>{
|
|
chatStore.newSession(m);
|
|
navigate(_constant__WEBPACK_IMPORTED_MODULE_21__/* .Path */ .y$.Chat);
|
|
}
|
|
}),
|
|
m.builtin ? /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_eye_svg__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.View,
|
|
onClick: ()=>setEditingMaskId(m.id)
|
|
}) : /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_edit_svg__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.Edit,
|
|
onClick: ()=>setEditingMaskId(m.id)
|
|
}),
|
|
!m.builtin && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_delete_svg__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.Delete,
|
|
onClick: async ()=>{
|
|
if (await (0,_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .showConfirm */ .i0)(_locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.Item.DeleteConfirm)) {
|
|
maskStore.delete(m.id);
|
|
}
|
|
}
|
|
})
|
|
]
|
|
})
|
|
]
|
|
}, m.id))
|
|
})
|
|
]
|
|
})
|
|
]
|
|
}),
|
|
editingMask && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
className: "modal-mask",
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ui_lib__WEBPACK_IMPORTED_MODULE_15__/* .Modal */ .u_, {
|
|
title: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.EditModal.Title(editingMask?.builtin),
|
|
onClose: closeMaskModal,
|
|
actions: [
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_download_svg__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {}),
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.EditModal.Download,
|
|
bordered: true,
|
|
onClick: ()=>(0,_utils__WEBPACK_IMPORTED_MODULE_19__/* .downloadAs */ .CP)(JSON.stringify(editingMask), `${editingMask.name}.json`)
|
|
}, "export"),
|
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_button__WEBPACK_IMPORTED_MODULE_1__/* .IconButton */ .h, {
|
|
icon: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_icons_copy_svg__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {}),
|
|
bordered: true,
|
|
text: _locales__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .ZP.Mask.EditModal.Clone,
|
|
onClick: ()=>{
|
|
navigate(_constant__WEBPACK_IMPORTED_MODULE_21__/* .Path */ .y$.Masks);
|
|
maskStore.create(editingMask);
|
|
setEditingMaskId(undefined);
|
|
}
|
|
}, "copy")
|
|
],
|
|
children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(MaskConfig, {
|
|
mask: editingMask,
|
|
updateMask: (updater)=>maskStore.updateMask(editingMaskId, updater),
|
|
readonly: editingMask.builtin
|
|
})
|
|
})
|
|
})
|
|
]
|
|
});
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 48563:
|
|
/***/ ((module) => {
|
|
|
|
// Exports
|
|
module.exports = {
|
|
"attach-images": "chat_attach-images__UtJds",
|
|
"attach-image": "chat_attach-image__5zxeG",
|
|
"attach-image-mask": "chat_attach-image-mask__cOlWM",
|
|
"delete-image": "chat_delete-image__IBtAc",
|
|
"chat-input-actions": "chat_chat-input-actions__mwYC_",
|
|
"chat-input-action": "chat_chat-input-action__DMW7Y",
|
|
"slide-in": "chat_slide-in__nvZgA",
|
|
"text": "chat_text__TkPfN",
|
|
"icon": "chat_icon__Ly3TN",
|
|
"prompt-toast": "chat_prompt-toast___VCUf",
|
|
"prompt-toast-inner": "chat_prompt-toast-inner__f17E6",
|
|
"slide-in-from-top": "chat_slide-in-from-top__Q0KCt",
|
|
"prompt-toast-content": "chat_prompt-toast-content__9sp_w",
|
|
"section-title": "chat_section-title__BiPko",
|
|
"section-title-action": "chat_section-title-action__bmruw",
|
|
"context-prompt": "chat_context-prompt__cbach",
|
|
"context-prompt-insert": "chat_context-prompt-insert__UmNJi",
|
|
"context-prompt-row": "chat_context-prompt-row__3Kbix",
|
|
"context-drag": "chat_context-drag__BX7lh",
|
|
"context-role": "chat_context-role__7_IR9",
|
|
"context-content": "chat_context-content__sNXUy",
|
|
"context-delete-button": "chat_context-delete-button__C_BmS",
|
|
"context-prompt-button": "chat_context-prompt-button__AoPsw",
|
|
"memory-prompt": "chat_memory-prompt__vOzcn",
|
|
"memory-prompt-content": "chat_memory-prompt-content__kUVKj",
|
|
"clear-context": "chat_clear-context__ke8Iw",
|
|
"clear-context-tips": "chat_clear-context-tips__L1A_i",
|
|
"clear-context-revert-btn": "chat_clear-context-revert-btn___Wna1",
|
|
"chat": "chat_chat__ZebHg",
|
|
"chat-body": "chat_chat-body__QFv5x",
|
|
"chat-body-main-title": "chat_chat-body-main-title__jUL6h",
|
|
"chat-body-title": "chat_chat-body-title__d2ItC",
|
|
"chat-message": "chat_chat-message__dg8rL",
|
|
"chat-message-user": "chat_chat-message-user__ZtTEj",
|
|
"chat-message-header": "chat_chat-message-header__Dny_K",
|
|
"chat-message-actions": "chat_chat-message-actions__H90hg",
|
|
"chat-message-container": "chat_chat-message-container__O_X8_",
|
|
"chat-message-edit": "chat_chat-message-edit__h58of",
|
|
"chat-message-avatar": "chat_chat-message-avatar__3QeMq",
|
|
"chat-message-status": "chat_chat-message-status__zc9Ad",
|
|
"chat-message-item": "chat_chat-message-item__dKqMl",
|
|
"chat-message-item-image": "chat_chat-message-item-image__2jbb0",
|
|
"chat-message-item-images": "chat_chat-message-item-images__EtEM4",
|
|
"chat-message-item-image-multi": "chat_chat-message-item-image-multi__DOIxY",
|
|
"chat-message-action-date": "chat_chat-message-action-date__RsXTn",
|
|
"chat-input-panel": "chat_chat-input-panel__rO72m",
|
|
"prompt-hints": "chat_prompt-hints__VT_Oi",
|
|
"prompt-hint": "chat_prompt-hint__2616t",
|
|
"hint-title": "chat_hint-title__E53ZK",
|
|
"hint-content": "chat_hint-content__y2yj4",
|
|
"prompt-hint-selected": "chat_prompt-hint-selected__o3vYi",
|
|
"chat-input-panel-inner": "chat_chat-input-panel-inner___IQHi",
|
|
"chat-input-panel-inner-attach": "chat_chat-input-panel-inner-attach__mZheu",
|
|
"chat-input": "chat_chat-input__PQ_oF",
|
|
"chat-input-send": "chat_chat-input-send__GFQZo"
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 95073:
|
|
/***/ ((module) => {
|
|
|
|
// Exports
|
|
module.exports = {
|
|
"mask-page": "mask_mask-page__ou14k",
|
|
"mask-page-body": "mask_mask-page-body__kBXsJ",
|
|
"mask-filter": "mask_mask-filter__OdpU3",
|
|
"slide-in": "mask_slide-in__unpXH",
|
|
"search-bar": "mask_search-bar__7_Msn",
|
|
"mask-filter-lang": "mask_mask-filter-lang__mRxyv",
|
|
"mask-create": "mask_mask-create__BjAzk",
|
|
"mask-item": "mask_mask-item__dinia",
|
|
"mask-header": "mask_mask-header__RXJXI",
|
|
"mask-icon": "mask_mask-icon__wO1ER",
|
|
"mask-title": "mask_mask-title__IDEbR",
|
|
"mask-name": "mask_mask-name__77Rjh",
|
|
"mask-info": "mask_mask-info__2gtiu",
|
|
"mask-actions": "mask_mask-actions__rsWn_",
|
|
"slide-in-from-top": "mask_slide-in-from-top__DOEYB"
|
|
};
|
|
|
|
|
|
/***/ })
|
|
|
|
};
|
|
; |