Files
formipay/node_modules/enquirer/lib/timer.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

39 lines
902 B
JavaScript

'use strict';
module.exports = prompt => {
prompt.timers = prompt.timers || {};
let timers = prompt.options.timers;
if (!timers) return;
for (let key of Object.keys(timers)) {
let opts = timers[key];
if (typeof opts === 'number') {
opts = { interval: opts };
}
create(prompt, key, opts);
}
};
function create(prompt, name, options = {}) {
let timer = prompt.timers[name] = { name, start: Date.now(), ms: 0, tick: 0 };
let ms = options.interval || 120;
timer.frames = options.frames || [];
timer.loading = true;
let interval = setInterval(() => {
timer.ms = Date.now() - timer.start;
timer.tick++;
prompt.render();
}, ms);
timer.stop = () => {
timer.loading = false;
clearInterval(interval);
};
Reflect.defineProperty(timer, 'interval', { value: interval });
prompt.once('close', () => timer.stop());
return timer.stop;
}