Skip to content

refactor(DT-3906): More Svelte 5 Migrations (trivial ones)#3364

Merged
tegan-temporal merged 7 commits intocodefreeze-05.01.26from
DT-3906-ui-svelte-5-migration-trivial-batch-1
May 4, 2026
Merged

refactor(DT-3906): More Svelte 5 Migrations (trivial ones)#3364
tegan-temporal merged 7 commits intocodefreeze-05.01.26from
DT-3906-ui-svelte-5-migration-trivial-batch-1

Conversation

@tegan-temporal
Copy link
Copy Markdown
Contributor

Migrates a bunch of components and routes from Svelte 4 legacy syntax to Svelte 5 runes. This batch is scoped to "trivial" components -- ones with straightforward props/event handler conversions and no complex reactivity, slot forwarding, or two-way bindings worth calling out.

@tegan-temporal tegan-temporal requested a review from a team as a code owner May 1, 2026 23:57
@tegan-temporal tegan-temporal self-assigned this May 1, 2026
@vercel
Copy link
Copy Markdown

vercel Bot commented May 1, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
holocene Ready Ready Preview, Comment May 4, 2026 6:20pm

Request Review

? options.filter((o) => $eventClassificationFilter.includes(o.value))
: [],
);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

  • ⚠️ Parameter '_options' implicitly has an 'any' type.

const workflowEvents = $derived(
getWorkflowStartedCompletedAndTaskFailedEvents($fullEventHistory),
);
const isPending = $derived(
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

  • ⚠️ '$workflowRun.workflow' is possibly 'null'.
  • ⚠️ '$workflowRun.workflow' is possibly 'null'.


$: canceled = ['Terminated', 'TimedOut', 'Canceled'].includes(
workflow?.status,
const canceled = $derived(
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

  • ⚠️ Argument of type 'string | null | undefined' is not assignable to parameter of type 'string'.

['Terminated', 'TimedOut', 'Canceled'].includes(workflow?.status),
);
</script>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

  • ⚠️ 'pendingActivities' is possibly 'undefined'.

@temporal-cicd
Copy link
Copy Markdown
Contributor

temporal-cicd Bot commented May 1, 2026

Warnings
⚠️

📊 Strict Mode: 39 errors in 9 files (3.9% of 989 total)

src/lib/components/batch-operations/details.svelte (1)
  • L39:41: No overload matches this call.
src/lib/components/lines-and-dots/event-classification-filter.svelte (2)
  • L23:25: Parameter '_options' implicitly has an 'any' type.
  • L28:32: Parameter 'o' implicitly has an 'any' type.
src/lib/components/schedule/schedule-recent-runs.svelte (11)
  • L42:6: Type 'string | undefined' is not assignable to type 'string'.
  • L52:81: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
  • L52:81: Argument of type 'string | null | undefined' is not assignable to parameter of type 'string'.
  • L52:118: Type 'string | null | undefined' is not assignable to type 'string | undefined'.
  • L52:125: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
  • L60:14: Type 'string | null | undefined' is not assignable to type 'string'.
  • L60:24: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
  • L61:14: Type 'string | null | undefined' is not assignable to type 'string'.
  • L61:19: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
  • L65:13: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
  • L76:11: 'run.startWorkflowResult' is possibly 'null' or 'undefined'.
src/lib/components/search-attribute-filter/boolean-filter.svelte (1)
  • L44:12: Type 'null' is not assignable to type 'string'.
src/lib/components/workflow/input-and-results.svelte (2)
  • L12:4: '$workflowRun.workflow' is possibly 'null'.
  • L12:39: '$workflowRun.workflow' is possibly 'null'.
src/lib/components/workflow/pending-activities.svelte (7)
  • L33:52: Argument of type 'string | null | undefined' is not assignable to parameter of type 'string'.
  • L37:5: 'pendingActivities' is possibly 'undefined'.
  • L44:29: 'pendingActivities' is possibly 'undefined'.
  • L56:27: 'pendingActivity.attempt' is possibly 'null' or 'undefined'.
  • L95:24: Argument of type 'number | null | undefined' is not assignable to parameter of type 'number | null'.
  • L121:22: Argument of type 'number | null | undefined' is not assignable to parameter of type 'number'.
  • L123:24: Argument of type 'Duration | null' is not assignable to parameter of type 'string | Duration'.
src/lib/components/workflow/dropdown-filter/workflow-status.svelte (3)
  • L101:45: Argument of type 'string | null' is not assignable to parameter of type 'string'.
  • L104:12: Type '"All" | WorkflowStatus' is not assignable to type 'string | undefined'.
  • L107:42: Argument of type 'string | null' is not assignable to parameter of type 'string'.
src/lib/pages/schedules-create.svelte (11)
  • L46:6: Type 'string | undefined' is not assignable to type 'string'.
  • L47:6: Type 'string | undefined' is not assignable to type 'string'.
  • L48:6: Type 'string | undefined' is not assignable to type 'string'.
  • L49:6: Type 'string | undefined' is not assignable to type 'string'.
  • L50:6: Type 'string | undefined' is not assignable to type 'string'.
  • L51:6: Type '"json/plain" | "json/protobuf" | undefined' is not assignable to type '"json/plain" | "json/protobuf"'.
  • L53:6: Type '{ type: "Unspecified" | "Keyword" | "Text" | "Int" | "Double" | "Bool" | "KeywordList" | "Datetime"; label: string; value?: any; }[] | undefined' is not assignable to type '{ type: "Unspecified" | "Keyword" | "Text" | "Int" | "Double" | "Bool" | "KeywordList" | "Datetime"; label: string; value?: any; }[]'.
  • L65:6: Type 'string[] | undefined' is not assignable to type 'string[]'.
  • L66:6: Type 'number[] | undefined' is not assignable to type 'number[]'.
  • L67:6: Type 'string[] | undefined' is not assignable to type 'string[]'.
  • L68:6: Type 'string | undefined' is not assignable to type 'string'.
src/lib/pages/standalone-activity-metadata.svelte (1)
  • L36:23: Argument of type 'IUserMetadata | undefined' is not assignable to parameter of type 'IUserMetadata'.

Generated by 🚫 dangerJS against 6052927

Comment thread src/lib/pages/workflow-query-modal.svelte Outdated
tegan-temporal and others added 2 commits May 4, 2026 11:05
…le (#3344)

* Fix eslint warning

* Migrate to Svelte 5 syntax

* Add multiselect via shift key

* Clear prev index after page selected or all selected trigger

* Make onClickBatchSelect optional, disable checkbox if child

* Do not set child disabled

* Support shift+click select within child workflows

* Update shift+click logic. Instead of multiple scopes, treat all visible items as one scope.

* Remove console log

* Fixup type

* Add tests

* Account for prevClickedRow being nullish

* Fix type

* Fix some warnings

* Fix type

* Fix type for onClickBatchSelect

* Fix type check

* Use early return

* More warning fixes

* Undo prop type change

* Fix warning

* Default query to empty string

* Move comment to inside handler :\

* Move isChecked higher

* Fix race condition

* Fix the fix :P

* Use runId as key

* use runId for check

* Show root rows as checked if allSelected

* Use map instead of set so we rely on runId for equality

* Fix header checkmark status

* Address PR comments

* Apply suggestions from code review

Co-authored-by: Laura Whitaker <laura.k.whitaker@gmail.com>

---------

Co-authored-by: Laura Whitaker <laura.k.whitaker@gmail.com>
@tegan-temporal tegan-temporal merged commit 23d7cfb into codefreeze-05.01.26 May 4, 2026
18 checks passed
@tegan-temporal tegan-temporal deleted the DT-3906-ui-svelte-5-migration-trivial-batch-1 branch May 4, 2026 18:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants