MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/snap.cafsinfotech.in/node_modules/@sentry/utils/cjs/syncpromise.js.map
{"version":3,"file":"syncpromise.js","sources":["../../src/syncpromise.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/typedef */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isThenable } from './is';\n\n/** SyncPromise internal states */\nconst enum States {\n  /** Pending */\n  PENDING = 0,\n  /** Resolved / OK */\n  RESOLVED = 1,\n  /** Rejected / Error */\n  REJECTED = 2,\n}\n\n// Overloads so we can call resolvedSyncPromise without arguments and generic argument\nexport function resolvedSyncPromise(): PromiseLike<void>;\nexport function resolvedSyncPromise<T>(value: T | PromiseLike<T>): PromiseLike<T>;\n\n/**\n * Creates a resolved sync promise.\n *\n * @param value the value to resolve the promise with\n * @returns the resolved sync promise\n */\nexport function resolvedSyncPromise<T>(value?: T | PromiseLike<T>): PromiseLike<T> {\n  return new SyncPromise(resolve => {\n    resolve(value);\n  });\n}\n\n/**\n * Creates a rejected sync promise.\n *\n * @param value the value to reject the promise with\n * @returns the rejected sync promise\n */\nexport function rejectedSyncPromise<T = never>(reason?: any): PromiseLike<T> {\n  return new SyncPromise((_, reject) => {\n    reject(reason);\n  });\n}\n\n/**\n * Thenable class that behaves like a Promise and follows it's interface\n * but is not async internally\n */\nclass SyncPromise<T> implements PromiseLike<T> {\n  private _state: States;\n  private _handlers: Array<[boolean, (value: T) => void, (reason: any) => any]>;\n  private _value: any;\n\n  public constructor(\n    executor: (resolve: (value?: T | PromiseLike<T> | null) => void, reject: (reason?: any) => void) => void,\n  ) {\n    this._state = States.PENDING;\n    this._handlers = [];\n\n    try {\n      executor(this._resolve, this._reject);\n    } catch (e) {\n      this._reject(e);\n    }\n  }\n\n  /** JSDoc */\n  public then<TResult1 = T, TResult2 = never>(\n    onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null,\n    onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null,\n  ): PromiseLike<TResult1 | TResult2> {\n    return new SyncPromise((resolve, reject) => {\n      this._handlers.push([\n        false,\n        result => {\n          if (!onfulfilled) {\n            // TODO: ¯\\_(ツ)_/¯\n            // TODO: FIXME\n            resolve(result as any);\n          } else {\n            try {\n              resolve(onfulfilled(result));\n            } catch (e) {\n              reject(e);\n            }\n          }\n        },\n        reason => {\n          if (!onrejected) {\n            reject(reason);\n          } else {\n            try {\n              resolve(onrejected(reason));\n            } catch (e) {\n              reject(e);\n            }\n          }\n        },\n      ]);\n      this._executeHandlers();\n    });\n  }\n\n  /** JSDoc */\n  public catch<TResult = never>(\n    onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null,\n  ): PromiseLike<T | TResult> {\n    return this.then(val => val, onrejected);\n  }\n\n  /** JSDoc */\n  public finally<TResult>(onfinally?: (() => void) | null): PromiseLike<TResult> {\n    return new SyncPromise<TResult>((resolve, reject) => {\n      let val: TResult | any;\n      let isRejected: boolean;\n\n      return this.then(\n        value => {\n          isRejected = false;\n          val = value;\n          if (onfinally) {\n            onfinally();\n          }\n        },\n        reason => {\n          isRejected = true;\n          val = reason;\n          if (onfinally) {\n            onfinally();\n          }\n        },\n      ).then(() => {\n        if (isRejected) {\n          reject(val);\n          return;\n        }\n\n        resolve(val as unknown as any);\n      });\n    });\n  }\n\n  /** JSDoc */\n  private readonly _resolve = (value?: T | PromiseLike<T> | null) => {\n    this._setResult(States.RESOLVED, value);\n  };\n\n  /** JSDoc */\n  private readonly _reject = (reason?: any) => {\n    this._setResult(States.REJECTED, reason);\n  };\n\n  /** JSDoc */\n  private readonly _setResult = (state: States, value?: T | PromiseLike<T> | any) => {\n    if (this._state !== States.PENDING) {\n      return;\n    }\n\n    if (isThenable(value)) {\n      void (value as PromiseLike<T>).then(this._resolve, this._reject);\n      return;\n    }\n\n    this._state = state;\n    this._value = value;\n\n    this._executeHandlers();\n  };\n\n  /** JSDoc */\n  private readonly _executeHandlers = () => {\n    if (this._state === States.PENDING) {\n      return;\n    }\n\n    const cachedHandlers = this._handlers.slice();\n    this._handlers = [];\n\n    cachedHandlers.forEach(handler => {\n      if (handler[0]) {\n        return;\n      }\n\n      if (this._state === States.RESOLVED) {\n        // eslint-disable-next-line @typescript-eslint/no-floating-promises\n        handler[1](this._value as unknown as any);\n      }\n\n      if (this._state === States.REJECTED) {\n        handler[2](this._value);\n      }\n\n      handler[0] = true;\n    });\n  };\n}\n\nexport { SyncPromise };\n"],"names":["isThenable"],"mappings":"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"}