@camstack/ui-library 1.2.375 → 1.2.377
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/CHANGELOG.md +18 -0
- package/dist/{MotionZonesSettings-Zcfa5c9l.js → MotionZonesSettings-BvpjmW6y.js} +1 -1
- package/dist/{PrivacyMaskSettings-B_X42yzN.js → PrivacyMaskSettings-D7o4tx8e.js} +1 -1
- package/dist/{SceneMonitorEditor-C8YXVzYI.js → SceneMonitorEditor-BwelmHlF.js} +1 -1
- package/dist/composites/cap-settings/PowerMeterLine.d.ts +10 -0
- package/dist/composites/cap-settings/index.d.ts +1 -0
- package/dist/composites/device-controls/appliance-control.d.ts +0 -2
- package/dist/composites/device-controls/media-player-hero-card.d.ts +15 -10
- package/dist/composites/device-controls/media-player-hero-parts.d.ts +18 -0
- package/dist/composites/device-controls/media-player-panel.d.ts +1 -1
- package/dist/composites/device-controls/media-player-view.d.ts +66 -0
- package/dist/composites/index.d.ts +1 -0
- package/dist/generated/system-hooks.d.ts +14 -0
- package/dist/{icons-DXwPEKdJ.cjs → icons-BWpVdTJu.cjs} +3 -83
- package/dist/{icons-e-xohmFb.js → icons-cIFSolkx.js} +1 -81
- package/dist/index.cjs +781 -156
- package/dist/index.js +776 -162
- package/dist/primitives/bottom-sheet.d.ts +1 -1
- package/dist/primitives/mobile-drawer.d.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.2.377] - 2026-11-03
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Media-player hero card rewritten: power, running state, power-meter watts and every declared control, unknown shown as unknown; artwork with cross-fade; a declared volume or mute always shows (unknown level) instead of hiding
|
|
15
|
+
- A wireless link badge with no signal reading shows no percentage (it showed NaN%)
|
|
16
|
+
- Media-player hero: a status with no state draws an unknown orb and unknown running, never on or Not running
|
|
17
|
+
- A Power line under every device's hero card shows watts and energy; heater and appliance cards no longer draw watts themselves
|
|
18
|
+
- The media-player hero no longer draws its own running line and watts; the device page's running line and Power line show them
|
|
19
|
+
|
|
20
|
+
## [1.2.376] - 2026-11-03
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- Generated hooks include the media-player power and step methods
|
|
25
|
+
- Media-player hero shows only what the device reports: no fake 0% volume, no empty now-playing, and an assumed state is marked as assumed
|
|
26
|
+
- A closed mobile drawer or bottom sheet mounts nothing, so no off-screen layer blurs the top bar on iPhone; the app shell top bar is opaque
|
|
27
|
+
|
|
10
28
|
## [1.2.375] - 2026-11-02
|
|
11
29
|
|
|
12
30
|
### Changed
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { En as Grid2x2, TEXT_HINT, UiTrans, WidgetPanel, isAbsentProvider, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText } 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 { A as Trash2,
|
|
2
|
+
import { A as Trash2, TEXT_HINT, UiTrans, W as Square, WidgetPanel, Yt as Mic, isAbsentProvider, useDeviceProxy, usePlayerOverlayLayer, useSystem, useUiText, zn as EyeOff } 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 { A as Trash2, SCENE_CAPTURE_VARIANTS, TEXT_HINT,
|
|
2
|
+
import { A as Trash2, Or as Camera, SCENE_CAPTURE_VARIANTS, TEXT_HINT, UiTrans, _n as ImageOff, badgeFor, coverageLine, gt as RotateCcw, hubPath, isAbsentProvider, roiTooLarge, statusLine, useConfirm, 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";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { JSX } from "react";
|
|
2
|
+
import type { CapSettingsComponentProps } from "./index";
|
|
3
|
+
/** Whole watts below a kilowatt, one decimal above. */
|
|
4
|
+
export declare function formatPowerWatts(watts: number): {
|
|
5
|
+
readonly value: string;
|
|
6
|
+
readonly unit: string;
|
|
7
|
+
};
|
|
8
|
+
/** Two decimals under 100 kWh, whole kWh above. */
|
|
9
|
+
export declare function formatEnergyKwh(kwh: number): string;
|
|
10
|
+
export declare function PowerMeterLine({ deviceId }: CapSettingsComponentProps): JSX.Element | null;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { AutotrackSection } from "./AutotrackSection";
|
|
2
2
|
export { ConsumablesPanel } from "./ConsumablesPanel";
|
|
3
|
+
export { PowerMeterLine } from "./PowerMeterLine";
|
|
3
4
|
export type { MaskShapeCanvasProps, MaskShapeItem } from "./MaskShapeCanvas";
|
|
4
5
|
export { MaskShapeCanvas } from "./MaskShapeCanvas";
|
|
5
6
|
export { MotionZonesSettings } from "./MotionZonesSettings";
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
2
|
import { type UiTextFn } from "../../contexts/ui-text";
|
|
3
3
|
import type { DeviceControlProps } from "./control-registry";
|
|
4
|
-
/** Whole watts, or a dash when the appliance has not reported a reading. */
|
|
5
|
-
export declare function formatWatts(power: number | undefined): string;
|
|
6
4
|
interface StateLabel {
|
|
7
5
|
readonly label: string;
|
|
8
6
|
readonly tone: string;
|
|
@@ -1,17 +1,22 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
2
|
import type { DeviceControlProps } from "./control-registry";
|
|
3
3
|
/**
|
|
4
|
-
* MediaPlayerHeroCard —
|
|
4
|
+
* MediaPlayerHeroCard — the state of a MediaPlayer device and every control it
|
|
5
|
+
* exposes, drawn from `deriveMediaPlayerView` (the state → view mapping and
|
|
6
|
+
* its spec live in `media-player-view.ts`).
|
|
5
7
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* - Power orb: glowing when on, amber in standby, flat when off, dashed with a
|
|
9
|
+
* question mark while the state is unknown (never drawn as off). It is the
|
|
10
|
+
* power switch when the device declares `MediaPlayerPower`.
|
|
11
|
+
* - Running line: equalizer while playing, spinner while buffering, pause
|
|
12
|
+
* glyph when paused; a value the driver only guesses carries an "assumed" mark.
|
|
13
|
+
* - Only while the device is on: now-playing, seek, transport (previous /
|
|
14
|
+
* play-pause / stop / next), volume (slider with mute, or steps when the
|
|
15
|
+
* device has no level reading), the source (a picker when it can switch),
|
|
16
|
+
* shuffle and repeat. Each appears only when the status fills it or a
|
|
17
|
+
* `DeviceFeature` declares it — no per-vendor list.
|
|
14
18
|
*
|
|
15
19
|
* Cap-gated on `media-player` — returns null when the device lacks the cap.
|
|
20
|
+
* Motion respects `prefers-reduced-motion`.
|
|
16
21
|
*/
|
|
17
22
|
export declare function MediaPlayerHeroCard({ trpc, deviceId, features, optimistic }: DeviceControlProps): ReactNode;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { PowerView, RunningView } from "./media-player-view";
|
|
3
|
+
export declare const MEDIA_HERO_KEYFRAMES = "\n@keyframes mph-eq { 0%, 100% { transform: scaleY(.3) } 50% { transform: scaleY(1) } }\n@keyframes mph-halo { 0% { transform: scale(.92); opacity: .55 } 100% { transform: scale(1.4); opacity: 0 } }\n.mph-eq { transform-origin: bottom; animation: mph-eq 1s ease-in-out infinite; }\n.mph-eq:nth-child(2) { animation-duration: .8s; animation-delay: -.3s; }\n.mph-eq:nth-child(3) { animation-duration: 1.2s; animation-delay: -.6s; }\n.mph-eq:nth-child(4) { animation-duration: .9s; animation-delay: -.1s; }\n.mph-halo { animation: mph-halo 2.8s ease-out infinite; }\n@keyframes mph-in { from { opacity: 0 } to { opacity: 1 } }\n@keyframes mph-out { from { opacity: 1 } to { opacity: 0 } }\n.mph-fade-in { animation: mph-in .6s ease-out both; }\n.mph-fade-out { animation: mph-out .6s ease-out both; }\n@media (prefers-reduced-motion: reduce) {\n .mph-eq, .mph-halo, .mph-fade-in, .mph-fade-out { animation: none !important; }\n .mph-fade-out { opacity: 0; }\n .mph-eq:nth-child(odd) { transform: scaleY(.6); }\n .mph-halo { opacity: 0; }\n}\n";
|
|
4
|
+
interface PowerOrbProps {
|
|
5
|
+
readonly power: PowerView;
|
|
6
|
+
/** Present = the orb is the power switch. */
|
|
7
|
+
readonly onPress: (() => void) | undefined;
|
|
8
|
+
readonly label: string;
|
|
9
|
+
readonly busy: boolean;
|
|
10
|
+
}
|
|
11
|
+
/** The device's power: a glowing ring when on, amber in standby, flat when off, dashed when unknown. */
|
|
12
|
+
export declare function PowerOrb({ power, onPress, label, busy }: PowerOrbProps): ReactNode;
|
|
13
|
+
interface RunningIndicatorProps {
|
|
14
|
+
readonly running: RunningView;
|
|
15
|
+
}
|
|
16
|
+
/** Equalizer while playing, a spinner while buffering, a pause glyph when paused; nothing otherwise. */
|
|
17
|
+
export declare function RunningIndicator({ running }: RunningIndicatorProps): ReactNode;
|
|
18
|
+
export {};
|
|
@@ -6,4 +6,4 @@ import type { MediaPlayerState } from "@camstack/types";
|
|
|
6
6
|
* Build fails if a state is added and not reflected here.
|
|
7
7
|
*/
|
|
8
8
|
export declare const STATE_COLOR: Record<MediaPlayerState, string>;
|
|
9
|
-
export declare function MediaPlayerPanel({ trpc, deviceId, features
|
|
9
|
+
export declare function MediaPlayerPanel({ trpc, deviceId, features, layout, optimistic }: ControlPanelProps): ReactNode;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The state → view mapping of the media-player hero card, kept pure so it can
|
|
3
|
+
* be specified without rendering.
|
|
4
|
+
*
|
|
5
|
+
* Two questions are answered separately. POWER is whether the device is on
|
|
6
|
+
* (`off` / `standby` / on); RUNNING is what a powered device is doing
|
|
7
|
+
* (`playing` / `paused` / `buffering` / `idle`). A status that never arrived
|
|
8
|
+
* is `unknown` for both, and an unknown state is never drawn as off: it is
|
|
9
|
+
* its own look. A value the driver only guesses (infrared has no feedback)
|
|
10
|
+
* carries an `assumed` flag so the card can draw it as a guess.
|
|
11
|
+
*
|
|
12
|
+
* The controls are derived from what the device exposes — the status fields
|
|
13
|
+
* it fills and the `DeviceFeature` flags it declares — never from a vendor.
|
|
14
|
+
*/
|
|
15
|
+
import { type MediaPlayerStatus } from "@camstack/types";
|
|
16
|
+
export type PowerView = "on" | "off" | "standby" | "unknown";
|
|
17
|
+
/** `none` = powered but the device reports no activity (an infrared TV that is simply on). */
|
|
18
|
+
export type RunningView = "playing" | "paused" | "buffering" | "idle" | "none" | "unknown";
|
|
19
|
+
export type VolumeView = "slider" | "steps" | "none";
|
|
20
|
+
export interface SourceView {
|
|
21
|
+
readonly current: string;
|
|
22
|
+
readonly options: readonly string[];
|
|
23
|
+
/** Several sources and the device can switch between them. */
|
|
24
|
+
readonly selectable: boolean;
|
|
25
|
+
}
|
|
26
|
+
export interface TransportView {
|
|
27
|
+
/** Play / pause is drawn at all. */
|
|
28
|
+
readonly playPause: boolean;
|
|
29
|
+
readonly previous: boolean;
|
|
30
|
+
readonly next: boolean;
|
|
31
|
+
readonly stop: boolean;
|
|
32
|
+
}
|
|
33
|
+
/** What the device's `running-state` cap says: a reading, or `unknown` (null, unanswered or not bound). */
|
|
34
|
+
export type RunningReading = "running" | "idle" | "unknown";
|
|
35
|
+
/** Readings from sibling caps bound to the same device; `undefined` = not bound or not answered. */
|
|
36
|
+
export interface MediaPlayerExtras {
|
|
37
|
+
/** `running-state` slice's `running`. */
|
|
38
|
+
readonly running?: boolean | null | undefined;
|
|
39
|
+
}
|
|
40
|
+
export interface MediaPlayerView {
|
|
41
|
+
readonly power: PowerView;
|
|
42
|
+
/** The `running-state` cap's reading; `unknown` when the cap is absent or has no answer. */
|
|
43
|
+
readonly runningReading: RunningReading;
|
|
44
|
+
readonly running: RunningView;
|
|
45
|
+
/** The power / running state is the driver's own bookkeeping, not a reading. */
|
|
46
|
+
readonly stateAssumed: boolean;
|
|
47
|
+
/** Power can be switched from here. */
|
|
48
|
+
readonly canSwitchPower: boolean;
|
|
49
|
+
readonly transport: TransportView;
|
|
50
|
+
readonly seek: boolean;
|
|
51
|
+
readonly volume: VolumeView;
|
|
52
|
+
readonly volumeAssumed: boolean;
|
|
53
|
+
/** The device reported a level; false draws the slider as unknown. */
|
|
54
|
+
readonly volumeKnown: boolean;
|
|
55
|
+
readonly muteKnown: boolean;
|
|
56
|
+
/** Artwork of what is playing; null when there is none. */
|
|
57
|
+
readonly artworkUrl: string | null;
|
|
58
|
+
/** A mute toggle with a known state. */
|
|
59
|
+
readonly mute: boolean;
|
|
60
|
+
readonly muteAssumed: boolean;
|
|
61
|
+
readonly source: SourceView | null;
|
|
62
|
+
readonly sourceAssumed: boolean;
|
|
63
|
+
readonly shuffle: boolean;
|
|
64
|
+
readonly repeat: boolean;
|
|
65
|
+
}
|
|
66
|
+
export declare function deriveMediaPlayerView(status: MediaPlayerStatus | undefined, features: readonly string[] | undefined, extras?: MediaPlayerExtras): MediaPlayerView;
|
|
@@ -54,6 +54,7 @@ export type { DiagnosticIcePolicy, SessionVerdict, SessionVerdictLayer } from ".
|
|
|
54
54
|
export type { EndpointTestRow, IceServerEntry, NatCheckResult } from "./webrtc-diagnostics/endpoint-test";
|
|
55
55
|
export { AutotrackSection } from "./cap-settings/AutotrackSection";
|
|
56
56
|
export { ConsumablesPanel } from "./cap-settings/ConsumablesPanel";
|
|
57
|
+
export { PowerMeterLine } from "./cap-settings/PowerMeterLine";
|
|
57
58
|
export type { CapSettingsComponentProps } from "./cap-settings/index";
|
|
58
59
|
export type { MaskShapeCanvasProps, MaskShapeItem } from "./cap-settings/MaskShapeCanvas";
|
|
59
60
|
export { NavigationPanel } from "./cap-settings/NavigationPanel";
|
|
@@ -1137,6 +1137,18 @@ export declare const useLockControlUnlock: typeof trpc.lockControl.unlock.useMut
|
|
|
1137
1137
|
export declare const useLockControlOpen: typeof trpc.lockControl.open.useMutation;
|
|
1138
1138
|
/** Generated alias around `trpc.lockControl.getStatus.useQuery`. */
|
|
1139
1139
|
export declare const useLockControlGetStatus: typeof trpc.lockControl.getStatus.useQuery;
|
|
1140
|
+
/** Generated alias around `trpc.mediaPlayer.turnOn.useMutation`. */
|
|
1141
|
+
export declare const useMediaPlayerTurnOn: typeof trpc.mediaPlayer.turnOn.useMutation;
|
|
1142
|
+
/** Generated alias around `trpc.mediaPlayer.turnOff.useMutation`. */
|
|
1143
|
+
export declare const useMediaPlayerTurnOff: typeof trpc.mediaPlayer.turnOff.useMutation;
|
|
1144
|
+
/** Generated alias around `trpc.mediaPlayer.volumeUp.useMutation`. */
|
|
1145
|
+
export declare const useMediaPlayerVolumeUp: typeof trpc.mediaPlayer.volumeUp.useMutation;
|
|
1146
|
+
/** Generated alias around `trpc.mediaPlayer.volumeDown.useMutation`. */
|
|
1147
|
+
export declare const useMediaPlayerVolumeDown: typeof trpc.mediaPlayer.volumeDown.useMutation;
|
|
1148
|
+
/** Generated alias around `trpc.mediaPlayer.channelUp.useMutation`. */
|
|
1149
|
+
export declare const useMediaPlayerChannelUp: typeof trpc.mediaPlayer.channelUp.useMutation;
|
|
1150
|
+
/** Generated alias around `trpc.mediaPlayer.channelDown.useMutation`. */
|
|
1151
|
+
export declare const useMediaPlayerChannelDown: typeof trpc.mediaPlayer.channelDown.useMutation;
|
|
1140
1152
|
/** Generated alias around `trpc.mediaPlayer.play.useMutation`. */
|
|
1141
1153
|
export declare const useMediaPlayerPlay: typeof trpc.mediaPlayer.play.useMutation;
|
|
1142
1154
|
/** Generated alias around `trpc.mediaPlayer.pause.useMutation`. */
|
|
@@ -2111,6 +2123,8 @@ export declare const useRemoteSetConfig: typeof trpc.remote.setConfig.useMutatio
|
|
|
2111
2123
|
export declare const useRemoteListCommands: typeof trpc.remote.listCommands.useQuery;
|
|
2112
2124
|
/** Generated alias around `trpc.remote.sendCommand.useMutation`. */
|
|
2113
2125
|
export declare const useRemoteSendCommand: typeof trpc.remote.sendCommand.useMutation;
|
|
2126
|
+
/** Generated alias around `trpc.remote.getAssumedStatus.useQuery`. */
|
|
2127
|
+
export declare const useRemoteGetAssumedStatus: typeof trpc.remote.getAssumedStatus.useQuery;
|
|
2114
2128
|
/** Generated alias around `trpc.remote.sendMediaCommand.useMutation`. */
|
|
2115
2129
|
export declare const useRemoteSendMediaCommand: typeof trpc.remote.sendMediaCommand.useMutation;
|
|
2116
2130
|
/** Generated alias around `trpc.remoteLayoutComponents.listComponents.useQuery`. */
|
|
@@ -27093,34 +27093,6 @@ var RemoveFormatting = require_createLucideIcon.createLucideIcon("remove-formatt
|
|
|
27093
27093
|
* This source code is licensed under the ISC license.
|
|
27094
27094
|
* See the LICENSE file in the root directory of this source tree.
|
|
27095
27095
|
*/
|
|
27096
|
-
var Repeat1 = require_createLucideIcon.createLucideIcon("repeat-1", [
|
|
27097
|
-
["path", {
|
|
27098
|
-
d: "m17 2 4 4-4 4",
|
|
27099
|
-
key: "nntrym"
|
|
27100
|
-
}],
|
|
27101
|
-
["path", {
|
|
27102
|
-
d: "M3 11v-1a4 4 0 0 1 4-4h14",
|
|
27103
|
-
key: "84bu3i"
|
|
27104
|
-
}],
|
|
27105
|
-
["path", {
|
|
27106
|
-
d: "m7 22-4-4 4-4",
|
|
27107
|
-
key: "1wqhfi"
|
|
27108
|
-
}],
|
|
27109
|
-
["path", {
|
|
27110
|
-
d: "M21 13v1a4 4 0 0 1-4 4H3",
|
|
27111
|
-
key: "1rx37r"
|
|
27112
|
-
}],
|
|
27113
|
-
["path", {
|
|
27114
|
-
d: "M11 10h1v4",
|
|
27115
|
-
key: "70cz1p"
|
|
27116
|
-
}]
|
|
27117
|
-
]);
|
|
27118
|
-
/**
|
|
27119
|
-
* @license lucide-react v0.576.0 - ISC
|
|
27120
|
-
*
|
|
27121
|
-
* This source code is licensed under the ISC license.
|
|
27122
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
27123
|
-
*/
|
|
27124
27096
|
var Repeat2 = require_createLucideIcon.createLucideIcon("repeat-2", [
|
|
27125
27097
|
["path", {
|
|
27126
27098
|
d: "m2 9 3-3 3 3",
|
|
@@ -27145,30 +27117,6 @@ var Repeat2 = require_createLucideIcon.createLucideIcon("repeat-2", [
|
|
|
27145
27117
|
* This source code is licensed under the ISC license.
|
|
27146
27118
|
* See the LICENSE file in the root directory of this source tree.
|
|
27147
27119
|
*/
|
|
27148
|
-
var Repeat = require_createLucideIcon.createLucideIcon("repeat", [
|
|
27149
|
-
["path", {
|
|
27150
|
-
d: "m17 2 4 4-4 4",
|
|
27151
|
-
key: "nntrym"
|
|
27152
|
-
}],
|
|
27153
|
-
["path", {
|
|
27154
|
-
d: "M3 11v-1a4 4 0 0 1 4-4h14",
|
|
27155
|
-
key: "84bu3i"
|
|
27156
|
-
}],
|
|
27157
|
-
["path", {
|
|
27158
|
-
d: "m7 22-4-4 4-4",
|
|
27159
|
-
key: "1wqhfi"
|
|
27160
|
-
}],
|
|
27161
|
-
["path", {
|
|
27162
|
-
d: "M21 13v1a4 4 0 0 1-4 4H3",
|
|
27163
|
-
key: "1rx37r"
|
|
27164
|
-
}]
|
|
27165
|
-
]);
|
|
27166
|
-
/**
|
|
27167
|
-
* @license lucide-react v0.576.0 - ISC
|
|
27168
|
-
*
|
|
27169
|
-
* This source code is licensed under the ISC license.
|
|
27170
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
27171
|
-
*/
|
|
27172
27120
|
var ReplaceAll = require_createLucideIcon.createLucideIcon("replace-all", [
|
|
27173
27121
|
["path", {
|
|
27174
27122
|
d: "M14 14a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1",
|
|
@@ -29455,34 +29403,6 @@ var Shrub = require_createLucideIcon.createLucideIcon("shrub", [
|
|
|
29455
29403
|
* This source code is licensed under the ISC license.
|
|
29456
29404
|
* See the LICENSE file in the root directory of this source tree.
|
|
29457
29405
|
*/
|
|
29458
|
-
var Shuffle = require_createLucideIcon.createLucideIcon("shuffle", [
|
|
29459
|
-
["path", {
|
|
29460
|
-
d: "m18 14 4 4-4 4",
|
|
29461
|
-
key: "10pe0f"
|
|
29462
|
-
}],
|
|
29463
|
-
["path", {
|
|
29464
|
-
d: "m18 2 4 4-4 4",
|
|
29465
|
-
key: "pucp1d"
|
|
29466
|
-
}],
|
|
29467
|
-
["path", {
|
|
29468
|
-
d: "M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22",
|
|
29469
|
-
key: "1ailkh"
|
|
29470
|
-
}],
|
|
29471
|
-
["path", {
|
|
29472
|
-
d: "M2 6h1.972a4 4 0 0 1 3.6 2.2",
|
|
29473
|
-
key: "km57vx"
|
|
29474
|
-
}],
|
|
29475
|
-
["path", {
|
|
29476
|
-
d: "M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45",
|
|
29477
|
-
key: "os18l9"
|
|
29478
|
-
}]
|
|
29479
|
-
]);
|
|
29480
|
-
/**
|
|
29481
|
-
* @license lucide-react v0.576.0 - ISC
|
|
29482
|
-
*
|
|
29483
|
-
* This source code is licensed under the ISC license.
|
|
29484
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
29485
|
-
*/
|
|
29486
29406
|
var Sigma = require_createLucideIcon.createLucideIcon("sigma", [["path", {
|
|
29487
29407
|
d: "M18 7V5a1 1 0 0 0-1-1H6.5a.5.5 0 0 0-.4.8l4.5 6a2 2 0 0 1 0 2.4l-4.5 6a.5.5 0 0 0 .4.8H17a1 1 0 0 0 1-1v-2",
|
|
29488
29408
|
key: "wuwx1p"
|
|
@@ -38957,8 +38877,8 @@ exports.RefreshCwOff = RefreshCwOff;
|
|
|
38957
38877
|
exports.Refrigerator = Refrigerator;
|
|
38958
38878
|
exports.Regex = Regex;
|
|
38959
38879
|
exports.RemoveFormatting = RemoveFormatting;
|
|
38960
|
-
exports.Repeat = Repeat;
|
|
38961
|
-
exports.Repeat1 = Repeat1;
|
|
38880
|
+
exports.Repeat = require_index.Repeat;
|
|
38881
|
+
exports.Repeat1 = require_index.Repeat1;
|
|
38962
38882
|
exports.Repeat2 = Repeat2;
|
|
38963
38883
|
exports.Replace = Replace;
|
|
38964
38884
|
exports.ReplaceAll = ReplaceAll;
|
|
@@ -39063,7 +38983,7 @@ exports.Shredder = Shredder;
|
|
|
39063
38983
|
exports.Shrimp = Shrimp;
|
|
39064
38984
|
exports.Shrink = Shrink;
|
|
39065
38985
|
exports.Shrub = Shrub;
|
|
39066
|
-
exports.Shuffle = Shuffle;
|
|
38986
|
+
exports.Shuffle = require_index.Shuffle;
|
|
39067
38987
|
exports.Sigma = Sigma;
|
|
39068
38988
|
exports.Signal = Signal;
|
|
39069
38989
|
exports.SignalHigh = SignalHigh;
|
|
@@ -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
|
|
4
|
+
import { $ as Shuffle, $n as Cog, $r as ArrowDownToLine, $t as Maximize2, A as Trash2, An as Funnel, Ar as Bus, At as Plane, B as Sunrise, Bn as ExternalLink, Br as Battery, Bt as Music, C as Unlink2, Cn as Hand, Cr as Check, Ct as QrCode, D as TriangleAlert, Dn as GraduationCap, Dr as Car, Dt as Plug, E as Truck, En as Grid2x2, Er as Cast, Et as PowerOff, F as Timer, Fn as Film, Fr as Blinds, Ft as PawPrint, G as Sprout, Gn as Download, Gr as Bath, Gt as Moon, H as SunMedium, Hn as EllipsisVertical, Hr as BatteryMedium, Ht as MoveVertical, I as TimerOff, In as Feather, Ir as Bird, It as Pause, J as Smartphone, Jn as Dog, Jr as ArrowUp, Jt as Minimize2, K as Sparkles, Kn as DoorOpen, Kr as Ban, Kt as MonitorPlay, L as Thermometer, Ln as Fan, Lr as Bike, Lt as Package, M as Tractor, Mn as Flashlight, Mr as Box, Mt as Pin, N as ToggleRight, Nn as FlashlightOff, Nr as Bot, Nt as Phone, O as TrendingDown, On as Gauge, Or as Camera, Ot as Plus, P as ToggleLeft, Pn as Flame, Pr as Bone, Pt as Pencil, Q as Siren, Qn as Copy, Qr as ArrowDown, Qt as Megaphone, R as Target, Rn as Eye, Rr as Bell, Rt as Network, S as Upload, Sn as HardDrive, Sr as ChevronDown, St as Radar, T as Type, Tn as GripHorizontal, Tr as Cat, Tt as Power, U as Star, Un as Droplets, Ur as BatteryLow, Ut as MoveHorizontal, V as Sun, Vn as Eraser, Vr as BatteryWarning, Vt as Move, W as Square, Wn as Droplet, Wr as BatteryFull, Wt as MousePointerClick, X as SkipForward, Xn as Crosshair, Xr as ArrowRight, Xt as MessageSquare, Y as SlidersHorizontal, Yn as Database, Yr as ArrowUpToLine, Yt as Mic, Z as SkipBack, Zn as Cpu, Zr as ArrowLeft, Zt as Menu, _ as Vibrate, _n as ImageOff, _r as ChevronsUpDown, _t as Repeat, a as Wrench, an as LoaderCircle, ar as CloudFog, at as Share2, b as User, bn as Heater, br as ChevronRight, bt as Radio, c as Wifi, cr as CircleX, ct as Search, d as WifiLow, dn as Leaf, dr as CirclePlus, dt as Save, ei as AlarmSmoke, en as MapPin, er as Cloud, et as Ship, f as WifiHigh, fn as LayoutGrid, fr as CirclePause, ft as Sailboat, g as Volume2, gn as Image, gr as CircleAlert, gt as RotateCcw, h as VolumeX, hn as Inbox, hr as CircleCheckBig, ht as RotateCw, i as X, in as LocateFixed, ir as CloudLightning, it as ShieldAlert, j as TrainFront, jn as Footprints, jr as Bug, jt as Pipette, k as TrendingUp, kn as Gamepad2, kr as Cable, kt as Play, l as WifiZero, ln as Link2, lr as CircleStop, lt as ScrollText, m as WashingMachine, mn as Info, mr as CircleCheck, mt as Route, n as ZoomIn, ni as Activity, nn as Lock, nr as CloudSnow, nt as ShieldOff, o as Workflow, on as List, or as Clock, ot as Settings, p as Waves, pn as Laugh, pr as CircleDot, pt as Router, q as Snowflake, qn as DoorClosed, qr as Baby, qt as Minus, r as Zap, rn as LockOpen, rr as CloudRain, rt as ShieldCheck, s as Wind, sn as ListChecks, sr as Clapperboard, st as Server, t as ZoomOut, ti as AirVent, tn as Mail, tr as CloudSun, tt as Shield, u as WifiOff, un as Lightbulb, ur as CircleQuestionMark, ut as Scan, v as UtensilsCrossed, vn as House, vr as ChevronsDownUp, vt as Repeat1, w as Undo2, wn as Hammer, wr as ChartLine, wt as Puzzle, x as UserCheck, xn as Hash, xr as ChevronLeft, xt as RadioTower, y as Users, yn as History, yr as ChevronUp, yt as RefreshCw, z as Tag, zn as EyeOff, zr as BellRing, zt as Navigation } from "./index.js";
|
|
5
5
|
/**
|
|
6
6
|
* @license lucide-react v0.576.0 - ISC
|
|
7
7
|
*
|
|
@@ -27093,34 +27093,6 @@ var RemoveFormatting = createLucideIcon("remove-formatting", [
|
|
|
27093
27093
|
* This source code is licensed under the ISC license.
|
|
27094
27094
|
* See the LICENSE file in the root directory of this source tree.
|
|
27095
27095
|
*/
|
|
27096
|
-
var Repeat1 = createLucideIcon("repeat-1", [
|
|
27097
|
-
["path", {
|
|
27098
|
-
d: "m17 2 4 4-4 4",
|
|
27099
|
-
key: "nntrym"
|
|
27100
|
-
}],
|
|
27101
|
-
["path", {
|
|
27102
|
-
d: "M3 11v-1a4 4 0 0 1 4-4h14",
|
|
27103
|
-
key: "84bu3i"
|
|
27104
|
-
}],
|
|
27105
|
-
["path", {
|
|
27106
|
-
d: "m7 22-4-4 4-4",
|
|
27107
|
-
key: "1wqhfi"
|
|
27108
|
-
}],
|
|
27109
|
-
["path", {
|
|
27110
|
-
d: "M21 13v1a4 4 0 0 1-4 4H3",
|
|
27111
|
-
key: "1rx37r"
|
|
27112
|
-
}],
|
|
27113
|
-
["path", {
|
|
27114
|
-
d: "M11 10h1v4",
|
|
27115
|
-
key: "70cz1p"
|
|
27116
|
-
}]
|
|
27117
|
-
]);
|
|
27118
|
-
/**
|
|
27119
|
-
* @license lucide-react v0.576.0 - ISC
|
|
27120
|
-
*
|
|
27121
|
-
* This source code is licensed under the ISC license.
|
|
27122
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
27123
|
-
*/
|
|
27124
27096
|
var Repeat2 = createLucideIcon("repeat-2", [
|
|
27125
27097
|
["path", {
|
|
27126
27098
|
d: "m2 9 3-3 3 3",
|
|
@@ -27145,30 +27117,6 @@ var Repeat2 = createLucideIcon("repeat-2", [
|
|
|
27145
27117
|
* This source code is licensed under the ISC license.
|
|
27146
27118
|
* See the LICENSE file in the root directory of this source tree.
|
|
27147
27119
|
*/
|
|
27148
|
-
var Repeat = createLucideIcon("repeat", [
|
|
27149
|
-
["path", {
|
|
27150
|
-
d: "m17 2 4 4-4 4",
|
|
27151
|
-
key: "nntrym"
|
|
27152
|
-
}],
|
|
27153
|
-
["path", {
|
|
27154
|
-
d: "M3 11v-1a4 4 0 0 1 4-4h14",
|
|
27155
|
-
key: "84bu3i"
|
|
27156
|
-
}],
|
|
27157
|
-
["path", {
|
|
27158
|
-
d: "m7 22-4-4 4-4",
|
|
27159
|
-
key: "1wqhfi"
|
|
27160
|
-
}],
|
|
27161
|
-
["path", {
|
|
27162
|
-
d: "M21 13v1a4 4 0 0 1-4 4H3",
|
|
27163
|
-
key: "1rx37r"
|
|
27164
|
-
}]
|
|
27165
|
-
]);
|
|
27166
|
-
/**
|
|
27167
|
-
* @license lucide-react v0.576.0 - ISC
|
|
27168
|
-
*
|
|
27169
|
-
* This source code is licensed under the ISC license.
|
|
27170
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
27171
|
-
*/
|
|
27172
27120
|
var ReplaceAll = createLucideIcon("replace-all", [
|
|
27173
27121
|
["path", {
|
|
27174
27122
|
d: "M14 14a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1",
|
|
@@ -29455,34 +29403,6 @@ var Shrub = createLucideIcon("shrub", [
|
|
|
29455
29403
|
* This source code is licensed under the ISC license.
|
|
29456
29404
|
* See the LICENSE file in the root directory of this source tree.
|
|
29457
29405
|
*/
|
|
29458
|
-
var Shuffle = createLucideIcon("shuffle", [
|
|
29459
|
-
["path", {
|
|
29460
|
-
d: "m18 14 4 4-4 4",
|
|
29461
|
-
key: "10pe0f"
|
|
29462
|
-
}],
|
|
29463
|
-
["path", {
|
|
29464
|
-
d: "m18 2 4 4-4 4",
|
|
29465
|
-
key: "pucp1d"
|
|
29466
|
-
}],
|
|
29467
|
-
["path", {
|
|
29468
|
-
d: "M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22",
|
|
29469
|
-
key: "1ailkh"
|
|
29470
|
-
}],
|
|
29471
|
-
["path", {
|
|
29472
|
-
d: "M2 6h1.972a4 4 0 0 1 3.6 2.2",
|
|
29473
|
-
key: "km57vx"
|
|
29474
|
-
}],
|
|
29475
|
-
["path", {
|
|
29476
|
-
d: "M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45",
|
|
29477
|
-
key: "os18l9"
|
|
29478
|
-
}]
|
|
29479
|
-
]);
|
|
29480
|
-
/**
|
|
29481
|
-
* @license lucide-react v0.576.0 - ISC
|
|
29482
|
-
*
|
|
29483
|
-
* This source code is licensed under the ISC license.
|
|
29484
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
29485
|
-
*/
|
|
29486
29406
|
var Sigma = createLucideIcon("sigma", [["path", {
|
|
29487
29407
|
d: "M18 7V5a1 1 0 0 0-1-1H6.5a.5.5 0 0 0-.4.8l4.5 6a2 2 0 0 1 0 2.4l-4.5 6a.5.5 0 0 0 .4.8H17a1 1 0 0 0 1-1v-2",
|
|
29488
29408
|
key: "wuwx1p"
|