@luzzle/core 0.0.58 → 0.0.60
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.
- package/README.md +1 -1
- package/dist/src/database/NodeSqliteDialect.js.map +1 -1
- package/dist/src/database/NodeSqliteDialect.test.js +104 -0
- package/dist/src/database/NodeSqliteDialect.test.js.map +1 -0
- package/dist/src/database/client.js +5 -1
- package/dist/src/database/client.js.map +1 -1
- package/dist/src/database/client.test.js.map +1 -1
- package/dist/src/database/migrations/2023-05-26T15:04:19.094Z.js.map +1 -1
- package/dist/src/database/migrations/2023-10-30T23:24:40Z.js.map +1 -1
- package/dist/src/database/migrations/2023-11-22T14:55:18Z.js.map +1 -1
- package/dist/src/database/migrations/2023-11-27T04:32:07Z.js.map +1 -1
- package/dist/src/database/migrations/2024-01-01T23:30:29Z.js.map +1 -1
- package/dist/src/database/migrations/2024-01-06T15:52:43Z.js.map +1 -1
- package/dist/src/database/migrations/2024-02-09T16:33:10Z.js.map +1 -1
- package/dist/src/database/migrations/2024-02-13T05:56:43Z.js.map +1 -1
- package/dist/src/database/migrations/2024-02-24T03:05:47Z-add-texts-table.js.map +1 -1
- package/dist/src/database/migrations/2024-02-26T05:37:37Z-add-cache-table.js.map +1 -1
- package/dist/src/database/migrations/2024-03-01T01:01:47Z-fix-trigger-bugs.js.map +1 -1
- package/dist/src/database/migrations/2024-06-15T17:17:51Z-add-games-table.js.map +1 -1
- package/dist/src/database/migrations/2024-06-24T20:16:48Z-remove-book-open-library-fields.js.map +1 -1
- package/dist/src/database/migrations/2024-06-29T16:31:33Z-add-piece-manager-table.js.map +1 -1
- package/dist/src/database/migrations/2024-07-14T06:59:07Z-remove-pieces.js.map +1 -1
- package/dist/src/database/migrations/2024-11-06T15:27:05Z-remove-tags.js.map +1 -1
- package/dist/src/database/migrations/2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.js.map +1 -1
- package/dist/src/database/migrations/2024-11-13T14:51:17Z-track-file-paths-on-piece.js.map +1 -1
- package/dist/src/database/migrations/2024-12-15T06:35:24Z-track-assets-on-piece.js.map +1 -1
- package/dist/src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.js.map +1 -1
- package/dist/src/database/migrations.js.map +1 -1
- package/dist/src/database/migrations.test.js.map +1 -1
- package/dist/src/database/tables/index.js.map +1 -1
- package/dist/src/database/tables/pieces_cache.schema.js.map +1 -1
- package/dist/src/database/tables/pieces_items.schema.js.map +1 -1
- package/dist/src/database/tables/pieces_manager.schema.js.map +1 -1
- package/dist/src/database/utils.js.map +1 -1
- package/dist/src/database/utils.test.js.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/index.test.js.map +1 -1
- package/dist/src/lib/ajv.js.map +1 -1
- package/dist/src/lib/ajv.test.js.map +1 -1
- package/dist/src/lib/frontmatter.js.map +1 -1
- package/dist/src/lib/frontmatter.test.js.map +1 -1
- package/dist/src/lib/markdown.js.map +1 -1
- package/dist/src/lib/markdown.test.js.map +1 -1
- package/dist/src/llm/google.js.map +1 -1
- package/dist/src/llm/google.test.js.map +1 -1
- package/dist/src/pieces/Piece.fixtures.js.map +1 -1
- package/dist/src/pieces/Piece.js +3 -0
- package/dist/src/pieces/Piece.js.map +1 -1
- package/dist/src/pieces/Piece.test.js +20 -1
- package/dist/src/pieces/Piece.test.js.map +1 -1
- package/dist/src/pieces/Pieces.js.map +1 -1
- package/dist/src/pieces/Pieces.test.js.map +1 -1
- package/dist/src/pieces/assets.js.map +1 -1
- package/dist/src/pieces/cache.fixtures.js.map +1 -1
- package/dist/src/pieces/cache.js.map +1 -1
- package/dist/src/pieces/cache.test.js.map +1 -1
- package/dist/src/pieces/index.js.map +1 -1
- package/dist/src/pieces/item.js.map +1 -1
- package/dist/src/pieces/item.test.js.map +1 -1
- package/dist/src/pieces/items.js.map +1 -1
- package/dist/src/pieces/items.test.js.map +1 -1
- package/dist/src/pieces/json.schema.js.map +1 -1
- package/dist/src/pieces/json.schema.test.js.map +1 -1
- package/dist/src/pieces/manager.js.map +1 -1
- package/dist/src/pieces/manager.test.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.path.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.path.test.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.test.js.map +1 -1
- package/dist/src/pieces/utils/markdown.js.map +1 -1
- package/dist/src/pieces/utils/markdown.test.js.map +1 -1
- package/dist/src/pieces/utils/piece.js.map +1 -1
- package/dist/src/pieces/utils/piece.test.js.map +1 -1
- package/dist/src/storage/abstract.js.map +1 -1
- package/dist/src/storage/fs.js.map +1 -1
- package/dist/src/storage/fs.test.js.map +1 -1
- package/dist/src/storage/index.d.ts +3 -4
- package/dist/src/storage/index.js +2 -2
- package/dist/src/storage/index.js.map +1 -1
- package/dist/src/storage/storage.mock.js.map +1 -1
- package/dist/src/storage/types.d.ts +1 -1
- package/dist/src/storage/types.js.map +1 -1
- package/dist/test/db.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vite.config.js.map +1 -1
- package/package.json +1 -2
- package/dist/src/storage/webdav.d.ts +0 -23
- package/dist/src/storage/webdav.js +0 -72
- package/dist/src/storage/webdav.js.map +0 -1
- package/dist/src/storage/webdav.test.js +0 -203
- package/dist/src/storage/webdav.test.js.map +0 -1
- /package/dist/src/{storage/webdav.test.d.ts → database/NodeSqliteDialect.test.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ The foundational implementation of the Luzzle specification. It solves the inher
|
|
|
7
7
|
* **Consistency**: Enforces structure across thousands of records using JSON schemas.
|
|
8
8
|
* **Organization**: Standardizes where files and attachments (`.assets/`) live within an archive.
|
|
9
9
|
* **Scale**: Maps thousands of text files into a high-performance SQLite index, enabling complex queries and fast searching without slow filesystem traversal.
|
|
10
|
-
* **Portability**: Provides a unified Storage abstraction
|
|
10
|
+
* **Portability**: Provides a unified Storage abstraction so your data remains accessible anywhere.
|
|
11
11
|
|
|
12
12
|
## How it works 🚂
|
|
13
13
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSqliteDialect.js","sourceRoot":"","sources":["../../../src/database/NodeSqliteDialect.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EASb,aAAa,EACb,kBAAkB,EAClB,mBAAmB,GACnB,MAAM,QAAQ,CAAA;AAOf,MAAM,oBAAoB;IAChB,GAAG,CAAc;IAE1B,YAAY,EAAgB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAAI,aAA4B;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAChD,8DAA8D;QAC9D,MAAM,MAAM,GAAG,aAAa,CAAC,UAAmB,CAAA;QAEhD,MAAM,MAAM,GACX,kCAAkC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;YAC1D,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAEzC,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAQ,CAAA;YACvC,OAAO,EAAE,IAAI,EAAE,CAAA;QAChB,CAAC;aAAM,CAAC;YACP,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAA;YAClC,OAAO;gBACN,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;gBACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;gBACxC,IAAI,EAAE,EAAE;aACR,CAAA;QACF,CAAC;IACF,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,CAAC,WAAW;QACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAChE,CAAC;CACD;AAED,MAAM,gBAAgB;IACZ,OAAO,CAAyB;IAEzC,YAAY,MAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,KAAmB,CAAC;IAE9B,KAAK,CAAC,iBAAiB;QACtB,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAA8B;QACpD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,UAA8B;QACrD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,UAA8B;QACvD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,KAAK,CAAC,iBAAiB,KAAmB,CAAC;IAE3C,KAAK,CAAC,OAAO;QACZ,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IAC9B,CAAC;CACD;AAED,MAAM,OAAO,iBAAiB;IACpB,OAAO,CAAyB;IAEzC,YAAY,MAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,aAAa;QACZ,OAAO,IAAI,aAAa,EAAE,CAAA;IAC3B,CAAC;IAED,YAAY;QACX,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,8DAA8D;IAC9D,kBAAkB,CAAC,EAAe;QACjC,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IAED,mBAAmB;QAClB,OAAO,IAAI,mBAAmB,EAAE,CAAA;IACjC,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"NodeSqliteDialect.js","sourceRoot":"","sources":["../../../src/database/NodeSqliteDialect.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EASb,aAAa,EACb,kBAAkB,EAClB,mBAAmB,GACnB,MAAM,QAAQ,CAAA;AAOf,MAAM,oBAAoB;IAChB,GAAG,CAAc;IAE1B,YAAY,EAAgB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAAI,aAA4B;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAChD,8DAA8D;QAC9D,MAAM,MAAM,GAAG,aAAa,CAAC,UAAmB,CAAA;QAEhD,MAAM,MAAM,GACX,kCAAkC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;YAC1D,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAEzC,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAQ,CAAA;YACvC,OAAO,EAAE,IAAI,EAAE,CAAA;QAChB,CAAC;aAAM,CAAC;YACP,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAA;YAClC,OAAO;gBACN,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;gBACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;gBACxC,IAAI,EAAE,EAAE;aACR,CAAA;QACF,CAAC;IACF,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,CAAC,WAAW;QACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAChE,CAAC;CACD;AAED,MAAM,gBAAgB;IACZ,OAAO,CAAyB;IAEzC,YAAY,MAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,KAAmB,CAAC;IAE9B,KAAK,CAAC,iBAAiB;QACtB,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAA8B;QACpD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,UAA8B;QACrD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,UAA8B;QACvD,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,KAAK,CAAC,iBAAiB,KAAmB,CAAC;IAE3C,KAAK,CAAC,OAAO;QACZ,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IAC9B,CAAC;CACD;AAED,MAAM,OAAO,iBAAiB;IACpB,OAAO,CAAyB;IAEzC,YAAY,MAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,aAAa;QACZ,OAAO,IAAI,aAAa,EAAE,CAAA;IAC3B,CAAC;IAED,YAAY;QACX,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,8DAA8D;IAC9D,kBAAkB,CAAC,EAAe;QACjC,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IAED,mBAAmB;QAClB,OAAO,IAAI,mBAAmB,EAAE,CAAA;IACjC,CAAC;CACD","sourcesContent":["import {\n\tCompiledQuery,\n\tDatabaseConnection,\n\tDatabaseIntrospector,\n\tDialect,\n\tDialectAdapter,\n\tDriver,\n\tKysely,\n\tQueryCompiler,\n\tQueryResult,\n\tSqliteAdapter,\n\tSqliteIntrospector,\n\tSqliteQueryCompiler,\n} from 'kysely'\nimport type { DatabaseSync } from 'node:sqlite'\n\nexport interface NodeSqliteDialectConfig {\n\tdatabase: DatabaseSync\n}\n\nclass NodeSqliteConnection implements DatabaseConnection {\n\treadonly #db: DatabaseSync\n\n\tconstructor(db: DatabaseSync) {\n\t\tthis.#db = db\n\t}\n\n\tasync executeQuery<R>(compiledQuery: CompiledQuery): Promise<QueryResult<R>> {\n\t\tconst stmt = this.#db.prepare(compiledQuery.sql)\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\tconst params = compiledQuery.parameters as any[]\n\n\t\tconst isRead =\n\t\t\t/^\\s*(?:select|pragma|explain)\\b/i.test(compiledQuery.sql) ||\n\t\t\t/\\breturning\\b/i.test(compiledQuery.sql)\n\n\t\tif (isRead) {\n\t\t\tconst rows = stmt.all(...params) as R[]\n\t\t\treturn { rows }\n\t\t} else {\n\t\t\tconst result = stmt.run(...params)\n\t\t\treturn {\n\t\t\t\tnumAffectedRows: BigInt(result.changes),\n\t\t\t\tinsertId: BigInt(result.lastInsertRowid),\n\t\t\t\trows: [],\n\t\t\t}\n\t\t}\n\t}\n\n\t// eslint-disable-next-line require-yield\n\tasync *streamQuery<R>(): AsyncIterableIterator<QueryResult<R>> {\n\t\tthrow new Error('NodeSqliteDialect does not support streaming')\n\t}\n}\n\nclass NodeSqliteDriver implements Driver {\n\treadonly #config: NodeSqliteDialectConfig\n\n\tconstructor(config: NodeSqliteDialectConfig) {\n\t\tthis.#config = config\n\t}\n\n\tasync init(): Promise<void> {}\n\n\tasync acquireConnection(): Promise<DatabaseConnection> {\n\t\treturn new NodeSqliteConnection(this.#config.database)\n\t}\n\n\tasync beginTransaction(connection: DatabaseConnection): Promise<void> {\n\t\tawait connection.executeQuery(CompiledQuery.raw('begin'))\n\t}\n\n\tasync commitTransaction(connection: DatabaseConnection): Promise<void> {\n\t\tawait connection.executeQuery(CompiledQuery.raw('commit'))\n\t}\n\n\tasync rollbackTransaction(connection: DatabaseConnection): Promise<void> {\n\t\tawait connection.executeQuery(CompiledQuery.raw('rollback'))\n\t}\n\n\tasync releaseConnection(): Promise<void> {}\n\n\tasync destroy(): Promise<void> {\n\t\tthis.#config.database.close()\n\t}\n}\n\nexport class NodeSqliteDialect implements Dialect {\n\treadonly #config: NodeSqliteDialectConfig\n\n\tconstructor(config: NodeSqliteDialectConfig) {\n\t\tthis.#config = config\n\t}\n\n\tcreateAdapter(): DialectAdapter {\n\t\treturn new SqliteAdapter()\n\t}\n\n\tcreateDriver(): Driver {\n\t\treturn new NodeSqliteDriver(this.#config)\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tcreateIntrospector(db: Kysely<any>): DatabaseIntrospector {\n\t\treturn new SqliteIntrospector(db)\n\t}\n\n\tcreateQueryCompiler(): QueryCompiler {\n\t\treturn new SqliteQueryCompiler()\n\t}\n}"]}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
+
import { NodeSqliteDialect } from './NodeSqliteDialect.js';
|
|
3
|
+
import { CompiledQuery, SqliteAdapter, SqliteIntrospector, SqliteQueryCompiler } from 'kysely';
|
|
4
|
+
describe('NodeSqliteDialect', () => {
|
|
5
|
+
let mockDb;
|
|
6
|
+
let mockStatement;
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
mockStatement = {
|
|
9
|
+
all: vi.fn(),
|
|
10
|
+
run: vi.fn().mockReturnValue({ changes: 0, lastInsertRowid: 0 }),
|
|
11
|
+
};
|
|
12
|
+
mockDb = {
|
|
13
|
+
prepare: vi.fn().mockReturnValue(mockStatement),
|
|
14
|
+
close: vi.fn(),
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
describe('NodeSqliteDialect', () => {
|
|
18
|
+
it('should create adapter, introspector, compiler and driver', () => {
|
|
19
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
20
|
+
expect(dialect.createAdapter()).toBeInstanceOf(SqliteAdapter);
|
|
21
|
+
expect(dialect.createQueryCompiler()).toBeInstanceOf(SqliteQueryCompiler);
|
|
22
|
+
expect(dialect.createIntrospector({})).toBeInstanceOf(SqliteIntrospector);
|
|
23
|
+
const driver = dialect.createDriver();
|
|
24
|
+
expect(driver).toBeDefined();
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
describe('NodeSqliteDriver', () => {
|
|
28
|
+
it('should initialize and manage connections and transactions', async () => {
|
|
29
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
30
|
+
const driver = dialect.createDriver();
|
|
31
|
+
await driver.init();
|
|
32
|
+
const connection = await driver.acquireConnection();
|
|
33
|
+
expect(connection).toBeDefined();
|
|
34
|
+
await driver.beginTransaction(connection, {});
|
|
35
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('begin');
|
|
36
|
+
expect(mockStatement.run).toHaveBeenCalled();
|
|
37
|
+
await driver.commitTransaction(connection);
|
|
38
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('commit');
|
|
39
|
+
await driver.rollbackTransaction(connection);
|
|
40
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('rollback');
|
|
41
|
+
await driver.releaseConnection(connection);
|
|
42
|
+
await driver.destroy();
|
|
43
|
+
expect(mockDb.close).toHaveBeenCalled();
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
describe('NodeSqliteConnection', () => {
|
|
47
|
+
it('should execute read queries using stmt.all()', async () => {
|
|
48
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
49
|
+
const driver = dialect.createDriver();
|
|
50
|
+
const connection = await driver.acquireConnection();
|
|
51
|
+
mockStatement.all.mockReturnValue([{ id: 1 }]);
|
|
52
|
+
const query = CompiledQuery.raw('SELECT * FROM users WHERE id = ?', [1]);
|
|
53
|
+
const result = await connection.executeQuery(query);
|
|
54
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('SELECT * FROM users WHERE id = ?');
|
|
55
|
+
expect(mockStatement.all).toHaveBeenCalledWith(1);
|
|
56
|
+
expect(result).toEqual({ rows: [{ id: 1 }] });
|
|
57
|
+
});
|
|
58
|
+
it('should execute pragma queries using stmt.all()', async () => {
|
|
59
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
60
|
+
const driver = dialect.createDriver();
|
|
61
|
+
const connection = await driver.acquireConnection();
|
|
62
|
+
mockStatement.all.mockReturnValue([{ table: 'users' }]);
|
|
63
|
+
const query = CompiledQuery.raw('PRAGMA table_info(users)');
|
|
64
|
+
const result = await connection.executeQuery(query);
|
|
65
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('PRAGMA table_info(users)');
|
|
66
|
+
expect(mockStatement.all).toHaveBeenCalledWith();
|
|
67
|
+
expect(result).toEqual({ rows: [{ table: 'users' }] });
|
|
68
|
+
});
|
|
69
|
+
it('should execute returning queries using stmt.all()', async () => {
|
|
70
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
71
|
+
const driver = dialect.createDriver();
|
|
72
|
+
const connection = await driver.acquireConnection();
|
|
73
|
+
mockStatement.all.mockReturnValue([{ id: 2 }]);
|
|
74
|
+
const query = CompiledQuery.raw('INSERT INTO users (name) VALUES (?) RETURNING id', ['test']);
|
|
75
|
+
const result = await connection.executeQuery(query);
|
|
76
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('INSERT INTO users (name) VALUES (?) RETURNING id');
|
|
77
|
+
expect(mockStatement.all).toHaveBeenCalledWith('test');
|
|
78
|
+
expect(result).toEqual({ rows: [{ id: 2 }] });
|
|
79
|
+
});
|
|
80
|
+
it('should execute write queries using stmt.run()', async () => {
|
|
81
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
82
|
+
const driver = dialect.createDriver();
|
|
83
|
+
const connection = await driver.acquireConnection();
|
|
84
|
+
mockStatement.run.mockReturnValue({ changes: 1, lastInsertRowid: 42 });
|
|
85
|
+
const query = CompiledQuery.raw('UPDATE users SET name = ? WHERE id = ?', ['test', 1]);
|
|
86
|
+
const result = await connection.executeQuery(query);
|
|
87
|
+
expect(mockDb.prepare).toHaveBeenCalledWith('UPDATE users SET name = ? WHERE id = ?');
|
|
88
|
+
expect(mockStatement.run).toHaveBeenCalledWith('test', 1);
|
|
89
|
+
expect(result).toEqual({
|
|
90
|
+
numAffectedRows: 1n,
|
|
91
|
+
insertId: 42n,
|
|
92
|
+
rows: [],
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
it('should throw on streamQuery', async () => {
|
|
96
|
+
const dialect = new NodeSqliteDialect({ database: mockDb });
|
|
97
|
+
const driver = dialect.createDriver();
|
|
98
|
+
const connection = await driver.acquireConnection();
|
|
99
|
+
const stream = connection.streamQuery(CompiledQuery.raw('SELECT 1'));
|
|
100
|
+
await expect(stream.next()).rejects.toThrow('NodeSqliteDialect does not support streaming');
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=NodeSqliteDialect.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeSqliteDialect.test.js","sourceRoot":"","sources":["../../../src/database/NodeSqliteDialect.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { describe, it, expect, vi, beforeEach } from 'vitest'\nimport { NodeSqliteDialect } from './NodeSqliteDialect.js'\nimport { CompiledQuery, Kysely, SqliteAdapter, SqliteIntrospector, SqliteQueryCompiler, TransactionSettings } from 'kysely'\nimport type { DatabaseSync } from 'node:sqlite'\n\ndescribe('NodeSqliteDialect', () => {\n\tlet mockDb: { prepare: ReturnType<typeof vi.fn>; close: ReturnType<typeof vi.fn> }\n\tlet mockStatement: { all: ReturnType<typeof vi.fn>; run: ReturnType<typeof vi.fn> }\n\n\tbeforeEach(() => {\n\t\tmockStatement = {\n\t\t\tall: vi.fn(),\n\t\t\trun: vi.fn().mockReturnValue({ changes: 0, lastInsertRowid: 0 }),\n\t\t}\n\t\tmockDb = {\n\t\t\tprepare: vi.fn().mockReturnValue(mockStatement),\n\t\t\tclose: vi.fn(),\n\t\t}\n\t})\n\n\tdescribe('NodeSqliteDialect', () => {\n\t\tit('should create adapter, introspector, compiler and driver', () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\t\n\t\t\texpect(dialect.createAdapter()).toBeInstanceOf(SqliteAdapter)\n\t\t\texpect(dialect.createQueryCompiler()).toBeInstanceOf(SqliteQueryCompiler)\n\t\t\texpect(dialect.createIntrospector({} as Kysely<unknown>)).toBeInstanceOf(SqliteIntrospector)\n\t\t\t\n\t\t\tconst driver = dialect.createDriver()\n\t\t\texpect(driver).toBeDefined()\n\t\t})\n\t})\n\n\tdescribe('NodeSqliteDriver', () => {\n\t\tit('should initialize and manage connections and transactions', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\n\t\t\tawait driver.init()\n\t\t\tconst connection = await driver.acquireConnection()\n\t\t\texpect(connection).toBeDefined()\n\n\t\t\tawait driver.beginTransaction(connection, {} as TransactionSettings)\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('begin')\n\t\t\texpect(mockStatement.run).toHaveBeenCalled()\n\n\t\t\tawait driver.commitTransaction(connection)\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('commit')\n\n\t\t\tawait driver.rollbackTransaction(connection)\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('rollback')\n\n\t\t\tawait driver.releaseConnection(connection)\n\n\t\t\tawait driver.destroy()\n\t\t\texpect(mockDb.close).toHaveBeenCalled()\n\t\t})\n\t})\n\n\tdescribe('NodeSqliteConnection', () => {\n\t\tit('should execute read queries using stmt.all()', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\t\t\tconst connection = await driver.acquireConnection()\n\n\t\t\tmockStatement.all.mockReturnValue([{ id: 1 }])\n\n\t\t\tconst query = CompiledQuery.raw('SELECT * FROM users WHERE id = ?', [1])\n\t\t\tconst result = await connection.executeQuery(query)\n\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('SELECT * FROM users WHERE id = ?')\n\t\t\texpect(mockStatement.all).toHaveBeenCalledWith(1)\n\t\t\texpect(result).toEqual({ rows: [{ id: 1 }] })\n\t\t})\n\n\t\tit('should execute pragma queries using stmt.all()', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\t\t\tconst connection = await driver.acquireConnection()\n\n\t\t\tmockStatement.all.mockReturnValue([{ table: 'users' }])\n\n\t\t\tconst query = CompiledQuery.raw('PRAGMA table_info(users)')\n\t\t\tconst result = await connection.executeQuery(query)\n\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('PRAGMA table_info(users)')\n\t\t\texpect(mockStatement.all).toHaveBeenCalledWith()\n\t\t\texpect(result).toEqual({ rows: [{ table: 'users' }] })\n\t\t})\n\n\t\tit('should execute returning queries using stmt.all()', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\t\t\tconst connection = await driver.acquireConnection()\n\n\t\t\tmockStatement.all.mockReturnValue([{ id: 2 }])\n\n\t\t\tconst query = CompiledQuery.raw('INSERT INTO users (name) VALUES (?) RETURNING id', ['test'])\n\t\t\tconst result = await connection.executeQuery(query)\n\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('INSERT INTO users (name) VALUES (?) RETURNING id')\n\t\t\texpect(mockStatement.all).toHaveBeenCalledWith('test')\n\t\t\texpect(result).toEqual({ rows: [{ id: 2 }] })\n\t\t})\n\n\t\tit('should execute write queries using stmt.run()', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\t\t\tconst connection = await driver.acquireConnection()\n\n\t\t\tmockStatement.run.mockReturnValue({ changes: 1, lastInsertRowid: 42 })\n\n\t\t\tconst query = CompiledQuery.raw('UPDATE users SET name = ? WHERE id = ?', ['test', 1])\n\t\t\tconst result = await connection.executeQuery(query)\n\n\t\t\texpect(mockDb.prepare).toHaveBeenCalledWith('UPDATE users SET name = ? WHERE id = ?')\n\t\t\texpect(mockStatement.run).toHaveBeenCalledWith('test', 1)\n\t\t\texpect(result).toEqual({\n\t\t\t\tnumAffectedRows: 1n,\n\t\t\t\tinsertId: 42n,\n\t\t\t\trows: [],\n\t\t\t})\n\t\t})\n\n\t\tit('should throw on streamQuery', async () => {\n\t\t\tconst dialect = new NodeSqliteDialect({ database: mockDb as unknown as DatabaseSync })\n\t\t\tconst driver = dialect.createDriver()\n\t\t\tconst connection = await driver.acquireConnection()\n\n\t\t\tconst stream = connection.streamQuery(CompiledQuery.raw('SELECT 1'))\n\t\t\tawait expect(stream.next()).rejects.toThrow('NodeSqliteDialect does not support streaming')\n\t\t})\n\t})\n})\n"]}
|
|
@@ -2,10 +2,14 @@ import { Kysely } from 'kysely';
|
|
|
2
2
|
import { NodeSqliteDialect } from './NodeSqliteDialect.js';
|
|
3
3
|
import { DatabaseSync } from 'node:sqlite';
|
|
4
4
|
function getDatabaseClient(pathToDb, debug = false) {
|
|
5
|
+
const db = new DatabaseSync(pathToDb);
|
|
6
|
+
db.exec('PRAGMA journal_mode = WAL;');
|
|
7
|
+
db.exec('PRAGMA synchronous = NORMAL;');
|
|
8
|
+
db.exec('PRAGMA busy_timeout = 5000;');
|
|
5
9
|
return new Kysely({
|
|
6
10
|
log: debug ? ['query', 'error'] : [],
|
|
7
11
|
dialect: new NodeSqliteDialect({
|
|
8
|
-
database:
|
|
12
|
+
database: db,
|
|
9
13
|
}),
|
|
10
14
|
});
|
|
11
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/database/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG1C,SAAS,iBAAiB,CAAC,QAAgB,EAAE,KAAK,GAAG,KAAK;IACzD,OAAO,IAAI,MAAM,CAAe;QAC/B,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QACpC,OAAO,EAAE,IAAI,iBAAiB,CAAC;YAC9B,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/database/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG1C,SAAS,iBAAiB,CAAC,QAAgB,EAAE,KAAK,GAAG,KAAK;IACzD,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAA;IACrC,EAAE,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;IACrC,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;IACvC,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;IAEtC,OAAO,IAAI,MAAM,CAAe;QAC/B,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QACpC,OAAO,EAAE,IAAI,iBAAiB,CAAC;YAC9B,QAAQ,EAAE,EAAE;SACZ,CAAC;KACF,CAAC,CAAA;AACH,CAAC;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA","sourcesContent":["import { Kysely } from 'kysely'\nimport { NodeSqliteDialect } from './NodeSqliteDialect.js'\nimport { DatabaseSync } from 'node:sqlite'\nimport { LuzzleTables } from './tables/index.js'\n\nfunction getDatabaseClient(pathToDb: string, debug = false) {\n\tconst db = new DatabaseSync(pathToDb)\n\tdb.exec('PRAGMA journal_mode = WAL;')\n\tdb.exec('PRAGMA synchronous = NORMAL;')\n\tdb.exec('PRAGMA busy_timeout = 5000;')\n\n\treturn new Kysely<LuzzleTables>({\n\t\tlog: debug ? ['query', 'error'] : [],\n\t\tdialect: new NodeSqliteDialect({\n\t\t\tdatabase: db,\n\t\t}),\n\t})\n}\n\nexport { getDatabaseClient }\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../../src/database/client.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AACtB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjB,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;AAEjC,MAAM,KAAK,GAAG;IACb,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC;CAC/C,CAAA;AAED,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,SAAS,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,IAAI,GAAG,mBAAmB,CAAA;QAEhC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAEvB,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,EAAE,CAAA;QACtD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,oBAAoB,EAAE,CAAA;IAC5C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,IAAI,GAAG,mBAAmB,CAAA;QAEhC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE7B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,EAAE,CAAA;QACtD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;YACzC,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YACvB,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;SAC1B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../../src/database/client.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AACtB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjB,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;AAEjC,MAAM,KAAK,GAAG;IACb,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,iBAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC;CAC/C,CAAA;AAED,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,SAAS,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,IAAI,GAAG,mBAAmB,CAAA;QAEhC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAEvB,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,EAAE,CAAA;QACtD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,oBAAoB,EAAE,CAAA;IAC5C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,IAAI,GAAG,mBAAmB,CAAA;QAEhC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE7B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,EAAE,CAAA;QACtD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;YACzC,GAAG,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YACvB,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;SAC1B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA","sourcesContent":["import { describe, expect, test, vi, afterEach } from 'vitest'\nimport { DatabaseSync } from 'node:sqlite'\nimport { Kysely } from 'kysely'\nimport { NodeSqliteDialect } from './NodeSqliteDialect.js'\nimport { getDatabaseClient } from './client.js'\n\nvi.mock('node:sqlite')\nvi.mock('kysely')\nvi.mock('./NodeSqliteDialect.js')\n\nconst mocks = {\n\tDatabaseSync: vi.mocked(DatabaseSync),\n\tKysely: vi.mocked(Kysely),\n\tNodeSqliteDialect: vi.mocked(NodeSqliteDialect),\n}\n\ndescribe('database', () => {\n\tafterEach(() => {\n\t\tvi.resetAllMocks()\n\t})\n\n\ttest('getDatabaseClient', async () => {\n\t\tconst path = 'path/to/db.sqlite'\n\n\t\tgetDatabaseClient(path)\n\n\t\texpect(mocks.DatabaseSync).toHaveBeenCalledWith(path)\n\t\texpect(mocks.NodeSqliteDialect).toHaveBeenCalledOnce()\n\t\texpect(mocks.Kysely).toHaveBeenCalledOnce()\n\t})\n\n\ttest('getDatabaseClient debug', async () => {\n\t\tconst path = 'path/to/db.sqlite'\n\n\t\tgetDatabaseClient(path, true)\n\n\t\texpect(mocks.DatabaseSync).toHaveBeenCalledWith(path)\n\t\texpect(mocks.NodeSqliteDialect).toHaveBeenCalledOnce()\n\t\texpect(mocks.Kysely).toHaveBeenCalledWith({\n\t\t\tlog: ['query', 'error'],\n\t\t\tdialect: expect.anything(),\n\t\t})\n\t})\n})\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2023-05-26T15:04:19.094Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-05-26T15:04:19.094Z.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"2023-05-26T15:04:19.094Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-05-26T15:04:19.094Z.ts"],"names":[],"mappings":"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","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('books')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('title', 'text', (col) => col.notNull())\n\t\t.addColumn('subtitle', 'text')\n\t\t.addColumn('author', 'text', (col) => col.notNull())\n\t\t.addColumn('coauthors', 'text')\n\t\t.addColumn('description', 'text')\n\t\t.addColumn('keywords', 'text')\n\t\t.addColumn('note', 'text')\n\t\t.addColumn('pages', 'integer')\n\t\t.addColumn('year_first_published', 'integer')\n\t\t.addColumn('id_ol_book', 'text')\n\t\t.addColumn('id_ol_work', 'text')\n\t\t.addColumn('isbn', 'text')\n\t\t.addColumn('cover_path', 'text')\n\t\t.addColumn('cover_width', 'integer')\n\t\t.addColumn('cover_height', 'integer')\n\t\t.addColumn('year_read', 'integer')\n\t\t.addColumn('month_read', 'integer')\n\t\t.addColumn('read_order', 'text', (col) => col.notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n\n\tawait db.schema\n\t\t.createTable('tags')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('name', 'text', (col) => col.notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n\n\tawait db.schema\n\t\t.createTable('tag_maps')\n\t\t.addColumn('id_tag', 'text', (col) => col.notNull())\n\t\t.addColumn('id_item', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n}\n\nexport async function down(): Promise<void> {\n\t// nothing to do\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2023-10-30T23:24:40Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-10-30T23:24:40Z.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,kBAAkB;IAClB,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;SAC5B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC/C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC;SACpC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;SACjC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAChD,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SACtE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,UAAU,CAAC;SACrB,KAAK,CAAC,GAAG,CAAA,iCAAiC,CAAC,CAC7C;SACA,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"2023-10-30T23:24:40Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-10-30T23:24:40Z.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,kBAAkB;IAClB,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;SAC5B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC/C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC;SACpC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;SACjC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAChD,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SACtE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,UAAU,CAAC;SACrB,KAAK,CAAC,GAAG,CAAA,iCAAiC,CAAC,CAC7C;SACA,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\t// await db.schema\n\tawait db.schema\n\t\t.createTable('links')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('title', 'text', (col) => col.notNull())\n\t\t.addColumn('subtitle', 'text')\n\t\t.addColumn('author', 'text')\n\t\t.addColumn('coauthors', 'text')\n\t\t.addColumn('summary', 'text')\n\t\t.addColumn('keywords', 'text')\n\t\t.addColumn('note', 'text')\n\t\t.addColumn('date_accessed', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_published', 'datetime')\n\t\t.addColumn('screenshot_path', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('archive_path', 'text')\n\t\t.addColumn('url', 'text', (col) => col.notNull())\n\t\t.addColumn('archive_url', 'text')\n\t\t.addColumn('active', 'boolean', (col) => col.notNull().defaultTo(true))\n\t\t.addColumn('type', 'text', (col) =>\n\t\t\tcol\n\t\t\t\t.notNull()\n\t\t\t\t.defaultTo('bookmark')\n\t\t\t\t.check(sql`type IN ('bookmark', 'article')`)\n\t\t)\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('links').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2023-11-22T14:55:18Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-11-22T14:55:18Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,uBAAuB;IACvB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;IAEjF,gCAAgC;IAChC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;IACvE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AACzE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,gDAAgD;IAChD,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACjF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IACjF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACnF,CAAC"}
|
|
1
|
+
{"version":3,"file":"2023-11-22T14:55:18Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-11-22T14:55:18Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,uBAAuB;IACvB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;IAEjF,gCAAgC;IAChC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;IACvE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AACzE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,gDAAgD;IAChD,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACjF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IACjF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACnF,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\t// add the cover column\n\tawait db.schema.alterTable('books').renameColumn('cover_path', 'cover').execute()\n\n\t// remove width / height columns\n\tawait db.schema.alterTable('books').dropColumn('cover_width').execute()\n\tawait db.schema.alterTable('books').dropColumn('cover_height').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\t// add back cover_path, cover_with, cover_height\n\tawait db.schema.alterTable('books').renameColumn('cover', 'cover_path').execute()\n\tawait db.schema.alterTable('books').addColumn('cover_width', 'integer').execute()\n\tawait db.schema.alterTable('books').addColumn('cover_height', 'integer').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2023-11-27T04:32:07Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-11-27T04:32:07Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACzD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACxD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAE/E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAA;IAClE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IACrE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IACrE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IAErE,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACrD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAChF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAC/E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACjF,CAAC"}
|
|
1
|
+
{"version":3,"file":"2023-11-27T04:32:07Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2023-11-27T04:32:07Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACzD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACxD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAE/E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAA;IAClE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IACrE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IACrE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;IAErE,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACrD,OAAO,EAAE,CAAA;IACX,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAChF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;IAC/E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACjF,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.alterTable('links')\n\t\t.addColumn('is_paywall', 'boolean', (b) => b.defaultTo(0))\n\t\t.execute()\n\tawait db.schema\n\t\t.alterTable('links')\n\t\t.addColumn('is_active', 'boolean', (b) => b.defaultTo(1))\n\t\t.execute()\n\tawait db.schema.alterTable('books').addColumn('date_read', 'integer').execute()\n\n\tawait db.schema.alterTable('links').dropColumn('active').execute()\n\tawait db.schema.alterTable('books').dropColumn('month_read').execute()\n\tawait db.schema.alterTable('books').dropColumn('year_read').execute()\n\tawait db.schema.alterTable('books').dropColumn('read_order').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.alterTable('links').dropColumn('is_paywall').execute()\n\tawait db.schema.alterTable('links').dropColumn('is_active').execute()\n\tawait db.schema.alterTable('books').dropColumn('date_read').execute()\n\n\tawait db.schema\n\t\t.alterTable('links')\n\t\t.addColumn('active', 'boolean', (b) => b.defaultTo(1))\n\t\t.execute()\n\tawait db.schema.alterTable('books').addColumn('month_read', 'integer').execute()\n\tawait db.schema.alterTable('books').addColumn('year_read', 'integer').execute()\n\tawait db.schema.alterTable('books').addColumn('read_order', 'varchar').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-01-01T23:30:29Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-01-01T23:30:29Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,wBAAwB;IACxB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACjF,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,2BAA2B;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-01-01T23:30:29Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-01-01T23:30:29Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,wBAAwB;IACxB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACjF,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,2BAA2B;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\t// add word count column\n\tawait db.schema.alterTable('links').addColumn('word_count', 'integer').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\t// remove word count column\n\tawait db.schema.alterTable('links').dropColumn('word_count').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-01-06T15:52:43Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-01-06T15:52:43Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,iDAAiD;IACjD,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,YAAY,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;SACvD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,YAAY,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;SACvD,OAAO,EAAE,CAAA;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-01-06T15:52:43Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-01-06T15:52:43Z.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,iDAAiD;IACjD,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,YAAY,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;SACvD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM;SACb,UAAU,CAAC,OAAO,CAAC;SACnB,YAAY,CAAC,sBAAsB,EAAE,iBAAiB,CAAC;SACvD,OAAO,EAAE,CAAA;AACZ,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\t// rename screenshot_path to representative_image\n\tawait db.schema\n\t\t.alterTable('links')\n\t\t.renameColumn('screenshot_path', 'representative_image')\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.alterTable('links')\n\t\t.renameColumn('representative_image', 'screenshot_path')\n\t\t.execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-02-09T16:33:10Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-09T16:33:10Z.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,UAAU,GAAG,EAAE;SACnB,UAAU,CAAC,OAAO,CAAC;SACnB,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,YAAY,CAAC;SACpB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,gBAAgB,CAAC;SACxB,MAAM,CAAC,yBAAyB,CAAC;SACjC,MAAM,CAAC,GAAG,CAAQ,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAE/C,MAAM,UAAU,GAAG,EAAE;SACnB,UAAU,CAAC,OAAO,CAAC;SACnB,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,YAAY,CAAC;SACpB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,+BAA+B,CAAC;SACvC,MAAM,CAAC,6BAA6B,CAAC;SACrC,MAAM,CAAC,GAAG,CAAQ,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAE/C,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IAEpD,0BAA0B;IAC1B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACrE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,kBAAkB;IAClB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;AAClD,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-02-09T16:33:10Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-09T16:33:10Z.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,UAAU,GAAG,EAAE;SACnB,UAAU,CAAC,OAAO,CAAC;SACnB,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,YAAY,CAAC;SACpB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,gBAAgB,CAAC;SACxB,MAAM,CAAC,yBAAyB,CAAC;SACjC,MAAM,CAAC,GAAG,CAAQ,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAE/C,MAAM,UAAU,GAAG,EAAE;SACnB,UAAU,CAAC,OAAO,CAAC;SACnB,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,MAAM,CAAC;SACd,MAAM,CAAC,YAAY,CAAC;SACpB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,+BAA+B,CAAC;SACvC,MAAM,CAAC,6BAA6B,CAAC;SACrC,MAAM,CAAC,GAAG,CAAQ,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAE/C,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IAEpD,0BAA0B;IAC1B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACrE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,kBAAkB;IAClB,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;AAClD,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tconst booksQuery = db\n\t\t.selectFrom('books')\n\t\t.select('id')\n\t\t.select('note')\n\t\t.select('slug')\n\t\t.select('date_added')\n\t\t.select('date_updated')\n\t\t.select('title')\n\t\t.select('keywords')\n\t\t.select('cover as media')\n\t\t.select('date_read as date_order')\n\t\t.select(sql<string>`'books'`.as('from_piece'))\n\n\tconst linksQuery = db\n\t\t.selectFrom('links')\n\t\t.select('id')\n\t\t.select('note')\n\t\t.select('slug')\n\t\t.select('date_added')\n\t\t.select('date_updated')\n\t\t.select('title')\n\t\t.select('keywords')\n\t\t.select('representative_image as media')\n\t\t.select('date_accessed as date_order')\n\t\t.select(sql<string>`'links'`.as('from_piece'))\n\n\tconst unionedQuery = booksQuery.unionAll(linksQuery)\n\n\t// add view for all pieces\n\tawait db.schema.createView('pieces_view').as(unionedQuery).execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\t// remove the view\n\tawait db.schema.dropView('pieces_view').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-02-13T05:56:43Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-13T05:56:43Z.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"2024-02-13T05:56:43Z.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-13T05:56:43Z.ts"],"names":[],"mappings":"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","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropView('pieces_view').ifExists().execute()\n\n\tawait db.schema\n\t\t.createTable('pieces')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('title', 'text')\n\t\t.addColumn('summary', 'text')\n\t\t.addColumn('note', 'text')\n\t\t.addColumn('media', 'text')\n\t\t.addColumn('keywords', 'text')\n\t\t.addColumn('json_metadata', 'text')\n\t\t.addColumn('date_added', 'datetime')\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('date_consumed', 'datetime')\n\t\t.execute()\n\n\tawait sql`CREATE VIRTUAL TABLE IF NOT EXISTS \"pieces_fts5\" USING fts5(id UNINDEXED, slug, type UNINDEXED, title, summary, note, media UNINDEXED, keywords, json_metadata, date_added UNINDEXED, date_updated UNINDEXED, date_consumed UNINDEXED, tokenize = 'porter ascii', prefix='3 4 5', content = 'pieces', content_rowid=\"rowid\")`.execute(\n\t\tdb\n\t)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS books_after_insert \nAFTER INSERT ON books\nFOR EACH ROW\nBEGIN\nINSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) VALUES (new.id, new.slug, 'books', new.title, new.description, new.note, new.cover, new.keywords, json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'year_first_published', new.year_first_published, 'isbn', new.isbn), new.date_added, new.date_updated, new.date_read);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS books_after_update \nAFTER UPDATE OF slug, title, description, note, cover, keywords, subtitle, author, coauthors, year_first_published, isbn ON books\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.description, note = new.note, media = new.cover, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'year_first_published', new.year_first_published, 'isbn', new.isbn), date_updated = new.date_updated WHERE id = new.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS books_after_delete\nAFTER DELETE ON books \nFOR EACH ROW \nBEGIN \nDELETE FROM pieces WHERE id = old.id; \nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS links_after_insert \nAFTER INSERT ON links\nFOR EACH ROW\nBEGIN\nINSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) VALUES (new.id, new.slug, 'links', new.title, new.summary, new.note, new.representative_image, new.keywords, json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'url', new.url, 'type', new.type), new.date_added, new.date_updated, new.date_accessed);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS links_after_update \nAFTER UPDATE OF slug, title, summary, note, representative_image, keywords, subtitle, author, coauthors, url, type ON books\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.summary, note = new.note, media = new.representative_image, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'url', new.url, 'type', new.type), date_updated = new.date_updated WHERE id = new.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS links_after_delete\nAFTER DELETE ON links\nFOR EACH ROW \nBEGIN \nDELETE FROM pieces WHERE id = old.id; \nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS pieces_after_insert \nAFTER INSERT ON pieces \nFOR EACH ROW \nBEGIN \nINSERT INTO pieces_fts5 (rowid, slug, title, type, summary, note, json_metadata, date_added, date_updated, date_consumed) VALUES (new.rowid, new.slug, new.title, new.type, new.summary, new.note, new.json_metadata, new.date_added, new.date_updated, new.date_consumed);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS pieces_after_update \nAFTER UPDATE ON pieces \nFOR EACH ROW \nBEGIN \nINSERT INTO pieces_fts5 (pieces_fts5, rowid, slug, title, type, summary, note, json_metadata, date_added, date_updated, date_consumed) VALUES ('delete', old.rowid, old.slug, old.title, old.type, old.summary, old.note, old.json_metadata, old.date_added, old.date_updated, old.date_consumed);\nINSERT INTO pieces_fts5 (rowid, slug, title, type, summary, note, json_metadata, date_added, date_updated, date_consumed) VALUES (new.rowid, new.slug, new.title, new.type, new.summary, new.note, new.json_metadata, new.date_added, new.date_updated, new.date_consumed);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS pieces_after_delete \nAFTER DELETE ON pieces \nFOR EACH ROW \nBEGIN \nINSERT INTO pieces_fts5 (pieces_fts5, rowid, slug, title, type, summary, note, json_metadata, date_added, date_updated, date_consumed) VALUES ('delete', old.rowid, old.slug, old.title, old.type, old.summary, old.note, old.json_metadata, old.date_added, old.date_updated, old.date_consumed); \nEND;`.execute(db)\n\n\tawait sql`INSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) SELECT id, slug, 'books', title, description, note, cover, keywords, json_object('subtitle', subtitle, 'author', author, 'coauthors', coauthors, 'year_first_published', year_first_published, 'isbn', isbn), date_added, date_updated, date_read FROM books`.execute(\n\t\tdb\n\t)\n\n\tawait sql`INSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) SELECT id, slug, 'links', title, summary, note, representative_image, keywords, json_object('subtitle', subtitle, 'author', author, 'coauthors', coauthors, 'url', url, 'type', type), date_added, date_updated, date_accessed FROM links`.execute(\n\t\tdb\n\t)\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces').execute()\n\n\tconst booksQuery = db\n\t\t.selectFrom('books')\n\t\t.select('id')\n\t\t.select('note')\n\t\t.select('slug')\n\t\t.select('date_added')\n\t\t.select('date_updated')\n\t\t.select('title')\n\t\t.select('keywords')\n\t\t.select('cover as media')\n\t\t.select('date_read as date_order')\n\t\t.select(sql<string>`'books'`.as('from_piece'))\n\n\tconst linksQuery = db\n\t\t.selectFrom('links')\n\t\t.select('id')\n\t\t.select('note')\n\t\t.select('slug')\n\t\t.select('date_added')\n\t\t.select('date_updated')\n\t\t.select('title')\n\t\t.select('keywords')\n\t\t.select('representative_image as media')\n\t\t.select('date_accessed as date_order')\n\t\t.select(sql<string>`'links'`.as('from_piece'))\n\n\tconst unionedQuery = booksQuery.unionAll(linksQuery)\n\n\t// add view for all pieces\n\tawait db.schema.createView('pieces_view').as(unionedQuery).execute()\n\n\tawait sql`DROP TRIGGER IF EXISTS books_after_insert`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS books_after_update`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS books_after_delete`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS links_after_insert`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS links_after_update`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS links_after_delete`.execute(db)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-02-24T03:05:47Z-add-texts-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-24T03:05:47Z-add-texts-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;SAC5B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;SACzC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;IAEX,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-02-24T03:05:47Z-add-texts-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-24T03:05:47Z-add-texts-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;SAC5B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;SACzC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;IAEX,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('texts')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('title', 'text', (col) => col.notNull())\n\t\t.addColumn('subtitle', 'text')\n\t\t.addColumn('summary', 'text')\n\t\t.addColumn('keywords', 'text')\n\t\t.addColumn('note', 'text')\n\t\t.addColumn('date_published', 'datetime')\n\t\t.addColumn('representative_image', 'text')\n\t\t.addColumn('attachments', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS texts_after_insert \nAFTER INSERT ON texts\nFOR EACH ROW\nBEGIN\nINSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) VALUES (new.id, new.slug, 'texts', new.title, new.summary, new.note, new.representative_image, new.keywords, json_object('subtitle', new.subtitle, 'attachments', new.attachments), new.date_added, new.date_updated, new.date_published);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS texts_after_update \nAFTER UPDATE OF slug, title, summary, note, representative_image, keywords, subtitle, attachments, date_published ON texts\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.summary, note = new.note, media = new.representative_image, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'attachments', new.attachments), date_updated = new.date_updated, date_published = new.date_published WHERE id = new.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS texts_after_delete\nAFTER DELETE ON books \nFOR EACH ROW \nBEGIN \nDELETE FROM pieces WHERE id = old.id;\nEND;`.execute(db)\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('texts').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-02-26T05:37:37Z-add-cache-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-26T05:37:37Z-add-cache-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,cAAc,CAAC;SAC3B,WAAW,EAAE;SACb,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;SACjC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,mBAAmB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAC9C,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-02-26T05:37:37Z-add-cache-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-02-26T05:37:37Z-add-cache-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,cAAc,CAAC;SAC3B,WAAW,EAAE;SACb,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;SACjC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,mBAAmB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAC9C,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('pieces_cache')\n\t\t.ifNotExists()\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('content_hash', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addUniqueConstraint('piece', ['slug', 'type'])\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('cache').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-03-01T01:01:47Z-fix-trigger-bugs.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-03-01T01:01:47Z-fix-trigger-bugs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,0CAA0C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAE/D,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,EAAE;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-03-01T01:01:47Z-fix-trigger-bugs.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-03-01T01:01:47Z-fix-trigger-bugs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,2CAA2C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,CAAA,0CAA0C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAE/D,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,EAAE;AACH,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait sql`DROP TRIGGER IF EXISTS texts_after_update`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS books_after_update`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS links_after_update`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS links_after_insert`.execute(db)\n\tawait sql`DROP TRIGGER IF EXISTS text_after_delete`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS texts_after_update \nAFTER UPDATE ON texts\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.summary, note = new.note, media = new.representative_image, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'attachments', new.attachments), date_updated = new.date_updated, date_consumed = new.date_published WHERE id = old.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS books_after_update \nAFTER UPDATE ON books\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.description, note = new.note, media = new.cover, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'year_first_published', new.year_first_published, 'isbn', new.isbn), date_consumed = new.date_read, date_updated = new.date_updated WHERE id = old.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS links_after_update \nAFTER UPDATE ON links\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.summary, note = new.note, media = new.representative_image, keywords = new.keywords, json_metadata = json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'url', new.url, 'type', new.type, 'date_published', new.date_published), date_consumed = new.date_accessed, date_updated = new.date_updated WHERE id = old.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS links_after_insert \nAFTER INSERT ON links\nFOR EACH ROW\nBEGIN\nINSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) VALUES (new.id, new.slug, 'links', new.title, new.summary, new.note, new.representative_image, new.keywords, json_object('subtitle', new.subtitle, 'author', new.author, 'coauthors', new.coauthors, 'url', new.url, 'type', new.type, 'date_published', new.date_published), new.date_added, new.date_updated, new.date_accessed);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS texts_after_delete\nAFTER DELETE ON texts\nFOR EACH ROW \nBEGIN \nDELETE FROM pieces WHERE id = old.id;\nEND;`.execute(db)\n}\n\nexport async function down(): Promise<void> {\n\t//\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-06-15T17:17:51Z-add-games-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-15T17:17:51Z-add-games-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,OAAO,CAAC;SAClB,KAAK,CAAC,GAAG,CAAA,4BAA4B,CAAC,CACxC;SACA,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;SACxB,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;SACjC,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC;SACzC,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;SACzC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC;SACpC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACvC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,KAAK,CAAC;SAChB,KAAK,CACL,GAAG,CAAA,wLAAwL,CAC3L,CACF;SACA,OAAO,EAAE,CAAA;IAEX,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-06-15T17:17:51Z-add-games-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-15T17:17:51Z-add-games-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,OAAO,CAAC;SACpB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SAClD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,OAAO,CAAC;SAClB,KAAK,CAAC,GAAG,CAAA,4BAA4B,CAAC,CACxC;SACA,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;SACxB,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;SAC9B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;SAC7B,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;SACjC,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC;SACzC,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACvC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;SACzB,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;SACzC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC;SACpC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACvC,GAAG;SACD,OAAO,EAAE;SACT,SAAS,CAAC,KAAK,CAAC;SAChB,KAAK,CACL,GAAG,CAAA,wLAAwL,CAC3L,CACF;SACA,OAAO,EAAE,CAAA;IAEX,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAEhB,MAAM,GAAG,CAAA;;;;;KAKL,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;AAC7C,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('games')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('title', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) =>\n\t\t\tcol\n\t\t\t\t.notNull()\n\t\t\t\t.defaultTo('board')\n\t\t\t\t.check(sql`type IN ('video', 'board')`)\n\t\t)\n\t\t.addColumn('url', 'text')\n\t\t.addColumn('publisher', 'text')\n\t\t.addColumn('developer', 'text')\n\t\t.addColumn('keywords', 'text')\n\t\t.addColumn('description', 'text')\n\t\t.addColumn('play_time', 'integer')\n\t\t.addColumn('number_of_players', 'integer')\n\t\t.addColumn('date_published', 'datetime')\n\t\t.addColumn('note', 'text')\n\t\t.addColumn('representative_image', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('date_played', 'datetime')\n\t\t.addColumn('played_on', 'text', (col) =>\n\t\t\tcol\n\t\t\t\t.notNull()\n\t\t\t\t.defaultTo('irl')\n\t\t\t\t.check(\n\t\t\t\t\tsql`played_on IN ('xbox 360', 'switch', 'android', 'nes', 'snes', 'gamecube', 'wii', 'gameboy', 'gameboy advance sp', 'ds', 'steam', 'n64', 'pc', 'playstation 5', 'irl', 'web', 'stadia')`\n\t\t\t\t)\n\t\t)\n\t\t.execute()\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS games_after_insert \nAFTER INSERT ON games\nFOR EACH ROW\nBEGIN\nINSERT INTO pieces (id, slug, type, title, summary, note, media, keywords, json_metadata, date_added, date_updated, date_consumed) VALUES (new.id, new.slug, 'games', new.title, new.description, new.note, new.representative_image, new.keywords, json_object('url', new.url, 'publisher', new.publisher, 'developer', new.developer, 'play_time', new.play_time, 'number_of_players', new.number_of_players, 'played_on', new.played_on, 'date_published', new.date_published), new.date_added, new.date_updated, new.date_played);\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS games_after_update \nAFTER UPDATE OF slug, title, description, note, representative_image, keywords, url, publisher, developer, play_time, number_of_players, played_on, date_played, date_published ON games\nFOR EACH ROW\nBEGIN\nUPDATE pieces SET slug = new.slug, title = new.title, summary = new.description, note = new.note, media = new.representative_image, keywords = new.keywords, json_metadata = json_object('url', new.url, 'publisher', new.publisher, 'developer', new.developer, 'play_time', new.play_time, 'number_of_players', new.number_of_players, 'played_on', new.played_on, 'date_published', new.date_published), date_updated = new.date_updated, date_published = new.date_published, date_consumed = new.date_played WHERE id = new.id;\nEND;`.execute(db)\n\n\tawait sql`CREATE TRIGGER IF NOT EXISTS games_after_delete\nAFTER DELETE ON games\nFOR EACH ROW \nBEGIN \nDELETE FROM pieces WHERE id = old.id;\nEND;`.execute(db)\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('games').execute()\n}\n"]}
|
package/dist/src/database/migrations/2024-06-24T20:16:48Z-remove-book-open-library-fields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-06-24T20:16:48Z-remove-book-open-library-fields.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-24T20:16:48Z-remove-book-open-library-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,4BAA4B;IAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE;SACN,WAAW,CAAC,OAAO,CAAC;SACpB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QAClB,GAAG,EAAE,GAAG,CAAA,GAAG,gCAAgC,OAAO,GAAG,CAAC,YAAY,CAAC,EAAE;KACrE,CAAC,CAAC;SACF,OAAO,EAAE,CAAA;IAEX,2BAA2B;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,yCAAyC;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IAC/D,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9E,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-06-24T20:16:48Z-remove-book-open-library-fields.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-24T20:16:48Z-remove-book-open-library-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,4BAA4B;IAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE;SACN,WAAW,CAAC,OAAO,CAAC;SACpB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QAClB,GAAG,EAAE,GAAG,CAAA,GAAG,gCAAgC,OAAO,GAAG,CAAC,YAAY,CAAC,EAAE;KACrE,CAAC,CAAC;SACF,OAAO,EAAE,CAAA;IAEX,2BAA2B;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;AACvE,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,yCAAyC;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IAC/D,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9E,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\t// migrate id_ol_book to url\n\tawait db.schema.alterTable('books').addColumn('url', 'text').execute()\n\tawait db\n\t\t.updateTable('books')\n\t\t.set(({ ref }) => ({\n\t\t\turl: sql`${'https://openlibrary.org/books/'} || ${ref('id_ol_book')}`,\n\t\t}))\n\t\t.execute()\n\n\t// remove id_ol_work column\n\tawait db.schema.alterTable('books').dropColumn('id_ol_book').execute()\n\tawait db.schema.alterTable('books').dropColumn('id_ol_work').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\t// add back id_ol_book, id_ol_work column\n\tawait db.schema.alterTable('books').dropColumn('url').execute()\n\tawait db.schema.alterTable('books').addColumn('id_ol_book', 'text').execute()\n\tawait db.schema.alterTable('books').addColumn('id_ol_work', 'text').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-06-29T16:31:33Z-add-piece-manager-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-29T16:31:33Z-add-piece-manager-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,gBAAgB,CAAC;SAC7B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;SAC1D,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACnD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAA;AACtD,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-06-29T16:31:33Z-add-piece-manager-table.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-06-29T16:31:33Z-add-piece-manager-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,gBAAgB,CAAC;SAC7B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;SAC1D,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACnD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAA;AACtD,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('pieces_manager')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('name', 'text', (col) => col.unique().notNull())\n\t\t.addColumn('schema', 'text', (col) => col.notNull())\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces_manager').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-07-14T06:59:07Z-remove-pieces.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-07-14T06:59:07Z-remove-pieces.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAEvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAC7D,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAExD,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,6EAA6E;IAC7E,mEAAmE;AACpE,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-07-14T06:59:07Z-remove-pieces.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-07-14T06:59:07Z-remove-pieces.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAEvD,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAC7D,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAExD,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,6EAA6E;IAC7E,mEAAmE;AACpE,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('books').ifExists().execute()\n\tawait db.schema.dropTable('texts').ifExists().execute()\n\tawait db.schema.dropTable('games').ifExists().execute()\n\tawait db.schema.dropTable('links').ifExists().execute()\n\n\tawait db.schema.dropTable('pieces_fts5').ifExists().execute()\n\tawait db.schema.dropTable('pieces').ifExists().execute()\n\n\tawait db.deleteFrom('pieces_cache').execute()\n}\n\nexport async function down(): Promise<void> {\n\t// no down migration, just refer to older migrations for the following tables\n\t// pieces, pieces_fts5, books, texts, games, links and pieces_cache\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-11-06T15:27:05Z-remove-tags.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-06T15:27:05Z-remove-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAA;AAChD,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,MAAM,CAAC;SACnB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;IAEX,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,UAAU,CAAC;SACvB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACnD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACpD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-11-06T15:27:05Z-remove-tags.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-06T15:27:05Z-remove-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAA;AAChD,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,MAAM,CAAC;SACnB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;SAC1D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;IAEX,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,UAAU,CAAC;SACvB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACnD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACpD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,OAAO,EAAE,CAAA;AACZ,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('tags').execute()\n\tawait db.schema.dropTable('tag_maps').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema\n\t\t.createTable('tags')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull().unique())\n\t\t.addColumn('name', 'text', (col) => col.notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n\n\tawait db.schema\n\t\t.createTable('tag_maps')\n\t\t.addColumn('id_tag', 'text', (col) => col.notNull())\n\t\t.addColumn('id_item', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.execute()\n}\n"]}
|
package/dist/src/database/migrations/2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAEpE,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,cAAc,CAAC;SAC3B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;SAClC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;SACrC,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAA;AACtD,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-08T05:59:37Z-remove-pieces-items-unique-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,GAAG,EAAE,MAAM,QAAQ,CAAA;AAEpC,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IACpE,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAEpE,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,cAAc,CAAC;SAC3B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;SAC5D,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAA,2CAA2C,CAAC,CAAC,OAAO,EAAE,CACvE;SACA,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;SACrC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;SAClC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;SACrC,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAA;AACtD,CAAC","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces_items_books').ifExists().execute()\n\tawait db.schema.dropTable('pieces_items_films').ifExists().execute()\n\tawait db.schema.dropTable('pieces_items_games').ifExists().execute()\n\tawait db.schema.dropTable('pieces_items_links').ifExists().execute()\n\tawait db.schema.dropTable('pieces_items_texts').ifExists().execute()\n\n\tawait db.schema\n\t\t.createTable('pieces_items')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('slug', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('note_markdown', 'text')\n\t\t.addColumn('frontmatter_json', 'text')\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces_manager').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-11-13T14:51:17Z-track-file-paths-on-piece.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-13T14:51:17Z-track-file-paths-on-piece.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"2024-11-13T14:51:17Z-track-file-paths-on-piece.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-11-13T14:51:17Z-track-file-paths-on-piece.ts"],"names":[],"mappings":"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","sourcesContent":["import { Kysely, sql } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces_items').execute()\n\tawait db.schema.dropTable('pieces_cache').execute()\n\n\tawait db.schema\n\t\t.createTable('pieces_cache')\n\t\t.ifNotExists()\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('file_path', 'text', (col) => col.notNull())\n\t\t.addColumn('content_hash', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addUniqueConstraint('unique-files', ['file_path'])\n\t\t.execute()\n\n\tawait db.schema\n\t\t.createTable('pieces_items')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('file_path', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('note_markdown', 'text')\n\t\t.addColumn('frontmatter_json', 'text')\n\t\t.addUniqueConstraint('unique-files', ['file_path'])\n\t\t.execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.dropTable('pieces_items').execute()\n\tawait db.schema.dropTable('pieces_cache').execute()\n\n\tawait db.schema\n\t\t.createTable('pieces_items')\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addColumn('slug', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('note_markdown', 'text')\n\t\t.addColumn('frontmatter_json', 'text')\n\t\t.execute()\n\n\tawait db.schema\n\t\t.createTable('pieces_cache')\n\t\t.ifNotExists()\n\t\t.addColumn('id', 'text', (col) => col.primaryKey().notNull())\n\t\t.addColumn('slug', 'text', (col) => col.notNull())\n\t\t.addColumn('type', 'text', (col) => col.notNull())\n\t\t.addColumn('content_hash', 'text')\n\t\t.addColumn('date_added', 'datetime', (col) =>\n\t\t\tcol.defaultTo(sql`((julianday('now') - 2440587.5)*86400000)`).notNull()\n\t\t)\n\t\t.addColumn('date_updated', 'datetime')\n\t\t.addUniqueConstraint('piece', ['slug', 'type'])\n\t\t.execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2024-12-15T06:35:24Z-track-assets-on-piece.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-12-15T06:35:24Z-track-assets-on-piece.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC3F,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,CAAA;AACrF,CAAC"}
|
|
1
|
+
{"version":3,"file":"2024-12-15T06:35:24Z-track-assets-on-piece.js","sourceRoot":"","sources":["../../../../src/database/migrations/2024-12-15T06:35:24Z-track-assets-on-piece.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC3F,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAe;IACzC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,CAAA;AACrF,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.schema.alterTable('pieces_items').addColumn('assets_json_array', 'text').execute()\n\tawait db.deleteFrom('pieces_items').execute()\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function down(db: Kysely<any>): Promise<void> {\n\tawait db.schema.alterTable('pieces_items').dropColumn('assets_json_array').execute()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"2026-02-11T23:03:45Z-clear-pieces-cache.js","sourceRoot":"","sources":["../../../../src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,gBAAgB;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"2026-02-11T23:03:45Z-clear-pieces-cache.js","sourceRoot":"","sources":["../../../../src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAe;IACvC,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,gBAAgB;AACjB,CAAC","sourcesContent":["import { Kysely } from 'kysely'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport async function up(db: Kysely<any>): Promise<void> {\n\tawait db.deleteFrom('pieces_cache').execute()\n}\n\nexport async function down(): Promise<void> {\n\t// nothing to do\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/database/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAsB,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAE5E,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAA;AACnC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEtC,MAAM,CAAC,OAAO,CAAC,KAAK,WAAW,EAAkB;IAChD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;QAC1C,EAAE;QACF,IAAI;QACJ,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;KACnD,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE/C,OAAO,QAAQ,CAAC,eAAe,EAAE,CAAA;AAClC,CAAC"}
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/database/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAsB,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAE5E,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAA;AACnC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEtC,MAAM,CAAC,OAAO,CAAC,KAAK,WAAW,EAAkB;IAChD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC;QAC1C,EAAE;QACF,IAAI;QACJ,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;KACnD,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE/C,OAAO,QAAQ,CAAC,eAAe,EAAE,CAAA;AAClC,CAAC","sourcesContent":["import { FileMigrationProvider, MigrationResultSet, Migrator } from 'kysely'\nimport { LuzzleDatabase } from './tables/index.js'\nimport { promises as fs } from 'fs'\nimport path from 'path'\nimport { fileURLToPath } from 'url'\n\nconst filename = fileURLToPath(import.meta.url)\nconst dirname = path.dirname(filename)\n\nexport default async function (db: LuzzleDatabase): Promise<MigrationResultSet> {\n\tconst provider = new FileMigrationProvider({\n\t\tfs,\n\t\tpath,\n\t\tmigrationFolder: path.join(dirname, './migrations'),\n\t})\n\tconst migrator = new Migrator({ db, provider })\n\n\treturn migrator.migrateToLatest()\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.test.js","sourceRoot":"","sources":["../../../src/database/migrations.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,OAAO,MAAM,iBAAiB,CAAA;AAErC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC3C,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QAEhC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;QACpC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QAEhC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;QACpC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"migrations.test.js","sourceRoot":"","sources":["../../../src/database/migrations.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,OAAO,MAAM,iBAAiB,CAAA;AAErC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC3C,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QAEhC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;QACpC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACxC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;QAEhC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;QACpC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IACnB,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA","sourcesContent":["import { describe, expect, test } from 'vitest'\nimport { getDatabaseClient } from './client.js'\nimport migrate from './migrations.js'\n\ndescribe('src/database/migrations.ts', () => {\n\ttest('migrator runs without error on a fresh database', async () => {\n\t\tconst db = getDatabaseClient(':memory:')\n\t\tconst result = await migrate(db)\n\n\t\texpect(result.error).toBeUndefined()\n\t\tawait db.destroy()\n\t})\n\n\ttest('migrator is idempotent', async () => {\n\t\tconst db = getDatabaseClient(':memory:')\n\t\tawait migrate(db)\n\t\tconst result = await migrate(db)\n\n\t\texpect(result.error).toBeUndefined()\n\t\tawait db.destroy()\n\t})\n})\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/database/tables/index.ts"],"names":[],"mappings":"AAKA,MAAM,eAAe,GAAG;IACvB,KAAK,EAAE,cAAc;IACrB,YAAY,EAAE,gBAAgB;IAC9B,UAAU,EAAE,cAAc;CACjB,CAAA;AAgBV,OAAO,EAON,eAAe,GACf,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/database/tables/index.ts"],"names":[],"mappings":"AAKA,MAAM,eAAe,GAAG;IACvB,KAAK,EAAE,cAAc;IACrB,YAAY,EAAE,gBAAgB;IAC9B,UAAU,EAAE,cAAc;CACjB,CAAA;AAgBV,OAAO,EAON,eAAe,GACf,CAAA","sourcesContent":["import { Kysely, Insertable, Updateable, Selectable } from 'kysely'\nimport { CacheTable } from './pieces_cache.schema.js'\nimport { PieceManagerTable } from './pieces_manager.schema.js'\nimport { PiecesItemsTable } from './pieces_items.schema.js'\n\nconst LuzzleTableName = {\n\tCache: 'pieces_cache',\n\tPieceManager: 'pieces_manager',\n\tPieceItems: 'pieces_items',\n} as const\n\ntype LuzzleTables = {\n\t[LuzzleTableName.Cache]: CacheTable\n\t[LuzzleTableName.PieceManager]: PieceManagerTable\n\t[LuzzleTableName.PieceItems]: PiecesItemsTable\n}\n\ntype LuzzleDatabase = Kysely<LuzzleTables>\ntype LuzzleTableNames = (typeof LuzzleTableName)[keyof typeof LuzzleTableName]\ntype LuzzleTable<T extends LuzzleTableNames> = LuzzleTables[T]\n\ntype LuzzleInsertable<T extends LuzzleTableNames> = Insertable<LuzzleTable<T>>\ntype LuzzleUpdatable<T extends LuzzleTableNames> = Updateable<LuzzleTable<T>>\ntype LuzzleSelectable<T extends LuzzleTableNames> = Selectable<LuzzleTable<T>>\n\nexport {\n\ttype LuzzleTables,\n\ttype LuzzleDatabase,\n\ttype LuzzleInsertable,\n\ttype LuzzleUpdatable,\n\ttype LuzzleSelectable,\n\ttype LuzzleTableNames,\n\tLuzzleTableName,\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pieces_cache.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_cache.schema.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"pieces_cache.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_cache.schema.ts"],"names":[],"mappings":"","sourcesContent":["import type { Insertable, Updateable, Selectable } from 'kysely'\nimport { cuid, date_added, date_updated } from '../utils.js'\n\ninterface CacheTable {\n\tid: cuid\n\tfile_path: string\n\tcontent_hash: string\n\tdate_added: date_added\n\tdate_updated: date_updated\n}\n\ntype CacheSelectable = Selectable<CacheTable>\ntype CacheInsert = Insertable<CacheTable>\ntype CacheUpdate = Updateable<CacheTable>\n\nexport { type CacheTable, type CacheSelectable, type CacheInsert, type CacheUpdate }\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pieces_items.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_items.schema.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"pieces_items.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_items.schema.ts"],"names":[],"mappings":"","sourcesContent":["import type { Insertable, Updateable, Selectable } from 'kysely'\nimport { cuid, date_added, date_updated } from '../utils.js'\n\ninterface PiecesItemsTable {\n\tid: cuid\n\tfile_path: string\n\ttype: string\n\tdate_added: date_added\n\tdate_updated: date_updated\n\tnote_markdown: string\n\tfrontmatter_json: string\n\tassets_json_array?: string\n}\n\ntype PiecesItemsSelectable = Selectable<PiecesItemsTable>\ntype PiecesItemsInsertable = Insertable<PiecesItemsTable>\ntype PiecesItemsUpdateable = Updateable<PiecesItemsTable>\n\nexport {\n\ttype PiecesItemsTable,\n\ttype PiecesItemsSelectable,\n\ttype PiecesItemsInsertable,\n\ttype PiecesItemsUpdateable,\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pieces_manager.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_manager.schema.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"pieces_manager.schema.js","sourceRoot":"","sources":["../../../../src/database/tables/pieces_manager.schema.ts"],"names":[],"mappings":"","sourcesContent":["import type { Insertable, Updateable, Selectable } from 'kysely'\nimport { cuid, date_added, date_updated } from '../utils.js'\n\ninterface PieceManagerTable {\n\tid: cuid\n\tdate_added: date_added\n\tdate_updated?: date_updated\n\tname: string\n\tschema: string\n}\n\ntype PieceManagerSelect = Selectable<PieceManagerTable>\ntype PieceManagerInsert = Insertable<PieceManagerTable>\ntype PieceManagerUpdate = Updateable<PieceManagerTable>\n\nexport {\n\ttype PieceManagerTable,\n\ttype PieceManagerSelect,\n\ttype PieceManagerInsert,\n\ttype PieceManagerUpdate,\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/database/utils.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/database/utils.ts"],"names":[],"mappings":"","sourcesContent":["import { ColumnType } from 'kysely'\n\ntype cuid = string\ntype date_added = ColumnType<number, undefined, never>\ntype date_updated = ColumnType<number | null, undefined, number>\n\ntype SchemaDateStringToDatabaseNumber<T> = {\n\t[K in keyof T]: K extends `date_${string}` ? number : T[K] extends number ? string : T[K]\n}\n\nexport { type cuid, type date_updated, type date_added, type SchemaDateStringToDatabaseNumber }\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../../src/database/utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,mDAAmD;AAEnD,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnB,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IAC5B,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../../src/database/utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,mDAAmD;AAEnD,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QACnB,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IAC5B,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA","sourcesContent":["import { describe, expect, test } from 'vitest'\nimport * as index from './utils.js'\n\n// https://github.com/vitest-dev/vitest/issues/3605\n\ndescribe('src/database/util.ts', () => {\n\ttest('schema', () => {\n\t\texpect(index).toBeDefined()\n\t})\n})\n"]}
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,0BAA0B,CAAA;AAC9C,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3L,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAElC,OAAO,EACN,iBAAiB,EACjB,OAAO,EACP,GAAG,EACH,OAAO,EACP,mBAAmB,EACnB,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,0BAA0B,CAAA;AAC9C,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3L,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAElC,OAAO,EACN,iBAAiB,EACjB,OAAO,EACP,GAAG,EACH,OAAO,EACP,mBAAmB,EACnB,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,CAAA","sourcesContent":["import migrate from './database/migrations.js'\nimport compile from './lib/ajv.js'\nimport { sql } from 'kysely'\nimport { extractFullMarkdown } from './lib/markdown.js'\nimport { addFrontMatter } from './lib/frontmatter.js'\nimport { getDatabaseClient } from './database/client.js'\nimport { filterFrontmatterFields, findFrontmatterField, getFrontmatterValue, getFrontmatterValues, resolveFieldPaths, setFrontmatterValue, unsetFrontmatterValue } from './pieces/index.js'\n\nexport * from './database/tables/index.js'\nexport * from './pieces/index.js'\nexport * from './llm/google.js'\nexport * from './storage/index.js'\n\nexport {\n\tgetDatabaseClient,\n\tmigrate,\n\tsql,\n\tcompile,\n\textractFullMarkdown,\n\taddFrontMatter,\n\tfilterFrontmatterFields,\n\tfindFrontmatterField,\n\tgetFrontmatterValue,\n\tgetFrontmatterValues,\n\tresolveFieldPaths,\n\tsetFrontmatterValue,\n\tunsetFrontmatterValue\n}\n"]}
|