@dxos/async 0.8.4-main.69d29f4 → 0.8.4-main.6fa680abb7
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/lib/browser/index.mjs +22 -17
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +22 -17
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/cleanup.d.ts +2 -2
- package/dist/types/src/cleanup.d.ts.map +1 -1
- package/dist/types/src/debounce.d.ts +15 -10
- package/dist/types/src/debounce.d.ts.map +1 -1
- package/dist/types/src/observable-value.d.ts.map +1 -1
- package/dist/types/src/task-scheduling.d.ts +2 -2
- package/dist/types/src/task-scheduling.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/src/cleanup.ts +7 -4
- package/src/debounce.ts +19 -14
- package/src/observable-value.ts +4 -2
- package/src/task-scheduling.ts +6 -5
|
@@ -22,7 +22,7 @@ var chain = (chain2) => async (elements) => {
|
|
|
22
22
|
import { ComplexMap } from "@dxos/util";
|
|
23
23
|
var combine = (...cleanupFns) => {
|
|
24
24
|
return () => {
|
|
25
|
-
cleanupFns.flat().forEach((cleanupFn) => cleanupFn());
|
|
25
|
+
cleanupFns.flat().filter((f) => typeof f === "function").forEach((cleanupFn) => cleanupFn());
|
|
26
26
|
};
|
|
27
27
|
};
|
|
28
28
|
var timeout = (cb, ms = 0) => {
|
|
@@ -39,8 +39,8 @@ var addEventListener = (target, type, listener, options) => {
|
|
|
39
39
|
};
|
|
40
40
|
var SubscriptionList = class {
|
|
41
41
|
_cleanups = [];
|
|
42
|
-
add(cb) {
|
|
43
|
-
this._cleanups.push(cb);
|
|
42
|
+
add(...cb) {
|
|
43
|
+
this._cleanups.push(...cb);
|
|
44
44
|
return this;
|
|
45
45
|
}
|
|
46
46
|
clear() {
|
|
@@ -607,7 +607,7 @@ var MutexGuard = class {
|
|
|
607
607
|
this.release();
|
|
608
608
|
}
|
|
609
609
|
};
|
|
610
|
-
var classMutexSymbol = Symbol("class-mutex");
|
|
610
|
+
var classMutexSymbol = /* @__PURE__ */ Symbol("class-mutex");
|
|
611
611
|
var FORCE_DISABLE_WARNING = false;
|
|
612
612
|
var enableWarning = !FORCE_DISABLE_WARNING && globalThis.mochaExecutor;
|
|
613
613
|
var synchronized = (target, propertyName, descriptor) => {
|
|
@@ -935,7 +935,7 @@ import { warnAfterTimeout as warnAfterTimeout2 } from "@dxos/debug";
|
|
|
935
935
|
import { log as log2 } from "@dxos/log";
|
|
936
936
|
|
|
937
937
|
// src/task-scheduling.ts
|
|
938
|
-
import { ContextDisposedError as ContextDisposedError2 } from "@dxos/context";
|
|
938
|
+
import { Context as Context2, ContextDisposedError as ContextDisposedError2 } from "@dxos/context";
|
|
939
939
|
import { StackTrace as StackTrace2 } from "@dxos/debug";
|
|
940
940
|
|
|
941
941
|
// src/track-leaks.ts
|
|
@@ -944,7 +944,7 @@ import { log } from "@dxos/log";
|
|
|
944
944
|
var __dxlog_file3 = "/__w/dxos/dxos/packages/common/async/src/track-leaks.ts";
|
|
945
945
|
var enabled = typeof process !== "undefined" && !!process.env.DX_TRACK_LEAKS;
|
|
946
946
|
var openResources = /* @__PURE__ */ new Set();
|
|
947
|
-
var handleSymbol = Symbol("checkLeaksHandle");
|
|
947
|
+
var handleSymbol = /* @__PURE__ */ Symbol("checkLeaksHandle");
|
|
948
948
|
var trackResource = (resourceProvider) => {
|
|
949
949
|
if (!enabled) {
|
|
950
950
|
return () => {
|
|
@@ -1023,6 +1023,7 @@ if (enabled) {
|
|
|
1023
1023
|
}
|
|
1024
1024
|
|
|
1025
1025
|
// src/task-scheduling.ts
|
|
1026
|
+
var __dxlog_file4 = "/__w/dxos/dxos/packages/common/async/src/task-scheduling.ts";
|
|
1026
1027
|
var DeferredTask = class {
|
|
1027
1028
|
_ctx;
|
|
1028
1029
|
_callback;
|
|
@@ -1088,16 +1089,19 @@ var AsyncTask = class {
|
|
|
1088
1089
|
* Context of the resource that owns the task.
|
|
1089
1090
|
* When the context is disposed, the task is cancelled and cannot be scheduled again.
|
|
1090
1091
|
*/
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1092
|
+
open() {
|
|
1093
|
+
this.#ctx = new Context2(void 0, {
|
|
1094
|
+
F: __dxlog_file4,
|
|
1095
|
+
L: 102
|
|
1096
|
+
});
|
|
1094
1097
|
}
|
|
1095
1098
|
/**
|
|
1096
1099
|
* Closes the task and waits for it to finish if it is running.
|
|
1097
1100
|
*/
|
|
1098
1101
|
async close() {
|
|
1099
|
-
this.#ctx
|
|
1102
|
+
await this.#ctx?.dispose();
|
|
1100
1103
|
await this.join();
|
|
1104
|
+
this.#ctx = void 0;
|
|
1101
1105
|
}
|
|
1102
1106
|
[Symbol.asyncDispose]() {
|
|
1103
1107
|
return this.close();
|
|
@@ -1105,6 +1109,7 @@ var AsyncTask = class {
|
|
|
1105
1109
|
/**
|
|
1106
1110
|
* Schedule the task to run asynchronously.
|
|
1107
1111
|
*/
|
|
1112
|
+
// TODO(dmaretskyi): Add scheduleAt. Where the earlier time will override the later one.
|
|
1108
1113
|
schedule() {
|
|
1109
1114
|
if (!this.#ctx || this.#ctx.disposed) {
|
|
1110
1115
|
throw new Error("AsyncTask not open");
|
|
@@ -1229,7 +1234,7 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
1229
1234
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1230
1235
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1231
1236
|
}
|
|
1232
|
-
var
|
|
1237
|
+
var __dxlog_file5 = "/__w/dxos/dxos/packages/common/async/src/persistent-lifecycle.ts";
|
|
1233
1238
|
var INIT_RESTART_DELAY = 100;
|
|
1234
1239
|
var DEFAULT_MAX_RESTART_DELAY = 5e3;
|
|
1235
1240
|
var PersistentLifecycle = class extends Resource {
|
|
@@ -1258,7 +1263,7 @@ var PersistentLifecycle = class extends Resource {
|
|
|
1258
1263
|
log2.warn("Restart failed", {
|
|
1259
1264
|
err
|
|
1260
1265
|
}, {
|
|
1261
|
-
F:
|
|
1266
|
+
F: __dxlog_file5,
|
|
1262
1267
|
L: 72,
|
|
1263
1268
|
S: this,
|
|
1264
1269
|
C: (f, a) => f(...a)
|
|
@@ -1270,7 +1275,7 @@ var PersistentLifecycle = class extends Resource {
|
|
|
1270
1275
|
log2.warn("Start failed", {
|
|
1271
1276
|
err
|
|
1272
1277
|
}, {
|
|
1273
|
-
F:
|
|
1278
|
+
F: __dxlog_file5,
|
|
1274
1279
|
L: 78,
|
|
1275
1280
|
S: this,
|
|
1276
1281
|
C: (f, a) => f(...a)
|
|
@@ -1288,7 +1293,7 @@ var PersistentLifecycle = class extends Resource {
|
|
|
1288
1293
|
log2(`restarting in ${this._restartAfter}ms`, {
|
|
1289
1294
|
state: this._lifecycleState
|
|
1290
1295
|
}, {
|
|
1291
|
-
F:
|
|
1296
|
+
F: __dxlog_file5,
|
|
1292
1297
|
L: 91,
|
|
1293
1298
|
S: this,
|
|
1294
1299
|
C: (f, a) => f(...a)
|
|
@@ -1311,7 +1316,7 @@ var PersistentLifecycle = class extends Resource {
|
|
|
1311
1316
|
await this._stop(this._currentState);
|
|
1312
1317
|
} catch (err) {
|
|
1313
1318
|
log2.catch(err, void 0, {
|
|
1314
|
-
F:
|
|
1319
|
+
F: __dxlog_file5,
|
|
1315
1320
|
L: 113,
|
|
1316
1321
|
S: this,
|
|
1317
1322
|
C: (f, a) => f(...a)
|
|
@@ -1339,7 +1344,7 @@ _ts_decorate([
|
|
|
1339
1344
|
|
|
1340
1345
|
// src/push-iterable.ts
|
|
1341
1346
|
import { invariant as invariant2 } from "@dxos/invariant";
|
|
1342
|
-
var
|
|
1347
|
+
var __dxlog_file6 = "/__w/dxos/dxos/packages/common/async/src/push-iterable.ts";
|
|
1343
1348
|
var makePushIterable = () => {
|
|
1344
1349
|
const buf = [];
|
|
1345
1350
|
const trigger2 = new Trigger({
|
|
@@ -1354,7 +1359,7 @@ var makePushIterable = () => {
|
|
|
1354
1359
|
}
|
|
1355
1360
|
const item = buf.shift();
|
|
1356
1361
|
invariant2(item, void 0, {
|
|
1357
|
-
F:
|
|
1362
|
+
F: __dxlog_file6,
|
|
1358
1363
|
L: 42,
|
|
1359
1364
|
S: this,
|
|
1360
1365
|
A: [
|