Fabio Manganiello
3bc27a505f
[UI] setUrlArgs should remove args when value == null.
2023-12-16 18:58:31 +01:00
Fabio Manganiello
065f7d74a5
[ActionTile] Better hover style.
2023-12-16 14:23:46 +01:00
Fabio Manganiello
63767cb87c
[UI] Added `ActionTile` component.
2023-12-16 14:14:34 +01:00
Fabio Manganiello
7fcffe899e
[ActionEditor] Support for action save/input events.
2023-12-16 14:13:11 +01:00
Fabio Manganiello
f9ba4564e7
[Tabs UI] Force height to `$tab-height`.
2023-12-16 14:12:30 +01:00
Fabio Manganiello
028f48ed49
[Autocomplete UI] Better handling of `blur` events.
2023-12-16 14:09:04 +01:00
Fabio Manganiello
1dfbe0c12d
Ability to specify a custom initial action for the `ActionEditor`.
2023-12-14 22:22:10 +01:00
Fabio Manganiello
8bbafd2f7d
Better logic on the UI to parse the current URL fragment arguments.
2023-12-13 21:56:34 +01:00
Fabio Manganiello
9beb10c373
Extracted `ActionEditor` from the `Execute` plugin.
...
So it can be reused in other components that need to handle actions.
2023-12-12 23:33:16 +01:00
Fabio Manganiello
4e85087c0f
Added `AlarmEditor` component to `Alarm`.
2023-12-12 22:52:11 +01:00
Fabio Manganiello
d4f6d174c8
Added `FileSelector` UI component.
2023-12-12 21:13:55 +01:00
Fabio Manganiello
bac06e9e7b
Added `TimeInterval` component.
2023-12-12 00:05:46 +01:00
Fabio Manganiello
6edb8c8318
[ #340 ] s/datetime.fromisoformat/dateutil.parser.isoparse/
...
We may receive JavaScript timestamps with non-standard `Z` suffix too.
2023-12-11 22:24:55 +01:00
Fabio Manganiello
6e7c5def2f
`CronEditor` should contain the raw cron expression and a copy button.
2023-12-11 22:18:57 +01:00
Fabio Manganiello
00694f4e10
`CopyButton` events should have a `.prevent` clause.
2023-12-11 22:18:17 +01:00
Fabio Manganiello
61ef48119f
Apply default input rules to `time` and `datetime-local` elements.
2023-12-11 22:17:47 +01:00
Fabio Manganiello
627bb66957
Added `CronEditor` component.
2023-12-11 00:25:24 +01:00
Fabio Manganiello
894faaad1e
[ #340 ] Force a refresh via `alarm.status` when `Alarm` view loads.
2023-12-10 21:53:19 +01:00
Fabio Manganiello
b4be56ec2c
[ #340 ] Added `condition_type` field to alarm objects.
2023-12-10 21:52:50 +01:00
Fabio Manganiello
e6e4396e49
Enhanced `get_default_media_plugin` to filter by video/audio plugins.
2023-12-10 21:50:53 +01:00
Fabio Manganiello
03c167d6b7
[ #340 ] Added `Alarm.is_cron` property.
2023-12-10 20:58:13 +01:00
Fabio Manganiello
2d8f6102c1
[ #340 ] Added `alarm.edit` action.
2023-12-10 20:39:06 +01:00
Fabio Manganiello
8ddd9879f2
[ #340 ] Alarm model enhancements.
...
- Allow initialization of alarm actions from `Procedure` objects too.
- Force `state=WAITING` when an alarm is disabled.
2023-12-10 17:56:47 +01:00
Fabio Manganiello
686085750f
[ #340 ] Added configuration snippet for the new `alarm` integration.
2023-12-10 15:45:36 +01:00
Fabio Manganiello
dfa0727289
[ #340 ] Added `alarm` UI panel.
2023-12-10 15:33:19 +01:00
Fabio Manganiello
62054e83cc
Remaining entity modal style rules moved from `Entities` to `EntityModal`.
2023-12-10 15:32:42 +01:00
Fabio Manganiello
42574d054a
[ #340 ] Ironed out some bugs in the `alarm` integration.
...
- The alarm ID should be randomly generated - auto-increment IDs are
subject to race conditions when alarms are created in separate
processes.
- Clean up alarms that are not static and have been removed from the db.
- Better alarm shut down detection logic.
2023-12-10 15:30:19 +01:00
Fabio Manganiello
ca57d3d7b3
[ #340 ] Initial implementation of the alarm entities UI.
2023-12-09 20:33:11 +01:00
Fabio Manganiello
f27e7bb7e2
[ #340 ] Better state management for alarms.
...
- Added `AlarmEnabledEvent` and `AlarmDisabledEvent`.
- Added `snooze_interval` configurable both at plugin level and alarm
level.
2023-12-09 17:12:20 +01:00
Fabio Manganiello
34e2a59285
Added optional `id` attribute to `ToggleSwitch`.
2023-12-09 16:12:08 +01:00
Fabio Manganiello
4b578c38c8
[ #340 ] Better state management for alarms.
2023-12-09 14:25:18 +01:00
Fabio Manganiello
9d5c755188
[ #340 ] Alarm integration improvements.
...
- Emit `EntityDeleteEvent` when an alarm is expired and removed so
clients can properly synchronize their state.
- `croniter.get_next()` should be timezone-aware.
2023-12-09 13:33:42 +01:00
Fabio Manganiello
fcb6b621ab
[ #340 ] Added persistence of alarm entities.
2023-12-09 01:25:12 +01:00
Fabio Manganiello
3ffaaa0eb9
Added `Procedure.to_dict` method.
...
Also, LINT+black for the `procedure` module.
2023-12-09 01:23:36 +01:00
Fabio Manganiello
a6d6fd4067
`Message` objects enhancements.
...
- Support smart JSON serialization of `Message` objects.
- Added `Message.to_dict` method.
2023-12-09 01:20:20 +01:00
Fabio Manganiello
5ad1a62293
[ #340 ] Merged `alarm` backend into the `alarm` plugin.
...
Closes : #340
2023-12-06 19:23:19 +01:00
Fabio Manganiello
2670d40094
Added `get_default_media_plugin` utility.
2023-12-06 01:31:05 +01:00
Fabio Manganiello
680de865c4
Minor docstring fix.
2023-12-04 03:09:02 +01:00
Fabio Manganiello
5823dd0e21
[ #292 ] Converted `backend.log.http` to a runnable plugin.
...
continuous-integration/drone/push Build is passing
Details
Closes : #292
2023-12-04 03:03:21 +01:00
Fabio Manganiello
1843ab224b
[ #289 ] Converted `backend.file.monitor` into a runnable plugin.
...
Closes : #289
2023-12-04 03:03:20 +01:00
Fabio Manganiello
d484a34c00
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-12-03 23:34:57 +00:00
Fabio Manganiello
d048752184
[ #301 ] Exposing hosts as entities in the `ping` plugin.
...
continuous-integration/drone/push Build was killed
Details
Closes : #301
2023-12-04 00:36:45 +01:00
Fabio Manganiello
3bb7c02572
[ #301 ] Merged `ping` backend and plugin.
...
Also, removed `ping` response types.
2023-11-24 02:06:53 +01:00
Fabio Manganiello
71ccffa698
[weather.buienradar] Implemented forecast support.
2023-11-23 01:35:58 +01:00
Fabio Manganiello
b969afb1cf
Added support for weather forecast events and entities.
2023-11-23 01:35:58 +01:00
Fabio Manganiello
841a28066b
Added support for generic kwargs to `publish_entities`.
2023-11-23 01:35:57 +01:00
Fabio Manganiello
ca7c89949b
Only react on `NewWeatherConditionEvent` if `plugin_name` is compatible.
2023-11-23 01:35:57 +01:00
Fabio Manganiello
aca71c6bc7
[wallabag] Improved OAuth flow integration.
...
continuous-integration/drone/push Build is passing
Details
If the user provided `username` and `password` in the plugin
configuration, then we should use those credentials to refresh the OAuth
token when expired.
2023-11-22 11:38:00 +01:00
Fabio Manganiello
7bb15b0a03
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-20 02:08:35 +00:00
Fabio Manganiello
a0d8c522a2
[ #308 ] Finalized `weather` integrations migration.
...
continuous-integration/drone/push Build was killed
Details
- Migrated `weather.buienradar` integration.
- Removed last leftovers of the previous weather backends and responses.
Closes : #308
2023-11-20 03:10:00 +01:00