camstack 1.2.15 → 1.2.16
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/chunk-LMMQX4CK.js +49 -0
- package/dist/{chunk-EA6763XQ.js → chunk-O5WJH4RV.js} +312 -135
- package/dist/chunk-RA674VWL.js +2785 -0
- package/dist/cli.js +27 -13
- package/dist/{discover-UMBUCPOL.js → discover-XMMUBDEM.js} +2 -2
- package/dist/{discover-addons-MHWUAAMX.js → discover-addons-3N32LTH7.js} +1 -1
- package/dist/dist-RV3V7TEU.js +902 -0
- package/dist/launcher-QKPDMXLY.js +382860 -0
- package/dist/main-IM5JIKX5.js +2302 -0
- package/package.json +1 -1
- package/dist/chunk-K3NQKI34.js +0 -10
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
9
|
+
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
10
|
+
}) : x)(function(x) {
|
|
11
|
+
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
12
|
+
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
13
|
+
});
|
|
14
|
+
var __esm = (fn, res) => function __init() {
|
|
15
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
16
|
+
};
|
|
17
|
+
var __commonJS = (cb, mod) => function __require2() {
|
|
18
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
19
|
+
};
|
|
20
|
+
var __export = (target, all) => {
|
|
21
|
+
for (var name in all)
|
|
22
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
23
|
+
};
|
|
24
|
+
var __copyProps = (to, from, except, desc) => {
|
|
25
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
26
|
+
for (let key of __getOwnPropNames(from))
|
|
27
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
28
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
29
|
+
}
|
|
30
|
+
return to;
|
|
31
|
+
};
|
|
32
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
33
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
34
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
35
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
36
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
37
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
38
|
+
mod
|
|
39
|
+
));
|
|
40
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
41
|
+
|
|
42
|
+
export {
|
|
43
|
+
__require,
|
|
44
|
+
__esm,
|
|
45
|
+
__commonJS,
|
|
46
|
+
__export,
|
|
47
|
+
__toESM,
|
|
48
|
+
__toCommonJS
|
|
49
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
__export
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-LMMQX4CK.js";
|
|
5
5
|
|
|
6
6
|
// src/commands/discover.ts
|
|
7
7
|
import * as dgram from "dgram";
|
|
@@ -15555,14 +15555,7 @@ var RecordingConfigSchema = external_exports.object({
|
|
|
15555
15555
|
* windows only — existing sheets are immutable, and each window's index
|
|
15556
15556
|
* carries its own tile dims so mixed-preset history renders correctly.
|
|
15557
15557
|
*/
|
|
15558
|
-
scrubThumbnails: ScrubThumbnailPresetSchema.optional()
|
|
15559
|
-
/**
|
|
15560
|
-
* OPT-IN thumbnail-strip generation for this camera: every keyframe of the
|
|
15561
|
-
* low recording saved as a JPEG (the fast-drag scrub depth), a derived
|
|
15562
|
-
* cache that eviction reclaims with the footage. Absent/false = no strips
|
|
15563
|
-
* are written and scrub reads exact keyframes at every velocity.
|
|
15564
|
-
*/
|
|
15565
|
-
stripsEnabled: external_exports.boolean().optional()
|
|
15558
|
+
scrubThumbnails: ScrubThumbnailPresetSchema.optional()
|
|
15566
15559
|
}).strict();
|
|
15567
15560
|
var OpsLogDomainSchema = external_exports.enum(["recording", "events"]);
|
|
15568
15561
|
var OpsLogOpSchema = external_exports.enum([
|
|
@@ -15620,7 +15613,7 @@ var RelocateJobSchema = external_exports.object({
|
|
|
15620
15613
|
toLocationId: external_exports.string(),
|
|
15621
15614
|
/** Scoped device, or null = every device. */
|
|
15622
15615
|
deviceId: external_exports.number().nullable(),
|
|
15623
|
-
/** What the job moves (owner-addon specific: segments
|
|
15616
|
+
/** What the job moves (owner-addon specific: segments or media). */
|
|
15624
15617
|
entities: external_exports.array(external_exports.string()),
|
|
15625
15618
|
filesMoved: external_exports.number().int(),
|
|
15626
15619
|
bytesMoved: external_exports.number().int(),
|
|
@@ -15634,7 +15627,7 @@ var RelocateFootageInputSchema = external_exports.object({
|
|
|
15634
15627
|
deviceId: external_exports.number().optional(),
|
|
15635
15628
|
fromLocationId: external_exports.string(),
|
|
15636
15629
|
toLocationId: external_exports.string(),
|
|
15637
|
-
entities: external_exports.array(external_exports.enum(["segments"
|
|
15630
|
+
entities: external_exports.array(external_exports.enum(["segments"])).optional(),
|
|
15638
15631
|
/** Copy throttle in MB/s (default 40) — the drain is a background chore,
|
|
15639
15632
|
* never allowed to starve live writers. */
|
|
15640
15633
|
throttleMbps: external_exports.number().min(1).max(1e3).optional()
|
|
@@ -24493,6 +24486,218 @@ var decoderCapability = {
|
|
|
24493
24486
|
})
|
|
24494
24487
|
}
|
|
24495
24488
|
};
|
|
24489
|
+
var QueryFilterSchema = external_exports.object({
|
|
24490
|
+
where: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
24491
|
+
whereIn: external_exports.record(external_exports.string(), external_exports.array(external_exports.unknown())).optional(),
|
|
24492
|
+
whereBetween: external_exports.record(external_exports.string(), external_exports.tuple([external_exports.unknown(), external_exports.unknown()])).optional(),
|
|
24493
|
+
orderBy: external_exports.object({
|
|
24494
|
+
field: external_exports.string(),
|
|
24495
|
+
direction: external_exports.enum(["asc", "desc"])
|
|
24496
|
+
}).optional(),
|
|
24497
|
+
limit: external_exports.number().optional(),
|
|
24498
|
+
offset: external_exports.number().optional()
|
|
24499
|
+
});
|
|
24500
|
+
var SettingsRecordSchema = external_exports.object({
|
|
24501
|
+
id: external_exports.string(),
|
|
24502
|
+
data: external_exports.record(external_exports.string(), external_exports.unknown())
|
|
24503
|
+
});
|
|
24504
|
+
var CollectionColumnSchema = external_exports.object({
|
|
24505
|
+
name: external_exports.string(),
|
|
24506
|
+
type: external_exports.enum([
|
|
24507
|
+
"TEXT",
|
|
24508
|
+
"INTEGER",
|
|
24509
|
+
"REAL",
|
|
24510
|
+
"JSON",
|
|
24511
|
+
"BOOLEAN"
|
|
24512
|
+
]),
|
|
24513
|
+
primaryKey: external_exports.boolean().optional(),
|
|
24514
|
+
notNull: external_exports.boolean().optional(),
|
|
24515
|
+
unique: external_exports.boolean().optional()
|
|
24516
|
+
});
|
|
24517
|
+
var CollectionIndexSchema = external_exports.object({
|
|
24518
|
+
name: external_exports.string(),
|
|
24519
|
+
columns: external_exports.array(external_exports.string()).readonly(),
|
|
24520
|
+
unique: external_exports.boolean().optional()
|
|
24521
|
+
});
|
|
24522
|
+
var settingsStoreCapability = {
|
|
24523
|
+
name: "settings-store",
|
|
24524
|
+
scope: "system",
|
|
24525
|
+
mode: "singleton",
|
|
24526
|
+
methods: {
|
|
24527
|
+
/** Get a single value by key from a collection. */
|
|
24528
|
+
get: method(external_exports.object({
|
|
24529
|
+
namespace: external_exports.string().optional(),
|
|
24530
|
+
collection: external_exports.string(),
|
|
24531
|
+
key: external_exports.string()
|
|
24532
|
+
}), external_exports.unknown()),
|
|
24533
|
+
/** Set a value by key in a collection (upsert). */
|
|
24534
|
+
set: method(external_exports.object({
|
|
24535
|
+
namespace: external_exports.string().optional(),
|
|
24536
|
+
collection: external_exports.string(),
|
|
24537
|
+
key: external_exports.string(),
|
|
24538
|
+
value: external_exports.unknown()
|
|
24539
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24540
|
+
/** Get all entries matching an optional filter. */
|
|
24541
|
+
query: method(external_exports.object({
|
|
24542
|
+
namespace: external_exports.string().optional(),
|
|
24543
|
+
collection: external_exports.string(),
|
|
24544
|
+
filter: QueryFilterSchema.optional()
|
|
24545
|
+
}), external_exports.array(SettingsRecordSchema).readonly()),
|
|
24546
|
+
/** Insert a new record. */
|
|
24547
|
+
insert: method(external_exports.object({
|
|
24548
|
+
namespace: external_exports.string().optional(),
|
|
24549
|
+
collection: external_exports.string(),
|
|
24550
|
+
record: SettingsRecordSchema
|
|
24551
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24552
|
+
/** Update an existing record by ID. */
|
|
24553
|
+
update: method(external_exports.object({
|
|
24554
|
+
namespace: external_exports.string().optional(),
|
|
24555
|
+
collection: external_exports.string(),
|
|
24556
|
+
id: external_exports.string(),
|
|
24557
|
+
data: external_exports.record(external_exports.string(), external_exports.unknown())
|
|
24558
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24559
|
+
/** Delete a record by key/ID. */
|
|
24560
|
+
delete: method(external_exports.object({
|
|
24561
|
+
namespace: external_exports.string().optional(),
|
|
24562
|
+
collection: external_exports.string(),
|
|
24563
|
+
key: external_exports.string()
|
|
24564
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24565
|
+
/** Count entries in a collection, optionally filtered. */
|
|
24566
|
+
count: method(external_exports.object({
|
|
24567
|
+
namespace: external_exports.string().optional(),
|
|
24568
|
+
collection: external_exports.string(),
|
|
24569
|
+
filter: QueryFilterSchema.optional()
|
|
24570
|
+
}), external_exports.number()),
|
|
24571
|
+
/** Grouped counts per ((field-origin)/bucketSize) bucket, filtered. */
|
|
24572
|
+
histogram: method(external_exports.object({
|
|
24573
|
+
namespace: external_exports.string().optional(),
|
|
24574
|
+
collection: external_exports.string(),
|
|
24575
|
+
field: external_exports.string(),
|
|
24576
|
+
bucketSize: external_exports.number().int().positive(),
|
|
24577
|
+
origin: external_exports.number().int(),
|
|
24578
|
+
filter: QueryFilterSchema.optional()
|
|
24579
|
+
}), external_exports.array(external_exports.object({
|
|
24580
|
+
bucket: external_exports.number().int(),
|
|
24581
|
+
count: external_exports.number().int()
|
|
24582
|
+
})).readonly()),
|
|
24583
|
+
/** Check if a collection is empty. */
|
|
24584
|
+
isEmpty: method(external_exports.object({
|
|
24585
|
+
namespace: external_exports.string().optional(),
|
|
24586
|
+
collection: external_exports.string()
|
|
24587
|
+
}), external_exports.boolean()),
|
|
24588
|
+
/**
|
|
24589
|
+
* Declare a typed (SQL-backed) collection with explicit columns +
|
|
24590
|
+
* indexes. Idempotent: re-declaring an existing collection with the
|
|
24591
|
+
* same shape is a no-op; shape changes (new columns, new indexes)
|
|
24592
|
+
* are applied additively. Subsequent `insert` / `update` / `delete`
|
|
24593
|
+
* / `query` calls on this collection use typed columns instead of
|
|
24594
|
+
* JSON-blob storage — `record.data` fields are spread across
|
|
24595
|
+
* columns, `query.filter.where` matches real columns (no
|
|
24596
|
+
* `json_extract` overhead), `orderBy` uses column indexes.
|
|
24597
|
+
*
|
|
24598
|
+
* Addons call this in `onInitialize` before their first read/write.
|
|
24599
|
+
* Collection names should be namespaced by addon (e.g.
|
|
24600
|
+
* `pipeline-analytics:object-events`) to avoid cross-addon
|
|
24601
|
+
* clashes — no automatic prefix is added.
|
|
24602
|
+
*/
|
|
24603
|
+
declareCollection: method(external_exports.object({
|
|
24604
|
+
namespace: external_exports.string().optional(),
|
|
24605
|
+
collection: external_exports.string(),
|
|
24606
|
+
columns: external_exports.array(CollectionColumnSchema).readonly(),
|
|
24607
|
+
indexes: external_exports.array(CollectionIndexSchema).readonly().optional()
|
|
24608
|
+
}), external_exports.void(), { kind: "mutation" })
|
|
24609
|
+
}
|
|
24610
|
+
};
|
|
24611
|
+
var EngineInfoSchema = external_exports.object({
|
|
24612
|
+
engineId: external_exports.string(),
|
|
24613
|
+
/**
|
|
24614
|
+
* `relational` — rows, columns, indexes, the surface `settings-store`
|
|
24615
|
+
* has always described. `vector` — an embedding store answering
|
|
24616
|
+
* similarity queries. A registrant declares exactly one; an engine that
|
|
24617
|
+
* does both registers twice, because "both" would make the routing
|
|
24618
|
+
* decision ambiguous at exactly the point it must not be.
|
|
24619
|
+
*/
|
|
24620
|
+
kind: external_exports.enum(["relational", "vector"]),
|
|
24621
|
+
displayName: external_exports.string()
|
|
24622
|
+
});
|
|
24623
|
+
var dataStoreProviderCapability = {
|
|
24624
|
+
name: "data-store-provider",
|
|
24625
|
+
scope: "system",
|
|
24626
|
+
mode: "collection",
|
|
24627
|
+
internal: true,
|
|
24628
|
+
methods: {
|
|
24629
|
+
/** Self-description — how the orchestrator picks a registrant. */
|
|
24630
|
+
getEngineInfo: method(external_exports.void(), EngineInfoSchema),
|
|
24631
|
+
/** Get a single value by key from a collection. */
|
|
24632
|
+
get: method(external_exports.object({
|
|
24633
|
+
namespace: external_exports.string().optional(),
|
|
24634
|
+
collection: external_exports.string(),
|
|
24635
|
+
key: external_exports.string()
|
|
24636
|
+
}), external_exports.unknown()),
|
|
24637
|
+
/** Set a value by key in a collection (upsert). */
|
|
24638
|
+
set: method(external_exports.object({
|
|
24639
|
+
namespace: external_exports.string().optional(),
|
|
24640
|
+
collection: external_exports.string(),
|
|
24641
|
+
key: external_exports.string(),
|
|
24642
|
+
value: external_exports.unknown()
|
|
24643
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24644
|
+
/** Get all entries matching an optional filter. */
|
|
24645
|
+
query: method(external_exports.object({
|
|
24646
|
+
namespace: external_exports.string().optional(),
|
|
24647
|
+
collection: external_exports.string(),
|
|
24648
|
+
filter: QueryFilterSchema.optional()
|
|
24649
|
+
}), external_exports.array(SettingsRecordSchema).readonly()),
|
|
24650
|
+
/** Insert a new record. */
|
|
24651
|
+
insert: method(external_exports.object({
|
|
24652
|
+
namespace: external_exports.string().optional(),
|
|
24653
|
+
collection: external_exports.string(),
|
|
24654
|
+
record: SettingsRecordSchema
|
|
24655
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24656
|
+
/** Update an existing record by ID. */
|
|
24657
|
+
update: method(external_exports.object({
|
|
24658
|
+
namespace: external_exports.string().optional(),
|
|
24659
|
+
collection: external_exports.string(),
|
|
24660
|
+
id: external_exports.string(),
|
|
24661
|
+
data: external_exports.record(external_exports.string(), external_exports.unknown())
|
|
24662
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24663
|
+
/** Delete a record by key/ID. */
|
|
24664
|
+
delete: method(external_exports.object({
|
|
24665
|
+
namespace: external_exports.string().optional(),
|
|
24666
|
+
collection: external_exports.string(),
|
|
24667
|
+
key: external_exports.string()
|
|
24668
|
+
}), external_exports.void(), { kind: "mutation" }),
|
|
24669
|
+
/** Count entries in a collection, optionally filtered. */
|
|
24670
|
+
count: method(external_exports.object({
|
|
24671
|
+
namespace: external_exports.string().optional(),
|
|
24672
|
+
collection: external_exports.string(),
|
|
24673
|
+
filter: QueryFilterSchema.optional()
|
|
24674
|
+
}), external_exports.number()),
|
|
24675
|
+
/** Grouped counts per ((field-origin)/bucketSize) bucket, filtered. */
|
|
24676
|
+
histogram: method(external_exports.object({
|
|
24677
|
+
namespace: external_exports.string().optional(),
|
|
24678
|
+
collection: external_exports.string(),
|
|
24679
|
+
field: external_exports.string(),
|
|
24680
|
+
bucketSize: external_exports.number().int().positive(),
|
|
24681
|
+
origin: external_exports.number().int(),
|
|
24682
|
+
filter: QueryFilterSchema.optional()
|
|
24683
|
+
}), external_exports.array(external_exports.object({
|
|
24684
|
+
bucket: external_exports.number().int(),
|
|
24685
|
+
count: external_exports.number().int()
|
|
24686
|
+
})).readonly()),
|
|
24687
|
+
/** Check if a collection is empty. */
|
|
24688
|
+
isEmpty: method(external_exports.object({
|
|
24689
|
+
namespace: external_exports.string().optional(),
|
|
24690
|
+
collection: external_exports.string()
|
|
24691
|
+
}), external_exports.boolean()),
|
|
24692
|
+
/** Declare a typed (SQL-backed) collection with columns + indexes. */
|
|
24693
|
+
declareCollection: method(external_exports.object({
|
|
24694
|
+
namespace: external_exports.string().optional(),
|
|
24695
|
+
collection: external_exports.string(),
|
|
24696
|
+
columns: external_exports.array(CollectionColumnSchema).readonly(),
|
|
24697
|
+
indexes: external_exports.array(CollectionIndexSchema).readonly().optional()
|
|
24698
|
+
}), external_exports.void(), { kind: "mutation" })
|
|
24699
|
+
}
|
|
24700
|
+
};
|
|
24496
24701
|
var detectionPipelineCapability = {
|
|
24497
24702
|
name: "detection-pipeline",
|
|
24498
24703
|
scope: "device",
|
|
@@ -28207,6 +28412,29 @@ var ServerUpdateStateSchema = external_exports.enum([
|
|
|
28207
28412
|
"pending-restart",
|
|
28208
28413
|
"awaiting-confirmation"
|
|
28209
28414
|
]);
|
|
28415
|
+
var ImageContractStateSchema = external_exports.enum([
|
|
28416
|
+
"in-sync",
|
|
28417
|
+
"behind-patch",
|
|
28418
|
+
"behind-series",
|
|
28419
|
+
"ahead",
|
|
28420
|
+
"unknown"
|
|
28421
|
+
]);
|
|
28422
|
+
var ImageContractSchema = external_exports.object({
|
|
28423
|
+
state: ImageContractStateSchema,
|
|
28424
|
+
/** The baked seed closure version — the image/app-bundle fingerprint. */
|
|
28425
|
+
seedVersion: external_exports.string().nullable(),
|
|
28426
|
+
/** Best-known version the deployment contract delivers today. */
|
|
28427
|
+
contractVersion: external_exports.string().nullable(),
|
|
28428
|
+
/**
|
|
28429
|
+
* Where `contractVersion` came from: a real registry check (`registry`), or
|
|
28430
|
+
* the node's own running version (`running` — a node can never run code
|
|
28431
|
+
* newer than the newest release, so `seed < running` proves image staleness
|
|
28432
|
+
* even before any registry check has run).
|
|
28433
|
+
*/
|
|
28434
|
+
contractSource: external_exports.enum(["registry", "running"]).nullable(),
|
|
28435
|
+
/** One operator-grade sentence: this node runs image X; the contract says Y. */
|
|
28436
|
+
message: external_exports.string()
|
|
28437
|
+
});
|
|
28210
28438
|
var ServerRollbackInfoSchema = external_exports.object({
|
|
28211
28439
|
/** The version that failed (or was manually rolled back). */
|
|
28212
28440
|
fromVersion: external_exports.string(),
|
|
@@ -28243,7 +28471,12 @@ var ServerPackageStatusSchema = external_exports.object({
|
|
|
28243
28471
|
* versions are being IGNORED. Surfaced as a warning in the UI.
|
|
28244
28472
|
*/
|
|
28245
28473
|
stateFileCorrupt: external_exports.boolean(),
|
|
28246
|
-
lastCheckedAtMs: external_exports.number().nullable()
|
|
28474
|
+
lastCheckedAtMs: external_exports.number().nullable(),
|
|
28475
|
+
/**
|
|
28476
|
+
* Seed-vs-contract verdict (see {@link ImageContractSchema}). Optional for
|
|
28477
|
+
* version skew: an older provider's payload simply omits it.
|
|
28478
|
+
*/
|
|
28479
|
+
imageContract: ImageContractSchema.optional()
|
|
28247
28480
|
});
|
|
28248
28481
|
var ServerUpdateCheckResultSchema = external_exports.object({
|
|
28249
28482
|
packageName: external_exports.string(),
|
|
@@ -28298,128 +28531,6 @@ var serverManagementCapability = {
|
|
|
28298
28531
|
/** BIG PLAN 2: declarative mount hint — read by `@camstack/system` `buildCapRouters`. */
|
|
28299
28532
|
mount: { kind: "server-provided" }
|
|
28300
28533
|
};
|
|
28301
|
-
var QueryFilterSchema = external_exports.object({
|
|
28302
|
-
where: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
|
|
28303
|
-
whereIn: external_exports.record(external_exports.string(), external_exports.array(external_exports.unknown())).optional(),
|
|
28304
|
-
whereBetween: external_exports.record(external_exports.string(), external_exports.tuple([external_exports.unknown(), external_exports.unknown()])).optional(),
|
|
28305
|
-
orderBy: external_exports.object({
|
|
28306
|
-
field: external_exports.string(),
|
|
28307
|
-
direction: external_exports.enum(["asc", "desc"])
|
|
28308
|
-
}).optional(),
|
|
28309
|
-
limit: external_exports.number().optional(),
|
|
28310
|
-
offset: external_exports.number().optional()
|
|
28311
|
-
});
|
|
28312
|
-
var SettingsRecordSchema = external_exports.object({
|
|
28313
|
-
id: external_exports.string(),
|
|
28314
|
-
data: external_exports.record(external_exports.string(), external_exports.unknown())
|
|
28315
|
-
});
|
|
28316
|
-
var CollectionColumnSchema = external_exports.object({
|
|
28317
|
-
name: external_exports.string(),
|
|
28318
|
-
type: external_exports.enum([
|
|
28319
|
-
"TEXT",
|
|
28320
|
-
"INTEGER",
|
|
28321
|
-
"REAL",
|
|
28322
|
-
"JSON",
|
|
28323
|
-
"BOOLEAN"
|
|
28324
|
-
]),
|
|
28325
|
-
primaryKey: external_exports.boolean().optional(),
|
|
28326
|
-
notNull: external_exports.boolean().optional(),
|
|
28327
|
-
unique: external_exports.boolean().optional()
|
|
28328
|
-
});
|
|
28329
|
-
var CollectionIndexSchema = external_exports.object({
|
|
28330
|
-
name: external_exports.string(),
|
|
28331
|
-
columns: external_exports.array(external_exports.string()).readonly(),
|
|
28332
|
-
unique: external_exports.boolean().optional()
|
|
28333
|
-
});
|
|
28334
|
-
var settingsStoreCapability = {
|
|
28335
|
-
name: "settings-store",
|
|
28336
|
-
scope: "system",
|
|
28337
|
-
mode: "singleton",
|
|
28338
|
-
methods: {
|
|
28339
|
-
/** Get a single value by key from a collection. */
|
|
28340
|
-
get: method(external_exports.object({
|
|
28341
|
-
namespace: external_exports.string().optional(),
|
|
28342
|
-
collection: external_exports.string(),
|
|
28343
|
-
key: external_exports.string()
|
|
28344
|
-
}), external_exports.unknown()),
|
|
28345
|
-
/** Set a value by key in a collection (upsert). */
|
|
28346
|
-
set: method(external_exports.object({
|
|
28347
|
-
namespace: external_exports.string().optional(),
|
|
28348
|
-
collection: external_exports.string(),
|
|
28349
|
-
key: external_exports.string(),
|
|
28350
|
-
value: external_exports.unknown()
|
|
28351
|
-
}), external_exports.void(), { kind: "mutation" }),
|
|
28352
|
-
/** Get all entries matching an optional filter. */
|
|
28353
|
-
query: method(external_exports.object({
|
|
28354
|
-
namespace: external_exports.string().optional(),
|
|
28355
|
-
collection: external_exports.string(),
|
|
28356
|
-
filter: QueryFilterSchema.optional()
|
|
28357
|
-
}), external_exports.array(SettingsRecordSchema).readonly()),
|
|
28358
|
-
/** Insert a new record. */
|
|
28359
|
-
insert: method(external_exports.object({
|
|
28360
|
-
namespace: external_exports.string().optional(),
|
|
28361
|
-
collection: external_exports.string(),
|
|
28362
|
-
record: SettingsRecordSchema
|
|
28363
|
-
}), external_exports.void(), { kind: "mutation" }),
|
|
28364
|
-
/** Update an existing record by ID. */
|
|
28365
|
-
update: method(external_exports.object({
|
|
28366
|
-
namespace: external_exports.string().optional(),
|
|
28367
|
-
collection: external_exports.string(),
|
|
28368
|
-
id: external_exports.string(),
|
|
28369
|
-
data: external_exports.record(external_exports.string(), external_exports.unknown())
|
|
28370
|
-
}), external_exports.void(), { kind: "mutation" }),
|
|
28371
|
-
/** Delete a record by key/ID. */
|
|
28372
|
-
delete: method(external_exports.object({
|
|
28373
|
-
namespace: external_exports.string().optional(),
|
|
28374
|
-
collection: external_exports.string(),
|
|
28375
|
-
key: external_exports.string()
|
|
28376
|
-
}), external_exports.void(), { kind: "mutation" }),
|
|
28377
|
-
/** Count entries in a collection, optionally filtered. */
|
|
28378
|
-
count: method(external_exports.object({
|
|
28379
|
-
namespace: external_exports.string().optional(),
|
|
28380
|
-
collection: external_exports.string(),
|
|
28381
|
-
filter: QueryFilterSchema.optional()
|
|
28382
|
-
}), external_exports.number()),
|
|
28383
|
-
/** Grouped counts per ((field-origin)/bucketSize) bucket, filtered. */
|
|
28384
|
-
histogram: method(external_exports.object({
|
|
28385
|
-
namespace: external_exports.string().optional(),
|
|
28386
|
-
collection: external_exports.string(),
|
|
28387
|
-
field: external_exports.string(),
|
|
28388
|
-
bucketSize: external_exports.number().int().positive(),
|
|
28389
|
-
origin: external_exports.number().int(),
|
|
28390
|
-
filter: QueryFilterSchema.optional()
|
|
28391
|
-
}), external_exports.array(external_exports.object({
|
|
28392
|
-
bucket: external_exports.number().int(),
|
|
28393
|
-
count: external_exports.number().int()
|
|
28394
|
-
})).readonly()),
|
|
28395
|
-
/** Check if a collection is empty. */
|
|
28396
|
-
isEmpty: method(external_exports.object({
|
|
28397
|
-
namespace: external_exports.string().optional(),
|
|
28398
|
-
collection: external_exports.string()
|
|
28399
|
-
}), external_exports.boolean()),
|
|
28400
|
-
/**
|
|
28401
|
-
* Declare a typed (SQL-backed) collection with explicit columns +
|
|
28402
|
-
* indexes. Idempotent: re-declaring an existing collection with the
|
|
28403
|
-
* same shape is a no-op; shape changes (new columns, new indexes)
|
|
28404
|
-
* are applied additively. Subsequent `insert` / `update` / `delete`
|
|
28405
|
-
* / `query` calls on this collection use typed columns instead of
|
|
28406
|
-
* JSON-blob storage — `record.data` fields are spread across
|
|
28407
|
-
* columns, `query.filter.where` matches real columns (no
|
|
28408
|
-
* `json_extract` overhead), `orderBy` uses column indexes.
|
|
28409
|
-
*
|
|
28410
|
-
* Addons call this in `onInitialize` before their first read/write.
|
|
28411
|
-
* Collection names should be namespaced by addon (e.g.
|
|
28412
|
-
* `pipeline-analytics:object-events`) to avoid cross-addon
|
|
28413
|
-
* clashes — no automatic prefix is added.
|
|
28414
|
-
*/
|
|
28415
|
-
declareCollection: method(external_exports.object({
|
|
28416
|
-
namespace: external_exports.string().optional(),
|
|
28417
|
-
collection: external_exports.string(),
|
|
28418
|
-
columns: external_exports.array(CollectionColumnSchema).readonly(),
|
|
28419
|
-
indexes: external_exports.array(CollectionIndexSchema).readonly().optional()
|
|
28420
|
-
}), external_exports.void(), { kind: "mutation" })
|
|
28421
|
-
}
|
|
28422
|
-
};
|
|
28423
28534
|
var EmailAddressSchema = external_exports.email();
|
|
28424
28535
|
var SendEmailInputSchema = external_exports.object({
|
|
28425
28536
|
to: external_exports.union([EmailAddressSchema, external_exports.array(EmailAddressSchema).min(1)]),
|
|
@@ -31584,7 +31695,7 @@ var recordingCapability = {
|
|
|
31584
31695
|
auth: "admin"
|
|
31585
31696
|
}),
|
|
31586
31697
|
/**
|
|
31587
|
-
* Move footage (segments
|
|
31698
|
+
* Move footage (recorded segments) from one recordings location to
|
|
31588
31699
|
* another — the drain workflow's mover (entity-routing spec Phase 4).
|
|
31589
31700
|
* Throttled copy → size-verify → delete source → index refresh; resumable
|
|
31590
31701
|
* by construction (copy-if-absent). Single-flight: one job at a time.
|
|
@@ -32907,6 +33018,72 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
32907
33018
|
addonId: null,
|
|
32908
33019
|
access: "view"
|
|
32909
33020
|
},
|
|
33021
|
+
"dataStoreProvider.count": {
|
|
33022
|
+
capName: "data-store-provider",
|
|
33023
|
+
capScope: "system",
|
|
33024
|
+
addonId: null,
|
|
33025
|
+
access: "view"
|
|
33026
|
+
},
|
|
33027
|
+
"dataStoreProvider.declareCollection": {
|
|
33028
|
+
capName: "data-store-provider",
|
|
33029
|
+
capScope: "system",
|
|
33030
|
+
addonId: null,
|
|
33031
|
+
access: "create"
|
|
33032
|
+
},
|
|
33033
|
+
"dataStoreProvider.delete": {
|
|
33034
|
+
capName: "data-store-provider",
|
|
33035
|
+
capScope: "system",
|
|
33036
|
+
addonId: null,
|
|
33037
|
+
access: "delete"
|
|
33038
|
+
},
|
|
33039
|
+
"dataStoreProvider.get": {
|
|
33040
|
+
capName: "data-store-provider",
|
|
33041
|
+
capScope: "system",
|
|
33042
|
+
addonId: null,
|
|
33043
|
+
access: "view"
|
|
33044
|
+
},
|
|
33045
|
+
"dataStoreProvider.getEngineInfo": {
|
|
33046
|
+
capName: "data-store-provider",
|
|
33047
|
+
capScope: "system",
|
|
33048
|
+
addonId: null,
|
|
33049
|
+
access: "view"
|
|
33050
|
+
},
|
|
33051
|
+
"dataStoreProvider.histogram": {
|
|
33052
|
+
capName: "data-store-provider",
|
|
33053
|
+
capScope: "system",
|
|
33054
|
+
addonId: null,
|
|
33055
|
+
access: "view"
|
|
33056
|
+
},
|
|
33057
|
+
"dataStoreProvider.insert": {
|
|
33058
|
+
capName: "data-store-provider",
|
|
33059
|
+
capScope: "system",
|
|
33060
|
+
addonId: null,
|
|
33061
|
+
access: "create"
|
|
33062
|
+
},
|
|
33063
|
+
"dataStoreProvider.isEmpty": {
|
|
33064
|
+
capName: "data-store-provider",
|
|
33065
|
+
capScope: "system",
|
|
33066
|
+
addonId: null,
|
|
33067
|
+
access: "view"
|
|
33068
|
+
},
|
|
33069
|
+
"dataStoreProvider.query": {
|
|
33070
|
+
capName: "data-store-provider",
|
|
33071
|
+
capScope: "system",
|
|
33072
|
+
addonId: null,
|
|
33073
|
+
access: "view"
|
|
33074
|
+
},
|
|
33075
|
+
"dataStoreProvider.set": {
|
|
33076
|
+
capName: "data-store-provider",
|
|
33077
|
+
capScope: "system",
|
|
33078
|
+
addonId: null,
|
|
33079
|
+
access: "create"
|
|
33080
|
+
},
|
|
33081
|
+
"dataStoreProvider.update": {
|
|
33082
|
+
capName: "data-store-provider",
|
|
33083
|
+
capScope: "system",
|
|
33084
|
+
addonId: null,
|
|
33085
|
+
access: "create"
|
|
33086
|
+
},
|
|
32910
33087
|
"dayNight.getOptions": {
|
|
32911
33088
|
capName: "day-night",
|
|
32912
33089
|
capScope: "device",
|