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
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
ca57d3d7b3
[ #340 ] Initial implementation of the alarm entities UI.
2023-12-09 20:33:11 +01:00
Fabio Manganiello
34e2a59285
Added optional `id` attribute to `ToggleSwitch`.
2023-12-09 16:12:08 +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
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
ca7c89949b
Only react on `NewWeatherConditionEvent` if `plugin_name` is compatible.
2023-11-23 01:35:57 +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
Fabio Manganiello
a798cfa387
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-20 01:42:12 +00:00
Fabio Manganiello
b8a4b9e4c5
Implemented support for weather entities.
2023-11-20 01:46:01 +01:00
Fabio Manganiello
bf8f31545a
Fixed alignment of entity icon in modal.
2023-11-19 22:33:19 +01:00
Fabio Manganiello
5e629990e6
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-15 02:04:50 +00:00
Fabio Manganiello
d617443af6
[YouTube] Added subscriptions+channels support.
...
continuous-integration/drone/push Build is failing
Details
Closes : #337
2023-11-15 03:05:58 +01:00
Fabio Manganiello
9ed7026aaf
[media UI] Propagate free text filter to all the views.
2023-11-15 03:05:58 +01:00
Fabio Manganiello
ae017516c4
[YouTube UI] Support playlist navigation in the media nav.
2023-11-15 03:05:57 +01:00
Fabio Manganiello
4853f51c8b
[YouTube] Added (read-only) playlists support.
2023-11-15 03:05:57 +01:00
Fabio Manganiello
b491f81cda
[media UI] Added loading spin overlay upon play.
2023-11-15 03:05:57 +01:00
Fabio Manganiello
9e5728f8ba
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-13 01:39:51 +00:00
Fabio Manganiello
96e69811fe
[ #337 ] Initial YouTube UI with feed support.
continuous-integration/drone/push Build is failing
Details
2023-11-13 02:40:50 +01:00
Fabio Manganiello
f425e95e7e
[media UI] Show track image if available on desktop+ size.
2023-11-13 02:40:50 +01:00
Fabio Manganiello
60fb7bba5f
[media UI] Added support for generic media providers.
2023-11-13 02:40:50 +01:00
Fabio Manganiello
b63579b81c
[UI] Fixed some glitches of the Dropdown component.
2023-11-13 02:40:49 +01:00
Fabio Manganiello
f6c752c80e
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-12 14:59:23 +00:00
Fabio Manganiello
50922cf149
[media UI] Fixed player selector style after Dropdown component changes.
continuous-integration/drone/push Build is failing
Details
2023-11-12 15:55:28 +01:00
Fabio Manganiello
ca72e22820
[UI] Proxy `/media/*` requests to upstream when Vue is in debug mode.
2023-11-12 15:55:03 +01:00
Fabio Manganiello
d4b519a572
[media UI] Wrapped the file browser into a `MediaBrowser` component.
...
This will make it easier to support multiple media collection providers
other than local files.
2023-11-12 15:54:27 +01:00
Fabio Manganiello
6dfe2324c1
[UI] Added navigation crumbs to the file browser.
2023-11-12 15:53:46 +01:00
Fabio Manganiello
e416a70658
[UI] (Re)-added required `logo-256x256.png` image.
2023-11-12 15:52:07 +01:00
Fabio Manganiello
cad36b7911
[UI] Watch the `connected` flag for changes to update the Nav indicator.
2023-11-12 14:00:18 +01:00
Fabio Manganiello
60b5f235a7
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-12 02:08:23 +00:00
Fabio Manganiello
1f321c32dc
[`media.chromecast`] Full plugin rewrite.
continuous-integration/drone/push Build is failing
Details
2023-11-12 03:08:54 +01:00
snyk-bot
d54970765e
fix: upgrade vue from 3.3.4 to 3.3.6
...
Snyk has created this PR to upgrade vue from 3.3.4 to 3.3.6.
See this package in npm:
https://www.npmjs.com/package/vue
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-11-10 14:35:37 +00:00
Fabio Manganiello
3d62069775
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-10 01:48:45 +00:00
Fabio Manganiello
ceae310901
[`snapcast`] Merged backend logic into the plugin.
...
Closes : #283
2023-11-10 02:48:07 +01:00
Fabio Manganiello
1ec42e11fc
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-09 01:46:44 +00:00
Fabio Manganiello
a83f4729a6
[UI] Extracted `grid` into `layout.scss`.
2023-11-09 02:47:34 +01:00
Fabio Manganiello
4814c56a2d
[`media` UI] Added resolution to media info.
2023-11-09 02:47:34 +01:00
Fabio Manganiello
90a9684404
[`media` UI] Added extra rating fields to the media info component.
2023-11-09 02:47:33 +01:00
Fabio Manganiello
d7093d18c5
[`media` UI] Major redesign of the search results.
2023-11-09 02:47:32 +01:00
Fabio Manganiello
f7a25a478d
[UI] Dropdown component rewrite.
...
Dropdown components should always be rendered under the root element, or
nasty effects caused by absolute parenting may end up hiding dropdown
elements regardless of their `z-index`.
The new approach uses a single `<DropdownContainer>` element in the
main `App` file. Each `<Dropdown>` component will push updates to the
bus whenever it triggers open/close events, and the dropdown component
to be rendered will be pushed upstream and rendered in the root element.
2023-11-09 02:47:32 +01:00
Fabio Manganiello
fafc1747d6
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-06 23:45:02 +00:00
Fabio Manganiello
3d2dc22ed3
[`media` UI] Improved media UI.
continuous-integration/drone/push Build was killed
Details
2023-11-07 00:45:45 +01:00
Fabio Manganiello
a939cb648c
[`media` UI] Extracted `PlayPauseButton` into its own component.
2023-11-07 00:45:44 +01:00
Fabio Manganiello
7889846cd6
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-06 01:29:16 +00:00
Fabio Manganiello
2caa171c6d
[`media` UI] Fixed alignment of the controls right handle.
continuous-integration/drone/push Build is failing
Details
2023-11-06 02:25:54 +01:00
Fabio Manganiello
e0a9ccca24
[`media UI`] Component refactor.
...
- Fixed style of the floating control extensions panel.
- Extracted `ProgressBar` and `ExtraControls` into separate components.
2023-11-06 01:54:12 +01:00
Fabio Manganiello
8e8bd7fb9f
[`media UI`] Fixing/refactoring media UI.
...
- Fixed broken elements in the media control view.
- Fixed volume bar.
2023-11-05 23:45:37 +01:00
snyk-bot
9814292a2e
fix: upgrade vue-router from 4.2.4 to 4.2.5
...
Snyk has created this PR to upgrade vue-router from 4.2.4 to 4.2.5.
See this package in npm:
https://www.npmjs.com/package/vue-router
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-11-05 15:30:06 +00:00
snyk-bot
eff126052d
fix: upgrade core-js from 3.32.0 to 3.33.0
...
Snyk has created this PR to upgrade core-js from 3.32.0 to 3.33.0.
See this package in npm:
https://www.npmjs.com/package/core-js
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-11-05 15:30:02 +00:00
snyk-bot
3ddac09412
fix: upgrade sass from 1.65.1 to 1.69.3
...
Snyk has created this PR to upgrade sass from 1.65.1 to 1.69.3.
See this package in npm:
https://www.npmjs.com/package/sass
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-11-05 15:29:57 +00:00
Fabio Manganiello
daa93f5994
[`media` UI] Fixed style of the Play URL modal.
2023-11-05 12:19:36 +01:00
Fabio Manganiello
e45fb9c8ac
Major rewrite of the `media` routes.
...
continuous-integration/drone/push Build is passing
Details
- Streaming and media subtitles endpoints moved from Flask to Tornado
routes - the old Flask streaming route no longer worked behind a
Tornado server.
- Storing the streaming state on Redis rather than in a local variable,
or different Tornado processes may end up with different copies of the
registry.
Closes : #336
2023-11-05 01:33:36 +01:00
Fabio Manganiello
0e2738d849
Added `_on_error` handler to `StreamingRoute`.
2023-11-05 01:03:40 +01:00
Fabio Manganiello
7c780e6650
Refactored `utils.bus.send_request`.
...
It should return the response output and raise an error if the response
has errors.
2023-11-04 16:22:27 +01:00
Fabio Manganiello
f7fe844296
Black/LINT pass for media handler routes.
2023-11-04 16:13:52 +01:00
Fabio Manganiello
07e7f06c7a
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-04 11:12:51 +00:00
Fabio Manganiello
5478b90288
[Media UI] Start/stop streaming use the configured media plugin.
...
The base `media` plugin is abstract, hence the `Media` panel needs to
pass the current media plugin to the `Utils` mixins so it can pick the
right action.
2023-11-04 11:54:44 +01:00
Fabio Manganiello
9ac25a7627
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-03 21:24:49 +00:00
Fabio Manganiello
3b335723a9
Merge pull request #387 from BlackLight/snyk-upgrade-7f1672a9074c3d844aa231ad5ba0e90d
...
continuous-integration/drone/push Build is failing
Details
[Snyk] Upgrade core-js from 3.23.4 to 3.31.1
2023-11-03 22:18:22 +01:00
Fabio Manganiello
8acb4156e0
Merge branch 'master' into snyk-upgrade-7f1672a9074c3d844aa231ad5ba0e90d
2023-11-03 22:11:01 +01:00
Fabio Manganiello
664ca7f9b5
Merge branch 'master' into snyk-upgrade-ae486550d733dccfaf3fab04d0756007
2023-11-03 22:07:35 +01:00
Fabio Manganiello
2bb7285c8a
Merge pull request #392 from BlackLight/snyk-fix-ccc0cd6dbbb455def4c5435b5511ae11
...
[Snyk] Security upgrade axios from 0.21.4 to 1.6.0
2023-11-03 22:06:22 +01:00
Fabio Manganiello
10ec4d39ea
Merge pull request #389 from BlackLight/snyk-upgrade-9420343b82254b8e287940baaf3881aa
...
[Snyk] Upgrade sass from 1.64.2 to 1.65.1
2023-11-03 22:06:03 +01:00
Fabio Manganiello
f5af85ee65
Merge pull request #390 from BlackLight/dependabot/npm_and_yarn/platypush/backend/http/webapp/babel/traverse-7.23.2
...
Bump @babel/traverse from 7.22.8 to 7.23.2 in /platypush/backend/http/webapp
2023-11-03 22:03:12 +01:00
Fabio Manganiello
f6952f1198
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-11-03 20:56:12 +00:00
Fabio Manganiello
170e37945e
[UI] Make sure that a `Modal` never overflows its parent.
2023-11-03 20:54:46 +00:00
Fabio Manganiello
35571b8d13
[UI] Set `max-width` for the media info modal.
...
This modal can grow very large depending on the size of the media
metadata, thus it's wise to keep its width in check.
2023-11-03 20:54:46 +00:00
Fabio Manganiello
96f2a8f8fc
[UI] Set a base `z-index` for the root content canvas.
...
This allows loading spinners, modals and other components with a real
fullscreen background to stretch over the required space, without being
covered by the navigator or other sibling components.
This also requires the collapsed navigator to have a 1px margin-right,
or its separation border won't be visible.
2023-11-03 20:54:46 +00:00
Fabio Manganiello
5e2973dd5f
[UI] Removed `<tt>` tag.
2023-11-03 20:54:46 +00:00
Fabio Manganiello
d9c4634ce8
[`tts.mimic3`] Plugin rewrite.
...
The plugin now leverages the `sound` plugin for playback, like all other
`tts` plugins now do, instead of an external `media` plugin.
This also removes the need for the `/tts/mimic3/say` endpoint.
2023-10-31 00:44:05 +00:00
Fabio Manganiello
68c73fa181
[`tts.mimic3`] Added timeout to `requests.post` proxy.
2023-10-31 00:44:05 +00:00
snyk-bot
c9ac3e624f
fix: platypush/backend/http/webapp/package.json & platypush/backend/http/webapp/package-lock.json to reduce vulnerabilities
...
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-AXIOS-6032459
2023-10-27 14:35:27 +00:00
Fabio Manganiello
6d694f02b4
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-23 14:04:25 +00:00
Fabio Manganiello
a005958317
[Assistant] Added `assistant` entity type.
continuous-integration/drone/push Build is passing
Details
2023-10-23 16:02:05 +02:00
Fabio Manganiello
fd26f7fef3
[UI Nav] Fixed position of the connected status dot.
2023-10-23 15:57:47 +02:00
Fabio Manganiello
5c22271e88
[UI] Expose the `connected` flag on the root element level.
2023-10-23 15:03:36 +02:00
Fabio Manganiello
e1fc38e014
[Automatic] Updated UI files
continuous-integration/drone/push Build is failing
Details
2023-10-19 17:52:56 +00:00
Fabio Manganiello
2c37596478
Updated UI files
continuous-integration/drone/push Build is failing
Details
2023-10-19 19:52:50 +02:00
dependabot[bot]
569db13a9b
Bump @babel/traverse in /platypush/backend/http/webapp
...
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse ) from 7.22.8 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse )
---
updated-dependencies:
- dependency-name: "@babel/traverse"
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-10-19 11:30:24 +00:00
Fabio Manganiello
7eaf8dbdc0
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-18 22:53:48 +00:00
Fabio Manganiello
38c5172316
[UI] Show the connected/disconnected status in the `Nav` icon.
continuous-integration/drone/push Build is passing
Details
2023-10-19 00:33:17 +02:00
Fabio Manganiello
f3c5c2fdfa
[Extensions UI] Added `RestartButton` to the `Install` tab.
...
It should be possible to easily restart the service after installing the
dependencies for a new integration.
2023-10-18 23:52:49 +02:00
Fabio Manganiello
b724e80ee2
[Settings UI] Added `Stop` and `Restart` application buttons.
2023-10-18 23:45:46 +02:00
Fabio Manganiello
2a76a6baa6
[Extensions UI] Added current config to extension panel.
...
If an extension is configured and enabled, then the UI will now include
a tick next to its name and the currently loaded configuration in the
`Configuration` tab.
2023-10-18 22:51:30 +02:00
Fabio Manganiello
e2e349a2ad
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-18 01:01:06 +00:00
Fabio Manganiello
922297bf58
[Extensions UI] Support for initializing an extension from URL.
continuous-integration/drone/push Build was killed
Details
2023-10-18 03:00:54 +02:00
Fabio Manganiello
137855b4fc
[Entities UI] Fixed collapse toggling logic.
2023-10-18 03:00:54 +02:00
Fabio Manganiello
26b912fae4
[Execute UI]
...
- If an action is passed over the URL, then initialize the UI with it.
- Added link from the actions back to their plugins.
2023-10-18 03:00:54 +02:00
Fabio Manganiello
e5d84242bb
[Extensions UI] Action URLs now point to the `Execute` panel.
2023-10-18 03:00:53 +02:00
Fabio Manganiello
6f01c35a0f
[UI] Added utilities to get and set args on the URL fragment.
2023-10-18 03:00:53 +02:00
Fabio Manganiello
a30c07fbb5
[Execute UI] Make sure that the list of arguments doesn't overflow.
2023-10-18 03:00:53 +02:00
Fabio Manganiello
0c54c8f885
[UI] Refresh the loaded panel when the URL fragment changes.
2023-10-18 03:00:53 +02:00
Fabio Manganiello
6289eb47ab
[Extensions UI] Added `Actions` and `Events` sections to `Doc`.
2023-10-18 03:00:53 +02:00
Fabio Manganiello
6383030e96
[Extensions UI] Added notifications in case of install errors.
2023-10-18 03:00:52 +02:00
Fabio Manganiello
3107df5eba
[UI Nav] Moved `Extensions` panel from the plugins list to the footer.
2023-10-18 03:00:52 +02:00
Fabio Manganiello
a652bd9df8
[Extensions UI] Install extensions deps from the UI.
...
- Added `Install` button
- Added interactive output panel
2023-10-18 03:00:52 +02:00
Fabio Manganiello
033317e0a7
[Extensions UI] Passing `config_file` to the configuration tab.
2023-10-18 03:00:51 +02:00
Fabio Manganiello
20a2203e7e
[Shell plugin] Added support for async output over websockets.
2023-10-18 03:00:51 +02:00
Fabio Manganiello
2806e943c3
[Extensions UI] Added `Install` tab.
2023-10-18 03:00:51 +02:00
Fabio Manganiello
9769520e88
[UI] Use `.min.css` file for the Highlight.js styles.
2023-10-18 03:00:50 +02:00
Fabio Manganiello
3366732fa8
[UI] Expand `Tab` width on mobile.
2023-10-18 03:00:50 +02:00
Fabio Manganiello
12f7b190b9
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-16 00:30:42 +00:00
Fabio Manganiello
99e98f70f4
[Integrations UI] Added configuration tab.
continuous-integration/drone/push Build is passing
Details
2023-10-16 02:30:30 +02:00
Fabio Manganiello
b19725c72c
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-15 23:18:08 +00:00
Fabio Manganiello
398d64c53f
[Integrations UI] Added new `Integrations` panel.
continuous-integration/drone/push Build is passing
Details
2023-10-16 01:16:10 +02:00
Fabio Manganiello
0055acad9d
[UI] Fixed `Autocomplete` behaviour on empty filter.
2023-10-16 01:12:56 +02:00
Fabio Manganiello
c88a9da3e6
[UI] Refactored layout classes.
2023-10-16 01:12:05 +02:00
Fabio Manganiello
e242b2134e
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-14 12:38:25 +00:00
Fabio Manganiello
3cfd72b649
[UI Nav] Ensure that `entities` and `execute` tabs are always on top.
continuous-integration/drone/push Build is passing
Details
2023-10-14 14:38:08 +02:00
Fabio Manganiello
6d53a3f80f
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-14 12:09:13 +00:00
Fabio Manganiello
a3643c285e
[UI] A friendlier representation of an integration's name.
continuous-integration/drone/push Build is passing
Details
2023-10-14 14:02:17 +02:00
Fabio Manganiello
0aecb50590
[Entities UI] Don't hide variables with null values.
...
Otherwise, the `variables` panel will still appear, but empty, and
offering no way of actually removing or resetting those variables.
2023-10-14 14:02:17 +02:00
Fabio Manganiello
01c7d230f1
[Entities UI] Added `Expand`/`Collapse` and `Hide` actions to groups.
...
Also, replaced all the deprecated `::v-deep` SCSS notations with
`:deep`.
2023-10-14 14:02:17 +02:00
Fabio Manganiello
dbe19042bc
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-13 21:13:00 +00:00
Fabio Manganiello
891e05a219
[Execute UI] Added syntax highlight to JSON and shell snippets.
continuous-integration/drone/push Build is passing
Details
2023-10-13 23:12:04 +02:00
Fabio Manganiello
12f38281e1
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-10-12 00:58:53 +00:00
Fabio Manganiello
e382ad7650
Invert `@ensure_initialized` and `@action` annotations.
...
Otherwise, we won't be able to access the wrapped function from the
inspection logic.
2023-10-12 00:57:31 +00:00
Fabio Manganiello
0a13b4605e
[Execute panel] Procedures merged into actions.
...
continuous-integration/drone/push Build is passing
Details
Plus, a last big refactor/redesign for the panel's components.
2023-10-12 02:49:51 +02:00
Fabio Manganiello
e760f8e23a
[Execute panel] Introduced a common `Response` component.
continuous-integration/drone/push Build is passing
Details
2023-10-11 16:57:04 +02:00
Fabio Manganiello
b47e729012
[Execute panel] Added cURL snippet modal.
continuous-integration/drone/push Build is passing
Details
2023-10-11 16:38:38 +02:00
Fabio Manganiello
fc21e9740b
[Execute panel] Better rendering of responses and errors.
continuous-integration/drone/push Build is failing
Details
2023-10-11 15:28:49 +02:00
Fabio Manganiello
21820bb185
Big refactor of the `Execute` panel.
continuous-integration/drone/push Build is failing
Details
2023-10-11 14:31:46 +02:00
Fabio Manganiello
ff07623803
Auto-focus the first parameter after selecting an action.
2023-10-10 21:31:14 +02:00
Fabio Manganiello
07f0535504
Migrated `Execute` panel to the new `Autocomplete` widget.
2023-10-10 21:13:54 +02:00
Fabio Manganiello
a717235453
Added `autofocus` support to `Autocomplete` element.
2023-10-10 20:51:09 +02:00
Fabio Manganiello
923eb7cadb
`Autocomplete` is now its own component.
2023-10-10 18:42:41 +02:00
Fabio Manganiello
f6bf9438b9
Several improvements for the `Execute` panel.
2023-10-10 01:45:35 +02:00
Fabio Manganiello
2af304f478
Replaced radio buttons on the `Execute` panel with buttons.
2023-10-10 00:40:20 +02:00
Fabio Manganiello
84efef710e
Added `Tabs` and `Tab` UI elements.
2023-10-10 00:39:27 +02:00
Fabio Manganiello
4da3c13976
First WIP commit for the new Integrations panel.
2023-10-09 01:33:44 +02:00
Fabio Manganiello
c3337ccc6c
[ #311 ] Docs deps autogen sphinx plugin.
...
continuous-integration/drone/push Build is passing
Details
Added an `add_dependencies` plugin to the Sphinx build process that
parses the manifest files of the scanned backends and plugins and
automatically generates the documentation for the required dependencies
and triggered events.
This means that those dependencies are no longer required to be listed
in the docstring of the class itself.
Also in this commit:
- Black/LINT for some integrations that hadn't been touched in a long
time.
- Deleted some leftovers from previous refactors (deprecated
`backend.mqtt`, `backend.zwave.mqtt`, `backend.http.request.rss`).
- Deleted deprecated `inotify` backend - replaced by `file.monitor` (see
#289 ).
2023-09-24 17:00:08 +02:00
Fabio Manganiello
5d6d37785e
[ #288 ] Removed legacy `http.poll` backend.
...
continuous-integration/drone/push Build is passing
Details
Closes : #288
2023-09-20 23:53:12 +02:00
Fabio Manganiello
3e8d6bb01e
Removed `typing-extensions` dependency.
...
continuous-integration/drone/push Build is failing
Details
The package isn't present on older versions of Debian.
2023-09-18 14:05:39 +02:00
Fabio Manganiello
52cb1afb4b
Don't break words in entity value frames.
2023-09-16 02:58:17 +02:00
Fabio Manganiello
e947cb1e67
Updated web dist files
2023-09-15 16:22:40 +02:00
Fabio Manganiello
4223576016
We should always update the entities cache on addEntity.
...
continuous-integration/drone/push Build is passing
Details
Updating the entity cache only when we receive an event from a root
entity means that we lose events sent by individual child entities.
2023-09-15 00:45:38 +02:00
Fabio Manganiello
1020b63da7
All EntityMixin components should be allowed to emit `loading` events.
2023-09-15 00:34:29 +02:00
Fabio Manganiello
b746d0b402
Moved `get_message_response` to `platypush.utils`.
...
continuous-integration/drone/push Build is passing
Details
It is general-purpose enough to be used by all the integrations, not
only by the HTTP backend.
2023-09-05 13:03:30 +02:00
snyk-bot
46c40f6fa6
fix: upgrade sass from 1.64.2 to 1.65.1
...
Snyk has created this PR to upgrade sass from 1.64.2 to 1.65.1.
See this package in npm:
https://www.npmjs.com/package/sass
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-09-01 23:15:47 +00:00
Fabio Manganiello
043f303761
`s/HttpBackend._DEFAULT_HTTP_PORT/HttpBackend.DEFAULT_HTTP_PORT/g`
2023-08-19 13:30:51 +02:00
Fabio Manganiello
98e9abde18
Extended manifest files with Python system packages (if available).
...
continuous-integration/drone/push Build is passing
Details
- If a Python optional dependency is available as a system package on
the target system, try and install it that route rather than pip. It's
usually faster and it decreases the risk of breaking system packages.
- Added support for apk dependencies in manifest files. This brings the
number of distros officially supported by all the extensions to four:
- Alpine
- Arch
- Debian
- Ubuntu
2023-08-16 22:43:51 +02:00
Fabio Manganiello
a8a7ceb2ac
Implemented `HttpBackend._stop_workers`.
...
The Tornado WSGI container won't guarantee the termination of the
spawned workers upon termination, so the code of the backend has to take
care of it and terminate all the children processes of the server
process when it terminates.
This also means that `psutil` is now a required base dependency, as we
need to expand the process subtree under the webserver launcher.
2023-08-15 00:13:34 +02:00
Fabio Manganiello
827b564006
Using a single constant for DEFAULT_REDIS_QUEUE.
...
Also, catch `AttributeError` on `self._proc.terminate` in the
`HttpBackend`, since the process may already have been terminated and
set to null by another worker process.
2023-08-13 22:20:16 +02:00
Fabio Manganiello
1474685cc0
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing
Details
2023-08-06 22:51:57 +00:00
Fabio Manganiello
26b4dcba46
Reduced padding of ConfirmDialog body element.
continuous-integration/drone/push Build is passing
Details
2023-08-07 00:50:10 +02:00
Fabio Manganiello
5184543a3e
Normalize the size of the camera frame container from window size.
...
continuous-integration/drone/push Build is failing
Details
If the window is smaller than the camera resolution, then we should
scale down the container size accordingly.
2023-08-07 00:38:19 +02:00
Fabio Manganiello
dd313c6371
[Automatic] Updated UI files
continuous-integration/drone/push Build was killed
Details
2023-08-06 21:50:25 +00:00
Fabio Manganiello
2f007888fc
[Automatic] Updated UI files
continuous-integration/drone/push Build is failing
Details
2023-08-06 21:48:33 +00:00
Fabio Manganiello
609a8c6052
[Automatic] Updated UI files
continuous-integration/drone/push Build is failing
Details
2023-08-06 21:46:44 +00:00
Fabio Manganiello
276a9a7421
[Automatic] Updated UI files
continuous-integration/drone/push Build is failing
Details
2023-08-06 21:44:51 +00:00
Fabio Manganiello
715cdcfcff
More consistent style for the buttons on the tokens settings page.
continuous-integration/drone/push Build is failing
Details
2023-08-06 23:42:50 +02:00
Fabio Manganiello
bd49e460d5
More style improvements for the user settings panel.
continuous-integration/drone/push Build is passing
Details
2023-08-06 23:36:06 +02:00
Fabio Manganiello
6eed558342
More improvements on the users settings panel.
continuous-integration/drone/push Build was killed
Details
2023-08-06 23:14:54 +02:00
Fabio Manganiello
1d47b35219
Updated UI dependencies
2023-08-06 20:38:46 +02:00
Fabio Manganiello
237e0c47cb
Redesigned config panel UI.
2023-08-06 18:49:03 +02:00
snyk-bot
7cda9954d4
fix: upgrade vue-router from 4.1.2 to 4.2.3
...
Snyk has created this PR to upgrade vue-router from 4.1.2 to 4.2.3.
See this package in npm:
https://www.npmjs.com/package/vue-router
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-07-27 02:01:02 +00:00
snyk-bot
26c9694664
fix: upgrade core-js from 3.23.4 to 3.31.1
...
Snyk has created this PR to upgrade core-js from 3.23.4 to 3.31.1.
See this package in npm:
https://www.npmjs.com/package/core-js
See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-07-27 02:00:57 +00:00
Fabio Manganiello
e4756eb639
Replaced deprecated `flask.escape` with `markupsafe.escape`.
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone Build is passing
Details
2023-07-25 00:26:15 +02:00
Fabio Manganiello
e9a568fdd2
Unified interface to retrieve the Redis bus configuration.
...
A common `utils.get_redis_conf` has been created to handle the cascade
fallback logic used to retrive the default Redis configuration.
2023-07-24 01:04:13 +02:00
Fabio Manganiello
dd862db29a
[chore] LINT fixes
2023-07-24 00:35:03 +02:00
Fabio Manganiello
0dc380fa94
Removed dependency from prctl.
...
Also, black'd and LINT-fixed some files that hadn't been touched in a
while.
2023-07-23 19:17:30 +02:00
Fabio Manganiello
cfdecd5703
[ #267 ] Don't show the PWA popup again after the user dismisses it.
...
Plus, upgraded a bunch of frontend libraries.
Closes : #267
2023-07-23 02:44:17 +02:00
Fabio Manganiello
454228c56e
Upgraded UI dependencies
2023-07-23 02:42:14 +02:00
dependabot[bot]
33699fcac8
Bump word-wrap from 1.2.3 to 1.2.5 in /platypush/backend/http/webapp
...
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap ) from 1.2.3 to 1.2.5.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases )
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.5 )
---
updated-dependencies:
- dependency-name: word-wrap
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-07-22 21:48:53 +00:00
dependabot[bot]
505cba44b8
Bump webpack from 5.70.0 to 5.88.2 in /platypush/backend/http/webapp
...
Bumps [webpack](https://github.com/webpack/webpack ) from 5.70.0 to 5.88.2.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.70.0...v5.88.2 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-07-22 21:46:59 +00:00
Fabio Manganiello
fa1364d854
Improved logging for requests, responses and events.
...
- The following logging namespaces are now used, to make it easier to
filter only log lines related to the logged application message:
- `platypush:events`
- `platypush:requests`
- `platypush:responses`
- Those messages are always logged as JSON, with no prefixes nor
suffixes.
- Requests are always logged when executed - no more delegation to the
upstream backend.
- Responses are always logged when fully populated (including `id`,
`origin`, `target` etc.), instead of being logged when still partially
populated. This makes it particularly easy to link request/response
IDs directly from the logs.
2023-07-15 01:11:45 +02:00
Fabio Manganiello
27cf1bec52
Removed some optional top-level imports.
...
Optional top-level imports in Tornado route declarations will trigger
`ImportError`. While this will just mean that those routes will be
skipped, it will also generate a lot of noise on the logs.
2023-07-01 03:13:38 +02:00
Fabio Manganiello
2fb6e4d7d0
Updated webapp dist files
2023-06-16 15:48:23 +02:00
Fabio Manganiello
9aa8e4538a
Better termination logic for the ffmpeg audio converter.
2023-06-16 11:47:37 +02:00
Fabio Manganiello
da93f1b3b0
[Chore] pylint
2023-06-14 01:44:36 +02:00
Fabio Manganiello
be794316a8
Merged `sound.stream_recording` and `sound.record`.
2023-06-12 13:06:02 +02:00
Fabio Manganiello
e238fcb6e4
Refactoring the `sound` plugin to use ffmpeg as a stream converter.
2023-06-11 12:48:49 +02:00
Fabio Manganiello
4587b262b0
Stream camera frames over HTTP using a Redis pub/sub mechanism.
2023-06-05 20:40:12 +02:00
Fabio Manganiello
d7208c6bbc
Refactored Tornado routes for native pub/sub support.
...
The Redis pub/sub mechanism is now a native feature for Tornado routes
through the `PubSubMixin`.
(Plus, lint/black chore for the sound plugin)
2023-05-30 21:58:27 +02:00
Fabio Manganiello
4bf9c01ac9
Moved camera routes.
...
Camera routes migrated from Flask blueprints to Tornado handlers.
2023-05-27 22:24:45 +02:00
Fabio Manganiello
a2f8e2f0d2
Fixed bottom margin for ConfirmDialog buttons
2023-05-22 16:44:53 +02:00
Fabio Manganiello
aaac6488d6
Updated webapp dist files
2023-05-22 02:24:24 +02:00
Fabio Manganiello
d7405ad05d
Added multiple parsers for the entities referenced in docstrings.
...
The `inspect` plugin can now detect references to plugins, backends,
events, responses and schemas in docstrings and replace them either with
links to the documentation or auto-generated examples.
2023-05-22 02:20:58 +02:00
Fabio Manganiello
4f11d7cf74
Updated webapp dist files
2023-05-21 03:15:16 +02:00
Fabio Manganiello
229b8f2985
Many improvements for the `execute` panel.
2023-05-21 03:04:52 +02:00
Fabio Manganiello
edf1dbee1d
Updated webapp dist files
2023-05-20 15:54:18 +02:00
Fabio Manganiello
5efc90ca17
Better PWA installation prompt.
...
Display a popup modal instead of a confirm box to prompt the user to
install the PWA app.
`confirm` blocks the JavaScript engine when run in `beforeMount` and
therefore the browser won't be able to proceed with `event.prompt()`.
2023-05-20 15:52:37 +02:00
Fabio Manganiello
666ea9ea6b
Added `use_werkzeug_server` option to `backend.http`.
...
There are situations where you may not want to run the HTTP server in a
full blown WSGI-over-Tornado container - unit/integration tests and
embedded single-core devices are among those cases.
In those scenarios, we should allow the user to be able to run the
backend using the built-in Werkzeug server provided by Flask.
2023-05-20 15:26:58 +02:00
Fabio Manganiello
013274bcbc
[ #259 ] Proper support for the progressive webapp ( #262 )
...
Closes: 259
Reviewed-on: #262
2023-05-20 02:42:33 +02:00
Fabio Manganiello
0a1209fe6e
Updated webapp dist files
2023-05-17 10:56:37 +02:00
Fabio Manganiello
33e2879413
Various UI improvements for the execute tab.
2023-05-17 10:41:02 +02:00
Fabio Manganiello
91daec579d
Reverted to the previous style for entities on mobile.
...
Better to use screen width wisely and avoid unnecessary padding.
2023-05-17 01:13:09 +02:00
Fabio Manganiello
2cba504e3b
Improvements for the autocomplete component.
2023-05-14 15:07:54 +02:00
Fabio Manganiello
8447f9a854
Improved rendering of actions/arguments documentation.
...
The frontend now calls `utils.rst_to_html` to render the docstrings as
HTML instead of dumping them as raw text.
Also, actions and arguments are now cached to improve performance.
2023-05-14 15:06:34 +02:00
Fabio Manganiello
72797e73ff
Changed the Tornado paradigm to start the WSGI workers.
...
Use `bind_sockets`/`fork_processes` instead of reinventing the wheel
with our own multiprocessing handling.
2023-05-13 12:35:20 +02:00
Fabio Manganiello
ac4fe4447e
Revert "Added a multi-worker approach to the Tornado WSGI container."
...
This reverts commit 71401a4936
.
Temporarily reverted this commit because the `reuse_address` on the
application's `listen` method has only been implemented in Tornado 6.2 -
and Debian stable still shipts Tornado 6.1.
2023-05-13 02:36:20 +02:00
Fabio Manganiello
71401a4936
Added a multi-worker approach to the Tornado WSGI container.
...
The WSGI container is a good option to wrap a multi-modal webapp
(Flask + websocket routes), but it's constrained to a single-process
approach and queued/pre-buffered requests. That makes performance poor
when handling requests that may take a few seconds to complete.
2023-05-13 01:26:18 +02:00