@camstack/addon-import-alexa 0.2.148 → 0.2.150
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/assets/alexa-echo.LICENSE.md +13 -0
- package/assets/alexa-echo.svg +1 -0
- package/dist/MaskShapeCanvas-B6q5RDLi.mjs +13807 -0
- package/dist/MotionZonesSettings-Dxo0EAzN.mjs +309 -0
- package/dist/PrivacyMaskSettings-DwWxpZrj.mjs +368 -0
- package/dist/SceneMonitorEditor-CC0dk5TR.mjs +846 -0
- package/dist/_stub.js +39566 -0
- package/dist/_virtual_mf-localSharedImportMap___mfe_internal__addon_import_alexa_page-CcQjQJmj.mjs +156 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_camstack_mf_1_sdk__loadShare__.js-BmoaT3cr.mjs +25 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Msberbw_.mjs +26 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-Bct5qZia.mjs +25 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_trpc_mf_1_client__loadShare__.js-BHqOw8oh.mjs +25 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_trpc_mf_1_react_mf_2_query__loadShare__.js-B3qxfxBT.mjs +26 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react__loadShare__.js-DwXXYAlk.mjs +70 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-CUiVYNMY.mjs +26 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react_mf_2_dom__loadShare__.js-CIPmAyPi.mjs +25 -0
- package/dist/_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-tXm1x5EZ.mjs +25 -0
- package/dist/addon-import-alexa.css +3 -0
- package/dist/addon.js +2708 -149
- package/dist/addon.mjs +2724 -168
- package/dist/hostInit-CRUwUtSm.mjs +129 -0
- package/dist/index.js +1 -0
- package/dist/index.mjs +2 -2
- package/dist/player-overlays-DNpsEqAe.mjs +51 -0
- package/dist/remoteEntry.js +2 -0
- package/dist/remoteEntry.ssr.js +33 -0
- package/dist/responsive-B82v3AbM.mjs +125 -0
- package/dist/rolldown-runtime-HEgqtunE.mjs +20 -0
- package/dist/scene-monitor-copy-CPnjwzw6.mjs +227 -0
- package/dist/square-YTl_L1_3.mjs +45 -0
- package/dist/trash-2-DCHugLVt.mjs +25 -0
- package/dist/ui-text-B5YO4hoJ.mjs +34 -0
- package/dist/virtualExposes-lZT06jeg.mjs +2 -0
- package/dist/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_import_alexa_page__remoteEntry_js-DMdgQOgz.mjs +2857 -0
- package/dist/virtual_mf-exposes-ssr___mfe_internal__addon_import_alexa_page__remoteEntry_js-CViESMdd.mjs +10 -0
- package/dist/virtual_mf-exposes___mfe_internal__addon_import_alexa_page__remoteEntry_js-C3qJCjtV.mjs +27 -0
- package/i18n/en.json +8 -1
- package/i18n/it.json +8 -1
- package/package.json +26 -4
- package/python/NOTICE +4 -0
- package/python/alexa_gateway.py +226 -0
- package/python/alexa_protocol.py +115 -0
- package/python/alexa_sequences.py +74 -0
- package/python/alexa_worker.py +50 -0
- package/python/requirements.txt +3 -0
- package/python/test_alexa_gateway.py +141 -0
- package/python/test_alexa_protocol.py +177 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
//#region \0virtual:mf:__mfe_internal__addon_import_alexa_page__H_A_I__hostAutoInit__H_A_I__.js
|
|
2
|
+
var e = "__mf_module_cache__";
|
|
3
|
+
globalThis[e] ||= {
|
|
4
|
+
share: {},
|
|
5
|
+
remote: {}
|
|
6
|
+
}, globalThis[e].share ||= {}, globalThis[e].remote ||= {};
|
|
7
|
+
var t = globalThis[e], n;
|
|
8
|
+
async function r() {
|
|
9
|
+
return n ||= (async () => {
|
|
10
|
+
let e = await (await import("./remoteEntry.js")).init(), n = {
|
|
11
|
+
react: {
|
|
12
|
+
version: "19.2.7",
|
|
13
|
+
scope: "default",
|
|
14
|
+
shareConfig: {
|
|
15
|
+
singleton: !0,
|
|
16
|
+
requiredVersion: "*",
|
|
17
|
+
import: !1
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"react-dom": {
|
|
21
|
+
version: "19.2.7",
|
|
22
|
+
scope: "default",
|
|
23
|
+
shareConfig: {
|
|
24
|
+
singleton: !0,
|
|
25
|
+
requiredVersion: "*",
|
|
26
|
+
import: !1
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"react/jsx-runtime": {
|
|
30
|
+
version: "19.2.7",
|
|
31
|
+
scope: "default",
|
|
32
|
+
shareConfig: {
|
|
33
|
+
singleton: !0,
|
|
34
|
+
requiredVersion: "*",
|
|
35
|
+
import: !1
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"@camstack/types": {
|
|
39
|
+
version: "1.2.424",
|
|
40
|
+
scope: "default",
|
|
41
|
+
shareConfig: {
|
|
42
|
+
singleton: !0,
|
|
43
|
+
requiredVersion: "*",
|
|
44
|
+
import: !1
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"@camstack/sdk": {
|
|
48
|
+
version: "1.2.153",
|
|
49
|
+
scope: "default",
|
|
50
|
+
shareConfig: {
|
|
51
|
+
singleton: !0,
|
|
52
|
+
requiredVersion: "*",
|
|
53
|
+
import: !1
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"@tanstack/react-query": {
|
|
57
|
+
version: "5.101.0",
|
|
58
|
+
scope: "default",
|
|
59
|
+
shareConfig: {
|
|
60
|
+
singleton: !0,
|
|
61
|
+
requiredVersion: "*",
|
|
62
|
+
import: !1
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"@trpc/client": {
|
|
66
|
+
version: "11.18.0",
|
|
67
|
+
scope: "default",
|
|
68
|
+
shareConfig: {
|
|
69
|
+
singleton: !0,
|
|
70
|
+
requiredVersion: "*",
|
|
71
|
+
import: !1
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"@trpc/react-query": {
|
|
75
|
+
version: "11.18.0",
|
|
76
|
+
scope: "default",
|
|
77
|
+
shareConfig: {
|
|
78
|
+
singleton: !0,
|
|
79
|
+
requiredVersion: "*",
|
|
80
|
+
import: !1
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"@camstack/ui-library": {
|
|
84
|
+
version: "1.2.335",
|
|
85
|
+
scope: "default",
|
|
86
|
+
shareConfig: {
|
|
87
|
+
singleton: !0,
|
|
88
|
+
requiredVersion: "*",
|
|
89
|
+
import: !1
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"react-dom/client": {
|
|
93
|
+
version: "19.2.7",
|
|
94
|
+
scope: "default",
|
|
95
|
+
shareConfig: {
|
|
96
|
+
singleton: !0,
|
|
97
|
+
requiredVersion: "*",
|
|
98
|
+
import: !1
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}, r = (e, t, n, r) => {
|
|
102
|
+
let i = ((Array.isArray(r) ? r[0] : r) || "default") + ":";
|
|
103
|
+
return t || !n ? i + e : i + e + "@" + n;
|
|
104
|
+
}, i = (e) => {
|
|
105
|
+
let t = e;
|
|
106
|
+
for (let e = 0; e < 5; e++) {
|
|
107
|
+
let e = t?.default;
|
|
108
|
+
if (!e || typeof e != "object" || Object.keys(e).length === 0) break;
|
|
109
|
+
let n = Object.keys(t).filter((e) => e !== "default").map((e) => t[e]);
|
|
110
|
+
if (n.length > 0 && n.some((e) => e !== void 0)) break;
|
|
111
|
+
t = e;
|
|
112
|
+
}
|
|
113
|
+
return t;
|
|
114
|
+
};
|
|
115
|
+
for (let [a, o] of Object.entries(n)) {
|
|
116
|
+
let n = r(a, o.shareConfig?.singleton, o.version, o.scope);
|
|
117
|
+
t.share[n] === void 0 && await e.loadShare(a, { customShareInfo: { shareConfig: o.shareConfig } }).then((e) => {
|
|
118
|
+
let r = typeof e == "function" ? e() : e;
|
|
119
|
+
return Promise.resolve(r).then((e) => {
|
|
120
|
+
t.share[n] = i(e);
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
return await Promise.all([]), e;
|
|
125
|
+
})(), n;
|
|
126
|
+
}
|
|
127
|
+
n = r();
|
|
128
|
+
//#endregion
|
|
129
|
+
export { n as hostInitPromise, r as initHost };
|
package/dist/index.js
CHANGED
|
@@ -10,6 +10,7 @@ exports.buildAlexaApplianceCandidate = require_addon.buildAlexaApplianceCandidat
|
|
|
10
10
|
exports.buildConnectionFormSchema = require_addon.buildConnectionFormSchema;
|
|
11
11
|
exports.connectionToCredentials = require_addon.connectionToCredentials;
|
|
12
12
|
exports.createAlexaClient = require_addon.createAlexaClient;
|
|
13
|
+
exports.customActions = require_addon.alexaSpeakActions;
|
|
13
14
|
exports.mapAlexaCapabilitiesToCamStack = require_addon.mapAlexaCapabilitiesToCamStack;
|
|
14
15
|
exports.mappableAppliance = require_addon.mappableAppliance;
|
|
15
16
|
exports.settingsToAlexaConnection = require_addon.settingsToAlexaConnection;
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AlexaImportAddon, a as AlexaClientNotWiredError, c as alexaAddonConfigSchema, d as connectionToCredentials, f as settingsToAlexaConnection, i as AlexaAuthError, l as alexaConnectionSchema, n as mappableAppliance, o as StubAlexaClient, r as mapAlexaCapabilitiesToCamStack, s as createAlexaClient, t as buildAlexaApplianceCandidate, u as buildConnectionFormSchema } from "./addon.mjs";
|
|
2
|
-
export { AlexaAuthError, AlexaClientNotWiredError, AlexaImportAddon, StubAlexaClient, alexaAddonConfigSchema, alexaConnectionSchema, buildAlexaApplianceCandidate, buildConnectionFormSchema, connectionToCredentials, createAlexaClient, mapAlexaCapabilitiesToCamStack, mappableAppliance, settingsToAlexaConnection };
|
|
1
|
+
import { AlexaImportAddon, a as AlexaClientNotWiredError, c as alexaAddonConfigSchema, customActions as alexaSpeakActions, d as connectionToCredentials, f as settingsToAlexaConnection, i as AlexaAuthError, l as alexaConnectionSchema, n as mappableAppliance, o as StubAlexaClient, r as mapAlexaCapabilitiesToCamStack, s as createAlexaClient, t as buildAlexaApplianceCandidate, u as buildConnectionFormSchema } from "./addon.mjs";
|
|
2
|
+
export { AlexaAuthError, AlexaClientNotWiredError, AlexaImportAddon, StubAlexaClient, alexaAddonConfigSchema, alexaConnectionSchema, buildAlexaApplianceCandidate, buildConnectionFormSchema, connectionToCredentials, createAlexaClient, alexaSpeakActions as customActions, mapAlexaCapabilitiesToCamStack, mappableAppliance, settingsToAlexaConnection };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { S as e, d as t, u as n, v as r } from "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react__loadShare__.js-DwXXYAlk.mjs";
|
|
2
|
+
import { n as i, r as a, t as o } from "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-CUiVYNMY.mjs";
|
|
3
|
+
import { h as s, m as c } from "./responsive-B82v3AbM.mjs";
|
|
4
|
+
var l = s("chevron-down", [["path", {
|
|
5
|
+
d: "m6 9 6 6 6-6",
|
|
6
|
+
key: "qrunsl"
|
|
7
|
+
}]]), u = s("chevron-right", [["path", {
|
|
8
|
+
d: "m9 18 6-6-6-6",
|
|
9
|
+
key: "mthhwq"
|
|
10
|
+
}]]);
|
|
11
|
+
//#endregion
|
|
12
|
+
//#region ../ui-library/src/composites/widget-panel.tsx
|
|
13
|
+
e();
|
|
14
|
+
function d({ title: e, icon: t, headerRight: n, collapsible: s = !1, defaultOpen: c = !0, open: d, onOpenChange: f, bodyClassName: p = "p-3", children: m }) {
|
|
15
|
+
let [h, g] = r(c), _ = d ?? h, v = () => {
|
|
16
|
+
let e = !_;
|
|
17
|
+
d === void 0 && g(e), f?.(e);
|
|
18
|
+
}, y = !s || _, b = /* @__PURE__ */ a(o, { children: [/* @__PURE__ */ a("span", {
|
|
19
|
+
className: "flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-foreground",
|
|
20
|
+
children: [t, e]
|
|
21
|
+
}), s ? /* @__PURE__ */ a("span", {
|
|
22
|
+
className: "flex min-w-0 items-center gap-2",
|
|
23
|
+
children: [n, i(_ ? l : u, { className: "h-3.5 w-3.5 shrink-0 text-foreground-subtle" })]
|
|
24
|
+
}) : n] }), x = `px-4 py-2 flex items-center justify-between ${y ? "border-b border-border" : ""}`;
|
|
25
|
+
return /* @__PURE__ */ a("div", {
|
|
26
|
+
className: "rounded-lg border border-border bg-surface overflow-hidden",
|
|
27
|
+
children: [s ? /* @__PURE__ */ i("button", {
|
|
28
|
+
type: "button",
|
|
29
|
+
"aria-expanded": _,
|
|
30
|
+
onClick: v,
|
|
31
|
+
className: `w-full gap-2 text-left ${x}`,
|
|
32
|
+
children: b
|
|
33
|
+
}) : /* @__PURE__ */ i("div", {
|
|
34
|
+
className: x,
|
|
35
|
+
children: b
|
|
36
|
+
}), y ? /* @__PURE__ */ i("div", {
|
|
37
|
+
className: p,
|
|
38
|
+
children: m
|
|
39
|
+
}) : null]
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
e(), c("camstack:player-overlays-state", null);
|
|
43
|
+
var f = c("camstack:player-overlays-actions", null);
|
|
44
|
+
function p(e) {
|
|
45
|
+
let r = n(f);
|
|
46
|
+
t(() => {
|
|
47
|
+
if (!(!r || !e)) return r.setLayer(e), () => r.removeLayer(e.id);
|
|
48
|
+
}, [r, e]);
|
|
49
|
+
}
|
|
50
|
+
//#endregion
|
|
51
|
+
export { d as n, l as r, p as t };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { init as e } from "@module-federation/runtime";
|
|
2
|
+
//#region virtual:mf-REMOTE_ENTRY_SSR_ID:__mfe_internal__addon_import_alexa_page__remoteEntry_js
|
|
3
|
+
var t;
|
|
4
|
+
async function n() {
|
|
5
|
+
return t ??= import("./virtual_mf-exposes-ssr___mfe_internal__addon_import_alexa_page__remoteEntry_js-CViESMdd.mjs").then((e) => e.default ?? e), t;
|
|
6
|
+
}
|
|
7
|
+
async function r(t = {}, n = []) {
|
|
8
|
+
let r = e({
|
|
9
|
+
name: "addon_import_alexa_page",
|
|
10
|
+
remotes: [],
|
|
11
|
+
shared: {}
|
|
12
|
+
}), i = { from: "addon_import_alexa_page" };
|
|
13
|
+
if (!(n.indexOf(i) >= 0)) {
|
|
14
|
+
n.push(i), r.initShareScopeMap("default", t);
|
|
15
|
+
try {
|
|
16
|
+
await Promise.all(await r.initializeSharing("default", {
|
|
17
|
+
strategy: "version-first",
|
|
18
|
+
from: "build",
|
|
19
|
+
initScope: n
|
|
20
|
+
}));
|
|
21
|
+
} catch (e) {
|
|
22
|
+
console.error("[Module Federation SSR]", e);
|
|
23
|
+
}
|
|
24
|
+
return r;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
async function i(e) {
|
|
28
|
+
let t = await n();
|
|
29
|
+
if (!(e in t)) throw Error(`[Module Federation] Module ${e} does not exist in container.`);
|
|
30
|
+
return t[e]().then((e) => () => e);
|
|
31
|
+
}
|
|
32
|
+
//#endregion
|
|
33
|
+
export { i as get, r as init };
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { S as e, d as t, g as n, i as r, l as i, n as a, r as o, u as s, v as c, y as l } from "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react__loadShare__.js-DwXXYAlk.mjs";
|
|
2
|
+
import "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-CUiVYNMY.mjs";
|
|
3
|
+
import { c as u } from "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Msberbw_.mjs";
|
|
4
|
+
//#region ../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
|
|
5
|
+
e();
|
|
6
|
+
var d = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), f = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), p = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), m = (e) => {
|
|
7
|
+
let t = p(e);
|
|
8
|
+
return t.charAt(0).toUpperCase() + t.slice(1);
|
|
9
|
+
}, h = {
|
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
11
|
+
width: 24,
|
|
12
|
+
height: 24,
|
|
13
|
+
viewBox: "0 0 24 24",
|
|
14
|
+
fill: "none",
|
|
15
|
+
stroke: "currentColor",
|
|
16
|
+
strokeWidth: 2,
|
|
17
|
+
strokeLinecap: "round",
|
|
18
|
+
strokeLinejoin: "round"
|
|
19
|
+
}, g = (e) => {
|
|
20
|
+
for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
|
|
21
|
+
return !1;
|
|
22
|
+
}, _ = r(({ color: e = "currentColor", size: t = 24, strokeWidth: n = 2, absoluteStrokeWidth: r, className: i = "", children: a, iconNode: s, ...c }, l) => o("svg", {
|
|
23
|
+
ref: l,
|
|
24
|
+
...h,
|
|
25
|
+
width: t,
|
|
26
|
+
height: t,
|
|
27
|
+
stroke: e,
|
|
28
|
+
strokeWidth: r ? Number(n) * 24 / Number(t) : n,
|
|
29
|
+
className: d("lucide", i),
|
|
30
|
+
...!a && !g(c) && { "aria-hidden": "true" },
|
|
31
|
+
...c
|
|
32
|
+
}, [...s.map(([e, t]) => o(e, t)), ...Array.isArray(a) ? a : [a]]));
|
|
33
|
+
//#endregion
|
|
34
|
+
//#region ../../node_modules/lucide-react/dist/esm/createLucideIcon.js
|
|
35
|
+
e();
|
|
36
|
+
var v = (e, t) => {
|
|
37
|
+
let n = r(({ className: n, ...r }, i) => o(_, {
|
|
38
|
+
ref: i,
|
|
39
|
+
iconNode: t,
|
|
40
|
+
className: d(`lucide-${f(m(e))}`, `lucide-${e}`, n),
|
|
41
|
+
...r
|
|
42
|
+
}));
|
|
43
|
+
return n.displayName = m(e), n;
|
|
44
|
+
};
|
|
45
|
+
//#endregion
|
|
46
|
+
//#region ../ui-library/src/lib/shared-context.ts
|
|
47
|
+
e();
|
|
48
|
+
function y(e, t) {
|
|
49
|
+
if (typeof globalThis > "u") return a(t);
|
|
50
|
+
let n = globalThis.__camstackSharedContexts, r = n ?? /* @__PURE__ */ new Map();
|
|
51
|
+
n || (globalThis.__camstackSharedContexts = r);
|
|
52
|
+
let i = r.get(e);
|
|
53
|
+
if (i) return i;
|
|
54
|
+
let o = a(t);
|
|
55
|
+
return r.set(e, o), o;
|
|
56
|
+
}
|
|
57
|
+
//#endregion
|
|
58
|
+
//#region ../ui-library/src/contexts/system-context.tsx
|
|
59
|
+
e();
|
|
60
|
+
var b = y("camstack:system", null);
|
|
61
|
+
function x() {
|
|
62
|
+
let e = s(b);
|
|
63
|
+
if (!e) throw Error("useSystem(): no <SystemProvider> in tree");
|
|
64
|
+
return e;
|
|
65
|
+
}
|
|
66
|
+
function S() {
|
|
67
|
+
return s(b);
|
|
68
|
+
}
|
|
69
|
+
//#endregion
|
|
70
|
+
//#region ../ui-library/src/hooks/use-device-proxy.ts
|
|
71
|
+
e();
|
|
72
|
+
var C = "capability.binding-changed";
|
|
73
|
+
function w(e, r) {
|
|
74
|
+
let [i, a] = c(null);
|
|
75
|
+
return t(() => {
|
|
76
|
+
if (r === null) {
|
|
77
|
+
a(null);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
let t = !1, n = async () => {
|
|
81
|
+
try {
|
|
82
|
+
let n = await e.deviceManager.getBindings.query({ deviceId: r });
|
|
83
|
+
t || a(n);
|
|
84
|
+
} catch {
|
|
85
|
+
t || a((e) => e);
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
n();
|
|
89
|
+
let i = e.live?.onEvent.subscribe({ category: C }, { onData: (e) => {
|
|
90
|
+
let t = e.data?.source;
|
|
91
|
+
if (!t) {
|
|
92
|
+
n();
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
t.type === "device" && t.id === r && n();
|
|
96
|
+
} });
|
|
97
|
+
return () => {
|
|
98
|
+
t = !0, i?.unsubscribe();
|
|
99
|
+
};
|
|
100
|
+
}, [e, r]), n(() => i ? u(e, i) : null, [e, i]);
|
|
101
|
+
}
|
|
102
|
+
function T(e) {
|
|
103
|
+
let t = i((t) => e ? e.subscribe(() => t()) : () => void 0, [e]), n = i(() => e?.value, [e]);
|
|
104
|
+
return l(t, n, n);
|
|
105
|
+
}
|
|
106
|
+
//#endregion
|
|
107
|
+
//#region ../ui-library/src/lib/cap-error.ts
|
|
108
|
+
function E(e) {
|
|
109
|
+
if (typeof e != "object" || !e) return null;
|
|
110
|
+
let t = Reflect.get(e, "data");
|
|
111
|
+
if (typeof t == "object" && t) {
|
|
112
|
+
let e = Reflect.get(t, "capRouteReason");
|
|
113
|
+
if (typeof e == "string") return e;
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
function D(e) {
|
|
118
|
+
let t = E(e);
|
|
119
|
+
return t === null ? (e instanceof Error ? e.message : String(e)).includes("provider not available") : t === "no-provider" || t === "node-offline";
|
|
120
|
+
}
|
|
121
|
+
//#endregion
|
|
122
|
+
//#region ../ui-library/src/lib/responsive.ts
|
|
123
|
+
var O = "rounded-lg border border-border bg-surface overflow-hidden", k = "border-b border-border px-3 sm:px-4 py-1.5 sm:py-2", A = "p-2 sm:p-3 lg:p-4", j = "space-y-3 sm:space-y-4", M = "text-[10px] sm:text-[11px] font-semibold text-foreground uppercase tracking-wider", N = "text-[10px] text-foreground-subtle", P = "inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[10px] font-medium transition-colors", F = "border-primary/50 bg-primary/15 text-primary";
|
|
124
|
+
//#endregion
|
|
125
|
+
export { k as a, M as c, T as d, S as f, v as h, O as i, D as l, y as m, P as n, j as o, x as p, A as r, N as s, F as t, w as u };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (e && (t = e(e = 0)), t), s = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), c = (e, n) => {
|
|
3
|
+
let r = {};
|
|
4
|
+
for (var i in e) t(r, i, {
|
|
5
|
+
get: e[i],
|
|
6
|
+
enumerable: !0
|
|
7
|
+
});
|
|
8
|
+
return n || t(r, Symbol.toStringTag, { value: "Module" }), r;
|
|
9
|
+
}, l = (e, i, o, s) => {
|
|
10
|
+
if (i && typeof i == "object" || typeof i == "function") for (var c = r(i), l = 0, u = c.length, d; l < u; l++) d = c[l], !a.call(e, d) && d !== o && t(e, d, {
|
|
11
|
+
get: ((e) => i[e]).bind(null, d),
|
|
12
|
+
enumerable: !(s = n(i, d)) || s.enumerable
|
|
13
|
+
});
|
|
14
|
+
return e;
|
|
15
|
+
}, u = (n, r, a) => (a = n == null ? {} : e(i(n)), l(r || !n || !n.__esModule ? t(a, "default", {
|
|
16
|
+
value: n,
|
|
17
|
+
enumerable: !0
|
|
18
|
+
}) : a, n)), d = (e) => a.call(e, "module.exports") ? e["module.exports"] : l(t({}, "__esModule", { value: !0 }), e);
|
|
19
|
+
//#endregion
|
|
20
|
+
export { u as a, d as i, o as n, c as r, s as t };
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { S as e, g as t, l as n, v as r } from "./_virtual_mf___mfe_internal__addon_import_alexa_page__loadShare__react__loadShare__.js-DwXXYAlk.mjs";
|
|
2
|
+
import { n as i } from "./ui-text-B5YO4hoJ.mjs";
|
|
3
|
+
import { h as a } from "./responsive-B82v3AbM.mjs";
|
|
4
|
+
var o = a("camera", [["path", {
|
|
5
|
+
d: "M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",
|
|
6
|
+
key: "18u6gg"
|
|
7
|
+
}], ["circle", {
|
|
8
|
+
cx: "12",
|
|
9
|
+
cy: "13",
|
|
10
|
+
r: "3",
|
|
11
|
+
key: "1vg3eu"
|
|
12
|
+
}]]), s = a("image-off", [
|
|
13
|
+
["line", {
|
|
14
|
+
x1: "2",
|
|
15
|
+
x2: "22",
|
|
16
|
+
y1: "2",
|
|
17
|
+
y2: "22",
|
|
18
|
+
key: "a6p6uj"
|
|
19
|
+
}],
|
|
20
|
+
["path", {
|
|
21
|
+
d: "M10.41 10.41a2 2 0 1 1-2.83-2.83",
|
|
22
|
+
key: "1bzlo9"
|
|
23
|
+
}],
|
|
24
|
+
["line", {
|
|
25
|
+
x1: "13.5",
|
|
26
|
+
x2: "6",
|
|
27
|
+
y1: "13.5",
|
|
28
|
+
y2: "21",
|
|
29
|
+
key: "1q0aeu"
|
|
30
|
+
}],
|
|
31
|
+
["line", {
|
|
32
|
+
x1: "18",
|
|
33
|
+
x2: "21",
|
|
34
|
+
y1: "12",
|
|
35
|
+
y2: "15",
|
|
36
|
+
key: "5mozeu"
|
|
37
|
+
}],
|
|
38
|
+
["path", {
|
|
39
|
+
d: "M3.59 3.59A1.99 1.99 0 0 0 3 5v14a2 2 0 0 0 2 2h14c.55 0 1.052-.22 1.41-.59",
|
|
40
|
+
key: "mmje98"
|
|
41
|
+
}],
|
|
42
|
+
["path", {
|
|
43
|
+
d: "M21 15V5a2 2 0 0 0-2-2H9",
|
|
44
|
+
key: "43el77"
|
|
45
|
+
}]
|
|
46
|
+
]), c = a("rotate-ccw", [["path", {
|
|
47
|
+
d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",
|
|
48
|
+
key: "1357e3"
|
|
49
|
+
}], ["path", {
|
|
50
|
+
d: "M3 3v5h5",
|
|
51
|
+
key: "1xhq8a"
|
|
52
|
+
}]]);
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region ../ui-library/src/lib/hub-mount.ts
|
|
55
|
+
e();
|
|
56
|
+
var l = "camstack-mount", u = /^\/(?:[A-Za-z0-9_\-.]+\/)*$/, d = null;
|
|
57
|
+
function f(e) {
|
|
58
|
+
if (e == null || e === "") return null;
|
|
59
|
+
let t = e.endsWith("/") ? e : `${e}/`;
|
|
60
|
+
return !u.test(t) || t.includes("/../") || t.includes("/./") ? null : t;
|
|
61
|
+
}
|
|
62
|
+
function p() {
|
|
63
|
+
if (typeof document > "u") return "/";
|
|
64
|
+
let e = f(document.querySelector(`meta[name="${l}"]`)?.getAttribute("content"));
|
|
65
|
+
if (e !== null) return e;
|
|
66
|
+
if (document.querySelector("base[href]") !== null) try {
|
|
67
|
+
let e = new URL(document.baseURI);
|
|
68
|
+
if (e.origin === window.location.origin) {
|
|
69
|
+
let t = f(e.pathname);
|
|
70
|
+
if (t !== null) return t;
|
|
71
|
+
}
|
|
72
|
+
} catch {}
|
|
73
|
+
return "/";
|
|
74
|
+
}
|
|
75
|
+
function m() {
|
|
76
|
+
return d === null && (d = p()), d;
|
|
77
|
+
}
|
|
78
|
+
function h() {
|
|
79
|
+
return m().replace(/\/$/, "");
|
|
80
|
+
}
|
|
81
|
+
function g(e) {
|
|
82
|
+
return /^[a-z][a-z0-9+.-]*:/i.test(e) || e.startsWith("//");
|
|
83
|
+
}
|
|
84
|
+
function _(e) {
|
|
85
|
+
if (g(e)) return e;
|
|
86
|
+
let t = m(), n = e.replace(/^\/+/, "");
|
|
87
|
+
return t !== "/" && (e === h() || e.startsWith(t)) ? e : `${t}${n}`;
|
|
88
|
+
}
|
|
89
|
+
//#endregion
|
|
90
|
+
//#region ../ui-library/src/hooks/use-device-snapshot.ts
|
|
91
|
+
var v = "/addon/snapshot/media";
|
|
92
|
+
function y(e, i = {}) {
|
|
93
|
+
let { width: a, baseUrl: o } = i, [s, c] = r(0);
|
|
94
|
+
return {
|
|
95
|
+
src: t(() => {
|
|
96
|
+
if (e === null || e <= 0) return null;
|
|
97
|
+
let t = o === void 0 ? h() : o.replace(/\/+$/, ""), n = new URLSearchParams();
|
|
98
|
+
a !== void 0 && Number.isInteger(a) && a > 0 && n.set("w", String(a)), s > 0 && (n.set("force", "1"), n.set("r", String(s)));
|
|
99
|
+
let r = n.toString();
|
|
100
|
+
return `${t}${v}/${String(e)}.jpg${r.length > 0 ? `?${r}` : ""}`;
|
|
101
|
+
}, [
|
|
102
|
+
e,
|
|
103
|
+
a,
|
|
104
|
+
o,
|
|
105
|
+
s
|
|
106
|
+
]),
|
|
107
|
+
loading: !1,
|
|
108
|
+
refresh: n(() => {
|
|
109
|
+
c((e) => e + 1);
|
|
110
|
+
}, [])
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
//#endregion
|
|
114
|
+
//#region ../ui-library/src/composites/cap-settings/scene-monitor-copy.ts
|
|
115
|
+
var b = ["day", "ir"], x = {
|
|
116
|
+
day: {
|
|
117
|
+
labelKey: "uiLibrary.sceneMonitor.variant.day",
|
|
118
|
+
labelFallback: "Daylight"
|
|
119
|
+
},
|
|
120
|
+
ir: {
|
|
121
|
+
labelKey: "uiLibrary.sceneMonitor.variant.ir",
|
|
122
|
+
labelFallback: "Night (IR)"
|
|
123
|
+
},
|
|
124
|
+
night: {
|
|
125
|
+
labelKey: "uiLibrary.sceneMonitor.variant.night",
|
|
126
|
+
labelFallback: "Night"
|
|
127
|
+
},
|
|
128
|
+
dawn: {
|
|
129
|
+
labelKey: "uiLibrary.sceneMonitor.variant.dawn",
|
|
130
|
+
labelFallback: "Dawn"
|
|
131
|
+
},
|
|
132
|
+
dusk: {
|
|
133
|
+
labelKey: "uiLibrary.sceneMonitor.variant.dusk",
|
|
134
|
+
labelFallback: "Dusk"
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
function S(e, t = i) {
|
|
138
|
+
let n = x[e];
|
|
139
|
+
return n === void 0 ? e : t(n.labelKey, n.labelFallback);
|
|
140
|
+
}
|
|
141
|
+
function C(e, t = i) {
|
|
142
|
+
let n = new Set(e.coveredConditions), r = b.map((e) => `${S(e, t)} ${n.has(e) ? "✓" : "✗"}`), a = [...n].filter((e) => !b.some((t) => t === e));
|
|
143
|
+
for (let e of a) r.push(`${S(e, t)} ✓`);
|
|
144
|
+
let o = b.filter((e) => !n.has(e));
|
|
145
|
+
if (o.length === 0) return r.join(" · ");
|
|
146
|
+
if (n.size === 0) return t("uiLibrary.sceneMonitor.coverage.empty", "{{parts}} — nothing captured yet, so this scene is not watching.", { parts: r.join(" · ") });
|
|
147
|
+
let [s = "", c] = o.map((e) => S(e, t).toLowerCase()), l = c === void 0 ? s : t("uiLibrary.sceneMonitor.coverage.namesJoin", "{{first}} and {{second}}", {
|
|
148
|
+
first: s,
|
|
149
|
+
second: c
|
|
150
|
+
}), u = {
|
|
151
|
+
parts: r.join(" · "),
|
|
152
|
+
names: l
|
|
153
|
+
};
|
|
154
|
+
return e.onUncoveredCondition === "judge-anyway" ? t("uiLibrary.sceneMonitor.coverage.judgeAnyway", "{{parts}} — {{names}} judged against the references you do have.", u) : t("uiLibrary.sceneMonitor.coverage.skip", "{{parts}} — optional; checks in {{names}} are skipped.", u);
|
|
155
|
+
}
|
|
156
|
+
function w(e, t = i) {
|
|
157
|
+
return e.suspendedCondition === null ? null : t("uiLibrary.sceneMonitor.suspension", "Paused — nothing was captured in {{light}}, so checks are on hold until the light changes back. Capture {{light}} if you want it watched around the clock.", { light: S(e.suspendedCondition, t).toLowerCase() });
|
|
158
|
+
}
|
|
159
|
+
var T = {
|
|
160
|
+
"no-reference-for-condition": {
|
|
161
|
+
key: "uiLibrary.sceneMonitor.unavailable.no_reference_for_condition",
|
|
162
|
+
fallback: "can’t tell — nothing has been captured for this scene yet. Press “Capture daylight” to photograph what normal looks like."
|
|
163
|
+
},
|
|
164
|
+
"view-shifted": {
|
|
165
|
+
key: "uiLibrary.sceneMonitor.unavailable.view_shifted",
|
|
166
|
+
fallback: "can’t tell — the camera view has moved since the reference was captured. Re-capture it."
|
|
167
|
+
},
|
|
168
|
+
"no-vision-profile": {
|
|
169
|
+
key: "uiLibrary.sceneMonitor.unavailable.no_vision_profile",
|
|
170
|
+
fallback: "can’t tell — the vision model is unreachable, so the change is on hold."
|
|
171
|
+
},
|
|
172
|
+
"encoder-model-changed": {
|
|
173
|
+
key: "uiLibrary.sceneMonitor.unavailable.encoder_model_changed",
|
|
174
|
+
fallback: "can’t tell — the embedding model changed, so the stored references are unreadable. Re-capture them."
|
|
175
|
+
},
|
|
176
|
+
"no-snapshot": {
|
|
177
|
+
key: "uiLibrary.sceneMonitor.unavailable.no_snapshot",
|
|
178
|
+
fallback: "can’t tell — this camera did not return a frame."
|
|
179
|
+
}
|
|
180
|
+
};
|
|
181
|
+
function E(e, t, n = i) {
|
|
182
|
+
if (e.states.length === 0) return n("uiLibrary.sceneMonitor.status.notArmed", "Not armed yet — capture the initial state to start watching.");
|
|
183
|
+
if (e.verdict === "unknown") {
|
|
184
|
+
if (e.unavailable === null) return n("uiLibrary.sceneMonitor.status.cantTellNow", "can’t tell right now.");
|
|
185
|
+
let t = T[e.unavailable];
|
|
186
|
+
return n(t.key, t.fallback);
|
|
187
|
+
}
|
|
188
|
+
let r = e.verdict === "diverged" ? e.divergedAt : e.armedAt, a = r === null ? "" : ` ${n("uiLibrary.sceneMonitor.status.heldFor", "for {{duration}}", { duration: A(Math.max(0, t - r)) })}`;
|
|
189
|
+
if (e.latched) return e.verdict === "diverged" ? n("uiLibrary.sceneMonitor.status.changedLatched", "CHANGED{{held}} — press Reset when you have dealt with it.", { held: a }) : n("uiLibrary.sceneMonitor.status.backToNormal", "Back to normal, but still flagged as changed{{held}}. Press Reset to clear it.", { held: a });
|
|
190
|
+
let o = w(e, n);
|
|
191
|
+
return o === null ? e.verdict === "diverged" ? n("uiLibrary.sceneMonitor.status.changed", "CHANGED{{held}}", { held: a }) : n("uiLibrary.sceneMonitor.status.normal", "Normal{{held}}", { held: a }) : o;
|
|
192
|
+
}
|
|
193
|
+
function D(e, t = i) {
|
|
194
|
+
return e.states.length === 0 ? {
|
|
195
|
+
text: t("uiLibrary.sceneMonitor.badge.notArmed", "Not armed"),
|
|
196
|
+
tone: "unknown"
|
|
197
|
+
} : e.latched ? {
|
|
198
|
+
text: t("uiLibrary.sceneMonitor.badge.changed", "Changed"),
|
|
199
|
+
tone: "alarm"
|
|
200
|
+
} : e.suspendedCondition === null ? e.verdict === "unknown" ? {
|
|
201
|
+
text: t("uiLibrary.sceneMonitor.badge.cantTell", "Can’t tell"),
|
|
202
|
+
tone: "unknown"
|
|
203
|
+
} : e.verdict === "diverged" ? {
|
|
204
|
+
text: t("uiLibrary.sceneMonitor.badge.changed", "Changed"),
|
|
205
|
+
tone: "alarm"
|
|
206
|
+
} : {
|
|
207
|
+
text: t("uiLibrary.sceneMonitor.badge.normal", "Normal"),
|
|
208
|
+
tone: "ok"
|
|
209
|
+
} : {
|
|
210
|
+
text: t("uiLibrary.sceneMonitor.badge.paused", "Paused"),
|
|
211
|
+
tone: "unknown"
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
var O = .4;
|
|
215
|
+
function k(e) {
|
|
216
|
+
return e.width * e.height > O;
|
|
217
|
+
}
|
|
218
|
+
function A(e) {
|
|
219
|
+
let t = Math.floor(e / 1e3);
|
|
220
|
+
if (t < 60) return `${t}s`;
|
|
221
|
+
let n = Math.floor(t / 60);
|
|
222
|
+
if (n < 60) return `${n}m`;
|
|
223
|
+
let r = Math.floor(n / 60);
|
|
224
|
+
return r < 48 ? `${r}h` : `${Math.floor(r / 24)}d`;
|
|
225
|
+
}
|
|
226
|
+
//#endregion
|
|
227
|
+
export { E as a, _ as c, o as d, k as i, c as l, D as n, S as o, C as r, y as s, b as t, s as u };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { h as e } from "./responsive-B82v3AbM.mjs";
|
|
2
|
+
var t = e("eye-off", [
|
|
3
|
+
["path", {
|
|
4
|
+
d: "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",
|
|
5
|
+
key: "ct8e1f"
|
|
6
|
+
}],
|
|
7
|
+
["path", {
|
|
8
|
+
d: "M14.084 14.158a3 3 0 0 1-4.242-4.242",
|
|
9
|
+
key: "151rxh"
|
|
10
|
+
}],
|
|
11
|
+
["path", {
|
|
12
|
+
d: "M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",
|
|
13
|
+
key: "13bj9a"
|
|
14
|
+
}],
|
|
15
|
+
["path", {
|
|
16
|
+
d: "m2 2 20 20",
|
|
17
|
+
key: "1ooewy"
|
|
18
|
+
}]
|
|
19
|
+
]), n = e("mic", [
|
|
20
|
+
["path", {
|
|
21
|
+
d: "M12 19v3",
|
|
22
|
+
key: "npa21l"
|
|
23
|
+
}],
|
|
24
|
+
["path", {
|
|
25
|
+
d: "M19 10v2a7 7 0 0 1-14 0v-2",
|
|
26
|
+
key: "1vc78b"
|
|
27
|
+
}],
|
|
28
|
+
["rect", {
|
|
29
|
+
x: "9",
|
|
30
|
+
y: "2",
|
|
31
|
+
width: "6",
|
|
32
|
+
height: "13",
|
|
33
|
+
rx: "3",
|
|
34
|
+
key: "s6n7sd"
|
|
35
|
+
}]
|
|
36
|
+
]), r = e("square", [["rect", {
|
|
37
|
+
width: "18",
|
|
38
|
+
height: "18",
|
|
39
|
+
x: "3",
|
|
40
|
+
y: "3",
|
|
41
|
+
rx: "2",
|
|
42
|
+
key: "afitv7"
|
|
43
|
+
}]]);
|
|
44
|
+
//#endregion
|
|
45
|
+
export { n, t as r, r as t };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { h as e } from "./responsive-B82v3AbM.mjs";
|
|
2
|
+
var t = e("trash-2", [
|
|
3
|
+
["path", {
|
|
4
|
+
d: "M10 11v6",
|
|
5
|
+
key: "nco0om"
|
|
6
|
+
}],
|
|
7
|
+
["path", {
|
|
8
|
+
d: "M14 11v6",
|
|
9
|
+
key: "outv1u"
|
|
10
|
+
}],
|
|
11
|
+
["path", {
|
|
12
|
+
d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",
|
|
13
|
+
key: "miytrc"
|
|
14
|
+
}],
|
|
15
|
+
["path", {
|
|
16
|
+
d: "M3 6h18",
|
|
17
|
+
key: "d0wm0j"
|
|
18
|
+
}],
|
|
19
|
+
["path", {
|
|
20
|
+
d: "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",
|
|
21
|
+
key: "e791ji"
|
|
22
|
+
}]
|
|
23
|
+
]);
|
|
24
|
+
//#endregion
|
|
25
|
+
export { t };
|