ide-assi 0.448.0 → 0.450.0
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/bundle.cjs.js +55 -69
- package/dist/bundle.esm.js +55 -69
- package/dist/components/ideAi.js +50 -0
- package/dist/components/ideAssi.js +2 -0
- package/package.json +1 -1
- package/src/components/ideAi.js +50 -0
- package/src/components/ideAssi.js +2 -0
package/dist/bundle.cjs.js
CHANGED
|
@@ -202120,7 +202120,7 @@ class IdeAi
|
|
|
202120
202120
|
if (!el) throw new Error("관련 메뉴를 찾을 수 없습니다.");
|
|
202121
202121
|
|
|
202122
202122
|
const href = el.getAttribute("href");
|
|
202123
|
-
|
|
202123
|
+
el.getAttribute("title");
|
|
202124
202124
|
|
|
202125
202125
|
const srcPath = this.#getSourcePath(href);
|
|
202126
202126
|
console.log(srcPath);
|
|
@@ -202139,7 +202139,7 @@ class IdeAi
|
|
|
202139
202139
|
* "javascriptPullPath": "ide-assi-fe-vite-react-js/src/views/tmpla/doc-manager.jsx"
|
|
202140
202140
|
* }
|
|
202141
202141
|
*/
|
|
202142
|
-
|
|
202142
|
+
await api.post("/api/source/read", srcPath);
|
|
202143
202143
|
//console.log(src);
|
|
202144
202144
|
|
|
202145
202145
|
/**
|
|
@@ -202155,83 +202155,52 @@ class IdeAi
|
|
|
202155
202155
|
title: elem.getAttribute("title"),
|
|
202156
202156
|
})*/
|
|
202157
202157
|
|
|
202158
|
-
const
|
|
202159
|
-
|
|
202160
|
-
|
|
202161
|
-
console.log(where);
|
|
202162
|
-
|
|
202163
|
-
//const srcPath = this.#getSourcePath(where.menu.url);
|
|
202164
|
-
|
|
202165
|
-
console.log(srcPath);
|
|
202166
|
-
|
|
202167
|
-
const columnInfo = await this.#getColumnInfo(where.table);
|
|
202168
|
-
|
|
202169
|
-
let mybatisXmlSource;
|
|
202158
|
+
const initialProgressData = [
|
|
202159
|
+
{ id: '1', message: '메뉴와 테이블을 검색중입니다', completedMessage: '관련 메뉴와 테이블을 찾았습니다.' }
|
|
202160
|
+
];
|
|
202170
202161
|
if (apply.mybatis) {
|
|
202171
|
-
|
|
202172
|
-
userPrompt: userPrompt,
|
|
202173
|
-
originSrc: src.mybatis,
|
|
202174
|
-
resultType: srcPath.resultType,
|
|
202175
|
-
namespace: srcPath.namespace,
|
|
202176
|
-
tableDefinitions: columnInfo,
|
|
202177
|
-
});
|
|
202178
|
-
this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
|
|
202162
|
+
initialProgressData.push({ id: '2', message: 'MyBatis 소스파일을 생성중입니다', completedMessage: 'MyBatis 소스파일을 생성했습니다.' });
|
|
202179
202163
|
}
|
|
202180
|
-
else {
|
|
202181
|
-
mybatisXmlSource = src.mybatis;
|
|
202182
|
-
}
|
|
202183
|
-
|
|
202184
|
-
let serviceSrc;
|
|
202185
202164
|
if (apply.service) {
|
|
202186
|
-
|
|
202187
|
-
userPrompt: userPrompt,
|
|
202188
|
-
originSrc: src.service,
|
|
202189
|
-
baseClass: srcPath.baseClass,
|
|
202190
|
-
myBatisPath: srcPath.mybatis,
|
|
202191
|
-
namespace: srcPath.namespace,
|
|
202192
|
-
package: srcPath.package + ".service",
|
|
202193
|
-
mybatisXmlSource: mybatisXmlSource,
|
|
202194
|
-
});
|
|
202195
|
-
this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
|
|
202196
|
-
}
|
|
202197
|
-
else {
|
|
202198
|
-
serviceSrc = src.service;
|
|
202165
|
+
initialProgressData.push({ id: '3', message: 'Java(Service) 소스파일을 생성중입니다', completedMessage: 'Java(Service) 소스파일을 생성했습니다.' });
|
|
202199
202166
|
}
|
|
202200
202167
|
|
|
202201
|
-
let controllerSrc;
|
|
202202
202168
|
if (apply.controller) {
|
|
202203
|
-
|
|
202204
|
-
userPrompt: userPrompt,
|
|
202205
|
-
originSrc: src.controller,
|
|
202206
|
-
baseClass: srcPath.baseClass,
|
|
202207
|
-
menuUrl: where.menu.url,
|
|
202208
|
-
package: srcPath.package + ".controller",
|
|
202209
|
-
serviceSource: serviceSrc,
|
|
202210
|
-
});
|
|
202211
|
-
this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
|
|
202212
|
-
}
|
|
202213
|
-
else {
|
|
202214
|
-
controllerSrc = src.controller;
|
|
202169
|
+
initialProgressData.push({ id: '4', message: 'Java(Controller) 소스파일을 생성중입니다', completedMessage: 'Java(Controller) 소스파일을 생성했습니다.' });
|
|
202215
202170
|
}
|
|
202171
|
+
|
|
202216
202172
|
if (apply.javascript) {
|
|
202217
|
-
|
|
202218
|
-
userPrompt: userPrompt,
|
|
202219
|
-
mybatis: srcPath.mybatis,
|
|
202220
|
-
originSrc: src.javascript,
|
|
202221
|
-
menuUrl: where.menu.url,
|
|
202222
|
-
menuName: where.menu.name,
|
|
202223
|
-
baseClass: srcPath.baseClass,
|
|
202224
|
-
controllerSource: controllerSrc,
|
|
202225
|
-
tableDefinitions: columnInfo,
|
|
202226
|
-
});
|
|
202227
|
-
this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
|
|
202228
|
-
}
|
|
202229
|
-
else {
|
|
202230
|
-
src.javascript;
|
|
202173
|
+
initialProgressData.push({ id: '5', message: 'Jsx(React) 소스파일을 생성중입니다', completedMessage: 'Jsx(React) 소스파일을 생성했습니다.' });
|
|
202231
202174
|
}
|
|
202232
|
-
//console.log(src.javascript);
|
|
202233
202175
|
|
|
202234
|
-
|
|
202176
|
+
const elAiChat = this.#parent.shadowRoot.querySelector("nx-ai-chat");
|
|
202177
|
+
const progressMessageInstance = elAiChat.addProgress(initialProgressData);
|
|
202178
|
+
|
|
202179
|
+
|
|
202180
|
+
// 2. 시간이 지난 후, 특정 단계의 완료를 알림
|
|
202181
|
+
// 예를 들어, 3초 후에 분석 완료
|
|
202182
|
+
setTimeout(() => {
|
|
202183
|
+
if (progressMessageInstance) {
|
|
202184
|
+
progressMessageInstance.updateProgress('1', 'completed');
|
|
202185
|
+
console.log("분석 완료 메시지 업데이트");
|
|
202186
|
+
}
|
|
202187
|
+
}, 3000);
|
|
202188
|
+
|
|
202189
|
+
// 예를 들어, 6초 후에 설계 완료
|
|
202190
|
+
setTimeout(() => {
|
|
202191
|
+
if (progressMessageInstance) {
|
|
202192
|
+
progressMessageInstance.updateProgress('2', 'completed');
|
|
202193
|
+
console.log("설계 완료 메시지 업데이트");
|
|
202194
|
+
}
|
|
202195
|
+
}, 6000);
|
|
202196
|
+
|
|
202197
|
+
// 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
|
|
202198
|
+
setTimeout(() => {
|
|
202199
|
+
elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
|
|
202200
|
+
}, 9000);
|
|
202201
|
+
|
|
202202
|
+
|
|
202203
|
+
return;
|
|
202235
202204
|
};
|
|
202236
202205
|
|
|
202237
202206
|
generateSourceClient = async (userPrompt, apply) => {
|
|
@@ -202488,6 +202457,7 @@ class IdeAssi extends HTMLElement
|
|
|
202488
202457
|
const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
|
|
202489
202458
|
|
|
202490
202459
|
|
|
202460
|
+
/**
|
|
202491
202461
|
// 1. 초기 진행 상태 메시지 추가
|
|
202492
202462
|
const initialProgressData = [
|
|
202493
202463
|
{ id: 'analysis', message: '분석중입니다.', completedMessage: '분석이 완료되었습니다.' },
|
|
@@ -202523,6 +202493,22 @@ class IdeAssi extends HTMLElement
|
|
|
202523
202493
|
this.#ing = false;
|
|
202524
202494
|
|
|
202525
202495
|
return;
|
|
202496
|
+
*/
|
|
202497
|
+
|
|
202498
|
+
|
|
202499
|
+
elAiChat.add("me", userPrompt);
|
|
202500
|
+
elAiChat.add("ing", "...");
|
|
202501
|
+
|
|
202502
|
+
|
|
202503
|
+
try {
|
|
202504
|
+
const r = await this.#ai.generateSourceClient(userPrompt, apply);
|
|
202505
|
+
elAiChat.add("ai", r);
|
|
202506
|
+
} catch (error) {
|
|
202507
|
+
console.error(error);
|
|
202508
|
+
elAiChat.add("ai", String(error).replace("Error:", ""));
|
|
202509
|
+
}
|
|
202510
|
+
|
|
202511
|
+
this.#ing = false;
|
|
202526
202512
|
}
|
|
202527
202513
|
|
|
202528
202514
|
#toggleCollapseHandler = () => {
|
package/dist/bundle.esm.js
CHANGED
|
@@ -202116,7 +202116,7 @@ class IdeAi
|
|
|
202116
202116
|
if (!el) throw new Error("관련 메뉴를 찾을 수 없습니다.");
|
|
202117
202117
|
|
|
202118
202118
|
const href = el.getAttribute("href");
|
|
202119
|
-
|
|
202119
|
+
el.getAttribute("title");
|
|
202120
202120
|
|
|
202121
202121
|
const srcPath = this.#getSourcePath(href);
|
|
202122
202122
|
console.log(srcPath);
|
|
@@ -202135,7 +202135,7 @@ class IdeAi
|
|
|
202135
202135
|
* "javascriptPullPath": "ide-assi-fe-vite-react-js/src/views/tmpla/doc-manager.jsx"
|
|
202136
202136
|
* }
|
|
202137
202137
|
*/
|
|
202138
|
-
|
|
202138
|
+
await api.post("/api/source/read", srcPath);
|
|
202139
202139
|
//console.log(src);
|
|
202140
202140
|
|
|
202141
202141
|
/**
|
|
@@ -202151,83 +202151,52 @@ class IdeAi
|
|
|
202151
202151
|
title: elem.getAttribute("title"),
|
|
202152
202152
|
})*/
|
|
202153
202153
|
|
|
202154
|
-
const
|
|
202155
|
-
|
|
202156
|
-
|
|
202157
|
-
console.log(where);
|
|
202158
|
-
|
|
202159
|
-
//const srcPath = this.#getSourcePath(where.menu.url);
|
|
202160
|
-
|
|
202161
|
-
console.log(srcPath);
|
|
202162
|
-
|
|
202163
|
-
const columnInfo = await this.#getColumnInfo(where.table);
|
|
202164
|
-
|
|
202165
|
-
let mybatisXmlSource;
|
|
202154
|
+
const initialProgressData = [
|
|
202155
|
+
{ id: '1', message: '메뉴와 테이블을 검색중입니다', completedMessage: '관련 메뉴와 테이블을 찾았습니다.' }
|
|
202156
|
+
];
|
|
202166
202157
|
if (apply.mybatis) {
|
|
202167
|
-
|
|
202168
|
-
userPrompt: userPrompt,
|
|
202169
|
-
originSrc: src.mybatis,
|
|
202170
|
-
resultType: srcPath.resultType,
|
|
202171
|
-
namespace: srcPath.namespace,
|
|
202172
|
-
tableDefinitions: columnInfo,
|
|
202173
|
-
});
|
|
202174
|
-
this.#parent.addMessage("MyBatis 소스파일을 생성했습니다.");
|
|
202158
|
+
initialProgressData.push({ id: '2', message: 'MyBatis 소스파일을 생성중입니다', completedMessage: 'MyBatis 소스파일을 생성했습니다.' });
|
|
202175
202159
|
}
|
|
202176
|
-
else {
|
|
202177
|
-
mybatisXmlSource = src.mybatis;
|
|
202178
|
-
}
|
|
202179
|
-
|
|
202180
|
-
let serviceSrc;
|
|
202181
202160
|
if (apply.service) {
|
|
202182
|
-
|
|
202183
|
-
userPrompt: userPrompt,
|
|
202184
|
-
originSrc: src.service,
|
|
202185
|
-
baseClass: srcPath.baseClass,
|
|
202186
|
-
myBatisPath: srcPath.mybatis,
|
|
202187
|
-
namespace: srcPath.namespace,
|
|
202188
|
-
package: srcPath.package + ".service",
|
|
202189
|
-
mybatisXmlSource: mybatisXmlSource,
|
|
202190
|
-
});
|
|
202191
|
-
this.#parent.addMessage("Java(Service) 소스파일을 생성했습니다.");
|
|
202192
|
-
}
|
|
202193
|
-
else {
|
|
202194
|
-
serviceSrc = src.service;
|
|
202161
|
+
initialProgressData.push({ id: '3', message: 'Java(Service) 소스파일을 생성중입니다', completedMessage: 'Java(Service) 소스파일을 생성했습니다.' });
|
|
202195
202162
|
}
|
|
202196
202163
|
|
|
202197
|
-
let controllerSrc;
|
|
202198
202164
|
if (apply.controller) {
|
|
202199
|
-
|
|
202200
|
-
userPrompt: userPrompt,
|
|
202201
|
-
originSrc: src.controller,
|
|
202202
|
-
baseClass: srcPath.baseClass,
|
|
202203
|
-
menuUrl: where.menu.url,
|
|
202204
|
-
package: srcPath.package + ".controller",
|
|
202205
|
-
serviceSource: serviceSrc,
|
|
202206
|
-
});
|
|
202207
|
-
this.#parent.addMessage("Java(Controller) 소스파일을 생성했습니다.");
|
|
202208
|
-
}
|
|
202209
|
-
else {
|
|
202210
|
-
controllerSrc = src.controller;
|
|
202165
|
+
initialProgressData.push({ id: '4', message: 'Java(Controller) 소스파일을 생성중입니다', completedMessage: 'Java(Controller) 소스파일을 생성했습니다.' });
|
|
202211
202166
|
}
|
|
202167
|
+
|
|
202212
202168
|
if (apply.javascript) {
|
|
202213
|
-
|
|
202214
|
-
userPrompt: userPrompt,
|
|
202215
|
-
mybatis: srcPath.mybatis,
|
|
202216
|
-
originSrc: src.javascript,
|
|
202217
|
-
menuUrl: where.menu.url,
|
|
202218
|
-
menuName: where.menu.name,
|
|
202219
|
-
baseClass: srcPath.baseClass,
|
|
202220
|
-
controllerSource: controllerSrc,
|
|
202221
|
-
tableDefinitions: columnInfo,
|
|
202222
|
-
});
|
|
202223
|
-
this.#parent.addMessage("Jsx(React) 소스파일을 생성했습니다.");
|
|
202224
|
-
}
|
|
202225
|
-
else {
|
|
202226
|
-
src.javascript;
|
|
202169
|
+
initialProgressData.push({ id: '5', message: 'Jsx(React) 소스파일을 생성중입니다', completedMessage: 'Jsx(React) 소스파일을 생성했습니다.' });
|
|
202227
202170
|
}
|
|
202228
|
-
//console.log(src.javascript);
|
|
202229
202171
|
|
|
202230
|
-
|
|
202172
|
+
const elAiChat = this.#parent.shadowRoot.querySelector("nx-ai-chat");
|
|
202173
|
+
const progressMessageInstance = elAiChat.addProgress(initialProgressData);
|
|
202174
|
+
|
|
202175
|
+
|
|
202176
|
+
// 2. 시간이 지난 후, 특정 단계의 완료를 알림
|
|
202177
|
+
// 예를 들어, 3초 후에 분석 완료
|
|
202178
|
+
setTimeout(() => {
|
|
202179
|
+
if (progressMessageInstance) {
|
|
202180
|
+
progressMessageInstance.updateProgress('1', 'completed');
|
|
202181
|
+
console.log("분석 완료 메시지 업데이트");
|
|
202182
|
+
}
|
|
202183
|
+
}, 3000);
|
|
202184
|
+
|
|
202185
|
+
// 예를 들어, 6초 후에 설계 완료
|
|
202186
|
+
setTimeout(() => {
|
|
202187
|
+
if (progressMessageInstance) {
|
|
202188
|
+
progressMessageInstance.updateProgress('2', 'completed');
|
|
202189
|
+
console.log("설계 완료 메시지 업데이트");
|
|
202190
|
+
}
|
|
202191
|
+
}, 6000);
|
|
202192
|
+
|
|
202193
|
+
// 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
|
|
202194
|
+
setTimeout(() => {
|
|
202195
|
+
elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
|
|
202196
|
+
}, 9000);
|
|
202197
|
+
|
|
202198
|
+
|
|
202199
|
+
return;
|
|
202231
202200
|
};
|
|
202232
202201
|
|
|
202233
202202
|
generateSourceClient = async (userPrompt, apply) => {
|
|
@@ -202484,6 +202453,7 @@ class IdeAssi extends HTMLElement
|
|
|
202484
202453
|
const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
|
|
202485
202454
|
|
|
202486
202455
|
|
|
202456
|
+
/**
|
|
202487
202457
|
// 1. 초기 진행 상태 메시지 추가
|
|
202488
202458
|
const initialProgressData = [
|
|
202489
202459
|
{ id: 'analysis', message: '분석중입니다.', completedMessage: '분석이 완료되었습니다.' },
|
|
@@ -202519,6 +202489,22 @@ class IdeAssi extends HTMLElement
|
|
|
202519
202489
|
this.#ing = false;
|
|
202520
202490
|
|
|
202521
202491
|
return;
|
|
202492
|
+
*/
|
|
202493
|
+
|
|
202494
|
+
|
|
202495
|
+
elAiChat.add("me", userPrompt);
|
|
202496
|
+
elAiChat.add("ing", "...");
|
|
202497
|
+
|
|
202498
|
+
|
|
202499
|
+
try {
|
|
202500
|
+
const r = await this.#ai.generateSourceClient(userPrompt, apply);
|
|
202501
|
+
elAiChat.add("ai", r);
|
|
202502
|
+
} catch (error) {
|
|
202503
|
+
console.error(error);
|
|
202504
|
+
elAiChat.add("ai", String(error).replace("Error:", ""));
|
|
202505
|
+
}
|
|
202506
|
+
|
|
202507
|
+
this.#ing = false;
|
|
202522
202508
|
}
|
|
202523
202509
|
|
|
202524
202510
|
#toggleCollapseHandler = () => {
|
package/dist/components/ideAi.js
CHANGED
|
@@ -431,6 +431,56 @@ export class IdeAi
|
|
|
431
431
|
title: elem.getAttribute("title"),
|
|
432
432
|
})*/
|
|
433
433
|
|
|
434
|
+
const initialProgressData = [
|
|
435
|
+
{ id: '1', message: '메뉴와 테이블을 검색중입니다', completedMessage: '관련 메뉴와 테이블을 찾았습니다.' }
|
|
436
|
+
];
|
|
437
|
+
if (apply.mybatis) {
|
|
438
|
+
initialProgressData.push({ id: '2', message: 'MyBatis 소스파일을 생성중입니다', completedMessage: 'MyBatis 소스파일을 생성했습니다.' });
|
|
439
|
+
}
|
|
440
|
+
if (apply.service) {
|
|
441
|
+
initialProgressData.push({ id: '3', message: 'Java(Service) 소스파일을 생성중입니다', completedMessage: 'Java(Service) 소스파일을 생성했습니다.' });
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
if (apply.controller) {
|
|
445
|
+
initialProgressData.push({ id: '4', message: 'Java(Controller) 소스파일을 생성중입니다', completedMessage: 'Java(Controller) 소스파일을 생성했습니다.' });
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
if (apply.javascript) {
|
|
449
|
+
initialProgressData.push({ id: '5', message: 'Jsx(React) 소스파일을 생성중입니다', completedMessage: 'Jsx(React) 소스파일을 생성했습니다.' });
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
const elAiChat = this.#parent.shadowRoot.querySelector("nx-ai-chat");
|
|
453
|
+
const progressMessageInstance = elAiChat.addProgress(initialProgressData);
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
// 2. 시간이 지난 후, 특정 단계의 완료를 알림
|
|
457
|
+
// 예를 들어, 3초 후에 분석 완료
|
|
458
|
+
setTimeout(() => {
|
|
459
|
+
if (progressMessageInstance) {
|
|
460
|
+
progressMessageInstance.updateProgress('1', 'completed');
|
|
461
|
+
console.log("분석 완료 메시지 업데이트");
|
|
462
|
+
}
|
|
463
|
+
}, 3000);
|
|
464
|
+
|
|
465
|
+
// 예를 들어, 6초 후에 설계 완료
|
|
466
|
+
setTimeout(() => {
|
|
467
|
+
if (progressMessageInstance) {
|
|
468
|
+
progressMessageInstance.updateProgress('2', 'completed');
|
|
469
|
+
console.log("설계 완료 메시지 업데이트");
|
|
470
|
+
}
|
|
471
|
+
}, 6000);
|
|
472
|
+
|
|
473
|
+
// 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
|
|
474
|
+
setTimeout(() => {
|
|
475
|
+
elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
|
|
476
|
+
}, 9000);
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
return;
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
|
|
434
484
|
const where = await this.#where(`${title}에서 ${userPrompt}`, [{url: href, title: title}], await this.#getTableList());
|
|
435
485
|
this.#parent.addMessage("대상 메뉴와 테이블을 찾았습니다.")
|
|
436
486
|
|
|
@@ -533,6 +533,7 @@ export default DocManager;
|
|
|
533
533
|
const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
|
|
534
534
|
|
|
535
535
|
|
|
536
|
+
/**
|
|
536
537
|
// 1. 초기 진행 상태 메시지 추가
|
|
537
538
|
const initialProgressData = [
|
|
538
539
|
{ id: 'analysis', message: '분석중입니다.', completedMessage: '분석이 완료되었습니다.' },
|
|
@@ -568,6 +569,7 @@ export default DocManager;
|
|
|
568
569
|
this.#ing = false;
|
|
569
570
|
|
|
570
571
|
return;
|
|
572
|
+
*/
|
|
571
573
|
|
|
572
574
|
|
|
573
575
|
elAiChat.add("me", userPrompt);
|
package/package.json
CHANGED
package/src/components/ideAi.js
CHANGED
|
@@ -431,6 +431,56 @@ export class IdeAi
|
|
|
431
431
|
title: elem.getAttribute("title"),
|
|
432
432
|
})*/
|
|
433
433
|
|
|
434
|
+
const initialProgressData = [
|
|
435
|
+
{ id: '1', message: '메뉴와 테이블을 검색중입니다', completedMessage: '관련 메뉴와 테이블을 찾았습니다.' }
|
|
436
|
+
];
|
|
437
|
+
if (apply.mybatis) {
|
|
438
|
+
initialProgressData.push({ id: '2', message: 'MyBatis 소스파일을 생성중입니다', completedMessage: 'MyBatis 소스파일을 생성했습니다.' });
|
|
439
|
+
}
|
|
440
|
+
if (apply.service) {
|
|
441
|
+
initialProgressData.push({ id: '3', message: 'Java(Service) 소스파일을 생성중입니다', completedMessage: 'Java(Service) 소스파일을 생성했습니다.' });
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
if (apply.controller) {
|
|
445
|
+
initialProgressData.push({ id: '4', message: 'Java(Controller) 소스파일을 생성중입니다', completedMessage: 'Java(Controller) 소스파일을 생성했습니다.' });
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
if (apply.javascript) {
|
|
449
|
+
initialProgressData.push({ id: '5', message: 'Jsx(React) 소스파일을 생성중입니다', completedMessage: 'Jsx(React) 소스파일을 생성했습니다.' });
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
const elAiChat = this.#parent.shadowRoot.querySelector("nx-ai-chat");
|
|
453
|
+
const progressMessageInstance = elAiChat.addProgress(initialProgressData);
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
// 2. 시간이 지난 후, 특정 단계의 완료를 알림
|
|
457
|
+
// 예를 들어, 3초 후에 분석 완료
|
|
458
|
+
setTimeout(() => {
|
|
459
|
+
if (progressMessageInstance) {
|
|
460
|
+
progressMessageInstance.updateProgress('1', 'completed');
|
|
461
|
+
console.log("분석 완료 메시지 업데이트");
|
|
462
|
+
}
|
|
463
|
+
}, 3000);
|
|
464
|
+
|
|
465
|
+
// 예를 들어, 6초 후에 설계 완료
|
|
466
|
+
setTimeout(() => {
|
|
467
|
+
if (progressMessageInstance) {
|
|
468
|
+
progressMessageInstance.updateProgress('2', 'completed');
|
|
469
|
+
console.log("설계 완료 메시지 업데이트");
|
|
470
|
+
}
|
|
471
|
+
}, 6000);
|
|
472
|
+
|
|
473
|
+
// 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
|
|
474
|
+
setTimeout(() => {
|
|
475
|
+
elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
|
|
476
|
+
}, 9000);
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
return;
|
|
480
|
+
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
|
|
434
484
|
const where = await this.#where(`${title}에서 ${userPrompt}`, [{url: href, title: title}], await this.#getTableList());
|
|
435
485
|
this.#parent.addMessage("대상 메뉴와 테이블을 찾았습니다.")
|
|
436
486
|
|
|
@@ -533,6 +533,7 @@ export default DocManager;
|
|
|
533
533
|
const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
|
|
534
534
|
|
|
535
535
|
|
|
536
|
+
/**
|
|
536
537
|
// 1. 초기 진행 상태 메시지 추가
|
|
537
538
|
const initialProgressData = [
|
|
538
539
|
{ id: 'analysis', message: '분석중입니다.', completedMessage: '분석이 완료되었습니다.' },
|
|
@@ -568,6 +569,7 @@ export default DocManager;
|
|
|
568
569
|
this.#ing = false;
|
|
569
570
|
|
|
570
571
|
return;
|
|
572
|
+
*/
|
|
571
573
|
|
|
572
574
|
|
|
573
575
|
elAiChat.add("me", userPrompt);
|