mirror of
https://github.com/TeamPiped/Piped.git
synced 2024-08-14 23:57:27 +00:00
Merge branch 'master' into locale-improvements
This commit is contained in:
commit
d65d0b2fae
11 changed files with 213 additions and 155 deletions
|
@ -12,7 +12,7 @@
|
|||
"@fortawesome/free-brands-svg-icons": "^5.15.4",
|
||||
"@fortawesome/free-solid-svg-icons": "^5.15.4",
|
||||
"@fortawesome/vue-fontawesome": "^3.0.0-4",
|
||||
"core-js": "3.16.4",
|
||||
"core-js": "3.17.2",
|
||||
"css-loader": "^6.2.0",
|
||||
"dompurify": "^2.3.1",
|
||||
"hotkeys-js": "^3.8.7",
|
||||
|
@ -21,7 +21,7 @@
|
|||
"register-service-worker": "^1.7.1",
|
||||
"shaka-player": "3.2.0",
|
||||
"uikit": "3.7.2",
|
||||
"vue": "^3.1.5",
|
||||
"vue": "^3.2.8",
|
||||
"vue-i18n": "^9.1.7",
|
||||
"vue-router": "^4.0.11",
|
||||
"xml-js": "^1.6.11"
|
||||
|
@ -31,7 +31,7 @@
|
|||
"@vue/cli-plugin-eslint": "^4.5.13",
|
||||
"@vue/cli-plugin-pwa": "^4.5.13",
|
||||
"@vue/cli-service": "^4.5.13",
|
||||
"@vue/compiler-sfc": "3.2.6",
|
||||
"@vue/compiler-sfc": "3.2.8",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-plugin-vue": "^7.17.0"
|
||||
|
|
|
@ -1,12 +1,23 @@
|
|||
<template>
|
||||
<h1 class="uk-text-bold uk-text-center" v-t="'titles.feed'" />
|
||||
|
||||
<small>You can import subscriptions from <router-link to="/import">here</router-link>.</small>
|
||||
<button
|
||||
v-if="authenticated"
|
||||
@click="exportHandler"
|
||||
class="uk-button uk-button-small"
|
||||
style="background: #222; margin-right: 0.5rem"
|
||||
type="button"
|
||||
>
|
||||
<router-link to="/subscriptions">
|
||||
Subscriptions
|
||||
</router-link>
|
||||
</button>
|
||||
|
||||
<br />
|
||||
<router-link to="/subscriptions" class="uk-text-center" v-t="'actions.view_subscriptions'" />
|
||||
<span>
|
||||
<a :href="getRssUrl"><font-awesome-icon icon="rss" style="padding-top: 0.2rem"></font-awesome-icon></a>
|
||||
</span>
|
||||
|
||||
<br />
|
||||
<span class="uk-align-right">
|
||||
{{ $t("actions.sort_by") }}
|
||||
<select class="uk-select uk-width-auto" v-model="selectedSort" @change="onChange()">
|
||||
<option value="descending" v-t="'actions.most_recent'" />
|
||||
|
@ -14,10 +25,7 @@
|
|||
<option value="channel_ascending" v-t="'actions.channel_name_asc'" />
|
||||
<option value="channel_descending" v-t="'actions.channel_name_desc'" />
|
||||
</select>
|
||||
|
||||
<div class="uk-align-right">
|
||||
<a :href="getRssUrl"><font-awesome-icon icon="rss"></font-awesome-icon></a>
|
||||
</div>
|
||||
</span>
|
||||
|
||||
<hr />
|
||||
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
<template>
|
||||
<h1 class="uk-text-bold uk-text-center">Watch History</h1>
|
||||
|
||||
<br />
|
||||
{{ $t("actions.sort_by") }}
|
||||
|
||||
<div style="text-align: right">
|
||||
{{ $t("actions.sort_by") }}:
|
||||
<select class="uk-select uk-width-auto" v-model="selectedSort" @change="onChange()">
|
||||
<option value="descending" v-t="'actions.most_recent'" />
|
||||
<option value="ascending" v-t="'actions.least_recent'" />
|
||||
<option value="channel_ascending" v-t="'actions.channel_name_asc'" />
|
||||
<option value="channel_descending" v-t="'actions.channel_name_desc'" />
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<hr />
|
||||
|
||||
|
@ -22,6 +24,8 @@
|
|||
<VideoItem :video="video" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
|
|
@ -95,7 +95,9 @@ export default {
|
|||
|
||||
const MseSupport = window.MediaSource !== undefined;
|
||||
|
||||
const lbry = this.video.videoStreams.filter(stream => stream.quality === "LBRY")[0];
|
||||
const lbry = this.getPreferenceBoolean("disableLBRY", false)
|
||||
? null
|
||||
: this.video.videoStreams.filter(stream => stream.quality === "LBRY")[0];
|
||||
|
||||
var uri;
|
||||
|
||||
|
@ -112,6 +114,12 @@ export default {
|
|||
} else uri = this.video.dash;
|
||||
} else if (lbry) {
|
||||
uri = lbry.url;
|
||||
if (this.getPreferenceBoolean("proxyLBRY", false)) {
|
||||
const url = new URL(uri);
|
||||
url.searchParams.set("host", url.host);
|
||||
url.host = new URL(this.video.proxyUrl).host;
|
||||
uri = url.toString();
|
||||
}
|
||||
} else {
|
||||
uri = this.video.videoStreams.filter(stream => stream.codec == null).slice(-1)[0].url;
|
||||
}
|
||||
|
|
|
@ -106,6 +106,14 @@
|
|||
<option value="vp9">VP9</option>
|
||||
<option value="avc">AVC (h.264)</option>
|
||||
</select>
|
||||
<br />
|
||||
<b v-t="'actions.disable_lbry'" />
|
||||
<br />
|
||||
<input class="uk-checkbox" v-model="disableLBRY" @change="onChange($event)" type="checkbox" />
|
||||
<br />
|
||||
<b v-t="'actions.enable_lbry_proxy'" />
|
||||
<br />
|
||||
<input class="uk-checkbox" v-model="proxyLBRY" @change="onChange($event)" type="checkbox" />
|
||||
<h2 v-t="'actions.instances_list'" />
|
||||
<table class="uk-table">
|
||||
<thead>
|
||||
|
@ -181,6 +189,8 @@ export default {
|
|||
{ code: "tr", name: "Turkish" },
|
||||
],
|
||||
enabledCodecs: ["av1", "vp9", "avc"],
|
||||
disableLBRY: false,
|
||||
proxyLBRY: false,
|
||||
};
|
||||
},
|
||||
activated() {
|
||||
|
@ -267,6 +277,8 @@ export default {
|
|||
this.watchHistory = this.getPreferenceBoolean("watchHistory", false);
|
||||
this.selectedLanguage = this.getPreferenceString("hl", "en");
|
||||
this.enabledCodecs = this.getPreferenceString("enabledCodecs", "av1,vp9,avc").split(",");
|
||||
this.disableLBRY = this.getPreferenceBoolean("disableLBRY", false);
|
||||
this.proxyLBRY = this.getPreferenceBoolean("proxyLBRY", false);
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
@ -307,6 +319,8 @@ export default {
|
|||
localStorage.setItem("watchHistory", this.watchHistory);
|
||||
localStorage.setItem("hl", this.selectedLanguage);
|
||||
localStorage.setItem("enabledCodecs", this.enabledCodecs.join(","));
|
||||
localStorage.setItem("disableLBRY", this.disableLBRY);
|
||||
localStorage.setItem("proxyLBRY", this.proxyLBRY);
|
||||
|
||||
if (shouldReload) window.location.reload();
|
||||
}
|
||||
|
|
|
@ -25,15 +25,11 @@
|
|||
v-bind:key="result.url"
|
||||
v-for="result in results.items"
|
||||
>
|
||||
<div class="uk-text-secondary">
|
||||
<VideoItem v-if="shouldUseVideoItem(result)" :video="result" height="94" width="168" />
|
||||
<div class="uk-text-secondary" v-if="!shouldUseVideoItem(result)">
|
||||
<router-link class="uk-text-emphasis" v-bind:to="result.url">
|
||||
<div class="uk-position-relative">
|
||||
<img style="width: 100%" v-bind:src="result.thumbnail" loading="lazy" />
|
||||
<span
|
||||
v-if="result.duration"
|
||||
class="uk-label uk-border-rounded uk-position-absolute uk-dark"
|
||||
style="bottom: 5px; right: 5px; opacity: .95;"
|
||||
>{{ timeFormat(result.duration) }}</span>
|
||||
</div>
|
||||
<p>
|
||||
{{ result.name }} <font-awesome-icon
|
||||
|
@ -52,25 +48,18 @@
|
|||
</p>
|
||||
</router-link>
|
||||
|
||||
<b v-if="result.uploadDate">
|
||||
{{ result.uploadDate }}
|
||||
</b>
|
||||
|
||||
<a v-if="result.uploaderName" class="uk-text-muted">{{ result.uploaderName }}</a>
|
||||
<b v-if="result.videos >= 0"><br v-if="result.uploaderName" />{{ result.videos }} {{ $t("video.videos") }}</b>
|
||||
|
||||
<br />
|
||||
|
||||
<b v-if="result.views >= 0" class="uk-text-small">
|
||||
<font-awesome-icon icon="eye"></font-awesome-icon>
|
||||
{{ numberFormat(result.views) }} {{ $t("video.views") }}
|
||||
</b>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import VideoItem from "@/components/VideoItem.vue";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
@ -124,6 +113,12 @@ export default {
|
|||
});
|
||||
}
|
||||
},
|
||||
shouldUseVideoItem(item) {
|
||||
return item.title;
|
||||
},
|
||||
},
|
||||
components: {
|
||||
VideoItem,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -1,32 +1,51 @@
|
|||
<template>
|
||||
<h1 class="uk-text-bold uk-text-center">Subscriptions</h1>
|
||||
|
||||
|
||||
<div style="text-align: center">
|
||||
<button
|
||||
v-if="authenticated"
|
||||
class="uk-button uk-button-small"
|
||||
style="background: #222; margin-right: 0.5rem"
|
||||
type="button"
|
||||
>
|
||||
<router-link to="/import">
|
||||
Import from JSON
|
||||
</router-link>
|
||||
</button>
|
||||
|
||||
<button
|
||||
v-if="authenticated"
|
||||
@click="exportHandler"
|
||||
class="uk-button uk-button-small"
|
||||
style="background: #222"
|
||||
style="background: #222; color: white"
|
||||
type="button"
|
||||
>
|
||||
{{ $t("actions.export_to_json") }}
|
||||
</button>
|
||||
|
||||
<div :key="subscription.url" v-for="subscription in subscriptions">
|
||||
</div>
|
||||
<hr />
|
||||
|
||||
|
||||
<div :key="subscription.url" v-for="subscription in subscriptions" style="text-align: center;">
|
||||
<div class="uk-text-primary" :style="[{ background: backgroundColor }]">
|
||||
<a :href="subscription.url">
|
||||
<img :src="subscription.avatar" class="uk-margin-small-right uk-border-circle" width="50" height="50" />
|
||||
<span class="uk-text-truncate">{{ subscription.name }}</span>
|
||||
<img :src="subscription.avatar" class="uk-margin-small-right uk-border-circle" width="96" height="96" />
|
||||
<span class="uk-text-large" style="width: 30rem; display: inline-block; text-align: center; margin-left: 6rem">{{ subscription.name }}</span>
|
||||
</a>
|
||||
<button
|
||||
class="uk-button uk-button-small"
|
||||
style="background: #222"
|
||||
class="uk-button uk-button-large"
|
||||
style="background: #222; margin-left: 0.5rem; width: 185px"
|
||||
type="button"
|
||||
@click="handleButton(subscription)"
|
||||
>
|
||||
{{ subscription.subscribed ? $t("actions.unsubscribe") : $t("actions.subscribe") }}
|
||||
</button>
|
||||
</div>
|
||||
<br />
|
||||
</div>
|
||||
<br />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
|
|
@ -23,38 +23,46 @@
|
|||
>{{ $t("video.watched") }}</span
|
||||
>
|
||||
</div>
|
||||
<p class="uk-text-break">{{ video.title }}</p>
|
||||
|
||||
<div>
|
||||
<p class="uk-text-break" style="padding-top: 0.5rem; margin-bottom: 0.5rem">{{ video.title }}</p>
|
||||
</div>
|
||||
</router-link>
|
||||
|
||||
<div :class="{ 'uk-align-left': !(video.views >= 0 || video.uploadedDate) }">
|
||||
<div v-if="video.uploaderUrl && video.uploaderName && !hideChannel">
|
||||
<div class="uk-align-right" style="margin-left: 0; margin-bottom: 0; display: inline-block; width: 10%">
|
||||
<router-link :to="video.url + '&listen=1'">
|
||||
<font-awesome-icon icon="headphones"></font-awesome-icon>
|
||||
</router-link>
|
||||
</div>
|
||||
|
||||
<div v-if="video.uploaderUrl && video.uploaderName && !hideChannel" style="display: flex; flex-flow: row; height: 15%">
|
||||
<router-link class="uk-link-muted" :to="video.uploaderUrl">
|
||||
<img v-if="video.uploaderAvatar" :src="video.uploaderAvatar" loading="lazy" class="uk-border-circle" style="margin-right: 0.5rem; margin-top:0.5rem; width: 32px; height: 32px;" />
|
||||
</router-link>
|
||||
|
||||
<div>
|
||||
<router-link class="uk-link-muted" :to="video.uploaderUrl">
|
||||
{{ video.uploaderName }} <font-awesome-icon
|
||||
v-if="video.uploaderVerified"
|
||||
icon="check"
|
||||
></font-awesome-icon>
|
||||
</router-link>
|
||||
<br />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<b v-if="video.views >= 0 || video.uploadedDate" class="uk-text-small uk-align-left">
|
||||
<div v-if="video.views >= 0">
|
||||
<font-awesome-icon icon="eye"></font-awesome-icon>
|
||||
{{ numberFormat(video.views) }} {{ $t("video.views") }}
|
||||
<br />
|
||||
</div>
|
||||
<div v-if="video.uploadedDate">
|
||||
|
||||
<b v-if="video.views >= 0 || video.uploadedDate" class="uk-text-small">
|
||||
<span v-if="video.views >= 0">
|
||||
<font-awesome-icon icon="eye"></font-awesome-icon>
|
||||
{{ numberFormat(video.views) }} •
|
||||
</span>
|
||||
<span v-if="video.uploadedDate">
|
||||
{{ video.uploadedDate }}
|
||||
</div>
|
||||
<div v-if="video.uploaded">
|
||||
</span>
|
||||
<span v-if="video.uploaded">
|
||||
{{ timeAgo(video.uploaded) }}
|
||||
</div>
|
||||
</span>
|
||||
</b>
|
||||
<div class="uk-align-right">
|
||||
<router-link :to="video.url + '&listen=1'">
|
||||
<font-awesome-icon icon="headphones"></font-awesome-icon>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
|
|
@ -57,9 +57,9 @@
|
|||
|
||||
<div class="uk-flex uk-flex-middle uk-margin-small-top">
|
||||
<img :src="video.uploaderAvatar" loading="lazy" class="uk-border-circle" />
|
||||
<router-link class="uk-text-bold uk-margin-small-left" v-if="video.uploaderUrl" :to="video.uploaderUrl">
|
||||
<a>{{ video.uploader }}</a>
|
||||
</router-link>
|
||||
<router-link class="uk-link uk-margin-small-left" v-if="video.uploaderUrl" :to="video.uploaderUrl">
|
||||
{{ video.uploader }} </router-link
|
||||
> <font-awesome-icon v-if="video.uploaderVerified" icon="check"></font-awesome-icon>
|
||||
<div class="uk-flex-1"></div>
|
||||
<button
|
||||
v-if="authenticated"
|
||||
|
|
|
@ -54,7 +54,9 @@
|
|||
"auto_play_next_video": "Auto Play next Video",
|
||||
"donations": "Donations",
|
||||
"minimize_description": "Minimize Description",
|
||||
"show_description": "Show Description"
|
||||
"show_description": "Show Description",
|
||||
"disable_lbry": "Disable LBRY for Streaming",
|
||||
"enable_lbry_proxy": "Enable Proxy for LBRY"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Pinned by"
|
||||
|
|
128
yarn.lock
128
yarn.lock
|
@ -1513,38 +1513,38 @@
|
|||
semver "^6.1.0"
|
||||
strip-ansi "^6.0.0"
|
||||
|
||||
"@vue/compiler-core@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.6.tgz#7162bb0670273f04566af0d353009187ab577915"
|
||||
integrity sha512-vbwnz7+OhtLO5p5i630fTuQCL+MlUpEMTKHuX+RfetQ+3pFCkItt2JUH+9yMaBG2Hkz6av+T9mwN/acvtIwpbw==
|
||||
"@vue/compiler-core@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.8.tgz#13b2386bdb03455c9f6c6af2f3468561a5ae5b1d"
|
||||
integrity sha512-Sx8qJ030+QM/NakUrkQuUGCeDEb+0d0AgFOl5W4qRvR6e+YgLnW2ew0jREf4T1hak9Fdk8Edl67StECHrhEuew==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.15.0"
|
||||
"@babel/types" "^7.15.0"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/shared" "3.2.8"
|
||||
estree-walker "^2.0.2"
|
||||
source-map "^0.6.1"
|
||||
|
||||
"@vue/compiler-dom@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.6.tgz#3764d7fe1a696e39fb2a3c9d638da0749e369b2d"
|
||||
integrity sha512-+a/3oBAzFIXhHt8L5IHJOTP4a5egzvpXYyi13jR7CUYOR1S+Zzv7vBWKYBnKyJLwnrxTZnTQVjeHCgJq743XKg==
|
||||
"@vue/compiler-dom@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.8.tgz#69bc9e08928a12295c31299067f18d87301981a9"
|
||||
integrity sha512-nxBW6k8FMWQ74294CRbqR+iEJRO5vIjx85I3YCOyZFD6FsDHyFL60g76TcJzucp+F2XXIDaYz+A+F4gQlDatjw==
|
||||
dependencies:
|
||||
"@vue/compiler-core" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/compiler-core" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
|
||||
"@vue/compiler-sfc@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.6.tgz#d6ab7410cff57081ab627b15a1ea51a1072c7cf1"
|
||||
integrity sha512-Ariz1eDsf+2fw6oWXVwnBNtfKHav72RjlWXpEgozYBLnfRPzP+7jhJRw4Nq0OjSsLx2HqjF3QX7HutTjYB0/eA==
|
||||
"@vue/compiler-sfc@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.8.tgz#23699f69d38b1c32ec54f8b470f3e6375ffc6b6e"
|
||||
integrity sha512-XClueQAXoWtN2EToKgfYH9FCL70Ac4bxx6OZFZzxYSg1bei8IB9srJP1UOfnJb2IpnM1heikAz1dp1HI1wHcyQ==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.15.0"
|
||||
"@babel/types" "^7.15.0"
|
||||
"@types/estree" "^0.0.48"
|
||||
"@vue/compiler-core" "3.2.6"
|
||||
"@vue/compiler-dom" "3.2.6"
|
||||
"@vue/compiler-ssr" "3.2.6"
|
||||
"@vue/ref-transform" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/compiler-core" "3.2.8"
|
||||
"@vue/compiler-dom" "3.2.8"
|
||||
"@vue/compiler-ssr" "3.2.8"
|
||||
"@vue/ref-transform" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
consolidate "^0.16.0"
|
||||
estree-walker "^2.0.2"
|
||||
hash-sum "^2.0.0"
|
||||
|
@ -1556,13 +1556,13 @@
|
|||
postcss-selector-parser "^6.0.4"
|
||||
source-map "^0.6.1"
|
||||
|
||||
"@vue/compiler-ssr@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.6.tgz#cadcf199859fa00739f4275b4c85970e4b0abe7d"
|
||||
integrity sha512-A7IKRKHSyPnTC4w1FxHkjzoyjXInsXkcs/oX22nBQ+6AWlXj2Tt1le96CWPOXy5vYlsTYkF1IgfBaKIdeN/39g==
|
||||
"@vue/compiler-ssr@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.8.tgz#99733532f44d77144ce1e3b853f2fa08ba394e7a"
|
||||
integrity sha512-QqyiFRiIl55W0abDNQ6cNG/7iIfBHmbXVtssUAjX3IlI87ELeT0xackmrCyTSnfIX12ixljg9AN0COIZwlvt5A==
|
||||
dependencies:
|
||||
"@vue/compiler-dom" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/compiler-dom" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
|
||||
"@vue/component-compiler-utils@^3.1.0", "@vue/component-compiler-utils@^3.1.2":
|
||||
version "3.2.2"
|
||||
|
@ -1590,45 +1590,45 @@
|
|||
resolved "https://registry.yarnpkg.com/@vue/preload-webpack-plugin/-/preload-webpack-plugin-1.1.2.tgz#ceb924b4ecb3b9c43871c7a429a02f8423e621ab"
|
||||
integrity sha512-LIZMuJk38pk9U9Ur4YzHjlIyMuxPlACdBIHH9/nGYVTsaGKOSnSuELiE8vS9wa+dJpIYspYUOqk+L1Q4pgHQHQ==
|
||||
|
||||
"@vue/reactivity@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.6.tgz#b8993fa6f48545178e588e25a9c9431a1c1b7d50"
|
||||
integrity sha512-8vIDD2wpCnYisNNZjmcIj+Rixn0uhZNY3G1vzlgdVdLygeRSuFjkmnZk6WwvGzUWpKfnG0e/NUySM3mVi59hAA==
|
||||
"@vue/reactivity@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.8.tgz#b27200ccfaa06f312ac467b12a38161377c557ed"
|
||||
integrity sha512-/Hj3Uz28SG+xB5SDWPOXUs0emvHkq82EmTgk44/plTVFeswCZ3i3Hd7WmsrPT4rGajlDKd5uqMmW0ith1ED0FA==
|
||||
dependencies:
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/shared" "3.2.8"
|
||||
|
||||
"@vue/ref-transform@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/ref-transform/-/ref-transform-3.2.6.tgz#30b5f1fa77daf9894bc23e6a5a0e3586a4a796b8"
|
||||
integrity sha512-ie39+Y4nbirDLvH+WEq6Eo/l3n3mFATayqR+kEMSphrtMW6Uh/eEMx1Gk2Jnf82zmj3VLRq7dnmPx72JLcBYkQ==
|
||||
"@vue/ref-transform@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/ref-transform/-/ref-transform-3.2.8.tgz#a527047bab43ce50ef3d400ce71312ab30f825dc"
|
||||
integrity sha512-9LdADd4JM3klt+b2qNT8a7b7JvBETNBy2Btv5rDzyPrAVS4Vrw+1WWay6gZBgnxfJ9TPSvG8f/9zu6gNGHmJLA==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.15.0"
|
||||
"@vue/compiler-core" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/compiler-core" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
estree-walker "^2.0.2"
|
||||
magic-string "^0.25.7"
|
||||
|
||||
"@vue/runtime-core@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.6.tgz#376baeef7fe02a62377d46d0d0a8ab9510db1d8e"
|
||||
integrity sha512-3mqtgpj/YSGFxtvTufSERRApo92B16JNNxz9p+5eG6PPuqTmuRJz214MqhKBEgLEAIQ6R6YCbd83ZDtjQnyw2g==
|
||||
"@vue/runtime-core@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.8.tgz#8a2342c0baa0fee192f819a3bdc19547d7430b88"
|
||||
integrity sha512-hwzXLGw1njBEY5JSyRXIIdCtzMFFF6F38WcKMmoIE3p7da30jEbWt8EwwrBomjT8ZbqzElOGlewBcnXNOiiIUg==
|
||||
dependencies:
|
||||
"@vue/reactivity" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/reactivity" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
|
||||
"@vue/runtime-dom@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.6.tgz#0f74dbca84d56c222fbfbd53415b260386859a3b"
|
||||
integrity sha512-fq33urnP0BNCGm2O3KCzkJlKIHI80C94HJ4qDZbjsTtxyOn5IHqwKSqXVN3RQvO6epcQH+sWS+JNwcNDPzoasg==
|
||||
"@vue/runtime-dom@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.8.tgz#c6631b507049d39844b0434e81df1aa79efcc6cb"
|
||||
integrity sha512-A/aRrlGLJ5y4Z7eNbnO/xHwx2RiPijQo7D3OIwESroG3HNP+dpuoqamajo5TXS9ZGjbMOih82COoe7xb9P4BZw==
|
||||
dependencies:
|
||||
"@vue/runtime-core" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/runtime-core" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
csstype "^2.6.8"
|
||||
|
||||
"@vue/shared@3.2.6":
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.6.tgz#2c22bae88fe2b7b59fa68a9c9c4cd60bae2c1794"
|
||||
integrity sha512-uwX0Qs2e6kdF+WmxwuxJxOnKs/wEkMArtYpHSm7W+VY/23Tl8syMRyjnzEeXrNCAP0/8HZxEGkHJsjPEDNRuHw==
|
||||
"@vue/shared@3.2.8":
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.8.tgz#2f918e330aeb3f56ab1031ca60a5b30672512457"
|
||||
integrity sha512-E2DQQnG7Qr4GwTs3GlfPPlHliGVADoufTnhpwfoViw7JlyLMmYtjfnTwM6nXAwvSJWiF7D+7AxpnWBBT3VWo6Q==
|
||||
|
||||
"@vue/web-component-wrapper@^1.2.0":
|
||||
version "1.3.0"
|
||||
|
@ -2983,10 +2983,10 @@ core-js-compat@^3.14.0, core-js-compat@^3.16.0, core-js-compat@^3.6.5:
|
|||
browserslist "^4.16.8"
|
||||
semver "7.0.0"
|
||||
|
||||
core-js@3.16.4, core-js@^3.6.5:
|
||||
version "3.16.4"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.16.4.tgz#0fb1029a554fc2688c0963d7c900e188188a78e0"
|
||||
integrity sha512-Tq4GVE6XCjE+hcyW6hPy0ofN3hwtLudz5ZRdrlCnsnD/xkm/PWQRudzYHiKgZKUcefV6Q57fhDHjZHJP5dpfSg==
|
||||
core-js@3.17.2, core-js@^3.6.5:
|
||||
version "3.17.2"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.17.2.tgz#f960eae710dc62c29cca93d5332e3660e289db10"
|
||||
integrity sha512-XkbXqhcXeMHPRk2ItS+zQYliAMilea2euoMsnpRRdDad6b2VY6CQQcwz1K8AnWesfw4p165RzY0bTnr3UrbYiA==
|
||||
|
||||
core-js@^2.4.0:
|
||||
version "2.6.12"
|
||||
|
@ -8795,14 +8795,14 @@ vue-template-es2015-compiler@^1.9.0:
|
|||
resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825"
|
||||
integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==
|
||||
|
||||
vue@^3.1.5:
|
||||
version "3.2.6"
|
||||
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.6.tgz#c71445078751f458648fd8fb3a2da975507d03d2"
|
||||
integrity sha512-Zlb3LMemQS3Xxa6xPsecu45bNjr1hxO8Bh5FUmE0Dr6Ot0znZBKiM47rK6O7FTcakxOnvVN+NTXWJF6u8ajpCQ==
|
||||
vue@^3.2.8:
|
||||
version "3.2.8"
|
||||
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.8.tgz#9124e4c31ebc9c592b2b9f293df5c9a88a78e944"
|
||||
integrity sha512-x7lwdnOSkceHQUXRVVHBaZzcp6v7M2CYtSZH75zZaT1mTjB4plC4KZHKP/5jAvdqOLBHZGwDSMkWXm3YbAufrA==
|
||||
dependencies:
|
||||
"@vue/compiler-dom" "3.2.6"
|
||||
"@vue/runtime-dom" "3.2.6"
|
||||
"@vue/shared" "3.2.6"
|
||||
"@vue/compiler-dom" "3.2.8"
|
||||
"@vue/runtime-dom" "3.2.8"
|
||||
"@vue/shared" "3.2.8"
|
||||
|
||||
watchpack-chokidar2@^2.0.1:
|
||||
version "2.0.1"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue