@camstack/addon-provider-rademacher 0.2.150 → 0.2.152

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/CHANGELOG.md CHANGED
@@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.2.152] - 2026-10-31
11
+
12
+ ### Changed
13
+
14
+ - Shows the Rademacher logo as the integration icon.
15
+
16
+ ## [0.2.151] - 2026-10-31
17
+
18
+ ### Changed
19
+
20
+ - Shutters are offered for adoption nested under the hub.
21
+
10
22
  ## [0.2.150] - 2026-10-30
11
23
 
12
24
  ### Changed
Binary file
package/dist/addon.js CHANGED
@@ -56926,6 +56926,12 @@ var TerminalInstanceInfoSchema = object({
56926
56926
  instanceId: string(),
56927
56927
  cameraStableId: string(),
56928
56928
  nodeId: string(),
56929
+ /**
56930
+ * False while the node the instance is bound to is not in the cluster
56931
+ * topology (forgotten, renamed, re-paired). The instance is kept; the
56932
+ * operator re-points it with `updateInstance({ targetNodeId })`.
56933
+ */
56934
+ nodeInCluster: boolean(),
56929
56935
  profileId: string(),
56930
56936
  profileLabel: string(),
56931
56937
  name: string(),
@@ -56975,6 +56981,8 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
56975
56981
  auth: "admin"
56976
56982
  }), method(object({
56977
56983
  instanceId: string().min(1),
56984
+ /** Re-point the instance to another node; the profile must exist there. */
56985
+ targetNodeId: string().min(1).max(256).optional(),
56978
56986
  name: string().trim().min(1).max(160).optional(),
56979
56987
  executable: string().max(1024).optional(),
56980
56988
  args: array(string().max(2048)).max(64).optional(),
@@ -93315,7 +93323,8 @@ function resolveNativeId(integrationId, covers, childNativeId) {
93315
93323
  /**
93316
93324
  * The adoption candidates of one integration, pure and in a fixed order: the hub
93317
93325
  * box ({@link DeviceType.Gateway}), then one {@link DeviceType.Cover} per roller
93318
- * shutter. None is a child of the gateway.
93326
+ * shutter. Each cover names the gateway through `parentStableId`, so the
93327
+ * adoption modal nests it under the hub.
93319
93328
  */
93320
93329
  function buildRademacherCandidates(input) {
93321
93330
  const gatewayId = gatewayNativeId(input.integrationId);
package/dist/addon.mjs CHANGED
@@ -56925,6 +56925,12 @@ var TerminalInstanceInfoSchema = object({
56925
56925
  instanceId: string(),
56926
56926
  cameraStableId: string(),
56927
56927
  nodeId: string(),
56928
+ /**
56929
+ * False while the node the instance is bound to is not in the cluster
56930
+ * topology (forgotten, renamed, re-paired). The instance is kept; the
56931
+ * operator re-points it with `updateInstance({ targetNodeId })`.
56932
+ */
56933
+ nodeInCluster: boolean(),
56928
56934
  profileId: string(),
56929
56935
  profileLabel: string(),
56930
56936
  name: string(),
@@ -56974,6 +56980,8 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
56974
56980
  auth: "admin"
56975
56981
  }), method(object({
56976
56982
  instanceId: string().min(1),
56983
+ /** Re-point the instance to another node; the profile must exist there. */
56984
+ targetNodeId: string().min(1).max(256).optional(),
56977
56985
  name: string().trim().min(1).max(160).optional(),
56978
56986
  executable: string().max(1024).optional(),
56979
56987
  args: array(string().max(2048)).max(64).optional(),
@@ -93314,7 +93322,8 @@ function resolveNativeId(integrationId, covers, childNativeId) {
93314
93322
  /**
93315
93323
  * The adoption candidates of one integration, pure and in a fixed order: the hub
93316
93324
  * box ({@link DeviceType.Gateway}), then one {@link DeviceType.Cover} per roller
93317
- * shutter. None is a child of the gateway.
93325
+ * shutter. Each cover names the gateway through `parentStableId`, so the
93326
+ * adoption modal nests it under the hub.
93318
93327
  */
93319
93328
  function buildRademacherCandidates(input) {
93320
93329
  const gatewayId = gatewayNativeId(input.integrationId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-rademacher",
3
- "version": "0.2.150",
3
+ "version": "0.2.152",
4
4
  "description": "Rademacher HomePilot device-provider addon for CamStack — wraps the @apocaliss92/noderademacher local-hub client (roller shutters over the cover cap)",
5
5
  "keywords": [
6
6
  "camstack",
@@ -42,7 +42,7 @@
42
42
  "version": "0.1.0",
43
43
  "description": "Adopt a Rademacher HomePilot / Start2Smart hub (as a Gateway device) and its roller shutters, from an integration over the local network",
44
44
  "entry": "./dist/addon.js",
45
- "icon": "assets/icon.svg",
45
+ "icon": "assets/icon.png",
46
46
  "color": "#c8102e",
47
47
  "instanceMode": "multiple",
48
48
  "mode": "account",
package/assets/icon.svg DELETED
@@ -1,8 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round">
2
- <rect x="4" y="3" width="16" height="18" rx="1.5" />
3
- <line x1="4" y1="8" x2="20" y2="8" />
4
- <line x1="4" y1="12" x2="20" y2="12" />
5
- <line x1="4" y1="16" x2="20" y2="16" />
6
- <line x1="9" y1="21" x2="9" y2="23" />
7
- <line x1="15" y1="21" x2="15" y2="23" />
8
- </svg>