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

Workflow Electron #2335

Open
wants to merge 28 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
68a514d
Accordion component updates (#2316)
laurakwhit Sep 12, 2024
bd34e6e
Highlight active link in nav bar (#2324)
laurakwhit Sep 12, 2024
0ea3d60
Add workflow electron
Alex-Tideman Sep 17, 2024
8e76540
Add http api port and async update flag (#2314)
Alex-Tideman Sep 17, 2024
d496841
Show all possible failures for WorkflowTaskError (#2328)
Alex-Tideman Sep 17, 2024
d57594a
Add border
Alex-Tideman Sep 18, 2024
b03b7eb
Merge branch 'main' into codefreeze-09.12.24
Alex-Tideman Sep 18, 2024
4f68115
Merge branch 'codefreeze-09.12.24' into workflow-electron
Alex-Tideman Sep 18, 2024
6bed6a0
WIP: filter
Alex-Tideman Sep 18, 2024
cff5fdc
Bump express from 4.19.2 to 4.20.0 (#2323)
dependabot[bot] Sep 18, 2024
cd3b18a
Bump vite from 5.0.13 to 5.2.14 (#2329)
dependabot[bot] Sep 18, 2024
37f142c
Fix the go things
Alex-Tideman Sep 18, 2024
0335adf
MVP of electron. Needs some performance tweaks and to add links to ea…
Alex-Tideman Sep 18, 2024
2b649ed
Add icons, clean up
Alex-Tideman Sep 19, 2024
5ccc8f9
Remove commented out code
Alex-Tideman Sep 19, 2024
3a42b2c
Update snapshots
Alex-Tideman Sep 19, 2024
f70fe35
Update go to 1.22.6 (#2334)
Alex-Tideman Sep 19, 2024
ade48fe
Fix merge conflict
Alex-Tideman Sep 19, 2024
b001988
Merge branch 'main' into workflow-electron
Alex-Tideman Sep 24, 2024
5ac9b2e
Small UI fixes (#2345)
laurakwhit Sep 24, 2024
62944b9
2.31.1 (#2346)
temporal-cicd[bot] Sep 24, 2024
e4e2453
Update version.go to v2.31.0 (#2347)
Alex-Tideman Sep 25, 2024
1e0cdf5
Use go 1.23.0 (#2348)
Alex-Tideman Sep 25, 2024
2943464
Use 1.23 (#2349)
Alex-Tideman Sep 25, 2024
412abee
Update go version to 1.23 in update ui-server (#2351)
Alex-Tideman Sep 26, 2024
df9be0c
Add breadcrumbs for nodes
Alex-Tideman Sep 30, 2024
c89e663
Add hover/click state with opacity
Alex-Tideman Sep 30, 2024
5617b14
Add back child table
Alex-Tideman Sep 30, 2024
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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,5 @@ server/ui/assets
/playwright/.cache/
/dist
/audits
go.work
go.work.sum
3 changes: 0 additions & 3 deletions go.work

This file was deleted.

905 changes: 0 additions & 905 deletions go.work.sum

This file was deleted.

2 changes: 1 addition & 1 deletion server/go.mod
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module github.com/temporalio/ui-server/v2

go 1.20
go 1.22.6

require (
github.com/coreos/go-oidc/v3 v3.1.0
Expand Down
2 changes: 1 addition & 1 deletion src/lib/components/data-encoder-settings.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

import { page } from '$app/stores';

import Accordion from '$lib/holocene/accordion.svelte';
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import Button from '$lib/holocene/button.svelte';
import Link from '$lib/holocene/link.svelte';
import { translate } from '$lib/i18n/translate';
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<script lang="ts">
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import CodeBlock from '$lib/holocene/code-block.svelte';
import { translate } from '$lib/i18n/translate';
import type { Failure } from '$lib/types';

export let failure: Failure | undefined = undefined;
</script>

{#if failure}
<Accordion title={translate('common.failure')} class="text-sm">
<div class="hidden w-full text-right text-xs lg:block" slot="description">
{failure?.message}
</div>
<div class="flex flex-col gap-2">
<p>{translate('common.message')}</p>
<CodeBlock
content={failure?.message || ''}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
{#if failure?.source}
<p>{translate('common.source')}</p>
<CodeBlock
content={failure.source}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
{/if}
{#if failure?.stackTrace}
<p>{translate('common.stack-trace')}</p>
<CodeBlock
content={failure.stackTrace}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
{/if}
</div>
</Accordion>
{/if}
{#if failure?.cause}
<svelte:self failure={failure.cause} />
{/if}
70 changes: 14 additions & 56 deletions src/lib/components/lines-and-dots/workflow-error.svelte
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<script lang="ts">
import AccordionGroup from '$lib/holocene/accordion/accordion-group.svelte';
import Alert from '$lib/holocene/alert.svelte';
import CodeBlock from '$lib/holocene/code-block.svelte';
import Icon from '$lib/holocene/icon/icon.svelte';
import Link from '$lib/holocene/link.svelte';
import { translate } from '$lib/i18n/translate';
Expand All @@ -17,6 +17,9 @@

import { CategoryIcon } from './constants';

import WorkflowErrorStackTrace from './workflow-error-stack-trace.svelte';
import WorkflowPendingTask from './workflow-pending-task.svelte';

export let error: WorkflowTaskFailedEvent;
export let pendingTask: PendingWorkflowTaskInfo | undefined = undefined;

Expand Down Expand Up @@ -66,7 +69,7 @@
<div
class="mt-2 flex w-full flex-col gap-0 overflow-hidden rounded-xl border-2 border-danger"
>
<div class="flex items-center justify-between gap-2 bg-danger px-2 py-1">
<div class="flex items-center justify-between gap-2 bg-danger px-2 py-2">
<div class="flex items-center gap-2">
{error.id}
<Icon name={CategoryIcon[error.category]} />
Expand All @@ -78,61 +81,16 @@
relative: $relativeTime,
})}
</div>
<div class="flex flex-col gap-2 bg-space-black p-4 text-white">
<p>{translate('common.failure')}</p>
<CodeBlock
content={error.attributes?.failure?.message || ''}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
<p>{translate('common.stack-trace')}</p>
<CodeBlock
content={error.attributes?.failure?.stackTrace || ''}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
<p>{translate('common.source')}</p>
<CodeBlock
content={error.attributes?.failure?.source || ''}
language="text"
copyIconTitle={translate('common.copy-icon-title')}
copySuccessIconTitle={translate('common.copy-success-icon-title')}
/>
<div class="flex flex-col gap-2 bg-primary p-4">
{#if error.attributes?.failure}
<AccordionGroup>
<WorkflowErrorStackTrace failure={error.attributes.failure} />
{#if pendingTask}
<WorkflowPendingTask {pendingTask} />
{/if}
</AccordionGroup>
{/if}
</div>
</div>

{#if pendingTask}
<div class="flex flex-col gap-2 pt-4">
<h5>Pending Workflow Task Info</h5>
<p>
{translate('common.state')}
<span class="badge">{pendingTask.state}</span>
</p>
<p>
{translate('common.attempt')}
<span class="badge">{pendingTask.attempt}</span>
</p>
<p>
<span class="inline-block w-48">Original Scheduled Time</span>
<span class="badge"
>{formatDate(pendingTask.originalScheduledTime, $timeFormat)}</span
>
</p>
<p>
<span class="inline-block w-48">Scheduled Time</span>
<span class="badge"
>{formatDate(pendingTask.scheduledTime, $timeFormat)}</span
>
</p>
<p>
<span class="inline-block w-48">Started Time</span>
<span class="badge"
>{formatDate(pendingTask.startedTime, $timeFormat)}</span
>
</p>
</div>
{/if}
</Alert>
{/if}
36 changes: 36 additions & 0 deletions src/lib/components/lines-and-dots/workflow-pending-task.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<script lang="ts">
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import Badge from '$lib/holocene/badge.svelte';
import { translate } from '$lib/i18n/translate';
import { timeFormat } from '$lib/stores/time-format';
import type { PendingWorkflowTaskInfo } from '$lib/types';
import { formatDate } from '$lib/utilities/format-date';

export let pendingTask: PendingWorkflowTaskInfo | undefined = undefined;
</script>

<Accordion title={translate('workflows.pending-workflow-task')}>
<div class="flex flex-col gap-2">
<p class="flex items-center gap-4">
{translate('common.state')}
<Badge>{pendingTask.state}</Badge>
</p>
<p class="flex items-center gap-4">
{translate('common.attempt')}
<Badge>{pendingTask.attempt}</Badge>
</p>
<p class="flex items-center gap-4">
{translate('workflows.original-scheduled-time')}
<Badge>{formatDate(pendingTask.originalScheduledTime, $timeFormat)}</Badge
>
</p>
<p class="flex items-center gap-4">
{translate('workflows.scheduled-time')}
<Badge>{formatDate(pendingTask.scheduledTime, $timeFormat)}</Badge>
</p>
<p class="flex items-center gap-4">
{translate('workflows.started-time')}
<Badge>{formatDate(pendingTask.startedTime, $timeFormat)}</Badge>
</p>
</div>
</Accordion>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<script lang="ts">
import Accordion from '$lib/holocene/accordion.svelte';
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import { translate } from '$lib/i18n/translate';
import ScheduleNotes from './schedule-notes.svelte';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<script lang="ts">
import Accordion from '$lib/holocene/accordion.svelte';
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import { translate } from '$lib/i18n/translate';
import type { SearchAttribute } from '$lib/types';
import { decodePayloadAttributes } from '$lib/utilities/decode-payload';
Expand Down
1 change: 1 addition & 0 deletions src/lib/components/side-nav.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
tooltip={item?.tooltip || item.label}
external={item?.external}
animate={item?.animate}
isActive={item.isActive}
/>
{/if}
{/each}
Expand Down
2 changes: 1 addition & 1 deletion src/lib/components/workflow/pending-activities.svelte
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<script lang="ts">
import { page } from '$app/stores';

import Accordion from '$lib/holocene/accordion.svelte';
import Accordion from '$lib/holocene/accordion/accordion.svelte';
import Badge from '$lib/holocene/badge.svelte';
import CodeBlock from '$lib/holocene/code-block.svelte';
import Icon from '$lib/holocene/icon/icon.svelte';
Expand Down
Loading
Loading