Commit Graph

36895 Commits

Author SHA1 Message Date
Simon Backx
9abd466397
Renamed reason to description in recommendations table (#18527)
fixes https://github.com/TryGhost/Product/issues/4005

We no longer use the 'reason' of a recommendation, but allow a flexible
description instead. Because this is a breaking change in the API, we do
this before making this feature GA.
- Added new database utils for renaming a column
- Added new migration to rename the column
- Updated all references in code
2023-10-09 11:19:44 -03:00
renovate[bot]
a2dd0ea1ca Update react monorepo 2023-10-09 15:08:48 +02:00
renovate[bot]
222a23fdef
🐛 Fixed double-insert when pasting plain text in Firefox (#18537)
closes https://github.com/TryGhost/Product/issues/3500

- update dependency @tryghost/koenig-lexical to v0.4.23
  - includes fix for double-insert when pasting plain text in Firefox
2023-10-09 10:19:27 +00:00
Ronald Langeveld
00cfecadf4
Fixed subscription access route in Admin settings (#18538)
refs https://ghost.slack.com/archives/C0568LN2CGJ/p1696844453572279

- we renamed the access route to members route and never updated the
link. 
- This adds the correct link in the newsletter sending setting.

---

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

Fixed a navigation bug in the email settings UI and refactored the
settings UI for better usability. Updated the `onClick` handler of the
`Banner` button in `EnableNewsletters.tsx` and other related files.
2023-10-09 10:16:41 +00:00
Ronald Langeveld
c3ab2d322f
Removed Admin X labs flags in email service (#18536)
no issue

- Removed redundant Admin X flags from the email service since we are preparing for release.
- updated snapshots

---

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

Simplified staff URL generation for emails by removing unused feature
flag and code. This affects the `StaffServiceEmails.js` file and the
`adminXSettings` flag.
2023-10-09 17:05:10 +07:00
Ronald Langeveld
71a8df9f52
Fixed toasts not disappearing after settings reload (#18535)
refs
https://www.notion.so/ghost/AdminX-feedback-27fc7f549bbf4a53bfa2e7b6e5643963?p=d8bb2da9a6534494ad5baf840bbfd785&pm=s

- The error state remains visible after navigating away from settings
- this fix resets the toast on initial load to ensure it doesn't persist
if not needed
---

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

Improved notifications on settings page using `toast` function. Cleared
old notifications on initial load to avoid confusion.
2023-10-09 15:12:33 +07:00
Daniel Lockyer
8a4e81fadd
Fixed splitting string into characters (#18480)
- quite funny because it's such a sneaky thing to discover
- this code actually results in looping over
`'xxxxx<,t,e,s,t,f,o,o,t,>'` and not an array of characters
- adding brackets fixes that

---

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

Fix a bug in the code injection test case for the admin settings app.
Ensure that the test code is properly padded and split by using
parentheses in the string concatenations.

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
2023-10-09 09:07:34 +01:00
Michael Barrett
bc3ad1a798
Refactored theme demo functionality (#18525)
refs https://github.com/TryGhost/Product/issues/3998

Refactored the theme demo functionality to remove the hard-coded
reference to the source theme and enable the functionality for any
theme. This also ensures the demo images are correctly referenced in
pro.
2023-10-09 09:05:43 +01:00
Peter Zimon
e68db848dc
AdminX: reroute settings-x to settings (#18360)
refs. https://github.com/TryGhost/Product/issues/3949

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
Co-authored-by: Daniel Lockyer <hi@daniellockyer.com>
2023-10-09 08:12:46 +01:00
Ronald Langeveld
741a00fe05
Fixed confirmation modals on Integrations - Admin X (#18534)
refs
https://www.notion.so/ghost/AdminX-feedback-27fc7f549bbf4a53bfa2e7b6e5643963?p=39e45d28cd2643888b82d5e9cc0901a3&pm=s

- The logic was correct, but the string value from the API passed in
null when
  empty instead of an empty string.
- this takes a potential null into account to be able to make the
  condition comparison more reliable.

---

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

Fixed some issues with the state management and input handling of the
`AmpModal` and `FirstPromoterModal` components in the admin settings
app. These changes prevent errors and warnings when the integrations are
null, disabled, or unconfigured.
2023-10-09 11:52:56 +07:00
renovate[bot]
ac3714dee3 Update dependency @tanstack/react-query to v4.36.1 2023-10-09 02:02:14 +00:00
Ghost CI
fc1a13ad5d v5.68.0 2023-10-06 15:33:07 +00:00
Ghost CI
0267221111 v5.67.1 2023-10-06 15:27:44 +00:00
renovate[bot]
07cc90a5d0 Update dependency @tryghost/koenig-lexical to v0.4.22 2023-10-06 17:17:02 +02:00
Steve Larson
40d3cc634a
Bumped Koenig packages (#18529)
no refs
- contains some improvements for html imports
- improved drag n drop support with images
- fixed /card [url] entry/shortcuts
2023-10-06 10:02:57 -05:00
Simon Backx
b868dd263d
Added plausible events to the recommendation modal (#18526)
fixes https://github.com/TryGhost/Product/issues/3841

- Wired up the trackEvent method in admin-X
- Send an event when a recommendation is added
2023-10-06 15:41:33 +02:00
Djordje Vlaisavljevic
2574546f2e
Updated recommendation email design (#18521)
refs https://github.com/TryGhost/Product/issues/3939

- Fixed Outlook and iOS Mail issues
- Fixed inconsistent button color
2023-10-06 13:04:59 +00:00
Simon Backx
92b57b4bdf
Improved error handling in recommendation modals (#18524)
fixes https://github.com/TryGhost/Product/issues/3990

- Show errors on blur
- Show toast on submit (final modal only)
- Do an initial validation on mount
2023-10-06 12:23:18 +00:00
Jono M
3680c16362
Fixed AdminX CSS scoping to prevent overriding old admin styles (#18523)
refs https://github.com/TryGhost/Product/issues/3832

Tailwind raises errors if you try to use `important:
'.admin-x-settings'` and have custom styles for `.admin-x-settings`,
hence adding a new base class. We should sort these out when we extract
the design system.

---

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

Scoped base and theme styles to the `admin-x-settings` app by adding a
class to the app root element and updating the `index.css` file. This
improves the app's isolation and reduces code duplication.
2023-10-06 13:02:21 +01:00
Daniel Lockyer
49dc6f8cdc Removed static conditional
- I actually wanted this to be a production-only check but forgot to
  change it before pushing
2023-10-06 13:46:17 +02:00
Daniel Lockyer
7a7d64b764 Removed unused variable 2023-10-06 13:46:17 +02:00
Daniel Lockyer
07e603a5cd Reverted "Update sentry-javascript monorepo to v7.73.0"
- this reverts commit ec5e2cef20
2023-10-06 13:46:17 +02:00
renovate[bot]
394c09be49 Update Koenig packages 2023-10-06 12:40:19 +01:00
Sanne de Vries
dc11270954
Fixed post preview icons in dark mode (#18517)
No ref
2023-10-06 11:03:58 +00:00
renovate[bot]
991f815a51
Update Koenig packages (#18477)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@tryghost/kg-card-factory](https://togithub.com/TryGhost/Koenig/tree/master#readme)
([source](https://togithub.com/TryGhost/Koenig)) | [`4.0.10` ->
`4.0.11`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-card-factory/4.0.10/4.0.11)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-card-factory/4.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-card-factory/4.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-card-factory/4.0.10/4.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-card-factory/4.0.10/4.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@tryghost/kg-default-cards](https://togithub.com/TryGhost/Koenig/tree/master#readme)
([source](https://togithub.com/TryGhost/Koenig)) | [`9.1.4` ->
`9.1.5`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-default-cards/9.1.4/9.1.5)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-default-cards/9.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-default-cards/9.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-default-cards/9.1.4/9.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-default-cards/9.1.4/9.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>TryGhost/Koenig (@&#8203;tryghost/kg-card-factory)</summary>

###
[`v4.0.11`](https://togithub.com/TryGhost/Koenig/compare/@tryghost/kg-card-factory@4.0.10...@tryghost/kg-card-factory@4.0.11)

[Compare
Source](https://togithub.com/TryGhost/Koenig/compare/@tryghost/kg-card-factory@4.0.10...@tryghost/kg-card-factory@4.0.11)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekday" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/TryGhost/Ghost).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjMiLCJ1cGRhdGVkSW5WZXIiOiIzNy4wLjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-06 10:53:31 +01:00
renovate[bot]
ec5e2cef20 Update sentry-javascript monorepo to v7.73.0 2023-10-06 11:12:32 +02:00
Jono M
fb7bf6d01e
Improved AdminX test coverage based on old admin tests (#18502)
refs https://github.com/TryGhost/Product/issues/3832

---

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

This pull request improves the validation, customization, and feedback
of various form components and modals in the admin-x-settings app. It
also adds new components for user detail modal sections and modifies the
user type to allow null values for social accounts. Additionally, it
adds `dirty` props to some integration modals and a `data-testid`
attribute to the exit settings button. It also deletes an unused file.
2023-10-06 10:06:05 +01:00
renovate[bot]
caf104dbb4 Update dependency @types/validator to v13.11.2 2023-10-06 11:01:24 +02:00
Shaun Roselt
3f5a2370c2
Updated Afrikaans Translations (#18399) 2023-10-06 10:58:35 +02:00
Jonathan Browne
e8840510fc
Fixed post items getting cut off on iOS (#17189)
- This PR is a fixed version of #16765. I took a different approach for this to work around some of the issues that were found after that one got merged. In that PR's description, I mentioned that there were multiple scroll areas for the post editor that were somehow displaying at different sizes. The reason appears to be that the CSS vh unit includes some areas that are obscured by Safari's toolbars, since those toolbars may disappear if the <body> element is scrolled. However, since Ghost's admin area uses <div> elements for all scrolling, those toolbars never disappear, and so the space becomes unused. We can work around this by changing to the CSS dvh unit, which always represents the current size of the viewport.
- Most pages have enough padding that the vh unit doesn't cause any problems. In this PR, I've changed it for two places that do break, the post editor and the post settings menu (which can get the "Delete" button cut off). I also included the sidebar width fix from the previous PR.
- Video of the fixed behavior (compare with the old behavior video linked in #16765): https://github.com/TryGhost/Ghost/assets/12983479/eceda43a-23c3-4cf6-9de2-8eda54a98100
2023-10-06 10:58:08 +02:00
renovate[bot]
5b46f246ef Update dependency @ebay/nice-modal-react to v1.2.13 2023-10-06 08:56:57 +00:00
renovate[bot]
7aef7b7db1 Update dependency rimraf to v5.0.5 2023-10-06 10:52:34 +02:00
renovate[bot]
d07161a077 Update dependency tracked-built-ins to v3.3.0 2023-10-06 10:42:18 +02:00
Daniel Lockyer
3e42d4b1be Implemented cachebuster for Admin-X Settings and Koenig-Lexical files
fixes https://github.com/TryGhost/DevOps/issues/86

- this will now hash the files and append a cachebuster, so we never
  serve stale files again
2023-10-06 10:41:37 +02:00
Ugurcan Yildirim
bf9bf9f210
Fixed typo in Turkish translations (#18485) 2023-10-06 10:39:40 +02:00
renovate[bot]
d6c944c8b8 Update peter-evans/create-or-update-comment digest to e3645dd 2023-10-06 10:36:02 +02:00
Alexandre "Lekler" Rodrigues
cab29e1604
Updated Brazilian Portuguese translations (#18510)
refs https://github.com/TryGhost/Team/issues/2795
2023-10-06 10:35:10 +02:00
renovate[bot]
b2cebdc9b0 Update dependency vite to v4.4.11 2023-10-06 07:55:29 +02:00
renovate[bot]
ba6830453a Update dependency jwks-rsa to v3.1.0 2023-10-06 07:54:57 +02:00
Ronald Langeveld
d0cd7f040d
Added Recommendations Acceptance tests - Admin X (#18513)
no issue

---

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

This pull request adds acceptance tests for the recommendations feature
in the `admin-x-settings` app. It also updates the test utils module to
use the appropriate type and fixture for the recommendations API.
2023-10-06 10:52:18 +07:00
Chris Raible
70304d92d4
🐛 Fixed bug preventing changes to tier benefit capitalization (#18406)
fixes TryGhost/Product#3970

- When saving a tier, it is impossible to change the capitalization of a
benefit
- The logic when saving a tier matches benefits by `name.toLowercase()`
and then overwrites the incoming change with the name from the previous
version of the benefit
- This changes the logic to match benefits the same way using
`name.toLowercase()`, but use the _incoming_ benefit's capitalization
rather than the old benefit's, to allow users to e.g. change 'TEst
benefit' to 'Test benefit'
2023-10-05 19:04:11 -07:00
Kevin Ansfield
d812781888
Prevented Escape from closing the image editor (#18505)
no issue

`Escape` can often be hit when attempting to cancel or undo an action
through muscle memory despite it not doing anything in Pintura except
closing the modal and losing all changes

- added `willClose` option to the Pintura modal settings which only
returns `true` when we've detected a click on the close button
2023-10-05 17:30:56 +01:00
Djordje Vlaisavljevic
1775591472 Fixed Stripe thumbnail src
no refs
2023-10-05 15:10:34 +01:00
Ronald Langeveld
e82f845d5c
Added flags helper for Acceptance Tests in AdminX (#18500)
refs https://ghost.slack.com/archives/C0568LN2CGJ/p1696495250115289

Adds a new helper function `toggleLabsFlag` that allows toggling of lab
flags within tests. This function can be used directly inside a test
case or within `beforeEach` or `beforeAll` hooks to set the initial
state before tests run.

Usage:
- To toggle a flag within a test: `toggleLabsFlag('recommendations',
false);`
- To set initial state in a hook: 
  ```javascript
  beforeEach(() => {
    toggleLabsFlag('recommendations', true);
  });

---

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

This change adds a utility module for acceptance testing of experimental
features in Ghost. It allows tests to mock and change the labs settings
using `defaultLabFlags` and `toggleLabsFlag`.
2023-10-05 20:12:54 +07:00
Nick Moreton
8122f02f17
Added resize option to Pintura (#18504)
Got some code for us? Awesome 🎊!

Please include a description of your change & check your PR against this
list, thanks!

- [ ] There's a clear use-case for this code change, explained below
- [ ] Commit message has a short title & references relevant issues
- [ ] The build will pass (run `yarn test:all` and `yarn lint`)

We appreciate your contribution!

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
copilot:summary
2023-10-05 13:08:23 +00:00
Sam Lord
45f704ce86 Add a metric when shutting down in-flight requests takes more than 15 seconds
refs: https://github.com/TryGhost/DevOps/issues/64
2023-10-05 12:31:02 +01:00
Simon Backx
7b3a0c6863
🐛 Fixed outboundLinkTagging setting affected whether member sources are tracked (#18498)
no issue

- During the one click subscribe flow, the outboundLinkTagging should
affect whether we send a history or not to the signup endpoint. But for
internal history this is the members_track_sources setting. This happens
in the backend normally.
- Do not send a (constructed) history to external sites (= one click
subscribe flow in recommendations) if outboundLinkTagging is false
- Do always send a history internally for local signups (backend handles
whether to store it based on the members_track_sources setting that is
currently not exposed in the frontend). The history is not built if this
setting is disabled, but we could have an old history entry if this
setting was enabled in the past.
2023-10-05 12:25:21 +02:00
Daniel Lockyer
85098e07d4 Configured all unit tests to use dot reporter
refs https://ghost.slack.com/archives/C02G9E68C/p1696490748701419

- this configures mocha to use the dot reporter because the default is
  way too verbose in CI
2023-10-05 12:24:24 +02:00
Simon Backx
1882b7048d
Added click tracking for recommendations helper (#18496)
fixes https://github.com/TryGhost/Product/issues/4001
2023-10-05 11:37:02 +02:00
Nick Moreton
d454f18ad2
Removed sticker option from Pintura (#18497)
Removed the sticker feature from the image editor component in both the
new and the legacy admin apps. This simplifies the UI and the code of
the `usePinturaEditor.ts` and `koenig-image-editor.js` files.
2023-10-05 10:32:13 +01:00