0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-20 22:42:53 -05:00
ghost/apps/admin-x-settings
Ronald Langeveld 9339364dce
Added Unsplash selector to AdminX (#18216)
no issue

- Copied over the Unsplash Component from Koenig to AdminX and converted
it to Typescript.
- Changed the business logic to follow a bit of dependency injection to
make it more testable and easier to maintain.
- Ideally we move this out of Admin X Settings and perhaps into it's own
library so we don't need to deal with a duplicate code between Koenig
and Admin X.

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at a40bf5b</samp>

This pull request adds support for selecting images from Unsplash in the
admin settings UI. It introduces a new `UnsplashService` class that
handles the Unsplash API requests and a new `MasonryService` class that
handles the masonry layout of the images. It also adds several new
custom components, such as `UnsplashButton`, `UnsplashGallery`,
`UnsplashImage`, `UnsplashSelector`, `UnsplashZoomed`, and
`UnsplashSearchModal`, that render the Unsplash modal and its elements.
It modifies the existing `ImageUpload`, `App`, `ServicesProvider`, and
`BrandSettings` components to integrate the Unsplash feature and pass
the necessary props. It also adds some new types, constants, and assets
related to the Unsplash data and UI. Finally, it adds some unit tests
for the `UnsplashService` and `MasonryService` classes.
2023-09-21 02:23:45 +00:00
..
.storybook AdminX dark mode (#18035) 2023-09-08 20:53:41 +02:00
src Added Unsplash selector to AdminX (#18216) 2023-09-21 02:23:45 +00:00
test Added Unsplash selector to AdminX (#18216) 2023-09-21 02:23:45 +00:00
.eslintrc.cjs Temporarily fixed eslint rules being disabled in AdminX (#17565) 2023-08-02 08:37:51 +01:00
.yarnrc
index.html
package.json Optimized bundle size of @tryghost/limit-service 2023-09-20 09:54:07 +02:00
playwright.config.ts
postcss.config.cjs
README.md
tailwind.config.cjs AdminX mobile updates (#18137) 2023-09-19 12:09:38 +02:00
tsconfig.json
tsconfig.node.json
vite.config.ts Added uniqueness validation for the recommendation URL (#18163) 2023-09-15 13:14:47 +00:00

Admin X Settings

Experimental re-write of Ghost Admin Settings in React

Development

Pre-requisites

  • Run yarn in Ghost monorepo root
  • Run yarn in this directory

Running the development version

Run yarn dev to start the development server to test/develop the settings standalone. This will generate a demo site from the index.html file which renders the app and makes it available on http://localhost:5173

Running inside Admin

Run yarn dev from the top-level repo with --adminX

Develop

This is a monorepo package.

Follow the instructions for the top-level repo.

  1. git clone this repo & cd into it as usual
  2. Run yarn to install top-level dependencies.

Test

  • yarn lint run just eslint
  • yarn test run lint and tests