@camstack/addon-decoder-ffmpeg 1.1.17 → 1.1.18
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/index.js +144 -1
- package/dist/index.mjs +144 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -7345,6 +7345,62 @@ var RecordingConfigSchema = object({
|
|
|
7345
7345
|
scrubThumbnails: ScrubThumbnailPresetSchema.optional()
|
|
7346
7346
|
});
|
|
7347
7347
|
/**
|
|
7348
|
+
* Ops-log — the durable, append-only operations audit shared by the
|
|
7349
|
+
* recordings and events management surfaces.
|
|
7350
|
+
*
|
|
7351
|
+
* ONE row shape is reused for both domains so a single "Activity" view can
|
|
7352
|
+
* merge the recorder's DurableState ring (recordings ops-log) and the
|
|
7353
|
+
* pipeline-analytics SQLite collection (events ops-log). Each row records a
|
|
7354
|
+
* management operation, WHY it ran (reason), and its measurable effect
|
|
7355
|
+
* (itemsAffected + bytesReclaimed). Writes are best-effort — a failed log must
|
|
7356
|
+
* never fail the operation it records.
|
|
7357
|
+
*/
|
|
7358
|
+
/** Which management domain the operation belongs to. */
|
|
7359
|
+
var OpsLogDomainSchema = _enum(["recording", "events"]);
|
|
7360
|
+
/** The kind of management operation performed. */
|
|
7361
|
+
var OpsLogOpSchema = _enum([
|
|
7362
|
+
"prune",
|
|
7363
|
+
"manual-delete",
|
|
7364
|
+
"rescan",
|
|
7365
|
+
"retention-run"
|
|
7366
|
+
]);
|
|
7367
|
+
/** Why the operation ran. */
|
|
7368
|
+
var OpsLogReasonSchema = _enum([
|
|
7369
|
+
"retention",
|
|
7370
|
+
"quota",
|
|
7371
|
+
"manual",
|
|
7372
|
+
"operator"
|
|
7373
|
+
]);
|
|
7374
|
+
/** One audit row, shared verbatim by both domains. */
|
|
7375
|
+
var OpsLogEntrySchema = object({
|
|
7376
|
+
/** Unique row id. */
|
|
7377
|
+
id: string(),
|
|
7378
|
+
/** Epoch ms the operation completed. */
|
|
7379
|
+
at: number(),
|
|
7380
|
+
domain: OpsLogDomainSchema,
|
|
7381
|
+
op: OpsLogOpSchema,
|
|
7382
|
+
reason: OpsLogReasonSchema,
|
|
7383
|
+
/** The camera the op targeted; null for a cluster/global op. */
|
|
7384
|
+
deviceId: number().nullable(),
|
|
7385
|
+
/** Node that performed the op (the log carries nodeId — no cross-node aggregation). */
|
|
7386
|
+
nodeId: string(),
|
|
7387
|
+
/** Buckets / rows deleted (op-specific unit). */
|
|
7388
|
+
itemsAffected: number(),
|
|
7389
|
+
/** Bytes reclaimed by the op (0 when not measurable). */
|
|
7390
|
+
bytesReclaimed: number(),
|
|
7391
|
+
/** Free-text detail (e.g. "floor moved to <ts>"); null when none. */
|
|
7392
|
+
detail: string().nullable(),
|
|
7393
|
+
/** Who/what triggered the op. */
|
|
7394
|
+
actor: string()
|
|
7395
|
+
});
|
|
7396
|
+
/** Shared query input for the per-domain `listOpsLog` cap methods. */
|
|
7397
|
+
var OpsLogQueryInputSchema = object({
|
|
7398
|
+
/** Restrict to a single camera; omit for every row. */
|
|
7399
|
+
deviceId: number().optional(),
|
|
7400
|
+
/** Max rows returned, newest-first. */
|
|
7401
|
+
limit: number().int().min(1).max(1e3).optional()
|
|
7402
|
+
});
|
|
7403
|
+
/**
|
|
7348
7404
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
7349
7405
|
* storage a location serves. Defined here (not in `capabilities/storage.cap.ts`)
|
|
7350
7406
|
* so the persisted record schema and the consumer-facing cap can both consume it
|
|
@@ -16275,6 +16331,26 @@ var TrackCascadeCountsSchema = object({
|
|
|
16275
16331
|
/** Per-track CLIP search vectors removed (best-effort). */
|
|
16276
16332
|
embeddings: number().int()
|
|
16277
16333
|
});
|
|
16334
|
+
/** Event-store footprint for one camera. */
|
|
16335
|
+
var EventStoreDeviceFootprintSchema = object({
|
|
16336
|
+
deviceId: number(),
|
|
16337
|
+
/** Persisted event rows (motion + object + audio) for the camera. */
|
|
16338
|
+
rows: number().int(),
|
|
16339
|
+
/** Event-owned media bytes on disk for the camera. */
|
|
16340
|
+
bytes: number().int()
|
|
16341
|
+
});
|
|
16342
|
+
/** Aggregate event-store footprint: global totals + per-camera breakdown. */
|
|
16343
|
+
var EventStoreFootprintSchema = object({
|
|
16344
|
+
totalRows: number().int(),
|
|
16345
|
+
totalBytes: number().int(),
|
|
16346
|
+
devices: array(EventStoreDeviceFootprintSchema).readonly()
|
|
16347
|
+
});
|
|
16348
|
+
/** Per-kind counts returned by the event-prune / device-delete mutations. */
|
|
16349
|
+
var EventPruneCountsSchema = object({
|
|
16350
|
+
motion: number().int(),
|
|
16351
|
+
object: number().int(),
|
|
16352
|
+
audio: number().int()
|
|
16353
|
+
});
|
|
16278
16354
|
DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
|
|
16279
16355
|
deviceId: number(),
|
|
16280
16356
|
trackId: string()
|
|
@@ -16338,6 +16414,21 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16338
16414
|
}), {
|
|
16339
16415
|
kind: "mutation",
|
|
16340
16416
|
auth: "admin"
|
|
16417
|
+
}), method(object({}), EventStoreFootprintSchema, {
|
|
16418
|
+
kind: "query",
|
|
16419
|
+
auth: "admin"
|
|
16420
|
+
}), method(object({
|
|
16421
|
+
olderThanMs: number(),
|
|
16422
|
+
reason: OpsLogReasonSchema.optional()
|
|
16423
|
+
}), EventPruneCountsSchema, {
|
|
16424
|
+
kind: "mutation",
|
|
16425
|
+
auth: "admin"
|
|
16426
|
+
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16427
|
+
kind: "mutation",
|
|
16428
|
+
auth: "admin"
|
|
16429
|
+
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
16430
|
+
kind: "query",
|
|
16431
|
+
auth: "admin"
|
|
16341
16432
|
}), method(object({
|
|
16342
16433
|
eventId: string(),
|
|
16343
16434
|
kind: MediaFileKindEnum.optional()
|
|
@@ -19571,13 +19662,29 @@ method(object({
|
|
|
19571
19662
|
}), method(object({ deviceId: number() }), RecordingStatusSchema, {
|
|
19572
19663
|
kind: "mutation",
|
|
19573
19664
|
auth: "admin"
|
|
19574
|
-
}), method(object({
|
|
19665
|
+
}), method(object({
|
|
19666
|
+
deviceId: number(),
|
|
19667
|
+
reason: OpsLogReasonSchema.optional()
|
|
19668
|
+
}), object({
|
|
19575
19669
|
floorMs: number().nullable(),
|
|
19576
19670
|
deletedBuckets: number().int(),
|
|
19577
19671
|
reclaimedBytes: number().int()
|
|
19578
19672
|
}), {
|
|
19579
19673
|
kind: "mutation",
|
|
19580
19674
|
auth: "admin"
|
|
19675
|
+
}), method(object({
|
|
19676
|
+
deviceId: number(),
|
|
19677
|
+
fromMs: number().optional(),
|
|
19678
|
+
toMs: number().optional()
|
|
19679
|
+
}), object({
|
|
19680
|
+
deletedBuckets: number().int(),
|
|
19681
|
+
reclaimedBytes: number().int()
|
|
19682
|
+
}), {
|
|
19683
|
+
kind: "mutation",
|
|
19684
|
+
auth: "admin"
|
|
19685
|
+
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
19686
|
+
kind: "query",
|
|
19687
|
+
auth: "admin"
|
|
19581
19688
|
});
|
|
19582
19689
|
/**
|
|
19583
19690
|
* `recordingExport` cap — render a footage time range into a single downloadable
|
|
@@ -22699,6 +22806,12 @@ Object.freeze({
|
|
|
22699
22806
|
addonId: null,
|
|
22700
22807
|
access: "delete"
|
|
22701
22808
|
},
|
|
22809
|
+
"pipelineAnalytics.deleteDeviceEvents": {
|
|
22810
|
+
capName: "pipeline-analytics",
|
|
22811
|
+
capScope: "device",
|
|
22812
|
+
addonId: null,
|
|
22813
|
+
access: "delete"
|
|
22814
|
+
},
|
|
22702
22815
|
"pipelineAnalytics.deleteTracks": {
|
|
22703
22816
|
capName: "pipeline-analytics",
|
|
22704
22817
|
capScope: "device",
|
|
@@ -22729,6 +22842,12 @@ Object.freeze({
|
|
|
22729
22842
|
addonId: null,
|
|
22730
22843
|
access: "view"
|
|
22731
22844
|
},
|
|
22845
|
+
"pipelineAnalytics.getEventStoreFootprint": {
|
|
22846
|
+
capName: "pipeline-analytics",
|
|
22847
|
+
capScope: "device",
|
|
22848
|
+
addonId: null,
|
|
22849
|
+
access: "view"
|
|
22850
|
+
},
|
|
22732
22851
|
"pipelineAnalytics.getKeyEvents": {
|
|
22733
22852
|
capName: "pipeline-analytics",
|
|
22734
22853
|
capScope: "device",
|
|
@@ -22771,6 +22890,12 @@ Object.freeze({
|
|
|
22771
22890
|
addonId: null,
|
|
22772
22891
|
access: "view"
|
|
22773
22892
|
},
|
|
22893
|
+
"pipelineAnalytics.listOpsLog": {
|
|
22894
|
+
capName: "pipeline-analytics",
|
|
22895
|
+
capScope: "device",
|
|
22896
|
+
addonId: null,
|
|
22897
|
+
access: "view"
|
|
22898
|
+
},
|
|
22774
22899
|
"pipelineAnalytics.listRecentTracks": {
|
|
22775
22900
|
capName: "pipeline-analytics",
|
|
22776
22901
|
capScope: "device",
|
|
@@ -22783,6 +22908,12 @@ Object.freeze({
|
|
|
22783
22908
|
addonId: null,
|
|
22784
22909
|
access: "view"
|
|
22785
22910
|
},
|
|
22911
|
+
"pipelineAnalytics.pruneEvents": {
|
|
22912
|
+
capName: "pipeline-analytics",
|
|
22913
|
+
capScope: "device",
|
|
22914
|
+
addonId: null,
|
|
22915
|
+
access: "create"
|
|
22916
|
+
},
|
|
22786
22917
|
"pipelineAnalytics.pruneEventsBefore": {
|
|
22787
22918
|
capName: "pipeline-analytics",
|
|
22788
22919
|
capScope: "device",
|
|
@@ -23545,6 +23676,12 @@ Object.freeze({
|
|
|
23545
23676
|
addonId: null,
|
|
23546
23677
|
access: "create"
|
|
23547
23678
|
},
|
|
23679
|
+
"recording.deleteFootprint": {
|
|
23680
|
+
capName: "recording",
|
|
23681
|
+
capScope: "system",
|
|
23682
|
+
addonId: null,
|
|
23683
|
+
access: "delete"
|
|
23684
|
+
},
|
|
23548
23685
|
"recording.getAvailability": {
|
|
23549
23686
|
capName: "recording",
|
|
23550
23687
|
capScope: "system",
|
|
@@ -23575,6 +23712,12 @@ Object.freeze({
|
|
|
23575
23712
|
addonId: null,
|
|
23576
23713
|
access: "view"
|
|
23577
23714
|
},
|
|
23715
|
+
"recording.listOpsLog": {
|
|
23716
|
+
capName: "recording",
|
|
23717
|
+
capScope: "system",
|
|
23718
|
+
addonId: null,
|
|
23719
|
+
access: "view"
|
|
23720
|
+
},
|
|
23578
23721
|
"recording.locateSegment": {
|
|
23579
23722
|
capName: "recording",
|
|
23580
23723
|
capScope: "system",
|
package/dist/index.mjs
CHANGED
|
@@ -7341,6 +7341,62 @@ var RecordingConfigSchema = object({
|
|
|
7341
7341
|
scrubThumbnails: ScrubThumbnailPresetSchema.optional()
|
|
7342
7342
|
});
|
|
7343
7343
|
/**
|
|
7344
|
+
* Ops-log — the durable, append-only operations audit shared by the
|
|
7345
|
+
* recordings and events management surfaces.
|
|
7346
|
+
*
|
|
7347
|
+
* ONE row shape is reused for both domains so a single "Activity" view can
|
|
7348
|
+
* merge the recorder's DurableState ring (recordings ops-log) and the
|
|
7349
|
+
* pipeline-analytics SQLite collection (events ops-log). Each row records a
|
|
7350
|
+
* management operation, WHY it ran (reason), and its measurable effect
|
|
7351
|
+
* (itemsAffected + bytesReclaimed). Writes are best-effort — a failed log must
|
|
7352
|
+
* never fail the operation it records.
|
|
7353
|
+
*/
|
|
7354
|
+
/** Which management domain the operation belongs to. */
|
|
7355
|
+
var OpsLogDomainSchema = _enum(["recording", "events"]);
|
|
7356
|
+
/** The kind of management operation performed. */
|
|
7357
|
+
var OpsLogOpSchema = _enum([
|
|
7358
|
+
"prune",
|
|
7359
|
+
"manual-delete",
|
|
7360
|
+
"rescan",
|
|
7361
|
+
"retention-run"
|
|
7362
|
+
]);
|
|
7363
|
+
/** Why the operation ran. */
|
|
7364
|
+
var OpsLogReasonSchema = _enum([
|
|
7365
|
+
"retention",
|
|
7366
|
+
"quota",
|
|
7367
|
+
"manual",
|
|
7368
|
+
"operator"
|
|
7369
|
+
]);
|
|
7370
|
+
/** One audit row, shared verbatim by both domains. */
|
|
7371
|
+
var OpsLogEntrySchema = object({
|
|
7372
|
+
/** Unique row id. */
|
|
7373
|
+
id: string(),
|
|
7374
|
+
/** Epoch ms the operation completed. */
|
|
7375
|
+
at: number(),
|
|
7376
|
+
domain: OpsLogDomainSchema,
|
|
7377
|
+
op: OpsLogOpSchema,
|
|
7378
|
+
reason: OpsLogReasonSchema,
|
|
7379
|
+
/** The camera the op targeted; null for a cluster/global op. */
|
|
7380
|
+
deviceId: number().nullable(),
|
|
7381
|
+
/** Node that performed the op (the log carries nodeId — no cross-node aggregation). */
|
|
7382
|
+
nodeId: string(),
|
|
7383
|
+
/** Buckets / rows deleted (op-specific unit). */
|
|
7384
|
+
itemsAffected: number(),
|
|
7385
|
+
/** Bytes reclaimed by the op (0 when not measurable). */
|
|
7386
|
+
bytesReclaimed: number(),
|
|
7387
|
+
/** Free-text detail (e.g. "floor moved to <ts>"); null when none. */
|
|
7388
|
+
detail: string().nullable(),
|
|
7389
|
+
/** Who/what triggered the op. */
|
|
7390
|
+
actor: string()
|
|
7391
|
+
});
|
|
7392
|
+
/** Shared query input for the per-domain `listOpsLog` cap methods. */
|
|
7393
|
+
var OpsLogQueryInputSchema = object({
|
|
7394
|
+
/** Restrict to a single camera; omit for every row. */
|
|
7395
|
+
deviceId: number().optional(),
|
|
7396
|
+
/** Max rows returned, newest-first. */
|
|
7397
|
+
limit: number().int().min(1).max(1e3).optional()
|
|
7398
|
+
});
|
|
7399
|
+
/**
|
|
7344
7400
|
* `StorageLocationType` — an addon-declared id that identifies the *kind* of
|
|
7345
7401
|
* storage a location serves. Defined here (not in `capabilities/storage.cap.ts`)
|
|
7346
7402
|
* so the persisted record schema and the consumer-facing cap can both consume it
|
|
@@ -16271,6 +16327,26 @@ var TrackCascadeCountsSchema = object({
|
|
|
16271
16327
|
/** Per-track CLIP search vectors removed (best-effort). */
|
|
16272
16328
|
embeddings: number().int()
|
|
16273
16329
|
});
|
|
16330
|
+
/** Event-store footprint for one camera. */
|
|
16331
|
+
var EventStoreDeviceFootprintSchema = object({
|
|
16332
|
+
deviceId: number(),
|
|
16333
|
+
/** Persisted event rows (motion + object + audio) for the camera. */
|
|
16334
|
+
rows: number().int(),
|
|
16335
|
+
/** Event-owned media bytes on disk for the camera. */
|
|
16336
|
+
bytes: number().int()
|
|
16337
|
+
});
|
|
16338
|
+
/** Aggregate event-store footprint: global totals + per-camera breakdown. */
|
|
16339
|
+
var EventStoreFootprintSchema = object({
|
|
16340
|
+
totalRows: number().int(),
|
|
16341
|
+
totalBytes: number().int(),
|
|
16342
|
+
devices: array(EventStoreDeviceFootprintSchema).readonly()
|
|
16343
|
+
});
|
|
16344
|
+
/** Per-kind counts returned by the event-prune / device-delete mutations. */
|
|
16345
|
+
var EventPruneCountsSchema = object({
|
|
16346
|
+
motion: number().int(),
|
|
16347
|
+
object: number().int(),
|
|
16348
|
+
audio: number().int()
|
|
16349
|
+
});
|
|
16274
16350
|
DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).readonly()), method(object({
|
|
16275
16351
|
deviceId: number(),
|
|
16276
16352
|
trackId: string()
|
|
@@ -16334,6 +16410,21 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
16334
16410
|
}), {
|
|
16335
16411
|
kind: "mutation",
|
|
16336
16412
|
auth: "admin"
|
|
16413
|
+
}), method(object({}), EventStoreFootprintSchema, {
|
|
16414
|
+
kind: "query",
|
|
16415
|
+
auth: "admin"
|
|
16416
|
+
}), method(object({
|
|
16417
|
+
olderThanMs: number(),
|
|
16418
|
+
reason: OpsLogReasonSchema.optional()
|
|
16419
|
+
}), EventPruneCountsSchema, {
|
|
16420
|
+
kind: "mutation",
|
|
16421
|
+
auth: "admin"
|
|
16422
|
+
}), method(object({ deviceId: number() }), EventPruneCountsSchema, {
|
|
16423
|
+
kind: "mutation",
|
|
16424
|
+
auth: "admin"
|
|
16425
|
+
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
16426
|
+
kind: "query",
|
|
16427
|
+
auth: "admin"
|
|
16337
16428
|
}), method(object({
|
|
16338
16429
|
eventId: string(),
|
|
16339
16430
|
kind: MediaFileKindEnum.optional()
|
|
@@ -19567,13 +19658,29 @@ method(object({
|
|
|
19567
19658
|
}), method(object({ deviceId: number() }), RecordingStatusSchema, {
|
|
19568
19659
|
kind: "mutation",
|
|
19569
19660
|
auth: "admin"
|
|
19570
|
-
}), method(object({
|
|
19661
|
+
}), method(object({
|
|
19662
|
+
deviceId: number(),
|
|
19663
|
+
reason: OpsLogReasonSchema.optional()
|
|
19664
|
+
}), object({
|
|
19571
19665
|
floorMs: number().nullable(),
|
|
19572
19666
|
deletedBuckets: number().int(),
|
|
19573
19667
|
reclaimedBytes: number().int()
|
|
19574
19668
|
}), {
|
|
19575
19669
|
kind: "mutation",
|
|
19576
19670
|
auth: "admin"
|
|
19671
|
+
}), method(object({
|
|
19672
|
+
deviceId: number(),
|
|
19673
|
+
fromMs: number().optional(),
|
|
19674
|
+
toMs: number().optional()
|
|
19675
|
+
}), object({
|
|
19676
|
+
deletedBuckets: number().int(),
|
|
19677
|
+
reclaimedBytes: number().int()
|
|
19678
|
+
}), {
|
|
19679
|
+
kind: "mutation",
|
|
19680
|
+
auth: "admin"
|
|
19681
|
+
}), method(OpsLogQueryInputSchema, array(OpsLogEntrySchema).readonly(), {
|
|
19682
|
+
kind: "query",
|
|
19683
|
+
auth: "admin"
|
|
19577
19684
|
});
|
|
19578
19685
|
/**
|
|
19579
19686
|
* `recordingExport` cap — render a footage time range into a single downloadable
|
|
@@ -22695,6 +22802,12 @@ Object.freeze({
|
|
|
22695
22802
|
addonId: null,
|
|
22696
22803
|
access: "delete"
|
|
22697
22804
|
},
|
|
22805
|
+
"pipelineAnalytics.deleteDeviceEvents": {
|
|
22806
|
+
capName: "pipeline-analytics",
|
|
22807
|
+
capScope: "device",
|
|
22808
|
+
addonId: null,
|
|
22809
|
+
access: "delete"
|
|
22810
|
+
},
|
|
22698
22811
|
"pipelineAnalytics.deleteTracks": {
|
|
22699
22812
|
capName: "pipeline-analytics",
|
|
22700
22813
|
capScope: "device",
|
|
@@ -22725,6 +22838,12 @@ Object.freeze({
|
|
|
22725
22838
|
addonId: null,
|
|
22726
22839
|
access: "view"
|
|
22727
22840
|
},
|
|
22841
|
+
"pipelineAnalytics.getEventStoreFootprint": {
|
|
22842
|
+
capName: "pipeline-analytics",
|
|
22843
|
+
capScope: "device",
|
|
22844
|
+
addonId: null,
|
|
22845
|
+
access: "view"
|
|
22846
|
+
},
|
|
22728
22847
|
"pipelineAnalytics.getKeyEvents": {
|
|
22729
22848
|
capName: "pipeline-analytics",
|
|
22730
22849
|
capScope: "device",
|
|
@@ -22767,6 +22886,12 @@ Object.freeze({
|
|
|
22767
22886
|
addonId: null,
|
|
22768
22887
|
access: "view"
|
|
22769
22888
|
},
|
|
22889
|
+
"pipelineAnalytics.listOpsLog": {
|
|
22890
|
+
capName: "pipeline-analytics",
|
|
22891
|
+
capScope: "device",
|
|
22892
|
+
addonId: null,
|
|
22893
|
+
access: "view"
|
|
22894
|
+
},
|
|
22770
22895
|
"pipelineAnalytics.listRecentTracks": {
|
|
22771
22896
|
capName: "pipeline-analytics",
|
|
22772
22897
|
capScope: "device",
|
|
@@ -22779,6 +22904,12 @@ Object.freeze({
|
|
|
22779
22904
|
addonId: null,
|
|
22780
22905
|
access: "view"
|
|
22781
22906
|
},
|
|
22907
|
+
"pipelineAnalytics.pruneEvents": {
|
|
22908
|
+
capName: "pipeline-analytics",
|
|
22909
|
+
capScope: "device",
|
|
22910
|
+
addonId: null,
|
|
22911
|
+
access: "create"
|
|
22912
|
+
},
|
|
22782
22913
|
"pipelineAnalytics.pruneEventsBefore": {
|
|
22783
22914
|
capName: "pipeline-analytics",
|
|
22784
22915
|
capScope: "device",
|
|
@@ -23541,6 +23672,12 @@ Object.freeze({
|
|
|
23541
23672
|
addonId: null,
|
|
23542
23673
|
access: "create"
|
|
23543
23674
|
},
|
|
23675
|
+
"recording.deleteFootprint": {
|
|
23676
|
+
capName: "recording",
|
|
23677
|
+
capScope: "system",
|
|
23678
|
+
addonId: null,
|
|
23679
|
+
access: "delete"
|
|
23680
|
+
},
|
|
23544
23681
|
"recording.getAvailability": {
|
|
23545
23682
|
capName: "recording",
|
|
23546
23683
|
capScope: "system",
|
|
@@ -23571,6 +23708,12 @@ Object.freeze({
|
|
|
23571
23708
|
addonId: null,
|
|
23572
23709
|
access: "view"
|
|
23573
23710
|
},
|
|
23711
|
+
"recording.listOpsLog": {
|
|
23712
|
+
capName: "recording",
|
|
23713
|
+
capScope: "system",
|
|
23714
|
+
addonId: null,
|
|
23715
|
+
access: "view"
|
|
23716
|
+
},
|
|
23574
23717
|
"recording.locateSegment": {
|
|
23575
23718
|
capName: "recording",
|
|
23576
23719
|
capScope: "system",
|