Ben Delevingne 14aa4fcf8e Bug 1582699 - [devtools] Update thunk actions to take an object as an argument. r=nchevobbe
In short, thunk actions are changing from a signature with 2 parameters (dispatch and getState): `(dispatch, getState)`, to an object that contains those properties: `({ dispatch, getState })`.
This is done so we can merge thunk and thunk-with-options

Differential Revision: https://phabricator.services.mozilla.com/D92888
2020-10-13 07:48:12 +00:00

24 lines
769 B
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const {
actions,
ALLOCATION_RECORDING_OPTIONS,
} = require("devtools/client/memory/constants");
exports.toggleRecordingAllocationStacks = function(front) {
return async function({ dispatch, getState }) {
dispatch({ type: actions.TOGGLE_RECORD_ALLOCATION_STACKS_START });
if (getState().recordingAllocationStacks) {
await front.stopRecordingAllocations();
} else {
await front.startRecordingAllocations(ALLOCATION_RECORDING_OPTIONS);
}
dispatch({ type: actions.TOGGLE_RECORD_ALLOCATION_STACKS_END });
};
};