camstack 1.2.39 → 1.2.40
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.
|
@@ -14522,7 +14522,7 @@ function date4(params) {
|
|
|
14522
14522
|
// ../../node_modules/zod/v4/classic/external.js
|
|
14523
14523
|
config(en_default());
|
|
14524
14524
|
|
|
14525
|
-
// ../types/dist/sleep-
|
|
14525
|
+
// ../types/dist/sleep-Cs9MWLcT.mjs
|
|
14526
14526
|
var WELL_KNOWN_TABS = [
|
|
14527
14527
|
{
|
|
14528
14528
|
id: "overview",
|
|
@@ -15989,6 +15989,13 @@ var ModelVariantGroupSchema = external_exports.object({
|
|
|
15989
15989
|
*/
|
|
15990
15990
|
resolution: external_exports.number().int().positive().optional()
|
|
15991
15991
|
});
|
|
15992
|
+
var MODEL_PROVIDER_IDS = [
|
|
15993
|
+
"camstack",
|
|
15994
|
+
"frigate",
|
|
15995
|
+
"scrypted",
|
|
15996
|
+
"custom"
|
|
15997
|
+
];
|
|
15998
|
+
var ModelProviderIdSchema = external_exports.enum(MODEL_PROVIDER_IDS);
|
|
15992
15999
|
var ModelCatalogEntrySchema = external_exports.object({
|
|
15993
16000
|
id: external_exports.string(),
|
|
15994
16001
|
name: external_exports.string(),
|
|
@@ -16086,6 +16093,12 @@ var ModelCatalogEntrySchema = external_exports.object({
|
|
|
16086
16093
|
*/
|
|
16087
16094
|
group: ModelVariantGroupSchema.optional(),
|
|
16088
16095
|
/**
|
|
16096
|
+
* Catalog source for the pipeline stepper's provider-first picker. Absent on
|
|
16097
|
+
* built-in CamStack entries (treated as `camstack`) and on registry rows
|
|
16098
|
+
* persisted before this field existed (`inferModelProvider` fills those).
|
|
16099
|
+
*/
|
|
16100
|
+
provider: ModelProviderIdSchema.optional(),
|
|
16101
|
+
/**
|
|
16089
16102
|
* Per-MODEL class map override. Absent ⇒ the step's `StepDefinition.classMap`
|
|
16090
16103
|
* applies (Frigate / COCO public catalog). Set on a custom model whose raw
|
|
16091
16104
|
* labels already ARE the CamStack macros (Scrypted identity map).
|
|
@@ -22757,14 +22770,22 @@ var NcOccupancyConditionSchema = external_exports.object({
|
|
|
22757
22770
|
sustainSeconds: external_exports.number().int().min(0).max(3600).default(15)
|
|
22758
22771
|
});
|
|
22759
22772
|
var NcAudioConditionSchema = external_exports.object({
|
|
22760
|
-
/** LABEL MODE: audio macro labels. Present ⇒
|
|
22773
|
+
/** LABEL MODE: audio macro labels. Present ⇒ count-in-window confirm. */
|
|
22761
22774
|
labels: external_exports.array(external_exports.string().min(1)).min(1).optional(),
|
|
22762
22775
|
/** LEVEL MODE: floor in dBFS (negative-going, `0` = full scale). */
|
|
22763
22776
|
dbThreshold: external_exports.number().min(-96).max(0).optional(),
|
|
22764
22777
|
/** LEVEL MODE ONLY: percentage of the window's samples that must be hits (1–100). */
|
|
22765
22778
|
hitPercent: external_exports.number().int().min(1).max(100).default(60),
|
|
22766
22779
|
/** LEVEL MODE ONLY: length of the sampling window in seconds. */
|
|
22767
|
-
samplingSeconds: external_exports.number().int().min(1).max(300).default(10)
|
|
22780
|
+
samplingSeconds: external_exports.number().int().min(1).max(300).default(10),
|
|
22781
|
+
/**
|
|
22782
|
+
* LABEL MODE: how many labelled frames must land inside
|
|
22783
|
+
* {@link NcAudioConditionSchema.shape.confirmWindowSec} before dispatch.
|
|
22784
|
+
* Absent ⇒ 2 (the matcher default). `1` is first-frame fire.
|
|
22785
|
+
*/
|
|
22786
|
+
confirmHits: external_exports.number().int().min(1).max(20).optional(),
|
|
22787
|
+
/** LABEL MODE: the window those frames must share, in seconds. Absent ⇒ 5. */
|
|
22788
|
+
confirmWindowSec: external_exports.number().int().min(1).max(60).optional()
|
|
22768
22789
|
});
|
|
22769
22790
|
var NcCrossingSchema = external_exports.enum([
|
|
22770
22791
|
"enter",
|
|
@@ -24582,6 +24603,46 @@ var RecentTracksPageSchema = external_exports.object({
|
|
|
24582
24603
|
/** Cursor for the next page, or null when this page is the last. */
|
|
24583
24604
|
nextCursor: external_exports.string().nullable()
|
|
24584
24605
|
});
|
|
24606
|
+
var LIST_GROUPS_DEFAULT_LIMIT = 40;
|
|
24607
|
+
var LIST_GROUPS_MAX_LIMIT = 100;
|
|
24608
|
+
var AnalyticsGroupRecordSchema = external_exports.object({
|
|
24609
|
+
id: external_exports.string(),
|
|
24610
|
+
deviceId: external_exports.number().int(),
|
|
24611
|
+
openedAt: external_exports.number().int(),
|
|
24612
|
+
closedAt: external_exports.number().int(),
|
|
24613
|
+
timestamp: external_exports.number().int(),
|
|
24614
|
+
memberCount: external_exports.number().int(),
|
|
24615
|
+
memberTrackIds: external_exports.array(external_exports.string()).readonly(),
|
|
24616
|
+
className: external_exports.string(),
|
|
24617
|
+
classes: external_exports.array(external_exports.string()).readonly(),
|
|
24618
|
+
/** Relative event-media path, or null when the group has no picture yet. */
|
|
24619
|
+
mediaUrl: external_exports.string().nullable(),
|
|
24620
|
+
singleton: external_exports.boolean()
|
|
24621
|
+
});
|
|
24622
|
+
var AnalyticsGroupMemberSchema = external_exports.object({
|
|
24623
|
+
trackId: external_exports.string(),
|
|
24624
|
+
deviceId: external_exports.number().int(),
|
|
24625
|
+
className: external_exports.string(),
|
|
24626
|
+
firstSeen: external_exports.number().int(),
|
|
24627
|
+
lastSeen: external_exports.number().int(),
|
|
24628
|
+
mediaUrl: external_exports.string().nullable()
|
|
24629
|
+
});
|
|
24630
|
+
var AnalyticsGroupDetailSchema = AnalyticsGroupRecordSchema.extend({ members: external_exports.array(AnalyticsGroupMemberSchema).readonly() });
|
|
24631
|
+
var ListGroupsQueryInput = external_exports.object({
|
|
24632
|
+
/** Devices to merge. An empty array yields `{ groups: [], nextCursor: null }`. */
|
|
24633
|
+
deviceIds: external_exports.array(external_exports.number()),
|
|
24634
|
+
/** Window lower bound on `closedAt` (inclusive). */
|
|
24635
|
+
since: external_exports.number().optional(),
|
|
24636
|
+
/** Window upper bound on `openedAt` (inclusive). */
|
|
24637
|
+
until: external_exports.number().optional(),
|
|
24638
|
+
limit: external_exports.number().int().min(1).max(LIST_GROUPS_MAX_LIMIT).default(LIST_GROUPS_DEFAULT_LIMIT),
|
|
24639
|
+
/** Opaque continuation cursor from a previous page's `nextCursor`. */
|
|
24640
|
+
cursor: external_exports.string().optional()
|
|
24641
|
+
});
|
|
24642
|
+
var ListGroupsPageSchema = external_exports.object({
|
|
24643
|
+
groups: external_exports.array(AnalyticsGroupRecordSchema).readonly(),
|
|
24644
|
+
nextCursor: external_exports.string().nullable()
|
|
24645
|
+
});
|
|
24585
24646
|
var KeyEventQueryInput = external_exports.object({
|
|
24586
24647
|
deviceId: external_exports.number(),
|
|
24587
24648
|
/** Window lower bound (track firstSeen ≥ since). */
|
|
@@ -24657,7 +24718,9 @@ var TrackCascadeCountsSchema = external_exports.object({
|
|
|
24657
24718
|
/** Unassigned plate reads removed (best-effort; plate leg deferred to plate-intelligence). */
|
|
24658
24719
|
plates: external_exports.number().int(),
|
|
24659
24720
|
/** Per-track CLIP search vectors removed (best-effort). */
|
|
24660
|
-
embeddings: external_exports.number().int()
|
|
24721
|
+
embeddings: external_exports.number().int(),
|
|
24722
|
+
/** Group membership + group rows removed with their last member (best-effort). */
|
|
24723
|
+
groups: external_exports.number().int()
|
|
24661
24724
|
});
|
|
24662
24725
|
var DiskReconcileCountsSchema = external_exports.object({
|
|
24663
24726
|
mediaDropped: external_exports.number().int(),
|
|
@@ -24799,6 +24862,16 @@ var pipelineAnalyticsCapability = {
|
|
|
24799
24862
|
* are not included (same contract as `listTracks`).
|
|
24800
24863
|
*/
|
|
24801
24864
|
listRecentTracks: method(RecentTracksQueryInput, RecentTracksPageSchema),
|
|
24865
|
+
/**
|
|
24866
|
+
* Batched co-moving group listing — the Groups feed. Same merge/cursor
|
|
24867
|
+
* contract as {@link listRecentTracks}. A group is a sealed partition of
|
|
24868
|
+
* one session; `getGroup` is the detail with members.
|
|
24869
|
+
*/
|
|
24870
|
+
listGroups: method(ListGroupsQueryInput, ListGroupsPageSchema),
|
|
24871
|
+
getGroup: method(external_exports.object({
|
|
24872
|
+
deviceId: external_exports.number(),
|
|
24873
|
+
groupId: external_exports.string().min(1)
|
|
24874
|
+
}), AnalyticsGroupDetailSchema.nullable()),
|
|
24802
24875
|
clearTracks: method(external_exports.object({ deviceId: external_exports.number() }), external_exports.void(), {
|
|
24803
24876
|
kind: "mutation",
|
|
24804
24877
|
auth: "admin"
|
|
@@ -25480,7 +25553,8 @@ var PipelineModelOptionSchema = external_exports.object({
|
|
|
25480
25553
|
sizeMB: external_exports.number()
|
|
25481
25554
|
})),
|
|
25482
25555
|
group: ModelVariantGroupSchema.optional(),
|
|
25483
|
-
legacy: external_exports.boolean().optional()
|
|
25556
|
+
legacy: external_exports.boolean().optional(),
|
|
25557
|
+
provider: ModelProviderIdSchema.optional()
|
|
25484
25558
|
});
|
|
25485
25559
|
var ConfigFieldBridge = external_exports.custom();
|
|
25486
25560
|
var PipelineAddonSchemaSchema = external_exports.object({
|
|
@@ -33934,7 +34008,12 @@ var PlateInfoSchema = external_exports.object({
|
|
|
33934
34008
|
plateBbox: BoundingBoxSchema.optional(),
|
|
33935
34009
|
/** keyFrame parity: MediaStore key of the track's native-resolution key frame. */
|
|
33936
34010
|
keyFrameMediaKey: external_exports.string().optional(),
|
|
33937
|
-
base64: external_exports.string().optional()
|
|
34011
|
+
base64: external_exports.string().optional(),
|
|
34012
|
+
/**
|
|
34013
|
+
* Same crop as a data-plane URL. `getPlateByTrack` returns this and
|
|
34014
|
+
* never inlines JPEG; `listPlates` still inlines for the admin-ui.
|
|
34015
|
+
*/
|
|
34016
|
+
cropUrl: external_exports.string().optional()
|
|
33938
34017
|
});
|
|
33939
34018
|
var MediaFileLiteSchema = external_exports.object({
|
|
33940
34019
|
key: external_exports.string(),
|
|
@@ -39963,6 +40042,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
39963
40042
|
addonId: null,
|
|
39964
40043
|
access: "view"
|
|
39965
40044
|
},
|
|
40045
|
+
"pipelineAnalytics.getGroup": {
|
|
40046
|
+
capName: "pipeline-analytics",
|
|
40047
|
+
capScope: "device",
|
|
40048
|
+
addonId: null,
|
|
40049
|
+
access: "view"
|
|
40050
|
+
},
|
|
39966
40051
|
"pipelineAnalytics.getKeyEvents": {
|
|
39967
40052
|
capName: "pipeline-analytics",
|
|
39968
40053
|
capScope: "device",
|
|
@@ -40047,6 +40132,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
40047
40132
|
addonId: null,
|
|
40048
40133
|
access: "view"
|
|
40049
40134
|
},
|
|
40135
|
+
"pipelineAnalytics.listGroups": {
|
|
40136
|
+
capName: "pipeline-analytics",
|
|
40137
|
+
capScope: "device",
|
|
40138
|
+
addonId: null,
|
|
40139
|
+
access: "view"
|
|
40140
|
+
},
|
|
40050
40141
|
"pipelineAnalytics.listOpsLog": {
|
|
40051
40142
|
capName: "pipeline-analytics",
|
|
40052
40143
|
capScope: "device",
|
|
@@ -43466,6 +43557,11 @@ var METHOD_DEVICE_SELECTORS = Object.freeze({
|
|
|
43466
43557
|
form: "single",
|
|
43467
43558
|
optional: false
|
|
43468
43559
|
}],
|
|
43560
|
+
"pipelineAnalytics.getGroup": [{
|
|
43561
|
+
name: "deviceId",
|
|
43562
|
+
form: "single",
|
|
43563
|
+
optional: false
|
|
43564
|
+
}],
|
|
43469
43565
|
"pipelineAnalytics.getKeyEvents": [{
|
|
43470
43566
|
name: "deviceId",
|
|
43471
43567
|
form: "single",
|
|
@@ -43521,6 +43617,11 @@ var METHOD_DEVICE_SELECTORS = Object.freeze({
|
|
|
43521
43617
|
form: "array",
|
|
43522
43618
|
optional: false
|
|
43523
43619
|
}],
|
|
43620
|
+
"pipelineAnalytics.listGroups": [{
|
|
43621
|
+
name: "deviceIds",
|
|
43622
|
+
form: "array",
|
|
43623
|
+
optional: false
|
|
43624
|
+
}],
|
|
43524
43625
|
"pipelineAnalytics.listOpsLog": [{
|
|
43525
43626
|
name: "deviceId",
|
|
43526
43627
|
form: "single",
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
runDiscover
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-QYPK2MRI.js";
|
|
5
5
|
import "./chunk-LMMQX4CK.js";
|
|
6
6
|
|
|
7
7
|
// src/cli.ts
|
|
@@ -38,7 +38,7 @@ async function runServe(args) {
|
|
|
38
38
|
...typeof values.data === "string" ? { data: values.data } : {}
|
|
39
39
|
};
|
|
40
40
|
Object.assign(process.env, buildServeEnv(opts));
|
|
41
|
-
await import("./launcher-
|
|
41
|
+
await import("./launcher-WS2IUVTL.js");
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
// src/commands/agent.ts
|
|
@@ -83,7 +83,7 @@ async function runAgent(args) {
|
|
|
83
83
|
...typeof values.port === "string" ? { port: values.port } : {}
|
|
84
84
|
};
|
|
85
85
|
Object.assign(process.env, buildAgentEnv(opts));
|
|
86
|
-
await import("./launcher-
|
|
86
|
+
await import("./launcher-WS2IUVTL.js");
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
// src/commands/setup.ts
|
|
@@ -1130,7 +1130,7 @@ function isUnknown(_value) {
|
|
|
1130
1130
|
return true;
|
|
1131
1131
|
}
|
|
1132
1132
|
async function resolveServerInteractive(presetNamespace) {
|
|
1133
|
-
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-
|
|
1133
|
+
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-HFSH57RG.js");
|
|
1134
1134
|
if (presetNamespace) {
|
|
1135
1135
|
const spinner4 = clack.spinner();
|
|
1136
1136
|
spinner4.start(`Discovering hub on LAN (namespace "${presetNamespace}")`);
|