@camstack/types 1.1.51 → 1.1.53
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/capabilities/addons.cap.d.ts +1 -40
- package/dist/capabilities/custom-model-registry.cap.d.ts +2 -0
- package/dist/capabilities/model-convert.cap.d.ts +1 -0
- package/dist/capabilities/model-distributor.cap.d.ts +2 -0
- package/dist/device/device-control-resolution.d.ts +118 -0
- package/dist/generated/addon-api.d.ts +0 -30
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/system-proxy.d.ts +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +196 -76
- package/dist/index.mjs +188 -74
- package/dist/interfaces/addon.d.ts +2 -2
- package/dist/interfaces/event-bus.d.ts +1 -1
- package/dist/lifecycle/index.d.ts +0 -1
- package/dist/types/models.d.ts +2 -0
- package/dist/types/pipeline-step.d.ts +31 -0
- package/package.json +1 -1
- package/dist/lifecycle/framework-swap.d.ts +0 -36
|
@@ -127,21 +127,6 @@ declare const AddonAutoUpdateSchema: z.ZodEnum<{
|
|
|
127
127
|
beta: "beta";
|
|
128
128
|
inherit: "inherit";
|
|
129
129
|
}>;
|
|
130
|
-
/**
|
|
131
|
-
* Result of `updateFrameworkPackage`. The cap method returns BEFORE the
|
|
132
|
-
* server restarts so the admin UI can react to the `restartingAt`
|
|
133
|
-
* timestamp (shows reconnect overlay). The transition from
|
|
134
|
-
* `fromVersion` to `toVersion` will be confirmed by a subsequent
|
|
135
|
-
* `system.restart-completed` event after the new process boots.
|
|
136
|
-
*
|
|
137
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
138
|
-
*/
|
|
139
|
-
declare const UpdateFrameworkPackageResultSchema: z.ZodObject<{
|
|
140
|
-
packageName: z.ZodString;
|
|
141
|
-
fromVersion: z.ZodString;
|
|
142
|
-
toVersion: z.ZodString;
|
|
143
|
-
restartingAt: z.ZodNumber;
|
|
144
|
-
}, z.core.$strip>;
|
|
145
130
|
declare const BulkUpdateItemStatusSchema: z.ZodEnum<{
|
|
146
131
|
failed: "failed";
|
|
147
132
|
queued: "queued";
|
|
@@ -487,30 +472,6 @@ export declare const addonsCapability: {
|
|
|
487
472
|
}, z.core.$strip>, z.ZodObject<{
|
|
488
473
|
success: z.ZodLiteral<true>;
|
|
489
474
|
}, z.core.$strip>, "mutation">;
|
|
490
|
-
/**
|
|
491
|
-
* Live-update one of the framework packages marked
|
|
492
|
-
* `camstack.system: true` (`@camstack/types|kernel|core|sdk|ui-library`).
|
|
493
|
-
* Runs `npm install --prefix <appRoot> <name>@<version> --no-save`,
|
|
494
|
-
* writes a `.restart-pending` marker, emits `system.restarting`
|
|
495
|
-
* and schedules a graceful process exit. The supervisor (Docker /
|
|
496
|
-
* Electron / systemd) brings the hub back up; on first boot after
|
|
497
|
-
* the restart the marker fires `system.restart-completed`.
|
|
498
|
-
*
|
|
499
|
-
* `version` defaults to `'latest'`. The allow-list of valid
|
|
500
|
-
* `packageName` values is enforced server-side.
|
|
501
|
-
*
|
|
502
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
503
|
-
*/
|
|
504
|
-
readonly updateFrameworkPackage: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
505
|
-
packageName: z.ZodString;
|
|
506
|
-
version: z.ZodOptional<z.ZodString>;
|
|
507
|
-
deferRestart: z.ZodOptional<z.ZodBoolean>;
|
|
508
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
509
|
-
packageName: z.ZodString;
|
|
510
|
-
fromVersion: z.ZodString;
|
|
511
|
-
toVersion: z.ZodString;
|
|
512
|
-
restartingAt: z.ZodNumber;
|
|
513
|
-
}, z.core.$strip>, "mutation">;
|
|
514
475
|
readonly getVersions: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
515
476
|
name: z.ZodString;
|
|
516
477
|
}, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
@@ -788,4 +749,4 @@ export declare const addonsCapability: {
|
|
|
788
749
|
};
|
|
789
750
|
};
|
|
790
751
|
export type IAddonsProvider = InferProvider<typeof addonsCapability>;
|
|
791
|
-
export { AddonListItemSchema, InstalledPackageSchema, PackageUpdateSchema, PackageVersionInfoSchema, SearchResultSchema, AutoUpdateSettingsSchema, AddonAutoUpdateSchema, LogStreamEntrySchema, CustomActionInputSchema, LogLevelSchema, ChannelSchema, ChannelWithInheritSchema,
|
|
752
|
+
export { AddonListItemSchema, InstalledPackageSchema, PackageUpdateSchema, PackageVersionInfoSchema, SearchResultSchema, AutoUpdateSettingsSchema, AddonAutoUpdateSchema, LogStreamEntrySchema, CustomActionInputSchema, LogLevelSchema, ChannelSchema, ChannelWithInheritSchema, FrameworkPackageStatusSchema, BulkUpdateItemStatusSchema, BulkUpdateItemSchema, BulkUpdatePhaseSchema, BulkUpdateStateSchema, };
|
|
@@ -106,6 +106,7 @@ export declare const CustomModelDescriptorSchema: z.ZodObject<{
|
|
|
106
106
|
imagenet: "imagenet";
|
|
107
107
|
none: "none";
|
|
108
108
|
}>>;
|
|
109
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
109
110
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
110
111
|
letterbox: "letterbox";
|
|
111
112
|
resize: "resize";
|
|
@@ -234,6 +235,7 @@ export declare const customModelRegistryCapability: {
|
|
|
234
235
|
imagenet: "imagenet";
|
|
235
236
|
none: "none";
|
|
236
237
|
}>>;
|
|
238
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
237
239
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
238
240
|
letterbox: "letterbox";
|
|
239
241
|
resize: "resize";
|
|
@@ -108,6 +108,7 @@ export declare const ModelDistributeInputSchema: z.ZodObject<{
|
|
|
108
108
|
imagenet: "imagenet";
|
|
109
109
|
none: "none";
|
|
110
110
|
}>>;
|
|
111
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
111
112
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
112
113
|
letterbox: "letterbox";
|
|
113
114
|
resize: "resize";
|
|
@@ -250,6 +251,7 @@ export declare const modelDistributorCapability: {
|
|
|
250
251
|
imagenet: "imagenet";
|
|
251
252
|
none: "none";
|
|
252
253
|
}>>;
|
|
254
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
253
255
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
254
256
|
letterbox: "letterbox";
|
|
255
257
|
resize: "resize";
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device-control RESOLUTION LOGIC — the single, presentation-free source of
|
|
3
|
+
* truth for "given a device's `type` (+ its cap `features`), which control
|
|
4
|
+
* should render?".
|
|
5
|
+
*
|
|
6
|
+
* This module is deliberately framework-free: NO react / react-native / lucide
|
|
7
|
+
* imports, no JSX, no platform widgets. It encodes only the DECISION; each
|
|
8
|
+
* client (admin-ui's `@camstack/ui-library` web registry, the RN viewer's
|
|
9
|
+
* accessory registry) maps the returned control-KIND onto its own
|
|
10
|
+
* platform-specific components. That's the one duplication we remove — the
|
|
11
|
+
* presentational components stay platform-specific by necessity.
|
|
12
|
+
*
|
|
13
|
+
* Two decision surfaces live here, at two granularities:
|
|
14
|
+
*
|
|
15
|
+
* 1. `resolveDeviceControlKind(type)` — the BASE type → control-kind decision
|
|
16
|
+
* used by the admin-ui device list / device-detail hero. Exhaustive over
|
|
17
|
+
* every `DeviceType`; a light is a single `'light'` kind (dim-vs-plain is
|
|
18
|
+
* refined inside the light component).
|
|
19
|
+
*
|
|
20
|
+
* 2. `pickAccessoryControl({ type, features })` — the FINER accessory-row
|
|
21
|
+
* decision used by the viewer's per-camera accessory list. It refines a
|
|
22
|
+
* `light` into `'brightness'` vs `'switch'` and a `sensor`/`presence` into
|
|
23
|
+
* a specific sensor cap, because an accessory row renders ONE compact
|
|
24
|
+
* control chosen by priority.
|
|
25
|
+
*
|
|
26
|
+
* The two agree on every overlapping type EXCEPT `light` (see the notes on
|
|
27
|
+
* `pickAccessoryControl`): the base decision keeps a dedicated `'light'`
|
|
28
|
+
* control; the accessory decision collapses a non-dimmable light onto the
|
|
29
|
+
* generic `'switch'` control. That is a deliberate granularity difference, not
|
|
30
|
+
* a contradiction — the base kind is what the admin-ui renders, the accessory
|
|
31
|
+
* pick is what a compact camera-accessory row renders.
|
|
32
|
+
*/
|
|
33
|
+
import { DeviceType } from './device-type.js';
|
|
34
|
+
/**
|
|
35
|
+
* The abstract control-kind a `DeviceType` resolves to. Each client binds
|
|
36
|
+
* these kinds to its own components (web: `CONTROL_KIND_COMPONENTS`). A single
|
|
37
|
+
* kind can back several device types (`'switch'` ← Switch + Siren, `'sensor'`
|
|
38
|
+
* ← Sensor + Presence, `'dummy'` ← every placeholder/non-controllable type).
|
|
39
|
+
*/
|
|
40
|
+
export type DeviceControlKind = 'cover' | 'valve' | 'humidifier' | 'water-heater' | 'switch' | 'light' | 'fan' | 'sensor' | 'thermostat' | 'climate' | 'button' | 'update' | 'lock' | 'media-player' | 'alarm' | 'control' | 'weather' | 'vacuum' | 'lawn-mower' | 'image' | 'pet-feeder' | 'dummy';
|
|
41
|
+
/**
|
|
42
|
+
* Exhaustive `DeviceType` → `DeviceControlKind` map. Omitting a new enum member
|
|
43
|
+
* fails the build here (the single place the type→kind decision is encoded).
|
|
44
|
+
* `'dummy'` marks types with no interactive control (Camera/Hub/Generic and the
|
|
45
|
+
* placeholder HA types whose inline control renders a dash).
|
|
46
|
+
*/
|
|
47
|
+
export declare const DEVICE_TYPE_CONTROL_KIND: Record<DeviceType, DeviceControlKind>;
|
|
48
|
+
/**
|
|
49
|
+
* Runtime-string-safe base resolver: a device row's `type` crosses the wire as
|
|
50
|
+
* a plain string, so an unrecognised value resolves to `null` instead of
|
|
51
|
+
* indexing the map with an unverified key. `DEVICE_TYPE_VALUES.has(type)`
|
|
52
|
+
* narrows the string to a `DeviceType` before indexing (documented enum-string
|
|
53
|
+
* boundary).
|
|
54
|
+
*/
|
|
55
|
+
export declare function resolveDeviceControlKind(type: string): DeviceControlKind | null;
|
|
56
|
+
/** Identifier of the control kind an accessory row should render. `'none'` = no
|
|
57
|
+
* control. A subset of the surfaces the base decision covers, PLUS
|
|
58
|
+
* `'brightness'` (a dimmable light refined at the decision layer). */
|
|
59
|
+
export type AccessoryControlKind = 'cover' | 'lock' | 'alarm' | 'valve' | 'brightness' | 'switch' | 'sensor' | 'none';
|
|
60
|
+
/** Kebab feature flag advertised by an accessory that auto-activates when its
|
|
61
|
+
* parent camera detects motion. The cap's kebab name is `motion-trigger` (see
|
|
62
|
+
* `motion-trigger.cap.ts`). It is INDEPENDENT of the row's primary control: a
|
|
63
|
+
* siren/light/switch can expose BOTH a `switch` on/off AND a `motion-trigger`
|
|
64
|
+
* "activate on motion" toggle. */
|
|
65
|
+
export declare const MOTION_TRIGGER_FEATURE = "motion-trigger";
|
|
66
|
+
/** True when an accessory advertises the `motion-trigger` cap — drives the
|
|
67
|
+
* inline "On motion" toggle rendered alongside its primary control. Pure +
|
|
68
|
+
* testable. */
|
|
69
|
+
export declare function hasMotionTrigger(features: readonly string[]): boolean;
|
|
70
|
+
/** Kebab-case sensor cap names → the read-only sensor-value control. The
|
|
71
|
+
* accessory pick scans these (in order) to choose which sensor cap to read. */
|
|
72
|
+
export declare const SENSOR_FEATURES: readonly string[];
|
|
73
|
+
/** The chosen control plus the sensor feature (when `kind === 'sensor'`) so the
|
|
74
|
+
* renderer knows which sensor cap to read. */
|
|
75
|
+
export interface AccessoryControlPick {
|
|
76
|
+
readonly kind: AccessoryControlKind;
|
|
77
|
+
/** The kebab sensor cap name to read, only set when `kind === 'sensor'`. */
|
|
78
|
+
readonly sensorFeature?: string;
|
|
79
|
+
}
|
|
80
|
+
/** The accessory fields the pick needs: its canonical `DeviceType` (as the
|
|
81
|
+
* wire string) plus the secondary cap `features` (used only to refine a light
|
|
82
|
+
* or sensor). */
|
|
83
|
+
export interface AccessoryControlInput {
|
|
84
|
+
readonly type: string;
|
|
85
|
+
readonly features: readonly string[];
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Pick the primary control for an accessory. The control is chosen by the
|
|
89
|
+
* device's canonical `type` (the `DeviceType` enum value — the same key
|
|
90
|
+
* `resolveDeviceControlKind` maps on), NOT by the `features` list (which holds
|
|
91
|
+
* secondary flags). For a `light` we consult `features` to choose dim vs plain
|
|
92
|
+
* on/off, and for a `sensor`/`presence` to pick which sensor value to read.
|
|
93
|
+
* Pure: same input → same output. Returns `{ kind: 'none' }` for types with no
|
|
94
|
+
* accessory-row control.
|
|
95
|
+
*/
|
|
96
|
+
export declare function pickAccessoryControl(device: AccessoryControlInput): AccessoryControlPick;
|
|
97
|
+
/** A sensor cap → its `(capKey, field, fallbackUnit)` mapping for the read-only
|
|
98
|
+
* value row. The kebab cap name is the lookup key. The camelCase `capKey` is
|
|
99
|
+
* the tRPC client router key; `field` is the numeric field on that cap's
|
|
100
|
+
* status; `fallbackUnit` is used when the status omits a `unit`. */
|
|
101
|
+
export interface SensorMapping {
|
|
102
|
+
readonly capKey: string;
|
|
103
|
+
readonly field: string;
|
|
104
|
+
readonly fallbackUnit?: string;
|
|
105
|
+
}
|
|
106
|
+
/** Kebab sensor cap → its numeric-value mapping. `enum-sensor` is handled
|
|
107
|
+
* separately by callers (it reads a raw string `value`, not a numeric field),
|
|
108
|
+
* so it intentionally has no entry here. */
|
|
109
|
+
export declare const SENSOR_MAP: Readonly<Record<string, SensorMapping>>;
|
|
110
|
+
/** True when a value is a navigable node: a plain object OR a tRPC v11 client
|
|
111
|
+
* proxy node (a callable `Proxy(noop)` → `typeof === 'function'`, NOT an
|
|
112
|
+
* object). A `typeof === 'object'`-only check REJECTS every real client proxy,
|
|
113
|
+
* so `resolveMutate` would return null and EVERY control becomes a silent
|
|
114
|
+
* no-op. Framework-free: operates on the SDK proxy shape only. */
|
|
115
|
+
export declare function isNode(value: unknown): value is Record<string, unknown>;
|
|
116
|
+
/** Resolve `router.<method>.mutate` to a callable, or `null`. Walks the tRPC
|
|
117
|
+
* client proxy defensively (each hop guarded by `isNode`). */
|
|
118
|
+
export declare function resolveMutate(router: unknown, method: string): ((input: Record<string, unknown>) => Promise<unknown>) | null;
|
|
@@ -1436,21 +1436,6 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
|
|
|
1436
1436
|
};
|
|
1437
1437
|
meta: object;
|
|
1438
1438
|
}>;
|
|
1439
|
-
updateFrameworkPackage: import("@trpc/server").TRPCMutationProcedure<{
|
|
1440
|
-
input: {
|
|
1441
|
-
[x: string]: unknown;
|
|
1442
|
-
packageName: string;
|
|
1443
|
-
version?: string | undefined;
|
|
1444
|
-
deferRestart?: boolean | undefined;
|
|
1445
|
-
};
|
|
1446
|
-
output: {
|
|
1447
|
-
packageName: string;
|
|
1448
|
-
fromVersion: string;
|
|
1449
|
-
toVersion: string;
|
|
1450
|
-
restartingAt: number;
|
|
1451
|
-
};
|
|
1452
|
-
meta: object;
|
|
1453
|
-
}>;
|
|
1454
1439
|
getVersions: import("@trpc/server").TRPCQueryProcedure<{
|
|
1455
1440
|
input: {
|
|
1456
1441
|
[x: string]: unknown;
|
|
@@ -18182,21 +18167,6 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
|
|
|
18182
18167
|
};
|
|
18183
18168
|
meta: object;
|
|
18184
18169
|
}>;
|
|
18185
|
-
updateFrameworkPackage: import("@trpc/server").TRPCMutationProcedure<{
|
|
18186
|
-
input: {
|
|
18187
|
-
[x: string]: unknown;
|
|
18188
|
-
packageName: string;
|
|
18189
|
-
version?: string | undefined;
|
|
18190
|
-
deferRestart?: boolean | undefined;
|
|
18191
|
-
};
|
|
18192
|
-
output: {
|
|
18193
|
-
packageName: string;
|
|
18194
|
-
fromVersion: string;
|
|
18195
|
-
toVersion: string;
|
|
18196
|
-
restartingAt: number;
|
|
18197
|
-
};
|
|
18198
|
-
meta: object;
|
|
18199
|
-
}>;
|
|
18200
18170
|
getVersions: import("@trpc/server").TRPCQueryProcedure<{
|
|
18201
18171
|
input: {
|
|
18202
18172
|
[x: string]: unknown;
|
|
@@ -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: 800 method paths across 116 capabilities.
|
|
10
10
|
*/
|
|
11
11
|
import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
|
|
12
12
|
export interface MethodAccessRecord {
|
|
@@ -50,7 +50,7 @@ import type { userManagementCapability } from '../capabilities/user-management.c
|
|
|
50
50
|
*/
|
|
51
51
|
export interface SystemProxy {
|
|
52
52
|
readonly addonPages: Pick<InferProvider<typeof addonPagesCapability>, 'listPages'>;
|
|
53
|
-
readonly addons: Pick<InferProvider<typeof addonsCapability>, 'list' | 'getLogs' | 'listPackages' | 'installPackage' | 'installFromWorkspace' | 'isWorkspaceAvailable' | 'listWorkspacePackages' | 'uninstallPackage' | 'reloadPackages' | 'searchAvailable' | 'listUpdates' | 'updatePackage' | 'rollbackPackage' | 'forceRefresh' | 'restartServer' | 'getLastRestart' | 'listFrameworkPackages' | 'listCapabilityProviders' | 'setCapabilityProviderEnabled' | '
|
|
53
|
+
readonly addons: Pick<InferProvider<typeof addonsCapability>, 'list' | 'getLogs' | 'listPackages' | 'installPackage' | 'installFromWorkspace' | 'isWorkspaceAvailable' | 'listWorkspacePackages' | 'uninstallPackage' | 'reloadPackages' | 'searchAvailable' | 'listUpdates' | 'updatePackage' | 'rollbackPackage' | 'forceRefresh' | 'restartServer' | 'getLastRestart' | 'listFrameworkPackages' | 'listCapabilityProviders' | 'setCapabilityProviderEnabled' | 'getVersions' | 'restartAddon' | 'retryLoad' | 'getAutoUpdateSettings' | 'setAutoUpdateSettings' | 'getAddonAutoUpdate' | 'setAddonAutoUpdate' | 'applyAutoUpdateToAll' | 'custom' | 'startJob' | 'getJob' | 'listJobs' | 'cancelJob' | 'onAddonLogs'>;
|
|
54
54
|
readonly addonSettings: Pick<InferProvider<typeof addonSettingsCapability>, 'getGlobalSettings' | 'updateGlobalSettings'>;
|
|
55
55
|
readonly addonWidgets: Pick<InferProvider<typeof addonWidgetsCapability>, 'listWidgets'>;
|
|
56
56
|
readonly alerts: Pick<InferProvider<typeof alertsCapability>, 'emit' | 'update' | 'list' | 'getUnreadCount' | 'markRead' | 'markAllRead' | 'dismiss'>;
|
package/dist/index.d.ts
CHANGED
|
@@ -160,6 +160,8 @@ export { getByPath, setByPath } from './device/path-util.js';
|
|
|
160
160
|
export { applyTransform } from './device/device-link-transform.js';
|
|
161
161
|
export { enumerateItemArrayFields, enumerateSchemaFields } from './device/schema-fields.js';
|
|
162
162
|
export type { WireableField } from './device/schema-fields.js';
|
|
163
|
+
export { DEVICE_TYPE_CONTROL_KIND, resolveDeviceControlKind, MOTION_TRIGGER_FEATURE, hasMotionTrigger, SENSOR_FEATURES, SENSOR_MAP, pickAccessoryControl, isNode, resolveMutate, } from './device/device-control-resolution.js';
|
|
164
|
+
export type { DeviceControlKind, AccessoryControlKind, AccessoryControlPick, AccessoryControlInput, SensorMapping, } from './device/device-control-resolution.js';
|
|
163
165
|
export { EventCategory } from './enums/event-category.js';
|
|
164
166
|
export type { AppRouter, AddonApi } from './generated/addon-api.js';
|
|
165
167
|
export { createDeviceProxy } from './generated/device-proxy.js';
|
package/dist/index.js
CHANGED
|
@@ -174,6 +174,17 @@ var ModelCatalogEntrySchema = zod.z.object({
|
|
|
174
174
|
"imagenet",
|
|
175
175
|
"none"
|
|
176
176
|
]).optional(),
|
|
177
|
+
/**
|
|
178
|
+
* The model already applies softmax IN-GRAPH — its raw output is a
|
|
179
|
+
* probability distribution, not logits. When set, the `softmax`
|
|
180
|
+
* postprocessor must NOT re-apply softmax: re-softmaxing an already-normalised
|
|
181
|
+
* probability vector collapses it toward uniform (top-1 score craters far
|
|
182
|
+
* below its true value, making every confidence gate meaningless). Absent ⇒
|
|
183
|
+
* the output is raw logits and the postprocessor applies softmax (the normal
|
|
184
|
+
* case). Set on the Google AIY Birds `bird-classifier` (softmax baked into the
|
|
185
|
+
* TF graph). Threaded to the Python pool via `PoolModelConfig.outputProbabilities`.
|
|
186
|
+
*/
|
|
187
|
+
outputProbabilities: zod.z.boolean().optional(),
|
|
177
188
|
preprocessMode: zod.z.enum(["letterbox", "resize"]).optional(),
|
|
178
189
|
/**
|
|
179
190
|
* Per-MODEL postprocessor override. Absent ⇒ the step's own
|
|
@@ -12788,6 +12799,182 @@ function enumerateItemArrayFields(itemArray) {
|
|
|
12788
12799
|
}));
|
|
12789
12800
|
}
|
|
12790
12801
|
//#endregion
|
|
12802
|
+
//#region src/device/device-control-resolution.ts
|
|
12803
|
+
/**
|
|
12804
|
+
* Device-control RESOLUTION LOGIC — the single, presentation-free source of
|
|
12805
|
+
* truth for "given a device's `type` (+ its cap `features`), which control
|
|
12806
|
+
* should render?".
|
|
12807
|
+
*
|
|
12808
|
+
* This module is deliberately framework-free: NO react / react-native / lucide
|
|
12809
|
+
* imports, no JSX, no platform widgets. It encodes only the DECISION; each
|
|
12810
|
+
* client (admin-ui's `@camstack/ui-library` web registry, the RN viewer's
|
|
12811
|
+
* accessory registry) maps the returned control-KIND onto its own
|
|
12812
|
+
* platform-specific components. That's the one duplication we remove — the
|
|
12813
|
+
* presentational components stay platform-specific by necessity.
|
|
12814
|
+
*
|
|
12815
|
+
* Two decision surfaces live here, at two granularities:
|
|
12816
|
+
*
|
|
12817
|
+
* 1. `resolveDeviceControlKind(type)` — the BASE type → control-kind decision
|
|
12818
|
+
* used by the admin-ui device list / device-detail hero. Exhaustive over
|
|
12819
|
+
* every `DeviceType`; a light is a single `'light'` kind (dim-vs-plain is
|
|
12820
|
+
* refined inside the light component).
|
|
12821
|
+
*
|
|
12822
|
+
* 2. `pickAccessoryControl({ type, features })` — the FINER accessory-row
|
|
12823
|
+
* decision used by the viewer's per-camera accessory list. It refines a
|
|
12824
|
+
* `light` into `'brightness'` vs `'switch'` and a `sensor`/`presence` into
|
|
12825
|
+
* a specific sensor cap, because an accessory row renders ONE compact
|
|
12826
|
+
* control chosen by priority.
|
|
12827
|
+
*
|
|
12828
|
+
* The two agree on every overlapping type EXCEPT `light` (see the notes on
|
|
12829
|
+
* `pickAccessoryControl`): the base decision keeps a dedicated `'light'`
|
|
12830
|
+
* control; the accessory decision collapses a non-dimmable light onto the
|
|
12831
|
+
* generic `'switch'` control. That is a deliberate granularity difference, not
|
|
12832
|
+
* a contradiction — the base kind is what the admin-ui renders, the accessory
|
|
12833
|
+
* pick is what a compact camera-accessory row renders.
|
|
12834
|
+
*/
|
|
12835
|
+
/**
|
|
12836
|
+
* Exhaustive `DeviceType` → `DeviceControlKind` map. Omitting a new enum member
|
|
12837
|
+
* fails the build here (the single place the type→kind decision is encoded).
|
|
12838
|
+
* `'dummy'` marks types with no interactive control (Camera/Hub/Generic and the
|
|
12839
|
+
* placeholder HA types whose inline control renders a dash).
|
|
12840
|
+
*/
|
|
12841
|
+
var DEVICE_TYPE_CONTROL_KIND = {
|
|
12842
|
+
[require_sleep.DeviceType.Cover]: "cover",
|
|
12843
|
+
[require_sleep.DeviceType.Valve]: "valve",
|
|
12844
|
+
[require_sleep.DeviceType.Humidifier]: "humidifier",
|
|
12845
|
+
[require_sleep.DeviceType.WaterHeater]: "water-heater",
|
|
12846
|
+
[require_sleep.DeviceType.Camera]: "dummy",
|
|
12847
|
+
[require_sleep.DeviceType.Hub]: "dummy",
|
|
12848
|
+
[require_sleep.DeviceType.Switch]: "switch",
|
|
12849
|
+
[require_sleep.DeviceType.Siren]: "switch",
|
|
12850
|
+
[require_sleep.DeviceType.Light]: "light",
|
|
12851
|
+
[require_sleep.DeviceType.Fan]: "fan",
|
|
12852
|
+
[require_sleep.DeviceType.Sensor]: "sensor",
|
|
12853
|
+
[require_sleep.DeviceType.Thermostat]: "thermostat",
|
|
12854
|
+
[require_sleep.DeviceType.Climate]: "climate",
|
|
12855
|
+
[require_sleep.DeviceType.Button]: "button",
|
|
12856
|
+
[require_sleep.DeviceType.EventEmitter]: "dummy",
|
|
12857
|
+
[require_sleep.DeviceType.Update]: "update",
|
|
12858
|
+
[require_sleep.DeviceType.Generic]: "dummy",
|
|
12859
|
+
[require_sleep.DeviceType.Notifier]: "dummy",
|
|
12860
|
+
[require_sleep.DeviceType.Script]: "dummy",
|
|
12861
|
+
[require_sleep.DeviceType.Automation]: "dummy",
|
|
12862
|
+
[require_sleep.DeviceType.Lock]: "lock",
|
|
12863
|
+
[require_sleep.DeviceType.MediaPlayer]: "media-player",
|
|
12864
|
+
[require_sleep.DeviceType.AlarmPanel]: "alarm",
|
|
12865
|
+
[require_sleep.DeviceType.Control]: "control",
|
|
12866
|
+
[require_sleep.DeviceType.Presence]: "sensor",
|
|
12867
|
+
[require_sleep.DeviceType.Weather]: "weather",
|
|
12868
|
+
[require_sleep.DeviceType.Vacuum]: "vacuum",
|
|
12869
|
+
[require_sleep.DeviceType.LawnMower]: "lawn-mower",
|
|
12870
|
+
[require_sleep.DeviceType.Container]: "dummy",
|
|
12871
|
+
[require_sleep.DeviceType.Image]: "image",
|
|
12872
|
+
[require_sleep.DeviceType.PetFeeder]: "pet-feeder"
|
|
12873
|
+
};
|
|
12874
|
+
var DEVICE_TYPE_VALUES = new Set(Object.values(require_sleep.DeviceType));
|
|
12875
|
+
/**
|
|
12876
|
+
* Runtime-string-safe base resolver: a device row's `type` crosses the wire as
|
|
12877
|
+
* a plain string, so an unrecognised value resolves to `null` instead of
|
|
12878
|
+
* indexing the map with an unverified key. `DEVICE_TYPE_VALUES.has(type)`
|
|
12879
|
+
* narrows the string to a `DeviceType` before indexing (documented enum-string
|
|
12880
|
+
* boundary).
|
|
12881
|
+
*/
|
|
12882
|
+
function resolveDeviceControlKind(type) {
|
|
12883
|
+
return DEVICE_TYPE_VALUES.has(type) ? DEVICE_TYPE_CONTROL_KIND[type] : null;
|
|
12884
|
+
}
|
|
12885
|
+
/** Kebab feature flag advertised by an accessory that auto-activates when its
|
|
12886
|
+
* parent camera detects motion. The cap's kebab name is `motion-trigger` (see
|
|
12887
|
+
* `motion-trigger.cap.ts`). It is INDEPENDENT of the row's primary control: a
|
|
12888
|
+
* siren/light/switch can expose BOTH a `switch` on/off AND a `motion-trigger`
|
|
12889
|
+
* "activate on motion" toggle. */
|
|
12890
|
+
var MOTION_TRIGGER_FEATURE = "motion-trigger";
|
|
12891
|
+
/** True when an accessory advertises the `motion-trigger` cap — drives the
|
|
12892
|
+
* inline "On motion" toggle rendered alongside its primary control. Pure +
|
|
12893
|
+
* testable. */
|
|
12894
|
+
function hasMotionTrigger(features) {
|
|
12895
|
+
return features.includes(MOTION_TRIGGER_FEATURE);
|
|
12896
|
+
}
|
|
12897
|
+
/** Kebab-case sensor cap names → the read-only sensor-value control. The
|
|
12898
|
+
* accessory pick scans these (in order) to choose which sensor cap to read. */
|
|
12899
|
+
var SENSOR_FEATURES = [
|
|
12900
|
+
"temperature-sensor",
|
|
12901
|
+
"humidity-sensor",
|
|
12902
|
+
"ambient-light-sensor",
|
|
12903
|
+
"numeric-sensor",
|
|
12904
|
+
"enum-sensor"
|
|
12905
|
+
];
|
|
12906
|
+
/**
|
|
12907
|
+
* Pick the primary control for an accessory. The control is chosen by the
|
|
12908
|
+
* device's canonical `type` (the `DeviceType` enum value — the same key
|
|
12909
|
+
* `resolveDeviceControlKind` maps on), NOT by the `features` list (which holds
|
|
12910
|
+
* secondary flags). For a `light` we consult `features` to choose dim vs plain
|
|
12911
|
+
* on/off, and for a `sensor`/`presence` to pick which sensor value to read.
|
|
12912
|
+
* Pure: same input → same output. Returns `{ kind: 'none' }` for types with no
|
|
12913
|
+
* accessory-row control.
|
|
12914
|
+
*/
|
|
12915
|
+
function pickAccessoryControl(device) {
|
|
12916
|
+
const set = new Set(device.features);
|
|
12917
|
+
switch (device.type) {
|
|
12918
|
+
case require_sleep.DeviceType.Cover: return { kind: "cover" };
|
|
12919
|
+
case require_sleep.DeviceType.Valve: return { kind: "valve" };
|
|
12920
|
+
case require_sleep.DeviceType.Lock: return { kind: "lock" };
|
|
12921
|
+
case require_sleep.DeviceType.AlarmPanel: return { kind: "alarm" };
|
|
12922
|
+
case require_sleep.DeviceType.Light: return set.has("brightness") ? { kind: "brightness" } : { kind: "switch" };
|
|
12923
|
+
case require_sleep.DeviceType.Switch:
|
|
12924
|
+
case require_sleep.DeviceType.Siren: return { kind: "switch" };
|
|
12925
|
+
case require_sleep.DeviceType.Sensor:
|
|
12926
|
+
case require_sleep.DeviceType.Presence: {
|
|
12927
|
+
const sensor = SENSOR_FEATURES.find((f) => set.has(f));
|
|
12928
|
+
return sensor ? {
|
|
12929
|
+
kind: "sensor",
|
|
12930
|
+
sensorFeature: sensor
|
|
12931
|
+
} : { kind: "none" };
|
|
12932
|
+
}
|
|
12933
|
+
default: return { kind: "none" };
|
|
12934
|
+
}
|
|
12935
|
+
}
|
|
12936
|
+
/** Kebab sensor cap → its numeric-value mapping. `enum-sensor` is handled
|
|
12937
|
+
* separately by callers (it reads a raw string `value`, not a numeric field),
|
|
12938
|
+
* so it intentionally has no entry here. */
|
|
12939
|
+
var SENSOR_MAP = {
|
|
12940
|
+
"temperature-sensor": {
|
|
12941
|
+
capKey: "temperatureSensor",
|
|
12942
|
+
field: "celsius",
|
|
12943
|
+
fallbackUnit: "°C"
|
|
12944
|
+
},
|
|
12945
|
+
"humidity-sensor": {
|
|
12946
|
+
capKey: "humiditySensor",
|
|
12947
|
+
field: "percent",
|
|
12948
|
+
fallbackUnit: "%"
|
|
12949
|
+
},
|
|
12950
|
+
"ambient-light-sensor": {
|
|
12951
|
+
capKey: "ambientLightSensor",
|
|
12952
|
+
field: "lux",
|
|
12953
|
+
fallbackUnit: "lx"
|
|
12954
|
+
},
|
|
12955
|
+
"numeric-sensor": {
|
|
12956
|
+
capKey: "numericSensor",
|
|
12957
|
+
field: "value"
|
|
12958
|
+
}
|
|
12959
|
+
};
|
|
12960
|
+
/** True when a value is a navigable node: a plain object OR a tRPC v11 client
|
|
12961
|
+
* proxy node (a callable `Proxy(noop)` → `typeof === 'function'`, NOT an
|
|
12962
|
+
* object). A `typeof === 'object'`-only check REJECTS every real client proxy,
|
|
12963
|
+
* so `resolveMutate` would return null and EVERY control becomes a silent
|
|
12964
|
+
* no-op. Framework-free: operates on the SDK proxy shape only. */
|
|
12965
|
+
function isNode(value) {
|
|
12966
|
+
return value !== null && (typeof value === "object" || typeof value === "function");
|
|
12967
|
+
}
|
|
12968
|
+
/** Resolve `router.<method>.mutate` to a callable, or `null`. Walks the tRPC
|
|
12969
|
+
* client proxy defensively (each hop guarded by `isNode`). */
|
|
12970
|
+
function resolveMutate(router, method) {
|
|
12971
|
+
if (!isNode(router)) return null;
|
|
12972
|
+
const proc = router[method];
|
|
12973
|
+
if (!isNode(proc)) return null;
|
|
12974
|
+
const mutate = proc.mutate;
|
|
12975
|
+
return typeof mutate === "function" ? mutate : null;
|
|
12976
|
+
}
|
|
12977
|
+
//#endregion
|
|
12791
12978
|
//#region src/utils/zone-rule-eval.ts
|
|
12792
12979
|
/**
|
|
12793
12980
|
* Evaluate `rules` against `items`. Returns the items partitioned
|
|
@@ -12905,7 +13092,6 @@ function createSystemProxy(api) {
|
|
|
12905
13092
|
listFrameworkPackages: (input) => dispatch("addons", "listFrameworkPackages", "query", input),
|
|
12906
13093
|
listCapabilityProviders: (input) => dispatch("addons", "listCapabilityProviders", "query", input),
|
|
12907
13094
|
setCapabilityProviderEnabled: (input) => dispatch("addons", "setCapabilityProviderEnabled", "mutation", input),
|
|
12908
|
-
updateFrameworkPackage: (input) => dispatch("addons", "updateFrameworkPackage", "mutation", input),
|
|
12909
13095
|
getVersions: (input) => dispatch("addons", "getVersions", "query", input),
|
|
12910
13096
|
restartAddon: (input) => dispatch("addons", "restartAddon", "mutation", input),
|
|
12911
13097
|
retryLoad: (input) => dispatch("addons", "retryLoad", "mutation", input),
|
|
@@ -21583,22 +21769,6 @@ var AddonAutoUpdateSchema = ChannelWithInheritSchema;
|
|
|
21583
21769
|
var RestartAddonResultSchema = zod.z.unknown();
|
|
21584
21770
|
var InstallPackageResultSchema = zod.z.unknown();
|
|
21585
21771
|
var ReloadPackagesResultSchema = zod.z.unknown();
|
|
21586
|
-
/**
|
|
21587
|
-
* Result of `updateFrameworkPackage`. The cap method returns BEFORE the
|
|
21588
|
-
* server restarts so the admin UI can react to the `restartingAt`
|
|
21589
|
-
* timestamp (shows reconnect overlay). The transition from
|
|
21590
|
-
* `fromVersion` to `toVersion` will be confirmed by a subsequent
|
|
21591
|
-
* `system.restart-completed` event after the new process boots.
|
|
21592
|
-
*
|
|
21593
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
21594
|
-
*/
|
|
21595
|
-
var UpdateFrameworkPackageResultSchema = zod.z.object({
|
|
21596
|
-
packageName: zod.z.string(),
|
|
21597
|
-
fromVersion: zod.z.string(),
|
|
21598
|
-
toVersion: zod.z.string(),
|
|
21599
|
-
/** Ms-epoch the server scheduled its self-restart. */
|
|
21600
|
-
restartingAt: zod.z.number()
|
|
21601
|
-
});
|
|
21602
21772
|
var BulkUpdateItemStatusSchema = zod.z.enum([
|
|
21603
21773
|
"queued",
|
|
21604
21774
|
"updating",
|
|
@@ -21844,28 +22014,6 @@ var addonsCapability = {
|
|
|
21844
22014
|
kind: "mutation",
|
|
21845
22015
|
auth: "admin"
|
|
21846
22016
|
}),
|
|
21847
|
-
/**
|
|
21848
|
-
* Live-update one of the framework packages marked
|
|
21849
|
-
* `camstack.system: true` (`@camstack/types|kernel|core|sdk|ui-library`).
|
|
21850
|
-
* Runs `npm install --prefix <appRoot> <name>@<version> --no-save`,
|
|
21851
|
-
* writes a `.restart-pending` marker, emits `system.restarting`
|
|
21852
|
-
* and schedules a graceful process exit. The supervisor (Docker /
|
|
21853
|
-
* Electron / systemd) brings the hub back up; on first boot after
|
|
21854
|
-
* the restart the marker fires `system.restart-completed`.
|
|
21855
|
-
*
|
|
21856
|
-
* `version` defaults to `'latest'`. The allow-list of valid
|
|
21857
|
-
* `packageName` values is enforced server-side.
|
|
21858
|
-
*
|
|
21859
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
21860
|
-
*/
|
|
21861
|
-
updateFrameworkPackage: require_sleep.method(zod.z.object({
|
|
21862
|
-
packageName: zod.z.string().min(1),
|
|
21863
|
-
version: zod.z.string().optional(),
|
|
21864
|
-
deferRestart: zod.z.boolean().optional()
|
|
21865
|
-
}), UpdateFrameworkPackageResultSchema, {
|
|
21866
|
-
kind: "mutation",
|
|
21867
|
-
auth: "admin"
|
|
21868
|
-
}),
|
|
21869
22017
|
getVersions: require_sleep.method(zod.z.object({ name: zod.z.string() }), zod.z.array(PackageVersionInfoSchema).readonly()),
|
|
21870
22018
|
restartAddon: require_sleep.method(zod.z.object({ addonId: zod.z.string() }), RestartAddonResultSchema, {
|
|
21871
22019
|
kind: "mutation",
|
|
@@ -25949,12 +26097,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25949
26097
|
addonId: null,
|
|
25950
26098
|
access: "delete"
|
|
25951
26099
|
},
|
|
25952
|
-
"addons.updateFrameworkPackage": {
|
|
25953
|
-
capName: "addons",
|
|
25954
|
-
capScope: "system",
|
|
25955
|
-
addonId: null,
|
|
25956
|
-
access: "create"
|
|
25957
|
-
},
|
|
25958
26100
|
"addons.updatePackage": {
|
|
25959
26101
|
capName: "addons",
|
|
25960
26102
|
capScope: "system",
|
|
@@ -30862,34 +31004,6 @@ function getCapsByProviderKind(kind) {
|
|
|
30862
31004
|
return out;
|
|
30863
31005
|
}
|
|
30864
31006
|
//#endregion
|
|
30865
|
-
//#region src/lifecycle/framework-swap.ts
|
|
30866
|
-
var frameworkSwapPackageSchema = zod.z.object({
|
|
30867
|
-
name: zod.z.string(),
|
|
30868
|
-
stagedPath: zod.z.string(),
|
|
30869
|
-
backupPath: zod.z.string(),
|
|
30870
|
-
toVersion: zod.z.string(),
|
|
30871
|
-
fromVersion: zod.z.string().nullable()
|
|
30872
|
-
});
|
|
30873
|
-
var pendingFrameworkSwapSchema = zod.z.object({
|
|
30874
|
-
jobId: zod.z.string(),
|
|
30875
|
-
taskId: zod.z.string(),
|
|
30876
|
-
packages: zod.z.array(frameworkSwapPackageSchema),
|
|
30877
|
-
requestedAtMs: zod.z.number(),
|
|
30878
|
-
schemaVersion: zod.z.literal(1)
|
|
30879
|
-
});
|
|
30880
|
-
var frameworkSwapConfirmSchema = zod.z.object({
|
|
30881
|
-
jobId: zod.z.string(),
|
|
30882
|
-
taskId: zod.z.string(),
|
|
30883
|
-
backups: zod.z.array(zod.z.object({
|
|
30884
|
-
name: zod.z.string(),
|
|
30885
|
-
backupPath: zod.z.string(),
|
|
30886
|
-
livePath: zod.z.string()
|
|
30887
|
-
})),
|
|
30888
|
-
appliedAtMs: zod.z.number(),
|
|
30889
|
-
bootAttempts: zod.z.number(),
|
|
30890
|
-
schemaVersion: zod.z.literal(1)
|
|
30891
|
-
});
|
|
30892
|
-
//#endregion
|
|
30893
31007
|
//#region src/util/location-match.ts
|
|
30894
31008
|
/**
|
|
30895
31009
|
* Pure fuzzy matcher for adoption location import. Normalized
|
|
@@ -31514,6 +31628,7 @@ exports.DEVICE_CAP_NAMES = DEVICE_CAP_NAMES;
|
|
|
31514
31628
|
exports.DEVICE_PROFILES = DEVICE_PROFILES;
|
|
31515
31629
|
exports.DEVICE_SETTINGS_CONTRIBUTION_METHODS = require_sleep.DEVICE_SETTINGS_CONTRIBUTION_METHODS;
|
|
31516
31630
|
exports.DEVICE_STATUS_METHOD = require_sleep.DEVICE_STATUS_METHOD;
|
|
31631
|
+
exports.DEVICE_TYPE_CONTROL_KIND = DEVICE_TYPE_CONTROL_KIND;
|
|
31517
31632
|
exports.DEVICE_TYPE_INFO = DEVICE_TYPE_INFO;
|
|
31518
31633
|
exports.DayNightModeSchema = DayNightModeSchema;
|
|
31519
31634
|
exports.DayNightOptionsSchema = DayNightOptionsSchema;
|
|
@@ -31656,6 +31771,7 @@ exports.MAX_EXPRESSION_EVAL_STEPS = MAX_EXPRESSION_EVAL_STEPS;
|
|
|
31656
31771
|
exports.MAX_EXPRESSION_SOURCE_LENGTH = MAX_EXPRESSION_SOURCE_LENGTH;
|
|
31657
31772
|
exports.METHOD_ACCESS_MAP = METHOD_ACCESS_MAP;
|
|
31658
31773
|
exports.MODEL_FORMATS = MODEL_FORMATS;
|
|
31774
|
+
exports.MOTION_TRIGGER_FEATURE = MOTION_TRIGGER_FEATURE;
|
|
31659
31775
|
exports.ManagedModelCatalogEntrySchema = ManagedModelCatalogEntrySchema;
|
|
31660
31776
|
exports.ManagedModelRefSchema = ManagedModelRefSchema;
|
|
31661
31777
|
exports.ManagedRuntimeConfigSchema = ManagedRuntimeConfigSchema;
|
|
@@ -31821,6 +31937,8 @@ exports.SCOPE_PRESETS = SCOPE_PRESETS;
|
|
|
31821
31937
|
exports.SCRUB_THUMBNAIL_PRESETS = SCRUB_THUMBNAIL_PRESETS;
|
|
31822
31938
|
exports.SCRUB_THUMBNAIL_PRESET_LABELS = SCRUB_THUMBNAIL_PRESET_LABELS;
|
|
31823
31939
|
exports.SCRUB_THUMBNAIL_PRESET_ORDER = SCRUB_THUMBNAIL_PRESET_ORDER;
|
|
31940
|
+
exports.SENSOR_FEATURES = SENSOR_FEATURES;
|
|
31941
|
+
exports.SENSOR_MAP = SENSOR_MAP;
|
|
31824
31942
|
exports.SOURCE_INFO_METADATA_KEY = SOURCE_INFO_METADATA_KEY;
|
|
31825
31943
|
exports.STREAM_PROFILE_META = STREAM_PROFILE_META;
|
|
31826
31944
|
exports.STREAM_QUALITY_LABELS = STREAM_QUALITY_LABELS;
|
|
@@ -32067,13 +32185,12 @@ exports.findTimezone = findTimezone;
|
|
|
32067
32185
|
exports.floodCapability = floodCapability;
|
|
32068
32186
|
exports.formatForBackend = formatForBackend;
|
|
32069
32187
|
exports.formatForRuntime = formatForRuntime;
|
|
32070
|
-
exports.frameworkSwapConfirmSchema = frameworkSwapConfirmSchema;
|
|
32071
|
-
exports.frameworkSwapPackageSchema = frameworkSwapPackageSchema;
|
|
32072
32188
|
exports.gasCapability = gasCapability;
|
|
32073
32189
|
exports.getAudioMacroClassIds = getAudioMacroClassIds;
|
|
32074
32190
|
exports.getByPath = getByPath;
|
|
32075
32191
|
exports.getCapsByProviderKind = getCapsByProviderKind;
|
|
32076
32192
|
exports.getTaxonomyEntry = getTaxonomyEntry;
|
|
32193
|
+
exports.hasMotionTrigger = hasMotionTrigger;
|
|
32077
32194
|
exports.hfModelUrl = hfModelUrl;
|
|
32078
32195
|
exports.htmlToText = htmlToText;
|
|
32079
32196
|
exports.humidifierCapability = humidifierCapability;
|
|
@@ -32089,6 +32206,7 @@ exports.isCollectionArrayMethod = isCollectionArrayMethod;
|
|
|
32089
32206
|
exports.isDeployableToAgent = isDeployableToAgent;
|
|
32090
32207
|
exports.isDeviceConfigCap = require_sleep.isDeviceConfigCap;
|
|
32091
32208
|
exports.isEvent = require_sleep.isEvent;
|
|
32209
|
+
exports.isNode = isNode;
|
|
32092
32210
|
exports.isObjectInput = isObjectInput;
|
|
32093
32211
|
exports.isVoidInput = isVoidInput;
|
|
32094
32212
|
exports.jobKindSchema = jobKindSchema;
|
|
@@ -32146,8 +32264,8 @@ exports.parseJsonObject = require_sleep.parseJsonObject;
|
|
|
32146
32264
|
exports.parseJsonUnknown = require_sleep.parseJsonUnknown;
|
|
32147
32265
|
exports.parseProfileBrokerId = require_sleep.parseProfileBrokerId;
|
|
32148
32266
|
exports.parseStreamParamsFormPatch = parseStreamParamsFormPatch;
|
|
32149
|
-
exports.pendingFrameworkSwapSchema = pendingFrameworkSwapSchema;
|
|
32150
32267
|
exports.petFeederCapability = petFeederCapability;
|
|
32268
|
+
exports.pickAccessoryControl = pickAccessoryControl;
|
|
32151
32269
|
exports.pickPreferredRtspEntry = pickPreferredRtspEntry;
|
|
32152
32270
|
exports.pipelineAnalyticsCapability = pipelineAnalyticsCapability;
|
|
32153
32271
|
exports.pipelineExecutorCapability = pipelineExecutorCapability;
|
|
@@ -32177,10 +32295,12 @@ exports.resolveAddonPlacement = resolveAddonPlacement;
|
|
|
32177
32295
|
exports.resolveAddonRuntime = resolveAddonRuntime;
|
|
32178
32296
|
exports.resolveCapMount = require_sleep.resolveCapMount;
|
|
32179
32297
|
exports.resolveDetectionRuntime = resolveDetectionRuntime;
|
|
32298
|
+
exports.resolveDeviceControlKind = resolveDeviceControlKind;
|
|
32180
32299
|
exports.resolveDeviceProfile = resolveDeviceProfile;
|
|
32181
32300
|
exports.resolveFormat = resolveFormat;
|
|
32182
32301
|
exports.resolveHydratedFieldValue = require_sleep.resolveHydratedFieldValue;
|
|
32183
32302
|
exports.resolveModelFormat = resolveModelFormat;
|
|
32303
|
+
exports.resolveMutate = resolveMutate;
|
|
32184
32304
|
exports.resolveRunnerId = resolveRunnerId;
|
|
32185
32305
|
exports.resolveScrubThumbnailGeometry = resolveScrubThumbnailGeometry;
|
|
32186
32306
|
exports.resolveVariantModelId = resolveVariantModelId;
|
package/dist/index.mjs
CHANGED
|
@@ -173,6 +173,17 @@ var ModelCatalogEntrySchema = z.object({
|
|
|
173
173
|
"imagenet",
|
|
174
174
|
"none"
|
|
175
175
|
]).optional(),
|
|
176
|
+
/**
|
|
177
|
+
* The model already applies softmax IN-GRAPH — its raw output is a
|
|
178
|
+
* probability distribution, not logits. When set, the `softmax`
|
|
179
|
+
* postprocessor must NOT re-apply softmax: re-softmaxing an already-normalised
|
|
180
|
+
* probability vector collapses it toward uniform (top-1 score craters far
|
|
181
|
+
* below its true value, making every confidence gate meaningless). Absent ⇒
|
|
182
|
+
* the output is raw logits and the postprocessor applies softmax (the normal
|
|
183
|
+
* case). Set on the Google AIY Birds `bird-classifier` (softmax baked into the
|
|
184
|
+
* TF graph). Threaded to the Python pool via `PoolModelConfig.outputProbabilities`.
|
|
185
|
+
*/
|
|
186
|
+
outputProbabilities: z.boolean().optional(),
|
|
176
187
|
preprocessMode: z.enum(["letterbox", "resize"]).optional(),
|
|
177
188
|
/**
|
|
178
189
|
* Per-MODEL postprocessor override. Absent ⇒ the step's own
|
|
@@ -12787,6 +12798,182 @@ function enumerateItemArrayFields(itemArray) {
|
|
|
12787
12798
|
}));
|
|
12788
12799
|
}
|
|
12789
12800
|
//#endregion
|
|
12801
|
+
//#region src/device/device-control-resolution.ts
|
|
12802
|
+
/**
|
|
12803
|
+
* Device-control RESOLUTION LOGIC — the single, presentation-free source of
|
|
12804
|
+
* truth for "given a device's `type` (+ its cap `features`), which control
|
|
12805
|
+
* should render?".
|
|
12806
|
+
*
|
|
12807
|
+
* This module is deliberately framework-free: NO react / react-native / lucide
|
|
12808
|
+
* imports, no JSX, no platform widgets. It encodes only the DECISION; each
|
|
12809
|
+
* client (admin-ui's `@camstack/ui-library` web registry, the RN viewer's
|
|
12810
|
+
* accessory registry) maps the returned control-KIND onto its own
|
|
12811
|
+
* platform-specific components. That's the one duplication we remove — the
|
|
12812
|
+
* presentational components stay platform-specific by necessity.
|
|
12813
|
+
*
|
|
12814
|
+
* Two decision surfaces live here, at two granularities:
|
|
12815
|
+
*
|
|
12816
|
+
* 1. `resolveDeviceControlKind(type)` — the BASE type → control-kind decision
|
|
12817
|
+
* used by the admin-ui device list / device-detail hero. Exhaustive over
|
|
12818
|
+
* every `DeviceType`; a light is a single `'light'` kind (dim-vs-plain is
|
|
12819
|
+
* refined inside the light component).
|
|
12820
|
+
*
|
|
12821
|
+
* 2. `pickAccessoryControl({ type, features })` — the FINER accessory-row
|
|
12822
|
+
* decision used by the viewer's per-camera accessory list. It refines a
|
|
12823
|
+
* `light` into `'brightness'` vs `'switch'` and a `sensor`/`presence` into
|
|
12824
|
+
* a specific sensor cap, because an accessory row renders ONE compact
|
|
12825
|
+
* control chosen by priority.
|
|
12826
|
+
*
|
|
12827
|
+
* The two agree on every overlapping type EXCEPT `light` (see the notes on
|
|
12828
|
+
* `pickAccessoryControl`): the base decision keeps a dedicated `'light'`
|
|
12829
|
+
* control; the accessory decision collapses a non-dimmable light onto the
|
|
12830
|
+
* generic `'switch'` control. That is a deliberate granularity difference, not
|
|
12831
|
+
* a contradiction — the base kind is what the admin-ui renders, the accessory
|
|
12832
|
+
* pick is what a compact camera-accessory row renders.
|
|
12833
|
+
*/
|
|
12834
|
+
/**
|
|
12835
|
+
* Exhaustive `DeviceType` → `DeviceControlKind` map. Omitting a new enum member
|
|
12836
|
+
* fails the build here (the single place the type→kind decision is encoded).
|
|
12837
|
+
* `'dummy'` marks types with no interactive control (Camera/Hub/Generic and the
|
|
12838
|
+
* placeholder HA types whose inline control renders a dash).
|
|
12839
|
+
*/
|
|
12840
|
+
var DEVICE_TYPE_CONTROL_KIND = {
|
|
12841
|
+
[DeviceType.Cover]: "cover",
|
|
12842
|
+
[DeviceType.Valve]: "valve",
|
|
12843
|
+
[DeviceType.Humidifier]: "humidifier",
|
|
12844
|
+
[DeviceType.WaterHeater]: "water-heater",
|
|
12845
|
+
[DeviceType.Camera]: "dummy",
|
|
12846
|
+
[DeviceType.Hub]: "dummy",
|
|
12847
|
+
[DeviceType.Switch]: "switch",
|
|
12848
|
+
[DeviceType.Siren]: "switch",
|
|
12849
|
+
[DeviceType.Light]: "light",
|
|
12850
|
+
[DeviceType.Fan]: "fan",
|
|
12851
|
+
[DeviceType.Sensor]: "sensor",
|
|
12852
|
+
[DeviceType.Thermostat]: "thermostat",
|
|
12853
|
+
[DeviceType.Climate]: "climate",
|
|
12854
|
+
[DeviceType.Button]: "button",
|
|
12855
|
+
[DeviceType.EventEmitter]: "dummy",
|
|
12856
|
+
[DeviceType.Update]: "update",
|
|
12857
|
+
[DeviceType.Generic]: "dummy",
|
|
12858
|
+
[DeviceType.Notifier]: "dummy",
|
|
12859
|
+
[DeviceType.Script]: "dummy",
|
|
12860
|
+
[DeviceType.Automation]: "dummy",
|
|
12861
|
+
[DeviceType.Lock]: "lock",
|
|
12862
|
+
[DeviceType.MediaPlayer]: "media-player",
|
|
12863
|
+
[DeviceType.AlarmPanel]: "alarm",
|
|
12864
|
+
[DeviceType.Control]: "control",
|
|
12865
|
+
[DeviceType.Presence]: "sensor",
|
|
12866
|
+
[DeviceType.Weather]: "weather",
|
|
12867
|
+
[DeviceType.Vacuum]: "vacuum",
|
|
12868
|
+
[DeviceType.LawnMower]: "lawn-mower",
|
|
12869
|
+
[DeviceType.Container]: "dummy",
|
|
12870
|
+
[DeviceType.Image]: "image",
|
|
12871
|
+
[DeviceType.PetFeeder]: "pet-feeder"
|
|
12872
|
+
};
|
|
12873
|
+
var DEVICE_TYPE_VALUES = new Set(Object.values(DeviceType));
|
|
12874
|
+
/**
|
|
12875
|
+
* Runtime-string-safe base resolver: a device row's `type` crosses the wire as
|
|
12876
|
+
* a plain string, so an unrecognised value resolves to `null` instead of
|
|
12877
|
+
* indexing the map with an unverified key. `DEVICE_TYPE_VALUES.has(type)`
|
|
12878
|
+
* narrows the string to a `DeviceType` before indexing (documented enum-string
|
|
12879
|
+
* boundary).
|
|
12880
|
+
*/
|
|
12881
|
+
function resolveDeviceControlKind(type) {
|
|
12882
|
+
return DEVICE_TYPE_VALUES.has(type) ? DEVICE_TYPE_CONTROL_KIND[type] : null;
|
|
12883
|
+
}
|
|
12884
|
+
/** Kebab feature flag advertised by an accessory that auto-activates when its
|
|
12885
|
+
* parent camera detects motion. The cap's kebab name is `motion-trigger` (see
|
|
12886
|
+
* `motion-trigger.cap.ts`). It is INDEPENDENT of the row's primary control: a
|
|
12887
|
+
* siren/light/switch can expose BOTH a `switch` on/off AND a `motion-trigger`
|
|
12888
|
+
* "activate on motion" toggle. */
|
|
12889
|
+
var MOTION_TRIGGER_FEATURE = "motion-trigger";
|
|
12890
|
+
/** True when an accessory advertises the `motion-trigger` cap — drives the
|
|
12891
|
+
* inline "On motion" toggle rendered alongside its primary control. Pure +
|
|
12892
|
+
* testable. */
|
|
12893
|
+
function hasMotionTrigger(features) {
|
|
12894
|
+
return features.includes(MOTION_TRIGGER_FEATURE);
|
|
12895
|
+
}
|
|
12896
|
+
/** Kebab-case sensor cap names → the read-only sensor-value control. The
|
|
12897
|
+
* accessory pick scans these (in order) to choose which sensor cap to read. */
|
|
12898
|
+
var SENSOR_FEATURES = [
|
|
12899
|
+
"temperature-sensor",
|
|
12900
|
+
"humidity-sensor",
|
|
12901
|
+
"ambient-light-sensor",
|
|
12902
|
+
"numeric-sensor",
|
|
12903
|
+
"enum-sensor"
|
|
12904
|
+
];
|
|
12905
|
+
/**
|
|
12906
|
+
* Pick the primary control for an accessory. The control is chosen by the
|
|
12907
|
+
* device's canonical `type` (the `DeviceType` enum value — the same key
|
|
12908
|
+
* `resolveDeviceControlKind` maps on), NOT by the `features` list (which holds
|
|
12909
|
+
* secondary flags). For a `light` we consult `features` to choose dim vs plain
|
|
12910
|
+
* on/off, and for a `sensor`/`presence` to pick which sensor value to read.
|
|
12911
|
+
* Pure: same input → same output. Returns `{ kind: 'none' }` for types with no
|
|
12912
|
+
* accessory-row control.
|
|
12913
|
+
*/
|
|
12914
|
+
function pickAccessoryControl(device) {
|
|
12915
|
+
const set = new Set(device.features);
|
|
12916
|
+
switch (device.type) {
|
|
12917
|
+
case DeviceType.Cover: return { kind: "cover" };
|
|
12918
|
+
case DeviceType.Valve: return { kind: "valve" };
|
|
12919
|
+
case DeviceType.Lock: return { kind: "lock" };
|
|
12920
|
+
case DeviceType.AlarmPanel: return { kind: "alarm" };
|
|
12921
|
+
case DeviceType.Light: return set.has("brightness") ? { kind: "brightness" } : { kind: "switch" };
|
|
12922
|
+
case DeviceType.Switch:
|
|
12923
|
+
case DeviceType.Siren: return { kind: "switch" };
|
|
12924
|
+
case DeviceType.Sensor:
|
|
12925
|
+
case DeviceType.Presence: {
|
|
12926
|
+
const sensor = SENSOR_FEATURES.find((f) => set.has(f));
|
|
12927
|
+
return sensor ? {
|
|
12928
|
+
kind: "sensor",
|
|
12929
|
+
sensorFeature: sensor
|
|
12930
|
+
} : { kind: "none" };
|
|
12931
|
+
}
|
|
12932
|
+
default: return { kind: "none" };
|
|
12933
|
+
}
|
|
12934
|
+
}
|
|
12935
|
+
/** Kebab sensor cap → its numeric-value mapping. `enum-sensor` is handled
|
|
12936
|
+
* separately by callers (it reads a raw string `value`, not a numeric field),
|
|
12937
|
+
* so it intentionally has no entry here. */
|
|
12938
|
+
var SENSOR_MAP = {
|
|
12939
|
+
"temperature-sensor": {
|
|
12940
|
+
capKey: "temperatureSensor",
|
|
12941
|
+
field: "celsius",
|
|
12942
|
+
fallbackUnit: "°C"
|
|
12943
|
+
},
|
|
12944
|
+
"humidity-sensor": {
|
|
12945
|
+
capKey: "humiditySensor",
|
|
12946
|
+
field: "percent",
|
|
12947
|
+
fallbackUnit: "%"
|
|
12948
|
+
},
|
|
12949
|
+
"ambient-light-sensor": {
|
|
12950
|
+
capKey: "ambientLightSensor",
|
|
12951
|
+
field: "lux",
|
|
12952
|
+
fallbackUnit: "lx"
|
|
12953
|
+
},
|
|
12954
|
+
"numeric-sensor": {
|
|
12955
|
+
capKey: "numericSensor",
|
|
12956
|
+
field: "value"
|
|
12957
|
+
}
|
|
12958
|
+
};
|
|
12959
|
+
/** True when a value is a navigable node: a plain object OR a tRPC v11 client
|
|
12960
|
+
* proxy node (a callable `Proxy(noop)` → `typeof === 'function'`, NOT an
|
|
12961
|
+
* object). A `typeof === 'object'`-only check REJECTS every real client proxy,
|
|
12962
|
+
* so `resolveMutate` would return null and EVERY control becomes a silent
|
|
12963
|
+
* no-op. Framework-free: operates on the SDK proxy shape only. */
|
|
12964
|
+
function isNode(value) {
|
|
12965
|
+
return value !== null && (typeof value === "object" || typeof value === "function");
|
|
12966
|
+
}
|
|
12967
|
+
/** Resolve `router.<method>.mutate` to a callable, or `null`. Walks the tRPC
|
|
12968
|
+
* client proxy defensively (each hop guarded by `isNode`). */
|
|
12969
|
+
function resolveMutate(router, method) {
|
|
12970
|
+
if (!isNode(router)) return null;
|
|
12971
|
+
const proc = router[method];
|
|
12972
|
+
if (!isNode(proc)) return null;
|
|
12973
|
+
const mutate = proc.mutate;
|
|
12974
|
+
return typeof mutate === "function" ? mutate : null;
|
|
12975
|
+
}
|
|
12976
|
+
//#endregion
|
|
12790
12977
|
//#region src/utils/zone-rule-eval.ts
|
|
12791
12978
|
/**
|
|
12792
12979
|
* Evaluate `rules` against `items`. Returns the items partitioned
|
|
@@ -12904,7 +13091,6 @@ function createSystemProxy(api) {
|
|
|
12904
13091
|
listFrameworkPackages: (input) => dispatch("addons", "listFrameworkPackages", "query", input),
|
|
12905
13092
|
listCapabilityProviders: (input) => dispatch("addons", "listCapabilityProviders", "query", input),
|
|
12906
13093
|
setCapabilityProviderEnabled: (input) => dispatch("addons", "setCapabilityProviderEnabled", "mutation", input),
|
|
12907
|
-
updateFrameworkPackage: (input) => dispatch("addons", "updateFrameworkPackage", "mutation", input),
|
|
12908
13094
|
getVersions: (input) => dispatch("addons", "getVersions", "query", input),
|
|
12909
13095
|
restartAddon: (input) => dispatch("addons", "restartAddon", "mutation", input),
|
|
12910
13096
|
retryLoad: (input) => dispatch("addons", "retryLoad", "mutation", input),
|
|
@@ -21582,22 +21768,6 @@ var AddonAutoUpdateSchema = ChannelWithInheritSchema;
|
|
|
21582
21768
|
var RestartAddonResultSchema = z.unknown();
|
|
21583
21769
|
var InstallPackageResultSchema = z.unknown();
|
|
21584
21770
|
var ReloadPackagesResultSchema = z.unknown();
|
|
21585
|
-
/**
|
|
21586
|
-
* Result of `updateFrameworkPackage`. The cap method returns BEFORE the
|
|
21587
|
-
* server restarts so the admin UI can react to the `restartingAt`
|
|
21588
|
-
* timestamp (shows reconnect overlay). The transition from
|
|
21589
|
-
* `fromVersion` to `toVersion` will be confirmed by a subsequent
|
|
21590
|
-
* `system.restart-completed` event after the new process boots.
|
|
21591
|
-
*
|
|
21592
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
21593
|
-
*/
|
|
21594
|
-
var UpdateFrameworkPackageResultSchema = z.object({
|
|
21595
|
-
packageName: z.string(),
|
|
21596
|
-
fromVersion: z.string(),
|
|
21597
|
-
toVersion: z.string(),
|
|
21598
|
-
/** Ms-epoch the server scheduled its self-restart. */
|
|
21599
|
-
restartingAt: z.number()
|
|
21600
|
-
});
|
|
21601
21771
|
var BulkUpdateItemStatusSchema = z.enum([
|
|
21602
21772
|
"queued",
|
|
21603
21773
|
"updating",
|
|
@@ -21843,28 +22013,6 @@ var addonsCapability = {
|
|
|
21843
22013
|
kind: "mutation",
|
|
21844
22014
|
auth: "admin"
|
|
21845
22015
|
}),
|
|
21846
|
-
/**
|
|
21847
|
-
* Live-update one of the framework packages marked
|
|
21848
|
-
* `camstack.system: true` (`@camstack/types|kernel|core|sdk|ui-library`).
|
|
21849
|
-
* Runs `npm install --prefix <appRoot> <name>@<version> --no-save`,
|
|
21850
|
-
* writes a `.restart-pending` marker, emits `system.restarting`
|
|
21851
|
-
* and schedules a graceful process exit. The supervisor (Docker /
|
|
21852
|
-
* Electron / systemd) brings the hub back up; on first boot after
|
|
21853
|
-
* the restart the marker fires `system.restart-completed`.
|
|
21854
|
-
*
|
|
21855
|
-
* `version` defaults to `'latest'`. The allow-list of valid
|
|
21856
|
-
* `packageName` values is enforced server-side.
|
|
21857
|
-
*
|
|
21858
|
-
* Spec: docs/superpowers/specs/2026-05-14-framework-live-update-design.md
|
|
21859
|
-
*/
|
|
21860
|
-
updateFrameworkPackage: method(z.object({
|
|
21861
|
-
packageName: z.string().min(1),
|
|
21862
|
-
version: z.string().optional(),
|
|
21863
|
-
deferRestart: z.boolean().optional()
|
|
21864
|
-
}), UpdateFrameworkPackageResultSchema, {
|
|
21865
|
-
kind: "mutation",
|
|
21866
|
-
auth: "admin"
|
|
21867
|
-
}),
|
|
21868
22016
|
getVersions: method(z.object({ name: z.string() }), z.array(PackageVersionInfoSchema).readonly()),
|
|
21869
22017
|
restartAddon: method(z.object({ addonId: z.string() }), RestartAddonResultSchema, {
|
|
21870
22018
|
kind: "mutation",
|
|
@@ -25948,12 +26096,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25948
26096
|
addonId: null,
|
|
25949
26097
|
access: "delete"
|
|
25950
26098
|
},
|
|
25951
|
-
"addons.updateFrameworkPackage": {
|
|
25952
|
-
capName: "addons",
|
|
25953
|
-
capScope: "system",
|
|
25954
|
-
addonId: null,
|
|
25955
|
-
access: "create"
|
|
25956
|
-
},
|
|
25957
26099
|
"addons.updatePackage": {
|
|
25958
26100
|
capName: "addons",
|
|
25959
26101
|
capScope: "system",
|
|
@@ -30861,34 +31003,6 @@ function getCapsByProviderKind(kind) {
|
|
|
30861
31003
|
return out;
|
|
30862
31004
|
}
|
|
30863
31005
|
//#endregion
|
|
30864
|
-
//#region src/lifecycle/framework-swap.ts
|
|
30865
|
-
var frameworkSwapPackageSchema = z.object({
|
|
30866
|
-
name: z.string(),
|
|
30867
|
-
stagedPath: z.string(),
|
|
30868
|
-
backupPath: z.string(),
|
|
30869
|
-
toVersion: z.string(),
|
|
30870
|
-
fromVersion: z.string().nullable()
|
|
30871
|
-
});
|
|
30872
|
-
var pendingFrameworkSwapSchema = z.object({
|
|
30873
|
-
jobId: z.string(),
|
|
30874
|
-
taskId: z.string(),
|
|
30875
|
-
packages: z.array(frameworkSwapPackageSchema),
|
|
30876
|
-
requestedAtMs: z.number(),
|
|
30877
|
-
schemaVersion: z.literal(1)
|
|
30878
|
-
});
|
|
30879
|
-
var frameworkSwapConfirmSchema = z.object({
|
|
30880
|
-
jobId: z.string(),
|
|
30881
|
-
taskId: z.string(),
|
|
30882
|
-
backups: z.array(z.object({
|
|
30883
|
-
name: z.string(),
|
|
30884
|
-
backupPath: z.string(),
|
|
30885
|
-
livePath: z.string()
|
|
30886
|
-
})),
|
|
30887
|
-
appliedAtMs: z.number(),
|
|
30888
|
-
bootAttempts: z.number(),
|
|
30889
|
-
schemaVersion: z.literal(1)
|
|
30890
|
-
});
|
|
30891
|
-
//#endregion
|
|
30892
31006
|
//#region src/util/location-match.ts
|
|
30893
31007
|
/**
|
|
30894
31008
|
* Pure fuzzy matcher for adoption location import. Normalized
|
|
@@ -31342,4 +31456,4 @@ function scoreRuntimes(hw) {
|
|
|
31342
31456
|
};
|
|
31343
31457
|
}
|
|
31344
31458
|
//#endregion
|
|
31345
|
-
export { ACCESSORY_LABEL, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationControlStatusSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BATTERY_DEVICE_PROFILE, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, COCO_80_LABELS, COCO_TO_MACRO, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CameraStreamSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_RETENTION, DEFAULT_SCRUB_THUMBNAIL_PRESET, DEVICE_CAP_NAMES, DEVICE_PROFILES, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATUS_METHOD, DEVICE_TYPE_INFO, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceLinkModeSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceStatusSchema, DeviceType, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventSourceType, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionEvalError, ExpressionParseError, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, GasStatusSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LabelDefinitionSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmUsageRollupSchema, LlmUsageSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, METHOD_ACCESS_MAP, MODEL_FORMATS, ManagedModelCatalogEntrySchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, NativeDetectionSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionSchema, NotificationFormatSchema, NotificationHistoryEntrySchema, NotificationRuleSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RESERVED_BINDING_NAMES, RUNTIME_DEFAULTS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadSegmentBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingModeSchema, RecordingRangeSchema, RecordingRetentionSchema, RecordingRuleSchema, RecordingScheduleSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RenderedAsSchema, ReportMotionInputSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCOPE_PRESETS, SCRUB_THUMBNAIL_PRESETS, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SceneCheckSchema, SceneConditionSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, ScrubThumbnailPresetSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMEZONES, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestResultSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackProjectionSchema, TrackSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TurnServerSchema, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VibrationStatusSchema, VideoEncodeSchema, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, advancedNotifierCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, applyTransform, asBoolean, asJsonArray, asJsonObject, asNumber, asString, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioMetricsCapability, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildEventKindDescriptor, buildModelVariantGroups, buildStreamParamsConfigSchema, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, carbonMonoxideCapability, cellsToRects, classifyStream, classifyStreams, climateControlCapability, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, compileExpression, compileExpressionSafe, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, cosineSimilarity, coverCapability, createDeviceProxy, createDurableState, createEvent, createExpressionScope, createLazyTrpcSource, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dayNightCapability, decoderCapability, defaultDeviceFor, defineCustomActions, describeModelVariant, detectionPipelineCapability, deviceAdoptionCapability, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceStateCapability, deviceStatusCapability, doorbellCapability, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, enumSensorCapability, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateLinkExpression, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, formatForBackend, formatForRuntime, frameworkSwapConfirmSchema, frameworkSwapPackageSchema, gasCapability, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getTaxonomyEntry, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, integrationsCapability, intercomCapability, isAgentOnlyPlacement, isArrayOutputSchema, isCollectionArrayMethod, isDeployableToAgent, isDeviceConfigCap, isEvent, isObjectInput, isVoidInput, jobKindSchema, kebabToCamel, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logDestinationCapability, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, metricsProviderCapability, migrateConfigToBands, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeUnit, notificationOutputCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProfileBrokerId, parseStreamParamsFormPatch, pendingFrameworkSwapSchema, petFeederCapability, pickPreferredRtspEntry, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readNodePin, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, requiresPython, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveCapMount, resolveDetectionRuntime, resolveDeviceProfile, resolveFormat, resolveHydratedFieldValue, resolveModelFormat, resolveRunnerId, resolveScrubThumbnailGeometry, resolveVariantModelId, runInferenceStep, runtimeDevices, sceneMonitorCapability, scopeKey, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, storageCapability, storageEvictableCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, supportedRuntimes, switchCapability, synthesizeSourceInfo, systemCapability, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, textToHtml, toDeviceSummary, toExpressionValue, toStreamSourceEntry, toastCapability, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, valveCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
|
|
31459
|
+
export { ACCESSORY_LABEL, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationControlStatusSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BATTERY_DEVICE_PROFILE, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, COCO_80_LABELS, COCO_TO_MACRO, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CameraStreamSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_RETENTION, DEFAULT_SCRUB_THUMBNAIL_PRESET, DEVICE_CAP_NAMES, DEVICE_PROFILES, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATUS_METHOD, DEVICE_TYPE_CONTROL_KIND, DEVICE_TYPE_INFO, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceLinkModeSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceStatusSchema, DeviceType, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventSourceType, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionEvalError, ExpressionParseError, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, GasStatusSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LabelDefinitionSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmUsageRollupSchema, LlmUsageSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, METHOD_ACCESS_MAP, MODEL_FORMATS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, NativeDetectionSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionSchema, NotificationFormatSchema, NotificationHistoryEntrySchema, NotificationRuleSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RESERVED_BINDING_NAMES, RUNTIME_DEFAULTS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadSegmentBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingModeSchema, RecordingRangeSchema, RecordingRetentionSchema, RecordingRuleSchema, RecordingScheduleSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RenderedAsSchema, ReportMotionInputSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCOPE_PRESETS, SCRUB_THUMBNAIL_PRESETS, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, SENSOR_FEATURES, SENSOR_MAP, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SceneCheckSchema, SceneConditionSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, ScrubThumbnailPresetSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMEZONES, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestResultSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackProjectionSchema, TrackSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TurnServerSchema, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VibrationStatusSchema, VideoEncodeSchema, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, advancedNotifierCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, applyTransform, asBoolean, asJsonArray, asJsonObject, asNumber, asString, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioMetricsCapability, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildEventKindDescriptor, buildModelVariantGroups, buildStreamParamsConfigSchema, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, carbonMonoxideCapability, cellsToRects, classifyStream, classifyStreams, climateControlCapability, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, compileExpression, compileExpressionSafe, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, cosineSimilarity, coverCapability, createDeviceProxy, createDurableState, createEvent, createExpressionScope, createLazyTrpcSource, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dayNightCapability, decoderCapability, defaultDeviceFor, defineCustomActions, describeModelVariant, detectionPipelineCapability, deviceAdoptionCapability, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceStateCapability, deviceStatusCapability, doorbellCapability, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, enumSensorCapability, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateLinkExpression, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, formatForBackend, formatForRuntime, gasCapability, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, integrationsCapability, intercomCapability, isAgentOnlyPlacement, isArrayOutputSchema, isCollectionArrayMethod, isDeployableToAgent, isDeviceConfigCap, isEvent, isNode, isObjectInput, isVoidInput, jobKindSchema, kebabToCamel, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logDestinationCapability, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, metricsProviderCapability, migrateConfigToBands, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeUnit, notificationOutputCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProfileBrokerId, parseStreamParamsFormPatch, petFeederCapability, pickAccessoryControl, pickPreferredRtspEntry, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readNodePin, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, requiresPython, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveCapMount, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveFormat, resolveHydratedFieldValue, resolveModelFormat, resolveMutate, resolveRunnerId, resolveScrubThumbnailGeometry, resolveVariantModelId, runInferenceStep, runtimeDevices, sceneMonitorCapability, scopeKey, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, storageCapability, storageEvictableCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, supportedRuntimes, switchCapability, synthesizeSourceInfo, systemCapability, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, textToHtml, toDeviceSummary, toExpressionValue, toStreamSourceEntry, toastCapability, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, valveCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
|
|
@@ -1015,8 +1015,8 @@ export interface AddonPackageManifest {
|
|
|
1015
1015
|
* (types, kernel, core, sdk, ui-library) rather than an installable
|
|
1016
1016
|
* addon. The admin UI shows these in a separate "System packages"
|
|
1017
1017
|
* section, disables uninstall, and warns the operator that updating
|
|
1018
|
-
* them requires a server restart.
|
|
1019
|
-
*
|
|
1018
|
+
* them requires a server restart. Framework packages are updated via
|
|
1019
|
+
* the node-root server-update flow (`applyServerUpdate`), not the
|
|
1020
1020
|
* regular addon installer.
|
|
1021
1021
|
*
|
|
1022
1022
|
* Mutually-exclusive with `addons[]` in concept but not in code:
|
|
@@ -432,7 +432,7 @@ export interface SystemReadyStatePayload {
|
|
|
432
432
|
* with just `kind: 'manual'` and `requestedAt`.
|
|
433
433
|
*
|
|
434
434
|
* kind values:
|
|
435
|
-
* `framework-update` —
|
|
435
|
+
* `framework-update` — framework/system-package update (via applyServerUpdate)
|
|
436
436
|
* `manual` — operator-triggered restart (restartServer)
|
|
437
437
|
* `system` — internal / supervisor-initiated restart
|
|
438
438
|
* `framework-bulk-update` — multi-package bulk update run as one lifecycle engine job
|
package/dist/types/models.d.ts
CHANGED
|
@@ -214,6 +214,7 @@ export declare const ModelCatalogEntrySchema: z.ZodObject<{
|
|
|
214
214
|
imagenet: "imagenet";
|
|
215
215
|
none: "none";
|
|
216
216
|
}>>;
|
|
217
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
217
218
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
218
219
|
letterbox: "letterbox";
|
|
219
220
|
resize: "resize";
|
|
@@ -434,6 +435,7 @@ export declare const ConvertResultSchema: z.ZodObject<{
|
|
|
434
435
|
imagenet: "imagenet";
|
|
435
436
|
none: "none";
|
|
436
437
|
}>>;
|
|
438
|
+
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
437
439
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
438
440
|
letterbox: "letterbox";
|
|
439
441
|
resize: "resize";
|
|
@@ -82,6 +82,16 @@ export interface StepDefinition {
|
|
|
82
82
|
readonly defaultConfidence: number;
|
|
83
83
|
/** Runtime label lookup (e.g., class name arrays for softmax, charset for CTC) */
|
|
84
84
|
readonly labels?: readonly string[];
|
|
85
|
+
/**
|
|
86
|
+
* Classifier output classes that must NEVER be emitted — a hard reject list
|
|
87
|
+
* applied to the top-1 winner AND the alternates after classification.
|
|
88
|
+
* Used for a "background"/"none" catch-all class a classifier emits when the
|
|
89
|
+
* crop is not a member of any real class (e.g. the Google AIY bird model's
|
|
90
|
+
* index-964 `background`): without this the classifier would surface
|
|
91
|
+
* `background` as a species label on cats/people/foliage. Compared
|
|
92
|
+
* case-insensitively against the predicted class name. Absent ⇒ no rejection.
|
|
93
|
+
*/
|
|
94
|
+
readonly rejectClasses?: readonly string[];
|
|
85
95
|
/** Character set for CTC decode (index 0 = blank token) */
|
|
86
96
|
readonly charset?: readonly string[];
|
|
87
97
|
/** COCO-to-macro class mapping (e.g., 'car' → 'vehicle') */
|
|
@@ -144,10 +154,31 @@ export interface PoolModelConfig {
|
|
|
144
154
|
readonly inputChannels?: number;
|
|
145
155
|
/** How to preprocess the image before inference */
|
|
146
156
|
readonly preprocessMode: 'letterbox' | 'resize';
|
|
157
|
+
/**
|
|
158
|
+
* Input pixel normalization. Absent / `'zero-one'` / `'none'` ⇒ the default
|
|
159
|
+
* `/255` rescale only (byte-identical to the historical unconditional path,
|
|
160
|
+
* used by every detector + CLIP/ArcFace + the AIY bird classifier which bakes
|
|
161
|
+
* its own scale). `'imagenet'` ⇒ additionally subtract the ImageNet
|
|
162
|
+
* mean/std per channel — required by the EfficientNet/MobileNetV3 animal +
|
|
163
|
+
* vehicle classifiers (their `labels.json` declares `normalize: imagenet`).
|
|
164
|
+
* Threaded from `ModelCatalogEntry.inputNormalization`.
|
|
165
|
+
*/
|
|
166
|
+
readonly inputNormalization?: 'zero-one' | 'imagenet' | 'none';
|
|
167
|
+
/**
|
|
168
|
+
* The model's output is ALREADY a softmax probability distribution (softmax
|
|
169
|
+
* baked into the graph). When true the `softmax` postprocessor skips its own
|
|
170
|
+
* softmax pass and consumes the raw output as probabilities. See
|
|
171
|
+
* `ModelCatalogEntry.outputProbabilities`.
|
|
172
|
+
*/
|
|
173
|
+
readonly outputProbabilities?: boolean;
|
|
147
174
|
/** Postprocessor to apply to raw output in Python */
|
|
148
175
|
readonly postprocessor: PostprocessorType;
|
|
149
176
|
/** Confidence threshold for NMS / filtering */
|
|
150
177
|
readonly confidence: number;
|
|
178
|
+
/** IoU threshold for the detector's non-max suppression (dedup). Read by the
|
|
179
|
+
* Python postprocessors (yolo / yolo-seg / scrfd); when absent they fall back
|
|
180
|
+
* to their 0.45 literal, so an unset value is byte-identical to today. */
|
|
181
|
+
readonly nmsIouThreshold?: number;
|
|
151
182
|
/** Label names for softmax-based classifiers */
|
|
152
183
|
readonly labels?: readonly string[];
|
|
153
184
|
/** Character set for CTC-based recognizers */
|
package/package.json
CHANGED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const frameworkSwapPackageSchema: z.ZodObject<{
|
|
3
|
-
name: z.ZodString;
|
|
4
|
-
stagedPath: z.ZodString;
|
|
5
|
-
backupPath: z.ZodString;
|
|
6
|
-
toVersion: z.ZodString;
|
|
7
|
-
fromVersion: z.ZodNullable<z.ZodString>;
|
|
8
|
-
}, z.core.$strip>;
|
|
9
|
-
export type FrameworkSwapPackage = z.infer<typeof frameworkSwapPackageSchema>;
|
|
10
|
-
export declare const pendingFrameworkSwapSchema: z.ZodObject<{
|
|
11
|
-
jobId: z.ZodString;
|
|
12
|
-
taskId: z.ZodString;
|
|
13
|
-
packages: z.ZodArray<z.ZodObject<{
|
|
14
|
-
name: z.ZodString;
|
|
15
|
-
stagedPath: z.ZodString;
|
|
16
|
-
backupPath: z.ZodString;
|
|
17
|
-
toVersion: z.ZodString;
|
|
18
|
-
fromVersion: z.ZodNullable<z.ZodString>;
|
|
19
|
-
}, z.core.$strip>>;
|
|
20
|
-
requestedAtMs: z.ZodNumber;
|
|
21
|
-
schemaVersion: z.ZodLiteral<1>;
|
|
22
|
-
}, z.core.$strip>;
|
|
23
|
-
export type PendingFrameworkSwap = z.infer<typeof pendingFrameworkSwapSchema>;
|
|
24
|
-
export declare const frameworkSwapConfirmSchema: z.ZodObject<{
|
|
25
|
-
jobId: z.ZodString;
|
|
26
|
-
taskId: z.ZodString;
|
|
27
|
-
backups: z.ZodArray<z.ZodObject<{
|
|
28
|
-
name: z.ZodString;
|
|
29
|
-
backupPath: z.ZodString;
|
|
30
|
-
livePath: z.ZodString;
|
|
31
|
-
}, z.core.$strip>>;
|
|
32
|
-
appliedAtMs: z.ZodNumber;
|
|
33
|
-
bootAttempts: z.ZodNumber;
|
|
34
|
-
schemaVersion: z.ZodLiteral<1>;
|
|
35
|
-
}, z.core.$strip>;
|
|
36
|
-
export type FrameworkSwapConfirm = z.infer<typeof frameworkSwapConfirmSchema>;
|