Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat: add stop workspace button with confirmation dialog#18372

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
blink-so wants to merge3 commits intomain
base:main
Choose a base branch
Loading
fromfeat/stop-workspace-button

Conversation

blink-so[bot]
Copy link
Contributor

Summary

Adds a stop workspace button with confirmation dialog to complement the existing start button, addressing the feature request in#18298.

Changes

  • Stop Button: Added a stop workspace button with square icon that replaces the start button for running workspaces
  • Confirmation Dialog: Implemented confirmation dialog to prevent accidental workspace stops
  • State Management: Button visibility is controlled by existing workspace status logic
  • API Integration: Uses existingstopWorkspace API mutation
  • UI Consistency: Follows established patterns for workspace action buttons

Behavior

  • Stopped workspaces: Show start button (play icon)
  • Running workspaces: Show stop button (square icon)
  • Stop action: Triggers confirmation dialog before executing
  • Loading states: Button shows spinner during stop operation

Testing

  • Code passes biome quality checks
  • Follows existing TypeScript patterns
  • Uses established component patterns from the codebase

Fixes#18298

- Add stop workspace button with square icon that replaces start button for running workspaces- Implement confirmation dialog for stop operation to prevent accidental stops- Button shows only when workspace status allows stop action- Uses existing stopWorkspace API mutation- Follows existing UI patterns for workspace actionsFixes#18298Co-authored-by: matifali <10648092+matifali@users.noreply.github.com>
Copy link
Contributor

@CopilotCopilotAI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Adds a stop workspace button with a confirmation dialog to complement the existing start button and prevent accidental stops.

  • Introduces a stop action button (square icon) shown for running workspaces.
  • Implements a confirmation dialog that prompts before calling thestopWorkspace mutation.
  • Leverages existing API mutation and workspace status logic for visibility and loading indicators.
Comments suppressed due to low confidence (1)

site/src/pages/WorkspacesPage/WorkspacesTable.tsx:594

  • Add tests to cover the stop workspace confirmation dialog: verify it opens on button click, displays the correct workspace name, and invokes thestopWorkspace mutation on confirm.
<ConfirmDialog

{abilities.actions.includes("stop") && (
<PrimaryAction
onClick={() => setIsStopConfirmOpen(true)}
isLoading={stopWorkspaceMutation.isPending}
Copy link
Preview

CopilotAIJun 13, 2025

Choose a reason for hiding this comment

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

Consider disabling the stop button whilestopWorkspaceMutation is pending (e.g., pass adisabled prop toPrimaryAction or the underlyingButton) to prevent duplicate clicks during the loading state.

Suggested change
isLoading={stopWorkspaceMutation.isPending}
isLoading={stopWorkspaceMutation.isPending}
disabled={stopWorkspaceMutation.isPending}

Copilot uses AI. Check for mistakes.

blink-so[bot] reacted with thumbs up emoji
@matifalimatifali marked this pull request as draftJune 13, 2025 20:11
blink-sobotand others added2 commitsJune 13, 2025 20:13
- Add disabled prop to PrimaryActionProps interface- Implement disabled state in PrimaryAction component- Apply disabled prop to stop button when stopWorkspaceMutation is pending- Prevents accidental duplicate stop requests during operationCo-authored-by: matifali <10648092+matifali@users.noreply.github.com>
- ConfirmDialog component doesn't accept loading prop- Fixes TypeScript compilation error in CI- Button disabled state still prevents duplicate clicksCo-authored-by: matifali <10648092+matifali@users.noreply.github.com>
@matifalimatifali marked this pull request as ready for reviewJune 13, 2025 20:29
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

Copilot code reviewCopilotCopilot left review comments

@BrunoQuaresmaBrunoQuaresmaAwaiting requested review from BrunoQuaresma

At least 1 approving review is required to merge this pull request.

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

feat: stop workspace button
0 participants

[8]ページ先頭

©2009-2025 Movatter.jp