@markuplint/html-parser 3.13.0 → 4.0.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,675 +0,0 @@
1
- const attrTokenizer = require('../lib/attr-tokenizer').default;
2
-
3
- it('void attribute', () => {
4
- expect(attrTokenizer(' abc', 1, 1, 0)).toMatchObject({
5
- raw: 'abc',
6
- startLine: 1,
7
- endLine: 1,
8
- startCol: 2,
9
- endCol: 5,
10
- startOffset: 1,
11
- endOffset: 4,
12
- spacesBeforeName: {
13
- raw: ' ',
14
- startLine: 1,
15
- endLine: 1,
16
- startCol: 1,
17
- endCol: 2,
18
- startOffset: 0,
19
- endOffset: 1,
20
- },
21
- name: {
22
- raw: 'abc',
23
- startLine: 1,
24
- endLine: 1,
25
- startCol: 2,
26
- endCol: 5,
27
- startOffset: 1,
28
- endOffset: 4,
29
- },
30
- spacesBeforeEqual: {
31
- raw: '',
32
- startLine: 1,
33
- endLine: 1,
34
- startCol: 5,
35
- endCol: 5,
36
- startOffset: 4,
37
- endOffset: 4,
38
- },
39
- equal: {
40
- raw: '',
41
- startLine: 1,
42
- endLine: 1,
43
- startCol: 5,
44
- endCol: 5,
45
- startOffset: 4,
46
- endOffset: 4,
47
- },
48
- spacesAfterEqual: {
49
- raw: '',
50
- startLine: 1,
51
- endLine: 1,
52
- startCol: 5,
53
- endCol: 5,
54
- startOffset: 4,
55
- endOffset: 4,
56
- },
57
- startQuote: {
58
- endCol: 5,
59
- endLine: 1,
60
- endOffset: 4,
61
- raw: '',
62
- startCol: 5,
63
- startLine: 1,
64
- startOffset: 4,
65
- },
66
- value: {
67
- endCol: 5,
68
- endLine: 1,
69
- endOffset: 4,
70
- raw: '',
71
- startCol: 5,
72
- startLine: 1,
73
- startOffset: 4,
74
- },
75
- endQuote: {
76
- endCol: 5,
77
- endLine: 1,
78
- endOffset: 4,
79
- raw: '',
80
- startCol: 5,
81
- startLine: 1,
82
- startOffset: 4,
83
- },
84
- });
85
- });
86
-
87
- test('normal', () => {
88
- expect(attrTokenizer(' abc="123"', 1, 1, 0)).toMatchObject({
89
- startLine: 1,
90
- endLine: 1,
91
- startCol: 2,
92
- endCol: 11,
93
- startOffset: 1,
94
- endOffset: 10,
95
- raw: 'abc="123"',
96
- spacesBeforeName: {
97
- raw: ' ',
98
- startLine: 1,
99
- endLine: 1,
100
- startCol: 1,
101
- endCol: 2,
102
- startOffset: 0,
103
- endOffset: 1,
104
- },
105
- name: {
106
- raw: 'abc',
107
- startLine: 1,
108
- endLine: 1,
109
- startCol: 2,
110
- endCol: 5,
111
- startOffset: 1,
112
- endOffset: 4,
113
- },
114
- spacesBeforeEqual: {
115
- raw: '',
116
- startLine: 1,
117
- endLine: 1,
118
- startCol: 5,
119
- endCol: 5,
120
- startOffset: 4,
121
- endOffset: 4,
122
- },
123
- equal: {
124
- raw: '=',
125
- startLine: 1,
126
- endLine: 1,
127
- startCol: 5,
128
- endCol: 6,
129
- startOffset: 4,
130
- endOffset: 5,
131
- },
132
- spacesAfterEqual: {
133
- raw: '',
134
- startLine: 1,
135
- endLine: 1,
136
- startCol: 6,
137
- endCol: 6,
138
- startOffset: 5,
139
- endOffset: 5,
140
- },
141
- startQuote: {
142
- raw: '"',
143
- startLine: 1,
144
- endLine: 1,
145
- startCol: 6,
146
- endCol: 7,
147
- startOffset: 5,
148
- endOffset: 6,
149
- },
150
- value: {
151
- raw: '123',
152
- startLine: 1,
153
- endLine: 1,
154
- startCol: 7,
155
- endCol: 10,
156
- startOffset: 6,
157
- endOffset: 9,
158
- },
159
- endQuote: {
160
- endCol: 11,
161
- endLine: 1,
162
- endOffset: 10,
163
- raw: '"',
164
- startCol: 10,
165
- startLine: 1,
166
- startOffset: 9,
167
- },
168
- });
169
- });
170
-
171
- test('after line break', () => {
172
- expect(attrTokenizer('\n abc="123"', 1, 1, 0)).toMatchObject({
173
- startLine: 2,
174
- endLine: 2,
175
- startCol: 2,
176
- endCol: 11,
177
- startOffset: 2,
178
- endOffset: 11,
179
- raw: 'abc="123"',
180
- spacesBeforeName: {
181
- raw: '\n ',
182
- startLine: 1,
183
- endLine: 2,
184
- startCol: 1,
185
- endCol: 2,
186
- startOffset: 0,
187
- endOffset: 2,
188
- },
189
- name: {
190
- raw: 'abc',
191
- startLine: 2,
192
- endLine: 2,
193
- startCol: 2,
194
- endCol: 5,
195
- startOffset: 2,
196
- endOffset: 5,
197
- },
198
- spacesBeforeEqual: {
199
- raw: '',
200
- startLine: 2,
201
- endLine: 2,
202
- startCol: 5,
203
- endCol: 5,
204
- startOffset: 5,
205
- endOffset: 5,
206
- },
207
- equal: {
208
- raw: '=',
209
- startLine: 2,
210
- endLine: 2,
211
- startCol: 5,
212
- endCol: 6,
213
- startOffset: 5,
214
- endOffset: 6,
215
- },
216
- spacesAfterEqual: {
217
- raw: '',
218
- startLine: 2,
219
- endLine: 2,
220
- startCol: 6,
221
- endCol: 6,
222
- startOffset: 6,
223
- endOffset: 6,
224
- },
225
- startQuote: {
226
- raw: '"',
227
- startLine: 2,
228
- endLine: 2,
229
- startCol: 6,
230
- endCol: 7,
231
- startOffset: 6,
232
- endOffset: 7,
233
- },
234
- value: {
235
- raw: '123',
236
- startLine: 2,
237
- endLine: 2,
238
- startCol: 7,
239
- endCol: 10,
240
- startOffset: 7,
241
- endOffset: 10,
242
- },
243
- endQuote: {
244
- raw: '"',
245
- startLine: 2,
246
- endLine: 2,
247
- startCol: 10,
248
- endCol: 11,
249
- startOffset: 10,
250
- endOffset: 11,
251
- },
252
- });
253
- });
254
-
255
- test('after line break', () => {
256
- expect(attrTokenizer('\n abc="123"', 1, 3, 0)).toMatchObject({
257
- spacesBeforeName: {
258
- raw: '\n ',
259
- startLine: 1,
260
- endLine: 2,
261
- startCol: 3,
262
- endCol: 2,
263
- startOffset: 0,
264
- endOffset: 2,
265
- },
266
- });
267
- });
268
-
269
- test('single quote', () => {
270
- expect(attrTokenizer(" q='a'", 1, 1, 0)).toMatchObject({
271
- startLine: 1,
272
- endLine: 1,
273
- startCol: 3,
274
- endCol: 8,
275
- startOffset: 2,
276
- endOffset: 7,
277
- raw: "q='a'",
278
- spacesBeforeName: {
279
- raw: ' ',
280
- startLine: 1,
281
- endLine: 1,
282
- startCol: 1,
283
- endCol: 3,
284
- startOffset: 0,
285
- endOffset: 2,
286
- },
287
- name: {
288
- raw: 'q',
289
- startLine: 1,
290
- endLine: 1,
291
- startCol: 3,
292
- endCol: 4,
293
- startOffset: 2,
294
- endOffset: 3,
295
- },
296
- equal: {
297
- raw: '=',
298
- startLine: 1,
299
- endLine: 1,
300
- startCol: 4,
301
- endCol: 5,
302
- startOffset: 3,
303
- endOffset: 4,
304
- },
305
- value: {
306
- raw: 'a',
307
- startLine: 1,
308
- endLine: 1,
309
- startCol: 6,
310
- endCol: 7,
311
- startOffset: 5,
312
- endOffset: 6,
313
- },
314
- });
315
- });
316
-
317
- test('no quote', () => {
318
- expect(attrTokenizer('q=a', 1, 1, 0)).toMatchObject({
319
- startLine: 1,
320
- endLine: 1,
321
- startCol: 1,
322
- endCol: 4,
323
- startOffset: 0,
324
- endOffset: 3,
325
- raw: 'q=a',
326
- name: {
327
- raw: 'q',
328
- startLine: 1,
329
- endLine: 1,
330
- startCol: 1,
331
- endCol: 2,
332
- startOffset: 0,
333
- endOffset: 1,
334
- },
335
- equal: {
336
- raw: '=',
337
- startLine: 1,
338
- endLine: 1,
339
- startCol: 2,
340
- endCol: 3,
341
- startOffset: 1,
342
- endOffset: 2,
343
- },
344
- value: {
345
- raw: 'a',
346
- startLine: 1,
347
- endLine: 1,
348
- startCol: 3,
349
- endCol: 4,
350
- startOffset: 2,
351
- endOffset: 3,
352
- },
353
- });
354
- });
355
-
356
- test('empty', () => {
357
- expect(attrTokenizer('q', 1, 1, 0)).toMatchObject({
358
- startLine: 1,
359
- endLine: 1,
360
- startCol: 1,
361
- endCol: 2,
362
- startOffset: 0,
363
- endOffset: 1,
364
- raw: 'q',
365
- name: {
366
- raw: 'q',
367
- startLine: 1,
368
- endLine: 1,
369
- startCol: 1,
370
- endCol: 2,
371
- startOffset: 0,
372
- endOffset: 1,
373
- },
374
- equal: {},
375
- value: {},
376
- });
377
- });
378
-
379
- test('no value', () => {
380
- expect(attrTokenizer('q=', 1, 1, 0)).toMatchObject({
381
- startLine: 1,
382
- endLine: 1,
383
- startCol: 1,
384
- endCol: 3,
385
- startOffset: 0,
386
- endOffset: 2,
387
- raw: 'q=',
388
- name: {
389
- raw: 'q',
390
- startLine: 1,
391
- endLine: 1,
392
- startCol: 1,
393
- endCol: 2,
394
- startOffset: 0,
395
- endOffset: 1,
396
- },
397
- equal: {
398
- raw: '=',
399
- startLine: 1,
400
- endLine: 1,
401
- startCol: 2,
402
- endCol: 3,
403
- startOffset: 1,
404
- endOffset: 2,
405
- },
406
- value: {
407
- raw: '',
408
- startLine: 1,
409
- endLine: 1,
410
- startCol: 3,
411
- endCol: 3,
412
- startOffset: 2,
413
- endOffset: 2,
414
- },
415
- });
416
- });
417
-
418
- test('spaces', () => {
419
- expect(attrTokenizer('abc = "efg"', 1, 1, 0)).toMatchObject({
420
- startLine: 1,
421
- endLine: 1,
422
- startCol: 1,
423
- endCol: 14,
424
- startOffset: 0,
425
- endOffset: 13,
426
- raw: 'abc = "efg"',
427
- name: {
428
- raw: 'abc',
429
- startLine: 1,
430
- endLine: 1,
431
- startCol: 1,
432
- endCol: 4,
433
- startOffset: 0,
434
- endOffset: 3,
435
- },
436
- equal: {
437
- raw: '=',
438
- startLine: 1,
439
- endLine: 1,
440
- startCol: 6,
441
- endCol: 7,
442
- startOffset: 5,
443
- endOffset: 6,
444
- },
445
- value: {
446
- raw: 'efg',
447
- startLine: 1,
448
- endLine: 1,
449
- startCol: 10,
450
- endCol: 13,
451
- startOffset: 9,
452
- endOffset: 12,
453
- },
454
- });
455
- });
456
-
457
- test('line break', () => {
458
- expect(
459
- attrTokenizer(
460
- `
461
- abc
462
-
463
- =
464
-
465
- "e
466
-
467
- fg
468
-
469
- "`,
470
- 1,
471
- 1,
472
- 0,
473
- ),
474
- ).toMatchObject({
475
- startLine: 2,
476
- endLine: 10,
477
- startCol: 2,
478
- endCol: 2,
479
- startOffset: 2,
480
- endOffset: 29,
481
- raw: 'abc\n\n =\n\n "e\n\n fg\n\n"',
482
- name: {
483
- raw: 'abc',
484
- startLine: 2,
485
- endLine: 2,
486
- startCol: 2,
487
- endCol: 5,
488
- startOffset: 2,
489
- endOffset: 5,
490
- },
491
- equal: {
492
- raw: '=',
493
- startLine: 4,
494
- endLine: 4,
495
- startCol: 4,
496
- endCol: 5,
497
- startOffset: 10,
498
- endOffset: 11,
499
- },
500
- value: {
501
- raw: 'e\n\n fg\n\n',
502
- startLine: 6,
503
- endLine: 10,
504
- startCol: 4,
505
- endCol: 1,
506
- startOffset: 16,
507
- endOffset: 28,
508
- },
509
- });
510
- });
511
-
512
- it('includes gt sign', () => {
513
- expect(attrTokenizer('abc="d>e"', 1, 1, 0)).toMatchObject({
514
- raw: 'abc="d>e"',
515
- startLine: 1,
516
- endLine: 1,
517
- startCol: 1,
518
- endCol: 10,
519
- startOffset: 0,
520
- endOffset: 9,
521
- spacesBeforeName: {
522
- raw: '',
523
- startLine: 1,
524
- endLine: 1,
525
- startCol: 1,
526
- endCol: 1,
527
- startOffset: 0,
528
- endOffset: 0,
529
- },
530
- name: {
531
- raw: 'abc',
532
- startLine: 1,
533
- endLine: 1,
534
- startCol: 1,
535
- endCol: 4,
536
- startOffset: 0,
537
- endOffset: 3,
538
- },
539
- spacesBeforeEqual: {
540
- raw: '',
541
- startLine: 1,
542
- endLine: 1,
543
- startCol: 4,
544
- endCol: 4,
545
- startOffset: 3,
546
- endOffset: 3,
547
- },
548
- equal: {
549
- raw: '=',
550
- startLine: 1,
551
- endLine: 1,
552
- startCol: 4,
553
- endCol: 5,
554
- startOffset: 3,
555
- endOffset: 4,
556
- },
557
- spacesAfterEqual: {
558
- raw: '',
559
- startLine: 1,
560
- endLine: 1,
561
- startCol: 5,
562
- endCol: 5,
563
- startOffset: 4,
564
- endOffset: 4,
565
- },
566
- startQuote: {
567
- endCol: 6,
568
- endLine: 1,
569
- endOffset: 5,
570
- raw: '"',
571
- startCol: 5,
572
- startLine: 1,
573
- startOffset: 4,
574
- },
575
- value: {
576
- endCol: 9,
577
- endLine: 1,
578
- endOffset: 8,
579
- raw: 'd>e',
580
- startCol: 6,
581
- startLine: 1,
582
- startOffset: 5,
583
- },
584
- endQuote: {
585
- endCol: 10,
586
- endLine: 1,
587
- endOffset: 9,
588
- raw: '"',
589
- startCol: 9,
590
- startLine: 1,
591
- startOffset: 8,
592
- },
593
- });
594
- expect(attrTokenizer('abc="d=>e"', 1, 1, 0)).toMatchObject({
595
- raw: 'abc="d=>e"',
596
- startLine: 1,
597
- endLine: 1,
598
- startCol: 1,
599
- endCol: 11,
600
- startOffset: 0,
601
- endOffset: 10,
602
- spacesBeforeName: {
603
- raw: '',
604
- startLine: 1,
605
- endLine: 1,
606
- startCol: 1,
607
- endCol: 1,
608
- startOffset: 0,
609
- endOffset: 0,
610
- },
611
- name: {
612
- raw: 'abc',
613
- startLine: 1,
614
- endLine: 1,
615
- startCol: 1,
616
- endCol: 4,
617
- startOffset: 0,
618
- endOffset: 3,
619
- },
620
- spacesBeforeEqual: {
621
- raw: '',
622
- startLine: 1,
623
- endLine: 1,
624
- startCol: 4,
625
- endCol: 4,
626
- startOffset: 3,
627
- endOffset: 3,
628
- },
629
- equal: {
630
- raw: '=',
631
- startLine: 1,
632
- endLine: 1,
633
- startCol: 4,
634
- endCol: 5,
635
- startOffset: 3,
636
- endOffset: 4,
637
- },
638
- spacesAfterEqual: {
639
- raw: '',
640
- startLine: 1,
641
- endLine: 1,
642
- startCol: 5,
643
- endCol: 5,
644
- startOffset: 4,
645
- endOffset: 4,
646
- },
647
- startQuote: {
648
- endCol: 6,
649
- endLine: 1,
650
- endOffset: 5,
651
- raw: '"',
652
- startCol: 5,
653
- startLine: 1,
654
- startOffset: 4,
655
- },
656
- value: {
657
- endCol: 10,
658
- endLine: 1,
659
- endOffset: 9,
660
- raw: 'd=>e',
661
- startCol: 6,
662
- startLine: 1,
663
- startOffset: 5,
664
- },
665
- endQuote: {
666
- endCol: 11,
667
- endLine: 1,
668
- endOffset: 10,
669
- raw: '"',
670
- startCol: 10,
671
- startLine: 1,
672
- startOffset: 9,
673
- },
674
- });
675
- });
@@ -1,21 +0,0 @@
1
- const { getNamespace } = require('../lib/get-namespace');
2
-
3
- describe('getNamespace', () => {
4
- it('div', () => {
5
- expect(getNamespace('div')).toBe('http://www.w3.org/1999/xhtml');
6
- expect(getNamespace('span')).toBe('http://www.w3.org/1999/xhtml');
7
- expect(getNamespace('html')).toBe('http://www.w3.org/1999/xhtml');
8
- });
9
-
10
- it('svg', () => {
11
- expect(getNamespace('svg')).toBe('http://www.w3.org/2000/svg');
12
- expect(getNamespace('g', 'http://www.w3.org/2000/svg')).toBe('http://www.w3.org/2000/svg');
13
- expect(getNamespace('rect', 'http://www.w3.org/2000/svg')).toBe('http://www.w3.org/2000/svg');
14
- });
15
-
16
- it('MathML', () => {
17
- expect(getNamespace('math')).toBe('http://www.w3.org/1998/Math/MathML');
18
- expect(getNamespace('msqrt', 'http://www.w3.org/1998/Math/MathML')).toBe('http://www.w3.org/1998/Math/MathML');
19
- expect(getNamespace('mn', 'http://www.w3.org/1998/Math/MathML')).toBe('http://www.w3.org/1998/Math/MathML');
20
- });
21
- });