Revert "Issue #3347144 by dgtlmoon, mstrelan, Evaldas Užkuras, bkosborne, FeyP, pirvudoru: Form API #states property/states should use .once() to apply its rules (Can cause failures with BigPipe and possibly other situations)"

This reverts commit d6b6ad8fd6.
merge-requests/5077/head
catch 2024-01-26 15:49:30 +00:00
parent b501becfe3
commit 377180847f
2 changed files with 6 additions and 7 deletions

View File

@ -93,16 +93,15 @@
*/ */
Drupal.behaviors.states = { Drupal.behaviors.states = {
attach(context, settings) { attach(context, settings) {
const elements = once('states', '[data-drupal-states]', context); const $states = $(context).find('[data-drupal-states]');
const il = elements.length; const il = $states.length;
for (let i = 0; i < il; i++) { for (let i = 0; i < il; i++) {
const config = JSON.parse( const config = JSON.parse(
elements[i].getAttribute('data-drupal-states'), $states[i].getAttribute('data-drupal-states'),
); );
Object.keys(config || {}).forEach((state) => { Object.keys(config || {}).forEach((state) => {
new states.Dependent({ new states.Dependent({
element: $(elements[i]), element: $($states[i]),
state: states.State.sanitize(state), state: states.State.sanitize(state),
constraints: config[state], constraints: config[state],
}); });
@ -121,7 +120,7 @@
* *
* @constructor Drupal.states.Dependent * @constructor Drupal.states.Dependent
* *
* @param {{state: Drupal.states.state, constraints: *, element: (*|jQuery|HTMLElement)}} args * @param {object} args
* Object with the following keys (all of which are required) * Object with the following keys (all of which are required)
* @param {jQuery} args.element * @param {jQuery} args.element
* A jQuery object of the dependent element * A jQuery object of the dependent element

View File

@ -27,7 +27,7 @@ class JavascriptStatesTest extends WebDriverTestBase {
/** /**
* {@inheritdoc} * {@inheritdoc}
*/ */
protected static $modules = ['form_test', 'big_pipe']; protected static $modules = ['form_test'];
/** /**
* {@inheritdoc} * {@inheritdoc}