@moda-editor/core 0.3.2 → 0.3.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"marks.d.ts","sourceRoot":"","sources":["../../src/features/marks.ts"],"names":[],"mappings":"AAmEA;;;GAGG;AACH,eAAO,MAAM,YAAY,gCA2FvB,CAAC"}
1
+ {"version":3,"file":"marks.d.ts","sourceRoot":"","sources":["../../src/features/marks.ts"],"names":[],"mappings":"AAyFA;;;GAGG;AACH,eAAO,MAAM,YAAY,gCA2FvB,CAAC"}
@@ -60,6 +60,28 @@ const codeChipCleanup = {
60
60
  return follow;
61
61
  },
62
62
  };
63
+ /**
64
+ * b/strong이 명시적으로 비볼드 font-weight를 선언하면 bold로 해석하지
65
+ * 않는다 — Google Docs 클립보드는 페이로드 전체를
66
+ * `<b style="font-weight:normal">`로 감싸므로, 태그만 보면 문서
67
+ * 전체가 bold로 물든다. 선언이 없거나 볼드 계열이면 undefined를
68
+ * 반환해 규칙을 통과시키고, 비볼드 선언이면 false로 거부한다
69
+ * (getAttrs의 false = parseDOM 매칭 실패 계약).
70
+ * mso-bidi-font-weight(RTL용)는 font-weight가 아니라 건드리지
71
+ * 않는다 — 워드의 `<b style='mso-bidi-font-weight:normal'>`는
72
+ * 여전히 bold다.
73
+ */
74
+ const notBoldByStyle = (el) => {
75
+ const w = el.style
76
+ ?.getPropertyValue("font-weight")
77
+ ?.trim()
78
+ .toLowerCase();
79
+ if (!w)
80
+ return undefined;
81
+ // 숫자 weight는 500 미만이면 비볼드, 키워드는 normal/lighter만 비볼드
82
+ const nonBold = /^(?:normal|lighter|initial|inherit|unset|[1-4]00)$/.test(w);
83
+ return nonBold ? false : undefined;
84
+ };
63
85
  /**
64
86
  * 기본 인라인 마크 — 굵게·기울임·밑줄·취소선·인라인 코드.
65
87
  * 마크다운 fence 입력 규칙과 Mod-키 토글을 함께 묶는다.
@@ -71,8 +93,8 @@ export const marksFeature = defineFeature({
71
93
  bold: {
72
94
  toDOM: () => ({ tag: "strong" }),
73
95
  parseDOM: [
74
- { tag: "strong" },
75
- { tag: "b" },
96
+ { tag: "strong", getAttrs: notBoldByStyle },
97
+ { tag: "b", getAttrs: notBoldByStyle },
76
98
  // 구글독스/워드는 font-weight 스타일로 온다
77
99
  { style: "font-weight=bold|[6-9]00", tag: "span,b,strong" },
78
100
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"marks.js","sourceRoot":"","sources":["../../src/features/marks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"marks.js","sourceRoot":"","sources":["../../src/features/marks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * 외부 클립보드 페이로드 픽스처 — MS Word / Google Docs 복사물의
3
+ * 실제 출력 형태를 축약 재현한다 (네임스페이스·조건부 주석·Mso*
4
+ * 클래스·과도한 인라인 스타일·래퍼 관례를 모두 포함).
5
+ *
6
+ * 단위 테스트(parse-external.test.ts)와 e2e(editor.spec.ts의
7
+ * 붙여넣기 스크롤 스펙)가 같은 페이로드를 공유한다 — 현실성이
8
+ * 달라지면 두 계층이 함께 깨지므로 여기 한 곳만 수정한다.
9
+ */
10
+ /**
11
+ * MS Word(데스크톱, 한국어 로케일)의 복사 페이로드 관례:
12
+ * - o:/w:/m: 네임스페이스와 `<xml>` 조건부 주석 블록
13
+ * - `<o:p>` 빈 채움 태그, StartFragment/EndFragment 주석
14
+ * - MsoNormal/MsoListParagraphCxSpFirst~/MsoTableGrid 클래스와
15
+ * mso-* 인라인 스타일 난사
16
+ * - 불릿 목록은 ul/li가 아니라 MsoListParagraph + downlevel-revealed
17
+ * 조건부 주석 속 글리프(`·`)로 표현된다 — 실제 브라우저에는
18
+ * 주석 두 개 사이의 스팬이 보이는 DOM으로 남는다
19
+ * - 표 안에 표가 중첩될 수 있다
20
+ */
21
+ export declare const MS_WORD_PASTE = "<html xmlns:o=\"urn:schemas-microsoft-com:office:office\"\nxmlns:w=\"urn:schemas-microsoft-com:office:word\"\nxmlns:m=\"http://schemas.microsoft.com/office/2004/12/omml\"\nxmlns=\"http://www.w3.org/TR/REC-html40\">\n<head>\n<meta http-equiv=Content-Type content=\"text/html; charset=utf-8\">\n<meta name=ProgId content=Word.Document>\n<meta name=Generator content=\"Microsoft Word 15\">\n<!--[if gte mso 9]><xml>\n<o:OfficeDocumentSettings><o:AllowPNG/></o:OfficeDocumentSettings>\n</xml><![endif]-->\n<!--[if gte mso 9]><xml>\n<w:WordDocument><w:View>Normal</w:View><w:Zoom>0</w:Zoom>\n<w:TrackChanges/><w:PunctuationKerning/></w:WordDocument>\n</xml><![endif]-->\n<style>\n<!--\np.MsoNormal, li.MsoNormal, div.MsoNormal\n {margin:0cm;font-size:12.0pt;font-family:\"Cambria\",serif;\n mso-fareast-font-family:\"\uB9D1\uC740 \uACE0\uB515\";}\np.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst\n {margin-top:0cm;margin-right:0cm;margin-bottom:0cm;\n margin-left:36.0pt;text-indent:-18.0pt;}\n-->\n</style>\n</head>\n<body lang=KO link=blue vlink=purple style='tab-interval:40.0pt'>\n<!--StartFragment-->\n<div class=WordSection1>\n<h1 style='mso-outline-level:1'><span style='font-family:\"\uB9D1\uC740 \uACE0\uB515\";\nmso-fareast-font-family:\"\uB9D1\uC740 \uACE0\uB515\";mso-bidi-font-weight:bold'>\uBD84\uAE30 \uD68C\uC758\uB85D</span></h1>\n<p class=MsoNormal><span style='font-size:11.0pt;font-family:\"\uB9D1\uC740 \uACE0\uB515\";\nmso-fareast-font-family:\"\uB9D1\uC740 \uACE0\uB515\"'>\uBCF8\uBB38\uC5D0 <b style='mso-bidi-font-weight:\nnormal'>\uAD75\uC740 \uAC15\uC870</b>\uC640 <i style='mso-bidi-font-style:normal'>\uAE30\uC6B8\uC784\n\uD45C\uD604</i>\uC774 \uC11E\uC5EC \uC788\uB2E4<o:p></o:p></span></p>\n<p class=MsoListParagraphCxSpFirst style='text-indent:-18.0pt;\nmso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:\nSymbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'>\u00B7<span\nstyle='font:7.0pt \"Times New Roman\"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n</span></span><!--[endif]--><span style='font-family:\"\uB9D1\uC740 \uACE0\uB515\"'>\uCCAB \uBC88\uC9F8 \uC548\uAC74\n\uAC80\uD1A0<o:p></o:p></span></p>\n<p class=MsoListParagraphCxSpMiddle style='text-indent:-18.0pt;\nmso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:\nSymbol'>\u00B7<span style='font:7.0pt \"Times New Roman\"'>&nbsp;&nbsp;&nbsp;\n</span></span><!--[endif]--><span style='font-family:\"\uB9D1\uC740 \uACE0\uB515\"'>\uB450 \uBC88\uC9F8 \uC548\uAC74\n\uC2B9\uC778<o:p></o:p></span></p>\n<p class=MsoListParagraphCxSpLast style='text-indent:-18.0pt;\nmso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:\nSymbol'>\u00B7<span style='font:7.0pt \"Times New Roman\"'>&nbsp;&nbsp;&nbsp;\n</span></span><!--[endif]--><span style='font-family:\"\uB9D1\uC740 \uACE0\uB515\"'>\uC138 \uBC88\uC9F8 \uC548\uAC74\n\uBCF4\uB958<o:p></o:p></span></p>\n<table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0\n style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt;\n mso-yfti-tbllook:1184;mso-padding-alt:0cm 5.4pt 0cm 5.4pt'>\n <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'>\n <td width=200 valign=top style='width:150.0pt;border:solid windowtext 1.0pt;\n padding:0cm 5.4pt 0cm 5.4pt'>\n <p class=MsoNormal style='margin-bottom:0cm'><b>\uD56D\uBAA9\uBA85</b></p>\n </td>\n <td width=200 valign=top style='border:solid windowtext 1.0pt'>\n <p class=MsoNormal style='margin-bottom:0cm'><b>\uB2F4\uB2F9\uC790</b></p>\n </td>\n </tr>\n <tr style='mso-yfti-irow:1'>\n <td width=200 valign=top style='border:solid windowtext 1.0pt'>\n <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0\n style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt'>\n <tr><td width=100 valign=top style='border:solid windowtext 1.0pt'>\n <p class=MsoNormal style='margin-bottom:0cm'>\uC911\uCCA9 \uC140</p>\n </td></tr>\n </table>\n </td>\n <td width=200 valign=top style='border:solid windowtext 1.0pt'>\n <p class=MsoNormal style='margin-bottom:0cm'>\uAE40\uB300\uB9AC</p>\n </td>\n </tr>\n</table>\n<p class=MsoNormal><o:p>&nbsp;</o:p></p>\n</div>\n<!--EndFragment-->\n</body>\n</html>";
22
+ /**
23
+ * Google Docs의 복사 페이로드 관례:
24
+ * - 전체를 `<b style="font-weight:normal" id="docs-internal-guid-…">`
25
+ * 가 감싼다 — 태그만 보는 bold 규칙이 있으면 문서 전체가 bold로
26
+ * 물든다 (이 픽스처가 해당 회귀의 red-green 가드)
27
+ * - h1/p/li에 dir="ltr"와 line-height·margin·font 인라인 스타일 난사
28
+ * - 마크는 <b>/<i> 태그가 아니라 span의 font-weight:700 /
29
+ * font-style:italic 선언으로 온다
30
+ * - 리스트는 ul/li + li 안의 p 구조, 표는 inline border 스타일
31
+ */
32
+ export declare const GOOGLE_DOCS_PASTE = "<meta charset=\"utf-8\"><b style=\"font-weight:normal;\"\nid=\"docs-internal-guid-3f0e8a4a-7fff-1a2b-3c4d-5e6f7a8b9c0d\"><h1 dir=\"ltr\"\nstyle=\"line-height:1.38;margin-top:20pt;margin-bottom:6pt;\"><span\nstyle=\"font-size:20pt;font-family:Arial,sans-serif;color:#000000;\nbackground-color:transparent;font-weight:700;font-style:normal;\">\uBD84\uAE30\n\uBCF4\uACE0\uC11C</span></h1><p dir=\"ltr\" style=\"line-height:1.38;margin-top:0pt;\nmargin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial,sans-serif;\ncolor:#000000;background-color:transparent;font-weight:400;\">\uC77C\uBC18 \uBB38\uB2E8\uACFC\n</span><span style=\"font-size:11pt;font-family:Arial,sans-serif;color:#000000;\nfont-weight:700;\">\uAD75\uC740 \uB2E8\uC5B4</span><span style=\"font-size:11pt;\">,\n</span><span style=\"font-size:11pt;font-style:italic;\">\uAE30\uC6B8\uC778 \uB2E8\uC5B4</span><span\nstyle=\"font-size:11pt;\">\uAC00 \uC11E\uC778\uB2E4.</span></p><br><ul style=\"margin-top:0;\nmargin-bottom:0;padding-inline-start:48px;\"><li dir=\"ltr\"\nstyle=\"list-style-type:disc;font-size:11pt;\"><p dir=\"ltr\"\nstyle=\"margin-top:0pt;margin-bottom:0pt;\"><span>\uBAA9\uB85D \uD56D\uBAA9 \uD558\uB098</span></p></li>\n<li dir=\"ltr\" style=\"list-style-type:disc;font-size:11pt;\"><p dir=\"ltr\"\nstyle=\"margin-top:0pt;margin-bottom:0pt;\"><span>\uBAA9\uB85D \uD56D\uBAA9 \uB458</span></p></li>\n</ul><table style=\"border:none;border-collapse:collapse;\"><tbody><tr\nstyle=\"min-height:21pt\"><td style=\"border:solid #000000 1pt;padding:5pt;\">\n<p dir=\"ltr\"><span>\uC140 A</span></p></td><td style=\"border:solid #000000 1pt;\npadding:5pt;\"><p dir=\"ltr\"><span>\uC140 B</span></p></td></tr></tbody></table></b>";
33
+ //# sourceMappingURL=external-pastes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-pastes.d.ts","sourceRoot":"","sources":["../../src/fixtures/external-pastes.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,spIAiFlB,CAAC;AAET;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,qrDAoBgD,CAAC"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * 외부 클립보드 페이로드 픽스처 — MS Word / Google Docs 복사물의
3
+ * 실제 출력 형태를 축약 재현한다 (네임스페이스·조건부 주석·Mso*
4
+ * 클래스·과도한 인라인 스타일·래퍼 관례를 모두 포함).
5
+ *
6
+ * 단위 테스트(parse-external.test.ts)와 e2e(editor.spec.ts의
7
+ * 붙여넣기 스크롤 스펙)가 같은 페이로드를 공유한다 — 현실성이
8
+ * 달라지면 두 계층이 함께 깨지므로 여기 한 곳만 수정한다.
9
+ */
10
+ /**
11
+ * MS Word(데스크톱, 한국어 로케일)의 복사 페이로드 관례:
12
+ * - o:/w:/m: 네임스페이스와 `<xml>` 조건부 주석 블록
13
+ * - `<o:p>` 빈 채움 태그, StartFragment/EndFragment 주석
14
+ * - MsoNormal/MsoListParagraphCxSpFirst~/MsoTableGrid 클래스와
15
+ * mso-* 인라인 스타일 난사
16
+ * - 불릿 목록은 ul/li가 아니라 MsoListParagraph + downlevel-revealed
17
+ * 조건부 주석 속 글리프(`·`)로 표현된다 — 실제 브라우저에는
18
+ * 주석 두 개 사이의 스팬이 보이는 DOM으로 남는다
19
+ * - 표 안에 표가 중첩될 수 있다
20
+ */
21
+ export const MS_WORD_PASTE = `<html xmlns:o="urn:schemas-microsoft-com:office:office"
22
+ xmlns:w="urn:schemas-microsoft-com:office:word"
23
+ xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
24
+ xmlns="http://www.w3.org/TR/REC-html40">
25
+ <head>
26
+ <meta http-equiv=Content-Type content="text/html; charset=utf-8">
27
+ <meta name=ProgId content=Word.Document>
28
+ <meta name=Generator content="Microsoft Word 15">
29
+ <!--[if gte mso 9]><xml>
30
+ <o:OfficeDocumentSettings><o:AllowPNG/></o:OfficeDocumentSettings>
31
+ </xml><![endif]-->
32
+ <!--[if gte mso 9]><xml>
33
+ <w:WordDocument><w:View>Normal</w:View><w:Zoom>0</w:Zoom>
34
+ <w:TrackChanges/><w:PunctuationKerning/></w:WordDocument>
35
+ </xml><![endif]-->
36
+ <style>
37
+ <!--
38
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
39
+ {margin:0cm;font-size:12.0pt;font-family:"Cambria",serif;
40
+ mso-fareast-font-family:"맑은 고딕";}
41
+ p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst
42
+ {margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
43
+ margin-left:36.0pt;text-indent:-18.0pt;}
44
+ -->
45
+ </style>
46
+ </head>
47
+ <body lang=KO link=blue vlink=purple style='tab-interval:40.0pt'>
48
+ <!--StartFragment-->
49
+ <div class=WordSection1>
50
+ <h1 style='mso-outline-level:1'><span style='font-family:"맑은 고딕";
51
+ mso-fareast-font-family:"맑은 고딕";mso-bidi-font-weight:bold'>분기 회의록</span></h1>
52
+ <p class=MsoNormal><span style='font-size:11.0pt;font-family:"맑은 고딕";
53
+ mso-fareast-font-family:"맑은 고딕"'>본문에 <b style='mso-bidi-font-weight:
54
+ normal'>굵은 강조</b>와 <i style='mso-bidi-font-style:normal'>기울임
55
+ 표현</i>이 섞여 있다<o:p></o:p></span></p>
56
+ <p class=MsoListParagraphCxSpFirst style='text-indent:-18.0pt;
57
+ mso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:
58
+ Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family:Symbol'>·<span
59
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
60
+ </span></span><!--[endif]--><span style='font-family:"맑은 고딕"'>첫 번째 안건
61
+ 검토<o:p></o:p></span></p>
62
+ <p class=MsoListParagraphCxSpMiddle style='text-indent:-18.0pt;
63
+ mso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:
64
+ Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
65
+ </span></span><!--[endif]--><span style='font-family:"맑은 고딕"'>두 번째 안건
66
+ 승인<o:p></o:p></span></p>
67
+ <p class=MsoListParagraphCxSpLast style='text-indent:-18.0pt;
68
+ mso-list:l0 level1 lfo1'><!--[if !supportLists]--><span style='font-family:
69
+ Symbol'>·<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;
70
+ </span></span><!--[endif]--><span style='font-family:"맑은 고딕"'>세 번째 안건
71
+ 보류<o:p></o:p></span></p>
72
+ <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
73
+ style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt;
74
+ mso-yfti-tbllook:1184;mso-padding-alt:0cm 5.4pt 0cm 5.4pt'>
75
+ <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes'>
76
+ <td width=200 valign=top style='width:150.0pt;border:solid windowtext 1.0pt;
77
+ padding:0cm 5.4pt 0cm 5.4pt'>
78
+ <p class=MsoNormal style='margin-bottom:0cm'><b>항목명</b></p>
79
+ </td>
80
+ <td width=200 valign=top style='border:solid windowtext 1.0pt'>
81
+ <p class=MsoNormal style='margin-bottom:0cm'><b>담당자</b></p>
82
+ </td>
83
+ </tr>
84
+ <tr style='mso-yfti-irow:1'>
85
+ <td width=200 valign=top style='border:solid windowtext 1.0pt'>
86
+ <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
87
+ style='border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt'>
88
+ <tr><td width=100 valign=top style='border:solid windowtext 1.0pt'>
89
+ <p class=MsoNormal style='margin-bottom:0cm'>중첩 셀</p>
90
+ </td></tr>
91
+ </table>
92
+ </td>
93
+ <td width=200 valign=top style='border:solid windowtext 1.0pt'>
94
+ <p class=MsoNormal style='margin-bottom:0cm'>김대리</p>
95
+ </td>
96
+ </tr>
97
+ </table>
98
+ <p class=MsoNormal><o:p>&nbsp;</o:p></p>
99
+ </div>
100
+ <!--EndFragment-->
101
+ </body>
102
+ </html>`;
103
+ /**
104
+ * Google Docs의 복사 페이로드 관례:
105
+ * - 전체를 `<b style="font-weight:normal" id="docs-internal-guid-…">`
106
+ * 가 감싼다 — 태그만 보는 bold 규칙이 있으면 문서 전체가 bold로
107
+ * 물든다 (이 픽스처가 해당 회귀의 red-green 가드)
108
+ * - h1/p/li에 dir="ltr"와 line-height·margin·font 인라인 스타일 난사
109
+ * - 마크는 <b>/<i> 태그가 아니라 span의 font-weight:700 /
110
+ * font-style:italic 선언으로 온다
111
+ * - 리스트는 ul/li + li 안의 p 구조, 표는 inline border 스타일
112
+ */
113
+ export const GOOGLE_DOCS_PASTE = `<meta charset="utf-8"><b style="font-weight:normal;"
114
+ id="docs-internal-guid-3f0e8a4a-7fff-1a2b-3c4d-5e6f7a8b9c0d"><h1 dir="ltr"
115
+ style="line-height:1.38;margin-top:20pt;margin-bottom:6pt;"><span
116
+ style="font-size:20pt;font-family:Arial,sans-serif;color:#000000;
117
+ background-color:transparent;font-weight:700;font-style:normal;">분기
118
+ 보고서</span></h1><p dir="ltr" style="line-height:1.38;margin-top:0pt;
119
+ margin-bottom:0pt;"><span style="font-size:11pt;font-family:Arial,sans-serif;
120
+ color:#000000;background-color:transparent;font-weight:400;">일반 문단과
121
+ </span><span style="font-size:11pt;font-family:Arial,sans-serif;color:#000000;
122
+ font-weight:700;">굵은 단어</span><span style="font-size:11pt;">,
123
+ </span><span style="font-size:11pt;font-style:italic;">기울인 단어</span><span
124
+ style="font-size:11pt;">가 섞인다.</span></p><br><ul style="margin-top:0;
125
+ margin-bottom:0;padding-inline-start:48px;"><li dir="ltr"
126
+ style="list-style-type:disc;font-size:11pt;"><p dir="ltr"
127
+ style="margin-top:0pt;margin-bottom:0pt;"><span>목록 항목 하나</span></p></li>
128
+ <li dir="ltr" style="list-style-type:disc;font-size:11pt;"><p dir="ltr"
129
+ style="margin-top:0pt;margin-bottom:0pt;"><span>목록 항목 둘</span></p></li>
130
+ </ul><table style="border:none;border-collapse:collapse;"><tbody><tr
131
+ style="min-height:21pt"><td style="border:solid #000000 1pt;padding:5pt;">
132
+ <p dir="ltr"><span>셀 A</span></p></td><td style="border:solid #000000 1pt;
133
+ padding:5pt;"><p dir="ltr"><span>셀 B</span></p></td></tr></tbody></table></b>`;
134
+ //# sourceMappingURL=external-pastes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-pastes.js","sourceRoot":"","sources":["../../src/fixtures/external-pastes.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiFrB,CAAC;AAET;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;8EAoB6C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,SAAS,EAAU,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAQ,MAAM,iBAAiB,CAAC;AAUrD,OAAO,KAAK,EAAS,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAmBnD,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,OAAO,EAAE,IAAI,EAAE,CAAC;IAChB,gBAAgB;IAChB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,YAAY,CAOf;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAC7B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,OAAO,CAEV;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAC7B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,OAAO,CAEV;AAED,qCAAqC;AACrC,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,EAAE,CA4J3D;AAED,2CAA2C;AAC3C,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,SAAS,EAAE,OAAO,GACjB,IAAI,EAAE,CAQR;AAgFD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,CAY5C"}
1
+ {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,SAAS,EAAU,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAQ,MAAM,iBAAiB,CAAC;AAUrD,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAmBnD,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,OAAO,EAAE,IAAI,EAAE,CAAC;IAChB,gBAAgB;IAChB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,YAAY,CAOf;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAC7B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,OAAO,CAEV;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE;IAC7B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD,GAAG,OAAO,CAEV;AAED,qCAAqC;AACrC,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,EAAE,CA4J3D;AAED,2CAA2C;AAC3C,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,SAAS,EAAE,OAAO,GACjB,IAAI,EAAE,CAQR;AAwID;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,CAY5C"}
package/dist/history.js CHANGED
@@ -241,8 +241,63 @@ const historyPlugin = {
241
241
  // 기록 제외 표시 — 협업 계층이 원격 반영 tr에 다는 메타
242
242
  // (collab-yjs의 REMOTE_META와 함께 설정). 원격 편집을 done에
243
243
  // 쌓으면 로컬 undo가 남의 편집을 되돌린다
244
- if (tr.meta["history.skip"])
245
- return h;
244
+ if (tr.meta["history.skip"]) {
245
+ if (!h.done.length && !h.undone.length)
246
+ return h;
247
+ // 원격 스텝도 좌표를 바꾼다 — 저장된 스텝·셀렉션을 그대로 두면
248
+ // undo가 옛 좌표에 적용돼 원격이 쓴 내용을 지우고(역스텝 오적용)
249
+ // 캐럿을 사라진 경로로 복원한다. 엔트리의 스텝·역스텝·셀렉션을
250
+ // 원격 스텝으로 전진 매핑한다 — 위치 매핑이라 겹치는 편집의 의미
251
+ // 병합까지는 하지 않는다 (PM 히스토리 리베이스와 같은 수준의 근사)
252
+ const docs = [prevState.doc];
253
+ for (const s of tr.steps) {
254
+ docs.push(applyStep(docs[docs.length - 1], s));
255
+ }
256
+ const mapP = (p) => tr.steps.reduce((q, s, i) => mapPoint(q, s, docs[i]), p);
257
+ // 스텝의 위치 필드(at/path/range)를 같은 체인으로 옮긴다 —
258
+ // remove의 at이 옛 오프셋에 머물면 원격 삽입물을 대신 지운다
259
+ const mapStep = (s) => {
260
+ switch (s.op) {
261
+ case "insert":
262
+ case "remove":
263
+ case "split":
264
+ case "join":
265
+ return { ...s, at: mapP(s.at) };
266
+ case "setAttr":
267
+ return { ...s, path: mapP({ path: s.path, offset: 0 }).path };
268
+ case "addMark":
269
+ case "removeMark":
270
+ return {
271
+ ...s,
272
+ range: {
273
+ anchor: mapP(s.range.anchor),
274
+ focus: mapP(s.range.focus),
275
+ },
276
+ };
277
+ case "replaceDoc":
278
+ // 통째 교체는 위치 매핑이 성립하지 않는다 — 그대로 둔다
279
+ return s;
280
+ }
281
+ };
282
+ const mapSel = (s) => {
283
+ if (s.type === "text") {
284
+ return { ...s, anchor: mapP(s.anchor), focus: mapP(s.focus) };
285
+ }
286
+ if (s.type === "node") {
287
+ return { ...s, path: mapP({ path: s.path, offset: 0 }).path };
288
+ }
289
+ return s;
290
+ };
291
+ const remap = (e) => ({
292
+ steps: e.steps.map(mapStep),
293
+ inverse: e.inverse.map(mapStep),
294
+ selBefore: mapSel(e.selBefore),
295
+ selAfter: mapSel(e.selAfter),
296
+ group: e.group,
297
+ time: e.time,
298
+ });
299
+ return { done: h.done.map(remap), undone: h.undone.map(remap) };
300
+ }
246
301
  const now = Date.now();
247
302
  const entry = {
248
303
  steps: [...tr.steps],
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/parse/html.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,UAAU,EAAQ,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAa,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAiY5D;;;GAGG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,QAAQ,GACb,UAAU,EAAE,CAMd"}
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/parse/html.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,UAAU,EAAQ,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAa,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAoY5D;;;GAGG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,QAAQ,GACb,UAAU,EAAE,CAMd"}
@@ -286,8 +286,11 @@ class Parser {
286
286
  }));
287
287
  continue;
288
288
  }
289
- // 미매칭 — blockish면 경계, 아니면 투명 언랩
290
- if (BLOCKISH.has(cel.tagName.toLowerCase())) {
289
+ // 미매칭 — blockish면 경계로 내려간다. 인라인 태그래도 블록 자식을
290
+ // 품으면(GDocs의 <b font-weight:normal> 래퍼처럼) 투명 래퍼로
291
+ // 재귀한다 — walkInline으로 평탄화하면 안의 h1·ul·table이 전부
292
+ // 한 문단으로 뭉개진다 (마크 분기의 hasBlockChild와 같은 판정)
293
+ if (BLOCKISH.has(cel.tagName.toLowerCase()) || this.hasBlockChild(cel)) {
291
294
  flush();
292
295
  out.push(...this.walkBlocks(cel, marks, expr));
293
296
  }
@@ -1 +1 @@
1
- {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/parse/html.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/parse/html.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,28 @@ export interface ImeHost {
30
30
  anchor: Point;
31
31
  focus: Point;
32
32
  } | null;
33
+ /**
34
+ * 흡수 flush가 끝난 직후 — 조합 창에 미뤄둔 DOM 쓰기의 커밋 지점.
35
+ * 흡수가 트랜잭션을 만들지 않아(통지 없음) 반드시 호출된다
36
+ */
37
+ onIdle?(): void;
38
+ }
39
+ /** absorbDomText가 DOM·에디터와 상호작용하는 데 필요한 최소 호스트 면 */
40
+ export interface AbsorbHost {
41
+ readonly editor: Editor;
42
+ readonly el: HTMLElement;
43
+ readonly dirtyPaths: Set<string>;
33
44
  }
45
+ /**
46
+ * 캐럿 리프의 DOM 텍스트를 doc에 흡수한다 — IME 커밋 흡수와
47
+ * beforeinput 없는 네이티브 입력(input 폴백)이 공유하는 diff-흡수.
48
+ * 홀더의 DOM 텍스트와 doc 텍스트를 공통 접두/접미로 비교해 차이
49
+ * 구간만 delete+insert 트랜잭션으로 반영하고, 브라우저가 직접 쓴
50
+ * 블록을 더티 표시해 리렌더가 리마운트로 복구하게 한다.
51
+ * guard(focusPath, docText)가 false면 흡수를 건너뛴다 (흡수 대기 창의
52
+ * 외부 편집 감지 등). 트랜잭션을 디스패치했으면 true를 돌려준다.
53
+ */
54
+ export declare function absorbDomText(host: AbsorbHost, focus: Point, guard?: (path: readonly number[], docText: string) => boolean): boolean;
34
55
  /**
35
56
  * beforeinput에 대한 세션 판정 — input.ts는 이 값만 보고
36
57
  * preventDefault/무시/정상 처리를 결정한다.
@@ -1 +1 @@
1
- {"version":3,"file":"ime.d.ts","sourceRoot":"","sources":["../../src/view/ime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAIlD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD;;;;;;;;;;;;;;;;;;GAkBG;AAEH,yCAAyC;AACzC,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,4CAA4C;IAC5C,UAAU,IAAI;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;CACtD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAExD,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,kDAAkD;IAClD,KAAK,IAAI,IAAI,CAAC;IACd,+CAA+C;IAC/C,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,iDAAiD;IACjD,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,GAAG,OAAO,CAAC;IAC7E;;;OAGG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,GAC7C,OAAO,CAAC;IACX,gCAAgC;IAChC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CAwQ1D"}
1
+ {"version":3,"file":"ime.d.ts","sourceRoot":"","sources":["../../src/view/ime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAIlD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAInD;;;;;;;;;;;;;;;;;;GAkBG;AAEH,yCAAyC;AACzC,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,4CAA4C;IAC5C,UAAU,IAAI;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;IACrD;;;OAGG;IACH,MAAM,CAAC,IAAI,IAAI,CAAC;CACjB;AAED,oDAAoD;AACpD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClC;AAmCD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,KAAK,EACZ,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,GAC5D,OAAO,CAuCT;AAED;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAExD,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,kDAAkD;IAClD,KAAK,IAAI,IAAI,CAAC;IACd,+CAA+C;IAC/C,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,iDAAiD;IACjD,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,GAAG,OAAO,CAAC;IAC7E;;;OAGG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,GAC7C,OAAO,CAAC;IACX,gCAAgC;IAChC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,CA0N1D"}