Commit Graph

1802 Commits

Author SHA1 Message Date
Sag
fd777ccc54
Released Portal v2.37.6 (#19883)
Changes:
- Fixed button spacing in Portal unsubscribe popup footer
(ae5df293c3)
- Fix free tier benefit not showing up
(e4b908479e)
2024-03-19 09:40:27 +00:00
Peter Zimon
e4b908479e
Fix free tier benefit not showing up (#19879)
ref ENG-760

The benefits for Free tier was not showing up for some old & new logic.

---------

Co-authored-by: Sag <guptazy@gmail.com>
2024-03-19 09:51:59 +01:00
Djordje Vlaisavljevic
a67342b06a
Add WIP onboarding checklist behind the flag (#19801)
ref https://linear.app/tryghost/issue/IPC-66/onboarding-checklist-v1

- Adds a basic version of a new onboarding checklist behind the feature
flag, without incomplete/complete state logic
- Links to Design settings, Members screen and new post
- Opens amodal that we’ll use as Share modal

---------

Co-authored-by: Daniël van der Winden <danielvanderwinden@ghost.org>
2024-03-18 14:53:01 +00:00
Sodbileg Gansukh
04c9bf0197
Fixed empty state flashing issue on offers list (#19863)
ref DES-101, DES-105
2024-03-14 09:25:48 +00:00
Sodbileg Gansukh
2029a5846a
Fixed Portal preview flashing issue in Offers (#19862)
ref DES-101
2024-03-14 14:29:17 +08:00
Fabien "egg" O'Carroll
0fb0c6c2b5 Added NestJS Playground
no-issue

This adds the barebones of a NestJS application wired up to the Admin API
behind a feature flag, so that we can experiement with how to use Nest in the
context of Ghost
2024-03-13 19:44:06 +07:00
Peter Zimon
9d9707e6f4
Settings keyboard shortcuts (#19836)
ref DES-166

Accessing settings via a keyboard shortcut is a great productivity
booster for advanced users and it is missing from Ghost today.
2024-03-13 08:46:22 +01:00
Ronald Langeveld
19da5c6af4
Extracted Unsplash Selector from AdminX (#19849)
no issue

- Adds the unsplash selector as a standalone typescript package inside
the Koenig monorepo.
- Currently we have 3 versions of the Unsplash Selector. One in
Koenig-Lexical, one in AdminX and the original Ember version.
- We can now start phasing out the application coupled version of the
selector and replace it with the reusable version.
- We can now import it via npm to any React application.
- This commit removes the Unsplash components from AdminX and imports it
instead.

This is the second commit for this as the previous commit broke styles
due to normalise styles leaking into the Ember app. Disabling preflight
(https://github.com/TryGhost/Koenig/pull/1169) in Tailwind fixed it.
2024-03-12 22:40:33 +02:00
Kevin Ansfield
9203eea673
Released comments-ui 0.16.1 (#19847)
no issue

- includes fix for IFrame modal throwing errors and making comments block disappear when performing certain actions
2024-03-12 18:04:20 +00:00
Kevin Ansfield
dd3bc06761
🐛 Fixed comments block disappearing when performing certain actions (#19846)
closes https://linear.app/tryghost/issue/ENG-739

- `props.innerRef` in `<IFrame>` was inadvertently assumed to always exist, sometimes throwing an error on render when certain popups like the profile settings modal were opened resulting in the app crashing and the whole comments block disappearing
- added a guard to ensure the ref exists before trying to set it
- updated tests so the profile modal route is tested
2024-03-12 17:39:36 +00:00
Ronald Langeveld
36f11a65a0
Revert "Extracted Unsplash Selector from AdminX (#19838)" (#19844)
no issue

- caused a styling regression, making changes then will merge again.
2024-03-12 15:35:09 +00:00
Kevin Ansfield
ef143978e7
🎨 Reduced requests and 403 responses for comments auth check (#19840)
closes https://linear.app/tryghost/issue/ENG-721
ref https://linear.app/tryghost/issue/ENG-708

Comments-UI loads `/ghost/admin-frame/` in an iframe to check if a Staff User is authenticated in order to  show moderation options. That iframe request loads a HTML page which in turn contains a script that fires off an API request that attempts to fetch the logged-in user details, resulting in a 403 "error" showing up when not authenticated. In the vast majority of cases there will be no staff user authenticated so lots of extra requests and "errors" are seen unnecessarily.

- adjusted the `/ghost/auth-frame/` endpoint to check if the request contains an Admin session cookie
  - if it does, continue as before with rendering the HTML page so the script is loaded
  - if it doesn't, return an empty 204 response avoiding the script request and subsequent 403-generating API request
- eliminates the 403 error being generated for all typical visitor traffic, the error should only be seen when an Admin was previously logged in but their cookie is no longer valid (either from logging out, or going past the 6month validity period)
2024-03-12 12:27:18 +00:00
Ronald Langeveld
6719bcf46e
Extracted Unsplash Selector from AdminX (#19838)
no issue

- Adds the unsplash selector as a standalone typescript package inside
the Koenig monorepo.
- Currently we have 3 versions of the Unsplash Selector. One in
Koenig-Lexical, one in AdminX and the original Ember version.
- We can now start phasing out the application coupled version of the
selector and replace it with the reusable version.
- We can now import it via npm to any React application.
- This commit removes the Unsplash components from AdminX and imports it
instead.
2024-03-12 11:06:57 +00:00
renovate[bot]
0162fea441 Update dependency typescript to v5.4.2 2024-03-11 17:16:17 +01:00
renovate[bot]
439644e21c Update storybook monorepo to v7.6.17 2024-03-11 17:16:02 +01:00
Sodbileg Gansukh
be3a5664a2
Added escape key handler to select elements (#19689)
ref DES-58
2024-03-11 17:40:03 +08:00
Peter Zimon
ad491ea4f3
Fixed udpated banner z-index (#19822)
refs.
https://linear.app/tryghost/issue/DES-168/z-index-is-really-messed-up-in-settings

The update banner's z-index was conflicting with settings.
2024-03-07 14:46:48 +01:00
Ronald Langeveld
8a67901355
Updated test to check for Unsplash button in Admin (#19814)
ref DES-167

https://linear.app/tryghost/issue/DES-167/🐛-unsplash-in-admin-x-not-styled-correctly
2024-03-06 14:54:37 +00:00
Steve Larson
ae5df293c3
Fixed button spacing in Portal unsubscribe popup footer (#19815)
no ref
- The 'Get help' button was only adding margin on the left when accessed
through account management even though it is also shown on the
unsubscribe page accessed via link.
2024-03-06 14:53:02 +00:00
Steve Larson
7a36917c6a
Released Portal v2.37.5 (#19812)
ref ENG-677
- Improved unsubscribe from url workflow staying in sync with logged in
user.
- Added tests covering the unsubscribe from url workflow.
2024-03-06 14:37:04 +00:00
Sodbileg Gansukh
b90d66a846
Fixed various Unsplash design bugs (#19806)
ref DES-167

- fixed visibility of Unsplash button in publication cover setting
- fixed gallery image ratio
- fixed search input border style
- fixed icon fill color issue of the download button
- fixed insert image alignment
- fixed author thumbnail pixelation
2024-03-06 16:48:13 +08:00
Steve Larson
cbb27c2d53
Fixed TZ dependency in Portal helpers test (#19804)
no refs
- Tests run locally (US TZ) often always failed because the dates are
pushed to the en-GB locale. The test now forces the same TZ onto the
compared to date.
2024-03-05 15:44:07 -06:00
Steve Larson
2bb566f18f
Added Portal tests for newsletter subscriptions (#19802)
refs https://linear.app/tryghost/issue/ENG-677

- Portal was completely missing tests for `UnsubscribePage`
- `UnsubscribePage` is unique for Portal in that it needs to be able to
handle logged in and not-logged-in member state/interactions
- Various parts of Portal don't use a shared `GhostApi` instance, making
mocking all functionality impossible
- `UnsubscribePage` was updated to use `onAction` to bring it in line
with other Portal interactions while logged in
- Added checks for UI components for more precision in tests checking subscriptions within the UI

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-03-05 19:22:50 +00:00
Kevin Ansfield
857588ed60
Released comments-ui 0.16.0 (#19800)
no issue

- defers loading of `admin-auth` frame and it's API request until we are displaying some comments
  - defers the frame load and API request until the comments box is scrolled into view
  - eliminates the requests altogether for posts that have no comments
2024-03-05 16:20:19 +00:00
Kevin Ansfield
92a8a53a95
Added lazy-loading of admin auth in Comments UI (#19799)
closes ENG-711

When an Admin is authenticated in Comments-UI we only add moderation options to the displayed comments so we don't need to pre-emptively load the `admin-auth` iframe and make the `/ghost/api/admin/users/me/` request until some comments are actually visible.

- used `state.comments.length` property to defer rendering of the admin auth frame until comments have been fetched (after box is scrolled into view) and the count is > 0
2024-03-05 15:57:20 +00:00
Djordje Vlaisavljevic
50770d20b1
Reorganized and improved meta data settings so it's easier to parse DES-159
refs DES-159
2024-03-05 11:23:42 +00:00
Peter Zimon
6d6969f4b0
Portal signup page spacing fixes (#19791)
refs.
https://linear.app/tryghost/issue/DES-161/portal-signup-window-spacing-problem

The products section is returned even if there's only a free product in
the publication. This results in an extra, unnecessary space between the
signup form inputs and the signup button.
2024-03-04 16:27:30 +01:00
Ronald Langeveld
8582462619
🐛 Fixed emojis not updating in Announcement Bar (#19792)
refs
https://linear.app/tryghost/issue/ENG-358/🐛-emojis-created-with-lexicals-emoji-picker-are-not-displayed

- Changed the update method from onBlur to a 500ms denounce instead
since the onBlur would update before the emoji plugin for the koenig
editor input field manages to create the emoji.
- Switching to denouncing would ensure the preview only updates once the
input field stopped being modified.
2024-03-04 13:17:42 +00:00
Ronald Langeveld
2816c2c128
Added try/catch to iFrame buffering in Settings (#19790)
refs https://ghost.slack.com/archives/CTH5NDJMS/p1709230854358779

- Customer reported that some code they injected via the Code Injection
crashed the Preview in Ghost Settings.
- This wraps the function where the crash took place (according to
Sentry) in a try/catch to attempt to handle it gracefully.
- Added an additional Sentry log to better understand the situation
should it happen again.
2024-03-04 11:11:03 +02:00
Sanne de Vries
c7e475feb0
Remove comment icon at the top of email template (#19771)
Refs
https://linear.app/tryghost/issue/DES-80/newsletter-view-in-browser-breaking-to-next-line-with-incorrect
2024-02-29 14:45:38 +01:00
Steve Larson
c2f3ffaca7
🐛 Prevented newsletter subscriptions from getting out of sync in Portal (#19768)
refs https://linear.app/tryghost/issue/ENG-677
- UnsubscribePage is intended to be able to be used without logging in
to Portal. The app context (member state) was not synchronized when
logged in, causing conflicts in the client data vs. database.
- Now when a logged in member is found, the member object is manually
updated to reflect the API response(s).
2024-02-28 13:57:19 -06:00
Kevin Ansfield
c365972aa8
Released Comments-UI 0.15.0 (#19775)
no issue

- switches post browse requests to`/members/api/comments/post/:post_id/` to enable better cache bucketing
and invalidation
- removes `order` param from browse and replies requests
2024-02-28 18:59:01 +00:00
Kevin Ansfield
44e602b447
Switched to default ordering for comments API requests (#19774)
closes ENG-681

There's no need to provide an `order` param with every request in Comments-UI if the API has default ordering that matches our requirements. The order param makes logs more noisy/harder to read than they need to be so we want to get rid of it.

- modified comments API input serializer to add a default order param to the browse and replies endpoints when none is provided
- removed order param from the requests that Comments-UI makes
2024-02-28 18:42:02 +00:00
Fabien O'Carroll
a291914fc4 Updated Comments UI to use new endpoint
refs https://linear.app/tryghost/issue/ENG-676/

Now we have the case that there is no filter param, the simple string
approach fails. Instead we build up a URLSearchParams object which
makes it easier to handle conditional params & stringify it at the end.
2024-02-28 22:40:56 +07:00
Kevin Ansfield
b91bf74236
Released comments-ui 0.14.1 (#19770)
part of ENG-678

- comments are now lazy-loaded when the comments block is scrolled into view
2024-02-28 13:12:55 +00:00
Kevin Ansfield
5b6d8fb7a8
Added lazy-loading to comments (#19769)
closes ENG-678

The comments block is typically shown at the bottom of a post so it doesn't make sense to eagerly fetch comments from the API when we don't know if the comments block will even be viewed. By lazy-loading the data only when the comments block comes into view we can reduce both data usage for visitors and load on the site.

- uses IntersectionObserver API to delay comments app initialisation until the comments block has scrolled into view
- updated all iframe-related components to forward a `ref` so we can use the `<iframe>` element reference inside the `App` component
2024-02-28 12:52:24 +00:00
Fabien O'Carroll
6a4d36878e Removed timestamp from initial load of comments
refs https://linear.app/tryghost/issue/ENG-673

This means that the initial load of comments can be cached for everyone.

We also improve the timestamp which is used when fetching future comments,
instead of using a locally generated timestamp, we use the created_at of
the first comment loaded, this drastically improved the likelyhood that the
timestamp will be the same, meaning that it will hit the cache.
2024-02-28 07:38:22 +07:00
Fabien O'Carroll
359c1049c6 Fixed comments MockedApi and tests
The Comments API should be serving comments in reverse chronological order
2024-02-28 07:38:22 +07:00
Kevin Ansfield
ef38316976
Added rounding to Comments-UI API fetch timestamp (#19750)
no issue

- allows for comments to be cached for 10s to greatly reduce the load hitting Ghost
2024-02-23 19:53:27 +00:00
renovate[bot]
6294ccc370 Update tiptap monorepo to v2.2.4 2024-02-23 12:56:29 +00:00
Ronald Langeveld
85028eb00a
Changed invisible class to opacity (#19729)
no issue

- tried invisible tailwind class in main to hide the iframe in the
iframe buffering method, but it doesn't perform great, reverting that.
2024-02-21 18:39:47 +02:00
Ronald Langeveld
ef1c19820b
🐛 Fixed iFrame not keeping scroll position on update (#19725)
no issue

- Added position tracking in the iFrame to allow it to remain in the
same place in the preview after making changes.
2024-02-21 15:28:47 +00:00
Ronald Langeveld
c64c0c2123
🐛 Fixed Portal icon misaligned in Preview (#19723)
no issue

- because we use hidden here, it prevents the Portal iFrame from
calculating the width and position correctly on the initial load.
- Changing it to `invisible` conditionally allows it to do the calculation correctly.
- Also had to reposition the loading indicator.
2024-02-21 13:22:49 +02:00
Sag
99588a7852
Released Portal v2.37.4 (#19718)
refs ENG-607
- added the option to rename the free tier
- added the option to render monthly or yearly pricing by default on
signup
- added a "% discount" summary on the yearly pricing tab
2024-02-20 14:07:17 +01:00
Sag
034df3714e
Removed leftover alpha flag (#19717)
no issue
2024-02-20 14:07:03 +01:00
Sag
e9f5af110c
🎨 Added option to change the name of the free tier (#19715)
ref ENG-607

- also added the option to show the monthly pricing by default during
signup

Co-authored-by: Simon Backx <simon@ghost.org>
Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2024-02-20 12:54:41 +01:00
Ronald Langeveld
1d0fe18dd3
🐛 Fixed custom theme textfield rerendering (#19714)
no issue

- Changed the textfields in custom theme settings to use onBlur instead
to trigger a rerender of the iFrame to avoid flashing.
- It will now instead update once the text field loses focus, similar to
the Announcement Bar.
2024-02-20 10:28:39 +02:00
renovate[bot]
261cc3d022 Update tiptap monorepo to v2.2.3 2024-02-15 18:21:19 +00:00
Ryan Feigenbaum
69eb78b740
Released comments-ui 0.13.5 (#19703)
No issue
2024-02-15 13:19:45 -05:00
Sodbileg Gansukh
924c85d3dc
Sort themes based on package name (#19696)
ref DES-72

- current sorting makes it difficult to find themes when theme directory
and package name are different, because the sorting is based on the
directory name
- this new sorting is based on package name first
- as package name is optional, it then sorts based on directory name if
it doesn't exist
2024-02-15 17:49:29 +07:00
Ryan Feigenbaum
f8bcb489e0
Released Portal 2.37.3 (#19695)
No issue
2024-02-14 12:14:07 -05:00
Peter Zimon
f7e5fb2f9b
Input field visual design update (#19693)
no refs.

Slight visual adjustment to input fields focus state to keep consistency
between marketing pages and product styles.
2024-02-14 13:00:16 +01:00
Djordje Vlaisavljevic
f93143c76a Added focus state for HTMLField
refs DES-108
2024-02-13 15:27:20 +00:00
renovate[bot]
8d357bd551
Update dependency tailwindcss to v3.4.1 (#19395)
no ref

- includes run of `eslint --fix` to update changed classname ordering in Tailwind

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2024-02-13 14:28:02 +00:00
Sodbileg Gansukh
c1ee2de52b
Fixed codemirror hint background color in dark mode (#19687)
fixes DES-9
2024-02-13 11:23:55 +00:00
Peter Zimon
ba9b695626
Update "Customize" link on Setup screen (#19686)
refs.
https://linear.app/tryghost/issue/DES-113/clicking-customize-design-on-setup-page-lands-you-on-top-level

On the setup screen 60% of people choose "Customize your site" which ATM
just take people to the top level Settings screen. This is very
confusing as with all the settings people don't know where to click to
actually get to customizing their site.

This PR fixes it by showing the design settings when clicking on
"Customize your site" and to the Dashboard after closing it.
2024-02-13 11:16:01 +01:00
Djordje Vlaisavljevic
be57b888d2 Made hover and focus states easier to tell apart
refs DES-8
2024-02-08 11:36:15 +00:00
Djordje Vlaisavljevic
2256a22a85 Added hover state to HTMLField component
refs DES-8
2024-02-08 11:36:15 +00:00
Peter Zimon
3ef8b53fad
Added "No search result" screen to Settings (#19672)
refs.
https://linear.app/tryghost/issue/DES-21/empty-screen-is-missing-for-search-in-settings

- Search is one of the most useful functions in Settings and currently
the screen when there's no result for a searchterm is just a plain white
screen. Very non user-friendly.
- This update gives us an opportunity to improve the overall visual
hierarchy and focus of Settings in general.

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-02-08 08:32:40 +01:00
renovate[bot]
d424e1ada1 Update tiptap monorepo to v2.2.2 2024-02-07 13:43:15 +00:00
Sodbileg Gansukh
65e9900578
Added save shortcut support to Code Injection (#19660)
fixes DES-92
2024-02-06 11:03:00 +00:00
Djordje Vlaisavljevic
d59775cb66 Added success notification when switching to new installed theme
refs DES-76
2024-02-06 10:02:09 +00:00
Djordje Vlaisavljevic
f8f9c55f90 Improved TextField disabled state
- It's now easier to tell apart disabled and empty states

refs DES-30
2024-02-05 16:03:51 +00:00
Sodbileg Gansukh
612ea2f5f2
Added default background color to preview iframes (#19651)
fixes DES-88

- preview iframes should have default background as they simulate
browser windows
- transparent background causes unexpected inconsistency when themes
don't have default background color set
2024-02-05 12:56:43 +00:00
Daniël van der Winden
a7f6713614
Fixed icon preview in metadata card (#19650)
Closes issue:
https://linear.app/tryghost/issue/DES-7/admin-x-metadata-page-shows-icon-incorrectly

Set the background image to contain.
2024-02-05 13:38:37 +01:00
Princi Vershwal
aba6c4b5e8
ENG-32 Fixed error while verifying support address (#19648) 2024-02-05 10:41:18 +05:30
Ronald Langeveld
a47d55d1a2
🐛 Fixed trailing slashes not handled in Settings (#19640)
fixes
https://linear.app/tryghost/issue/ENG-609/staff-users-can-no-longer-be-opened-directly-with-their-url

- additionally added an `edit` route for editing staff users, which
fixes a regression.
2024-02-01 19:23:22 +02:00
renovate[bot]
94edc0c856 Update storybook monorepo to v7.6.12 2024-02-01 16:41:56 +01:00
Ryan Feigenbaum
4d6aaf0f68
Update grammar and fix missing word in Email receiving FAQ (#19637)
There were two changes in the Email receiving FAQ page.

1. Add "a" to "If you're not receiving the email newsletter you've
subscribed to, here are a few things to check."
2. Remove unnecessary hyphens from "to-and-from this address."

@jonhickman
2024-01-31 16:16:40 -05:00
Daniel Lockyer
e0fec5b952 Released @tryghost/comments-ui v0.13.4 2024-01-31 15:38:17 +01:00
renovate[bot]
25a8ab33ca Update storybook monorepo to v7.6.11 2024-01-31 11:36:58 +01:00
renovate[bot]
3ed6fab216 Update tiptap monorepo to v2.2.1 2024-01-31 10:03:38 +00:00
renovate[bot]
e77b53f6cf Update tiptap monorepo to v2.2.0 2024-01-29 13:07:18 +00:00
Sag
b5c6cf7d2d
Released Portal 2.37.2 (#19595)
no issue
2024-01-27 01:08:23 +00:00
Sag
1e988cccff
Revert Portal changes (#19594)
no issue

- This revert recent changes made to Portal, that may be causing the
Free tier to not render properly on Ghost sites
2024-01-27 01:46:59 +01:00
Sag
24952ab3df
🎨 Improved Portal and Portal settings (#19584)
no issue

---------

Co-authored-by: Simon Backx <simon@ghost.org>
Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2024-01-26 10:38:00 +01:00
Sag
360e02db4f
Fixed default prices in tier previews (#19586)
fixes ENG-558
2024-01-25 19:42:18 +00:00
Djordje Vlaisavljevic
18d6d72c41
Updated free tier placeholder value ENG-556 (#19585)
refs ENG-556
2024-01-25 19:27:55 +00:00
Sag
eb189c8045
Fixed default amounts in tier previews (#19582)
fixes ENG-558
2024-01-25 17:17:11 +00:00
Djordje Vlaisavljevic
1f90cf7ea9
Updated tier settings labels, hints and placeholders ENG-554 ENG-555 ENG-557 ENG-592 (#19580)
refs ENG-554 ENG-555 ENG-557 ENG-592

- Updated dropdown label copy 
- Updated tier name placeholder logic 
- Updated hint copy for free tier 
- Changed price placeholder values 
- Removed visibility hint when creating/editing tiers
2024-01-25 16:10:03 +00:00
Ronald Langeveld
0c95111f8e
🎨 Admin X - Offers (#19520)
no issue

- Offers rebuilt in React and now located in Settings.
2024-01-25 12:41:54 +00:00
Djordje Vlaisavljevic
9a3aa6310b Updated portal price toggle design
refs DES-24 DES-25
2024-01-25 12:08:33 +00:00
Princi Vershwal
58ec6792d9
Trying to fix browser tests (#19575) 2024-01-24 15:52:20 +00:00
Princi Vershwal
938d23ec33
Offer flash fix5 (#19574) 2024-01-24 15:16:54 +00:00
Princi Vershwal
a10a64c633
Optimised for iframe (#19573) 2024-01-24 14:50:32 +00:00
Princi Vershwal
1211ec3671
Revert "Optimised offer iframe" (#19572)
Reverts TryGhost/Ghost#19571
2024-01-24 14:15:33 +00:00
Princi Vershwal
abff4d8762
Optimised offer iframe (#19571) 2024-01-24 14:05:03 +00:00
Princi Vershwal
50495f05dd
Optimised iframe for offer (#19568) 2024-01-24 13:50:59 +00:00
Princi Vershwal
384cb44e6b
Optimised iframe for offers (#19567) 2024-01-24 13:10:37 +00:00
Princi Vershwal
cb9efc3ad4
Offer iFrame flash fix attempt 1003 (#19566) 2024-01-24 11:56:23 +00:00
Princi Vershwal
0627840f13
Offeri frame flash fix (#19565) 2024-01-24 17:02:55 +05:30
Princi Vershwal
e7a72e2ab1
Changed delay to 300ms (#19564) 2024-01-24 08:09:28 +00:00
Ronald Langeveld
94c7d9b21b
Revert "Changed request type to fetching iframe content in previews
refs https://ghost.slack.com/archives/C0568LN2CGJ/p1706018058495729
2024-01-23 14:33:38 +00:00
Ronald Langeveld
0f24f1efef
Bumped portal to 2.37.1 (#19554)
no issue
2024-01-23 13:19:05 +00:00
Ronald Langeveld
52e99f904e
Added Portal Frame conditions (#19549)
no issue

- adds 2 addition conditions for when the Portal iframe should be
visible.
- waits an extra 100ms before making it visible to give portal time to
properly load.

---------

Co-authored-by: Princi Vershwal <vershwal.princi@gmail.com>
2024-01-23 12:31:08 +00:00
Djordje Vlaisavljevic
7d9dfac489 Added a prop for enabling horizontal scroll
refs PROD-332
2024-01-23 11:37:44 +00:00
Ronald Langeveld
e2a4724792
🐛 Fixed links in History (#19551)
refs
https://linear.app/tryghost/issue/PROD-331/post-and-offer-links-404-in-history

- Links were using Ember route instead of absolute routes, causing 404s.
2024-01-23 11:32:46 +00:00
Ronald Langeveld
db5d2d0329
🐛Fixed primary_name crashing Settings history (#19550)
fixes
https://linear.app/tryghost/issue/PROD-329/history-modal-crashes-the-app

- Added optional chaining operator to avoid null or undefined crashes
when the condition doesn't meet and should rather just move on.
- It now aligns with the other conditions where chaining is used.
2024-01-23 10:05:12 +00:00
Princi Vershwal
363fbd1d9b
Added delay to avoid preview flashing (#19548) 2024-01-23 09:29:55 +00:00
Ronald Langeveld
dc1bba781b
Fixed Offers redemptions preselection (#19541)
fixes
https://linear.app/tryghost/issue/PROD-319/offer-is-not-preselected-in-filter-dropdown-after-navigating-to

- fixes the URL builder for when Redeemed offers are selected to ensure
the selected tier is preselected in the members filter
2024-01-22 15:14:08 +00:00
Djordje Vlaisavljevic
d37a46a400
Updated yearly discount indicator copy PROD-299 (#19540)
refs PROD-299
2024-01-22 14:53:57 +00:00
Princi Vershwal
73fb5a3e84
Added loader for preview (#19536) 2024-01-22 14:45:06 +00:00
renovate[bot]
d54f4b06e5 Update storybook monorepo to v7.6.10 2024-01-22 09:25:28 +01:00
renovate[bot]
3575102462 Update dependency vite to v4.5.2 [SECURITY] 2024-01-22 09:25:09 +01:00
Djordje Vlaisavljevic
c4a800e97d
Fixed logic for displaying toast notifications when updating email address PROD-215
refs PROD-215

- Showing toast notification instead of modal to all users (even
self-hosted and legacy (Pro)) now
- More compact toast notification message
- Updated tests
2024-01-18 19:00:49 +00:00
Ronald Langeveld
b4fc45008a
Added hasLoaded state in Portal Frame (#19524)
no issue

- added an additional state that keeps track on whether the iFrame
content has loaded, before checking whether Portal has loaded.
2024-01-18 16:42:52 +00:00
Djordje Vlaisavljevic
501b1a2640
Updated design for sender and reply-to email address flow PROD-215 PROD-216
refs PROD-215 PROD-216

- Added toast notifications for successful sender and reply-to email
address change behind the flag, instead of the modal
- Updated email template for verifying new sender or reply-to email
2024-01-18 15:21:48 +00:00
Ronald Langeveld
3e67544331
Removed onLoad from iFrame element (#19522)
no issue

- removed the onLoad function from the iFrame element and only rely on
the listener waiting for 'portal-ready' before showing Portal
2024-01-18 15:09:52 +00:00
Daniel Lockyer
57c5f92770 Reverted "🎨 Added Offers to the new Settings (#19493)"
This reverts commit c7d7b883cc.
2024-01-18 15:04:59 +01:00
Sag
0f17f9a937
Updated design of the reply-to field for custom sending domains (#19515)
fixes PROD-205
fixes PROD-219

- removed the right placeholder complexity
- the preview renders the current sender / reply-to address in
real-time, regardless of whether it's valid
- if the reply-to address does not match the custom sending domain, show
an inline error
2024-01-18 14:39:43 +01:00
Ronald Langeveld
c7d7b883cc
🎨 Added Offers to the new Settings (#19493)
no issue

- Removes flags for the new Offers in Admin X (Settings)
- Removes old Offers from the sidebar.
- See a new version of Offers in Settings. 🎨
2024-01-18 12:56:08 +00:00
Ronald Langeveld
14bf2df834
Made offers iframe init load async (#19516)
no issue

- ensures it waits for event data to load before rendering the iframe
which sometimes causes an undesired flashing experience.
2024-01-18 12:38:41 +00:00
Ronald Langeveld
66238c7ccf
Added default string to href to Offers Portal iFrame (#19514)
no issue

- potentially fixes a small performance issues to avoid the homepage of
your publication from being loaded should an href from Portal not exist
when loading Offers, that could cause flashing.
2024-01-18 09:42:46 +00:00
Sodbileg Gansukh
8f4f013ed2
Design details on Offers cards and list (#19513) 2024-01-18 08:24:28 +00:00
renovate[bot]
bd77acdf7f Update storybook monorepo to v7.6.9 2024-01-18 08:34:43 +01:00
renovate[bot]
0108b9578d Update dependency autoprefixer to v10.4.17 2024-01-18 08:34:25 +01:00
Djordje Vlaisavljevic
4abcd17184 Added static design for banners
refs PROD-215 PROD-322
2024-01-17 21:09:24 +00:00
Sag
5ddd90a244
Updated Portal settings to render paid plans options only when relevant (#19507)
fixes PROD-300
- hides "Prices available at signup" and "Price preselected at signup"
options in Portal settings, if no paid tier is active/visible
2024-01-17 15:08:15 +00:00
Pradhumansinh Padhiyar
59ebe1919e
[fix-#19246] --Fix darkmode is not working properly in Settings/Recommendations tab (#19249)
Fix:- #19246 

Resolved an issue with dark mode in the recommendation tabs footer by
making TailwindCSS adjustments. Previously, the footer stayed in light
mode when transitioning from light mode to dark mode.

**Changes Made:**

Implemented a TailwindCSS class for a dark background in the table
footer to ensure consistency with dark mode.

**Before Fix:**

![288238357-1801884e-a8a4-48ac-b59a-0b2260561cdd](https://github.com/TryGhost/Ghost/assets/24241624/787f695c-fa7c-4ae8-aa34-9c9c53df4686)

**After Fix:**
![Screenshot 2023-12-06 at 11 15
19 AM](https://github.com/TryGhost/Ghost/assets/24241624/4bb65ffe-735a-440c-801c-520f991585e6)

**This fix enhances the user experience when working with
Recommendations Tab in settings.**

Please let me know if any further adjustments or clarifications are
needed. Thank you!
2024-01-17 12:13:11 +01:00
Kevin Ansfield
100e7b70c6
Added TK Reminders feature (#19491)
no issue

- keep an eye on on https://ghost.org/changelog/ for full details
2024-01-17 08:57:35 +00:00
renovate[bot]
a1158a5595 Update Types packages 2024-01-15 21:04:04 +01:00
Michael Barrett
ed0762fb51
Removed usage of yg when using NQL (#19287)
refs https://github.com/TryGhost/NQL/pull/73

The referenced PR removes `yg` from the parsed NQL output, so we also
need to remove any usage of it in Ghost
2024-01-15 14:40:01 +00:00
renovate[bot]
44ed5a4506 Update storybook monorepo to v7.6.8 2024-01-14 09:18:18 +01:00
renovate[bot]
42158c0792 Update tiptap monorepo to v2.1.16 2024-01-11 14:07:12 +00:00
renovate[bot]
ad37aaa53c Update tiptap monorepo to v2.1.15 2024-01-08 21:57:34 +00:00
renovate[bot]
4cc7070fae Update dependency @headlessui/react to v1.7.18 2024-01-08 16:13:31 +00:00
renovate[bot]
52051132b0 Update tiptap monorepo to v2.1.14 2024-01-08 12:46:44 +00:00
Ronald Langeveld
3c4b981674
🐛 Fixed outside click exiting Code Injection modal (#19424)
no issue

- fixed a bug causing the full screen code injection to close when
clicking out side of it, which could cause the loss of unsaved changes.
2024-01-05 10:53:57 +00:00
renovate[bot]
85f3ef3d14 Update dependency postcss to v8.4.33 2024-01-05 11:05:49 +01:00
Sodbileg Gansukh
3e98dd9edf
Simplified offers table UI (#19439)
fixes PROD-283
2024-01-04 10:45:44 +00:00
Sodbileg Gansukh
3611e99422
Close offer modal after archiving/reactivating (#19437)
fixes PROD-284
2024-01-04 02:17:53 +00:00
Sodbileg Gansukh
af1551bf8f
Moved learn more link to a separate line in Offers setting group (#19428)
fixes PROD-281
2024-01-03 06:57:32 +00:00
Sodbileg Gansukh
ea04f74a82
Fixed dashed border width issue for offers preview in Portal (#19427)
fixes PROD-282
2024-01-03 06:48:47 +00:00
Ronald Langeveld
d06a1a4e5b
Disabled Codemirror searchKeymap in Admin X (#19423)
refs https://linear.app/tryghost/issue/PROD-287/cmdf-in-code-injection

- wired in the default basicSetup and then explicitly disable the search
keymap to avoid cmd+f triggering the codemirror search and instead
brings up the default browser finder.
2024-01-02 19:34:30 +02:00
renovate[bot]
c16960e5bc Update storybook monorepo to v7.6.7 2024-01-02 10:40:14 +01:00
renovate[bot]
3508cd12fe Update dependency clsx to v2.1.0 2023-12-29 21:15:34 +00:00
renovate[bot]
80bb5ff887 Update dependency clsx to v2.0.1 2023-12-29 20:03:34 +00:00
Jono M
51ee276e97
Updated files with mixed named/default exports to use only named exports (#19385)
no issue

Fixes a warning in yarn dev
2023-12-14 16:01:28 +00:00
Princi Vershwal
62a5b7d61a
Removed onBlur error feedback in Recommendation edit modal (#19382)
Fixes
[PROD-266](https://linear.app/tryghost/issue/PROD-266/remove-onblur-error-feedback-in-recommendation-edit-modal)
2023-12-14 13:09:55 +00:00
Princi Vershwal
e0aca1c2fb
Removed onBlur error feedback in Custom Integration/Webhook modal (#19384)
Fixes
[PROD-269](https://linear.app/tryghost/issue/PROD-269/remove-onblur-error-feedback-in-custom-integration-webhook-modal)
2023-12-14 12:46:37 +00:00
Princi Vershwal
82d9e3a978
Removed onBlur error feedback in Custom Integration edit modal (#19383)
Fixes
[PROD-268](https://linear.app/tryghost/issue/PROD-268/remove-onblur-error-feedback-in-custom-integration-edit-modal)
2023-12-14 12:30:07 +00:00
Princi Vershwal
8d3f3d60f7
Removed onBlur error feedback on Tier detail modal (#19381)
Fixes
[PROD-265](https://linear.app/tryghost/issue/PROD-265/remove-onblur-error-feedback-on-tier-detail-modal)
2023-12-14 11:53:35 +00:00
Princi Vershwal
bb42faf694
Removed onBlur error feedback in Newsletter General settings (#19379)
Fixes PROD-267
2023-12-14 11:44:05 +00:00
Ronald Langeveld
0dc4ac380c
Portal Iframe Improvements in Admin X (#19377)
refs PROD-4

- removed unnecessary props passed into the PortalFrame component.
2023-12-14 09:42:30 +02:00
Princi Vershwal
3fef668394
Validation fix: Corrected fields should revert back from error-state (#19376)
Fixes PROD-278
2023-12-14 07:03:20 +00:00
Princi Vershwal
7b0ec35a1f
Fixed validation error: Corrected fields should revert back from erro… (#19374)
Fixes
[PROD-272](https://linear.app/tryghost/issue/PROD-272/corrected-fields-should-revert-back-from-error-state)
2023-12-14 05:32:50 +00:00
Ronald Langeveld
275cdd4db9
Added performance adjustments to Portal iFrames (#19373)
refs PROD-4
2023-12-14 06:54:39 +02:00
Djordje Vlaisavljevic
69a8f71bd1 Switched checkbox to a hint showing status
refs PROD-276
2023-12-13 16:58:50 +00:00
Djordje Vlaisavljevic
b0ac1e9afd Hid price preselect dropdown when only monthly or yearly are shown
refs PROD-275
2023-12-13 16:58:50 +00:00
Djordje Vlaisavljevic
02e04f06b9 Fixed placeholder overflow in HTMLField
refs PROD-82
2023-12-13 16:58:50 +00:00
Djordje Vlaisavljevic
b97f91f408 Changed portal settings to show free tier name instead of "Free"
refs PROD-255
2023-12-13 16:58:50 +00:00
Sodbileg Gansukh
f00b342e83
Fixed number formatting of offer redemptions count (#19365)
fixes PROD-274

- corrected plural form of the label
- added number formatting
2023-12-13 15:38:53 +00:00
Sodbileg Gansukh
6462f8f2ab
Fixed minor design issues in offers (#19363)
fixes PROD-271, PROD-273
2023-12-13 15:26:28 +00:00
Peter Zimon
58d9b8e382
Update migration in settings (#19278)
refs.
7b40393d77

We're improving the usability and possibilities for publishers to
migrate from other platforms such as Substack, Medium or Mailchimp. This
PR applies changes to Ghost Settings to support the new flows, more
specifically:

- moves import and export functions out of Labs to its own setting,
directly available from search and the menu
- adds direct access to various platform migrations
- moves "Delete all content" to a dedicated setting group at the bottom
of all setting

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
2023-12-13 16:25:29 +01:00
Ronald Langeveld
f23767fe12
Fixed offers asc/desc sorting not updating in component (#19361)
refs
https://linear.app/tryghost/issue/PROD-8/when-i-sort-by-name-→-click-into-an-offer-→-go-back-to-the-list-it
2023-12-13 13:46:11 +00:00
Princi Vershwal
f29d7975a8
Removed validation onBlur (#19358)
Fixes
[PROD-209](https://linear.app/tryghost/issue/PROD-209/when-an-input-is-focused-and-a-modal-is-closed-error-messages-are)
2023-12-13 11:07:15 +00:00
Daniel Lockyer
a9c9202b5c Added defaults to Nx build step
refs https://github.com/TryGhost/DevOps/issues/122

- this allows us to DRY up some of the other configuration we have
  dotted around and fixes a niche bug with overlapping builds that we
  were seeing before, because Nx should only allow one build at a time
2023-12-13 11:54:31 +01:00
Daniel Lockyer
efec8b5fba Enabled concurrent execution of tsc and Vite build
refs https://github.com/TryGhost/DevOps/issues/122

- this runs the Vite build and Typescript type checking concurrently,
  which will speed up the total time to build
2023-12-13 11:54:31 +01:00
Ronald Langeveld
286194d61a
Added global state to avoid losing sorting state in Offers (#19355)
refs
https://linear.app/tryghost/issue/PROD-8/when-i-sort-by-name-→-click-into-an-offer-→-go-back-to-the-list-it


- we now handle the state via a global state to ensure we aren't resetting the sorting options after each rerender.
2023-12-13 12:25:06 +02:00
Sodbileg Gansukh
be47817ca0
Dark mode improvements for offers success screen (#19356) 2023-12-13 10:20:47 +00:00
Daniel Lockyer
fc02ca8bbb Reverted "Update Vite packages"
refs https://ghost.slack.com/archives/C0568LN2CGJ/p1702454781859679

- this reverts commit cf60db85d8 as we've
  seen issues with the `vite-plugin-css-injected-by-js` dependency
2023-12-13 09:24:29 +01:00
renovate[bot]
9f9f6d0526 Update dependency @types/react to v18.2.45 2023-12-13 08:59:33 +01:00
Sodbileg Gansukh
3713273560
Dark mode improvements for offers (#19352)
fixes PROD-262, PROD-261
2023-12-13 07:40:40 +00:00
renovate[bot]
981b8fc814 Update dependency @types/react to v18.2.44 2023-12-13 08:23:09 +01:00
Princi Vershwal
830967d2ed
Edit cancle button fix (#19350)
Fixes:
[PROD-213](https://linear.app/tryghost/issue/PROD-213/cancelling-should-act-two-ways-when-the-modal-is-opened-from-the-list)
2023-12-13 07:16:26 +00:00
Sodbileg Gansukh
b7648e7bc2
Added design improvements to the Portal preview in offers (#19349)
fixes PROD-251, PROD-252, PROD-254
2023-12-13 06:17:12 +00:00
Princi Vershwal
7d530406f6
Add offer cancel button fix (#19348)
Ref
[PROD-213](https://linear.app/tryghost/issue/PROD-213/cancelling-should-act-two-ways-when-the-modal-is-opened-from-the-list)
2023-12-13 05:48:48 +00:00
renovate[bot]
cf60db85d8 Update Vite packages 2023-12-12 18:23:37 +01:00
Sodbileg Gansukh
03fd494e84
Hide copy link feature when there's no offer code (#19335)
fixes PROD-253
2023-12-12 15:57:55 +00:00
Sodbileg Gansukh
0a5c61acb2
Removed linking when there's no redemptions (#19332)
fixes PROD-250
2023-12-12 15:37:50 +00:00
Djordje Vlaisavljevic
5c19249473
Added yearly discount indicator to monthly/yearly toggle PROD-60 PROD-222 PROD 223 (#19276)
refs PROD-60, PROD-222, PROD-223, PROD-89, PROD-94

- Indicator shows up in the monthly/yearly toggle if there are any paid
tiers with yearly discount, and shows the highest discount in order to
nudge visitors towards checking out yearly plan
- A couple of smaller portal improvements: typos, spacing, alignment

---------

Co-authored-by: Simon Backx <simon@ghost.org>
2023-12-12 09:32:56 +00:00
Princi Vershwal
c1c3775748
Revert "Add offer cancle button fix" (#19324)
Reverts TryGhost/Ghost#19297
2023-12-12 07:27:17 +00:00
Sodbileg Gansukh
c932e9d60e
Updated copy of the add offer link in the settings group (#19323) 2023-12-12 12:28:53 +07:00
Sodbileg Gansukh
742a743a6b
Removed extra div when there's no offers to show in the settings group (#19322) 2023-12-12 05:03:43 +00:00
Daniël van der Winden
21e23981c8
Fixed X logo colour in dark mode (#19316)
Closes issue
https://linear.app/tryghost/issue/PROD-238/x-logo-should-be-inverted-in-dark-mode-in-settings

Adjusted the SVG to set its fill to currentColor.
2023-12-11 18:01:58 +01:00
Daniël van der Winden
8c5c773398
Fixed white icon bg's in tier list in dark mode (#19310)
Closes issue https://github.com/TryGhost/Ghost/issues/18872

Solves the problem of the bg-white class showing a white background
behind the checkmark icons in the tier list.
2023-12-11 17:13:46 +01:00
Jono M
9ff482f985
Updated AdminX routing to work with and without a leading slash (#19312)
no issue
2023-12-11 14:43:06 +00:00
Ronald Langeveld
4c09a96a3c
Changed request type to fetching iframe content in previews (#19307)
refs PROD-227

- Swapped out the request type from `POST` to `GET`.
2023-12-11 14:28:35 +00:00
Jono M
8ab693d74d
Fixed wrong credentials usage in AdminX previews (#19281)
refs PROD-227
2023-12-11 14:01:53 +00:00
Sanne de Vries
61a91f7dbd
Flipped thumbs-down icon horizontally in email and Portal (#19306)
Refs https://github.com/TryGhost/static/pull/3
- This way the thumbs-down is facing the opposite direction as the
thumbs-up
2023-12-11 13:05:11 +00:00
renovate[bot]
29f9322cf3 Update dependency @types/react to v18.2.43 2023-12-11 09:49:06 +01:00
renovate[bot]
9fae565673 Update sentry-javascript monorepo to v7.86.0 2023-12-11 09:48:49 +01:00
Princi Vershwal
5cb3ec6e0b
Add offer cancle button fix (#19297)
Fixes PROD-213
2023-12-11 04:40:35 +00:00
renovate[bot]
996ca6ac87 Update dependency ts-node to v10.9.2 2023-12-09 10:51:51 +01:00
Ronald Langeveld
181c5c0920
Changed code injection to full screen editor. (#19259)
fixes PROD-7
https://ghost.slack.com/archives/C0568LN2CGJ/p1701690959138659

- Changed the code injector editor to only use the full screen editor in
its own modal.

---------

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2023-12-08 09:11:52 +02:00
Sag
1fb22c8aca
Removed hardcoded title for single free tier in Portal (#19289)
fixes PROD-68
2023-12-07 19:28:14 +00:00
renovate[bot]
e5c6b0a23f Update storybook monorepo to v7.6.4 2023-12-07 15:37:43 +01:00
renovate[bot]
1c04bdbdb2 Update dependency typescript to v5.3.3 2023-12-06 21:29:30 +01:00
Sag
a5dcae80e7
Updated copy during email verification in newsletter settings (#19265)
fixes PROD-202
2023-12-06 19:56:25 +00:00
Djordje Vlaisavljevic
813abb06e2
Moved hint content to placeholders for consistency PROD-204, PROD-203 (#19261)
refs PROD-204, PROD-203

- Moved fallback value information from hints to placeholders for
consistency and cleaner layout
- Changed setting section label
2023-12-06 17:06:21 +00:00
Simon Backx
3bc068123c
Wired up checkbox to toggle tier visibility (#19260)
fixes PROD-200
2023-12-06 17:36:18 +01:00
Simon Backx
3f6ea04c43
Added portal default plan setting (#19238)
fixes PROD-61

This adds a new default plan setting. It defaults to yearly, which is
the current default selected interval in Portal.

Behind the new portal improvements feature flag, the default plan can be
changed. It will also change automatically if the available intervals
are changed.

This PR also wires up passing the new setting to the Portal preview.
2023-12-06 11:39:58 +01:00
Princi Vershwal
a38aef7522
Validation fix (#19256)
Fixes PROD-208
2023-12-06 10:38:05 +00:00
Simon Backx
2830a0fba0 Released Portal v2.37.0 2023-12-06 11:30:47 +01:00
Princi Vershwal
60d142202b
Remove validation error once user start typing (#19251)
Ref
[PROD-15](https://linear.app/tryghost/issue/PROD-15/validation-issues)
2023-12-06 13:32:21 +05:30
Princi Vershwal
5a4d98e90d
Show Add offer button on settings screen if no offer is present (#19215)
Ref
[PROD-3](https://linear.app/tryghost/issue/PROD-3/settings-group-navigation-handling)
2023-12-06 04:31:48 +00:00
Djordje Vlaisavljevic
9eed858e8e
Added static design for toggling showing new tier in portal PROD-66 (#19242)
refs PROD-66

---------

Co-authored-by: Sag <guptazy@gmail.com>
Co-authored-by: Jono M <reason.koan@gmail.com>
Co-authored-by: Steve Larson <9larsons@gmail.com>
Co-authored-by: Daniel Lockyer <hi@daniellockyer.com>
Co-authored-by: Aileen Booker <AileenCGN@gmail.com>
2023-12-05 18:53:05 +00:00
Sag
545cf8c258
Updated logic to allow a different name for the free tier (#19229)
fixes PROD-69
2023-12-05 18:05:16 +00:00
Jono M
960fde80db
Fixed missing link on upgrade modals (#19237)
refs PROD-5
2023-12-05 14:59:49 +00:00
Sag
40c486702c
Released Portal v2.36.5 (#19236)
no issue

- this version contains a bug fix for links in signup terms. See commit
fd1a08641e
2023-12-05 13:55:22 +00:00
Sag
fd1a08641e
🐛 Fixed links in signup terms (#19235)
fixes https://github.com/TryGhost/Product/issues/4222
fixes PROD-197

- links in signup terms were not opening properly, as we open Portal
within an iframe
- the previous fix in place did not work anymore, as the HTML structure
of the signup terms has changed
2023-12-05 10:47:27 -03:00
renovate[bot]
5811dcaa41 Update Types packages 2023-12-04 22:05:57 +01:00
renovate[bot]
e2a6a83fb6 Update sentry-javascript monorepo to v7.85.0 2023-12-04 22:05:42 +01:00
renovate[bot]
a03f9ae444 Update storybook monorepo to v7.6.3 2023-12-04 21:55:05 +01:00
renovate[bot]
943ad48614 Update dependency tailwindcss to v3.3.6 2023-12-04 21:52:04 +01:00
renovate[bot]
a1c292b683 Update dependency @vitejs/plugin-react to v4.2.1 2023-12-04 19:41:11 +01:00
Djordje Vlaisavljevic
f1511e6081 Added logic for disabled state for the dropdown
refs GRO-141
2023-12-04 18:16:23 +00:00
Djordje Vlaisavljevic
7026b28e17 Added static dropdown for selecting default price plan
refs GRO-141
2023-12-04 18:16:23 +00:00
Djordje Vlaisavljevic
36294c6482 Added feature flag for portal improvements
refs GRO-154
2023-12-04 18:16:23 +00:00
Jono M
b450db557b
Updated currency field to prevent floating point issues (#19221)
refs ADM-54
2023-12-04 15:27:52 +00:00
Jono M
ede2d9c1b7
Fixed loading and error handling bugs in portal settings (#19225)
fixes ADM-31
2023-12-04 15:25:58 +00:00
Peter Zimon
be925251b8
Added "support email address" keywords (#19224)
refs.
https://linear.app/tryghost/issue/ADM-59/add-support-and-email-address-to-portal-keywords

Searching for "support email address" (or any combination of this) in
Settings resulted in an empty screen. The setting is availble under
Portal which is pretty hidden so it should at least be searchable. This
PR sets up new search keywords for support email address in Settings.
2023-12-04 14:15:10 +00:00
Jono M
d77d31a2d0
Updated to refocus settings search field upon clearing it (#19220)
fixes ADM-48
2023-12-04 12:16:22 +00:00
renovate[bot]
3267eb9843 Update dependency vite to v4.5.1 2023-12-04 12:56:21 +01:00
renovate[bot]
72ed1cdec2 Update Types packages 2023-12-04 11:06:28 +01:00
Ronald Langeveld
24ab28a8fc
Hide Offers when Stripe is disabled in AdminX (#19217)
refs ADM-56

- Hides Offers from setting menus when Stripe is disabled on Admin X settings.
2023-12-04 10:10:36 +02:00
renovate[bot]
6f3d16f75b Update dependency postcss to v8.4.32 2023-12-04 08:37:46 +01:00
renovate[bot]
de2482736e Update sentry-javascript monorepo to v7.84.0 2023-12-01 08:58:32 +01:00
Djordje Vlaisavljevic
21a1dd6b8d Updated newsletter settings form
refs GRO-111, GRO-110
2023-11-30 18:46:14 +00:00
Djordje Vlaisavljevic
26d89d421c Updated reply-to address in newsletter preview
refs GRO-110
2023-11-30 18:46:14 +00:00
renovate[bot]
65d0884363 Update tiptap monorepo to v2.1.13 2023-11-30 18:35:37 +00:00
Jono M
cc4176f0bf
Updated AdminX error handling to display validation errors correctly (#19210)
fixes ADM-44
2023-11-30 16:47:59 +00:00
Simon Backx
2809703c76
Added hint to Reply-To field in newsletter detail modal (#19209)
ref GRO-110
2023-11-30 17:09:11 +01:00
Simon Backx
226900f040
Allow custom reply-to addresses for self-hosters and allow empty values (#19200)
fixes GRO-105

The newsletter value is mapped to an empty value when shown to the
users, this matches the backend behaviour.

When entering an empty value, this is stored internally as 'newsletter'.

The replyToInput component now uses its own state for the input value.
This avoids weird issues when the rendered value changes, e.g. when
entering the text 'support' or 'newsletter' in the field.
2023-11-30 16:14:36 +01:00
Jono M
642c7f39cd
Fixed bugs with newsletter creation in admin (#19201)
refs ADM-4
2023-11-30 15:07:02 +00:00
Sag
4cc615a5d3
Updated wording in the support email verification process (#19187)
fixes GRO-87

- also updated logic to use the calculated "support_email_address" in Portal settings
2023-11-30 11:58:12 -03:00
Jono M
1b75747ca0
Fixed hardcoded private RSS URL in settings (#19199)
refs ADM-16

---------

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2023-11-30 14:45:37 +00:00
Djordje Vlaisavljevic
4284e4bcdc
Fixed default address in the hint (#19202)
fixes GRO-101
2023-11-30 15:22:41 +01:00
Sodbileg Gansukh
77e9ea987b
Design details for offers modal (#19208)
no issues

- consistent spacing between modal and preview modal
- no action button jumping between the modals
- cleaner stats section in the edit screen
2023-11-30 14:08:25 +00:00
Ronald Langeveld
802bb9bc8d
Bumped Portal to 2.36.4 (#19207)
refs https://linear.app/tryghost/issue/ADM-20/
2023-11-30 13:44:18 +00:00
Ronald Langeveld
b9c6a57d1b
Fixed Portal's Ship command (#19205)
refs https://ghost.slack.com/archives/C02G9E68C/p1701344186524289

- changed the ship command in portal to avoid checking the status of
files in all of Ghost and just checks for the status of files inside
Portal before publishing to NPM.

---------

Co-authored-by: Daniel Lockyer <hi@daniellockyer.com>
2023-11-30 15:16:56 +02:00
Sodbileg Gansukh
9edffbffee
Renamed offer stat label (#19206)
fixes ADM-34
2023-11-30 12:45:33 +00:00
Jono M
4b2c4dd2b3
Updated offers summary to find the latest three with active tiers (#19177)
fixes ADM-19
2023-11-30 10:21:16 +00:00
Ronald Langeveld
6983699e1a
🐛 Fixed slash not working in Koenig link editor (#19198)
fixes ADM-43 https://github.com/TryGhost/Product/issues/4213

- The slash '/' search was firing when it wasn't suppose to, eg via the
URL editor inside the minimal koenig editors.
- this fix makes sure that if any input field has focus, that the slash
search function doesn't get fired.
2023-11-30 12:16:05 +02:00
Simon Backx
c07218dff4
Fixed reply-to dropdown when custom address was set (#19197)
fixes GRO-103

When a custom reply-to address was set using one of the new flags, and
those flags were disabled - the dropdown showed an empty value and
saving was broken because of this value.

This change automatically reverts back to 'newsletter' as a default
value when editing a newsletter with an invalid reply-to value.
2023-11-30 09:58:27 +00:00
Sodbileg Gansukh
d6e535d3b0
Moved the action buttons to top on offers list screen (#19195)
fixes ADM-42
2023-11-30 09:25:23 +00:00
Simon Backx
ab21b8ae1d
Allowed custom/empty replyTo for newsletters with managed sending domain (#19183)
fixes GRO-75
fixes GRO-100

And allow them to be empty
2023-11-30 09:16:03 +00:00
Sodbileg Gansukh
79081686b1
Disabled backdrop click for offers modals (#19194)
refs ADM-37

- backdrop click should be disabled for modals, especially when modals
contain user editable fields
- to make things consistent, all offers related modals are not closeable
by backdrop clicking
2023-11-30 08:56:29 +00:00
Sodbileg Gansukh
cdfe3843c3
Simplified offers modal navigation (#19193)
fixes ADM-36

- removed the breadcrumbs from the preview modals
- fixed spacing of button group
2023-11-30 07:49:58 +00:00
Sodbileg Gansukh
9914eb753b
Offers modal and preview improvements (#19192)
fixes ADM-20

- increased the width of the modals
- smaller width for the portal preview for better balance
2023-11-30 05:43:37 +00:00
Sodbileg Gansukh
ebd3014919
Fixed preview visibility in PreviewModal (#19191)
fixes ADM-22

- the mobile tab bar is shown within screen size of 800px and below
- this makes the preview visbility consistent with the mobile screen size range
2023-11-30 04:46:10 +00:00
Sodbileg Gansukh
63774463ce
Simplified offers list screen in AdminX (#19190)
fixes ADM-40

- removed layout switch feature, and made the list layout default
- removed the help link, because it will no longer be necessary on the
list screen
- fixed offers count in the table header
2023-11-30 04:23:48 +00:00
Sodbileg Gansukh
49eaee40f2
Settings overview improvements for offers in AdminX (#19189)
fixes ADM-38
2023-11-30 03:17:17 +00:00
Sodbileg Gansukh
d318093f55
Reorganized add and edit forms of offers in AdminX (#19188)
refs ADM-33, ADM-34, ADM-35
2023-11-30 10:35:55 +08:00
Sag
22c6527c49
Moved helpers for newsletter emails into a separate util (#19185)
no issue
2023-11-29 18:35:33 +00:00
Djordje Vlaisavljevic
57e767860d
Put newsletter preview header changes behind newEmailAddresses flag GRO-102 (#19184)
refs GRO-102
2023-11-29 16:57:51 +00:00
John O'Nolan
440c804213
Added notice of upcoming removal of AMP (#19178)
Google AMP is on the way out. In Ghost 5.0 we changed the integration's
default state to be `disabled`, and we have planned to remove it
completely in Ghost 6.0 for a while — but we haven't shared this
anywhere.

@gergelyorosz bumped into this today:
https://twitter.com/GergelyOrosz/status/1729778093777100973

This PR is to start communicating our intent to remove AMP in the next
major release of Ghost, by adding inline messaging to the integration
settings in Ghost Admin
2023-11-29 15:22:33 +00:00
Sodbileg Gansukh
e33fe08469
Fixed amount off dropdown selector position during validation error (#19176)
fixes ADM-29
2023-11-29 14:29:13 +00:00
Ronald Langeveld
9a6d71884b
Set negative pricing in Offers index to 0 (#19174)
fixes ADM-24

- sets a negative amount to 0
- this usually occurs if the tier amount was changed after the offer has
been created.
2023-11-29 16:10:10 +02:00
Sag
f8ad5fb2ea
Updated Portal to use calculated support and default email addresses (#19163)
fixes GRO-72

- added "default_email_address" and "support_email_address" to the
public settings
- when available, use these addresses in Portal. Otherwise, fallback to
current logic
2023-11-29 09:48:05 -03:00
Sodbileg Gansukh
babbca1c19
Design improvements for offers success screen (#19172)
fixes ADM-25

- added an input field above the copy link button for more explicity
- consistent text for social media sharing
2023-11-29 12:43:57 +00:00
Sodbileg Gansukh
614574a44d
Added a label to the SortMenu component to make it more explicit (#19171)
fixes ADM-21
2023-11-29 20:12:02 +08:00
Ronald Langeveld
2f43f58010
Fixed flaky Offers tests (#19170)
refs https://ghost.slack.com/archives/C02G9E68C/p1701258027793649

- missing an `await` before the `expect` in the test causing it to be potentially flaky.
2023-11-29 13:55:54 +02:00
renovate[bot]
d5f3b26e87 Update sentry-javascript monorepo to v7.83.0 2023-11-29 12:29:34 +01:00
Simon Backx
3ef427a504
Fixed displaying empty from address in newsletter preview (#19169)
no issue

When the from address of a newsletter is empty, and a custom sending
domain is setup the preview would display 'From: Sitename ()' instead of
'From: Sitename (default@address)'.

When a custom sending domain was setup, but a different from address was
saved, we'll also no longer display it in the input fields - as it will
also be ignored IRL.
2023-11-29 10:59:53 +00:00
Ronald Langeveld
d3b0a26e4d
Updated Acceptance Tests for Offers in Admin X (#19167)
no issue

- Updated acceptance testing for offers in AdminX
2023-11-29 10:32:31 +00:00
Djordje Vlaisavljevic
494e0918fd
Updated newsletter settings GRO-76 GRO-90 (#19155)
refs GRO-76, GRO-90

- Reused `renderReplyToEmail` and `renderSenderEmail` from
`NewsletterDetailModal.tsx` like Simon suggested
- Changed Newsletter preview header in Newsletter settings to show
Reply-to address instead of the “To” mock placeholder
- When no custom sending domain is set, switched “Sender email address”
to disabled TextField for better visual rhythm
- Added a link to the help doc for (Pro) users without custom sending
domain set (the doc itself will still need to be updated though, but Sam
and the gang are already aware of this)
- When custom sending domain is set, added a hint about the default
value, which IMO is clearer than using a placeholder
2023-11-29 09:53:08 +00:00
Ronald Langeveld
adace14beb
Added v-param to portal base URL in Offers-X (#19166)
no issue

- fixed the double `/` slash that's parsing the href url.
- also added a v-param.
2023-11-29 08:02:25 +00:00
Simon Backx
5d8d8cee0a Released @tryghost/portal@2.36.3 2023-11-28 16:18:01 +01:00
Simon Backx
57d43d2d72 🐛 Fixed Portal default page handling
fixes GRO-88

Instead of going to the previous page when visiting /#/portal, it will now go to the default page:
- Sign up if you are not signed in
- Account home if you are signed in

Previously, it had the same behaviour, with the difference that it would also go to the previous page if there was any.
2023-11-28 16:18:01 +01:00
Sodbileg Gansukh
9ae45adda1
Added sorting direction option to individual sort option (#19154)
no issues

- SortMenu component used to have only one global default direction
option, however, the sorting options needed individual default sorting
direction. e.g. desc for created data, or asc for name etc
- this adds an optional sorting direction option to sorting options, so
when they're defined, they'd override the global default sorting
direction
2023-11-28 09:32:13 +00:00
Ronald Langeveld
9f3c644e2a
Added validation to Offers X input fields (#19153)
refs https://github.com/TryGhost/Product/issues/4206

- added validation to input fields when creating a new offer
2023-11-28 07:59:53 +00:00
Sag
54ee8d3389
Updated newsletter email verification to render the verified address (#19148)
refs GRO-80
- added a new meta field "email_verified" to the /verification endpoint
for newsletters. This meta field contains which email has been verified,
"sender_email" or "sender_reply_to"
- updated copy in newsletter settings, based on which email has been
verified
2023-11-27 18:28:57 +00:00
Sodbileg Gansukh
2f0cd97011 Added a message to offers tied to an archived tier 2023-11-27 21:48:17 +08:00
Sodbileg Gansukh
b9de456026
Better no offers handling in offers list screen (#19138)
no issues

- active/archived tabs are no longer hidden, they're always visible
regardless of if there's an offer or not
- same for the modal footer, it's always visible
- used a simple NoValueLabel component instead of custom no offers view
2023-11-27 09:01:47 +00:00
Ronald Langeveld
b9d7c2d3a5
Fixed portal not loading on deep linking to Add new Offer (#19137)
no issue

- fixed an issue that caused the portal iframe embed not to load when
visiting the `offers/add` url directly.
2023-11-27 10:51:05 +02:00
Sodbileg Gansukh
c2ee21a345 Added frontend validation to the offers add/edit modals in AdminX 2023-11-27 15:08:32 +08:00
Sodbileg Gansukh
b111b7c719 Improved mobile styles for the offers in AdminX 2023-11-27 14:17:58 +08:00
Ronald Langeveld
d729e7aa21
Fixed exit route on offers modal (#19126)
no issue

- when clicking outside the Edit or Add modal, it would clear the modal,
but not the route. This modifies the route to clear as well.
2023-11-24 12:18:50 +00:00
Ronald Langeveld
62b71fb4c0
Fixed offers index pricing decimals (#19125)
no issue

- changes the price tags on the offer cards to two decimal places.
2023-11-24 14:06:19 +02:00
Ronald Langeveld
41ee387af2
Fixed Offers portal preview edge cases (#19124)
no issue

- cleaned up offers portal preview.
- fixes a few logic errors and potential edge cases and making it easier
to maintain.
2023-11-24 12:32:45 +02:00
Sag
819ddccc72
Fixed validation and edge cases for managed email UI (#19121)
refs GRO-73

- fixed validation for reply-to address
- fixed rendering of default values for reply-to and sender-from fields
- added a temporary generic message for the verification confirmation,
so that it's compatible with both reply-to and from address changes. The
message will be improved in a follow-up commit (pending an API change).
2023-11-23 22:30:28 +00:00
Peter Zimon
8a5e9fb9f6
Admin X Design System docs (#19120)
refs. https://github.com/TryGhost/Product/issues/4169

- Added Layout documentation to design system
- Added note about usage of Toast component
2023-11-23 16:18:59 +01:00
Jono M
759848caad
Remove Toaster from AdminX demo (#19119)
no issue

It's already rendered by `DesignSystemApp` so we shouldn't need to add
it explicitly.
2023-11-23 14:59:36 +00:00
Simon Backx
a037ce3dde
Added calculated email address settings (#19115)
fixes GRO-73

We need to avoid duplicating the complex logic for determining the
default email address and the support email address. So these are now
exposed as calculated settings.
2023-11-23 13:07:15 +00:00
Jono M
a8083960d8
Added test examples to AdminX demo (#19116)
refs https://github.com/TryGhost/Product/issues/4182

Updated framework to include shared test config for easier app setup.
2023-11-23 12:59:48 +00:00
Sodbileg Gansukh
17804dd3ac Various design fixes for offers in Adminx 2023-11-23 17:15:03 +08:00
Peter Zimon
7f451b2627
Admin X demo detail page (#19105)
refs. https://github.com/TryGhost/Product/issues/4169

- the detail page for the Admin X proto app was empty
- the asc/desc selector of the SortMenu component in the design system needed a bit of refinement
- page toolbar was not set
2023-11-23 08:18:41 +01:00
Princi Vershwal
876f13c075
Fixed no offer screen and tab view
Ref: https://github.com/TryGhost/Product/issues/4188
2023-11-23 07:01:53 +00:00
Sag
ff70ffec67
Updated newsletter settings UI for managed email (#19082)
refs GRO-59
refs GRO-56
refs GRO-52

- When email is managed without a custom domain, do not allow the Sender
Email address to be changed, but allow Reply-to address to be changed to
any address the publisher can verify
- When email is managed with a custom domain, allow both Sender and
Reply-to addresses to be changed without verification, but not their
domain names

---------

Co-authored-by: Djordje Vlaisavljevic <dzvlais@gmail.com>
2023-11-23 02:07:14 +00:00
Princi Vershwal
4f518153aa
Fixed offers for archive tiers 2023-11-22 18:42:24 +00:00
Peter Zimon
82a775086c
Admin X design system updates (#19102)
refs. https://github.com/TryGhost/Product/issues/4169

- some of the new components were not prepared for mobile sizes and dark
mode
- Storybook settings had to be updated to include mobile sizes that
reflect the actual system
2023-11-22 15:53:23 +00:00
Jono M
9848469568
Added detail page routing to AdminX demo app (#19101)
refs https://github.com/TryGhost/Product/issues/4183
2023-11-22 15:43:03 +00:00
Jono M
f19f32b132
Moved AdminX test config to framework package (#19096)
refs https://github.com/TryGhost/Product/issues/4180
2023-11-22 13:39:32 +00:00
Ronald Langeveld
cc6e881342
Wired latest offer cards to Offers settings group in Admin. (#19095)
refs https://github.com/TryGhost/Product/issues/4176

- wired up Offer data points to the offer cards in the grouped setting.
2023-11-22 13:18:04 +00:00
Peter Zimon
6b46c828e7
Admin X demo app content (#19079)
refs. https://github.com/TryGhost/Product/issues/4169

- Added demo content for POC AdminX demo app
2023-11-22 13:44:39 +01:00
renovate[bot]
8d0b9cd269 Update Types packages 2023-11-22 12:24:36 +01:00
Princi Vershwal
0a20df65b5
Added fix for no offer screen (#19092) 2023-11-22 10:35:40 +00:00
Sodbileg Gansukh
2cd248b5bf Added no offers view to the offers list screen in AdminX
refs https://github.com/TryGhost/Product/issues/4177
2023-11-22 18:00:45 +08:00
Sodbileg Gansukh
d76b739f1e Added latest offer cards to the Offers setting group
refs https://github.com/TryGhost/Product/issues/4176
2023-11-22 17:05:32 +08:00
Princi Vershwal
5587192644
Wiring up sorting to offers in AdminX
Ref: https://github.com/TryGhost/Product/issues/4162
2023-11-22 14:14:44 +05:30
Jono M
32dacd9ff7
Fixed provider ordering to prevent bugs loading modals on refresh (#19089)
refs https://github.com/TryGhost/Product/issues/4174
2023-11-22 07:51:10 +00:00
Ronald Langeveld
8038c5854e
🐛 Fixed About modal dev experiments info in Settings (#19087)
refs https://ghost.slack.com/archives/C0568LN2CGJ/p1700617587979039

- Fixes an issue where dev experiments data shows up in the settings
About modal while it's disabled. Now it will only shows that info when it's
enabled.
2023-11-22 06:28:31 +00:00
renovate[bot]
b275450bec Update Types packages 2023-11-21 15:06:56 +01:00
renovate[bot]
56d18edf0e Update sentry-javascript monorepo to v7.81.1 2023-11-21 15:05:41 +01:00
Ronald Langeveld
b5c3def92b
Fixed Offers not saving fixed amount discount (#19077)
no issue

- Offers with a fixed amount wasn't saving due to the type not updating
from percent to fixed.
2023-11-21 12:31:28 +00:00
Ronald Langeveld
3a68d78217
Fixed offers list not updating when adding offer (#19075)
no issue

- fixes an issue where the offers list doesn't get updated when a new
offer is added to the list.
2023-11-21 13:27:52 +02:00
Simon Backx
b6519e0f1f
Removed usage of unquoted ids in filter strings (#19070)
fixes GRO-34
fixes GRO-33

This is a revision of a previous commit, that broke the browser tests
because changes in the data generator (requiring bookshelf had side
effects).

This adds a new way to run all tests with enforced numeric ObjectIDs.
These numeric ids cause issues if they are used withing NQL filters. So
they surface tiny bugs in our codebase.

You can run tests using this option via:
NUMERIC_IDS=1 yarn test:e2e

Removed some defensive logic that could be explained by this discovered
issue.
2023-11-21 09:45:36 +01:00
Ronald Langeveld
dca11d0eeb
Added last redeemed UI (#19069)
refs https://github.com/TryGhost/Product/issues/4153

- wired up the last redeemed date to the Offers edit stats
- added the direct link to the pre-filtered list members by offered
used.
2023-11-21 10:31:06 +02:00
Sodbileg Gansukh
820a7c664f Fixed offer amount select width issue 2023-11-21 16:02:23 +08:00