tldraw/apps/docs/content/sections.json
alex 6cb797a074
Better generated docs for react components (#3930)
Before:
![Screenshot 2024-06-12 at 12 57
26](https://github.com/tldraw/tldraw/assets/1489520/2a9f6098-ef2a-4f52-88f5-d6e4311c067d)

After:
![Screenshot 2024-06-12 at 12 59
16](https://github.com/tldraw/tldraw/assets/1489520/51733c2a-a2b4-4084-a89a-85bce5b47672)

React components in docs now list their props, and appear under a new
"Component" section instead of randomly under either `Function` or
`Variable`. In order to have our docs generate this, a few criteria need
to be met:
1. They need to be tagged with the `@react` tsdoc tag
2. Their props need to be a simple type alias, typically to an
interface.

Both of these rules are enforced with a new lint rule - any component
tagged as `@public` will have these rules enforced.

### Change Type

- [x] `docs` — Changes to the documentation, examples, or templates.
- [x] `improvement` — Improving existing features
2024-06-13 13:09:27 +00:00

239 lines
3.7 KiB
JSON

[
{
"id": "getting-started",
"title": "Get Started",
"description": "Introduction articles for tldraw.",
"categories": [],
"sidebar_behavior": "show-links"
},
{
"id": "releases",
"title": "Releases",
"description": "Introduction articles for tldraw.",
"categories": [],
"sidebar_behavior": "hidden"
},
{
"id": "docs",
"title": "Learn tldraw",
"description": "Learn to use the tldraw SDK.",
"categories": [],
"sidebar_behavior": "show-links"
},
{
"id": "community",
"title": "Community",
"description": "Guides for contributing to tldraw's open source project.",
"categories": [],
"sidebar_behavior": "show-links"
},
{
"id": "reference",
"title": "API Reference",
"description": "Reference for the tldraw package's APIs (generated).",
"categories": [
{
"id": "editor",
"title": "@tldraw/editor",
"description": "",
"groups": [
{
"id": "Class",
"path": null
},
{
"id": "Function",
"path": null
},
{
"id": "Variable",
"path": null
},
{
"id": "Enum",
"path": null
},
{
"id": "Interface",
"path": null
},
{
"id": "TypeAlias",
"path": null
},
{
"id": "Namespace",
"path": null
},
{
"id": "Component",
"path": null
}
],
"hero": null
},
{
"id": "store",
"title": "@tldraw/store",
"description": "",
"groups": [
{
"id": "Class",
"path": null
},
{
"id": "Function",
"path": null
},
{
"id": "Variable",
"path": null
},
{
"id": "Enum",
"path": null
},
{
"id": "Interface",
"path": null
},
{
"id": "TypeAlias",
"path": null
},
{
"id": "Namespace",
"path": null
},
{
"id": "Component",
"path": null
}
],
"hero": null
},
{
"id": "tldraw",
"title": "tldraw",
"description": "",
"groups": [
{
"id": "Class",
"path": null
},
{
"id": "Function",
"path": null
},
{
"id": "Variable",
"path": null
},
{
"id": "Enum",
"path": null
},
{
"id": "Interface",
"path": null
},
{
"id": "TypeAlias",
"path": null
},
{
"id": "Namespace",
"path": null
},
{
"id": "Component",
"path": null
}
],
"hero": null
},
{
"id": "tlschema",
"title": "@tldraw/tlschema",
"description": "",
"groups": [
{
"id": "Class",
"path": null
},
{
"id": "Function",
"path": null
},
{
"id": "Variable",
"path": null
},
{
"id": "Enum",
"path": null
},
{
"id": "Interface",
"path": null
},
{
"id": "TypeAlias",
"path": null
},
{
"id": "Namespace",
"path": null
},
{
"id": "Component",
"path": null
}
],
"hero": null
},
{
"id": "validate",
"title": "@tldraw/validate",
"description": "",
"groups": [
{
"id": "Class",
"path": null
},
{
"id": "Function",
"path": null
},
{
"id": "Variable",
"path": null
},
{
"id": "Enum",
"path": null
},
{
"id": "Interface",
"path": null
},
{
"id": "TypeAlias",
"path": null
},
{
"id": "Namespace",
"path": null
},
{
"id": "Component",
"path": null
}
],
"hero": null
}
],
"sidebar_behavior": "reference",
"hero": null
}
]