Skip to content

Commit

Permalink
Merge branch 'master' into server-offline
Browse files Browse the repository at this point in the history
  • Loading branch information
psybers committed Sep 10, 2024
2 parents eece002 + 6e8cdb3 commit dcc4982
Show file tree
Hide file tree
Showing 249 changed files with 2,566 additions and 1,676 deletions.
2 changes: 1 addition & 1 deletion packages/api/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@actual-app/api",
"version": "6.9.0",
"version": "6.10.0",
"license": "MIT",
"description": "An API for Actual",
"engines": {
Expand Down
1 change: 1 addition & 0 deletions packages/desktop-client/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ node_modules
# testing
coverage
test-results
playwright-report

# production
build
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export class MobileAccountsPage {
* Click on the n-th account to open it up
*/
async openNthAccount(idx) {
await this.accounts.nth(idx).getByRole('button').click();
await this.accounts.nth(idx).click();

return new MobileAccountPage(this.page);
}
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
64 changes: 39 additions & 25 deletions packages/desktop-client/index.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
Expand All @@ -9,26 +9,16 @@
<title>Actual</title>
<link rel="canonical" href="/" />
<link rel="shortcut icon" href="/favicon.ico" />
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
<link
rel="apple-touch-icon"
sizes="180x180"
href="/apple-touch-icon.png"
rel="manifest"
href="/site.webmanifest"
crossorigin="use-credentials"
/>
<link
rel="icon"
type="image/png"
sizes="32x32"
href="/favicon-32x32.png"
/>
<link
rel="icon"
type="image/png"
sizes="16x16"
href="/favicon-16x16.png"
/>
<link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials"/>
<meta name="msapplication-TileColor" content="#da532c" />
<meta name="theme-color" content="#ffffff" />
<meta name="msapplication-TileColor" content="#8812E1" />
<meta name="theme-color" content="#8812E1" />

<style type="text/css">
html,
Expand All @@ -42,9 +32,21 @@
body,
button,
input {
font-family: 'Inter var', -apple-system, BlinkMacSystemFont, 'Segoe UI',
'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',
'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
font-family:
'Inter var',
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
'Roboto',
'Oxygen',
'Ubuntu',
'Cantarell',
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
'Helvetica',
'Arial',
sans-serif;
}

a {
Expand All @@ -66,9 +68,21 @@
input,
textarea {
font-size: 1em;
font-family: 'Inter var', -apple-system, BlinkMacSystemFont, 'Segoe UI',
'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',
'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
font-family:
'Inter var',
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
'Roboto',
'Oxygen',
'Ubuntu',
'Cantarell',
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
'Helvetica',
'Arial',
sans-serif;
}

html,
Expand Down
3 changes: 2 additions & 1 deletion packages/desktop-client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@actual-app/web",
"version": "24.8.0",
"version": "24.9.0",
"license": "MIT",
"files": [
"build"
Expand All @@ -20,6 +20,7 @@
"@swc/plugin-react-remove-properties": "^1.5.121",
"@testing-library/react": "14.1.2",
"@testing-library/user-event": "14.5.2",
"@types/debounce": "^1.2.4",
"@types/lodash": "^4",
"@types/promise-retry": "^1.1.6",
"@types/react": "^18.2.0",
Expand Down
4 changes: 1 addition & 3 deletions packages/desktop-client/playwright.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,7 @@ export default defineConfig({
timeout: 20000, // 20 seconds
retries: 1,
testDir: 'e2e/',
reporter: !process.env.CI
? [['html', { open: 'never', outputFolder: 'test-results/html' }]]
: undefined,
reporter: !process.env.CI ? [['html', { open: 'never' }]] : undefined,
use: {
userAgent: 'playwright',
screenshot: 'on',
Expand Down
162 changes: 81 additions & 81 deletions packages/desktop-client/public/site.webmanifest
Original file line number Diff line number Diff line change
@@ -1,89 +1,89 @@
{
"name": "Actual",
"short_name": "Actual",
"description": "A local-first personal finance tool",
"icons": [
"name": "Actual",
"short_name": "Actual",
"description": "A local-first personal finance tool",
"icons": [
{
"src": "/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/maskable-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/maskable-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
],
"shortcuts": [
{
"name": "Add Transaction",
"short_name": "Add Transaction",
"description": "Add a new transaction",
"url": "/transactions/new",
"icons": [
{
"src": "/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/maskable-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/maskable-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
"src": "/shortcut-transaction.svg",
"sizes": "150x150"
}
],
"shortcuts": [
]
},
{
"name": "Accounts",
"short_name": "Accounts",
"description": "View all accounts",
"url": "/accounts",
"icons": [
{
"name": "Add Transaction",
"short_name": "Add Transaction",
"description": "Add a new transaction",
"url": "/transactions/new",
"icons": [
{
"src": "/shortcut-transaction.svg",
"sizes": "150x150"
}
]
},
{
"name": "Accounts",
"short_name": "Accounts",
"description": "View all accounts",
"url": "/accounts",
"icons": [
{
"src": "/shortcut-accounts.svg",
"sizes": "150x150"
}
]
},
{
"name": "Reports",
"short_name": "Reports",
"description": "View reports",
"url": "/reports",
"icons": [
{
"src": "/shortcut-reports.svg",
"sizes": "150x150"
}
]
"src": "/shortcut-accounts.svg",
"sizes": "150x150"
}
],
"screenshots": [
{
"src": "/screenshot_wide.png",
"form_factor": "wide",
"label": "Actual Budget Homepage",
"type": "image/png",
"sizes": "1280x720"
},
]
},
{
"name": "Reports",
"short_name": "Reports",
"description": "View reports",
"url": "/reports",
"icons": [
{
"src": "/screenshot_narrow.png",
"form_factor": "narrow",
"label": "Actual Budget Mobile Homepage",
"type": "image/png",
"sizes": "350x600"
"src": "/shortcut-reports.svg",
"sizes": "150x150"
}
],
"theme_color": "#8812E1",
"background_color": "#ffffff",
"display": "standalone",
"start_url": "./"
]
}
],
"screenshots": [
{
"src": "/screenshot_wide.png",
"form_factor": "wide",
"label": "Actual Budget Homepage",
"type": "image/png",
"sizes": "1280x720"
},
{
"src": "/screenshot_narrow.png",
"form_factor": "narrow",
"label": "Actual Budget Mobile Homepage",
"type": "image/png",
"sizes": "350x600"
}
],
"theme_color": "#8812E1",
"background_color": "#8812E1",
"display": "standalone",
"start_url": "./"
}
2 changes: 1 addition & 1 deletion packages/desktop-client/src/components/Modals.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ export function Modals() {
.map(({ name, options }) => {
switch (name) {
case 'keyboard-shortcuts':
return <KeyboardShortcutModal />;
return <KeyboardShortcutModal key={name} />;

case 'import-transactions':
return <ImportTransactions key={name} options={options} />;
Expand Down
3 changes: 3 additions & 0 deletions packages/desktop-client/src/components/Notes.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,9 @@ const markdownStyles = css({
'& td': {
padding: '0.25rem 0.75rem',
},
'& h3': {
fontSize: 15,
},
});

type NotesProps = {
Expand Down
9 changes: 5 additions & 4 deletions packages/desktop-client/src/components/Titlebar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ function UncategorizedButton() {
return (
<Link
variant="button"
type="bare"
buttonVariant="bare"
to="/accounts/uncategorized"
style={{
color: theme.errorText,
Expand All @@ -60,15 +60,16 @@ type PrivacyButtonProps = {
};

function PrivacyButton({ style }: PrivacyButtonProps) {
const [isPrivacyEnabled, setPrivacyEnabledPref] =
const [isPrivacyEnabledPref, setPrivacyEnabledPref] =
useSyncedPref('isPrivacyEnabled');
const isPrivacyEnabled = String(isPrivacyEnabledPref) === 'true';

const privacyIconStyle = { width: 15, height: 15 };

useHotkeys(
'shift+ctrl+p, shift+cmd+p, shift+meta+p',
() => {
setPrivacyEnabledPref(!isPrivacyEnabled);
setPrivacyEnabledPref(String(!isPrivacyEnabled));
},
{
preventDefault: true,
Expand All @@ -81,7 +82,7 @@ function PrivacyButton({ style }: PrivacyButtonProps) {
<Button
variant="bare"
aria-label={`${isPrivacyEnabled ? 'Disable' : 'Enable'} privacy mode`}
onPress={() => setPrivacyEnabledPref(!isPrivacyEnabled)}
onPress={() => setPrivacyEnabledPref(String(!isPrivacyEnabled))}
style={style}
>
{isPrivacyEnabled ? (
Expand Down
Loading

0 comments on commit dcc4982

Please sign in to comment.