Compare commits

...

4 Commits

Author SHA1 Message Date
Aaron
6ead7ea42c docs: add Enable Actual to community repos (#7697)
Co-authored-by: Aaron <aaron@noreply.squaresine.com>
2026-05-06 00:31:41 +00:00
Matt Fiddaman
d6fc3212b9 re-sort preview transactions after rule application (#7691)
* resort schedules after rule application

* note
2026-05-05 23:48:26 +00:00
Alec Bakholdin
071611fcc5 Cannot read properties of null (reading 'toLowerCase') (#7704)
* added null safety in throwIfNot200

* release notes

* updated release notes

---------

Co-authored-by: Alec Bakholdin <alecbakholdin.com>
2026-05-05 23:03:02 +00:00
Matt Fiddaman
263358b5cf fix vrt update workflow (#7699)
* fix vrt update workflow

* note
2026-05-05 20:26:48 +00:00
7 changed files with 32 additions and 4 deletions

View File

@@ -65,6 +65,10 @@ jobs:
ref: ${{ steps.pr.outputs.head_sha }}
persist-credentials: false
- name: Trust workspace directory
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
shell: bash
- name: Set up environment
uses: ./.github/actions/setup
with:
@@ -87,9 +91,6 @@ jobs:
- name: Create patch with PNG changes only
id: create-patch
run: |
# Trust the repository directory (required for container environments)
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"

View File

@@ -1,6 +1,7 @@
import { useEffect, useMemo, useState } from 'react';
import { send } from '@actual-app/core/platform/client/connection';
import * as monthUtils from '@actual-app/core/shared/months';
import { computeSchedulePreviewTransactions } from '@actual-app/core/shared/schedules';
import { ungroupTransactions } from '@actual-app/core/shared/transactions';
import type { IntegerAmount } from '@actual-app/core/shared/util';
@@ -100,6 +101,13 @@ export function usePreviewTransactions({
),
}));
// re-sort in case rule actions have changed the dates
withDefaults.sort(
(a, b) =>
monthUtils.parseDate(b.date).getTime() -
monthUtils.parseDate(a.date).getTime() || a.amount - b.amount,
);
const ungroupedTransactions = ungroupTransactions(withDefaults);
setPreviewTransactions(ungroupedTransactions);

View File

@@ -13,6 +13,7 @@ for it to be added, your project must have a proper README file.
The following are implementations of bank syncing using the Actual API. For instructions on using them, see the respective repositories.
- **Akahu and Up bank sync to Actual Budget** - https://github.com/tim-smart/actualbudget-sync
- **Enable Actual: Import transactions from European banks using Enable Banking** - https://github.com/2manyvcos/enable-actual
- **ICS Cards Holland CVS exporter** - https://github.com/IeuanK/ICS-Exporter/
- **Lunch Flow: Import transactions from GoCardless, MX, Finicity, Finverse, and more** - https://github.com/lunchflow/actual-flow
- **MoneyMan an israel banks importer** - https://github.com/daniel-hauser/moneyman

View File

@@ -11,7 +11,7 @@ function throwIfNot200(res: Response, text: string) {
throw new PostError(res.status === 500 ? 'internal' : text);
}
const contentType = res.headers.get('Content-Type');
const contentType = res.headers.get('Content-Type') ?? '';
if (contentType.toLowerCase().indexOf('application/json') !== -1) {
const json = JSON.parse(text);
throw new PostError(json.reason);

View File

@@ -0,0 +1,6 @@
---
category: Bugfixes
authors: [matt-fidd]
---
Fix schedules not appearing on the mobile view when the date is changed by rules

View File

@@ -0,0 +1,6 @@
---
category: Maintenance
authors: [matt-fidd]
---
Fix VRT update workflow failing

View File

@@ -0,0 +1,6 @@
---
category: Bugfixes
authors: [alecbakholdin]
---
Fixed cannot read properties of null in throwIfNot200 (reading 'toLowerCase')