Commit Graph

35957 Commits

Author SHA1 Message Date
Sam Lord
4ff467794f Entirely rewrote data generator to simplify codebase
refs: https://github.com/TryGhost/DevOps/issues/11

This is a pretty huge commit, but the relevant points are:
* Each importer no longer needs to be passed a set of data, it just gets the data it needs
* Each importer specifies its dependencies, so that the order of import can be determined at runtime using a topological sort
* The main data generator function can just tell each importer to import the data it has

This makes working on the data generator much easier.

Some other benefits are:
* Batched importing, massively speeding up the whole process
* `--tables` to set the exact tables you want to import, and specify the quantity of each
2023-08-04 13:36:09 +01:00
Jono M
cf947bc4d6
Optimised react-query caching to prevent excessive requests (#17595)
refs https://github.com/TryGhost/Product/issues/3349
2023-08-04 12:24:19 +01:00
Peter Zimon
77cc6df64a
AdminX Newsletters refinements (#17594)
refs. https://github.com/TryGhost/Product/issues/3601

- added tableCell hover pointer cursor
- updated Stripe connect button copy
- added bottom margin to main container for better scrolling / navigation highlighting
2023-08-04 11:42:54 +02:00
Djordje Vlaisavljevic
24ea4c0fb9
Updated Tips&Donations portal success and loading states design (#17592)
refs https://github.com/TryGhost/Product/issues/3677

- Updated portal loading design when user clicks on a Tips&Donations
link
- Removed "Retry" button from error state and added "Close"
2023-08-03 22:46:26 +01:00
Djordje Vlaisavljevic
be7a2d0aec
Updated Tips & donations settings design (#17591)
refs https://github.com/TryGhost/Product/issues/3667

- Moved Tips&Donations out of `SignupFormEmbed` component and into its
own component
- Removed the enable/disable toggle for Tips&Donations and added
Expand/Close button instead
2023-08-03 22:37:25 +01:00
Sag
7f6de07b1e
Removed unconsistent success state from the donation page (#17590)
refs https://github.com/TryGhost/Product/issues/3650
2023-08-03 21:00:42 +00:00
Sag
7e9b2d4883
Fixed donations checkout for logged-off readers (#17589)
closes https://github.com/TryGhost/Product/issues/3663
2023-08-03 20:45:57 +00:00
Sag
19bdb0efef
Added migrations for Tips & Donations' settings (#17576)
closes https://github.com/TryGhost/Product/issues/3668

- Tips and Donations feature offers two settings: "donations_currency", and "donations_suggested_amount"
    - "donation_currency": the currency to be used for the donation. Defaults to "USD", not nullable.
    - "donation_suggested_amount": an anchor price for the donation. Defaults to 0, not nullable.
- Both settings belong to a new group "donations"

Tech Spec: https://www.notion.so/ghost/Tech-Spec-5cd6929f7960462ebcbf198176e0d899?pvs=4#6e8b34c45f0c4c78b48c9e7725a307c8
2023-08-03 22:13:47 +02:00
John O'Nolan
c06ba9bec9
2023 (2) 2023-08-03 21:04:20 +01:00
John O'Nolan
265e62229f
2023 2023-08-03 20:40:44 +01:00
Jono M
21f57c5ab5
Added remaining wiring to AdminX Newsletters (#17587)
refs https://github.com/TryGhost/Product/issues/3601

- Wired up add newsletter modal
- Fixed bugs with editing newsletters
- Added archive/reactivate modals
2023-08-03 17:26:59 +00:00
Peter Zimon
d960b1284d
Added enable newsletter toggle in AdminX settings (#17582)
refs. https://github.com/TryGhost/Product/issues/3601

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
2023-08-03 17:32:30 +01:00
Steve Larson
af7ce52708
Added source to beta editor feedback (#17586)
no refs
- will return post, page, or settings
2023-08-03 10:10:31 -05:00
Djordje Vlaisavljevic
f26203f8cb
Updated Tips & donations settings (#17585)
refs https://github.com/TryGhost/Product/issues/3667

- Updated Tips & Donations settings with improved copy and more compact
layout
2023-08-03 15:28:11 +01:00
Michael Barrett
262c6be70f
🐛 Fixed member filtering on newsletter subscription status (#17583)
fixes https://github.com/TryGhost/Product/issues/3684

The `nql` used for filtering newsletter members needed tweaking to make
sure the provided query was parsed as a single `AND` query. This commit
also fixes an issue where on page reload the filters were not being
applied correctly
2023-08-03 13:26:19 +01:00
Ghost CI
81ef2ade39 Merged v5.57.3 into main 2023-08-03 10:25:36 +00:00
Ghost CI
34b6f1917f v5.57.3 2023-08-03 10:25:34 +00:00
Fabien "egg" O'Carroll
148cf059dc Disabled Collections sync when flag disabled
We've been seeing an increased number of database queries, which are potentially
caused by the collections syncing logic. Whilst we haven't narrowed the cause
down precisely we want to disable this logic unless the flag is enabled.
2023-08-03 11:08:25 +01:00
Jono M
c46761199b
Cleaned up AdminX API handling (#17571)
refs https://github.com/TryGhost/Product/issues/3349

- Simplified a few more places after switching to react-query
- Improved how mocking works in specs to be more scalable as the number
of queries increases
2023-08-03 09:29:14 +01:00
Djordje Vlaisavljevic
423607872c
Updated Tips & donations membership settings design (#17579)
refs https://github.com/TryGhost/Product/issues/3667

- Added static design for Tips & Donations settings with feature toggle,
default amount, currency and link
2023-08-02 22:44:52 +01:00
Steve Larson
c539417e89
🐛 Fixed bookmark card metadata styles (#17577)
refs TryGhost/Product#3609
- author and publisher styles were mixed up in mobiledoc
- made consistent for author coming after publisher for md and lexical
- updated renderer packages
2023-08-02 14:13:25 -05:00
Ghost CI
e2a6d8b987 Merged v5.57.2 into main 2023-08-02 15:12:37 +00:00
Ghost CI
afce648fd7 v5.57.2 2023-08-02 15:12:35 +00:00
Steve Larson
6936007052
🐛 Updated gscan error handling for page errors (#17575)
refs https://github.com/TryGhost/Product/issues/3676

- add filter for sidebar display of theme errors (angry red box)
- filter specific to each page feature, will need to add each one by this approach
2023-08-02 09:56:40 -05:00
Fabien "egg" O'Carroll
2cd50d47af 🐛 Fixed superfluous DB queries on Collection save
We have a global hook for the bookshelf-relations plugin which updates the
sort_order for pivot tables when saving the parent model. This hook requires
that we fetch each row in the pivot table related to the model and then run an
update on each one. Since we have a "latest" Collection this means at least N
update queries where N is the number of Posts for a site. For large sites this
was crippling the database. We only need the sort_order to be updated for
Collections with a type of "manual". We currently don't have a way to disable
the update based on model attributes, so instead we have disabled the update for
all Collections - this is okay because 1. Collections is not released and 2. we
don't have full support for manual Collections yet anyway.
2023-08-02 15:19:47 +01:00
Peter Zimon
e5f36b6bef
AdminX Newsletter settings refinements (#17569)
refs. https://github.com/TryGhost/Product/issues/3601

- new newsletter modal needed to be added to be able to create newsletters
- design refinements in AdminX newsletter list and preview modal
2023-08-02 16:10:50 +02:00
Fabien "egg" O'Carroll
9d3cc0cf65 Bumbed nx to 16.6.0
I was having issues running Ghost locally with nx and this fixed them for me.
2023-08-02 12:05:58 +01:00
Jono M
64d52d736a
Updated AdminX settings to link from the usual footer button (#17567)
refs https://github.com/TryGhost/Product/issues/3349

Now that we're a bit further, we can open AdminX settings from the usual
gearwheel button when the Labs flag is enabled instead of having a
separate navigation item
2023-08-02 11:43:06 +02:00
Jono M
8000df963b
Temporarily fixed eslint rules being disabled in AdminX (#17565)
no issue
2023-08-02 08:37:51 +01:00
Fabien 'egg' O'Carroll
2b9e322b3e
Reverted "Disabled the Ghost-CLI Github Action" (#17562)
This reverts commit 5103b58c0c.

- We only disabled this so that we could release v5.57.1
2023-08-01 20:21:10 +00:00
Ghost CI
f839c2289c Merged v5.57.1 into main 2023-08-01 19:57:00 +00:00
Ghost CI
c81baebdbb v5.57.1 2023-08-01 19:56:59 +00:00
Fabien "egg" O'Carroll
5103b58c0c Disabled the Ghost-CLI Github Action
This action was failing and stopping us from releasing a patch release.
The failure was a false negative, and due to what we believe is a cache issue.
2023-08-01 20:44:04 +01:00
Fabien 'egg' O'Carroll
ada5b838a5
🐛 Fixed custom routing with collections (#17561)
When we updated the way we handled NQL filter expansion, we broke custom
routing collections. This reverts the change and fixes custom routing.
2023-08-01 19:54:41 +01:00
Djordje Vlaisavljevic
172479c987
Updated Tips & Donations success and error states (#17559)
refs https://github.com/TryGhost/Product/issues/3672,
https://github.com/TryGhost/Product/issues/3673

- Updates design for success and error states of Tips & Donations
checkout flow
2023-08-01 19:48:02 +01:00
Jono M
d42200d252
Wired up AdminX newsletter list and editing (#17556)
refs https://github.com/TryGhost/Product/issues/3601
2023-08-01 18:24:23 +01:00
Sag
4e0f52a7cb
Updated cancelation URL for donations (#17555)
refs https://github.com/TryGhost/Product/issues/3650
- also adds an await on the .json() call
2023-08-01 15:19:15 +00:00
Sag
6d85ea4425
Added redirect after a successful donation (#17551)
refs https://github.com/TryGhost/Product/issues/3650
2023-08-01 12:39:59 +00:00
Jono M
c17b44613b
Added Stripe Connect & Direct flows to AdminX (#17549)
refs https://github.com/TryGhost/Product/issues/3608
2023-08-01 11:10:40 +01:00
Naz
346eeef2e3 Removed flatUrls labs flag
refs 4372a7e1a8

- We ended up developing a proper customizable routing on the `arch` branch. This flag is obsolete.
2023-08-01 15:13:15 +08:00
Naz
7464dbc1af Added e2e test coverage for bulk collection edits
refs https://github.com/TryGhost/Arch/issues/16

- Makes sure post bulk actions also update collection posts
2023-08-01 15:11:00 +08:00
Naz
aaf0998129 Fixed transaction completion error on collection update
refs https://github.com/TryGhost/Arch/issues/16

- Without an extra await in the update function the passed in transaction would complete before all updates had a chance to run within this transaction.
2023-08-01 15:11:00 +08:00
Naz
fe4c0b18cf Removed unnecessary getBulk in PostsRepository
refs https://github.com/TryGhost/Arch/issues/16

- The method ended up being used only once, so it makes no sense to complicate the interface without any gain.
2023-08-01 15:11:00 +08:00
Naz
8635f4efeb Added collections handling for PostsBulkFeaturedEvent/PostsBulkUnfeaturedEvent
refs https://github.com/TryGhost/Arch/issues/16

- When posts produce PostsBulkFeaturedEvent/PostsBulkUnfeaturedEvent the collections having a featured filter should update the posts belonging to them.
2023-08-01 15:11:00 +08:00
Naz
8046c33194 Added collections handling for PostsBulkUnpublishedEvent
refs https://github.com/TryGhost/Arch/issues/16

- When posts produce PostsBulkUnpublishedEvent the collections having a published_at filter should update the posts belonging to them
2023-08-01 15:11:00 +08:00
Naz
8c05d80b99 Added test illustrating date filtering for InMemoryRepository
refs https://github.com/TryGhost/Arch/issues/16
refs https://github.com/kofrasa/mingo/issues/39

- When using in-memory repository we sometimes need to compare dates. We have to explicitly use ISOString formatting for dates to make filter work by the Mongo spec  - https://www.mongodb.com/docs/manual/reference/method/Date/
2023-08-01 15:11:00 +08:00
Naz
a44d4a24d3 Fixed "any" types for Knex transaction objects
no issue

- We should use specific types wherever possible instead of "any" as it's an antipattern that spreads like cancer through the codebase.
2023-08-01 15:11:00 +08:00
Naz
18a4fa8cd9 Added bulk posts action events dispatching
refs https://github.com/TryGhost/Arch/issues/16

- Allows to subscribe to bulk unpublish/featured/unfeatured DomainEvents elsewhere in the system, for example, Collections.
2023-08-01 15:11:00 +08:00
Naz
f4143a8939 Fixed build scripts for post-events package 2023-08-01 15:11:00 +08:00
Naz
9b257f3966 Update of collection posts on bulk destroy
refs https://github.com/TryGhost/Arch/issues/16

- When the bulk destroy is done on posts Collections need to know about the update and remove the stored posts from collections.
2023-08-01 15:11:00 +08:00