Files
formipay/node_modules/webpack/lib/util/IterableHelpers.js
dwindown e8fbfb14c1 fix: prevent asset conflicts between React and Grid.js versions
Add coexistence checks to all enqueue methods to prevent loading
both React and Grid.js assets simultaneously.

Changes:
- ReactAdmin.php: Only enqueue React assets when ?react=1
- Init.php: Skip Grid.js when React active on admin pages
- Form.php, Coupon.php, Access.php: Restore classic assets when ?react=0
- Customer.php, Product.php, License.php: Add coexistence checks

Now the toggle between Classic and React versions works correctly.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-18 17:02:14 +07:00

50 lines
1.1 KiB
JavaScript

/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
"use strict";
/**
* Returns last item.
* @template T
* @param {Iterable<T>} set a set
* @returns {T | undefined} last item
*/
const last = (set) => {
/** @type {T | undefined} */
let last;
for (const item of set) last = item;
return last;
};
/**
* Returns true, if some items match the filter predicate.
* @template T
* @param {Iterable<T>} iterable iterable
* @param {(value: T) => boolean | null | undefined} filter predicate
* @returns {boolean} true, if some items match the filter predicate
*/
const someInIterable = (iterable, filter) => {
for (const item of iterable) {
if (filter(item)) return true;
}
return false;
};
/**
* Returns count of items.
* @template T
* @param {Iterable<T>} iterable an iterable
* @returns {number} count of items
*/
const countIterable = (iterable) => {
let i = 0;
for (const _ of iterable) i++;
return i;
};
module.exports.countIterable = countIterable;
module.exports.last = last;
module.exports.someInIterable = someInIterable;