ide-assi 0.442.0 → 0.443.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 +14 -14
- package/dist/bundle.esm.js +14 -14
- package/dist/components/ideDiff.js +14 -14
- package/package.json +1 -1
- package/src/components/ideDiff.js +14 -14
package/dist/bundle.cjs.js
CHANGED
|
@@ -234918,19 +234918,18 @@ class MergeButtonWidget extends WidgetType {
|
|
|
234918
234918
|
const button = document.createElement("button");
|
|
234919
234919
|
// SVN 기준 명칭으로 변경
|
|
234920
234920
|
if (this.isAsisButton) {
|
|
234921
|
-
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '
|
|
234922
|
-
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용
|
|
234923
|
-
button.textContent = "
|
|
234921
|
+
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '삭제' (ASIS에서 제거)
|
|
234922
|
+
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용 (빨간색)
|
|
234923
|
+
button.textContent = "삭제"; // 텍스트 변경
|
|
234924
234924
|
} else {
|
|
234925
|
-
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용'
|
|
234926
|
-
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용
|
|
234927
|
-
button.textContent = "
|
|
234925
|
+
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용' (ASIS에 반영)
|
|
234926
|
+
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용 (녹색)
|
|
234927
|
+
button.textContent = "← 적용"; // 화살표 방향 변경
|
|
234928
234928
|
}
|
|
234929
234929
|
|
|
234930
|
-
|
|
234931
234930
|
// 클릭 이벤트 핸들러
|
|
234932
234931
|
button.addEventListener("click", () => {
|
|
234933
|
-
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (
|
|
234932
|
+
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (삭제)' : 'TOBE 쪽 (적용)'}`, this.textToApply);
|
|
234934
234933
|
console.log("대상 에디터:", this.targetEditorView === this.hostComponent.asisEditorView ? "ASIS" : "TOBE");
|
|
234935
234934
|
console.log("대상 범위:", this.diffRange);
|
|
234936
234935
|
|
|
@@ -235067,7 +235066,8 @@ class IdeDiff extends HTMLElement {
|
|
|
235067
235066
|
extensions: [
|
|
235068
235067
|
basicExtensions,
|
|
235069
235068
|
this.#languageCompartment.of(javascript()),
|
|
235070
|
-
|
|
235069
|
+
// ASIS는 읽기 전용으로 유지 (원본 소스) - 필요에 따라 편집 가능하도록 변경 가능
|
|
235070
|
+
EditorState.readOnly.of(false), // ASIS를 편집 가능하게 변경
|
|
235071
235071
|
asisDiffDecorations,
|
|
235072
235072
|
asisButtonDecorations,
|
|
235073
235073
|
EditorView.updateListener.of((update) => {
|
|
@@ -235087,7 +235087,7 @@ class IdeDiff extends HTMLElement {
|
|
|
235087
235087
|
extensions: [
|
|
235088
235088
|
basicExtensions,
|
|
235089
235089
|
this.#languageCompartment.of(javascript()),
|
|
235090
|
-
|
|
235090
|
+
EditorState.readOnly.of(true), // TOBE는 AI 추천 소스이므로 읽기 전용 유지
|
|
235091
235091
|
tobeDiffDecorations,
|
|
235092
235092
|
tobeButtonDecorations,
|
|
235093
235093
|
EditorView.updateListener.of((update) => {
|
|
@@ -235210,16 +235210,16 @@ class IdeDiff extends HTMLElement {
|
|
|
235210
235210
|
asisCursor += asisLines[i].length + (i < asisLines.length - 1 ? 1 : 0);
|
|
235211
235211
|
}
|
|
235212
235212
|
|
|
235213
|
-
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI
|
|
235213
|
+
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI의 삭제를 '삭제' (ASIS에서 해당 내용을 제거)
|
|
235214
235214
|
asisButtonBuilder.add(
|
|
235215
235215
|
asisRangeStart,
|
|
235216
235216
|
asisRangeStart,
|
|
235217
235217
|
Decoration.widget({
|
|
235218
235218
|
widget: new MergeButtonWidget(
|
|
235219
235219
|
true, // 이 버튼은 ASIS 에디터에 붙는 버튼
|
|
235220
|
-
"", //
|
|
235221
|
-
currentInstance.#
|
|
235222
|
-
{ from:
|
|
235220
|
+
"", // ASIS에서 해당 내용을 '제거'하므로 삽입할 텍스트는 없음
|
|
235221
|
+
currentInstance.#asisEditorView, // 대상 에디터는 ASIS (현재 소스)
|
|
235222
|
+
{ from: asisRangeStart, to: asisRangeStart + text.length }, // ASIS에서 '삭제될' 범위
|
|
235223
235223
|
currentInstance
|
|
235224
235224
|
),
|
|
235225
235225
|
side: 1
|
package/dist/bundle.esm.js
CHANGED
|
@@ -234914,19 +234914,18 @@ class MergeButtonWidget extends WidgetType {
|
|
|
234914
234914
|
const button = document.createElement("button");
|
|
234915
234915
|
// SVN 기준 명칭으로 변경
|
|
234916
234916
|
if (this.isAsisButton) {
|
|
234917
|
-
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '
|
|
234918
|
-
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용
|
|
234919
|
-
button.textContent = "
|
|
234917
|
+
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '삭제' (ASIS에서 제거)
|
|
234918
|
+
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용 (빨간색)
|
|
234919
|
+
button.textContent = "삭제"; // 텍스트 변경
|
|
234920
234920
|
} else {
|
|
234921
|
-
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용'
|
|
234922
|
-
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용
|
|
234923
|
-
button.textContent = "
|
|
234921
|
+
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용' (ASIS에 반영)
|
|
234922
|
+
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용 (녹색)
|
|
234923
|
+
button.textContent = "← 적용"; // 화살표 방향 변경
|
|
234924
234924
|
}
|
|
234925
234925
|
|
|
234926
|
-
|
|
234927
234926
|
// 클릭 이벤트 핸들러
|
|
234928
234927
|
button.addEventListener("click", () => {
|
|
234929
|
-
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (
|
|
234928
|
+
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (삭제)' : 'TOBE 쪽 (적용)'}`, this.textToApply);
|
|
234930
234929
|
console.log("대상 에디터:", this.targetEditorView === this.hostComponent.asisEditorView ? "ASIS" : "TOBE");
|
|
234931
234930
|
console.log("대상 범위:", this.diffRange);
|
|
234932
234931
|
|
|
@@ -235063,7 +235062,8 @@ class IdeDiff extends HTMLElement {
|
|
|
235063
235062
|
extensions: [
|
|
235064
235063
|
basicExtensions,
|
|
235065
235064
|
this.#languageCompartment.of(javascript()),
|
|
235066
|
-
|
|
235065
|
+
// ASIS는 읽기 전용으로 유지 (원본 소스) - 필요에 따라 편집 가능하도록 변경 가능
|
|
235066
|
+
EditorState.readOnly.of(false), // ASIS를 편집 가능하게 변경
|
|
235067
235067
|
asisDiffDecorations,
|
|
235068
235068
|
asisButtonDecorations,
|
|
235069
235069
|
EditorView.updateListener.of((update) => {
|
|
@@ -235083,7 +235083,7 @@ class IdeDiff extends HTMLElement {
|
|
|
235083
235083
|
extensions: [
|
|
235084
235084
|
basicExtensions,
|
|
235085
235085
|
this.#languageCompartment.of(javascript()),
|
|
235086
|
-
|
|
235086
|
+
EditorState.readOnly.of(true), // TOBE는 AI 추천 소스이므로 읽기 전용 유지
|
|
235087
235087
|
tobeDiffDecorations,
|
|
235088
235088
|
tobeButtonDecorations,
|
|
235089
235089
|
EditorView.updateListener.of((update) => {
|
|
@@ -235206,16 +235206,16 @@ class IdeDiff extends HTMLElement {
|
|
|
235206
235206
|
asisCursor += asisLines[i].length + (i < asisLines.length - 1 ? 1 : 0);
|
|
235207
235207
|
}
|
|
235208
235208
|
|
|
235209
|
-
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI
|
|
235209
|
+
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI의 삭제를 '삭제' (ASIS에서 해당 내용을 제거)
|
|
235210
235210
|
asisButtonBuilder.add(
|
|
235211
235211
|
asisRangeStart,
|
|
235212
235212
|
asisRangeStart,
|
|
235213
235213
|
Decoration.widget({
|
|
235214
235214
|
widget: new MergeButtonWidget(
|
|
235215
235215
|
true, // 이 버튼은 ASIS 에디터에 붙는 버튼
|
|
235216
|
-
"", //
|
|
235217
|
-
currentInstance.#
|
|
235218
|
-
{ from:
|
|
235216
|
+
"", // ASIS에서 해당 내용을 '제거'하므로 삽입할 텍스트는 없음
|
|
235217
|
+
currentInstance.#asisEditorView, // 대상 에디터는 ASIS (현재 소스)
|
|
235218
|
+
{ from: asisRangeStart, to: asisRangeStart + text.length }, // ASIS에서 '삭제될' 범위
|
|
235219
235219
|
currentInstance
|
|
235220
235220
|
),
|
|
235221
235221
|
side: 1
|
|
@@ -114,19 +114,18 @@ class MergeButtonWidget extends WidgetType {
|
|
|
114
114
|
const button = document.createElement("button");
|
|
115
115
|
// SVN 기준 명칭으로 변경
|
|
116
116
|
if (this.isAsisButton) {
|
|
117
|
-
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '
|
|
118
|
-
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용
|
|
119
|
-
button.textContent = "
|
|
117
|
+
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '삭제' (ASIS에서 제거)
|
|
118
|
+
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용 (빨간색)
|
|
119
|
+
button.textContent = "삭제"; // 텍스트 변경
|
|
120
120
|
} else {
|
|
121
|
-
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용'
|
|
122
|
-
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용
|
|
123
|
-
button.textContent = "
|
|
121
|
+
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용' (ASIS에 반영)
|
|
122
|
+
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용 (녹색)
|
|
123
|
+
button.textContent = "← 적용"; // 화살표 방향 변경
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
-
|
|
127
126
|
// 클릭 이벤트 핸들러
|
|
128
127
|
button.addEventListener("click", () => {
|
|
129
|
-
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (
|
|
128
|
+
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (삭제)' : 'TOBE 쪽 (적용)'}`, this.textToApply);
|
|
130
129
|
console.log("대상 에디터:", this.targetEditorView === this.hostComponent.asisEditorView ? "ASIS" : "TOBE");
|
|
131
130
|
console.log("대상 범위:", this.diffRange);
|
|
132
131
|
|
|
@@ -263,7 +262,8 @@ export class IdeDiff extends HTMLElement {
|
|
|
263
262
|
extensions: [
|
|
264
263
|
basicExtensions,
|
|
265
264
|
this.#languageCompartment.of(javascript()),
|
|
266
|
-
|
|
265
|
+
// ASIS는 읽기 전용으로 유지 (원본 소스) - 필요에 따라 편집 가능하도록 변경 가능
|
|
266
|
+
EditorState.readOnly.of(false), // ASIS를 편집 가능하게 변경
|
|
267
267
|
asisDiffDecorations,
|
|
268
268
|
asisButtonDecorations,
|
|
269
269
|
EditorView.updateListener.of((update) => {
|
|
@@ -283,7 +283,7 @@ export class IdeDiff extends HTMLElement {
|
|
|
283
283
|
extensions: [
|
|
284
284
|
basicExtensions,
|
|
285
285
|
this.#languageCompartment.of(javascript()),
|
|
286
|
-
|
|
286
|
+
EditorState.readOnly.of(true), // TOBE는 AI 추천 소스이므로 읽기 전용 유지
|
|
287
287
|
tobeDiffDecorations,
|
|
288
288
|
tobeButtonDecorations,
|
|
289
289
|
EditorView.updateListener.of((update) => {
|
|
@@ -406,16 +406,16 @@ export class IdeDiff extends HTMLElement {
|
|
|
406
406
|
asisCursor += asisLines[i].length + (i < asisLines.length - 1 ? 1 : 0);
|
|
407
407
|
}
|
|
408
408
|
|
|
409
|
-
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI
|
|
409
|
+
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI의 삭제를 '삭제' (ASIS에서 해당 내용을 제거)
|
|
410
410
|
asisButtonBuilder.add(
|
|
411
411
|
asisRangeStart,
|
|
412
412
|
asisRangeStart,
|
|
413
413
|
Decoration.widget({
|
|
414
414
|
widget: new MergeButtonWidget(
|
|
415
415
|
true, // 이 버튼은 ASIS 에디터에 붙는 버튼
|
|
416
|
-
"", //
|
|
417
|
-
currentInstance.#
|
|
418
|
-
{ from:
|
|
416
|
+
"", // ASIS에서 해당 내용을 '제거'하므로 삽입할 텍스트는 없음
|
|
417
|
+
currentInstance.#asisEditorView, // 대상 에디터는 ASIS (현재 소스)
|
|
418
|
+
{ from: asisRangeStart, to: asisRangeStart + text.length }, // ASIS에서 '삭제될' 범위
|
|
419
419
|
currentInstance
|
|
420
420
|
),
|
|
421
421
|
side: 1
|
package/package.json
CHANGED
|
@@ -114,19 +114,18 @@ class MergeButtonWidget extends WidgetType {
|
|
|
114
114
|
const button = document.createElement("button");
|
|
115
115
|
// SVN 기준 명칭으로 변경
|
|
116
116
|
if (this.isAsisButton) {
|
|
117
|
-
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '
|
|
118
|
-
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용
|
|
119
|
-
button.textContent = "
|
|
117
|
+
// ASIS (왼쪽) 에디터에 붙는 버튼: AI가 삭제한 것을 '삭제' (ASIS에서 제거)
|
|
118
|
+
button.className = "cm-merge-button revert"; // 'revert' 클래스 사용 (빨간색)
|
|
119
|
+
button.textContent = "삭제"; // 텍스트 변경
|
|
120
120
|
} else {
|
|
121
|
-
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용'
|
|
122
|
-
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용
|
|
123
|
-
button.textContent = "
|
|
121
|
+
// TOBE (오른쪽) 에디터에 붙는 버튼: AI가 추가한 것을 '적용' (ASIS에 반영)
|
|
122
|
+
button.className = "cm-merge-button accept"; // 'accept' 클래스 사용 (녹색)
|
|
123
|
+
button.textContent = "← 적용"; // 화살표 방향 변경
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
-
|
|
127
126
|
// 클릭 이벤트 핸들러
|
|
128
127
|
button.addEventListener("click", () => {
|
|
129
|
-
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (
|
|
128
|
+
console.log(`버튼 클릭: ${this.isAsisButton ? 'ASIS 쪽 (삭제)' : 'TOBE 쪽 (적용)'}`, this.textToApply);
|
|
130
129
|
console.log("대상 에디터:", this.targetEditorView === this.hostComponent.asisEditorView ? "ASIS" : "TOBE");
|
|
131
130
|
console.log("대상 범위:", this.diffRange);
|
|
132
131
|
|
|
@@ -263,7 +262,8 @@ export class IdeDiff extends HTMLElement {
|
|
|
263
262
|
extensions: [
|
|
264
263
|
basicExtensions,
|
|
265
264
|
this.#languageCompartment.of(javascript()),
|
|
266
|
-
|
|
265
|
+
// ASIS는 읽기 전용으로 유지 (원본 소스) - 필요에 따라 편집 가능하도록 변경 가능
|
|
266
|
+
EditorState.readOnly.of(false), // ASIS를 편집 가능하게 변경
|
|
267
267
|
asisDiffDecorations,
|
|
268
268
|
asisButtonDecorations,
|
|
269
269
|
EditorView.updateListener.of((update) => {
|
|
@@ -283,7 +283,7 @@ export class IdeDiff extends HTMLElement {
|
|
|
283
283
|
extensions: [
|
|
284
284
|
basicExtensions,
|
|
285
285
|
this.#languageCompartment.of(javascript()),
|
|
286
|
-
|
|
286
|
+
EditorState.readOnly.of(true), // TOBE는 AI 추천 소스이므로 읽기 전용 유지
|
|
287
287
|
tobeDiffDecorations,
|
|
288
288
|
tobeButtonDecorations,
|
|
289
289
|
EditorView.updateListener.of((update) => {
|
|
@@ -406,16 +406,16 @@ export class IdeDiff extends HTMLElement {
|
|
|
406
406
|
asisCursor += asisLines[i].length + (i < asisLines.length - 1 ? 1 : 0);
|
|
407
407
|
}
|
|
408
408
|
|
|
409
|
-
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI
|
|
409
|
+
// ⭐️ ASIS (현재 소스) 에디터에 버튼 추가: AI의 삭제를 '삭제' (ASIS에서 해당 내용을 제거)
|
|
410
410
|
asisButtonBuilder.add(
|
|
411
411
|
asisRangeStart,
|
|
412
412
|
asisRangeStart,
|
|
413
413
|
Decoration.widget({
|
|
414
414
|
widget: new MergeButtonWidget(
|
|
415
415
|
true, // 이 버튼은 ASIS 에디터에 붙는 버튼
|
|
416
|
-
"", //
|
|
417
|
-
currentInstance.#
|
|
418
|
-
{ from:
|
|
416
|
+
"", // ASIS에서 해당 내용을 '제거'하므로 삽입할 텍스트는 없음
|
|
417
|
+
currentInstance.#asisEditorView, // 대상 에디터는 ASIS (현재 소스)
|
|
418
|
+
{ from: asisRangeStart, to: asisRangeStart + text.length }, // ASIS에서 '삭제될' 범위
|
|
419
419
|
currentInstance
|
|
420
420
|
),
|
|
421
421
|
side: 1
|