Use `@namespace` in addition to `@enum` for jsdoc
- Dominant language
- JavaScript
- Stars
- 15.7k
- Forks
- 3.9k
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 34
Description
## Old
When using the `@enum` tag by itself it puts the documentation in the global section and omits static functions on the enum. It's cluttered and missing information.

## New
By adding the `@namespace` tag it creates a new page for the enum and show the static functions:

---
Here's how the fix would look for `VoxelShapeType`:
```
/**
* An enum of voxel shapes supported by EXT_primitive_voxels. The shape controls
* how the voxel grid is mapped to 3D space.
*
* @namespace
* @enum VoxelShapeType
*/
```
One way to go about fixing this for all enums is to:
- Run `npm run generateDocumentation`
- Go to `http://localhost:8080/Build/Documentation/global.html`
- Add `@namespace` to every enum until there are no more in the global section
Also, update https://github.com/CesiumGS/cesium/tree/main/Documentation/Contributors/DocumentationGuide with information about enums / namespace.
Contributor guide
Research direction
Run `npm run generateDocumentation` and inspect `http://localhost:8080/Build/Documentation/global.html` to identify enums still documented in the global section. Add `@namespace` to those enum comments, then update `Documentation/Contributors/DocumentationGuide` with the enum and namespace guidance. Done means the enums have dedicated documentation pages with their static functions shown.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100