@camstack/types 1.2.421 → 1.2.422
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/addon.js +1 -1
- package/dist/addon.mjs +1 -1
- package/dist/capabilities/composer.cap.d.ts +129 -57
- package/dist/capabilities/core-blocks.cap.d.ts +936 -410
- package/dist/capabilities/index.d.ts +3 -1
- package/dist/capabilities/meter.cap.d.ts +53 -0
- package/dist/client.js +3 -0
- package/dist/client.mjs +3 -0
- package/dist/composition/composition-report.d.ts +45 -0
- package/dist/composition/composition.d.ts +196 -19
- package/dist/composition/helpers/compile-history.d.ts +13 -0
- package/dist/composition/helpers/compile.d.ts +2 -1
- package/dist/composition/helpers/energy.d.ts +8 -0
- package/dist/composition/helpers/history-math.d.ts +39 -0
- package/dist/composition/helpers/history-window.d.ts +71 -0
- package/dist/composition/helpers/index.d.ts +6 -2
- package/dist/composition/helpers/source-pick.d.ts +2 -0
- package/dist/composition/helpers/spec.d.ts +23 -10
- package/dist/{composition-B3Hkb6v7.js → composition-CPRAP41h.js} +792 -8
- package/dist/{composition-B2rw5L29.mjs → composition-CpETZ4HL.mjs} +595 -9
- package/dist/device/cap-vocabulary/entries/sensors.d.ts +1 -1
- package/dist/generated/addon-api.d.ts +14 -0
- package/dist/generated/addon-cap-facts.d.ts +1 -1
- package/dist/generated/cap-status-types.d.ts +3 -1
- package/dist/generated/capability-router-map.d.ts +5 -2
- package/dist/generated/device-local-state.d.ts +3 -0
- package/dist/generated/device-proxy.d.ts +3 -0
- package/dist/generated/device-scoped-caps.d.ts +1 -1
- package/dist/generated/history-catalog.d.ts +1 -1
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/method-device-selectors.d.ts +1 -1
- package/dist/generated/runtime-state-durability.d.ts +1 -1
- package/dist/index.js +747 -446
- package/dist/index.mjs +709 -447
- package/dist/node.js +1 -1
- package/dist/node.mjs +1 -1
- package/dist/{sleep-bykKrTgu.mjs → sleep-0sD_LHLI.mjs} +10 -1
- package/dist/{sleep-YJ6FVsUu.js → sleep-CEKGW7A5.js} +10 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* `ALL_CAPABILITY_DEFINITIONS` (the whole Zod schema graph, ~+100 MB heap per
|
|
6
6
|
* runner). See docs/decisions/adr-0028.md.
|
|
7
7
|
*
|
|
8
|
-
* Coverage: 1 advance-derived caps,
|
|
8
|
+
* Coverage: 1 advance-derived caps, 76 caps with 352 state leaves.
|
|
9
9
|
*/
|
|
10
10
|
/** A bindable scalar in a capability's runtime state. */
|
|
11
11
|
export interface CapStateLeaf {
|
|
@@ -41,6 +41,7 @@ import type { IntercomStatusSchema } from '../capabilities/intercom.cap.js';
|
|
|
41
41
|
import type { LawnMowerControlStatusSchema } from '../capabilities/lawn-mower-control.cap.js';
|
|
42
42
|
import type { LockControlStatusSchema } from '../capabilities/lock-control.cap.js';
|
|
43
43
|
import type { MediaPlayerStatusSchema } from '../capabilities/media-player.cap.js';
|
|
44
|
+
import type { MeterStatusSchema } from '../capabilities/meter.cap.js';
|
|
44
45
|
import type { MotionStatusSchema } from '../capabilities/motion.cap.js';
|
|
45
46
|
import type { MotionTriggerStatusSchema } from '../capabilities/motion-trigger.cap.js';
|
|
46
47
|
import type { motionZonesCapability } from '../capabilities/motion-zones.cap.js';
|
|
@@ -124,6 +125,7 @@ export type CapStatusTypeMap = {
|
|
|
124
125
|
readonly 'lawn-mower-control': z.infer<typeof LawnMowerControlStatusSchema>;
|
|
125
126
|
readonly 'lock-control': z.infer<typeof LockControlStatusSchema>;
|
|
126
127
|
readonly 'media-player': z.infer<typeof MediaPlayerStatusSchema>;
|
|
128
|
+
readonly 'meter': z.infer<typeof MeterStatusSchema>;
|
|
127
129
|
readonly 'motion': z.infer<typeof MotionStatusSchema>;
|
|
128
130
|
readonly 'motion-trigger': z.infer<typeof MotionTriggerStatusSchema>;
|
|
129
131
|
readonly 'motion-zones': z.infer<(typeof motionZonesCapability)['status']['schema']>;
|
|
@@ -167,4 +169,4 @@ export type CapNameWithStatus = keyof CapStatusTypeMap;
|
|
|
167
169
|
* aggregator to enumerate caps whose `status` should be polled +
|
|
168
170
|
* streamed via `subscribeDeviceStatusAggregate`.
|
|
169
171
|
*/
|
|
170
|
-
export declare const CAP_NAMES_WITH_STATUS: readonly ["accessories", "air-quality-sensor", "alarm-panel", "ambient-light-sensor", "automation-control", "battery", "binary", "brightness", "broker", "camera-credentials", "carbon-monoxide", "climate-control", "color", "connectivity", "consumables", "contact", "control", "cover", "day-night", "device-adoption", "device-discovery", "device-export", "device-status", "dishwasher", "doorbell", "enum-sensor", "event-emitter", "fan-control", "feature-probe", "flood", "gas", "group-commands", "group-status", "heating-valve", "humidifier", "humidity-sensor", "image", "image-settings", "intercom", "lawn-mower-control", "lock-control", "media-player", "motion", "motion-trigger", "motion-zones", "mqtt-broker", "native-object-detection", "navigation", "network-link", "notifier", "numeric-sensor", "osd", "pet-feeder", "power-meter", "presence", "pressure-sensor", "privacy-mask", "ptz", "ptz-autotrack", "recording-archive", "recording-onboard", "recording-signal", "running-state", "scene-monitor", "script-runner", "smoke", "snapshot", "stream-params", "switch", "tamper", "temperature-sensor", "update", "vacuum-control", "valve", "vibration", "water-heater", "weather"];
|
|
172
|
+
export declare const CAP_NAMES_WITH_STATUS: readonly ["accessories", "air-quality-sensor", "alarm-panel", "ambient-light-sensor", "automation-control", "battery", "binary", "brightness", "broker", "camera-credentials", "carbon-monoxide", "climate-control", "color", "connectivity", "consumables", "contact", "control", "cover", "day-night", "device-adoption", "device-discovery", "device-export", "device-status", "dishwasher", "doorbell", "enum-sensor", "event-emitter", "fan-control", "feature-probe", "flood", "gas", "group-commands", "group-status", "heating-valve", "humidifier", "humidity-sensor", "image", "image-settings", "intercom", "lawn-mower-control", "lock-control", "media-player", "meter", "motion", "motion-trigger", "motion-zones", "mqtt-broker", "native-object-detection", "navigation", "network-link", "notifier", "numeric-sensor", "osd", "pet-feeder", "power-meter", "presence", "pressure-sensor", "privacy-mask", "ptz", "ptz-autotrack", "recording-archive", "recording-onboard", "recording-signal", "running-state", "scene-monitor", "script-runner", "smoke", "snapshot", "stream-params", "switch", "tamper", "temperature-sensor", "update", "vacuum-control", "valve", "vibration", "water-heater", "weather"];
|
|
@@ -94,6 +94,7 @@ export { logDestinationCapability } from '../capabilities/log-destination.cap.js
|
|
|
94
94
|
export { loginMethodCapability } from '../capabilities/login-method.cap.js';
|
|
95
95
|
export { mediaPlayerCapability } from '../capabilities/media-player.cap.js';
|
|
96
96
|
export { meshNetworkCapability } from '../capabilities/mesh-network.cap.js';
|
|
97
|
+
export { meterCapability } from '../capabilities/meter.cap.js';
|
|
97
98
|
export { metricsProviderCapability } from '../capabilities/metrics-provider.cap.js';
|
|
98
99
|
export { modelConvertCapability } from '../capabilities/model-convert.cap.js';
|
|
99
100
|
export { modelDistributorCapability } from '../capabilities/model-distributor.cap.js';
|
|
@@ -278,6 +279,7 @@ export declare const CAPABILITY_NAMES: {
|
|
|
278
279
|
readonly loginMethod: 'login-method';
|
|
279
280
|
readonly mediaPlayer: 'media-player';
|
|
280
281
|
readonly meshNetwork: 'mesh-network';
|
|
282
|
+
readonly meter: 'meter';
|
|
281
283
|
readonly metricsProvider: 'metrics-provider';
|
|
282
284
|
readonly modelConvert: 'model-convert';
|
|
283
285
|
readonly modelDistributor: 'model-distributor';
|
|
@@ -475,6 +477,7 @@ export interface CapabilityRouterMap<TRouter = unknown> {
|
|
|
475
477
|
readonly loginMethod: TRouter;
|
|
476
478
|
readonly mediaPlayer: TRouter;
|
|
477
479
|
readonly meshNetwork: TRouter;
|
|
480
|
+
readonly meter: TRouter;
|
|
478
481
|
readonly metricsProvider: TRouter;
|
|
479
482
|
readonly modelConvert: TRouter;
|
|
480
483
|
readonly modelDistributor: TRouter;
|
|
@@ -563,8 +566,8 @@ export interface CapabilityRouterMap<TRouter = unknown> {
|
|
|
563
566
|
readonly zoneRules: TRouter;
|
|
564
567
|
readonly zones: TRouter;
|
|
565
568
|
}
|
|
566
|
-
/** Capability names whose mode is `singleton` (
|
|
567
|
-
export declare const SINGLETON_CAPABILITY_NAMES: readonly ['accessories', 'addon-pages', 'addon-settings', 'addon-widgets', 'addons', 'admin-ui', 'air-quality-sensor', 'alarm-panel', 'alerts', 'ambient-light-sensor', 'audio-analysis', 'audio-analyzer', 'audio-codec', 'audio-metrics', 'automation-control', 'backup', 'battery', 'binary', 'brightness', 'button', 'calendars', 'camera-credentials', 'camera-grid-layout', 'camera-pipeline-config', 'camera-streams', 'carbon-monoxide', 'climate-control', 'color', 'composer', 'connectivity', 'consumables', 'contact', 'control', 'core-blocks', 'cover', 'database-snapshot', 'day-night', 'decoder', 'detection-pipeline', 'device-admin-link', 'device-credentials', 'device-discovery', 'device-history', 'device-manager', 'device-ops', 'device-state', 'device-status', 'dishwasher', 'display-palette', 'doorbell', 'enum-sensor', 'event-emitter', 'face-gallery', 'fan-control', 'feature-probe', 'filesystem-browse', 'flood', 'gas', 'group-commands', 'group-status', 'heating-valve', 'humidifier', 'humidity-sensor', 'image', 'image-settings', 'integrations', 'intercom', 'keychain', 'keychain-admin', 'lawn-mower-control', 'llm-runtime', 'local-network', 'lock-control', 'media-player', 'metrics-provider', 'model-convert', 'model-distributor', 'motion', 'motion-detection', 'motion-trigger', 'motion-zones', 'native-object-detection', 'navigation', 'network-link', 'network-quality', 'node-certificates', 'nodes', 'notification-rules', 'notifier', 'numeric-sensor', 'oidc-connections', 'osd', 'osd-manager', 'pet-feeder', 'pipeline-analytics', 'pipeline-executor', 'pipeline-orchestrator', 'pipeline-runner', 'plate-gallery', 'platform-probe', 'power-meter', 'presence', 'pressure-sensor', 'privacy-mask', 'ptz', 'ptz-autotrack', 'reboot', 'record-entries', 'recording-archive', 'recording-export', 'recording-onboard', 'recording-signal', 'records', 'running-state', 'scene-monitor', 'script-runner', 'server-management', 'settings-store', 'smoke', 'snapshot', 'sso-bridge', 'storage', 'storage-admin', 'storage-migration', 'stream-broker', 'stream-catalog', 'stream-params', 'stream-signals', 'switch', 'system', 'tamper', 'temperature-sensor', 'terminal-session', 'toast', 'training', 'update', 'user-management', 'vacuum-control', 'valve', 'vector-store', 'vibration', 'viewer-ui', 'water-heater', 'weather', 'webrtc-session', 'zone-analytics', 'zone-rules', 'zones'];
|
|
569
|
+
/** Capability names whose mode is `singleton` (149 caps). */
|
|
570
|
+
export declare const SINGLETON_CAPABILITY_NAMES: readonly ['accessories', 'addon-pages', 'addon-settings', 'addon-widgets', 'addons', 'admin-ui', 'air-quality-sensor', 'alarm-panel', 'alerts', 'ambient-light-sensor', 'audio-analysis', 'audio-analyzer', 'audio-codec', 'audio-metrics', 'automation-control', 'backup', 'battery', 'binary', 'brightness', 'button', 'calendars', 'camera-credentials', 'camera-grid-layout', 'camera-pipeline-config', 'camera-streams', 'carbon-monoxide', 'climate-control', 'color', 'composer', 'connectivity', 'consumables', 'contact', 'control', 'core-blocks', 'cover', 'database-snapshot', 'day-night', 'decoder', 'detection-pipeline', 'device-admin-link', 'device-credentials', 'device-discovery', 'device-history', 'device-manager', 'device-ops', 'device-state', 'device-status', 'dishwasher', 'display-palette', 'doorbell', 'enum-sensor', 'event-emitter', 'face-gallery', 'fan-control', 'feature-probe', 'filesystem-browse', 'flood', 'gas', 'group-commands', 'group-status', 'heating-valve', 'humidifier', 'humidity-sensor', 'image', 'image-settings', 'integrations', 'intercom', 'keychain', 'keychain-admin', 'lawn-mower-control', 'llm-runtime', 'local-network', 'lock-control', 'media-player', 'meter', 'metrics-provider', 'model-convert', 'model-distributor', 'motion', 'motion-detection', 'motion-trigger', 'motion-zones', 'native-object-detection', 'navigation', 'network-link', 'network-quality', 'node-certificates', 'nodes', 'notification-rules', 'notifier', 'numeric-sensor', 'oidc-connections', 'osd', 'osd-manager', 'pet-feeder', 'pipeline-analytics', 'pipeline-executor', 'pipeline-orchestrator', 'pipeline-runner', 'plate-gallery', 'platform-probe', 'power-meter', 'presence', 'pressure-sensor', 'privacy-mask', 'ptz', 'ptz-autotrack', 'reboot', 'record-entries', 'recording-archive', 'recording-export', 'recording-onboard', 'recording-signal', 'records', 'running-state', 'scene-monitor', 'script-runner', 'server-management', 'settings-store', 'smoke', 'snapshot', 'sso-bridge', 'storage', 'storage-admin', 'storage-migration', 'stream-broker', 'stream-catalog', 'stream-params', 'stream-signals', 'switch', 'system', 'tamper', 'temperature-sensor', 'terminal-session', 'toast', 'training', 'update', 'user-management', 'vacuum-control', 'valve', 'vector-store', 'vibration', 'viewer-ui', 'water-heater', 'weather', 'webrtc-session', 'zone-analytics', 'zone-rules', 'zones'];
|
|
568
571
|
/** Union of singleton capability names (literal string union). */
|
|
569
572
|
export type SingletonCapabilityName = typeof SINGLETON_CAPABILITY_NAMES[number];
|
|
570
573
|
/** Capability names whose mode is `collection` (35 caps). */
|
|
@@ -38,6 +38,7 @@ import { intercomCapability } from '../capabilities/intercom.cap.js';
|
|
|
38
38
|
import { lawnMowerControlCapability } from '../capabilities/lawn-mower-control.cap.js';
|
|
39
39
|
import { lockControlCapability } from '../capabilities/lock-control.cap.js';
|
|
40
40
|
import { mediaPlayerCapability } from '../capabilities/media-player.cap.js';
|
|
41
|
+
import { meterCapability } from '../capabilities/meter.cap.js';
|
|
41
42
|
import { motionCapability } from '../capabilities/motion.cap.js';
|
|
42
43
|
import { motionTriggerCapability } from '../capabilities/motion-trigger.cap.js';
|
|
43
44
|
import { motionZonesCapability } from '../capabilities/motion-zones.cap.js';
|
|
@@ -124,6 +125,7 @@ export interface DeviceLocalState {
|
|
|
124
125
|
lawnMowerControl: InferRuntimeState<typeof lawnMowerControlCapability>;
|
|
125
126
|
lockControl: InferRuntimeState<typeof lockControlCapability>;
|
|
126
127
|
mediaPlayer: InferRuntimeState<typeof mediaPlayerCapability>;
|
|
128
|
+
meter: InferRuntimeState<typeof meterCapability>;
|
|
127
129
|
motion: InferRuntimeState<typeof motionCapability>;
|
|
128
130
|
motionTrigger: InferRuntimeState<typeof motionTriggerCapability>;
|
|
129
131
|
motionZones: InferRuntimeState<typeof motionZonesCapability>;
|
|
@@ -220,6 +222,7 @@ export interface CapNameToRuntimeStateMap {
|
|
|
220
222
|
'lawn-mower-control': InferRuntimeState<typeof lawnMowerControlCapability>;
|
|
221
223
|
'lock-control': InferRuntimeState<typeof lockControlCapability>;
|
|
222
224
|
'media-player': InferRuntimeState<typeof mediaPlayerCapability>;
|
|
225
|
+
'meter': InferRuntimeState<typeof meterCapability>;
|
|
223
226
|
'motion': InferRuntimeState<typeof motionCapability>;
|
|
224
227
|
'motion-trigger': InferRuntimeState<typeof motionTriggerCapability>;
|
|
225
228
|
'motion-zones': InferRuntimeState<typeof motionZonesCapability>;
|
|
@@ -51,6 +51,7 @@ import type { intercomCapability } from '../capabilities/intercom.cap.js';
|
|
|
51
51
|
import type { lawnMowerControlCapability } from '../capabilities/lawn-mower-control.cap.js';
|
|
52
52
|
import type { lockControlCapability } from '../capabilities/lock-control.cap.js';
|
|
53
53
|
import type { mediaPlayerCapability } from '../capabilities/media-player.cap.js';
|
|
54
|
+
import type { meterCapability } from '../capabilities/meter.cap.js';
|
|
54
55
|
import type { motionCapability } from '../capabilities/motion.cap.js';
|
|
55
56
|
import type { motionDetectionCapability } from '../capabilities/motion-detection.cap.js';
|
|
56
57
|
import type { motionTriggerCapability } from '../capabilities/motion-trigger.cap.js';
|
|
@@ -158,6 +159,7 @@ export interface DeviceProxyState {
|
|
|
158
159
|
readonly lawnMowerControl: SliceHandle<InferRuntimeState<typeof lawnMowerControlCapability>>;
|
|
159
160
|
readonly lockControl: SliceHandle<InferRuntimeState<typeof lockControlCapability>>;
|
|
160
161
|
readonly mediaPlayer: SliceHandle<InferRuntimeState<typeof mediaPlayerCapability>>;
|
|
162
|
+
readonly meter: SliceHandle<InferRuntimeState<typeof meterCapability>>;
|
|
161
163
|
readonly motion: SliceHandle<InferRuntimeState<typeof motionCapability>>;
|
|
162
164
|
readonly motionTrigger: SliceHandle<InferRuntimeState<typeof motionTriggerCapability>>;
|
|
163
165
|
readonly motionZones: SliceHandle<InferRuntimeState<typeof motionZonesCapability>>;
|
|
@@ -261,6 +263,7 @@ export interface DeviceProxy {
|
|
|
261
263
|
readonly lawnMowerControl?: InferDeviceProxyCap<typeof lawnMowerControlCapability>;
|
|
262
264
|
readonly lockControl?: InferDeviceProxyCap<typeof lockControlCapability>;
|
|
263
265
|
readonly mediaPlayer?: InferDeviceProxyCap<typeof mediaPlayerCapability>;
|
|
266
|
+
readonly meter?: InferDeviceProxyCap<typeof meterCapability>;
|
|
264
267
|
readonly motion?: InferDeviceProxyCap<typeof motionCapability>;
|
|
265
268
|
readonly motionDetection?: InferDeviceProxyCap<typeof motionDetectionCapability>;
|
|
266
269
|
readonly motionTrigger?: InferDeviceProxyCap<typeof motionTriggerCapability>;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* can answer "may a rule actuate this?" without importing the schema barrel
|
|
6
6
|
* (~144MB RSS per runner, D28).
|
|
7
7
|
*
|
|
8
|
-
* Coverage:
|
|
8
|
+
* Coverage: 94 device-scoped capabilities.
|
|
9
9
|
*/
|
|
10
10
|
export declare const DEVICE_SCOPED_CAPS: ReadonlySet<string>;
|
|
11
11
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { CapabilityHistoryField, CapabilityHistoryItems } from '../capabilities/capability-definition.js';
|
|
2
2
|
/**
|
|
3
3
|
* Cap history catalog, projected from every `*.cap.ts` `history` block.
|
|
4
|
-
*
|
|
4
|
+
* 42 caps with series (76 series), 32 caps answered `'none'`.
|
|
5
5
|
* Field keys are `runtimeState` paths (`a.b` into fixed objects only).
|
|
6
6
|
*/
|
|
7
7
|
export declare const HISTORY_CATALOG: Readonly<Record<string, Readonly<Record<string, CapabilityHistoryField>>>>;
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* scope+access check inside `protectedProcedure` (see
|
|
7
7
|
* `server/backend/src/api/trpc/trpc.middleware.ts`).
|
|
8
8
|
*
|
|
9
|
-
* Coverage:
|
|
9
|
+
* Coverage: 1386 method paths across 184 capabilities.
|
|
10
10
|
*/
|
|
11
11
|
import type { MethodRole } from '../auth/viewer-access.js';
|
|
12
12
|
import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* system-scope cap that takes a deviceId was previously never device-filtered
|
|
7
7
|
* — see the generator header).
|
|
8
8
|
*
|
|
9
|
-
* Coverage:
|
|
9
|
+
* Coverage: 549 methods carry a device reference, of which
|
|
10
10
|
* 174 are on SYSTEM-scope caps.
|
|
11
11
|
*
|
|
12
12
|
* Top-level fields, number arrays, and one-level arrays of objects carrying
|
|
@@ -11,7 +11,7 @@ export interface RuntimeStatePolicy {
|
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* Per-cap runtime-state policy, projected from every `*.cap.ts` that declares
|
|
14
|
-
* `runtimeState`.
|
|
14
|
+
* `runtimeState`. 75 caps: 39 `restored`, 36 `session`.
|
|
15
15
|
*
|
|
16
16
|
* A cap absent from this map has no runtime-state slice at all. A cap PRESENT
|
|
17
17
|
* with `durability: 'session'` has one and has decided not to keep it.
|