@fluojs/mongoose 1.0.0-beta.3 → 1.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/README.ko.md +7 -4
- package/README.md +7 -4
- package/dist/connection.d.ts +4 -0
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +49 -12
- package/dist/status.d.ts +2 -0
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +4 -2
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
package/README.ko.md
CHANGED
|
@@ -56,13 +56,14 @@ class AppModule {}
|
|
|
56
56
|
|
|
57
57
|
`MongooseModule`은 `MongooseConnection`을 fluo 애플리케이션 라이프사이클에 등록합니다. 이 패키지는 원본 Mongoose 연결을 직접 생성하거나 소유하지 않습니다. 애플리케이션 종료 시 외부 연결을 닫아야 한다면 `dispose` 훅을 전달하세요.
|
|
58
58
|
|
|
59
|
-
종료 과정은
|
|
59
|
+
종료 과정은 트랜잭션 정리 순서를 보존합니다.
|
|
60
60
|
|
|
61
61
|
1. 열려 있는 요청 범위 트랜잭션은 `Application shutdown interrupted an open request transaction.` 오류로 abort됩니다.
|
|
62
|
-
2.
|
|
63
|
-
3.
|
|
62
|
+
2. 활성 ambient session은 transaction callback과 session cleanup이 settle될 때까지 추적됩니다.
|
|
63
|
+
3. 해당 Mongoose 세션은 `abortTransaction()`과 `endSession()` 정리를 끝냅니다.
|
|
64
|
+
4. 설정한 `dispose(connection)` 훅은 활성 요청 트랜잭션과 ambient session scope가 모두 settled된 뒤에만 실행됩니다.
|
|
64
65
|
|
|
65
|
-
`createMongoosePlatformStatusSnapshot(...)`은 트래픽 처리 중에는 `ready`, 요청 트랜잭션 drain 중에는 `shutting-down`, dispose 훅 완료 뒤에는 `stopped`를 보고합니다. 상태 details에는 `sessionStrategy`, `transactionContext: 'als'`, 리소스 소유권, strict/session 지원 진단이 포함됩니다. 수동 `transaction()`도 요청 범위 트랜잭션과 같은 명시적 세션 계약을 사용하므로, 트랜잭션에 참여해야 하는 Mongoose 모델 작업에는 repository 코드가 `conn.currentSession()`을 전달해야 합니다.
|
|
66
|
+
`createMongoosePlatformStatusSnapshot(...)`은 트래픽 처리 중에는 `ready`, 요청 트랜잭션 drain 중에는 `shutting-down`, dispose 훅 완료 뒤에는 `stopped`를 보고합니다. 상태 details에는 `sessionStrategy`, `transactionContext: 'als'`, 활성 요청/session 개수, 리소스 소유권, strict/session 지원 진단이 포함됩니다. 수동 `transaction()`도 요청 범위 트랜잭션과 같은 명시적 세션 계약을 사용하므로, 트랜잭션에 참여해야 하는 Mongoose 모델 작업에는 repository 코드가 `conn.currentSession()`을 전달해야 합니다. 감싼 Mongoose 연결이 `connection.transaction(...)`을 노출하면 fluo는 Mongoose 자체 ambient-session scope를 보존하기 위해 그 API에 transaction boundary를 위임하면서도 같은 session을 `currentSession()`으로 노출합니다.
|
|
66
67
|
|
|
67
68
|
## 공통 패턴
|
|
68
69
|
|
|
@@ -99,6 +100,8 @@ await this.conn.transaction(async () => {
|
|
|
99
100
|
|
|
100
101
|
감싼 연결이 `startSession()`을 구현하지 않으면 트랜잭션은 기본적으로 직접 실행으로 fallback합니다. fallback 대신 예외를 던지려면 `strictTransactions: true`를 설정합니다. 이때 오류 메시지는 `Transaction not supported: Mongoose connection does not implement startSession.`입니다.
|
|
101
102
|
|
|
103
|
+
Fluo는 Mongoose operation option을 다시 쓰지 않습니다. 모델 호출이 명시적인 `{ session }`을 전달하면 그 option은 그대로 유지되며, 생략한 경우 fluo가 session을 자동 부착한다고 가정하면 안 됩니다. 같은 session에서 병렬 작업이나 중첩 transaction 기대치는 보수적으로 유지하세요. 중첩된 `MongooseConnection.transaction(...)` 호출은 같은 session에 두 번째 MongoDB transaction을 여는 대신 활성 boundary를 재사용합니다.
|
|
104
|
+
|
|
102
105
|
### 요청 범위 트랜잭션
|
|
103
106
|
|
|
104
107
|
컨트롤러나 메서드에 `MongooseTransactionInterceptor`를 적용하면 전체 요청을 MongoDB 세션으로 감쌉니다.
|
package/README.md
CHANGED
|
@@ -54,13 +54,14 @@ class AppModule {}
|
|
|
54
54
|
|
|
55
55
|
`MongooseModule` registers `MongooseConnection` with the fluo application lifecycle. The package does not create or own the raw Mongoose connection for you; pass a `dispose` hook when the application should close that external connection during shutdown.
|
|
56
56
|
|
|
57
|
-
Shutdown preserves
|
|
57
|
+
Shutdown preserves transaction cleanup order:
|
|
58
58
|
|
|
59
59
|
1. Open request-scoped transactions are aborted with `Application shutdown interrupted an open request transaction.`
|
|
60
|
-
2.
|
|
61
|
-
3.
|
|
60
|
+
2. Active ambient sessions are tracked until their transaction callback and session cleanup settle.
|
|
61
|
+
3. Their Mongoose sessions finish `abortTransaction()` and `endSession()` cleanup.
|
|
62
|
+
4. The configured `dispose(connection)` hook runs only after active request transactions and ambient session scopes have settled.
|
|
62
63
|
|
|
63
|
-
`createMongoosePlatformStatusSnapshot(...)` reports `ready` while serving traffic, `shutting-down` while request transactions are draining, and `stopped` after the dispose hook completes. The status details include `sessionStrategy`, `transactionContext: 'als'`, resource ownership, and strict/session support diagnostics. Manual `transaction()` calls still use the same explicit-session contract as request-scoped transactions: repository code must pass `conn.currentSession()` into Mongoose model operations that participate in the transaction.
|
|
64
|
+
`createMongoosePlatformStatusSnapshot(...)` reports `ready` while serving traffic, `shutting-down` while request transactions are draining, and `stopped` after the dispose hook completes. The status details include `sessionStrategy`, `transactionContext: 'als'`, active request/session counts, resource ownership, and strict/session support diagnostics. Manual `transaction()` calls still use the same explicit-session contract as request-scoped transactions: repository code must pass `conn.currentSession()` into Mongoose model operations that participate in the transaction. If the wrapped Mongoose connection exposes `connection.transaction(...)`, fluo delegates the transaction boundary to that API so Mongoose's own ambient-session scope is preserved while still exposing the same session through `currentSession()`.
|
|
64
65
|
|
|
65
66
|
## Common Patterns
|
|
66
67
|
|
|
@@ -92,6 +93,8 @@ await this.conn.transaction(async () => {
|
|
|
92
93
|
|
|
93
94
|
If the wrapped connection does not implement `startSession()`, transactions fall back to direct execution by default. Set `strictTransactions: true` to throw `Transaction not supported: Mongoose connection does not implement startSession.` instead of falling back.
|
|
94
95
|
|
|
96
|
+
Fluo never rewrites Mongoose operation options. If a model call passes an explicit `{ session }`, that option is left intact; if it omits one, repositories should not assume fluo will attach a session for them. Keep same-session parallel work and nested transaction expectations conservative: nested `MongooseConnection.transaction(...)` calls reuse the active boundary rather than opening a second MongoDB transaction on the same session.
|
|
97
|
+
|
|
95
98
|
### Request-scoped transactions
|
|
96
99
|
|
|
97
100
|
```ts
|
package/dist/connection.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export declare class MongooseConnection<TConnection extends MongooseConnectionLi
|
|
|
14
14
|
private readonly connectionOptions;
|
|
15
15
|
private readonly sessions;
|
|
16
16
|
private readonly activeRequestTransactions;
|
|
17
|
+
private readonly activeSessions;
|
|
17
18
|
private lifecycleState;
|
|
18
19
|
constructor(connection: TConnection, dispose?: ((connection: TConnection) => Promise<void> | void) | undefined, connectionOptions?: MongooseRuntimeOptions);
|
|
19
20
|
/**
|
|
@@ -69,6 +70,9 @@ export declare class MongooseConnection<TConnection extends MongooseConnectionLi
|
|
|
69
70
|
* @returns The callback result after the request transaction finishes or the direct-execution fallback completes.
|
|
70
71
|
*/
|
|
71
72
|
requestTransaction<T>(fn: () => Promise<T>, signal?: AbortSignal): Promise<T>;
|
|
73
|
+
private runManualSessionTransaction;
|
|
74
|
+
private runConnectionTransaction;
|
|
75
|
+
private trackActiveSession;
|
|
72
76
|
private trackActiveRequestTransaction;
|
|
73
77
|
private untrackActiveRequestTransaction;
|
|
74
78
|
private resolveSession;
|
package/dist/connection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAK7D,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAK7D,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAsBpB,KAAK,sBAAsB,GAAG;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAmBF;;;;GAIG;AACH,qBACa,kBAAkB,CAAC,WAAW,SAAS,sBAAsB,GAAG,sBAAsB,CACjG,YAAW,sBAAsB,CAAC,WAAW,CAAC,EAAE,qBAAqB;IAQnE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IARpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgD;IACzE,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAuC;IACjF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiC;IAChE,OAAO,CAAC,cAAc,CAAkD;gBAGrD,UAAU,EAAE,WAAW,EACvB,OAAO,CAAC,GAAE,CAAC,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,aAAA,EAC3D,iBAAiB,GAAE,sBAAsD;IAG5F;;;;;;;;;OASG;IACH,OAAO,IAAI,WAAW;IAItB;;;;;;;;;OASG;IACH,cAAc,IAAI,mBAAmB,GAAG,SAAS;IAIjD,qGAAqG;IAC/F,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5C,yFAAyF;IACzF,4BAA4B;IAY5B;;;;;;;;;;;;OAYG;IACG,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAkBtD;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;YA8BrE,2BAA2B;YAc3B,wBAAwB;IActC,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,6BAA6B;IAIrC,OAAO,CAAC,+BAA+B;YAIzB,cAAc;CAW7B"}
|
package/dist/connection.js
CHANGED
|
@@ -38,6 +38,7 @@ class MongooseConnection {
|
|
|
38
38
|
}
|
|
39
39
|
sessions = new AsyncLocalStorage();
|
|
40
40
|
activeRequestTransactions = new Set();
|
|
41
|
+
activeSessions = new Set();
|
|
41
42
|
lifecycleState = 'ready';
|
|
42
43
|
constructor(connection, dispose, connectionOptions = {
|
|
43
44
|
strictTransactions: false
|
|
@@ -81,7 +82,7 @@ class MongooseConnection {
|
|
|
81
82
|
for (const transaction of this.activeRequestTransactions) {
|
|
82
83
|
transaction.abort(new Error('Application shutdown interrupted an open request transaction.'));
|
|
83
84
|
}
|
|
84
|
-
await Promise.allSettled(Array.from(this.activeRequestTransactions, transaction => transaction.settled));
|
|
85
|
+
await Promise.allSettled([...Array.from(this.activeRequestTransactions, transaction => transaction.settled), ...Array.from(this.activeSessions, session => session.settled)]);
|
|
85
86
|
if (this.dispose) {
|
|
86
87
|
await this.dispose(this.connection);
|
|
87
88
|
}
|
|
@@ -92,9 +93,11 @@ class MongooseConnection {
|
|
|
92
93
|
createPlatformStatusSnapshot() {
|
|
93
94
|
return createMongoosePlatformStatusSnapshot({
|
|
94
95
|
activeRequestTransactions: this.activeRequestTransactions.size,
|
|
95
|
-
|
|
96
|
+
activeSessions: this.activeSessions.size,
|
|
97
|
+
hasActiveSession: this.activeSessions.size > 0,
|
|
96
98
|
lifecycleState: this.lifecycleState,
|
|
97
99
|
strictTransactions: this.connectionOptions.strictTransactions,
|
|
100
|
+
supportsConnectionTransaction: typeof this.connection.transaction === 'function',
|
|
98
101
|
supportsStartSession: typeof this.connection.startSession === 'function'
|
|
99
102
|
});
|
|
100
103
|
}
|
|
@@ -117,15 +120,14 @@ class MongooseConnection {
|
|
|
117
120
|
if (currentSession) {
|
|
118
121
|
return fn();
|
|
119
122
|
}
|
|
123
|
+
if (typeof this.connection.transaction === 'function') {
|
|
124
|
+
return this.runConnectionTransaction(fn);
|
|
125
|
+
}
|
|
120
126
|
const session = await this.resolveSession();
|
|
121
127
|
if (!session) {
|
|
122
128
|
return fn();
|
|
123
129
|
}
|
|
124
|
-
|
|
125
|
-
return await this.sessions.run(session, () => executeSessionTransaction(session, () => this.sessions.run(session, fn)));
|
|
126
|
-
} finally {
|
|
127
|
-
await session.endSession();
|
|
128
|
-
}
|
|
130
|
+
return this.runManualSessionTransaction(session, fn);
|
|
129
131
|
}
|
|
130
132
|
|
|
131
133
|
/**
|
|
@@ -150,23 +152,58 @@ class MongooseConnection {
|
|
|
150
152
|
}
|
|
151
153
|
const abortContext = createRequestAbortContext(signal);
|
|
152
154
|
const active = this.trackActiveRequestTransaction(abortContext.controller);
|
|
153
|
-
let acquiredSession;
|
|
154
155
|
try {
|
|
156
|
+
if (typeof this.connection.transaction === 'function') {
|
|
157
|
+
return await this.runConnectionTransaction(() => raceWithAbort(fn, abortContext.signal));
|
|
158
|
+
}
|
|
155
159
|
const resolvedSession = await this.resolveSession();
|
|
156
160
|
if (!resolvedSession) {
|
|
157
161
|
return await raceWithAbort(fn, abortContext.signal);
|
|
158
162
|
}
|
|
159
|
-
|
|
160
|
-
return await this.sessions.run(resolvedSession, () => executeSessionTransaction(resolvedSession, () => this.sessions.run(resolvedSession, () => raceWithAbort(fn, abortContext.signal))));
|
|
163
|
+
return await this.runManualSessionTransaction(resolvedSession, () => raceWithAbort(fn, abortContext.signal));
|
|
161
164
|
} finally {
|
|
162
165
|
abortContext.cleanup();
|
|
166
|
+
this.untrackActiveRequestTransaction(active);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
async runManualSessionTransaction(session, fn) {
|
|
170
|
+
const activeSession = this.trackActiveSession();
|
|
171
|
+
try {
|
|
172
|
+
return await this.sessions.run(session, () => executeSessionTransaction(session, fn));
|
|
173
|
+
} finally {
|
|
163
174
|
try {
|
|
164
|
-
await
|
|
175
|
+
await session.endSession();
|
|
165
176
|
} finally {
|
|
166
|
-
|
|
177
|
+
activeSession.settle();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
async runConnectionTransaction(fn) {
|
|
182
|
+
const activeSession = this.trackActiveSession();
|
|
183
|
+
try {
|
|
184
|
+
if (typeof this.connection.transaction !== 'function') {
|
|
185
|
+
throw new Error('Mongoose connection transaction resolver initialization failed.');
|
|
167
186
|
}
|
|
187
|
+
return await this.connection.transaction(session => this.sessions.run(session, fn));
|
|
188
|
+
} finally {
|
|
189
|
+
activeSession.settle();
|
|
168
190
|
}
|
|
169
191
|
}
|
|
192
|
+
trackActiveSession() {
|
|
193
|
+
let settle;
|
|
194
|
+
const active = {
|
|
195
|
+
settled: new Promise(resolve => {
|
|
196
|
+
settle = resolve;
|
|
197
|
+
})
|
|
198
|
+
};
|
|
199
|
+
this.activeSessions.add(active);
|
|
200
|
+
return {
|
|
201
|
+
settle: () => {
|
|
202
|
+
this.activeSessions.delete(active);
|
|
203
|
+
settle();
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
}
|
|
170
207
|
trackActiveRequestTransaction(controller) {
|
|
171
208
|
return trackActiveRequestTransaction(this.activeRequestTransactions, controller);
|
|
172
209
|
}
|
package/dist/status.d.ts
CHANGED
|
@@ -2,9 +2,11 @@ import type { PersistencePlatformStatusSnapshot } from '@fluojs/runtime';
|
|
|
2
2
|
type MongoosePlatformLifecycleState = 'ready' | 'shutting-down' | 'stopped';
|
|
3
3
|
type MongoosePlatformStatusSnapshotInput = {
|
|
4
4
|
activeRequestTransactions: number;
|
|
5
|
+
activeSessions: number;
|
|
5
6
|
hasActiveSession: boolean;
|
|
6
7
|
lifecycleState: MongoosePlatformLifecycleState;
|
|
7
8
|
strictTransactions: boolean;
|
|
9
|
+
supportsConnectionTransaction: boolean;
|
|
8
10
|
supportsStartSession: boolean;
|
|
9
11
|
};
|
|
10
12
|
/**
|
package/dist/status.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EAGlC,MAAM,iBAAiB,CAAC;AAEzB,KAAK,8BAA8B,GAAG,OAAO,GAAG,eAAe,GAAG,SAAS,CAAC;AAE5E,KAAK,mCAAmC,GAAG;IACzC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,8BAA8B,CAAC;IAC/C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAqDF;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,mCAAmC,GACzC,iCAAiC,
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EAGlC,MAAM,iBAAiB,CAAC;AAEzB,KAAK,8BAA8B,GAAG,OAAO,GAAG,eAAe,GAAG,SAAS,CAAC;AAE5E,KAAK,mCAAmC,GAAG;IACzC,yBAAyB,EAAE,MAAM,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,8BAA8B,CAAC;IAC/C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,6BAA6B,EAAE,OAAO,CAAC;IACvC,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAqDF;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,mCAAmC,GACzC,iCAAiC,CAoBnC"}
|
package/dist/status.js
CHANGED
|
@@ -13,7 +13,7 @@ function createReadiness(input) {
|
|
|
13
13
|
status: 'not-ready'
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
if (input.strictTransactions && !input.supportsStartSession) {
|
|
16
|
+
if (input.strictTransactions && !input.supportsStartSession && !input.supportsConnectionTransaction) {
|
|
17
17
|
return {
|
|
18
18
|
critical: true,
|
|
19
19
|
reason: 'Mongoose strictTransactions is enabled but connection.startSession is unavailable.',
|
|
@@ -53,10 +53,12 @@ export function createMongoosePlatformStatusSnapshot(input) {
|
|
|
53
53
|
return {
|
|
54
54
|
details: {
|
|
55
55
|
activeRequestTransactions: input.activeRequestTransactions,
|
|
56
|
+
activeSessions: input.activeSessions,
|
|
56
57
|
hasActiveSession: input.hasActiveSession,
|
|
57
58
|
lifecycleState: input.lifecycleState,
|
|
58
|
-
sessionStrategy: input.supportsStartSession ? 'explicit-session' : 'none',
|
|
59
|
+
sessionStrategy: input.supportsStartSession || input.supportsConnectionTransaction ? 'explicit-session' : 'none',
|
|
59
60
|
strictTransactions: input.strictTransactions,
|
|
61
|
+
supportsConnectionTransaction: input.supportsConnectionTransaction,
|
|
60
62
|
supportsStartSession: input.supportsStartSession,
|
|
61
63
|
transactionContext: 'als'
|
|
62
64
|
},
|
package/dist/types.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import type { MaybePromise } from '@fluojs/core';
|
|
|
7
7
|
*/
|
|
8
8
|
export interface MongooseConnectionLike {
|
|
9
9
|
startSession?(): Promise<MongooseSessionLike>;
|
|
10
|
+
transaction?<T>(fn: (session: MongooseSessionLike) => Promise<T>): Promise<T>;
|
|
10
11
|
}
|
|
11
12
|
/**
|
|
12
13
|
* Session contract used by the Mongoose transaction wrapper.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC/
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9C,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC/E;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACvC,iBAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,gBAAgB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACvC,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB,CAAC,WAAW,SAAS,sBAAsB,GAAG,sBAAsB;IACxG,kFAAkF;IAClF,UAAU,EAAE,WAAW,CAAC;IACxB,2FAA2F;IAC3F,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1D,kFAAkF;IAClF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB,CAAC,WAAW,SAAS,sBAAsB,GAAG,sBAAsB;IACzG,uFAAuF;IACvF,OAAO,IAAI,WAAW,CAAC;IACvB,2FAA2F;IAC3F,cAAc,IAAI,mBAAmB,GAAG,SAAS,CAAC;IAClD;;;;;OAKG;IACH,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjD;;;;;;OAMG;IACH,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC/E"}
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"transaction",
|
|
10
10
|
"odm"
|
|
11
11
|
],
|
|
12
|
-
"version": "1.0.0
|
|
12
|
+
"version": "1.0.0",
|
|
13
13
|
"private": false,
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"repository": {
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
"dist"
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@fluojs/
|
|
40
|
-
"@fluojs/
|
|
41
|
-
"@fluojs/
|
|
42
|
-
"@fluojs/runtime": "^1.0.0
|
|
39
|
+
"@fluojs/core": "^1.0.0",
|
|
40
|
+
"@fluojs/http": "^1.0.0",
|
|
41
|
+
"@fluojs/di": "^1.0.0",
|
|
42
|
+
"@fluojs/runtime": "^1.0.0"
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"mongoose": ">=7.0.0"
|