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

Font Library Refactor #57688

Merged
merged 28 commits into from
Jan 23, 2024
Merged

Font Library Refactor #57688

merged 28 commits into from
Jan 23, 2024

Commits on Jan 22, 2024

  1. Configuration menu
    Copy the full SHA
    5dbb7fc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e89854a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    998f084 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    90b5717 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    efffcc8 View commit details
    Browse the repository at this point in the history
  6. Font Library: delete child font faces and font assets when deleting p…

    …arent (#57867)
    
    Co-authored-by: Sarah Norris <1645628+mikachan@users.noreply.github.com>
    creativecoder and mikachan committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    c263a04 View commit details
    Browse the repository at this point in the history
  7. Font Library: refactor client side install functions to work with rev…

    …ised API (#57844)
    
    * Add batchInstallFontFaces function and related plumbing.
    
    * Fix resolver name.
    
    * Add embedding and rebuild theme.json settings for fontFamily.
    
    * Handle responses directly, add to collection before activating. Remove unused test.
    
    * Remove getIntersectingFontFaces.
    
    * Check for existing font family before installing.
    
    * Reference src, not uploadedFile key.
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    
    * Check for existing font family using GET /font-families?slug=.
    
    * Filter already installed font faces (determined by matching fontWeight AND fontStyle)
    
    ---------
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    Co-authored-by: Jason Crist <jcrist@pbking.com>
    3 people authored and creativecoder committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    e8ca12c View commit details
    Browse the repository at this point in the history
  8. Cleanup/font library view error handling (#57926)

    * Add batchInstallFontFaces function and related plumbing.
    
    * Fix resolver name.
    
    * Add embedding and rebuild theme.json settings for fontFamily.
    
    * Handle responses directly, add to collection before activating. Remove unused test.
    
    * Remove getIntersectingFontFaces.
    
    * Check for existing font family before installing.
    
    * Reference src, not uploadedFile key.
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    
    * Check for existing font family using GET /font-families?slug=.
    
    * Filter already installed font faces (determined by matching fontWeight AND fontStyle)
    
    * moved response processing into the resolver for fetchGetFontFamilyBySlug
    
    * Moved response processing for font family installation to the resolver
    
    * Refactored font face installation process to handle errors more cleanly
    
    * Cleanup error handling for font library view
    
    * Add i18n function to error messages
    
    * Add TODO comment for uninstall notice
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    Co-authored-by: Sarah Norris <sarah@sekai.co.uk>
    4 people authored and creativecoder committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    13b5640 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    3e37968 View commit details
    Browse the repository at this point in the history
  10. Font Library: Update uninstall/delete on client side (#57932)

    * Fix delete endpoint
    
    * Update fetchUninstallFontFamily to match new format
    
    * Update uninstallFont
    
    * Add uninstall notice back in
    
    * Tidy up comments
    
    * Re-word uninstall notices
    
    * Add spacing to error message
    
    * Refactored how font family values were processed so they would retain their id, which is now used to delete a font family without fetching data via slug
    
    * Rename uninstallFont to uninstallFontFamily
    
    * Throw uninstall errors rather than returning them
    
    ---------
    
    Co-authored-by: Jason Crist <jcrist@pbking.com>
    2 people authored and creativecoder committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    d1f8dcf View commit details
    Browse the repository at this point in the history
  11. Update packages/edit-site/src/components/global-styles/font-library-m…

    …odal/local-fonts.js
    
    Co-authored-by: Jonny Harris <spacedmonkey@users.noreply.github.com>
    2 people authored and creativecoder committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    3e5e987 View commit details
    Browse the repository at this point in the history
  12. Font Library: address JS feedback in #57688 (#57961)

    * Wrap error messages in sprintf
    
    * Use await rather than then
    
    * Add variables for API URLs
    
    * Update packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    2 people authored and creativecoder committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    dd885b5 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    2ed7a3b View commit details
    Browse the repository at this point in the history
  14. Font Library: font collection refactor to use the new schema (#57884)

    * google fonts collection data provisional url
    
    * rename controller methods
    
    * fix get_items parameters
    
    * fix endpoint return
    
    * rafactor font collection class
    
    * fix tests for the refactored class
    
    * refactor font collections rest controller
    
    * update font collection tests
    
    * update the frontend to use the new endpoint data schema
    
    * format php
    
    * adding linter line ignore rul
    
    * replacing throwing an exception by calling doing_it_wrong
    
    * add translation marks
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    
    * user ternary operator
    
    * correct translation formatting and comments
    
    * renaming function
    
    * renaming tests
    
    * improve url matching
    
    Co-authored-by: Grant Kinney <creativecoder@users.noreply.github.com>
    
    * return error without rest_ensure_response
    
    * fix contradictory if condition
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    Co-authored-by: Grant Kinney <creativecoder@users.noreply.github.com>
    3 people committed Jan 22, 2024
    Configuration menu
    Copy the full SHA
    c0e9949 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    51345f0 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    d45d540 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    1320d20 View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2024

  1. Font Library: Fix font collection filtering (#58091)

    * update function to expect the new schema
    
    * update component to expect the new categories schema
    
    * update unit tests
    matiasbenedetto authored Jan 23, 2024
    Configuration menu
    Copy the full SHA
    4dce262 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3da3f45 View commit details
    Browse the repository at this point in the history
  3. Fix load.php

    mikachan committed Jan 23, 2024
    Configuration menu
    Copy the full SHA
    2743793 View commit details
    Browse the repository at this point in the history
  4. Font Library: fix to activate and display the right activation state …

    …of system fonts (fonts with no font faces) (#58093)
    
    * fix to activate and display the right activation state of system fonts (fonts with no font faces)
    
    * if the font family has an empty array of fontfaces it should be unactivated as a family
    matiasbenedetto authored Jan 23, 2024
    Configuration menu
    Copy the full SHA
    b98c028 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    921ec13 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    14b9e53 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f460811 View commit details
    Browse the repository at this point in the history
  8. Font library: Fix React key prop warnings (#57939)

    * Font Library: add wp_font_face post type and scaffold font face REST API controller (#57656)
    
    * Font Library: create font faces through the REST API (#57702)
    
    * Refactor Font Family Controller (#57785)
    
    * Font Family and Font Face REST API endpoints: better data handling and errors  (#57843)
    
    * Font Families REST API endpoint: ensure unique font family slugs (#57861)
    
    * Font Library: delete child font faces and font assets when deleting parent (#57867)
    
    Co-authored-by: Sarah Norris <1645628+mikachan@users.noreply.github.com>
    
    * Font Library: refactor client side install functions to work with revised API (#57844)
    
    * Add batchInstallFontFaces function and related plumbing.
    
    * Fix resolver name.
    
    * Add embedding and rebuild theme.json settings for fontFamily.
    
    * Handle responses directly, add to collection before activating. Remove unused test.
    
    * Remove getIntersectingFontFaces.
    
    * Check for existing font family before installing.
    
    * Reference src, not uploadedFile key.
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    
    * Check for existing font family using GET /font-families?slug=.
    
    * Filter already installed font faces (determined by matching fontWeight AND fontStyle)
    
    ---------
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    Co-authored-by: Jason Crist <jcrist@pbking.com>
    
    * Cleanup/font library view error handling (#57926)
    
    * Add batchInstallFontFaces function and related plumbing.
    
    * Fix resolver name.
    
    * Add embedding and rebuild theme.json settings for fontFamily.
    
    * Handle responses directly, add to collection before activating. Remove unused test.
    
    * Remove getIntersectingFontFaces.
    
    * Check for existing font family before installing.
    
    * Reference src, not uploadedFile key.
    
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    
    * Check for existing font family using GET /font-families?slug=.
    
    * Filter already installed font faces (determined by matching fontWeight AND fontStyle)
    
    * moved response processing into the resolver for fetchGetFontFamilyBySlug
    
    * Moved response processing for font family installation to the resolver
    
    * Refactored font face installation process to handle errors more cleanly
    
    * Cleanup error handling for font library view
    
    * Add i18n function to error messages
    
    * Add TODO comment for uninstall notice
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    Co-authored-by: Sarah Norris <sarah@sekai.co.uk>
    
    * Fix unique key prop warning when opening modal
    
    * Add key props to FontsGrid children
    
    * Font Faces endpoint: prevent creating font faces with duplicate settings (#57903)
    
    * Font Library: Update uninstall/delete on client side (#57932)
    
    * Fix delete endpoint
    
    * Update fetchUninstallFontFamily to match new format
    
    * Update uninstallFont
    
    * Add uninstall notice back in
    
    * Tidy up comments
    
    * Re-word uninstall notices
    
    * Add spacing to error message
    
    * Refactored how font family values were processed so they would retain their id, which is now used to delete a font family without fetching data via slug
    
    * Rename uninstallFont to uninstallFontFamily
    
    * Throw uninstall errors rather than returning them
    
    ---------
    
    Co-authored-by: Jason Crist <jcrist@pbking.com>
    
    * Add slug/id back to FontCollection
    
    * Change tabsFromCollections inline with Font Collections PR
    
    * Use child.key for key prop in FontsGrid
    
    * Update packages/edit-site/src/components/global-styles/font-library-modal/local-fonts.js
    
    Co-authored-by: Jonny Harris <spacedmonkey@users.noreply.github.com>
    
    * Font Library: address JS feedback in #57688 (#57961)
    
    * Wrap error messages in sprintf
    
    * Use await rather than then
    
    * Add variables for API URLs
    
    * Update packages/edit-site/src/components/global-styles/font-library-modal/resolvers.js
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    
    * Font Library REST API endpoints: address initial feedback from feature branch (#57946)
    
    * Font Library: font collection refactor to use the new schema (#57884)
    
    * google fonts collection data provisional url
    
    * rename controller methods
    
    * fix get_items parameters
    
    * fix endpoint return
    
    * rafactor font collection class
    
    * fix tests for the refactored class
    
    * refactor font collections rest controller
    
    * update font collection tests
    
    * update the frontend to use the new endpoint data schema
    
    * format php
    
    * adding linter line ignore rul
    
    * replacing throwing an exception by calling doing_it_wrong
    
    * add translation marks
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    
    * user ternary operator
    
    * correct translation formatting and comments
    
    * renaming function
    
    * renaming tests
    
    * improve url matching
    
    Co-authored-by: Grant Kinney <creativecoder@users.noreply.github.com>
    
    * return error without rest_ensure_response
    
    * fix contradictory if condition
    
    ---------
    
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    Co-authored-by: Grant Kinney <creativecoder@users.noreply.github.com>
    
    * Remove old WP_REST_Autosave_Fonts_Controller class
    
    ---------
    
    Co-authored-by: Grant Kinney <creativecoder@users.noreply.github.com>
    Co-authored-by: Grant Kinney <hi@grant.mk>
    Co-authored-by: Jeff Ong <jonger4@gmail.com>
    Co-authored-by: Matias Benedetto <matias.benedetto@gmail.com>
    Co-authored-by: Jason Crist <jcrist@pbking.com>
    Co-authored-by: Jonny Harris <spacedmonkey@users.noreply.github.com>
    7 people authored Jan 23, 2024
    Configuration menu
    Copy the full SHA
    51e4bed View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    23ce4e9 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    eb30f83 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    dde2059 View commit details
    Browse the repository at this point in the history