@camstack/addon-export-google 0.1.45 → 0.1.47
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.
|
@@ -12190,6 +12190,9 @@ var QueryFilterSchema = object({
|
|
|
12190
12190
|
whereBetween: record(string(), tuple([unknown(), unknown()])).optional(),
|
|
12191
12191
|
/** NULL-safe exclusion: matches rows whose field is NULL OR != the value. */
|
|
12192
12192
|
whereNot: record(string(), unknown()).optional(),
|
|
12193
|
+
/** NULL-safe exclusion of a SET — `whereNot` for more than one value. An
|
|
12194
|
+
* empty list excludes nothing. See `QueryFilter.whereNotIn`. */
|
|
12195
|
+
whereNotIn: record(string(), array(unknown())).optional(),
|
|
12193
12196
|
orderBy: object({
|
|
12194
12197
|
field: string(),
|
|
12195
12198
|
direction: _enum(["asc", "desc"])
|
|
@@ -12210,7 +12213,8 @@ var MutationFilterSchema = object({
|
|
|
12210
12213
|
where: record(string(), unknown()).optional(),
|
|
12211
12214
|
whereIn: record(string(), array(unknown())).optional(),
|
|
12212
12215
|
whereBetween: record(string(), tuple([unknown(), unknown()])).optional(),
|
|
12213
|
-
whereNot: record(string(), unknown()).optional()
|
|
12216
|
+
whereNot: record(string(), unknown()).optional(),
|
|
12217
|
+
whereNotIn: record(string(), array(unknown())).optional()
|
|
12214
12218
|
});
|
|
12215
12219
|
/**
|
|
12216
12220
|
* One scalar an {@link settingsStoreCapability.methods.aggregate} call asks for.
|
|
@@ -18741,10 +18745,12 @@ var TrackSourceSchema = _enum([
|
|
|
18741
18745
|
* Terminal for the plain `markForTrain` toggle: returning it to `staging` is
|
|
18742
18746
|
* a deliberate action of the retrain page, not a side effect of a checkbox.
|
|
18743
18747
|
*
|
|
18744
|
-
* There is no `null`. The state is stored `TEXT NOT NULL DEFAULT 'none'`
|
|
18745
|
-
*
|
|
18746
|
-
*
|
|
18747
|
-
*
|
|
18748
|
+
* There is no `null`. The state is stored `TEXT NOT NULL DEFAULT 'none'` so that
|
|
18749
|
+
* every row is selectable by a positive predicate. (The filter language has
|
|
18750
|
+
* since grown the NULL-safe `whereNot` / `whereNotIn` and an `IS NULL` reading
|
|
18751
|
+
* of `where: { f: null }`, which is how {@link TrackSourceSchema} can be
|
|
18752
|
+
* filtered on a NULLABLE column — see `excludeSources`. It did not when this
|
|
18753
|
+
* column was designed, and a NOT NULL column is still the better shape.)
|
|
18748
18754
|
*/
|
|
18749
18755
|
var RetrainStatusSchema = _enum([
|
|
18750
18756
|
"none",
|
|
@@ -19480,7 +19486,9 @@ var RecentTracksQueryInput = object({
|
|
|
19480
19486
|
* whose class list is unreadable are kept, and the client's rule stays the
|
|
19481
19487
|
* exact one.
|
|
19482
19488
|
*/
|
|
19483
|
-
classes: array(string()).optional()
|
|
19489
|
+
classes: array(string()).optional(),
|
|
19490
|
+
/** See {@link ExcludeSourcesDoc}. */
|
|
19491
|
+
excludeSources: array(TrackSourceSchema).optional()
|
|
19484
19492
|
});
|
|
19485
19493
|
/**
|
|
19486
19494
|
* A Summary (D359): the per-camera session envelope that references tracks.
|
|
@@ -19908,7 +19916,9 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
19908
19916
|
* selected is an operator who has not narrowed anything, and an empty
|
|
19909
19917
|
* timeline would read as a camera that saw nothing.
|
|
19910
19918
|
*/
|
|
19911
|
-
classes: array(string()).optional()
|
|
19919
|
+
classes: array(string()).optional(),
|
|
19920
|
+
/** See {@link ExcludeSourcesDoc}. */
|
|
19921
|
+
excludeSources: array(TrackSourceSchema).optional()
|
|
19912
19922
|
}), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
|
|
19913
19923
|
kind: "mutation",
|
|
19914
19924
|
auth: "admin"
|
|
@@ -27381,8 +27391,27 @@ var PrivacyMaskRegionSchema = object({
|
|
|
27381
27391
|
});
|
|
27382
27392
|
object({
|
|
27383
27393
|
enabled: boolean(),
|
|
27384
|
-
/**
|
|
27385
|
-
|
|
27394
|
+
/**
|
|
27395
|
+
* Active zones (normalized 0..1). Length ≤ maxRegions.
|
|
27396
|
+
*
|
|
27397
|
+
* `null` means "no answer" — the provider has never reached this camera
|
|
27398
|
+
* (a cold `runtimeState` slice, a battery camera asleep) or the read
|
|
27399
|
+
* failed. A consumer must render it as UNKNOWN and never as "this camera
|
|
27400
|
+
* has no zones": those two look identical to an operator right up to the
|
|
27401
|
+
* moment one of them is acted on, and acting on them differs completely.
|
|
27402
|
+
* The switch group turned an unanswered read into *"nothing is set up for
|
|
27403
|
+
* it to act on"* — an instruction to go and draw a zone that already
|
|
27404
|
+
* exists — and this editor seeded an EMPTY canvas from it, one Save away
|
|
27405
|
+
* from deleting the mask it could not read.
|
|
27406
|
+
*
|
|
27407
|
+
* Empty-and-answered is `[]` and stays a real answer: this camera genuinely
|
|
27408
|
+
* has no zones. The distinction is the same one {@link
|
|
27409
|
+
* PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
|
|
27410
|
+
* microphone, on the very same payload — both planes come from ONE refresh,
|
|
27411
|
+
* so it was never coherent for one of them to be able to say "unknown"
|
|
27412
|
+
* while the other could not.
|
|
27413
|
+
*/
|
|
27414
|
+
regions: array(PrivacyMaskRegionSchema).nullable(),
|
|
27386
27415
|
/**
|
|
27387
27416
|
* Is the camera capturing sound right now? Read from the camera, never from
|
|
27388
27417
|
* a server-side mirror.
|
|
@@ -12186,6 +12186,9 @@ var QueryFilterSchema = object({
|
|
|
12186
12186
|
whereBetween: record(string(), tuple([unknown(), unknown()])).optional(),
|
|
12187
12187
|
/** NULL-safe exclusion: matches rows whose field is NULL OR != the value. */
|
|
12188
12188
|
whereNot: record(string(), unknown()).optional(),
|
|
12189
|
+
/** NULL-safe exclusion of a SET — `whereNot` for more than one value. An
|
|
12190
|
+
* empty list excludes nothing. See `QueryFilter.whereNotIn`. */
|
|
12191
|
+
whereNotIn: record(string(), array(unknown())).optional(),
|
|
12189
12192
|
orderBy: object({
|
|
12190
12193
|
field: string(),
|
|
12191
12194
|
direction: _enum(["asc", "desc"])
|
|
@@ -12206,7 +12209,8 @@ var MutationFilterSchema = object({
|
|
|
12206
12209
|
where: record(string(), unknown()).optional(),
|
|
12207
12210
|
whereIn: record(string(), array(unknown())).optional(),
|
|
12208
12211
|
whereBetween: record(string(), tuple([unknown(), unknown()])).optional(),
|
|
12209
|
-
whereNot: record(string(), unknown()).optional()
|
|
12212
|
+
whereNot: record(string(), unknown()).optional(),
|
|
12213
|
+
whereNotIn: record(string(), array(unknown())).optional()
|
|
12210
12214
|
});
|
|
12211
12215
|
/**
|
|
12212
12216
|
* One scalar an {@link settingsStoreCapability.methods.aggregate} call asks for.
|
|
@@ -18737,10 +18741,12 @@ var TrackSourceSchema = _enum([
|
|
|
18737
18741
|
* Terminal for the plain `markForTrain` toggle: returning it to `staging` is
|
|
18738
18742
|
* a deliberate action of the retrain page, not a side effect of a checkbox.
|
|
18739
18743
|
*
|
|
18740
|
-
* There is no `null`. The state is stored `TEXT NOT NULL DEFAULT 'none'`
|
|
18741
|
-
*
|
|
18742
|
-
*
|
|
18743
|
-
*
|
|
18744
|
+
* There is no `null`. The state is stored `TEXT NOT NULL DEFAULT 'none'` so that
|
|
18745
|
+
* every row is selectable by a positive predicate. (The filter language has
|
|
18746
|
+
* since grown the NULL-safe `whereNot` / `whereNotIn` and an `IS NULL` reading
|
|
18747
|
+
* of `where: { f: null }`, which is how {@link TrackSourceSchema} can be
|
|
18748
|
+
* filtered on a NULLABLE column — see `excludeSources`. It did not when this
|
|
18749
|
+
* column was designed, and a NOT NULL column is still the better shape.)
|
|
18744
18750
|
*/
|
|
18745
18751
|
var RetrainStatusSchema = _enum([
|
|
18746
18752
|
"none",
|
|
@@ -19476,7 +19482,9 @@ var RecentTracksQueryInput = object({
|
|
|
19476
19482
|
* whose class list is unreadable are kept, and the client's rule stays the
|
|
19477
19483
|
* exact one.
|
|
19478
19484
|
*/
|
|
19479
|
-
classes: array(string()).optional()
|
|
19485
|
+
classes: array(string()).optional(),
|
|
19486
|
+
/** See {@link ExcludeSourcesDoc}. */
|
|
19487
|
+
excludeSources: array(TrackSourceSchema).optional()
|
|
19480
19488
|
});
|
|
19481
19489
|
/**
|
|
19482
19490
|
* A Summary (D359): the per-camera session envelope that references tracks.
|
|
@@ -19904,7 +19912,9 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
19904
19912
|
* selected is an operator who has not narrowed anything, and an empty
|
|
19905
19913
|
* timeline would read as a camera that saw nothing.
|
|
19906
19914
|
*/
|
|
19907
|
-
classes: array(string()).optional()
|
|
19915
|
+
classes: array(string()).optional(),
|
|
19916
|
+
/** See {@link ExcludeSourcesDoc}. */
|
|
19917
|
+
excludeSources: array(TrackSourceSchema).optional()
|
|
19908
19918
|
}), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
|
|
19909
19919
|
kind: "mutation",
|
|
19910
19920
|
auth: "admin"
|
|
@@ -27377,8 +27387,27 @@ var PrivacyMaskRegionSchema = object({
|
|
|
27377
27387
|
});
|
|
27378
27388
|
object({
|
|
27379
27389
|
enabled: boolean(),
|
|
27380
|
-
/**
|
|
27381
|
-
|
|
27390
|
+
/**
|
|
27391
|
+
* Active zones (normalized 0..1). Length ≤ maxRegions.
|
|
27392
|
+
*
|
|
27393
|
+
* `null` means "no answer" — the provider has never reached this camera
|
|
27394
|
+
* (a cold `runtimeState` slice, a battery camera asleep) or the read
|
|
27395
|
+
* failed. A consumer must render it as UNKNOWN and never as "this camera
|
|
27396
|
+
* has no zones": those two look identical to an operator right up to the
|
|
27397
|
+
* moment one of them is acted on, and acting on them differs completely.
|
|
27398
|
+
* The switch group turned an unanswered read into *"nothing is set up for
|
|
27399
|
+
* it to act on"* — an instruction to go and draw a zone that already
|
|
27400
|
+
* exists — and this editor seeded an EMPTY canvas from it, one Save away
|
|
27401
|
+
* from deleting the mask it could not read.
|
|
27402
|
+
*
|
|
27403
|
+
* Empty-and-answered is `[]` and stays a real answer: this camera genuinely
|
|
27404
|
+
* has no zones. The distinction is the same one {@link
|
|
27405
|
+
* PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
|
|
27406
|
+
* microphone, on the very same payload — both planes come from ONE refresh,
|
|
27407
|
+
* so it was never coherent for one of them to be able to say "unknown"
|
|
27408
|
+
* while the other could not.
|
|
27409
|
+
*/
|
|
27410
|
+
regions: array(PrivacyMaskRegionSchema).nullable(),
|
|
27382
27411
|
/**
|
|
27383
27412
|
* Is the camera capturing sound right now? Read from the camera, never from
|
|
27384
27413
|
* a server-side mirror.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-export-google",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.47",
|
|
4
4
|
"description": "Google Home export — hub-side smart-home fulfillment (SYNC / QUERY / EXECUTE / DISCONNECT) for the non-camera fleet, served over the hub's own OAuth account link. No Google credential is stored, sent or required.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|