mdream 0.1.1

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.
@@ -0,0 +1,280 @@
1
+ function createBufferRegion(node, state, include) {
2
+ if (node.regionId) {
3
+ return null;
4
+ }
5
+ const id = state.regionToggles.size + 1;
6
+ node.regionId = id;
7
+ state.regionToggles.set(id, include);
8
+ state.regionContentBuffers.set(id, []);
9
+ return id;
10
+ }
11
+ function collectNodeContent(node, content, state) {
12
+ if (!content) {
13
+ return;
14
+ }
15
+ const regionId = node.regionId || 0;
16
+ const targetBuffer = state.regionContentBuffers.get(regionId);
17
+ if (targetBuffer) {
18
+ targetBuffer.push(content);
19
+ state.lastContentCache = content;
20
+ }
21
+ }
22
+ function assembleBufferedContent(state) {
23
+ const fragments = [];
24
+ for (const [regionId, content] of Array.from(state.regionContentBuffers.entries())) {
25
+ const include = state.regionToggles.get(regionId);
26
+ if (include) {
27
+ fragments.push(...content);
28
+ }
29
+ }
30
+ state.regionToggles.clear();
31
+ state.regionContentBuffers.clear();
32
+ return fragments.join("").trimStart();
33
+ }
34
+
35
+ const TAG_HTML = 0;
36
+ const TAG_HEAD = 1;
37
+ const TAG_DETAILS = 2;
38
+ const TAG_SUMMARY = 3;
39
+ const TAG_TITLE = 4;
40
+ const TAG_META = 5;
41
+ const TAG_BR = 6;
42
+ const TAG_H1 = 7;
43
+ const TAG_H2 = 8;
44
+ const TAG_H3 = 9;
45
+ const TAG_H4 = 10;
46
+ const TAG_H5 = 11;
47
+ const TAG_H6 = 12;
48
+ const TAG_HR = 13;
49
+ const TAG_STRONG = 14;
50
+ const TAG_B = 15;
51
+ const TAG_EM = 16;
52
+ const TAG_I = 17;
53
+ const TAG_DEL = 18;
54
+ const TAG_SUB = 19;
55
+ const TAG_SUP = 20;
56
+ const TAG_INS = 21;
57
+ const TAG_BLOCKQUOTE = 22;
58
+ const TAG_CODE = 23;
59
+ const TAG_UL = 24;
60
+ const TAG_LI = 25;
61
+ const TAG_A = 26;
62
+ const TAG_IMG = 27;
63
+ const TAG_TABLE = 28;
64
+ const TAG_THEAD = 29;
65
+ const TAG_TR = 30;
66
+ const TAG_TH = 31;
67
+ const TAG_TD = 32;
68
+ const TAG_OL = 33;
69
+ const TAG_PRE = 34;
70
+ const TAG_P = 35;
71
+ const TAG_DIV = 36;
72
+ const TAG_SPAN = 37;
73
+ const TAG_TBODY = 38;
74
+ const TAG_TFOOT = 39;
75
+ const TAG_FORM = 40;
76
+ const TAG_NAV = 41;
77
+ const TAG_LABEL = 42;
78
+ const TAG_BUTTON = 43;
79
+ const TAG_BODY = 44;
80
+ const TAG_CENTER = 45;
81
+ const TAG_KBD = 46;
82
+ const TAG_FOOTER = 47;
83
+ const TAG_PATH = 48;
84
+ const TAG_SVG = 49;
85
+ const TAG_ARTICLE = 50;
86
+ const TAG_SECTION = 51;
87
+ const TAG_SCRIPT = 52;
88
+ const TAG_STYLE = 53;
89
+ const TAG_LINK = 54;
90
+ const TAG_AREA = 55;
91
+ const TAG_BASE = 56;
92
+ const TAG_COL = 57;
93
+ const TAG_EMBED = 58;
94
+ const TAG_INPUT = 59;
95
+ const TAG_KEYGEN = 60;
96
+ const TAG_PARAM = 61;
97
+ const TAG_SOURCE = 62;
98
+ const TAG_TRACK = 63;
99
+ const TAG_WBR = 64;
100
+ const TAG_SELECT = 65;
101
+ const TAG_TEXTAREA = 66;
102
+ const TAG_OPTION = 67;
103
+ const TAG_FIELDSET = 68;
104
+ const TAG_LEGEND = 69;
105
+ const TAG_AUDIO = 70;
106
+ const TAG_VIDEO = 71;
107
+ const TAG_CANVAS = 72;
108
+ const TAG_IFRAME = 73;
109
+ const TAG_MAP = 74;
110
+ const TAG_DIALOG = 75;
111
+ const TAG_METER = 76;
112
+ const TAG_PROGRESS = 77;
113
+ const TAG_TEMPLATE = 78;
114
+ const TAG_ABBR = 79;
115
+ const TAG_MARK = 80;
116
+ const TAG_Q = 81;
117
+ const TAG_SAMP = 82;
118
+ const TAG_SMALL = 83;
119
+ const TAG_NOSCRIPT = 84;
120
+ const TAG_NOFRAMES = 85;
121
+ const TAG_XMP = 86;
122
+ const TAG_PLAINTEXT = 87;
123
+ const TAG_ASIDE = 88;
124
+ const TAG_U = 89;
125
+ const TAG_CITE = 90;
126
+ const TAG_DFN = 91;
127
+ const TAG_VAR = 92;
128
+ const TAG_TIME = 93;
129
+ const TAG_BDO = 94;
130
+ const TAG_RUBY = 95;
131
+ const TAG_RT = 96;
132
+ const TAG_RP = 97;
133
+ const TAG_DD = 98;
134
+ const TAG_DT = 99;
135
+ const TAG_ADDRESS = 100;
136
+ const TAG_DL = 101;
137
+ const TAG_FIGURE = 102;
138
+ const TAG_OBJECT = 103;
139
+ const TAG_MAIN = 104;
140
+ const TAG_HEADER = 105;
141
+ const TAG_FIGCAPTION = 106;
142
+ const TAG_CAPTION = 107;
143
+ const MAX_TAG_ID = 108;
144
+ const HTML_ENTITIES = {
145
+ "&": "&",
146
+ "&lt;": "<",
147
+ "&gt;": ">",
148
+ "&quot;": '"',
149
+ "&#39;": "'",
150
+ "&apos;": "'",
151
+ // Added missing &apos; entity
152
+ "&nbsp;": " "
153
+ };
154
+ const ELEMENT_NODE = 1;
155
+ const TEXT_NODE = 2;
156
+ const NodeEventEnter = 0;
157
+ const NodeEventExit = 1;
158
+ const TagIdMap = {
159
+ html: TAG_HTML,
160
+ head: TAG_HEAD,
161
+ details: TAG_DETAILS,
162
+ summary: TAG_SUMMARY,
163
+ title: TAG_TITLE,
164
+ meta: TAG_META,
165
+ br: TAG_BR,
166
+ h1: TAG_H1,
167
+ h2: TAG_H2,
168
+ h3: TAG_H3,
169
+ h4: TAG_H4,
170
+ h5: TAG_H5,
171
+ h6: TAG_H6,
172
+ hr: TAG_HR,
173
+ strong: TAG_STRONG,
174
+ b: TAG_B,
175
+ em: TAG_EM,
176
+ i: TAG_I,
177
+ del: TAG_DEL,
178
+ sub: TAG_SUB,
179
+ sup: TAG_SUP,
180
+ ins: TAG_INS,
181
+ blockquote: TAG_BLOCKQUOTE,
182
+ code: TAG_CODE,
183
+ ul: TAG_UL,
184
+ li: TAG_LI,
185
+ a: TAG_A,
186
+ img: TAG_IMG,
187
+ table: TAG_TABLE,
188
+ thead: TAG_THEAD,
189
+ tr: TAG_TR,
190
+ th: TAG_TH,
191
+ td: TAG_TD,
192
+ ol: TAG_OL,
193
+ pre: TAG_PRE,
194
+ p: TAG_P,
195
+ div: TAG_DIV,
196
+ span: TAG_SPAN,
197
+ tbody: TAG_TBODY,
198
+ tfoot: TAG_TFOOT,
199
+ form: TAG_FORM,
200
+ nav: TAG_NAV,
201
+ label: TAG_LABEL,
202
+ button: TAG_BUTTON,
203
+ body: TAG_BODY,
204
+ center: TAG_CENTER,
205
+ kbd: TAG_KBD,
206
+ footer: TAG_FOOTER,
207
+ path: TAG_PATH,
208
+ svg: TAG_SVG,
209
+ article: TAG_ARTICLE,
210
+ section: TAG_SECTION,
211
+ script: TAG_SCRIPT,
212
+ style: TAG_STYLE,
213
+ link: TAG_LINK,
214
+ area: TAG_AREA,
215
+ base: TAG_BASE,
216
+ col: TAG_COL,
217
+ embed: TAG_EMBED,
218
+ input: TAG_INPUT,
219
+ keygen: TAG_KEYGEN,
220
+ param: TAG_PARAM,
221
+ source: TAG_SOURCE,
222
+ track: TAG_TRACK,
223
+ wbr: TAG_WBR,
224
+ select: TAG_SELECT,
225
+ textarea: TAG_TEXTAREA,
226
+ option: TAG_OPTION,
227
+ fieldset: TAG_FIELDSET,
228
+ legend: TAG_LEGEND,
229
+ audio: TAG_AUDIO,
230
+ video: TAG_VIDEO,
231
+ canvas: TAG_CANVAS,
232
+ iframe: TAG_IFRAME,
233
+ map: TAG_MAP,
234
+ dialog: TAG_DIALOG,
235
+ meter: TAG_METER,
236
+ progress: TAG_PROGRESS,
237
+ template: TAG_TEMPLATE,
238
+ abbr: TAG_ABBR,
239
+ mark: TAG_MARK,
240
+ q: TAG_Q,
241
+ samp: TAG_SAMP,
242
+ small: TAG_SMALL,
243
+ noscript: TAG_NOSCRIPT,
244
+ noframes: TAG_NOFRAMES,
245
+ xmp: TAG_XMP,
246
+ plaintext: TAG_PLAINTEXT,
247
+ aside: TAG_ASIDE,
248
+ u: TAG_U,
249
+ cite: TAG_CITE,
250
+ dfn: TAG_DFN,
251
+ var: TAG_VAR,
252
+ time: TAG_TIME,
253
+ bdo: TAG_BDO,
254
+ ruby: TAG_RUBY,
255
+ rt: TAG_RT,
256
+ rp: TAG_RP,
257
+ dd: TAG_DD,
258
+ dt: TAG_DT,
259
+ dl: TAG_DL,
260
+ address: TAG_ADDRESS,
261
+ figure: TAG_FIGURE,
262
+ object: TAG_OBJECT,
263
+ main: TAG_MAIN,
264
+ header: TAG_HEADER,
265
+ figcaption: TAG_FIGCAPTION,
266
+ caption: TAG_CAPTION
267
+ };
268
+ const MARKDOWN_STRONG = "**";
269
+ const MARKDOWN_EMPHASIS = "_";
270
+ const MARKDOWN_STRIKETHROUGH = "~~";
271
+ const MARKDOWN_CODE_BLOCK = "```";
272
+ const MARKDOWN_INLINE_CODE = "`";
273
+ const MARKDOWN_HORIZONTAL_RULE = "---";
274
+ const NO_SPACING = [0, 0];
275
+ const DEFAULT_BLOCK_SPACING = [2, 2];
276
+ const BLOCKQUOTE_SPACING = [1, 1];
277
+ const LIST_ITEM_SPACING = [1, 0];
278
+ const TABLE_ROW_SPACING = [0, 1];
279
+
280
+ export { TAG_FIGCAPTION as $, TAG_NAV as A, TAG_FOOTER as B, TAG_HEADER as C, TAG_H6 as D, TAG_H5 as E, TAG_H4 as F, TAG_H3 as G, TAG_H2 as H, TAG_H1 as I, TAG_DD as J, TAG_DT as K, TAG_DL as L, TAG_LI as M, TAG_OL as N, TAG_UL as O, TAG_TD as P, TAG_TH as Q, TAG_TR as R, TAG_TFOOT as S, TAG_BODY as T, TAG_TBODY as U, TAG_THEAD as V, TAG_CAPTION as W, TAG_TABLE as X, TAG_SVG as Y, TAG_AUDIO as Z, TAG_VIDEO as _, TAG_HTML as a, TAG_INS as a$, TAG_FIGURE as a0, TAG_IMG as a1, TAG_CODE as a2, TAG_PRE as a3, TAG_BLOCKQUOTE as a4, TAG_DIV as a5, TAG_P as a6, TAG_MAIN as a7, TAG_SECTION as a8, TAG_ARTICLE as a9, TAG_SMALL as aA, TAG_SAMP as aB, TAG_Q as aC, TAG_MARK as aD, TAG_ABBR as aE, TAG_TEMPLATE as aF, TAG_PROGRESS as aG, TAG_METER as aH, TAG_DIALOG as aI, TAG_MAP as aJ, TAG_CANVAS as aK, TAG_LEGEND as aL, TAG_OPTION as aM, TAG_WBR as aN, TAG_TRACK as aO, TAG_SOURCE as aP, TAG_PARAM as aQ, TAG_KEYGEN as aR, TAG_COL as aS, TAG_BASE as aT, TAG_AREA as aU, TAG_LINK as aV, TAG_KBD as aW, TAG_CENTER as aX, TAG_LABEL as aY, MARKDOWN_CODE_BLOCK as aZ, MARKDOWN_INLINE_CODE as a_, ELEMENT_NODE as aa, collectNodeContent as ab, TAG_TITLE as ac, TAG_META as ad, TEXT_NODE as ae, NodeEventEnter as af, NO_SPACING as ag, DEFAULT_BLOCK_SPACING as ah, TABLE_ROW_SPACING as ai, LIST_ITEM_SPACING as aj, BLOCKQUOTE_SPACING as ak, MARKDOWN_STRIKETHROUGH as al, MARKDOWN_HORIZONTAL_RULE as am, TAG_RP as an, TAG_RT as ao, TAG_RUBY as ap, TAG_BDO as aq, TAG_TIME as ar, TAG_VAR as as, TAG_DFN as at, TAG_CITE as au, TAG_U as av, TAG_PLAINTEXT as aw, TAG_XMP as ax, TAG_NOFRAMES as ay, TAG_NOSCRIPT as az, TAG_HEAD as b, TAG_SUP as b0, TAG_SUB as b1, TAG_DEL as b2, MARKDOWN_EMPHASIS as b3, MARKDOWN_STRONG as b4, HTML_ENTITIES as b5, MAX_TAG_ID as b6, assembleBufferedContent as b7, TagIdMap as b8, NodeEventExit as b9, createBufferRegion as c, TAG_A as d, TAG_ADDRESS as e, TAG_SUMMARY as f, TAG_DETAILS as g, TAG_STYLE as h, TAG_SCRIPT as i, TAG_SPAN as j, TAG_BR as k, TAG_HR as l, TAG_I as m, TAG_EM as n, TAG_B as o, TAG_STRONG as p, TAG_OBJECT as q, TAG_EMBED as r, TAG_IFRAME as s, TAG_FIELDSET as t, TAG_SELECT as u, TAG_TEXTAREA as v, TAG_INPUT as w, TAG_BUTTON as x, TAG_FORM as y, TAG_ASIDE as z };