[PR #6938] [CLOSED] [WIP] Move redux state to react-query - prefs states #41262

Closed
opened 2026-04-23 14:04:10 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/actualbudget/actual/pull/6938
Author: @joel-jeremy
Created: 2/11/2026
Status: Closed

Base: masterHead: react-query-prefs


📝 Commits (10+)

  • 6ca922f Move redux state to react-query - account states
  • 757c93a Fix onbudget and offbudget displaying closed accounts
  • 5263424 Move redux state to react-query - payees states
  • 40d45a5 Add release notes for PR #6880
  • 5ae1f53 Replace usage of logger in desktop-client with console
  • fedef15 Address feedback on adding default data to usePayees (#6931)
  • 8d4086a Fix imports
  • 696d1df Update empty payees list test
  • 1bdb052 Cleanup and simplify AccountEntity definition to fix satisfies syntax
  • f039864 Merge remote-tracking branch 'origin/master' into react-query-payees

📊 Changes

25 files changed (+575 additions, -302 deletions)

View changed files

📝 packages/desktop-client/src/app/appSlice.ts (+10 -6)
📝 packages/desktop-client/src/browser-preload.browser.js (+2 -2)
📝 packages/desktop-client/src/budgetfiles/budgetfilesSlice.ts (+52 -19)
📝 packages/desktop-client/src/components/App.tsx (+4 -4)
📝 packages/desktop-client/src/components/FinancesApp.tsx (+6 -6)
📝 packages/desktop-client/src/components/LoggedInUser.tsx (+3 -3)
📝 packages/desktop-client/src/components/budget/index.tsx (+2 -1)
📝 packages/desktop-client/src/components/manager/ConfigServer.tsx (+9 -13)
📝 packages/desktop-client/src/components/modals/CreateEncryptionKeyModal.tsx (+6 -2)
📝 packages/desktop-client/src/components/settings/index.tsx (+10 -15)
📝 packages/desktop-client/src/global-events.ts (+14 -3)
📝 packages/desktop-client/src/hooks/useGlobalPref.ts (+21 -21)
📝 packages/desktop-client/src/hooks/useMetadataPref.ts (+17 -12)
📝 packages/desktop-client/src/hooks/useSyncedPref.ts (+14 -16)
📝 packages/desktop-client/src/hooks/useSyncedPrefs.ts (+5 -12)
📝 packages/desktop-client/src/index.tsx (+14 -0)
packages/desktop-client/src/prefs/index.ts (+2 -0)
packages/desktop-client/src/prefs/mutations.ts (+250 -0)
📝 packages/desktop-client/src/prefs/prefsSlice.ts (+2 -150)
packages/desktop-client/src/prefs/queries.ts (+104 -0)

...and 5 more files

📄 Description

Dependent on https://github.com/actualbudget/actual/pull/6880


Bundle Stats

Bundle Files count Total bundle size % Changed
desktop-client 27 14.89 MB → 14.86 MB (-35.07 kB) -0.23%
loot-core 1 5.82 MB → 5.82 MB (-1.31 kB) -0.02%
api 1 4.43 MB → 4.43 MB (-1.09 kB) -0.02%
View detailed bundle stats

desktop-client

Total

Files count Total bundle size % Changed
27 14.89 MB → 14.86 MB (-35.07 kB) -0.23%
Changeset
File Δ Size
src/prefs/mutations.ts 🆕 +5.18 kB 0 B → 5.18 kB
src/prefs/queries.ts 🆕 +2.07 kB 0 B → 2.07 kB
src/hooks/useSyncedPref.ts 📈 +635 B (+83.01%) 765 B → 1.37 kB
src/hooks/useMetadataPref.ts 📈 +624 B (+77.81%) 802 B → 1.39 kB
src/hooks/useGlobalPref.ts 📈 +608 B (+66.02%) 921 B → 1.49 kB
src/hooks/useClosedAccounts.ts 📈 +154 B (+58.11%) 265 B → 419 B
src/hooks/useOnBudgetAccounts.ts 📈 +154 B (+57.25%) 269 B → 423 B
src/hooks/useOffBudgetAccounts.ts 📈 +154 B (+56.83%) 271 B → 425 B
src/index.tsx 📈 +192 B (+10.64%) 1.76 kB → 1.95 kB
src/components/budget/goals/editor/RefillAutomation.tsx 📈 +159 B (+9.56%) 1.63 kB → 1.78 kB
src/users/usersSlice.ts 📈 +89 B (+7.73%) 1.13 kB → 1.21 kB
src/global-events.ts 📈 +276 B (+6.89%) 3.91 kB → 4.18 kB
src/budgetfiles/budgetfilesSlice.ts 📈 +737 B (+6.09%) 11.83 kB → 12.55 kB
node_modules/recharts/es6/state/polarOptionsSlice.js 📈 +18 B (+5.57%) 323 B → 341 B
src/app/appSlice.ts 📈 +150 B (+5.50%) 2.66 kB → 2.81 kB
src/components/App.tsx 📈 +249 B (+2.65%) 9.19 kB → 9.44 kB
src/components/modals/CreateEncryptionKeyModal.tsx 📈 +159 B (+1.93%) 8.06 kB → 8.22 kB
src/sync-events.ts 📈 +193 B (+1.85%) 10.19 kB → 10.38 kB
src/components/budget/index.tsx 📈 +224 B (+1.73%) 12.65 kB → 12.87 kB
home/runner/work/actual/actual/packages/loot-core/src/shared/schedules.ts 📈 +93 B (+0.75%) 12.13 kB → 12.22 kB
src/components/FinancesApp.tsx 📈 +127 B (+0.67%) 18.45 kB → 18.57 kB
src/accounts/accountsSlice.ts 📈 +6 B (+0.45%) 1.31 kB → 1.31 kB
src/components/settings/index.tsx 📈 +33 B (+0.28%) 11.45 kB → 11.49 kB
node_modules/estree-util-is-identifier-name/lib/index.js 📈 +2 B (+0.26%) 756 B → 758 B
locale/th.json 📈 +303 B (+0.16%) 181.58 kB → 181.87 kB
locale/da.json 📈 +158 B (+0.15%) 106.2 kB → 106.35 kB
locale/ca.json 📈 +225 B (+0.12%) 187.93 kB → 188.15 kB
locale/fr.json 📈 +194 B (+0.11%) 179.41 kB → 179.6 kB
locale/es.json 📈 +186 B (+0.10%) 174.37 kB → 174.55 kB
locale/it.json 📈 +182 B (+0.10%) 170.98 kB → 171.16 kB
locale/nb-NO.json 📈 +166 B (+0.10%) 156.8 kB → 156.96 kB
locale/de.json 📈 +183 B (+0.10%) 179.89 kB → 180.07 kB
src/components/select/RecurringSchedulePicker.tsx 📈 +4 B (+0.01%) 31.47 kB → 31.47 kB
src/components/settings/Currency.tsx 📉 -2 B (-0.01%) 21.41 kB → 21.41 kB
home/runner/work/actual/actual/packages/loot-core/src/shared/currencies.ts 📉 -1 B (-0.02%) 5.66 kB → 5.66 kB
src/components/transactions/SimpleTransactionsTable.tsx 📉 -2 B (-0.02%) 9.17 kB → 9.17 kB
locale/en.json 📉 -48 B (-0.03%) 170.42 kB → 170.37 kB
node_modules/hast-util-to-jsx-runtime/lib/index.js 📉 -18 B (-0.09%) 18.93 kB → 18.92 kB
src/components/mobile/rules/RulesListItem.tsx 📉 -23 B (-0.24%) 9.47 kB → 9.44 kB
home/runner/work/actual/actual/packages/loot-core/src/shared/util.ts 📉 -26 B (-0.27%) 9.31 kB → 9.29 kB
locale/uk.json 📉 -619 B (-0.28%) 215.35 kB → 214.74 kB
src/redux/store.ts 📉 -4 B (-0.37%) 1.05 kB → 1.05 kB
src/components/manager/ConfigServer.tsx 📉 -101 B (-0.42%) 23.26 kB → 23.16 kB
src/components/settings/ThemeInstaller.tsx 📉 -50 B (-0.48%) 10.27 kB → 10.22 kB
src/browser-preload.browser.js 📉 -34 B (-0.74%) 4.51 kB → 4.48 kB
src/components/mobile/ActionableGridListItem.tsx 📉 -68 B (-1.11%) 5.96 kB → 5.9 kB
src/components/LoggedInUser.tsx 📉 -85 B (-1.37%) 6.07 kB → 5.99 kB
locale/pl.json 📉 -1.29 kB (-1.43%) 89.65 kB → 88.37 kB
src/components/mobile/transactions/TransactionListItem.tsx 📉 -259 B (-1.76%) 14.35 kB → 14.1 kB
src/components/mobile/accounts/OffBudgetAccountTransactions.tsx 📉 -171 B (-2.75%) 6.06 kB → 5.9 kB
src/components/mobile/accounts/OnBudgetAccountTransactions.tsx 📉 -171 B (-2.76%) 6.05 kB → 5.88 kB
src/hooks/useSyncedPrefs.ts 📉 -25 B (-4.13%) 605 B → 580 B
src/components/reports/graphs/BudgetAnalysisGraph.tsx 📉 -613 B (-4.43%) 13.51 kB → 12.91 kB
src/components/sidebar/Accounts.tsx 📉 -518 B (-5.53%) 9.15 kB → 8.65 kB
locale/nl.json 📉 -6.69 kB (-5.92%) 113.06 kB → 106.37 kB
src/components/ServerContext.tsx 📉 -443 B (-6.99%) 6.19 kB → 5.76 kB
src/components/reports/FormulaResult.tsx 📉 -294 B (-7.36%) 3.9 kB → 3.61 kB
src/components/reports/SummaryNumber.tsx 📉 -205 B (-7.58%) 2.64 kB → 2.44 kB
src/components/alerts.tsx 📉 -385 B (-9.73%) 3.87 kB → 3.49 kB
locale/pt-BR.json 📉 -28.67 kB (-15.68%) 182.89 kB → 154.22 kB
src/components/modals/BudgetAutomationsModal.tsx 📉 -3.29 kB (-22.82%) 14.4 kB → 11.11 kB
src/hooks/usePreviewTransactions.ts 📉 -1.52 kB (-33.97%) 4.48 kB → 2.96 kB
src/prefs/prefsSlice.ts 📉 -2.51 kB (-66.77%) 3.76 kB → 1.25 kB
src/hooks/useOnVisible.ts 🔥 -781 B (-100%) 781 B → 0 B
View detailed bundle breakdown

Added
No assets were added

Removed
No assets were removed

Bigger

Asset File Size % Changed
static/js/index.js 9.54 MB → 9.55 MB (+3.95 kB) +0.04%
static/js/th.js 181.58 kB → 181.87 kB (+303 B) +0.16%
static/js/ca.js 187.93 kB → 188.15 kB (+225 B) +0.12%
static/js/fr.js 179.41 kB → 179.6 kB (+194 B) +0.11%
static/js/es.js 174.37 kB → 174.55 kB (+186 B) +0.10%
static/js/de.js 179.89 kB → 180.07 kB (+183 B) +0.10%
static/js/it.js 170.98 kB → 171.16 kB (+182 B) +0.10%
static/js/nb-NO.js 156.8 kB → 156.96 kB (+166 B) +0.10%
static/js/da.js 106.2 kB → 106.35 kB (+158 B) +0.15%

Smaller

Asset File Size % Changed
static/js/pt-BR.js 182.89 kB → 154.22 kB (-28.67 kB) -15.68%
static/js/nl.js 113.06 kB → 106.37 kB (-6.69 kB) -5.92%
static/js/usePayeeRuleCounts.js 11.57 kB → 10.04 kB (-1.52 kB) -13.15%
static/js/pl.js 89.65 kB → 88.37 kB (-1.29 kB) -1.43%
static/js/ReportRouter.js 1.16 MB → 1.16 MB (-1.09 kB) -0.09%
static/js/uk.js 215.35 kB → 214.74 kB (-619 B) -0.28%
static/js/narrow.js 638.11 kB → 637.68 kB (-433 B) -0.07%
static/js/TransactionList.js 106.48 kB → 106.22 kB (-259 B) -0.24%
static/js/en.js 170.42 kB → 170.37 kB (-48 B) -0.03%

Unchanged

Asset File Size % Changed
static/js/indexeddb-main-thread-worker-e59fee74.js 12.94 kB 0%
static/js/workbox-window.prod.es5.js 5.64 kB 0%
static/js/en-GB.js 7.18 kB 0%
static/js/resize-observer.js 18.37 kB 0%
static/js/BackgroundImage.js 120.54 kB 0%
static/js/wide.js 164.15 kB 0%
static/js/AppliedFilters.js 9.71 kB 0%
static/js/useTransactionBatchActions.js 13.23 kB 0%
static/js/FormulaEditor.js 1.04 MB 0%

loot-core

Total

Files count Total bundle size % Changed
1 5.82 MB → 5.82 MB (-1.31 kB) -0.02%
Changeset
File Δ Size
home/runner/work/actual/actual/packages/api/methods.ts 🆕 +1.75 kB 0 B → 1.75 kB
home/runner/work/actual/actual/packages/api/injected.js 🆕 +148 B 0 B → 148 B
home/runner/work/actual/actual/packages/loot-core/src/shared/schedules.ts 📈 +97 B (+1.58%) 5.98 kB → 6.08 kB
home/runner/work/actual/actual/packages/loot-core/src/server/main.ts 📈 +74 B (+1.23%) 5.89 kB → 5.96 kB
home/runner/work/actual/actual/packages/loot-core/src/server/aql/index.ts 📈 +2 B (+0.43%) 468 B → 470 B
home/runner/work/actual/actual/packages/loot-core/src/server/transactions/app.ts 📈 +4 B (+0.16%) 2.4 kB → 2.41 kB
home/runner/work/actual/actual/packages/loot-core/src/server/budget/app.ts 📈 +14 B (+0.13%) 10.15 kB → 10.17 kB
home/runner/work/actual/actual/packages/loot-core/src/server/budget/goal-template.ts 📈 +8 B (+0.11%) 7.01 kB → 7.02 kB
home/runner/work/actual/actual/packages/loot-core/src/server/api.ts 📈 +20 B (+0.08%) 25.94 kB → 25.96 kB
home/runner/work/actual/actual/packages/loot-core/src/server/schedules/find-schedules.ts 📈 +6 B (+0.06%) 9.46 kB → 9.47 kB
home/runner/work/actual/actual/packages/loot-core/src/server/transactions/export/export-to-csv.ts 📈 +2 B (+0.06%) 3.2 kB → 3.2 kB
home/runner/work/actual/actual/packages/loot-core/src/server/accounts/sync.ts 📈 +16 B (+0.06%) 25.87 kB → 25.88 kB
home/runner/work/actual/actual/packages/loot-core/src/server/tools/app.ts 📈 +2 B (+0.06%) 3.36 kB → 3.36 kB
home/runner/work/actual/actual/packages/loot-core/src/server/transactions/merge.ts 📈 +2 B (+0.06%) 3.44 kB → 3.44 kB
home/runner/work/actual/actual/packages/loot-core/src/server/reports/app.ts 📈 +2 B (+0.05%) 4.27 kB → 4.27 kB
home/runner/work/actual/actual/packages/loot-core/src/mocks/budget.ts 📈 +8 B (+0.03%) 25.08 kB → 25.08 kB
home/runner/work/actual/actual/packages/loot-core/src/server/accounts/app.ts 📈 +8 B (+0.03%) 27.27 kB → 27.28 kB
home/runner/work/actual/actual/packages/loot-core/src/server/aql/schema/executors.ts 📈 +2 B (+0.03%) 7.35 kB → 7.36 kB
home/runner/work/actual/actual/packages/loot-core/src/server/budget/base.ts 📈 +2 B (+0.02%) 8.81 kB → 8.81 kB
home/runner/work/actual/actual/packages/loot-core/src/server/dashboard/app.ts 📈 +2 B (+0.02%) 9.51 kB → 9.51 kB
home/runner/work/actual/actual/packages/loot-core/src/server/budget/category-template-context.ts 📈 +4 B (+0.02%) 23.49 kB → 23.49 kB
home/runner/work/actual/actual/packages/loot-core/src/server/transactions/transaction-rules.ts 📈 +2 B (+0.01%) 25.25 kB → 25.25 kB
home/runner/work/actual/actual/packages/loot-core/src/shared/currencies.ts 📉 -1 B (-0.02%) 5.43 kB → 5.43 kB
home/runner/work/actual/actual/packages/loot-core/src/shared/util.ts 📉 -30 B (-0.38%) 7.7 kB → 7.67 kB
home/runner/work/actual/actual/packages/loot-core/src/server/importers/ynab5.ts 📉 -848 B (-2.80%) 29.57 kB → 28.75 kB
home/runner/work/actual/actual/packages/loot-core/src/server/schedules/app.ts 📉 -476 B (-3.53%) 13.17 kB → 12.71 kB
home/runner/work/actual/actual/packages/loot-core/src/server/importers/ynab4.ts 📉 -889 B (-7.26%) 11.97 kB → 11.1 kB
home/runner/work/actual/actual/packages/loot-core/src/server/budgetfiles/backups.ts 📉 -608 B (-10.53%) 5.64 kB → 5.05 kB
home/runner/work/actual/actual/packages/loot-core/src/server/main-app.ts 📉 -107 B (-48.42%) 221 B → 114 B
node_modules/date-fns/isFriday.js 🔥 -603 B (-100%) 603 B → 0 B
View detailed bundle breakdown

Added

Asset File Size % Changed
kcab.worker.BwrdDDMW.js 0 B → 5.82 MB (+5.82 MB) -

Removed

Asset File Size % Changed
kcab.worker.CVw5oNPx.js 5.82 MB → 0 B (-5.82 MB) -100%

Bigger
No assets were bigger

Smaller
No assets were smaller

Unchanged
No assets were unchanged


api

Total

Files count Total bundle size % Changed
1 4.43 MB → 4.43 MB (-1.09 kB) -0.02%
Changeset
File Δ Size
home/runner/work/actual/actual/packages/api/methods.ts 🆕 +1.52 kB 0 B → 1.52 kB
home/runner/work/actual/actual/packages/api/injected.js 🆕 +128 B 0 B → 128 B
src/shared/schedules.ts 📈 +93 B (+1.71%) 5.32 kB → 5.42 kB
src/server/main.ts 📈 +70 B (+1.34%) 5.1 kB → 5.17 kB
src/server/aql/index.ts 📈 +2 B (+0.49%) 408 B → 410 B
src/server/transactions/app.ts 📈 +4 B (+0.18%) 2.12 kB → 2.12 kB
src/server/budget/app.ts 📈 +14 B (+0.15%) 8.9 kB → 8.91 kB
src/server/budget/goal-template.ts 📈 +8 B (+0.13%) 6.17 kB → 6.18 kB
src/server/api.ts 📈 +20 B (+0.09%) 22.7 kB → 22.72 kB
src/server/schedules/find-schedules.ts 📈 +6 B (+0.07%) 8.3 kB → 8.31 kB
src/server/transactions/export/export-to-csv.ts 📈 +2 B (+0.07%) 2.87 kB → 2.87 kB
src/server/accounts/sync.ts 📈 +16 B (+0.07%) 23.09 kB → 23.1 kB
src/server/transactions/merge.ts 📈 +2 B (+0.06%) 3.07 kB → 3.07 kB
src/server/tools/app.ts 📈 +2 B (+0.06%) 3.11 kB → 3.11 kB
src/server/reports/app.ts 📈 +2 B (+0.05%) 3.78 kB → 3.78 kB
src/mocks/budget.ts 📈 +8 B (+0.04%) 22.27 kB → 22.28 kB
src/server/accounts/app.ts 📈 +8 B (+0.03%) 23.29 kB → 23.3 kB
src/server/aql/schema/executors.ts 📈 +2 B (+0.03%) 6.64 kB → 6.64 kB
src/server/budget/base.ts 📈 +2 B (+0.02%) 7.89 kB → 7.89 kB
src/server/dashboard/app.ts 📈 +2 B (+0.02%) 8.51 kB → 8.51 kB
src/server/budget/category-template-context.ts 📈 +4 B (+0.02%) 20.99 kB → 20.99 kB
src/server/transactions/transaction-rules.ts 📈 +2 B (+0.01%) 22.43 kB → 22.43 kB
src/shared/currencies.ts 📉 -1 B (-0.02%) 5.25 kB → 5.25 kB
src/shared/util.ts 📉 -26 B (-0.38%) 6.69 kB → 6.66 kB
src/server/importers/ynab5.ts 📉 -720 B (-2.66%) 26.39 kB → 25.69 kB
src/server/schedules/app.ts 📉 -428 B (-3.66%) 11.42 kB → 11 kB
src/server/importers/ynab4.ts 📉 -753 B (-6.90%) 10.66 kB → 9.92 kB
src/server/budgetfiles/backups.ts 📉 -540 B (-10.64%) 4.96 kB → 4.43 kB
src/server/main-app.ts 📉 -95 B (-58.64%) 162 B → 67 B
node_modules/date-fns/isFriday.js 🔥 -507 B (-100%) 507 B → 0 B
View detailed bundle breakdown

Added
No assets were added

Removed
No assets were removed

Bigger
No assets were bigger

Smaller

Asset File Size % Changed
bundle.api.js 4.43 MB → 4.43 MB (-1.09 kB) -0.02%

Unchanged
No assets were unchanged


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/actualbudget/actual/pull/6938 **Author:** [@joel-jeremy](https://github.com/joel-jeremy) **Created:** 2/11/2026 **Status:** ❌ Closed **Base:** `master` ← **Head:** `react-query-prefs` --- ### 📝 Commits (10+) - [`6ca922f`](https://github.com/actualbudget/actual/commit/6ca922f4a46fc36302ebb89ba0ed9d18589407bb) Move redux state to react-query - account states - [`757c93a`](https://github.com/actualbudget/actual/commit/757c93afe23461e7212d608edbb1ca114808d1f8) Fix onbudget and offbudget displaying closed accounts - [`5263424`](https://github.com/actualbudget/actual/commit/5263424a77312160fbdc564cdb43d568bbef8124) Move redux state to react-query - payees states - [`40d45a5`](https://github.com/actualbudget/actual/commit/40d45a5c9eacdd409ea28d48284ec880d4d39243) Add release notes for PR #6880 - [`5ae1f53`](https://github.com/actualbudget/actual/commit/5ae1f539c4416c49b00e4d0a663cca4dece0a5df) Replace usage of logger in desktop-client with console - [`fedef15`](https://github.com/actualbudget/actual/commit/fedef15cf25755b2232ece0b46a1401ba5d12fc6) Address feedback on adding default data to usePayees (#6931) - [`8d4086a`](https://github.com/actualbudget/actual/commit/8d4086ad753099c77a0668e95a5dcf261d8b8355) Fix imports - [`696d1df`](https://github.com/actualbudget/actual/commit/696d1df5089e6420380fed2d848a79678199048b) Update empty payees list test - [`1bdb052`](https://github.com/actualbudget/actual/commit/1bdb052107b4427b33fcec55bb31028155b89c3b) Cleanup and simplify AccountEntity definition to fix `satisfies` syntax - [`f039864`](https://github.com/actualbudget/actual/commit/f039864a64bfb61ee684a9b4649d2f9c78fca3d4) Merge remote-tracking branch 'origin/master' into react-query-payees ### 📊 Changes **25 files changed** (+575 additions, -302 deletions) <details> <summary>View changed files</summary> 📝 `packages/desktop-client/src/app/appSlice.ts` (+10 -6) 📝 `packages/desktop-client/src/browser-preload.browser.js` (+2 -2) 📝 `packages/desktop-client/src/budgetfiles/budgetfilesSlice.ts` (+52 -19) 📝 `packages/desktop-client/src/components/App.tsx` (+4 -4) 📝 `packages/desktop-client/src/components/FinancesApp.tsx` (+6 -6) 📝 `packages/desktop-client/src/components/LoggedInUser.tsx` (+3 -3) 📝 `packages/desktop-client/src/components/budget/index.tsx` (+2 -1) 📝 `packages/desktop-client/src/components/manager/ConfigServer.tsx` (+9 -13) 📝 `packages/desktop-client/src/components/modals/CreateEncryptionKeyModal.tsx` (+6 -2) 📝 `packages/desktop-client/src/components/settings/index.tsx` (+10 -15) 📝 `packages/desktop-client/src/global-events.ts` (+14 -3) 📝 `packages/desktop-client/src/hooks/useGlobalPref.ts` (+21 -21) 📝 `packages/desktop-client/src/hooks/useMetadataPref.ts` (+17 -12) 📝 `packages/desktop-client/src/hooks/useSyncedPref.ts` (+14 -16) 📝 `packages/desktop-client/src/hooks/useSyncedPrefs.ts` (+5 -12) 📝 `packages/desktop-client/src/index.tsx` (+14 -0) ➕ `packages/desktop-client/src/prefs/index.ts` (+2 -0) ➕ `packages/desktop-client/src/prefs/mutations.ts` (+250 -0) 📝 `packages/desktop-client/src/prefs/prefsSlice.ts` (+2 -150) ➕ `packages/desktop-client/src/prefs/queries.ts` (+104 -0) _...and 5 more files_ </details> ### 📄 Description <!-- Thank you for submitting a pull request! Make sure to follow the instructions to write release notes for your PR — it should only take a minute or two: https://github.com/actualbudget/docs#writing-good-release-notes. Try running yarn generate:release-notes *before* pushing your PR for an interactive experience. --> Dependent on https://github.com/actualbudget/actual/pull/6880 <!--- actual-bot-sections ---> <hr /> <!--- bundlestats-action-comment key:combined start ---> ### Bundle Stats Bundle | Files count | Total bundle size | % Changed ------ | ----------- | ----------------- | --------- desktop-client | 27 | 14.89 MB → 14.86 MB (-35.07 kB) | -0.23% loot-core | 1 | 5.82 MB → 5.82 MB (-1.31 kB) | -0.02% api | 1 | 4.43 MB → 4.43 MB (-1.09 kB) | -0.02% <details> <summary>View detailed bundle stats</summary> #### desktop-client **Total** Files count | Total bundle size | % Changed ----------- | ----------------- | --------- 27 | 14.89 MB → 14.86 MB (-35.07 kB) | -0.23% <details> <summary>Changeset</summary> File | Δ | Size ---- | - | ---- `src/prefs/mutations.ts` | 🆕 +5.18 kB | 0 B → 5.18 kB `src/prefs/queries.ts` | 🆕 +2.07 kB | 0 B → 2.07 kB `src/hooks/useSyncedPref.ts` | 📈 +635 B (+83.01%) | 765 B → 1.37 kB `src/hooks/useMetadataPref.ts` | 📈 +624 B (+77.81%) | 802 B → 1.39 kB `src/hooks/useGlobalPref.ts` | 📈 +608 B (+66.02%) | 921 B → 1.49 kB `src/hooks/useClosedAccounts.ts` | 📈 +154 B (+58.11%) | 265 B → 419 B `src/hooks/useOnBudgetAccounts.ts` | 📈 +154 B (+57.25%) | 269 B → 423 B `src/hooks/useOffBudgetAccounts.ts` | 📈 +154 B (+56.83%) | 271 B → 425 B `src/index.tsx` | 📈 +192 B (+10.64%) | 1.76 kB → 1.95 kB `src/components/budget/goals/editor/RefillAutomation.tsx` | 📈 +159 B (+9.56%) | 1.63 kB → 1.78 kB `src/users/usersSlice.ts` | 📈 +89 B (+7.73%) | 1.13 kB → 1.21 kB `src/global-events.ts` | 📈 +276 B (+6.89%) | 3.91 kB → 4.18 kB `src/budgetfiles/budgetfilesSlice.ts` | 📈 +737 B (+6.09%) | 11.83 kB → 12.55 kB `node_modules/recharts/es6/state/polarOptionsSlice.js` | 📈 +18 B (+5.57%) | 323 B → 341 B `src/app/appSlice.ts` | 📈 +150 B (+5.50%) | 2.66 kB → 2.81 kB `src/components/App.tsx` | 📈 +249 B (+2.65%) | 9.19 kB → 9.44 kB `src/components/modals/CreateEncryptionKeyModal.tsx` | 📈 +159 B (+1.93%) | 8.06 kB → 8.22 kB `src/sync-events.ts` | 📈 +193 B (+1.85%) | 10.19 kB → 10.38 kB `src/components/budget/index.tsx` | 📈 +224 B (+1.73%) | 12.65 kB → 12.87 kB `home/runner/work/actual/actual/packages/loot-core/src/shared/schedules.ts` | 📈 +93 B (+0.75%) | 12.13 kB → 12.22 kB `src/components/FinancesApp.tsx` | 📈 +127 B (+0.67%) | 18.45 kB → 18.57 kB `src/accounts/accountsSlice.ts` | 📈 +6 B (+0.45%) | 1.31 kB → 1.31 kB `src/components/settings/index.tsx` | 📈 +33 B (+0.28%) | 11.45 kB → 11.49 kB `node_modules/estree-util-is-identifier-name/lib/index.js` | 📈 +2 B (+0.26%) | 756 B → 758 B `locale/th.json` | 📈 +303 B (+0.16%) | 181.58 kB → 181.87 kB `locale/da.json` | 📈 +158 B (+0.15%) | 106.2 kB → 106.35 kB `locale/ca.json` | 📈 +225 B (+0.12%) | 187.93 kB → 188.15 kB `locale/fr.json` | 📈 +194 B (+0.11%) | 179.41 kB → 179.6 kB `locale/es.json` | 📈 +186 B (+0.10%) | 174.37 kB → 174.55 kB `locale/it.json` | 📈 +182 B (+0.10%) | 170.98 kB → 171.16 kB `locale/nb-NO.json` | 📈 +166 B (+0.10%) | 156.8 kB → 156.96 kB `locale/de.json` | 📈 +183 B (+0.10%) | 179.89 kB → 180.07 kB `src/components/select/RecurringSchedulePicker.tsx` | 📈 +4 B (+0.01%) | 31.47 kB → 31.47 kB `src/components/settings/Currency.tsx` | 📉 -2 B (-0.01%) | 21.41 kB → 21.41 kB `home/runner/work/actual/actual/packages/loot-core/src/shared/currencies.ts` | 📉 -1 B (-0.02%) | 5.66 kB → 5.66 kB `src/components/transactions/SimpleTransactionsTable.tsx` | 📉 -2 B (-0.02%) | 9.17 kB → 9.17 kB `locale/en.json` | 📉 -48 B (-0.03%) | 170.42 kB → 170.37 kB `node_modules/hast-util-to-jsx-runtime/lib/index.js` | 📉 -18 B (-0.09%) | 18.93 kB → 18.92 kB `src/components/mobile/rules/RulesListItem.tsx` | 📉 -23 B (-0.24%) | 9.47 kB → 9.44 kB `home/runner/work/actual/actual/packages/loot-core/src/shared/util.ts` | 📉 -26 B (-0.27%) | 9.31 kB → 9.29 kB `locale/uk.json` | 📉 -619 B (-0.28%) | 215.35 kB → 214.74 kB `src/redux/store.ts` | 📉 -4 B (-0.37%) | 1.05 kB → 1.05 kB `src/components/manager/ConfigServer.tsx` | 📉 -101 B (-0.42%) | 23.26 kB → 23.16 kB `src/components/settings/ThemeInstaller.tsx` | 📉 -50 B (-0.48%) | 10.27 kB → 10.22 kB `src/browser-preload.browser.js` | 📉 -34 B (-0.74%) | 4.51 kB → 4.48 kB `src/components/mobile/ActionableGridListItem.tsx` | 📉 -68 B (-1.11%) | 5.96 kB → 5.9 kB `src/components/LoggedInUser.tsx` | 📉 -85 B (-1.37%) | 6.07 kB → 5.99 kB `locale/pl.json` | 📉 -1.29 kB (-1.43%) | 89.65 kB → 88.37 kB `src/components/mobile/transactions/TransactionListItem.tsx` | 📉 -259 B (-1.76%) | 14.35 kB → 14.1 kB `src/components/mobile/accounts/OffBudgetAccountTransactions.tsx` | 📉 -171 B (-2.75%) | 6.06 kB → 5.9 kB `src/components/mobile/accounts/OnBudgetAccountTransactions.tsx` | 📉 -171 B (-2.76%) | 6.05 kB → 5.88 kB `src/hooks/useSyncedPrefs.ts` | 📉 -25 B (-4.13%) | 605 B → 580 B `src/components/reports/graphs/BudgetAnalysisGraph.tsx` | 📉 -613 B (-4.43%) | 13.51 kB → 12.91 kB `src/components/sidebar/Accounts.tsx` | 📉 -518 B (-5.53%) | 9.15 kB → 8.65 kB `locale/nl.json` | 📉 -6.69 kB (-5.92%) | 113.06 kB → 106.37 kB `src/components/ServerContext.tsx` | 📉 -443 B (-6.99%) | 6.19 kB → 5.76 kB `src/components/reports/FormulaResult.tsx` | 📉 -294 B (-7.36%) | 3.9 kB → 3.61 kB `src/components/reports/SummaryNumber.tsx` | 📉 -205 B (-7.58%) | 2.64 kB → 2.44 kB `src/components/alerts.tsx` | 📉 -385 B (-9.73%) | 3.87 kB → 3.49 kB `locale/pt-BR.json` | 📉 -28.67 kB (-15.68%) | 182.89 kB → 154.22 kB `src/components/modals/BudgetAutomationsModal.tsx` | 📉 -3.29 kB (-22.82%) | 14.4 kB → 11.11 kB `src/hooks/usePreviewTransactions.ts` | 📉 -1.52 kB (-33.97%) | 4.48 kB → 2.96 kB `src/prefs/prefsSlice.ts` | 📉 -2.51 kB (-66.77%) | 3.76 kB → 1.25 kB `src/hooks/useOnVisible.ts` | 🔥 -781 B (-100%) | 781 B → 0 B </details> <details> <summary>View detailed bundle breakdown</summary> <div> **Added** No assets were added **Removed** No assets were removed **Bigger** Asset | File Size | % Changed ----- | --------- | --------- static/js/index.js | 9.54 MB → 9.55 MB (+3.95 kB) | +0.04% static/js/th.js | 181.58 kB → 181.87 kB (+303 B) | +0.16% static/js/ca.js | 187.93 kB → 188.15 kB (+225 B) | +0.12% static/js/fr.js | 179.41 kB → 179.6 kB (+194 B) | +0.11% static/js/es.js | 174.37 kB → 174.55 kB (+186 B) | +0.10% static/js/de.js | 179.89 kB → 180.07 kB (+183 B) | +0.10% static/js/it.js | 170.98 kB → 171.16 kB (+182 B) | +0.10% static/js/nb-NO.js | 156.8 kB → 156.96 kB (+166 B) | +0.10% static/js/da.js | 106.2 kB → 106.35 kB (+158 B) | +0.15% **Smaller** Asset | File Size | % Changed ----- | --------- | --------- static/js/pt-BR.js | 182.89 kB → 154.22 kB (-28.67 kB) | -15.68% static/js/nl.js | 113.06 kB → 106.37 kB (-6.69 kB) | -5.92% static/js/usePayeeRuleCounts.js | 11.57 kB → 10.04 kB (-1.52 kB) | -13.15% static/js/pl.js | 89.65 kB → 88.37 kB (-1.29 kB) | -1.43% static/js/ReportRouter.js | 1.16 MB → 1.16 MB (-1.09 kB) | -0.09% static/js/uk.js | 215.35 kB → 214.74 kB (-619 B) | -0.28% static/js/narrow.js | 638.11 kB → 637.68 kB (-433 B) | -0.07% static/js/TransactionList.js | 106.48 kB → 106.22 kB (-259 B) | -0.24% static/js/en.js | 170.42 kB → 170.37 kB (-48 B) | -0.03% **Unchanged** Asset | File Size | % Changed ----- | --------- | --------- static/js/indexeddb-main-thread-worker-e59fee74.js | 12.94 kB | 0% static/js/workbox-window.prod.es5.js | 5.64 kB | 0% static/js/en-GB.js | 7.18 kB | 0% static/js/resize-observer.js | 18.37 kB | 0% static/js/BackgroundImage.js | 120.54 kB | 0% static/js/wide.js | 164.15 kB | 0% static/js/AppliedFilters.js | 9.71 kB | 0% static/js/useTransactionBatchActions.js | 13.23 kB | 0% static/js/FormulaEditor.js | 1.04 MB | 0% </div> </details> --- #### loot-core **Total** Files count | Total bundle size | % Changed ----------- | ----------------- | --------- 1 | 5.82 MB → 5.82 MB (-1.31 kB) | -0.02% <details> <summary>Changeset</summary> File | Δ | Size ---- | - | ---- `home/runner/work/actual/actual/packages/api/methods.ts` | 🆕 +1.75 kB | 0 B → 1.75 kB `home/runner/work/actual/actual/packages/api/injected.js` | 🆕 +148 B | 0 B → 148 B `home/runner/work/actual/actual/packages/loot-core/src/shared/schedules.ts` | 📈 +97 B (+1.58%) | 5.98 kB → 6.08 kB `home/runner/work/actual/actual/packages/loot-core/src/server/main.ts` | 📈 +74 B (+1.23%) | 5.89 kB → 5.96 kB `home/runner/work/actual/actual/packages/loot-core/src/server/aql/index.ts` | 📈 +2 B (+0.43%) | 468 B → 470 B `home/runner/work/actual/actual/packages/loot-core/src/server/transactions/app.ts` | 📈 +4 B (+0.16%) | 2.4 kB → 2.41 kB `home/runner/work/actual/actual/packages/loot-core/src/server/budget/app.ts` | 📈 +14 B (+0.13%) | 10.15 kB → 10.17 kB `home/runner/work/actual/actual/packages/loot-core/src/server/budget/goal-template.ts` | 📈 +8 B (+0.11%) | 7.01 kB → 7.02 kB `home/runner/work/actual/actual/packages/loot-core/src/server/api.ts` | 📈 +20 B (+0.08%) | 25.94 kB → 25.96 kB `home/runner/work/actual/actual/packages/loot-core/src/server/schedules/find-schedules.ts` | 📈 +6 B (+0.06%) | 9.46 kB → 9.47 kB `home/runner/work/actual/actual/packages/loot-core/src/server/transactions/export/export-to-csv.ts` | 📈 +2 B (+0.06%) | 3.2 kB → 3.2 kB `home/runner/work/actual/actual/packages/loot-core/src/server/accounts/sync.ts` | 📈 +16 B (+0.06%) | 25.87 kB → 25.88 kB `home/runner/work/actual/actual/packages/loot-core/src/server/tools/app.ts` | 📈 +2 B (+0.06%) | 3.36 kB → 3.36 kB `home/runner/work/actual/actual/packages/loot-core/src/server/transactions/merge.ts` | 📈 +2 B (+0.06%) | 3.44 kB → 3.44 kB `home/runner/work/actual/actual/packages/loot-core/src/server/reports/app.ts` | 📈 +2 B (+0.05%) | 4.27 kB → 4.27 kB `home/runner/work/actual/actual/packages/loot-core/src/mocks/budget.ts` | 📈 +8 B (+0.03%) | 25.08 kB → 25.08 kB `home/runner/work/actual/actual/packages/loot-core/src/server/accounts/app.ts` | 📈 +8 B (+0.03%) | 27.27 kB → 27.28 kB `home/runner/work/actual/actual/packages/loot-core/src/server/aql/schema/executors.ts` | 📈 +2 B (+0.03%) | 7.35 kB → 7.36 kB `home/runner/work/actual/actual/packages/loot-core/src/server/budget/base.ts` | 📈 +2 B (+0.02%) | 8.81 kB → 8.81 kB `home/runner/work/actual/actual/packages/loot-core/src/server/dashboard/app.ts` | 📈 +2 B (+0.02%) | 9.51 kB → 9.51 kB `home/runner/work/actual/actual/packages/loot-core/src/server/budget/category-template-context.ts` | 📈 +4 B (+0.02%) | 23.49 kB → 23.49 kB `home/runner/work/actual/actual/packages/loot-core/src/server/transactions/transaction-rules.ts` | 📈 +2 B (+0.01%) | 25.25 kB → 25.25 kB `home/runner/work/actual/actual/packages/loot-core/src/shared/currencies.ts` | 📉 -1 B (-0.02%) | 5.43 kB → 5.43 kB `home/runner/work/actual/actual/packages/loot-core/src/shared/util.ts` | 📉 -30 B (-0.38%) | 7.7 kB → 7.67 kB `home/runner/work/actual/actual/packages/loot-core/src/server/importers/ynab5.ts` | 📉 -848 B (-2.80%) | 29.57 kB → 28.75 kB `home/runner/work/actual/actual/packages/loot-core/src/server/schedules/app.ts` | 📉 -476 B (-3.53%) | 13.17 kB → 12.71 kB `home/runner/work/actual/actual/packages/loot-core/src/server/importers/ynab4.ts` | 📉 -889 B (-7.26%) | 11.97 kB → 11.1 kB `home/runner/work/actual/actual/packages/loot-core/src/server/budgetfiles/backups.ts` | 📉 -608 B (-10.53%) | 5.64 kB → 5.05 kB `home/runner/work/actual/actual/packages/loot-core/src/server/main-app.ts` | 📉 -107 B (-48.42%) | 221 B → 114 B `node_modules/date-fns/isFriday.js` | 🔥 -603 B (-100%) | 603 B → 0 B </details> <details> <summary>View detailed bundle breakdown</summary> <div> **Added** Asset | File Size | % Changed ----- | --------- | --------- kcab.worker.BwrdDDMW.js | 0 B → 5.82 MB (+5.82 MB) | - **Removed** Asset | File Size | % Changed ----- | --------- | --------- kcab.worker.CVw5oNPx.js | 5.82 MB → 0 B (-5.82 MB) | -100% **Bigger** No assets were bigger **Smaller** No assets were smaller **Unchanged** No assets were unchanged </div> </details> --- #### api **Total** Files count | Total bundle size | % Changed ----------- | ----------------- | --------- 1 | 4.43 MB → 4.43 MB (-1.09 kB) | -0.02% <details> <summary>Changeset</summary> File | Δ | Size ---- | - | ---- `home/runner/work/actual/actual/packages/api/methods.ts` | 🆕 +1.52 kB | 0 B → 1.52 kB `home/runner/work/actual/actual/packages/api/injected.js` | 🆕 +128 B | 0 B → 128 B `src/shared/schedules.ts` | 📈 +93 B (+1.71%) | 5.32 kB → 5.42 kB `src/server/main.ts` | 📈 +70 B (+1.34%) | 5.1 kB → 5.17 kB `src/server/aql/index.ts` | 📈 +2 B (+0.49%) | 408 B → 410 B `src/server/transactions/app.ts` | 📈 +4 B (+0.18%) | 2.12 kB → 2.12 kB `src/server/budget/app.ts` | 📈 +14 B (+0.15%) | 8.9 kB → 8.91 kB `src/server/budget/goal-template.ts` | 📈 +8 B (+0.13%) | 6.17 kB → 6.18 kB `src/server/api.ts` | 📈 +20 B (+0.09%) | 22.7 kB → 22.72 kB `src/server/schedules/find-schedules.ts` | 📈 +6 B (+0.07%) | 8.3 kB → 8.31 kB `src/server/transactions/export/export-to-csv.ts` | 📈 +2 B (+0.07%) | 2.87 kB → 2.87 kB `src/server/accounts/sync.ts` | 📈 +16 B (+0.07%) | 23.09 kB → 23.1 kB `src/server/transactions/merge.ts` | 📈 +2 B (+0.06%) | 3.07 kB → 3.07 kB `src/server/tools/app.ts` | 📈 +2 B (+0.06%) | 3.11 kB → 3.11 kB `src/server/reports/app.ts` | 📈 +2 B (+0.05%) | 3.78 kB → 3.78 kB `src/mocks/budget.ts` | 📈 +8 B (+0.04%) | 22.27 kB → 22.28 kB `src/server/accounts/app.ts` | 📈 +8 B (+0.03%) | 23.29 kB → 23.3 kB `src/server/aql/schema/executors.ts` | 📈 +2 B (+0.03%) | 6.64 kB → 6.64 kB `src/server/budget/base.ts` | 📈 +2 B (+0.02%) | 7.89 kB → 7.89 kB `src/server/dashboard/app.ts` | 📈 +2 B (+0.02%) | 8.51 kB → 8.51 kB `src/server/budget/category-template-context.ts` | 📈 +4 B (+0.02%) | 20.99 kB → 20.99 kB `src/server/transactions/transaction-rules.ts` | 📈 +2 B (+0.01%) | 22.43 kB → 22.43 kB `src/shared/currencies.ts` | 📉 -1 B (-0.02%) | 5.25 kB → 5.25 kB `src/shared/util.ts` | 📉 -26 B (-0.38%) | 6.69 kB → 6.66 kB `src/server/importers/ynab5.ts` | 📉 -720 B (-2.66%) | 26.39 kB → 25.69 kB `src/server/schedules/app.ts` | 📉 -428 B (-3.66%) | 11.42 kB → 11 kB `src/server/importers/ynab4.ts` | 📉 -753 B (-6.90%) | 10.66 kB → 9.92 kB `src/server/budgetfiles/backups.ts` | 📉 -540 B (-10.64%) | 4.96 kB → 4.43 kB `src/server/main-app.ts` | 📉 -95 B (-58.64%) | 162 B → 67 B `node_modules/date-fns/isFriday.js` | 🔥 -507 B (-100%) | 507 B → 0 B </details> <details> <summary>View detailed bundle breakdown</summary> <div> **Added** No assets were added **Removed** No assets were removed **Bigger** No assets were bigger **Smaller** Asset | File Size | % Changed ----- | --------- | --------- bundle.api.js | 4.43 MB → 4.43 MB (-1.09 kB) | -0.02% **Unchanged** No assets were unchanged </div> </details> </details> <!--- bundlestats-action-comment key:combined end ---> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-23 14:04:10 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#41262