@monotykamary/localterm-server 2.40.0 → 2.41.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/dist/caffeinate-manager.d.ts +6 -0
- package/dist/caffeinate-manager.d.ts.map +1 -1
- package/dist/caffeinate-manager.js +84 -14
- package/dist/caffeinate-manager.js.map +1 -1
- package/dist/caffeinate-preferences-store.d.ts +2 -0
- package/dist/caffeinate-preferences-store.d.ts.map +1 -1
- package/dist/caffeinate-preferences-store.js +39 -20
- package/dist/caffeinate-preferences-store.js.map +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas.d.ts +7 -1
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +15 -0
- package/dist/schemas.js.map +1 -1
- package/dist/session-manager.d.ts +1 -0
- package/dist/session-manager.d.ts.map +1 -1
- package/dist/session-manager.js +11 -0
- package/dist/session-manager.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,7 @@ export interface CaffeinateManagerOptions {
|
|
|
11
11
|
snapshotProcesses?: SnapshotProcesses;
|
|
12
12
|
defaultCommands?: readonly string[];
|
|
13
13
|
hasRecentOutput?: (pids: readonly number[], withinMs: number) => boolean;
|
|
14
|
+
hasPeerClient?: () => boolean;
|
|
14
15
|
batteryProbe?: BatteryProbe;
|
|
15
16
|
}
|
|
16
17
|
interface CaffeinateManagerEvents {
|
|
@@ -22,10 +23,12 @@ export declare class CaffeinateManager extends EventEmitter<CaffeinateManagerEve
|
|
|
22
23
|
private readonly listSessionPids;
|
|
23
24
|
private readonly snapshotProcesses;
|
|
24
25
|
private readonly checkRecentOutput?;
|
|
26
|
+
private readonly hasPeerClient;
|
|
25
27
|
private readonly batteryProbe;
|
|
26
28
|
readonly defaultCommands: readonly string[];
|
|
27
29
|
private autoActive;
|
|
28
30
|
private autoTrigger;
|
|
31
|
+
private autoPeerActive;
|
|
29
32
|
private pokeTimer;
|
|
30
33
|
private activityGateTimer;
|
|
31
34
|
private batteryLow;
|
|
@@ -42,11 +45,14 @@ export declare class CaffeinateManager extends EventEmitter<CaffeinateManagerEve
|
|
|
42
45
|
get mode(): CaffeinateMode;
|
|
43
46
|
get commands(): string[];
|
|
44
47
|
get activityGate(): boolean;
|
|
48
|
+
get peerKeepAwake(): boolean;
|
|
45
49
|
get batteryThreshold(): number | null;
|
|
46
50
|
get activeTrigger(): string | null;
|
|
51
|
+
get peerActive(): boolean;
|
|
47
52
|
setMode(mode: CaffeinateMode): void;
|
|
48
53
|
setCommands(commands: readonly string[]): void;
|
|
49
54
|
setActivityGate(enabled: boolean): void;
|
|
55
|
+
setPeerKeepAwake(enabled: boolean): void;
|
|
50
56
|
pokeAuto(): void;
|
|
51
57
|
noteOutputActivity(): void;
|
|
52
58
|
pollNow(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caffeinate-manager.d.ts","sourceRoot":"","sources":["../src/caffeinate-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAUvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,oBAAoB,CAAC;IACjC,KAAK,EAAE,0BAA0B,CAAC;IAGlC,eAAe,EAAE,MAAM,MAAM,EAAE,CAAC;IAEhC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAIpC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAMzE,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,UAAU,uBAAuB;IAC/B,MAAM,EAAE,EAAE,CAAC;CACZ;
|
|
1
|
+
{"version":3,"file":"caffeinate-manager.d.ts","sourceRoot":"","sources":["../src/caffeinate-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,13 @@ import { CAFFEINATE_ACTIVITY_GATE_DEBOUNCE_MS, CAFFEINATE_AUTO_DEFAULT_COMMANDS,
|
|
|
9
9
|
// process tree under each session's shell. When the activity gate is enabled
|
|
10
10
|
// (the default), caffeinate further requires that a recognized program is
|
|
11
11
|
// producing output; after CAFFEINATE_ACTIVITY_GATE_DEBOUNCE_MS of silence,
|
|
12
|
-
// caffeinate releases.
|
|
13
|
-
//
|
|
12
|
+
// caffeinate releases. When peer keep-awake is enabled (also the default),
|
|
13
|
+
// caffeinate ALSO stays active while any session has a second client attached
|
|
14
|
+
// (a phone joining via the share QR, or another tab via the session picker) —
|
|
15
|
+
// held for the peer's lifetime and bypassing the activity gate, since an
|
|
16
|
+
// idle-but-attached phone is exactly the state you want to hold the machine
|
|
17
|
+
// awake for. Emits `change` whenever any broadcastable field
|
|
18
|
+
// (mode/active/commands/batteryThreshold/peerKeepAwake) moves.
|
|
14
19
|
//
|
|
15
20
|
// Automatic detection is event-driven: it never polls on a timer. A `ps`
|
|
16
21
|
// snapshot is taken only in response to an event — a session's foreground
|
|
@@ -39,10 +44,16 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
39
44
|
listSessionPids;
|
|
40
45
|
snapshotProcesses;
|
|
41
46
|
checkRecentOutput;
|
|
47
|
+
hasPeerClient;
|
|
42
48
|
batteryProbe;
|
|
43
49
|
defaultCommands;
|
|
44
50
|
autoActive = false;
|
|
45
51
|
autoTrigger = null;
|
|
52
|
+
// Whether the most recent poll held caffeinate because a peer was attached
|
|
53
|
+
// (vs. a recognized program). Drives the activity-gate timer arming: a peer
|
|
54
|
+
// holds until it disconnects (an event that pokes its own re-check), so the
|
|
55
|
+
// silence-release timer must not arm while one is present.
|
|
56
|
+
autoPeerActive = false;
|
|
46
57
|
pokeTimer = null;
|
|
47
58
|
activityGateTimer = null;
|
|
48
59
|
// The cached battery-suppression flag: true means the machine is on battery
|
|
@@ -77,6 +88,7 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
77
88
|
this.snapshotProcesses = options.snapshotProcesses ?? defaultSnapshotProcesses;
|
|
78
89
|
this.defaultCommands = options.defaultCommands ?? CAFFEINATE_AUTO_DEFAULT_COMMANDS;
|
|
79
90
|
this.checkRecentOutput = options.hasRecentOutput;
|
|
91
|
+
this.hasPeerClient = options.hasPeerClient ?? (() => false);
|
|
80
92
|
this.batteryProbe = options.batteryProbe ?? defaultBatteryProbe;
|
|
81
93
|
// An unexpected death of the caffeinate process flips controller state; pass
|
|
82
94
|
// that through so every tab rebroadcasts the authoritative `active`.
|
|
@@ -102,12 +114,22 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
102
114
|
get activityGate() {
|
|
103
115
|
return this.store.getActivityGate();
|
|
104
116
|
}
|
|
117
|
+
get peerKeepAwake() {
|
|
118
|
+
return this.store.getPeerKeepAwake();
|
|
119
|
+
}
|
|
105
120
|
get batteryThreshold() {
|
|
106
121
|
return this.store.getBatteryThreshold();
|
|
107
122
|
}
|
|
108
123
|
get activeTrigger() {
|
|
109
124
|
return this.autoActive ? this.autoTrigger : null;
|
|
110
125
|
}
|
|
126
|
+
// Whether automatic mode is currently holding caffeinate because a peer (a
|
|
127
|
+
// second client on a session) is attached — independent of the program
|
|
128
|
+
// trigger, so the UI can highlight the peer setting row even when a program
|
|
129
|
+
// is also active (in which case `activeTrigger` carries the program name).
|
|
130
|
+
get peerActive() {
|
|
131
|
+
return this.autoPeerActive;
|
|
132
|
+
}
|
|
111
133
|
setMode(mode) {
|
|
112
134
|
if (this.disposed)
|
|
113
135
|
return;
|
|
@@ -117,6 +139,7 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
117
139
|
if (mode !== "automatic") {
|
|
118
140
|
this.autoActive = false;
|
|
119
141
|
this.autoTrigger = null;
|
|
142
|
+
this.autoPeerActive = false;
|
|
120
143
|
this.clearActivityGateTimer();
|
|
121
144
|
}
|
|
122
145
|
this.recompute();
|
|
@@ -151,6 +174,16 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
151
174
|
}
|
|
152
175
|
this.emit("change");
|
|
153
176
|
}
|
|
177
|
+
setPeerKeepAwake(enabled) {
|
|
178
|
+
if (this.disposed)
|
|
179
|
+
return;
|
|
180
|
+
this.store.setPeerKeepAwake(enabled);
|
|
181
|
+
// The trigger set changed; re-derive automatic detection immediately so a
|
|
182
|
+
// peer that was already attached engages (or releases) at once.
|
|
183
|
+
if (this.mode === "automatic" && this.supported)
|
|
184
|
+
void this.pollAuto();
|
|
185
|
+
this.emit("change");
|
|
186
|
+
}
|
|
154
187
|
// Cheap, debounced nudge to re-check automatic detection in response to an
|
|
155
188
|
// event (a session's foreground process changing, or a session
|
|
156
189
|
// connecting/disconnecting). The debounce coalesces a burst of simultaneous
|
|
@@ -180,6 +213,12 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
180
213
|
this.pokeAuto();
|
|
181
214
|
return;
|
|
182
215
|
}
|
|
216
|
+
// A peer is holding caffeinate; output is irrelevant to it. The peer
|
|
217
|
+
// releases on disconnect (an event that pokes its own re-check), so the
|
|
218
|
+
// silence timer must not arm while one is present — otherwise the trailing
|
|
219
|
+
// edge would poll on a timer and defeat the event-driven design.
|
|
220
|
+
if (this.autoPeerActive)
|
|
221
|
+
return;
|
|
183
222
|
this.clearActivityGateTimer();
|
|
184
223
|
// Schedule a re-check after the debounce window. If more output arrives
|
|
185
224
|
// before this fires, the timer resets (trailing-edge).
|
|
@@ -388,33 +427,64 @@ export class CaffeinateManager extends EventEmitter {
|
|
|
388
427
|
this.polling = true;
|
|
389
428
|
try {
|
|
390
429
|
const pids = this.listSessionPids();
|
|
391
|
-
let
|
|
392
|
-
let
|
|
430
|
+
let programActive = false;
|
|
431
|
+
let programTrigger = null;
|
|
393
432
|
if (pids.length > 0) {
|
|
394
433
|
const snapshot = await this.snapshotProcesses();
|
|
395
|
-
|
|
396
|
-
if (
|
|
434
|
+
programTrigger = anySessionRunsTrigger(pids, snapshot, this.triggerSet());
|
|
435
|
+
if (programTrigger) {
|
|
397
436
|
if (!this.activityGate) {
|
|
398
|
-
|
|
437
|
+
programActive = true;
|
|
399
438
|
}
|
|
400
439
|
else if (this.checkRecentOutput) {
|
|
401
|
-
|
|
440
|
+
programActive = this.checkRecentOutput(pids, CAFFEINATE_ACTIVITY_GATE_DEBOUNCE_MS);
|
|
402
441
|
}
|
|
403
442
|
}
|
|
404
443
|
}
|
|
405
444
|
if (this.disposed || this.mode !== "automatic")
|
|
406
445
|
return;
|
|
446
|
+
// A peer (a second client on a session) holds caffeinate independently of
|
|
447
|
+
// the program detection and bypasses the activity gate: an idle-but-
|
|
448
|
+
// attached phone must not release the machine to sleep. The peer's hold is
|
|
449
|
+
// surfaced via `peerActive` (independent of `activeTrigger`, which carries
|
|
450
|
+
// the program name) so the UI can highlight each setting row on its own
|
|
451
|
+
// when both are active.
|
|
452
|
+
const peerActive = this.peerKeepAwake && this.hasPeerClient();
|
|
453
|
+
const next = programActive || peerActive;
|
|
407
454
|
const prevAutoActive = this.autoActive;
|
|
455
|
+
const prevAutoTrigger = this.autoTrigger;
|
|
456
|
+
const prevAutoPeerActive = this.autoPeerActive;
|
|
408
457
|
this.autoActive = next;
|
|
409
|
-
|
|
410
|
-
|
|
458
|
+
// `autoTrigger` carries only the program trigger (a command name or null);
|
|
459
|
+
// the peer trigger is surfaced separately via `peerActive` so the UI can
|
|
460
|
+
// highlight each setting row independently when both are active.
|
|
461
|
+
this.autoTrigger = next ? programTrigger : null;
|
|
462
|
+
this.autoPeerActive = peerActive;
|
|
463
|
+
// Broadcast on any change to the broadcastable derived state, not just
|
|
464
|
+
// when caffeinate turns on/off: the trigger identity (which program, or
|
|
465
|
+
// whether a peer is holding) can flip while caffeinate stays continuously
|
|
466
|
+
// active (a program starting while a peer is attached, a peer leaving
|
|
467
|
+
// while a program runs). Without these the UI keeps a stale `activeTrigger`
|
|
468
|
+
// / `peerActive` and the wrong row (or none) highlights.
|
|
469
|
+
if (next !== prevAutoActive ||
|
|
470
|
+
this.autoTrigger !== prevAutoTrigger ||
|
|
471
|
+
this.autoPeerActive !== prevAutoPeerActive) {
|
|
411
472
|
this.emit("change");
|
|
412
473
|
}
|
|
413
474
|
this.recompute();
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
475
|
+
if (peerActive) {
|
|
476
|
+
// A peer now holds caffeinate; any program-silence timer armed before
|
|
477
|
+
// the peer joined is obsolete (the peer releases on disconnect, not
|
|
478
|
+
// on silence). Clear it so a stale trailing edge can't fire a spurious
|
|
479
|
+
// poll and re-arm into a timer-driven loop.
|
|
480
|
+
this.clearActivityGateTimer();
|
|
481
|
+
}
|
|
482
|
+
// Arm the silence-release timer only when a gated program is the SOLE
|
|
483
|
+
// reason caffeinate is active. A peer holds until it disconnects (which
|
|
484
|
+
// pokes its own re-check via onSessionActivity), so silence must not
|
|
485
|
+
// release while one is present — and a program active alongside a peer is
|
|
486
|
+
// also covered by the peer's hold.
|
|
487
|
+
if (this.activityGate && programActive && !peerActive) {
|
|
418
488
|
this.armActivityGateTimerIfNeeded();
|
|
419
489
|
}
|
|
420
490
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caffeinate-manager.js","sourceRoot":"","sources":["../src/caffeinate-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EACL,mBAAmB,GAGpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GAEzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,oCAAoC,EACpC,gCAAgC,EAChC,gCAAgC,EAChC,uCAAuC,EACvC,uCAAuC,EACvC,qCAAqC,EACrC,aAAa,GACd,MAAM,gBAAgB,CAAC;AA6BxB,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,0EAA0E;AAC1E,2EAA2E;AAC3E,uEAAuE;AACvE,iDAAiD;AACjD,EAAE;AACF,yEAAyE;AACzE,0EAA0E;AAC1E,2EAA2E;AAC3E,wEAAwE;AACxE,+EAA+E;AAC/E,8EAA8E;AAC9E,8EAA8E;AAC9E,wEAAwE;AACxE,YAAY;AACZ,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,8EAA8E;AAC9E,mEAAmE;AACnE,+EAA+E;AAC/E,gFAAgF;AAChF,4EAA4E;AAC5E,6EAA6E;AAC7E,+EAA+E;AAC/E,8EAA8E;AAC9E,0BAA0B;AAC1B,MAAM,OAAO,iBAAkB,SAAQ,YAAqC;IACzD,UAAU,CAAuB;IACjC,KAAK,CAA6B;IAClC,eAAe,CAAiB;IAChC,iBAAiB,CAAoB;IACrC,iBAAiB,CAA0D;IAC3E,YAAY,CAAe;IACnC,eAAe,CAAoB;IAEpC,UAAU,GAAG,KAAK,CAAC;IACnB,WAAW,GAAkB,IAAI,CAAC;IAClC,SAAS,GAA0B,IAAI,CAAC;IACxC,iBAAiB,GAA0B,IAAI,CAAC;IACxD,4EAA4E;IAC5E,wEAAwE;IACxE,gDAAgD;IACxC,UAAU,GAAG,KAAK,CAAC;IAC3B,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IACtE,iBAAiB,GAAyB,IAAI,CAAC;IACvD,iEAAiE;IACjE,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,oCAAoC;IAC5B,gBAAgB,GAAG,KAAK,CAAC;IACzB,YAAY,GAA0B,IAAI,CAAC;IACnD,gFAAgF;IAChF,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IACpE,oBAAoB,GAAyB,IAAI,CAAC;IAClD,OAAO,GAAG,KAAK,CAAC;IAChB,UAAU,GAAG,KAAK,CAAC;IACnB,QAAQ,GAAG,KAAK,CAAC;IAEzB,YAAY,OAAiC;QAC3C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,wBAAwB,CAAC;QAC/E,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,gCAAgC,CAAC;QACnF,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,mBAAmB,CAAC;QAEhE,6EAA6E;QAC7E,qEAAqE;QACrE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,0EAA0E;QAC1E,gEAAgE;QAChE,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS;YAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxE,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACnC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,IAAoB;QAC1B,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,qEAAqE;QACrE,0EAA0E;QAC1E,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS;YAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED,WAAW,CAAC,QAA2B;QACrC,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACjC,sEAAsE;QACtE,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS;YAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED,eAAe,CAAC,OAAgB;QAC9B,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,oEAAoE;YACpE,wCAAwC;YACxC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS;gBAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,uEAAuE;YACvE,6CAA6C;YAC7C,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED,2EAA2E;IAC3E,+DAA+D;IAC/D,4EAA4E;IAC5E,0EAA0E;IAC1E,QAAQ;QACN,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC1E,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;YAAE,OAAO;QACpC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC,EAAE,gCAAgC,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED,4EAA4E;IAC5E,yEAAyE;IACzE,wEAAwE;IACxE,qEAAqE;IACrE,kBAAkB;QAChB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,+DAA+D;YAC/D,8DAA8D;YAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,wEAAwE;QACxE,uDAAuD;QACvD,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC,EAAE,oCAAoC,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;IACnC,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,6EAA6E;IAC7E,4CAA4C;IACpC,UAAU;QAChB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe;YAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAChF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACpF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,SAAS;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC;QACtE,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,eAAe,GAAG,YAAY,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAC/D,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;YAC/B,sEAAsE;YACtE,sEAAsE;YACtE,sBAAsB;YACtB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAEO,sBAAsB;QAC5B,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACpC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAChC,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,yEAAyE;IACzE,uCAAuC;IACvC,cAAc;QACZ,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,uEAAuE;IACvE,gFAAgF;IAChF,0EAA0E;IAC1E,2DAA2D;IAC3D,mBAAmB,CAAC,OAAsB;QACxC,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpB,yEAAyE;QACzE,wEAAwE;QACxE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACxC,+DAA+D;YAC/D,sDAAsD;YACtD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YAC3B,uEAAuE;YACvE,uEAAuE;YACvE,0EAA0E;YAC1E,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,gFAAgF;IACxE,eAAe;QACrB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YACtD,IAAI,IAAI,CAAC,oBAAoB,KAAK,OAAO;gBAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAC9E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACxC,sEAAsE;QACtE,4EAA4E;QAC5E,wEAAwE;QACxE,0EAA0E;QAC1E,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YACrE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,2EAA2E;QAC3E,uEAAuE;QACvE,yEAAyE;QACzE,aAAa;QACb,MAAM,OAAO,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;QACrF,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,oBAAoB,CAAC,MAA4B;QACvD,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,qEAAqE;QACrE,+EAA+E;QAC/E,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI;YAAE,OAAO;QACvC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,uEAAuE;YACvE,uEAAuE;YACvE,yEAAyE;YACzE,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,qEAAqE;QACrE,qEAAqE;QACrE,yEAAyE;QACzE,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC;IAC9B,CAAC;IAEO,mBAAmB,CAAC,MAA4B;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACxC,IAAI,SAAS,KAAK,IAAI;YAAE,OAAO,uCAAuC,CAAC;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,sEAAsE;QACtE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,uCAAuC,CAAC;QACpE,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,OAAO,uCAAuC,CAAC;QAC3F,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,uCAAuC,CAAC;QACnF,0EAA0E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,uEAAuE;QACvE,iDAAiD;QACjD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;QAC7C,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,uCAAuC,CAAC;QACnE,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;QACjD,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,GAAG,aAAa,GAAG,aAAa,CAAC;QAC7E,MAAM,WAAW,GAAG,cAAc,GAAG,qCAAqC,CAAC;QAC3E,OAAO,IAAI,CAAC,GAAG,CACb,uCAAuC,EACvC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAC/D,CAAC;IACJ,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC/B,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC1E,6EAA6E;QAC7E,gEAAgE;QAChE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACpC,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,IAAI,cAAc,GAAkB,IAAI,CAAC;YACzC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAChD,cAAc,GAAG,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1E,IAAI,cAAc,EAAE,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;wBACvB,IAAI,GAAG,IAAI,CAAC;oBACd,CAAC;yBAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;wBAClC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,oCAAoC,CAAC,CAAC;oBAC5E,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;gBAAE,OAAO;YACvD,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;YACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;YAChD,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,kEAAkE;YAClE,kEAAkE;YAClE,mDAAmD;YACnD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACzC,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACtC,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,4BAA4B;QAClC,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI;YAAE,OAAO;QAC5C,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC,EAAE,oCAAoC,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;IACnC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"caffeinate-manager.js","sourceRoot":"","sources":["../src/caffeinate-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,10 @@ export declare class CaffeinatePreferencesStore {
|
|
|
6
6
|
getMode(): CaffeinateMode;
|
|
7
7
|
getCommands(): string[];
|
|
8
8
|
getActivityGate(): boolean;
|
|
9
|
+
getPeerKeepAwake(): boolean;
|
|
9
10
|
getBatteryThreshold(): number | null;
|
|
10
11
|
setActivityGate(enabled: boolean): boolean;
|
|
12
|
+
setPeerKeepAwake(enabled: boolean): boolean;
|
|
11
13
|
setBatteryThreshold(percent: number | null): number | null;
|
|
12
14
|
setMode(mode: CaffeinateMode): CaffeinateMode;
|
|
13
15
|
setCommands(commands: readonly string[]): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caffeinate-preferences-store.d.ts","sourceRoot":"","sources":["../src/caffeinate-preferences-store.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"caffeinate-preferences-store.d.ts","sourceRoot":"","sources":["../src/caffeinate-preferences-store.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA0CjD,qBAAa,0BAA0B;IAGzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,OAAO,CAAC,WAAW,CAAqD;gBAE3C,QAAQ,EAAE,MAAM;IAI7C,OAAO,IAAI,cAAc;IAIzB,WAAW,IAAI,MAAM,EAAE;IAIvB,eAAe,IAAI,OAAO;IAI1B,gBAAgB,IAAI,OAAO;IAI3B,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAIpC,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAO1C,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAO3C,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI;IAc1D,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc;IAQ7C,WAAW,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE;IAMlD,OAAO,CAAC,IAAI;IAqDZ,OAAO,CAAC,OAAO;CAchB"}
|
|
@@ -11,6 +11,7 @@ import { memoBy } from "./utils/memo-by.js";
|
|
|
11
11
|
const DEFAULT_PREFERENCES = {
|
|
12
12
|
mode: "automatic",
|
|
13
13
|
activityGate: true,
|
|
14
|
+
peerKeepAwake: true,
|
|
14
15
|
commands: [],
|
|
15
16
|
batteryThreshold: CAFFEINATE_BATTERY_LOW_WATER_PERCENT_DEFAULT,
|
|
16
17
|
};
|
|
@@ -42,6 +43,9 @@ export class CaffeinatePreferencesStore {
|
|
|
42
43
|
getActivityGate() {
|
|
43
44
|
return this.preferences.activityGate;
|
|
44
45
|
}
|
|
46
|
+
getPeerKeepAwake() {
|
|
47
|
+
return this.preferences.peerKeepAwake;
|
|
48
|
+
}
|
|
45
49
|
getBatteryThreshold() {
|
|
46
50
|
return this.preferences.batteryThreshold;
|
|
47
51
|
}
|
|
@@ -52,6 +56,13 @@ export class CaffeinatePreferencesStore {
|
|
|
52
56
|
this.persist();
|
|
53
57
|
return this.preferences.activityGate;
|
|
54
58
|
}
|
|
59
|
+
setPeerKeepAwake(enabled) {
|
|
60
|
+
if (enabled === this.preferences.peerKeepAwake)
|
|
61
|
+
return this.preferences.peerKeepAwake;
|
|
62
|
+
this.preferences = { ...this.preferences, peerKeepAwake: enabled };
|
|
63
|
+
this.persist();
|
|
64
|
+
return this.preferences.peerKeepAwake;
|
|
65
|
+
}
|
|
55
66
|
setBatteryThreshold(percent) {
|
|
56
67
|
const clamped = percent === null
|
|
57
68
|
? null
|
|
@@ -90,26 +101,32 @@ export class CaffeinatePreferencesStore {
|
|
|
90
101
|
console.warn(`caffeinate preferences file invalid; using defaults (${this.filePath})`);
|
|
91
102
|
return;
|
|
92
103
|
}
|
|
93
|
-
//
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
104
|
+
// Migrate the file forward one version at a time so a v1 file chains
|
|
105
|
+
// v1→v2→v3→v4 rather than jumping straight to the latest and skipping the
|
|
106
|
+
// intermediate field-adds (which would fail the strict schema and fall back
|
|
107
|
+
// to defaults, losing the user's mode/commands). Each step advances the
|
|
108
|
+
// version unconditionally; the field is added only when missing so a user
|
|
109
|
+
// who already set it keeps their value. v1→v2 adds activityGate, v2→v3 the
|
|
110
|
+
// battery floor (defaulting to the guard-on default so the floor lights up
|
|
111
|
+
// for existing users), v3→v4 the peer keep-awake trigger (default on).
|
|
112
|
+
const record = json && typeof json === "object" ? json : null;
|
|
113
|
+
if (record && typeof record.version === "number") {
|
|
114
|
+
if (record.version === 1) {
|
|
115
|
+
if (record.activityGate === undefined)
|
|
116
|
+
record.activityGate = true;
|
|
117
|
+
record.version = 2;
|
|
118
|
+
}
|
|
119
|
+
if (record.version === 2) {
|
|
120
|
+
if (record.batteryThreshold === undefined) {
|
|
121
|
+
record.batteryThreshold = CAFFEINATE_BATTERY_LOW_WATER_PERCENT_DEFAULT;
|
|
122
|
+
}
|
|
123
|
+
record.version = 3;
|
|
124
|
+
}
|
|
125
|
+
if (record.version === 3) {
|
|
126
|
+
if (record.peerKeepAwake === undefined)
|
|
127
|
+
record.peerKeepAwake = true;
|
|
128
|
+
record.version = CAFFEINATE_PREFERENCES_FILE_VERSION;
|
|
129
|
+
}
|
|
113
130
|
}
|
|
114
131
|
const parsed = caffeinatePreferencesFileSchema.safeParse(json);
|
|
115
132
|
if (!parsed.success) {
|
|
@@ -119,6 +136,7 @@ export class CaffeinatePreferencesStore {
|
|
|
119
136
|
this.preferences = {
|
|
120
137
|
mode: parsed.data.mode,
|
|
121
138
|
activityGate: parsed.data.activityGate,
|
|
139
|
+
peerKeepAwake: parsed.data.peerKeepAwake,
|
|
122
140
|
commands: sanitizeCommands(parsed.data.commands),
|
|
123
141
|
batteryThreshold: parsed.data.batteryThreshold,
|
|
124
142
|
};
|
|
@@ -129,6 +147,7 @@ export class CaffeinatePreferencesStore {
|
|
|
129
147
|
version: CAFFEINATE_PREFERENCES_FILE_VERSION,
|
|
130
148
|
mode: this.preferences.mode,
|
|
131
149
|
activityGate: this.preferences.activityGate,
|
|
150
|
+
peerKeepAwake: this.preferences.peerKeepAwake,
|
|
132
151
|
batteryThreshold: this.preferences.batteryThreshold,
|
|
133
152
|
commands: this.preferences.commands,
|
|
134
153
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caffeinate-preferences-store.js","sourceRoot":"","sources":["../src/caffeinate-preferences-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,wCAAwC,EACxC,wCAAwC,EACxC,4CAA4C,EAC5C,mCAAmC,EACnC,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"caffeinate-preferences-store.js","sourceRoot":"","sources":["../src/caffeinate-preferences-store.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export declare const CAFFEINATE_ARGS: readonly string[];
|
|
|
13
13
|
export declare const SYSTEMD_INHIBIT_BINARY = "systemd-inhibit";
|
|
14
14
|
export declare const SYSTEMD_INHIBIT_ARGS: readonly string[];
|
|
15
15
|
export declare const CAFFEINATE_AUTO_DEFAULT_COMMANDS: readonly string[];
|
|
16
|
-
export declare const CAFFEINATE_PREFERENCES_FILE_VERSION =
|
|
16
|
+
export declare const CAFFEINATE_PREFERENCES_FILE_VERSION = 4;
|
|
17
17
|
export declare const DAEMON_CONFIG_FILE_VERSION = 1;
|
|
18
18
|
export declare const CAFFEINATE_AUTO_POKE_DEBOUNCE_MS = 150;
|
|
19
19
|
export declare const CAFFEINATE_ACTIVITY_GATE_DEBOUNCE_MS = 5000;
|
package/dist/constants.js
CHANGED
|
@@ -45,7 +45,7 @@ export const CAFFEINATE_AUTO_DEFAULT_COMMANDS = [
|
|
|
45
45
|
"opencode",
|
|
46
46
|
"pi",
|
|
47
47
|
];
|
|
48
|
-
export const CAFFEINATE_PREFERENCES_FILE_VERSION =
|
|
48
|
+
export const CAFFEINATE_PREFERENCES_FILE_VERSION = 4;
|
|
49
49
|
export const DAEMON_CONFIG_FILE_VERSION = 1;
|
|
50
50
|
// Automatic detection is event-driven (no timer): a `ps` snapshot is taken only
|
|
51
51
|
// in response to a foreground change or a session connect/disconnect. This
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAqEhE,OAAO,EAA8B,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOrF,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AA0B9B,OAAO,KAAK,EAEV,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EACL,cAAc,EAKf,MAAM,sBAAsB,CAAC;AA6B9B,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAC7C;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,iBAAiB,CAAC;IAChD;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,YAAY,CAAC;IACtC;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;IAC3C;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,2EAA2E;AAC3E,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9C,0EAA0E;IAC1E,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;IACzB;;;;;OAKG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C;;;;OAIG;IACH,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AA+qCD,eAAO,MAAM,YAAY,GAAU,UAAS,aAAkB,KAAG,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1266,6 +1266,7 @@ export const createServer = async (options = {}) => {
|
|
|
1266
1266
|
snapshotProcesses: options.caffeinateSnapshotProcesses,
|
|
1267
1267
|
batteryProbe: options.caffeinateBatteryProbe,
|
|
1268
1268
|
hasRecentOutput: (pids, withinMs) => registry.hasRecentOutput(pids, withinMs),
|
|
1269
|
+
hasPeerClient: () => registry.hasPeerClient(),
|
|
1269
1270
|
});
|
|
1270
1271
|
// Open dev ports: the daemon reads the process tree (ps) and the listening
|
|
1271
1272
|
// socket table (lsof) on demand while the ports modal is open. Both are
|
|
@@ -1437,6 +1438,8 @@ export const createServer = async (options = {}) => {
|
|
|
1437
1438
|
active: caffeinateManager.active,
|
|
1438
1439
|
mode: caffeinateManager.mode,
|
|
1439
1440
|
activityGate: caffeinateManager.activityGate,
|
|
1441
|
+
peerKeepAwake: caffeinateManager.peerKeepAwake,
|
|
1442
|
+
peerActive: caffeinateManager.peerActive,
|
|
1440
1443
|
batteryThreshold: caffeinateManager.batteryThreshold,
|
|
1441
1444
|
defaultCommands: [...caffeinateManager.defaultCommands],
|
|
1442
1445
|
commands: caffeinateManager.commands,
|
|
@@ -1891,6 +1894,9 @@ export const createServer = async (options = {}) => {
|
|
|
1891
1894
|
else if (parsed.data.type === "caffeinate-activity-gate") {
|
|
1892
1895
|
caffeinateManager.setActivityGate(parsed.data.enabled);
|
|
1893
1896
|
}
|
|
1897
|
+
else if (parsed.data.type === "caffeinate-peer-keep-awake") {
|
|
1898
|
+
caffeinateManager.setPeerKeepAwake(parsed.data.enabled);
|
|
1899
|
+
}
|
|
1894
1900
|
else if (parsed.data.type === "caffeinate-battery-threshold") {
|
|
1895
1901
|
caffeinateManager.setBatteryThreshold(parsed.data.percent);
|
|
1896
1902
|
}
|