Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shareability: re-arrange metrics state order #6224

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 16 additions & 9 deletions tensorboard/webapp/metrics/store/metrics_types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -161,14 +161,13 @@ export type CardToPinnedCard = Map<NonPinnedCardId, PinnedCardId>;
export type PinnedCardToCard = Map<PinnedCardId, NonPinnedCardId>;

export interface MetricsNamespacedState {
/*
* Date-related states: states below are drived from the server.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Date => Data.
drived => derived.

*/
tagMetadataLoadState: LoadState;
tagMetadata: TagMetadata;
// A list of card ids in the main content area, excluding pinned copies.
cardList: NonPinnedCardId[];
cardToPinnedCopy: CardToPinnedCard;
// A map of card ids that previously pinned by the user.
cardToPinnedCopyCache: CardToPinnedCard;
pinnedCardToOriginal: PinnedCardToCard;
/**
* Pinned cards imported from storage that do not yet have a corresponding
* card (e.g. tag metadata might not be loaded yet). Resolving an imported
Expand All @@ -180,6 +179,19 @@ export interface MetricsNamespacedState {
*/
unresolvedImportedPinnedCards: CardUniqueInfo[];
cardMetadataMap: CardMetadataMap;
// Minimum and maximum step number across all TimeSeries data.
stepMinMax: {
min: number;
max: number;
};

/*
* Ui-related states: states below affects the dashboard appearance.
*/
cardToPinnedCopy: CardToPinnedCard;
// A map of card ids that previously pinned by the user.
cardToPinnedCopyCache: CardToPinnedCard;
pinnedCardToOriginal: PinnedCardToCard;
cardStateMap: CardStateMap;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cardStateMap has both data-related (dataMinMax) and ui-related states (everything else).

Might be worth separating it out into a third category here and then similarly organizing it to clearly separate data-related and ui-related states.

cardStepIndex: CardStepIndexMap;
tagFilter: string;
Expand All @@ -193,11 +205,6 @@ export interface MetricsNamespacedState {
// Empty Set would signify "show all". `filteredPluginTypes` will never have
// all pluginTypes in the Set.
filteredPluginTypes: Set<PluginType>;
// Minimum and maximum step number across all TimeSeries data.
stepMinMax: {
min: number;
max: number;
};
}

export interface MetricsSettings {
Expand Down