Skip to content

Commit dec6a63

Browse files
committed
Add metricsEnableSavingPinsToggled action and related reducer
1 parent 2cf2b11 commit dec6a63

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

tensorboard/webapp/metrics/actions/index.ts

+4
Original file line numberDiff line numberDiff line change
@@ -281,5 +281,9 @@ export const metricsClearAllPinnedCards = createAction(
281281
'[Metrics] Clear all pinned cards'
282282
);
283283

284+
export const metricsEnableSavingPinsToggled = createAction(
285+
'[Metrics] Enable Saving Pins Toggled'
286+
);
287+
284288
// TODO(jieweiwu): Delete after internal code is updated.
285289
export const stepSelectorTimeSelectionChanged = timeSelectionChanged;

tensorboard/webapp/metrics/store/metrics_reducers.ts

+13
Original file line numberDiff line numberDiff line change
@@ -933,6 +933,19 @@ const reducer = createReducer(
933933
},
934934
};
935935
}),
936+
on(actions.metricsEnableSavingPinsToggled, (state) => {
937+
const nextSavingPinsEnabled = !(
938+
state.settingOverrides.savingPinsEnabled ??
939+
state.settings.savingPinsEnabled
940+
);
941+
return {
942+
...state,
943+
settingOverrides: {
944+
...state.settingOverrides,
945+
savingPinsEnabled: nextSavingPinsEnabled,
946+
},
947+
};
948+
}),
936949
on(
937950
actions.multipleTimeSeriesRequested,
938951
(

tensorboard/webapp/metrics/store/metrics_reducers_test.ts

+15
Original file line numberDiff line numberDiff line change
@@ -1232,6 +1232,21 @@ describe('metrics reducers', () => {
12321232
expect(thirdState.settings.hideEmptyCards).toBe(false);
12331233
expect(thirdState.settingOverrides.hideEmptyCards).toBe(false);
12341234
});
1235+
1236+
it('changes savingPinsEnabled on metricsEnableSavingPinsToggled', () => {
1237+
const prevState = buildMetricsState({
1238+
settings: buildMetricsSettingsState({
1239+
savingPinsEnabled: true,
1240+
}),
1241+
settingOverrides: {},
1242+
});
1243+
const nextState = reducers(
1244+
prevState,
1245+
actions.metricsEnableSavingPinsToggled()
1246+
);
1247+
expect(nextState.settings.savingPinsEnabled).toBe(true);
1248+
expect(nextState.settingOverrides.savingPinsEnabled).toBe(false);
1249+
});
12351250
});
12361251

12371252
describe('loading time series data', () => {

0 commit comments

Comments
 (0)