7bb08bca07
[joystick] Rewritten joystick
integration as a plugin.
...
And removed legacy `joystick*` backends and `inputs` plugin.
Closes : #290
2023-11-16 21:43:56 +01:00
5e629990e6
[Automatic] Updated UI files
2023-11-15 02:04:50 +00:00
d617443af6
[YouTube] Added subscriptions+channels support.
...
Closes : #337
2023-11-15 03:05:58 +01:00
9ed7026aaf
[media UI] Propagate free text filter to all the views.
2023-11-15 03:05:58 +01:00
ae017516c4
[YouTube UI] Support playlist navigation in the media nav.
2023-11-15 03:05:57 +01:00
4853f51c8b
[YouTube] Added (read-only) playlists support.
2023-11-15 03:05:57 +01:00
b491f81cda
[media UI] Added loading spin overlay upon play.
2023-11-15 03:05:57 +01:00
9e5728f8ba
[Automatic] Updated UI files
2023-11-13 01:39:51 +00:00
96e69811fe
[ #337 ] Initial YouTube UI with feed support.
2023-11-13 02:40:50 +01:00
f425e95e7e
[media UI] Show track image if available on desktop+ size.
2023-11-13 02:40:50 +01:00
60fb7bba5f
[media UI] Added support for generic media providers.
2023-11-13 02:40:50 +01:00
b63579b81c
[UI] Fixed some glitches of the Dropdown component.
2023-11-13 02:40:49 +01:00
f6c752c80e
[Automatic] Updated UI files
2023-11-12 14:59:23 +00:00
50922cf149
[media UI] Fixed player selector style after Dropdown component changes.
2023-11-12 15:55:28 +01:00
ca72e22820
[UI] Proxy /media/*
requests to upstream when Vue is in debug mode.
2023-11-12 15:55:03 +01:00
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
6dfe2324c1
[UI] Added navigation crumbs to the file browser.
2023-11-12 15:53:46 +01:00
e416a70658
[UI] (Re)-added required logo-256x256.png
image.
2023-11-12 15:52:07 +01:00
cad36b7911
[UI] Watch the connected
flag for changes to update the Nav indicator.
2023-11-12 14:00:18 +01:00
60b5f235a7
[Automatic] Updated UI files
2023-11-12 02:08:23 +00:00
1f321c32dc
[media.chromecast
] Full plugin rewrite.
2023-11-12 03:08:54 +01:00
3d62069775
[Automatic] Updated UI files
2023-11-10 01:48:45 +00:00
ceae310901
[snapcast
] Merged backend logic into the plugin.
...
Closes : #283
2023-11-10 02:48:07 +01:00
1ec42e11fc
[Automatic] Updated UI files
2023-11-09 01:46:44 +00:00
a83f4729a6
[UI] Extracted grid
into layout.scss
.
2023-11-09 02:47:34 +01:00
4814c56a2d
[media
UI] Added resolution to media info.
2023-11-09 02:47:34 +01:00
90a9684404
[media
UI] Added extra rating fields to the media info component.
2023-11-09 02:47:33 +01:00
d7093d18c5
[media
UI] Major redesign of the search results.
2023-11-09 02:47:32 +01:00
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
fafc1747d6
[Automatic] Updated UI files
2023-11-06 23:45:02 +00:00
3d2dc22ed3
[media
UI] Improved media UI.
2023-11-07 00:45:45 +01:00
a939cb648c
[media
UI] Extracted PlayPauseButton
into its own component.
2023-11-07 00:45:44 +01:00
7889846cd6
[Automatic] Updated UI files
2023-11-06 01:29:16 +00:00
2caa171c6d
[media
UI] Fixed alignment of the controls right handle.
2023-11-06 02:25:54 +01:00
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
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
daa93f5994
[media
UI] Fixed style of the Play URL modal.
2023-11-05 12:19:36 +01:00
e45fb9c8ac
Major rewrite of the media
routes.
...
- 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
0e2738d849
Added _on_error
handler to StreamingRoute
.
2023-11-05 01:03:40 +01:00
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
f7fe844296
Black/LINT pass for media handler routes.
2023-11-04 16:13:52 +01:00
07e7f06c7a
[Automatic] Updated UI files
2023-11-04 11:12:51 +00:00
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
9ac25a7627
[Automatic] Updated UI files
2023-11-03 21:24:49 +00:00
3b335723a9
Merge pull request #387 from BlackLight/snyk-upgrade-7f1672a9074c3d844aa231ad5ba0e90d
...
[Snyk] Upgrade core-js from 3.23.4 to 3.31.1
2023-11-03 22:18:22 +01:00
8acb4156e0
Merge branch 'master' into snyk-upgrade-7f1672a9074c3d844aa231ad5ba0e90d
2023-11-03 22:11:01 +01:00
664ca7f9b5
Merge branch 'master' into snyk-upgrade-ae486550d733dccfaf3fab04d0756007
2023-11-03 22:07:35 +01:00
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
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
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
f6952f1198
[Automatic] Updated UI files
2023-11-03 20:56:12 +00:00
170e37945e
[UI] Make sure that a Modal
never overflows its parent.
2023-11-03 20:54:46 +00:00
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
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
5e2973dd5f
[UI] Removed <tt>
tag.
2023-11-03 20:54:46 +00:00
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
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
6d694f02b4
[Automatic] Updated UI files
2023-10-23 14:04:25 +00:00
a005958317
[Assistant] Added assistant
entity type.
2023-10-23 16:02:05 +02:00
fd26f7fef3
[UI Nav] Fixed position of the connected status dot.
2023-10-23 15:57:47 +02:00
5c22271e88
[UI] Expose the connected
flag on the root element level.
2023-10-23 15:03:36 +02:00
2c8b06e471
Remove Snowboy integration.
...
It hurts to see it go, as I really believed in this project.
But the website of the project went away in 2020, the Github project
hasn't seen any activity since 2021, and the fork that is supposed to be
used as a replacement for training .pmdl models hasn't been updated
since 2021 - and it only supports Python 2 on Ubuntu 16.04 or 18.04.
One day I may dedicate some efforts to bring Snowboy back to life, but
until then it's definitely not in a state where it's usable for a
Platypush integration.
2023-10-22 22:33:22 +02:00
cce6c4c5ad
[ #284 ] Merged assistant.google
plugin and backend.
...
This removes the deprecated `assistant.google` backend and also adds a
new `conversation_start_sound` parameter.
2023-10-22 19:55:11 +02:00
0eae6fd48d
Misc dependencies and mock fixes.
...
- `iputils` should be an explicit system dependency for `ping`.
Some minimal systems (like some Docker images) may not have the `ping`
command installed out of the box.
- `hid` and `marshmallow_dataclass` should be among the auto-mocked
modules.
2023-10-20 01:02:35 +02:00
e1fc38e014
[Automatic] Updated UI files
2023-10-19 17:52:56 +00:00
2c37596478
Updated UI files
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
7eaf8dbdc0
[Automatic] Updated UI files
2023-10-18 22:53:48 +00:00
38c5172316
[UI] Show the connected/disconnected status in the Nav
icon.
2023-10-19 00:33:17 +02:00
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
b724e80ee2
[Settings UI] Added Stop
and Restart
application buttons.
2023-10-18 23:45:46 +02:00
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
e2e349a2ad
[Automatic] Updated UI files
2023-10-18 01:01:06 +00:00
922297bf58
[Extensions UI] Support for initializing an extension from URL.
2023-10-18 03:00:54 +02:00
137855b4fc
[Entities UI] Fixed collapse toggling logic.
2023-10-18 03:00:54 +02:00
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
e5d84242bb
[Extensions UI] Action URLs now point to the Execute
panel.
2023-10-18 03:00:53 +02:00
6f01c35a0f
[UI] Added utilities to get and set args on the URL fragment.
2023-10-18 03:00:53 +02:00
a30c07fbb5
[Execute UI] Make sure that the list of arguments doesn't overflow.
2023-10-18 03:00:53 +02:00
0c54c8f885
[UI] Refresh the loaded panel when the URL fragment changes.
2023-10-18 03:00:53 +02:00
6289eb47ab
[Extensions UI] Added Actions
and Events
sections to Doc
.
2023-10-18 03:00:53 +02:00
6383030e96
[Extensions UI] Added notifications in case of install errors.
2023-10-18 03:00:52 +02:00
3107df5eba
[UI Nav] Moved Extensions
panel from the plugins list to the footer.
2023-10-18 03:00:52 +02:00
a652bd9df8
[Extensions UI] Install extensions deps from the UI.
...
- Added `Install` button
- Added interactive output panel
2023-10-18 03:00:52 +02:00
033317e0a7
[Extensions UI] Passing config_file
to the configuration tab.
2023-10-18 03:00:51 +02:00
20a2203e7e
[Shell plugin] Added support for async output over websockets.
2023-10-18 03:00:51 +02:00
2806e943c3
[Extensions UI] Added Install
tab.
2023-10-18 03:00:51 +02:00
9769520e88
[UI] Use .min.css
file for the Highlight.js styles.
2023-10-18 03:00:50 +02:00
3366732fa8
[UI] Expand Tab
width on mobile.
2023-10-18 03:00:50 +02:00
12f7b190b9
[Automatic] Updated UI files
2023-10-16 00:30:42 +00:00
99e98f70f4
[Integrations UI] Added configuration tab.
2023-10-16 02:30:30 +02:00
b19725c72c
[Automatic] Updated UI files
2023-10-15 23:18:08 +00:00
398d64c53f
[Integrations UI] Added new Integrations
panel.
2023-10-16 01:16:10 +02:00
0055acad9d
[UI] Fixed Autocomplete
behaviour on empty filter.
2023-10-16 01:12:56 +02:00
c88a9da3e6
[UI] Refactored layout classes.
2023-10-16 01:12:05 +02:00
0fe1c2768b
[Fix] Some minor docstring indentation fixes.
2023-10-16 00:20:39 +02:00
e242b2134e
[Automatic] Updated UI files
2023-10-14 12:38:25 +00:00
3cfd72b649
[UI Nav] Ensure that entities
and execute
tabs are always on top.
2023-10-14 14:38:08 +02:00
6d53a3f80f
[Automatic] Updated UI files
2023-10-14 12:09:13 +00:00
a3643c285e
[UI] A friendlier representation of an integration's name.
2023-10-14 14:02:17 +02:00
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
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
dbe19042bc
[Automatic] Updated UI files
2023-10-13 21:13:00 +00:00
891e05a219
[Execute UI] Added syntax highlight to JSON and shell snippets.
2023-10-13 23:12:04 +02:00
12f38281e1
[Automatic] Updated UI files
2023-10-12 00:58:53 +00:00
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
0a13b4605e
[Execute panel] Procedures merged into actions.
...
Plus, a last big refactor/redesign for the panel's components.
2023-10-12 02:49:51 +02:00
e760f8e23a
[Execute panel] Introduced a common Response
component.
2023-10-11 16:57:04 +02:00
b47e729012
[Execute panel] Added cURL snippet modal.
2023-10-11 16:38:38 +02:00
fc21e9740b
[Execute panel] Better rendering of responses and errors.
2023-10-11 15:28:49 +02:00
21820bb185
Big refactor of the Execute
panel.
2023-10-11 14:31:46 +02:00
ff07623803
Auto-focus the first parameter after selecting an action.
2023-10-10 21:31:14 +02:00
07f0535504
Migrated Execute
panel to the new Autocomplete
widget.
2023-10-10 21:13:54 +02:00
a717235453
Added autofocus
support to Autocomplete
element.
2023-10-10 20:51:09 +02:00
923eb7cadb
Autocomplete
is now its own component.
2023-10-10 18:42:41 +02:00
f6bf9438b9
Several improvements for the Execute
panel.
2023-10-10 01:45:35 +02:00
2af304f478
Replaced radio buttons on the Execute
panel with buttons.
2023-10-10 00:40:20 +02:00
84efef710e
Added Tabs
and Tab
UI elements.
2023-10-10 00:39:27 +02:00
1e93af86f4
Fixed some broken docstring references.
2023-10-09 01:33:45 +02:00
53bdcb9604
A major rewrite of the inspect
plugin.
...
- The `inspect` plugin and the Sphinx inspection extensions now use the
same underlying logic.
- Moved all the common inspection logic under
`platypush.common.reflection`.
- Faster scanning of the available integrations and components through a
pool of threads.
- Added `doc_url` parameters.
- Migrated events and responses metadata scanning logic.
- Now expanding some custom Sphinx tag instead of returning errors when
running outside of the Sphinx context - it includes `:class:`,
`:meth:` and `.. schema::`.
2023-10-09 01:33:45 +02:00
4da3c13976
First WIP commit for the new Integrations panel.
2023-10-09 01:33:44 +02:00
9298f52443
Moved BluetoothPlugin
to __init__.py
.
...
This is for consistency with other plugins, that all have their main
plugin class definition inside of `__init__.py`.
2023-09-24 19:21:53 +02:00
c3337ccc6c
[ #311 ] Docs deps autogen sphinx plugin.
...
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
761f2768cb
[ #316 ] Added RPM dependencies.
2023-09-21 23:20:06 +02:00
648b4224bb
[ #285 ] Removed old covid19 backend.
...
Those endpoints aren't even working anymore.
Closes : #285
2023-09-21 00:26:35 +02:00
5d6d37785e
[ #288 ] Removed legacy http.poll
backend.
...
Closes : #288
2023-09-20 23:53:12 +02:00
7ba9a8930a
[ #291 ] Removed deprecated light.hue
backend.
...
Closes : #291
2023-09-20 23:46:40 +02:00
a6efaad26d
[ #306 ] Removed Travis CI integration.
...
I've tried my best to keep it around, but the endpoints seem to be
broken, they no longer have a link to their API v3 documentation, and
the API Explorer that was supposed to be in the dashboard is gone.
2023-09-20 23:31:58 +02:00
3e8d6bb01e
Removed typing-extensions
dependency.
...
The package isn't present on older versions of Debian.
2023-09-18 14:05:39 +02:00
46167a6c2a
Removed legacy zwave backend.
2023-09-17 02:46:24 +02:00
190cfa21b5
Fixed documentation references to some non-existing events.
2023-09-17 02:41:55 +02:00
52cb1afb4b
Don't break words in entity value frames.
2023-09-16 02:58:17 +02:00
e947cb1e67
Updated web dist files
2023-09-15 16:22:40 +02:00
4223576016
We should always update the entities cache on addEntity.
...
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
1020b63da7
All EntityMixin components should be allowed to emit loading
events.
2023-09-15 00:34:29 +02:00
8ab7b6bebc
Removed deprecated zigbee.mqtt
backend.
...
Closes : #322
2023-09-06 02:54:48 +02:00
b746d0b402
Moved get_message_response
to platypush.utils
.
...
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
2c46b6fe14
Added git a required manifest dependency when needed.
...
It is needed for packages that install pip packages via git.
2023-08-20 21:19:15 +02:00
a6752ed034
Fixed wrong event path in a manifest file.
2023-08-20 14:08:22 +02:00
043f303761
s/HttpBackend._DEFAULT_HTTP_PORT/HttpBackend.DEFAULT_HTTP_PORT/g
2023-08-19 13:30:51 +02:00
c2b3ec8ce3
Fixed manifest files with outdated formats.
2023-08-19 12:54:33 +02:00
ec2b8da983
Ignore Redis errors when a backend sends an unregister notify event.
...
When that happens, it's most likely that the application is already
stopping and the Redis service has already been terminated.
2023-08-17 01:49:41 +02:00
98e9abde18
Extended manifest files with Python system packages (if available).
...
- 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
46245e851f
Synchronize with the currently running stop thread (if any) in Backend.wait_stop
.
2023-08-15 02:08:47 +02:00
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
ceb9d6d1ba
Removed redundant Backend._get_redis()
method.
...
It was used only once, and it could easily be replaced by
`platypush.utils.get_redis()`.
2023-08-14 23:37:38 +02:00
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
1474685cc0
[Automatic] Updated UI files
2023-08-06 22:51:57 +00:00