@fastybird/smart-panel-backend 0.1.0-alpha.5 → 0.2.0-alpha.0

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 (78) hide show
  1. package/dist/migrations/1000000000000-InitialSetup.js +22 -12
  2. package/dist/migrations/1000000000000-InitialSetup.js.map +1 -1
  3. package/dist/modules/system/commands/update-panel.command.js +7 -12
  4. package/dist/modules/system/commands/update-panel.command.js.map +1 -1
  5. package/dist/modules/system/services/update.service.js +1 -1
  6. package/dist/modules/system/services/update.service.js.map +1 -1
  7. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.d.ts +11 -1
  8. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.js +212 -47
  9. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.js.map +1 -1
  10. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.d.ts +5 -0
  11. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.js +10 -1
  12. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.constants.js.map +1 -1
  13. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js +9 -1
  14. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js.map +1 -1
  15. package/dist/plugins/devices-shelly-ng/dto/create-device.dto.d.ts +0 -1
  16. package/dist/plugins/devices-shelly-ng/dto/create-device.dto.js +0 -14
  17. package/dist/plugins/devices-shelly-ng/dto/create-device.dto.js.map +1 -1
  18. package/dist/plugins/devices-shelly-ng/dto/update-device.dto.d.ts +2 -1
  19. package/dist/plugins/devices-shelly-ng/dto/update-device.dto.js +19 -4
  20. package/dist/plugins/devices-shelly-ng/dto/update-device.dto.js.map +1 -1
  21. package/dist/plugins/devices-shelly-ng/entities/devices-shelly-ng.entity.d.ts +6 -1
  22. package/dist/plugins/devices-shelly-ng/entities/devices-shelly-ng.entity.js +38 -6
  23. package/dist/plugins/devices-shelly-ng/entities/devices-shelly-ng.entity.js.map +1 -1
  24. package/dist/plugins/devices-shelly-ng/entities/shelly-ng-device-address.entity.d.ts +10 -0
  25. package/dist/plugins/devices-shelly-ng/entities/shelly-ng-device-address.entity.js +69 -0
  26. package/dist/plugins/devices-shelly-ng/entities/shelly-ng-device-address.entity.js.map +1 -0
  27. package/dist/plugins/devices-shelly-ng/services/database-discoverer.service.d.ts +3 -1
  28. package/dist/plugins/devices-shelly-ng/services/database-discoverer.service.js +19 -7
  29. package/dist/plugins/devices-shelly-ng/services/database-discoverer.service.js.map +1 -1
  30. package/dist/plugins/devices-shelly-ng/services/device-address.service.d.ts +22 -0
  31. package/dist/plugins/devices-shelly-ng/services/device-address.service.js +149 -0
  32. package/dist/plugins/devices-shelly-ng/services/device-address.service.js.map +1 -0
  33. package/dist/plugins/devices-shelly-ng/services/device-manager.service.d.ts +3 -1
  34. package/dist/plugins/devices-shelly-ng/services/device-manager.service.js +20 -7
  35. package/dist/plugins/devices-shelly-ng/services/device-manager.service.js.map +1 -1
  36. package/dist/plugins/devices-shelly-ng/subscribers/device-entity.subscriber.d.ts +6 -2
  37. package/dist/plugins/devices-shelly-ng/subscribers/device-entity.subscriber.js +75 -6
  38. package/dist/plugins/devices-shelly-ng/subscribers/device-entity.subscriber.js.map +1 -1
  39. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.constants.d.ts +4 -0
  40. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.constants.js +5 -1
  41. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.constants.js.map +1 -1
  42. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.openapi.d.ts +2 -2
  43. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.openapi.js +2 -0
  44. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.openapi.js.map +1 -1
  45. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js +11 -6
  46. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js.map +1 -1
  47. package/dist/plugins/devices-zigbee2mqtt/dto/update-config.dto.d.ts +10 -0
  48. package/dist/plugins/devices-zigbee2mqtt/dto/update-config.dto.js +117 -3
  49. package/dist/plugins/devices-zigbee2mqtt/dto/update-config.dto.js.map +1 -1
  50. package/dist/plugins/devices-zigbee2mqtt/interfaces/zigbee2mqtt.interface.d.ts +8 -0
  51. package/dist/plugins/devices-zigbee2mqtt/mappings/definitions/covers.yaml +5 -4
  52. package/dist/plugins/devices-zigbee2mqtt/models/config.model.d.ts +10 -0
  53. package/dist/plugins/devices-zigbee2mqtt/models/config.model.js +108 -3
  54. package/dist/plugins/devices-zigbee2mqtt/models/config.model.js.map +1 -1
  55. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.d.ts +3 -4
  56. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.js +11 -22
  57. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.js.map +1 -1
  58. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.d.ts +35 -0
  59. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.js +265 -0
  60. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.js.map +1 -0
  61. package/dist/plugins/devices-zigbee2mqtt/services/device-mapper.service.js +6 -5
  62. package/dist/plugins/devices-zigbee2mqtt/services/device-mapper.service.js.map +1 -1
  63. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.d.ts +4 -26
  64. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.js +16 -265
  65. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.js.map +1 -1
  66. package/dist/plugins/devices-zigbee2mqtt/services/virtual-property.types.js +0 -16
  67. package/dist/plugins/devices-zigbee2mqtt/services/virtual-property.types.js.map +1 -1
  68. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.d.ts +14 -0
  69. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.js +199 -0
  70. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.js.map +1 -0
  71. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt-config-validator.service.d.ts +2 -0
  72. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt-config-validator.service.js +69 -0
  73. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt-config-validator.service.js.map +1 -1
  74. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.d.ts +8 -1
  75. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js +86 -32
  76. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js.map +1 -1
  77. package/dist/tsconfig.build.tsbuildinfo +1 -1
  78. package/package.json +2 -2
@@ -17,11 +17,11 @@ const devices_zigbee2mqtt_constants_1 = require("../devices-zigbee2mqtt.constant
17
17
  const devices_zigbee2mqtt_entity_1 = require("../entities/devices-zigbee2mqtt.entity");
18
18
  const config_driven_converter_1 = require("../mappings/config-driven.converter");
19
19
  const device_mapper_service_1 = require("../services/device-mapper.service");
20
- const mqtt_client_adapter_service_1 = require("../services/mqtt-client-adapter.service");
21
20
  const virtual_property_service_1 = require("../services/virtual-property.service");
21
+ const zigbee2mqtt_service_1 = require("../services/zigbee2mqtt.service");
22
22
  let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
23
- constructor(mqttAdapter, virtualPropertyService, configDrivenConverter, deviceMapper) {
24
- this.mqttAdapter = mqttAdapter;
23
+ constructor(zigbee2mqttService, virtualPropertyService, configDrivenConverter, deviceMapper) {
24
+ this.zigbee2mqttService = zigbee2mqttService;
25
25
  this.virtualPropertyService = virtualPropertyService;
26
26
  this.configDrivenConverter = configDrivenConverter;
27
27
  this.deviceMapper = deviceMapper;
@@ -37,8 +37,9 @@ let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
37
37
  if (updates.length === 0) {
38
38
  return true;
39
39
  }
40
- if (!this.mqttAdapter.isConnected()) {
41
- this.logger.warn('MQTT not connected, cannot send command');
40
+ const adapter = this.zigbee2mqttService.getActiveAdapter();
41
+ if (!adapter.isConnected()) {
42
+ this.logger.warn('Not connected to Zigbee2MQTT, cannot send command');
42
43
  return false;
43
44
  }
44
45
  const byDevice = new Map();
@@ -77,7 +78,7 @@ let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
77
78
  const friendlyName = device.identifier;
78
79
  for (const { channel, props } of channels.values()) {
79
80
  try {
80
- const success = await this.executeCommand(device, channel, Array.from(props.values()), friendlyName);
81
+ const success = await this.executeCommand(adapter, device, channel, Array.from(props.values()), friendlyName);
81
82
  results.push(success);
82
83
  }
83
84
  catch (error) {
@@ -90,7 +91,7 @@ let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
90
91
  }
91
92
  return results.length > 0 && results.every((r) => r === true);
92
93
  }
93
- async executeCommand(device, channel, propertyUpdates, friendlyName) {
94
+ async executeCommand(adapter, device, channel, propertyUpdates, friendlyName) {
94
95
  const payload = {};
95
96
  let colorHue;
96
97
  let colorSaturation;
@@ -160,24 +161,12 @@ let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
160
161
  return false;
161
162
  }
162
163
  this.logger.log(`Sending command to ${friendlyName}: ${JSON.stringify(payload)}`);
163
- const success = await this.mqttAdapter.publishCommand(friendlyName, payload);
164
- if (success) {
165
- }
166
- else {
164
+ const success = await adapter.publishCommand(friendlyName, payload);
165
+ if (!success) {
167
166
  this.logger.warn(`Failed to send command to ${friendlyName}`);
168
167
  }
169
168
  return success;
170
169
  }
171
- coerceBoolean(value) {
172
- if (typeof value === 'boolean') {
173
- return value;
174
- }
175
- if (typeof value === 'number') {
176
- return value !== 0;
177
- }
178
- const strValue = String(value).toLowerCase();
179
- return strValue === 'true' || strValue === '1' || strValue === 'on';
180
- }
181
170
  coerceNumber(value, min, max) {
182
171
  let numValue;
183
172
  if (typeof value === 'number') {
@@ -198,7 +187,7 @@ let Zigbee2mqttDevicePlatform = class Zigbee2mqttDevicePlatform {
198
187
  exports.Zigbee2mqttDevicePlatform = Zigbee2mqttDevicePlatform;
199
188
  exports.Zigbee2mqttDevicePlatform = Zigbee2mqttDevicePlatform = __decorate([
200
189
  (0, common_1.Injectable)(),
201
- __metadata("design:paramtypes", [mqtt_client_adapter_service_1.Z2mMqttClientAdapterService,
190
+ __metadata("design:paramtypes", [zigbee2mqtt_service_1.Zigbee2mqttService,
202
191
  virtual_property_service_1.Z2mVirtualPropertyService,
203
192
  config_driven_converter_1.ConfigDrivenConverter,
204
193
  device_mapper_service_1.Z2mDeviceMapperService])
@@ -1 +1 @@
1
- {"version":3,"file":"zigbee2mqtt.device.platform.js","sourceRoot":"","sources":["../../../../src/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zigbee2mqtt.device.platform.js","sourceRoot":"","sources":["../../../../src/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { ExtensionLoggerService } from '../../../common/logger';
2
+ import { Z2mAdapterCallbacks, Z2mMqttConfig, Z2mRegisteredDevice, Z2mSetPayload, Z2mWsConfig } from '../interfaces/zigbee2mqtt.interface';
3
+ export declare abstract class Z2mBaseClientAdapter {
4
+ protected readonly logger: ExtensionLoggerService;
5
+ protected connected: boolean;
6
+ protected bridgeOnline: boolean;
7
+ protected reconnectTimer: NodeJS.Timeout | null;
8
+ protected configBaseTopic: string;
9
+ protected readonly deviceRegistry: Map<string, Z2mRegisteredDevice>;
10
+ protected readonly stateCache: Map<string, Record<string, unknown>>;
11
+ protected callbacks: Z2mAdapterCallbacks;
12
+ constructor(adapterName: string);
13
+ setCallbacks(callbacks: Z2mAdapterCallbacks): void;
14
+ get baseTopic(): string;
15
+ isConnected(): boolean;
16
+ isBridgeOnline(): boolean;
17
+ getRegisteredDevices(): Z2mRegisteredDevice[];
18
+ getDevice(friendlyName: string): Z2mRegisteredDevice | undefined;
19
+ getDeviceByIeeeAddress(ieeeAddress: string): Z2mRegisteredDevice | undefined;
20
+ getCachedState(friendlyName: string): Record<string, unknown>;
21
+ abstract connect(config: Z2mMqttConfig | Z2mWsConfig): Promise<void>;
22
+ abstract disconnect(): Promise<void>;
23
+ abstract publishCommand(friendlyName: string, payload: Z2mSetPayload): Promise<boolean>;
24
+ abstract requestState(friendlyName: string, properties?: string[]): Promise<boolean>;
25
+ protected handleMessage(topic: string, message: string, isRelative?: boolean): void;
26
+ protected handleBridgeMessage(subtopic: string | undefined, message: string): void;
27
+ protected handleBridgeStateMessage(message: string): void;
28
+ protected handleBridgeDevicesMessage(message: string): void;
29
+ protected requestMissingStates(): void;
30
+ protected handleBridgeEventMessage(message: string): void;
31
+ protected handleDeviceStateMessage(friendlyName: string, message: string): void;
32
+ protected handleDeviceAvailabilityMessage(friendlyName: string, message: string): void;
33
+ protected clearReconnectTimer(): void;
34
+ protected resetState(): void;
35
+ }
@@ -0,0 +1,265 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Z2mBaseClientAdapter = void 0;
4
+ const logger_1 = require("../../../common/logger");
5
+ const devices_zigbee2mqtt_constants_1 = require("../devices-zigbee2mqtt.constants");
6
+ class Z2mBaseClientAdapter {
7
+ constructor(adapterName) {
8
+ this.connected = false;
9
+ this.bridgeOnline = false;
10
+ this.reconnectTimer = null;
11
+ this.configBaseTopic = devices_zigbee2mqtt_constants_1.DEFAULT_MQTT_BASE_TOPIC;
12
+ this.deviceRegistry = new Map();
13
+ this.stateCache = new Map();
14
+ this.callbacks = {};
15
+ this.logger = (0, logger_1.createExtensionLogger)(devices_zigbee2mqtt_constants_1.DEVICES_ZIGBEE2MQTT_PLUGIN_NAME, adapterName);
16
+ }
17
+ setCallbacks(callbacks) {
18
+ this.callbacks = callbacks;
19
+ }
20
+ get baseTopic() {
21
+ return this.configBaseTopic;
22
+ }
23
+ isConnected() {
24
+ return this.connected;
25
+ }
26
+ isBridgeOnline() {
27
+ return this.bridgeOnline;
28
+ }
29
+ getRegisteredDevices() {
30
+ return Array.from(this.deviceRegistry.values());
31
+ }
32
+ getDevice(friendlyName) {
33
+ return this.deviceRegistry.get(friendlyName);
34
+ }
35
+ getDeviceByIeeeAddress(ieeeAddress) {
36
+ for (const device of this.deviceRegistry.values()) {
37
+ if (device.ieeeAddress === ieeeAddress) {
38
+ return device;
39
+ }
40
+ }
41
+ return undefined;
42
+ }
43
+ getCachedState(friendlyName) {
44
+ return this.stateCache.get(friendlyName) ?? {};
45
+ }
46
+ handleMessage(topic, message, isRelative = false) {
47
+ try {
48
+ const relativePath = isRelative ? topic : topic.replace(`${this.baseTopic}/`, '');
49
+ if (!relativePath) {
50
+ return;
51
+ }
52
+ const topicParts = relativePath.split('/');
53
+ if (this.deviceRegistry.has(relativePath)) {
54
+ this.handleDeviceStateMessage(relativePath, message);
55
+ return;
56
+ }
57
+ if (topicParts[0] === 'bridge') {
58
+ this.handleBridgeMessage(topicParts[1], message);
59
+ return;
60
+ }
61
+ const lastPart = topicParts[topicParts.length - 1];
62
+ const pathWithoutSuffix = topicParts.slice(0, -1).join('/');
63
+ if (lastPart === 'availability' && pathWithoutSuffix) {
64
+ this.handleDeviceAvailabilityMessage(pathWithoutSuffix, message);
65
+ return;
66
+ }
67
+ if (lastPart === 'set' || lastPart === 'get') {
68
+ return;
69
+ }
70
+ this.handleDeviceStateMessage(relativePath, message);
71
+ }
72
+ catch (error) {
73
+ this.logger.warn(`Failed to handle message on topic ${topic}`, {
74
+ message: error instanceof Error ? error.message : String(error),
75
+ });
76
+ }
77
+ }
78
+ handleBridgeMessage(subtopic, message) {
79
+ switch (subtopic) {
80
+ case 'state':
81
+ this.handleBridgeStateMessage(message);
82
+ break;
83
+ case 'devices':
84
+ this.handleBridgeDevicesMessage(message);
85
+ break;
86
+ case 'event':
87
+ this.handleBridgeEventMessage(message);
88
+ break;
89
+ case 'groups':
90
+ this.logger.debug('Received bridge/groups message (not implemented)');
91
+ break;
92
+ }
93
+ }
94
+ handleBridgeStateMessage(message) {
95
+ try {
96
+ const state = JSON.parse(message);
97
+ const wasOnline = this.bridgeOnline;
98
+ this.bridgeOnline = state.state === 'online';
99
+ if (this.bridgeOnline && !wasOnline) {
100
+ this.logger.log('Zigbee2MQTT bridge is online');
101
+ void this.callbacks.onBridgeOnline?.();
102
+ }
103
+ else if (!this.bridgeOnline && wasOnline) {
104
+ this.logger.warn('Zigbee2MQTT bridge is offline');
105
+ void this.callbacks.onBridgeOffline?.();
106
+ }
107
+ }
108
+ catch (error) {
109
+ this.logger.warn('Failed to parse bridge/state message', {
110
+ message: error instanceof Error ? error.message : String(error),
111
+ });
112
+ }
113
+ }
114
+ handleBridgeDevicesMessage(message) {
115
+ try {
116
+ const devices = JSON.parse(message);
117
+ this.logger.log(`Received device registry with ${devices.length} devices`);
118
+ for (const device of devices) {
119
+ if (device.definition) {
120
+ this.logger.debug(`Device ${device.friendly_name}: ${device.definition.exposes?.length ?? 0} exposes, ` +
121
+ `types: ${device.definition.exposes?.map((e) => e.type).join(', ') ?? 'none'}`);
122
+ }
123
+ }
124
+ for (const device of devices) {
125
+ if (devices_zigbee2mqtt_constants_1.Z2M_IGNORED_DEVICE_TYPES.includes(device.type) ||
126
+ !device.supported ||
127
+ device.disabled) {
128
+ continue;
129
+ }
130
+ const existing = this.deviceRegistry.get(device.friendly_name);
131
+ const cachedState = this.stateCache.get(device.friendly_name) ?? {};
132
+ const registeredDevice = {
133
+ ieeeAddress: device.ieee_address,
134
+ friendlyName: device.friendly_name,
135
+ description: device.description,
136
+ type: device.type,
137
+ supported: device.supported,
138
+ disabled: device.disabled,
139
+ definition: device.definition,
140
+ powerSource: device.power_source,
141
+ modelId: device.model_id,
142
+ available: existing?.available ?? true,
143
+ lastSeen: existing?.lastSeen,
144
+ currentState: { ...(existing?.currentState ?? {}), ...cachedState },
145
+ };
146
+ this.deviceRegistry.set(device.friendly_name, registeredDevice);
147
+ if (Object.keys(cachedState).length > 0) {
148
+ this.logger.debug(`Applied cached state to "${device.friendly_name}": ${Object.keys(cachedState).join(', ')}`);
149
+ }
150
+ }
151
+ const currentFriendlyNames = new Set(devices.map((d) => d.friendly_name));
152
+ for (const friendlyName of this.deviceRegistry.keys()) {
153
+ if (!currentFriendlyNames.has(friendlyName)) {
154
+ this.deviceRegistry.delete(friendlyName);
155
+ }
156
+ }
157
+ this.requestMissingStates();
158
+ const filteredDevices = devices.filter((d) => !devices_zigbee2mqtt_constants_1.Z2M_IGNORED_DEVICE_TYPES.includes(d.type) &&
159
+ d.supported &&
160
+ !d.disabled);
161
+ void this.callbacks.onDevicesReceived?.(filteredDevices);
162
+ }
163
+ catch (error) {
164
+ this.logger.error('Failed to parse bridge/devices message', {
165
+ message: error instanceof Error ? error.message : String(error),
166
+ });
167
+ }
168
+ }
169
+ requestMissingStates() {
170
+ for (const [friendlyName, device] of this.deviceRegistry.entries()) {
171
+ if (Object.keys(device.currentState).length === 0) {
172
+ this.logger.debug(`Requesting state for device without current state: ${friendlyName}`);
173
+ this.requestState(friendlyName).catch(() => {
174
+ });
175
+ }
176
+ }
177
+ }
178
+ handleBridgeEventMessage(message) {
179
+ try {
180
+ const event = JSON.parse(message);
181
+ switch (event.type) {
182
+ case 'device_joined':
183
+ case 'device_announce':
184
+ this.logger.log(`Device joined: ${event.data.friendly_name}`);
185
+ void this.callbacks.onDeviceJoined?.(event.data.ieee_address ?? '', event.data.friendly_name ?? '');
186
+ break;
187
+ case 'device_leave':
188
+ this.logger.log(`Device left: ${event.data.friendly_name}`);
189
+ if (event.data.friendly_name) {
190
+ this.deviceRegistry.delete(event.data.friendly_name);
191
+ }
192
+ void this.callbacks.onDeviceLeft?.(event.data.ieee_address ?? '', event.data.friendly_name ?? '');
193
+ break;
194
+ case 'device_interview':
195
+ this.logger.debug(`Device interview: ${event.data.friendly_name} - ${event.data.status}`);
196
+ break;
197
+ }
198
+ }
199
+ catch (error) {
200
+ this.logger.warn('Failed to parse bridge/event message', {
201
+ message: error instanceof Error ? error.message : String(error),
202
+ });
203
+ }
204
+ }
205
+ handleDeviceStateMessage(friendlyName, message) {
206
+ try {
207
+ const state = JSON.parse(message);
208
+ this.logger.debug(`Received state for "${friendlyName}": ${Object.keys(state).join(', ')}`);
209
+ const existingCachedState = this.stateCache.get(friendlyName) ?? {};
210
+ this.stateCache.set(friendlyName, { ...existingCachedState, ...state });
211
+ const device = this.deviceRegistry.get(friendlyName);
212
+ if (device) {
213
+ device.currentState = { ...device.currentState, ...state };
214
+ device.lastSeen = new Date();
215
+ this.logger.debug(`Updated registry and cache for "${friendlyName}"`);
216
+ }
217
+ else {
218
+ this.logger.debug(`Updated cache for "${friendlyName}" (not yet in registry)`);
219
+ }
220
+ void this.callbacks.onDeviceStateChanged?.(friendlyName, state);
221
+ }
222
+ catch (error) {
223
+ this.logger.warn(`Failed to parse state for device ${friendlyName}`, {
224
+ message: error instanceof Error ? error.message : String(error),
225
+ });
226
+ }
227
+ }
228
+ handleDeviceAvailabilityMessage(friendlyName, message) {
229
+ this.logger.debug(`Received availability for "${friendlyName}": ${message}`);
230
+ try {
231
+ let available;
232
+ try {
233
+ const availability = JSON.parse(message);
234
+ available = availability.state === 'online';
235
+ }
236
+ catch {
237
+ available = message === 'online';
238
+ }
239
+ const device = this.deviceRegistry.get(friendlyName);
240
+ if (device) {
241
+ device.available = available;
242
+ }
243
+ void this.callbacks.onDeviceAvailabilityChanged?.(friendlyName, available);
244
+ }
245
+ catch (error) {
246
+ this.logger.warn(`Failed to parse availability for device ${friendlyName}`, {
247
+ message: error instanceof Error ? error.message : String(error),
248
+ });
249
+ }
250
+ }
251
+ clearReconnectTimer() {
252
+ if (this.reconnectTimer) {
253
+ clearTimeout(this.reconnectTimer);
254
+ this.reconnectTimer = null;
255
+ }
256
+ }
257
+ resetState() {
258
+ this.connected = false;
259
+ this.bridgeOnline = false;
260
+ this.deviceRegistry.clear();
261
+ this.stateCache.clear();
262
+ }
263
+ }
264
+ exports.Z2mBaseClientAdapter = Z2mBaseClientAdapter;
265
+ //# sourceMappingURL=base-client-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-client-adapter.js","sourceRoot":"","sources":["../../../../src/plugins/devices-zigbee2mqtt/services/base-client-adapter.ts"],"names":[],"mappings":"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"}
@@ -217,6 +217,9 @@ let Z2mDeviceMapperService = class Z2mDeviceMapperService {
217
217
  z2mPropertyKey === 'state') {
218
218
  continue;
219
219
  }
220
+ if (property.permissions?.length === 1 && property.permissions[0] === devices_constants_1.PermissionType.WRITE_ONLY) {
221
+ continue;
222
+ }
220
223
  if (channel.category === devices_constants_1.ChannelCategory.LIGHT && property.category === devices_constants_1.PropertyCategory.BRIGHTNESS) {
221
224
  continue;
222
225
  }
@@ -546,13 +549,10 @@ let Z2mDeviceMapperService = class Z2mDeviceMapperService {
546
549
  }
547
550
  }
548
551
  async createProperty(channel, mappedProperty) {
549
- const isSharedZ2mProperty = mappedProperty.z2mProperty === 'color' &&
550
- (mappedProperty.category === devices_constants_1.PropertyCategory.HUE || mappedProperty.category === devices_constants_1.PropertyCategory.SATURATION);
551
552
  const isStaticProperty = mappedProperty.z2mProperty.startsWith('__static_');
552
553
  const isDerivedProperty = mappedProperty.z2mProperty.startsWith('__derived_');
553
- const propertyIdentifier = isSharedZ2mProperty || isStaticProperty || isDerivedProperty
554
- ? mappedProperty.identifier
555
- : mappedProperty.z2mProperty;
554
+ const useSpecIdentifier = isStaticProperty || isDerivedProperty || mappedProperty.identifier !== mappedProperty.z2mProperty;
555
+ const propertyIdentifier = useSpecIdentifier ? mappedProperty.identifier : mappedProperty.z2mProperty;
556
556
  let property = await this.channelsPropertiesService.findOneBy('identifier', propertyIdentifier, channel.id, devices_zigbee2mqtt_constants_1.DEVICES_ZIGBEE2MQTT_TYPE);
557
557
  if (!property) {
558
558
  const format = mappedProperty.format && mappedProperty.format.length > 0
@@ -571,6 +571,7 @@ let Z2mDeviceMapperService = class Z2mDeviceMapperService {
571
571
  permissions: mappedProperty.permissions,
572
572
  format,
573
573
  step: mappedProperty.step ?? null,
574
+ invalid: mappedProperty.invalid ?? null,
574
575
  value: mappedProperty.staticValue ?? null,
575
576
  };
576
577
  property = await this.channelsPropertiesService.create(channel.id, createDto);
@@ -1 +1 @@
1
- {"version":3,"file":"device-mapper.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-zigbee2mqtt/services/device-mapper.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-mapper.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-zigbee2mqtt/services/device-mapper.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,mDAAuF;AACvF,2EAAmE;AACnE,kFAMoD;AACpD,+GAA0G;AAC1G,yFAAqF;AACrF,+GAA0G;AAC1G,qHAA+G;AAC/G,uFAAmF;AACnF,oFAM0C;AAI1C,oFAAyF;AAQzF,iFAA4E;AAC5E,+EAA0E;AAC1E,2DAA+D;AAE/D,qEAAkG;AAClG,yEAAuE;AACvE,qEAIkC;AAa3B,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IASlC,YACkB,cAA8B,EAC9B,eAAgC,EAChC,yBAAoD,EACpD,yBAAoD,EACpD,aAAsC,EACtC,sBAAiD,EACjD,aAAmC,EACnC,qBAA4C,EAC5C,mBAAwC,EACxC,cAA2C;QAT3C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,oBAAe,GAAf,eAAe,CAAiB;QAChC,8BAAyB,GAAzB,yBAAyB,CAA2B;QACpD,8BAAyB,GAAzB,yBAAyB,CAA2B;QACpD,kBAAa,GAAb,aAAa,CAAyB;QACtC,2BAAsB,GAAtB,sBAAsB,CAA2B;QACjD,kBAAa,GAAb,aAAa,CAAsB;QACnC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,mBAAc,GAAd,cAAc,CAA6B;QAlB5C,WAAM,GAA2B,IAAA,8BAAqB,EACtE,+DAA+B,EAC/B,cAAc,CACd,CAAC;QAGe,yBAAoB,GAAG,IAAI,GAAG,EAA4D,CAAC;IAazG,CAAC;IAQJ,2BAA2B,CAAC,UAAkB,EAAE,eAAuB,EAAE,WAAmB;QAC3F,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7E,CAAC;IAMD,KAAK,CAAC,qCAAqC,CAAC,iBAAwC;QAEnF,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC9D,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;YACxC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAA0B,wDAAwB,CAAC,CAAC;QAErG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAE9B,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC;gBAC5B,SAAS;YACV,CAAC;YAGD,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE;gBAClF,KAAK,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK;gBACjC,YAAY,EAAE,SAAS,CAAC,UAAU,CAAC,MAAM;aACzC,CAAC,CAAC;YAGH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAClD,MAAM,CAAC,EAAE,EACT,wDAAwB,CACxB,CAAC;YAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAEhC,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACpF,IAAI,CAAC,aAAa,EAAE,CAAC;oBACpB,SAAS;gBACV,CAAC;gBAGD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAC9D,OAAO,CAAC,EAAE,EACV,wDAAwB,CACxB,CAAC;gBAEF,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;oBAEnC,MAAM,cAAc,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAChG,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC;wBACtC,SAAS;oBACV,CAAC;oBAGD,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,uCAAuC,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,QAAQ,QAAQ,cAAc,CAAC,eAAe,EAAE,CAChH,CAAC;oBACF,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC,eAAe,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;gBAC3G,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,oBAAoB,CAAC,IAAI,aAAa,CAAC,CAAC;IAC3F,CAAC;IAKD,kBAAkB,CAAC,UAAkB,EAAE,KAAc;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACJ,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,eAAe,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC,CAAC;YAChG,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAMD,mBAAmB,CAAC,UAAkB,EAAE,KAAc;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,EAAE,WAAW,EAAE,eAAe,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wCAAwC,eAAe,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC,CAAC;YACtG,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IAMD,yBAAyB,CAAC,UAAkB;QAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClE,OAAO,eAAe,EAAE,WAAW,IAAI,IAAI,CAAC;IAC7C,CAAC;IAOD,KAAK,CAAC,SAAS,CACd,SAA0C,EAC1C,oBAA6B,IAAI;QAEjC,MAAM,YAAY,GAAG,eAAe,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC;QAErG,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACxG,CAAC;IAKO,KAAK,CAAC,WAAW,CACxB,SAA0C,EAC1C,iBAA0B;QAE1B,MAAM,YAAY,GAAG,eAAe,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC;QACrG,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QAExC,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACb,CAAC;QAGD,MAAM,UAAU,GAAG,YAAY,CAAC;QAEhC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAC;QAGnD,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAG1G,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa;aACrC,wBAAwB,EAAE;aAC1B,0BAA0B,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAG/G,MAAM,cAAc,GAAG,YAAY,IAAI,IAAA,8DAA8B,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAGlG,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAC/C,YAAY,EACZ,UAAU,EACV,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACxB,OAAO,IAAI,CAAC;YACb,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;YAGtD,MAAM,eAAe,GAAG,aAAa,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,MAAM,UAAU,GAAG,eAAe,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;YAE/G,MAAM,SAAS,GAA+B;gBAC7C,IAAI,EAAE,wDAAwB;gBAC9B,UAAU;gBACV,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE,IAAI;aACb,CAAC;YAEF,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAsD,SAAS,CAAC,CAAC;QAC3G,CAAC;QAGD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,MAAM,CAAC;QACf,CAAC;QAGD,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAGtD,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE;YACxE,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,YAAY,EAAE,UAAU,CAAC,MAAM;SAC/B,CAAC,CAAC;QAGH,MAAM,WAAW,GAAG,cAAc,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;QACjG,MAAM,YAAY,GAAG,cAAc,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,cAAc,GAA2B;YAC9C,KAAK,EAAE,YAAY;YACnB,YAAY;YACZ,WAAW;SACX,CAAC;QAEF,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAE/E,OAAO,MAAM,CAAC;IACf,CAAC;IAOD,KAAK,CAAC,iBAAiB,CAAC,YAAoB,EAAE,KAA8B;QAE3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CACjD,YAAY,EACZ,YAAY,EACZ,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAG3G,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAA2B,MAAM,CAAC,EAAE,EAAE,wDAAwB,CAAC,CAAC;QAEnH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,QAAQ,CAAC,MAAM,wBAAwB,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAG3G,MAAM,cAAc,GAA2B;YAC9C,KAAK;YACL,YAAY;YACZ,WAAW,EAAE,EAAE;SACf,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAEhC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAC9D,OAAO,CAAC,EAAE,EACV,wDAAwB,CACxB,CAAC;YAEF,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,UAAU,CAAC;gBAG/C,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,EAAE,8BAA8B,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;oBACjG,SAAS;gBACV,CAAC;gBAGD,IAAI,kBAAkB,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;oBAElD,MAAM,UAAU,GAAG,IAAA,qDAA4B,EAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAErF,IAAI,UAAU,EAAE,CAAC;wBAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;wBAErG,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,6BAA6B,kBAAkB,MAAM,QAAQ,cAAc,OAAO,CAAC,QAAQ,GAAG,EAC9F,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CACvB,CAAC;wBAEF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,QAAQ,CAAC,EAAE,EACX,IAAA,4BAAU,EAAC,iEAAmC,EAAE;4BAC/C,IAAI,EAAE,wDAAwB;4BAC9B,KAAK,EAAE,QAAQ;yBACf,CAAC,CACF,CAAC;oBACH,CAAC;oBACD,SAAS;gBACV,CAAC;gBAKD,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC1E,MAAM,cAAc,GAAG,qBAAqB,IAAI,kBAAkB,CAAC;gBAGnE,IAAI,CAAC,CAAC,cAAc,IAAI,KAAK,CAAC,EAAE,CAAC;oBAChC,SAAS;gBACV,CAAC;gBAGD,IACC,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,eAAe;oBACpD,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,MAAM;oBAC7C,cAAc,KAAK,OAAO,EACzB,CAAC;oBACF,SAAS;gBACV,CAAC;gBAGD,IAAI,QAAQ,CAAC,WAAW,EAAE,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,kCAAc,CAAC,UAAU,EAAE,CAAC;oBACjG,SAAS;gBACV,CAAC;gBAGD,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,UAAU,EAAE,CAAC;oBACrG,SAAS;gBACV,CAAC;gBAGD,IACC,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK;oBAC1C,CAAC,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,GAAG,IAAI,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,UAAU,CAAC,EAChG,CAAC;oBACF,SAAS;gBACV,CAAC;gBAGD,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,iBAAiB,EAAE,CAAC;oBAC5G,SAAS;gBACV,CAAC;gBAGD,IACC,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,kBAAkB;oBACvD,QAAQ,CAAC,QAAQ,KAAK,oCAAgB,CAAC,YAAY,EAClD,CAAC;oBACF,SAAS;gBACV,CAAC;gBAED,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;gBAGvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAGxE,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAE9E,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,kBAAkB,aAAa,cAAc,MAAM,QAAQ,CAAC,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,cAAc,EAAE,CACtL,CAAC;gBAGF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,QAAQ,CAAC,EAAE,EACX,IAAA,4BAAU,EAAC,iEAAmC,EAAE;oBAC/C,IAAI,EAAE,wDAAwB;oBAC9B,KAAK,EAAE,cAAc;iBACrB,CAAC,CACF,CAAC;YACH,CAAC;YAMD,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,eAAe,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC9E,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,oCAAgB,CAAC,MAAM,CAAC,CAAC;gBAElF,IAAI,UAAU,EAAE,CAAC;oBAChB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBAE5D,IAAI,gBAAgB,EAAE,CAAC;wBACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,gBAAgB,EAAE,CAAC,CAAC;wBAEzG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,UAAU,CAAC,EAAE,EACb,IAAA,4BAAU,EAAC,iEAAmC,EAAE;4BAC/C,IAAI,EAAE,wDAAwB;4BAC9B,KAAK,EAAE,gBAAgB;yBACvB,CAAC,CACF,CAAC;oBACH,CAAC;gBACF,CAAC;YACF,CAAC;YAGD,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,kBAAkB,IAAI,aAAa,IAAI,KAAK,EAAE,CAAC;gBACvF,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,oEAAoC,CAAC,YAAY,CACzE,CAAC;gBAEF,IAAI,eAAe,EAAE,CAAC;oBACrB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;oBAEtC,MAAM,kBAAkB,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAE1G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,kBAAkB,GAAG,CAAC,CAAC;oBAEpE,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,eAAe,CAAC,EAAE,EAClB,IAAA,4BAAU,EAAC,iEAAmC,EAAE;wBAC/C,IAAI,EAAE,wDAAwB;wBAC9B,KAAK,EAAE,kBAAkB;qBACzB,CAAC,CACF,CAAC;gBACH,CAAC;YACF,CAAC;YAID,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC;gBACzE,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,oCAAgB,CAAC,UAAU,CAAC,CAAC;gBAE1F,IAAI,cAAc,EAAE,CAAC;oBACpB,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC;oBAEvC,MAAM,iBAAiB,GAAG,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAE7G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,iBAAiB,GAAG,CAAC,CAAC;oBAEpG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,cAAc,CAAC,EAAE,EACjB,IAAA,4BAAU,EAAC,iEAAmC,EAAE;wBAC/C,IAAI,EAAE,wDAAwB;wBAC9B,KAAK,EAAE,iBAAiB;qBACxB,CAAC,CACF,CAAC;gBACH,CAAC;YACF,CAAC;YAID,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gBACpE,MAAM,UAAU,GAAG,KAAK,CAAC,KAA4C,CAAC;gBAEtE,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;oBAElD,IAAI,KAAK,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;wBAC/D,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,oCAAgB,CAAC,GAAG,CAAC,CAAC;wBAC5E,IAAI,OAAO,EAAE,CAAC;4BACb,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;4BAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,UAAU,CAAC,GAAG,OAAO,QAAQ,EAAE,CAAC,CAAC;4BAEpE,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,OAAO,CAAC,EAAE,EACV,IAAA,4BAAU,EAAC,iEAAmC,EAAE;gCAC/C,IAAI,EAAE,wDAAwB;gCAC9B,KAAK,EAAE,QAAQ;6BACf,CAAC,CACF,CAAC;wBACH,CAAC;oBACF,CAAC;oBAGD,IAAI,YAAY,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;wBAC7E,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,oCAAgB,CAAC,UAAU,CAAC,CAAC;wBAC1F,IAAI,cAAc,EAAE,CAAC;4BACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;4BACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,UAAU,CAAC,UAAU,OAAO,QAAQ,GAAG,CAAC,CAAC;4BAEnF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,cAAc,CAAC,EAAE,EACjB,IAAA,4BAAU,EAAC,iEAAmC,EAAE;gCAC/C,IAAI,EAAE,wDAAwB;gCAC9B,KAAK,EAAE,QAAQ;6BACf,CAAC,CACF,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;YAKD,IAAI,OAAO,CAAC,QAAQ,KAAK,mCAAe,CAAC,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC;gBACzE,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,oCAAgB,CAAC,iBAAiB,CAAC,CAAC;gBAEhG,IAAI,aAAa,EAAE,CAAC;oBACnB,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC;oBACtC,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;wBAE1D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;wBAGlD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC;wBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBACxG,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBACxG,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;wBAEvE,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,wBAAwB,YAAY,aAAa,aAAa,cAAc,SAAS,IAAI,SAAS,GAAG,CACrG,CAAC;wBAEF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,aAAa,CAAC,EAAE,EAChB,IAAA,4BAAU,EAAC,iEAAmC,EAAE;4BAC/C,IAAI,EAAE,wDAAwB;4BAC9B,KAAK,EAAE,aAAa;yBACpB,CAAC,CACF,CAAC;oBACH,CAAC;gBACF,CAAC;YACF,CAAC;YAGD,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC;IAKO,KAAK,CAAC,uBAAuB,CACpC,OAAiC,EACjC,UAA8C,EAC9C,KAA8B,EAC9B,QAAgB;QAGhB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAExF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;QACR,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YAEtC,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;YAE/F,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClB,SAAS;YACV,CAAC;YAGD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,cAAc,CAAC,CAAC;YAElG,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,oBAAoB,UAAU,CAAC,cAAc,qCAAqC,UAAU,CAAC,UAAU,GAAG,EAC1G,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACtB,CAAC;gBACF,SAAS;YACV,CAAC;YAGD,IAAI,WAAW,GAAY,SAAS,CAAC;YAGrC,IAAI,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC;gBAC7D,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC;YAGD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC/B,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC;YACvC,CAAC;YAGD,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBACvD,SAAS;YACV,CAAC;YAGD,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEpG,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC3B,SAAS;YACV,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,6BAA6B,WAAW,CAAC,UAAU,MAAM,YAAY,UAAU,UAAU,CAAC,UAAU,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,EACxI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CACtB,CAAC;YAEF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,WAAW,CAAC,EAAE,EACd,IAAA,4BAAU,EAAC,iEAAmC,EAAE;gBAC/C,IAAI,EAAE,wDAAwB;gBAC9B,KAAK,EAAE,YAAY;aACnB,CAAC,CACF,CAAC;QACH,CAAC;IACF,CAAC;IAMD,KAAK,CAAC,qBAAqB,CAAC,YAAoB,EAAE,SAAkB;QACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CACjD,YAAY,EACZ,YAAY,EACZ,wDAAwB,CACxB,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAe,CAAC,SAAS,CAAC,CAAC,CAAC,mCAAe,CAAC,YAAY;aAC3E,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;QAGR,CAAC;IACF,CAAC;IAKD,KAAK,CAAC,wBAAwB,CAAC,UAAkB,EAAE,KAAsB;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CACjD,YAAY,EACZ,UAAU,EACV,wDAAwB,CACxB,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;IACF,CAAC;IAKD,KAAK,CAAC,aAAa;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAA0B,wDAAwB,CAAC,CAAC;IACvF,CAAC;IAKO,KAAK,CAAC,uBAAuB,CACpC,MAA+B,EAC/B,SAA0C;QAE1C,MAAM,iBAAiB,GAAG,uDAAuB,CAAC,kBAAkB,CAAC;QACrE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QACxC,MAAM,WAAW,GAAG,cAAc,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;QAGjG,MAAM,YAAY,GAAG,cAAc,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAG/E,MAAM,WAAW,GAAG,YAAY,EAAE,WAAW,CAAC;QAE9C,MAAM,kBAAkB,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAG1G,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CACjD,YAAY,EACZ,iBAAiB,EACjB,MAAM,CAAC,EAAE,EACT,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,gBAAgB,GAAgC;gBACrD,IAAI,EAAE,wDAAwB;gBAC9B,UAAU,EAAE,iBAAiB;gBAC7B,IAAI,EAAE,oBAAoB;gBAC1B,QAAQ,EAAE,mCAAe,CAAC,kBAAkB;gBAC5C,MAAM,EAAE,MAAM,CAAC,EAAE;aACjB,CAAC;YAEF,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAC1C,gBAAgB,CAChB,CAAC;QACH,CAAC;QAID,MAAM,IAAI,CAAC,0BAA0B,CACpC,OAAO,EACP,oEAAoC,CAAC,YAAY,EACjD,cAAc,EACd,oCAAgB,CAAC,YAAY,EAC7B,UAAU,EAAE,MAAM,IAAI,SAAS,CAC/B,CAAC;QACF,MAAM,IAAI,CAAC,0BAA0B,CACpC,OAAO,EACP,oEAAoC,CAAC,KAAK,EAC1C,OAAO,EACP,oCAAgB,CAAC,KAAK,EACtB,UAAU,EAAE,KAAK,IAAI,SAAS,CAC9B,CAAC;QACF,MAAM,IAAI,CAAC,0BAA0B,CACpC,OAAO,EACP,oEAAoC,CAAC,aAAa,EAClD,eAAe,EACf,oCAAgB,CAAC,aAAa,EAC9B,WAAW,CACX,CAAC;QACF,MAAM,IAAI,CAAC,0BAA0B,CACpC,OAAO,EACP,oEAAoC,CAAC,YAAY,EACjD,cAAc,EACd,oCAAgB,CAAC,YAAY,EAC7B,kBAAkB,EAClB,gCAAY,CAAC,KAAK,EAClB,CAAC,CAAC,EAAE,GAAG,CAAC,CACR,CAAC;IACH,CAAC;IAKO,KAAK,CAAC,0BAA0B,CACvC,OAAiC,EACjC,UAAkB,EAClB,IAAY,EACZ,QAA0B,EAC1B,KAA6B,EAC7B,WAAyB,gCAAY,CAAC,MAAM,EAC5C,SAAqC,IAAI;QAEzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAC9D,YAAY,EACZ,UAAU,EACV,OAAO,CAAC,EAAE,EACV,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,SAAS,GAAwC;gBACtD,IAAI,EAAE,wDAAwB;gBAC9B,UAAU;gBACV,IAAI;gBACJ,QAAQ;gBACR,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,CAAC,kCAAc,CAAC,SAAS,CAAC;gBACvC,MAAM;gBACN,KAAK;aACL,CAAC;YAEF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAGzC,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAI1C,QAAQ,CAAC,EAAE,EACX,IAAA,4BAAU,EAAC,iEAAmC,EAAE;gBAC/C,IAAI,EAAE,wDAAwB;gBAC9B,KAAK;aACL,CAAC,CACF,CAAC;QACH,CAAC;IACF,CAAC;IAKO,KAAK,CAAC,2BAA2B,CACxC,MAA+B,EAC/B,cAA+B,EAC/B,cAAsC;QAGtC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;QAEpD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1D,IAAI,QAAQ,EAAE,CAAC;gBAId,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;oBAC7C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC1E,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChC,CAAC;gBACF,CAAC;gBAED,IAAI,aAAa,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;oBAClE,QAAQ,CAAC,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC;gBAC5D,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,GAAG,aAAa,EAAE,CAAC,CAAC;YAChE,CAAC;QACF,CAAC;QAID,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpE,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,gBAAgB;gBAAE,OAAO,CAAC,CAAC;YACxD,IAAI,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,gBAAgB;gBAAE,OAAO,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QAGH,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;QAG/C,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAE5C,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAE/G,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;YAC1F,IAAI,OAAO,EAAE,CAAC;gBACb,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACxD,CAAC;QACF,CAAC;IACF,CAAC;IAKO,KAAK,CAAC,aAAa,CAC1B,MAA+B,EAC/B,aAA4B,EAC5B,cAAsC,EACtC,QAAiB;QAGjB,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CACjD,YAAY,EACZ,aAAa,CAAC,UAAU,EACxB,MAAM,CAAC,EAAE,EACT,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,gBAAgB,GAAgC;gBACrD,IAAI,EAAE,wDAAwB;gBAC9B,UAAU,EAAE,aAAa,CAAC,UAAU;gBACpC,IAAI,EAAE,aAAa,CAAC,IAAI;gBACxB,QAAQ,EAAE,aAAa,CAAC,QAAQ;gBAChC,MAAM,EAAE,MAAM,CAAC,EAAE;gBACjB,MAAM,EAAE,QAAQ,IAAI,IAAI;aACxB,CAAC;YAEF,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAC1C,gBAAgB,CAChB,CAAC;QACH,CAAC;aAAM,CAAC;YAEP,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAwD,OAAO,CAAC,EAAE,EAAE;gBAC9G,IAAI,EAAE,wDAAwB;gBAC9B,MAAM,EAAE,QAAQ,IAAI,IAAI;aACxB,CAAC,CAAC;QACJ,CAAC;QAGD,KAAK,MAAM,cAAc,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACpD,CAAC;QAGD,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QAE3E,OAAO,OAAO,CAAC;IAChB,CAAC;IAKO,KAAK,CAAC,uBAAuB,CACpC,OAAiC,EACjC,aAA4B,EAC5B,cAAsC;QAGtC,MAAM,WAAW,GAAG,IAAA,uDAA8B,EAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;QACR,CAAC;QAGD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAGlF,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CACxE,OAAO,CAAC,EAAE,EACV,wDAAwB,CACxB,CAAC;QACF,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAErF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YAEtC,IAAI,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACxD,SAAS;YACV,CAAC;YAGD,MAAM,UAAU,GAAG,cAAc,UAAU,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC;YAG9E,IAAI,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3C,SAAS;YACV,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YAElG,MAAM,MAAM,GACX,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAChD,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;oBACjC,UAAU,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;oBAC9B,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ;oBACxC,CAAC,CAAE,UAAU,CAAC,MAA2B;oBACzC,CAAC,CAAE,UAAU,CAAC,MAAmB;gBAClC,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,SAAS,GAAwC;gBACtD,IAAI,EAAE,wDAAwB;gBAC9B,UAAU;gBACV,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBAC3D,QAAQ,EAAE,UAAU,CAAC,iBAAiB;gBACtC,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,MAAM;gBACN,KAAK;aACL,CAAC;YAEF,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAGzC,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1B,CAAC;IACF,CAAC;IAKO,kBAAkB,CAAC,QAAmC;QAC7D,OAAO,QAAQ;aACb,QAAQ,EAAE;aACV,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACzE,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAOO,mBAAmB,CAAC,QAAiB;QAC5C,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAErC,QAAQ,KAAK,EAAE,CAAC;YACf,KAAK,MAAM;gBACV,OAAO,QAAQ,CAAC;YACjB,KAAK,OAAO;gBACX,OAAO,QAAQ,CAAC;YACjB,KAAK,MAAM;gBACV,OAAO,SAAS,CAAC;YAClB;gBAEC,OAAO,KAAK,CAAC;QACf,CAAC;IACF,CAAC;IAOO,KAAK,CAAC,cAAc,CAAC,OAAiC,EAAE,cAA8B;QAE7F,MAAM,gBAAgB,GAAG,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAG5E,MAAM,iBAAiB,GAAG,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAK9E,MAAM,iBAAiB,GACtB,gBAAgB,IAAI,iBAAiB,IAAI,cAAc,CAAC,UAAU,KAAK,cAAc,CAAC,WAAW,CAAC;QAEnG,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC;QAEtG,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAC5D,YAAY,EACZ,kBAAkB,EAClB,OAAO,CAAC,EAAE,EACV,wDAAwB,CACxB,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,MAAM,GACX,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBACxD,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC;oBACrC,cAAc,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;oBAClC,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ;oBAC5C,CAAC,CAAE,cAAc,CAAC,MAA2B;oBAC7C,CAAC,CAAE,cAAc,CAAC,MAAmB;gBACtC,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,SAAS,GAAwC;gBACtD,IAAI,EAAE,wDAAwB;gBAC9B,UAAU,EAAE,kBAAkB;gBAC9B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,SAAS,EAAE,cAAc,CAAC,QAAQ;gBAClC,WAAW,EAAE,cAAc,CAAC,WAAW;gBACvC,MAAM;gBACN,IAAI,EAAE,cAAc,CAAC,IAAI,IAAI,IAAI;gBACjC,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,IAAI;gBAEvC,KAAK,EAAE,cAAc,CAAC,WAAW,IAAI,IAAI;aACzC,CAAC;YAEF,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAGpD,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1B,CAAC;QAID,IAAI,cAAc,CAAC,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC,eAAe,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;QAC3G,CAAC;IACF,CAAC;IAMO,YAAY,CAAC,KAAc,EAAE,QAAuB;QAC3D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAE/B,QAAQ,QAAQ,EAAE,CAAC;gBAClB,KAAK,gCAAY,CAAC,IAAI,CAAC;gBACvB,KAAK,gCAAY,CAAC,KAAK,CAAC;gBACxB,KAAK,gCAAY,CAAC,KAAK,CAAC;gBACxB,KAAK,gCAAY,CAAC,MAAM,CAAC;gBACzB,KAAK,gCAAY,CAAC,GAAG,CAAC;gBACtB,KAAK,gCAAY,CAAC,IAAI;oBAErB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1B,KAAK,gCAAY,CAAC,KAAK,CAAC;gBACxB;oBAEC,OAAO,KAAK,CAAC;YACf,CAAC;QACF,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACD,CAAA;AA3mCY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;qCAWsB,gCAAc;QACb,kCAAe;QACL,uDAAyB;QACzB,uDAAyB;QACrC,gDAAuB;QACd,oDAAyB;QAClC,6CAAoB;QACZ,+CAAqB;QACvB,kCAAmB;QACxB,4DAA2B;GAnBjD,sBAAsB,CA2mClC"}
@@ -1,36 +1,14 @@
1
- import { Z2mAdapterCallbacks, Z2mMqttConfig, Z2mRegisteredDevice, Z2mSetPayload } from '../interfaces/zigbee2mqtt.interface';
2
- export declare class Z2mMqttClientAdapterService {
3
- private readonly logger;
1
+ import { Z2mMqttConfig, Z2mSetPayload } from '../interfaces/zigbee2mqtt.interface';
2
+ import { Z2mBaseClientAdapter } from './base-client-adapter';
3
+ export declare class Z2mMqttClientAdapterService extends Z2mBaseClientAdapter {
4
4
  private client;
5
5
  private config;
6
- private connected;
7
- private bridgeOnline;
8
- private reconnectTimer;
9
- private readonly deviceRegistry;
10
- private readonly stateCache;
11
- private callbacks;
12
- setCallbacks(callbacks: Z2mAdapterCallbacks): void;
13
- get baseTopic(): string;
14
- isConnected(): boolean;
15
- isBridgeOnline(): boolean;
16
- getRegisteredDevices(): Z2mRegisteredDevice[];
17
- getDevice(friendlyName: string): Z2mRegisteredDevice | undefined;
18
- getDeviceByIeeeAddress(ieeeAddress: string): Z2mRegisteredDevice | undefined;
19
- getCachedState(friendlyName: string): Record<string, unknown>;
6
+ constructor();
20
7
  connect(config: Z2mMqttConfig): Promise<void>;
21
8
  disconnect(): Promise<void>;
22
9
  publishCommand(friendlyName: string, payload: Z2mSetPayload): Promise<boolean>;
23
10
  requestState(friendlyName: string, properties?: string[]): Promise<boolean>;
24
11
  private buildBrokerUrl;
25
12
  private subscribeToTopics;
26
- private handleMessage;
27
- private handleBridgeMessage;
28
- private handleBridgeStateMessage;
29
- private handleBridgeDevicesMessage;
30
- private requestMissingStates;
31
- private handleBridgeEventMessage;
32
- private handleDeviceStateMessage;
33
- private handleDeviceAvailabilityMessage;
34
13
  private scheduleReconnect;
35
- private clearReconnectTimer;
36
14
  }