@actual-app/api 25.3.0 → 25.4.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 (101) hide show
  1. package/@types/loot-core/client/accounts/accountsSlice.d.ts +175 -0
  2. package/@types/loot-core/client/app/appSlice.d.ts +175 -0
  3. package/@types/loot-core/client/budgets/budgetsSlice.d.ts +401 -0
  4. package/@types/loot-core/client/modals/modalsSlice.d.ts +486 -0
  5. package/@types/loot-core/client/notifications/notificationsSlice.d.ts +47 -0
  6. package/@types/loot-core/client/platform.d.ts +1 -0
  7. package/@types/loot-core/client/prefs/prefsSlice.d.ts +186 -0
  8. package/@types/loot-core/client/queries/queriesSlice.d.ts +692 -0
  9. package/@types/loot-core/client/redux.d.ts +18546 -0
  10. package/@types/loot-core/client/store/index.d.ts +133 -0
  11. package/@types/loot-core/client/users/usersSlice.d.ts +89 -0
  12. package/@types/loot-core/platform/client/fetch/index.d.ts +1 -10
  13. package/@types/loot-core/platform/client/undo/index.d.ts +19 -31
  14. package/@types/loot-core/platform/exceptions/index.d.ts +2 -5
  15. package/@types/loot-core/platform/server/connection/index.d.ts +0 -3
  16. package/@types/loot-core/platform/server/fetch/index.d.ts +1 -4
  17. package/@types/loot-core/platform/server/log/index.d.ts +4 -6
  18. package/@types/loot-core/server/accounts/app.d.ts +19 -5
  19. package/@types/loot-core/server/accounts/link.d.ts +6 -1
  20. package/@types/loot-core/server/admin/app.d.ts +54 -1
  21. package/@types/loot-core/server/api-models.d.ts +22 -22
  22. package/@types/loot-core/server/aql/exec.d.ts +1 -1
  23. package/@types/loot-core/server/aql/schema/index.d.ts +9 -0
  24. package/@types/loot-core/server/budget/actions.d.ts +6 -5
  25. package/@types/loot-core/server/budget/app.d.ts +103 -2
  26. package/@types/loot-core/server/budget/cleanup-template.d.ts +1 -1
  27. package/@types/loot-core/server/budget/goaltemplates.d.ts +1 -1
  28. package/@types/loot-core/server/budget/statements.d.ts +2 -2
  29. package/@types/loot-core/server/budget/template-notes.d.ts +1 -1
  30. package/@types/loot-core/server/budget/types/templates.d.ts +2 -1
  31. package/@types/loot-core/server/cloud-storage.d.ts +1 -1
  32. package/@types/loot-core/server/dashboard/app.d.ts +35 -1
  33. package/@types/loot-core/server/db/index.d.ts +38 -31
  34. package/@types/loot-core/server/db/sort.d.ts +1 -1
  35. package/@types/loot-core/server/encryption-internals.d.ts +5 -5
  36. package/@types/loot-core/server/encryption-internals.web.d.ts +2 -2
  37. package/@types/loot-core/server/encryption.d.ts +3 -3
  38. package/@types/loot-core/server/filters/app.d.ts +10 -1
  39. package/@types/loot-core/server/main-app.d.ts +1 -1
  40. package/@types/loot-core/server/models.d.ts +24 -23
  41. package/@types/loot-core/server/notes/app.d.ts +6 -1
  42. package/@types/loot-core/server/payees/app.d.ts +48 -0
  43. package/@types/loot-core/server/preferences/app.d.ts +1 -10
  44. package/@types/loot-core/server/reports/app.d.ts +9 -1
  45. package/@types/loot-core/server/rules/app.d.ts +50 -1
  46. package/@types/loot-core/server/schedules/app.d.ts +25 -2
  47. package/@types/loot-core/server/schedules/find-schedules.d.ts +1 -1
  48. package/@types/loot-core/server/server-config.d.ts +1 -0
  49. package/@types/loot-core/server/sheet.d.ts +1 -1
  50. package/@types/loot-core/server/spreadsheet/app.d.ts +38 -0
  51. package/@types/loot-core/server/spreadsheet/graph-data-structure.d.ts +4 -4
  52. package/@types/loot-core/server/spreadsheet/spreadsheet.d.ts +3 -2
  53. package/@types/loot-core/server/sync/app.d.ts +38 -0
  54. package/@types/loot-core/server/sync/make-test-message.d.ts +1 -1
  55. package/@types/loot-core/server/tools/app.d.ts +13 -1
  56. package/@types/loot-core/server/transactions/transaction-rules.d.ts +5 -4
  57. package/@types/loot-core/server/undo.d.ts +1 -1
  58. package/@types/loot-core/shared/async.d.ts +4 -3
  59. package/@types/loot-core/shared/locale.d.ts +1 -0
  60. package/@types/loot-core/shared/months.d.ts +2 -2
  61. package/@types/loot-core/shared/schedules.d.ts +5 -3
  62. package/@types/loot-core/shared/util.d.ts +4 -1
  63. package/@types/loot-core/types/handlers.d.ts +16 -10
  64. package/@types/loot-core/types/models/account.d.ts +2 -1
  65. package/@types/loot-core/types/models/bank-sync.d.ts +1 -1
  66. package/@types/loot-core/types/models/index.d.ts +5 -1
  67. package/@types/loot-core/types/models/openid.d.ts +2 -1
  68. package/@types/loot-core/types/models/payee.d.ts +2 -2
  69. package/@types/loot-core/types/models/pluggyai.d.ts +18 -0
  70. package/@types/loot-core/types/models/user-access.d.ts +10 -0
  71. package/@types/loot-core/types/models/user.d.ts +17 -18
  72. package/@types/loot-core/types/prefs.d.ts +13 -1
  73. package/@types/loot-core/types/server-handlers.d.ts +0 -99
  74. package/@types/loot-core/types/util.d.ts +7 -0
  75. package/dist/app/bundle.api.js +93477 -49658
  76. package/dist/index.js +17 -7
  77. package/dist/jest.config.js +0 -2
  78. package/dist/methods.js +17 -7
  79. package/dist/migrations/1740506588539_add_last_reconciled_at.sql +5 -0
  80. package/dist/package.json +8 -8
  81. package/dist/validateNodeVersion.js +17 -7
  82. package/package.json +8 -8
  83. package/@types/loot-core/client/constants.d.ts +0 -21
  84. package/@types/loot-core/client/state-types/budgets.d.ts +0 -36
  85. package/@types/loot-core/client/state-types/index.d.ts +0 -27
  86. package/@types/loot-core/client/state-types/modals.d.ts +0 -392
  87. package/@types/loot-core/client/state-types/notifications.d.ts +0 -57
  88. package/@types/loot-core/client/state-types/prefs.d.ts +0 -40
  89. package/@types/loot-core/client/state-types/user.d.ts +0 -13
  90. package/@types/loot-core/server/admin/types/handlers.d.ts +0 -43
  91. package/@types/loot-core/server/budget/types/handlers.d.ts +0 -91
  92. package/@types/loot-core/server/dashboard/types/handlers.d.ts +0 -24
  93. package/@types/loot-core/server/filters/types/handlers.d.ts +0 -7
  94. package/@types/loot-core/server/notes/types/handlers.d.ts +0 -3
  95. package/@types/loot-core/server/reports/types/handlers.d.ts +0 -6
  96. package/@types/loot-core/server/rules/types/handlers.d.ts +0 -40
  97. package/@types/loot-core/server/schedules/types/handlers.d.ts +0 -31
  98. package/@types/loot-core/server/tools/types/handlers.d.ts +0 -11
  99. package/@types/loot-core/types/models/userAccess.d.ts +0 -9
  100. package/dist/methods.test.js +0 -541
  101. /package/@types/{methods.test.d.ts → loot-core/server/api.test.d.ts} +0 -0
@@ -1,15 +1,8 @@
1
1
  import { Backup } from '../server/backups';
2
2
  import { RemoteFile } from '../server/cloud-storage';
3
- import { Node as SpreadsheetNode } from '../server/spreadsheet/spreadsheet';
4
3
  import { Message } from '../server/sync';
5
4
 
6
5
  import { Budget } from './budget';
7
- import {
8
- CategoryEntity,
9
- CategoryGroupEntity,
10
- RuleEntity,
11
- PayeeEntity,
12
- } from './models';
13
6
  import { OpenIdConfig } from './models/openid';
14
7
  // eslint-disable-next-line import/no-unresolved
15
8
  import { Query } from './query';
@@ -19,108 +12,16 @@ export interface ServerHandlers {
19
12
  undo: () => Promise<void>;
20
13
  redo: () => Promise<void>;
21
14
 
22
- 'get-categories': () => Promise<{
23
- grouped: Array<CategoryGroupEntity>;
24
- list: Array<CategoryEntity>;
25
- }>;
26
-
27
15
  'get-earliest-transaction': () => Promise<{ date: string }>;
28
16
 
29
- 'get-budget-bounds': () => Promise<{ start: string; end: string }>;
30
-
31
- 'envelope-budget-month': (arg: { month }) => Promise<
32
- {
33
- value: string | number | boolean;
34
- name: string;
35
- }[]
36
- >;
37
-
38
- 'tracking-budget-month': (arg: { month }) => Promise<
39
- {
40
- value: string | number | boolean;
41
- name: string;
42
- }[]
43
- >;
44
-
45
- 'category-create': (arg: {
46
- name;
47
- groupId;
48
- isIncome?;
49
- hidden?: boolean;
50
- }) => Promise<string>;
51
-
52
- 'category-update': (category) => Promise<unknown>;
53
-
54
- 'category-move': (arg: { id; groupId; targetId }) => Promise<unknown>;
55
-
56
- 'category-delete': (arg: { id; transferId? }) => Promise<{ error?: string }>;
57
-
58
- 'category-group-create': (arg: {
59
- name;
60
- isIncome?: boolean;
61
- hidden?: boolean;
62
- }) => Promise<string>;
63
-
64
- 'category-group-update': (group) => Promise<unknown>;
65
-
66
- 'category-group-move': (arg: { id; targetId }) => Promise<unknown>;
67
-
68
- 'category-group-delete': (arg: { id; transferId }) => Promise<unknown>;
69
-
70
- 'must-category-transfer': (arg: { id }) => Promise<unknown>;
71
-
72
- 'payee-create': (arg: { name }) => Promise<string>;
73
-
74
- 'common-payees-get': () => Promise<PayeeEntity[]>;
75
-
76
- 'payees-get': () => Promise<PayeeEntity[]>;
77
-
78
- 'payees-get-rule-counts': () => Promise<Record<PayeeEntity['id'], number>>;
79
-
80
- 'payees-merge': (arg: { targetId; mergeIds }) => Promise<void>;
81
-
82
- 'payees-batch-change': (arg: {
83
- added?;
84
- deleted?;
85
- updated?;
86
- }) => Promise<unknown>;
87
-
88
- 'payees-check-orphaned': (arg: { ids }) => Promise<unknown>;
89
- 'payees-get-orphaned': () => Promise<PayeeEntity[]>;
90
-
91
- 'payees-get-rules': (arg: { id: string }) => Promise<RuleEntity[]>;
92
-
93
17
  'make-filters-from-conditions': (arg: {
94
18
  conditions: unknown;
95
19
  applySpecialCases?: boolean;
96
20
  }) => Promise<{ filters: unknown[] }>;
97
21
 
98
- getCell: (arg: { sheetName; name }) => Promise<{
99
- name: SpreadsheetNode['name'];
100
- value: SpreadsheetNode['value'];
101
- }>;
102
-
103
- getCells: (arg: {
104
- names;
105
- }) => Promise<
106
- Array<{ name: SpreadsheetNode['name']; value?: SpreadsheetNode['value'] }>
107
- >;
108
-
109
- getCellNamesInSheet: (arg: {
110
- sheetName;
111
- }) => Promise<Array<SpreadsheetNode['name']>>;
112
-
113
- debugCell: (arg: { sheetName; name }) => Promise<unknown>;
114
-
115
- 'create-query': (arg: { sheetName; name; query }) => Promise<'ok'>;
116
-
117
22
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
118
23
  query: (query: Query) => Promise<{ data: any; dependencies: string[] }>;
119
24
 
120
- 'sync-reset': () => Promise<{ error?: { reason: string; meta?: unknown } }>;
121
-
122
- 'sync-repair': () => Promise<unknown>;
123
-
124
25
  'key-make': (arg: {
125
26
  password;
126
27
  }) => Promise<{ error?: { reason: string; meta?: unknown } }>;
@@ -14,3 +14,10 @@ export type WithRequired<T, K extends keyof T> = T & Required<Pick<T, K>>;
14
14
  // see https://github.com/i18next/react-i18next/issues/1483
15
15
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
16
  export type TransObjectLiteral = any;
17
+
18
+ export type AtLeastOne<T extends Record<string, unknown>> =
19
+ keyof T extends infer K
20
+ ? K extends string
21
+ ? Pick<T, K & keyof T> & Partial<T>
22
+ : never
23
+ : never;