@actual-app/api 26.3.0 → 26.4.0-nightly.20260305

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 (205) hide show
  1. package/@types/app/bundle.api.d.ts +10 -9
  2. package/@types/app/bundle.api.d.ts.map +1 -0
  3. package/@types/app/query.d.ts +1 -0
  4. package/@types/app/query.d.ts.map +1 -0
  5. package/@types/index.d.ts +2 -1
  6. package/@types/index.d.ts.map +1 -0
  7. package/@types/injected.d.ts +1 -0
  8. package/@types/injected.d.ts.map +1 -0
  9. package/@types/methods.d.ts +8 -10
  10. package/@types/methods.d.ts.map +1 -0
  11. package/@types/migrations/1632571489012_remove_cache.d.ts +1 -0
  12. package/@types/migrations/1632571489012_remove_cache.d.ts.map +1 -0
  13. package/@types/migrations/1722717601000_reports_move_selected_categories.d.ts +1 -0
  14. package/@types/migrations/1722717601000_reports_move_selected_categories.d.ts.map +1 -0
  15. package/@types/migrations/1722804019000_create_dashboard_table.d.ts +1 -0
  16. package/@types/migrations/1722804019000_create_dashboard_table.d.ts.map +1 -0
  17. package/@types/migrations/1723665565000_prefs.d.ts +1 -0
  18. package/@types/migrations/1723665565000_prefs.d.ts.map +1 -0
  19. package/@types/migrations/1765518577215_multiple_dashboards.d.ts +1 -0
  20. package/@types/migrations/1765518577215_multiple_dashboards.d.ts.map +1 -0
  21. package/@types/utils.d.ts +1 -0
  22. package/@types/utils.d.ts.map +1 -0
  23. package/@types/validateNodeVersion.d.ts +1 -0
  24. package/@types/validateNodeVersion.d.ts.map +1 -0
  25. package/@types/vitest.config.d.ts +1 -0
  26. package/@types/vitest.config.d.ts.map +1 -0
  27. package/dist/.tsbuildinfo +1 -0
  28. package/dist/app/bundle.api.js +275 -230
  29. package/dist/package.json +1 -1
  30. package/package.json +1 -1
  31. package/@types/loot-core/src/mocks/budget.d.ts +0 -2
  32. package/@types/loot-core/src/mocks/index.d.ts +0 -10
  33. package/@types/loot-core/src/mocks/random.d.ts +0 -1
  34. package/@types/loot-core/src/mocks/util.d.ts +0 -8
  35. package/@types/loot-core/src/platform/exceptions/index.d.ts +0 -2
  36. package/@types/loot-core/src/platform/server/asyncStorage/index-types.d.ts +0 -19
  37. package/@types/loot-core/src/platform/server/asyncStorage/index.d.ts +0 -11
  38. package/@types/loot-core/src/platform/server/connection/index-types.d.ts +0 -11
  39. package/@types/loot-core/src/platform/server/connection/index.d.ts +0 -5
  40. package/@types/loot-core/src/platform/server/fetch/index.d.ts +0 -1
  41. package/@types/loot-core/src/platform/server/fs/index.d.ts +0 -22
  42. package/@types/loot-core/src/platform/server/fs/path-join.d.ts +0 -1
  43. package/@types/loot-core/src/platform/server/fs/shared.d.ts +0 -3
  44. package/@types/loot-core/src/platform/server/indexeddb/index.d.ts +0 -15
  45. package/@types/loot-core/src/platform/server/log/index.d.ts +0 -11
  46. package/@types/loot-core/src/platform/server/sqlite/index.d.ts +0 -53
  47. package/@types/loot-core/src/platform/server/sqlite/normalise.d.ts +0 -1
  48. package/@types/loot-core/src/platform/server/sqlite/unicodeLike.d.ts +0 -1
  49. package/@types/loot-core/src/server/accounts/app.d.ts +0 -159
  50. package/@types/loot-core/src/server/accounts/link.d.ts +0 -6
  51. package/@types/loot-core/src/server/accounts/payees.d.ts +0 -5
  52. package/@types/loot-core/src/server/accounts/sync.d.ts +0 -25
  53. package/@types/loot-core/src/server/accounts/title/index.d.ts +0 -3
  54. package/@types/loot-core/src/server/accounts/title/lower-case.d.ts +0 -1
  55. package/@types/loot-core/src/server/accounts/title/specials.d.ts +0 -1
  56. package/@types/loot-core/src/server/admin/app.d.ts +0 -70
  57. package/@types/loot-core/src/server/api-models.d.ts +0 -94
  58. package/@types/loot-core/src/server/api.d.ts +0 -2
  59. package/@types/loot-core/src/server/api.test.d.ts +0 -1
  60. package/@types/loot-core/src/server/app.d.ts +0 -24
  61. package/@types/loot-core/src/server/aql/compiler.d.ts +0 -56
  62. package/@types/loot-core/src/server/aql/exec.d.ts +0 -17
  63. package/@types/loot-core/src/server/aql/index.d.ts +0 -13
  64. package/@types/loot-core/src/server/aql/schema/executors.d.ts +0 -3
  65. package/@types/loot-core/src/server/aql/schema/index.d.ts +0 -427
  66. package/@types/loot-core/src/server/aql/schema-helpers.d.ts +0 -8
  67. package/@types/loot-core/src/server/aql/views.d.ts +0 -1
  68. package/@types/loot-core/src/server/auth/app.d.ts +0 -144
  69. package/@types/loot-core/src/server/budget/actions.d.ts +0 -85
  70. package/@types/loot-core/src/server/budget/app.d.ts +0 -118
  71. package/@types/loot-core/src/server/budget/base.d.ts +0 -18
  72. package/@types/loot-core/src/server/budget/category-template-context.d.ts +0 -54
  73. package/@types/loot-core/src/server/budget/cleanup-template.d.ts +0 -11
  74. package/@types/loot-core/src/server/budget/envelope.d.ts +0 -7
  75. package/@types/loot-core/src/server/budget/goal-template.d.ts +0 -38
  76. package/@types/loot-core/src/server/budget/report.d.ts +0 -5
  77. package/@types/loot-core/src/server/budget/schedule-template.d.ts +0 -8
  78. package/@types/loot-core/src/server/budget/statements.d.ts +0 -9
  79. package/@types/loot-core/src/server/budget/template-notes.d.ts +0 -13
  80. package/@types/loot-core/src/server/budget/util.d.ts +0 -4
  81. package/@types/loot-core/src/server/budgetfiles/app.d.ts +0 -137
  82. package/@types/loot-core/src/server/budgetfiles/backups.d.ts +0 -16
  83. package/@types/loot-core/src/server/cloud-storage.d.ts +0 -40
  84. package/@types/loot-core/src/server/dashboard/app.d.ts +0 -54
  85. package/@types/loot-core/src/server/db/index.d.ts +0 -138
  86. package/@types/loot-core/src/server/db/mappings.d.ts +0 -3
  87. package/@types/loot-core/src/server/db/sort.d.ts +0 -11
  88. package/@types/loot-core/src/server/db/types/index.d.ts +0 -287
  89. package/@types/loot-core/src/server/db/util.d.ts +0 -2
  90. package/@types/loot-core/src/server/encryption/app.d.ts +0 -40
  91. package/@types/loot-core/src/server/encryption/encryption-internals.d.ts +0 -22
  92. package/@types/loot-core/src/server/encryption/index.d.ts +0 -40
  93. package/@types/loot-core/src/server/errors.d.ts +0 -92
  94. package/@types/loot-core/src/server/filters/app.d.ts +0 -26
  95. package/@types/loot-core/src/server/importers/actual.d.ts +0 -3
  96. package/@types/loot-core/src/server/importers/index.d.ts +0 -4
  97. package/@types/loot-core/src/server/importers/ynab4-types.d.ts +0 -135
  98. package/@types/loot-core/src/server/importers/ynab4.d.ts +0 -4
  99. package/@types/loot-core/src/server/importers/ynab5-types.d.ts +0 -181
  100. package/@types/loot-core/src/server/importers/ynab5.d.ts +0 -4
  101. package/@types/loot-core/src/server/main-app.d.ts +0 -17
  102. package/@types/loot-core/src/server/main.d.ts +0 -50
  103. package/@types/loot-core/src/server/main.test.d.ts +0 -1
  104. package/@types/loot-core/src/server/migrate/migrations.d.ts +0 -9
  105. package/@types/loot-core/src/server/models.d.ts +0 -39
  106. package/@types/loot-core/src/server/mutators.d.ts +0 -17
  107. package/@types/loot-core/src/server/notes/app.d.ts +0 -23
  108. package/@types/loot-core/src/server/payees/app.d.ts +0 -48
  109. package/@types/loot-core/src/server/polyfills.d.ts +0 -1
  110. package/@types/loot-core/src/server/post.d.ts +0 -5
  111. package/@types/loot-core/src/server/preferences/app.d.ts +0 -43
  112. package/@types/loot-core/src/server/prefs.d.ts +0 -15
  113. package/@types/loot-core/src/server/reports/app.d.ts +0 -35
  114. package/@types/loot-core/src/server/rules/action.d.ts +0 -24
  115. package/@types/loot-core/src/server/rules/app.d.ts +0 -67
  116. package/@types/loot-core/src/server/rules/condition.d.ts +0 -59
  117. package/@types/loot-core/src/server/rules/customFunctions.d.ts +0 -13
  118. package/@types/loot-core/src/server/rules/handlebars-helpers.d.ts +0 -1
  119. package/@types/loot-core/src/server/rules/index.d.ts +0 -11
  120. package/@types/loot-core/src/server/rules/rule-indexer.d.ts +0 -17
  121. package/@types/loot-core/src/server/rules/rule-utils.d.ts +0 -19
  122. package/@types/loot-core/src/server/rules/rule.d.ts +0 -24
  123. package/@types/loot-core/src/server/schedules/app.d.ts +0 -62
  124. package/@types/loot-core/src/server/schedules/find-schedules.d.ts +0 -1
  125. package/@types/loot-core/src/server/server-config.d.ts +0 -12
  126. package/@types/loot-core/src/server/sheet.d.ts +0 -12
  127. package/@types/loot-core/src/server/sheet.test.d.ts +0 -1
  128. package/@types/loot-core/src/server/spreadsheet/app.d.ts +0 -38
  129. package/@types/loot-core/src/server/spreadsheet/globals.d.ts +0 -1
  130. package/@types/loot-core/src/server/spreadsheet/graph-data-structure.d.ts +0 -15
  131. package/@types/loot-core/src/server/spreadsheet/spreadsheet.d.ts +0 -87
  132. package/@types/loot-core/src/server/spreadsheet/util.d.ts +0 -5
  133. package/@types/loot-core/src/server/sync/app.d.ts +0 -38
  134. package/@types/loot-core/src/server/sync/encoder.d.ts +0 -9
  135. package/@types/loot-core/src/server/sync/index.d.ts +0 -47
  136. package/@types/loot-core/src/server/sync/make-test-message.d.ts +0 -9
  137. package/@types/loot-core/src/server/sync/migrate.d.ts +0 -2
  138. package/@types/loot-core/src/server/sync/repair.d.ts +0 -6
  139. package/@types/loot-core/src/server/sync/reset.d.ts +0 -6
  140. package/@types/loot-core/src/server/sync/utils.d.ts +0 -3
  141. package/@types/loot-core/src/server/tags/app.d.ts +0 -32
  142. package/@types/loot-core/src/server/tools/app.d.ts +0 -30
  143. package/@types/loot-core/src/server/transactions/app.d.ts +0 -64
  144. package/@types/loot-core/src/server/transactions/export/export-to-csv.d.ts +0 -2
  145. package/@types/loot-core/src/server/transactions/import/ofx2json.d.ts +0 -15
  146. package/@types/loot-core/src/server/transactions/import/parse-file.d.ts +0 -27
  147. package/@types/loot-core/src/server/transactions/import/qif2json.d.ts +0 -26
  148. package/@types/loot-core/src/server/transactions/import/xmlcamt2json.d.ts +0 -10
  149. package/@types/loot-core/src/server/transactions/index.d.ts +0 -18
  150. package/@types/loot-core/src/server/transactions/merge.d.ts +0 -2
  151. package/@types/loot-core/src/server/transactions/transaction-rules.d.ts +0 -57
  152. package/@types/loot-core/src/server/transactions/transfer.d.ts +0 -26
  153. package/@types/loot-core/src/server/undo.d.ts +0 -14
  154. package/@types/loot-core/src/server/update.d.ts +0 -1
  155. package/@types/loot-core/src/server/util/budget-name.d.ts +0 -6
  156. package/@types/loot-core/src/server/util/custom-sync-mapping.d.ts +0 -4
  157. package/@types/loot-core/src/server/util/rschedule.d.ts +0 -7
  158. package/@types/loot-core/src/shared/async.d.ts +0 -4
  159. package/@types/loot-core/src/shared/currencies.d.ts +0 -11
  160. package/@types/loot-core/src/shared/dashboard.d.ts +0 -2
  161. package/@types/loot-core/src/shared/environment.d.ts +0 -4
  162. package/@types/loot-core/src/shared/errors.d.ts +0 -25
  163. package/@types/loot-core/src/shared/locale.d.ts +0 -2
  164. package/@types/loot-core/src/shared/months.d.ts +0 -71
  165. package/@types/loot-core/src/shared/normalisation.d.ts +0 -1
  166. package/@types/loot-core/src/shared/platform.d.ts +0 -5
  167. package/@types/loot-core/src/shared/query.d.ts +0 -46
  168. package/@types/loot-core/src/shared/rules.d.ts +0 -40
  169. package/@types/loot-core/src/shared/schedules.d.ts +0 -36
  170. package/@types/loot-core/src/shared/transactions.d.ts +0 -68
  171. package/@types/loot-core/src/shared/util.d.ts +0 -95
  172. package/@types/loot-core/src/types/api-handlers.d.ts +0 -199
  173. package/@types/loot-core/src/types/budget.d.ts +0 -8
  174. package/@types/loot-core/src/types/handlers.d.ts +0 -23
  175. package/@types/loot-core/src/types/models/account.d.ts +0 -21
  176. package/@types/loot-core/src/types/models/bank-sync.d.ts +0 -16
  177. package/@types/loot-core/src/types/models/bank.d.ts +0 -6
  178. package/@types/loot-core/src/types/models/category-group.d.ts +0 -10
  179. package/@types/loot-core/src/types/models/category.d.ts +0 -14
  180. package/@types/loot-core/src/types/models/dashboard.d.ts +0 -126
  181. package/@types/loot-core/src/types/models/gocardless.d.ts +0 -71
  182. package/@types/loot-core/src/types/models/import-transaction.d.ts +0 -45
  183. package/@types/loot-core/src/types/models/index.d.ts +0 -21
  184. package/@types/loot-core/src/types/models/note.d.ts +0 -4
  185. package/@types/loot-core/src/types/models/openid.d.ts +0 -8
  186. package/@types/loot-core/src/types/models/payee.d.ts +0 -9
  187. package/@types/loot-core/src/types/models/pluggyai.d.ts +0 -17
  188. package/@types/loot-core/src/types/models/reports.d.ts +0 -124
  189. package/@types/loot-core/src/types/models/rule.d.ts +0 -86
  190. package/@types/loot-core/src/types/models/schedule.d.ts +0 -47
  191. package/@types/loot-core/src/types/models/simplefin.d.ts +0 -24
  192. package/@types/loot-core/src/types/models/tags.d.ts +0 -6
  193. package/@types/loot-core/src/types/models/templates.d.ts +0 -109
  194. package/@types/loot-core/src/types/models/transaction-filter.d.ts +0 -8
  195. package/@types/loot-core/src/types/models/transaction.d.ts +0 -37
  196. package/@types/loot-core/src/types/models/user-access.d.ts +0 -9
  197. package/@types/loot-core/src/types/models/user.d.ts +0 -22
  198. package/@types/loot-core/src/types/prefs.d.ts +0 -94
  199. package/@types/loot-core/src/types/server-events.d.ts +0 -61
  200. package/@types/loot-core/src/types/server-handlers.d.ts +0 -30
  201. package/@types/loot-core/src/types/util.d.ts +0 -13
  202. package/@types/loot-core/typings/pegjs.d.ts +0 -1
  203. package/@types/loot-core/typings/process-worker.d.ts +0 -9
  204. package/@types/loot-core/typings/vite-plugin-peggy-loader.d.ts +0 -1
  205. package/@types/loot-core/typings/window.d.ts +0 -45
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actual-app/api",
3
- "version": "26.3.0",
3
+ "version": "26.4.0-nightly.20260305",
4
4
  "description": "An API for Actual",
5
5
  "license": "MIT",
6
6
  "files": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actual-app/api",
3
- "version": "26.3.0",
3
+ "version": "26.4.0-nightly.20260305",
4
4
  "description": "An API for Actual",
5
5
  "license": "MIT",
6
6
  "files": [
@@ -1,2 +0,0 @@
1
- import type { Handlers } from '../types/handlers';
2
- export declare function createTestBudget(handlers: Handlers): Promise<void>;
@@ -1,10 +0,0 @@
1
- import type { AccountEntity, CategoryEntity, CategoryGroupEntity, TransactionEntity } from '../types/models';
2
- export declare function generateAccount(name: AccountEntity['name'], isConnected?: boolean, offbudget?: boolean): AccountEntity;
3
- export declare function generateCategory(name: string, group: string, isIncome?: boolean): CategoryEntity;
4
- export declare function generateCategoryGroup(name: string, isIncome?: boolean): CategoryGroupEntity;
5
- export type CategoryGroupDefinition = Omit<CategoryGroupEntity, 'id' | 'categories'> & {
6
- categories: Omit<CategoryEntity, 'id' | 'group'>[];
7
- };
8
- export declare function generateCategoryGroups(definition: Partial<CategoryGroupDefinition>[]): CategoryGroupEntity[];
9
- export declare function generateTransaction(data: Partial<TransactionEntity> & Pick<TransactionEntity, 'account'>, splitAmount?: number, showError?: boolean): TransactionEntity[];
10
- export declare function generateTransactions(count: number, accountId: string, groupId: string, splitAtIndexes?: number[], showError?: boolean): TransactionEntity[];
@@ -1 +0,0 @@
1
- export declare const random: () => number;
@@ -1,8 +0,0 @@
1
- export declare function expectSnapshotWithDiffer(initialValue: any, { onlyUpdates }?: {
2
- onlyUpdates?: any;
3
- }): {
4
- expectToMatchDiff: (value: any) => void;
5
- };
6
- export declare function getFixtures(filename: any): void;
7
- export declare function debugDOM(node: any): string;
8
- export declare function patchFetchForSqlJS(baseURL: string): void;
@@ -1,2 +0,0 @@
1
- export declare const captureException: (exc: Error) => void;
2
- export declare const captureBreadcrumb: (crumb: unknown) => void;
@@ -1,19 +0,0 @@
1
- import type { GlobalPrefsJson } from '../../../types/prefs';
2
- export declare function init(opts?: {
3
- persist?: boolean;
4
- }): void;
5
- export type Init = typeof init;
6
- export declare function getItem<K extends keyof GlobalPrefsJson>(key: K): Promise<GlobalPrefsJson[K]>;
7
- export type GetItem = typeof getItem;
8
- export declare function setItem<K extends keyof GlobalPrefsJson>(key: K, value: GlobalPrefsJson[K]): Promise<void>;
9
- export type SetItem = typeof setItem;
10
- export declare function removeItem(key: keyof GlobalPrefsJson): Promise<void>;
11
- export type RemoveItem = typeof removeItem;
12
- export declare function multiGet<K extends readonly (keyof GlobalPrefsJson)[]>(keys: K): Promise<{
13
- [P in K[number]]: GlobalPrefsJson[P];
14
- }>;
15
- export type MultiGet = typeof multiGet;
16
- export declare function multiSet<K extends keyof GlobalPrefsJson>(keyValues: Array<[K, GlobalPrefsJson[K]]>): Promise<void>;
17
- export type MultiSet = typeof multiSet;
18
- export declare function multiRemove(keys: (keyof GlobalPrefsJson)[]): Promise<void>;
19
- export type MultiRemove = typeof multiRemove;
@@ -1,11 +0,0 @@
1
- import type { GlobalPrefsJson } from '../../../types/prefs';
2
- import type * as T from './index-types';
3
- export declare const init: T.Init;
4
- export declare const getItem: T.GetItem;
5
- export declare const setItem: T.SetItem;
6
- export declare const removeItem: T.RemoveItem;
7
- export declare function multiGet<K extends readonly (keyof GlobalPrefsJson)[]>(keys: K): Promise<{
8
- [P in K[number]]: GlobalPrefsJson[P];
9
- }>;
10
- export declare const multiSet: T.MultiSet;
11
- export declare const multiRemove: T.MultiRemove;
@@ -1,11 +0,0 @@
1
- import type { Handlers } from '../../../types/handlers';
2
- import type { ServerEvents } from '../../../types/server-events';
3
- export declare function init(channel: Window | number, // in electron the port number, in web the worker
4
- handlers: Handlers): void;
5
- export type Init = typeof init;
6
- export declare function send<K extends keyof ServerEvents>(type: K, args?: ServerEvents[K]): void;
7
- export type Send = typeof send;
8
- export declare function getNumClients(): number;
9
- export type GetNumClients = typeof getNumClients;
10
- export declare function resetEvents(): void;
11
- export type ResetEvents = typeof resetEvents;
@@ -1,5 +0,0 @@
1
- import type * as T from './index-types';
2
- export declare const init: T.Init;
3
- export declare const send: T.Send;
4
- export declare const getNumClients: () => number;
5
- export declare const resetEvents: T.ResetEvents;
@@ -1 +0,0 @@
1
- export declare const fetch: (input: RequestInfo | URL, options?: RequestInit) => Promise<Response>;
@@ -1,22 +0,0 @@
1
- import { join } from './path-join';
2
- export declare const bundledDatabasePath: string;
3
- export declare const migrationsPath: string;
4
- export declare const demoBudgetPath: string;
5
- export { join };
6
- export { getDocumentDir, getBudgetDir, _setDocumentDir } from './shared';
7
- export declare const getDataDir: () => string;
8
- export declare const pathToId: (filepath: string) => string;
9
- export declare const init: () => Promise<void>;
10
- export declare const basename: (filepath: any) => any;
11
- export declare const listDir: (filepath: any) => Promise<string[]>;
12
- export declare const exists: (filepath: any) => Promise<boolean>;
13
- export declare const mkdir: (filepath: any) => Promise<void>;
14
- export declare const size: (filepath: any) => Promise<number>;
15
- export declare const copyFile: (frompath: string, topath: string) => Promise<boolean>;
16
- export declare function readFile(filepath: string, encoding?: 'utf8'): Promise<string>;
17
- export declare function readFile(filepath: string, encoding: 'binary'): Promise<Uint8Array>;
18
- export declare const writeFile: (filepath: string, contents: any) => Promise<boolean>;
19
- export declare const removeFile: (filepath: string) => Promise<void>;
20
- export declare const removeDir: (filepath: any) => Promise<void>;
21
- export declare const removeDirRecursively: (dirpath: any) => Promise<void>;
22
- export declare const getModifiedTime: (filepath: string) => Promise<Date>;
@@ -1 +0,0 @@
1
- export declare const join: (...args: string[]) => any;
@@ -1,3 +0,0 @@
1
- export declare const _setDocumentDir: (dir: any) => any;
2
- export declare const getDocumentDir: () => any;
3
- export declare const getBudgetDir: (id: any) => any;
@@ -1,15 +0,0 @@
1
- type Data = {
2
- filepath: string;
3
- contents: string;
4
- };
5
- export declare const getStore: (db: IDBDatabase, name: string) => {
6
- trans: IDBTransaction;
7
- store: IDBObjectStore;
8
- };
9
- export declare const get: (store: IDBObjectStore, key: IDBValidKey | IDBKeyRange) => Promise<Data>;
10
- export declare const set: (store: IDBObjectStore, item: Data) => Promise<unknown>;
11
- export declare const del: (store: IDBObjectStore, key: string) => Promise<unknown>;
12
- export declare const getDatabase: () => Promise<IDBDatabase>;
13
- export declare const openDatabase: () => Promise<IDBDatabase>;
14
- export declare const closeDatabase: () => Promise<void>;
15
- export {};
@@ -1,11 +0,0 @@
1
- export declare function setVerboseMode(verbose: boolean): void;
2
- export declare function isVerboseMode(): boolean;
3
- export declare const logger: {
4
- info: (...args: unknown[]) => void;
5
- warn: (...args: unknown[]) => void;
6
- log: (...args: unknown[]) => void;
7
- error: (...args: unknown[]) => void;
8
- debug: (...args: unknown[]) => void;
9
- group: (...args: unknown[]) => void;
10
- groupEnd: () => void;
11
- };
@@ -1,53 +0,0 @@
1
- import initSqlJS from '@jlongster/sql.js';
2
- import type { Database, SqlJsStatic, Statement } from '@jlongster/sql.js';
3
- type FSStream = (typeof FS)['FSStream'] & {
4
- node: (typeof FS)['FSNode'] & {
5
- contents: {
6
- readIfFallback: () => Promise<unknown>;
7
- };
8
- };
9
- };
10
- type FS = Omit<typeof FS, 'lookupPath' | 'open' | 'close'> & {
11
- lookupPath: (path: string, opts?: {
12
- follow?: boolean;
13
- }) => {
14
- node: (typeof FS)['FSNode'] & {
15
- link?: string;
16
- };
17
- };
18
- open: (path: string, flags: string, mode?: number) => FSStream;
19
- close: (stream: FSStream) => void;
20
- };
21
- export type SqlJsModule = SqlJsStatic & {
22
- FS: FS;
23
- reset_filesystem: () => void;
24
- register_for_idb: (idb: IDBDatabase) => void;
25
- };
26
- export declare function init({ baseURL, }?: {
27
- baseURL?: string;
28
- }): Promise<unknown>;
29
- export declare function _getModule(): SqlJsModule;
30
- export declare function prepare(db: Database, sql: string): {
31
- bind(values?: initSqlJS.BindParams): boolean;
32
- free(): boolean;
33
- freemem(): void;
34
- get(params?: initSqlJS.BindParams): initSqlJS.SqlValue[];
35
- getAsObject(params?: initSqlJS.BindParams): initSqlJS.ParamsObject;
36
- getColumnNames(): string[];
37
- getNormalizedSQL(): string;
38
- getSQL(): string;
39
- reset(): void;
40
- run(values?: initSqlJS.BindParams): void;
41
- step(): boolean;
42
- };
43
- export declare function runQuery(db: Database, sql: string | Statement, params?: (string | number)[], fetchAll?: false): {
44
- changes: unknown;
45
- };
46
- export declare function runQuery<T>(db: Database, sql: string | Statement, params: (string | number)[], fetchAll: true): T[];
47
- export declare function execQuery(db: Database, sql: string): void;
48
- export declare function transaction(db: Database, fn: () => void): void;
49
- export declare function asyncTransaction(db: Database, fn: () => Promise<void>): Promise<void>;
50
- export declare function openDatabase(pathOrBuffer?: string | Uint8Array): Promise<any>;
51
- export declare function closeDatabase(db: Database): void;
52
- export declare function exportDatabase(db: Database): Promise<Uint8Array<ArrayBufferLike>>;
53
- export {};
@@ -1 +0,0 @@
1
- export declare function normalise(value: string | null): string | null;
@@ -1 +0,0 @@
1
- export declare function unicodeLike(pattern: string | null, value: string | null): number;
@@ -1,159 +0,0 @@
1
- import type { AccountEntity, CategoryEntity, ImportTransactionEntity, SyncServerGoCardlessAccount, SyncServerPluggyAiAccount, SyncServerSimpleFinAccount, TransactionEntity } from '../../types/models';
2
- import * as bankSync from './sync';
3
- type LinkAccountBaseParams = {
4
- upgradingId?: AccountEntity['id'];
5
- offBudget?: boolean;
6
- startingDate?: string;
7
- startingBalance?: number;
8
- };
9
- export type AccountHandlers = {
10
- 'account-update': typeof updateAccount;
11
- 'accounts-get': typeof getAccounts;
12
- 'account-balance': typeof getAccountBalance;
13
- 'account-properties': typeof getAccountProperties;
14
- 'gocardless-accounts-link': typeof linkGoCardlessAccount;
15
- 'simplefin-accounts-link': typeof linkSimpleFinAccount;
16
- 'pluggyai-accounts-link': typeof linkPluggyAiAccount;
17
- 'account-create': typeof createAccount;
18
- 'account-close': typeof closeAccount;
19
- 'account-reopen': typeof reopenAccount;
20
- 'account-move': typeof moveAccount;
21
- 'secret-set': typeof setSecret;
22
- 'secret-check': typeof checkSecret;
23
- 'gocardless-poll-web-token': typeof pollGoCardlessWebToken;
24
- 'gocardless-poll-web-token-stop': typeof stopGoCardlessWebTokenPolling;
25
- 'gocardless-status': typeof goCardlessStatus;
26
- 'simplefin-status': typeof simpleFinStatus;
27
- 'pluggyai-status': typeof pluggyAiStatus;
28
- 'simplefin-accounts': typeof simpleFinAccounts;
29
- 'pluggyai-accounts': typeof pluggyAiAccounts;
30
- 'gocardless-get-banks': typeof getGoCardlessBanks;
31
- 'gocardless-create-web-token': typeof createGoCardlessWebToken;
32
- 'accounts-bank-sync': typeof accountsBankSync;
33
- 'simplefin-batch-sync': typeof simpleFinBatchSync;
34
- 'transactions-import': typeof importTransactions;
35
- 'account-unlink': typeof unlinkAccount;
36
- };
37
- declare function updateAccount({ id, name, last_reconciled, }: Pick<AccountEntity, 'id' | 'name'> & Partial<Pick<AccountEntity, 'last_reconciled'>>): Promise<{}>;
38
- declare function getAccounts(): Promise<AccountEntity[]>;
39
- declare function getAccountBalance({ id, cutoff, }: {
40
- id: string;
41
- cutoff: string | Date;
42
- }): Promise<number>;
43
- declare function getAccountProperties({ id }: {
44
- id: AccountEntity['id'];
45
- }): Promise<{
46
- balance: number;
47
- numTransactions: number;
48
- }>;
49
- declare function linkGoCardlessAccount({ requisitionId, account, upgradingId, offBudget, startingDate, startingBalance, }: LinkAccountBaseParams & {
50
- requisitionId: string;
51
- account: SyncServerGoCardlessAccount;
52
- }): Promise<string>;
53
- declare function linkSimpleFinAccount({ externalAccount, upgradingId, offBudget, startingDate, startingBalance, }: LinkAccountBaseParams & {
54
- externalAccount: SyncServerSimpleFinAccount;
55
- }): Promise<string>;
56
- declare function linkPluggyAiAccount({ externalAccount, upgradingId, offBudget, startingDate, startingBalance, }: LinkAccountBaseParams & {
57
- externalAccount: SyncServerPluggyAiAccount;
58
- }): Promise<string>;
59
- declare function createAccount({ name, balance, offBudget, closed, }: {
60
- name: string;
61
- balance?: number | undefined;
62
- offBudget?: boolean | undefined;
63
- closed?: boolean | undefined;
64
- }): Promise<string>;
65
- declare function closeAccount({ id, transferAccountId, categoryId, forced, }: {
66
- id: AccountEntity['id'];
67
- transferAccountId?: AccountEntity['id'] | undefined;
68
- categoryId?: CategoryEntity['id'] | undefined;
69
- forced?: boolean | undefined;
70
- }): Promise<void>;
71
- declare function reopenAccount({ id }: {
72
- id: AccountEntity['id'];
73
- }): Promise<void>;
74
- declare function moveAccount({ id, targetId, }: {
75
- id: AccountEntity['id'];
76
- targetId: AccountEntity['id'] | null;
77
- }): Promise<void>;
78
- declare function setSecret({ name, value, }: {
79
- name: string;
80
- value: string | null;
81
- }): Promise<any>;
82
- declare function checkSecret(name: string): Promise<string | {
83
- error: string;
84
- }>;
85
- declare function pollGoCardlessWebToken({ requisitionId, }: {
86
- requisitionId: string;
87
- }): Promise<unknown>;
88
- declare function stopGoCardlessWebTokenPolling(): Promise<string>;
89
- declare function goCardlessStatus(): Promise<any>;
90
- declare function simpleFinStatus(): Promise<any>;
91
- declare function pluggyAiStatus(): Promise<any>;
92
- declare function simpleFinAccounts(): Promise<any>;
93
- declare function pluggyAiAccounts(): Promise<any>;
94
- declare function getGoCardlessBanks(country: string): Promise<any>;
95
- declare function createGoCardlessWebToken({ institutionId, accessValidForDays, }: {
96
- institutionId: string;
97
- accessValidForDays: number;
98
- }): Promise<any>;
99
- type SyncResponse = {
100
- newTransactions: Array<TransactionEntity['id']>;
101
- matchedTransactions: Array<TransactionEntity['id']>;
102
- updatedAccounts: Array<AccountEntity['id']>;
103
- };
104
- type SyncError = {
105
- type: 'SyncError';
106
- accountId: AccountEntity['id'];
107
- message: string;
108
- category: string;
109
- code: string;
110
- } | {
111
- accountId: AccountEntity['id'];
112
- message: string;
113
- internal?: string;
114
- };
115
- export type SyncResponseWithErrors = SyncResponse & {
116
- errors: SyncError[];
117
- };
118
- declare function accountsBankSync({ ids, }: {
119
- ids: Array<AccountEntity['id']>;
120
- }): Promise<SyncResponseWithErrors>;
121
- declare function simpleFinBatchSync({ ids, }: {
122
- ids: Array<AccountEntity['id']>;
123
- }): Promise<Array<{
124
- accountId: AccountEntity['id'];
125
- res: SyncResponseWithErrors;
126
- }>>;
127
- export type ImportTransactionsResult = bankSync.ReconcileTransactionsResult & {
128
- errors: Array<{
129
- message: string;
130
- }>;
131
- };
132
- declare function importTransactions({ accountId, transactions, isPreview, opts, }: {
133
- accountId: AccountEntity['id'];
134
- transactions: ImportTransactionEntity[];
135
- isPreview: boolean;
136
- opts?: {
137
- defaultCleared?: boolean;
138
- };
139
- }): Promise<ImportTransactionsResult>;
140
- declare function unlinkAccount({ id }: {
141
- id: AccountEntity['id'];
142
- }): Promise<string>;
143
- export declare const app: {
144
- events: import("mitt").Emitter<{
145
- sync: import("../../types/server-events").ServerEvents["sync-event"];
146
- 'load-budget': {
147
- id: string;
148
- };
149
- }>;
150
- handlers: AccountHandlers;
151
- services: (() => () => void)[];
152
- unlistenServices: (() => void)[];
153
- method<Name extends "account-update" | "accounts-get" | "account-balance" | "account-properties" | "gocardless-accounts-link" | "simplefin-accounts-link" | "pluggyai-accounts-link" | "account-create" | "account-close" | "account-reopen" | "account-move" | "secret-set" | "secret-check" | "gocardless-poll-web-token" | "gocardless-poll-web-token-stop" | "gocardless-status" | "simplefin-status" | "pluggyai-status" | "simplefin-accounts" | "pluggyai-accounts" | "gocardless-get-banks" | "gocardless-create-web-token" | "accounts-bank-sync" | "simplefin-batch-sync" | "transactions-import" | "account-unlink">(name: Name, func: AccountHandlers[Name]): void;
154
- service(func: () => () => void): void;
155
- combine(...apps: any[]): void;
156
- startServices(): void;
157
- stopServices(): Promise<void>;
158
- };
159
- export {};
@@ -1,6 +0,0 @@
1
- import * as db from '../db';
2
- export declare function findOrCreateBank(institution: any, requisitionId: any): Promise<Pick<db.DbBank, "id" | "bank_id"> | {
3
- id: string;
4
- bank_id: any;
5
- name: any;
6
- }>;
@@ -1,5 +0,0 @@
1
- export declare function createPayee(description: string): Promise<string>;
2
- export declare function getStartingBalancePayee(): Promise<{
3
- id: string;
4
- category: string;
5
- }>;
@@ -1,25 +0,0 @@
1
- import type { AccountEntity, TransactionEntity } from '../../types/models';
2
- export declare function getGoCardlessAccounts(userId: any, userKey: any, id: any): Promise<any>;
3
- export type ReconcileTransactionsResult = {
4
- added: string[];
5
- updated: string[];
6
- updatedPreview: Array<{
7
- transaction: TransactionEntity;
8
- existing?: TransactionEntity;
9
- ignored?: boolean;
10
- tombstone?: boolean;
11
- }>;
12
- };
13
- export declare function reconcileTransactions(acctId: any, transactions: any, isBankSyncAccount?: boolean, strictIdChecking?: boolean, isPreview?: boolean, defaultCleared?: boolean, updateDates?: boolean): Promise<ReconcileTransactionsResult>;
14
- export declare function matchTransactions(acctId: any, transactions: any, isBankSyncAccount?: boolean, strictIdChecking?: boolean): Promise<{
15
- payeesToCreate: Map<any, any>;
16
- transactionsStep1: any[];
17
- transactionsStep2: any[];
18
- transactionsStep3: any[];
19
- }>;
20
- export declare function addTransactions(acctId: any, transactions: any, { runTransfers, learnCategories }?: {
21
- runTransfers?: boolean;
22
- learnCategories?: boolean;
23
- }): Promise<any>;
24
- export declare function syncAccount(userId: string | undefined, userKey: string | undefined, id: string, acctId: string, bankId: string, customStartingDate?: string, customStartingBalance?: number): Promise<ReconcileTransactionsResult>;
25
- export declare function simpleFinBatchSync(accounts: Array<Pick<AccountEntity, 'id' | 'account_id'>>): Promise<any[]>;
@@ -1,3 +0,0 @@
1
- export declare function title(str: any, options?: {
2
- special: any;
3
- }): any;
@@ -1 +0,0 @@
1
- export declare const lowerCaseSet: Set<string>;
@@ -1 +0,0 @@
1
- export declare const specials: string[];
@@ -1,70 +0,0 @@
1
- import type { NewUserAccessEntity, UserAvailable, UserEntity } from '../../types/models';
2
- export type AdminHandlers = {
3
- 'users-get': typeof getUsers;
4
- 'user-delete-all': typeof deleteAllUsers;
5
- 'user-add': typeof addUser;
6
- 'user-update': typeof updateUser;
7
- 'access-add': typeof addAccess;
8
- 'access-delete-all': typeof deleteAllAccess;
9
- 'access-get-available-users': typeof accessGetAvailableUsers;
10
- 'transfer-ownership': typeof transferOwnership;
11
- 'owner-created': typeof ownerCreated;
12
- };
13
- export declare const app: {
14
- events: import("mitt").Emitter<{
15
- sync: import("../../types/server-events").ServerEvents["sync-event"];
16
- 'load-budget': {
17
- id: string;
18
- };
19
- }>;
20
- handlers: AdminHandlers;
21
- services: (() => () => void)[];
22
- unlistenServices: (() => void)[];
23
- method<Name extends "users-get" | "user-delete-all" | "user-add" | "user-update" | "access-add" | "access-delete-all" | "access-get-available-users" | "transfer-ownership" | "owner-created">(name: Name, func: AdminHandlers[Name]): void;
24
- service(func: () => () => void): void;
25
- combine(...apps: any[]): void;
26
- startServices(): void;
27
- stopServices(): Promise<void>;
28
- };
29
- declare function getUsers(): Promise<UserEntity[] | {
30
- error: string;
31
- }>;
32
- declare function deleteAllUsers(ids: Array<UserEntity['id']>): Promise<{
33
- someDeletionsFailed: boolean;
34
- ids?: number[];
35
- } | {
36
- error: string;
37
- }>;
38
- declare function addUser(user: Omit<UserEntity, 'id'>): Promise<{
39
- error: string;
40
- } | {
41
- id: string;
42
- }>;
43
- declare function updateUser(user: Omit<UserEntity, 'id'>): Promise<{
44
- error: string;
45
- } | {
46
- id: string;
47
- }>;
48
- declare function addAccess(access: NewUserAccessEntity): Promise<{
49
- error?: string;
50
- } | Record<string, never>>;
51
- declare function deleteAllAccess({ fileId, ids, }: {
52
- fileId: string;
53
- ids: string[];
54
- }): Promise<{
55
- someDeletionsFailed: boolean;
56
- ids?: number[];
57
- } | {
58
- error: unknown;
59
- }>;
60
- declare function accessGetAvailableUsers(fileId: string): Promise<UserAvailable[] | {
61
- error: string;
62
- }>;
63
- declare function transferOwnership({ fileId, newUserId, }: {
64
- fileId: string;
65
- newUserId: string;
66
- }): Promise<{
67
- error?: string;
68
- } | Record<string, never>>;
69
- declare function ownerCreated(): Promise<boolean>;
70
- export {};
@@ -1,94 +0,0 @@
1
- import type { Budget } from '../types/budget';
2
- import type { AccountEntity, CategoryEntity, CategoryGroupEntity, PayeeEntity, ScheduleEntity, TagEntity } from '../types/models';
3
- import type { RemoteFile } from './cloud-storage';
4
- export type APIAccountEntity = Pick<AccountEntity, 'id' | 'name'> & {
5
- offbudget?: boolean;
6
- closed?: boolean;
7
- balance_current?: number | null;
8
- };
9
- export declare const accountModel: {
10
- toExternal(account: AccountEntity): APIAccountEntity;
11
- fromExternal(account: APIAccountEntity): AccountEntity;
12
- validate(account: Partial<import("./db").DbAccount>, { update }?: {
13
- update?: boolean;
14
- }): import("./db").DbAccount;
15
- };
16
- export type APICategoryEntity = Pick<CategoryEntity, 'id' | 'name' | 'is_income' | 'hidden'> & {
17
- group_id: string;
18
- };
19
- export declare const categoryModel: {
20
- toExternal(category: CategoryEntity): APICategoryEntity;
21
- fromExternal(category: APICategoryEntity): CategoryEntity;
22
- validate(category: Partial<import("./db").DbCategory>, { update }?: {
23
- update?: boolean;
24
- }): import("./db").DbCategory;
25
- toDb(category: CategoryEntity, { update }?: {
26
- update?: boolean;
27
- }): import("./db").DbCategory;
28
- fromDb(category: import("./db").DbCategory): CategoryEntity;
29
- };
30
- export type APICategoryGroupEntity = Pick<CategoryGroupEntity, 'id' | 'name' | 'is_income' | 'hidden'> & {
31
- categories?: APICategoryEntity[];
32
- };
33
- export declare const categoryGroupModel: {
34
- toExternal(group: CategoryGroupEntity): APICategoryGroupEntity;
35
- fromExternal(group: APICategoryGroupEntity): CategoryGroupEntity;
36
- validate(categoryGroup: Partial<import("./db").DbCategoryGroup>, { update }?: {
37
- update?: boolean;
38
- }): import("./db").DbCategoryGroup;
39
- toDb(categoryGroup: CategoryGroupEntity, { update }?: {
40
- update?: boolean;
41
- }): import("./db").DbCategoryGroup;
42
- fromDb(categoryGroup: import("./db").DbCategoryGroup & {
43
- categories: import("./db").DbCategory[];
44
- }): CategoryGroupEntity;
45
- };
46
- export type APIPayeeEntity = Pick<PayeeEntity, 'id' | 'name' | 'transfer_acct'>;
47
- export declare const payeeModel: {
48
- toExternal(payee: PayeeEntity): {
49
- id: string;
50
- name: string;
51
- transfer_acct: string;
52
- };
53
- fromExternal(payee: APIPayeeEntity): PayeeEntity;
54
- validate(payee: Partial<import("./db").DbPayee>, { update }?: {
55
- update?: boolean;
56
- }): import("./db").DbPayee;
57
- toDb(payee: PayeeEntity, { update }?: {
58
- update?: boolean;
59
- }): import("./db").DbPayee;
60
- fromDb(payee: import("./db").DbPayee): PayeeEntity;
61
- };
62
- export type APITagEntity = Pick<TagEntity, 'id' | 'tag' | 'color' | 'description'>;
63
- export declare const tagModel: {
64
- toExternal(tag: TagEntity): APITagEntity;
65
- fromExternal(tag: Partial<APITagEntity>): Partial<TagEntity>;
66
- };
67
- export type APIFileEntity = Omit<RemoteFile, 'deleted' | 'fileId'> & {
68
- id?: string;
69
- cloudFileId: string;
70
- state?: 'remote';
71
- };
72
- export declare const remoteFileModel: {
73
- toExternal(file: RemoteFile): APIFileEntity | null;
74
- fromExternal(file: APIFileEntity): RemoteFile;
75
- };
76
- export declare const budgetModel: {
77
- toExternal(file: Budget): APIFileEntity;
78
- fromExternal(file: APIFileEntity): Budget;
79
- };
80
- export type AmountOPType = 'is' | 'isapprox' | 'isbetween';
81
- export type APIScheduleEntity = Pick<ScheduleEntity, 'id' | 'name' | 'posts_transaction'> & {
82
- rule?: ScheduleEntity['rule'];
83
- next_date?: ScheduleEntity['next_date'];
84
- completed?: ScheduleEntity['completed'];
85
- payee?: ScheduleEntity['_payee'];
86
- account?: ScheduleEntity['_account'];
87
- amount?: ScheduleEntity['_amount'];
88
- amountOp: AmountOPType;
89
- date: ScheduleEntity['_date'];
90
- };
91
- export declare const scheduleModel: {
92
- toExternal(schedule: ScheduleEntity): APIScheduleEntity;
93
- fromExternal(schedule: APIScheduleEntity): ScheduleEntity;
94
- };
@@ -1,2 +0,0 @@
1
- import type { ServerHandlers } from '../types/server-handlers';
2
- export declare function installAPI(serverHandlers: ServerHandlers): ServerHandlers & import("../types/api-handlers").ApiHandlers & import("./budget/app").BudgetHandlers & import("./dashboard/app").DashboardHandlers & import("./filters/app").FiltersHandlers & import("./notes/app").NotesHandlers & import("./preferences/app").PreferencesHandlers & import("./reports/app").ReportsHandlers & import("./rules/app").RulesHandlers & import("./schedules/app").SchedulesHandlers & import("./transactions/app").TransactionHandlers & import("./admin/app").AdminHandlers & import("./tools/app").ToolsHandlers & import("./accounts/app").AccountHandlers & import("./payees/app").PayeesHandlers & import("./spreadsheet/app").SpreadsheetHandlers & import("./sync/app").SyncHandlers & import("./budgetfiles/app").BudgetFileHandlers & import("./encryption/app").EncryptionHandlers & import("./tags/app").TagsHandlers & import("./auth/app").AuthHandlers;
@@ -1 +0,0 @@
1
- export {};
@@ -1,24 +0,0 @@
1
- import type { Emitter } from 'mitt';
2
- import type { ServerEvents } from '../types/server-events';
3
- type Events = {
4
- sync: ServerEvents['sync-event'];
5
- 'load-budget': {
6
- id: string;
7
- };
8
- };
9
- type UnlistenService = () => void;
10
- type Service = () => UnlistenService;
11
- declare class App<Handlers> {
12
- events: Emitter<Events>;
13
- handlers: Handlers;
14
- services: Service[];
15
- unlistenServices: UnlistenService[];
16
- constructor();
17
- method<Name extends string & keyof Handlers>(name: Name, func: Handlers[Name]): void;
18
- service(func: Service): void;
19
- combine(...apps: any[]): void;
20
- startServices(): void;
21
- stopServices(): Promise<void>;
22
- }
23
- export declare function createApp<T>(): App<T>;
24
- export {};