Skip to content

Commit

Permalink
refactor #16257 Extract base form types for every entity used in Admi…
Browse files Browse the repository at this point in the history
…nBundle (NoResponseMate, TheMilek)

This PR was merged into the 2.0 branch.

Discussion
----------

| Q               | A
|-----------------|-----
| Branch?         |  2.0 <!-- see the comment below -->
| Bug fix?        | no
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no <!-- don't forget to update the UPGRADE-*.md file -->
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.12 or 1.13 branches
 - Features and deprecations must be submitted against the 1.14 branch
 - Features, removing deprecations and BC breaks must be submitted against the 2.0 branch
 - Make sure that the correct base branch is set

 To be sure you are not breaking any Backward Compatibilities, check the documentation:
 https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
Based on #16238


Commits
-------

8c212e4 [Admin] Extract an admin-only ProductType
c06c8bd Extract admin-only CatalogPromotionType
1601e03 Extract admin-only ChannelType
22972b3 Extract admin-only CountryType
b25e22b Extract admin-only ProductVariantsGenerateType
aa30003 Extract admin-only ZoneType
592f1ea Extract admin-only ShippingMethodType
8ef9c28 Extract admin-only AddressType
aef65d0 Correct twig components forms after rebase
d5fb466 correct wrong service id
d17f950 Update forms in routing config
2980eec Resolve block prefixes
1bd52b1 update forms in twig ocmponents
0a98422 make the forms config in alphabetical order
ef3462d Review fixes
  • Loading branch information
GSadee committed May 23, 2024
2 parents b6199bc + ef3462d commit 694dcba
Show file tree
Hide file tree
Showing 101 changed files with 846 additions and 1,116 deletions.
22 changes: 11 additions & 11 deletions src/Sylius/Behat/Element/Admin/CatalogPromotion/FormElement.php
Original file line number Diff line number Diff line change
Expand Up @@ -204,20 +204,20 @@ protected function getDefinedElements(): array
return array_merge(parent::getDefinedElements(), [
'add_action_button' => '[data-test-actions] [data-test-add-%type%]',
'add_scope_button' => '[data-test-scopes] [data-test-add-%type%]',
'channels' => '#sylius_catalog_promotion_channels',
'description' => '[name="sylius_catalog_promotion[translations][%locale_code%][description]"]',
'enabled' => '#sylius_catalog_promotion_enabled',
'end_date_date' => '#sylius_catalog_promotion_endDate_date',
'end_date_time' => '#sylius_catalog_promotion_endDate_time',
'exclusive' => '#sylius_catalog_promotion_exclusive',
'channels' => '#sylius_admin_catalog_promotion_channels',
'description' => '[name="sylius_admin_catalog_promotion[translations][%locale_code%][description]"]',
'enabled' => '#sylius_admin_catalog_promotion_enabled',
'end_date_date' => '#sylius_admin_catalog_promotion_endDate_date',
'end_date_time' => '#sylius_admin_catalog_promotion_endDate_time',
'exclusive' => '#sylius_admin_catalog_promotion_exclusive',
'form' => '[data-live-name-value="sylius_admin:catalog_promotion:form"]',
'label' => '[name="sylius_catalog_promotion[translations][%locale_code%][label]"]',
'label' => '[name="sylius_admin_catalog_promotion[translations][%locale_code%][label]"]',
'last_action' => '[data-test-actions] [data-test-entry-row]:last-child',
'last_scope' => '[data-test-scopes] [data-test-entry-row]:last-child',
'name' => '#sylius_catalog_promotion_name',
'priority' => '#sylius_catalog_promotion_priority',
'start_date_date' => '#sylius_catalog_promotion_startDate_date',
'start_date_time' => '#sylius_catalog_promotion_startDate_time',
'name' => '#sylius_admin_catalog_promotion_name',
'priority' => '#sylius_admin_catalog_promotion_priority',
'start_date_date' => '#sylius_admin_catalog_promotion_startDate_date',
'start_date_time' => '#sylius_admin_catalog_promotion_startDate_time',
]);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public function getPeriod(): int
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'discounted_products_checking_period' => '#sylius_channel_channelPriceHistoryConfig_lowestPriceForDiscountedProductsCheckingPeriod',
'discounted_products_checking_period' => '#sylius_admin_channel_channelPriceHistoryConfig_lowestPriceForDiscountedProductsCheckingPeriod',
]);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,12 @@ public function hasBillingAddress(string $street, string $postcode, string $city
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'city' => '#sylius_channel_shopBillingData_city',
'company' => '#sylius_channel_shopBillingData_company',
'country_code' => '#sylius_channel_shopBillingData_countryCode',
'postcode' => '#sylius_channel_shopBillingData_postcode',
'street' => '#sylius_channel_shopBillingData_street',
'tax_id' => '#sylius_channel_shopBillingData_taxId',
'city' => '#sylius_admin_channel_shopBillingData_city',
'company' => '#sylius_admin_channel_shopBillingData_company',
'country_code' => '#sylius_admin_channel_shopBillingData_countryCode',
'postcode' => '#sylius_admin_channel_shopBillingData_postcode',
'street' => '#sylius_admin_channel_shopBillingData_street',
'tax_id' => '#sylius_admin_channel_shopBillingData_taxId',
]);
}
}
48 changes: 24 additions & 24 deletions src/Sylius/Behat/Element/Admin/Promotion/FormElement.php
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,8 @@ public function selectAutocompleteRuleOptions(array $values, ?string $channelCod
{
$count = count($this->getElement('rules')->findAll('css', '[data-test-entry-row]'));
$locator = $channelCode ?
sprintf('#sylius_promotion_rules_%d_configuration_%s select', $count - 1, $channelCode) :
sprintf('#sylius_promotion_rules_%d_configuration select', $count - 1)
sprintf('#sylius_admin_promotion_rules_%d_configuration_%s select', $count - 1, $channelCode) :
sprintf('#sylius_admin_promotion_rules_%d_configuration select', $count - 1)
;
foreach ($values as $value) {
$this->autocompleteHelper->selectByName(
Expand All @@ -168,7 +168,7 @@ public function selectAutocompleteRuleOptions(array $values, ?string $channelCod
public function selectAutocompleteActionFilterOptions(array $values, string $channelCode, string $filterType): void
{
$count = count($this->getElement('actions')->findAll('css', '[data-test-entry-row]'));
$locator = sprintf('#sylius_promotion_actions_%d_configuration_%s_filters_%s_filter select', $count - 1, $channelCode, $filterType);
$locator = sprintf('#sylius_admin_promotion_actions_%d_configuration_%s_filters_%s_filter select', $count - 1, $channelCode, $filterType);
foreach ($values as $value) {
$this->autocompleteHelper->selectByName(
$this->getDriver(),
Expand Down Expand Up @@ -217,31 +217,31 @@ public function getValidationMessageForTranslation(string $element, string $loca
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'action_amount' => '#sylius_promotion_actions_0_configuration_WEB-US_amount',
'actions' => '#sylius_promotion_actions',
'action_amount' => '#sylius_admin_promotion_actions_0_configuration_WEB-US_amount',
'actions' => '#sylius_admin_promotion_actions',
'add_action_button' => '[data-test-actions] [data-test-add-%type%]',
'add_rule_button' => '[data-test-rules] [data-test-add-%type%]',
'applies_to_discounted' => '#sylius_promotion_appliesToDiscounted',
'channels' => '#sylius_promotion_channels',
'code' => '#sylius_promotion_code',
'coupon_based' => '#sylius_promotion_couponBased',
'ends_at_date' => '#sylius_promotion_endsAt_date',
'ends_at_time' => '#sylius_promotion_endsAt_time',
'exclusive' => '#sylius_promotion_exclusive',
'applies_to_discounted' => '#sylius_admin_promotion_appliesToDiscounted',
'channels' => '#sylius_admin_promotion_channels',
'code' => '#sylius_admin_promotion_code',
'coupon_based' => '#sylius_admin_promotion_couponBased',
'ends_at_date' => '#sylius_admin_promotion_endsAt_date',
'ends_at_time' => '#sylius_admin_promotion_endsAt_time',
'exclusive' => '#sylius_admin_promotion_exclusive',
'form' => '[data-live-name-value="sylius_admin:promotion:form"]',
'label' => '[name="sylius_promotion[translations][%locale_code%][label]"]',
'label' => '[name="sylius_admin_promotion[translations][%locale_code%][label]"]',
'last_action' => '[data-test-actions] [data-test-entry-row]:last-child',
'last_rule' => '[data-test-rules] [data-test-entry-row]:last-child',
'minimum' => '#sylius_promotion_actions_0_configuration_WEB-US_filters_price_range_filter_min',
'maximum' => '#sylius_promotion_actions_0_configuration_WEB-US_filters_price_range_filter_max',
'name' => '#sylius_promotion_name',
'priority' => '#sylius_promotion_priority',
'rule_count' => '#sylius_promotion_rules_0_configuration_count',
'rules' => '#sylius_promotion_rules',
'starts_at_date' => '#sylius_promotion_startsAt_date',
'starts_at_time' => '#sylius_promotion_startsAt_time',
'minimum' => '#sylius_admin_promotion_actions_0_configuration_WEB-US_filters_price_range_filter_min',
'maximum' => '#sylius_admin_promotion_actions_0_configuration_WEB-US_filters_price_range_filter_max',
'name' => '#sylius_admin_promotion_name',
'priority' => '#sylius_admin_promotion_priority',
'rule_count' => '#sylius_admin_promotion_rules_0_configuration_count',
'rules' => '#sylius_admin_promotion_rules',
'starts_at_date' => '#sylius_admin_promotion_startsAt_date',
'starts_at_time' => '#sylius_admin_promotion_startsAt_time',
'translation_tab' => '[data-test-promotion-translations-accordion="%locale_code%"]',
'usage_limit' => '#sylius_promotion_usageLimit',
'usage_limit' => '#sylius_admin_promotion_usageLimit',
]);
}

Expand All @@ -257,7 +257,7 @@ private function getChannelConfigurationOfLastAction(string $channelCode): NodeE
TabsHelper::switchTab($this->getSession(), $lastAction, $channelCode);

return $lastAction
->find('css', sprintf('[id^="sylius_promotion_actions_"][id$="_configuration_%s"]', $channelCode))
->find('css', sprintf('[id^="sylius_admin_promotion_actions_"][id$="_configuration_%s"]', $channelCode))
;
}

Expand All @@ -274,7 +274,7 @@ private function getChannelConfigurationOfLastRule(string $channelCode): NodeEle

return $lastRule->find(
'css',
sprintf('[id^="sylius_promotion_rules_"][id$="_configuration_%s"]', $channelCode),
sprintf('[id^="sylius_admin_promotion_rules_"][id$="_configuration_%s"]', $channelCode),
);
}
}
18 changes: 9 additions & 9 deletions src/Sylius/Behat/Element/Admin/ShippingMethod/FormElement.php
Original file line number Diff line number Diff line change
Expand Up @@ -150,21 +150,21 @@ protected function getDefinedElements(): array
{
return [
'add_rule_button' => '[data-test-rules] [data-test-add-%type%]',
'calculator' => '#sylius_shipping_method_calculator',
'calculator_configuration_amount' => '#sylius_shipping_method_configuration_%channelCode%_amount',
'calculator' => '#sylius_admin_shipping_method_calculator',
'calculator_configuration_amount' => '#sylius_admin_shipping_method_configuration_%channelCode%_amount',
'calculator_configuration_channel_tab' => '[data-test-calculator-configuration] [data-test-channel-tab="%channelCode%"]',
'calculator_configuration_channel_tab_content' => '[data-test-calculator-configuration] [data-test-channel-tab-content="%channelCode%"]',
'channel' => '[name="sylius_shipping_method[channels][]"][value="%channelCode%"]',
'code' => '#sylius_shipping_method_code',
'description' => '#sylius_shipping_method_translations_%localeCode%_description',
'enabled' => '#sylius_shipping_method_enabled',
'channel' => '[name="sylius_admin_shipping_method[channels][]"][value="%channelCode%"]',
'code' => '#sylius_admin_shipping_method_code',
'description' => '#sylius_admin_shipping_method_translations_%localeCode%_description',
'enabled' => '#sylius_admin_shipping_method_enabled',
'form' => '[data-live-name-value="sylius_admin:shipping_method:form"]',
'last_rule' => '[data-test-rules] [data-test-entry-row]:last-child',
'last_rule_amount' => '[data-test-rules] [data-test-entry-row]:last-child [id$="_configuration_%channelCode%_amount"]',
'last_rule_weight' => '[data-test-rules] [data-test-entry-row]:last-child [id$="_configuration_weight"]',
'name' => '#sylius_shipping_method_translations_%localeCode%_name',
'position' => '#sylius_shipping_method_position',
'zone' => '#sylius_shipping_method_zone',
'name' => '#sylius_admin_shipping_method_translations_%localeCode%_name',
'position' => '#sylius_admin_shipping_method_position',
'zone' => '#sylius_admin_shipping_method_zone',
];
}

Expand Down
18 changes: 9 additions & 9 deletions src/Sylius/Behat/Page/Admin/Administrator/FormAwareTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -109,15 +109,15 @@ protected function getDefinedFormElements(): array
{
return [
'avatar_image' => '[data-test-avatar-image]',
'field_avatar' => '#sylius_admin_user_avatar_file',
'field_email' => '#sylius_admin_user_email',
'field_enabled' => '#sylius_admin_user_enabled',
'field_first_name' => '#sylius_admin_user_firstName',
'field_last_name' => '#sylius_admin_user_lastName',
'field_locale_code' => '#sylius_admin_user_localeCode',
'field_name' => '#sylius_admin_user_username',
'field_password' => '#sylius_admin_user_plainPassword',
'field_username' => '#sylius_admin_user_username',
'field_avatar' => '#sylius_admin_admin_user_avatar_file',
'field_email' => '#sylius_admin_admin_user_email',
'field_enabled' => '#sylius_admin_admin_user_enabled',
'field_first_name' => '#sylius_admin_admin_user_firstName',
'field_last_name' => '#sylius_admin_admin_user_lastName',
'field_locale_code' => '#sylius_admin_admin_user_localeCode',
'field_name' => '#sylius_admin_admin_user_username',
'field_password' => '#sylius_admin_admin_user_plainPassword',
'field_username' => '#sylius_admin_admin_user_username',
];
}
}
4 changes: 2 additions & 2 deletions src/Sylius/Behat/Page/Admin/CatalogPromotion/CreatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ class CreatePage extends BaseCreatePage implements CreatePageInterface
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_catalog_promotion_code',
'name' => '#sylius_catalog_promotion_name',
'code' => '#sylius_admin_catalog_promotion_code',
'name' => '#sylius_admin_catalog_promotion_name',
]);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ protected function getCodeElement(): NodeElement
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_catalog_promotion_code',
'code' => '#sylius_admin_catalog_promotion_code',
]);
}
}
6 changes: 3 additions & 3 deletions src/Sylius/Behat/Page/Admin/Channel/FormTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ public function getDefinedFormElements(): array
'color' => '[data-test-color]',
'contact_email' => '[data-test-contact-email]',
'contact_phone_number' => '[data-test-contact-phone-number]',
'countries' => '#sylius_channel_countries',
'currencies' => '#sylius_channel_currencies',
'default_locale' => '#sylius_channel_defaultLocale',
'countries' => '#sylius_admin_channel_countries',
'currencies' => '#sylius_admin_channel_currencies',
'default_locale' => '#sylius_admin_channel_defaultLocale',
'default_tax_zone' => '[data-test-default-tax-zone]',
'discounted_products_checking_period' => '[data-test-lowest-price-for-discounted-products-checking-period]',
'enabled' => '[data-test-enabled]',
Expand Down
4 changes: 2 additions & 2 deletions src/Sylius/Behat/Page/Admin/Currency/CreatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ public function specifyExchangeRate(float $exchangeRate): void
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_currency_code',
'exchangeRate' => '#sylius_currency_exchangeRate',
'code' => '#sylius_admin_currency_code',
'exchangeRate' => '#sylius_admin_currency_exchangeRate',
]);
}
}
6 changes: 3 additions & 3 deletions src/Sylius/Behat/Page/Admin/Currency/UpdatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ protected function getToggleableElement(): NodeElement
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_currency_code',
'enabled' => '#sylius_currency_enabled',
'exchangeRate' => '#sylius_currency_exchangeRate',
'code' => '#sylius_admin_currency_code',
'enabled' => '#sylius_admin_currency_enabled',
'exchangeRate' => '#sylius_admin_currency_exchangeRate',
]);
}
}
16 changes: 8 additions & 8 deletions src/Sylius/Behat/Page/Admin/Customer/CreatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,12 @@ public function chooseGroup(string $group): void

public function selectCreateAccount(): void
{
$this->getDocument()->find('css', 'label[for=sylius_customer_createUser]')->click();
$this->getDocument()->find('css', 'label[for=sylius_admin_customer_createUser]')->click();
}

public function hasPasswordField(): bool
{
return null !== $this->getDocument()->find('css', '#sylius_customer_user_plainPassword');
return null !== $this->getDocument()->find('css', '#sylius_admin_customer_user_plainPassword');
}

public function hasCheckedCreateOption(): bool
Expand All @@ -69,7 +69,7 @@ public function hasCheckedCreateOption(): bool

public function hasCreateOption(): bool
{
return null !== $this->getDocument()->find('css', '#sylius_customer_createUser');
return null !== $this->getDocument()->find('css', '#sylius_admin_customer_createUser');
}

public function isUserFormHidden(): bool
Expand All @@ -80,11 +80,11 @@ public function isUserFormHidden(): bool
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'create_customer_user' => '#sylius_customer_createUser',
'email' => '#sylius_customer_email',
'first_name' => '#sylius_customer_firstName',
'last_name' => '#sylius_customer_lastName',
'password' => '#sylius_customer_user_plainPassword',
'create_customer_user' => '#sylius_admin_customer_createUser',
'email' => '#sylius_admin_customer_email',
'first_name' => '#sylius_admin_customer_firstName',
'last_name' => '#sylius_admin_customer_lastName',
'password' => '#sylius_admin_customer_user_plainPassword',
'user_form' => '#user-form',
]);
}
Expand Down
14 changes: 7 additions & 7 deletions src/Sylius/Behat/Page/Admin/Customer/UpdatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -92,13 +92,13 @@ protected function getToggleableElement(): NodeElement
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'email' => '#sylius_customer_email',
'enabled' => '#sylius_customer_user_enabled',
'first_name' => '#sylius_customer_firstName',
'group' => '#sylius_customer_group',
'last_name' => '#sylius_customer_lastName',
'password' => '#sylius_customer_user_password',
'verified_at' => '#sylius_customer_user_verifiedAt',
'email' => '#sylius_admin_customer_email',
'enabled' => '#sylius_admin_customer_user_enabled',
'first_name' => '#sylius_admin_customer_firstName',
'group' => '#sylius_admin_customer_group',
'last_name' => '#sylius_admin_customer_lastName',
'password' => '#sylius_admin_customer_user_password',
'verified_at' => '#sylius_admin_customer_user_verifiedAt',
]);
}
}
4 changes: 2 additions & 2 deletions src/Sylius/Behat/Page/Admin/CustomerGroup/CreatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ class CreatePage extends BaseCreatePage implements CreatePageInterface
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_customer_group_code',
'name' => '#sylius_customer_group_name',
'code' => '#sylius_admin_customer_group_code',
'name' => '#sylius_admin_customer_group_name',
]);
}
}
4 changes: 2 additions & 2 deletions src/Sylius/Behat/Page/Admin/CustomerGroup/UpdatePage.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ protected function getCodeElement(): NodeElement
protected function getDefinedElements(): array
{
return array_merge(parent::getDefinedElements(), [
'code' => '#sylius_customer_group_code',
'name' => '#sylius_customer_group_name',
'code' => '#sylius_admin_customer_group_code',
'name' => '#sylius_admin_customer_group_name',
]);
}
}
Loading

0 comments on commit 694dcba

Please sign in to comment.