@yozora/tokenizer-heading 2.1.3 → 2.1.5
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/CHANGELOG.md +696 -0
- package/README.md +42 -42
- package/package.json +6 -6
- package/src/index.ts +0 -9
- package/src/match.ts +0 -101
- package/src/parse.ts +0 -79
- package/src/tokenizer.ts +0 -32
- package/src/types.ts +0 -26
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,696 @@
|
|
|
1
|
+
# Change Log
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
+
|
|
6
|
+
## [2.1.5](https://github.com/yozorajs/yozora/compare/v2.1.4...v2.1.5) (2023-05-13)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Performance Improvements
|
|
10
|
+
|
|
11
|
+
* 🔧 don't sourcemaps into tarball ([fc37aa8](https://github.com/yozorajs/yozora/commit/fc37aa8847ac4ad78ecb31f198e1cd6a85e91bcf))
|
|
12
|
+
* 📝 update CHANGELOGs ([c51b283](https://github.com/yozorajs/yozora/commit/c51b283874f8a562b6ed9fad46a0b7d578f6eb42))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## 2.1.4 (2023-04-02)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Performance Improvements
|
|
22
|
+
|
|
23
|
+
* 🔧 don't pack src/ folder into tarball ([c9fac38](https://github.com/yozorajs/yozora/commit/c9fac382e9a7a8d6454452b0c4d5b57dac16455f))
|
|
24
|
+
* 🔖 publish v2.1.4 ([aa464ed](https://github.com/yozorajs/yozora/commit/aa464ed1e3cd84892773a833910cfc53a556bf5f))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
## 2.1.3 (2023-03-23)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### Performance Improvements
|
|
32
|
+
|
|
33
|
+
* 🔖 publish v2.1.3 ([9abaaff](https://github.com/yozorajs/yozora/commit/9abaaff74a12d0bae0f645813241ff947a0d828c))
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## 2.1.2 (2023-03-11)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Performance Improvements
|
|
41
|
+
|
|
42
|
+
* 🔖 publish v2.1.2 ([992baca](https://github.com/yozorajs/yozora/commit/992bacafd173e7788e99fed34ce8b45f6ed24cfe))
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## 2.1.1 (2023-03-10)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
### Performance Improvements
|
|
50
|
+
|
|
51
|
+
* 💥 prefer shorter types ([b93307f](https://github.com/yozorajs/yozora/commit/b93307f3c2372598dd8ca4fcbf04e80ce58d903d))
|
|
52
|
+
* 🔖 publish v2.1.1 ([257a36d](https://github.com/yozorajs/yozora/commit/257a36d8dc079d4ac226405c155b238e7099bcea))
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
## 2.0.6 (2023-03-05)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
### Performance Improvements
|
|
60
|
+
|
|
61
|
+
* 🔖 publish v2.0.6 ([a263c53](https://github.com/yozorajs/yozora/commit/a263c5338103824347bac74d437051e9fbb6d791))
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
## 2.0.5 (2023-01-09)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
### Performance Improvements
|
|
69
|
+
|
|
70
|
+
* 🔖 publish v2.0.5 ([7ba3bab](https://github.com/yozorajs/yozora/commit/7ba3bab49fe65cf2f57082c0503af73da9356cf0))
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
## 2.0.5-alpha.0 (2023-01-05)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
### Performance Improvements
|
|
78
|
+
|
|
79
|
+
* 🔧 fix test configuration ([f50b2d7](https://github.com/yozorajs/yozora/commit/f50b2d7600139e0ea54e042b025365d81f4518b5))
|
|
80
|
+
* 🔖 publish v2.0.5-alpha.0 ([8bf941f](https://github.com/yozorajs/yozora/commit/8bf941fe4ef82947165b0f3cc123cd493665e13b))
|
|
81
|
+
* 🔧 update package entries ([2c94f27](https://github.com/yozorajs/yozora/commit/2c94f27ffb645119a863f2ceee68a6b1b7285a67))
|
|
82
|
+
* ⬆️ upgrade devDependencies ([13059a9](https://github.com/yozorajs/yozora/commit/13059a924f3ae3b7fd69080ec9e82cde34a0f097))
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## 2.0.4 (2022-11-02)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
### Performance Improvements
|
|
90
|
+
|
|
91
|
+
* 🔖 publish v2.0.4 ([c980b95](https://github.com/yozorajs/yozora/commit/c980b95254394dcacba0cbb4bea251350b09397c))
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
## 2.0.3 (2022-10-11)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
### Performance Improvements
|
|
99
|
+
|
|
100
|
+
* 🔖 publish v2.0.3 ([8cc8f95](https://github.com/yozorajs/yozora/commit/8cc8f95cfebc8d752bc3272cdd24965f540c130b))
|
|
101
|
+
* 🔧 update build script ([d934cad](https://github.com/yozorajs/yozora/commit/d934cad21a4ab763621ca6a72379cd4294caa605))
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
## 2.0.2 (2022-09-24)
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
### Performance Improvements
|
|
109
|
+
|
|
110
|
+
* 📝 fix invalid links ([eb304c9](https://github.com/yozorajs/yozora/commit/eb304c931b2e682cf156bbceae0a20655777381e))
|
|
111
|
+
* 🔖 publish v2.0.2 ([6911295](https://github.com/yozorajs/yozora/commit/6911295e9eacfa29563fe93494704190e50625fd))
|
|
112
|
+
* 🔧 support node@16.x.x ([eda301f](https://github.com/yozorajs/yozora/commit/eda301fe1047e380de5be915ae730206a026f07b))
|
|
113
|
+
* 📝 update links ([4467fe6](https://github.com/yozorajs/yozora/commit/4467fe646e0a95fcc7206658189884f68872bc4e))
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
## 2.0.2-alpha.0 (2022-05-22)
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
### Performance Improvements
|
|
121
|
+
|
|
122
|
+
* 🔖 publish v2.0.2-alpha.0 ([430eaab](https://github.com/yozorajs/yozora/commit/430eaabd83f4a1ee29398ee1798aa4511976c38f))
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
## 2.0.1 (2022-05-21)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
### Performance Improvements
|
|
130
|
+
|
|
131
|
+
* ✅ refactor test utils & rename createTester to createTokenizerTester ([7f2ce75](https://github.com/yozorajs/yozora/commit/7f2ce7571a336370d419aa01073bf8054783cfd9))
|
|
132
|
+
* 🔖 publish v2.0.1 ([3aea330](https://github.com/yozorajs/yozora/commit/3aea33091e402bd6c7754d91d549e8d648475073))
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
# 2.0.0 (2022-01-15)
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
### Performance Improvements
|
|
140
|
+
|
|
141
|
+
* 💥 [breaking] rename 'NodePoint' and 'NodePosition' ([76692a2](https://github.com/yozorajs/yozora/commit/76692a211a82260bb81acffa5e9e9d41b569f673))
|
|
142
|
+
* 🔖 publish v2.0.0 ([65e99d1](https://github.com/yozorajs/yozora/commit/65e99d1709fdd1c918465dce6b1e91de96bdab5e))
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
# 2.0.0-alpha.3 (2022-01-12)
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
### Features
|
|
150
|
+
|
|
151
|
+
* 💥 [breaking] remove 'I' prefix for AST node types ([cad4b0b](https://github.com/yozorajs/yozora/commit/cad4b0b5b8061ea495f6455ef1554bb3c8f223a0))
|
|
152
|
+
* 💥 [breaking] remove 'IYastNode' prefix for AST types ([35c8fd2](https://github.com/yozorajs/yozora/commit/35c8fd2a6c27fb0bdb4020ccda5974ad05748c46))
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
### Performance Improvements
|
|
156
|
+
|
|
157
|
+
* 🔖 publish v2.0.0-alpha.3 ([9f274fc](https://github.com/yozorajs/yozora/commit/9f274fc7487a8c1dd213405d92508f9a7621f730))
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
# 2.0.0-alpha.2 (2022-01-09)
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
### Performance Improvements
|
|
165
|
+
|
|
166
|
+
* 💥 refactor IParseBlockPhaseApi, use processInlines instead buildPhrasingContent and parsePhrasingContent ([0715e39](https://github.com/yozorajs/yozora/commit/0715e391d663fdf0c76ca6c0a283ed350d1626df))
|
|
167
|
+
* 🎨 refactor removePosition ([87a974f](https://github.com/yozorajs/yozora/commit/87a974fd744ae937d5778d3cdba4b345141bcaf6))
|
|
168
|
+
* 🔖 publish v2.0.0-alpha.2 ([da59d85](https://github.com/yozorajs/yozora/commit/da59d85520455c59a117a35032ef1a035c10ea21))
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
# 2.0.0-alpha.1 (2022-01-08)
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
### Features
|
|
176
|
+
|
|
177
|
+
* :breaking: refactor parse-block hooks ([117104d](https://github.com/yozorajs/yozora/commit/117104de9668a0d160e9e008ee6305811e83aec6))
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
### Performance Improvements
|
|
181
|
+
|
|
182
|
+
* 🔖 publish v2.0.0-alpha.1 ([86202e1](https://github.com/yozorajs/yozora/commit/86202e1d2b03ccfc2ab030517d9d314f7aee7666))
|
|
183
|
+
* 🎨 rename IHookContext to IThis ([04d5470](https://github.com/yozorajs/yozora/commit/04d5470c9949c4acfe6239289d34a8b5c6191e71))
|
|
184
|
+
* 📝 update READMEs ([320afeb](https://github.com/yozorajs/yozora/commit/320afebd6c500cbbce5fd65c1cd184bbd2224f25))
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
# 2.0.0-alpha.0 (2022-01-03)
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
### Features
|
|
192
|
+
|
|
193
|
+
* 💥 [breaking] rename types with 'I' prefix ([d37d862](https://github.com/yozorajs/yozora/commit/d37d862212831dbe75ac92a6dbdadf2fa81cce8c))
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
### Performance Improvements
|
|
197
|
+
|
|
198
|
+
* 💥 refactor block tokenizers ([50ea4da](https://github.com/yozorajs/yozora/commit/50ea4dac5be8d7dd3d6eccf7e0ce1cfe05fe704a))
|
|
199
|
+
* 🔖 publish v2.0.0-alpha.0 ([0171501](https://github.com/yozorajs/yozora/commit/0171501339c49ffd02ed16a63447fa20a47a29a7))
|
|
200
|
+
* 🎨 rename parser hooks ([ef6cbc5](https://github.com/yozorajs/yozora/commit/ef6cbc51323e6ef9d4cd78f1c7194ae1f7819245))
|
|
201
|
+
* 🎨 set print width to 100 ([657a621](https://github.com/yozorajs/yozora/commit/657a6211cad52d5f1b183e7bcd7ea227b2aa7724))
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
# 1.3.0 (2021-10-09)
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
### Performance Improvements
|
|
209
|
+
|
|
210
|
+
* 🔖 publish v1.3.0 ([18c9b16](https://github.com/yozorajs/yozora/commit/18c9b167004ad97718b2f94f25139f80598cbf7a))
|
|
211
|
+
* 🎨 set the default `children` to empty array instead of undefined ([8fe26ca](https://github.com/yozorajs/yozora/commit/8fe26ca085ec7d48148895fddbec019a84c24a8a))
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
## 1.2.2 (2021-09-06)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
### Performance Improvements
|
|
219
|
+
|
|
220
|
+
* 🔖 publish v1.2.2 ([fb4b804](https://github.com/yozorajs/yozora/commit/fb4b804548592c09259aabcf9cc4dd96176bd024))
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
## 1.2.1 (2021-09-04)
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
### Performance Improvements
|
|
228
|
+
|
|
229
|
+
* 🔖 publish v1.2.1 ([d98d07d](https://github.com/yozorajs/yozora/commit/d98d07d7c56dd9f6bb60149b2b0a4be2787e1046))
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
# 1.2.0 (2021-08-22)
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
### Performance Improvements
|
|
237
|
+
|
|
238
|
+
* 🔖 publish v1.2.0 ([86da40e](https://github.com/yozorajs/yozora/commit/86da40e50d2fe9acace68695288e15e012e6cd0d))
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
# 1.2.0-alpha.1 (2021-08-16)
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
### Performance Improvements
|
|
246
|
+
|
|
247
|
+
* 🔖 publish v1.2.0-alpha.1 ([ce3c173](https://github.com/yozorajs/yozora/commit/ce3c17330085f22404668a388f2bee6f57e6e958))
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
# 1.2.0-alpha.0 (2021-08-15)
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
### Performance Improvements
|
|
255
|
+
|
|
256
|
+
* 🔖 publish v1.2.0-alpha.0 ([bd8ef45](https://github.com/yozorajs/yozora/commit/bd8ef455a22963834a70339f42178138aab28df6))
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
# 1.1.0 (2021-08-12)
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
### Performance Improvements
|
|
264
|
+
|
|
265
|
+
* 🔖 publish v1.1.0 ([a8c7cff](https://github.com/yozorajs/yozora/commit/a8c7cffcbdc36930ab3c744450c8feb4395a9fac))
|
|
266
|
+
* 📝 update related references ([e2c8c7e](https://github.com/yozorajs/yozora/commit/e2c8c7e6ff8c5c1da27ca224d5c5d0eb4e5fbca7))
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
# 1.1.0-alpha.2 (2021-08-07)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
### Performance Improvements
|
|
274
|
+
|
|
275
|
+
* 🔖 publish v1.1.0-alpha.2 ([d88b8ec](https://github.com/yozorajs/yozora/commit/d88b8eca03118b9f2a8b00ac4106ea82e779bc94))
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
# 1.1.0-alpha.1 (2021-08-01)
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
### Performance Improvements
|
|
283
|
+
|
|
284
|
+
* 🔖 publish v1.1.0-alpha.1 ([0d6aa91](https://github.com/yozorajs/yozora/commit/0d6aa91fb5a15b962b016496453dbfa7f1197126))
|
|
285
|
+
* 📝 update READMEs ([738d626](https://github.com/yozorajs/yozora/commit/738d626d76c535ea017812f674b43842ee073227))
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
# 1.1.0-alpha.0 (2021-07-31)
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
### Performance Improvements
|
|
293
|
+
|
|
294
|
+
* 🔖 publish v1.1.0-alpha.0 ([082653e](https://github.com/yozorajs/yozora/commit/082653e421889513588492774503d8ddcc24b8f9))
|
|
295
|
+
* 📝 update READMEs ([9905f04](https://github.com/yozorajs/yozora/commit/9905f0408b15d4478d021ef5c75497817f2db9a3))
|
|
296
|
+
* 📝 update READMEs ([03fe64c](https://github.com/yozorajs/yozora/commit/03fe64c6a9eab9bf810d4648261e7a808a13d1e1))
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
# 1.0.0 (2021-07-20)
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
### Performance Improvements
|
|
304
|
+
|
|
305
|
+
* 🔖 publish v1.0.0 ([ad754e3](https://github.com/yozorajs/yozora/commit/ad754e3a5945cd2ce19d9e6bfa59cb82caf0c7ac))
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
# 1.0.0-beta.0 (2021-07-08)
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
### Performance Improvements
|
|
313
|
+
|
|
314
|
+
* 🔖 publish v1.0.0-beta.0 ([bb66320](https://github.com/yozorajs/yozora/commit/bb6632098367cd8cf391eb1380d4542c15383bac))
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
# 1.0.0-1.0.0-beta.0.0 (2021-07-08)
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
### Performance Improvements
|
|
322
|
+
|
|
323
|
+
* 🔖 publish v1.0.0-1.0.0-beta.0.0 ([4051dd2](https://github.com/yozorajs/yozora/commit/4051dd2bcdea0d051141abaa85635e52d84c04f2))
|
|
324
|
+
* ⚡️ remove unnecessary array expand operations ([dfd2ca0](https://github.com/yozorajs/yozora/commit/dfd2ca027faedf341047c0431a18e97b1e13fcad))
|
|
325
|
+
* ⚡️ remove unnecessary codes ([cebe92a](https://github.com/yozorajs/yozora/commit/cebe92a3375d1d49054d332764f2490d4bb92c53))
|
|
326
|
+
* 📝 update READMEs ([9d9f940](https://github.com/yozorajs/yozora/commit/9d9f940a81188502db6045134054b18b747819bf))
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
# 1.0.0-alpha.29 (2021-07-08)
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
### Performance Improvements
|
|
334
|
+
|
|
335
|
+
* expose new utility func 'createTester' and 'createTesters' ([a4e9613](https://github.com/yozorajs/yozora/commit/a4e9613063e3e5840cf066e6e7343dbd5ffd4884))
|
|
336
|
+
* 📝 fix invalid link references ([f7b97b3](https://github.com/yozorajs/yozora/commit/f7b97b3dc74f065aa8f00ecd846ee4fa7f704453))
|
|
337
|
+
* 🔖 publish v1.0.0-alpha.29 ([f2291db](https://github.com/yozorajs/yozora/commit/f2291db2812043dd6586eaabd14e427abb11663a))
|
|
338
|
+
* 🎨 use path alias in tests ([29cca94](https://github.com/yozorajs/yozora/commit/29cca943d4fbc6d26af4507d3fa75ac08dcf388a))
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
# 1.0.0-alpha.28 (2021-06-30)
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
### Performance Improvements
|
|
346
|
+
|
|
347
|
+
* 🔖 publish v1.0.0-alpha.28 ([f18d90a](https://github.com/yozorajs/yozora/commit/f18d90a116db508bf49c9a3338a262cb85faf792))
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
# 1.0.0-alpha.27 (2021-06-28)
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
### Performance Improvements
|
|
355
|
+
|
|
356
|
+
* 🎨 update base abstract tokenizer ([cca9dd6](https://github.com/yozorajs/yozora/commit/cca9dd6fc3d4a22e1352378f59c7d2dccecfc5a2))
|
|
357
|
+
* 🔖 publish v1.0.0-alpha.27 ([8efea07](https://github.com/yozorajs/yozora/commit/8efea07b2314c241c91fc113abdc8852f216c9d7))
|
|
358
|
+
* ⬆️ upgrade dev dependencies ([d126ff4](https://github.com/yozorajs/yozora/commit/d126ff4c81ec09b366a0c60ba2a83e7f45fbe317))
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
# 1.0.0-alpha.26 (2021-06-25)
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
### Performance Improvements
|
|
366
|
+
|
|
367
|
+
* 🔖 publish v1.0.0-alpha.26 ([cbde29c](https://github.com/yozorajs/yozora/commit/cbde29c6188c9183f0b39ccfac0ad310803b09fe))
|
|
368
|
+
* 📝 update READMEs ([11e4f61](https://github.com/yozorajs/yozora/commit/11e4f6107c3862bf8c81dae882e93cab3f56f40f))
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
# 1.0.0-alpha.25 (2021-06-17)
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
### Performance Improvements
|
|
376
|
+
|
|
377
|
+
* 🔖 publish v1.0.0-alpha.25 ([5e17f71](https://github.com/yozorajs/yozora/commit/5e17f7155391c21eb1c99e5024e48d5e208e80db))
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
# 1.0.0-alpha.24 (2021-06-10)
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
### Performance Improvements
|
|
385
|
+
|
|
386
|
+
* 🔖 publish v1.0.0-alpha.24 ([6169f8e](https://github.com/yozorajs/yozora/commit/6169f8ecda42e04203e4533f820e82ea3e93b7dd))
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
# 1.0.0-alpha.23 (2021-06-08)
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
### Performance Improvements
|
|
394
|
+
|
|
395
|
+
* Move repository from github.com/guanghechen to github.com/yozorajs ([c1fd32c](https://github.com/yozorajs/yozora/commit/c1fd32ce818b44aa0d993ec8f74ef514bdf2d834))
|
|
396
|
+
* 🔖 publish v1.0.0-alpha.23 ([131a216](https://github.com/yozorajs/yozora/commit/131a2162b64eb23f98e93286974f4a3e4a91b77a))
|
|
397
|
+
* 📝 update READMEs ([6420941](https://github.com/yozorajs/yozora/commit/64209414cacdaf0e04329e2c86e6ff41f885f55f))
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
# 1.0.0-alpha.22 (2021-05-20)
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
### Performance Improvements
|
|
405
|
+
|
|
406
|
+
* 🎨 lint codes ([0d2d798](https://github.com/yozorajs/yozora/commit/0d2d7988d1d46f873e2a9f5d37de9c5daa39a109))
|
|
407
|
+
* 🔖 publish v1.0.0-alpha.22 ([a07a41d](https://github.com/yozorajs/yozora/commit/a07a41de8dda2ff579b0e5b469db75d6c629c38b))
|
|
408
|
+
* 🔧 rename the main branch to 'main' instead of 'master' ([c915653](https://github.com/yozorajs/yozora/commit/c9156537fba68ce073e139eb487afb973b7d90ba))
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
|
|
412
|
+
# 1.0.0-alpha.21 (2021-05-12)
|
|
413
|
+
|
|
414
|
+
|
|
415
|
+
### Performance Improvements
|
|
416
|
+
|
|
417
|
+
* 🔖 publish v1.0.0-alpha.21 ([e6655a2](https://github.com/yozorajs/yozora/commit/e6655a252c0b799d0990f06bc7cfdadc6824b63c))
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
# 1.0.0-alpha.20 (2021-04-20)
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
### Performance Improvements
|
|
425
|
+
|
|
426
|
+
* 🔖 publish v1.0.0-alpha.20 ([3f3831f](https://github.com/yozorajs/yozora/commit/3f3831fb6fdb72319e7d24a1ba4b51b44bdb4c8d))
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
# 1.0.0-alpha.19 (2021-04-19)
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
### Performance Improvements
|
|
434
|
+
|
|
435
|
+
* 🔖 publish v1.0.0-alpha.19 ([50b55f9](https://github.com/yozorajs/yozora/commit/50b55f9e5fd1d00c03d271a488d2a648ccd0a1d1))
|
|
436
|
+
* 📝 update READMEs ([907af97](https://github.com/yozorajs/yozora/commit/907af97f8c0bca5b045ccae188c6b759e88ec38c))
|
|
437
|
+
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
# 1.0.0-alpha.18 (2021-04-18)
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
### Performance Improvements
|
|
444
|
+
|
|
445
|
+
* 🎨 support new member method 'replaceTokenizer' ([67e7085](https://github.com/yozorajs/yozora/commit/67e70852dfc67882659981398713e34b27e71aad))
|
|
446
|
+
* 🔖 publish v1.0.0-alpha.18 ([219b28b](https://github.com/yozorajs/yozora/commit/219b28b38975d6d41f6c285a512a5c0dccceb6fa))
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
# 1.0.0-alpha.17 (2021-04-15)
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
### Performance Improvements
|
|
454
|
+
|
|
455
|
+
* 🎨 optimize duplicate codes ([347ae9b](https://github.com/yozorajs/yozora/commit/347ae9b897aeeee8a6c73280660e2bd1878c113e))
|
|
456
|
+
* 🔖 publish v1.0.0-alpha.17 ([0e7facd](https://github.com/yozorajs/yozora/commit/0e7facdde8692e538e5777d70b873cf6282f7de8))
|
|
457
|
+
* 📝 update docs ([acffd75](https://github.com/yozorajs/yozora/commit/acffd757123705c4d0f6a3948f62f3c460cefde3))
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
# 1.0.0-alpha.16 (2021-04-12)
|
|
462
|
+
|
|
463
|
+
|
|
464
|
+
### Performance Improvements
|
|
465
|
+
|
|
466
|
+
* 🔖 publish v1.0.0-alpha.16 ([9da34dd](https://github.com/yozorajs/yozora/commit/9da34dd46333b72f908c77d15f11326f3724060c))
|
|
467
|
+
* ✅ simplify test codes ([60d072c](https://github.com/yozorajs/yozora/commit/60d072c6bf4a414e45b3d98713223a23be5d0bb8))
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
|
|
471
|
+
# 1.0.0-alpha.15 (2021-04-11)
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
### Performance Improvements
|
|
475
|
+
|
|
476
|
+
* 🔖 publish v1.0.0-alpha.15 ([988d25f](https://github.com/yozorajs/yozora/commit/988d25f7958825ccbaaa99051ad7b823c625d4cf))
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
# 1.0.0-alpha.14 (2021-04-11)
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
### Performance Improvements
|
|
484
|
+
|
|
485
|
+
* 🔖 publish v1.0.0-alpha.14 ([3fcfffa](https://github.com/yozorajs/yozora/commit/3fcfffa0da0413449acf0d91d85400d0b31fa9a2))
|
|
486
|
+
* 🎨 rename isContainerBlock to isContainingBlock & use enum TokenizerPriority instead of magic numbers to present tokenizer proirity ([940c50b](https://github.com/yozorajs/yozora/commit/940c50bb58b76a888a512539f3a4db6e8396d45b))
|
|
487
|
+
* ✅ update tests ([3c9f64f](https://github.com/yozorajs/yozora/commit/3c9f64f331d2b2c3484cc580dc8ef13e21ee42b8))
|
|
488
|
+
* ✅ update tests ([a24d148](https://github.com/yozorajs/yozora/commit/a24d1485b59caaeff4510b1150d8810236a9906a))
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
# 1.0.0-alpha.13 (2021-04-10)
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
### Performance Improvements
|
|
496
|
+
|
|
497
|
+
* :art: [core-parser] improve: enhance ParseBlockPhaseApi to support parsing inlines in the parse-block phase ([75e67bd](https://github.com/yozorajs/yozora/commit/75e67bd6e7a7e2ad054bc34c8b30960cccd1bec8))
|
|
498
|
+
* 🎨 add api for parse-block phase ([b266352](https://github.com/yozorajs/yozora/commit/b26635207f45af3cb0f0ec06431a1bba174618fb))
|
|
499
|
+
* 🔖 publish v1.0.0-alpha.13 ([949455c](https://github.com/yozorajs/yozora/commit/949455c25f4fb60a88c3484829a610da7c998969))
|
|
500
|
+
* 💥 remove parse-meta phase (calc meta such as definitions after parse-block). ([463e751](https://github.com/yozorajs/yozora/commit/463e75126448b672dc15019e8dd93d9d64bc9b5e))
|
|
501
|
+
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
# 1.0.0-alpha.12 (2021-03-27)
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
### Features
|
|
508
|
+
|
|
509
|
+
* 💥 redesign interfaces & refactor tokenizer codes with types from @yozora/ast ([af3603d](https://github.com/yozorajs/yozora/commit/af3603d771bde94ec0c78fb53aa6d64a14933f9d))
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
### Performance Improvements
|
|
513
|
+
|
|
514
|
+
* 🎨 make '_tokenizer' optional in the result of tokenizers on match phase ([b1ea8de](https://github.com/yozorajs/yozora/commit/b1ea8de5a439615d09e9cc3585b1a3cbdb663d31))
|
|
515
|
+
* 🔖 publish v1.0.0-alpha.12 ([897f131](https://github.com/yozorajs/yozora/commit/897f1317408ab43406788d5b796d245fd4eeac13))
|
|
516
|
+
* 🎨 use AST types from @yozora/ast instead of @yozora/core-tokenizer ([fc55ceb](https://github.com/yozorajs/yozora/commit/fc55cebca8162a111fca1c0cdfbf0982831db66a))
|
|
517
|
+
* 🎨 use types defined in @yozora/ast & use tokenizerName as unique id of token ([d51f022](https://github.com/yozorajs/yozora/commit/d51f0222a829ef0caea5f1ec058ca3f3553c156d))
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
# 1.0.0-alpha.11 (2021-03-20)
|
|
522
|
+
|
|
523
|
+
|
|
524
|
+
### Performance Improvements
|
|
525
|
+
|
|
526
|
+
* 🔖 publish v1.0.0-alpha.11 ([df10f73](https://github.com/yozorajs/yozora/commit/df10f73cbcc698d44cd7f7efbab2f7cac66f8675))
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
# 1.0.0-alpha.10 (2021-03-20)
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
### Performance Improvements
|
|
534
|
+
|
|
535
|
+
* 🔖 publish v1.0.0-alpha.10 ([dbd0114](https://github.com/yozorajs/yozora/commit/dbd0114cd72fa029e743db5d38e10bc1af23ca33))
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
# 1.0.0-alpha.9 (2021-03-20)
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
### Features
|
|
543
|
+
|
|
544
|
+
* 💥 update types of Definition to make it consistent with the Definition in Mdast ([1309771](https://github.com/yozorajs/yozora/commit/1309771175f24c39525f83cc5a0d08f6960ff7c1))
|
|
545
|
+
|
|
546
|
+
|
|
547
|
+
### Performance Improvements
|
|
548
|
+
|
|
549
|
+
* 📝 fix invalid badge urls ([4d78b23](https://github.com/yozorajs/yozora/commit/4d78b23b2aa8ae65adb9e86ccd51e372a916f20b))
|
|
550
|
+
* 🔖 publish v1.0.0-alpha.9 ([1b41b56](https://github.com/yozorajs/yozora/commit/1b41b56362c328af28fde43a0b95fa02aff0dfbe))
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
# 1.0.0-alpha.8 (2021-03-13)
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
### Performance Improvements
|
|
558
|
+
|
|
559
|
+
* 🔖 publish v1.0.0-alpha.8 ([3cb3080](https://github.com/yozorajs/yozora/commit/3cb3080312048001d73911a892c4a7c69459c260))
|
|
560
|
+
* 📝 update badges ([418e221](https://github.com/yozorajs/yozora/commit/418e2216ed80c71445f9e0efd9ea054208b18c78))
|
|
561
|
+
* 🔧 update package.json ([cba99c5](https://github.com/yozorajs/yozora/commit/cba99c5aa58de54672cc292e587914f56d702f7a))
|
|
562
|
+
* 📝 update READMEs ([188b30b](https://github.com/yozorajs/yozora/commit/188b30ba3f10096722e999452f84752ec3dd459a))
|
|
563
|
+
|
|
564
|
+
|
|
565
|
+
|
|
566
|
+
# 1.0.0-alpha.7 (2021-03-06)
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
### Performance Improvements
|
|
570
|
+
|
|
571
|
+
* 🎨 format codes ([1fbd596](https://github.com/yozorajs/yozora/commit/1fbd59671965b747a990d2bff77de0872f18836d))
|
|
572
|
+
* 🔧 add directory in repository field ([8daefc9](https://github.com/yozorajs/yozora/commit/8daefc94f4999aa471e2edc82728120ae9c0f079))
|
|
573
|
+
* 📝 update badges ([967819b](https://github.com/yozorajs/yozora/commit/967819be94f17a635169fabd48468747e53f2b84))
|
|
574
|
+
* 🔖 publish v1.0.0-alpha.7 ([115ce36](https://github.com/yozorajs/yozora/commit/115ce36207dc675c7a13275c6bf2fccafdb47ffc))
|
|
575
|
+
* 🔧 update scripts field ([72841c5](https://github.com/yozorajs/yozora/commit/72841c571882cb600706aaab1a335fa68013167c))
|
|
576
|
+
* 🔧 use @guanghechen/rollup-config instead of @barusu/rollup-config ([6228c33](https://github.com/yozorajs/yozora/commit/6228c330ed6dc3113c671f56feaa91d47bff6d64))
|
|
577
|
+
* 🔨 use top level rollup.config.js ([818c59b](https://github.com/yozorajs/yozora/commit/818c59b6f5ef3c29f718428c620ebce08f24b9d6))
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
# 1.0.0-alpha.6 (2021-02-25)
|
|
582
|
+
|
|
583
|
+
|
|
584
|
+
### Performance Improvements
|
|
585
|
+
|
|
586
|
+
* 🎨 format codes through 'yarn sort-imports' ([a932fec](https://github.com/yozorajs/yozora/commit/a932fec827b51397f2c5378afff11d4efd09159e))
|
|
587
|
+
* 🎨 format codes with prettier ([04582c8](https://github.com/yozorajs/yozora/commit/04582c840608a6d36270066a1e5d552840855118))
|
|
588
|
+
* 🔖 publish v1.0.0-alpha.6 ([e4f20f7](https://github.com/yozorajs/yozora/commit/e4f20f785dc3928c0c928d0d38665bf3609481a6))
|
|
589
|
+
* 🚚 rename @yozora/parser-core to @yozora/core-parser ([e94956f](https://github.com/yozorajs/yozora/commit/e94956f58ccf64f37c476c953679578b3b4b7c24))
|
|
590
|
+
* ⬆️ upgrade @barusu/* to v0.0.47 & upgrade rollup to v2.39.1 ([173b431](https://github.com/yozorajs/yozora/commit/173b431d4522a90b964b11d015ce24eba4028deb))
|
|
591
|
+
* 🔧 upgrade barusu to v0.0.46 ([7c360a4](https://github.com/yozorajs/yozora/commit/7c360a46a6c188e13512ac814a8f59169f41f23d))
|
|
592
|
+
* 🔧 upgrade eslint & update eslint configs & lint codes ([4227453](https://github.com/yozorajs/yozora/commit/4227453ce46a4c9e9e1eeac2939c6365af78c696))
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
|
|
596
|
+
# 1.0.0-alpha.5 (2021-02-23)
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
### Performance Improvements
|
|
600
|
+
|
|
601
|
+
* 🔖 publish v1.0.0-alpha.5 ([fa285da](https://github.com/yozorajs/yozora/commit/fa285da950e21abf2505f51256bb12e3b8307823))
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
|
|
605
|
+
# 1.0.0-alpha.4 (2021-02-23)
|
|
606
|
+
|
|
607
|
+
|
|
608
|
+
### Performance Improvements
|
|
609
|
+
|
|
610
|
+
* :art: merge @yozora/tokenizercore-inline and @yozora/tokenizercore-block into @yozora/tokenizercore ([7583266](https://github.com/yozorajs/yozora/commit/7583266e831d441b0c5004b7ef05cf7008c8f8da))
|
|
611
|
+
* 🎨 rename `parse()` to `parseBlock()` of TokenizerParseBlockHook ([9beb9ee](https://github.com/yozorajs/yozora/commit/9beb9ee14945ecd2d04dfc85ae98eff9de0a4e56))
|
|
612
|
+
* 🎨 move property `recongnizedTypes` from TokenizerParseBlockHook and TokenizerParseInlineHook into the Tokenizer ([d3ec789](https://github.com/yozorajs/yozora/commit/d3ec78944df57a2e8515019bf80eb9c6e508a2ac))
|
|
613
|
+
* 🔖 publish v1.0.0-alpha.4 ([1cfd290](https://github.com/yozorajs/yozora/commit/1cfd29055684e41eb0859d81210a2b542424ffab))
|
|
614
|
+
* 🎨 rename tokenizer hooks ([9f0679f](https://github.com/yozorajs/yozora/commit/9f0679f829efd685b179cf6717cc85a10c004c52))
|
|
615
|
+
* 🔧 update jest config ([2142751](https://github.com/yozorajs/yozora/commit/2142751fee35f8bce093e3b884902e53fa56f072))
|
|
616
|
+
* 📝 update README ([57663fd](https://github.com/yozorajs/yozora/commit/57663fdd46cb57de41feddb461caafed9e54bc07))
|
|
617
|
+
* 📝 update READMEs ([c421f5c](https://github.com/yozorajs/yozora/commit/c421f5c5e21bfd176a5b8b2b7716c4c8326fffcf))
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
|
|
621
|
+
# 1.0.0-alpha.3 (2021-02-18)
|
|
622
|
+
|
|
623
|
+
|
|
624
|
+
### Performance Improvements
|
|
625
|
+
|
|
626
|
+
* 🔖 publish v1.0.0-alpha.3 ([ba9b6dd](https://github.com/yozorajs/yozora/commit/ba9b6dd2d3bb70a22be8e4bdc1b1c5a8d07bdbe0))
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
|
|
630
|
+
# 1.0.0-alpha.2 (2021-02-15)
|
|
631
|
+
|
|
632
|
+
|
|
633
|
+
### Performance Improvements
|
|
634
|
+
|
|
635
|
+
* 🔖 publish v1.0.0-alpha.2 ([d1ed70b](https://github.com/yozorajs/yozora/commit/d1ed70bc4f3728049ba285c70a1cd15d6c095597))
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
# 1.0.0-alpha.1 (2021-02-15)
|
|
640
|
+
|
|
641
|
+
|
|
642
|
+
### Performance Improvements
|
|
643
|
+
|
|
644
|
+
* :bug: [heading] fix: fix null pointer error ([9bd77c7](https://github.com/yozorajs/yozora/commit/9bd77c74b8f049a0393e619df76329c398efd16b))
|
|
645
|
+
* 🎨 format codes & update comments ([7873786](https://github.com/yozorajs/yozora/commit/787378606e5536742655602a1e1ca00f874e931f))
|
|
646
|
+
* 🔖 publish v1.0.0-alpha.1 ([def33f1](https://github.com/yozorajs/yozora/commit/def33f19b215c17686a2a270f95329aac3d9d2ce))
|
|
647
|
+
* 📝 update homepage url ([8833f53](https://github.com/yozorajs/yozora/commit/8833f53122bc845f8a359e0192e9443e35fc2808))
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
# 1.0.0-alpha.0 (2021-02-14)
|
|
652
|
+
|
|
653
|
+
|
|
654
|
+
### Bug Fixes
|
|
655
|
+
|
|
656
|
+
* 🐛 fix path error caused by the previous move operation ([3fb8564](https://github.com/yozorajs/yozora/commit/3fb856499abc6bcd4db1e2da676c8005a77eb264))
|
|
657
|
+
|
|
658
|
+
|
|
659
|
+
### Features
|
|
660
|
+
|
|
661
|
+
* 🚧 remove 'priority' from block tokenizers ([2af6114](https://github.com/yozorajs/yozora/commit/2af611472f381e9c71493e7e0cbda104386207b2))
|
|
662
|
+
* 🚧 handle tabs & update tests ([27d198b](https://github.com/yozorajs/yozora/commit/27d198b092be46e7822239d987c707829e432333))
|
|
663
|
+
* 🚧 update due to the change of @yozora/tokenizercore and @yozora/tokenizercore-block ([84e7096](https://github.com/yozorajs/yozora/commit/84e7096d3301ae5f5fc16cec25b2fe584b2368d6))
|
|
664
|
+
* 👽️ update due to the change of @yozora/tokenizercore* ([4208ea9](https://github.com/yozorajs/yozora/commit/4208ea95daa1fc13a07b0afa68be20ba560ff81a))
|
|
665
|
+
|
|
666
|
+
|
|
667
|
+
### Performance Improvements
|
|
668
|
+
|
|
669
|
+
* :construction: [template-tokenizer] feat: update boilerplates & format codes ([854a7ca](https://github.com/yozorajs/yozora/commit/854a7ca20ac3b5c8904dcfce1d3e976bad61b536))
|
|
670
|
+
* :art: [tokenizercore-block] improve: update types ([68857d0](https://github.com/yozorajs/yozora/commit/68857d012d8fe1cafe119ac43ee2994a44c3e51d))
|
|
671
|
+
* :art: [tokenizercore-block] improve: reorgnize interface types between tokenizer hooks ([76d889a](https://github.com/yozorajs/yozora/commit/76d889aa5d351a44204318f295f567539ffd058e))
|
|
672
|
+
* :construction: [BREAKING] feat: update tokenizer types from constant case to camel case ([2a99460](https://github.com/yozorajs/yozora/commit/2a99460b29b9bce919b254285ecacd182f945ea0))
|
|
673
|
+
* :construction: [tokenizercore-block] feat: update DefaultBlockContext (fix errors and export new methods) and types & refactor @yozora/tokenizer-setext-heading ([2e64759](https://github.com/yozorajs/yozora/commit/2e647597acb0c5768b7dcdb82801baa0d025f7bb))
|
|
674
|
+
* :art: [tokenizercore-block] refactor: move extractPhrasingContentCMS and buildFromPhrasingContentCMS from BlockTokenizer to BlockTokenizerMatchPhaseHook ([01b7ea5](https://github.com/yozorajs/yozora/commit/01b7ea53545c150253e1eb252e8e09abb40ee50b))
|
|
675
|
+
* :construction: [heading] improve: update due to the change of @yozora/tokenizercore-block ([57cc73f](https://github.com/yozorajs/yozora/commit/57cc73f5c8c863d93115a5b195334cc9b2cc9c22))
|
|
676
|
+
* ✅ add ast positions ([a4a55bb](https://github.com/yozorajs/yozora/commit/a4a55bb9297fb587b80c206508ee57f1c0ff7569))
|
|
677
|
+
* 🎨 update PhrasingContentLine to postpone the nodePoint collection operation to the parse-phase stage ([7f62c66](https://github.com/yozorajs/yozora/commit/7f62c66fc5fe4f99172b73f8c11d995c6531abac))
|
|
678
|
+
* ✅ just convert the phrasingContent.contents to string instead of inline nodes in tests ([03d127f](https://github.com/yozorajs/yozora/commit/03d127f6159a56eeae5a1a6e8ada20c2d91754ab))
|
|
679
|
+
* 🔨 fix path error ([9b7780f](https://github.com/yozorajs/yozora/commit/9b7780fa9d919ac0f6d35641e3f3995a703d79f9))
|
|
680
|
+
* 🎨 format codes & add comments ([ba7ce7f](https://github.com/yozorajs/yozora/commit/ba7ce7f5af95ebac78bcf988e85aad9f520e1e98))
|
|
681
|
+
* 🚚 move tokenizers/block/* and tokenizers/inline/* to tokenizers/ ([c451e41](https://github.com/yozorajs/yozora/commit/c451e41d7d78e9dca078fa6feb0c548a3be7cc42))
|
|
682
|
+
* 🔖 publish v1.0.0-alpha.0 ([d7a394a](https://github.com/yozorajs/yozora/commit/d7a394affbdebe154b2eda5430f4440661f1c711))
|
|
683
|
+
* 🎨 remove useless types ([d430236](https://github.com/yozorajs/yozora/commit/d43023647638071fb184c2844e1dd6ea379ec877))
|
|
684
|
+
* 🎨 remove YastBlockNodeType and YastInlineNodeType, use YastNodeType instead ([2142b3d](https://github.com/yozorajs/yozora/commit/2142b3d9b9b8247202d78fca9571485cb1c13110))
|
|
685
|
+
* 🎨 rename EnhancedYastNodePoint to NodePoint & rename *WhiteSpace* to *Whitespace* ([988a99f](https://github.com/yozorajs/yozora/commit/988a99fcf448012fd07df0eacff72d7b5a0166fe))
|
|
686
|
+
* 🎨 rewrite @yozora/jest-for-tokenizer & update tests ([2b68af6](https://github.com/yozorajs/yozora/commit/2b68af63e0ea2c267b2c8c7581998cfba8197bd4))
|
|
687
|
+
* 🎨 rewrite @yozora/tokenziercore-block and update block tokenizers ([e07f874](https://github.com/yozorajs/yozora/commit/e07f87481499f73a856d65f75dec17c64e42a3b6))
|
|
688
|
+
* 🎨 rewrite string preprocessing algorithm to support tabs and line ends ([1312f88](https://github.com/yozorajs/yozora/commit/1312f88e3ae5940d8fd4c616a1fec23284b89287))
|
|
689
|
+
* 🎨 update BlockTokenizer types ([5fa2b42](https://github.com/yozorajs/yozora/commit/5fa2b42c520a1ca13b4fe8dc7d10d0dabbda93f4))
|
|
690
|
+
* 🎨 update BlockYastNode types ([7d1bda8](https://github.com/yozorajs/yozora/commit/7d1bda887ea88b150128b6095d737f7991eea791))
|
|
691
|
+
* 🚧 update due to the change of @yozora/tokenizercore-block & format codes & update @yozora/list-*-item ([fcfaa64](https://github.com/yozorajs/yozora/commit/fcfaa64f4b6f06d861db8960bdc9c434e3c7805e))
|
|
692
|
+
* 🚧 update due to the change of the @yozora/tokenziercore-block ([212b913](https://github.com/yozorajs/yozora/commit/212b913b5305581f0898571516ea648dc1fda28c))
|
|
693
|
+
* 📝 update READMEs ([9657e0c](https://github.com/yozorajs/yozora/commit/9657e0c41b37e526ad469f4e45d5d080a92171fb))
|
|
694
|
+
* ✅ update tests due to the change of @yozora/jest-for-tokenizer ([e54a56e](https://github.com/yozorajs/yozora/commit/e54a56e96016333436c5146535c8fbbf83d55ec2))
|
|
695
|
+
* 🚧 update tokenizer shape & support to update the member variables in constructor ([a542f34](https://github.com/yozorajs/yozora/commit/a542f340a3beeddb5a7cef95f7d4a2913ce92b1b))
|
|
696
|
+
* ⬆️ upgrade devDependencies @barusu/* ([4a5a0e1](https://github.com/yozorajs/yozora/commit/4a5a0e1d2e5c4910d7a3f64fa0f9d1177e313de7))
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
<header>
|
|
4
4
|
<h1 align="center">
|
|
5
|
-
<a href="https://github.com/yozorajs/yozora/tree/
|
|
5
|
+
<a href="https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/heading#readme">@yozora/tokenizer-heading</a>
|
|
6
6
|
</h1>
|
|
7
7
|
<div align="center">
|
|
8
8
|
<a href="https://www.npmjs.com/package/@yozora/tokenizer-heading">
|
|
@@ -197,53 +197,53 @@ Name | Type | Required | Default
|
|
|
197
197
|
|
|
198
198
|
[live-examples]: https://yozora.guanghechen.com/docs/package/tokenizer-heading#live-examples
|
|
199
199
|
[docpage]: https://yozora.guanghechen.com/docs/package/tokenizer-heading
|
|
200
|
-
[homepage]: https://github.com/yozorajs/yozora/tree/
|
|
200
|
+
[homepage]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/heading#readme
|
|
201
201
|
[gfm-spec]: https://github.github.com/gfm
|
|
202
202
|
[mdast-homepage]: https://github.com/syntax-tree/mdast
|
|
203
203
|
|
|
204
|
-
[@yozora/ast]: https://github.com/yozorajs/yozora/tree/
|
|
205
|
-
[@yozora/ast-util]: https://github.com/yozorajs/yozora/tree/
|
|
206
|
-
[@yozora/character]: https://github.com/yozorajs/yozora/tree/
|
|
204
|
+
[@yozora/ast]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/ast#readme
|
|
205
|
+
[@yozora/ast-util]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/ast-util#readme
|
|
206
|
+
[@yozora/character]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/character#readme
|
|
207
207
|
[@yozora/eslint-config]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/eslint-config#readme
|
|
208
|
-
[@yozora/core-parser]: https://github.com/yozorajs/yozora/tree/
|
|
209
|
-
[@yozora/core-tokenizer]: https://github.com/yozorajs/yozora/tree/
|
|
210
|
-
[@yozora/invariant]: https://github.com/yozorajs/yozora/tree/
|
|
208
|
+
[@yozora/core-parser]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/core-parser#readme
|
|
209
|
+
[@yozora/core-tokenizer]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/core-tokenizer#readme
|
|
210
|
+
[@yozora/invariant]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/invariant#readme
|
|
211
211
|
[@yozora/jest-for-tokenizer]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/jest-for-tokenizer#readme
|
|
212
|
-
[@yozora/parser]: https://github.com/yozorajs/yozora/tree/
|
|
213
|
-
[@yozora/parser-gfm]: https://github.com/yozorajs/yozora/tree/
|
|
214
|
-
[@yozora/parser-gfm-ex]: https://github.com/yozorajs/yozora/tree/
|
|
212
|
+
[@yozora/parser]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser#readme
|
|
213
|
+
[@yozora/parser-gfm]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser-gfm#readme
|
|
214
|
+
[@yozora/parser-gfm-ex]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser-gfm-ex#readme
|
|
215
215
|
[@yozora/template-tokenizer]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/template-tokenizer#readme
|
|
216
|
-
[@yozora/tokenizer-admonition]: https://github.com/yozorajs/yozora/tree/
|
|
217
|
-
[@yozora/tokenizer-autolink]: https://github.com/yozorajs/yozora/tree/
|
|
218
|
-
[@yozora/tokenizer-autolink-extension]: https://github.com/yozorajs/yozora/tree/
|
|
219
|
-
[@yozora/tokenizer-blockquote]: https://github.com/yozorajs/yozora/tree/
|
|
220
|
-
[@yozora/tokenizer-break]: https://github.com/yozorajs/yozora/tree/
|
|
221
|
-
[@yozora/tokenizer-definition]: https://github.com/yozorajs/yozora/tree/
|
|
222
|
-
[@yozora/tokenizer-delete]: https://github.com/yozorajs/yozora/tree/
|
|
223
|
-
[@yozora/tokenizer-ecma-import]: https://github.com/yozorajs/yozora/tree/
|
|
224
|
-
[@yozora/tokenizer-emphasis]: https://github.com/yozorajs/yozora/tree/
|
|
225
|
-
[@yozora/tokenizer-fenced-block]: https://github.com/yozorajs/yozora/tree/
|
|
226
|
-
[@yozora/tokenizer-fenced-code]: https://github.com/yozorajs/yozora/tree/
|
|
227
|
-
[@yozora/tokenizer-footnote]: https://github.com/yozorajs/yozora/tree/
|
|
228
|
-
[@yozora/tokenizer-footnote-definition]: https://github.com/yozorajs/yozora/tree/
|
|
229
|
-
[@yozora/tokenizer-footnote-reference]: https://github.com/yozorajs/yozora/tree/
|
|
230
|
-
[@yozora/tokenizer-heading]: https://github.com/yozorajs/yozora/tree/
|
|
231
|
-
[@yozora/tokenizer-html-block]: https://github.com/yozorajs/yozora/tree/
|
|
232
|
-
[@yozora/tokenizer-html-inline]: https://github.com/yozorajs/yozora/tree/
|
|
233
|
-
[@yozora/tokenizer-image]: https://github.com/yozorajs/yozora/tree/
|
|
234
|
-
[@yozora/tokenizer-image-reference]: https://github.com/yozorajs/yozora/tree/
|
|
235
|
-
[@yozora/tokenizer-indented-code]: https://github.com/yozorajs/yozora/tree/
|
|
236
|
-
[@yozora/tokenizer-inline-code]: https://github.com/yozorajs/yozora/tree/
|
|
237
|
-
[@yozora/tokenizer-inline-math]: https://github.com/yozorajs/yozora/tree/
|
|
238
|
-
[@yozora/tokenizer-link]: https://github.com/yozorajs/yozora/tree/
|
|
239
|
-
[@yozora/tokenizer-link-reference]: https://github.com/yozorajs/yozora/tree/
|
|
240
|
-
[@yozora/tokenizer-list]: https://github.com/yozorajs/yozora/tree/
|
|
241
|
-
[@yozora/tokenizer-math]: https://github.com/yozorajs/yozora/tree/
|
|
242
|
-
[@yozora/tokenizer-paragraph]: https://github.com/yozorajs/yozora/tree/
|
|
243
|
-
[@yozora/tokenizer-setext-heading]: https://github.com/yozorajs/yozora/tree/
|
|
244
|
-
[@yozora/tokenizer-table]: https://github.com/yozorajs/yozora/tree/
|
|
245
|
-
[@yozora/tokenizer-text]: https://github.com/yozorajs/yozora/tree/
|
|
246
|
-
[@yozora/tokenizer-thematic-break]: https://github.com/yozorajs/yozora/tree/
|
|
216
|
+
[@yozora/tokenizer-admonition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/admonition#readme
|
|
217
|
+
[@yozora/tokenizer-autolink]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/autolink#readme
|
|
218
|
+
[@yozora/tokenizer-autolink-extension]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/autolink-extension#readme
|
|
219
|
+
[@yozora/tokenizer-blockquote]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/blockquote#readme
|
|
220
|
+
[@yozora/tokenizer-break]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/break#readme
|
|
221
|
+
[@yozora/tokenizer-definition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/definition#readme
|
|
222
|
+
[@yozora/tokenizer-delete]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/delete#readme
|
|
223
|
+
[@yozora/tokenizer-ecma-import]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/ecma-import#readme
|
|
224
|
+
[@yozora/tokenizer-emphasis]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/emphasis#readme
|
|
225
|
+
[@yozora/tokenizer-fenced-block]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/fenced-block#readme
|
|
226
|
+
[@yozora/tokenizer-fenced-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/fenced-code#readme
|
|
227
|
+
[@yozora/tokenizer-footnote]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote#readme
|
|
228
|
+
[@yozora/tokenizer-footnote-definition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote-definition#readme
|
|
229
|
+
[@yozora/tokenizer-footnote-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote-reference#readme
|
|
230
|
+
[@yozora/tokenizer-heading]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/heading#readme
|
|
231
|
+
[@yozora/tokenizer-html-block]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/html-block#readme
|
|
232
|
+
[@yozora/tokenizer-html-inline]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/html-inline#readme
|
|
233
|
+
[@yozora/tokenizer-image]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/image#readme
|
|
234
|
+
[@yozora/tokenizer-image-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/image-reference#readme
|
|
235
|
+
[@yozora/tokenizer-indented-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/indented-code#readme
|
|
236
|
+
[@yozora/tokenizer-inline-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/inline-code#readme
|
|
237
|
+
[@yozora/tokenizer-inline-math]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/inline-math#readme
|
|
238
|
+
[@yozora/tokenizer-link]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/link#readme
|
|
239
|
+
[@yozora/tokenizer-link-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/link-reference#readme
|
|
240
|
+
[@yozora/tokenizer-list]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/list#readme
|
|
241
|
+
[@yozora/tokenizer-math]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/math#readme
|
|
242
|
+
[@yozora/tokenizer-paragraph]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/paragraph#readme
|
|
243
|
+
[@yozora/tokenizer-setext-heading]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/setext-heading#readme
|
|
244
|
+
[@yozora/tokenizer-table]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/table#readme
|
|
245
|
+
[@yozora/tokenizer-text]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/text#readme
|
|
246
|
+
[@yozora/tokenizer-thematic-break]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/thematic-break#readme
|
|
247
247
|
|
|
248
248
|
[@yozora/react-admonition]: https://github.com/yozorajs/yozora-react/tree/main/packages/admonition#readme
|
|
249
249
|
[@yozora/react-blockquote]: https://github.com/yozorajs/yozora-react/tree/main/packages/blockquote#readme
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yozora/tokenizer-heading",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.5",
|
|
4
4
|
"author": {
|
|
5
5
|
"name": "guanghechen",
|
|
6
6
|
"url": "https://github.com/guanghechen/"
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
},
|
|
28
28
|
"files": [
|
|
29
29
|
"lib/",
|
|
30
|
-
"
|
|
30
|
+
"!lib/**/*.map",
|
|
31
31
|
"package.json",
|
|
32
32
|
"CHANGELOG.md",
|
|
33
33
|
"LICENSE",
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"test": "cross-env TS_NODE_FILES=true NODE_OPTIONS=--experimental-vm-modules jest --config ../../jest.config.mjs --rootDir ."
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@yozora/ast": "^2.1.
|
|
43
|
-
"@yozora/character": "^2.1.
|
|
44
|
-
"@yozora/core-tokenizer": "^2.1.
|
|
42
|
+
"@yozora/ast": "^2.1.5",
|
|
43
|
+
"@yozora/character": "^2.1.5",
|
|
44
|
+
"@yozora/core-tokenizer": "^2.1.5"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "4f753bcf0fd921938464802462dc48c53bbd014d"
|
|
47
47
|
}
|
package/src/index.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export { match as headingMatch } from './match'
|
|
2
|
-
export { parse as headingParse } from './parse'
|
|
3
|
-
export { HeadingTokenizer, HeadingTokenizer as default } from './tokenizer'
|
|
4
|
-
export { uniqueName as HeadingTokenizerName } from './types'
|
|
5
|
-
export type {
|
|
6
|
-
IThis as IHeadingHookContext,
|
|
7
|
-
IToken as IHeadingToken,
|
|
8
|
-
ITokenizerProps as IHeadingTokenizerProps,
|
|
9
|
-
} from './types'
|
package/src/match.ts
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { HeadingType } from '@yozora/ast'
|
|
2
|
-
import { AsciiCodePoint, isSpaceCharacter } from '@yozora/character'
|
|
3
|
-
import type {
|
|
4
|
-
IBlockToken,
|
|
5
|
-
IMatchBlockHookCreator,
|
|
6
|
-
IPhrasingContentLine,
|
|
7
|
-
IResultOfEatAndInterruptPreviousSibling,
|
|
8
|
-
IResultOfEatOpener,
|
|
9
|
-
} from '@yozora/core-tokenizer'
|
|
10
|
-
import { calcEndPoint, calcStartPoint, eatOptionalCharacters } from '@yozora/core-tokenizer'
|
|
11
|
-
import type { IThis, IToken, T } from './types'
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* An ATX heading consists of a string of characters, parsed as inline content,
|
|
15
|
-
* between an opening sequence of 1–6 unescaped '#' characters and an optional
|
|
16
|
-
* closing sequence of any number of unescaped '#' characters. The opening
|
|
17
|
-
* sequence of '#' characters must be followed by a space or by the end of line.
|
|
18
|
-
* The optional closing sequence of #s must be preceded by a space and may be
|
|
19
|
-
* followed by spaces only. The opening # character may be indented 0-3 spaces.
|
|
20
|
-
* The raw contents of the heading are stripped of leading and trailing spaces
|
|
21
|
-
* before being parsed as inline content. The heading level is equal to the
|
|
22
|
-
* number of '#' characters in the opening sequence.
|
|
23
|
-
*
|
|
24
|
-
* @see https://github.com/syntax-tree/mdast#heading
|
|
25
|
-
* @see https://github.github.com/gfm/#atx-heading
|
|
26
|
-
*/
|
|
27
|
-
export const match: IMatchBlockHookCreator<T, IToken, IThis> = function () {
|
|
28
|
-
return {
|
|
29
|
-
isContainingBlock: false,
|
|
30
|
-
eatOpener,
|
|
31
|
-
eatAndInterruptPreviousSibling,
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
function eatOpener(line: Readonly<IPhrasingContentLine>): IResultOfEatOpener<T, IToken> {
|
|
35
|
-
/**
|
|
36
|
-
* Four spaces are too much
|
|
37
|
-
* @see https://github.github.com/gfm/#example-39
|
|
38
|
-
* @see https://github.github.com/gfm/#example-40
|
|
39
|
-
*/
|
|
40
|
-
if (line.countOfPrecedeSpaces >= 4) return null
|
|
41
|
-
|
|
42
|
-
const { nodePoints, startIndex, endIndex, firstNonWhitespaceIndex } = line
|
|
43
|
-
if (
|
|
44
|
-
firstNonWhitespaceIndex >= endIndex ||
|
|
45
|
-
nodePoints[firstNonWhitespaceIndex].codePoint !== AsciiCodePoint.NUMBER_SIGN
|
|
46
|
-
) {
|
|
47
|
-
return null
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const i = eatOptionalCharacters(
|
|
51
|
-
nodePoints,
|
|
52
|
-
firstNonWhitespaceIndex + 1,
|
|
53
|
-
endIndex,
|
|
54
|
-
AsciiCodePoint.NUMBER_SIGN,
|
|
55
|
-
)
|
|
56
|
-
const depth: number = i - firstNonWhitespaceIndex
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* More than six '#' characters is not a heading
|
|
60
|
-
* @see https://github.github.com/gfm/#example-33
|
|
61
|
-
*/
|
|
62
|
-
if (depth > 6) return null
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* At least one space is required between the '#' characters and the
|
|
66
|
-
* heading’s contents, unless the heading is empty. Note that many
|
|
67
|
-
* implementations currently do not require the space. However, the space
|
|
68
|
-
* was required by the original ATX implementation, and it helps prevent
|
|
69
|
-
* things like the following from being parsed as headings:
|
|
70
|
-
*
|
|
71
|
-
* ATX headings can be empty
|
|
72
|
-
* @see https://github.github.com/gfm/#example-49
|
|
73
|
-
*/
|
|
74
|
-
if (i + 1 < endIndex && !isSpaceCharacter(nodePoints[i].codePoint)) return null
|
|
75
|
-
|
|
76
|
-
const nextIndex = endIndex
|
|
77
|
-
const token: IToken = {
|
|
78
|
-
nodeType: HeadingType,
|
|
79
|
-
position: {
|
|
80
|
-
start: calcStartPoint(nodePoints, startIndex),
|
|
81
|
-
end: calcEndPoint(nodePoints, nextIndex - 1),
|
|
82
|
-
},
|
|
83
|
-
depth: depth as IToken['depth'],
|
|
84
|
-
line,
|
|
85
|
-
}
|
|
86
|
-
return { token, nextIndex, saturated: true }
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
function eatAndInterruptPreviousSibling(
|
|
90
|
-
line: Readonly<IPhrasingContentLine>,
|
|
91
|
-
prevSiblingToken: Readonly<IBlockToken>,
|
|
92
|
-
): IResultOfEatAndInterruptPreviousSibling<T, IToken> {
|
|
93
|
-
const result = eatOpener(line)
|
|
94
|
-
if (result == null) return null
|
|
95
|
-
return {
|
|
96
|
-
token: result.token,
|
|
97
|
-
nextIndex: result.nextIndex,
|
|
98
|
-
remainingSibling: prevSiblingToken,
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
package/src/parse.ts
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import type { Node } from '@yozora/ast'
|
|
2
|
-
import { HeadingType } from '@yozora/ast'
|
|
3
|
-
import type { INodePoint } from '@yozora/character'
|
|
4
|
-
import {
|
|
5
|
-
AsciiCodePoint,
|
|
6
|
-
calcTrimBoundaryOfCodePoints,
|
|
7
|
-
isWhitespaceCharacter,
|
|
8
|
-
} from '@yozora/character'
|
|
9
|
-
import type { IParseBlockHookCreator, IPhrasingContentLine } from '@yozora/core-tokenizer'
|
|
10
|
-
import { mergeAndStripContentLines } from '@yozora/core-tokenizer'
|
|
11
|
-
import type { INode, IThis, IToken, T } from './types'
|
|
12
|
-
|
|
13
|
-
export const parse: IParseBlockHookCreator<T, IToken, INode, IThis> = function (api) {
|
|
14
|
-
return {
|
|
15
|
-
parse: tokens =>
|
|
16
|
-
tokens.map(token => {
|
|
17
|
-
const { nodePoints, firstNonWhitespaceIndex, endIndex } = token.line
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Leading and trailing whitespace is ignored in parsing inline content
|
|
21
|
-
* Spaces are allowed after the closing sequence
|
|
22
|
-
* @see https://github.github.com/gfm/#example-37
|
|
23
|
-
* @see https://github.github.com/gfm/#example-43
|
|
24
|
-
*/
|
|
25
|
-
// eslint-disable-next-line prefer-const
|
|
26
|
-
let [leftIndex, rightIndex] = calcTrimBoundaryOfCodePoints(
|
|
27
|
-
nodePoints,
|
|
28
|
-
firstNonWhitespaceIndex + token.depth,
|
|
29
|
-
endIndex,
|
|
30
|
-
)
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* A closing sequence of '#' characters is optional
|
|
34
|
-
* It need not be the same length as the opening sequence
|
|
35
|
-
* @see https://github.github.com/gfm/#example-41
|
|
36
|
-
* @see https://github.github.com/gfm/#example-42
|
|
37
|
-
* @see https://github.github.com/gfm/#example-44
|
|
38
|
-
*/
|
|
39
|
-
let closeCharCount = 0
|
|
40
|
-
for (let j = rightIndex - 1; j >= leftIndex; --j) {
|
|
41
|
-
const c = nodePoints[j].codePoint
|
|
42
|
-
if (c !== AsciiCodePoint.NUMBER_SIGN) break
|
|
43
|
-
closeCharCount += 1
|
|
44
|
-
}
|
|
45
|
-
if (closeCharCount > 0) {
|
|
46
|
-
let spaceCount = 0,
|
|
47
|
-
j = rightIndex - 1 - closeCharCount
|
|
48
|
-
for (; j >= leftIndex; --j) {
|
|
49
|
-
const c = nodePoints[j].codePoint
|
|
50
|
-
if (!isWhitespaceCharacter(c)) break
|
|
51
|
-
spaceCount += 1
|
|
52
|
-
}
|
|
53
|
-
if (spaceCount > 0 || j < leftIndex) {
|
|
54
|
-
rightIndex -= closeCharCount + spaceCount
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// Resolve phrasing content.
|
|
59
|
-
const lines: IPhrasingContentLine[] = [
|
|
60
|
-
{
|
|
61
|
-
nodePoints,
|
|
62
|
-
startIndex: leftIndex,
|
|
63
|
-
endIndex: rightIndex,
|
|
64
|
-
firstNonWhitespaceIndex: leftIndex,
|
|
65
|
-
countOfPrecedeSpaces: 0,
|
|
66
|
-
},
|
|
67
|
-
]
|
|
68
|
-
|
|
69
|
-
// Resolve phrasing content.
|
|
70
|
-
const contents: INodePoint[] = mergeAndStripContentLines(lines)
|
|
71
|
-
const children: Node[] = api.processInlines(contents)
|
|
72
|
-
|
|
73
|
-
const node: INode = api.shouldReservePosition
|
|
74
|
-
? { type: HeadingType, position: token.position, depth: token.depth, children }
|
|
75
|
-
: { type: HeadingType, depth: token.depth, children }
|
|
76
|
-
return node
|
|
77
|
-
}),
|
|
78
|
-
}
|
|
79
|
-
}
|
package/src/tokenizer.ts
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
IBlockTokenizer,
|
|
3
|
-
IMatchBlockHookCreator,
|
|
4
|
-
IParseBlockHookCreator,
|
|
5
|
-
} from '@yozora/core-tokenizer'
|
|
6
|
-
import { BaseBlockTokenizer, TokenizerPriority } from '@yozora/core-tokenizer'
|
|
7
|
-
import { match } from './match'
|
|
8
|
-
import { parse } from './parse'
|
|
9
|
-
import type { INode, IThis, IToken, ITokenizerProps, T } from './types'
|
|
10
|
-
import { uniqueName } from './types'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Lexical Analyzer for Heading.
|
|
14
|
-
* @see https://github.com/syntax-tree/mdast#heading
|
|
15
|
-
* @see https://github.github.com/gfm/#atx-heading
|
|
16
|
-
*/
|
|
17
|
-
export class HeadingTokenizer
|
|
18
|
-
extends BaseBlockTokenizer<T, IToken, INode, IThis>
|
|
19
|
-
implements IBlockTokenizer<T, IToken, INode, IThis>
|
|
20
|
-
{
|
|
21
|
-
/* istanbul ignore next */
|
|
22
|
-
constructor(props: ITokenizerProps = {}) {
|
|
23
|
-
super({
|
|
24
|
-
name: props.name ?? uniqueName,
|
|
25
|
-
priority: props.priority ?? TokenizerPriority.ATOMIC,
|
|
26
|
-
})
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
public override readonly match: IMatchBlockHookCreator<T, IToken, IThis> = match
|
|
30
|
-
|
|
31
|
-
public override readonly parse: IParseBlockHookCreator<T, IToken, INode, IThis> = parse
|
|
32
|
-
}
|
package/src/types.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { Heading, HeadingType } from '@yozora/ast'
|
|
2
|
-
import type {
|
|
3
|
-
IBaseBlockTokenizerProps,
|
|
4
|
-
IPartialBlockToken,
|
|
5
|
-
IPhrasingContentLine,
|
|
6
|
-
ITokenizer,
|
|
7
|
-
} from '@yozora/core-tokenizer'
|
|
8
|
-
|
|
9
|
-
export type T = HeadingType
|
|
10
|
-
export type INode = Heading
|
|
11
|
-
export const uniqueName = '@yozora/tokenizer-heading'
|
|
12
|
-
|
|
13
|
-
export interface IToken extends IPartialBlockToken<T> {
|
|
14
|
-
/**
|
|
15
|
-
* Level of heading
|
|
16
|
-
*/
|
|
17
|
-
depth: 1 | 2 | 3 | 4 | 5 | 6
|
|
18
|
-
/**
|
|
19
|
-
* Contents
|
|
20
|
-
*/
|
|
21
|
-
line: Readonly<IPhrasingContentLine>
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export type IThis = ITokenizer
|
|
25
|
-
|
|
26
|
-
export type ITokenizerProps = Partial<IBaseBlockTokenizerProps>
|