Commit Graph

2050 Commits

Author SHA1 Message Date
renovate[bot]
bec6371e5c Update tiptap monorepo to v2.7.4 2024-09-26 13:01:56 +00:00
renovate[bot]
7b274497d2 Update tiptap monorepo to v2.7.3 2024-09-25 19:46:00 +00:00
Kevin Ansfield
4389140853 Shipped comments-ui@0.18.2 2024-09-25 16:19:58 +01:00
Sanne de Vries
68c3d99f15
Fixed various visual details in Comments UI (#21121)
REF PLG-225
- Updated placeholder text color to work in dark mode
- Fixed spacing for reply input field
- Changed comment input field styles
- Changed left border width from 3px to 1px
- Updated "Expertise" modal typography
- Updated CTA typography
2024-09-25 17:11:53 +02:00
Kevin Ansfield
175d76c831 Shipped comments-ui@0.18.1 2024-09-25 16:02:57 +01:00
Kevin Ansfield
2bca5efcec Added reply button to comment replies
closes https://linear.app/tryghost/issue/PLG-221

- added `toggleParentReplyMode()` to comment component's props so clicking Reply on a reply opens the reply form on the top-level parent to emphasise we only support 1-level deep replies and avoid unexpected nesting
- adjusted conditional so "Reply" button is shown in `<CommentMenu>` when a parent is present (behind labs flag)
- updated `useLabs()` to always return an object so we don't need to add nullish checks everywhere

# Conflicts:
#	apps/comments-ui/test/e2e/actions.test.ts
2024-09-25 15:49:56 +01:00
Kevin Ansfield
a996cde39d Fixed flaky member expertise test
no issue

- a change in browser version/dependency versions/playwright/something else has made this test flaky because the reply editor form loses focus when the expertise field gains focus (this doesn't happen in the browser) meaning when we get to our assertions the elements we care about are missing
- forcing focus back puts us into a known state for our assertions
2024-09-25 15:25:34 +01:00
renovate[bot]
b6e5c0fe68 Update tiptap monorepo to v2.7.2 2024-09-25 12:13:09 +00:00
Djordje Vlaisavljevic
cad5e27de9 Fixed Article feature image not showing up in the feed
ref https://linear.app/tryghost/issue/AP-433/article-feature-image-not-showing-in-the-feed
2024-09-25 10:27:24 +01:00
Daniel Lockyer
0187d6b6a2 Fixed versioning and npm visibility for internal apps
- these apps don't need to be published because they're internal and get
  compiled into Admin
- therefore, we can reset their versions back to 0.0.0 and remove the
  publishConfig block so we don't accidentally publish them
2024-09-25 09:09:06 +02:00
Fabien 'egg' O'Carroll
8a1e71a553
Implemented lazy loading for Inbox & Activities (#21106)
closes https://linear.app/tryghost/issue/AP-421

This makes loading the inbox and activity tabs _way_ faster, so we no
longer have to artificially restrict the amount of data coming in, it
also gives us proper pagination for both views.
2024-09-25 12:20:07 +07:00
Hannah Wolfe
554920d20b
Shipped sodo-search@1.2.0 (#21090)
- This adds i18n support to search
2024-09-24 13:13:27 +01:00
Cathy Sarisky
2a2d7bb9ad
Added i18n support to search - ready for translator work! (#21055)
ref https://github.com/TryGhost/Ghost/issues/16628

This adds translation support to search, which should be the last missing piece of i18n support for Ghost's frontend  🎉
- Translation (t) helper added to sodo-search.
- Ghost head tweaked to include data-locale.
- All (I hope) strings in sodo-search wrapped in the t helper.
- Possibly poor-quality French translation strings added.

---------

Co-authored-by: Vikas Potluri <vikaspotluri123.github@gmail.com>
2024-09-24 12:39:32 +01:00
Fabien O'Carroll
293a57adc7 Added fallback for Avatars when image loading fails
closes https://linear.app/tryghost/issue/AP-422

We found that some images will 403 when hotlinked, showing broken images, we
can catch these errors and render the default instead.
2024-09-24 16:51:01 +07:00
Michael Barrett
1a6da539b3
Updated activitypub app in preparation for pagination (#21054)
refs
[TryGhost/ActivityPub#44](https://github.com/TryGhost/ActivityPub/pull/44)

To support pagination in the activitypub app, the following changes have
been made:

- Move filtering and sorting of activities to the server
- Refactor how comments are processed (comments are now returned as part
of the activity)
- Refactor how replies to own activities are processed in the activities
tab (removed object map)
2024-09-24 10:46:56 +01:00
Kevin Ansfield
eb3824383b Shipped comments-ui@0.18.0
no issue

- general styling and design updates
2024-09-24 10:46:23 +01:00
Sanne de Vries
d789b7efbf
Updated comment report modal (#21084)
REF PLG-226
- Changed title copy from "You want to report this comment?" to "Report
this comment?"
- Changed button copy from "Report this comment" to "Report"
- Updated styles to be more responsive
2024-09-24 11:13:22 +02:00
Sag
4dc4b19b09
Released Portal v2.43.2 (#21082)
ref https://github.com/TryGhost/Ghost/pull/21042
2024-09-24 07:49:23 +00:00
renovate[bot]
355793ebd1 Update dependency tailwindcss to v3.4.13 2024-09-24 08:59:06 +02:00
Djordje Vlaisavljevic
f1553c385d Added break-all to links inside notes to avoid overflows
ref https://linear.app/tryghost/issue/AP-412/need-break-all-for-long-strings-in-replies
2024-09-23 21:59:18 +01:00
Djordje Vlaisavljevic
281f497606 Added formatting for numbers in Tab counters and FeedItem stat counters
ref https://linear.app/tryghost/issue/AP-425/use-formatted-numbers-everywhere
2024-09-23 21:59:18 +01:00
Djordje Vlaisavljevic
b7ef6ef521 Added more flexible layout for profile attachments
ref https://linear.app/tryghost/issue/AP-305/profile-viewer-component-that-can-render-activitypub-actor-data
2024-09-23 21:59:18 +01:00
Djordje Vlaisavljevic
2ab618709a Linked timestamps to original post URLs for easier navigation
ref https://linear.app/tryghost/issue/AP-408/add-link-to-original-post-location-in-ui-for-better-navigation
2024-09-23 21:59:18 +01:00
Sag
577362aabf
🐛 Fixed navigations links for Ghost sites hosted on a subdirectory (#21071)
ref https://linear.app/tryghost/issue/ENG-1570

- for a Ghost site hosted on a subdirectory, e.g. `/blog/`, adding a
navigation link to `/blog/page/` was being re-written as `/page/` in Admin settings
- fixed the underlying `formatUrl` utility function and added unit tests
2024-09-23 18:37:05 +02:00
renovate[bot]
894a961f9e Update dependency tailwindcss to v3.4.12 2024-09-23 09:13:59 +02:00
renovate[bot]
6d80063539 Update dependency @uiw/react-codemirror to v4.23.3 2024-09-23 06:34:27 +00:00
Fabien O'Carroll
2681e526f6 Fixed type errors for admin-x-activitypub
We didn't catch these because ci type checks weren't running, but they are now!
2024-09-21 10:20:20 +07:00
Fabien O'Carroll
92c17ade34 Ensured types are checked as part of unit tests
Otherwise we get green ticks on a PR and then the build fails on main
2024-09-21 10:20:20 +07:00
Djordje Vlaisavljevic
674227941e Added nicer focus state so text and button don't clash
ref https://linear.app/tryghost/issue/AP-307/component-for-replying-to-objects-in-the-inboxfeed
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
ae50afe307 Fixed linting issue
ref https://linear.app/tryghost/issue/AP-307/component-for-replying-to-objects-in-the-inboxfeed
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
9bd2b26226 Fixed avatars appearing stretched in replies
ref https://linear.app/tryghost/issue/AP-374/add-design-for-replies
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
9b2228708a Improved feed item layout and typography
ref https://linear.app/tryghost/issue/AP-282/render-notes-in-the-frontend
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
6d873600f0 Simplified drawer design
ref https://linear.app/tryghost/issue/AP-282/render-notes-in-the-frontend
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
4aa5e4f091 Added Just now as a timestamp
ref https://linear.app/tryghost/issue/AP-282/render-notes-in-the-frontend
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
0cf5d11bf2 Fixed bugs with textarea focus on disabled states 2024-09-21 09:39:42 +07:00
Fabien O'Carroll
bd2a0369ed Added new reply to the comments state
ref https://linear.app/tryghost/issue/AP-395

This is a stopgap solution, because currently we don't have any of our own
reply data in the frontend, so this will show the new reply, but it won't be
present on page reload. Should be enough for a demo video, but I think we need
to either fetch our outbox, or make a new replies endpoint and fetch from there
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
8cc3646c29 Fixed post reply button
ref b9d02f8051beb9120a282bcbf0f70440c2a3c39e

Because we disabled the button on blue of the textarea, it was being disabled
before the click would be handled! Using the mousedown event means that our
event gets handled before the blur.
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
78bb1461a8 Focused reply input when clicking comment button in drawer
ref https://linear.app/tryghost/issue/AP-396

We need to use a number instead of boolean here so that the state is always
refreshed, otherwise we can run into issues where we set `focused` to true but
there's no rerender because it was previously set to true, but unfocused
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
6a3632e457 Updated button based on focus state
ref https://linear.app/tryghost/issue/AP-398

This adds an internal focus state so that we can render the reply box different
based on whether or not the textarea is focused!
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
403cac4c42 Focused reply box when clicking comment button on feed item
ref https://linear.app/tryghost/issue/AP-396

I think it's nicer API to pass in a focused property, rather than an
element ref, but I don't have much experience here, so it might be the
wrong approach!
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
3e6b3bda8a Populated reply box avatar
ref https://linear.app/tryghost/issue/AP-397

I think we're gonna want to pass this data into the component long
term, but this will do for now, I'm going to look at cleaning up these
components in my next B week
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
e8e44a0312 Added toast notification for successful reply
ref https://linear.app/tryghost/issue/AP-395
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
5ff7dce5a2 Emptied reply textarea after reply success
ref https://linear.app/tryghost/issue/AP-395

I've also set the disabled prop here too, not sure if necessary
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
82328708ac Set loading state of the post reply button
ref https://linear.app/tryghost/issue/AP-394

I've also passed the disabled prop, but not sure if it's necessary
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
f60f22be2d Added placeholder text to AP reply box
ref https://linear.app/tryghost/issue/AP-399/add-reply-box-placeholder
2024-09-21 09:39:42 +07:00
Fabien O'Carroll
ea9fcd8f2a Initial wire up of reply box to the API
ref https://linear.app/tryghost/issue/AP-287
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
b6c5cca890 Updated AP reply box design
ref https://linear.app/tryghost/issue/AP-307/component-for-replying-to-objects-in-the-inboxfeed
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
6df9ad6537 Added Copy link button to feed items
ref https://linear.app/tryghost/issue/AP-308/ui-for-deleting-replies
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
6708787731 Added static reply box for ActivityPub content
ref https://linear.app/tryghost/issue/AP-307/component-for-replying-to-objects-in-the-inboxfeed
2024-09-21 09:39:42 +07:00
Djordje Vlaisavljevic
1680817da2 Added More menu for feed items and static Delete menu item
ref https://linear.app/tryghost/issue/AP-308/ui-for-deleting-replies

- Added `dotdotdot` icon
- Added optional `destructive` prop to `Menu` items
2024-09-21 09:39:42 +07:00
renovate[bot]
78ad06226a Update dependency react-select to v5.8.1 2024-09-19 15:41:43 +00:00
renovate[bot]
46aa2a7ce7
Update Koenig packages (#21048)
Ref: https://linear.app/tryghost/issue/ENG-904/bookmark-card-hot-linking-favicons

When a bookmark is added(pasting a URL) into the editor we’re immediately hitting the oembed endpoint twice.
The editor shouldn’t be firing a second bookmark oembed request when it’s already been given all the bookmark data from the first request.
Details: https://linear.app/tryghost/issue/ENG-904/bookmark-card-hot-linking-favicons#comment-852d53dc
2024-09-19 18:19:36 +05:30
Cathy Sarisky
6b84d9a900
🎨 wrapped missing i18n strings in portal (#21042)
ref https://forum.ghost.org/t/how-to-translate-the-date-intervals-year-and-month-in-portal-js/25599

- Added sneaky missing translation wrapping, notably the elusive year and month strings. Also "Change Plan" and "Choose Plan" for upgrade situations.
- Finding and adding these missing wrappings is critical to making Ghost's i18n usable for customers using other languages
2024-09-19 13:30:45 +01:00
Michael Barrett
a886d22437
Updated activities tab to use the activities endpoint in the activitypub app (#21037)
refs
[AP-377](https://linear.app/tryghost/issue/AP-377/inbox-returning-33mb-of-data),
[TryGhost/ActivityPub#43](https://github.com/TryGhost/ActivityPub/pull/43)

Updated activities tab to use the activities endpoint in the activitypub
app
2024-09-19 10:45:54 +01:00
Sanne de Vries
7d97c4659d
Improved comments UI styles (#20957)
REF https://linear.app/tryghost/issue/PLG-225

- Reduced overall spacing and font-sizes for it to be more compact
- Optimised mobile spacing and typography
2024-09-18 12:52:13 +00:00
Michael Barrett
d7ee3b2e42
Updated activitypub app to utilise new activities endpoint (#21025)
refs
[AP-377](https://linear.app/tryghost/issue/AP-377/inbox-returning-33mb-of-data),
[TryGhost/ActivityPub#40](https://github.com/TryGhost/ActivityPub/pull/40)

Updated activitypub app to utilise new activities endpoint which returns
a paginated list of activities
2024-09-18 10:33:52 +01:00
Sag
ab47dc719d
Released Portal v2.43.1 (#21017)
no issue
2024-09-16 20:23:59 +00:00
Michael Barrett
4ace5104a6
Added toggle sidebar size button to article modal in admin-x-activitypub (#21015)
no refs

Added a button to toggle sidebar size from the article modal in the
admin-x-activitypub app
2024-09-16 16:50:22 +01:00
Michael Barrett
12710eaefa
Added open reply notification in sidebar functionality (#21014)
no refs

Added logic to open the notification in the sidebar when the
notification is clicked if it is a reply notification
2024-09-16 16:49:52 +01:00
Sag
430fbdb987
🐛 Fixed member filtering for "Unsubscribed from newsletter" filters (#20926)
ref https://linear.app/tryghost/issue/ENG-1466
ref https://linear.app/tryghost/issue/ENG-1484

- Previously, filtering members with multiple "Unsubscribed from
newsletter x" led to no filtering at all, all members were returned
- This was caused by a bug in NQL, that is fixed in version 0.12.5, cf.
[commit](dd18d1d6ca)
- We're also removing the safeguard in the product around bulk deletion
when multiple newsletter filters are in use, as the root problem has
been fixed
2024-09-16 11:16:49 +02:00
Daniel Lockyer
c29dc48370 Updated version handling in Admin-X Settings
fix https://linear.app/tryghost/issue/DEV-22/add-support-to-admin-for-parsing-ghost-git-version

- we need to be handle the output given by `git describe`, to account
  for upcoming changes to our versioning
- this commit allows Admin-X Settings to parse these strings, and adds
  tests to check for this
2024-09-16 09:57:09 +02:00
Fabien 'egg' O'Carroll
a44274d7f3
Fixed hostname check for reply notificiations (#21002)
In order to show replies in our notifications, we loop through all the
replies in our inbox, and filter them by the ones replying to an account
on our domain, however the check we were doing was on the admin domain -
which is sometimes the same as the frontend domain, but not always. This
fixes the check so that we check the frontend domain, which is the one
used by activitypub.
2024-09-13 16:54:31 +07:00
Fabien 'egg' O'Carroll
9e4704a75f
Fixed the rendering of object attachments (#21001)
Pulled out the logic of finding the attachment(s) into a shared
function, which will only return an array if there are multiple
attachments, otherwise either null or an object will be returned.

This fixes an issue where the code assumed that an array meant
we have multiple attachments
2024-09-13 16:14:23 +07:00
Fabien 'egg' O'Carroll
c98ff3856e
Used attributedTo over actor when available (#20998)
refs https://linear.app/tryghost/issue/AP-388

The attributedTo property of objects refers to the author of the object,
wheras the actor of an activity refers to the author of the activity -
in the case of a `Create` activity - these are generally the same, but
in the case of an `Announce` they are different, the author refers to
the "announcer" and the attributedTo the author of the content! This is
a quick patch to use the true author when it's available, and in a
format we can handle.
2024-09-13 05:54:25 +00:00
Djordje Vlaisavljevic
eb796e0785 Fixed nested Replies line placement
ref https://linear.app/tryghost/issue/AP-374/add-design-for-replies
2024-09-12 16:35:50 +01:00
Djordje Vlaisavljevic
a087e329ed
Updated ActivityPub Feed and Replies design (#20992)
- Added activity icon for Replies
- Updated Replies design
- Updated hard-coded Profile values to more realistic ones
- Renamed ActivityPub nav item and moved it to the top of the navbar
- Added a check for post attachments
2024-09-12 16:03:49 +01:00
renovate[bot]
6cf3dcd5f5 Update dependency @tailwindcss/forms to v0.5.9 2024-09-12 12:10:08 +02:00
Ronald Langeveld
6d3317fcfc
Added feature flagging system for Comments UI (#20984)
ref PLG-229

- Previously we had no way of using Ghost labs flags in Comments UI.
- With this change, we now get Labs data from the existing content
  settings endpoint.
- Additionally, we have a `useLabs` hook that can be accessed from
  anywhere in the App to put those awesome new features behind a flag
for staging
- And we can pass labs params to the initialiser for testing.

For more details: https://ghost.slack.com/archives/C06TQR9SHSM/p1726133527960489
2024-09-12 18:36:37 +09:00
Michael Barrett
6704705c86
Added comment navigation in the admin-x-activitypub app (#20987)
refs
[AP-279](https://linear.app/tryghost/issue/AP-279/handle-incoming-replies)

Implemented a basic navigation stack for comments in the
admin-x-activitypub app. This allows users to navigate between comments.
2024-09-12 10:23:27 +01:00
Michael Barrett
2fc6634573
Added nested comment rendering in admin-x-activitypub app (#20980)
refs
[AP-279](https://linear.app/tryghost/issue/AP-279/handle-incoming-replies)

Added nested comment rendering in admin-x-activitypub app so that
replies to posts and replies to replies can be viewed by the user
2024-09-12 08:20:39 +01:00
Ronald Langeveld
ba74785250
Added comment improvements feature flag (#20986)
ref PLG-229

- Added `commentImprovements` feature flag toggle
2024-09-12 14:49:22 +09:00
renovate[bot]
cf8691d07f Update dependency tailwindcss to v3.4.11 2024-09-12 07:38:09 +02:00
Michael Barrett
2cb9cf8b8b
Added comments to activities in the admin-x-activitypub app (#20958)
refs
[AP-279](https://linear.app/tryghost/issue/AP-279/handle-incoming-replies)

Wired up the comments to the activities in the admin-x-activitypub app
so that comments (replies) can be viewed by the user
2024-09-11 17:44:12 +01:00
Michael Barrett
cbacea418f
Added reply handling to the notifications tab of the admin-x-activitypub app (#20956)
refs
[AP-279](https://linear.app/tryghost/issue/AP-279/handle-incoming-replies)

Added reply handling to the notifications tab of the admin-x-activitypub
app so that replies to posts can be viewed by the user
2024-09-11 17:36:02 +01:00
Peter Zimon
23ffdaf860
Added help pages to Portal links (#20974)
DES-777

- "Not receiving emails" and "Disabled emails" help pages are not
possible to access directly which makes communication to members hard
2024-09-11 13:19:16 +00:00
renovate[bot]
af244477ac Update dependency @tailwindcss/forms to v0.5.8 2024-09-11 12:05:22 +02:00
renovate[bot]
59a5a81d3b Update dependency @uiw/react-codemirror to v4.23.2 2024-09-10 20:19:47 +00:00
Kevin Ansfield
174b13982a
Released signup-form 0.1.6 (#20959)
ref https://linear.app/tryghost/issue/ONC-314

- releasing new code for integrity token passthrough
2024-09-10 15:34:00 +01:00
Peter Zimon
5be65b7e21
Fixed missing initials on staff invites' avatars (#20948)
DES-775

- Initials were missing on avatars in the invite list of Settings/Staff
2024-09-09 13:56:29 +00:00
renovate[bot]
c96744156e
Update dependency @playwright/test to v1.46.1 (#20866) 2024-09-06 10:35:50 -07:00
Fabien O'Carroll
7ee15044e9 Fixed animation of love heart bump
Resetting the isClicked state immediately would cancel the animation
2024-09-06 21:07:13 +07:00
Fabien O'Carroll
2749296fea Invalidated queries when liking and unliking objects
This gives us some live-ness in the frontend, so that when you unlike an item
in the liked view - it will be removed from the list, and the count will be
updated.
2024-09-06 21:07:13 +07:00
Fabien O'Carroll
bd66efa70a Added support for listing likes
We can reuse the FeedItem here, and I've defaulted to the 'feed' layout - I'm
not 100% sure if that's correct.

The liked collection doesn't have `liked` properties, and it's a little tricky
to add on the backend with how fedify works - so for now we hardcode the
`liked` property to true, which we can do because we're rendering all of the
liked content!
2024-09-06 21:07:13 +07:00
Fabien O'Carroll
c0386b6c69 Refactored like and unlike API requests
We don't want our components littered with fetch calls, as it makes it
difficult to test. Instead we move our http api code into the ActivityPubAPI,
giving us a central place for adding authentication and tests in the future.

We also make sure that the components use a react query wrapped call - so that
we can take advantage of the query invalidation.
2024-09-06 21:07:13 +07:00
Chris Raible
07932325f4
Added type checks to admin-x-design-system unit tests (#20863)
no issue

- Previously we weren't running the type checks in the
`admin-x-design-system` in CI, because we only run `yarn test:unit` in
CI. This adds the typechecks to the `yarn test:unit` command so CI will
fail if the type checks fail.
2024-09-05 16:15:15 -07:00
renovate[bot]
e3db122bc5 Update dependency @uiw/react-codemirror to v4.23.1 2024-09-05 20:51:29 +00:00
Djordje Vlaisavljevic
3f797d5882
Connected outgoing Like API(#20931)
ref https://linear.app/tryghost/issue/AP-286/outgoing-like-activities
2024-09-05 19:57:00 +01:00
Djordje Vlaisavljevic
21fb57eabd
Refactored and reorganized FeedItem and Profile (#20919)
- Moved engagement stats to a reusable component
- Moved functions from Profile to a separate file
- Fixed Following on Your Profile and moved them from
modals to tabs
2024-09-05 13:07:01 +01:00
renovate[bot]
67291056b0
Update Koenig packages (#20911)
Ref: https://linear.app/tryghost/issue/ENG-1435/threads-embeds-contain-broken-images

Fixed broken Thumbnails and Icons
2024-09-03 16:13:13 +00:00
Kevin Ansfield
1bc34f7227 Added Tips & Donations one-off payments
no issue

Give your audience a simple way to support your work with one-time payments, no membership required.

- cleaned up `tipsAndDonations` labs flag
2024-09-03 16:00:48 +01:00
Daniel Lockyer
f96313e9c2 Enabled treeshaking for validator in AdminX design system
ref https://linear.app/tryghost/issue/DEV-20/faster-builds

- we can save 75KB by using a tree-shaking import for validator
- import string comes from validator docs
- also adds validator import, which was missing for this package
2024-09-03 10:44:14 +02:00
Daniel Lockyer
7db1cb4f14 Fixed treeshaking for lodash in AdminX apps
refs https://dev.to/pffigueiredo/making-lodash-tree-shakable-3h27
ref https://linear.app/tryghost/issue/DEV-20/faster-builds

- by importing `lodash`, we import a huge 500KB file into all AdminX
  apps
- we only use one function from this, so we can switch to `lodash-es`
  and Vite will treeshake the rest out of the final compiled JS
- this saves 500KB in each AdminX app and improves compile times
2024-09-03 10:18:04 +02:00
Djordje Vlaisavljevic
3696d4305c Added static design for Replies
ref https://linear.app/tryghost/issue/AP-374/add-design-for-replies
2024-09-02 21:38:32 +01:00
Kevin Ansfield
73d75413a0
🎨 Convert portal links to relative to avoid homepage flash on click (#20896)
closes https://linear.app/tryghost/issue/PLG-190

- often when adding portal links to your own site pages the URLs are added as absolute on the site's homepage due to copy+paste from displayed URLs in Admin
- when clicking absolute portal URLs the homepage is first loaded before the Portal popup is shown resulting in a slower and flashier experience
- added a transform for all local portal URLs on the page when Portal is initialized so links open the Portal popup immediately on the current page
2024-09-02 11:23:12 +00:00
Daniel Lockyer
33dd6b6b49 Removed concurrently from building apps
ref https://linear.app/tryghost/issue/DEV-20/faster-builds

- we added concurrently because, in theory, it should make builds faster
  by utilizing more cores
- however, when combined with Nx, it seems that we are trying to exceed
  the number of cores, which actually makes individual builds slower
- I've removed concurrently from the apps, which should improve the
  build time significantly
2024-09-02 12:06:27 +02:00
Djordje Vlaisavljevic
a3e498106d Added icons to Activity items to make it easier to scan the page
ref https://linear.app/tryghost/issue/AP-283/handle-incoming-likes
2024-09-02 10:43:38 +01:00
Djordje Vlaisavljevic
c260ed5202 Added support for badges to APAvatar
ref https://linear.app/tryghost/issue/AP-283/handle-incoming-likes
2024-09-02 10:43:38 +01:00
Ronald Langeveld
b62baa8b0b
Added sentry to support error on Portal (#20890)
ref PLG-204

- Added a sentry capture so we know when and if the support error
component gets triggered.
2024-09-02 16:58:22 +09:00
Sodbileg Gansukh
d30164df97
Improved publishing flow (#20878)
ref DES-706

* After a user publishes or schedules a post, they are directed to the post list
* If a post is sent as an email, they are directed to the Analytics page
* In both cases, a confirmation modal is shown
* If a post is published, they can share it directly from the confirmation modal
* Added a "Share" button and some additional functions (view, edit, and delete post) to
published posts in post analytics
* Added a manual "Refresh" button to post analytics so that there is
no need to reload the whole app to update the data

---------

Co-authored-by: Sag <guptazy@gmail.com>
2024-08-29 21:17:16 +02:00
Daniel Lockyer
0a6cd75993 Gated NestJS framework behind environment variable
- we added NestJS to Ghost as a way forwards for a new framework within
  Ghost but we haven't added much to it
- requiring all the NestJS code adds about 6-9% to our boot time, so if
  we're not using it, it's just time we're burning for no benefit
- for now, I've gated this behind an env var to prevent it from loading
- we can't use labs flags in the boot process, so I've gone for an env
  var
2024-08-29 12:18:42 +02:00
Kevin Ansfield
0d091992f2 Shipped new Portal version 2024-08-28 17:54:58 +01:00
Sanne de Vries
8ddbf471dd
Updated donation success modal styles (#20859)
REF PLG-152
2024-08-28 15:48:57 +00:00
Kevin Ansfield
c689414497
Added missing translation entries for Portal field placeholders, labels, and errors (#20858)
no issue

- added `t()` around static strings to allow them to be translated
- updated translation files, with context provided in `context.json`
2024-08-28 15:43:03 +00:00
Kevin Ansfield
32edc12cc2 Fixed error closing donation success modal
no issue

- when redirecting from Stripe back to Ghost after making a donation the URL contained a double slash (`//#/portal/...`) which triggered browser security errors when Portal modified the browser history stack when navigating
- the above could prevent the donation success modal from closing
2024-08-28 12:38:14 +01:00
Kevin Ansfield
2b2e5dfeb1 Updated Portal readme with more testing/releasing details 2024-08-28 10:37:04 +01:00
Michael Barrett
59a3a9514b
Added data retrieval for activitypub activities (#20830)
refs
[AP-283](https://linear.app/tryghost/issue/AP-283/handle-incoming-likes)

Added data retrieval for activitypub activities in the acvitiies tab of
the ActivityPub demo
2024-08-28 09:39:01 +01:00
Chris Raible
a79ab03463
Fixed failing type check in admin-x-design-system story (#20838)
no issue

- The type checks for `admin-x-design-system` were failing for me locally for a Storybook story. It looks like we changed the `PopoverPosition` type to use 'start'/'end' rather than 'left'/'right', but this story was still using 'left'. This was causing `yarn test` to fail in the `admin-x-design-system` app.
- This commit updates the story to use 'start' instead of 'left', which allows the type checks to pass.
2024-08-27 17:58:42 -07:00
Steve Larson
962194b595
Bumped Portal (#20837)
no ref
2024-08-27 21:29:40 +00:00
Steve Larson
8a1274517d
🐛 Added integrity token to one click subscribe (#20836)
ref https://linear.app/tryghost/issue/ONC-269

When we added the integrity token to all `send-magic-link` callers in
Portal, we missed one.
2024-08-27 21:17:19 +00:00
Kevin Ansfield
709ee163e3 Bumped Portal
ref https://linear.app/tryghost/issue/PLG-152

- updates tips and donations success states
2024-08-27 19:30:27 +01:00
Kevin Ansfield
f613f42bec Updated donation success states
closes https://linear.app/tryghost/issue/PLG-152

- switched member success to a notification
- updated non-member success modal to include signup and signin links
2024-08-27 19:30:27 +01:00
Sodbileg Gansukh
0cf987ebff
Fixed Radix UI related custom validity error (#20829)
ref DES-755

- a direct child of a form control primitive should be a form element
- for TextField component, a div was the direct child
- this moves the input element to the form control primitive
2024-08-27 18:17:39 +08:00
Steve Larson
d24af3bd50
Bumped Portal (#20826)
ref https://github.com/TryGhost/Ghost/issues/20767
2024-08-26 23:06:27 +00:00
Steve Larson
22fcd21fbb
Fixed Portal honeypot field (#20825)
ref INC-97
ref https://github.com/TryGhost/Ghost/issues/20767
- finishes wiring up the honeypot fied
- updates state handing to properly set the value
- maintains honeypot field across page changes within portal

There isn't a single previous commit to point to here since they didn't
get squashed. We added a honeypot field to help mitigate bot signup
activity. It's hidden, and if filled out, we can anticipate it's a bot.
Right now this just logs to Ghost while we collect data.
2024-08-26 22:51:57 +00:00
Peter Zimon
65b6978482 Updated layout switch 2024-08-26 14:02:47 +02:00
Peter Zimon
6530cd535e Added basic inbox view 2024-08-26 14:02:47 +02:00
Djordje Vlaisavljevic
8cbdecfc7f Added static design for Search page
ref https://linear.app/tryghost/issue/AP-352/search-for-mastodon-usernames-in-ghost-admin
2024-08-26 14:02:47 +02:00
Djordje Vlaisavljevic
6171a417de Updated design of Notes in the feed and in the drawer
ref https://linear.app/tryghost/issue/AP-282/render-notes-in-the-frontend
2024-08-26 14:02:47 +02:00
Djordje Vlaisavljevic
5b70fc6b1c Added design for Profile component
ref https://linear.app/tryghost/issue/AP-305/profile-viewer-component-that-can-render-activitypub-actor-data
2024-08-26 14:02:47 +02:00
Djordje Vlaisavljevic
366d683d7b Fixed time not being converted properly
ref https://linear.app/tryghost/issue/AP-131/show-nice-relative-timestamps
2024-08-26 14:02:47 +02:00
renovate[bot]
91e8aa1271 Update dependency jsdom to v24.1.3 2024-08-26 09:44:19 +02:00
Sam Lord
0a9d2fadba Added honeypot field to prevent bot signup/signin
ref KTLO-1
Should prevent untargeted attacks using headless browser bots.
2024-08-22 22:32:04 +01:00
Sam Lord
ebc87002ce Added integrity token to signup-form package
ref KTLO-1
2024-08-22 22:23:16 +01:00
Sam Lord
ef4f79370f Added support in Portal for integrity tokens on magic link API
ref KTLO-1
These tokens should prevent untargeted attacks, as the magic link
endpoint needs a token that was generated by the server, similar to a
CSRF token, but without needing any server-side state, or a cookie to
be set for unauthenticated users.
2024-08-22 22:23:16 +01:00
Ronald Langeveld
ad3751bfa6
Added i18n support to tips and donations on portal (#20812)
ref PLG-159

- wrapped strings inside the translate function in Portal
- added new strings to i18n files
2024-08-22 15:28:08 +07:00
Princi Vershwal
309cb37cc6
Updated nql package (#20811)
Ref [ONC-216](https://linear.app/tryghost/issue/ONC-216/improve-the-performance-of-the-membersevents-aggregated-click-event)

Needed changes in nql package for this task.
2024-08-22 07:55:14 +00:00
Kevin Ansfield
f08e4d4728 Hid tips and donation settings when Stripe is disabled
closes https://linear.app/tryghost/issue/PLG-178

- updated conditional to ensure we're ready for GA by showing when Stripe is enabled rather than only when the feature flag is enabled
2024-08-21 16:12:00 +01:00
Kevin Ansfield
27123844dc Added donation notification toggle to user settings
closes https://linear.app/tryghost/issue/PLG-155

- added checkbox when "stripe enabled" check is true
2024-08-20 16:00:32 +01:00
Ghost CI
5effca4c5e Merged v5.89.5 into main 2024-08-20 14:33:31 +00:00
Steve Larson
dac2561252
🔒 Added uuid verification to member endpoints not requiring a session
ref https://linear.app/tryghost/issue/ENG-1364
ref https://linear.app/tryghost/issue/ENG-1464

- credits to https://github.com/1337Nerd
- added a hashed value to endpoints that do not require a member sign in in order to verify the source of the link and resulting request
- added redirect to sign in page when trying to access newsletter
management
2024-08-20 16:24:02 +02:00
Kevin Ansfield
0b3f7d7705 Updated tips & donations default suggested value
closes https://linear.app/tryghost/issue/PLG-156

- updated all default fixtures to use `500` ($5) as the default suggested donation value
- added migration to update existing settings using the old default of `0` to `500`
  - this is fine to apply because the feature hasn't been released so there's no explicit `0` values in the wild
- added an acceptance test for the adminx-settings tips & donations section
2024-08-20 12:07:51 +01:00
renovate[bot]
26724d8705 Pin dependencies 2024-08-19 16:53:43 +02:00
Sodbileg Gansukh
2f76847e00
Migrated the design system to Radix (#20244)
ref DES-331
2024-08-19 20:37:33 +08:00
renovate[bot]
4462b20e01 Update dependency tailwindcss to v3.4.10 2024-08-19 08:38:24 +02:00
renovate[bot]
dc7abe4712 Update sentry-javascript monorepo to v7.119.0 2024-08-15 15:11:53 +02:00
Peter Zimon
108c9f60c8
Add reusable UI components to ActivityPub (#20758)
AP-348

ATM the top navigation and the article drawer components are missing for
ActivityPub UI. They are both part of the next phase so we need to add
them.
2024-08-15 12:28:08 +02:00
Sodbileg Gansukh
5ee67892dc
Improved publishing flow end screen (#20701)
ref DES-594

- this update introduces some improvements to the publishing flow end screen
- everything's behind a feature flag — publishFlowEndScreen
2024-08-15 18:22:32 +08:00
Djordje Vlaisavljevic
04b600b0b8 Refactored renderAttachment to keep it DRY
ref https://linear.app/tryghost/issue/MOM-282/render-notes-in-the-frontend
2024-08-14 16:30:14 +01:00
Djordje Vlaisavljevic
ee5a49077d Made hover state on links inside Notes easier to see
ref https://linear.app/tryghost/issue/MOM-282/render-notes-in-the-frontend
2024-08-14 16:30:14 +01:00
Djordje Vlaisavljevic
6ae20a8d32 Added relative timestamps to feed objects
ref https://linear.app/tryghost/issue/AP-131/show-nice-relative-timestamps
2024-08-14 16:30:14 +01:00
renovate[bot]
4d133defa0 Update tiptap monorepo to v2.6.1 2024-08-13 11:14:48 +00:00
renovate[bot]
808ed29c27 Update tiptap monorepo to v2.6.0 2024-08-13 09:44:26 +00:00
renovate[bot]
fa9bc4d446 Update Koenig packages 2024-08-12 22:00:16 +01:00
Kevin Ansfield
a86f9dbdda Cleaned up internalLinking labs flag
closes https://linear.app/tryghost/issue/PLG-15

- removed `internalLinking` GA labs flag
- renamed search providers to `flex` and `basic`
  - keeps old search provider around as it can handle non-English languages unlike the faster flex provider
- updated `search` service to switch from `flex` to `basic` when the site's locale is not english
- bumped Koenig packages to switch from a feature flag for toggling internal linking features to the presence of the `searchLinks` function in card config
- updated tests to correctly switch between flex and basic providers in respective suites
2024-08-12 13:08:29 +01:00
Ronald Langeveld
85aed302c1
Bumped Portal to 2.38.0 (#20733)
ref ONC-225

Bumped it a minor since it contains breaking changes.
2024-08-12 14:41:39 +07:00
Ronald Langeveld
da691bf0d7
🐛 Fixed newsletter button not hidden in Portal (#20732)
ref ONC-225

- Wires up the `editor_default_email_recipients` key to the settings
public / content api endpoint.
- This key is then wired up to Portal to determine whether it's hiding or
showing the Member subscribe toggle
2024-08-12 06:00:25 +00:00
renovate[bot]
eb7024da34 Update testing-library monorepo 2024-08-07 09:59:15 +02:00
renovate[bot]
445a2b7008 Update tiptap monorepo to v2.5.9 2024-08-06 16:46:10 +00:00
Fabien 'egg' O'Carroll
978ccc8483
Updated types for attributedTo property of Objects (#20715)
ref https://github.com/TryGhost/Ghost/commit/5376bd52c7afb91b

This should have been included in the referenced commit
2024-08-05 11:20:34 +00:00
Fabien 'egg' O'Carroll
5376bd52c7
Updated design of announced Notes and Notes containing links
- Announced (reposted) Notes show information about both the Actor that
created the Note, and the Actor that Announced it
- The content of notes now keeps the formatting and links are clickable
and shown in different color

Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2024-08-05 11:07:03 +00:00
Djordje Vlaisavljevic
68d8f19d5a Revert "Updated design of announced Notes and Notes containing links (#20703)"
This reverts commit aca4626c72.
2024-08-01 17:32:25 +02:00
Djordje Vlaisavljevic
aca4626c72
Updated design of announced Notes and Notes containing links (#20703)
- Announced (reposted) Notes show information about both the Actor that
created the Note, and the Actor that Announced it
- The content of notes now keeps the formatting and links are clickable
and shown in different color
2024-08-01 15:35:46 +02:00
Daniël van der Winden
42299abf82
Added styling for accent colours on Tiers and Offers (#20696)
fixes
https://linear.app/tryghost/issue/DES-81/misleading-hardcoded-tier-preview-title-colors

Tiers and Offers in Admin were shown with hardcoded pink titles. This
changes that. They are now shown with black titles, and only in the preview will they render with the site's accent colour. 

---------

Co-authored-by: Princi Vershwal <vershwal.princi@gmail.com>
2024-08-01 09:46:11 +00:00
Michael Barrett
ffbcb5a69e
Refactored ActivityPub tabs to make tabs more maintainable (#20692)
no refs

Refactorings include:

- Formatting JSX to be more readable
- Filtering activities before rendering
- Fixing invalid inbox empty state HTML (nesting div inside ul)
- Adding initial support for announce activities in the inbox
2024-07-31 09:57:10 +01:00
Michael Barrett
61641bc7c6
Fixed ActivityPub app tabs content (#20690)
no refs

The `Activity` and `Likes` tabs of the AcitivityPub app were not showing
the correct content. This commit fixes that.
2024-07-30 15:23:34 +01:00
Steve Larson
f7a592e761
🐛 Fixed dark mode for standalone html editors in Admin X (#20689)
ref https://linear.app/tryghost/issue/DES-591
- finished wiring up the darkMode prop through the context providers 

The main impact here was that the formatting toolbar was not respecting
the dark mode settings.
2024-07-30 09:18:51 -05:00
Fabien 'egg' O'Carroll
178c98c17f
Fixed handling of single item collections (#20688)
Fedify will not use an array for the `items` key of collections when
there is only a single item, which wasn't being handled in our
activitypub api module.

Now we always return an array so that the components recieve consistent
data.
2024-07-30 17:33:25 +07:00
Djordje Vlaisavljevic
bbec5c0ba6
Added support for displaying different types of Mastodon notes (#20684)
- Added logic for displaying different attachments for Mastodon Notes
(images, audio, video)
- Centered the feed on the screen for better focus and made the Feed
layout the default one
- Moved Following and Followers counters to the new “Profile” tab

---------

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2024-07-30 10:40:10 +01:00
renovate[bot]
f7ec72488a Update tiptap monorepo to v2.5.8 2024-07-30 07:48:45 +00:00
renovate[bot]
8afdc10ec9 Update dependency tailwindcss to v3.4.7 2024-07-30 09:30:41 +02:00
Steve Larson
a109b255f0
🐛 Fixed no redirect on Portal signin when trying to access newsletters (#20683)
ref https://linear.app/tryghost/issue/ENG-1464
- added redirect to sign in page when trying to access newsletter
management

If a user tries to access newsletter management when not logged in,
Portal requires sign in via magic link. This magic link didn't previous
redirect the user back to newsletter management, requiring some extra
clicks.
2024-07-29 15:58:08 +00:00
Daniel Lockyer
103672ef57 🐛 Fixed spurious errors when loading modal before provider
fix https://linear.app/tryghost/issue/SLO-190/error-no-dispatch-method-detected-did-you-embed-your-app-with

- we've spuriously been seeing `No dispatch method detected, did you
  embed your app with NiceModal.Provider` when browsing to a URL that
  loads a modal in Safari
- it looks like DesignSystemProvider (via DesignSystemApp) contains the
  NiceModal.Provider, but this is loaded within the RoutingProvider that
  could trigger a modal to load
- I tried switching around RoutingProvider and DesignSystemApp but many
  other tests failed, so my fix here is to add a NiceModal.Provider to
  wrap the RoutingProvider
- unfortunately, this bug is flaky to occur and I've only been able to
  reproduce it on Safari, so writing a test for this would be very
  tricky
2024-07-29 13:38:05 +02:00
renovate[bot]
184ef6274a Update dependency tailwindcss to v3.4.6 2024-07-29 12:35:12 +02:00
Sanne de Vries
14cabf97df
Updated tips and donations copy in editor button card (#20662)
REF MOM-313
2024-07-29 09:25:09 +02:00
Steve Larson
1f05a7890f
Added test coverage over newsletter flows (#20672)
no ref
- while reviewing the newsletter flows, it was apparent that we were
missing test coverage

Some of the tests in Portal are a bit redundant with tests added for
child components, but it didn't seem worth removing them after getting
them to work. There was a bug in our Portal fixture data that requires a
few changes, as well as some small adjustments for making tests easier
(testing-lib-react has `getByTestId` and simply a `querySelector` to use
alternate test attributes).
2024-07-27 02:20:13 +00:00
renovate[bot]
6da911e578 Update tiptap monorepo to v2.5.7 2024-07-26 14:12:21 +00:00
renovate[bot]
4f2a31aa2f Update tiptap monorepo to v2.5.6 2024-07-24 16:39:32 +00:00
renovate[bot]
59d4ad91d2 Update dependency tailwindcss to v3.4.5 2024-07-24 10:37:37 +02:00
Sanne de Vries
806fce191d
Updated Tips & Donations settings design (#20649)
REF MOM-315
- Changed to column layout
- Fixed broken currency dropdown
- Included a link to Stripe terms & conditions
- Renamed from "Tips or donations" to "Tips & donations"
2024-07-24 08:26:29 +00:00
Fabien O'Carroll
bfd3ee1209 Wired up ActivityPubAPI w/ ReactQuery
This is a bit of a stopgap, we'll want to eventually pull these hooks out into
a shared file, but for now this is fine.

This almost decouples us from admin-x-framework, but we're still using it to
get the site url as well as some types that we can pull out later.
2024-07-24 13:38:08 +07:00
Fabien O'Carroll
c6e407fb7e Created ActivityPubAPI module
ref https://linear.app/tryghost/issue/MOM-288

Instead of having all of our network code inside of admin-x-framework, we're
moving it into activitypub to make it easier to work with. We've also added
support for using identity tokens for authentication with the ActivityPub API.
2024-07-24 13:38:08 +07:00
Fabien O'Carroll
bef58e1069 Removed nx build from test:unit script
This slows down TDD workflows way too much
2024-07-24 13:38:08 +07:00
Fabien O'Carroll
63261d7d88 Updated vite config to allow sibling test files 2024-07-24 13:38:08 +07:00
Kevin Ansfield
4465e09f2f Fixed missing space after account name when disconnecting Stripe
no issue

- line wrap immediately after the variable meant whitespace was being ignored
2024-07-23 15:05:21 +01:00
renovate[bot]
f493ce9abe Update tiptap monorepo to v2.5.5 2024-07-22 12:00:54 +00:00
renovate[bot]
cbd994d033 Update dependency jsdom to v24.1.1 2024-07-22 09:10:23 +02:00
Michael Barrett
4a59e30050
Published new versions of apps to support BS locale (#20629)
refs
[ONC-150](https://linear.app/tryghost/issue/ONC-150/support-escalation-re-trouble-with-new-languages)

Published new versions of apps to support BS locale
- comments-ui@0.17.3
- signup-form@0.1.5
- portal@2.37.10
2024-07-19 09:26:59 +01:00
Steve Larson
6840c3a6b3
🐛 Fixed admin crashing when deleting a tier benefit that was last moved (#20628)
ref https://linear.app/tryghost/issue/ENG-1433/
- in the tiers details modal, if a tier was deleted after being moved it
would crash admin

The SortableList component calls renderItem for the drag overlay on the
dragged item. However, if that item was deleted, the draggingId never
got reset causing the drag overlay to try to call renderItem on a
nonexistent item.

As a note, we don't actually use this overlay... it could be best to
strip it out to prevent causing issues.
2024-07-18 17:18:32 +00:00
Princi Vershwal
7c1a732a30
🐛 Fixed publishing issue when site has no active newsletters (#20627)
Ref [ENG-1253](https://linear.app/tryghost/issue/ENG-1253/)

Not allowing users to archive their last active newsletter
2024-07-18 14:03:15 +00:00
Princi Vershwal
f05ba155b8
Revert fixed publishing issue when site has no active newsletters 2024-07-18 13:55:49 +00:00
Princi Vershwal
836b6e7be9
Fixed publishing issue when site has no active newsletters
Ref ENG-1253

Not allowing users to archive their last active newsletter
2024-07-18 19:14:18 +05:30
renovate[bot]
573dc9f3ee Update tiptap monorepo to v2.5.4 2024-07-17 16:16:16 +00:00
renovate[bot]
8c5e2a7128 Update tiptap monorepo to v2.5.3 2024-07-17 11:43:08 +00:00
renovate[bot]
15c1c9a76b Update tiptap monorepo to v2.5.2 2024-07-17 08:45:34 +00:00
renovate[bot]
1c12b5e92b Update tiptap monorepo to v2.5.1 2024-07-15 15:53:36 +00:00
renovate[bot]
6108df5292 Update tiptap monorepo to v2.5.0 2024-07-15 00:13:35 +00:00
Daniël van der Winden
57dc5f8ded
Updated Archive Newsletter modal (#20594)
Fixes
https://linear.app/tryghost/issue/DES-470/spacing-on-newsletter-archive-warning-modal-is-missing-between

The modal now follows the same markup as the _Archive Tier_ modal, and
therefore shows whitespace between both paragraphs.
2024-07-11 13:32:22 +00:00
Daniël van der Winden
74e4ee340a
Fixes searchbar breakpoint issue (#20593)
Fixes
https://linear.app/tryghost/issue/DES-323/settings-has-a-bad-breakpoint-with-search-bar

On smaller resolutions, the `X` of the searchbar was overlapping with
the `X` of Settings. Setting the right media queries resolved that.
2024-07-11 15:15:40 +02:00
Princi Vershwal
2cace2987d
Added test for hooks - useSortableIndexedList, usePagination (admin-x-design-system)
Ref ENG-1351 ENG-1373
2024-07-11 14:02:55 +05:30
Sag
f8966e26c8
Cleaned up "Recommendations" GA feature flag (#20580)
no issue

- "Recommendations" feature was released in Ghost
[v5.71.0](https://github.com/TryGhost/Ghost/releases/tag/v5.71.0)
(commit: 1b82efe5d2)
- [Project
details](https://www.notion.so/ghost/Recommentions-5be89ec0d02a4c9b9310a964f9b22901?pvs=4)
2024-07-10 12:24:27 +00:00
Daniël van der Winden
8feb37cf59
Changed button labels in Navigation modal (#20579)
Fixes
https://linear.app/tryghost/issue/DES-474/update-navigation-modal-to-use-close-and-save-buttons

We've changed buttons throughout the product to Close/Save, rather than
Cancel/OK. This applies the same pattern to the Navigation modal in the
Admin.
2024-07-10 11:12:46 +00:00
Sag
a8533c9dc9
Cleaned up "Embeddable signup form" GA feature flag (#20577)
no issue

- "Embeddable signup form" feature was released in Ghost
[v5.51.0](https://github.com/TryGhost/Ghost/releases/tag/v5.51.0)
(commit: 5e7edb9)
- [Project
details](https://www.notion.so/ghost/Embeddable-signup-forms-1632735f1f894d01be491aeffb48bd45?pvs=4)
2024-07-10 10:46:04 +00:00
Sag
3aca1411fc
Updated Portal readme with updated develop and release instructions (#20576)
no issue
2024-07-10 10:05:41 +00:00
Daniël van der Winden
13bad88baf
Fixed comments UI regression (#20574)
Fixes
https://linear.app/tryghost/issue/DES-433/mobile-regression-in-comments-ui

Comments modal was previously using isMobile helper, which only works on
pageload. Code is now adjusted to use Tailwind media queries to
show/hide example profiles at the right resolutions.
2024-07-10 11:22:14 +02:00
Djordje Vlaisavljevic
c6e001280c Improved alignment and spacing of ViewContainer component
ref https://linear.app/tryghost/issue/MOM-261/improve-alignment-and-spacing-of-viewcontainer-component

- It now looks a lot better when it's set to be page-level and has tabs and actions
2024-07-09 20:48:40 +01:00
Fabien O'Carroll
f87a7dcd18 Added guard against null icon for actor
Sometimes the actors icon can be null, and we need to handle that
2024-07-09 16:58:58 +07:00
Daniël van der Winden
4084a3d00f
Fixes complimentary subscription display issues (#20563)
Fixes
https://linear.app/tryghost/issue/DES-324/complimentary-plan-issues

We were showing renewal copy for subscriptions that are forever
complimentary. We also had a trailing en-dash in the Member detail
screen when their subscription was complimentary and had no end date.

Those things are solved now. We don't show dates or renewal copy when we
don't need to.
2024-07-09 11:53:02 +02:00
Sag
8a3ad6df95
Updated README of Comments UI with release instructions (#20560)
no issue
2024-07-08 16:15:23 +00:00
Daniël van der Winden
0aef3d3bee
Error copy updates for Newsletter settings (#20559)
Fixes
https://linear.app/tryghost/issue/DES-550/mechanical-error-message-in-newsletter-detail-modal

Errors in the newsletter detail modal sounded mechanical and were
inconsistent with other error messages. That is now fixed, and they
sound more human.
2024-07-08 15:33:26 +00:00
Daniël van der Winden
dfb0f93c06
Updated support email error messages (#20558)
Fixes
https://linear.app/tryghost/issue/DES-537/inconsistent-error-messages-for-invalid-email

We were showing inconsistent error messages when changing the support
email address in Portal settings. They are now consistently shown
inline, rather than in a toast.
2024-07-08 14:16:38 +00:00