homebridge-plugin-utils 2.0.0 → 2.2.0
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/build/tsconfig.json +15 -0
- package/dist/backpressure.d.ts +1 -1
- package/dist/backpressure.js +4 -4
- package/dist/backpressure.js.map +1 -1
- package/dist/cli/index.d.ts +93 -5
- package/dist/cli/index.js +296 -30
- package/dist/cli/index.js.map +1 -1
- package/dist/clock-double.js +2 -2
- package/dist/clock-double.js.map +1 -1
- package/dist/disposable-stack.d.ts +59 -0
- package/dist/disposable-stack.js +155 -0
- package/dist/disposable-stack.js.map +1 -0
- package/dist/docChrome.d.ts +263 -0
- package/dist/docChrome.js +364 -0
- package/dist/docChrome.js.map +1 -0
- package/dist/featureOptions-docs.d.ts +2 -2
- package/dist/featureOptions-docs.js +1 -1
- package/dist/featureOptions.d.ts +5 -5
- package/dist/featureOptions.js +6 -6
- package/dist/ffmpeg/exec.d.ts +2 -2
- package/dist/ffmpeg/exec.js +2 -2
- package/dist/ffmpeg/fmp4-builders.d.ts +77 -0
- package/dist/ffmpeg/fmp4-builders.js +163 -0
- package/dist/ffmpeg/fmp4-builders.js.map +1 -0
- package/dist/ffmpeg/index.d.ts +1 -0
- package/dist/ffmpeg/index.js +1 -0
- package/dist/ffmpeg/index.js.map +1 -1
- package/dist/ffmpeg/mp4-assembler.d.ts +45 -4
- package/dist/ffmpeg/mp4-assembler.js +45 -8
- package/dist/ffmpeg/mp4-assembler.js.map +1 -1
- package/dist/ffmpeg/mp4-parser.d.ts +1 -1
- package/dist/ffmpeg/mp4-parser.js +1 -1
- package/dist/ffmpeg/options.d.ts +17 -0
- package/dist/ffmpeg/options.js +50 -25
- package/dist/ffmpeg/options.js.map +1 -1
- package/dist/ffmpeg/process.d.ts +1 -1
- package/dist/ffmpeg/process.js +4 -4
- package/dist/ffmpeg/process.js.map +1 -1
- package/dist/ffmpeg/record.d.ts +26 -1
- package/dist/ffmpeg/record.js +12 -0
- package/dist/ffmpeg/record.js.map +1 -1
- package/dist/ffmpeg/recording-process-double.d.ts +13 -0
- package/dist/ffmpeg/recording-process-double.js +22 -0
- package/dist/ffmpeg/recording-process-double.js.map +1 -1
- package/dist/ffmpeg/rtp-parser.d.ts +1 -1
- package/dist/ffmpeg/rtp-parser.js +1 -1
- package/dist/ffmpeg/rtp.d.ts +4 -4
- package/dist/ffmpeg/rtp.js +7 -6
- package/dist/ffmpeg/rtp.js.map +1 -1
- package/dist/ffmpeg/stream.js +1 -1
- package/dist/ffmpeg/stream.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/logclient/auth.d.ts +3 -3
- package/dist/logclient/auth.js +2 -2
- package/dist/logclient/auth.js.map +1 -1
- package/dist/logclient/cli-run.js +2 -2
- package/dist/logclient/cli-run.js.map +1 -1
- package/dist/logclient/cli.js +2 -2
- package/dist/logclient/client.js +2 -2
- package/dist/logclient/client.js.map +1 -1
- package/dist/logclient/rest.js +1 -1
- package/dist/logclient/socket-double.d.ts +1 -1
- package/dist/logclient/socket-double.js +1 -1
- package/dist/logclient/socket.js +5 -5
- package/dist/logclient/socket.js.map +1 -1
- package/dist/logclient/time-window.d.ts +1 -1
- package/dist/mqttClient.d.ts +1 -1
- package/dist/mqttClient.js +3 -3
- package/dist/mqttClient.js.map +1 -1
- package/dist/timer-registry.d.ts +100 -0
- package/dist/timer-registry.js +184 -0
- package/dist/timer-registry.js.map +1 -0
- package/dist/ui/featureOptions.js +6 -6
- package/dist/ui/pluginConfigSession.mjs +1 -1
- package/dist/ui/webUi-featureOptions/effects/persist.mjs +2 -2
- package/dist/ui/webUi-featureOptions/effects/theme.mjs +1 -1
- package/dist/ui/webUi-featureOptions/effects/tokens.mjs +1 -1
- package/dist/ui/webUi-featureOptions/rendering.mjs +2 -2
- package/dist/ui/webUi-featureOptions/selectors.mjs +3 -3
- package/dist/ui/webUi-featureOptions/state.mjs +72 -15
- package/dist/ui/webUi-featureOptions/store.mjs +1 -1
- package/dist/ui/webUi-featureOptions/utils.mjs +25 -1
- package/dist/ui/webUi-featureOptions/views/connectionError.mjs +28 -11
- package/dist/ui/webUi-featureOptions/views/deviceInfo.mjs +7 -0
- package/dist/ui/webUi-featureOptions/views/header.mjs +22 -5
- package/dist/ui/webUi-featureOptions/views/nav.mjs +39 -32
- package/dist/ui/webUi-featureOptions/views/options.mjs +13 -7
- package/dist/ui/webUi-featureOptions/views/search.mjs +2 -2
- package/dist/ui/webUi-featureOptions.mjs +109 -61
- package/dist/ui/webUi.mjs +48 -11
- package/dist/util.d.ts +118 -16
- package/dist/util.js +96 -14
- package/dist/util.js.map +1 -1
- package/dist/webui-loader.d.ts +80 -0
- package/dist/webui-loader.js +373 -0
- package/dist/webui-loader.js.map +1 -0
- package/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/logclient/socket.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/logclient/socket.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* the package barrel: it carries per-stream state (the carry-forward instant), so a single async-generator transform - fresh state per call, structurally single-use -
|
|
7
7
|
* makes cross-stream reuse with stale state unrepresentable, whereas a reused predicate would be wrong on a second stream.
|
|
8
8
|
*
|
|
9
|
-
* The carry-forward is the
|
|
9
|
+
* The carry-forward is the detail that matters. A record with no parseable instant (a `null` timestamp, or text in an unrecognized locale) is a continuation line of a
|
|
10
10
|
* multi-line message (a stack trace whose only first line carries `[timestamp]`), a bare status line, or a parse failure. A naive "is this record's own epoch in range"
|
|
11
11
|
* test would shred every stack trace - the first line in, the traceback gone. Instead a null-epoch line inherits the instant of the most recent record that DID parse, so
|
|
12
12
|
* a continuation is kept iff its parent is. This is a log-semantics rule intrinsic to "filter records by time correctly," so it lives in this primitive. The generator
|
package/dist/mqttClient.d.ts
CHANGED
|
@@ -199,7 +199,7 @@ export declare class MqttClient implements AsyncDisposable {
|
|
|
199
199
|
* broker URL) surfaces as an `Error` wrapping the underlying cause, so a misconfigured plugin fails loudly instead of living in a zombie state. Network-level
|
|
200
200
|
* failures (an unreachable broker reachable by a valid URL) do not throw - they surface asynchronously through the client's `error` event, are logged, and trigger
|
|
201
201
|
* mqtt.js's built-in auto-reconnect until {@link MqttClient.abort} or a parent signal ends the client for good. A pre-aborted parent signal still constructs
|
|
202
|
-
* a client (so `#mqtt`
|
|
202
|
+
* a client (so `#mqtt` stays non-null) and then immediately runs the regular teardown path.
|
|
203
203
|
*
|
|
204
204
|
* @param config - Static broker / topic configuration. See {@link MqttConfig}.
|
|
205
205
|
* @param init - Optional init options. See {@link MqttClientInit}.
|
package/dist/mqttClient.js
CHANGED
|
@@ -130,7 +130,7 @@ export class MqttClient {
|
|
|
130
130
|
* broker URL) surfaces as an `Error` wrapping the underlying cause, so a misconfigured plugin fails loudly instead of living in a zombie state. Network-level
|
|
131
131
|
* failures (an unreachable broker reachable by a valid URL) do not throw - they surface asynchronously through the client's `error` event, are logged, and trigger
|
|
132
132
|
* mqtt.js's built-in auto-reconnect until {@link MqttClient.abort} or a parent signal ends the client for good. A pre-aborted parent signal still constructs
|
|
133
|
-
* a client (so `#mqtt`
|
|
133
|
+
* a client (so `#mqtt` stays non-null) and then immediately runs the regular teardown path.
|
|
134
134
|
*
|
|
135
135
|
* @param config - Static broker / topic configuration. See {@link MqttConfig}.
|
|
136
136
|
* @param init - Optional init options. See {@link MqttClientInit}.
|
|
@@ -147,7 +147,7 @@ export class MqttClient {
|
|
|
147
147
|
this.#controller = new AbortController();
|
|
148
148
|
this.signal = composeSignals(init.signal, this.#controller.signal);
|
|
149
149
|
// Establish the underlying MQTT.js connection unconditionally so `#mqtt` is always a live reference by the time the constructor returns. A synchronous failure
|
|
150
|
-
// (typically URL parsing) is wrapped in an Error whose `cause` carries the original error, so callers
|
|
150
|
+
// (typically URL parsing) is wrapped in an Error whose `cause` carries the original error, so callers distinguish via `error.cause` rather than matching on
|
|
151
151
|
// mqtt.js's internal message text.
|
|
152
152
|
try {
|
|
153
153
|
// We connect with `rejectUnauthorized: false` deliberately. The broker URL is user-supplied and, in the typical Homebridge deployment, points at a local
|
|
@@ -424,7 +424,7 @@ export class MqttClient {
|
|
|
424
424
|
// on the way out, then ends the MQTT.js connection with `force = true` so any in-flight publish / subscribe packets are dropped rather than awaited - the client is
|
|
425
425
|
// unambiguously done, and the underlying library's reconnect logic exits permanently. The `#mqtt` reference is not nulled: callers never reach `#mqtt` accesses
|
|
426
426
|
// when the signal is aborted (every public method short-circuits on `signal.aborted`), and keeping the reference preserves the `readonly #mqtt: MqttJsClient`
|
|
427
|
-
//
|
|
427
|
+
// guarantee that lets TypeScript drop every non-null assertion in the live paths.
|
|
428
428
|
#teardown() {
|
|
429
429
|
this.#subscriptions.clear();
|
|
430
430
|
this.#mqtt.end(true);
|
package/dist/mqttClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mqttClient.js","sourceRoot":"","sources":["../src/mqttClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mqttClient.js","sourceRoot":"","sources":["../src/mqttClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Construction options for {@link TimerRegistry}.
|
|
3
|
+
*
|
|
4
|
+
* @category Utilities
|
|
5
|
+
*/
|
|
6
|
+
export interface TimerRegistryOptions {
|
|
7
|
+
/**
|
|
8
|
+
* A lifetime signal. When it aborts, the registry drains every pending timer and every later registration becomes inert; a signal already aborted at construction time
|
|
9
|
+
* means the registry is born disposed. Omit it for a registry whose only lifetime bound is an explicit `dispose()`.
|
|
10
|
+
*/
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A lifetime-bounded registry of callback timers: keyed one-shots and intervals, plus anonymous tracked one-shots.
|
|
15
|
+
*
|
|
16
|
+
* The surface is minimal on purpose:
|
|
17
|
+
*
|
|
18
|
+
* - `setTimeout(key, callback, delay)` / `setInterval(key, callback, interval)` arm a keyed timer. Registering under a key that already holds a timer - of either
|
|
19
|
+
* kind - clears the prior timer first, so the newest intent for a key wins. A keyed one-shot removes its entry before firing; a keyed interval repeats until cleared.
|
|
20
|
+
* - `schedule(callback, delay)` arms an anonymous one-shot: tracked for disposal, self-removing on fire, never replacing anything, so concurrent anonymous timers
|
|
21
|
+
* coexist.
|
|
22
|
+
* - `clear(key)` cancels and removes a keyed timer; `has(key)` reports whether one is currently armed.
|
|
23
|
+
* - `dispose()` (and `[Symbol.dispose]`) drains every pending timer and retires the registry: subsequent registrations are no-ops. An `options.signal` binds the same
|
|
24
|
+
* drain to the owner's lifetime, so the owner never has to unwire the registry by hand at teardown.
|
|
25
|
+
*
|
|
26
|
+
* This is a `Disposable` (synchronous) rather than `AsyncDisposable` because cancelling a timer is synchronous; there is no background work to await.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
*
|
|
30
|
+
* ```ts
|
|
31
|
+
* using timers = new TimerRegistry({ signal: this.signal });
|
|
32
|
+
*
|
|
33
|
+
* timers.setTimeout("relock", () => this.relock(), 5000);
|
|
34
|
+
* timers.setInterval("heartbeat", () => this.beat(), 1000);
|
|
35
|
+
* timers.schedule(() => this.settle(), 50);
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @category Utilities
|
|
39
|
+
*/
|
|
40
|
+
export declare class TimerRegistry implements Disposable {
|
|
41
|
+
#private;
|
|
42
|
+
/**
|
|
43
|
+
* Construct a registry. Construction schedules no timers. When `options.signal` is supplied, the abort handler is wired through {@link onAbort} last, against the
|
|
44
|
+
* already-initialized containers and flag; a signal already aborted at that point disposes the registry synchronously here, so it is born drained and inert.
|
|
45
|
+
*
|
|
46
|
+
* @param options - See {@link TimerRegistryOptions}.
|
|
47
|
+
*/
|
|
48
|
+
constructor(options?: TimerRegistryOptions);
|
|
49
|
+
/**
|
|
50
|
+
* Arm a keyed one-shot. Any timer already armed under `key` - one-shot or interval - is cleared first, so registering under a key declares the current intent for it
|
|
51
|
+
* and the newest intent wins. The entry is removed BEFORE the callback runs, so the callback, and anything it triggers, reads `has(key)` as `false` for a fired timer.
|
|
52
|
+
* A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
53
|
+
*
|
|
54
|
+
* @param key - The identity under which the timer is tracked; a later registration under the same key replaces this one.
|
|
55
|
+
* @param callback - The function to run once, after `delay`.
|
|
56
|
+
* @param delay - The delay, in milliseconds.
|
|
57
|
+
*/
|
|
58
|
+
setTimeout(key: string, callback: () => void, delay: number): void;
|
|
59
|
+
/**
|
|
60
|
+
* Arm a keyed repeating timer. Any timer already armed under `key` - one-shot or interval - is cleared first, the same replace-on-register rule as {@link setTimeout}.
|
|
61
|
+
* The entry persists across fires until {@link clear} removes it or the registry is disposed. A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
62
|
+
*
|
|
63
|
+
* @param key - The identity under which the timer is tracked; a later registration under the same key replaces this one.
|
|
64
|
+
* @param callback - The function to run on every interval.
|
|
65
|
+
* @param interval - The interval, in milliseconds.
|
|
66
|
+
*/
|
|
67
|
+
setInterval(key: string, callback: () => void, interval: number): void;
|
|
68
|
+
/**
|
|
69
|
+
* Arm an anonymous one-shot: tracked for disposal, self-removing on fire, and never replacing anything. Concurrent anonymous timers coexist; this is the shape for
|
|
70
|
+
* fire-and-forget work that has no identity to replace. A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
71
|
+
*
|
|
72
|
+
* @param callback - The function to run once, after `delay`.
|
|
73
|
+
* @param delay - The delay, in milliseconds.
|
|
74
|
+
*/
|
|
75
|
+
schedule(callback: () => void, delay: number): void;
|
|
76
|
+
/**
|
|
77
|
+
* Cancel and remove the keyed timer under `key`. Silently does nothing when no timer is armed under the key.
|
|
78
|
+
*
|
|
79
|
+
* @param key - The identity to clear.
|
|
80
|
+
*/
|
|
81
|
+
clear(key: string): void;
|
|
82
|
+
/**
|
|
83
|
+
* Whether a keyed timer is currently armed under `key`.
|
|
84
|
+
*
|
|
85
|
+
* @param key - The identity to test.
|
|
86
|
+
*
|
|
87
|
+
* @returns `true` when a keyed timer is armed under `key`, otherwise `false`.
|
|
88
|
+
*/
|
|
89
|
+
has(key: string): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Clear every pending timer, keyed and anonymous, and retire the registry: after disposal every registration method is a no-op, so a timer can never arm against a
|
|
92
|
+
* torn-down owner. Disposal is a no-op on repeat.
|
|
93
|
+
*/
|
|
94
|
+
dispose(): void;
|
|
95
|
+
/**
|
|
96
|
+
* `Disposable` implementation, delegating to {@link dispose} so the registry composes with `using` declarations and disposer stacks.
|
|
97
|
+
*/
|
|
98
|
+
[Symbol.dispose](): void;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=timer-registry.d.ts.map
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/* Copyright(C) 2017-2026, HJD (https://github.com/hjdhjd). All rights reserved.
|
|
2
|
+
*
|
|
3
|
+
* timer-registry.ts: A lifetime-bounded registry of callback timers - keyed one-shots and intervals plus anonymous one-shots - armed, fired, and drained as one.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* A lifetime-bounded registry of callback timers.
|
|
7
|
+
*
|
|
8
|
+
* A long-lived owner - a HomeKit accessory, a controller subsystem - accumulates timers it must all cancel when it tears down: keyed one-shots that a later registration
|
|
9
|
+
* under the same key should replace, keyed intervals that repeat until cleared, and anonymous fire-and-forget one-shots with no identity to replace. This registry holds
|
|
10
|
+
* all three under one disposal story. Arming a keyed timer replaces any prior timer under that key; a keyed one-shot removes its own entry before firing, so the callback
|
|
11
|
+
* reads the key as already gone; an anonymous one-shot self-removes on fire; and `dispose()`, or an aborted lifetime signal, drains every pending timer and makes every
|
|
12
|
+
* later registration inert, so a timer can never outlive the owner it was armed against.
|
|
13
|
+
*
|
|
14
|
+
* This is the callback-timer half of the library's time mechanisms: `Clock` owns awaited, promise-shaped delays, and this registry owns callback timers - one mechanism
|
|
15
|
+
* per shape, neither reaching into the other's territory.
|
|
16
|
+
*
|
|
17
|
+
* @module
|
|
18
|
+
*/
|
|
19
|
+
import { onAbort } from "./util.js";
|
|
20
|
+
/**
|
|
21
|
+
* A lifetime-bounded registry of callback timers: keyed one-shots and intervals, plus anonymous tracked one-shots.
|
|
22
|
+
*
|
|
23
|
+
* The surface is minimal on purpose:
|
|
24
|
+
*
|
|
25
|
+
* - `setTimeout(key, callback, delay)` / `setInterval(key, callback, interval)` arm a keyed timer. Registering under a key that already holds a timer - of either
|
|
26
|
+
* kind - clears the prior timer first, so the newest intent for a key wins. A keyed one-shot removes its entry before firing; a keyed interval repeats until cleared.
|
|
27
|
+
* - `schedule(callback, delay)` arms an anonymous one-shot: tracked for disposal, self-removing on fire, never replacing anything, so concurrent anonymous timers
|
|
28
|
+
* coexist.
|
|
29
|
+
* - `clear(key)` cancels and removes a keyed timer; `has(key)` reports whether one is currently armed.
|
|
30
|
+
* - `dispose()` (and `[Symbol.dispose]`) drains every pending timer and retires the registry: subsequent registrations are no-ops. An `options.signal` binds the same
|
|
31
|
+
* drain to the owner's lifetime, so the owner never has to unwire the registry by hand at teardown.
|
|
32
|
+
*
|
|
33
|
+
* This is a `Disposable` (synchronous) rather than `AsyncDisposable` because cancelling a timer is synchronous; there is no background work to await.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
*
|
|
37
|
+
* ```ts
|
|
38
|
+
* using timers = new TimerRegistry({ signal: this.signal });
|
|
39
|
+
*
|
|
40
|
+
* timers.setTimeout("relock", () => this.relock(), 5000);
|
|
41
|
+
* timers.setInterval("heartbeat", () => this.beat(), 1000);
|
|
42
|
+
* timers.schedule(() => this.settle(), 50);
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @category Utilities
|
|
46
|
+
*/
|
|
47
|
+
export class TimerRegistry {
|
|
48
|
+
// Keyed timers, one-shots and intervals alike: a key holds at most one live timer, so registering under a key replaces whatever it held.
|
|
49
|
+
#keyed = new Map();
|
|
50
|
+
// Anonymous one-shots, tracked only so disposal can drain them: no key, no replacement, each self-removing when it fires.
|
|
51
|
+
#anonymous = new Set();
|
|
52
|
+
// Flipped once by `dispose()`. A disposed registry drains nothing further and arms nothing further.
|
|
53
|
+
#disposed = false;
|
|
54
|
+
// The lifetime signal, when one was supplied. Registration guards read its aborted state so a registration racing the abort cascade cannot arm a timer that would
|
|
55
|
+
// outlive the drain.
|
|
56
|
+
#signal;
|
|
57
|
+
// The abort-listener handle. Disposing it inside `dispose()` detaches the listener from a long-lived composed signal, so a registry disposed directly does not leave a
|
|
58
|
+
// handler attached to a signal that outlives it.
|
|
59
|
+
#abortRegistration;
|
|
60
|
+
/**
|
|
61
|
+
* Construct a registry. Construction schedules no timers. When `options.signal` is supplied, the abort handler is wired through {@link onAbort} last, against the
|
|
62
|
+
* already-initialized containers and flag; a signal already aborted at that point disposes the registry synchronously here, so it is born drained and inert.
|
|
63
|
+
*
|
|
64
|
+
* @param options - See {@link TimerRegistryOptions}.
|
|
65
|
+
*/
|
|
66
|
+
constructor(options = {}) {
|
|
67
|
+
this.#signal = options.signal;
|
|
68
|
+
// Wire the abort handler last, against fully-initialized fields, because `onAbort` runs the handler inline for an already-aborted signal - that inline call disposes
|
|
69
|
+
// the registry mid-construction, which is exactly the born-disposed outcome.
|
|
70
|
+
if (this.#signal !== undefined) {
|
|
71
|
+
this.#abortRegistration = onAbort(this.#signal, () => this.dispose());
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Arm a keyed one-shot. Any timer already armed under `key` - one-shot or interval - is cleared first, so registering under a key declares the current intent for it
|
|
76
|
+
* and the newest intent wins. The entry is removed BEFORE the callback runs, so the callback, and anything it triggers, reads `has(key)` as `false` for a fired timer.
|
|
77
|
+
* A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
78
|
+
*
|
|
79
|
+
* @param key - The identity under which the timer is tracked; a later registration under the same key replaces this one.
|
|
80
|
+
* @param callback - The function to run once, after `delay`.
|
|
81
|
+
* @param delay - The delay, in milliseconds.
|
|
82
|
+
*/
|
|
83
|
+
setTimeout(key, callback, delay) {
|
|
84
|
+
if (this.#disposed || (this.#signal?.aborted ?? false)) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
this.clear(key);
|
|
88
|
+
// Call the GLOBAL `setTimeout`, not the `node:timers` binding, so any harness that replaces the globals - including `node:test` `mock.timers` - observes every timer
|
|
89
|
+
// this registry arms.
|
|
90
|
+
const handle = setTimeout(() => {
|
|
91
|
+
// Remove the entry before running the callback, so a fired one-shot reads as absent to the callback and to anything the callback triggers.
|
|
92
|
+
this.#keyed.delete(key);
|
|
93
|
+
callback();
|
|
94
|
+
}, delay);
|
|
95
|
+
this.#keyed.set(key, handle);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Arm a keyed repeating timer. Any timer already armed under `key` - one-shot or interval - is cleared first, the same replace-on-register rule as {@link setTimeout}.
|
|
99
|
+
* The entry persists across fires until {@link clear} removes it or the registry is disposed. A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
100
|
+
*
|
|
101
|
+
* @param key - The identity under which the timer is tracked; a later registration under the same key replaces this one.
|
|
102
|
+
* @param callback - The function to run on every interval.
|
|
103
|
+
* @param interval - The interval, in milliseconds.
|
|
104
|
+
*/
|
|
105
|
+
setInterval(key, callback, interval) {
|
|
106
|
+
if (this.#disposed || (this.#signal?.aborted ?? false)) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
this.clear(key);
|
|
110
|
+
// The GLOBAL `setInterval`, for the same harness-visibility reason as the keyed one-shot. The entry is not removed on fire: an interval repeats until it is cleared
|
|
111
|
+
// or drained.
|
|
112
|
+
const handle = setInterval(callback, interval);
|
|
113
|
+
this.#keyed.set(key, handle);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Arm an anonymous one-shot: tracked for disposal, self-removing on fire, and never replacing anything. Concurrent anonymous timers coexist; this is the shape for
|
|
117
|
+
* fire-and-forget work that has no identity to replace. A no-op once the registry is disposed or its lifetime signal has aborted.
|
|
118
|
+
*
|
|
119
|
+
* @param callback - The function to run once, after `delay`.
|
|
120
|
+
* @param delay - The delay, in milliseconds.
|
|
121
|
+
*/
|
|
122
|
+
schedule(callback, delay) {
|
|
123
|
+
if (this.#disposed || (this.#signal?.aborted ?? false)) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
// The GLOBAL `setTimeout`, for the same harness-visibility reason as the keyed timers. The handle self-removes before the callback runs, matching the keyed
|
|
127
|
+
// one-shot's ordering; an anonymous timer has no key or handle to query, so that ordering carries no public observable and is stated here rather than pinned by test.
|
|
128
|
+
const handle = setTimeout(() => {
|
|
129
|
+
this.#anonymous.delete(handle);
|
|
130
|
+
callback();
|
|
131
|
+
}, delay);
|
|
132
|
+
this.#anonymous.add(handle);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Cancel and remove the keyed timer under `key`. Silently does nothing when no timer is armed under the key.
|
|
136
|
+
*
|
|
137
|
+
* @param key - The identity to clear.
|
|
138
|
+
*/
|
|
139
|
+
clear(key) {
|
|
140
|
+
const handle = this.#keyed.get(key);
|
|
141
|
+
if (handle !== undefined) {
|
|
142
|
+
// `clearTimeout` cancels both one-shots and intervals - Node holds them in a single pool - so one call clears whichever kind the key held.
|
|
143
|
+
clearTimeout(handle);
|
|
144
|
+
this.#keyed.delete(key);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Whether a keyed timer is currently armed under `key`.
|
|
149
|
+
*
|
|
150
|
+
* @param key - The identity to test.
|
|
151
|
+
*
|
|
152
|
+
* @returns `true` when a keyed timer is armed under `key`, otherwise `false`.
|
|
153
|
+
*/
|
|
154
|
+
has(key) {
|
|
155
|
+
return this.#keyed.has(key);
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Clear every pending timer, keyed and anonymous, and retire the registry: after disposal every registration method is a no-op, so a timer can never arm against a
|
|
159
|
+
* torn-down owner. Disposal is a no-op on repeat.
|
|
160
|
+
*/
|
|
161
|
+
dispose() {
|
|
162
|
+
if (this.#disposed) {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
this.#disposed = true;
|
|
166
|
+
for (const handle of this.#keyed.values()) {
|
|
167
|
+
clearTimeout(handle);
|
|
168
|
+
}
|
|
169
|
+
this.#keyed.clear();
|
|
170
|
+
for (const handle of this.#anonymous) {
|
|
171
|
+
clearTimeout(handle);
|
|
172
|
+
}
|
|
173
|
+
this.#anonymous.clear();
|
|
174
|
+
// Detach the abort listener so a long-lived composed signal retains no handler for a registry that has already been disposed.
|
|
175
|
+
this.#abortRegistration?.[Symbol.dispose]();
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* `Disposable` implementation, delegating to {@link dispose} so the registry composes with `using` declarations and disposer stacks.
|
|
179
|
+
*/
|
|
180
|
+
[Symbol.dispose]() {
|
|
181
|
+
this.dispose();
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=timer-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timer-registry.js","sourceRoot":"","sources":["../src/timer-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -136,7 +136,7 @@ function entryAddressesScope({ catalog, rawEntry, target }) {
|
|
|
136
136
|
* name on a `render` declaration does not resolve, surfacing the misconfiguration at load time rather than silently degrading the log-emission path.
|
|
137
137
|
*
|
|
138
138
|
* The index is the catalog-side input to every other pure helper in this module. Build it once per catalog; reuse it across every configured-options mutation
|
|
139
|
-
* because the catalog is
|
|
139
|
+
* because the catalog is unchanged across those mutations. Categories without an entry in the options map are skipped silently (a plugin defines a category for
|
|
140
140
|
* future expansion before any option has migrated into it).
|
|
141
141
|
*
|
|
142
142
|
* @param categories - The raw category list.
|
|
@@ -681,7 +681,7 @@ export class FeatureOptions {
|
|
|
681
681
|
*
|
|
682
682
|
* Callers express intent ("forget any configuration for option X at scope Y") and the model owns the entry-format end-to-end. The match is value-aware: for
|
|
683
683
|
* value-centric options it covers both the bare scoped entry and any entry carrying a single trailing value segment, so a subsequent {@link setOption} cleanly
|
|
684
|
-
* replaces whatever was there. No-op when no entry addresses the target scope, so callers can treat this as
|
|
684
|
+
* replaces whatever was there. No-op when no entry addresses the target scope, so callers can treat this as a repeatable reset.
|
|
685
685
|
*
|
|
686
686
|
* @param args - The addressing intent: option key and optional scope id. See {@link ClearOptionArgs}.
|
|
687
687
|
*
|
|
@@ -700,7 +700,7 @@ export class FeatureOptions {
|
|
|
700
700
|
return;
|
|
701
701
|
}
|
|
702
702
|
this.#configuredOptions = next;
|
|
703
|
-
// Only the index depends on the configured-options array; the catalog-derived state is
|
|
703
|
+
// Only the index depends on the configured-options array; the catalog-derived state is unchanged across config mutations and need not be touched here.
|
|
704
704
|
this.#configIndex = buildConfigIndex(this.#catalog, this.#configuredOptions);
|
|
705
705
|
}
|
|
706
706
|
/**
|
|
@@ -725,7 +725,7 @@ export class FeatureOptions {
|
|
|
725
725
|
*/
|
|
726
726
|
setOption(args) {
|
|
727
727
|
this.#configuredOptions = applySetOption({ args, catalog: this.#catalog, configuredOptions: this.#configuredOptions });
|
|
728
|
-
// Only the index depends on the configured-options array; the catalog-derived state is
|
|
728
|
+
// Only the index depends on the configured-options array; the catalog-derived state is unchanged across config mutations and need not be touched here.
|
|
729
729
|
this.#configIndex = buildConfigIndex(this.#catalog, this.#configuredOptions);
|
|
730
730
|
}
|
|
731
731
|
/**
|
|
@@ -791,7 +791,7 @@ export class FeatureOptions {
|
|
|
791
791
|
* @returns Returns the current list of available feature option categories.
|
|
792
792
|
*/
|
|
793
793
|
get categories() {
|
|
794
|
-
// The catalog stores the categories as readonly to encode the immutability
|
|
794
|
+
// The catalog stores the categories as readonly to encode the immutability guarantee the pure functional core relies on. The public getter returns the
|
|
795
795
|
// historical mutable type for backward compatibility - the array is the same identity the caller passed at construction (or via the setter), so consumers
|
|
796
796
|
// mutating it would be mutating the catalog regardless of the return type. The readonly annotation is the discipline, not a runtime enforcement.
|
|
797
797
|
return this.#catalog.categories;
|
|
@@ -823,7 +823,7 @@ export class FeatureOptions {
|
|
|
823
823
|
*/
|
|
824
824
|
set configuredOptions(options) {
|
|
825
825
|
this.#configuredOptions = options ?? [];
|
|
826
|
-
// The catalog-derived state is
|
|
826
|
+
// The catalog-derived state is unchanged across config mutations; only the lookup index needs rebuilding.
|
|
827
827
|
this.#configIndex = buildConfigIndex(this.#catalog, this.#configuredOptions);
|
|
828
828
|
}
|
|
829
829
|
/**
|
|
@@ -124,7 +124,7 @@ export class PluginConfigSession {
|
|
|
124
124
|
* name alongside actual data.
|
|
125
125
|
*
|
|
126
126
|
* Built like {@link commit} for symmetry and clarity: the read happens into a local, the local is seeded, and a single trailing assignment advances the held
|
|
127
|
-
* reference. (The build-then-assign
|
|
127
|
+
* reference. (The build-then-assign does not guard against a torn write here - the only I/O is the first statement - but it keeps this method's shape
|
|
128
128
|
* consistent with {@link commit}.)
|
|
129
129
|
*
|
|
130
130
|
* @returns {Promise<void>}
|
|
@@ -177,10 +177,10 @@ export const registerPersistEffect = ({ host, session, signal, store }) => {
|
|
|
177
177
|
return;
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
-
// Single-writer drain start-site (mutation path). The macrotask-ordering
|
|
180
|
+
// Single-writer drain start-site (mutation path). The macrotask-ordering rule the serialization rests on: every subscribed store mutation
|
|
181
181
|
// (option:set / option:cleared / options:reset / model:reverted) and every flush() caller (hide() / the visibilitychange handler) originates from a DOM-event
|
|
182
182
|
// macrotask, so none can preempt the queued `inFlight.finally` microtask and strand a `pending` edit in the gap between the drain returning and its `finally`
|
|
183
|
-
// clearing `inFlight`. (Forward-safety: if a future caller ever dispatches one of those subscribed actions from a microtask continuation, this
|
|
183
|
+
// clearing `inFlight`. (Forward-safety: if a future caller ever dispatches one of those subscribed actions from a microtask continuation, this rule
|
|
184
184
|
// must be re-checked.) Reset `flushing` here too so it never outlives the drain it belongs to.
|
|
185
185
|
inFlight = drain().finally(() => {
|
|
186
186
|
|
|
@@ -47,7 +47,7 @@ export const registerThemeEffect = async ({ host, probe: { intervalMs = 20, time
|
|
|
47
47
|
|
|
48
48
|
// Restore the document to its pre-effect state, symmetric with every mutation the effect made to it: drop the adopted stylesheet, then the `color-scheme` and
|
|
49
49
|
// `.fo-dark` class that applyColorScheme set on `:root` and the accent-token inline overrides the Bootstrap probe wrote there. The `color-scheme` removal is the
|
|
50
|
-
//
|
|
50
|
+
// one that matters - it is a native property, so a leftover `dark` value would tint default form-control and scrollbar rendering on whatever content occupies the
|
|
51
51
|
// document after teardown (in a multi-page host, a sibling tab). The class and token overrides are inert once the stylesheet that reads them is gone, but are
|
|
52
52
|
// cleared too so the effect leaves no trace on `:root`.
|
|
53
53
|
document.adoptedStyleSheets = document.adoptedStyleSheets.filter((sheet) => sheet !== stylesheet);
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* font scale, spacing scale, radii, motion, accent colors, surfaces, borders, text, form controls, interactive states, specific colors). Cleanup is automatic via
|
|
10
10
|
* the supplied AbortSignal - aborting removes the stylesheet from `document.adoptedStyleSheets`.
|
|
11
11
|
*
|
|
12
|
-
* Stylistic
|
|
12
|
+
* Stylistic rules the tokens encode:
|
|
13
13
|
*
|
|
14
14
|
* 1. **Tokens declare, theme overrides.** Accent tokens default to the CSS-standard `AccentColor` / `AccentColorText` keywords; the theme effect overrides them at
|
|
15
15
|
* runtime via `documentElement.style.setProperty` after probing Bootstrap's `.btn-primary`. The declared defaults remain in effect until (and if) the probe
|
|
@@ -240,7 +240,7 @@ export const triStateTransition = ({ catalog, checkbox, configIndex, controllerI
|
|
|
240
240
|
return { action: writeAction({ deviceId, enabled: true, expandedName, inputValue, option, upstream, valueCentric: isValueOption(catalog, expandedName) }) };
|
|
241
241
|
};
|
|
242
242
|
|
|
243
|
-
// Map a view scope kind to the suffix label rendered on category headers. Switch on the
|
|
243
|
+
// Map a view scope kind to the suffix label rendered on category headers. Switch on the tag; every scope kind maps to its own label.
|
|
244
244
|
const scopeLabel = (scopeKind) => {
|
|
245
245
|
|
|
246
246
|
switch(scopeKind) {
|
|
@@ -320,7 +320,7 @@ const createLabel = ({ entry, expandedName }) => createElement("label", {
|
|
|
320
320
|
}, [entry.description]);
|
|
321
321
|
|
|
322
322
|
// Apply the label's scope-color class, replacing any color previously applied. The color classes are mutually exclusive, so we strip every one of them before adding
|
|
323
|
-
// the current one - this makes the function
|
|
323
|
+
// the current one - this makes the function safe to re-run on every projection change, which is what lets a toggle re-color a modified option's label
|
|
324
324
|
// in place. The construction path and the per-mutation update path share this one writer, so the initial color and every subsequent color come from the same map.
|
|
325
325
|
const applyLabelColor = ({ entry, inheriting, label }) => {
|
|
326
326
|
|
|
@@ -26,7 +26,7 @@ import { memoize } from "./store.mjs";
|
|
|
26
26
|
*/
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
* Extract the controller serial from the scope
|
|
29
|
+
* Extract the controller serial from the scope tag, or null when no controller is in context. Pure helper - one-line tag read, not memoized.
|
|
30
30
|
*
|
|
31
31
|
* @param {import("./state.mjs").FeatureOptionsState} state - The current state.
|
|
32
32
|
* @returns {string | null} The controller serial when the scope is controller-based, null otherwise.
|
|
@@ -50,7 +50,7 @@ export const selectedControllerId = (state) => {
|
|
|
50
50
|
};
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
|
-
* Extract the device serial from the scope
|
|
53
|
+
* Extract the device serial from the scope tag, or null when the scope is global or controller-only. Pure helper - one-line tag read, not
|
|
54
54
|
* memoized.
|
|
55
55
|
*
|
|
56
56
|
* @param {import("./state.mjs").FeatureOptionsState} state - The current state.
|
|
@@ -83,7 +83,7 @@ export const selectedDeviceId = (state) => {
|
|
|
83
83
|
* unrelated entries. If that assumption ever needs to weaken (e.g., a plugin starts surfacing user-chosen serials), encode the components with
|
|
84
84
|
* `encodeURIComponent` at this seam before composing the key.
|
|
85
85
|
*
|
|
86
|
-
* @param {import("./state.mjs").Scope} scope - The scope
|
|
86
|
+
* @param {import("./state.mjs").Scope} scope - The scope tag.
|
|
87
87
|
* @returns {string} A stable string key identifying the view.
|
|
88
88
|
*/
|
|
89
89
|
export const scopeCacheKey = (scope) => {
|