@camstack/addon-training 0.1.21 → 0.1.23

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 (43) hide show
  1. package/dist/MaskShapeCanvas-BokARvOj.mjs +13806 -0
  2. package/dist/MotionZonesSettings-CwGjtvsX.mjs +310 -0
  3. package/dist/{PrivacyMaskSettings-Bo1S23wt.mjs → PrivacyMaskSettings-CM_WsrKB.mjs} +70 -45
  4. package/dist/{SceneMonitorEditor-DnQJ7Hx3.mjs → SceneMonitorEditor-B-sAJ--C.mjs} +311 -311
  5. package/dist/_stub.js +7372 -16803
  6. package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-DQi_LrZZ.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_training_page-DKblQaAP.mjs} +2 -2
  7. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-ff7X-Xlf.mjs +26 -0
  8. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-BSOdwqcC.mjs +26 -0
  9. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_trpc_mf_1_client__loadShare__.js-B3rryujf.mjs +25 -0
  10. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_trpc_mf_1_react_mf_2_query__loadShare__.js-nL4MGFRP.mjs +26 -0
  11. package/dist/{_virtual_mf___mfe_internal__addon_training_page__loadShare__react__loadShare__.js-DeDbF7NI.mjs → _virtual_mf___mfe_internal__addon_training_page__loadShare__react__loadShare__.js-BT_wL8s3.mjs} +1 -1
  12. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DDBEvLdo.mjs +26 -0
  13. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_2_dom__loadShare__.js-CK-LlgOt.mjs +26 -0
  14. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-gTIQrhKs.mjs +25 -0
  15. package/dist/{dist-BSYBh1ZO.mjs → dist-CVDWIKl7.mjs} +52 -2
  16. package/dist/{dist-BCLkrWJc.js → dist-DwF1P1v7.js} +87 -1
  17. package/dist/{hostInit-Bx2a8M7w.mjs → hostInit-Di0tDODX.mjs} +1 -1
  18. package/dist/index.js +8 -1
  19. package/dist/index.mjs +7 -0
  20. package/dist/orchestrator/training.addon.js +8 -1
  21. package/dist/orchestrator/training.addon.mjs +8 -1
  22. package/dist/{player-overlays-BR2_H0wZ.mjs → player-overlays-BFAqW2L1.mjs} +10 -32
  23. package/dist/providers/modal/training-modal.addon.js +196 -123
  24. package/dist/providers/modal/training-modal.addon.mjs +196 -123
  25. package/dist/remoteEntry.js +1 -1
  26. package/dist/{responsive-emJo3EdF.mjs → responsive-BBlQWFFi.mjs} +38 -42
  27. package/dist/{scene-monitor-copy-CcQxbRXa.mjs → scene-monitor-copy-D5mKGqt0.mjs} +4 -4
  28. package/dist/{square-CErp1WgN.mjs → square-D0FYSm8b.mjs} +4 -29
  29. package/dist/{trash-2-Drz0fMgI.mjs → trash-2-DdjGvgDw.mjs} +1 -1
  30. package/dist/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-C-uqIKLg.mjs → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_training_page__remoteEntry_js-Dw400Y0a.mjs} +390 -399
  31. package/package.json +1 -1
  32. package/dist/MaskShapeCanvas-Kfg9dl6B.mjs +0 -686
  33. package/dist/MotionZonesSettings-DflIL9ss.mjs +0 -292
  34. package/dist/ReactKonva-DGuYUN0L.mjs +0 -5416
  35. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-C7dks3FG.mjs +0 -26
  36. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-DpjirGmB.mjs +0 -89
  37. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_trpc_mf_1_client__loadShare__.js-CFCVuRAs.mjs +0 -58
  38. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare___mf_0_trpc_mf_1_react_mf_2_query__loadShare__.js-BkvDudqY.mjs +0 -62
  39. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DnrbBvrw.mjs +0 -34
  40. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_2_dom__loadShare__.js-DAZkHxxU.mjs +0 -45
  41. package/dist/_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-CHqN9NLt.mjs +0 -34
  42. package/dist/grid-2x2-D9syAI6z.mjs +0 -21
  43. package/dist/lib-CVGFTwe0.mjs +0 -7770
@@ -1,292 +0,0 @@
1
- import { S as e, _ as t, c as n, g as r, m as i, u as a } from "./_virtual_mf___mfe_internal__addon_training_page__loadShare__react__loadShare__.js-DeDbF7NI.mjs";
2
- import { f as o, h as s, m as ee, v as te } from "./responsive-emJo3EdF.mjs";
3
- import { r as c, t as l } from "./player-overlays-BR2_H0wZ.mjs";
4
- import { t as ne } from "./grid-2x2-D9syAI6z.mjs";
5
- import { n as u, r as d, t as f } from "./_virtual_mf___mfe_internal__addon_training_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-DnrbBvrw.mjs";
6
- import { MaskShapeCanvas as p } from "./MaskShapeCanvas-Kfg9dl6B.mjs";
7
- //#region ../ui-library/src/composites/cap-settings/MotionZonesSettings.tsx
8
- e();
9
- var m = 110, h = "motion-zones", g = 0, _ = [
10
- 1,
11
- 2,
12
- 3
13
- ], v = 1, y = "rounded-md border border-border bg-surface px-2 py-1 text-[11px] font-medium text-foreground-subtle hover:bg-surface-hover disabled:opacity-40 transition-colors", b = "rounded-md border border-primary/50 bg-primary/15 px-2.5 py-1 text-[11px] font-medium text-primary hover:bg-primary/25 disabled:opacity-40 transition-colors";
14
- function x(e, t, n) {
15
- let r = t * n, i = Array.from({ length: r });
16
- for (let t = 0; t < r; t += 1) i[t] = e[t] === !0;
17
- return i;
18
- }
19
- function S(e, t) {
20
- if (e.length !== t.length) return !1;
21
- for (let n = 0; n < e.length; n += 1) if (e[n] !== t[n]) return !1;
22
- return !0;
23
- }
24
- function C(e, t) {
25
- return Math.ceil(e / t);
26
- }
27
- function w(e, t, n) {
28
- return Math.min(n - 1, Math.floor((e + .5) / t * n));
29
- }
30
- function T(e, t, n, r) {
31
- let i = C(t, r), a = C(n, r), o = Array.from({ length: i * a }, () => !1);
32
- for (let r = 0; r < n; r += 1) {
33
- let s = w(r, n, a);
34
- for (let n = 0; n < t; n += 1) e[r * t + n] === !0 && (o[s * i + w(n, t, i)] = !0);
35
- }
36
- return o;
37
- }
38
- function E(e, t, n, r) {
39
- let i = C(t, r), a = C(n, r), o = Array.from({ length: t * n }, () => !1);
40
- for (let r = 0; r < n; r += 1) {
41
- let s = w(r, n, a);
42
- for (let n = 0; n < t; n += 1) o[r * t + n] = e[s * i + w(n, t, i)] === !0;
43
- }
44
- return o;
45
- }
46
- function D({ deviceId: e }) {
47
- let w = s(te().trpcClient, e), [D, O] = t(null), [k, A] = t(!1), [j, M] = t(null), [N, P] = t(null), [F, I] = t(v), [L, R] = t(!1), [z, B] = t(!1), V = r(!1);
48
- a(() => {
49
- if (!w) return;
50
- let e = !1;
51
- return V.current = !1, O(null), A(!1), M(null), P(null), I(v), B(!1), (async () => {
52
- try {
53
- let t = await w.motionZones?.getOptions({});
54
- if (e) return;
55
- if (!t) throw Error("device proxy not ready");
56
- if (O(t), V.current) return;
57
- let n = await w.motionZones?.getStatus({});
58
- if (e) return;
59
- if (!n) throw Error("device proxy not ready");
60
- V.current = !0;
61
- let r = n.regions.find((e) => e.shape.kind === "grid"), i = x(r ? r.shape.cells : [], t.grid.width, t.grid.height);
62
- P(i), M(T(i, t.grid.width, t.grid.height, v));
63
- } catch (t) {
64
- if (e) return;
65
- ee(t) ? A(!0) : console.error("Motion Zones load failed", t);
66
- }
67
- })(), () => {
68
- e = !0;
69
- };
70
- }, [w]);
71
- let H = D ? D.grid.width : 0, U = D ? D.grid.height : 0, W = C(H, F), G = C(U, F), K = i(() => j && D ? E(j, H, U, F) : null, [
72
- j,
73
- D,
74
- H,
75
- U,
76
- F
77
- ]), q = i(() => K !== null && N !== null && !S(K, N), [K, N]), J = i(() => K ? K.reduce((e, t) => t ? e + 1 : e, 0) : 0, [K]), Y = H * U, X = W * G, Z = n((e) => {
78
- X > 0 && M(Array.from({ length: X }, () => e));
79
- }, [X]), re = n(() => {
80
- M((e) => e && e.map((e) => !e));
81
- }, []), ie = n(() => {
82
- N && D && M(T(N, H, U, F));
83
- }, [
84
- N,
85
- D,
86
- H,
87
- U,
88
- F
89
- ]), ae = n((e) => {
90
- e === F || !D || M((t) => {
91
- if (!t) return I(e), t;
92
- let n = T(E(t, H, U, F), H, U, e);
93
- return I(e), n;
94
- });
95
- }, [
96
- F,
97
- D,
98
- H,
99
- U
100
- ]), Q = i(() => D && j ? [{
101
- id: g,
102
- shape: {
103
- kind: "grid",
104
- gridWidth: W,
105
- gridHeight: G,
106
- cells: [...j]
107
- }
108
- }] : [], [
109
- D,
110
- j,
111
- W,
112
- G
113
- ]), $ = n((e, t) => {
114
- t.kind === "grid" && M(t.cells);
115
- }, []), oe = n(async () => {
116
- if (!(!w || !j || !D)) {
117
- R(!0);
118
- try {
119
- let e = E(j, D.grid.width, D.grid.height, F), t = {
120
- kind: "grid",
121
- gridWidth: D.grid.width,
122
- gridHeight: D.grid.height,
123
- cells: e
124
- };
125
- await w.motionZones?.setZone({ patch: { regions: [{
126
- id: g,
127
- enabled: !0,
128
- shape: t
129
- }] } });
130
- let n = await w.motionZones?.getStatus({});
131
- if (n) {
132
- let e = n.regions.find((e) => e.shape.kind === "grid"), t = x(e ? e.shape.cells : [], D.grid.width, D.grid.height);
133
- P(t), M(T(t, D.grid.width, D.grid.height, F));
134
- }
135
- } catch (e) {
136
- console.error("Motion Zones save failed", e);
137
- } finally {
138
- R(!1);
139
- }
140
- }
141
- }, [
142
- w,
143
- j,
144
- D,
145
- F
146
- ]);
147
- return l(i(() => z && !k && D && j ? {
148
- id: h,
149
- order: m,
150
- node: /* @__PURE__ */ u(p, {
151
- transparent: !0,
152
- items: Q,
153
- supportedShapes: ["grid"],
154
- grid: {
155
- width: W,
156
- height: G
157
- },
158
- selectedId: g,
159
- onSelect: () => {},
160
- onShapeChange: $,
161
- onDrawComplete: () => {},
162
- drawingKind: null
163
- })
164
- } : null, [
165
- z,
166
- k,
167
- D,
168
- j,
169
- Q,
170
- $,
171
- W,
172
- G
173
- ])), w ? /* @__PURE__ */ u(c, {
174
- title: "Motion Zones",
175
- icon: /* @__PURE__ */ u(ne, { className: "h-3.5 w-3.5 text-foreground-subtle" }),
176
- children: /* @__PURE__ */ u("div", {
177
- className: "flex flex-col gap-3",
178
- children: k ? /* @__PURE__ */ u("p", {
179
- className: `${o} leading-relaxed`,
180
- children: "This camera doesn't expose an on-board motion zones grid."
181
- }) : !k && D !== null && j !== null ? /* @__PURE__ */ d(f, { children: [/* @__PURE__ */ d("p", {
182
- className: `${o} leading-relaxed`,
183
- children: [
184
- "Toggle ",
185
- /* @__PURE__ */ u("strong", {
186
- className: "text-foreground",
187
- children: "Edit grid"
188
- }),
189
- " to paint the region directly on the live frame, then ",
190
- /* @__PURE__ */ u("strong", {
191
- className: "text-foreground",
192
- children: "Save"
193
- }),
194
- " to push the mask to the camera. Pick a bigger",
195
- " ",
196
- /* @__PURE__ */ u("strong", {
197
- className: "text-foreground",
198
- children: "Cell size"
199
- }),
200
- " for quicker, broad-stroke painting — it's resampled to the camera's native ",
201
- D.grid.width,
202
- "×",
203
- D.grid.height,
204
- " grid on save (×1 is the finest)."
205
- ]
206
- }), /* @__PURE__ */ d("div", {
207
- className: "flex items-center gap-2 flex-wrap",
208
- children: [
209
- /* @__PURE__ */ u("button", {
210
- type: "button",
211
- onClick: () => B((e) => !e),
212
- disabled: L,
213
- "aria-pressed": z,
214
- className: z ? b : y,
215
- children: z ? "Done editing" : "Edit grid"
216
- }),
217
- /* @__PURE__ */ u("button", {
218
- type: "button",
219
- onClick: () => Z(!0),
220
- disabled: L,
221
- className: y,
222
- children: "All on"
223
- }),
224
- /* @__PURE__ */ u("button", {
225
- type: "button",
226
- onClick: () => Z(!1),
227
- disabled: L,
228
- className: y,
229
- children: "All off"
230
- }),
231
- /* @__PURE__ */ u("button", {
232
- type: "button",
233
- onClick: re,
234
- disabled: L,
235
- className: y,
236
- children: "Invert"
237
- }),
238
- /* @__PURE__ */ d("div", {
239
- className: "flex items-center gap-1 ml-1",
240
- role: "group",
241
- "aria-label": "Cell size",
242
- children: [/* @__PURE__ */ u("span", {
243
- className: `${o} mr-0.5`,
244
- children: "Cell size"
245
- }), _.map((e) => /* @__PURE__ */ d("button", {
246
- type: "button",
247
- onClick: () => ae(e),
248
- disabled: L,
249
- "aria-pressed": F === e,
250
- title: e === 1 ? `Camera grid ${H}×${U} (finest)` : `${C(H, e)}×${C(U, e)} painting grid · cells ×${e} bigger`,
251
- className: F === e ? b : y,
252
- children: ["×", e]
253
- }, e))]
254
- }),
255
- /* @__PURE__ */ d("span", {
256
- className: `${o} ml-1 tabular-nums`,
257
- children: [
258
- J,
259
- " / ",
260
- Y,
261
- " cells · ",
262
- D.grid.width,
263
- "×",
264
- D.grid.height,
265
- F === 1 ? "" : ` · paint ${W}×${G}`
266
- ]
267
- }),
268
- /* @__PURE__ */ u("span", { className: "flex-1" }),
269
- /* @__PURE__ */ u("button", {
270
- type: "button",
271
- onClick: ie,
272
- disabled: L || !q,
273
- className: "rounded-md border border-border bg-surface px-2 py-1 text-[11px] text-foreground-subtle hover:bg-surface-hover disabled:opacity-40 transition-colors",
274
- children: "Revert"
275
- }),
276
- /* @__PURE__ */ u("button", {
277
- type: "button",
278
- onClick: () => void oe(),
279
- disabled: L || !q,
280
- className: b,
281
- children: L ? "Saving…" : "Save"
282
- })
283
- ]
284
- })] }) : /* @__PURE__ */ u("p", {
285
- className: `${o} leading-relaxed`,
286
- children: "Loading the camera's grid…"
287
- })
288
- })
289
- }) : null;
290
- }
291
- //#endregion
292
- export { D as MotionZonesSettings };