convert Docsify and mixins to ES classes by trusktr · Pull Request #1685 · docsifyjs/docsify

Summary

Converts Docsify and its internal mixins to ES classes. The advantage is static typing: this change begins to allow IDEs like VS Code to know the shape of classes for type checking and intellisense, so devs can go-to-definition on methods, or see if they are passing the wrong data type (still needs work, but this is a first step).

Docsify-classes.mp4

What kind of change does this PR introduce?

Refactor

For any code change,

  • Related documentation has been updated if needed
  • Related tests have been updated or tests have been added

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing applications:

Related issue, if any:

Tested in the following browsers:

  • Chrome
  • Firefox
  • Safari
  • Edge
  • IE