Skip to content

Conversation

@hmbacher
Copy link
Contributor

@hmbacher hmbacher commented Oct 11, 2025

Hi @theelims, this is a summary of the rework I did to my fork:

  • Replaced svelte-dnd-list with svelte-dnd-action as svelte-dnd-list creates build warnings and appears to no longer be maintained, while svelte-dnd-action is under active community development

  • Created DraggableList component based on svelte-dnd-action (used in WiFi Settings)

  • Extended Collapsible and SettingsCard components to support a dirty status

  • Enhanced ConfirmDialog, InfoDialog and Toast components to support HTML content

  • Made Spinner component more flexible (to allow other texts than "Loading..." or no text at all)

  • Added connection check to WebSocket store (socket.ts)

  • Allow secure WebSocket connections

  • Fixed some Svelte warnings (in JS console)

  • Reworked WiFi Settings (Station) dialog: added edit dialog for networks, rearranged UI components, used new DraggableList component

  • Fixed preprocessor warning: usage of #ifdef with OR operator

  • Fixed preprocessor warning: redefinition of ESP_PLATFORM

  • Added a delayed reconnect function to WifiSettingsService.cpp to allow the last POST request from frontend (providing new network settings) to be properly responded to. In the previous implementation, the POST request was never responded to by the backend, as the connection was closed immediately upon receiving the request in the backend. This resulted in the user receiving no feedback about whether the settings update was successful, only a timeout that suggested something had gone wrong.

  • Fixed deprecated usage of merge-bin and its parameters in scripts/merge_bin.py

  • Added scripts/prebuild_utils.py that allows other build scripts to be executed depending on the type of the executed task (e.g. I don't want to have the interface built or the certificate bundle created on clean tasks)

hmbacher added 30 commits May 19, 2025 21:11
- Implemented a new page for managing sensors in the frontend.
- Created an EditSensor component for editing sensor details with validation.
- Developed ControllerSettingsService to manage controller settings via HTTP endpoints.
- Introduced FanController to handle fan control logic based on temperature readings.
- Added OneWireESP32 library for interfacing with DS18B20 temperature sensors.
- Implemented TempSensorsService to manage temperature sensors and their data acquisition.
- Established persistence for sensor settings and states using file storage.
- Enhanced error handling and logging throughout the services.
- Added FFCMqttConfig component for configuring MQTT settings.
- Removed GatewayMQTTConfig component to streamline MQTT configuration.
- Updated MQTT routing to use FFCMqttConfig.
- Introduced new alarms page for managing alarm events.
- Created backend services for alarm logging and MQTT settings.
- Integrated alarm notifications via MQTT.
- Enhanced temperature sensor service to publish alarms on sensor status changes.
- Added utility functions for ISO 8601 date conversion.
- Updated UI to include alarm log and relevant error handling.
… enhance temperature sensor discovery logging
- Changed to PCB v2.0 settings
- Updated version string
# Conflicts:
#	.gitignore
#	README.md
#	factory_settings.ini
#	features.ini
#	interface/package-lock.json
#	interface/package.json
#	interface/src/app.css
#	interface/src/lib/DaisyUiHelper.ts
#	interface/src/lib/assets/logo.png
#	interface/src/lib/components/Collapsible.svelte
#	interface/src/lib/components/ConfirmDialog.svelte
#	interface/src/lib/components/InputPassword.svelte
#	interface/src/lib/components/SettingsCard.svelte
#	interface/src/lib/components/Spinner.svelte
#	interface/src/lib/components/UpdateIndicator.svelte
#	interface/src/lib/components/toasts/Toast.svelte
#	interface/src/lib/stores/analytics.ts
#	interface/src/lib/stores/socket.ts
#	interface/src/lib/types/models.ts
#	interface/src/routes/+layout.svelte
#	interface/src/routes/+layout.ts
#	interface/src/routes/+page.svelte
#	interface/src/routes/connections/mqtt/+page.svelte
#	interface/src/routes/connections/mqtt/MQTT.svelte
#	interface/src/routes/connections/ntp/NTP.svelte
#	interface/src/routes/login.svelte
#	interface/src/routes/menu.svelte
#	interface/src/routes/statusbar.svelte
#	interface/src/routes/system/metrics/BatteryMetrics.svelte
#	interface/src/routes/system/metrics/SystemMetrics.svelte
#	interface/src/routes/system/status/SystemStatus.svelte
#	interface/src/routes/system/update/GithubFirmwareManager.svelte
#	interface/src/routes/system/update/UploadFirmware.svelte
#	interface/src/routes/user/+page.svelte
#	interface/src/routes/user/EditUser.svelte
#	interface/src/routes/wifi/ap/Accesspoint.svelte
#	interface/src/routes/wifi/sta/Scan.svelte
#	interface/src/routes/wifi/sta/Wifi.svelte
#	interface/static/favicon.png
#	interface/static/manifest.json
#	interface/vite.config.ts
#	lib/PsychicHttp/src/PsychicCore.h
#	lib/PsychicHttp/src/PsychicEndpoint.cpp
#	lib/PsychicHttp/src/PsychicEndpoint.h
#	lib/PsychicHttp/src/PsychicHttp.h
#	lib/PsychicHttp/src/PsychicHttpServer.cpp
#	lib/PsychicHttp/src/PsychicStaticFileHander.cpp
#	lib/PsychicHttp/src/PsychicUploadHandler.cpp
#	lib/framework/APSettingsService.cpp
#	lib/framework/APSettingsService.h
#	lib/framework/APStatus.cpp
#	lib/framework/APStatus.h
#	lib/framework/AnalyticsService.h
#	lib/framework/ArduinoJsonJWT.cpp
#	lib/framework/ArduinoJsonJWT.h
#	lib/framework/AuthenticationService.cpp
#	lib/framework/AuthenticationService.h
#	lib/framework/BatteryService.cpp
#	lib/framework/BatteryService.h
#	lib/framework/DownloadFirmwareService.cpp
#	lib/framework/DownloadFirmwareService.h
#	lib/framework/ESP32SvelteKit.cpp
#	lib/framework/ESP32SvelteKit.h
#	lib/framework/ESPFS.h
#	lib/framework/EventEndpoint.h
#	lib/framework/EventSocket.cpp
#	lib/framework/EventSocket.h
#	lib/framework/FSPersistence.h
#	lib/framework/FactoryResetService.cpp
#	lib/framework/FactoryResetService.h
#	lib/framework/Features.h
#	lib/framework/FeaturesService.cpp
#	lib/framework/FeaturesService.h
#	lib/framework/HttpEndpoint.h
#	lib/framework/IPUtils.h
#	lib/framework/JsonUtils.h
#	lib/framework/MqttEndpoint.h
#	lib/framework/MqttSettingsService.cpp
#	lib/framework/MqttSettingsService.h
#	lib/framework/MqttStatus.cpp
#	lib/framework/MqttStatus.h
#	lib/framework/NTPSettingsService.cpp
#	lib/framework/NTPSettingsService.h
#	lib/framework/NTPStatus.cpp
#	lib/framework/NTPStatus.h
#	lib/framework/NotificationService.h
#	lib/framework/RestartService.cpp
#	lib/framework/RestartService.h
#	lib/framework/SecurityManager.h
#	lib/framework/SecuritySettingsService.cpp
#	lib/framework/SecuritySettingsService.h
#	lib/framework/SettingValue.cpp
#	lib/framework/SettingValue.h
#	lib/framework/SleepService.cpp
#	lib/framework/SleepService.h
#	lib/framework/StatefulService.cpp
#	lib/framework/StatefulService.h
#	lib/framework/SystemStatus.cpp
#	lib/framework/SystemStatus.h
#	lib/framework/UploadFirmwareService.cpp
#	lib/framework/UploadFirmwareService.h
#	lib/framework/WebSocketClient.bak
#	lib/framework/WebSocketServer.h
#	lib/framework/WiFiScanner.cpp
#	lib/framework/WiFiScanner.h
#	lib/framework/WiFiSettingsService.cpp
#	lib/framework/WiFiSettingsService.h
#	lib/framework/WiFiStatus.cpp
#	lib/framework/WiFiStatus.h
#	platformio.ini
#	scripts/build_interface.py
#	scripts/rename_fw.py
#	src/main.cpp
hmbacher and others added 21 commits September 14, 2025 18:28
(cherry picked from commit bda977530a219d6f820a7dec7acd86008004d1ef)
# Conflicts:
#	interface/src/routes/gateway/smoke-detectors/+page.svelte
#	platformio.ini
# Conflicts:
#	interface/src/routes/gateway/smoke-detectors/+page.svelte
# Conflicts:
#	interface/src/lib/components/DraggableList.svelte
# Conflicts:
#	interface/src/routes/gateway/smoke-detectors/+page.svelte
#	src/GatewayDevicesService.cpp
# Conflicts:
#	scripts/generate_enums.py
…s in scripts

# Conflicts:
#	scripts/generate_enums.py
@hmbacher hmbacher marked this pull request as draft October 11, 2025 11:23
@hmbacher hmbacher changed the title Replaced D'nD component, rework of network settings, enhanced a couple of UI components, Replaced D'n'D component, rework of network settings, enhanced a couple of UI components, some minor fixes Oct 11, 2025
@hmbacher hmbacher marked this pull request as ready for review October 11, 2025 11:31
@theelims
Copy link
Owner

Thank you so much! I'm on vacation this coming week and will test it next weekend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants