forked from platypush/platypush
Merge branch 'master' into snyk-upgrade-06847a2658543dd161a81487b6e34507
This commit is contained in:
commit
eae57003b5
53 changed files with 299 additions and 211 deletions
|
@ -1,7 +1,7 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
echo "Installing required build dependencies"
|
echo "Installing required build dependencies"
|
||||||
apk add --update --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ git make py3-sphinx py3-myst-parser py3-pip $(cat platypush/install/requirements/alpine.txt)
|
apk add --update --no-cache git make py3-sphinx py3-myst-parser py3-pip $(cat platypush/install/requirements/alpine.txt)
|
||||||
pip install -U sphinx-rtd-theme sphinx-book-theme --break-system-packages
|
pip install -U sphinx-rtd-theme sphinx-book-theme --break-system-packages
|
||||||
pip install . --break-system-packages
|
pip install . --break-system-packages
|
||||||
mkdir -p /docs/current
|
mkdir -p /docs/current
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
apk add --update --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ $(cat platypush/install/requirements/alpine.txt)
|
apk add --update --no-cache $(cat platypush/install/requirements/alpine.txt)
|
||||||
pip install . --break-system-packages
|
pip install . --break-system-packages
|
||||||
pip install -r requirements-tests.txt --break-system-packages
|
pip install -r requirements-tests.txt --break-system-packages
|
||||||
pytest tests
|
pytest tests
|
||||||
|
|
|
@ -23,7 +23,7 @@ fi
|
||||||
. .drone/macros/configure-gpg.sh
|
. .drone/macros/configure-gpg.sh
|
||||||
|
|
||||||
echo 'Updating components cache'
|
echo 'Updating components cache'
|
||||||
apk add --update --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ $(cat platypush/install/requirements/alpine.txt)
|
apk add --update --no-cache $(cat platypush/install/requirements/alpine.txt)
|
||||||
pip install . --break-system-packages
|
pip install . --break-system-packages
|
||||||
|
|
||||||
python - <<EOF
|
python - <<EOF
|
||||||
|
|
|
@ -1,11 +1,26 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
[ -z "$DOCKER_USER" ] && echo "Please set the DOCKER_USER environment variable" && exit 1
|
||||||
|
[ -z "$DOCKER_PASS" ] && echo "Please set the DOCKER_PASS environment variable" && exit 1
|
||||||
|
|
||||||
export VERSION=$(grep current_version pyproject.toml | sed -r -e "s/.*=\s*['\"]?([^'\"]+)['\"]?\s*$/\1/")
|
export VERSION=$(grep current_version pyproject.toml | sed -r -e "s/.*=\s*['\"]?([^'\"]+)['\"]?\s*$/\1/")
|
||||||
|
export REGISTRY_ENDPOINT="${REGISTRY_ENDPOINT:-quay.io}"
|
||||||
export IMAGE_NAME="$REGISTRY_ENDPOINT/$DOCKER_USER/platypush"
|
export IMAGE_NAME="$REGISTRY_ENDPOINT/$DOCKER_USER/platypush"
|
||||||
|
|
||||||
|
# Log in to the registry
|
||||||
docker login "$REGISTRY_ENDPOINT" -u "$DOCKER_USER" -p "$DOCKER_PASS"
|
docker login "$REGISTRY_ENDPOINT" -u "$DOCKER_USER" -p "$DOCKER_PASS"
|
||||||
docker build -f Dockerfile.alpine -t "$IMAGE_NAME:$VERSION" .
|
|
||||||
docker tag "$IMAGE_NAME:$VERSION" "$IMAGE_NAME:latest"
|
|
||||||
|
|
||||||
docker push "$IMAGE_NAME:$VERSION"
|
# Required for multi-platform builds
|
||||||
docker push "$IMAGE_NAME:latest"
|
docker buildx create --name=multiarch --driver=docker-container
|
||||||
|
|
||||||
|
# Build and publish the images
|
||||||
|
docker buildx build \
|
||||||
|
-f Dockerfile.alpine \
|
||||||
|
-t "$IMAGE_NAME:$VERSION" \
|
||||||
|
-t "$IMAGE_NAME:latest" \
|
||||||
|
--platform linux/amd64,linux/arm64,linux/arm/v7 \
|
||||||
|
--builder multiarch \
|
||||||
|
--push .
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
docker buildx rm multiarch
|
||||||
|
|
10
CHANGELOG.md
10
CHANGELOG.md
|
@ -1,5 +1,15 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## [1.3.4]
|
||||||
|
|
||||||
|
- [Bug]: Fixed installation bug in `pip install platypush` introduced by the
|
||||||
|
`pyproject.toml` migration.
|
||||||
|
|
||||||
|
## [1.3.3]
|
||||||
|
|
||||||
|
- [`3e02304a`](https://git.platypush.tech/platypush/platypush/commit/3e02304ac203625650ab4b03f9d4146a40839f2f)
|
||||||
|
[Auth]: Fixed generation of API tokens when 2FA is enabled.
|
||||||
|
|
||||||
## [1.3.2]
|
## [1.3.2]
|
||||||
|
|
||||||
- [[#414](https://git.platypush.tech/platypush/platypush/issues/414)]: added
|
- [[#414](https://git.platypush.tech/platypush/platypush/issues/414)]: added
|
||||||
|
|
10
README.md
10
README.md
|
@ -656,12 +656,20 @@ $ pip install git+https://github.com/blacklight/platypush
|
||||||
```bash
|
```bash
|
||||||
$ docker run -it --name platypush \
|
$ docker run -it --name platypush \
|
||||||
-p 8008:8008 \
|
-p 8008:8008 \
|
||||||
-e "PLATYPUSH_DEVICE_ID=my-device"
|
-e "PLATYPUSH_DEVICE_ID=my-device" \
|
||||||
-v /path/to/your/platypush/config:/etc/platypush \
|
-v /path/to/your/platypush/config:/etc/platypush \
|
||||||
-v /path/to/your/platypush/share:/var/lib/platypush \
|
-v /path/to/your/platypush/share:/var/lib/platypush \
|
||||||
quay.io/platypush/platypush
|
quay.io/platypush/platypush
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The following architectures are currently supported:
|
||||||
|
|
||||||
|
- `amd64`/`x86_64` (standard Intel-based architectures)
|
||||||
|
- `arm64`/`aarch64` (ARM64, such as modern ARM-based MacBooks, most of the
|
||||||
|
Android devices or RaspberryPi 4 and 5)
|
||||||
|
- `armv7l` (older ARM-based devices, such as RaspberryPi 2 and 3 or older
|
||||||
|
Android devices)
|
||||||
|
|
||||||
The Web service will be available on `http://localhost:8008`, and a default
|
The Web service will be available on `http://localhost:8008`, and a default
|
||||||
configuration file will be initialized under
|
configuration file will be initialized under
|
||||||
`/path/to/your/platypush/config/config.yaml` if not available. The next
|
`/path/to/your/platypush/config/config.yaml` if not available. The next
|
||||||
|
|
|
@ -21,7 +21,7 @@ from .utils import run
|
||||||
# see https://git.platypush.tech/platypush/platypush/issues/399
|
# see https://git.platypush.tech/platypush/platypush/issues/399
|
||||||
when = hook
|
when = hook
|
||||||
|
|
||||||
__version__ = '1.3.2'
|
__version__ = '1.3.4'
|
||||||
__author__ = 'Fabio Manganiello <fabio@manganiello.tech>'
|
__author__ = 'Fabio Manganiello <fabio@manganiello.tech>'
|
||||||
__all__ = [
|
__all__ = [
|
||||||
'Application',
|
'Application',
|
||||||
|
|
|
@ -107,7 +107,6 @@ def _create_token():
|
||||||
user = None
|
user = None
|
||||||
username = payload.get('username')
|
username = payload.get('username')
|
||||||
password = payload.get('password')
|
password = payload.get('password')
|
||||||
code = payload.get('code')
|
|
||||||
name = payload.get('name')
|
name = payload.get('name')
|
||||||
expiry_days = payload.get('expiry_days')
|
expiry_days = payload.get('expiry_days')
|
||||||
user_manager = UserManager()
|
user_manager = UserManager()
|
||||||
|
@ -115,7 +114,7 @@ def _create_token():
|
||||||
|
|
||||||
# Try and authenticate with the credentials passed in the JSON payload
|
# Try and authenticate with the credentials passed in the JSON payload
|
||||||
if username and password:
|
if username and password:
|
||||||
user = user_manager.authenticate_user(username, password, code=code)
|
user = user_manager.authenticate_user(username, password, skip_2fa=True)
|
||||||
if not isinstance(user, User):
|
if not isinstance(user, User):
|
||||||
return UserAuthStatus.INVALID_CREDENTIALS.to_response()
|
return UserAuthStatus.INVALID_CREDENTIALS.to_response()
|
||||||
|
|
||||||
|
|
|
@ -31,6 +31,7 @@ class StreamingRoute(RequestHandler, PubSubMixin, ABC):
|
||||||
auth_status = get_auth_status(self.request)
|
auth_status = get_auth_status(self.request)
|
||||||
if auth_status != UserAuthStatus.OK:
|
if auth_status != UserAuthStatus.OK:
|
||||||
self.send_error(auth_status.value.code, error=auth_status.value.message)
|
self.send_error(auth_status.value.code, error=auth_status.value.message)
|
||||||
|
self.finish()
|
||||||
return
|
return
|
||||||
|
|
||||||
self.logger.info(
|
self.logger.info(
|
||||||
|
|
|
@ -27,7 +27,7 @@ class WSRoute(WebSocketHandler, Thread, PubSubMixin, ABC):
|
||||||
auth_status = get_auth_status(self.request)
|
auth_status = get_auth_status(self.request)
|
||||||
if auth_status != UserAuthStatus.OK:
|
if auth_status != UserAuthStatus.OK:
|
||||||
self.close(code=1008, reason=auth_status.value.message) # Policy Violation
|
self.close(code=1008, reason=auth_status.value.message) # Policy Violation
|
||||||
return
|
raise ValueError(f'Unauthorized connection: {auth_status.value.message}')
|
||||||
|
|
||||||
logger.info(
|
logger.info(
|
||||||
'Client %s connected to %s', self.request.remote_ip, self.request.path
|
'Client %s connected to %s', self.request.remote_ip, self.request.path
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/fonts/poppins.css"><title>platypush</title><script defer="defer" src="/static/js/chunk-vendors.c55c495e.js"></script><script defer="defer" src="/static/js/app.61d039e6.js"></script><link href="/static/css/chunk-vendors.d510eff2.css" rel="stylesheet"><link href="/static/css/app.70fb1f4a.css" rel="stylesheet"><link rel="icon" type="image/svg+xml" href="/img/icons/favicon.svg"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#ffffff"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="Platypush"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#ffffff"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but platypush doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/fonts/poppins.css"><title>platypush</title><script defer="defer" src="/static/js/chunk-vendors.c55c495e.js"></script><script defer="defer" src="/static/js/app.4c67dc8c.js"></script><link href="/static/css/chunk-vendors.d510eff2.css" rel="stylesheet"><link href="/static/css/app.70fb1f4a.css" rel="stylesheet"><link rel="icon" type="image/svg+xml" href="/img/icons/favicon.svg"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#ffffff"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="Platypush"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#ffffff"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but platypush doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
platypush/backend/http/webapp/dist/static/css/1367.204be919.css
vendored
Normal file
1
platypush/backend/http/webapp/dist/static/css/1367.204be919.css
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
platypush/backend/http/webapp/dist/static/js/1367.357a4e88.js
vendored
Normal file
2
platypush/backend/http/webapp/dist/static/js/1367.357a4e88.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
platypush/backend/http/webapp/dist/static/js/1367.357a4e88.js.map
vendored
Normal file
1
platypush/backend/http/webapp/dist/static/js/1367.357a4e88.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
platypush/backend/http/webapp/dist/static/js/2720.9e2ebf44.js
vendored
Normal file
2
platypush/backend/http/webapp/dist/static/js/2720.9e2ebf44.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
platypush/backend/http/webapp/dist/static/js/648.47a909dc.js
vendored
Normal file
2
platypush/backend/http/webapp/dist/static/js/648.47a909dc.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
platypush/backend/http/webapp/dist/static/js/7896.8f57ebbc.js
vendored
Normal file
2
platypush/backend/http/webapp/dist/static/js/7896.8f57ebbc.js
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[7896],{7896:function(e,n,i){"use strict";i.r(n),i.d(n,{default:function(){return I}});var t=i(641);const d={class:"plugin"};function o(e,n,i,o,a,r){const s=(0,t.g2)("Loading");return(0,t.uX)(),(0,t.CE)("div",d,[a.loading?((0,t.uX)(),(0,t.Wv)(s,{key:0})):a.component?((0,t.uX)(),(0,t.Wv)((0,t.$y)(a.component),{key:1,config:a.config},null,8,["config"])):(0,t.Q3)("",!0)])}var a=i(2002),r=i(9828),s=i(953),c={name:"Plugin",components:{Loading:r.A},mixins:[a.A],props:{pluginName:{type:String,required:!0}},data(){return{loading:!1,component:null,config:{}}},computed:{componentName(){return this.pluginName.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("")}},methods:{refresh:async function(){this.loading=!0;try{this.component=(0,s.IJ)((0,t.$V)((()=>i(7672)(`./${this.componentName}/Index`)))),this.$options.components[this.componentName]=this.component,this.config=(await this.request("config.get_plugins"))?.[this.pluginName]||{}}finally{this.loading=!1}}},mounted:function(){this.refresh()}},u=i(6262);const x=(0,u.A)(c,[["render",o],["__scopeId","data-v-69b17daa"]]);var I=x},7672:function(e,n,i){var t={"./Alarm/Index":[8597,9769,5184,3841,1146,1861,3162,9878,4280,1367,2561,2716,648,572,6027,5928,7329,7594,343,3045,6360],"./Camera/Index":[9284,6903],"./CameraAndroidIpcam/Index":[2981,2981],"./CameraCv/Index":[2908,6903,2908],"./CameraFfmpeg/Index":[6973,6903,6973],"./CameraGstreamer/Index":[5783,6903,5783],"./CameraIrMlx90640/Index":[8636,6903,8636],"./CameraPi/Index":[3671,6903,3671],"./CameraPiLegacy/Index":[8357,6903,8357],"./Entities/Index":[1131,3841,1146,1861,5799,2486,343,1131,2256],"./Execute/Index":[8567,1146,9878,2561,5928,1381],"./Extensions/Index":[2720,1146,9878,2561,572,6027,6592,2720,6730],"./File/Index":[2061,1146,1861,3162,9878,1367,2716,648,1562],"./Light/Index":[6298,9769,5184,6298],"./LightHue/Index":[9318,9769,5184,6298,9318],"./Media/Index":[4277,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277],"./Media/Providers/Jellyfin/views/Media/Index":[6975,3841,1146,1861,3162,4280,2353,3149,1433,7619,1616],"./Media/Providers/Jellyfin/views/Movies/Index":[2436,3841,1146,1861,3162,4280,3149,1008,6556,4267],"./Media/Providers/Jellyfin/views/Music/Index":[1433,3841,1146,1861,3162,4280,2353,3149,1433,28],"./Media/Providers/YouTube/Index":[9476,9476],"./MediaChromecast/Index":[1684,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277,1684],"./MediaGstreamer/Index":[9145,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277,9145],"./MediaMplayer/Index":[7839,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277,7839],"./MediaMpv/Index":[9388,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277,9388],"./MediaVlc/Index":[6372,5184,1146,1861,3162,9878,4280,1367,2716,648,6157,4787,3149,6777,4277,6372],"./Music/Index":[4834,5184,1146,1861,6157,4787,4834],"./MusicMopidy/Index":[7533,5184,1146,1861,6157,4787,4834,7533],"./MusicMpd/Index":[560,5184,1146,1861,6157,4787,4834,560],"./MusicSnapcast/Index":[6564,9769,5184,6564],"./MusicSpotify/Index":[7299,5184,1146,1861,6157,4787,4834,7299],"./Procedures/Index":[9636,3841,1146,3162,9878,4280,1367,2561,572,6027,5928,7329,6923,343,9636],"./Rtorrent/Index":[8499,1146,1861,6777,9142,8499],"./Settings/Index":[4050,9769,3841,1146,1861,3162,2561,806,6592,4050],"./Settings/Tokens/Index":[806,3841,1146,1861,2561,806],"./Sound/Index":[7158,7158],"./Torrent/Index":[7098,1146,1861,6777,9142,7098],"./Tts/Index":[2392,8946,2392],"./TtsGoogle/Index":[1526,8946,1526],"./TtsPicovoice/Index":[8191,8946,8191],"./TvSamsungWs/Index":[4387,4387],"./ZigbeeMqtt/Index":[7630,9769,5184,1146,1861,7630],"./Zwave/Index":[9313,9769,5184,1146,1861,3290,9313],"./ZwaveMqtt/Index":[5145,9769,5184,1146,1861,3290,5145]};function d(e){if(!i.o(t,e))return Promise.resolve().then((function(){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}));var n=t[e],d=n[0];return Promise.all(n.slice(1).map(i.e)).then((function(){return i(d)}))}d.keys=function(){return Object.keys(t)},d.id=7672,e.exports=d}}]);
|
||||||
|
//# sourceMappingURL=7896.8f57ebbc.js.map
|
1
platypush/backend/http/webapp/dist/static/js/7896.8f57ebbc.js.map
vendored
Normal file
1
platypush/backend/http/webapp/dist/static/js/7896.8f57ebbc.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
|
@ -1,2 +0,0 @@
|
||||||
(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[7896],{7896:function(e,n,i){"use strict";i.r(n),i.d(n,{default:function(){return I}});var t=i(641);const d={class:"plugin"};function o(e,n,i,o,a,r){const s=(0,t.g2)("Loading");return(0,t.uX)(),(0,t.CE)("div",d,[a.loading?((0,t.uX)(),(0,t.Wv)(s,{key:0})):a.component?((0,t.uX)(),(0,t.Wv)((0,t.$y)(a.component),{key:1,config:a.config},null,8,["config"])):(0,t.Q3)("",!0)])}var a=i(2002),r=i(9828),s=i(953),c={name:"Plugin",components:{Loading:r.A},mixins:[a.A],props:{pluginName:{type:String,required:!0}},data(){return{loading:!1,component:null,config:{}}},computed:{componentName(){return this.pluginName.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("")}},methods:{refresh:async function(){this.loading=!0;try{this.component=(0,s.IJ)((0,t.$V)((()=>i(7672)(`./${this.componentName}/Index`)))),this.$options.components[this.componentName]=this.component,this.config=(await this.request("config.get_plugins"))?.[this.pluginName]||{}}finally{this.loading=!1}}},mounted:function(){this.refresh()}},u=i(6262);const x=(0,u.A)(c,[["render",o],["__scopeId","data-v-69b17daa"]]);var I=x},7672:function(e,n,i){var t={"./Alarm/Index":[8597,9769,5184,3841,1146,1861,3162,9878,4280,933,2561,2716,648,572,6027,5928,7329,7594,343,3045,6360],"./Camera/Index":[9284,6903],"./CameraAndroidIpcam/Index":[2981,2981],"./CameraCv/Index":[2908,6903,2908],"./CameraFfmpeg/Index":[6973,6903,6973],"./CameraGstreamer/Index":[5783,6903,5783],"./CameraIrMlx90640/Index":[8636,6903,8636],"./CameraPi/Index":[3671,6903,3671],"./CameraPiLegacy/Index":[8357,6903,8357],"./Entities/Index":[1131,3841,1146,1861,5799,2486,343,1131,2256],"./Execute/Index":[8567,1146,9878,2561,5928,1381],"./Extensions/Index":[7908,1146,9878,2561,572,6027,6592,7908,6730],"./File/Index":[2061,1146,1861,3162,9878,933,2716,648,1562],"./Light/Index":[6298,9769,5184,6298],"./LightHue/Index":[9318,9769,5184,6298,9318],"./Media/Index":[4277,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277],"./Media/Providers/Jellyfin/views/Media/Index":[6975,3841,1146,1861,3162,4280,2353,3149,1433,7619,1616],"./Media/Providers/Jellyfin/views/Movies/Index":[2436,3841,1146,1861,3162,4280,3149,1008,6556,4267],"./Media/Providers/Jellyfin/views/Music/Index":[1433,3841,1146,1861,3162,4280,2353,3149,1433,28],"./Media/Providers/YouTube/Index":[9476,9476],"./MediaChromecast/Index":[1684,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277,1684],"./MediaGstreamer/Index":[9145,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277,9145],"./MediaMplayer/Index":[7839,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277,7839],"./MediaMpv/Index":[9388,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277,9388],"./MediaVlc/Index":[6372,5184,1146,1861,3162,9878,4280,933,2716,648,6157,4787,3149,6777,4277,6372],"./Music/Index":[4834,5184,1146,1861,6157,4787,4834],"./MusicMopidy/Index":[7533,5184,1146,1861,6157,4787,4834,7533],"./MusicMpd/Index":[560,5184,1146,1861,6157,4787,4834,560],"./MusicSnapcast/Index":[6564,9769,5184,6564],"./MusicSpotify/Index":[7299,5184,1146,1861,6157,4787,4834,7299],"./Procedures/Index":[9636,3841,1146,3162,9878,4280,933,2561,572,6027,5928,7329,6923,343,9636],"./Rtorrent/Index":[8499,1146,1861,6777,9142,8499],"./Settings/Index":[4050,9769,3841,1146,1861,3162,2561,806,6592,4050],"./Settings/Tokens/Index":[806,3841,1146,1861,2561,806],"./Sound/Index":[7158,7158],"./Torrent/Index":[7098,1146,1861,6777,9142,7098],"./Tts/Index":[2392,8946,2392],"./TtsGoogle/Index":[1526,8946,1526],"./TtsPicovoice/Index":[8191,8946,8191],"./TvSamsungWs/Index":[4387,4387],"./ZigbeeMqtt/Index":[7630,9769,5184,1146,1861,7630],"./Zwave/Index":[9313,9769,5184,1146,1861,3290,9313],"./ZwaveMqtt/Index":[5145,9769,5184,1146,1861,3290,5145]};function d(e){if(!i.o(t,e))return Promise.resolve().then((function(){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}));var n=t[e],d=n[0];return Promise.all(n.slice(1).map(i.e)).then((function(){return i(d)}))}d.keys=function(){return Object.keys(t)},d.id=7672,e.exports=d}}]);
|
|
||||||
//# sourceMappingURL=7896.b116b065.js.map
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
228
platypush/backend/http/webapp/package-lock.json
generated
228
platypush/backend/http/webapp/package-lock.json
generated
|
@ -9,7 +9,7 @@
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fortawesome/fontawesome-free": "^6.5.2",
|
"@fortawesome/fontawesome-free": "^6.5.2",
|
||||||
"axios": "^1.7.4",
|
"axios": "^1.7.7",
|
||||||
"core-js": "^3.38.1",
|
"core-js": "^3.38.1",
|
||||||
"cronstrue": "^2.50.0",
|
"cronstrue": "^2.50.0",
|
||||||
"highlight.js": "^11.10.0",
|
"highlight.js": "^11.10.0",
|
||||||
|
@ -18,8 +18,8 @@
|
||||||
"register-service-worker": "^1.7.2",
|
"register-service-worker": "^1.7.2",
|
||||||
"sass": "^1.77.6",
|
"sass": "^1.77.6",
|
||||||
"sass-loader": "^10.5.2",
|
"sass-loader": "^10.5.2",
|
||||||
"vue": "^3.4.31",
|
"vue": "^3.5.12",
|
||||||
"vue-router": "^4.4.0",
|
"vue-router": "^4.4.5",
|
||||||
"vue-skycons": "^4.3.4",
|
"vue-skycons": "^4.3.4",
|
||||||
"w3css": "^2.7.0"
|
"w3css": "^2.7.0"
|
||||||
},
|
},
|
||||||
|
@ -423,19 +423,19 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/helper-string-parser": {
|
"node_modules/@babel/helper-string-parser": {
|
||||||
"version": "7.22.5",
|
"version": "7.25.9",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
|
||||||
"integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",
|
"integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
|
||||||
"dev": true,
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/helper-validator-identifier": {
|
"node_modules/@babel/helper-validator-identifier": {
|
||||||
"version": "7.22.20",
|
"version": "7.25.9",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
|
||||||
"integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
|
"integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
|
||||||
"dev": true,
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
|
@ -492,10 +492,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/parser": {
|
"node_modules/@babel/parser": {
|
||||||
"version": "7.24.7",
|
"version": "7.26.2",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz",
|
||||||
"integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==",
|
"integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/types": "^7.26.0"
|
||||||
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"parser": "bin/babel-parser.js"
|
"parser": "bin/babel-parser.js"
|
||||||
},
|
},
|
||||||
|
@ -1819,14 +1822,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/types": {
|
"node_modules/@babel/types": {
|
||||||
"version": "7.23.0",
|
"version": "7.26.0",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz",
|
||||||
"integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==",
|
"integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==",
|
||||||
"dev": true,
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/helper-string-parser": "^7.22.5",
|
"@babel/helper-string-parser": "^7.25.9",
|
||||||
"@babel/helper-validator-identifier": "^7.22.20",
|
"@babel/helper-validator-identifier": "^7.25.9"
|
||||||
"to-fast-properties": "^2.0.0"
|
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
|
@ -1971,9 +1973,10 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@jridgewell/sourcemap-codec": {
|
"node_modules/@jridgewell/sourcemap-codec": {
|
||||||
"version": "1.4.15",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
|
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
|
||||||
"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
|
"integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@jridgewell/trace-mapping": {
|
"node_modules/@jridgewell/trace-mapping": {
|
||||||
"version": "0.3.25",
|
"version": "0.3.25",
|
||||||
|
@ -3068,13 +3071,13 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@vue/compiler-core": {
|
"node_modules/@vue/compiler-core": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz",
|
||||||
"integrity": "sha512-skOiodXWTV3DxfDhB4rOf3OGalpITLlgCeOwb+Y9GJpfQ8ErigdBUHomBzvG78JoVE8MJoQsb+qhZiHfKeNeEg==",
|
"integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/parser": "^7.24.7",
|
"@babel/parser": "^7.25.3",
|
||||||
"@vue/shared": "3.4.31",
|
"@vue/shared": "3.5.12",
|
||||||
"entities": "^4.5.0",
|
"entities": "^4.5.0",
|
||||||
"estree-walker": "^2.0.2",
|
"estree-walker": "^2.0.2",
|
||||||
"source-map-js": "^1.2.0"
|
"source-map-js": "^1.2.0"
|
||||||
|
@ -3093,40 +3096,40 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/compiler-dom": {
|
"node_modules/@vue/compiler-dom": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz",
|
||||||
"integrity": "sha512-wK424WMXsG1IGMyDGyLqB+TbmEBFM78hIsOJ9QwUVLGrcSk0ak6zYty7Pj8ftm7nEtdU/DGQxAXp0/lM/2cEpQ==",
|
"integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/compiler-core": "3.4.31",
|
"@vue/compiler-core": "3.5.12",
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/compiler-sfc": {
|
"node_modules/@vue/compiler-sfc": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz",
|
||||||
"integrity": "sha512-einJxqEw8IIJxzmnxmJBuK2usI+lJonl53foq+9etB2HAzlPjAS/wa7r0uUpXw5ByX3/0uswVSrjNb17vJm1kQ==",
|
"integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/parser": "^7.24.7",
|
"@babel/parser": "^7.25.3",
|
||||||
"@vue/compiler-core": "3.4.31",
|
"@vue/compiler-core": "3.5.12",
|
||||||
"@vue/compiler-dom": "3.4.31",
|
"@vue/compiler-dom": "3.5.12",
|
||||||
"@vue/compiler-ssr": "3.4.31",
|
"@vue/compiler-ssr": "3.5.12",
|
||||||
"@vue/shared": "3.4.31",
|
"@vue/shared": "3.5.12",
|
||||||
"estree-walker": "^2.0.2",
|
"estree-walker": "^2.0.2",
|
||||||
"magic-string": "^0.30.10",
|
"magic-string": "^0.30.11",
|
||||||
"postcss": "^8.4.38",
|
"postcss": "^8.4.47",
|
||||||
"source-map-js": "^1.2.0"
|
"source-map-js": "^1.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/compiler-ssr": {
|
"node_modules/@vue/compiler-ssr": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz",
|
||||||
"integrity": "sha512-RtefmITAje3fJ8FSg1gwgDhdKhZVntIVbwupdyZDSifZTRMiWxWehAOTCc8/KZDnBOcYQ4/9VWxsTbd3wT0hAA==",
|
"integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/compiler-dom": "3.4.31",
|
"@vue/compiler-dom": "3.5.12",
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/component-compiler-utils": {
|
"node_modules/@vue/component-compiler-utils": {
|
||||||
|
@ -3194,58 +3197,59 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@vue/devtools-api": {
|
"node_modules/@vue/devtools-api": {
|
||||||
"version": "6.6.1",
|
"version": "6.6.4",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz",
|
||||||
"integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA=="
|
"integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@vue/reactivity": {
|
"node_modules/@vue/reactivity": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz",
|
||||||
"integrity": "sha512-VGkTani8SOoVkZNds1PfJ/T1SlAIOf8E58PGAhIOUDYPC4GAmFA2u/E14TDAFcf3vVDKunc4QqCe/SHr8xC65Q==",
|
"integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/runtime-core": {
|
"node_modules/@vue/runtime-core": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.12.tgz",
|
||||||
"integrity": "sha512-LDkztxeUPazxG/p8c5JDDKPfkCDBkkiNLVNf7XZIUnJ+66GVGkP+TIh34+8LtPisZ+HMWl2zqhIw0xN5MwU1cw==",
|
"integrity": "sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/reactivity": "3.4.31",
|
"@vue/reactivity": "3.5.12",
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/runtime-dom": {
|
"node_modules/@vue/runtime-dom": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.12.tgz",
|
||||||
"integrity": "sha512-2Auws3mB7+lHhTFCg8E9ZWopA6Q6L455EcU7bzcQ4x6Dn4cCPuqj6S2oBZgN2a8vJRS/LSYYxwFFq2Hlx3Fsaw==",
|
"integrity": "sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/reactivity": "3.4.31",
|
"@vue/reactivity": "3.5.12",
|
||||||
"@vue/runtime-core": "3.4.31",
|
"@vue/runtime-core": "3.5.12",
|
||||||
"@vue/shared": "3.4.31",
|
"@vue/shared": "3.5.12",
|
||||||
"csstype": "^3.1.3"
|
"csstype": "^3.1.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/server-renderer": {
|
"node_modules/@vue/server-renderer": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.12.tgz",
|
||||||
"integrity": "sha512-D5BLbdvrlR9PE3by9GaUp1gQXlCNadIZytMIb8H2h3FMWJd4oUfkUTEH2wAr3qxoRz25uxbTcbqd3WKlm9EHQA==",
|
"integrity": "sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/compiler-ssr": "3.4.31",
|
"@vue/compiler-ssr": "3.5.12",
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"vue": "3.4.31"
|
"vue": "3.5.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/shared": {
|
"node_modules/@vue/shared": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz",
|
||||||
"integrity": "sha512-Yp3wtJk//8cO4NItOPpi3QkLExAr/aLBGZMmTtW9WpdwBCJpRM6zj9WgWktXAl8IDIozwNMByT45JP3tO3ACWA==",
|
"integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@vue/vue-loader-v15": {
|
"node_modules/@vue/vue-loader-v15": {
|
||||||
|
@ -3772,9 +3776,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/axios": {
|
"node_modules/axios": {
|
||||||
"version": "1.7.4",
|
"version": "1.7.7",
|
||||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz",
|
||||||
"integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==",
|
"integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"follow-redirects": "^1.15.6",
|
"follow-redirects": "^1.15.6",
|
||||||
|
@ -8445,12 +8449,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/magic-string": {
|
"node_modules/magic-string": {
|
||||||
"version": "0.30.10",
|
"version": "0.30.12",
|
||||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz",
|
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz",
|
||||||
"integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==",
|
"integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jridgewell/sourcemap-codec": "^1.4.15"
|
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/make-dir": {
|
"node_modules/make-dir": {
|
||||||
|
@ -9360,9 +9364,10 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/picocolors": {
|
"node_modules/picocolors": {
|
||||||
"version": "1.0.0",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
||||||
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
|
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
|
||||||
|
"license": "ISC"
|
||||||
},
|
},
|
||||||
"node_modules/picomatch": {
|
"node_modules/picomatch": {
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
|
@ -9411,9 +9416,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/postcss": {
|
"node_modules/postcss": {
|
||||||
"version": "8.4.38",
|
"version": "8.4.48",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.48.tgz",
|
||||||
"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
|
"integrity": "sha512-GCRK8F6+Dl7xYniR5a4FYbpBzU8XnZVeowqsQFYdcXuSbChgiks7qybSkbvnaeqv0G0B+dd9/jJgH8kkLDQeEA==",
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
"type": "opencollective",
|
"type": "opencollective",
|
||||||
|
@ -9428,10 +9433,11 @@
|
||||||
"url": "https://github.com/sponsors/ai"
|
"url": "https://github.com/sponsors/ai"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"nanoid": "^3.3.7",
|
"nanoid": "^3.3.7",
|
||||||
"picocolors": "^1.0.0",
|
"picocolors": "^1.1.1",
|
||||||
"source-map-js": "^1.2.0"
|
"source-map-js": "^1.2.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^10 || ^12 || >=14"
|
"node": "^10 || ^12 || >=14"
|
||||||
|
@ -11127,9 +11133,10 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/source-map-js": {
|
"node_modules/source-map-js": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||||
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
|
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
||||||
|
"license": "BSD-3-Clause",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
|
@ -11746,15 +11753,6 @@
|
||||||
"integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
|
"integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/to-fast-properties": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
|
|
||||||
"integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
|
|
||||||
"dev": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/to-regex-range": {
|
"node_modules/to-regex-range": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||||
|
@ -12083,16 +12081,16 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vue": {
|
"node_modules/vue": {
|
||||||
"version": "3.4.31",
|
"version": "3.5.12",
|
||||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.4.31.tgz",
|
"resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz",
|
||||||
"integrity": "sha512-njqRrOy7W3YLAlVqSKpBebtZpDVg21FPoaq1I7f/+qqBThK9ChAIjkRWgeP6Eat+8C+iia4P3OYqpATP21BCoQ==",
|
"integrity": "sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/compiler-dom": "3.4.31",
|
"@vue/compiler-dom": "3.5.12",
|
||||||
"@vue/compiler-sfc": "3.4.31",
|
"@vue/compiler-sfc": "3.5.12",
|
||||||
"@vue/runtime-dom": "3.4.31",
|
"@vue/runtime-dom": "3.5.12",
|
||||||
"@vue/server-renderer": "3.4.31",
|
"@vue/server-renderer": "3.5.12",
|
||||||
"@vue/shared": "3.4.31"
|
"@vue/shared": "3.5.12"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"typescript": "*"
|
"typescript": "*"
|
||||||
|
@ -12313,12 +12311,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vue-router": {
|
"node_modules/vue-router": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.5",
|
||||||
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.5.tgz",
|
||||||
"integrity": "sha512-HB+t2p611aIZraV2aPSRNXf0Z/oLZFrlygJm+sZbdJaW6lcFqEDQwnzUBXn+DApw+/QzDU/I9TeWx9izEjTmsA==",
|
"integrity": "sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/devtools-api": "^6.5.1"
|
"@vue/devtools-api": "^6.6.4"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/posva"
|
"url": "https://github.com/sponsors/posva"
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fortawesome/fontawesome-free": "^6.5.2",
|
"@fortawesome/fontawesome-free": "^6.5.2",
|
||||||
"axios": "^1.7.4",
|
"axios": "^1.7.7",
|
||||||
"core-js": "^3.38.1",
|
"core-js": "^3.38.1",
|
||||||
"cronstrue": "^2.50.0",
|
"cronstrue": "^2.50.0",
|
||||||
"highlight.js": "^11.10.0",
|
"highlight.js": "^11.10.0",
|
||||||
|
@ -18,8 +18,8 @@
|
||||||
"register-service-worker": "^1.7.2",
|
"register-service-worker": "^1.7.2",
|
||||||
"sass": "^1.77.6",
|
"sass": "^1.77.6",
|
||||||
"sass-loader": "^10.5.2",
|
"sass-loader": "^10.5.2",
|
||||||
"vue": "^3.4.31",
|
"vue": "^3.5.12",
|
||||||
"vue-router": "^4.4.0",
|
"vue-router": "^4.4.5",
|
||||||
"vue-skycons": "^4.3.4",
|
"vue-skycons": "^4.3.4",
|
||||||
"w3css": "^2.7.0"
|
"w3css": "^2.7.0"
|
||||||
},
|
},
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<script>
|
<script>
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import hljs from 'highlight.js';
|
import hljs from 'highlight.js';
|
||||||
import 'highlight.js/styles/intellij-light.css';
|
import 'highlight.js/styles/night-owl.min.css'
|
||||||
|
|
||||||
import FloatingButton from "@/components/elements/FloatingButton";
|
import FloatingButton from "@/components/elements/FloatingButton";
|
||||||
import Highlighter from "./Highlighter";
|
import Highlighter from "./Highlighter";
|
||||||
|
@ -51,7 +51,16 @@ export default {
|
||||||
props: {
|
props: {
|
||||||
file: {
|
file: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true,
|
},
|
||||||
|
|
||||||
|
text: {
|
||||||
|
type: String,
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
|
|
||||||
|
contentType: {
|
||||||
|
type: String,
|
||||||
|
default: 'plaintext',
|
||||||
},
|
},
|
||||||
|
|
||||||
isNew: {
|
isNew: {
|
||||||
|
@ -114,41 +123,43 @@ export default {
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
async loadFile() {
|
async loadFile() {
|
||||||
this.setUrlArgs({file: this.file})
|
if (!this.text?.length) {
|
||||||
if (this.isNew) {
|
this.setUrlArgs({file: this.file})
|
||||||
this.content = ''
|
if (this.isNew) {
|
||||||
this.initialContentHash = 0
|
this.content = ''
|
||||||
this.highlightedContent = ''
|
this.initialContentHash = 0
|
||||||
this.info = {}
|
this.highlightedContent = ''
|
||||||
this.type = this.getLanguageType({path: this.file})
|
this.info = {}
|
||||||
return
|
this.type = this.getLanguageType({path: this.file})
|
||||||
}
|
return
|
||||||
|
|
||||||
this.loading = true
|
|
||||||
|
|
||||||
try {
|
|
||||||
this.info = (
|
|
||||||
await this.request('file.info', {files: [this.file]})
|
|
||||||
)[this.file] || {}
|
|
||||||
|
|
||||||
this.type = this.getLanguageType(this.info)
|
|
||||||
this.content = (
|
|
||||||
await axios.get(`/file?path=${encodeURIComponent(this.file)}`)
|
|
||||||
).data
|
|
||||||
|
|
||||||
if (typeof this.content === 'object') {
|
|
||||||
this.content = JSON.stringify(this.content, null, 2)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.initialContentHash = this.content.hashCode()
|
this.loading = true
|
||||||
} catch (e) {
|
|
||||||
this.notify({
|
try {
|
||||||
error: true,
|
this.info = (
|
||||||
text: e.message,
|
await this.request('file.info', {files: [this.file]})
|
||||||
title: 'Failed to load file',
|
)[this.file] || {}
|
||||||
})
|
|
||||||
} finally {
|
this.type = this.getLanguageType(this.info)
|
||||||
this.loading = false
|
this.content = (
|
||||||
|
await axios.get(`/file?path=${encodeURIComponent(this.file)}`)
|
||||||
|
).data
|
||||||
|
|
||||||
|
if (typeof this.content === 'object') {
|
||||||
|
this.content = JSON.stringify(this.content, null, 2)
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initialContentHash = this.content.hashCode()
|
||||||
|
} catch (e) {
|
||||||
|
this.notify({
|
||||||
|
error: true,
|
||||||
|
text: e.message,
|
||||||
|
title: 'Failed to load file',
|
||||||
|
})
|
||||||
|
} finally {
|
||||||
|
this.loading = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.selectedLine) {
|
if (this.selectedLine) {
|
||||||
|
@ -270,6 +281,11 @@ export default {
|
||||||
window.removeEventListener('beforeunload', this.beforeUnload)
|
window.removeEventListener('beforeunload', this.beforeUnload)
|
||||||
},
|
},
|
||||||
|
|
||||||
|
convertType(type) {
|
||||||
|
const parts = type.split('/')
|
||||||
|
return parts[parts.length - 1]
|
||||||
|
},
|
||||||
|
|
||||||
reset() {
|
reset() {
|
||||||
this.setUrlArgs({file: null, line: null})
|
this.setUrlArgs({file: null, line: null})
|
||||||
this.removeBeforeUnload()
|
this.removeBeforeUnload()
|
||||||
|
@ -278,6 +294,14 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
|
contentType() {
|
||||||
|
if (!this.contentType?.length) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
this.type = this.convertType(this.contentType)
|
||||||
|
},
|
||||||
|
|
||||||
file() {
|
file() {
|
||||||
this.loadFile()
|
this.loadFile()
|
||||||
},
|
},
|
||||||
|
@ -323,6 +347,10 @@ export default {
|
||||||
this.$refs.selectedLine.style.top = `${offset}px`
|
this.$refs.selectedLine.style.top = `${offset}px`
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
text() {
|
||||||
|
this.content = this.text
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -334,6 +362,8 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.content = this.text
|
||||||
|
this.type = this.convertType(this.contentType)
|
||||||
this.loadFile()
|
this.loadFile()
|
||||||
this.addBeforeUnload()
|
this.addBeforeUnload()
|
||||||
this.addKeyListener()
|
this.addKeyListener()
|
||||||
|
@ -354,6 +384,11 @@ export default {
|
||||||
$line-numbers-width: 2.5em;
|
$line-numbers-width: 2.5em;
|
||||||
|
|
||||||
.file-editor {
|
.file-editor {
|
||||||
|
--body-bg: #080808;
|
||||||
|
--body-fg: #f8f8f2;
|
||||||
|
--line-numbers-bg: #282a36;
|
||||||
|
--line-numbers-fg: #6272a4;
|
||||||
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -366,6 +401,8 @@ $line-numbers-width: 2.5em;
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
background: var(--body-bg);
|
||||||
|
color: var(--body-fg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.editor-highlight-loading {
|
.editor-highlight-loading {
|
||||||
|
@ -412,6 +449,8 @@ $line-numbers-width: 2.5em;
|
||||||
align-items: flex-end;
|
align-items: flex-end;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
|
background: var(--line-numbers-bg);
|
||||||
|
color: var(--line-numbers-fg);
|
||||||
|
|
||||||
.line-number {
|
.line-number {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -444,7 +483,7 @@ $line-numbers-width: 2.5em;
|
||||||
overflow-x: scroll;
|
overflow-x: scroll;
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
color: rgba(0, 0, 0, 0);
|
color: rgba(0, 0, 0, 0);
|
||||||
caret-color: black;
|
caret-color: var(--body-fg);
|
||||||
border: none;
|
border: none;
|
||||||
outline: none;
|
outline: none;
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,9 @@
|
||||||
:file="file"
|
:file="file"
|
||||||
:is-new="isNew"
|
:is-new="isNew"
|
||||||
:line="line"
|
:line="line"
|
||||||
|
:text="text"
|
||||||
|
:content-type="contentType"
|
||||||
|
:with-save="withSave"
|
||||||
@save="$emit('save', $event)"
|
@save="$emit('save', $event)"
|
||||||
v-if="file" />
|
v-if="file" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -41,7 +44,16 @@ export default {
|
||||||
props: {
|
props: {
|
||||||
file: {
|
file: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true,
|
},
|
||||||
|
|
||||||
|
text: {
|
||||||
|
type: String,
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
|
|
||||||
|
contentType: {
|
||||||
|
type: String,
|
||||||
|
default: 'text/plain',
|
||||||
},
|
},
|
||||||
|
|
||||||
isNew: {
|
isNew: {
|
||||||
|
|
Binary file not shown.
|
@ -18,7 +18,7 @@ RUN --mount=type=bind,source=.,target=/curdir \
|
||||||
|
|
||||||
RUN /install/platypush/install/scripts/alpine/install.sh && \
|
RUN /install/platypush/install/scripts/alpine/install.sh && \
|
||||||
cd /install && \
|
cd /install && \
|
||||||
pip install -U --no-input --no-cache-dir --no-deps --ignore-installed --break-system-packages . croniter && \
|
pip install -U --no-input --no-cache-dir --no-deps --ignore-installed --break-system-packages . croniter marshmallow && \
|
||||||
rm -rf /install && \
|
rm -rf /install && \
|
||||||
rm -rf /root/.cache && \
|
rm -rf /root/.cache && \
|
||||||
apk del gcc git && \
|
apk del gcc git && \
|
||||||
|
|
|
@ -6,7 +6,6 @@ py3-docutils
|
||||||
py3-flask
|
py3-flask
|
||||||
py3-greenlet
|
py3-greenlet
|
||||||
py3-magic
|
py3-magic
|
||||||
py3-marshmallow
|
|
||||||
py3-mypy-extensions
|
py3-mypy-extensions
|
||||||
py3-otp
|
py3-otp
|
||||||
py3-psutil
|
py3-psutil
|
||||||
|
@ -16,11 +15,13 @@ py3-qrcode
|
||||||
py3-redis
|
py3-redis
|
||||||
py3-requests
|
py3-requests
|
||||||
py3-rsa
|
py3-rsa
|
||||||
|
py3-simplejson
|
||||||
py3-sqlalchemy
|
py3-sqlalchemy
|
||||||
py3-tornado
|
py3-tornado
|
||||||
py3-tz
|
py3-tz
|
||||||
py3-websocket-client
|
py3-websocket-client
|
||||||
py3-websockets
|
py3-websockets
|
||||||
|
py3-wheel
|
||||||
py3-yaml
|
py3-yaml
|
||||||
py3-zeroconf
|
py3-zeroconf
|
||||||
redis
|
redis
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
apk add --update --no-interactive --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/
|
apk add --update --no-interactive --no-cache
|
||||||
|
|
|
@ -70,8 +70,13 @@ class IRCBot(irc.bot.SingleServerIRCBot):
|
||||||
dcc_max_connections: Optional[int] = None,
|
dcc_max_connections: Optional[int] = None,
|
||||||
):
|
):
|
||||||
connection_factory = ConnectionFactory()
|
connection_factory = ConnectionFactory()
|
||||||
|
self._ssl_ctx = None
|
||||||
|
|
||||||
if ssl:
|
if ssl:
|
||||||
connection_factory.wrapper = _ssl.wrap_socket
|
self._ssl_ctx = _ssl.create_default_context()
|
||||||
|
# Temporary workaround for check_hostname issues on Python >= 3.12
|
||||||
|
self._ssl_ctx.check_hostname = False
|
||||||
|
connection_factory.wrapper = self._ssl_ctx.wrap_socket
|
||||||
if ipv6:
|
if ipv6:
|
||||||
connection_factory.family = socket.AF_INET6
|
connection_factory.family = socket.AF_INET6
|
||||||
|
|
||||||
|
@ -86,7 +91,7 @@ class IRCBot(irc.bot.SingleServerIRCBot):
|
||||||
self.port = port
|
self.port = port
|
||||||
self.alias = alias
|
self.alias = alias
|
||||||
self._password = password
|
self._password = password
|
||||||
self.channels.update({channel: None for channel in channels})
|
self.channels.update(dict.fromkeys(channels))
|
||||||
self._stop_message = stop_message
|
self._stop_message = stop_message
|
||||||
self.dcc_ip_whitelist = set(dcc_ip_whitelist or [])
|
self.dcc_ip_whitelist = set(dcc_ip_whitelist or [])
|
||||||
self.dcc_ip_blacklist = set(dcc_ip_blacklist or [])
|
self.dcc_ip_blacklist = set(dcc_ip_blacklist or [])
|
||||||
|
@ -455,7 +460,7 @@ class IRCBot(irc.bot.SingleServerIRCBot):
|
||||||
def on_disconnect(self, connection: Connection, event: _IRCEvent):
|
def on_disconnect(self, connection: Connection, event: _IRCEvent):
|
||||||
self._post_event(connection, IRCDisconnectEvent)
|
self._post_event(connection, IRCDisconnectEvent)
|
||||||
# Cache channels for reconnect logic
|
# Cache channels for reconnect logic
|
||||||
channels = {ch: None for ch in self.channels.keys()}
|
channels = dict.fromkeys(self.channels)
|
||||||
super()._on_disconnect(connection, event)
|
super()._on_disconnect(connection, event)
|
||||||
self.channels.update(channels)
|
self.channels.update(channels)
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[project]
|
[project]
|
||||||
name = "platypush"
|
name = "platypush"
|
||||||
description = "A general-purpose framework for automation"
|
description = "A general-purpose framework for automation"
|
||||||
dynamic = ["version", "dependencies", "optional-dependencies"]
|
dynamic = ["version", "dependencies", "optional-dependencies", "entry-points"]
|
||||||
authors = [
|
authors = [
|
||||||
{name = "Fabio Manganiello", email = "fabio@manganiello.tech"},
|
{name = "Fabio Manganiello", email = "fabio@manganiello.tech"},
|
||||||
]
|
]
|
||||||
|
@ -19,7 +19,7 @@ keywords = [
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.setuptools.dynamic]
|
[tool.setuptools.dynamic]
|
||||||
version = {attr = "version.__version__"}
|
version = {attr = "platypush.__version__"}
|
||||||
dependencies = {file = "requirements.txt"}
|
dependencies = {file = "requirements.txt"}
|
||||||
|
|
||||||
[project.urls]
|
[project.urls]
|
||||||
|
@ -50,7 +50,7 @@ include = [
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.bumpversion]
|
[tool.bumpversion]
|
||||||
current_version = "1.3.2"
|
current_version = "1.3.4"
|
||||||
commit = true
|
commit = true
|
||||||
tag = true
|
tag = true
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
__version__ = "1.3.2"
|
__version__ = "1.3.4"
|
||||||
|
|
Loading…
Reference in a new issue