@camstack/addon-provider-velux 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
@@ -33103,7 +33103,15 @@ var BaseDeviceProvider = class extends BaseAddon {
33103
33103
  if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
33104
33104
  if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
33105
33105
  await this.healSavedConfig(saved, savedDevices);
33106
- await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33106
+ try {
33107
+ await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33108
+ } catch (err) {
33109
+ if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
33110
+ this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
33111
+ deviceId: saved.id,
33112
+ stableId: saved.stableId
33113
+ } });
33114
+ }
33107
33115
  restored.add(saved.id);
33108
33116
  };
33109
33117
  const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
package/dist/addon.mjs CHANGED
@@ -33102,7 +33102,15 @@ var BaseDeviceProvider = class extends BaseAddon {
33102
33102
  if (!Class) throw new Error(`no device class registered for type "${saved.type}"`);
33103
33103
  if (saved.parentDeviceId !== null && !restored.has(saved.parentDeviceId)) throw new Error(`parent device ${saved.parentDeviceId} not restored`);
33104
33104
  await this.healSavedConfig(saved, savedDevices);
33105
- await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33105
+ try {
33106
+ await this.ctx.kernel.devices.create(saved.stableId, Class, {}, saved.parentDeviceId);
33107
+ } catch (err) {
33108
+ if (!(await this.ctx.kernel.devices.getAll()).some((device) => device.stableId === saved.stableId)) throw err;
33109
+ this.ctx.logger.debug("Restore row came to life during its own dial — kept", { tags: {
33110
+ deviceId: saved.id,
33111
+ stableId: saved.stableId
33112
+ } });
33113
+ }
33106
33114
  restored.add(saved.id);
33107
33115
  };
33108
33116
  const topLevel = savedDevices.filter((saved) => saved.parentDeviceId === null);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-velux",
3
- "version": "0.2.66",
3
+ "version": "0.2.67",
4
4
  "description": "Velux KLF-200 device-provider addon for CamStack — local-gateway window + shutter covers (positional, no tilt)",
5
5
  "keywords": [
6
6
  "camstack",