Summary
Add a DIN rail mount option to generated enclosures so users can attach the enclosure to a standard DIN rail.
Desired behavior
- Add user-facing parameters for enabling/disabling DIN rail mounting.
- Support common DIN rail dimensions, starting with 35 mm top-hat rail compatibility.
- Generate mount geometry on the enclosure base/back side without interfering with screw posts, PCB mounts, holes, wall mounts, waterproof seals, or lid fit.
- Provide sensible defaults that work for typical electronics enclosures.
- Ensure the feature can be previewed in the renderer and included in exported geometry.
Implementation notes
- Keep the feature consistent with existing enclosure modules under
src/app/core/enclosure/.
- Consider adding a dedicated DIN rail mount generator/module if the geometry is substantial.
- Expose the parameters through the existing params form/state flow.
- Include tests for parameter handling and geometry generation edge cases.
Acceptance criteria
- Users can enable a DIN rail mount from the app UI.
- Generated enclosures include a DIN rail-compatible mounting feature when enabled.
- The mount does not overlap existing optional features in common configurations.
- Existing enclosure generation behavior remains unchanged when the option is disabled.
- Unit tests cover the new feature and disabled/default behavior.
Summary
Add a DIN rail mount option to generated enclosures so users can attach the enclosure to a standard DIN rail.
Desired behavior
Implementation notes
src/app/core/enclosure/.Acceptance criteria