@rotorsoft/act 1.22.0 → 1.22.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/dist/.tsbuildinfo +1 -1
- package/dist/@types/internal/reactions.d.ts.map +1 -1
- package/dist/index.cjs +13 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +13 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2401,10 +2401,15 @@ function build_handle(deps) {
|
|
|
2401
2401
|
return async (lease, payloads) => {
|
|
2402
2402
|
if (payloads.length === 0) return { lease, handled: 0, acked_at: lease.at };
|
|
2403
2403
|
const stream = lease.stream;
|
|
2404
|
-
|
|
2404
|
+
const last_index_of = /* @__PURE__ */ new Map();
|
|
2405
|
+
for (let i = 0; i < payloads.length; i++)
|
|
2406
|
+
last_index_of.set(payloads[i].event.id, i);
|
|
2407
|
+
let at = lease.at;
|
|
2405
2408
|
let handled = 0;
|
|
2406
2409
|
if (lease.retry > 0)
|
|
2407
|
-
logger.warn(
|
|
2410
|
+
logger.warn(
|
|
2411
|
+
`Retrying ${stream}@${payloads.at(0).event.id} (${lease.retry}).`
|
|
2412
|
+
);
|
|
2408
2413
|
const scoped_app = {
|
|
2409
2414
|
do: bound_do,
|
|
2410
2415
|
load: bound_load,
|
|
@@ -2412,7 +2417,8 @@ function build_handle(deps) {
|
|
|
2412
2417
|
query_array: bound_query_array,
|
|
2413
2418
|
forget: bound_forget
|
|
2414
2419
|
};
|
|
2415
|
-
for (
|
|
2420
|
+
for (let i = 0; i < payloads.length; i++) {
|
|
2421
|
+
const payload = payloads[i];
|
|
2416
2422
|
const { event, handler } = payload;
|
|
2417
2423
|
scoped_app.do = (action2, target, action_payload, options) => bound_do(action2, target, action_payload, {
|
|
2418
2424
|
...options,
|
|
@@ -2420,8 +2426,10 @@ function build_handle(deps) {
|
|
|
2420
2426
|
});
|
|
2421
2427
|
try {
|
|
2422
2428
|
await handler(event, stream, scoped_app);
|
|
2423
|
-
|
|
2424
|
-
|
|
2429
|
+
if (last_index_of.get(event.id) === i) {
|
|
2430
|
+
at = event.id;
|
|
2431
|
+
handled++;
|
|
2432
|
+
}
|
|
2425
2433
|
} catch (error) {
|
|
2426
2434
|
if (error instanceof DeferSignal)
|
|
2427
2435
|
return {
|