Files
dss/.dss/schema/components.schema.json
Digital Production Factory 7281085635 [IMMUTABLE-UPDATE] Fix: Replace 'organism' with 'composite' in components schema
Updated atomic design terminology in components.schema.json:
- organism → composite

Aligns with corporate terminology requirements while maintaining
the atomic design pattern hierarchy:
atom → molecule → composite → template → page

Justification: Correcting terminology oversight in newly created schema
to match Phase 3 corporate language requirements.
2025-12-09 19:27:50 -03:00

92 lines
2.4 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://dss.overbits.luz.uy/schemas/components.schema.json",
"title": "Components Schema",
"description": "Schema for design system components (atomic design)",
"version": "2.0.0",
"type": "object",
"properties": {
"components": {
"type": "array",
"items": {
"$ref": "#/definitions/component"
}
}
},
"definitions": {
"component": {
"type": "object",
"required": ["name", "type", "path"],
"properties": {
"name": {
"type": "string",
"description": "Component name"
},
"type": {
"type": "string",
"enum": ["atom", "molecule", "composite", "template", "page"],
"description": "Atomic design level (composite = complex multi-molecule component)"
},
"path": {
"type": "string",
"description": "File path relative to project root"
},
"description": {
"type": "string",
"description": "Component purpose and usage"
},
"tokens": {
"type": "array",
"description": "Design tokens used by this component",
"items": {
"type": "string"
}
},
"props": {
"type": "object",
"description": "Component properties/props",
"additionalProperties": {
"type": "object",
"properties": {
"type": {"type": "string"},
"required": {"type": "boolean"},
"default": {},
"description": {"type": "string"}
}
}
},
"variants": {
"type": "array",
"description": "Component variants",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"props": {"type": "object"}
}
}
},
"dependencies": {
"type": "array",
"description": "Other components this depends on",
"items": {
"type": "string"
}
},
"storybook": {
"type": "object",
"description": "Storybook configuration",
"properties": {
"stories": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
}