@camstack/addon-provider-homeassistant 1.2.646 → 1.2.648

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.
@@ -5971,7 +5971,7 @@ var ZodIssueCode = {
5971
5971
  var ZodFirstPartyTypeKind;
5972
5972
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5973
5973
  //#endregion
5974
- //#region ../types/dist/sleep-_4vKNWxb.mjs
5974
+ //#region ../types/dist/sleep-Bei295Bz.mjs
5975
5975
  /**
5976
5976
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5977
5977
  * window to float samples (D455).
@@ -6487,6 +6487,53 @@ function emitReadiness(bus, params) {
6487
6487
  ts
6488
6488
  }));
6489
6489
  }
6490
+ /** Why a catalogue entry is not a runnable body of its declared kind. */
6491
+ var AddonMigrationDefinitionError = class extends Error {
6492
+ id;
6493
+ constructor(id, message) {
6494
+ super(`${id}: ${message}`);
6495
+ this.id = id;
6496
+ this.name = "AddonMigrationDefinitionError";
6497
+ }
6498
+ };
6499
+ /**
6500
+ * Bind a catalogue to the addon's ports. Throws {@link AddonMigrationDefinitionError} when
6501
+ * an entry's `bodyKind` does not match the body it carries, or is `sql` (a hub-only
6502
+ * body). A throwing body never escapes `execute`: it is reported as a failed result.
6503
+ */
6504
+ function defineAddonMigrations(catalogue, ports) {
6505
+ return catalogue.map((entry) => {
6506
+ const { meta } = entry;
6507
+ if ("plan" in entry) {
6508
+ if (meta.bodyKind !== "plan") throw new AddonMigrationDefinitionError(meta.id, `carries a plan body but declares "${meta.bodyKind}"`);
6509
+ return {
6510
+ meta,
6511
+ execute: () => guarded(async () => ({
6512
+ kind: "plan",
6513
+ plan: await entry.plan(ports)
6514
+ }))
6515
+ };
6516
+ }
6517
+ if (meta.bodyKind !== "procedure") throw new AddonMigrationDefinitionError(meta.id, `carries a procedure body but declares "${meta.bodyKind}"`);
6518
+ return {
6519
+ meta,
6520
+ execute: () => guarded(async () => ({
6521
+ kind: "procedure",
6522
+ result: await entry.procedure(ports)
6523
+ }))
6524
+ };
6525
+ });
6526
+ }
6527
+ async function guarded(work) {
6528
+ try {
6529
+ return await work();
6530
+ } catch (err) {
6531
+ return {
6532
+ kind: "failed",
6533
+ error: errMsg(err)
6534
+ };
6535
+ }
6536
+ }
6490
6537
  var NOT_RUN = {
6491
6538
  declared: false,
6492
6539
  snapshot: null,
@@ -9717,6 +9764,7 @@ var CAP_NAMES = Object.freeze([
9717
9764
  "device-status",
9718
9765
  "dishwasher",
9719
9766
  "display-palette",
9767
+ "do-not-disturb",
9720
9768
  "doorbell",
9721
9769
  "embedding-encoder",
9722
9770
  "enum-sensor",
@@ -10476,6 +10524,10 @@ Object.freeze({
10476
10524
  "valueType": "string"
10477
10525
  }
10478
10526
  ],
10527
+ "do-not-disturb": [{
10528
+ "path": "enabled",
10529
+ "valueType": "boolean"
10530
+ }],
10479
10531
  "doorbell": [{
10480
10532
  "path": "lastPressedAt",
10481
10533
  "valueType": "number"
@@ -14118,6 +14170,16 @@ var MigrationPlanSchema = object({ edits: array(discriminatedUnion("op", [
14118
14170
  precondition: PreconditionSchema
14119
14171
  })
14120
14172
  ])) });
14173
+ /** `JSON.stringify` with object keys sorted, so equal values spell the same. */
14174
+ function canonicalJson(value) {
14175
+ if (Array.isArray(value)) return `[${value.map((item) => canonicalJson(item)).join(",")}]`;
14176
+ if (typeof value === "object" && value !== null) return `{${Object.entries(value).filter(([, item]) => item !== void 0).sort(([a], [b]) => a < b ? -1 : a > b ? 1 : 0).map(([key, item]) => `${JSON.stringify(key)}:${canonicalJson(item)}`).join(",")}}`;
14177
+ return JSON.stringify(value) ?? "null";
14178
+ }
14179
+ /** The precondition string for a value a plan read (`null` when it read nothing). */
14180
+ function preconditionOf(value) {
14181
+ return canonicalJson(value ?? null);
14182
+ }
14121
14183
  /**
14122
14184
  * What a `procedure` body reports. `already-done` means the rerun observed the
14123
14185
  * work finished (a crash between the work and the ledger row, or a manual fix)
@@ -16066,8 +16128,18 @@ var LogChannelDescriptorSchema = object({
16066
16128
  * the operator narrows to one camera, sees nothing, and concludes the code
16067
16129
  * path was never taken.
16068
16130
  */
16069
- perDevice: boolean()
16070
- });
16131
+ perDevice: boolean(),
16132
+ /**
16133
+ * What the channel is FOR, so the UI can list the channels an addon offers.
16134
+ *
16135
+ * - `diagnostic` (the default): a per-component diagnostic armed from the
16136
+ * Levels page, emitted at its declared level.
16137
+ * - `debug`: a `debug.<channel>` dump watched live for a short window
16138
+ * (`ctx.debug`). Always per-device, and its lines are denied by the log
16139
+ * ring unless somebody is watching that device.
16140
+ */
16141
+ kind: _enum(["diagnostic", "debug"]).default("diagnostic")
16142
+ }).refine((d) => d.kind !== "debug" || d.name.startsWith("debug.") && d.perDevice, { message: "a debug channel is named debug.<channel> and is per-device" });
16071
16143
  /**
16072
16144
  * An armed window over one channel, as the document hands it to a mirror.
16073
16145
  *
@@ -20042,6 +20114,33 @@ var APPLIANCE_CAP_VOCABULARY = {
20042
20114
  }
20043
20115
  ]
20044
20116
  },
20117
+ "do-not-disturb": {
20118
+ scope: "device",
20119
+ noun: t("Do not disturb", "Non disturbare"),
20120
+ actions: [{
20121
+ id: "dnd.on",
20122
+ method: "setEnabled",
20123
+ label: t("Do not disturb on", "Attiva Non disturbare"),
20124
+ phrase: t("Turn on Do not disturb on {device}", "Attiva Non disturbare su {device}"),
20125
+ icon: "bell-off",
20126
+ args: { enabled: true }
20127
+ }, {
20128
+ id: "dnd.off",
20129
+ method: "setEnabled",
20130
+ label: t("Do not disturb off", "Disattiva Non disturbare"),
20131
+ phrase: t("Turn off Do not disturb on {device}", "Disattiva Non disturbare su {device}"),
20132
+ icon: "bell",
20133
+ args: { enabled: false }
20134
+ }],
20135
+ state: [{
20136
+ kind: "boolean",
20137
+ field: "enabled",
20138
+ label: t("Do not disturb", "Non disturbare"),
20139
+ whenTrue: t("When Do not disturb turns on on {device}", "Quando {device} attiva Non disturbare"),
20140
+ whenFalse: t("When Do not disturb turns off on {device}", "Quando {device} disattiva Non disturbare"),
20141
+ icon: "bell-off"
20142
+ }]
20143
+ },
20045
20144
  update: {
20046
20145
  scope: "device",
20047
20146
  noun: t("Firmware update", "Aggiornamento firmware"),
@@ -42252,14 +42351,16 @@ var DeviceIsLeafSchema = object({
42252
42351
  });
42253
42352
  /**
42254
42353
  * True when the camera currently has a PARKED object matching `subjects` in at
42255
- * least one of `zones`. Reads the zone-analytics snapshot through the same
42354
+ * least one of `zones` (`minCount` of them, default one). Reads the zone-analytics snapshot through the same
42256
42355
  * mirror as every other state leaf, so a dropped event never decides it (D49).
42257
42356
  */
42258
42357
  var StationaryPresentLeafSchema = object({
42259
42358
  kind: literal("stationary-present"),
42260
42359
  deviceId: number().int().nonnegative(),
42261
42360
  subjects: array(StationarySubjectSchema).min(1).optional(),
42262
- zones: array(string().min(1)).min(1).optional()
42361
+ zones: array(string().min(1)).min(1).optional(),
42362
+ /** How many matching parked objects must be there; absent means one. */
42363
+ minCount: number().int().positive().optional()
42263
42364
  });
42264
42365
  /**
42265
42366
  * The escape hatch: the bounded expression engine over named device bindings.
@@ -42771,6 +42872,28 @@ function convertLegacyRecipe(legacy) {
42771
42872
  * it. The output type is always the new one.
42772
42873
  */
42773
42874
  var AutomationRecipeSchema = union([CurrentAutomationRecipeSchema, LegacyAutomationRecipeSchema.transform(convertLegacyRecipe)]);
42875
+ var DETECTION_DESCRIPTIONS = {
42876
+ deviceId: "the camera that saw it",
42877
+ className: "what it saw",
42878
+ trackId: "the track",
42879
+ score: "how sure the detector was",
42880
+ label: "the label it matched (a name, a plate), empty when none"
42881
+ };
42882
+ var STATIONARY_DESCRIPTIONS = {
42883
+ deviceId: "the camera that saw it",
42884
+ className: "what it saw",
42885
+ zones: "the zones it is in",
42886
+ phase: "appeared or departed",
42887
+ entryId: "the stopped object"
42888
+ };
42889
+ function describe$1(descriptions) {
42890
+ return Object.entries(descriptions).map(([name, description]) => ({
42891
+ name,
42892
+ description
42893
+ }));
42894
+ }
42895
+ describe$1(DETECTION_DESCRIPTIONS);
42896
+ describe$1(STATIONARY_DESCRIPTIONS);
42774
42897
  new Set(Object.values(COCO_TO_MACRO.mapping));
42775
42898
  /**
42776
42899
  * Schedulers (D983) — an entity that performs actions over the day.
@@ -51558,6 +51681,45 @@ var deviceProviderCapability = {
51558
51681
  }
51559
51682
  };
51560
51683
  /**
51684
+ * What the passive listener of `local-network` saw on the wire, before any
51685
+ * provider classified it. Device-manager turns an observation into the hits
51686
+ * of the providers whose declared discovery modes it matches.
51687
+ */
51688
+ var DiscoveryObservationSchema = discriminatedUnion("kind", [object({
51689
+ kind: literal("mdns"),
51690
+ /** Normalised DNS-SD service type, e.g. `_esphomelib._tcp`. */
51691
+ serviceType: string(),
51692
+ instance: string(),
51693
+ host: string(),
51694
+ /** The A record address when the announcement carried one. */
51695
+ address: string().nullable(),
51696
+ port: number().int(),
51697
+ txt: record(string(), string())
51698
+ }), object({
51699
+ kind: literal("ssdp"),
51700
+ /** Sender address of the datagram. */
51701
+ host: string(),
51702
+ port: number().int(),
51703
+ /** `NT` of a NOTIFY, `ST` of a search response. */
51704
+ target: string(),
51705
+ headers: record(string(), string())
51706
+ })]);
51707
+ object({
51708
+ addonId: string(),
51709
+ candidate: DiscoveryCandidateSchema,
51710
+ firstSeenAt: number(),
51711
+ lastSeenAt: number(),
51712
+ dismissed: boolean()
51713
+ });
51714
+ var DiscoveryProposalSchema = object({
51715
+ id: string(),
51716
+ addonId: string(),
51717
+ candidate: DiscoveryCandidateSchema,
51718
+ firstSeenAt: number(),
51719
+ lastSeenAt: number(),
51720
+ dismissed: boolean()
51721
+ });
51722
+ /**
51561
51723
  * Device Manager capability — hub-side singleton that unifies device persistence,
51562
51724
  * live registry access, and all management operations into a single tRPC surface.
51563
51725
  *
@@ -52286,6 +52448,19 @@ method(object({
52286
52448
  }), object({ candidates: array(DiscoveryCandidateSchema).readonly() }), {
52287
52449
  kind: "mutation",
52288
52450
  auth: "admin"
52451
+ }), method(object({}), object({ proposals: array(DiscoveryProposalSchema).readonly() }), { auth: "admin" }), method(object({ id: string() }), object({ dismissed: boolean() }), {
52452
+ kind: "mutation",
52453
+ auth: "admin"
52454
+ }), method(object({ observations: array(DiscoveryObservationSchema).max(512) }), object({ proposed: number().int() }), {
52455
+ kind: "mutation",
52456
+ auth: "admin"
52457
+ }), method(object({}), object({
52458
+ providers: number().int(),
52459
+ proposed: number().int()
52460
+ }), {
52461
+ kind: "mutation",
52462
+ auth: "admin",
52463
+ timeoutMs: 12e4
52289
52464
  }), method(object({ addonId: string() }), object({ deviceType: _enum(DeviceType).nullable() }), { auth: "admin" }), method(object({ addonId: string() }), unknown(), { auth: "admin" }), method(object({
52290
52465
  deviceId: number(),
52291
52466
  key: string(),
@@ -53735,6 +53910,49 @@ method(_void(), paletteResultSchema, {
53735
53910
  kind: "mutation",
53736
53911
  auth: "admin"
53737
53912
  });
53913
+ /**
53914
+ * do-not-disturb - whether a speaker or display holds back its own sounds
53915
+ * (announcements, notifications, alarms) until the operator lets it speak again.
53916
+ *
53917
+ * It is NOT part of `media-player`: a player is about what it plays and how
53918
+ * loud, while Do Not Disturb is a household switch the vendor keeps per device.
53919
+ * `enabled` is null when the vendor has not said (never a guess of `false`).
53920
+ */
53921
+ var DoNotDisturbStatusSchema = object({
53922
+ /** True while Do Not Disturb is on; null when unknown. */
53923
+ enabled: boolean().nullable().meta({ label: "Do not disturb" }),
53924
+ /** Ms epoch of the last read or write that set `enabled`. */
53925
+ lastChangedAt: number()
53926
+ });
53927
+ var doNotDisturbCapability = {
53928
+ name: "do-not-disturb",
53929
+ scope: "device",
53930
+ deviceNative: true,
53931
+ mode: "singleton",
53932
+ deviceTypes: [DeviceType.MediaPlayer],
53933
+ methods: { setEnabled: method(object({
53934
+ deviceId: number().int(),
53935
+ enabled: boolean()
53936
+ }), _void(), {
53937
+ kind: "mutation",
53938
+ auth: "protected"
53939
+ }) },
53940
+ status: {
53941
+ schema: DoNotDisturbStatusSchema,
53942
+ kind: "push"
53943
+ },
53944
+ runtimeState: DoNotDisturbStatusSchema,
53945
+ /**
53946
+ * Runtime-state durability: **session** - the vendor owns the switch and the
53947
+ * device re-reads it on the next poll, so a restored value would only be stale.
53948
+ *
53949
+ * See `RuntimeStateDurability`. Enforced by
53950
+ * `scripts/check-runtime-state-durability.ts`.
53951
+ */
53952
+ durability: "session",
53953
+ /** History (D850): when Do Not Disturb was switched on and off. */
53954
+ history: { fields: { enabled: { kind: "boolean" } } }
53955
+ };
53738
53956
  /** Pulse override: a rising edge advances `lastPressedAt` and the press count. */
53739
53957
  var doorbellCustomize = {
53740
53958
  version: 1,
@@ -56336,6 +56554,14 @@ var LlmGenerateBaseInputSchema = object({
56336
56554
  topP: number().min(0).max(1).optional(),
56337
56555
  /** Per-call override of the profile default (top-k sampling). */
56338
56556
  topK: number().int().positive().optional(),
56557
+ /** Per-call override of `profile.reasoningEffort`. Sent only to a kind whose
56558
+ * descriptor offers the field; a kind that does not never sends it. */
56559
+ reasoningEffort: _enum([
56560
+ "off",
56561
+ "low",
56562
+ "medium",
56563
+ "high"
56564
+ ]).optional(),
56339
56565
  /** Per-call override of `profile.timeoutMs` — the total generation bound. */
56340
56566
  timeoutMs: number().int().positive().optional(),
56341
56567
  /** Per-call override; beats both the consumer table and the profile. */
@@ -56627,7 +56853,10 @@ var LlmProfileKindSchema = string().regex(/^[a-z0-9][a-z0-9-]{0,63}$/, "a kind i
56627
56853
  var LlmModelFeaturesSchema = object({
56628
56854
  vision: boolean(),
56629
56855
  tools: boolean(),
56630
- streaming: boolean()
56856
+ streaming: boolean(),
56857
+ /** Whether the model thinks before it answers. `null` = the endpoint does not
56858
+ * say; an editor then still offers the switch (unknown is not "no"). */
56859
+ reasoning: boolean().nullable().optional()
56631
56860
  });
56632
56861
  /** One model a provider offers. `features` overrides the kind's defaults, per field. */
56633
56862
  var LlmModelInfoSchema = object({
@@ -74837,9 +75066,17 @@ var ServerUpdateActionResultSchema = object({
74837
75066
  */
74838
75067
  requiredAddonUpdates: array(RequiredAddonUpdateSchema).optional()
74839
75068
  });
74840
- var LaunchOverridesSchema = object({
74841
- /** The persisted heap ceiling in MB, or `null` when none is set. */
74842
- heapMb: number().int().nullable() });
75069
+ var LaunchOverridesSchema = object({
75070
+ /** The persisted heap ceiling in MB, or `null` when none is set. */
75071
+ heapMb: number().int().nullable(),
75072
+ /** The persisted hub-main RSS budget in MB, or `null` when none is set. */
75073
+ rssBudgetMb: number().int().nullable()
75074
+ });
75075
+ var SetLaunchOverridesInputSchema = object({
75076
+ heapMb: number().int().min(512).max(65536).nullable(),
75077
+ /** Omitted keeps the stored budget; `null` clears it. */
75078
+ rssBudgetMb: number().int().min(512).max(65536).nullable().optional()
75079
+ });
74843
75080
  var SetLaunchOverridesResultSchema = LaunchOverridesSchema.extend({
74844
75081
  /** Always true: the override is read at launch, not by the running process. */
74845
75082
  restartRequired: boolean() });
@@ -74868,7 +75105,7 @@ method(_void(), ServerPackageStatusSchema, { auth: "admin" }), method(_void(), S
74868
75105
  }), method(_void(), ServerUpdateActionResultSchema, {
74869
75106
  kind: "mutation",
74870
75107
  auth: "admin"
74871
- }), method(_void(), LaunchOverridesSchema, { auth: "admin" }), method(object({ heapMb: number().int().min(512).max(65536).nullable() }), SetLaunchOverridesResultSchema, {
75108
+ }), method(_void(), LaunchOverridesSchema, { auth: "admin" }), method(SetLaunchOverridesInputSchema, SetLaunchOverridesResultSchema, {
74872
75109
  kind: "mutation",
74873
75110
  auth: "admin"
74874
75111
  });
@@ -76571,6 +76808,40 @@ var LoggingSettingsStateSchema = object({
76571
76808
  opsLogRetentionDays: number().int().min(0),
76572
76809
  persisted: boolean()
76573
76810
  });
76811
+ /**
76812
+ * Debug WATCH — a short, per-device window over `debug.<channel>` lines.
76813
+ *
76814
+ * `start` opens (or re-arms) a 10 minute window; `rearm` extends a LIVE one
76815
+ * and never revives a lapsed one; `stop` closes it; `list` only reads. No
76816
+ * chain of re-arms outlives 60 minutes from the first start. The hub holds the
76817
+ * watches in memory and pushes the interest to every node, so a watch lapses
76818
+ * by itself and survives nothing — a restart is a stop.
76819
+ */
76820
+ var DebugWatchInputSchema = object({
76821
+ action: _enum([
76822
+ "list",
76823
+ "start",
76824
+ "rearm",
76825
+ "stop"
76826
+ ]),
76827
+ /** Full channel names, `debug.<channel>`, each declared with `kind: 'debug'`. */
76828
+ channels: array(string().min(1)).readonly().default([]),
76829
+ /** Numeric device ids. Required (non-empty) for `start`. */
76830
+ deviceIds: array(number().int()).readonly().default([])
76831
+ });
76832
+ var DebugWatchStateSchema = object({
76833
+ channel: string(),
76834
+ deviceIds: array(number().int()).readonly(),
76835
+ startedAtMs: number(),
76836
+ untilMs: number(),
76837
+ capAtMs: number()
76838
+ });
76839
+ var DebugWatchResultSchema = object({
76840
+ nowMs: number(),
76841
+ watches: array(DebugWatchStateSchema).readonly(),
76842
+ /** Channels a `rearm` found already lapsed: nothing was revived. */
76843
+ lapsed: array(string()).readonly()
76844
+ });
76574
76845
  method(_void(), SystemInfoSchema), method(_void(), HealthStatusSchema), method(_void(), FeatureManifestSchema), method(_void(), array(NetworkAddressSchema).readonly()), method(_void(), unknown().nullable(), { auth: "admin" }), method(record(string(), unknown()), _null(), {
76575
76846
  kind: "mutation",
76576
76847
  auth: "admin"
@@ -76586,6 +76857,9 @@ method(_void(), SystemInfoSchema), method(_void(), HealthStatusSchema), method(_
76586
76857
  }), method(_void(), RequestCensusStatusSchema, { auth: "admin" }), method(_void(), array(ReportedLoadContributionSchema).readonly(), { auth: "admin" }), method(_void(), array(ReportedFailureContributionSchema).readonly(), { auth: "admin" }), method(GetLoggingSettingsInputSchema, LoggingSettingsStateSchema, { auth: "admin" }), method(SetLoggingSettingsInputSchema, LoggingSettingsStateSchema, {
76587
76858
  kind: "mutation",
76588
76859
  auth: "admin"
76860
+ }), method(DebugWatchInputSchema, DebugWatchResultSchema, {
76861
+ kind: "mutation",
76862
+ auth: "admin"
76589
76863
  });
76590
76864
  /**
76591
76865
  * Tamper / case-open detection sensor. Drives Home Assistant
@@ -80137,6 +80411,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
80137
80411
  deviceDiscovery: deviceDiscoveryCapability,
80138
80412
  deviceStatus: deviceStatusCapability,
80139
80413
  dishwasher: dishwasherCapability,
80414
+ doNotDisturb: doNotDisturbCapability,
80140
80415
  doorbell: doorbellCapability,
80141
80416
  enumSensor: enumSensorCapability,
80142
80417
  eventEmitter: eventEmitterCapability,
@@ -83694,6 +83969,13 @@ Object.freeze({
83694
83969
  access: "view",
83695
83970
  role: "admin"
83696
83971
  },
83972
+ "deviceManager.dismissDiscoveryProposal": {
83973
+ capName: "device-manager",
83974
+ capScope: "system",
83975
+ addonId: null,
83976
+ access: "create",
83977
+ role: "admin"
83978
+ },
83697
83979
  "deviceManager.enable": {
83698
83980
  capName: "device-manager",
83699
83981
  capScope: "system",
@@ -83876,6 +84158,13 @@ Object.freeze({
83876
84158
  access: "view",
83877
84159
  role: "viewer"
83878
84160
  },
84161
+ "deviceManager.listDiscoveryProposals": {
84162
+ capName: "device-manager",
84163
+ capScope: "system",
84164
+ addonId: null,
84165
+ access: "view",
84166
+ role: "admin"
84167
+ },
83879
84168
  "deviceManager.listLocationDescriptions": {
83880
84169
  capName: "device-manager",
83881
84170
  capScope: "system",
@@ -84030,6 +84319,13 @@ Object.freeze({
84030
84319
  access: "create",
84031
84320
  role: "admin"
84032
84321
  },
84322
+ "deviceManager.reportDiscoveryObservations": {
84323
+ capName: "device-manager",
84324
+ capScope: "system",
84325
+ addonId: null,
84326
+ access: "create",
84327
+ role: "admin"
84328
+ },
84033
84329
  "deviceManager.runDeviceAction": {
84034
84330
  capName: "device-manager",
84035
84331
  capScope: "system",
@@ -84037,6 +84333,13 @@ Object.freeze({
84037
84333
  access: "create",
84038
84334
  role: "admin"
84039
84335
  },
84336
+ "deviceManager.runDiscoverySweep": {
84337
+ capName: "device-manager",
84338
+ capScope: "system",
84339
+ addonId: null,
84340
+ access: "create",
84341
+ role: "admin"
84342
+ },
84040
84343
  "deviceManager.setChildLayout": {
84041
84344
  capName: "device-manager",
84042
84345
  capScope: "system",
@@ -84590,6 +84893,20 @@ Object.freeze({
84590
84893
  access: "create",
84591
84894
  role: "admin"
84592
84895
  },
84896
+ "doNotDisturb.getStatus": {
84897
+ capName: "do-not-disturb",
84898
+ capScope: "device",
84899
+ addonId: null,
84900
+ access: "view",
84901
+ role: "viewer"
84902
+ },
84903
+ "doNotDisturb.setEnabled": {
84904
+ capName: "do-not-disturb",
84905
+ capScope: "device",
84906
+ addonId: null,
84907
+ access: "create",
84908
+ role: "viewer"
84909
+ },
84593
84910
  "doorbell.getStatus": {
84594
84911
  capName: "doorbell",
84595
84912
  capScope: "device",
@@ -90610,6 +90927,13 @@ Object.freeze({
90610
90927
  access: "create",
90611
90928
  role: "viewer"
90612
90929
  },
90930
+ "system.debugWatch": {
90931
+ capName: "system",
90932
+ capScope: "system",
90933
+ addonId: null,
90934
+ access: "create",
90935
+ role: "admin"
90936
+ },
90613
90937
  "system.detectSiteLocation": {
90614
90938
  capName: "system",
90615
90939
  capScope: "system",
@@ -92789,6 +93113,16 @@ Object.freeze({
92789
93113
  form: "single",
92790
93114
  optional: false
92791
93115
  }],
93116
+ "doNotDisturb.getStatus": [{
93117
+ name: "deviceId",
93118
+ form: "single",
93119
+ optional: false
93120
+ }],
93121
+ "doNotDisturb.setEnabled": [{
93122
+ name: "deviceId",
93123
+ form: "single",
93124
+ optional: false
93125
+ }],
92792
93126
  "doorbell.getStatus": [{
92793
93127
  name: "deviceId",
92794
93128
  form: "single",
@@ -94529,6 +94863,11 @@ Object.freeze({
94529
94863
  form: "single",
94530
94864
  optional: false
94531
94865
  }],
94866
+ "system.debugWatch": [{
94867
+ name: "deviceIds",
94868
+ form: "array",
94869
+ optional: true
94870
+ }],
94532
94871
  "tamper.getStatus": [{
94533
94872
  name: "deviceId",
94534
94873
  form: "single",
@@ -96695,4 +97034,4 @@ async function listHomeAssistantBrokers(query) {
96695
97034
  return (await query({})).filter((broker) => broker.kind === HA_BROKER_KIND);
96696
97035
  }
96697
97036
  //#endregion
96698
- export { humiditySensorCapability as $, number as $t, brokerCapability as A, temperatureSensorCapability as At, consumableKindOf as B, RecordSecretUnavailableError as Bt, alarmPanelCapability as C, runningFromVacuumState as Ct, bestLocationMatch as D, smokeCapability as Dt, batteryCapability as E, sendToExportedTarget as Et, carbonMonoxideCapability as F, valveCapability as Ft, deviceAdoptionCapability as G, entryBody as Gt, controlCapability as H, createEvent as Ht, climateControlCapability as I, vibrationCapability as It, eventEmitterCapability as J, _enum as Jt, deviceExportCapability as K, isReadingQuantity as Kt, colorCapability as L, waterHeaterCapability as Lt, buildDeviceAdminUrl as M, tryConvertUnit as Mt, buttonCapability as N, updateCapability as Nt, binaryCapability as O, switchCapability as Ot, calendarSourceCapability as P, vacuumControlCapability as Pt, humidifierCapability as Q, literal as Qt, connectivityCapability as R, weatherCapability as Rt, airQualitySensorCapability as S, runningFromMediaPlayer as St, automationControlCapability as T, scriptRunnerCapability as Tt, coverCapability as U, defineEntryKind as Ut, contactCapability as V, baseUnitOf as Vt, deviceAdminLinkCapability as W, defineRecordKinds as Wt, floodCapability as X, boolean as Xt, fanControlCapability as Y, array as Yt, gasCapability as Z, discriminatedUnion as Zt, PLUG_APPLIANCE_TYPES as _, publicEndpointReaderFrom as _t, BaseDevice as a, url as an, motionCapability as at, accessoriesCapability as b, runExportedAction as bt, COCO_TO_MACRO as c, DeviceType as cn, notifierCapability as ct, ConsumableItemSchema as d, parseAdminBase as dt, object as en, imageCapability as et, ConsumableStatusSchema as f, powerMeterCapability as ft, MediaPlayerRepeatSchema as g, pruneDeletedEntities as gt, HvacModeSchema as h, pressureSensorCapability as ht, AlarmArmModeSchema as i, unknown as in, mediaPlayerCapability as it, buildAddonRouteProvider as j, tryConvertDelta as jt, brightnessCapability as k, tamperCapability as kt, CameraSwitchIdSchema as l, errMsg as ln, numericSensorCapability as lt, FanDirectionSchema as m, presenceCapability as mt, HA_PROVIDER_ADDON_ID as n, string as nn, lawnMowerControlCapability as nt, BaseDeviceProvider as o, DeviceFeature as on, normalizeUnit as ot, EnumSensorDateTimeFormatSchema as p, prepareNotification as pt, enumSensorCapability as q, nodePin as qt, listHomeAssistantBrokers as r, union as rn, lockControlCapability as rt, CAMERA_SWITCH_ORDER as s, DeviceRole as sn, notificationOutputCapability as st, HA_BROKER_KIND as t, record as tn, ingestReading as tt, ConsumableFormSchema as u, EventCategory as un, oauthIntegrationCapability as ut, RUNNING_STATE_COLD as v, quantityFromUnit as vt, ambientLightSensorCapability as w, runningStateCapability as wt, addonRoutesCapability as x, runningFromLawnMower as xt, TargetSchema as y, resolveAttachmentUrls as yt, consumableFormOf as z, BaseAddon as zt };
97037
+ export { humiditySensorCapability as $, discriminatedUnion as $t, brokerCapability as A, tamperCapability as At, consumableKindOf as B, BaseAddon as Bt, alarmPanelCapability as C, runningFromMediaPlayer as Ct, bestLocationMatch as D, sendToExportedTarget as Dt, batteryCapability as E, scriptRunnerCapability as Et, carbonMonoxideCapability as F, vacuumControlCapability as Ft, deviceAdoptionCapability as G, defineEntryKind as Gt, controlCapability as H, baseUnitOf as Ht, climateControlCapability as I, valveCapability as It, eventEmitterCapability as J, isReadingQuantity as Jt, deviceExportCapability as K, defineRecordKinds as Kt, colorCapability as L, vibrationCapability as Lt, buildDeviceAdminUrl as M, tryConvertDelta as Mt, buttonCapability as N, tryConvertUnit as Nt, binaryCapability as O, smokeCapability as Ot, calendarSourceCapability as P, updateCapability as Pt, humidifierCapability as Q, boolean as Qt, connectivityCapability as R, waterHeaterCapability as Rt, airQualitySensorCapability as S, runningFromLawnMower as St, automationControlCapability as T, runningStateCapability as Tt, coverCapability as U, createEvent as Ut, contactCapability as V, RecordSecretUnavailableError as Vt, deviceAdminLinkCapability as W, defineAddonMigrations as Wt, floodCapability as X, _enum as Xt, fanControlCapability as Y, nodePin as Yt, gasCapability as Z, array as Zt, PLUG_APPLIANCE_TYPES as _, pruneDeletedEntities as _t, BaseDevice as a, union as an, motionCapability as at, accessoriesCapability as b, resolveAttachmentUrls as bt, COCO_TO_MACRO as c, DeviceFeature as cn, notifierCapability as ct, ConsumableItemSchema as d, errMsg as dn, parseAdminBase as dt, literal as en, imageCapability as et, ConsumableStatusSchema as f, EventCategory as fn, powerMeterCapability as ft, MediaPlayerRepeatSchema as g, pressureSensorCapability as gt, HvacModeSchema as h, presenceCapability as ht, AlarmArmModeSchema as i, string as in, mediaPlayerCapability as it, buildAddonRouteProvider as j, temperatureSensorCapability as jt, brightnessCapability as k, switchCapability as kt, CameraSwitchIdSchema as l, DeviceRole as ln, numericSensorCapability as lt, FanDirectionSchema as m, prepareNotification as mt, HA_PROVIDER_ADDON_ID as n, object as nn, lawnMowerControlCapability as nt, BaseDeviceProvider as o, unknown as on, normalizeUnit as ot, EnumSensorDateTimeFormatSchema as p, preconditionOf as pt, enumSensorCapability as q, entryBody as qt, listHomeAssistantBrokers as r, record as rn, lockControlCapability as rt, CAMERA_SWITCH_ORDER as s, url as sn, notificationOutputCapability as st, HA_BROKER_KIND as t, number as tn, ingestReading as tt, ConsumableFormSchema as u, DeviceType as un, oauthIntegrationCapability as ut, RUNNING_STATE_COLD as v, publicEndpointReaderFrom as vt, ambientLightSensorCapability as w, runningFromVacuumState as wt, addonRoutesCapability as x, runExportedAction as xt, TargetSchema as y, quantityFromUnit as yt, consumableFormOf as z, weatherCapability as zt };