@metamask/snaps-simulation
Version:
A simulation framework for MetaMask Snaps, enabling headless testing of Snaps in a controlled environment
1 lines • 1.56 kB
Source Map (JSON)
{"version":3,"file":"track-error.cjs","sourceRoot":"","sources":["../../../src/methods/hooks/track-error.ts"],"names":[],"mappings":";;;AAAA,mDAAmD;AAEnD,gDAAyC;AAGzC,iDAAyC;AAEzC;;;;;;GAMG;AACH,QAAQ,CAAC,CAAC,wBAAwB,CAAC,KAAY;IAC7C,MAAM,eAAe,GAAG,IAAA,wBAAY,EAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,IAAA,aAAG,EAAC,IAAA,kBAAU,EAAC,eAAe,CAAC,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAgB,2BAA2B,CAAC,OAAwB;IAClE,OAAO,CAAC,GAAG,IAAiD,EAAE,EAAE;QAC9D,OAAO,OAAO,CAAC,wBAAwB,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC;AAJD,kEAIC","sourcesContent":["import { getJsonError } from '@metamask/snaps-sdk';\nimport type { SagaIterator } from 'redux-saga';\nimport { put } from 'redux-saga/effects';\n\nimport type { RunSagaFunction } from '../../store';\nimport { trackError } from '../../store';\n\n/**\n * Track an error.\n *\n * @param error - The error to track.\n * @returns `null`.\n * @yields Adds the error to the store.\n */\nfunction* trackErrorImplementation(error: Error): SagaIterator {\n const serialisedError = getJsonError(error);\n yield put(trackError(serialisedError));\n return null;\n}\n\n/**\n * Get a method that can be used to track an error.\n *\n * @param runSaga - A function to run a saga outside the usual Redux flow.\n * @returns A method that can be used to track an error.\n */\nexport function getTrackErrorImplementation(runSaga: RunSagaFunction) {\n return (...args: Parameters<typeof trackErrorImplementation>) => {\n return runSaga(trackErrorImplementation, ...args).result();\n };\n}\n"]}