Файловый менеджер - Редактировать - /home/freeclou/app.optimyar.com/backend/node_modules/@sentry/utils/dist/instrument.js.map
Назад
{"version":3,"file":"instrument.js","sourceRoot":"","sources":["../src/instrument.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/ban-types */\nimport { WrappedFunction } from '@sentry/types';\n\nimport { isInstanceOf, isString } from './is';\nimport { logger } from './logger';\nimport { getGlobalObject } from './misc';\nimport { fill } from './object';\nimport { getFunctionName } from './stacktrace';\nimport { supportsHistory, supportsNativeFetch } from './supports';\n\nconst global = getGlobalObject<Window>();\n\n/** Object describing handler that will be triggered for a given `type` of instrumentation */\ninterface InstrumentHandler {\n type: InstrumentHandlerType;\n callback: InstrumentHandlerCallback;\n}\ntype InstrumentHandlerType =\n | 'console'\n | 'dom'\n | 'fetch'\n | 'history'\n | 'sentry'\n | 'xhr'\n | 'error'\n | 'unhandledrejection';\ntype InstrumentHandlerCallback = (data: any) => void;\n\n/**\n * Instrument native APIs to call handlers that can be used to create breadcrumbs, APM spans etc.\n * - Console API\n * - Fetch API\n * - XHR API\n * - History API\n * - DOM API (click/typing)\n * - Error API\n * - UnhandledRejection API\n */\n\nconst handlers: { [key in InstrumentHandlerType]?: InstrumentHandlerCallback[] } = {};\nconst instrumented: { [key in InstrumentHandlerType]?: boolean } = {};\n\n/** Instruments given API */\nfunction instrument(type: InstrumentHandlerType): void {\n if (instrumented[type]) {\n return;\n }\n\n instrumented[type] = true;\n\n switch (type) {\n case 'console':\n instrumentConsole();\n break;\n case 'dom':\n instrumentDOM();\n break;\n case 'xhr':\n instrumentXHR();\n break;\n case 'fetch':\n instrumentFetch();\n break;\n case 'history':\n instrumentHistory();\n break;\n case 'error':\n instrumentError();\n break;\n case 'unhandledrejection':\n instrumentUnhandledRejection();\n break;\n default:\n logger.warn('unknown instrumentation type:', type);\n }\n}\n\n/**\n * Add handler that will be called when given type of instrumentation triggers.\n * Use at your own risk, this might break without changelog notice, only used internally.\n * @hidden\n */\nexport function addInstrumentationHandler(handler: InstrumentHandler): void {\n if (!handler || typeof handler.type !== 'string' || typeof handler.callback !== 'function') {\n return;\n }\n handlers[handler.type] = handlers[handler.type] || [];\n (handlers[handler.type] as InstrumentHandlerCallback[]).push(handler.callback);\n instrument(handler.type);\n}\n\n/** JSDoc */\nfunction triggerHandlers(type: InstrumentHandlerType, data: any): void {\n if (!type || !handlers[type]) {\n return;\n }\n\n for (const handler of handlers[type] || []) {\n try {\n handler(data);\n } catch (e) {\n logger.error(\n `Error while triggering instrumentation handler.\\nType: ${type}\\nName: ${getFunctionName(\n handler,\n )}\\nError: ${e}`,\n );\n }\n }\n}\n\n/** JSDoc */\nfunction instrumentConsole(): void {\n if (!('console' in global)) {\n return;\n }\n\n ['debug', 'info', 'warn', 'error', 'log', 'assert'].forEach(function(level: string): void {\n if (!(level in global.console)) {\n return;\n }\n\n fill(global.console, level, function(originalConsoleLevel: () => any): Function {\n return function(...args: any[]): void {\n triggerHandlers('console', { args, level });\n\n // this fails for some browsers. :(\n if (originalConsoleLevel) {\n Function.prototype.apply.call(originalConsoleLevel, global.console, args);\n }\n };\n });\n });\n}\n\n/** JSDoc */\nfunction instrumentFetch(): void {\n if (!supportsNativeFetch()) {\n return;\n }\n\n fill(global, 'fetch', function(originalFetch: () => void): () => void {\n return function(...args: any[]): void {\n const handlerData = {\n args,\n fetchData: {\n method: getFetchMethod(args),\n url: getFetchUrl(args),\n },\n startTimestamp: Date.now(),\n };\n\n triggerHandlers('fetch', {\n ...handlerData,\n });\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n return originalFetch.apply(global, args).then(\n (response: Response) => {\n triggerHandlers('fetch', {\n ...handlerData,\n endTimestamp: Date.now(),\n response,\n });\n return response;\n },\n (error: Error) => {\n triggerHandlers('fetch', {\n ...handlerData,\n endTimestamp: Date.now(),\n error,\n });\n // NOTE: If you are a Sentry user, and you are seeing this stack frame,\n // it means the sentry.javascript SDK caught an error invoking your application code.\n // This is expected behavior and NOT indicative of a bug with sentry.javascript.\n throw error;\n },\n );\n };\n });\n}\n\ntype XHRSendInput = null | Blob | BufferSource | FormData | URLSearchParams | string;\n\n/** JSDoc */\ninterface SentryWrappedXMLHttpRequest extends XMLHttpRequest {\n [key: string]: any;\n __sentry_xhr__?: {\n method?: string;\n url?: string;\n status_code?: number;\n body?: XHRSendInput;\n };\n}\n\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/** Extract `method` from fetch call arguments */\nfunction getFetchMethod(fetchArgs: any[] = []): string {\n if ('Request' in global && isInstanceOf(fetchArgs[0], Request) && fetchArgs[0].method) {\n return String(fetchArgs[0].method).toUpperCase();\n }\n if (fetchArgs[1] && fetchArgs[1].method) {\n return String(fetchArgs[1].method).toUpperCase();\n }\n return 'GET';\n}\n\n/** Extract `url` from fetch call arguments */\nfunction getFetchUrl(fetchArgs: any[] = []): string {\n if (typeof fetchArgs[0] === 'string') {\n return fetchArgs[0];\n }\n if ('Request' in global && isInstanceOf(fetchArgs[0], Request)) {\n return fetchArgs[0].url;\n }\n return String(fetchArgs[0]);\n}\n/* eslint-enable @typescript-eslint/no-unsafe-member-access */\n\n/** JSDoc */\nfunction instrumentXHR(): void {\n if (!('XMLHttpRequest' in global)) {\n return;\n }\n\n // Poor man's implementation of ES6 `Map`, tracking and keeping in sync key and value separately.\n const requestKeys: XMLHttpRequest[] = [];\n const requestValues: Array<any>[] = [];\n const xhrproto = XMLHttpRequest.prototype;\n\n fill(xhrproto, 'open', function(originalOpen: () => void): () => void {\n return function(this: SentryWrappedXMLHttpRequest, ...args: any[]): void {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const xhr = this;\n const url = args[1];\n xhr.__sentry_xhr__ = {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n method: isString(args[0]) ? args[0].toUpperCase() : args[0],\n url: args[1],\n };\n\n // if Sentry key appears in URL, don't capture it as a request\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (isString(url) && xhr.__sentry_xhr__.method === 'POST' && url.match(/sentry_key/)) {\n xhr.__sentry_own_request__ = true;\n }\n\n const onreadystatechangeHandler = function(): void {\n if (xhr.readyState === 4) {\n try {\n // touching statusCode in some platforms throws\n // an exception\n if (xhr.__sentry_xhr__) {\n xhr.__sentry_xhr__.status_code = xhr.status;\n }\n } catch (e) {\n /* do nothing */\n }\n\n try {\n const requestPos = requestKeys.indexOf(xhr);\n if (requestPos !== -1) {\n // Make sure to pop both key and value to keep it in sync.\n requestKeys.splice(requestPos);\n const args = requestValues.splice(requestPos)[0];\n if (xhr.__sentry_xhr__ && args[0] !== undefined) {\n xhr.__sentry_xhr__.body = args[0] as XHRSendInput;\n }\n }\n } catch (e) {\n /* do nothing */\n }\n\n triggerHandlers('xhr', {\n args,\n endTimestamp: Date.now(),\n startTimestamp: Date.now(),\n xhr,\n });\n }\n };\n\n if ('onreadystatechange' in xhr && typeof xhr.onreadystatechange === 'function') {\n fill(xhr, 'onreadystatechange', function(original: WrappedFunction): Function {\n return function(...readyStateArgs: any[]): void {\n onreadystatechangeHandler();\n return original.apply(xhr, readyStateArgs);\n };\n });\n } else {\n xhr.addEventListener('readystatechange', onreadystatechangeHandler);\n }\n\n return originalOpen.apply(xhr, args);\n };\n });\n\n fill(xhrproto, 'send', function(originalSend: () => void): () => void {\n return function(this: SentryWrappedXMLHttpRequest, ...args: any[]): void {\n requestKeys.push(this);\n requestValues.push(args);\n\n triggerHandlers('xhr', {\n args,\n startTimestamp: Date.now(),\n xhr: this,\n });\n\n return originalSend.apply(this, args);\n };\n });\n}\n\nlet lastHref: string;\n\n/** JSDoc */\nfunction instrumentHistory(): void {\n if (!supportsHistory()) {\n return;\n }\n\n const oldOnPopState = global.onpopstate;\n global.onpopstate = function(this: WindowEventHandlers, ...args: any[]): any {\n const to = global.location.href;\n // keep track of the current URL state, as we always receive only the updated state\n const from = lastHref;\n lastHref = to;\n triggerHandlers('history', {\n from,\n to,\n });\n if (oldOnPopState) {\n return oldOnPopState.apply(this, args);\n }\n };\n\n /** @hidden */\n function historyReplacementFunction(originalHistoryFunction: () => void): () => void {\n return function(this: History, ...args: any[]): void {\n const url = args.length > 2 ? args[2] : undefined;\n if (url) {\n // coerce to string (this is what pushState does)\n const from = lastHref;\n const to = String(url);\n // keep track of the current URL state, as we always receive only the updated state\n lastHref = to;\n triggerHandlers('history', {\n from,\n to,\n });\n }\n return originalHistoryFunction.apply(this, args);\n };\n }\n\n fill(global.history, 'pushState', historyReplacementFunction);\n fill(global.history, 'replaceState', historyReplacementFunction);\n}\n\nconst debounceDuration = 1000;\nlet debounceTimerID: number | undefined;\nlet lastCapturedEvent: Event | undefined;\n\n/**\n * Decide whether the current event should finish the debounce of previously captured one.\n * @param previous previously captured event\n * @param current event to be captured\n */\nfunction shouldShortcircuitPreviousDebounce(previous: Event | undefined, current: Event): boolean {\n // If there was no previous event, it should always be swapped for the new one.\n if (!previous) {\n return true;\n }\n\n // If both events have different type, then user definitely performed two separate actions. e.g. click + keypress.\n if (previous.type !== current.type) {\n return true;\n }\n\n try {\n // If both events have the same type, it's still possible that actions were performed on different targets.\n // e.g. 2 clicks on different buttons.\n if (previous.target !== current.target) {\n return true;\n }\n } catch (e) {\n // just accessing `target` property can throw an exception in some rare circumstances\n // see: https://github.com/getsentry/sentry-javascript/issues/838\n }\n\n // If both events have the same type _and_ same `target` (an element which triggered an event, _not necessarily_\n // to which an event listener was attached), we treat them as the same action, as we want to capture\n // only one breadcrumb. e.g. multiple clicks on the same button, or typing inside a user input box.\n return false;\n}\n\n/**\n * Decide whether an event should be captured.\n * @param event event to be captured\n */\nfunction shouldSkipDOMEvent(event: Event): boolean {\n // We are only interested in filtering `keypress` events for now.\n if (event.type !== 'keypress') {\n return false;\n }\n\n try {\n const target = event.target as HTMLElement;\n\n if (!target || !target.tagName) {\n return true;\n }\n\n // Only consider keypress events on actual input elements. This will disregard keypresses targeting body\n // e.g.tabbing through elements, hotkeys, etc.\n if (target.tagName === 'INPUT' || target.tagName === 'TEXTAREA' || target.isContentEditable) {\n return false;\n }\n } catch (e) {\n // just accessing `target` property can throw an exception in some rare circumstances\n // see: https://github.com/getsentry/sentry-javascript/issues/838\n }\n\n return true;\n}\n\n/**\n * Wraps addEventListener to capture UI breadcrumbs\n * @param handler function that will be triggered\n * @param globalListener indicates whether event was captured by the global event listener\n * @returns wrapped breadcrumb events handler\n * @hidden\n */\nfunction makeDOMEventHandler(handler: Function, globalListener: boolean = false): (event: Event) => void {\n return (event: Event): void => {\n // It's possible this handler might trigger multiple times for the same\n // event (e.g. event propagation through node ancestors).\n // Ignore if we've already captured that event.\n if (!event || lastCapturedEvent === event) {\n return;\n }\n\n // We always want to skip _some_ events.\n if (shouldSkipDOMEvent(event)) {\n return;\n }\n\n const name = event.type === 'keypress' ? 'input' : event.type;\n\n // If there is no debounce timer, it means that we can safely capture the new event and store it for future comparisons.\n if (debounceTimerID === undefined) {\n handler({\n event: event,\n name,\n global: globalListener,\n });\n lastCapturedEvent = event;\n }\n // If there is a debounce awaiting, see if the new event is different enough to treat it as a unique one.\n // If that's the case, emit the previous event and store locally the newly-captured DOM event.\n else if (shouldShortcircuitPreviousDebounce(lastCapturedEvent, event)) {\n handler({\n event: event,\n name,\n global: globalListener,\n });\n lastCapturedEvent = event;\n }\n\n // Start a new debounce timer that will prevent us from capturing multiple events that should be grouped together.\n clearTimeout(debounceTimerID);\n debounceTimerID = global.setTimeout(() => {\n debounceTimerID = undefined;\n }, debounceDuration);\n };\n}\n\ntype AddEventListener = (\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions,\n) => void;\ntype RemoveEventListener = (\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions,\n) => void;\n\ntype InstrumentedElement = Element & {\n __sentry_instrumentation_handlers__?: {\n [key in 'click' | 'keypress']?: {\n handler?: Function;\n /** The number of custom listeners attached to this element */\n refCount: number;\n };\n };\n};\n\n/** JSDoc */\nfunction instrumentDOM(): void {\n if (!('document' in global)) {\n return;\n }\n\n // Make it so that any click or keypress that is unhandled / bubbled up all the way to the document triggers our dom\n // handlers. (Normally we have only one, which captures a breadcrumb for each click or keypress.) Do this before\n // we instrument `addEventListener` so that we don't end up attaching this handler twice.\n const triggerDOMHandler = triggerHandlers.bind(null, 'dom');\n const globalDOMEventHandler = makeDOMEventHandler(triggerDOMHandler, true);\n global.document.addEventListener('click', globalDOMEventHandler, false);\n global.document.addEventListener('keypress', globalDOMEventHandler, false);\n\n // After hooking into click and keypress events bubbled up to `document`, we also hook into user-handled\n // clicks & keypresses, by adding an event listener of our own to any element to which they add a listener. That\n // way, whenever one of their handlers is triggered, ours will be, too. (This is needed because their handler\n // could potentially prevent the event from bubbling up to our global listeners. This way, our handler are still\n // guaranteed to fire at least once.)\n ['EventTarget', 'Node'].forEach((target: string) => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const proto = (global as any)[target] && (global as any)[target].prototype;\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, no-prototype-builtins\n if (!proto || !proto.hasOwnProperty || !proto.hasOwnProperty('addEventListener')) {\n return;\n }\n\n fill(proto, 'addEventListener', function(originalAddEventListener: AddEventListener): AddEventListener {\n return function(\n this: Element,\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions,\n ): AddEventListener {\n if (type === 'click' || type == 'keypress') {\n try {\n const el = this as InstrumentedElement;\n const handlers = (el.__sentry_instrumentation_handlers__ = el.__sentry_instrumentation_handlers__ || {});\n const handlerForType = (handlers[type] = handlers[type] || { refCount: 0 });\n\n if (!handlerForType.handler) {\n const handler = makeDOMEventHandler(triggerDOMHandler);\n handlerForType.handler = handler;\n originalAddEventListener.call(this, type, handler, options);\n }\n\n handlerForType.refCount += 1;\n } catch (e) {\n // Accessing dom properties is always fragile.\n // Also allows us to skip `addEventListenrs` calls with no proper `this` context.\n }\n }\n\n return originalAddEventListener.call(this, type, listener, options);\n };\n });\n\n fill(proto, 'removeEventListener', function(originalRemoveEventListener: RemoveEventListener): RemoveEventListener {\n return function(\n this: Element,\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions,\n ): () => void {\n if (type === 'click' || type == 'keypress') {\n try {\n const el = this as InstrumentedElement;\n const handlers = el.__sentry_instrumentation_handlers__ || {};\n const handlerForType = handlers[type];\n\n if (handlerForType) {\n handlerForType.refCount -= 1;\n // If there are no longer any custom handlers of the current type on this element, we can remove ours, too.\n if (handlerForType.refCount <= 0) {\n originalRemoveEventListener.call(this, type, handlerForType.handler, options);\n handlerForType.handler = undefined;\n delete handlers[type]; // eslint-disable-line @typescript-eslint/no-dynamic-delete\n }\n\n // If there are no longer any custom handlers of any type on this element, cleanup everything.\n if (Object.keys(handlers).length === 0) {\n delete el.__sentry_instrumentation_handlers__;\n }\n }\n } catch (e) {\n // Accessing dom properties is always fragile.\n // Also allows us to skip `addEventListenrs` calls with no proper `this` context.\n }\n }\n\n return originalRemoveEventListener.call(this, type, listener, options);\n };\n });\n });\n}\n\nlet _oldOnErrorHandler: OnErrorEventHandler = null;\n/** JSDoc */\nfunction instrumentError(): void {\n _oldOnErrorHandler = global.onerror;\n\n global.onerror = function(msg: any, url: any, line: any, column: any, error: any): boolean {\n triggerHandlers('error', {\n column,\n error,\n line,\n msg,\n url,\n });\n\n if (_oldOnErrorHandler) {\n // eslint-disable-next-line prefer-rest-params\n return _oldOnErrorHandler.apply(this, arguments);\n }\n\n return false;\n };\n}\n\nlet _oldOnUnhandledRejectionHandler: ((e: any) => void) | null = null;\n/** JSDoc */\nfunction instrumentUnhandledRejection(): void {\n _oldOnUnhandledRejectionHandler = global.onunhandledrejection;\n\n global.onunhandledrejection = function(e: any): boolean {\n triggerHandlers('unhandledrejection', e);\n\n if (_oldOnUnhandledRejectionHandler) {\n // eslint-disable-next-line prefer-rest-params\n return _oldOnUnhandledRejectionHandler.apply(this, arguments);\n }\n\n return true;\n };\n}\n"]}
| ver. 1.4 |
Github
|
.
| PHP 8.1.33 | Генерация страницы: 0.01 |
proxy
|
phpinfo
|
Настройка