eleventy-base-blog
eleventy-base-blog copied to clipboard
Refactored Drafts plugin
While studying the Drafts plugin for my own work, I realized that the current plugin had a lot more code than needed which affected readability and should have a slight impact on performance. This PR:
- Replaces the environment variable with the
isServingBoolean (which I think is faster in comparisons). - Moves the check for the
serveorwatchBoolean earlier in the comparison logic so if the build process starts withserveorwatch, the code never even checksdraftstatus because draft status doesn't matter at that point. This probably isn't a big deal, but I think it makes it clearer what's happening. With this refactored code, the same number of comparisons happen (I think). - Renames
loggedtoisLoggedmaking it clearer that it's a Boolean (for readability) and to align the variable name withisServing. - Moves the
isLogged = trueto the!isLoggedcheck block so the value change only happens once instead of every time the watched site rebuilds. In the original,logged= trueexecuted with every build which was unnecessary. - Reduces the code size from 50 lines to 34 (without removing any comments).