@seamapi/react 1.47.0 → 1.48.1

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.
Files changed (126) hide show
  1. package/README.md +1 -1
  2. package/dist/elements.js +3312 -3292
  3. package/dist/elements.js.map +1 -1
  4. package/dist/index.css +465 -1
  5. package/dist/index.css.map +1 -1
  6. package/dist/index.min.css +1 -1
  7. package/dist/index.min.css.map +1 -1
  8. package/lib/dates.d.ts +9 -0
  9. package/lib/dates.js +15 -0
  10. package/lib/dates.js.map +1 -1
  11. package/lib/icons/ArrowRight.d.ts +2 -0
  12. package/lib/icons/ArrowRight.js +7 -0
  13. package/lib/icons/ArrowRight.js.map +1 -0
  14. package/lib/icons/Info.d.ts +2 -0
  15. package/lib/icons/Info.js +7 -0
  16. package/lib/icons/Info.js.map +1 -0
  17. package/lib/icons/InfoDark.d.ts +2 -0
  18. package/lib/icons/InfoDark.js +7 -0
  19. package/lib/icons/InfoDark.js.map +1 -0
  20. package/lib/icons/TemperatureAdd.d.ts +2 -0
  21. package/lib/icons/TemperatureAdd.js +7 -0
  22. package/lib/icons/TemperatureAdd.js.map +1 -0
  23. package/lib/icons/TemperatureSubtract.d.ts +2 -0
  24. package/lib/icons/TemperatureSubtract.js +7 -0
  25. package/lib/icons/TemperatureSubtract.js.map +1 -0
  26. package/lib/seam/SeamProvider.d.ts +2 -2
  27. package/lib/seam/SeamProvider.js.map +1 -1
  28. package/lib/seam/access-codes/use-generate-access-code-code.d.ts +6 -0
  29. package/lib/seam/access-codes/use-generate-access-code-code.js +13 -0
  30. package/lib/seam/access-codes/use-generate-access-code-code.js.map +1 -0
  31. package/lib/seam/components/AccessCodeDetails/AccessCodeDetails.js.map +1 -1
  32. package/lib/seam/components/AccessCodeDetails/AccessCodeDevice.js +1 -1
  33. package/lib/seam/components/AccessCodeDetails/AccessCodeDevice.js.map +1 -1
  34. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.d.ts +6 -0
  35. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.js +41 -0
  36. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.js.map +1 -0
  37. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.d.ts +4 -0
  38. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.js +29 -0
  39. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.js.map +1 -0
  40. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.js +2 -2
  41. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.js.map +1 -1
  42. package/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.d.ts → ClimateSettingScheduleRowDetails.d.ts} +1 -1
  43. package/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.js → ClimateSettingScheduleRowDetails.js} +2 -2
  44. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRowDetails.js.map +1 -0
  45. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.d.ts +6 -1
  46. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.js +21 -4
  47. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.js.map +1 -1
  48. package/lib/seam/components/DeviceTable/DeviceTable.js +2 -2
  49. package/lib/seam/components/DeviceTable/DeviceTable.js.map +1 -1
  50. package/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedule.d.ts +5 -0
  51. package/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedule.js +24 -0
  52. package/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedule.js.map +1 -0
  53. package/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.js +1 -0
  54. package/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.js.map +1 -1
  55. package/lib/seam/thermostats/climate-setting-schedules/use-create-climate-setting-schedule.d.ts +5 -0
  56. package/lib/seam/thermostats/climate-setting-schedules/use-create-climate-setting-schedule.js +21 -0
  57. package/lib/seam/thermostats/climate-setting-schedules/use-create-climate-setting-schedule.js.map +1 -0
  58. package/lib/seam/thermostats/climate-setting-schedules/use-delete-climate-setting-schedule.d.ts +5 -0
  59. package/lib/seam/thermostats/climate-setting-schedules/use-delete-climate-setting-schedule.js +27 -0
  60. package/lib/seam/thermostats/climate-setting-schedules/use-delete-climate-setting-schedule.js.map +1 -0
  61. package/lib/seam/use-seam-client.js +2 -2
  62. package/lib/seam/use-seam-client.js.map +1 -1
  63. package/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.js +1 -1
  64. package/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.js.map +1 -1
  65. package/lib/ui/Menu/Menu.js +5 -5
  66. package/lib/ui/Menu/Menu.js.map +1 -1
  67. package/lib/ui/Switch/Switch.d.ts +8 -0
  68. package/lib/ui/Switch/Switch.js +15 -0
  69. package/lib/ui/Switch/Switch.js.map +1 -0
  70. package/lib/ui/TextField/TextField.js +1 -3
  71. package/lib/ui/TextField/TextField.js.map +1 -1
  72. package/lib/ui/Tooltip/Tooltip.d.ts +2 -0
  73. package/lib/ui/Tooltip/Tooltip.js +33 -0
  74. package/lib/ui/Tooltip/Tooltip.js.map +1 -0
  75. package/lib/ui/clipboard.js +1 -1
  76. package/lib/ui/clipboard.js.map +1 -1
  77. package/lib/ui/thermostat/ClimateSettingStatus.js +10 -3
  78. package/lib/ui/thermostat/ClimateSettingStatus.js.map +1 -1
  79. package/lib/ui/thermostat/TemperatureControl.d.ts +11 -0
  80. package/lib/ui/thermostat/TemperatureControl.js +42 -0
  81. package/lib/ui/thermostat/TemperatureControl.js.map +1 -0
  82. package/lib/ui/use-current-time.d.ts +2 -0
  83. package/lib/ui/use-current-time.js +12 -0
  84. package/lib/ui/use-current-time.js.map +1 -0
  85. package/lib/version.d.ts +1 -1
  86. package/lib/version.js +1 -1
  87. package/package.json +7 -7
  88. package/src/lib/dates.ts +17 -0
  89. package/src/lib/element.tsx +6 -4
  90. package/src/lib/icons/ArrowRight.tsx +36 -0
  91. package/src/lib/icons/Info.tsx +36 -0
  92. package/src/lib/icons/InfoDark.tsx +37 -0
  93. package/src/lib/icons/TemperatureAdd.tsx +38 -0
  94. package/src/lib/icons/TemperatureSubtract.tsx +35 -0
  95. package/src/lib/seam/SeamProvider.tsx +2 -3
  96. package/src/lib/seam/access-codes/use-generate-access-code-code.ts +38 -0
  97. package/src/lib/seam/components/AccessCodeDetails/AccessCodeDetails.tsx +0 -2
  98. package/src/lib/seam/components/AccessCodeDetails/AccessCodeDevice.tsx +1 -4
  99. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.tsx +101 -0
  100. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.tsx +58 -0
  101. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.tsx +2 -2
  102. package/src/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.tsx → ClimateSettingScheduleRowDetails.tsx} +1 -1
  103. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.element.ts +4 -0
  104. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.tsx +59 -6
  105. package/src/lib/seam/components/DeviceTable/DeviceTable.tsx +2 -2
  106. package/src/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedule.ts +47 -0
  107. package/src/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.ts +1 -0
  108. package/src/lib/seam/thermostats/climate-setting-schedules/use-create-climate-setting-schedule.ts +48 -0
  109. package/src/lib/seam/thermostats/climate-setting-schedules/use-delete-climate-setting-schedule.ts +53 -0
  110. package/src/lib/seam/use-seam-client.ts +2 -2
  111. package/src/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.tsx +2 -2
  112. package/src/lib/ui/Menu/Menu.tsx +5 -6
  113. package/src/lib/ui/Switch/Switch.tsx +38 -0
  114. package/src/lib/ui/TextField/TextField.tsx +1 -3
  115. package/src/lib/ui/Tooltip/Tooltip.tsx +64 -0
  116. package/src/lib/ui/clipboard.ts +1 -1
  117. package/src/lib/ui/thermostat/ClimateSettingStatus.tsx +12 -10
  118. package/src/lib/ui/thermostat/TemperatureControl.tsx +121 -0
  119. package/src/lib/ui/use-current-time.ts +16 -0
  120. package/src/lib/version.ts +1 -1
  121. package/src/styles/_colors.scss +4 -0
  122. package/src/styles/_main.scss +4 -0
  123. package/src/styles/_switch.scss +53 -0
  124. package/src/styles/_thermostat.scss +384 -2
  125. package/src/styles/_tooltip.scss +86 -0
  126. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleDetails.js.map +0 -1
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { isThermostatDevice } from 'seamapi';
3
+ import { ChevronRightIcon } from '../../../../lib/icons/ChevronRight.js';
4
+ import { useDevice } from '../../../../lib/seam/devices/use-device.js';
5
+ import { DeviceImage } from '../../../../lib/ui/device/DeviceImage.js';
6
+ import { ClimateSettingStatus } from '../../../../lib/ui/thermostat/ClimateSettingStatus.js';
7
+ export function ClimateSettingScheduleDeviceBar({ deviceId, }) {
8
+ const { isLoading, device } = useDevice({
9
+ device_id: deviceId,
10
+ });
11
+ if (isLoading) {
12
+ return null;
13
+ }
14
+ if (device == null) {
15
+ return null;
16
+ }
17
+ if (!isThermostatDevice(device)) {
18
+ return null;
19
+ }
20
+ return _jsx(Content, { device: device });
21
+ }
22
+ function Content(props) {
23
+ const { device } = props;
24
+ return (_jsxs("div", { className: 'seam-climate-setting-schedule-device-bar', children: [_jsxs("div", { className: 'seam-climate-setting-schedule-device-content', children: [_jsx("div", { className: 'seam-device-image', children: _jsx(DeviceImage, { device: device }) }), _jsxs("div", { className: 'seam-climate-setting-schedule-device-details', children: [_jsx("div", { className: 'seam-device-name', children: device.properties.name }), _jsxs("div", { className: 'seam-device-current-climate-setting', children: [t.currentClimate, ":", _jsx(ClimateSettingStatus, { climateSetting: device.properties.current_climate_setting })] })] })] }), _jsx(ChevronRightIcon, {})] }));
25
+ }
26
+ const t = {
27
+ currentClimate: 'Current climate',
28
+ };
29
+ //# sourceMappingURL=ClimateSettingScheduleDeviceBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClimateSettingScheduleDeviceBar.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAyB,MAAM,SAAS,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAEhF,MAAM,UAAU,+BAA+B,CAAC,EAC9C,QAAQ,GAGT;IACC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QACtC,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;IAEF,IAAI,SAAS,EAAE;QACb,OAAO,IAAI,CAAA;KACZ;IAED,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,OAAO,IAAI,CAAA;KACZ;IAED,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;QAC/B,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,KAAC,OAAO,IAAC,MAAM,EAAE,MAAM,GAAI,CAAA;AACpC,CAAC;AAED,SAAS,OAAO,CAAC,KAAmC;IAClD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAExB,OAAO,CACL,eAAK,SAAS,EAAC,0CAA0C,aACvD,eAAK,SAAS,EAAC,8CAA8C,aAC3D,cAAK,SAAS,EAAC,mBAAmB,YAChC,KAAC,WAAW,IAAC,MAAM,EAAE,MAAM,GAAI,GAC3B,EACN,eAAK,SAAS,EAAC,8CAA8C,aAC3D,cAAK,SAAS,EAAC,kBAAkB,YAAE,MAAM,CAAC,UAAU,CAAC,IAAI,GAAO,EAChE,eAAK,SAAS,EAAC,qCAAqC,aACjD,CAAC,CAAC,cAAc,OACjB,KAAC,oBAAoB,IACnB,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,uBAAuB,GACzD,IACE,IACF,IACF,EACN,KAAC,gBAAgB,KAAG,IAChB,CACP,CAAA;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,cAAc,EAAE,iBAAiB;CAClC,CAAA"}
@@ -3,8 +3,8 @@ import { ClimateSettingScheduleIcon } from '../../../../lib/icons/ClimateSetting
3
3
  import { TableCell } from '../../../../lib/ui/Table/TableCell.js';
4
4
  import { TableRow } from '../../../../lib/ui/Table/TableRow.js';
5
5
  import { Title } from '../../../../lib/ui/typography/Title.js';
6
- import { ClimateSettingScheduleDetails } from './ClimateSettingScheduleDetails.js';
6
+ import { ClimateSettingScheduleRowDetails } from './ClimateSettingScheduleRowDetails.js';
7
7
  export function ClimateSettingScheduleRow({ climateSettingSchedule, onClick, }) {
8
- return (_jsxs(TableRow, { onClick: onClick, children: [_jsx(TableCell, { className: 'seam-icon-cell', children: _jsx("div", { children: _jsx(ClimateSettingScheduleIcon, {}) }) }), _jsxs(TableCell, { className: 'seam-name-cell', children: [_jsx(Title, { className: 'seam-truncated-text', children: climateSettingSchedule.name }), _jsx(ClimateSettingScheduleDetails, { climateSettingSchedule: climateSettingSchedule })] })] }));
8
+ return (_jsxs(TableRow, { onClick: onClick, children: [_jsx(TableCell, { className: 'seam-icon-cell', children: _jsx("div", { children: _jsx(ClimateSettingScheduleIcon, {}) }) }), _jsxs(TableCell, { className: 'seam-name-cell', children: [_jsx(Title, { className: 'seam-truncated-text', children: climateSettingSchedule.name }), _jsx(ClimateSettingScheduleRowDetails, { climateSettingSchedule: climateSettingSchedule })] })] }));
9
9
  }
10
10
  //# sourceMappingURL=ClimateSettingScheduleRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClimateSettingScheduleRow.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAA;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAOlF,MAAM,UAAU,yBAAyB,CAAC,EACxC,sBAAsB,EACtB,OAAO,GACwB;IAC/B,OAAO,CACL,MAAC,QAAQ,IAAC,OAAO,EAAE,OAAO,aACxB,KAAC,SAAS,IAAC,SAAS,EAAC,gBAAgB,YACnC,wBACE,KAAC,0BAA0B,KAAG,GAC1B,GACI,EACZ,MAAC,SAAS,IAAC,SAAS,EAAC,gBAAgB,aACnC,KAAC,KAAK,IAAC,SAAS,EAAC,qBAAqB,YACnC,sBAAsB,CAAC,IAAI,GACtB,EACR,KAAC,6BAA6B,IAC5B,sBAAsB,EAAE,sBAAsB,GAC9C,IACQ,IACH,CACZ,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"ClimateSettingScheduleRow.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAA;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAA;AAOxF,MAAM,UAAU,yBAAyB,CAAC,EACxC,sBAAsB,EACtB,OAAO,GACwB;IAC/B,OAAO,CACL,MAAC,QAAQ,IAAC,OAAO,EAAE,OAAO,aACxB,KAAC,SAAS,IAAC,SAAS,EAAC,gBAAgB,YACnC,wBACE,KAAC,0BAA0B,KAAG,GAC1B,GACI,EACZ,MAAC,SAAS,IAAC,SAAS,EAAC,gBAAgB,aACnC,KAAC,KAAK,IAAC,SAAS,EAAC,qBAAqB,YACnC,sBAAsB,CAAC,IAAI,GACtB,EACR,KAAC,gCAAgC,IAC/B,sBAAsB,EAAE,sBAAsB,GAC9C,IACQ,IACH,CACZ,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import type { ClimateSettingSchedule } from 'seamapi';
3
- export declare function ClimateSettingScheduleDetails(props: {
3
+ export declare function ClimateSettingScheduleRowDetails(props: {
4
4
  climateSettingSchedule: ClimateSettingSchedule;
5
5
  }): JSX.Element;
@@ -4,7 +4,7 @@ import { useDevice } from '../../../../lib/seam/devices/use-device.js';
4
4
  import { DotDivider } from '../../../../lib/ui/layout/DotDivider.js';
5
5
  import { ClimateSettingStatus } from '../../../../lib/ui/thermostat/ClimateSettingStatus.js';
6
6
  import { useIsDateInPast } from '../../../../lib/ui/use-is-date-in-past.js';
7
- export function ClimateSettingScheduleDetails(props) {
7
+ export function ClimateSettingScheduleRowDetails(props) {
8
8
  const { climateSettingSchedule } = props;
9
9
  const { device } = useDevice({ device_id: climateSettingSchedule.device_id });
10
10
  return (_jsxs("div", { className: 'seam-details', children: [_jsx("span", { className: 'seam-device-name seam-truncated-text', children: device?.properties.name }), _jsx(DotDivider, {}), _jsx(Duration, { climateSettingSchedule: climateSettingSchedule }), _jsx(DotDivider, {}), _jsx(ClimateSettingStatus, { climateSetting: climateSettingSchedule })] }));
@@ -27,4 +27,4 @@ const t = {
27
27
  starts: 'Starts',
28
28
  ends: 'Ends',
29
29
  };
30
- //# sourceMappingURL=ClimateSettingScheduleDetails.js.map
30
+ //# sourceMappingURL=ClimateSettingScheduleRowDetails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClimateSettingScheduleRowDetails.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRowDetails.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,MAAM,UAAU,gCAAgC,CAAC,KAEhD;IACC,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAA;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,SAAS,EAAE,sBAAsB,CAAC,SAAS,EAAE,CAAC,CAAA;IAE7E,OAAO,CACL,eAAK,SAAS,EAAC,cAAc,aAC3B,eAAM,SAAS,EAAC,sCAAsC,YACnD,MAAM,EAAE,UAAU,CAAC,IAAI,GACnB,EACP,KAAC,UAAU,KAAG,EACd,KAAC,QAAQ,IAAC,sBAAsB,EAAE,sBAAsB,GAAI,EAC5D,KAAC,UAAU,KAAG,EACd,KAAC,oBAAoB,IAAC,cAAc,EAAE,sBAAsB,GAAI,IAC5D,CACP,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAEjB;IACC,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAA;IAExC,MAAM,UAAU,GACd,eAAe,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAA;IAErE,IAAI,UAAU,EAAE;QACd,OAAO,CACL,2BACG,CAAC,CAAC,IAAI,OAAG,UAAU,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAC7D,CACR,CAAA;KACF;IAED,OAAO,CACL,2BACG,CAAC,CAAC,MAAM,OAAG,UAAU,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,IAC5D,CACR,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC;QAC3C,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;KACf,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,GAAG;IACR,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACb,CAAA"}
@@ -1,7 +1,12 @@
1
1
  /// <reference types="react" />
2
+ import type { ClimateSettingSchedule } from 'seamapi';
2
3
  export interface ClimateSettingScheduleTableProps {
3
4
  deviceId: string;
5
+ disableSearch?: boolean;
6
+ climateSettingScheduleFilter?: (climateSettingSchedule: ClimateSettingSchedule, searchInputValue: string) => boolean;
7
+ climateSettingScheduleComparator?: (climateSettingScheduleA: ClimateSettingSchedule, climateSettingScheduleB: ClimateSettingSchedule) => number;
4
8
  onBack?: () => void;
9
+ heading?: string | null;
5
10
  className?: string;
6
11
  }
7
- export declare function ClimateSettingScheduleTable({ deviceId, onBack, className, }: ClimateSettingScheduleTableProps): JSX.Element;
12
+ export declare function ClimateSettingScheduleTable({ deviceId, disableSearch, climateSettingScheduleFilter, climateSettingScheduleComparator, onBack, heading, className, }: ClimateSettingScheduleTableProps): JSX.Element;
@@ -1,26 +1,43 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import classNames from 'classnames';
3
+ import { useMemo, useState } from 'react';
4
+ import { compareByCreatedAtDesc } from '../../../../lib/dates.js';
3
5
  import { useClimateSettingSchedules, } from '../../../../lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.js';
4
6
  import { ContentHeader } from '../../../../lib/ui/layout/ContentHeader.js';
5
7
  import { EmptyPlaceholder } from '../../../../lib/ui/Table/EmptyPlaceholder.js';
6
8
  import { TableBody } from '../../../../lib/ui/Table/TableBody.js';
7
9
  import { TableHeader } from '../../../../lib/ui/Table/TableHeader.js';
8
10
  import { TableTitle } from '../../../../lib/ui/Table/TableTitle.js';
11
+ import { SearchTextField } from '../../../../lib/ui/TextField/SearchTextField.js';
9
12
  import { Caption } from '../../../../lib/ui/typography/Caption.js';
10
13
  import { ClimateSettingScheduleRow } from './ClimateSettingScheduleRow.js';
11
- export function ClimateSettingScheduleTable({ deviceId, onBack, className, }) {
14
+ const defaultClimateSettingScheduleFilter = (climateSettingSchedule, searchInputValue) => {
15
+ const value = searchInputValue.trim().toLowerCase();
16
+ if (value === '')
17
+ return true;
18
+ const name = climateSettingSchedule.name ?? '';
19
+ return name.trim().toLowerCase().includes(value);
20
+ };
21
+ export function ClimateSettingScheduleTable({ deviceId, disableSearch = false, climateSettingScheduleFilter = defaultClimateSettingScheduleFilter, climateSettingScheduleComparator = compareByCreatedAtDesc, onBack, heading = t.climateSettingSchedules, className, }) {
12
22
  const { climateSettingSchedules, isLoading, isError, error } = useClimateSettingSchedules({
13
23
  device_id: deviceId,
14
24
  });
15
- // TODO filtering
16
- const filteredClimateSettingSchedules = climateSettingSchedules ?? [];
25
+ const [searchInputValue, setSearchInputValue] = useState('');
26
+ const filteredClimateSettingSchedules = useMemo(() => climateSettingSchedules
27
+ ?.filter((schedule) => climateSettingScheduleFilter(schedule, searchInputValue))
28
+ ?.sort(climateSettingScheduleComparator) ?? [], [
29
+ climateSettingSchedules,
30
+ searchInputValue,
31
+ climateSettingScheduleFilter,
32
+ climateSettingScheduleComparator,
33
+ ]);
17
34
  if (isLoading) {
18
35
  return _jsx("p", { className: className, children: "..." });
19
36
  }
20
37
  if (isError) {
21
38
  return _jsx("p", { className: className, children: error?.message });
22
39
  }
23
- return (_jsxs("div", { className: classNames('seam-table', className), children: [_jsx(ContentHeader, { onBack: onBack }), _jsx(TableHeader, { children: _jsxs(TableTitle, { children: [t.climateSettingSchedules, ' ', _jsxs(Caption, { children: ["(", filteredClimateSettingSchedules.length, ")"] })] }) }), _jsx(TableBody, { children: _jsx(Content, { climateSettingSchedules: filteredClimateSettingSchedules, onClimateSettingScheduleClick: () => { } }) })] }));
40
+ return (_jsxs("div", { className: classNames('seam-table', className), children: [_jsx(ContentHeader, { onBack: onBack }), _jsxs(TableHeader, { children: [heading != null ? (_jsxs(TableTitle, { children: [heading ?? t.climateSettingSchedules, ' ', _jsxs(Caption, { children: ["(", filteredClimateSettingSchedules.length, ")"] })] })) : (_jsx("div", { className: 'seam-fragment' })), !disableSearch && (_jsx(SearchTextField, { value: searchInputValue, onChange: setSearchInputValue, disabled: (climateSettingSchedules?.length ?? 0) === 0 }))] }), _jsx(TableBody, { children: _jsx(Content, { climateSettingSchedules: filteredClimateSettingSchedules, onClimateSettingScheduleClick: () => { } }) })] }));
24
41
  }
25
42
  function Content(props) {
26
43
  const { climateSettingSchedules, onClimateSettingScheduleClick } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"ClimateSettingScheduleTable.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EACL,0BAA0B,GAE3B,MAAM,iFAAiF,CAAA;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAEtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAQ1E,MAAM,UAAU,2BAA2B,CAAC,EAC1C,QAAQ,EACR,MAAM,EACN,SAAS,GACwB;IACjC,MAAM,EAAE,uBAAuB,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAC1D,0BAA0B,CAAC;QACzB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAA;IAEJ,iBAAiB;IACjB,MAAM,+BAA+B,GAAG,uBAAuB,IAAI,EAAE,CAAA;IAErE,IAAI,SAAS,EAAE;QACb,OAAO,YAAG,SAAS,EAAE,SAAS,oBAAS,CAAA;KACxC;IAED,IAAI,OAAO,EAAE;QACX,OAAO,YAAG,SAAS,EAAE,SAAS,YAAG,KAAK,EAAE,OAAO,GAAK,CAAA;KACrD;IAED,OAAO,CACL,eAAK,SAAS,EAAE,UAAU,CAAC,YAAY,EAAE,SAAS,CAAC,aACjD,KAAC,aAAa,IAAC,MAAM,EAAE,MAAM,GAAI,EACjC,KAAC,WAAW,cACV,MAAC,UAAU,eACR,CAAC,CAAC,uBAAuB,EAAE,GAAG,EAC/B,MAAC,OAAO,oBAAG,+BAA+B,CAAC,MAAM,SAAY,IAClD,GACD,EACd,KAAC,SAAS,cACR,KAAC,OAAO,IACN,uBAAuB,EAAE,+BAA+B,EACxD,6BAA6B,EAAE,GAAG,EAAE,GAAE,CAAC,GACvC,GACQ,IACR,CACP,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAGhB;IACC,MAAM,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,GAAG,KAAK,CAAA;IAExE,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE;QACxC,OAAO,CACL,KAAC,gBAAgB,cAAE,CAAC,CAAC,gCAAgC,GAAoB,CAC1E,CAAA;KACF;IAED,OAAO,CACL,4BACG,uBAAuB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACzC,KAAC,yBAAyB,IACxB,sBAAsB,EAAE,QAAQ,EAEhC,OAAO,EAAE,GAAG,EAAE;gBACZ,6BAA6B,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAA;YACrE,CAAC,IAHI,QAAQ,CAAC,2BAA2B,CAIzC,CACH,CAAC,GACD,CACJ,CAAA;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,uBAAuB,EAAE,2BAA2B;IACpD,gCAAgC,EAC9B,gDAAgD;CACnD,CAAA"}
1
+ {"version":3,"file":"ClimateSettingScheduleTable.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import classNames from 'classnames';
3
3
  import { useCallback, useMemo, useState } from 'react';
4
- import { isLockDevice } from 'seamapi';
4
+ import { isLockDevice, isThermostatDevice } from 'seamapi';
5
5
  import { compareByCreatedAtDesc } from '../../../../lib/dates.js';
6
6
  import { DeviceDetails } from '../../../../lib/seam/components/DeviceDetails/DeviceDetails.js';
7
7
  import { DeviceHealthBar, } from '../../../../lib/seam/components/DeviceTable/DeviceHealthBar.js';
@@ -28,7 +28,7 @@ export function DeviceTable({ deviceIds, connectedAccountIds, disableLockUnlock
28
28
  const [selectedDeviceId, setSelectedDeviceId] = useState(null);
29
29
  const [searchInputValue, setSearchInputValue] = useState('');
30
30
  const filteredDevices = useMemo(() => devices
31
- ?.filter(isLockDevice)
31
+ ?.filter((device) => isLockDevice(device) || isThermostatDevice(device))
32
32
  ?.filter((device) => deviceFilter(device, searchInputValue))
33
33
  ?.sort(deviceComparator) ?? [], [devices, searchInputValue, deviceFilter, deviceComparator]);
34
34
  const handleDeviceClick = useCallback((deviceId) => {
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceTable.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/DeviceTable/DeviceTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceTable.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/DeviceTable/DeviceTable.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { ClimateSettingSchedule, ClimateSettingScheduleGetRequest } from 'seamapi';
2
+ import type { UseSeamQueryResult } from '../../../../lib/seam/use-seam-query-result.js';
3
+ export type UseClimateSettingScheduleParams = ClimateSettingScheduleGetRequest | string;
4
+ export type UseClimateSettingScheduleData = ClimateSettingSchedule | null;
5
+ export declare function useClimateSettingSchedule(params: UseClimateSettingScheduleParams): UseSeamQueryResult<'climateSettingSchedule', UseClimateSettingScheduleData>;
@@ -0,0 +1,24 @@
1
+ import { useQuery } from '@tanstack/react-query';
2
+ import { useSeamClient } from '../../../../lib/seam/use-seam-client.js';
3
+ export function useClimateSettingSchedule(params) {
4
+ const normalizedParams = typeof params === 'string'
5
+ ? { climate_setting_schedule_id: params }
6
+ : params;
7
+ const { client } = useSeamClient();
8
+ const { data, ...rest } = useQuery({
9
+ enabled: client != null,
10
+ queryKey: [
11
+ 'thermostats',
12
+ 'climate_setting_schedules',
13
+ 'get',
14
+ normalizedParams,
15
+ ],
16
+ queryFn: async () => {
17
+ if (client == null)
18
+ return null;
19
+ return await client.thermostats.climateSettingSchedules.get(normalizedParams);
20
+ },
21
+ });
22
+ return { ...rest, climateSettingSchedule: data };
23
+ }
24
+ //# sourceMappingURL=use-climate-setting-schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-climate-setting-schedule.js","sourceRoot":"","sources":["../../../../src/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAQhD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAS3D,MAAM,UAAU,yBAAyB,CACvC,MAAuC;IAEvC,MAAM,gBAAgB,GACpB,OAAO,MAAM,KAAK,QAAQ;QACxB,CAAC,CAAC,EAAE,2BAA2B,EAAE,MAAM,EAAE;QACzC,CAAC,CAAC,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAElC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAGhC;QACA,OAAO,EAAE,MAAM,IAAI,IAAI;QACvB,QAAQ,EAAE;YACR,aAAa;YACb,2BAA2B;YAC3B,KAAK;YACL,gBAAgB;SACjB;QACD,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAA;YAC/B,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,GAAG,CACzD,gBAAgB,CACjB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAA;AAClD,CAAC"}
@@ -15,6 +15,7 @@ export function useClimateSettingSchedules(params) {
15
15
  // Prime cache for each schedule.
16
16
  for (const schedule of schedules) {
17
17
  queryClient.setQueryData([
18
+ 'thermostats',
18
19
  'climate_setting_schedules',
19
20
  'get',
20
21
  {
@@ -1 +1 @@
1
- {"version":3,"file":"use-climate-setting-schedules.js","sourceRoot":"","sources":["../../../../src/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAQhE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAO3D,MAAM,UAAU,0BAA0B,CACxC,MAAwC;IAKxC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAGhC;QACA,OAAO,EAAE,MAAM,IAAI,IAAI;QACvB,QAAQ,EAAE,CAAC,aAAa,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,CAAC;QACtE,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,EAAE,CAAA;YAC7B,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtE,CAAC;QACD,SAAS,EAAE,CAAC,SAAS,EAAE,EAAE;YACvB,iCAAiC;YACjC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAChC,WAAW,CAAC,YAAY,CACtB;oBACE,2BAA2B;oBAC3B,KAAK;oBACL;wBACE,2BAA2B,EAAE,QAAQ,CAAC,2BAA2B;qBAClE;iBACF,EACD,QAAQ,CACT,CAAA;aACF;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAA;AACnD,CAAC"}
1
+ {"version":3,"file":"use-climate-setting-schedules.js","sourceRoot":"","sources":["../../../../src/lib/seam/thermostats/climate-setting-schedules/use-climate-setting-schedules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAQhE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAO3D,MAAM,UAAU,0BAA0B,CACxC,MAAwC;IAKxC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAGhC;QACA,OAAO,EAAE,MAAM,IAAI,IAAI;QACvB,QAAQ,EAAE,CAAC,aAAa,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,CAAC;QACtE,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,EAAE,CAAA;YAC7B,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtE,CAAC;QACD,SAAS,EAAE,CAAC,SAAS,EAAE,EAAE;YACvB,iCAAiC;YACjC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAChC,WAAW,CAAC,YAAY,CACtB;oBACE,aAAa;oBACb,2BAA2B;oBAC3B,KAAK;oBACL;wBACE,2BAA2B,EAAE,QAAQ,CAAC,2BAA2B;qBAClE;iBACF,EACD,QAAQ,CACT,CAAA;aACF;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAA;AACnD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type UseMutationResult } from '@tanstack/react-query';
2
+ import type { ClimateSettingSchedule, ClimateSettingScheduleCreateRequest, SeamError } from 'seamapi';
3
+ export type UseCreateClimateSettingScheduleData = ClimateSettingSchedule;
4
+ export type UseCreateClimateSettingScheduleMutationParams = ClimateSettingScheduleCreateRequest;
5
+ export declare function useCreateClimateSettingSchedule(): UseMutationResult<UseCreateClimateSettingScheduleData, SeamError, UseCreateClimateSettingScheduleMutationParams>;
@@ -0,0 +1,21 @@
1
+ import { useMutation, useQueryClient, } from '@tanstack/react-query';
2
+ import { NullSeamClientError, useSeamClient } from '../../../../lib/seam/use-seam-client.js';
3
+ export function useCreateClimateSettingSchedule() {
4
+ const { client } = useSeamClient();
5
+ const queryClient = useQueryClient();
6
+ return useMutation({
7
+ mutationFn: async (mutationParams) => {
8
+ if (client === null)
9
+ throw new NullSeamClientError();
10
+ return await client.thermostats.climateSettingSchedules.create(mutationParams);
11
+ },
12
+ onSuccess: () => {
13
+ void queryClient.invalidateQueries([
14
+ 'thermostats',
15
+ 'climate_setting_schedules',
16
+ 'list',
17
+ ]);
18
+ },
19
+ });
20
+ }
21
+ //# sourceMappingURL=use-create-climate-setting-schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-create-climate-setting-schedule.js","sourceRoot":"","sources":["../../../../src/lib/seam/thermostats/climate-setting-schedules/use-create-climate-setting-schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,GACf,MAAM,uBAAuB,CAAA;AAQ9B,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAMhF,MAAM,UAAU,+BAA+B;IAK7C,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,OAAO,WAAW,CAIhB;QACA,UAAU,EAAE,KAAK,EACf,cAA6D,EAC7D,EAAE;YACF,IAAI,MAAM,KAAK,IAAI;gBAAE,MAAM,IAAI,mBAAmB,EAAE,CAAA;YACpD,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,MAAM,CAC5D,cAAc,CACf,CAAA;QACH,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,KAAK,WAAW,CAAC,iBAAiB,CAAC;gBACjC,aAAa;gBACb,2BAA2B;gBAC3B,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type UseMutationResult } from '@tanstack/react-query';
2
+ import type { ClimateSettingScheduleDeleteRequest, ClimateSettingScheduleDeleteResponse, SeamError } from 'seamapi';
3
+ export type UseDeleteClimateSettingScheduleMutationParams = ClimateSettingScheduleDeleteRequest;
4
+ export type UseDeleteClimateSettingScheduleData = ClimateSettingScheduleDeleteResponse;
5
+ export declare function useDeleteClimateSettingSchedule(): UseMutationResult<UseDeleteClimateSettingScheduleData, SeamError, UseDeleteClimateSettingScheduleMutationParams>;
@@ -0,0 +1,27 @@
1
+ import { useMutation, useQueryClient, } from '@tanstack/react-query';
2
+ import { NullSeamClientError, useSeamClient } from '../../../../lib/seam/use-seam-client.js';
3
+ export function useDeleteClimateSettingSchedule() {
4
+ const { client } = useSeamClient();
5
+ const queryClient = useQueryClient();
6
+ return useMutation({
7
+ mutationFn: async (mutationParams) => {
8
+ if (client === null)
9
+ throw new NullSeamClientError();
10
+ await client.thermostats.climateSettingSchedules.delete(mutationParams);
11
+ },
12
+ onSuccess: (_data, variables) => {
13
+ void queryClient.invalidateQueries([
14
+ 'thermostats',
15
+ 'climate_setting_schedules',
16
+ 'get',
17
+ { climate_setting_schedule_id: variables.climate_setting_schedule_id },
18
+ ]);
19
+ void queryClient.invalidateQueries([
20
+ 'thermostats',
21
+ 'climate_setting_schedules',
22
+ 'list',
23
+ ]);
24
+ },
25
+ });
26
+ }
27
+ //# sourceMappingURL=use-delete-climate-setting-schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-delete-climate-setting-schedule.js","sourceRoot":"","sources":["../../../../src/lib/seam/thermostats/climate-setting-schedules/use-delete-climate-setting-schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,GACf,MAAM,uBAAuB,CAAA;AAO9B,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAQhF,MAAM,UAAU,+BAA+B;IAK7C,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,OAAO,WAAW,CAIhB;QACA,UAAU,EAAE,KAAK,EACf,cAA6D,EAC7D,EAAE;YACF,IAAI,MAAM,KAAK,IAAI;gBAAE,MAAM,IAAI,mBAAmB,EAAE,CAAA;YACpD,MAAM,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;QACzE,CAAC;QACD,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAC9B,KAAK,WAAW,CAAC,iBAAiB,CAAC;gBACjC,aAAa;gBACb,2BAA2B;gBAC3B,KAAK;gBACL,EAAE,2BAA2B,EAAE,SAAS,CAAC,2BAA2B,EAAE;aACvE,CAAC,CAAA;YACF,KAAK,WAAW,CAAC,iBAAiB,CAAC;gBACjC,aAAa;gBACb,2BAA2B;gBAC3B,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -71,9 +71,9 @@ This is not recommended because the client session is now bound to this machine
71
71
  if (userIdentifierKey != null) {
72
72
  return userIdentifierKey;
73
73
  }
74
- const fingerprint = globalThis?.localStorage?.getItem('seam_user_fingerprint') ??
74
+ const fingerprint = globalThis.localStorage?.getItem('seam_user_fingerprint') ??
75
75
  `fingerprint_${uuidv4()}`;
76
- globalThis?.localStorage?.setItem('seam_user_fingerprint', fingerprint);
76
+ globalThis.localStorage?.setItem('seam_user_fingerprint', fingerprint);
77
77
  return fingerprint;
78
78
  }
79
79
  //# sourceMappingURL=use-seam-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-seam-client.js","sourceRoot":"","sources":["../../src/lib/seam/use-seam-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-seam-client.js","sourceRoot":"","sources":["../../src/lib/seam/use-seam-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,MAAM,UAAU,aAAa;IAM3B,MAAM,EACJ,MAAM,EACN,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,GAAG,OAAO,EACX,GAAG,cAAc,EAAE,CAAA;IACpB,MAAM,iBAAiB,GAAG,iCAAiC,CACzD,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAC5D,CAAA;IAED,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAO;QACzD,QAAQ,EAAE;YACR,QAAQ;YACR;gBACE,MAAM;gBACN,aAAa;gBACb,cAAc;gBACd,iBAAiB;gBACjB,kBAAkB;aACnB;SACF;QACD,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO,MAAM,CAAA;YAEjC,IAAI,kBAAkB,IAAI,IAAI,EAAE;gBAC9B,OAAO,IAAI,IAAI,CAAC;oBACd,GAAG,aAAa;oBAChB,MAAM,EAAE,SAAS;oBACjB,kBAAkB;iBACnB,CAAC,CAAA;aACH;YAED,IAAI,cAAc,IAAI,IAAI,EAAE;gBAC1B,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;aACF;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC;gBAC3C,GAAG,aAAa;gBAChB,cAAc;gBACd,iBAAiB;aAClB,CAAC,CAAA;YAEF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,cAAc,EAAE,KAAK,IAAI,IAAI,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;aACrD;YAED,OAAO,IAAI,IAAI,CAAC;gBACd,GAAG,aAAa;gBAChB,MAAM,EAAE,SAAS;gBACjB,kBAAkB,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK;aAC7C,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;AAC5D,CAAC;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C;QACE,KAAK,CACH;YACE,sCAAsC;YACtC,yEAAyE;YACzE,uEAAuE;YACvE,+CAA+C;SAChD,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;QACjC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACjD,CAAC;CACF;AAED,SAAS,iCAAiC,CACxC,iBAAqC;IAErC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,iBAAiB,IAAI,IAAI;YAAE,OAAM;QACrC,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC;;8GAE6F,CAAC,CAAA;IAC7G,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAEvB,IAAI,iBAAiB,IAAI,IAAI,EAAE;QAC7B,OAAO,iBAAiB,CAAA;KACzB;IAED,MAAM,WAAW,GACf,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC;QACzD,eAAe,MAAM,EAAE,EAAE,CAAA;IAE3B,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,uBAAuB,EAAE,WAAW,CAAC,CAAA;IAEtE,OAAO,WAAW,CAAA;AACpB,CAAC"}
@@ -7,7 +7,7 @@ import { FormField } from '../../../lib/ui/FormField.js';
7
7
  import { InputLabel } from '../../../lib/ui/InputLabel.js';
8
8
  import { ContentHeader } from '../../../lib/ui/layout/ContentHeader.js';
9
9
  export function AccessCodeFormDatePicker({ timezone, onBack, className, startDate, setStartDate, endDate, setEndDate, onChangeTimezone, }) {
10
- return (_jsxs("div", { className: classNames('seam-schedule-picker', className), children: [_jsx(ContentHeader, { title: t.timingTitle, onBack: onBack }), _jsxs("div", { className: 'seam-content', children: [_jsxs("div", { className: 'seam-timezone', children: [_jsx("span", { className: 'seam-label', children: t.selectedTimezoneLabel }), _jsxs("span", { className: 'seam-selected', onClick: onChangeTimezone, children: [getTimezoneLabel(timezone), _jsx(ChevronRightIcon, {})] })] }), _jsxs(FormField, { children: [_jsx(InputLabel, { children: t.startTimeLabel }), _jsx(DateTimePicker, { value: startDate == null ? '' : startDate, onChange: setStartDate, size: 'large' })] }), _jsxs(FormField, { children: [_jsx(InputLabel, { children: t.endTimeLabel }), _jsx(DateTimePicker, { value: endDate == null ? '' : endDate, onChange: setEndDate, size: 'large' })] })] })] }));
10
+ return (_jsxs("div", { className: classNames('seam-schedule-picker', className), children: [_jsx(ContentHeader, { title: t.timingTitle, onBack: onBack }), _jsxs("div", { className: 'seam-content', children: [_jsxs("div", { className: 'seam-timezone', children: [_jsx("span", { className: 'seam-label', children: t.selectedTimezoneLabel }), _jsxs("span", { className: 'seam-selected', onClick: onChangeTimezone, children: [getTimezoneLabel(timezone), _jsx(ChevronRightIcon, {})] })] }), _jsxs(FormField, { children: [_jsx(InputLabel, { children: t.startTimeLabel }), _jsx(DateTimePicker, { value: startDate ?? '', onChange: setStartDate, size: 'large' })] }), _jsxs(FormField, { children: [_jsx(InputLabel, { children: t.endTimeLabel }), _jsx(DateTimePicker, { value: endDate ?? '', onChange: setEndDate, size: 'large' })] })] })] }));
11
11
  }
12
12
  const t = {
13
13
  timingTitle: 'Timing',
@@ -1 +1 @@
1
- {"version":3,"file":"AccessCodeFormDatePicker.js","sourceRoot":"","sources":["../../../src/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAa9D,MAAM,UAAU,wBAAwB,CAAC,EACvC,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAS,EACT,YAAY,EACZ,OAAO,EACP,UAAU,EACV,gBAAgB,GACc;IAC9B,OAAO,CACL,eAAK,SAAS,EAAE,UAAU,CAAC,sBAAsB,EAAE,SAAS,CAAC,aAC3D,KAAC,aAAa,IAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,GAAI,EACvD,eAAK,SAAS,EAAC,cAAc,aAC3B,eAAK,SAAS,EAAC,eAAe,aAC5B,eAAM,SAAS,EAAC,YAAY,YAAE,CAAC,CAAC,qBAAqB,GAAQ,EAC7D,gBAAM,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,gBAAgB,aACtD,gBAAgB,CAAC,QAAQ,CAAC,EAC3B,KAAC,gBAAgB,KAAG,IACf,IACH,EACN,MAAC,SAAS,eACR,KAAC,UAAU,cAAE,CAAC,CAAC,cAAc,GAAc,EAC3C,KAAC,cAAc,IACb,KAAK,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EACzC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAC,OAAO,GACZ,IACQ,EACZ,MAAC,SAAS,eACR,KAAC,UAAU,cAAE,CAAC,CAAC,YAAY,GAAc,EACzC,KAAC,cAAc,IACb,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EACrC,QAAQ,EAAE,UAAU,EACpB,IAAI,EAAC,OAAO,GACZ,IACQ,IACR,IACF,CACP,CAAA;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,WAAW,EAAE,QAAQ;IACrB,qBAAqB,EAAE,cAAc;IACrC,cAAc,EAAE,OAAO;IACvB,YAAY,EAAE,KAAK;CACpB,CAAA"}
1
+ {"version":3,"file":"AccessCodeFormDatePicker.js","sourceRoot":"","sources":["../../../src/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAa9D,MAAM,UAAU,wBAAwB,CAAC,EACvC,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAS,EACT,YAAY,EACZ,OAAO,EACP,UAAU,EACV,gBAAgB,GACc;IAC9B,OAAO,CACL,eAAK,SAAS,EAAE,UAAU,CAAC,sBAAsB,EAAE,SAAS,CAAC,aAC3D,KAAC,aAAa,IAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,GAAI,EACvD,eAAK,SAAS,EAAC,cAAc,aAC3B,eAAK,SAAS,EAAC,eAAe,aAC5B,eAAM,SAAS,EAAC,YAAY,YAAE,CAAC,CAAC,qBAAqB,GAAQ,EAC7D,gBAAM,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,gBAAgB,aACtD,gBAAgB,CAAC,QAAQ,CAAC,EAC3B,KAAC,gBAAgB,KAAG,IACf,IACH,EACN,MAAC,SAAS,eACR,KAAC,UAAU,cAAE,CAAC,CAAC,cAAc,GAAc,EAC3C,KAAC,cAAc,IACb,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAC,OAAO,GACZ,IACQ,EACZ,MAAC,SAAS,eACR,KAAC,UAAU,cAAE,CAAC,CAAC,YAAY,GAAc,EACzC,KAAC,cAAc,IACb,KAAK,EAAE,OAAO,IAAI,EAAE,EACpB,QAAQ,EAAE,UAAU,EACpB,IAAI,EAAC,OAAO,GACZ,IACQ,IACR,IACF,CACP,CAAA;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,WAAW,EAAE,QAAQ;IACrB,qBAAqB,EAAE,cAAc;IACrC,cAAc,EAAE,OAAO;IACvB,YAAY,EAAE,KAAK;CACpB,CAAA"}
@@ -13,7 +13,7 @@ export function Menu({ verticalOffset = 5, horizontalOffset = 0, edgeOffset = 5,
13
13
  const [top, setTop] = useState(0);
14
14
  const [left, setLeft] = useState(0);
15
15
  useEffect(() => {
16
- const containers = globalThis?.document?.querySelectorAll('.seam-components');
16
+ const containers = globalThis.document?.querySelectorAll('.seam-components');
17
17
  if (containers == null)
18
18
  return;
19
19
  const el = containers[containers.length - 1];
@@ -60,11 +60,11 @@ export function Menu({ verticalOffset = 5, horizontalOffset = 0, edgeOffset = 5,
60
60
  ]);
61
61
  useLayoutEffect(() => {
62
62
  setPositions();
63
- globalThis?.addEventListener('scroll', setPositions);
64
- globalThis?.addEventListener('resize', setPositions);
63
+ globalThis.addEventListener('scroll', setPositions);
64
+ globalThis.addEventListener('resize', setPositions);
65
65
  return () => {
66
- globalThis?.removeEventListener('scroll', setPositions);
67
- globalThis?.removeEventListener('resize', setPositions);
66
+ globalThis.removeEventListener('scroll', setPositions);
67
+ globalThis.removeEventListener('resize', setPositions);
68
68
  };
69
69
  }, [setPositions]);
70
70
  const isOpen = anchorEl != null;
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../src/lib/ui/Menu/Menu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../src/lib/ui/Menu/Menu.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export interface SwitchProps {
3
+ checked: boolean;
4
+ onChange: (checked: boolean) => void;
5
+ enableLabel?: boolean;
6
+ }
7
+ declare function Switch({ checked, onChange, enableLabel, }: SwitchProps): JSX.Element;
8
+ export default Switch;
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ function Switch({ checked, onChange, enableLabel = false, }) {
4
+ return (_jsxs("div", { className: 'seam-switch-container', children: [enableLabel && (_jsx("label", { className: 'seam-switch-label', children: checked ? t.on : t.off })), _jsx("div", { className: classNames('seam-switch', {
5
+ 'seam-switch-checked': checked,
6
+ }), onClick: () => {
7
+ onChange(!checked);
8
+ }, children: _jsx("div", { className: 'seam-switch-slider' }) })] }));
9
+ }
10
+ const t = {
11
+ on: 'On',
12
+ off: 'Off',
13
+ };
14
+ export default Switch;
15
+ //# sourceMappingURL=Switch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Switch.js","sourceRoot":"","sources":["../../../src/lib/ui/Switch/Switch.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AAQnC,SAAS,MAAM,CAAC,EACd,OAAO,EACP,QAAQ,EACR,WAAW,GAAG,KAAK,GACP;IACZ,OAAO,CACL,eAAK,SAAS,EAAC,uBAAuB,aACnC,WAAW,IAAI,CACd,gBAAO,SAAS,EAAC,mBAAmB,YAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAS,CACtE,EACD,cACE,SAAS,EAAE,UAAU,CAAC,aAAa,EAAE;oBACnC,qBAAqB,EAAE,OAAO;iBAC/B,CAAC,EACF,OAAO,EAAE,GAAG,EAAE;oBACZ,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAA;gBACpB,CAAC,YAED,cAAK,SAAS,EAAC,oBAAoB,GAAG,GAClC,IACF,CACP,CAAA;AACH,CAAC;AAED,MAAM,CAAC,GAAG;IACR,EAAE,EAAE,IAAI;IACR,GAAG,EAAE,KAAK;CACX,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -15,9 +15,7 @@ export const TextField = forwardRef(function TextField({ value, onChange, classN
15
15
  }
16
16
  };
17
17
  // Maintain a local ref, and still forward it along
18
- useImperativeHandle(ref, () => (inputEl != null ? inputEl : undefined), [
19
- inputEl,
20
- ]);
18
+ useImperativeHandle(ref, () => inputEl ?? undefined, [inputEl]);
21
19
  const endAdornmentVisible = endAdornment != null || clearable;
22
20
  return (_jsxs("div", { className: classNames('seam-text-field', className, `seam-${size}`, {
23
21
  'seam-disabled': disabled,
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/lib/ui/TextField/TextField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/lib/ui/TextField/TextField.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAGL,UAAU,EAIV,SAAS,EACT,mBAAmB,EACnB,QAAQ,GACT,MAAM,OAAO,CAAA;AAEd,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAwB9C,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAGjC,SAAS,SAAS,CAClB,EACE,KAAK,EACL,QAAQ,EACR,SAAS,EACT,cAAc,EACd,YAAY,EACZ,UAAU,EACV,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,OAAO,EACd,SAAS,GAAG,KAAK,EACjB,OAAO,EACP,MAAM,EACN,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,UAAU,EACV,IAAI,GAAG,MAAM,GACd,EACD,GAAG;IAEH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAA;IAErE,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAEpD,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,OAAM;SACP;QAED,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,OAAO,CAAC,KAAK,GAAG,EAAE,CAAA;SACnB;IACH,CAAC,CAAA;IAED,mDAAmD;IACnD,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAE/D,MAAM,mBAAmB,GAAG,YAAY,IAAI,IAAI,IAAI,SAAS,CAAA;IAE7D,OAAO,CACL,eACE,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE,EAAE;YAClE,eAAe,EAAE,QAAQ;YACzB,YAAY,EAAE,QAAQ;SACvB,CAAC,aAEF,eAAK,SAAS,EAAC,WAAW,aACvB,cAAc,IAAI,IAAI,IAAI,CACzB,cAAK,SAAS,EAAC,2BAA2B,YAAE,cAAc,GAAO,CAClE,EACD,gBACE,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC/D,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,KACN,UAAU,GACd,EACD,mBAAmB,IAAI,CACtB,eAAK,SAAS,EAAC,yBAAyB,aACrC,SAAS,IAAI,CACZ,iBACE,SAAS,EAAE,UAAU,CAAC;oCACpB,aAAa,EAAE,YAAY;iCAC5B,CAAC,EACF,OAAO,EAAE,UAAU,YAEnB,KAAC,SAAS,KAAG,GACN,CACV,EACA,YAAY,IACT,CACP,IACG,EACL,UAAU,IAAI,IAAI,IAAI,CACrB,cAAK,SAAS,EAAC,kBAAkB,YAAE,UAAU,GAAO,CACrD,IACG,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GACvB,CAAC,MAA2B,EAAE,EAAE,CAChC,CACE,KAEC,EACK,EAAE;IACR,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC,CAAA;AAEH,SAAS,eAAe,CACtB,KAAyB,EACzB,OAAgC;IAEhC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAEtD,8DAA8D;IAC9D,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC,CAAA;IAChD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,uEAAuE;IACvE,UAAU;IACV,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,OAAM;SACP;QAED,MAAM,OAAO,GAAG,CAAC,KAAY,EAAQ,EAAE;YACrC,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,OAAM;aACP;YAED,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;gBACtD,OAAM;aACP;YAED,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAA;YACrC,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,eAAe,CAAC,UAAU,KAAK,EAAE,CAAC,CAAA;aACnC;QACH,CAAC,CAAA;QAED,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAE1C,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC/C,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;IAEpB,OAAO,YAAY,CAAA;AACrB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { type PropsWithChildren } from 'react';
2
+ export declare function Tooltip({ children }: PropsWithChildren): JSX.Element;
@@ -0,0 +1,33 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState, } from 'react';
3
+ import { InfoIcon } from '../../../lib/icons/Info.js';
4
+ import { InfoDarkIcon } from '../../../lib/icons/InfoDark.js';
5
+ export function Tooltip({ children }) {
6
+ const [isOpen, setIsOpen] = useState(false);
7
+ useEffect(() => {
8
+ const handleClose = () => {
9
+ setIsOpen(false);
10
+ };
11
+ const handleEscape = (event) => {
12
+ if (event.key === 'Escape') {
13
+ handleClose();
14
+ }
15
+ };
16
+ if (isOpen) {
17
+ globalThis.document?.addEventListener('click', handleClose);
18
+ globalThis.addEventListener?.('keydown', handleEscape);
19
+ }
20
+ return () => {
21
+ globalThis.document?.removeEventListener('click', handleClose);
22
+ globalThis.removeEventListener?.('keydown', handleEscape);
23
+ };
24
+ }, [isOpen, setIsOpen]);
25
+ const handleToggle = (event) => {
26
+ event.stopPropagation();
27
+ setIsOpen((prev) => !prev);
28
+ };
29
+ return (_jsxs("div", { className: 'seam-tooltip', children: [_jsx("div", { className: 'seam-tooltip-trigger-wrap', children: _jsxs("button", { onClick: handleToggle, className: 'seam-tooltip-button', children: [_jsx("div", { className: 'seam-tooltip-button-icon seam-tooltip-button-icon-default', children: _jsx(InfoIcon, {}) }), _jsx("div", { className: 'seam-tooltip-button-icon seam-tooltip-button-icon-hover', children: _jsx(InfoDarkIcon, {}) })] }) }), _jsx("div", { className: 'seam-tooltip-popover', "aria-expanded": isOpen, onClick: (event) => {
30
+ event.stopPropagation();
31
+ }, children: _jsx("p", { className: 'seam-tooltip-text', children: children }) })] }));
32
+ }
33
+ //# sourceMappingURL=Tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/lib/ui/Tooltip/Tooltip.tsx"],"names":[],"mappings":";AAAA,OAAO,EAGL,SAAS,EACT,QAAQ,GACT,MAAM,OAAO,CAAA;AAEd,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,MAAM,UAAU,OAAO,CAAC,EAAE,QAAQ,EAAqB;IACrD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,GAAS,EAAE;YAC7B,SAAS,CAAC,KAAK,CAAC,CAAA;QAClB,CAAC,CAAA;QAED,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAClD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC1B,WAAW,EAAE,CAAA;aACd;QACH,CAAC,CAAA;QACD,IAAI,MAAM,EAAE;YACV,UAAU,CAAC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YAC3D,UAAU,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;SACvD;QAED,OAAO,GAAG,EAAE;YACV,UAAU,CAAC,QAAQ,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YAC9D,UAAU,CAAC,mBAAmB,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QAC3D,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IAEvB,MAAM,YAAY,GAAyC,CAAC,KAAK,EAAQ,EAAE;QACzE,KAAK,CAAC,eAAe,EAAE,CAAA;QACvB,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC,CAAA;IAED,OAAO,CACL,eAAK,SAAS,EAAC,cAAc,aAC3B,cAAK,SAAS,EAAC,2BAA2B,YACxC,kBAAQ,OAAO,EAAE,YAAY,EAAE,SAAS,EAAC,qBAAqB,aAC5D,cAAK,SAAS,EAAC,2DAA2D,YACxE,KAAC,QAAQ,KAAG,GACR,EACN,cAAK,SAAS,EAAC,yDAAyD,YACtE,KAAC,YAAY,KAAG,GACZ,IACC,GACL,EAEN,cACE,SAAS,EAAC,sBAAsB,mBACjB,MAAM,EACrB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,KAAK,CAAC,eAAe,EAAE,CAAA;gBACzB,CAAC,YAED,YAAG,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAK,GAC3C,IACF,CACP,CAAA;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export async function copyToClipboard(value) {
2
- await globalThis?.navigator?.clipboard?.writeText(value);
2
+ await globalThis.navigator?.clipboard?.writeText(value);
3
3
  }
4
4
  //# sourceMappingURL=clipboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard.js","sourceRoot":"","sources":["../../src/lib/ui/clipboard.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAa;IACjD,MAAM,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"clipboard.js","sourceRoot":"","sources":["../../src/lib/ui/clipboard.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAa;IACjD,MAAM,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;AACzD,CAAC"}
@@ -4,11 +4,11 @@ import { ThermostatHeatIcon } from '../../../lib/icons/ThermostatHeat.js';
4
4
  import { ThermostatHeatCoolIcon } from '../../../lib/icons/ThermostatHeatCool.js';
5
5
  import { ThermostatOffIcon } from '../../../lib/icons/ThermostatOff.js';
6
6
  export function ClimateSettingStatus({ climateSetting, temperatureUnit = 'fahrenheit', iconPlacement = 'left', }) {
7
- return (_jsxs("div", { className: 'seam-climate-setting-status', children: [iconPlacement === 'left' && (_jsx(ClimateSettingIcon, { mode: climateSetting.hvac_mode_setting })), _jsx(Content, { mode: climateSetting.hvac_mode_setting, coolingSetPoint: temperatureUnit === 'fahrenheit'
7
+ return (_jsxs("div", { className: 'seam-climate-setting-status', children: [iconPlacement === 'left' && (_jsx(ClimateSettingIcon, { mode: climateSetting.hvac_mode_setting })), _jsx(Content, { mode: climateSetting.hvac_mode_setting, coolingSetPoint: formatTemperatureValue(temperatureUnit === 'fahrenheit'
8
8
  ? climateSetting.cooling_set_point_fahrenheit
9
- : climateSetting.cooling_set_point_celsius, heatingSetPoint: temperatureUnit === 'fahrenheit'
9
+ : climateSetting.cooling_set_point_celsius), heatingSetPoint: formatTemperatureValue(temperatureUnit === 'fahrenheit'
10
10
  ? climateSetting.heating_set_point_fahrenheit
11
- : climateSetting.heating_set_point_celsius, temperatureUnit: temperatureUnit }), iconPlacement === 'right' && (_jsx(ClimateSettingIcon, { mode: climateSetting.hvac_mode_setting }))] }));
11
+ : climateSetting.heating_set_point_celsius), temperatureUnit: temperatureUnit }), iconPlacement === 'right' && (_jsx(ClimateSettingIcon, { mode: climateSetting.hvac_mode_setting }))] }));
12
12
  }
13
13
  function ClimateSettingIcon(props) {
14
14
  const { mode } = props;
@@ -29,6 +29,13 @@ function Content(props) {
29
29
  return _jsx("span", { children: t.off });
30
30
  return null;
31
31
  }
32
+ const formatTemperatureValue = (value) => {
33
+ if (value == null)
34
+ return '0';
35
+ if (Number.isInteger(value))
36
+ return value.toFixed();
37
+ return value.toFixed(1);
38
+ };
32
39
  const t = {
33
40
  degreeFahrenheit: '°F',
34
41
  degreeCelsius: '°C',