[GH-ISSUE #4355] refactor: migrate deprecated Button2 imports to @actual-app/components/button #50974

Closed
opened 2026-04-30 16:47:36 -05:00 by GiteaMirror · 0 comments
Owner

Originally created by @coderabbitai[bot] on GitHub (Feb 11, 2025).
Original GitHub issue: https://github.com/actualbudget/actual/issues/4355

Originally assigned to: @MatissJanis on GitHub.

Context

The Button2 component is deprecated and should be migrated to use @actual-app/components/button instead. This affects both Button and ButtonWithLoading imports.

References

Files to update

Update imports like:

import { Button } from '../common/Button2'
import { Button } from './common/Button2'
import { Button } from './Button2'
import { ButtonWithLoading } from '../common/Button2'

to:

import { Button, ButtonWithLoading } from '@actual-app/components/button'

Affected files (137 files):

  • packages/desktop-client/src/components/NotesButton.tsx
  • packages/desktop-client/src/components/EditablePageHeaderTitle.tsx
  • packages/desktop-client/src/components/LoggedInUser.tsx
  • packages/desktop-client/src/components/ManageRules.tsx
  • packages/desktop-client/src/components/Notifications.tsx
  • packages/desktop-client/src/components/Titlebar.tsx
  • packages/desktop-client/src/components/rules/RuleRow.tsx
  • packages/desktop-client/src/components/UpdateNotification.tsx
  • packages/desktop-client/src/components/transactions/TransactionsTable.jsx
  • packages/desktop-client/src/components/ThemeSelector.tsx
  • packages/desktop-client/src/components/accounts/Balance.tsx
  • packages/desktop-client/src/components/accounts/AccountSyncCheck.tsx
  • packages/desktop-client/src/components/accounts/Account.tsx
  • packages/desktop-client/src/components/budget/IncomeHeader.tsx
  • packages/desktop-client/src/components/budget/tracking/TrackingBudgetComponents.tsx
  • packages/desktop-client/src/components/budget/BudgetTotals.tsx
  • packages/desktop-client/src/components/common/Select.tsx
  • packages/desktop-client/src/components/filters/CompactFiltersButton.tsx
  • packages/desktop-client/src/components/common/Search.tsx
  • packages/desktop-client/src/components/common/MenuButton.tsx
  • packages/desktop-client/src/components/HelpMenu.tsx
  • packages/desktop-client/src/components/common/Link.tsx
  • packages/desktop-client/src/components/filters/FilterExpression.tsx
  • packages/desktop-client/src/components/filters/FiltersButton.tsx
  • packages/desktop-client/src/components/budget/SidebarGroup.tsx
  • packages/desktop-client/src/components/budget/tracking/budgetsummary/BudgetSummary.tsx
  • packages/desktop-client/src/components/filters/FiltersMenu.jsx
  • packages/desktop-client/src/components/filters/OpButton.tsx
  • packages/desktop-client/src/components/filters/NameFilter.tsx
  • packages/desktop-client/src/components/filters/SavedFilterMenuButton.tsx
  • packages/desktop-client/src/components/accounts/Header.tsx
  • packages/desktop-client/src/components/accounts/Reconcile.tsx
  • packages/desktop-client/src/components/budget/SidebarCategory.tsx
  • packages/desktop-client/src/components/budget/envelope/TransferMenu.tsx
  • packages/desktop-client/src/components/budget/envelope/HoldMenu.tsx
  • packages/desktop-client/src/components/budget/envelope/CoverMenu.tsx
  • packages/desktop-client/src/components/mobile/MobileBackButton.tsx
  • packages/desktop-client/src/components/manager/BudgetList.tsx
  • packages/desktop-client/src/components/modals/TransferModal.tsx
  • packages/desktop-client/src/components/mobile/budget/BudgetTable.jsx
  • packages/desktop-client/src/components/manager/ConfigServer.tsx
  • packages/desktop-client/src/components/manager/subscribe/Error.tsx
  • packages/desktop-client/src/components/modals/TrackingBudgetMonthMenuModal.tsx
  • packages/desktop-client/src/components/modals/SingleInputModal.tsx
  • packages/desktop-client/src/components/manager/subscribe/ChangePassword.tsx
  • packages/desktop-client/src/components/manager/subscribe/Login.tsx
  • packages/desktop-client/src/components/manager/subscribe/Bootstrap.tsx
  • packages/desktop-client/src/components/modals/SelectLinkedAccountsModal.jsx
  • packages/desktop-client/src/components/modals/PasswordEnableModal.tsx
  • packages/desktop-client/src/components/modals/OutOfSyncMigrationsModal.tsx
  • packages/desktop-client/src/components/modals/SimpleFinInitialiseModal.tsx
  • packages/desktop-client/src/components/modals/NotesModal.tsx
  • packages/desktop-client/src/components/modals/OpenIDEnableModal.tsx
  • packages/desktop-client/src/components/modals/MergeUnusedPayeesModal.tsx
  • packages/desktop-client/src/components/modals/TransferOwnership.tsx
  • packages/desktop-client/src/components/manager/subscribe/ConfirmPasswordForm.tsx
  • packages/desktop-client/src/components/manager/subscribe/OpenIdForm.tsx
  • packages/desktop-client/src/components/manager/WelcomeScreen.tsx
  • packages/desktop-client/src/components/modals/HoldBufferModal.tsx
  • packages/desktop-client/src/components/modals/LoadBackupModal.tsx
  • packages/desktop-client/src/components/modals/manager/ImportYNAB5Modal.tsx
  • packages/desktop-client/src/components/modals/manager/ImportModal.tsx
  • packages/desktop-client/src/components/modals/manager/ImportYNAB4Modal.tsx
  • packages/desktop-client/src/components/modals/manager/ImportActualModal.tsx
  • packages/desktop-client/src/components/mobile/accounts/Accounts.tsx
  • packages/desktop-client/src/components/modals/manager/DuplicateFileModal.tsx
  • packages/desktop-client/src/components/modals/CreateLocalAccountModal.tsx
  • packages/desktop-client/src/components/modals/CoverModal.tsx
  • packages/desktop-client/src/components/modals/EditRuleModal.jsx
  • packages/desktop-client/src/components/modals/CreateAccountModal.tsx
  • packages/desktop-client/src/components/modals/ConfirmTransactionEditModal.tsx
  • packages/desktop-client/src/components/modals/ConfirmUnlinkAccountModal.tsx
  • packages/desktop-client/src/components/modals/ConfirmTransactionDeleteModal.tsx
  • packages/desktop-client/src/components/modals/CloseAccountModal.tsx
  • packages/desktop-client/src/components/modals/ConfirmCategoryDeleteModal.tsx
  • packages/desktop-client/src/components/modals/CategoryMenuModal.tsx
  • packages/desktop-client/src/components/modals/CreateEncryptionKeyModal.tsx
  • packages/desktop-client/src/components/modals/manager/ConfirmChangeDocumentDir.tsx
  • packages/desktop-client/src/components/modals/manager/DeleteFileModal.tsx
  • packages/desktop-client/src/components/modals/ImportTransactionsModal/ImportTransactionsModal.jsx
  • packages/desktop-client/src/components/modals/EditAccess.tsx
  • packages/desktop-client/src/components/mobile/accounts/AccountTransactions.tsx
  • packages/desktop-client/src/components/modals/EditUser.tsx
  • packages/desktop-client/src/components/modals/EditFieldModal.tsx
  • packages/desktop-client/src/components/modals/manager/FilesSettingsModal.tsx
  • packages/desktop-client/src/components/modals/CategoryGroupMenuModal.tsx
  • packages/desktop-client/src/components/modals/EnvelopeBudgetMonthMenuModal.tsx
  • packages/desktop-client/src/components/modals/GoCardlessExternalMsgModal.tsx
  • packages/desktop-client/src/components/modals/FixEncryptionKeyModal.tsx
  • packages/desktop-client/src/components/modals/GoCardlessInitialiseModal.tsx
  • packages/desktop-client/src/components/modals/AccountMenuModal.tsx
  • packages/desktop-client/src/components/budget/envelope/EnvelopeBudgetComponents.tsx
  • packages/desktop-client/src/components/payees/CategoryLearning.tsx
  • packages/desktop-client/src/components/schedules/SchedulesTable.tsx
  • packages/desktop-client/src/components/settings/Reset.tsx
  • packages/desktop-client/src/components/schedules/PostsOfflineNotification.tsx
  • packages/desktop-client/src/components/schedules/ScheduleDetails.tsx
  • packages/desktop-client/src/components/schedules/DiscoverSchedules.tsx
  • packages/desktop-client/src/components/settings/Export.tsx
  • packages/desktop-client/src/components/settings/Encryption.tsx
  • packages/desktop-client/src/components/settings/RepairTransactions.tsx
  • packages/desktop-client/src/components/settings/BudgetTypeSettings.tsx
  • packages/desktop-client/src/components/settings/AuthSettings.tsx
  • packages/desktop-client/src/components/mobile/transactions/AddTransactionButton.tsx
  • packages/desktop-client/src/components/schedules/ScheduleLink.tsx
  • packages/desktop-client/src/components/payees/ManagePayees.tsx
  • packages/desktop-client/src/components/settings/index.tsx
  • packages/desktop-client/src/components/schedules/UpcomingLength.tsx
  • packages/desktop-client/src/components/mobile/transactions/FocusableAmountInput.tsx
  • packages/desktop-client/src/components/schedules/index.tsx
  • packages/desktop-client/src/components/budget/envelope/budgetsummary/BudgetSummary.tsx
  • packages/desktop-client/src/components/select/RecurringSchedulePicker.tsx
  • packages/desktop-client/src/components/reports/reports/Summary.tsx
  • packages/desktop-client/src/components/reports/reports/Spending.tsx
  • packages/desktop-client/src/components/reports/reports/NetWorth.tsx
  • packages/desktop-client/src/components/reports/reports/CalendarCard.tsx
  • packages/desktop-client/src/components/reports/SaveReportName.tsx
  • packages/desktop-client/src/components/reports/SaveReportDelete.tsx
  • packages/desktop-client/src/components/reports/SaveReportChoose.tsx
  • packages/desktop-client/src/components/reports/SaveReport.tsx
  • packages/desktop-client/src/components/reports/ReportSidebar.tsx
  • packages/desktop-client/src/components/reports/reports/Calendar.tsx
  • packages/desktop-client/src/components/reports/reports/CashFlow.tsx
  • packages/desktop-client/src/components/mobile/transactions/TransactionListItem.tsx
  • packages/desktop-client/src/components/reports/ModeButton.tsx
  • packages/desktop-client/src/components/reports/Overview.tsx
  • packages/desktop-client/src/components/reports/CategorySelector.tsx
  • packages/desktop-client/src/components/reports/graphs/CalendarGraph.tsx
  • packages/desktop-client/src/components/sidebar/ToggleButton.tsx
  • packages/desktop-client/src/components/sidebar/BudgetName.tsx
  • packages/desktop-client/src/components/reports/GraphButton.tsx
  • packages/desktop-client/src/components/reports/Header.tsx
  • packages/desktop-client/src/components/util/AmountInput.tsx
  • packages/desktop-client/src/components/admin/UserDirectory/UserDirectoryRow.tsx
  • packages/desktop-client/src/components/admin/UserDirectory/UserDirectoryPage.tsx
  • packages/desktop-client/src/components/admin/UserDirectory/UserDirectory.tsx
  • packages/desktop-client/src/components/admin/UserAccess/UserAccess.tsx
Originally created by @coderabbitai[bot] on GitHub (Feb 11, 2025). Original GitHub issue: https://github.com/actualbudget/actual/issues/4355 Originally assigned to: @MatissJanis on GitHub. ## Context The `Button2` component is deprecated and should be migrated to use `@actual-app/components/button` instead. This affects both `Button` and `ButtonWithLoading` imports. ## References - Original discussion: https://github.com/actualbudget/actual/pull/4346 ## Files to update Update imports like: ```typescript import { Button } from '../common/Button2' import { Button } from './common/Button2' import { Button } from './Button2' import { ButtonWithLoading } from '../common/Button2' ``` to: ```typescript import { Button, ButtonWithLoading } from '@actual-app/components/button' ``` ### Affected files (137 files): - packages/desktop-client/src/components/NotesButton.tsx - packages/desktop-client/src/components/EditablePageHeaderTitle.tsx - packages/desktop-client/src/components/LoggedInUser.tsx - packages/desktop-client/src/components/ManageRules.tsx - packages/desktop-client/src/components/Notifications.tsx - packages/desktop-client/src/components/Titlebar.tsx - packages/desktop-client/src/components/rules/RuleRow.tsx - packages/desktop-client/src/components/UpdateNotification.tsx - packages/desktop-client/src/components/transactions/TransactionsTable.jsx - packages/desktop-client/src/components/ThemeSelector.tsx - packages/desktop-client/src/components/accounts/Balance.tsx - packages/desktop-client/src/components/accounts/AccountSyncCheck.tsx - packages/desktop-client/src/components/accounts/Account.tsx - packages/desktop-client/src/components/budget/IncomeHeader.tsx - packages/desktop-client/src/components/budget/tracking/TrackingBudgetComponents.tsx - packages/desktop-client/src/components/budget/BudgetTotals.tsx - packages/desktop-client/src/components/common/Select.tsx - packages/desktop-client/src/components/filters/CompactFiltersButton.tsx - packages/desktop-client/src/components/common/Search.tsx - packages/desktop-client/src/components/common/MenuButton.tsx - packages/desktop-client/src/components/HelpMenu.tsx - packages/desktop-client/src/components/common/Link.tsx - packages/desktop-client/src/components/filters/FilterExpression.tsx - packages/desktop-client/src/components/filters/FiltersButton.tsx - packages/desktop-client/src/components/budget/SidebarGroup.tsx - packages/desktop-client/src/components/budget/tracking/budgetsummary/BudgetSummary.tsx - packages/desktop-client/src/components/filters/FiltersMenu.jsx - packages/desktop-client/src/components/filters/OpButton.tsx - packages/desktop-client/src/components/filters/NameFilter.tsx - packages/desktop-client/src/components/filters/SavedFilterMenuButton.tsx - packages/desktop-client/src/components/accounts/Header.tsx - packages/desktop-client/src/components/accounts/Reconcile.tsx - packages/desktop-client/src/components/budget/SidebarCategory.tsx - packages/desktop-client/src/components/budget/envelope/TransferMenu.tsx - packages/desktop-client/src/components/budget/envelope/HoldMenu.tsx - packages/desktop-client/src/components/budget/envelope/CoverMenu.tsx - packages/desktop-client/src/components/mobile/MobileBackButton.tsx - packages/desktop-client/src/components/manager/BudgetList.tsx - packages/desktop-client/src/components/modals/TransferModal.tsx - packages/desktop-client/src/components/mobile/budget/BudgetTable.jsx - packages/desktop-client/src/components/manager/ConfigServer.tsx - packages/desktop-client/src/components/manager/subscribe/Error.tsx - packages/desktop-client/src/components/modals/TrackingBudgetMonthMenuModal.tsx - packages/desktop-client/src/components/modals/SingleInputModal.tsx - packages/desktop-client/src/components/manager/subscribe/ChangePassword.tsx - packages/desktop-client/src/components/manager/subscribe/Login.tsx - packages/desktop-client/src/components/manager/subscribe/Bootstrap.tsx - packages/desktop-client/src/components/modals/SelectLinkedAccountsModal.jsx - packages/desktop-client/src/components/modals/PasswordEnableModal.tsx - packages/desktop-client/src/components/modals/OutOfSyncMigrationsModal.tsx - packages/desktop-client/src/components/modals/SimpleFinInitialiseModal.tsx - packages/desktop-client/src/components/modals/NotesModal.tsx - packages/desktop-client/src/components/modals/OpenIDEnableModal.tsx - packages/desktop-client/src/components/modals/MergeUnusedPayeesModal.tsx - packages/desktop-client/src/components/modals/TransferOwnership.tsx - packages/desktop-client/src/components/manager/subscribe/ConfirmPasswordForm.tsx - packages/desktop-client/src/components/manager/subscribe/OpenIdForm.tsx - packages/desktop-client/src/components/manager/WelcomeScreen.tsx - packages/desktop-client/src/components/modals/HoldBufferModal.tsx - packages/desktop-client/src/components/modals/LoadBackupModal.tsx - packages/desktop-client/src/components/modals/manager/ImportYNAB5Modal.tsx - packages/desktop-client/src/components/modals/manager/ImportModal.tsx - packages/desktop-client/src/components/modals/manager/ImportYNAB4Modal.tsx - packages/desktop-client/src/components/modals/manager/ImportActualModal.tsx - packages/desktop-client/src/components/mobile/accounts/Accounts.tsx - packages/desktop-client/src/components/modals/manager/DuplicateFileModal.tsx - packages/desktop-client/src/components/modals/CreateLocalAccountModal.tsx - packages/desktop-client/src/components/modals/CoverModal.tsx - packages/desktop-client/src/components/modals/EditRuleModal.jsx - packages/desktop-client/src/components/modals/CreateAccountModal.tsx - packages/desktop-client/src/components/modals/ConfirmTransactionEditModal.tsx - packages/desktop-client/src/components/modals/ConfirmUnlinkAccountModal.tsx - packages/desktop-client/src/components/modals/ConfirmTransactionDeleteModal.tsx - packages/desktop-client/src/components/modals/CloseAccountModal.tsx - packages/desktop-client/src/components/modals/ConfirmCategoryDeleteModal.tsx - packages/desktop-client/src/components/modals/CategoryMenuModal.tsx - packages/desktop-client/src/components/modals/CreateEncryptionKeyModal.tsx - packages/desktop-client/src/components/modals/manager/ConfirmChangeDocumentDir.tsx - packages/desktop-client/src/components/modals/manager/DeleteFileModal.tsx - packages/desktop-client/src/components/modals/ImportTransactionsModal/ImportTransactionsModal.jsx - packages/desktop-client/src/components/modals/EditAccess.tsx - packages/desktop-client/src/components/mobile/accounts/AccountTransactions.tsx - packages/desktop-client/src/components/modals/EditUser.tsx - packages/desktop-client/src/components/modals/EditFieldModal.tsx - packages/desktop-client/src/components/modals/manager/FilesSettingsModal.tsx - packages/desktop-client/src/components/modals/CategoryGroupMenuModal.tsx - packages/desktop-client/src/components/modals/EnvelopeBudgetMonthMenuModal.tsx - packages/desktop-client/src/components/modals/GoCardlessExternalMsgModal.tsx - packages/desktop-client/src/components/modals/FixEncryptionKeyModal.tsx - packages/desktop-client/src/components/modals/GoCardlessInitialiseModal.tsx - packages/desktop-client/src/components/modals/AccountMenuModal.tsx - packages/desktop-client/src/components/budget/envelope/EnvelopeBudgetComponents.tsx - packages/desktop-client/src/components/payees/CategoryLearning.tsx - packages/desktop-client/src/components/schedules/SchedulesTable.tsx - packages/desktop-client/src/components/settings/Reset.tsx - packages/desktop-client/src/components/schedules/PostsOfflineNotification.tsx - packages/desktop-client/src/components/schedules/ScheduleDetails.tsx - packages/desktop-client/src/components/schedules/DiscoverSchedules.tsx - packages/desktop-client/src/components/settings/Export.tsx - packages/desktop-client/src/components/settings/Encryption.tsx - packages/desktop-client/src/components/settings/RepairTransactions.tsx - packages/desktop-client/src/components/settings/BudgetTypeSettings.tsx - packages/desktop-client/src/components/settings/AuthSettings.tsx - packages/desktop-client/src/components/mobile/transactions/AddTransactionButton.tsx - packages/desktop-client/src/components/schedules/ScheduleLink.tsx - packages/desktop-client/src/components/payees/ManagePayees.tsx - packages/desktop-client/src/components/settings/index.tsx - packages/desktop-client/src/components/schedules/UpcomingLength.tsx - packages/desktop-client/src/components/mobile/transactions/FocusableAmountInput.tsx - packages/desktop-client/src/components/schedules/index.tsx - packages/desktop-client/src/components/budget/envelope/budgetsummary/BudgetSummary.tsx - packages/desktop-client/src/components/select/RecurringSchedulePicker.tsx - packages/desktop-client/src/components/reports/reports/Summary.tsx - packages/desktop-client/src/components/reports/reports/Spending.tsx - packages/desktop-client/src/components/reports/reports/NetWorth.tsx - packages/desktop-client/src/components/reports/reports/CalendarCard.tsx - packages/desktop-client/src/components/reports/SaveReportName.tsx - packages/desktop-client/src/components/reports/SaveReportDelete.tsx - packages/desktop-client/src/components/reports/SaveReportChoose.tsx - packages/desktop-client/src/components/reports/SaveReport.tsx - packages/desktop-client/src/components/reports/ReportSidebar.tsx - packages/desktop-client/src/components/reports/reports/Calendar.tsx - packages/desktop-client/src/components/reports/reports/CashFlow.tsx - packages/desktop-client/src/components/mobile/transactions/TransactionListItem.tsx - packages/desktop-client/src/components/reports/ModeButton.tsx - packages/desktop-client/src/components/reports/Overview.tsx - packages/desktop-client/src/components/reports/CategorySelector.tsx - packages/desktop-client/src/components/reports/graphs/CalendarGraph.tsx - packages/desktop-client/src/components/sidebar/ToggleButton.tsx - packages/desktop-client/src/components/sidebar/BudgetName.tsx - packages/desktop-client/src/components/reports/GraphButton.tsx - packages/desktop-client/src/components/reports/Header.tsx - packages/desktop-client/src/components/util/AmountInput.tsx - packages/desktop-client/src/components/admin/UserDirectory/UserDirectoryRow.tsx - packages/desktop-client/src/components/admin/UserDirectory/UserDirectoryPage.tsx - packages/desktop-client/src/components/admin/UserDirectory/UserDirectory.tsx - packages/desktop-client/src/components/admin/UserAccess/UserAccess.tsx
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#50974