diff --git a/packages/loot-core/bin/profile-sql.js b/packages/loot-core/bin/profile-sql.js index 484202587562653298a2bd4600c9bddf1b3073b4..a56f3f10a7a7bdbd10f43ee1f19fb362c8cea062 100755 --- a/packages/loot-core/bin/profile-sql.js +++ b/packages/loot-core/bin/profile-sql.js @@ -4,7 +4,7 @@ import os from 'os'; import * as sqlite from '../src/platform/server/sqlite'; import * as db from '../src/server/db'; import { batchMessages, setSyncingMode } from '../src/server/sync'; -import { runQuery } from '../src/server/aql/schema/run-query'; +import { runQuery } from '../src/server/aql'; import asyncStorage from '../src/platform/server/asyncStorage'; import { makeChild } from '../src/shared/transactions'; import q from '../src/shared/query'; diff --git a/packages/loot-core/bin/sql-regenerate-views b/packages/loot-core/bin/sql-regenerate-views index dd71b5fefa4bff8bce99959e2e19e1cc725b576c..eaa49066dd8e0eb599bbcfddb5372ad777b1dbf6 100755 --- a/packages/loot-core/bin/sql-regenerate-views +++ b/packages/loot-core/bin/sql-regenerate-views @@ -1,5 +1,5 @@ #!/usr/bin/env actual-cli-runner.js -const { schema } = require('../src/server/aql/schema'); +const { schema } = require('../src/server/aql'); const table = process.argv[3]; if (table == null || table === 'transactions') { diff --git a/packages/loot-core/src/mocks/arbitrary-schema.js b/packages/loot-core/src/mocks/arbitrary-schema.js index 6b4d8d6e895e6597fbd1a432f87f5c02a2037478..0f508f2e5b8ab37e031de999974f946d54699a53 100644 --- a/packages/loot-core/src/mocks/arbitrary-schema.js +++ b/packages/loot-core/src/mocks/arbitrary-schema.js @@ -1,5 +1,5 @@ import fc from 'fast-check'; -import { schema } from '../server/aql/schema'; +import { schema } from '../server/aql'; import { addDays } from '../shared/months'; function typeArbitrary(typeDesc, name) { diff --git a/packages/loot-core/src/mocks/budget.js b/packages/loot-core/src/mocks/budget.js index 5e03bf4e6079221335643e9d4baf8824307b94b9..3143be3c2d0a76888277d30cf8f749f4b2aa5be3 100644 --- a/packages/loot-core/src/mocks/budget.js +++ b/packages/loot-core/src/mocks/budget.js @@ -4,7 +4,7 @@ import * as budget from '../server/budget/base'; import * as db from '../server/db'; import * as prefs from '../server/prefs'; import * as budgetActions from '../server/budget/actions'; -import { runQuery as aqlQuery } from '../server/aql/schema/run-query'; +import { runQuery as aqlQuery } from '../server/aql'; import { batchMessages, setSyncingMode } from '../server/sync'; import { runHandler, runMutator } from '../server/mutators'; import { addTransactions } from '../server/accounts/sync'; diff --git a/packages/loot-core/src/server/accounts/export-to-csv.js b/packages/loot-core/src/server/accounts/export-to-csv.js index 64b9f6e9d8db85760e1fa0f45ba9b9405cb98fed..f58e46883f176fa0049785c2eb79cc3d6886de01 100644 --- a/packages/loot-core/src/server/accounts/export-to-csv.js +++ b/packages/loot-core/src/server/accounts/export-to-csv.js @@ -1,5 +1,5 @@ import csvStringify from 'csv-stringify/lib/sync'; -import { runQuery as aqlQuery } from '../aql/schema/run-query'; +import { runQuery as aqlQuery } from '../aql'; import { integerToAmount } from '../../shared/util'; export async function exportToCSV( diff --git a/packages/loot-core/src/server/accounts/transaction-rules.js b/packages/loot-core/src/server/accounts/transaction-rules.js index 794f428d8dcd83d70fd07f1c3f10f036ddfe734b..dab58d44c70697c3285d55817240fe183431a939 100644 --- a/packages/loot-core/src/server/accounts/transaction-rules.js +++ b/packages/loot-core/src/server/accounts/transaction-rules.js @@ -21,7 +21,7 @@ import { requiredFields, toDateRepr } from '../models'; import { currentDay } from '../../shared/months'; import { partitionByField, fastSetMerge } from '../../shared/util'; import { setSyncingMode, batchMessages } from '../sync'; -import { schemaConfig } from '../aql/schema'; +import { schemaConfig } from '../aql'; // TODO: Detect if it looks like the user is creating a rename rule // and prompt to create it in the pre phase instead diff --git a/packages/loot-core/src/server/accounts/transaction-rules.test.js b/packages/loot-core/src/server/accounts/transaction-rules.test.js index d35653cab53098acb7ce6f4559788f0103dd1371..e6dc3d4134a68a765e22fbcb8053dce40391b84f 100644 --- a/packages/loot-core/src/server/accounts/transaction-rules.test.js +++ b/packages/loot-core/src/server/accounts/transaction-rules.test.js @@ -14,7 +14,7 @@ import { migrateOldRules } from './transaction-rules'; import { loadMappings } from '../db/mappings'; -import { runQuery } from '../aql/schema/run-query'; +import { runQuery } from '../aql'; import q from '../../shared/query'; // TODO: write tests to make sure payee renaming is "pre" and category diff --git a/packages/loot-core/src/server/api.js b/packages/loot-core/src/server/api.js index 460fa5802c62c7ebc22ddc7737caaf08a6d51e38..2ca0b754f63d7c05d38ab969b77ed10ccab884ff 100644 --- a/packages/loot-core/src/server/api.js +++ b/packages/loot-core/src/server/api.js @@ -20,7 +20,7 @@ import { setSyncingMode, batchMessages } from './sync'; import { getClock } from './crdt'; import { runMutator } from './mutators'; import { integerToAmount } from '../shared/util'; -import { runQuery as aqlQuery } from './aql/schema/run-query'; +import { runQuery as aqlQuery } from './aql'; import q from '../shared/query'; const connection = require('../platform/server/connection'); diff --git a/packages/loot-core/src/server/aql/index.js b/packages/loot-core/src/server/aql/index.js new file mode 100644 index 0000000000000000000000000000000000000000..2337f2b06ec27a425cc9cb51e830623a89a4de65 --- /dev/null +++ b/packages/loot-core/src/server/aql/index.js @@ -0,0 +1,10 @@ +export { + convertForInsert, + convertForUpdate, + convertFromSelect, + convertInputType, +} from './schema-helpers'; +export { compileQuery } from "./compiler"; +export { makeViews } from "./views"; +export { schema, schemaConfig } from "./schema"; +export { runQuery, runCompiledQuery } from "./schema/run-query"; diff --git a/packages/loot-core/src/server/db/index.js b/packages/loot-core/src/server/db/index.js index 249ec845b041b12171b3070d09d95f30baa3ca00..8c9813e1ad121710fbb61e52f8c2c1c7581f9458 100644 --- a/packages/loot-core/src/server/db/index.js +++ b/packages/loot-core/src/server/db/index.js @@ -2,7 +2,7 @@ import LRU from 'lru-cache'; import * as sqlite from '../../platform/server/sqlite'; import fs from '../../platform/server/fs'; import { sendMessages, batchMessages } from '../sync'; -import { schema, schemaConfig } from '../aql/schema'; +import { schema, schemaConfig } from '../aql'; import { accountModel, categoryModel, @@ -23,7 +23,7 @@ import { convertForInsert, convertForUpdate, convertFromSelect -} from '../aql/schema-helpers'; +} from '../aql'; import { shoveSortOrders, SORT_INCREMENT } from './sort'; export { toDateRepr, fromDateRepr } from '../models'; diff --git a/packages/loot-core/src/server/main.js b/packages/loot-core/src/server/main.js index ac80260f6fb17fb5443d8ea90ee65cf39854cbbd..6eca6a1cf4a6cb63bcc38b62ad47e1bb51e77791 100644 --- a/packages/loot-core/src/server/main.js +++ b/packages/loot-core/src/server/main.js @@ -64,9 +64,8 @@ import * as tracking from './tracking/events'; import { get, post } from './post'; import { APIError, TransactionError, PostError, RuleError } from './errors'; import { createTestBudget } from '../mocks/budget'; -import { runQuery as aqlQuery } from './aql/schema/run-query'; -import { Query } from '../shared/query'; -import q from '../shared/query'; +import { runQuery as aqlQuery } from './aql'; +import q, { Query } from '../shared/query'; import app from './main-app'; // Apps diff --git a/packages/loot-core/src/server/schedules/app.js b/packages/loot-core/src/server/schedules/app.js index 062490e71a7c31f7f4a5a21f48fc237aabc9f04a..34f699467701a27cdfe2fbd9f628e9ca9df9c719 100644 --- a/packages/loot-core/src/server/schedules/app.js +++ b/packages/loot-core/src/server/schedules/app.js @@ -4,7 +4,7 @@ import { createApp } from '../app'; import * as db from '../db'; import * as prefs from '../prefs'; import { toDateRepr } from '../models'; -import { runQuery as aqlQuery } from '../aql/schema/run-query'; +import { runQuery as aqlQuery } from '../aql'; import { dayFromDate, currentDay, parseDate } from '../../shared/months'; import q from '../../shared/query'; import { diff --git a/packages/loot-core/src/server/schedules/app.test.js b/packages/loot-core/src/server/schedules/app.test.js index 916244cb568cafee97058e73e861baf7de0ed7eb..5ba23b204747219fdef6feeda886d61adad9ec2a 100644 --- a/packages/loot-core/src/server/schedules/app.test.js +++ b/packages/loot-core/src/server/schedules/app.test.js @@ -1,4 +1,4 @@ -import { runQuery as aqlQuery } from '../aql/schema/run-query'; +import { runQuery as aqlQuery } from '../aql'; import q from '../../shared/query'; import { loadRules, updateRule } from '../accounts/transaction-rules'; import { loadMappings } from '../db/mappings'; diff --git a/packages/loot-core/src/server/schedules/find-schedules.js b/packages/loot-core/src/server/schedules/find-schedules.js index 6432f0b207c000ea939be889228faaf38830ec01..b40edad6df25ba23a7f0e848f9a91485ef3d57a6 100644 --- a/packages/loot-core/src/server/schedules/find-schedules.js +++ b/packages/loot-core/src/server/schedules/find-schedules.js @@ -3,7 +3,7 @@ import * as db from '../db'; import { Schedule as RSchedule } from '../util/rschedule'; import { groupBy } from '../../shared/util'; import { fromDateRepr } from '../models'; -import { runQuery as aqlQuery } from '../aql/schema/run-query'; +import { runQuery as aqlQuery } from '../aql'; import q from '../../shared/query'; import { getApproxNumberThreshold } from '../../shared/rules'; import { recurConfigToRSchedule } from '../../shared/schedules'; diff --git a/packages/loot-core/src/server/spreadsheet/spreadsheet.js b/packages/loot-core/src/server/spreadsheet/spreadsheet.js index 49de21d40ca31ccff5307b3350f9ebd129ae8c2b..c24ccd1ee07ea4fbd727e49c0adf2cc434016819 100644 --- a/packages/loot-core/src/server/spreadsheet/spreadsheet.js +++ b/packages/loot-core/src/server/spreadsheet/spreadsheet.js @@ -1,7 +1,5 @@ import mitt from 'mitt'; -import { schema, schemaConfig } from '../aql/schema'; -import { compileQuery } from '../aql/compiler'; -import { runCompiledQuery } from '../aql/schema/run-query'; +import { compileQuery, runCompiledQuery, schema, schemaConfig } from '../aql'; const Graph = require('./graph-data-structure'); const { unresolveName, resolveName } = require('./util'); diff --git a/packages/loot-core/src/server/sync/migrate.test.js b/packages/loot-core/src/server/sync/migrate.test.js index 5286c5954036c0d83634783ab7d42ece13de4f6d..9a335615ac612eccf8fe4f9df451f487fe95348a 100644 --- a/packages/loot-core/src/server/sync/migrate.test.js +++ b/packages/loot-core/src/server/sync/migrate.test.js @@ -3,9 +3,8 @@ import * as db from '../db'; import { listen, unlisten } from './migrate'; import { addSyncListener, sendMessages } from './index'; import { execTracer } from '../../shared/test-helpers'; -import { schema, schemaConfig } from '../aql/schema'; +import { convertInputType, schema, schemaConfig } from '../aql'; import arbs from '../../mocks/arbitrary-schema'; -import { convertInputType } from '../aql/schema-helpers'; beforeEach(() => { listen(); diff --git a/packages/loot-core/src/server/update.js b/packages/loot-core/src/server/update.js index f108a1a1cb4534dc4d43ef54ebf67ccbb4a156ab..f4e6459743dc6db48d53c0a81206ed8768cad638 100644 --- a/packages/loot-core/src/server/update.js +++ b/packages/loot-core/src/server/update.js @@ -1,8 +1,7 @@ import md5 from 'md5'; import * as migrations from './migrate/migrations'; import * as db from './db'; -import { schema, schemaConfig } from './aql/schema'; -import { makeViews } from './aql/views'; +import { schema, schemaConfig, makeViews } from './aql'; // Managing the init/update process