Commit Graph

95 Commits

Author SHA1 Message Date
Jono M
07f1ae06c8
Fixed low-hanging fruit in AdminX (#18061)
refs https://github.com/TryGhost/Product/issues/3832

- Fixed code editor horizontal scroll
- Fixed toggle setting initial value in theme settings
- Prevented locking site without a password
- Updated to hide Pintura settings when config is set
- Updated mailgun settings to show only if not in server config
- Updated Pintura settings to hide banner when in server config
- Fixed body font category not updating in newsletter preview
- Fixed external images not loading when hosted
- Added character count to user bio
- Updated to scroll up when searching
- Fixed code editor not working with null value
- Improved form error messages
2023-09-11 12:49:45 +01:00
Ronald Langeveld
210de7fa11
Added iframe double buffering in AdminX (#18002)
refs https://github.com/TryGhost/Product/issues/3807
https://github.com/TryGhost/Product/issues/3806

Added double buffering to iframes in Admin to have smoother transitions when swapping out iframes for preview pages.
---

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

Refactored the announcement bar modal and preview components to use a
custom `IframeBuffering` component for better performance and
simplicity. Extracted the `IframeBuffering` component to a new file and
added some types and functions to support it. Removed some unused code
and cleaned up imports.
2023-09-11 15:23:12 +07:00
Ronald Langeveld
b0662d2cf9
Wired up embeddable signup form to Admin X (#18010)
refs https://github.com/TryGhost/Product/issues/3819

- Wired up embeddable signup form to admin x.
- minus the colour picker, to add in the next commit.
---

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

This pull request introduces a new feature that allows users to embed a
signup form for their blog site on other websites. It adds a new
component `EmbedSignupFormModal` that renders a modal with form
customization and code copying options. It also updates the `Config`
type and the `config.ts` file to store and access the necessary data for
the embed code generation.
2023-09-08 09:21:05 +00:00
Peter Zimon
78e2cb0c28
AdminX responsive design updates (#17979)
refs. https://github.com/TryGhost/Product/issues/3349

- A lot of pieces in AdminX missed proper handling of non-desktop devices
2023-09-07 13:23:26 +02:00
Jono M
9e45afddb8
Updated AdminX to load via ES Modules to enable code splitting (#17971)
refs https://github.com/TryGhost/Product/issues/3349
2023-09-07 06:38:20 +00:00
Ronald Langeveld
95c63e16c9
Wired up announcement bar to Admin X (#17967)
refs https://github.com/TryGhost/Product/issues/3807

- Added announcement bar customisation to 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 91368ce</samp>

This pull request enhances the `AnnouncementBarModal` component to
enable users to customize the announcement bar on their site. It adds
editing and previewing features, as well as API integration and toast
notifications.
2023-09-06 15:53:33 +07:00
Jono M
a97f384cdf
Implemented email customisation labs flag in AdminX (#17881)
refs https://github.com/TryGhost/Product/issues/3745

---

This pull request adds a new feature to the `admin-x-settings` app that
allows users to customize the colors of their email newsletters. It also
simplifies and refactors the routing logic and the components related to
integrations, newsletters, and users. It introduces new dependencies and
components for color manipulation and selection, and updates the
existing components and stories to use them.
2023-09-04 07:00:37 +01:00
Jono M
9e89c88489
Added workaround for flaky codemirror test (#17884)
refs https://github.com/TryGhost/Product/issues/3349

---

This pull request improves the end-to-end tests for the code injection
settings in the admin-x-settings app. It fixes some typing and saving
issues with the `CodeMirror` editor.
2023-08-31 19:54:39 +01:00
Jono M
86ad035fbb
Wired up AdminX Tips & Donations (#17846)
refs https://github.com/TryGhost/Product/issues/3746

---

This pull request adds and improves features for the membership settings
app, especially for the tips or donations feature. It introduces a new
`CurrencyField` component and a `currency` module for handling currency
input and display. It also refactors and enhances some existing
components, hooks, and types for better user experience and code
quality. It affects files such as `TierDetailModal.tsx`,
`TipsOrDonations.tsx`, `useForm.ts`, and `currency.ts`.
2023-08-30 09:08:31 +00:00
Jono M
05e6588832
Wired up AdminX Labs settings (#17844)
refs https://github.com/TryGhost/Product/issues/3745

---

This pull request adds and refactors several components and hooks for
the labs and advanced settings in the admin app. It introduces feature
flags for alpha and beta features, and allows the user to upload and
download redirects, routes and content files.
2023-08-28 16:24:03 +01:00
Jono M
d33a70f40d
Added limit checks to AdminX settings (#17784)
refs https://github.com/TryGhost/Product/issues/3751

---

This pull request adds limit checks and upgrade prompts for various
features in the admin-x-settings app, such as staff, members,
newsletters, custom integrations, and custom themes. It uses a custom
hook called `useLimiter`, which relies on the `@tryghost/limit-service`
package and the host settings configuration data.
2023-08-23 21:04:27 +00:00
Ronald Langeveld
429e8ed4d9
Added debounce to design modal on Admin X (#17793)
refs https://github.com/TryGhost/Product/issues/3349

- When updating certain states, eg the branding colour using or a typing
in a text box, we want it display on the preview almost immediately.
However this comes with a drawback of sending a ton of requests to the
server.
- This fix adds debouncing which essentially adds a small delay of
500ms, to wait for the user to finish typing / selecting colour before
making a request.

---

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

Improved the performance and user experience of the site description and
accent color settings by debouncing the backend updates. Added a
`debounce` utility function in `debounce.ts`.
2023-08-23 13:59:43 +02:00
Jono M
8e24ca51ad
Wired up Slack integration in AdminX (#17781)
refs https://github.com/TryGhost/Product/issues/3729

This pull request improves the Slack integration settings by allowing
users to test the webhook URL and save the settings from a modal. It
also refactors the `SlackModal` component and adds a new API function
`useTestSlack` to handle the test message.
2023-08-22 12:15:38 +01:00
Ronald Langeveld
e61b62e6be
Wired up Analytics export download trigger (#17782)
refs https://github.com/TryGhost/Product/issues/3349

- added a download handler for the analytics download button.
- wired up the download api endpoint

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

This pull request adds a feature to export post analytics as a csv file
from the membership analytics dashboard. It implements a new query hook,
a download function, and a response handler in the
`apps/admin-x-settings` app, and adds a test case for the feature.
2023-08-22 11:09:05 +00:00
Jono M
49493abf75
Added tests for custom integrations (#17770)
refs https://github.com/TryGhost/Product/issues/3729

---

This pull request enhances the custom integrations feature in the
admin-x-settings app by adding accessibility and UI improvements to the
`Select` and `WebhookModal` components, refactoring the webhook and
integration types in the API module, and adding a new end-to-end test
file to verify the functionality using mocked API responses.
2023-08-22 11:25:25 +01:00
Ronald Langeveld
d9cee38a77
Wired up Pintura integration to AdminX (#17759)
refs https://github.com/TryGhost/Product/issues/3729

- Wired up the Pintura Integration to AdminX.

---

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

This pull request adds the ability to customize the Pintura image editor
with custom JS and CSS files in the advanced settings modal. It
introduces a new `files.ts` file in the `api` folder, which provides a
hook and a helper function for uploading and retrieving files. It also
modifies the `PinturaModal.tsx` component to use these functions and
display the settings.
2023-08-18 14:54:13 +02:00
Peter Zimon
ab36892799
Small AdminX UI improments (#17758)
refs. https://github.com/TryGhost/Product/issues/3349

- added static Preview button to Tips and Donations
- updated modal buttons in Design settigns, so it doesn't close on save
and easier to play around with various settings
2023-08-18 11:42:29 +02:00
Jono M
f1266c6b9f
Wired up Zapier integration in AdminX (#17737)
refs https://github.com/TryGhost/Product/issues/3729
2023-08-16 18:59:31 +01:00
Ronald Langeveld
738ce491f4
Wired FirstPromoter integration to AdminX (#17740)
refs: https://github.com/TryGhost/Product/issues/3729

- Wired up the FirstPromoter api to adminx
---

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

This pull request refactors the `FirstPromoterModal` component to use
hooks and helper functions, and adds a new end-to-end test file to
verify its functionality. The purpose of these changes is to improve the
code quality and the user experience of the FirstPromoter integration
feature.
2023-08-16 17:47:38 +02:00
Ronald Langeveld
a6776301e3
Wired up Amp integration to AdminX (#17738)
refs https://github.com/TryGhost/Product/issues/3729

- wired up api to the AMP integration on AdminX

---

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

This file adds a modal component to the advanced settings page that
allows users to toggle and customize AMP integration for their site. It
uses the `settings` API and React hooks to handle the modal logic and
state.
2023-08-16 14:40:10 +02:00
Ronald Langeveld
0da4653f3a
Wired up Unsplash integration to Admin X (#17727)
closes https://github.com/TryGhost/Product/issues/3741
refs https://github.com/TryGhost/Product/issues/3729

- my first commit with some Admin X stuff! 🕺🏻
- Wired up the API to the Unsplash integration modal

---

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

This pull request adds a toggle to the Unsplash modal in the advanced
settings to enable or disable the Unsplash integration. It also updates
the settings API hook to include the Unsplash setting in the query.
2023-08-16 13:22:30 +02:00
Peter Zimon
9bfbd5b3b9
History log in AdminX (#17666)
refs. https://github.com/TryGhost/Product/issues/3710

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
2023-08-14 12:11:53 +00:00
Jono M
7ddaad8209
Updated AdminX detail modals to use routes (#17639)
refs https://github.com/TryGhost/Product/issues/3349
2023-08-10 13:04:23 +01:00
Jono M
2ccb04ed7f
Added tests for code injection (#17623)
refs https://github.com/TryGhost/Product/issues/3688
2023-08-08 10:08:19 +01:00
Jono M
a413f2b54f
Added tests for Stripe and Newsletter settings (#17598)
refs https://github.com/TryGhost/Product/issues/3608,
https://github.com/TryGhost/Product/issues/3601
2023-08-07 12:44:30 +01:00
Jono M
c46761199b
Cleaned up AdminX API handling (#17571)
refs https://github.com/TryGhost/Product/issues/3349

- Simplified a few more places after switching to react-query
- Improved how mocking works in specs to be more scalable as the number
of queries increases
2023-08-03 09:29:14 +01:00
Ghost CI
e2a6d8b987 Merged v5.57.2 into main 2023-08-02 15:12:37 +00:00
Steve Larson
6936007052
🐛 Updated gscan error handling for page errors (#17575)
refs https://github.com/TryGhost/Product/issues/3676

- add filter for sidebar display of theme errors (angry red box)
- filter specific to each page feature, will need to add each one by this approach
2023-08-02 09:56:40 -05:00
Jono M
8000df963b
Temporarily fixed eslint rules being disabled in AdminX (#17565)
no issue
2023-08-02 08:37:51 +01:00
Jono M
c17b44613b
Added Stripe Connect & Direct flows to AdminX (#17549)
refs https://github.com/TryGhost/Product/issues/3608
2023-08-01 11:10:40 +01:00
Steve Larson
5fe72462bc
Enabled page features (#17544)
no refs
-moved hide page title and feature image to GA
-updated gscan
2023-07-31 14:22:19 -05:00
Jono M
55d243f470
Replace custom data loading with react-query (#17537)
refs https://github.com/TryGhost/Product/issues/3349
2023-07-31 18:27:30 +01:00
Peter Zimon
0a0fcbc551
AdminX user settings related cleanup (#17520)
refs. https://github.com/TryGhost/Product/issues/3349

- added validation for user name
- added onBlur validation for fields
- changed textfield label color on focus
2023-07-27 18:29:02 +02:00
Steve Larson
e45b947d61
Updated gscan (#17521)
no refs
- add check for unknown global use in themes
- removed `@page` check until ready for release
2023-07-27 15:43:22 +00:00
Steve Larson
b77521ece9
Updated gscan (#17509)
no refs
2023-07-26 15:58:22 +00:00
Steve Larson
005e80b466
Updated gscan (#17507)
no refs
2023-07-26 13:06:23 +00:00
Peter Zimon
acd84fe25c
AdminX design cleanup (#17489)
refs. https://github.com/TryGhost/Product/issues/3349

- applied outline and fixed spacing for form groups
- small UI refinements for static version of Newsletter settings
- replaced textareas with textfields in site description, twitter and FB descriptions
- unified pattern for "Save & close" and "Cancel" in user detail settings
- refined checked background for logo container in Design settings
- refined spacing in Tier detail modal
- fixed gradient bug in Portal preview
- fixed UI bugs in Portal / Links
- fixed tier dropdown bug in Portal / Links. It was always showing links for the first tier
- unified form input element headings
- refined checkbox and toggle label typography and spacing
2023-07-26 12:47:52 +02:00
Jono M
0137f498d7
Added tests for tier edit modal (#17369)
refs https://github.com/TryGhost/Product/issues/3580
2023-07-14 13:04:34 +00:00
Rishabh Garg
36b23b49a9
Wired archived and active tiers list in adminX (#17300)
refs https://github.com/TryGhost/Product/issues/3580
2023-07-11 19:59:35 +05:30
Peter Zimon
a5b62707ef
AdminX theme navigation experiment (#17210)
refs. https://github.com/TryGhost/Product/issues/3349

It's a bit cumbersome how design and theme navigation is handled in
AdminX at the moment. On a high level, this PR applies the following
changes:

- Change theme is under Design settings
- After activating a theme, Design settings are automatically opened
2023-07-06 12:03:01 +02:00
Jono M
1cc55eda2e
Updated portal popup to support selecting and updating tiers (#17192)
refs https://github.com/TryGhost/Team/issues/3545
2023-07-04 19:17:42 +12:00
Jono M
3811999be7
Improved AdminX theme installation flow (#17175)
refs https://github.com/TryGhost/Team/issues/3349
2023-07-03 17:59:31 +12:00
Jono M
768511c7cc
Added tests for more areas of AdminX settings (themes, design, multiselect) (#17134)
refs https://github.com/TryGhost/Team/issues/3349

Tidies up the remaining major pieces which were not covered by tests.
Extends the existing test patterns, although the API mocks are getting a
bit unmanageable.
2023-06-28 14:59:05 +12:00
Jono M
9e325d6b38
Added tests for user management (#17128)
refs https://github.com/TryGhost/Team/issues/3349
2023-06-26 15:12:46 +12:00
Daniel Lockyer
8c5e2a53a9 Moved Admin-X-Settings to apps/ folder
refs https://github.com/TryGhost/Toolbox/issues/594

- we're moving all the external apps into a different folder so we can
  keep `ghost/` for internal code
2023-06-23 14:37:39 +02:00