@camstack/ui-library 1.2.299 → 1.2.301

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.
@@ -1,4 +1,4 @@
1
- import { TEXT_HINT, UiTrans, WidgetPanel, _n as Grid2x2, isAbsentProvider, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText } from "./index.js";
1
+ import { TEXT_HINT, UiTrans, WidgetPanel, isAbsentProvider, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText, yn as Grid2x2 } from "./index.js";
2
2
  import { MaskShapeCanvas } from "./MaskShapeCanvas-C9cJlxvG.js";
3
3
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  import { n as Hexagon, t as MicOff } from "./mic-off-C2VTYr91.js";
2
- import { Ht as Mic, TEXT_HINT, UiTrans, V as Square, WidgetPanel, isAbsentProvider, jn as EyeOff, k as Trash2, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText } from "./index.js";
2
+ import { H as Square, Nn as EyeOff, TEXT_HINT, UiTrans, Ut as Mic, WidgetPanel, isAbsentProvider, k as Trash2, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText } from "./index.js";
3
3
  import { MaskShapeCanvas } from "./MaskShapeCanvas-C9cJlxvG.js";
4
4
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  import { t as Settings2 } from "./settings-2-jT1iBqHD.js";
2
- import { SCENE_CAPTURE_VARIANTS, TEXT_HINT, UiTrans, badgeFor, coverageLine, dt as RotateCcw, hubPath, isAbsentProvider, k as Trash2, roiTooLarge, statusLine, un as ImageOff, useDeviceProxy, useDeviceSnapshotImage, useDeviceStateSlice, useSystem, useUiText, variantLabel, vr as Camera } from "./index.js";
2
+ import { SCENE_CAPTURE_VARIANTS, TEXT_HINT, UiTrans, badgeFor, br as Camera, coverageLine, dn as ImageOff, ft as RotateCcw, hubPath, isAbsentProvider, k as Trash2, roiTooLarge, statusLine, useDeviceProxy, useDeviceSnapshotImage, useDeviceStateSlice, useSystem, useUiText, variantLabel } from "./index.js";
3
3
  import { MaskShapeCanvas } from "./MaskShapeCanvas-C9cJlxvG.js";
4
4
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -10,6 +10,8 @@ interface FormFieldProps {
10
10
  field: ConfigField;
11
11
  values: Record<string, unknown>;
12
12
  onChange: (key: string, value: unknown) => void;
13
+ /** Apply several form keys in one update (e.g. addon-action-button assignResult). */
14
+ onChangeMany?: (patch: Record<string, unknown>) => void;
13
15
  disabled?: boolean;
14
16
  translationFn?: TranslationFn;
15
17
  /**
@@ -67,5 +69,5 @@ export declare function NodeMultiSelectField({ field, value, onChange, disabled,
67
69
  * rendered without instantiating a React subtree.
68
70
  */
69
71
  export declare function isFieldVisible(field: ConfigField, values: Record<string, unknown>, allFields?: readonly ConfigField[]): boolean;
70
- export declare function FormField({ field, values, onChange, disabled, translationFn, onTestField, externalProbe, allFields, onAction }: FormFieldProps): JSX.Element | null;
72
+ export declare function FormField({ field, values, onChange, onChangeMany, disabled, translationFn, onTestField, externalProbe, allFields, onAction }: FormFieldProps): JSX.Element | null;
71
73
  export { FormField as ConfigFormField };
@@ -1,3 +1,16 @@
1
- import type { ReactNode } from "react";
1
+ import { type ReactNode } from "react";
2
+ import type { ClimateControlStatus, HvacMode } from "@camstack/types";
2
3
  import type { ControlPanelProps } from "./types.js";
4
+ /** A heater offers heat (and maybe auto/off) and none of the cooling modes. */
5
+ export declare function climateOffersCooling(modes: readonly HvacMode[]): boolean;
6
+ /** Setpoint track bounds. Absent when the integration did not report both ends. */
7
+ export declare function climateSetpointBounds(status: Pick<ClimateControlStatus, "minTemp" | "maxTemp">): {
8
+ readonly min: number;
9
+ readonly max: number;
10
+ } | null;
11
+ /** Map a 0–1 drag fraction onto the setpoint, snapped to `tempStep`. */
12
+ export declare function climateTargetFromFraction(fraction: number, bounds: {
13
+ readonly min: number;
14
+ readonly max: number;
15
+ }, tempStep: number | null | undefined): number;
3
16
  export declare function AcPanel({ trpc, deviceId, layout, optimistic }: ControlPanelProps): ReactNode;
@@ -1,6 +1,9 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { ControlPanelProps } from "./types.js";
3
- import type { HvacMode } from "@camstack/types";
3
+ import type { ClimateControlStatus, HvacMode } from "@camstack/types";
4
+ /** Step size for target ± buttons; defaults to 1 °C when unset or invalid. */
5
+ export declare function resolveClimateTempStep(tempStep: number | null | undefined): number;
6
+ export declare function nextClimateTarget(current: number, deltaSteps: number, display: Pick<ClimateControlStatus, "tempStep" | "minTemp" | "maxTemp">): number;
4
7
  /**
5
8
  * Exhaustive colour map — one entry per HvacMode. Build will fail if a
6
9
  * mode is added to the enum and not reflected here (Record<HvacMode, ...>
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Dishwasher controls for a `DeviceType.Dishwasher` device.
3
+ *
4
+ * Reads the `dishwasher` cap status slice and renders inline + hero surfaces
5
+ * mirroring vacuum-control / pet-feeder patterns.
6
+ */
7
+ import { type UiTextFn } from "../../contexts/ui-text";
8
+ import type { ReactNode } from "react";
9
+ import type { DishwasherState } from "@camstack/types";
10
+ import type { DeviceControlProps } from "./control-registry";
11
+ export interface DishwasherStateMeta {
12
+ readonly label: string;
13
+ readonly tone: string;
14
+ }
15
+ export declare function dishwasherStateMeta(state: DishwasherState | undefined, t?: UiTextFn): DishwasherStateMeta;
16
+ export declare function DishwasherInlineControl(props: DeviceControlProps): ReactNode;
17
+ export declare function DishwasherHeroCard(props: DeviceControlProps): ReactNode;
@@ -0,0 +1,4 @@
1
+ import type { ReactNode } from "react";
2
+ import type { ControlPanelProps } from "./types.js";
3
+ export declare function formatHeatingValvePosition(position: number | null): string;
4
+ export declare function HeatingValveReadout({ trpc, deviceId, layout }: Pick<ControlPanelProps, "trpc" | "deviceId" | "layout">): ReactNode;
@@ -13,5 +13,5 @@ export interface ControlPanelProps {
13
13
  /** Cap names whose presence (bound on a device) means it has a control surface.
14
14
  * Single source of truth shared by the row registry and the detail Controls tab
15
15
  * so the two never drift. */
16
- export declare const CONTROL_CAP_NAMES: readonly ["cover", "lock-control", "switch", "brightness", "fan-control", "climate-control", "media-player", "control", "pet-feeder"];
16
+ export declare const CONTROL_CAP_NAMES: readonly ["cover", "lock-control", "switch", "brightness", "fan-control", "climate-control", "media-player", "control", "pet-feeder", "dishwasher"];
17
17
  export type ControlCapName = (typeof CONTROL_CAP_NAMES)[number];
@@ -745,6 +745,32 @@ export declare const useDeviceStateListClaims: typeof trpc.deviceState.listClaim
745
745
  export declare const useDeviceStateGetNativeCapSlice: typeof trpc.deviceState.getNativeCapSlice.useQuery;
746
746
  /** Generated alias around `trpc.deviceStatus.getStatus.useQuery`. */
747
747
  export declare const useDeviceStatusGetStatus: typeof trpc.deviceStatus.getStatus.useQuery;
748
+ /** Generated alias around `trpc.dishwasher.start.useMutation`. */
749
+ export declare const useDishwasherStart: typeof trpc.dishwasher.start.useMutation;
750
+ /** Generated alias around `trpc.dishwasher.pause.useMutation`. */
751
+ export declare const useDishwasherPause: typeof trpc.dishwasher.pause.useMutation;
752
+ /** Generated alias around `trpc.dishwasher.stop.useMutation`. */
753
+ export declare const useDishwasherStop: typeof trpc.dishwasher.stop.useMutation;
754
+ /** Generated alias around `trpc.dishwasher.setProgram.useMutation`. */
755
+ export declare const useDishwasherSetProgram: typeof trpc.dishwasher.setProgram.useMutation;
756
+ /** Generated alias around `trpc.dishwasher.setPower.useMutation`. */
757
+ export declare const useDishwasherSetPower: typeof trpc.dishwasher.setPower.useMutation;
758
+ /** Generated alias around `trpc.dishwasher.setHalfLoad.useMutation`. */
759
+ export declare const useDishwasherSetHalfLoad: typeof trpc.dishwasher.setHalfLoad.useMutation;
760
+ /** Generated alias around `trpc.dishwasher.setHygienePlus.useMutation`. */
761
+ export declare const useDishwasherSetHygienePlus: typeof trpc.dishwasher.setHygienePlus.useMutation;
762
+ /** Generated alias around `trpc.dishwasher.setExtraDry.useMutation`. */
763
+ export declare const useDishwasherSetExtraDry: typeof trpc.dishwasher.setExtraDry.useMutation;
764
+ /** Generated alias around `trpc.dishwasher.setIntensiveZone.useMutation`. */
765
+ export declare const useDishwasherSetIntensiveZone: typeof trpc.dishwasher.setIntensiveZone.useMutation;
766
+ /** Generated alias around `trpc.dishwasher.setVarioSpeedPlus.useMutation`. */
767
+ export declare const useDishwasherSetVarioSpeedPlus: typeof trpc.dishwasher.setVarioSpeedPlus.useMutation;
768
+ /** Generated alias around `trpc.dishwasher.setChildLock.useMutation`. */
769
+ export declare const useDishwasherSetChildLock: typeof trpc.dishwasher.setChildLock.useMutation;
770
+ /** Generated alias around `trpc.dishwasher.setOption.useMutation`. */
771
+ export declare const useDishwasherSetOption: typeof trpc.dishwasher.setOption.useMutation;
772
+ /** Generated alias around `trpc.dishwasher.getStatus.useQuery`. */
773
+ export declare const useDishwasherGetStatus: typeof trpc.dishwasher.getStatus.useQuery;
748
774
  /** Generated alias around `trpc.doorbell.getStatus.useQuery`. */
749
775
  export declare const useDoorbellGetStatus: typeof trpc.doorbell.getStatus.useQuery;
750
776
  /** Generated alias around `trpc.enumSensor.getStatus.useQuery`. */
@@ -799,6 +825,8 @@ export declare const useFeatureProbeGetStatus: typeof trpc.featureProbe.getStatu
799
825
  export declare const useFloodGetStatus: typeof trpc.flood.getStatus.useQuery;
800
826
  /** Generated alias around `trpc.gas.getStatus.useQuery`. */
801
827
  export declare const useGasGetStatus: typeof trpc.gas.getStatus.useQuery;
828
+ /** Generated alias around `trpc.heatingValve.getStatus.useQuery`. */
829
+ export declare const useHeatingValveGetStatus: typeof trpc.heatingValve.getStatus.useQuery;
802
830
  /** Generated alias around `trpc.humidifier.setOn.useMutation`. */
803
831
  export declare const useHumidifierSetOn: typeof trpc.humidifier.setOn.useMutation;
804
832
  /** Generated alias around `trpc.humidifier.setTargetHumidity.useMutation`. */
@@ -18151,54 +18151,6 @@ var Heart = require_createLucideIcon.createLucideIcon("heart", [["path", {
18151
18151
  * This source code is licensed under the ISC license.
18152
18152
  * See the LICENSE file in the root directory of this source tree.
18153
18153
  */
18154
- var Heater = require_createLucideIcon.createLucideIcon("heater", [
18155
- ["path", {
18156
- d: "M11 8c2-3-2-3 0-6",
18157
- key: "1ldv5m"
18158
- }],
18159
- ["path", {
18160
- d: "M15.5 8c2-3-2-3 0-6",
18161
- key: "1otqoz"
18162
- }],
18163
- ["path", {
18164
- d: "M6 10h.01",
18165
- key: "1lbq93"
18166
- }],
18167
- ["path", {
18168
- d: "M6 14h.01",
18169
- key: "zudwn7"
18170
- }],
18171
- ["path", {
18172
- d: "M10 16v-4",
18173
- key: "1c25yv"
18174
- }],
18175
- ["path", {
18176
- d: "M14 16v-4",
18177
- key: "1dkbt8"
18178
- }],
18179
- ["path", {
18180
- d: "M18 16v-4",
18181
- key: "1yg9me"
18182
- }],
18183
- ["path", {
18184
- d: "M20 6a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3",
18185
- key: "1ubg90"
18186
- }],
18187
- ["path", {
18188
- d: "M5 20v2",
18189
- key: "1abpe8"
18190
- }],
18191
- ["path", {
18192
- d: "M19 20v2",
18193
- key: "kqn6ft"
18194
- }]
18195
- ]);
18196
- /**
18197
- * @license lucide-react v0.576.0 - ISC
18198
- *
18199
- * This source code is licensed under the ISC license.
18200
- * See the LICENSE file in the root directory of this source tree.
18201
- */
18202
18154
  var Helicopter = require_createLucideIcon.createLucideIcon("helicopter", [
18203
18155
  ["path", {
18204
18156
  d: "M11 17v4",
@@ -34396,34 +34348,6 @@ var TimerReset = require_createLucideIcon.createLucideIcon("timer-reset", [
34396
34348
  * This source code is licensed under the ISC license.
34397
34349
  * See the LICENSE file in the root directory of this source tree.
34398
34350
  */
34399
- var Timer = require_createLucideIcon.createLucideIcon("timer", [
34400
- ["line", {
34401
- x1: "10",
34402
- x2: "14",
34403
- y1: "2",
34404
- y2: "2",
34405
- key: "14vaq8"
34406
- }],
34407
- ["line", {
34408
- x1: "12",
34409
- x2: "15",
34410
- y1: "14",
34411
- y2: "11",
34412
- key: "17fdiu"
34413
- }],
34414
- ["circle", {
34415
- cx: "12",
34416
- cy: "14",
34417
- r: "8",
34418
- key: "1e1u0o"
34419
- }]
34420
- ]);
34421
- /**
34422
- * @license lucide-react v0.576.0 - ISC
34423
- *
34424
- * This source code is licensed under the ISC license.
34425
- * See the LICENSE file in the root directory of this source tree.
34426
- */
34427
34351
  var ToolCase = require_createLucideIcon.createLucideIcon("tool-case", [
34428
34352
  ["path", {
34429
34353
  d: "M10 15h4",
@@ -38734,7 +38658,7 @@ exports.HeartMinus = HeartMinus;
38734
38658
  exports.HeartOff = HeartOff;
38735
38659
  exports.HeartPlus = HeartPlus;
38736
38660
  exports.HeartPulse = HeartPulse;
38737
- exports.Heater = Heater;
38661
+ exports.Heater = require_index.Heater;
38738
38662
  exports.Helicopter = Helicopter;
38739
38663
  exports.Hexagon = require_mic_off.Hexagon;
38740
38664
  exports.Highlighter = Highlighter;
@@ -39466,7 +39390,7 @@ exports.TicketSlash = TicketSlash;
39466
39390
  exports.TicketX = TicketX;
39467
39391
  exports.Tickets = Tickets;
39468
39392
  exports.TicketsPlane = TicketsPlane;
39469
- exports.Timer = Timer;
39393
+ exports.Timer = require_index.Timer;
39470
39394
  exports.TimerOff = TimerOff;
39471
39395
  exports.TimerReset = TimerReset;
39472
39396
  exports.ToggleLeft = require_index.ToggleLeft;
@@ -1,7 +1,7 @@
1
1
  import { t as createLucideIcon } from "./createLucideIcon-kNomBP27.js";
2
2
  import { n as Hexagon, t as MicOff } from "./mic-off-C2VTYr91.js";
3
3
  import { t as Settings2 } from "./settings-2-jT1iBqHD.js";
4
- import { $ as ShieldCheck, $n as CircleX, $t as List, A as TrainFront, An as Eye, Ar as Battery, At as Package, B as Star, Bn as Database, Br as ArrowRight, Bt as Minus, C as Undo2, Cn as FlaskConical, Cr as Bot, Ct as Plane, D as TrendingDown, Dn as Film, Dr as Bike, Dt as Pencil, E as TriangleAlert, En as Flame, Er as Bird, Et as Phone, F as Target, Fn as Droplet, Fr as Bath, Ft as MoveVertical, G as Smartphone, Gn as Cloud, Gr as AirVent, Gt as Megaphone, H as Sprout, Hn as Cpu, Hr as ArrowDown, Ht as Mic, I as Tag, In as Download, Ir as Ban, It as MoveHorizontal, J as SkipBack, Jn as CloudRain, Jt as Mail, K as SlidersHorizontal, Kn as CloudSun, Kr as Activity, Kt as Maximize2, L as Sunrise, Ln as DoorOpen, Lr as Baby, Lt as MousePointerClick, M as ToggleRight, Mn as ExternalLink, Mr as BatteryMedium, Mt as Navigation, N as ToggleLeft, Nn as EllipsisVertical, Nr as BatteryLow, Nt as Music, O as TrendingUp, On as Feather, Or as Bell, Ot as PawPrint, P as Thermometer, Pn as Droplets, Pr as BatteryFull, Pt as Move, Q as ShieldOff, Qn as Clapperboard, Qt as LoaderCircle, R as Sun, Rn as DoorClosed, Rr as ArrowUp, Rt as Moon, S as Unlink2, Sn as Footprints, Sr as Box, St as Play, T as Truck, Tn as FlashlightOff, Tr as Blinds, Tt as Pin, U as Sparkles, Un as Copy, Ur as ArrowDownToLine, Ut as MessageSquare, V as Square, Vn as Crosshair, Vr as ArrowLeft, Vt as Minimize2, W as Snowflake, Wn as Cog, Wr as AlarmSmoke, Wt as Menu, X as Ship, Xn as CloudFog, Xt as LockOpen, Y as Siren, Yn as CloudLightning, Yt as Lock, Z as Shield, Zn as Clock, Zt as LocateFixed, _ as UtensilsCrossed, _n as Grid2x2, _r as Car, _t as Puzzle, a as Wrench, an as Laugh, ar as CircleCheck, at as ScrollText, b as UserCheck, bn as Gamepad2, br as Bus, bt as Plug, c as Wifi, cr as ChevronsUpDown, ct as Sailboat, d as WifiLow, dn as House, dr as ChevronRight, dt as RotateCcw, en as ListChecks, er as CircleStop, et as ShieldAlert, f as WifiHigh, fn as Hash, fr as ChevronLeft, ft as RefreshCw, g as Vibrate, gn as GripHorizontal, gr as Cast, gt as QrCode, h as Volume2, hn as Hammer, hr as Cat, ht as Radar, i as X, in as LayoutGrid, ir as CircleDot, it as Search, j as Tractor, jn as EyeOff, jr as BatteryWarning, jt as Network, k as Trash2, kn as Fan, kr as BellRing, kt as Pause, l as WifiZero, ln as Image, lr as ChevronsDownUp, lt as Route, m as VolumeX, mn as Hand, mr as Check, mt as RadioTower, n as ZoomIn, nn as Lightbulb, nr as CirclePlus, nt as Settings, o as Workflow, on as Info, or as CircleCheckBig, ot as Scan, p as Waves, pn as HardDrive, pr as ChevronDown, pt as Radio, q as SkipForward, qn as CloudSnow, qt as MapPin, r as Zap, rn as Leaf, rr as CirclePause, rt as Server, s as Wind, sn as Inbox, sr as CircleAlert, st as Save, t as ZoomOut, tn as Link2, tr as CircleQuestionMark, tt as Share2, u as WifiOff, un as ImageOff, ur as ChevronUp, ut as RotateCw, v as Users, vn as GraduationCap, vr as Camera, vt as Power, w as Type, wn as Flashlight, wr as Bone, wt as Pipette, x as Upload, xn as Funnel, xr as Bug, xt as Plus, y as User, yn as Gauge, yr as Cable, yt as PowerOff, z as SunMedium, zn as Dog, zr as ArrowUpToLine, zt as MonitorPlay } from "./index.js";
4
+ import { $ as ShieldOff, $n as Clock, $t as LoaderCircle, A as TrainFront, An as Feather, Ar as Bell, At as Pause, B as SunMedium, Bn as DoorClosed, Br as ArrowUp, Bt as MonitorPlay, C as Undo2, Cn as Funnel, Cr as Bug, Ct as Play, D as TrendingDown, Dn as FlashlightOff, Dr as Blinds, Dt as Phone, E as TriangleAlert, En as Flashlight, Er as Bone, Et as Pin, F as Thermometer, Fn as EllipsisVertical, Fr as BatteryLow, Ft as Move, G as Snowflake, Gn as Copy, Gr as ArrowDownToLine, Gt as Menu, H as Square, Hn as Database, Hr as ArrowRight, Ht as Minimize2, I as Target, In as Droplets, Ir as BatteryFull, It as MoveVertical, J as SkipForward, Jn as CloudSun, Jr as Activity, Jt as MapPin, K as Smartphone, Kn as Cog, Kr as AlarmSmoke, Kt as Megaphone, L as Tag, Ln as Droplet, Lr as Bath, Lt as MoveHorizontal, M as ToggleRight, Mn as Eye, Mr as Battery, Mt as Network, N as ToggleLeft, Nn as EyeOff, Nr as BatteryWarning, Nt as Navigation, O as TrendingUp, On as Flame, Or as Bird, Ot as Pencil, P as Timer, Pn as ExternalLink, Pr as BatteryMedium, Pt as Music, Q as Shield, Qn as CloudFog, Qt as LocateFixed, R as Sunrise, Rn as Download, Rr as Ban, Rt as MousePointerClick, S as Unlink2, Sn as Gamepad2, Sr as Bus, St as Plus, T as Truck, Tn as FlaskConical, Tr as Bot, Tt as Pipette, U as Sprout, Un as Crosshair, Ur as ArrowLeft, Ut as Mic, V as Star, Vn as Dog, Vr as ArrowUpToLine, Vt as Minus, W as Sparkles, Wn as Cpu, Wr as ArrowDown, Wt as MessageSquare, X as Siren, Xn as CloudRain, Xt as Lock, Y as SkipBack, Yn as CloudSnow, Yt as Mail, Z as Ship, Zn as CloudLightning, Zt as LockOpen, _ as UtensilsCrossed, _n as Hammer, _r as Cat, _t as QrCode, a as Wrench, an as LayoutGrid, ar as CirclePause, at as Search, b as UserCheck, bn as GraduationCap, br as Camera, bt as PowerOff, c as Wifi, cr as CircleCheckBig, ct as Save, d as WifiLow, dn as ImageOff, dr as ChevronsDownUp, dt as RotateCw, en as List, er as Clapperboard, et as ShieldCheck, f as WifiHigh, fn as House, fr as ChevronUp, ft as RotateCcw, g as Vibrate, gn as Hand, gr as Check, gt as Radar, h as Volume2, hn as HardDrive, hr as ChevronDown, ht as RadioTower, i as X, in as Leaf, ir as CirclePlus, it as Server, j as Tractor, jn as Fan, jr as BellRing, jt as Package, k as Trash2, kn as Film, kr as Bike, kt as PawPrint, l as WifiZero, ln as Inbox, lr as CircleAlert, lt as Sailboat, m as VolumeX, mn as Hash, mr as ChevronLeft, mt as Radio, n as ZoomIn, nn as Link2, nr as CircleStop, nt as Share2, o as Workflow, on as Laugh, or as CircleDot, ot as ScrollText, p as Waves, pn as Heater, pr as ChevronRight, pt as RefreshCw, q as SlidersHorizontal, qn as Cloud, qr as AirVent, qt as Maximize2, r as Zap, rn as Lightbulb, rr as CircleQuestionMark, rt as Settings, s as Wind, sn as Info, sr as CircleCheck, st as Scan, t as ZoomOut, tn as ListChecks, tr as CircleX, tt as ShieldAlert, u as WifiOff, un as Image, ur as ChevronsUpDown, ut as Route, v as Users, vn as GripHorizontal, vr as Cast, vt as Puzzle, w as Type, wn as Footprints, wr as Box, wt as Plane, x as Upload, xn as Gauge, xr as Cable, xt as Plug, y as User, yn as Grid2x2, yr as Car, yt as Power, z as Sun, zn as DoorOpen, zr as Baby, zt as Moon } from "./index.js";
5
5
  /**
6
6
  * @license lucide-react v0.576.0 - ISC
7
7
  *
@@ -18151,54 +18151,6 @@ var Heart = createLucideIcon("heart", [["path", {
18151
18151
  * This source code is licensed under the ISC license.
18152
18152
  * See the LICENSE file in the root directory of this source tree.
18153
18153
  */
18154
- var Heater = createLucideIcon("heater", [
18155
- ["path", {
18156
- d: "M11 8c2-3-2-3 0-6",
18157
- key: "1ldv5m"
18158
- }],
18159
- ["path", {
18160
- d: "M15.5 8c2-3-2-3 0-6",
18161
- key: "1otqoz"
18162
- }],
18163
- ["path", {
18164
- d: "M6 10h.01",
18165
- key: "1lbq93"
18166
- }],
18167
- ["path", {
18168
- d: "M6 14h.01",
18169
- key: "zudwn7"
18170
- }],
18171
- ["path", {
18172
- d: "M10 16v-4",
18173
- key: "1c25yv"
18174
- }],
18175
- ["path", {
18176
- d: "M14 16v-4",
18177
- key: "1dkbt8"
18178
- }],
18179
- ["path", {
18180
- d: "M18 16v-4",
18181
- key: "1yg9me"
18182
- }],
18183
- ["path", {
18184
- d: "M20 6a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3",
18185
- key: "1ubg90"
18186
- }],
18187
- ["path", {
18188
- d: "M5 20v2",
18189
- key: "1abpe8"
18190
- }],
18191
- ["path", {
18192
- d: "M19 20v2",
18193
- key: "kqn6ft"
18194
- }]
18195
- ]);
18196
- /**
18197
- * @license lucide-react v0.576.0 - ISC
18198
- *
18199
- * This source code is licensed under the ISC license.
18200
- * See the LICENSE file in the root directory of this source tree.
18201
- */
18202
18154
  var Helicopter = createLucideIcon("helicopter", [
18203
18155
  ["path", {
18204
18156
  d: "M11 17v4",
@@ -34396,34 +34348,6 @@ var TimerReset = createLucideIcon("timer-reset", [
34396
34348
  * This source code is licensed under the ISC license.
34397
34349
  * See the LICENSE file in the root directory of this source tree.
34398
34350
  */
34399
- var Timer = createLucideIcon("timer", [
34400
- ["line", {
34401
- x1: "10",
34402
- x2: "14",
34403
- y1: "2",
34404
- y2: "2",
34405
- key: "14vaq8"
34406
- }],
34407
- ["line", {
34408
- x1: "12",
34409
- x2: "15",
34410
- y1: "14",
34411
- y2: "11",
34412
- key: "17fdiu"
34413
- }],
34414
- ["circle", {
34415
- cx: "12",
34416
- cy: "14",
34417
- r: "8",
34418
- key: "1e1u0o"
34419
- }]
34420
- ]);
34421
- /**
34422
- * @license lucide-react v0.576.0 - ISC
34423
- *
34424
- * This source code is licensed under the ISC license.
34425
- * See the LICENSE file in the root directory of this source tree.
34426
- */
34427
34351
  var ToolCase = createLucideIcon("tool-case", [
34428
34352
  ["path", {
34429
34353
  d: "M10 15h4",