@arcote.tech/arc-adapter-db-sqlite 0.7.16 → 0.7.18
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/dist/index.js +37 -0
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1473,6 +1473,42 @@ class AuthAdapter {
|
|
|
1473
1473
|
this.scopes.clear();
|
|
1474
1474
|
}
|
|
1475
1475
|
}
|
|
1476
|
+
var DEFAULT_TIMEOUT_MS = 8000;
|
|
1477
|
+
var provider = null;
|
|
1478
|
+
var latestSync = null;
|
|
1479
|
+
var syncSeq = 0;
|
|
1480
|
+
function triggerModuleSync(scope, timeoutMs = DEFAULT_TIMEOUT_MS) {
|
|
1481
|
+
if (!provider) {
|
|
1482
|
+
latestSync = Promise.resolve();
|
|
1483
|
+
return latestSync;
|
|
1484
|
+
}
|
|
1485
|
+
const seq = ++syncSeq;
|
|
1486
|
+
const run = (async () => {
|
|
1487
|
+
try {
|
|
1488
|
+
await provider(scope);
|
|
1489
|
+
} catch (err) {
|
|
1490
|
+
console.warn("[arc] module sync failed during setToken:", err);
|
|
1491
|
+
}
|
|
1492
|
+
})();
|
|
1493
|
+
const guarded = new Promise((resolve) => {
|
|
1494
|
+
let settled = false;
|
|
1495
|
+
const done = () => {
|
|
1496
|
+
if (settled)
|
|
1497
|
+
return;
|
|
1498
|
+
settled = true;
|
|
1499
|
+
resolve();
|
|
1500
|
+
};
|
|
1501
|
+
const timer = setTimeout(() => {
|
|
1502
|
+
console.warn(`[arc] module sync did not complete within ${timeoutMs}ms; proceeding anyway.`);
|
|
1503
|
+
done();
|
|
1504
|
+
}, timeoutMs);
|
|
1505
|
+
timer?.unref?.();
|
|
1506
|
+
run.then(done, done).finally(() => clearTimeout(timer));
|
|
1507
|
+
});
|
|
1508
|
+
if (seq === syncSeq)
|
|
1509
|
+
latestSync = guarded;
|
|
1510
|
+
return guarded;
|
|
1511
|
+
}
|
|
1476
1512
|
var eventWireInstanceCounter = 0;
|
|
1477
1513
|
|
|
1478
1514
|
class EventWire {
|
|
@@ -4240,6 +4276,7 @@ class ScopedModel {
|
|
|
4240
4276
|
for (const listener4 of this.tokenListeners) {
|
|
4241
4277
|
listener4();
|
|
4242
4278
|
}
|
|
4279
|
+
return triggerModuleSync(this.scopeName);
|
|
4243
4280
|
}
|
|
4244
4281
|
getToken() {
|
|
4245
4282
|
return this.authAdapter.getToken();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arcote.tech/arc-adapter-db-sqlite",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.18",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"test": "bun test"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@arcote.tech/arc": "^0.7.
|
|
23
|
+
"@arcote.tech/arc": "^0.7.18"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"typescript": "^5.0.0"
|