Prepare Release 2024.05.07 (merge development into master)

This commit is contained in:
Bernhard Kirchen 2024-05-07 22:23:58 +02:00 committed by GitHub
commit ca96ccad42
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
13 changed files with 225 additions and 163 deletions

View File

@ -150,7 +150,7 @@ jobs:
- name: Build Changelog - name: Build Changelog
id: github_release id: github_release
uses: mikepenz/release-changelog-builder-action@v3 uses: mikepenz/release-changelog-builder-action@v4
with: with:
failOnError: true failOnError: true
commitMode: true commitMode: true
@ -169,7 +169,7 @@ jobs:
for i in */; do cp ${i}opendtu-onbattery-*.bin ./; done for i in */; do cp ${i}opendtu-onbattery-*.bin ./; done
- name: Create release - name: Create release
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v2
with: with:
body: ${{steps.github_release.outputs.changelog}} body: ${{steps.github_release.outputs.changelog}}
draft: False draft: False

View File

@ -0,0 +1,9 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
// The referenced values are generated by pio-scripts/auto_firmware_version.py
extern const char *__COMPILED_GIT_HASH__;
extern const char *__COMPILED_GIT_BRANCH__;
// extern const char *__COMPILED_DATE_TIME_UTC_STR__;

View File

@ -2,6 +2,7 @@
# #
# Copyright (C) 2022 Thomas Basler and others # Copyright (C) 2022 Thomas Basler and others
# #
import os
import pkg_resources import pkg_resources
Import("env") Import("env")
@ -16,23 +17,76 @@ if missing_pkgs:
from dulwich import porcelain from dulwich import porcelain
def get_firmware_specifier_build_flag(): def updateFileIfChanged(filename, content):
mustUpdate = True
try:
fp = open(filename, "rb")
if fp.read() == content:
mustUpdate = False
fp.close()
except:
pass
if mustUpdate:
fp = open(filename, "wb")
fp.write(content)
fp.close()
return mustUpdate
def get_build_version():
try: try:
build_version = porcelain.describe('.') # '.' refers to the repository root dir build_version = porcelain.describe('.') # '.' refers to the repository root dir
except Exception as err: except:
print(f"Unexpected {err=}, {type(err)=}")
build_version = "g0000000" build_version = "g0000000"
print ("Firmware Revision: " + build_version)
return build_version
def get_build_branch():
try: try:
branch_name = porcelain.active_branch('.').decode('utf-8') # '.' refers to the repository root dir branch_name = porcelain.active_branch('.').decode('utf-8') # '.' refers to the repository root dir
except Exception as err: except Exception as err:
print(f"Unexpected {err=}, {type(err)=}")
branch_name = "master" branch_name = "master"
build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\" " print("Firmware Branch: " + branch_name)
build_flag += "-D AUTO_GIT_BRANCH=\\\"" + branch_name + "\\\"" return branch_name
print("Firmware Revision: " + build_version)
print("Firmware build on branch: " + branch_name)
def get_firmware_specifier_build_flag():
build_version = get_build_version()
build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\""
build_branch = get_build_branch()
build_flag += " -D AUTO_GIT_BRANCH=\\\"" + branch_name + "\\\""
return (build_flag) return (build_flag)
env.Append(
BUILD_FLAGS=[get_firmware_specifier_build_flag()] def do_main():
) if 0:
# this results in a full recompilation of the whole project after each commit
env.Append(
BUILD_FLAGS=[get_firmware_specifier_build_flag()]
)
else:
# we just create a .c file containing the needed datas
targetfile = os.path.join(env.subst("$BUILD_DIR"), "__compiled_constants.c")
lines = ""
lines += "/* Generated file within build process - Do NOT edit */\n"
if 0:
# Add the current date and time as string in UTC timezone
from datetime import datetime, timezone
now = datetime.now(tz=timezone.utc)
COMPILED_DATE_TIME_UTC_STR = now.strftime("%Y/%m/%d %H:%M:%S")
lines += 'const char *__COMPILED_DATE_TIME_UTC_STR__ = "%s";\n' % (COMPILED_DATE_TIME_UTC_STR)
if 1:
# Add the description of the current git revision
lines += 'const char *__COMPILED_GIT_HASH__ = "%s";\n' % (get_build_version())
# ... and git branch
lines += 'const char *__COMPILED_GIT_BRANCH__ = "%s";\n' % (get_build_branch())
updateFileIfChanged(targetfile, bytes(lines, "utf-8"))
# Add the created file to the buildfiles - platformio knows how to handle *.c files
env.AppendUnique(PIOBUILDFILES=[targetfile])
do_main()

View File

@ -26,6 +26,7 @@ build_flags =
-D_TASK_STD_FUNCTION=1 -D_TASK_STD_FUNCTION=1
-D_TASK_THREAD_SAFE=1 -D_TASK_THREAD_SAFE=1
-DCONFIG_ASYNC_TCP_EVENT_QUEUE_SIZE=128 -DCONFIG_ASYNC_TCP_EVENT_QUEUE_SIZE=128
-DCONFIG_ASYNC_TCP_QUEUE_SIZE=128
-Wall -Wextra -Wunused -Wmisleading-indentation -Wduplicated-cond -Wlogical-op -Wnull-dereference -Wall -Wextra -Wunused -Wmisleading-indentation -Wduplicated-cond -Wlogical-op -Wnull-dereference
; Have to remove -Werror because of ; Have to remove -Werror because of
; https://github.com/espressif/arduino-esp32/issues/9044 and ; https://github.com/espressif/arduino-esp32/issues/9044 and
@ -37,12 +38,12 @@ build_unflags =
-std=gnu++11 -std=gnu++11
lib_deps = lib_deps =
mathieucarbou/ESP Async WebServer @ 2.9.3 mathieucarbou/ESP Async WebServer @ 2.9.5
bblanchon/ArduinoJson @ ^7.0.4 bblanchon/ArduinoJson @ 7.0.4
https://github.com/bertmelis/espMqttClient.git#v1.6.0 https://github.com/bertmelis/espMqttClient.git#v1.6.0
nrf24/RF24 @ ^1.4.8 nrf24/RF24 @ 1.4.8
olikraus/U8g2 @ ^2.35.17 olikraus/U8g2 @ 2.35.19
buelowp/sunset @ ^1.1.7 buelowp/sunset @ 1.1.7
https://github.com/arkhipenko/TaskScheduler#testing https://github.com/arkhipenko/TaskScheduler#testing
https://github.com/coryjfowler/MCP_CAN_lib https://github.com/coryjfowler/MCP_CAN_lib
plerup/EspSoftwareSerial @ ^8.0.1 plerup/EspSoftwareSerial @ ^8.0.1

View File

@ -9,6 +9,7 @@
#include "MessageOutput.h" #include "MessageOutput.h"
#include "VictronMppt.h" #include "VictronMppt.h"
#include "Utils.h" #include "Utils.h"
#include "__compiled_constants.h"
MqttHandleVedirectHassClass MqttHandleVedirectHass; MqttHandleVedirectHassClass MqttHandleVedirectHass;
@ -214,7 +215,7 @@ void MqttHandleVedirectHassClass::createDeviceInfo(JsonObject &object,
object["cu"] = String("http://") + NetworkSettings.localIP().toString(); object["cu"] = String("http://") + NetworkSettings.localIP().toString();
object["mf"] = "OpenDTU"; object["mf"] = "OpenDTU";
object["mdl"] = mpptData.getPidAsString(); object["mdl"] = mpptData.getPidAsString();
object["sw"] = AUTO_GIT_HASH; object["sw"] = __COMPILED_GIT_HASH__;
} }
void MqttHandleVedirectHassClass::publish(const String& subtopic, const String& payload) void MqttHandleVedirectHassClass::publish(const String& subtopic, const String& payload)

View File

@ -6,6 +6,7 @@
#include "Configuration.h" #include "Configuration.h"
#include "MqttSettings.h" #include "MqttSettings.h"
#include "Utils.h" #include "Utils.h"
#include "__compiled_constants.h"
MqttHandleBatteryHassClass MqttHandleBatteryHass; MqttHandleBatteryHassClass MqttHandleBatteryHass;
@ -237,7 +238,7 @@ void MqttHandleBatteryHassClass::createDeviceInfo(JsonObject& object)
object["cu"] = String("http://") + NetworkSettings.localIP().toString(); object["cu"] = String("http://") + NetworkSettings.localIP().toString();
object["mf"] = "OpenDTU"; object["mf"] = "OpenDTU";
object["mdl"] = Battery.getStats()->getManufacturer(); object["mdl"] = Battery.getStats()->getManufacturer();
object["sw"] = AUTO_GIT_HASH; object["sw"] = __COMPILED_GIT_HASH__;
} }
void MqttHandleBatteryHassClass::publish(const String& subtopic, const String& payload) void MqttHandleBatteryHassClass::publish(const String& subtopic, const String& payload)

View File

@ -8,6 +8,7 @@
#include "NetworkSettings.h" #include "NetworkSettings.h"
#include "Utils.h" #include "Utils.h"
#include "defaults.h" #include "defaults.h"
#include "__compiled_constants.h"
MqttHandleHassClass MqttHandleHass; MqttHandleHassClass MqttHandleHass;
@ -378,7 +379,7 @@ void MqttHandleHassClass::createInverterInfo(JsonDocument& root, std::shared_ptr
getDtuUrl(), getDtuUrl(),
"OpenDTU", "OpenDTU",
inv->typeName(), inv->typeName(),
AUTO_GIT_HASH, __COMPILED_GIT_HASH__,
getDtuUniqueId()); getDtuUniqueId());
} }
@ -391,7 +392,7 @@ void MqttHandleHassClass::createDtuInfo(JsonDocument& root)
getDtuUrl(), getDtuUrl(),
"OpenDTU", "OpenDTU",
"OpenDTU", "OpenDTU",
AUTO_GIT_HASH); __COMPILED_GIT_HASH__);
} }
void MqttHandleHassClass::createDeviceInfo( void MqttHandleHassClass::createDeviceInfo(

View File

@ -8,6 +8,7 @@
#include "NetworkSettings.h" #include "NetworkSettings.h"
#include "MessageOutput.h" #include "MessageOutput.h"
#include "Utils.h" #include "Utils.h"
#include "__compiled_constants.h"
MqttHandlePowerLimiterHassClass MqttHandlePowerLimiterHass; MqttHandlePowerLimiterHassClass MqttHandlePowerLimiterHass;
@ -193,7 +194,7 @@ void MqttHandlePowerLimiterHassClass::createDeviceInfo(JsonObject& object)
object["cu"] = String("http://") + NetworkSettings.localIP().toString(); object["cu"] = String("http://") + NetworkSettings.localIP().toString();
object["mf"] = "OpenDTU"; object["mf"] = "OpenDTU";
object["mdl"] = "Dynamic Power Limiter"; object["mdl"] = "Dynamic Power Limiter";
object["sw"] = AUTO_GIT_HASH; object["sw"] = __COMPILED_GIT_HASH__;
} }
void MqttHandlePowerLimiterHassClass::publish(const String& subtopic, const String& payload) void MqttHandlePowerLimiterHassClass::publish(const String& subtopic, const String& payload)

View File

@ -10,6 +10,7 @@
#include "defaults.h" #include "defaults.h"
#include <ESPmDNS.h> #include <ESPmDNS.h>
#include <ETH.h> #include <ETH.h>
#include "__compiled_constants.h"
NetworkSettingsClass::NetworkSettingsClass() NetworkSettingsClass::NetworkSettingsClass()
: _loopTask(TASK_IMMEDIATE, TASK_FOREVER, std::bind(&NetworkSettingsClass::loop, this)) : _loopTask(TASK_IMMEDIATE, TASK_FOREVER, std::bind(&NetworkSettingsClass::loop, this))
@ -136,7 +137,7 @@ void NetworkSettingsClass::handleMDNS()
MDNS.addService("http", "tcp", 80); MDNS.addService("http", "tcp", 80);
MDNS.addService("opendtu", "tcp", 80); MDNS.addService("opendtu", "tcp", 80);
MDNS.addServiceTxt("opendtu", "tcp", "git_hash", AUTO_GIT_HASH); MDNS.addServiceTxt("opendtu", "tcp", "git_hash", __COMPILED_GIT_HASH__);
MessageOutput.println("done"); MessageOutput.println("done");
} else { } else {

View File

@ -9,7 +9,7 @@
#include "NetworkSettings.h" #include "NetworkSettings.h"
#include "WebApi.h" #include "WebApi.h"
#include <Hoymiles.h> #include <Hoymiles.h>
#include "MessageOutput.h" #include "__compiled_constants.h"
void WebApiPrometheusClass::init(AsyncWebServer& server, Scheduler& scheduler) void WebApiPrometheusClass::init(AsyncWebServer& server, Scheduler& scheduler)
{ {
@ -30,7 +30,7 @@ void WebApiPrometheusClass::onPrometheusMetricsGet(AsyncWebServerRequest* reques
stream->print("# HELP opendtu_build Build info\n"); stream->print("# HELP opendtu_build Build info\n");
stream->print("# TYPE opendtu_build gauge\n"); stream->print("# TYPE opendtu_build gauge\n");
stream->printf("opendtu_build{name=\"%s\",id=\"%s\",version=\"%d.%d.%d\"} 1\n", stream->printf("opendtu_build{name=\"%s\",id=\"%s\",version=\"%d.%d.%d\"} 1\n",
NetworkSettings.getHostname().c_str(), AUTO_GIT_HASH, CONFIG_VERSION >> 24 & 0xff, CONFIG_VERSION >> 16 & 0xff, CONFIG_VERSION >> 8 & 0xff); NetworkSettings.getHostname().c_str(), __COMPILED_GIT_HASH__, CONFIG_VERSION >> 24 & 0xff, CONFIG_VERSION >> 16 & 0xff, CONFIG_VERSION >> 8 & 0xff);
stream->print("# HELP opendtu_platform Platform info\n"); stream->print("# HELP opendtu_platform Platform info\n");
stream->print("# TYPE opendtu_platform gauge\n"); stream->print("# TYPE opendtu_platform gauge\n");
@ -143,7 +143,7 @@ void WebApiPrometheusClass::addPanelInfo(AsyncResponseStream* stream, const Stri
return; return;
} }
const CONFIG_T& config = Configuration.get(); const auto& config = Configuration.getInverterConfig(inv->serial());
const bool printHelp = (idx == 0 && channel == 0); const bool printHelp = (idx == 0 && channel == 0);
if (printHelp) { if (printHelp) {
@ -155,7 +155,7 @@ void WebApiPrometheusClass::addPanelInfo(AsyncResponseStream* stream, const Stri
idx, idx,
inv->name(), inv->name(),
channel, channel,
config.Inverter[idx].channel[channel].Name); config->channel[channel].Name);
if (printHelp) { if (printHelp) {
stream->print("# HELP opendtu_MaxPower panel maximum output power\n"); stream->print("# HELP opendtu_MaxPower panel maximum output power\n");
@ -166,7 +166,7 @@ void WebApiPrometheusClass::addPanelInfo(AsyncResponseStream* stream, const Stri
idx, idx,
inv->name(), inv->name(),
channel, channel,
config.Inverter[idx].channel[channel].MaxChannelPower); config->channel[channel].MaxChannelPower);
if (printHelp) { if (printHelp) {
stream->print("# HELP opendtu_YieldTotalOffset panel yield offset (for used inverters)\n"); stream->print("# HELP opendtu_YieldTotalOffset panel yield offset (for used inverters)\n");
@ -177,5 +177,5 @@ void WebApiPrometheusClass::addPanelInfo(AsyncResponseStream* stream, const Stri
idx, idx,
inv->name(), inv->name(),
channel, channel,
config.Inverter[idx].channel[channel].YieldTotalOffset); config->channel[channel].YieldTotalOffset);
} }

View File

@ -11,14 +11,7 @@
#include <Hoymiles.h> #include <Hoymiles.h>
#include <LittleFS.h> #include <LittleFS.h>
#include <ResetReason.h> #include <ResetReason.h>
#include "__compiled_constants.h"
#ifndef AUTO_GIT_HASH
#define AUTO_GIT_HASH ""
#endif
#ifndef AUTO_GIT_BRANCH
#define AUTO_GIT_BRANCH ""
#endif
void WebApiSysstatusClass::init(AsyncWebServer& server, Scheduler& scheduler) void WebApiSysstatusClass::init(AsyncWebServer& server, Scheduler& scheduler)
{ {
@ -68,8 +61,8 @@ void WebApiSysstatusClass::onSystemStatus(AsyncWebServerRequest* request)
char version[16]; char version[16];
snprintf(version, sizeof(version), "%d.%d.%d", CONFIG_VERSION >> 24 & 0xff, CONFIG_VERSION >> 16 & 0xff, CONFIG_VERSION >> 8 & 0xff); snprintf(version, sizeof(version), "%d.%d.%d", CONFIG_VERSION >> 24 & 0xff, CONFIG_VERSION >> 16 & 0xff, CONFIG_VERSION >> 8 & 0xff);
root["config_version"] = version; root["config_version"] = version;
root["git_hash"] = AUTO_GIT_HASH; root["git_hash"] = __COMPILED_GIT_HASH__;
root["git_branch"] = AUTO_GIT_BRANCH; root["git_branch"] = __COMPILED_GIT_BRANCH__;
root["pioenv"] = PIOENV; root["pioenv"] = PIOENV;
root["uptime"] = esp_timer_get_time() / 1000000; root["uptime"] = esp_timer_get_time() / 1000000;

View File

@ -18,7 +18,7 @@
"mitt": "^3.0.1", "mitt": "^3.0.1",
"sortablejs": "^1.15.2", "sortablejs": "^1.15.2",
"spark-md5": "^3.0.2", "spark-md5": "^3.0.2",
"vue": "^3.4.25", "vue": "^3.4.26",
"vue-i18n": "^9.13.1", "vue-i18n": "^9.13.1",
"vue-router": "^4.3.2" "vue-router": "^4.3.2"
}, },
@ -26,23 +26,23 @@
"@intlify/unplugin-vue-i18n": "^4.0.0", "@intlify/unplugin-vue-i18n": "^4.0.0",
"@tsconfig/node18": "^18.2.4", "@tsconfig/node18": "^18.2.4",
"@types/bootstrap": "^5.2.10", "@types/bootstrap": "^5.2.10",
"@types/node": "^20.12.7", "@types/node": "^20.12.10",
"@types/pulltorefreshjs": "^0.1.7", "@types/pulltorefreshjs": "^0.1.7",
"@types/sortablejs": "^1.15.8", "@types/sortablejs": "^1.15.8",
"@types/spark-md5": "^3.0.4", "@types/spark-md5": "^3.0.4",
"@vitejs/plugin-vue": "^5.0.4", "@vitejs/plugin-vue": "^5.0.4",
"@vue/eslint-config-typescript": "^13.0.0", "@vue/eslint-config-typescript": "^13.0.0",
"@vue/tsconfig": "^0.5.1", "@vue/tsconfig": "^0.5.1",
"eslint": "^9.1.1", "eslint": "^9.2.0",
"eslint-plugin-vue": "^9.25.0", "eslint-plugin-vue": "^9.25.0",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"pulltorefreshjs": "^0.1.22", "pulltorefreshjs": "^0.1.22",
"sass": "^1.75.0", "sass": "^1.76.0",
"terser": "^5.30.4", "terser": "^5.31.0",
"typescript": "^5.4.5", "typescript": "^5.4.5",
"vite": "^5.2.10", "vite": "^5.2.11",
"vite-plugin-compression": "^0.5.1", "vite-plugin-compression": "^0.5.1",
"vite-plugin-css-injected-by-js": "^3.5.0", "vite-plugin-css-injected-by-js": "^3.5.1",
"vue-tsc": "^2.0.14" "vue-tsc": "^2.0.16"
} }
} }

View File

@ -176,10 +176,10 @@
minimatch "^3.1.2" minimatch "^3.1.2"
strip-json-comments "^3.1.1" strip-json-comments "^3.1.1"
"@eslint/js@9.1.1": "@eslint/js@9.2.0":
version "9.1.1" version "9.2.0"
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.1.1.tgz#eb0f82461d12779bbafc1b5045cde3143d350a8a" resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.2.0.tgz#b0a9123e8e91a3d9a2eed3a04a6ed44fdab639aa"
integrity sha512-5WoDz3Y19Bg2BnErkZTp0en+c/i9PvgFS7MBe1+m60HjFr0hrphlAGp4yzI7pxpt4xShln4ZyYp4neJm8hmOkQ== integrity sha512-ESiIudvhoYni+MdsI8oD7skpprZ89qKocwRM2KEvhhBJ9nl5MRh7BXU5GTod7Mdygq+AUl+QzId6iWJKR/wABA==
"@humanwhocodes/config-array@^0.13.0": "@humanwhocodes/config-array@^0.13.0":
version "0.13.0" version "0.13.0"
@ -449,10 +449,10 @@
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb"
integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
"@types/node@^20.12.7": "@types/node@^20.12.10":
version "20.12.7" version "20.12.10"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.7.tgz#04080362fa3dd6c5822061aa3124f5c152cff384" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.10.tgz#8f0c3f12b0f075eee1fe20c1afb417e9765bef76"
integrity sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg== integrity sha512-Eem5pH9pmWBHoGAT8Dr5fdc5rYA+4NAovdM4EktRPVAAiJhmWWfQrA0cFhAbOsQdSfIHjAud6YdkbL69+zSKjw==
dependencies: dependencies:
undici-types "~5.26.4" undici-types "~5.26.4"
@ -567,26 +567,26 @@
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz#508d6a0f2440f86945835d903fcc0d95d1bb8a37" resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz#508d6a0f2440f86945835d903fcc0d95d1bb8a37"
integrity sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ== integrity sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==
"@volar/language-core@2.2.0-alpha.10": "@volar/language-core@2.2.1", "@volar/language-core@~2.2.0":
version "2.2.0-alpha.10" version "2.2.1"
resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.2.0-alpha.10.tgz#e77db9b2ef4826cc55cf929289933d018c48e56c" resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.2.1.tgz#bb4a28f93cd8598a2e2ca1c811ae113a848b5529"
integrity sha512-njVJLtpu0zMvDaEk7K5q4BRpOgbyEUljU++un9TfJoJNhxG0z/hWwpwgTRImO42EKvwIxF3XUzeMk+qatAFy7Q== integrity sha512-iHJAZKcYldZgyS8gx6DfIZApViVBeqbf6iPhqoZpG5A6F4zsZiFldKfwaKaBA3/wnOTWE2i8VUbXywI1WywCPg==
dependencies: dependencies:
"@volar/source-map" "2.2.0-alpha.10" "@volar/source-map" "2.2.1"
"@volar/source-map@2.2.0-alpha.10": "@volar/source-map@2.2.1":
version "2.2.0-alpha.10" version "2.2.1"
resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.2.0-alpha.10.tgz#d055232eb2a24fb4678db578b55ec095c9925dc3" resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.2.1.tgz#d75b0c38659d3ea7e780d4251ac2b9436845ab97"
integrity sha512-nrdWApVkP5cksAnDEyy1JD9rKdwOJsEq1B+seWO4vNXmZNcxQQCx4DULLBvKt7AzRUAQiAuw5aQkb9RBaSqdVA== integrity sha512-w1Bgpguhbp7YTr7VUFu6gb4iAZjeEPsOX4zpgiuvlldbzvIWDWy4t0jVifsIsxZ99HAu+c3swiME7wt+GeNqhA==
dependencies: dependencies:
muggle-string "^0.4.0" muggle-string "^0.4.0"
"@volar/typescript@2.2.0-alpha.10": "@volar/typescript@~2.2.0":
version "2.2.0-alpha.10" version "2.2.1"
resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.2.0-alpha.10.tgz#14c002a3549ff3adcf9306933f4bf81e80422eff" resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.2.1.tgz#21585b46cd61c9d63715642ee10418b144b12321"
integrity sha512-GCa0vTVVdA9ULUsu2Rx7jwsIuyZQPvPVT9o3NrANTbYv+523Ao1gv3glC5vzNSDPM6bUl37r94HbCj7KINQr+g== integrity sha512-Z/tqluR7Hz5/5dCqQp7wo9C/6tSv/IYl+tTzgzUt2NjTq95bKSsuO4E+V06D0c+3aP9x5S9jggLqw451hpnc6Q==
dependencies: dependencies:
"@volar/language-core" "2.2.0-alpha.10" "@volar/language-core" "2.2.1"
path-browserify "^1.0.1" path-browserify "^1.0.1"
"@vue/compiler-core@3.2.47": "@vue/compiler-core@3.2.47":
@ -610,13 +610,13 @@
estree-walker "^2.0.2" estree-walker "^2.0.2"
source-map-js "^1.0.2" source-map-js "^1.0.2"
"@vue/compiler-core@3.4.25": "@vue/compiler-core@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.25.tgz#691f59ee5014f6f2a2488fd4465f892e1e82f729" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.26.tgz#d507886520e83a6f8339ed55ed0b2b5d84b44b73"
integrity sha512-Y2pLLopaElgWnMNolgG8w3C5nNUVev80L7hdQ5iIKPtMJvhVpG0zhnBG/g3UajJmZdvW0fktyZTotEHD1Srhbg== integrity sha512-N9Vil6Hvw7NaiyFUFBPXrAyETIGlQ8KcFMkyk6hW1Cl6NvoqvP+Y8p1Eqvx+UdqsnrnI9+HMUEJegzia3mhXmQ==
dependencies: dependencies:
"@babel/parser" "^7.24.4" "@babel/parser" "^7.24.4"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
entities "^4.5.0" entities "^4.5.0"
estree-walker "^2.0.2" estree-walker "^2.0.2"
source-map-js "^1.2.0" source-map-js "^1.2.0"
@ -629,13 +629,13 @@
"@vue/compiler-core" "3.2.47" "@vue/compiler-core" "3.2.47"
"@vue/shared" "3.2.47" "@vue/shared" "3.2.47"
"@vue/compiler-dom@3.4.25": "@vue/compiler-dom@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.25.tgz#b367e0c84e11d9e9f70beabdd6f6b2277fde375f" resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.26.tgz#acc7b788b48152d087d4bb9e655b795e3dbec554"
integrity sha512-Ugz5DusW57+HjllAugLci19NsDK+VyjGvmbB2TXaTcSlQxwL++2PETHx/+Qv6qFwNLzSt7HKepPe4DcTE3pBWg== integrity sha512-4CWbR5vR9fMg23YqFOhr6t6WB1Fjt62d6xdFPyj8pxrYub7d+OgZaObMsoxaF9yBUHPMiPFK303v61PwAuGvZA==
dependencies: dependencies:
"@vue/compiler-core" "3.4.25" "@vue/compiler-core" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
"@vue/compiler-dom@^3.4.0": "@vue/compiler-dom@^3.4.0":
version "3.4.21" version "3.4.21"
@ -645,16 +645,16 @@
"@vue/compiler-core" "3.4.21" "@vue/compiler-core" "3.4.21"
"@vue/shared" "3.4.21" "@vue/shared" "3.4.21"
"@vue/compiler-sfc@3.4.25": "@vue/compiler-sfc@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.25.tgz#ceab148f81571c8b251e8a8b75a9972addf1db8b" resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.26.tgz#c679f206829954c3c078d8a9be76d0098b8377ae"
integrity sha512-m7rryuqzIoQpOBZ18wKyq05IwL6qEpZxFZfRxlNYuIPDqywrXQxgUwLXIvoU72gs6cRdY6wHD0WVZIFE4OEaAQ== integrity sha512-It1dp+FAOCgluYSVYlDn5DtZBxk1NCiJJfu2mlQqa/b+k8GL6NG/3/zRbJnHdhV2VhxFghaDq5L4K+1dakW6cw==
dependencies: dependencies:
"@babel/parser" "^7.24.4" "@babel/parser" "^7.24.4"
"@vue/compiler-core" "3.4.25" "@vue/compiler-core" "3.4.26"
"@vue/compiler-dom" "3.4.25" "@vue/compiler-dom" "3.4.26"
"@vue/compiler-ssr" "3.4.25" "@vue/compiler-ssr" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
estree-walker "^2.0.2" estree-walker "^2.0.2"
magic-string "^0.30.10" magic-string "^0.30.10"
postcss "^8.4.38" postcss "^8.4.38"
@ -684,13 +684,13 @@
"@vue/compiler-dom" "3.2.47" "@vue/compiler-dom" "3.2.47"
"@vue/shared" "3.2.47" "@vue/shared" "3.2.47"
"@vue/compiler-ssr@3.4.25": "@vue/compiler-ssr@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.25.tgz#7fdd540bfdf2d4a3d6cb107b7ba4c77228d36331" resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.26.tgz#22842d8adfff972d87bb798b8d496111f7f814b5"
integrity sha512-H2ohvM/Pf6LelGxDBnfbbXFPyM4NE3hrw0e/EpwuSiYu8c819wx+SVGdJ65p/sFrYDd6OnSDxN1MB2mN07hRSQ== integrity sha512-FNwLfk7LlEPRY/g+nw2VqiDKcnDTVdCfBREekF8X74cPLiWHUX6oldktf/Vx28yh4STNy7t+/yuLoMBBF7YDiQ==
dependencies: dependencies:
"@vue/compiler-dom" "3.4.25" "@vue/compiler-dom" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
"@vue/devtools-api@^6.5.0": "@vue/devtools-api@^6.5.0":
version "6.5.0" version "6.5.0"
@ -711,12 +711,12 @@
"@typescript-eslint/parser" "^7.1.1" "@typescript-eslint/parser" "^7.1.1"
vue-eslint-parser "^9.3.1" vue-eslint-parser "^9.3.1"
"@vue/language-core@2.0.14": "@vue/language-core@2.0.16":
version "2.0.14" version "2.0.16"
resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-2.0.14.tgz#99d1dcd7df8a859e12606e80863b3cb4cf045f9e" resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-2.0.16.tgz#c059228e6a0a17b4505421da0e5747a4a04facbe"
integrity sha512-3q8mHSNcGTR7sfp2X6jZdcb4yt8AjBXAfKk0qkZIh7GAJxOnoZ10h5HToZglw4ToFvAnq+xu/Z2FFbglh9Icag== integrity sha512-Bc2sexRH99pznOph8mLw2BlRZ9edm7tW51kcBXgx8adAoOcZUWJj3UNSsdQ6H9Y8meGz7BoazVrVo/jUukIsPw==
dependencies: dependencies:
"@volar/language-core" "2.2.0-alpha.10" "@volar/language-core" "~2.2.0"
"@vue/compiler-dom" "^3.4.0" "@vue/compiler-dom" "^3.4.0"
"@vue/shared" "^3.4.0" "@vue/shared" "^3.4.0"
computeds "^0.0.1" computeds "^0.0.1"
@ -735,37 +735,37 @@
estree-walker "^2.0.2" estree-walker "^2.0.2"
magic-string "^0.25.7" magic-string "^0.25.7"
"@vue/reactivity@3.4.25": "@vue/reactivity@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.4.25.tgz#74983b146e06ce3341d15382669350125375d36f" resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.4.26.tgz#1191f543809d4c93e5b3e842ba83022350a3f205"
integrity sha512-mKbEtKr1iTxZkAG3vm3BtKHAOhuI4zzsVcN0epDldU/THsrvfXRKzq+lZnjczZGnTdh3ojd86/WrP+u9M51pWQ== integrity sha512-E/ynEAu/pw0yotJeLdvZEsp5Olmxt+9/WqzvKff0gE67tw73gmbx6tRkiagE/eH0UCubzSlGRebCbidB1CpqZQ==
dependencies: dependencies:
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
"@vue/runtime-core@3.4.25": "@vue/runtime-core@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.4.25.tgz#c5545d469ae0827dc471a1376f97c6ace41081ec" resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.4.26.tgz#51ee971cb700370a67e5a510c4a84eff7491d658"
integrity sha512-3qhsTqbEh8BMH3pXf009epCI5E7bKu28fJLi9O6W+ZGt/6xgSfMuGPqa5HRbUxLoehTNp5uWvzCr60KuiRIL0Q== integrity sha512-AFJDLpZvhT4ujUgZSIL9pdNcO23qVFh7zWCsNdGQBw8ecLNxOOnPcK9wTTIYCmBJnuPHpukOwo62a2PPivihqw==
dependencies: dependencies:
"@vue/reactivity" "3.4.25" "@vue/reactivity" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
"@vue/runtime-dom@3.4.25": "@vue/runtime-dom@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.4.25.tgz#9bc195e4860edcd0db4303cbba5a160922b963fd" resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.4.26.tgz#179aa7c8dc964112e6d096bc8ec5f361111009a1"
integrity sha512-ode0sj77kuwXwSc+2Yhk8JMHZh1sZp9F/51wdBiz3KGaWltbKtdihlJFhQG4H6AY+A06zzeMLkq6qu8uDSsaoA== integrity sha512-UftYA2hUXR2UOZD/Fc3IndZuCOOJgFxJsWOxDkhfVcwLbsfh2CdXE2tG4jWxBZuDAs9J9PzRTUFt1PgydEtItw==
dependencies: dependencies:
"@vue/runtime-core" "3.4.25" "@vue/runtime-core" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
csstype "^3.1.3" csstype "^3.1.3"
"@vue/server-renderer@3.4.25": "@vue/server-renderer@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.4.25.tgz#6cfc96ee631104951d5d6c09a8f1e7cef3ef3972" resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.4.26.tgz#6d0c6b0366bfe0232579aea00e3ff6784e5a1c60"
integrity sha512-8VTwq0Zcu3K4dWV0jOwIVINESE/gha3ifYCOKEhxOj6MEl5K5y8J8clQncTcDhKF+9U765nRw4UdUEXvrGhyVQ== integrity sha512-xoGAqSjYDPGAeRWxeoYwqJFD/gw7mpgzOvSxEmjWaFO2rE6qpbD1PC172YRpvKhrihkyHJkNDADFXTfCyVGhKw==
dependencies: dependencies:
"@vue/compiler-ssr" "3.4.25" "@vue/compiler-ssr" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
"@vue/shared@3.2.47": "@vue/shared@3.2.47":
version "3.2.47" version "3.2.47"
@ -777,10 +777,10 @@
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.21.tgz#de526a9059d0a599f0b429af7037cd0c3ed7d5a1" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.21.tgz#de526a9059d0a599f0b429af7037cd0c3ed7d5a1"
integrity sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g== integrity sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==
"@vue/shared@3.4.25": "@vue/shared@3.4.26":
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.25.tgz#243ba8543e7401751e0ca319f75a80f153edd273" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.26.tgz#f17854fb1faf889854aed4b23b60e86a8cab6403"
integrity sha512-k0yappJ77g2+KNrIaF0FFnzwLvUBLUYr8VOwz+/6vLsmItFp51AcxLL7Ey3iPd7BIRyWPOcqUjMnm7OkahXllA== integrity sha512-Fg4zwR0GNnjzodMt3KRy2AWGMKQXByl56+4HjN87soxLNU9P5xcJkstAlIeEF3cU6UYOzmJl1tV0dVPGIljCnQ==
"@vue/tsconfig@^0.5.1": "@vue/tsconfig@^0.5.1":
version "0.5.1" version "0.5.1"
@ -1208,15 +1208,15 @@ eslint-visitor-keys@^4.0.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb"
integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==
eslint@^9.1.1: eslint@^9.2.0:
version "9.1.1" version "9.2.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.1.1.tgz#39ec657ccd12813cb4a1dab2f9229dcc6e468271" resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.2.0.tgz#0700ebc99528753315d78090876911d3cdbf19fe"
integrity sha512-b4cRQ0BeZcSEzPpY2PjFY70VbO32K7BStTGtBsnIGdTSEEQzBi8hPBcGQmTG2zUvFr9uLe0TK42bw8YszuHEqg== integrity sha512-0n/I88vZpCOzO+PQpt0lbsqmn9AsnsJAQseIqhZFI8ibQT0U1AkEKRxA3EVMos0BoHSXDQvCXY25TUjB5tr8Og==
dependencies: dependencies:
"@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.6.1" "@eslint-community/regexpp" "^4.6.1"
"@eslint/eslintrc" "^3.0.2" "@eslint/eslintrc" "^3.0.2"
"@eslint/js" "9.1.1" "@eslint/js" "9.2.0"
"@humanwhocodes/config-array" "^0.13.0" "@humanwhocodes/config-array" "^0.13.0"
"@humanwhocodes/module-importer" "^1.0.1" "@humanwhocodes/module-importer" "^1.0.1"
"@humanwhocodes/retry" "^0.2.3" "@humanwhocodes/retry" "^0.2.3"
@ -2201,10 +2201,10 @@ safe-regex-test@^1.0.0:
get-intrinsic "^1.1.3" get-intrinsic "^1.1.3"
is-regex "^1.1.4" is-regex "^1.1.4"
sass@^1.75.0: sass@^1.76.0:
version "1.75.0" version "1.76.0"
resolved "https://registry.yarnpkg.com/sass/-/sass-1.75.0.tgz#91bbe87fb02dfcc34e052ddd6ab80f60d392be6c" resolved "https://registry.yarnpkg.com/sass/-/sass-1.76.0.tgz#fe15909500735ac154f0dc7386d656b62b03987d"
integrity sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw== integrity sha512-nc3LeqvF2FNW5xGF1zxZifdW3ffIz5aBb7I7tSvOoNu7z1RQ6pFt9MBuiPtjgaI62YWrM/txjWlOCFiGtf2xpw==
dependencies: dependencies:
chokidar ">=3.0.0 <4.0.0" chokidar ">=3.0.0 <4.0.0"
immutable "^4.0.0" immutable "^4.0.0"
@ -2406,10 +2406,10 @@ supports-preserve-symlinks-flag@^1.0.0:
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
terser@^5.30.4: terser@^5.31.0:
version "5.30.4" version "5.31.0"
resolved "https://registry.yarnpkg.com/terser/-/terser-5.30.4.tgz#62b4d16a819424e6317fd5ceffb4ee8dc769803a" resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.0.tgz#06eef86f17007dbad4593f11a574c7f5eb02c6a1"
integrity sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ== integrity sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==
dependencies: dependencies:
"@jridgewell/source-map" "^0.3.3" "@jridgewell/source-map" "^0.3.3"
acorn "^8.8.2" acorn "^8.8.2"
@ -2514,15 +2514,15 @@ vite-plugin-compression@^0.5.1:
debug "^4.3.3" debug "^4.3.3"
fs-extra "^10.0.0" fs-extra "^10.0.0"
vite-plugin-css-injected-by-js@^3.5.0: vite-plugin-css-injected-by-js@^3.5.1:
version "3.5.0" version "3.5.1"
resolved "https://registry.yarnpkg.com/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.0.tgz#784c0f42c2b42155eb4c726c6addfa24aba9f4fb" resolved "https://registry.yarnpkg.com/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.1.tgz#b9c568c21b131d08e31aa6d368ee39c9d6c1b6c1"
integrity sha512-d0QaHH9kS93J25SwRqJNEfE29PSuQS5jn51y9N9i2Yoq0FRO7rjuTeLvjM5zwklZlRrIn6SUdtOEDKyHokgJZg== integrity sha512-9ioqwDuEBxW55gNoWFEDhfLTrVKXEEZgl5adhWmmqa88EQGKfTmexy4v1Rh0pAS6RhKQs2bUYQArprB32JpUZQ==
vite@^5.2.10: vite@^5.2.11:
version "5.2.10" version "5.2.11"
resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.10.tgz#2ac927c91e99d51b376a5c73c0e4b059705f5bd7" resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.11.tgz#726ec05555431735853417c3c0bfb36003ca0cbd"
integrity sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw== integrity sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==
dependencies: dependencies:
esbuild "^0.20.1" esbuild "^0.20.1"
postcss "^8.4.38" postcss "^8.4.38"
@ -2580,25 +2580,25 @@ vue-template-compiler@^2.7.14:
de-indent "^1.0.2" de-indent "^1.0.2"
he "^1.2.0" he "^1.2.0"
vue-tsc@^2.0.14: vue-tsc@^2.0.16:
version "2.0.14" version "2.0.16"
resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-2.0.14.tgz#5a8a652bcba30fa6fd8f7ac6af5df8e387f25cd8" resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-2.0.16.tgz#ba82c4cdac283e8e39e30e817c8c1c967e528358"
integrity sha512-DgAO3U1cnCHOUO7yB35LENbkapeRsBZ7Ugq5hGz/QOHny0+1VQN8eSwSBjYbjLVPfvfw6EY7sNPjbuHHUhckcg== integrity sha512-/gHAWJa216PeEhfxtAToIbxdWgw01wuQzo48ZUqMYVEyNqDp+OYV9xMO5HaPS2P3Ls0+EsjguMZLY4cGobX4Ew==
dependencies: dependencies:
"@volar/typescript" "2.2.0-alpha.10" "@volar/typescript" "~2.2.0"
"@vue/language-core" "2.0.14" "@vue/language-core" "2.0.16"
semver "^7.5.4" semver "^7.5.4"
vue@^3.4.25: vue@^3.4.26:
version "3.4.25" version "3.4.26"
resolved "https://registry.yarnpkg.com/vue/-/vue-3.4.25.tgz#e59d4ed36389647b52ff2fd7aa84bb6691f4205b" resolved "https://registry.yarnpkg.com/vue/-/vue-3.4.26.tgz#936c97e37672c737705d7bdfa62c31af18742269"
integrity sha512-HWyDqoBHMgav/OKiYA2ZQg+kjfMgLt/T0vg4cbIF7JbXAjDexRf5JRg+PWAfrAkSmTd2I8aPSXtooBFWHB98cg== integrity sha512-bUIq/p+VB+0xrJubaemrfhk1/FiW9iX+pDV+62I/XJ6EkspAO9/DXEjbDFoe8pIfOZBqfk45i9BMc41ptP/uRg==
dependencies: dependencies:
"@vue/compiler-dom" "3.4.25" "@vue/compiler-dom" "3.4.26"
"@vue/compiler-sfc" "3.4.25" "@vue/compiler-sfc" "3.4.26"
"@vue/runtime-dom" "3.4.25" "@vue/runtime-dom" "3.4.26"
"@vue/server-renderer" "3.4.25" "@vue/server-renderer" "3.4.26"
"@vue/shared" "3.4.25" "@vue/shared" "3.4.26"
webpack-sources@^3.2.3: webpack-sources@^3.2.3:
version "3.2.3" version "3.2.3"