@camstack/addon-pipeline 1.2.342 → 1.2.343
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/audio-analyzer/index.js +5 -4
- package/dist/audio-analyzer/index.mjs +5 -4
- package/dist/{custom-model-catalog-DPBG06HE.js → custom-model-catalog-CC8vgYZ8.js} +3 -3
- package/dist/{custom-model-catalog-BjPZrWX3.mjs → custom-model-catalog-m7EBV9wu.mjs} +3 -3
- package/dist/detection-pipeline/index.js +4 -4
- package/dist/detection-pipeline/index.mjs +4 -4
- package/dist/{dist-BWzBHFEB.mjs → dist-BAHBDujp.mjs} +33 -347
- package/dist/{dist-w_gA9z8W.js → dist-BwipY6K1.js} +33 -347
- package/dist/{model-catalogs-Dseq1bmN.mjs → model-catalogs-CUU_L1ec.mjs} +1 -1
- package/dist/{model-catalogs-ll-ggTUb.js → model-catalogs-Dotb1OFs.js} +1 -1
- package/dist/motion-wasm/index.js +1 -1
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/{node-BTsWSPyQ.js → node-BHYEkNaS.js} +1 -1
- package/dist/{node-B7gAWBnv.mjs → node-BPwelwyj.mjs} +1 -1
- package/dist/pipeline-runner/index.js +11 -13
- package/dist/pipeline-runner/index.mjs +11 -13
- package/dist/{process-memory-Nq3qwp-q.js → process-memory-BRCKXa-P.js} +1 -1
- package/dist/{process-memory-BYs3sxnT.mjs → process-memory-_8o1iZnL.mjs} +1 -1
- package/dist/recorder/index.js +2 -13
- package/dist/recorder/index.mjs +2 -13
- package/dist/{segment-demux-js-C7Bk1l_R.mjs → segment-demux-js-DK8jbZy6.mjs} +1 -1
- package/dist/{segment-demux-js-D4kTUDck.js → segment-demux-js-DveVPFl9.js} +1 -1
- package/dist/stream-broker/_stub.js +48 -130
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-By8a97Br.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-CF-T-9YU.mjs} +3 -3
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BUfCTcDV.mjs +26 -0
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-uAQqU5lv.mjs +26 -0
- package/dist/stream-broker/demux-worker-child.js +1 -1
- package/dist/stream-broker/demux-worker-child.mjs +1 -1
- package/dist/stream-broker/{hostInit-BU65uPCY.mjs → hostInit-C6jr8fSt.mjs} +3 -3
- package/dist/stream-broker/index.js +49 -1693
- package/dist/stream-broker/index.mjs +54 -1696
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/package.json +1 -6
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-B204qFeL.mjs +0 -26
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Czhfk3hD.mjs +0 -26
|
@@ -3,9 +3,9 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../chunk-emK7D4bc.js");
|
|
6
|
-
const require_dist = require("../dist-
|
|
7
|
-
const require_node = require("../node-
|
|
8
|
-
const require_custom_model_catalog = require("../custom-model-catalog-
|
|
6
|
+
const require_dist = require("../dist-BwipY6K1.js");
|
|
7
|
+
const require_node = require("../node-BHYEkNaS.js");
|
|
8
|
+
const require_custom_model_catalog = require("../custom-model-catalog-CC8vgYZ8.js");
|
|
9
9
|
const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
|
|
10
10
|
const require_lazy_sharp = require("../lazy-sharp-BuwKlQLR.js");
|
|
11
11
|
const require_restream_intent = require("../restream-intent-7uDNqMKs.js");
|
|
@@ -4116,8 +4116,7 @@ function summarizeDeviceLoad(attachedDeviceKeys) {
|
|
|
4116
4116
|
return Array.from(counts.entries()).map(([deviceKey, attachedCameras]) => ({
|
|
4117
4117
|
deviceKey,
|
|
4118
4118
|
backend: backendOf(deviceKey),
|
|
4119
|
-
attachedCameras
|
|
4120
|
-
queueDepthTotal: 0
|
|
4119
|
+
attachedCameras
|
|
4121
4120
|
})).toSorted((a, b) => a.deviceKey.localeCompare(b.deviceKey));
|
|
4122
4121
|
}
|
|
4123
4122
|
//#endregion
|
|
@@ -7852,7 +7851,7 @@ function rgbFrameToGrayFrame(frame) {
|
|
|
7852
7851
|
* - `sharedWithDetection` (onboard/sensor-triggered) AND detection actually
|
|
7853
7852
|
* runs (`detectionMode !== 'disabled'`) → ride the detection decode:
|
|
7854
7853
|
* `rgb` on the MAIN (`detectionStreamId`) stream, converted to gray. No
|
|
7855
|
-
* second decoder —
|
|
7854
|
+
* second decoder — it rides detection's session-decode worker.
|
|
7856
7855
|
* - Otherwise (persistent analyzer, or detection disabled) → a dedicated
|
|
7857
7856
|
* `gray` decode on the SUB (`motionStreamId`) stream, exactly as before.
|
|
7858
7857
|
*
|
|
@@ -11172,8 +11171,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
|
|
|
11172
11171
|
* analyzer is the motion source (`motionSources` includes `'analyzer'`).
|
|
11173
11172
|
* - **Shared with detection** (`opts.sharedWithDetection`) — subscribes
|
|
11174
11173
|
* `rgb` on `detectionStreamId` (the MAIN stream) so it rides the SAME
|
|
11175
|
-
*
|
|
11176
|
-
* same-format subscribers on a stream into ONE decode), then derives the
|
|
11174
|
+
* session-decode worker detection already uses, then derives the
|
|
11177
11175
|
* analyzer's `gray` from that rgb frame's luma. No second decoder. Used for
|
|
11178
11176
|
* onboard/sensor-triggered motion, where a decode is already active.
|
|
11179
11177
|
*/
|
|
@@ -12146,14 +12144,14 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
|
|
|
12146
12144
|
id: "pipeline-runner-tuning",
|
|
12147
12145
|
title: "Pipeline Runner",
|
|
12148
12146
|
tab: "scheduler",
|
|
12149
|
-
description: "
|
|
12147
|
+
description: "Values every node's detection runner uses. A node's own decode limits (Roles & nodes) take precedence over the two decode values.",
|
|
12150
12148
|
columns: 2,
|
|
12151
12149
|
fields: [
|
|
12152
12150
|
{
|
|
12153
12151
|
type: "slider",
|
|
12154
12152
|
key: "maxConcurrentInferences",
|
|
12155
12153
|
label: "Scheduler concurrency",
|
|
12156
|
-
description: "
|
|
12154
|
+
description: "Most inferences a node runs at once, across all its cameras. Not the same as the pool threads on the node Scheduler tab.",
|
|
12157
12155
|
min: 1,
|
|
12158
12156
|
max: 16,
|
|
12159
12157
|
step: 1,
|
|
@@ -12198,7 +12196,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
|
|
|
12198
12196
|
type: "slider",
|
|
12199
12197
|
key: "maxConcurrentDecodeSpawns",
|
|
12200
12198
|
label: "Max concurrent decode-worker spawns",
|
|
12201
|
-
description: "
|
|
12199
|
+
description: "How many camera decoders a node may START at the same moment; the rest wait their turn. Stops a burst of motion on many cameras from overloading the GPU.",
|
|
12202
12200
|
min: 1,
|
|
12203
12201
|
max: 16,
|
|
12204
12202
|
step: 1,
|
|
@@ -12209,7 +12207,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
|
|
|
12209
12207
|
type: "slider",
|
|
12210
12208
|
key: "maxLiveDecodeWorkers",
|
|
12211
12209
|
label: "Max live decode workers",
|
|
12212
|
-
description: "
|
|
12210
|
+
description: "Most camera decoders running at once on a node (the RAM budget below usually decides first). A camera that does not fit is retried as soon as one frees up.",
|
|
12213
12211
|
min: 1,
|
|
12214
12212
|
max: 32,
|
|
12215
12213
|
step: 1,
|
|
@@ -12220,7 +12218,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends require_dist.BaseAdd
|
|
|
12220
12218
|
type: "slider",
|
|
12221
12219
|
key: "nodeDecodeBudgetMb",
|
|
12222
12220
|
label: "Decode worker RAM budget (MB)",
|
|
12223
|
-
description: "
|
|
12221
|
+
description: "RAM a node lets its camera decoders use, unless the node sets its own (Roles & nodes). Left at the default, each node uses half its RAM (2–16 GB). Each decoder counts ~660 MB with the default full-resolution crop settings, so raising those lowers how many decoders run at once.",
|
|
12224
12222
|
min: 1024,
|
|
12225
12223
|
max: 32768,
|
|
12226
12224
|
step: 512,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { $ as cameraOwnsMotionViaSensor, A as NativeLeaseAdmissionSchema, At as linkedStepOf, Dn as errMsg, Fn as defineCustomActions, Gn as _enum, Gt as pickDetailCropConvention, Jt as pipelineRunnerCapability, Kn as array, Kt as pickNativeLeaseOverride, Nn as createEvent, Pn as customAction, Qn as object, T as FailureCounters, Vn as nodePin, Xn as literal, Yn as lazy, Zn as number, _ as DEFAULT_DETAIL_CROP_CONVENTION, a as BackgroundRunRegistry, cn as rootSuppliesOf, ft as deriveRootFaceRefineRect, in as resolveModelBoundSetting, j as NativeLeaseSettingsSchema, jt as loadContributionCapability, kn as BaseAddon, m as CROP_SUPPLY_SOURCES, q as allowedSuppliedEffect, qn as boolean, rr as EventCategory, sn as resolveRootSupply, tr as string, ut as deriveDetailCropRect, xt as failureContributionCapability, y as DEFAULT_NATIVE_LEASE_SETTINGS, z as ROOT_SUPPLIABLE_STEP_IDS } from "../dist-
|
|
2
|
-
import { i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-
|
|
3
|
-
import { a as stepsForElectedPool, b as getStepDefinition, d as rootObjectGate, f as localFrameRegistry, h as resolveFrameViewGeometry, i as placeDetailStep, l as resolveDefaultDetectionModel, m as createSessionDecodeCoordinator, p as isSessionDecodeReadGone, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, y as getStep } from "../custom-model-catalog-
|
|
1
|
+
import { $ as cameraOwnsMotionViaSensor, A as NativeLeaseAdmissionSchema, At as linkedStepOf, Dn as errMsg, Fn as defineCustomActions, Gn as _enum, Gt as pickDetailCropConvention, Jt as pipelineRunnerCapability, Kn as array, Kt as pickNativeLeaseOverride, Nn as createEvent, Pn as customAction, Qn as object, T as FailureCounters, Vn as nodePin, Xn as literal, Yn as lazy, Zn as number, _ as DEFAULT_DETAIL_CROP_CONVENTION, a as BackgroundRunRegistry, cn as rootSuppliesOf, ft as deriveRootFaceRefineRect, in as resolveModelBoundSetting, j as NativeLeaseSettingsSchema, jt as loadContributionCapability, kn as BaseAddon, m as CROP_SUPPLY_SOURCES, q as allowedSuppliedEffect, qn as boolean, rr as EventCategory, sn as resolveRootSupply, tr as string, ut as deriveDetailCropRect, xt as failureContributionCapability, y as DEFAULT_NATIVE_LEASE_SETTINGS, z as ROOT_SUPPLIABLE_STEP_IDS } from "../dist-BAHBDujp.mjs";
|
|
2
|
+
import { i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-BPwelwyj.mjs";
|
|
3
|
+
import { a as stepsForElectedPool, b as getStepDefinition, d as rootObjectGate, f as localFrameRegistry, h as resolveFrameViewGeometry, i as placeDetailStep, l as resolveDefaultDetectionModel, m as createSessionDecodeCoordinator, p as isSessionDecodeReadGone, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, y as getStep } from "../custom-model-catalog-m7EBV9wu.mjs";
|
|
4
4
|
import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
|
|
5
5
|
import { t as getSharp } from "../lazy-sharp-DXsqwpph.mjs";
|
|
6
6
|
import { c as withDetectionIntent, o as preRollRequestOf, t as DETECTION_PRE_ROLL_REQUEST_MS } from "../restream-intent-DyGmLAU9.mjs";
|
|
@@ -4108,8 +4108,7 @@ function summarizeDeviceLoad(attachedDeviceKeys) {
|
|
|
4108
4108
|
return Array.from(counts.entries()).map(([deviceKey, attachedCameras]) => ({
|
|
4109
4109
|
deviceKey,
|
|
4110
4110
|
backend: backendOf(deviceKey),
|
|
4111
|
-
attachedCameras
|
|
4112
|
-
queueDepthTotal: 0
|
|
4111
|
+
attachedCameras
|
|
4113
4112
|
})).toSorted((a, b) => a.deviceKey.localeCompare(b.deviceKey));
|
|
4114
4113
|
}
|
|
4115
4114
|
//#endregion
|
|
@@ -7844,7 +7843,7 @@ function rgbFrameToGrayFrame(frame) {
|
|
|
7844
7843
|
* - `sharedWithDetection` (onboard/sensor-triggered) AND detection actually
|
|
7845
7844
|
* runs (`detectionMode !== 'disabled'`) → ride the detection decode:
|
|
7846
7845
|
* `rgb` on the MAIN (`detectionStreamId`) stream, converted to gray. No
|
|
7847
|
-
* second decoder —
|
|
7846
|
+
* second decoder — it rides detection's session-decode worker.
|
|
7848
7847
|
* - Otherwise (persistent analyzer, or detection disabled) → a dedicated
|
|
7849
7848
|
* `gray` decode on the SUB (`motionStreamId`) stream, exactly as before.
|
|
7850
7849
|
*
|
|
@@ -11164,8 +11163,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
|
|
|
11164
11163
|
* analyzer is the motion source (`motionSources` includes `'analyzer'`).
|
|
11165
11164
|
* - **Shared with detection** (`opts.sharedWithDetection`) — subscribes
|
|
11166
11165
|
* `rgb` on `detectionStreamId` (the MAIN stream) so it rides the SAME
|
|
11167
|
-
*
|
|
11168
|
-
* same-format subscribers on a stream into ONE decode), then derives the
|
|
11166
|
+
* session-decode worker detection already uses, then derives the
|
|
11169
11167
|
* analyzer's `gray` from that rgb frame's luma. No second decoder. Used for
|
|
11170
11168
|
* onboard/sensor-triggered motion, where a decode is already active.
|
|
11171
11169
|
*/
|
|
@@ -12138,14 +12136,14 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
|
|
|
12138
12136
|
id: "pipeline-runner-tuning",
|
|
12139
12137
|
title: "Pipeline Runner",
|
|
12140
12138
|
tab: "scheduler",
|
|
12141
|
-
description: "
|
|
12139
|
+
description: "Values every node's detection runner uses. A node's own decode limits (Roles & nodes) take precedence over the two decode values.",
|
|
12142
12140
|
columns: 2,
|
|
12143
12141
|
fields: [
|
|
12144
12142
|
{
|
|
12145
12143
|
type: "slider",
|
|
12146
12144
|
key: "maxConcurrentInferences",
|
|
12147
12145
|
label: "Scheduler concurrency",
|
|
12148
|
-
description: "
|
|
12146
|
+
description: "Most inferences a node runs at once, across all its cameras. Not the same as the pool threads on the node Scheduler tab.",
|
|
12149
12147
|
min: 1,
|
|
12150
12148
|
max: 16,
|
|
12151
12149
|
step: 1,
|
|
@@ -12190,7 +12188,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
|
|
|
12190
12188
|
type: "slider",
|
|
12191
12189
|
key: "maxConcurrentDecodeSpawns",
|
|
12192
12190
|
label: "Max concurrent decode-worker spawns",
|
|
12193
|
-
description: "
|
|
12191
|
+
description: "How many camera decoders a node may START at the same moment; the rest wait their turn. Stops a burst of motion on many cameras from overloading the GPU.",
|
|
12194
12192
|
min: 1,
|
|
12195
12193
|
max: 16,
|
|
12196
12194
|
step: 1,
|
|
@@ -12201,7 +12199,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
|
|
|
12201
12199
|
type: "slider",
|
|
12202
12200
|
key: "maxLiveDecodeWorkers",
|
|
12203
12201
|
label: "Max live decode workers",
|
|
12204
|
-
description: "
|
|
12202
|
+
description: "Most camera decoders running at once on a node (the RAM budget below usually decides first). A camera that does not fit is retried as soon as one frees up.",
|
|
12205
12203
|
min: 1,
|
|
12206
12204
|
max: 32,
|
|
12207
12205
|
step: 1,
|
|
@@ -12212,7 +12210,7 @@ var PipelineRunnerAddon = class PipelineRunnerAddon extends BaseAddon {
|
|
|
12212
12210
|
type: "slider",
|
|
12213
12211
|
key: "nodeDecodeBudgetMb",
|
|
12214
12212
|
label: "Decode worker RAM budget (MB)",
|
|
12215
|
-
description: "
|
|
12213
|
+
description: "RAM a node lets its camera decoders use, unless the node sets its own (Roles & nodes). Left at the default, each node uses half its RAM (2–16 GB). Each decoder counts ~660 MB with the default full-resolution crop settings, so raising those lowers how many decoders run at once.",
|
|
12216
12214
|
min: 1024,
|
|
12217
12215
|
max: 32768,
|
|
12218
12216
|
step: 512,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_chunk = require("./chunk-emK7D4bc.js");
|
|
2
|
-
const require_dist = require("./dist-
|
|
2
|
+
const require_dist = require("./dist-BwipY6K1.js");
|
|
3
3
|
let node_fs = require("node:fs");
|
|
4
4
|
node_fs = require_chunk.__toESM(node_fs);
|
|
5
5
|
let node_child_process = require("node:child_process");
|
package/dist/recorder/index.js
CHANGED
|
@@ -3,8 +3,8 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../chunk-emK7D4bc.js");
|
|
6
|
-
const require_dist = require("../dist-
|
|
7
|
-
const require_node = require("../node-
|
|
6
|
+
const require_dist = require("../dist-BwipY6K1.js");
|
|
7
|
+
const require_node = require("../node-BHYEkNaS.js");
|
|
8
8
|
const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
|
|
9
9
|
const require_restream_intent = require("../restream-intent-7uDNqMKs.js");
|
|
10
10
|
const require_retire_root_keys = require("../retire-root-keys-Csb8z2f3.js");
|
|
@@ -5927,16 +5927,6 @@ Object.freeze({
|
|
|
5927
5927
|
"pullPcm": { "maxCount": 8 }
|
|
5928
5928
|
},
|
|
5929
5929
|
"battery": { "wakeForStream": { "timeoutMs": 8e3 } },
|
|
5930
|
-
"decoder": {
|
|
5931
|
-
"createSession": {
|
|
5932
|
-
"maxFps": 0,
|
|
5933
|
-
"outputFormat": "jpeg",
|
|
5934
|
-
"scale": 1,
|
|
5935
|
-
"frameSink": "callback"
|
|
5936
|
-
},
|
|
5937
|
-
"pullFrames": { "maxCount": 1 },
|
|
5938
|
-
"pullHandles": { "maxCount": 1 }
|
|
5939
|
-
},
|
|
5940
5930
|
"device-adoption": { "listCandidates": {
|
|
5941
5931
|
"page": 1,
|
|
5942
5932
|
"pageSize": 50
|
|
@@ -6124,7 +6114,6 @@ Object.freeze({
|
|
|
6124
6114
|
"speed": 4
|
|
6125
6115
|
},
|
|
6126
6116
|
"pullAudioChunks": { "maxCount": 8 },
|
|
6127
|
-
"pullFrameHandles": { "maxCount": 4 },
|
|
6128
6117
|
"renderPreBufferClip": {
|
|
6129
6118
|
"preRollSec": 3,
|
|
6130
6119
|
"postRollSec": 5,
|
package/dist/recorder/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { $n as preprocess, $t as recordingSignalCapability, B as RecordingConfigSchema, Ct as gbToBytes, Dn as errMsg$1, En as DeviceType, Fn as defineCustomActions, Ft as mayReadLocation, Gn as _enum, I as RECORDING_EXPORT_MAX_READ_BYTES, It as mayWriteToLocation, Kn as array, L as RECORDING_SOURCE_CAMSTACK, Ln as hydrateSchema, Lt as memoizePinnedFfmpeg, M as OpsLogEntrySchema, Ot as isFirstLevelMacroClass, Pn as customAction, Q as batteryCapability, Qn as object, Qt as recordingExportCapability, R as RECORDING_SOURCE_CAMSTACK_ADDON, Rt as migrateLegacyDeviceSignalConfig, S as EVENT_PAD_MS, Sn as evaluateSensorEdge, Tn as DeviceFeature, U as VIDEOCLIPS_MAX_OFFER_BYTES, Un as selectAssignedProfileSlots, V as RecordingSignalStatusSchema, Vn as nodePin, W as VISIT_MERGE_GAP_MS, Wn as sleep$1, Xt as recordingArchiveCapability, Zn as number, Zt as recordingCapability, bt as exportSubjectOf, dn as storageEvictableCapability, dt as deriveRecordingMode, er as record, fn as storageOccupancyCapability, gn as videoclipsCapability, jt as loadContributionCapability, kn as BaseAddon, lt as deriveBatteryPresence, mn as stripRetiredBandPreBufferSec, nt as clipExportFailureOf, o as BatteryStatusSchema, on as resolveRecordingProfiles, qn as boolean, rn as resolveLocationMode, rr as EventCategory, s as CLIP_BROKER_PACED_RATES, tn as resolveCreateExportSubject, tr as string, tt as clipExportFailure, v as DEFAULT_EVENTS_BAND_BUFFER_SEC, vt as evictionPolicyForMode, w as ExportRecordSchema, x as EVENT_OWNER_TYPES, yt as evictionPolicyOfLocation, zt as modeMayWrite } from "../dist-
|
|
2
|
-
import { a as physicalRootOf, i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-
|
|
1
|
+
import { $n as preprocess, $t as recordingSignalCapability, B as RecordingConfigSchema, Ct as gbToBytes, Dn as errMsg$1, En as DeviceType, Fn as defineCustomActions, Ft as mayReadLocation, Gn as _enum, I as RECORDING_EXPORT_MAX_READ_BYTES, It as mayWriteToLocation, Kn as array, L as RECORDING_SOURCE_CAMSTACK, Ln as hydrateSchema, Lt as memoizePinnedFfmpeg, M as OpsLogEntrySchema, Ot as isFirstLevelMacroClass, Pn as customAction, Q as batteryCapability, Qn as object, Qt as recordingExportCapability, R as RECORDING_SOURCE_CAMSTACK_ADDON, Rt as migrateLegacyDeviceSignalConfig, S as EVENT_PAD_MS, Sn as evaluateSensorEdge, Tn as DeviceFeature, U as VIDEOCLIPS_MAX_OFFER_BYTES, Un as selectAssignedProfileSlots, V as RecordingSignalStatusSchema, Vn as nodePin, W as VISIT_MERGE_GAP_MS, Wn as sleep$1, Xt as recordingArchiveCapability, Zn as number, Zt as recordingCapability, bt as exportSubjectOf, dn as storageEvictableCapability, dt as deriveRecordingMode, er as record, fn as storageOccupancyCapability, gn as videoclipsCapability, jt as loadContributionCapability, kn as BaseAddon, lt as deriveBatteryPresence, mn as stripRetiredBandPreBufferSec, nt as clipExportFailureOf, o as BatteryStatusSchema, on as resolveRecordingProfiles, qn as boolean, rn as resolveLocationMode, rr as EventCategory, s as CLIP_BROKER_PACED_RATES, tn as resolveCreateExportSubject, tr as string, tt as clipExportFailure, v as DEFAULT_EVENTS_BAND_BUFFER_SEC, vt as evictionPolicyForMode, w as ExportRecordSchema, x as EVENT_OWNER_TYPES, yt as evictionPolicyOfLocation, zt as modeMayWrite } from "../dist-BAHBDujp.mjs";
|
|
2
|
+
import { a as physicalRootOf, i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-BPwelwyj.mjs";
|
|
3
3
|
import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
|
|
4
4
|
import { d as PREBUFFER_MAX_MS, l as withRecordingIntent, r as RECORDING_PRE_ROLL_REQUEST_MS } from "../restream-intent-DyGmLAU9.mjs";
|
|
5
5
|
import { n as RowMapStore, t as retireRootKeys } from "../retire-root-keys-DZvlso2l.mjs";
|
|
@@ -5919,16 +5919,6 @@ Object.freeze({
|
|
|
5919
5919
|
"pullPcm": { "maxCount": 8 }
|
|
5920
5920
|
},
|
|
5921
5921
|
"battery": { "wakeForStream": { "timeoutMs": 8e3 } },
|
|
5922
|
-
"decoder": {
|
|
5923
|
-
"createSession": {
|
|
5924
|
-
"maxFps": 0,
|
|
5925
|
-
"outputFormat": "jpeg",
|
|
5926
|
-
"scale": 1,
|
|
5927
|
-
"frameSink": "callback"
|
|
5928
|
-
},
|
|
5929
|
-
"pullFrames": { "maxCount": 1 },
|
|
5930
|
-
"pullHandles": { "maxCount": 1 }
|
|
5931
|
-
},
|
|
5932
5922
|
"device-adoption": { "listCandidates": {
|
|
5933
5923
|
"page": 1,
|
|
5934
5924
|
"pageSize": 50
|
|
@@ -6116,7 +6106,6 @@ Object.freeze({
|
|
|
6116
6106
|
"speed": 4
|
|
6117
6107
|
},
|
|
6118
6108
|
"pullAudioChunks": { "maxCount": 8 },
|
|
6119
|
-
"pullFrameHandles": { "maxCount": 4 },
|
|
6120
6109
|
"renderPreBufferClip": {
|
|
6121
6110
|
"preRollSec": 3,
|
|
6122
6111
|
"postRollSec": 5,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as __toESM, t as __commonJSMin } from "./chunk-DnnnRqeS.mjs";
|
|
2
|
-
import { Dn as errMsg } from "./dist-
|
|
2
|
+
import { Dn as errMsg } from "./dist-BAHBDujp.mjs";
|
|
3
3
|
import { spawn } from "node:child_process";
|
|
4
4
|
//#region src/stream-broker/recorded/avcc-annexb.ts
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_chunk = require("./chunk-emK7D4bc.js");
|
|
2
|
-
const require_dist = require("./dist-
|
|
2
|
+
const require_dist = require("./dist-BwipY6K1.js");
|
|
3
3
|
let node_child_process = require("node:child_process");
|
|
4
4
|
//#region src/stream-broker/recorded/avcc-annexb.ts
|
|
5
5
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-
|
|
1
|
+
import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-uAQqU5lv.mjs";
|
|
2
2
|
import { a as p, i as m, n as h, o as g, r as _, t as v } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react__loadShare__.js-C9j-2lBe.mjs";
|
|
3
3
|
import { n as y, r as b, t as x } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-XO0-Pyu6.mjs";
|
|
4
|
-
import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-
|
|
4
|
+
import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BUfCTcDV.mjs";
|
|
5
5
|
import { n as C, t as w } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-BO7TIbJV.mjs";
|
|
6
6
|
//#region ../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
|
|
7
7
|
var T = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), E = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), D = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), O = (e) => {
|
|
@@ -1461,7 +1461,7 @@ function je({ slot: t, camStreams: n, compact: a }) {
|
|
|
1461
1461
|
brokerId: t.brokerId,
|
|
1462
1462
|
...e
|
|
1463
1463
|
});
|
|
1464
|
-
}, [D, t.brokerId]), k = (t.sourceCamStreamId ? n.get(t.sourceCamStreamId) : void 0)?.resolution ?? t.resolution, A = l?.status === "streaming", j = k ? `${q[t.profile]} (${k.width}×${k.height})` : q[t.profile], M = l ? l.encodedSubscribers +
|
|
1464
|
+
}, [D, t.brokerId]), k = (t.sourceCamStreamId ? n.get(t.sourceCamStreamId) : void 0)?.resolution ?? t.resolution, A = l?.status === "streaming", j = k ? `${q[t.profile]} (${k.width}×${k.height})` : q[t.profile], M = l ? l.encodedSubscribers + (l.rtspClients ?? 0) + (l.pipeClients ?? 0) : 0;
|
|
1465
1465
|
return /* @__PURE__ */ b("div", {
|
|
1466
1466
|
className: `@container ${a ? "px-3 py-1.5" : "px-4 py-2"}`,
|
|
1467
1467
|
style: { containerType: "inline-size" },
|
|
@@ -1501,11 +1501,7 @@ function je({ slot: t, camStreams: n, compact: a }) {
|
|
|
1501
1501
|
children: "FPS:"
|
|
1502
1502
|
}), /* @__PURE__ */ b("span", {
|
|
1503
1503
|
className: "text-foreground",
|
|
1504
|
-
children: [
|
|
1505
|
-
l.inputFps.toFixed(1),
|
|
1506
|
-
"/",
|
|
1507
|
-
l.decodeFps.toFixed(1)
|
|
1508
|
-
]
|
|
1504
|
+
children: [l.inputFps.toFixed(1), " fps"]
|
|
1509
1505
|
})]
|
|
1510
1506
|
}),
|
|
1511
1507
|
/* @__PURE__ */ b("span", {
|
|
@@ -1544,7 +1540,7 @@ function je({ slot: t, camStreams: n, compact: a }) {
|
|
|
1544
1540
|
children: "("
|
|
1545
1541
|
}),
|
|
1546
1542
|
/* @__PURE__ */ y(Le, {
|
|
1547
|
-
count: l.encodedSubscribers
|
|
1543
|
+
count: l.encodedSubscribers,
|
|
1548
1544
|
clients: d,
|
|
1549
1545
|
onKill: O
|
|
1550
1546
|
}),
|
|
@@ -1581,16 +1577,6 @@ function je({ slot: t, camStreams: n, compact: a }) {
|
|
|
1581
1577
|
children: [l.inputFps.toFixed(1), " fps"]
|
|
1582
1578
|
})]
|
|
1583
1579
|
}),
|
|
1584
|
-
/* @__PURE__ */ b("span", {
|
|
1585
|
-
className: "inline-flex whitespace-nowrap gap-1",
|
|
1586
|
-
children: [/* @__PURE__ */ y("span", {
|
|
1587
|
-
className: "text-foreground-subtle",
|
|
1588
|
-
children: "Dec:"
|
|
1589
|
-
}), /* @__PURE__ */ b("span", {
|
|
1590
|
-
className: "text-foreground",
|
|
1591
|
-
children: [l.decodeFps.toFixed(1), " fps"]
|
|
1592
|
-
})]
|
|
1593
|
-
}),
|
|
1594
1580
|
/* @__PURE__ */ b("span", {
|
|
1595
1581
|
className: "inline-flex whitespace-nowrap gap-1",
|
|
1596
1582
|
children: [/* @__PURE__ */ y("span", {
|
|
@@ -1621,19 +1607,6 @@ function je({ slot: t, camStreams: n, compact: a }) {
|
|
|
1621
1607
|
children: l.codec?.toUpperCase() ?? "—"
|
|
1622
1608
|
})]
|
|
1623
1609
|
}),
|
|
1624
|
-
/* @__PURE__ */ b("span", {
|
|
1625
|
-
className: "hidden @[480px]:inline-flex whitespace-nowrap gap-1 max-w-full overflow-hidden",
|
|
1626
|
-
children: [/* @__PURE__ */ y("span", {
|
|
1627
|
-
className: "text-foreground-subtle",
|
|
1628
|
-
children: "Decoder:"
|
|
1629
|
-
}), /* @__PURE__ */ y("span", {
|
|
1630
|
-
className: "text-foreground font-mono truncate",
|
|
1631
|
-
children: l.decoderNodeId ?? /* @__PURE__ */ y("span", {
|
|
1632
|
-
className: "text-foreground-subtle italic",
|
|
1633
|
-
children: "deferred"
|
|
1634
|
-
})
|
|
1635
|
-
})]
|
|
1636
|
-
}),
|
|
1637
1610
|
/* @__PURE__ */ b("span", {
|
|
1638
1611
|
className: "hidden @[640px]:inline-flex whitespace-nowrap gap-1",
|
|
1639
1612
|
children: [/* @__PURE__ */ y("span", {
|
|
@@ -1772,46 +1745,28 @@ function Fe(e) {
|
|
|
1772
1745
|
return e < 1024 ? `${e} B` : e < 1048576 ? `${(e / 1024).toFixed(1)} KB` : e < 1073741824 ? `${(e / 1048576).toFixed(1)} MB` : `${(e / 1073741824).toFixed(2)} GB`;
|
|
1773
1746
|
}
|
|
1774
1747
|
function Ie({ clients: e, encodedCount: t, onKill: n }) {
|
|
1775
|
-
let r = e?.
|
|
1776
|
-
return
|
|
1748
|
+
let r = e?.audio ?? [], i = e?.rtsp ?? [], a = e?.encoded ?? [], o = r.length + i.length + a.length, [s, c] = g(!0);
|
|
1749
|
+
return o === 0 ? /* @__PURE__ */ y("div", {
|
|
1777
1750
|
className: "mt-1.5 text-[10px] text-foreground-subtle italic",
|
|
1778
1751
|
children: "No active subscribers"
|
|
1779
1752
|
}) : /* @__PURE__ */ b("div", {
|
|
1780
1753
|
className: "mt-1.5 border-t border-border/30 pt-1.5",
|
|
1781
1754
|
children: [/* @__PURE__ */ b("button", {
|
|
1782
1755
|
type: "button",
|
|
1783
|
-
onClick: () =>
|
|
1756
|
+
onClick: () => c((e) => !e),
|
|
1784
1757
|
className: "flex items-center gap-1 text-[10px] text-foreground-subtle hover:text-foreground transition-colors",
|
|
1785
|
-
children: [y(
|
|
1758
|
+
children: [y(s ? P : F, { className: "h-3 w-3" }), /* @__PURE__ */ b("span", {
|
|
1786
1759
|
className: "uppercase tracking-wider",
|
|
1787
1760
|
children: [
|
|
1788
1761
|
"Subscribers (",
|
|
1789
|
-
|
|
1762
|
+
o,
|
|
1790
1763
|
")"
|
|
1791
1764
|
]
|
|
1792
1765
|
})]
|
|
1793
|
-
}),
|
|
1766
|
+
}), s && /* @__PURE__ */ b("div", {
|
|
1794
1767
|
className: "mt-1 divide-y divide-border/20",
|
|
1795
1768
|
children: [
|
|
1796
1769
|
r.map((e, t) => /* @__PURE__ */ y(Q, {
|
|
1797
|
-
kind: "DECODED",
|
|
1798
|
-
kindClass: "bg-success/10 text-success",
|
|
1799
|
-
tag: e.tag || "unknown",
|
|
1800
|
-
metrics: [
|
|
1801
|
-
`${e.maxFps.toFixed(0)}fps`,
|
|
1802
|
-
`${e.framesDelivered} del`,
|
|
1803
|
-
...e.framesDropped > 0 ? [{
|
|
1804
|
-
text: `${e.framesDropped} drop`,
|
|
1805
|
-
warn: !0
|
|
1806
|
-
}] : []
|
|
1807
|
-
],
|
|
1808
|
-
age: Date.now() - e.subscribedAt,
|
|
1809
|
-
onKill: n && e.tag ? () => n({
|
|
1810
|
-
channel: "decoded",
|
|
1811
|
-
handle: e.tag
|
|
1812
|
-
}) : void 0
|
|
1813
|
-
}, `d-${t}`)),
|
|
1814
|
-
i.map((e, t) => /* @__PURE__ */ y(Q, {
|
|
1815
1770
|
kind: "AUDIO",
|
|
1816
1771
|
kindClass: "bg-info/10 text-info",
|
|
1817
1772
|
tag: e.tag || "unknown",
|
|
@@ -1822,7 +1777,7 @@ function Ie({ clients: e, encodedCount: t, onKill: n }) {
|
|
|
1822
1777
|
handle: e.tag
|
|
1823
1778
|
}) : void 0
|
|
1824
1779
|
}, `a-${t}`)),
|
|
1825
|
-
|
|
1780
|
+
i.map((e) => {
|
|
1826
1781
|
let t = Date.now() - e.lastRtpAt, r = t > 5e3, i = e.playing ? r ? "stalled" : "playing" : "paused", a = e.playing ? r ? "bg-amber-400/10 text-amber-400" : "bg-success/10 text-success" : "bg-foreground-subtle/10 text-foreground-subtle";
|
|
1827
1782
|
return /* @__PURE__ */ y(Q, {
|
|
1828
1783
|
kind: "RTSP",
|
|
@@ -1840,7 +1795,7 @@ function Ie({ clients: e, encodedCount: t, onKill: n }) {
|
|
|
1840
1795
|
}) : void 0
|
|
1841
1796
|
}, `r-${e.sessionId}`);
|
|
1842
1797
|
}),
|
|
1843
|
-
|
|
1798
|
+
a.map((e) => {
|
|
1844
1799
|
let t = e.attribution, n = we[t.kind] ?? "bg-foreground-subtle/10 text-foreground-subtle", r = t.sessionId ? t.sessionId.slice(0, 8) : null, i = [];
|
|
1845
1800
|
t.label && i.push(t.label), r && i.push(`sess ${r}`), t.userId && i.push(`user ${t.userId.slice(0, 8)}`), t.remoteAddr && i.push(`@${t.remoteAddr}`), t.userAgent && i.push(K(t.userAgent));
|
|
1846
1801
|
let a = i.length > 0 ? i.join(" · ") : Ee(t.kind), o = [];
|
|
@@ -1852,7 +1807,7 @@ function Ie({ clients: e, encodedCount: t, onKill: n }) {
|
|
|
1852
1807
|
age: Date.now() - e.subscribedAt
|
|
1853
1808
|
}, e.id);
|
|
1854
1809
|
}),
|
|
1855
|
-
|
|
1810
|
+
a.length === 0 && t > 0 && /* @__PURE__ */ b("div", {
|
|
1856
1811
|
className: "py-0.5 text-[10px] text-foreground-subtle",
|
|
1857
1812
|
children: [
|
|
1858
1813
|
/* @__PURE__ */ y("span", {
|
|
@@ -1920,81 +1875,44 @@ function Q({ kind: e, kindClass: t, tag: n, state: r, metrics: i, age: a, onKill
|
|
|
1920
1875
|
});
|
|
1921
1876
|
}
|
|
1922
1877
|
function Le({ count: e, clients: t, onKill: n }) {
|
|
1923
|
-
let r = t?.
|
|
1924
|
-
className: `text-foreground ${
|
|
1878
|
+
let r = t?.audio ?? [], i = t ? t.encodedSubscribers : 0, a = r.length > 0 || i > 0, o = /* @__PURE__ */ y("span", {
|
|
1879
|
+
className: `text-foreground ${a ? "underline decoration-dotted decoration-foreground-subtle/50 underline-offset-2 cursor-help" : ""}`,
|
|
1925
1880
|
children: e
|
|
1926
1881
|
});
|
|
1927
|
-
return
|
|
1928
|
-
trigger:
|
|
1929
|
-
content: /* @__PURE__ */ b(x, { children: [
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
children: [/* @__PURE__ */ y("div", {
|
|
1933
|
-
className: "text-foreground-subtle uppercase text-[9px] tracking-wider mb-1",
|
|
1934
|
-
children: "Decoded subscribers"
|
|
1935
|
-
}), r.map((e, t) => /* @__PURE__ */ b("div", {
|
|
1936
|
-
className: "flex items-center justify-between gap-2 py-0.5",
|
|
1937
|
-
children: [/* @__PURE__ */ y("span", {
|
|
1938
|
-
className: "text-foreground font-medium truncate",
|
|
1939
|
-
children: e.tag || "unknown"
|
|
1940
|
-
}), /* @__PURE__ */ b("span", {
|
|
1941
|
-
className: "text-foreground-subtle text-[9px] flex items-center gap-1.5 shrink-0",
|
|
1942
|
-
children: [
|
|
1943
|
-
/* @__PURE__ */ b("span", { children: [e.maxFps.toFixed(0), "fps"] }),
|
|
1944
|
-
/* @__PURE__ */ y("span", { children: "·" }),
|
|
1945
|
-
/* @__PURE__ */ b("span", { children: [e.framesDelivered, " del"] }),
|
|
1946
|
-
e.framesDropped > 0 && /* @__PURE__ */ b("span", {
|
|
1947
|
-
className: "text-amber-400",
|
|
1948
|
-
children: [
|
|
1949
|
-
"· ",
|
|
1950
|
-
e.framesDropped,
|
|
1951
|
-
" drop"
|
|
1952
|
-
]
|
|
1953
|
-
}),
|
|
1954
|
-
/* @__PURE__ */ y("span", { children: "·" }),
|
|
1955
|
-
/* @__PURE__ */ y("span", { children: Z(Date.now() - e.subscribedAt) }),
|
|
1956
|
-
n && e.tag && /* @__PURE__ */ y($, { onClick: () => n({
|
|
1957
|
-
channel: "decoded",
|
|
1958
|
-
handle: e.tag
|
|
1959
|
-
}) })
|
|
1960
|
-
]
|
|
1961
|
-
})]
|
|
1962
|
-
}, `d-${t}`))]
|
|
1963
|
-
}),
|
|
1964
|
-
i.length > 0 && /* @__PURE__ */ b("div", {
|
|
1965
|
-
className: "mb-2",
|
|
1966
|
-
children: [/* @__PURE__ */ y("div", {
|
|
1967
|
-
className: "text-foreground-subtle uppercase text-[9px] tracking-wider mb-1",
|
|
1968
|
-
children: "Audio subscribers"
|
|
1969
|
-
}), i.map((e, t) => /* @__PURE__ */ b("div", {
|
|
1970
|
-
className: "flex items-center justify-between gap-2 py-0.5",
|
|
1971
|
-
children: [/* @__PURE__ */ y("span", {
|
|
1972
|
-
className: "text-foreground font-medium truncate",
|
|
1973
|
-
children: e.tag || "unknown"
|
|
1974
|
-
}), /* @__PURE__ */ b("span", {
|
|
1975
|
-
className: "text-foreground-subtle text-[9px] flex items-center gap-1.5 shrink-0",
|
|
1976
|
-
children: [
|
|
1977
|
-
/* @__PURE__ */ b("span", { children: [e.chunksDelivered, " chunks"] }),
|
|
1978
|
-
/* @__PURE__ */ y("span", { children: "·" }),
|
|
1979
|
-
/* @__PURE__ */ y("span", { children: Z(Date.now() - e.subscribedAt) }),
|
|
1980
|
-
n && e.tag && /* @__PURE__ */ y($, { onClick: () => n({
|
|
1981
|
-
channel: "audio",
|
|
1982
|
-
handle: e.tag
|
|
1983
|
-
}) })
|
|
1984
|
-
]
|
|
1985
|
-
})]
|
|
1986
|
-
}, `a-${t}`))]
|
|
1987
|
-
}),
|
|
1988
|
-
a > 0 && /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("div", {
|
|
1882
|
+
return a ? /* @__PURE__ */ y(Pe, {
|
|
1883
|
+
trigger: o,
|
|
1884
|
+
content: /* @__PURE__ */ b(x, { children: [r.length > 0 && /* @__PURE__ */ b("div", {
|
|
1885
|
+
className: "mb-2",
|
|
1886
|
+
children: [/* @__PURE__ */ y("div", {
|
|
1989
1887
|
className: "text-foreground-subtle uppercase text-[9px] tracking-wider mb-1",
|
|
1990
|
-
children: "
|
|
1991
|
-
}), /* @__PURE__ */ b("div", {
|
|
1992
|
-
className: "
|
|
1993
|
-
children: [
|
|
1994
|
-
|
|
1995
|
-
|
|
1888
|
+
children: "Audio subscribers"
|
|
1889
|
+
}), r.map((e, t) => /* @__PURE__ */ b("div", {
|
|
1890
|
+
className: "flex items-center justify-between gap-2 py-0.5",
|
|
1891
|
+
children: [/* @__PURE__ */ y("span", {
|
|
1892
|
+
className: "text-foreground font-medium truncate",
|
|
1893
|
+
children: e.tag || "unknown"
|
|
1894
|
+
}), /* @__PURE__ */ b("span", {
|
|
1895
|
+
className: "text-foreground-subtle text-[9px] flex items-center gap-1.5 shrink-0",
|
|
1896
|
+
children: [
|
|
1897
|
+
/* @__PURE__ */ b("span", { children: [e.chunksDelivered, " chunks"] }),
|
|
1898
|
+
/* @__PURE__ */ y("span", { children: "·" }),
|
|
1899
|
+
/* @__PURE__ */ y("span", { children: Z(Date.now() - e.subscribedAt) }),
|
|
1900
|
+
n && e.tag && /* @__PURE__ */ y($, { onClick: () => n({
|
|
1901
|
+
channel: "audio",
|
|
1902
|
+
handle: e.tag
|
|
1903
|
+
}) })
|
|
1904
|
+
]
|
|
1905
|
+
})]
|
|
1906
|
+
}, `a-${t}`))]
|
|
1907
|
+
}), i > 0 && /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("div", {
|
|
1908
|
+
className: "text-foreground-subtle uppercase text-[9px] tracking-wider mb-1",
|
|
1909
|
+
children: "Encoded"
|
|
1910
|
+
}), /* @__PURE__ */ b("div", {
|
|
1911
|
+
className: "text-foreground",
|
|
1912
|
+
children: [i, " callback subscriber(s)"]
|
|
1913
|
+
})] })] }),
|
|
1996
1914
|
widthClass: "min-w-[260px] max-w-[360px]"
|
|
1997
|
-
}) :
|
|
1915
|
+
}) : o;
|
|
1998
1916
|
}
|
|
1999
1917
|
function Re({ enabled: e, known: t, onToggle: n, disabled: r }) {
|
|
2000
1918
|
return /* @__PURE__ */ y("button", {
|
|
@@ -3,7 +3,7 @@ import "./dist-CYZr2fwk.mjs";
|
|
|
3
3
|
var e = {
|
|
4
4
|
"@camstack/sdk": {
|
|
5
5
|
name: "@camstack/sdk",
|
|
6
|
-
version: "1.2.
|
|
6
|
+
version: "1.2.125",
|
|
7
7
|
scope: ["default"],
|
|
8
8
|
loaded: !1,
|
|
9
9
|
from: "addon_stream_broker_widgets",
|
|
@@ -18,7 +18,7 @@ var e = {
|
|
|
18
18
|
},
|
|
19
19
|
"@camstack/types": {
|
|
20
20
|
name: "@camstack/types",
|
|
21
|
-
version: "1.2.
|
|
21
|
+
version: "1.2.323",
|
|
22
22
|
scope: ["default"],
|
|
23
23
|
loaded: !1,
|
|
24
24
|
from: "addon_stream_broker_widgets",
|
|
@@ -33,7 +33,7 @@ var e = {
|
|
|
33
33
|
},
|
|
34
34
|
"@camstack/ui-library": {
|
|
35
35
|
name: "@camstack/ui-library",
|
|
36
|
-
version: "1.2.
|
|
36
|
+
version: "1.2.247",
|
|
37
37
|
scope: ["default"],
|
|
38
38
|
loaded: !1,
|
|
39
39
|
from: "addon_stream_broker_widgets",
|