@camstack/system 1.2.480 → 1.2.482

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 (84) hide show
  1. package/dist/{agent-https-6j9JDvjh.mjs → agent-https-doVPSeiy.mjs} +1 -1
  2. package/dist/{agent-https-DDnP9ywM.js → agent-https-o3X-jkS7.js} +1 -1
  3. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  7. package/dist/builtins/alerts/alerts.addon.js +1 -1
  8. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  9. package/dist/builtins/autotrack/index.js +1 -1
  10. package/dist/builtins/autotrack/index.mjs +1 -1
  11. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  12. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  13. package/dist/builtins/calendars/calendars.addon.js +1 -1
  14. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  15. package/dist/builtins/camera-grid/index.js +1 -1
  16. package/dist/builtins/camera-grid/index.mjs +1 -1
  17. package/dist/builtins/composer/composer.addon.js +11 -3
  18. package/dist/builtins/composer/composer.addon.mjs +11 -3
  19. package/dist/builtins/console-logging/index.js +1 -1
  20. package/dist/builtins/console-logging/index.mjs +1 -1
  21. package/dist/builtins/core-blocks/core-blocks.addon.js +4 -4
  22. package/dist/builtins/core-blocks/core-blocks.addon.mjs +4 -4
  23. package/dist/builtins/device-history/device-history.addon.js +2 -2
  24. package/dist/builtins/device-history/device-history.addon.mjs +2 -2
  25. package/dist/builtins/device-manager/device-manager.addon.js +1 -1
  26. package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
  27. package/dist/builtins/hub-forwarder/index.js +1 -1
  28. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  29. package/dist/builtins/keychain/index.js +3 -3
  30. package/dist/builtins/keychain/index.mjs +3 -3
  31. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  32. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  33. package/dist/builtins/local-auth/local-auth.addon.js +2 -2
  34. package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
  35. package/dist/builtins/local-network/local-network.addon.js +2 -2
  36. package/dist/builtins/local-network/local-network.addon.mjs +2 -2
  37. package/dist/builtins/loki-logging/index.js +1 -1
  38. package/dist/builtins/loki-logging/index.mjs +1 -1
  39. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  40. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  41. package/dist/builtins/platform-probe/index.js +1 -1
  42. package/dist/builtins/platform-probe/index.mjs +1 -1
  43. package/dist/builtins/record-entries/index.js +1 -1
  44. package/dist/builtins/record-entries/index.mjs +1 -1
  45. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  46. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  47. package/dist/builtins/snapshot/index.js +1 -1
  48. package/dist/builtins/snapshot/index.mjs +1 -1
  49. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  50. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  51. package/dist/builtins/sqlite-storage/index.js +1 -1
  52. package/dist/builtins/sqlite-storage/index.mjs +1 -1
  53. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +2 -2
  54. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +2 -2
  55. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  56. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  57. package/dist/builtins/system-config/system-config.addon.js +3 -3
  58. package/dist/builtins/system-config/system-config.addon.mjs +3 -3
  59. package/dist/builtins/winston-logging/index.js +1 -1
  60. package/dist/builtins/winston-logging/index.mjs +1 -1
  61. package/dist/{composition-sources-DTchGK8d.js → composition-sources-BmhhDWIc.js} +1 -1
  62. package/dist/{composition-sources-CcxoCFH6.mjs → composition-sources-BrDtOpfE.mjs} +1 -1
  63. package/dist/{constants-Bc-5tr1I.js → constants-BVJrLycr.js} +1 -1
  64. package/dist/{constants-BUf0tYhG.mjs → constants-xuLNi4a2.mjs} +1 -1
  65. package/dist/{device-ca-Bxjub9X-.mjs → device-ca-DKOZSFED.mjs} +1 -1
  66. package/dist/{device-ca-CVO0N_Oz.js → device-ca-DgLZPn5R.js} +1 -1
  67. package/dist/{dist-DDVtA047.js → dist--v3KMKa1.js} +280 -213
  68. package/dist/{dist-DfZKKnMP.mjs → dist-BIJXQo_j.mjs} +275 -214
  69. package/dist/file-host-worker.js +1 -1
  70. package/dist/file-host-worker.mjs +1 -1
  71. package/dist/{hub-mdns-ciao-C49WPQfd.js → hub-mdns-ciao-C3NJsOvK.js} +2 -2
  72. package/dist/{hub-mdns-ciao-KIDDBuDn.mjs → hub-mdns-ciao-DMFXIlMY.mjs} +2 -2
  73. package/dist/index.js +126 -12
  74. package/dist/index.mjs +124 -13
  75. package/dist/kernel/addon-installer.d.ts +24 -4
  76. package/dist/kernel/addon-version-policy.d.ts +26 -0
  77. package/dist/kernel/index.d.ts +2 -0
  78. package/dist/{restore-archive-NvTeD4tg.mjs → restore-archive-DAEsvFY6.mjs} +1 -1
  79. package/dist/{restore-archive-BXORpvel.js → restore-archive-DpkdAuFf.js} +1 -1
  80. package/dist/{retention-CAGXAgiQ.js → retention-C71dNCIh.js} +1 -1
  81. package/dist/{retention-Dn74ba1y.mjs → retention-DbunrLR4.mjs} +1 -1
  82. package/dist/{wal-maintenance-ByIgd_g9.js → wal-maintenance-CsGk4kYn.js} +0 -0
  83. package/dist/{wal-maintenance-DkkPbYwt.mjs → wal-maintenance-DYAJwPWu.mjs} +0 -0
  84. package/package.json +1 -1
@@ -15461,6 +15461,7 @@ var CompositionRunStatusSchema = zod.z.enum([
15461
15461
  "starting",
15462
15462
  "running",
15463
15463
  "degraded",
15464
+ "incomplete",
15464
15465
  "failed"
15465
15466
  ]);
15466
15467
  var CompositionFieldStateKindSchema = zod.z.enum([
@@ -16585,6 +16586,7 @@ var CoreBlockStatusSchema = zod.z.enum([
16585
16586
  "starting",
16586
16587
  "running",
16587
16588
  "degraded",
16589
+ "incomplete",
16588
16590
  "failed"
16589
16591
  ]);
16590
16592
  /** Default entry path when a multi-file block omits `entry`. */
@@ -60181,7 +60183,10 @@ var airQualitySensorCapability = {
60181
60183
  */
60182
60184
  var AmbientLightSensorStatusSchema = zod.z.object({
60183
60185
  /** Current illuminance in lux (lx). */
60184
- lux: zod.z.number().min(0),
60186
+ lux: zod.z.number().min(0).meta({
60187
+ unit: "lx",
60188
+ label: "Illuminance"
60189
+ }),
60185
60190
  /** Ms epoch when the slice was last updated. */
60186
60191
  lastFetchedAt: zod.z.number(),
60187
60192
  /** Live display unit from the upstream source (e.g. HA
@@ -60224,7 +60229,12 @@ var ambientLightSensorCapability = {
60224
60229
  } } },
60225
60230
  /** Clock fields: written, but excluded from the compare that decides
60226
60231
  * whether persisting is worth a SQLite commit. */
60227
- volatileStateFields: ["lastFetchedAt"]
60232
+ volatileStateFields: ["lastFetchedAt"],
60233
+ customize: {
60234
+ version: 1,
60235
+ advanced: "derive",
60236
+ targets: []
60237
+ }
60228
60238
  };
60229
60239
  /**
60230
60240
  * Per-class audio metrics aggregated over a sliding window.
@@ -60460,7 +60470,10 @@ var BatteryStatusSchema = zod.z.object({
60460
60470
  * Consumers must SKIP a null rather than coerce it — `battery-band` already
60461
60471
  * declines to band a non-finite reading, which is the correct shape.
60462
60472
  */
60463
- percentage: zod.z.number().min(0).max(100).nullable(),
60473
+ percentage: zod.z.number().min(0).max(100).nullable().meta({
60474
+ unit: "%",
60475
+ label: "Charge"
60476
+ }),
60464
60477
  /**
60465
60478
  * Charging source. `'dc'` covers wall/USB adapters; `'solar'` is
60466
60479
  * Reolink-specific for the Solar Panel 2 accessory (will become
@@ -60479,13 +60492,13 @@ var BatteryStatusSchema = zod.z.object({
60479
60492
  "solar",
60480
60493
  "none",
60481
60494
  "unknown"
60482
- ]),
60495
+ ]).meta({ label: "Charging source" }),
60483
60496
  /**
60484
60497
  * True when the camera firmware has gone into low-power mode. Battery
60485
60498
  * providers MUST avoid polling during sleep — reading the battery
60486
60499
  * wakes the camera up and drains charge.
60487
60500
  */
60488
- sleeping: zod.z.boolean(),
60501
+ sleeping: zod.z.boolean().meta({ label: "Sleeping" }),
60489
60502
  /** Ms epoch of the last observation. Lets consumers reason about freshness. */
60490
60503
  lastUpdated: zod.z.number(),
60491
60504
  /**
@@ -60525,7 +60538,7 @@ var BatteryStatusSchema = zod.z.object({
60525
60538
  * sub-threshold = low). UI MUST render "Normal"/"Low" instead of a
60526
60539
  * misleading exact percentage. Absent/false → genuine 0–100 % reading.
60527
60540
  */
60528
- binary: zod.z.boolean().optional()
60541
+ binary: zod.z.boolean().optional().meta({ label: "Binary indicator" })
60529
60542
  });
60530
60543
  var BATTERY_DEVICE_TYPES = [
60531
60544
  DeviceType.Camera,
@@ -60539,6 +60552,7 @@ var BATTERY_DEVICE_TYPES = [
60539
60552
  /** Generic Customize target for the percentage reading (D936). */
60540
60553
  var batteryCustomize = {
60541
60554
  version: 1,
60555
+ advanced: "derive",
60542
60556
  targets: [{
60543
60557
  id: "percentage",
60544
60558
  cardinality: "scalar",
@@ -60689,7 +60703,7 @@ onStatusChanged: { data: zod.z.object({
60689
60703
  * with the right HomeKit / Alexa display category.
60690
60704
  */
60691
60705
  var BinaryStatusSchema = zod.z.object({
60692
- on: zod.z.boolean(),
60706
+ on: zod.z.boolean().meta({ label: "On" }),
60693
60707
  /** Ms epoch of the last transition. 0 if never observed. */
60694
60708
  lastChangedAt: zod.z.number()
60695
60709
  });
@@ -60718,7 +60732,12 @@ var binaryCapability = {
60718
60732
  history: { fields: { on: { kind: "boolean" } } },
60719
60733
  /** Clock fields: written, but excluded from the compare that decides
60720
60734
  * whether persisting is worth a SQLite commit. */
60721
- volatileStateFields: ["lastChangedAt"]
60735
+ volatileStateFields: ["lastChangedAt"],
60736
+ customize: {
60737
+ version: 1,
60738
+ advanced: "derive",
60739
+ targets: []
60740
+ }
60722
60741
  };
60723
60742
  /**
60724
60743
  * Dimmable-light brightness control. Co-exists with `switch` on the
@@ -63742,7 +63761,10 @@ var humidifierCapability = {
63742
63761
  */
63743
63762
  var HumiditySensorStatusSchema = zod.z.object({
63744
63763
  /** Current relative humidity, 0..100. */
63745
- percent: zod.z.number().min(0).max(100),
63764
+ percent: zod.z.number().min(0).max(100).meta({
63765
+ unit: "%",
63766
+ label: "Humidity"
63767
+ }),
63746
63768
  /** Ms epoch when the slice was last updated. */
63747
63769
  lastFetchedAt: zod.z.number(),
63748
63770
  /** Live display unit from the upstream source (e.g. HA
@@ -63784,7 +63806,12 @@ var humiditySensorCapability = {
63784
63806
  } } },
63785
63807
  /** Clock fields: written, but excluded from the compare that decides
63786
63808
  * whether persisting is worth a SQLite commit. */
63787
- volatileStateFields: ["lastFetchedAt"]
63809
+ volatileStateFields: ["lastFetchedAt"],
63810
+ customize: {
63811
+ version: 1,
63812
+ advanced: "derive",
63813
+ targets: []
63814
+ }
63788
63815
  };
63789
63816
  /**
63790
63817
  * Image display cap. Models a single still image exposed by an integration —
@@ -67948,9 +67975,15 @@ var platformProbeCapability = {
67948
67975
  */
67949
67976
  var PowerMeterStatusSchema = zod.z.object({
67950
67977
  /** Instantaneous power draw in watts. */
67951
- watts: zod.z.number().optional(),
67978
+ watts: zod.z.number().optional().meta({
67979
+ unit: "W",
67980
+ label: "Power"
67981
+ }),
67952
67982
  /** Cumulative energy in kilowatt-hours since the meter was reset. */
67953
- kwhTotal: zod.z.number().optional(),
67983
+ kwhTotal: zod.z.number().optional().meta({
67984
+ unit: "kWh",
67985
+ label: "Energy"
67986
+ }),
67954
67987
  /** Voltage in volts. */
67955
67988
  volts: zod.z.number().optional(),
67956
67989
  /** Current in amperes. */
@@ -68035,7 +68068,12 @@ var powerMeterCapability = {
68035
68068
  } },
68036
68069
  /** Clock fields: written, but excluded from the compare that decides
68037
68070
  * whether persisting is worth a SQLite commit. */
68038
- volatileStateFields: ["lastFetchedAt"]
68071
+ volatileStateFields: ["lastFetchedAt"],
68072
+ customize: {
68073
+ version: 1,
68074
+ advanced: "derive",
68075
+ targets: []
68076
+ }
68039
68077
  };
68040
68078
  /**
68041
68079
  * Presence cap. Models HA `person.*` and `device_tracker.*` entities
@@ -68830,7 +68868,7 @@ var RunningStateStatusSchema = zod.z.object({
68830
68868
  running: zod.z.boolean().nullable(),
68831
68869
  /** Epoch ms the current boolean began; null while `running` is null. */
68832
68870
  since: zod.z.number().nullable(),
68833
- source: RunningStateSourceSchema,
68871
+ source: RunningStateSourceSchema.meta({ label: "Source" }),
68834
68872
  phase: zod.z.string().nullable(),
68835
68873
  /** null until a reading has been published (D393). */
68836
68874
  lastFetchedAt: zod.z.number().nullable()
@@ -68844,6 +68882,7 @@ var RUNNING_DEVICE_TYPES = Object.values(DeviceType);
68844
68882
  /** Generic Customize target for the running boolean (D936). */
68845
68883
  var runningCustomize = {
68846
68884
  version: 1,
68885
+ advanced: "derive",
68847
68886
  targets: [{
68848
68887
  id: "running",
68849
68888
  cardinality: "scalar",
@@ -72004,7 +72043,7 @@ function parseStreamParamsFormPatch(patch, prefix) {
72004
72043
  * `getSettingsUISchema()` surface.
72005
72044
  */
72006
72045
  var SwitchStatusSchema = zod.z.object({
72007
- on: zod.z.boolean(),
72046
+ on: zod.z.boolean().meta({ label: "On" }),
72008
72047
  /** Ms epoch of the last state change. Useful for UI "X minutes ago". */
72009
72048
  lastChangedAt: zod.z.number()
72010
72049
  });
@@ -72063,7 +72102,12 @@ var switchCapability = {
72063
72102
  label: "On",
72064
72103
  kind: "boolean"
72065
72104
  }
72066
- }] }
72105
+ }] },
72106
+ customize: {
72107
+ version: 1,
72108
+ advanced: "derive",
72109
+ targets: []
72110
+ }
72067
72111
  };
72068
72112
  /** C0 controls, DEL and the C1 range: none of them belongs in a name. */
72069
72113
  function hasControlCharacter(value) {
@@ -72786,7 +72830,10 @@ var tamperCapability = {
72786
72830
  */
72787
72831
  var TemperatureSensorStatusSchema = zod.z.object({
72788
72832
  /** Current temperature in Celsius. */
72789
- celsius: zod.z.number(),
72833
+ celsius: zod.z.number().meta({
72834
+ unit: "°C",
72835
+ label: "Temperature"
72836
+ }),
72790
72837
  /** Ms epoch when the slice was last updated (push or poll). */
72791
72838
  lastFetchedAt: zod.z.number(),
72792
72839
  /** Live display unit from the upstream source (e.g. HA
@@ -72829,7 +72876,12 @@ var temperatureSensorCapability = {
72829
72876
  } } },
72830
72877
  /** Clock fields: written, but excluded from the compare that decides
72831
72878
  * whether persisting is worth a SQLite commit. */
72832
- volatileStateFields: ["lastFetchedAt"]
72879
+ volatileStateFields: ["lastFetchedAt"],
72880
+ customize: {
72881
+ version: 1,
72882
+ advanced: "derive",
72883
+ targets: []
72884
+ }
72833
72885
  };
72834
72886
  /**
72835
72887
  * toast — system-scoped singleton capability that streams toast
@@ -75038,6 +75090,209 @@ function evaluateCompositionField(input) {
75038
75090
  }
75039
75091
  }
75040
75092
  SOURCE_CAPS.filter((cap) => cap !== "switch" && cap !== "motion");
75093
+ DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher, DeviceType.Camera, DeviceType.Camera, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
75094
+ String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
75095
+ /**
75096
+ * Every CapabilityDefinition shipped by `@camstack/types`. The hub
75097
+ * iterates this array at boot to declare each cap on the registry
75098
+ * before addons (in-process or via the Moleculer bridge) attempt
75099
+ * `registerProvider`. Adding a new cap means dropping a `*.cap.ts`
75100
+ * file in `packages/types/src/capabilities/` and re-running
75101
+ * `npx tsx scripts/generate-capability-router-types.ts` — no manual
75102
+ * edit to `main.ts` required.
75103
+ */
75104
+ var ALL_CAPABILITY_DEFINITIONS = [
75105
+ accessoriesCapability,
75106
+ addonPagesCapability,
75107
+ addonPagesSourceCapability,
75108
+ addonRoutesCapability,
75109
+ addonSettingsCapability,
75110
+ addonWidgetsCapability,
75111
+ addonWidgetsSourceCapability,
75112
+ addonsCapability,
75113
+ adminUiCapability,
75114
+ airQualitySensorCapability,
75115
+ alarmPanelCapability,
75116
+ alertsCapability,
75117
+ ambientLightSensorCapability,
75118
+ audioAnalysisCapability,
75119
+ audioAnalyzerCapability,
75120
+ audioCodecCapability,
75121
+ audioMetricsCapability,
75122
+ authProviderCapability,
75123
+ automationControlCapability,
75124
+ backupCapability,
75125
+ batteryCapability,
75126
+ binaryCapability,
75127
+ brightnessCapability,
75128
+ brokerCapability,
75129
+ buttonCapability,
75130
+ calendarSourceCapability,
75131
+ calendarsCapability,
75132
+ cameraCredentialsCapability,
75133
+ cameraGridLayoutCapability,
75134
+ cameraPipelineConfigCapability,
75135
+ cameraStreamsCapability,
75136
+ carbonMonoxideCapability,
75137
+ climateControlCapability,
75138
+ colorCapability,
75139
+ composerCapability,
75140
+ connectionTestCapability,
75141
+ connectivityCapability,
75142
+ consumablesCapability,
75143
+ contactCapability,
75144
+ controlCapability,
75145
+ coreBlocksCapability,
75146
+ coverCapability,
75147
+ customModelRegistryCapability,
75148
+ dataStoreProviderCapability,
75149
+ databaseSnapshotCapability,
75150
+ dayNightCapability,
75151
+ decoderCapability,
75152
+ detectionPipelineCapability,
75153
+ deviceAdminLinkCapability,
75154
+ deviceAdoptionCapability,
75155
+ deviceCredentialsCapability,
75156
+ deviceDiscoveryCapability,
75157
+ deviceExportCapability,
75158
+ deviceExtensionCapability,
75159
+ deviceHistoryCapability,
75160
+ deviceManagerCapability,
75161
+ deviceOpsCapability,
75162
+ deviceProviderCapability,
75163
+ deviceRemovalHookCapability,
75164
+ deviceStateCapability,
75165
+ deviceStatusCapability,
75166
+ dishwasherCapability,
75167
+ displayPaletteCapability,
75168
+ doorbellCapability,
75169
+ embeddingEncoderCapability,
75170
+ enumSensorCapability,
75171
+ eventEmitterCapability,
75172
+ faceGalleryCapability,
75173
+ failureContributionCapability,
75174
+ fanControlCapability,
75175
+ featureProbeCapability,
75176
+ filesystemBrowseCapability,
75177
+ floodCapability,
75178
+ gasCapability,
75179
+ heatingValveCapability,
75180
+ humidifierCapability,
75181
+ humiditySensorCapability,
75182
+ imageCapability,
75183
+ imageSettingsCapability,
75184
+ integrationsCapability,
75185
+ intercomCapability,
75186
+ keychainCapability,
75187
+ keychainAdminCapability,
75188
+ lawnMowerControlCapability,
75189
+ llmCapability,
75190
+ llmRuntimeCapability,
75191
+ loadContributionCapability,
75192
+ localNetworkCapability,
75193
+ lockControlCapability,
75194
+ logChannelsCapability,
75195
+ logDestinationCapability,
75196
+ loginMethodCapability,
75197
+ mediaPlayerCapability,
75198
+ meshNetworkCapability,
75199
+ metricsProviderCapability,
75200
+ modelConvertCapability,
75201
+ modelDistributorCapability,
75202
+ motionCapability,
75203
+ motionDetectionCapability,
75204
+ motionTriggerCapability,
75205
+ motionZonesCapability,
75206
+ mqttBrokerCapability,
75207
+ nativeObjectDetectionCapability,
75208
+ navigationCapability,
75209
+ networkAccessCapability,
75210
+ networkLinkCapability,
75211
+ networkQualityCapability,
75212
+ nodeCertificatesCapability,
75213
+ nodesCapability,
75214
+ notificationOutputCapability,
75215
+ notificationRulesCapability,
75216
+ notifierCapability,
75217
+ numericSensorCapability,
75218
+ oauthIntegrationCapability,
75219
+ oidcConnectionsCapability,
75220
+ osdCapability,
75221
+ osdManagerCapability,
75222
+ petFeederCapability,
75223
+ pipelineAnalyticsCapability,
75224
+ pipelineExecutorCapability,
75225
+ pipelineOrchestratorCapability,
75226
+ pipelineRunnerCapability,
75227
+ plateGalleryCapability,
75228
+ platformProbeCapability,
75229
+ powerMeterCapability,
75230
+ presenceCapability,
75231
+ pressureSensorCapability,
75232
+ privacyMaskCapability,
75233
+ ptzCapability,
75234
+ ptzAutotrackCapability,
75235
+ rebootCapability,
75236
+ recordEntriesCapability,
75237
+ recordingCapability,
75238
+ recordingArchiveCapability,
75239
+ recordingExportCapability,
75240
+ recordingOnboardCapability,
75241
+ recordingSignalCapability,
75242
+ recordsCapability,
75243
+ runningStateCapability,
75244
+ sceneMonitorCapability,
75245
+ scriptRunnerCapability,
75246
+ serverManagementCapability,
75247
+ settingsStoreCapability,
75248
+ smokeCapability,
75249
+ smtpProviderCapability,
75250
+ snapshotCapability,
75251
+ ssoBridgeCapability,
75252
+ storageCapability,
75253
+ storageAdminCapability,
75254
+ storageEvictableCapability,
75255
+ storageMigrationCapability,
75256
+ storageOccupancyCapability,
75257
+ storageProviderCapability,
75258
+ streamBrokerCapability,
75259
+ streamCatalogCapability,
75260
+ streamParamsCapability,
75261
+ streamSignalsCapability,
75262
+ switchCapability,
75263
+ systemCapability,
75264
+ tamperCapability,
75265
+ temperatureSensorCapability,
75266
+ terminalSessionCapability,
75267
+ toastCapability,
75268
+ trainingCapability,
75269
+ trainingProviderCapability,
75270
+ turnProviderCapability,
75271
+ updateCapability,
75272
+ userManagementCapability,
75273
+ userPasskeysCapability,
75274
+ vacuumControlCapability,
75275
+ valveCapability,
75276
+ vectorStoreCapability,
75277
+ vibrationCapability,
75278
+ videoclipsCapability,
75279
+ viewerUiCapability,
75280
+ waterHeaterCapability,
75281
+ weatherCapability,
75282
+ webrtcSessionCapability,
75283
+ zoneAnalyticsCapability,
75284
+ zoneRulesCapability,
75285
+ zonesCapability
75286
+ ];
75287
+ DeviceRole.BinarySensor, DeviceRole.MotionSensor;
75288
+ new Set(ALL_CAPABILITY_DEFINITIONS.map((def) => def.name));
75289
+ function isUnfilledRequiredProblem(problem) {
75290
+ return problem.code === "missing-field";
75291
+ }
75292
+ /** True when the only problems are unfilled required fields — save may proceed. */
75293
+ function problemsBlockSave(problems) {
75294
+ return problems.some((p) => !isUnfilledRequiredProblem(p));
75295
+ }
75041
75296
  Object.freeze({
75042
75297
  person: .5,
75043
75298
  vehicle: .5,
@@ -89297,7 +89552,7 @@ var SENSOR_CAP_VOCABULARY = {
89297
89552
  state: [{
89298
89553
  kind: "boolean",
89299
89554
  field: "on",
89300
- label: t("Active", "Attivo"),
89555
+ label: t("On", "Acceso"),
89301
89556
  whenTrue: t("When {device} turns active", "Quando {device} si attiva"),
89302
89557
  whenFalse: t("When {device} turns inactive", "Quando {device} si disattiva"),
89303
89558
  icon: "toggle-right"
@@ -90029,198 +90284,6 @@ var CAP_NAMES_WITH_STATUS = [
90029
90284
  "water-heater",
90030
90285
  "weather"
90031
90286
  ];
90032
- /**
90033
- * Every CapabilityDefinition shipped by `@camstack/types`. The hub
90034
- * iterates this array at boot to declare each cap on the registry
90035
- * before addons (in-process or via the Moleculer bridge) attempt
90036
- * `registerProvider`. Adding a new cap means dropping a `*.cap.ts`
90037
- * file in `packages/types/src/capabilities/` and re-running
90038
- * `npx tsx scripts/generate-capability-router-types.ts` — no manual
90039
- * edit to `main.ts` required.
90040
- */
90041
- var ALL_CAPABILITY_DEFINITIONS = [
90042
- accessoriesCapability,
90043
- addonPagesCapability,
90044
- addonPagesSourceCapability,
90045
- addonRoutesCapability,
90046
- addonSettingsCapability,
90047
- addonWidgetsCapability,
90048
- addonWidgetsSourceCapability,
90049
- addonsCapability,
90050
- adminUiCapability,
90051
- airQualitySensorCapability,
90052
- alarmPanelCapability,
90053
- alertsCapability,
90054
- ambientLightSensorCapability,
90055
- audioAnalysisCapability,
90056
- audioAnalyzerCapability,
90057
- audioCodecCapability,
90058
- audioMetricsCapability,
90059
- authProviderCapability,
90060
- automationControlCapability,
90061
- backupCapability,
90062
- batteryCapability,
90063
- binaryCapability,
90064
- brightnessCapability,
90065
- brokerCapability,
90066
- buttonCapability,
90067
- calendarSourceCapability,
90068
- calendarsCapability,
90069
- cameraCredentialsCapability,
90070
- cameraGridLayoutCapability,
90071
- cameraPipelineConfigCapability,
90072
- cameraStreamsCapability,
90073
- carbonMonoxideCapability,
90074
- climateControlCapability,
90075
- colorCapability,
90076
- composerCapability,
90077
- connectionTestCapability,
90078
- connectivityCapability,
90079
- consumablesCapability,
90080
- contactCapability,
90081
- controlCapability,
90082
- coreBlocksCapability,
90083
- coverCapability,
90084
- customModelRegistryCapability,
90085
- dataStoreProviderCapability,
90086
- databaseSnapshotCapability,
90087
- dayNightCapability,
90088
- decoderCapability,
90089
- detectionPipelineCapability,
90090
- deviceAdminLinkCapability,
90091
- deviceAdoptionCapability,
90092
- deviceCredentialsCapability,
90093
- deviceDiscoveryCapability,
90094
- deviceExportCapability,
90095
- deviceExtensionCapability,
90096
- deviceHistoryCapability,
90097
- deviceManagerCapability,
90098
- deviceOpsCapability,
90099
- deviceProviderCapability,
90100
- deviceRemovalHookCapability,
90101
- deviceStateCapability,
90102
- deviceStatusCapability,
90103
- dishwasherCapability,
90104
- displayPaletteCapability,
90105
- doorbellCapability,
90106
- embeddingEncoderCapability,
90107
- enumSensorCapability,
90108
- eventEmitterCapability,
90109
- faceGalleryCapability,
90110
- failureContributionCapability,
90111
- fanControlCapability,
90112
- featureProbeCapability,
90113
- filesystemBrowseCapability,
90114
- floodCapability,
90115
- gasCapability,
90116
- heatingValveCapability,
90117
- humidifierCapability,
90118
- humiditySensorCapability,
90119
- imageCapability,
90120
- imageSettingsCapability,
90121
- integrationsCapability,
90122
- intercomCapability,
90123
- keychainCapability,
90124
- keychainAdminCapability,
90125
- lawnMowerControlCapability,
90126
- llmCapability,
90127
- llmRuntimeCapability,
90128
- loadContributionCapability,
90129
- localNetworkCapability,
90130
- lockControlCapability,
90131
- logChannelsCapability,
90132
- logDestinationCapability,
90133
- loginMethodCapability,
90134
- mediaPlayerCapability,
90135
- meshNetworkCapability,
90136
- metricsProviderCapability,
90137
- modelConvertCapability,
90138
- modelDistributorCapability,
90139
- motionCapability,
90140
- motionDetectionCapability,
90141
- motionTriggerCapability,
90142
- motionZonesCapability,
90143
- mqttBrokerCapability,
90144
- nativeObjectDetectionCapability,
90145
- navigationCapability,
90146
- networkAccessCapability,
90147
- networkLinkCapability,
90148
- networkQualityCapability,
90149
- nodeCertificatesCapability,
90150
- nodesCapability,
90151
- notificationOutputCapability,
90152
- notificationRulesCapability,
90153
- notifierCapability,
90154
- numericSensorCapability,
90155
- oauthIntegrationCapability,
90156
- oidcConnectionsCapability,
90157
- osdCapability,
90158
- osdManagerCapability,
90159
- petFeederCapability,
90160
- pipelineAnalyticsCapability,
90161
- pipelineExecutorCapability,
90162
- pipelineOrchestratorCapability,
90163
- pipelineRunnerCapability,
90164
- plateGalleryCapability,
90165
- platformProbeCapability,
90166
- powerMeterCapability,
90167
- presenceCapability,
90168
- pressureSensorCapability,
90169
- privacyMaskCapability,
90170
- ptzCapability,
90171
- ptzAutotrackCapability,
90172
- rebootCapability,
90173
- recordEntriesCapability,
90174
- recordingCapability,
90175
- recordingArchiveCapability,
90176
- recordingExportCapability,
90177
- recordingOnboardCapability,
90178
- recordingSignalCapability,
90179
- recordsCapability,
90180
- runningStateCapability,
90181
- sceneMonitorCapability,
90182
- scriptRunnerCapability,
90183
- serverManagementCapability,
90184
- settingsStoreCapability,
90185
- smokeCapability,
90186
- smtpProviderCapability,
90187
- snapshotCapability,
90188
- ssoBridgeCapability,
90189
- storageCapability,
90190
- storageAdminCapability,
90191
- storageEvictableCapability,
90192
- storageMigrationCapability,
90193
- storageOccupancyCapability,
90194
- storageProviderCapability,
90195
- streamBrokerCapability,
90196
- streamCatalogCapability,
90197
- streamParamsCapability,
90198
- streamSignalsCapability,
90199
- switchCapability,
90200
- systemCapability,
90201
- tamperCapability,
90202
- temperatureSensorCapability,
90203
- terminalSessionCapability,
90204
- toastCapability,
90205
- trainingCapability,
90206
- trainingProviderCapability,
90207
- turnProviderCapability,
90208
- updateCapability,
90209
- userManagementCapability,
90210
- userPasskeysCapability,
90211
- vacuumControlCapability,
90212
- valveCapability,
90213
- vectorStoreCapability,
90214
- vibrationCapability,
90215
- videoclipsCapability,
90216
- viewerUiCapability,
90217
- waterHeaterCapability,
90218
- weatherCapability,
90219
- webrtcSessionCapability,
90220
- zoneAnalyticsCapability,
90221
- zoneRulesCapability,
90222
- zonesCapability
90223
- ];
90224
90287
  Object.freeze({
90225
90288
  "accessories.getStatus": [{
90226
90289
  name: "deviceId",
@@ -93693,7 +93756,6 @@ var HISTORY_ITEM_CATALOG = { "consumables": {
93693
93756
  }
93694
93757
  }
93695
93758
  } };
93696
- DeviceType.Camera, DeviceType.Sensor, DeviceType.Button, DeviceType.Switch, DeviceType.PetFeeder, DeviceType.Container, DeviceType.Thermostat, DeviceType.Camera, DeviceType.Hub, DeviceType.Light, DeviceType.Siren, DeviceType.Switch, DeviceType.Sensor, DeviceType.Thermostat, DeviceType.Climate, DeviceType.Button, DeviceType.EventEmitter, DeviceType.Update, DeviceType.Generic, DeviceType.Notifier, DeviceType.Script, DeviceType.Automation, DeviceType.Lock, DeviceType.Cover, DeviceType.Valve, DeviceType.Humidifier, DeviceType.WaterHeater, DeviceType.Fan, DeviceType.MediaPlayer, DeviceType.AlarmPanel, DeviceType.Control, DeviceType.Presence, DeviceType.Weather, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.Container, DeviceType.Image, DeviceType.PetFeeder, DeviceType.Dishwasher, DeviceType.Camera, DeviceType.Camera, DeviceType.Dishwasher, DeviceType.Vacuum, DeviceType.LawnMower, DeviceType.MediaPlayer, DeviceType.WaterHeater, DeviceType.Humidifier, DeviceType.Fan, DeviceType.Climate, DeviceType.Thermostat, DeviceType.PetFeeder;
93697
93759
  /**
93698
93760
  * A saved Customize assignment (D936). The schema is the type: callers use
93699
93761
  * `z.infer`, they do not restate the shape.
@@ -93789,7 +93851,6 @@ zod.z.object({
93789
93851
  ]),
93790
93852
  reason: zod.z.string().nullable()
93791
93853
  });
93792
- String.raw`rose\(active(\d+), changed(\d+), (\d+(?:\.\d+)?)\)`;
93793
93854
  var G711_SCALE_CORRECTION_DB = {
93794
93855
  PCMU: 20 * Math.log10(4),
93795
93856
  PCMA: 20 * Math.log10(8)
@@ -96896,6 +96957,12 @@ Object.defineProperty(exports, "platformProbeCapability", {
96896
96957
  return platformProbeCapability;
96897
96958
  }
96898
96959
  });
96960
+ Object.defineProperty(exports, "problemsBlockSave", {
96961
+ enumerable: true,
96962
+ get: function() {
96963
+ return problemsBlockSave;
96964
+ }
96965
+ });
96899
96966
  Object.defineProperty(exports, "procedureAuthKey", {
96900
96967
  enumerable: true,
96901
96968
  get: function() {