@moda-editor/core 0.1.3 → 0.2.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.
Files changed (252) hide show
  1. package/dist/collab.d.ts +61 -0
  2. package/dist/collab.d.ts.map +1 -0
  3. package/dist/collab.js +67 -0
  4. package/dist/collab.js.map +1 -0
  5. package/dist/commands.d.ts +11 -0
  6. package/dist/commands.d.ts.map +1 -1
  7. package/dist/commands.js +48 -4
  8. package/dist/commands.js.map +1 -1
  9. package/dist/conformance/editor-base.d.ts +7 -0
  10. package/dist/conformance/editor-base.d.ts.map +1 -0
  11. package/dist/conformance/editor-base.js +304 -0
  12. package/dist/conformance/editor-base.js.map +1 -0
  13. package/dist/conformance/editor-codeblock.d.ts +8 -0
  14. package/dist/conformance/editor-codeblock.d.ts.map +1 -0
  15. package/dist/conformance/editor-codeblock.js +402 -0
  16. package/dist/conformance/editor-codeblock.js.map +1 -0
  17. package/dist/conformance/editor-ime.d.ts +7 -0
  18. package/dist/conformance/editor-ime.d.ts.map +1 -0
  19. package/dist/conformance/editor-ime.js +166 -0
  20. package/dist/conformance/editor-ime.js.map +1 -0
  21. package/dist/conformance/editor-input.d.ts +8 -0
  22. package/dist/conformance/editor-input.d.ts.map +1 -0
  23. package/dist/conformance/editor-input.js +676 -0
  24. package/dist/conformance/editor-input.js.map +1 -0
  25. package/dist/conformance/editor-nodeview.d.ts +7 -0
  26. package/dist/conformance/editor-nodeview.d.ts.map +1 -0
  27. package/dist/conformance/editor-nodeview.js +169 -0
  28. package/dist/conformance/editor-nodeview.js.map +1 -0
  29. package/dist/conformance/editor-overlay.d.ts +8 -0
  30. package/dist/conformance/editor-overlay.d.ts.map +1 -0
  31. package/dist/conformance/editor-overlay.js +345 -0
  32. package/dist/conformance/editor-overlay.js.map +1 -0
  33. package/dist/conformance/fixtures.d.ts +4 -0
  34. package/dist/conformance/fixtures.d.ts.map +1 -0
  35. package/dist/conformance/fixtures.js +15 -0
  36. package/dist/conformance/fixtures.js.map +1 -0
  37. package/dist/conformance/index.d.ts +14 -0
  38. package/dist/conformance/index.d.ts.map +1 -0
  39. package/dist/conformance/index.js +28 -0
  40. package/dist/conformance/index.js.map +1 -0
  41. package/dist/conformance/types.d.ts +51 -0
  42. package/dist/conformance/types.d.ts.map +1 -0
  43. package/dist/conformance/types.js +2 -0
  44. package/dist/conformance/types.js.map +1 -0
  45. package/dist/conformance/widget.d.ts +3 -0
  46. package/dist/conformance/widget.d.ts.map +1 -0
  47. package/dist/conformance/widget.js +49 -0
  48. package/dist/conformance/widget.js.map +1 -0
  49. package/dist/conformance.d.ts +1 -58
  50. package/dist/conformance.d.ts.map +1 -1
  51. package/dist/conformance.js +3 -1748
  52. package/dist/conformance.js.map +1 -1
  53. package/dist/editor/editor.d.ts.map +1 -1
  54. package/dist/editor/editor.js +18 -1
  55. package/dist/editor/editor.js.map +1 -1
  56. package/dist/editor/extension.d.ts +47 -3
  57. package/dist/editor/extension.d.ts.map +1 -1
  58. package/dist/features/ace.d.ts +4 -0
  59. package/dist/features/ace.d.ts.map +1 -1
  60. package/dist/features/ace.js +59 -20
  61. package/dist/features/ace.js.map +1 -1
  62. package/dist/features/block-dnd.d.ts +7 -0
  63. package/dist/features/block-dnd.d.ts.map +1 -0
  64. package/dist/features/block-dnd.js +207 -0
  65. package/dist/features/block-dnd.js.map +1 -0
  66. package/dist/features/code-block.d.ts +9 -84
  67. package/dist/features/code-block.d.ts.map +1 -1
  68. package/dist/features/code-block.js +84 -1034
  69. package/dist/features/code-block.js.map +1 -1
  70. package/dist/features/code-context.d.ts +81 -0
  71. package/dist/features/code-context.d.ts.map +1 -0
  72. package/dist/features/code-context.js +322 -0
  73. package/dist/features/code-context.js.map +1 -0
  74. package/dist/features/code-edit.d.ts +50 -0
  75. package/dist/features/code-edit.d.ts.map +1 -0
  76. package/dist/features/code-edit.js +412 -0
  77. package/dist/features/code-edit.js.map +1 -0
  78. package/dist/features/code-format.d.ts +21 -0
  79. package/dist/features/code-format.d.ts.map +1 -0
  80. package/dist/features/code-format.js +410 -0
  81. package/dist/features/code-format.js.map +1 -0
  82. package/dist/features/doc.d.ts +16 -0
  83. package/dist/features/doc.d.ts.map +1 -1
  84. package/dist/features/doc.js +154 -2
  85. package/dist/features/doc.js.map +1 -1
  86. package/dist/features/heading.d.ts.map +1 -1
  87. package/dist/features/heading.js.map +1 -1
  88. package/dist/features/image.d.ts +3 -1
  89. package/dist/features/image.d.ts.map +1 -1
  90. package/dist/features/image.js +27 -9
  91. package/dist/features/image.js.map +1 -1
  92. package/dist/features/index.d.ts +7 -0
  93. package/dist/features/index.d.ts.map +1 -1
  94. package/dist/features/index.js +16 -0
  95. package/dist/features/index.js.map +1 -1
  96. package/dist/features/inline-style.d.ts.map +1 -1
  97. package/dist/features/inline-style.js +4 -1
  98. package/dist/features/inline-style.js.map +1 -1
  99. package/dist/features/link.d.ts.map +1 -1
  100. package/dist/features/link.js +1 -1
  101. package/dist/features/link.js.map +1 -1
  102. package/dist/features/markdown.d.ts +15 -0
  103. package/dist/features/markdown.d.ts.map +1 -0
  104. package/dist/features/markdown.js +80 -0
  105. package/dist/features/markdown.js.map +1 -0
  106. package/dist/features/marks.d.ts.map +1 -1
  107. package/dist/features/marks.js +49 -4
  108. package/dist/features/marks.js.map +1 -1
  109. package/dist/features/mention.d.ts +30 -0
  110. package/dist/features/mention.d.ts.map +1 -0
  111. package/dist/features/mention.js +89 -0
  112. package/dist/features/mention.js.map +1 -0
  113. package/dist/features/script.d.ts.map +1 -1
  114. package/dist/features/script.js.map +1 -1
  115. package/dist/features/search.d.ts +76 -0
  116. package/dist/features/search.d.ts.map +1 -0
  117. package/dist/features/search.js +281 -0
  118. package/dist/features/search.js.map +1 -0
  119. package/dist/features/shared.d.ts +69 -0
  120. package/dist/features/shared.d.ts.map +1 -0
  121. package/dist/features/shared.js +272 -0
  122. package/dist/features/shared.js.map +1 -0
  123. package/dist/features/table.d.ts.map +1 -1
  124. package/dist/features/table.js +17 -3
  125. package/dist/features/table.js.map +1 -1
  126. package/dist/features/testkit.d.ts.map +1 -1
  127. package/dist/features/testkit.js +1 -1
  128. package/dist/features/testkit.js.map +1 -1
  129. package/dist/history.d.ts.map +1 -1
  130. package/dist/history.js +65 -20
  131. package/dist/history.js.map +1 -1
  132. package/dist/index.d.ts +21 -7
  133. package/dist/index.d.ts.map +1 -1
  134. package/dist/index.js +18 -6
  135. package/dist/index.js.map +1 -1
  136. package/dist/model/schema.d.ts.map +1 -1
  137. package/dist/model/schema.js +2 -1
  138. package/dist/model/schema.js.map +1 -1
  139. package/dist/parse/html.d.ts.map +1 -1
  140. package/dist/parse/html.js +38 -6
  141. package/dist/parse/html.js.map +1 -1
  142. package/dist/parse/sanitize.d.ts.map +1 -1
  143. package/dist/parse/sanitize.js +4 -1
  144. package/dist/parse/sanitize.js.map +1 -1
  145. package/dist/presets/highlight.d.ts.map +1 -1
  146. package/dist/presets/highlight.js +1 -4
  147. package/dist/presets/highlight.js.map +1 -1
  148. package/dist/presets/markdown-parse.d.ts +13 -0
  149. package/dist/presets/markdown-parse.d.ts.map +1 -0
  150. package/dist/presets/markdown-parse.js +398 -0
  151. package/dist/presets/markdown-parse.js.map +1 -0
  152. package/dist/presets/markdown.d.ts +46 -0
  153. package/dist/presets/markdown.d.ts.map +1 -0
  154. package/dist/presets/markdown.js +196 -0
  155. package/dist/presets/markdown.js.map +1 -0
  156. package/dist/state/apply.d.ts.map +1 -1
  157. package/dist/state/apply.js +25 -13
  158. package/dist/state/apply.js.map +1 -1
  159. package/dist/state/delete-ops.d.ts +34 -0
  160. package/dist/state/delete-ops.d.ts.map +1 -0
  161. package/dist/state/delete-ops.js +204 -0
  162. package/dist/state/delete-ops.js.map +1 -0
  163. package/dist/state/input-rules.d.ts +30 -0
  164. package/dist/state/input-rules.d.ts.map +1 -0
  165. package/dist/state/input-rules.js +70 -0
  166. package/dist/state/input-rules.js.map +1 -0
  167. package/dist/state/insert-ops.d.ts +54 -0
  168. package/dist/state/insert-ops.d.ts.map +1 -0
  169. package/dist/state/insert-ops.js +186 -0
  170. package/dist/state/insert-ops.js.map +1 -0
  171. package/dist/state/list-ops.d.ts +46 -0
  172. package/dist/state/list-ops.d.ts.map +1 -0
  173. package/dist/state/list-ops.js +231 -0
  174. package/dist/state/list-ops.js.map +1 -0
  175. package/dist/state/navigate.d.ts.map +1 -1
  176. package/dist/state/navigate.js +3 -1
  177. package/dist/state/navigate.js.map +1 -1
  178. package/dist/state/resolve-insert.d.ts +55 -0
  179. package/dist/state/resolve-insert.d.ts.map +1 -0
  180. package/dist/state/resolve-insert.js +118 -0
  181. package/dist/state/resolve-insert.js.map +1 -0
  182. package/dist/state/slice-ops.d.ts +46 -0
  183. package/dist/state/slice-ops.d.ts.map +1 -0
  184. package/dist/state/slice-ops.js +150 -0
  185. package/dist/state/slice-ops.js.map +1 -0
  186. package/dist/state/state.d.ts +6 -1
  187. package/dist/state/state.d.ts.map +1 -1
  188. package/dist/state/state.js +10 -0
  189. package/dist/state/state.js.map +1 -1
  190. package/dist/state/transaction.d.ts +43 -49
  191. package/dist/state/transaction.d.ts.map +1 -1
  192. package/dist/state/transaction.js +62 -858
  193. package/dist/state/transaction.js.map +1 -1
  194. package/dist/styles.css +401 -213
  195. package/dist/theme.d.ts +29 -0
  196. package/dist/theme.d.ts.map +1 -0
  197. package/dist/theme.js +347 -0
  198. package/dist/theme.js.map +1 -0
  199. package/dist/view/adapter.d.ts +84 -0
  200. package/dist/view/adapter.d.ts.map +1 -0
  201. package/dist/view/adapter.js +76 -0
  202. package/dist/view/adapter.js.map +1 -0
  203. package/dist/view/caret.d.ts +25 -0
  204. package/dist/view/caret.d.ts.map +1 -0
  205. package/dist/view/caret.js +43 -0
  206. package/dist/view/caret.js.map +1 -0
  207. package/dist/view/decoration.d.ts +9 -0
  208. package/dist/view/decoration.d.ts.map +1 -0
  209. package/dist/view/decoration.js +214 -0
  210. package/dist/view/decoration.js.map +1 -0
  211. package/dist/view/dirty-keys.d.ts +18 -0
  212. package/dist/view/dirty-keys.d.ts.map +1 -0
  213. package/dist/view/dirty-keys.js +31 -0
  214. package/dist/view/dirty-keys.js.map +1 -0
  215. package/dist/view/dom.d.ts.map +1 -1
  216. package/dist/view/dom.js +7 -5
  217. package/dist/view/dom.js.map +1 -1
  218. package/dist/view/hook-ctx.d.ts +32 -0
  219. package/dist/view/hook-ctx.d.ts.map +1 -0
  220. package/dist/view/hook-ctx.js +64 -0
  221. package/dist/view/hook-ctx.js.map +1 -0
  222. package/dist/view/ime.d.ts +72 -0
  223. package/dist/view/ime.d.ts.map +1 -0
  224. package/dist/view/ime.js +185 -0
  225. package/dist/view/ime.js.map +1 -0
  226. package/dist/view/input.d.ts +12 -12
  227. package/dist/view/input.d.ts.map +1 -1
  228. package/dist/view/input.js +156 -535
  229. package/dist/view/input.js.map +1 -1
  230. package/dist/view/keys.d.ts +25 -0
  231. package/dist/view/keys.d.ts.map +1 -0
  232. package/dist/view/keys.js +106 -0
  233. package/dist/view/keys.js.map +1 -0
  234. package/dist/view/line-nav.d.ts +13 -0
  235. package/dist/view/line-nav.d.ts.map +1 -0
  236. package/dist/view/line-nav.js +114 -0
  237. package/dist/view/line-nav.js.map +1 -0
  238. package/dist/view/mount.d.ts.map +1 -1
  239. package/dist/view/mount.js +43 -39
  240. package/dist/view/mount.js.map +1 -1
  241. package/dist/view/node-selection.d.ts +33 -0
  242. package/dist/view/node-selection.d.ts.map +1 -0
  243. package/dist/view/node-selection.js +107 -0
  244. package/dist/view/node-selection.js.map +1 -0
  245. package/dist/view/render.d.ts +4 -1
  246. package/dist/view/render.d.ts.map +1 -1
  247. package/dist/view/render.js +22 -3
  248. package/dist/view/render.js.map +1 -1
  249. package/dist/view/serialize.d.ts.map +1 -1
  250. package/dist/view/serialize.js +14 -5
  251. package/dist/view/serialize.js.map +1 -1
  252. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../src/conformance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../src/conformance.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,uCAAuC;AACvC,cAAc,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/editor/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/editor/editor.ts"],"names":[],"mappings":"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"}
@@ -108,9 +108,26 @@ class EditorImpl {
108
108
  this.schema = options.schema ?? createSchema({ nodes, marks });
109
109
  this.editable = options.editable ?? true;
110
110
  this.onImageUpload = options.onImageUpload;
111
+ // 문서 끝 보장 — 마지막 블록이 문단이 아니면 빈 문단을 붙인다.
112
+ // 콜아웃 같은 커스텀 블록이 끝에 있으면 아래에 캐럿을 둘 곳이 없다.
113
+ // 편집 중 유지는 docFeature의 trailingParagraph 플러그인이 담당하고,
114
+ // 여기서는 초기 문서에만 같은 보장을 적용한다 (dispatch는 무변경 tr을
115
+ // 걸러 appendTransaction까지 못 가므로 생성 시엔 직접 보정한다).
116
+ let initDoc = options.doc ?? this.defaultDoc();
117
+ if (this.schema.nodeSpec("paragraph") &&
118
+ initDoc.content?.[initDoc.content.length - 1]?.type !== "paragraph") {
119
+ initDoc = {
120
+ ...initDoc,
121
+ content: [
122
+ ...(initDoc.content ?? []),
123
+ // {type, attrs, content} 정규 형태 — yToNode 원격 노드와 동형
124
+ { ...this.schema.node("paragraph"), content: [] },
125
+ ],
126
+ };
127
+ }
111
128
  this._state = createState({
112
129
  schema: this.schema,
113
- doc: options.doc ?? this.defaultDoc(),
130
+ doc: initDoc,
114
131
  plugins,
115
132
  });
116
133
  if (options.events) {
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/editor/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/editor/editor.ts"],"names":[],"mappings":"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"}
@@ -135,11 +135,48 @@ export interface InputHooks {
135
135
  * 디스패치할 때 쓴다 (핸들 드래그 → setNodeAttr 등).
136
136
  */
137
137
  paintOverlay?(el: HTMLElement, state: EditorState, editor: Editor): void;
138
+ /**
139
+ * 입력 바인딩 해제 시 오버레이 정리 — paintOverlay가 만든 오버레이
140
+ * DOM(.me-gutter/.me-codeui/…)과 ResizeObserver 같은 구독을 해제한다.
141
+ * 안 구현하면 옵저버가 el을 붙잡아 GC가 회수하지 못한다.
142
+ */
143
+ destroyOverlay?(el: HTMLElement): void;
138
144
  }
139
145
  /**
140
- * 플러그인 — 트랜잭션 파이프라인 훅 + 전용 상태.
141
- * PM plugin과 같은 역할이지만 뷰 계층(view/decorations)은 어댑터가
142
- * 가지므로 코어 플러그인은 상태 쪽 책임만 가진다.
146
+ * 뷰 데코레이션 속성 — 렌더 트리의 DOM attrs에 병합된다.
147
+ * class는 공백으로 연결하고 나머지 키는 덮어쓴다.
148
+ */
149
+ export interface DecorationAttrs {
150
+ class?: string;
151
+ style?: string;
152
+ [k: string]: string | undefined;
153
+ }
154
+ /**
155
+ * 뷰 데코레이션 — doc을 바꾸지 않는 표시 계층 (PM Decoration 대응).
156
+ *
157
+ * inline — 텍스트 범위를 .me-deco span으로 감싼다. 텍스트 홀더
158
+ * *내부*를 쪼개므로 자식 수가 안 바뀌고 DOM↔doc 오프셋
159
+ * 매핑(텍스트 누적 순회)이 유지된다 — codeHighlighter의
160
+ * 토큰 스팬과 같은 안전 조건.
161
+ * node — 블록 최외곽 요소의 attrs에 병합 (배경·테두리 등).
162
+ *
163
+ * 위젯 데코레이션은 의도적으로 없다 — `.me-editor` 직계 자식이
164
+ * AST와 1:1이어야 하므로 문서 부수 DOM은 paintOverlay가 담당한다.
165
+ */
166
+ export type Decoration = {
167
+ type: "inline";
168
+ from: Point;
169
+ to: Point;
170
+ attrs: DecorationAttrs;
171
+ } | {
172
+ type: "node";
173
+ path: readonly number[];
174
+ attrs: DecorationAttrs;
175
+ };
176
+ /**
177
+ * 플러그인 — 트랜잭션 파이프라인 훅 + 전용 상태 + 뷰 데코레이션.
178
+ * PM plugin과 같은 역할이지만 뷰 계층 렌더는 어댑터가 가지므로
179
+ * 코어 플러그인은 상태 계산 + 데코레이션 기술만 담당한다.
143
180
  */
144
181
  export interface Plugin {
145
182
  readonly key: string;
@@ -154,6 +191,13 @@ export interface Plugin {
154
191
  init?(state: EditorState): unknown;
155
192
  /** tr 적용 시 전용 상태 갱신 — 반환값이 새 pluginState[key] */
156
193
  apply?(tr: Transaction, value: unknown, prevState: EditorState, state: EditorState): unknown;
194
+ /**
195
+ * 뷰 데코레이션 — 매 렌더마다 상태로부터 계산한다 (순수 함수여야 함).
196
+ * pluginState 기반 표시(검색 매치·린트 밑줄·협업 캐럿 등)를
197
+ * doc 변경 없이 그리는 공식 경로. 반환값은 `state.decorations()`에
198
+ * 합산돼 렌더러로 전달된다.
199
+ */
200
+ decorations?(state: EditorState): readonly Decoration[];
157
201
  }
158
202
  /** 기능 번들 — 개발자가 주입하는 단위 */
159
203
  export interface Extension {
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/editor/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/editor/extension.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,10 @@
4
4
  * Ace의 active-line 배경·거터 강조를 CSS가 그리고, 라인번호 거터·
5
5
  * 코드 줄번호·언어 라벨은 .me-gutter 오버레이 DOM으로 그린다
6
6
  * (편집 영역 안의 생성 콘텐츠는 Chrome 캐럿 경계를 깨뜨린다).
7
+ *
8
+ * 뷰 상태는 aceViews(WeakMap<HTMLElement, AceViewState>)에 캡슐화 —
9
+ * 시그니처·거터 타깃·ResizeObserver가 한 엔트리로 묶이고,
10
+ * destroyOverlay에서 옵저버 해제 + 거터 제거로 정리한다.
7
11
  */
8
12
  export declare const aceFeature: import("./feature.js").Feature;
9
13
  //# sourceMappingURL=ace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ace.d.ts","sourceRoot":"","sources":["../../src/features/ace.ts"],"names":[],"mappings":"AAkKA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,gCAsCrB,CAAC"}
1
+ {"version":3,"file":"ace.d.ts","sourceRoot":"","sources":["../../src/features/ace.ts"],"names":[],"mappings":"AA8MA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,gCA2CrB,CAAC"}
@@ -1,6 +1,13 @@
1
1
  import { defineFeature } from "./feature.js";
2
- const gutterSig = new WeakMap();
3
- const gutterTargets = new WeakMap();
2
+ const aceViews = new WeakMap();
3
+ function aceView(el) {
4
+ let s = aceViews.get(el);
5
+ if (!s) {
6
+ s = { sig: null, targets: [], observer: null };
7
+ aceViews.set(el, s);
8
+ }
9
+ return s;
10
+ }
4
11
  /**
5
12
  * 라인번호·언어 라벨 오버레이 — contenteditable "안"의 ::before/
6
13
  * ::marker·절대위치 요소는 Chrome의 Home/End 줄 경계 계산을 깨뜨려
@@ -13,6 +20,7 @@ function syncGutter(el, state, activeBlock, activeLine) {
13
20
  const root = el.parentElement;
14
21
  if (!root)
15
22
  return;
23
+ const view = aceView(el);
16
24
  let gut = root.querySelector(":scope > .me-gutter");
17
25
  if (!gut) {
18
26
  gut = el.ownerDocument.createElement("div");
@@ -20,7 +28,12 @@ function syncGutter(el, state, activeBlock, activeLine) {
20
28
  gut.setAttribute("aria-hidden", "true");
21
29
  root.appendChild(gut);
22
30
  // 창 리사이즈·비동기 폰트 로드 등 doc과 무관한 리플로우도 재배치
23
- new ResizeObserver(() => gutterSig.delete(el)).observe(el);
31
+ if (!view.observer) {
32
+ view.observer = new ResizeObserver(() => {
33
+ view.sig = null;
34
+ });
35
+ view.observer.observe(el);
36
+ }
24
37
  }
25
38
  const cur = {
26
39
  doc: state.doc,
@@ -30,7 +43,7 @@ function syncGutter(el, state, activeBlock, activeLine) {
30
43
  n: el.childElementCount,
31
44
  st: el.scrollTop,
32
45
  };
33
- const sig = gutterSig.get(el);
46
+ const sig = view.sig;
34
47
  const relayout = !sig ||
35
48
  sig.doc !== cur.doc ||
36
49
  sig.h !== cur.h ||
@@ -39,7 +52,7 @@ function syncGutter(el, state, activeBlock, activeLine) {
39
52
  sig.n !== cur.n ||
40
53
  sig.st !== cur.st;
41
54
  if (relayout) {
42
- gutterSig.set(el, cur);
55
+ view.sig = cur;
43
56
  const base = root.getBoundingClientRect();
44
57
  const elR = el.getBoundingClientRect();
45
58
  const targets = [];
@@ -78,33 +91,49 @@ function syncGutter(el, state, activeBlock, activeLine) {
78
91
  if (lang && pre !== activeBlock && !inNodeView) {
79
92
  emit("me-glang", lang, pr.top - base.top + 4, pr.right - base.left - 8, null, null);
80
93
  }
81
- // 코드 줄 번호 — .me-cl 줄 래퍼마다 1씩 (기존 CSS 카운터 계약)
82
- const lines = pre.querySelectorAll(".me-cl");
83
- for (let j = 0; j < lines.length; j++) {
84
- const cl = lines[j];
85
- const lr = cl.getBoundingClientRect();
86
- emit("me-gnum me-gcode", String(j + 1), lr.top - base.top, pr.left - base.left, null, cl);
94
+ // 코드 줄 번호 — 시각 줄마다 1씩 (기존 CSS 카운터 계약).
95
+ // .me-cl은 텍스트 리프 단위로도 끊긴다 — 마크가 벗겨진 채
96
+ // 분할된 인접 텍스트 노드가 한 줄에 여러 .me-cl을 만들 수
97
+ // 있다. 개행은 줄 끝 .me-cl의 실제 텍스트로 남는 계약이라
98
+ // (render.ts) \n으로 끝나는 조각이 줄 경계다
99
+ const lines = Array.from(pre.querySelectorAll(".me-cl"));
100
+ let lineNo = 0;
101
+ let curLine = [];
102
+ const flushLine = () => {
103
+ if (!curLine.length)
104
+ return;
105
+ lineNo += 1;
106
+ const lr = curLine[0].getBoundingClientRect();
107
+ emit("me-gnum me-gcode", String(lineNo), lr.top - base.top, pr.left - base.left, null, curLine);
108
+ curLine = [];
109
+ };
110
+ for (const cl of lines) {
111
+ curLine.push(cl);
112
+ if (cl.textContent?.endsWith("\n"))
113
+ flushLine();
87
114
  }
115
+ flushLine();
88
116
  }
89
117
  continue; // pre 자체에는 블록 번호를 찍지 않는다 (:not(pre) 계약)
90
118
  }
91
119
  const r = c.getBoundingClientRect();
92
120
  // 번호를 블록 첫 줄 세로에 맞춘다 — 제목·리스트 높이 차이 흡수
93
- const lh = el.ownerDocument.defaultView
94
- ?.getComputedStyle(c)
95
- .lineHeight;
121
+ const lh = el.ownerDocument.defaultView?.getComputedStyle(c).lineHeight;
96
122
  emit("me-gnum", String(i + 1), r.top - base.top, elR.left - base.left, lh && lh !== "normal" ? lh : null, c);
97
123
  }
98
124
  while (gut.children.length > used) {
99
125
  gut.lastElementChild?.remove();
100
126
  }
101
- gutterTargets.set(gut, targets);
127
+ view.targets = targets;
102
128
  }
103
129
  // 활성 번호 강조 — doc이 같아도 캐럿은 움직이므로 매 paint 갱신
104
- const targets = gutterTargets.get(gut) ?? [];
130
+ const targets = view.targets;
105
131
  for (let i = 0; i < gut.children.length; i++) {
106
132
  const t = targets[i];
107
- gut.children[i].classList.toggle("is-active", t != null && (t === activeBlock || t === activeLine));
133
+ gut.children[i].classList.toggle("is-active", t != null &&
134
+ (Array.isArray(t)
135
+ ? activeLine != null && t.includes(activeLine)
136
+ : t === activeBlock || t === activeLine));
108
137
  }
109
138
  }
110
139
  /**
@@ -113,6 +142,10 @@ function syncGutter(el, state, activeBlock, activeLine) {
113
142
  * Ace의 active-line 배경·거터 강조를 CSS가 그리고, 라인번호 거터·
114
143
  * 코드 줄번호·언어 라벨은 .me-gutter 오버레이 DOM으로 그린다
115
144
  * (편집 영역 안의 생성 콘텐츠는 Chrome 캐럿 경계를 깨뜨린다).
145
+ *
146
+ * 뷰 상태는 aceViews(WeakMap<HTMLElement, AceViewState>)에 캡슐화 —
147
+ * 시그니처·거터 타깃·ResizeObserver가 한 엔트리로 묶이고,
148
+ * destroyOverlay에서 옵저버 해제 + 거터 제거로 정리한다.
116
149
  */
117
150
  export const aceFeature = defineFeature({
118
151
  name: "ace",
@@ -127,9 +160,7 @@ export const aceFeature = defineFeature({
127
160
  // 셀렉션 앵커에서 올라가 에디터의 직계 자식을 찾는다 — 직계
128
161
  // 자식이 곧 최상위 doc 블록이다. 콜아웃 같은 노드 뷰는 래퍼가
129
162
  // data-me-path를 갖지 않아도 직계 자식이므로 그대로 취한다
130
- const near = node.nodeType === 1
131
- ? node
132
- : node.parentElement;
163
+ const near = node.nodeType === 1 ? node : node.parentElement;
133
164
  let host = near;
134
165
  while (host && host.parentElement !== el) {
135
166
  host = host.parentElement;
@@ -150,6 +181,14 @@ export const aceFeature = defineFeature({
150
181
  syncGutter(el, state, active, activeLine);
151
182
  });
152
183
  },
184
+ destroyOverlay(el) {
185
+ // 바인딩 해제 — 거터 DOM 제거 + 리사이즈 옵저버 해제.
186
+ // WeakMap 엔트리도 지워 재마운트가 깨끗한 상태로 시작하게 한다
187
+ const view = aceViews.get(el);
188
+ view?.observer?.disconnect();
189
+ el.parentElement?.querySelector(":scope > .me-gutter")?.remove();
190
+ aceViews.delete(el);
191
+ },
153
192
  },
154
193
  });
155
194
  //# sourceMappingURL=ace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ace.js","sourceRoot":"","sources":["../../src/features/ace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ace.js","sourceRoot":"","sources":["../../src/features/ace.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 블록 드래그&드롭 피처 — `moveBlock(from, to)` 커맨드 + 호버 핸들/
3
+ * 드롭 라인 오버레이. `to`는 제거 전 기준 삽입 경계다
4
+ * (예: 블록0을 블록2 뒤로 → moveBlock(0, 3)).
5
+ */
6
+ export declare const blockDndFeature: import("./feature.js").Feature;
7
+ //# sourceMappingURL=block-dnd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-dnd.d.ts","sourceRoot":"","sources":["../../src/features/block-dnd.ts"],"names":[],"mappings":"AAmLA;;;;GAIG;AACH,eAAO,MAAM,eAAe,gCAwC1B,CAAC"}