@camstack/system 1.2.291 → 1.2.292
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/dist/addon-runner.js +20 -62
- package/dist/addon-runner.mjs +4 -46
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- package/dist/builtins/alerts/alerts.addon.js +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- package/dist/builtins/autotrack/index.js +1 -1
- package/dist/builtins/autotrack/index.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
- package/dist/builtins/camera-grid/index.js +1 -1
- package/dist/builtins/camera-grid/index.mjs +1 -1
- package/dist/builtins/console-logging/index.js +1 -1
- package/dist/builtins/console-logging/index.mjs +1 -1
- package/dist/builtins/core-blocks/core-blocks.addon.js +1 -1
- package/dist/builtins/core-blocks/core-blocks.addon.mjs +1 -1
- package/dist/builtins/device-manager/device-linked-devices.d.ts +2 -37
- package/dist/builtins/device-manager/device-manager.addon.js +4 -73
- package/dist/builtins/device-manager/device-manager.addon.mjs +2 -71
- package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
- package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
- package/dist/builtins/hub-forwarder/index.js +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
- package/dist/builtins/local-auth/local-auth.addon.js +1 -1
- package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
- package/dist/builtins/local-network/local-network.addon.js +1 -1
- package/dist/builtins/local-network/local-network.addon.mjs +1 -1
- package/dist/builtins/loki-logging/index.js +1 -1
- package/dist/builtins/loki-logging/index.mjs +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
- package/dist/builtins/platform-probe/index.js +1 -1
- package/dist/builtins/platform-probe/index.mjs +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/snapshot/index.js +1 -1
- package/dist/builtins/snapshot/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- package/dist/builtins/system-config/system-config.addon.js +1 -1
- package/dist/builtins/system-config/system-config.addon.mjs +1 -1
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/{manifest-system-deps-ghRqcy_-.mjs → child-cap-dispatch-CWkcQIRe.mjs} +51 -1
- package/dist/{manifest-system-deps-DTgkfBJy.js → child-cap-dispatch-CzNzGnGm.js} +62 -0
- package/dist/{dist-XnunBp0n.js → dist-D3zw1yHp.js} +101 -6
- package/dist/{dist-DiMNxNDh.mjs → dist-DU72-y3J.mjs} +90 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +167 -166
- package/dist/index.mjs +3 -3
- package/dist/kernel/moleculer/child-cap-dispatch.d.ts +19 -0
- package/dist/{retired-settings-keys-DnCcgrCG.mjs → retired-settings-keys-DLOBYMC4.mjs} +1 -1
- package/dist/{retired-settings-keys-DQn9s_AI.js → retired-settings-keys-t6UWp6mL.js} +1 -1
- package/package.json +1 -1
|
@@ -41083,6 +41083,95 @@ function resolveContainerPrimaryChild(children, overrideEntityId, containerName)
|
|
|
41083
41083
|
const namesake = (c) => containerName !== void 0 && containerName.length > 0 && c.name !== void 0 && sameName(c.name, containerName) ? 0 : 1;
|
|
41084
41084
|
return [...children].toSorted((a, b) => roleRank(a.role) - roleRank(b.role) || namesake(a) - namesake(b) || rank(a.type) - rank(b.type))[0] ?? null;
|
|
41085
41085
|
}
|
|
41086
|
+
/**
|
|
41087
|
+
* Which devices a camera's LINKED set resolves to — the pure rules, with no
|
|
41088
|
+
* store and no provider context.
|
|
41089
|
+
*
|
|
41090
|
+
* They live in `@camstack/types` rather than in the device-manager builtin
|
|
41091
|
+
* because two surfaces need the SAME answer and a second copy would be a
|
|
41092
|
+
* second definition of what a room contains: the hub's boot backfill, and the
|
|
41093
|
+
* admin UI's per-room rebuild. Moving them here also keeps that button a
|
|
41094
|
+
* framework-free change — a new cap method would only reach a node through a
|
|
41095
|
+
* published `@camstack/server` and a restart (D16), which is not what a
|
|
41096
|
+
* convenience button is worth.
|
|
41097
|
+
*/
|
|
41098
|
+
/**
|
|
41099
|
+
* Resolve one candidate id to the ids it should actually contribute to a
|
|
41100
|
+
* linked set: itself, unless it is a CONTAINER, in which case its own
|
|
41101
|
+
* children (recursively expanded the same way — a container-of-containers
|
|
41102
|
+
* is vanishingly unlikely per `DeviceType.Container`'s contract, but this
|
|
41103
|
+
* costs nothing to handle). `visited` guards a pathological parent-cycle in
|
|
41104
|
+
* persisted data from recursing forever; a candidate already on the current
|
|
41105
|
+
* expansion path is dropped rather than re-expanded.
|
|
41106
|
+
*
|
|
41107
|
+
* This is the STRUCTURAL, location-independent way a container's child
|
|
41108
|
+
* becomes reachable: the device-tree "children of the camera" rule and a
|
|
41109
|
+
* persisted manual pick are parentDeviceId chains, never location-based —
|
|
41110
|
+
* a container named there is excluded by expanding into whatever it
|
|
41111
|
+
* actually contains, regardless of what its (or its children's) `location`
|
|
41112
|
+
* column holds.
|
|
41113
|
+
*/
|
|
41114
|
+
function expandContainer(id, byId, byParent, visited, out) {
|
|
41115
|
+
if (visited.has(id)) return;
|
|
41116
|
+
const candidate = byId.get(id);
|
|
41117
|
+
if (!candidate) return;
|
|
41118
|
+
if (candidate.type !== DeviceType.Container) {
|
|
41119
|
+
out.add(id);
|
|
41120
|
+
return;
|
|
41121
|
+
}
|
|
41122
|
+
const nextVisited = new Set(visited);
|
|
41123
|
+
nextVisited.add(id);
|
|
41124
|
+
const primary = resolveContainerPrimaryChild((byParent.get(id) ?? []).map((c) => ({
|
|
41125
|
+
id: c.id,
|
|
41126
|
+
stableId: c.stableId,
|
|
41127
|
+
type: c.type,
|
|
41128
|
+
...c.role !== void 0 && c.role !== null ? { role: c.role } : {},
|
|
41129
|
+
...c.name !== void 0 ? { name: c.name } : {}
|
|
41130
|
+
})), byId.get(id)?.primaryChildEntityId, byId.get(id)?.name);
|
|
41131
|
+
if (primary !== null) expandContainer(primary.id, byId, byParent, nextVisited, out);
|
|
41132
|
+
}
|
|
41133
|
+
/**
|
|
41134
|
+
* What the retired `auto` mode (pre-D356) added beyond the device-tree
|
|
41135
|
+
* children: every non-container candidate sharing the camera's location, a
|
|
41136
|
+
* container child standing in for its container's PRIMARY child.
|
|
41137
|
+
*
|
|
41138
|
+
* Two callers, both WRITERS, never the read path: the one-shot boot backfill
|
|
41139
|
+
* that materialises it into the manual list
|
|
41140
|
+
* (`linked-devices-manual-backfill.ts`), and the admin UI's per-room rebuild.
|
|
41141
|
+
* Both ask "what does this room contain", and a second copy of the answer is
|
|
41142
|
+
* how two surfaces start disagreeing about a room.
|
|
41143
|
+
*
|
|
41144
|
+
* A camera with NO location answers `[]`. A caller that would WRITE that must
|
|
41145
|
+
* refuse instead: emptying a list because nobody set the room is the silent
|
|
41146
|
+
* drop D391 names.
|
|
41147
|
+
*/
|
|
41148
|
+
function legacyAutoLinkIds(params) {
|
|
41149
|
+
const { selfId, selfLocation, candidates } = params;
|
|
41150
|
+
if (selfLocation === null || selfLocation.length === 0) return [];
|
|
41151
|
+
const byId = new Map(candidates.map((c) => [c.id, c]));
|
|
41152
|
+
const byParent = /* @__PURE__ */ new Map();
|
|
41153
|
+
for (const c of candidates) {
|
|
41154
|
+
if (c.parentDeviceId === null) continue;
|
|
41155
|
+
const siblings = byParent.get(c.parentDeviceId);
|
|
41156
|
+
if (siblings) siblings.push(c);
|
|
41157
|
+
else byParent.set(c.parentDeviceId, [c]);
|
|
41158
|
+
}
|
|
41159
|
+
const ids = /* @__PURE__ */ new Set();
|
|
41160
|
+
const expand = (id) => expandContainer(id, byId, byParent, /* @__PURE__ */ new Set(), ids);
|
|
41161
|
+
for (const c of candidates) {
|
|
41162
|
+
if (c.type === DeviceType.Container) continue;
|
|
41163
|
+
if (c.location !== selfLocation) continue;
|
|
41164
|
+
if (c.parentDeviceId === selfId) continue;
|
|
41165
|
+
const parent = c.parentDeviceId !== null ? byId.get(c.parentDeviceId) : void 0;
|
|
41166
|
+
if (parent !== void 0 && parent.type === DeviceType.Container) {
|
|
41167
|
+
expand(parent.id);
|
|
41168
|
+
continue;
|
|
41169
|
+
}
|
|
41170
|
+
ids.add(c.id);
|
|
41171
|
+
}
|
|
41172
|
+
ids.delete(selfId);
|
|
41173
|
+
return [...ids];
|
|
41174
|
+
}
|
|
41086
41175
|
/** Marker written to a declared integration's `info`. */
|
|
41087
41176
|
var DECLARED_INTEGRATION_FIXED_KEY = "fixed";
|
|
41088
41177
|
/**
|
|
@@ -53488,6 +53577,12 @@ Object.defineProperty(exports, "expandCapMethods", {
|
|
|
53488
53577
|
return expandCapMethods;
|
|
53489
53578
|
}
|
|
53490
53579
|
});
|
|
53580
|
+
Object.defineProperty(exports, "expandContainer", {
|
|
53581
|
+
enumerable: true,
|
|
53582
|
+
get: function() {
|
|
53583
|
+
return expandContainer;
|
|
53584
|
+
}
|
|
53585
|
+
});
|
|
53491
53586
|
Object.defineProperty(exports, "extractNestedAddonId", {
|
|
53492
53587
|
enumerable: true,
|
|
53493
53588
|
get: function() {
|
|
@@ -53584,6 +53679,12 @@ Object.defineProperty(exports, "kebabToCamel", {
|
|
|
53584
53679
|
return kebabToCamel;
|
|
53585
53680
|
}
|
|
53586
53681
|
});
|
|
53682
|
+
Object.defineProperty(exports, "legacyAutoLinkIds", {
|
|
53683
|
+
enumerable: true,
|
|
53684
|
+
get: function() {
|
|
53685
|
+
return legacyAutoLinkIds;
|
|
53686
|
+
}
|
|
53687
|
+
});
|
|
53587
53688
|
Object.defineProperty(exports, "legacyModeOf", {
|
|
53588
53689
|
enumerable: true,
|
|
53589
53690
|
get: function() {
|
|
@@ -53740,12 +53841,6 @@ Object.defineProperty(exports, "resolveCapMount", {
|
|
|
53740
53841
|
return resolveCapMount;
|
|
53741
53842
|
}
|
|
53742
53843
|
});
|
|
53743
|
-
Object.defineProperty(exports, "resolveContainerPrimaryChild", {
|
|
53744
|
-
enumerable: true,
|
|
53745
|
-
get: function() {
|
|
53746
|
-
return resolveContainerPrimaryChild;
|
|
53747
|
-
}
|
|
53748
|
-
});
|
|
53749
53844
|
Object.defineProperty(exports, "resolveLocationMode", {
|
|
53750
53845
|
enumerable: true,
|
|
53751
53846
|
get: function() {
|
|
@@ -41083,6 +41083,95 @@ function resolveContainerPrimaryChild(children, overrideEntityId, containerName)
|
|
|
41083
41083
|
const namesake = (c) => containerName !== void 0 && containerName.length > 0 && c.name !== void 0 && sameName(c.name, containerName) ? 0 : 1;
|
|
41084
41084
|
return [...children].toSorted((a, b) => roleRank(a.role) - roleRank(b.role) || namesake(a) - namesake(b) || rank(a.type) - rank(b.type))[0] ?? null;
|
|
41085
41085
|
}
|
|
41086
|
+
/**
|
|
41087
|
+
* Which devices a camera's LINKED set resolves to — the pure rules, with no
|
|
41088
|
+
* store and no provider context.
|
|
41089
|
+
*
|
|
41090
|
+
* They live in `@camstack/types` rather than in the device-manager builtin
|
|
41091
|
+
* because two surfaces need the SAME answer and a second copy would be a
|
|
41092
|
+
* second definition of what a room contains: the hub's boot backfill, and the
|
|
41093
|
+
* admin UI's per-room rebuild. Moving them here also keeps that button a
|
|
41094
|
+
* framework-free change — a new cap method would only reach a node through a
|
|
41095
|
+
* published `@camstack/server` and a restart (D16), which is not what a
|
|
41096
|
+
* convenience button is worth.
|
|
41097
|
+
*/
|
|
41098
|
+
/**
|
|
41099
|
+
* Resolve one candidate id to the ids it should actually contribute to a
|
|
41100
|
+
* linked set: itself, unless it is a CONTAINER, in which case its own
|
|
41101
|
+
* children (recursively expanded the same way — a container-of-containers
|
|
41102
|
+
* is vanishingly unlikely per `DeviceType.Container`'s contract, but this
|
|
41103
|
+
* costs nothing to handle). `visited` guards a pathological parent-cycle in
|
|
41104
|
+
* persisted data from recursing forever; a candidate already on the current
|
|
41105
|
+
* expansion path is dropped rather than re-expanded.
|
|
41106
|
+
*
|
|
41107
|
+
* This is the STRUCTURAL, location-independent way a container's child
|
|
41108
|
+
* becomes reachable: the device-tree "children of the camera" rule and a
|
|
41109
|
+
* persisted manual pick are parentDeviceId chains, never location-based —
|
|
41110
|
+
* a container named there is excluded by expanding into whatever it
|
|
41111
|
+
* actually contains, regardless of what its (or its children's) `location`
|
|
41112
|
+
* column holds.
|
|
41113
|
+
*/
|
|
41114
|
+
function expandContainer(id, byId, byParent, visited, out) {
|
|
41115
|
+
if (visited.has(id)) return;
|
|
41116
|
+
const candidate = byId.get(id);
|
|
41117
|
+
if (!candidate) return;
|
|
41118
|
+
if (candidate.type !== DeviceType.Container) {
|
|
41119
|
+
out.add(id);
|
|
41120
|
+
return;
|
|
41121
|
+
}
|
|
41122
|
+
const nextVisited = new Set(visited);
|
|
41123
|
+
nextVisited.add(id);
|
|
41124
|
+
const primary = resolveContainerPrimaryChild((byParent.get(id) ?? []).map((c) => ({
|
|
41125
|
+
id: c.id,
|
|
41126
|
+
stableId: c.stableId,
|
|
41127
|
+
type: c.type,
|
|
41128
|
+
...c.role !== void 0 && c.role !== null ? { role: c.role } : {},
|
|
41129
|
+
...c.name !== void 0 ? { name: c.name } : {}
|
|
41130
|
+
})), byId.get(id)?.primaryChildEntityId, byId.get(id)?.name);
|
|
41131
|
+
if (primary !== null) expandContainer(primary.id, byId, byParent, nextVisited, out);
|
|
41132
|
+
}
|
|
41133
|
+
/**
|
|
41134
|
+
* What the retired `auto` mode (pre-D356) added beyond the device-tree
|
|
41135
|
+
* children: every non-container candidate sharing the camera's location, a
|
|
41136
|
+
* container child standing in for its container's PRIMARY child.
|
|
41137
|
+
*
|
|
41138
|
+
* Two callers, both WRITERS, never the read path: the one-shot boot backfill
|
|
41139
|
+
* that materialises it into the manual list
|
|
41140
|
+
* (`linked-devices-manual-backfill.ts`), and the admin UI's per-room rebuild.
|
|
41141
|
+
* Both ask "what does this room contain", and a second copy of the answer is
|
|
41142
|
+
* how two surfaces start disagreeing about a room.
|
|
41143
|
+
*
|
|
41144
|
+
* A camera with NO location answers `[]`. A caller that would WRITE that must
|
|
41145
|
+
* refuse instead: emptying a list because nobody set the room is the silent
|
|
41146
|
+
* drop D391 names.
|
|
41147
|
+
*/
|
|
41148
|
+
function legacyAutoLinkIds(params) {
|
|
41149
|
+
const { selfId, selfLocation, candidates } = params;
|
|
41150
|
+
if (selfLocation === null || selfLocation.length === 0) return [];
|
|
41151
|
+
const byId = new Map(candidates.map((c) => [c.id, c]));
|
|
41152
|
+
const byParent = /* @__PURE__ */ new Map();
|
|
41153
|
+
for (const c of candidates) {
|
|
41154
|
+
if (c.parentDeviceId === null) continue;
|
|
41155
|
+
const siblings = byParent.get(c.parentDeviceId);
|
|
41156
|
+
if (siblings) siblings.push(c);
|
|
41157
|
+
else byParent.set(c.parentDeviceId, [c]);
|
|
41158
|
+
}
|
|
41159
|
+
const ids = /* @__PURE__ */ new Set();
|
|
41160
|
+
const expand = (id) => expandContainer(id, byId, byParent, /* @__PURE__ */ new Set(), ids);
|
|
41161
|
+
for (const c of candidates) {
|
|
41162
|
+
if (c.type === DeviceType.Container) continue;
|
|
41163
|
+
if (c.location !== selfLocation) continue;
|
|
41164
|
+
if (c.parentDeviceId === selfId) continue;
|
|
41165
|
+
const parent = c.parentDeviceId !== null ? byId.get(c.parentDeviceId) : void 0;
|
|
41166
|
+
if (parent !== void 0 && parent.type === DeviceType.Container) {
|
|
41167
|
+
expand(parent.id);
|
|
41168
|
+
continue;
|
|
41169
|
+
}
|
|
41170
|
+
ids.add(c.id);
|
|
41171
|
+
}
|
|
41172
|
+
ids.delete(selfId);
|
|
41173
|
+
return [...ids];
|
|
41174
|
+
}
|
|
41086
41175
|
/** Marker written to a declared integration's `info`. */
|
|
41087
41176
|
var DECLARED_INTEGRATION_FIXED_KEY = "fixed";
|
|
41088
41177
|
/**
|
|
@@ -52990,4 +53079,4 @@ function enumerateInferenceDevices(hw) {
|
|
|
52990
53079
|
return out;
|
|
52991
53080
|
}
|
|
52992
53081
|
//#endregion
|
|
52993
|
-
export { decodeVectorBase64 as $,
|
|
53082
|
+
export { decodeVectorBase64 as $, siteZoneKey as $t, STREAM_PROFILE_META as A, hydrateSchema as An, logLevelAtMost as At, alertsCapability as B, EventCategory as Bn, parseStreamParamsFormPatch as Bt, RECORDING_SOURCE_CAMSTACK_ADDON as C, asJsonObject as Cn, kebabToCamel as Ct, SOURCE_CAPS as D, emitDownForOwnedCaps as Dn, localNetworkCapability as Dt, RecordingStatusSchema as E, createEvent as En, lifecycleJobSchema as Et, StorageMigrationJobSchema as F, parseJsonUnknown as Fn, modeMayWrite as Ft, buildStreamParamsConfigSchema as G, resolveBucketMs as Gt, backupCapability as H, procedureAuthKey as Ht, UserRecordSchema as I, readinessKey as In, motionCapability as It, coreBlockAddonId as J, runtimeStatePolicyFor as Jt, cameraGridLayoutCapability as K, resolveLocationMode as Kt, addonPagesCapability as L, resolveCapMount as Ln, normalizeUnit as Lt, StorageCleanupJobSchema as M, isEvent as Mn, mayReadLocation as Mt, StorageLocationModeSchema as N, nodePin as Nn, mayWriteToLocation as Nt, SOURCE_DEVICE_TYPES as O, emitReadiness as On, locationIconKey as Ot, StorageLocationTypeSchema as P, parseJsonObject as Pn, metricsProviderCapability as Pt, declarationOwnerNodeId as Q, settingsStoreCapability as Qt, addonSettingsCapability as R, scopeKey as Rn, objectInputDeclaresAddonId as Rt, MOTION_CLOSE_AFTER_MS as S, WELL_KNOWN_TAB_MAP as Sn, isVoidInput as St, RUNTIME_DEFAULTS as T, asString as Tn, legacyModeOf as Tt, bareAddonId as U, ptzAutotrackCapability as Ut, authProviderCapability as V, platformProbeCapability as Vt, batteryCapability as W, reducePoints as Wt, coreBlocksCapability as X, scopesAllowDeviceCap as Xt, coreBlockIdFromAddonId as Y, scopesAllowAddon as Yt, dataStoreProviderCapability as Z, scoreRuntimes as Zt, LOG_LEVEL_RANK as _, DeviceFeature as _n, isCollectionArrayMethod as _t, BatteryStatusSchema as a, streamCatalogCapability as an, enumerateInferenceDevices as at, METHOD_ACCESS_MAP as b, ReadinessRegistry as bn, isSameAddonId as bt, CORE_BLOCKS_ADDON_ID as c, vectorDimFromBase64 as cn, evaluateSensorEdge as ct, DAY_NAMES as d, errMsg as dn, extractNestedAddonId as dt, snapshotCapability as en, deriveBatteryPresence as et, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as f, buildFfmpegArgs as fn, filesystemBrowseCapability as ft, FIRST_LEVEL_MACRO_CLASSES as g, DEVICE_STATUS_METHOD as gn, isArrayOutputSchema as gt, DeviceStatusSchema as h, DEVICE_SETTINGS_CONTRIBUTION_METHODS as hn, gbToBytes as ht, BaseDevice as i, storageProviderCapability as in, doorbellCapability as it, ScopedTokenSchema as j, isDeviceConfigCap as jn, looseSchema as jt, STORAGE_ACCESS_FALLBACK as k, expandCapMethods as kn, logDestinationCapability as kt, CORE_BLOCK_ADDON_PREFIX as l, vectorStoreCapability as ln, evictionPolicyOfLocation as lt, DeclaredDevices as m, DATAPLANE_SECRET_HEADER as mn, formatMinutes as mt, AlertSchema as n, storageMigrationCapability as nn, deviceStateCapability as nt, CAMERA_SWITCH_ORDER as o, streamQualityLabel as on, enumerateItemArrayFields as ot, DERIVED_CAMERA_SILENCED_CAP_NAMES as p, BaseAddon as pn, foldSnapshotByFunction as pt, collectSecretConfigKeys as q, resolveMethodAuth as qt, ApiKeyRecordSchema as r, storageOccupancyCapability as rn, deviceStatusCapability as rt, CAP_NAMES_WITH_STATUS as s, userManagementCapability as sn, enumerateSchemaFields as st, ALL_CAPABILITY_DEFINITIONS as t, storageCapability as tn, deviceManagerCapability as tt, CoreBlockSchema as u, withLocationMode as un, expandContainer as ut, LegacyStorageLocationDefaultSchema as v, DeviceRole as vn, isLocationEnabled as vt, REDACTED_SECRET as w, asNumber as wn, legacyAutoLinkIds as wt, MINUTES_PER_DAY as x, ReadinessTimeoutError as xn, isSourceCap as xt, LocationIconIdSchema as y, DeviceType as yn, isObjectInput as yt, addonWidgetsCapability as z, sleep as zn, objectInputDeclaresRequiredDeviceId as zt };
|
package/dist/index.d.ts
CHANGED
|
@@ -112,3 +112,7 @@ export { type EnsureAddonNativePrebuildsOptions, ensureAddonNativePrebuilds, typ
|
|
|
112
112
|
export { type EnsureNativePrebuildsOptions, ensureNativePrebuilds, hasDotNode, NATIVE_SCAN_DEPTH, type PrebuildFetchFn, type PrebuildTarget, TRADITIONAL_NATIVE_PACKAGES, } from './kernel/deps/ensure-native-prebuilds.js';
|
|
113
113
|
export { type NpmInvocation, type RunNpmOptions, buildNpmChildEnv, resolveNpmInvocation, runNpm, } from './kernel/deps/npm-command.js';
|
|
114
114
|
export * from './kernel/index.js';
|
|
115
|
+
/** The token a CHILD uses to say "this method is declared optional and this
|
|
116
|
+
* provider does not serve it", which the hub turns into `NOT_IMPLEMENTED`.
|
|
117
|
+
* Crosses a UDS boundary as a plain message, so it is a prefix, not a class. */
|
|
118
|
+
export { CAP_METHOD_NOT_IMPLEMENTED } from './kernel/moleculer/child-cap-dispatch.js';
|