@designtools/manifest 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,31 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://unpkg.com/@designtools/manifest/schemas/rule.schema.json",
4
+ "title": "Design system rule",
5
+ "description": "One rule, brand or interface, in <system>/rules/<id>.rule.json. Written for people first; agents read the same file through rules.json.",
6
+ "type": "object",
7
+ "required": ["kind", "title", "statement", "status"],
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "$schema": { "type": "string" },
11
+ "kind": { "enum": ["brand", "interface"] },
12
+ "title": { "type": "string", "description": "A short name: Touch targets." },
13
+ "statement": { "type": "string", "description": "The rule in one or two sentences." },
14
+ "rationale": { "type": "string", "description": "Why it exists." },
15
+ "threshold": { "type": "string", "description": "The measurable line: 44 × 44 CSS px." },
16
+ "appliesTo": { "type": "array", "items": { "type": "string" }, "description": "Components, elements, assets or pages it governs." },
17
+ "exceptions": { "type": "array", "items": { "type": "string" } },
18
+ "tokens": { "type": "array", "items": { "type": "string" }, "description": "Tokens it rests on: --size-2xl." },
19
+ "status": { "enum": ["confirmed", "assumption"], "description": "Confirmed with the client, or still an assumption." },
20
+ "check": {
21
+ "type": "object",
22
+ "required": ["kind"],
23
+ "additionalProperties": false,
24
+ "properties": {
25
+ "kind": { "enum": ["test", "lint", "audit", "manual"] },
26
+ "ref": { "type": "string", "description": "The test file, lint rule or audit that proves it." },
27
+ "description": { "type": "string" }
28
+ }
29
+ }
30
+ }
31
+ }