@flighthq/power 0.5.1-next.815.cc08b93 → 0.5.1-next.903.f434bc2

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/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/power`. The `@flight
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/power@0.5.1-next.815.cc08b93](https://github.com/flighthq/flight/tree/cc08b93ef981080fa86bdd5143dc61dbdbf2665b/packages/power)
17
- - [License](https://github.com/flighthq/flight/blob/cc08b93ef981080fa86bdd5143dc61dbdbf2665b/LICENSE.md)
16
+ - [Source for @flighthq/power@0.5.1-next.903.f434bc2](https://github.com/flighthq/flight/tree/f434bc233778d75aeea61995df3a8cfaec459a85/packages/power)
17
+ - [License](https://github.com/flighthq/flight/blob/f434bc233778d75aeea61995df3a8cfaec459a85/LICENSE.md)
@@ -1,2 +1,3 @@
1
1
  export * from './power';
2
+ export { initializePower } from './power';
2
3
  //# sourceMappingURL=contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
package/dist/contract.js CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './power';
2
+ export { initializePower } from './power';
2
3
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
package/dist/power.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { HasPowerIdle, HasPowerKeepAwake, HasPowerStatus, HasPowerThermal, PowerAttachHost, Power, PowerBatteryHealth, PowerIdleState, PowerKeepAwakeAcquireResult, PowerKeepAwakeMode, PowerKeepAwakeReleaseResult, PowerStatus, PowerThermalState } from '@flighthq/types/contract';
1
+ import type { EntityConstruction, HasPowerIdle, HasPowerKeepAwake, HasPowerStatus, HasPowerThermal, Power, PowerAttachHost, PowerBatteryHealth, PowerIdleState, PowerKeepAwakeAcquireResult, PowerKeepAwakeMode, PowerKeepAwakeReleaseResult, PowerStatus, PowerThermalState } from '@flighthq/types/contract';
2
2
  export declare function acquirePowerKeepAwake(host: HasPowerKeepAwake, mode?: PowerKeepAwakeMode): Promise<PowerKeepAwakeAcquireResult>;
3
3
  export declare function attachPower(host: PowerAttachHost, power: Power, idleThresholdSeconds?: number): void;
4
4
  export declare function createPower(): Power;
@@ -18,6 +18,7 @@ export declare function getPowerStatus(host: HasPowerStatus, out: PowerStatus):
18
18
  export declare function getPowerSystemIdleState(host: HasPowerIdle, thresholdSeconds: number): PowerIdleState;
19
19
  export declare function getPowerSystemIdleTime(host: HasPowerIdle): number;
20
20
  export declare function getPowerThermalState(host: HasPowerThermal): PowerThermalState;
21
+ export declare function initializePower(out: EntityConstruction<Power>): void;
21
22
  export declare function isPowerKeepAwakeActive(host: HasPowerKeepAwake): boolean;
22
23
  export declare function makePowerBatteryHealth(): PowerBatteryHealth;
23
24
  export declare function makePowerStatus(): PowerStatus;
@@ -1 +1 @@
1
- {"version":3,"file":"power.d.ts","sourceRoot":"","sources":["../src/power.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EAEjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,KAAK,EACL,kBAAkB,EAClB,cAAc,EACd,2BAA2B,EAC3B,kBAAkB,EAClB,2BAA2B,EAC3B,WAAW,EACX,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,iBAAiB,EACvB,IAAI,GAAE,kBAA0C,GAC/C,OAAO,CAAC,2BAA2B,CAAC,CAEtC;AAQD,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,SAAK,GAAG,IAAI,CA+DhG;AAID,wBAAgB,WAAW,IAAI,KAAK,CAYnC;AAYD,wBAAgB,qBAAqB,CAAC,GAAG,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,CAiBlF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAa9C;AAGD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAW/C;AAGD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAUrD;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE;IACJ,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,aAAa,EAAE;YAAE,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,GAAG,kBAAkB,CAAA;SAAE,CAAA;KAAE,CAAC;CAC/G,EACD,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CAEpB;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,WAAW,GAAG,WAAW,CAElF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,GAAG,cAAc,CAEpG;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEjE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAE7E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAEvE;AAKD,wBAAgB,sBAAsB,IAAI,kBAAkB,CAQ3D;AAID,wBAAgB,eAAe,IAAI,WAAW,CAW7C;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAEnG;AAED,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEtE"}
1
+ {"version":3,"file":"power.d.ts","sourceRoot":"","sources":["../src/power.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,KAAK,EACL,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,2BAA2B,EAE3B,kBAAkB,EAClB,2BAA2B,EAC3B,WAAW,EACX,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,iBAAiB,EACvB,IAAI,GAAE,kBAA0C,GAC/C,OAAO,CAAC,2BAA2B,CAAC,CAEtC;AAQD,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,SAAK,GAAG,IAAI,CA+DhG;AAED,wBAAgB,WAAW,IAAI,KAAK,CAInC;AAYD,wBAAgB,qBAAqB,CAAC,GAAG,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,CAiBlF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAa9C;AAGD,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAW/C;AAGD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAUrD;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE;IACJ,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,aAAa,EAAE;YAAE,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,GAAG,kBAAkB,CAAA;SAAE,CAAA;KAAE,CAAC;CAC/G,EACD,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CAEpB;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,WAAW,GAAG,WAAW,CAElF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,GAAG,cAAc,CAEpG;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEjE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,iBAAiB,CAE7E;AAID,wBAAgB,eAAe,CAAC,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,IAAI,CAUpE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAEvE;AAKD,wBAAgB,sBAAsB,IAAI,kBAAkB,CAQ3D;AAID,wBAAgB,eAAe,IAAI,WAAW,CAW7C;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAEnG;AAED,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEtE"}
package/dist/power.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createEntity } from '@flighthq/entity/contract';
1
+ import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
2
  import { clearSignal, createSignal, emitSignal, hasSignalSlots } from '@flighthq/signals/contract';
3
3
  // AN ATTEMPT IS NEVER AN OUTCOME. The previous seam recorded that an operation had been STARTED and
4
4
  // reported that as availability: a denied Wake Lock request was observed as 'available' because the
@@ -73,20 +73,10 @@ export function attachPower(host, power, idleThresholdSeconds = 60) {
73
73
  }
74
74
  _subscriptions.set(power, teardowns);
75
75
  }
76
- // Allocates a Power event entity with its signals left null. Call enablePowerSignals to allocate the
77
- // signals to connect to, and attachPower to start delivering host events into them.
78
76
  export function createPower() {
79
- return createEntity({
80
- onChange: null,
81
- onCharging: null,
82
- onDischarging: null,
83
- onIdleStateChange: null,
84
- onLockScreen: null,
85
- onResume: null,
86
- onSuspend: null,
87
- onThermalStateChange: null,
88
- onUnlockScreen: null,
89
- });
77
+ const out = allocateEntity();
78
+ initializePower(out);
79
+ return finishEntity(out);
90
80
  }
91
81
  // Stops delivery without discarding the entity. Runs every teardown this entity opened, ATTEMPTING ALL
92
82
  // of them: one throwing unsubscribe must not strand the rest. Does not touch the provider — that is
@@ -189,6 +179,19 @@ export function getPowerSystemIdleTime(host) {
189
179
  export function getPowerThermalState(host) {
190
180
  return host.power.thermal.getThermalState();
191
181
  }
182
+ // Allocates a Power event entity with its signals left null. Call enablePowerSignals to allocate the
183
+ // signals to connect to, and attachPower to start delivering host events into them.
184
+ export function initializePower(out) {
185
+ out.onChange = null;
186
+ out.onCharging = null;
187
+ out.onDischarging = null;
188
+ out.onIdleStateChange = null;
189
+ out.onLockScreen = null;
190
+ out.onResume = null;
191
+ out.onSuspend = null;
192
+ out.onThermalStateChange = null;
193
+ out.onUnlockScreen = null;
194
+ }
192
195
  export function isPowerKeepAwakeActive(host) {
193
196
  return host.power.keepAwake.isActive();
194
197
  }
package/dist/power.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"power.js","sourceRoot":"","sources":["../src/power.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"power.js","sourceRoot":"","sources":["../src/power.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/power",
3
- "version": "0.5.1-next.815.cc08b93",
3
+ "version": "0.5.1-next.903.f434bc2",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,9 +38,9 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/entity": "0.5.1-next.815.cc08b93",
42
- "@flighthq/signals": "0.5.1-next.815.cc08b93",
43
- "@flighthq/types": "0.5.1-next.815.cc08b93"
41
+ "@flighthq/entity": "0.5.1-next.903.f434bc2",
42
+ "@flighthq/signals": "0.5.1-next.903.f434bc2",
43
+ "@flighthq/types": "0.5.1-next.903.f434bc2"
44
44
  },
45
45
  "devDependencies": {
46
46
  "typescript": "^5.3.0"
package/src/power.test.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { createEntity } from '@flighthq/entity/contract';
1
+ import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
2
  import { connectSignal } from '@flighthq/signals/contract';
3
3
  import { EntityRuntimeKey } from '@flighthq/types/contract';
4
4
  import type {
@@ -46,17 +46,21 @@ function statusHost(status: Partial<PowerStatus>): PowerAttachHost & { emitChang
46
46
  for (const l of listeners) l();
47
47
  },
48
48
  power: {
49
- change: createEntity<EntityWithoutRuntime<PowerChangeBackend>>({
50
- subscribe(listener: () => void): () => void {
49
+ change: (() => {
50
+ const out = allocateEntity<any>();
51
+ out.subscribe = (listener: () => void): (() => void) => {
51
52
  listeners.add(listener);
52
53
  return () => listeners.delete(listener);
53
- },
54
- }),
55
- status: createEntity<EntityWithoutRuntime<PowerStatusBackend>>({
56
- getStatus(out: PowerStatus): PowerStatus {
54
+ };
55
+ return finishEntity(out);
56
+ })(),
57
+ status: (() => {
58
+ const out = allocateEntity<any>();
59
+ out.getStatus = (out: PowerStatus): PowerStatus => {
57
60
  return Object.assign(out, status);
58
- },
59
- }),
61
+ };
62
+ return finishEntity(out);
63
+ })(),
60
64
  },
61
65
  };
62
66
  }
@@ -64,12 +68,14 @@ function statusHost(status: Partial<PowerStatus>): PowerAttachHost & { emitChang
64
68
  function keepAwakeHost(overrides: Partial<HasPowerKeepAwake['power']['keepAwake']> = {}): HasPowerKeepAwake {
65
69
  return {
66
70
  power: {
67
- keepAwake: createEntity<EntityWithoutRuntime<PowerKeepAwakeBackend>>({
68
- acquire: async () => ({ reason: 'ok' }) as const,
69
- isActive: () => false,
70
- release: async () => ({ reason: 'ok' }) as const,
71
- ...overrides,
72
- }),
71
+ keepAwake: (() => {
72
+ const out = allocateEntity<any>();
73
+ out.acquire = async () => ({ reason: 'ok' }) as const;
74
+ out.isActive = () => false;
75
+ out.release = async () => ({ reason: 'ok' }) as const;
76
+ Object.assign(out, overrides);
77
+ return finishEntity(out);
78
+ })(),
73
79
  },
74
80
  };
75
81
  }
@@ -121,18 +127,22 @@ describe('attachPower', () => {
121
127
  const listeners = new Set<() => void>();
122
128
  const host: PowerAttachHost = {
123
129
  power: {
124
- change: createEntity<EntityWithoutRuntime<PowerChangeBackend>>({
125
- subscribe(listener: () => void): () => void {
130
+ change: (() => {
131
+ const out = allocateEntity<any>();
132
+ out.subscribe = (listener: () => void): (() => void) => {
126
133
  listeners.add(listener);
127
134
  return () => listeners.delete(listener);
128
- },
129
- }),
130
- status: createEntity<EntityWithoutRuntime<PowerStatusBackend>>({
131
- getStatus(out: PowerStatus): PowerStatus {
135
+ };
136
+ return finishEntity(out);
137
+ })(),
138
+ status: (() => {
139
+ const out = allocateEntity<any>();
140
+ out.getStatus = (out: PowerStatus): PowerStatus => {
132
141
  out.isCharging = charging;
133
142
  return out;
134
- },
135
- }),
143
+ };
144
+ return finishEntity(out);
145
+ })(),
136
146
  },
137
147
  };
138
148
  const power = createPower();
@@ -154,13 +164,15 @@ describe('attachPower', () => {
154
164
  const listeners = new Set<(state: PowerThermalState) => void>();
155
165
  const host: PowerAttachHost = {
156
166
  power: {
157
- thermal: createEntity<EntityWithoutRuntime<PowerThermalBackend>>({
158
- getThermalState: () => 'Serious',
159
- subscribeThermalStateChange(listener: (state: PowerThermalState) => void): () => void {
167
+ thermal: (() => {
168
+ const out = allocateEntity<any>();
169
+ out.getThermalState = () => 'Serious';
170
+ out.subscribeThermalStateChange = (listener: (state: PowerThermalState) => void): (() => void) => {
160
171
  listeners.add(listener);
161
172
  return () => listeners.delete(listener);
162
- },
163
- }),
173
+ };
174
+ return finishEntity(out);
175
+ })(),
164
176
  },
165
177
  };
166
178
  const power = createPower();
@@ -206,12 +218,12 @@ describe('destroyPowerKeepAwake', () => {
206
218
  // Builds the provider ONCE so two hosts can genuinely alias the same object; spreading it per host
207
219
  // would silently make them distinct and the alias assertion would prove nothing.
208
220
  function keepAwakeProvider(destroy?: () => void): HasPowerKeepAwake['power']['keepAwake'] {
209
- return createEntity<EntityWithoutRuntime<PowerKeepAwakeBackend>>({
210
- acquire: async () => ({ reason: 'ok' }) as const,
211
- destroy,
212
- isActive: () => false,
213
- release: async () => ({ reason: 'ok' }) as const,
214
- });
221
+ const out = allocateEntity<any>();
222
+ out.acquire = async () => ({ reason: 'ok' }) as const;
223
+ out.destroy = destroy;
224
+ out.isActive = () => false;
225
+ out.release = async () => ({ reason: 'ok' }) as const;
226
+ return finishEntity(out);
215
227
  }
216
228
 
217
229
  function keepAwakeHostWith(provider: HasPowerKeepAwake['power']['keepAwake']): HasPowerKeepAwake {
@@ -271,14 +283,16 @@ describe('detachPower', () => {
271
283
  let unlockTornDown = false;
272
284
  const host: PowerAttachHost = {
273
285
  power: {
274
- sessionLock: createEntity<EntityWithoutRuntime<PowerSessionLockBackend>>({
275
- subscribeLock: () => () => {
286
+ sessionLock: (() => {
287
+ const out = allocateEntity<any>();
288
+ out.subscribeLock = () => () => {
276
289
  throw new Error('lock teardown failed');
277
- },
278
- subscribeUnlock: () => () => {
290
+ };
291
+ out.subscribeUnlock = () => () => {
279
292
  unlockTornDown = true;
280
- },
281
- }),
293
+ };
294
+ return finishEntity(out);
295
+ })(),
282
296
  },
283
297
  };
284
298
  const power = createPower();
@@ -367,13 +381,15 @@ describe('getPowerSystemIdleState', () => {
367
381
  let seen = -1;
368
382
  const host = {
369
383
  power: {
370
- idle: createEntity<EntityWithoutRuntime<PowerIdleBackend>>({
371
- getIdleState(t: number): PowerIdleState {
384
+ idle: (() => {
385
+ const out = allocateEntity<any>();
386
+ out.getIdleState = (t: number): PowerIdleState => {
372
387
  seen = t;
373
388
  return 'Idle';
374
- },
375
- getIdleTimeSeconds: () => 0,
376
- }),
389
+ };
390
+ out.getIdleTimeSeconds = () => 0;
391
+ return finishEntity(out);
392
+ })(),
377
393
  },
378
394
  };
379
395
  expect(getPowerSystemIdleState(host, 90)).toBe('Idle');
@@ -385,10 +401,12 @@ describe('getPowerSystemIdleTime', () => {
385
401
  it('returns the provider value', () => {
386
402
  const host = {
387
403
  power: {
388
- idle: createEntity<EntityWithoutRuntime<PowerIdleBackend>>({
389
- getIdleState: (): PowerIdleState => 'Active',
390
- getIdleTimeSeconds: () => 42,
391
- }),
404
+ idle: (() => {
405
+ const out = allocateEntity<any>();
406
+ out.getIdleState = (): PowerIdleState => 'Active';
407
+ out.getIdleTimeSeconds = () => 42;
408
+ return finishEntity(out);
409
+ })(),
392
410
  },
393
411
  };
394
412
  expect(getPowerSystemIdleTime(host)).toBe(42);
@@ -399,10 +417,12 @@ describe('getPowerThermalState', () => {
399
417
  it('returns the provider value', () => {
400
418
  const host = {
401
419
  power: {
402
- thermal: createEntity<EntityWithoutRuntime<PowerThermalBackend>>({
403
- getThermalState: (): PowerThermalState => 'Fair',
404
- subscribeThermalStateChange: () => () => {},
405
- }),
420
+ thermal: (() => {
421
+ const out = allocateEntity<any>();
422
+ out.getThermalState = (): PowerThermalState => 'Fair';
423
+ out.subscribeThermalStateChange = () => () => {};
424
+ return finishEntity(out);
425
+ })(),
406
426
  },
407
427
  };
408
428
  expect(getPowerThermalState(host)).toBe('Fair');