monsqlize 1.3.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +56 -60
- package/LICENSE +201 -21
- package/README.md +537 -1828
- package/changelogs/README.md +160 -0
- package/changelogs/v2.0.0.md +222 -0
- package/dist/cjs/index.cjs +10600 -0
- package/dist/cjs/mongodb/common/transaction-aware.cjs +10 -0
- package/dist/cjs/transaction/CacheLockManager.cjs +100 -0
- package/dist/cjs/transaction/Transaction.cjs +158 -0
- package/dist/cjs/transaction/TransactionManager.cjs +298 -0
- package/dist/esm/index.mjs +10650 -0
- package/dist/types/base.d.ts +81 -0
- package/dist/types/collection.d.ts +1031 -0
- package/dist/types/expression.d.ts +115 -0
- package/dist/types/index.d.ts +23 -0
- package/dist/types/lock.d.ts +74 -0
- package/dist/types/model.d.ts +526 -0
- package/dist/types/mongodb.d.ts +49 -0
- package/dist/types/monsqlize.d.ts +491 -0
- package/dist/types/pool.d.ts +84 -0
- package/dist/types/runtime.d.ts +362 -0
- package/dist/types/saga.d.ts +143 -0
- package/dist/types/slow-query-log.d.ts +126 -0
- package/dist/types/sync.d.ts +103 -0
- package/dist/types/transaction.d.ts +132 -0
- package/package.json +67 -69
- package/index.d.ts +0 -206
- package/index.mjs +0 -52
- package/lib/cache-invalidation.js +0 -279
- package/lib/cache.js +0 -530
- package/lib/common/cursor.js +0 -59
- package/lib/common/docs-urls.js +0 -73
- package/lib/common/index-options.js +0 -223
- package/lib/common/log.js +0 -61
- package/lib/common/namespace.js +0 -22
- package/lib/common/normalize.js +0 -34
- package/lib/common/page-result.js +0 -43
- package/lib/common/runner.js +0 -57
- package/lib/common/server-features.js +0 -232
- package/lib/common/shape-builders.js +0 -27
- package/lib/common/validation.js +0 -113
- package/lib/connect.js +0 -99
- package/lib/constants.js +0 -55
- package/lib/count-queue.js +0 -188
- package/lib/distributed-cache-invalidator.js +0 -260
- package/lib/errors.js +0 -168
- package/lib/expression/cache/ExpressionCache.js +0 -114
- package/lib/expression/compiler/ExpressionCompiler.js +0 -1090
- package/lib/expression/compiler/ExpressionCompilerExtensions.js +0 -531
- package/lib/expression/detector.js +0 -84
- package/lib/expression/factory.js +0 -29
- package/lib/expression/index.js +0 -19
- package/lib/function-cache.js +0 -533
- package/lib/index.js +0 -1251
- package/lib/infrastructure/ConnectionPoolManager.js +0 -464
- package/lib/infrastructure/HealthChecker.js +0 -281
- package/lib/infrastructure/PoolConfig.js +0 -199
- package/lib/infrastructure/PoolSelector.js +0 -225
- package/lib/infrastructure/PoolStats.js +0 -244
- package/lib/infrastructure/ssh-tunnel-ssh2.js +0 -212
- package/lib/infrastructure/ssh-tunnel.js +0 -41
- package/lib/infrastructure/uri-parser.js +0 -36
- package/lib/lock/Lock.js +0 -67
- package/lib/lock/errors.js +0 -28
- package/lib/lock/index.js +0 -13
- package/lib/logger.js +0 -225
- package/lib/model/examples/test.js +0 -311
- package/lib/model/features/defaults.js +0 -161
- package/lib/model/features/populate.js +0 -568
- package/lib/model/features/relations.js +0 -120
- package/lib/model/features/soft-delete.js +0 -349
- package/lib/model/features/version.js +0 -157
- package/lib/model/features/virtuals.js +0 -219
- package/lib/model/index.js +0 -1265
- package/lib/mongodb/common/accessor-helpers.js +0 -59
- package/lib/mongodb/common/agg-pipeline.js +0 -36
- package/lib/mongodb/common/aggregation-validator.js +0 -127
- package/lib/mongodb/common/iid.js +0 -28
- package/lib/mongodb/common/lexicographic-expr.js +0 -53
- package/lib/mongodb/common/shape.js +0 -32
- package/lib/mongodb/common/sort.js +0 -39
- package/lib/mongodb/common/transaction-aware.js +0 -25
- package/lib/mongodb/connect.js +0 -234
- package/lib/mongodb/index.js +0 -639
- package/lib/mongodb/management/admin-ops.js +0 -200
- package/lib/mongodb/management/bookmark-ops.js +0 -167
- package/lib/mongodb/management/cache-ops.js +0 -50
- package/lib/mongodb/management/collection-ops.js +0 -387
- package/lib/mongodb/management/database-ops.js +0 -202
- package/lib/mongodb/management/index-ops.js +0 -475
- package/lib/mongodb/management/index.js +0 -17
- package/lib/mongodb/management/namespace.js +0 -31
- package/lib/mongodb/management/validation-ops.js +0 -268
- package/lib/mongodb/queries/aggregate.js +0 -172
- package/lib/mongodb/queries/chain.js +0 -631
- package/lib/mongodb/queries/count.js +0 -99
- package/lib/mongodb/queries/distinct.js +0 -78
- package/lib/mongodb/queries/find-and-count.js +0 -193
- package/lib/mongodb/queries/find-by-ids.js +0 -236
- package/lib/mongodb/queries/find-one-by-id.js +0 -171
- package/lib/mongodb/queries/find-one.js +0 -71
- package/lib/mongodb/queries/find-page.js +0 -618
- package/lib/mongodb/queries/find.js +0 -171
- package/lib/mongodb/queries/index.js +0 -51
- package/lib/mongodb/queries/watch.js +0 -538
- package/lib/mongodb/writes/common/batch-retry.js +0 -65
- package/lib/mongodb/writes/delete-batch.js +0 -323
- package/lib/mongodb/writes/delete-many.js +0 -181
- package/lib/mongodb/writes/delete-one.js +0 -173
- package/lib/mongodb/writes/find-one-and-delete.js +0 -203
- package/lib/mongodb/writes/find-one-and-replace.js +0 -239
- package/lib/mongodb/writes/find-one-and-update.js +0 -240
- package/lib/mongodb/writes/increment-one.js +0 -259
- package/lib/mongodb/writes/index.js +0 -46
- package/lib/mongodb/writes/insert-batch.js +0 -508
- package/lib/mongodb/writes/insert-many.js +0 -223
- package/lib/mongodb/writes/insert-one.js +0 -169
- package/lib/mongodb/writes/replace-one.js +0 -226
- package/lib/mongodb/writes/result-handler.js +0 -237
- package/lib/mongodb/writes/update-batch.js +0 -416
- package/lib/mongodb/writes/update-many.js +0 -275
- package/lib/mongodb/writes/update-one.js +0 -273
- package/lib/mongodb/writes/upsert-one.js +0 -203
- package/lib/multi-level-cache.js +0 -244
- package/lib/operators.js +0 -330
- package/lib/redis-cache-adapter.js +0 -267
- package/lib/saga/SagaContext.js +0 -67
- package/lib/saga/SagaDefinition.js +0 -32
- package/lib/saga/SagaExecutor.js +0 -201
- package/lib/saga/SagaOrchestrator.js +0 -186
- package/lib/saga/index.js +0 -11
- package/lib/slow-query-log/base-storage.js +0 -70
- package/lib/slow-query-log/batch-queue.js +0 -97
- package/lib/slow-query-log/config-manager.js +0 -196
- package/lib/slow-query-log/index.js +0 -238
- package/lib/slow-query-log/mongodb-storage.js +0 -324
- package/lib/slow-query-log/query-hash.js +0 -39
- package/lib/sync/ChangeStreamSyncManager.js +0 -405
- package/lib/sync/ResumeTokenStore.js +0 -192
- package/lib/sync/SyncConfig.js +0 -127
- package/lib/sync/SyncTarget.js +0 -240
- package/lib/sync/index.js +0 -20
- package/lib/transaction/CacheLockManager.js +0 -162
- package/lib/transaction/DistributedCacheLockManager.js +0 -475
- package/lib/transaction/Transaction.js +0 -315
- package/lib/transaction/TransactionManager.js +0 -267
- package/lib/transaction/index.js +0 -11
- package/lib/utils/objectid-converter.js +0 -632
- package/types/README.md +0 -122
- package/types/base.ts +0 -94
- package/types/batch.ts +0 -187
- package/types/cache.ts +0 -71
- package/types/chain.ts +0 -254
- package/types/collection.ts +0 -357
- package/types/expression.ts +0 -109
- package/types/function-cache.d.ts +0 -135
- package/types/lock.ts +0 -95
- package/types/model/definition.ts +0 -152
- package/types/model/index.ts +0 -10
- package/types/model/instance.ts +0 -121
- package/types/model/relations.ts +0 -121
- package/types/model/virtuals.ts +0 -32
- package/types/monsqlize.ts +0 -245
- package/types/options.ts +0 -192
- package/types/pagination.ts +0 -154
- package/types/pool.ts +0 -125
- package/types/query.ts +0 -71
- package/types/saga.ts +0 -125
- package/types/stream.ts +0 -64
- package/types/sync.ts +0 -79
- package/types/transaction.ts +0 -79
- package/types/write.ts +0 -77
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
export type DbType = 'mongodb';
|
|
2
|
+
|
|
3
|
+
export interface ExpressionObject {
|
|
4
|
+
__expr__: string;
|
|
5
|
+
__compiled__: boolean;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export type ExpressionFunction = (expression: string) => ExpressionObject;
|
|
9
|
+
|
|
10
|
+
/** Context in which an expression is evaluated. @since v1.0.0 */
|
|
11
|
+
export type ExpressionContext = '$match' | '$project' | '$group' | 'unknown';
|
|
12
|
+
|
|
13
|
+
export interface LoggerLike {
|
|
14
|
+
debug?: (...args: unknown[]) => void;
|
|
15
|
+
info?: (...args: unknown[]) => void;
|
|
16
|
+
warn?: (...args: unknown[]) => void;
|
|
17
|
+
error?: (...args: unknown[]) => void;
|
|
18
|
+
/** Wrap a function execution with a trace ID. @since v1.3.0 */
|
|
19
|
+
withTraceId?: (fn: Function, traceId?: string) => any;
|
|
20
|
+
/** Retrieve the current trace ID. @since v1.3.0 */
|
|
21
|
+
getTraceId?: () => string | null;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/** Logger configuration options. @since v1.3.0 */
|
|
25
|
+
export interface LoggerOptions {
|
|
26
|
+
/** Enable structured (JSON) log output. */
|
|
27
|
+
structured?: boolean;
|
|
28
|
+
/** Enable automatic trace ID injection into log entries. */
|
|
29
|
+
enableTraceId?: boolean;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export declare const enum ErrorCodes {
|
|
33
|
+
INVALID_ARGUMENT = 'INVALID_ARGUMENT',
|
|
34
|
+
INVALID_COLLECTION_NAME = 'INVALID_COLLECTION_NAME',
|
|
35
|
+
INVALID_DATABASE_NAME = 'INVALID_DATABASE_NAME',
|
|
36
|
+
INVALID_EXPRESSION = 'INVALID_EXPRESSION',
|
|
37
|
+
INVALID_PAGINATION = 'INVALID_PAGINATION',
|
|
38
|
+
INVALID_OPERATION = 'INVALID_OPERATION',
|
|
39
|
+
INVALID_CURSOR = 'INVALID_CURSOR',
|
|
40
|
+
INVALID_CONFIG = 'INVALID_CONFIG',
|
|
41
|
+
INVALID_MODEL_DEFINITION = 'INVALID_MODEL_DEFINITION',
|
|
42
|
+
INVALID_SCHEMA_TYPE = 'INVALID_SCHEMA_TYPE',
|
|
43
|
+
NOT_CONNECTED = 'NOT_CONNECTED',
|
|
44
|
+
NO_POOL_MANAGER = 'NO_POOL_MANAGER',
|
|
45
|
+
POOL_NOT_FOUND = 'POOL_NOT_FOUND',
|
|
46
|
+
MODEL_NOT_DEFINED = 'MODEL_NOT_DEFINED',
|
|
47
|
+
MODEL_ALREADY_EXISTS = 'MODEL_ALREADY_EXISTS',
|
|
48
|
+
MISSING_SCHEMA = 'MISSING_SCHEMA',
|
|
49
|
+
UNSUPPORTED_DATABASE = 'UNSUPPORTED_DATABASE',
|
|
50
|
+
CONNECTION_FAILED = 'CONNECTION_FAILED',
|
|
51
|
+
CONNECTION_CLOSED = 'CONNECTION_CLOSED',
|
|
52
|
+
CONNECTION_TIMEOUT = 'CONNECTION_TIMEOUT',
|
|
53
|
+
OPERATION_TIMEOUT = 'OPERATION_TIMEOUT',
|
|
54
|
+
QUERY_TIMEOUT = 'QUERY_TIMEOUT',
|
|
55
|
+
DATABASE_ERROR = 'DATABASE_ERROR',
|
|
56
|
+
CACHE_UNAVAILABLE = 'CACHE_UNAVAILABLE',
|
|
57
|
+
CACHE_ERROR = 'CACHE_ERROR',
|
|
58
|
+
CACHE_TIMEOUT = 'CACHE_TIMEOUT',
|
|
59
|
+
MANAGEMENT_OPERATION_FAILED = 'MANAGEMENT_OPERATION_FAILED',
|
|
60
|
+
VALIDATION_ERROR = 'VALIDATION_ERROR',
|
|
61
|
+
DOCUMENT_REQUIRED = 'DOCUMENT_REQUIRED',
|
|
62
|
+
DOCUMENTS_REQUIRED = 'DOCUMENTS_REQUIRED',
|
|
63
|
+
DUPLICATE_KEY = 'DUPLICATE_KEY',
|
|
64
|
+
WRITE_ERROR = 'WRITE_ERROR',
|
|
65
|
+
WRITE_CONFLICT = 'WRITE_CONFLICT',
|
|
66
|
+
CURSOR_SORT_MISMATCH = 'CURSOR_SORT_MISMATCH',
|
|
67
|
+
JUMP_TOO_FAR = 'JUMP_TOO_FAR',
|
|
68
|
+
STREAM_NO_JUMP = 'STREAM_NO_JUMP',
|
|
69
|
+
STREAM_NO_TOTALS = 'STREAM_NO_TOTALS',
|
|
70
|
+
STREAM_NO_EXPLAIN = 'STREAM_NO_EXPLAIN',
|
|
71
|
+
MONGODB_ERROR = 'MONGODB_ERROR',
|
|
72
|
+
LOCK_ACQUIRE_FAILED = 'LOCK_ACQUIRE_FAILED',
|
|
73
|
+
LOCK_TIMEOUT = 'LOCK_TIMEOUT',
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export interface MonSQLizeError extends Error {
|
|
77
|
+
code: string;
|
|
78
|
+
details?: unknown[];
|
|
79
|
+
cause?: Error;
|
|
80
|
+
}
|
|
81
|
+
|