@aneuhold/be-ts-db-lib 4.1.1 → 4.2.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 +30 -2
- package/README.md +1 -0
- package/lib/repositories/BaseRepository.d.ts +8 -1
- package/lib/repositories/BaseRepository.d.ts.map +1 -1
- package/lib/repositories/BaseRepository.js +13 -1
- package/lib/repositories/BaseRepository.js.map +1 -1
- package/lib/repositories/BaseRepository.ts +14 -1
- package/lib/repositories/common/UserRepository.d.ts.map +1 -1
- package/lib/repositories/common/UserRepository.js +12 -0
- package/lib/repositories/common/UserRepository.js.map +1 -1
- package/lib/repositories/common/UserRepository.ts +12 -0
- package/lib/repositories/dashboard/DashboardBaseWithUserIdRepository.d.ts +20 -0
- package/lib/repositories/dashboard/DashboardBaseWithUserIdRepository.d.ts.map +1 -1
- package/lib/repositories/dashboard/DashboardBaseWithUserIdRepository.js +36 -4
- package/lib/repositories/dashboard/DashboardBaseWithUserIdRepository.js.map +1 -1
- package/lib/repositories/dashboard/DashboardBaseWithUserIdRepository.ts +39 -4
- package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.d.ts.map +1 -1
- package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.js +2 -12
- package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.js.map +1 -1
- package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts +2 -16
- package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.d.ts.map +1 -1
- package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.js +2 -12
- package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.js.map +1 -1
- package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts +2 -16
- package/lib/repositories/dashboard/DashboardTaskRepository.d.ts +14 -0
- package/lib/repositories/dashboard/DashboardTaskRepository.d.ts.map +1 -1
- package/lib/repositories/dashboard/DashboardTaskRepository.js +33 -35
- package/lib/repositories/dashboard/DashboardTaskRepository.js.map +1 -1
- package/lib/repositories/dashboard/DashboardTaskRepository.ts +41 -45
- package/lib/repositories/dashboard/DashboardUserConfigRepository.d.ts +14 -0
- package/lib/repositories/dashboard/DashboardUserConfigRepository.d.ts.map +1 -1
- package/lib/repositories/dashboard/DashboardUserConfigRepository.js +26 -15
- package/lib/repositories/dashboard/DashboardUserConfigRepository.js.map +1 -1
- package/lib/repositories/dashboard/DashboardUserConfigRepository.ts +38 -21
- package/lib/repositories/workout/WorkoutBaseRepository.d.ts +22 -0
- package/lib/repositories/workout/WorkoutBaseRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutBaseRepository.js +53 -0
- package/lib/repositories/workout/WorkoutBaseRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutBaseRepository.ts +85 -0
- package/lib/repositories/workout/WorkoutBaseWithUserIdRepository.d.ts +40 -0
- package/lib/repositories/workout/WorkoutBaseWithUserIdRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutBaseWithUserIdRepository.js +96 -0
- package/lib/repositories/workout/WorkoutBaseWithUserIdRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutBaseWithUserIdRepository.ts +134 -0
- package/lib/repositories/workout/WorkoutEquipmentTypeRepository.d.ts +17 -0
- package/lib/repositories/workout/WorkoutEquipmentTypeRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutEquipmentTypeRepository.js +34 -0
- package/lib/repositories/workout/WorkoutEquipmentTypeRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutEquipmentTypeRepository.ts +40 -0
- package/lib/repositories/workout/WorkoutExerciseCalibrationRepository.d.ts +31 -0
- package/lib/repositories/workout/WorkoutExerciseCalibrationRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutExerciseCalibrationRepository.js +70 -0
- package/lib/repositories/workout/WorkoutExerciseCalibrationRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutExerciseCalibrationRepository.ts +84 -0
- package/lib/repositories/workout/WorkoutExerciseRepository.d.ts +14 -0
- package/lib/repositories/workout/WorkoutExerciseRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutExerciseRepository.js +34 -0
- package/lib/repositories/workout/WorkoutExerciseRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutExerciseRepository.ts +40 -0
- package/lib/repositories/workout/WorkoutMesocycleRepository.d.ts +14 -0
- package/lib/repositories/workout/WorkoutMesocycleRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutMesocycleRepository.js +34 -0
- package/lib/repositories/workout/WorkoutMesocycleRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutMesocycleRepository.ts +40 -0
- package/lib/repositories/workout/WorkoutMicrocycleRepository.d.ts +31 -0
- package/lib/repositories/workout/WorkoutMicrocycleRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutMicrocycleRepository.js +72 -0
- package/lib/repositories/workout/WorkoutMicrocycleRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutMicrocycleRepository.ts +86 -0
- package/lib/repositories/workout/WorkoutMuscleGroupRepository.d.ts +20 -0
- package/lib/repositories/workout/WorkoutMuscleGroupRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutMuscleGroupRepository.js +37 -0
- package/lib/repositories/workout/WorkoutMuscleGroupRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutMuscleGroupRepository.ts +43 -0
- package/lib/repositories/workout/WorkoutSessionExerciseRepository.d.ts +31 -0
- package/lib/repositories/workout/WorkoutSessionExerciseRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutSessionExerciseRepository.js +72 -0
- package/lib/repositories/workout/WorkoutSessionExerciseRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutSessionExerciseRepository.ts +86 -0
- package/lib/repositories/workout/WorkoutSessionRepository.d.ts +31 -0
- package/lib/repositories/workout/WorkoutSessionRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutSessionRepository.js +72 -0
- package/lib/repositories/workout/WorkoutSessionRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutSessionRepository.ts +86 -0
- package/lib/repositories/workout/WorkoutSetRepository.d.ts +31 -0
- package/lib/repositories/workout/WorkoutSetRepository.d.ts.map +1 -0
- package/lib/repositories/workout/WorkoutSetRepository.js +69 -0
- package/lib/repositories/workout/WorkoutSetRepository.js.map +1 -0
- package/lib/repositories/workout/WorkoutSetRepository.ts +89 -0
- package/lib/util/DbSchemaUpdater.d.ts.map +1 -1
- package/lib/util/DbSchemaUpdater.js +25 -0
- package/lib/util/DbSchemaUpdater.js.map +1 -1
- package/lib/util/DbSchemaUpdater.ts +27 -0
- package/lib/util/DocumentCleaner.d.ts +2 -1
- package/lib/util/DocumentCleaner.d.ts.map +1 -1
- package/lib/util/DocumentCleaner.js +5 -0
- package/lib/util/DocumentCleaner.js.map +1 -1
- package/lib/util/DocumentCleaner.ts +14 -1
- package/lib/util/globalTestVariables.d.ts +8 -0
- package/lib/util/globalTestVariables.d.ts.map +1 -0
- package/lib/util/globalTestVariables.js +8 -0
- package/lib/util/globalTestVariables.js.map +1 -0
- package/lib/{tests → util}/globalTestVariables.ts +3 -0
- package/lib/validators/common/UserValidator.js +1 -1
- package/lib/validators/common/UserValidator.js.map +1 -1
- package/lib/validators/common/UserValidator.ts +1 -1
- package/lib/validators/workout/EquipmentTypeValidator.d.ts +9 -0
- package/lib/validators/workout/EquipmentTypeValidator.d.ts.map +1 -0
- package/lib/validators/workout/EquipmentTypeValidator.js +43 -0
- package/lib/validators/workout/EquipmentTypeValidator.js.map +1 -0
- package/lib/validators/workout/EquipmentTypeValidator.ts +56 -0
- package/lib/validators/workout/ExerciseCalibrationValidator.d.ts +9 -0
- package/lib/validators/workout/ExerciseCalibrationValidator.d.ts.map +1 -0
- package/lib/validators/workout/ExerciseCalibrationValidator.js +65 -0
- package/lib/validators/workout/ExerciseCalibrationValidator.js.map +1 -0
- package/lib/validators/workout/ExerciseCalibrationValidator.ts +85 -0
- package/lib/validators/workout/ExerciseValidator.d.ts +9 -0
- package/lib/validators/workout/ExerciseValidator.d.ts.map +1 -0
- package/lib/validators/workout/ExerciseValidator.js +117 -0
- package/lib/validators/workout/ExerciseValidator.js.map +1 -0
- package/lib/validators/workout/ExerciseValidator.ts +156 -0
- package/lib/validators/workout/MesocycleValidator.d.ts +9 -0
- package/lib/validators/workout/MesocycleValidator.d.ts.map +1 -0
- package/lib/validators/workout/MesocycleValidator.js +56 -0
- package/lib/validators/workout/MesocycleValidator.js.map +1 -0
- package/lib/validators/workout/MesocycleValidator.ts +73 -0
- package/lib/validators/workout/MicrocycleValidator.d.ts +9 -0
- package/lib/validators/workout/MicrocycleValidator.d.ts.map +1 -0
- package/lib/validators/workout/MicrocycleValidator.js +73 -0
- package/lib/validators/workout/MicrocycleValidator.js.map +1 -0
- package/lib/validators/workout/MicrocycleValidator.ts +91 -0
- package/lib/validators/workout/MuscleGroupValidator.d.ts +9 -0
- package/lib/validators/workout/MuscleGroupValidator.d.ts.map +1 -0
- package/lib/validators/workout/MuscleGroupValidator.js +43 -0
- package/lib/validators/workout/MuscleGroupValidator.js.map +1 -0
- package/lib/validators/workout/MuscleGroupValidator.ts +53 -0
- package/lib/validators/workout/SessionExerciseValidator.d.ts +9 -0
- package/lib/validators/workout/SessionExerciseValidator.d.ts.map +1 -0
- package/lib/validators/workout/SessionExerciseValidator.js +94 -0
- package/lib/validators/workout/SessionExerciseValidator.js.map +1 -0
- package/lib/validators/workout/SessionExerciseValidator.ts +117 -0
- package/lib/validators/workout/SessionValidator.d.ts +9 -0
- package/lib/validators/workout/SessionValidator.d.ts.map +1 -0
- package/lib/validators/workout/SessionValidator.js +73 -0
- package/lib/validators/workout/SessionValidator.js.map +1 -0
- package/lib/validators/workout/SessionValidator.ts +89 -0
- package/lib/validators/workout/SetValidator.d.ts +9 -0
- package/lib/validators/workout/SetValidator.d.ts.map +1 -0
- package/lib/validators/workout/SetValidator.js +69 -0
- package/lib/validators/workout/SetValidator.js.map +1 -0
- package/lib/validators/workout/SetValidator.ts +88 -0
- package/package.json +6 -5
- package/lib/tests/globalTestVariables.d.ts +0 -5
- package/lib/tests/globalTestVariables.d.ts.map +0 -1
- package/lib/tests/globalTestVariables.js +0 -5
- package/lib/tests/globalTestVariables.js.map +0 -1
- package/lib/tests/testsUtil.d.ts +0 -34
- package/lib/tests/testsUtil.d.ts.map +0 -1
- package/lib/tests/testsUtil.js +0 -60
- package/lib/tests/testsUtil.js.map +0 -1
- package/lib/tests/testsUtil.ts +0 -68
package/CHANGELOG.md
CHANGED
|
@@ -5,25 +5,50 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## 🔖 [4.2.0] (2026-02-06)
|
|
9
|
+
|
|
10
|
+
### ✅ Added
|
|
11
|
+
|
|
12
|
+
- Added Phase 5 repository implementations and several additional repositories for dashboard and workout domains.
|
|
13
|
+
- Added new validators and lifecycle tests to improve data integrity and repository behavior.
|
|
14
|
+
- Added listeners for user repository events to support reactive workflows.
|
|
15
|
+
|
|
16
|
+
### 🏗️ Changed
|
|
17
|
+
|
|
18
|
+
- Cleaned up repository implementations and subscriber logic; refactored tests to run faster and more reliably.
|
|
19
|
+
- Added `check` script (`tsc --noEmit`) to package.json for TypeScript checks.
|
|
20
|
+
|
|
21
|
+
### 🩹 Fixed
|
|
22
|
+
|
|
23
|
+
- Fixed test configuration issues and various repository logic bugs uncovered during refactors and new tests.
|
|
24
|
+
|
|
25
|
+
## 🔖 [4.1.2] (2025-12-21)
|
|
26
|
+
|
|
27
|
+
### 🏗️ Changed
|
|
28
|
+
|
|
29
|
+
- Updated dependency: now requires `@aneuhold/be-ts-lib@^3.0.9`.
|
|
30
|
+
|
|
8
31
|
## 🔖 [4.1.1] (2025-12-14)
|
|
9
32
|
|
|
10
33
|
### 🏗️ Changed
|
|
34
|
+
|
|
11
35
|
- Updated dependencies: now requires `@aneuhold/be-ts-lib@^3.0.8`, `@aneuhold/core-ts-db-lib@^4.0.4`, `@aneuhold/core-ts-lib@^2.3.16`, and `@aneuhold/local-npm-registry@^0.2.23`.
|
|
12
36
|
|
|
13
37
|
## 🔖 [4.1.0] (2025-12-14)
|
|
14
38
|
|
|
15
39
|
### ✅ Added
|
|
40
|
+
|
|
16
41
|
- Added doc caching and retrieval strategy to repositories
|
|
17
42
|
- Created base user ID repository for dashboard
|
|
18
43
|
|
|
19
44
|
### 🏗️ Changed
|
|
45
|
+
|
|
20
46
|
- Updated test scripts to include coverage
|
|
21
47
|
- Updated dependencies for compatibility
|
|
22
48
|
|
|
23
49
|
### 🩹 Fixed
|
|
24
|
-
- Fixed import paths in dashboard repositories
|
|
25
|
-
|
|
26
50
|
|
|
51
|
+
- Fixed import paths in dashboard repositories
|
|
27
52
|
|
|
28
53
|
## 🔖 [4.0.2] (2025-12-13)
|
|
29
54
|
|
|
@@ -183,6 +208,9 @@ Updated dependencies: now requires `@aneuhold/core-ts-db-lib@^3.0.0`, `@aneuhold
|
|
|
183
208
|
- Updated workflow permissions to allow repository write access
|
|
184
209
|
|
|
185
210
|
<!-- Link References -->
|
|
211
|
+
|
|
212
|
+
[4.2.0]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v4.1.2...be-ts-db-lib-v4.2.0
|
|
213
|
+
[4.1.2]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v4.1.1...be-ts-db-lib-v4.1.2
|
|
186
214
|
[4.1.1]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v4.1.0...be-ts-db-lib-v4.1.1
|
|
187
215
|
[4.1.0]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v4.0.2...be-ts-db-lib-v4.1.0
|
|
188
216
|
[4.0.2]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v4.0.1...be-ts-db-lib-v4.0.2
|
package/README.md
CHANGED
|
@@ -86,6 +86,13 @@ export default abstract class BaseRepository<TBaseType extends BaseDocument> {
|
|
|
86
86
|
* @returns An array of matching documents.
|
|
87
87
|
*/
|
|
88
88
|
getList(docIds: UUID[]): Promise<TBaseType[]>;
|
|
89
|
+
/**
|
|
90
|
+
* Gets a list of documents matching the given filter. This will and it together with the
|
|
91
|
+
* default filter.
|
|
92
|
+
*
|
|
93
|
+
* @param filter - The filter to apply.
|
|
94
|
+
*/
|
|
95
|
+
getListWithFilter(filter: Filter<TBaseType>): Promise<TBaseType[]>;
|
|
89
96
|
/**
|
|
90
97
|
* Deletes a document by its ID.
|
|
91
98
|
*
|
|
@@ -139,7 +146,7 @@ export default abstract class BaseRepository<TBaseType extends BaseDocument> {
|
|
|
139
146
|
*/
|
|
140
147
|
protected fetchAndCacheDocsForMeta(docIds: UUID[], meta: DbOperationMetaData): Promise<TBaseType[]>;
|
|
141
148
|
/**
|
|
142
|
-
* Gets the filter with the default filter applied if there is one.
|
|
149
|
+
* Gets the filter with the default filter applied if there is one. This will "and" them together.
|
|
143
150
|
*
|
|
144
151
|
* @param filter - The filter to apply.
|
|
145
152
|
* @returns The filter with the default filter applied.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseRepository.d.ts","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseRepository.d.ts","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -147,6 +147,17 @@ export default class BaseRepository {
|
|
|
147
147
|
.toArray();
|
|
148
148
|
return result;
|
|
149
149
|
}
|
|
150
|
+
/**
|
|
151
|
+
* Gets a list of documents matching the given filter. This will and it together with the
|
|
152
|
+
* default filter.
|
|
153
|
+
*
|
|
154
|
+
* @param filter - The filter to apply.
|
|
155
|
+
*/
|
|
156
|
+
async getListWithFilter(filter) {
|
|
157
|
+
const collection = await this.getCollection();
|
|
158
|
+
const result = await collection.find(this.getFilterWithDefault(filter)).toArray();
|
|
159
|
+
return result;
|
|
160
|
+
}
|
|
150
161
|
/**
|
|
151
162
|
* Deletes a document by its ID.
|
|
152
163
|
*
|
|
@@ -261,7 +272,7 @@ export default class BaseRepository {
|
|
|
261
272
|
return cachedDocs;
|
|
262
273
|
}
|
|
263
274
|
/**
|
|
264
|
-
* Gets the filter with the default filter applied if there is one.
|
|
275
|
+
* Gets the filter with the default filter applied if there is one. This will "and" them together.
|
|
265
276
|
*
|
|
266
277
|
* @param filter - The filter to apply.
|
|
267
278
|
* @returns The filter with the default filter applied.
|
|
@@ -270,6 +281,7 @@ export default class BaseRepository {
|
|
|
270
281
|
if (!this.defaultFilter) {
|
|
271
282
|
return filter;
|
|
272
283
|
}
|
|
284
|
+
// Two merged filters is the same as using `$and`
|
|
273
285
|
return { ...filter, ...this.defaultFilter };
|
|
274
286
|
}
|
|
275
287
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseRepository.js","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"AAYA,OAAO,uBAAuB,MAAM,wCAAwC,CAAC;AAE7E,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAG/C;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAgB,cAAc;IAkBhC;IACA;IACA;IAnBA,cAAc,CAAS;IAEzB,UAAU,CAAyB;IAEjC,WAAW,GACnB,uBAAuB,CAAC,qBAAqB,EAAa,CAAC;IAE7D;;;;;;;OAOG;IACH,YACE,cAAsB,EACd,SAAgC,EAChC,aAAkC,EAClC,oBAAsE;QAFtE,cAAS,GAAT,SAAS,CAAuB;QAChC,kBAAa,GAAb,aAAa,CAAqB;QAClC,yBAAoB,GAApB,oBAAoB,CAAkD;QAE9E,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,aAAa;QAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAID;;;;;OAKG;IACH,kBAAkB,CAAC,SAAmC;QACpD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;QAC9E,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,SAAS,CAAC,MAAiB,EAAE,IAA0B;QAC3D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,MAA6C,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5F,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,OAAoB,EAAE,IAA0B;QAC/D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC/E,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,UAAU,CAC9C,OAAgD,CACjD,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9F,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,MAA0B;QAClC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAA2B,CAAC,CAAC,CAAC;QAChG,OAAO,MAA0B,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5E,0DAA0D;QAC1D,OAAO,MAAgC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,MAAM,CAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC1D,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACpB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,UAAU;aAC5B,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAuB,CAAC,CAAC;aAC9E,OAAO,EAAE,CAAC;QACb,OAAO,MAAqB,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,KAAW,EAAE,IAA0B;QAClD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3F,OAAO,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAuB,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,IAA0B;QACzD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC;YACzC,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;SACA,CAAC,CAAC;QACxB,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7F,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CAAC,UAA8B,EAAE,IAA0B;QACrE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEtD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAE7B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAuB,EAAE;YACvE,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAChG,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,UAAU,CACd,WAAsC,EACtC,IAA0B;QAE1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEtF,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACtC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;YACtB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAC/C,OAAO;gBACL,SAAS,EAAE;oBACT,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;oBACtB,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;iBAC7B;aACF,CAAC;QACJ,CAAC,CAAuC,CAAC;QAEzC,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAC/E,CAAC;QAEF,OAAO,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;;OAQG;IACO,KAAK,CAAC,wBAAwB,CACtC,MAAc,EACd,IAAyB;QAEzB,MAAM,aAAa,GAAW,EAAE,CAAC;QACjC,MAAM,UAAU,GAAgB,EAAE,CAAC;QAEnC,oBAAoB;QACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAY,KAAK,CAAC,CAAC;YACnD,IAAI,MAAM,EAAE,CAAC;gBACX,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACtD,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACO,oBAAoB,CAAC,SAA4B,EAAE;QAC3D,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACO,kBAAkB,CAAC,MAAc,EAAE,MAAc;QACzD,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;OAQG;IACK,iBAAiB,CAAC,UAA8B;QACtD,OAAO,IAAI,CAAC,oBAAoB;YAC9B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"BaseRepository.js","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -178,6 +178,18 @@ export default abstract class BaseRepository<TBaseType extends BaseDocument> {
|
|
|
178
178
|
return result as TBaseType[];
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
+
/**
|
|
182
|
+
* Gets a list of documents matching the given filter. This will and it together with the
|
|
183
|
+
* default filter.
|
|
184
|
+
*
|
|
185
|
+
* @param filter - The filter to apply.
|
|
186
|
+
*/
|
|
187
|
+
async getListWithFilter(filter: Filter<TBaseType>): Promise<TBaseType[]> {
|
|
188
|
+
const collection = await this.getCollection();
|
|
189
|
+
const result = await collection.find(this.getFilterWithDefault(filter)).toArray();
|
|
190
|
+
return result as TBaseType[];
|
|
191
|
+
}
|
|
192
|
+
|
|
181
193
|
/**
|
|
182
194
|
* Deletes a document by its ID.
|
|
183
195
|
*
|
|
@@ -314,7 +326,7 @@ export default abstract class BaseRepository<TBaseType extends BaseDocument> {
|
|
|
314
326
|
}
|
|
315
327
|
|
|
316
328
|
/**
|
|
317
|
-
* Gets the filter with the default filter applied if there is one.
|
|
329
|
+
* Gets the filter with the default filter applied if there is one. This will "and" them together.
|
|
318
330
|
*
|
|
319
331
|
* @param filter - The filter to apply.
|
|
320
332
|
* @returns The filter with the default filter applied.
|
|
@@ -323,6 +335,7 @@ export default abstract class BaseRepository<TBaseType extends BaseDocument> {
|
|
|
323
335
|
if (!this.defaultFilter) {
|
|
324
336
|
return filter;
|
|
325
337
|
}
|
|
338
|
+
// Two merged filters is the same as using `$and`
|
|
326
339
|
return { ...filter, ...this.defaultFilter };
|
|
327
340
|
}
|
|
328
341
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,cAAc,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"UserRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAalD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc,CAAC,IAAI,CAAC;IAC9D,OAAO,CAAC,MAAM,CAAC,eAAe,CAAW;IAEzC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAA6B;IAE7D,OAAO;IAIP,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAclC;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,cAAc;IAO1B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAW/D,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAO5D"}
|
|
@@ -4,6 +4,12 @@ import DashboardNonogramKatanaItemRepository from '../dashboard/DashboardNonogra
|
|
|
4
4
|
import DashboardNonogramKatanaUpgradeRepository from '../dashboard/DashboardNonogramKatanaUpgradeRepository.js';
|
|
5
5
|
import DashboardTaskRepository from '../dashboard/DashboardTaskRepository.js';
|
|
6
6
|
import DashboardUserConfigRepository from '../dashboard/DashboardUserConfigRepository.js';
|
|
7
|
+
import WorkoutEquipmentTypeRepository from '../workout/WorkoutEquipmentTypeRepository.js';
|
|
8
|
+
import WorkoutExerciseCalibrationRepository from '../workout/WorkoutExerciseCalibrationRepository.js';
|
|
9
|
+
import WorkoutExerciseRepository from '../workout/WorkoutExerciseRepository.js';
|
|
10
|
+
import WorkoutMesocycleRepository from '../workout/WorkoutMesocycleRepository.js';
|
|
11
|
+
import WorkoutMicrocycleRepository from '../workout/WorkoutMicrocycleRepository.js';
|
|
12
|
+
import WorkoutMuscleGroupRepository from '../workout/WorkoutMuscleGroupRepository.js';
|
|
7
13
|
import ApiKeyRepository from './ApiKeyRepository.js';
|
|
8
14
|
/**
|
|
9
15
|
* The repository that contains {@link User} documents.
|
|
@@ -20,6 +26,12 @@ export default class UserRepository extends BaseRepository {
|
|
|
20
26
|
this.subscribeToChanges(DashboardTaskRepository.getListenersForUserRepo());
|
|
21
27
|
this.subscribeToChanges(DashboardNonogramKatanaItemRepository.getListenersForUserRepo());
|
|
22
28
|
this.subscribeToChanges(DashboardNonogramKatanaUpgradeRepository.getListenersForUserRepo());
|
|
29
|
+
this.subscribeToChanges(WorkoutMuscleGroupRepository.getListenersForUserRepo());
|
|
30
|
+
this.subscribeToChanges(WorkoutEquipmentTypeRepository.getListenersForUserRepo());
|
|
31
|
+
this.subscribeToChanges(WorkoutExerciseRepository.getListenersForUserRepo());
|
|
32
|
+
this.subscribeToChanges(WorkoutExerciseCalibrationRepository.getListenersForUserRepo());
|
|
33
|
+
this.subscribeToChanges(WorkoutMesocycleRepository.getListenersForUserRepo());
|
|
34
|
+
this.subscribeToChanges(WorkoutMicrocycleRepository.getListenersForUserRepo());
|
|
23
35
|
}
|
|
24
36
|
/**
|
|
25
37
|
* Gets the singleton instance of the {@link UserRepository}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserRepository.js","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,qCAAqC,MAAM,uDAAuD,CAAC;AAC1G,OAAO,wCAAwC,MAAM,0DAA0D,CAAC;AAChH,OAAO,uBAAuB,MAAM,yCAAyC,CAAC;AAC9E,OAAO,6BAA6B,MAAM,+CAA+C,CAAC;AAC1F,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAoB;IACtD,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC;IAEjC,MAAM,CAAC,iBAAiB,CAA6B;IAE7D;QACE,KAAK,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,aAAa,EAAE,CAAC,CAAC;IAC7D,CAAC;IAES,gBAAgB;QACxB,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,kBAAkB,CAAC,6BAA6B,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACjF,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,kBAAkB,CAAC,qCAAqC,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,kBAAkB,CAAC,wCAAwC,CAAC,uBAAuB,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"UserRepository.js","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,12 @@ import DashboardNonogramKatanaItemRepository from '../dashboard/DashboardNonogra
|
|
|
6
6
|
import DashboardNonogramKatanaUpgradeRepository from '../dashboard/DashboardNonogramKatanaUpgradeRepository.js';
|
|
7
7
|
import DashboardTaskRepository from '../dashboard/DashboardTaskRepository.js';
|
|
8
8
|
import DashboardUserConfigRepository from '../dashboard/DashboardUserConfigRepository.js';
|
|
9
|
+
import WorkoutEquipmentTypeRepository from '../workout/WorkoutEquipmentTypeRepository.js';
|
|
10
|
+
import WorkoutExerciseCalibrationRepository from '../workout/WorkoutExerciseCalibrationRepository.js';
|
|
11
|
+
import WorkoutExerciseRepository from '../workout/WorkoutExerciseRepository.js';
|
|
12
|
+
import WorkoutMesocycleRepository from '../workout/WorkoutMesocycleRepository.js';
|
|
13
|
+
import WorkoutMicrocycleRepository from '../workout/WorkoutMicrocycleRepository.js';
|
|
14
|
+
import WorkoutMuscleGroupRepository from '../workout/WorkoutMuscleGroupRepository.js';
|
|
9
15
|
import ApiKeyRepository from './ApiKeyRepository.js';
|
|
10
16
|
|
|
11
17
|
/**
|
|
@@ -26,6 +32,12 @@ export default class UserRepository extends BaseRepository<User> {
|
|
|
26
32
|
this.subscribeToChanges(DashboardTaskRepository.getListenersForUserRepo());
|
|
27
33
|
this.subscribeToChanges(DashboardNonogramKatanaItemRepository.getListenersForUserRepo());
|
|
28
34
|
this.subscribeToChanges(DashboardNonogramKatanaUpgradeRepository.getListenersForUserRepo());
|
|
35
|
+
this.subscribeToChanges(WorkoutMuscleGroupRepository.getListenersForUserRepo());
|
|
36
|
+
this.subscribeToChanges(WorkoutEquipmentTypeRepository.getListenersForUserRepo());
|
|
37
|
+
this.subscribeToChanges(WorkoutExerciseRepository.getListenersForUserRepo());
|
|
38
|
+
this.subscribeToChanges(WorkoutExerciseCalibrationRepository.getListenersForUserRepo());
|
|
39
|
+
this.subscribeToChanges(WorkoutMesocycleRepository.getListenersForUserRepo());
|
|
40
|
+
this.subscribeToChanges(WorkoutMicrocycleRepository.getListenersForUserRepo());
|
|
29
41
|
}
|
|
30
42
|
|
|
31
43
|
/**
|
|
@@ -15,11 +15,31 @@ export default abstract class DashboardBaseWithUserIdRepository<TBaseType extend
|
|
|
15
15
|
* @param userId The ID of the user to get items for.
|
|
16
16
|
*/
|
|
17
17
|
getAllForUser(userId: UUID): Promise<TBaseType[]>;
|
|
18
|
+
/**
|
|
19
|
+
* Gets all items for given users.
|
|
20
|
+
*
|
|
21
|
+
* @param userIds - The user IDs to get items for.
|
|
22
|
+
*/
|
|
23
|
+
getAllForUsers(userIds: UUID[]): Promise<TBaseType[]>;
|
|
18
24
|
insertNew(newDoc: TBaseType, meta?: DbOperationMetaData): Promise<TBaseType | null>;
|
|
19
25
|
insertMany(newDocs: TBaseType[], meta?: DbOperationMetaData): Promise<TBaseType[]>;
|
|
20
26
|
update(updatedDoc: Partial<TBaseType>, meta?: DbOperationMetaData): Promise<UpdateResult>;
|
|
21
27
|
updateMany(updatedDocs: Partial<TBaseType>[], meta?: DbOperationMetaData): Promise<BulkWriteResult>;
|
|
22
28
|
delete(docId: UUID, meta?: DbOperationMetaData): Promise<DeleteResult>;
|
|
23
29
|
deleteList(docIds: UUID[], meta?: DbOperationMetaData): Promise<DeleteResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Deletes all documents for a specific user.
|
|
32
|
+
*
|
|
33
|
+
* @param userId - The user ID to delete documents for.
|
|
34
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
35
|
+
*/
|
|
36
|
+
deleteAllForUser(userId: UUID, meta?: DbOperationMetaData): Promise<DeleteResult>;
|
|
37
|
+
/**
|
|
38
|
+
* Deletes all documents for specific users.
|
|
39
|
+
*
|
|
40
|
+
* @param userIds - The user IDs to delete documents for.
|
|
41
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
42
|
+
*/
|
|
43
|
+
deleteAllForUsers(userIds: UUID[], meta?: DbOperationMetaData): Promise<DeleteResult>;
|
|
24
44
|
}
|
|
25
45
|
//# sourceMappingURL=DashboardBaseWithUserIdRepository.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardBaseWithUserIdRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardBaseWithUserIdRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAU,YAAY,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,KAAK,mBAAmB,MAAM,mCAAmC,CAAC;AAEzE,OAAO,KAAK,UAAU,MAAM,mCAAmC,CAAC;AAChE,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,iCAAiC,CAC7D,SAAS,SAAS,oBAAoB,GAAG,cAAc,CACvD,SAAQ,uBAAuB,CAAC,SAAS,CAAC;gBAExC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,EAChC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC;IAOjE;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"DashboardBaseWithUserIdRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardBaseWithUserIdRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAU,YAAY,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,KAAK,mBAAmB,MAAM,mCAAmC,CAAC;AAEzE,OAAO,KAAK,UAAU,MAAM,mCAAmC,CAAC;AAChE,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,iCAAiC,CAC7D,SAAS,SAAS,oBAAoB,GAAG,cAAc,CACvD,SAAQ,uBAAuB,CAAC,SAAS,CAAC;gBAExC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,EAChC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC;IAOjE;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAOvD;;;;OAIG;IACG,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAO5C,SAAS,CACtB,MAAM,EAAE,SAAS,EACjB,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAQb,UAAU,CACvB,OAAO,EAAE,SAAS,EAAE,EACpB,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,SAAS,EAAE,CAAC;IAMR,MAAM,CACnB,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,EAC9B,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,YAAY,CAAC;IAWT,UAAU,CACvB,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,EACjC,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,eAAe,CAAC;IASZ,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAUtE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQ5F;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAIvF;;;;;OAKG;IACG,iBAAiB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;CAO5F"}
|
|
@@ -14,12 +14,21 @@ export default class DashboardBaseWithUserIdRepository extends DashboardBaseRepo
|
|
|
14
14
|
* @param userId The ID of the user to get items for.
|
|
15
15
|
*/
|
|
16
16
|
async getAllForUser(userId) {
|
|
17
|
-
const collection = await this.getCollection();
|
|
18
17
|
const filter = {
|
|
19
|
-
|
|
18
|
+
userId
|
|
20
19
|
};
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
return this.getListWithFilter(filter);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Gets all items for given users.
|
|
24
|
+
*
|
|
25
|
+
* @param userIds - The user IDs to get items for.
|
|
26
|
+
*/
|
|
27
|
+
async getAllForUsers(userIds) {
|
|
28
|
+
const filter = {
|
|
29
|
+
userId: { $in: userIds }
|
|
30
|
+
};
|
|
31
|
+
return this.getListWithFilter(filter);
|
|
23
32
|
}
|
|
24
33
|
async insertNew(newDoc, meta) {
|
|
25
34
|
const result = await super.insertNew(newDoc, meta);
|
|
@@ -35,6 +44,7 @@ export default class DashboardBaseWithUserIdRepository extends DashboardBaseRepo
|
|
|
35
44
|
}
|
|
36
45
|
async update(updatedDoc, meta) {
|
|
37
46
|
if (meta && updatedDoc._id) {
|
|
47
|
+
// We get the doc again, because it shouldn't include userId in the update doc.
|
|
38
48
|
const docs = await this.fetchAndCacheDocsForMeta([updatedDoc._id], meta);
|
|
39
49
|
if (docs.length > 0) {
|
|
40
50
|
meta.addAffectedUserIds([docs[0].userId]);
|
|
@@ -66,5 +76,27 @@ export default class DashboardBaseWithUserIdRepository extends DashboardBaseRepo
|
|
|
66
76
|
}
|
|
67
77
|
return super.deleteList(docIds, meta);
|
|
68
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Deletes all documents for a specific user.
|
|
81
|
+
*
|
|
82
|
+
* @param userId - The user ID to delete documents for.
|
|
83
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
84
|
+
*/
|
|
85
|
+
async deleteAllForUser(userId, meta) {
|
|
86
|
+
return this.deleteAllForUsers([userId], meta);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Deletes all documents for specific users.
|
|
90
|
+
*
|
|
91
|
+
* @param userIds - The user IDs to delete documents for.
|
|
92
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
93
|
+
*/
|
|
94
|
+
async deleteAllForUsers(userIds, meta) {
|
|
95
|
+
const docsForUsers = await this.getAllForUsers(userIds);
|
|
96
|
+
meta?.recordDocTypeTouched(this.docType);
|
|
97
|
+
meta?.addAffectedUserIds(userIds);
|
|
98
|
+
const docIds = docsForUsers.map((doc) => doc._id);
|
|
99
|
+
return this.deleteList(docIds, meta);
|
|
100
|
+
}
|
|
69
101
|
}
|
|
70
102
|
//# sourceMappingURL=DashboardBaseWithUserIdRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardBaseWithUserIdRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardBaseWithUserIdRepository.ts"],"names":[],"mappings":"AAIA,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAE1D,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAgB,iCAE5B,SAAQ,uBAAkC;IAC1C,YACE,OAAe,EACf,SAAgC,EAChC,aAA+D;QAE/D,MAAM,oBAAoB,GAAG,CAAC,GAAuB,EAAE,EAAE,CACvD,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvF,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAY;QAC9B,MAAM,
|
|
1
|
+
{"version":3,"file":"DashboardBaseWithUserIdRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardBaseWithUserIdRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,12 +28,22 @@ export default abstract class DashboardBaseWithUserIdRepository<
|
|
|
28
28
|
* @param userId The ID of the user to get items for.
|
|
29
29
|
*/
|
|
30
30
|
async getAllForUser(userId: UUID): Promise<TBaseType[]> {
|
|
31
|
-
const collection = await this.getCollection();
|
|
32
31
|
const filter = {
|
|
33
|
-
|
|
32
|
+
userId
|
|
34
33
|
} as Filter<TBaseType>;
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
return this.getListWithFilter(filter);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Gets all items for given users.
|
|
39
|
+
*
|
|
40
|
+
* @param userIds - The user IDs to get items for.
|
|
41
|
+
*/
|
|
42
|
+
async getAllForUsers(userIds: UUID[]): Promise<TBaseType[]> {
|
|
43
|
+
const filter = {
|
|
44
|
+
userId: { $in: userIds }
|
|
45
|
+
} as Filter<TBaseType>;
|
|
46
|
+
return this.getListWithFilter(filter);
|
|
37
47
|
}
|
|
38
48
|
|
|
39
49
|
override async insertNew(
|
|
@@ -61,6 +71,7 @@ export default abstract class DashboardBaseWithUserIdRepository<
|
|
|
61
71
|
meta?: DbOperationMetaData
|
|
62
72
|
): Promise<UpdateResult> {
|
|
63
73
|
if (meta && updatedDoc._id) {
|
|
74
|
+
// We get the doc again, because it shouldn't include userId in the update doc.
|
|
64
75
|
const docs = await this.fetchAndCacheDocsForMeta([updatedDoc._id], meta);
|
|
65
76
|
if (docs.length > 0) {
|
|
66
77
|
meta.addAffectedUserIds([docs[0].userId]);
|
|
@@ -98,4 +109,28 @@ export default abstract class DashboardBaseWithUserIdRepository<
|
|
|
98
109
|
}
|
|
99
110
|
return super.deleteList(docIds, meta);
|
|
100
111
|
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Deletes all documents for a specific user.
|
|
115
|
+
*
|
|
116
|
+
* @param userId - The user ID to delete documents for.
|
|
117
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
118
|
+
*/
|
|
119
|
+
async deleteAllForUser(userId: UUID, meta?: DbOperationMetaData): Promise<DeleteResult> {
|
|
120
|
+
return this.deleteAllForUsers([userId], meta);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Deletes all documents for specific users.
|
|
125
|
+
*
|
|
126
|
+
* @param userIds - The user IDs to delete documents for.
|
|
127
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
128
|
+
*/
|
|
129
|
+
async deleteAllForUsers(userIds: UUID[], meta?: DbOperationMetaData): Promise<DeleteResult> {
|
|
130
|
+
const docsForUsers = await this.getAllForUsers(userIds);
|
|
131
|
+
meta?.recordDocTypeTouched(this.docType);
|
|
132
|
+
meta?.addAffectedUserIds(userIds);
|
|
133
|
+
const docIds = docsForUsers.map((doc) => doc._id);
|
|
134
|
+
return this.deleteList(docIds, meta);
|
|
135
|
+
}
|
|
101
136
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardNonogramKatanaItemRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,iCAAiC,CAAC,kBAAkB,CAAC;IACtH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAwC;IAEzE,OAAO;IAIP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"DashboardNonogramKatanaItemRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,iCAAiC,CAAC,kBAAkB,CAAC;IACtH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAwC;IAEzE,OAAO;IAIP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAYrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,qCAAqC;CAO/D"}
|
|
@@ -13,20 +13,10 @@ export default class DashboardNonogramKatanaItemRepository extends DashboardBase
|
|
|
13
13
|
const nonogramKatanaRepo = DashboardNonogramKatanaItemRepository.getRepo();
|
|
14
14
|
return {
|
|
15
15
|
deleteOne: async (userId, meta) => {
|
|
16
|
-
await
|
|
17
|
-
userId,
|
|
18
|
-
docType: NonogramKatanaItem_docType
|
|
19
|
-
});
|
|
20
|
-
meta?.recordDocTypeTouched(NonogramKatanaItem_docType);
|
|
21
|
-
meta?.addAffectedUserIds([userId]);
|
|
16
|
+
await nonogramKatanaRepo.deleteAllForUser(userId, meta);
|
|
22
17
|
},
|
|
23
18
|
deleteList: async (userIds, meta) => {
|
|
24
|
-
await
|
|
25
|
-
userId: { $in: userIds },
|
|
26
|
-
docType: NonogramKatanaItem_docType
|
|
27
|
-
});
|
|
28
|
-
meta?.recordDocTypeTouched(NonogramKatanaItem_docType);
|
|
29
|
-
meta?.addAffectedUserIds(userIds);
|
|
19
|
+
await nonogramKatanaRepo.deleteAllForUsers(userIds, meta);
|
|
30
20
|
}
|
|
31
21
|
};
|
|
32
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardNonogramKatanaItemRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,oCAAoC,MAAM,2DAA2D,CAAC;AAC7G,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,iCAAqD;IAC9G,MAAM,CAAC,iBAAiB,CAAyC;IAEzE;QACE,KAAK,CAAC,0BAA0B,EAAE,IAAI,oCAAoC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,kBAAkB,GAAG,qCAAqC,CAAC,OAAO,EAAE,CAAC;QAC3E,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAChC,MAAM,
|
|
1
|
+
{"version":3,"file":"DashboardNonogramKatanaItemRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,oCAAoC,MAAM,2DAA2D,CAAC;AAC7G,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,iCAAqD;IAC9G,MAAM,CAAC,iBAAiB,CAAyC;IAEzE;QACE,KAAK,CAAC,0BAA0B,EAAE,IAAI,oCAAoC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,kBAAkB,GAAG,qCAAqC,CAAC,OAAO,EAAE,CAAC;QAC3E,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAChC,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC1D,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAClC,MAAM,kBAAkB,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC;IACJ,CAAC;IAES,gBAAgB,KAAU,CAAC;IAErC;;OAEG;IACI,MAAM,CAAC,OAAO;QACnB,IAAI,CAAC,qCAAqC,CAAC,iBAAiB,EAAE,CAAC;YAC7D,qCAAqC,CAAC,iBAAiB;gBACrD,IAAI,qCAAqC,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,qCAAqC,CAAC,iBAAiB,CAAC;IACjE,CAAC;CACF"}
|
|
@@ -18,24 +18,10 @@ export default class DashboardNonogramKatanaItemRepository extends DashboardBase
|
|
|
18
18
|
const nonogramKatanaRepo = DashboardNonogramKatanaItemRepository.getRepo();
|
|
19
19
|
return {
|
|
20
20
|
deleteOne: async (userId, meta) => {
|
|
21
|
-
await (
|
|
22
|
-
await nonogramKatanaRepo.getCollection()
|
|
23
|
-
).deleteMany({
|
|
24
|
-
userId,
|
|
25
|
-
docType: NonogramKatanaItem_docType
|
|
26
|
-
});
|
|
27
|
-
meta?.recordDocTypeTouched(NonogramKatanaItem_docType);
|
|
28
|
-
meta?.addAffectedUserIds([userId]);
|
|
21
|
+
await nonogramKatanaRepo.deleteAllForUser(userId, meta);
|
|
29
22
|
},
|
|
30
23
|
deleteList: async (userIds, meta) => {
|
|
31
|
-
await (
|
|
32
|
-
await nonogramKatanaRepo.getCollection()
|
|
33
|
-
).deleteMany({
|
|
34
|
-
userId: { $in: userIds },
|
|
35
|
-
docType: NonogramKatanaItem_docType
|
|
36
|
-
});
|
|
37
|
-
meta?.recordDocTypeTouched(NonogramKatanaItem_docType);
|
|
38
|
-
meta?.addAffectedUserIds(userIds);
|
|
24
|
+
await nonogramKatanaRepo.deleteAllForUsers(userIds, meta);
|
|
39
25
|
}
|
|
40
26
|
};
|
|
41
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,iCAAiC,CAAC,qBAAqB,CAAC;IAC5H,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAuD;IAEvF,OAAO;IAIP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,iCAAiC,CAAC,qBAAqB,CAAC;IAC5H,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAuD;IAEvF,OAAO;IAIP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAYrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,wCAAwC;CAOlE"}
|
|
@@ -13,20 +13,10 @@ export default class DashboardNonogramKatanaUpgradeRepository extends DashboardB
|
|
|
13
13
|
const upgradeRepo = DashboardNonogramKatanaUpgradeRepository.getRepo();
|
|
14
14
|
return {
|
|
15
15
|
deleteOne: async (userId, meta) => {
|
|
16
|
-
await
|
|
17
|
-
userId,
|
|
18
|
-
docType: NonogramKatanaUpgrade_docType
|
|
19
|
-
});
|
|
20
|
-
meta?.recordDocTypeTouched(NonogramKatanaUpgrade_docType);
|
|
21
|
-
meta?.addAffectedUserIds([userId]);
|
|
16
|
+
await upgradeRepo.deleteAllForUser(userId, meta);
|
|
22
17
|
},
|
|
23
18
|
deleteList: async (userIds, meta) => {
|
|
24
|
-
await
|
|
25
|
-
userId: { $in: userIds },
|
|
26
|
-
docType: NonogramKatanaUpgrade_docType
|
|
27
|
-
});
|
|
28
|
-
meta?.recordDocTypeTouched(NonogramKatanaUpgrade_docType);
|
|
29
|
-
meta?.addAffectedUserIds(userIds);
|
|
19
|
+
await upgradeRepo.deleteAllForUsers(userIds, meta);
|
|
30
20
|
}
|
|
31
21
|
};
|
|
32
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,uCAAuC,MAAM,8DAA8D,CAAC;AACnH,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,iCAAwD;IACpH,MAAM,CAAC,iBAAiB,CAAuD;IAEvF;QACE,KAAK,CAAC,6BAA6B,EAAE,IAAI,uCAAuC,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,WAAW,GAAG,wCAAwC,CAAC,OAAO,EAAE,CAAC;QACvE,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAChC,MAAM,
|
|
1
|
+
{"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,uCAAuC,MAAM,8DAA8D,CAAC;AACnH,OAAO,iCAAiC,MAAM,wCAAwC,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,iCAAwD;IACpH,MAAM,CAAC,iBAAiB,CAAuD;IAEvF;QACE,KAAK,CAAC,6BAA6B,EAAE,IAAI,uCAAuC,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,WAAW,GAAG,wCAAwC,CAAC,OAAO,EAAE,CAAC;QACvE,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAChC,MAAM,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACnD,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAClC,MAAM,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;IACJ,CAAC;IAES,gBAAgB,KAAU,CAAC;IAErC;;OAEG;IACI,MAAM,CAAC,OAAO;QACnB,IAAI,CAAC,wCAAwC,CAAC,iBAAiB,EAAE,CAAC;YAChE,wCAAwC,CAAC,iBAAiB;gBACxD,IAAI,wCAAwC,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,wCAAwC,CAAC,iBAAiB,CAAC;IACpE,CAAC;CACF"}
|
|
@@ -18,24 +18,10 @@ export default class DashboardNonogramKatanaUpgradeRepository extends DashboardB
|
|
|
18
18
|
const upgradeRepo = DashboardNonogramKatanaUpgradeRepository.getRepo();
|
|
19
19
|
return {
|
|
20
20
|
deleteOne: async (userId, meta) => {
|
|
21
|
-
await (
|
|
22
|
-
await upgradeRepo.getCollection()
|
|
23
|
-
).deleteMany({
|
|
24
|
-
userId,
|
|
25
|
-
docType: NonogramKatanaUpgrade_docType
|
|
26
|
-
});
|
|
27
|
-
meta?.recordDocTypeTouched(NonogramKatanaUpgrade_docType);
|
|
28
|
-
meta?.addAffectedUserIds([userId]);
|
|
21
|
+
await upgradeRepo.deleteAllForUser(userId, meta);
|
|
29
22
|
},
|
|
30
23
|
deleteList: async (userIds, meta) => {
|
|
31
|
-
await (
|
|
32
|
-
await upgradeRepo.getCollection()
|
|
33
|
-
).deleteMany({
|
|
34
|
-
userId: { $in: userIds },
|
|
35
|
-
docType: NonogramKatanaUpgrade_docType
|
|
36
|
-
});
|
|
37
|
-
meta?.recordDocTypeTouched(NonogramKatanaUpgrade_docType);
|
|
38
|
-
meta?.addAffectedUserIds(userIds);
|
|
24
|
+
await upgradeRepo.deleteAllForUsers(userIds, meta);
|
|
39
25
|
}
|
|
40
26
|
};
|
|
41
27
|
}
|
|
@@ -65,5 +65,19 @@ export default class DashboardTaskRepository extends DashboardBaseWithUserIdRepo
|
|
|
65
65
|
* @returns The list of task IDs to delete.
|
|
66
66
|
*/
|
|
67
67
|
private getAllTaskIDsToDelete;
|
|
68
|
+
/**
|
|
69
|
+
* Deletes all tasks for a user and cleans up assignedTo references.
|
|
70
|
+
*
|
|
71
|
+
* @param userId - The user ID to delete tasks for.
|
|
72
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
73
|
+
*/
|
|
74
|
+
deleteAllForUserWithCleanup(userId: UUID, meta?: DbOperationMetaData): Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* Deletes all tasks for users and cleans up assignedTo references.
|
|
77
|
+
*
|
|
78
|
+
* @param userIds - The user IDs to delete tasks for.
|
|
79
|
+
* @param meta - Tracks database operation metadata for a single request.
|
|
80
|
+
*/
|
|
81
|
+
deleteAllForUsersWithCleanup(userIds: UUID[], meta?: DbOperationMetaData): Promise<void>;
|
|
68
82
|
}
|
|
69
83
|
//# sourceMappingURL=DashboardTaskRepository.d.ts.map
|