@nine-lab/nine-mu 0.1.172 → 0.1.174
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/css/nine-mu.css +217 -0
- package/dist/nine-mu.js +36 -37
- package/dist/nine-mu.js.map +1 -1
- package/dist/nine-mu.umd.js +1 -1
- package/dist/nine-mu.umd.js.map +1 -1
- package/package.json +1 -1
- package/public/css/nine-mu.css +217 -0
- package/src/components/ChatMessage.js +21 -22
- package/src/components/NineChat.js +4 -5
package/dist/css/nine-mu.css
CHANGED
|
@@ -979,4 +979,221 @@
|
|
|
979
979
|
box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
|
|
980
980
|
}
|
|
981
981
|
}
|
|
982
|
+
|
|
983
|
+
nine-chat-ing {
|
|
984
|
+
display: flex;
|
|
985
|
+
justify-content: flex-start;
|
|
986
|
+
padding: 0;
|
|
987
|
+
|
|
988
|
+
.chat-message {
|
|
989
|
+
padding: 0px 8px;
|
|
990
|
+
color: #999;
|
|
991
|
+
align-self: flex-start;
|
|
992
|
+
text-align: left;
|
|
993
|
+
position: relative;
|
|
994
|
+
font-size: 32px;
|
|
995
|
+
font-weight: bold;
|
|
996
|
+
}
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
nine-chat-ai {
|
|
1000
|
+
display: flex;
|
|
1001
|
+
justify-content: flex-start;
|
|
1002
|
+
padding: 5px;
|
|
1003
|
+
flex-direction: column;
|
|
1004
|
+
|
|
1005
|
+
.chat-message {
|
|
1006
|
+
max-width: 70%;
|
|
1007
|
+
border-radius: 8px;
|
|
1008
|
+
font-size: 14px;
|
|
1009
|
+
background-color: #fff;
|
|
1010
|
+
color: black;
|
|
1011
|
+
align-self: flex-start;
|
|
1012
|
+
text-align: left;
|
|
1013
|
+
position: relative;
|
|
1014
|
+
box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
|
|
1015
|
+
text-overflow: ellipsis;
|
|
1016
|
+
padding: 8px 16px;
|
|
1017
|
+
display: flex;
|
|
1018
|
+
align-items: center;
|
|
1019
|
+
|
|
1020
|
+
div.message {
|
|
1021
|
+
display: -webkit-box;
|
|
1022
|
+
-webkit-line-clamp: 3;
|
|
1023
|
+
-webkit-box-orient: vertical;
|
|
1024
|
+
overflow: hidden;
|
|
1025
|
+
padding: 0;
|
|
1026
|
+
flex-grow: 1;
|
|
1027
|
+
/* 줄바꿈 강제 적용 */
|
|
1028
|
+
/**word-wrap: break-word;*/ /* 긴 단어를 줄바꿈 */
|
|
1029
|
+
overflow-wrap: anywhere; /* 텍스트 길이에 따라 자동 줄바꿈 */
|
|
1030
|
+
white-space: normal; /* 공백 처리 */
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
span.more {
|
|
1034
|
+
right: 4px;
|
|
1035
|
+
bottom: 0px;
|
|
1036
|
+
font-size: 9px;
|
|
1037
|
+
font-weight: 700;
|
|
1038
|
+
|
|
1039
|
+
a {
|
|
1040
|
+
position: relative;
|
|
1041
|
+
color: green;
|
|
1042
|
+
text-decoration: none;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
a::after {
|
|
1046
|
+
content: "";
|
|
1047
|
+
position: absolute;
|
|
1048
|
+
left: 0;
|
|
1049
|
+
bottom: -2px;
|
|
1050
|
+
width: 100%;
|
|
1051
|
+
height: 2px;
|
|
1052
|
+
background-color: green;
|
|
1053
|
+
transform: scaleX(0);
|
|
1054
|
+
transition: transform 0.3s ease-in-out;
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
a:hover::after {
|
|
1058
|
+
transform: scaleX(1);
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
.grid {
|
|
1064
|
+
margin-top: 8px;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
.chat-menu {
|
|
1068
|
+
display: flex;
|
|
1069
|
+
justify-content: space-between; /* 좌우 정렬 */
|
|
1070
|
+
align-items: center; /* 세로 중앙 정렬 */
|
|
1071
|
+
width: 100%;
|
|
1072
|
+
margin-top: 2px;
|
|
1073
|
+
|
|
1074
|
+
.left-menu{
|
|
1075
|
+
display: flex;
|
|
1076
|
+
gap: 4px;
|
|
1077
|
+
|
|
1078
|
+
.filter.disabled, .database.disabled {
|
|
1079
|
+
pointer-events: none;
|
|
1080
|
+
color: #ccc;
|
|
1081
|
+
}
|
|
1082
|
+
|
|
1083
|
+
.filter, .database, .excel, .maximize {
|
|
1084
|
+
margin-left: 0;
|
|
1085
|
+
cursor: pointer;
|
|
1086
|
+
color: #999;
|
|
1087
|
+
width: 16px;
|
|
1088
|
+
height: 16px;
|
|
1089
|
+
background-repeat: no-repeat;
|
|
1090
|
+
background-position: center;
|
|
1091
|
+
background-size: auto;
|
|
1092
|
+
}
|
|
1093
|
+
|
|
1094
|
+
.filter svg {
|
|
1095
|
+
color: #999;
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
.filter:hover, .database:hover, .excel:hover, .maximize:hover {
|
|
1099
|
+
color: green;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
.filter {
|
|
1103
|
+
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="gray" viewBox="0 0 16 16"><path d="M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5zm1 .5v1.308l4.372 4.858A.5.5 0 0 1 7 8.5v5.306l2-.666V8.5a.5.5 0 0 1 .128-.334L13.5 3.308V2z"/></svg>');
|
|
1104
|
+
}
|
|
1105
|
+
.database {
|
|
1106
|
+
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="gray" viewBox="0 0 16 16"><path d="M4.318 2.687C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4c0-.374.356-.875 1.318-1.313M13 5.698V7c0 .374-.356.875-1.318 1.313C10.766 8.729 9.464 9 8 9s-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777A5 5 0 0 0 13 5.698M14 4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13zm-1 4.698V10c0 .374-.356.875-1.318 1.313C10.766 11.729 9.464 12 8 12s-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777A5 5 0 0 0 13 8.698m0 3V13c0 .374-.356.875-1.318 1.313C10.766 14.729 9.464 15 8 15s-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13s3.022-.289 4.096-.777c.324-.147.633-.323.904-.525"/></svg>');
|
|
1107
|
+
}
|
|
1108
|
+
.excel {
|
|
1109
|
+
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="gray" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM6.472 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .254.384q.106.073.25.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.152-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.527-.422.338-.15.777-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211a1 1 0 0 1 .375.358q.135.222.135.56 0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m-2.945-3.358h-.893L1.81 13.37h-.036l-.832-1.438h-.93l1.227 1.983L0 15.931h.861l.853-1.415h.035l.85 1.415h.908L2.253 13.94zm2.727 3.325H4.557v-3.325h-.79v4h2.487z"/></svg>');
|
|
1110
|
+
}
|
|
1111
|
+
.maximize {
|
|
1112
|
+
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="gray" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344 0a.5.5 0 0 1 .707 0l4.096 4.096V11.5a.5.5 0 1 1 1 0v3.975a.5.5 0 0 1-.5.5H11.5a.5.5 0 0 1 0-1h2.768l-4.096-4.096a.5.5 0 0 1 0-.707m0-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707m-4.344 0a.5.5 0 0 1-.707 0L1.025 1.732V4.5a.5.5 0 0 1-1 0V.525a.5.5 0 0 1 .5-.5H4.5a.5.5 0 0 1 0 1H1.732l4.096 4.096a.5.5 0 0 1 0 .707"/></svg>');
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
}
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
nine-chat-progress {
|
|
1119
|
+
display: flex;
|
|
1120
|
+
justify-content: flex-start;
|
|
1121
|
+
padding: 5px;
|
|
1122
|
+
flex-direction: column;
|
|
1123
|
+
|
|
1124
|
+
.chat-message.progress-message {
|
|
1125
|
+
max-width: 80%;
|
|
1126
|
+
border-radius: 8px;
|
|
1127
|
+
font-size: 14px;
|
|
1128
|
+
background-color: #fff;
|
|
1129
|
+
color: black;
|
|
1130
|
+
align-self: flex-start;
|
|
1131
|
+
text-align: left;
|
|
1132
|
+
position: relative;
|
|
1133
|
+
box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
|
|
1134
|
+
padding: 8px 16px; /* 버블 자체의 패딩 */
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1137
|
+
.progress-list {
|
|
1138
|
+
list-style: none;
|
|
1139
|
+
padding: 0;
|
|
1140
|
+
margin: 0;
|
|
1141
|
+
--font-size: 12px;
|
|
1142
|
+
}
|
|
1143
|
+
|
|
1144
|
+
.progress-item {
|
|
1145
|
+
display: flex;
|
|
1146
|
+
align-items: center; /* 번호, 텍스트, 점을 세로 중앙 정렬 */
|
|
1147
|
+
margin-bottom: 5px;
|
|
1148
|
+
color: #999; /* 기본 텍스트 색상 */
|
|
1149
|
+
font-size: 1em; /* 부모 폰트 사이즈(14px)를 따르도록 */
|
|
1150
|
+
line-height: 1.4; /* 가독성을 위해 줄 간격 추가 */
|
|
1151
|
+
}
|
|
1152
|
+
|
|
1153
|
+
.progress-item:last-child {
|
|
1154
|
+
margin-bottom: 0;
|
|
1155
|
+
}
|
|
1156
|
+
|
|
1157
|
+
/* 번호 스타일 */
|
|
1158
|
+
.progress-item .step-number {
|
|
1159
|
+
--font-weight: bold;
|
|
1160
|
+
margin-right: 5px; /* 번호와 텍스트 사이 간격 */
|
|
1161
|
+
color: #999; /* 번호 색상 */
|
|
1162
|
+
}
|
|
1163
|
+
|
|
1164
|
+
/* 텍스트 내용 */
|
|
1165
|
+
.progress-item .text {
|
|
1166
|
+
--flex-grow: 1; /* 텍스트가 공간을 채우도록 */
|
|
1167
|
+
white-space: nowrap; /* 텍스트가 줄바꿈되지 않도록 */
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
/* 진행 중 점 애니메이션 */
|
|
1171
|
+
.progress-item .animated-dots {
|
|
1172
|
+
width: 20px; /* 점 공간 확보 */
|
|
1173
|
+
text-align: left; /* 점이 왼쪽에서 시작되도록 */
|
|
1174
|
+
font-weight: bold;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1177
|
+
/* completed 상태 */
|
|
1178
|
+
.progress-item.completed {
|
|
1179
|
+
color: #333; /* 완료된 텍스트 색상 */
|
|
1180
|
+
--font-weight: bold; /* 완료 시 굵게 */
|
|
1181
|
+
}
|
|
1182
|
+
.progress-item.completed .animated-dots::after {
|
|
1183
|
+
content: '✓'; /* 체크마크 */
|
|
1184
|
+
margin-left: 5px; /* 체크마크와 텍스트 사이 간격 */
|
|
1185
|
+
color: #28a745;
|
|
1186
|
+
font-size: 1.0em; /* 체크마크 크기 */
|
|
1187
|
+
font-weight: bold;
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
.progress-item.completed .step-number {
|
|
1191
|
+
color: #333; /* 번호 색상 */
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1194
|
+
/* pending 상태에만 애니메이션 점 표시 */
|
|
1195
|
+
.progress-item.pending .animated-dots {
|
|
1196
|
+
/* JS로 내용이 채워지므로 별도의 CSS 애니메이션은 필요 없음 */
|
|
1197
|
+
}
|
|
1198
|
+
}
|
|
982
1199
|
}
|
package/dist/nine-mu.js
CHANGED
|
@@ -9,7 +9,7 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
|
|
|
9
9
|
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
10
10
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
11
11
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
12
|
-
var _mcpClient, _onAction, _onStatus, _onMessage, _owner, _NineChatManager_instances, connect_fn, fetchRoutes_fn, pushMessage_fn, updateStatus_fn, callTool_fn, _getSourcePath, _service, _routes, _diffPopup, _packageName, _routesPath, _connectorUrl, _manager, _$nineChatMessage, _NineChat_instances, initInteractions_fn, initActions_fn, render_fn, _makeMenuHandler, _sourceGenHandler, _showDiff, _asisEditorView, _tobeEditorView, _asisEditorEl, _tobeEditorEl, _languageCompartment, _isScrollSyncActive, _initCodeMirror, _setupScrollSync, _applyDiffDecorations, _dialog, _diffView, _asisBackup, _host, _NineDiffPopup_instances, render_fn2, handleConfirm_fn, handleCancel_fn, _message, _data, _unique, _init, _message2, _init2, _progressData, _progressElements, _animationIntervals,
|
|
12
|
+
var _mcpClient, _onAction, _onStatus, _onMessage, _owner, _NineChatManager_instances, connect_fn, fetchRoutes_fn, pushMessage_fn, updateStatus_fn, callTool_fn, _getSourcePath, _service, _routes, _diffPopup, _packageName, _routesPath, _connectorUrl, _manager, _$nineChatMessage, _NineChat_instances, initInteractions_fn, initActions_fn, render_fn, _makeMenuHandler, _sourceGenHandler, _showDiff, _asisEditorView, _tobeEditorView, _asisEditorEl, _tobeEditorEl, _languageCompartment, _isScrollSyncActive, _initCodeMirror, _setupScrollSync, _applyDiffDecorations, _dialog, _diffView, _asisBackup, _host, _NineDiffPopup_instances, render_fn2, handleConfirm_fn, handleCancel_fn, _message, _data, _unique, _init, _message2, _init2, _progressData, _progressElements, _animationIntervals, _ProgressMessage_instances, updateCurrentActiveProgress_fn, renderProgress_fn, updateProgressItemVisuals_fn, startAnimation_fn, updateProgressItem_fn, _renderer, _init3;
|
|
13
13
|
import { trace as trace$1, api, nine } from "@nine-lab/nine-util";
|
|
14
14
|
class Trace extends trace$1.constructor {
|
|
15
15
|
constructor() {
|
|
@@ -13805,8 +13805,8 @@ initActions_fn = function() {
|
|
|
13805
13805
|
target.removeAttribute("disabled");
|
|
13806
13806
|
target.focus();
|
|
13807
13807
|
if (err) {
|
|
13808
|
-
console.error(
|
|
13809
|
-
this.
|
|
13808
|
+
console.error(err);
|
|
13809
|
+
__privateGet(this, _$nineChatMessage).add("ai", err.message || "알 수 없는 오류가 발생했습니다. 다시 시도해주세요.");
|
|
13810
13810
|
} else {
|
|
13811
13811
|
console.log(result);
|
|
13812
13812
|
__privateGet(this, _$nineChatMessage).add("ai", result.message);
|
|
@@ -13819,7 +13819,7 @@ render_fn = function() {
|
|
|
13819
13819
|
const customImport = this.getAttribute("css-path") ? `@import "${this.getAttribute("css-path")}";` : "";
|
|
13820
13820
|
this.shadowRoot.innerHTML = `
|
|
13821
13821
|
<style>
|
|
13822
|
-
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.
|
|
13822
|
+
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.173"}/dist/css/nine-mu.css";
|
|
13823
13823
|
${customImport}
|
|
13824
13824
|
</style>
|
|
13825
13825
|
<div class="wrapper">
|
|
@@ -40038,7 +40038,7 @@ class NineDiff extends HTMLElement {
|
|
|
40038
40038
|
const customImport = this.getAttribute("css-path") ? `@import "${this.getAttribute("css-path")}";` : "";
|
|
40039
40039
|
this.shadowRoot.innerHTML = `
|
|
40040
40040
|
<style>
|
|
40041
|
-
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.
|
|
40041
|
+
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.173"}/dist/css/nine-mu.css";
|
|
40042
40042
|
${customImport}
|
|
40043
40043
|
</style>
|
|
40044
40044
|
|
|
@@ -40148,7 +40148,7 @@ render_fn2 = function() {
|
|
|
40148
40148
|
const customImport = this.getAttribute("css-path") ? `@import "${this.getAttribute("css-path")}";` : "";
|
|
40149
40149
|
this.shadowRoot.innerHTML = `
|
|
40150
40150
|
<style>
|
|
40151
|
-
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.
|
|
40151
|
+
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.173"}/dist/css/nine-mu.css";
|
|
40152
40152
|
${customImport}
|
|
40153
40153
|
</style>
|
|
40154
40154
|
|
|
@@ -40186,7 +40186,7 @@ handleCancel_fn = function() {
|
|
|
40186
40186
|
__privateGet(this, _dialog).close();
|
|
40187
40187
|
};
|
|
40188
40188
|
customElements.define("nine-diff-popup", NineDiffPopup);
|
|
40189
|
-
class
|
|
40189
|
+
class AiMessage extends HTMLElement {
|
|
40190
40190
|
constructor() {
|
|
40191
40191
|
super();
|
|
40192
40192
|
__privateAdd(this, _message);
|
|
@@ -40307,7 +40307,7 @@ _message = new WeakMap();
|
|
|
40307
40307
|
_data = new WeakMap();
|
|
40308
40308
|
_unique = new WeakMap();
|
|
40309
40309
|
_init = new WeakMap();
|
|
40310
|
-
class
|
|
40310
|
+
class IngMessage extends HTMLElement {
|
|
40311
40311
|
constructor() {
|
|
40312
40312
|
super();
|
|
40313
40313
|
__privateAdd(this, _message2);
|
|
@@ -40344,17 +40344,16 @@ class MyMessage extends HTMLElement {
|
|
|
40344
40344
|
`;
|
|
40345
40345
|
}
|
|
40346
40346
|
}
|
|
40347
|
-
class
|
|
40347
|
+
class ProgressMessage extends HTMLElement {
|
|
40348
40348
|
constructor() {
|
|
40349
40349
|
super();
|
|
40350
|
-
__privateAdd(this,
|
|
40350
|
+
__privateAdd(this, _ProgressMessage_instances);
|
|
40351
40351
|
__privateAdd(this, _progressData, []);
|
|
40352
40352
|
__privateAdd(this, _progressElements, /* @__PURE__ */ new Map());
|
|
40353
40353
|
__privateAdd(this, _animationIntervals, /* @__PURE__ */ new Map());
|
|
40354
40354
|
}
|
|
40355
40355
|
connectedCallback() {
|
|
40356
40356
|
this.innerHTML = `
|
|
40357
|
-
|
|
40358
40357
|
<div class="chat-message progress-message">
|
|
40359
40358
|
<ul class="progress-list"></ul>
|
|
40360
40359
|
</div>
|
|
@@ -40371,8 +40370,8 @@ class aiProgressMessage extends HTMLElement {
|
|
|
40371
40370
|
originalMessage: item.message
|
|
40372
40371
|
})));
|
|
40373
40372
|
setTimeout(() => {
|
|
40374
|
-
__privateMethod(this,
|
|
40375
|
-
__privateMethod(this,
|
|
40373
|
+
__privateMethod(this, _ProgressMessage_instances, renderProgress_fn).call(this);
|
|
40374
|
+
__privateMethod(this, _ProgressMessage_instances, updateCurrentActiveProgress_fn).call(this);
|
|
40376
40375
|
}, 300);
|
|
40377
40376
|
}
|
|
40378
40377
|
/**
|
|
@@ -40385,8 +40384,8 @@ class aiProgressMessage extends HTMLElement {
|
|
|
40385
40384
|
if (itemIndex > -1) {
|
|
40386
40385
|
if (__privateGet(this, _progressData)[itemIndex].status !== status) {
|
|
40387
40386
|
__privateGet(this, _progressData)[itemIndex].status = status;
|
|
40388
|
-
__privateMethod(this,
|
|
40389
|
-
__privateMethod(this,
|
|
40387
|
+
__privateMethod(this, _ProgressMessage_instances, updateProgressItem_fn).call(this, __privateGet(this, _progressData)[itemIndex]);
|
|
40388
|
+
__privateMethod(this, _ProgressMessage_instances, updateCurrentActiveProgress_fn).call(this);
|
|
40390
40389
|
}
|
|
40391
40390
|
}
|
|
40392
40391
|
}
|
|
@@ -40394,7 +40393,7 @@ class aiProgressMessage extends HTMLElement {
|
|
|
40394
40393
|
_progressData = new WeakMap();
|
|
40395
40394
|
_progressElements = new WeakMap();
|
|
40396
40395
|
_animationIntervals = new WeakMap();
|
|
40397
|
-
|
|
40396
|
+
_ProgressMessage_instances = new WeakSet();
|
|
40398
40397
|
// 현재 진행 중인 첫 번째 pending 항목을 찾아 'active' 상태로 만들고 애니메이션 시작
|
|
40399
40398
|
// 이전에 active였던 항목의 애니메이션은 중지
|
|
40400
40399
|
updateCurrentActiveProgress_fn = function() {
|
|
@@ -40410,7 +40409,7 @@ updateCurrentActiveProgress_fn = function() {
|
|
|
40410
40409
|
}
|
|
40411
40410
|
if (item.status === "pending" && !foundActive) {
|
|
40412
40411
|
li.classList.add("active");
|
|
40413
|
-
__privateMethod(this,
|
|
40412
|
+
__privateMethod(this, _ProgressMessage_instances, startAnimation_fn).call(this, item);
|
|
40414
40413
|
foundActive = true;
|
|
40415
40414
|
}
|
|
40416
40415
|
});
|
|
@@ -40432,7 +40431,7 @@ renderProgress_fn = function() {
|
|
|
40432
40431
|
`;
|
|
40433
40432
|
progressList.appendChild(li);
|
|
40434
40433
|
__privateGet(this, _progressElements).set(item.id, li);
|
|
40435
|
-
__privateMethod(this,
|
|
40434
|
+
__privateMethod(this, _ProgressMessage_instances, updateProgressItemVisuals_fn).call(this, item);
|
|
40436
40435
|
});
|
|
40437
40436
|
};
|
|
40438
40437
|
// 항목의 시각적 상태(텍스트, 완료 체크)만 업데이트
|
|
@@ -40467,16 +40466,16 @@ startAnimation_fn = function(item) {
|
|
|
40467
40466
|
// 개별 항목의 상태 업데이트 (텍스트 변경, 클래스 추가/제거)
|
|
40468
40467
|
// 애니메이션 시작/중지는 `#updateCurrentActiveProgress`에서 담당
|
|
40469
40468
|
updateProgressItem_fn = function(item) {
|
|
40470
|
-
__privateMethod(this,
|
|
40469
|
+
__privateMethod(this, _ProgressMessage_instances, updateProgressItemVisuals_fn).call(this, item);
|
|
40471
40470
|
};
|
|
40472
|
-
class
|
|
40471
|
+
class ChatMessageBody extends HTMLElement {
|
|
40473
40472
|
constructor() {
|
|
40474
40473
|
super();
|
|
40475
40474
|
__privateAdd(this, _renderer, () => {
|
|
40476
40475
|
const customImport = this.getAttribute("css-path") ? `@import "${this.getAttribute("css-path")}";` : "";
|
|
40477
40476
|
this.shadowRoot.innerHTML = `
|
|
40478
40477
|
<style>
|
|
40479
|
-
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.
|
|
40478
|
+
@import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-mu@${"0.1.173"}/dist/css/nine-mu.css";
|
|
40480
40479
|
${customImport}
|
|
40481
40480
|
</style>
|
|
40482
40481
|
|
|
@@ -40499,14 +40498,14 @@ class ChatMessage extends HTMLElement {
|
|
|
40499
40498
|
target.appendChild(el);
|
|
40500
40499
|
break;
|
|
40501
40500
|
case "ing":
|
|
40502
|
-
el = document.createElement("
|
|
40501
|
+
el = document.createElement("nine-chat-ing");
|
|
40503
40502
|
target.appendChild(el);
|
|
40504
40503
|
break;
|
|
40505
40504
|
case "ai":
|
|
40506
|
-
this.shadowRoot.querySelectorAll("
|
|
40505
|
+
this.shadowRoot.querySelectorAll("nine-chat-ing").forEach((el2) => {
|
|
40507
40506
|
el2.remove();
|
|
40508
40507
|
});
|
|
40509
|
-
el = document.createElement("
|
|
40508
|
+
el = document.createElement("nine-chat-ai");
|
|
40510
40509
|
el.setAttribute("message", message);
|
|
40511
40510
|
el.setAttribute("row-count", data ? data.length : 0);
|
|
40512
40511
|
el.initialize(info, data, unique);
|
|
@@ -40529,10 +40528,10 @@ class ChatMessage extends HTMLElement {
|
|
|
40529
40528
|
*/
|
|
40530
40529
|
__publicField(this, "addProgress", (progressData = null) => {
|
|
40531
40530
|
const target = this.shadowRoot.querySelector(".chat-body");
|
|
40532
|
-
this.shadowRoot.querySelectorAll("
|
|
40531
|
+
this.shadowRoot.querySelectorAll("nine-chat-ing").forEach((el2) => {
|
|
40533
40532
|
el2.remove();
|
|
40534
40533
|
});
|
|
40535
|
-
let el = document.createElement("
|
|
40534
|
+
let el = document.createElement("nine-chat-progress");
|
|
40536
40535
|
if (progressData) {
|
|
40537
40536
|
el.initialize(progressData);
|
|
40538
40537
|
}
|
|
@@ -40554,23 +40553,23 @@ class ChatMessage extends HTMLElement {
|
|
|
40554
40553
|
}
|
|
40555
40554
|
_renderer = new WeakMap();
|
|
40556
40555
|
_init3 = new WeakMap();
|
|
40557
|
-
if (!customElements.get("nx-ai-message")) {
|
|
40558
|
-
customElements.define("nx-ai-message", aiMessage);
|
|
40559
|
-
}
|
|
40560
|
-
if (!customElements.get("nx-ai-ing-message")) {
|
|
40561
|
-
customElements.define("nx-ai-ing-message", aiIngMessage);
|
|
40562
|
-
}
|
|
40563
|
-
if (!customElements.get("nx-ai-progress-message")) {
|
|
40564
|
-
customElements.define("nx-ai-progress-message", aiProgressMessage);
|
|
40565
|
-
}
|
|
40566
40556
|
if (!customElements.get("nine-chat-message")) {
|
|
40567
|
-
customElements.define("nine-chat-message",
|
|
40557
|
+
customElements.define("nine-chat-message", ChatMessageBody);
|
|
40568
40558
|
}
|
|
40569
40559
|
if (!customElements.get("nine-chat-me")) {
|
|
40570
40560
|
customElements.define("nine-chat-me", MyMessage);
|
|
40571
40561
|
}
|
|
40562
|
+
if (!customElements.get("nine-chat-ai")) {
|
|
40563
|
+
customElements.define("nine-chat-ai", AiMessage);
|
|
40564
|
+
}
|
|
40565
|
+
if (!customElements.get("nine-chat-ing")) {
|
|
40566
|
+
customElements.define("nine-chat-ing", IngMessage);
|
|
40567
|
+
}
|
|
40568
|
+
if (!customElements.get("nine-chat-progress")) {
|
|
40569
|
+
customElements.define("nine-chat-progress", ProgressMessage);
|
|
40570
|
+
}
|
|
40572
40571
|
const NineMu = {
|
|
40573
|
-
version: "0.1.
|
|
40572
|
+
version: "0.1.173",
|
|
40574
40573
|
init: (config2) => {
|
|
40575
40574
|
trace$1.log("🛠️ Nine-Mu Engine initialized", config2);
|
|
40576
40575
|
}
|