@seamapi/react 4.1.0 → 4.3.0
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/README.md +2 -2
- package/dist/elements.js +5596 -5352
- package/dist/elements.js.map +1 -1
- package/dist/index.css +100 -12
- package/dist/index.css.map +1 -1
- package/dist/index.min.css +1 -1
- package/dist/index.min.css.map +1 -1
- package/lib/icons/AccessCodeKey.js +1 -1
- package/lib/icons/AccessCodeKey.js.map +1 -1
- package/lib/icons/Add.js +1 -1
- package/lib/icons/Add.js.map +1 -1
- package/lib/icons/ArrowBack.js +1 -1
- package/lib/icons/ArrowBack.js.map +1 -1
- package/lib/icons/ArrowRestart.js +1 -1
- package/lib/icons/ArrowRestart.js.map +1 -1
- package/lib/icons/ArrowRight.js +1 -1
- package/lib/icons/ArrowRight.js.map +1 -1
- package/lib/icons/BatteryLevelCritical.js +1 -1
- package/lib/icons/BatteryLevelCritical.js.map +1 -1
- package/lib/icons/BatteryLevelFull.js +1 -1
- package/lib/icons/BatteryLevelFull.js.map +1 -1
- package/lib/icons/BatteryLevelHigh.js +1 -1
- package/lib/icons/BatteryLevelHigh.js.map +1 -1
- package/lib/icons/BatteryLevelLow.js +1 -1
- package/lib/icons/BatteryLevelLow.js.map +1 -1
- package/lib/icons/BatteryLevelWired.js +1 -1
- package/lib/icons/BatteryLevelWired.js.map +1 -1
- package/lib/icons/Bee.js +1 -1
- package/lib/icons/Bee.js.map +1 -1
- package/lib/icons/Check.js +1 -1
- package/lib/icons/Check.js.map +1 -1
- package/lib/icons/CheckBlack.js +1 -1
- package/lib/icons/CheckBlack.js.map +1 -1
- package/lib/icons/CheckGreen.js +1 -1
- package/lib/icons/CheckGreen.js.map +1 -1
- package/lib/icons/CheckboxBlank.js +1 -1
- package/lib/icons/CheckboxBlank.js.map +1 -1
- package/lib/icons/CheckboxFilled.js +1 -1
- package/lib/icons/CheckboxFilled.js.map +1 -1
- package/lib/icons/ChevronDown.js +1 -1
- package/lib/icons/ChevronDown.js.map +1 -1
- package/lib/icons/ChevronRight.js +1 -1
- package/lib/icons/ChevronRight.js.map +1 -1
- package/lib/icons/ChevronWide.js +1 -1
- package/lib/icons/ChevronWide.js.map +1 -1
- package/lib/icons/ClimateSettingSchedule.js +1 -1
- package/lib/icons/ClimateSettingSchedule.js.map +1 -1
- package/lib/icons/Clock.js +1 -1
- package/lib/icons/Clock.js.map +1 -1
- package/lib/icons/Close.js +1 -1
- package/lib/icons/Close.js.map +1 -1
- package/lib/icons/CloseWhite.js +1 -1
- package/lib/icons/CloseWhite.js.map +1 -1
- package/lib/icons/Copy.js +1 -1
- package/lib/icons/Copy.js.map +1 -1
- package/lib/icons/DotsEllipsisMore.js +1 -1
- package/lib/icons/DotsEllipsisMore.js.map +1 -1
- package/lib/icons/Edit.js +2 -4
- package/lib/icons/Edit.js.map +1 -1
- package/lib/icons/ExclamationCircle.js +1 -1
- package/lib/icons/ExclamationCircle.js.map +1 -1
- package/lib/icons/ExclamationCircleOutline.js +1 -1
- package/lib/icons/ExclamationCircleOutline.js.map +1 -1
- package/lib/icons/Fan.js +1 -1
- package/lib/icons/Fan.js.map +1 -1
- package/lib/icons/FanOutline.js +1 -1
- package/lib/icons/FanOutline.js.map +1 -1
- package/lib/icons/Info.js +1 -1
- package/lib/icons/Info.js.map +1 -1
- package/lib/icons/InfoBlue.js +1 -1
- package/lib/icons/InfoBlue.js.map +1 -1
- package/lib/icons/InfoDark.js +1 -1
- package/lib/icons/InfoDark.js.map +1 -1
- package/lib/icons/LockLocked.js +1 -1
- package/lib/icons/LockLocked.js.map +1 -1
- package/lib/icons/LockUnlocked.js +1 -1
- package/lib/icons/LockUnlocked.js.map +1 -1
- package/lib/icons/NoiseLevels.js +1 -1
- package/lib/icons/NoiseLevels.js.map +1 -1
- package/lib/icons/NoiseLevelsRed.js +1 -1
- package/lib/icons/NoiseLevelsRed.js.map +1 -1
- package/lib/icons/Off.js +1 -1
- package/lib/icons/Off.js.map +1 -1
- package/lib/icons/OnlineStatusAccountOffline.js +1 -1
- package/lib/icons/OnlineStatusAccountOffline.js.map +1 -1
- package/lib/icons/OnlineStatusDeviceOffline.js +1 -1
- package/lib/icons/OnlineStatusDeviceOffline.js.map +1 -1
- package/lib/icons/OnlineStatusOnline.js +1 -1
- package/lib/icons/OnlineStatusOnline.js.map +1 -1
- package/lib/icons/RadioChecked.js +1 -1
- package/lib/icons/RadioChecked.js.map +1 -1
- package/lib/icons/RadioUnchecked.js +1 -1
- package/lib/icons/RadioUnchecked.js.map +1 -1
- package/lib/icons/Seam.js +1 -1
- package/lib/icons/Seam.js.map +1 -1
- package/lib/icons/Search.js +1 -1
- package/lib/icons/Search.js.map +1 -1
- package/lib/icons/TemperatureAdd.js +1 -1
- package/lib/icons/TemperatureAdd.js.map +1 -1
- package/lib/icons/TemperatureSubtract.js +1 -1
- package/lib/icons/TemperatureSubtract.js.map +1 -1
- package/lib/icons/ThermostatCool.js +1 -1
- package/lib/icons/ThermostatCool.js.map +1 -1
- package/lib/icons/ThermostatCoolLarge.js +1 -1
- package/lib/icons/ThermostatCoolLarge.js.map +1 -1
- package/lib/icons/ThermostatHeat.js +1 -1
- package/lib/icons/ThermostatHeat.js.map +1 -1
- package/lib/icons/ThermostatHeatCool.js +1 -1
- package/lib/icons/ThermostatHeatCool.js.map +1 -1
- package/lib/icons/ThermostatHeatLarge.js +1 -1
- package/lib/icons/ThermostatHeatLarge.js.map +1 -1
- package/lib/icons/ThermostatOff.js +1 -1
- package/lib/icons/ThermostatOff.js.map +1 -1
- package/lib/icons/TriangleWarning.js +1 -1
- package/lib/icons/TriangleWarning.js.map +1 -1
- package/lib/icons/TriangleWarningOutline.js +1 -1
- package/lib/icons/TriangleWarningOutline.js.map +1 -1
- package/lib/seam/components/DeviceDetails/DeviceDetails.js +15 -3
- package/lib/seam/components/DeviceDetails/DeviceDetails.js.map +1 -1
- package/lib/seam/components/DeviceDetails/DeviceInfo.js +1 -1
- package/lib/seam/components/DeviceDetails/DeviceInfo.js.map +1 -1
- package/lib/seam/components/DeviceDetails/LockDeviceDetails.d.ts +2 -1
- package/lib/seam/components/DeviceDetails/LockDeviceDetails.js +3 -2
- package/lib/seam/components/DeviceDetails/LockDeviceDetails.js.map +1 -1
- package/lib/seam/components/DeviceDetails/NoiseSensorDeviceDetails.d.ts +2 -1
- package/lib/seam/components/DeviceDetails/NoiseSensorDeviceDetails.js +3 -2
- package/lib/seam/components/DeviceDetails/NoiseSensorDeviceDetails.js.map +1 -1
- package/lib/seam/components/DeviceDetails/ThermostatDeviceDetails.d.ts +2 -1
- package/lib/seam/components/DeviceDetails/ThermostatDeviceDetails.js +2 -2
- package/lib/seam/components/DeviceDetails/ThermostatDeviceDetails.js.map +1 -1
- package/lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.d.ts +8 -0
- package/lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.js +85 -0
- package/lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.js.map +1 -0
- package/lib/seam/devices/use-update-device-name.d.ts +8 -0
- package/lib/seam/devices/use-update-device-name.js +43 -0
- package/lib/seam/devices/use-update-device-name.js.map +1 -0
- package/lib/ui/Snackbar/Snackbar.js +1 -1
- package/lib/ui/Snackbar/Snackbar.js.map +1 -1
- package/lib/ui/device/BatteryStatusIndicator.js +4 -4
- package/lib/ui/device/BatteryStatusIndicator.js.map +1 -1
- package/lib/ui/device/OnlineStatus.js +3 -3
- package/lib/ui/device/OnlineStatus.js.map +1 -1
- package/lib/ui/thermostat/ClimateModeMenu.js +1 -1
- package/lib/ui/thermostat/ClimateModeMenu.js.map +1 -1
- package/lib/ui/thermostat/ClimateSettingStatus.js +7 -1
- package/lib/ui/thermostat/ClimateSettingStatus.js.map +1 -1
- package/lib/ui/thermostat/TemperatureControlGroup.js +1 -1
- package/lib/ui/thermostat/TemperatureControlGroup.js.map +1 -1
- package/lib/ui/thermostat/ThermostatCard.d.ts +2 -1
- package/lib/ui/thermostat/ThermostatCard.js +4 -3
- package/lib/ui/thermostat/ThermostatCard.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +2 -2
- package/src/lib/icons/AccessCodeKey.tsx +3 -2
- package/src/lib/icons/Add.tsx +3 -2
- package/src/lib/icons/ArrowBack.tsx +3 -2
- package/src/lib/icons/ArrowRestart.tsx +3 -2
- package/src/lib/icons/ArrowRight.tsx +3 -2
- package/src/lib/icons/BatteryLevelCritical.tsx +3 -2
- package/src/lib/icons/BatteryLevelFull.tsx +3 -2
- package/src/lib/icons/BatteryLevelHigh.tsx +3 -2
- package/src/lib/icons/BatteryLevelLow.tsx +3 -2
- package/src/lib/icons/BatteryLevelWired.tsx +3 -2
- package/src/lib/icons/Bee.tsx +3 -2
- package/src/lib/icons/Check.tsx +3 -2
- package/src/lib/icons/CheckBlack.tsx +3 -2
- package/src/lib/icons/CheckGreen.tsx +3 -2
- package/src/lib/icons/CheckboxBlank.tsx +3 -2
- package/src/lib/icons/CheckboxFilled.tsx +3 -2
- package/src/lib/icons/ChevronDown.tsx +3 -2
- package/src/lib/icons/ChevronRight.tsx +3 -2
- package/src/lib/icons/ChevronWide.tsx +3 -2
- package/src/lib/icons/ClimateSettingSchedule.tsx +3 -2
- package/src/lib/icons/Clock.tsx +3 -2
- package/src/lib/icons/Close.tsx +3 -2
- package/src/lib/icons/CloseWhite.tsx +3 -2
- package/src/lib/icons/Copy.tsx +3 -2
- package/src/lib/icons/DotsEllipsisMore.tsx +3 -2
- package/src/lib/icons/Edit.tsx +9 -21
- package/src/lib/icons/ExclamationCircle.tsx +3 -2
- package/src/lib/icons/ExclamationCircleOutline.tsx +3 -2
- package/src/lib/icons/Fan.tsx +3 -2
- package/src/lib/icons/FanOutline.tsx +3 -2
- package/src/lib/icons/Info.tsx +3 -2
- package/src/lib/icons/InfoBlue.tsx +3 -2
- package/src/lib/icons/InfoDark.tsx +3 -2
- package/src/lib/icons/LockLocked.tsx +3 -2
- package/src/lib/icons/LockUnlocked.tsx +3 -2
- package/src/lib/icons/NoiseLevels.tsx +3 -2
- package/src/lib/icons/NoiseLevelsRed.tsx +3 -2
- package/src/lib/icons/Off.tsx +3 -2
- package/src/lib/icons/OnlineStatusAccountOffline.tsx +3 -2
- package/src/lib/icons/OnlineStatusDeviceOffline.tsx +3 -2
- package/src/lib/icons/OnlineStatusOnline.tsx +3 -2
- package/src/lib/icons/RadioChecked.tsx +3 -2
- package/src/lib/icons/RadioUnchecked.tsx +3 -2
- package/src/lib/icons/Seam.tsx +3 -2
- package/src/lib/icons/Search.tsx +3 -2
- package/src/lib/icons/TemperatureAdd.tsx +3 -2
- package/src/lib/icons/TemperatureSubtract.tsx +3 -2
- package/src/lib/icons/ThermostatCool.tsx +3 -2
- package/src/lib/icons/ThermostatCoolLarge.tsx +3 -2
- package/src/lib/icons/ThermostatHeat.tsx +3 -2
- package/src/lib/icons/ThermostatHeatCool.tsx +3 -2
- package/src/lib/icons/ThermostatHeatLarge.tsx +3 -2
- package/src/lib/icons/ThermostatOff.tsx +3 -2
- package/src/lib/icons/TriangleWarning.tsx +3 -2
- package/src/lib/icons/TriangleWarningOutline.tsx +3 -2
- package/src/lib/seam/components/DeviceDetails/DeviceDetails.tsx +35 -4
- package/src/lib/seam/components/DeviceDetails/DeviceInfo.tsx +3 -1
- package/src/lib/seam/components/DeviceDetails/LockDeviceDetails.tsx +9 -1
- package/src/lib/seam/components/DeviceDetails/NoiseSensorDeviceDetails.tsx +8 -1
- package/src/lib/seam/components/DeviceDetails/ThermostatDeviceDetails.tsx +3 -1
- package/src/lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.tsx +208 -0
- package/src/lib/seam/devices/use-update-device-name.ts +93 -0
- package/src/lib/ui/Snackbar/Snackbar.tsx +4 -1
- package/src/lib/ui/device/BatteryStatusIndicator.tsx +4 -4
- package/src/lib/ui/device/OnlineStatus.tsx +3 -3
- package/src/lib/ui/thermostat/ClimateModeMenu.tsx +1 -1
- package/src/lib/ui/thermostat/ClimateSettingStatus.tsx +10 -1
- package/src/lib/ui/thermostat/TemperatureControlGroup.tsx +2 -2
- package/src/lib/ui/thermostat/ThermostatCard.tsx +11 -6
- package/src/lib/version.ts +1 -1
- package/src/styles/_access-code-details.scss +2 -2
- package/src/styles/_alert.scss +1 -0
- package/src/styles/_buttons.scss +6 -8
- package/src/styles/_checkbox.scss +1 -0
- package/src/styles/_device-details.scss +1 -1
- package/src/styles/_icons.scss +2 -0
- package/src/styles/_inputs.scss +1 -1
- package/src/styles/_layout.scss +2 -0
- package/src/styles/_main.scss +2 -0
- package/src/styles/_radio-field.scss +1 -0
- package/src/styles/_seam-editable-device-name.scss +62 -0
- package/src/styles/_seam-table.scss +4 -3
- package/src/styles/_snackbar.scss +6 -0
- package/src/styles/_supported-device-table-manufacturer-keys.scss +1 -0
- package/src/styles/_supported-device-table.scss +1 -0
- package/src/styles/_tables.scss +3 -2
- package/src/styles/_thermostat.scss +26 -0
- package/src/styles/_typography.scss +7 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import classNames from 'classnames';
|
|
3
|
+
import { useCallback, useState, } from 'react';
|
|
4
|
+
import { CheckIcon } from '../../../../lib/icons/Check.js';
|
|
5
|
+
import { CloseIcon } from '../../../../lib/icons/Close.js';
|
|
6
|
+
import { EditIcon } from '../../../../lib/icons/Edit.js';
|
|
7
|
+
function IconButton(props) {
|
|
8
|
+
return (_jsx("button", { ...props, className: classNames('seam-editable-device-name-icon-button', props.className), children: props.children }));
|
|
9
|
+
}
|
|
10
|
+
const fixName = (name) => {
|
|
11
|
+
return name.replace(/\s+/g, ' ').trim();
|
|
12
|
+
};
|
|
13
|
+
const isValidName = (name) => {
|
|
14
|
+
if (name.length < 2) {
|
|
15
|
+
return {
|
|
16
|
+
type: 'error',
|
|
17
|
+
message: 'Name must be at least 2 characters long',
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
if (name.length > 64) {
|
|
21
|
+
return {
|
|
22
|
+
type: 'error',
|
|
23
|
+
message: 'Name must be at most 64 characters long',
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
type: 'success',
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export function SeamEditableDeviceName({ onEdit, editable = true, tagName, value, ...props }) {
|
|
31
|
+
const [editing, setEditing] = useState(false);
|
|
32
|
+
const [errorText, setErrorText] = useState(null);
|
|
33
|
+
const [currentValue, setCurrentValue] = useState(value);
|
|
34
|
+
const Tag = (tagName ?? 'span');
|
|
35
|
+
const handleCheck = useCallback(() => {
|
|
36
|
+
const fixedName = fixName(currentValue);
|
|
37
|
+
const valid = isValidName(fixedName);
|
|
38
|
+
if (valid.type === 'error') {
|
|
39
|
+
setErrorText(valid.message);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
setEditing(false);
|
|
43
|
+
setCurrentValue(fixedName);
|
|
44
|
+
onEdit?.(fixedName);
|
|
45
|
+
}, [currentValue, onEdit]);
|
|
46
|
+
const handleChange = useCallback((event) => {
|
|
47
|
+
setCurrentValue(event.target.value);
|
|
48
|
+
setErrorText(null);
|
|
49
|
+
}, []);
|
|
50
|
+
const handleCancel = useCallback(() => {
|
|
51
|
+
setEditing(false);
|
|
52
|
+
setCurrentValue(value);
|
|
53
|
+
setErrorText(null);
|
|
54
|
+
}, [value]);
|
|
55
|
+
const handleInputKeydown = useCallback((e) => {
|
|
56
|
+
if (e.repeat)
|
|
57
|
+
return;
|
|
58
|
+
if (e.key === 'Enter') {
|
|
59
|
+
handleCheck();
|
|
60
|
+
}
|
|
61
|
+
else if (e.key === 'Escape') {
|
|
62
|
+
handleCancel();
|
|
63
|
+
}
|
|
64
|
+
}, [handleCheck, handleCancel]);
|
|
65
|
+
return (_jsxs(Tag, { ...props, className: classNames('seam-editable-device-name', props.className), children: [_jsx(NameView, { editing: editing, value: currentValue, onChange: handleChange, onKeyDown: handleInputKeydown, errorText: errorText }), editable && (_jsx("span", { className: 'seam-editable-device-name-icon-wrapper', children: _jsx(ActionButtons, { editing: editing, onEdit: () => {
|
|
66
|
+
setEditing(true);
|
|
67
|
+
}, onCancel: handleCancel, onCheck: handleCheck }) }))] }));
|
|
68
|
+
}
|
|
69
|
+
function NameView(props) {
|
|
70
|
+
if (!props.editing) {
|
|
71
|
+
return _jsx("span", { children: props.value });
|
|
72
|
+
}
|
|
73
|
+
return (_jsxs("span", { className: 'seam-editable-device-name-input-wrapper', children: [_jsx("input", { type: 'text', defaultValue: props.value, onChange: props.onChange, onKeyDown: props.onKeyDown, ref: (el) => {
|
|
74
|
+
setTimeout(() => {
|
|
75
|
+
el?.focus();
|
|
76
|
+
}, 0);
|
|
77
|
+
} }), props.errorText != null && (_jsx("span", { className: 'seam-editable-device-name-input-error', children: props.errorText }))] }));
|
|
78
|
+
}
|
|
79
|
+
function ActionButtons(props) {
|
|
80
|
+
if (props.editing) {
|
|
81
|
+
return (_jsxs(_Fragment, { children: [_jsx(IconButton, { onClick: props.onCheck, children: _jsx(CheckIcon, { width: '1em', height: '1em', viewBox: '0 0 24 24' }) }), _jsx(IconButton, { onClick: props.onCancel, children: _jsx(CloseIcon, { width: '1em', height: '1em', viewBox: '0 0 24 24' }) })] }));
|
|
82
|
+
}
|
|
83
|
+
return (_jsx(IconButton, { onClick: props.onEdit, children: _jsx(EditIcon, { width: '1em', height: '1em', viewBox: '0 0 24 24' }) }));
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=SeamEditableDeviceName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SeamEditableDeviceName.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { DevicesGetParams, DevicesUpdateBody, SeamHttpApiError } from '@seamapi/http/connect';
|
|
2
|
+
import { type UseMutationResult } from '@tanstack/react-query';
|
|
3
|
+
export type UseUpdateDeviceNameParams = never;
|
|
4
|
+
export type UseUpdateDeviceNameData = undefined;
|
|
5
|
+
export type UseUpdateDeviceNameMutationVariables = Pick<DevicesUpdateBody, 'device_id' | 'name'>;
|
|
6
|
+
type MutationError = SeamHttpApiError;
|
|
7
|
+
export declare function useUpdateDeviceName(params: DevicesGetParams): UseMutationResult<UseUpdateDeviceNameData, MutationError, UseUpdateDeviceNameMutationVariables>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { useMutation, useQueryClient, } from '@tanstack/react-query';
|
|
2
|
+
import { NullSeamClientError, useSeamClient } from '../../../lib/seam/use-seam-client.js';
|
|
3
|
+
export function useUpdateDeviceName(params) {
|
|
4
|
+
const { client } = useSeamClient();
|
|
5
|
+
const queryClient = useQueryClient();
|
|
6
|
+
return useMutation({
|
|
7
|
+
mutationFn: async (variables) => {
|
|
8
|
+
if (client === null)
|
|
9
|
+
throw new NullSeamClientError();
|
|
10
|
+
await client.devices.update(variables);
|
|
11
|
+
},
|
|
12
|
+
onSuccess: (_data, variables) => {
|
|
13
|
+
queryClient.setQueryData(['devices', 'get', params], (device) => {
|
|
14
|
+
if (device == null) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
return getUpdatedDevice(device, variables.name ?? device.properties.name);
|
|
18
|
+
});
|
|
19
|
+
queryClient.setQueryData(['devices', 'list', { device_id: variables.device_id }], (devices) => {
|
|
20
|
+
if (devices == null) {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
23
|
+
return devices.map((device) => {
|
|
24
|
+
if (device.device_id === variables.device_id) {
|
|
25
|
+
return getUpdatedDevice(device, variables.name ?? device.properties.name);
|
|
26
|
+
}
|
|
27
|
+
return device;
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
const getUpdatedDevice = (device, name) => {
|
|
34
|
+
const { properties } = device;
|
|
35
|
+
return {
|
|
36
|
+
...device,
|
|
37
|
+
properties: {
|
|
38
|
+
...properties,
|
|
39
|
+
name,
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=use-update-device-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-update-device-name.js","sourceRoot":"","sources":["../../../src/lib/seam/devices/use-update-device-name.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EAEX,cAAc,GACf,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAahF,MAAM,UAAU,mBAAmB,CACjC,MAAwB;IAMxB,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,OAAO,WAAW,CAIhB;QACA,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YAC9B,IAAI,MAAM,KAAK,IAAI;gBAAE,MAAM,IAAI,mBAAmB,EAAE,CAAA;YACpD,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACxC,CAAC;QACD,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAC9B,WAAW,CAAC,YAAY,CACtB,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,EAC1B,CAAC,MAAM,EAAE,EAAE;gBACT,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,OAAM;gBACR,CAAC;gBAED,OAAO,gBAAgB,CACrB,MAAM,EACN,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CACzC,CAAA;YACH,CAAC,CACF,CAAA;YAED,WAAW,CAAC,YAAY,CACtB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,EACvD,CAAC,OAAO,EAAY,EAAE;gBACpB,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;oBACpB,OAAO,EAAE,CAAA;gBACX,CAAC;gBAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC5B,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS,EAAE,CAAC;wBAC7C,OAAO,gBAAgB,CACrB,MAAM,EACN,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CACzC,CAAA;oBACH,CAAC;oBAED,OAAO,MAAM,CAAA;gBACf,CAAC,CAAC,CAAA;YACJ,CAAC,CACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,IAAY,EAAU,EAAE;IAChE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;IAE7B,OAAO;QACL,GAAG,MAAM;QACT,UAAU,EAAE;YACV,GAAG,UAAU;YACb,IAAI;SACL;KACF,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -27,7 +27,7 @@ export function Snackbar({ message, variant, visible, action, autoDismiss = fals
|
|
|
27
27
|
}, [autoDismiss, dismissAfterMs, handleClose]);
|
|
28
28
|
return (_jsx("div", { className: 'seam-snackbar-wrap', children: _jsxs("div", { className: classNames('seam-snackbar', {
|
|
29
29
|
'seam-snackbar-visible': automaticVisibility ? !hidden : visible,
|
|
30
|
-
}), children: [_jsx(SnackbarIcon, { variant: variant }), _jsx("div", { className: 'seam-snackbar-message-wrap', children: _jsx("p", { className: 'seam-snackbar-message', children: message }) }), _jsxs("div", { className: 'seam-snackbar-actions-wrap', children: [action != null && (_jsx("button", { className: 'seam-snackbar-action', onClick: handleActionClick, children: _jsx("span", { className: 'seam-snackbar-action-label', children: actionLabel }) })), !disableCloseButton && (_jsx("button", { className: 'seam-snackbar-close-button', onClick: () => {
|
|
30
|
+
}), children: [_jsx("span", { className: 'seam-snackbar-icon-wrap', children: _jsx(SnackbarIcon, { variant: variant }) }), _jsx("div", { className: 'seam-snackbar-message-wrap', children: _jsx("p", { className: 'seam-snackbar-message', children: message }) }), _jsxs("div", { className: 'seam-snackbar-actions-wrap', children: [action != null && (_jsx("button", { className: 'seam-snackbar-action', onClick: handleActionClick, children: _jsx("span", { className: 'seam-snackbar-action-label', children: actionLabel }) })), !disableCloseButton && (_jsx("button", { className: 'seam-snackbar-close-button', onClick: () => {
|
|
31
31
|
handleClose();
|
|
32
32
|
}, children: _jsx(CloseWhiteIcon, {}) }))] })] }) }));
|
|
33
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snackbar.js","sourceRoot":"","sources":["../../../src/lib/ui/Snackbar/Snackbar.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAmBtE,MAAM,UAAU,QAAQ,CAAC,EACvB,OAAO,EACP,OAAO,EACP,OAAO,EACP,MAAM,EACN,WAAW,GAAG,KAAK,EACnB,cAAc,GAAG,IAAI,EACrB,kBAAkB,GAAG,KAAK,EAC1B,mBAAmB,GAAG,KAAK,EAC3B,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GACJ;IACd,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAExB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEvE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,SAAS,CAAC,IAAI,CAAC,CAAA;QACf,OAAO,EAAE,CAAA;IACX,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE;YACzC,WAAW,EAAE,CAAA;QACf,CAAC,EAAE,cAAc,CAAC,CAAA;QAElB,OAAO,GAAG,EAAE;YACV,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAA;IAE9C,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,eACE,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE;gBACrC,uBAAuB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;aACjE,CAAC,aAEF,KAAC,YAAY,IAAC,OAAO,EAAE,OAAO,GAAI,
|
|
1
|
+
{"version":3,"file":"Snackbar.js","sourceRoot":"","sources":["../../../src/lib/ui/Snackbar/Snackbar.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAmBtE,MAAM,UAAU,QAAQ,CAAC,EACvB,OAAO,EACP,OAAO,EACP,OAAO,EACP,MAAM,EACN,WAAW,GAAG,KAAK,EACnB,cAAc,GAAG,IAAI,EACrB,kBAAkB,GAAG,KAAK,EAC1B,mBAAmB,GAAG,KAAK,EAC3B,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GACJ;IACd,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAExB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEvE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,SAAS,CAAC,IAAI,CAAC,CAAA;QACf,OAAO,EAAE,CAAA;IACX,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE;YACzC,WAAW,EAAE,CAAA;QACf,CAAC,EAAE,cAAc,CAAC,CAAA;QAElB,OAAO,GAAG,EAAE;YACV,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAA;IAE9C,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YACjC,eACE,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE;gBACrC,uBAAuB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;aACjE,CAAC,aAEF,eAAM,SAAS,EAAC,yBAAyB,YACvC,KAAC,YAAY,IAAC,OAAO,EAAE,OAAO,GAAI,GAC7B,EAEP,cAAK,SAAS,EAAC,4BAA4B,YACzC,YAAG,SAAS,EAAC,uBAAuB,YAAE,OAAO,GAAK,GAC9C,EACN,eAAK,SAAS,EAAC,4BAA4B,aACxC,MAAM,IAAI,IAAI,IAAI,CACjB,iBACE,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,iBAAiB,YAE1B,eAAM,SAAS,EAAC,4BAA4B,YAAE,WAAW,GAAQ,GAC1D,CACV,EACA,CAAC,kBAAkB,IAAI,CACtB,iBACE,SAAS,EAAC,4BAA4B,EACtC,OAAO,EAAE,GAAG,EAAE;gCACZ,WAAW,EAAE,CAAA;4BACf,CAAC,YAED,KAAC,cAAc,KAAG,GACX,CACV,IACG,IACF,GACF,CACP,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAmC;IACvD,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,KAAK,SAAS;YACZ,OAAO,KAAC,cAAc,KAAG,CAAA;QAC3B,KAAK,OAAO;YACV,OAAO,KAAC,qBAAqB,KAAG,CAAA;IACpC,CAAC;AACH,CAAC"}
|
|
@@ -9,16 +9,16 @@ export function BatteryStatusIndicator(props) {
|
|
|
9
9
|
function Content(props) {
|
|
10
10
|
const { status, level } = props;
|
|
11
11
|
if (status === 'full') {
|
|
12
|
-
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelFullIcon, {}), _jsxs("span", { className: 'seam-status-text', children: [t.full, _jsx(Percentage, { level: level })] })] }));
|
|
12
|
+
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelFullIcon, { style: { fontSize: '24px' } }), _jsxs("span", { className: 'seam-status-text', children: [t.full, _jsx(Percentage, { level: level })] })] }));
|
|
13
13
|
}
|
|
14
14
|
if (status === 'good') {
|
|
15
|
-
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelHighIcon, {}), _jsxs("span", { className: 'seam-status-text', children: [t.high, _jsx(Percentage, { level: level })] })] }));
|
|
15
|
+
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelHighIcon, { style: { fontSize: '24px' } }), _jsxs("span", { className: 'seam-status-text', children: [t.high, _jsx(Percentage, { level: level })] })] }));
|
|
16
16
|
}
|
|
17
17
|
if (status === 'low') {
|
|
18
|
-
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelLowIcon, {}), _jsxs("span", { className: 'seam-status-text', children: [t.low, _jsx(Percentage, { level: level })] })] }));
|
|
18
|
+
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelLowIcon, { style: { fontSize: '24px' } }), _jsxs("span", { className: 'seam-status-text', children: [t.low, _jsx(Percentage, { level: level })] })] }));
|
|
19
19
|
}
|
|
20
20
|
if (status === 'critical') {
|
|
21
|
-
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelCriticalIcon, {}), _jsxs("span", { className: 'seam-text-danger', children: [t.critical, _jsx(Percentage, { level: level })] })] }));
|
|
21
|
+
return (_jsxs(_Fragment, { children: [_jsx(BatteryLevelCriticalIcon, { style: { fontSize: '24px' } }), _jsxs("span", { className: 'seam-text-danger', children: [t.critical, _jsx(Percentage, { level: level })] })] }));
|
|
22
22
|
}
|
|
23
23
|
return null;
|
|
24
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BatteryStatusIndicator.js","sourceRoot":"","sources":["../../../src/lib/ui/device/BatteryStatusIndicator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AASlE,MAAM,UAAU,sBAAsB,CACpC,KAAkC;IAElC,OAAO,CACL,cAAK,SAAS,EAAC,qBAAqB,YAClC,KAAC,OAAO,IACN,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAC/C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAC7C,GACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAGhB;IACC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAE/B,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,CACL,8BACE,KAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"BatteryStatusIndicator.js","sourceRoot":"","sources":["../../../src/lib/ui/device/BatteryStatusIndicator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AASlE,MAAM,UAAU,sBAAsB,CACpC,KAAkC;IAElC,OAAO,CACL,cAAK,SAAS,EAAC,qBAAqB,YAClC,KAAC,OAAO,IACN,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAC/C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAC7C,GACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAGhB;IACC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAE/B,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,CACL,8BACE,KAAC,oBAAoB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAI,EACrD,gBAAM,SAAS,EAAC,kBAAkB,aAC/B,CAAC,CAAC,IAAI,EACP,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,IACvB,IACN,CACJ,CAAA;IACH,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,CACL,8BACE,KAAC,oBAAoB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAI,EACrD,gBAAM,SAAS,EAAC,kBAAkB,aAC/B,CAAC,CAAC,IAAI,EACP,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,IACvB,IACN,CACJ,CAAA;IACH,CAAC;IAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO,CACL,8BACE,KAAC,mBAAmB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAI,EACpD,gBAAM,SAAS,EAAC,kBAAkB,aAC/B,CAAC,CAAC,GAAG,EACN,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,IACvB,IACN,CACJ,CAAA;IACH,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1B,OAAO,CACL,8BACE,KAAC,wBAAwB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAI,EACzD,gBAAM,SAAS,EAAC,kBAAkB,aAC/B,CAAC,CAAC,QAAQ,EACX,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,IACvB,IACN,CACJ,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,UAAU,CAAC,KAEnB;IACC,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IACpC,OAAO,oCAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,UAAM,CAAA;AACjD,CAAC;AAED,MAAM,CAAC,GAAG;IACR,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,QAAQ,EAAE,MAAM;CACjB,CAAA"}
|
|
@@ -7,14 +7,14 @@ export function OnlineStatus(props) {
|
|
|
7
7
|
return (_jsx("div", { className: 'seam-online-status', children: isDeviceAccountOffline(device) ? (_jsx(AccountOfflineContent, {})) : (_jsx(AccountOnlineContent, { isOnline: device.properties.online })) }));
|
|
8
8
|
}
|
|
9
9
|
function AccountOfflineContent() {
|
|
10
|
-
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusAccountOfflineIcon, {}), _jsx("span", { className: 'seam-text-danger', children: t.accountOffline })] }));
|
|
10
|
+
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusAccountOfflineIcon, { className: 'seam-font-24' }), _jsx("span", { className: 'seam-text-danger', children: t.accountOffline })] }));
|
|
11
11
|
}
|
|
12
12
|
function AccountOnlineContent(props) {
|
|
13
13
|
const { isOnline } = props;
|
|
14
14
|
if (isOnline) {
|
|
15
|
-
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusOnlineIcon, {}), _jsx("span", { className: 'seam-status-text', children: t.online })] }));
|
|
15
|
+
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusOnlineIcon, { className: 'seam-font-24' }), _jsx("span", { className: 'seam-status-text', children: t.online })] }));
|
|
16
16
|
}
|
|
17
|
-
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusDeviceOfflineIcon, {}), _jsx("span", { className: 'seam-text-danger', children: t.deviceOffline })] }));
|
|
17
|
+
return (_jsxs(_Fragment, { children: [_jsx(OnlineStatusDeviceOfflineIcon, { className: 'seam-font-24' }), _jsx("span", { className: 'seam-text-danger', children: t.deviceOffline })] }));
|
|
18
18
|
}
|
|
19
19
|
export const isDeviceAccountOffline = (device) => device.errors.filter((error) => error.error_code === 'account_disconnected')
|
|
20
20
|
.length > 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OnlineStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/device/OnlineStatus.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAA;AACxF,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAA;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAMxE,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAExB,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YAChC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAChC,KAAC,qBAAqB,KAAG,CAC1B,CAAC,CAAC,CAAC,CACF,KAAC,oBAAoB,IAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAI,CAC7D,GACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,CACL,8BACE,KAAC,8BAA8B,
|
|
1
|
+
{"version":3,"file":"OnlineStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/device/OnlineStatus.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAA;AACxF,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAA;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAMxE,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAExB,OAAO,CACL,cAAK,SAAS,EAAC,oBAAoB,YAChC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAChC,KAAC,qBAAqB,KAAG,CAC1B,CAAC,CAAC,CAAC,CACF,KAAC,oBAAoB,IAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAI,CAC7D,GACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,CACL,8BACE,KAAC,8BAA8B,IAAC,SAAS,EAAC,cAAc,GAAG,EAC3D,eAAM,SAAS,EAAC,kBAAkB,YAAE,CAAC,CAAC,cAAc,GAAQ,IAC3D,CACJ,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA4B;IACxD,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC1B,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,8BACE,KAAC,sBAAsB,IAAC,SAAS,EAAC,cAAc,GAAG,EACnD,eAAM,SAAS,EAAC,kBAAkB,YAAE,CAAC,CAAC,MAAM,GAAQ,IACnD,CACJ,CAAA;IACH,CAAC;IAED,OAAO,CACL,8BACE,KAAC,6BAA6B,IAAC,SAAS,EAAC,cAAc,GAAG,EAC1D,eAAM,SAAS,EAAC,kBAAkB,YAAE,CAAC,CAAC,aAAa,GAAQ,IAC1D,CACJ,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAW,EAAE,CAChE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,sBAAsB,CAAC;KACzE,MAAM,GAAG,CAAC,CAAA;AAEf,MAAM,CAAC,GAAG;IACR,MAAM,EAAE,QAAQ;IAChB,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE,gBAAgB;CAChC,CAAA"}
|
|
@@ -7,7 +7,7 @@ import { ThermostatHeatCoolIcon } from '../../../lib/icons/ThermostatHeatCool.js
|
|
|
7
7
|
import { Menu } from '../../../lib/ui/Menu/Menu.js';
|
|
8
8
|
import { ThermoModeMenuOption } from '../../../lib/ui/thermostat/ThermoModeMenuOption.js';
|
|
9
9
|
export function ClimateModeMenu({ mode, onChange, supportedModes = ['heat', 'cool', 'heat_cool', 'off'], }) {
|
|
10
|
-
return (_jsx(Menu, { renderButton: ({ onOpen }) => (_jsxs("button", { onClick: onOpen, className: 'seam-climate-mode-menu-button', children: [_jsx("div", { className: 'seam-climate-mode-menu-button-icon', children: _jsx(ModeIcon, { mode: mode }) }), _jsx(ChevronDownIcon, {})] })), verticalOffset: -180, horizontalOffset: -32, backgroundProps: {
|
|
10
|
+
return (_jsx(Menu, { renderButton: ({ onOpen }) => (_jsxs("button", { onClick: onOpen, className: 'seam-climate-mode-menu-button', children: [_jsx("div", { className: 'seam-climate-mode-menu-button-icon', children: _jsx(ModeIcon, { mode: mode }) }), _jsx(ChevronDownIcon, { className: 'seam-climate-mode-menu-button-chevron' })] })), verticalOffset: -180, horizontalOffset: -32, backgroundProps: {
|
|
11
11
|
className: 'seam-thermo-mode-menu',
|
|
12
12
|
}, children: supportedModes.map((m) => (_jsx(ThermoModeMenuOption, { label: t[m], icon: _jsx(ModeIcon, { mode: m }), isSelected: mode === m, onClick: () => {
|
|
13
13
|
onChange(m);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClimateModeMenu.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ClimateModeMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAQhF,MAAM,UAAU,eAAe,CAAC,EAC9B,IAAI,EACJ,QAAQ,EACR,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,GAChC;IACrB,OAAO,CACL,KAAC,IAAI,IACH,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAC5B,kBAAQ,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC,+BAA+B,aAChE,cAAK,SAAS,EAAC,oCAAoC,YACjD,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,GACpB,EACN,KAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"ClimateModeMenu.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ClimateModeMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAQhF,MAAM,UAAU,eAAe,CAAC,EAC9B,IAAI,EACJ,QAAQ,EACR,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,GAChC;IACrB,OAAO,CACL,KAAC,IAAI,IACH,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAC5B,kBAAQ,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC,+BAA+B,aAChE,cAAK,SAAS,EAAC,oCAAoC,YACjD,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,GACpB,EACN,KAAC,eAAe,IAAC,SAAS,EAAC,uCAAuC,GAAG,IAC9D,CACV,EACD,cAAc,EAAE,CAAC,GAAG,EACpB,gBAAgB,EAAE,CAAC,EAAE,EACrB,eAAe,EAAE;YACf,SAAS,EAAE,uBAAuB;SACnC,YAEA,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACzB,KAAC,oBAAoB,IAEnB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EACX,IAAI,EAAE,KAAC,QAAQ,IAAC,IAAI,EAAE,CAAC,GAAI,EAC3B,UAAU,EAAE,IAAI,KAAK,CAAC,EACtB,OAAO,EAAE,GAAG,EAAE;gBACZ,QAAQ,CAAC,CAAC,CAAC,CAAA;YACb,CAAC,IANI,CAAC,CAON,CACH,CAAC,GACG,CACR,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAgC;IAChD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,KAAC,kBAAkB,KAAG,CAAA;QAC/B,KAAK,MAAM;YACT,OAAO,KAAC,kBAAkB,KAAG,CAAA;QAC/B,KAAK,WAAW;YACd,OAAO,KAAC,sBAAsB,KAAG,CAAA;QACnC,KAAK,KAAK;YACR,OAAO,KAAC,OAAO,KAAG,CAAA;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,aAAa;IACxB,GAAG,EAAE,KAAK;CACX,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import classNames from 'classnames';
|
|
2
3
|
import { ThermostatCoolIcon } from '../../../lib/icons/ThermostatCool.js';
|
|
3
4
|
import { ThermostatHeatIcon } from '../../../lib/icons/ThermostatHeat.js';
|
|
4
5
|
import { ThermostatHeatCoolIcon } from '../../../lib/icons/ThermostatHeatCool.js';
|
|
@@ -15,7 +16,12 @@ export function ClimateSettingStatus({ climateSetting, temperatureUnit = 'fahren
|
|
|
15
16
|
}
|
|
16
17
|
function ClimateSettingIcon(props) {
|
|
17
18
|
const { mode } = props;
|
|
18
|
-
return (_jsxs("div", { className: 'seam-climate-setting-status-icon',
|
|
19
|
+
return (_jsxs("div", { className: classNames('seam-climate-setting-status-icon', {
|
|
20
|
+
'seam-climate-setting-status-icon-cool': mode === 'cool',
|
|
21
|
+
'seam-climate-setting-status-icon-heat': mode === 'heat',
|
|
22
|
+
'seam-climate-setting-status-icon-heat-cool': mode === 'heat_cool',
|
|
23
|
+
'seam-climate-setting-status-icon-off': mode === 'off',
|
|
24
|
+
}), children: [mode === 'cool' && _jsx(ThermostatCoolIcon, {}), mode === 'heat' && _jsx(ThermostatHeatIcon, {}), mode === 'heat_cool' && _jsx(ThermostatHeatCoolIcon, {}), mode === 'off' && _jsx(ThermostatOffIcon, {})] }));
|
|
19
25
|
}
|
|
20
26
|
function Content(props) {
|
|
21
27
|
const { mode, coolingSetPoint, heatingSetPoint, temperatureUnit } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClimateSettingStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ClimateSettingStatus.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAQ9D,MAAM,UAAU,oBAAoB,CAAC,EACnC,cAAc,EACd,eAAe,GAAG,YAAY,EAC9B,aAAa,GAAG,MAAM,GACI;IAC1B,OAAO,CACL,eAAK,SAAS,EAAC,6BAA6B,aACzC,aAAa,KAAK,MAAM,IAAI,CAC3B,KAAC,kBAAkB,IAAC,IAAI,EAAE,cAAc,CAAC,iBAAiB,GAAI,CAC/D,EACD,KAAC,OAAO,IACN,IAAI,EAAE,cAAc,CAAC,iBAAiB,EACtC,eAAe,EAAE;oBACf,UAAU,EAAE,cAAc,CAAC,4BAA4B;oBACvD,OAAO,EAAE,cAAc,CAAC,yBAAyB;iBAClD,EACD,eAAe,EAAE;oBACf,UAAU,EAAE,cAAc,CAAC,4BAA4B;oBACvD,OAAO,EAAE,cAAc,CAAC,yBAAyB;iBAClD,EACD,eAAe,EAAE,eAAe,GAChC,EACD,aAAa,KAAK,OAAO,IAAI,CAC5B,KAAC,kBAAkB,IAAC,IAAI,EAAE,cAAc,CAAC,iBAAiB,GAAI,CAC/D,IACG,CACP,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAE3B;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAEtB,OAAO,CACL,
|
|
1
|
+
{"version":3,"file":"ClimateSettingStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ClimateSettingStatus.tsx"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,6 @@ export function TemperatureControlGroup({ mode, heatValue, onHeatValueChange, co
|
|
|
74
74
|
// This is done so that both sliders are operating on the same range of numbers
|
|
75
75
|
const heatCoolSliderMin = Math.min(minCool, minHeat);
|
|
76
76
|
const heatCoolSliderMax = Math.max(maxCool, maxHeat);
|
|
77
|
-
return (_jsxs("div", { className: 'seam-temperature-control-group', children: [showHeat && (_jsxs("div", { className: 'seam-temperature-control-group-block', children: [_jsx(ThermostatHeatLargeIcon, {}), _jsx(TemperatureControl, { variant: 'heat', value: heatValue, onChange: adjustHeat, min: mode === 'heat_cool' ? heatCoolSliderMin : minHeat, max: mode === 'heat_cool' ? heatCoolSliderMax : maxHeat })] })), showCool && (_jsxs("div", { className: 'seam-temperature-control-group-block', children: [_jsx(ThermostatCoolLargeIcon, {}), _jsx(TemperatureControl, { variant: 'cool', value: coolValue, onChange: adjustCool, min: mode === 'heat_cool' ? heatCoolSliderMin : minCool, max: mode === 'heat_cool' ? heatCoolSliderMax : maxCool })] }))] }));
|
|
77
|
+
return (_jsxs("div", { className: 'seam-temperature-control-group', children: [showHeat && (_jsxs("div", { className: 'seam-temperature-control-group-block', children: [_jsx(ThermostatHeatLargeIcon, { className: 'seam-temperature-control-group-block-thermostat-icon' }), _jsx(TemperatureControl, { variant: 'heat', value: heatValue, onChange: adjustHeat, min: mode === 'heat_cool' ? heatCoolSliderMin : minHeat, max: mode === 'heat_cool' ? heatCoolSliderMax : maxHeat })] })), showCool && (_jsxs("div", { className: 'seam-temperature-control-group-block', children: [_jsx(ThermostatCoolLargeIcon, { className: 'seam-temperature-control-group-block-thermostat-icon' }), _jsx(TemperatureControl, { variant: 'cool', value: coolValue, onChange: adjustCool, min: mode === 'heat_cool' ? heatCoolSliderMin : minCool, max: mode === 'heat_cool' ? heatCoolSliderMax : maxCool })] }))] }));
|
|
78
78
|
}
|
|
79
79
|
//# sourceMappingURL=TemperatureControlGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TemperatureControlGroup.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/TemperatureControlGroup.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TemperatureControlGroup.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/TemperatureControlGroup.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import type { ThermostatDevice } from '../../../lib/seam/thermostats/thermostat-device.js';
|
|
3
3
|
interface ThermostatCardProps {
|
|
4
4
|
device: ThermostatDevice;
|
|
5
|
+
onEditName?: (newName: string) => void;
|
|
5
6
|
}
|
|
6
|
-
export declare function ThermostatCard(
|
|
7
|
+
export declare function ThermostatCard(props: ThermostatCardProps): JSX.Element;
|
|
7
8
|
export {};
|
|
@@ -3,11 +3,12 @@ import classNames from 'classnames';
|
|
|
3
3
|
import { useState } from 'react';
|
|
4
4
|
import { FanIcon } from '../../../lib/icons/Fan.js';
|
|
5
5
|
import { OffIcon } from '../../../lib/icons/Off.js';
|
|
6
|
+
import { SeamEditableDeviceName } from '../../../lib/seam/components/SeamEditableDeviceName/SeamEditableDeviceName.js';
|
|
6
7
|
import { DeviceImage } from '../../../lib/ui/device/DeviceImage.js';
|
|
7
8
|
import { ClimateSettingStatus } from '../../../lib/ui/thermostat/ClimateSettingStatus.js';
|
|
8
9
|
import { Temperature } from '../../../lib/ui/thermostat/Temperature.js';
|
|
9
|
-
export function ThermostatCard(
|
|
10
|
-
return (_jsx("div", { className: 'seam-thermostat-card', children: _jsx(Content, { device: device }) }));
|
|
10
|
+
export function ThermostatCard(props) {
|
|
11
|
+
return (_jsx("div", { className: 'seam-thermostat-card', children: _jsx(Content, { device: props.device, onEditName: props.onEditName }) }));
|
|
11
12
|
}
|
|
12
13
|
function Content(props) {
|
|
13
14
|
const { device } = props;
|
|
@@ -17,7 +18,7 @@ function Content(props) {
|
|
|
17
18
|
};
|
|
18
19
|
const { temperature_fahrenheit: temperatureFahrenheit, temperature_celsius: temperatureCelsius, current_climate_setting: currentClimateSetting, is_fan_running: isFanRunning, relative_humidity: relativeHumidity, } = device.properties;
|
|
19
20
|
const systemStatus = getSystemStatus(device);
|
|
20
|
-
return (_jsxs("div", { className: 'seam-thermostat-card-content', children: [_jsx("div", { className: 'seam-thermostat-card-image-wrap', children: _jsx(DeviceImage, { device: device }) }), _jsxs("div", { className: 'seam-thermostat-card-details', children: [_jsxs("div", { className: 'seam-thermostat-heading-wrap', children: [_jsx(
|
|
21
|
+
return (_jsxs("div", { className: 'seam-thermostat-card-content', children: [_jsx("div", { className: 'seam-thermostat-card-image-wrap', children: _jsx(DeviceImage, { device: device }) }), _jsxs("div", { className: 'seam-thermostat-card-details', children: [_jsxs("div", { className: 'seam-thermostat-heading-wrap', children: [_jsx(SeamEditableDeviceName, { value: device.properties.name, tagName: 'h4', className: 'seam-thermostat-card-heading', onEdit: props.onEditName }), _jsx("button", { onClick: toggleTemperatureUnit, className: 'seam-thermostat-temperature-toggle', children: _jsx("span", { className: 'seam-thermostat-temperature-toggle-label', children: temperatureUnit === 'fahrenheit' ? t.fahrenheit : t.celsius }) })] }), _jsx("div", { className: 'seam-thermostat-properties-wrap', children: _jsxs("div", { className: 'seam-thermostat-properties', children: [_jsx("div", { className: 'seam-thermostat-property-block', children: _jsxs("p", { className: 'seam-thermostat-property-label', children: [t.temperature, ":"] }) }), _jsxs("div", { className: 'seam-thermostat-property-block', children: [_jsx("p", { className: 'seam-thermostat-property-value', children: _jsx(Temperature, { fahrenheit: temperatureFahrenheit, celsius: temperatureCelsius, unit: temperatureUnit }) }), _jsx("p", { className: 'seam-thermostat-property-value', children: "|" }), _jsxs("p", { className: 'seam-thermostat-property-label', children: [t.humidity, ":"] }), relativeHumidity != null && (_jsxs("p", { className: 'seam-thermostat-property-value', children: [relativeHumidity * 100, "%"] }))] }), _jsx("div", { className: 'seam-thermostat-property-block', children: _jsxs("p", { className: 'seam-thermostat-property-label', children: [t.setting, ":"] }) }), _jsx("div", { className: 'seam-thermostat-property-block', children: _jsx(ClimateSettingStatus, { climateSetting: currentClimateSetting, temperatureUnit: temperatureUnit }) }), _jsx("div", { className: 'seam-thermostat-property-block', children: _jsxs("p", { className: 'seam-thermostat-property-label', children: [t.fanMode, ":"] }) }), _jsxs("div", { className: 'seam-thermostat-property-block seam-thermostat-property-icon-block', children: [_jsx("div", { className: 'seam-thermostat-property-icon', children: isFanRunning ? _jsx(FanIcon, {}) : _jsx(OffIcon, {}) }), _jsx("p", { className: 'seam-thermostat-property-value', children: isFanRunning ? t.auto : t.off })] }), _jsx("div", { className: 'seam-thermostat-property-block', children: _jsxs("p", { className: 'seam-thermostat-property-label', children: [t.systemStatus, ":"] }) }), _jsx("div", { className: 'seam-thermostat-property-block', children: _jsx("div", { className: classNames('seam-thermostat-property-tag', `seam-thermostat-property-tag-${systemStatus}`), children: _jsx("p", { className: 'seam-thermostat-property-tag-label', children: systemStatus === 'off' ? '--' : t[systemStatus] }) }) })] }) })] })] }));
|
|
21
22
|
}
|
|
22
23
|
const getSystemStatus = (device) => {
|
|
23
24
|
const { properties } = device;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThermostatCard.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ThermostatCard.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"ThermostatCard.js","sourceRoot":"","sources":["../../../src/lib/ui/thermostat/ThermostatCard.tsx"],"names":[],"mappings":"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"}
|
package/lib/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const seamapiReactVersion = "4.
|
|
1
|
+
declare const seamapiReactVersion = "4.3.0";
|
|
2
2
|
export default seamapiReactVersion;
|
package/lib/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seamapi/react",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.0",
|
|
4
4
|
"description": "Seam Components.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"examples:preview": "vite preview examples",
|
|
98
98
|
"examples:storybook": "vite examples --host --clearScreen false --mode storybook",
|
|
99
99
|
"preexamples:preview": "npm run examples:build",
|
|
100
|
-
"generate": "svgr --out-dir src/lib/icons -- assets/icons",
|
|
100
|
+
"generate": "svgr --icon --out-dir src/lib/icons -- assets/icons",
|
|
101
101
|
"pregenerate": "del src/lib/icons",
|
|
102
102
|
"postgenerate": "eslint --fix src/lib/icons",
|
|
103
103
|
"format": "eslint --ignore-path .gitignore --fix .",
|
|
@@ -7,9 +7,10 @@ export function AccessCodeKeyIcon(props: SVGProps<SVGSVGElement>): JSX.Element {
|
|
|
7
7
|
return (
|
|
8
8
|
<svg
|
|
9
9
|
xmlns='http://www.w3.org/2000/svg'
|
|
10
|
-
width=
|
|
11
|
-
height=
|
|
10
|
+
width='1em'
|
|
11
|
+
height='1em'
|
|
12
12
|
fill='none'
|
|
13
|
+
viewBox='0 0 24 24'
|
|
13
14
|
{...props}
|
|
14
15
|
>
|
|
15
16
|
<path
|
package/src/lib/icons/Add.tsx
CHANGED
|
@@ -7,9 +7,10 @@ export function ArrowBackIcon(props: SVGProps<SVGSVGElement>): JSX.Element {
|
|
|
7
7
|
return (
|
|
8
8
|
<svg
|
|
9
9
|
xmlns='http://www.w3.org/2000/svg'
|
|
10
|
-
width=
|
|
11
|
-
height=
|
|
10
|
+
width='1em'
|
|
11
|
+
height='1em'
|
|
12
12
|
fill='none'
|
|
13
|
+
viewBox='0 0 24 24'
|
|
13
14
|
{...props}
|
|
14
15
|
>
|
|
15
16
|
<mask
|
|
@@ -7,9 +7,10 @@ export function ArrowRestartIcon(props: SVGProps<SVGSVGElement>): JSX.Element {
|
|
|
7
7
|
return (
|
|
8
8
|
<svg
|
|
9
9
|
xmlns='http://www.w3.org/2000/svg'
|
|
10
|
-
width=
|
|
11
|
-
height=
|
|
10
|
+
width='1em'
|
|
11
|
+
height='1em'
|
|
12
12
|
fill='none'
|
|
13
|
+
viewBox='0 0 24 24'
|
|
13
14
|
{...props}
|
|
14
15
|
>
|
|
15
16
|
<mask
|
|
@@ -7,9 +7,10 @@ export function ArrowRightIcon(props: SVGProps<SVGSVGElement>): JSX.Element {
|
|
|
7
7
|
return (
|
|
8
8
|
<svg
|
|
9
9
|
xmlns='http://www.w3.org/2000/svg'
|
|
10
|
-
width=
|
|
11
|
-
height=
|
|
10
|
+
width='1em'
|
|
11
|
+
height='1em'
|
|
12
12
|
fill='none'
|
|
13
|
+
viewBox='0 0 18 19'
|
|
13
14
|
{...props}
|
|
14
15
|
>
|
|
15
16
|
<mask
|
package/src/lib/icons/Bee.tsx
CHANGED
package/src/lib/icons/Check.tsx
CHANGED