0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2024-12-30 22:34:01 -05:00
Commit graph

2207 commits

Author SHA1 Message Date
Sanne de Vries
2d9b593844
Added hover styles to comment context menus (#21714)
REF https://linear.app/ghost/issue/PLG-283/add-hover-state-to-menu-items
2024-11-25 11:41:10 +00:00
Sanne de Vries
1a0a36b64c
Changed click target for comment replied-to ref (#21713)
REF
https://linear.app/ghost/issue/PLG-282/change-click-target-for-replied-to-reference
2024-11-25 11:34:40 +00:00
Sanne de Vries
ac3467165d
Updated "Replied to comment" copy (#21711)
REF
https://linear.app/ghost/issue/PLG-278/update-replied-to-comment-copy
2024-11-25 11:10:00 +00:00
Kevin Ansfield
d204d67d1f Cleaned up comments-ui actions test setup duplication
no issue

- repeated use of the same init data made tests longer than they needed to be, especially as the number of tests grows
- added `initializeTest()` function to remove unnecessary duplication
2024-11-25 10:52:31 +00:00
Sanne de Vries
f06a766189
Replaced reply icon in comments-ui (#21710)
REF https://linear.app/ghost/issue/PLG-271/replace-reply-icon
2024-11-25 08:59:19 +00:00
Ronald Langeveld
253e596138
Reverting 2 commits (#21709)
no issue

- need to add an additional change.
2024-11-25 08:58:06 +00:00
Ronald Langeveld
6c3753f403
Bumped comments-ui to a new minor (#21708)
no issue

- Bumping to a new minor due to API changes.
2024-11-25 08:42:31 +00:00
Ronald Langeveld
31a80cf9b8
Fixed hidden/deleted replies in getCommentByID (#21707)
ref PLG-270

- Updated the getCommentByID service to filter out hidden and deleted
replies.
- Ensured all replies are loaded before applying the filter.
- Simplified logic to handle non-paginated routes by directly removing
unwanted replies.
- Wired up new Admin Endpoint that shows hidden replies but not deleted
replies.
- Updated comments-ui client.
2024-11-25 08:15:08 +00:00
Steve Larson
673e316580
🐛 Fixed unsubscribe all link in Portal sometimes failing (#21703)
ref https://linear.app/ghost/issue/ONC-613/

A little while back we changed to requiring a key when interacting with
member endpoints that are not authenticated. One request code path in
Portal was missed, causing some requests to fail. This should patch that
hole.
2024-11-24 01:10:25 +00:00
Cathy Sarisky
ebd98d005a
🐛 fix Windows bug with the admin file upload widget (#21687)
closes #21439

On Windows 10/Chrome (but maybe nowhere else?), attempting to drag a
file into any of the drop targets in the admin panel resulted in
flickering behavior, and generally dropping didn't actually trigger the
upload.

I thought originally it was a problem with the size of the drop target,
but it actually appears to be a rerender bug. In brief, handleDragging
and handleStopDragging were firing repeatedly, and each fire triggered a
rerender, that added or removed a div from the file upload widget.

I suspect some browser-specific difference in how drag events fire is to
blame.

This PR moves the logic to change the classes applied to the div, rather
than changing whether the div is present.

I have manually tested with Windows 10 in the users import, theme
import, and content import widgets. Styles are preserved (although I
think they could be improved, as the grey outline is really faint) and
uploading now works consistently, instead of mostly triggering display
of the raw file most of the time.
2024-11-22 17:21:00 -06:00
Djordje Vlaisavljevic
0861c524df
Connected the endpoint for publishing notes (#21680)
close
https://linear.app/ghost/issue/AP-601/allow-users-to-publish-short-form-content-as-notes

---------

Co-authored-by: Michael Barrett <mike@ghost.org>
2024-11-21 20:00:01 +00:00
Kevin Ansfield
0ac36bd324 Shipped comments-ui@0.22.4
no issue

- includes fix for reply-to-reply form not showing when parent comment is hidden
2024-11-21 18:49:18 +00:00
Kevin Ansfield
d1019a8e54 Fixed reply-to-reply comment form not showing when parent is hidden
closes https://linear.app/ghost/issue/PLG-266

- the reply form is a child of the parent comment component but we have different comment components for published vs unpublished with the bug coming from the latter missing the logic to display the form
- added missing form display and added a regression test
2024-11-21 18:44:23 +00:00
Steve Larson
c046bbda91
🐛 Fixed Istanbul timezone (#21686)
ref https://linear.app/ghost/issue/ENG-1781/
- updated Istanbul TZ to +03

Thanks to @muratcorlu for the PR to TryGhost/SDK.
2024-11-21 17:23:21 +00:00
Kevin Ansfield
e5a21aaf54 Shipped comments-ui@0.22.3
no issue

- includes fix for missing progress indicator when submitting forms
2024-11-21 16:12:31 +00:00
Kevin Ansfield
0b806cc01b 🐛 Fixed missing progress indicator when submitting comments
closes https://linear.app/ghost/issue/PLG-265

- wrapped the async part of `dispatchAction` in a Promise so code that calls it can await the action completion
  - this was a regression introduced a long time ago when we switched to Typescript and React hooks
- added a `setDelay()` method to our `MockedApi` class to make it easier to test interstitial loading states
2024-11-21 16:03:30 +00:00
Djordje Vlaisavljevic
3abff38a53
Added UI for publishing short-form notes from Ghost admin (#21667)
ref https://linear.app/ghost/issue/AP-601/allow-users-to-publish-short-form-content-as-notes

- Added a button to the top of the feed that opens a modal that lets you write and short post

---------

Co-authored-by: Michael Barrett <mike@ghost.org>
2024-11-21 12:07:55 +00:00
Sodbileg Gansukh
9493fbefcc
Moved the custom fonts feature to public beta (#21664)
ref DES-985
2024-11-21 19:06:40 +08:00
Ronald Langeveld
4202cf137e
Bumped Comments-UI to 0.22.2 (#21678)
no issue
2024-11-21 11:04:41 +00:00
Ronald Langeveld
cf6884d098
Wired up Admin Comment Endpoints to UI (#21661)
ref PLG-227

- Updated logic that allows Admin Users on comments to interact with
some endpoints from a specific admin-only route.
- It pulls 2 admin specific routes:
- 1. an admin specific 'browse' route that includes hidden comments that
would otherwise be hidden from regular users and members.
- 2. A specific replies route, that would also include hidden comments
- This was needed in order to get accurate pagination.

- Additionally, it wires up the routes via `message-handler` that deal
with the potential cors issues.
- Includes style updates

---------

Co-authored-by: Sanne de Vries <sannedv@protonmail.com>
Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2024-11-21 10:52:36 +00:00
Sodbileg Gansukh
1f501c1e58
Added author name as an additional check for official themes (#21665)
ref DES-982

- we're hiding font-related theme settings from official themes to make room for the new custom font settings
- this adds author name as an additional check on top of the existing ones (theme name and corresponding setting keys)
2024-11-21 12:04:24 +08:00
Kevin Ansfield
33709e7d0c Shipped comments-ui@0.22.1
no issue

- includes updated timestamp formatting
2024-11-20 15:30:53 +00:00
Sanne de Vries
ea1b786136
Updated timestamp format for comments (#21515)
ref https://linear.app/ghost/issue/PLG-235

- Any comments older than yesterday are now shown with the date instead of relative time
- Comments from the current year are now shown with just the month and day

---------

Co-authored-by: Kevin Ansfield <kevin@ghost.org>
2024-11-20 15:25:49 +00:00
Michael Barrett
2e9dbd3ef0
Fixed suggested accounts not rendering in admin-x-activitypub (#21655)
refs
[AP-606](https://linear.app/ghost/issue/AP-606/suggested-accounts-not-rendering-due-to-404)

Some of the suggested accounts in `admin-x-activitypub` were not
rendering due to the requests for the data returning a 404. This was due
to incorrect account handles being used. This commit fixes the issue by
ensuring the correct handles are being used. This commit also adds a new
hook to handle the fetching of suggested accounts that also limits and
randomizes the accounts returned.
2024-11-20 14:07:05 +00:00
Kevin Ansfield
46bdbaa3b8 Shipped comments-ui@0.22.0
no issue

- includes updates behind `commentImprovements` flag
- bumped to 0.22 to avoid changes going live before next Ghost release
2024-11-20 12:33:53 +00:00
Sanne de Vries
5bbb98b661
Hooked up the CTA popup to the reply button (#21663)
REF
https://linear.app/ghost/issue/PLG-262/unhide-the-reply-button-when-comments-is-paywalled
- Previously, the reply button was hidden when the comments were
paywalled. Now, the button is visible and triggers a signup or upgrade
popup.
2024-11-20 10:10:50 +01:00
Kevin Ansfield
52e727a28c
Added in-reply-to references to comments-ui (#21656)
ref https://linear.app/ghost/issue/PLG-230

When clicking "Reply" on a reply we now show an "In reply to" reference on the form and when saved show that reference in the rendered view, making it easier to follow discussions within comment replies.

- updated calls to `openCommentForm` action when opening a reply to add the in-reply-to data to the `openForm` instance
- updated Form comment to use the `openForm` instance data when rendering the in-reply-to reference
- updated Comment component to render the in-reply-to reference from the API-provided data
  - includes click handler to scroll to the referenced comment
- added `getCommentInReplyToSnippet` helper function so strip a comment back to plaintext for display in the reply-to reference on the comment form (snippets on other comments are generated server-side)

---------

Co-authored-by: Sanne de Vries <sannedv@protonmail.com>
2024-11-19 17:30:18 +00:00
Djordje Vlaisavljevic
232c897fa3
Split inbox and feed into separate tabs (#21642)
close https://linear.app/ghost/issue/AP-600/separate-feed-and-inbox-screens

- Instead of the layout switcher, we now have separate Inbox and Feed
tabs
- Inbox only shows long-form content (Articles)
- Feed only shows short-form content (Notes)
2024-11-19 17:04:39 +00:00
Djordje Vlaisavljevic
dc8f553fc3 Updated feed view layout so it's more compact
close https://linear.app/ghost/issue/AP-464/feed-view-visual-refinements
2024-11-19 13:27:55 +00:00
Djordje Vlaisavljevic
998ade4632
Added loading state to Your Profile page (#21638)
close
https://linear.app/ghost/issue/AP-515/add-loading-state-to-your-profile-page
2024-11-18 17:52:45 +00:00
Steve Larson
2447f37a14
Reverted custom fonts flag (#21645)
ref https://ghost.slack.com/archives/C025584CA/p1731950126867179

- moved custom fonts functionality back to a labs flag
- reverted gscan version to 4.45 which doesn't include the custom fonts
checks/warnings
2024-11-18 17:45:03 +00:00
Sanne de Vries
0d417a5859
Updated hide comment button to be red (#21641)
REF
https://linear.app/ghost/issue/PLG-239/indicate-that-youre-an-admin-in-ui
2024-11-18 13:10:06 +01:00
Kevin Ansfield
5ef30dbb3c Shipped comments-ui@0.21.10
no issue

- includes fix for incorrect avatar showing in comment reply forms
2024-11-18 11:36:35 +00:00
Kevin Ansfield
49595dce0f 🐛 Fixed avatar on comment reply form not showing your avatar
closes https://linear.app/ghost/issue/PLG-260
ref https://github.com/TryGhost/Ghost/pull/21621

- in a recent refactor, a `comment` prop started being passed through to `<Form>` inside of `<ReplyForm>` which had an unexpected side-effect of changing the avatar image to the comment's member instead of the logged-in member
- removed the prop passthrough and updated test to catch future regressios
2024-11-18 11:30:48 +00:00
Steve Larson
7ff02f46ec
Bumped comments package (#21632)
no ref
- includes new translations
2024-11-15 19:12:58 +00:00
Steve Larson
888fdaacc2
Bumped signup form package (#21631)
no ref
- includes new translations
2024-11-15 19:11:29 +00:00
Steve Larson
f1cb2b8d60
Bumped portal and search packages (#21630)
no ref
- includes new translations
2024-11-15 19:10:29 +00:00
Kevin Ansfield
0ac587e94a
Refactored comments-ui form management (#21621)
ref https://linear.app/ghost/issue/PLG-230
closes https://linear.app/ghost/issue/PLG-256

Adding an in-reply-to reference link/snippet to reply forms was proving difficult with the previous setup due the amount of data that needed to be passed up and down a deeply nested component tree. This refactor lays the groundwork for making that easier and aims to make form autoclose behaviour more centralised by keeping the open form state in app context and the opening/closing of forms in actions so there's less need for messy local state and to drill functions down the component tree.

- replaces `openFormCount` context state with an `openCommentForms` array
  - keeping detailed open form references in the application state means the display of forms is centrally managed rather than managed via local state inside components
  - it simplifies some of the problems faced with the `<PublishedComment>` component that previously managed form display. That component is re-used for both the top-level comment as well as replies even though replying on a reply puts the top-level comment into reply mode meaning we had a mess of local state and passed-through functions to work around the component having varying behaviour depending on nesting level
  - `openFormCount` is still available on the application state via `useMemo` on the provider meaning the implementation of `openCommentForms` is hidden from app code that just needs to know if forms are open
- removes `<AutocloseForm>` as the autoclose behaviour is now controlled via the `openCommentForm` action
- updated `<Form>` so it manages the "has unsaved changes" properties on `openFormComments` ready for use by `openCommentForm`'s autoclosing behaviour
2024-11-14 18:26:23 +00:00
Djordje Vlaisavljevic
86641268ab Stopped HTML cards with fixed width from causing overflow in the drawer
close https://linear.app/ghost/issue/AP-557/elements-in-articles-can-cause-horizontal-scrolling
2024-11-14 17:45:59 +00:00
Djordje Vlaisavljevic
6bf69b6a07
Fixed drawer “Back” button appearing in the wrong place (#21624)
ref https://linear.app/ghost/issue/AP-587/back-button-appears-in-wrong-spot-when-article-is-reached-through-a
2024-11-14 17:45:37 +00:00
Djordje Vlaisavljevic
af54b21bf3
Fixed separator showing even after the last list item (#21620)
close
https://linear.app/ghost/issue/AP-528/remove-unnecessary-separator-after-last-list-items

- Previously, in some components, we relied on CSS and all elements in
the list being the same type of an HTML element to show the separator.
Now, we've extracted the separator into its own component and place
after all items during mapping except the last one.
2024-11-14 17:42:43 +00:00
Djordje Vlaisavljevic
2a0ad25edc
Fixed activity badges not showing when the user doesn't have a profile icon (#21609)
ref https://linear.app/ghost/issue/AP-575/badges-are-not-showing-up-on-placeholder-avatars
2024-11-14 11:15:00 +00:00
Djordje Vlaisavljevic
5e5d5dc5da
Updated menu items to not trigger parent element on click (#21618)
close https://linear.app/ghost/issue/AP-576/clicking-copy-link-to-post-shouldnt-open-the-drawer

- Clicking on a menu item in the `...` dropdown now doesn’t trigger click handlers on parent elements, but it does close the Menu

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2024-11-14 11:13:37 +00:00
Ronald Langeveld
e254ddbd17
🐛 Fixed marketplace theme installation route (#21616)
no issue

- Fixes a potential regression that caused the marketplace install route
not to route correctly.
2024-11-14 03:41:47 +00:00
Djordje Vlaisavljevic
5863c40306
Improved Inbox view UI (#21600)
ref https://linear.app/ghost/issue/AP-521/improve-inbox-view-alignmentstructure

- Improved the layout, spacing and typography of Inbox view
- Removed attachment counters for images in Inbox view
- Added a very very small variant of `APAvatar`
2024-11-13 11:45:37 +00:00
Kevin Ansfield
097394bd88 Fixed flaky avatar saturation test in comments-ui
no issue

- running tests locally, especially in UI mode, would often result in an avatar saturation test failing
- the cause was calculating saturation for an element that still had it's opacity animating in
- added a test util function that waits for an element in a frame to reach full opacity
- used function in test to ensure we have a stable element before calculating the color saturation
2024-11-12 17:10:44 +00:00
Michael Barrett
0f2058cc2a
Fixed inbox tab not showing user's own posts in admin-x-activitypub (#21601)
refs
[AP-588](https://linear.app/ghost/issue/AP-588/inbox-tab-not-showing-users-own-posts)

Fixed inbox tab not showing user's own posts in admin-x-activitypub by
ensuring that the `includeOwn` parameter is set to `true` when fetching
the activities for the inbox tab
2024-11-12 15:59:26 +00:00
Fabien 'egg' O'Carroll
d555cc6612
Handled non-string preferredUsername values (#21598)
ref https://linear.app/ghost/issue/AP-585

If preferredUsername is not a string, and we attempt to render it, we
will crash the entire React application!
2024-11-12 21:22:45 +07:00
John O'Nolan
e7a80d79f3
Updated link to Pintura integration 2024-11-12 08:52:17 -05:00
Sodbileg Gansukh
9ffc5ca79a
Fixed embeddable signup form preview and generated code (#21592)
ref ENG-1671
2024-11-12 14:33:52 +08:00
Princi Vershwal
7f158c0e18
🐛 Fixed Admin navigation settings, pressing ENTER will now create a new navigation item (#21591)
Ref
https://linear.app/ghost/issue/DES-73/enter-should-create-new-navigation-itemmove-to-next-field
2024-11-12 05:10:15 +00:00
Sodbileg Gansukh
c41bc5c237
Fixed table row hover effect in Safari (#21586)
ref DES-951
2024-11-12 10:51:51 +08:00
Djordje Vlaisavljevic
ea11367ea4
Stopped loading spinner flash when you first open Search page (#21569)
close
https://linear.app/ghost/issue/AP-531/search-spinner-flashes-for-a-split-second-when-switching-tab-for-the

- Fixed the logic for displaying “loading” and “no results found” states
- Refactored the component to avoid nested ternaries
2024-11-11 11:36:04 +00:00
Sodbileg Gansukh
177e604501
Added custom fonts (#21564)
ref DES-949

This adds custom fonts feature allowing users to select heading and body fonts for their themes from a curated list. This allows publishers to have more control over their brand, and allows themes to have a wider range of styles to appeal to different audiences. 

Without custom fonts support, themes will continue to work as normal, but users won't be able to customize their typography. As for the official themes, all of them will support custom fonts.

---------

Co-authored-by: Aileen Booker <AileenCGN@gmail.com>
2024-11-11 18:38:02 +08:00
Djordje Vlaisavljevic
b55ac9a03a
Fixed Articles appearing squeezed when opened from Notifications or Profile (#21587)
close
https://linear.app/ghost/issue/AP-581/article-content-appears-squeezed-when-opened-from-notifications-or
2024-11-11 09:31:04 +00:00
Ronald Langeveld
c349b9bf26
Added new hidden comments API implementation (#21444)
ref PLG-227

- Behind flags
- Changed Comments API for members and guests to not return hidden or
removed comments - with the only exception being if a hidden or removed
comment have published replies, in which case it will be greyed out as
per the previous version on the UI.
- Wired up a new admin API endpoint for comment to receive all comments.
It's on par with the members / guests endpoint, with the difference
being that it it shows hidden comment's content, where previously the
html property was nullified.
2024-11-11 15:00:59 +08:00
Djordje Vlaisavljevic
5138ef8ed3 Bumped admin-x-activitypub package
ref https://linear.app/ghost/issue/AP-522/inbox-view-thumbnail-size-inconsistencies
2024-11-07 17:36:03 +00:00
Djordje Vlaisavljevic
a9a72f9445 Made hover states for list items look nicer
ref https://linear.app/ghost/issue/AP-506/suggested-profiles-hover-refinement, https://linear.app/ghost/issue/AP-530/notifications-list-hover-state-is-inconsistent-with-the-rest, https://linear.app/ghost/issue/AP-516/profile-view-hover-state-on-profile
2024-11-07 17:36:03 +00:00
Djordje Vlaisavljevic
c5861a7664 Made all thumbnails in Inbox layout the same width
ref https://linear.app/ghost/issue/AP-522/inbox-view-thumbnail-size-inconsistencies
2024-11-07 17:36:03 +00:00
Djordje Vlaisavljevic
3709a4811e
Improved ActivityPub drawer view UI (#21521)
ref https://linear.app/ghost/issue/AP-507/inbox-view-missing-min-width-for-inbox-card, https://linear.app/ghost/issue/AP-562/remove-unused-viewfollowersmodal-and-viewfollowingmodal-files, https://linear.app/ghost/issue/AP-559/add-post-stats-and-buttons-to-articles-in-drawer-view, https://linear.app/ghost/issue/AP-468/drawer-visual-refinements, https://linear.app/ghost/issue/AP-558/add-actor-info-to-articles-in-drawer-view, https://linear.app/ghost/issue/AP-573/add-anchor-link-to-replies-in-the-drawer

- Made `Articles` in drawer view wider for better reading experience
- Added `Actor` info to `Articles` in drawer view for more context about who posted it
- Added `Like` and `Reply` buttons and counters to `Articles` in drawer view
- Clicking on a Reply notification or Reply icon in the drawer view now scrolls you directly to replies
- Removed modals we’re no longer using
- Updated `RoutingProvider` so it can work without any modals passed to
it
2024-11-07 15:59:29 +00:00
Daniël van der Winden
eae76703eb
Custom Integrations and Webhooks layout fixes (#21565)
fixes
https://linear.app/ghost/issue/DES-790/some-urls-not-wrapping-in-integration-detail-modal

- Webhook URLs were breaking out of the modal container. They now wrap
across a few lines.
- Long descriptions of Custom Integrations caused the integration's icon
to scale down. That no longer happens.
- Descriptions of Custom Integrations wrap properly.
2024-11-07 14:24:15 +00:00
Daniël van der Winden
86ecedf079
Revert "Admin navigation settings fix (#21323)" (#21563)
This reverts commit eaed33972f.

The fix we shipped for using the `RETURN` key to create navigation items
in Admin broke something with regards to saving the URL, so we're
reverting that change.
2024-11-07 12:34:34 +01:00
Sanne de Vries
5f7734bf36
Fixed comments dropdown menu being cutoff by iframe (#21555)
REF https://linear.app/ghost/issue/PLG-255/dropdown-cut-off-by-iframe
- Avoided menu cutoff by positioning the dropdown of the last comment
above the MoreButton
2024-11-07 11:39:52 +01:00
Fabien 'egg' O'Carroll
466d7fef3f
Bumb admin-x-activitypub to 0.3.10 (#21546)
closes https://linear.app/ghost/issue/AP-523
2024-11-06 11:07:17 +00:00
Sodbileg Gansukh
9516d144a0
Used theme package name for hiding theme-specific font settings (#21545)
ref DES-929
2024-11-06 10:42:32 +00:00
Sodbileg Gansukh
e25d5cc105
Hide typography related theme settings from official themes (#21530)
ref DES-929
2024-11-06 12:26:20 +08:00
Fabien 'egg' O'Carroll
b591912c74
Updated the local state after following an account (#21509)
refs https://linear.app/ghost/issue/AP-523

We want to preempt the Accept activity from our Follows, so we make the
assumption that it's succeeded. What this means is that we have to
update our `following`, `followingCount` as well as the fetched profile
to set the `isFollowing` property. This gives a more fluid user
experience when following accounts and keeps our state up to date.

Accounts where the follow request has to be accepted manually, are a
little trickier as we don't currently have easy access to the "requested
but not accepted state"
2024-11-06 00:15:39 +07:00
Kevin Ansfield
c0a00cabe4 Bumped Comments-UI to 0.21.8
no issue
2024-11-05 10:55:50 +00:00
Daniël van der Winden
9d0e4e7d45
Updated Signup Page (#21434)
fixes
https://linear.app/ghost/issue/DES-881/sign-up-flow-on-mobile-with-checkbox-on-requires-ux-improvement

On mobile, the Sign Up button is no longer sticky. This ensures
customers scroll down and see the checkbox before they hit the button.

If they do still miss the checkbox, we now have a check in place that
— if the checkbox is the last missing thing — scrolls the checkbox into
view upon submission.

https://github.com/user-attachments/assets/5d7867b6-d60c-4844-9482-af04a0eb1eaf
2024-11-05 10:51:14 +01:00
Ronald Langeveld
c77080f977
Fixed comments placeholder (#21524)
ref PLG-251

- Fixed comments placeholder to change from "Start the conversation" to
"Join the discussion" when there's more than 1 comment.
- Previously, it only worked after a refresh. This fix ensures it's
reactive and would update the placeholder without the need for a
refresh.
2024-11-05 12:14:29 +09:00
Daniël van der Winden
6e8e817a47
Makes newsletter comments toggle conditional (#21517)
fixes
https://linear.app/ghost/issue/DES-796/shouldnt-show-email-template-option-when-commenting-is-disabled

Previously, if you had comments turned off on your site, you would still
see the toggle in newsletter settings. Clicking it would do nothing.

Now, if comments are enabled (for all members, or paid members), it will
show; if they're not, it won't.



https://github.com/user-attachments/assets/80b8e2dc-a0ed-40bc-ada5-40141676e38b
2024-11-04 16:18:04 +01:00
Sodbileg Gansukh
264e362e06
Fixed sticky unsubscribe from all button on mobile (#21514)
ref DES-785
2024-11-04 11:41:16 +00:00
Sanne de Vries
d32cae4284
Hide sorting form when there is one or zero comments (#21513)
REF PLG-250
2024-11-04 12:33:26 +01:00
Sanne de Vries
599a526dd7
Used comment count to determine which text to show in the CTA box (#21512)
REF PLG-251
- This change uses commentCount instead of isFirst to ensure that the
CTA box text is correct regardless of layout.
2024-11-04 12:07:23 +01:00
Michael Barrett
0316c3f16e
Updated admin-x-activitypub to use consistent URL encoding (#21493)
refs
[TryGhost/ActivityPub](https://github.com/TryGhost/ActivityPub/pull/103)

Updated the API requests made by the `admin-x-activitypub` app to use
consistent URL encoding when making requests to the ActivityPub API
2024-11-04 10:40:06 +00:00
Sanne de Vries
73884e8f69
Added CTA popup to comments like button (#21484)
REF PLG-246
- Whenever a user clicks the like button and they are not allowed to
like comments (either not signed in or not a paid member) we now show a
CTA popup asking them to sign in or upgrade to a paid membership.

---------

Co-authored-by: Kevin Ansfield <kevin@ghost.org>
2024-11-04 11:29:31 +01:00
Sodbileg Gansukh
c9f5b72b3c
Made visual updates to the custom fonts selector (#21510)
ref DES-930
2024-11-04 16:42:04 +08:00
Ronald Langeveld
d675dec74e
Bump Comments-UI to 0.21.7 (#21508)
no issue
2024-11-04 02:49:21 +00:00
Ronald Langeveld
fd463f69bd
Bumped Comments UI to 0.21.0 (#21445)
ref PLG-220
2024-11-04 02:40:14 +00:00
Cathy Sarisky
8f9a89c1a5
🎨 Updated Portal to accept data-locale (#21420)
no issue

This change adds the ability to pass a desired language/locale into
portal, as a data-locale tag added to the script that loads it.

Falls back to the previous behavior, loading from the site settings, if
no data-locale is present. (And then to 'en', if necessary.) No change
in expected behavior if data-locale is not passed.

This provides an option to run portal in a language other than the
sitewide language.

(ref: https://app.slack.com/client/T025584C4/C018EKC56JF)
2024-11-02 14:19:46 +00:00
Michael Barrett
b90e16219d
Refactored collection retrieval in admin-x-activitypub (#21491)
no refs

Refactored collection retrieval to reduce code duplication and
complexity
2024-10-31 20:31:20 +00:00
Michael Barrett
3ecfe08e1d
Added failure state for reply in admin-x-activitypub (#21487)
no refs

Added a failure state for when a reply fails to be sent
2024-10-31 16:34:53 +00:00
Michael Barrett
dd2ed27d9d
Removed unused useAllActivitiesForUser hook and related code in admin-x-activitypub app (#21482)
no refs

Removed unused `useAllActivitiesForUser` hook and related code. This was
a left over from when we added paginated activities
2024-10-31 11:40:41 +00:00
renovate[bot]
085afdeb74 Pin dependency clsx to 2.1.1 2024-10-31 11:02:29 +00:00
Djordje Vlaisavljevic
45711e197c
AP design bugs (#21395)
- Fixed links in profile description
- Stripped post content
- Fixed grey bg in Avatars
- Installed `clsx`

---------

Co-authored-by: Michael Barrett <mike@ghost.org>
2024-10-31 10:50:51 +00:00
renovate[bot]
4f4662490f
Update Koenig packages (#21480) 2024-10-31 10:11:27 +00:00
Djordje Vlaisavljevic
824efc7f10
Added UUID as data attribute to posts in all views (#21470)
ref
https://linear.app/ghost/issue/AP-404/add-uuid-as-a-data-attribute-in-the-dom-for-easier-db-lookup

- This will allow us to find posts in the DB

Co-authored-by: Michael Barrett <mike@ghost.org>
2024-10-31 10:07:52 +00:00
Djordje Vlaisavljevic
becfd13141
Refactored handleViewContent so it can be reused (#21468)
ref
https://linear.app/ghost/issue/AP-540/clicking-comment-icon-on-posts-and-likes-tabs-of-your-profile-doesnt

- We want to open posts in the drawer from multiple views (Inbox,
Profile etc.) and this change allows us to do so by pulling
`handleViewContent` from `Inbox.tsx` into a utility function. At the
same time, we’ve simplified the function so it uses less props to
achieve the same functionality.
- Also added a simple fix for scrolling the reply-box into view when
opening a long `article` by clicking on the reply icon. We probably
still need to figure out a more robust solution, because the height of
the `iframe` and the fact it takes some time to load it sometimes gets
in the way.

Co-authored-by: Michael Barrett <mike@ghost.org>
2024-10-31 09:58:47 +00:00
Michael Barrett
5f59ddaacc
Updated replies implementation to use thread mechanism in admin-x-activitypub (#21465)
refs:

- https://linear.app/ghost/issue/AP-439/seeing-parent-post-for-replies
- https://linear.app/ghost/issue/AP-481/reply-ui
-
https://linear.app/ghost/issue/AP-482/replies-to-a-post-should-be-visible-when-opening-it

Updated the replies implementation to make use of the new thread
mechanism. This allows for a more sane approach to handling replies as
well as making it possible to show the parent of a reply in the UI

---------

Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2024-10-31 09:38:52 +00:00
Sodbileg Gansukh
e01b952ed2
Made the tabs sticky in design and newsletter settings (#21477)
ref DES-927, DES-928
2024-10-31 13:30:25 +08:00
Ronald Langeveld
cca6a38e53
Patched Comments UI v0.20.1 (#21464)
no issue

---------

Co-authored-by: Sanne de Vries <65487235+sanne-san@users.noreply.github.com>
2024-10-30 10:06:11 +00:00
Sanne de Vries
119a913ce5
Fixed comment form being cut off at the top (#21463)
No ref
2024-10-30 08:56:42 +00:00
Djordje Vlaisavljevic
c29905155f
Fixed incorrect actor passed from like notifications (#21451)
ref https://linear.app/ghost/issue/AP-541/incorrect-object-loaded-on-like-notifications

- We were passing the wrong `actor` info from `like` notifications. We should be using `activity.object.attributedTo` instead.
2024-10-29 20:55:30 +00:00
Michael Barrett
28a9a431db
Prevent replies from being shown on profile page in admin-x-activitypub (#21454)
refs
[AP-543](https://linear.app/ghost/issue/AP-543/posts-on-profile-should-not-include-replies)

Filtered the posts on the profile page to only show `Create` activities
that are not replies.
2024-10-29 17:07:01 +00:00
Daniël van der Winden
4a8da45895
Fixed searchbar's X button overlapping with Settings' X button (#21449)
fixes
https://linear.app/ghost/issue/DES-316/adminx-settings-search-overlaps-with-modal-close-x-when-in-mobile-view

Regression, solved by removing an overexcited media query.
2024-10-29 11:03:43 +00:00
Sanne de Vries
456af29607
Fixed avatar initials being broken in comment form (#21448)
REF PLG-248
2024-10-29 10:44:00 +00:00
Djordje Vlaisavljevic
cc8a36cc12
Fixed articles getting cut off in the drawer (#21447)
ref
https://linear.app/ghost/issue/AP-542/articles-are-cut-off-when-viewed-in-sidebar

- We now wait for the content of the iframe to load completely before
determining the height needed to display it
2024-10-29 10:26:27 +00:00
Michael Barrett
e6df621436
Updated ActivityPub collection retrieval to accommodate pagination (#21393)
refs
[AP-526](https://linear.app/ghost/issue/AP-526/implement-pagination-for-fedify-collections)

Updated followers, following, outbox and liked collection retrieval to
accommodate pagination
2024-10-29 09:46:43 +00:00
Fabien 'egg' O'Carroll
f8ef2a1cb6
Fixed layout state sync issues (#21443)
refs https://linear.app/ghost/issue/AP-544

useState was still called twice, we should have pulled that out - but
instead passing values down for now
2024-10-29 03:17:57 +00:00
Fabien 'egg' O'Carroll
d4b1f692ab
Persisted activitypub layout to localstorage
closes https://linear.app/ghost/issue/AP-544

We're releasing this change immediately with v0.3.0
Also cleans up some props for the MainNavigation component.
2024-10-28 18:39:28 +07:00
luis-411
788a45ec86
🎨Changed hover color of ExitButton (#21396)
no issue

- changed the hover color of the settings exit button from black to
grey-900
- keeps the X visible when hovering over it (before it was the same
color as the background)
2024-10-28 09:28:48 +00:00
Ronald Langeveld
1c95acfd57
Fixed flaky Admin X design tests (#21426)
ref ONC-478

- Admin X design tests became flaky largely due to the implementation of
a debounce.
- Initially running a `waitForTimeout` helped to give the environment
enough time to ensure that the specific requests are made, however it
proved to be unpredictable across CI and locally.
- We then replaced `waitForTimeout` in with `waitForRequest` to ensure
tests reliably wait for specific requests.
- Updated logic to check `x-ghost-preview` headers directly, ensuring
the correct response headers are captured and tested against
- Improved stability by using request interception and matching,
preventing debounce issues in the tests.
2024-10-28 17:25:05 +09:00
Cathy Sarisky
967cf23091
🐛 Fixed search state bug & missing last result (#21417)
closes #21343 

This fixes an issue in sodo-search where early results (for example,
matching the first letter typed in the search box) would get "stuck" in
the display, due to failure to update state (or actually, lacking
state).

Converted PostItems to a component, and gave paginatedPosts state.

I also fixed an undocumented bug where the last search result didn't
appear, due to an error in with slice's register.
2024-10-28 12:50:15 +07:00
renovate[bot]
9f1945cb4d Update dependency react-select to v5.8.2 2024-10-28 00:12:27 +00:00
Daniël van der Winden
6b7932ad9e
Improved hover styling for list items in Settings (#21387)
fixes
https://linear.app/ghost/issue/DES-804/implement-new-hover-styling-for-table-rows-and-lists-in-settings

This adds new hover styling for list items in Recommendations,
Newsletter and Integrations settings.

---------

Co-authored-by: Fabien 'egg' O'Carroll <fabien@allou.is>
2024-10-26 09:00:14 +02:00
Fabien O'Carroll
76d4ef27c4 Bumbed sodo-search to 1.5.0 2024-10-25 12:35:44 +01:00
Fabien O'Carroll
18a52004e3 Fixed yarn ship for sodo-search
Previously we ran `git status` on the whole repo, and then would continue with
the shipping process regardless of the outcome.
2024-10-25 12:35:44 +01:00
Fabien 'egg' O'Carroll
c23cca8739
Bumbed Portal to 2.46.0
This includes the new TRL lang support!
2024-10-25 10:34:24 +00:00
Cathy Sarisky
847bd2a98c
🎨 Supported RTL languages in Portal
Portal will now detect if the language locale is a RTL
language and update it's rendering to accommodate!
2024-10-25 16:19:19 +07:00
Peter Zimon
e514b24696
Add Inter font to the list of available custom fonts (#21409)
DES-910

Inter is a font that we make available to users. This commit adds it to
the list of available fonts in the design settings.
2024-10-25 08:59:44 +00:00
Mithelan Devanandan
96e75ac0e3
Handled missing user cover image
closes https://github.com/TryGhost/Ghost/issues/21350

Without this we would attempt to render load the url `null`
2024-10-25 15:28:12 +07:00
renovate[bot]
8b1b7ca666 Update dependency @uiw/react-codemirror to v4.23.6 2024-10-25 05:31:37 +00:00
Aileen Booker
7b8a68f56e Fixed Tailwind not applying styles for custom fonts dropdown
ref 154b839a8d

The changes done with 154b839a8d  look like a good improvement because it removes the need of managing font names in two places, but Tailwind does not agree. Classes are only applied when Tailwind knows them beforehand.
2024-10-25 01:19:19 -04:00
Aileen Booker
e6d63e0863 Fixed custom fonts not styled in select dropdown 2024-10-24 23:50:34 -04:00
Chris Raible
b44ad06015
Fixed browser tests yielding a false passing result in CI (#21401)
no issue

- Browser tests in CI were yielding a passing result even if one or more
tests failed (including retries).
- The `yarn dev` command that triggers the browser tests in CI was
catching any errors and exiting with code 0, resulting in a  in CI.
- This commit changes `yarn dev` to exit with code 1 if the browser
tests fail, so that CI will correctly fail if any of the browser tests
fail.
2024-10-24 17:22:37 -07:00
Chris Raible
af0f26c75f
Added Dev Container setup (#21279)
no issue

- Dev Containers let you work on Ghost in a consistent, isolated
environment with all the necessary development dependencies
pre-installed. VSCode (or Cursor) can effectively run _inside_ the
container, providing a local quality development environment while
working in a well-defined, isolated environment.
- For now the default setup only works with "Clone repository in
Container Volume" or "Clone PR in Container Volume" — this allows for a
super quick and simple setup. We can also introduce another
configuration to allow opening an existing local checkout in a Dev
Container, but that's not quite ready yet.
- This PR also added the `yarn clean:hard` command which: deletes all
node_modules, cleans the yarn cache, and cleans the NX cache. This will
be necessary for opening a local checkout in a Dev Container.
- To learn more about Dev Containers, read this guide from VSCode:
https://code.visualstudio.com/docs/devcontainers/containers#_personalizing-with-dotfile-repositories

---------

Co-authored-by: Joe Grigg <joe@ghost.org>
Co-authored-by: Steve Larson <9larsons@gmail.com>
2024-10-24 11:15:08 -07:00
Fabien 'egg' O'Carroll
3f9fd2ad3f
Removed flaky playwright tests (#21397)
refs INC-116

These tests are causing random failures on CI and stopping us from
merging PRs and creating releases. The aim is to unblock us and then
bring them back
2024-10-24 23:59:54 +07:00
Sanne de Vries
4a5c8000bf
Fixed spacing issue with signup terms in Portal (#21390)
REF DES-907
2024-10-24 11:58:00 +00:00
Aileen Booker
c1ce322e86
Custom fonts (#21337)
- Adding custom fonts for themes behind a feature flag
- Introduces new `@tryghost/custom-fonts` module to manage custom fonts
- UI updates for Branding and Theme settings

---------

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
Co-authored-by: Sodbileg Gansukh <sodbileg.gansukh@gmail.com>
Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
Co-authored-by: Sanne de Vries <sannedv@protonmail.com>
Co-authored-by: Daniël van der Winden <danielvanderwinden@ghost.org>
2024-10-24 07:43:08 -04:00
Ronald Langeveld
96239d31a6
Added Comments Sorting UI (#21375)
ref PLG-220

- Added UI for Comments Sorting on the Comments UI App.

Co-authored-by: Sanne de Vries <65487235+sanne-san@users.noreply.github.com>
2024-10-24 19:01:14 +09:00
Ronald Langeveld
cd3b1c3935
Bumped Portal to 2.45.1 (#21386)
no issue

Co-authored-by: Sodbileg Gansukh <sodbileg.gansukh@gmail.com>
2024-10-24 04:30:00 +00:00
Djordje Vlaisavljevic
880c88a184 Bumped admin-x-activitypub package
no ref
2024-10-23 19:44:40 +01:00
Djordje Vlaisavljevic
ba0c0439ab Made clicking users and posts on your profile bring up drawer view
ref https://linear.app/ghost/issue/AP-510/clicking-on-following-and-followers-users-should-open-the-drawer-on, https://linear.app/ghost/issue/AP-511/clicking-on-items-in-posts-and-liked-tabs-of-your-profile-should-open
2024-10-23 19:44:40 +01:00
Djordje Vlaisavljevic
79439b80c1 Made links inside posts look nicer
ref https://linear.app/ghost/issue/AP-513/show-nicer-links-in-posts
2024-10-23 19:44:40 +01:00
Djordje Vlaisavljevic
45df4bf860 Added ReplyBox to Articles viewed in drawer view
ref https://linear.app/ghost/issue/AP-514/show-replybox-when-article-is-opened-in-drawer
2024-10-23 19:44:40 +01:00
Michael Barrett
3d430b453f
Opened follow notifications in profile viewer in admin-x-activitypub (#21384)
refs
[#479](https://linear.app/ghost/issue/AP-479/open-profile-viewer-when-clicking-follow-notifications)

Clicking on a follow notification will now open the profile viewer with
details of the profile of the user that followed you

---------

Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2024-10-23 14:26:31 +01:00
Daniel Lockyer
23cff56961 Removed unused vite-plugin-commonjs dependency 2024-10-23 13:43:53 +02:00
Sodbileg Gansukh
c11c516e14
Made unsubscribe from all button sticky on scroll (#21381)
ref DES-785
2024-10-23 19:07:29 +08:00
Michael Barrett
1b468f333b
Added buttons to show more data on profile in admin-x-activitypub (#21373)
no refs
2024-10-22 21:29:46 +01:00
Djordje Vlaisavljevic
26133095ea Added excerpt to Ghost posts
ref https://linear.app/ghost/issue/AP-124/view-full-article
2024-10-22 21:02:42 +01:00
Djordje Vlaisavljevic
773ce016b0 Made Following button disabled
ref https://linear.app/ghost/issue/AP-501/updated-suggested-users
2024-10-22 21:02:42 +01:00
Djordje Vlaisavljevic
36d15a4b40 Updated suggested users list
ref https://linear.app/ghost/issue/AP-501/updated-suggested-users
2024-10-22 21:02:42 +01:00
Michael Barrett
63afb15356
Added button to show more followers on profile in admin-x-activitypub (#21371)
no refs
2024-10-22 20:56:14 +01:00
Michael Barrett
e9914d8fe5
Fixed followers list on profile in admin-x-activitypub app (#21370)
refs
[AP-489](https://linear.app/ghost/issue/AP-489/followers-showing-unknown-on-user-profile)

Fixed the followers list on profile in admin-x-activitypub app by
utilising a custom endpoint to fetch a list of expanded followers
seeming though the followers endpoint only returns follower id's
2024-10-22 20:21:12 +01:00
Michael Barrett
b9768f99e9
Added posts to the user profile in admin-x-activitypub (#21369)
refs
[AP-484](https://linear.app/ghost/issue/AP-484/render-posts-on-user-profile)

Added posts to the user profile in admin-x-activitypub
2024-10-22 19:54:05 +01:00
Michael Barrett
febb7f720e
Used attributedTo for the Like activities on the profile page (#21367)
refs
[AP-487](https://linear.app/ghost/issue/AP-487/likes-on-profile-info-displaying-incorrect-actor-info)

Used `attributedTo` for the `Like` activities on the profile page of the
`admin-x-activitypub` app
2024-10-22 17:02:04 +01:00
Michael Barrett
94584489b4
Added graceful handling of suggested profile errors in admin-x-activitypub (#21366)
no refs

Added graceful handling of suggested profile errors in
admin-x-activitypub
2024-10-22 15:49:21 +01:00
Djordje Vlaisavljevic
f214213859 Improved how we handle Like notifications
ref https://linear.app/ghost/issue/AP-480/handle-likes-received-on-replies

- Clicking a notification now opens Article/Note in the drawer
- When the liked post is a reply, the content of the reply is shown in the notification
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
936ff85efb Updated welcome screen copy and link
ref https://forum.ghost.org/t/activitypub-beta-start-here/51780
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
7e7aee92c5 Removed Comment button in drawer view
ref https://linear.app/ghost/issue/AP-498/remove-items-from-post-view-in-sidebar
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
51913a7990 Removed button for resizing the drawer
ref https://linear.app/ghost/issue/AP-498/remove-items-from-post-view-in-sidebar
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
797a34f9e2 Removed static Unfollow button from Following tab
ref https://linear.app/ghost/issue/AP-499/remove-unfollow-buttons-from-following-tab-on-your-profile
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
8846cb9d19 Removed static Delete button from the dropdown
ref https://linear.app/ghost/issue/AP-420/i-can-see-a-delete-action-on-posts-that-are-not-mine
2024-10-22 15:42:25 +01:00
Djordje Vlaisavljevic
ba43678964 Fixed z-index issue
ref https://linear.app/tryghost/issue/AP-464/feed-view-refinements
2024-10-22 15:42:25 +01:00
renovate[bot]
eb85af051f Update tiptap monorepo to v2.9.0 2024-10-22 13:57:37 +00:00
Michael Barrett
e75de41eac
Filtered out non-follower activities on home feed of the admin-x-activitypub app (#21362)
refs
[AP-477](https://linear.app/ghost/issue/AP-477/incorrect-posts-in-home-feed)

Filtered out non-follower activities on home feed of the
`admin-x-activitypub` app
2024-10-22 14:42:43 +01:00
Cathy Sarisky
1ce5dc34ca
🐛 fixed routing error when no recommendations (#21251)
no ref.

The default routing for the portal app is a signup page. When a site has
no recommendations, the result of triggering that page (by following a
link that goes there) is a prompt to sign up, or a notification that one
cannot sign up, if membership is disabled.

This patch adds a "No recommendations" message, which will be shown if a
user follows a recommendations link (#/portal/recommendations) on a site
without recommendations. While we shouldn't end up there very often,
it'll make a lot more sense when it does!
2024-10-22 11:34:44 +01:00
Djordje Vlaisavljevic
7bc510f1c9 Bumped admin-x-activitypub to 0.1.5
no ref
2024-10-22 10:57:58 +01:00
Djordje Vlaisavljevic
6bc933f149 Fixed breakpoint for large screens
ref https://linear.app/tryghost/issue/AP-464/feed-view-refinements
2024-10-22 10:57:58 +01:00
Djordje Vlaisavljevic
5af25e1433 Bump admin-x-activitypub to 0.1.4
no ref
2024-10-22 09:33:40 +01:00