@powersync/service-module-mongodb-storage 0.0.0-dev-20250721093954 → 0.0.0-dev-20250721100912

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # @powersync/service-module-mongodb-storage
2
2
 
3
- ## 0.0.0-dev-20250721093954
3
+ ## 0.0.0-dev-20250721100912
4
4
 
5
5
  ### Patch Changes
6
6
 
@@ -8,10 +8,10 @@
8
8
  - a700ec9: Reporting mongo storage added to storage engine.
9
9
  - Updated dependencies [f1d187b]
10
10
  - Updated dependencies [a700ec9]
11
- - @powersync/service-core@0.0.0-dev-20250721093954
12
- - @powersync/service-types@0.0.0-dev-20250721093954
13
- - @powersync/lib-services-framework@0.0.0-dev-20250721093954
14
- - @powersync/lib-service-mongodb@0.0.0-dev-20250721093954
11
+ - @powersync/service-core@0.0.0-dev-20250721100912
12
+ - @powersync/service-types@0.0.0-dev-20250721100912
13
+ - @powersync/lib-services-framework@0.0.0-dev-20250721100912
14
+ - @powersync/lib-service-mongodb@0.0.0-dev-20250721100912
15
15
 
16
16
  ## 0.10.4
17
17
 
@@ -19,14 +19,31 @@ export class MongoReportStorage {
19
19
  await this.db.sdk_report_events.findOneAndDelete({ user_id: data.user_id, client_id: data.client_id });
20
20
  }
21
21
  async listCurrentConnections(data) {
22
- return this.db.sdk_report_events.aggregate([
22
+ const result = await this.db.sdk_report_events
23
+ .aggregate([
23
24
  {
24
25
  $group: {
25
- user_id: '$user_id',
26
- client_id: '$client_id'
26
+ _id: null,
27
+ user_ids: { $addToSet: '$user_id' },
28
+ client_ids: { $addToSet: '$client_id' },
29
+ sdks: { $addToSet: '$sdk' }
30
+ }
31
+ },
32
+ {
33
+ $project: {
34
+ _id: 0,
35
+ user_count: { $size: '$user_ids' },
36
+ client_id_count: { $size: '$client_ids' },
37
+ sdk: '$sdks'
27
38
  }
28
39
  }
29
- ]);
40
+ ])
41
+ .toArray();
42
+ console.log(result);
43
+ return {
44
+ ...data,
45
+ ...result[0]
46
+ };
30
47
  }
31
48
  async [Symbol.asyncDispose]() {
32
49
  // No-op
@@ -1 +1 @@
1
- {"version":3,"file":"MongoReportStorage.js","sourceRoot":"","sources":["../../src/storage/MongoReportStorage.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAoB;IAC3B,EAAE,CAAiB;IAEnC,YAAY,EAAkB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAiC;QACnD,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAwB;QAC7C,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAC9C,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,EACpD;YACE,IAAI,EAAE,IAAI;SACX,EACD;YACE,MAAM,EAAE,IAAI;SACb,CACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,IAAwB;QAChD,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,KAAK,CAAC,sBAAsB,CAAC,IAAiC;QAC5D,OAAO,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACzC;gBACE,MAAM,EAAE;oBACN,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,YAAY;iBACxB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,QAAQ;IACV,CAAC;CACF"}
1
+ {"version":3,"file":"MongoReportStorage.js","sourceRoot":"","sources":["../../src/storage/MongoReportStorage.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAoB;IAC3B,EAAE,CAAiB;IAEnC,YAAY,EAAkB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAiC;QACnD,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAwB;QAC7C,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAC9C,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,EACpD;YACE,IAAI,EAAE,IAAI;SACX,EACD;YACE,MAAM,EAAE,IAAI;SACb,CACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,IAAwB;QAChD,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,KAAK,CAAC,sBAAsB,CAAC,IAAiC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB;aAC3C,SAAS,CAAC;YACT;gBACE,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,QAAQ,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;oBACnC,UAAU,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE;oBACvC,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;iBAC5B;aACF;YACD;gBACE,QAAQ,EAAE;oBACR,GAAG,EAAE,CAAC;oBACN,UAAU,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;oBAClC,eAAe,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE;oBACzC,GAAG,EAAE,OAAO;iBACb;aACF;SACF,CAAC;aACD,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO;YACL,GAAG,IAAI;YACP,GAAG,MAAM,CAAC,CAAC,CAAC;SACb,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACzB,QAAQ;IACV,CAAC;CACF"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@powersync/service-module-mongodb-storage",
3
3
  "repository": "https://github.com/powersync-ja/powersync-service",
4
4
  "types": "dist/index.d.ts",
5
- "version": "0.0.0-dev-20250721093954",
5
+ "version": "0.0.0-dev-20250721100912",
6
6
  "main": "dist/index.js",
7
7
  "license": "FSL-1.1-Apache-2.0",
8
8
  "type": "module",
@@ -27,15 +27,15 @@
27
27
  "lru-cache": "^10.2.2",
28
28
  "ts-codec": "^1.3.0",
29
29
  "uuid": "^11.1.0",
30
- "@powersync/lib-service-mongodb": "0.0.0-dev-20250721093954",
31
- "@powersync/lib-services-framework": "0.0.0-dev-20250721093954",
32
- "@powersync/service-core": "0.0.0-dev-20250721093954",
33
- "@powersync/service-types": "0.0.0-dev-20250721093954",
30
+ "@powersync/lib-service-mongodb": "0.0.0-dev-20250721100912",
31
+ "@powersync/lib-services-framework": "0.0.0-dev-20250721100912",
32
+ "@powersync/service-core": "0.0.0-dev-20250721100912",
33
+ "@powersync/service-types": "0.0.0-dev-20250721100912",
34
34
  "@powersync/service-jsonbig": "0.17.10",
35
35
  "@powersync/service-sync-rules": "0.27.0"
36
36
  },
37
37
  "devDependencies": {
38
- "@powersync/service-core-tests": "0.0.0-dev-20250721093954"
38
+ "@powersync/service-core-tests": "0.0.0-dev-20250721100912"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "tsc -b",
@@ -33,14 +33,31 @@ export class MongoReportStorage implements storage.ReportStorageFactory {
33
33
  await this.db.sdk_report_events.findOneAndDelete({ user_id: data.user_id, client_id: data.client_id });
34
34
  }
35
35
  async listCurrentConnections(data: event_types.InstanceRequest): Promise<ListCurrentConnectionsResponse> {
36
- return this.db.sdk_report_events.aggregate([
37
- {
38
- $group: {
39
- user_id: '$user_id',
40
- client_id: '$client_id'
36
+ const result = await this.db.sdk_report_events
37
+ .aggregate([
38
+ {
39
+ $group: {
40
+ _id: null,
41
+ user_ids: { $addToSet: '$user_id' },
42
+ client_ids: { $addToSet: '$client_id' },
43
+ sdks: { $addToSet: '$sdk' }
44
+ }
45
+ },
46
+ {
47
+ $project: {
48
+ _id: 0,
49
+ user_count: { $size: '$user_ids' },
50
+ client_id_count: { $size: '$client_ids' },
51
+ sdk: '$sdks'
52
+ }
41
53
  }
42
- }
43
- ]);
54
+ ])
55
+ .toArray();
56
+ console.log(result);
57
+ return {
58
+ ...data,
59
+ ...result[0]
60
+ };
44
61
  }
45
62
 
46
63
  async [Symbol.asyncDispose]() {