@actual-app/api 6.9.0 → 24.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/@types/jest.config.d.ts +7 -7
  2. package/@types/loot-core/client/constants.d.ts +1 -0
  3. package/@types/loot-core/client/state-types/index.d.ts +1 -1
  4. package/@types/loot-core/client/state-types/modals.d.ts +35 -17
  5. package/@types/loot-core/client/state-types/notifications.d.ts +18 -1
  6. package/@types/loot-core/client/state-types/prefs.d.ts +4 -4
  7. package/@types/loot-core/client/state-types/queries.d.ts +4 -4
  8. package/@types/loot-core/mocks/index.d.ts +2 -7
  9. package/@types/loot-core/server/accounts/parse-file.d.ts +1 -0
  10. package/@types/loot-core/server/accounts/rules.d.ts +5 -6
  11. package/@types/loot-core/server/accounts/sync.d.ts +2 -2
  12. package/@types/loot-core/server/accounts/transaction-rules.d.ts +1 -3
  13. package/@types/loot-core/server/accounts/transactions.d.ts +3 -5
  14. package/@types/loot-core/server/api-models.d.ts +6 -6
  15. package/@types/loot-core/server/aql/schema/index.d.ts +34 -3
  16. package/@types/loot-core/server/budget/statements.d.ts +9 -0
  17. package/@types/loot-core/server/budget/template-notes.d.ts +5 -0
  18. package/@types/loot-core/server/budget/types/templates.d.ts +82 -0
  19. package/@types/loot-core/server/cloud-storage.d.ts +0 -1
  20. package/@types/loot-core/server/dashboard/app.d.ts +12 -0
  21. package/@types/loot-core/server/dashboard/types/handlers.d.ts +24 -0
  22. package/@types/loot-core/server/db/index.d.ts +5 -4
  23. package/@types/loot-core/server/db/types.d.ts +9 -0
  24. package/@types/loot-core/server/encryption-internals.d.ts +0 -1
  25. package/@types/loot-core/server/encryption-internals.web.d.ts +0 -1
  26. package/@types/loot-core/server/encryption.d.ts +0 -1
  27. package/@types/loot-core/server/errors.d.ts +2 -0
  28. package/@types/loot-core/server/importers/actual.d.ts +0 -1
  29. package/@types/loot-core/server/importers/index.d.ts +0 -1
  30. package/@types/loot-core/server/importers/ynab4.d.ts +0 -1
  31. package/@types/loot-core/server/importers/ynab5.d.ts +0 -1
  32. package/@types/loot-core/server/main-app.d.ts +1 -1
  33. package/@types/loot-core/server/models.d.ts +4 -4
  34. package/@types/loot-core/server/preferences/app.d.ts +12 -0
  35. package/@types/loot-core/server/preferences/types/handlers.d.ts +8 -0
  36. package/@types/loot-core/server/prefs.d.ts +8 -5
  37. package/@types/loot-core/server/reports/app.d.ts +46 -0
  38. package/@types/loot-core/server/rules/types/handlers.d.ts +4 -6
  39. package/@types/loot-core/server/sync/make-test-message.d.ts +0 -1
  40. package/@types/loot-core/server/util/rschedule.d.ts +0 -1
  41. package/@types/loot-core/shared/dashboard.d.ts +2 -0
  42. package/@types/loot-core/shared/errors.d.ts +1 -1
  43. package/@types/loot-core/shared/months.d.ts +9 -6
  44. package/@types/loot-core/shared/rules.d.ts +6 -29
  45. package/@types/loot-core/shared/schedules.d.ts +22 -22
  46. package/@types/loot-core/shared/transactions.d.ts +26 -73
  47. package/@types/loot-core/shared/util.d.ts +13 -14
  48. package/@types/loot-core/types/api-handlers.d.ts +14 -3
  49. package/@types/loot-core/types/handlers.d.ts +4 -0
  50. package/@types/loot-core/types/models/category-group.d.ts +6 -2
  51. package/@types/loot-core/types/models/category.d.ts +4 -2
  52. package/@types/loot-core/types/models/dashboard.d.ts +89 -0
  53. package/@types/loot-core/types/models/index.d.ts +1 -0
  54. package/@types/loot-core/types/models/payee.d.ts +5 -7
  55. package/@types/loot-core/types/models/reports.d.ts +5 -18
  56. package/@types/loot-core/types/models/rule.d.ts +103 -7
  57. package/@types/loot-core/types/models/schedule.d.ts +18 -14
  58. package/@types/loot-core/types/models/transaction-filter.d.ts +4 -2
  59. package/@types/loot-core/types/models/transaction.d.ts +14 -25
  60. package/@types/loot-core/types/prefs.d.ts +65 -55
  61. package/@types/loot-core/types/server-events.d.ts +1 -0
  62. package/@types/loot-core/types/server-handlers.d.ts +9 -13
  63. package/@types/loot-core/types/util.d.ts +6 -0
  64. package/@types/methods.d.ts +4 -11
  65. package/@types/migrations/1722717601000_reports_move_selected_categories.d.ts +1 -0
  66. package/@types/migrations/1722804019000_create_dashboard_table.d.ts +1 -0
  67. package/@types/migrations/1723665565000_prefs.d.ts +4 -0
  68. package/dist/app/bundle.api.js +5534 -1851
  69. package/dist/app/query.js +1 -2
  70. package/dist/index.js +3 -3
  71. package/dist/injected.js +2 -2
  72. package/dist/methods.js +53 -45
  73. package/dist/methods.test.js +8 -14
  74. package/dist/migrations/1632571489012_remove_cache.js +1 -1
  75. package/dist/migrations/1722717601000_reports_move_selected_categories.js +39 -0
  76. package/dist/migrations/1722804019000_create_dashboard_table.js +38 -0
  77. package/dist/migrations/1723665565000_prefs.js +51 -0
  78. package/dist/package.json +2 -2
  79. package/dist/utils.js +2 -3
  80. package/dist/validateNodeVersion.js +1 -2
  81. package/package.json +2 -2
  82. /package/@types/loot-core/server/budget/{rollover.d.ts → envelope.d.ts} +0 -0
@@ -17,7 +17,8 @@ import {
17
17
  RuleEntity,
18
18
  PayeeEntity,
19
19
  } from './models';
20
- import { GlobalPrefs, LocalPrefs } from './prefs';
20
+ import { GlobalPrefs, MetadataPrefs } from './prefs';
21
+ import { Query } from './query';
21
22
  import { EmptyObject } from './util';
22
23
 
23
24
  export interface ServerHandlers {
@@ -28,11 +29,8 @@ export interface ServerHandlers {
28
29
  redo: () => Promise<void>;
29
30
 
30
31
  'transactions-batch-update': (
31
- arg: Omit<
32
- Parameters<typeof batchUpdateTransactions>[0],
33
- 'detectOrphanPayees'
34
- >,
35
- ) => Promise<Awaited<ReturnType<typeof batchUpdateTransactions>>>;
32
+ ...arg: Parameters<typeof batchUpdateTransactions>
33
+ ) => ReturnType<typeof batchUpdateTransactions>;
36
34
 
37
35
  'transaction-add': (transaction) => Promise<EmptyObject>;
38
36
 
@@ -61,22 +59,20 @@ export interface ServerHandlers {
61
59
 
62
60
  'get-budget-bounds': () => Promise<{ start: string; end: string }>;
63
61
 
64
- 'rollover-budget-month': (arg: { month }) => Promise<
62
+ 'envelope-budget-month': (arg: { month }) => Promise<
65
63
  {
66
64
  value: string | number | boolean;
67
65
  name: string;
68
66
  }[]
69
67
  >;
70
68
 
71
- 'report-budget-month': (arg: { month }) => Promise<
69
+ 'tracking-budget-month': (arg: { month }) => Promise<
72
70
  {
73
71
  value: string | number | boolean;
74
72
  name: string;
75
73
  }[]
76
74
  >;
77
75
 
78
- 'budget-set-type': (arg: { type }) => Promise<unknown>;
79
-
80
76
  'category-create': (arg: {
81
77
  name;
82
78
  groupId;
@@ -111,7 +107,7 @@ export interface ServerHandlers {
111
107
 
112
108
  'payees-get-rule-counts': () => Promise<unknown>;
113
109
 
114
- 'payees-merge': (arg: { targetId; mergeIds }) => Promise<unknown>;
110
+ 'payees-merge': (arg: { targetId; mergeIds }) => Promise<void>;
115
111
 
116
112
  'payees-batch-change': (arg: {
117
113
  added?;
@@ -140,7 +136,7 @@ export interface ServerHandlers {
140
136
 
141
137
  'create-query': (arg: { sheetName; name; query }) => Promise<unknown>;
142
138
 
143
- query: (query) => Promise<{ data; dependencies }>;
139
+ query: (query: Query) => Promise<{ data: unknown; dependencies }>;
144
140
 
145
141
  'account-update': (arg: { id; name }) => Promise<unknown>;
146
142
 
@@ -243,7 +239,7 @@ export interface ServerHandlers {
243
239
 
244
240
  'save-prefs': (prefsToSet) => Promise<'ok'>;
245
241
 
246
- 'load-prefs': () => Promise<LocalPrefs | null>;
242
+ 'load-prefs': () => Promise<MetadataPrefs | null>;
247
243
 
248
244
  'sync-reset': () => Promise<{ error?: { reason: string; meta?: unknown } }>;
249
245
 
@@ -3,3 +3,9 @@ export type EmptyObject = Record<never, never>;
3
3
  export type StripNever<T> = {
4
4
  [K in keyof T as T[K] extends never ? never : K]: T[K];
5
5
  };
6
+
7
+ export type EverythingButIdOptional<T> = { id: T['id'] } & Partial<
8
+ Omit<T, 'id'>
9
+ >;
10
+
11
+ export type WithRequired<T, K extends keyof T> = T & Required<Pick<T, K>>;
@@ -49,16 +49,7 @@ export declare function updateTransaction(id: any, fields: any): Promise<import(
49
49
  id: any;
50
50
  category: any;
51
51
  })[]>;
52
- export declare function deleteTransaction(id: any): Promise<import("./loot-core/types/models").TransactionEntity[] | ({
53
- id: any;
54
- transfer_id: any;
55
- } | {
56
- id: any;
57
- payee: any;
58
- } | {
59
- id: any;
60
- category: any;
61
- })[]>;
52
+ export declare function deleteTransaction(id: any): Promise<any>;
62
53
  export declare function getAccounts(): Promise<import("./loot-core/server/api-models").APIAccountEntity[]>;
63
54
  export declare function createAccount(account: any, initialBalance?: any): Promise<string>;
64
55
  export declare function updateAccount(id: any, fields: any): Promise<void>;
@@ -86,4 +77,6 @@ export declare function getRules(): Promise<import("./loot-core/types/models").R
86
77
  export declare function getPayeeRules(id: any): Promise<import("./loot-core/types/models").RuleEntity[]>;
87
78
  export declare function createRule(rule: any): Promise<import("./loot-core/types/models").RuleEntity>;
88
79
  export declare function updateRule(rule: any): Promise<import("./loot-core/types/models").RuleEntity>;
89
- export declare function deleteRule(id: any): Promise<boolean>;
80
+ export declare function deleteRule(id: string): Promise<boolean>;
81
+ export declare function holdBudgetForNextMonth(month: any, amount: any): Promise<boolean>;
82
+ export declare function resetBudgetHold(month: any): Promise<void>;
@@ -0,0 +1 @@
1
+ export default function runMigration(db: any): Promise<void>;
@@ -0,0 +1 @@
1
+ export default function runMigration(db: any): Promise<void>;
@@ -0,0 +1,4 @@
1
+ export default function runMigration(db: any, { fs, fileId }: {
2
+ fs: any;
3
+ fileId: any;
4
+ }): Promise<void>;