@camstack/addon-provider-wyze 0.2.88 → 0.2.90

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.
Files changed (3) hide show
  1. package/dist/addon.js +129 -70
  2. package/dist/addon.mjs +129 -70
  3. package/package.json +1 -1
package/dist/addon.js CHANGED
@@ -16157,14 +16157,14 @@ var alarmPanelCapability = {
16157
16157
  code: string().min(1).optional()
16158
16158
  }), _void(), {
16159
16159
  kind: "mutation",
16160
- auth: "admin"
16160
+ auth: "protected"
16161
16161
  }),
16162
16162
  disarm: method(object({
16163
16163
  deviceId: number().int().nonnegative(),
16164
16164
  code: string().min(1).optional()
16165
16165
  }), _void(), {
16166
16166
  kind: "mutation",
16167
- auth: "admin"
16167
+ auth: "protected"
16168
16168
  }),
16169
16169
  /**
16170
16170
  * Force the panel into the `triggered` state — used by HA
@@ -16175,7 +16175,7 @@ var alarmPanelCapability = {
16175
16175
  */
16176
16176
  trigger: method(object({ deviceId: number().int().nonnegative() }), _void(), {
16177
16177
  kind: "mutation",
16178
- auth: "admin"
16178
+ auth: "protected"
16179
16179
  })
16180
16180
  },
16181
16181
  status: {
@@ -24246,7 +24246,7 @@ var brightnessCapability = {
24246
24246
  percentage: number().min(0).max(100)
24247
24247
  }), _void(), {
24248
24248
  kind: "mutation",
24249
- auth: "admin"
24249
+ auth: "protected"
24250
24250
  }) },
24251
24251
  events: {
24252
24252
  /**
@@ -24279,7 +24279,7 @@ onBrightnessChanged: { data: object({
24279
24279
  };
24280
24280
  DeviceType.Button, method(object({ deviceId: number().int().nonnegative() }), _void(), {
24281
24281
  kind: "mutation",
24282
- auth: "admin"
24282
+ auth: "protected"
24283
24283
  });
24284
24284
  /**
24285
24285
  * camera-credentials — device-scoped cap exposing the camera's network
@@ -24471,28 +24471,28 @@ var climateControlCapability = {
24471
24471
  mode: HvacModeSchema
24472
24472
  }), _void(), {
24473
24473
  kind: "mutation",
24474
- auth: "admin"
24474
+ auth: "protected"
24475
24475
  }),
24476
24476
  setFanMode: method(object({
24477
24477
  deviceId: number().int().nonnegative(),
24478
24478
  fanMode: string().min(1)
24479
24479
  }), _void(), {
24480
24480
  kind: "mutation",
24481
- auth: "admin"
24481
+ auth: "protected"
24482
24482
  }),
24483
24483
  setPreset: method(object({
24484
24484
  deviceId: number().int().nonnegative(),
24485
24485
  preset: string().min(1)
24486
24486
  }), _void(), {
24487
24487
  kind: "mutation",
24488
- auth: "admin"
24488
+ auth: "protected"
24489
24489
  }),
24490
24490
  setTarget: method(object({
24491
24491
  deviceId: number().int().nonnegative(),
24492
24492
  target: number()
24493
24493
  }), _void(), {
24494
24494
  kind: "mutation",
24495
- auth: "admin"
24495
+ auth: "protected"
24496
24496
  }),
24497
24497
  setTargetRange: method(object({
24498
24498
  deviceId: number().int().nonnegative(),
@@ -24500,28 +24500,28 @@ var climateControlCapability = {
24500
24500
  targetHigh: number()
24501
24501
  }), _void(), {
24502
24502
  kind: "mutation",
24503
- auth: "admin"
24503
+ auth: "protected"
24504
24504
  }),
24505
24505
  setTargetHumidity: method(object({
24506
24506
  deviceId: number().int().nonnegative(),
24507
24507
  targetHumidity: number().min(0).max(100)
24508
24508
  }), _void(), {
24509
24509
  kind: "mutation",
24510
- auth: "admin"
24510
+ auth: "protected"
24511
24511
  }),
24512
24512
  setSwingVertical: method(object({
24513
24513
  deviceId: number().int().nonnegative(),
24514
24514
  on: boolean()
24515
24515
  }), _void(), {
24516
24516
  kind: "mutation",
24517
- auth: "admin"
24517
+ auth: "protected"
24518
24518
  }),
24519
24519
  setSwingHorizontal: method(object({
24520
24520
  deviceId: number().int().nonnegative(),
24521
24521
  on: boolean()
24522
24522
  }), _void(), {
24523
24523
  kind: "mutation",
24524
- auth: "admin"
24524
+ auth: "protected"
24525
24525
  })
24526
24526
  },
24527
24527
  status: {
@@ -24621,7 +24621,7 @@ var colorCapability = {
24621
24621
  color: ColorInputSchema
24622
24622
  }), _void(), {
24623
24623
  kind: "mutation",
24624
- auth: "admin"
24624
+ auth: "protected"
24625
24625
  }) },
24626
24626
  events: {
24627
24627
  /**
@@ -24958,7 +24958,7 @@ var controlCapability = {
24958
24958
  control: ControlSetValueInputSchema
24959
24959
  }), _void(), {
24960
24960
  kind: "mutation",
24961
- auth: "admin"
24961
+ auth: "protected"
24962
24962
  }) },
24963
24963
  status: {
24964
24964
  schema: ControlStatusSchema,
@@ -25004,29 +25004,29 @@ var coverCapability = {
25004
25004
  methods: {
25005
25005
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
25006
25006
  kind: "mutation",
25007
- auth: "admin"
25007
+ auth: "protected"
25008
25008
  }),
25009
25009
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
25010
25010
  kind: "mutation",
25011
- auth: "admin"
25011
+ auth: "protected"
25012
25012
  }),
25013
25013
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
25014
25014
  kind: "mutation",
25015
- auth: "admin"
25015
+ auth: "protected"
25016
25016
  }),
25017
25017
  setPosition: method(object({
25018
25018
  deviceId: number().int().nonnegative(),
25019
25019
  position: number().min(0).max(100)
25020
25020
  }), _void(), {
25021
25021
  kind: "mutation",
25022
- auth: "admin"
25022
+ auth: "protected"
25023
25023
  }),
25024
25024
  setTiltPosition: method(object({
25025
25025
  deviceId: number().int().nonnegative(),
25026
25026
  tiltPosition: number().min(0).max(100)
25027
25027
  }), _void(), {
25028
25028
  kind: "mutation",
25029
- auth: "admin"
25029
+ auth: "protected"
25030
25030
  })
25031
25031
  },
25032
25032
  status: {
@@ -25412,6 +25412,59 @@ var IdentitySampleInfoSchema = object({
25412
25412
  deviceId: number().int().optional(),
25413
25413
  base64: string().optional()
25414
25414
  });
25415
+ /**
25416
+ * One enrolled sample, judged against the gallery it lives in.
25417
+ *
25418
+ * The gallery is the one input to recognition nobody re-reads: a sample
25419
+ * enrolled from the wrong face keeps voting forever, and because the matches it
25420
+ * pulls then look confident, nobody goes back. The 2026-09-08 audit found
25421
+ * exactly one such pair on this cluster — a sample scoring 0.61 against three
25422
+ * samples of ANOTHER person, enrolled from the same camera in the same minute,
25423
+ * where every other cross-identity pair sits under 0.50.
25424
+ */
25425
+ var IdentitySampleAuditRowSchema = object({
25426
+ sampleId: string(),
25427
+ enrolledAt: number().int(),
25428
+ deviceId: number().int().optional(),
25429
+ source: _enum(["detected", "photo"]),
25430
+ /** The enrolled crop's media key, so the panel can show the evidence. */
25431
+ mediaKey: string().optional(),
25432
+ /**
25433
+ * False = the sample is stamped with a DIFFERENT face model, and a cosine
25434
+ * across feature spaces is a well-formed float with no meaning. Every number
25435
+ * below then says nothing — it must read as "cannot say", never as an
25436
+ * accusation and never as a clean bill: this list ends in a Remove button.
25437
+ */
25438
+ comparable: boolean(),
25439
+ /** Mean cosine against this person's other samples. Null when there are none
25440
+ * to compare with — never 0, which would read as "opposite". */
25441
+ selfMean: number().nullable(),
25442
+ /** The other person this sample looks most like, when it looks like one.
25443
+ * This is the half that convicts: not looking like yourself can be a hard
25444
+ * angle; looking like someone the gallery can NAME is a mis-enrolment. */
25445
+ bestForeign: object({
25446
+ identityId: string(),
25447
+ name: string(),
25448
+ score: number()
25449
+ }).optional(),
25450
+ /** 0 = nothing to say. Higher = look at this one sooner. */
25451
+ suspicion: number()
25452
+ });
25453
+ var IdentitySampleAuditSchema = object({
25454
+ identityId: string(),
25455
+ name: string(),
25456
+ /** The cluster face model every comparison was made in. */
25457
+ modelId: string(),
25458
+ totalSamples: number().int(),
25459
+ comparableSamples: number().int(),
25460
+ flagged: number().int(),
25461
+ /** The bar `flagged` counts against, so the panel states the RULE and not
25462
+ * only its current result. */
25463
+ flagThreshold: number(),
25464
+ /** Worst first. A row with nothing to say still appears, at the bottom: the
25465
+ * operator asked to see the gallery, not only its accusations. */
25466
+ rows: array(IdentitySampleAuditRowSchema).readonly()
25467
+ });
25415
25468
  var FaceInfoSchema = object({
25416
25469
  faceId: string(),
25417
25470
  deviceId: number().int(),
@@ -25563,7 +25616,7 @@ includeCrops: boolean().optional() }).optional(), array(IdentitySchema).readonly
25563
25616
  }), method(object({ id: string() }), _void(), {
25564
25617
  kind: "mutation",
25565
25618
  auth: "admin"
25566
- }), method(object({ identityId: string() }), array(IdentitySampleInfoSchema).readonly()), method(object({
25619
+ }), method(object({ identityId: string() }), array(IdentitySampleInfoSchema).readonly()), method(object({ identityId: string().min(1) }), IdentitySampleAuditSchema, { auth: "admin" }), method(object({
25567
25620
  identityId: string(),
25568
25621
  sampleId: string()
25569
25622
  }), _void(), {
@@ -25756,28 +25809,28 @@ var fanControlCapability = {
25756
25809
  percentage: number().min(0).max(100)
25757
25810
  }), _void(), {
25758
25811
  kind: "mutation",
25759
- auth: "admin"
25812
+ auth: "protected"
25760
25813
  }),
25761
25814
  setPreset: method(object({
25762
25815
  deviceId: number().int().nonnegative(),
25763
25816
  preset: string().min(1)
25764
25817
  }), _void(), {
25765
25818
  kind: "mutation",
25766
- auth: "admin"
25819
+ auth: "protected"
25767
25820
  }),
25768
25821
  setDirection: method(object({
25769
25822
  deviceId: number().int().nonnegative(),
25770
25823
  direction: FanDirectionSchema
25771
25824
  }), _void(), {
25772
25825
  kind: "mutation",
25773
- auth: "admin"
25826
+ auth: "protected"
25774
25827
  }),
25775
25828
  setOscillating: method(object({
25776
25829
  deviceId: number().int().nonnegative(),
25777
25830
  oscillating: boolean()
25778
25831
  }), _void(), {
25779
25832
  kind: "mutation",
25780
- auth: "admin"
25833
+ auth: "protected"
25781
25834
  })
25782
25835
  },
25783
25836
  status: {
@@ -25999,21 +26052,21 @@ var humidifierCapability = {
25999
26052
  on: boolean()
26000
26053
  }), _void(), {
26001
26054
  kind: "mutation",
26002
- auth: "admin"
26055
+ auth: "protected"
26003
26056
  }),
26004
26057
  setTargetHumidity: method(object({
26005
26058
  deviceId: number().int().nonnegative(),
26006
26059
  humidity: number().min(0).max(100)
26007
26060
  }), _void(), {
26008
26061
  kind: "mutation",
26009
- auth: "admin"
26062
+ auth: "protected"
26010
26063
  }),
26011
26064
  setMode: method(object({
26012
26065
  deviceId: number().int().nonnegative(),
26013
26066
  mode: string().min(1)
26014
26067
  }), _void(), {
26015
26068
  kind: "mutation",
26016
- auth: "admin"
26069
+ auth: "protected"
26017
26070
  })
26018
26071
  },
26019
26072
  status: {
@@ -26714,15 +26767,15 @@ var lawnMowerControlCapability = {
26714
26767
  methods: {
26715
26768
  startMowing: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26716
26769
  kind: "mutation",
26717
- auth: "admin"
26770
+ auth: "protected"
26718
26771
  }),
26719
26772
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26720
26773
  kind: "mutation",
26721
- auth: "admin"
26774
+ auth: "protected"
26722
26775
  }),
26723
26776
  dock: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26724
26777
  kind: "mutation",
26725
- auth: "admin"
26778
+ auth: "protected"
26726
26779
  })
26727
26780
  },
26728
26781
  status: {
@@ -27007,18 +27060,18 @@ var lockControlCapability = {
27007
27060
  code: string().min(1).optional()
27008
27061
  }), _void(), {
27009
27062
  kind: "mutation",
27010
- auth: "admin"
27063
+ auth: "protected"
27011
27064
  }),
27012
27065
  unlock: method(object({
27013
27066
  deviceId: number().int().nonnegative(),
27014
27067
  code: string().min(1).optional()
27015
27068
  }), _void(), {
27016
27069
  kind: "mutation",
27017
- auth: "admin"
27070
+ auth: "protected"
27018
27071
  }),
27019
27072
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27020
27073
  kind: "mutation",
27021
- auth: "admin"
27074
+ auth: "protected"
27022
27075
  })
27023
27076
  },
27024
27077
  status: {
@@ -27121,65 +27174,65 @@ var mediaPlayerCapability = {
27121
27174
  methods: {
27122
27175
  play: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27123
27176
  kind: "mutation",
27124
- auth: "admin"
27177
+ auth: "protected"
27125
27178
  }),
27126
27179
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27127
27180
  kind: "mutation",
27128
- auth: "admin"
27181
+ auth: "protected"
27129
27182
  }),
27130
27183
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27131
27184
  kind: "mutation",
27132
- auth: "admin"
27185
+ auth: "protected"
27133
27186
  }),
27134
27187
  next: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27135
27188
  kind: "mutation",
27136
- auth: "admin"
27189
+ auth: "protected"
27137
27190
  }),
27138
27191
  previous: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27139
27192
  kind: "mutation",
27140
- auth: "admin"
27193
+ auth: "protected"
27141
27194
  }),
27142
27195
  seek: method(object({
27143
27196
  deviceId: number().int().nonnegative(),
27144
27197
  positionMs: number().int().nonnegative()
27145
27198
  }), _void(), {
27146
27199
  kind: "mutation",
27147
- auth: "admin"
27200
+ auth: "protected"
27148
27201
  }),
27149
27202
  setVolume: method(object({
27150
27203
  deviceId: number().int().nonnegative(),
27151
27204
  volumeLevel: number().min(0).max(100)
27152
27205
  }), _void(), {
27153
27206
  kind: "mutation",
27154
- auth: "admin"
27207
+ auth: "protected"
27155
27208
  }),
27156
27209
  setMute: method(object({
27157
27210
  deviceId: number().int().nonnegative(),
27158
27211
  muted: boolean()
27159
27212
  }), _void(), {
27160
27213
  kind: "mutation",
27161
- auth: "admin"
27214
+ auth: "protected"
27162
27215
  }),
27163
27216
  setShuffle: method(object({
27164
27217
  deviceId: number().int().nonnegative(),
27165
27218
  shuffle: boolean()
27166
27219
  }), _void(), {
27167
27220
  kind: "mutation",
27168
- auth: "admin"
27221
+ auth: "protected"
27169
27222
  }),
27170
27223
  setRepeat: method(object({
27171
27224
  deviceId: number().int().nonnegative(),
27172
27225
  repeat: MediaPlayerRepeatSchema
27173
27226
  }), _void(), {
27174
27227
  kind: "mutation",
27175
- auth: "admin"
27228
+ auth: "protected"
27176
27229
  }),
27177
27230
  selectSource: method(object({
27178
27231
  deviceId: number().int().nonnegative(),
27179
27232
  source: string().min(1)
27180
27233
  }), _void(), {
27181
27234
  kind: "mutation",
27182
- auth: "admin"
27235
+ auth: "protected"
27183
27236
  }),
27184
27237
  playMedia: method(object({
27185
27238
  deviceId: number().int().nonnegative(),
@@ -27190,7 +27243,7 @@ var mediaPlayerCapability = {
27190
27243
  mediaType: string().min(1)
27191
27244
  }), _void(), {
27192
27245
  kind: "mutation",
27193
- auth: "admin"
27246
+ auth: "protected"
27194
27247
  })
27195
27248
  },
27196
27249
  status: {
@@ -28783,27 +28836,27 @@ var petFeederCapability = {
28783
28836
  hopper2: gramsPortion.optional()
28784
28837
  }), _void(), {
28785
28838
  kind: "mutation",
28786
- auth: "admin"
28839
+ auth: "protected"
28787
28840
  }),
28788
28841
  /** Cancel an in-progress manual feed. */
28789
28842
  cancelFeed: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28790
28843
  kind: "mutation",
28791
- auth: "admin"
28844
+ auth: "protected"
28792
28845
  }),
28793
28846
  /** Reset the desiccant "days remaining" counter after replacing it. */
28794
28847
  resetDesiccant: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28795
28848
  kind: "mutation",
28796
- auth: "admin"
28849
+ auth: "protected"
28797
28850
  }),
28798
28851
  /** Mark a hopper as refilled (D4H/D4S/D4SH). */
28799
28852
  markFoodReplenished: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28800
28853
  kind: "mutation",
28801
- auth: "admin"
28854
+ auth: "protected"
28802
28855
  }),
28803
28856
  /** Call the pet with the recorded prompt (D3). */
28804
28857
  callPet: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28805
28858
  kind: "mutation",
28806
- auth: "admin"
28859
+ auth: "protected"
28807
28860
  }),
28808
28861
  /** Play a stored sound by id (D3 / D4H / D4SH). */
28809
28862
  playSound: method(object({
@@ -28811,7 +28864,7 @@ var petFeederCapability = {
28811
28864
  soundId: number().int().nonnegative()
28812
28865
  }), _void(), {
28813
28866
  kind: "mutation",
28814
- auth: "admin"
28867
+ auth: "protected"
28815
28868
  }),
28816
28869
  /** Toggle the child-lock (manual-lock) setting. */
28817
28870
  setChildLock: method(object({
@@ -28819,7 +28872,7 @@ var petFeederCapability = {
28819
28872
  on: boolean()
28820
28873
  }), _void(), {
28821
28874
  kind: "mutation",
28822
- auth: "admin"
28875
+ auth: "protected"
28823
28876
  }),
28824
28877
  /** Toggle the front indicator light. */
28825
28878
  setIndicatorLight: method(object({
@@ -28827,7 +28880,7 @@ var petFeederCapability = {
28827
28880
  on: boolean()
28828
28881
  }), _void(), {
28829
28882
  kind: "mutation",
28830
- auth: "admin"
28883
+ auth: "protected"
28831
28884
  }),
28832
28885
  /** Toggle the dispense chime. */
28833
28886
  setFeedSound: method(object({
@@ -28835,7 +28888,7 @@ var petFeederCapability = {
28835
28888
  on: boolean()
28836
28889
  }), _void(), {
28837
28890
  kind: "mutation",
28838
- auth: "admin"
28891
+ auth: "protected"
28839
28892
  }),
28840
28893
  /** Set the speaker / prompt volume level. */
28841
28894
  setVolume: method(object({
@@ -28843,7 +28896,7 @@ var petFeederCapability = {
28843
28896
  level: number().int().nonnegative()
28844
28897
  }), _void(), {
28845
28898
  kind: "mutation",
28846
- auth: "admin"
28899
+ auth: "protected"
28847
28900
  })
28848
28901
  },
28849
28902
  status: {
@@ -31139,7 +31192,7 @@ var switchCapability = {
31139
31192
  on: boolean()
31140
31193
  }), _void(), {
31141
31194
  kind: "mutation",
31142
- auth: "admin"
31195
+ auth: "protected"
31143
31196
  }) },
31144
31197
  events: { onStateChanged: { data: object({
31145
31198
  deviceId: number(),
@@ -32127,30 +32180,30 @@ var vacuumControlCapability = {
32127
32180
  methods: {
32128
32181
  start: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32129
32182
  kind: "mutation",
32130
- auth: "admin"
32183
+ auth: "protected"
32131
32184
  }),
32132
32185
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32133
32186
  kind: "mutation",
32134
- auth: "admin"
32187
+ auth: "protected"
32135
32188
  }),
32136
32189
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32137
32190
  kind: "mutation",
32138
- auth: "admin"
32191
+ auth: "protected"
32139
32192
  }),
32140
32193
  returnToBase: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32141
32194
  kind: "mutation",
32142
- auth: "admin"
32195
+ auth: "protected"
32143
32196
  }),
32144
32197
  locate: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32145
32198
  kind: "mutation",
32146
- auth: "admin"
32199
+ auth: "protected"
32147
32200
  }),
32148
32201
  setFanSpeed: method(object({
32149
32202
  deviceId: number().int().nonnegative(),
32150
32203
  speed: string().min(1)
32151
32204
  }), _void(), {
32152
32205
  kind: "mutation",
32153
- auth: "admin"
32206
+ auth: "protected"
32154
32207
  })
32155
32208
  },
32156
32209
  status: {
@@ -32194,22 +32247,22 @@ var valveCapability = {
32194
32247
  methods: {
32195
32248
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32196
32249
  kind: "mutation",
32197
- auth: "admin"
32250
+ auth: "protected"
32198
32251
  }),
32199
32252
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32200
32253
  kind: "mutation",
32201
- auth: "admin"
32254
+ auth: "protected"
32202
32255
  }),
32203
32256
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32204
32257
  kind: "mutation",
32205
- auth: "admin"
32258
+ auth: "protected"
32206
32259
  }),
32207
32260
  setPosition: method(object({
32208
32261
  deviceId: number().int().nonnegative(),
32209
32262
  position: number().min(0).max(100)
32210
32263
  }), _void(), {
32211
32264
  kind: "mutation",
32212
- auth: "admin"
32265
+ auth: "protected"
32213
32266
  })
32214
32267
  },
32215
32268
  status: {
@@ -32308,21 +32361,21 @@ var waterHeaterCapability = {
32308
32361
  temp: number().finite()
32309
32362
  }), _void(), {
32310
32363
  kind: "mutation",
32311
- auth: "admin"
32364
+ auth: "protected"
32312
32365
  }),
32313
32366
  setOperationMode: method(object({
32314
32367
  deviceId: number().int().nonnegative(),
32315
32368
  mode: string().min(1)
32316
32369
  }), _void(), {
32317
32370
  kind: "mutation",
32318
- auth: "admin"
32371
+ auth: "protected"
32319
32372
  }),
32320
32373
  setAway: method(object({
32321
32374
  deviceId: number().int().nonnegative(),
32322
32375
  on: boolean()
32323
32376
  }), _void(), {
32324
32377
  kind: "mutation",
32325
- auth: "admin"
32378
+ auth: "protected"
32326
32379
  })
32327
32380
  },
32328
32381
  status: {
@@ -36056,6 +36109,12 @@ Object.freeze({
36056
36109
  addonId: null,
36057
36110
  access: "create"
36058
36111
  },
36112
+ "faceGallery.auditIdentitySamples": {
36113
+ capName: "face-gallery",
36114
+ capScope: "system",
36115
+ addonId: null,
36116
+ access: "view"
36117
+ },
36059
36118
  "faceGallery.createIdentity": {
36060
36119
  capName: "face-gallery",
36061
36120
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -16136,14 +16136,14 @@ var alarmPanelCapability = {
16136
16136
  code: string().min(1).optional()
16137
16137
  }), _void(), {
16138
16138
  kind: "mutation",
16139
- auth: "admin"
16139
+ auth: "protected"
16140
16140
  }),
16141
16141
  disarm: method(object({
16142
16142
  deviceId: number().int().nonnegative(),
16143
16143
  code: string().min(1).optional()
16144
16144
  }), _void(), {
16145
16145
  kind: "mutation",
16146
- auth: "admin"
16146
+ auth: "protected"
16147
16147
  }),
16148
16148
  /**
16149
16149
  * Force the panel into the `triggered` state — used by HA
@@ -16154,7 +16154,7 @@ var alarmPanelCapability = {
16154
16154
  */
16155
16155
  trigger: method(object({ deviceId: number().int().nonnegative() }), _void(), {
16156
16156
  kind: "mutation",
16157
- auth: "admin"
16157
+ auth: "protected"
16158
16158
  })
16159
16159
  },
16160
16160
  status: {
@@ -24225,7 +24225,7 @@ var brightnessCapability = {
24225
24225
  percentage: number().min(0).max(100)
24226
24226
  }), _void(), {
24227
24227
  kind: "mutation",
24228
- auth: "admin"
24228
+ auth: "protected"
24229
24229
  }) },
24230
24230
  events: {
24231
24231
  /**
@@ -24258,7 +24258,7 @@ onBrightnessChanged: { data: object({
24258
24258
  };
24259
24259
  DeviceType.Button, method(object({ deviceId: number().int().nonnegative() }), _void(), {
24260
24260
  kind: "mutation",
24261
- auth: "admin"
24261
+ auth: "protected"
24262
24262
  });
24263
24263
  /**
24264
24264
  * camera-credentials — device-scoped cap exposing the camera's network
@@ -24450,28 +24450,28 @@ var climateControlCapability = {
24450
24450
  mode: HvacModeSchema
24451
24451
  }), _void(), {
24452
24452
  kind: "mutation",
24453
- auth: "admin"
24453
+ auth: "protected"
24454
24454
  }),
24455
24455
  setFanMode: method(object({
24456
24456
  deviceId: number().int().nonnegative(),
24457
24457
  fanMode: string().min(1)
24458
24458
  }), _void(), {
24459
24459
  kind: "mutation",
24460
- auth: "admin"
24460
+ auth: "protected"
24461
24461
  }),
24462
24462
  setPreset: method(object({
24463
24463
  deviceId: number().int().nonnegative(),
24464
24464
  preset: string().min(1)
24465
24465
  }), _void(), {
24466
24466
  kind: "mutation",
24467
- auth: "admin"
24467
+ auth: "protected"
24468
24468
  }),
24469
24469
  setTarget: method(object({
24470
24470
  deviceId: number().int().nonnegative(),
24471
24471
  target: number()
24472
24472
  }), _void(), {
24473
24473
  kind: "mutation",
24474
- auth: "admin"
24474
+ auth: "protected"
24475
24475
  }),
24476
24476
  setTargetRange: method(object({
24477
24477
  deviceId: number().int().nonnegative(),
@@ -24479,28 +24479,28 @@ var climateControlCapability = {
24479
24479
  targetHigh: number()
24480
24480
  }), _void(), {
24481
24481
  kind: "mutation",
24482
- auth: "admin"
24482
+ auth: "protected"
24483
24483
  }),
24484
24484
  setTargetHumidity: method(object({
24485
24485
  deviceId: number().int().nonnegative(),
24486
24486
  targetHumidity: number().min(0).max(100)
24487
24487
  }), _void(), {
24488
24488
  kind: "mutation",
24489
- auth: "admin"
24489
+ auth: "protected"
24490
24490
  }),
24491
24491
  setSwingVertical: method(object({
24492
24492
  deviceId: number().int().nonnegative(),
24493
24493
  on: boolean()
24494
24494
  }), _void(), {
24495
24495
  kind: "mutation",
24496
- auth: "admin"
24496
+ auth: "protected"
24497
24497
  }),
24498
24498
  setSwingHorizontal: method(object({
24499
24499
  deviceId: number().int().nonnegative(),
24500
24500
  on: boolean()
24501
24501
  }), _void(), {
24502
24502
  kind: "mutation",
24503
- auth: "admin"
24503
+ auth: "protected"
24504
24504
  })
24505
24505
  },
24506
24506
  status: {
@@ -24600,7 +24600,7 @@ var colorCapability = {
24600
24600
  color: ColorInputSchema
24601
24601
  }), _void(), {
24602
24602
  kind: "mutation",
24603
- auth: "admin"
24603
+ auth: "protected"
24604
24604
  }) },
24605
24605
  events: {
24606
24606
  /**
@@ -24937,7 +24937,7 @@ var controlCapability = {
24937
24937
  control: ControlSetValueInputSchema
24938
24938
  }), _void(), {
24939
24939
  kind: "mutation",
24940
- auth: "admin"
24940
+ auth: "protected"
24941
24941
  }) },
24942
24942
  status: {
24943
24943
  schema: ControlStatusSchema,
@@ -24983,29 +24983,29 @@ var coverCapability = {
24983
24983
  methods: {
24984
24984
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
24985
24985
  kind: "mutation",
24986
- auth: "admin"
24986
+ auth: "protected"
24987
24987
  }),
24988
24988
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
24989
24989
  kind: "mutation",
24990
- auth: "admin"
24990
+ auth: "protected"
24991
24991
  }),
24992
24992
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
24993
24993
  kind: "mutation",
24994
- auth: "admin"
24994
+ auth: "protected"
24995
24995
  }),
24996
24996
  setPosition: method(object({
24997
24997
  deviceId: number().int().nonnegative(),
24998
24998
  position: number().min(0).max(100)
24999
24999
  }), _void(), {
25000
25000
  kind: "mutation",
25001
- auth: "admin"
25001
+ auth: "protected"
25002
25002
  }),
25003
25003
  setTiltPosition: method(object({
25004
25004
  deviceId: number().int().nonnegative(),
25005
25005
  tiltPosition: number().min(0).max(100)
25006
25006
  }), _void(), {
25007
25007
  kind: "mutation",
25008
- auth: "admin"
25008
+ auth: "protected"
25009
25009
  })
25010
25010
  },
25011
25011
  status: {
@@ -25391,6 +25391,59 @@ var IdentitySampleInfoSchema = object({
25391
25391
  deviceId: number().int().optional(),
25392
25392
  base64: string().optional()
25393
25393
  });
25394
+ /**
25395
+ * One enrolled sample, judged against the gallery it lives in.
25396
+ *
25397
+ * The gallery is the one input to recognition nobody re-reads: a sample
25398
+ * enrolled from the wrong face keeps voting forever, and because the matches it
25399
+ * pulls then look confident, nobody goes back. The 2026-09-08 audit found
25400
+ * exactly one such pair on this cluster — a sample scoring 0.61 against three
25401
+ * samples of ANOTHER person, enrolled from the same camera in the same minute,
25402
+ * where every other cross-identity pair sits under 0.50.
25403
+ */
25404
+ var IdentitySampleAuditRowSchema = object({
25405
+ sampleId: string(),
25406
+ enrolledAt: number().int(),
25407
+ deviceId: number().int().optional(),
25408
+ source: _enum(["detected", "photo"]),
25409
+ /** The enrolled crop's media key, so the panel can show the evidence. */
25410
+ mediaKey: string().optional(),
25411
+ /**
25412
+ * False = the sample is stamped with a DIFFERENT face model, and a cosine
25413
+ * across feature spaces is a well-formed float with no meaning. Every number
25414
+ * below then says nothing — it must read as "cannot say", never as an
25415
+ * accusation and never as a clean bill: this list ends in a Remove button.
25416
+ */
25417
+ comparable: boolean(),
25418
+ /** Mean cosine against this person's other samples. Null when there are none
25419
+ * to compare with — never 0, which would read as "opposite". */
25420
+ selfMean: number().nullable(),
25421
+ /** The other person this sample looks most like, when it looks like one.
25422
+ * This is the half that convicts: not looking like yourself can be a hard
25423
+ * angle; looking like someone the gallery can NAME is a mis-enrolment. */
25424
+ bestForeign: object({
25425
+ identityId: string(),
25426
+ name: string(),
25427
+ score: number()
25428
+ }).optional(),
25429
+ /** 0 = nothing to say. Higher = look at this one sooner. */
25430
+ suspicion: number()
25431
+ });
25432
+ var IdentitySampleAuditSchema = object({
25433
+ identityId: string(),
25434
+ name: string(),
25435
+ /** The cluster face model every comparison was made in. */
25436
+ modelId: string(),
25437
+ totalSamples: number().int(),
25438
+ comparableSamples: number().int(),
25439
+ flagged: number().int(),
25440
+ /** The bar `flagged` counts against, so the panel states the RULE and not
25441
+ * only its current result. */
25442
+ flagThreshold: number(),
25443
+ /** Worst first. A row with nothing to say still appears, at the bottom: the
25444
+ * operator asked to see the gallery, not only its accusations. */
25445
+ rows: array(IdentitySampleAuditRowSchema).readonly()
25446
+ });
25394
25447
  var FaceInfoSchema = object({
25395
25448
  faceId: string(),
25396
25449
  deviceId: number().int(),
@@ -25542,7 +25595,7 @@ includeCrops: boolean().optional() }).optional(), array(IdentitySchema).readonly
25542
25595
  }), method(object({ id: string() }), _void(), {
25543
25596
  kind: "mutation",
25544
25597
  auth: "admin"
25545
- }), method(object({ identityId: string() }), array(IdentitySampleInfoSchema).readonly()), method(object({
25598
+ }), method(object({ identityId: string() }), array(IdentitySampleInfoSchema).readonly()), method(object({ identityId: string().min(1) }), IdentitySampleAuditSchema, { auth: "admin" }), method(object({
25546
25599
  identityId: string(),
25547
25600
  sampleId: string()
25548
25601
  }), _void(), {
@@ -25735,28 +25788,28 @@ var fanControlCapability = {
25735
25788
  percentage: number().min(0).max(100)
25736
25789
  }), _void(), {
25737
25790
  kind: "mutation",
25738
- auth: "admin"
25791
+ auth: "protected"
25739
25792
  }),
25740
25793
  setPreset: method(object({
25741
25794
  deviceId: number().int().nonnegative(),
25742
25795
  preset: string().min(1)
25743
25796
  }), _void(), {
25744
25797
  kind: "mutation",
25745
- auth: "admin"
25798
+ auth: "protected"
25746
25799
  }),
25747
25800
  setDirection: method(object({
25748
25801
  deviceId: number().int().nonnegative(),
25749
25802
  direction: FanDirectionSchema
25750
25803
  }), _void(), {
25751
25804
  kind: "mutation",
25752
- auth: "admin"
25805
+ auth: "protected"
25753
25806
  }),
25754
25807
  setOscillating: method(object({
25755
25808
  deviceId: number().int().nonnegative(),
25756
25809
  oscillating: boolean()
25757
25810
  }), _void(), {
25758
25811
  kind: "mutation",
25759
- auth: "admin"
25812
+ auth: "protected"
25760
25813
  })
25761
25814
  },
25762
25815
  status: {
@@ -25978,21 +26031,21 @@ var humidifierCapability = {
25978
26031
  on: boolean()
25979
26032
  }), _void(), {
25980
26033
  kind: "mutation",
25981
- auth: "admin"
26034
+ auth: "protected"
25982
26035
  }),
25983
26036
  setTargetHumidity: method(object({
25984
26037
  deviceId: number().int().nonnegative(),
25985
26038
  humidity: number().min(0).max(100)
25986
26039
  }), _void(), {
25987
26040
  kind: "mutation",
25988
- auth: "admin"
26041
+ auth: "protected"
25989
26042
  }),
25990
26043
  setMode: method(object({
25991
26044
  deviceId: number().int().nonnegative(),
25992
26045
  mode: string().min(1)
25993
26046
  }), _void(), {
25994
26047
  kind: "mutation",
25995
- auth: "admin"
26048
+ auth: "protected"
25996
26049
  })
25997
26050
  },
25998
26051
  status: {
@@ -26693,15 +26746,15 @@ var lawnMowerControlCapability = {
26693
26746
  methods: {
26694
26747
  startMowing: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26695
26748
  kind: "mutation",
26696
- auth: "admin"
26749
+ auth: "protected"
26697
26750
  }),
26698
26751
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26699
26752
  kind: "mutation",
26700
- auth: "admin"
26753
+ auth: "protected"
26701
26754
  }),
26702
26755
  dock: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26703
26756
  kind: "mutation",
26704
- auth: "admin"
26757
+ auth: "protected"
26705
26758
  })
26706
26759
  },
26707
26760
  status: {
@@ -26986,18 +27039,18 @@ var lockControlCapability = {
26986
27039
  code: string().min(1).optional()
26987
27040
  }), _void(), {
26988
27041
  kind: "mutation",
26989
- auth: "admin"
27042
+ auth: "protected"
26990
27043
  }),
26991
27044
  unlock: method(object({
26992
27045
  deviceId: number().int().nonnegative(),
26993
27046
  code: string().min(1).optional()
26994
27047
  }), _void(), {
26995
27048
  kind: "mutation",
26996
- auth: "admin"
27049
+ auth: "protected"
26997
27050
  }),
26998
27051
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26999
27052
  kind: "mutation",
27000
- auth: "admin"
27053
+ auth: "protected"
27001
27054
  })
27002
27055
  },
27003
27056
  status: {
@@ -27100,65 +27153,65 @@ var mediaPlayerCapability = {
27100
27153
  methods: {
27101
27154
  play: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27102
27155
  kind: "mutation",
27103
- auth: "admin"
27156
+ auth: "protected"
27104
27157
  }),
27105
27158
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27106
27159
  kind: "mutation",
27107
- auth: "admin"
27160
+ auth: "protected"
27108
27161
  }),
27109
27162
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27110
27163
  kind: "mutation",
27111
- auth: "admin"
27164
+ auth: "protected"
27112
27165
  }),
27113
27166
  next: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27114
27167
  kind: "mutation",
27115
- auth: "admin"
27168
+ auth: "protected"
27116
27169
  }),
27117
27170
  previous: method(object({ deviceId: number().int().nonnegative() }), _void(), {
27118
27171
  kind: "mutation",
27119
- auth: "admin"
27172
+ auth: "protected"
27120
27173
  }),
27121
27174
  seek: method(object({
27122
27175
  deviceId: number().int().nonnegative(),
27123
27176
  positionMs: number().int().nonnegative()
27124
27177
  }), _void(), {
27125
27178
  kind: "mutation",
27126
- auth: "admin"
27179
+ auth: "protected"
27127
27180
  }),
27128
27181
  setVolume: method(object({
27129
27182
  deviceId: number().int().nonnegative(),
27130
27183
  volumeLevel: number().min(0).max(100)
27131
27184
  }), _void(), {
27132
27185
  kind: "mutation",
27133
- auth: "admin"
27186
+ auth: "protected"
27134
27187
  }),
27135
27188
  setMute: method(object({
27136
27189
  deviceId: number().int().nonnegative(),
27137
27190
  muted: boolean()
27138
27191
  }), _void(), {
27139
27192
  kind: "mutation",
27140
- auth: "admin"
27193
+ auth: "protected"
27141
27194
  }),
27142
27195
  setShuffle: method(object({
27143
27196
  deviceId: number().int().nonnegative(),
27144
27197
  shuffle: boolean()
27145
27198
  }), _void(), {
27146
27199
  kind: "mutation",
27147
- auth: "admin"
27200
+ auth: "protected"
27148
27201
  }),
27149
27202
  setRepeat: method(object({
27150
27203
  deviceId: number().int().nonnegative(),
27151
27204
  repeat: MediaPlayerRepeatSchema
27152
27205
  }), _void(), {
27153
27206
  kind: "mutation",
27154
- auth: "admin"
27207
+ auth: "protected"
27155
27208
  }),
27156
27209
  selectSource: method(object({
27157
27210
  deviceId: number().int().nonnegative(),
27158
27211
  source: string().min(1)
27159
27212
  }), _void(), {
27160
27213
  kind: "mutation",
27161
- auth: "admin"
27214
+ auth: "protected"
27162
27215
  }),
27163
27216
  playMedia: method(object({
27164
27217
  deviceId: number().int().nonnegative(),
@@ -27169,7 +27222,7 @@ var mediaPlayerCapability = {
27169
27222
  mediaType: string().min(1)
27170
27223
  }), _void(), {
27171
27224
  kind: "mutation",
27172
- auth: "admin"
27225
+ auth: "protected"
27173
27226
  })
27174
27227
  },
27175
27228
  status: {
@@ -28762,27 +28815,27 @@ var petFeederCapability = {
28762
28815
  hopper2: gramsPortion.optional()
28763
28816
  }), _void(), {
28764
28817
  kind: "mutation",
28765
- auth: "admin"
28818
+ auth: "protected"
28766
28819
  }),
28767
28820
  /** Cancel an in-progress manual feed. */
28768
28821
  cancelFeed: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28769
28822
  kind: "mutation",
28770
- auth: "admin"
28823
+ auth: "protected"
28771
28824
  }),
28772
28825
  /** Reset the desiccant "days remaining" counter after replacing it. */
28773
28826
  resetDesiccant: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28774
28827
  kind: "mutation",
28775
- auth: "admin"
28828
+ auth: "protected"
28776
28829
  }),
28777
28830
  /** Mark a hopper as refilled (D4H/D4S/D4SH). */
28778
28831
  markFoodReplenished: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28779
28832
  kind: "mutation",
28780
- auth: "admin"
28833
+ auth: "protected"
28781
28834
  }),
28782
28835
  /** Call the pet with the recorded prompt (D3). */
28783
28836
  callPet: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28784
28837
  kind: "mutation",
28785
- auth: "admin"
28838
+ auth: "protected"
28786
28839
  }),
28787
28840
  /** Play a stored sound by id (D3 / D4H / D4SH). */
28788
28841
  playSound: method(object({
@@ -28790,7 +28843,7 @@ var petFeederCapability = {
28790
28843
  soundId: number().int().nonnegative()
28791
28844
  }), _void(), {
28792
28845
  kind: "mutation",
28793
- auth: "admin"
28846
+ auth: "protected"
28794
28847
  }),
28795
28848
  /** Toggle the child-lock (manual-lock) setting. */
28796
28849
  setChildLock: method(object({
@@ -28798,7 +28851,7 @@ var petFeederCapability = {
28798
28851
  on: boolean()
28799
28852
  }), _void(), {
28800
28853
  kind: "mutation",
28801
- auth: "admin"
28854
+ auth: "protected"
28802
28855
  }),
28803
28856
  /** Toggle the front indicator light. */
28804
28857
  setIndicatorLight: method(object({
@@ -28806,7 +28859,7 @@ var petFeederCapability = {
28806
28859
  on: boolean()
28807
28860
  }), _void(), {
28808
28861
  kind: "mutation",
28809
- auth: "admin"
28862
+ auth: "protected"
28810
28863
  }),
28811
28864
  /** Toggle the dispense chime. */
28812
28865
  setFeedSound: method(object({
@@ -28814,7 +28867,7 @@ var petFeederCapability = {
28814
28867
  on: boolean()
28815
28868
  }), _void(), {
28816
28869
  kind: "mutation",
28817
- auth: "admin"
28870
+ auth: "protected"
28818
28871
  }),
28819
28872
  /** Set the speaker / prompt volume level. */
28820
28873
  setVolume: method(object({
@@ -28822,7 +28875,7 @@ var petFeederCapability = {
28822
28875
  level: number().int().nonnegative()
28823
28876
  }), _void(), {
28824
28877
  kind: "mutation",
28825
- auth: "admin"
28878
+ auth: "protected"
28826
28879
  })
28827
28880
  },
28828
28881
  status: {
@@ -31118,7 +31171,7 @@ var switchCapability = {
31118
31171
  on: boolean()
31119
31172
  }), _void(), {
31120
31173
  kind: "mutation",
31121
- auth: "admin"
31174
+ auth: "protected"
31122
31175
  }) },
31123
31176
  events: { onStateChanged: { data: object({
31124
31177
  deviceId: number(),
@@ -32106,30 +32159,30 @@ var vacuumControlCapability = {
32106
32159
  methods: {
32107
32160
  start: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32108
32161
  kind: "mutation",
32109
- auth: "admin"
32162
+ auth: "protected"
32110
32163
  }),
32111
32164
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32112
32165
  kind: "mutation",
32113
- auth: "admin"
32166
+ auth: "protected"
32114
32167
  }),
32115
32168
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32116
32169
  kind: "mutation",
32117
- auth: "admin"
32170
+ auth: "protected"
32118
32171
  }),
32119
32172
  returnToBase: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32120
32173
  kind: "mutation",
32121
- auth: "admin"
32174
+ auth: "protected"
32122
32175
  }),
32123
32176
  locate: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32124
32177
  kind: "mutation",
32125
- auth: "admin"
32178
+ auth: "protected"
32126
32179
  }),
32127
32180
  setFanSpeed: method(object({
32128
32181
  deviceId: number().int().nonnegative(),
32129
32182
  speed: string().min(1)
32130
32183
  }), _void(), {
32131
32184
  kind: "mutation",
32132
- auth: "admin"
32185
+ auth: "protected"
32133
32186
  })
32134
32187
  },
32135
32188
  status: {
@@ -32173,22 +32226,22 @@ var valveCapability = {
32173
32226
  methods: {
32174
32227
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32175
32228
  kind: "mutation",
32176
- auth: "admin"
32229
+ auth: "protected"
32177
32230
  }),
32178
32231
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32179
32232
  kind: "mutation",
32180
- auth: "admin"
32233
+ auth: "protected"
32181
32234
  }),
32182
32235
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
32183
32236
  kind: "mutation",
32184
- auth: "admin"
32237
+ auth: "protected"
32185
32238
  }),
32186
32239
  setPosition: method(object({
32187
32240
  deviceId: number().int().nonnegative(),
32188
32241
  position: number().min(0).max(100)
32189
32242
  }), _void(), {
32190
32243
  kind: "mutation",
32191
- auth: "admin"
32244
+ auth: "protected"
32192
32245
  })
32193
32246
  },
32194
32247
  status: {
@@ -32287,21 +32340,21 @@ var waterHeaterCapability = {
32287
32340
  temp: number().finite()
32288
32341
  }), _void(), {
32289
32342
  kind: "mutation",
32290
- auth: "admin"
32343
+ auth: "protected"
32291
32344
  }),
32292
32345
  setOperationMode: method(object({
32293
32346
  deviceId: number().int().nonnegative(),
32294
32347
  mode: string().min(1)
32295
32348
  }), _void(), {
32296
32349
  kind: "mutation",
32297
- auth: "admin"
32350
+ auth: "protected"
32298
32351
  }),
32299
32352
  setAway: method(object({
32300
32353
  deviceId: number().int().nonnegative(),
32301
32354
  on: boolean()
32302
32355
  }), _void(), {
32303
32356
  kind: "mutation",
32304
- auth: "admin"
32357
+ auth: "protected"
32305
32358
  })
32306
32359
  },
32307
32360
  status: {
@@ -36035,6 +36088,12 @@ Object.freeze({
36035
36088
  addonId: null,
36036
36089
  access: "create"
36037
36090
  },
36091
+ "faceGallery.auditIdentitySamples": {
36092
+ capName: "face-gallery",
36093
+ capScope: "system",
36094
+ addonId: null,
36095
+ access: "view"
36096
+ },
36038
36097
  "faceGallery.createIdentity": {
36039
36098
  capName: "face-gallery",
36040
36099
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-wyze",
3
- "version": "0.2.88",
3
+ "version": "0.2.90",
4
4
  "description": "Wyze camera device-provider addon for CamStack — wraps the @apocaliss92/wyze-bridge-js P2P/DTLS client, feeding the stream-broker via the pull-rfc4571 lazy-publish path (a structural twin of addon-provider-reolink)",
5
5
  "keywords": [
6
6
  "camstack",