diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 43cb9e2bb..c42ee751b 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -2092,9 +2092,21 @@ export default class MetamaskController extends EventEmitter { const { vault } = this.keyringController.store.getState(); const isInitialized = Boolean(vault); + const flatState = this.memStore.getFlatState(); + return { isInitialized, - ...this.memStore.getFlatState(), + ...flatState, + ///: BEGIN:ONLY_INCLUDE_IN(snaps) + // Snap state and source code is stripped out to prevent piping to the MetaMask UI. + snapStates: {}, + snaps: Object.values(flatState.snaps ?? {}).reduce((acc, snap) => { + // eslint-disable-next-line no-unused-vars + const { sourceCode, ...rest } = snap; + acc[snap.id] = rest; + return acc; + }, {}), + ///: END:ONLY_INCLUDE_IN }; }