@camstack/ui-library 1.2.316 → 1.2.317
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/{PrivacyMaskSettings-CtetT6Jl.js → PrivacyMaskSettings-C9wfHkiB.js} +1 -1
- package/dist/{SceneMonitorEditor-BQhVO2F2.js → SceneMonitorEditor-CrxB3ZPL.js} +1 -1
- package/dist/composites/cap-settings/ConsumablesPanel.d.ts +2 -0
- package/dist/composites/cap-settings/consumable-rows.d.ts +21 -0
- package/dist/composites/cap-settings/consumables-summary.d.ts +41 -0
- package/dist/composites/consumable-level-badge.d.ts +25 -18
- package/dist/composites/device-controls/dishwasher-control.d.ts +3 -0
- package/dist/composites/device-controls/index.d.ts +1 -1
- package/dist/composites/device-controls/vacuum-control.d.ts +1 -13
- package/dist/composites/widget-panel.d.ts +9 -4
- package/dist/generated/system-hooks.d.ts +4 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/use-persisted-disclosure.d.ts +3 -0
- package/dist/{icons-D178phML.js → icons-aFMzvquu.js} +21 -1
- package/dist/{icons-BTux33dH.cjs → icons-pqV1UOV_.cjs} +21 -1
- package/dist/index.cjs +587 -470
- package/dist/index.js +589 -473
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import * as __mfHostReact from "react";
|
|
|
5
5
|
import React, { Fragment, Suspense, cloneElement, createContext, createElement, forwardRef, lazy, useCallback, useContext, useEffect, useId, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, useSyncExternalStore } from "react";
|
|
6
6
|
import * as __mfHostReactJsxRuntime from "react/jsx-runtime";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
-
import { ALL_CAPABILITY_DEFINITIONS, CAM_PROFILE_ORDER, CLIP_STILL_DISPOSITION_HEADER, CLIP_STILL_REASON_CODE_HEADER, CLIP_STILL_REASON_HEADER, CONTAINER_CHILD_PRIORITY, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEVICE_HISTORY_ENERGY_KEY, DEVICE_HISTORY_QUERY_MANY_MAX_ITEMS, DEVICE_TYPE_CONTROL_KIND, DeviceExportStatusSchema, DeviceFeature, DeviceRole, DeviceType,
|
|
8
|
+
import { ALL_CAPABILITY_DEFINITIONS, CAM_PROFILE_ORDER, CLIP_STILL_DISPOSITION_HEADER, CLIP_STILL_REASON_CODE_HEADER, CLIP_STILL_REASON_HEADER, CONTAINER_CHILD_PRIORITY, ConsumableLevelSchema, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEVICE_HISTORY_ENERGY_KEY, DEVICE_HISTORY_QUERY_MANY_MAX_ITEMS, DEVICE_TYPE_CONTROL_KIND, DeviceExportStatusSchema, DeviceFeature, DeviceRole, DeviceType, EVENT_TAXONOMY, EXTENSION_SLOTS, EXTENSION_SLOT_IDS, EventCategory, ExposedDeviceSchema, FIRST_LEVEL_MACRO_CLASSES, HISTORY_CATALOG, ICON_CATEGORIES, KNOWN_CAP_NAMES, MAX_SENSOR_TRIGGER_DEVICES, MODEL_PROVIDER_IDS, NAVIGATION_LIGHT_LEVEL_MAX, NAVIGATION_LIGHT_LEVEL_MIN, NODE_COLOR_IDS, NodeColorIdSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, RECORDING_AUDIO_TRIGGER_OFFERED_DBFS, RECORDING_SOURCE_CAMSTACK_ADDON, REDACTED_SECRET, RecordingConfigSchema, RecordingStatusSchema, SECRET_CLEAR, SOURCE_CAP_ACTIVE_FIELD, STATIONARY_OVERLAY_STYLE, SUBJECT_PATH_DWELL_EPS, SUBJECT_PATH_FULL_FRAME_COVERAGE, SUBJECT_PATH_MAX_POINTS, TIMEZONES, USE_ROOT_MODEL_SETTING_KEY, assignNodeColorId, assignNodeColorId as assignNodeColorId$1, buildModelVariantGroups, buildSubjectPath, canConvertUnit, canonicalIconKey, clearModelBoundOverrides, clearModelBoundSetting, clusterStepSettingFieldsFor, collectModelBoundKeys, consumableFormOf, consumableKindOf, createDeviceProxy, createLazyTrpcSource, createSliceHandle, dehydrateSchema, deriveRecordingMode, describeModelVariant, effectiveStepSettings, findTimezone, formatParkedFor, hasModelBoundOverrides, iconCategoryLabel, iconsInCategory, isDrawableSubjectPath, isKeychainStoredField, isRootSuppliableStepId, isSecretClear, isSecretFieldView, modelBindingKey, normalizeUnit, parseOccupancyScope, projectSubjectPath, publicEventCategories, resolveContainerPrimaryChild, resolveDeviceControlKind, resolveIconKey, resolveModelBoundSetting, resolveRecordingProfiles, resolveRootSupply, resolveVariantModelId, resolveViewableDeviceIds, searchIcons, selectAssignedProfileSlots, stepSettingSource, subjectPathSampleFromBox, subjectPathSvgPoints, tryConvertUnit, unitsForDimension, withFieldFrom, withoutField, writeModelBoundSetting } from "@camstack/types";
|
|
9
9
|
import * as __mfHostTrpcReactQuery from "@trpc/react-query";
|
|
10
10
|
import { createTRPCReact } from "@trpc/react-query";
|
|
11
11
|
import * as __mfHostReactDOM from "react-dom";
|
|
@@ -1875,26 +1875,6 @@ var Flashlight = createLucideIcon("flashlight", [
|
|
|
1875
1875
|
* This source code is licensed under the ISC license.
|
|
1876
1876
|
* See the LICENSE file in the root directory of this source tree.
|
|
1877
1877
|
*/
|
|
1878
|
-
var FlaskConical = createLucideIcon("flask-conical", [
|
|
1879
|
-
["path", {
|
|
1880
|
-
d: "M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",
|
|
1881
|
-
key: "18mbvz"
|
|
1882
|
-
}],
|
|
1883
|
-
["path", {
|
|
1884
|
-
d: "M6.453 15h11.094",
|
|
1885
|
-
key: "3shlmq"
|
|
1886
|
-
}],
|
|
1887
|
-
["path", {
|
|
1888
|
-
d: "M8.5 2h7",
|
|
1889
|
-
key: "csnxdl"
|
|
1890
|
-
}]
|
|
1891
|
-
]);
|
|
1892
|
-
/**
|
|
1893
|
-
* @license lucide-react v0.576.0 - ISC
|
|
1894
|
-
*
|
|
1895
|
-
* This source code is licensed under the ISC license.
|
|
1896
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
1897
|
-
*/
|
|
1898
1878
|
var Footprints = createLucideIcon("footprints", [
|
|
1899
1879
|
["path", {
|
|
1900
1880
|
d: "M4 16v-2.38C4 11.5 2.97 10.5 3 8c.03-2.72 1.49-6 4.5-6C9.37 2 10 3.8 10 5.5c0 3.11-2 5.66-2 8.68V16a2 2 0 1 1-4 0Z",
|
|
@@ -5846,7 +5826,7 @@ function lucideExportName(key) {
|
|
|
5846
5826
|
function loadIconGlyphs() {
|
|
5847
5827
|
if (fullTable !== void 0) return Promise.resolve();
|
|
5848
5828
|
if (failure$1 !== void 0) return Promise.reject(failure$1);
|
|
5849
|
-
pending ??= import("./icons-
|
|
5829
|
+
pending ??= import("./icons-aFMzvquu.js").then((module) => {
|
|
5850
5830
|
fullTable = module;
|
|
5851
5831
|
publish();
|
|
5852
5832
|
}, (error) => {
|
|
@@ -10777,6 +10757,10 @@ var useDeviceHistoryGetDeviceEnabled = trpc.deviceHistory.getDeviceEnabled.useQu
|
|
|
10777
10757
|
var useDeviceHistorySetDeviceEnabled = trpc.deviceHistory.setDeviceEnabled.useMutation;
|
|
10778
10758
|
/** Generated alias around `trpc.deviceHistory.getStatus.useQuery`. */
|
|
10779
10759
|
var useDeviceHistoryGetStatus = trpc.deviceHistory.getStatus.useQuery;
|
|
10760
|
+
/** Generated alias around `trpc.deviceHistory.listOrphanSeries.useQuery`. */
|
|
10761
|
+
var useDeviceHistoryListOrphanSeries = trpc.deviceHistory.listOrphanSeries.useQuery;
|
|
10762
|
+
/** Generated alias around `trpc.deviceHistory.deleteOrphanSeries.useMutation`. */
|
|
10763
|
+
var useDeviceHistoryDeleteOrphanSeries = trpc.deviceHistory.deleteOrphanSeries.useMutation;
|
|
10780
10764
|
/** Generated alias around `trpc.deviceManager.allocateDeviceId.useMutation`. */
|
|
10781
10765
|
var useDeviceManagerAllocateDeviceId = trpc.deviceManager.allocateDeviceId.useMutation;
|
|
10782
10766
|
/** Generated alias around `trpc.deviceManager.migrateDevice.useMutation`. */
|
|
@@ -19125,20 +19109,30 @@ function useDeviceAutotrack(deviceId) {
|
|
|
19125
19109
|
}
|
|
19126
19110
|
//#endregion
|
|
19127
19111
|
//#region src/composites/widget-panel.tsx
|
|
19128
|
-
function WidgetPanel({ title, icon, headerRight, collapsible = false, defaultOpen = true, bodyClassName = "p-3", children }) {
|
|
19129
|
-
const [
|
|
19112
|
+
function WidgetPanel({ title, icon, headerRight, collapsible = false, defaultOpen = true, open: openProp, onOpenChange, bodyClassName = "p-3", children }) {
|
|
19113
|
+
const [openState, setOpenState] = useState(defaultOpen);
|
|
19114
|
+
const open = openProp ?? openState;
|
|
19115
|
+
const toggle = () => {
|
|
19116
|
+
const next = !open;
|
|
19117
|
+
if (openProp === void 0) setOpenState(next);
|
|
19118
|
+
onOpenChange?.(next);
|
|
19119
|
+
};
|
|
19130
19120
|
const showBody = !collapsible || open;
|
|
19131
19121
|
const headerInner = /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("span", {
|
|
19132
19122
|
className: "flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-foreground",
|
|
19133
19123
|
children: [icon, title]
|
|
19134
|
-
}), collapsible ?
|
|
19124
|
+
}), collapsible ? /* @__PURE__ */ jsxs("span", {
|
|
19125
|
+
className: "flex min-w-0 items-center gap-2",
|
|
19126
|
+
children: [headerRight, open ? /* @__PURE__ */ jsx(ChevronDown, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" }) : /* @__PURE__ */ jsx(ChevronRight, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" })]
|
|
19127
|
+
}) : headerRight] });
|
|
19135
19128
|
const headerClass = `px-4 py-2 flex items-center justify-between ${showBody ? "border-b border-border" : ""}`;
|
|
19136
19129
|
return /* @__PURE__ */ jsxs("div", {
|
|
19137
19130
|
className: "rounded-lg border border-border bg-surface overflow-hidden",
|
|
19138
19131
|
children: [collapsible ? /* @__PURE__ */ jsx("button", {
|
|
19139
19132
|
type: "button",
|
|
19140
|
-
|
|
19141
|
-
|
|
19133
|
+
"aria-expanded": open,
|
|
19134
|
+
onClick: toggle,
|
|
19135
|
+
className: `w-full gap-2 text-left ${headerClass}`,
|
|
19142
19136
|
children: headerInner
|
|
19143
19137
|
}) : /* @__PURE__ */ jsx("div", {
|
|
19144
19138
|
className: headerClass,
|
|
@@ -20499,6 +20493,60 @@ function useDeviceCapability(options) {
|
|
|
20499
20493
|
};
|
|
20500
20494
|
}
|
|
20501
20495
|
//#endregion
|
|
20496
|
+
//#region src/hooks/use-persisted-disclosure.ts
|
|
20497
|
+
/**
|
|
20498
|
+
* usePersistedDisclosure — an open / closed choice the viewer made, remembered
|
|
20499
|
+
* per viewer under the caller's key (one key per section and device).
|
|
20500
|
+
*
|
|
20501
|
+
* `null` means the viewer never chose. The caller then shows its own default,
|
|
20502
|
+
* which may follow the data (the Consumables section opens itself while an
|
|
20503
|
+
* item needs attention) — the default is never written, so it can change with
|
|
20504
|
+
* the data until the viewer picks.
|
|
20505
|
+
*
|
|
20506
|
+
* Storage is a convenience, never a requirement: every read and write is
|
|
20507
|
+
* guarded, and a blocked / private-mode storage means the choice lasts until
|
|
20508
|
+
* the page is left. A stored value this hook did not write is ignored.
|
|
20509
|
+
*/
|
|
20510
|
+
var OPEN = "open";
|
|
20511
|
+
var CLOSED = "closed";
|
|
20512
|
+
function readStored$1(key) {
|
|
20513
|
+
if (key === null || typeof window === "undefined") return null;
|
|
20514
|
+
try {
|
|
20515
|
+
const raw = window.localStorage.getItem(key);
|
|
20516
|
+
if (raw === OPEN) return true;
|
|
20517
|
+
if (raw === CLOSED) return false;
|
|
20518
|
+
return null;
|
|
20519
|
+
} catch {
|
|
20520
|
+
return null;
|
|
20521
|
+
}
|
|
20522
|
+
}
|
|
20523
|
+
function writeStored$1(key, open) {
|
|
20524
|
+
if (key === null || typeof window === "undefined") return;
|
|
20525
|
+
try {
|
|
20526
|
+
window.localStorage.setItem(key, open ? OPEN : CLOSED);
|
|
20527
|
+
} catch {}
|
|
20528
|
+
}
|
|
20529
|
+
/** @returns `[choice, setChoice]` — `choice` is `null` until the viewer picks. */
|
|
20530
|
+
function usePersistedDisclosure(storageKey) {
|
|
20531
|
+
const [choice, setChoice] = useState(() => ({
|
|
20532
|
+
key: storageKey,
|
|
20533
|
+
open: readStored$1(storageKey)
|
|
20534
|
+
}));
|
|
20535
|
+
const current = choice.key === storageKey ? choice : {
|
|
20536
|
+
key: storageKey,
|
|
20537
|
+
open: readStored$1(storageKey)
|
|
20538
|
+
};
|
|
20539
|
+
if (current !== choice) setChoice(current);
|
|
20540
|
+
const update = useCallback((open) => {
|
|
20541
|
+
setChoice({
|
|
20542
|
+
key: storageKey,
|
|
20543
|
+
open
|
|
20544
|
+
});
|
|
20545
|
+
writeStored$1(storageKey, open);
|
|
20546
|
+
}, [storageKey]);
|
|
20547
|
+
return [current.open, update];
|
|
20548
|
+
}
|
|
20549
|
+
//#endregion
|
|
20502
20550
|
//#region src/composites/consumable-level-badge.tsx
|
|
20503
20551
|
var LOOKS$1 = {
|
|
20504
20552
|
ok: {
|
|
@@ -20519,6 +20567,12 @@ var LOOKS$1 = {
|
|
|
20519
20567
|
labelKey: "uiLibrary.consumableLevel.empty",
|
|
20520
20568
|
labelFallback: "Empty"
|
|
20521
20569
|
},
|
|
20570
|
+
full: {
|
|
20571
|
+
variant: "warning",
|
|
20572
|
+
barClass: "bg-warning",
|
|
20573
|
+
labelKey: "uiLibrary.consumableLevel.full",
|
|
20574
|
+
labelFallback: "Full"
|
|
20575
|
+
},
|
|
20522
20576
|
unknown: {
|
|
20523
20577
|
variant: "neutral",
|
|
20524
20578
|
barClass: "bg-foreground-subtle",
|
|
@@ -20542,39 +20596,57 @@ function consumableLevelLabel(level, t) {
|
|
|
20542
20596
|
const look = lookOf(level);
|
|
20543
20597
|
return t(look.labelKey, look.labelFallback);
|
|
20544
20598
|
}
|
|
20545
|
-
/** A remaining-life % at or below this is `low`. */
|
|
20599
|
+
/** A remaining-life (or supply fill) % at or below this is `low`. */
|
|
20546
20600
|
var CONSUMABLE_LOW_PERCENT = 15;
|
|
20547
|
-
/**
|
|
20548
|
-
|
|
20549
|
-
|
|
20550
|
-
|
|
20551
|
-
|
|
20552
|
-
|
|
20553
|
-
|
|
20601
|
+
/** A waste item: full is bad, low or empty is what it should be. */
|
|
20602
|
+
function wasteLevel(item) {
|
|
20603
|
+
if (item.status === "full" || item.status === "replace") return "full";
|
|
20604
|
+
if (item.level !== null) return item.level >= 85 ? "full" : "ok";
|
|
20605
|
+
return item.status === null ? null : "ok";
|
|
20606
|
+
}
|
|
20607
|
+
/** A wear part or a supply: low / empty is bad, a full supply is fine. */
|
|
20608
|
+
function drawnLevel(item) {
|
|
20554
20609
|
if (item.level !== null) {
|
|
20555
|
-
if (item.level <= 0) return "empty";
|
|
20556
|
-
if (item.level <= 15 || item.status === "replace") return "low";
|
|
20610
|
+
if (item.level <= 0 || item.status === "empty") return "empty";
|
|
20611
|
+
if (item.level <= 15 || item.status === "replace" || item.status === "low") return "low";
|
|
20557
20612
|
return "ok";
|
|
20558
20613
|
}
|
|
20559
20614
|
switch (item.status) {
|
|
20560
|
-
case "replace":
|
|
20561
|
-
case "
|
|
20615
|
+
case "replace":
|
|
20616
|
+
case "low": return "low";
|
|
20617
|
+
case "empty": return "empty";
|
|
20618
|
+
case "ok":
|
|
20619
|
+
case "full": return "ok";
|
|
20562
20620
|
case null: return null;
|
|
20563
20621
|
}
|
|
20564
20622
|
}
|
|
20565
20623
|
/**
|
|
20624
|
+
* A `consumables` cap item as a level, by its kind (D915):
|
|
20625
|
+
* - a `waste` item (a dust bin) is `full` when the provider says so or its
|
|
20626
|
+
* fill is at or above {@link CONSUMABLE_FULL_PERCENT}, else ok;
|
|
20627
|
+
* - a `wear` part or a `supply` reads a known % (0 = empty, at or below
|
|
20628
|
+
* {@link CONSUMABLE_LOW_PERCENT} = low), never better than `low` when the
|
|
20629
|
+
* provider says `replace` or `low`; without a % its discrete status.
|
|
20630
|
+
* Nothing known is unknown (`null`).
|
|
20631
|
+
*/
|
|
20632
|
+
function consumableItemLevel(item) {
|
|
20633
|
+
return consumableKindOf(item) === "waste" ? wasteLevel(item) : drawnLevel(item);
|
|
20634
|
+
}
|
|
20635
|
+
/** The supply vocabulary a level FIELD of a cap is typed by: `ok | low | empty`. */
|
|
20636
|
+
var SUPPLY_LEVELS = ConsumableLevelSchema.exclude(["full"]).options;
|
|
20637
|
+
/**
|
|
20566
20638
|
* Whether a cap state field IS a consumable level: an enum whose members are
|
|
20567
|
-
* exactly the
|
|
20568
|
-
* cap that uses the
|
|
20639
|
+
* exactly the supply levels (`ok | low | empty`). Derived from the schema, so a
|
|
20640
|
+
* new cap that uses the vocabulary is recognised without naming it anywhere.
|
|
20569
20641
|
*/
|
|
20570
20642
|
function isConsumableLevelField(field) {
|
|
20571
20643
|
if (field.kind !== "enum" || field.enumValues === void 0) return false;
|
|
20572
|
-
const members =
|
|
20644
|
+
const members = SUPPLY_LEVELS;
|
|
20573
20645
|
return field.enumValues.length === members.length && members.every((m) => field.enumValues?.includes(m));
|
|
20574
20646
|
}
|
|
20575
20647
|
/** A value read from a slice as a level; anything that is not a member is unknown. */
|
|
20576
20648
|
function parseConsumableLevel(value) {
|
|
20577
|
-
const parsed =
|
|
20649
|
+
const parsed = ConsumableLevelSchema.safeParse(value);
|
|
20578
20650
|
return parsed.success ? parsed.data : null;
|
|
20579
20651
|
}
|
|
20580
20652
|
function ConsumableLevelBadge({ level, name, label, size = "md", className }) {
|
|
@@ -20589,26 +20661,50 @@ function ConsumableLevelBadge({ level, name, label, size = "md", className }) {
|
|
|
20589
20661
|
});
|
|
20590
20662
|
}
|
|
20591
20663
|
//#endregion
|
|
20592
|
-
//#region src/
|
|
20593
|
-
|
|
20594
|
-
|
|
20595
|
-
|
|
20596
|
-
|
|
20597
|
-
|
|
20598
|
-
|
|
20599
|
-
|
|
20600
|
-
|
|
20601
|
-
|
|
20602
|
-
|
|
20603
|
-
|
|
20604
|
-
|
|
20605
|
-
|
|
20606
|
-
|
|
20607
|
-
|
|
20608
|
-
|
|
20609
|
-
|
|
20610
|
-
|
|
20611
|
-
|
|
20664
|
+
//#region src/primitives/skeleton.tsx
|
|
20665
|
+
var Skeleton = forwardRef(({ className, ...props }, ref) => {
|
|
20666
|
+
return /* @__PURE__ */ jsx("div", {
|
|
20667
|
+
ref,
|
|
20668
|
+
className: cn("animate-pulse bg-surface-hover rounded-md h-4 w-full", className),
|
|
20669
|
+
...props
|
|
20670
|
+
});
|
|
20671
|
+
});
|
|
20672
|
+
Skeleton.displayName = "Skeleton";
|
|
20673
|
+
//#endregion
|
|
20674
|
+
//#region src/primitives/button.tsx
|
|
20675
|
+
var buttonVariants = cva("inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none", {
|
|
20676
|
+
variants: {
|
|
20677
|
+
variant: {
|
|
20678
|
+
primary: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
20679
|
+
secondary: "bg-surface text-foreground hover:bg-surface-hover",
|
|
20680
|
+
ghost: "hover:bg-surface-hover text-foreground-muted",
|
|
20681
|
+
danger: "bg-danger text-white hover:bg-danger/90",
|
|
20682
|
+
outline: "border border-border bg-transparent text-foreground hover:bg-surface-hover"
|
|
20683
|
+
},
|
|
20684
|
+
size: {
|
|
20685
|
+
sm: "h-7 px-2.5 text-xs gap-1.5",
|
|
20686
|
+
md: "h-8 px-3 text-sm gap-2",
|
|
20687
|
+
lg: "h-9 px-4 text-sm gap-2"
|
|
20688
|
+
}
|
|
20689
|
+
},
|
|
20690
|
+
defaultVariants: {
|
|
20691
|
+
variant: "primary",
|
|
20692
|
+
size: "sm"
|
|
20693
|
+
}
|
|
20694
|
+
});
|
|
20695
|
+
var Button = forwardRef(({ className, variant, size, ...props }, ref) => {
|
|
20696
|
+
return /* @__PURE__ */ jsx("button", {
|
|
20697
|
+
ref,
|
|
20698
|
+
className: cn(buttonVariants({
|
|
20699
|
+
variant,
|
|
20700
|
+
size
|
|
20701
|
+
}), className),
|
|
20702
|
+
...props
|
|
20703
|
+
});
|
|
20704
|
+
});
|
|
20705
|
+
Button.displayName = "Button";
|
|
20706
|
+
//#endregion
|
|
20707
|
+
//#region src/composites/cap-settings/consumable-rows.tsx
|
|
20612
20708
|
/** `value` null = unknown (D393) — renders an em-dash, never a fake `0`. */
|
|
20613
20709
|
function formatRemaining(t, r) {
|
|
20614
20710
|
if (r.value === null) return "—";
|
|
@@ -20640,55 +20736,278 @@ function formatResetAt(ms) {
|
|
|
20640
20736
|
return "";
|
|
20641
20737
|
}
|
|
20642
20738
|
}
|
|
20643
|
-
function
|
|
20739
|
+
function needsAttention(level) {
|
|
20740
|
+
return level === "low" || level === "empty" || level === "full";
|
|
20741
|
+
}
|
|
20742
|
+
function clampPercent(value) {
|
|
20743
|
+
return Math.max(0, Math.min(100, value));
|
|
20744
|
+
}
|
|
20745
|
+
function RowFrame({ item, warn, children }) {
|
|
20746
|
+
return /* @__PURE__ */ jsx("div", {
|
|
20747
|
+
"data-form": consumableFormOf(item),
|
|
20748
|
+
className: `flex gap-2.5 rounded-md border p-3 ${warn ? "border-warning/40 bg-warning/5" : "border-border-subtle"}`,
|
|
20749
|
+
children
|
|
20750
|
+
});
|
|
20751
|
+
}
|
|
20752
|
+
function RowLabel({ item, warn }) {
|
|
20753
|
+
return /* @__PURE__ */ jsx("span", {
|
|
20754
|
+
className: `truncate text-xs font-semibold ${warn ? "text-warning" : "text-foreground"}`,
|
|
20755
|
+
children: item.label
|
|
20756
|
+
});
|
|
20757
|
+
}
|
|
20758
|
+
/** A wear part: bar + %, or its verdict; remaining time; the reset. */
|
|
20759
|
+
function PartRow({ item, busy, canReset, onReset }) {
|
|
20644
20760
|
const t = useUiText();
|
|
20645
20761
|
const level = consumableItemLevel(item);
|
|
20646
|
-
const warn = level
|
|
20647
|
-
return /* @__PURE__ */
|
|
20648
|
-
|
|
20649
|
-
|
|
20650
|
-
|
|
20651
|
-
|
|
20652
|
-
|
|
20653
|
-
|
|
20654
|
-
|
|
20655
|
-
|
|
20762
|
+
const warn = needsAttention(level);
|
|
20763
|
+
return /* @__PURE__ */ jsx(RowFrame, {
|
|
20764
|
+
item,
|
|
20765
|
+
warn,
|
|
20766
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
20767
|
+
className: "flex min-w-0 flex-1 flex-col gap-1.5",
|
|
20768
|
+
children: [
|
|
20769
|
+
/* @__PURE__ */ jsx(RowLabel, {
|
|
20770
|
+
item,
|
|
20771
|
+
warn
|
|
20772
|
+
}),
|
|
20773
|
+
item.level !== null ? /* @__PURE__ */ jsxs("div", {
|
|
20774
|
+
className: "flex items-center gap-2",
|
|
20775
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
20776
|
+
className: "h-1.5 flex-1 overflow-hidden rounded-full bg-surface-hover",
|
|
20777
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
20778
|
+
className: `h-full rounded-full ${consumableLevelBarClass(level)} transition-all`,
|
|
20779
|
+
style: { width: `${clampPercent(item.level)}%` }
|
|
20780
|
+
})
|
|
20781
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
20782
|
+
className: "text-[10px] font-medium tabular-nums text-foreground-subtle",
|
|
20783
|
+
children: [Math.round(item.level), "%"]
|
|
20784
|
+
})]
|
|
20785
|
+
}) : /* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
20786
|
+
level,
|
|
20787
|
+
size: "sm",
|
|
20788
|
+
className: "w-fit",
|
|
20789
|
+
label: item.status === "replace" ? t("uiLibrary.consumablesPanel.replace", "Replace") : void 0
|
|
20790
|
+
}),
|
|
20791
|
+
item.remaining && /* @__PURE__ */ jsx("span", {
|
|
20792
|
+
className: "text-[10px] font-medium tabular-nums text-foreground-subtle",
|
|
20793
|
+
children: formatRemaining(t, item.remaining)
|
|
20794
|
+
}),
|
|
20795
|
+
item.lastResetAt !== null && /* @__PURE__ */ jsx("span", {
|
|
20796
|
+
className: "text-[10px] text-foreground-subtle",
|
|
20797
|
+
children: t("uiLibrary.consumablesPanel.replacedOn", "Replaced {{date}}", { date: formatResetAt(item.lastResetAt) })
|
|
20798
|
+
}),
|
|
20799
|
+
item.resettable && /* @__PURE__ */ jsx(Button, {
|
|
20656
20800
|
type: "button",
|
|
20801
|
+
variant: "outline",
|
|
20802
|
+
size: "sm",
|
|
20803
|
+
className: "w-fit",
|
|
20657
20804
|
onClick: () => onReset(item.key),
|
|
20658
20805
|
disabled: busy || !canReset,
|
|
20659
|
-
className: "rounded-md border border-border bg-surface px-2 py-0.5 text-[10px] font-medium text-foreground-subtle hover:bg-surface-hover disabled:opacity-40 transition-colors",
|
|
20660
20806
|
children: t("uiLibrary.consumablesPanel.replaced", "Replaced")
|
|
20661
|
-
})
|
|
20662
|
-
|
|
20663
|
-
|
|
20807
|
+
})
|
|
20808
|
+
]
|
|
20809
|
+
})
|
|
20810
|
+
});
|
|
20811
|
+
}
|
|
20812
|
+
/** A tank or a bin: a vertical gauge filled from the bottom, then the % or the verdict. */
|
|
20813
|
+
function GaugeRow({ item }) {
|
|
20814
|
+
const level = consumableItemLevel(item);
|
|
20815
|
+
const warn = needsAttention(level);
|
|
20816
|
+
return /* @__PURE__ */ jsxs(RowFrame, {
|
|
20817
|
+
item,
|
|
20818
|
+
warn,
|
|
20819
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
20820
|
+
className: "relative h-10 w-3 shrink-0 overflow-hidden rounded-sm border border-border bg-surface-hover",
|
|
20821
|
+
"data-testid": "consumable-gauge",
|
|
20822
|
+
children: item.level !== null && /* @__PURE__ */ jsx("div", {
|
|
20823
|
+
className: `absolute inset-x-0 bottom-0 ${consumableLevelBarClass(level)} transition-all`,
|
|
20824
|
+
style: { height: `${clampPercent(item.level)}%` }
|
|
20825
|
+
})
|
|
20826
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
20827
|
+
className: "flex min-w-0 flex-1 flex-col justify-center gap-1",
|
|
20828
|
+
children: [/* @__PURE__ */ jsx(RowLabel, {
|
|
20829
|
+
item,
|
|
20830
|
+
warn
|
|
20831
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
20664
20832
|
className: "flex items-center gap-2",
|
|
20665
|
-
children: [/* @__PURE__ */ jsx(
|
|
20666
|
-
|
|
20667
|
-
|
|
20668
|
-
|
|
20669
|
-
|
|
20670
|
-
})
|
|
20671
|
-
}), /* @__PURE__ */ jsxs("span", {
|
|
20833
|
+
children: [/* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
20834
|
+
level,
|
|
20835
|
+
size: "sm",
|
|
20836
|
+
className: "w-fit"
|
|
20837
|
+
}), item.level !== null && /* @__PURE__ */ jsxs("span", {
|
|
20672
20838
|
className: "text-[10px] font-medium tabular-nums text-foreground-subtle",
|
|
20673
20839
|
children: [Math.round(item.level), "%"]
|
|
20674
20840
|
})]
|
|
20675
|
-
})
|
|
20676
|
-
|
|
20677
|
-
|
|
20678
|
-
|
|
20679
|
-
|
|
20680
|
-
|
|
20681
|
-
|
|
20682
|
-
|
|
20683
|
-
|
|
20684
|
-
|
|
20685
|
-
|
|
20686
|
-
|
|
20687
|
-
|
|
20688
|
-
|
|
20689
|
-
|
|
20841
|
+
})]
|
|
20842
|
+
})]
|
|
20843
|
+
});
|
|
20844
|
+
}
|
|
20845
|
+
/** How many of the three steps a product's level fills. */
|
|
20846
|
+
var PRODUCT_STEPS = {
|
|
20847
|
+
full: 3,
|
|
20848
|
+
ok: 3,
|
|
20849
|
+
low: 1,
|
|
20850
|
+
empty: 0,
|
|
20851
|
+
unknown: 0
|
|
20852
|
+
};
|
|
20853
|
+
var STEP_INDEXES = [
|
|
20854
|
+
0,
|
|
20855
|
+
1,
|
|
20856
|
+
2
|
|
20857
|
+
];
|
|
20858
|
+
/** The refill wording a product's level reads as. */
|
|
20859
|
+
function productLabel(level, t) {
|
|
20860
|
+
if (level === "low") return t("uiLibrary.consumablesPanel.refillSoon", "Refill soon");
|
|
20861
|
+
if (level === "empty") return t("uiLibrary.consumablesPanel.refillNow", "Refill now");
|
|
20862
|
+
}
|
|
20863
|
+
/** A product bought and refilled: package icon, three steps, "refill". */
|
|
20864
|
+
function ProductRow({ item }) {
|
|
20865
|
+
const t = useUiText();
|
|
20866
|
+
const level = consumableItemLevel(item);
|
|
20867
|
+
const warn = needsAttention(level);
|
|
20868
|
+
const filled = PRODUCT_STEPS[level ?? "unknown"];
|
|
20869
|
+
return /* @__PURE__ */ jsxs(RowFrame, {
|
|
20870
|
+
item,
|
|
20871
|
+
warn,
|
|
20872
|
+
children: [/* @__PURE__ */ jsx(Package, { className: `mt-0.5 h-4 w-4 shrink-0 ${warn ? "text-warning" : "text-foreground-subtle"}` }), /* @__PURE__ */ jsxs("div", {
|
|
20873
|
+
className: "flex min-w-0 flex-1 flex-col gap-1.5",
|
|
20874
|
+
children: [/* @__PURE__ */ jsx(RowLabel, {
|
|
20875
|
+
item,
|
|
20876
|
+
warn
|
|
20877
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
20878
|
+
className: "flex flex-wrap items-center gap-2",
|
|
20879
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
20880
|
+
className: "flex gap-0.5",
|
|
20881
|
+
"data-testid": "consumable-steps",
|
|
20882
|
+
"data-filled": filled,
|
|
20883
|
+
children: STEP_INDEXES.map((i) => /* @__PURE__ */ jsx("span", { className: `h-1.5 w-3 rounded-full ${i < filled ? consumableLevelBarClass(level) : "bg-surface-hover"}` }, i))
|
|
20884
|
+
}), /* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
20885
|
+
level,
|
|
20886
|
+
size: "sm",
|
|
20887
|
+
className: "whitespace-nowrap",
|
|
20888
|
+
label: productLabel(level, t)
|
|
20889
|
+
})]
|
|
20890
|
+
})]
|
|
20891
|
+
})]
|
|
20690
20892
|
});
|
|
20691
20893
|
}
|
|
20894
|
+
/** The row for an item, chosen by its form. */
|
|
20895
|
+
function ConsumableRow(props) {
|
|
20896
|
+
switch (consumableFormOf(props.item)) {
|
|
20897
|
+
case "part": return /* @__PURE__ */ jsx(PartRow, { ...props });
|
|
20898
|
+
case "tank":
|
|
20899
|
+
case "bin": return /* @__PURE__ */ jsx(GaugeRow, { item: props.item });
|
|
20900
|
+
case "product": return /* @__PURE__ */ jsx(ProductRow, { item: props.item });
|
|
20901
|
+
}
|
|
20902
|
+
}
|
|
20903
|
+
//#endregion
|
|
20904
|
+
//#region src/composites/cap-settings/consumables-summary.ts
|
|
20905
|
+
var SEVERITY = {
|
|
20906
|
+
empty: 3,
|
|
20907
|
+
full: 2,
|
|
20908
|
+
low: 1
|
|
20909
|
+
};
|
|
20910
|
+
function isAttention(level) {
|
|
20911
|
+
return level === "low" || level === "empty" || level === "full";
|
|
20912
|
+
}
|
|
20913
|
+
function summarizeConsumables(items) {
|
|
20914
|
+
if (items.length === 0) return {
|
|
20915
|
+
kind: "none",
|
|
20916
|
+
needsAttention: false
|
|
20917
|
+
};
|
|
20918
|
+
const attention = [];
|
|
20919
|
+
let ok = 0;
|
|
20920
|
+
let unknown = 0;
|
|
20921
|
+
for (const item of items) {
|
|
20922
|
+
const level = consumableItemLevel(item);
|
|
20923
|
+
if (isAttention(level)) attention.push({
|
|
20924
|
+
label: item.label,
|
|
20925
|
+
level,
|
|
20926
|
+
replace: item.status === "replace"
|
|
20927
|
+
});
|
|
20928
|
+
else if (level === "ok") ok += 1;
|
|
20929
|
+
else unknown += 1;
|
|
20930
|
+
}
|
|
20931
|
+
const worst = [...attention].sort((a, b) => SEVERITY[b.level] - SEVERITY[a.level])[0];
|
|
20932
|
+
if (worst !== void 0) return {
|
|
20933
|
+
kind: "attention",
|
|
20934
|
+
needsAttention: true,
|
|
20935
|
+
count: attention.length,
|
|
20936
|
+
worst
|
|
20937
|
+
};
|
|
20938
|
+
return unknown === 0 ? {
|
|
20939
|
+
kind: "ok",
|
|
20940
|
+
needsAttention: false,
|
|
20941
|
+
count: ok
|
|
20942
|
+
} : {
|
|
20943
|
+
kind: "partial",
|
|
20944
|
+
needsAttention: false,
|
|
20945
|
+
ok,
|
|
20946
|
+
unknown
|
|
20947
|
+
};
|
|
20948
|
+
}
|
|
20949
|
+
//#endregion
|
|
20950
|
+
//#region src/composites/cap-settings/ConsumablesPanel.tsx
|
|
20951
|
+
/**
|
|
20952
|
+
* ConsumablesPanel — the ONE consumables surface of every device (D915): wear
|
|
20953
|
+
* parts, tanks (a vacuum's clean and dirty water), products (detergent, a
|
|
20954
|
+
* dishwasher's salt and rinse aid) and bins (a dust bin), for whichever device
|
|
20955
|
+
* is bound to the `consumables` capability. A cap-settings component
|
|
20956
|
+
* (ui-library), shown directly under the device page's hero card through the
|
|
20957
|
+
* cap-UI contribution mechanism (the cap declares
|
|
20958
|
+
* `ui: { kind:'widget', widgetId:'host/consumables-panel', placement:'hero', ... }`)
|
|
20959
|
+
* — never drawn by a device type's hero card itself.
|
|
20960
|
+
*
|
|
20961
|
+
* Reads the cap's pushed runtime-state slice via `useDeviceCapability` and
|
|
20962
|
+
* renders one row per item, drawn by its form (`consumable-rows.tsx`). A
|
|
20963
|
+
* slice that has not landed is a loading line, never "none reported" (D315).
|
|
20964
|
+
*
|
|
20965
|
+
* The section COLLAPSES smartly: it starts open while any item needs
|
|
20966
|
+
* attention (low, empty, a full bin or waste tank, a part to replace) and
|
|
20967
|
+
* closed while every item is ok or unknown; closed, its header carries a
|
|
20968
|
+
* one-line summary (`consumables-summary.ts`). The operator's own toggle wins
|
|
20969
|
+
* and is remembered per device and per viewer.
|
|
20970
|
+
*/
|
|
20971
|
+
/** Where one viewer's open / closed choice for one device's section is kept. */
|
|
20972
|
+
function consumablesOpenStorageKey(deviceId) {
|
|
20973
|
+
return `camstack.device.${String(deviceId)}.consumables.open`;
|
|
20974
|
+
}
|
|
20975
|
+
/** The one line a collapsed section says. */
|
|
20976
|
+
function SummaryLine({ summary, t }) {
|
|
20977
|
+
switch (summary.kind) {
|
|
20978
|
+
case "none": return /* @__PURE__ */ jsx(Badge, {
|
|
20979
|
+
variant: "neutral",
|
|
20980
|
+
size: "sm",
|
|
20981
|
+
children: t("uiLibrary.consumablesPanel.noneReported", "None reported")
|
|
20982
|
+
});
|
|
20983
|
+
case "ok": return /* @__PURE__ */ jsx(Badge, {
|
|
20984
|
+
variant: "success",
|
|
20985
|
+
size: "sm",
|
|
20986
|
+
children: t("uiLibrary.consumablesPanel.allOk", "All OK")
|
|
20987
|
+
});
|
|
20988
|
+
case "partial": return /* @__PURE__ */ jsx(Badge, {
|
|
20989
|
+
variant: "neutral",
|
|
20990
|
+
size: "sm",
|
|
20991
|
+
children: t("uiLibrary.consumablesPanel.okAndUnknown", "{{ok}} OK · {{unknown}} unknown", {
|
|
20992
|
+
ok: summary.ok,
|
|
20993
|
+
unknown: summary.unknown
|
|
20994
|
+
})
|
|
20995
|
+
});
|
|
20996
|
+
case "attention": return summary.count === 1 ? /* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
20997
|
+
level: summary.worst.level,
|
|
20998
|
+
name: summary.worst.label,
|
|
20999
|
+
size: "sm",
|
|
21000
|
+
label: summary.worst.replace ? t("uiLibrary.consumablesPanel.replace", "Replace") : void 0
|
|
21001
|
+
}) : /* @__PURE__ */ jsx(Badge, {
|
|
21002
|
+
variant: consumableLevelVariant(summary.worst.level),
|
|
21003
|
+
size: "sm",
|
|
21004
|
+
children: t("uiLibrary.consumablesPanel.needAttention", {
|
|
21005
|
+
one: "{{count}} needs attention",
|
|
21006
|
+
other: "{{count}} need attention"
|
|
21007
|
+
}, { count: summary.count })
|
|
21008
|
+
});
|
|
21009
|
+
}
|
|
21010
|
+
}
|
|
20692
21011
|
function ConsumablesPanel({ deviceId }) {
|
|
20693
21012
|
const t = useUiText();
|
|
20694
21013
|
const system = useSystem();
|
|
@@ -20700,6 +21019,7 @@ function ConsumablesPanel({ deviceId }) {
|
|
|
20700
21019
|
slice: (d) => d.state.consumables
|
|
20701
21020
|
});
|
|
20702
21021
|
const [busyKey, setBusyKey] = useState(null);
|
|
21022
|
+
const [choice, setChoice] = usePersistedDisclosure(ready ? consumablesOpenStorageKey(deviceId) : null);
|
|
20703
21023
|
const onReset = useCallback(async (key) => {
|
|
20704
21024
|
if (!cap) return;
|
|
20705
21025
|
setBusyKey(key);
|
|
@@ -20711,17 +21031,30 @@ function ConsumablesPanel({ deviceId }) {
|
|
|
20711
21031
|
setBusyKey(null);
|
|
20712
21032
|
}
|
|
20713
21033
|
}, [cap]);
|
|
20714
|
-
const
|
|
21034
|
+
const summary = slice === void 0 ? null : summarizeConsumables(slice.items);
|
|
21035
|
+
const open = choice ?? summary?.needsAttention ?? false;
|
|
21036
|
+
const loading = /* @__PURE__ */ jsx(Skeleton, {
|
|
21037
|
+
className: open ? "h-10 w-full" : "h-4 w-16",
|
|
21038
|
+
"data-testid": "consumables-loading",
|
|
21039
|
+
"aria-label": t("uiLibrary.consumablesPanel.loading", "Reading consumables…")
|
|
21040
|
+
});
|
|
20715
21041
|
return /* @__PURE__ */ jsx(WidgetPanel, {
|
|
20716
21042
|
title: t("uiLibrary.consumablesPanel.title", "Consumables"),
|
|
20717
21043
|
icon: /* @__PURE__ */ jsx(Gauge, { className: "h-3.5 w-3.5 text-foreground-subtle" }),
|
|
20718
21044
|
bodyClassName: "p-3 overflow-y-auto",
|
|
20719
|
-
|
|
21045
|
+
collapsible: true,
|
|
21046
|
+
open,
|
|
21047
|
+
onOpenChange: setChoice,
|
|
21048
|
+
headerRight: open ? void 0 : summary === null ? loading : /* @__PURE__ */ jsx(SummaryLine, {
|
|
21049
|
+
summary,
|
|
21050
|
+
t
|
|
21051
|
+
}),
|
|
21052
|
+
children: slice === void 0 ? loading : slice.items.length === 0 ? /* @__PURE__ */ jsx("p", {
|
|
20720
21053
|
className: "text-[11px] text-foreground-subtle italic leading-relaxed",
|
|
20721
21054
|
children: t("uiLibrary.consumablesPanel.empty", "No consumables reported.")
|
|
20722
21055
|
}) : /* @__PURE__ */ jsx("div", {
|
|
20723
|
-
className: "
|
|
20724
|
-
children: items.map((item) => /* @__PURE__ */ jsx(ConsumableRow, {
|
|
21056
|
+
className: "grid grid-cols-1 gap-2 sm:grid-cols-2",
|
|
21057
|
+
children: slice.items.map((item) => /* @__PURE__ */ jsx(ConsumableRow, {
|
|
20725
21058
|
item,
|
|
20726
21059
|
busy: busyKey === item.key,
|
|
20727
21060
|
canReset: available,
|
|
@@ -20761,49 +21094,6 @@ function useCapabilityPresence(capabilityName) {
|
|
|
20761
21094
|
return classifyCapability(query.data);
|
|
20762
21095
|
}
|
|
20763
21096
|
//#endregion
|
|
20764
|
-
//#region src/primitives/button.tsx
|
|
20765
|
-
var buttonVariants = cva("inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none", {
|
|
20766
|
-
variants: {
|
|
20767
|
-
variant: {
|
|
20768
|
-
primary: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
20769
|
-
secondary: "bg-surface text-foreground hover:bg-surface-hover",
|
|
20770
|
-
ghost: "hover:bg-surface-hover text-foreground-muted",
|
|
20771
|
-
danger: "bg-danger text-white hover:bg-danger/90",
|
|
20772
|
-
outline: "border border-border bg-transparent text-foreground hover:bg-surface-hover"
|
|
20773
|
-
},
|
|
20774
|
-
size: {
|
|
20775
|
-
sm: "h-7 px-2.5 text-xs gap-1.5",
|
|
20776
|
-
md: "h-8 px-3 text-sm gap-2",
|
|
20777
|
-
lg: "h-9 px-4 text-sm gap-2"
|
|
20778
|
-
}
|
|
20779
|
-
},
|
|
20780
|
-
defaultVariants: {
|
|
20781
|
-
variant: "primary",
|
|
20782
|
-
size: "sm"
|
|
20783
|
-
}
|
|
20784
|
-
});
|
|
20785
|
-
var Button = forwardRef(({ className, variant, size, ...props }, ref) => {
|
|
20786
|
-
return /* @__PURE__ */ jsx("button", {
|
|
20787
|
-
ref,
|
|
20788
|
-
className: cn(buttonVariants({
|
|
20789
|
-
variant,
|
|
20790
|
-
size
|
|
20791
|
-
}), className),
|
|
20792
|
-
...props
|
|
20793
|
-
});
|
|
20794
|
-
});
|
|
20795
|
-
Button.displayName = "Button";
|
|
20796
|
-
//#endregion
|
|
20797
|
-
//#region src/primitives/skeleton.tsx
|
|
20798
|
-
var Skeleton = forwardRef(({ className, ...props }, ref) => {
|
|
20799
|
-
return /* @__PURE__ */ jsx("div", {
|
|
20800
|
-
ref,
|
|
20801
|
-
className: cn("animate-pulse bg-surface-hover rounded-md h-4 w-full", className),
|
|
20802
|
-
...props
|
|
20803
|
-
});
|
|
20804
|
-
});
|
|
20805
|
-
Skeleton.displayName = "Skeleton";
|
|
20806
|
-
//#endregion
|
|
20807
21097
|
//#region src/composites/cap-settings/recording-timeline-model.ts
|
|
20808
21098
|
/** Tie-break precedence for a bucket's dominant kind (first wins on equal count). */
|
|
20809
21099
|
var KIND_PRECEDENCE = [
|
|
@@ -27628,7 +27918,7 @@ function RecordingPanel({ deviceId }) {
|
|
|
27628
27918
|
* Module-Federation `WidgetRegistry`. ids are namespaced `host/<name>`. */
|
|
27629
27919
|
var HOST_WIDGETS = {
|
|
27630
27920
|
"host/motion-zones-grid": lazy(() => import("./MotionZonesSettings-DR1g9ja3.js").then((m) => ({ default: m.MotionZonesSettings }))),
|
|
27631
|
-
"host/privacy-mask-grid": lazy(() => import("./PrivacyMaskSettings-
|
|
27921
|
+
"host/privacy-mask-grid": lazy(() => import("./PrivacyMaskSettings-C9wfHkiB.js").then((m) => ({ default: m.PrivacyMaskSettings }))),
|
|
27632
27922
|
"host/ptz-panel": PtzPanel,
|
|
27633
27923
|
"host/navigation-panel": NavigationPanel,
|
|
27634
27924
|
"host/consumables-panel": ConsumablesPanel,
|
|
@@ -47078,147 +47368,6 @@ function BatteryBadge$2({ level }) {
|
|
|
47078
47368
|
});
|
|
47079
47369
|
}
|
|
47080
47370
|
/**
|
|
47081
|
-
* Pure helper — partitions a tank kind into "supply" (low is bad) vs
|
|
47082
|
-
* "waste" (full is bad) via an exhaustive switch. A future TankKind that
|
|
47083
|
-
* forgets to classify itself fails the build (the `never` default arm),
|
|
47084
|
-
* rather than silently defaulting to the waste branch.
|
|
47085
|
-
*/
|
|
47086
|
-
function tankIsSupply(kind) {
|
|
47087
|
-
switch (kind) {
|
|
47088
|
-
case "cleanWater": return true;
|
|
47089
|
-
case "detergent": return true;
|
|
47090
|
-
case "dirtyWater": return false;
|
|
47091
|
-
case "dustBin": return false;
|
|
47092
|
-
default: return kind;
|
|
47093
|
-
}
|
|
47094
|
-
}
|
|
47095
|
-
/**
|
|
47096
|
-
* Pure helper — classifies a tank as `ok` or `warning`.
|
|
47097
|
-
*
|
|
47098
|
-
* Clean-water + detergent are "supply" tanks: low is bad. Dirty-water +
|
|
47099
|
-
* dust-bin are "waste" tanks: full is bad. Prefers the numeric `level`
|
|
47100
|
-
* (thresholds 15 / 85), falling back to the discrete `status` flag. Both
|
|
47101
|
-
* unknown → `ok`. Exhaustive over TankKind.
|
|
47102
|
-
*/
|
|
47103
|
-
function tankAlert(kind, tank) {
|
|
47104
|
-
const isSupply = tankIsSupply(kind);
|
|
47105
|
-
if (tank.level !== null) {
|
|
47106
|
-
if (isSupply) return tank.level <= 15 ? "warning" : "ok";
|
|
47107
|
-
return tank.level >= 85 ? "warning" : "ok";
|
|
47108
|
-
}
|
|
47109
|
-
if (tank.status !== null) {
|
|
47110
|
-
if (isSupply) return tank.status === "low" ? "warning" : "ok";
|
|
47111
|
-
return tank.status === "full" ? "warning" : "ok";
|
|
47112
|
-
}
|
|
47113
|
-
return "ok";
|
|
47114
|
-
}
|
|
47115
|
-
function tankMeta(t, kind) {
|
|
47116
|
-
switch (kind) {
|
|
47117
|
-
case "cleanWater": return {
|
|
47118
|
-
label: t("uiLibrary.vacuum.cleanWater", "Clean water"),
|
|
47119
|
-
icon: /* @__PURE__ */ jsx(Droplet, { className: "h-3.5 w-3.5" })
|
|
47120
|
-
};
|
|
47121
|
-
case "dirtyWater": return {
|
|
47122
|
-
label: t("uiLibrary.vacuum.dirtyWater", "Dirty water"),
|
|
47123
|
-
icon: /* @__PURE__ */ jsx(Droplets, { className: "h-3.5 w-3.5" })
|
|
47124
|
-
};
|
|
47125
|
-
case "detergent": return {
|
|
47126
|
-
label: t("uiLibrary.vacuum.detergent", "Detergent"),
|
|
47127
|
-
icon: /* @__PURE__ */ jsx(FlaskConical, { className: "h-3.5 w-3.5" })
|
|
47128
|
-
};
|
|
47129
|
-
case "dustBin": return {
|
|
47130
|
-
label: t("uiLibrary.vacuum.dustBin", "Dust bin"),
|
|
47131
|
-
icon: /* @__PURE__ */ jsx(Trash2, { className: "h-3.5 w-3.5" })
|
|
47132
|
-
};
|
|
47133
|
-
default: return kind;
|
|
47134
|
-
}
|
|
47135
|
-
}
|
|
47136
|
-
/**
|
|
47137
|
-
* TankIndicator — one tank row: label + glyph, then a fill bar (numeric
|
|
47138
|
-
* level) or a status pill (discrete), tinted by `tankAlert`. Renders
|
|
47139
|
-
* nothing only when the tank is absent (null). A PRESENT tank whose
|
|
47140
|
-
* reading is unknown (both fields null) still renders a neutral row with
|
|
47141
|
-
* an em-dash placeholder, so the user always sees which tanks the robot
|
|
47142
|
-
* has (Dreame reports presence but no fill telemetry).
|
|
47143
|
-
*/
|
|
47144
|
-
function TankIndicator({ kind, tank }) {
|
|
47145
|
-
const t = useUiText();
|
|
47146
|
-
if (tank === null) return null;
|
|
47147
|
-
const meta = tankMeta(t, kind);
|
|
47148
|
-
const warning = tankAlert(kind, tank) === "warning";
|
|
47149
|
-
if (tank.level !== null) return /* @__PURE__ */ jsxs("div", {
|
|
47150
|
-
className: "flex items-center gap-2 text-xs",
|
|
47151
|
-
children: [
|
|
47152
|
-
/* @__PURE__ */ jsxs("span", {
|
|
47153
|
-
className: cn("inline-flex items-center gap-1 w-24 shrink-0", warning ? "text-warning" : "text-foreground-subtle"),
|
|
47154
|
-
children: [meta.icon, meta.label]
|
|
47155
|
-
}),
|
|
47156
|
-
/* @__PURE__ */ jsx("span", {
|
|
47157
|
-
className: "relative h-1.5 flex-1 overflow-hidden rounded-full bg-surface-hover",
|
|
47158
|
-
children: /* @__PURE__ */ jsx("span", {
|
|
47159
|
-
className: cn("absolute inset-y-0 left-0 rounded-full transition-all", warning ? "bg-warning" : "bg-primary"),
|
|
47160
|
-
style: { width: `${tank.level}%` }
|
|
47161
|
-
})
|
|
47162
|
-
}),
|
|
47163
|
-
/* @__PURE__ */ jsxs("span", {
|
|
47164
|
-
className: cn("tabular-nums w-9 text-right", warning ? "text-warning" : "text-foreground-subtle"),
|
|
47165
|
-
children: [tank.level, "%"]
|
|
47166
|
-
})
|
|
47167
|
-
]
|
|
47168
|
-
});
|
|
47169
|
-
if (tank.status !== null) return /* @__PURE__ */ jsxs("div", {
|
|
47170
|
-
className: "flex items-center gap-2 text-xs",
|
|
47171
|
-
children: [/* @__PURE__ */ jsxs("span", {
|
|
47172
|
-
className: cn("inline-flex items-center gap-1 w-24 shrink-0", warning ? "text-warning" : "text-foreground-subtle"),
|
|
47173
|
-
children: [meta.icon, meta.label]
|
|
47174
|
-
}), /* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
47175
|
-
level: warning ? "low" : "ok",
|
|
47176
|
-
label: tankStatusLabel(t, tank.status),
|
|
47177
|
-
size: "sm"
|
|
47178
|
-
})]
|
|
47179
|
-
});
|
|
47180
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
47181
|
-
className: "flex items-center gap-2 text-xs",
|
|
47182
|
-
children: [/* @__PURE__ */ jsxs("span", {
|
|
47183
|
-
className: "inline-flex items-center gap-1 w-24 shrink-0 text-foreground-subtle",
|
|
47184
|
-
children: [meta.icon, meta.label]
|
|
47185
|
-
}), /* @__PURE__ */ jsx(ConsumableLevelBadge, {
|
|
47186
|
-
level: null,
|
|
47187
|
-
size: "sm"
|
|
47188
|
-
})]
|
|
47189
|
-
});
|
|
47190
|
-
}
|
|
47191
|
-
/** A tank's discrete reading in words; the tone is `tankAlert`'s (a full waste tank warns, a full supply tank does not). */
|
|
47192
|
-
function tankStatusLabel(t, status) {
|
|
47193
|
-
switch (status) {
|
|
47194
|
-
case "ok": return consumableLevelLabel("ok", t);
|
|
47195
|
-
case "low": return consumableLevelLabel("low", t);
|
|
47196
|
-
case "full": return t("uiLibrary.vacuum.tankFull", "Full");
|
|
47197
|
-
}
|
|
47198
|
-
}
|
|
47199
|
-
/**
|
|
47200
|
-
* TanksRow — compact 2-column grid of the present tanks for the vacuum
|
|
47201
|
-
* hero. Absent tanks (null) are skipped; every PRESENT tank is shown, even
|
|
47202
|
-
* when its reading is unknown (`{level:null,status:null}`) — it renders a
|
|
47203
|
-
* neutral em-dash row. The row renders iff the robot has at least one tank.
|
|
47204
|
-
*/
|
|
47205
|
-
function TanksRow({ cleanWater, dirtyWater, detergent, dustBin }) {
|
|
47206
|
-
const tanks = [
|
|
47207
|
-
["cleanWater", cleanWater],
|
|
47208
|
-
["dirtyWater", dirtyWater],
|
|
47209
|
-
["detergent", detergent],
|
|
47210
|
-
["dustBin", dustBin]
|
|
47211
|
-
];
|
|
47212
|
-
if (!tanks.some(([, t]) => t !== null)) return null;
|
|
47213
|
-
return /* @__PURE__ */ jsx("div", {
|
|
47214
|
-
className: "grid grid-cols-1 gap-x-6 gap-y-2 rounded-md border border-border bg-surface-hover/40 p-3 sm:grid-cols-2",
|
|
47215
|
-
children: tanks.map(([kind, tank]) => /* @__PURE__ */ jsx(TankIndicator, {
|
|
47216
|
-
kind,
|
|
47217
|
-
tank
|
|
47218
|
-
}, kind))
|
|
47219
|
-
});
|
|
47220
|
-
}
|
|
47221
|
-
/**
|
|
47222
47371
|
* VacuumInlineControl — compact, state-aware vacuum controls for a
|
|
47223
47372
|
* device-list row. Start / Pause / Return-to-base + battery badge.
|
|
47224
47373
|
*/
|
|
@@ -47300,114 +47449,105 @@ function VacuumHeroCard({ trpc, deviceId }) {
|
|
|
47300
47449
|
};
|
|
47301
47450
|
return /* @__PURE__ */ jsxs("div", {
|
|
47302
47451
|
className: "flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4",
|
|
47303
|
-
children: [
|
|
47304
|
-
|
|
47305
|
-
|
|
47306
|
-
|
|
47307
|
-
|
|
47308
|
-
|
|
47309
|
-
|
|
47310
|
-
|
|
47311
|
-
|
|
47312
|
-
|
|
47313
|
-
|
|
47314
|
-
|
|
47315
|
-
|
|
47316
|
-
|
|
47317
|
-
|
|
47318
|
-
|
|
47319
|
-
|
|
47320
|
-
|
|
47321
|
-
|
|
47322
|
-
|
|
47323
|
-
|
|
47324
|
-
|
|
47325
|
-
|
|
47326
|
-
|
|
47327
|
-
|
|
47328
|
-
|
|
47329
|
-
|
|
47330
|
-
|
|
47331
|
-
|
|
47332
|
-
|
|
47333
|
-
|
|
47334
|
-
|
|
47335
|
-
|
|
47336
|
-
|
|
47337
|
-
|
|
47338
|
-
|
|
47339
|
-
|
|
47340
|
-
|
|
47341
|
-
|
|
47342
|
-
|
|
47343
|
-
|
|
47344
|
-
|
|
47345
|
-
|
|
47346
|
-
|
|
47347
|
-
|
|
47348
|
-
|
|
47349
|
-
|
|
47350
|
-
|
|
47351
|
-
|
|
47352
|
-
|
|
47353
|
-
|
|
47354
|
-
|
|
47355
|
-
|
|
47356
|
-
|
|
47357
|
-
|
|
47358
|
-
|
|
47359
|
-
|
|
47360
|
-
|
|
47361
|
-
|
|
47362
|
-
|
|
47363
|
-
|
|
47364
|
-
|
|
47365
|
-
|
|
47366
|
-
|
|
47367
|
-
|
|
47368
|
-
|
|
47369
|
-
|
|
47370
|
-
|
|
47371
|
-
|
|
47372
|
-
|
|
47373
|
-
|
|
47374
|
-
|
|
47375
|
-
|
|
47376
|
-
|
|
47377
|
-
|
|
47378
|
-
|
|
47379
|
-
|
|
47380
|
-
className: "
|
|
47381
|
-
children:
|
|
47382
|
-
|
|
47383
|
-
|
|
47384
|
-
|
|
47385
|
-
|
|
47386
|
-
|
|
47387
|
-
|
|
47388
|
-
|
|
47389
|
-
|
|
47390
|
-
|
|
47391
|
-
|
|
47392
|
-
|
|
47393
|
-
|
|
47394
|
-
|
|
47395
|
-
children:
|
|
47396
|
-
|
|
47397
|
-
|
|
47398
|
-
|
|
47399
|
-
|
|
47400
|
-
|
|
47401
|
-
|
|
47402
|
-
})]
|
|
47403
|
-
}),
|
|
47404
|
-
/* @__PURE__ */ jsx(TanksRow, {
|
|
47405
|
-
cleanWater: slice?.cleanWater ?? null,
|
|
47406
|
-
dirtyWater: slice?.dirtyWater ?? null,
|
|
47407
|
-
detergent: slice?.detergent ?? null,
|
|
47408
|
-
dustBin: slice?.dustBin ?? null
|
|
47409
|
-
})
|
|
47410
|
-
]
|
|
47452
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
47453
|
+
className: "flex items-center gap-6",
|
|
47454
|
+
children: [/* @__PURE__ */ jsx(VacuumGraphic, {
|
|
47455
|
+
state,
|
|
47456
|
+
batteryLevel: slice?.batteryLevel ?? null
|
|
47457
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
47458
|
+
className: "flex flex-col gap-3 flex-1",
|
|
47459
|
+
children: [
|
|
47460
|
+
/* @__PURE__ */ jsxs("div", {
|
|
47461
|
+
className: "flex items-center justify-between",
|
|
47462
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
47463
|
+
className: cn("text-3xl font-semibold", meta.tone),
|
|
47464
|
+
children: meta.label
|
|
47465
|
+
}), slice?.batteryLevel != null && /* @__PURE__ */ jsx(BatteryBadge$2, { level: slice.batteryLevel })]
|
|
47466
|
+
}),
|
|
47467
|
+
slice?.progressPercent != null && /* @__PURE__ */ jsxs("div", {
|
|
47468
|
+
className: "flex items-center gap-2",
|
|
47469
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
47470
|
+
className: "h-1.5 flex-1 rounded bg-surface-hover overflow-hidden",
|
|
47471
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
47472
|
+
className: "h-full bg-primary transition-[width] duration-500",
|
|
47473
|
+
style: { width: `${Math.max(0, Math.min(100, slice.progressPercent))}%` }
|
|
47474
|
+
})
|
|
47475
|
+
}), /* @__PURE__ */ jsxs("span", {
|
|
47476
|
+
className: "tabular-nums text-xs text-foreground-subtle",
|
|
47477
|
+
children: [Math.round(slice.progressPercent), "%"]
|
|
47478
|
+
})]
|
|
47479
|
+
}),
|
|
47480
|
+
slice?.errorCode != null && slice.errorCode !== 0 && /* @__PURE__ */ jsxs("div", {
|
|
47481
|
+
className: "inline-flex items-center gap-1 text-xs text-destructive",
|
|
47482
|
+
children: [/* @__PURE__ */ jsx(TriangleAlert, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ jsx("span", { children: slice.errorLabel ?? t("uiLibrary.vacuum.errorCode", "Error {{code}}", { code: slice.errorCode }) })]
|
|
47483
|
+
}),
|
|
47484
|
+
/* @__PURE__ */ jsxs("div", {
|
|
47485
|
+
className: "flex items-center gap-2",
|
|
47486
|
+
children: [
|
|
47487
|
+
/* @__PURE__ */ jsx(VacuumHeroButton, {
|
|
47488
|
+
label: t("uiLibrary.vacuum.start", "Start"),
|
|
47489
|
+
busy,
|
|
47490
|
+
active: state === "cleaning",
|
|
47491
|
+
onClick: () => press(cap.start),
|
|
47492
|
+
children: /* @__PURE__ */ jsx(Play, { className: "h-5 w-5" })
|
|
47493
|
+
}),
|
|
47494
|
+
/* @__PURE__ */ jsx(VacuumHeroButton, {
|
|
47495
|
+
label: t("uiLibrary.vacuum.pause", "Pause"),
|
|
47496
|
+
busy,
|
|
47497
|
+
active: state === "paused",
|
|
47498
|
+
onClick: () => press(cap.pause),
|
|
47499
|
+
children: /* @__PURE__ */ jsx(Pause, { className: "h-5 w-5" })
|
|
47500
|
+
}),
|
|
47501
|
+
/* @__PURE__ */ jsx(VacuumHeroButton, {
|
|
47502
|
+
label: t("uiLibrary.vacuum.stop", "Stop"),
|
|
47503
|
+
busy,
|
|
47504
|
+
active: false,
|
|
47505
|
+
onClick: () => press(cap.stop),
|
|
47506
|
+
children: /* @__PURE__ */ jsx(Square, { className: "h-4 w-4" })
|
|
47507
|
+
}),
|
|
47508
|
+
/* @__PURE__ */ jsx(VacuumHeroButton, {
|
|
47509
|
+
label: t("uiLibrary.vacuum.returnToBase", "Return to base"),
|
|
47510
|
+
busy,
|
|
47511
|
+
active: state === "returning" || state === "docked",
|
|
47512
|
+
onClick: () => press(cap.returnToBase),
|
|
47513
|
+
children: /* @__PURE__ */ jsx(House, { className: "h-5 w-5" })
|
|
47514
|
+
}),
|
|
47515
|
+
/* @__PURE__ */ jsx(VacuumHeroButton, {
|
|
47516
|
+
label: t("uiLibrary.vacuum.locate", "Locate"),
|
|
47517
|
+
busy,
|
|
47518
|
+
active: false,
|
|
47519
|
+
onClick: () => press(cap.locate),
|
|
47520
|
+
children: /* @__PURE__ */ jsx(Megaphone, { className: "h-5 w-5" })
|
|
47521
|
+
})
|
|
47522
|
+
]
|
|
47523
|
+
})
|
|
47524
|
+
]
|
|
47525
|
+
})]
|
|
47526
|
+
}), fanSpeeds.length > 0 && /* @__PURE__ */ jsxs("label", {
|
|
47527
|
+
className: "flex items-center gap-2 text-xs text-foreground-subtle",
|
|
47528
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
47529
|
+
className: "w-16 shrink-0",
|
|
47530
|
+
children: t("uiLibrary.vacuum.fanSpeed", "Fan speed")
|
|
47531
|
+
}), /* @__PURE__ */ jsxs("select", {
|
|
47532
|
+
"aria-label": t("uiLibrary.vacuum.fanSpeed", "Fan speed"),
|
|
47533
|
+
value: slice?.fanSpeed ?? "",
|
|
47534
|
+
disabled: busy,
|
|
47535
|
+
onChange: (e) => {
|
|
47536
|
+
onFanSpeed(e.target.value);
|
|
47537
|
+
},
|
|
47538
|
+
onClick: (e) => {
|
|
47539
|
+
e.stopPropagation();
|
|
47540
|
+
},
|
|
47541
|
+
className: "flex-1 rounded border border-border bg-surface px-2 py-1 text-foreground disabled:opacity-50",
|
|
47542
|
+
children: [slice?.fanSpeed == null && /* @__PURE__ */ jsx("option", {
|
|
47543
|
+
value: "",
|
|
47544
|
+
children: "—"
|
|
47545
|
+
}), fanSpeeds.map((s) => /* @__PURE__ */ jsx("option", {
|
|
47546
|
+
value: s,
|
|
47547
|
+
children: s
|
|
47548
|
+
}, s))]
|
|
47549
|
+
})]
|
|
47550
|
+
})]
|
|
47411
47551
|
});
|
|
47412
47552
|
}
|
|
47413
47553
|
//#endregion
|
|
@@ -50335,6 +50475,9 @@ function PetFeederHeroCard({ trpc, deviceId, features, optimistic }) {
|
|
|
50335
50475
|
* Reads the `dishwasher` cap status slice and renders inline + hero surfaces
|
|
50336
50476
|
* mirroring vacuum-control / pet-feeder patterns.
|
|
50337
50477
|
*
|
|
50478
|
+
* Salt and rinse aid are not here: they are items of the device's `consumables`
|
|
50479
|
+
* cap, shown by the page's Consumables section like every device's (D915).
|
|
50480
|
+
*
|
|
50338
50481
|
* UNKNOWN IS NOT OFF. The slice carries `null` for everything the appliance has not
|
|
50339
50482
|
* reported, and this view renders that as "—" / a disabled control, never as an unchecked
|
|
50340
50483
|
* box or a zero. It also does not echo a command before the appliance confirms it: the
|
|
@@ -50468,60 +50611,44 @@ function DishwasherPanel({ trpc, deviceId, layout }) {
|
|
|
50468
50611
|
if (busy) return;
|
|
50469
50612
|
fn();
|
|
50470
50613
|
};
|
|
50471
|
-
if (layout === "compact") {
|
|
50472
|
-
|
|
50473
|
-
|
|
50474
|
-
|
|
50475
|
-
|
|
50476
|
-
|
|
50477
|
-
|
|
50478
|
-
|
|
50479
|
-
|
|
50480
|
-
|
|
50481
|
-
|
|
50482
|
-
|
|
50483
|
-
|
|
50484
|
-
|
|
50485
|
-
|
|
50486
|
-
|
|
50487
|
-
display.program
|
|
50488
|
-
|
|
50489
|
-
|
|
50490
|
-
|
|
50491
|
-
}),
|
|
50492
|
-
|
|
50493
|
-
|
|
50494
|
-
|
|
50495
|
-
|
|
50496
|
-
|
|
50497
|
-
|
|
50498
|
-
|
|
50499
|
-
|
|
50500
|
-
|
|
50501
|
-
|
|
50502
|
-
|
|
50503
|
-
|
|
50504
|
-
|
|
50505
|
-
|
|
50506
|
-
|
|
50507
|
-
|
|
50508
|
-
|
|
50509
|
-
label: t("uiLibrary.dishwasher.start", "Start"),
|
|
50510
|
-
busy: busy || !startable,
|
|
50511
|
-
active: running,
|
|
50512
|
-
onClick: () => press(() => cap.start({})),
|
|
50513
|
-
children: /* @__PURE__ */ jsx(Play, { className: "h-3 w-3" })
|
|
50514
|
-
}),
|
|
50515
|
-
/* @__PURE__ */ jsx(DishwasherIconButton, {
|
|
50516
|
-
label: paused ? t("uiLibrary.dishwasher.resume", "Resume") : t("uiLibrary.dishwasher.pause", "Pause"),
|
|
50517
|
-
busy: busy || !(running || paused),
|
|
50518
|
-
active: paused,
|
|
50519
|
-
onClick: () => press(() => paused ? cap.resume({}) : cap.pause({})),
|
|
50520
|
-
children: /* @__PURE__ */ jsx(Pause, { className: "h-3 w-3" })
|
|
50521
|
-
})
|
|
50522
|
-
]
|
|
50523
|
-
});
|
|
50524
|
-
}
|
|
50614
|
+
if (layout === "compact") return /* @__PURE__ */ jsxs("div", {
|
|
50615
|
+
className: "inline-flex items-center gap-1.5 max-w-full",
|
|
50616
|
+
children: [
|
|
50617
|
+
display.doorOpen === true && /* @__PURE__ */ jsx("span", {
|
|
50618
|
+
className: "inline-flex text-warning shrink-0",
|
|
50619
|
+
title: t("uiLibrary.dishwasher.doorOpen", "Door open"),
|
|
50620
|
+
"aria-label": t("uiLibrary.dishwasher.doorOpen", "Door open"),
|
|
50621
|
+
children: /* @__PURE__ */ jsx(DoorOpen, { className: "h-3.5 w-3.5" })
|
|
50622
|
+
}),
|
|
50623
|
+
/* @__PURE__ */ jsx("span", {
|
|
50624
|
+
className: cn("text-xs font-medium tabular-nums shrink-0", meta.tone),
|
|
50625
|
+
children: meta.label
|
|
50626
|
+
}),
|
|
50627
|
+
display.program != null && /* @__PURE__ */ jsx("span", {
|
|
50628
|
+
className: "text-xs text-foreground-subtle truncate max-w-[7rem]",
|
|
50629
|
+
title: display.program,
|
|
50630
|
+
children: featureLabel(display.program)
|
|
50631
|
+
}),
|
|
50632
|
+
display.remainingSeconds != null && /* @__PURE__ */ jsxs("span", {
|
|
50633
|
+
className: "inline-flex items-center gap-0.5 text-xs text-foreground-subtle tabular-nums shrink-0",
|
|
50634
|
+
children: [/* @__PURE__ */ jsx(Timer, { className: "h-3 w-3" }), formatDuration(display.remainingSeconds, t)]
|
|
50635
|
+
}),
|
|
50636
|
+
/* @__PURE__ */ jsx(DishwasherIconButton, {
|
|
50637
|
+
label: t("uiLibrary.dishwasher.start", "Start"),
|
|
50638
|
+
busy: busy || !startable,
|
|
50639
|
+
active: running,
|
|
50640
|
+
onClick: () => press(() => cap.start({})),
|
|
50641
|
+
children: /* @__PURE__ */ jsx(Play, { className: "h-3 w-3" })
|
|
50642
|
+
}),
|
|
50643
|
+
/* @__PURE__ */ jsx(DishwasherIconButton, {
|
|
50644
|
+
label: paused ? t("uiLibrary.dishwasher.resume", "Resume") : t("uiLibrary.dishwasher.pause", "Pause"),
|
|
50645
|
+
busy: busy || !(running || paused),
|
|
50646
|
+
active: paused,
|
|
50647
|
+
onClick: () => press(() => paused ? cap.resume({}) : cap.pause({})),
|
|
50648
|
+
children: /* @__PURE__ */ jsx(Pause, { className: "h-3 w-3" })
|
|
50649
|
+
})
|
|
50650
|
+
]
|
|
50651
|
+
});
|
|
50525
50652
|
const programs = display.availablePrograms;
|
|
50526
50653
|
return /* @__PURE__ */ jsxs("div", {
|
|
50527
50654
|
className: "flex flex-col gap-3 rounded-lg border border-border bg-surface p-4",
|
|
@@ -50572,25 +50699,14 @@ function DishwasherPanel({ trpc, deviceId, layout }) {
|
|
|
50572
50699
|
}),
|
|
50573
50700
|
/* @__PURE__ */ jsxs("div", {
|
|
50574
50701
|
className: "flex flex-wrap items-center gap-x-3 gap-y-1.5",
|
|
50575
|
-
children: [
|
|
50576
|
-
|
|
50577
|
-
|
|
50578
|
-
|
|
50579
|
-
|
|
50580
|
-
|
|
50581
|
-
|
|
50582
|
-
|
|
50583
|
-
}),
|
|
50584
|
-
display.doorOpen === true && /* @__PURE__ */ jsxs("span", {
|
|
50585
|
-
className: "inline-flex items-center gap-1 text-xs text-warning",
|
|
50586
|
-
children: [/* @__PURE__ */ jsx(DoorOpen, { className: "h-3.5 w-3.5" }), t("uiLibrary.dishwasher.doorOpen", "Door open")]
|
|
50587
|
-
}),
|
|
50588
|
-
display.activeEvents.map((event) => /* @__PURE__ */ jsx("span", {
|
|
50589
|
-
className: "text-xs text-warning",
|
|
50590
|
-
title: event,
|
|
50591
|
-
children: featureLabel(event)
|
|
50592
|
-
}, event))
|
|
50593
|
-
]
|
|
50702
|
+
children: [display.doorOpen === true && /* @__PURE__ */ jsxs("span", {
|
|
50703
|
+
className: "inline-flex items-center gap-1 text-xs text-warning",
|
|
50704
|
+
children: [/* @__PURE__ */ jsx(DoorOpen, { className: "h-3.5 w-3.5" }), t("uiLibrary.dishwasher.doorOpen", "Door open")]
|
|
50705
|
+
}), display.activeEvents.map((event) => /* @__PURE__ */ jsx("span", {
|
|
50706
|
+
className: "text-xs text-warning",
|
|
50707
|
+
title: event,
|
|
50708
|
+
children: featureLabel(event)
|
|
50709
|
+
}, event))]
|
|
50594
50710
|
}),
|
|
50595
50711
|
display.operationState === "Error" && /* @__PURE__ */ jsxs("div", {
|
|
50596
50712
|
className: "inline-flex items-center gap-1 text-xs text-danger",
|
|
@@ -67997,8 +68113,8 @@ var MotionZonesSettings = lazy(() => import("./MotionZonesSettings-DR1g9ja3.js")
|
|
|
67997
68113
|
/** Lazy-wrapped `SceneMonitorEditor` — code-split off the main bundle for the
|
|
67998
68114
|
* same reason: it mounts `MaskShapeCanvas`, which chains react-konva. Render
|
|
67999
68115
|
* inside `<Suspense>`; the admin-ui `/scenes` dialog is its only caller. */
|
|
68000
|
-
var SceneMonitorEditor = lazy(() => import("./SceneMonitorEditor-
|
|
68116
|
+
var SceneMonitorEditor = lazy(() => import("./SceneMonitorEditor-CrxB3ZPL.js").then((m) => ({ default: m.SceneMonitorEditor })));
|
|
68001
68117
|
/** Lazy-wrapped `PrivacyMaskSettings` — code-split off the main bundle. */
|
|
68002
|
-
var PrivacyMaskSettings = lazy(() => import("./PrivacyMaskSettings-
|
|
68118
|
+
var PrivacyMaskSettings = lazy(() => import("./PrivacyMaskSettings-C9wfHkiB.js").then((m) => ({ default: m.PrivacyMaskSettings })));
|
|
68003
68119
|
//#endregion
|
|
68004
|
-
export { ShieldOff as $, CloudFog as $n, LoaderCircle as $t, TrainFront as A, AddProviderEntryDialog, AddonGlobalSettingsForm, AdminLinkQuickAction, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, Film as An, AppShell, Bird as Ar, ArcKnob, Pause as At, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutomationHeroCard, AutomationInlineControl, AutotrackSection, SunMedium as B, BOOLEAN_STATES, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, BackToStepsButton, Badge, BarSeries, BatteryBadge, DoorOpen as Bn, BottomSheet, Ban as Br, Breadcrumb, BrightnessPanel, MonitorPlay as Bt, Button, ButtonControl, ButtonHeroCard, Undo2 as C, CENTER, CHART_SERIES_TOKENS, CHIP_ACTIVE, CHIP_BASE, CHIP_INACTIVE, CLASS_COLORS, COLUMN_BREAKPOINT_CLASS, COLUMN_PRIORITY, COMMIT_DEDUPE_TOLERANCE_MS, COMMIT_DEDUPE_WINDOW_MS, CONSUMABLE_LOW_PERCENT, CONTROL_CAP_NAMES, CONTROL_FILLS, CameraStreamPlayer, Card, ChartFrame, ChartPlaceholder, ChartSwatch, ChartWindowToggle, Checkbox, ChildSectionAccordion, ClimatePanel, Gamepad2 as Cn, CodeBlock, CollapsibleCard, ConfigFormBuilder, FormField as ConfigFormField, ConfigNotificationTargetMultiSelectFieldView, ConfigNotificationTargetSelectFieldView, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumableLevelBadge, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, Cable as Cr, Play as Ct, CustomFieldRenderersProvider, TrendingDown as D, DATA_RECORDS_KIND_PARAM, DATA_RECORDS_OWNER_PARAM, DATA_RECORD_FACET_GROUPS, DEFAULT_COLOR, DEFAULT_PAGINATION_LABELS, DEVICE_COLUMNS, DEVICE_EXPORT_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_OPTIONS, DEVICE_PICKER_GROUP_STORAGE_KEY, DEVICE_ROLE_META, DEVICE_TYPE_CONTROL, DEVICE_TYPE_META, DataRecordsHub, DataTable, DataTableFilterBar, DataTablePager, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceExportSetup, DeviceFilterBar, DeviceGrid, DeviceHistoryView, DeviceItem, DeviceList, DeviceMultiSelectField, DevicePicker, DeviceQuickDetailProvider, DeviceSelectField, DeviceSelectorPicker, DeviceStepMatrix, DevicesFailedLine, DevicesLoadingLine, DevicesWidenWarning, Dialog, DialogBody, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, Flashlight as Dn, DoorbellRecentPanel, Bot as Dr, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, Phone as Dt, DummyHeroCard, DummyInline, TriangleAlert as E, EMPTY_DATA_TABLE_FILTER, EMPTY_HISTORY_PANELS, EVENT_KIND_ICONS, EmptyState, FlaskConical as En, EndpointResultsCard, EndpointTestCard, EntryJsonSchemaForm, Box as Er, ErrorBox, Pin as Et, EventKindGlyph, EventStream, ExtensionsPanel, Thermometer as F, FAST_ICON_GLYPHS, FILL, FLEET_LIST_GC_TIME_MS, FLEET_LIST_QUERY_KEY, FLEET_LIST_STALE_TIME_MS, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, ExternalLink as Fn, FormField$1 as FormField, BatteryWarning as Fr, Move as Ft, Snowflake as G, GAP_INTERVAL_FACTOR, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GateBadge, GateControl, Cpu as Gn, ArrowLeft as Gr, GripTrack, GroupedModelSelector, GroupedTilePicker, Menu as Gt, Square as H, HISTORY_PAGE_PATH, HISTORY_PANELS_NAMESPACE, HISTORY_SELECTION_MAX, HISTORY_WINDOW_IDS, HISTORY_WINDOW_MS, HOST_WIDGETS, HUB_SESSION_RUN_MS, HistoryChart, HistoryWindowBar, HlsVideo, Dog as Hn, HoverZoomImage, ArrowUp as Hr, Minimize2 as Ht, HubSessionTestCard, HumidifierHeroCard, HumidifierInlineControl, Target as I, INPUT_COMPACT, INPUT_SHELL, IconAction, IconButton, IconPicker, ImageHeroCard, ImageInlineControl, ImageSelector, EllipsisVertical as In, InferenceConfigSelector, Input, BatteryMedium as Ir, MoveVertical as It, ItemFormDialog, SkipForward as J, Cloud as Jn, AlarmSmoke as Jr, MapPin as Jt, Smartphone as K, KebabMenu, KeyValueList, Copy as Kn, ArrowDown as Kr, Megaphone as Kt, Tag as L, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LayeredSettingsForm, LightHeroCard, LightInlineControl, Droplets as Ln, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, BatteryLow as Lr, MoveHorizontal as Lt, ToggleRight as M, MEDIA_GRID, MODE_COLOR, MaskShapeCanvas, MediaCard, MediaGrid, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, Fan as Mn, MobileDrawer, ModelPicker, MotionZonesSettings, Bell as Mr, Network as Mt, ToggleLeft as N, NAVIGATION_DRIVE_INTERVAL_MS, NODE_COLOR_IDS, NatResultCard, NavigationPanel, NetworkLinkBadge, Eye as Nn, NodeMultiSelectField, NodePicker, NodeSelectField, NotificationTargetSelectField, NotificationTargetsField, BellRing as Nr, Navigation as Nt, TrendingUp as O, OCCUPANCY_KEY, OPTION_SELECT_SEARCH_MIN_OPTIONS, OfflineBadge, FlashlightOff as On, OptionSelect, Bone as Or, Pencil as Ot, Timer as P, PAGE_SIZE_ALL, PHASE_CONFIG, PICKER_CHIP_LIMIT, PICKER_DEFAULT_GROUP_BY, PICKER_GROUP_BY_MODES, PICKER_GROUP_COLLAPSE_AT, PICKER_NONE_KEY, PICKER_NOUN_PLURAL, PICKER_NO_FILTERS, PICKER_PAGE_SIZE, PICKER_SEARCH_DEBOUNCE_MS, PICKER_WINDOW, PRIORITY, PTZOverlay, PageHeader, PageShell, PageSizeSelect, Pagination, PasswordInput, PhaseIcon, PipelineBuilder, PipelineRuntimeSelector, PipelineStep, PlaceholderChipField, PlayerOverlaysProvider, EyeOff as Pn, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, Battery as Pr, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, ProviderEntryPills, Music as Pt, PtzPanel, Shield as Q, CloudLightning as Qn, QrCode, LocateFixed as Qt, Sunrise as R, RECONNECT_POLICY, RECORDED_PLAYBACK_MODES, RESOLUTION_BUCKET_MS, RIGHT, ROI_AREA_WARN_FRACTION, ROLE_DESCRIPTOR, ROOT_DETECTOR_STEP_ID, RadialGauge, RecordEntriesPanel, RecordedPlaybackProvider, RecordingPanel, ResponseLog, RetrainReviewBadge, Droplet as Rn, RoleDisplayDefaultsFromServer, RoleDisplayDefaultsProvider, RoleNodePill, RootModelSourceControl, RootSuppliedModelNote, BatteryFull as Rr, MousePointerClick as Rt, RunReport, Unlink2 as S, SCENE_CAPTURE_VARIANTS, SECRET_MASK_PLACEHOLDER, SECRET_REVEAL_MS, SECTION_BODY, SECTION_CARD, SECTION_HEADER, SETTING_ROW, SETTING_ROW_LABEL, SETTING_ROW_STACK_BREAKPOINT, SETTING_ROW_VALUE, SETTING_ROW_VALUE_TEXT, SNAPSHOT_MEDIA_PATH, SPLIT_PANEL_OUTER, SPLIT_PANEL_SIDE, STACK_GAP, STATE_COLOR, STEP_DOCK_WIDTH_PX, SUBJECT_PATH_DWELL_EPS, SUBJECT_PATH_FULL_FRAME_COVERAGE, SUBJECT_PATH_MAX_POINTS, SceneMonitorEditor, ScopePicker, ScriptHeroCard, ScriptInlineControl, ScrollArea, SecretFieldControl, SecretRevealProvider, SectionCard, SectionToolbar, SectionedPage, SegmentedChoice, Select, SelectedChip, SemanticBadge, SendFrameToTrainingButton, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, SettingRow, Sidebar, SidebarItem, Skeleton, SlideToggle, Gauge as Sn, SnapshotButton, SortHeaderButton, Sparkline, Camera as Sr, Plus as St, StableTabPanel, StatCard, StateTimeline, StateValuesStream, StatusBadge, StepDetailDock, StepInspectorPanel, StepModelRow, StepTimings, Stepper, StorageRecordsPanel, StreamBrokerSelector, StreamDebugOverlay, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, Truck as T, TABLE_SCROLL_MAX_H, TEXT_FIELD_LABEL, TEXT_HINT, TEXT_METRIC, TEXT_SECTION_LABEL, TEXT_VALUE, TIMEZONES, Tabs, TabsContent, TabsList, TabsTrigger, TapToggle, ThemeProvider, ThermostatHeroCard, ThermostatInlineControl, TimeSeriesChart, TimezoneSelector, Footprints as Tn, Tooltip, TooltipContent, TooltipTrigger, Bug as Tr, TrainingBaseModelPicker, TrainingCollectionPicker, Pipette as Tt, Sprout as U, UiTextProvider, UiTrans, Database as Un, UnitPicker, ArrowUpToLine as Ur, Mic as Ut, Star as V, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, DoorClosed as Vn, VodPlaybackProvider, Baby as Vr, Minus as Vt, Sparkles as W, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, Crosshair as Wn, ArrowRight as Wr, MessageSquare as Wt, Siren as X, CloudSnow as Xn, Activity as Xr, Lock as Xt, SkipBack as Y, CloudSun as Yn, AirVent as Yr, Mail as Yt, Ship as Z, CloudRain as Zn, ZoneEditingProvider, LockOpen as Zt, UtensilsCrossed as _, Hand as _n, Check as _r, QrCode$1 as _t, Wrench as a, acceleratorLabel, acceleratorShortLabel, agentColumnKey, alignSeries, allDeviceTypeFilterOptions, LayoutGrid as an, anchorNow, applyFleetQueryDefaults, applyPickerFilters, CirclePlus as ar, ariaSortForColumn, assignNodeColorId, Search as at, axisTicks, UserCheck as b, badgeFor, bindsToModel, Grid2x2 as bn, booleanLabels, Cast as br, PowerOff as bt, bucketTotals, buildColorByNodeId, buildDataRecordRows, buildPeerConnectionConfig, buildStepTreeFromSchema, buildSubjectPath, buildTimeSeriesModel, Wifi as c, catalogHasDraft, chartKeys, chartSeriesStyle, childEntityId, childListName, chipOverflow, chunk, classifyAddressScope, classifyCapability, classifySessionVerdict, clearPickerGroup, clusterRootModelIds, cn, colorIdForNode, columnsForContext, compareSrflxMappings, computePageButtons, consumableItemLevel, consumableLevelBarClass, consumableLevelLabel, consumableLevelVariant, containerChildToRef, countableDevices, coverHighlight, coverageLine, CircleCheck as cr, createAddonI18n, createSharedContext, createTheme, Save as ct, currentAddonLanguage, cursorFractionFor, WifiLow as d, darkColors, dataRecordContents, dataRecordKey, dataRecordSearchText, dataRecordType, dataTableFacetGroups, dataTableFacets, decodeCustomWindow, decodeSeriesRef, defaultAxisSpec, defaultOfField, defaultSelectClusterRoots, defaultSingleClusterRoot, defaultTheme, defaultUiText, deriveDeviceKind, deriveWebrtcDebugStats, describeDeviceSelector, deviceIntegrationResolver, deviceListStateOf, deviceMatchesFilter, deviceOptionLabel, deviceRoleMeta, deviceRoleMetaOf, deviceTypeLabel, deviceTypeMeta, deviceTypeMetaOf, devicesToOptions, ImageOff as dn, dockBox, ChevronsUpDown as dr, draftFromQuery, RotateCw as dt, effectivePageSize, emptyDevicesWidens, emptySessionRun, List as en, encodeCustomWindow, encodeSeriesRef, energyBuckets, ensureMfHostInit, Clock as er, ShieldCheck as et, eventKindLabel, WifiHigh as f, filterDataTableRows, filterDeviceOptions, filterOccupancyLines, filterOptions as filterOptionSelectOptions, filterPickerDevices, finalizeSessionRun, findTimezone, flattenPickerGrouping, flattenPickerRows, fleetViewOf, House as fn, formatChartBytes, formatChartNumber, formatChartValue, formatControlDateTime, formatLastSeen, formatNumeric, formatSettingValue, formatSpan, formatTimeLabel, ChevronsDownUp as fr, freezeVerdict, RotateCcw as ft, fuzzyMatch, Vibrate as g, gapThresholdMs, getClassColor, getPhaseVisual, HardDrive as gn, ChevronDown as gr, groupAgentColumns, groupChildrenByLayout, groupDeviceSeries, groupPickerDevices, groupPickerDevicesBy, Radar as gt, Volume2 as h, hardwareLabel, historyPageHref, Hash as hn, ChevronLeft as hr, RadioTower as ht, hubOrigin, hubPath, hubUrl, hubWsUrl, humanDuration, humanizeName, humidifierTint, X as i, iconGlyphsFailed, iconGlyphsLoaded, Leaf as in, initialScrubState, insertAtSelection, CircleQuestionMark as ir, isAbsentProvider, isByteUnit, isConsumableLevelField, isDataTableFilterActive, isDrawableSubjectPath, isFieldVisible, isGroupExpanded, isHistoryWindowId, isKeychainFieldValue, isRedactedSecret, isRefusal, isSecretField, isValueField, Server as it, Tractor as j, Feather as jn, Bike as jr, Package as jt, Trash2 as k, Flame as kn, Blinds as kr, PawPrint as kt, WifiZero as l, lawnMowerActivityMeta, lightColors, linePoints, Inbox as ln, loadIconGlyphs, loadRemoteBundle, CircleCheckBig as lr, Sailboat as lt, lucideExportName, VolumeX as m, makeScrubBridge, mapRootDetectorPlacements, mergeSecretForSubmit, metadataEntries, metadataString, mirror, Heater as mn, mountAddonPage, mountPath, ChevronRight as mr, Radio as mt, ZoomIn as n, nextGridPosition, nextReconnectAction, nextSort, nextSortDirection, nextTableSort, niceMax, niceRange, Link2 as nn, nodeColorClass, nodeSoftBgClass, nodeTextColorClass, normalizeForSearch, normalizeLanguage, normalizeSelection, CircleX as nr, Share2 as nt, Workflow as o, occupancyFacets, occupancyLines, offListSelections, Laugh as on, openTopLayer, optionSearchText as optionSelectSearchText, CirclePause as or, orphanDeviceLabel, ScrollText as ot, overrideEntityIdFromLink, Waves as p, pageRows, pageSizeLabel, paginateRows, parentDetailOf, parseCapKey, parseConsumableLevel, parseIceCandidate, parsePickerGroupBy, parseProducerKey, parseRecordedServerMessage, partitionSelected as partitionOptionSelectSelected, partitionSuggested, pickerFacetFilterShown, pickerFacetKey, pickerFacetOptions, pickerFiltersActive, pickerGroupKey, pickerHiddenSelectedCount, pickerLocationKey, pickerQueryTokens, pickerRowFacts, pickerSearchText, pickerZoneFilterSuspended, pinnedStreamChoices, placePopover, History as pn, ChevronUp as pr, previousWindow, projectSubjectPath, providerIcons, RefreshCw as pt, SlidersHorizontal as q, Cog as qn, ArrowDownToLine as qr, Maximize2 as qt, Zap as r, readHistory, readHistoryPanels, readItemId, readStoredGroupBy, reduceSessionRun, registerAddonBundle, renderMarkup, renderTagged, resetHubMountForTests, resetPickerFilters, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDeviceIntegration, resolveDisplayIcon, resolveEffectiveDefaultModel, resolveEffectiveStepModel, resolveEventKindIcon, resolveHistoryWindow, resolveSearchable as resolveOptionSelectSearchable, resolveParentNames, resolvePrimaryChild, resolveSelectedDevices, resolveSensorDisplay, resolveStepDefaultModel, retrainReviewBadgeLook, Lightbulb as rn, roiTooLarge, rootSourceState, routerBasename, CircleStop as rr, Settings as rt, Wind as s, sameLocationSuggestions, scrubReducer, searchSteps, secretDisplayValue, secretSubmitValue, segmentsFromChanges, selectPickerGroup, selectedDeviceOptions, serializeRecordedCommand, seriesRefId, settingsModelIdFor, sharedGapSpans, shiftPoints, shouldCommit, shouldEmit, shouldShowAddNewFooter, shouldShowUseQueryRow, shouldUseSingleNode, showsNoCamerasHint, Info as sn, sortRows, sortRowsByColumn, CircleDot as sr, Scan as st, stackBuckets, stackSeries, stateAt, stateRow, stateStyle, statusIcons, statusLine, stepFieldDomId, stepHasModelForFormat, stepLocalFields, stepModelOptions, stripParentNamePrefix, subjectPathSampleFromBox, subjectPathSvgPoints, summarizeHubCandidates, swatchFillClass, swatchLineClass, ZoomOut as t, tabForSelector, tankAlert, themeToCss, themeToRootCss, timeInState, ListChecks as tn, toStationaryOverlayBox, toggleDataTableFacet, toggleDataTableGroupFacet, togglePickerDevice, togglePickerKey, Clapperboard as tr, trainingRefusalText, translateAddonKey, trpc, ShieldAlert as tt, typeLabel, WifiOff as u, Image as un, unitAxes, CircleAlert as ur, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsGetIntegrationSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, useAddonT, useAddonWidgetsListWidgets, useAddonsApplyAutoUpdateToAll, useAddonsCancelJob, useAddonsCustom, useAddonsForceRefresh, useAddonsGetAddonAutoUpdate, useAddonsGetAutoUpdateSettings, useAddonsGetJob, useAddonsGetLastRestart, useAddonsGetLogs, useAddonsGetVersions, useAddonsInstallFromWorkspace, useAddonsInstallPackage, useAddonsIsWorkspaceAvailable, useAddonsList, useAddonsListCapabilityProviders, useAddonsListFrameworkPackages, useAddonsListInstallations, useAddonsListJobs, useAddonsListPackages, useAddonsListUpdates, useAddonsListWorkspacePackages, useAddonsOnAddonLogs, useAddonsReloadPackages, useAddonsRestartAddon, useAddonsRestartServer, useAddonsRetryLoad, useAddonsRollbackPackage, useAddonsSearchAvailable, useAddonsSetAddonAutoUpdate, useAddonsSetAutoUpdateSettings, useAddonsSetCapabilityProviderEnabled, useAddonsStartJob, useAddonsUninstallPackage, useAddonsUpdatePackage, useAirQualitySensorGetStatus, useAlarmPanelArm, useAlarmPanelDisarm, useAlarmPanelGetStatus, useAlarmPanelTrigger, useAlert, useAlertsDismiss, useAlertsEmit, useAlertsGetUnreadCount, useAlertsList, useAlertsMarkAllRead, useAlertsMarkRead, useAlertsUpdate, useAllWidgets, useAmbientLightSensorGetStatus, useAudioAnalysisApplyDeviceSettingsPatch, useAudioAnalysisGetDeviceLiveContribution, useAudioAnalysisGetDeviceSettingsContribution, useAudioAnalysisResolveDeviceSettings, useAudioAnalyzerAnalyseChunk, useAudioAnalyzerAttachDevice, useAudioAnalyzerClassify, useAudioAnalyzerDetachDevice, useAudioAnalyzerDispose, useAudioAnalyzerIsReady, useAudioAnalyzerReprobeAudioEngine, useAudioCodecCanHandle, useAudioCodecCloseSession, useAudioCodecCreateDecodeSession, useAudioCodecCreateEncodeSession, useAudioCodecFlushEncode, useAudioCodecListActiveSessions, useAudioCodecListSupportedCodecs, useAudioCodecPullEncoded, useAudioCodecPullPcm, useAudioCodecPushEncodedFrame, useAudioCodecPushPcm, useAudioMetricsGetCurrentSnapshot, useAudioMetricsGetHistory, useAutomationControlDisable, useAutomationControlEnable, useAutomationControlGetStatus, useAutomationControlTrigger, useBackupCancel, useBackupCheckBackupKey, useBackupDelete, useBackupDeleteSchedule, useBackupDisableEncryption, useBackupGetEncryption, useBackupGetEntries, useBackupList, useBackupListArchives, useBackupListAvailableDatabases, useBackupListDestinations, useBackupListLocations, useBackupListRuns, useBackupListSchedules, useBackupPreviewSchedule, useBackupRestore, useBackupSetupEncryption, useBackupTrigger, useBackupUpsertDestinationPolicy, useBackupUpsertSchedule, useBatteryGetStatus, useBatteryWakeForStream, useBinaryGetStatus, useBrightnessGetStatus, useBrightnessSetBrightness, useBrokerAdd, useBrokerGet, useBrokerGetBrokerConfig, useBrokerGetSettings, useBrokerGetSettingsSchema, useBrokerGetState, useBrokerGetStatus, useBrokerList, useBrokerListProviders, useBrokerPublish, useBrokerRemove, useBrokerSetSettings, useBrokerSubscribe, useBrokerTestConnection, useBrokerTestSettings, useBrokerUnsubscribe, useButtonPress, useCalendarsGetPreferences, useCalendarsListCalendars, useCalendarsListEvents, useCalendarsSetCalendarPreference, useCameraCredentialsGetCredentials, useCameraCredentialsGetStatus, useCameraGridLayoutApplyDeviceSettingsPatch, useCameraGridLayoutGetDeviceLiveContribution, useCameraGridLayoutGetDeviceSettingsContribution, useCameraGridLayoutGetLayout, useCameraGridLayoutSaveLayout, useCameraPipelineConfigApplyDeviceSettingsPatch, useCameraPipelineConfigGetDeviceLiveContribution, useCameraPipelineConfigGetDeviceSettingsContribution, useCameraStreamsGetBrokerStreams, useCameraStreamsGetCameraStreams, useCameraStreamsGetProfileRtspEntries, useCameraStreamsGetRtspEntries, useCameraStreamsPickStream, useCapabilityPresence, useCarbonMonoxideGetStatus, useClimateControlGetStatus, useClimateControlSetFanMode, useClimateControlSetMode, useClimateControlSetPreset, useClimateControlSetSwingHorizontal, useClimateControlSetSwingVertical, useClimateControlSetTarget, useClimateControlSetTargetHumidity, useClimateControlSetTargetRange, useClusterNodes, useClusterTopology, useColorGetStatus, useColorSetColor, useConfirm, useConnectionTestDescribeTest, useConnectionTestTestSettings, useConnectivityGetStatus, useConsumablesGetStatus, useConsumablesReset, useContactGetStatus, useContainerChildren, useControlGetStatus, useControlSetValue, useCoreBlocksCompile, useCoreBlocksCreate, useCoreBlocksCreateComposition, useCoreBlocksDelete, useCoreBlocksGet, useCoreBlocksGetBlockSettings, useCoreBlocksGetComposition, useCoreBlocksGetCustomization, useCoreBlocksGetTypeDefs, useCoreBlocksList, useCoreBlocksListComposableCaps, useCoreBlocksListCompositions, useCoreBlocksMigrateRawSecrets, useCoreBlocksRestart, useCoreBlocksSetEnabled, useCoreBlocksUpdate, useCoreBlocksUpdateBlockSettings, useCoreBlocksUpdateComposition, useCoreBlocksValidateComposition, useCoverClose, useCoverGetStatus, useCoverOpen, useCoverSetPosition, useCoverSetTiltPosition, useCoverStop, useCustomFieldRenderer, useDataTableFilter, useDayNightGetOptions, useDayNightGetStatus, useDayNightSetSettings, useDebouncedString, useDecoderGetInfo, useDecoderReprobeHwaccel, useDetectionPipelineApplyDeviceSettingsPatch, useDetectionPipelineGetDeviceLiveContribution, useDetectionPipelineGetDeviceSettingsContribution, useDevShell, useDevice, useDeviceAdminLink, useDeviceAdminLinkGetAdminLink, useDeviceAdoptionAdopt, useDeviceAdoptionGetCandidate, useDeviceAdoptionGetStatus, useDeviceAdoptionListCandidateFilters, useDeviceAdoptionListCandidates, useDeviceAdoptionRefresh, useDeviceAdoptionRelease, useDeviceAdoptionResync, useDeviceAutotrack, useDeviceBattery, useDeviceCapSlice, useDeviceCapability, useDeviceCredentialsDeleteDeviceCredential, useDeviceCredentialsGetDeviceCaStatus, useDeviceCredentialsGetDeviceCertificateSettings, useDeviceCredentialsListDeviceCredentials, useDeviceCredentialsRenameDeviceCredential, useDeviceCredentialsRevokeDeviceCredential, useDeviceCredentialsSetDeviceCertificateSettings, useDeviceCredentialsStartEnrollment, useDeviceDetections, useDeviceDiscoveryAdoptDevice, useDeviceDiscoveryGetStatus, useDeviceDiscoveryListDiscovered, useDeviceDiscoveryRefreshDiscovery, useDeviceDiscoveryReleaseDevice, useDeviceExportApplyDeviceSettingsPatch, useDeviceExportExposeDevice, useDeviceExportGetDeviceLiveContribution, useDeviceExportGetDeviceSettingsContribution, useDeviceExportGetStatus, useDeviceExportListExposedDevices, useDeviceExportListSupportedDeviceKinds, useDeviceExportUnexposeDevice, useDeviceExtensionListCandidates, useDeviceExtensionListSlots, useDeviceExtensionListSources, useDeviceExtensionSetSlot, useDeviceHistoryDeclareSeries, useDeviceHistoryGetDeviceEnabled, useDeviceHistoryGetStatus, useDeviceHistoryListNodeSeries, useDeviceHistoryListSeries, useDeviceHistoryQuery, useDeviceHistoryQueryMany, useDeviceHistoryQueryNode, useDeviceHistoryRecord, useDeviceHistoryRecordBuckets, useDeviceHistorySetDeviceEnabled, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionCancelJob, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionListJobs, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAdoptionStartJob, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyInitialMeta, useDeviceManagerCleanupDeletedDevicesData, useDeviceManagerCreateDevice, useDeviceManagerDisable, useDeviceManagerDiscoverAllProviders, useDeviceManagerDiscoverDevices, useDeviceManagerDiscoverProvider, useDeviceManagerDiscoveryProviders, useDeviceManagerEnable, useDeviceManagerGetAllBindings, useDeviceManagerGetBindings, useDeviceManagerGetBindingsBatch, useDeviceManagerGetChildren, useDeviceManagerGetChildrenBatch, useDeviceManagerGetConfigSchema, useDeviceManagerGetCreationSchema, useDeviceManagerGetDevice, useDeviceManagerGetDeviceAggregate, useDeviceManagerGetDeviceLiveInfoAggregate, useDeviceManagerGetDeviceSettingsAggregate, useDeviceManagerGetDeviceStatusAggregate, useDeviceManagerGetDeviceStatusAggregateBatch, useDeviceManagerGetLinkedDevices, useDeviceManagerGetLinkedDevicesBatch, useDeviceManagerGetRoleDisplayDefaults, useDeviceManagerGetSettingsSchema, useDeviceManagerGetStreamProfileMap, useDeviceManagerGetStreamSources, useDeviceManagerGetWireableFields, useDeviceManagerGetWrapperActivation, useDeviceManagerListAll, useDeviceManagerListBindableCapsForDeviceType, useDeviceManagerListDeletedSince, useDeviceManagerListDeviceIdsByCaps, useDeviceManagerListLocationDescriptions, useDeviceManagerListLocationIcons, useDeviceManagerListLocations, useDeviceManagerListPersistedByAddon, useDeviceManagerListSiteZones, useDeviceManagerListWrappersForCap, useDeviceManagerLoadConfig, useDeviceManagerLoadMeta, useDeviceManagerLoadRuntimeState, useDeviceManagerMigrateDevice, useDeviceManagerPersistConfig, useDeviceManagerProbeStreams, useDeviceManagerProviderCreationType, useDeviceManagerProviderDiscoveryParamsSchema, useDeviceManagerRegisterDevice, useDeviceManagerRemove, useDeviceManagerRemoveByIntegration, useDeviceManagerRemoveDevice, useDeviceManagerRemoveLocation, useDeviceManagerRemoveSiteZone, useDeviceManagerRenameLocation, useDeviceManagerRenameSiteZone, useDeviceManagerRunDeviceAction, useDeviceManagerSetChildLayout, useDeviceManagerSetDisabled, useDeviceManagerSetDisplay, useDeviceManagerSetIntegrationId, useDeviceManagerSetLinkDeviceId, useDeviceManagerSetLocation, useDeviceManagerSetLocationDescription, useDeviceManagerSetLocationIcon, useDeviceManagerSetLocationZone, useDeviceManagerSetMetadata, useDeviceManagerSetName, useDeviceManagerSetPrimaryChildEntityId, useDeviceManagerSetRole, useDeviceManagerSetRoleDisplayDefaults, useDeviceManagerSetSiteZone, useDeviceManagerSetStreamProfileMap, useDeviceManagerSetType, useDeviceManagerSetWrapperActive, useDeviceManagerTestCreationField, useDeviceManagerTestField, useDeviceManagerUpdateConfig, useDeviceManagerUpdateDeviceField, useDeviceManagerUpdateDeviceFieldsBatch, useDeviceNetworkLink, useDeviceOpsGetConfigEntries, useDeviceOpsGetRawState, useDeviceOpsGetSettingsSchema, useDeviceOpsGetStreamSources, useDeviceOpsRemoveDevice, useDeviceOpsRunAction, useDeviceOpsSetConfig, useDeviceProviderAdoptDiscoveredDevice, useDeviceProviderCreateDevice, useDeviceProviderDiscoverDevices, useDeviceProviderGetChildCreationSchema, useDeviceProviderGetDevices, useDeviceProviderGetDiscoveryParamsSchema, useDeviceProviderGetManualCreationType, useDeviceProviderGetStatus, useDeviceProviderReloadDevice, useDeviceProviderStart, useDeviceProviderStop, useDeviceProviderSupportsDiscovery, useDeviceProviderSupportsManualCreation, useDeviceProviderTestCreationField, useDeviceProxy, useDeviceQuickDetailOpen, useDeviceSeriesList, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateClaimFields, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetNativeCapSlice, useDeviceStateGetSnapshot, useDeviceStateListClaims, useDeviceStatePatchOwnedFields, useDeviceStateReleaseClaim, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, useDishwasherGetOptions, useDishwasherGetStatus, useDishwasherPause, useDishwasherResume, useDishwasherSetChildLock, useDishwasherSetExtraDry, useDishwasherSetHalfLoad, useDishwasherSetHygienePlus, useDishwasherSetIntensiveZone, useDishwasherSetOption, useDishwasherSetPower, useDishwasherSetProgram, useDishwasherSetVarioSpeedPlus, useDishwasherStart, useDishwasherStop, useDisplayIconResolver, useDoorbellEvents, useDoorbellGetStatus, useEnumSensorGetStatus, useEventEmitterGetStatus, useEventInvalidation, useEventStreamLatest, useEventStreamMap, useFaceGalleryAssignFace, useFaceGalleryAssignFaces, useFaceGalleryAuditIdentitySamples, useFaceGalleryCreateIdentity, useFaceGalleryDeleteFace, useFaceGalleryDeleteIdentity, useFaceGalleryGetFaceByTrack, useFaceGalleryGetFaceMedia, useFaceGalleryListIdentities, useFaceGalleryListIdentitySamples, useFaceGalleryListRecentFaces, useFaceGalleryRemoveSample, useFaceGalleryRenameIdentity, useFaceGallerySuggestFaceClusters, useFaceGalleryUnassignFace, useFaceGalleryUnassignFaces, useFanControlGetStatus, useFanControlSetDirection, useFanControlSetOscillating, useFanControlSetPercentage, useFanControlSetPreset, useFeatureProbeGetStatus, useFloodGetStatus, useGasGetStatus, useHeatingValveGetStatus, useHistoryPanels, useHistoryReader, useHistoryReads, useHumidifierGetStatus, useHumidifierSetMode, useHumidifierSetOn, useHumidifierSetTargetHumidity, useHumiditySensorGetStatus, useIconGlyphsVersion, useImageGetStatus, useImageSettingsGetOptions, useImageSettingsGetStatus, useImageSettingsSetSettings, useIntegrationsCreate, useIntegrationsDelete, useIntegrationsGet, useIntegrationsGetAvailableTypes, useIntegrationsGetByAddonId, useIntegrationsGetSettings, useIntegrationsList, useIntegrationsSetSettings, useIntegrationsTestConnection, useIntegrationsUpdate, useIntercomEndTalkSession, useIntercomGetStatus, useIntercomHandleAnswer, useIntercomPushTalkAudio, useIntercomStartSession, useIntercomStartTalkSession, useIntercomStopSession, useIsMidWidth, useIsMobile, useItemFormUrl, useKeychainAdminAcknowledgeReset, useKeychainAdminDeleteOrphans, useKeychainAdminDownloadRecoveryKey, useKeychainAdminImportSecret, useKeychainAdminListAudit, useKeychainAdminListSecrets, useKeychainAdminPurgeRetiredKeys, useKeychainAdminResetKeychain, useKeychainAdminResetReport, useKeychainAdminReveal, useKeychainAdminRotateMasterKey, useKeychainAdminSetSystemSecret, useKeychainAdminStatus, useLawnMowerControlDock, useLawnMowerControlGetStatus, useLawnMowerControlPause, useLawnMowerControlStartMowing, useLiveBuffer, useLiveEvent, useLlmCancel, useLlmDeleteModel, useLlmDeleteProfile, useLlmGenerate, useLlmGenerateVision, useLlmGetDefaults, useLlmGetRuntimeStatus, useLlmGetUsage, useLlmInstallModel, useLlmListModelCatalog, useLlmListModels, useLlmListNodeModels, useLlmListProfileKinds, useLlmListProfiles, useLlmListRuntimeNodes, useLlmMigrateRawSecrets, useLlmResolveModelRef, useLlmSetDefault, useLlmStartRuntime, useLlmStopRuntime, useLlmTestProfile, useLlmUpsertProfile, useLocalNetworkAddCustomAddress, useLocalNetworkDownloadCa, useLocalNetworkGetAddresses, useLocalNetworkGetAllowedAddresses, useLocalNetworkGetConnectionEndpoints, useLocalNetworkGetHubAddresses, useLocalNetworkGetNotificationEndpoint, useLocalNetworkGetPreferred, useLocalNetworkGetTlsStatus, useLocalNetworkGetViewerEndpoints, useLocalNetworkList, useLocalNetworkRegenerateCertificate, useLocalNetworkRemoveCustomAddress, useLocalNetworkResetAllowlistToBestMatch, useLocalNetworkRevertToGeneratedCertificate, useLocalNetworkSetAddressRole, useLocalNetworkSetAllowedAddresses, useLocalNetworkSetNotificationEndpoint, useLocalNetworkSetViewerEndpoints, useLocalNetworkUploadCertificate, useLocalNetworkUseStoredUploadedCertificate, useLockControlGetStatus, useLockControlLock, useLockControlOpen, useLockControlUnlock, useMediaPlayerGetStatus, useMediaPlayerNext, useMediaPlayerPause, useMediaPlayerPlay, useMediaPlayerPlayMedia, useMediaPlayerPrevious, useMediaPlayerSeek, useMediaPlayerSelectSource, useMediaPlayerSetMute, useMediaPlayerSetRepeat, useMediaPlayerSetShuffle, useMediaPlayerSetVolume, useMediaPlayerStop, useMeshNetworkGetStatus, useMeshNetworkJoin, useMeshNetworkLeave, useMeshNetworkListPeers, useMeshNetworkLogout, useMeshNetworkStartLogin, useMeshNetworkTestConnection, useMetricsProviderCollectSnapshot, useMetricsProviderGetAddonStats, useMetricsProviderGetCached, useMetricsProviderGetCpuTemperature, useMetricsProviderGetCurrent, useMetricsProviderGetDiskSpace, useMetricsProviderGetGpuInfo, useMetricsProviderGetLoadSeries, useMetricsProviderGetProcessStats, useMetricsProviderListAddonInstances, useMetricsProviderListNodeProcesses, useMotionDetectionAnalyze, useMotionDetectionApplyDeviceSettingsPatch, useMotionDetectionGetDeviceLiveContribution, useMotionDetectionGetDeviceSettingsContribution, useMotionDetectionRemoveCamera, useMotionDetectionReset, useMotionGetStatus, useMotionIsDetected, useMotionTriggerGetStatus, useMotionTriggerSetMotionTrigger, useMotionZonesGetOptions, useMotionZonesGetStatus, useMotionZonesSetZone, useMqttBrokerAddBroker, useMqttBrokerGetBrokerConfig, useMqttBrokerGetStatus, useMqttBrokerListBrokers, useMqttBrokerRemoveBroker, useMqttBrokerStartEmbeddedBroker, useMqttBrokerStopEmbeddedBroker, useMqttBrokerTestConnection, useNativeObjectDetectionGetOptions, useNativeObjectDetectionGetStatus, useNativeObjectDetectionSetEnabled, useNativeObjectDetectionSetSettings, useNavigation, useNavigationGetFeatures, useNavigationGetStatus, useNavigationGoToPoint, useNavigationListActions, useNavigationMove, useNavigationPlaySound, useNavigationRunAction, useNavigationSetLightLevel, useNavigationSetLightMode, useNavigationSetLightOn, useNavigationStop, useNetworkAccessGetEndpoint, useNetworkAccessGetStatus, useNetworkAccessListEndpoints, useNetworkAccessStart, useNetworkAccessStop, useNetworkLinkGetStatus, useNetworkQualityGetAllStats, useNetworkQualityGetDeviceStats, useNetworkQualityReportClientStats, useNodesClusterAddonStatus, useNodesDeployAddon, useNodesDirectory, useNodesExecuteQuery, useNodesGetCapUsageGraph, useNodesGetNodeAddons, useNodesRenameNode, useNodesRestartAddon, useNodesRestartNode, useNodesRestartProcess, useNodesSetProcessLogLevel, useNodesShutdownNode, useNodesTopology, useNodesUndeployAddon, useNotificationOutputDeleteTarget, useNotificationOutputDiscoverTargets, useNotificationOutputGetTarget, useNotificationOutputListTargetKinds, useNotificationOutputListTargets, useNotificationOutputProbeTargetConfig, useNotificationOutputSend, useNotificationOutputSetTargetEnabled, useNotificationOutputTestTarget, useNotificationOutputUpsertTarget, useNotificationRulesActivateAlarmProfile, useNotificationRulesCancelSnooze, useNotificationRulesCreateAlarmProfile, useNotificationRulesCreateRule, useNotificationRulesCreateSequence, useNotificationRulesCreateSnooze, useNotificationRulesDeleteAlarmProfile, useNotificationRulesDeleteRule, useNotificationRulesDeleteSequence, useNotificationRulesGetAlarmConfig, useNotificationRulesGetAlarmSensors, useNotificationRulesGetClipRetentionAsks, useNotificationRulesGetConditionCatalog, useNotificationRulesGetHistory, useNotificationRulesGetRule, useNotificationRulesGetRuleLastRuns, useNotificationRulesGetSequence, useNotificationRulesGetTemplateCatalog, useNotificationRulesListDeviceMutes, useNotificationRulesListRules, useNotificationRulesListSequences, useNotificationRulesListSnoozes, useNotificationRulesPreviewStateSummary, useNotificationRulesPreviewTemplate, useNotificationRulesRenameAlarmProfile, useNotificationRulesResolveArtifactUrl, useNotificationRulesSetAlarmConfig, useNotificationRulesSetDeviceMuted, useNotificationRulesSetRuleEnabled, useNotificationRulesTestRule, useNotificationRulesUpdateRule, useNotificationRulesUpdateSequence, useNotifierCancel, useNotifierGetStatus, useNotifierSend, useNumericSensorGetStatus, useOidcConnectionsConnectionFormSchema, useOidcConnectionsCreateConnection, useOidcConnectionsDeleteConnection, useOidcConnectionsListConnections, useOidcConnectionsUpdateConnection, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdManagerClearSlotBinding, useOsdManagerCopyDeviceConfiguration, useOsdManagerDeleteTemplate, useOsdManagerGetConditionSupport, useOsdManagerGetDeviceOsd, useOsdManagerGetSourceCatalog, useOsdManagerListTemplates, useOsdManagerPreviewSlot, useOsdManagerRenderDevice, useOsdManagerSetSlotBinding, useOsdManagerSetSlotCameraEnabled, useOsdManagerUpsertTemplate, useOsdSetOverlay, usePTZ, usePersistedPageSize, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePickerSiteZones, usePipelineAnalyticsAddRetrainFrameFromRecording, usePipelineAnalyticsAddRetrainFramesToCollection, usePipelineAnalyticsApplyDeviceSettingsPatch, usePipelineAnalyticsBackfillRetrainOrigins, usePipelineAnalyticsCancelRelocateMedia, usePipelineAnalyticsCancelStorageMigrationMove, usePipelineAnalyticsClearTrackRelation, usePipelineAnalyticsClearTracks, usePipelineAnalyticsCompleteRetrainTrack, usePipelineAnalyticsCountRelocatableMedia, usePipelineAnalyticsCountUnstampedEventMedia, usePipelineAnalyticsCreateRetrainCollection, usePipelineAnalyticsDeleteDeviceEvents, usePipelineAnalyticsDeleteRetrainCollection, usePipelineAnalyticsDeleteTracks, usePipelineAnalyticsDeselectRetrainFrame, usePipelineAnalyticsGetActiveTracks, usePipelineAnalyticsGetAudioEvents, usePipelineAnalyticsGetDeviceLiveContribution, usePipelineAnalyticsGetDeviceSettingsContribution, usePipelineAnalyticsGetEventDensity, usePipelineAnalyticsGetEventDensityBatch, usePipelineAnalyticsGetEventMedia, usePipelineAnalyticsGetEventMediaFootprintByKind, usePipelineAnalyticsGetEventStoreFootprint, usePipelineAnalyticsGetKeyEvents, usePipelineAnalyticsGetKeyEventsBatch, usePipelineAnalyticsGetMediaReclaimStatus, usePipelineAnalyticsGetMotionEvents, usePipelineAnalyticsGetObjectEmbeddingRebuildStatus, usePipelineAnalyticsGetObjectEvents, usePipelineAnalyticsGetRetrainCorpusKpi, usePipelineAnalyticsGetRetrainExportUrl, usePipelineAnalyticsGetRetrainFrameImage, usePipelineAnalyticsGetSensorEvents, usePipelineAnalyticsGetStorageMigrationMoveStatus, usePipelineAnalyticsGetTrack, usePipelineAnalyticsGetTrackMedia, usePipelineAnalyticsGetTrainingExportSummary, usePipelineAnalyticsGetTrainingExportUrl, usePipelineAnalyticsListArchivedDebugNotes, usePipelineAnalyticsListBirthDecisions, usePipelineAnalyticsListEventKinds, usePipelineAnalyticsListEventKindsBatch, usePipelineAnalyticsListEventMedia, usePipelineAnalyticsListOpsLog, usePipelineAnalyticsListRecentTracks, usePipelineAnalyticsListRelocateMediaJobs, usePipelineAnalyticsListRetrainAnnotations, usePipelineAnalyticsListRetrainAssistProfiles, usePipelineAnalyticsListRetrainCollectionFrames, usePipelineAnalyticsListRetrainCollections, usePipelineAnalyticsListRetrainCorpusPage, usePipelineAnalyticsListRetrainFrames, usePipelineAnalyticsListRetrainStaging, usePipelineAnalyticsListTrackMedia, usePipelineAnalyticsListTrackRelations, usePipelineAnalyticsListTracks, usePipelineAnalyticsOfferRetrainArchive, usePipelineAnalyticsOwnersWithMedia, usePipelineAnalyticsPauseForStorageMigration, usePipelineAnalyticsProposeRetrainAnnotations, usePipelineAnalyticsProposeRetrainAnnotationsWithLlm, usePipelineAnalyticsPruneEvents, usePipelineAnalyticsPruneEventsBefore, usePipelineAnalyticsPruneTracksBefore, usePipelineAnalyticsReadLongTermSeries, usePipelineAnalyticsRebuildObjectEmbeddings, usePipelineAnalyticsReclaimDebugMedia, usePipelineAnalyticsReconcileFromDisk, usePipelineAnalyticsRefreshStorageLocationsForMigration, usePipelineAnalyticsRelocateMedia, usePipelineAnalyticsRemoveRetrainFrameFromCollection, usePipelineAnalyticsRenameRetrainCollection, usePipelineAnalyticsResolveRetrainTrainingCorpus, usePipelineAnalyticsRestageRetrainTrack, usePipelineAnalyticsResumeForStorageMigration, usePipelineAnalyticsSaveRetrainAnnotations, usePipelineAnalyticsSearchObjectEvents, usePipelineAnalyticsSelectRetrainFrames, usePipelineAnalyticsSetRetrainFrameComplete, usePipelineAnalyticsSetTrackFlags, usePipelineAnalyticsSetTrackPurity, usePipelineAnalyticsSetTrackRelation, usePipelineAnalyticsStartStorageMigrationMove, usePipelineAnalyticsWipeAllAnalytics, usePipelineAnalyticsWipeObjectEmbeddings, usePipelineAnalyticsWriteRetrainArchive, usePipelineExecutorCacheFrameInPool, usePipelineExecutorClearDeviceOverrides, usePipelineExecutorClearModelBoundDeviceOverrides, usePipelineExecutorDeleteModel, usePipelineExecutorDownloadModel, usePipelineExecutorGetAddonModels, usePipelineExecutorGetAudioCapabilities, usePipelineExecutorGetAvailableEngines, usePipelineExecutorGetCapabilities, usePipelineExecutorGetDefaultSteps, usePipelineExecutorGetDetectionConfigSchema, usePipelineExecutorGetEffectiveTuning, usePipelineExecutorGetEngineProvisioning, usePipelineExecutorGetGlobalPipelineConfig, usePipelineExecutorGetGlobalSteps, usePipelineExecutorGetInferenceDeviceHealth, usePipelineExecutorGetOrchestratorConfigSchema, usePipelineExecutorGetReferenceAudio, usePipelineExecutorGetReferenceAudioFiles, usePipelineExecutorGetReferenceImage, usePipelineExecutorGetSchema, usePipelineExecutorGetSelectedEngine, usePipelineExecutorGetVideoPipelineSteps, usePipelineExecutorInferCached, usePipelineExecutorKillEngine, usePipelineExecutorListLoadedEngines, usePipelineExecutorListReferenceImages, usePipelineExecutorRearmInferenceDevice, usePipelineExecutorRunAudioTest, usePipelineExecutorRunPipeline, usePipelineExecutorRunPipelineBatch, usePipelineExecutorSetVideoPipelineSteps, usePipelineExecutorSpinEngine, usePipelineExecutorUncacheFrame, usePipelineExecutorValidatePipeline, usePipelineOrchestratorAbortNodeBenchmark, usePipelineOrchestratorApplyAutoTune, usePipelineOrchestratorApplyDeviceSettingsPatch, usePipelineOrchestratorAssignAudio, usePipelineOrchestratorAssignPipeline, usePipelineOrchestratorDeleteNodeBenchmarkResult, usePipelineOrchestratorGetAgentLoad, usePipelineOrchestratorGetAgentSettings, usePipelineOrchestratorGetAudioAssignment, usePipelineOrchestratorGetAudioAssignments, usePipelineOrchestratorGetAudioNodeLoad, usePipelineOrchestratorGetCameraDetectionSource, usePipelineOrchestratorGetCameraMetrics, usePipelineOrchestratorGetCameraSettings, usePipelineOrchestratorGetCameraStatus, usePipelineOrchestratorGetCameraStatuses, usePipelineOrchestratorGetCameraStepOverrides, usePipelineOrchestratorGetCameraSwitches, usePipelineOrchestratorGetCapabilityBindings, usePipelineOrchestratorGetClusterModelChoice, usePipelineOrchestratorGetDeviceLiveContribution, usePipelineOrchestratorGetDeviceSettingsContribution, usePipelineOrchestratorGetEffectiveShares, usePipelineOrchestratorGetGlobalMetrics, usePipelineOrchestratorGetIngestOwner, usePipelineOrchestratorGetNodeBenchmarkCandidates, usePipelineOrchestratorGetNodeBenchmarkPreflight, usePipelineOrchestratorGetNodeBenchmarkStatus, usePipelineOrchestratorGetNodeInferenceDevices, usePipelineOrchestratorGetPipelineAssignment, usePipelineOrchestratorGetPipelineAssignments, usePipelineOrchestratorGetPipelineDevicePin, usePipelineOrchestratorGetPlacementStats, usePipelineOrchestratorGetReconcileFromDiskStatus, usePipelineOrchestratorListAgentSettings, usePipelineOrchestratorListNodeBenchmarkResults, usePipelineOrchestratorPauseForStorageMigration, usePipelineOrchestratorPlanAutoTune, usePipelineOrchestratorRebalance, usePipelineOrchestratorReconcileFromDisk, usePipelineOrchestratorRemoveAgentSettings, usePipelineOrchestratorRequestOccupancyLook, usePipelineOrchestratorResetNodePipelineDefaults, usePipelineOrchestratorResolvePipeline, usePipelineOrchestratorResumeForStorageMigration, usePipelineOrchestratorSetAgentCapabilities, usePipelineOrchestratorSetAgentDecodeLimits, usePipelineOrchestratorSetAgentInferenceDevices, usePipelineOrchestratorSetAgentMaxCameras, usePipelineOrchestratorSetAgentReachableHost, usePipelineOrchestratorSetCameraDetectionSource, usePipelineOrchestratorSetCameraPipelineForAgent, usePipelineOrchestratorSetCameraSensors, usePipelineOrchestratorSetCameraStepOverride, usePipelineOrchestratorSetCameraStepSettings, usePipelineOrchestratorSetCameraStepToggle, usePipelineOrchestratorSetCameraSwitch, usePipelineOrchestratorSetCapabilityBinding, usePipelineOrchestratorSetLoadBalancingShares, usePipelineOrchestratorSetPipelineDevicePin, usePipelineOrchestratorSetShareSource, usePipelineOrchestratorStartNodeBenchmark, usePipelineOrchestratorSuggestShares, usePipelineOrchestratorUnassignAudio, usePipelineOrchestratorUnassignPipeline, usePipelineRunnerAbortNodeBench, usePipelineRunnerAttachCamera, usePipelineRunnerDetachCamera, usePipelineRunnerGetAllCameraMetrics, usePipelineRunnerGetCameraMetrics, usePipelineRunnerGetLocalCameras, usePipelineRunnerGetLocalLoad, usePipelineRunnerGetLocalMetrics, usePipelineRunnerGetNativeCrop, usePipelineRunnerGetNodeBenchStatus, usePipelineRunnerGetParkedTrackFrame, usePipelineRunnerParkTrackFrame, usePipelineRunnerReleaseParkedTrackFrames, usePipelineRunnerReportMotion, usePipelineRunnerRequestOccupancyBurst, usePipelineRunnerRunDetailSubtree, usePipelineRunnerRunStatelessStep, usePipelineRunnerStartNodeBench, usePlateGalleryAssignPlate, usePlateGalleryAssignPlates, usePlateGalleryCorrectPlateText, usePlateGalleryCreateVehicle, usePlateGalleryDeletePlate, usePlateGalleryDeleteVehicle, usePlateGalleryGetPlateByTrack, usePlateGalleryGetPlateMedia, usePlateGalleryListPlates, usePlateGalleryListVehicleSamples, usePlateGalleryListVehicles, usePlateGalleryRemoveVehicleSample, usePlateGalleryRenameVehicle, usePlateGallerySearchPlates, usePlateGallerySuggestPlateClusters, usePlateGalleryUnassignPlate, usePlateGalleryUnassignPlates, usePlayerOverlayLayer, usePlayerOverlayLayers, usePlayerToolbarButton, usePlayerToolbarButtons, usePowerMeterGetStatus, usePresenceGetStatus, usePressureSensorGetStatus, usePrivacyMaskGetOptions, usePrivacyMaskGetStatus, usePrivacyMaskSetAudioEnabled, usePrivacyMaskSetMask, usePrompt, usePtzAutotrackGetSettings, usePtzAutotrackGetStatus, usePtzAutotrackSetEnabled, usePtzAutotrackSetSettings, usePtzCaptureHomeHere, usePtzContinuousMove, usePtzDeletePreset, usePtzGetHomePreset, usePtzGetHomeReturn, usePtzGetOptions, usePtzGetPosition, usePtzGetPresets, usePtzGetStatus, usePtzGoHome, usePtzGoToPreset, usePtzMove, usePtzSavePreset, usePtzSetAutofocus, usePtzSetHomePreset, usePtzSetHomeReturn, usePtzStop, useRebootReboot, useRecordEntriesDeleteEntry, useRecordEntriesListEntries, useRecordEntriesListEntryKinds, useRecordEntriesPutEntry, useRecordedPlayback, useRecordingArchiveApplyDeviceSettingsPatch, useRecordingArchiveCancelRelocateJob, useRecordingArchiveCancelStorageMigrationMove, useRecordingArchiveDeleteFootprint, useRecordingArchiveGetAvailabilityBatch, useRecordingArchiveGetDaysWithRecordingsBatch, useRecordingArchiveGetDeviceConfig, useRecordingArchiveGetDeviceLiveContribution, useRecordingArchiveGetDeviceSettingsContribution, useRecordingArchiveGetPlacement, useRecordingArchiveGetRelocateResidue, useRecordingArchiveGetStatus, useRecordingArchiveGetStorageMigrationMoveStatus, useRecordingArchiveGetStorageUsage, useRecordingArchiveListOpsLog, useRecordingArchiveListRelocateJobs, useRecordingArchiveLocateSegment, useRecordingArchivePauseForStorageMigration, useRecordingArchivePlanStorageRebalance, useRecordingArchivePruneFootage, useRecordingArchiveReadGopBytes, useRecordingArchiveReadSegmentBytes, useRecordingArchiveReadWindowBytes, useRecordingArchiveReconcileLedgerAgainstDisk, useRecordingArchiveRefreshStorageLocationsForMigration, useRecordingArchiveRelocateFootage, useRecordingArchiveRenderClip, useRecordingArchiveRenderGif, useRecordingArchiveRescanStorage, useRecordingArchiveResumeForStorageMigration, useRecordingArchiveSetDeviceConfig, useRecordingArchiveSetDevicePlacement, useRecordingArchiveStartStorageMigrationMove, useRecordingArchiveStartStorageRebalance, useRecordingExportCancelExport, useRecordingExportCreateExport, useRecordingExportDeleteExport, useRecordingExportGetDownloadUrl, useRecordingExportGetExport, useRecordingExportListExports, useRecordingExportReadExportBytes, useRecordingGetAvailability, useRecordingGetDaysWithRecordings, useRecordingGetPlayback, useRecordingGetPlaybackOptions, useRecordingListSources, useRecordingOnboardGetOptions, useRecordingOnboardGetStatus, useRecordingOnboardSetSettings, useRecordingSignalGetStatus, useRemoteComponent, useRoleDisplayDefaults, useSceneMonitorCaptureReference, useSceneMonitorCreateScene, useSceneMonitorDeleteReference, useSceneMonitorDeleteScene, useSceneMonitorGetStatus, useSceneMonitorListScenes, useSceneMonitorListScenesBatch, useSceneMonitorRecheckNow, useSceneMonitorResetScene, useSceneMonitorUpdateScene, useScriptRunnerGetStatus, useScriptRunnerRun, useScriptRunnerStop, useScrubController, useServerManagementApplyServerUpdate, useServerManagementCheckServerUpdate, useServerManagementGetServerPackageStatus, useServerManagementRestartServer, useServerManagementRollbackServerUpdate, useSettingsStoreAggregate, useSettingsStoreCount, useSettingsStoreDeclareCollection, useSettingsStoreDelete, useSettingsStoreDeleteWhere, useSettingsStoreGet, useSettingsStoreHistogram, useSettingsStoreInsert, useSettingsStoreInsertMany, useSettingsStoreIsEmpty, useSettingsStoreQuery, useSettingsStoreSet, useSettingsStoreTransact, useSettingsStoreUpdate, useSettingsStoreUpdateWhere, useSettingsStoreUpsert, useSettingsStoreUpsertMany, useSmokeGetStatus, useSnapshotApplyDeviceSettingsPatch, useSnapshotGetDebugState, useSnapshotGetDeviceLiveContribution, useSnapshotGetDeviceSettingsContribution, useSnapshotGetSnapshot, useSnapshotGetSnapshotLinks, useSnapshotGetSnapshotOverview, useSnapshotGetStatus, useSnapshotInvalidateCache, useStationaryOverlay, useStorageAbortUpload, useStorageBeginDownload, useStorageBeginUpload, useStorageDelete, useStorageDeleteLocation, useStorageEndDownload, useStorageExists, useStorageFinalizeUpload, useStorageGetAvailableSpace, useStorageList, useStorageListDrainProgress, useStorageListLocationDeclarations, useStorageListLocations, useStorageListProviders, useStorageMigrationCancel, useStorageMigrationCleanupCancel, useStorageMigrationCleanupStart, useStorageMigrationCleanupStatus, useStorageMigrationDrain, useStorageMigrationHistory, useStorageMigrationMoverClearance, useStorageMigrationMovers, useStorageMigrationPlan, useStorageMigrationResidue, useStorageMigrationStart, useStorageMigrationStatus, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStoredGroupBy, useStreamBrokerAcquireEgressTranscode, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerFetchEventMedia, useStreamBrokerForgetDeviceHardware, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceAudioMute, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, useStreamBrokerGetLiveViewerCounts, useStreamBrokerGetPreBufferInfo, useStreamBrokerGetRtspEntry, useStreamBrokerGetRtspPort, useStreamBrokerGetStreamUrl, useStreamBrokerGetStreamWithCodec, useStreamBrokerIsRtspEnabled, useStreamBrokerKillClient, useStreamBrokerListAllCameraStreams, useStreamBrokerListAllProfileSlots, useStreamBrokerListClients, useStreamBrokerProbeStream, useStreamBrokerProduceEventMedia, useStreamBrokerPublishCameraStream, useStreamBrokerPullAudioChunks, useStreamBrokerRegenerateRtspToken, useStreamBrokerReleaseEgressTranscode, useStreamBrokerReleaseStreamWithCodec, useStreamBrokerRenderPreBufferClip, useStreamBrokerReportStreamSignal, useStreamBrokerRestartProfile, useStreamBrokerRetractCameraStream, useStreamBrokerSetDeviceAudioMute, useStreamBrokerSetPreBufferDuration, useStreamBrokerSetRtspEnabled, useStreamBrokerSubscribeAudioChunks, useStreamBrokerUnassignProfile, useStreamBrokerUnsubscribeAudioChunks, useStreamCatalogGetCatalog, useStreamParamsGetConfigSchema, useStreamParamsGetOptions, useStreamParamsGetStatus, useStreamParamsSetProfile, useStreamSignalsListSignals, useSwitchGetStatus, useSwitchSetState, useSystem, useSystemDetectSiteLocation, useSystemFeatureFlags, useSystemForceRetentionCleanup, useSystemGetFailureContributions, useSystemGetLoadContributions, useSystemGetLoggingSettings, useSystemGetRequestCensus, useSystemGetRetentionConfig, useSystemGetSiteLocation, useSystemHealth, useSystemInfo, useSystemMutation, useSystemNetworkAddresses, useSystemQuery, useSystemSetLoggingSettings, useSystemSetRetentionConfig, useSystemSetSiteLocation, useTamperGetStatus, useTemperatureSensorGetStatus, useTerminalSessionAdoptLegacyMonitor, useTerminalSessionClose, useTerminalSessionCreateInstance, useTerminalSessionDeleteInstance, useTerminalSessionListInstances, useTerminalSessionListLegacyCameras, useTerminalSessionListProfiles, useTerminalSessionListSessions, useTerminalSessionOpenSession, useTerminalSessionPullOutput, useTerminalSessionResize, useTerminalSessionSetInstanceEnabled, useTerminalSessionUpdateInstance, useTerminalSessionWriteInput, useThemeMode, useToastOnToast, useTrainingCanaryResult, useTrainingCancelJob, useTrainingDiscardResult, useTrainingGetJob, useTrainingGetJobResult, useTrainingListBaseModels, useTrainingListJobs, useTrainingPlanJob, useTrainingRegisterResult, useTrainingRollbackCanary, useTrainingStartJob, useTrainingStartJobBatch, useTurnProviderGetTurnServers, useUiText, useUpdateGetStatus, useUpdateInstallUpdate, useUrlQueryParam, useUserManagementConfirmTotp, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementFindUserByExternalIdentity, useUserManagementGetTotpStatus, useUserManagementListExternalIdentities, useUserManagementListOauthSessions, useUserManagementListUsers, useUserManagementMigrateRawSecrets, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeOauthSession, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUnlinkExternalIdentity, useUserManagementUpdateUser, useUserManagementValidateCredentials, useUserManagementVerifyTotp, useVacuumControlGetStatus, useVacuumControlLocate, useVacuumControlPause, useVacuumControlReturnToBase, useVacuumControlSetFanSpeed, useVacuumControlStart, useVacuumControlStop, useValveClose, useValveGetStatus, useValveOpen, useValveSetPosition, useValveStop, useVibrationGetStatus, useVideoclipsDialClipStream, useVideoclipsGetClipPlayback, useVideoclipsGetPlaybackOptions, useVideoclipsListClips, useVideoclipsListSources, useVideoclipsOfferClipBytes, useVideoclipsReadClipBytes, useVodPlayback, useWaterHeaterGetStatus, useWaterHeaterSetAway, useWaterHeaterSetOperationMode, useWaterHeaterSetTargetTemp, useWeatherGetStatus, useWebrtcSessionAddIceCandidate, useWebrtcSessionApplyDownlinkProbe, useWebrtcSessionCloseSession, useWebrtcSessionCreateSession, useWebrtcSessionGetIceCandidates, useWebrtcSessionGetSessionDebug, useWebrtcSessionGetSessionState, useWebrtcSessionHandleAnswer, useWebrtcSessionHandleOffer, useWebrtcSessionHasAdaptiveBitrate, useWebrtcSessionListStreams, useWidget, useWidgetMetadata, useWidgetRegistry, useZoneAnalyticsGetCameraHistory, useZoneAnalyticsGetCurrentSnapshot, useZoneAnalyticsGetCurrentSnapshotBatch, useZoneAnalyticsGetUnzonedHistory, useZoneAnalyticsGetZoneHistory, useZoneEditing, useZoneRulesListRules, useZoneRulesSetRules, useZonesAddZone, useZonesListZones, useZonesRemoveZone, useZonesUpdateZone, Route as ut, Users as v, vacuumStateMeta, validateScopes, valveStateMeta, variantLabel, Hammer as vn, ChartLine as vr, Puzzle as vt, Type as w, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint, withHiddenChart, withPanel, withResolvedParentDetail, withUseRootModel, withoutPanel, Funnel as wn, Bus as wr, writeStoredGroupBy, Plane as wt, Upload as x, GraduationCap as xn, Car as xr, Plug as xt, User as y, GripHorizontal as yn, Cat as yr, Power as yt, Sun as z, Download as zn, Bath as zr, Moon as zt };
|
|
68120
|
+
export { ShieldOff as $, Clock as $n, LoaderCircle as $t, TrainFront as A, AddProviderEntryDialog, AddonGlobalSettingsForm, AdminLinkQuickAction, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, Feather as An, AppShell, Bike as Ar, ArcKnob, Pause as At, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutomationHeroCard, AutomationInlineControl, AutotrackSection, SunMedium as B, BOOLEAN_STATES, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, BackToStepsButton, Badge, BarSeries, BatteryBadge, DoorClosed as Bn, BottomSheet, Baby as Br, Breadcrumb, BrightnessPanel, MonitorPlay as Bt, Button, ButtonControl, ButtonHeroCard, Undo2 as C, CENTER, CHART_SERIES_TOKENS, CHIP_ACTIVE, CHIP_BASE, CHIP_INACTIVE, CLASS_COLORS, COLUMN_BREAKPOINT_CLASS, COLUMN_PRIORITY, COMMIT_DEDUPE_TOLERANCE_MS, COMMIT_DEDUPE_WINDOW_MS, CONSUMABLE_LOW_PERCENT, CONTROL_CAP_NAMES, CONTROL_FILLS, CameraStreamPlayer, Card, ChartFrame, ChartPlaceholder, ChartSwatch, ChartWindowToggle, Checkbox, ChildSectionAccordion, ClimatePanel, Gamepad2 as Cn, CodeBlock, CollapsibleCard, ConfigFormBuilder, FormField as ConfigFormField, ConfigNotificationTargetMultiSelectFieldView, ConfigNotificationTargetSelectFieldView, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumableLevelBadge, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, Bus as Cr, Play as Ct, CustomFieldRenderersProvider, TrendingDown as D, DATA_RECORDS_KIND_PARAM, DATA_RECORDS_OWNER_PARAM, DATA_RECORD_FACET_GROUPS, DEFAULT_COLOR, DEFAULT_PAGINATION_LABELS, DEVICE_COLUMNS, DEVICE_EXPORT_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_OPTIONS, DEVICE_PICKER_GROUP_STORAGE_KEY, DEVICE_ROLE_META, DEVICE_TYPE_CONTROL, DEVICE_TYPE_META, DataRecordsHub, DataTable, DataTableFilterBar, DataTablePager, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceExportSetup, DeviceFilterBar, DeviceGrid, DeviceHistoryView, DeviceItem, DeviceList, DeviceMultiSelectField, DevicePicker, DeviceQuickDetailProvider, DeviceSelectField, DeviceSelectorPicker, DeviceStepMatrix, DevicesFailedLine, DevicesLoadingLine, DevicesWidenWarning, Dialog, DialogBody, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, FlashlightOff as Dn, DoorbellRecentPanel, Bone as Dr, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, Phone as Dt, DummyHeroCard, DummyInline, TriangleAlert as E, EMPTY_DATA_TABLE_FILTER, EMPTY_HISTORY_PANELS, EVENT_KIND_ICONS, EmptyState, Flashlight as En, EndpointResultsCard, EndpointTestCard, EntryJsonSchemaForm, Bot as Er, ErrorBox, Pin as Et, EventKindGlyph, EventStream, ExtensionsPanel, Thermometer as F, FAST_ICON_GLYPHS, FILL, FLEET_LIST_GC_TIME_MS, FLEET_LIST_QUERY_KEY, FLEET_LIST_STALE_TIME_MS, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, EllipsisVertical as Fn, FormField$1 as FormField, BatteryMedium as Fr, Move as Ft, Snowflake as G, GAP_INTERVAL_FACTOR, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GateBadge, GateControl, Copy as Gn, ArrowDown as Gr, GripTrack, GroupedModelSelector, GroupedTilePicker, Menu as Gt, Square as H, HISTORY_PAGE_PATH, HISTORY_PANELS_NAMESPACE, HISTORY_SELECTION_MAX, HISTORY_WINDOW_IDS, HISTORY_WINDOW_MS, HOST_WIDGETS, HUB_SESSION_RUN_MS, HistoryChart, HistoryWindowBar, HlsVideo, Database as Hn, HoverZoomImage, ArrowUpToLine as Hr, Minimize2 as Ht, HubSessionTestCard, HumidifierHeroCard, HumidifierInlineControl, Target as I, INPUT_COMPACT, INPUT_SHELL, IconAction, IconButton, IconPicker, ImageHeroCard, ImageInlineControl, ImageSelector, Droplets as In, InferenceConfigSelector, Input, BatteryLow as Ir, MoveVertical as It, ItemFormDialog, SkipForward as J, CloudSun as Jn, AirVent as Jr, MapPin as Jt, Smartphone as K, KebabMenu, KeyValueList, Cog as Kn, ArrowDownToLine as Kr, Megaphone as Kt, Tag as L, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LayeredSettingsForm, LightHeroCard, LightInlineControl, Droplet as Ln, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, BatteryFull as Lr, MoveHorizontal as Lt, ToggleRight as M, MEDIA_GRID, MODE_COLOR, MaskShapeCanvas, MediaCard, MediaGrid, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, Eye as Mn, MobileDrawer, ModelPicker, MotionZonesSettings, BellRing as Mr, Network as Mt, ToggleLeft as N, NAVIGATION_DRIVE_INTERVAL_MS, NODE_COLOR_IDS, NatResultCard, NavigationPanel, NetworkLinkBadge, EyeOff as Nn, NodeMultiSelectField, NodePicker, NodeSelectField, NotificationTargetSelectField, NotificationTargetsField, Battery as Nr, Navigation as Nt, TrendingUp as O, OCCUPANCY_KEY, OPTION_SELECT_SEARCH_MIN_OPTIONS, OfflineBadge, Flame as On, OptionSelect, Blinds as Or, Pencil as Ot, Timer as P, PAGE_SIZE_ALL, PHASE_CONFIG, PICKER_CHIP_LIMIT, PICKER_DEFAULT_GROUP_BY, PICKER_GROUP_BY_MODES, PICKER_GROUP_COLLAPSE_AT, PICKER_NONE_KEY, PICKER_NOUN_PLURAL, PICKER_NO_FILTERS, PICKER_PAGE_SIZE, PICKER_SEARCH_DEBOUNCE_MS, PICKER_WINDOW, PRIORITY, PTZOverlay, PageHeader, PageShell, PageSizeSelect, Pagination, PasswordInput, PhaseIcon, PipelineBuilder, PipelineRuntimeSelector, PipelineStep, PlaceholderChipField, PlayerOverlaysProvider, ExternalLink as Pn, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, BatteryWarning as Pr, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, ProviderEntryPills, Music as Pt, PtzPanel, Shield as Q, CloudFog as Qn, QrCode, LocateFixed as Qt, Sunrise as R, RECONNECT_POLICY, RECORDED_PLAYBACK_MODES, RESOLUTION_BUCKET_MS, RIGHT, ROI_AREA_WARN_FRACTION, ROLE_DESCRIPTOR, ROOT_DETECTOR_STEP_ID, RadialGauge, RecordEntriesPanel, RecordedPlaybackProvider, RecordingPanel, ResponseLog, RetrainReviewBadge, Download as Rn, RoleDisplayDefaultsFromServer, RoleDisplayDefaultsProvider, RoleNodePill, RootModelSourceControl, RootSuppliedModelNote, Bath as Rr, MousePointerClick as Rt, RunReport, Unlink2 as S, SCENE_CAPTURE_VARIANTS, SECRET_MASK_PLACEHOLDER, SECRET_REVEAL_MS, SECTION_BODY, SECTION_CARD, SECTION_HEADER, SETTING_ROW, SETTING_ROW_LABEL, SETTING_ROW_STACK_BREAKPOINT, SETTING_ROW_VALUE, SETTING_ROW_VALUE_TEXT, SNAPSHOT_MEDIA_PATH, SPLIT_PANEL_OUTER, SPLIT_PANEL_SIDE, STACK_GAP, STATE_COLOR, STEP_DOCK_WIDTH_PX, SUBJECT_PATH_DWELL_EPS, SUBJECT_PATH_FULL_FRAME_COVERAGE, SUBJECT_PATH_MAX_POINTS, SceneMonitorEditor, ScopePicker, ScriptHeroCard, ScriptInlineControl, ScrollArea, SecretFieldControl, SecretRevealProvider, SectionCard, SectionToolbar, SectionedPage, SegmentedChoice, Select, SelectedChip, SemanticBadge, SendFrameToTrainingButton, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, SettingRow, Sidebar, SidebarItem, Skeleton, SlideToggle, Gauge as Sn, SnapshotButton, SortHeaderButton, Sparkline, Cable as Sr, Plus as St, StableTabPanel, StatCard, StateTimeline, StateValuesStream, StatusBadge, StepDetailDock, StepInspectorPanel, StepModelRow, StepTimings, Stepper, StorageRecordsPanel, StreamBrokerSelector, StreamDebugOverlay, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, Truck as T, TABLE_SCROLL_MAX_H, TEXT_FIELD_LABEL, TEXT_HINT, TEXT_METRIC, TEXT_SECTION_LABEL, TEXT_VALUE, TIMEZONES, Tabs, TabsContent, TabsList, TabsTrigger, TapToggle, ThemeProvider, ThermostatHeroCard, ThermostatInlineControl, TimeSeriesChart, TimezoneSelector, Footprints as Tn, Tooltip, TooltipContent, TooltipTrigger, Box as Tr, TrainingBaseModelPicker, TrainingCollectionPicker, Pipette as Tt, Sprout as U, UiTextProvider, UiTrans, Crosshair as Un, UnitPicker, ArrowRight as Ur, Mic as Ut, Star as V, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, Dog as Vn, VodPlaybackProvider, ArrowUp as Vr, Minus as Vt, Sparkles as W, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, Cpu as Wn, ArrowLeft as Wr, MessageSquare as Wt, Siren as X, CloudRain as Xn, Lock as Xt, SkipBack as Y, CloudSnow as Yn, Activity as Yr, Mail as Yt, Ship as Z, CloudLightning as Zn, ZoneEditingProvider, LockOpen as Zt, UtensilsCrossed as _, Hand as _n, ChartLine as _r, QrCode$1 as _t, Wrench as a, acceleratorLabel, acceleratorShortLabel, agentColumnKey, alignSeries, allDeviceTypeFilterOptions, LayoutGrid as an, anchorNow, applyFleetQueryDefaults, applyPickerFilters, CirclePause as ar, ariaSortForColumn, assignNodeColorId, Search as at, axisTicks, UserCheck as b, badgeFor, bindsToModel, Grid2x2 as bn, booleanLabels, Car as br, PowerOff as bt, bucketTotals, buildColorByNodeId, buildDataRecordRows, buildPeerConnectionConfig, buildStepTreeFromSchema, buildSubjectPath, buildTimeSeriesModel, Wifi as c, catalogHasDraft, chartKeys, chartSeriesStyle, childEntityId, childListName, chipOverflow, chunk, classifyAddressScope, classifyCapability, classifySessionVerdict, clearPickerGroup, clusterRootModelIds, cn, colorIdForNode, columnsForContext, compareSrflxMappings, computePageButtons, consumableItemLevel, consumableLevelBarClass, consumableLevelLabel, consumableLevelVariant, containerChildToRef, countableDevices, coverHighlight, coverageLine, CircleCheckBig as cr, createAddonI18n, createSharedContext, createTheme, Save as ct, currentAddonLanguage, cursorFractionFor, WifiLow as d, darkColors, dataRecordContents, dataRecordKey, dataRecordSearchText, dataRecordType, dataTableFacetGroups, dataTableFacets, decodeCustomWindow, decodeSeriesRef, defaultAxisSpec, defaultOfField, defaultSelectClusterRoots, defaultSingleClusterRoot, defaultTheme, defaultUiText, deriveDeviceKind, deriveWebrtcDebugStats, describeDeviceSelector, deviceIntegrationResolver, deviceListStateOf, deviceMatchesFilter, deviceOptionLabel, deviceRoleMeta, deviceRoleMetaOf, deviceTypeLabel, deviceTypeMeta, deviceTypeMetaOf, devicesToOptions, ImageOff as dn, dockBox, ChevronsDownUp as dr, draftFromQuery, RotateCw as dt, effectivePageSize, emptyDevicesWidens, emptySessionRun, List as en, encodeCustomWindow, encodeSeriesRef, energyBuckets, ensureMfHostInit, Clapperboard as er, ShieldCheck as et, eventKindLabel, WifiHigh as f, filterDataTableRows, filterDeviceOptions, filterOccupancyLines, filterOptions as filterOptionSelectOptions, filterPickerDevices, finalizeSessionRun, findTimezone, flattenPickerGrouping, flattenPickerRows, fleetViewOf, House as fn, formatChartBytes, formatChartNumber, formatChartValue, formatControlDateTime, formatLastSeen, formatNumeric, formatSettingValue, formatSpan, formatTimeLabel, ChevronUp as fr, freezeVerdict, RotateCcw as ft, fuzzyMatch, Vibrate as g, gapThresholdMs, getClassColor, getPhaseVisual, HardDrive as gn, Check as gr, groupAgentColumns, groupChildrenByLayout, groupDeviceSeries, groupPickerDevices, groupPickerDevicesBy, Radar as gt, Volume2 as h, hardwareLabel, historyPageHref, Hash as hn, ChevronDown as hr, RadioTower as ht, hubOrigin, hubPath, hubUrl, hubWsUrl, humanDuration, humanizeName, humidifierTint, X as i, iconGlyphsFailed, iconGlyphsLoaded, Leaf as in, initialScrubState, insertAtSelection, CirclePlus as ir, isAbsentProvider, isByteUnit, isConsumableLevelField, isDataTableFilterActive, isDrawableSubjectPath, isFieldVisible, isGroupExpanded, isHistoryWindowId, isKeychainFieldValue, isRedactedSecret, isRefusal, isSecretField, isValueField, Server as it, Tractor as j, Fan as jn, Bell as jr, Package as jt, Trash2 as k, Film as kn, Bird as kr, PawPrint as kt, WifiZero as l, lawnMowerActivityMeta, lightColors, linePoints, Inbox as ln, loadIconGlyphs, loadRemoteBundle, CircleAlert as lr, Sailboat as lt, lucideExportName, VolumeX as m, makeScrubBridge, mapRootDetectorPlacements, mergeSecretForSubmit, metadataEntries, metadataString, mirror, Heater as mn, mountAddonPage, mountPath, ChevronLeft as mr, Radio as mt, ZoomIn as n, nextGridPosition, nextReconnectAction, nextSort, nextSortDirection, nextTableSort, niceMax, niceRange, Link2 as nn, nodeColorClass, nodeSoftBgClass, nodeTextColorClass, normalizeForSearch, normalizeLanguage, normalizeSelection, CircleStop as nr, Share2 as nt, Workflow as o, occupancyFacets, occupancyLines, offListSelections, Laugh as on, openTopLayer, optionSearchText as optionSelectSearchText, CircleDot as or, orphanDeviceLabel, ScrollText as ot, overrideEntityIdFromLink, Waves as p, pageRows, pageSizeLabel, paginateRows, parentDetailOf, parseCapKey, parseConsumableLevel, parseIceCandidate, parsePickerGroupBy, parseProducerKey, parseRecordedServerMessage, partitionSelected as partitionOptionSelectSelected, partitionSuggested, pickerFacetFilterShown, pickerFacetKey, pickerFacetOptions, pickerFiltersActive, pickerGroupKey, pickerHiddenSelectedCount, pickerLocationKey, pickerQueryTokens, pickerRowFacts, pickerSearchText, pickerZoneFilterSuspended, pinnedStreamChoices, placePopover, History as pn, ChevronRight as pr, previousWindow, projectSubjectPath, providerIcons, RefreshCw as pt, SlidersHorizontal as q, Cloud as qn, AlarmSmoke as qr, Maximize2 as qt, Zap as r, readHistory, readHistoryPanels, readItemId, readStoredGroupBy, reduceSessionRun, registerAddonBundle, renderMarkup, renderTagged, resetHubMountForTests, resetPickerFilters, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDeviceIntegration, resolveDisplayIcon, resolveEffectiveDefaultModel, resolveEffectiveStepModel, resolveEventKindIcon, resolveHistoryWindow, resolveSearchable as resolveOptionSelectSearchable, resolveParentNames, resolvePrimaryChild, resolveSelectedDevices, resolveSensorDisplay, resolveStepDefaultModel, retrainReviewBadgeLook, Lightbulb as rn, roiTooLarge, rootSourceState, routerBasename, CircleQuestionMark as rr, Settings as rt, Wind as s, sameLocationSuggestions, scrubReducer, searchSteps, secretDisplayValue, secretSubmitValue, segmentsFromChanges, selectPickerGroup, selectedDeviceOptions, serializeRecordedCommand, seriesRefId, settingsModelIdFor, sharedGapSpans, shiftPoints, shouldCommit, shouldEmit, shouldShowAddNewFooter, shouldShowUseQueryRow, shouldUseSingleNode, showsNoCamerasHint, Info as sn, sortRows, sortRowsByColumn, CircleCheck as sr, Scan as st, stackBuckets, stackSeries, stateAt, stateRow, stateStyle, statusIcons, statusLine, stepFieldDomId, stepHasModelForFormat, stepLocalFields, stepModelOptions, stripParentNamePrefix, subjectPathSampleFromBox, subjectPathSvgPoints, summarizeHubCandidates, swatchFillClass, swatchLineClass, ZoomOut as t, tabForSelector, themeToCss, themeToRootCss, timeInState, ListChecks as tn, toStationaryOverlayBox, toggleDataTableFacet, toggleDataTableGroupFacet, togglePickerDevice, togglePickerKey, CircleX as tr, trainingRefusalText, translateAddonKey, trpc, ShieldAlert as tt, typeLabel, WifiOff as u, Image as un, unitAxes, ChevronsUpDown as ur, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsGetIntegrationSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, useAddonT, useAddonWidgetsListWidgets, useAddonsApplyAutoUpdateToAll, useAddonsCancelJob, useAddonsCustom, useAddonsForceRefresh, useAddonsGetAddonAutoUpdate, useAddonsGetAutoUpdateSettings, useAddonsGetJob, useAddonsGetLastRestart, useAddonsGetLogs, useAddonsGetVersions, useAddonsInstallFromWorkspace, useAddonsInstallPackage, useAddonsIsWorkspaceAvailable, useAddonsList, useAddonsListCapabilityProviders, useAddonsListFrameworkPackages, useAddonsListInstallations, useAddonsListJobs, useAddonsListPackages, useAddonsListUpdates, useAddonsListWorkspacePackages, useAddonsOnAddonLogs, useAddonsReloadPackages, useAddonsRestartAddon, useAddonsRestartServer, useAddonsRetryLoad, useAddonsRollbackPackage, useAddonsSearchAvailable, useAddonsSetAddonAutoUpdate, useAddonsSetAutoUpdateSettings, useAddonsSetCapabilityProviderEnabled, useAddonsStartJob, useAddonsUninstallPackage, useAddonsUpdatePackage, useAirQualitySensorGetStatus, useAlarmPanelArm, useAlarmPanelDisarm, useAlarmPanelGetStatus, useAlarmPanelTrigger, useAlert, useAlertsDismiss, useAlertsEmit, useAlertsGetUnreadCount, useAlertsList, useAlertsMarkAllRead, useAlertsMarkRead, useAlertsUpdate, useAllWidgets, useAmbientLightSensorGetStatus, useAudioAnalysisApplyDeviceSettingsPatch, useAudioAnalysisGetDeviceLiveContribution, useAudioAnalysisGetDeviceSettingsContribution, useAudioAnalysisResolveDeviceSettings, useAudioAnalyzerAnalyseChunk, useAudioAnalyzerAttachDevice, useAudioAnalyzerClassify, useAudioAnalyzerDetachDevice, useAudioAnalyzerDispose, useAudioAnalyzerIsReady, useAudioAnalyzerReprobeAudioEngine, useAudioCodecCanHandle, useAudioCodecCloseSession, useAudioCodecCreateDecodeSession, useAudioCodecCreateEncodeSession, useAudioCodecFlushEncode, useAudioCodecListActiveSessions, useAudioCodecListSupportedCodecs, useAudioCodecPullEncoded, useAudioCodecPullPcm, useAudioCodecPushEncodedFrame, useAudioCodecPushPcm, useAudioMetricsGetCurrentSnapshot, useAudioMetricsGetHistory, useAutomationControlDisable, useAutomationControlEnable, useAutomationControlGetStatus, useAutomationControlTrigger, useBackupCancel, useBackupCheckBackupKey, useBackupDelete, useBackupDeleteSchedule, useBackupDisableEncryption, useBackupGetEncryption, useBackupGetEntries, useBackupList, useBackupListArchives, useBackupListAvailableDatabases, useBackupListDestinations, useBackupListLocations, useBackupListRuns, useBackupListSchedules, useBackupPreviewSchedule, useBackupRestore, useBackupSetupEncryption, useBackupTrigger, useBackupUpsertDestinationPolicy, useBackupUpsertSchedule, useBatteryGetStatus, useBatteryWakeForStream, useBinaryGetStatus, useBrightnessGetStatus, useBrightnessSetBrightness, useBrokerAdd, useBrokerGet, useBrokerGetBrokerConfig, useBrokerGetSettings, useBrokerGetSettingsSchema, useBrokerGetState, useBrokerGetStatus, useBrokerList, useBrokerListProviders, useBrokerPublish, useBrokerRemove, useBrokerSetSettings, useBrokerSubscribe, useBrokerTestConnection, useBrokerTestSettings, useBrokerUnsubscribe, useButtonPress, useCalendarsGetPreferences, useCalendarsListCalendars, useCalendarsListEvents, useCalendarsSetCalendarPreference, useCameraCredentialsGetCredentials, useCameraCredentialsGetStatus, useCameraGridLayoutApplyDeviceSettingsPatch, useCameraGridLayoutGetDeviceLiveContribution, useCameraGridLayoutGetDeviceSettingsContribution, useCameraGridLayoutGetLayout, useCameraGridLayoutSaveLayout, useCameraPipelineConfigApplyDeviceSettingsPatch, useCameraPipelineConfigGetDeviceLiveContribution, useCameraPipelineConfigGetDeviceSettingsContribution, useCameraStreamsGetBrokerStreams, useCameraStreamsGetCameraStreams, useCameraStreamsGetProfileRtspEntries, useCameraStreamsGetRtspEntries, useCameraStreamsPickStream, useCapabilityPresence, useCarbonMonoxideGetStatus, useClimateControlGetStatus, useClimateControlSetFanMode, useClimateControlSetMode, useClimateControlSetPreset, useClimateControlSetSwingHorizontal, useClimateControlSetSwingVertical, useClimateControlSetTarget, useClimateControlSetTargetHumidity, useClimateControlSetTargetRange, useClusterNodes, useClusterTopology, useColorGetStatus, useColorSetColor, useConfirm, useConnectionTestDescribeTest, useConnectionTestTestSettings, useConnectivityGetStatus, useConsumablesGetStatus, useConsumablesReset, useContactGetStatus, useContainerChildren, useControlGetStatus, useControlSetValue, useCoreBlocksCompile, useCoreBlocksCreate, useCoreBlocksCreateComposition, useCoreBlocksDelete, useCoreBlocksGet, useCoreBlocksGetBlockSettings, useCoreBlocksGetComposition, useCoreBlocksGetCustomization, useCoreBlocksGetTypeDefs, useCoreBlocksList, useCoreBlocksListComposableCaps, useCoreBlocksListCompositions, useCoreBlocksMigrateRawSecrets, useCoreBlocksRestart, useCoreBlocksSetEnabled, useCoreBlocksUpdate, useCoreBlocksUpdateBlockSettings, useCoreBlocksUpdateComposition, useCoreBlocksValidateComposition, useCoverClose, useCoverGetStatus, useCoverOpen, useCoverSetPosition, useCoverSetTiltPosition, useCoverStop, useCustomFieldRenderer, useDataTableFilter, useDayNightGetOptions, useDayNightGetStatus, useDayNightSetSettings, useDebouncedString, useDecoderGetInfo, useDecoderReprobeHwaccel, useDetectionPipelineApplyDeviceSettingsPatch, useDetectionPipelineGetDeviceLiveContribution, useDetectionPipelineGetDeviceSettingsContribution, useDevShell, useDevice, useDeviceAdminLink, useDeviceAdminLinkGetAdminLink, useDeviceAdoptionAdopt, useDeviceAdoptionGetCandidate, useDeviceAdoptionGetStatus, useDeviceAdoptionListCandidateFilters, useDeviceAdoptionListCandidates, useDeviceAdoptionRefresh, useDeviceAdoptionRelease, useDeviceAdoptionResync, useDeviceAutotrack, useDeviceBattery, useDeviceCapSlice, useDeviceCapability, useDeviceCredentialsDeleteDeviceCredential, useDeviceCredentialsGetDeviceCaStatus, useDeviceCredentialsGetDeviceCertificateSettings, useDeviceCredentialsListDeviceCredentials, useDeviceCredentialsRenameDeviceCredential, useDeviceCredentialsRevokeDeviceCredential, useDeviceCredentialsSetDeviceCertificateSettings, useDeviceCredentialsStartEnrollment, useDeviceDetections, useDeviceDiscoveryAdoptDevice, useDeviceDiscoveryGetStatus, useDeviceDiscoveryListDiscovered, useDeviceDiscoveryRefreshDiscovery, useDeviceDiscoveryReleaseDevice, useDeviceExportApplyDeviceSettingsPatch, useDeviceExportExposeDevice, useDeviceExportGetDeviceLiveContribution, useDeviceExportGetDeviceSettingsContribution, useDeviceExportGetStatus, useDeviceExportListExposedDevices, useDeviceExportListSupportedDeviceKinds, useDeviceExportUnexposeDevice, useDeviceExtensionListCandidates, useDeviceExtensionListSlots, useDeviceExtensionListSources, useDeviceExtensionSetSlot, useDeviceHistoryDeclareSeries, useDeviceHistoryDeleteOrphanSeries, useDeviceHistoryGetDeviceEnabled, useDeviceHistoryGetStatus, useDeviceHistoryListNodeSeries, useDeviceHistoryListOrphanSeries, useDeviceHistoryListSeries, useDeviceHistoryQuery, useDeviceHistoryQueryMany, useDeviceHistoryQueryNode, useDeviceHistoryRecord, useDeviceHistoryRecordBuckets, useDeviceHistorySetDeviceEnabled, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionCancelJob, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionListJobs, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAdoptionStartJob, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyInitialMeta, useDeviceManagerCleanupDeletedDevicesData, useDeviceManagerCreateDevice, useDeviceManagerDisable, useDeviceManagerDiscoverAllProviders, useDeviceManagerDiscoverDevices, useDeviceManagerDiscoverProvider, useDeviceManagerDiscoveryProviders, useDeviceManagerEnable, useDeviceManagerGetAllBindings, useDeviceManagerGetBindings, useDeviceManagerGetBindingsBatch, useDeviceManagerGetChildren, useDeviceManagerGetChildrenBatch, useDeviceManagerGetConfigSchema, useDeviceManagerGetCreationSchema, useDeviceManagerGetDevice, useDeviceManagerGetDeviceAggregate, useDeviceManagerGetDeviceLiveInfoAggregate, useDeviceManagerGetDeviceSettingsAggregate, useDeviceManagerGetDeviceStatusAggregate, useDeviceManagerGetDeviceStatusAggregateBatch, useDeviceManagerGetLinkedDevices, useDeviceManagerGetLinkedDevicesBatch, useDeviceManagerGetRoleDisplayDefaults, useDeviceManagerGetSettingsSchema, useDeviceManagerGetStreamProfileMap, useDeviceManagerGetStreamSources, useDeviceManagerGetWireableFields, useDeviceManagerGetWrapperActivation, useDeviceManagerListAll, useDeviceManagerListBindableCapsForDeviceType, useDeviceManagerListDeletedSince, useDeviceManagerListDeviceIdsByCaps, useDeviceManagerListLocationDescriptions, useDeviceManagerListLocationIcons, useDeviceManagerListLocations, useDeviceManagerListPersistedByAddon, useDeviceManagerListSiteZones, useDeviceManagerListWrappersForCap, useDeviceManagerLoadConfig, useDeviceManagerLoadMeta, useDeviceManagerLoadRuntimeState, useDeviceManagerMigrateDevice, useDeviceManagerPersistConfig, useDeviceManagerProbeStreams, useDeviceManagerProviderCreationType, useDeviceManagerProviderDiscoveryParamsSchema, useDeviceManagerRegisterDevice, useDeviceManagerRemove, useDeviceManagerRemoveByIntegration, useDeviceManagerRemoveDevice, useDeviceManagerRemoveLocation, useDeviceManagerRemoveSiteZone, useDeviceManagerRenameLocation, useDeviceManagerRenameSiteZone, useDeviceManagerRunDeviceAction, useDeviceManagerSetChildLayout, useDeviceManagerSetDisabled, useDeviceManagerSetDisplay, useDeviceManagerSetIntegrationId, useDeviceManagerSetLinkDeviceId, useDeviceManagerSetLocation, useDeviceManagerSetLocationDescription, useDeviceManagerSetLocationIcon, useDeviceManagerSetLocationZone, useDeviceManagerSetMetadata, useDeviceManagerSetName, useDeviceManagerSetPrimaryChildEntityId, useDeviceManagerSetRole, useDeviceManagerSetRoleDisplayDefaults, useDeviceManagerSetSiteZone, useDeviceManagerSetStreamProfileMap, useDeviceManagerSetType, useDeviceManagerSetWrapperActive, useDeviceManagerTestCreationField, useDeviceManagerTestField, useDeviceManagerUpdateConfig, useDeviceManagerUpdateDeviceField, useDeviceManagerUpdateDeviceFieldsBatch, useDeviceNetworkLink, useDeviceOpsGetConfigEntries, useDeviceOpsGetRawState, useDeviceOpsGetSettingsSchema, useDeviceOpsGetStreamSources, useDeviceOpsRemoveDevice, useDeviceOpsRunAction, useDeviceOpsSetConfig, useDeviceProviderAdoptDiscoveredDevice, useDeviceProviderCreateDevice, useDeviceProviderDiscoverDevices, useDeviceProviderGetChildCreationSchema, useDeviceProviderGetDevices, useDeviceProviderGetDiscoveryParamsSchema, useDeviceProviderGetManualCreationType, useDeviceProviderGetStatus, useDeviceProviderReloadDevice, useDeviceProviderStart, useDeviceProviderStop, useDeviceProviderSupportsDiscovery, useDeviceProviderSupportsManualCreation, useDeviceProviderTestCreationField, useDeviceProxy, useDeviceQuickDetailOpen, useDeviceSeriesList, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateClaimFields, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetNativeCapSlice, useDeviceStateGetSnapshot, useDeviceStateListClaims, useDeviceStatePatchOwnedFields, useDeviceStateReleaseClaim, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, useDishwasherGetOptions, useDishwasherGetStatus, useDishwasherPause, useDishwasherResume, useDishwasherSetChildLock, useDishwasherSetExtraDry, useDishwasherSetHalfLoad, useDishwasherSetHygienePlus, useDishwasherSetIntensiveZone, useDishwasherSetOption, useDishwasherSetPower, useDishwasherSetProgram, useDishwasherSetVarioSpeedPlus, useDishwasherStart, useDishwasherStop, useDisplayIconResolver, useDoorbellEvents, useDoorbellGetStatus, useEnumSensorGetStatus, useEventEmitterGetStatus, useEventInvalidation, useEventStreamLatest, useEventStreamMap, useFaceGalleryAssignFace, useFaceGalleryAssignFaces, useFaceGalleryAuditIdentitySamples, useFaceGalleryCreateIdentity, useFaceGalleryDeleteFace, useFaceGalleryDeleteIdentity, useFaceGalleryGetFaceByTrack, useFaceGalleryGetFaceMedia, useFaceGalleryListIdentities, useFaceGalleryListIdentitySamples, useFaceGalleryListRecentFaces, useFaceGalleryRemoveSample, useFaceGalleryRenameIdentity, useFaceGallerySuggestFaceClusters, useFaceGalleryUnassignFace, useFaceGalleryUnassignFaces, useFanControlGetStatus, useFanControlSetDirection, useFanControlSetOscillating, useFanControlSetPercentage, useFanControlSetPreset, useFeatureProbeGetStatus, useFloodGetStatus, useGasGetStatus, useHeatingValveGetStatus, useHistoryPanels, useHistoryReader, useHistoryReads, useHumidifierGetStatus, useHumidifierSetMode, useHumidifierSetOn, useHumidifierSetTargetHumidity, useHumiditySensorGetStatus, useIconGlyphsVersion, useImageGetStatus, useImageSettingsGetOptions, useImageSettingsGetStatus, useImageSettingsSetSettings, useIntegrationsCreate, useIntegrationsDelete, useIntegrationsGet, useIntegrationsGetAvailableTypes, useIntegrationsGetByAddonId, useIntegrationsGetSettings, useIntegrationsList, useIntegrationsSetSettings, useIntegrationsTestConnection, useIntegrationsUpdate, useIntercomEndTalkSession, useIntercomGetStatus, useIntercomHandleAnswer, useIntercomPushTalkAudio, useIntercomStartSession, useIntercomStartTalkSession, useIntercomStopSession, useIsMidWidth, useIsMobile, useItemFormUrl, useKeychainAdminAcknowledgeReset, useKeychainAdminDeleteOrphans, useKeychainAdminDownloadRecoveryKey, useKeychainAdminImportSecret, useKeychainAdminListAudit, useKeychainAdminListSecrets, useKeychainAdminPurgeRetiredKeys, useKeychainAdminResetKeychain, useKeychainAdminResetReport, useKeychainAdminReveal, useKeychainAdminRotateMasterKey, useKeychainAdminSetSystemSecret, useKeychainAdminStatus, useLawnMowerControlDock, useLawnMowerControlGetStatus, useLawnMowerControlPause, useLawnMowerControlStartMowing, useLiveBuffer, useLiveEvent, useLlmCancel, useLlmDeleteModel, useLlmDeleteProfile, useLlmGenerate, useLlmGenerateVision, useLlmGetDefaults, useLlmGetRuntimeStatus, useLlmGetUsage, useLlmInstallModel, useLlmListModelCatalog, useLlmListModels, useLlmListNodeModels, useLlmListProfileKinds, useLlmListProfiles, useLlmListRuntimeNodes, useLlmMigrateRawSecrets, useLlmResolveModelRef, useLlmSetDefault, useLlmStartRuntime, useLlmStopRuntime, useLlmTestProfile, useLlmUpsertProfile, useLocalNetworkAddCustomAddress, useLocalNetworkDownloadCa, useLocalNetworkGetAddresses, useLocalNetworkGetAllowedAddresses, useLocalNetworkGetConnectionEndpoints, useLocalNetworkGetHubAddresses, useLocalNetworkGetNotificationEndpoint, useLocalNetworkGetPreferred, useLocalNetworkGetTlsStatus, useLocalNetworkGetViewerEndpoints, useLocalNetworkList, useLocalNetworkRegenerateCertificate, useLocalNetworkRemoveCustomAddress, useLocalNetworkResetAllowlistToBestMatch, useLocalNetworkRevertToGeneratedCertificate, useLocalNetworkSetAddressRole, useLocalNetworkSetAllowedAddresses, useLocalNetworkSetNotificationEndpoint, useLocalNetworkSetViewerEndpoints, useLocalNetworkUploadCertificate, useLocalNetworkUseStoredUploadedCertificate, useLockControlGetStatus, useLockControlLock, useLockControlOpen, useLockControlUnlock, useMediaPlayerGetStatus, useMediaPlayerNext, useMediaPlayerPause, useMediaPlayerPlay, useMediaPlayerPlayMedia, useMediaPlayerPrevious, useMediaPlayerSeek, useMediaPlayerSelectSource, useMediaPlayerSetMute, useMediaPlayerSetRepeat, useMediaPlayerSetShuffle, useMediaPlayerSetVolume, useMediaPlayerStop, useMeshNetworkGetStatus, useMeshNetworkJoin, useMeshNetworkLeave, useMeshNetworkListPeers, useMeshNetworkLogout, useMeshNetworkStartLogin, useMeshNetworkTestConnection, useMetricsProviderCollectSnapshot, useMetricsProviderGetAddonStats, useMetricsProviderGetCached, useMetricsProviderGetCpuTemperature, useMetricsProviderGetCurrent, useMetricsProviderGetDiskSpace, useMetricsProviderGetGpuInfo, useMetricsProviderGetLoadSeries, useMetricsProviderGetProcessStats, useMetricsProviderListAddonInstances, useMetricsProviderListNodeProcesses, useMotionDetectionAnalyze, useMotionDetectionApplyDeviceSettingsPatch, useMotionDetectionGetDeviceLiveContribution, useMotionDetectionGetDeviceSettingsContribution, useMotionDetectionRemoveCamera, useMotionDetectionReset, useMotionGetStatus, useMotionIsDetected, useMotionTriggerGetStatus, useMotionTriggerSetMotionTrigger, useMotionZonesGetOptions, useMotionZonesGetStatus, useMotionZonesSetZone, useMqttBrokerAddBroker, useMqttBrokerGetBrokerConfig, useMqttBrokerGetStatus, useMqttBrokerListBrokers, useMqttBrokerRemoveBroker, useMqttBrokerStartEmbeddedBroker, useMqttBrokerStopEmbeddedBroker, useMqttBrokerTestConnection, useNativeObjectDetectionGetOptions, useNativeObjectDetectionGetStatus, useNativeObjectDetectionSetEnabled, useNativeObjectDetectionSetSettings, useNavigation, useNavigationGetFeatures, useNavigationGetStatus, useNavigationGoToPoint, useNavigationListActions, useNavigationMove, useNavigationPlaySound, useNavigationRunAction, useNavigationSetLightLevel, useNavigationSetLightMode, useNavigationSetLightOn, useNavigationStop, useNetworkAccessGetEndpoint, useNetworkAccessGetStatus, useNetworkAccessListEndpoints, useNetworkAccessStart, useNetworkAccessStop, useNetworkLinkGetStatus, useNetworkQualityGetAllStats, useNetworkQualityGetDeviceStats, useNetworkQualityReportClientStats, useNodesClusterAddonStatus, useNodesDeployAddon, useNodesDirectory, useNodesExecuteQuery, useNodesGetCapUsageGraph, useNodesGetNodeAddons, useNodesRenameNode, useNodesRestartAddon, useNodesRestartNode, useNodesRestartProcess, useNodesSetProcessLogLevel, useNodesShutdownNode, useNodesTopology, useNodesUndeployAddon, useNotificationOutputDeleteTarget, useNotificationOutputDiscoverTargets, useNotificationOutputGetTarget, useNotificationOutputListTargetKinds, useNotificationOutputListTargets, useNotificationOutputProbeTargetConfig, useNotificationOutputSend, useNotificationOutputSetTargetEnabled, useNotificationOutputTestTarget, useNotificationOutputUpsertTarget, useNotificationRulesActivateAlarmProfile, useNotificationRulesCancelSnooze, useNotificationRulesCreateAlarmProfile, useNotificationRulesCreateRule, useNotificationRulesCreateSequence, useNotificationRulesCreateSnooze, useNotificationRulesDeleteAlarmProfile, useNotificationRulesDeleteRule, useNotificationRulesDeleteSequence, useNotificationRulesGetAlarmConfig, useNotificationRulesGetAlarmSensors, useNotificationRulesGetClipRetentionAsks, useNotificationRulesGetConditionCatalog, useNotificationRulesGetHistory, useNotificationRulesGetRule, useNotificationRulesGetRuleLastRuns, useNotificationRulesGetSequence, useNotificationRulesGetTemplateCatalog, useNotificationRulesListDeviceMutes, useNotificationRulesListRules, useNotificationRulesListSequences, useNotificationRulesListSnoozes, useNotificationRulesPreviewStateSummary, useNotificationRulesPreviewTemplate, useNotificationRulesRenameAlarmProfile, useNotificationRulesResolveArtifactUrl, useNotificationRulesSetAlarmConfig, useNotificationRulesSetDeviceMuted, useNotificationRulesSetRuleEnabled, useNotificationRulesTestRule, useNotificationRulesUpdateRule, useNotificationRulesUpdateSequence, useNotifierCancel, useNotifierGetStatus, useNotifierSend, useNumericSensorGetStatus, useOidcConnectionsConnectionFormSchema, useOidcConnectionsCreateConnection, useOidcConnectionsDeleteConnection, useOidcConnectionsListConnections, useOidcConnectionsUpdateConnection, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdManagerClearSlotBinding, useOsdManagerCopyDeviceConfiguration, useOsdManagerDeleteTemplate, useOsdManagerGetConditionSupport, useOsdManagerGetDeviceOsd, useOsdManagerGetSourceCatalog, useOsdManagerListTemplates, useOsdManagerPreviewSlot, useOsdManagerRenderDevice, useOsdManagerSetSlotBinding, useOsdManagerSetSlotCameraEnabled, useOsdManagerUpsertTemplate, useOsdSetOverlay, usePTZ, usePersistedDisclosure, usePersistedPageSize, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePickerSiteZones, usePipelineAnalyticsAddRetrainFrameFromRecording, usePipelineAnalyticsAddRetrainFramesToCollection, usePipelineAnalyticsApplyDeviceSettingsPatch, usePipelineAnalyticsBackfillRetrainOrigins, usePipelineAnalyticsCancelRelocateMedia, usePipelineAnalyticsCancelStorageMigrationMove, usePipelineAnalyticsClearTrackRelation, usePipelineAnalyticsClearTracks, usePipelineAnalyticsCompleteRetrainTrack, usePipelineAnalyticsCountRelocatableMedia, usePipelineAnalyticsCountUnstampedEventMedia, usePipelineAnalyticsCreateRetrainCollection, usePipelineAnalyticsDeleteDeviceEvents, usePipelineAnalyticsDeleteRetrainCollection, usePipelineAnalyticsDeleteTracks, usePipelineAnalyticsDeselectRetrainFrame, usePipelineAnalyticsGetActiveTracks, usePipelineAnalyticsGetAudioEvents, usePipelineAnalyticsGetDeviceLiveContribution, usePipelineAnalyticsGetDeviceSettingsContribution, usePipelineAnalyticsGetEventDensity, usePipelineAnalyticsGetEventDensityBatch, usePipelineAnalyticsGetEventMedia, usePipelineAnalyticsGetEventMediaFootprintByKind, usePipelineAnalyticsGetEventStoreFootprint, usePipelineAnalyticsGetKeyEvents, usePipelineAnalyticsGetKeyEventsBatch, usePipelineAnalyticsGetMediaReclaimStatus, usePipelineAnalyticsGetMotionEvents, usePipelineAnalyticsGetObjectEmbeddingRebuildStatus, usePipelineAnalyticsGetObjectEvents, usePipelineAnalyticsGetRetrainCorpusKpi, usePipelineAnalyticsGetRetrainExportUrl, usePipelineAnalyticsGetRetrainFrameImage, usePipelineAnalyticsGetSensorEvents, usePipelineAnalyticsGetStorageMigrationMoveStatus, usePipelineAnalyticsGetTrack, usePipelineAnalyticsGetTrackMedia, usePipelineAnalyticsGetTrainingExportSummary, usePipelineAnalyticsGetTrainingExportUrl, usePipelineAnalyticsListArchivedDebugNotes, usePipelineAnalyticsListBirthDecisions, usePipelineAnalyticsListEventKinds, usePipelineAnalyticsListEventKindsBatch, usePipelineAnalyticsListEventMedia, usePipelineAnalyticsListOpsLog, usePipelineAnalyticsListRecentTracks, usePipelineAnalyticsListRelocateMediaJobs, usePipelineAnalyticsListRetrainAnnotations, usePipelineAnalyticsListRetrainAssistProfiles, usePipelineAnalyticsListRetrainCollectionFrames, usePipelineAnalyticsListRetrainCollections, usePipelineAnalyticsListRetrainCorpusPage, usePipelineAnalyticsListRetrainFrames, usePipelineAnalyticsListRetrainStaging, usePipelineAnalyticsListTrackMedia, usePipelineAnalyticsListTrackRelations, usePipelineAnalyticsListTracks, usePipelineAnalyticsOfferRetrainArchive, usePipelineAnalyticsOwnersWithMedia, usePipelineAnalyticsPauseForStorageMigration, usePipelineAnalyticsProposeRetrainAnnotations, usePipelineAnalyticsProposeRetrainAnnotationsWithLlm, usePipelineAnalyticsPruneEvents, usePipelineAnalyticsPruneEventsBefore, usePipelineAnalyticsPruneTracksBefore, usePipelineAnalyticsReadLongTermSeries, usePipelineAnalyticsRebuildObjectEmbeddings, usePipelineAnalyticsReclaimDebugMedia, usePipelineAnalyticsReconcileFromDisk, usePipelineAnalyticsRefreshStorageLocationsForMigration, usePipelineAnalyticsRelocateMedia, usePipelineAnalyticsRemoveRetrainFrameFromCollection, usePipelineAnalyticsRenameRetrainCollection, usePipelineAnalyticsResolveRetrainTrainingCorpus, usePipelineAnalyticsRestageRetrainTrack, usePipelineAnalyticsResumeForStorageMigration, usePipelineAnalyticsSaveRetrainAnnotations, usePipelineAnalyticsSearchObjectEvents, usePipelineAnalyticsSelectRetrainFrames, usePipelineAnalyticsSetRetrainFrameComplete, usePipelineAnalyticsSetTrackFlags, usePipelineAnalyticsSetTrackPurity, usePipelineAnalyticsSetTrackRelation, usePipelineAnalyticsStartStorageMigrationMove, usePipelineAnalyticsWipeAllAnalytics, usePipelineAnalyticsWipeObjectEmbeddings, usePipelineAnalyticsWriteRetrainArchive, usePipelineExecutorCacheFrameInPool, usePipelineExecutorClearDeviceOverrides, usePipelineExecutorClearModelBoundDeviceOverrides, usePipelineExecutorDeleteModel, usePipelineExecutorDownloadModel, usePipelineExecutorGetAddonModels, usePipelineExecutorGetAudioCapabilities, usePipelineExecutorGetAvailableEngines, usePipelineExecutorGetCapabilities, usePipelineExecutorGetDefaultSteps, usePipelineExecutorGetDetectionConfigSchema, usePipelineExecutorGetEffectiveTuning, usePipelineExecutorGetEngineProvisioning, usePipelineExecutorGetGlobalPipelineConfig, usePipelineExecutorGetGlobalSteps, usePipelineExecutorGetInferenceDeviceHealth, usePipelineExecutorGetOrchestratorConfigSchema, usePipelineExecutorGetReferenceAudio, usePipelineExecutorGetReferenceAudioFiles, usePipelineExecutorGetReferenceImage, usePipelineExecutorGetSchema, usePipelineExecutorGetSelectedEngine, usePipelineExecutorGetVideoPipelineSteps, usePipelineExecutorInferCached, usePipelineExecutorKillEngine, usePipelineExecutorListLoadedEngines, usePipelineExecutorListReferenceImages, usePipelineExecutorRearmInferenceDevice, usePipelineExecutorRunAudioTest, usePipelineExecutorRunPipeline, usePipelineExecutorRunPipelineBatch, usePipelineExecutorSetVideoPipelineSteps, usePipelineExecutorSpinEngine, usePipelineExecutorUncacheFrame, usePipelineExecutorValidatePipeline, usePipelineOrchestratorAbortNodeBenchmark, usePipelineOrchestratorApplyAutoTune, usePipelineOrchestratorApplyDeviceSettingsPatch, usePipelineOrchestratorAssignAudio, usePipelineOrchestratorAssignPipeline, usePipelineOrchestratorDeleteNodeBenchmarkResult, usePipelineOrchestratorGetAgentLoad, usePipelineOrchestratorGetAgentSettings, usePipelineOrchestratorGetAudioAssignment, usePipelineOrchestratorGetAudioAssignments, usePipelineOrchestratorGetAudioNodeLoad, usePipelineOrchestratorGetCameraDetectionSource, usePipelineOrchestratorGetCameraMetrics, usePipelineOrchestratorGetCameraSettings, usePipelineOrchestratorGetCameraStatus, usePipelineOrchestratorGetCameraStatuses, usePipelineOrchestratorGetCameraStepOverrides, usePipelineOrchestratorGetCameraSwitches, usePipelineOrchestratorGetCapabilityBindings, usePipelineOrchestratorGetClusterModelChoice, usePipelineOrchestratorGetDeviceLiveContribution, usePipelineOrchestratorGetDeviceSettingsContribution, usePipelineOrchestratorGetEffectiveShares, usePipelineOrchestratorGetGlobalMetrics, usePipelineOrchestratorGetIngestOwner, usePipelineOrchestratorGetNodeBenchmarkCandidates, usePipelineOrchestratorGetNodeBenchmarkPreflight, usePipelineOrchestratorGetNodeBenchmarkStatus, usePipelineOrchestratorGetNodeInferenceDevices, usePipelineOrchestratorGetPipelineAssignment, usePipelineOrchestratorGetPipelineAssignments, usePipelineOrchestratorGetPipelineDevicePin, usePipelineOrchestratorGetPlacementStats, usePipelineOrchestratorGetReconcileFromDiskStatus, usePipelineOrchestratorListAgentSettings, usePipelineOrchestratorListNodeBenchmarkResults, usePipelineOrchestratorPauseForStorageMigration, usePipelineOrchestratorPlanAutoTune, usePipelineOrchestratorRebalance, usePipelineOrchestratorReconcileFromDisk, usePipelineOrchestratorRemoveAgentSettings, usePipelineOrchestratorRequestOccupancyLook, usePipelineOrchestratorResetNodePipelineDefaults, usePipelineOrchestratorResolvePipeline, usePipelineOrchestratorResumeForStorageMigration, usePipelineOrchestratorSetAgentCapabilities, usePipelineOrchestratorSetAgentDecodeLimits, usePipelineOrchestratorSetAgentInferenceDevices, usePipelineOrchestratorSetAgentMaxCameras, usePipelineOrchestratorSetAgentReachableHost, usePipelineOrchestratorSetCameraDetectionSource, usePipelineOrchestratorSetCameraPipelineForAgent, usePipelineOrchestratorSetCameraSensors, usePipelineOrchestratorSetCameraStepOverride, usePipelineOrchestratorSetCameraStepSettings, usePipelineOrchestratorSetCameraStepToggle, usePipelineOrchestratorSetCameraSwitch, usePipelineOrchestratorSetCapabilityBinding, usePipelineOrchestratorSetLoadBalancingShares, usePipelineOrchestratorSetPipelineDevicePin, usePipelineOrchestratorSetShareSource, usePipelineOrchestratorStartNodeBenchmark, usePipelineOrchestratorSuggestShares, usePipelineOrchestratorUnassignAudio, usePipelineOrchestratorUnassignPipeline, usePipelineRunnerAbortNodeBench, usePipelineRunnerAttachCamera, usePipelineRunnerDetachCamera, usePipelineRunnerGetAllCameraMetrics, usePipelineRunnerGetCameraMetrics, usePipelineRunnerGetLocalCameras, usePipelineRunnerGetLocalLoad, usePipelineRunnerGetLocalMetrics, usePipelineRunnerGetNativeCrop, usePipelineRunnerGetNodeBenchStatus, usePipelineRunnerGetParkedTrackFrame, usePipelineRunnerParkTrackFrame, usePipelineRunnerReleaseParkedTrackFrames, usePipelineRunnerReportMotion, usePipelineRunnerRequestOccupancyBurst, usePipelineRunnerRunDetailSubtree, usePipelineRunnerRunStatelessStep, usePipelineRunnerStartNodeBench, usePlateGalleryAssignPlate, usePlateGalleryAssignPlates, usePlateGalleryCorrectPlateText, usePlateGalleryCreateVehicle, usePlateGalleryDeletePlate, usePlateGalleryDeleteVehicle, usePlateGalleryGetPlateByTrack, usePlateGalleryGetPlateMedia, usePlateGalleryListPlates, usePlateGalleryListVehicleSamples, usePlateGalleryListVehicles, usePlateGalleryRemoveVehicleSample, usePlateGalleryRenameVehicle, usePlateGallerySearchPlates, usePlateGallerySuggestPlateClusters, usePlateGalleryUnassignPlate, usePlateGalleryUnassignPlates, usePlayerOverlayLayer, usePlayerOverlayLayers, usePlayerToolbarButton, usePlayerToolbarButtons, usePowerMeterGetStatus, usePresenceGetStatus, usePressureSensorGetStatus, usePrivacyMaskGetOptions, usePrivacyMaskGetStatus, usePrivacyMaskSetAudioEnabled, usePrivacyMaskSetMask, usePrompt, usePtzAutotrackGetSettings, usePtzAutotrackGetStatus, usePtzAutotrackSetEnabled, usePtzAutotrackSetSettings, usePtzCaptureHomeHere, usePtzContinuousMove, usePtzDeletePreset, usePtzGetHomePreset, usePtzGetHomeReturn, usePtzGetOptions, usePtzGetPosition, usePtzGetPresets, usePtzGetStatus, usePtzGoHome, usePtzGoToPreset, usePtzMove, usePtzSavePreset, usePtzSetAutofocus, usePtzSetHomePreset, usePtzSetHomeReturn, usePtzStop, useRebootReboot, useRecordEntriesDeleteEntry, useRecordEntriesListEntries, useRecordEntriesListEntryKinds, useRecordEntriesPutEntry, useRecordedPlayback, useRecordingArchiveApplyDeviceSettingsPatch, useRecordingArchiveCancelRelocateJob, useRecordingArchiveCancelStorageMigrationMove, useRecordingArchiveDeleteFootprint, useRecordingArchiveGetAvailabilityBatch, useRecordingArchiveGetDaysWithRecordingsBatch, useRecordingArchiveGetDeviceConfig, useRecordingArchiveGetDeviceLiveContribution, useRecordingArchiveGetDeviceSettingsContribution, useRecordingArchiveGetPlacement, useRecordingArchiveGetRelocateResidue, useRecordingArchiveGetStatus, useRecordingArchiveGetStorageMigrationMoveStatus, useRecordingArchiveGetStorageUsage, useRecordingArchiveListOpsLog, useRecordingArchiveListRelocateJobs, useRecordingArchiveLocateSegment, useRecordingArchivePauseForStorageMigration, useRecordingArchivePlanStorageRebalance, useRecordingArchivePruneFootage, useRecordingArchiveReadGopBytes, useRecordingArchiveReadSegmentBytes, useRecordingArchiveReadWindowBytes, useRecordingArchiveReconcileLedgerAgainstDisk, useRecordingArchiveRefreshStorageLocationsForMigration, useRecordingArchiveRelocateFootage, useRecordingArchiveRenderClip, useRecordingArchiveRenderGif, useRecordingArchiveRescanStorage, useRecordingArchiveResumeForStorageMigration, useRecordingArchiveSetDeviceConfig, useRecordingArchiveSetDevicePlacement, useRecordingArchiveStartStorageMigrationMove, useRecordingArchiveStartStorageRebalance, useRecordingExportCancelExport, useRecordingExportCreateExport, useRecordingExportDeleteExport, useRecordingExportGetDownloadUrl, useRecordingExportGetExport, useRecordingExportListExports, useRecordingExportReadExportBytes, useRecordingGetAvailability, useRecordingGetDaysWithRecordings, useRecordingGetPlayback, useRecordingGetPlaybackOptions, useRecordingListSources, useRecordingOnboardGetOptions, useRecordingOnboardGetStatus, useRecordingOnboardSetSettings, useRecordingSignalGetStatus, useRemoteComponent, useRoleDisplayDefaults, useSceneMonitorCaptureReference, useSceneMonitorCreateScene, useSceneMonitorDeleteReference, useSceneMonitorDeleteScene, useSceneMonitorGetStatus, useSceneMonitorListScenes, useSceneMonitorListScenesBatch, useSceneMonitorRecheckNow, useSceneMonitorResetScene, useSceneMonitorUpdateScene, useScriptRunnerGetStatus, useScriptRunnerRun, useScriptRunnerStop, useScrubController, useServerManagementApplyServerUpdate, useServerManagementCheckServerUpdate, useServerManagementGetServerPackageStatus, useServerManagementRestartServer, useServerManagementRollbackServerUpdate, useSettingsStoreAggregate, useSettingsStoreCount, useSettingsStoreDeclareCollection, useSettingsStoreDelete, useSettingsStoreDeleteWhere, useSettingsStoreGet, useSettingsStoreHistogram, useSettingsStoreInsert, useSettingsStoreInsertMany, useSettingsStoreIsEmpty, useSettingsStoreQuery, useSettingsStoreSet, useSettingsStoreTransact, useSettingsStoreUpdate, useSettingsStoreUpdateWhere, useSettingsStoreUpsert, useSettingsStoreUpsertMany, useSmokeGetStatus, useSnapshotApplyDeviceSettingsPatch, useSnapshotGetDebugState, useSnapshotGetDeviceLiveContribution, useSnapshotGetDeviceSettingsContribution, useSnapshotGetSnapshot, useSnapshotGetSnapshotLinks, useSnapshotGetSnapshotOverview, useSnapshotGetStatus, useSnapshotInvalidateCache, useStationaryOverlay, useStorageAbortUpload, useStorageBeginDownload, useStorageBeginUpload, useStorageDelete, useStorageDeleteLocation, useStorageEndDownload, useStorageExists, useStorageFinalizeUpload, useStorageGetAvailableSpace, useStorageList, useStorageListDrainProgress, useStorageListLocationDeclarations, useStorageListLocations, useStorageListProviders, useStorageMigrationCancel, useStorageMigrationCleanupCancel, useStorageMigrationCleanupStart, useStorageMigrationCleanupStatus, useStorageMigrationDrain, useStorageMigrationHistory, useStorageMigrationMoverClearance, useStorageMigrationMovers, useStorageMigrationPlan, useStorageMigrationResidue, useStorageMigrationStart, useStorageMigrationStatus, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStoredGroupBy, useStreamBrokerAcquireEgressTranscode, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerFetchEventMedia, useStreamBrokerForgetDeviceHardware, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceAudioMute, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, useStreamBrokerGetLiveViewerCounts, useStreamBrokerGetPreBufferInfo, useStreamBrokerGetRtspEntry, useStreamBrokerGetRtspPort, useStreamBrokerGetStreamUrl, useStreamBrokerGetStreamWithCodec, useStreamBrokerIsRtspEnabled, useStreamBrokerKillClient, useStreamBrokerListAllCameraStreams, useStreamBrokerListAllProfileSlots, useStreamBrokerListClients, useStreamBrokerProbeStream, useStreamBrokerProduceEventMedia, useStreamBrokerPublishCameraStream, useStreamBrokerPullAudioChunks, useStreamBrokerRegenerateRtspToken, useStreamBrokerReleaseEgressTranscode, useStreamBrokerReleaseStreamWithCodec, useStreamBrokerRenderPreBufferClip, useStreamBrokerReportStreamSignal, useStreamBrokerRestartProfile, useStreamBrokerRetractCameraStream, useStreamBrokerSetDeviceAudioMute, useStreamBrokerSetPreBufferDuration, useStreamBrokerSetRtspEnabled, useStreamBrokerSubscribeAudioChunks, useStreamBrokerUnassignProfile, useStreamBrokerUnsubscribeAudioChunks, useStreamCatalogGetCatalog, useStreamParamsGetConfigSchema, useStreamParamsGetOptions, useStreamParamsGetStatus, useStreamParamsSetProfile, useStreamSignalsListSignals, useSwitchGetStatus, useSwitchSetState, useSystem, useSystemDetectSiteLocation, useSystemFeatureFlags, useSystemForceRetentionCleanup, useSystemGetFailureContributions, useSystemGetLoadContributions, useSystemGetLoggingSettings, useSystemGetRequestCensus, useSystemGetRetentionConfig, useSystemGetSiteLocation, useSystemHealth, useSystemInfo, useSystemMutation, useSystemNetworkAddresses, useSystemQuery, useSystemSetLoggingSettings, useSystemSetRetentionConfig, useSystemSetSiteLocation, useTamperGetStatus, useTemperatureSensorGetStatus, useTerminalSessionAdoptLegacyMonitor, useTerminalSessionClose, useTerminalSessionCreateInstance, useTerminalSessionDeleteInstance, useTerminalSessionListInstances, useTerminalSessionListLegacyCameras, useTerminalSessionListProfiles, useTerminalSessionListSessions, useTerminalSessionOpenSession, useTerminalSessionPullOutput, useTerminalSessionResize, useTerminalSessionSetInstanceEnabled, useTerminalSessionUpdateInstance, useTerminalSessionWriteInput, useThemeMode, useToastOnToast, useTrainingCanaryResult, useTrainingCancelJob, useTrainingDiscardResult, useTrainingGetJob, useTrainingGetJobResult, useTrainingListBaseModels, useTrainingListJobs, useTrainingPlanJob, useTrainingRegisterResult, useTrainingRollbackCanary, useTrainingStartJob, useTrainingStartJobBatch, useTurnProviderGetTurnServers, useUiText, useUpdateGetStatus, useUpdateInstallUpdate, useUrlQueryParam, useUserManagementConfirmTotp, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementFindUserByExternalIdentity, useUserManagementGetTotpStatus, useUserManagementListExternalIdentities, useUserManagementListOauthSessions, useUserManagementListUsers, useUserManagementMigrateRawSecrets, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeOauthSession, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUnlinkExternalIdentity, useUserManagementUpdateUser, useUserManagementValidateCredentials, useUserManagementVerifyTotp, useVacuumControlGetStatus, useVacuumControlLocate, useVacuumControlPause, useVacuumControlReturnToBase, useVacuumControlSetFanSpeed, useVacuumControlStart, useVacuumControlStop, useValveClose, useValveGetStatus, useValveOpen, useValveSetPosition, useValveStop, useVibrationGetStatus, useVideoclipsDialClipStream, useVideoclipsGetClipPlayback, useVideoclipsGetPlaybackOptions, useVideoclipsListClips, useVideoclipsListSources, useVideoclipsOfferClipBytes, useVideoclipsReadClipBytes, useVodPlayback, useWaterHeaterGetStatus, useWaterHeaterSetAway, useWaterHeaterSetOperationMode, useWaterHeaterSetTargetTemp, useWeatherGetStatus, useWebrtcSessionAddIceCandidate, useWebrtcSessionApplyDownlinkProbe, useWebrtcSessionCloseSession, useWebrtcSessionCreateSession, useWebrtcSessionGetIceCandidates, useWebrtcSessionGetSessionDebug, useWebrtcSessionGetSessionState, useWebrtcSessionHandleAnswer, useWebrtcSessionHandleOffer, useWebrtcSessionHasAdaptiveBitrate, useWebrtcSessionListStreams, useWidget, useWidgetMetadata, useWidgetRegistry, useZoneAnalyticsGetCameraHistory, useZoneAnalyticsGetCurrentSnapshot, useZoneAnalyticsGetCurrentSnapshotBatch, useZoneAnalyticsGetUnzonedHistory, useZoneAnalyticsGetZoneHistory, useZoneEditing, useZoneRulesListRules, useZoneRulesSetRules, useZonesAddZone, useZonesListZones, useZonesRemoveZone, useZonesUpdateZone, Route as ut, Users as v, vacuumStateMeta, validateScopes, valveStateMeta, variantLabel, Hammer as vn, Cat as vr, Puzzle as vt, Type as w, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint, withHiddenChart, withPanel, withResolvedParentDetail, withUseRootModel, withoutPanel, Funnel as wn, Bug as wr, writeStoredGroupBy, Plane as wt, Upload as x, GraduationCap as xn, Camera as xr, Plug as xt, User as y, GripHorizontal as yn, Cast as yr, Power as yt, Sun as z, DoorOpen as zn, Ban as zr, Moon as zt };
|