@earth-app/collegedb 1.2.0 → 1.2.2
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 +111 -0
- package/dist/index.js +9 -9
- package/dist/index.js.map +5 -5
- package/dist/kvmap.d.ts.map +1 -1
- package/dist/migrations.d.ts.map +1 -1
- package/dist/providers-memory.d.ts +90 -24
- package/dist/providers-memory.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/kvmap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kvmap.d.ts","sourceRoot":"","sources":["../src/kvmap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAwB,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"kvmap.d.ts","sourceRoot":"","sources":["../src/kvmap.ts"],"names":[],"mappings":"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"}
|
package/dist/migrations.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAuE9E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcjF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQjH;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOnF;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQpF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,UAAU,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAOnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview In-memory mock providers for testing and development.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Zero-dependency, lightweight implementations of the {@link KVStorage} and
|
|
5
|
+
* {@link SQLDatabase} contracts. Intended for unit tests, integration tests,
|
|
6
|
+
* local development, and sandboxed routing experiments. The SQL implementation
|
|
7
|
+
* emulates a useful subset of SQLite syntax — enough to drive CollegeDB's
|
|
8
|
+
* router and most ORM-generated CRUD statements without spinning up a real
|
|
9
|
+
* database.
|
|
6
10
|
*
|
|
7
|
-
*
|
|
8
|
-
* - Integration testing with multiple shard combinations
|
|
9
|
-
* - Local development and rapid iteration
|
|
10
|
-
* - Sandboxed playtesting of routing logic
|
|
11
|
+
* The SQL emulator supports:
|
|
11
12
|
*
|
|
12
|
-
*
|
|
13
|
+
* - `CREATE TABLE [IF NOT EXISTS]` with simple column definitions and inline
|
|
14
|
+
* PRIMARY KEY / AUTOINCREMENT / DEFAULT clauses
|
|
15
|
+
* - `INSERT [OR REPLACE|IGNORE|...] INTO` with explicit column lists and
|
|
16
|
+
* `RETURNING` rows
|
|
17
|
+
* - `UPDATE ... SET col = ?, col = expr WHERE ...` with compound WHERE
|
|
18
|
+
* (AND, OR, parens, =, !=, <, >, <=, >=, LIKE, IS NULL, IS NOT NULL)
|
|
19
|
+
* - `DELETE FROM ... WHERE ...` with the same compound WHERE support
|
|
20
|
+
* - `SELECT` projections including `*`, plain columns, aggregate calls
|
|
21
|
+
* (`COUNT(*)`, `COUNT(col)`, `MAX`, `MIN`, `SUM`, `AVG`), `COALESCE`,
|
|
22
|
+
* simple arithmetic on aggregate expressions, `AS` aliases, `ORDER BY`,
|
|
23
|
+
* `LIMIT`, and `OFFSET`
|
|
24
|
+
* - Common metadata queries (`PRAGMA page_count`, `PRAGMA page_size`,
|
|
25
|
+
* `PRAGMA table_info`, `SELECT ... FROM sqlite_master`)
|
|
26
|
+
*
|
|
27
|
+
* The emulator deliberately does not implement transactions, indexes,
|
|
28
|
+
* triggers, full SQL expression evaluation, or cross-table joins. Production
|
|
29
|
+
* workloads should always run against real D1/Postgres/MySQL/SQLite shards
|
|
30
|
+
* via the adapters in `providers.ts`.
|
|
13
31
|
*
|
|
14
32
|
* @author CollegeDB Team
|
|
15
33
|
* @since 1.2.0
|
|
16
34
|
*/
|
|
17
35
|
import type { KVListResult, KVStorage, PreparedStatement, QueryResult, SQLDatabase } from './types';
|
|
18
36
|
/**
|
|
19
|
-
*
|
|
37
|
+
* Drizzle-style query payloads passed to {@link InMemorySQLDatabase}.
|
|
38
|
+
* @private
|
|
39
|
+
*/
|
|
40
|
+
type InMemoryDrizzleQuery = {
|
|
41
|
+
toQuery?: (config: Record<string, unknown>) => {
|
|
42
|
+
sql?: string;
|
|
43
|
+
params?: unknown[];
|
|
44
|
+
};
|
|
45
|
+
sql?: string;
|
|
46
|
+
params?: unknown[];
|
|
47
|
+
text?: string;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* In-memory SQL backend used by tests and local sandboxes.
|
|
20
51
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
52
|
+
* Implements the {@link SQLDatabase} contract with a deliberately limited
|
|
53
|
+
* subset of SQLite-flavored SQL. See the file-level docstring for the exact
|
|
54
|
+
* features supported.
|
|
23
55
|
*/
|
|
24
56
|
export declare class InMemorySQLDatabase implements SQLDatabase {
|
|
25
57
|
private tables;
|
|
@@ -27,35 +59,66 @@ export declare class InMemorySQLDatabase implements SQLDatabase {
|
|
|
27
59
|
private autoIncrementCounters;
|
|
28
60
|
private lastInsertRowId;
|
|
29
61
|
prepare(sql: string): PreparedStatement;
|
|
62
|
+
execute(query: string | InMemoryDrizzleQuery, bindings?: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
63
|
+
run(query: string | InMemoryDrizzleQuery, bindings?: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
64
|
+
all(query: string | InMemoryDrizzleQuery, bindings?: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
65
|
+
get(query: string | InMemoryDrizzleQuery, bindings?: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
66
|
+
/**
|
|
67
|
+
* Routes a Drizzle-style query payload through the SQL emulator.
|
|
68
|
+
* @private
|
|
69
|
+
*/
|
|
70
|
+
private executeClientQuery;
|
|
30
71
|
/**
|
|
31
|
-
*
|
|
72
|
+
* Dispatches to the correct handler based on the SQL statement kind.
|
|
73
|
+
* Public so the prepared-statement wrapper can target it directly.
|
|
32
74
|
*/
|
|
33
|
-
executeStatement(sql: string, bindings: any[]): Promise<QueryResult<Record<string,
|
|
75
|
+
executeStatement(sql: string, bindings: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
34
76
|
/**
|
|
35
|
-
*
|
|
77
|
+
* Convenience wrapper kept for backwards compatibility. Routes SELECT
|
|
78
|
+
* statements through the emulator and rejects other statement kinds.
|
|
36
79
|
*/
|
|
37
|
-
executeQuery(sql: string, bindings: any[]): Promise<QueryResult<Record<string,
|
|
80
|
+
executeQuery(sql: string, bindings: any[]): Promise<QueryResult<Record<string, unknown>>>;
|
|
38
81
|
private handleCreateTable;
|
|
39
82
|
private handleDropTable;
|
|
40
83
|
private handleInsert;
|
|
41
84
|
private handleUpdate;
|
|
42
|
-
private extractSetColumnName;
|
|
43
85
|
private handleDelete;
|
|
44
86
|
private handleSelect;
|
|
87
|
+
private handleSqliteMasterSelect;
|
|
88
|
+
private handlePragma;
|
|
45
89
|
}
|
|
46
90
|
/**
|
|
47
|
-
* In-memory implementation of KVStorage
|
|
91
|
+
* In-memory implementation of {@link KVStorage}.
|
|
48
92
|
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
93
|
+
* Implements every method on the contract plus a few NuxtHub-flavored aliases
|
|
94
|
+
* (`set`, `del`, `keys`, `getItem`, `setItem`, `removeItem`, `getKeys`) so the
|
|
95
|
+
* same instance can be wrapped by `createNuxtHubKVProvider` without any
|
|
96
|
+
* additional adapter glue.
|
|
51
97
|
*/
|
|
52
98
|
export declare class InMemoryKVStorage implements KVStorage {
|
|
53
99
|
private store;
|
|
54
100
|
private expirations;
|
|
55
|
-
|
|
101
|
+
/**
|
|
102
|
+
* Removes any keys whose TTL has expired. Cheap to call as part of read
|
|
103
|
+
* paths because the store stays small in test workloads.
|
|
104
|
+
* @private
|
|
105
|
+
*/
|
|
106
|
+
private pruneExpired;
|
|
107
|
+
private normalizeValue;
|
|
108
|
+
get<T = unknown>(key: string, type: 'json'): Promise<T | null>;
|
|
109
|
+
get(key: string, type?: 'text'): Promise<string | null>;
|
|
56
110
|
put(key: string, value: string, options?: {
|
|
57
111
|
expirationTtl?: number;
|
|
58
112
|
}): Promise<void>;
|
|
113
|
+
set(key: string, value: unknown, options?: {
|
|
114
|
+
ttl?: number;
|
|
115
|
+
}): Promise<void>;
|
|
116
|
+
del(key: string): Promise<void>;
|
|
117
|
+
keys(prefix?: string): Promise<string[]>;
|
|
118
|
+
getItem<T = unknown>(key: string): Promise<T | null>;
|
|
119
|
+
setItem(key: string, value: unknown): Promise<void>;
|
|
120
|
+
removeItem(key: string): Promise<void>;
|
|
121
|
+
getKeys(prefix?: string): Promise<string[]>;
|
|
59
122
|
delete(key: string): Promise<void>;
|
|
60
123
|
list(options?: {
|
|
61
124
|
prefix?: string;
|
|
@@ -63,11 +126,13 @@ export declare class InMemoryKVStorage implements KVStorage {
|
|
|
63
126
|
limit?: number;
|
|
64
127
|
}): Promise<KVListResult>;
|
|
65
128
|
/**
|
|
66
|
-
*
|
|
129
|
+
* Drops every entry from the store. Test utility only — production
|
|
130
|
+
* implementations should not expose this affordance.
|
|
67
131
|
*/
|
|
68
132
|
clear(): void;
|
|
69
133
|
/**
|
|
70
|
-
*
|
|
134
|
+
* Returns the number of non-expired entries currently in the store. Useful
|
|
135
|
+
* for asserting on cleanup behavior in tests.
|
|
71
136
|
*/
|
|
72
137
|
size(): number;
|
|
73
138
|
}
|
|
@@ -90,7 +155,7 @@ export declare class InMemoryKVStorage implements KVStorage {
|
|
|
90
155
|
* });
|
|
91
156
|
* ```
|
|
92
157
|
*/
|
|
93
|
-
export declare function createInMemorySQLProvider():
|
|
158
|
+
export declare function createInMemorySQLProvider(): InMemorySQLDatabase;
|
|
94
159
|
/**
|
|
95
160
|
* Factory function to create an in-memory KV storage provider.
|
|
96
161
|
*
|
|
@@ -103,9 +168,10 @@ export declare function createInMemorySQLProvider(): SQLDatabase;
|
|
|
103
168
|
* const kv = createInMemoryKVProvider();
|
|
104
169
|
* initialize({
|
|
105
170
|
* kv,
|
|
106
|
-
* shards: {
|
|
171
|
+
* shards: { /* ... *\/ }
|
|
107
172
|
* });
|
|
108
173
|
* ```
|
|
109
174
|
*/
|
|
110
|
-
export declare function createInMemoryKVProvider():
|
|
175
|
+
export declare function createInMemoryKVProvider(): InMemoryKVStorage;
|
|
176
|
+
export {};
|
|
111
177
|
//# sourceMappingURL=providers-memory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers-memory.d.ts","sourceRoot":"","sources":["../src/providers-memory.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"providers-memory.d.ts","sourceRoot":"","sources":["../src/providers-memory.ts"],"names":[],"mappings":"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"}
|