Files
formipay/node_modules/@sentry/node/esm/eventbuilder.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

85 lines
3.0 KiB
JavaScript

import { __assign } from "tslib";
import { getCurrentHub } from '@sentry/hub';
import { Severity } from '@sentry/types';
import { addExceptionMechanism, addExceptionTypeValue, createStackParser, extractExceptionKeysForMessage, isError, isPlainObject, normalizeToSize, } from '@sentry/utils';
import { nodeStackParser } from './stack-parser';
/**
* Extracts stack frames from the error.stack string
*/
export function parseStackFrames(error) {
return createStackParser(nodeStackParser)(error.stack || '', 1);
}
/**
* Extracts stack frames from the error and builds a Sentry Exception
*/
export function exceptionFromError(error) {
var exception = {
type: error.name || error.constructor.name,
value: error.message,
};
var frames = parseStackFrames(error);
if (frames.length) {
exception.stacktrace = { frames: frames };
}
return exception;
}
/**
* Builds and Event from a Exception
* @hidden
*/
export function eventFromUnknownInput(exception, hint) {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
var ex = exception;
var providedMechanism = hint && hint.data && hint.data.mechanism;
var mechanism = providedMechanism || {
handled: true,
type: 'generic',
};
if (!isError(exception)) {
if (isPlainObject(exception)) {
// This will allow us to group events based on top-level keys
// which is much better than creating new group when any key/value change
var message = "Non-Error exception captured with keys: " + extractExceptionKeysForMessage(exception);
getCurrentHub().configureScope(function (scope) {
scope.setExtra('__serialized__', normalizeToSize(exception));
});
ex = (hint && hint.syntheticException) || new Error(message);
ex.message = message;
}
else {
// This handles when someone does: `throw "something awesome";`
// We use synthesized Error here so we can extract a (rough) stack trace.
ex = (hint && hint.syntheticException) || new Error(exception);
ex.message = exception;
}
mechanism.synthetic = true;
}
var event = {
exception: {
values: [exceptionFromError(ex)],
},
};
addExceptionTypeValue(event, undefined, undefined);
addExceptionMechanism(event, mechanism);
return __assign(__assign({}, event), { event_id: hint && hint.event_id });
}
/**
* Builds and Event from a Message
* @hidden
*/
export function eventFromMessage(message, level, hint, attachStacktrace) {
if (level === void 0) { level = Severity.Info; }
var event = {
event_id: hint && hint.event_id,
level: level,
message: message,
};
if (attachStacktrace && hint && hint.syntheticException) {
var frames_1 = parseStackFrames(hint.syntheticException);
if (frames_1.length) {
event.stacktrace = { frames: frames_1 };
}
}
return event;
}
//# sourceMappingURL=eventbuilder.js.map