@aneuhold/be-ts-db-lib 2.0.85 → 3.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.
Files changed (77) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/lib/repositories/BaseRepository.d.ts +10 -11
  3. package/lib/repositories/BaseRepository.d.ts.map +1 -1
  4. package/lib/repositories/BaseRepository.js +6 -7
  5. package/lib/repositories/BaseRepository.js.map +1 -1
  6. package/lib/repositories/BaseRepository.ts +13 -14
  7. package/lib/repositories/common/UserRepository.d.ts +2 -2
  8. package/lib/repositories/common/UserRepository.d.ts.map +1 -1
  9. package/lib/repositories/common/UserRepository.js +0 -1
  10. package/lib/repositories/common/UserRepository.js.map +1 -1
  11. package/lib/repositories/common/UserRepository.ts +2 -2
  12. package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.d.ts +2 -2
  13. package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.d.ts.map +1 -1
  14. package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.js +0 -1
  15. package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.js.map +1 -1
  16. package/lib/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts +2 -2
  17. package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.d.ts +2 -2
  18. package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.d.ts.map +1 -1
  19. package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.js +0 -1
  20. package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.js.map +1 -1
  21. package/lib/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts +2 -2
  22. package/lib/repositories/dashboard/DashboardTaskRepository.d.ts +4 -4
  23. package/lib/repositories/dashboard/DashboardTaskRepository.d.ts.map +1 -1
  24. package/lib/repositories/dashboard/DashboardTaskRepository.js +0 -1
  25. package/lib/repositories/dashboard/DashboardTaskRepository.js.map +1 -1
  26. package/lib/repositories/dashboard/DashboardTaskRepository.ts +5 -5
  27. package/lib/repositories/dashboard/DashboardUserConfigRepository.d.ts +2 -2
  28. package/lib/repositories/dashboard/DashboardUserConfigRepository.d.ts.map +1 -1
  29. package/lib/repositories/dashboard/DashboardUserConfigRepository.js +1 -2
  30. package/lib/repositories/dashboard/DashboardUserConfigRepository.js.map +1 -1
  31. package/lib/repositories/dashboard/DashboardUserConfigRepository.ts +4 -4
  32. package/lib/services/DemoAccountsService/DashboardDemoAccountsService.d.ts +2 -2
  33. package/lib/services/DemoAccountsService/DashboardDemoAccountsService.d.ts.map +1 -1
  34. package/lib/services/DemoAccountsService/DashboardDemoAccountsService.js +2 -3
  35. package/lib/services/DemoAccountsService/DashboardDemoAccountsService.js.map +1 -1
  36. package/lib/services/DemoAccountsService/DashboardDemoAccountsService.ts +13 -13
  37. package/lib/services/DemoAccountsService/DemoAccountsService.d.ts +2 -2
  38. package/lib/services/DemoAccountsService/DemoAccountsService.d.ts.map +1 -1
  39. package/lib/services/DemoAccountsService/DemoAccountsService.js +0 -1
  40. package/lib/services/DemoAccountsService/DemoAccountsService.js.map +1 -1
  41. package/lib/services/DemoAccountsService/DemoAccountsService.ts +2 -5
  42. package/lib/services/MigrationService.d.ts.map +1 -1
  43. package/lib/services/MigrationService.js +151 -19
  44. package/lib/services/MigrationService.js.map +1 -1
  45. package/lib/services/MigrationService.ts +178 -21
  46. package/lib/services/RepoSubscriptionService.d.ts +3 -3
  47. package/lib/services/RepoSubscriptionService.d.ts.map +1 -1
  48. package/lib/services/RepoSubscriptionService.js +0 -1
  49. package/lib/services/RepoSubscriptionService.js.map +1 -1
  50. package/lib/services/RepoSubscriptionService.ts +3 -3
  51. package/lib/validators/BaseValidator.d.ts +2 -2
  52. package/lib/validators/BaseValidator.d.ts.map +1 -1
  53. package/lib/validators/BaseValidator.js +1 -2
  54. package/lib/validators/BaseValidator.js.map +1 -1
  55. package/lib/validators/BaseValidator.ts +4 -4
  56. package/lib/validators/common/ApiKeyValidator.d.ts.map +1 -1
  57. package/lib/validators/common/ApiKeyValidator.js +6 -7
  58. package/lib/validators/common/ApiKeyValidator.js.map +1 -1
  59. package/lib/validators/common/ApiKeyValidator.ts +8 -15
  60. package/lib/validators/common/UserValidator.d.ts.map +1 -1
  61. package/lib/validators/common/UserValidator.js +2 -3
  62. package/lib/validators/common/UserValidator.js.map +1 -1
  63. package/lib/validators/common/UserValidator.ts +4 -6
  64. package/lib/validators/dashboard/NonogramKatanaItemValidator.js +4 -5
  65. package/lib/validators/dashboard/NonogramKatanaItemValidator.js.map +1 -1
  66. package/lib/validators/dashboard/NonogramKatanaItemValidator.ts +6 -6
  67. package/lib/validators/dashboard/NonogramKatanaUpgradeValidator.js +4 -5
  68. package/lib/validators/dashboard/NonogramKatanaUpgradeValidator.js.map +1 -1
  69. package/lib/validators/dashboard/NonogramKatanaUpgradeValidator.ts +6 -6
  70. package/lib/validators/dashboard/TaskValidator.js +8 -9
  71. package/lib/validators/dashboard/TaskValidator.js.map +1 -1
  72. package/lib/validators/dashboard/TaskValidator.ts +10 -10
  73. package/lib/validators/dashboard/UserConfigValidator.d.ts.map +1 -1
  74. package/lib/validators/dashboard/UserConfigValidator.js +9 -10
  75. package/lib/validators/dashboard/UserConfigValidator.js.map +1 -1
  76. package/lib/validators/dashboard/UserConfigValidator.ts +11 -16
  77. package/package.json +10 -7
package/CHANGELOG.md CHANGED
@@ -5,6 +5,15 @@ 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
+ ## 🔖 [3.0.0] (2025-11-23)
9
+
10
+ ### 🏗️ Changed
11
+
12
+ _Breaking Change:_ Migrated all document, repository, and validator code from using `ObjectId` (from `bson`) to native `UUID` (from `crypto`), including all type signatures, constructors, and internal logic.
13
+ _Breaking Change:_ Updated all references, tests, and utility functions to use `UUID` instead of `ObjectId`.
14
+ Added migration utilities and scripts to support conversion of existing data from `ObjectId` to `UUID v7`.
15
+ Updated dependencies: now requires `@aneuhold/core-ts-db-lib@^3.0.0`, `@aneuhold/core-ts-lib@^2.3.11`, and `@aneuhold/be-ts-lib@^3.0.0`.
16
+
8
17
  ## 🔖 [2.0.85] (2025-11-09)
9
18
 
10
19
  ### 🏗️ Changed
@@ -85,6 +94,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
85
94
 
86
95
  <!-- Link References -->
87
96
 
97
+ [3.0.0]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v2.0.85...be-ts-db-lib-v3.0.0
88
98
  [2.0.85]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v2.0.84...be-ts-db-lib-v2.0.85
89
99
  [2.0.84]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v2.0.83...be-ts-db-lib-v2.0.84
90
100
  [2.0.83]: https://github.com/aneuhold/ts-libs/compare/be-ts-db-lib-v2.0.82...be-ts-db-lib-v2.0.83
@@ -1,12 +1,14 @@
1
1
  import { BaseDocument } from '@aneuhold/core-ts-db-lib';
2
- import type { Document } from 'bson';
3
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
4
3
  import type { BulkWriteResult, Collection, DeleteResult, Filter, UpdateResult } from 'mongodb';
5
4
  import type { RepoListeners, RepoSubscribers } from '../services/RepoSubscriptionService.js';
6
5
  import IValidator from '../validators/BaseValidator.js';
7
6
  /**
8
7
  * Base repository class for handling common database operations.
9
8
  *
9
+ * Implementation note: I have tried to do the types correctly here, but kept struggling with
10
+ * MongoDB's types around Filter<T> and _id fields.
11
+ *
10
12
  * @template TBasetype - The type of the documents in the collection.
11
13
  */
12
14
  export default abstract class BaseRepository<TBasetype extends BaseDocument> {
@@ -80,21 +82,21 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
80
82
  * @param docIds - The IDs of the documents to retrieve.
81
83
  * @returns An array of matching documents.
82
84
  */
83
- getList(docIds: ObjectId[]): Promise<TBasetype[]>;
85
+ getList(docIds: UUID[]): Promise<TBasetype[]>;
84
86
  /**
85
87
  * Deletes a document by its ID.
86
88
  *
87
89
  * @param docId - The ID of the document to delete.
88
90
  * @returns The result of the delete operation.
89
91
  */
90
- delete(docId: ObjectId): Promise<DeleteResult>;
92
+ delete(docId: UUID): Promise<DeleteResult>;
91
93
  /**
92
94
  * Deletes multiple documents by their IDs.
93
95
  *
94
96
  * @param docIds - The IDs of the documents to delete.
95
97
  * @returns The result of the delete operation.
96
98
  */
97
- deleteList(docIds: ObjectId[]): Promise<DeleteResult>;
99
+ deleteList(docIds: UUID[]): Promise<DeleteResult>;
98
100
  /**
99
101
  * This should not be used except for testing purposes
100
102
  *
@@ -122,21 +124,18 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
122
124
  /**
123
125
  * Gets the filter with the default filter applied if there is one.
124
126
  *
125
- * This is purposefully changing the type because of some weird restrictions
126
- * with the `mongodb` package types.
127
- *
128
127
  * @param filter - The filter to apply.
129
128
  * @returns The filter with the default filter applied.
130
129
  */
131
- protected getFilterWithDefault(filter?: Filter<Document>): Filter<Document>;
130
+ protected getFilterWithDefault(filter?: Filter<TBasetype>): Filter<TBasetype>;
132
131
  /**
133
- * Checks if two arrays of {@link ObjectId} are equal.
132
+ * Checks if two arrays of {@link UUID} are equal.
134
133
  *
135
134
  * @param array1 - The first array.
136
135
  * @param array2 - The second array.
137
136
  * @returns True if the arrays are equal, false otherwise.
138
137
  */
139
- protected objectIdArraysAreEqual(array1: ObjectId[], array2: ObjectId[]): boolean;
138
+ protected uuidArraysAreEqual(array1: UUID[], array2: UUID[]): boolean;
140
139
  /**
141
140
  * Cleans the update object by removing the `_id` field and running the
142
141
  * default update cleaner if there is one.
@@ -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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"}
@@ -1,5 +1,4 @@
1
1
  import { BaseDocument } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import RepoSubscriptionService from '../services/RepoSubscriptionService.js';
4
3
  import DocumentCleaner from '../util/DocumentCleaner.js';
5
4
  import DocumentDb from '../util/DocumentDb.js';
@@ -7,6 +6,9 @@ import IValidator from '../validators/BaseValidator.js';
7
6
  /**
8
7
  * Base repository class for handling common database operations.
9
8
  *
9
+ * Implementation note: I have tried to do the types correctly here, but kept struggling with
10
+ * MongoDB's types around Filter<T> and _id fields.
11
+ *
10
12
  * @template TBasetype - The type of the documents in the collection.
11
13
  */
12
14
  export default class BaseRepository {
@@ -128,7 +130,7 @@ export default class BaseRepository {
128
130
  async getAllIdsAsHash() {
129
131
  const allDocs = await this.getAll();
130
132
  return allDocs.reduce((acc, doc) => {
131
- acc[doc._id.toString()] = true;
133
+ acc[doc._id] = true;
132
134
  return acc;
133
135
  }, {});
134
136
  }
@@ -225,9 +227,6 @@ export default class BaseRepository {
225
227
  /**
226
228
  * Gets the filter with the default filter applied if there is one.
227
229
  *
228
- * This is purposefully changing the type because of some weird restrictions
229
- * with the `mongodb` package types.
230
- *
231
230
  * @param filter - The filter to apply.
232
231
  * @returns The filter with the default filter applied.
233
232
  */
@@ -238,13 +237,13 @@ export default class BaseRepository {
238
237
  return { ...filter, ...this.defaultFilter };
239
238
  }
240
239
  /**
241
- * Checks if two arrays of {@link ObjectId} are equal.
240
+ * Checks if two arrays of {@link UUID} are equal.
242
241
  *
243
242
  * @param array1 - The first array.
244
243
  * @param array2 - The second array.
245
244
  * @returns True if the arrays are equal, false otherwise.
246
245
  */
247
- objectIdArraysAreEqual(array1, array2) {
246
+ uuidArraysAreEqual(array1, array2) {
248
247
  if (array1.length !== array2.length) {
249
248
  return false;
250
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRepository.js","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseRepository.js","sourceRoot":"","sources":["../../src/repositories/BaseRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAYxD,OAAO,uBAAuB,MAAM,wCAAwC,CAAC;AAC7E,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAC/C,OAAO,UAAU,MAAM,gCAAgC,CAAC;AAExD;;;;;;;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;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,MAAiB;QAC/B,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,CAAC,CAAC,CAAC,CAAC;QACtF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,OAAoB;QACnC,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,CAAC,CAAC,CAAC,CAAC;QACxF,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,CAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC5D,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;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,KAAW;QACtB,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,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAuB,CAAC,CAAC;IACnE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,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,CAAC,CAAC,CAAC,CAAC;QACvF,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;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CAAC,UAA8B;QACzC,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,CAAC,CAAC,CAAC,CAAC;QAC1F,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,WAAsC;QACrD,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,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAE5F,OAAO,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvC,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,6 +1,5 @@
1
1
  import { BaseDocument } from '@aneuhold/core-ts-db-lib';
2
- import type { Document } from 'bson';
3
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
4
3
  import type {
5
4
  AnyBulkWriteOperation,
6
5
  BulkWriteResult,
@@ -19,6 +18,9 @@ import IValidator from '../validators/BaseValidator.js';
19
18
  /**
20
19
  * Base repository class for handling common database operations.
21
20
  *
21
+ * Implementation note: I have tried to do the types correctly here, but kept struggling with
22
+ * MongoDB's types around Filter<T> and _id fields.
23
+ *
22
24
  * @template TBasetype - The type of the documents in the collection.
23
25
  */
24
26
  export default abstract class BaseRepository<TBasetype extends BaseDocument> {
@@ -130,7 +132,7 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
130
132
  */
131
133
  async get(filter: Partial<TBasetype>): Promise<TBasetype | null> {
132
134
  const collection = await this.getCollection();
133
- const result = await collection.findOne(this.getFilterWithDefault(filter));
135
+ const result = await collection.findOne(this.getFilterWithDefault(filter as Filter<TBasetype>));
134
136
  return result as TBasetype | null;
135
137
  }
136
138
 
@@ -154,7 +156,7 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
154
156
  async getAllIdsAsHash(): Promise<{ [id: string]: boolean }> {
155
157
  const allDocs = await this.getAll();
156
158
  return allDocs.reduce<{ [id: string]: boolean }>((acc, doc) => {
157
- acc[doc._id.toString()] = true;
159
+ acc[doc._id] = true;
158
160
  return acc;
159
161
  }, {});
160
162
  }
@@ -165,10 +167,10 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
165
167
  * @param docIds - The IDs of the documents to retrieve.
166
168
  * @returns An array of matching documents.
167
169
  */
168
- async getList(docIds: ObjectId[]): Promise<TBasetype[]> {
170
+ async getList(docIds: UUID[]): Promise<TBasetype[]> {
169
171
  const collection = await this.getCollection();
170
172
  const result = await collection
171
- .find(this.getFilterWithDefault({ _id: { $in: docIds } }))
173
+ .find(this.getFilterWithDefault({ _id: { $in: docIds } } as Filter<TBasetype>))
172
174
  .toArray();
173
175
  return result as TBasetype[];
174
176
  }
@@ -179,7 +181,7 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
179
181
  * @param docId - The ID of the document to delete.
180
182
  * @returns The result of the delete operation.
181
183
  */
182
- async delete(docId: ObjectId): Promise<DeleteResult> {
184
+ async delete(docId: UUID): Promise<DeleteResult> {
183
185
  const collection = await this.getCollection();
184
186
  await Promise.all(this.subscribers.deleteOne.map((subscriber) => subscriber(docId)));
185
187
  return collection.deleteOne({ _id: docId } as Filter<TBasetype>);
@@ -191,7 +193,7 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
191
193
  * @param docIds - The IDs of the documents to delete.
192
194
  * @returns The result of the delete operation.
193
195
  */
194
- async deleteList(docIds: ObjectId[]): Promise<DeleteResult> {
196
+ async deleteList(docIds: UUID[]): Promise<DeleteResult> {
195
197
  const collection = await this.getCollection();
196
198
  const deleteResult = collection.deleteMany({
197
199
  _id: { $in: docIds }
@@ -264,13 +266,10 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
264
266
  /**
265
267
  * Gets the filter with the default filter applied if there is one.
266
268
  *
267
- * This is purposefully changing the type because of some weird restrictions
268
- * with the `mongodb` package types.
269
- *
270
269
  * @param filter - The filter to apply.
271
270
  * @returns The filter with the default filter applied.
272
271
  */
273
- protected getFilterWithDefault(filter: Filter<Document> = {}): Filter<Document> {
272
+ protected getFilterWithDefault(filter: Filter<TBasetype> = {}): Filter<TBasetype> {
274
273
  if (!this.defaultFilter) {
275
274
  return filter;
276
275
  }
@@ -278,13 +277,13 @@ export default abstract class BaseRepository<TBasetype extends BaseDocument> {
278
277
  }
279
278
 
280
279
  /**
281
- * Checks if two arrays of {@link ObjectId} are equal.
280
+ * Checks if two arrays of {@link UUID} are equal.
282
281
  *
283
282
  * @param array1 - The first array.
284
283
  * @param array2 - The second array.
285
284
  * @returns True if the arrays are equal, false otherwise.
286
285
  */
287
- protected objectIdArraysAreEqual(array1: ObjectId[], array2: ObjectId[]): boolean {
286
+ protected uuidArraysAreEqual(array1: UUID[], array2: UUID[]): boolean {
288
287
  if (array1.length !== array2.length) {
289
288
  return false;
290
289
  }
@@ -1,6 +1,6 @@
1
1
  import type { UserCTO } from '@aneuhold/core-ts-db-lib';
2
2
  import { User } from '@aneuhold/core-ts-db-lib';
3
- import { ObjectId } from 'bson';
3
+ import type { UUID } from 'crypto';
4
4
  import BaseRepository from '../BaseRepository.js';
5
5
  /**
6
6
  * The repository that contains {@link User} documents.
@@ -15,6 +15,6 @@ export default class UserRepository extends BaseRepository<User> {
15
15
  */
16
16
  static getRepo(): UserRepository;
17
17
  getUserCTOByUsername(userName: string): Promise<UserCTO | null>;
18
- getUserCTOsByIds(userIds: ObjectId[]): Promise<UserCTO[]>;
18
+ getUserCTOsByIds(userIds: UUID[]): Promise<UserCTO[]>;
19
19
  }
20
20
  //# sourceMappingURL=UserRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAOlD;;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;IAQlC;;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,QAAQ,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAOhE"}
1
+ {"version":3,"file":"UserRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAOlD;;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;IAQlC;;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"}
@@ -1,5 +1,4 @@
1
1
  import { User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import UserValidator from '../../validators/common/UserValidator.js';
4
3
  import BaseRepository from '../BaseRepository.js';
5
4
  import DashboardNonogramKatanaItemRepository from '../dashboard/DashboardNonogramKatanaItemRepository.js';
@@ -1 +1 @@
1
- {"version":3,"file":"UserRepository.js","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,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;IAC9F,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;YACtC,cAAc,CAAC,iBAAiB,GAAG,IAAI,cAAc,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,cAAc,CAAC,iBAAiB,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACzC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAmB;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC,CAAC;IACN,CAAC"}
1
+ {"version":3,"file":"UserRepository.js","sourceRoot":"","sources":["../../../src/repositories/common/UserRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEhD,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;IAC9F,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;YACtC,cAAc,CAAC,iBAAiB,GAAG,IAAI,cAAc,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,cAAc,CAAC,iBAAiB,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACzC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAe;QACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC,CAAC;IACN,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { UserCTO } from '@aneuhold/core-ts-db-lib';
2
2
  import { User } from '@aneuhold/core-ts-db-lib';
3
- import { ObjectId } from 'bson';
3
+ import type { UUID } from 'crypto';
4
4
  import UserValidator from '../../validators/common/UserValidator.js';
5
5
  import BaseRepository from '../BaseRepository.js';
6
6
  import DashboardNonogramKatanaItemRepository from '../dashboard/DashboardNonogramKatanaItemRepository.js';
@@ -50,7 +50,7 @@ export default class UserRepository extends BaseRepository<User> {
50
50
  return null;
51
51
  }
52
52
 
53
- async getUserCTOsByIds(userIds: ObjectId[]): Promise<UserCTO[]> {
53
+ async getUserCTOsByIds(userIds: UUID[]): Promise<UserCTO[]> {
54
54
  const users = await this.getList(userIds);
55
55
  return users.map((user) => ({
56
56
  userName: user.userName,
@@ -1,5 +1,5 @@
1
1
  import { NonogramKatanaItem, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
4
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
5
5
  /**
@@ -19,6 +19,6 @@ export default class DashboardNonogramKatanaItemRepository extends DashboardBase
19
19
  *
20
20
  * @param userId The ID of the user to get items for.
21
21
  */
22
- getAllForUser(userId: ObjectId): Promise<NonogramKatanaItem[]>;
22
+ getAllForUser(userId: UUID): Promise<NonogramKatanaItem[]>;
23
23
  }
24
24
  //# sourceMappingURL=DashboardNonogramKatanaItemRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardNonogramKatanaItemRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,uBAAuB,CAAC,kBAAkB,CAAC;IAC5G,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAwC;IAEzE,OAAO;IAQP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAgBrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,qCAAqC;IAQ9D;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAQrE"}
1
+ {"version":3,"file":"DashboardNonogramKatanaItemRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,uBAAuB,CAAC,kBAAkB,CAAC;IAC5G,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAwC;IAEzE,OAAO;IAQP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAgBrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,qCAAqC;IAQ9D;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAQjE"}
@@ -1,5 +1,4 @@
1
1
  import { NonogramKatanaItem, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import CleanDocument from '../../util/DocumentCleaner.js';
4
3
  import DashboardNonogramKatanaItemValidator from '../../validators/dashboard/NonogramKatanaItemValidator.js';
5
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardNonogramKatanaItemRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,oCAAoC,MAAM,2DAA2D,CAAC;AAC7G,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,uBAA2C;IACpG,MAAM,CAAC,iBAAiB,CAAyC;IAEzE;QACE,KAAK,CACH,kBAAkB,CAAC,OAAO,EAC1B,IAAI,oCAAoC,EAAE,EAC1C,aAAa,CAAC,MAAM,CACrB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,kBAAkB,GAAG,qCAAqC,CAAC,OAAO,EAAE,CAAC;QAC3E,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,CAAC,MAAM,kBAAkB,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC5B,MAAM,CACJ,MAAM,kBAAkB,CAAC,aAAa,EAAE,CACzC,CAAC,UAAU,CAAC;oBACX,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;iBACzB,CAAC,CAAC;YACL,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;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAgB;QAClC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACvD,OAAO,MAA8B,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"DashboardNonogramKatanaItemRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaItemRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,oCAAoC,MAAM,2DAA2D,CAAC;AAC7G,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,qCAAsC,SAAQ,uBAA2C;IACpG,MAAM,CAAC,iBAAiB,CAAyC;IAEzE;QACE,KAAK,CACH,kBAAkB,CAAC,OAAO,EAC1B,IAAI,oCAAoC,EAAE,EAC1C,aAAa,CAAC,MAAM,CACrB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,kBAAkB,GAAG,qCAAqC,CAAC,OAAO,EAAE,CAAC;QAC3E,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,CAAC,MAAM,kBAAkB,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC5B,MAAM,CACJ,MAAM,kBAAkB,CAAC,aAAa,EAAE,CACzC,CAAC,UAAU,CAAC;oBACX,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;iBACzB,CAAC,CAAC;YACL,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;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAY;QAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACvD,OAAO,MAA8B,CAAC;IACxC,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { NonogramKatanaItem, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
4
4
  import CleanDocument from '../../util/DocumentCleaner.js';
5
5
  import DashboardNonogramKatanaItemValidator from '../../validators/dashboard/NonogramKatanaItemValidator.js';
@@ -53,7 +53,7 @@ export default class DashboardNonogramKatanaItemRepository extends DashboardBase
53
53
  *
54
54
  * @param userId The ID of the user to get items for.
55
55
  */
56
- async getAllForUser(userId: ObjectId): Promise<NonogramKatanaItem[]> {
56
+ async getAllForUser(userId: UUID): Promise<NonogramKatanaItem[]> {
57
57
  const collection = await this.getCollection();
58
58
  const filter = {
59
59
  $and: [this.getFilterWithDefault(), { userId }]
@@ -1,5 +1,5 @@
1
1
  import { NonogramKatanaUpgrade, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
4
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
5
5
  /**
@@ -19,6 +19,6 @@ export default class DashboardNonogramKatanaUpgradeRepository extends DashboardB
19
19
  *
20
20
  * @param userId The ID of the user to get upgrades for.
21
21
  */
22
- getAllForUser(userId: ObjectId): Promise<NonogramKatanaUpgrade[]>;
22
+ getAllForUser(userId: UUID): Promise<NonogramKatanaUpgrade[]>;
23
23
  }
24
24
  //# sourceMappingURL=DashboardNonogramKatanaUpgradeRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,uBAAuB,CAAC,qBAAqB,CAAC;IAClH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAuD;IAEvF,OAAO;IAQP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAgBrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,wCAAwC;IAQjE;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;CAQxE"}
1
+ {"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,uBAAuB,CAAC,qBAAqB,CAAC;IAClH,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAuD;IAEvF,OAAO;IAQP,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAgBrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;OAEG;WACW,OAAO,IAAI,wCAAwC;IAQjE;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;CAQpE"}
@@ -1,5 +1,4 @@
1
1
  import { NonogramKatanaUpgrade, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import CleanDocument from '../../util/DocumentCleaner.js';
4
3
  import DashboardNonogramKatanaUpgradeValidator from '../../validators/dashboard/NonogramKatanaUpgradeValidator.js';
5
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,uCAAuC,MAAM,8DAA8D,CAAC;AACnH,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,uBAA8C;IAC1G,MAAM,CAAC,iBAAiB,CAAuD;IAEvF;QACE,KAAK,CACH,qBAAqB,CAAC,OAAO,EAC7B,IAAI,uCAAuC,EAAE,EAC7C,aAAa,CAAC,MAAM,CACrB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,WAAW,GAAG,wCAAwC,CAAC,OAAO,EAAE,CAAC;QACvE,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,CAAC,MAAM,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC5B,MAAM,CACJ,MAAM,WAAW,CAAC,aAAa,EAAE,CAClC,CAAC,UAAU,CAAC;oBACX,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;iBACzB,CAAC,CAAC;YACL,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;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAgB;QAClC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACvD,OAAO,MAAiC,CAAC;IAC3C,CAAC;CACF"}
1
+ {"version":3,"file":"DashboardNonogramKatanaUpgradeRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardNonogramKatanaUpgradeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAGvE,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,uCAAuC,MAAM,8DAA8D,CAAC;AACnH,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,wCAAyC,SAAQ,uBAA8C;IAC1G,MAAM,CAAC,iBAAiB,CAAuD;IAEvF;QACE,KAAK,CACH,qBAAqB,CAAC,OAAO,EAC7B,IAAI,uCAAuC,EAAE,EAC7C,aAAa,CAAC,MAAM,CACrB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,MAAM,WAAW,GAAG,wCAAwC,CAAC,OAAO,EAAE,CAAC;QACvE,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,CAAC,MAAM,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC5B,MAAM,CACJ,MAAM,WAAW,CAAC,aAAa,EAAE,CAClC,CAAC,UAAU,CAAC;oBACX,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;iBACzB,CAAC,CAAC;YACL,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;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAY;QAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACvD,OAAO,MAAiC,CAAC;IAC3C,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { NonogramKatanaUpgrade, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
4
4
  import CleanDocument from '../../util/DocumentCleaner.js';
5
5
  import DashboardNonogramKatanaUpgradeValidator from '../../validators/dashboard/NonogramKatanaUpgradeValidator.js';
@@ -53,7 +53,7 @@ export default class DashboardNonogramKatanaUpgradeRepository extends DashboardB
53
53
  *
54
54
  * @param userId The ID of the user to get upgrades for.
55
55
  */
56
- async getAllForUser(userId: ObjectId): Promise<NonogramKatanaUpgrade[]> {
56
+ async getAllForUser(userId: UUID): Promise<NonogramKatanaUpgrade[]> {
57
57
  const collection = await this.getCollection();
58
58
  const filter = {
59
59
  $and: [this.getFilterWithDefault(), { userId }]
@@ -1,5 +1,5 @@
1
1
  import { DashboardTask, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { DeleteResult } from 'mongodb';
4
4
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
5
5
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -33,14 +33,14 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
33
33
  * @param docId The ID of the document to delete.
34
34
  * @returns The result of the delete operation.
35
35
  */
36
- delete(docId: ObjectId): Promise<DeleteResult>;
36
+ delete(docId: UUID): Promise<DeleteResult>;
37
37
  /**
38
38
  * Deletes a list of tasks and all children of those tasks.
39
39
  *
40
40
  * @param docIds The IDs of the documents to delete.
41
41
  * @returns The result of the delete operation.
42
42
  */
43
- deleteList(docIds: ObjectId[]): Promise<DeleteResult>;
43
+ deleteList(docIds: UUID[]): Promise<DeleteResult>;
44
44
  /**
45
45
  * Gets all tasks for a given user. Only the tasks that are owned by the user
46
46
  * or shared with the user, while they have the user ID as a collaborator,
@@ -49,7 +49,7 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
49
49
  * @param userId The ID of the user to get tasks for.
50
50
  * @returns The list of tasks for the user.
51
51
  */
52
- getAllForUser(userId: ObjectId): Promise<DashboardTask[]>;
52
+ getAllForUser(userId: UUID): Promise<DashboardTask[]>;
53
53
  /**
54
54
  * Gets all the task IDs that need to be deleted if the provided list of
55
55
  * tasks is deleted.
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardTaskRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardTaskRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwB,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAGnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,uBAAuB,CAAC,aAAa,CAAC;IACzF,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAA0B;IAE3D;;OAEG;IACH,OAAO;IASP;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IA4BrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;;;OAIG;WACW,OAAO,IAAI,uBAAuB;IAOhD;;;;;;OAMG;IACY,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IAM7D;;;;;OAKG;IACY,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAMpE;;;;;;;OAOG;IACG,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAyB/D;;;;;;OAMG;YACW,qBAAqB;CAYpC"}
1
+ {"version":3,"file":"DashboardTaskRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardTaskRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwB,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAGnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,uBAAuB,CAAC,aAAa,CAAC;IACzF,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAA0B;IAE3D;;OAEG;IACH,OAAO;IASP;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IA4BrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;;;OAIG;WACW,OAAO,IAAI,uBAAuB;IAOhD;;;;;;OAMG;IACY,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAMzD;;;;;OAKG;IACY,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAMhE;;;;;;;OAOG;IACG,aAAa,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAyB3D;;;;;;OAMG;YACW,qBAAqB;CAYpC"}
@@ -1,5 +1,4 @@
1
1
  import { DashboardTask, DashboardTaskService, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import CleanDocument from '../../util/DocumentCleaner.js';
4
3
  import DashboardTaskValidator from '../../validators/dashboard/TaskValidator.js';
5
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardTaskRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardTaskRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DashboardTaskRepository.js","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardTaskRepository.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { DashboardTask, DashboardTaskService, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { DeleteResult } from 'mongodb';
4
4
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
5
5
  import CleanDocument from '../../util/DocumentCleaner.js';
@@ -80,7 +80,7 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
80
80
  * @param docId The ID of the document to delete.
81
81
  * @returns The result of the delete operation.
82
82
  */
83
- override async delete(docId: ObjectId): Promise<DeleteResult> {
83
+ override async delete(docId: UUID): Promise<DeleteResult> {
84
84
  const docIdsToDelete = await this.getAllTaskIDsToDelete([docId]);
85
85
  const deleteResult = await super.deleteList(docIdsToDelete);
86
86
  return deleteResult;
@@ -92,7 +92,7 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
92
92
  * @param docIds The IDs of the documents to delete.
93
93
  * @returns The result of the delete operation.
94
94
  */
95
- override async deleteList(docIds: ObjectId[]): Promise<DeleteResult> {
95
+ override async deleteList(docIds: UUID[]): Promise<DeleteResult> {
96
96
  const docIdsToDelete = await this.getAllTaskIDsToDelete(docIds);
97
97
  const result = await super.deleteList(docIdsToDelete);
98
98
  return result;
@@ -106,7 +106,7 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
106
106
  * @param userId The ID of the user to get tasks for.
107
107
  * @returns The list of tasks for the user.
108
108
  */
109
- async getAllForUser(userId: ObjectId): Promise<DashboardTask[]> {
109
+ async getAllForUser(userId: UUID): Promise<DashboardTask[]> {
110
110
  const userConfigRepo = DashboardUserConfigRepository.getRepo();
111
111
  const userConfig = await userConfigRepo.get({ userId });
112
112
  if (!userConfig) {
@@ -138,7 +138,7 @@ export default class DashboardTaskRepository extends DashboardBaseRepository<Das
138
138
  * @param taskIds The IDs of the tasks to delete.
139
139
  * @returns The list of task IDs to delete.
140
140
  */
141
- private async getAllTaskIDsToDelete(taskIds: ObjectId[]): Promise<ObjectId[]> {
141
+ private async getAllTaskIDsToDelete(taskIds: UUID[]): Promise<UUID[]> {
142
142
  if (taskIds.length === 0) {
143
143
  return taskIds;
144
144
  }
@@ -1,5 +1,5 @@
1
1
  import { DashboardUserConfig, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
2
+ import type { UUID } from 'crypto';
3
3
  import type { BulkWriteResult, UpdateResult } from 'mongodb';
4
4
  import type { RepoListeners } from '../../services/RepoSubscriptionService.js';
5
5
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -64,7 +64,7 @@ export default class DashboardUserConfigRepository extends DashboardBaseReposito
64
64
  * @param userId The ID of the user to get the config for.
65
65
  * @returns The user config or null if not found.
66
66
  */
67
- getForUser(userId: ObjectId): Promise<DashboardUserConfig | null>;
67
+ getForUser(userId: UUID): Promise<DashboardUserConfig | null>;
68
68
  /**
69
69
  * Updates the user configs for the collaborators of the provided user
70
70
  * configs.
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardUserConfigRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardUserConfigRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAyB,eAAe,EAAgB,YAAY,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,uBAAuB,CAAC,mBAAmB,CAAC;IACrG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAgC;IAEjE;;OAEG;IACH,OAAO;IAIP;;;;OAIG;IACH,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAkCrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;;;OAIG;WACW,OAAO,IAAI,6BAA6B;IAOtD;;;;;;OAMG;IACY,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAa1F;;;;;;;OAOG;IACY,UAAU,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAYzF;;;;;;OAMG;IACY,MAAM,CACnB,UAAU,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAY7C;;;;;;OAMG;IACY,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAkBhG;;;;;OAKG;IACG,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAMvE;;;;;;;;;;;OAWG;YACW,2BAA2B;CAgD1C"}
1
+ {"version":3,"file":"DashboardUserConfigRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/dashboard/DashboardUserConfigRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAyB,eAAe,EAAgB,YAAY,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,uBAAuB,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,uBAAuB,CAAC,mBAAmB,CAAC;IACrG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAgC;IAEjE;;OAEG;IACH,OAAO;IAIP;;;;OAIG;IACH,MAAM,CAAC,uBAAuB,IAAI,aAAa,CAAC,IAAI,CAAC;IAkCrD,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAElC;;;;OAIG;WACW,OAAO,IAAI,6BAA6B;IAOtD;;;;;;OAMG;IACY,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAa1F;;;;;;;OAOG;IACY,UAAU,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAYzF;;;;;;OAMG;IACY,MAAM,CACnB,UAAU,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAY7C;;;;;;OAMG;IACY,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAkBhG;;;;;OAKG;IACG,UAAU,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAMnE;;;;;;;;;;;OAWG;YACW,2BAA2B;CAgD1C"}
@@ -1,5 +1,4 @@
1
1
  import { DashboardUserConfig, User } from '@aneuhold/core-ts-db-lib';
2
- import { ObjectId } from 'bson';
3
2
  import CleanDocument from '../../util/DocumentCleaner.js';
4
3
  import DashboardUserConfigValidator from '../../validators/dashboard/UserConfigValidator.js';
5
4
  import DashboardBaseRepository from './DashboardBaseRepository.js';
@@ -165,7 +164,7 @@ export default class DashboardUserConfigRepository extends DashboardBaseReposito
165
164
  const originalCollaborators = docSet.originalDoc.collaborators;
166
165
  const updatedCollaborators = docSet.updatedDoc.collaborators;
167
166
  if (updatedCollaborators &&
168
- !this.objectIdArraysAreEqual(originalCollaborators, updatedCollaborators)) {
167
+ !this.uuidArraysAreEqual(originalCollaborators, updatedCollaborators)) {
169
168
  // For each original collaborator, if they are not in the updated list,
170
169
  // remove the user from their collaborators list
171
170
  originalCollaborators.forEach((collaboratorId) => {