@camstack/ui-library 1.1.40 → 1.1.42

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/index.js CHANGED
@@ -3,7 +3,7 @@ import * as __mfHostReact from "react";
3
3
  import React, { Fragment, Suspense, createContext, createElement, forwardRef, lazy, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useReducer, useRef, useState, useSyncExternalStore } from "react";
4
4
  import * as __mfHostReactJsxRuntime from "react/jsx-runtime";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
- import { ALL_CAPABILITY_DEFINITIONS, DEFAULT_SCRUB_THUMBNAIL_PRESET, DeviceExportStatusSchema, DeviceFeature, DeviceRole, DeviceType, EventCategory, ExposedDeviceSchema, KNOWN_CAP_NAMES, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, RecordingConfigSchema, RecordingStatusSchema, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, ScrubThumbnailPresetSchema, SourceInfoSchema, TIMEZONES, buildModelVariantGroups, canConvertUnit, createDeviceProxy, createLazyTrpcSource, createSliceHandle, describeModelVariant, findTimezone, resolveVariantModelId, tryConvertUnit } from "@camstack/types";
6
+ import { ALL_CAPABILITY_DEFINITIONS, DEFAULT_EVENT_COLOR, DEFAULT_SCRUB_THUMBNAIL_PRESET, DeviceExportStatusSchema, DeviceFeature, DeviceRole, DeviceType, EVENT_TAXONOMY, EventCategory, ExposedDeviceSchema, KNOWN_CAP_NAMES, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, RecordingConfigSchema, RecordingStatusSchema, SCRUB_THUMBNAIL_PRESET_LABELS, SCRUB_THUMBNAIL_PRESET_ORDER, ScrubThumbnailPresetSchema, SourceInfoSchema, TIMEZONES, buildModelVariantGroups, canConvertUnit, createDeviceProxy, createLazyTrpcSource, createSliceHandle, describeModelVariant, findTimezone, resolveVariantModelId, tryConvertUnit } from "@camstack/types";
7
7
  import * as __mfHostReactDOM from "react-dom";
8
8
  import { createPortal } from "react-dom";
9
9
  import * as __mfHostReactDOMClient from "react-dom/client";
@@ -8434,6 +8434,68 @@ var Bell = createLucideIcon("bell", [["path", {
8434
8434
  * This source code is licensed under the ISC license.
8435
8435
  * See the LICENSE file in the root directory of this source tree.
8436
8436
  */
8437
+ var Bike = createLucideIcon("bike", [
8438
+ ["circle", {
8439
+ cx: "18.5",
8440
+ cy: "17.5",
8441
+ r: "3.5",
8442
+ key: "15x4ox"
8443
+ }],
8444
+ ["circle", {
8445
+ cx: "5.5",
8446
+ cy: "17.5",
8447
+ r: "3.5",
8448
+ key: "1noe27"
8449
+ }],
8450
+ ["circle", {
8451
+ cx: "15",
8452
+ cy: "5",
8453
+ r: "1",
8454
+ key: "19l28e"
8455
+ }],
8456
+ ["path", {
8457
+ d: "M12 17.5V14l-3-3 4-3 2 3h2",
8458
+ key: "1npguv"
8459
+ }]
8460
+ ]);
8461
+ /**
8462
+ * @license lucide-react v0.576.0 - ISC
8463
+ *
8464
+ * This source code is licensed under the ISC license.
8465
+ * See the LICENSE file in the root directory of this source tree.
8466
+ */
8467
+ var Bird = createLucideIcon("bird", [
8468
+ ["path", {
8469
+ d: "M16 7h.01",
8470
+ key: "1kdx03"
8471
+ }],
8472
+ ["path", {
8473
+ d: "M3.4 18H12a8 8 0 0 0 8-8V7a4 4 0 0 0-7.28-2.3L2 20",
8474
+ key: "oj1oa8"
8475
+ }],
8476
+ ["path", {
8477
+ d: "m20 7 2 .5-2 .5",
8478
+ key: "12nv4d"
8479
+ }],
8480
+ ["path", {
8481
+ d: "M10 18v3",
8482
+ key: "1yea0a"
8483
+ }],
8484
+ ["path", {
8485
+ d: "M14 17.75V21",
8486
+ key: "1pymcb"
8487
+ }],
8488
+ ["path", {
8489
+ d: "M7 18a6 6 0 0 0 3.84-10.61",
8490
+ key: "1npnn0"
8491
+ }]
8492
+ ]);
8493
+ /**
8494
+ * @license lucide-react v0.576.0 - ISC
8495
+ *
8496
+ * This source code is licensed under the ISC license.
8497
+ * See the LICENSE file in the root directory of this source tree.
8498
+ */
8437
8499
  var Blinds = createLucideIcon("blinds", [
8438
8500
  ["path", {
8439
8501
  d: "M3 3h18",
@@ -8590,6 +8652,46 @@ var Bug = createLucideIcon("bug", [
8590
8652
  * This source code is licensed under the ISC license.
8591
8653
  * See the LICENSE file in the root directory of this source tree.
8592
8654
  */
8655
+ var Bus = createLucideIcon("bus", [
8656
+ ["path", {
8657
+ d: "M8 6v6",
8658
+ key: "18i7km"
8659
+ }],
8660
+ ["path", {
8661
+ d: "M15 6v6",
8662
+ key: "1sg6z9"
8663
+ }],
8664
+ ["path", {
8665
+ d: "M2 12h19.6",
8666
+ key: "de5uta"
8667
+ }],
8668
+ ["path", {
8669
+ d: "M18 18h3s.5-1.7.8-2.8c.1-.4.2-.8.2-1.2 0-.4-.1-.8-.2-1.2l-1.4-5C20.1 6.8 19.1 6 18 6H4a2 2 0 0 0-2 2v10h3",
8670
+ key: "1wwztk"
8671
+ }],
8672
+ ["circle", {
8673
+ cx: "7",
8674
+ cy: "18",
8675
+ r: "2",
8676
+ key: "19iecd"
8677
+ }],
8678
+ ["path", {
8679
+ d: "M9 18h5",
8680
+ key: "lrx6i"
8681
+ }],
8682
+ ["circle", {
8683
+ cx: "16",
8684
+ cy: "18",
8685
+ r: "2",
8686
+ key: "1v4tcr"
8687
+ }]
8688
+ ]);
8689
+ /**
8690
+ * @license lucide-react v0.576.0 - ISC
8691
+ *
8692
+ * This source code is licensed under the ISC license.
8693
+ * See the LICENSE file in the root directory of this source tree.
8694
+ */
8593
8695
  var Camera = createLucideIcon("camera", [["path", {
8594
8696
  d: "M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",
8595
8697
  key: "18u6gg"
@@ -8605,6 +8707,34 @@ var Camera = createLucideIcon("camera", [["path", {
8605
8707
  * This source code is licensed under the ISC license.
8606
8708
  * See the LICENSE file in the root directory of this source tree.
8607
8709
  */
8710
+ var Car = createLucideIcon("car", [
8711
+ ["path", {
8712
+ d: "M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2",
8713
+ key: "5owen"
8714
+ }],
8715
+ ["circle", {
8716
+ cx: "7",
8717
+ cy: "17",
8718
+ r: "2",
8719
+ key: "u2ysq9"
8720
+ }],
8721
+ ["path", {
8722
+ d: "M9 17h6",
8723
+ key: "r8uit2"
8724
+ }],
8725
+ ["circle", {
8726
+ cx: "17",
8727
+ cy: "17",
8728
+ r: "2",
8729
+ key: "axvx0g"
8730
+ }]
8731
+ ]);
8732
+ /**
8733
+ * @license lucide-react v0.576.0 - ISC
8734
+ *
8735
+ * This source code is licensed under the ISC license.
8736
+ * See the LICENSE file in the root directory of this source tree.
8737
+ */
8608
8738
  var Cast = createLucideIcon("cast", [
8609
8739
  ["path", {
8610
8740
  d: "M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6",
@@ -8632,6 +8762,30 @@ var Cast = createLucideIcon("cast", [
8632
8762
  * This source code is licensed under the ISC license.
8633
8763
  * See the LICENSE file in the root directory of this source tree.
8634
8764
  */
8765
+ var Cat = createLucideIcon("cat", [
8766
+ ["path", {
8767
+ d: "M12 5c.67 0 1.35.09 2 .26 1.78-2 5.03-2.84 6.42-2.26 1.4.58-.42 7-.42 7 .57 1.07 1 2.24 1 3.44C21 17.9 16.97 21 12 21s-9-3-9-7.56c0-1.25.5-2.4 1-3.44 0 0-1.89-6.42-.5-7 1.39-.58 4.72.23 6.5 2.23A9.04 9.04 0 0 1 12 5Z",
8768
+ key: "x6xyqk"
8769
+ }],
8770
+ ["path", {
8771
+ d: "M8 14v.5",
8772
+ key: "1nzgdb"
8773
+ }],
8774
+ ["path", {
8775
+ d: "M16 14v.5",
8776
+ key: "1lajdz"
8777
+ }],
8778
+ ["path", {
8779
+ d: "M11.25 16.25h1.5L12 17l-.75-.75Z",
8780
+ key: "12kq1m"
8781
+ }]
8782
+ ]);
8783
+ /**
8784
+ * @license lucide-react v0.576.0 - ISC
8785
+ *
8786
+ * This source code is licensed under the ISC license.
8787
+ * See the LICENSE file in the root directory of this source tree.
8788
+ */
8635
8789
  var Check = createLucideIcon("check", [["path", {
8636
8790
  d: "M20 6 9 17l-5-5",
8637
8791
  key: "1gmf2c"
@@ -9215,6 +9369,34 @@ var Database = createLucideIcon("database", [
9215
9369
  * This source code is licensed under the ISC license.
9216
9370
  * See the LICENSE file in the root directory of this source tree.
9217
9371
  */
9372
+ var Dog = createLucideIcon("dog", [
9373
+ ["path", {
9374
+ d: "M11.25 16.25h1.5L12 17z",
9375
+ key: "w7jh35"
9376
+ }],
9377
+ ["path", {
9378
+ d: "M16 14v.5",
9379
+ key: "1lajdz"
9380
+ }],
9381
+ ["path", {
9382
+ d: "M4.42 11.247A13.152 13.152 0 0 0 4 14.556C4 18.728 7.582 21 12 21s8-2.272 8-6.444a11.702 11.702 0 0 0-.493-3.309",
9383
+ key: "u7s9ue"
9384
+ }],
9385
+ ["path", {
9386
+ d: "M8 14v.5",
9387
+ key: "1nzgdb"
9388
+ }],
9389
+ ["path", {
9390
+ d: "M8.5 8.5c-.384 1.05-1.083 2.028-2.344 2.5-1.931.722-3.576-.297-3.656-1-.113-.994 1.177-6.53 4-7 1.923-.321 3.651.845 3.651 2.235A7.497 7.497 0 0 1 14 5.277c0-1.39 1.844-2.598 3.767-2.277 2.823.47 4.113 6.006 4 7-.08.703-1.725 1.722-3.656 1-1.261-.472-1.855-1.45-2.239-2.5",
9391
+ key: "v8hric"
9392
+ }]
9393
+ ]);
9394
+ /**
9395
+ * @license lucide-react v0.576.0 - ISC
9396
+ *
9397
+ * This source code is licensed under the ISC license.
9398
+ * See the LICENSE file in the root directory of this source tree.
9399
+ */
9218
9400
  var DoorClosed = createLucideIcon("door-closed", [
9219
9401
  ["path", {
9220
9402
  d: "M10 12h.01",
@@ -10428,6 +10610,30 @@ var Network = createLucideIcon("network", [
10428
10610
  * This source code is licensed under the ISC license.
10429
10611
  * See the LICENSE file in the root directory of this source tree.
10430
10612
  */
10613
+ var Package = createLucideIcon("package", [
10614
+ ["path", {
10615
+ d: "M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",
10616
+ key: "1a0edw"
10617
+ }],
10618
+ ["path", {
10619
+ d: "M12 22V12",
10620
+ key: "d0xqtd"
10621
+ }],
10622
+ ["polyline", {
10623
+ points: "3.29 7 12 12 20.71 7",
10624
+ key: "ousv84"
10625
+ }],
10626
+ ["path", {
10627
+ d: "m7.5 4.27 9 5.15",
10628
+ key: "1c824w"
10629
+ }]
10630
+ ]);
10631
+ /**
10632
+ * @license lucide-react v0.576.0 - ISC
10633
+ *
10634
+ * This source code is licensed under the ISC license.
10635
+ * See the LICENSE file in the root directory of this source tree.
10636
+ */
10431
10637
  var Pause = createLucideIcon("pause", [["rect", {
10432
10638
  x: "14",
10433
10639
  y: "3",
@@ -10512,6 +10718,16 @@ var Pipette = createLucideIcon("pipette", [
10512
10718
  * This source code is licensed under the ISC license.
10513
10719
  * See the LICENSE file in the root directory of this source tree.
10514
10720
  */
10721
+ var Plane = createLucideIcon("plane", [["path", {
10722
+ d: "M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z",
10723
+ key: "1v9wt8"
10724
+ }]]);
10725
+ /**
10726
+ * @license lucide-react v0.576.0 - ISC
10727
+ *
10728
+ * This source code is licensed under the ISC license.
10729
+ * See the LICENSE file in the root directory of this source tree.
10730
+ */
10515
10731
  var Play = createLucideIcon("play", [["path", {
10516
10732
  d: "M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",
10517
10733
  key: "10ikf1"
@@ -10786,6 +11002,26 @@ var RotateCw = createLucideIcon("rotate-cw", [["path", {
10786
11002
  * This source code is licensed under the ISC license.
10787
11003
  * See the LICENSE file in the root directory of this source tree.
10788
11004
  */
11005
+ var Sailboat = createLucideIcon("sailboat", [
11006
+ ["path", {
11007
+ d: "M10 2v15",
11008
+ key: "1qf71f"
11009
+ }],
11010
+ ["path", {
11011
+ d: "M7 22a4 4 0 0 1-4-4 1 1 0 0 1 1-1h16a1 1 0 0 1 1 1 4 4 0 0 1-4 4z",
11012
+ key: "1pxcvx"
11013
+ }],
11014
+ ["path", {
11015
+ d: "M9.159 2.46a1 1 0 0 1 1.521-.193l9.977 8.98A1 1 0 0 1 20 13H4a1 1 0 0 1-.824-1.567z",
11016
+ key: "5oog16"
11017
+ }]
11018
+ ]);
11019
+ /**
11020
+ * @license lucide-react v0.576.0 - ISC
11021
+ *
11022
+ * This source code is licensed under the ISC license.
11023
+ * See the LICENSE file in the root directory of this source tree.
11024
+ */
10789
11025
  var Save = createLucideIcon("save", [
10790
11026
  ["path", {
10791
11027
  d: "M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",
@@ -11451,6 +11687,22 @@ var Table2 = createLucideIcon("table-2", [["path", {
11451
11687
  * This source code is licensed under the ISC license.
11452
11688
  * See the LICENSE file in the root directory of this source tree.
11453
11689
  */
11690
+ var Tag = createLucideIcon("tag", [["path", {
11691
+ d: "M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",
11692
+ key: "vktsd0"
11693
+ }], ["circle", {
11694
+ cx: "7.5",
11695
+ cy: "7.5",
11696
+ r: ".5",
11697
+ fill: "currentColor",
11698
+ key: "kqv944"
11699
+ }]]);
11700
+ /**
11701
+ * @license lucide-react v0.576.0 - ISC
11702
+ *
11703
+ * This source code is licensed under the ISC license.
11704
+ * See the LICENSE file in the root directory of this source tree.
11705
+ */
11454
11706
  var Target = createLucideIcon("target", [
11455
11707
  ["circle", {
11456
11708
  cx: "12",
@@ -11506,6 +11758,25 @@ var ToggleLeft = createLucideIcon("toggle-left", [["circle", {
11506
11758
  * This source code is licensed under the ISC license.
11507
11759
  * See the LICENSE file in the root directory of this source tree.
11508
11760
  */
11761
+ var ToggleRight = createLucideIcon("toggle-right", [["circle", {
11762
+ cx: "15",
11763
+ cy: "12",
11764
+ r: "3",
11765
+ key: "1afu0r"
11766
+ }], ["rect", {
11767
+ width: "20",
11768
+ height: "14",
11769
+ x: "2",
11770
+ y: "5",
11771
+ rx: "7",
11772
+ key: "g7kal2"
11773
+ }]]);
11774
+ /**
11775
+ * @license lucide-react v0.576.0 - ISC
11776
+ *
11777
+ * This source code is licensed under the ISC license.
11778
+ * See the LICENSE file in the root directory of this source tree.
11779
+ */
11509
11780
  var Tractor = createLucideIcon("tractor", [
11510
11781
  ["path", {
11511
11782
  d: "m10 11 11 .9a1 1 0 0 1 .8 1.1l-.665 4.158a1 1 0 0 1-.988.842H20",
@@ -11554,6 +11825,38 @@ var Tractor = createLucideIcon("tractor", [
11554
11825
  * This source code is licensed under the ISC license.
11555
11826
  * See the LICENSE file in the root directory of this source tree.
11556
11827
  */
11828
+ var TrainFront = createLucideIcon("train-front", [
11829
+ ["path", {
11830
+ d: "M8 3.1V7a4 4 0 0 0 8 0V3.1",
11831
+ key: "1v71zp"
11832
+ }],
11833
+ ["path", {
11834
+ d: "m9 15-1-1",
11835
+ key: "1yrq24"
11836
+ }],
11837
+ ["path", {
11838
+ d: "m15 15 1-1",
11839
+ key: "1t0d6s"
11840
+ }],
11841
+ ["path", {
11842
+ d: "M9 19c-2.8 0-5-2.2-5-5v-4a8 8 0 0 1 16 0v4c0 2.8-2.2 5-5 5Z",
11843
+ key: "1p0hjs"
11844
+ }],
11845
+ ["path", {
11846
+ d: "m8 19-2 3",
11847
+ key: "13i0xs"
11848
+ }],
11849
+ ["path", {
11850
+ d: "m16 19 2 3",
11851
+ key: "xo31yx"
11852
+ }]
11853
+ ]);
11854
+ /**
11855
+ * @license lucide-react v0.576.0 - ISC
11856
+ *
11857
+ * This source code is licensed under the ISC license.
11858
+ * See the LICENSE file in the root directory of this source tree.
11859
+ */
11557
11860
  var Trash2 = createLucideIcon("trash-2", [
11558
11861
  ["path", {
11559
11862
  d: "M10 11v6",
@@ -11628,6 +11931,38 @@ var TriangleAlert = createLucideIcon("triangle-alert", [
11628
11931
  * This source code is licensed under the ISC license.
11629
11932
  * See the LICENSE file in the root directory of this source tree.
11630
11933
  */
11934
+ var Truck = createLucideIcon("truck", [
11935
+ ["path", {
11936
+ d: "M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2",
11937
+ key: "wrbu53"
11938
+ }],
11939
+ ["path", {
11940
+ d: "M15 18H9",
11941
+ key: "1lyqi6"
11942
+ }],
11943
+ ["path", {
11944
+ d: "M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14",
11945
+ key: "lysw3i"
11946
+ }],
11947
+ ["circle", {
11948
+ cx: "17",
11949
+ cy: "18",
11950
+ r: "2",
11951
+ key: "332jqn"
11952
+ }],
11953
+ ["circle", {
11954
+ cx: "7",
11955
+ cy: "18",
11956
+ r: "2",
11957
+ key: "19iecd"
11958
+ }]
11959
+ ]);
11960
+ /**
11961
+ * @license lucide-react v0.576.0 - ISC
11962
+ *
11963
+ * This source code is licensed under the ISC license.
11964
+ * See the LICENSE file in the root directory of this source tree.
11965
+ */
11631
11966
  var Type = createLucideIcon("type", [
11632
11967
  ["path", {
11633
11968
  d: "M12 4v16",
@@ -11678,6 +12013,43 @@ var Upload = createLucideIcon("upload", [
11678
12013
  * This source code is licensed under the ISC license.
11679
12014
  * See the LICENSE file in the root directory of this source tree.
11680
12015
  */
12016
+ var UserCheck = createLucideIcon("user-check", [
12017
+ ["path", {
12018
+ d: "m16 11 2 2 4-4",
12019
+ key: "9rsbq5"
12020
+ }],
12021
+ ["path", {
12022
+ d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",
12023
+ key: "1yyitq"
12024
+ }],
12025
+ ["circle", {
12026
+ cx: "9",
12027
+ cy: "7",
12028
+ r: "4",
12029
+ key: "nufk8"
12030
+ }]
12031
+ ]);
12032
+ /**
12033
+ * @license lucide-react v0.576.0 - ISC
12034
+ *
12035
+ * This source code is licensed under the ISC license.
12036
+ * See the LICENSE file in the root directory of this source tree.
12037
+ */
12038
+ var User = createLucideIcon("user", [["path", {
12039
+ d: "M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",
12040
+ key: "975kel"
12041
+ }], ["circle", {
12042
+ cx: "12",
12043
+ cy: "7",
12044
+ r: "4",
12045
+ key: "17ys0d"
12046
+ }]]);
12047
+ /**
12048
+ * @license lucide-react v0.576.0 - ISC
12049
+ *
12050
+ * This source code is licensed under the ISC license.
12051
+ * See the LICENSE file in the root directory of this source tree.
12052
+ */
11681
12053
  var UtensilsCrossed = createLucideIcon("utensils-crossed", [
11682
12054
  ["path", {
11683
12055
  d: "m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8",
@@ -18057,6 +18429,14 @@ var usePipelineAnalyticsPruneTracksBefore = trpc.pipelineAnalytics.pruneTracksBe
18057
18429
  var usePipelineAnalyticsWipeAllAnalytics = trpc.pipelineAnalytics.wipeAllAnalytics.useMutation;
18058
18430
  /** Generated alias around `trpc.pipelineAnalytics.deleteTracks.useMutation`. */
18059
18431
  var usePipelineAnalyticsDeleteTracks = trpc.pipelineAnalytics.deleteTracks.useMutation;
18432
+ /** Generated alias around `trpc.pipelineAnalytics.getEventStoreFootprint.useQuery`. */
18433
+ var usePipelineAnalyticsGetEventStoreFootprint = trpc.pipelineAnalytics.getEventStoreFootprint.useQuery;
18434
+ /** Generated alias around `trpc.pipelineAnalytics.pruneEvents.useMutation`. */
18435
+ var usePipelineAnalyticsPruneEvents = trpc.pipelineAnalytics.pruneEvents.useMutation;
18436
+ /** Generated alias around `trpc.pipelineAnalytics.deleteDeviceEvents.useMutation`. */
18437
+ var usePipelineAnalyticsDeleteDeviceEvents = trpc.pipelineAnalytics.deleteDeviceEvents.useMutation;
18438
+ /** Generated alias around `trpc.pipelineAnalytics.listOpsLog.useQuery`. */
18439
+ var usePipelineAnalyticsListOpsLog = trpc.pipelineAnalytics.listOpsLog.useQuery;
18060
18440
  /** Generated alias around `trpc.pipelineAnalytics.getEventMedia.useQuery`. */
18061
18441
  var usePipelineAnalyticsGetEventMedia = trpc.pipelineAnalytics.getEventMedia.useQuery;
18062
18442
  /** Generated alias around `trpc.pipelineAnalytics.getTrackMedia.useQuery`. */
@@ -18343,6 +18723,10 @@ var useRecordingSetDeviceConfig = trpc.recording.setDeviceConfig.useMutation;
18343
18723
  var useRecordingRescanStorage = trpc.recording.rescanStorage.useMutation;
18344
18724
  /** Generated alias around `trpc.recording.pruneFootage.useMutation`. */
18345
18725
  var useRecordingPruneFootage = trpc.recording.pruneFootage.useMutation;
18726
+ /** Generated alias around `trpc.recording.deleteFootprint.useMutation`. */
18727
+ var useRecordingDeleteFootprint = trpc.recording.deleteFootprint.useMutation;
18728
+ /** Generated alias around `trpc.recording.listOpsLog.useQuery`. */
18729
+ var useRecordingListOpsLog = trpc.recording.listOpsLog.useQuery;
18346
18730
  /** Generated alias around `trpc.recording.getStatus.useQuery`. */
18347
18731
  var useRecordingGetStatus = trpc.recording.getStatus.useQuery;
18348
18732
  /** Generated alias around `trpc.recording.getDeviceSettingsContribution.useQuery`. */
@@ -30791,28 +31175,28 @@ function PipelineBuilder({ schema, steps, onChange, templates, selectedTemplateI
30791
31175
  //#endregion
30792
31176
  //#region src/composites/detection-colors.ts
30793
31177
  /**
30794
- * Detection class colors — single source of truth.
31178
+ * Detection class colors — a thin adapter over the SINGLE event-kind
31179
+ * taxonomy dictionary in `@camstack/types` (`EVENT_TAXONOMY`). Colors are no
31180
+ * longer duplicated here; this module only adds the UI-only classes the
31181
+ * taxonomy doesn't model (face / plate) and the deterministic hash fallback.
30795
31182
  *
30796
- * Used by: DetectionCanvas (UI), result-annotator (server-side SVG),
30797
- * admin-ui event viewer, and any other place that visualizes detections.
31183
+ * Used by: DetectionCanvas / DetectionResultTree / DetectionOverlay (UI),
31184
+ * and any other place that visualizes detection classes.
30798
31185
  */
30799
- /** Fixed colors for known detection classes */
30800
- var CLASS_COLORS = {
30801
- person: "#3b82f6",
30802
- vehicle: "#f59e0b",
30803
- animal: "#22c55e",
31186
+ /** UI-only classes not modelled in the event taxonomy (sub-detections). */
31187
+ var UI_ONLY_COLORS = {
30804
31188
  face: "#a855f7",
30805
- plate: "#ec4899",
30806
- bird: "#14b8a6",
30807
- dog: "#84cc16",
30808
- cat: "#f97316",
30809
- car: "#f59e0b",
30810
- truck: "#d97706",
30811
- bus: "#b45309",
30812
- motorcycle: "#eab308",
30813
- bicycle: "#ca8a04",
30814
- motion: "#facc15"
31189
+ plate: "#ec4899"
30815
31190
  };
31191
+ /**
31192
+ * Fixed colors for known detection classes — derived from the taxonomy
31193
+ * (every detection/motion kind) plus the UI-only face/plate classes. Kept as
31194
+ * a named export for back-compat with existing consumers.
31195
+ */
31196
+ var CLASS_COLORS = Object.freeze({
31197
+ ...Object.fromEntries(Object.values(EVENT_TAXONOMY).filter((e) => e.category === "detection" || e.kind === "motion").map((e) => [e.kind, e.color])),
31198
+ ...UI_ONLY_COLORS
31199
+ });
30816
31200
  /** Fallback color palette for unknown classes (deterministic hash-based) */
30817
31201
  var FALLBACK_PALETTE = [
30818
31202
  "#ef4444",
@@ -30827,19 +31211,113 @@ var FALLBACK_PALETTE = [
30827
31211
  "#059669"
30828
31212
  ];
30829
31213
  /** Primary/default color when nothing else matches */
30830
- var DEFAULT_COLOR = "#f59e42";
31214
+ var DEFAULT_COLOR = DEFAULT_EVENT_COLOR;
30831
31215
  /**
30832
31216
  * Get the color for a detection class name.
30833
- * Returns a fixed color for known classes, or a deterministic hash-based color for unknown ones.
31217
+ * Resolves: custom override taxonomy/UI-only fixed color deterministic
31218
+ * hash-based color for unknown classes.
30834
31219
  */
30835
31220
  function getClassColor(className, customColors) {
30836
31221
  if (customColors?.[className]) return customColors[className];
30837
31222
  if (customColors?.[className.toLowerCase()]) return customColors[className.toLowerCase()];
31223
+ const fromTaxonomy = EVENT_TAXONOMY[className] ?? EVENT_TAXONOMY[className.toLowerCase()];
31224
+ if (fromTaxonomy !== void 0) return fromTaxonomy.color;
30838
31225
  if (CLASS_COLORS[className]) return CLASS_COLORS[className];
30839
31226
  if (CLASS_COLORS[className.toLowerCase()]) return CLASS_COLORS[className.toLowerCase()];
30840
31227
  let hash = 0;
30841
31228
  for (let i = 0; i < className.length; i++) hash = hash * 31 + (className.codePointAt(i) ?? 0) >>> 0;
30842
- return FALLBACK_PALETTE[hash % FALLBACK_PALETTE.length] ?? "#f59e42";
31229
+ return FALLBACK_PALETTE[hash % FALLBACK_PALETTE.length] ?? DEFAULT_COLOR;
31230
+ }
31231
+ //#endregion
31232
+ //#region src/composites/event-kind-visuals.tsx
31233
+ /**
31234
+ * Event-kind VISUALS — the UI-side half of the unified taxonomy dictionary
31235
+ * (`@camstack/types` `EVENT_TAXONOMY` owns the serializable data:
31236
+ * color / iconId / labelKey; this owns `iconId → lucide component` and
31237
+ * `labelKey → t()`).
31238
+ *
31239
+ * Every UI that renders an event kind (timeline, events tree, chips,
31240
+ * detection canvas/tree) resolves its glyph + translated label here — no
31241
+ * per-component hardcoded icon or label.
31242
+ */
31243
+ /**
31244
+ * `iconId` → lucide component. Built ONLY from statically-imported icons
31245
+ * (bundle-safe). Unknown ids resolve to the neutral `Tag` fallback.
31246
+ */
31247
+ var EVENT_KIND_ICONS = {
31248
+ motion: Activity,
31249
+ audio: Volume2,
31250
+ person: User,
31251
+ vehicle: Car,
31252
+ animal: PawPrint,
31253
+ package: Package,
31254
+ sensor: Radio,
31255
+ control: SlidersHorizontal,
31256
+ car: Car,
31257
+ truck: Truck,
31258
+ bus: Bus,
31259
+ motorcycle: Bike,
31260
+ bicycle: Bike,
31261
+ airplane: Plane,
31262
+ boat: Sailboat,
31263
+ train: TrainFront,
31264
+ bird: Bird,
31265
+ cat: Cat,
31266
+ dog: Dog,
31267
+ horse: PawPrint,
31268
+ sheep: PawPrint,
31269
+ cow: PawPrint,
31270
+ elephant: PawPrint,
31271
+ bear: PawPrint,
31272
+ zebra: PawPrint,
31273
+ giraffe: PawPrint,
31274
+ door: DoorOpen,
31275
+ pir: Radar,
31276
+ smoke: Flame,
31277
+ water: Droplet,
31278
+ gas: Wind,
31279
+ vibration: Vibrate,
31280
+ tamper: ShieldAlert,
31281
+ presence: UserCheck,
31282
+ generic: Tag,
31283
+ lock: Lock,
31284
+ siren: Siren,
31285
+ switch: ToggleRight,
31286
+ doorbell: BellRing,
31287
+ button: CircleDot,
31288
+ "audio-speech": MessageSquare,
31289
+ "audio-music": Music,
31290
+ "audio-dog": Dog,
31291
+ "audio-doorbell": BellRing,
31292
+ "audio-siren": Siren,
31293
+ "audio-glass_breaking": TriangleAlert,
31294
+ "audio-alarm": TriangleAlert
31295
+ };
31296
+ /** Resolve an `iconId` to a lucide component (falls back to `Tag`). */
31297
+ function resolveEventKindIcon(iconId) {
31298
+ if (Object.hasOwn(EVENT_KIND_ICONS, iconId)) return EVENT_KIND_ICONS[iconId];
31299
+ if (iconId.startsWith("audio-")) return Volume2;
31300
+ return Tag;
31301
+ }
31302
+ /**
31303
+ * Translated label for an event kind — `t(labelKey)` when a translation
31304
+ * exists, else the English `label` fallback. Robust to a missing key: an
31305
+ * i18n backend that echoes the key unchanged (react-i18next default) is
31306
+ * treated as "no translation" and the fallback label is returned, so the UI
31307
+ * never renders a raw `eventKind.*` key.
31308
+ */
31309
+ function eventKindLabel(descriptor, t) {
31310
+ if (t === void 0) return descriptor.label;
31311
+ const translated = t(descriptor.labelKey);
31312
+ return translated === descriptor.labelKey || translated.length === 0 ? descriptor.label : translated;
31313
+ }
31314
+ /** Small convenience component: renders the lucide glyph for an `iconId`. */
31315
+ function EventKindGlyph({ iconId, size = 16, color, className }) {
31316
+ return createElement(resolveEventKindIcon(iconId), {
31317
+ size,
31318
+ color,
31319
+ className
31320
+ });
30843
31321
  }
30844
31322
  //#endregion
30845
31323
  //#region src/composites/detection-canvas.tsx
@@ -32488,6 +32966,294 @@ function mountAddonPage(PageComponent, options = {}) {
32488
32966
  }));
32489
32967
  }
32490
32968
  //#endregion
32969
+ //#region src/composites/device-select-filter.ts
32970
+ /** True when two string lists share at least one member. */
32971
+ function intersects(a, b) {
32972
+ if (a.length === 0 || b.length === 0) return false;
32973
+ const set = new Set(a);
32974
+ return b.some((v) => set.has(v));
32975
+ }
32976
+ /**
32977
+ * Does a device satisfy the filter?
32978
+ *
32979
+ * Union match: with an empty/absent filter every device passes; otherwise the
32980
+ * device passes when ANY provided clause matches — its `features` intersect
32981
+ * `caps`, OR its `type` is in `types`. `excludeDeviceId` is subtracted last
32982
+ * (it always drops the device regardless of the other clauses).
32983
+ */
32984
+ function deviceMatchesFilter(device, filter) {
32985
+ if (filter?.excludeDeviceId !== void 0 && device.id === filter.excludeDeviceId) return false;
32986
+ const hasCaps = filter?.caps !== void 0 && filter.caps.length > 0;
32987
+ const hasTypes = filter?.types !== void 0 && filter.types.length > 0;
32988
+ if (!hasCaps && !hasTypes) return true;
32989
+ if (hasCaps && intersects(device.features ?? [], filter.caps)) return true;
32990
+ if (hasTypes && filter.types.includes(device.type)) return true;
32991
+ return false;
32992
+ }
32993
+ /** Human label for a device option: `Name (Location)` when a location is set. */
32994
+ function deviceOptionLabel(device) {
32995
+ return typeof device.location === "string" && device.location.length > 0 ? `${device.name} (${device.location})` : device.name;
32996
+ }
32997
+ /**
32998
+ * Filter a device list and project it into sorted `{ value, label }` options
32999
+ * (value = the device id as a string). Sorted case-insensitively by label so
33000
+ * the picker order is stable.
33001
+ */
33002
+ function devicesToOptions(devices, filter) {
33003
+ return devices.filter((d) => deviceMatchesFilter(d, filter)).map((d) => ({
33004
+ value: String(d.id),
33005
+ label: deviceOptionLabel(d)
33006
+ })).toSorted((a, b) => a.label.localeCompare(b.label));
33007
+ }
33008
+ /**
33009
+ * Free-text option filter — case-insensitive AND over whitespace tokens, each
33010
+ * matched against the option's `value` + `label` (so a device is found by name,
33011
+ * id, or location). An empty query returns every option in order.
33012
+ */
33013
+ function filterDeviceOptions(options, query) {
33014
+ const tokens = query.trim().toLowerCase().split(/\s+/).filter(Boolean);
33015
+ if (tokens.length === 0) return [...options];
33016
+ return options.filter((opt) => {
33017
+ const hay = `${opt.value} ${opt.label}`.toLowerCase();
33018
+ return tokens.every((t) => hay.includes(t));
33019
+ });
33020
+ }
33021
+ /**
33022
+ * Resolve the currently-selected values into options IN SELECTION ORDER (so
33023
+ * chips stay stable while searching). A selected value with no matching option
33024
+ * becomes a synthetic `{ value, label: value }` — a stale id still shows as a
33025
+ * removable chip rather than silently vanishing.
33026
+ */
33027
+ function selectedDeviceOptions(options, selected) {
33028
+ const byValue = new Map(options.map((o) => [o.value, o]));
33029
+ return selected.map((v) => byValue.get(v) ?? {
33030
+ value: v,
33031
+ label: v
33032
+ });
33033
+ }
33034
+ //#endregion
33035
+ //#region src/composites/device-select-field.tsx
33036
+ /**
33037
+ * `device-select` / `device-multiselect` renderers.
33038
+ *
33039
+ * Both fetch EVERY system device via `deviceManager.listAll` and narrow the
33040
+ * options CLIENT-SIDE with the field's declarative `deviceFilter` (see
33041
+ * `device-select-filter.ts`). No server-computed option list is involved —
33042
+ * the form field carries only the filter. Value(s) are device ids as strings.
33043
+ *
33044
+ * The multi variant mirrors the "Linked devices" searchable combobox UX
33045
+ * (removable chips + typeahead dropdown); the single variant is a native
33046
+ * select. Both are inline in ui-library (like `node-select`) so any host that
33047
+ * renders the shared form field gets them without extra registration.
33048
+ */
33049
+ var INPUT_CLASS$1 = "w-full rounded-md border border-border bg-background px-2.5 py-1.5 text-xs text-foreground focus:border-primary focus:ring-1 focus:ring-primary/30 outline-none disabled:opacity-50 disabled:cursor-not-allowed";
33050
+ var INPUT_SHELL = "flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1.5 focus-within:border-primary focus-within:ring-1 focus-within:ring-primary/30";
33051
+ var LABEL_CLASS$1 = "block text-[11px] font-medium text-foreground mb-1 break-words";
33052
+ var DESC_CLASS$1 = "text-[10px] text-foreground-subtle mt-0.5 break-words";
33053
+ /** The compact projection of the listAll rows the device fields consume. */
33054
+ function toCandidates(rows) {
33055
+ if (!Array.isArray(rows)) return [];
33056
+ const out = [];
33057
+ for (const row of rows) {
33058
+ if (typeof row !== "object" || row === null) continue;
33059
+ const r = row;
33060
+ if (typeof r.id !== "number" || typeof r.type !== "string" || typeof r.name !== "string") continue;
33061
+ out.push({
33062
+ id: r.id,
33063
+ type: r.type,
33064
+ name: r.name,
33065
+ location: typeof r.location === "string" ? r.location : null,
33066
+ features: Array.isArray(r.features) ? r.features.filter((f) => typeof f === "string") : []
33067
+ });
33068
+ }
33069
+ return out;
33070
+ }
33071
+ function FieldShell({ label, description, required, translationFn, children }) {
33072
+ const resolvedLabel = resolveLabel(label, translationFn);
33073
+ const resolvedDescription = resolveLabel(description, translationFn);
33074
+ return /* @__PURE__ */ jsxs("div", {
33075
+ className: "min-w-0",
33076
+ children: [
33077
+ resolvedLabel !== void 0 && resolvedLabel !== "" && /* @__PURE__ */ jsxs("label", {
33078
+ className: LABEL_CLASS$1,
33079
+ children: [resolvedLabel, required && /* @__PURE__ */ jsx("span", {
33080
+ className: "text-danger ml-0.5",
33081
+ children: "*"
33082
+ })]
33083
+ }),
33084
+ children,
33085
+ resolvedDescription && /* @__PURE__ */ jsx("p", {
33086
+ className: DESC_CLASS$1,
33087
+ children: resolvedDescription
33088
+ })
33089
+ ]
33090
+ });
33091
+ }
33092
+ function DeviceSelectField({ field, value, onChange, disabled, translationFn }) {
33093
+ const { data } = useDeviceManagerListAll({});
33094
+ const options = useMemo(() => devicesToOptions(toCandidates(data), field.deviceFilter), [data, field.deviceFilter]);
33095
+ const current = value === void 0 || value === null ? "" : String(value);
33096
+ return /* @__PURE__ */ jsx(FieldShell, {
33097
+ label: field.label,
33098
+ description: field.description,
33099
+ required: field.required,
33100
+ translationFn,
33101
+ children: /* @__PURE__ */ jsxs("select", {
33102
+ className: INPUT_CLASS$1,
33103
+ value: current,
33104
+ disabled: disabled || field.disabled,
33105
+ onChange: (e) => onChange(e.target.value),
33106
+ children: [!field.required && /* @__PURE__ */ jsx("option", {
33107
+ value: "",
33108
+ children: "— Select device —"
33109
+ }), options.map((opt) => /* @__PURE__ */ jsx("option", {
33110
+ value: opt.value,
33111
+ children: opt.label
33112
+ }, opt.value))]
33113
+ })
33114
+ });
33115
+ }
33116
+ function DeviceMultiSelectField({ field, value, onChange, disabled, translationFn }) {
33117
+ const { data } = useDeviceManagerListAll({});
33118
+ const options = useMemo(() => devicesToOptions(toCandidates(data), field.deviceFilter), [data, field.deviceFilter]);
33119
+ const selected = Array.isArray(value) ? value.map(String) : [];
33120
+ const isDisabled = disabled === true || field.disabled === true;
33121
+ const atMax = field.maxItems !== void 0 && selected.length >= field.maxItems;
33122
+ const [query, setQuery] = useState("");
33123
+ const [open, setOpen] = useState(false);
33124
+ const [highlight, setHighlight] = useState(0);
33125
+ const inputRef = useRef(null);
33126
+ const blurTimer = useRef(null);
33127
+ const selectedOptions = useMemo(() => selectedDeviceOptions(options, selected), [options, selected]);
33128
+ const filtered = useMemo(() => filterDeviceOptions(options, query), [options, query]);
33129
+ const toggle = (optValue) => {
33130
+ if (isDisabled) return;
33131
+ if (selected.includes(optValue)) onChange(selected.filter((v) => v !== optValue));
33132
+ else {
33133
+ if (field.maxItems !== void 0 && selected.length >= field.maxItems) return;
33134
+ onChange([...selected, optValue]);
33135
+ }
33136
+ };
33137
+ const handleKeyDown = (e) => {
33138
+ if (e.key === "ArrowDown") {
33139
+ e.preventDefault();
33140
+ setOpen(true);
33141
+ setHighlight((h) => filtered.length === 0 ? 0 : (h + 1) % filtered.length);
33142
+ } else if (e.key === "ArrowUp") {
33143
+ e.preventDefault();
33144
+ setOpen(true);
33145
+ setHighlight((h) => filtered.length === 0 ? 0 : (h - 1 + filtered.length) % filtered.length);
33146
+ } else if (e.key === "Enter") {
33147
+ e.preventDefault();
33148
+ const opt = filtered[highlight];
33149
+ if (opt) toggle(opt.value);
33150
+ } else if (e.key === "Escape") setOpen(false);
33151
+ else if (e.key === "Backspace" && query === "" && selected.length > 0) onChange(selected.slice(0, -1));
33152
+ };
33153
+ const label = resolveLabel(field.label, translationFn);
33154
+ const description = resolveLabel(field.description, translationFn);
33155
+ return /* @__PURE__ */ jsxs("div", {
33156
+ className: "min-w-0",
33157
+ children: [
33158
+ label !== void 0 && label !== "" && /* @__PURE__ */ jsx("label", {
33159
+ className: LABEL_CLASS$1,
33160
+ children: label
33161
+ }),
33162
+ selectedOptions.length > 0 && /* @__PURE__ */ jsx("div", {
33163
+ className: "flex flex-wrap gap-1 mb-1.5",
33164
+ children: selectedOptions.map((opt) => /* @__PURE__ */ jsxs("span", {
33165
+ className: "inline-flex items-center gap-1 rounded-md bg-primary/10 px-1.5 py-0.5 text-[11px] text-primary max-w-full",
33166
+ children: [/* @__PURE__ */ jsx("span", {
33167
+ className: "truncate",
33168
+ children: opt.label
33169
+ }), !isDisabled && /* @__PURE__ */ jsx("button", {
33170
+ type: "button",
33171
+ className: "shrink-0 hover:text-danger",
33172
+ "aria-label": `Remove ${opt.label}`,
33173
+ onClick: () => toggle(opt.value),
33174
+ children: /* @__PURE__ */ jsx(X, { className: "h-2.5 w-2.5" })
33175
+ })]
33176
+ }, opt.value))
33177
+ }),
33178
+ /* @__PURE__ */ jsxs("div", {
33179
+ className: INPUT_SHELL + (isDisabled ? " opacity-50" : ""),
33180
+ children: [
33181
+ /* @__PURE__ */ jsx(Search, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" }),
33182
+ /* @__PURE__ */ jsx("input", {
33183
+ ref: inputRef,
33184
+ type: "text",
33185
+ role: "combobox",
33186
+ "aria-expanded": open,
33187
+ "aria-controls": `dsel-${field.key}`,
33188
+ className: "min-w-0 flex-1 bg-transparent text-xs text-foreground outline-none placeholder:text-foreground-disabled",
33189
+ value: query,
33190
+ placeholder: atMax ? `Max ${field.maxItems} selected` : field.placeholder ?? "Search devices…",
33191
+ disabled: isDisabled,
33192
+ onChange: (e) => {
33193
+ setQuery(e.target.value);
33194
+ setOpen(true);
33195
+ setHighlight(0);
33196
+ },
33197
+ onFocus: () => setOpen(true),
33198
+ onBlur: () => {
33199
+ blurTimer.current = setTimeout(() => setOpen(false), 120);
33200
+ },
33201
+ onKeyDown: handleKeyDown
33202
+ }),
33203
+ /* @__PURE__ */ jsx(ChevronDown, {
33204
+ className: "h-3.5 w-3.5 shrink-0 cursor-pointer text-foreground-subtle",
33205
+ onMouseDown: (e) => {
33206
+ e.preventDefault();
33207
+ if (blurTimer.current) clearTimeout(blurTimer.current);
33208
+ setOpen((o) => !o);
33209
+ inputRef.current?.focus();
33210
+ }
33211
+ })
33212
+ ]
33213
+ }),
33214
+ open && !isDisabled && /* @__PURE__ */ jsx("div", {
33215
+ id: `dsel-${field.key}`,
33216
+ role: "listbox",
33217
+ className: "mt-1 max-h-56 overflow-y-auto rounded-md border border-border bg-surface shadow-lg",
33218
+ onMouseDown: (e) => {
33219
+ e.preventDefault();
33220
+ },
33221
+ children: filtered.length === 0 ? /* @__PURE__ */ jsx("div", {
33222
+ className: "px-2.5 py-2 text-[11px] text-foreground-subtle italic",
33223
+ children: options.length === 0 ? "No matching devices" : `No matches for “${query}”`
33224
+ }) : filtered.map((opt, i) => {
33225
+ const checked = selected.includes(opt.value);
33226
+ const blockedByMax = !checked && atMax;
33227
+ return /* @__PURE__ */ jsxs("button", {
33228
+ type: "button",
33229
+ role: "option",
33230
+ "aria-selected": checked,
33231
+ disabled: blockedByMax,
33232
+ className: [
33233
+ "flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-xs transition-colors",
33234
+ i === highlight ? "bg-primary/10" : "hover:bg-surface-hover",
33235
+ blockedByMax ? "opacity-40 cursor-not-allowed" : "cursor-pointer"
33236
+ ].join(" "),
33237
+ onMouseEnter: () => setHighlight(i),
33238
+ onClick: () => toggle(opt.value),
33239
+ children: [/* @__PURE__ */ jsx("span", {
33240
+ className: ["flex h-3.5 w-3.5 shrink-0 items-center justify-center rounded border", checked ? "border-primary bg-primary text-white" : "border-border"].join(" "),
33241
+ children: checked && /* @__PURE__ */ jsx(Check, { className: "h-2.5 w-2.5" })
33242
+ }), /* @__PURE__ */ jsx("span", {
33243
+ className: "truncate text-foreground",
33244
+ children: opt.label
33245
+ })]
33246
+ }, opt.value);
33247
+ })
33248
+ }),
33249
+ description && /* @__PURE__ */ jsx("p", {
33250
+ className: DESC_CLASS$1,
33251
+ children: description
33252
+ })
33253
+ ]
33254
+ });
33255
+ }
33256
+ //#endregion
32491
33257
  //#region src/contexts/custom-field-renderers.tsx
32492
33258
  /**
32493
33259
  * Custom field renderer registry.
@@ -38470,6 +39236,20 @@ function FormField({ field, values, onChange, disabled, translationFn, onTestFie
38470
39236
  disabled,
38471
39237
  translationFn
38472
39238
  });
39239
+ case "device-select": return /* @__PURE__ */ jsx(DeviceSelectField, {
39240
+ field,
39241
+ value,
39242
+ onChange: handleChange,
39243
+ disabled,
39244
+ translationFn
39245
+ });
39246
+ case "device-multiselect": return /* @__PURE__ */ jsx(DeviceMultiSelectField, {
39247
+ field,
39248
+ value,
39249
+ onChange: handleChange,
39250
+ disabled,
39251
+ translationFn
39252
+ });
38473
39253
  case "probe": return /* @__PURE__ */ jsx(ProbeField, {
38474
39254
  field,
38475
39255
  value,
@@ -45634,4 +46414,4 @@ var MotionZonesSettings = lazy(() => import("./MotionZonesSettings-NcxxQN8r.js")
45634
46414
  /** Lazy-wrapped `PrivacyMaskSettings` — code-split off the main bundle. */
45635
46415
  var PrivacyMaskSettings = lazy(() => import("./PrivacyMaskSettings-APgPLF7p.js").then((m) => ({ default: m.PrivacyMaskSettings })));
45636
46416
  //#endregion
45637
- export { AddonGlobalSettingsForm, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, AppShell, ArcKnob, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutotrackSection, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, Badge, BatteryBadge, BottomSheet, Breadcrumb, BrightnessPanel, Button, ButtonControl, ButtonHeroCard, 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, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, CustomFieldRenderersProvider, DEFAULT_COLOR, DEVICE_COLUMNS, DEVICE_LIST_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_OPTIONS, DEVICE_ROLE_META, DEVICE_TYPE_CONTROL, DEVICE_TYPE_META, DISPLAY_ICON_REGISTRY, DataTable, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceGrid, DeviceItem, DeviceList, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, DoorbellRecentPanel, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, DummyHeroCard, DummyInline, EmptyState, ErrorBox, EventStream, FILL, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, FormField$1 as FormField, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GripTrack, GroupedModelSelector, HOST_WIDGETS, HlsVideo, HoverZoomImage, HumidifierHeroCard, HumidifierInlineControl, INPUT_COMPACT, IconAction, IconButton, ImageHeroCard, ImageInlineControl, ImageSelector, InferenceConfigSelector, Input, KebabMenu, KeyValueList, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LightHeroCard, LightInlineControl, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, MODE_COLOR, MaskShapeCanvas, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, MobileDrawer, MotionZonesSettings, NodeMultiSelectField, NodePicker, NodeSelectField, OfflineBadge, PHASE_CONFIG, PRIORITY, PTZOverlay, PageHeader, PhaseIcon, PipelineBuilder, PipelineRuntimeSelector, PipelineStep, PipelineTreeMatrix, PlayerOverlaysProvider, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, PtzPanel, QrCode, RECORDED_PLAYBACK_MODES, RIGHT, ROLE_DESCRIPTOR, RadialGauge, RecordedPlaybackProvider, RecordingPanel, ResponseLog, SECTION_BODY, SECTION_CARD, SECTION_HEADER, SPLIT_PANEL_OUTER, SPLIT_PANEL_SIDE, STACK_GAP, STATE_COLOR, ScopePicker, ScrollArea, Select, SemanticBadge, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, Sidebar, SidebarItem, Skeleton, SlideOverPanel, SlideToggle, SnapshotButton, StatCard, StateValuesStream, StatusBadge, StepTimings, StepTreeMaster, Stepper, StreamBrokerSelector, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, 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, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, VodPlaybackProvider, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, ZoneEditingProvider, allDeviceTypeFilterOptions, buildStepTreeFromSchema, childEntityId, childListName, cn, columnsForContext, containerChildToRef, countableDevices, coverHighlight, createSharedContext, createTheme, cursorFractionFor, darkColors, defaultTheme, deriveDeviceKind, deviceRoleMeta, deviceRoleMetaOf, deviceTypeMeta, deviceTypeMetaOf, ensureMfHostInit, findTimezone, formatControlDateTime, formatLastSeen, formatNumeric, fuzzyMatch, getClassColor, getPhaseVisual, groupChildrenByLayout, hardwareLabel, humidifierTint, createLucideIcon as i, initialScrubState, isAbsentProvider, isFieldVisible, lawnMowerActivityMeta, lightColors, loadRemoteBundle, makeScrubBridge, metadataEntries, metadataString, mirror, mountAddonPage, Square as n, nextSort, normalizeForSearch, overrideEntityIdFromLink, parseRecordedServerMessage, providerIcons, EyeOff as r, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDisplayIcon, resolvePrimaryChild, resolveSensorDisplay, scrubReducer, serializeRecordedCommand, shouldCommit, shouldEmit, sortRows, statusIcons, stripParentNamePrefix, Trash2 as t, tankAlert, themeToCss, trpc, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, useAddonWidgetsListWidgets, useAddonsApplyAutoUpdateToAll, useAddonsCancelJob, useAddonsCustom, useAddonsForceRefresh, useAddonsGetAddonAutoUpdate, useAddonsGetAutoUpdateSettings, useAddonsGetJob, useAddonsGetLastRestart, useAddonsGetLogs, useAddonsGetVersions, useAddonsInstallFromWorkspace, useAddonsInstallPackage, useAddonsIsWorkspaceAvailable, useAddonsList, useAddonsListCapabilityProviders, useAddonsListFrameworkPackages, useAddonsListJobs, useAddonsListPackages, useAddonsListUpdates, useAddonsListWorkspacePackages, useAddonsOnAddonLogs, useAddonsReloadPackages, useAddonsRestartAddon, useAddonsRestartServer, useAddonsRetryLoad, useAddonsRollbackPackage, useAddonsSearchAvailable, useAddonsSetAddonAutoUpdate, useAddonsSetAutoUpdateSettings, useAddonsSetCapabilityProviderEnabled, useAddonsStartJob, useAddonsUninstallPackage, useAddonsUpdateFrameworkPackage, useAddonsUpdatePackage, useAirQualitySensorGetStatus, useAlarmPanelArm, useAlarmPanelDisarm, useAlarmPanelGetStatus, useAlarmPanelTrigger, useAlertsDismiss, useAlertsEmit, useAlertsGetUnreadCount, useAlertsList, useAlertsMarkAllRead, useAlertsMarkRead, useAlertsUpdate, useAllWidgets, useAmbientLightSensorGetStatus, useAudioAnalysisApplyDeviceSettingsPatch, useAudioAnalysisGetDeviceLiveContribution, useAudioAnalysisGetDeviceSettingsContribution, useAudioAnalysisResolveDeviceSettings, useAudioAnalyzerAnalyseChunk, useAudioAnalyzerClassify, useAudioAnalyzerDispose, useAudioAnalyzerIsReady, useAudioAnalyzerReprobeAudioEngine, useAudioCodecCanHandle, useAudioCodecCloseSession, useAudioCodecCreateDecodeSession, useAudioCodecCreateEncodeSession, useAudioCodecFlushEncode, useAudioCodecListActiveSessions, useAudioCodecListSupportedCodecs, useAudioCodecPullEncoded, useAudioCodecPullPcm, useAudioCodecPushEncodedFrame, useAudioCodecPushPcm, useAudioMetricsGetCurrentSnapshot, useAudioMetricsGetHistory, useAutomationControlDisable, useAutomationControlEnable, useAutomationControlGetStatus, useAutomationControlTrigger, useBackupDelete, useBackupGetEntries, useBackupList, useBackupListArchives, useBackupListDestinations, useBackupListLocations, useBackupPreviewSchedule, useBackupRestore, useBackupTrigger, useBackupUpsertDestinationPolicy, useBatteryGetStatus, useBatteryWakeForStream, useBinaryGetStatus, useBrightnessGetStatus, useBrightnessSetBrightness, useBrokerAdd, useBrokerGet, useBrokerGetBrokerConfig, useBrokerGetSettings, useBrokerGetSettingsSchema, useBrokerGetState, useBrokerGetStatus, useBrokerList, useBrokerListProviders, useBrokerPublish, useBrokerRemove, useBrokerSetSettings, useBrokerSubscribe, useBrokerTestConnection, useBrokerTestSettings, useBrokerUnsubscribe, useButtonPress, useCameraCredentialsGetCredentials, useCameraCredentialsGetStatus, useCameraPipelineConfigApplyDeviceSettingsPatch, useCameraPipelineConfigGetDeviceLiveContribution, useCameraPipelineConfigGetDeviceSettingsContribution, useCameraStreamsGetBrokerStreams, useCameraStreamsGetCameraStreams, useCameraStreamsGetProfileRtspEntries, useCameraStreamsGetRtspEntries, useCameraStreamsPickStream, useCarbonMonoxideGetStatus, useClimateControlGetStatus, useClimateControlSetFanMode, useClimateControlSetMode, useClimateControlSetPreset, useClimateControlSetSwingHorizontal, useClimateControlSetSwingVertical, useClimateControlSetTarget, useClimateControlSetTargetHumidity, useClimateControlSetTargetRange, useClusterNodes, useColorGetStatus, useColorSetColor, useConfirm, useConnectivityGetStatus, useConsumablesGetStatus, useConsumablesReset, useContactGetStatus, useContainerChildren, useControlGetStatus, useControlSetValue, useCoverClose, useCoverGetStatus, useCoverOpen, useCoverSetPosition, useCoverSetTiltPosition, useCoverStop, useCustomFieldRenderer, useDayNightGetOptions, useDayNightGetStatus, useDayNightSetSettings, useDebouncedString, useDecoderCreateSession, useDecoderDestroySession, useDecoderGetFrame, useDecoderGetInfo, useDecoderGetShmStats, useDecoderGetStats, useDecoderListActiveSessions, useDecoderOpenStream, useDecoderPullFrames, useDecoderPullHandles, useDecoderPushPacket, useDecoderReprobeHwaccel, useDecoderSupportsCodec, useDecoderUpdateConfig, useDetectionPipelineApplyDeviceSettingsPatch, useDetectionPipelineGetDeviceLiveContribution, useDetectionPipelineGetDeviceSettingsContribution, useDevShell, useDevice, 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, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyDeviceSettingsPatch, useDeviceManagerApplyInitialMeta, useDeviceManagerCreateDevice, useDeviceManagerDisable, useDeviceManagerDiscoverAllProviders, useDeviceManagerDiscoverDevices, useDeviceManagerDiscoverProvider, useDeviceManagerDiscoveryProviders, useDeviceManagerEnable, useDeviceManagerGetAllBindings, useDeviceManagerGetBindings, useDeviceManagerGetChildren, useDeviceManagerGetConfigSchema, useDeviceManagerGetCreationSchema, useDeviceManagerGetDevice, useDeviceManagerGetDeviceAggregate, useDeviceManagerGetDeviceLiveContribution, useDeviceManagerGetDeviceLiveInfoAggregate, useDeviceManagerGetDeviceSettingsAggregate, useDeviceManagerGetDeviceSettingsContribution, useDeviceManagerGetDeviceStatusAggregate, useDeviceManagerGetLinkedDevices, useDeviceManagerGetRoleDisplayDefaults, useDeviceManagerGetSettingsSchema, useDeviceManagerGetStreamProfileMap, useDeviceManagerGetStreamSources, useDeviceManagerGetWireableFields, useDeviceManagerListAll, useDeviceManagerListBindableCapsForDeviceType, useDeviceManagerListLocations, useDeviceManagerListPersistedByAddon, useDeviceManagerListWrappersForCap, useDeviceManagerLoadConfig, useDeviceManagerLoadMeta, useDeviceManagerLoadRuntimeState, useDeviceManagerPersistConfig, useDeviceManagerProbeStreams, useDeviceManagerProviderCreationType, useDeviceManagerProviderDiscoveryParamsSchema, useDeviceManagerRegisterDevice, useDeviceManagerRemove, useDeviceManagerRemoveByIntegration, useDeviceManagerRemoveDevice, useDeviceManagerRemoveLocation, useDeviceManagerRunDeviceAction, useDeviceManagerSetChildLayout, useDeviceManagerSetDeviceLinks, useDeviceManagerSetDisabled, useDeviceManagerSetDisplay, useDeviceManagerSetIntegrationId, useDeviceManagerSetLinkDeviceId, useDeviceManagerSetLocation, useDeviceManagerSetMetadata, useDeviceManagerSetName, useDeviceManagerSetPrimaryChildEntityId, useDeviceManagerSetRole, useDeviceManagerSetRoleDisplayDefaults, useDeviceManagerSetStreamProfileMap, useDeviceManagerSetType, useDeviceManagerSetWrapperActive, useDeviceManagerTestCreationField, useDeviceManagerTestField, useDeviceManagerUpdateConfig, useDeviceManagerUpdateDeviceField, useDeviceManagerUpdateDeviceFieldsBatch, useDeviceOpsGetConfigEntries, useDeviceOpsGetRawState, useDeviceOpsGetSettingsSchema, useDeviceOpsGetStreamSources, useDeviceOpsRemoveDevice, useDeviceOpsRunAction, useDeviceOpsSetConfig, useDeviceProviderAdoptDiscoveredDevice, useDeviceProviderCreateDevice, useDeviceProviderDiscoverDevices, useDeviceProviderGetChildCreationSchema, useDeviceProviderGetDevices, useDeviceProviderGetDiscoveryParamsSchema, useDeviceProviderGetManualCreationType, useDeviceProviderGetStatus, useDeviceProviderStart, useDeviceProviderStop, useDeviceProviderSupportsDiscovery, useDeviceProviderSupportsManualCreation, useDeviceProviderTestCreationField, useDeviceProxy, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetSnapshot, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, useDoorbellApplyDeviceSettingsPatch, useDoorbellEvents, useDoorbellGetDeviceLiveContribution, useDoorbellGetDeviceSettingsContribution, useDoorbellGetStatus, useEnumSensorGetStatus, useEventEmitterGetStatus, useEventInvalidation, useEventStreamLatest, useEventStreamMap, useEventsGetEventClipUrl, useEventsGetEventThumbnail, useEventsGetEvents, useFaceGalleryAssignFace, useFaceGalleryAssignFaces, 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, useLawnMowerControlDock, useLawnMowerControlGetStatus, useLawnMowerControlPause, useLawnMowerControlStartMowing, useLiveBuffer, useLiveEvent, useLlmDeleteModel, useLlmDeleteProfile, useLlmGenerate, useLlmGenerateVision, useLlmGetDefaults, useLlmGetRuntimeStatus, useLlmGetUsage, useLlmInstallModel, useLlmListModelCatalog, useLlmListModels, useLlmListNodeModels, useLlmListProfileKinds, useLlmListProfiles, useLlmListRuntimeNodes, useLlmSetDefault, useLlmStartRuntime, useLlmStopRuntime, useLlmTestProfile, useLlmUpsertProfile, useLocalNetworkGetAllowedAddresses, useLocalNetworkGetConnectionEndpoints, useLocalNetworkGetPreferred, useLocalNetworkList, useLocalNetworkResetAllowlistToBestMatch, useLocalNetworkSetAllowedAddresses, 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, useMetricsProviderDumpHeapSnapshot, useMetricsProviderGetAddonStats, useMetricsProviderGetCached, useMetricsProviderGetCpuTemperature, useMetricsProviderGetCurrent, useMetricsProviderGetDiskSpace, useMetricsProviderGetGpuInfo, useMetricsProviderGetProcessStats, useMetricsProviderKillProcess, useMetricsProviderListAddonInstances, useMetricsProviderListNodeProcesses, useMotionDetectionAnalyze, useMotionDetectionApplyDeviceSettingsPatch, useMotionDetectionGetDeviceLiveContribution, useMotionDetectionGetDeviceSettingsContribution, useMotionDetectionRemoveCamera, useMotionDetectionReset, useMotionGetStatus, useMotionIsDetected, useMotionTriggerGetStatus, useMotionTriggerSetMotionTrigger, useMotionZonesGetOptions, useMotionZonesGetStatus, useMotionZonesSetZone, useMqttBrokerAddBroker, useMqttBrokerGetBrokerConfig, useMqttBrokerGetStatus, useMqttBrokerListBrokers, useMqttBrokerRemoveBroker, useMqttBrokerStartEmbeddedBroker, useMqttBrokerStopEmbeddedBroker, useMqttBrokerTestConnection, useNativeObjectDetectionGetStatus, useNativeObjectDetectionSetEnabled, useNetworkAccessGetEndpoint, useNetworkAccessGetStatus, useNetworkAccessListEndpoints, useNetworkAccessStart, useNetworkAccessStop, useNetworkQualityGetAllStats, useNetworkQualityGetDeviceStats, useNetworkQualityReportClientStats, useNodesClusterAddonStatus, useNodesDeployAddon, useNodesExecuteQuery, useNodesGetCapUsageGraph, useNodesGetNodeAddons, useNodesRenameNode, useNodesRestartAddon, useNodesRestartNode, useNodesRestartProcess, useNodesSetProcessLogLevel, useNodesShutdownNode, useNodesTopology, useNodesUndeployAddon, useNotificationOutputDeleteTarget, useNotificationOutputDiscoverTargets, useNotificationOutputListTargetKinds, useNotificationOutputListTargets, useNotificationOutputSend, useNotificationOutputSetTargetEnabled, useNotificationOutputTestTarget, useNotificationOutputUpsertTarget, useNotifierCancel, useNotifierGetStatus, useNotifierSend, useNumericSensorGetStatus, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdSetOverlay, usePTZ, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePipelineAnalyticsApplyDeviceSettingsPatch, usePipelineAnalyticsClearTracks, usePipelineAnalyticsDeleteTracks, usePipelineAnalyticsGetActiveTracks, usePipelineAnalyticsGetAudioEvents, usePipelineAnalyticsGetDeviceLiveContribution, usePipelineAnalyticsGetDeviceSettingsContribution, usePipelineAnalyticsGetEventDensity, usePipelineAnalyticsGetEventMedia, usePipelineAnalyticsGetKeyEvents, usePipelineAnalyticsGetMotionEvents, usePipelineAnalyticsGetObjectEvents, usePipelineAnalyticsGetSensorEvents, usePipelineAnalyticsGetTrack, usePipelineAnalyticsGetTrackMedia, usePipelineAnalyticsListEventKinds, usePipelineAnalyticsListRecentTracks, usePipelineAnalyticsListTracks, usePipelineAnalyticsPruneEventsBefore, usePipelineAnalyticsPruneTracksBefore, usePipelineAnalyticsSearchObjectEvents, usePipelineAnalyticsWipeAllAnalytics, usePipelineExecutorCacheFrameInPool, usePipelineExecutorClearDeviceOverrides, usePipelineExecutorDeleteModel, usePipelineExecutorDeleteTemplate, usePipelineExecutorDownloadModel, usePipelineExecutorGetAddonModels, usePipelineExecutorGetAudioCapabilities, usePipelineExecutorGetAvailableEngines, usePipelineExecutorGetCapabilities, usePipelineExecutorGetDefaultSteps, usePipelineExecutorGetDetectionConfigSchema, usePipelineExecutorGetEffectiveTuning, usePipelineExecutorGetEngineProvisioning, usePipelineExecutorGetGlobalPipelineConfig, usePipelineExecutorGetGlobalSteps, usePipelineExecutorGetOrchestratorConfigSchema, usePipelineExecutorGetReferenceAudio, usePipelineExecutorGetReferenceAudioFiles, usePipelineExecutorGetReferenceImage, usePipelineExecutorGetSchema, usePipelineExecutorGetSelectedEngine, usePipelineExecutorGetVideoPipelineSteps, usePipelineExecutorInferCached, usePipelineExecutorKillEngine, usePipelineExecutorListLoadedEngines, usePipelineExecutorListReferenceImages, usePipelineExecutorListTemplates, usePipelineExecutorReprobeEngine, usePipelineExecutorRunAudioTest, usePipelineExecutorRunPipeline, usePipelineExecutorRunPipelineBatch, usePipelineExecutorSaveTemplate, usePipelineExecutorSetVideoPipelineSteps, usePipelineExecutorSpinEngine, usePipelineExecutorUncacheFrame, usePipelineExecutorUpdateTemplate, usePipelineExecutorValidatePipeline, usePipelineOrchestratorApplyDeviceSettingsPatch, usePipelineOrchestratorAssignAudio, usePipelineOrchestratorAssignPipeline, usePipelineOrchestratorDeleteTemplate, usePipelineOrchestratorGetAgentLoad, usePipelineOrchestratorGetAgentSettings, usePipelineOrchestratorGetAudioAssignment, usePipelineOrchestratorGetAudioAssignments, usePipelineOrchestratorGetAudioNodeLoad, usePipelineOrchestratorGetCameraMetrics, usePipelineOrchestratorGetCameraSettings, usePipelineOrchestratorGetCameraStatus, usePipelineOrchestratorGetCameraStatuses, usePipelineOrchestratorGetCameraStepOverrides, usePipelineOrchestratorGetCapabilityBindings, usePipelineOrchestratorGetDeviceLiveContribution, usePipelineOrchestratorGetDeviceSettingsContribution, usePipelineOrchestratorGetGlobalMetrics, usePipelineOrchestratorGetIngestOwner, usePipelineOrchestratorGetPipelineAssignment, usePipelineOrchestratorGetPipelineAssignments, usePipelineOrchestratorListAgentSettings, usePipelineOrchestratorListTemplates, usePipelineOrchestratorRebalance, usePipelineOrchestratorRemoveAgentSettings, usePipelineOrchestratorResetNodePipelineDefaults, usePipelineOrchestratorResolvePipeline, usePipelineOrchestratorSaveTemplate, usePipelineOrchestratorSetAgentAddonDefaults, usePipelineOrchestratorSetAgentCapabilities, usePipelineOrchestratorSetAgentDetectWeight, usePipelineOrchestratorSetAgentMaxCameras, usePipelineOrchestratorSetAgentReachableHost, usePipelineOrchestratorSetCameraPipelineForAgent, usePipelineOrchestratorSetCameraStepOverride, usePipelineOrchestratorSetCameraStepToggle, usePipelineOrchestratorSetCapabilityBinding, usePipelineOrchestratorUnassignAudio, usePipelineOrchestratorUnassignPipeline, usePipelineOrchestratorUpdateTemplate, usePipelineRunnerAttachCamera, usePipelineRunnerDetachCamera, usePipelineRunnerGetAllCameraMetrics, usePipelineRunnerGetCameraMetrics, usePipelineRunnerGetLocalCameras, usePipelineRunnerGetLocalLoad, usePipelineRunnerGetLocalMetrics, usePipelineRunnerGetNativeCrop, usePipelineRunnerReportMotion, usePipelineRunnerRunDetailSubtree, 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, usePrivacyMaskSetMask, usePtzAutotrackGetSettings, usePtzAutotrackGetStatus, usePtzAutotrackSetEnabled, usePtzAutotrackSetSettings, usePtzContinuousMove, usePtzDeletePreset, usePtzGetOptions, usePtzGetPosition, usePtzGetPresets, usePtzGetStatus, usePtzGoHome, usePtzGoToPreset, usePtzMove, usePtzSavePreset, usePtzSetAutofocus, usePtzStop, useRebootReboot, useRecordedPlayback, useRecordingApplyDeviceSettingsPatch, useRecordingExportCancelExport, useRecordingExportCreateExport, useRecordingExportDeleteExport, useRecordingExportGetDownloadUrl, useRecordingExportGetExport, useRecordingExportListExports, useRecordingGetAvailability, useRecordingGetDaysWithRecordings, useRecordingGetDeviceConfig, useRecordingGetDeviceLiveContribution, useRecordingGetDeviceSettingsContribution, useRecordingGetPlaybackManifest, useRecordingGetStatus, useRecordingGetStorageUsage, useRecordingLocateSegment, useRecordingPruneFootage, useRecordingReadSegmentBytes, useRecordingRescanStorage, useRecordingSetDeviceConfig, useRemoteComponent, useSceneMonitorCaptureReference, useSceneMonitorCreateScene, useSceneMonitorDeleteReference, useSceneMonitorDeleteScene, useSceneMonitorGetStatus, useSceneMonitorListScenes, useSceneMonitorRecheckNow, useSceneMonitorUpdateScene, useScriptRunnerGetStatus, useScriptRunnerRun, useScriptRunnerStop, useScrubController, useServerManagementApplyServerUpdate, useServerManagementCheckServerUpdate, useServerManagementGetServerPackageStatus, useServerManagementRestartServer, useServerManagementRollbackServerUpdate, useSettingsStoreCount, useSettingsStoreDeclareCollection, useSettingsStoreDelete, useSettingsStoreGet, useSettingsStoreHistogram, useSettingsStoreInsert, useSettingsStoreIsEmpty, useSettingsStoreQuery, useSettingsStoreSet, useSettingsStoreUpdate, useSmokeGetStatus, useSnapshotApplyDeviceSettingsPatch, useSnapshotGetDeviceLiveContribution, useSnapshotGetDeviceSettingsContribution, useSnapshotGetSnapshot, useSnapshotGetSnapshotOverview, useSnapshotGetStatus, useSnapshotInvalidateCache, useStorageAbortUpload, useStorageBeginDownload, useStorageBeginUpload, useStorageDelete, useStorageDeleteLocation, useStorageEndDownload, useStorageExists, useStorageFinalizeUpload, useStorageGetAvailableSpace, useStorageGetDefaultLocation, useStorageList, useStorageListLocationDeclarations, useStorageListLocations, useStorageListProviders, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, useStreamBrokerGetPreBufferInfo, useStreamBrokerGetRtspEntry, useStreamBrokerGetRtspPort, useStreamBrokerGetStreamUrl, useStreamBrokerGetStreamWithCodec, useStreamBrokerIsRtspEnabled, useStreamBrokerKillClient, useStreamBrokerListAllCameraStreams, useStreamBrokerListAllProfileSlots, useStreamBrokerListClients, useStreamBrokerProbeStream, useStreamBrokerPublishCameraStream, useStreamBrokerPullAudioChunks, useStreamBrokerPullFrameHandles, useStreamBrokerRegenerateRtspToken, useStreamBrokerReleaseStreamWithCodec, useStreamBrokerRestartProfile, useStreamBrokerRetractCameraStream, useStreamBrokerSetPreBufferDuration, useStreamBrokerSetRtspEnabled, useStreamBrokerSubscribeAudioChunks, useStreamBrokerSubscribeFrames, useStreamBrokerUnassignProfile, useStreamBrokerUnsubscribeAudioChunks, useStreamBrokerUnsubscribeFrames, useStreamCatalogGetCatalog, useStreamParamsGetConfigSchema, useStreamParamsGetOptions, useStreamParamsGetStatus, useStreamParamsSetProfile, useSwitchGetStatus, useSwitchSetState, useSystem, useSystemFeatureFlags, useSystemForceRetentionCleanup, useSystemGetRetentionConfig, useSystemHealth, useSystemInfo, useSystemMutation, useSystemNetworkAddresses, useSystemQuery, useSystemSetRetentionConfig, useTamperGetStatus, useTemperatureSensorGetStatus, useThemeMode, useToastOnToast, useTurnProviderGetTurnServers, useUpdateGetStatus, useUpdateInstallUpdate, useUserManagementConfirmTotp, useUserManagementCreateApiKey, useUserManagementCreateScopedToken, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementGetTotpStatus, useUserManagementListApiKeys, useUserManagementListOauthSessions, useUserManagementListScopedTokens, useUserManagementListUsers, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeApiKey, useUserManagementRevokeOauthSession, useUserManagementRevokeScopedToken, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUpdateUser, useUserManagementValidateApiKey, useUserManagementValidateCredentials, useUserManagementValidateScopedToken, useUserManagementVerifyTotp, useVacuumControlGetStatus, useVacuumControlLocate, useVacuumControlPause, useVacuumControlReturnToBase, useVacuumControlSetFanSpeed, useVacuumControlStart, useVacuumControlStop, useValveClose, useValveGetStatus, useValveOpen, useValveSetPosition, useValveStop, useVibrationGetStatus, useVideoclipsGetClipPlayback, useVideoclipsListClips, useVodPlayback, useWaterHeaterGetStatus, useWaterHeaterSetAway, useWaterHeaterSetOperationMode, useWaterHeaterSetTargetTemp, useWeatherGetStatus, useWebrtcSessionAddIceCandidate, useWebrtcSessionCloseSession, useWebrtcSessionCreateSession, useWebrtcSessionGetIceCandidates, useWebrtcSessionGetSessionState, useWebrtcSessionHandleAnswer, useWebrtcSessionHandleOffer, useWebrtcSessionHasAdaptiveBitrate, useWebrtcSessionListStreams, useWidget, useWidgetMetadata, useWidgetRegistry, useZoneAnalyticsGetCameraHistory, useZoneAnalyticsGetCurrentSnapshot, useZoneAnalyticsGetUnzonedHistory, useZoneAnalyticsGetZoneHistory, useZoneEditing, useZoneRulesListRules, useZoneRulesSetRules, useZonesAddZone, useZonesListZones, useZonesRemoveZone, useZonesUpdateZone, vacuumStateMeta, validateScopes, valveStateMeta, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint };
46417
+ export { AddonGlobalSettingsForm, AgentStepEditor, AlarmHeroCard, AlarmInlineControl as AlarmPanelInlineControl, AppShell, ArcKnob, AudioClassificationList, AudioLevelWaveform, AudioWaveform, AutotrackSection, BTN_COMPACT, BTN_COMPACT_DANGER, BTN_COMPACT_PRIMARY, BTN_COMPACT_WARNING, Badge, BatteryBadge, BottomSheet, Breadcrumb, BrightnessPanel, Button, ButtonControl, ButtonHeroCard, 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, ConfigSchemaField, ConfirmActionButton, ConfirmDialogProvider, ConsumablesPanel, ContainerChildrenProvider, ContainerPrimaryHero, ControlColumn, ControlHeroCard, ControlInlineControl, ControlPanel, CopyButton, CoverHeroCard, CoverInlineControl, CoverPanel, CustomFieldRenderersProvider, DEFAULT_COLOR, DEVICE_COLUMNS, DEVICE_LIST_PAGE_SIZE_KEY, DEVICE_LIST_PAGE_SIZE_OPTIONS, DEVICE_ROLE_META, DEVICE_TYPE_CONTROL, DEVICE_TYPE_META, DISPLAY_ICON_REGISTRY, DataTable, DetectionCanvas, DetectionOverlay, DetectionResultTree, DevShell, DeviceActivityPanel, DeviceBatchToolbar, DeviceCard, DeviceContextProvider, DeviceExportPanel, DeviceGrid, DeviceItem, DeviceList, DeviceMultiSelectField, DeviceSelectField, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiscoveryPanel, DoorbellRecentPanel, Dropdown, DropdownContent, DropdownItem, DropdownTrigger, DummyHeroCard, DummyInline, EVENT_KIND_ICONS, EmptyState, ErrorBox, EventKindGlyph, EventStream, FILL, FanHeroCard, FanInlineControl, FanPanel, FilterBar, FloatingEventStream, FloatingLogStream, FloatingPanel, FormField$1 as FormField, GRID_GAP, GRID_PAIRED, GRID_QUICK_STATS, GripTrack, GroupedModelSelector, HOST_WIDGETS, HlsVideo, HoverZoomImage, HumidifierHeroCard, HumidifierInlineControl, INPUT_COMPACT, IconAction, IconButton, ImageHeroCard, ImageInlineControl, ImageSelector, InferenceConfigSelector, Input, KebabMenu, KeyValueList, LIST_ROW, Label, LawnMowerHeroCard, LawnMowerInlineControl, LightHeroCard, LightInlineControl, LockHeroCard, LockInlineControl, LockPanel, LogStream, LoginForm, MODE_COLOR, MaskShapeCanvas, MediaPlayerHeroCard, MediaPlayerInlineControl, MediaPlayerPanel, MobileDrawer, MotionZonesSettings, NodeMultiSelectField, NodePicker, NodeSelectField, OfflineBadge, PHASE_CONFIG, PRIORITY, PTZOverlay, PageHeader, PhaseIcon, PipelineBuilder, PipelineRuntimeSelector, PipelineStep, PipelineTreeMatrix, PlayerOverlaysProvider, Popover, PopoverContent, PopoverRowAction, PopoverTrigger, PrimaryChildPicker, PrivacyMaskSettings, ProviderBadge, PtzPanel, QrCode, RECORDED_PLAYBACK_MODES, RIGHT, ROLE_DESCRIPTOR, RadialGauge, RecordedPlaybackProvider, RecordingPanel, ResponseLog, SECTION_BODY, SECTION_CARD, SECTION_HEADER, SPLIT_PANEL_OUTER, SPLIT_PANEL_SIDE, STACK_GAP, STATE_COLOR, ScopePicker, ScrollArea, Select, SemanticBadge, SensorHeroCard, SensorInlineControl, SensorValueAtom, Separator, Sidebar, SidebarItem, Skeleton, SlideOverPanel, SlideToggle, SnapshotButton, StatCard, StateValuesStream, StatusBadge, StepTimings, StepTreeMaster, Stepper, StreamBrokerSelector, StreamPanel, Switch, SwitchHeroCard, SwitchInlineControl, SwitchPanel, SystemProvider, 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, VacuumHeroCard, VacuumInlineControl, ValueReadout, ValveHeroCard, ValveInlineControl, VersionBadge, VodPlaybackProvider, WaterHeaterHeroCard, WaterHeaterInlineControl, WeatherHeroCard, WeatherInlineControl, WidgetMetricCard, WidgetPanel, WidgetRegistryProvider, WidgetSlot, ZoneEditingProvider, allDeviceTypeFilterOptions, buildStepTreeFromSchema, childEntityId, childListName, cn, columnsForContext, containerChildToRef, countableDevices, coverHighlight, createSharedContext, createTheme, cursorFractionFor, darkColors, defaultTheme, deriveDeviceKind, deviceMatchesFilter, deviceOptionLabel, deviceRoleMeta, deviceRoleMetaOf, deviceTypeMeta, deviceTypeMetaOf, devicesToOptions, ensureMfHostInit, eventKindLabel, filterDeviceOptions, findTimezone, formatControlDateTime, formatLastSeen, formatNumeric, fuzzyMatch, getClassColor, getPhaseVisual, groupChildrenByLayout, hardwareLabel, humidifierTint, createLucideIcon as i, initialScrubState, isAbsentProvider, isFieldVisible, lawnMowerActivityMeta, lightColors, loadRemoteBundle, makeScrubBridge, metadataEntries, metadataString, mirror, mountAddonPage, Square as n, nextSort, normalizeForSearch, overrideEntityIdFromLink, parseRecordedServerMessage, providerIcons, EyeOff as r, resolveContainerPrimary, resolveControlAlign, resolveDeviceControl, resolveDisplayIcon, resolveEventKindIcon, resolvePrimaryChild, resolveSensorDisplay, scrubReducer, selectedDeviceOptions, serializeRecordedCommand, shouldCommit, shouldEmit, sortRows, statusIcons, stripParentNamePrefix, Trash2 as t, tankAlert, themeToCss, trpc, useAccessoriesGetStatus, useAccessoriesSetChildHidden, useAddonPagesListPages, useAddonSettingsGetDeviceSettings, useAddonSettingsGetGlobalSettings, useAddonSettingsUpdateDeviceSettings, useAddonSettingsUpdateGlobalSettings, useAddonWidgetsListWidgets, useAddonsApplyAutoUpdateToAll, useAddonsCancelJob, useAddonsCustom, useAddonsForceRefresh, useAddonsGetAddonAutoUpdate, useAddonsGetAutoUpdateSettings, useAddonsGetJob, useAddonsGetLastRestart, useAddonsGetLogs, useAddonsGetVersions, useAddonsInstallFromWorkspace, useAddonsInstallPackage, useAddonsIsWorkspaceAvailable, useAddonsList, useAddonsListCapabilityProviders, useAddonsListFrameworkPackages, useAddonsListJobs, useAddonsListPackages, useAddonsListUpdates, useAddonsListWorkspacePackages, useAddonsOnAddonLogs, useAddonsReloadPackages, useAddonsRestartAddon, useAddonsRestartServer, useAddonsRetryLoad, useAddonsRollbackPackage, useAddonsSearchAvailable, useAddonsSetAddonAutoUpdate, useAddonsSetAutoUpdateSettings, useAddonsSetCapabilityProviderEnabled, useAddonsStartJob, useAddonsUninstallPackage, useAddonsUpdateFrameworkPackage, useAddonsUpdatePackage, useAirQualitySensorGetStatus, useAlarmPanelArm, useAlarmPanelDisarm, useAlarmPanelGetStatus, useAlarmPanelTrigger, useAlertsDismiss, useAlertsEmit, useAlertsGetUnreadCount, useAlertsList, useAlertsMarkAllRead, useAlertsMarkRead, useAlertsUpdate, useAllWidgets, useAmbientLightSensorGetStatus, useAudioAnalysisApplyDeviceSettingsPatch, useAudioAnalysisGetDeviceLiveContribution, useAudioAnalysisGetDeviceSettingsContribution, useAudioAnalysisResolveDeviceSettings, useAudioAnalyzerAnalyseChunk, useAudioAnalyzerClassify, useAudioAnalyzerDispose, useAudioAnalyzerIsReady, useAudioAnalyzerReprobeAudioEngine, useAudioCodecCanHandle, useAudioCodecCloseSession, useAudioCodecCreateDecodeSession, useAudioCodecCreateEncodeSession, useAudioCodecFlushEncode, useAudioCodecListActiveSessions, useAudioCodecListSupportedCodecs, useAudioCodecPullEncoded, useAudioCodecPullPcm, useAudioCodecPushEncodedFrame, useAudioCodecPushPcm, useAudioMetricsGetCurrentSnapshot, useAudioMetricsGetHistory, useAutomationControlDisable, useAutomationControlEnable, useAutomationControlGetStatus, useAutomationControlTrigger, useBackupDelete, useBackupGetEntries, useBackupList, useBackupListArchives, useBackupListDestinations, useBackupListLocations, useBackupPreviewSchedule, useBackupRestore, useBackupTrigger, useBackupUpsertDestinationPolicy, useBatteryGetStatus, useBatteryWakeForStream, useBinaryGetStatus, useBrightnessGetStatus, useBrightnessSetBrightness, useBrokerAdd, useBrokerGet, useBrokerGetBrokerConfig, useBrokerGetSettings, useBrokerGetSettingsSchema, useBrokerGetState, useBrokerGetStatus, useBrokerList, useBrokerListProviders, useBrokerPublish, useBrokerRemove, useBrokerSetSettings, useBrokerSubscribe, useBrokerTestConnection, useBrokerTestSettings, useBrokerUnsubscribe, useButtonPress, useCameraCredentialsGetCredentials, useCameraCredentialsGetStatus, useCameraPipelineConfigApplyDeviceSettingsPatch, useCameraPipelineConfigGetDeviceLiveContribution, useCameraPipelineConfigGetDeviceSettingsContribution, useCameraStreamsGetBrokerStreams, useCameraStreamsGetCameraStreams, useCameraStreamsGetProfileRtspEntries, useCameraStreamsGetRtspEntries, useCameraStreamsPickStream, useCarbonMonoxideGetStatus, useClimateControlGetStatus, useClimateControlSetFanMode, useClimateControlSetMode, useClimateControlSetPreset, useClimateControlSetSwingHorizontal, useClimateControlSetSwingVertical, useClimateControlSetTarget, useClimateControlSetTargetHumidity, useClimateControlSetTargetRange, useClusterNodes, useColorGetStatus, useColorSetColor, useConfirm, useConnectivityGetStatus, useConsumablesGetStatus, useConsumablesReset, useContactGetStatus, useContainerChildren, useControlGetStatus, useControlSetValue, useCoverClose, useCoverGetStatus, useCoverOpen, useCoverSetPosition, useCoverSetTiltPosition, useCoverStop, useCustomFieldRenderer, useDayNightGetOptions, useDayNightGetStatus, useDayNightSetSettings, useDebouncedString, useDecoderCreateSession, useDecoderDestroySession, useDecoderGetFrame, useDecoderGetInfo, useDecoderGetShmStats, useDecoderGetStats, useDecoderListActiveSessions, useDecoderOpenStream, useDecoderPullFrames, useDecoderPullHandles, useDecoderPushPacket, useDecoderReprobeHwaccel, useDecoderSupportsCodec, useDecoderUpdateConfig, useDetectionPipelineApplyDeviceSettingsPatch, useDetectionPipelineGetDeviceLiveContribution, useDetectionPipelineGetDeviceSettingsContribution, useDevShell, useDevice, 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, useDeviceId, useDeviceListPageSize, useDeviceManagerAddLocation, useDeviceManagerAdoptDevice, useDeviceManagerAdoptionAdopt, useDeviceManagerAdoptionListCandidateFilters, useDeviceManagerAdoptionListCandidates, useDeviceManagerAdoptionRefresh, useDeviceManagerAdoptionRelease, useDeviceManagerAdoptionResync, useDeviceManagerAllocateDeviceId, useDeviceManagerApplyDeviceSettingsPatch, useDeviceManagerApplyInitialMeta, useDeviceManagerCreateDevice, useDeviceManagerDisable, useDeviceManagerDiscoverAllProviders, useDeviceManagerDiscoverDevices, useDeviceManagerDiscoverProvider, useDeviceManagerDiscoveryProviders, useDeviceManagerEnable, useDeviceManagerGetAllBindings, useDeviceManagerGetBindings, useDeviceManagerGetChildren, useDeviceManagerGetConfigSchema, useDeviceManagerGetCreationSchema, useDeviceManagerGetDevice, useDeviceManagerGetDeviceAggregate, useDeviceManagerGetDeviceLiveContribution, useDeviceManagerGetDeviceLiveInfoAggregate, useDeviceManagerGetDeviceSettingsAggregate, useDeviceManagerGetDeviceSettingsContribution, useDeviceManagerGetDeviceStatusAggregate, useDeviceManagerGetLinkedDevices, useDeviceManagerGetRoleDisplayDefaults, useDeviceManagerGetSettingsSchema, useDeviceManagerGetStreamProfileMap, useDeviceManagerGetStreamSources, useDeviceManagerGetWireableFields, useDeviceManagerListAll, useDeviceManagerListBindableCapsForDeviceType, useDeviceManagerListLocations, useDeviceManagerListPersistedByAddon, useDeviceManagerListWrappersForCap, useDeviceManagerLoadConfig, useDeviceManagerLoadMeta, useDeviceManagerLoadRuntimeState, useDeviceManagerPersistConfig, useDeviceManagerProbeStreams, useDeviceManagerProviderCreationType, useDeviceManagerProviderDiscoveryParamsSchema, useDeviceManagerRegisterDevice, useDeviceManagerRemove, useDeviceManagerRemoveByIntegration, useDeviceManagerRemoveDevice, useDeviceManagerRemoveLocation, useDeviceManagerRunDeviceAction, useDeviceManagerSetChildLayout, useDeviceManagerSetDeviceLinks, useDeviceManagerSetDisabled, useDeviceManagerSetDisplay, useDeviceManagerSetIntegrationId, useDeviceManagerSetLinkDeviceId, useDeviceManagerSetLocation, useDeviceManagerSetMetadata, useDeviceManagerSetName, useDeviceManagerSetPrimaryChildEntityId, useDeviceManagerSetRole, useDeviceManagerSetRoleDisplayDefaults, useDeviceManagerSetStreamProfileMap, useDeviceManagerSetType, useDeviceManagerSetWrapperActive, useDeviceManagerTestCreationField, useDeviceManagerTestField, useDeviceManagerUpdateConfig, useDeviceManagerUpdateDeviceField, useDeviceManagerUpdateDeviceFieldsBatch, useDeviceOpsGetConfigEntries, useDeviceOpsGetRawState, useDeviceOpsGetSettingsSchema, useDeviceOpsGetStreamSources, useDeviceOpsRemoveDevice, useDeviceOpsRunAction, useDeviceOpsSetConfig, useDeviceProviderAdoptDiscoveredDevice, useDeviceProviderCreateDevice, useDeviceProviderDiscoverDevices, useDeviceProviderGetChildCreationSchema, useDeviceProviderGetDevices, useDeviceProviderGetDiscoveryParamsSchema, useDeviceProviderGetManualCreationType, useDeviceProviderGetStatus, useDeviceProviderStart, useDeviceProviderStop, useDeviceProviderSupportsDiscovery, useDeviceProviderSupportsManualCreation, useDeviceProviderTestCreationField, useDeviceProxy, useDeviceSnapshot, useDeviceSnapshotImage, useDeviceState, useDeviceStateGetAllSnapshots, useDeviceStateGetCapSlice, useDeviceStateGetSnapshot, useDeviceStateSetCapSlice, useDeviceStateSlice, useDeviceStatusGetStatus, useDeviceWebrtc, useDevices, useDoorbellApplyDeviceSettingsPatch, useDoorbellEvents, useDoorbellGetDeviceLiveContribution, useDoorbellGetDeviceSettingsContribution, useDoorbellGetStatus, useEnumSensorGetStatus, useEventEmitterGetStatus, useEventInvalidation, useEventStreamLatest, useEventStreamMap, useEventsGetEventClipUrl, useEventsGetEventThumbnail, useEventsGetEvents, useFaceGalleryAssignFace, useFaceGalleryAssignFaces, 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, useLawnMowerControlDock, useLawnMowerControlGetStatus, useLawnMowerControlPause, useLawnMowerControlStartMowing, useLiveBuffer, useLiveEvent, useLlmDeleteModel, useLlmDeleteProfile, useLlmGenerate, useLlmGenerateVision, useLlmGetDefaults, useLlmGetRuntimeStatus, useLlmGetUsage, useLlmInstallModel, useLlmListModelCatalog, useLlmListModels, useLlmListNodeModels, useLlmListProfileKinds, useLlmListProfiles, useLlmListRuntimeNodes, useLlmSetDefault, useLlmStartRuntime, useLlmStopRuntime, useLlmTestProfile, useLlmUpsertProfile, useLocalNetworkGetAllowedAddresses, useLocalNetworkGetConnectionEndpoints, useLocalNetworkGetPreferred, useLocalNetworkList, useLocalNetworkResetAllowlistToBestMatch, useLocalNetworkSetAllowedAddresses, 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, useMetricsProviderDumpHeapSnapshot, useMetricsProviderGetAddonStats, useMetricsProviderGetCached, useMetricsProviderGetCpuTemperature, useMetricsProviderGetCurrent, useMetricsProviderGetDiskSpace, useMetricsProviderGetGpuInfo, useMetricsProviderGetProcessStats, useMetricsProviderKillProcess, useMetricsProviderListAddonInstances, useMetricsProviderListNodeProcesses, useMotionDetectionAnalyze, useMotionDetectionApplyDeviceSettingsPatch, useMotionDetectionGetDeviceLiveContribution, useMotionDetectionGetDeviceSettingsContribution, useMotionDetectionRemoveCamera, useMotionDetectionReset, useMotionGetStatus, useMotionIsDetected, useMotionTriggerGetStatus, useMotionTriggerSetMotionTrigger, useMotionZonesGetOptions, useMotionZonesGetStatus, useMotionZonesSetZone, useMqttBrokerAddBroker, useMqttBrokerGetBrokerConfig, useMqttBrokerGetStatus, useMqttBrokerListBrokers, useMqttBrokerRemoveBroker, useMqttBrokerStartEmbeddedBroker, useMqttBrokerStopEmbeddedBroker, useMqttBrokerTestConnection, useNativeObjectDetectionGetStatus, useNativeObjectDetectionSetEnabled, useNetworkAccessGetEndpoint, useNetworkAccessGetStatus, useNetworkAccessListEndpoints, useNetworkAccessStart, useNetworkAccessStop, useNetworkQualityGetAllStats, useNetworkQualityGetDeviceStats, useNetworkQualityReportClientStats, useNodesClusterAddonStatus, useNodesDeployAddon, useNodesExecuteQuery, useNodesGetCapUsageGraph, useNodesGetNodeAddons, useNodesRenameNode, useNodesRestartAddon, useNodesRestartNode, useNodesRestartProcess, useNodesSetProcessLogLevel, useNodesShutdownNode, useNodesTopology, useNodesUndeployAddon, useNotificationOutputDeleteTarget, useNotificationOutputDiscoverTargets, useNotificationOutputListTargetKinds, useNotificationOutputListTargets, useNotificationOutputSend, useNotificationOutputSetTargetEnabled, useNotificationOutputTestTarget, useNotificationOutputUpsertTarget, useNotifierCancel, useNotifierGetStatus, useNotifierSend, useNumericSensorGetStatus, useOptimisticSlice, useOptionalSystem, useOptionalWidgetRegistry, useOsdGetStatus, useOsdSetOverlay, usePTZ, usePetFeederCallPet, usePetFeederCancelFeed, usePetFeederFeed, usePetFeederGetStatus, usePetFeederMarkFoodReplenished, usePetFeederPlaySound, usePetFeederResetDesiccant, usePetFeederSetChildLock, usePetFeederSetFeedSound, usePetFeederSetIndicatorLight, usePetFeederSetVolume, usePipelineAnalyticsApplyDeviceSettingsPatch, usePipelineAnalyticsClearTracks, usePipelineAnalyticsDeleteDeviceEvents, usePipelineAnalyticsDeleteTracks, usePipelineAnalyticsGetActiveTracks, usePipelineAnalyticsGetAudioEvents, usePipelineAnalyticsGetDeviceLiveContribution, usePipelineAnalyticsGetDeviceSettingsContribution, usePipelineAnalyticsGetEventDensity, usePipelineAnalyticsGetEventMedia, usePipelineAnalyticsGetEventStoreFootprint, usePipelineAnalyticsGetKeyEvents, usePipelineAnalyticsGetMotionEvents, usePipelineAnalyticsGetObjectEvents, usePipelineAnalyticsGetSensorEvents, usePipelineAnalyticsGetTrack, usePipelineAnalyticsGetTrackMedia, usePipelineAnalyticsListEventKinds, usePipelineAnalyticsListOpsLog, usePipelineAnalyticsListRecentTracks, usePipelineAnalyticsListTracks, usePipelineAnalyticsPruneEvents, usePipelineAnalyticsPruneEventsBefore, usePipelineAnalyticsPruneTracksBefore, usePipelineAnalyticsSearchObjectEvents, usePipelineAnalyticsWipeAllAnalytics, usePipelineExecutorCacheFrameInPool, usePipelineExecutorClearDeviceOverrides, usePipelineExecutorDeleteModel, usePipelineExecutorDeleteTemplate, usePipelineExecutorDownloadModel, usePipelineExecutorGetAddonModels, usePipelineExecutorGetAudioCapabilities, usePipelineExecutorGetAvailableEngines, usePipelineExecutorGetCapabilities, usePipelineExecutorGetDefaultSteps, usePipelineExecutorGetDetectionConfigSchema, usePipelineExecutorGetEffectiveTuning, usePipelineExecutorGetEngineProvisioning, usePipelineExecutorGetGlobalPipelineConfig, usePipelineExecutorGetGlobalSteps, usePipelineExecutorGetOrchestratorConfigSchema, usePipelineExecutorGetReferenceAudio, usePipelineExecutorGetReferenceAudioFiles, usePipelineExecutorGetReferenceImage, usePipelineExecutorGetSchema, usePipelineExecutorGetSelectedEngine, usePipelineExecutorGetVideoPipelineSteps, usePipelineExecutorInferCached, usePipelineExecutorKillEngine, usePipelineExecutorListLoadedEngines, usePipelineExecutorListReferenceImages, usePipelineExecutorListTemplates, usePipelineExecutorReprobeEngine, usePipelineExecutorRunAudioTest, usePipelineExecutorRunPipeline, usePipelineExecutorRunPipelineBatch, usePipelineExecutorSaveTemplate, usePipelineExecutorSetVideoPipelineSteps, usePipelineExecutorSpinEngine, usePipelineExecutorUncacheFrame, usePipelineExecutorUpdateTemplate, usePipelineExecutorValidatePipeline, usePipelineOrchestratorApplyDeviceSettingsPatch, usePipelineOrchestratorAssignAudio, usePipelineOrchestratorAssignPipeline, usePipelineOrchestratorDeleteTemplate, usePipelineOrchestratorGetAgentLoad, usePipelineOrchestratorGetAgentSettings, usePipelineOrchestratorGetAudioAssignment, usePipelineOrchestratorGetAudioAssignments, usePipelineOrchestratorGetAudioNodeLoad, usePipelineOrchestratorGetCameraMetrics, usePipelineOrchestratorGetCameraSettings, usePipelineOrchestratorGetCameraStatus, usePipelineOrchestratorGetCameraStatuses, usePipelineOrchestratorGetCameraStepOverrides, usePipelineOrchestratorGetCapabilityBindings, usePipelineOrchestratorGetDeviceLiveContribution, usePipelineOrchestratorGetDeviceSettingsContribution, usePipelineOrchestratorGetGlobalMetrics, usePipelineOrchestratorGetIngestOwner, usePipelineOrchestratorGetPipelineAssignment, usePipelineOrchestratorGetPipelineAssignments, usePipelineOrchestratorListAgentSettings, usePipelineOrchestratorListTemplates, usePipelineOrchestratorRebalance, usePipelineOrchestratorRemoveAgentSettings, usePipelineOrchestratorResetNodePipelineDefaults, usePipelineOrchestratorResolvePipeline, usePipelineOrchestratorSaveTemplate, usePipelineOrchestratorSetAgentAddonDefaults, usePipelineOrchestratorSetAgentCapabilities, usePipelineOrchestratorSetAgentDetectWeight, usePipelineOrchestratorSetAgentMaxCameras, usePipelineOrchestratorSetAgentReachableHost, usePipelineOrchestratorSetCameraPipelineForAgent, usePipelineOrchestratorSetCameraStepOverride, usePipelineOrchestratorSetCameraStepToggle, usePipelineOrchestratorSetCapabilityBinding, usePipelineOrchestratorUnassignAudio, usePipelineOrchestratorUnassignPipeline, usePipelineOrchestratorUpdateTemplate, usePipelineRunnerAttachCamera, usePipelineRunnerDetachCamera, usePipelineRunnerGetAllCameraMetrics, usePipelineRunnerGetCameraMetrics, usePipelineRunnerGetLocalCameras, usePipelineRunnerGetLocalLoad, usePipelineRunnerGetLocalMetrics, usePipelineRunnerGetNativeCrop, usePipelineRunnerReportMotion, usePipelineRunnerRunDetailSubtree, 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, usePrivacyMaskSetMask, usePtzAutotrackGetSettings, usePtzAutotrackGetStatus, usePtzAutotrackSetEnabled, usePtzAutotrackSetSettings, usePtzContinuousMove, usePtzDeletePreset, usePtzGetOptions, usePtzGetPosition, usePtzGetPresets, usePtzGetStatus, usePtzGoHome, usePtzGoToPreset, usePtzMove, usePtzSavePreset, usePtzSetAutofocus, usePtzStop, useRebootReboot, useRecordedPlayback, useRecordingApplyDeviceSettingsPatch, useRecordingDeleteFootprint, useRecordingExportCancelExport, useRecordingExportCreateExport, useRecordingExportDeleteExport, useRecordingExportGetDownloadUrl, useRecordingExportGetExport, useRecordingExportListExports, useRecordingGetAvailability, useRecordingGetDaysWithRecordings, useRecordingGetDeviceConfig, useRecordingGetDeviceLiveContribution, useRecordingGetDeviceSettingsContribution, useRecordingGetPlaybackManifest, useRecordingGetStatus, useRecordingGetStorageUsage, useRecordingListOpsLog, useRecordingLocateSegment, useRecordingPruneFootage, useRecordingReadSegmentBytes, useRecordingRescanStorage, useRecordingSetDeviceConfig, useRemoteComponent, useSceneMonitorCaptureReference, useSceneMonitorCreateScene, useSceneMonitorDeleteReference, useSceneMonitorDeleteScene, useSceneMonitorGetStatus, useSceneMonitorListScenes, useSceneMonitorRecheckNow, useSceneMonitorUpdateScene, useScriptRunnerGetStatus, useScriptRunnerRun, useScriptRunnerStop, useScrubController, useServerManagementApplyServerUpdate, useServerManagementCheckServerUpdate, useServerManagementGetServerPackageStatus, useServerManagementRestartServer, useServerManagementRollbackServerUpdate, useSettingsStoreCount, useSettingsStoreDeclareCollection, useSettingsStoreDelete, useSettingsStoreGet, useSettingsStoreHistogram, useSettingsStoreInsert, useSettingsStoreIsEmpty, useSettingsStoreQuery, useSettingsStoreSet, useSettingsStoreUpdate, useSmokeGetStatus, useSnapshotApplyDeviceSettingsPatch, useSnapshotGetDeviceLiveContribution, useSnapshotGetDeviceSettingsContribution, useSnapshotGetSnapshot, useSnapshotGetSnapshotOverview, useSnapshotGetStatus, useSnapshotInvalidateCache, useStorageAbortUpload, useStorageBeginDownload, useStorageBeginUpload, useStorageDelete, useStorageDeleteLocation, useStorageEndDownload, useStorageExists, useStorageFinalizeUpload, useStorageGetAvailableSpace, useStorageGetDefaultLocation, useStorageList, useStorageListLocationDeclarations, useStorageListLocations, useStorageListProviders, useStorageRead, useStorageReadChunk, useStorageResolve, useStorageTestConfig, useStorageTestLocation, useStorageUpsertLocation, useStorageWrite, useStorageWriteChunk, useStreamBrokerApplyDeviceSettingsPatch, useStreamBrokerAssignProfile, useStreamBrokerGetAllRtspEntries, useStreamBrokerGetBrokerStats, useStreamBrokerGetDeviceLiveContribution, useStreamBrokerGetDeviceSettingsContribution, useStreamBrokerGetPreBufferInfo, useStreamBrokerGetRtspEntry, useStreamBrokerGetRtspPort, useStreamBrokerGetStreamUrl, useStreamBrokerGetStreamWithCodec, useStreamBrokerIsRtspEnabled, useStreamBrokerKillClient, useStreamBrokerListAllCameraStreams, useStreamBrokerListAllProfileSlots, useStreamBrokerListClients, useStreamBrokerProbeStream, useStreamBrokerPublishCameraStream, useStreamBrokerPullAudioChunks, useStreamBrokerPullFrameHandles, useStreamBrokerRegenerateRtspToken, useStreamBrokerReleaseStreamWithCodec, useStreamBrokerRestartProfile, useStreamBrokerRetractCameraStream, useStreamBrokerSetPreBufferDuration, useStreamBrokerSetRtspEnabled, useStreamBrokerSubscribeAudioChunks, useStreamBrokerSubscribeFrames, useStreamBrokerUnassignProfile, useStreamBrokerUnsubscribeAudioChunks, useStreamBrokerUnsubscribeFrames, useStreamCatalogGetCatalog, useStreamParamsGetConfigSchema, useStreamParamsGetOptions, useStreamParamsGetStatus, useStreamParamsSetProfile, useSwitchGetStatus, useSwitchSetState, useSystem, useSystemFeatureFlags, useSystemForceRetentionCleanup, useSystemGetRetentionConfig, useSystemHealth, useSystemInfo, useSystemMutation, useSystemNetworkAddresses, useSystemQuery, useSystemSetRetentionConfig, useTamperGetStatus, useTemperatureSensorGetStatus, useThemeMode, useToastOnToast, useTurnProviderGetTurnServers, useUpdateGetStatus, useUpdateInstallUpdate, useUserManagementConfirmTotp, useUserManagementCreateApiKey, useUserManagementCreateScopedToken, useUserManagementCreateUser, useUserManagementDeleteUser, useUserManagementDisableTotp, useUserManagementGetTotpStatus, useUserManagementListApiKeys, useUserManagementListOauthSessions, useUserManagementListScopedTokens, useUserManagementListUsers, useUserManagementOauthExchangeCode, useUserManagementOauthIssueCode, useUserManagementOauthRefresh, useUserManagementOauthVerifyAccessToken, useUserManagementResetPassword, useUserManagementRevokeApiKey, useUserManagementRevokeOauthSession, useUserManagementRevokeScopedToken, useUserManagementSetUserScopes, useUserManagementSetupTotp, useUserManagementUpdateUser, useUserManagementValidateApiKey, useUserManagementValidateCredentials, useUserManagementValidateScopedToken, useUserManagementVerifyTotp, useVacuumControlGetStatus, useVacuumControlLocate, useVacuumControlPause, useVacuumControlReturnToBase, useVacuumControlSetFanSpeed, useVacuumControlStart, useVacuumControlStop, useValveClose, useValveGetStatus, useValveOpen, useValveSetPosition, useValveStop, useVibrationGetStatus, useVideoclipsGetClipPlayback, useVideoclipsListClips, useVodPlayback, useWaterHeaterGetStatus, useWaterHeaterSetAway, useWaterHeaterSetOperationMode, useWaterHeaterSetTargetTemp, useWeatherGetStatus, useWebrtcSessionAddIceCandidate, useWebrtcSessionCloseSession, useWebrtcSessionCreateSession, useWebrtcSessionGetIceCandidates, useWebrtcSessionGetSessionState, useWebrtcSessionHandleAnswer, useWebrtcSessionHandleOffer, useWebrtcSessionHasAdaptiveBitrate, useWebrtcSessionListStreams, useWidget, useWidgetMetadata, useWidgetRegistry, useZoneAnalyticsGetCameraHistory, useZoneAnalyticsGetCurrentSnapshot, useZoneAnalyticsGetUnzonedHistory, useZoneAnalyticsGetZoneHistory, useZoneEditing, useZoneRulesListRules, useZoneRulesSetRules, useZonesAddZone, useZonesListZones, useZonesRemoveZone, useZonesUpdateZone, vacuumStateMeta, validateScopes, valveStateMeta, waterHeaterPhase, waterHeaterTint, weatherConditionMeta, weatherTint };