ide-assi 0.445.0 → 0.447.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.
@@ -202452,11 +202452,47 @@ class IdeAssi extends HTMLElement
202452
202452
  //return;
202453
202453
 
202454
202454
 
202455
- // 1. 초기 진행 상태 메시지 추가
202455
+
202456
+
202457
+
202458
+ const apply = {
202459
+ mybatis: this.shadowRoot.querySelector("#mybatis").checked,
202460
+ service: this.shadowRoot.querySelector("#service").checked,
202461
+ controller: this.shadowRoot.querySelector("#controller").checked,
202462
+ javascript: this.shadowRoot.querySelector("#javascript").checked,
202463
+ };
202464
+
202465
+ if (!apply.mybatis && !apply.service && !apply.controller && !apply.javascript) return;
202466
+
202467
+ const userPrompt = e.target.value.trim();
202468
+ if (!userPrompt) return;
202469
+
202470
+ if (this.#ing) return;
202471
+ this.#ing = true;
202472
+
202473
+ /**
202474
+ * 옵션저장
202475
+ */
202476
+ this.#saveLocalSettings(apply);
202477
+
202478
+
202479
+
202480
+ /**
202481
+ * setTimeout 없으면, 맥에서 한글 잔상이 남음
202482
+ * setTimeout 내에서 e.target이 nx-ai-container가 된다.
202483
+ */
202484
+ setTimeout(() => {
202485
+ this.shadowRoot.querySelector("textarea").value = "";
202486
+ });
202487
+
202488
+ const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
202489
+
202490
+
202491
+ // 1. 초기 진행 상태 메시지 추가
202456
202492
  const initialProgressData = [
202457
- { id: 'analysis', message: '1. 분석중입니다...', completedMessage: '1-1. 분석이 완료되었습니다.' },
202458
- { id: 'design', message: '2. 설계중...', completedMessage: '2-1. 설계가 완료되었습니다.' },
202459
- { id: 'development', message: '3. 개발중...', completedMessage: '3-1. 개발이 완료되었습니다.' }
202493
+ { id: 'analysis', message: '분석중입니다...', completedMessage: '분석이 완료되었습니다.' },
202494
+ { id: 'design', message: '설계중...', completedMessage: '설계가 완료되었습니다.' },
202495
+ { id: 'development', message: '개발중...', completedMessage: '개발이 완료되었습니다.' }
202460
202496
  ];
202461
202497
 
202462
202498
  // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
@@ -202484,11 +202520,9 @@ class IdeAssi extends HTMLElement
202484
202520
  elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
202485
202521
  }, 9000);
202486
202522
 
202487
-
202523
+ this.#ing = false;
202488
202524
 
202489
202525
  return;
202490
-
202491
- const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
202492
202526
  }
202493
202527
 
202494
202528
  #toggleCollapseHandler = () => {
@@ -202448,11 +202448,47 @@ class IdeAssi extends HTMLElement
202448
202448
  //return;
202449
202449
 
202450
202450
 
202451
- // 1. 초기 진행 상태 메시지 추가
202451
+
202452
+
202453
+
202454
+ const apply = {
202455
+ mybatis: this.shadowRoot.querySelector("#mybatis").checked,
202456
+ service: this.shadowRoot.querySelector("#service").checked,
202457
+ controller: this.shadowRoot.querySelector("#controller").checked,
202458
+ javascript: this.shadowRoot.querySelector("#javascript").checked,
202459
+ };
202460
+
202461
+ if (!apply.mybatis && !apply.service && !apply.controller && !apply.javascript) return;
202462
+
202463
+ const userPrompt = e.target.value.trim();
202464
+ if (!userPrompt) return;
202465
+
202466
+ if (this.#ing) return;
202467
+ this.#ing = true;
202468
+
202469
+ /**
202470
+ * 옵션저장
202471
+ */
202472
+ this.#saveLocalSettings(apply);
202473
+
202474
+
202475
+
202476
+ /**
202477
+ * setTimeout 없으면, 맥에서 한글 잔상이 남음
202478
+ * setTimeout 내에서 e.target이 nx-ai-container가 된다.
202479
+ */
202480
+ setTimeout(() => {
202481
+ this.shadowRoot.querySelector("textarea").value = "";
202482
+ });
202483
+
202484
+ const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
202485
+
202486
+
202487
+ // 1. 초기 진행 상태 메시지 추가
202452
202488
  const initialProgressData = [
202453
- { id: 'analysis', message: '1. 분석중입니다...', completedMessage: '1-1. 분석이 완료되었습니다.' },
202454
- { id: 'design', message: '2. 설계중...', completedMessage: '2-1. 설계가 완료되었습니다.' },
202455
- { id: 'development', message: '3. 개발중...', completedMessage: '3-1. 개발이 완료되었습니다.' }
202489
+ { id: 'analysis', message: '분석중입니다...', completedMessage: '분석이 완료되었습니다.' },
202490
+ { id: 'design', message: '설계중...', completedMessage: '설계가 완료되었습니다.' },
202491
+ { id: 'development', message: '개발중...', completedMessage: '개발이 완료되었습니다.' }
202456
202492
  ];
202457
202493
 
202458
202494
  // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
@@ -202480,11 +202516,9 @@ class IdeAssi extends HTMLElement
202480
202516
  elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
202481
202517
  }, 9000);
202482
202518
 
202483
-
202519
+ this.#ing = false;
202484
202520
 
202485
202521
  return;
202486
-
202487
- const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
202488
202522
  }
202489
202523
 
202490
202524
  #toggleCollapseHandler = () => {
@@ -497,41 +497,7 @@ export default DocManager;
497
497
  //return;
498
498
 
499
499
 
500
- // 1. 초기 진행 상태 메시지 추가
501
- const initialProgressData = [
502
- { id: 'analysis', message: '1. 분석중입니다...', completedMessage: '1-1. 분석이 완료되었습니다.' },
503
- { id: 'design', message: '2. 설계중...', completedMessage: '2-1. 설계가 완료되었습니다.' },
504
- { id: 'development', message: '3. 개발중...', completedMessage: '3-1. 개발이 완료되었습니다.' }
505
- ];
506
500
 
507
- // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
508
- const progressMessageInstance = elAiChat.addProgress(initialProgressData);
509
-
510
- // 2. 시간이 지난 후, 특정 단계의 완료를 알림
511
- // 예를 들어, 3초 후에 분석 완료
512
- setTimeout(() => {
513
- if (progressMessageInstance) {
514
- progressMessageInstance.updateProgress('analysis', 'completed');
515
- console.log("분석 완료 메시지 업데이트");
516
- }
517
- }, 3000);
518
-
519
- // 예를 들어, 6초 후에 설계 완료
520
- setTimeout(() => {
521
- if (progressMessageInstance) {
522
- progressMessageInstance.updateProgress('design', 'completed');
523
- console.log("설계 완료 메시지 업데이트");
524
- }
525
- }, 6000);
526
-
527
- // 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
528
- setTimeout(() => {
529
- elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
530
- }, 9000);
531
-
532
-
533
-
534
- return;
535
501
 
536
502
 
537
503
  const apply = {
@@ -566,9 +532,48 @@ export default DocManager;
566
532
 
567
533
  const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
568
534
 
535
+
536
+ // 1. 초기 진행 상태 메시지 추가
537
+ const initialProgressData = [
538
+ { id: 'analysis', message: '분석중입니다...', completedMessage: '분석이 완료되었습니다.' },
539
+ { id: 'design', message: '설계중...', completedMessage: '설계가 완료되었습니다.' },
540
+ { id: 'development', message: '개발중...', completedMessage: '개발이 완료되었습니다.' }
541
+ ];
542
+
543
+ // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
544
+ const progressMessageInstance = elAiChat.addProgress(initialProgressData);
545
+
546
+ // 2. 시간이 지난 후, 특정 단계의 완료를 알림
547
+ // 예를 들어, 3초 후에 분석 완료
548
+ setTimeout(() => {
549
+ if (progressMessageInstance) {
550
+ progressMessageInstance.updateProgress('analysis', 'completed');
551
+ console.log("분석 완료 메시지 업데이트");
552
+ }
553
+ }, 3000);
554
+
555
+ // 예를 들어, 6초 후에 설계 완료
556
+ setTimeout(() => {
557
+ if (progressMessageInstance) {
558
+ progressMessageInstance.updateProgress('design', 'completed');
559
+ console.log("설계 완료 메시지 업데이트");
560
+ }
561
+ }, 6000);
562
+
563
+ // 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
564
+ setTimeout(() => {
565
+ elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
566
+ }, 9000);
567
+
568
+ this.#ing = false;
569
+
570
+ return;
571
+
572
+
569
573
  elAiChat.add("me", userPrompt);
570
574
  elAiChat.add("ing", "...");
571
575
 
576
+
572
577
  try {
573
578
  const r = await this.#ai.generateSourceClient(userPrompt, apply);
574
579
  elAiChat.add("ai", r);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ide-assi",
3
3
  "type": "module",
4
- "version": "0.445.0",
4
+ "version": "0.447.0",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
@@ -497,41 +497,7 @@ export default DocManager;
497
497
  //return;
498
498
 
499
499
 
500
- // 1. 초기 진행 상태 메시지 추가
501
- const initialProgressData = [
502
- { id: 'analysis', message: '1. 분석중입니다...', completedMessage: '1-1. 분석이 완료되었습니다.' },
503
- { id: 'design', message: '2. 설계중...', completedMessage: '2-1. 설계가 완료되었습니다.' },
504
- { id: 'development', message: '3. 개발중...', completedMessage: '3-1. 개발이 완료되었습니다.' }
505
- ];
506
500
 
507
- // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
508
- const progressMessageInstance = elAiChat.addProgress(initialProgressData);
509
-
510
- // 2. 시간이 지난 후, 특정 단계의 완료를 알림
511
- // 예를 들어, 3초 후에 분석 완료
512
- setTimeout(() => {
513
- if (progressMessageInstance) {
514
- progressMessageInstance.updateProgress('analysis', 'completed');
515
- console.log("분석 완료 메시지 업데이트");
516
- }
517
- }, 3000);
518
-
519
- // 예를 들어, 6초 후에 설계 완료
520
- setTimeout(() => {
521
- if (progressMessageInstance) {
522
- progressMessageInstance.updateProgress('design', 'completed');
523
- console.log("설계 완료 메시지 업데이트");
524
- }
525
- }, 6000);
526
-
527
- // 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
528
- setTimeout(() => {
529
- elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
530
- }, 9000);
531
-
532
-
533
-
534
- return;
535
501
 
536
502
 
537
503
  const apply = {
@@ -566,9 +532,48 @@ export default DocManager;
566
532
 
567
533
  const elAiChat = this.shadowRoot.querySelector("nx-ai-chat");
568
534
 
535
+
536
+ // 1. 초기 진행 상태 메시지 추가
537
+ const initialProgressData = [
538
+ { id: 'analysis', message: '분석중입니다...', completedMessage: '분석이 완료되었습니다.' },
539
+ { id: 'design', message: '설계중...', completedMessage: '설계가 완료되었습니다.' },
540
+ { id: 'development', message: '개발중...', completedMessage: '개발이 완료되었습니다.' }
541
+ ];
542
+
543
+ // aiChat.add 호출 시, progressData를 마지막 인자로 전달하고 생성된 엘리먼트를 받습니다.
544
+ const progressMessageInstance = elAiChat.addProgress(initialProgressData);
545
+
546
+ // 2. 시간이 지난 후, 특정 단계의 완료를 알림
547
+ // 예를 들어, 3초 후에 분석 완료
548
+ setTimeout(() => {
549
+ if (progressMessageInstance) {
550
+ progressMessageInstance.updateProgress('analysis', 'completed');
551
+ console.log("분석 완료 메시지 업데이트");
552
+ }
553
+ }, 3000);
554
+
555
+ // 예를 들어, 6초 후에 설계 완료
556
+ setTimeout(() => {
557
+ if (progressMessageInstance) {
558
+ progressMessageInstance.updateProgress('design', 'completed');
559
+ console.log("설계 완료 메시지 업데이트");
560
+ }
561
+ }, 6000);
562
+
563
+ // 모든 단계가 완료된 후, 일반 AI 메시지 추가 (선택 사항)
564
+ setTimeout(() => {
565
+ elAiChat.add("ai", "모든 작업이 성공적으로 완료되었습니다!", [], []);
566
+ }, 9000);
567
+
568
+ this.#ing = false;
569
+
570
+ return;
571
+
572
+
569
573
  elAiChat.add("me", userPrompt);
570
574
  elAiChat.add("ing", "...");
571
575
 
576
+
572
577
  try {
573
578
  const r = await this.#ai.generateSourceClient(userPrompt, apply);
574
579
  elAiChat.add("ai", r);