@powersync/service-module-postgres-storage 0.0.0-dev-20250729130417 → 0.0.0-dev-20250729132805
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.
|
@@ -31,16 +31,17 @@ export class PostgresReportStorageFactory {
|
|
|
31
31
|
}
|
|
32
32
|
timeFrameQuery(timeframe, interval = 1) {
|
|
33
33
|
const { year, month, today, parsedDate } = this.parseJsDate(new Date());
|
|
34
|
+
const parsedIsoString = parsedDate.toISOString();
|
|
34
35
|
switch (timeframe) {
|
|
35
36
|
case 'month': {
|
|
36
|
-
return { lt:
|
|
37
|
+
return { lt: parsedIsoString, gt: new Date(year, parsedDate.getMonth() - interval).toISOString() };
|
|
37
38
|
}
|
|
38
39
|
case 'week': {
|
|
39
40
|
const weekStartDate = new Date(parsedDate);
|
|
40
41
|
weekStartDate.setDate(weekStartDate.getDate() - 6 * interval);
|
|
41
42
|
const weekStart = this.parseJsDate(weekStartDate);
|
|
42
43
|
return {
|
|
43
|
-
lt:
|
|
44
|
+
lt: parsedIsoString,
|
|
44
45
|
gt: new Date(weekStart.year, weekStart.month, weekStart.today).toISOString()
|
|
45
46
|
};
|
|
46
47
|
}
|
|
@@ -54,7 +55,7 @@ export class PostgresReportStorageFactory {
|
|
|
54
55
|
}
|
|
55
56
|
default: {
|
|
56
57
|
return {
|
|
57
|
-
lt:
|
|
58
|
+
lt: parsedIsoString,
|
|
58
59
|
gt: new Date(year, month, today - interval).toISOString()
|
|
59
60
|
};
|
|
60
61
|
}
|
|
@@ -82,7 +83,7 @@ export class PostgresReportStorageFactory {
|
|
|
82
83
|
}
|
|
83
84
|
default: {
|
|
84
85
|
return {
|
|
85
|
-
|
|
86
|
+
lt: new Date(year, month, today - interval).toISOString()
|
|
86
87
|
};
|
|
87
88
|
}
|
|
88
89
|
}
|
|
@@ -160,6 +161,8 @@ export class PostgresReportStorageFactory {
|
|
|
160
161
|
}
|
|
161
162
|
async reportSdkConnect(data) {
|
|
162
163
|
const { sdk, connect_at, user_id, user_agent, jwt_exp, client_id } = data;
|
|
164
|
+
const connectIsoString = connect_at.toISOString();
|
|
165
|
+
const jwtExpIsoString = jwt_exp.toISOString();
|
|
163
166
|
const { gte, lt } = this.updateTableFilter();
|
|
164
167
|
const query = `
|
|
165
168
|
INSERT INTO sdk_report_events (user_id, client_id, connect_at, sdk, user_agent, jwt_exp, id)
|
|
@@ -179,10 +182,10 @@ export class PostgresReportStorageFactory {
|
|
|
179
182
|
params: [
|
|
180
183
|
{ type: 'varchar', value: user_id },
|
|
181
184
|
{ type: 'varchar', value: client_id },
|
|
182
|
-
{ type:
|
|
185
|
+
{ type: 1184, value: connectIsoString },
|
|
183
186
|
{ type: 'varchar', value: sdk },
|
|
184
187
|
{ type: 'varchar', value: user_agent },
|
|
185
|
-
{ type: 1184, value:
|
|
188
|
+
{ type: 1184, value: jwtExpIsoString },
|
|
186
189
|
{ type: 'varchar', value: v4() },
|
|
187
190
|
{ type: 1184, value: gte },
|
|
188
191
|
{ type: 1184, value: lt }
|
|
@@ -196,6 +199,7 @@ export class PostgresReportStorageFactory {
|
|
|
196
199
|
}
|
|
197
200
|
async reportSdkDisconnect(data) {
|
|
198
201
|
const { user_id, client_id, disconnect_at } = data;
|
|
202
|
+
const disconnectIsoString = disconnect_at.toISOString();
|
|
199
203
|
const { gte, lt } = this.updateTableFilter();
|
|
200
204
|
const query = `
|
|
201
205
|
UPDATE sdk_report_events
|
|
@@ -210,7 +214,7 @@ export class PostgresReportStorageFactory {
|
|
|
210
214
|
const result = await this.db.query({
|
|
211
215
|
statement: query,
|
|
212
216
|
params: [
|
|
213
|
-
{ type: 1184, value:
|
|
217
|
+
{ type: 1184, value: disconnectIsoString },
|
|
214
218
|
{ type: 'varchar', value: user_id },
|
|
215
219
|
{ type: 'varchar', value: client_id },
|
|
216
220
|
{ type: 1184, value: gte },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresReportStorageFactory.js","sourceRoot":"","sources":["../../src/storage/PostgresReportStorageFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,KAAK,YAAY,MAAM,iCAAiC,CAAC;AAGhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAczE,MAAM,OAAO,4BAA4B;IAEjB;IADb,EAAE,CAA8B;IACzC,YAAsB,OAAqC;QAArC,YAAO,GAAP,OAAO,CAA8B;QACzD,IAAI,CAAC,EAAE,GAAG,IAAI,YAAY,CAAC,cAAc,CAAC;YACxC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,mBAAmB;YAC3B,eAAe,EAAE,yBAAyB,EAAE;SAC7C,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC;YACvB,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;SAC5E,CAAC,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,IAAU;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI;YACJ,KAAK;YACL,KAAK;YACL,GAAG;YACH,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IACO,cAAc,CAAC,SAAiC,EAAE,WAAmB,CAAC;QAC5E,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACxE,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,OAAO,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"PostgresReportStorageFactory.js","sourceRoot":"","sources":["../../src/storage/PostgresReportStorageFactory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@powersync/service-module-postgres-storage",
|
|
3
3
|
"repository": "https://github.com/powersync-ja/powersync-service",
|
|
4
4
|
"types": "dist/@types/index.d.ts",
|
|
5
|
-
"version": "0.0.0-dev-
|
|
5
|
+
"version": "0.0.0-dev-20250729132805",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"publishConfig": {
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
"p-defer": "^4.0.1",
|
|
30
30
|
"ts-codec": "^1.3.0",
|
|
31
31
|
"uuid": "^11.1.0",
|
|
32
|
-
"@powersync/lib-service-postgres": "0.0.0-dev-
|
|
33
|
-
"@powersync/lib-services-framework": "0.0.0-dev-
|
|
34
|
-
"@powersync/service-core": "0.0.0-dev-
|
|
35
|
-
"@powersync/service-types": "0.0.0-dev-
|
|
36
|
-
"@powersync/service-core-tests": "0.0.0-dev-
|
|
37
|
-
"@powersync/service-jpgwire": "0.0.0-dev-
|
|
32
|
+
"@powersync/lib-service-postgres": "0.0.0-dev-20250729132805",
|
|
33
|
+
"@powersync/lib-services-framework": "0.0.0-dev-20250729132805",
|
|
34
|
+
"@powersync/service-core": "0.0.0-dev-20250729132805",
|
|
35
|
+
"@powersync/service-types": "0.0.0-dev-20250729132805",
|
|
36
|
+
"@powersync/service-core-tests": "0.0.0-dev-20250729132805",
|
|
37
|
+
"@powersync/service-jpgwire": "0.0.0-dev-20250729132805",
|
|
38
38
|
"@powersync/service-sync-rules": "0.27.0"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
@@ -49,16 +49,17 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
49
49
|
}
|
|
50
50
|
private timeFrameQuery(timeframe: event_types.TimeFrames, interval: number = 1) {
|
|
51
51
|
const { year, month, today, parsedDate } = this.parseJsDate(new Date());
|
|
52
|
+
const parsedIsoString = parsedDate.toISOString();
|
|
52
53
|
switch (timeframe) {
|
|
53
54
|
case 'month': {
|
|
54
|
-
return { lt:
|
|
55
|
+
return { lt: parsedIsoString, gt: new Date(year, parsedDate.getMonth() - interval).toISOString() };
|
|
55
56
|
}
|
|
56
57
|
case 'week': {
|
|
57
58
|
const weekStartDate = new Date(parsedDate);
|
|
58
59
|
weekStartDate.setDate(weekStartDate.getDate() - 6 * interval);
|
|
59
60
|
const weekStart = this.parseJsDate(weekStartDate);
|
|
60
61
|
return {
|
|
61
|
-
lt:
|
|
62
|
+
lt: parsedIsoString,
|
|
62
63
|
gt: new Date(weekStart.year, weekStart.month, weekStart.today).toISOString()
|
|
63
64
|
};
|
|
64
65
|
}
|
|
@@ -72,7 +73,7 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
72
73
|
}
|
|
73
74
|
default: {
|
|
74
75
|
return {
|
|
75
|
-
lt:
|
|
76
|
+
lt: parsedIsoString,
|
|
76
77
|
gt: new Date(year, month, today - interval).toISOString()
|
|
77
78
|
};
|
|
78
79
|
}
|
|
@@ -101,7 +102,7 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
101
102
|
}
|
|
102
103
|
default: {
|
|
103
104
|
return {
|
|
104
|
-
|
|
105
|
+
lt: new Date(year, month, today - interval).toISOString()
|
|
105
106
|
};
|
|
106
107
|
}
|
|
107
108
|
}
|
|
@@ -182,6 +183,8 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
182
183
|
|
|
183
184
|
async reportSdkConnect(data: SdkConnectBucketData): Promise<void> {
|
|
184
185
|
const { sdk, connect_at, user_id, user_agent, jwt_exp, client_id } = data;
|
|
186
|
+
const connectIsoString = connect_at.toISOString();
|
|
187
|
+
const jwtExpIsoString = jwt_exp!.toISOString();
|
|
185
188
|
const { gte, lt } = this.updateTableFilter();
|
|
186
189
|
const query = `
|
|
187
190
|
INSERT INTO sdk_report_events (user_id, client_id, connect_at, sdk, user_agent, jwt_exp, id)
|
|
@@ -201,10 +204,10 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
201
204
|
params: [
|
|
202
205
|
{ type: 'varchar', value: user_id },
|
|
203
206
|
{ type: 'varchar', value: client_id },
|
|
204
|
-
{ type:
|
|
207
|
+
{ type: 1184, value: connectIsoString },
|
|
205
208
|
{ type: 'varchar', value: sdk },
|
|
206
209
|
{ type: 'varchar', value: user_agent },
|
|
207
|
-
{ type: 1184, value:
|
|
210
|
+
{ type: 1184, value: jwtExpIsoString },
|
|
208
211
|
{ type: 'varchar', value: v4() },
|
|
209
212
|
{ type: 1184, value: gte },
|
|
210
213
|
{ type: 1184, value: lt }
|
|
@@ -217,6 +220,7 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
217
220
|
}
|
|
218
221
|
async reportSdkDisconnect(data: SdkDisconnectEventData): Promise<void> {
|
|
219
222
|
const { user_id, client_id, disconnect_at } = data;
|
|
223
|
+
const disconnectIsoString = disconnect_at.toISOString();
|
|
220
224
|
const { gte, lt } = this.updateTableFilter();
|
|
221
225
|
const query = `
|
|
222
226
|
UPDATE sdk_report_events
|
|
@@ -232,7 +236,7 @@ export class PostgresReportStorageFactory implements storage.ReportStorageFactor
|
|
|
232
236
|
const result = await this.db.query({
|
|
233
237
|
statement: query,
|
|
234
238
|
params: [
|
|
235
|
-
{ type: 1184, value:
|
|
239
|
+
{ type: 1184, value: disconnectIsoString },
|
|
236
240
|
{ type: 'varchar', value: user_id },
|
|
237
241
|
{ type: 'varchar', value: client_id },
|
|
238
242
|
{ type: 1184, value: gte },
|