Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Description: Add
CustomFont
Struct for Custom Font Creation andPageElement
Extensions For Custom Font ManagementSummary
This PR introduces a new struct,
CustomFont
, and extendsPageElement
to support custom font management, allowing developers to define, add, and use custom fonts easily.Key Changes
CustomFont
Struct:fontURLString
, which returns a valid URL string or an "Invalid URL" message if the URL is malformed.PageElement
Extensions:addCustomFontFace(_:)
: Adds a CSS@font-face
rule using theCustomFont
instance to make the font available across the application.useCustomFont(_:)
: Applies the custom font to elements, leveraging the fallback font stack if specified.Example Usage
The PR provides an example for usage with an enum,
BrandFont
, that returns predefinedCustomFont
instances. The example demonstrates adding the custom font faces to the HTML and using a specific font as a default on the Body element.Additional Notes
Benefits
Testing