SIGN IN SIGN UP

Sync 26 public-facing changes

- fix(shared): give every relative import the extension Node needs
- perf(editor): memoise the settings panel and the plate G-code sections
- fix(editor): let a model with no parts have its material changed
- perf(editor): stop the sidebar re-rendering on every unrelated edit
- fix(editor): stop the Text tool blowing the stack when it opens
- fix(editor): make the Text tool's controls mean what they say
- fix(editor): address the Text tool review findings
- feat(editor): add BambuStudio's Text tool
- feat(shared): add the BambuStudio text_info contract
- fix(editor): stop tool modes outliving their selection, and surface layer height in the rail
- fix(editor): make the layer-height cursor glow instead of tinting
- fix(editor): stop the bed swallowing the selection box's bottom edges
- fix(editor): port BambuStudio's layer-height cursor blend instead of a boosted one
- fix(editor): quieten the selection outline and hide its occluded edges
- fix(editor): shade layer height per fragment and make it its own mode
- fix(editor): make the layer-height bar full height and the model read as zones
- feat(editor): shade the model by layer height so the thickness bar means something
- fix(editor): make one layer-height brush stroke one undo step
- fix(editor): make the variable layer height panel actually usable
- fix(editor): pin a layer-height profile to the machine's first layer
- feat(editor): add BambuStudio's variable layer height
- feat(editor): add BambuStudio's per-object height range modifiers
- feat(editor): let each cut half keep, place on cut, or flip
- feat(editor): fill the plate's free space with copies of an object
- fix(editor): load fuzzy-skin paint, instead of erasing it on the next save
- fix(web): stop clients running stale builds after a deploy

Source-Revision: 3b96d1d973b0ff34520571d9b13b0fed93b7f0ad
R
Ryan Ewen committed
e22496d0fc56dfad8cad02c7479525aeb60803ea
Parent: 09c2b44