@camstack/addon-osd-manager 0.1.267 → 0.1.268

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 (18) hide show
  1. package/dist/{MotionZonesSettings-3OswGeMl.mjs → MotionZonesSettings-Da16aeu1.mjs} +2 -2
  2. package/dist/{PrivacyMaskSettings-CxN7tOH_.mjs → PrivacyMaskSettings-Cn7oHD35.mjs} +4 -4
  3. package/dist/{SceneMonitorEditor-l9nWTYyI.mjs → SceneMonitorEditor-DUZEpHBf.mjs} +3 -3
  4. package/dist/_stub.js +146 -131
  5. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-DXtR0Eje.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_osd_manager_page-pMeJvguf.mjs} +3 -3
  6. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BGMAwVi8.mjs +26 -0
  7. package/dist/{hostInit-DtrBgAfd.mjs → hostInit-Ius2kGzx.mjs} +2 -2
  8. package/dist/index.js +100 -4
  9. package/dist/index.mjs +100 -4
  10. package/dist/{player-overlays-DeO4qjxv.mjs → player-overlays-6Y9IRVsJ.mjs} +1 -1
  11. package/dist/remoteEntry.js +1 -1
  12. package/dist/{responsive-BiymurY0.mjs → responsive-CRQUI1kX.mjs} +1 -1
  13. package/dist/{scene-monitor-copy-CXLDSWeP.mjs → scene-monitor-copy-Ng8lktvt.mjs} +1 -1
  14. package/dist/{square-Vgi9aM6a.mjs → square-C3jJtMZF.mjs} +1 -1
  15. package/dist/{trash-2-Ccc91Gq3.mjs → trash-2-CNbeJ76B.mjs} +1 -1
  16. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BYRSI4Gv.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-CcfyBYDS.mjs} +1 -1
  17. package/package.json +1 -1
  18. package/dist/_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BbmRj6OR.mjs +0 -26
@@ -1,8 +1,8 @@
1
1
  import { S as e, _ as t, d as n, g as r, l as i, v as a } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-C-pbjC7c.mjs";
2
2
  import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
3
3
  import { r as l, t as ee } from "./ui-text-BitwQ50T.mjs";
4
- import { a as u, i as d, l as f, r as p, s as te } from "./responsive-BiymurY0.mjs";
5
- import { n as ne, t as m } from "./player-overlays-DeO4qjxv.mjs";
4
+ import { a as u, i as d, l as f, r as p, s as te } from "./responsive-CRQUI1kX.mjs";
5
+ import { n as ne, t as m } from "./player-overlays-6Y9IRVsJ.mjs";
6
6
  import { MaskShapeCanvas as h } from "./MaskShapeCanvas-BFhkWNJD.mjs";
7
7
  var g = f("grid-2x2", [
8
8
  ["path", {
@@ -1,10 +1,10 @@
1
1
  import { S as e, _ as t, d as n, g as r, l as i, v as a } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-C-pbjC7c.mjs";
2
2
  import { n as o, r as s, t as ee } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
3
3
  import { r as te, t as ne } from "./ui-text-BitwQ50T.mjs";
4
- import { a as re, i as ie, l as c, r as l, s as ae } from "./responsive-BiymurY0.mjs";
5
- import { n as oe, t as se } from "./player-overlays-DeO4qjxv.mjs";
6
- import { n as ce, r as le, t as ue } from "./square-Vgi9aM6a.mjs";
7
- import { t as de } from "./trash-2-Ccc91Gq3.mjs";
4
+ import { a as re, i as ie, l as c, r as l, s as ae } from "./responsive-CRQUI1kX.mjs";
5
+ import { n as oe, t as se } from "./player-overlays-6Y9IRVsJ.mjs";
6
+ import { n as ce, r as le, t as ue } from "./square-C3jJtMZF.mjs";
7
+ import { t as de } from "./trash-2-CNbeJ76B.mjs";
8
8
  import { MaskShapeCanvas as fe } from "./MaskShapeCanvas-BFhkWNJD.mjs";
9
9
  var pe = c("hexagon", [["path", {
10
10
  d: "M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z",
@@ -1,9 +1,9 @@
1
1
  import { S as e, _ as t, d as n, g as r, l as i, v as a } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-C-pbjC7c.mjs";
2
2
  import { n as o, r as s, t as c } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
3
3
  import { r as l, t as u } from "./ui-text-BitwQ50T.mjs";
4
- import { a as d, i as f, l as p, o as m, r as h, s as g } from "./responsive-BiymurY0.mjs";
5
- import { a as _, c as v, d as y, i as ee, l as te, n as b, o as x, r as S, s as C, t as w, u as T } from "./scene-monitor-copy-CXLDSWeP.mjs";
6
- import { t as E } from "./trash-2-Ccc91Gq3.mjs";
4
+ import { a as d, i as f, l as p, o as m, r as h, s as g } from "./responsive-CRQUI1kX.mjs";
5
+ import { a as _, c as v, d as y, i as ee, l as te, n as b, o as x, r as S, s as C, t as w, u as T } from "./scene-monitor-copy-Ng8lktvt.mjs";
6
+ import { t as E } from "./trash-2-CNbeJ76B.mjs";
7
7
  import { MaskShapeCanvas as D } from "./MaskShapeCanvas-BFhkWNJD.mjs";
8
8
  var O = p("settings-2", [
9
9
  ["path", {
package/dist/_stub.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import "./virtualExposes-BgZ5Cn7S.mjs";
2
- import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BYRSI4Gv.mjs";
2
+ import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-CcfyBYDS.mjs";
3
3
  import { S as e, _ as t, a as n, b as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, p as f, r as p, t as m, u as h, v as g, y as _ } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react__loadShare__.js-C-pbjC7c.mjs";
4
4
  import { n as v, r as y, t as b } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DalfdIDw.mjs";
5
5
  import { n as x, r as S } from "./ui-text-BitwQ50T.mjs";
6
- import { a as C, c as w, d as T, f as E, g as D, h as O, l as k, m as A, n as j, o as M, p as N, r as ee, s as te, t as P, u as ne, v as re } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BbmRj6OR.mjs";
7
- import { a as ie, c as ae, l as F, n as oe, o as se, s as ce, t as le } from "./responsive-BiymurY0.mjs";
8
- import { d as ue, l as de, u as fe } from "./scene-monitor-copy-CXLDSWeP.mjs";
9
- import { i as pe, r as me } from "./player-overlays-DeO4qjxv.mjs";
10
- import { r as he, t as ge } from "./square-Vgi9aM6a.mjs";
11
- import { t as _e } from "./trash-2-Ccc91Gq3.mjs";
6
+ import { a as C, c as w, d as T, f as E, g as D, h as O, l as k, m as A, n as j, o as M, p as N, r as ee, s as te, t as P, u as ne, v as re } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BGMAwVi8.mjs";
7
+ import { a as ie, c as ae, l as F, n as oe, o as se, s as ce, t as le } from "./responsive-CRQUI1kX.mjs";
8
+ import { d as ue, l as de, u as fe } from "./scene-monitor-copy-Ng8lktvt.mjs";
9
+ import { i as pe, r as me } from "./player-overlays-6Y9IRVsJ.mjs";
10
+ import { r as he, t as ge } from "./square-C3jJtMZF.mjs";
11
+ import { t as _e } from "./trash-2-CNbeJ76B.mjs";
12
12
  import { t as ve } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_trpc_mf_1_react_mf_2_query__loadShare__.js-BpP33rwB.mjs";
13
13
  import { t as ye } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare__react_mf_2_dom__loadShare__.js-qB5uHZAd.mjs";
14
14
  import { t as be } from "./_virtual_mf___mfe_internal__addon_osd_manager_page__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-B7mAiXr4.mjs";
@@ -5358,7 +5358,7 @@ function Ka({ className: e, ...t }) {
5358
5358
  }
5359
5359
  //#endregion
5360
5360
  //#region ../../node_modules/qrcode.react/lib/esm/index.js
5361
- e(), e(), e(), e(), e(), e(), e(), n(() => import("./MotionZonesSettings-3OswGeMl.mjs").then((e) => ({ default: e.MotionZonesSettings }))), n(() => import("./PrivacyMaskSettings-CxN7tOH_.mjs").then((e) => ({ default: e.PrivacyMaskSettings }))), e(), e();
5361
+ e(), e(), e(), e(), e(), e(), e(), n(() => import("./MotionZonesSettings-Da16aeu1.mjs").then((e) => ({ default: e.MotionZonesSettings }))), n(() => import("./PrivacyMaskSettings-Cn7oHD35.mjs").then((e) => ({ default: e.PrivacyMaskSettings }))), e(), e();
5362
5362
  var qa = Object.defineProperty, Ja = Object.getOwnPropertySymbols, Ya = Object.prototype.hasOwnProperty, Xa = Object.prototype.propertyIsEnumerable, Za = (e, t, n) => t in e ? qa(e, t, {
5363
5363
  enumerable: !0,
5364
5364
  configurable: !0,
@@ -19800,94 +19800,103 @@ function VS(e, t, n) {
19800
19800
  noun: AS(e, n)
19801
19801
  }) : n("uiLibrary.devicePicker.noneAvailable", "No {{plural}} available.", { plural: r });
19802
19802
  }
19803
- function HS({ devices: e, listState: t, fleet: n, value: r, onChange: i, emptyMeansAll: a = !1, savedHadDevices: s = !1, noun: c = "camera", groupTitle: l, emptyLabel: u, annotate: d, disabled: f = !1, testId: p, showAll: m = !1, lockedIds: h, lockedNote: _ }) {
19804
- let b = S(), x = l ?? ((e) => RS(e, b)), C = _ ?? b("uiLibrary.devicePicker.alreadyAdded", "Already added"), w = o(() => _S(e), [e]), T = n ?? {
19803
+ function HS({ devices: e, listState: t, fleet: n, value: r, onChange: i, selection: a = "multiple", groupBy: s, emptyMeansAll: c = !1, savedHadDevices: l = !1, noun: u = "camera", groupTitle: d, emptyLabel: f, annotate: p, disabled: m = !1, testId: h, showAll: _ = !1, lockedIds: b, lockedNote: x }) {
19804
+ let C = S(), w = d ?? ((e) => RS(e, C)), T = x ?? C("uiLibrary.devicePicker.alreadyAdded", "Already added"), E = o(() => _S(e), [e]), D = n ?? {
19805
19805
  state: t,
19806
- devices: t === "answered" ? w : void 0
19807
- }, E = o(() => new Set(h ?? []), [h]), D = (e) => i(E.size === 0 ? e : e.filter((e) => !E.has(e))), [O, k] = g(!1), [A, j] = g(!1), [M, N] = g(s || r.length > 0);
19808
- r.length > 0 && !M && N(!0);
19809
- let ee = BS(r, w, T, c, b), te = Dx(ee, A || m), P = O || m, ne = OS(a, r.length, M), re = kS[c];
19810
- return t === "answered" && DS(t, w.length, r.length) ? /* @__PURE__ */ y("div", {
19811
- "data-testid": p,
19806
+ devices: t === "answered" ? E : void 0
19807
+ }, O = o(() => new Set(b ?? []), [b]), k = (e) => i(O.size === 0 ? e : e.filter((e) => !O.has(e))), [A, j] = g(!1), [M, N] = g(!1), [ee, te] = g(l || r.length > 0);
19808
+ r.length > 0 && !ee && te(!0);
19809
+ let P = BS(r, E, D, u, C), ne = Dx(P, M || _), re = A || _, ie = OS(c, r.length, ee), ae = kS[u];
19810
+ return t === "answered" && DS(t, E.length, r.length) ? /* @__PURE__ */ y("div", {
19811
+ "data-testid": h,
19812
19812
  children: [/* @__PURE__ */ v("p", {
19813
19813
  className: "text-[10px] text-foreground-subtle mt-0.5",
19814
- children: VS(c, a, b)
19815
- }), ne && /* @__PURE__ */ v(PS, { noun: c })]
19814
+ children: VS(u, c, C)
19815
+ }), ie && /* @__PURE__ */ v(PS, { noun: u })]
19816
19816
  }) : /* @__PURE__ */ y("div", {
19817
19817
  className: "mt-1 space-y-1.5",
19818
- "data-testid": p,
19818
+ "data-testid": h,
19819
19819
  children: [
19820
- t === "pending" && /* @__PURE__ */ v(FS, { noun: re }),
19821
- t === "failed" && /* @__PURE__ */ v(IS, { noun: c === "camera" ? "devices" : re }),
19822
- /* @__PURE__ */ y("div", {
19820
+ t === "pending" && /* @__PURE__ */ v(FS, { noun: ae }),
19821
+ t === "failed" && /* @__PURE__ */ v(IS, { noun: u === "camera" ? "devices" : ae }),
19822
+ !(a === "single" && P.length === 0) && /* @__PURE__ */ y("div", {
19823
19823
  className: "flex flex-wrap items-center gap-1",
19824
19824
  children: [
19825
- ee.length === 0 ? /* @__PURE__ */ v("span", {
19825
+ P.length === 0 ? /* @__PURE__ */ v("span", {
19826
19826
  className: "text-[11px] text-foreground-subtle",
19827
- children: u ?? (a ? b("uiLibrary.devicePicker.everyNoRestriction", "Every {{noun}} — no restriction", { noun: AS(c, b) }) : b("uiLibrary.devicePicker.noneSelected", "None selected"))
19828
- }) : te.shown.map((e) => /* @__PURE__ */ v(Da, {
19827
+ children: f ?? (c ? C("uiLibrary.devicePicker.everyNoRestriction", "Every {{noun}} — no restriction", { noun: AS(u, C) }) : C("uiLibrary.devicePicker.noneSelected", "None selected"))
19828
+ }) : ne.shown.map((e) => /* @__PURE__ */ v(Da, {
19829
19829
  testId: `picker-chip-${String(e.id)}`,
19830
19830
  label: e.label,
19831
19831
  warning: e.removed,
19832
- ...f ? {} : { onRemove: () => i(r.filter((t) => t !== e.id)) }
19832
+ ...m ? {} : { onRemove: () => i(r.filter((t) => t !== e.id)) }
19833
19833
  }, e.id)),
19834
- te.hidden > 0 && /* @__PURE__ */ v("button", {
19834
+ ne.hidden > 0 && /* @__PURE__ */ v("button", {
19835
19835
  type: "button",
19836
19836
  className: "rounded-md border border-border px-1.5 py-0.5 text-[11px] text-foreground-subtle hover:bg-surface-hover",
19837
- onClick: () => j(!0),
19838
- children: b("uiLibrary.devicePicker.moreChips", "+{{count}} more", { count: te.hidden })
19837
+ onClick: () => N(!0),
19838
+ children: C("uiLibrary.devicePicker.moreChips", "+{{count}} more", { count: ne.hidden })
19839
19839
  }),
19840
- A && ee.length > 6 && /* @__PURE__ */ v("button", {
19840
+ M && P.length > 6 && /* @__PURE__ */ v("button", {
19841
19841
  type: "button",
19842
19842
  className: "text-[11px] text-foreground-subtle underline",
19843
- onClick: () => j(!1),
19844
- children: b("uiLibrary.devicePicker.showFewer", "Show fewer")
19843
+ onClick: () => N(!1),
19844
+ children: C("uiLibrary.devicePicker.showFewer", "Show fewer")
19845
19845
  }),
19846
- t !== "pending" && !m && /* @__PURE__ */ v("button", {
19846
+ t !== "pending" && !_ && /* @__PURE__ */ v("button", {
19847
19847
  type: "button",
19848
- disabled: f,
19849
- "aria-expanded": O,
19850
- onClick: () => k((e) => !e),
19848
+ disabled: m,
19849
+ "aria-expanded": A,
19850
+ onClick: () => j((e) => !e),
19851
19851
  className: "rounded-md border border-dashed border-border px-1.5 py-0.5 text-[11px] text-foreground hover:bg-surface-hover disabled:opacity-50",
19852
- children: O ? b("uiLibrary.devicePicker.done", "Done") : r.length === 0 ? b("uiLibrary.devicePicker.addPlural", "Add {{plural}}…", { plural: jS(c, b) }) : b("uiLibrary.devicePicker.edit", "Edit…")
19852
+ children: A ? C("uiLibrary.devicePicker.done", "Done") : r.length === 0 ? C("uiLibrary.devicePicker.addPlural", "Add {{plural}}…", { plural: jS(u, C) }) : C("uiLibrary.devicePicker.edit", "Edit…")
19853
19853
  })
19854
19854
  ]
19855
19855
  }),
19856
- P && t === "answered" && (zS(c) ? /* @__PURE__ */ v(US, {
19857
- devices: w,
19856
+ re && t === "answered" && (zS(u) ? /* @__PURE__ */ v(US, {
19857
+ devices: E,
19858
19858
  value: r,
19859
- onChange: D,
19860
- locked: E,
19861
- lockedNote: C,
19862
- annotate: d,
19863
- groupTitle: x,
19864
- noun: c,
19865
- disabled: f,
19866
- showAll: m
19859
+ onChange: k,
19860
+ locked: O,
19861
+ lockedNote: T,
19862
+ annotate: p,
19863
+ groupTitle: w,
19864
+ noun: u,
19865
+ disabled: m,
19866
+ showAll: _,
19867
+ selection: a,
19868
+ ...s === void 0 ? {} : { pinnedGroupBy: s }
19867
19869
  }) : /* @__PURE__ */ v(KS, {
19868
- devices: w,
19870
+ devices: E,
19869
19871
  value: r,
19870
- onChange: D,
19871
- locked: E,
19872
- lockedNote: C,
19873
- annotate: d,
19874
- groupTitle: x,
19875
- noun: c,
19876
- disabled: f,
19877
- showAll: m
19872
+ onChange: k,
19873
+ locked: O,
19874
+ lockedNote: T,
19875
+ annotate: p,
19876
+ groupTitle: w,
19877
+ noun: u,
19878
+ disabled: m,
19879
+ showAll: _,
19880
+ selection: a
19878
19881
  })),
19879
- ne && /* @__PURE__ */ v(PS, { noun: c })
19882
+ ie && /* @__PURE__ */ v(PS, { noun: u })
19880
19883
  ]
19881
19884
  });
19882
19885
  }
19883
19886
  function US(e) {
19884
- let { groupBy: t, setGroupBy: n } = CS(), r = wS(!0);
19887
+ let t = CS(), [n, r] = g(null), i = e.pinnedGroupBy, a = i === void 0 ? t.groupBy : n ?? i, o = (e) => {
19888
+ if (i !== void 0) {
19889
+ r(e);
19890
+ return;
19891
+ }
19892
+ t.setGroupBy(e);
19893
+ }, s = wS(!0);
19885
19894
  return /* @__PURE__ */ v(KS, {
19886
19895
  ...e,
19887
19896
  grouping: {
19888
- groupBy: t,
19889
- onGroupByChange: n,
19890
- zones: r
19897
+ groupBy: a,
19898
+ onGroupByChange: o,
19899
+ zones: s
19891
19900
  }
19892
19901
  });
19893
19902
  }
@@ -19898,101 +19907,106 @@ var GS = {
19898
19907
  state: "answered",
19899
19908
  zones: []
19900
19909
  };
19901
- function KS({ devices: e, value: t, onChange: n, annotate: r, groupTitle: i, noun: a, disabled: s, locked: c, lockedNote: l, showAll: u, grouping: d }) {
19902
- let f = S(), [p, m] = g(Kx), [h, _] = g(/* @__PURE__ */ new Map()), [b, x] = g(60), C = u || gx(p.query).length > 0, w = d?.groupBy, T = d?.zones ?? GS, E = o(() => eS(e, p, T), [
19910
+ function KS({ devices: e, value: t, onChange: n, annotate: r, groupTitle: i, noun: a, disabled: s, locked: c, lockedNote: l, showAll: u, selection: d, grouping: p }) {
19911
+ let m = S(), h = f(), [_, b] = g(Kx), [x, C] = g(/* @__PURE__ */ new Map()), [w, T] = g(60), E = u || gx(_.query).length > 0, D = p?.groupBy, O = p?.zones ?? GS, k = o(() => eS(e, _, O), [
19903
19912
  e,
19904
- p,
19905
- T
19906
- ]), D = o(() => w === void 0 ? null : Hx(E, t, w, T), [
19907
- E,
19913
+ _,
19914
+ O
19915
+ ]), A = o(() => D === void 0 ? null : Hx(k, t, D, O), [
19916
+ k,
19908
19917
  t,
19909
- w,
19910
- T
19911
- ]), O = o(() => D === null ? Cx(xx(E, t), t, h, C) : Ux(D, t, h, C), [
19912
19918
  D,
19913
- E,
19919
+ O
19920
+ ]), j = o(() => A === null ? Cx(xx(k, t), t, x, E) : Ux(A, t, x, E), [
19921
+ A,
19922
+ k,
19914
19923
  t,
19915
- h,
19916
- C
19917
- ]), k = D?.groupBy ?? null, A = o(() => Zx(e, "type", p.types, T), [
19924
+ x,
19925
+ E
19926
+ ]), M = A?.groupBy ?? null, N = o(() => Zx(e, "type", _.types, O), [
19918
19927
  e,
19919
- p.types,
19920
- T
19921
- ]), j = o(() => Zx(e, "zone", p.zones, T), [
19928
+ _.types,
19929
+ O
19930
+ ]), ee = o(() => Zx(e, "zone", _.zones, O), [
19922
19931
  e,
19923
- p.zones,
19924
- T
19925
- ]), M = o(() => d === void 0 ? [] : Zx(e, "location", p.locations, T), [
19932
+ _.zones,
19933
+ O
19934
+ ]), te = o(() => p === void 0 ? [] : Zx(e, "location", _.locations, O), [
19926
19935
  e,
19927
- p.locations,
19928
- T,
19929
- d
19930
- ]), N = o(() => iS(t, e, E), [
19936
+ _.locations,
19937
+ O,
19938
+ p
19939
+ ]), P = o(() => iS(t, e, k), [
19931
19940
  e,
19932
19941
  t,
19933
- E
19934
- ]), ee = Ox(O, u ? O.length : b), te = (e, t) => _((n) => new Map([...n, [e.key, !t]]));
19942
+ k
19943
+ ]), ne = Ox(j, u ? j.length : w), re = (e, t) => C((n) => new Map([...n, [e.key, !t]]));
19935
19944
  return /* @__PURE__ */ y("div", {
19936
19945
  className: "rounded-md border border-border bg-surface p-2",
19937
19946
  "data-testid": "device-picker-panel",
19938
19947
  children: [
19939
19948
  /* @__PURE__ */ v(mS, {
19940
- filters: p,
19949
+ filters: _,
19941
19950
  onFiltersChange: (e) => {
19942
- m(e), x(60);
19951
+ b(e), T(60);
19943
19952
  },
19944
- typeOptions: A,
19945
- zoneOptions: j,
19946
- locationOptions: M,
19947
- zones: T,
19948
- ...d === void 0 ? {} : { grouping: {
19949
- groupBy: d.groupBy,
19950
- onGroupByChange: d.onGroupByChange,
19951
- fallback: D?.fallback ?? null
19953
+ typeOptions: N,
19954
+ zoneOptions: ee,
19955
+ locationOptions: te,
19956
+ zones: O,
19957
+ ...p === void 0 ? {} : { grouping: {
19958
+ groupBy: p.groupBy,
19959
+ onGroupByChange: p.onGroupByChange,
19960
+ fallback: A?.fallback ?? null
19952
19961
  } },
19953
- searchPlaceholder: WS(a, f),
19954
- searchLabel: a === "camera" || a === "device" ? f("uiLibrary.devicePicker.searchDevices", "Search devices") : f("uiLibrary.devicePicker.searchPlural", "Search {{plural}}", { plural: jS(a, f) }),
19962
+ searchPlaceholder: WS(a, m),
19963
+ searchLabel: a === "camera" || a === "device" ? m("uiLibrary.devicePicker.searchDevices", "Search devices") : m("uiLibrary.devicePicker.searchPlural", "Search {{plural}}", { plural: jS(a, m) }),
19955
19964
  disabled: s
19956
19965
  }),
19957
19966
  /* @__PURE__ */ v("p", {
19958
19967
  className: "mt-1 text-[10px] text-foreground-subtle",
19959
- children: f("uiLibrary.devicePicker.shownOf", "{{shown}} of {{total}} shown · {{selected}} selected", {
19960
- shown: E.length,
19968
+ children: d === "single" ? m("uiLibrary.devicePicker.shownOfSingle", "{{shown}} of {{total}} shown", {
19969
+ shown: k.length,
19970
+ total: e.length
19971
+ }) : m("uiLibrary.devicePicker.shownOf", "{{shown}} of {{total}} shown · {{selected}} selected", {
19972
+ shown: k.length,
19961
19973
  total: e.length,
19962
19974
  selected: t.length
19963
19975
  })
19964
19976
  }),
19965
- O.length === 0 ? /* @__PURE__ */ v("p", {
19977
+ j.length === 0 ? /* @__PURE__ */ v("p", {
19966
19978
  className: "py-2 text-[11px] text-foreground-subtle italic",
19967
- children: a === "camera" || a === "device" ? f("uiLibrary.devicePicker.noDeviceMatches", "No device matches.") : f("uiLibrary.devicePicker.noNounMatches", "No {{noun}} matches.", { noun: AS(a, f) })
19979
+ children: a === "camera" || a === "device" ? m("uiLibrary.devicePicker.noDeviceMatches", "No device matches.") : m("uiLibrary.devicePicker.noNounMatches", "No {{noun}} matches.", { noun: AS(a, m) })
19968
19980
  }) : /* @__PURE__ */ y("div", {
19969
19981
  className: u ? "mt-1" : "mt-1 max-h-72 overflow-y-auto",
19970
19982
  "data-testid": "device-picker-rows",
19971
- children: [ee.rows.map((e) => /* @__PURE__ */ v(JS, {
19983
+ children: [ne.rows.map((e) => /* @__PURE__ */ v(JS, {
19972
19984
  row: e,
19973
19985
  value: t,
19974
19986
  onChange: n,
19975
- onToggleGroup: te,
19987
+ onToggleGroup: re,
19976
19988
  annotate: r,
19977
19989
  groupTitle: i,
19978
- groupBy: k,
19990
+ groupBy: M,
19979
19991
  disabled: s,
19980
19992
  locked: c,
19981
- lockedNote: l
19982
- }, e.key)), ee.remaining > 0 && /* @__PURE__ */ v("button", {
19993
+ lockedNote: l,
19994
+ selection: d,
19995
+ radioName: h
19996
+ }, e.key)), ne.remaining > 0 && /* @__PURE__ */ v("button", {
19983
19997
  type: "button",
19984
19998
  className: "mt-1 w-full rounded border border-border py-1 text-[11px] text-foreground-subtle hover:bg-surface-hover",
19985
- onClick: () => x((e) => e + 60),
19986
- children: f("uiLibrary.devicePicker.showMore", "Show {{count}} more ({{left}} left)", {
19987
- count: Math.min(ee.remaining, 60),
19988
- left: ee.remaining
19999
+ onClick: () => T((e) => e + 60),
20000
+ children: m("uiLibrary.devicePicker.showMore", "Show {{count}} more ({{left}} left)", {
20001
+ count: Math.min(ne.remaining, 60),
20002
+ left: ne.remaining
19989
20003
  })
19990
20004
  })]
19991
20005
  }),
19992
- N > 0 && /* @__PURE__ */ v("p", {
20006
+ P > 0 && /* @__PURE__ */ v("p", {
19993
20007
  className: "mt-1 text-[10px] text-foreground-subtle",
19994
20008
  "data-testid": "picker-hidden-selected",
19995
- children: f("uiLibrary.devicePicker.hiddenSelected", "{{count}} selected hidden by filters", { count: N })
20009
+ children: m("uiLibrary.devicePicker.hiddenSelected", "{{count}} selected hidden by filters", { count: P })
19996
20010
  })
19997
20011
  ]
19998
20012
  });
@@ -20006,8 +20020,8 @@ function qS(e, t) {
20006
20020
  ].filter((e) => e !== null);
20007
20021
  return r.length > 0 ? r.join(" · ") : void 0;
20008
20022
  }
20009
- function JS({ row: e, value: t, onChange: n, onToggleGroup: r, annotate: i, groupTitle: a, groupBy: o, disabled: s, locked: c, lockedNote: l }) {
20010
- let u = S();
20023
+ function JS({ row: e, value: t, onChange: n, onToggleGroup: r, annotate: i, groupTitle: a, groupBy: o, disabled: s, locked: c, lockedNote: l, selection: u, radioName: d }) {
20024
+ let f = S(), p = u === "single";
20011
20025
  if (e.kind === "header") {
20012
20026
  let { group: i, expanded: o } = e;
20013
20027
  return /* @__PURE__ */ y("div", {
@@ -20025,7 +20039,7 @@ function JS({ row: e, value: t, onChange: n, onToggleGroup: r, annotate: i, grou
20025
20039
  className: "truncate",
20026
20040
  children: a(i)
20027
20041
  }),
20028
- /* @__PURE__ */ y("span", {
20042
+ !p && /* @__PURE__ */ y("span", {
20029
20043
  className: "font-normal normal-case",
20030
20044
  children: [
20031
20045
  "(",
@@ -20037,32 +20051,33 @@ function JS({ row: e, value: t, onChange: n, onToggleGroup: r, annotate: i, grou
20037
20051
  })
20038
20052
  ]
20039
20053
  }),
20040
- /* @__PURE__ */ v("button", {
20054
+ !p && /* @__PURE__ */ v("button", {
20041
20055
  type: "button",
20042
20056
  disabled: s,
20043
20057
  className: "text-[10px] text-primary hover:underline disabled:opacity-50",
20044
20058
  onClick: () => n(Tx(t, i)),
20045
- children: u("uiLibrary.devicePicker.all", "All")
20059
+ children: f("uiLibrary.devicePicker.all", "All")
20046
20060
  }),
20047
- /* @__PURE__ */ v("button", {
20061
+ !p && /* @__PURE__ */ v("button", {
20048
20062
  type: "button",
20049
20063
  disabled: s,
20050
20064
  className: "text-[10px] text-foreground-subtle hover:underline disabled:opacity-50",
20051
20065
  onClick: () => n(Ex(t, i)),
20052
- children: u("uiLibrary.devicePicker.clear", "Clear")
20066
+ children: f("uiLibrary.devicePicker.clear", "Clear")
20053
20067
  })
20054
20068
  ]
20055
20069
  });
20056
20070
  }
20057
- let d = c.has(e.device.id), f = d ? l : i?.(e.device.id), p = qS(e.device, o);
20071
+ let m = c.has(e.device.id), h = m ? l : i?.(e.device.id), g = qS(e.device, o);
20058
20072
  return /* @__PURE__ */ y("label", {
20059
20073
  className: "flex cursor-pointer items-center gap-2.5 px-3 py-1 text-xs text-foreground hover:bg-surface-hover",
20060
20074
  "data-testid": "device-picker-row",
20061
20075
  children: [/* @__PURE__ */ v("input", {
20062
- type: "checkbox",
20063
- checked: e.selected || d,
20064
- disabled: s || d,
20065
- onChange: () => n(wx(t, e.device.id)),
20076
+ type: p ? "radio" : "checkbox",
20077
+ ...p ? { name: d } : {},
20078
+ checked: e.selected || m,
20079
+ disabled: s || m,
20080
+ onChange: () => n(p ? [e.device.id] : wx(t, e.device.id)),
20066
20081
  className: "accent-primary",
20067
20082
  "data-device-id": String(e.device.id)
20068
20083
  }), /* @__PURE__ */ y("span", {
@@ -20072,13 +20087,13 @@ function JS({ row: e, value: t, onChange: n, onToggleGroup: r, annotate: i, grou
20072
20087
  className: "truncate",
20073
20088
  children: e.device.name
20074
20089
  }),
20075
- p !== void 0 && /* @__PURE__ */ v("span", {
20090
+ g !== void 0 && /* @__PURE__ */ v("span", {
20076
20091
  className: "truncate text-[10px] text-foreground-subtle",
20077
- children: p
20092
+ children: g
20078
20093
  }),
20079
- f !== void 0 && /* @__PURE__ */ v("span", {
20080
- className: d ? "text-[10px] text-foreground-subtle" : "text-[10px] text-warning",
20081
- children: f
20094
+ h !== void 0 && /* @__PURE__ */ v("span", {
20095
+ className: m ? "text-[10px] text-foreground-subtle" : "text-[10px] text-warning",
20096
+ children: h
20082
20097
  })
20083
20098
  ]
20084
20099
  })]
@@ -20349,7 +20364,7 @@ function EC(e, t) {
20349
20364
  translate: (t, n) => bC(e, dC(), t, n)
20350
20365
  };
20351
20366
  }
20352
- e(), n(() => import("./MaskShapeCanvas-BFhkWNJD.mjs").then((e) => ({ default: e.MaskShapeCanvas }))), n(() => import("./MotionZonesSettings-3OswGeMl.mjs").then((e) => ({ default: e.MotionZonesSettings }))), n(() => import("./SceneMonitorEditor-l9nWTYyI.mjs").then((e) => ({ default: e.SceneMonitorEditor }))), n(() => import("./PrivacyMaskSettings-CxN7tOH_.mjs").then((e) => ({ default: e.PrivacyMaskSettings })));
20367
+ e(), n(() => import("./MaskShapeCanvas-BFhkWNJD.mjs").then((e) => ({ default: e.MaskShapeCanvas }))), n(() => import("./MotionZonesSettings-Da16aeu1.mjs").then((e) => ({ default: e.MotionZonesSettings }))), n(() => import("./SceneMonitorEditor-DUZEpHBf.mjs").then((e) => ({ default: e.SceneMonitorEditor }))), n(() => import("./PrivacyMaskSettings-Cn7oHD35.mjs").then((e) => ({ default: e.PrivacyMaskSettings })));
20353
20368
  //#endregion
20354
20369
  //#region src/i18n/index.ts
20355
20370
  var { useT: DC, Trans: OC, translate: kC } = EC("osd-manager", {
@@ -1,4 +1,4 @@
1
- import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-BYRSI4Gv.mjs";
1
+ import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_osd_manager_page__remoteEntry_js-CcfyBYDS.mjs";
2
2
  //#region \0virtual:mf-localSharedImportMap:__mfe_internal__addon_osd_manager_page
3
3
  var e = {
4
4
  "@camstack/sdk": {
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.406",
21
+ version: "1.2.407",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_osd_manager_page",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.2.321",
36
+ version: "1.2.322",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_osd_manager_page",