@camstack/ui-library 1.2.266 → 1.2.268
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/composites/index.d.ts +5 -0
- package/dist/composites/item-form-dialog.d.ts +31 -0
- package/dist/composites/media-grid.d.ts +27 -0
- package/dist/composites/page-header.d.ts +4 -0
- package/dist/composites/page-shell.d.ts +20 -0
- package/dist/composites/section-toolbar.d.ts +14 -0
- package/dist/composites/use-item-form-url.d.ts +21 -0
- package/dist/index.cjs +246 -52
- package/dist/index.js +240 -53
- package/dist/lib/responsive.d.ts +2 -0
- package/dist/primitives/dialog.d.ts +1 -1
- package/package.json +1 -1
|
@@ -159,6 +159,11 @@ export { mountAddonPage } from "./mount-addon-page";
|
|
|
159
159
|
export type { NodePickerProps } from "./node-picker";
|
|
160
160
|
export { NodePicker } from "./node-picker";
|
|
161
161
|
export * from "./page-header";
|
|
162
|
+
export * from "./page-shell";
|
|
163
|
+
export * from "./section-toolbar";
|
|
164
|
+
export * from "./item-form-dialog";
|
|
165
|
+
export * from "./use-item-form-url";
|
|
166
|
+
export * from "./media-grid";
|
|
162
167
|
export type { PhaseIconProps } from "./phase-icon";
|
|
163
168
|
export { PhaseIcon } from "./phase-icon";
|
|
164
169
|
export type { PipelineBuilderProps } from "./pipeline-builder";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ItemFormDialog — shared shell for create/edit of a named list item.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors Notification Center Rules: `Dialog` + `DialogContent` width lg,
|
|
5
|
+
* sheet-on-mobile, scroll body; title + Cancel in the chrome; body and footer
|
|
6
|
+
* slots for the form. Open state is owned by the caller (typically
|
|
7
|
+
* `useItemFormUrl`).
|
|
8
|
+
*/
|
|
9
|
+
import type { LucideIcon } from "lucide-react";
|
|
10
|
+
import type { ReactNode, JSX } from "react";
|
|
11
|
+
import { type DialogContentProps } from "../primitives";
|
|
12
|
+
export interface ItemFormDialogProps {
|
|
13
|
+
readonly open: boolean;
|
|
14
|
+
readonly onClose: () => void;
|
|
15
|
+
readonly title: string;
|
|
16
|
+
readonly icon?: LucideIcon;
|
|
17
|
+
readonly error?: string | null;
|
|
18
|
+
readonly width?: DialogContentProps["width"];
|
|
19
|
+
readonly children: ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Pinned chrome between the title/error and the scrolling body — a tab
|
|
22
|
+
* strip, a status banner, anything that must not scroll with the fields.
|
|
23
|
+
* Under `scroll="body"` only `<DialogBody>` scrolls; this slot stays put
|
|
24
|
+
* with the header (same contract as a hand-rolled Dialog chrome).
|
|
25
|
+
*/
|
|
26
|
+
readonly beforeBody?: ReactNode;
|
|
27
|
+
/** Footer actions (Save, …). Cancel is always in the header. */
|
|
28
|
+
readonly footer?: ReactNode;
|
|
29
|
+
readonly testId?: string;
|
|
30
|
+
}
|
|
31
|
+
export declare function ItemFormDialog({ open, onClose, title, icon: Icon, error, width, children, beforeBody, footer, testId }: ItemFormDialogProps): JSX.Element | null;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MediaGrid — responsive grid of media tiles (events, frames, crops).
|
|
3
|
+
* Empty and pending are distinct; never fold unanswered into empty (D315).
|
|
4
|
+
*/
|
|
5
|
+
import type { ReactNode, JSX } from "react";
|
|
6
|
+
export interface MediaCardProps {
|
|
7
|
+
readonly children: ReactNode;
|
|
8
|
+
readonly selected?: boolean;
|
|
9
|
+
readonly onSelect?: () => void;
|
|
10
|
+
readonly label?: string;
|
|
11
|
+
readonly className?: string;
|
|
12
|
+
readonly testId?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function MediaCard({ children, selected, onSelect, label, className, testId }: MediaCardProps): JSX.Element;
|
|
15
|
+
export type MediaGridStatus = "pending" | "ready" | "empty";
|
|
16
|
+
export interface MediaGridProps {
|
|
17
|
+
readonly status: MediaGridStatus;
|
|
18
|
+
/** Required when status is `ready`. */
|
|
19
|
+
readonly children?: ReactNode;
|
|
20
|
+
/** Shown when status is pending. */
|
|
21
|
+
readonly pendingMessage?: string;
|
|
22
|
+
/** Shown when status is empty. */
|
|
23
|
+
readonly emptyMessage?: string;
|
|
24
|
+
readonly className?: string;
|
|
25
|
+
readonly testId?: string;
|
|
26
|
+
}
|
|
27
|
+
export declare function MediaGrid({ status, children, pendingMessage, emptyMessage, className, testId }: MediaGridProps): JSX.Element;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PageShell — the one page chrome for admin-ui and addon pages.
|
|
3
|
+
*
|
|
4
|
+
* Gutter `p-2 sm:p-4`, `overflow-x-clip` (never `hidden` — that kills sticky
|
|
5
|
+
* descendants). Optional title row (icon + title + subtitle | actions) and a
|
|
6
|
+
* `nav` slot under it for hub pills / selectors.
|
|
7
|
+
*/
|
|
8
|
+
import type { LucideIcon } from "lucide-react";
|
|
9
|
+
import type { ReactNode, JSX } from "react";
|
|
10
|
+
export interface PageShellProps {
|
|
11
|
+
readonly icon?: LucideIcon;
|
|
12
|
+
readonly title?: string;
|
|
13
|
+
readonly subtitle?: ReactNode;
|
|
14
|
+
readonly actions?: ReactNode;
|
|
15
|
+
/** Selector row inside the header, under the title (hub pills, …). */
|
|
16
|
+
readonly nav?: ReactNode;
|
|
17
|
+
readonly className?: string;
|
|
18
|
+
readonly children: ReactNode;
|
|
19
|
+
}
|
|
20
|
+
export declare function PageShell({ icon: Icon, title, subtitle, actions, nav, className, children }: PageShellProps): JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SectionToolbar — filters / node on the left, Add (or other actions) on the
|
|
3
|
+
* right, inside a SectionCard body. Owns no data.
|
|
4
|
+
*/
|
|
5
|
+
import type { ReactNode, JSX } from "react";
|
|
6
|
+
export interface SectionToolbarProps {
|
|
7
|
+
/** Filters, NodePicker, search, … */
|
|
8
|
+
readonly start?: ReactNode;
|
|
9
|
+
/** Add button or other primary actions. */
|
|
10
|
+
readonly end?: ReactNode;
|
|
11
|
+
readonly className?: string;
|
|
12
|
+
readonly testId?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function SectionToolbar({ start, end, className, testId }: SectionToolbarProps): JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type ItemFormUrlState = {
|
|
2
|
+
readonly mode: "closed";
|
|
3
|
+
} | {
|
|
4
|
+
readonly mode: "new";
|
|
5
|
+
} | {
|
|
6
|
+
readonly mode: "edit";
|
|
7
|
+
readonly id: string;
|
|
8
|
+
};
|
|
9
|
+
export interface UseItemFormUrlOptions {
|
|
10
|
+
/** Query key for create (default `new`). Value is the literal `1` when open. */
|
|
11
|
+
readonly newKey?: string;
|
|
12
|
+
/** Query key for edit id (default `edit`). */
|
|
13
|
+
readonly editKey?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface UseItemFormUrlResult {
|
|
16
|
+
readonly state: ItemFormUrlState;
|
|
17
|
+
readonly openNew: () => void;
|
|
18
|
+
readonly openEdit: (id: string) => void;
|
|
19
|
+
readonly close: () => void;
|
|
20
|
+
}
|
|
21
|
+
export declare function useItemFormUrl(options?: UseItemFormUrlOptions): UseItemFormUrlResult;
|
package/dist/index.cjs
CHANGED
|
@@ -19723,18 +19723,21 @@ function WidgetPanel({ title, icon, headerRight, collapsible = false, defaultOpe
|
|
|
19723
19723
|
}
|
|
19724
19724
|
function WidgetMetricCard({ label, icon, children, footer }) {
|
|
19725
19725
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
19726
|
-
className: "rounded-
|
|
19726
|
+
className: "min-w-0 rounded-lg border border-border bg-surface p-2 sm:p-2.5",
|
|
19727
19727
|
children: [
|
|
19728
19728
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
19729
|
-
className: "mb-
|
|
19730
|
-
children: [icon,
|
|
19729
|
+
className: "mb-0.5 flex min-w-0 items-center gap-1.5 text-[10px] uppercase tracking-wider text-foreground-subtle",
|
|
19730
|
+
children: [icon, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
19731
|
+
className: "min-w-0 truncate",
|
|
19732
|
+
children: label
|
|
19733
|
+
})]
|
|
19731
19734
|
}),
|
|
19732
19735
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
19733
|
-
className: "text-
|
|
19736
|
+
className: "truncate text-lg font-semibold leading-tight text-foreground",
|
|
19734
19737
|
children
|
|
19735
19738
|
}),
|
|
19736
|
-
footer ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
19737
|
-
className: "mt-0.5 text-[10px] text-foreground-subtle",
|
|
19739
|
+
footer != null ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
19740
|
+
className: "mt-0.5 truncate text-[10px] text-foreground-subtle",
|
|
19738
19741
|
children: footer
|
|
19739
19742
|
}) : null
|
|
19740
19743
|
]
|
|
@@ -25753,7 +25756,9 @@ var contentVariants = cva("relative fixed left-1/2 top-1/2 -translate-x-1/2 -tra
|
|
|
25753
25756
|
width: {
|
|
25754
25757
|
sm: "max-w-sm",
|
|
25755
25758
|
md: "max-w-md",
|
|
25756
|
-
lg: "max-w-lg"
|
|
25759
|
+
lg: "max-w-lg",
|
|
25760
|
+
/** Wide editors (scripts, long forms). */
|
|
25761
|
+
xl: "max-w-4xl"
|
|
25757
25762
|
},
|
|
25758
25763
|
/**
|
|
25759
25764
|
* WHICH box scrolls when the content is taller than the height cap.
|
|
@@ -25800,6 +25805,11 @@ var contentVariants = cva("relative fixed left-1/2 top-1/2 -translate-x-1/2 -tra
|
|
|
25800
25805
|
width: "lg",
|
|
25801
25806
|
class: "md:w-[calc(100vw-2rem)] md:max-w-lg"
|
|
25802
25807
|
},
|
|
25808
|
+
{
|
|
25809
|
+
placement: "sheet-on-mobile",
|
|
25810
|
+
width: "xl",
|
|
25811
|
+
class: "md:w-[calc(100vw-2rem)] md:max-w-4xl"
|
|
25812
|
+
},
|
|
25803
25813
|
{
|
|
25804
25814
|
scroll: "body",
|
|
25805
25815
|
placement: "sheet-on-mobile",
|
|
@@ -30918,6 +30928,8 @@ var GRID_GAP = "gap-2 sm:gap-3";
|
|
|
30918
30928
|
var LIST_ROW = "px-3 sm:px-4 py-1.5 sm:py-2";
|
|
30919
30929
|
/** 1-up at L1, 2-up at L2, 4-up at L3 — quick-stat row. */
|
|
30920
30930
|
var GRID_QUICK_STATS = "grid grid-cols-2 sm:grid-cols-2 lg:grid-cols-4";
|
|
30931
|
+
/** Auto-fill media tiles (events, frames, crops) — ~4 across at lg. */
|
|
30932
|
+
var MEDIA_GRID = "grid grid-cols-[repeat(auto-fill,minmax(11rem,1fr))]";
|
|
30921
30933
|
/** 1-up at L1, 2-up at L2+ — paired panels (motion + detection rules). */
|
|
30922
30934
|
var GRID_PAIRED = "grid grid-cols-1 lg:grid-cols-2";
|
|
30923
30935
|
/** Side-by-side layout that stacks below md (canvas + side panel). */
|
|
@@ -58147,20 +58159,231 @@ function NodePicker({ selectedNodeId, onSelect, label = "Node", hideIcon = false
|
|
|
58147
58159
|
//#region src/composites/page-header.tsx
|
|
58148
58160
|
function PageHeader({ title, subtitle, actions, className }) {
|
|
58149
58161
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58150
|
-
className: cn("flex flex-col gap-2
|
|
58151
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58152
|
-
className: "
|
|
58153
|
-
children:
|
|
58154
|
-
|
|
58155
|
-
|
|
58156
|
-
|
|
58157
|
-
|
|
58158
|
-
|
|
58162
|
+
className: cn("mb-3 flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between", className),
|
|
58163
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58164
|
+
className: "min-w-0",
|
|
58165
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", {
|
|
58166
|
+
className: "text-lg font-semibold text-foreground",
|
|
58167
|
+
children: title
|
|
58168
|
+
}), subtitle !== void 0 && subtitle !== "" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
58169
|
+
className: "mt-0.5 text-xs text-foreground-subtle",
|
|
58170
|
+
children: subtitle
|
|
58171
|
+
})]
|
|
58172
|
+
}), actions !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58173
|
+
className: "flex flex-wrap items-center gap-2",
|
|
58159
58174
|
children: actions
|
|
58160
58175
|
})]
|
|
58161
58176
|
});
|
|
58162
58177
|
}
|
|
58163
58178
|
//#endregion
|
|
58179
|
+
//#region src/composites/page-shell.tsx
|
|
58180
|
+
function PageShell({ icon: Icon, title, subtitle, actions, nav, className, children }) {
|
|
58181
|
+
const hasTitleRow = Boolean(title) || subtitle != null || actions != null;
|
|
58182
|
+
const hasHeader = hasTitleRow || nav != null;
|
|
58183
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58184
|
+
className: cn("space-y-4 overflow-x-clip p-2 sm:p-4", className),
|
|
58185
|
+
children: [hasHeader && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58186
|
+
className: "space-y-3",
|
|
58187
|
+
children: [hasTitleRow && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58188
|
+
className: "flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4",
|
|
58189
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58190
|
+
className: "min-w-0",
|
|
58191
|
+
children: [title !== void 0 && title !== "" && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("h1", {
|
|
58192
|
+
className: "flex items-center gap-2 text-lg font-semibold text-foreground",
|
|
58193
|
+
children: [Icon !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Icon, {
|
|
58194
|
+
className: "h-4 w-4 shrink-0 text-foreground-subtle",
|
|
58195
|
+
"aria-hidden": true
|
|
58196
|
+
}), title]
|
|
58197
|
+
}), subtitle != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
58198
|
+
className: "mt-0.5 text-xs text-foreground-subtle",
|
|
58199
|
+
children: subtitle
|
|
58200
|
+
})]
|
|
58201
|
+
}), actions != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58202
|
+
className: "flex shrink-0 flex-wrap items-center gap-2",
|
|
58203
|
+
children: actions
|
|
58204
|
+
})]
|
|
58205
|
+
}), nav]
|
|
58206
|
+
}), children]
|
|
58207
|
+
});
|
|
58208
|
+
}
|
|
58209
|
+
//#endregion
|
|
58210
|
+
//#region src/composites/section-toolbar.tsx
|
|
58211
|
+
function SectionToolbar({ start, end, className, testId }) {
|
|
58212
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58213
|
+
className: cn("flex flex-col gap-2 sm:flex-row sm:flex-wrap sm:items-center sm:justify-between", className),
|
|
58214
|
+
"data-testid": testId,
|
|
58215
|
+
children: [start != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58216
|
+
className: "flex min-w-0 flex-1 flex-wrap items-center gap-2",
|
|
58217
|
+
children: start
|
|
58218
|
+
}), end != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58219
|
+
className: "flex shrink-0 flex-wrap items-center gap-2 sm:justify-end",
|
|
58220
|
+
children: end
|
|
58221
|
+
})]
|
|
58222
|
+
});
|
|
58223
|
+
}
|
|
58224
|
+
//#endregion
|
|
58225
|
+
//#region src/composites/item-form-dialog.tsx
|
|
58226
|
+
function ItemFormDialog({ open, onClose, title, icon: Icon, error, width = "lg", children, beforeBody, footer, testId }) {
|
|
58227
|
+
if (!open) return null;
|
|
58228
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Dialog, {
|
|
58229
|
+
open: true,
|
|
58230
|
+
onOpenChange: (next) => !next && onClose(),
|
|
58231
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DialogContent, {
|
|
58232
|
+
width,
|
|
58233
|
+
placement: "sheet-on-mobile",
|
|
58234
|
+
scroll: "body",
|
|
58235
|
+
"data-testid": testId,
|
|
58236
|
+
children: [
|
|
58237
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
58238
|
+
className: "mb-3 flex shrink-0 items-center justify-between gap-2",
|
|
58239
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("h3", {
|
|
58240
|
+
className: "flex min-w-0 items-center gap-2 text-sm font-semibold text-foreground",
|
|
58241
|
+
children: [Icon !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Icon, {
|
|
58242
|
+
className: "h-4 w-4 shrink-0 text-foreground-subtle",
|
|
58243
|
+
"aria-hidden": true
|
|
58244
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
58245
|
+
className: "truncate",
|
|
58246
|
+
children: title
|
|
58247
|
+
})]
|
|
58248
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Button, {
|
|
58249
|
+
size: "sm",
|
|
58250
|
+
variant: "ghost",
|
|
58251
|
+
type: "button",
|
|
58252
|
+
onClick: onClose,
|
|
58253
|
+
children: "Cancel"
|
|
58254
|
+
})]
|
|
58255
|
+
}),
|
|
58256
|
+
error != null && error !== "" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58257
|
+
className: "mb-3 shrink-0 rounded-md border border-danger/40 bg-danger/10 px-3 py-2 text-xs text-danger",
|
|
58258
|
+
children: error
|
|
58259
|
+
}),
|
|
58260
|
+
beforeBody != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58261
|
+
className: "shrink-0",
|
|
58262
|
+
children: beforeBody
|
|
58263
|
+
}),
|
|
58264
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DialogBody, {
|
|
58265
|
+
className: "pr-1",
|
|
58266
|
+
children
|
|
58267
|
+
}),
|
|
58268
|
+
footer != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DialogFooter, {
|
|
58269
|
+
className: "mt-3 shrink-0",
|
|
58270
|
+
children: footer
|
|
58271
|
+
})
|
|
58272
|
+
]
|
|
58273
|
+
})
|
|
58274
|
+
});
|
|
58275
|
+
}
|
|
58276
|
+
//#endregion
|
|
58277
|
+
//#region src/hooks/use-url-query.ts
|
|
58278
|
+
/**
|
|
58279
|
+
* Tiny URL query sync for surfaces that cannot assume react-router
|
|
58280
|
+
* (federated addon pages) or that only need a handful of params.
|
|
58281
|
+
*
|
|
58282
|
+
* Reads on mount + `popstate`; writes with `history.replaceState`. Empty /
|
|
58283
|
+
* null values are deleted so the URL stays short.
|
|
58284
|
+
*/
|
|
58285
|
+
function readParam(key) {
|
|
58286
|
+
return new URLSearchParams(window.location.search).get(key);
|
|
58287
|
+
}
|
|
58288
|
+
function writeParam(key, value) {
|
|
58289
|
+
const params = new URLSearchParams(window.location.search);
|
|
58290
|
+
if (value === null || value === "") params.delete(key);
|
|
58291
|
+
else params.set(key, value);
|
|
58292
|
+
const qs = params.toString();
|
|
58293
|
+
const url = qs ? `${window.location.pathname}?${qs}` : window.location.pathname;
|
|
58294
|
+
window.history.replaceState(null, "", url);
|
|
58295
|
+
}
|
|
58296
|
+
/**
|
|
58297
|
+
* One query param as React state. `null` means absent.
|
|
58298
|
+
* Changing it replaces the URL without a navigation.
|
|
58299
|
+
*/
|
|
58300
|
+
function useUrlQueryParam(key) {
|
|
58301
|
+
const [value, setValue] = (0, react$1.useState)(() => readParam(key));
|
|
58302
|
+
(0, react$1.useEffect)(() => {
|
|
58303
|
+
const onPop = () => setValue(readParam(key));
|
|
58304
|
+
window.addEventListener("popstate", onPop);
|
|
58305
|
+
return () => window.removeEventListener("popstate", onPop);
|
|
58306
|
+
}, [key]);
|
|
58307
|
+
return [value, (0, react$1.useCallback)((next) => {
|
|
58308
|
+
writeParam(key, next);
|
|
58309
|
+
setValue(next);
|
|
58310
|
+
}, [key])];
|
|
58311
|
+
}
|
|
58312
|
+
//#endregion
|
|
58313
|
+
//#region src/composites/use-item-form-url.ts
|
|
58314
|
+
/**
|
|
58315
|
+
* URL ownership for create/edit modals: `?new=1` or `?edit=<id>` (replace).
|
|
58316
|
+
* Mutually exclusive — opening one clears the other.
|
|
58317
|
+
*/
|
|
58318
|
+
function useItemFormUrl(options = {}) {
|
|
58319
|
+
const newKey = options.newKey ?? "new";
|
|
58320
|
+
const editKey = options.editKey ?? "edit";
|
|
58321
|
+
const [newParam, setNewParam] = useUrlQueryParam(newKey);
|
|
58322
|
+
const [editParam, setEditParam] = useUrlQueryParam(editKey);
|
|
58323
|
+
return {
|
|
58324
|
+
state: (0, react$1.useMemo)(() => {
|
|
58325
|
+
if (editParam !== null && editParam !== "") return {
|
|
58326
|
+
mode: "edit",
|
|
58327
|
+
id: editParam
|
|
58328
|
+
};
|
|
58329
|
+
if (newParam === "1") return { mode: "new" };
|
|
58330
|
+
return { mode: "closed" };
|
|
58331
|
+
}, [editParam, newParam]),
|
|
58332
|
+
openNew: (0, react$1.useCallback)(() => {
|
|
58333
|
+
setEditParam(null);
|
|
58334
|
+
setNewParam("1");
|
|
58335
|
+
}, [setEditParam, setNewParam]),
|
|
58336
|
+
openEdit: (0, react$1.useCallback)((id) => {
|
|
58337
|
+
setNewParam(null);
|
|
58338
|
+
setEditParam(id);
|
|
58339
|
+
}, [setEditParam, setNewParam]),
|
|
58340
|
+
close: (0, react$1.useCallback)(() => {
|
|
58341
|
+
setNewParam(null);
|
|
58342
|
+
setEditParam(null);
|
|
58343
|
+
}, [setEditParam, setNewParam])
|
|
58344
|
+
};
|
|
58345
|
+
}
|
|
58346
|
+
//#endregion
|
|
58347
|
+
//#region src/composites/media-grid.tsx
|
|
58348
|
+
function MediaCard({ children, selected = false, onSelect, label, className, testId }) {
|
|
58349
|
+
const interactive = onSelect !== void 0;
|
|
58350
|
+
const onKeyDown = (event) => {
|
|
58351
|
+
if (!interactive) return;
|
|
58352
|
+
if (event.key === "Enter" || event.key === " ") {
|
|
58353
|
+
event.preventDefault();
|
|
58354
|
+
onSelect();
|
|
58355
|
+
}
|
|
58356
|
+
};
|
|
58357
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58358
|
+
role: interactive ? "button" : void 0,
|
|
58359
|
+
tabIndex: interactive ? 0 : void 0,
|
|
58360
|
+
"aria-pressed": interactive ? selected : void 0,
|
|
58361
|
+
"aria-label": label,
|
|
58362
|
+
"data-testid": testId,
|
|
58363
|
+
onClick: onSelect,
|
|
58364
|
+
onKeyDown,
|
|
58365
|
+
className: cn("relative aspect-square min-w-0 overflow-hidden rounded-md border bg-surface", selected ? "border-primary ring-1 ring-primary" : "border-border", interactive && "cursor-pointer hover:border-foreground-subtle", className),
|
|
58366
|
+
children
|
|
58367
|
+
});
|
|
58368
|
+
}
|
|
58369
|
+
function MediaGrid({ status, children, pendingMessage = "Loading…", emptyMessage = "Nothing to show", className, testId }) {
|
|
58370
|
+
if (status === "pending") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
58371
|
+
className: "animate-pulse py-8 text-center text-xs text-foreground-subtle",
|
|
58372
|
+
"data-testid": testId,
|
|
58373
|
+
children: pendingMessage
|
|
58374
|
+
});
|
|
58375
|
+
if (status === "empty") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
58376
|
+
className: "py-8 text-center text-xs text-foreground-subtle",
|
|
58377
|
+
"data-testid": testId,
|
|
58378
|
+
children: emptyMessage
|
|
58379
|
+
});
|
|
58380
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
58381
|
+
className: cn(MEDIA_GRID, GRID_GAP, className),
|
|
58382
|
+
"data-testid": testId,
|
|
58383
|
+
children
|
|
58384
|
+
});
|
|
58385
|
+
}
|
|
58386
|
+
//#endregion
|
|
58164
58387
|
//#region src/composites/phase-icon.tsx
|
|
58165
58388
|
/**
|
|
58166
58389
|
* PhaseIcon — renders the correct lucide icon for a CameraPhase.
|
|
@@ -62104,42 +62327,6 @@ function useZoneEditing() {
|
|
|
62104
62327
|
return (0, react$1.useContext)(ZoneEditingContext);
|
|
62105
62328
|
}
|
|
62106
62329
|
//#endregion
|
|
62107
|
-
//#region src/hooks/use-url-query.ts
|
|
62108
|
-
/**
|
|
62109
|
-
* Tiny URL query sync for surfaces that cannot assume react-router
|
|
62110
|
-
* (federated addon pages) or that only need a handful of params.
|
|
62111
|
-
*
|
|
62112
|
-
* Reads on mount + `popstate`; writes with `history.replaceState`. Empty /
|
|
62113
|
-
* null values are deleted so the URL stays short.
|
|
62114
|
-
*/
|
|
62115
|
-
function readParam(key) {
|
|
62116
|
-
return new URLSearchParams(window.location.search).get(key);
|
|
62117
|
-
}
|
|
62118
|
-
function writeParam(key, value) {
|
|
62119
|
-
const params = new URLSearchParams(window.location.search);
|
|
62120
|
-
if (value === null || value === "") params.delete(key);
|
|
62121
|
-
else params.set(key, value);
|
|
62122
|
-
const qs = params.toString();
|
|
62123
|
-
const url = qs ? `${window.location.pathname}?${qs}` : window.location.pathname;
|
|
62124
|
-
window.history.replaceState(null, "", url);
|
|
62125
|
-
}
|
|
62126
|
-
/**
|
|
62127
|
-
* One query param as React state. `null` means absent.
|
|
62128
|
-
* Changing it replaces the URL without a navigation.
|
|
62129
|
-
*/
|
|
62130
|
-
function useUrlQueryParam(key) {
|
|
62131
|
-
const [value, setValue] = (0, react$1.useState)(() => readParam(key));
|
|
62132
|
-
(0, react$1.useEffect)(() => {
|
|
62133
|
-
const onPop = () => setValue(readParam(key));
|
|
62134
|
-
window.addEventListener("popstate", onPop);
|
|
62135
|
-
return () => window.removeEventListener("popstate", onPop);
|
|
62136
|
-
}, [key]);
|
|
62137
|
-
return [value, (0, react$1.useCallback)((next) => {
|
|
62138
|
-
writeParam(key, next);
|
|
62139
|
-
setValue(next);
|
|
62140
|
-
}, [key])];
|
|
62141
|
-
}
|
|
62142
|
-
//#endregion
|
|
62143
62330
|
//#region src/hooks/use-device-cap-slice.ts
|
|
62144
62331
|
/**
|
|
62145
62332
|
* useDeviceCapSlice — generic runtime-state slice reader for an arbitrary
|
|
@@ -62841,6 +63028,7 @@ exports.ImageOff = ImageOff;
|
|
|
62841
63028
|
exports.ImageSelector = ImageSelector;
|
|
62842
63029
|
exports.InferenceConfigSelector = InferenceConfigSelector;
|
|
62843
63030
|
exports.Input = Input;
|
|
63031
|
+
exports.ItemFormDialog = ItemFormDialog;
|
|
62844
63032
|
exports.KebabMenu = KebabMenu;
|
|
62845
63033
|
exports.KeyValueList = KeyValueList;
|
|
62846
63034
|
exports.LIST_ROW = LIST_ROW;
|
|
@@ -62855,8 +63043,11 @@ exports.LockInlineControl = LockInlineControl;
|
|
|
62855
63043
|
exports.LockPanel = LockPanel;
|
|
62856
63044
|
exports.LogStream = LogStream;
|
|
62857
63045
|
exports.LoginForm = LoginForm;
|
|
63046
|
+
exports.MEDIA_GRID = MEDIA_GRID;
|
|
62858
63047
|
exports.MODE_COLOR = MODE_COLOR;
|
|
62859
63048
|
exports.MaskShapeCanvas = MaskShapeCanvas;
|
|
63049
|
+
exports.MediaCard = MediaCard;
|
|
63050
|
+
exports.MediaGrid = MediaGrid;
|
|
62860
63051
|
exports.MediaPlayerHeroCard = MediaPlayerHeroCard;
|
|
62861
63052
|
exports.MediaPlayerInlineControl = MediaPlayerInlineControl;
|
|
62862
63053
|
exports.MediaPlayerPanel = MediaPlayerPanel;
|
|
@@ -62893,6 +63084,7 @@ exports.PICKER_WINDOW = PICKER_WINDOW;
|
|
|
62893
63084
|
exports.PRIORITY = PRIORITY;
|
|
62894
63085
|
exports.PTZOverlay = PTZOverlay;
|
|
62895
63086
|
exports.PageHeader = PageHeader;
|
|
63087
|
+
exports.PageShell = PageShell;
|
|
62896
63088
|
exports.PageSizeSelect = PageSizeSelect;
|
|
62897
63089
|
exports.Pagination = Pagination;
|
|
62898
63090
|
exports.PasswordInput = PasswordInput;
|
|
@@ -62955,6 +63147,7 @@ exports.ScrollArea = ScrollArea;
|
|
|
62955
63147
|
exports.SecretFieldControl = SecretFieldControl;
|
|
62956
63148
|
exports.SecretRevealProvider = SecretRevealProvider;
|
|
62957
63149
|
exports.SectionCard = SectionCard;
|
|
63150
|
+
exports.SectionToolbar = SectionToolbar;
|
|
62958
63151
|
exports.SegmentedChoice = SegmentedChoice;
|
|
62959
63152
|
exports.Select = Select;
|
|
62960
63153
|
exports.SelectedChip = SelectedChip;
|
|
@@ -63667,6 +63860,7 @@ exports.useIntercomStartTalkSession = useIntercomStartTalkSession;
|
|
|
63667
63860
|
exports.useIntercomStopSession = useIntercomStopSession;
|
|
63668
63861
|
exports.useIsMidWidth = useIsMidWidth;
|
|
63669
63862
|
exports.useIsMobile = useIsMobile;
|
|
63863
|
+
exports.useItemFormUrl = useItemFormUrl;
|
|
63670
63864
|
exports.useKeychainAdminAcknowledgeReset = useKeychainAdminAcknowledgeReset;
|
|
63671
63865
|
exports.useKeychainAdminDeleteOrphans = useKeychainAdminDeleteOrphans;
|
|
63672
63866
|
exports.useKeychainAdminDownloadRecoveryKey = useKeychainAdminDownloadRecoveryKey;
|
package/dist/index.js
CHANGED
|
@@ -19699,18 +19699,21 @@ function WidgetPanel({ title, icon, headerRight, collapsible = false, defaultOpe
|
|
|
19699
19699
|
}
|
|
19700
19700
|
function WidgetMetricCard({ label, icon, children, footer }) {
|
|
19701
19701
|
return /* @__PURE__ */ jsxs("div", {
|
|
19702
|
-
className: "rounded-
|
|
19702
|
+
className: "min-w-0 rounded-lg border border-border bg-surface p-2 sm:p-2.5",
|
|
19703
19703
|
children: [
|
|
19704
19704
|
/* @__PURE__ */ jsxs("div", {
|
|
19705
|
-
className: "mb-
|
|
19706
|
-
children: [icon,
|
|
19705
|
+
className: "mb-0.5 flex min-w-0 items-center gap-1.5 text-[10px] uppercase tracking-wider text-foreground-subtle",
|
|
19706
|
+
children: [icon, /* @__PURE__ */ jsx("span", {
|
|
19707
|
+
className: "min-w-0 truncate",
|
|
19708
|
+
children: label
|
|
19709
|
+
})]
|
|
19707
19710
|
}),
|
|
19708
19711
|
/* @__PURE__ */ jsx("div", {
|
|
19709
|
-
className: "text-
|
|
19712
|
+
className: "truncate text-lg font-semibold leading-tight text-foreground",
|
|
19710
19713
|
children
|
|
19711
19714
|
}),
|
|
19712
|
-
footer ? /* @__PURE__ */ jsx("div", {
|
|
19713
|
-
className: "mt-0.5 text-[10px] text-foreground-subtle",
|
|
19715
|
+
footer != null ? /* @__PURE__ */ jsx("div", {
|
|
19716
|
+
className: "mt-0.5 truncate text-[10px] text-foreground-subtle",
|
|
19714
19717
|
children: footer
|
|
19715
19718
|
}) : null
|
|
19716
19719
|
]
|
|
@@ -25729,7 +25732,9 @@ var contentVariants = cva("relative fixed left-1/2 top-1/2 -translate-x-1/2 -tra
|
|
|
25729
25732
|
width: {
|
|
25730
25733
|
sm: "max-w-sm",
|
|
25731
25734
|
md: "max-w-md",
|
|
25732
|
-
lg: "max-w-lg"
|
|
25735
|
+
lg: "max-w-lg",
|
|
25736
|
+
/** Wide editors (scripts, long forms). */
|
|
25737
|
+
xl: "max-w-4xl"
|
|
25733
25738
|
},
|
|
25734
25739
|
/**
|
|
25735
25740
|
* WHICH box scrolls when the content is taller than the height cap.
|
|
@@ -25776,6 +25781,11 @@ var contentVariants = cva("relative fixed left-1/2 top-1/2 -translate-x-1/2 -tra
|
|
|
25776
25781
|
width: "lg",
|
|
25777
25782
|
class: "md:w-[calc(100vw-2rem)] md:max-w-lg"
|
|
25778
25783
|
},
|
|
25784
|
+
{
|
|
25785
|
+
placement: "sheet-on-mobile",
|
|
25786
|
+
width: "xl",
|
|
25787
|
+
class: "md:w-[calc(100vw-2rem)] md:max-w-4xl"
|
|
25788
|
+
},
|
|
25779
25789
|
{
|
|
25780
25790
|
scroll: "body",
|
|
25781
25791
|
placement: "sheet-on-mobile",
|
|
@@ -30894,6 +30904,8 @@ var GRID_GAP = "gap-2 sm:gap-3";
|
|
|
30894
30904
|
var LIST_ROW = "px-3 sm:px-4 py-1.5 sm:py-2";
|
|
30895
30905
|
/** 1-up at L1, 2-up at L2, 4-up at L3 — quick-stat row. */
|
|
30896
30906
|
var GRID_QUICK_STATS = "grid grid-cols-2 sm:grid-cols-2 lg:grid-cols-4";
|
|
30907
|
+
/** Auto-fill media tiles (events, frames, crops) — ~4 across at lg. */
|
|
30908
|
+
var MEDIA_GRID = "grid grid-cols-[repeat(auto-fill,minmax(11rem,1fr))]";
|
|
30897
30909
|
/** 1-up at L1, 2-up at L2+ — paired panels (motion + detection rules). */
|
|
30898
30910
|
var GRID_PAIRED = "grid grid-cols-1 lg:grid-cols-2";
|
|
30899
30911
|
/** Side-by-side layout that stacks below md (canvas + side panel). */
|
|
@@ -58123,20 +58135,231 @@ function NodePicker({ selectedNodeId, onSelect, label = "Node", hideIcon = false
|
|
|
58123
58135
|
//#region src/composites/page-header.tsx
|
|
58124
58136
|
function PageHeader({ title, subtitle, actions, className }) {
|
|
58125
58137
|
return /* @__PURE__ */ jsxs("div", {
|
|
58126
|
-
className: cn("flex flex-col gap-2
|
|
58127
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
58128
|
-
className: "
|
|
58129
|
-
children:
|
|
58130
|
-
|
|
58131
|
-
|
|
58132
|
-
|
|
58133
|
-
|
|
58134
|
-
|
|
58138
|
+
className: cn("mb-3 flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between", className),
|
|
58139
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
58140
|
+
className: "min-w-0",
|
|
58141
|
+
children: [/* @__PURE__ */ jsx("h1", {
|
|
58142
|
+
className: "text-lg font-semibold text-foreground",
|
|
58143
|
+
children: title
|
|
58144
|
+
}), subtitle !== void 0 && subtitle !== "" && /* @__PURE__ */ jsx("p", {
|
|
58145
|
+
className: "mt-0.5 text-xs text-foreground-subtle",
|
|
58146
|
+
children: subtitle
|
|
58147
|
+
})]
|
|
58148
|
+
}), actions !== void 0 && /* @__PURE__ */ jsx("div", {
|
|
58149
|
+
className: "flex flex-wrap items-center gap-2",
|
|
58135
58150
|
children: actions
|
|
58136
58151
|
})]
|
|
58137
58152
|
});
|
|
58138
58153
|
}
|
|
58139
58154
|
//#endregion
|
|
58155
|
+
//#region src/composites/page-shell.tsx
|
|
58156
|
+
function PageShell({ icon: Icon, title, subtitle, actions, nav, className, children }) {
|
|
58157
|
+
const hasTitleRow = Boolean(title) || subtitle != null || actions != null;
|
|
58158
|
+
const hasHeader = hasTitleRow || nav != null;
|
|
58159
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
58160
|
+
className: cn("space-y-4 overflow-x-clip p-2 sm:p-4", className),
|
|
58161
|
+
children: [hasHeader && /* @__PURE__ */ jsxs("div", {
|
|
58162
|
+
className: "space-y-3",
|
|
58163
|
+
children: [hasTitleRow && /* @__PURE__ */ jsxs("div", {
|
|
58164
|
+
className: "flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4",
|
|
58165
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
58166
|
+
className: "min-w-0",
|
|
58167
|
+
children: [title !== void 0 && title !== "" && /* @__PURE__ */ jsxs("h1", {
|
|
58168
|
+
className: "flex items-center gap-2 text-lg font-semibold text-foreground",
|
|
58169
|
+
children: [Icon !== void 0 && /* @__PURE__ */ jsx(Icon, {
|
|
58170
|
+
className: "h-4 w-4 shrink-0 text-foreground-subtle",
|
|
58171
|
+
"aria-hidden": true
|
|
58172
|
+
}), title]
|
|
58173
|
+
}), subtitle != null && /* @__PURE__ */ jsx("p", {
|
|
58174
|
+
className: "mt-0.5 text-xs text-foreground-subtle",
|
|
58175
|
+
children: subtitle
|
|
58176
|
+
})]
|
|
58177
|
+
}), actions != null && /* @__PURE__ */ jsx("div", {
|
|
58178
|
+
className: "flex shrink-0 flex-wrap items-center gap-2",
|
|
58179
|
+
children: actions
|
|
58180
|
+
})]
|
|
58181
|
+
}), nav]
|
|
58182
|
+
}), children]
|
|
58183
|
+
});
|
|
58184
|
+
}
|
|
58185
|
+
//#endregion
|
|
58186
|
+
//#region src/composites/section-toolbar.tsx
|
|
58187
|
+
function SectionToolbar({ start, end, className, testId }) {
|
|
58188
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
58189
|
+
className: cn("flex flex-col gap-2 sm:flex-row sm:flex-wrap sm:items-center sm:justify-between", className),
|
|
58190
|
+
"data-testid": testId,
|
|
58191
|
+
children: [start != null && /* @__PURE__ */ jsx("div", {
|
|
58192
|
+
className: "flex min-w-0 flex-1 flex-wrap items-center gap-2",
|
|
58193
|
+
children: start
|
|
58194
|
+
}), end != null && /* @__PURE__ */ jsx("div", {
|
|
58195
|
+
className: "flex shrink-0 flex-wrap items-center gap-2 sm:justify-end",
|
|
58196
|
+
children: end
|
|
58197
|
+
})]
|
|
58198
|
+
});
|
|
58199
|
+
}
|
|
58200
|
+
//#endregion
|
|
58201
|
+
//#region src/composites/item-form-dialog.tsx
|
|
58202
|
+
function ItemFormDialog({ open, onClose, title, icon: Icon, error, width = "lg", children, beforeBody, footer, testId }) {
|
|
58203
|
+
if (!open) return null;
|
|
58204
|
+
return /* @__PURE__ */ jsx(Dialog, {
|
|
58205
|
+
open: true,
|
|
58206
|
+
onOpenChange: (next) => !next && onClose(),
|
|
58207
|
+
children: /* @__PURE__ */ jsxs(DialogContent, {
|
|
58208
|
+
width,
|
|
58209
|
+
placement: "sheet-on-mobile",
|
|
58210
|
+
scroll: "body",
|
|
58211
|
+
"data-testid": testId,
|
|
58212
|
+
children: [
|
|
58213
|
+
/* @__PURE__ */ jsxs("div", {
|
|
58214
|
+
className: "mb-3 flex shrink-0 items-center justify-between gap-2",
|
|
58215
|
+
children: [/* @__PURE__ */ jsxs("h3", {
|
|
58216
|
+
className: "flex min-w-0 items-center gap-2 text-sm font-semibold text-foreground",
|
|
58217
|
+
children: [Icon !== void 0 && /* @__PURE__ */ jsx(Icon, {
|
|
58218
|
+
className: "h-4 w-4 shrink-0 text-foreground-subtle",
|
|
58219
|
+
"aria-hidden": true
|
|
58220
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
58221
|
+
className: "truncate",
|
|
58222
|
+
children: title
|
|
58223
|
+
})]
|
|
58224
|
+
}), /* @__PURE__ */ jsx(Button, {
|
|
58225
|
+
size: "sm",
|
|
58226
|
+
variant: "ghost",
|
|
58227
|
+
type: "button",
|
|
58228
|
+
onClick: onClose,
|
|
58229
|
+
children: "Cancel"
|
|
58230
|
+
})]
|
|
58231
|
+
}),
|
|
58232
|
+
error != null && error !== "" && /* @__PURE__ */ jsx("div", {
|
|
58233
|
+
className: "mb-3 shrink-0 rounded-md border border-danger/40 bg-danger/10 px-3 py-2 text-xs text-danger",
|
|
58234
|
+
children: error
|
|
58235
|
+
}),
|
|
58236
|
+
beforeBody != null && /* @__PURE__ */ jsx("div", {
|
|
58237
|
+
className: "shrink-0",
|
|
58238
|
+
children: beforeBody
|
|
58239
|
+
}),
|
|
58240
|
+
/* @__PURE__ */ jsx(DialogBody, {
|
|
58241
|
+
className: "pr-1",
|
|
58242
|
+
children
|
|
58243
|
+
}),
|
|
58244
|
+
footer != null && /* @__PURE__ */ jsx(DialogFooter, {
|
|
58245
|
+
className: "mt-3 shrink-0",
|
|
58246
|
+
children: footer
|
|
58247
|
+
})
|
|
58248
|
+
]
|
|
58249
|
+
})
|
|
58250
|
+
});
|
|
58251
|
+
}
|
|
58252
|
+
//#endregion
|
|
58253
|
+
//#region src/hooks/use-url-query.ts
|
|
58254
|
+
/**
|
|
58255
|
+
* Tiny URL query sync for surfaces that cannot assume react-router
|
|
58256
|
+
* (federated addon pages) or that only need a handful of params.
|
|
58257
|
+
*
|
|
58258
|
+
* Reads on mount + `popstate`; writes with `history.replaceState`. Empty /
|
|
58259
|
+
* null values are deleted so the URL stays short.
|
|
58260
|
+
*/
|
|
58261
|
+
function readParam(key) {
|
|
58262
|
+
return new URLSearchParams(window.location.search).get(key);
|
|
58263
|
+
}
|
|
58264
|
+
function writeParam(key, value) {
|
|
58265
|
+
const params = new URLSearchParams(window.location.search);
|
|
58266
|
+
if (value === null || value === "") params.delete(key);
|
|
58267
|
+
else params.set(key, value);
|
|
58268
|
+
const qs = params.toString();
|
|
58269
|
+
const url = qs ? `${window.location.pathname}?${qs}` : window.location.pathname;
|
|
58270
|
+
window.history.replaceState(null, "", url);
|
|
58271
|
+
}
|
|
58272
|
+
/**
|
|
58273
|
+
* One query param as React state. `null` means absent.
|
|
58274
|
+
* Changing it replaces the URL without a navigation.
|
|
58275
|
+
*/
|
|
58276
|
+
function useUrlQueryParam(key) {
|
|
58277
|
+
const [value, setValue] = useState(() => readParam(key));
|
|
58278
|
+
useEffect(() => {
|
|
58279
|
+
const onPop = () => setValue(readParam(key));
|
|
58280
|
+
window.addEventListener("popstate", onPop);
|
|
58281
|
+
return () => window.removeEventListener("popstate", onPop);
|
|
58282
|
+
}, [key]);
|
|
58283
|
+
return [value, useCallback((next) => {
|
|
58284
|
+
writeParam(key, next);
|
|
58285
|
+
setValue(next);
|
|
58286
|
+
}, [key])];
|
|
58287
|
+
}
|
|
58288
|
+
//#endregion
|
|
58289
|
+
//#region src/composites/use-item-form-url.ts
|
|
58290
|
+
/**
|
|
58291
|
+
* URL ownership for create/edit modals: `?new=1` or `?edit=<id>` (replace).
|
|
58292
|
+
* Mutually exclusive — opening one clears the other.
|
|
58293
|
+
*/
|
|
58294
|
+
function useItemFormUrl(options = {}) {
|
|
58295
|
+
const newKey = options.newKey ?? "new";
|
|
58296
|
+
const editKey = options.editKey ?? "edit";
|
|
58297
|
+
const [newParam, setNewParam] = useUrlQueryParam(newKey);
|
|
58298
|
+
const [editParam, setEditParam] = useUrlQueryParam(editKey);
|
|
58299
|
+
return {
|
|
58300
|
+
state: useMemo(() => {
|
|
58301
|
+
if (editParam !== null && editParam !== "") return {
|
|
58302
|
+
mode: "edit",
|
|
58303
|
+
id: editParam
|
|
58304
|
+
};
|
|
58305
|
+
if (newParam === "1") return { mode: "new" };
|
|
58306
|
+
return { mode: "closed" };
|
|
58307
|
+
}, [editParam, newParam]),
|
|
58308
|
+
openNew: useCallback(() => {
|
|
58309
|
+
setEditParam(null);
|
|
58310
|
+
setNewParam("1");
|
|
58311
|
+
}, [setEditParam, setNewParam]),
|
|
58312
|
+
openEdit: useCallback((id) => {
|
|
58313
|
+
setNewParam(null);
|
|
58314
|
+
setEditParam(id);
|
|
58315
|
+
}, [setEditParam, setNewParam]),
|
|
58316
|
+
close: useCallback(() => {
|
|
58317
|
+
setNewParam(null);
|
|
58318
|
+
setEditParam(null);
|
|
58319
|
+
}, [setEditParam, setNewParam])
|
|
58320
|
+
};
|
|
58321
|
+
}
|
|
58322
|
+
//#endregion
|
|
58323
|
+
//#region src/composites/media-grid.tsx
|
|
58324
|
+
function MediaCard({ children, selected = false, onSelect, label, className, testId }) {
|
|
58325
|
+
const interactive = onSelect !== void 0;
|
|
58326
|
+
const onKeyDown = (event) => {
|
|
58327
|
+
if (!interactive) return;
|
|
58328
|
+
if (event.key === "Enter" || event.key === " ") {
|
|
58329
|
+
event.preventDefault();
|
|
58330
|
+
onSelect();
|
|
58331
|
+
}
|
|
58332
|
+
};
|
|
58333
|
+
return /* @__PURE__ */ jsx("div", {
|
|
58334
|
+
role: interactive ? "button" : void 0,
|
|
58335
|
+
tabIndex: interactive ? 0 : void 0,
|
|
58336
|
+
"aria-pressed": interactive ? selected : void 0,
|
|
58337
|
+
"aria-label": label,
|
|
58338
|
+
"data-testid": testId,
|
|
58339
|
+
onClick: onSelect,
|
|
58340
|
+
onKeyDown,
|
|
58341
|
+
className: cn("relative aspect-square min-w-0 overflow-hidden rounded-md border bg-surface", selected ? "border-primary ring-1 ring-primary" : "border-border", interactive && "cursor-pointer hover:border-foreground-subtle", className),
|
|
58342
|
+
children
|
|
58343
|
+
});
|
|
58344
|
+
}
|
|
58345
|
+
function MediaGrid({ status, children, pendingMessage = "Loading…", emptyMessage = "Nothing to show", className, testId }) {
|
|
58346
|
+
if (status === "pending") return /* @__PURE__ */ jsx("p", {
|
|
58347
|
+
className: "animate-pulse py-8 text-center text-xs text-foreground-subtle",
|
|
58348
|
+
"data-testid": testId,
|
|
58349
|
+
children: pendingMessage
|
|
58350
|
+
});
|
|
58351
|
+
if (status === "empty") return /* @__PURE__ */ jsx("p", {
|
|
58352
|
+
className: "py-8 text-center text-xs text-foreground-subtle",
|
|
58353
|
+
"data-testid": testId,
|
|
58354
|
+
children: emptyMessage
|
|
58355
|
+
});
|
|
58356
|
+
return /* @__PURE__ */ jsx("div", {
|
|
58357
|
+
className: cn(MEDIA_GRID, GRID_GAP, className),
|
|
58358
|
+
"data-testid": testId,
|
|
58359
|
+
children
|
|
58360
|
+
});
|
|
58361
|
+
}
|
|
58362
|
+
//#endregion
|
|
58140
58363
|
//#region src/composites/phase-icon.tsx
|
|
58141
58364
|
/**
|
|
58142
58365
|
* PhaseIcon — renders the correct lucide icon for a CameraPhase.
|
|
@@ -62080,42 +62303,6 @@ function useZoneEditing() {
|
|
|
62080
62303
|
return useContext(ZoneEditingContext);
|
|
62081
62304
|
}
|
|
62082
62305
|
//#endregion
|
|
62083
|
-
//#region src/hooks/use-url-query.ts
|
|
62084
|
-
/**
|
|
62085
|
-
* Tiny URL query sync for surfaces that cannot assume react-router
|
|
62086
|
-
* (federated addon pages) or that only need a handful of params.
|
|
62087
|
-
*
|
|
62088
|
-
* Reads on mount + `popstate`; writes with `history.replaceState`. Empty /
|
|
62089
|
-
* null values are deleted so the URL stays short.
|
|
62090
|
-
*/
|
|
62091
|
-
function readParam(key) {
|
|
62092
|
-
return new URLSearchParams(window.location.search).get(key);
|
|
62093
|
-
}
|
|
62094
|
-
function writeParam(key, value) {
|
|
62095
|
-
const params = new URLSearchParams(window.location.search);
|
|
62096
|
-
if (value === null || value === "") params.delete(key);
|
|
62097
|
-
else params.set(key, value);
|
|
62098
|
-
const qs = params.toString();
|
|
62099
|
-
const url = qs ? `${window.location.pathname}?${qs}` : window.location.pathname;
|
|
62100
|
-
window.history.replaceState(null, "", url);
|
|
62101
|
-
}
|
|
62102
|
-
/**
|
|
62103
|
-
* One query param as React state. `null` means absent.
|
|
62104
|
-
* Changing it replaces the URL without a navigation.
|
|
62105
|
-
*/
|
|
62106
|
-
function useUrlQueryParam(key) {
|
|
62107
|
-
const [value, setValue] = useState(() => readParam(key));
|
|
62108
|
-
useEffect(() => {
|
|
62109
|
-
const onPop = () => setValue(readParam(key));
|
|
62110
|
-
window.addEventListener("popstate", onPop);
|
|
62111
|
-
return () => window.removeEventListener("popstate", onPop);
|
|
62112
|
-
}, [key]);
|
|
62113
|
-
return [value, useCallback((next) => {
|
|
62114
|
-
writeParam(key, next);
|
|
62115
|
-
setValue(next);
|
|
62116
|
-
}, [key])];
|
|
62117
|
-
}
|
|
62118
|
-
//#endregion
|
|
62119
62306
|
//#region src/hooks/use-device-cap-slice.ts
|
|
62120
62307
|
/**
|
|
62121
62308
|
* useDeviceCapSlice — generic runtime-state slice reader for an arbitrary
|
|
@@ -62650,4 +62837,4 @@ var SceneMonitorEditor = lazy(() => import("./SceneMonitorEditor-vfWTm6qv.js").t
|
|
|
62650
62837
|
/** Lazy-wrapped `PrivacyMaskSettings` — code-split off the main bundle. */
|
|
62651
62838
|
var PrivacyMaskSettings = lazy(() => import("./PrivacyMaskSettings-DMkchqO1.js").then((m) => ({ default: m.PrivacyMaskSettings })));
|
|
62652
62839
|
//#endregion
|
|
62653
|
-
export { AddProviderEntryDialog, AddonGlobalSettingsForm, AdminLinkQuickAction, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, AppShell, ArcKnob, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutomationHeroCard, AutomationInlineControl, AutotrackSection, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, BackToStepsButton, Badge, BatteryBadge, BottomSheet, Breadcrumb, BrightnessPanel, Button, ButtonControl, ButtonHeroCard, CARD_MODE_MIN_COLUMNS, CENTER, CHIP_ACTIVE, CHIP_BASE, CHIP_INACTIVE, CLASS_COLORS, COLUMN_BREAKPOINT_CLASS, COLUMN_PRIORITY, COMMIT_DEDUPE_TOLERANCE_MS, COMMIT_DEDUPE_WINDOW_MS, CONTROL_CAP_NAMES, CONTROL_FILLS, CameraStreamPlayer, Card, Checkbox, ChildSectionAccordion, ClimatePanel, CodeBlock, CollapsibleCard, ConfigFormBuilder, FormField as ConfigFormField, ConfigNotificationTargetMultiSelectFieldView, ConfigNotificationTargetSelectFieldView, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, CustomFieldRenderersProvider, 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, DISPLAY_ICON_REGISTRY, DataTable, DataTableFilterBar, DataTablePager, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceExportSetup, DeviceFilterBar, DeviceGrid, DeviceItem, DeviceList, DeviceMultiSelectField, DevicePicker, DeviceQuickDetailProvider, DeviceSelectField, DeviceSelectorPicker, DeviceStepMatrix, DevicesFailedLine, DevicesLoadingLine, DevicesWidenWarning, Dialog, DialogBody, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, DoorbellRecentPanel, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, DummyHeroCard, DummyInline, EMPTY_DATA_TABLE_FILTER, EVENT_KIND_ICONS, EmptyState, EndpointResultsCard, EndpointTestCard, ErrorBox, EventKindGlyph, EventStream, ExtensionsPanel, FILL, FLEET_LIST_GC_TIME_MS, FLEET_LIST_QUERY_KEY, FLEET_LIST_STALE_TIME_MS, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, FormField$1 as FormField, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GateBadge, GateControl, GripTrack, GroupedModelSelector, HOST_WIDGETS, HUB_SESSION_RUN_MS, HlsVideo, HoverZoomImage, HubSessionTestCard, HumidifierHeroCard, HumidifierInlineControl, INPUT_COMPACT, INPUT_SHELL, IconAction, IconButton, IconPicker, ImageHeroCard, ImageInlineControl, ImageSelector, InferenceConfigSelector, Input, KebabMenu, KeyValueList, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LayeredSettingsForm, LightHeroCard, LightInlineControl, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, MODE_COLOR, MaskShapeCanvas, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, MobileDrawer, ModelPicker, MotionZonesSettings, NAVIGATION_DRIVE_INTERVAL_MS, NODE_COLOR_IDS, NatResultCard, NavigationPanel, NetworkLinkBadge, NodeMultiSelectField, NodePicker, NodeSelectField, NotificationTargetSelectField, NotificationTargetsField, OPTION_SELECT_SEARCH_MIN_OPTIONS, OfflineBadge, OptionSelect, 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, PageSizeSelect, Pagination, PasswordInput, PhaseIcon, PipelineBuilder, PipelineRuntimeSelector, PipelineStep, PlaceholderChipField, PlayerOverlaysProvider, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, ProviderEntryPills, PtzPanel, QrCode, RECONNECT_POLICY, RECORDED_PLAYBACK_MODES, RIGHT, ROI_AREA_WARN_FRACTION, ROLE_DESCRIPTOR, ROOT_DETECTOR_STEP_ID, RadialGauge, RecordedPlaybackProvider, RecordingPanel, ResponseLog, RoleDisplayDefaultsFromServer, RoleDisplayDefaultsProvider, RoleNodePill, RootModelSourceControl, RootSuppliedModelNote, RunReport, 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, SceneMonitorEditor, ScopePicker, ScriptHeroCard, ScriptInlineControl, ScrollArea, SecretFieldControl, SecretRevealProvider, SectionCard, SegmentedChoice, Select, SelectedChip, SemanticBadge, SendFrameToTrainingButton, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, SettingRow, Sidebar, SidebarItem, Skeleton, SlideToggle, SnapshotButton, SortHeaderButton, StatCard, StateValuesStream, StatusBadge, StepDetailDock, StepInspectorPanel, StepModelRow, StepTimings, Stepper, StreamBrokerSelector, StreamDebugOverlay, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, 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, TimezoneSelector, Tooltip, TooltipContent, TooltipTrigger, TrainingBaseModelPicker, TrainingCollectionPicker, UnitPicker, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, VodPlaybackProvider, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, ZoneEditingProvider, MicOff as a, acceleratorLabel, acceleratorShortLabel, agentColumnKey, allDeviceTypeFilterOptions, applyFleetQueryDefaults, applyPickerFilters, ariaSortForColumn, assignNodeColorId, badgeFor, bindsToModel, buildColorByNodeId, buildPeerConnectionConfig, buildStepTreeFromSchema, EyeOff as c, catalogHasDraft, childEntityId, childListName, chipOverflow, classifyAddressScope, classifyCapability, classifySessionVerdict, clearPickerGroup, clusterRootModelIds, cn, colorIdForNode, columnsForContext, compareSrflxMappings, computePageButtons, containerChildToRef, countableDevices, coverHighlight, coverageLine, createSharedContext, createTheme, cursorFractionFor, darkColors, dataTableFacetGroups, dataTableFacets, defaultOfField, defaultSelectClusterRoots, defaultTheme, deriveDeviceKind, deriveWebrtcDebugStats, describeDeviceSelector, deviceIntegrationResolver, deviceListStateOf, deviceMatchesFilter, deviceOptionLabel, deviceRoleMeta, deviceRoleMetaOf, deviceTypeLabel, deviceTypeMeta, deviceTypeMetaOf, devicesToOptions, dockBox, draftFromQuery, effectivePageSize, emptyDevicesWidens, emptySessionRun, ensureMfHostInit, eventKindLabel, filterDataTableRows, filterDeviceOptions, filterOptions as filterOptionSelectOptions, filterPickerDevices, finalizeSessionRun, findTimezone, flattenPickerGrouping, flattenPickerRows, fleetViewOf, formatControlDateTime, formatLastSeen, formatNumeric, formatSettingValue, freezeVerdict, fuzzyMatch, getClassColor, getPhaseVisual, groupAgentColumns, groupChildrenByLayout, groupPickerDevices, groupPickerDevicesBy, hardwareLabel, hubOrigin, hubPath, hubUrl, hubWsUrl, humanDuration, humidifierTint, Mic as i, initialScrubState, insertAtSelection, isAbsentProvider, isDataTableFilterActive, isFieldVisible, isGroupExpanded, isKeychainFieldValue, isValueField, Camera as l, lawnMowerActivityMeta, lightColors, loadRemoteBundle, makeScrubBridge, mapRootDetectorPlacements, metadataEntries, metadataString, mirror, mountAddonPage, mountPath, Square as n, nextGridPosition, nextReconnectAction, nextSort, nextSortDirection, nextTableSort, nodeColorClass, nodeSoftBgClass, nodeTextColorClass, normalizeForSearch, ImageOff as o, offListSelections, openTopLayer, optionSearchText as optionSelectSearchText, orphanDeviceLabel, overrideEntityIdFromLink, pageRows, pageSizeLabel, paginateRows, parentDetailOf, parseIceCandidate, parsePickerGroupBy, parseRecordedServerMessage, partitionSelected as partitionOptionSelectSelected, partitionSuggested, pickerFacetFilterShown, pickerFacetKey, pickerFacetOptions, pickerFiltersActive, pickerGroupKey, pickerHiddenSelectedCount, pickerLocationKey, pickerQueryTokens, pickerRowFacts, pickerSearchText, pickerZoneFilterSuspended, pinnedStreamChoices, providerIcons, RotateCcw as r, readStoredGroupBy, reduceSessionRun, resetHubMountForTests, resetPickerFilters, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDeviceIntegration, resolveDisplayIcon, resolveEffectiveDefaultModel, resolveEffectiveStepModel, resolveEventKindIcon, resolveSearchable as resolveOptionSelectSearchable, resolveParentNames, resolvePrimaryChild, resolveSelectedDevices, resolveSensorDisplay, resolveStepDefaultModel, resolveTableLayout, roiTooLarge, rootSourceState, routerBasename, Grid2x2 as s, sameLocationSuggestions, scrubReducer, searchSteps, secretSubmitValue, selectPickerGroup, selectedDeviceOptions, serializeRecordedCommand, settingsModelIdFor, shouldCommit, shouldEmit, shouldShowAddNewFooter, shouldShowUseQueryRow, shouldUseSingleNode, showsNoCamerasHint, sortRows, sortRowsByColumn, statusIcons, statusLine, stepFieldDomId, stepHasModelForFormat, stepLocalFields, stepModelOptions, stripParentNamePrefix, summarizeHubCandidates, Trash2 as t, tabForSelector, tankAlert, themeToCss, toStationaryOverlayBox, toggleDataTableFacet, toggleDataTableGroupFacet, togglePickerDevice, togglePickerKey, trainingRefusalText, trpc, typeLabel, createLucideIcon as u, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsGetIntegrationSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, 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, 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, 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, useDeviceDetections, useDeviceDiscoveryAdoptDevice, useDeviceDiscoveryGetStatus, useDeviceDiscoveryListDiscovered, useDeviceDiscoveryRefreshDiscovery, useDeviceDiscoveryReleaseDevice, useDeviceExportApplyDeviceSettingsPatch, useDeviceExportExposeDevice, useDeviceExportGetDeviceLiveContribution, useDeviceExportGetDeviceSettingsContribution, useDeviceExportGetStatus, useDeviceExportListExposedDevices, useDeviceExportListSupportedDeviceKinds, useDeviceExportUnexposeDevice, useDeviceExtensionListCandidates, useDeviceExtensionListSlots, useDeviceExtensionListSources, useDeviceExtensionSetSlot, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionCancelJob, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionListJobs, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAdoptionStartJob, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyInitialMeta, 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, 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, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateClaimFields, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetNativeCapSlice, useDeviceStateGetSnapshot, useDeviceStateListClaims, useDeviceStatePatchOwnedFields, useDeviceStateReleaseClaim, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, 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, useHumidifierGetStatus, useHumidifierSetMode, useHumidifierSetOn, useHumidifierSetTargetHumidity, useHumiditySensorGetStatus, useImageGetStatus, useImageSettingsGetOptions, useImageSettingsGetStatus, useImageSettingsSetSettings, useIntegrationsCreate, useIntegrationsDelete, useIntegrationsGet, useIntegrationsGetAvailableTypes, useIntegrationsGetByAddonId, useIntegrationsGetSettings, useIntegrationsList, useIntegrationsSetSettings, useIntegrationsTestConnection, useIntegrationsUpdate, useIntercomEndTalkSession, useIntercomGetStatus, useIntercomHandleAnswer, useIntercomPushTalkAudio, useIntercomStartSession, useIntercomStartTalkSession, useIntercomStopSession, useIsMidWidth, useIsMobile, useKeychainAdminAcknowledgeReset, useKeychainAdminDeleteOrphans, useKeychainAdminDownloadRecoveryKey, 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, 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, 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, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdManagerClearSlotBinding, useOsdManagerCopyDeviceConfiguration, useOsdManagerDeleteTemplate, useOsdManagerGetConditionSupport, useOsdManagerGetDeviceOsd, useOsdManagerGetSourceCatalog, useOsdManagerListTemplates, useOsdManagerPreviewSlot, useOsdManagerRenderDevice, useOsdManagerSetSlotBinding, useOsdManagerUpsertTemplate, useOsdSetOverlay, usePTZ, usePersistedPageSize, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePickerSiteZones, usePipelineAnalyticsAddRetrainFrameFromRecording, usePipelineAnalyticsAddRetrainFramesToCollection, usePipelineAnalyticsApplyDeviceSettingsPatch, 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, 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, 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, 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, useSettingsStoreUpdate, useSettingsStoreUpdateWhere, useSettingsStoreUpsert, 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, useStorageMigrationMovers, useStorageMigrationPlan, useStorageMigrationResidue, useStorageMigrationStart, useStorageMigrationStatus, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStoredGroupBy, useStreamBrokerAcquireEgressTranscode, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerFetchEventMedia, useStreamBrokerForgetDeviceHardware, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceAudioMute, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, 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, useUpdateGetStatus, useUpdateInstallUpdate, useUrlQueryParam, useUserManagementConfirmTotp, useUserManagementCreateScopedToken, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementFindUserByExternalIdentity, useUserManagementGetTotpStatus, useUserManagementListApiKeys, useUserManagementListExternalIdentities, useUserManagementListOauthSessions, useUserManagementListScopedTokens, useUserManagementListUsers, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeApiKey, useUserManagementRevokeOauthSession, useUserManagementRevokeScopedToken, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUnlinkExternalIdentity, useUserManagementUpdateUser, useUserManagementValidateCredentials, useUserManagementValidateScopedToken, 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, vacuumStateMeta, validateScopes, valveStateMeta, variantLabel, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint, withResolvedParentDetail, withUseRootModel, writeStoredGroupBy };
|
|
62840
|
+
export { AddProviderEntryDialog, AddonGlobalSettingsForm, AdminLinkQuickAction, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, AppShell, ArcKnob, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutomationHeroCard, AutomationInlineControl, AutotrackSection, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, BackToStepsButton, Badge, BatteryBadge, BottomSheet, Breadcrumb, BrightnessPanel, Button, ButtonControl, ButtonHeroCard, CARD_MODE_MIN_COLUMNS, CENTER, CHIP_ACTIVE, CHIP_BASE, CHIP_INACTIVE, CLASS_COLORS, COLUMN_BREAKPOINT_CLASS, COLUMN_PRIORITY, COMMIT_DEDUPE_TOLERANCE_MS, COMMIT_DEDUPE_WINDOW_MS, CONTROL_CAP_NAMES, CONTROL_FILLS, CameraStreamPlayer, Card, Checkbox, ChildSectionAccordion, ClimatePanel, CodeBlock, CollapsibleCard, ConfigFormBuilder, FormField as ConfigFormField, ConfigNotificationTargetMultiSelectFieldView, ConfigNotificationTargetSelectFieldView, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, CustomFieldRenderersProvider, 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, DISPLAY_ICON_REGISTRY, DataTable, DataTableFilterBar, DataTablePager, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceExportSetup, DeviceFilterBar, DeviceGrid, DeviceItem, DeviceList, DeviceMultiSelectField, DevicePicker, DeviceQuickDetailProvider, DeviceSelectField, DeviceSelectorPicker, DeviceStepMatrix, DevicesFailedLine, DevicesLoadingLine, DevicesWidenWarning, Dialog, DialogBody, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, DoorbellRecentPanel, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, DummyHeroCard, DummyInline, EMPTY_DATA_TABLE_FILTER, EVENT_KIND_ICONS, EmptyState, EndpointResultsCard, EndpointTestCard, ErrorBox, EventKindGlyph, EventStream, ExtensionsPanel, FILL, FLEET_LIST_GC_TIME_MS, FLEET_LIST_QUERY_KEY, FLEET_LIST_STALE_TIME_MS, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, FormField$1 as FormField, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GateBadge, GateControl, GripTrack, GroupedModelSelector, HOST_WIDGETS, HUB_SESSION_RUN_MS, HlsVideo, HoverZoomImage, HubSessionTestCard, HumidifierHeroCard, HumidifierInlineControl, INPUT_COMPACT, INPUT_SHELL, IconAction, IconButton, IconPicker, ImageHeroCard, ImageInlineControl, ImageSelector, InferenceConfigSelector, Input, ItemFormDialog, KebabMenu, KeyValueList, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LayeredSettingsForm, LightHeroCard, LightInlineControl, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, MEDIA_GRID, MODE_COLOR, MaskShapeCanvas, MediaCard, MediaGrid, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, MobileDrawer, ModelPicker, MotionZonesSettings, NAVIGATION_DRIVE_INTERVAL_MS, NODE_COLOR_IDS, NatResultCard, NavigationPanel, NetworkLinkBadge, NodeMultiSelectField, NodePicker, NodeSelectField, NotificationTargetSelectField, NotificationTargetsField, OPTION_SELECT_SEARCH_MIN_OPTIONS, OfflineBadge, OptionSelect, 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, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, ProviderEntryPills, PtzPanel, QrCode, RECONNECT_POLICY, RECORDED_PLAYBACK_MODES, RIGHT, ROI_AREA_WARN_FRACTION, ROLE_DESCRIPTOR, ROOT_DETECTOR_STEP_ID, RadialGauge, RecordedPlaybackProvider, RecordingPanel, ResponseLog, RoleDisplayDefaultsFromServer, RoleDisplayDefaultsProvider, RoleNodePill, RootModelSourceControl, RootSuppliedModelNote, RunReport, 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, SceneMonitorEditor, ScopePicker, ScriptHeroCard, ScriptInlineControl, ScrollArea, SecretFieldControl, SecretRevealProvider, SectionCard, SectionToolbar, SegmentedChoice, Select, SelectedChip, SemanticBadge, SendFrameToTrainingButton, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, SettingRow, Sidebar, SidebarItem, Skeleton, SlideToggle, SnapshotButton, SortHeaderButton, StatCard, StateValuesStream, StatusBadge, StepDetailDock, StepInspectorPanel, StepModelRow, StepTimings, Stepper, StreamBrokerSelector, StreamDebugOverlay, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, 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, TimezoneSelector, Tooltip, TooltipContent, TooltipTrigger, TrainingBaseModelPicker, TrainingCollectionPicker, UnitPicker, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, VodPlaybackProvider, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, ZoneEditingProvider, MicOff as a, acceleratorLabel, acceleratorShortLabel, agentColumnKey, allDeviceTypeFilterOptions, applyFleetQueryDefaults, applyPickerFilters, ariaSortForColumn, assignNodeColorId, badgeFor, bindsToModel, buildColorByNodeId, buildPeerConnectionConfig, buildStepTreeFromSchema, EyeOff as c, catalogHasDraft, childEntityId, childListName, chipOverflow, classifyAddressScope, classifyCapability, classifySessionVerdict, clearPickerGroup, clusterRootModelIds, cn, colorIdForNode, columnsForContext, compareSrflxMappings, computePageButtons, containerChildToRef, countableDevices, coverHighlight, coverageLine, createSharedContext, createTheme, cursorFractionFor, darkColors, dataTableFacetGroups, dataTableFacets, defaultOfField, defaultSelectClusterRoots, defaultTheme, deriveDeviceKind, deriveWebrtcDebugStats, describeDeviceSelector, deviceIntegrationResolver, deviceListStateOf, deviceMatchesFilter, deviceOptionLabel, deviceRoleMeta, deviceRoleMetaOf, deviceTypeLabel, deviceTypeMeta, deviceTypeMetaOf, devicesToOptions, dockBox, draftFromQuery, effectivePageSize, emptyDevicesWidens, emptySessionRun, ensureMfHostInit, eventKindLabel, filterDataTableRows, filterDeviceOptions, filterOptions as filterOptionSelectOptions, filterPickerDevices, finalizeSessionRun, findTimezone, flattenPickerGrouping, flattenPickerRows, fleetViewOf, formatControlDateTime, formatLastSeen, formatNumeric, formatSettingValue, freezeVerdict, fuzzyMatch, getClassColor, getPhaseVisual, groupAgentColumns, groupChildrenByLayout, groupPickerDevices, groupPickerDevicesBy, hardwareLabel, hubOrigin, hubPath, hubUrl, hubWsUrl, humanDuration, humidifierTint, Mic as i, initialScrubState, insertAtSelection, isAbsentProvider, isDataTableFilterActive, isFieldVisible, isGroupExpanded, isKeychainFieldValue, isValueField, Camera as l, lawnMowerActivityMeta, lightColors, loadRemoteBundle, makeScrubBridge, mapRootDetectorPlacements, metadataEntries, metadataString, mirror, mountAddonPage, mountPath, Square as n, nextGridPosition, nextReconnectAction, nextSort, nextSortDirection, nextTableSort, nodeColorClass, nodeSoftBgClass, nodeTextColorClass, normalizeForSearch, ImageOff as o, offListSelections, openTopLayer, optionSearchText as optionSelectSearchText, orphanDeviceLabel, overrideEntityIdFromLink, pageRows, pageSizeLabel, paginateRows, parentDetailOf, parseIceCandidate, parsePickerGroupBy, parseRecordedServerMessage, partitionSelected as partitionOptionSelectSelected, partitionSuggested, pickerFacetFilterShown, pickerFacetKey, pickerFacetOptions, pickerFiltersActive, pickerGroupKey, pickerHiddenSelectedCount, pickerLocationKey, pickerQueryTokens, pickerRowFacts, pickerSearchText, pickerZoneFilterSuspended, pinnedStreamChoices, providerIcons, RotateCcw as r, readStoredGroupBy, reduceSessionRun, resetHubMountForTests, resetPickerFilters, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDeviceIntegration, resolveDisplayIcon, resolveEffectiveDefaultModel, resolveEffectiveStepModel, resolveEventKindIcon, resolveSearchable as resolveOptionSelectSearchable, resolveParentNames, resolvePrimaryChild, resolveSelectedDevices, resolveSensorDisplay, resolveStepDefaultModel, resolveTableLayout, roiTooLarge, rootSourceState, routerBasename, Grid2x2 as s, sameLocationSuggestions, scrubReducer, searchSteps, secretSubmitValue, selectPickerGroup, selectedDeviceOptions, serializeRecordedCommand, settingsModelIdFor, shouldCommit, shouldEmit, shouldShowAddNewFooter, shouldShowUseQueryRow, shouldUseSingleNode, showsNoCamerasHint, sortRows, sortRowsByColumn, statusIcons, statusLine, stepFieldDomId, stepHasModelForFormat, stepLocalFields, stepModelOptions, stripParentNamePrefix, summarizeHubCandidates, Trash2 as t, tabForSelector, tankAlert, themeToCss, toStationaryOverlayBox, toggleDataTableFacet, toggleDataTableGroupFacet, togglePickerDevice, togglePickerKey, trainingRefusalText, trpc, typeLabel, createLucideIcon as u, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsGetIntegrationSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, 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, 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, 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, useDeviceDetections, useDeviceDiscoveryAdoptDevice, useDeviceDiscoveryGetStatus, useDeviceDiscoveryListDiscovered, useDeviceDiscoveryRefreshDiscovery, useDeviceDiscoveryReleaseDevice, useDeviceExportApplyDeviceSettingsPatch, useDeviceExportExposeDevice, useDeviceExportGetDeviceLiveContribution, useDeviceExportGetDeviceSettingsContribution, useDeviceExportGetStatus, useDeviceExportListExposedDevices, useDeviceExportListSupportedDeviceKinds, useDeviceExportUnexposeDevice, useDeviceExtensionListCandidates, useDeviceExtensionListSlots, useDeviceExtensionListSources, useDeviceExtensionSetSlot, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionCancelJob, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionListJobs, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAdoptionStartJob, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyInitialMeta, 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, 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, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateClaimFields, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetNativeCapSlice, useDeviceStateGetSnapshot, useDeviceStateListClaims, useDeviceStatePatchOwnedFields, useDeviceStateReleaseClaim, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, 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, useHumidifierGetStatus, useHumidifierSetMode, useHumidifierSetOn, useHumidifierSetTargetHumidity, useHumiditySensorGetStatus, 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, 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, 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, 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, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdManagerClearSlotBinding, useOsdManagerCopyDeviceConfiguration, useOsdManagerDeleteTemplate, useOsdManagerGetConditionSupport, useOsdManagerGetDeviceOsd, useOsdManagerGetSourceCatalog, useOsdManagerListTemplates, useOsdManagerPreviewSlot, useOsdManagerRenderDevice, useOsdManagerSetSlotBinding, useOsdManagerUpsertTemplate, useOsdSetOverlay, usePTZ, usePersistedPageSize, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePickerSiteZones, usePipelineAnalyticsAddRetrainFrameFromRecording, usePipelineAnalyticsAddRetrainFramesToCollection, usePipelineAnalyticsApplyDeviceSettingsPatch, 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, 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, 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, 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, useSettingsStoreUpdate, useSettingsStoreUpdateWhere, useSettingsStoreUpsert, 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, useStorageMigrationMovers, useStorageMigrationPlan, useStorageMigrationResidue, useStorageMigrationStart, useStorageMigrationStatus, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStoredGroupBy, useStreamBrokerAcquireEgressTranscode, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerFetchEventMedia, useStreamBrokerForgetDeviceHardware, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceAudioMute, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, 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, useUpdateGetStatus, useUpdateInstallUpdate, useUrlQueryParam, useUserManagementConfirmTotp, useUserManagementCreateScopedToken, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementFindUserByExternalIdentity, useUserManagementGetTotpStatus, useUserManagementListApiKeys, useUserManagementListExternalIdentities, useUserManagementListOauthSessions, useUserManagementListScopedTokens, useUserManagementListUsers, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeApiKey, useUserManagementRevokeOauthSession, useUserManagementRevokeScopedToken, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUnlinkExternalIdentity, useUserManagementUpdateUser, useUserManagementValidateCredentials, useUserManagementValidateScopedToken, 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, vacuumStateMeta, validateScopes, valveStateMeta, variantLabel, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint, withResolvedParentDetail, withUseRootModel, writeStoredGroupBy };
|
package/dist/lib/responsive.d.ts
CHANGED
|
@@ -49,6 +49,8 @@ export declare const GRID_GAP: "gap-2 sm:gap-3";
|
|
|
49
49
|
export declare const LIST_ROW: "px-3 sm:px-4 py-1.5 sm:py-2";
|
|
50
50
|
/** 1-up at L1, 2-up at L2, 4-up at L3 — quick-stat row. */
|
|
51
51
|
export declare const GRID_QUICK_STATS: "grid grid-cols-2 sm:grid-cols-2 lg:grid-cols-4";
|
|
52
|
+
/** Auto-fill media tiles (events, frames, crops) — ~4 across at lg. */
|
|
53
|
+
export declare const MEDIA_GRID: "grid grid-cols-[repeat(auto-fill,minmax(11rem,1fr))]";
|
|
52
54
|
/** 1-up at L1, 2-up at L2+ — paired panels (motion + detection rules). */
|
|
53
55
|
export declare const GRID_PAIRED: "grid grid-cols-1 lg:grid-cols-2";
|
|
54
56
|
/** Side-by-side layout that stacks below md (canvas + side panel). */
|
|
@@ -7,7 +7,7 @@ interface DialogProps {
|
|
|
7
7
|
export declare function Dialog({ children, open: controlledOpen, onOpenChange }: DialogProps): JSX.Element;
|
|
8
8
|
export declare function DialogTrigger({ children, ...props }: HTMLAttributes<HTMLButtonElement>): JSX.Element;
|
|
9
9
|
export interface DialogContentProps extends HTMLAttributes<HTMLDialogElement> {
|
|
10
|
-
width?: "sm" | "md" | "lg";
|
|
10
|
+
width?: "sm" | "md" | "lg" | "xl";
|
|
11
11
|
scroll?: "content" | "body";
|
|
12
12
|
placement?: "center" | "sheet-on-mobile";
|
|
13
13
|
}
|