@seamapi/react 2.19.1 → 2.20.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.
@@ -0,0 +1,2 @@
1
+ import type { SVGProps } from 'react';
2
+ export declare function NoiseLevelsRedIcon(props: SVGProps<SVGSVGElement>): JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export function NoiseLevelsRedIcon(props) {
3
+ return (_jsxs("svg", { xmlns: 'http://www.w3.org/2000/svg', width: 18, height: 19, fill: 'none', ...props, children: [_jsx("path", { fill: '#9DA1A9', fillRule: 'evenodd', d: 'M8.744 5.47q.046-.09.097-.18c.547-.966 1.534-1.77 3.412-1.77 1.016 0 1.76.259 2.302.638.546.381.934.916 1.186 1.537.516 1.273.415 2.81-.006 3.762-.362.816-.915 1.949-1.477 3.1-.464.952-.935 1.916-1.308 2.724-.603 1.303-1.939 1.383-2.55.842-.453-.401-.624-.87-.659-1.273-.018-.206 0-.389.034-.528a.7.7 0 0 1 .062-.18l-.002.003a.767.767 0 0 0-.88-1.203 9.5 9.5 0 0 1-.745 1.489q-.021.264.002.55a3.43 3.43 0 0 0 1.171 2.291c1.467 1.298 3.974.783 4.96-1.346.338-.732.8-1.68 1.264-2.634.583-1.196 1.171-2.403 1.53-3.213.587-1.324.701-3.294.026-4.96-.343-.848-.901-1.64-1.73-2.22-.831-.58-1.89-.914-3.18-.914-2.106 0-3.509.827-4.378 1.983q.501.708.869 1.502M9.93 6.752c.298-.952 1.163-1.623 2.3-1.592.893.024 1.514.445 1.88.967.333.474.469 1.054.402 1.484a.767.767 0 0 1-1.517-.227v-.003c-.001-.01-.003-.048-.02-.11a.8.8 0 0 0-.12-.263c-.106-.149-.289-.304-.666-.314-.45-.012-.701.219-.795.516-.1.32-.043.834.444 1.337.513.53.69 1.182.638 1.75-.046.5-.304 1.138-.898 1.382a.767.767 0 0 1-.665-1.38.4.4 0 0 0 .034-.14.69.69 0 0 0-.211-.544c-.822-.849-1.098-1.933-.806-2.863m.969 3.572.002-.003z', clipRule: 'evenodd' }), _jsx("path", { fill: '#E36857', d: 'm1.191 8.702-.816.974.844 1.007a1.312 1.312 0 0 0-.028-1.98M2.173 11.82l1.041 1.242a4.4 4.4 0 0 0 1.577-3.383c0-1.36-.614-2.575-1.58-3.385L2.17 7.536A2.79 2.79 0 0 1 3.17 9.679a2.79 2.79 0 0 1-.997 2.14' }), _jsx("path", { fill: '#E36857', d: 'm4.154 14.183 1.042 1.242a7.48 7.48 0 0 0 2.679-5.746 7.48 7.48 0 0 0-2.683-5.748L4.151 5.173a5.87 5.87 0 0 1 2.103 4.506 5.87 5.87 0 0 1-2.1 4.503' })] }));
4
+ }
5
+ //# sourceMappingURL=NoiseLevelsRed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoiseLevelsRed.js","sourceRoot":"","sources":["../../src/lib/icons/NoiseLevelsRed.tsx"],"names":[],"mappings":";AAKA,MAAM,UAAU,kBAAkB,CAChC,KAA8B;IAE9B,OAAO,CACL,eACE,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,IAAI,EAAC,MAAM,KACP,KAAK,aAET,eACE,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,ikCAAikC,EACnkC,QAAQ,EAAC,SAAS,GAClB,EACF,eACE,IAAI,EAAC,SAAS,EACd,CAAC,EAAC,4MAA4M,GAC9M,EACF,eACE,IAAI,EAAC,SAAS,EACd,CAAC,EAAC,qJAAqJ,GACvJ,IACE,CACP,CAAA;AACH,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
2
3
  import { NoiseLevelsIcon } from '../../../lib/icons/NoiseLevels.js';
4
+ import { NoiseLevelsRedIcon } from '../../../lib/icons/NoiseLevelsRed.js';
3
5
  export function NoiseLevelStatus({ device, }) {
4
- return (_jsxs(_Fragment, { children: [_jsxs("span", { className: 'seam-label', children: [t.noiseLevel, ":"] }), _jsxs("div", { className: 'seam-device-status', children: [_jsx(NoiseLevelsIcon, {}), _jsx("span", { className: 'seam-text', children: getNoiseLevel(device) })] })] }));
6
+ const isActivated = (device?.properties?.currently_triggering_noise_threshold_ids ?? [])
7
+ ?.length > 0;
8
+ return (_jsxs(_Fragment, { children: [_jsxs("span", { className: 'seam-label', children: [t.noiseLevel, ":"] }), _jsxs("div", { className: 'seam-device-status', children: [isActivated ? _jsx(NoiseLevelsRedIcon, {}) : _jsx(NoiseLevelsIcon, {}), _jsxs("span", { className: classNames('seam-text', isActivated && 'seam-text-danger'), children: [getNoiseLevel(device), isActivated && ` (${t.noisy})`] })] })] }));
5
9
  }
6
10
  function toNoiseString(value) {
7
11
  if (typeof value === 'string' || typeof value === 'number') {
@@ -28,5 +32,6 @@ const t = {
28
32
  unknown: 'Unknown',
29
33
  decibel: 'dB',
30
34
  noiseAwareDefault: '0-40 dB',
35
+ noisy: 'noisy',
31
36
  };
32
37
  //# sourceMappingURL=NoiseLevelStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NoiseLevelStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/device/NoiseLevelStatus.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAM1D,MAAM,UAAU,gBAAgB,CAAC,EAC/B,MAAM,GACgB;IACtB,OAAO,CACL,8BACE,gBAAM,SAAS,EAAC,YAAY,aAAE,CAAC,CAAC,UAAU,SAAS,EAEnD,eAAK,SAAS,EAAC,oBAAoB,aACjC,KAAC,eAAe,KAAG,EACnB,eAAM,SAAS,EAAC,WAAW,YAAE,aAAa,CAAC,MAAM,CAAC,GAAQ,IACtD,IACL,CACJ,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAkC;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;IACnD,CAAC;IACD,OAAO,CAAC,CAAC,OAAO,CAAA;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,KAAK,cAAc,CAAA;IACrD,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,KAAK,0BAA0B,CAAA;IAEtE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,aAAa,CAClB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,CACvE,CAAA;IACH,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,CAAC,iBAAiB,CAAA;QAC5B,CAAC;QACD,OAAO,aAAa,CAClB,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,mBAAmB,CAC7D,CAAA;IACH,CAAC;IAED,OAAO,aAAa,CAAC,SAAS,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,CAAC,GAAG;IACR,UAAU,EAAE,aAAa;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,IAAI;IACb,iBAAiB,EAAE,SAAS;CAC7B,CAAA"}
1
+ {"version":3,"file":"NoiseLevelStatus.js","sourceRoot":"","sources":["../../../src/lib/ui/device/NoiseLevelStatus.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AAGnC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAMhE,MAAM,UAAU,gBAAgB,CAAC,EAC/B,MAAM,GACgB;IACtB,MAAM,WAAW,GACf,CAAC,MAAM,EAAE,UAAU,EAAE,wCAAwC,IAAI,EAAE,CAAC;QAClE,EAAE,MAAM,GAAG,CAAC,CAAA;IAEhB,OAAO,CACL,8BACE,gBAAM,SAAS,EAAC,YAAY,aAAE,CAAC,CAAC,UAAU,SAAS,EAEnD,eAAK,SAAS,EAAC,oBAAoB,aAChC,WAAW,CAAC,CAAC,CAAC,KAAC,kBAAkB,KAAG,CAAC,CAAC,CAAC,KAAC,eAAe,KAAG,EAC3D,gBACE,SAAS,EAAE,UAAU,CAAC,WAAW,EAAE,WAAW,IAAI,kBAAkB,CAAC,aAEpE,aAAa,CAAC,MAAM,CAAC,EACrB,WAAW,IAAI,KAAK,CAAC,CAAC,KAAK,GAAG,IAC1B,IACH,IACL,CACJ,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAkC;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;IACnD,CAAC;IACD,OAAO,CAAC,CAAC,OAAO,CAAA;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,KAAK,cAAc,CAAA;IACrD,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,KAAK,0BAA0B,CAAA;IAEtE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,aAAa,CAClB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,CACvE,CAAA;IACH,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,CAAC,iBAAiB,CAAA;QAC5B,CAAC;QACD,OAAO,aAAa,CAClB,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,mBAAmB,CAC7D,CAAA;IACH,CAAC;IAED,OAAO,aAAa,CAAC,SAAS,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,CAAC,GAAG;IACR,UAAU,EAAE,aAAa;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,IAAI;IACb,iBAAiB,EAAE,SAAS;IAC5B,KAAK,EAAE,OAAO;CACf,CAAA"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- declare const seamapiReactVersion = "2.19.1";
1
+ declare const seamapiReactVersion = "2.20.0";
2
2
  export default seamapiReactVersion;
package/lib/version.js CHANGED
@@ -1,3 +1,3 @@
1
- const seamapiReactVersion = '2.19.1';
1
+ const seamapiReactVersion = '2.20.0';
2
2
  export default seamapiReactVersion;
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seamapi/react",
3
- "version": "2.19.1",
3
+ "version": "2.20.0",
4
4
  "description": "Seam Components.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -132,7 +132,7 @@
132
132
  "luxon": "^3.3.0",
133
133
  "queue": "^7.0.0",
134
134
  "react-hook-form": "^7.46.1",
135
- "seamapi": "^8.22.1",
135
+ "seamapi": "^8.24.0",
136
136
  "uuid": "^9.0.0",
137
137
  "zoned-time": "^1.1.2"
138
138
  },
@@ -0,0 +1,33 @@
1
+ /*
2
+ * Automatically generated by SVGR from assets/icons/*.svg.
3
+ * Do not edit this file or add other components to this directory.
4
+ */
5
+ import type { SVGProps } from 'react'
6
+ export function NoiseLevelsRedIcon(
7
+ props: SVGProps<SVGSVGElement>
8
+ ): JSX.Element {
9
+ return (
10
+ <svg
11
+ xmlns='http://www.w3.org/2000/svg'
12
+ width={18}
13
+ height={19}
14
+ fill='none'
15
+ {...props}
16
+ >
17
+ <path
18
+ fill='#9DA1A9'
19
+ fillRule='evenodd'
20
+ d='M8.744 5.47q.046-.09.097-.18c.547-.966 1.534-1.77 3.412-1.77 1.016 0 1.76.259 2.302.638.546.381.934.916 1.186 1.537.516 1.273.415 2.81-.006 3.762-.362.816-.915 1.949-1.477 3.1-.464.952-.935 1.916-1.308 2.724-.603 1.303-1.939 1.383-2.55.842-.453-.401-.624-.87-.659-1.273-.018-.206 0-.389.034-.528a.7.7 0 0 1 .062-.18l-.002.003a.767.767 0 0 0-.88-1.203 9.5 9.5 0 0 1-.745 1.489q-.021.264.002.55a3.43 3.43 0 0 0 1.171 2.291c1.467 1.298 3.974.783 4.96-1.346.338-.732.8-1.68 1.264-2.634.583-1.196 1.171-2.403 1.53-3.213.587-1.324.701-3.294.026-4.96-.343-.848-.901-1.64-1.73-2.22-.831-.58-1.89-.914-3.18-.914-2.106 0-3.509.827-4.378 1.983q.501.708.869 1.502M9.93 6.752c.298-.952 1.163-1.623 2.3-1.592.893.024 1.514.445 1.88.967.333.474.469 1.054.402 1.484a.767.767 0 0 1-1.517-.227v-.003c-.001-.01-.003-.048-.02-.11a.8.8 0 0 0-.12-.263c-.106-.149-.289-.304-.666-.314-.45-.012-.701.219-.795.516-.1.32-.043.834.444 1.337.513.53.69 1.182.638 1.75-.046.5-.304 1.138-.898 1.382a.767.767 0 0 1-.665-1.38.4.4 0 0 0 .034-.14.69.69 0 0 0-.211-.544c-.822-.849-1.098-1.933-.806-2.863m.969 3.572.002-.003z'
21
+ clipRule='evenodd'
22
+ />
23
+ <path
24
+ fill='#E36857'
25
+ d='m1.191 8.702-.816.974.844 1.007a1.312 1.312 0 0 0-.028-1.98M2.173 11.82l1.041 1.242a4.4 4.4 0 0 0 1.577-3.383c0-1.36-.614-2.575-1.58-3.385L2.17 7.536A2.79 2.79 0 0 1 3.17 9.679a2.79 2.79 0 0 1-.997 2.14'
26
+ />
27
+ <path
28
+ fill='#E36857'
29
+ d='m4.154 14.183 1.042 1.242a7.48 7.48 0 0 0 2.679-5.746 7.48 7.48 0 0 0-2.683-5.748L4.151 5.173a5.87 5.87 0 0 1 2.103 4.506 5.87 5.87 0 0 1-2.1 4.503'
30
+ />
31
+ </svg>
32
+ )
33
+ }
@@ -1,6 +1,8 @@
1
+ import classNames from 'classnames'
1
2
  import type { NoiseSensorDevice } from 'seamapi'
2
3
 
3
4
  import { NoiseLevelsIcon } from 'lib/icons/NoiseLevels.js'
5
+ import { NoiseLevelsRedIcon } from 'lib/icons/NoiseLevelsRed.js'
4
6
 
5
7
  interface NoiseLevelStatusProps {
6
8
  device: NoiseSensorDevice
@@ -9,13 +11,22 @@ interface NoiseLevelStatusProps {
9
11
  export function NoiseLevelStatus({
10
12
  device,
11
13
  }: NoiseLevelStatusProps): JSX.Element {
14
+ const isActivated =
15
+ (device?.properties?.currently_triggering_noise_threshold_ids ?? [])
16
+ ?.length > 0
17
+
12
18
  return (
13
19
  <>
14
20
  <span className='seam-label'>{t.noiseLevel}:</span>
15
21
 
16
22
  <div className='seam-device-status'>
17
- <NoiseLevelsIcon />
18
- <span className='seam-text'>{getNoiseLevel(device)}</span>
23
+ {isActivated ? <NoiseLevelsRedIcon /> : <NoiseLevelsIcon />}
24
+ <span
25
+ className={classNames('seam-text', isActivated && 'seam-text-danger')}
26
+ >
27
+ {getNoiseLevel(device)}
28
+ {isActivated && ` (${t.noisy})`}
29
+ </span>
19
30
  </div>
20
31
  </>
21
32
  )
@@ -55,4 +66,5 @@ const t = {
55
66
  unknown: 'Unknown',
56
67
  decibel: 'dB',
57
68
  noiseAwareDefault: '0-40 dB',
69
+ noisy: 'noisy',
58
70
  }
@@ -1,3 +1,3 @@
1
- const seamapiReactVersion = '2.19.1'
1
+ const seamapiReactVersion = '2.20.0'
2
2
 
3
3
  export default seamapiReactVersion