diff --git a/src/app/data_types_internal.ts b/src/app/data_types_internal.ts index 18db32d..f6b1080 100644 --- a/src/app/data_types_internal.ts +++ b/src/app/data_types_internal.ts @@ -317,7 +317,8 @@ export type RuntimeState = 'Static'|'Runtime'; */ export type NodeState = 'NO_STATE_STATIC'|'NO_STATE_RUNTIME'|'CANCELLED'| 'CANCELLING'|'CANCEL_PENDING'|'FAILED'|'PENDING'|'RUNNING'|'SKIPPED'| - 'SUCCEEDED'|'TIMEOUT'|'NOT_TRIGGERED'|'DISABLED'|'PAUSED'|'UNKNOWN'; + 'SUCCEEDED'|'TIMEOUT'|'NOT_TRIGGERED'|'DISABLED'|'PAUSED'|'UNKNOWN'| + 'BROKEN'; type State2Priority = { [state in NodeState]: number; @@ -339,6 +340,7 @@ export const STATE_PRIORITY: State2Priority = { 'CANCELLING': 3, 'TIMEOUT': 4, 'FAILED': 4, + 'BROKEN': 4, 'CANCELLED': 5, 'DISABLED': 5, 'PAUSED': 5, @@ -705,6 +707,7 @@ export const DEFAULT_THEME: DagTheme = { ...['RUNNING', 'SKIPPED', 'SUCCEEDED'].map(s => [s, baseColors['green']]), ...['TIMEOUT', 'PAUSED'].map(s => [s, baseColors['yellow']]), ['FAILED', baseColors['red']], + ['BROKEN', baseColors['red']], ...['CANCELLED', 'NOT_TRIGGERED', 'DISABLED', 'UNKNOWN'].map( s => [s, baseColors['gray']]), ...['NO_STATE_RUNTIME', 'NO_STATE_STATIC'].map(s => [s, '']), @@ -718,6 +721,7 @@ export const DEFAULT_THEME: DagTheme = { ...['NO_STATE_RUNTIME', 'NO_STATE_STATIC'].map(k => [k, 'transparent']), ...['TIMEOUT', 'PAUSED'].map(k => [k, baseColors['bg']['yellow']]), ['FAILED', baseColors['bg']['red']], + ['BROKEN', baseColors['bg']['red']], ]), edgeColor: baseColors['blue'], edgeLabelColor: 'var(--workflow-graph-color-surface-on-surface)', @@ -748,6 +752,7 @@ export const CLASSIC_THEME: DagTheme = generateTheme({ ...['RUNNING', 'SKIPPED', 'SUCCEEDED'].map(s => [s, '#34A853']), ['TIMEOUT', '#F9AB00'], ['FAILED', '#E94235'], + ['BROKEN', '#E94235'], ...['CANCELLED', 'NOT_TRIGGERED'].map(s => [s, '#818181']), ...['NO_STATE_RUNTIME', 'NO_STATE_STATIC'].map(s => [s, '']), ]), @@ -760,6 +765,7 @@ export const CLASSIC_THEME: DagTheme = generateTheme({ ...['NO_STATE_RUNTIME', 'NO_STATE_STATIC'].map(k => [k, 'transparent']), ['TIMEOUT', baseColors['bg']['yellow']], ['FAILED', baseColors['bg']['red']], + ['BROKEN', baseColors['bg']['red']], ]), edgeColor: '#1A73E8', }); diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/artifact-in-nested-loop.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/artifact-in-nested-loop.png index ecaa6b4..5946d61 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/artifact-in-nested-loop.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/artifact-in-nested-loop.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/dark-mode.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/dark-mode.png index f34c3d7..b6280e4 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/dark-mode.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/dark-mode.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-nested-node-focus.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-nested-node-focus.png index 18cc0ef..25acd7a 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-nested-node-focus.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-nested-node-focus.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-node-focus.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-node-focus.png index c7045c2..8f870d6 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-node-focus.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset-node-focus.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset.png index 85c56e5..666270e 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/default-dataset.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/edge-marker-styles.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/edge-marker-styles.png index 3bd301c..40fc545 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/edge-marker-styles.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/edge-marker-styles.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/group-label-positioning.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/group-label-positioning.png index 4d7f9c6..a6c8c92 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/group-label-positioning.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/group-label-positioning.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/recursive-graph.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/recursive-graph.png index 2e4e927..827c4ce 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/recursive-graph.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/recursive-graph.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-group.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-group.png index 8150117..d712335 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-group.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-group.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-iteration-loop.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-iteration-loop.png index 0d86478..7c2aa7e 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-iteration-loop.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/select-nested-iteration-loop.png differ diff --git a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/single-node.png b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/single-node.png index 0b9cff8..62d27d5 100644 Binary files a/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/single-node.png and b/src/app/demo_page/scuba_goldens/demo_page/chrome-linux/single-node.png differ diff --git a/src/app/i18n.ts b/src/app/i18n.ts index 4505af2..bef4f48 100644 --- a/src/app/i18n.ts +++ b/src/app/i18n.ts @@ -34,6 +34,7 @@ export const NODE_STATE_TRANSLATIONS = { 'nodeStateNotTriggered': 'Not Triggered', 'nodeStateCompleted': 'Completed', 'nodeStateFailed': 'Failed', + 'nodeStateBroken': 'Broken', 'nodeStateDisabled': 'Disabled', 'nodeStateUnknown': 'Unknown', }; diff --git a/src/app/i18n_messages_internal.ts b/src/app/i18n_messages_internal.ts index bf5f82c..6507e76 100644 --- a/src/app/i18n_messages_internal.ts +++ b/src/app/i18n_messages_internal.ts @@ -38,6 +38,11 @@ const MSG_WORKFLOW_GRAPH_NODE_STATE_CANCELLED = goog.getMsg('Cancelled'); */ const MSG_WORKFLOW_GRAPH_NODE_STATE_FAILED = goog.getMsg('Failed'); +/** + * @desc Label for an execution that is broken. + */ +const MSG_WORKFLOW_GRAPH_NODE_STATE_BROKEN = goog.getMsg('Broken'); + /** * @desc Label for an execution that is currently in progress. */ @@ -92,6 +97,7 @@ export const TRANSLATIONS: Translations = { 'nodeStateNotTriggered': MSG_WORKFLOW_GRAPH_NODE_STATE_NOT_TRIGGERED, 'nodeStateCompleted': MSG_WORKFLOW_GRAPH_NODE_STATE_COMPLETED, 'nodeStateFailed': MSG_WORKFLOW_GRAPH_NODE_STATE_FAILED, + 'nodeStateBroken': MSG_WORKFLOW_GRAPH_NODE_STATE_BROKEN, 'nodeStateDisabled': MSG_WORKFLOW_GRAPH_NODE_STATE_DISABLED, 'nodeStateUnknown': MSG_WORKFLOW_GRAPH_NODE_STATE_UNKNOWN, }; diff --git a/src/app/icon_util.ts b/src/app/icon_util.ts index 862df74..514a4a0 100644 --- a/src/app/icon_util.ts +++ b/src/app/icon_util.ts @@ -183,6 +183,7 @@ export function iconForState(state: NodeState, theme: DagTheme): IconConfig| break; case 'FAILED': + case 'BROKEN': icon = {name: 'status-error', iconset: 'cloud_ai'}; break; @@ -222,6 +223,9 @@ export function labelForState(translationsService: TranslationsService): case 'FAILED': return translationsService.translateMessage('nodeStateFailed'); + case 'BROKEN': + return translationsService.translateMessage('nodeStateBroken'); + case 'PENDING': return translationsService.translateMessage('nodeStatePending'); diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_custom_control_node.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_custom_control_node.png index 96544f5..0aea2d8 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_custom_control_node.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_custom_control_node.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_hidden.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_hidden.png index 169b87f..1ddeae3 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_hidden.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_hidden.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_shown.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_shown.png index 5c39176..61877cd 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_shown.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_expanded_with_custom_control_node_shown.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label.png index f118dfa..c734e00 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label_and_treat_as_loop.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label_and_treat_as_loop.png index f118dfa..c734e00 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label_and_treat_as_loop.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_group_with_label_and_treat_as_loop.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_loading.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_loading.png index 8ab7982..47958a1 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_loading.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_loading.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_colored_labels.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_colored_labels.png index 6141e9a..84a7ccb 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_colored_labels.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_colored_labels.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_edge_offsets.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_edge_offsets.png index 00d5889..de6c4ab 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_edge_offsets.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_edge_offsets.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_label_icons.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_label_icons.png index b703940..97bda5b 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_label_icons.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_label_icons.png differ diff --git a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_rotated_labels.png b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_rotated_labels.png index d00f194..ad4da2c 100644 Binary files a/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_rotated_labels.png and b/src/app/scuba_goldens/directed_acyclic_graph/chrome-linux/graph_with_rotated_labels.png differ diff --git a/src/app/scuba_goldens/scaffold/chrome-linux/renders_shelf_correctly.png b/src/app/scuba_goldens/scaffold/chrome-linux/renders_shelf_correctly.png index f64ee3b..25b08cb 100644 Binary files a/src/app/scuba_goldens/scaffold/chrome-linux/renders_shelf_correctly.png and b/src/app/scuba_goldens/scaffold/chrome-linux/renders_shelf_correctly.png differ diff --git a/src/app/scuba_goldens/scaffold/chrome-linux/renders_without_shelf_by_default.png b/src/app/scuba_goldens/scaffold/chrome-linux/renders_without_shelf_by_default.png index 7073786..100fe9b 100644 Binary files a/src/app/scuba_goldens/scaffold/chrome-linux/renders_without_shelf_by_default.png and b/src/app/scuba_goldens/scaffold/chrome-linux/renders_without_shelf_by_default.png differ