@yozora/tokenizer-image 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 +714 -0
- package/README.md +42 -42
- package/package.json +7 -7
- package/src/index.ts +0 -10
- package/src/match.ts +0 -211
- package/src/parse.ts +0 -50
- package/src/tokenizer.ts +0 -32
- package/src/types.ts +0 -45
- package/src/util.ts +0 -18
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,714 @@
|
|
|
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
|
+
* 🔖 publish v2.0.0 ([65e99d1](https://github.com/yozorajs/yozora/commit/65e99d1709fdd1c918465dce6b1e91de96bdab5e))
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
# 2.0.0-alpha.3 (2022-01-12)
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
### Features
|
|
149
|
+
|
|
150
|
+
* 💥 [breaking] remove 'I' prefix for AST node types ([cad4b0b](https://github.com/yozorajs/yozora/commit/cad4b0b5b8061ea495f6455ef1554bb3c8f223a0))
|
|
151
|
+
* 💥 [breaking] remove 'IYastNode' prefix for AST types ([35c8fd2](https://github.com/yozorajs/yozora/commit/35c8fd2a6c27fb0bdb4020ccda5974ad05748c46))
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
### Performance Improvements
|
|
155
|
+
|
|
156
|
+
* 🔖 publish v2.0.0-alpha.3 ([9f274fc](https://github.com/yozorajs/yozora/commit/9f274fc7487a8c1dd213405d92508f9a7621f730))
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
# 2.0.0-alpha.2 (2022-01-09)
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
### Performance Improvements
|
|
164
|
+
|
|
165
|
+
* 🎨 refactor parse-inline hooks ([455cfbd](https://github.com/yozorajs/yozora/commit/455cfbdfec9f3d7a738d0b3f23655805b1eaea0b))
|
|
166
|
+
* 🎨 refactor removePosition ([87a974f](https://github.com/yozorajs/yozora/commit/87a974fd744ae937d5778d3cdba4b345141bcaf6))
|
|
167
|
+
* 🔖 publish v2.0.0-alpha.2 ([da59d85](https://github.com/yozorajs/yozora/commit/da59d85520455c59a117a35032ef1a035c10ea21))
|
|
168
|
+
* 🎨 simplify codes ([0712473](https://github.com/yozorajs/yozora/commit/0712473e824f532844e73f9e2023b591fb6bd6a5))
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
# 2.0.0-alpha.1 (2022-01-08)
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
### Bug Fixes
|
|
176
|
+
|
|
177
|
+
* 🐛 fix incorrect export names ([b2d1fa7](https://github.com/yozorajs/yozora/commit/b2d1fa71d774bd78c87aa51435ba89593ebbeb24))
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
### Performance Improvements
|
|
181
|
+
|
|
182
|
+
* 🎨 refactor inline tokenizers ([b3ff235](https://github.com/yozorajs/yozora/commit/b3ff235f31f18e6ae511aaa4f96919f4eb90fa5c))
|
|
183
|
+
* 🔖 publish v2.0.0-alpha.1 ([86202e1](https://github.com/yozorajs/yozora/commit/86202e1d2b03ccfc2ab030517d9d314f7aee7666))
|
|
184
|
+
* 🎨 rename IHookContext to IThis ([04d5470](https://github.com/yozorajs/yozora/commit/04d5470c9949c4acfe6239289d34a8b5c6191e71))
|
|
185
|
+
* 📝 update READMEs ([320afeb](https://github.com/yozorajs/yozora/commit/320afebd6c500cbbce5fd65c1cd184bbd2224f25))
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
# 2.0.0-alpha.0 (2022-01-03)
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
### Features
|
|
193
|
+
|
|
194
|
+
* 💥 [breaking] rename types with 'I' prefix ([d37d862](https://github.com/yozorajs/yozora/commit/d37d862212831dbe75ac92a6dbdadf2fa81cce8c))
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
### Performance Improvements
|
|
198
|
+
|
|
199
|
+
* 💥 refactor inline tokenizers ([85e2d65](https://github.com/yozorajs/yozora/commit/85e2d655baf1e4f2010cbf9d80ed3a4f2d390d5c))
|
|
200
|
+
* 🔖 publish v2.0.0-alpha.0 ([0171501](https://github.com/yozorajs/yozora/commit/0171501339c49ffd02ed16a63447fa20a47a29a7))
|
|
201
|
+
* 🎨 rename parser hooks ([ef6cbc5](https://github.com/yozorajs/yozora/commit/ef6cbc51323e6ef9d4cd78f1c7194ae1f7819245))
|
|
202
|
+
* 🎨 set print width to 100 ([657a621](https://github.com/yozorajs/yozora/commit/657a6211cad52d5f1b183e7bcd7ea227b2aa7724))
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
# 1.3.0 (2021-10-09)
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
### Features
|
|
210
|
+
|
|
211
|
+
* 💥 move func parameter `nodePoints` to api.getNodePoints() ([6bbfd4e](https://github.com/yozorajs/yozora/commit/6bbfd4e9c57240eeca0acb01a0bbc83c0eafa978))
|
|
212
|
+
* 💥 move func parameter `nodePoints` to api.getNodePoints() ([10e5033](https://github.com/yozorajs/yozora/commit/10e503332b40dac35be93878d6763051e7022352))
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
### Performance Improvements
|
|
216
|
+
|
|
217
|
+
* 🔖 publish v1.3.0 ([18c9b16](https://github.com/yozorajs/yozora/commit/18c9b167004ad97718b2f94f25139f80598cbf7a))
|
|
218
|
+
* 🎨 set the default `children` to empty array instead of undefined ([8fe26ca](https://github.com/yozorajs/yozora/commit/8fe26ca085ec7d48148895fddbec019a84c24a8a))
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
## 1.2.2 (2021-09-06)
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
### Performance Improvements
|
|
226
|
+
|
|
227
|
+
* 🔖 publish v1.2.2 ([fb4b804](https://github.com/yozorajs/yozora/commit/fb4b804548592c09259aabcf9cc4dd96176bd024))
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
## 1.2.1 (2021-09-04)
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
### Performance Improvements
|
|
235
|
+
|
|
236
|
+
* 🔖 publish v1.2.1 ([d98d07d](https://github.com/yozorajs/yozora/commit/d98d07d7c56dd9f6bb60149b2b0a4be2787e1046))
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
# 1.2.0 (2021-08-22)
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
### Performance Improvements
|
|
244
|
+
|
|
245
|
+
* 🔖 publish v1.2.0 ([86da40e](https://github.com/yozorajs/yozora/commit/86da40e50d2fe9acace68695288e15e012e6cd0d))
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
# 1.2.0-alpha.1 (2021-08-16)
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
### Performance Improvements
|
|
253
|
+
|
|
254
|
+
* 🔖 publish v1.2.0-alpha.1 ([ce3c173](https://github.com/yozorajs/yozora/commit/ce3c17330085f22404668a388f2bee6f57e6e958))
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
# 1.2.0-alpha.0 (2021-08-15)
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
### Performance Improvements
|
|
262
|
+
|
|
263
|
+
* 🔖 publish v1.2.0-alpha.0 ([bd8ef45](https://github.com/yozorajs/yozora/commit/bd8ef455a22963834a70339f42178138aab28df6))
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
# 1.1.0 (2021-08-12)
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
### Performance Improvements
|
|
271
|
+
|
|
272
|
+
* 🔖 publish v1.1.0 ([a8c7cff](https://github.com/yozorajs/yozora/commit/a8c7cffcbdc36930ab3c744450c8feb4395a9fac))
|
|
273
|
+
* 📝 update related references ([e2c8c7e](https://github.com/yozorajs/yozora/commit/e2c8c7e6ff8c5c1da27ca224d5c5d0eb4e5fbca7))
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
# 1.1.0-alpha.2 (2021-08-07)
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
### Performance Improvements
|
|
281
|
+
|
|
282
|
+
* 🔖 publish v1.1.0-alpha.2 ([d88b8ec](https://github.com/yozorajs/yozora/commit/d88b8eca03118b9f2a8b00ac4106ea82e779bc94))
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
# 1.1.0-alpha.1 (2021-08-01)
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
### Performance Improvements
|
|
290
|
+
|
|
291
|
+
* 🔖 publish v1.1.0-alpha.1 ([0d6aa91](https://github.com/yozorajs/yozora/commit/0d6aa91fb5a15b962b016496453dbfa7f1197126))
|
|
292
|
+
* 📝 update READMEs ([738d626](https://github.com/yozorajs/yozora/commit/738d626d76c535ea017812f674b43842ee073227))
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
# 1.1.0-alpha.0 (2021-07-31)
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
### Performance Improvements
|
|
300
|
+
|
|
301
|
+
* 🔖 publish v1.1.0-alpha.0 ([082653e](https://github.com/yozorajs/yozora/commit/082653e421889513588492774503d8ddcc24b8f9))
|
|
302
|
+
* 📝 update READMEs ([9905f04](https://github.com/yozorajs/yozora/commit/9905f0408b15d4478d021ef5c75497817f2db9a3))
|
|
303
|
+
* 📝 update READMEs ([03fe64c](https://github.com/yozorajs/yozora/commit/03fe64c6a9eab9bf810d4648261e7a808a13d1e1))
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
# 1.0.0 (2021-07-20)
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
### Performance Improvements
|
|
311
|
+
|
|
312
|
+
* 🔖 publish v1.0.0 ([ad754e3](https://github.com/yozorajs/yozora/commit/ad754e3a5945cd2ce19d9e6bfa59cb82caf0c7ac))
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
# 1.0.0-beta.0 (2021-07-08)
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
### Performance Improvements
|
|
320
|
+
|
|
321
|
+
* 🔖 publish v1.0.0-beta.0 ([bb66320](https://github.com/yozorajs/yozora/commit/bb6632098367cd8cf391eb1380d4542c15383bac))
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
# 1.0.0-1.0.0-beta.0.0 (2021-07-08)
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
### Performance Improvements
|
|
329
|
+
|
|
330
|
+
* 🔖 publish v1.0.0-1.0.0-beta.0.0 ([4051dd2](https://github.com/yozorajs/yozora/commit/4051dd2bcdea0d051141abaa85635e52d84c04f2))
|
|
331
|
+
* ⚡️ remove unnecessary slice operations ([c389b98](https://github.com/yozorajs/yozora/commit/c389b98edbe6f1fdf0b3a2b9480b8191c5d8899d))
|
|
332
|
+
* 📝 update READMEs ([9d9f940](https://github.com/yozorajs/yozora/commit/9d9f940a81188502db6045134054b18b747819bf))
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
# 1.0.0-alpha.29 (2021-07-08)
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
### Performance Improvements
|
|
340
|
+
|
|
341
|
+
* expose new utility func 'createTester' and 'createTesters' ([a4e9613](https://github.com/yozorajs/yozora/commit/a4e9613063e3e5840cf066e6e7343dbd5ffd4884))
|
|
342
|
+
* 📝 fix invalid link references ([f7b97b3](https://github.com/yozorajs/yozora/commit/f7b97b3dc74f065aa8f00ecd846ee4fa7f704453))
|
|
343
|
+
* 🔖 publish v1.0.0-alpha.29 ([f2291db](https://github.com/yozorajs/yozora/commit/f2291db2812043dd6586eaabd14e427abb11663a))
|
|
344
|
+
* 🎨 use path alias in tests ([29cca94](https://github.com/yozorajs/yozora/commit/29cca943d4fbc6d26af4507d3fa75ac08dcf388a))
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
# 1.0.0-alpha.28 (2021-06-30)
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
### Performance Improvements
|
|
352
|
+
|
|
353
|
+
* 🔖 publish v1.0.0-alpha.28 ([f18d90a](https://github.com/yozorajs/yozora/commit/f18d90a116db508bf49c9a3338a262cb85faf792))
|
|
354
|
+
* 🎨 rename variable names (use termnal 'internal' instead of 'inner') ([b374c26](https://github.com/yozorajs/yozora/commit/b374c2677a3b7cd0b13429c517e1f213419f2932))
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
# 1.0.0-alpha.27 (2021-06-28)
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
### Performance Improvements
|
|
362
|
+
|
|
363
|
+
* 🎨 update base abstract tokenizer ([cca9dd6](https://github.com/yozorajs/yozora/commit/cca9dd6fc3d4a22e1352378f59c7d2dccecfc5a2))
|
|
364
|
+
* 🔖 publish v1.0.0-alpha.27 ([8efea07](https://github.com/yozorajs/yozora/commit/8efea07b2314c241c91fc113abdc8852f216c9d7))
|
|
365
|
+
* ⬆️ upgrade dev dependencies ([d126ff4](https://github.com/yozorajs/yozora/commit/d126ff4c81ec09b366a0c60ba2a83e7f45fbe317))
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
# 1.0.0-alpha.26 (2021-06-25)
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
### Performance Improvements
|
|
373
|
+
|
|
374
|
+
* 🔖 publish v1.0.0-alpha.26 ([cbde29c](https://github.com/yozorajs/yozora/commit/cbde29c6188c9183f0b39ccfac0ad310803b09fe))
|
|
375
|
+
* 📝 update README ([37fa535](https://github.com/yozorajs/yozora/commit/37fa53559b52ab1cef6bee37ab6e94c8bdeebef4))
|
|
376
|
+
* 📝 update READMEs ([11e4f61](https://github.com/yozorajs/yozora/commit/11e4f6107c3862bf8c81dae882e93cab3f56f40f))
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
# 1.0.0-alpha.25 (2021-06-17)
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
### Bug Fixes
|
|
384
|
+
|
|
385
|
+
* 🐛 fix GFM[#588](https://github.com/yozorajs/yozora/issues/588) ([7b8d430](https://github.com/yozorajs/yozora/commit/7b8d430a44863ddc894d179578cf8022351e2638))
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
### Performance Improvements
|
|
389
|
+
|
|
390
|
+
* 🔖 publish v1.0.0-alpha.25 ([5e17f71](https://github.com/yozorajs/yozora/commit/5e17f7155391c21eb1c99e5024e48d5e208e80db))
|
|
391
|
+
* ⚰️ remove delimiterGroup as we are no longer need it ([e9de208](https://github.com/yozorajs/yozora/commit/e9de208eca035d874e1909869ab52a0a5201dd2f))
|
|
392
|
+
* 🎨 rewrite due to the algorithm changed ([7216611](https://github.com/yozorajs/yozora/commit/7216611d79f9f10faaf913500341b796a58c6b1b))
|
|
393
|
+
* 🎨 tokenizer-footnote should take same priority with images and link ([7aaf02f](https://github.com/yozorajs/yozora/commit/7aaf02f1b66219b8eb425a50fb3b893b56852c4b))
|
|
394
|
+
* 🎨 update interface types ([755d774](https://github.com/yozorajs/yozora/commit/755d7749777a4cc5bded6fab07dc89c0e9c2548d))
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
# 1.0.0-alpha.24 (2021-06-10)
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
### Performance Improvements
|
|
402
|
+
|
|
403
|
+
* 🔖 publish v1.0.0-alpha.24 ([6169f8e](https://github.com/yozorajs/yozora/commit/6169f8ecda42e04203e4533f820e82ea3e93b7dd))
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
# 1.0.0-alpha.23 (2021-06-08)
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
### Performance Improvements
|
|
411
|
+
|
|
412
|
+
* Move repository from github.com/guanghechen to github.com/yozorajs ([c1fd32c](https://github.com/yozorajs/yozora/commit/c1fd32ce818b44aa0d993ec8f74ef514bdf2d834))
|
|
413
|
+
* 🔖 publish v1.0.0-alpha.23 ([131a216](https://github.com/yozorajs/yozora/commit/131a2162b64eb23f98e93286974f4a3e4a91b77a))
|
|
414
|
+
* 📝 update READMEs ([6420941](https://github.com/yozorajs/yozora/commit/64209414cacdaf0e04329e2c86e6ff41f885f55f))
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
# 1.0.0-alpha.22 (2021-05-20)
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
### Performance Improvements
|
|
422
|
+
|
|
423
|
+
* 🎨 lint codes ([0d2d798](https://github.com/yozorajs/yozora/commit/0d2d7988d1d46f873e2a9f5d37de9c5daa39a109))
|
|
424
|
+
* 🔖 publish v1.0.0-alpha.22 ([a07a41d](https://github.com/yozorajs/yozora/commit/a07a41de8dda2ff579b0e5b469db75d6c629c38b))
|
|
425
|
+
* 🔧 rename the main branch to 'main' instead of 'master' ([c915653](https://github.com/yozorajs/yozora/commit/c9156537fba68ce073e139eb487afb973b7d90ba))
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
# 1.0.0-alpha.21 (2021-05-12)
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
### Performance Improvements
|
|
433
|
+
|
|
434
|
+
* 🔖 publish v1.0.0-alpha.21 ([e6655a2](https://github.com/yozorajs/yozora/commit/e6655a252c0b799d0990f06bc7cfdadc6824b63c))
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
|
|
438
|
+
# 1.0.0-alpha.20 (2021-04-20)
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
### Performance Improvements
|
|
442
|
+
|
|
443
|
+
* 🔖 publish v1.0.0-alpha.20 ([3f3831f](https://github.com/yozorajs/yozora/commit/3f3831fb6fdb72319e7d24a1ba4b51b44bdb4c8d))
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
|
|
447
|
+
# 1.0.0-alpha.19 (2021-04-19)
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
### Performance Improvements
|
|
451
|
+
|
|
452
|
+
* 🔖 publish v1.0.0-alpha.19 ([50b55f9](https://github.com/yozorajs/yozora/commit/50b55f9e5fd1d00c03d271a488d2a648ccd0a1d1))
|
|
453
|
+
* 📝 update READMEs ([907af97](https://github.com/yozorajs/yozora/commit/907af97f8c0bca5b045ccae188c6b759e88ec38c))
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
# 1.0.0-alpha.18 (2021-04-18)
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
### Performance Improvements
|
|
461
|
+
|
|
462
|
+
* 🔖 publish v1.0.0-alpha.18 ([219b28b](https://github.com/yozorajs/yozora/commit/219b28b38975d6d41f6c285a512a5c0dccceb6fa))
|
|
463
|
+
* 🎨 rename TokenizerPriority.LINK_OR_IMAGE to TokenizerPriority.LINKS ([53f719f](https://github.com/yozorajs/yozora/commit/53f719f2ef0dbf12029aa015e034a9a0f13378bf))
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
# 1.0.0-alpha.17 (2021-04-15)
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
### Performance Improvements
|
|
471
|
+
|
|
472
|
+
* 🔖 publish v1.0.0-alpha.17 ([0e7facd](https://github.com/yozorajs/yozora/commit/0e7facdde8692e538e5777d70b873cf6282f7de8))
|
|
473
|
+
* 📝 update docs ([acffd75](https://github.com/yozorajs/yozora/commit/acffd757123705c4d0f6a3948f62f3c460cefde3))
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
# 1.0.0-alpha.16 (2021-04-12)
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
### Performance Improvements
|
|
481
|
+
|
|
482
|
+
* 🔖 publish v1.0.0-alpha.16 ([9da34dd](https://github.com/yozorajs/yozora/commit/9da34dd46333b72f908c77d15f11326f3724060c))
|
|
483
|
+
* ✅ simplify test codes ([60d072c](https://github.com/yozorajs/yozora/commit/60d072c6bf4a414e45b3d98713223a23be5d0bb8))
|
|
484
|
+
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
# 1.0.0-alpha.15 (2021-04-11)
|
|
488
|
+
|
|
489
|
+
|
|
490
|
+
### Performance Improvements
|
|
491
|
+
|
|
492
|
+
* 🔖 publish v1.0.0-alpha.15 ([988d25f](https://github.com/yozorajs/yozora/commit/988d25f7958825ccbaaa99051ad7b823c625d4cf))
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
|
|
496
|
+
# 1.0.0-alpha.14 (2021-04-11)
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
### Performance Improvements
|
|
500
|
+
|
|
501
|
+
* 🔖 publish v1.0.0-alpha.14 ([3fcfffa](https://github.com/yozorajs/yozora/commit/3fcfffa0da0413449acf0d91d85400d0b31fa9a2))
|
|
502
|
+
* 🎨 rename isContainerBlock to isContainingBlock & use enum TokenizerPriority instead of magic numbers to present tokenizer proirity ([940c50b](https://github.com/yozorajs/yozora/commit/940c50bb58b76a888a512539f3a4db6e8396d45b))
|
|
503
|
+
* ✅ update tests ([3c9f64f](https://github.com/yozorajs/yozora/commit/3c9f64f331d2b2c3484cc580dc8ef13e21ee42b8))
|
|
504
|
+
* ✅ update tests ([a24d148](https://github.com/yozorajs/yozora/commit/a24d1485b59caaeff4510b1150d8810236a9906a))
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
# 1.0.0-alpha.13 (2021-04-10)
|
|
509
|
+
|
|
510
|
+
|
|
511
|
+
### Performance Improvements
|
|
512
|
+
|
|
513
|
+
* 🎨 add api for match-inline and parse-inline phase ([150231a](https://github.com/yozorajs/yozora/commit/150231af44b14db614c0823c05e94ba58e096cb3))
|
|
514
|
+
* 🔖 publish v1.0.0-alpha.13 ([949455c](https://github.com/yozorajs/yozora/commit/949455c25f4fb60a88c3484829a610da7c998969))
|
|
515
|
+
|
|
516
|
+
|
|
517
|
+
|
|
518
|
+
# 1.0.0-alpha.12 (2021-03-27)
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
### Features
|
|
522
|
+
|
|
523
|
+
* 💥 redesign interfaces & refactor tokenizer codes with types from @yozora/ast ([af3603d](https://github.com/yozorajs/yozora/commit/af3603d771bde94ec0c78fb53aa6d64a14933f9d))
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
### Performance Improvements
|
|
527
|
+
|
|
528
|
+
* 🎨 add static uniqueName into tokenizers ([f6e2c77](https://github.com/yozorajs/yozora/commit/f6e2c77b864c2ef05af0084025d999b4419d8095))
|
|
529
|
+
* 🎨 make '_tokenizer' optional in the result of tokenizers on match phase ([b1ea8de](https://github.com/yozorajs/yozora/commit/b1ea8de5a439615d09e9cc3585b1a3cbdb663d31))
|
|
530
|
+
* 🔖 publish v1.0.0-alpha.12 ([897f131](https://github.com/yozorajs/yozora/commit/897f1317408ab43406788d5b796d245fd4eeac13))
|
|
531
|
+
* 🎨 use AST types from @yozora/ast instead of @yozora/core-tokenizer ([fc55ceb](https://github.com/yozorajs/yozora/commit/fc55cebca8162a111fca1c0cdfbf0982831db66a))
|
|
532
|
+
* 🎨 use types defined in @yozora/ast & use tokenizerName as unique id of token ([d51f022](https://github.com/yozorajs/yozora/commit/d51f0222a829ef0caea5f1ec058ca3f3553c156d))
|
|
533
|
+
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
# 1.0.0-alpha.11 (2021-03-20)
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
### Performance Improvements
|
|
540
|
+
|
|
541
|
+
* 🔖 publish v1.0.0-alpha.11 ([df10f73](https://github.com/yozorajs/yozora/commit/df10f73cbcc698d44cd7f7efbab2f7cac66f8675))
|
|
542
|
+
|
|
543
|
+
|
|
544
|
+
|
|
545
|
+
# 1.0.0-alpha.10 (2021-03-20)
|
|
546
|
+
|
|
547
|
+
|
|
548
|
+
### Performance Improvements
|
|
549
|
+
|
|
550
|
+
* 🔖 publish v1.0.0-alpha.10 ([dbd0114](https://github.com/yozorajs/yozora/commit/dbd0114cd72fa029e743db5d38e10bc1af23ca33))
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
# 1.0.0-alpha.9 (2021-03-20)
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
### Performance Improvements
|
|
558
|
+
|
|
559
|
+
* 📝 fix invalid badge urls ([4d78b23](https://github.com/yozorajs/yozora/commit/4d78b23b2aa8ae65adb9e86ccd51e372a916f20b))
|
|
560
|
+
* 🔖 publish v1.0.0-alpha.9 ([1b41b56](https://github.com/yozorajs/yozora/commit/1b41b56362c328af28fde43a0b95fa02aff0dfbe))
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
# 1.0.0-alpha.8 (2021-03-13)
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
### Performance Improvements
|
|
568
|
+
|
|
569
|
+
* 🔖 publish v1.0.0-alpha.8 ([3cb3080](https://github.com/yozorajs/yozora/commit/3cb3080312048001d73911a892c4a7c69459c260))
|
|
570
|
+
* 📝 update badges ([418e221](https://github.com/yozorajs/yozora/commit/418e2216ed80c71445f9e0efd9ea054208b18c78))
|
|
571
|
+
* 🔧 update configs & lint codes ([3e9ded3](https://github.com/yozorajs/yozora/commit/3e9ded3f7ebe8dcb68a976675ffd34bdfd59ace9))
|
|
572
|
+
* 🔧 update package.json ([cba99c5](https://github.com/yozorajs/yozora/commit/cba99c5aa58de54672cc292e587914f56d702f7a))
|
|
573
|
+
* 📝 update READMEs ([188b30b](https://github.com/yozorajs/yozora/commit/188b30ba3f10096722e999452f84752ec3dd459a))
|
|
574
|
+
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
# 1.0.0-alpha.7 (2021-03-06)
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
### Performance Improvements
|
|
581
|
+
|
|
582
|
+
* 🎨 format codes ([1fbd596](https://github.com/yozorajs/yozora/commit/1fbd59671965b747a990d2bff77de0872f18836d))
|
|
583
|
+
* 🔧 add directory in repository field ([8daefc9](https://github.com/yozorajs/yozora/commit/8daefc94f4999aa471e2edc82728120ae9c0f079))
|
|
584
|
+
* 📝 update badges ([967819b](https://github.com/yozorajs/yozora/commit/967819be94f17a635169fabd48468747e53f2b84))
|
|
585
|
+
* 🔖 publish v1.0.0-alpha.7 ([115ce36](https://github.com/yozorajs/yozora/commit/115ce36207dc675c7a13275c6bf2fccafdb47ffc))
|
|
586
|
+
* 🔧 update scripts field ([72841c5](https://github.com/yozorajs/yozora/commit/72841c571882cb600706aaab1a335fa68013167c))
|
|
587
|
+
* 🔧 use @guanghechen/rollup-config instead of @barusu/rollup-config ([6228c33](https://github.com/yozorajs/yozora/commit/6228c330ed6dc3113c671f56feaa91d47bff6d64))
|
|
588
|
+
* 🔨 use top level rollup.config.js ([818c59b](https://github.com/yozorajs/yozora/commit/818c59b6f5ef3c29f718428c620ebce08f24b9d6))
|
|
589
|
+
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
# 1.0.0-alpha.6 (2021-02-25)
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
### Performance Improvements
|
|
596
|
+
|
|
597
|
+
* 🎨 format codes through 'yarn sort-imports' ([a932fec](https://github.com/yozorajs/yozora/commit/a932fec827b51397f2c5378afff11d4efd09159e))
|
|
598
|
+
* 🎨 format codes with prettier ([04582c8](https://github.com/yozorajs/yozora/commit/04582c840608a6d36270066a1e5d552840855118))
|
|
599
|
+
* 🔖 publish v1.0.0-alpha.6 ([e4f20f7](https://github.com/yozorajs/yozora/commit/e4f20f785dc3928c0c928d0d38665bf3609481a6))
|
|
600
|
+
* 🚚 rename @yozora/parser-core to @yozora/core-parser ([e94956f](https://github.com/yozorajs/yozora/commit/e94956f58ccf64f37c476c953679578b3b4b7c24))
|
|
601
|
+
* ⬆️ upgrade @barusu/* to v0.0.47 & upgrade rollup to v2.39.1 ([173b431](https://github.com/yozorajs/yozora/commit/173b431d4522a90b964b11d015ce24eba4028deb))
|
|
602
|
+
* 🔧 upgrade barusu to v0.0.46 ([7c360a4](https://github.com/yozorajs/yozora/commit/7c360a46a6c188e13512ac814a8f59169f41f23d))
|
|
603
|
+
* 🔧 upgrade eslint & update eslint configs & lint codes ([4227453](https://github.com/yozorajs/yozora/commit/4227453ce46a4c9e9e1eeac2939c6365af78c696))
|
|
604
|
+
|
|
605
|
+
|
|
606
|
+
|
|
607
|
+
# 1.0.0-alpha.5 (2021-02-23)
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
### Performance Improvements
|
|
611
|
+
|
|
612
|
+
* 🔖 publish v1.0.0-alpha.5 ([fa285da](https://github.com/yozorajs/yozora/commit/fa285da950e21abf2505f51256bb12e3b8307823))
|
|
613
|
+
|
|
614
|
+
|
|
615
|
+
|
|
616
|
+
# 1.0.0-alpha.4 (2021-02-23)
|
|
617
|
+
|
|
618
|
+
|
|
619
|
+
### Performance Improvements
|
|
620
|
+
|
|
621
|
+
* :art: merge @yozora/tokenizercore-inline and @yozora/tokenizercore-block into @yozora/tokenizercore ([7583266](https://github.com/yozorajs/yozora/commit/7583266e831d441b0c5004b7ef05cf7008c8f8da))
|
|
622
|
+
* 🎨 move property `recongnizedTypes` from TokenizerParseBlockHook and TokenizerParseInlineHook into the Tokenizer ([d3ec789](https://github.com/yozorajs/yozora/commit/d3ec78944df57a2e8515019bf80eb9c6e508a2ac))
|
|
623
|
+
* 🔖 publish v1.0.0-alpha.4 ([1cfd290](https://github.com/yozorajs/yozora/commit/1cfd29055684e41eb0859d81210a2b542424ffab))
|
|
624
|
+
* 🎨 rename tokenizer hooks ([9f0679f](https://github.com/yozorajs/yozora/commit/9f0679f829efd685b179cf6717cc85a10c004c52))
|
|
625
|
+
* 🔧 update jest config ([2142751](https://github.com/yozorajs/yozora/commit/2142751fee35f8bce093e3b884902e53fa56f072))
|
|
626
|
+
* 📝 update README ([57663fd](https://github.com/yozorajs/yozora/commit/57663fdd46cb57de41feddb461caafed9e54bc07))
|
|
627
|
+
* 📝 update READMEs ([c421f5c](https://github.com/yozorajs/yozora/commit/c421f5c5e21bfd176a5b8b2b7716c4c8326fffcf))
|
|
628
|
+
|
|
629
|
+
|
|
630
|
+
|
|
631
|
+
# 1.0.0-alpha.3 (2021-02-18)
|
|
632
|
+
|
|
633
|
+
|
|
634
|
+
### Performance Improvements
|
|
635
|
+
|
|
636
|
+
* 🎨 format codes ([a94d2b5](https://github.com/yozorajs/yozora/commit/a94d2b5fa632b6b87d646b7bac3ee8f2bff661ba))
|
|
637
|
+
* 🔖 publish v1.0.0-alpha.3 ([ba9b6dd](https://github.com/yozorajs/yozora/commit/ba9b6dd2d3bb70a22be8e4bdc1b1c5a8d07bdbe0))
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
|
|
641
|
+
# 1.0.0-alpha.2 (2021-02-15)
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
### Performance Improvements
|
|
645
|
+
|
|
646
|
+
* 🔖 publish v1.0.0-alpha.2 ([d1ed70b](https://github.com/yozorajs/yozora/commit/d1ed70bc4f3728049ba285c70a1cd15d6c095597))
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
# 1.0.0-alpha.1 (2021-02-15)
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
### Performance Improvements
|
|
654
|
+
|
|
655
|
+
* 🎨 format codes ([27c0483](https://github.com/yozorajs/yozora/commit/27c0483131f86e77409f5fc385d642c50e7db37a))
|
|
656
|
+
* 🔖 publish v1.0.0-alpha.1 ([def33f1](https://github.com/yozorajs/yozora/commit/def33f19b215c17686a2a270f95329aac3d9d2ce))
|
|
657
|
+
* 📝 update homepage url ([8833f53](https://github.com/yozorajs/yozora/commit/8833f53122bc845f8a359e0192e9443e35fc2808))
|
|
658
|
+
|
|
659
|
+
|
|
660
|
+
|
|
661
|
+
# 1.0.0-alpha.0 (2021-02-14)
|
|
662
|
+
|
|
663
|
+
|
|
664
|
+
### Bug Fixes
|
|
665
|
+
|
|
666
|
+
* 🐛 fix path error caused by the previous move operation ([3fb8564](https://github.com/yozorajs/yozora/commit/3fb856499abc6bcd4db1e2da676c8005a77eb264))
|
|
667
|
+
* 🐛 fix type errors ([016c094](https://github.com/yozorajs/yozora/commit/016c094219687edff2e9f2f963da9ec376982af9))
|
|
668
|
+
* 🐛 links and images are more tightly than emphasis ([2257764](https://github.com/yozorajs/yozora/commit/22577644c83edb8face39a4ed3f4a4f2f19fe61c))
|
|
669
|
+
|
|
670
|
+
|
|
671
|
+
### Features
|
|
672
|
+
|
|
673
|
+
* 🚧 implement @yozora/tokenizer-autolink ([02c4abd](https://github.com/yozorajs/yozora/commit/02c4abdb8cdb16cf88c2ba19bc959992d50a73c0))
|
|
674
|
+
* 🚧 update due to the change of @yozora/tokenizercore and @yozora/tokenizercore-block ([84e7096](https://github.com/yozorajs/yozora/commit/84e7096d3301ae5f5fc16cec25b2fe584b2368d6))
|
|
675
|
+
* 👽️ update due to the change of @yozora/tokenizercore* ([4208ea9](https://github.com/yozorajs/yozora/commit/4208ea95daa1fc13a07b0afa68be20ba560ff81a))
|
|
676
|
+
|
|
677
|
+
|
|
678
|
+
### Performance Improvements
|
|
679
|
+
|
|
680
|
+
* :art: [tokenizercore-inline] improve: update types ([6ed6796](https://github.com/yozorajs/yozora/commit/6ed67964e41366ecfa74eed434fdff9b9297dff0))
|
|
681
|
+
* :construction: [BREAKING] feat: update tokenizer types from constant case to camel case ([2a99460](https://github.com/yozorajs/yozora/commit/2a99460b29b9bce919b254285ecacd182f945ea0))
|
|
682
|
+
* 🎨 update @yozora/tokenizercore-inline with new algorithm & update @yozora/tokenizer-emphasis ([7e33d28](https://github.com/yozorajs/yozora/commit/7e33d2816ce349bba156c644fb9802d7b6474deb))
|
|
683
|
+
* ✅ add ast positions ([a4a55bb](https://github.com/yozorajs/yozora/commit/a4a55bb9297fb587b80c206508ee57f1c0ff7569))
|
|
684
|
+
* 🎨 update character enums & rename utility funcs ([aef44cc](https://github.com/yozorajs/yozora/commit/aef44cce880b5bbefbaee574229e182af8891246))
|
|
685
|
+
* 🚧 dealing with nested links. GFM[#540](https://github.com/yozorajs/yozora/issues/540) ([408a754](https://github.com/yozorajs/yozora/commit/408a7549d74f59831b9a04d8aa5eb16cbad81470))
|
|
686
|
+
* 🎨 encode link destination with encodeURI ([9a919f7](https://github.com/yozorajs/yozora/commit/9a919f7e9ab369536fb57d2886d969e510a13e4f))
|
|
687
|
+
* 🔨 fix path error ([9b7780f](https://github.com/yozorajs/yozora/commit/9b7780fa9d919ac0f6d35641e3f3995a703d79f9))
|
|
688
|
+
* 🎨 format codes ([ae32884](https://github.com/yozorajs/yozora/commit/ae328840bc9b25b1101203f302ae049c2d43b0d0))
|
|
689
|
+
* 🎨 format codes & add comments ([ba7ce7f](https://github.com/yozorajs/yozora/commit/ba7ce7f5af95ebac78bcf988e85aad9f520e1e98))
|
|
690
|
+
* 🎨 remove thickness from InlineTokenDelimiter ([cc2699a](https://github.com/yozorajs/yozora/commit/cc2699ac879cc950568df32ebf2848e864f5e13f))
|
|
691
|
+
* 🎨 add new hook 'isDelimiterPair' to check if the given two delimiters can be combined into a pair ([55148d2](https://github.com/yozorajs/yozora/commit/55148d2f9ae3d8843857b96e83affe03536e28c7))
|
|
692
|
+
* 🚧 update due to the change of @yozora/tokenizercore-inline ([4676e3e](https://github.com/yozorajs/yozora/commit/4676e3e2b9930312ec7ea60e92af496729e33688))
|
|
693
|
+
* 🎨 update due to the change of @yozora/tokenizercore-inline ([4fa27cc](https://github.com/yozorajs/yozora/commit/4fa27cc90e706d4ddf733988de69ff2923b0d32f))
|
|
694
|
+
* 🎨 update type of InlineTokenizerMatchPhaseHook ([a3fb2f9](https://github.com/yozorajs/yozora/commit/a3fb2f90979c0c4da95f171ea617760febafd591))
|
|
695
|
+
* 🎨 update due to the change of @yozora/tokenizercore-inline ([4090126](https://github.com/yozorajs/yozora/commit/40901261538c069b8794cfa57dc2bcb0519bf035))
|
|
696
|
+
* 🎨 rename isBracketsBalanced to checkBalancedBracketsStatus and update its return type ([f1b494d](https://github.com/yozorajs/yozora/commit/f1b494d0bd43188e77b0a5504a19a914f9ee30e4))
|
|
697
|
+
* 🎨 move calcImageAlt from @yozora/tokenizercore-inline to @yozora/tokenizer-image ([3fe9a0c](https://github.com/yozorajs/yozora/commit/3fe9a0c568301c39e69d42d50e531116aa67368d))
|
|
698
|
+
* 🎨 move link helper func from @yozora/tokenizercore-inline to @yozora/tokenizer-link and @yozora/tokenizer-link-definition ([eb7b902](https://github.com/yozorajs/yozora/commit/eb7b902bc4b2a9f94e91f1adef05ca0b34b18ec7))
|
|
699
|
+
* 🚚 move tokenizers/block/* and tokenizers/inline/* to tokenizers/ ([c451e41](https://github.com/yozorajs/yozora/commit/c451e41d7d78e9dca078fa6feb0c548a3be7cc42))
|
|
700
|
+
* 🎨 update due to the change of @yozora/tokenizercore-inline ([4bfe4c7](https://github.com/yozorajs/yozora/commit/4bfe4c77e78e31add99d8504784a3b6bfd8489a2))
|
|
701
|
+
* 🔖 publish v1.0.0-alpha.0 ([d7a394a](https://github.com/yozorajs/yozora/commit/d7a394affbdebe154b2eda5430f4440661f1c711))
|
|
702
|
+
* 🎨 remove useless types ([d430236](https://github.com/yozorajs/yozora/commit/d43023647638071fb184c2844e1dd6ea379ec877))
|
|
703
|
+
* 🎨 remove YastBlockNodeType and YastInlineNodeType, use YastNodeType instead ([2142b3d](https://github.com/yozorajs/yozora/commit/2142b3d9b9b8247202d78fca9571485cb1c13110))
|
|
704
|
+
* 🎨 rename EnhancedYastNodePoint to NodePoint & rename *WhiteSpace* to *Whitespace* ([988a99f](https://github.com/yozorajs/yozora/commit/988a99fcf448012fd07df0eacff72d7b5a0166fe))
|
|
705
|
+
* 🎨 rename YastNodeInterval to NodeInterval & move this type from @yozora/tokenizercore to @yozora/character ([86f9984](https://github.com/yozorajs/yozora/commit/86f99848088e55612e0de6a81b58977071ee966a))
|
|
706
|
+
* 🎨 rewrite @yozora/jest-for-tokenizer & update tests ([2b68af6](https://github.com/yozorajs/yozora/commit/2b68af63e0ea2c267b2c8c7581998cfba8197bd4))
|
|
707
|
+
* 🎨 rewrite string preprocessing algorithm to support tabs and line ends ([1312f88](https://github.com/yozorajs/yozora/commit/1312f88e3ae5940d8fd4c616a1fec23284b89287))
|
|
708
|
+
* 🎨 update BlockYastNode types ([7d1bda8](https://github.com/yozorajs/yozora/commit/7d1bda887ea88b150128b6095d737f7991eea791))
|
|
709
|
+
* 📝 update READMEs ([9657e0c](https://github.com/yozorajs/yozora/commit/9657e0c41b37e526ad469f4e45d5d080a92171fb))
|
|
710
|
+
* ✅ update tests due to the change of @yozora/jest-for-tokenizer ([e54a56e](https://github.com/yozorajs/yozora/commit/e54a56e96016333436c5146535c8fbbf83d55ec2))
|
|
711
|
+
* 🚧 update tokenizer shape & support to update the member variables in constructor ([a542f34](https://github.com/yozorajs/yozora/commit/a542f340a3beeddb5a7cef95f7d4a2913ce92b1b))
|
|
712
|
+
* 🎨 update types ([7066191](https://github.com/yozorajs/yozora/commit/70661912870824c0722c2a1592c7ca2f50f46eab))
|
|
713
|
+
* 🎨 update types (remove RawContent and fire dead codes) ([73d3551](https://github.com/yozorajs/yozora/commit/73d35519bb998764e3822b4bed9f17135c1b8b70))
|
|
714
|
+
* ⬆️ 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/image#readme">@yozora/tokenizer-image</a>
|
|
6
6
|
</h1>
|
|
7
7
|
<div align="center">
|
|
8
8
|
<a href="https://www.npmjs.com/package/@yozora/tokenizer-image">
|
|
@@ -182,53 +182,53 @@ Name | Type | Required | Default
|
|
|
182
182
|
|
|
183
183
|
[live-examples]: https://yozora.guanghechen.com/docs/package/tokenizer-image#live-examples
|
|
184
184
|
[docpage]: https://yozora.guanghechen.com/docs/package/tokenizer-image
|
|
185
|
-
[homepage]: https://github.com/yozorajs/yozora/tree/
|
|
185
|
+
[homepage]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/image#readme
|
|
186
186
|
[gfm-spec]: https://github.github.com/gfm
|
|
187
187
|
[mdast-homepage]: https://github.com/syntax-tree/mdast
|
|
188
188
|
|
|
189
|
-
[@yozora/ast]: https://github.com/yozorajs/yozora/tree/
|
|
190
|
-
[@yozora/ast-util]: https://github.com/yozorajs/yozora/tree/
|
|
191
|
-
[@yozora/character]: https://github.com/yozorajs/yozora/tree/
|
|
189
|
+
[@yozora/ast]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/ast#readme
|
|
190
|
+
[@yozora/ast-util]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/ast-util#readme
|
|
191
|
+
[@yozora/character]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/character#readme
|
|
192
192
|
[@yozora/eslint-config]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/eslint-config#readme
|
|
193
|
-
[@yozora/core-parser]: https://github.com/yozorajs/yozora/tree/
|
|
194
|
-
[@yozora/core-tokenizer]: https://github.com/yozorajs/yozora/tree/
|
|
195
|
-
[@yozora/invariant]: https://github.com/yozorajs/yozora/tree/
|
|
193
|
+
[@yozora/core-parser]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/core-parser#readme
|
|
194
|
+
[@yozora/core-tokenizer]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/core-tokenizer#readme
|
|
195
|
+
[@yozora/invariant]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/invariant#readme
|
|
196
196
|
[@yozora/jest-for-tokenizer]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/jest-for-tokenizer#readme
|
|
197
|
-
[@yozora/parser]: https://github.com/yozorajs/yozora/tree/
|
|
198
|
-
[@yozora/parser-gfm]: https://github.com/yozorajs/yozora/tree/
|
|
199
|
-
[@yozora/parser-gfm-ex]: https://github.com/yozorajs/yozora/tree/
|
|
197
|
+
[@yozora/parser]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser#readme
|
|
198
|
+
[@yozora/parser-gfm]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser-gfm#readme
|
|
199
|
+
[@yozora/parser-gfm-ex]: https://github.com/yozorajs/yozora/tree/v2.1.5/packages/parser-gfm-ex#readme
|
|
200
200
|
[@yozora/template-tokenizer]: https://github.com/yozorajs/yozora/tree/release-2.x.x/packages/template-tokenizer#readme
|
|
201
|
-
[@yozora/tokenizer-admonition]: https://github.com/yozorajs/yozora/tree/
|
|
202
|
-
[@yozora/tokenizer-autolink]: https://github.com/yozorajs/yozora/tree/
|
|
203
|
-
[@yozora/tokenizer-autolink-extension]: https://github.com/yozorajs/yozora/tree/
|
|
204
|
-
[@yozora/tokenizer-blockquote]: https://github.com/yozorajs/yozora/tree/
|
|
205
|
-
[@yozora/tokenizer-break]: https://github.com/yozorajs/yozora/tree/
|
|
206
|
-
[@yozora/tokenizer-definition]: https://github.com/yozorajs/yozora/tree/
|
|
207
|
-
[@yozora/tokenizer-delete]: https://github.com/yozorajs/yozora/tree/
|
|
208
|
-
[@yozora/tokenizer-ecma-import]: https://github.com/yozorajs/yozora/tree/
|
|
209
|
-
[@yozora/tokenizer-emphasis]: https://github.com/yozorajs/yozora/tree/
|
|
210
|
-
[@yozora/tokenizer-fenced-block]: https://github.com/yozorajs/yozora/tree/
|
|
211
|
-
[@yozora/tokenizer-fenced-code]: https://github.com/yozorajs/yozora/tree/
|
|
212
|
-
[@yozora/tokenizer-footnote]: https://github.com/yozorajs/yozora/tree/
|
|
213
|
-
[@yozora/tokenizer-footnote-definition]: https://github.com/yozorajs/yozora/tree/
|
|
214
|
-
[@yozora/tokenizer-footnote-reference]: https://github.com/yozorajs/yozora/tree/
|
|
215
|
-
[@yozora/tokenizer-heading]: https://github.com/yozorajs/yozora/tree/
|
|
216
|
-
[@yozora/tokenizer-html-block]: https://github.com/yozorajs/yozora/tree/
|
|
217
|
-
[@yozora/tokenizer-html-inline]: https://github.com/yozorajs/yozora/tree/
|
|
218
|
-
[@yozora/tokenizer-image]: https://github.com/yozorajs/yozora/tree/
|
|
219
|
-
[@yozora/tokenizer-image-reference]: https://github.com/yozorajs/yozora/tree/
|
|
220
|
-
[@yozora/tokenizer-indented-code]: https://github.com/yozorajs/yozora/tree/
|
|
221
|
-
[@yozora/tokenizer-inline-code]: https://github.com/yozorajs/yozora/tree/
|
|
222
|
-
[@yozora/tokenizer-inline-math]: https://github.com/yozorajs/yozora/tree/
|
|
223
|
-
[@yozora/tokenizer-link]: https://github.com/yozorajs/yozora/tree/
|
|
224
|
-
[@yozora/tokenizer-link-reference]: https://github.com/yozorajs/yozora/tree/
|
|
225
|
-
[@yozora/tokenizer-list]: https://github.com/yozorajs/yozora/tree/
|
|
226
|
-
[@yozora/tokenizer-math]: https://github.com/yozorajs/yozora/tree/
|
|
227
|
-
[@yozora/tokenizer-paragraph]: https://github.com/yozorajs/yozora/tree/
|
|
228
|
-
[@yozora/tokenizer-setext-heading]: https://github.com/yozorajs/yozora/tree/
|
|
229
|
-
[@yozora/tokenizer-table]: https://github.com/yozorajs/yozora/tree/
|
|
230
|
-
[@yozora/tokenizer-text]: https://github.com/yozorajs/yozora/tree/
|
|
231
|
-
[@yozora/tokenizer-thematic-break]: https://github.com/yozorajs/yozora/tree/
|
|
201
|
+
[@yozora/tokenizer-admonition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/admonition#readme
|
|
202
|
+
[@yozora/tokenizer-autolink]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/autolink#readme
|
|
203
|
+
[@yozora/tokenizer-autolink-extension]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/autolink-extension#readme
|
|
204
|
+
[@yozora/tokenizer-blockquote]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/blockquote#readme
|
|
205
|
+
[@yozora/tokenizer-break]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/break#readme
|
|
206
|
+
[@yozora/tokenizer-definition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/definition#readme
|
|
207
|
+
[@yozora/tokenizer-delete]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/delete#readme
|
|
208
|
+
[@yozora/tokenizer-ecma-import]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/ecma-import#readme
|
|
209
|
+
[@yozora/tokenizer-emphasis]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/emphasis#readme
|
|
210
|
+
[@yozora/tokenizer-fenced-block]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/fenced-block#readme
|
|
211
|
+
[@yozora/tokenizer-fenced-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/fenced-code#readme
|
|
212
|
+
[@yozora/tokenizer-footnote]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote#readme
|
|
213
|
+
[@yozora/tokenizer-footnote-definition]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote-definition#readme
|
|
214
|
+
[@yozora/tokenizer-footnote-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/footnote-reference#readme
|
|
215
|
+
[@yozora/tokenizer-heading]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/heading#readme
|
|
216
|
+
[@yozora/tokenizer-html-block]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/html-block#readme
|
|
217
|
+
[@yozora/tokenizer-html-inline]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/html-inline#readme
|
|
218
|
+
[@yozora/tokenizer-image]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/image#readme
|
|
219
|
+
[@yozora/tokenizer-image-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/image-reference#readme
|
|
220
|
+
[@yozora/tokenizer-indented-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/indented-code#readme
|
|
221
|
+
[@yozora/tokenizer-inline-code]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/inline-code#readme
|
|
222
|
+
[@yozora/tokenizer-inline-math]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/inline-math#readme
|
|
223
|
+
[@yozora/tokenizer-link]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/link#readme
|
|
224
|
+
[@yozora/tokenizer-link-reference]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/link-reference#readme
|
|
225
|
+
[@yozora/tokenizer-list]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/list#readme
|
|
226
|
+
[@yozora/tokenizer-math]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/math#readme
|
|
227
|
+
[@yozora/tokenizer-paragraph]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/paragraph#readme
|
|
228
|
+
[@yozora/tokenizer-setext-heading]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/setext-heading#readme
|
|
229
|
+
[@yozora/tokenizer-table]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/table#readme
|
|
230
|
+
[@yozora/tokenizer-text]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/text#readme
|
|
231
|
+
[@yozora/tokenizer-thematic-break]: https://github.com/yozorajs/yozora/tree/v2.1.5/tokenizers/thematic-break#readme
|
|
232
232
|
|
|
233
233
|
[@yozora/react-admonition]: https://github.com/yozorajs/yozora-react/tree/main/packages/admonition#readme
|
|
234
234
|
[@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-image",
|
|
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,10 +39,10 @@
|
|
|
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.
|
|
45
|
-
"@yozora/tokenizer-link": "^2.1.
|
|
42
|
+
"@yozora/ast": "^2.1.5",
|
|
43
|
+
"@yozora/character": "^2.1.5",
|
|
44
|
+
"@yozora/core-tokenizer": "^2.1.5",
|
|
45
|
+
"@yozora/tokenizer-link": "^2.1.5"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "4f753bcf0fd921938464802462dc48c53bbd014d"
|
|
48
48
|
}
|
package/src/index.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export * from './util'
|
|
2
|
-
export { match as imageMatch } from './match'
|
|
3
|
-
export { parse as imageParse } from './parse'
|
|
4
|
-
export { ImageTokenizer, ImageTokenizer as default } from './tokenizer'
|
|
5
|
-
export { uniqueName as ImageTokenizerName } from './types'
|
|
6
|
-
export type {
|
|
7
|
-
IThis as IImageHookContext,
|
|
8
|
-
IToken as IImageToken,
|
|
9
|
-
ITokenizerProps as IImageTokenizerProps,
|
|
10
|
-
} from './types'
|
package/src/match.ts
DELETED
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
import { ImageType } from '@yozora/ast'
|
|
2
|
-
import type { INodePoint } from '@yozora/character'
|
|
3
|
-
import { AsciiCodePoint } from '@yozora/character'
|
|
4
|
-
import type {
|
|
5
|
-
IInlineToken,
|
|
6
|
-
IMatchInlineHookCreator,
|
|
7
|
-
IResultOfIsDelimiterPair,
|
|
8
|
-
IResultOfProcessDelimiterPair,
|
|
9
|
-
} from '@yozora/core-tokenizer'
|
|
10
|
-
import { eatOptionalWhitespaces, genFindDelimiter } from '@yozora/core-tokenizer'
|
|
11
|
-
import {
|
|
12
|
-
checkBalancedBracketsStatus,
|
|
13
|
-
eatLinkDestination,
|
|
14
|
-
eatLinkTitle,
|
|
15
|
-
} from '@yozora/tokenizer-link'
|
|
16
|
-
import type { IDelimiter, IThis, IToken, T } from './types'
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Syntax for images is like the syntax for links, with one difference.
|
|
20
|
-
* Instead of link text, we have an image description.
|
|
21
|
-
* The rules for this are the same as for link text, except that
|
|
22
|
-
*
|
|
23
|
-
* a) an image description starts with ''
|
|
38
|
-
* - '](url "title")'
|
|
39
|
-
* - '](<url>)'
|
|
40
|
-
* - '](<url> "title")'
|
|
41
|
-
*
|
|
42
|
-
* @see https://github.com/syntax-tree/mdast#image
|
|
43
|
-
* @see https://github.github.com/gfm/#images
|
|
44
|
-
*/
|
|
45
|
-
export const match: IMatchInlineHookCreator<T, IDelimiter, IToken, IThis> = function (api) {
|
|
46
|
-
return {
|
|
47
|
-
findDelimiter: () => genFindDelimiter<IDelimiter>(_findDelimiter),
|
|
48
|
-
isDelimiterPair,
|
|
49
|
-
processDelimiterPair,
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Images can contains Images, so implement an algorithm similar to bracket
|
|
53
|
-
* matching, pushing all opener delimiters onto the stack
|
|
54
|
-
*
|
|
55
|
-
* The rules for this are the same as for link text, except that
|
|
56
|
-
* (a) an image description starts with '![' rather than '[', and
|
|
57
|
-
* (b) an image description may contain links. An image description has
|
|
58
|
-
* inline elements as its contents. When an image is rendered to HTML,
|
|
59
|
-
* this is standardly used as the image’s alt attribute
|
|
60
|
-
*
|
|
61
|
-
* @see https://github.github.com/gfm/#inline-link
|
|
62
|
-
* @see https://github.github.com/gfm/#example-582
|
|
63
|
-
*
|
|
64
|
-
* @override
|
|
65
|
-
* @see IMatchInlineHook
|
|
66
|
-
*/
|
|
67
|
-
function _findDelimiter(startIndex: number, endIndex: number): IDelimiter | null {
|
|
68
|
-
const nodePoints: ReadonlyArray<INodePoint> = api.getNodePoints()
|
|
69
|
-
const blockEndIndex = api.getBlockEndIndex()
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* FIXME:
|
|
73
|
-
*
|
|
74
|
-
* This is a hack method to fix the situation where a higher priority token
|
|
75
|
-
* is embedded in the delimiter, at this time, ignore the tokens that have
|
|
76
|
-
* been parsed, and continue to match the content until the delimiter meets
|
|
77
|
-
* its own definition or reaches the right boundary of the block content.
|
|
78
|
-
*
|
|
79
|
-
* This algorithm has not been strictly logically verified, but I think it
|
|
80
|
-
* can work well in most cases. After all, it has passed many test cases.
|
|
81
|
-
* @see https://github.github.com/gfm/#example-588
|
|
82
|
-
*/
|
|
83
|
-
for (let i = startIndex; i < endIndex; ++i) {
|
|
84
|
-
const c = nodePoints[i].codePoint
|
|
85
|
-
switch (c) {
|
|
86
|
-
case AsciiCodePoint.BACKSLASH:
|
|
87
|
-
i += 1
|
|
88
|
-
break
|
|
89
|
-
case AsciiCodePoint.EXCLAMATION_MARK: {
|
|
90
|
-
if (i + 1 < endIndex && nodePoints[i + 1].codePoint === AsciiCodePoint.OPEN_BRACKET) {
|
|
91
|
-
return {
|
|
92
|
-
type: 'opener',
|
|
93
|
-
startIndex: i,
|
|
94
|
-
endIndex: i + 2,
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
break
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* An inline link consists of a link text followed immediately by a
|
|
101
|
-
* left parenthesis '(', ..., and a right parenthesis ')'
|
|
102
|
-
* @see https://github.github.com/gfm/#inline-link
|
|
103
|
-
*/
|
|
104
|
-
case AsciiCodePoint.CLOSE_BRACKET: {
|
|
105
|
-
/**
|
|
106
|
-
* An inline link consists of a link text followed immediately by a
|
|
107
|
-
* left parenthesis '('
|
|
108
|
-
* @see https://github.github.com/gfm/#inline-link
|
|
109
|
-
*/
|
|
110
|
-
if (
|
|
111
|
-
i + 1 >= endIndex ||
|
|
112
|
-
nodePoints[i + 1].codePoint !== AsciiCodePoint.OPEN_PARENTHESIS
|
|
113
|
-
) {
|
|
114
|
-
break
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// try to match link destination
|
|
118
|
-
const destinationStartIndex = eatOptionalWhitespaces(nodePoints, i + 2, blockEndIndex)
|
|
119
|
-
const destinationEndIndex = eatLinkDestination(
|
|
120
|
-
nodePoints,
|
|
121
|
-
destinationStartIndex,
|
|
122
|
-
blockEndIndex,
|
|
123
|
-
)
|
|
124
|
-
if (destinationEndIndex < 0) break
|
|
125
|
-
|
|
126
|
-
// try to match link title
|
|
127
|
-
const titleStartIndex = eatOptionalWhitespaces(
|
|
128
|
-
nodePoints,
|
|
129
|
-
destinationEndIndex,
|
|
130
|
-
blockEndIndex,
|
|
131
|
-
)
|
|
132
|
-
const titleEndIndex = eatLinkTitle(nodePoints, titleStartIndex, blockEndIndex)
|
|
133
|
-
if (titleEndIndex < 0) break
|
|
134
|
-
|
|
135
|
-
const _startIndex = i
|
|
136
|
-
const _endIndex = eatOptionalWhitespaces(nodePoints, titleEndIndex, blockEndIndex) + 1
|
|
137
|
-
if (
|
|
138
|
-
_endIndex > blockEndIndex ||
|
|
139
|
-
nodePoints[_endIndex - 1].codePoint !== AsciiCodePoint.CLOSE_PARENTHESIS
|
|
140
|
-
) {
|
|
141
|
-
break
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
/**
|
|
145
|
-
* Both the title and the destination may be omitted
|
|
146
|
-
* @see https://github.github.com/gfm/#example-495
|
|
147
|
-
*/
|
|
148
|
-
return {
|
|
149
|
-
type: 'closer',
|
|
150
|
-
startIndex: _startIndex,
|
|
151
|
-
endIndex: _endIndex,
|
|
152
|
-
destinationContent:
|
|
153
|
-
destinationStartIndex < destinationEndIndex
|
|
154
|
-
? {
|
|
155
|
-
startIndex: destinationStartIndex,
|
|
156
|
-
endIndex: destinationEndIndex,
|
|
157
|
-
}
|
|
158
|
-
: undefined,
|
|
159
|
-
titleContent:
|
|
160
|
-
titleStartIndex < titleEndIndex
|
|
161
|
-
? { startIndex: titleStartIndex, endIndex: titleEndIndex }
|
|
162
|
-
: undefined,
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
return null
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
function isDelimiterPair(
|
|
171
|
-
openerDelimiter: IDelimiter,
|
|
172
|
-
closerDelimiter: IDelimiter,
|
|
173
|
-
internalTokens: ReadonlyArray<IInlineToken>,
|
|
174
|
-
): IResultOfIsDelimiterPair {
|
|
175
|
-
const nodePoints: ReadonlyArray<INodePoint> = api.getNodePoints()
|
|
176
|
-
const balancedBracketsStatus: -1 | 0 | 1 = checkBalancedBracketsStatus(
|
|
177
|
-
openerDelimiter.endIndex,
|
|
178
|
-
closerDelimiter.startIndex,
|
|
179
|
-
internalTokens,
|
|
180
|
-
nodePoints,
|
|
181
|
-
)
|
|
182
|
-
switch (balancedBracketsStatus) {
|
|
183
|
-
case -1:
|
|
184
|
-
return { paired: false, opener: false, closer: true }
|
|
185
|
-
case 0:
|
|
186
|
-
return { paired: true }
|
|
187
|
-
case 1:
|
|
188
|
-
return { paired: false, opener: true, closer: false }
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
function processDelimiterPair(
|
|
193
|
-
openerDelimiter: IDelimiter,
|
|
194
|
-
closerDelimiter: IDelimiter,
|
|
195
|
-
internalTokens: ReadonlyArray<IInlineToken>,
|
|
196
|
-
): IResultOfProcessDelimiterPair<T, IToken, IDelimiter> {
|
|
197
|
-
const token: IToken = {
|
|
198
|
-
nodeType: ImageType,
|
|
199
|
-
startIndex: openerDelimiter.startIndex,
|
|
200
|
-
endIndex: closerDelimiter.endIndex,
|
|
201
|
-
destinationContent: closerDelimiter.destinationContent,
|
|
202
|
-
titleContent: closerDelimiter.titleContent,
|
|
203
|
-
children: api.resolveInternalTokens(
|
|
204
|
-
internalTokens,
|
|
205
|
-
openerDelimiter.endIndex,
|
|
206
|
-
closerDelimiter.startIndex,
|
|
207
|
-
),
|
|
208
|
-
}
|
|
209
|
-
return { tokens: [token] }
|
|
210
|
-
}
|
|
211
|
-
}
|
package/src/parse.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { Node } from '@yozora/ast'
|
|
2
|
-
import { ImageType } from '@yozora/ast'
|
|
3
|
-
import type { INodePoint } from '@yozora/character'
|
|
4
|
-
import { AsciiCodePoint, calcEscapedStringFromNodePoints } from '@yozora/character'
|
|
5
|
-
import type { IParseInlineHookCreator } from '@yozora/core-tokenizer'
|
|
6
|
-
import { encodeLinkDestination } from '@yozora/core-tokenizer'
|
|
7
|
-
import type { INode, IThis, IToken, T } from './types'
|
|
8
|
-
import { calcImageAlt } from './util'
|
|
9
|
-
|
|
10
|
-
export const parse: IParseInlineHookCreator<T, IToken, INode, IThis> = function (api) {
|
|
11
|
-
return {
|
|
12
|
-
parse: tokens =>
|
|
13
|
-
tokens.map(token => {
|
|
14
|
-
const nodePoints: ReadonlyArray<INodePoint> = api.getNodePoints()
|
|
15
|
-
|
|
16
|
-
// calc url
|
|
17
|
-
let url = ''
|
|
18
|
-
if (token.destinationContent != null) {
|
|
19
|
-
let { startIndex, endIndex } = token.destinationContent
|
|
20
|
-
if (nodePoints[startIndex].codePoint === AsciiCodePoint.OPEN_ANGLE) {
|
|
21
|
-
startIndex += 1
|
|
22
|
-
endIndex -= 1
|
|
23
|
-
}
|
|
24
|
-
const destination = calcEscapedStringFromNodePoints(
|
|
25
|
-
nodePoints,
|
|
26
|
-
startIndex,
|
|
27
|
-
endIndex,
|
|
28
|
-
true,
|
|
29
|
-
)
|
|
30
|
-
url = encodeLinkDestination(destination)
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
// calc alt
|
|
34
|
-
const children: Node[] = api.parseInlineTokens(token.children)
|
|
35
|
-
const alt = calcImageAlt(children)
|
|
36
|
-
|
|
37
|
-
// calc title
|
|
38
|
-
let title: string | undefined
|
|
39
|
-
if (token.titleContent != null) {
|
|
40
|
-
const { startIndex, endIndex } = token.titleContent
|
|
41
|
-
title = calcEscapedStringFromNodePoints(nodePoints, startIndex + 1, endIndex - 1)
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
const node: INode = api.shouldReservePosition
|
|
45
|
-
? { type: ImageType, position: api.calcPosition(token), url, alt, title }
|
|
46
|
-
: { type: ImageType, url, alt, title }
|
|
47
|
-
return node
|
|
48
|
-
}),
|
|
49
|
-
}
|
|
50
|
-
}
|
package/src/tokenizer.ts
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
IInlineTokenizer,
|
|
3
|
-
IMatchInlineHookCreator,
|
|
4
|
-
IParseInlineHookCreator,
|
|
5
|
-
} from '@yozora/core-tokenizer'
|
|
6
|
-
import { BaseInlineTokenizer, TokenizerPriority } from '@yozora/core-tokenizer'
|
|
7
|
-
import { match } from './match'
|
|
8
|
-
import { parse } from './parse'
|
|
9
|
-
import type { IDelimiter, INode, IThis, IToken, ITokenizerProps, T } from './types'
|
|
10
|
-
import { uniqueName } from './types'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Lexical Analyzer for InlineImage.
|
|
14
|
-
* @see https://github.com/syntax-tree/mdast#image
|
|
15
|
-
* @see https://github.github.com/gfm/#images
|
|
16
|
-
*/
|
|
17
|
-
export class ImageTokenizer
|
|
18
|
-
extends BaseInlineTokenizer<T, IDelimiter, IToken, INode, IThis>
|
|
19
|
-
implements IInlineTokenizer<T, IDelimiter, IToken, INode, IThis>
|
|
20
|
-
{
|
|
21
|
-
/* istanbul ignore next */
|
|
22
|
-
constructor(props: ITokenizerProps = {}) {
|
|
23
|
-
super({
|
|
24
|
-
name: props.name ?? uniqueName,
|
|
25
|
-
priority: props.priority ?? TokenizerPriority.LINKS,
|
|
26
|
-
})
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
public override readonly match: IMatchInlineHookCreator<T, IDelimiter, IToken, IThis> = match
|
|
30
|
-
|
|
31
|
-
public override readonly parse: IParseInlineHookCreator<T, IToken, INode, IThis> = parse
|
|
32
|
-
}
|
package/src/types.ts
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import type { Image, ImageType } from '@yozora/ast'
|
|
2
|
-
import type { INodeInterval } from '@yozora/character'
|
|
3
|
-
import type {
|
|
4
|
-
IBaseInlineTokenizerProps,
|
|
5
|
-
IPartialInlineToken,
|
|
6
|
-
ITokenDelimiter,
|
|
7
|
-
ITokenizer,
|
|
8
|
-
} from '@yozora/core-tokenizer'
|
|
9
|
-
|
|
10
|
-
export type T = ImageType
|
|
11
|
-
export type INode = Image
|
|
12
|
-
export const uniqueName = '@yozora/tokenizer-image'
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* An image token.
|
|
16
|
-
*/
|
|
17
|
-
export interface IToken extends IPartialInlineToken<T> {
|
|
18
|
-
/**
|
|
19
|
-
* Link destination interval.
|
|
20
|
-
*/
|
|
21
|
-
destinationContent?: INodeInterval
|
|
22
|
-
/**
|
|
23
|
-
* Link title interval.
|
|
24
|
-
*/
|
|
25
|
-
titleContent?: INodeInterval
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface IDelimiter extends ITokenDelimiter {
|
|
29
|
-
/**
|
|
30
|
-
* IDelimiter type.
|
|
31
|
-
*/
|
|
32
|
-
type: 'opener' | 'closer'
|
|
33
|
-
/**
|
|
34
|
-
* link destination
|
|
35
|
-
*/
|
|
36
|
-
destinationContent?: INodeInterval
|
|
37
|
-
/**
|
|
38
|
-
* link title
|
|
39
|
-
*/
|
|
40
|
-
titleContent?: INodeInterval
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export type IThis = ITokenizer
|
|
44
|
-
|
|
45
|
-
export type ITokenizerProps = Partial<IBaseInlineTokenizerProps>
|
package/src/util.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { Alternative, Literal, Node, Parent } from '@yozora/ast'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* calc alt
|
|
5
|
-
* An image description has inline elements as its contents. When an image
|
|
6
|
-
* is rendered to HTML, this is standardly used as the image’s alt attribute
|
|
7
|
-
* @see https://github.github.com/gfm/#example-582
|
|
8
|
-
*/
|
|
9
|
-
export function calcImageAlt(nodes: ReadonlyArray<Node>): string {
|
|
10
|
-
return (nodes as ReadonlyArray<Node & Alternative & Literal & Parent>)
|
|
11
|
-
.map((o): string => {
|
|
12
|
-
if (o.value != null) return o.value
|
|
13
|
-
if (o.alt != null) return o.alt
|
|
14
|
-
if (o.children != null) return calcImageAlt(o.children)
|
|
15
|
-
return ''
|
|
16
|
-
})
|
|
17
|
-
.join('')
|
|
18
|
-
}
|