@instantdb/core 0.22.88-experimental.drewh-ssr.20248787082.1 → 0.22.88-experimental.drewh-entity-caching.20248787059.1
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/__tests__/src/instaql.bench.js +80 -2
- package/__tests__/src/instaqlCache.test.ts +78 -0
- package/dist/commonjs/Reactor.d.ts +1 -13
- package/dist/commonjs/Reactor.d.ts.map +1 -1
- package/dist/commonjs/Reactor.js +5 -64
- package/dist/commonjs/Reactor.js.map +1 -1
- package/dist/commonjs/index.d.ts +1 -5
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +1 -7
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/store.d.ts +1 -1
- package/dist/commonjs/store.d.ts.map +1 -1
- package/dist/commonjs/store.js +5 -0
- package/dist/commonjs/store.js.map +1 -1
- package/dist/esm/Reactor.d.ts +1 -13
- package/dist/esm/Reactor.d.ts.map +1 -1
- package/dist/esm/Reactor.js +5 -64
- package/dist/esm/Reactor.js.map +1 -1
- package/dist/esm/index.d.ts +1 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/store.d.ts +1 -1
- package/dist/esm/store.d.ts.map +1 -1
- package/dist/esm/store.js +5 -0
- package/dist/esm/store.js.map +1 -1
- package/dist/standalone/index.js +1107 -1404
- package/dist/standalone/index.umd.cjs +3 -3
- package/package.json +2 -2
- package/src/Reactor.js +9 -74
- package/src/index.ts +0 -9
- package/src/store.ts +6 -0
- package/__tests__/src/serializeSchema.test.ts +0 -123
- package/dist/commonjs/createRouteHandler.d.ts +0 -8
- package/dist/commonjs/createRouteHandler.d.ts.map +0 -1
- package/dist/commonjs/createRouteHandler.js +0 -57
- package/dist/commonjs/createRouteHandler.js.map +0 -1
- package/dist/commonjs/framework.d.ts +0 -77
- package/dist/commonjs/framework.d.ts.map +0 -1
- package/dist/commonjs/framework.js +0 -199
- package/dist/commonjs/framework.js.map +0 -1
- package/dist/commonjs/parseSchemaFromJSON.d.ts +0 -3
- package/dist/commonjs/parseSchemaFromJSON.d.ts.map +0 -1
- package/dist/commonjs/parseSchemaFromJSON.js +0 -148
- package/dist/commonjs/parseSchemaFromJSON.js.map +0 -1
- package/dist/esm/createRouteHandler.d.ts +0 -8
- package/dist/esm/createRouteHandler.d.ts.map +0 -1
- package/dist/esm/createRouteHandler.js +0 -53
- package/dist/esm/createRouteHandler.js.map +0 -1
- package/dist/esm/framework.d.ts +0 -77
- package/dist/esm/framework.d.ts.map +0 -1
- package/dist/esm/framework.js +0 -159
- package/dist/esm/framework.js.map +0 -1
- package/dist/esm/parseSchemaFromJSON.d.ts +0 -3
- package/dist/esm/parseSchemaFromJSON.d.ts.map +0 -1
- package/dist/esm/parseSchemaFromJSON.js +0 -144
- package/dist/esm/parseSchemaFromJSON.js.map +0 -1
- package/src/createRouteHandler.ts +0 -44
- package/src/framework.ts +0 -281
- package/src/parseSchemaFromJSON.ts +0 -176
package/dist/esm/Reactor.d.ts
CHANGED
|
@@ -100,17 +100,6 @@ export default class Reactor<RoomSchema extends import("./presence.ts").RoomSche
|
|
|
100
100
|
_setStatus(status: any, err: any): void;
|
|
101
101
|
_onMergeKv: (key: any, storageV: any, inMemoryV: any) => any;
|
|
102
102
|
_flushEnqueuedRoomData(roomId: any): void;
|
|
103
|
-
/**
|
|
104
|
-
* Does the same thing as add-query-ok
|
|
105
|
-
* but called as a result of receiving query info from ssr
|
|
106
|
-
* @param {any} q
|
|
107
|
-
* @param {{ triples: any; pageInfo: any; }} result
|
|
108
|
-
* @param {boolean} enableCardinalityInference
|
|
109
|
-
*/
|
|
110
|
-
_addQueryData(q: any, result: {
|
|
111
|
-
triples: any;
|
|
112
|
-
pageInfo: any;
|
|
113
|
-
}, enableCardinalityInference: boolean): void;
|
|
114
103
|
_handleReceive(connId: any, msg: any): void;
|
|
115
104
|
_sessionId: any;
|
|
116
105
|
_pendingMutations(): any;
|
|
@@ -154,7 +143,7 @@ export default class Reactor<RoomSchema extends import("./presence.ts").RoomSche
|
|
|
154
143
|
_rewriteMutationsSorted(attrs: any, muts: any): any[];
|
|
155
144
|
optimisticAttrs(): any;
|
|
156
145
|
/** Runs instaql on a query and a store */
|
|
157
|
-
dataForQuery(hash: any
|
|
146
|
+
dataForQuery(hash: any): any;
|
|
158
147
|
_applyOptimisticUpdates(store: any, mutations: any, processedTxId: any): any;
|
|
159
148
|
/** Re-run instaql and call all callbacks with new data */
|
|
160
149
|
notifyOne: (hash: any) => void;
|
|
@@ -257,7 +246,6 @@ export default class Reactor<RoomSchema extends import("./presence.ts").RoomSche
|
|
|
257
246
|
}>;
|
|
258
247
|
_hasCurrentUser(): Promise<boolean>;
|
|
259
248
|
changeCurrentUser(newUser: any): Promise<void>;
|
|
260
|
-
syncUserToEndpoint(user: any): Promise<void>;
|
|
261
249
|
updateUser(newUser: any): void;
|
|
262
250
|
sendMagicCode({ email }: {
|
|
263
251
|
email: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Reactor.d.ts","sourceRoot":"","sources":["../../src/Reactor.js"],"names":[],"mappings":"AA8KA;;GAEG;AACH,6BAFwD,UAAU,SAArD,OAAQ,eAAe,EAAE,eAAgB;IAkEpD,
|
|
1
|
+
{"version":3,"file":"Reactor.d.ts","sourceRoot":"","sources":["../../src/Reactor.js"],"names":[],"mappings":"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"}
|
package/dist/esm/Reactor.js
CHANGED
|
@@ -428,13 +428,7 @@ export default class Reactor {
|
|
|
428
428
|
}, this._log, (triples) => s.createStore(this.attrs, triples, this.config.enableCardinalityInference, this._linkIndex, this.config.useDateObjects));
|
|
429
429
|
this._oauthCallbackResponse = this._oauthLoginInit();
|
|
430
430
|
// kick off a request to cache it
|
|
431
|
-
this.getCurrentUser()
|
|
432
|
-
this.syncUserToEndpoint(userInfo.user);
|
|
433
|
-
});
|
|
434
|
-
setInterval(() => __awaiter(this, void 0, void 0, function* () {
|
|
435
|
-
const currentUser = yield this.getCurrentUser();
|
|
436
|
-
this.syncUserToEndpoint(currentUser.user);
|
|
437
|
-
}), 1000 * 60 * 20);
|
|
431
|
+
this.getCurrentUser();
|
|
438
432
|
NetworkListener.getIsOnline().then((isOnline) => {
|
|
439
433
|
this._isOnline = isOnline;
|
|
440
434
|
this._startSocket();
|
|
@@ -580,35 +574,6 @@ export default class Reactor {
|
|
|
580
574
|
}
|
|
581
575
|
}
|
|
582
576
|
}
|
|
583
|
-
/**
|
|
584
|
-
* Does the same thing as add-query-ok
|
|
585
|
-
* but called as a result of receiving query info from ssr
|
|
586
|
-
* @param {any} q
|
|
587
|
-
* @param {{ triples: any; pageInfo: any; }} result
|
|
588
|
-
* @param {boolean} enableCardinalityInference
|
|
589
|
-
*/
|
|
590
|
-
_addQueryData(q, result, enableCardinalityInference) {
|
|
591
|
-
if (!this.attrs) {
|
|
592
|
-
throw new Error('Attrs in reactor have not been set');
|
|
593
|
-
}
|
|
594
|
-
const queryHash = weakHash(q);
|
|
595
|
-
const store = s.createStore(this.attrs, result.triples, enableCardinalityInference, this._linkIndex, this.config.useDateObjects);
|
|
596
|
-
this.querySubs.updateInPlace((prev) => {
|
|
597
|
-
prev[queryHash] = {
|
|
598
|
-
result: {
|
|
599
|
-
store,
|
|
600
|
-
pageInfo: result.pageInfo,
|
|
601
|
-
processedTxId: undefined,
|
|
602
|
-
isExternal: true,
|
|
603
|
-
},
|
|
604
|
-
q,
|
|
605
|
-
};
|
|
606
|
-
});
|
|
607
|
-
this._cleanupPendingMutationsQueries();
|
|
608
|
-
this.notifyOne(queryHash);
|
|
609
|
-
this.notifyOneQueryOnce(queryHash);
|
|
610
|
-
this._cleanupPendingMutationsTimeout();
|
|
611
|
-
}
|
|
612
577
|
_handleReceive(connId, msg) {
|
|
613
578
|
var _a, _b, _c, _d, _e, _f;
|
|
614
579
|
// opt-out, enabled by default if schema
|
|
@@ -1114,7 +1079,7 @@ export default class Reactor {
|
|
|
1114
1079
|
return attrsRecord;
|
|
1115
1080
|
}
|
|
1116
1081
|
/** Runs instaql on a query and a store */
|
|
1117
|
-
dataForQuery(hash
|
|
1082
|
+
dataForQuery(hash) {
|
|
1118
1083
|
const errorMessage = this._errorMessage;
|
|
1119
1084
|
if (errorMessage) {
|
|
1120
1085
|
return { error: errorMessage };
|
|
@@ -1136,13 +1101,10 @@ export default class Reactor {
|
|
|
1136
1101
|
pendingMutationsVersion === cached.pendingMutationsVersion) {
|
|
1137
1102
|
return cached;
|
|
1138
1103
|
}
|
|
1139
|
-
|
|
1140
|
-
const { pageInfo, aggregate, processedTxId } = result;
|
|
1104
|
+
const { store, pageInfo, aggregate, processedTxId } = result;
|
|
1141
1105
|
const mutations = this._rewriteMutationsSorted(store.attrs, pendingMutations);
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
}
|
|
1145
|
-
const resp = instaql({ store: store, pageInfo, aggregate }, q);
|
|
1106
|
+
const newStore = this._applyOptimisticUpdates(store, mutations, processedTxId);
|
|
1107
|
+
const resp = instaql({ store: newStore, pageInfo, aggregate }, q);
|
|
1146
1108
|
return { data: resp, querySubVersion, pendingMutationsVersion };
|
|
1147
1109
|
}
|
|
1148
1110
|
_applyOptimisticUpdates(store, mutations, processedTxId) {
|
|
@@ -1606,28 +1568,7 @@ export default class Reactor {
|
|
|
1606
1568
|
}
|
|
1607
1569
|
});
|
|
1608
1570
|
}
|
|
1609
|
-
syncUserToEndpoint(user) {
|
|
1610
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
1611
|
-
if (this.config.cookieEndpoint) {
|
|
1612
|
-
try {
|
|
1613
|
-
fetch(this.config.cookieEndpoint + '/sync-auth', {
|
|
1614
|
-
method: 'POST',
|
|
1615
|
-
body: JSON.stringify({
|
|
1616
|
-
user: user,
|
|
1617
|
-
}),
|
|
1618
|
-
headers: {
|
|
1619
|
-
'Content-Type': 'application/json',
|
|
1620
|
-
},
|
|
1621
|
-
});
|
|
1622
|
-
}
|
|
1623
|
-
catch (error) {
|
|
1624
|
-
console.error('Error syncing user with external endpoint', error);
|
|
1625
|
-
}
|
|
1626
|
-
}
|
|
1627
|
-
});
|
|
1628
|
-
}
|
|
1629
1571
|
updateUser(newUser) {
|
|
1630
|
-
this.syncUserToEndpoint(newUser);
|
|
1631
1572
|
const newV = { error: undefined, user: newUser };
|
|
1632
1573
|
this._currentUserCached = Object.assign({ isLoading: false }, newV);
|
|
1633
1574
|
this._dataForQueryCache = {};
|