diff --git a/vendor/magento/module-customer-custom-attributes/view/frontend/layout/customer_account_edit.xml b/vendor/magento/module-customer-custom-attributes/view/frontend/layout/customer_account_edit.xml
index 7824cbd91186..6b2b4869c893 100644
--- a/vendor/magento/module-customer-custom-attributes/view/frontend/layout/customer_account_edit.xml
+++ b/vendor/magento/module-customer-custom-attributes/view/frontend/layout/customer_account_edit.xml
@@ -23,6 +23,7 @@
                     <argument name="code" xsi:type="string">Magento\Customer\Model\Customer</argument>
                 </action>
                 <arguments>
+                    <argument name="button_lock_manager" xsi:type="object">Magento\Framework\View\Element\ButtonLockManager</argument>
                     <argument name="view_model" xsi:type="object">CustomerFileAttribute</argument>
                 </arguments>
             </block>
diff --git a/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/edit.phtml b/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/edit.phtml
index 7d2543c73854..59f2bfa4b5e8 100644
--- a/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/edit.phtml
+++ b/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/edit.phtml
@@ -5,6 +5,13 @@
  */
 
 /** @var Magento\CustomerCustomAttributes\Block\Form $block */
+if (!$block->getButtonLockManager()) {
+    $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
+    $block->setButtonLockManager(
+        $objectManager->get(\Magento\Framework\View\Element\ButtonLockManager::class)
+    );
+}
+/** @var $escaper \Magento\Framework\Escaper */
 
 use Magento\Customer\Block\Widget\Dob;
 use Magento\Customer\Block\Widget\Gender;
@@ -14,11 +21,11 @@ use Magento\Customer\Block\Widget\Taxvat;
 ?>
 <form class="form form-edit-account" action="<?= /* @noEscape */ $block->getUrl('customer/account/editPost') ?>"
       method="post" id="form-validate" enctype="multipart/form-data"
-      data-hasrequired="<?= $block->escapeHtml(__('* Required Fields')) ?>" autocomplete="off"
+      data-hasrequired="<?= $escaper->escapeHtml(__('* Required Fields')) ?>" autocomplete="off"
 >
     <fieldset class="fieldset info">
         <?= $block->getBlockHtml('formkey') ?>
-        <legend class="legend"><span><?= $block->escapeHtml(__('Account Information')) ?></span></legend><br>
+        <legend class="legend"><span><?= $escaper->escapeHtml(__('Account Information')) ?></span></legend><br>
         <?= $block->getLayout()->createBlock(Name::class)->setObject($block->getCustomer())->toHtml() ?>
 
         <?php $_dob = $block->getLayout()->createBlock(Dob::class) ?>
@@ -35,19 +42,19 @@ use Magento\Customer\Block\Widget\Taxvat;
         <?php endif ?>
         <div class="field choice">
             <input type="checkbox" name="change_email" id="change-email" data-role="change-email" value="1"
-                   title="<?= $block->escapeHtmlAttr(__('Change Email')) ?>" class="checkbox"
+                   title="<?= $escaper->escapeHtmlAttr(__('Change Email')) ?>" class="checkbox"
             />
             <label class="label" for="change-email">
-                <span><?= $block->escapeHtml(__('Change Email')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Change Email')) ?></span>
             </label>
         </div>
         <div class="field choice">
             <input type="checkbox" name="change_password" id="change-password" data-role="change-password" value="1"
-                   title="<?= $block->escapeHtmlAttr(__('Change Password')) ?>"
+                   title="<?= $escaper->escapeHtmlAttr(__('Change Password')) ?>"
                 <?php if ($block->getChangePassword()): ?> checked="checked"<?php endif; ?> class="checkbox"
             />
             <label class="label" for="change-password">
-                <span><?= $block->escapeHtml(__('Change Password')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Change Password')) ?></span>
             </label>
         </div>
         <?php $userDefinedAttributes = $block->getLayout()->getBlock('customer_form_user_attributes'); ?>
@@ -64,21 +71,21 @@ use Magento\Customer\Block\Widget\Taxvat;
 
     <fieldset class="fieldset password" data-container="change-email-password">
         <legend class="legend">
-            <span data-title="change-email-password"><?= $block->escapeHtml(__('Change Email and Password')) ?></span>
+            <span data-title="change-email-password"><?= $escaper->escapeHtml(__('Change Email and Password')) ?></span>
         </legend><br>
         <div class="field email required" data-container="change-email">
-            <label class="label" for="email"><span><?= $block->escapeHtml(__('Email')) ?></span></label>
+            <label class="label" for="email"><span><?= $escaper->escapeHtml(__('Email')) ?></span></label>
             <div class="control">
                 <input type="email" autocomplete="email" name="email" id="email" data-input="change-email"
-                       value="<?= $block->escapeHtml($block->getCustomer()->getEmail()) ?>"
-                       title="<?= $block->escapeHtmlAttr(__('Email')) ?>" class="input-text"
+                       value="<?= $escaper->escapeHtml($block->getCustomer()->getEmail()) ?>"
+                       title="<?= $escaper->escapeHtmlAttr(__('Email')) ?>" class="input-text"
                        data-validate="{required:true, 'validate-email':true}"
                 />
             </div>
         </div>
         <div class="field password current required">
             <label class="label" for="current-password">
-                <span><?= $block->escapeHtml(__('Current Password')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Current Password')) ?></span>
             </label>
             <div class="control">
                 <input type="password" class="input-text" name="current_password" id="current-password"
@@ -88,21 +95,21 @@ use Magento\Customer\Block\Widget\Taxvat;
         </div>
         <div class="field new password required" data-container="new-password">
             <label class="label" for="password">
-                <span><?= $block->escapeHtml(__('New Password')) ?></span>
+                <span><?= $escaper->escapeHtml(__('New Password')) ?></span>
             </label>
             <div class="control">
                 <?php $minCharacterSets = $block->getRequiredCharacterClassesNumber() ?>
                 <input type="password" class="input-text" name="password" id="password"
-                       data-password-min-length="<?= $block->escapeHtml($block->getMinimumPasswordLength()) ?>"
-                       data-password-min-character-sets="<?= $block->escapeHtml($minCharacterSets) ?>"
+                       data-password-min-length="<?= $escaper->escapeHtml($block->getMinimumPasswordLength()) ?>"
+                       data-password-min-character-sets="<?= $escaper->escapeHtml($minCharacterSets) ?>"
                        data-input="new-password"
                        data-validate="{required:true, 'validate-customer-password':true}"
                        autocomplete="off" />
                 <div id="password-strength-meter-container" data-role="password-strength-meter" aria-live="polite">
                     <div id="password-strength-meter" class="password-strength-meter">
-                        <?= $block->escapeHtml(__('Password Strength')) ?>:
+                        <?= $escaper->escapeHtml(__('Password Strength')) ?>:
                         <span id="password-strength-meter-label" data-role="password-strength-meter-label">
-                            <?= $block->escapeHtml(__('No Password')) ?>
+                            <?= $escaper->escapeHtml(__('No Password')) ?>
                         </span>
                     </div>
                 </div>
@@ -110,7 +117,7 @@ use Magento\Customer\Block\Widget\Taxvat;
         </div>
         <div class="field confirm password required" data-container="confirm-password">
             <label class="label" for="password-confirmation">
-                <span><?= $block->escapeHtml(__('Confirm New Password')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Confirm New Password')) ?></span>
             </label>
             <div class="control">
                 <input type="password" class="input-text" name="password_confirmation" id="password-confirmation"
@@ -129,13 +136,16 @@ use Magento\Customer\Block\Widget\Taxvat;
 
     <div class="actions-toolbar">
         <div class="primary">
-            <button type="submit" class="action save primary" title="<?= $block->escapeHtmlAttr(__('Save')) ?>">
-                <span><?= $block->escapeHtml(__('Save')) ?></span>
+            <button type="submit" class="action save primary" title="<?= $escaper->escapeHtmlAttr(__('Save')) ?>"
+                <?php if ($block->getButtonLockManager()->isDisabled('customer_edit_form_submit')): ?>
+                    disabled="disabled"
+                <?php endif; ?>>
+                <span><?= $escaper->escapeHtml(__('Save')) ?></span>
             </button>
         </div>
         <div class="secondary">
-            <a class="action back" href="<?= $block->escapeUrl($block->getBackUrl()) ?>">
-                <span><?= $block->escapeHtml(__('Go back')) ?></span>
+            <a class="action back" href="<?= $escaper->escapeUrl($block->getBackUrl()) ?>">
+                <span><?= $escaper->escapeHtml(__('Go back')) ?></span>
             </a>
         </div>
     </div>
@@ -174,9 +184,9 @@ use Magento\Customer\Block\Widget\Taxvat;
     {
         "[data-role=change-email], [data-role=change-password]": {
             "changeEmailPassword": {
-                "titleChangeEmail": "<?= $block->escapeJs(__('Change Email')) ?>",
-                "titleChangePassword": "<?= $block->escapeJs(__('Change Password')) ?>",
-                "titleChangeEmailAndPassword": "<?= $block->escapeJs(__('Change Email and Password')) ?>"
+                "titleChangeEmail": "<?= $escaper->escapeJs(__('Change Email')) ?>",
+                "titleChangePassword": "<?= $escaper->escapeJs(__('Change Password')) ?>",
+                "titleChangeEmailAndPassword": "<?= $escaper->escapeJs(__('Change Email and Password')) ?>"
             }
         },
         "*": {
diff --git a/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/register.phtml b/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/register.phtml
index 70d10a3f1d16..3af26582422f 100644
--- a/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/register.phtml
+++ b/vendor/magento/module-customer-custom-attributes/view/frontend/templates/customer/form/register.phtml
@@ -11,8 +11,13 @@
 /**
  * Create account form template
  *
- * @var $block \Magento\Customer\Block\Form\Register
- */
+ * @var $block \Magento\Customer\Block\Form\Register */
+if (!$block->getButtonLockManager()) {
+    $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
+    $block->setButtonLockManager(
+        $objectManager->get(\Magento\Framework\View\Element\ButtonLockManager::class)
+    );
+}
 ?>
 <?= $block->getChildHtml('form_fields_before') ?>
 <?php /* Extensions placeholder */ ?>
@@ -25,11 +30,9 @@ $directoryHelper = $block->getData('directoryHelper');
 $formData = $block->getFormData();
 /** @var \Magento\CustomerCustomAttributes\ViewModel\Address\RegionProvider $regionProvider */
 $regionProvider = $block->getRegionProvider();
-/** @var \Magento\Customer\ViewModel\CreateAccountButton $createAccountButtonViewModel */
-$createAccountButtonViewModel = $block->getData('create_account_button_view_model');
 ?>
 <form class="form create account form-create-account"
-      action="<?= $block->escapeUrl($block->getPostActionUrl()) ?>"
+      action="<?= $escaper->escapeUrl($block->getPostActionUrl()) ?>"
       method="post"
       id="form-validate"
       enctype="multipart/form-data"
@@ -37,9 +40,9 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
     <?= /* @noEscape */ $block->getChildHtml('form_fields_before_in_form') ?>
     <?= /* @noEscape */ $block->getBlockHtml('formkey'); ?>
     <fieldset class="fieldset create info">
-        <legend class="legend"><span><?= $block->escapeHtml(__('Personal Information')) ?></span></legend><br>
-        <input type="hidden" name="success_url" value="<?= $block->escapeUrl($block->getSuccessUrl()) ?>"/>
-        <input type="hidden" name="error_url" value="<?= $block->escapeUrl($block->getErrorUrl()) ?>"/>
+        <legend class="legend"><span><?= $escaper->escapeHtml(__('Personal Information')) ?></span></legend><br>
+        <input type="hidden" name="success_url" value="<?= $escaper->escapeUrl($block->getSuccessUrl()) ?>"/>
+        <input type="hidden" name="error_url" value="<?= $escaper->escapeUrl($block->getErrorUrl()) ?>"/>
         <?= $block->getLayout()->createBlock(\Magento\Customer\Block\Widget\Name::class)
             ->setObject($formData)
             ->setForceUseCustomerAttributes(true)
@@ -50,13 +53,13 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
         <div class="field choice newsletter">
             <input type="checkbox"
                    name="is_subscribed"
-                   title="<?= $block->escapeHtmlAttr(__('Sign Up for Newsletter')) ?>"
+                   title="<?= $escaper->escapeHtmlAttr(__('Sign Up for Newsletter')) ?>"
                    value="1"
                    id="is_subscribed"
                 <?php if ($formData->getIsSubscribed()): ?> checked="checked"<?php endif; ?>
                    class="checkbox"/>
             <label for="is_subscribed" class="label">
-                <span><?= $block->escapeHtml(__('Sign Up for Newsletter')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Sign Up for Newsletter')) ?></span>
             </label>
         </div>
             <?php /* Extensions placeholder */ ?>
@@ -92,7 +95,7 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
 
 <?php if ($block->getShowAddressFields()): ?>
     <fieldset class="fieldset address">
-        <legend class="legend"><span><?= $block->escapeHtml(__('Address Information')) ?></span></legend><br>
+        <legend class="legend"><span><?= $escaper->escapeHtml(__('Address Information')) ?></span></legend><br>
         <input type="hidden" name="create_address" value="1"/>
         <div class="field company">
             <label for="company" class="label">
@@ -102,8 +105,8 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
                 <input type="text"
                        name="company"
                        id="company"
-                       value="<?= $block->escapeHtml($formData->getCompany()) ?>"
-                       title="<?= $block->escapeHtml(__('Company')) ?>"
+                       value="<?= $escaper->escapeHtml($formData->getCompany()) ?>"
+                       title="<?= $escaper->escapeHtml(__('Company')) ?>"
                        class="input-text <?= /* @noEscape */ $addressHelper->getAttributeValidationClass('company') ?>"
                 />
             </div>
@@ -117,7 +120,7 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
                 <input type="text"
                        name="telephone"
                        id="telephone"
-                       value="<?= $block->escapeHtml($formData->getTelephone()) ?>"
+                       value="<?= $escaper->escapeHtml($formData->getTelephone()) ?>"
                        title="<?= /* @noEscape */ $block->getAttributeData()->getFrontendLabel('telephone') ?>"
                        class="input-text <?= /* @noEscape */ $phoneValidationClass ?>"/>
             </div>
@@ -132,8 +135,8 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
             <div class="control">
                 <input type="text"
                        name="street[0]"
-                       value="<?= $block->escapeHtml($formData->getStreetLine(1)) ?>"
-                       title="<?= $block->escapeHtml(__('Street Address')) ?>"
+                       value="<?= $escaper->escapeHtml($formData->getStreetLine(1)) ?>"
+                       title="<?= $escaper->escapeHtml(__('Street Address')) ?>"
                        id="street_1"
                        class="input-text <?= /* @noEscape */ $_streetValidationClass ?>"/>
                 <div class="nested">
@@ -141,13 +144,13 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
                 <?php for ($_i = 2, $_n = $addressHelper->getStreetLines(); $_i <= $_n; $_i++): ?>
                     <div class="field additional">
                         <label class="label" for="street_<?= /* @noEscape */ $_i ?>">
-                            <span><?= $block->escapeHtml(__('Street Address %1', $_i)) ?></span>
+                            <span><?= $escaper->escapeHtml(__('Street Address %1', $_i)) ?></span>
                         </label>
                         <div class="control">
                             <input type="text"
                                    name="street[<?= /* @noEscape */ $_i ?>]"
-                                   value="<?= $block->escapeHtml($formData->getStreetLine($_i - 1)) ?>"
-                                   title="<?= $block->escapeHtml(__('Street Address %1', $_i)) ?>"
+                                   value="<?= $escaper->escapeHtml($formData->getStreetLine($_i - 1)) ?>"
+                                   title="<?= $escaper->escapeHtml(__('Street Address %1', $_i)) ?>"
                                    id="street_<?= /* @noEscape */ $_i ?>"
                                    class="input-text <?= /* @noEscape */ $_streetValidationClass ?>"/>
                         </div>
@@ -164,7 +167,7 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
             <div class="control">
                 <input type="text"
                        name="city"
-                       value="<?= $block->escapeHtmlAttr($formData->getCity()) ?>"
+                       value="<?= $escaper->escapeHtmlAttr($formData->getCity()) ?>"
                        title="<?= /* @noEscape */ $block->getAttributeData()->getFrontendLabel('city') ?>"
                        class="input-text <?= /* @noEscape */ $addressHelper->getAttributeValidationClass('city') ?>"
                        id="city"/>
@@ -181,13 +184,13 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
                         title="<?= /* @noEscape */ $block->getAttributeData()->getFrontendLabel('region') ?>"
                         class="validate-select region_id">
                     <option value="">
-                        <?= $block->escapeHtml(__('Please select a region, state or province.')) ?>
+                        <?= $escaper->escapeHtml(__('Please select a region, state or province.')) ?>
                     </option>
                 </select>
                 <input type="text"
                        id="region"
                        name="region"
-                       value="<?= $block->escapeHtml($block->getRegion()) ?>"
+                       value="<?= $escaper->escapeHtml($block->getRegion()) ?>"
                        title="<?= /* @noEscape */ $block->getAttributeData()->getFrontendLabel('region') ?>"
                        class="input-text <?= /* @noEscape */ $addressHelper->getAttributeValidationClass('region') ?>"/>
             </div>
@@ -211,7 +214,7 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
                 <?php $zipValidationClass = $addressHelper->getAttributeValidationClass('postcode'); ?>
                 <input type="text"
                        name="postcode"
-                       value="<?= $block->escapeHtml($formData->getPostcode()) ?>"
+                       value="<?= $escaper->escapeHtml($formData->getPostcode()) ?>"
                        title="<?= /* @noEscape */ $block->getAttributeData()->getFrontendLabel('postcode') ?>"
                        id="zip"
                        class="input-text validate-zip-international <?= /* @noEscape */ $zipValidationClass ?>"
@@ -256,39 +259,40 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
     </fieldset>
 
 <?php endif; ?>
-    <fieldset class="fieldset create account" data-hasrequired="<?= $block->escapeHtmlAttr(__('* Required Fields')) ?>">
-        <legend class="legend"><span><?= $block->escapeHtml(__('Sign-in Information')) ?></span></legend><br>
+    <fieldset class="fieldset create account"
+              data-hasrequired="<?= $escaper->escapeHtmlAttr(__('* Required Fields')) ?>">
+        <legend class="legend"><span><?= $escaper->escapeHtml(__('Sign-in Information')) ?></span></legend><br>
         <div class="field required">
-            <label for="email_address" class="label"><span><?= $block->escapeHtml(__('Email')) ?></span></label>
+            <label for="email_address" class="label"><span><?= $escaper->escapeHtml(__('Email')) ?></span></label>
             <div class="control">
                 <input type="email"
                        name="email"
                        id="email_address"
                        autocomplete="email"
-                       value="<?= $block->escapeHtml($formData->getEmail()) ?>"
-                       title="<?= $block->escapeHtml(__('Email')) ?>"
+                       value="<?= $escaper->escapeHtml($formData->getEmail()) ?>"
+                       title="<?= $escaper->escapeHtml(__('Email')) ?>"
                        class="input-text"
                        data-validate="{required:true, 'validate-email':true}"/>
             </div>
         </div>
         <div class="field password required">
-            <label for="password" class="label"><span><?= $block->escapeHtml(__('Password')) ?></span></label>
+            <label for="password" class="label"><span><?= $escaper->escapeHtml(__('Password')) ?></span></label>
             <div class="control">
-                <?php $requiredCharacterClassesNumber = $block->escapeHtmlAttr(
+                <?php $requiredCharacterClassesNumber = $escaper->escapeHtmlAttr(
                     $block->getRequiredCharacterClassesNumber()
                 ); ?>
                 <input type="password" name="password" id="password"
-                       title="<?= $block->escapeHtmlAttr(__('Password')) ?>"
+                       title="<?= $escaper->escapeHtmlAttr(__('Password')) ?>"
                        class="input-text"
-                       data-password-min-length="<?= $block->escapeHtmlAttr($block->getMinimumPasswordLength()) ?>"
+                       data-password-min-length="<?= $escaper->escapeHtmlAttr($block->getMinimumPasswordLength()) ?>"
                        data-password-min-character-sets="<?= /* @noEscape */ $requiredCharacterClassesNumber ?>"
                        data-validate="{required:true, 'validate-customer-password':true}"
                        autocomplete="off">
                 <div id="password-strength-meter-container" data-role="password-strength-meter" aria-live="polite">
                     <div id="password-strength-meter" class="password-strength-meter">
-                        <?= $block->escapeHtml(__('Password Strength')) ?>:
+                        <?= $escaper->escapeHtml(__('Password Strength')) ?>:
                         <span id="password-strength-meter-label" data-role="password-strength-meter-label">
-                            <?= $block->escapeHtml(__('No Password')) ?>
+                            <?= $escaper->escapeHtml(__('No Password')) ?>
                         </span>
                     </div>
                 </div>
@@ -296,12 +300,12 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
         </div>
         <div class="field confirmation required">
             <label for="password-confirmation" class="label">
-                <span><?= $block->escapeHtml(__('Confirm Password')) ?></span>
+                <span><?= $escaper->escapeHtml(__('Confirm Password')) ?></span>
             </label>
             <div class="control">
                 <input type="password"
                        name="password_confirmation"
-                       title="<?= $block->escapeHtmlAttr(__('Confirm Password')) ?>"
+                       title="<?= $escaper->escapeHtmlAttr(__('Confirm Password')) ?>"
                        id="password-confirmation"
                        class="input-text"
                        data-validate="{required:true, equalTo:'#password'}"/>
@@ -320,16 +324,18 @@ $createAccountButtonViewModel = $block->getData('create_account_button_view_mode
         <div class="primary">
             <button type="submit"
                     class="action submit primary"
-                    title="<?= $block->escapeHtmlAttr(__('Create an Account')) ?>"
+                    title="<?= $escaper->escapeHtmlAttr(__('Create an Account')) ?>"
                     id="send2"
-                <?php if ($createAccountButtonViewModel->disabled()): ?> disabled="disabled" <?php endif; ?>>
-                <span><?= $block->escapeHtml(__('Create an Account')) ?></span>
+                <?php if ($block->getButtonLockManager()->isDisabled('customer_create_form_submit')): ?>
+                    disabled="disabled"
+                <?php endif; ?>>
+                <span><?= $escaper->escapeHtml(__('Create an Account')) ?></span>
             </button>
         </div>
         <div class="secondary">
             <a class="action back"
-               href="<?= $block->escapeUrl($block->getBackUrl()) ?>">
-                <span><?= $block->escapeHtml(__('Back')) ?></span>
+               href="<?= $escaper->escapeUrl($block->getBackUrl()) ?>">
+                <span><?= $escaper->escapeHtml(__('Back')) ?></span>
             </a>
         </div>
     </div>
diff --git a/vendor/magento/module-invitation/view/frontend/layout/magento_invitation_customer_account_create.xml b/vendor/magento/module-invitation/view/frontend/layout/magento_invitation_customer_account_create.xml
index 6b7bba3fc6f9..00549d670255 100644
--- a/vendor/magento/module-invitation/view/frontend/layout/magento_invitation_customer_account_create.xml
+++ b/vendor/magento/module-invitation/view/frontend/layout/magento_invitation_customer_account_create.xml
@@ -12,7 +12,7 @@
             <block class="Magento\Invitation\Block\Customer\Form\Register" name="customer_form_register_invitation" template="Magento_Customer::form/register.phtml" cacheable="false">
                 <container name="form.additional.info" as="form_additional_info"/>
                 <arguments>
-                    <argument name="create_account_button_view_model" xsi:type="object">Magento\Customer\ViewModel\CreateAccountButton</argument>
+                    <argument name="button_lock_manager" xsi:type="object">Magento\Framework\View\Element\ButtonLockManager</argument>
                 </arguments>
             </block>
             <block class="Magento\Cookie\Block\RequireCookie" name="require-cookie" template="Magento_Cookie::require_cookie.phtml">
