@markuplint/html-spec 3.0.0-dev.24 → 3.0.0-dev.38
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/package.json +3 -3
- package/src/spec-common.attributes.json +0 -1650
- package/src/spec-common.contents.json +0 -392
- package/src/spec.a.json +0 -58
- package/src/spec.abbr.json +0 -25
- package/src/spec.address.json +0 -25
- package/src/spec.area.json +0 -64
- package/src/spec.article.json +0 -24
- package/src/spec.aside.json +0 -38
- package/src/spec.audio.json +0 -48
- package/src/spec.b.json +0 -24
- package/src/spec.base.json +0 -21
- package/src/spec.bdi.json +0 -24
- package/src/spec.bdo.json +0 -24
- package/src/spec.blockquote.json +0 -31
- package/src/spec.body.json +0 -100
- package/src/spec.br.json +0 -32
- package/src/spec.button.json +0 -70
- package/src/spec.canvas.json +0 -33
- package/src/spec.caption.json +0 -30
- package/src/spec.cite.json +0 -24
- package/src/spec.code.json +0 -27
- package/src/spec.col.json +0 -31
- package/src/spec.colgroup.json +0 -41
- package/src/spec.data.json +0 -29
- package/src/spec.datalist.json +0 -38
- package/src/spec.dd.json +0 -30
- package/src/spec.del.json +0 -36
- package/src/spec.details.json +0 -35
- package/src/spec.dfn.json +0 -23
- package/src/spec.dialog.json +0 -36
- package/src/spec.div.json +0 -55
- package/src/spec.dl.json +0 -56
- package/src/spec.dt.json +0 -26
- package/src/spec.em.json +0 -27
- package/src/spec.embed.json +0 -30
- package/src/spec.fieldset.json +0 -27
- package/src/spec.figcaption.json +0 -24
- package/src/spec.figure.json +0 -52
- package/src/spec.footer.json +0 -37
- package/src/spec.form.json +0 -100
- package/src/spec.h1.json +0 -26
- package/src/spec.h2.json +0 -26
- package/src/spec.h3.json +0 -26
- package/src/spec.h4.json +0 -26
- package/src/spec.h5.json +0 -26
- package/src/spec.h6.json +0 -26
- package/src/spec.head.json +0 -30
- package/src/spec.header.json +0 -37
- package/src/spec.hgroup.json +0 -45
- package/src/spec.hr.json +0 -23
- package/src/spec.html.json +0 -27
- package/src/spec.i.json +0 -24
- package/src/spec.iframe.json +0 -70
- package/src/spec.img.json +0 -109
- package/src/spec.input.json +0 -792
- package/src/spec.ins.json +0 -36
- package/src/spec.kbd.json +0 -24
- package/src/spec.label.json +0 -29
- package/src/spec.legend.json +0 -24
- package/src/spec.li.json +0 -40
- package/src/spec.link.json +0 -140
- package/src/spec.main.json +0 -27
- package/src/spec.map.json +0 -30
- package/src/spec.mark.json +0 -24
- package/src/spec.math.json +0 -20
- package/src/spec.menu.json +0 -53
- package/src/spec.meta.json +0 -59
- package/src/spec.meter.json +0 -62
- package/src/spec.nav.json +0 -26
- package/src/spec.noscript.json +0 -24
- package/src/spec.object.json +0 -40
- package/src/spec.ol.json +0 -71
- package/src/spec.optgroup.json +0 -34
- package/src/spec.option.json +0 -70
- package/src/spec.output.json +0 -29
- package/src/spec.p.json +0 -27
- package/src/spec.picture.json +0 -46
- package/src/spec.portal.json +0 -25
- package/src/spec.pre.json +0 -24
- package/src/spec.progress.json +0 -44
- package/src/spec.q.json +0 -29
- package/src/spec.rp.json +0 -23
- package/src/spec.rt.json +0 -24
- package/src/spec.ruby.json +0 -55
- package/src/spec.s.json +0 -24
- package/src/spec.samp.json +0 -24
- package/src/spec.script.json +0 -73
- package/src/spec.section.json +0 -73
- package/src/spec.select.json +0 -66
- package/src/spec.slot.json +0 -29
- package/src/spec.small.json +0 -24
- package/src/spec.source.json +0 -52
- package/src/spec.span.json +0 -24
- package/src/spec.strong.json +0 -27
- package/src/spec.style.json +0 -35
- package/src/spec.sub.json +0 -27
- package/src/spec.summary.json +0 -38
- package/src/spec.sup.json +0 -27
- package/src/spec.svg_a.json +0 -118
- package/src/spec.svg_animate.json +0 -109
- package/src/spec.svg_animateMotion.json +0 -73
- package/src/spec.svg_animateTransform.json +0 -47
- package/src/spec.svg_circle.json +0 -113
- package/src/spec.svg_clipPath.json +0 -108
- package/src/spec.svg_defs.json +0 -109
- package/src/spec.svg_desc.json +0 -21
- package/src/spec.svg_discard.json +0 -31
- package/src/spec.svg_ellipse.json +0 -116
- package/src/spec.svg_feBlend.json +0 -115
- package/src/spec.svg_feColorMatrix.json +0 -104
- package/src/spec.svg_feComponentTransfer.json +0 -97
- package/src/spec.svg_feComposite.json +0 -146
- package/src/spec.svg_feConvolveMatrix.json +0 -147
- package/src/spec.svg_feDiffuseLighting.json +0 -126
- package/src/spec.svg_feDisplacementMap.json +0 -133
- package/src/spec.svg_feDistantLight.json +0 -32
- package/src/spec.svg_feDropShadow.json +0 -109
- package/src/spec.svg_feFlood.json +0 -101
- package/src/spec.svg_feFuncA.json +0 -20
- package/src/spec.svg_feFuncB.json +0 -20
- package/src/spec.svg_feFuncG.json +0 -20
- package/src/spec.svg_feFuncR.json +0 -20
- package/src/spec.svg_feGaussianBlur.json +0 -105
- package/src/spec.svg_feImage.json +0 -123
- package/src/spec.svg_feMerge.json +0 -90
- package/src/spec.svg_feMergeNode.json +0 -20
- package/src/spec.svg_feMorphology.json +0 -106
- package/src/spec.svg_feOffset.json +0 -103
- package/src/spec.svg_fePointLight.json +0 -38
- package/src/spec.svg_feSpecularLighting.json +0 -131
- package/src/spec.svg_feSpotLight.json +0 -67
- package/src/spec.svg_feTile.json +0 -90
- package/src/spec.svg_feTurbulence.json +0 -127
- package/src/spec.svg_filter.json +0 -138
- package/src/spec.svg_foreignObject.json +0 -97
- package/src/spec.svg_g.json +0 -115
- package/src/spec.svg_image.json +0 -128
- package/src/spec.svg_line.json +0 -136
- package/src/spec.svg_linearGradient.json +0 -152
- package/src/spec.svg_marker.json +0 -180
- package/src/spec.svg_mask.json +0 -142
- package/src/spec.svg_metadata.json +0 -21
- package/src/spec.svg_mpath.json +0 -26
- package/src/spec.svg_path.json +0 -114
- package/src/spec.svg_pattern.json +0 -157
- package/src/spec.svg_polygon.json +0 -117
- package/src/spec.svg_polyline.json +0 -117
- package/src/spec.svg_radialGradient.json +0 -162
- package/src/spec.svg_rect.json +0 -118
- package/src/spec.svg_script.json +0 -40
- package/src/spec.svg_set.json +0 -42
- package/src/spec.svg_stop.json +0 -110
- package/src/spec.svg_style.json +0 -36
- package/src/spec.svg_svg.json +0 -170
- package/src/spec.svg_switch.json +0 -105
- package/src/spec.svg_symbol.json +0 -77
- package/src/spec.svg_text.json +0 -153
- package/src/spec.svg_textPath.json +0 -169
- package/src/spec.svg_title.json +0 -21
- package/src/spec.svg_tspan.json +0 -147
- package/src/spec.svg_use.json +0 -115
- package/src/spec.svg_view.json +0 -45
- package/src/spec.table.json +0 -64
- package/src/spec.tbody.json +0 -23
- package/src/spec.td.json +0 -37
- package/src/spec.template.json +0 -20
- package/src/spec.textarea.json +0 -67
- package/src/spec.tfoot.json +0 -23
- package/src/spec.th.json +0 -66
- package/src/spec.thead.json +0 -23
- package/src/spec.time.json +0 -32
- package/src/spec.title.json +0 -24
- package/src/spec.tr.json +0 -29
- package/src/spec.track.json +0 -54
- package/src/spec.u.json +0 -24
- package/src/spec.ul.json +0 -53
- package/src/spec.var.json +0 -24
- package/src/spec.video.json +0 -78
- package/src/spec.wbr.json +0 -25
- package/src/structure.test.ts +0 -84
package/src/structure.test.ts
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { readFile } from 'fs/promises';
|
|
2
|
-
import path from 'path';
|
|
3
|
-
|
|
4
|
-
import { resolveNamespace } from '@markuplint/ml-spec';
|
|
5
|
-
import { getAttrSpecs } from '@markuplint/ml-spec/lib/specs/get-attr-specs';
|
|
6
|
-
import Ajv, { type ValidateFunction } from 'ajv';
|
|
7
|
-
import { sync as glob } from 'glob';
|
|
8
|
-
import strip from 'strip-json-comments';
|
|
9
|
-
|
|
10
|
-
import htmlSpec, { specs } from '../index';
|
|
11
|
-
|
|
12
|
-
const schemas = {
|
|
13
|
-
element: {
|
|
14
|
-
$id: '@markuplint/ml-spec/schemas/element.schema.json',
|
|
15
|
-
...require('../../ml-spec/schemas/element.schema.json'),
|
|
16
|
-
},
|
|
17
|
-
aria: {
|
|
18
|
-
$id: '@markuplint/ml-spec/schemas/aria.schema.json',
|
|
19
|
-
...require('../../ml-spec/schemas/aria.schema.json'),
|
|
20
|
-
},
|
|
21
|
-
contentModels: {
|
|
22
|
-
$id: '@markuplint/ml-spec/schemas/content-models.schema.json',
|
|
23
|
-
...require('../../ml-spec/schemas/content-models.schema.json'),
|
|
24
|
-
},
|
|
25
|
-
globalAttributes: {
|
|
26
|
-
$id: '@markuplint/ml-spec/schemas/global-attributes.schema.json',
|
|
27
|
-
...require('../../ml-spec/schemas/global-attributes.schema.json'),
|
|
28
|
-
},
|
|
29
|
-
attributes: {
|
|
30
|
-
$id: '@markuplint/ml-spec/schemas/attributes.schema.json',
|
|
31
|
-
...require('../../ml-spec/schemas/attributes.schema.json'),
|
|
32
|
-
},
|
|
33
|
-
types: {
|
|
34
|
-
$id: '@markuplint/types/types.schema.json',
|
|
35
|
-
...require('../../types/types.schema.json'),
|
|
36
|
-
},
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
test('structure', () => {
|
|
40
|
-
specs.forEach(el => {
|
|
41
|
-
const { localName, namespaceURI } = resolveNamespace(el.name);
|
|
42
|
-
getAttrSpecs(localName, namespaceURI, htmlSpec);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
describe('schema', () => {
|
|
47
|
-
const map: [name: string, validator: ValidateFunction, targetFiles: string][] = [
|
|
48
|
-
[
|
|
49
|
-
'spec.*.json',
|
|
50
|
-
new Ajv({
|
|
51
|
-
schemas: [
|
|
52
|
-
schemas.element,
|
|
53
|
-
schemas.aria,
|
|
54
|
-
schemas.contentModels,
|
|
55
|
-
schemas.globalAttributes,
|
|
56
|
-
schemas.attributes,
|
|
57
|
-
schemas.types,
|
|
58
|
-
],
|
|
59
|
-
}).getSchema(schemas.element.$id)!,
|
|
60
|
-
path.resolve(__dirname, 'spec.*.json'),
|
|
61
|
-
],
|
|
62
|
-
[
|
|
63
|
-
'spec-common.attributes.json',
|
|
64
|
-
new Ajv({
|
|
65
|
-
schemas: [schemas.globalAttributes, schemas.attributes, schemas.types],
|
|
66
|
-
}).getSchema(schemas.globalAttributes.$id)!,
|
|
67
|
-
path.resolve(__dirname, 'spec-common.attributes.json'),
|
|
68
|
-
],
|
|
69
|
-
];
|
|
70
|
-
|
|
71
|
-
for (const [testName, validator, targetFiles] of map) {
|
|
72
|
-
test(testName, async () => {
|
|
73
|
-
const files = glob(targetFiles);
|
|
74
|
-
for (const jsonPath of files) {
|
|
75
|
-
const json = JSON.parse(strip(await readFile(jsonPath, { encoding: 'utf-8' })));
|
|
76
|
-
const isValid = validator(json);
|
|
77
|
-
if (!isValid) {
|
|
78
|
-
throw new Error(`${path.basename(jsonPath)} is invalid (${validator.schemaEnv.baseId})`);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
expect(testName).toBe(testName);
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
});
|