@camstack/addon-provider-bosch 0.1.38 → 0.1.40

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.
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_bosch_instances = require("../bosch-instances-Y9sMCElY.js");
3
- const require_account_integration_offline = require("../account-integration-offline-CeMaWElV.js");
2
+ const require_bosch_instances = require("../bosch-instances-DEH7DYwo.js");
3
+ const require_account_integration_offline = require("../account-integration-offline-DwgBg38i.js");
4
4
  let node_crypto = require("node:crypto");
5
5
  let node_tls = require("node:tls");
6
6
  let node_zlib = require("node:zlib");
@@ -5386,12 +5386,11 @@ var BoschHomeConnectProviderAddon = class extends require_bosch_instances.BaseDe
5386
5386
  const records = this.ctx.records;
5387
5387
  if (records === void 0) throw new Error("bosch-home-connect: ctx.records is required (hub-only addon)");
5388
5388
  await records.declare(homeConnectRecordKinds);
5389
- await this.runMigrations(require_bosch_instances.defineAddonMigrations(HOME_CONNECT_MIGRATIONS, homeConnectRowsPorts({
5390
- api: require_bosch_instances.defaultIntegrationApiOver(this.ctx.api),
5391
- secrets: this.ctx.secrets ?? null,
5392
- records,
5393
- warn: (message) => this.ctx.logger.warn(message)
5394
- })));
5389
+ this.declareRegistrySwitch({
5390
+ kind: homeConnectConnectionsEntryKind,
5391
+ initialBody: (name) => ({ name })
5392
+ });
5393
+ await this.runMigrations(HOME_CONNECT_MIGRATIONS, (api) => homeConnectRowsPorts({ ...require_bosch_instances.rowsDepsOver(api) }));
5395
5394
  const built = buildHomeConnectInstances(records, {
5396
5395
  onChanged: () => this.reconcileIntegrations(),
5397
5396
  tester: this.buildConnectionTestProvider()
@@ -5566,8 +5565,9 @@ var BoschHomeConnectProviderAddon = class extends require_bosch_instances.BaseDe
5566
5565
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
5567
5566
  this.reconcileIntegrations();
5568
5567
  };
5569
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationEnabled }, handler);
5570
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDisabled }, handler);
5568
+ this.requireInstances().instances.onSwitched(() => {
5569
+ this.reconcileIntegrations();
5570
+ });
5571
5571
  this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDeleted }, handler);
5572
5572
  }
5573
5573
  buildConnectionTestProvider() {
@@ -1,5 +1,5 @@
1
- import { $ as errMsg, B as isSecretMarkerLike, C as ingestReading, D as quantityFromUnit, E as powerMeterCapability, F as defineAddonMigrations, H as array, I as defineCustomActions, J as string, K as object, L as defineEntryKind, N as createEvent, O as runningFromDishwasherOperation, P as customAction, Q as DeviceType, R as entryBody, T as numericSensorCapability, U as boolean, V as _enum, W as literal, X as unknown, Y as union, Z as DeviceRole, _ as defaultIntegrationApiOver, a as BaseDevice, b as enumSensorCapability, c as RUNNING_STATE_COLD, d as VendorLoginProxy, et as EventCategory, g as consumablesCapability, h as connectionTestCapability, i as testBoschInstance, k as runningStateCapability, l as RecordIntegrationInstances, n as boschRowsPorts, o as BaseDeviceProvider, p as binaryCapability, q as record, r as keepBodyKeys, s as DishwasherOperationStateSchema, t as boschRowsMigration, v as deviceAdoptionCapability, w as integrationInstancesCapability, x as eventEmitterCapability, y as dishwasherCapability, z as isSecretMarker } from "../bosch-instances-CIuDwXQ8.mjs";
2
- import { a as createSignInAttemptStore, i as openSignInProxy, n as cascadeRemoveDevicesForIntegration, o as loginFailureForAttempt, r as createSignInClaims, s as parseOAuthCallback, t as setIntegrationDevicesOnline } from "../account-integration-offline-DhHNdL3k.mjs";
1
+ import { $ as EventCategory, B as _enum, C as numericSensorCapability, D as runningStateCapability, E as runningFromDishwasherOperation, F as defineEntryKind, G as object, H as boolean, I as entryBody, J as union, K as record, L as isSecretMarker, M as createEvent, N as customAction, P as defineCustomActions, Q as errMsg, R as isSecretMarkerLike, S as integrationInstancesCapability, T as quantityFromUnit, U as literal, V as array, X as DeviceRole, Y as unknown, Z as DeviceType, _ as dishwasherCapability, a as BaseDevice, c as RUNNING_STATE_COLD, f as binaryCapability, g as deviceAdoptionCapability, h as consumablesCapability, i as testBoschInstance, j as RecordIntegrationInstances, m as connectionTestCapability, n as boschRowsPorts, o as BaseDeviceProvider, q as string, r as keepBodyKeys, s as DishwasherOperationStateSchema, t as boschRowsMigration, u as VendorLoginProxy, v as enumSensorCapability, w as powerMeterCapability, x as ingestReading, y as eventEmitterCapability, z as rowsDepsOver } from "../bosch-instances-Yqi-WAZN.mjs";
2
+ import { a as createSignInAttemptStore, i as openSignInProxy, n as cascadeRemoveDevicesForIntegration, o as loginFailureForAttempt, r as createSignInClaims, s as parseOAuthCallback, t as setIntegrationDevicesOnline } from "../account-integration-offline-DTnyqayb.mjs";
3
3
  import { createHash, randomBytes } from "node:crypto";
4
4
  import { connect } from "node:tls";
5
5
  import { inflateRawSync } from "node:zlib";
@@ -5385,12 +5385,11 @@ var BoschHomeConnectProviderAddon = class extends BaseDeviceProvider {
5385
5385
  const records = this.ctx.records;
5386
5386
  if (records === void 0) throw new Error("bosch-home-connect: ctx.records is required (hub-only addon)");
5387
5387
  await records.declare(homeConnectRecordKinds);
5388
- await this.runMigrations(defineAddonMigrations(HOME_CONNECT_MIGRATIONS, homeConnectRowsPorts({
5389
- api: defaultIntegrationApiOver(this.ctx.api),
5390
- secrets: this.ctx.secrets ?? null,
5391
- records,
5392
- warn: (message) => this.ctx.logger.warn(message)
5393
- })));
5388
+ this.declareRegistrySwitch({
5389
+ kind: homeConnectConnectionsEntryKind,
5390
+ initialBody: (name) => ({ name })
5391
+ });
5392
+ await this.runMigrations(HOME_CONNECT_MIGRATIONS, (api) => homeConnectRowsPorts({ ...rowsDepsOver(api) }));
5394
5393
  const built = buildHomeConnectInstances(records, {
5395
5394
  onChanged: () => this.reconcileIntegrations(),
5396
5395
  tester: this.buildConnectionTestProvider()
@@ -5565,8 +5564,9 @@ var BoschHomeConnectProviderAddon = class extends BaseDeviceProvider {
5565
5564
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
5566
5565
  this.reconcileIntegrations();
5567
5566
  };
5568
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationEnabled }, handler);
5569
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDisabled }, handler);
5567
+ this.requireInstances().instances.onSwitched(() => {
5568
+ this.reconcileIntegrations();
5569
+ });
5570
5570
  this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDeleted }, handler);
5571
5571
  }
5572
5572
  buildConnectionTestProvider() {
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_bosch_instances = require("../bosch-instances-Y9sMCElY.js");
3
- const require_account_integration_offline = require("../account-integration-offline-CeMaWElV.js");
2
+ const require_bosch_instances = require("../bosch-instances-DEH7DYwo.js");
3
+ const require_account_integration_offline = require("../account-integration-offline-DwgBg38i.js");
4
4
  let node_crypto = require("node:crypto");
5
5
  //#region src/homecom/config.ts
6
6
  var HOMECOM_BRANDS = ["bosch", "buderus"];
@@ -2196,12 +2196,11 @@ var BoschHomeComProviderAddon = class extends require_bosch_instances.BaseDevice
2196
2196
  const records = this.ctx.records;
2197
2197
  if (records === void 0) throw new Error("bosch-homecom: ctx.records is required (hub-only addon)");
2198
2198
  await records.declare(homeComRecordKinds);
2199
- await this.runMigrations(require_bosch_instances.defineAddonMigrations(HOMECOM_MIGRATIONS, homeComRowsPorts({
2200
- api: require_bosch_instances.defaultIntegrationApiOver(this.ctx.api),
2201
- secrets: this.ctx.secrets ?? null,
2202
- records,
2203
- warn: (message) => this.ctx.logger.warn(message)
2204
- })));
2199
+ this.declareRegistrySwitch({
2200
+ kind: homeComConnectionsEntryKind,
2201
+ initialBody: (name) => ({ name })
2202
+ });
2203
+ await this.runMigrations(HOMECOM_MIGRATIONS, (api) => homeComRowsPorts({ ...require_bosch_instances.rowsDepsOver(api) }));
2205
2204
  const built = buildHomeComInstances(records, {
2206
2205
  onChanged: () => this.reconcileIntegrations(),
2207
2206
  tester: this.buildConnectionTestProvider()
@@ -2350,8 +2349,9 @@ var BoschHomeComProviderAddon = class extends require_bosch_instances.BaseDevice
2350
2349
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
2351
2350
  this.reconcileIntegrations();
2352
2351
  };
2353
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationEnabled }, handler);
2354
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDisabled }, handler);
2352
+ this.requireInstances().instances.onSwitched(() => {
2353
+ this.reconcileIntegrations();
2354
+ });
2355
2355
  this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDeleted }, handler);
2356
2356
  }
2357
2357
  buildConnectionTestProvider() {
@@ -1,5 +1,5 @@
1
- import { $ as errMsg, F as defineAddonMigrations, G as number, H as array, I as defineCustomActions, J as string, K as object, L as defineEntryKind, M as waterHeaterCapability, P as customAction, Q as DeviceType, R as entryBody, U as boolean, V as _enum, W as literal, _ as defaultIntegrationApiOver, a as BaseDevice, d as VendorLoginProxy, et as EventCategory, h as connectionTestCapability, i as testBoschInstance, l as RecordIntegrationInstances, m as climateControlCapability, n as boschRowsPorts, o as BaseDeviceProvider, r as keepBodyKeys, t as boschRowsMigration, v as deviceAdoptionCapability, w as integrationInstancesCapability } from "../bosch-instances-CIuDwXQ8.mjs";
2
- import { a as createSignInAttemptStore, i as openSignInProxy, n as cascadeRemoveDevicesForIntegration, o as loginFailureForAttempt, r as createSignInClaims, s as parseOAuthCallback, t as setIntegrationDevicesOnline } from "../account-integration-offline-DhHNdL3k.mjs";
1
+ import { $ as EventCategory, A as waterHeaterCapability, B as _enum, F as defineEntryKind, G as object, H as boolean, I as entryBody, N as customAction, P as defineCustomActions, Q as errMsg, S as integrationInstancesCapability, U as literal, V as array, W as number, Z as DeviceType, a as BaseDevice, g as deviceAdoptionCapability, i as testBoschInstance, j as RecordIntegrationInstances, m as connectionTestCapability, n as boschRowsPorts, o as BaseDeviceProvider, p as climateControlCapability, q as string, r as keepBodyKeys, t as boschRowsMigration, u as VendorLoginProxy, z as rowsDepsOver } from "../bosch-instances-Yqi-WAZN.mjs";
2
+ import { a as createSignInAttemptStore, i as openSignInProxy, n as cascadeRemoveDevicesForIntegration, o as loginFailureForAttempt, r as createSignInClaims, s as parseOAuthCallback, t as setIntegrationDevicesOnline } from "../account-integration-offline-DTnyqayb.mjs";
3
3
  import { createHash, randomBytes } from "node:crypto";
4
4
  //#region src/homecom/config.ts
5
5
  var HOMECOM_BRANDS = ["bosch", "buderus"];
@@ -2195,12 +2195,11 @@ var BoschHomeComProviderAddon = class extends BaseDeviceProvider {
2195
2195
  const records = this.ctx.records;
2196
2196
  if (records === void 0) throw new Error("bosch-homecom: ctx.records is required (hub-only addon)");
2197
2197
  await records.declare(homeComRecordKinds);
2198
- await this.runMigrations(defineAddonMigrations(HOMECOM_MIGRATIONS, homeComRowsPorts({
2199
- api: defaultIntegrationApiOver(this.ctx.api),
2200
- secrets: this.ctx.secrets ?? null,
2201
- records,
2202
- warn: (message) => this.ctx.logger.warn(message)
2203
- })));
2198
+ this.declareRegistrySwitch({
2199
+ kind: homeComConnectionsEntryKind,
2200
+ initialBody: (name) => ({ name })
2201
+ });
2202
+ await this.runMigrations(HOMECOM_MIGRATIONS, (api) => homeComRowsPorts({ ...rowsDepsOver(api) }));
2204
2203
  const built = buildHomeComInstances(records, {
2205
2204
  onChanged: () => this.reconcileIntegrations(),
2206
2205
  tester: this.buildConnectionTestProvider()
@@ -2349,8 +2348,9 @@ var BoschHomeComProviderAddon = class extends BaseDeviceProvider {
2349
2348
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
2350
2349
  this.reconcileIntegrations();
2351
2350
  };
2352
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationEnabled }, handler);
2353
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDisabled }, handler);
2351
+ this.requireInstances().instances.onSwitched(() => {
2352
+ this.reconcileIntegrations();
2353
+ });
2354
2354
  this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDeleted }, handler);
2355
2355
  }
2356
2356
  buildConnectionTestProvider() {
package/dist/shc/addon.js CHANGED
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region \0rolldown/runtime.js
3
3
  var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
4
4
  //#endregion
5
- const require_bosch_instances = require("../bosch-instances-Y9sMCElY.js");
5
+ const require_bosch_instances = require("../bosch-instances-DEH7DYwo.js");
6
6
  let node_crypto = require("node:crypto");
7
7
  let node_https = require("node:https");
8
8
  let node_child_process = require("node:child_process");
@@ -23843,12 +23843,11 @@ var BoschShcProviderAddon = class extends require_bosch_instances.BaseDeviceProv
23843
23843
  const records = this.ctx.records;
23844
23844
  if (records === void 0) throw new Error("bosch-shc: ctx.records is required (hub-only addon)");
23845
23845
  await records.declare(shcRecordKinds);
23846
- await this.runMigrations(require_bosch_instances.defineAddonMigrations(SHC_MIGRATIONS, shcRowsPorts({
23847
- api: require_bosch_instances.defaultIntegrationApiOver(this.ctx.api),
23848
- secrets: this.ctx.secrets ?? null,
23849
- records,
23850
- warn: (message) => this.ctx.logger.warn(message)
23851
- })));
23846
+ this.declareRegistrySwitch({
23847
+ kind: shcConnectionsEntryKind,
23848
+ initialBody: (name) => ({ name })
23849
+ });
23850
+ await this.runMigrations(SHC_MIGRATIONS, (api) => shcRowsPorts({ ...require_bosch_instances.rowsDepsOver(api) }));
23852
23851
  const built = buildShcInstances(records, {
23853
23852
  onChanged: () => this.reconcileIntegrations(),
23854
23853
  tester: this.buildConnectionTestProvider()
@@ -24015,8 +24014,9 @@ var BoschShcProviderAddon = class extends require_bosch_instances.BaseDeviceProv
24015
24014
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
24016
24015
  this.reconcileIntegrations();
24017
24016
  };
24018
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationEnabled }, handler);
24019
- this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDisabled }, handler);
24017
+ this.requireInstances().onSwitched(() => {
24018
+ this.reconcileIntegrations();
24019
+ });
24020
24020
  this.ctx.eventBus.subscribe({ category: require_bosch_instances.EventCategory.IntegrationDeleted }, handler);
24021
24021
  }
24022
24022
  async cascadeRemoveDevicesForIntegration(integrationId) {
@@ -1,4 +1,4 @@
1
- import { $ as errMsg, A as switchCapability, F as defineAddonMigrations, G as number, H as array, I as defineCustomActions, J as string, K as object, L as defineEntryKind, P as customAction, Q as DeviceType, R as entryBody, S as heatingValveCapability, V as _enum, W as literal, _ as defaultIntegrationApiOver, a as BaseDevice, et as EventCategory, f as batteryCapability, h as connectionTestCapability, i as testBoschInstance, j as temperatureSensorCapability, l as RecordIntegrationInstances, m as climateControlCapability, n as boschRowsPorts, o as BaseDeviceProvider, r as keepBodyKeys, t as boschRowsMigration, v as deviceAdoptionCapability, w as integrationInstancesCapability } from "../bosch-instances-CIuDwXQ8.mjs";
1
+ import { $ as EventCategory, B as _enum, F as defineEntryKind, G as object, I as entryBody, N as customAction, O as switchCapability, P as defineCustomActions, Q as errMsg, S as integrationInstancesCapability, U as literal, V as array, W as number, Z as DeviceType, a as BaseDevice, b as heatingValveCapability, d as batteryCapability, g as deviceAdoptionCapability, i as testBoschInstance, j as RecordIntegrationInstances, k as temperatureSensorCapability, m as connectionTestCapability, n as boschRowsPorts, o as BaseDeviceProvider, p as climateControlCapability, q as string, r as keepBodyKeys, t as boschRowsMigration, z as rowsDepsOver } from "../bosch-instances-Yqi-WAZN.mjs";
2
2
  import { createRequire } from "node:module";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { request } from "node:https";
@@ -23844,12 +23844,11 @@ var BoschShcProviderAddon = class extends BaseDeviceProvider {
23844
23844
  const records = this.ctx.records;
23845
23845
  if (records === void 0) throw new Error("bosch-shc: ctx.records is required (hub-only addon)");
23846
23846
  await records.declare(shcRecordKinds);
23847
- await this.runMigrations(defineAddonMigrations(SHC_MIGRATIONS, shcRowsPorts({
23848
- api: defaultIntegrationApiOver(this.ctx.api),
23849
- secrets: this.ctx.secrets ?? null,
23850
- records,
23851
- warn: (message) => this.ctx.logger.warn(message)
23852
- })));
23847
+ this.declareRegistrySwitch({
23848
+ kind: shcConnectionsEntryKind,
23849
+ initialBody: (name) => ({ name })
23850
+ });
23851
+ await this.runMigrations(SHC_MIGRATIONS, (api) => shcRowsPorts({ ...rowsDepsOver(api) }));
23853
23852
  const built = buildShcInstances(records, {
23854
23853
  onChanged: () => this.reconcileIntegrations(),
23855
23854
  tester: this.buildConnectionTestProvider()
@@ -24016,8 +24015,9 @@ var BoschShcProviderAddon = class extends BaseDeviceProvider {
24016
24015
  if (typeof addonId === "string" && addonId !== this.ctx.id) return;
24017
24016
  this.reconcileIntegrations();
24018
24017
  };
24019
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationEnabled }, handler);
24020
- this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDisabled }, handler);
24018
+ this.requireInstances().onSwitched(() => {
24019
+ this.reconcileIntegrations();
24020
+ });
24021
24021
  this.ctx.eventBus.subscribe({ category: EventCategory.IntegrationDeleted }, handler);
24022
24022
  }
24023
24023
  async cascadeRemoveDevicesForIntegration(integrationId) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-bosch",
3
- "version": "0.1.38",
3
+ "version": "0.1.40",
4
4
  "description": "Bosch smart-home device-provider addons for CamStack — SHC, Home Connect, and HomeCom cloud integrations (scaffold)",
5
5
  "keywords": [
6
6
  "camstack",
@@ -141,7 +141,7 @@
141
141
  }
142
142
  ],
143
143
  "requires": {
144
- "server": ">=1.2.778"
144
+ "server": ">=1.2.786"
145
145
  }
146
146
  },
147
147
  "files": [