Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify featured images by splitting into new classes #619

Merged
merged 68 commits into from
Oct 29, 2022

Conversation

caendesilva
Copy link
Member

The featured image class is one of rather high complexity, most of which is due to the fact that it supports two wildly different storage adapters. This PR keeps the shared logic in a base class, and the differential logic in child classes.

It also very strictly enforces the internal data structure, and has explicit constructors with data validation, paired with a scoped public API. This makes the whole system more maintainable and predictable.

As the constructors now require all parameters to be set, the classes will require a factory, however since the data logic is now easily decouplable this is not a problem; in fact it may even prove more useful as it will be easier to support multiple front matter keys, allowing for much better interoperability.

@caendesilva caendesilva changed the base branch from master to upcoming October 29, 2022 11:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants