0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-03 23:00:14 -05:00
Commit graph

40207 commits

Author SHA1 Message Date
Sanne de Vries
ea127b29db
Shipped portal@2.48.0 (#21988)
No issue
- Includes changes to Portal Button default settings and mobile
behaviour
2025-01-09 16:12:12 +01:00
Sanne de Vries
2668284451
Changed Portal Button to be off by default and hidden on mobile (#21983)
Ref
https://linear.app/ghost/issue/DES-1074/change-portal-button-defaults-and-hide-on-mobile
- These days, themes have subscribe and account buttons built in. The
Portal Button should be opt-in rather than opt-out.
- On mobile devices, the Portal Button takes up too much valuable real
estate.
2025-01-09 13:07:30 +01:00
renovate[bot]
c7139a27c7
Added support for line breaks in more editor card fields (credit: @cathysarisky)
ref https://github.com/TryGhost/Ghost/issues/20027

- fixes quirky behaviour and adds full support for Shift+Enter line breaks across our various editor cards
2025-01-08 16:50:03 +00:00
Daniël van der Winden
171036e640
🎨 Made 5 settings quicker to edit at the top-level in Settings (#21976)
Based on our changes to the _Access_ and _Analytics_ cards in Settings,
we decided to update how we allow edits to a few other settings, too.

These changes allow the following settings to be manipulated at the
top-level in Settings, without having to click 'Edit' first.

- Timezone
- Default recipients for newsletters
- Publication language
- Social accounts
- Tips and donations

fixes
https://linear.app/ghost/issue/DES-1062/updates-to-editsave-method-of-settings-cards
2025-01-08 16:33:54 +00:00
Djordje Vlaisavljevic
d9abbb594f Fixed bottom part of modals getting cut off on mobile
ref https://linear.app/ghost/issue/DES-1069/cannot-save-changes-made-to-staff-user-profile-from-mobile-device, https://linear.app/ghost/issue/DES-1070/on-mobile-cannot-click-send-invitation-now-when-adding-staff-members

- We were using viewport units to set the height of the modal, but the issue with that value is that it doesn't take into account browser toolbars on phones. Switching to dynamic viewport units fixes this issue.
2025-01-08 15:52:11 +00:00
Peter Zimon
620b42f275
Fixed Select component catching all ESC keypresses (#21977)
closes
https://linear.app/ghost/issue/DES-1075/regression-esc-doesnt-close-admin-settings

- Hitting ESC in Admin/Settings while nothing is in focus should close
Settings and navigate back to the Dashboard — instead, right now nothing
happens when `ESC` is hit. The problem was that the `Select` component
in the current Design System caught `ESC` keystrokes and stopped
propagating them even if they were not in focus. This issue wasn't
apparent so far because no `Select` components were rendered directly on
the Settings page. However, in a [recent
change](ab2c7f18e2)
we moved out some select components from Access settings to the main
Settings view, which immediately stopped propagating `ESC` keystrokes to
the main component. This fix adds a check if the `Select` (or any other)
component is in focus and stops propagation only if that's true.
2025-01-08 15:13:00 +01:00
Chris Raible
0c56c9bb8f
Fixed browser tests running in docker compose (#21974)
ref
https://linear.app/ghost/issue/ENG-1968/get-browser-tests-working-in-docker

- When running browser tests in docker compose, the `stripe listen`
command was not outputting the API key from the environment, because
it's expecting that you've already run `stripe login` to authenticate
with stripe. It only outputs the API key in the command line in CI.
- This isn't convenient/practical to do in docker, and it's much easier
to supply the API key as an environment variable, so this changes the
logic to use the API key from the command line when running in docker
_or_ CI.
2025-01-07 20:03:39 -08:00
Chris Raible
c1f9740665
Added opt-in ghost service to docker compose (#21938)
ref
https://linear.app/ghost/issue/ENG-1957/add-ghost-service-to-base-docker-compose-setup

- Currently our `compose.yml` file only runs Ghost's supporting
services, and it's expected that you'll run Ghost locally on your host
machine. This commit adds a `ghost` service to our `compose.yml` file,
so you can optionally run Ghost itself in a container using docker
compose.
- The `ghost` service is opt-in using [docker compose
profiles](https://docs.docker.com/compose/how-tos/profiles/), to
maintain the current behavior of only running supporting services as the
default.
- This commit also fixes an issue in the Dockerfile: the `WORKDIR` arg,
which is used to optionally specify an alternative working directory, is
not propagated from one build stage to the next, so it has to be
manually added as an `ARG` in each stage. This was necessary to use the
same Dockerfile for devcontainers (which require the WORKDIR to be
`/workspaces/ghost`) and docker compose, where we use `/home/ghost` in
alignment with the production image.
2025-01-07 14:16:43 -08:00
Djordje Vlaisavljevic
30a60d903d Disable "Create" button after first click in "Create newsletter" modal
ref https://linear.app/ghost/issue/DES-505/double-click-on-newsletter-create-button-closes-the-modal

- It was possible to click this button again after the first click, which would close the modal and then open the "Edit newsletter" modal, which is confusing for the user. The button is now both disabled and in the loading state after the first click.
2025-01-07 16:56:13 +00:00
Djordje Vlaisavljevic
1d59399b41
Improved history modal (#21970)
ref https://linear.app/ghost/issue/DES-408/staff-filter-cut-off-in-history-in-rare-case, https://linear.app/ghost/issue/DES-313/adminx-history-doesnt-show-loader-when-actions-are-being-fetched, https://linear.app/ghost/issue/DES-314/adminx-history-pagination-is-cut-off

- Added missing loading states: bigger one for initial fetch, smaller one when loading the next page
- Added missing empty states: one for when there’s no history entries at all, another for when no entries match the currently applied filters
- Fixed last entry having the bottom part cut off
- Fixed type icon showing underneath the avatar
- Made “Filter” button larger to match the select field
2025-01-07 12:12:58 +00:00
renovate[bot]
e441157874 Pin dependencies 2025-01-07 12:11:37 +01:00
Daniel Lockyer
1b26f06c48 Removed Admin UI for enabling URL cache
ref https://linear.app/ghost/issue/ENG-1803/remove-url-cache-code

- this was an experimental feature to persist the URL cache to disk so it can be read upon boot, which would save recalculating it and hopefully speed up boot times
- it was never fleshed out and the code is a bit of a hack, so it's not really worth keeping it around
- it's not trivial to delete the backend code because it's hooked into
  the E2E tests and they fail if you remove the flag (strange), so I'm
  just removing the UI so no-one can enable it
- I'll remove the backend code in a future commit
2025-01-07 11:11:42 +01:00
Sag
0c045d0515
Released Portal v2.47.1 (#21967)
no issue

- changelog:
    - 943c393542
    - 1fd2175a44
2025-01-07 09:06:41 +00:00
Sag
1fd2175a44
Fixed copy in Portal when signup is not available (#21965)
ref https://linear.app/ghost/issue/ENG-1235

- we currently have three different messages when signup is not
available (this site is invite-only, this site only accepts paid
memebers, membership unavailable); the first two offer a link to sign
in, whereas the third one does not as all membership features are
disabled
- this PR fixes the logic to render the correct message, given the
reason why signup is not available
- also removes the usage of `allowSelfSignup` in Portal, as 1) the
naming is poor and 2) `allowSelfSignup` is computed based on the
existing `membersSignupAccess` and is therefore redundant
2025-01-07 08:32:32 +00:00
Hannah Wolfe
b6fe724b57
Updated test snapshots for 2025 (#21963)
ref
a86bf46347 (diff-310689502a3d29cb4c582e61ebb4ac0c79c0a102d1096bd622ee5a7439642021L455)
ref
f568b35f26

- We shouldn't really hardcode these dates, but fixing it once a year is
quicker than figuring out what to do instead 😅
2025-01-06 16:19:59 +00:00
Daniël van der Winden
98306d2337
Fixed member filter dropdown breaking for long post titles (#21962)
Previously, if you'd filter members by which page or post they signed up
on, if you had very long titles for your posts they wouldn't display
properly. This change removes the fixed height set for items within this
dropdown, which fixes that.

Fixes
https://linear.app/ghost/issue/DES-1057/long-post-titles-get-squashedcut-off-in-members-filter-dropdown
2025-01-06 13:48:41 +00:00
John O'Nolan
943c393542
2025
Co-authored-by: Hannah Wolfe github.erisds@gmail.com
2025-01-06 11:40:59 +00:00
renovate[bot]
7ac2f5e830
Update dependency react-hot-toast to v2.5.1 (#21960)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[react-hot-toast](https://redirect.github.com/timolins/react-hot-toast)
| [`2.4.1` ->
`2.5.1`](https://renovatebot.com/diffs/npm/react-hot-toast/2.4.1/2.5.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-hot-toast/2.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hot-toast/2.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hot-toast/2.4.1/2.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hot-toast/2.4.1/2.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>timolins/react-hot-toast (react-hot-toast)</summary>

###
[`v2.5.1`](https://redirect.github.com/timolins/react-hot-toast/compare/v2.5.0...v2.5.1)

[Compare
Source](https://redirect.github.com/timolins/react-hot-toast/compare/v2.5.0...v2.5.1)

###
[`v2.5.0`](https://redirect.github.com/timolins/react-hot-toast/releases/tag/v2.5.0):
2.5.0

[Compare
Source](https://redirect.github.com/timolins/react-hot-toast/compare/v2.4.1...v2.5.0)

#### What's new

##### `toast.promise()` improvements

-   Make messages optional
-
[#&#8203;179](https://redirect.github.com/timolins/react-hot-toast/issues/179)
from n33pm/feat/promiseOptionalMsg)
[`25bd873`](https://redirect.github.com/timolins/react-hot-toast/commit/25bd873)
-   Allow to pass async function
-
[#&#8203;301](https://redirect.github.com/timolins/react-hot-toast/issues/301)
from kagurazaka-0/feat-toast-promise-async-func
[`c80d57f`](https://redirect.github.com/timolins/react-hot-toast/commit/c80d57f)

##### Other

-   Add customizable `removeDelay`
-
[#&#8203;89](https://redirect.github.com/timolins/react-hot-toast/issues/89)
from heyfuaad/main
[`c3d6739`](https://redirect.github.com/timolins/react-hot-toast/commit/c3d6739)
-   Refactor removal of dismissed toasts
- Make `csstype` a dependency to avoid warning.
[`d695daf`](https://redirect.github.com/timolins/react-hot-toast/commit/d695daf)

***

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-31 16:55:23 +00:00
renovate[bot]
e7144db5c3
Update dependency mailgun.js to v10.4.0 (#21957)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [mailgun.js](https://redirect.github.com/mailgun/mailgun.js) |
[`10.3.0` ->
`10.4.0`](https://renovatebot.com/diffs/npm/mailgun.js/10.3.0/10.4.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/mailgun.js/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mailgun.js/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mailgun.js/10.3.0/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mailgun.js/10.3.0/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mailgun/mailgun.js (mailgun.js)</summary>

###
[`v10.4.0`](https://redirect.github.com/mailgun/mailgun.js/blob/HEAD/CHANGELOG.md#1040-2024-12-30)

[Compare
Source](https://redirect.github.com/mailgun/mailgun.js/compare/v10.3.0...ffb37a53371756c36abdfdadac27309051f3cebf)

##### Features

- Add support for metrics
([de16ccd](de16ccd9b8))

##### Other changes

- Add tests
([78f9990](78f9990fe6))
- Update readme
([a724689](a7246892a2))

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-30 10:41:04 +00:00
renovate[bot]
706aaa65c2
Update dependency tailwind-merge to ^2.6.0 (#21950)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [tailwind-merge](https://redirect.github.com/dcastil/tailwind-merge) |
[`^2.5.5` ->
`^2.6.0`](https://renovatebot.com/diffs/npm/tailwind-merge/2.5.5/2.6.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/tailwind-merge/2.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwind-merge/2.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwind-merge/2.5.5/2.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwind-merge/2.5.5/2.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>dcastil/tailwind-merge (tailwind-merge)</summary>

###
[`v2.6.0`](https://redirect.github.com/dcastil/tailwind-merge/releases/tag/v2.6.0)

[Compare
Source](https://redirect.github.com/dcastil/tailwind-merge/compare/v2.5.5...v2.6.0)

##### New Features

- Export ConfigExtension type from package by
[@&#8203;dcastil](https://redirect.github.com/dcastil) in
[https://github.com/dcastil/tailwind-merge/pull/505](https://redirect.github.com/dcastil/tailwind-merge/pull/505)

**Full Changelog**:
https://github.com/dcastil/tailwind-merge/compare/v2.5.5...v2.6.0

Thanks to
[@&#8203;brandonmcconnell](https://redirect.github.com/brandonmcconnell),
[@&#8203;manavm1990](https://redirect.github.com/manavm1990),
[@&#8203;langy](https://redirect.github.com/langy),
[@&#8203;jamesreaco](https://redirect.github.com/jamesreaco),
[@&#8203;roboflow](https://redirect.github.com/roboflow),
[@&#8203;syntaxfm](https://redirect.github.com/syntaxfm),
[@&#8203;getsentry](https://redirect.github.com/getsentry),
[@&#8203;codecov](https://redirect.github.com/codecov),
[@&#8203;sourcegraph](https://redirect.github.com/sourcegraph), a
private sponsor and more via
[@&#8203;thnxdev](https://redirect.github.com/thnxdev) for sponsoring
tailwind-merge! ❤️

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 17:50:32 +00:00
renovate[bot]
a4baf50463
Update dependency mailgun.js to v10.3.0 (#21949)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [mailgun.js](https://redirect.github.com/mailgun/mailgun.js) |
[`10.2.4` ->
`10.3.0`](https://renovatebot.com/diffs/npm/mailgun.js/10.2.4/10.3.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/mailgun.js/10.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mailgun.js/10.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mailgun.js/10.2.4/10.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mailgun.js/10.2.4/10.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mailgun/mailgun.js (mailgun.js)</summary>

###
[`v10.3.0`](https://redirect.github.com/mailgun/mailgun.js/blob/HEAD/CHANGELOG.md#1030-2024-12-23)

[Compare
Source](https://redirect.github.com/mailgun/mailgun.js/compare/v10.2.4...v10.3.0)

##### Features

- Add support for Inbox Placements
([5450a4b](5450a4b37c))

#####
[10.2.4](https://redirect.github.com/mailgun/mailgun.js/compare/v10.2.3...v10.2.4)
(2024-11-21)

##### Bug Fixes

- **deps-dev:** bump webpack from 5.76.0 to 5.94.0
([166f27c](166f27ca06))
- **deps:** bump axios from 1.7.2 to 1.7.4
([22ae183](22ae18375e))
- Fix vulnarable dependency
([039866b](039866bc05))

##### Other changes

- Add tests coverage thresholds
([bfca371](bfca3710da))

#####
[10.2.3](https://redirect.github.com/mailgun/mailgun.js/compare/v10.2.2...v10.2.3)
(2024-07-18)

#####
[10.2.2](https://redirect.github.com/mailgun/mailgun.js/compare/v10.2.1...v10.2.2)
(2024-07-17)

##### Bug Fixes

- Update dependencies
([0d810fb](0d810fb40d))

#####
[10.2.1](https://redirect.github.com/mailgun/mailgun.js/compare/v10.2.0...v10.2.1)
(2024-02-16)

##### Bug Fixes

- Source.on is not a function for t:variables
([e647143](e64714326b))

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 17:50:15 +00:00
renovate[bot]
3223b92226
Update dependency mysql2 to v3.12.0 (#21947)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [mysql2](https://sidorares.github.io/node-mysql2/docs)
([source](https://redirect.github.com/sidorares/node-mysql2)) |
[`3.11.5` ->
`3.12.0`](https://renovatebot.com/diffs/npm/mysql2/3.11.5/3.12.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/mysql2/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mysql2/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mysql2/3.11.5/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mysql2/3.11.5/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>sidorares/node-mysql2 (mysql2)</summary>

###
[`v3.12.0`](https://redirect.github.com/sidorares/node-mysql2/blob/HEAD/Changelog.md#3120-2024-12-23)

[Compare
Source](https://redirect.github.com/sidorares/node-mysql2/compare/v3.11.5...v3.12.0)

##### Features

- **PoolCluster:** `restoreNodeTimeout` implementation
([#&#8203;3218](https://redirect.github.com/sidorares/node-mysql2/issues/3218))
([9a38601](9a3860186c))

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 10:43:26 +00:00
renovate[bot]
1e792fd205
Update dependency fastq to v1.18.0 (#21946)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [fastq](https://redirect.github.com/mcollina/fastq) | [`1.17.1` ->
`1.18.0`](https://renovatebot.com/diffs/npm/fastq/1.17.1/1.18.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/fastq/1.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fastq/1.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fastq/1.17.1/1.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fastq/1.17.1/1.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mcollina/fastq (fastq)</summary>

###
[`v1.18.0`](https://redirect.github.com/mcollina/fastq/releases/tag/v1.18.0)

[Compare
Source](https://redirect.github.com/mcollina/fastq/compare/v1.17.1...v1.18.0)

#### What's Changed

- fix: ensure drained() resolves after async tasks complete by
[@&#8203;todoroff](https://redirect.github.com/todoroff) in
[https://github.com/mcollina/fastq/pull/89](https://redirect.github.com/mcollina/fastq/pull/89)

#### New Contributors

- [@&#8203;todoroff](https://redirect.github.com/todoroff) made their
first contribution in
[https://github.com/mcollina/fastq/pull/89](https://redirect.github.com/mcollina/fastq/pull/89)

**Full Changelog**:
https://github.com/mcollina/fastq/compare/v1.17.1...v1.18.0

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 10:43:08 +00:00
renovate[bot]
0bd0c46b3d
Update dependency image-size to v1.2.0 (#21944)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [image-size](https://redirect.github.com/image-size/image-size) |
[`1.1.1` ->
`1.2.0`](https://renovatebot.com/diffs/npm/image-size/1.1.1/1.2.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/image-size/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/image-size/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/image-size/1.1.1/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/image-size/1.1.1/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>image-size/image-size (image-size)</summary>

###
[`v1.2.0`](https://redirect.github.com/image-size/image-size/releases/tag/v1.2.0)

[Compare
Source](https://redirect.github.com/image-size/image-size/compare/v1.1.1...v1.2.0)

This release adds support for JPEG-XL (
[#&#8203;409](https://redirect.github.com/image-size/image-size/issues/409)
)

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 00:34:32 +00:00
renovate[bot]
801e72e77e
Update dependency ua-parser-js to v1.0.40 (#21942)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [ua-parser-js](https://uaparser.dev)
([source](https://redirect.github.com/faisalman/ua-parser-js)) |
[`1.0.39` ->
`1.0.40`](https://renovatebot.com/diffs/npm/ua-parser-js/1.0.39/1.0.40)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/ua-parser-js/1.0.40?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ua-parser-js/1.0.40?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ua-parser-js/1.0.39/1.0.40?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ua-parser-js/1.0.39/1.0.40?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>faisalman/ua-parser-js (ua-parser-js)</summary>

###
[`v1.0.40`](https://redirect.github.com/faisalman/ua-parser-js/compare/1.0.39...1.0.40)

[Compare
Source](https://redirect.github.com/faisalman/ua-parser-js/compare/1.0.39...1.0.40)

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-23 00:34:12 +00:00
Alessandro Massone
8f26acd071
🌐 Updated Italian translations (#21905)
no issue

- fixed a couple of glaring typos and generally improved the translation.

---------

Co-authored-by: Cathy Sarisky <42299862+cathysarisky@users.noreply.github.com>
2024-12-20 12:42:39 +00:00
Sag
b6e1c11505
Updated Portal browser test to be less dependent on exact copy (#21935)
no issue

- this Portal browser test was relying on a 1-1 text match with text
generated in Portal
- this makes changing copy in Portal difficult, as publishing a new
version of Portal with copy changes can break browser tests
2024-12-19 20:53:21 +00:00
Sag
cff841d1c7
Released Portal v2.47.0 (#21934)
no issue

Changelog v2.46.2 -> v2.47.0:
- 55dc9d997f
- 3233bae37c
- 4bc85e2ff2
- 4ec0bdde3c
- 58ac19ada6
- e67e2411f2
2024-12-20 03:31:10 +08:00
Sag
e67e2411f2
Added option to disable free signups (#21862)
ref https://linear.app/ghost/issue/ENG-1235

- problem: today, when a publisher removes the "free" tier from the
Portal settings, it doesn't disable free signups entirely. It removes
the free tier from the Portal UI, but free signup is still possible via
other avenues (signup form in themes, embeddable signup form on another
site, direct API call). This creates confusion/frustration for
publishers who thought they disabled free signups, but are still getting
unwanted free signups (spam). There is no way to disable free signups
entirely.

- solution: introduced a new "paid-members only" subscription access
setting, which blocks all free signups at the API level. If chosen, the
free tier is hidden in Portal and all free signup are blocked at the API
level with a readable error message (`This site only accepts paid
members.`)

![CleanShot 2024-12-10 at 09 09
28@2x](https://github.com/user-attachments/assets/c71b38b4-0d23-429c-a743-00772e82c787)
2024-12-20 02:43:48 +08:00
Kevin Ansfield
9602c93448 Revert "Removed i18n toggle from labs UI (#21927)"
This reverts commit fab5544217.
2024-12-19 18:09:30 +00:00
Peter Zimon
9082a9f1db
Auto trigger Post analytics refresh (#21930)
ref https://linear.app/ghost/issue/DES-1041/auto-refresh-post-analytics

At the moment have a Refresh button in Post analytics which requires
users manually clicking to see how data updates on the page. This PR is
about automatically trigger this "click" every [10 seconds] so that the
refresh happens without users having to click.
2024-12-19 17:51:08 +01:00
Hannah Wolfe
8846b97568
Enabled stalebot on PRs after 1 year
- We've got a lot of stuff we didn't get to hanging around
- One year seems like long enough, if we didn't get to it, it's unlikely the person who did it even remembers at that point. 
- If they do, re-raising a PR is better than trying to keep an old one open
2024-12-19 15:59:24 +00:00
Hannah Wolfe
fab5544217
Removed i18n toggle from labs UI (#21927)
ref bb9a69e
ref https://linear.app/ghost/issue/ENG-1753/labs-flags-cleanup

- We promoted i18n to GA several weeks ago now, and it's going fine
- Removing the UI first to reduce confusion before cleaning up all the other references to the flag
- Also changed the i18n test to set the language back at the end of the test, to ensure no conflicts
2024-12-19 15:52:10 +00:00
Kevin Ansfield
4a3626696e Removed commentImprovements labs flag
closes https://linear.app/ghost/issue/PLG-300

- we're not planning on making any more comments improvements behind this flag so it can be removed
- all conditionals using it have been cleaned up previously when feature went GA
2024-12-19 15:30:42 +00:00
Michael Barrett
1e9d09951e
Reduce number of notifications retrieved in admin-x-activtypub (#21928)
no refs

`250` takes a bit too long on the server so reducing it down to `120`
for now
2024-12-19 15:28:15 +00:00
Michael Barrett
e08959a1b5
Increased the number of notifications retrieved in admin-x-activitypub (#21925)
refs
[AP-626](https://linear.app/ghost/issue/AP-626/wrong-posts-showing-up-in-notifications)

Increased the number of notifications retrieved in `admin-x-activitypub`
to account for notifications being grouped and reduce the amount of time
waiting on requests to finish (by making fewer requests)
2024-12-19 13:19:26 +00:00
Michael Barrett
c438f9442f
Filtered notifications that show in admin-x-activitypub (#21903)
refs
[AP-627](https://linear.app/ghost/issue/AP-627/sanitising-note-content)

Adding client side filtering of the notifications in
`admin-x-activitypub` - This is a stop-gap until we have a dedicated
endpoint for returning notifications. Filtering includes:

- Do not show our own likes
- Only show `like` notifications when it is on our own posts
- Only show replies to our own posts
2024-12-19 11:58:24 +00:00
Peter Zimon
252918b70c
Adding Posts analytics React app (#21878)
ref https://linear.app/ghost/issue/DES-1021/create-posts-app

Part of establishing React patterns in Ghost is to build a well-defined
and fairly self-encapsulated app through which we can test assumptions
and define best practices. Our guinea pig is Post analytics for this
purpose. This PR creates a new React app (posts) using Shade (the new
design system).
2024-12-19 12:01:08 +01:00
Daniël van der Winden
ab2c7f18e2
🎨 Improved Access card layout in Settings (#21920)
As part of our efforts to add more personality to Settings, we've
identified areas where we can improve the UX.

This change makes it easier to manipulate Access settings by removing a
step from the flow.

fixes
https://linear.app/ghost/issue/DES-484/improve-access-card-layout-in-settings

**Before**
<img width="1718" alt="access-card-before"
src="https://github.com/user-attachments/assets/8c0f8f14-31b9-4712-93d2-97eb0f05c965"
/>

**After**
<img width="1718" alt="access-card-after"
src="https://github.com/user-attachments/assets/5831a7cc-fbad-4d4b-bccc-6e86be6a8c65"
/>
2024-12-19 11:15:46 +01:00
Hannah Wolfe
d2b7872a08
Revert "Removed i18n toggle from labs UI (#21916)"
This reverts commit d8820230fc.
2024-12-19 09:26:27 +00:00
Hannah Wolfe
d8820230fc
Removed i18n toggle from labs UI (#21916)
ref
bb9a69edfe

- We promoted i18n to GA several weeks ago now, and it's going fine
- Removing the UI first to reduce confusion
- This is before clearning up all the other references to the flag
2024-12-19 06:34:04 +00:00
Kevin Ansfield
21e7a8e4b6
Revert "🎨 Improved Access card layout in Settings (#21913)"
no issue

This reverts commit 040b290fbd.

- the commit has broken browser tests, reverting to get back in a green state
- will be re-introduced in a follow-up PR
2024-12-18 20:34:43 +00:00
renovate[bot]
eafdcd041d
Update dependency sanitize-html to v2.14.0 (#21918)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[sanitize-html](https://redirect.github.com/apostrophecms/sanitize-html)
| [`2.13.1` ->
`2.14.0`](https://renovatebot.com/diffs/npm/sanitize-html/2.13.1/2.14.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/sanitize-html/2.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/sanitize-html/2.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/sanitize-html/2.13.1/2.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sanitize-html/2.13.1/2.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>apostrophecms/sanitize-html (sanitize-html)</summary>

###
[`v2.14.0`](https://redirect.github.com/apostrophecms/sanitize-html/blob/HEAD/CHANGELOG.md#2140-2024-12-18)

[Compare
Source](https://redirect.github.com/apostrophecms/sanitize-html/compare/2.13.1...2.14.0)

- Fix adding text with `transformTags` in cases where it originally had
no text child elements. Thanks to [f0x](https://cthu.lu).

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/TryGhost/Ghost).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-18 19:08:16 +00:00
Michael Barrett
06cd63a3ab
Fixed intermittent error when posting a note in admin-x-activitypub (#21917)
refs
[AP-629](https://linear.app/ghost/issue/AP-629/notes-say-they-error-but-post-correctly)

Fixed intermittent error when posting a note in `admin-x-activitypub`

The error was intermittent due to it only occurring when a specific set
of steps occurred, and the query cache being periodically cleared.

The error itself was due to incorrectly expecting the `outbox:${handle}`
query to be an array when it was in fact an object.

This PR also resolves and issue where the reply count for new notes
would display `NaN` (because the `replyCount` property was not present
on newly created notes)
2024-12-18 19:05:31 +00:00
Hannah Wolfe
79e5991ac2
Fixed Tinybird KPI results (#21914)
ref https://linear.app/ghost/issue/ANAL-120/bounce-rate-data-seems-to-mix-units
closes https://linear.app/ghost/issue/ANAL-119/visit-duration-metric-inaccurate
closes https://linear.app/ghost/issue/ANAL-118/charts-are-empty-with-only-1-data-point

- The original [web analytics starter kit KPI endpoint](ad1efb766e/tinybird/pipes/kpis.pipe (L122)) had this simpler endpoint, but as I've messed around adding features, I've unintentionally overcomplicated it and introduced a tonne of bugs.
- This reverts the KPI endpoint back towards the original structure, and moves all the calculations and where statements up to the data node
- This means that the left join at the end works and pulls in all the dates from the timeseries node correctly, without the need for using `WITH FILL STEP 1` which generated a result for every second when looking at a single days data. 
- Moving the where clause handling up to the `data` node, rather than being on the endpoint still works as expected, which confused me when I first started working with tinybird
- This should resolve several bugs we've experienced with the visit duration, with missing data points and empty charts, and perhaps even the bounce rate (but need to look at that more closely)
2024-12-18 16:59:24 +00:00
GGLVXD
ad44d7ac61
🌐 Added Latvian translations (#21852)
no issue

- added new `lv` locale and translations
2024-12-18 15:10:45 +00:00
echobilisim3421
4426070744
🌐 Updated Turkish translations (#21822)
no issue

- added missing comments translations

---------

Co-authored-by: Hannah Wolfe <github.erisds@gmail.com>
Co-authored-by: Cathy Sarisky <42299862+cathysarisky@users.noreply.github.com>
2024-12-18 14:57:41 +00:00
Àlex Rodríguez Bacardit
42ba90f197
🌐 Updated Catalan translations (#21830)
no issue

- added missing search translations
2024-12-18 14:55:41 +00:00
Duy
11d5bce68f
🌐 Updated Vietnamese translations (#21771)
no issue

Portal.json
- Added new strings from (#21739)
- Corrected the spelling mistake of missing a `t` character in the sentence
2024-12-18 14:46:43 +00:00
Daniël van der Winden
040b290fbd
🎨 Improved Access card layout in Settings (#21913)
As part of our efforts to add more personality to Settings, we've
identified areas where we can improve the UX.

This change makes it easier to manipulate Access settings by removing a
step from the flow.

fixes
https://linear.app/ghost/issue/DES-484/improve-access-card-layout-in-settings

**Before**
<img width="1718" alt="access-card-before"
src="https://github.com/user-attachments/assets/8c0f8f14-31b9-4712-93d2-97eb0f05c965"
/>

**After**
<img width="1718" alt="access-card-after"
src="https://github.com/user-attachments/assets/5831a7cc-fbad-4d4b-bccc-6e86be6a8c65"
/>
2024-12-18 14:29:07 +00:00