docs icon indicating copy to clipboard operation
docs copied to clipboard

Recommend the use of Less namespaces for extensions

Open davwheat opened this issue 4 years ago • 0 comments

To prevent any mixin collisions between extensions, we should recommend the use of Less namespaces, similar to how we handle initiali(s/z)ers in JS.

https://lesscss.org/features/#mixins-feature-namespaces

They're not that tricky to understand, thankfully, using an ID-based system.

My suggested syntax would be #vendor__package. I don't know how Less would handle slashes, etc.

#davwheat__sidebar-nav-items {
  .my-cool-mixin() {
    color: red;
  }
}

button.davwheat_btn {
  #davwheat__sidebar-nav-items.my-cool-mixin();
}

Eventually, core should switch to something like #flarum__core.xxx(), or similar.

davwheat avatar Apr 29 '21 21:04 davwheat