From a3903b18a61c0ac311ec1c41f33dbefa18b6a260 Mon Sep 17 00:00:00 2001
From: John Shortess <john.shortess@bixal.com>
Date: Wed, 22 Jan 2025 15:40:56 -0500
Subject: [PATCH] #3351930: Re-roll mcherchel's patch from #3351930-2.

---
 conditional_fields.libraries.yml | 1 +
 js/conditional_fields.js         | 7 +++++++
 2 files changed, 8 insertions(+)

diff --git a/conditional_fields.libraries.yml b/conditional_fields.libraries.yml
index 4b83c2c..0e31249 100644
--- a/conditional_fields.libraries.yml
+++ b/conditional_fields.libraries.yml
@@ -4,6 +4,7 @@ conditional_fields:
   dependencies:
     - core/jquery
     - core/drupal.states
+    - core/once
 
 admin:
   css:
diff --git a/js/conditional_fields.js b/js/conditional_fields.js
index 61e0bbd..15045c8 100644
--- a/js/conditional_fields.js
+++ b/js/conditional_fields.js
@@ -195,6 +195,13 @@
             }
             e.effect = effect;
             originalHandler(e);
+
+            // Ensure Drupal behaviors get attached to visible fields only once.
+            if (e.type === 'state:visible') {
+              once('conditional-fields', e.target).forEach(() => {
+                Drupal.attachBehaviors(e.target);
+              });
+            }
           };
         }
       });
-- 
GitLab