@camstack/addon-provider-dreo 0.2.66 → 0.2.67

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.
package/dist/addon.js CHANGED
@@ -33164,7 +33164,15 @@ var BaseDeviceProvider = class extends BaseAddon {
33164
33164
  if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
33165
33165
  if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
33166
33166
  await this.healSavedConfig(saved, savedDevices);
33167
- await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33167
+ try {
33168
+ await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33169
+ } catch (err) {
33170
+ if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
33171
+ this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
33172
+ deviceId: saved.id,
33173
+ stableId: saved.stableId
33174
+ } });
33175
+ }
33168
33176
  restored.add(saved.id);
33169
33177
  };
33170
33178
  const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
package/dist/addon.mjs CHANGED
@@ -33165,7 +33165,15 @@ var BaseDeviceProvider = class extends BaseAddon {
33165
33165
  if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
33166
33166
  if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
33167
33167
  await this.healSavedConfig(saved, savedDevices);
33168
- await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33168
+ try {
33169
+ await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33170
+ } catch (err) {
33171
+ if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
33172
+ this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
33173
+ deviceId: saved.id,
33174
+ stableId: saved.stableId
33175
+ } });
33176
+ }
33169
33177
  restored.add(saved.id);
33170
33178
  };
33171
33179
  const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-dreo",
3
- "version": "0.2.66",
3
+ "version": "0.2.67",
4
4
  "description": "Dreo smart-device (fan / air-circulator / purifier / heater / humidifier) device-provider addon for CamStack — wraps the @apocaliss92/nodedreo Dreo cloud client (REST + WebSocket)",
5
5
  "keywords": [
6
6
  "camstack",