diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9ab056c5218..b2f170c9853 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,10 +6,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Java 8 + - name: Setup Java 11 uses: actions/setup-java@v1 with: - java-version: '8' + java-version: '11' - name: Setup Cache for Java/Gradle uses: actions/cache@v2 diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 5de342dfec2..f5d0fe8587d 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -1,13 +1,13 @@ FROM gitpod/workspace-postgres RUN bash -c ". /home/gitpod/.sdkman/bin/sdkman-init.sh \ - && sdk install java 8.0.265-open" + && sdk install java 11.0.13-tem" # disable angular analytics ENV NG_CLI_ANALYTICS=false # Docker build does not rebuild an image when a base image is changed, increase this counter to trigger it. -ENV TRIGGER_REBUILD 3 +ENV TRIGGER_REBUILD 4 RUN npm install -g @angular/cli diff --git a/.gradle-wrapper/gradle-wrapper.properties b/.gradle-wrapper/gradle-wrapper.properties index ffed3a254e9..e750102e092 100644 --- a/.gradle-wrapper/gradle-wrapper.properties +++ b/.gradle-wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/cnf/build.bnd b/cnf/build.bnd index 225a9a3406c..af042b404bb 100644 --- a/cnf/build.bnd +++ b/cnf/build.bnd @@ -95,5 +95,5 @@ testpath: \ Edge_Timedata;member=${filter;${p};io\.openems\.edge\.timedata\..*},\ Edge_TimeOfUseTariff;member=${filter;${p};io\.openems\.edge\.timeofusetariff\..*},\ -javac.source: 1.8 -javac.target: 1.8 +javac.source: 11 +javac.target: 11 diff --git a/cnf/pom.xml b/cnf/pom.xml index 60d405a58f3..92f37acf803 100644 --- a/cnf/pom.xml +++ b/cnf/pom.xml @@ -108,6 +108,12 @@ v1_6 1.0.1 + + + fr.turri + aXMLRPC + 1.12.0 + info.faljse @@ -125,7 +131,7 @@ net.java.dev.jna jna - 5.9.0 + 5.10.0 @@ -193,16 +199,6 @@ org.apache.felix.webconsole.plugins.ds 2.1.0 - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.xmlrpc-client - 3.1.3_1 - - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.ws-commons-util - 1.0.2_2 - org.dhatim fastexcel diff --git a/doc/modules/ROOT/pages/single_document.adoc b/doc/modules/ROOT/pages/single_document.adoc index 5892a064634..7f881f2c6d2 100644 --- a/doc/modules/ROOT/pages/single_document.adoc +++ b/doc/modules/ROOT/pages/single_document.adoc @@ -1,7 +1,7 @@ = OpenEMS - Open Energy Management System ifndef::toc[] (c) 2020 OpenEMS Association e.V. -Version 2021.20.0 +Version 2021.21.0 :sectnums: :sectnumlevels: 4 :toc: diff --git a/gradlew b/gradlew index dfc9e2aec2d..7e705d510c1 100755 --- a/gradlew +++ b/gradlew @@ -1,7 +1,7 @@ -#!/usr/bin/env sh +#!/bin/sh # -# Copyright 2015 the original author or authors. +# Copyright © 2015-2021 the original authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,67 +17,101 @@ # ############################################################################## -## -## Gradle start up script for UN*X -## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# ############################################################################## # Attempt to set APP_HOME + # Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` +APP_BASE_NAME=${0##*/} # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" +MAX_FD=maximum warn () { echo "$*" -} +} >&2 die () { echo echo "$*" echo exit 1 -} +} >&2 # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MSYS* | MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; esac CLASSPATH=$APP_HOME/.gradle-wrapper/gradle-wrapper.jar @@ -87,9 +121,9 @@ CLASSPATH=$APP_HOME/.gradle-wrapper/gradle-wrapper.jar if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACMD=$JAVA_HOME/jre/sh/java else - JAVACMD="$JAVA_HOME/bin/java" + JAVACMD=$JAVA_HOME/bin/java fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -98,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD="java" + JAVACMD=java which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the @@ -106,80 +140,95 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac fi -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. # For Cygwin or MSYS, switch paths to Windows format before running java -if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) fi - i=`expr $i + 1` + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg done - case $i in - 0) set -- ;; - 1) set -- "$args0" ;; - 2) set -- "$args0" "$args1" ;; - 3) set -- "$args0" "$args1" "$args2" ;; - 4) set -- "$args0" "$args1" "$args2" "$args3" ;; - 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " -} -APP_ARGS=`save "$@"` +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# -# Collect all arguments for the java command, following the shell quoting and substitution rules -eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' exec "$JAVACMD" "$@" diff --git a/io.openems.backend.application/.classpath b/io.openems.backend.application/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.application/.classpath +++ b/io.openems.backend.application/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.application/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.application/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 569fcf67290..00000000000 --- a/io.openems.backend.application/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/backend/application/BackendApp.java=UTF-8 -encoding/BackendApp.bndrun=UTF-8 -encoding/bnd.bnd=UTF-8 -encoding/readme.md=UTF-8 diff --git a/io.openems.backend.application/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.application/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.application/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.application/BackendApp.bndrun b/io.openems.backend.application/BackendApp.bndrun index 3e29f4c16f7..67c47c7e700 100644 --- a/io.openems.backend.application/BackendApp.bndrun +++ b/io.openems.backend.application/BackendApp.bndrun @@ -1,5 +1,5 @@ -runfw: org.apache.felix.framework;version='[7.0.1,7.0.1]' --runee: JavaSE-1.8 +-runee: JavaSE-11 -runprovidedcapabilities: ${native_capability} -resolve.effective: active @@ -57,6 +57,7 @@ io.openems.backend.uiwebsocket;version=snapshot,\ io.openems.common;version=snapshot,\ io.openems.shared.influxdb;version=snapshot,\ + io.openems.wrapper.aXMLRPC;version=snapshot,\ io.openems.wrapper.fastexcel;version=snapshot,\ io.openems.wrapper.influxdb-java;version=snapshot,\ io.openems.wrapper.okhttp;version=snapshot,\ @@ -71,8 +72,6 @@ org.apache.felix.scr;version='[2.1.30,2.1.31)',\ org.apache.felix.webconsole;version='[4.7.0,4.7.1)',\ org.apache.felix.webconsole.plugins.ds;version='[2.1.0,2.1.1)',\ - org.apache.servicemix.bundles.ws-commons-util;version='[1.0.2,1.0.3)',\ - org.apache.servicemix.bundles.xmlrpc-client;version='[3.1.3,3.1.4)',\ org.jsr-305;version='[3.0.2,3.0.3)',\ org.ops4j.pax.logging.pax-logging-api;version='[2.0.10,2.0.11)',\ org.ops4j.pax.logging.pax-logging-log4j1;version='[2.0.10,2.0.11)',\ diff --git a/io.openems.backend.b2brest/.classpath b/io.openems.backend.b2brest/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.b2brest/.classpath +++ b/io.openems.backend.b2brest/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.b2bwebsocket/.classpath b/io.openems.backend.b2bwebsocket/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.b2bwebsocket/.classpath +++ b/io.openems.backend.b2bwebsocket/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.common/.classpath b/io.openems.backend.common/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.common/.classpath +++ b/io.openems.backend.common/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.common/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.common/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index d5416543672..00000000000 --- a/io.openems.backend.common/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/backend/common/edgewebsocket/package-info.java=UTF-8 -encoding//src/io/openems/backend/common/metadata/package-info.java=UTF-8 -encoding//src/io/openems/backend/common/timedata/package-info.java=UTF-8 -encoding//src/io/openems/backend/common/uiwebsocket/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.common/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.common/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.common/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.core/.classpath b/io.openems.backend.core/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.core/.classpath +++ b/io.openems.backend.core/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.edgewebsocket/.classpath b/io.openems.backend.edgewebsocket/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.edgewebsocket/.classpath +++ b/io.openems.backend.edgewebsocket/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.edgewebsocket/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.edgewebsocket/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1554c6f848a..00000000000 --- a/io.openems.backend.edgewebsocket/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.edgewebsocket/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.edgewebsocket/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.edgewebsocket/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.metadata.dummy/.classpath b/io.openems.backend.metadata.dummy/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.metadata.dummy/.classpath +++ b/io.openems.backend.metadata.dummy/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.metadata.dummy/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.metadata.dummy/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f2d69683089..00000000000 --- a/io.openems.backend.metadata.dummy/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/backend/metadata/dummy/DummyMetadata.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.metadata.dummy/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.metadata.dummy/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.metadata.dummy/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.metadata.file/.classpath b/io.openems.backend.metadata.file/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.metadata.file/.classpath +++ b/io.openems.backend.metadata.file/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.metadata.file/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.metadata.file/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1dd7d9dd15a..00000000000 --- a/io.openems.backend.metadata.file/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 -encoding/readme.md=UTF-8 diff --git a/io.openems.backend.metadata.file/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.metadata.file/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.metadata.file/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.metadata.odoo/.classpath b/io.openems.backend.metadata.odoo/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.metadata.odoo/.classpath +++ b/io.openems.backend.metadata.odoo/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.metadata.odoo/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.metadata.odoo/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1554c6f848a..00000000000 --- a/io.openems.backend.metadata.odoo/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.metadata.odoo/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.metadata.odoo/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.metadata.odoo/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.metadata.odoo/bnd.bnd b/io.openems.backend.metadata.odoo/bnd.bnd index 3819735cee4..14c317211e3 100644 --- a/io.openems.backend.metadata.odoo/bnd.bnd +++ b/io.openems.backend.metadata.odoo/bnd.bnd @@ -8,8 +8,8 @@ Bundle-Version: 1.0.0.${tstamp} com.zaxxer.HikariCP,\ io.openems.backend.common,\ io.openems.common,\ - org.apache.servicemix.bundles.xmlrpc-client,\ - org.postgresql.jdbc + io.openems.wrapper.aXMLRPC,\ + org.postgresql.jdbc,\ -testpath: \ ${testpath} diff --git a/io.openems.backend.metadata.odoo/src/io/openems/backend/metadata/odoo/odoo/OdooUtils.java b/io.openems.backend.metadata.odoo/src/io/openems/backend/metadata/odoo/odoo/OdooUtils.java index 8c96c4703f7..6ece2e8591c 100644 --- a/io.openems.backend.metadata.odoo/src/io/openems/backend/metadata/odoo/odoo/OdooUtils.java +++ b/io.openems.backend.metadata.odoo/src/io/openems/backend/metadata/odoo/odoo/OdooUtils.java @@ -13,15 +13,13 @@ import java.util.Map; import java.util.Optional; -import org.apache.xmlrpc.XmlRpcException; -import org.apache.xmlrpc.client.XmlRpcClient; -import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; - import com.google.common.io.ByteStreams; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import de.timroes.axmlrpc.XMLRPCClient; +import de.timroes.axmlrpc.XMLRPCException; import io.openems.backend.metadata.odoo.Field; import io.openems.common.exceptions.OpenemsError; import io.openems.common.exceptions.OpenemsError.OpenemsNamedException; @@ -211,15 +209,10 @@ protected static String login(Credentials credentials, String username, String p } } - private static Object executeKw(String url, Object[] params) throws XmlRpcException, MalformedURLException { - final XmlRpcClient client = new XmlRpcClient(); - XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); - config.setEnabledForExtensions(true); - config.setServerURL(new URL(String.format("%s/xmlrpc/2/object", url))); - config.setConnectionTimeout(10_000 /* 10 seconds */); - config.setReplyTimeout(60_000 /* 60 seconds */); - client.setConfig(config); - return client.execute("execute_kw", params); + private static Object executeKw(String url, Object[] params) throws MalformedURLException, XMLRPCException { + XMLRPCClient client = new XMLRPCClient(new URL(String.format("%s/xmlrpc/2/object", url))); + client.setTimeout(60 /* seconds */); + return client.call("execute_kw", params); } /** @@ -631,8 +624,7 @@ protected static Optional getOdooRefernceId(Object object) { * @return the Odoo report as a byte array * @throws OpenemsNamedException on error */ - protected static byte[] getOdooReport(Credentials credentials, String report, int id) - throws OpenemsNamedException { + protected static byte[] getOdooReport(Credentials credentials, String report, int id) throws OpenemsNamedException { String session = login(credentials, "admin", credentials.getPassword()); HttpURLConnection connection = null; diff --git a/io.openems.backend.timedata.dummy/.classpath b/io.openems.backend.timedata.dummy/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.timedata.dummy/.classpath +++ b/io.openems.backend.timedata.dummy/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.timedata.influx/.classpath b/io.openems.backend.timedata.influx/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.timedata.influx/.classpath +++ b/io.openems.backend.timedata.influx/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.timedata.influx/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.timedata.influx/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index e43e362c9b3..00000000000 --- a/io.openems.backend.timedata.influx/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/backend/timedata/influx/Influx.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.timedata.influx/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.timedata.influx/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.timedata.influx/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.backend.uiwebsocket/.classpath b/io.openems.backend.uiwebsocket/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.backend.uiwebsocket/.classpath +++ b/io.openems.backend.uiwebsocket/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.backend.uiwebsocket/.settings/org.eclipse.core.resources.prefs b/io.openems.backend.uiwebsocket/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1554c6f848a..00000000000 --- a/io.openems.backend.uiwebsocket/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.backend.uiwebsocket/.settings/org.eclipse.jdt.core.prefs b/io.openems.backend.uiwebsocket/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.backend.uiwebsocket/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.common/.classpath b/io.openems.common/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.common/.classpath +++ b/io.openems.common/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.common/.settings/org.eclipse.core.resources.prefs b/io.openems.common/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index ee184c2791a..00000000000 --- a/io.openems.common/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/common/channel/PersistencePriority.java=UTF-8 -encoding//src/io/openems/common/channel/Unit.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.common/.settings/org.eclipse.jdt.core.prefs b/io.openems.common/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.common/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.common/src/io/openems/common/OpenemsConstants.java b/io.openems.common/src/io/openems/common/OpenemsConstants.java index 31e8c09a891..482872536c4 100644 --- a/io.openems.common/src/io/openems/common/OpenemsConstants.java +++ b/io.openems.common/src/io/openems/common/OpenemsConstants.java @@ -20,7 +20,7 @@ public class OpenemsConstants { * * This is usually the number of the sprint within the year */ - public final static short VERSION_MINOR = 20; + public final static short VERSION_MINOR = 21; /** * The patch version of OpenEMS. diff --git a/io.openems.edge.application/.classpath b/io.openems.edge.application/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.application/.classpath +++ b/io.openems.edge.application/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.application/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.application/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 7f7f75fa42e..00000000000 --- a/io.openems.edge.application/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,6 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/application/EdgeApp.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/EdgeApp.bndrun=UTF-8 -encoding/bnd.bnd=UTF-8 -encoding/readme.md=UTF-8 diff --git a/io.openems.edge.application/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.application/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.application/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.application/EdgeApp.bndrun b/io.openems.edge.application/EdgeApp.bndrun index a9edab2d0bf..cbde1416c5d 100644 --- a/io.openems.edge.application/EdgeApp.bndrun +++ b/io.openems.edge.application/EdgeApp.bndrun @@ -1,5 +1,5 @@ -runfw: org.apache.felix.framework;version='[7.0.1,7.0.1]' --runee: JavaSE-1.8 +-runee: JavaSE-11 -runprovidedcapabilities: ${native_capability} -resolve.effective: active @@ -150,6 +150,7 @@ bnd.identity;id='io.openems.edge.timedata.rrd4j',\ bnd.identity;id='io.openems.edge.timeofusetariff.awattar',\ bnd.identity;id='io.openems.edge.timeofusetariff.corrently',\ + bnd.identity;id='io.openems.edge.timeofusetariff.tibber',\ -runbundles: \ Java-WebSocket;version='[1.5.2,1.5.3)',\ @@ -158,7 +159,7 @@ com.google.gson;version='[2.8.9,2.8.10)',\ com.google.guava;version='[31.0.1,31.0.2)',\ com.google.guava.failureaccess;version='[1.0.1,1.0.2)',\ - com.sun.jna;version='[5.9.0,5.9.1)',\ + com.sun.jna;version='[5.10.0,5.10.1)',\ io.openems.common;version=snapshot,\ io.openems.edge.application;version=snapshot,\ io.openems.edge.battery.api;version=snapshot,\ @@ -296,6 +297,7 @@ io.openems.edge.timeofusetariff.api;version=snapshot,\ io.openems.edge.timeofusetariff.awattar;version=snapshot,\ io.openems.edge.timeofusetariff.corrently;version=snapshot,\ + io.openems.edge.timeofusetariff.tibber;version=snapshot,\ io.openems.shared.influxdb;version=snapshot,\ io.openems.wrapper.eu.chargetime.ocpp;version=snapshot,\ io.openems.wrapper.fastexcel;version=snapshot,\ diff --git a/io.openems.edge.battery.api/.classpath b/io.openems.edge.battery.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.battery.api/.classpath +++ b/io.openems.edge.battery.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.battery.bmw/.classpath b/io.openems.edge.battery.bmw/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.battery.bmw/.classpath +++ b/io.openems.edge.battery.bmw/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.battery.bydcommercial/.classpath b/io.openems.edge.battery.bydcommercial/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.battery.bydcommercial/.classpath +++ b/io.openems.edge.battery.bydcommercial/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.battery.fenecon.home/.classpath b/io.openems.edge.battery.fenecon.home/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.battery.fenecon.home/.classpath +++ b/io.openems.edge.battery.fenecon.home/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.battery.soltaro/.classpath b/io.openems.edge.battery.soltaro/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.battery.soltaro/.classpath +++ b/io.openems.edge.battery.soltaro/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.batteryinverter.api/.classpath b/io.openems.edge.batteryinverter.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.batteryinverter.api/.classpath +++ b/io.openems.edge.batteryinverter.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/.classpath b/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/.classpath +++ b/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.batteryinverter.refu88k/.classpath b/io.openems.edge.batteryinverter.refu88k/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.batteryinverter.refu88k/.classpath +++ b/io.openems.edge.batteryinverter.refu88k/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.batteryinverter.sinexcel/.classpath b/io.openems.edge.batteryinverter.sinexcel/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.batteryinverter.sinexcel/.classpath +++ b/io.openems.edge.batteryinverter.sinexcel/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.batteryinverter.sunspec/.classpath b/io.openems.edge.batteryinverter.sunspec/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.batteryinverter.sunspec/.classpath +++ b/io.openems.edge.batteryinverter.sunspec/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.bosch.bpts5hybrid/.classpath b/io.openems.edge.bosch.bpts5hybrid/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.bosch.bpts5hybrid/.classpath +++ b/io.openems.edge.bosch.bpts5hybrid/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.bridge.mbus/.classpath b/io.openems.edge.bridge.mbus/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.bridge.mbus/.classpath +++ b/io.openems.edge.bridge.mbus/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.bridge.modbus/.classpath b/io.openems.edge.bridge.modbus/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.bridge.modbus/.classpath +++ b/io.openems.edge.bridge.modbus/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.bridge.modbus/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.bridge.modbus/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f7cce4ce39b..00000000000 --- a/io.openems.edge.bridge.modbus/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,6 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/bridge/modbus/api/BridgeModbus.java=UTF-8 -encoding//src/io/openems/edge/bridge/modbus/api/package-info.java=UTF-8 -encoding//src/io/openems/edge/bridge/modbus/test/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.bridge.modbus/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.bridge.modbus/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.bridge.modbus/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.bridge.onewire/.classpath b/io.openems.edge.bridge.onewire/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.bridge.onewire/.classpath +++ b/io.openems.edge.bridge.onewire/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/OneWireAccessProvider.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/OneWireAccessProvider.java index 2d94fb4c8e2..6605e12b544 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/OneWireAccessProvider.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/OneWireAccessProvider.java @@ -227,7 +227,7 @@ public static Enumeration enumerateAllAdapters() { // get the pure java adapter try { adapter_class = Class.forName("com.dalsemi.onewire.adapter.USerialAdapter"); - adapter_instance = (DSPortAdapter) adapter_class.newInstance(); + adapter_instance = (DSPortAdapter) adapter_class.getConstructor().newInstance(); // check if has any ports (common javax.comm problem) if (!adapter_instance.getPortNames().hasMoreElements()) { @@ -270,7 +270,7 @@ public static Enumeration enumerateAllAdapters() { // try PDK adapter try { adapter_class = Class.forName("com.dalsemi.onewire.adapter.PDKAdapterUSB"); - adapter_instance = (DSPortAdapter) adapter_class.newInstance(); + adapter_instance = (DSPortAdapter) adapter_class.getConstructor().newInstance(); adapter_vector.addElement(adapter_instance); } catch (java.lang.NoClassDefFoundError e) { @@ -282,7 +282,7 @@ public static Enumeration enumerateAllAdapters() { // get the network adapter try { adapter_class = Class.forName("com.dalsemi.onewire.adapter.NetAdapter"); - adapter_instance = (DSPortAdapter) adapter_class.newInstance(); + adapter_instance = (DSPortAdapter) adapter_class.getConstructor().newInstance(); adapter_vector.addElement(adapter_instance); } catch (java.lang.NoClassDefFoundError e) { @@ -303,7 +303,7 @@ public static Enumeration enumerateAllAdapters() { // add it to the enum adapter_class = Class.forName(class_name); - adapter_instance = (DSPortAdapter) adapter_class.newInstance(); + adapter_instance = (DSPortAdapter) adapter_class.getConstructor().newInstance(); adapter_vector.addElement(adapter_instance); } } catch (java.lang.UnsatisfiedLinkError e) { @@ -536,7 +536,7 @@ else if (propName.equals("onewire.port.default")) else if (propName.equals("onewire.port.default")) { try { adapter_class = Class.forName("com.dalsemi.onewire.adapter.USerialAdapter"); - adapter_instance = (DSPortAdapter) adapter_class.newInstance(); + adapter_instance = (DSPortAdapter) adapter_class.getConstructor().newInstance(); // check if has any ports (common javax.comm problem) if (adapter_instance.getPortNames().hasMoreElements()) diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/DSPortAdapter.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/DSPortAdapter.java index 1987293f37d..634495c2be4 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/DSPortAdapter.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/DSPortAdapter.java @@ -332,7 +332,7 @@ public void registerOneWireContainerClass(int family, Class OneWireContainerC throw new OneWireException("Could not find OneWireContainer class"); } - Integer familyInt = new Integer(family); + Integer familyInt = Integer.valueOf(family); if (OneWireContainerClass == null) { @@ -1450,7 +1450,7 @@ public OneWireContainer getDeviceContainer(byte[] address) { // If any user registered button exist, check the hashtable. if (!registeredOneWireContainerClasses.isEmpty()) { - Integer familyInt = new Integer(family_code); + Integer familyInt = Integer.valueOf(family_code); // Try and get a user provided container class first. ibutton_class = (Class) registeredOneWireContainerClasses.get(familyInt); @@ -1483,7 +1483,7 @@ public OneWireContainer getDeviceContainer(byte[] address) { try { // create the iButton container with a reference to this adapter - new_ibutton = (OneWireContainer) ibutton_class.newInstance(); + new_ibutton = (OneWireContainer) ibutton_class.getConstructor().newInstance(); new_ibutton.setupContainer(this, address); } catch (Exception e) { diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/NetAdapter.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/NetAdapter.java index a598dd33371..2a8f812e115 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/NetAdapter.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/NetAdapter.java @@ -188,7 +188,7 @@ public class NetAdapter extends DSPortAdapter implements NetAdapterConstants { protected static final String COMM_FAILED = "IO Error: "; /** constant for no exclusive lock */ - protected static final Integer NOT_OWNED = new Integer(0); + protected static final Integer NOT_OWNED = Integer.valueOf(0); /** Keeps hash of current thread for exclusive lock */ protected Integer currentThreadHash = NOT_OWNED; @@ -1196,7 +1196,7 @@ private boolean beginExclusive() throws OneWireException { synchronized (currentThreadHash) { if (currentThreadHash == NOT_OWNED) { // not owned so take - currentThreadHash = new Integer(Thread.currentThread().hashCode()); + currentThreadHash = Integer.valueOf(Thread.currentThread().hashCode()); // provided debug on standard out if (DEBUG) { diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/TMEXAdapter.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/TMEXAdapter.java index a991722e92a..e7ae91dbb3b 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/TMEXAdapter.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/TMEXAdapter.java @@ -241,6 +241,7 @@ public TMEXAdapter(int newPortType) throws ClassNotFoundException { /** * Finalize to Cleanup native */ + @Override protected void finalize() { cleanup_Native(); } diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/USerialAdapter.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/USerialAdapter.java index 37f2dd383df..dc714f859c6 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/USerialAdapter.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/adapter/USerialAdapter.java @@ -255,6 +255,7 @@ public USerialAdapter() { // -------- Information Methods // -------- + @Override protected void finalize() { try { freePort(); diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFile.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFile.java index 19b48462f11..82b8f7e7775 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFile.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFile.java @@ -1176,6 +1176,7 @@ public int getLocalPage(int page) { * @exception IOException if an I/O error occurs. * @see java.io.FileInputStream#close() */ + @Override protected void finalize() throws IOException { if (fd != null) fd.close(); diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileDescriptor.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileDescriptor.java index 6281fdc25de..5875e582a50 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileDescriptor.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileDescriptor.java @@ -311,7 +311,7 @@ protected void setupFD(OneWireContainer[] owd, String newPath) { this.rawPath = ""; // check the hash to see if already have a MemoryCache for this device - address = new Long(owd[0].getAddressAsLong()); + address = Long.valueOf(owd[0].getAddressAsLong()); cache = (MemoryCache) memoryCacheHash.get(address); if (cache == null) { diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileInputStream.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileInputStream.java index b7ff339cfd3..c6c9a83bb74 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileInputStream.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileInputStream.java @@ -359,6 +359,7 @@ public final OWFileDescriptor getFD() throws IOException { * @exception IOException if an I/O error occurs. * @see com.dalsemi.onewire.application.file.OWFileInputStream#close() */ + @Override public void finalize() throws IOException { if (fd != null) { fd.close(); diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileOutputStream.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileOutputStream.java index 61385a67e50..243400c4179 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileOutputStream.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/file/OWFileOutputStream.java @@ -421,6 +421,7 @@ public OWFileDescriptor getFD() throws IOException { * @exception IOException if an I/O error occurs. * @see com.dalsemi.onewire.application.file.OWFileInputStream#close() */ + @Override public void finalize() throws IOException { if (fd != null) fd.close(); diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/AbstractDeviceMonitor.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/AbstractDeviceMonitor.java index 2e75cc1cc84..792fb78f341 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/AbstractDeviceMonitor.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/AbstractDeviceMonitor.java @@ -481,7 +481,7 @@ public OWPath getDevicePath(String address) { * @return The OWPath representing the network path to the device. */ public OWPath getDevicePath(long address) { - return getDevicePath(new Long(address)); + return getDevicePath(Long.valueOf(address)); } /** @@ -536,7 +536,7 @@ public static OneWireContainer getDeviceContainer(DSPortAdapter adapter, String * @return The specific OneWireContainer object of the device */ public static OneWireContainer getDeviceContainer(DSPortAdapter adapter, long address) { - return getDeviceContainer(adapter, new Long(address)); + return getDeviceContainer(adapter, Long.valueOf(address)); } /** @@ -584,7 +584,7 @@ public static void putDeviceContainer(String address, OneWireContainer owc) { * @param owc The specific OneWireContainer object of the device */ public static void putDeviceContainer(long address, OneWireContainer owc) { - putDeviceContainer(new Long(address), owc); + putDeviceContainer(Long.valueOf(address), owc); } /** diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/ChainMonitor.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/ChainMonitor.java index 8a8fe95e3d7..becbc9b2f88 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/ChainMonitor.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/ChainMonitor.java @@ -258,11 +258,11 @@ public void search(Vector arrivals, Vector departures) throws OneWir if (chainOn()) { // loop on sending chain mode "Conditional Read ROM" until method returns false while (chainConditionalReadRom(chainDeviceAddress)) { - Long longAddress = new Long(Address.toLong(chainDeviceAddress)); + Long longAddress = Long.valueOf(Address.toLong(chainDeviceAddress)); if (!deviceAddressHash.containsKey(longAddress) && arrivals != null) arrivals.addElement(longAddress); - deviceAddressHash.put(longAddress, new Integer(max_state_count)); + deviceAddressHash.put(longAddress, Integer.valueOf(max_state_count)); // send chain mode "DONE" sequence if (!chainDone()) throw new OneWireIOException( @@ -293,7 +293,7 @@ public void search(Vector arrivals, Vector departures) throws OneWir } } else { // it stays - deviceAddressHash.put(longAddress, new Integer(cnt - 1)); + deviceAddressHash.put(longAddress, Integer.valueOf(cnt - 1)); } } diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/DeviceMonitor.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/DeviceMonitor.java index 7668e2c5844..9d22c03a683 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/DeviceMonitor.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/DeviceMonitor.java @@ -127,7 +127,7 @@ public void search(Vector arrivals, Vector departures) throws OneWir // loop while devices found while (search_result) { // get the 1-Wire address - Long longAddress = new Long(adapter.getAddressAsLong()); + Long longAddress = Long.valueOf(adapter.getAddressAsLong()); // if requested to do an alarm search, then check device for an alarm condition // and save in list if (doAlarmSearch) { @@ -135,13 +135,13 @@ public void search(Vector arrivals, Vector departures) throws OneWir if (!deviceAddressHash.containsKey(longAddress) && arrivals != null) arrivals.addElement(longAddress); - deviceAddressHash.put(longAddress, new Integer(max_state_count)); + deviceAddressHash.put(longAddress, Integer.valueOf(max_state_count)); } } else { if (!deviceAddressHash.containsKey(longAddress) && arrivals != null) arrivals.addElement(longAddress); - deviceAddressHash.put(longAddress, new Integer(max_state_count)); + deviceAddressHash.put(longAddress, Integer.valueOf(max_state_count)); } // search for the next device @@ -167,7 +167,7 @@ public void search(Vector arrivals, Vector departures) throws OneWir } } else { // it stays - deviceAddressHash.put(longAddress, new Integer(cnt - 1)); + deviceAddressHash.put(longAddress, Integer.valueOf(cnt - 1)); } } diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/NetworkDeviceMonitor.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/NetworkDeviceMonitor.java index d342dfc253b..59bb937c7b9 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/NetworkDeviceMonitor.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/monitor/NetworkDeviceMonitor.java @@ -195,7 +195,7 @@ public void search(Vector arrivals, Vector departures) throws OneWir // loop while devices found while (search_result) { // get the 1-Wire address - Long longAddress = new Long(adapter.getAddressAsLong()); + Long longAddress = Long.valueOf(adapter.getAddressAsLong()); // check if the device already exists in our hashtable if (!deviceAddressHash.containsKey(longAddress)) { OneWireContainer owc = getDeviceContainer(adapter, longAddress); @@ -230,7 +230,7 @@ else if (!path.equals((OWPath) devicePathHash.get(longAddress))) { } // update count - deviceAddressHash.put(longAddress, new Integer(max_state_count)); + deviceAddressHash.put(longAddress, Integer.valueOf(max_state_count)); // find the next device on this branch path.open(); @@ -254,7 +254,7 @@ else if (!path.equals((OWPath) devicePathHash.get(longAddress))) { departures.addElement(longAddress); } else { // device entry isn't stale, it stays - deviceAddressHash.put(longAddress, new Integer(cnt - 1)); + deviceAddressHash.put(longAddress, Integer.valueOf(cnt - 1)); } } diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/Switch.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/Switch.java index b8d48a37d60..e63a1ee8a2e 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/Switch.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/Switch.java @@ -118,7 +118,7 @@ public void initActuator() throws OneWireException { int initValue; int channelValue; int switchStateIntValue = 0; - Integer init = new Integer(getInit()); + Integer init = Integer.parseInt(getInit()); initValue = init.intValue(); channelValue = getChannel(); diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/TaggedDevice.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/TaggedDevice.java index 85111b655a2..4dcf5ed45a0 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/TaggedDevice.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/application/tag/TaggedDevice.java @@ -89,7 +89,7 @@ public void setLabel(String Label) { * @param Channel */ public void setChannelFromString(String Channel) { - this.channel = new Integer(Channel); + this.channel = Integer.valueOf(Channel); } /** @@ -98,7 +98,7 @@ public void setChannelFromString(String Channel) { * @param Channel */ public void setChannel(int channel) { - this.channel = new Integer(channel); + this.channel = Integer.valueOf(channel); } /** diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAD.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAD.java index 522bd2d1af4..9a558b12739 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAD.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAD.java @@ -313,22 +313,6 @@ public boolean hasPageAutoCRC() { return true; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return false; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAppReg.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAppReg.java index d1cee54cd53..5c670eb1312 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAppReg.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankAppReg.java @@ -282,8 +282,8 @@ public int getPageLength() { /** * Query to get Maximum data page length in bytes for a packet read or written * in the current memory bank. See the 'ReadPagePacket()' and - * 'WritePagePacket()' methods. This method is only useful if the current - * memory bank is general purpose memory. + * 'WritePagePacket()' methods. This method is only useful if the current memory + * bank is general purpose memory. * * @return max packet page length in bytes in current memory bank */ @@ -302,22 +302,6 @@ public boolean hasPageAutoCRC() { return false; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return true; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection @@ -834,24 +818,6 @@ public void redirectPage(int page, int newPage) throws OneWireIOException, OneWi throw new OneWireException("Page redirection not supported by this memory bank"); } - /** - * Query to see if the specified page is redirected. Not supported by all - * devices. See the method 'canRedirectPage()'. - * - * @param page number of page check for redirection - * - * @return return the new page number or 0 if not redirected - * - * @throws OneWireIOException - * @throws OneWireException - * - * @deprecated As of 1-Wire API 0.01, replaced by - * {@link #getRedirectedPage(int)} - */ - public int isPageRedirected(int page) throws OneWireIOException, OneWireException { - return 0; - } - /** * Gets the page redirection of the specified page. Not supported by all * devices. @@ -878,8 +844,8 @@ public int getRedirectedPage(int page) throws OneWireIOException, OneWireExcepti } /** - * Lock the redirection option for the specified page in the current memory bank. - * Not supported by all devices. See the method 'canLockRedirectPage()'. + * Lock the redirection option for the specified page in the current memory + * bank. Not supported by all devices. See the method 'canLockRedirectPage()'. * * @param page number of page to redirect * diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEE.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEE.java index 0bd43a608f6..fdae0004099 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEE.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEE.java @@ -277,22 +277,6 @@ public boolean hasPageAutoCRC() { return false; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return false; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROM.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROM.java index 943d747e2df..0339f9de9a4 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROM.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROM.java @@ -403,22 +403,6 @@ public boolean hasPageAutoCRC() { return pageAutoCRC; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return false; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection @@ -960,24 +944,6 @@ public void redirectPage(int page, int newPage) throws OneWireIOException, OneWi throw new OneWireException("This memory bank does not support redirection."); } - /** - * Query to see if the specified page is redirected. Not supported by all - * devices. See the method 'canRedirectPage()'. - * - * @param page number of page check for redirection - * - * @return return the new page number or 0 if not redirected - * - * @throws OneWireIOException - * @throws OneWireException - * - * @deprecated As of 1-Wire API 0.01, replaced by - * {@link #getRedirectedPage(int)} - */ - public int isPageRedirected(int page) throws OneWireIOException, OneWireException { - throw new OneWireException("This memory bank does not support redirection."); - } - /** * Gets the page redirection of the specified page. Not supported by all * devices. diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROMblock.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROMblock.java index e94025ba6e4..d8b3cff3cbb 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROMblock.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEEPROMblock.java @@ -314,22 +314,6 @@ public boolean hasPageAutoCRC() { return false; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return false; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection @@ -943,24 +927,6 @@ public void redirectPage(int page, int newPage) throws OneWireIOException, OneWi throw new OneWireException("This memory bank does not support redirection."); } - /** - * Query to see if the specified page is redirected. Not supported by all - * devices. See the method 'canRedirectPage()'. - * - * @param page number of page check for redirection - * - * @return return the new page number or 0 if not redirected - * - * @throws OneWireIOException - * @throws OneWireException - * - * @deprecated As of 1-Wire API 0.01, replaced by - * {@link #getRedirectedPage(int)} - */ - public int isPageRedirected(int page) throws OneWireIOException, OneWireException { - throw new OneWireException("This memory bank does not support redirection."); - } - /** * Gets the page redirection of the specified page. Not supported by all * devices. diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEPROM.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEPROM.java index 858a196552f..29e8885d5b7 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEPROM.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankEPROM.java @@ -477,22 +477,6 @@ public boolean hasPageAutoCRC() { return pageAutoCRC; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return extraInfo; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection @@ -1086,35 +1070,6 @@ public void redirectPage(int page, int newPage) throws OneWireIOException, OneWi mbRedirect.write(page + redirectOffset, wr_byte, 0, 1); } - /** - * Query to see if the specified page is redirected. Not supported by all - * devices. See the method 'canRedirectPage()'. - * - * @param page number of page check for redirection - * - * @return return the new page number or 0 if not redirected - * - * @throws OneWireIOException - * @throws OneWireException - * - * @deprecated As of 1-Wire API 0.01, replaced by - * {@link #getRedirectedPage(int)} - */ - public int isPageRedirected(int page) throws OneWireIOException, OneWireException { - - // read page that redirect byte is on - int pg_len = mbRedirect.getPageLength(); - int read_pg = (page + redirectOffset) / pg_len; - - // read page with byte - byte[] read_buf = new byte[pg_len]; - - mbRedirect.readPageCRC(read_pg, false, read_buf, 0); - - // return page - return ~read_buf[(page + redirectOffset) % pg_len] & 0x000000FF; - } - /** * Gets the page redirection of the specified page. Not supported by all * devices. diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankNV.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankNV.java index d9283d37fb6..c3ce9a2bcf5 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankNV.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankNV.java @@ -371,21 +371,6 @@ public boolean hasPageAutoCRC() { return pageAutoCRC; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return extraInfo; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankSHAEE.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankSHAEE.java index f7707190e09..327c05af97a 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankSHAEE.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankSHAEE.java @@ -332,22 +332,6 @@ public boolean hasPageAutoCRC() { return pageCRC; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return extraInfo; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankScratch.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankScratch.java index 7cb0f62d9ef..c115b5278c5 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankScratch.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/MemoryBankScratch.java @@ -372,22 +372,6 @@ public boolean hasPageAutoCRC() { return pageAutoCRC; } - /** - * Query to see if current memory bank pages when read deliver extra information - * outside of the normal data space. Examples of this may be a redirection byte, - * counter, tamper protection bytes, or SHA-1 result. If this method returns - * true then the methods 'ReadPagePacket()' and 'readPageCRC()' with 'extraInfo' - * parameter can be used. - * - * @return 'true' if reading the current memory bank pages provides extra - * information. - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo() { - return extraInfo; - } - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OTPMemoryBank.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OTPMemoryBank.java index 5a1e165103c..2e625ec3f25 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OTPMemoryBank.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OTPMemoryBank.java @@ -237,31 +237,6 @@ public interface OTPMemoryBank extends PagedMemoryBank { */ public void redirectPage(int page, int newPage) throws OneWireIOException, OneWireException; - /** - * Checks to see if the specified page is redirected. Not supported by all - * devices. - * - * @param page page to check for redirection - * - * @return the new page number or 0 if not redirected - * - * @throws OneWireIOException on a 1-Wire communication error such as no device - * present or a CRC read from the device is - * incorrect. This could be caused by a physical - * interruption in the 1-Wire Network due to shorts - * or a newly arriving 1-Wire device issuing a - * 'presence pulse'. - * @throws OneWireException on a communication or setup error with the 1-Wire - * adapter. - * - * @see #canRedirectPage() canRedirectPage - * @see #redirectPage(int,int) redirectPage - * - * @deprecated As of 1-Wire API 0.01, replaced by - * {@link #getRedirectedPage(int)} - */ - public int isPageRedirected(int page) throws OneWireIOException, OneWireException; - /** * Gets the page redirection of the specified page. Not supported by all * devices. diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer.java index 147937f10ca..8d1a1d3bfc8 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer.java @@ -538,7 +538,7 @@ public int hashCode() { if (this.address == null) return 0; else - return (new Long(Address.toLong(this.address))).hashCode(); + return (Long.valueOf(Address.toLong(this.address))).hashCode(); } /** diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer10.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer10.java index 9dadc8c4670..241c8e869e4 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer10.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer10.java @@ -634,38 +634,6 @@ public void writeDevice(byte[] state) throws OneWireIOException, OneWireExceptio copyScratchpad(); } - /** - * Converts a temperature reading from Celsius to Fahrenheit. - * - * @param celsiusTemperature temperature value in Celsius - * - * @return the Fahrenheit conversion of the supplied temperature - * - * @deprecated Replace with call to - * com.dalsemi.onewire.utils.Convert.toFahrenheit() - * - * @see com.dalsemi.onewire.utils.Convert#toFahrenheit(double) - */ - static public double convertToFahrenheit(double celsiusTemperature) { - return Convert.toFahrenheit(celsiusTemperature); - } - - /** - * Converts a temperature reading from Fahrenheit to Celsius. - * - * @param fahrenheitTemperature temperature value in Fahrenheit - * - * @return the Celsius conversion of the supplied temperature - * - * @deprecated Replace with call to - * com.dalsemi.onewire.utils.Convert.toCelsius() - * - * @see com.dalsemi.onewire.utils.Convert#toCelsius(double) - */ - static public double convertToCelsius(double fahrenheitTemperature) { - return Convert.toCelsius(fahrenheitTemperature); - } - // -------- // -------- Private Methods // -------- diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer28.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer28.java index d1452cf2cca..343d4077a96 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer28.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer28.java @@ -33,7 +33,6 @@ import com.dalsemi.onewire.adapter.DSPortAdapter; import com.dalsemi.onewire.adapter.OneWireIOException; import com.dalsemi.onewire.utils.CRC8; -import com.dalsemi.onewire.utils.Convert; //---------------------------------------------------------------------------- @@ -907,22 +906,4 @@ public boolean isExternalPowerSupplied() throws OneWireIOException, OneWireExcep return result; } - - // ------------------------------------------------------------------------- - - /** - * Converts a temperature reading from Celsius to Fahrenheit. - * - * @param celsiusTemperature temperature value in Celsius - * - * @return the Fahrenheit conversion of the supplied temperature - * - * @deprecated Replace with call to - * com.dalsemi.onewire.utils.Convert.toFahrenheit() - * - * @see com.dalsemi.onewire.utils.Convert#toFahrenheit(double) - */ - public float convertToFahrenheit(float celsiusTemperature) { - return (float) Convert.toFahrenheit(celsiusTemperature); - } } diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer42.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer42.java index bcab6a30a52..1c655f065bd 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer42.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/OneWireContainer42.java @@ -36,7 +36,6 @@ import com.dalsemi.onewire.adapter.DSPortAdapter; import com.dalsemi.onewire.adapter.OneWireIOException; import com.dalsemi.onewire.utils.CRC8; -import com.dalsemi.onewire.utils.Convert; //---------------------------------------------------------------------------- @@ -307,7 +306,8 @@ public String getDescription() { + "'sequence detect' and 2 PIO channels. It measures " + "temperature from -40 C to +85 C in 0.75 seconds (max). " + "Its accuracy is +/-0.5 C between -10 C and 85 C and " - + "+/-2 C accuracy from -40 C to +85 C. Thermometer " + "resolution is programmable at 9, 10, 11, and 12 " + + "+/-2 C accuracy from -40 C to +85 C. Thermometer " + + "resolution is programmable at 9, 10, 11, and 12 " + "bits. PIO channels can be used as generic channels " + "or used in 'Chain' mode to detect the physical " + "sequence of devices in a 1-Wire network."; } @@ -1034,22 +1034,6 @@ public boolean isExternalPowerSupplied() throws OneWireIOException, OneWireExcep return result; } - /** - * Converts a temperature reading from Celsius to Fahrenheit. - * - * @param celsiusTemperature temperature value in Celsius - * - * @return the Fahrenheit conversion of the supplied temperature - * - * @deprecated Replace with call to - * com.dalsemi.onewire.utils.Convert.toFahrenheit() - * - * @see com.dalsemi.onewire.utils.Convert#toFahrenheit(double) - */ - public float convertToFahrenheit(float celsiusTemperature) { - return (float) Convert.toFahrenheit(celsiusTemperature); - } - // -------- // -------- Switch Feature methods // -------- diff --git a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/PagedMemoryBank.java b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/PagedMemoryBank.java index 50d881b1991..9600d7e8dfd 100644 --- a/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/PagedMemoryBank.java +++ b/io.openems.edge.bridge.onewire/src/com/dalsemi/onewire/container/PagedMemoryBank.java @@ -208,26 +208,6 @@ public interface PagedMemoryBank extends MemoryBank { */ public boolean hasPageAutoCRC(); - /** - * Checks to see if this memory bank's pages deliver extra information outside - * of the normal data space, when read. Examples of this may be a redirection - * byte, counter, tamper protection bytes, or SHA-1 result. If this method - * returns true then the methods with an 'extraInfo' parameter can be used: - * {@link #readPage(int,boolean,byte[],int,byte[]) readPage}, - * {@link #readPageCRC(int,boolean,byte[],int,byte[]) readPageCRC}, and - * {@link #readPagePacket(int,boolean,byte[],int,byte[]) readPagePacket}. - * - * @return true if reading the this memory bank's pages provides - * extra information - * - * @see #readPage(int,boolean,byte[],int,byte[]) readPage(extra) - * @see #readPageCRC(int,boolean,byte[],int,byte[]) readPageCRC(extra) - * @see #readPagePacket(int,boolean,byte[],int,byte[]) readPagePacket(extra) - * - * @deprecated As of 1-Wire API 0.01, replaced by {@link #hasExtraInfo()} - */ - public boolean haveExtraInfo(); - /** * Checks to see if this memory bank's pages deliver extra information outside * of the normal data space, when read. Examples of this may be a redirection diff --git a/io.openems.edge.common/.classpath b/io.openems.edge.common/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.common/.classpath +++ b/io.openems.edge.common/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.common/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.common/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index d018959cefc..00000000000 --- a/io.openems.edge.common/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/common/channel/internal/package-info.java=UTF-8 -encoding//src/io/openems/edge/common/component/package-info.java=UTF-8 -encoding//src/io/openems/edge/common/cycle/package-info.java=UTF-8 -encoding//src/io/openems/edge/common/event/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.common/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.common/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.common/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.api.backend/.classpath b/io.openems.edge.controller.api.backend/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.backend/.classpath +++ b/io.openems.edge.controller.api.backend/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.backend/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.api.backend/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 4a49b24c9bd..00000000000 --- a/io.openems.edge.controller.api.backend/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/api/backend/BackendApi.java=UTF-8 -encoding//src/io/openems/edge/controller/api/backend/BackendApiImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.api.backend/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.api.backend/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.api.backend/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.api.common/.classpath b/io.openems.edge.controller.api.common/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.common/.classpath +++ b/io.openems.edge.controller.api.common/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.modbus/.classpath b/io.openems.edge.controller.api.modbus/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.modbus/.classpath +++ b/io.openems.edge.controller.api.modbus/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.mqtt/.classpath b/io.openems.edge.controller.api.mqtt/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.mqtt/.classpath +++ b/io.openems.edge.controller.api.mqtt/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.rest/.classpath b/io.openems.edge.controller.api.rest/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.rest/.classpath +++ b/io.openems.edge.controller.api.rest/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.websocket/.classpath b/io.openems.edge.controller.api.websocket/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api.websocket/.classpath +++ b/io.openems.edge.controller.api.websocket/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api.websocket/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.api.websocket/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 2ca4cabd79c..00000000000 --- a/io.openems.edge.controller.api.websocket/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/api/websocket/WebsocketApi.java=UTF-8 -encoding//test/io/openems/edge/controller/api/websocket/ProviderImplTest.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.api.websocket/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.api.websocket/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.api.websocket/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.api/.classpath b/io.openems.edge.controller.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.api/.classpath +++ b/io.openems.edge.controller.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1eb61734292..00000000000 --- a/io.openems.edge.controller.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/api/Controller.java=UTF-8 -encoding//src/io/openems/edge/controller/api/package-info.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.asymmetric.balancingcosphi/.classpath b/io.openems.edge.controller.asymmetric.balancingcosphi/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.asymmetric.balancingcosphi/.classpath +++ b/io.openems.edge.controller.asymmetric.balancingcosphi/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.asymmetric.fixactivepower/.classpath b/io.openems.edge.controller.asymmetric.fixactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.asymmetric.fixactivepower/.classpath +++ b/io.openems.edge.controller.asymmetric.fixactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.asymmetric.fixreactivepower/.classpath b/io.openems.edge.controller.asymmetric.fixreactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.asymmetric.fixreactivepower/.classpath +++ b/io.openems.edge.controller.asymmetric.fixreactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.asymmetric.peakshaving/.classpath b/io.openems.edge.controller.asymmetric.peakshaving/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.asymmetric.peakshaving/.classpath +++ b/io.openems.edge.controller.asymmetric.peakshaving/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.asymmetric.phaserectification/.classpath b/io.openems.edge.controller.asymmetric.phaserectification/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.asymmetric.phaserectification/.classpath +++ b/io.openems.edge.controller.asymmetric.phaserectification/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.channelthreshold/.classpath b/io.openems.edge.controller.channelthreshold/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.channelthreshold/.classpath +++ b/io.openems.edge.controller.channelthreshold/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 217ac0118a1..00000000000 --- a/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/channelthreshold/ChannelThreshold.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.channelthreshold/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.chp.soc/.classpath b/io.openems.edge.controller.chp.soc/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.chp.soc/.classpath +++ b/io.openems.edge.controller.chp.soc/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.debug.detailedlog/.classpath b/io.openems.edge.controller.debug.detailedlog/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.debug.detailedlog/.classpath +++ b/io.openems.edge.controller.debug.detailedlog/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 62259928805..00000000000 --- a/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/debug/detailedlog/DebugDetailedLog.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.debug.detailedlog/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.debug.log/.classpath b/io.openems.edge.controller.debug.log/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.debug.log/.classpath +++ b/io.openems.edge.controller.debug.log/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.debug.log/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.debug.log/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 9e82dd2bd2c..00000000000 --- a/io.openems.edge.controller.debug.log/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/debuglog/DebugLog.java=UTF-8 -encoding//src/io/openems/edge/controller/debuglog/DebugLogImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.debug.log/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.debug.log/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.debug.log/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.ess.acisland/.classpath b/io.openems.edge.controller.ess.acisland/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.acisland/.classpath +++ b/io.openems.edge.controller.ess.acisland/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.activepowervoltagecharacteristic/.classpath b/io.openems.edge.controller.ess.activepowervoltagecharacteristic/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.activepowervoltagecharacteristic/.classpath +++ b/io.openems.edge.controller.ess.activepowervoltagecharacteristic/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.cycle/.classpath b/io.openems.edge.controller.ess.cycle/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.cycle/.classpath +++ b/io.openems.edge.controller.ess.cycle/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.cycle/src/io/openems/edge/controller/ess/cycle/statemachine/FinalSocHandler.java b/io.openems.edge.controller.ess.cycle/src/io/openems/edge/controller/ess/cycle/statemachine/FinalSocHandler.java index 153258c0b74..e1b2a5be5f1 100644 --- a/io.openems.edge.controller.ess.cycle/src/io/openems/edge/controller/ess/cycle/statemachine/FinalSocHandler.java +++ b/io.openems.edge.controller.ess.cycle/src/io/openems/edge/controller/ess/cycle/statemachine/FinalSocHandler.java @@ -27,7 +27,7 @@ public State runAndGetNextState(Context context) throws IllegalArgumentException } else { int power = Math.max(context.maxChargePower, context.config.power() * -1); context.logInfo(this.log, "CHARGE with [" + power + " W]"); - context.ess.setActivePowerGreaterOrEquals(power); + context.ess.setActivePowerLessOrEquals(power); } return State.FINAL_SOC; } diff --git a/io.openems.edge.controller.ess.delaycharge/.classpath b/io.openems.edge.controller.ess.delaycharge/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.delaycharge/.classpath +++ b/io.openems.edge.controller.ess.delaycharge/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.delayedselltogrid/.classpath b/io.openems.edge.controller.ess.delayedselltogrid/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.delayedselltogrid/.classpath +++ b/io.openems.edge.controller.ess.delayedselltogrid/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.emergencycapacityreserve/.classpath b/io.openems.edge.controller.ess.emergencycapacityreserve/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.emergencycapacityreserve/.classpath +++ b/io.openems.edge.controller.ess.emergencycapacityreserve/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.fixactivepower/.classpath b/io.openems.edge.controller.ess.fixactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.fixactivepower/.classpath +++ b/io.openems.edge.controller.ess.fixactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index e5895520639..00000000000 --- a/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/ess/fixactivepower/EssFixActivePower.java=UTF-8 -encoding//src/io/openems/edge/controller/ess/fixactivepower/EssFixActivePowerImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.ess.fixactivepower/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.ess.gridoptimizedcharge/.classpath b/io.openems.edge.controller.ess.gridoptimizedcharge/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.gridoptimizedcharge/.classpath +++ b/io.openems.edge.controller.ess.gridoptimizedcharge/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.hybrid.surplusfeedtogrid/.classpath b/io.openems.edge.controller.ess.hybrid.surplusfeedtogrid/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.hybrid.surplusfeedtogrid/.classpath +++ b/io.openems.edge.controller.ess.hybrid.surplusfeedtogrid/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.limittotaldischarge/.classpath b/io.openems.edge.controller.ess.limittotaldischarge/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.limittotaldischarge/.classpath +++ b/io.openems.edge.controller.ess.limittotaldischarge/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.linearpowerband/.classpath b/io.openems.edge.controller.ess.linearpowerband/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.linearpowerband/.classpath +++ b/io.openems.edge.controller.ess.linearpowerband/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.mindischargeperiod/.classpath b/io.openems.edge.controller.ess.mindischargeperiod/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.mindischargeperiod/.classpath +++ b/io.openems.edge.controller.ess.mindischargeperiod/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.reactivepowervoltagecharacteristic/.classpath b/io.openems.edge.controller.ess.reactivepowervoltagecharacteristic/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.reactivepowervoltagecharacteristic/.classpath +++ b/io.openems.edge.controller.ess.reactivepowervoltagecharacteristic/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.selltogridlimit/.classpath b/io.openems.edge.controller.ess.selltogridlimit/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.selltogridlimit/.classpath +++ b/io.openems.edge.controller.ess.selltogridlimit/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.standby/.classpath b/io.openems.edge.controller.ess.standby/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.standby/.classpath +++ b/io.openems.edge.controller.ess.standby/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.timeofusetariff.discharge/.classpath b/io.openems.edge.controller.ess.timeofusetariff.discharge/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.ess.timeofusetariff.discharge/.classpath +++ b/io.openems.edge.controller.ess.timeofusetariff.discharge/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.ess.timeofusetariff.discharge/bnd.bnd b/io.openems.edge.controller.ess.timeofusetariff.discharge/bnd.bnd index 59ec0393dbd..00ade3638af 100644 --- a/io.openems.edge.controller.ess.timeofusetariff.discharge/bnd.bnd +++ b/io.openems.edge.controller.ess.timeofusetariff.discharge/bnd.bnd @@ -14,7 +14,6 @@ Bundle-Version: 1.0.0.${tstamp} io.openems.edge.predictor.api,\ io.openems.edge.timedata.api,\ io.openems.edge.timeofusetariff.api,\ - io.openems.wrapper.okhttp,\ -testpath: \ ${testpath} \ No newline at end of file diff --git a/io.openems.edge.controller.evcs.fixactivepower/.classpath b/io.openems.edge.controller.evcs.fixactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.evcs.fixactivepower/.classpath +++ b/io.openems.edge.controller.evcs.fixactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.evcs/.classpath b/io.openems.edge.controller.evcs/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.evcs/.classpath +++ b/io.openems.edge.controller.evcs/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.generic.jsonlogic/.classpath b/io.openems.edge.controller.generic.jsonlogic/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.generic.jsonlogic/.classpath +++ b/io.openems.edge.controller.generic.jsonlogic/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.highloadtimeslot/.classpath b/io.openems.edge.controller.highloadtimeslot/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.highloadtimeslot/.classpath +++ b/io.openems.edge.controller.highloadtimeslot/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.io.alarm/.classpath b/io.openems.edge.controller.io.alarm/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.io.alarm/.classpath +++ b/io.openems.edge.controller.io.alarm/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.io.channelsinglethreshold/.classpath b/io.openems.edge.controller.io.channelsinglethreshold/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.io.channelsinglethreshold/.classpath +++ b/io.openems.edge.controller.io.channelsinglethreshold/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.io.fixdigitaloutput/.classpath b/io.openems.edge.controller.io.fixdigitaloutput/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.io.fixdigitaloutput/.classpath +++ b/io.openems.edge.controller.io.fixdigitaloutput/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.io.heatingelement/.classpath b/io.openems.edge.controller.io.heatingelement/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.io.heatingelement/.classpath +++ b/io.openems.edge.controller.io.heatingelement/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.io.heatpump.sgready/.classpath b/io.openems.edge.controller.io.heatpump.sgready/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.io.heatpump.sgready/.classpath +++ b/io.openems.edge.controller.io.heatpump.sgready/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.pvinverter.fixpowerlimit/.classpath b/io.openems.edge.controller.pvinverter.fixpowerlimit/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.pvinverter.fixpowerlimit/.classpath +++ b/io.openems.edge.controller.pvinverter.fixpowerlimit/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.pvinverter.selltogridlimit/.classpath b/io.openems.edge.controller.pvinverter.selltogridlimit/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.pvinverter.selltogridlimit/.classpath +++ b/io.openems.edge.controller.pvinverter.selltogridlimit/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.balancing/.classpath b/io.openems.edge.controller.symmetric.balancing/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.balancing/.classpath +++ b/io.openems.edge.controller.symmetric.balancing/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index a153d60c609..00000000000 --- a/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/controller/symmetric/balancing/Balancing.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.controller.symmetric.balancing/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.controller.symmetric.balancingschedule/.classpath b/io.openems.edge.controller.symmetric.balancingschedule/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.balancingschedule/.classpath +++ b/io.openems.edge.controller.symmetric.balancingschedule/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.fixreactivepower/.classpath b/io.openems.edge.controller.symmetric.fixreactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.fixreactivepower/.classpath +++ b/io.openems.edge.controller.symmetric.fixreactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.limitactivepower/.classpath b/io.openems.edge.controller.symmetric.limitactivepower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.limitactivepower/.classpath +++ b/io.openems.edge.controller.symmetric.limitactivepower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.peakshaving/.classpath b/io.openems.edge.controller.symmetric.peakshaving/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.peakshaving/.classpath +++ b/io.openems.edge.controller.symmetric.peakshaving/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.randompower/.classpath b/io.openems.edge.controller.symmetric.randompower/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.randompower/.classpath +++ b/io.openems.edge.controller.symmetric.randompower/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.controller.symmetric.timeslotpeakshaving/.classpath b/io.openems.edge.controller.symmetric.timeslotpeakshaving/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.controller.symmetric.timeslotpeakshaving/.classpath +++ b/io.openems.edge.controller.symmetric.timeslotpeakshaving/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.core/.classpath b/io.openems.edge.core/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.core/.classpath +++ b/io.openems.edge.core/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.adstec.storaxe/.classpath b/io.openems.edge.ess.adstec.storaxe/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.adstec.storaxe/.classpath +++ b/io.openems.edge.ess.adstec.storaxe/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.api/.classpath b/io.openems.edge.ess.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.api/.classpath +++ b/io.openems.edge.ess.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.ess.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 7ad7366ac56..00000000000 --- a/io.openems.edge.ess.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/ess/api/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.ess.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.ess.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.ess.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.ess.byd.container/.classpath b/io.openems.edge.ess.byd.container/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.byd.container/.classpath +++ b/io.openems.edge.ess.byd.container/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.cluster/.classpath b/io.openems.edge.ess.cluster/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.cluster/.classpath +++ b/io.openems.edge.ess.cluster/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.cluster/src/io/openems/edge/ess/cluster/ChannelManager.java b/io.openems.edge.ess.cluster/src/io/openems/edge/ess/cluster/ChannelManager.java index 3a5139195ac..4636330784b 100644 --- a/io.openems.edge.ess.cluster/src/io/openems/edge/ess/cluster/ChannelManager.java +++ b/io.openems.edge.ess.cluster/src/io/openems/edge/ess/cluster/ChannelManager.java @@ -2,10 +2,11 @@ import java.util.List; import java.util.function.BiConsumer; +import java.util.function.BiFunction; +import java.util.function.Function; import io.openems.edge.common.channel.AbstractChannelListenerManager; -import io.openems.edge.common.channel.IntegerReadChannel; -import io.openems.edge.common.channel.LongReadChannel; +import io.openems.edge.common.channel.Channel; import io.openems.edge.common.channel.value.Value; import io.openems.edge.common.sum.GridMode; import io.openems.edge.common.type.TypeUtils; @@ -27,26 +28,39 @@ public ChannelManager(EssClusterImpl parent) { * @param esss the List of {@link SymmetricEss} */ protected void activate(List esss) { - this.calculateGridMode(esss); - + // SymmetricEss this.calculateSoc(esss); + this.calculate(INTEGER_SUM, esss, SymmetricEss.ChannelId.CAPACITY); + this.calculateGridMode(esss); + this.calculate(INTEGER_SUM, esss, SymmetricEss.ChannelId.ACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, SymmetricEss.ChannelId.REACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, SymmetricEss.ChannelId.MAX_APPARENT_POWER); - this.calculateSumInteger(esss, SymmetricEss.ChannelId.ACTIVE_POWER); - this.calculateSumInteger(esss, SymmetricEss.ChannelId.REACTIVE_POWER); - this.calculateSumInteger(esss, SymmetricEss.ChannelId.MAX_APPARENT_POWER); + this.calculate(LONG_SUM, esss, SymmetricEss.ChannelId.ACTIVE_CHARGE_ENERGY); + this.calculate(LONG_SUM, esss, SymmetricEss.ChannelId.ACTIVE_DISCHARGE_ENERGY); - this.calculateSumLong(esss, SymmetricEss.ChannelId.ACTIVE_CHARGE_ENERGY); - this.calculateSumLong(esss, SymmetricEss.ChannelId.ACTIVE_DISCHARGE_ENERGY); + this.calculate(INTEGER_MIN, esss, SymmetricEss.ChannelId.MIN_CELL_VOLTAGE); + this.calculate(INTEGER_MAX, esss, SymmetricEss.ChannelId.MAX_CELL_VOLTAGE); + this.calculate(INTEGER_MIN, esss, SymmetricEss.ChannelId.MIN_CELL_TEMPERATURE); + this.calculate(INTEGER_MAX, esss, SymmetricEss.ChannelId.MAX_CELL_TEMPERATURE); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L1); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L2); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L3); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L1); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L2); - this.calculateSumInteger(esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L3); + // AsymmetricEss + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L1, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.ACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L2, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.ACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.ACTIVE_POWER_L3, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.ACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L1, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.REACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L2, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.REACTIVE_POWER); + this.calculate(INTEGER_SUM, esss, AsymmetricEss.ChannelId.REACTIVE_POWER_L3, // + DIVIDE_BY_THREE, SymmetricEss.ChannelId.REACTIVE_POWER); - this.calculateSumInteger(esss, ManagedSymmetricEss.ChannelId.ALLOWED_CHARGE_POWER); - this.calculateSumInteger(esss, ManagedSymmetricEss.ChannelId.ALLOWED_DISCHARGE_POWER); + // ManagedSymmetricEss + this.calculate(INTEGER_SUM, esss, ManagedSymmetricEss.ChannelId.ALLOWED_CHARGE_POWER); + this.calculate(INTEGER_SUM, esss, ManagedSymmetricEss.ChannelId.ALLOWED_DISCHARGE_POWER); } /** @@ -117,21 +131,42 @@ private void calculateSoc(List esss) { } } + private final static Function DIVIDE_BY_THREE = (value) -> { + return TypeUtils.divide(value, 3); + }; + private final static BiFunction INTEGER_MIN = (result, value) -> { + return TypeUtils.min(result, value); + }; + + private final static BiFunction INTEGER_MAX = (result, value) -> { + return TypeUtils.max(result, value); + }; + + private final static BiFunction INTEGER_SUM = (result, value) -> { + return TypeUtils.sum(result, value); + }; + + private final static BiFunction LONG_SUM = (result, value) -> { + return TypeUtils.sum(result, value); + }; + /** - * Sum up Integer Channels of {@link SymmetricEss}. + * Aggregate Channels of {@link SymmetricEss}s. * - * @param esss the List of {@link SymmetricEss} - * @param channelId the SymmetricEss.ChannelId + * @param aggregator the aggregator function + * @param esss the List of {@link SymmetricEss} + * @param channelId the SymmetricEss.ChannelId */ - private void calculateSumInteger(List esss, SymmetricEss.ChannelId channelId) { - final BiConsumer, Value> callback = (oldValue, newValue) -> { - Integer result = null; + private void calculate(BiFunction aggregator, List esss, + SymmetricEss.ChannelId channelId) { + final BiConsumer, Value> callback = (oldValue, newValue) -> { + T result = null; for (SymmetricEss ess : esss) { - IntegerReadChannel channel = ess.channel(channelId); - result = TypeUtils.sum(result, channel.getNextValue().get()); + Channel channel = ess.channel(channelId); + result = aggregator.apply(result, channel.getNextValue().get()); } - IntegerReadChannel channel = this.parent.channel(channelId); + Channel channel = this.parent.channel(channelId); channel.setNextValue(result); }; @@ -141,84 +176,106 @@ private void calculateSumInteger(List esss, SymmetricEss.ChannelId } /** - * Sum up Integer Channels of {@link ManagedSymmetricEss}. + * Aggregate Channels of {@link ManagedSymmetricEss}s. * - * @param esss the List of {@link ManagedSymmetricEss} - * @param channelId the ManagedSymmetricEss.ChannelId + * @param aggregator the aggregator function + * @param esss the List of {@link SymmetricEss} + * @param channelId the SymmetricEss.ChannelId */ - private void calculateSumInteger(List esss, ManagedSymmetricEss.ChannelId channelId) { - final BiConsumer, Value> callback = (oldValue, newValue) -> { - Integer result = null; + private void calculate(BiFunction aggregator, List esss, + ManagedSymmetricEss.ChannelId channelId) { + final BiConsumer, Value> callback = (oldValue, newValue) -> { + T result = null; for (SymmetricEss ess : esss) { if (ess instanceof ManagedSymmetricEss) { - ManagedSymmetricEss e = (ManagedSymmetricEss) ess; - IntegerReadChannel channel = e.channel(channelId); - result = TypeUtils.sum(result, channel.getNextValue().get()); + Channel channel = ((ManagedSymmetricEss) ess).channel(channelId); + result = aggregator.apply(result, channel.getNextValue().get()); } } - IntegerReadChannel channel = this.parent.channel(channelId); + Channel channel = this.parent.channel(channelId); channel.setNextValue(result); }; for (SymmetricEss ess : esss) { if (ess instanceof ManagedSymmetricEss) { - ManagedSymmetricEss e = (ManagedSymmetricEss) ess; - this.addOnChangeListener(e, channelId, callback); + this.addOnChangeListener((ManagedSymmetricEss) ess, channelId, callback); } } } /** - * Sum up Integer Channels of {@link AsymmetricEss}. + * Aggregate Channels of {@link AsymmetricEss}s. * - * @param esss the List of {@link AsymmetricEss} - * @param channelId the AsymmetricEss.ChannelId + * @param aggregator the aggregator function + * @param esss the List of {@link SymmetricEss} + * @param asymmetricChannelId the AsymmetricEss.ChannelId + * @param asymmetricChannelId the fallback SymmetricEss.ChannelId; used for + * SymmetricEss and divided by 3 */ - private void calculateSumInteger(List esss, AsymmetricEss.ChannelId channelId) { - final BiConsumer, Value> callback = (oldValue, newValue) -> { - Integer result = null; + private void calculate(BiFunction aggregator, List esss, + AsymmetricEss.ChannelId asymmetricChannelId, Function divideFunction, + SymmetricEss.ChannelId symmetricChannelId) { + final BiConsumer, Value> callback = (oldValue, newValue) -> { + T result = null; for (SymmetricEss ess : esss) { if (ess instanceof AsymmetricEss) { - AsymmetricEss e = (AsymmetricEss) ess; - IntegerReadChannel channel = e.channel(channelId); - result = TypeUtils.sum(result, channel.getNextValue().get()); + Channel channel = ((AsymmetricEss) ess).channel(asymmetricChannelId); + result = aggregator.apply(result, channel.getNextValue().get()); + } else { + // SymmetricEss + Channel channel = ess.channel(symmetricChannelId); + result = aggregator.apply(result, divideFunction.apply(channel.getNextValue().get())); } } - IntegerReadChannel channel = this.parent.channel(channelId); + Channel channel = this.parent.channel(asymmetricChannelId); channel.setNextValue(result); }; for (SymmetricEss ess : esss) { if (ess instanceof AsymmetricEss) { - AsymmetricEss e = (AsymmetricEss) ess; - this.addOnChangeListener(e, channelId, callback); - } - } - } - - /** - * Sum up Long Channels of {@link SymmetricEss}. - * - * @param esss the List of {@link SymmetricEss} - * @param channelId the SymmetricEss.ChannelId - */ - private void calculateSumLong(List esss, SymmetricEss.ChannelId channelId) { - final BiConsumer, Value> callback = (oldValue, newValue) -> { - Long result = null; - for (SymmetricEss ess : esss) { - LongReadChannel channel = ess.channel(channelId); - result = TypeUtils.sum(result, channel.getNextValue().get()); + this.addOnChangeListener((AsymmetricEss) ess, asymmetricChannelId, callback); + } else { + this.addOnChangeListener(ess, symmetricChannelId, callback); } - - LongReadChannel channel = this.parent.channel(channelId); - channel.setNextValue(result); - }; - - for (SymmetricEss ess : esss) { - this.addOnChangeListener(ess, channelId, callback); } } +// /** +// * Aggregate Channels of {@link AsymmetricEss}s. +// * +// * @param aggregator the aggregator function +// * @param esss the List of {@link SymmetricEss} +// * @param asymmetricChannelId the AsymmetricEss.ChannelId +// * @param asymmetricChannelId the fallback SymmetricEss.ChannelId; used for +// * SymmetricEss and divided by 3 +// */ +// private void calculate(BiFunction aggregator, List esss, +// AsymmetricEss.ChannelId asymmetricChannelId, SymmetricEss.ChannelId symmetricChannelId) { +// final BiConsumer, Value> callback = (oldValue, newValue) -> { +// Integer result = null; +// for (SymmetricEss ess : esss) { +// if (ess instanceof AsymmetricEss) { +// Channel channel = ((AsymmetricEss) ess).channel(asymmetricChannelId); +// result = aggregator.apply(result, channel.getNextValue().get()); +// } else { +// // SymmetricEss +// Channel channel = ess.channel(symmetricChannelId); +// result = aggregator.apply(result, TypeUtils.divide(channel.getNextValue().get(), 3)); +// } +// } +// +// Channel channel = this.parent.channel(asymmetricChannelId); +// channel.setNextValue(result); +// }; +// +// for (SymmetricEss ess : esss) { +// if (ess instanceof AsymmetricEss) { +// this.addOnChangeListener((AsymmetricEss) ess, asymmetricChannelId, callback); +// } else { +// this.addOnChangeListener(ess, symmetricChannelId, callback); +// } +// } +// } } diff --git a/io.openems.edge.ess.cluster/test/io/openems/edge/ess/cluster/EssClusterTest.java b/io.openems.edge.ess.cluster/test/io/openems/edge/ess/cluster/EssClusterTest.java index 4ac12e4d513..674b169d4c3 100644 --- a/io.openems.edge.ess.cluster/test/io/openems/edge/ess/cluster/EssClusterTest.java +++ b/io.openems.edge.ess.cluster/test/io/openems/edge/ess/cluster/EssClusterTest.java @@ -84,7 +84,7 @@ public void testCluster() throws Exception { .output(CLUSTER_ACTIVE_CHARGE_ENERGY, 3L) // .input(ESS2_ACTIVE_POWER_L1, 1111) // - .output(CLUSTER_ACTIVE_POWER_L1, 1111) // + .output(CLUSTER_ACTIVE_POWER_L1, 1234 / 3 + 1111) // .input(ESS1_ALLOWED_CHARGE_POWER, 11) // .input(ESS2_ALLOWED_CHARGE_POWER, 22) // diff --git a/io.openems.edge.ess.core/.classpath b/io.openems.edge.ess.core/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.core/.classpath +++ b/io.openems.edge.ess.core/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.fenecon.commercial40/.classpath b/io.openems.edge.ess.fenecon.commercial40/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.fenecon.commercial40/.classpath +++ b/io.openems.edge.ess.fenecon.commercial40/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1554c6f848a..00000000000 --- a/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.ess.fenecon.commercial40/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.ess.generic/.classpath b/io.openems.edge.ess.generic/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.generic/.classpath +++ b/io.openems.edge.ess.generic/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.mr.gridcon/.classpath b/io.openems.edge.ess.mr.gridcon/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.mr.gridcon/.classpath +++ b/io.openems.edge.ess.mr.gridcon/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.ess.sma/.classpath b/io.openems.edge.ess.sma/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.ess.sma/.classpath +++ b/io.openems.edge.ess.sma/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.api/.classpath b/io.openems.edge.evcs.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.api/.classpath +++ b/io.openems.edge.evcs.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.evcs.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 8765cb19d5e..00000000000 --- a/io.openems.edge.evcs.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/evcs/api/ManagedEvcs.java=UTF-8 -encoding//src/io/openems/edge/evcs/api/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.evcs.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.evcs.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.evcs.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.evcs.cluster/.classpath b/io.openems.edge.evcs.cluster/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.cluster/.classpath +++ b/io.openems.edge.evcs.cluster/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.core/.classpath b/io.openems.edge.evcs.core/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.core/.classpath +++ b/io.openems.edge.evcs.core/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.goe.chargerhome/.classpath b/io.openems.edge.evcs.goe.chargerhome/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.goe.chargerhome/.classpath +++ b/io.openems.edge.evcs.goe.chargerhome/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.hardybarth/.classpath b/io.openems.edge.evcs.hardybarth/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.hardybarth/.classpath +++ b/io.openems.edge.evcs.hardybarth/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.keba.kecontact/.classpath b/io.openems.edge.evcs.keba.kecontact/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.keba.kecontact/.classpath +++ b/io.openems.edge.evcs.keba.kecontact/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f7544200aaa..00000000000 --- a/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/evcs/keba/kecontact/KebaKeContact.java=UTF-8 -encoding//src/io/openems/edge/evcs/keba/kecontact/core/KebaKeContactCoreImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.evcs.keba.kecontact/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.evcs.ocpp.abl/.classpath b/io.openems.edge.evcs.ocpp.abl/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.ocpp.abl/.classpath +++ b/io.openems.edge.evcs.ocpp.abl/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.ocpp.common/.classpath b/io.openems.edge.evcs.ocpp.common/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.ocpp.common/.classpath +++ b/io.openems.edge.evcs.ocpp.common/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/.classpath b/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/.classpath +++ b/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.evcs.ocpp.server/.classpath b/io.openems.edge.evcs.ocpp.server/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.evcs.ocpp.server/.classpath +++ b/io.openems.edge.evcs.ocpp.server/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.fenecon.dess/.classpath b/io.openems.edge.fenecon.dess/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.fenecon.dess/.classpath +++ b/io.openems.edge.fenecon.dess/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.fenecon.dess/src/io/openems/edge/fenecon/dess/charger/FeneconDessCharger2.java b/io.openems.edge.fenecon.dess/src/io/openems/edge/fenecon/dess/charger/FeneconDessCharger2.java index 252c271097d..1c63af62504 100644 --- a/io.openems.edge.fenecon.dess/src/io/openems/edge/fenecon/dess/charger/FeneconDessCharger2.java +++ b/io.openems.edge.fenecon.dess/src/io/openems/edge/fenecon/dess/charger/FeneconDessCharger2.java @@ -54,7 +54,7 @@ public FeneconDessCharger2() { } @Activate - void activate(ComponentContext context, Config1 config) throws OpenemsException { + void activate(ComponentContext context, Config2 config) throws OpenemsException { if (super.activate(context, config.id(), config.alias(), config.enabled(), this.ess.getUnitId(), this.cm, "Modbus", this.ess.getModbusBridgeId())) { return; @@ -83,4 +83,4 @@ protected int getOffset() { public Timedata getTimedata() { return this.timedata; } -} \ No newline at end of file +} diff --git a/io.openems.edge.fenecon.mini/.classpath b/io.openems.edge.fenecon.mini/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.fenecon.mini/.classpath +++ b/io.openems.edge.fenecon.mini/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.fenecon.pro/.classpath b/io.openems.edge.fenecon.pro/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.fenecon.pro/.classpath +++ b/io.openems.edge.fenecon.pro/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.goodwe/.classpath b/io.openems.edge.goodwe/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.goodwe/.classpath +++ b/io.openems.edge.goodwe/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/AbstractGoodWe.java b/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/AbstractGoodWe.java index c8e64305848..0309b46614c 100644 --- a/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/AbstractGoodWe.java +++ b/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/AbstractGoodWe.java @@ -114,6 +114,9 @@ protected final ModbusProtocol defineModbusProtocol() throws OpenemsException { case "GW5K-ET": result = GoodweType.GOODWE_5K_ET; break; + case "FHI-10-DAH": + result = GoodweType.FENECON_FHI_10_DAH; + break; default: this.logInfo(this.log, "Unable to identify GoodWe by name [" + value + "]"); result = GoodweType.UNDEFINED; @@ -129,6 +132,7 @@ protected final ModbusProtocol defineModbusProtocol() throws OpenemsException { case GOODWE_10K_ET: case GOODWE_8K_ET: case GOODWE_5K_ET: + case FENECON_FHI_10_DAH: this.logInfo(this.log, "Identified " + result.getName()); break; case UNDEFINED: diff --git a/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/enums/GoodweType.java b/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/enums/GoodweType.java index 6d198b28ec6..83b89767b92 100644 --- a/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/enums/GoodweType.java +++ b/io.openems.edge.goodwe/src/io/openems/edge/goodwe/common/enums/GoodweType.java @@ -9,7 +9,8 @@ public enum GoodweType implements OptionsEnum { GOODWE_5K_BT(12, "GoodWe GW5K-BT", Series.BT), // GOODWE_10K_ET(20, "GoodWe GW10K-ET", Series.ET), // GOODWE_8K_ET(21, "GoodWe GW8K-ET", Series.ET), // - GOODWE_5K_ET(22, "GoodWe GW5K-ET", Series.ET); + GOODWE_5K_ET(22, "GoodWe GW5K-ET", Series.ET), // + FENECON_FHI_10_DAH(30, "FENECON FHI 10 DAH", Series.ET); public static enum Series { UNDEFINED, BT, ET; diff --git a/io.openems.edge.io.api/.classpath b/io.openems.edge.io.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.api/.classpath +++ b/io.openems.edge.io.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.io.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.io.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 5d5d78da961..00000000000 --- a/io.openems.edge.io.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,6 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/io/api/DigitalInput.java=UTF-8 -encoding//src/io/openems/edge/io/api/DigitalOutput.java=UTF-8 -encoding//src/io/openems/edge/io/api/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.io.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.io.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.io.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.io.kmtronic/.classpath b/io.openems.edge.io.kmtronic/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.kmtronic/.classpath +++ b/io.openems.edge.io.kmtronic/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.io.kmtronic/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.io.kmtronic/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index b91a8264c3c..00000000000 --- a/io.openems.edge.io.kmtronic/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/io/kmtronic/AbstractKmtronicRelay.java=UTF-8 -encoding//src/io/openems/edge/io/kmtronic/eight/KmtronicRelay8Port.java=UTF-8 -encoding//src/io/openems/edge/io/kmtronic/eight/KmtronicRelay8PortImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.io.kmtronic/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.io.kmtronic/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.io.kmtronic/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.io.offgridswitch/.classpath b/io.openems.edge.io.offgridswitch/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.offgridswitch/.classpath +++ b/io.openems.edge.io.offgridswitch/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.io.revpi/.classpath b/io.openems.edge.io.revpi/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.revpi/.classpath +++ b/io.openems.edge.io.revpi/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.io.shelly/.classpath b/io.openems.edge.io.shelly/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.shelly/.classpath +++ b/io.openems.edge.io.shelly/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.io.wago/.classpath b/io.openems.edge.io.wago/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.io.wago/.classpath +++ b/io.openems.edge.io.wago/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.kostal.piko/.classpath b/io.openems.edge.kostal.piko/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.kostal.piko/.classpath +++ b/io.openems.edge.kostal.piko/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.abb/.classpath b/io.openems.edge.meter.abb/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.abb/.classpath +++ b/io.openems.edge.meter.abb/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.api/.classpath b/io.openems.edge.meter.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.api/.classpath +++ b/io.openems.edge.meter.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.meter.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 246303d926f..00000000000 --- a/io.openems.edge.meter.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/meter/api/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.meter.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.meter.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.meter.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.meter.artemes.am2/.classpath b/io.openems.edge.meter.artemes.am2/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.artemes.am2/.classpath +++ b/io.openems.edge.meter.artemes.am2/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.bcontrol.em300/.classpath b/io.openems.edge.meter.bcontrol.em300/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.bcontrol.em300/.classpath +++ b/io.openems.edge.meter.bcontrol.em300/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.carlo.gavazzi.em300/.classpath b/io.openems.edge.meter.carlo.gavazzi.em300/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.carlo.gavazzi.em300/.classpath +++ b/io.openems.edge.meter.carlo.gavazzi.em300/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.discovergy/.classpath b/io.openems.edge.meter.discovergy/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.discovergy/.classpath +++ b/io.openems.edge.meter.discovergy/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.janitza/.classpath b/io.openems.edge.meter.janitza/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.janitza/.classpath +++ b/io.openems.edge.meter.janitza/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.microcare.sdm630/.classpath b/io.openems.edge.meter.microcare.sdm630/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.microcare.sdm630/.classpath +++ b/io.openems.edge.meter.microcare.sdm630/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.pqplus/.classpath b/io.openems.edge.meter.pqplus/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.pqplus/.classpath +++ b/io.openems.edge.meter.pqplus/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.schneider.acti9.smartlink/.classpath b/io.openems.edge.meter.schneider.acti9.smartlink/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.schneider.acti9.smartlink/.classpath +++ b/io.openems.edge.meter.schneider.acti9.smartlink/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.sma.shm20/.classpath b/io.openems.edge.meter.sma.shm20/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.sma.shm20/.classpath +++ b/io.openems.edge.meter.sma.shm20/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.socomec/.classpath b/io.openems.edge.meter.socomec/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.socomec/.classpath +++ b/io.openems.edge.meter.socomec/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.socomec/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.meter.socomec/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 1554c6f848a..00000000000 --- a/io.openems.edge.meter.socomec/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.meter.socomec/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.meter.socomec/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.meter.socomec/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.meter.sunspec/.classpath b/io.openems.edge.meter.sunspec/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.sunspec/.classpath +++ b/io.openems.edge.meter.sunspec/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.virtual/.classpath b/io.openems.edge.meter.virtual/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.virtual/.classpath +++ b/io.openems.edge.meter.virtual/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.meter.weidmueller/.classpath b/io.openems.edge.meter.weidmueller/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.meter.weidmueller/.classpath +++ b/io.openems.edge.meter.weidmueller/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.onewire.thermometer/.classpath b/io.openems.edge.onewire.thermometer/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.onewire.thermometer/.classpath +++ b/io.openems.edge.onewire.thermometer/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.predictor.api/.classpath b/io.openems.edge.predictor.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.predictor.api/.classpath +++ b/io.openems.edge.predictor.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.predictor.persistencemodel/.classpath b/io.openems.edge.predictor.persistencemodel/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.predictor.persistencemodel/.classpath +++ b/io.openems.edge.predictor.persistencemodel/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.predictor.similardaymodel/.classpath b/io.openems.edge.predictor.similardaymodel/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.predictor.similardaymodel/.classpath +++ b/io.openems.edge.predictor.similardaymodel/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.predictor.similardaymodel/.project b/io.openems.edge.predictor.similardaymodel/.project index c6bc91c6a06..58f1f2b940f 100644 --- a/io.openems.edge.predictor.similardaymodel/.project +++ b/io.openems.edge.predictor.similardaymodel/.project @@ -15,11 +15,6 @@ - - net.sf.eclipsecs.core.CheckstyleBuilder - - - org.eclipse.jdt.core.javanature diff --git a/io.openems.edge.pvinverter.api/.classpath b/io.openems.edge.pvinverter.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.api/.classpath +++ b/io.openems.edge.pvinverter.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.pvinverter.cluster/.classpath b/io.openems.edge.pvinverter.cluster/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.cluster/.classpath +++ b/io.openems.edge.pvinverter.cluster/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.pvinverter.kaco.blueplanet/.classpath b/io.openems.edge.pvinverter.kaco.blueplanet/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.kaco.blueplanet/.classpath +++ b/io.openems.edge.pvinverter.kaco.blueplanet/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.pvinverter.sma/.classpath b/io.openems.edge.pvinverter.sma/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.sma/.classpath +++ b/io.openems.edge.pvinverter.sma/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.pvinverter.solarlog/.classpath b/io.openems.edge.pvinverter.solarlog/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.solarlog/.classpath +++ b/io.openems.edge.pvinverter.solarlog/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.pvinverter.sunspec/.classpath b/io.openems.edge.pvinverter.sunspec/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.pvinverter.sunspec/.classpath +++ b/io.openems.edge.pvinverter.sunspec/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.scheduler.allalphabetically/.classpath b/io.openems.edge.scheduler.allalphabetically/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.scheduler.allalphabetically/.classpath +++ b/io.openems.edge.scheduler.allalphabetically/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 7a6fa7195fa..00000000000 --- a/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/scheduler/allalphabetically/AllAlphabeticallyScheduler.java=UTF-8 -encoding//src/io/openems/edge/scheduler/allalphabetically/AllAlphabeticallySchedulerImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.scheduler.allalphabetically/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.scheduler.api/.classpath b/io.openems.edge.scheduler.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.scheduler.api/.classpath +++ b/io.openems.edge.scheduler.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.scheduler.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.scheduler.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 824c4bb4190..00000000000 --- a/io.openems.edge.scheduler.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/scheduler/api/Scheduler.java=UTF-8 -encoding//src/io/openems/edge/scheduler/api/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.scheduler.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.scheduler.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.scheduler.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.scheduler.daily/.classpath b/io.openems.edge.scheduler.daily/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.scheduler.daily/.classpath +++ b/io.openems.edge.scheduler.daily/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.scheduler.fixedorder/.classpath b/io.openems.edge.scheduler.fixedorder/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.scheduler.fixedorder/.classpath +++ b/io.openems.edge.scheduler.fixedorder/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index dfe6fc42e00..00000000000 --- a/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/scheduler/fixedorder/FixedOrderScheduler.java=UTF-8 -encoding//src/io/openems/edge/scheduler/fixedorder/FixedOrderSchedulerImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.scheduler.fixedorder/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.simulator/.classpath b/io.openems.edge.simulator/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.simulator/.classpath +++ b/io.openems.edge.simulator/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.simulator/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.simulator/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index a1eb907cb2b..00000000000 --- a/io.openems.edge.simulator/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/simulator/ess/asymmetric/reacting/EssAsymmetric.java=UTF-8 -encoding//src/io/openems/edge/simulator/meter/grid/acting/GridMeter.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.simulator/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.simulator/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.simulator/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.solaredge/.classpath b/io.openems.edge.solaredge/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.solaredge/.classpath +++ b/io.openems.edge.solaredge/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.tesla.powerwall2/.classpath b/io.openems.edge.tesla.powerwall2/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.tesla.powerwall2/.classpath +++ b/io.openems.edge.tesla.powerwall2/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.thermometer.api/.classpath b/io.openems.edge.thermometer.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.thermometer.api/.classpath +++ b/io.openems.edge.thermometer.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timedata.api/.classpath b/io.openems.edge.timedata.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timedata.api/.classpath +++ b/io.openems.edge.timedata.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timedata.api/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.timedata.api/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index fd04b997d93..00000000000 --- a/io.openems.edge.timedata.api/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,6 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/timedata/api/Timedata.java=UTF-8 -encoding//src/io/openems/edge/timedata/api/package-info.java=UTF-8 -encoding//src/io/openems/edge/timedata/test/package-info.java=UTF-8 -encoding//test/.gitignore=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.timedata.api/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.timedata.api/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.timedata.api/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.timedata.influxdb/.classpath b/io.openems.edge.timedata.influxdb/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timedata.influxdb/.classpath +++ b/io.openems.edge.timedata.influxdb/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timedata.influxdb/.settings/org.eclipse.core.resources.prefs b/io.openems.edge.timedata.influxdb/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index c7bf1c86a58..00000000000 --- a/io.openems.edge.timedata.influxdb/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/io/openems/edge/timedata/influxdb/InfluxTimedata.java=UTF-8 -encoding//src/io/openems/edge/timedata/influxdb/InfluxTimedataImpl.java=UTF-8 -encoding/bnd.bnd=UTF-8 diff --git a/io.openems.edge.timedata.influxdb/.settings/org.eclipse.jdt.core.prefs b/io.openems.edge.timedata.influxdb/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.edge.timedata.influxdb/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.edge.timedata.rrd4j/.classpath b/io.openems.edge.timedata.rrd4j/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timedata.rrd4j/.classpath +++ b/io.openems.edge.timedata.rrd4j/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timeofusetariff.api/.classpath b/io.openems.edge.timeofusetariff.api/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timeofusetariff.api/.classpath +++ b/io.openems.edge.timeofusetariff.api/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timeofusetariff.awattar/.classpath b/io.openems.edge.timeofusetariff.awattar/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timeofusetariff.awattar/.classpath +++ b/io.openems.edge.timeofusetariff.awattar/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timeofusetariff.corrently/.classpath b/io.openems.edge.timeofusetariff.corrently/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.edge.timeofusetariff.corrently/.classpath +++ b/io.openems.edge.timeofusetariff.corrently/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.edge.timeofusetariff.corrently/readme.adoc b/io.openems.edge.timeofusetariff.corrently/readme.adoc index 877a3710305..a8021e85773 100644 --- a/io.openems.edge.timeofusetariff.corrently/readme.adoc +++ b/io.openems.edge.timeofusetariff.corrently/readme.adoc @@ -1,5 +1,5 @@ = Time-Of-Use Tariff Corrently by STROMDAO -Retrieves the hourly prices from the Corrently API and converts them into quarterly prices. Prices are updated every day at 14:00 and stored locally. +Retrieves the quarterly prices from the Corrently API. Prices are updated every day at 14:00 and stored locally. https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.timeofusetariff.corrently[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/Config.java b/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/Config.java index a55ce15ed22..2ad66dafbd2 100644 --- a/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/Config.java +++ b/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/Config.java @@ -18,7 +18,7 @@ boolean enabled() default true; @AttributeDefinition(name = "ZIP Code", description = "German ZIP Code of the customer location") - String zipcode() default "94469"; + String zipcode(); String webconsole_configurationFactory_nameHint() default "Time-Of-Use Tariff Corrently [{id}]"; } \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/CorrentlyImpl.java b/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/CorrentlyImpl.java index d806f2c83ef..bb207c01ed2 100644 --- a/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/CorrentlyImpl.java +++ b/io.openems.edge.timeofusetariff.corrently/src/io/openems/edge/timeofusetariff/corrently/CorrentlyImpl.java @@ -65,7 +65,7 @@ public class CorrentlyImpl extends AbstractOpenemsComponent implements TimeOfUse */ OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() // - .url(CORRENTLY_API_URL + this.config.zipcode()) // + .url(CORRENTLY_API_URL + this.config.zipcode() + "&resolution=900") // .build(); int httpStatusCode; try (Response response = client.newCall(request).execute()) { @@ -164,13 +164,9 @@ public static ImmutableSortedMap parsePrices(String jsonDa // Converting Long time stamp to ZonedDateTime. ZonedDateTime startTimeStamp = ZonedDateTime // .ofInstant(Instant.ofEpochMilli(startTimestampLong), ZoneId.systemDefault()) - .truncatedTo(ChronoUnit.HOURS); - + .truncatedTo(ChronoUnit.MINUTES); // Adding the values in the Map. result.put(startTimeStamp, marketPrice); - result.put(startTimeStamp.plusMinutes(15), marketPrice); - result.put(startTimeStamp.plusMinutes(30), marketPrice); - result.put(startTimeStamp.plusMinutes(45), marketPrice); } } return ImmutableSortedMap.copyOf(result); diff --git a/io.openems.edge.timeofusetariff.tibber/.classpath b/io.openems.edge.timeofusetariff.tibber/.classpath new file mode 100644 index 00000000000..43d68895d03 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/io.openems.edge.timeofusetariff.tibber/.gitignore b/io.openems.edge.timeofusetariff.tibber/.gitignore new file mode 100644 index 00000000000..c2b941a96de --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/.gitignore @@ -0,0 +1,2 @@ +/bin_test/ +/generated/ diff --git a/io.openems.edge.timeofusetariff.tibber/.project b/io.openems.edge.timeofusetariff.tibber/.project new file mode 100644 index 00000000000..124eb541f1f --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/.project @@ -0,0 +1,23 @@ + + + io.openems.edge.timeofusetariff.tibber + + + + + + org.eclipse.jdt.core.javabuilder + + + + + bndtools.core.bndbuilder + + + + + + org.eclipse.jdt.core.javanature + bndtools.core.bndnature + + diff --git a/io.openems.edge.timeofusetariff.tibber/bnd.bnd b/io.openems.edge.timeofusetariff.tibber/bnd.bnd new file mode 100644 index 00000000000..e5207de1e64 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/bnd.bnd @@ -0,0 +1,14 @@ +Bundle-Name: OpenEMS Edge Time-Of-Use Tariff Tibber +Bundle-Vendor: FENECON GmbH +Bundle-License: https://opensource.org/licenses/EPL-2.0 +Bundle-Version: 1.0.0.${tstamp} + +-buildpath: \ + ${buildpath},\ + io.openems.common,\ + io.openems.edge.common,\ + io.openems.edge.timeofusetariff.api,\ + io.openems.wrapper.okhttp,\ + +-testpath: \ + ${testpath} \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.tibber/readme.adoc b/io.openems.edge.timeofusetariff.tibber/readme.adoc new file mode 100644 index 00000000000..685f34a8480 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/readme.adoc @@ -0,0 +1,5 @@ += Time-Of-Use Tariff Tibber + +Retrieves the hourly prices from the Tibber API and converts them into quarterly prices. Prices are updated every day at 14:00 and stored locally. + +https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.timeofusetariff.corrently[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Config.java b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Config.java new file mode 100644 index 00000000000..477a6c0a615 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Config.java @@ -0,0 +1,25 @@ +package io.openems.edge.timeofusetariff.tibber; + +import org.osgi.service.metatype.annotations.AttributeDefinition; +import org.osgi.service.metatype.annotations.AttributeType; +import org.osgi.service.metatype.annotations.ObjectClassDefinition; + +@ObjectClassDefinition(// + name = "Time-Of-Use Tariff Tibber", // + description = "Time-Of-Use Tariff implementation for Tibber.") +@interface Config { + + @AttributeDefinition(name = "Component-ID", description = "Unique ID of this Component") + String id() default "timeOfUseTariff0"; + + @AttributeDefinition(name = "Alias", description = "Human-readable name of this Component; defaults to Component-ID") + String alias() default ""; + + @AttributeDefinition(name = "Is enabled?", description = "Is this Component enabled?") + boolean enabled() default true; + + @AttributeDefinition(name = "Access Token", description = "Access token for the Tibber API", type = AttributeType.PASSWORD) + String accessToken() default ""; + + String webconsole_configurationFactory_nameHint() default "Time-Of-Use Tariff Tibber [{id}]"; +} \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Tibber.java b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Tibber.java new file mode 100644 index 00000000000..47b2efde9b7 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/Tibber.java @@ -0,0 +1,26 @@ +package io.openems.edge.timeofusetariff.tibber; + +import io.openems.common.types.OpenemsType; +import io.openems.edge.common.channel.Doc; +import io.openems.edge.common.component.OpenemsComponent; +import io.openems.edge.timeofusetariff.api.TimeOfUseTariff; + +public interface Tibber extends TimeOfUseTariff, OpenemsComponent { + + public enum ChannelId implements io.openems.edge.common.channel.ChannelId { + HTTP_STATUS_CODE(Doc.of(OpenemsType.INTEGER)// + .text("Displays the HTTP status code"))// + ; + + private final Doc doc; + + private ChannelId(Doc doc) { + this.doc = doc; + } + + @Override + public Doc doc() { + return this.doc; + } + } +} diff --git a/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/TibberImpl.java b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/TibberImpl.java new file mode 100644 index 00000000000..5aecf72d88c --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/src/io/openems/edge/timeofusetariff/tibber/TibberImpl.java @@ -0,0 +1,213 @@ +package io.openems.edge.timeofusetariff.tibber; + +import java.io.IOException; +import java.time.Clock; +import java.time.Duration; +import java.time.ZoneId; +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; +import java.util.TreeMap; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicReference; + +import org.osgi.service.component.ComponentContext; +import org.osgi.service.component.annotations.Activate; +import org.osgi.service.component.annotations.Component; +import org.osgi.service.component.annotations.ConfigurationPolicy; +import org.osgi.service.component.annotations.Deactivate; +import org.osgi.service.component.annotations.Reference; +import org.osgi.service.metatype.annotations.Designate; + +import com.google.common.collect.ImmutableSortedMap; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; + +import io.openems.common.exceptions.OpenemsError.OpenemsNamedException; +import io.openems.common.utils.JsonUtils; +import io.openems.common.utils.ThreadPoolUtils; +import io.openems.edge.common.component.AbstractOpenemsComponent; +import io.openems.edge.common.component.ComponentManager; +import io.openems.edge.common.component.OpenemsComponent; +import io.openems.edge.timeofusetariff.api.TimeOfUsePrices; +import io.openems.edge.timeofusetariff.api.TimeOfUseTariff; +import io.openems.edge.timeofusetariff.api.utils.TimeOfUseTariffUtils; +import okhttp3.MediaType; +import okhttp3.OkHttpClient; +import okhttp3.Request; +import okhttp3.RequestBody; +import okhttp3.Response; + +@Designate(ocd = Config.class, factory = true) +@Component(// + name = "TimeOfUseTariff.Tibber", // + immediate = true, // + configurationPolicy = ConfigurationPolicy.REQUIRE // +) +public class TibberImpl extends AbstractOpenemsComponent implements TimeOfUseTariff, OpenemsComponent, Tibber { + + private static final String TIBBER_API_URL = "https://api.tibber.com/v1-beta/gql"; + + private final ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor(); + + private Config config = null; + + private final AtomicReference> prices = new AtomicReference>( + ImmutableSortedMap.of()); + + private ZonedDateTime updateTimeStamp = null; + + private final Runnable task = () -> { + + /* + * Update Map of prices + */ + OkHttpClient client = new OkHttpClient(); + MediaType mediaType = MediaType.parse("application/json"); + RequestBody body = RequestBody.create(mediaType, JsonUtils.buildJsonObject() // + .addProperty("query", // + "{\n" + + " viewer {\n" + + " homes {\n" + + " currentSubscription{\n" + + " priceInfo{\n" + + " today {\n" + + " total\n" + + " startsAt\n" + + " }\n" + + " tomorrow {\n" + + " total\n" + + " startsAt\n" + + " }\n" + + " }\n" + + " }\n" + + " }\n" + + " }\n" + + "}" + "") // + .build().toString()); + Request request = new Request.Builder() // + .url(TIBBER_API_URL) // + .header("Authorization", this.config.accessToken()).post(body) // + .build(); + int httpStatusCode; + try (Response response = client.newCall(request).execute()) { + httpStatusCode = response.code(); + + if (!response.isSuccessful()) { + throw new IOException("Unexpected code " + response); + } + + // Parse the response for the prices + this.prices.set(TibberImpl.parsePrices(response.body().string())); + + // store the time stamp + this.updateTimeStamp = ZonedDateTime.now(); + + } catch (IOException | OpenemsNamedException e) { + e.printStackTrace(); + httpStatusCode = 0; + } + + this.channel(Tibber.ChannelId.HTTP_STATUS_CODE).setNextValue(httpStatusCode); + + /* + * Schedule next price update for 2 pm + */ + ZonedDateTime now = ZonedDateTime.now(); + ZonedDateTime nextRun = now.withHour(14).truncatedTo(ChronoUnit.HOURS); + if (now.isAfter(nextRun)) { + nextRun = nextRun.plusDays(1); + } + + Duration duration = Duration.between(now, nextRun); + long delay = duration.getSeconds(); + + this.executor.schedule(this.task, delay, TimeUnit.SECONDS); + }; + + @Reference + private ComponentManager componentManager; + + public TibberImpl() { + super(// + OpenemsComponent.ChannelId.values(), // + Tibber.ChannelId.values() // + ); + } + + @Activate + void activate(ComponentContext context, Config config) { + super.activate(context, config.id(), config.alias(), config.enabled()); + + if (!config.enabled()) { + return; + } + this.config = config; + this.executor.schedule(this.task, 0, TimeUnit.SECONDS); + } + + @Deactivate + protected void deactivate() { + super.deactivate(); + ThreadPoolUtils.shutdownAndAwaitTermination(this.executor, 0); + } + + @Override + public TimeOfUsePrices getPrices() { + // return null if data is not yet available. + if (this.updateTimeStamp == null) { + return null; + } + + return TimeOfUseTariffUtils.getNext24HourPrices(Clock.systemDefaultZone() /* can be mocked for testing */, + this.prices.get(), this.updateTimeStamp); + } + + /** + * Parse the Tibber JSON to the Price Map. + * + * @param jsonData the Tibber JSON + * @return the Price Map + * @throws OpenemsNamedException on error + */ + public static ImmutableSortedMap parsePrices(String jsonData) throws OpenemsNamedException { + TreeMap result = new TreeMap<>(); + + if (!jsonData.isEmpty()) { + + JsonObject line = JsonUtils.parseToJsonObject(jsonData); + JsonArray homes = JsonUtils.getAsJsonObject(line, "data") // + .getAsJsonObject("viewer") // + .getAsJsonArray("homes"); + + for (JsonElement home : homes) { + + JsonObject priceInfo = JsonUtils.getAsJsonObject(home, "currentSubscription") // + .getAsJsonObject("priceInfo"); + + // Price info for today and tomorrow. + JsonArray today = JsonUtils.getAsJsonArray(priceInfo, "today"); + JsonArray tomorrow = JsonUtils.getAsJsonArray(priceInfo, "tomorrow"); + + // Adding to an array to avoid individual variables for individual for loops. + JsonArray[] days = { today, tomorrow }; + + // parse the arrays for price and time stamps. + for (JsonArray day : days) { + for (JsonElement element : day) { + float marketPrice = JsonUtils.getAsFloat(element, "total"); + ZonedDateTime startTime = ZonedDateTime + .parse(JsonUtils.getAsString(element, "startsAt"), DateTimeFormatter.ISO_DATE_TIME) + .withZoneSameInstant(ZoneId.systemDefault()); + // Adding the values in the Map. + result.put(startTime, marketPrice); + } + } + } + } + return ImmutableSortedMap.copyOf(result); + } +} diff --git a/io.openems.edge.timeofusetariff.tibber/test/.gitignore b/io.openems.edge.timeofusetariff.tibber/test/.gitignore new file mode 100644 index 00000000000..e69de29bb2d diff --git a/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/MyConfig.java b/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/MyConfig.java new file mode 100644 index 00000000000..a3d159ce92f --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/MyConfig.java @@ -0,0 +1,51 @@ +package io.openems.edge.timeofusetariff.tibber; + +import io.openems.edge.common.test.AbstractComponentConfig; + +@SuppressWarnings("all") +public class MyConfig extends AbstractComponentConfig implements Config { + + public static class Builder { + private String id; + public String accessToken; + + private Builder() { + } + + public Builder setId(String id) { + this.id = id; + return this; + } + + public Builder setAccessToken(String accessToken) { + this.accessToken = accessToken; + return this; + } + + public MyConfig build() { + return new MyConfig(this); + } + } + + /** + * Create a Config builder. + * + * @return a {@link Builder} + */ + public static Builder create() { + return new Builder(); + } + + private final Builder builder; + + private MyConfig(Builder builder) { + super(Config.class, builder.id); + this.builder = builder; + } + + @Override + public String accessToken() { + return this.builder.accessToken; + } + +} \ No newline at end of file diff --git a/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/TibberProviderTest.java b/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/TibberProviderTest.java new file mode 100644 index 00000000000..0fe5d65b5c5 --- /dev/null +++ b/io.openems.edge.timeofusetariff.tibber/test/io/openems/edge/timeofusetariff/tibber/TibberProviderTest.java @@ -0,0 +1,165 @@ +package io.openems.edge.timeofusetariff.tibber; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.time.ZonedDateTime; +import java.util.SortedMap; + +import org.junit.Test; + +import io.openems.common.exceptions.OpenemsError.OpenemsNamedException; +import io.openems.edge.common.test.ComponentTest; + +public class TibberProviderTest { + + private static final String CTRL_ID = "ctrl0"; + + @Test + public void test() throws Exception { + TibberImpl sut = new TibberImpl(); + new ComponentTest(sut) // + .activate(MyConfig.create() // + .setId(CTRL_ID) // + .setAccessToken("dummy") // + .build()) // + ; + + // Thread.sleep(5000); + // System.out.println(sut.getPrices()); + } + + @Test + public void nonEmptyStringTest() throws OpenemsNamedException { + // Parsing with custom data + SortedMap prices = TibberImpl.parsePrices("{\n" + + " \"data\": {\n" + + " \"viewer\": {\n" + + " \"homes\": [\n" + + " {\n" + + " \"currentSubscription\": {\n" + + " \"priceInfo\": {\n" + + " \"today\": [\n" + + " {\n" + + " \"total\": 0.187,\n" + + " \"startsAt\": \"2021-11-15T00:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1841,\n" + + " \"startsAt\": \"2021-11-15T01:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.18,\n" + + " \"startsAt\": \"2021-11-15T02:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1747,\n" + + " \"startsAt\": \"2021-11-15T03:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.179,\n" + + " \"startsAt\": \"2021-11-15T04:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1809,\n" + + " \"startsAt\": \"2021-11-15T05:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1795,\n" + + " \"startsAt\": \"2021-11-15T06:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1848,\n" + + " \"startsAt\": \"2021-11-15T07:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1868,\n" + + " \"startsAt\": \"2021-11-15T08:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1876,\n" + + " \"startsAt\": \"2021-11-15T09:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1874,\n" + + " \"startsAt\": \"2021-11-15T10:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1874,\n" + + " \"startsAt\": \"2021-11-15T11:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1875,\n" + + " \"startsAt\": \"2021-11-15T12:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1878,\n" + + " \"startsAt\": \"2021-11-15T13:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1868,\n" + + " \"startsAt\": \"2021-11-15T14:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1853,\n" + + " \"startsAt\": \"2021-11-15T15:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1848,\n" + + " \"startsAt\": \"2021-11-15T16:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1829,\n" + + " \"startsAt\": \"2021-11-15T17:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1835,\n" + + " \"startsAt\": \"2021-11-15T18:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1846,\n" + + " \"startsAt\": \"2021-11-15T19:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1851,\n" + + " \"startsAt\": \"2021-11-15T20:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1854,\n" + + " \"startsAt\": \"2021-11-15T21:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1853,\n" + + " \"startsAt\": \"2021-11-15T22:00:00.000+01:00\"\n" + + " },\n" + + " {\n" + + " \"total\": 0.1831,\n" + + " \"startsAt\": \"2021-11-15T23:00:00.000+01:00\"\n" + + " }\n" + + " ],\n" + + " \"tomorrow\": []\n" + + " }\n" + + " }\n" + + " }\n" + + " ]\n" + + " }\n" + + " }\n" + + "}"); // + + // To check if the Map is not empty + assertFalse(prices.isEmpty()); + + // To check if the a value input from the string is present in map. + assertTrue(prices.containsValue(0.1853f)); + + } + + @Test + public void emptyStringTest() throws OpenemsNamedException { + // Parsing with empty string + SortedMap prices = TibberImpl.parsePrices(""); + + // To check if the map is empty. + assertTrue(prices.isEmpty()); + } +} diff --git a/io.openems.shared.influxdb/.classpath b/io.openems.shared.influxdb/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.shared.influxdb/.classpath +++ b/io.openems.shared.influxdb/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.wrapper/.classpath b/io.openems.wrapper/.classpath index 7a6fc254361..43d68895d03 100644 --- a/io.openems.wrapper/.classpath +++ b/io.openems.wrapper/.classpath @@ -1,7 +1,7 @@ - + diff --git a/io.openems.wrapper/.settings/org.eclipse.jdt.core.prefs b/io.openems.wrapper/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3a21537071b..00000000000 --- a/io.openems.wrapper/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/io.openems.wrapper/aXMLRPC.bnd b/io.openems.wrapper/aXMLRPC.bnd new file mode 100644 index 00000000000..03a9e7077d6 --- /dev/null +++ b/io.openems.wrapper/aXMLRPC.bnd @@ -0,0 +1,23 @@ +Bundle-Name: aXMLRPC +Bundle-Description: aXMLRPC is a Java library with a leightweight XML-RPC client. +Bundle-DocURL: https://github.com/gturri/aXMLRPC +Bundle-License: https://opensource.org/licenses/MIT +Bundle-Version: 1.12.0 + +Include-Resource: \ + @aXMLRPC-1.12.0.jar,\ + +Export-Package: \ + de.timroes.axmlrpc,\ + de.timroes.axmlrpc.serializer,\ + de.timroes.axmlrpc.xmlcreator,\ + +Import-Package: \ + fr.turri.jiso8601;resolution:=optional,\ + * + +-dsannotations: * + +-metatypeannotations: * + +-sources: false diff --git a/io.openems.wrapper/bnd.bnd b/io.openems.wrapper/bnd.bnd index 0937600b763..fd8baf66c7c 100644 --- a/io.openems.wrapper/bnd.bnd +++ b/io.openems.wrapper/bnd.bnd @@ -14,7 +14,8 @@ Bundle-Description: This wraps external java libraries that do not have OSGi hea eu.chargetime.ocpp:common;version='1.0',\ eu.chargetime.ocpp:v1_6;version='1.0.1',\ info.faljse:SDNotify;version='1.3',\ + fr.turri:aXMLRPC;version='1.12',\ org.dhatim:fastexcel;version='0.12.11',\ org.eclipse.paho.mqttv5.client;version='1.2.5',\ org.influxdb:influxdb-java;version='2.17',\ - org.msgpack:msgpack-core;version='0.9.0',\ + org.msgpack:msgpack-core;version='0.9.0',\ \ No newline at end of file diff --git a/io.openems.wrapper/eu.chargetime.ocpp.bnd b/io.openems.wrapper/eu.chargetime.ocpp.bnd index 956ffa3b378..8afdab72021 100644 --- a/io.openems.wrapper/eu.chargetime.ocpp.bnd +++ b/io.openems.wrapper/eu.chargetime.ocpp.bnd @@ -15,8 +15,8 @@ Include-Resource: \ Import-Package: \ com.sun.activation.registries;resolution:=optional,\ + javax.xml.soap;resolution:=optional,\ com.google.gson,\ - javax.xml.soap,\ javax.xml.transform,\ org.java_websocket,\ org.java_websocket.drafts,\ diff --git a/tools/docker/openems-backend/Dockerfile b/tools/docker/openems-backend/Dockerfile index d0e8f48335e..9082e360ae8 100644 --- a/tools/docker/openems-backend/Dockerfile +++ b/tools/docker/openems-backend/Dockerfile @@ -9,8 +9,8 @@ RUN apt-get install -y --no-install-recommends software-properties-common curl RUN curl -sL https://repos.influxdata.com/influxdb.key | apt-key add - RUN add-apt-repository -y ppa:openjdk-r/ppa RUN apt-get update -RUN apt-get install -y openjdk-8-jdk -RUN apt-get install -y openjdk-8-jre +RUN apt-get install -y openjdk-11-jdk +RUN apt-get install -y openjdk-11-jre RUN apt-get install -y influxdb RUN update-alternatives --config java RUN update-alternatives --config javac diff --git a/tools/docker/openems-backend/config.d/Timedata/InfluxDB.config b/tools/docker/openems-backend/config.d/Timedata/InfluxDB.config deleted file mode 100644 index d98b9753d2a..00000000000 --- a/tools/docker/openems-backend/config.d/Timedata/InfluxDB.config +++ /dev/null @@ -1,9 +0,0 @@ -database="openems" -isReadOnly=B"false" -measurement="data" -password="" -port=I"8086" -retentionPolicy="autogen" -service.pid="Timedata.InfluxDB" -url="http://localhost:8086/" -username="" diff --git a/tools/prepare-commit.sh b/tools/prepare-commit.sh index 349fa2c5eb3..666922f1ea3 100755 --- a/tools/prepare-commit.sh +++ b/tools/prepare-commit.sh @@ -69,7 +69,7 @@ for D in *; do - + @@ -81,6 +81,11 @@ for D in *; do EOT fi + # Remove .settings directory + if [ -d "${D}/.settings" ]; then + rm -R "${D}/.settings" + fi + # Verify bnd.bnd file if [ -f "${D}/bnd.bnd" ]; then start=$(grep -n '${buildpath},' "${D}/bnd.bnd" | grep -Eo '^[^:]+' | head -n1) diff --git a/ui/package-lock.json b/ui/package-lock.json index 7d87047b7b6..e014d63d71f 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -1,12 +1,12 @@ { "name": "openems-ui", - "version": "2021.20.0", + "version": "2021.21.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "openems-ui", - "version": "2021.19.0-SNAPSHOT", + "version": "2021.21.0-SNAPSHOT", "license": "AGPL-3.0", "dependencies": { "@angular/animations": "~12.1.4", @@ -17,16 +17,16 @@ "@angular/platform-browser-dynamic": "~12.1.4", "@angular/router": "~12.1.4", "@angular/service-worker": "~12.1.4", - "@ionic/angular": "^5.6.12", - "@ngx-formly/core": "^5.10.22", - "@ngx-formly/ionic": "^5.10.22", - "@ngx-formly/schematics": "^5.10.22", + "@ionic/angular": "^5.9.1", + "@ngx-formly/core": "^5.10.23", + "@ngx-formly/ionic": "^5.10.23", + "@ngx-formly/schematics": "^5.10.23", "@ngx-translate/core": "^13.0.0", "angular-mydatepicker": "^0.11.5", "chart.js": "^2.9.4", "classlist.js": "^1.1.20150312", "d3": "^7.1.1", - "date-fns": "^2.25.0", + "date-fns": "^2.26.0", "file-saver-es": "^2.0.5", "ng2-charts": "^2.4.3", "ngx-cookie-service": "^12.0.3", @@ -34,7 +34,7 @@ "roboto-fontface": "^0.10.0", "rxjs": "~6.6.7", "semver-compare-multi": "^1.0.3", - "tslib": "^2.3.0", + "tslib": "^2.3.1", "uuid": "^8.3.2", "zone.js": "~0.11.4" }, @@ -48,27 +48,27 @@ "@angular/compiler": "~12.1.4", "@angular/compiler-cli": "~12.1.4", "@angular/language-service": "~12.1.4", - "@ionic/angular-toolkit": "^4.0.0", - "@types/jasmine": "~3.8.2", + "@ionic/angular-toolkit": "^5.0.3", + "@types/jasmine": "~3.10.2", "@types/jasminewd2": "~2.0.10", - "@types/node": "^16.4.10", - "@types/uuid": "^8.3.1", - "@typescript-eslint/eslint-plugin": "4.29.0", - "@typescript-eslint/parser": "4.29.0", - "eslint": "^7.32.0", - "eslint-plugin-import": "2.23.4", - "eslint-plugin-jsdoc": "36.0.6", + "@types/node": "^16.11.10", + "@types/uuid": "^8.3.3", + "@typescript-eslint/eslint-plugin": "5.5.0", + "@typescript-eslint/parser": "5.5.0", + "eslint": "^8.3.0", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-jsdoc": "37.0.3", "eslint-plugin-prefer-arrow": "1.2.3", - "jasmine-core": "~3.8.0", + "jasmine-core": "~3.10.1", "jasmine-spec-reporter": "~7.0.0", - "karma": "~6.3.4", + "karma": "~6.3.9", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-coverage-istanbul-reporter": "~3.0.3", "karma-jasmine": "~4.0.1", "karma-jasmine-html-reporter": "^1.7.0", "protractor": "~7.0.0", - "ts-node": "~10.1.0", + "ts-node": "~10.4.0", "typescript": "~4.3.5" } }, @@ -77,7 +77,6 @@ "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1200.5.tgz", "integrity": "sha512-222VZ4OeaDK3vON8V5m+w15SRWfUs5uOb4H9ij/H9/6tyHD83uWfCDoOGg+ax4wJVdWEFJIS+Vn4ijGcZCq9WQ==", "dev": true, - "peer": true, "dependencies": { "@angular-devkit/core": "12.0.5", "rxjs": "6.6.7" @@ -2644,6 +2643,27 @@ "node": ">=6.9.0" } }, + "node_modules/@cspotcode/source-map-consumer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", + "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", + "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-consumer": "0.8.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@csstools/convert-colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", @@ -2663,37 +2683,37 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.10.7", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.10.7.tgz", - "integrity": "sha512-aNKZEoMESDzOBjKxCWrFuG50mcpMeKVBnBNko4+IZZ5t9zXYs8GT1KB0ZaOq1YUsKumDRc6YII/TQm309MJ0KQ==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.12.0.tgz", + "integrity": "sha512-Gw4/j9v36IKY8ET+W0GoOzrRw17xjf21EIFFRL3zx21fF5MnqmeNpNi+PU/LKjqLpPb2Pw2XdlJbYM31VVo/PQ==", "dev": true, "dependencies": { - "comment-parser": "1.2.3", + "comment-parser": "1.2.4", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "1.1.1" + "jsdoc-type-pratt-parser": "2.0.0" }, "engines": { - "node": "^12.20 || ^14.14.0 || ^16" + "node": "^12 || ^14 || ^16 || ^17" } }, "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.4.tgz", + "integrity": "sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q==", "dev": true, "dependencies": { "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", + "debug": "^4.3.2", + "espree": "^9.0.0", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc/node_modules/ajv": { @@ -2712,10 +2732,27 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/@eslint/eslintrc/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -2755,9 +2792,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", + "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.0", @@ -2769,17 +2806,17 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, "node_modules/@ionic/angular": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.8.1.tgz", - "integrity": "sha512-VKgq71yPPyiS+wN8cyfTsVmp0EEamUAGaYq7lZuupnhZ+/8LNyo5Xp/kl8txtCnGFTNIDZpMpmI8+/7KnU8Zuw==", + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.9.1.tgz", + "integrity": "sha512-ob5kSwauzlKirQAR0GFkz6xj932LwLqvQm4mivjosFwfeG8+tErKpACmi/AEAa/d5Dnr4cSMiKf+nCMZpA2pOQ==", "dependencies": { - "@ionic/core": "5.8.1", + "@ionic/core": "5.9.1", "tslib": "^1.9.3" }, "peerDependencies": { @@ -2791,33 +2828,52 @@ } }, "node_modules/@ionic/angular-toolkit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ionic/angular-toolkit/-/angular-toolkit-4.0.0.tgz", - "integrity": "sha512-HGRAGUtc1YSwNZ/Q7X7c2QRyYM2AfsSm++OasPrMo3LnPRVr8OIsUih2ithEU7f3CXrViUR7j/Anu90zGsRgzg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@ionic/angular-toolkit/-/angular-toolkit-5.0.3.tgz", + "integrity": "sha512-xHVvB0FPkvzQ52B74EN8g0IhMj+rPl7oAMAd89P0ajlV3bvRfFyDimgx7HJDhl99qf9a7EhxjB65Yf6M/b1tnw==", "dev": true, "dependencies": { + "@angular-devkit/architect": ">=0.1200.0 <0.1300", + "@angular-devkit/build-angular": "^12.0.0", + "@angular-devkit/core": "^12.1.1", + "@angular-devkit/schematics": "^12.0.0", "@schematics/angular": "^12.0.0", - "cheerio": "1.0.0-rc.3", + "cheerio": "1.0.0-rc.10", "colorette": "1.1.0", - "copy-webpack-plugin": "^6.2.1", - "tapable": "^2.1.1", + "copy-webpack-plugin": "^9.0.1", + "tapable": "^2.2.0", "tslib": "^2.0.3", "ws": "^7.0.1" + } + }, + "node_modules/@ionic/angular-toolkit/node_modules/@angular-devkit/core": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-12.2.13.tgz", + "integrity": "sha512-9csMF0p+lTvlWnutxxTZ/+pDRMIbXk/TV4MGLbcqUPPfeG3dCRwErns73xLuMTwp9qO/KCLkFqNaM6cGOoqsDA==", + "dev": true, + "dependencies": { + "ajv": "8.6.2", + "ajv-formats": "2.1.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", + "source-map": "0.7.3" }, - "peerDependencies": { - "@angular-devkit/architect": "^0.1200.0", - "@angular-devkit/schematics": "^12.0.0" + "engines": { + "node": "^12.14.1 || >=14.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, "node_modules/@ionic/angular-toolkit/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", "uri-js": "^4.2.2" }, "funding": { @@ -2825,49 +2881,58 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@ionic/angular-toolkit/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/@ionic/angular-toolkit/node_modules/ajv-formats": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.0.tgz", + "integrity": "sha512-USH2jBb+C/hIpwD2iRjp0pe0k+MvzG0mlSn/FIdCgQhUb9ALPRjt2KIQdfZDS9r0ZIeUAg7gOu9KL0PFqGqr5Q==", "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, "peerDependencies": { - "ajv": "^6.9.1" + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, "node_modules/@ionic/angular-toolkit/node_modules/copy-webpack-plugin": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz", - "integrity": "sha512-MXyPCjdPVx5iiWyl40Va3JGh27bKzOTNY3NjUTrosD2q7dR/cLD0013uqJ3BpFbUjyONINjb6qI7nDIJujrMbA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.1.0.tgz", + "integrity": "sha512-rxnR7PaGigJzhqETHGmAcxKnLZSR5u1Y3/bcIv/1FnqXedcL/E2ewK7ZCNrArJKCiSv8yVXhTqetJh8inDvfsA==", "dev": true, "dependencies": { - "cacache": "^15.0.5", - "fast-glob": "^3.2.4", - "find-cache-dir": "^3.3.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.1", + "globby": "^11.0.3", "normalize-path": "^3.0.0", - "p-limit": "^3.0.2", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "webpack-sources": "^1.4.3" + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">= 12.13.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" + "webpack": "^5.1.0" } }, - "node_modules/@ionic/angular-toolkit/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "node_modules/@ionic/angular-toolkit/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } }, "node_modules/@ionic/angular-toolkit/node_modules/schema-utils": { "version": "3.1.1", @@ -2887,15 +2952,55 @@ "url": "https://opencollective.com/webpack" } }, + "node_modules/@ionic/angular-toolkit/node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@ionic/angular-toolkit/node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/@ionic/angular-toolkit/node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/@ionic/angular-toolkit/node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, "node_modules/@ionic/angular/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@ionic/core": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.8.1.tgz", - "integrity": "sha512-twAPHhrGMYvHW0NgebMBfN70xDUkFxW+Zcxeus7jrhuJh1uWp/3MwawLi4InCwpyuFQiBo8yAaqC1hB1wTZmLA==", + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.9.1.tgz", + "integrity": "sha512-/jVO0N5ESs/iPFcrFZ/JFvW2Uh0ZV1uLFT2vtbtMfCaOMZK8Bmt36ZR1cDDFTuw14vPOLz/1wI2pbQru48JpkQ==", "dependencies": { "@stencil/core": "^2.4.0", "ionicons": "^5.5.3", @@ -3504,9 +3609,9 @@ } }, "node_modules/@stencil/core": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.8.1.tgz", - "integrity": "sha512-iv9J6oLO/lv7/aO45M05yw3pp1J7olY400vlOZgdMVs3s5zHfalY1ZPYM0KyqU4+7DZuadKYbd0aQZ/g2PInZw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.11.0.tgz", + "integrity": "sha512-/IubCWhVXCguyMUp/3zGrg3c882+RJNg/zpiKfyfJL3kRCOwe+/MD8OoAXVGdd+xAohZKIi1Ik+EHFlsptsjLg==", "bin": { "stencil": "bin/stencil" }, @@ -3566,9 +3671,9 @@ } }, "node_modules/@types/component-emitter": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.10.tgz", - "integrity": "sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==", + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", "dev": true }, "node_modules/@types/cookie": { @@ -3620,9 +3725,9 @@ } }, "node_modules/@types/jasmine": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.8.2.tgz", - "integrity": "sha512-u5h7dqzy2XpXTzhOzSNQUQpKGFvROF8ElNX9P/TJvsHnTg/JvsAseVsGWQAQQldqanYaM+5kwxW909BBFAUYsg==", + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.10.2.tgz", + "integrity": "sha512-qs4xjVm4V/XjM6owGm/x6TNmhGl5iKX8dkTdsgdgl9oFnqgzxLepnS7rN9Tdo7kDmnFD/VEqKrW57cGD2odbEg==", "dev": true }, "node_modules/@types/jasminewd2": { @@ -3653,9 +3758,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "16.9.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.6.tgz", - "integrity": "sha512-YHUZhBOMTM3mjFkXVcK+WwAcYmyhe1wL4lfqNtzI0b3qAy7yuSetnM7QJazgE5PFmgVTNGiLOgRFfJMqW7XpSQ==", + "version": "16.11.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.10.tgz", + "integrity": "sha512-3aRnHa1KlOEEhJ6+CvyHKK5vE9BcLGjtUpwvqYLRvYNQKMfabu3BwfJaA/SLW8dxe28LsNDjtHwePTuzn3gmOA==", "dev": true }, "node_modules/@types/parse-json": { @@ -3683,9 +3788,9 @@ "dev": true }, "node_modules/@types/uuid": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", - "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.3.tgz", + "integrity": "sha512-0LbEEx1zxrYB3pgpd1M5lEhLcXjKJnYghvhTRgaBeUivLHMDM1TzF3IJ6hXU2+8uA4Xz+5BA63mtZo5DjVT8iA==", "dev": true }, "node_modules/@types/webpack-sources": { @@ -3709,29 +3814,30 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.0.tgz", - "integrity": "sha512-eiREtqWRZ8aVJcNru7cT/AMVnYd9a2UHsfZT8MR1dW3UUEg6jDv9EQ9Cq4CUPZesyQ58YUpoAADGv71jY8RwgA==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.5.0.tgz", + "integrity": "sha512-4bV6fulqbuaO9UMXU0Ia0o6z6if+kmMRW8rMRyfqXj/eGrZZRGedS4n0adeGNnjr8LKAM495hrQ7Tea52UWmQA==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "4.29.0", - "@typescript-eslint/scope-manager": "4.29.0", - "debug": "^4.3.1", + "@typescript-eslint/experimental-utils": "5.5.0", + "@typescript-eslint/scope-manager": "5.5.0", + "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.1.0", + "ignore": "^5.1.8", + "regexpp": "^3.2.0", "semver": "^7.3.5", "tsutils": "^3.21.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^4.0.0", - "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -3740,20 +3846,20 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/experimental-utils": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.0.tgz", - "integrity": "sha512-FpNVKykfeaIxlArLUP/yQfv/5/3rhl1ov6RWgud4OgbqWLkEq7lqgQU9iiavZRzpzCRQV4XddyFz3wFXdkiX9w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.5.0.tgz", + "integrity": "sha512-kjWeeVU+4lQ1SLYErRKV5yDXbWDPkpbzTUUlfAUifPYvpX0qZlrcCZ96/6oWxt3QxtK5WVhXz+KsnwW9cIW+3A==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.29.0", - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/typescript-estree": "4.29.0", + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.5.0", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/typescript-estree": "5.5.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3764,12 +3870,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3777,21 +3883,21 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.0.tgz", - "integrity": "sha512-8ZpNHDIOyqzzgZrQW9+xQ4k5hM62Xy2R4RPO3DQxMc5Rq5QkCdSpk/drka+DL9w6sXNzV5nrdlBmf8+x495QXQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.5.0.tgz", + "integrity": "sha512-pVn8btYUiYrjonhMAO0yG8lm7RApzy2L4RC7Td/mC/qFkyf6vRbGyZozoA94+w6D2Y2GRqpMoCWcwx/EUOzyoQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", "semver": "^7.3.5", "tsutils": "^3.21.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3803,6 +3909,23 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -3883,25 +4006,25 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.0.tgz", - "integrity": "sha512-+92YRNHFdXgq+GhWQPT2bmjX09X7EH36JfgN2/4wmhtwV/HPxozpCNst8jrWcngLtEVd/4zAwA6BKojAlf+YqA==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.5.0.tgz", + "integrity": "sha512-JsXBU+kgQOAgzUn2jPrLA+Rd0Y1dswOlX3hp8MuRO1hQDs6xgHtbCXEiAu7bz5hyVURxbXcA2draasMbNqrhmg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "4.29.0", - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/typescript-estree": "4.29.0", - "debug": "^4.3.1" + "@typescript-eslint/scope-manager": "5.5.0", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/typescript-estree": "5.5.0", + "debug": "^4.3.2" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -3910,12 +4033,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3923,21 +4046,21 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.0.tgz", - "integrity": "sha512-8ZpNHDIOyqzzgZrQW9+xQ4k5hM62Xy2R4RPO3DQxMc5Rq5QkCdSpk/drka+DL9w6sXNzV5nrdlBmf8+x495QXQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.5.0.tgz", + "integrity": "sha512-pVn8btYUiYrjonhMAO0yG8lm7RApzy2L4RC7Td/mC/qFkyf6vRbGyZozoA94+w6D2Y2GRqpMoCWcwx/EUOzyoQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", "semver": "^7.3.5", "tsutils": "^3.21.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3949,6 +4072,23 @@ } } }, + "node_modules/@typescript-eslint/parser/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/@typescript-eslint/parser/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -3971,16 +4111,16 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.0.tgz", - "integrity": "sha512-HPq7XAaDMM3DpmuijxLV9Io8/6pQnliiXMQUcAdjpJJSR+fdmbD/zHCd7hMkjJn04UQtCQBtshgxClzg6NIS2w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.5.0.tgz", + "integrity": "sha512-0/r656RmRLo7CbN4Mdd+xZyPJ/fPCKhYdU6mnZx+8msAD8nJSP8EyCFkzbd6vNVZzZvWlMYrSNekqGrCBqFQhg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0" + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -3988,12 +4128,12 @@ } }, "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -4079,16 +4219,16 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.0.tgz", - "integrity": "sha512-LoaofO1C/jAJYs0uEpYMXfHboGXzOJeV118X4OsZu9f7rG7Pr9B3+4HTU8+err81rADa4xfQmAxnRnPAI2jp+Q==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.5.0.tgz", + "integrity": "sha512-4GzJ1kRtsWzHhdM40tv0ZKHNSbkDhF0Woi/TDwVJX6UICwJItvP7ZTXbjTkCdrors7ww0sYe0t+cIKDAJwZ7Kw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "4.29.0", - "eslint-visitor-keys": "^2.0.0" + "@typescript-eslint/types": "5.5.0", + "eslint-visitor-keys": "^3.0.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -4096,18 +4236,27 @@ } }, "node_modules/@typescript-eslint/visitor-keys/node_modules/@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "node_modules/@webassemblyjs/ast": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", @@ -4298,9 +4447,9 @@ } }, "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz", + "integrity": "sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -4318,6 +4467,15 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/adjust-sourcemap-loader": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", @@ -4554,13 +4712,10 @@ "dev": true }, "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, "node_modules/aria-query": { "version": "4.2.2", @@ -4609,16 +4764,16 @@ "dev": true }, "node_modules/array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", + "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" + "is-string": "^1.0.7" }, "engines": { "node": ">= 0.4" @@ -4655,14 +4810,14 @@ } }, "node_modules/array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", + "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" + "es-abstract": "^1.19.0" }, "engines": { "node": ">= 0.4" @@ -4707,15 +4862,6 @@ "node": ">=0.10.0" } }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/async": { "version": "0.9.2", "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", @@ -4988,9 +5134,9 @@ } }, "node_modules/base64-arraybuffer": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", - "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", "dev": true, "engines": { "node": ">= 0.6.0" @@ -5461,20 +5607,40 @@ } }, "node_modules/cheerio": { - "version": "1.0.0-rc.3", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz", - "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", "dev": true, "dependencies": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.1", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash": "^4.15.0", - "parse5": "^3.0.1" + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" }, "engines": { - "node": ">= 0.6" + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", + "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "dev": true, + "dependencies": { + "css-select": "^4.1.3", + "css-what": "^5.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.7.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, "node_modules/chokidar": { @@ -5786,12 +5952,12 @@ } }, "node_modules/comment-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.2.3.tgz", - "integrity": "sha512-vnqDwBSXSsdAkGS5NjwMIPelE47q+UkEgWKHvCDNhVIIaQSUFY6sNnEYGzdoPGMdpV+7KR3ZkRd7oyWIjtuvJg==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.2.4.tgz", + "integrity": "sha512-pm0b+qv+CkWNriSTMsfnjChF9kH0kxz55y44Wo5le9qLxMj5xDQAaEd9ZN1ovSuk9CsrncWaFwgpOMg7ClJwkw==", "dev": true, "engines": { - "node": "^12.20 || ^14.14.0 || ^16" + "node": ">= 12.0.0" } }, "node_modules/commondir": { @@ -6211,12 +6377,6 @@ "node": ">=8" } }, - "node_modules/critters/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "node_modules/critters/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -6679,15 +6839,19 @@ } }, "node_modules/css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", "dev": true, "dependencies": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, "node_modules/css-tree": { @@ -6713,12 +6877,15 @@ } }, "node_modules/css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", "dev": true, "engines": { - "node": "*" + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, "node_modules/css/node_modules/source-map": { @@ -7226,9 +7393,9 @@ } }, "node_modules/date-fns": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.25.0.tgz", - "integrity": "sha512-ovYRFnTrbGPD4nqaEqescPEv1mNwvt+UTqI3Ay9SzNtey9NZnYu6E2qCcBBgJ6/2VF1zGGygpyTDITqpQQ5e+w==", + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.26.0.tgz", + "integrity": "sha512-VQI812dRi3cusdY/fhoBKvc6l2W8BPWU1FNVnFH9Nttjx4AFBRzfSVb/Eyc7jBT6e9sg1XtAGsYpBQ6c/jygbg==", "engines": { "node": ">=0.11" }, @@ -7548,38 +7715,58 @@ } }, "node_modules/dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", "dev": true, "dependencies": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, "node_modules/domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] }, "node_modules/domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", + "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", "dev": true, "dependencies": { - "domelementtype": "1" + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, "node_modules/domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", "dev": true, "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, "node_modules/ecc-jsbn": { @@ -7663,42 +7850,45 @@ } }, "node_modules/engine.io": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.1.1.tgz", - "integrity": "sha512-t2E9wLlssQjGw0nluF6aYyfX8LwYU8Jj0xct+pAhfWfv/YrBn6TSNtEYsgxHIfaMqfrLx07czcMg9bMN6di+3w==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.0.tgz", + "integrity": "sha512-ErhZOVu2xweCjEfYcTdkCnEYUiZgkAcBBAhW4jbIvNG8SLU3orAqoJCiytZjYF7eTpVmmCrLDjLIEaPlUAs1uw==", "dev": true, "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "2.0.0", "cookie": "~0.4.1", "cors": "~2.8.5", "debug": "~4.3.1", - "engine.io-parser": "~4.0.0", - "ws": "~7.4.2" + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" }, "engines": { "node": ">=10.0.0" } }, "node_modules/engine.io-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-4.0.3.tgz", - "integrity": "sha512-xEAAY0msNnESNPc00e19y5heTPX4y/TJ36gr8t1voOaNmTojP9b3oK3BbJLFufW2XFPQaaijpFewm2g2Um3uqA==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz", + "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==", "dev": true, "dependencies": { - "base64-arraybuffer": "0.1.4" + "base64-arraybuffer": "~1.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=10.0.0" } }, "node_modules/engine.io/node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", "dev": true, "engines": { - "node": ">=8.3.0" + "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -7745,10 +7935,13 @@ "dev": true }, "node_modules/entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } }, "node_modules/env-paths": { "version": "2.2.1", @@ -7787,9 +7980,9 @@ } }, "node_modules/es-abstract": { - "version": "1.18.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", - "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", "dev": true, "dependencies": { "call-bind": "^1.0.2", @@ -7803,7 +7996,9 @@ "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", "is-string": "^1.0.7", + "is-weakref": "^1.0.1", "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", @@ -7881,37 +8076,36 @@ } }, "node_modules/eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.3.0.tgz", + "integrity": "sha512-aIay56Ph6RxOTC7xyr59Kt3ewX185SaGnAr8eWukoPLeriCrvGjvAubxuvaXOfsxhtwV5g0uBOsyhAom4qJdww==", "dev": true, "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.0.4", + "@humanwhocodes/config-array": "^0.6.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.1.0", + "espree": "^9.1.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", + "glob-parent": "^6.0.1", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", @@ -7919,11 +8113,10 @@ "natural-compare": "^1.4.0", "optionator": "^0.9.1", "progress": "^2.0.0", - "regexpp": "^3.1.0", + "regexpp": "^3.2.0", "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -7931,7 +8124,7 @@ "eslint": "bin/eslint.js" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -7957,12 +8150,13 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", - "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.1.tgz", + "integrity": "sha512-fjoetBXQZq2tSTWZ9yWVl2KuFrTZZH3V+9iD1V1RfpDgxzJR+mPd/KZmMiA8gbPqdBzpNiEHOuT7IYEWxrH0zQ==", "dev": true, "dependencies": { "debug": "^3.2.7", + "find-up": "^2.1.0", "pkg-dir": "^2.0.0" }, "engines": { @@ -7979,32 +8173,30 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.23.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", - "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", + "version": "2.25.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.3.tgz", + "integrity": "sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==", "dev": true, "dependencies": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.1", - "find-up": "^2.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.1", "has": "^1.0.3", - "is-core-module": "^2.4.0", + "is-core-module": "^2.8.0", + "is-glob": "^4.0.3", "minimatch": "^3.0.4", - "object.values": "^1.1.3", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", + "object.values": "^1.1.5", "resolve": "^1.20.0", - "tsconfig-paths": "^3.9.0" + "tsconfig-paths": "^3.11.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -8035,26 +8227,26 @@ "dev": true }, "node_modules/eslint-plugin-jsdoc": { - "version": "36.0.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-36.0.6.tgz", - "integrity": "sha512-vOm27rI2SMfi1bOAYmzzGkanMCD/boquKwvN5ECi8EF9ASsXJwlnCzYtiOYpsDpbC2+6JXEHAmWMkqYNA3BWRw==", + "version": "37.0.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.0.3.tgz", + "integrity": "sha512-Qg/gIZAfcrM4Qu/JzcnxPGD45Je6wPLFzMZQboeqit/CL4aY6wuzBTkgUMiWXfw/PaPl+sb0GF1XdBlV23ReDA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "0.10.7", - "comment-parser": "1.2.3", + "@es-joy/jsdoccomment": "0.12.0", + "comment-parser": "1.2.4", "debug": "^4.3.2", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "^1.1.1", + "jsdoc-type-pratt-parser": "^2.0.0", "lodash": "^4.17.21", "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" }, "engines": { - "node": "^12.20 || ^14.14.0 || ^16" + "node": "^12 || ^14 || ^16 || ^17" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0" + "eslint": "^7.0.0 || ^8.0.0" } }, "node_modules/eslint-plugin-jsdoc/node_modules/debug": { @@ -8123,15 +8315,6 @@ "node": ">=10" } }, - "node_modules/eslint/node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, "node_modules/eslint/node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -8191,6 +8374,23 @@ "node": ">=7.0.0" } }, + "node_modules/eslint/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -8203,28 +8403,47 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", + "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/eslint/node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", "dev": true, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, "node_modules/eslint/node_modules/globals": { @@ -8291,39 +8510,26 @@ } }, "node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.1.0.tgz", + "integrity": "sha512-ZgYLvCS1wxOczBYGcQT9DDWgicXwJ4dbocr9uYN+/eresBAUuBu+O4WzB21ufQ/JqQT8gyp7hJ3z8SHii32mTQ==", "dev": true, "dependencies": { - "acorn": "^7.4.0", + "acorn": "^8.6.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "eslint-visitor-keys": "^3.1.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/esquery": { @@ -9736,17 +9942,22 @@ "dev": true }, "node_modules/htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], "dependencies": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" } }, "node_modules/http-cache-semantics": { @@ -10353,11 +10564,23 @@ } }, "node_modules/ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", "dependencies": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" + } + }, + "node_modules/ionicons/node_modules/@stencil/core": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==", + "bin": { + "stencil": "bin/stencil" + }, + "engines": { + "node": ">=12.10.0", + "npm": ">=6.0.0" } }, "node_modules/ip": { @@ -10486,9 +10709,9 @@ } }, "node_modules/is-core-module": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", - "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -10584,9 +10807,9 @@ } }, "node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { "is-extglob": "^2.1.1" @@ -10712,6 +10935,15 @@ "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", "dev": true }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -10768,6 +11000,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-weakref": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", + "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-what": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", @@ -10971,9 +11215,9 @@ } }, "node_modules/jasmine-core": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.8.0.tgz", - "integrity": "sha512-zl0nZWDrmbCiKns0NcjkFGYkVTGCPUgoHypTaj+G2AzaWus7QGoXARSlYsSle2VRpSdfJmM+hzmFKzQNhF2kHg==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.10.1.tgz", + "integrity": "sha512-ooZWSDVAdh79Rrj4/nnfklL3NQVra0BcuhcuWoAwwi+znLDoUeH87AFfeX8s+YeYi6xlv5nveRyaA1v7CintfA==", "dev": true }, "node_modules/jasmine-spec-reporter": { @@ -11045,13 +11289,12 @@ "dev": true }, "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" @@ -11064,9 +11307,9 @@ "dev": true }, "node_modules/jsdoc-type-pratt-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.1.1.tgz", - "integrity": "sha512-uelRmpghNwPBuZScwgBG/OzodaFk5RbO5xaivBdsAY70icWfShwZ7PCMO0x1zSkOa8T1FzHThmrdoyg/0AwV5g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.0.0.tgz", + "integrity": "sha512-sUuj2j48wxrEpbFjDp1sAesAxPiLT+z0SWVmMafyIINs6Lj5gIPKh3VrkBZu4E/Dv+wHpOot0m6H8zlHQjwqeQ==", "dev": true, "engines": { "node": ">=12.0.0" @@ -11218,9 +11461,9 @@ } }, "node_modules/karma": { - "version": "6.3.4", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.4.tgz", - "integrity": "sha512-hbhRogUYIulfkBTZT7xoPrCYhRBnBoqbbL4fszWD0ReFGUxU+LYBr3dwKdAluaDQ/ynT9/7C+Lf7pPNW4gSx4Q==", + "version": "6.3.9", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.9.tgz", + "integrity": "sha512-E/MqdLM9uVIhfuyVnrhlGBu4miafBdXEAEqCmwdEMh3n17C7UWC/8Kvm3AYKr91gc7scutekZ0xv6rxRaUCtnw==", "dev": true, "dependencies": { "body-parser": "^1.19.0", @@ -11241,10 +11484,10 @@ "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^3.1.0", + "socket.io": "^4.2.0", "source-map": "^0.6.1", "tmp": "^0.2.1", - "ua-parser-js": "^0.7.28", + "ua-parser-js": "^0.7.30", "yargs": "^16.1.1" }, "bin": { @@ -11641,43 +11884,6 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/loader-runner": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", @@ -11725,12 +11931,6 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -11749,12 +11949,6 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, "node_modules/lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", @@ -12635,33 +12829,6 @@ "node": ">=6" } }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -12814,12 +12981,15 @@ } }, "node_modules/nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", "dev": true, "dependencies": { - "boolbase": "~1.0.0" + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, "node_modules/num2fraction": { @@ -13029,14 +13199,14 @@ } }, "node_modules/object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" }, "engines": { "node": ">= 0.4" @@ -13430,13 +13600,10 @@ } }, "node_modules/parse5": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", - "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", - "dev": true, - "dependencies": { - "@types/node": "*" - } + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true }, "node_modules/parse5-html-rewriting-stream": { "version": "6.0.1", @@ -13448,12 +13615,6 @@ "parse5-sax-parser": "^6.0.1" } }, - "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "node_modules/parse5-htmlparser2-tree-adapter": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", @@ -13463,12 +13624,6 @@ "parse5": "^6.0.1" } }, - "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "node_modules/parse5-sax-parser": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", @@ -13478,12 +13633,6 @@ "parse5": "^6.0.1" } }, - "node_modules/parse5-sax-parser/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -13622,18 +13771,6 @@ "node": ">=4" } }, - "node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -16498,54 +16635,6 @@ "node": ">=10" } }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -17567,50 +17656,6 @@ "node": ">=8" } }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -17832,29 +17877,26 @@ } }, "node_modules/socket.io": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.1.2.tgz", - "integrity": "sha512-JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.0.tgz", + "integrity": "sha512-bnpJxswR9ov0Bw6ilhCvO38/1WPtE3eA2dtxi2Iq4/sFebiDJQzgKNYA7AuVVdGW09nrESXd90NbZqtDd9dzRQ==", "dev": true, "dependencies": { - "@types/cookie": "^0.4.0", - "@types/cors": "^2.8.8", - "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "~2.0.0", - "debug": "~4.3.1", - "engine.io": "~4.1.0", - "socket.io-adapter": "~2.1.0", - "socket.io-parser": "~4.0.3" + "debug": "~4.3.2", + "engine.io": "~6.1.0", + "socket.io-adapter": "~2.3.3", + "socket.io-parser": "~4.0.4" }, "engines": { "node": ">=10.0.0" } }, "node_modules/socket.io-adapter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz", - "integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", "dev": true }, "node_modules/socket.io-parser": { @@ -17871,6 +17913,23 @@ "node": ">=10.0.0" } }, + "node_modules/socket.io/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/sockjs": { "version": "0.3.21", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz", @@ -18027,16 +18086,6 @@ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, "node_modules/spdx-exceptions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", @@ -18101,12 +18150,6 @@ "node": ">=0.10.0" } }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, "node_modules/sshpk": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", @@ -18378,11 +18421,11 @@ } }, "node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" @@ -18610,110 +18653,6 @@ "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", "dev": true }, - "node_modules/svgo/node_modules/css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/svgo/node_modules/domhandler": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", - "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/svgo/node_modules/nth-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", - "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, "node_modules/symbol-observable": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", @@ -18723,23 +18662,6 @@ "node": ">=0.10" } }, - "node_modules/table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dev": true, - "dependencies": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -18999,20 +18921,22 @@ } }, "node_modules/ts-node": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.1.0.tgz", - "integrity": "sha512-6szn3+J9WyG2hE+5W8e0ruZrzyk1uFLYye6IGMBadnOzDh8aP7t8CbFpsfCiEx2+wMixAhjFt7lOZC4+l+WbEA==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.4.0.tgz", + "integrity": "sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==", "dev": true, "dependencies": { + "@cspotcode/source-map-support": "0.7.0", "@tsconfig/node10": "^1.0.7", "@tsconfig/node12": "^1.0.7", "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.1", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", "arg": "^4.1.0", "create-require": "^1.1.0", "diff": "^4.0.1", "make-error": "^1.1.1", - "source-map-support": "^0.5.17", "yn": "3.1.1" }, "bin": { @@ -19022,9 +18946,6 @@ "ts-node-transpile-only": "dist/bin-transpile.js", "ts-script": "dist/bin-script-deprecated.js" }, - "engines": { - "node": ">=12.0.0" - }, "peerDependencies": { "@swc/core": ">=1.2.50", "@swc/wasm": ">=1.2.50", @@ -19138,9 +19059,9 @@ } }, "node_modules/ua-parser-js": { - "version": "0.7.28", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz", - "integrity": "sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g==", + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", "dev": true, "funding": [ { @@ -19419,16 +19340,6 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, "node_modules/validate-npm-package-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", @@ -20609,18 +20520,6 @@ } } }, - "node_modules/webpack/node_modules/acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/webpack/node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -21008,7 +20907,6 @@ "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1200.5.tgz", "integrity": "sha512-222VZ4OeaDK3vON8V5m+w15SRWfUs5uOb4H9ij/H9/6tyHD83uWfCDoOGg+ax4wJVdWEFJIS+Vn4ijGcZCq9WQ==", "dev": true, - "peer": true, "requires": { "@angular-devkit/core": "12.0.5", "rxjs": "6.6.7" @@ -22783,6 +22681,21 @@ "to-fast-properties": "^2.0.0" } }, + "@cspotcode/source-map-consumer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", + "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==", + "dev": true + }, + "@cspotcode/source-map-support": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", + "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", + "dev": true, + "requires": { + "@cspotcode/source-map-consumer": "0.8.0" + } + }, "@csstools/convert-colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", @@ -22796,29 +22709,29 @@ "dev": true }, "@es-joy/jsdoccomment": { - "version": "0.10.7", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.10.7.tgz", - "integrity": "sha512-aNKZEoMESDzOBjKxCWrFuG50mcpMeKVBnBNko4+IZZ5t9zXYs8GT1KB0ZaOq1YUsKumDRc6YII/TQm309MJ0KQ==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.12.0.tgz", + "integrity": "sha512-Gw4/j9v36IKY8ET+W0GoOzrRw17xjf21EIFFRL3zx21fF5MnqmeNpNi+PU/LKjqLpPb2Pw2XdlJbYM31VVo/PQ==", "dev": true, "requires": { - "comment-parser": "1.2.3", + "comment-parser": "1.2.4", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "1.1.1" + "jsdoc-type-pratt-parser": "2.0.0" } }, "@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.4.tgz", + "integrity": "sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q==", "dev": true, "requires": { "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", + "debug": "^4.3.2", + "espree": "^9.0.0", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, @@ -22835,10 +22748,19 @@ "uri-js": "^4.2.2" } }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -22865,9 +22787,9 @@ } }, "@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", + "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.0", @@ -22876,17 +22798,17 @@ } }, "@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, "@ionic/angular": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.8.1.tgz", - "integrity": "sha512-VKgq71yPPyiS+wN8cyfTsVmp0EEamUAGaYq7lZuupnhZ+/8LNyo5Xp/kl8txtCnGFTNIDZpMpmI8+/7KnU8Zuw==", + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.9.1.tgz", + "integrity": "sha512-ob5kSwauzlKirQAR0GFkz6xj932LwLqvQm4mivjosFwfeG8+tErKpACmi/AEAa/d5Dnr4cSMiKf+nCMZpA2pOQ==", "requires": { - "@ionic/core": "5.8.1", + "@ionic/core": "5.9.1", "tslib": "^1.9.3" }, "dependencies": { @@ -22898,63 +22820,81 @@ } }, "@ionic/angular-toolkit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ionic/angular-toolkit/-/angular-toolkit-4.0.0.tgz", - "integrity": "sha512-HGRAGUtc1YSwNZ/Q7X7c2QRyYM2AfsSm++OasPrMo3LnPRVr8OIsUih2ithEU7f3CXrViUR7j/Anu90zGsRgzg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@ionic/angular-toolkit/-/angular-toolkit-5.0.3.tgz", + "integrity": "sha512-xHVvB0FPkvzQ52B74EN8g0IhMj+rPl7oAMAd89P0ajlV3bvRfFyDimgx7HJDhl99qf9a7EhxjB65Yf6M/b1tnw==", "dev": true, "requires": { + "@angular-devkit/architect": ">=0.1200.0 <0.1300", + "@angular-devkit/build-angular": "^12.0.0", + "@angular-devkit/core": "^12.1.1", + "@angular-devkit/schematics": "^12.0.0", "@schematics/angular": "^12.0.0", - "cheerio": "1.0.0-rc.3", + "cheerio": "1.0.0-rc.10", "colorette": "1.1.0", - "copy-webpack-plugin": "^6.2.1", - "tapable": "^2.1.1", + "copy-webpack-plugin": "^9.0.1", + "tapable": "^2.2.0", "tslib": "^2.0.3", "ws": "^7.0.1" }, "dependencies": { + "@angular-devkit/core": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-12.2.13.tgz", + "integrity": "sha512-9csMF0p+lTvlWnutxxTZ/+pDRMIbXk/TV4MGLbcqUPPfeG3dCRwErns73xLuMTwp9qO/KCLkFqNaM6cGOoqsDA==", + "dev": true, + "requires": { + "ajv": "8.6.2", + "ajv-formats": "2.1.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", + "source-map": "0.7.3" + } + }, "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", "uri-js": "^4.2.2" } }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "ajv-formats": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.0.tgz", + "integrity": "sha512-USH2jBb+C/hIpwD2iRjp0pe0k+MvzG0mlSn/FIdCgQhUb9ALPRjt2KIQdfZDS9r0ZIeUAg7gOu9KL0PFqGqr5Q==", "dev": true, - "requires": {} + "requires": { + "ajv": "^8.0.0" + } }, "copy-webpack-plugin": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz", - "integrity": "sha512-MXyPCjdPVx5iiWyl40Va3JGh27bKzOTNY3NjUTrosD2q7dR/cLD0013uqJ3BpFbUjyONINjb6qI7nDIJujrMbA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.1.0.tgz", + "integrity": "sha512-rxnR7PaGigJzhqETHGmAcxKnLZSR5u1Y3/bcIv/1FnqXedcL/E2ewK7ZCNrArJKCiSv8yVXhTqetJh8inDvfsA==", "dev": true, "requires": { - "cacache": "^15.0.5", - "fast-glob": "^3.2.4", - "find-cache-dir": "^3.3.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.1", + "globby": "^11.0.3", "normalize-path": "^3.0.0", - "p-limit": "^3.0.2", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "webpack-sources": "^1.4.3" + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0" } }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } }, "schema-utils": { "version": "3.1.1", @@ -22965,14 +22905,50 @@ "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", "ajv-keywords": "^3.5.2" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" } } } }, "@ionic/core": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.8.1.tgz", - "integrity": "sha512-twAPHhrGMYvHW0NgebMBfN70xDUkFxW+Zcxeus7jrhuJh1uWp/3MwawLi4InCwpyuFQiBo8yAaqC1hB1wTZmLA==", + "version": "5.9.1", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.9.1.tgz", + "integrity": "sha512-/jVO0N5ESs/iPFcrFZ/JFvW2Uh0ZV1uLFT2vtbtMfCaOMZK8Bmt36ZR1cDDFTuw14vPOLz/1wI2pbQru48JpkQ==", "requires": { "@stencil/core": "^2.4.0", "ionicons": "^5.5.3", @@ -23448,9 +23424,9 @@ } }, "@stencil/core": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.8.1.tgz", - "integrity": "sha512-iv9J6oLO/lv7/aO45M05yw3pp1J7olY400vlOZgdMVs3s5zHfalY1ZPYM0KyqU4+7DZuadKYbd0aQZ/g2PInZw==" + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.11.0.tgz", + "integrity": "sha512-/IubCWhVXCguyMUp/3zGrg3c882+RJNg/zpiKfyfJL3kRCOwe+/MD8OoAXVGdd+xAohZKIi1Ik+EHFlsptsjLg==" }, "@tootallnate/once": { "version": "1.1.2", @@ -23497,9 +23473,9 @@ } }, "@types/component-emitter": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.10.tgz", - "integrity": "sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==", + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", "dev": true }, "@types/cookie": { @@ -23551,9 +23527,9 @@ } }, "@types/jasmine": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.8.2.tgz", - "integrity": "sha512-u5h7dqzy2XpXTzhOzSNQUQpKGFvROF8ElNX9P/TJvsHnTg/JvsAseVsGWQAQQldqanYaM+5kwxW909BBFAUYsg==", + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.10.2.tgz", + "integrity": "sha512-qs4xjVm4V/XjM6owGm/x6TNmhGl5iKX8dkTdsgdgl9oFnqgzxLepnS7rN9Tdo7kDmnFD/VEqKrW57cGD2odbEg==", "dev": true }, "@types/jasminewd2": { @@ -23584,9 +23560,9 @@ "dev": true }, "@types/node": { - "version": "16.9.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.6.tgz", - "integrity": "sha512-YHUZhBOMTM3mjFkXVcK+WwAcYmyhe1wL4lfqNtzI0b3qAy7yuSetnM7QJazgE5PFmgVTNGiLOgRFfJMqW7XpSQ==", + "version": "16.11.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.10.tgz", + "integrity": "sha512-3aRnHa1KlOEEhJ6+CvyHKK5vE9BcLGjtUpwvqYLRvYNQKMfabu3BwfJaA/SLW8dxe28LsNDjtHwePTuzn3gmOA==", "dev": true }, "@types/parse-json": { @@ -23614,9 +23590,9 @@ "dev": true }, "@types/uuid": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", - "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.3.tgz", + "integrity": "sha512-0LbEEx1zxrYB3pgpd1M5lEhLcXjKJnYghvhTRgaBeUivLHMDM1TzF3IJ6hXU2+8uA4Xz+5BA63mtZo5DjVT8iA==", "dev": true }, "@types/webpack-sources": { @@ -23639,55 +23615,65 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.0.tgz", - "integrity": "sha512-eiREtqWRZ8aVJcNru7cT/AMVnYd9a2UHsfZT8MR1dW3UUEg6jDv9EQ9Cq4CUPZesyQ58YUpoAADGv71jY8RwgA==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.5.0.tgz", + "integrity": "sha512-4bV6fulqbuaO9UMXU0Ia0o6z6if+kmMRW8rMRyfqXj/eGrZZRGedS4n0adeGNnjr8LKAM495hrQ7Tea52UWmQA==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.29.0", - "@typescript-eslint/scope-manager": "4.29.0", - "debug": "^4.3.1", + "@typescript-eslint/experimental-utils": "5.5.0", + "@typescript-eslint/scope-manager": "5.5.0", + "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.1.0", + "ignore": "^5.1.8", + "regexpp": "^3.2.0", "semver": "^7.3.5", "tsutils": "^3.21.0" }, "dependencies": { "@typescript-eslint/experimental-utils": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.0.tgz", - "integrity": "sha512-FpNVKykfeaIxlArLUP/yQfv/5/3rhl1ov6RWgud4OgbqWLkEq7lqgQU9iiavZRzpzCRQV4XddyFz3wFXdkiX9w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.5.0.tgz", + "integrity": "sha512-kjWeeVU+4lQ1SLYErRKV5yDXbWDPkpbzTUUlfAUifPYvpX0qZlrcCZ96/6oWxt3QxtK5WVhXz+KsnwW9cIW+3A==", "dev": true, "requires": { - "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.29.0", - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/typescript-estree": "4.29.0", + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.5.0", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/typescript-estree": "5.5.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.0.tgz", - "integrity": "sha512-8ZpNHDIOyqzzgZrQW9+xQ4k5hM62Xy2R4RPO3DQxMc5Rq5QkCdSpk/drka+DL9w6sXNzV5nrdlBmf8+x495QXQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.5.0.tgz", + "integrity": "sha512-pVn8btYUiYrjonhMAO0yG8lm7RApzy2L4RC7Td/mC/qFkyf6vRbGyZozoA94+w6D2Y2GRqpMoCWcwx/EUOzyoQ==", "dev": true, "requires": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", "semver": "^7.3.5", "tsutils": "^3.21.0" } }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -23742,38 +23728,47 @@ } }, "@typescript-eslint/parser": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.0.tgz", - "integrity": "sha512-+92YRNHFdXgq+GhWQPT2bmjX09X7EH36JfgN2/4wmhtwV/HPxozpCNst8jrWcngLtEVd/4zAwA6BKojAlf+YqA==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.5.0.tgz", + "integrity": "sha512-JsXBU+kgQOAgzUn2jPrLA+Rd0Y1dswOlX3hp8MuRO1hQDs6xgHtbCXEiAu7bz5hyVURxbXcA2draasMbNqrhmg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.29.0", - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/typescript-estree": "4.29.0", - "debug": "^4.3.1" + "@typescript-eslint/scope-manager": "5.5.0", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/typescript-estree": "5.5.0", + "debug": "^4.3.2" }, "dependencies": { "@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.0.tgz", - "integrity": "sha512-8ZpNHDIOyqzzgZrQW9+xQ4k5hM62Xy2R4RPO3DQxMc5Rq5QkCdSpk/drka+DL9w6sXNzV5nrdlBmf8+x495QXQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.5.0.tgz", + "integrity": "sha512-pVn8btYUiYrjonhMAO0yG8lm7RApzy2L4RC7Td/mC/qFkyf6vRbGyZozoA94+w6D2Y2GRqpMoCWcwx/EUOzyoQ==", "dev": true, "requires": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0", - "debug": "^4.3.1", - "globby": "^11.0.3", - "is-glob": "^4.0.1", + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0", + "debug": "^4.3.2", + "globby": "^11.0.4", + "is-glob": "^4.0.3", "semver": "^7.3.5", "tsutils": "^3.21.0" } }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -23792,19 +23787,19 @@ } }, "@typescript-eslint/scope-manager": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.0.tgz", - "integrity": "sha512-HPq7XAaDMM3DpmuijxLV9Io8/6pQnliiXMQUcAdjpJJSR+fdmbD/zHCd7hMkjJn04UQtCQBtshgxClzg6NIS2w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.5.0.tgz", + "integrity": "sha512-0/r656RmRLo7CbN4Mdd+xZyPJ/fPCKhYdU6mnZx+8msAD8nJSP8EyCFkzbd6vNVZzZvWlMYrSNekqGrCBqFQhg==", "dev": true, "requires": { - "@typescript-eslint/types": "4.29.0", - "@typescript-eslint/visitor-keys": "4.29.0" + "@typescript-eslint/types": "5.5.0", + "@typescript-eslint/visitor-keys": "5.5.0" }, "dependencies": { "@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", "dev": true } } @@ -23858,19 +23853,25 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.0.tgz", - "integrity": "sha512-LoaofO1C/jAJYs0uEpYMXfHboGXzOJeV118X4OsZu9f7rG7Pr9B3+4HTU8+err81rADa4xfQmAxnRnPAI2jp+Q==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.5.0.tgz", + "integrity": "sha512-4GzJ1kRtsWzHhdM40tv0ZKHNSbkDhF0Woi/TDwVJX6UICwJItvP7ZTXbjTkCdrors7ww0sYe0t+cIKDAJwZ7Kw==", "dev": true, "requires": { - "@typescript-eslint/types": "4.29.0", - "eslint-visitor-keys": "^2.0.0" + "@typescript-eslint/types": "5.5.0", + "eslint-visitor-keys": "^3.0.0" }, "dependencies": { "@typescript-eslint/types": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.0.tgz", - "integrity": "sha512-2YJM6XfWfi8pgU2HRhTp7WgRw78TCRO3dOmSpAvIQ8MOv4B46JD2chnhpNT7Jq8j0APlIbzO1Bach734xxUl4A==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.5.0.tgz", + "integrity": "sha512-OaYTqkW3GnuHxqsxxJ6KypIKd5Uw7bFiQJZRyNi1jbMJnK3Hc/DR4KwB6KJj6PBRkJJoaNwzMNv9vtTk87JhOg==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", "dev": true } } @@ -24062,9 +24063,9 @@ } }, "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz", + "integrity": "sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==", "dev": true }, "acorn-jsx": { @@ -24074,6 +24075,12 @@ "dev": true, "requires": {} }, + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true + }, "adjust-sourcemap-loader": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", @@ -24261,13 +24268,10 @@ "dev": true }, "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, "aria-query": { "version": "4.2.2", @@ -24304,16 +24308,16 @@ "dev": true }, "array-includes": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", - "integrity": "sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", + "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", + "es-abstract": "^1.19.1", "get-intrinsic": "^1.1.1", - "is-string": "^1.0.5" + "is-string": "^1.0.7" } }, "array-union": { @@ -24335,14 +24339,14 @@ "dev": true }, "array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", + "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, "requires": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" + "es-abstract": "^1.19.0" } }, "arrify": { @@ -24372,12 +24376,6 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, "async": { "version": "0.9.2", "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", @@ -24595,9 +24593,9 @@ } }, "base64-arraybuffer": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", - "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", "dev": true }, "base64-js": { @@ -24976,17 +24974,31 @@ } }, "cheerio": { - "version": "1.0.0-rc.3", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz", - "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "dev": true, + "requires": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + } + }, + "cheerio-select": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", + "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", "dev": true, "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.1", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash": "^4.15.0", - "parse5": "^3.0.1" + "css-select": "^4.1.3", + "css-what": "^5.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.7.0" } }, "chokidar": { @@ -25230,9 +25242,9 @@ "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" }, "comment-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.2.3.tgz", - "integrity": "sha512-vnqDwBSXSsdAkGS5NjwMIPelE47q+UkEgWKHvCDNhVIIaQSUFY6sNnEYGzdoPGMdpV+7KR3ZkRd7oyWIjtuvJg==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.2.4.tgz", + "integrity": "sha512-pm0b+qv+CkWNriSTMsfnjChF9kH0kxz55y44Wo5le9qLxMj5xDQAaEd9ZN1ovSuk9CsrncWaFwgpOMg7ClJwkw==", "dev": true }, "commondir": { @@ -25566,12 +25578,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -25915,15 +25921,16 @@ } }, "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", "dev": true, "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" } }, "css-tree": { @@ -25945,9 +25952,9 @@ } }, "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", "dev": true }, "cssdb": { @@ -26306,9 +26313,9 @@ } }, "date-fns": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.25.0.tgz", - "integrity": "sha512-ovYRFnTrbGPD4nqaEqescPEv1mNwvt+UTqI3Ay9SzNtey9NZnYu6E2qCcBBgJ6/2VF1zGGygpyTDITqpQQ5e+w==" + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.26.0.tgz", + "integrity": "sha512-VQI812dRi3cusdY/fhoBKvc6l2W8BPWU1FNVnFH9Nttjx4AFBRzfSVb/Eyc7jBT6e9sg1XtAGsYpBQ6c/jygbg==" }, "date-format": { "version": "3.0.0", @@ -26561,38 +26568,40 @@ } }, "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", "dev": true, "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" } }, "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", "dev": true }, "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", + "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", "dev": true, "requires": { - "domelementtype": "1" + "domelementtype": "^2.2.0" } }, "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" } }, "ecc-jsbn": { @@ -26664,36 +26673,39 @@ } }, "engine.io": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.1.1.tgz", - "integrity": "sha512-t2E9wLlssQjGw0nluF6aYyfX8LwYU8Jj0xct+pAhfWfv/YrBn6TSNtEYsgxHIfaMqfrLx07czcMg9bMN6di+3w==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.0.tgz", + "integrity": "sha512-ErhZOVu2xweCjEfYcTdkCnEYUiZgkAcBBAhW4jbIvNG8SLU3orAqoJCiytZjYF7eTpVmmCrLDjLIEaPlUAs1uw==", "dev": true, "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "2.0.0", "cookie": "~0.4.1", "cors": "~2.8.5", "debug": "~4.3.1", - "engine.io-parser": "~4.0.0", - "ws": "~7.4.2" + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" }, "dependencies": { "ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", "dev": true, "requires": {} } } }, "engine.io-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-4.0.3.tgz", - "integrity": "sha512-xEAAY0msNnESNPc00e19y5heTPX4y/TJ36gr8t1voOaNmTojP9b3oK3BbJLFufW2XFPQaaijpFewm2g2Um3uqA==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz", + "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==", "dev": true, "requires": { - "base64-arraybuffer": "0.1.4" + "base64-arraybuffer": "~1.0.1" } }, "enhanced-resolve": { @@ -26722,9 +26734,9 @@ "dev": true }, "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", "dev": true }, "env-paths": { @@ -26758,9 +26770,9 @@ } }, "es-abstract": { - "version": "1.18.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", - "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -26774,7 +26786,9 @@ "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", "is-string": "^1.0.7", + "is-weakref": "^1.0.1", "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", @@ -26834,37 +26848,36 @@ "dev": true }, "eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.3.0.tgz", + "integrity": "sha512-aIay56Ph6RxOTC7xyr59Kt3ewX185SaGnAr8eWukoPLeriCrvGjvAubxuvaXOfsxhtwV5g0uBOsyhAom4qJdww==", "dev": true, "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.0.4", + "@humanwhocodes/config-array": "^0.6.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.1.0", + "espree": "^9.1.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", + "glob-parent": "^6.0.1", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", @@ -26872,24 +26885,14 @@ "natural-compare": "^1.4.0", "optionator": "^0.9.1", "progress": "^2.0.0", - "regexpp": "^3.1.0", + "regexpp": "^3.2.0", "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -26930,27 +26933,50 @@ "color-name": "~1.1.4" } }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "eslint-scope": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", + "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", "dev": true, "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-visitor-keys": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", + "dev": true + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" } }, "globals": { @@ -27019,12 +27045,13 @@ } }, "eslint-module-utils": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz", - "integrity": "sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.1.tgz", + "integrity": "sha512-fjoetBXQZq2tSTWZ9yWVl2KuFrTZZH3V+9iD1V1RfpDgxzJR+mPd/KZmMiA8gbPqdBzpNiEHOuT7IYEWxrH0zQ==", "dev": true, "requires": { "debug": "^3.2.7", + "find-up": "^2.1.0", "pkg-dir": "^2.0.0" }, "dependencies": { @@ -27040,26 +27067,24 @@ } }, "eslint-plugin-import": { - "version": "2.23.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz", - "integrity": "sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==", + "version": "2.25.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.3.tgz", + "integrity": "sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==", "dev": true, "requires": { - "array-includes": "^3.1.3", - "array.prototype.flat": "^1.2.4", + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.1", - "find-up": "^2.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.1", "has": "^1.0.3", - "is-core-module": "^2.4.0", + "is-core-module": "^2.8.0", + "is-glob": "^4.0.3", "minimatch": "^3.0.4", - "object.values": "^1.1.3", - "pkg-up": "^2.0.0", - "read-pkg-up": "^3.0.0", + "object.values": "^1.1.5", "resolve": "^1.20.0", - "tsconfig-paths": "^3.9.0" + "tsconfig-paths": "^3.11.0" }, "dependencies": { "debug": { @@ -27089,16 +27114,16 @@ } }, "eslint-plugin-jsdoc": { - "version": "36.0.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-36.0.6.tgz", - "integrity": "sha512-vOm27rI2SMfi1bOAYmzzGkanMCD/boquKwvN5ECi8EF9ASsXJwlnCzYtiOYpsDpbC2+6JXEHAmWMkqYNA3BWRw==", + "version": "37.0.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.0.3.tgz", + "integrity": "sha512-Qg/gIZAfcrM4Qu/JzcnxPGD45Je6wPLFzMZQboeqit/CL4aY6wuzBTkgUMiWXfw/PaPl+sb0GF1XdBlV23ReDA==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "0.10.7", - "comment-parser": "1.2.3", + "@es-joy/jsdoccomment": "0.12.0", + "comment-parser": "1.2.4", "debug": "^4.3.2", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "^1.1.1", + "jsdoc-type-pratt-parser": "^2.0.0", "lodash": "^4.17.21", "regextras": "^0.8.0", "semver": "^7.3.5", @@ -27149,30 +27174,24 @@ "dev": true }, "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.1.0.tgz", + "integrity": "sha512-ZgYLvCS1wxOczBYGcQT9DDWgicXwJ4dbocr9uYN+/eresBAUuBu+O4WzB21ufQ/JqQT8gyp7hJ3z8SHii32mTQ==", "dev": true, "requires": { - "acorn": "^7.4.0", + "acorn": "^8.6.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "eslint-visitor-keys": "^3.1.0" }, "dependencies": { "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz", + "integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==", "dev": true } } }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, "esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -28296,17 +28315,15 @@ "dev": true }, "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", "dev": true, "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" } }, "http-cache-semantics": { @@ -28778,11 +28795,18 @@ "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==" }, "ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", "requires": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" + }, + "dependencies": { + "@stencil/core": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==" + } } }, "ip": { @@ -28875,9 +28899,9 @@ "dev": true }, "is-core-module": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", - "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", "dev": true, "requires": { "has": "^1.0.3" @@ -28940,9 +28964,9 @@ "dev": true }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -29029,6 +29053,12 @@ "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", "dev": true }, + "is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "dev": true + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -29064,6 +29094,15 @@ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" }, + "is-weakref": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", + "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0" + } + }, "is-what": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", @@ -29230,9 +29269,9 @@ } }, "jasmine-core": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.8.0.tgz", - "integrity": "sha512-zl0nZWDrmbCiKns0NcjkFGYkVTGCPUgoHypTaj+G2AzaWus7QGoXARSlYsSle2VRpSdfJmM+hzmFKzQNhF2kHg==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.10.1.tgz", + "integrity": "sha512-ooZWSDVAdh79Rrj4/nnfklL3NQVra0BcuhcuWoAwwi+znLDoUeH87AFfeX8s+YeYi6xlv5nveRyaA1v7CintfA==", "dev": true }, "jasmine-spec-reporter": { @@ -29285,13 +29324,12 @@ "dev": true }, "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" } }, "jsbn": { @@ -29301,9 +29339,9 @@ "dev": true }, "jsdoc-type-pratt-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.1.1.tgz", - "integrity": "sha512-uelRmpghNwPBuZScwgBG/OzodaFk5RbO5xaivBdsAY70icWfShwZ7PCMO0x1zSkOa8T1FzHThmrdoyg/0AwV5g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.0.0.tgz", + "integrity": "sha512-sUuj2j48wxrEpbFjDp1sAesAxPiLT+z0SWVmMafyIINs6Lj5gIPKh3VrkBZu4E/Dv+wHpOot0m6H8zlHQjwqeQ==", "dev": true }, "jsesc": { @@ -29434,9 +29472,9 @@ } }, "karma": { - "version": "6.3.4", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.4.tgz", - "integrity": "sha512-hbhRogUYIulfkBTZT7xoPrCYhRBnBoqbbL4fszWD0ReFGUxU+LYBr3dwKdAluaDQ/ynT9/7C+Lf7pPNW4gSx4Q==", + "version": "6.3.9", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.9.tgz", + "integrity": "sha512-E/MqdLM9uVIhfuyVnrhlGBu4miafBdXEAEqCmwdEMh3n17C7UWC/8Kvm3AYKr91gc7scutekZ0xv6rxRaUCtnw==", "dev": true, "requires": { "body-parser": "^1.19.0", @@ -29457,10 +29495,10 @@ "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^3.1.0", + "socket.io": "^4.2.0", "source-map": "^0.6.1", "tmp": "^0.2.1", - "ua-parser-js": "^0.7.28", + "ua-parser-js": "^0.7.30", "yargs": "^16.1.1" }, "dependencies": { @@ -29758,36 +29796,6 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, "loader-runner": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", @@ -29826,12 +29834,6 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -29850,12 +29852,6 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", @@ -30535,32 +30531,6 @@ "abbrev": "1" } }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -30682,12 +30652,12 @@ } }, "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", "dev": true, "requires": { - "boolbase": "~1.0.0" + "boolbase": "^1.0.0" } }, "num2fraction": { @@ -30844,14 +30814,14 @@ } }, "object.values": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", - "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.2" + "es-abstract": "^1.19.1" } }, "obuf": { @@ -31137,13 +31107,10 @@ "dev": true }, "parse5": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", - "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", - "dev": true, - "requires": { - "@types/node": "*" - } + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true }, "parse5-html-rewriting-stream": { "version": "6.0.1", @@ -31153,14 +31120,6 @@ "requires": { "parse5": "^6.0.1", "parse5-sax-parser": "^6.0.1" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - } } }, "parse5-htmlparser2-tree-adapter": { @@ -31170,14 +31129,6 @@ "dev": true, "requires": { "parse5": "^6.0.1" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - } } }, "parse5-sax-parser": { @@ -31187,14 +31138,6 @@ "dev": true, "requires": { "parse5": "^6.0.1" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - } } }, "parseurl": { @@ -31299,15 +31242,6 @@ "find-up": "^2.1.0" } }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - }, "portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -33387,44 +33321,6 @@ "npm-normalize-package-bin": "^1.0.1" } }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -34217,37 +34113,6 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - } - } - }, "smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -34430,26 +34295,34 @@ } }, "socket.io": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.1.2.tgz", - "integrity": "sha512-JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.0.tgz", + "integrity": "sha512-bnpJxswR9ov0Bw6ilhCvO38/1WPtE3eA2dtxi2Iq4/sFebiDJQzgKNYA7AuVVdGW09nrESXd90NbZqtDd9dzRQ==", "dev": true, "requires": { - "@types/cookie": "^0.4.0", - "@types/cors": "^2.8.8", - "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "~2.0.0", - "debug": "~4.3.1", - "engine.io": "~4.1.0", - "socket.io-adapter": "~2.1.0", - "socket.io-parser": "~4.0.3" + "debug": "~4.3.2", + "engine.io": "~6.1.0", + "socket.io-adapter": "~2.3.3", + "socket.io-parser": "~4.0.4" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + } } }, "socket.io-adapter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz", - "integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", "dev": true }, "socket.io-parser": { @@ -34595,16 +34468,6 @@ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, "spdx-exceptions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", @@ -34663,12 +34526,6 @@ "extend-shallow": "^3.0.0" } }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, "sshpk": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", @@ -34877,11 +34734,11 @@ } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "strip-bom": { @@ -35039,77 +34896,6 @@ "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", "dev": true - }, - "css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" - } - }, - "css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", - "dev": true - }, - "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true - }, - "domhandler": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", - "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "nth-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", - "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } } } }, @@ -35119,20 +34905,6 @@ "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", "dev": true }, - "table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", - "dev": true, - "requires": { - "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" - } - }, "tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -35333,20 +35105,22 @@ "dev": true }, "ts-node": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.1.0.tgz", - "integrity": "sha512-6szn3+J9WyG2hE+5W8e0ruZrzyk1uFLYye6IGMBadnOzDh8aP7t8CbFpsfCiEx2+wMixAhjFt7lOZC4+l+WbEA==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.4.0.tgz", + "integrity": "sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==", "dev": true, "requires": { + "@cspotcode/source-map-support": "0.7.0", "@tsconfig/node10": "^1.0.7", "@tsconfig/node12": "^1.0.7", "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.1", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", "arg": "^4.1.0", "create-require": "^1.1.0", "diff": "^4.0.1", "make-error": "^1.1.1", - "source-map-support": "^0.5.17", "yn": "3.1.1" } }, @@ -35425,9 +35199,9 @@ "dev": true }, "ua-parser-js": { - "version": "0.7.28", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz", - "integrity": "sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g==", + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", "dev": true }, "unbox-primitive": { @@ -35648,16 +35422,6 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, "validate-npm-package-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", @@ -35846,12 +35610,6 @@ "webpack-sources": "^2.3.0" }, "dependencies": { - "acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", - "dev": true - }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", diff --git a/ui/package.json b/ui/package.json index aef51b51e18..489a4e9fa98 100644 --- a/ui/package.json +++ b/ui/package.json @@ -1,6 +1,6 @@ { "name": "openems-ui", - "version": "2021.20.0", + "version": "2021.21.0", "license": "AGPL-3.0", "private": true, "dependencies": { @@ -12,16 +12,16 @@ "@angular/platform-browser-dynamic": "~12.1.4", "@angular/router": "~12.1.4", "@angular/service-worker": "~12.1.4", - "@ionic/angular": "^5.6.12", - "@ngx-formly/core": "^5.10.22", - "@ngx-formly/ionic": "^5.10.22", - "@ngx-formly/schematics": "^5.10.22", "@ngx-translate/core": "^13.0.0", + "@ionic/angular": "^5.9.1", + "@ngx-formly/core": "^5.10.23", + "@ngx-formly/ionic": "^5.10.23", + "@ngx-formly/schematics": "^5.10.23", "angular-mydatepicker": "^0.11.5", "chart.js": "^2.9.4", "classlist.js": "^1.1.20150312", "d3": "^7.1.1", - "date-fns": "^2.25.0", + "date-fns": "^2.26.0", "file-saver-es": "^2.0.5", "ng2-charts": "^2.4.3", "ngx-cookie-service": "^12.0.3", @@ -29,7 +29,7 @@ "roboto-fontface": "^0.10.0", "rxjs": "~6.6.7", "semver-compare-multi": "^1.0.3", - "tslib": "^2.3.0", + "tslib": "^2.3.1", "uuid": "^8.3.2", "zone.js": "~0.11.4" }, @@ -43,27 +43,27 @@ "@angular/compiler": "~12.1.4", "@angular/compiler-cli": "~12.1.4", "@angular/language-service": "~12.1.4", - "@ionic/angular-toolkit": "^4.0.0", - "@types/jasmine": "~3.8.2", + "@ionic/angular-toolkit": "^5.0.3", + "@types/jasmine": "~3.10.2", "@types/jasminewd2": "~2.0.10", - "@types/node": "^16.4.10", - "@types/uuid": "^8.3.1", - "@typescript-eslint/eslint-plugin": "4.29.0", - "@typescript-eslint/parser": "4.29.0", - "eslint": "^7.32.0", - "eslint-plugin-import": "2.23.4", - "eslint-plugin-jsdoc": "36.0.6", + "@types/node": "^16.11.10", + "@types/uuid": "^8.3.3", + "@typescript-eslint/eslint-plugin": "5.5.0", + "@typescript-eslint/parser": "5.5.0", + "eslint": "^8.3.0", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-jsdoc": "37.0.3", "eslint-plugin-prefer-arrow": "1.2.3", - "jasmine-core": "~3.8.0", + "jasmine-core": "~3.10.1", "jasmine-spec-reporter": "~7.0.0", - "karma": "~6.3.4", + "karma": "~6.3.9", "karma-chrome-launcher": "~3.1.0", "karma-coverage": "~2.0.3", "karma-coverage-istanbul-reporter": "~3.0.3", "karma-jasmine": "~4.0.1", "karma-jasmine-html-reporter": "^1.7.0", "protractor": "~7.0.0", - "ts-node": "~10.1.0", + "ts-node": "~10.4.0", "typescript": "~4.3.5" } -} +} \ No newline at end of file diff --git a/ui/src/app/user/user.component.html b/ui/src/app/user/user.component.html index 284f943b788..ca186eab514 100644 --- a/ui/src/app/user/user.component.html +++ b/ui/src/app/user/user.component.html @@ -95,8 +95,8 @@ About.openEMS
  • - - About.build: 2021.20.0 (2021-11-18) + + About.build: 2021.21.0 (2021-12-01)