Commit Graph

77 Commits

Author SHA1 Message Date
Oluwaseun Olorunsola
bd266ed403 Add personalization tags support for email-post preview and send test mails
MAILPOET-6323
2025-01-29 08:42:48 +01:00
Rostislav Wolny
dd2c88dfbe Add service for checking editor dependencies
[MAILPOET-6367]
2025-01-09 19:31:49 +01:00
Rostislav Wolny
8466897f28 Fix missing block gap above top level blocks in post content
The condition for top level wrappers was too strong and was
causing that top level blocks in post-content block were also skipped.
It seeks that 0 !== $key is sufficent.
[MAILPOET-6334]
2024-12-31 14:09:12 +01:00
Rostislav Wolny
1fbfcf0fb0 Update the default global style background and font color
[MAILPOET-6334]
2024-12-31 14:09:12 +01:00
Rostislav Wolny
30f11dc9cc Use registered email post types for templates instead of hardcoded mailpoet_email
The general email template is registered and works with all post types that are
marked as email post types during editor initialization.
[MAILPOET-6356]
2024-12-20 15:14:30 +01:00
Rostislav Wolny
9b9187bb3e Move the template_id construction logic to Templates class
[MAILPOET-6356]
2024-12-20 15:14:30 +01:00
Rostislav Wolny
2e661f8b8e Remove code that is no longer necessary for the templates to work
[MAILPOET-6356]
2024-12-20 15:14:30 +01:00
Rostislav Wolny
2fc0ad3c9e Switch template registration to use register_block_template
[MAILPOET-6356]
2024-12-20 15:14:30 +01:00
Jan Lysý
e4c80a09b6 Add new Personalization Tag property defining value to insert
[MAILPOET-6376]
2024-12-20 10:12:04 +01:00
Jan Lysý
a570fa1641 Wrap personalization Tag token with square brackets
Because Gutenberg RichText component does not render square brackets around the HTML comment.
We need to append those brackets to tag tokens and expected them when we replace tags by their values.
[MAILPOET-6354]
2024-12-18 14:15:05 +01:00
Jan Lysý
bcc07c7503 Add API endpoint returning registered personalization tags
[MAILPOET-6354]
2024-12-18 14:15:05 +01:00
Rostislav Wolny
c64e4caf27 Remove styles data added to templates REST API response
We no longer need to send CSS for every template because we use global styles
live from the editor.
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Rostislav Wolny
ebe7151269 Remove code related to template themes
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Rostislav Wolny
1e1bec4ce0 Use user theme in renderer instead of template themes
We no longer read styles associate with templates when we render an email
but we read the user theme instead
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Rostislav Wolny
15818f37ef Add user theme post cleanup to integration tests
This commit adds automatic cleanup of the user theme post before every test
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Rostislav Wolny
993cbb4fd7 Run cleanup after each integration test
This is needed to get rid of posts created in tests to prevent test interdependency
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Rostislav Wolny
0f7009438c Add User_Theme class for managing user-defined styles and settings
[MAILPOET-6335]
2024-12-17 10:36:39 +01:00
Oluwaseun Olorunsola
a5f0dbc2a3 Fix PHPStan and update git-blame-ignore 2024-12-03 09:32:42 +01:00
Oluwaseun Olorunsola
64b550e27d Update Theme_Controller_Test, add case for loading theme.json file
MAILPOET-6043
2024-12-02 14:21:54 +01:00
Oluwaseun Olorunsola
5d6d7eba57 Add template integration tests
MAILPOET-6043
2024-12-02 14:21:54 +01:00
Oluwaseun Olorunsola
6df51455d2 Fix PHPStan errors
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
ccc3f9ab28 Ensure phpstan exit code is passed along to the shell window and address some pr comments
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
5ce9008f90 Fix PHPStan class-string errors
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
0ac7a1ee02 Fix Bootstrap file IntegrationTesterActions.php does not exist.
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
6066fd6321 Automatically fix fixable code style lint errors
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
325c4c74f4 Fix PHPStan errors for Email editor PHP package integration test folder
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Oluwaseun Olorunsola
a4ad960492 Fix PHPStan errors for Email editor PHP package unit test folder
MAILPOET-6318
2024-12-02 08:44:22 +01:00
Jan Lysý
9b0880c0ef Refactor HTML_Tag_Processor_Test integration test
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
1c20730817 Improve comments across Personalization Tags classes
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
f95688ca70 Add new class Personalization_Tag
The new class contains all necessary data to replace token with personalized value.
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
829905a0f5 Move Personalizer to a different namespace
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
7aad021735 Add Personalization Tags support for title
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
a761799c61 Add new class Personalizer managing tags replacement
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
806e960190 Add new class extending WP_HTML_Tag_Processor
The new class allows replacing tokens which is necessary for Personalization Tags implementation.
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Jan Lysý
aab08fa5ab Add personalization-tag-registry class
The new class which allows register Personalization Tags and then read them.
[MAILPOET-6328]
2024-11-28 15:01:04 +01:00
Rostislav Wolny
beb2994a71 Fix php8.2 deprecation warnings in email editor integration tests
[MAILPOET-6244]
2024-11-22 17:40:25 +01:00
Rostislav Wolny
bbbc21a5d5 Update email-editor unit tests
We need to require autoload manually because codeception is no longer part of the package
[MAILPOET-6244]
2024-11-22 17:40:25 +01:00
Rostislav Wolny
e74e1ef2a2 Register email patterns directly in plugin
[MAILPOET-6243]
2024-11-22 08:45:46 +01:00
Rostislav Wolny
5885077838 Register only email content email pattern category
As for now, pattern categories are hardcoded in the engine.
[MAILPOET-6243]
2024-11-22 08:45:46 +01:00
Rostislav Wolny
b52304179e Remove Cdn_Asset_Url class
[MAILPOET-6243]
2024-11-22 08:45:46 +01:00
Rostislav Wolny
c06779acbb Introduce hooks for registering patterns for email editor
To get rid of hardcoded MailPoet-specific patterns from the editor package
We need to introduce an API to register the patterns and their categories.

Patterns have to be defined as extenders of Abstract_Pattern.

[MAILPOET-6243]
2024-11-22 08:45:46 +01:00
Pavel Dohnal
d68e1c7960 Add Renderer class tests
[MAILPOET-6043]
2024-11-20 09:48:56 +01:00
Pavel Dohnal
97729b21ae Add Content Renderer test for blocks rendering
[MAILPOET-6043]
2024-11-20 09:48:56 +01:00
Oluwaseun Olorunsola
58f1af7920 Move Send_Preview_Email class to Engine folder and update tests
MAILPOET-6092
2024-11-18 15:28:31 +01:00
Oluwaseun Olorunsola
5969e3438e Add and update tests for Send preview email
MAILPOET-6092
2024-11-18 15:28:31 +01:00
Jan Lysý
65948c8033 Add mock esc_html into unit test bootstrap
[MAILPOET-6240]
2024-11-08 14:06:45 +01:00
Jan Lysý
853bf6fcfe Migrate integration tests in Integrations directory to WordPress Coding Standard
[MAILPOET-6240]
2024-11-08 14:06:45 +01:00
Jan Lysý
e69666776d Migrate integration tests in Engine directory to WordPress Coding Standard
[MAILPOET-6240]
2024-11-08 14:06:45 +01:00
Jan Lysý
0c781be938 Migrate integration tests bootstrap file to WordPress Coding Standard
[MAILPOET-6240]
2024-11-08 14:06:45 +01:00
Jan Lysý
c6f6eeef53 Add excluded rule for tests to avoid repetition
Our tests use method _after and _before, so we would need to add ignore to each usage.
[MAILPOET-6240]
2024-11-08 14:06:45 +01:00