Merge branch 'stable' into develop
This commit is contained in:
commit
232ca0f050
30 changed files with 623 additions and 513 deletions
|
|
@ -97,6 +97,12 @@ server {
|
|||
add_header Access-Control-Allow-Origin '*';
|
||||
}
|
||||
|
||||
# Allow direct access to only specific subdirectories in /media
|
||||
location /media/dynamic_preferences/ {
|
||||
alias ${MEDIA_ROOT}/dynamic_preferences/;
|
||||
add_header Access-Control-Allow-Origin '*';
|
||||
}
|
||||
|
||||
# This is an internal location that is used to serve
|
||||
# media (uploaded) files once correct permission / authentication
|
||||
# has been checked on API side.
|
||||
|
|
@ -122,6 +128,7 @@ server {
|
|||
}
|
||||
|
||||
location /manifest.json {
|
||||
return 302 /api/v1/instance/spa-manifest.json;
|
||||
# If the reverse proxy is terminating SSL, nginx gets confused and redirects to http, hence the full URL
|
||||
return 302 ${FUNKWHALE_PROTOCOL}://${FUNKWHALE_HOSTNAME}/api/v1/instance/spa-manifest.json;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
<meta name="apple-mobile-web-app-title" content="Funkwhale">
|
||||
<meta name="application-name" content="Funkwhale">
|
||||
<meta name="msapplication-TileColor" content="#009fe3">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<meta name="theme-color" content="#f2711c">
|
||||
<style>
|
||||
#fake-app {
|
||||
width: 100vw;
|
||||
|
|
|
|||
|
|
@ -33,22 +33,22 @@
|
|||
"focus-trap": "7.2.0",
|
||||
"fomantic-ui-css": "2.9.2",
|
||||
"howler": "2.2.3",
|
||||
"idb-keyval": "6.2.0",
|
||||
"idb-keyval": "6.2.1",
|
||||
"js-logger": "1.6.1",
|
||||
"lodash-es": "4.17.21",
|
||||
"lru-cache": "7.14.1",
|
||||
"moment": "2.29.4",
|
||||
"showdown": "2.1.0",
|
||||
"standardized-audio-context": "25.3.41",
|
||||
"standardized-audio-context": "25.3.53",
|
||||
"text-clipper": "2.2.0",
|
||||
"transliteration": "2.3.5",
|
||||
"universal-cookie": "4.0.4",
|
||||
"vue": "3.3.2",
|
||||
"vue-gettext": "2.1.12",
|
||||
"vue-i18n": "9.3.0-beta.16",
|
||||
"vue-i18n": "9.3.0-beta.19",
|
||||
"vue-router": "4.2.2",
|
||||
"vue-upload-component": "3.1.6",
|
||||
"vue-virtual-scroller": "2.0.0-beta.7",
|
||||
"vue-upload-component": "3.1.8",
|
||||
"vue-virtual-scroller": "2.0.0-beta.8",
|
||||
"vue3-gettext": "2.3.4",
|
||||
"vue3-lazyload": "0.3.6",
|
||||
"vuedraggable": "4.1.0",
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ export interface Sound {
|
|||
readonly audioNode: IAudioNode<IAudioContext>
|
||||
readonly isErrored: Ref<boolean>
|
||||
readonly isLoaded: Ref<boolean>
|
||||
readonly isDisposed: Ref<boolean>
|
||||
readonly currentTime: number
|
||||
readonly playable: boolean
|
||||
readonly duration: number
|
||||
|
|
@ -51,6 +52,7 @@ export class HTMLSound implements Sound {
|
|||
|
||||
readonly isErrored = ref(false)
|
||||
readonly isLoaded = ref(false)
|
||||
readonly isDisposed = ref(false)
|
||||
|
||||
audioNode = createAudioSource(this.#audio)
|
||||
onSoundLoop: EventHookOn<HTMLSound>
|
||||
|
|
@ -112,12 +114,15 @@ export class HTMLSound implements Sound {
|
|||
}
|
||||
|
||||
async preload () {
|
||||
this.isDisposed.value = false
|
||||
this.isErrored.value = false
|
||||
console.log('CALLING PRELOAD ON', this)
|
||||
this.#audio.load()
|
||||
}
|
||||
|
||||
async dispose () {
|
||||
if (this.isDisposed.value) return
|
||||
|
||||
// Remove all event listeners
|
||||
this.#scope.stop()
|
||||
|
||||
|
|
@ -128,10 +133,17 @@ export class HTMLSound implements Sound {
|
|||
// Cancel any request downloading the source
|
||||
this.#audio.src = ''
|
||||
this.#audio.load()
|
||||
|
||||
this.isDisposed.value = true
|
||||
}
|
||||
|
||||
async play () {
|
||||
return this.#audio.play()
|
||||
try {
|
||||
await this.#audio.play()
|
||||
} catch (err) {
|
||||
console.error('>> AUDIO PLAY ERROR', err, this)
|
||||
this.isErrored.value = true
|
||||
}
|
||||
}
|
||||
|
||||
async pause () {
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ const suggestedInstances = computed(() => {
|
|||
...store.state.instance.knownInstances,
|
||||
serverUrl.endsWith('/') ? serverUrl : serverUrl + '/',
|
||||
store.getters['instance/defaultInstance']
|
||||
]).slice(1)
|
||||
])
|
||||
})
|
||||
|
||||
watch(() => store.state.instance.instanceUrl, () => store.dispatch('instance/fetchSettings'))
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<script setup lang="ts">
|
||||
import { computed, ref, reactive, watch, watchEffect, onMounted } from 'vue'
|
||||
import { computed, ref, reactive, watch, onMounted } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useI18n } from 'vue-i18n'
|
||||
|
||||
|
|
@ -84,7 +84,11 @@ const fetchCandidates = async () => {
|
|||
}
|
||||
}
|
||||
|
||||
watch(filters, fetchCandidates)
|
||||
// NOTE: Whenever we modify filters array, we refetch the candidates automatically
|
||||
watch(filters, fetchCandidates, {
|
||||
deep: true
|
||||
})
|
||||
|
||||
const checkErrors = computed(() => checkResult.value?.errors ?? [])
|
||||
|
||||
const isPublic = ref(true)
|
||||
|
|
@ -107,6 +111,7 @@ const fetchFilters = async () => {
|
|||
}
|
||||
}
|
||||
|
||||
let filterId = Number.MIN_SAFE_INTEGER
|
||||
const isLoading = ref(false)
|
||||
const fetchData = async () => {
|
||||
isLoading.value = true
|
||||
|
|
@ -114,10 +119,10 @@ const fetchData = async () => {
|
|||
try {
|
||||
const response = await axios.get(`radios/radios/${props.id}/`)
|
||||
filters.length = 0
|
||||
filters.push(...response.data.config.map((filter: FilterConfig) => ({
|
||||
config: filter,
|
||||
filter: availableFilters.find(available => available.type === filter.type),
|
||||
hash: +new Date()
|
||||
filters.push(...response.data.config.map((config: FilterConfig) => ({
|
||||
config,
|
||||
filter: availableFilters.find(available => available.type === config.type),
|
||||
hash: filterId++
|
||||
})))
|
||||
|
||||
radioName.value = response.data.name
|
||||
|
|
@ -130,28 +135,19 @@ const fetchData = async () => {
|
|||
isLoading.value = false
|
||||
}
|
||||
|
||||
fetchFilters().then(() => watchEffect(fetchData))
|
||||
fetchFilters().then(() => fetchData())
|
||||
|
||||
const add = async () => {
|
||||
if (currentFilter.value) {
|
||||
filters.push({
|
||||
config: {} as FilterConfig,
|
||||
filter: currentFilter.value,
|
||||
hash: +new Date()
|
||||
})
|
||||
}
|
||||
|
||||
return fetchCandidates()
|
||||
}
|
||||
|
||||
const updateConfig = async (index: number, field: keyof FilterConfig, value: unknown) => {
|
||||
filters[index].config[field] = value
|
||||
return fetchCandidates()
|
||||
if (!currentFilter.value) return
|
||||
filters.push({
|
||||
config: {} as FilterConfig,
|
||||
filter: currentFilter.value,
|
||||
hash: +new Date()
|
||||
})
|
||||
}
|
||||
|
||||
const deleteFilter = async (index: number) => {
|
||||
filters.splice(index, 1)
|
||||
return fetchCandidates()
|
||||
}
|
||||
|
||||
const success = ref(false)
|
||||
|
|
@ -325,11 +321,8 @@ onMounted(() => {
|
|||
<builder-filter
|
||||
v-for="(f, index) in filters"
|
||||
:key="f.hash"
|
||||
:index="index"
|
||||
:config="f.config"
|
||||
:filter="f.filter"
|
||||
@update-config="updateConfig"
|
||||
@delete="deleteFilter"
|
||||
v-model:data="filters[index]"
|
||||
@delete="deleteFilter(index)"
|
||||
/>
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ import type { Track } from '~/types'
|
|||
import axios from 'axios'
|
||||
import $ from 'jquery'
|
||||
|
||||
import { useCurrentElement } from '@vueuse/core'
|
||||
import { ref, onMounted, watch } from 'vue'
|
||||
import { useCurrentElement, useVModel } from '@vueuse/core'
|
||||
import { ref, onMounted, watch, computed } from 'vue'
|
||||
import { useStore } from '~/store'
|
||||
import { clone } from 'lodash-es'
|
||||
|
||||
|
|
@ -20,35 +20,33 @@ type Filter = { candidates: { count: number, sample: Track[] } }
|
|||
type ResponseType = { filters: Array<Filter> }
|
||||
|
||||
interface Events {
|
||||
(e: 'update-config', index: number, name: string, value: number[] | boolean): void
|
||||
(e: 'delete', index: number): void
|
||||
(e: 'update:data', name: string, value: number[] | boolean): void
|
||||
(e: 'delete'): void
|
||||
}
|
||||
|
||||
interface Props {
|
||||
index: number
|
||||
|
||||
filter: BuilderFilter
|
||||
config: FilterConfig
|
||||
data: {
|
||||
filter: BuilderFilter
|
||||
config: FilterConfig
|
||||
}
|
||||
}
|
||||
|
||||
const emit = defineEmits<Events>()
|
||||
const props = defineProps<Props>()
|
||||
const data = useVModel(props, 'data', emit)
|
||||
|
||||
const store = useStore()
|
||||
|
||||
const checkResult = ref<Filter | null>(null)
|
||||
const showCandidadesModal = ref(false)
|
||||
const exclude = ref(props.config.not)
|
||||
const exclude = computed({
|
||||
get: () => data.value.config.not,
|
||||
set: (value: boolean) => (data.value.config.not = value)
|
||||
})
|
||||
|
||||
const el = useCurrentElement()
|
||||
onMounted(() => {
|
||||
for (const field of props.filter.fields) {
|
||||
const selector = ['.dropdown']
|
||||
|
||||
if (field.type === 'list') {
|
||||
selector.push('.multiple')
|
||||
}
|
||||
|
||||
for (const field of data.value.filter.fields) {
|
||||
const settings: SemanticUI.DropdownSettings = {
|
||||
onChange (value) {
|
||||
value = $(this).dropdown('get value').split(',')
|
||||
|
|
@ -57,15 +55,19 @@ onMounted(() => {
|
|||
value = value.map((number: string) => parseInt(number))
|
||||
}
|
||||
|
||||
value.value = value
|
||||
emit('update-config', props.index, field.name, value)
|
||||
data.value.config[field.name] = value
|
||||
fetchCandidates()
|
||||
}
|
||||
}
|
||||
|
||||
let selector = field.type === 'list'
|
||||
? '.dropdown.multiple'
|
||||
: '.dropdown'
|
||||
|
||||
if (field.autocomplete) {
|
||||
selector.push('.autocomplete')
|
||||
// @ts-expect-error custom field?
|
||||
selector += '.autocomplete'
|
||||
|
||||
// @ts-expect-error Semantic UI types are incomplete
|
||||
settings.fields = field.autocomplete_fields
|
||||
settings.minCharacters = 1
|
||||
settings.apiSettings = {
|
||||
|
|
@ -85,15 +87,15 @@ onMounted(() => {
|
|||
}
|
||||
}
|
||||
|
||||
$(el.value).find(selector.join('')).dropdown(settings)
|
||||
$(el.value).find(selector).dropdown(settings)
|
||||
}
|
||||
})
|
||||
|
||||
const fetchCandidates = async () => {
|
||||
const params = {
|
||||
filters: [{
|
||||
...clone(props.config),
|
||||
type: props.filter.type
|
||||
...clone(data.value.config),
|
||||
type: data.value.filter.type
|
||||
}]
|
||||
}
|
||||
|
||||
|
|
@ -106,11 +108,12 @@ const fetchCandidates = async () => {
|
|||
}
|
||||
|
||||
watch(exclude, fetchCandidates)
|
||||
fetchCandidates()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<tr>
|
||||
<td>{{ filter.label }}</td>
|
||||
<td>{{ data.filter.label }}</td>
|
||||
<td>
|
||||
<div class="ui toggle checkbox">
|
||||
<input
|
||||
|
|
@ -118,7 +121,6 @@ watch(exclude, fetchCandidates)
|
|||
v-model="exclude"
|
||||
name="public"
|
||||
type="checkbox"
|
||||
@change="$emit('update-config', index, 'not', exclude)"
|
||||
>
|
||||
<label
|
||||
for="exclude-filter"
|
||||
|
|
@ -130,33 +132,34 @@ watch(exclude, fetchCandidates)
|
|||
</td>
|
||||
<td>
|
||||
<div
|
||||
v-for="f in filter.fields"
|
||||
v-for="f in data.filter.fields"
|
||||
:key="f.name"
|
||||
class="ui field"
|
||||
>
|
||||
<div :class="['ui', 'search', 'selection', 'dropdown', {'autocomplete': f.autocomplete}, {'multiple': f.type === 'list'}]">
|
||||
<div :class="['ui', 'search', 'selection', 'dropdown', { autocomplete: f.autocomplete }, { multiple: f.type === 'list' }]">
|
||||
<i class="dropdown icon" />
|
||||
<div class="default text">
|
||||
{{ f.placeholder }}
|
||||
</div>
|
||||
<input
|
||||
v-if="f.type === 'list' && config[f.name as keyof FilterConfig]"
|
||||
v-if="f.type === 'list' && data.config[f.name as keyof FilterConfig]"
|
||||
:id="f.name"
|
||||
:value="(config[f.name as keyof FilterConfig] as string[]).join(',')"
|
||||
:value="(data.config[f.name as keyof FilterConfig] as string[]).join(',')"
|
||||
type="hidden"
|
||||
>
|
||||
<div
|
||||
v-if="typeof config[f.name as keyof FilterConfig] === 'object'"
|
||||
v-if="typeof data.config[f.name as keyof FilterConfig] === 'object'"
|
||||
class="ui menu"
|
||||
>
|
||||
<div
|
||||
v-for="(v, i) in config[f.name as keyof FilterConfig] as object"
|
||||
:key="i"
|
||||
v-for="(v, i) in data.config[f.name as keyof FilterConfig] as object"
|
||||
v-once
|
||||
:key="data.config.ids?.[i] ?? v"
|
||||
class="ui item"
|
||||
:data-value="v"
|
||||
>
|
||||
<template v-if="config.names">
|
||||
{{ config.names[i] }}
|
||||
<template v-if="data.config.names">
|
||||
{{ data.config.names[i] }}
|
||||
</template>
|
||||
<template v-else>
|
||||
{{ v }}
|
||||
|
|
@ -170,7 +173,7 @@ watch(exclude, fetchCandidates)
|
|||
<a
|
||||
v-if="checkResult"
|
||||
href=""
|
||||
:class="['ui', {'success': checkResult.candidates.count > 10}, 'label']"
|
||||
:class="['ui', { success: checkResult.candidates.count > 10 }, 'label']"
|
||||
@click.prevent="showCandidadesModal = !showCandidadesModal"
|
||||
>
|
||||
{{ $t('components.library.radios.Filter.matchingTracks', checkResult.candidates.count) }}
|
||||
|
|
@ -200,7 +203,7 @@ watch(exclude, fetchCandidates)
|
|||
<td>
|
||||
<button
|
||||
class="ui danger button"
|
||||
@click="$emit('delete', index)"
|
||||
@click="emit('delete')"
|
||||
>
|
||||
{{ $t('components.library.radios.Filter.removeButton') }}
|
||||
</button>
|
||||
|
|
|
|||
|
|
@ -61,9 +61,7 @@ interface TargetType {
|
|||
}
|
||||
|
||||
type Targets = Exclude<StateTarget, undefined>['type']
|
||||
const targets = reactive({
|
||||
track: {}
|
||||
}) as Record<Targets, Record<string, TargetType>>
|
||||
const targets = reactive<Record<Targets, Record<string, TargetType>>>(Object.create(null))
|
||||
|
||||
const fetchTargets = async () => {
|
||||
// we request target data via the API so we can display previous state
|
||||
|
|
@ -96,6 +94,7 @@ const fetchTargets = async () => {
|
|||
})
|
||||
|
||||
for (const payload of response?.data?.results ?? []) {
|
||||
targets[key as keyof typeof targets] ??= Object.create(null)
|
||||
targets[key as keyof typeof targets][payload.id] = {
|
||||
payload,
|
||||
currentState: configs[key as keyof typeof targets].fields.reduce((state, field) => {
|
||||
|
|
|
|||
|
|
@ -324,7 +324,7 @@ export const useQueue = createGlobalState(() => {
|
|||
const clear = async () => {
|
||||
await currentSound.value?.pause()
|
||||
await currentSound.value?.seekTo(0)
|
||||
currentSound.value?.dispose()
|
||||
await currentSound.value?.dispose()
|
||||
|
||||
clearRadio.value = true
|
||||
|
||||
|
|
|
|||
|
|
@ -101,6 +101,11 @@ export const useTracks = createGlobalState(() => {
|
|||
setTimeout(() => playNext(), 0)
|
||||
})
|
||||
|
||||
// NOTE: When the sound is disposed, we need to delete it from the cache (#2157)
|
||||
whenever(sound.isDisposed, () => {
|
||||
soundCache.delete(track.id)
|
||||
})
|
||||
|
||||
// NOTE: Bump current track to ensure that it lives despite enqueueing 3 tracks as next track:
|
||||
//
|
||||
// In every queue we have 3 tracks that are cached, in the order, they're being played:
|
||||
|
|
|
|||
|
|
@ -7,6 +7,9 @@ import axios from 'axios'
|
|||
import useLogger from '~/composables/useLogger'
|
||||
import useFormData from '~/composables/useFormData'
|
||||
|
||||
import { clear as clearIDB } from 'idb-keyval'
|
||||
import { useQueue } from '~/composables/audio/queue'
|
||||
|
||||
export type Permission = 'settings' | 'library' | 'moderation'
|
||||
export interface State {
|
||||
authenticated: boolean
|
||||
|
|
@ -167,6 +170,7 @@ const store: Module<State, RootState> = {
|
|||
} catch (error) {
|
||||
console.log('Error while logging out, probably logged in via oauth')
|
||||
}
|
||||
|
||||
const modules = [
|
||||
'auth',
|
||||
'favorites',
|
||||
|
|
@ -175,9 +179,20 @@ const store: Module<State, RootState> = {
|
|||
'queue',
|
||||
'radios'
|
||||
]
|
||||
modules.forEach(m => {
|
||||
commit(`${m}/reset`, null, { root: true })
|
||||
})
|
||||
|
||||
for (const module of modules) {
|
||||
commit(`${module}/reset`, null, { root: true })
|
||||
}
|
||||
|
||||
// Clear session storage
|
||||
sessionStorage.clear()
|
||||
|
||||
// Clear track queue
|
||||
await useQueue().clear()
|
||||
|
||||
// Clear all indexedDB data
|
||||
await clearIDB()
|
||||
|
||||
logger.info('Log out, goodbye!')
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -126,16 +126,21 @@ const logger = useLogger()
|
|||
// 1. use the url provided in settings.json, if any
|
||||
// 2. use the url specified when building via VUE_APP_INSTANCE_URL
|
||||
// 3. use the current url
|
||||
const instanceUrl = import.meta.env.VUE_APP_INSTANCE_URL as string ?? location.origin
|
||||
let DEFAULT_INSTANCE_URL = `${location.origin}/`
|
||||
try {
|
||||
DEFAULT_INSTANCE_URL = new URL(import.meta.env.VUE_APP_INSTANCE_URL as string).href
|
||||
} catch (e) {
|
||||
logger.warn('Invalid VUE_APP_INSTANCE_URL, falling back to current url', e)
|
||||
}
|
||||
|
||||
const store: Module<State, RootState> = {
|
||||
namespaced: true,
|
||||
state: {
|
||||
frontSettings: {
|
||||
defaultServerUrl: instanceUrl,
|
||||
defaultServerUrl: DEFAULT_INSTANCE_URL,
|
||||
additionalStylesheets: []
|
||||
},
|
||||
instanceUrl,
|
||||
instanceUrl: DEFAULT_INSTANCE_URL,
|
||||
knownInstances: [],
|
||||
nodeinfo: null,
|
||||
settings: {
|
||||
|
|
@ -190,40 +195,31 @@ const store: Module<State, RootState> = {
|
|||
state.nodeinfo = value
|
||||
},
|
||||
instanceUrl: (state, value) => {
|
||||
if (value && !value.endsWith('/')) {
|
||||
value = value + '/'
|
||||
}
|
||||
try {
|
||||
const { href } = new URL(value)
|
||||
state.instanceUrl = href
|
||||
axios.defaults.baseURL = `${href}api/v1/`
|
||||
|
||||
state.instanceUrl = value
|
||||
|
||||
// append the URL to the list (and remove existing one if needed)
|
||||
if (value) {
|
||||
const index = state.knownInstances.indexOf(value)
|
||||
if (index > -1) {
|
||||
state.knownInstances.splice(index, 1)
|
||||
}
|
||||
state.knownInstances.splice(0, 0, value)
|
||||
}
|
||||
|
||||
if (!value) {
|
||||
// append the URL to the list (and remove existing one if needed)
|
||||
const index = state.knownInstances.indexOf(href)
|
||||
if (index > -1) state.knownInstances.splice(index, 1)
|
||||
state.knownInstances.unshift(href)
|
||||
} catch (e) {
|
||||
logger.error('Invalid instance URL', e)
|
||||
axios.defaults.baseURL = undefined
|
||||
return
|
||||
}
|
||||
const suffix = 'api/v1/'
|
||||
axios.defaults.baseURL = state.instanceUrl + suffix
|
||||
}
|
||||
},
|
||||
getters: {
|
||||
absoluteUrl: (state) => (relativeUrl: string) => {
|
||||
absoluteUrl: (_state, getters) => (relativeUrl: string) => {
|
||||
if (relativeUrl.startsWith('http')) return relativeUrl
|
||||
if (state.instanceUrl?.endsWith('/') && relativeUrl.startsWith('/')) {
|
||||
relativeUrl = relativeUrl.slice(1)
|
||||
}
|
||||
|
||||
return (state.instanceUrl ?? instanceUrl) + relativeUrl
|
||||
return relativeUrl.startsWith('/')
|
||||
? `${getters.url.href}${relativeUrl.slice(1)}`
|
||||
: `${getters.url.href}${relativeUrl}`
|
||||
},
|
||||
domain: (state) => new URL(state.instanceUrl ?? instanceUrl).hostname,
|
||||
defaultInstance: () => instanceUrl
|
||||
url: (state) => new URL(state.instanceUrl ?? DEFAULT_INSTANCE_URL),
|
||||
domain: (_state, getters) => getters.url.hostname,
|
||||
defaultInstance: () => DEFAULT_INSTANCE_URL
|
||||
},
|
||||
actions: {
|
||||
setUrl ({ commit }, url) {
|
||||
|
|
@ -269,7 +265,7 @@ const store: Module<State, RootState> = {
|
|||
|
||||
for (const [key, value] of Object.entries(response.data as FrontendSettings)) {
|
||||
if (key === 'defaultServerUrl' && !value) {
|
||||
state.frontSettings.defaultServerUrl = instanceUrl
|
||||
state.frontSettings.defaultServerUrl = DEFAULT_INSTANCE_URL
|
||||
continue
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
body > .modals {
|
||||
z-index: 99999 !important;
|
||||
}
|
||||
|
||||
.modal > .header {
|
||||
text-align: center;
|
||||
|
|
|
|||
|
|
@ -31,7 +31,8 @@ syncRef(pageQuery, page, {
|
|||
transform: {
|
||||
ltr: (left) => +left,
|
||||
rtl: (right) => right.toString()
|
||||
}
|
||||
},
|
||||
direction: 'both'
|
||||
})
|
||||
|
||||
const q = useRouteQuery('q', '')
|
||||
|
|
@ -113,7 +114,7 @@ const currentType = computed(() => types.value.find(({ id }) => id === type.valu
|
|||
const axiosParams = computed(() => {
|
||||
const params = new URLSearchParams({
|
||||
q: query.value,
|
||||
page: page.value as unknown as string,
|
||||
page: pageQuery.value,
|
||||
page_size: paginateBy.value as unknown as string
|
||||
})
|
||||
|
||||
|
|
@ -171,10 +172,12 @@ const search = async () => {
|
|||
}
|
||||
|
||||
watch(type, () => {
|
||||
if (page.value === 1) return search()
|
||||
page.value = 1
|
||||
search()
|
||||
})
|
||||
|
||||
// NOTE: When we watch `page`, the `pageQuery` value is never updated for some reason
|
||||
watch(pageQuery, search)
|
||||
search()
|
||||
|
||||
const labels = computed(() => ({
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@ watch([uuid, object], ([uuid, object], [lastUuid, lastObject]) => {
|
|||
|
||||
const route = useRoute()
|
||||
watchEffect(() => {
|
||||
if (!store.state.auth.authenticated && store.getters['instance/domain'] !== object.value?.actor.domain) {
|
||||
if (!object.value) return
|
||||
if (!store.state.auth.authenticated && store.getters['instance/domain'] !== object.value.actor.domain) {
|
||||
router.push({ name: 'login', query: { next: route.fullPath } })
|
||||
}
|
||||
})
|
||||
|
|
|
|||
339
front/yarn.lock
339
front/yarn.lock
|
|
@ -925,7 +925,7 @@
|
|||
resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310"
|
||||
integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==
|
||||
|
||||
"@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.0", "@babel/runtime@^7.21.0", "@babel/runtime@^7.21.5", "@babel/runtime@^7.22.3", "@babel/runtime@^7.22.5", "@babel/runtime@^7.8.4":
|
||||
"@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.0", "@babel/runtime@^7.21.5", "@babel/runtime@^7.22.5", "@babel/runtime@^7.8.4":
|
||||
version "7.22.5"
|
||||
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.5.tgz#8564dd588182ce0047d55d7a75e93921107b57ec"
|
||||
integrity sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==
|
||||
|
|
@ -1185,15 +1185,15 @@
|
|||
"@intlify/shared" "9.2.2"
|
||||
"@intlify/vue-devtools" "9.2.2"
|
||||
|
||||
"@intlify/core-base@9.3.0-beta.16":
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/core-base/-/core-base-9.3.0-beta.16.tgz#bd993fde9c0a96f081a5805a78bece953bfdce9e"
|
||||
integrity sha512-BoAxVoPIJoPKCCMdsuNXKaaJxvetvHrW2KA43IpkwgPd2/w6zPebh/+v8e4zpXKjFVSgcF97zP87KeVcM/Lxwg==
|
||||
"@intlify/core-base@9.3.0-beta.19":
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/core-base/-/core-base-9.3.0-beta.19.tgz#f89de10d183f4352500beb9c844632c96c5308b0"
|
||||
integrity sha512-mlpVZ1w6ZwnP9QZAs+RzGuFMCuYjZPboX3hX7JzhV49vUcsLj0R4667cmcLpPZzXJguIy/zaqbIyoUvLV8HONQ==
|
||||
dependencies:
|
||||
"@intlify/devtools-if" "9.3.0-beta.16"
|
||||
"@intlify/message-compiler" "9.3.0-beta.16"
|
||||
"@intlify/shared" "9.3.0-beta.16"
|
||||
"@intlify/vue-devtools" "9.3.0-beta.16"
|
||||
"@intlify/devtools-if" "9.3.0-beta.19"
|
||||
"@intlify/message-compiler" "9.3.0-beta.19"
|
||||
"@intlify/shared" "9.3.0-beta.19"
|
||||
"@intlify/vue-devtools" "9.3.0-beta.19"
|
||||
|
||||
"@intlify/devtools-if@9.2.2":
|
||||
version "9.2.2"
|
||||
|
|
@ -1202,12 +1202,12 @@
|
|||
dependencies:
|
||||
"@intlify/shared" "9.2.2"
|
||||
|
||||
"@intlify/devtools-if@9.3.0-beta.16":
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/devtools-if/-/devtools-if-9.3.0-beta.16.tgz#fab2bf0166686e998c9a1539e1eff1e07ee2beb6"
|
||||
integrity sha512-9WXn8YMAnL/DHdoWqCy6yLTXcLFxd8eXB9UNsViQA5JJV7neR+yahr+23X1wP0prhG338MruxAu65khRf+AJCw==
|
||||
"@intlify/devtools-if@9.3.0-beta.19":
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/devtools-if/-/devtools-if-9.3.0-beta.19.tgz#d50265591089456d923e0edfb575985b4b9c0b90"
|
||||
integrity sha512-L4NyqMcuQURejKy9XX0m/2kb37f56NAUvbiXKRx96pahSBclY6T+E0TrKXup0Hx6T0qY55QYGRwyVLeHXIHAMA==
|
||||
dependencies:
|
||||
"@intlify/shared" "9.3.0-beta.16"
|
||||
"@intlify/shared" "9.3.0-beta.19"
|
||||
|
||||
"@intlify/eslint-plugin-vue-i18n@2.0.0":
|
||||
version "2.0.0"
|
||||
|
|
@ -1238,15 +1238,7 @@
|
|||
"@intlify/shared" "9.2.2"
|
||||
source-map "0.6.1"
|
||||
|
||||
"@intlify/message-compiler@9.3.0-beta.16":
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/message-compiler/-/message-compiler-9.3.0-beta.16.tgz#335f7bdb06cfb84d04a1a1c1d6eff2532dfd88e7"
|
||||
integrity sha512-CGQI3xRcs1ET75eDQ0DUy3MRYOqTauRIIgaMoISKiF83gqRWg93FqN8lGMKcpBqaF4tI0JhsfosCaGiBL9+dnw==
|
||||
dependencies:
|
||||
"@intlify/shared" "9.3.0-beta.16"
|
||||
source-map "0.6.1"
|
||||
|
||||
"@intlify/message-compiler@next":
|
||||
"@intlify/message-compiler@9.3.0-beta.19", "@intlify/message-compiler@next":
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/message-compiler/-/message-compiler-9.3.0-beta.19.tgz#1b66bf87d15843c9354a0d07d26e417f44b65182"
|
||||
integrity sha512-5RBn5tMOsWh5FqM65IfEJvfpRS8R0lHEUVNDa2rNc9Y7oGEI7swezlbFqU9Kc5FyHy5Kx2jHtdgFIipDwnIYFQ==
|
||||
|
|
@ -1259,11 +1251,6 @@
|
|||
resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.2.2.tgz#5011be9ca2b4ab86f8660739286e2707f9abb4a5"
|
||||
integrity sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==
|
||||
|
||||
"@intlify/shared@9.3.0-beta.16":
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.3.0-beta.16.tgz#74f254dbb7eac633b86d690a341349db29573896"
|
||||
integrity sha512-kXbm4svALe3lX+EjdJxfnabOphqS4yQ1Ge/iIlR8tvUiYRCoNz3hig1M4336iY++Dfx5ytEQJPNjIcknNIuvig==
|
||||
|
||||
"@intlify/shared@9.3.0-beta.19", "@intlify/shared@next":
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.3.0-beta.19.tgz#090bdd5d6ed1eabbb92ee2f2ead2668edc576596"
|
||||
|
|
@ -1295,13 +1282,13 @@
|
|||
"@intlify/core-base" "9.2.2"
|
||||
"@intlify/shared" "9.2.2"
|
||||
|
||||
"@intlify/vue-devtools@9.3.0-beta.16":
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/vue-devtools/-/vue-devtools-9.3.0-beta.16.tgz#70a615f56d70e2fcaa91eb1a362c3bca1c553f3e"
|
||||
integrity sha512-rQ/jSW0gBciYLBBi+XN65r80B59Ypege9oqUi+EZ2QpOaK54wDcy1xq9w6Zbj6WpY1qgf34KtYawKIF10mMr6w==
|
||||
"@intlify/vue-devtools@9.3.0-beta.19":
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/@intlify/vue-devtools/-/vue-devtools-9.3.0-beta.19.tgz#e3053ec984d28028a3ce15cffd74ce1af40c37f7"
|
||||
integrity sha512-7yz8sUbovPUIf8sCX3+sMdw/xEyeHKBCc7Agxcxv54PiQz3zwsVl0hC1X+JXUy46FiPsMEoFfY8O27xOFLupaw==
|
||||
dependencies:
|
||||
"@intlify/core-base" "9.3.0-beta.16"
|
||||
"@intlify/shared" "9.3.0-beta.16"
|
||||
"@intlify/core-base" "9.3.0-beta.19"
|
||||
"@intlify/shared" "9.3.0-beta.19"
|
||||
|
||||
"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3":
|
||||
version "0.1.3"
|
||||
|
|
@ -1521,10 +1508,10 @@
|
|||
dependencies:
|
||||
type-detect "4.0.8"
|
||||
|
||||
"@sinonjs/fake-timers@^10.0.2", "@sinonjs/fake-timers@^10.2.0":
|
||||
version "10.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz#b3e322a34c5f26e3184e7f6115695f299c1b1194"
|
||||
integrity sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg==
|
||||
"@sinonjs/fake-timers@^10.0.2", "@sinonjs/fake-timers@^10.3.0":
|
||||
version "10.3.0"
|
||||
resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66"
|
||||
integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==
|
||||
dependencies:
|
||||
"@sinonjs/commons" "^3.0.0"
|
||||
|
||||
|
|
@ -1665,9 +1652,9 @@
|
|||
axios ">=0.13.0"
|
||||
|
||||
"@types/node@*":
|
||||
version "20.3.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.0.tgz#719498898d5defab83c3560f45d8498f58d11938"
|
||||
integrity sha512-cumHmIAf6On83X7yP+LrsEyUOf/YlociZelmpRYaGFydoaPdxdt80MAbu6vWerQT2COCp2nPvHdsbD7tHn/YlQ==
|
||||
version "20.3.2"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.2.tgz#fa6a90f2600e052a03c18b8cb3fd83dd4e599898"
|
||||
integrity sha512-vOBLVQeCQfIcF/2Y7eKFTqrMnizK5lRNQ7ykML/5RuwVXVWxYkgwS7xbt4B6fKCUPgbSL5FSsjHQpaGQP/dQmw==
|
||||
|
||||
"@types/node@^14.14.31":
|
||||
version "14.18.50"
|
||||
|
|
@ -1925,14 +1912,14 @@
|
|||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/eslint-plugin@^5.0.0":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.9.tgz#2604cfaf2b306e120044f901e20c8ed926debf15"
|
||||
integrity sha512-4uQIBq1ffXd2YvF7MAvehWKW3zVv/w+mSfRAu+8cKbfj3nwzyqJLNcZJpQ/WZ1HLbJDiowwmQ6NO+63nCA+fqA==
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.1.tgz#81382d6ecb92b8dda70e91f9035611cb2fecd1c3"
|
||||
integrity sha512-KSWsVvsJsLJv3c4e73y/Bzt7OpqMCADUO846bHcuWYSYM19bldbAeDv7dYyV0jwkbMfJ2XdlzwjhXtuD7OY6bw==
|
||||
dependencies:
|
||||
"@eslint-community/regexpp" "^4.4.0"
|
||||
"@typescript-eslint/scope-manager" "5.59.9"
|
||||
"@typescript-eslint/type-utils" "5.59.9"
|
||||
"@typescript-eslint/utils" "5.59.9"
|
||||
"@typescript-eslint/scope-manager" "5.60.1"
|
||||
"@typescript-eslint/type-utils" "5.60.1"
|
||||
"@typescript-eslint/utils" "5.60.1"
|
||||
debug "^4.3.4"
|
||||
grapheme-splitter "^1.0.4"
|
||||
ignore "^5.2.0"
|
||||
|
|
@ -1941,13 +1928,13 @@
|
|||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/parser@^5.0.0":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.9.tgz#a85c47ccdd7e285697463da15200f9a8561dd5fa"
|
||||
integrity sha512-FsPkRvBtcLQ/eVK1ivDiNYBjn3TGJdXy2fhXX+rc7czWl4ARwnpArwbihSOHI2Peg9WbtGHrbThfBUkZZGTtvQ==
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.60.1.tgz#0f2f58209c0862a73e3d5a56099abfdfa21d0fd3"
|
||||
integrity sha512-pHWlc3alg2oSMGwsU/Is8hbm3XFbcrb6P5wIxcQW9NsYBfnrubl/GhVVD/Jm/t8HXhA2WncoIRfBtnCgRGV96Q==
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager" "5.59.9"
|
||||
"@typescript-eslint/types" "5.59.9"
|
||||
"@typescript-eslint/typescript-estree" "5.59.9"
|
||||
"@typescript-eslint/scope-manager" "5.60.1"
|
||||
"@typescript-eslint/types" "5.60.1"
|
||||
"@typescript-eslint/typescript-estree" "5.60.1"
|
||||
debug "^4.3.4"
|
||||
|
||||
"@typescript-eslint/scope-manager@5.48.2":
|
||||
|
|
@ -1958,13 +1945,13 @@
|
|||
"@typescript-eslint/types" "5.48.2"
|
||||
"@typescript-eslint/visitor-keys" "5.48.2"
|
||||
|
||||
"@typescript-eslint/scope-manager@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.9.tgz#eadce1f2733389cdb58c49770192c0f95470d2f4"
|
||||
integrity sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==
|
||||
"@typescript-eslint/scope-manager@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.60.1.tgz#35abdb47f500c68c08f2f2b4f22c7c79472854bb"
|
||||
integrity sha512-Dn/LnN7fEoRD+KspEOV0xDMynEmR3iSHdgNsarlXNLGGtcUok8L4N71dxUgt3YvlO8si7E+BJ5Fe3wb5yUw7DQ==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "5.59.9"
|
||||
"@typescript-eslint/visitor-keys" "5.59.9"
|
||||
"@typescript-eslint/types" "5.60.1"
|
||||
"@typescript-eslint/visitor-keys" "5.60.1"
|
||||
|
||||
"@typescript-eslint/type-utils@5.48.2":
|
||||
version "5.48.2"
|
||||
|
|
@ -1976,13 +1963,13 @@
|
|||
debug "^4.3.4"
|
||||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/type-utils@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.9.tgz#53bfaae2e901e6ac637ab0536d1754dfef4dafc2"
|
||||
integrity sha512-ksEsT0/mEHg9e3qZu98AlSrONAQtrSTljL3ow9CGej8eRo7pe+yaC/mvTjptp23Xo/xIf2mLZKC6KPv4Sji26Q==
|
||||
"@typescript-eslint/type-utils@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.60.1.tgz#17770540e98d65ab4730c7aac618003f702893f4"
|
||||
integrity sha512-vN6UztYqIu05nu7JqwQGzQKUJctzs3/Hg7E2Yx8rz9J+4LgtIDFWjjl1gm3pycH0P3mHAcEUBd23LVgfrsTR8A==
|
||||
dependencies:
|
||||
"@typescript-eslint/typescript-estree" "5.59.9"
|
||||
"@typescript-eslint/utils" "5.59.9"
|
||||
"@typescript-eslint/typescript-estree" "5.60.1"
|
||||
"@typescript-eslint/utils" "5.60.1"
|
||||
debug "^4.3.4"
|
||||
tsutils "^3.21.0"
|
||||
|
||||
|
|
@ -1991,10 +1978,10 @@
|
|||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.48.2.tgz#635706abb1ec164137f92148f06f794438c97b8e"
|
||||
integrity sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA==
|
||||
|
||||
"@typescript-eslint/types@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.9.tgz#3b4e7ae63718ce1b966e0ae620adc4099a6dcc52"
|
||||
integrity sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==
|
||||
"@typescript-eslint/types@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.60.1.tgz#a17473910f6b8d388ea83c9d7051af89c4eb7561"
|
||||
integrity sha512-zDcDx5fccU8BA0IDZc71bAtYIcG9PowaOwaD8rjYbqwK7dpe/UMQl3inJ4UtUK42nOCT41jTSCwg76E62JpMcg==
|
||||
|
||||
"@typescript-eslint/typescript-estree@5.48.2":
|
||||
version "5.48.2"
|
||||
|
|
@ -2009,13 +1996,13 @@
|
|||
semver "^7.3.7"
|
||||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/typescript-estree@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.9.tgz#6bfea844e468427b5e72034d33c9fffc9557392b"
|
||||
integrity sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==
|
||||
"@typescript-eslint/typescript-estree@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.1.tgz#8c71824b7165b64d5ebd7aa42968899525959834"
|
||||
integrity sha512-hkX70J9+2M2ZT6fhti5Q2FoU9zb+GeZK2SLP1WZlvUDqdMbEKhexZODD1WodNRyO8eS+4nScvT0dts8IdaBzfw==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "5.59.9"
|
||||
"@typescript-eslint/visitor-keys" "5.59.9"
|
||||
"@typescript-eslint/types" "5.60.1"
|
||||
"@typescript-eslint/visitor-keys" "5.60.1"
|
||||
debug "^4.3.4"
|
||||
globby "^11.1.0"
|
||||
is-glob "^4.0.3"
|
||||
|
|
@ -2036,17 +2023,17 @@
|
|||
eslint-utils "^3.0.0"
|
||||
semver "^7.3.7"
|
||||
|
||||
"@typescript-eslint/utils@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.9.tgz#adee890107b5ffe02cd46fdaa6c2125fb3c6c7c4"
|
||||
integrity sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==
|
||||
"@typescript-eslint/utils@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.60.1.tgz#6861ebedbefba1ac85482d2bdef6f2ff1eb65b80"
|
||||
integrity sha512-tiJ7FFdFQOWssFa3gqb94Ilexyw0JVxj6vBzaSpfN/8IhoKkDuSAenUKvsSHw2A/TMpJb26izIszTXaqygkvpQ==
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils" "^4.2.0"
|
||||
"@types/json-schema" "^7.0.9"
|
||||
"@types/semver" "^7.3.12"
|
||||
"@typescript-eslint/scope-manager" "5.59.9"
|
||||
"@typescript-eslint/types" "5.59.9"
|
||||
"@typescript-eslint/typescript-estree" "5.59.9"
|
||||
"@typescript-eslint/scope-manager" "5.60.1"
|
||||
"@typescript-eslint/types" "5.60.1"
|
||||
"@typescript-eslint/typescript-estree" "5.60.1"
|
||||
eslint-scope "^5.1.1"
|
||||
semver "^7.3.7"
|
||||
|
||||
|
|
@ -2058,12 +2045,12 @@
|
|||
"@typescript-eslint/types" "5.48.2"
|
||||
eslint-visitor-keys "^3.3.0"
|
||||
|
||||
"@typescript-eslint/visitor-keys@5.59.9":
|
||||
version "5.59.9"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.9.tgz#9f86ef8e95aca30fb5a705bb7430f95fc58b146d"
|
||||
integrity sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==
|
||||
"@typescript-eslint/visitor-keys@5.60.1":
|
||||
version "5.60.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.1.tgz#19a877358bf96318ec35d90bfe6bd1445cce9434"
|
||||
integrity sha512-xEYIxKcultP6E/RMKqube11pGjXH1DCo60mQoWhVYyKfLkwbIVVjYxmOenNMxILx0TjCujPTjjnTIVzm09TXIw==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "5.59.9"
|
||||
"@typescript-eslint/types" "5.60.1"
|
||||
eslint-visitor-keys "^3.3.0"
|
||||
|
||||
"@vitejs/plugin-vue@4.2.3":
|
||||
|
|
@ -2207,7 +2194,7 @@
|
|||
"@vue/compiler-dom" "3.3.4"
|
||||
"@vue/shared" "3.3.4"
|
||||
|
||||
"@vue/devtools-api@^6.0.0-beta.11", "@vue/devtools-api@^6.2.1", "@vue/devtools-api@^6.5.0":
|
||||
"@vue/devtools-api@^6.0.0-beta.11", "@vue/devtools-api@^6.5.0":
|
||||
version "6.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz#98b99425edee70b4c992692628fa1ea2c1e57d07"
|
||||
integrity sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==
|
||||
|
|
@ -2390,9 +2377,9 @@ acorn@^7.1.1, acorn@^7.4.1:
|
|||
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
|
||||
|
||||
acorn@^8.1.0, acorn@^8.5.0, acorn@^8.8.0, acorn@^8.8.1, acorn@^8.8.2:
|
||||
version "8.8.2"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a"
|
||||
integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==
|
||||
version "8.9.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.9.0.tgz#78a16e3b2bcc198c10822786fa6679e245db5b59"
|
||||
integrity sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==
|
||||
|
||||
agent-base@6:
|
||||
version "6.0.2"
|
||||
|
|
@ -2564,21 +2551,13 @@ at-least-node@^1.0.0:
|
|||
resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
|
||||
integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==
|
||||
|
||||
automation-events@^5.0.2:
|
||||
version "5.0.3"
|
||||
resolved "https://registry.yarnpkg.com/automation-events/-/automation-events-5.0.3.tgz#15feb39cabc96c1d35d9ad31959f3c6a6176a41f"
|
||||
integrity sha512-ZZWTNYJTkGjcJUOBX5P0MHZrArJOkcrQsbyGWwlzJpZs961Y5YvKUw5MsAf8xLlvh7+1B8SO/VTvjMmVXFkD3w==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.21.0"
|
||||
tslib "^2.5.0"
|
||||
|
||||
automation-events@^6.0.1, automation-events@^6.0.5:
|
||||
version "6.0.5"
|
||||
resolved "https://registry.yarnpkg.com/automation-events/-/automation-events-6.0.5.tgz#5725ae4655576df2667907f768c88a897892da8e"
|
||||
integrity sha512-HILDp8DRruDqM29WDbpFof+mXMSDdnOlPA07eyVfzHnXrGPbAf5ZLemelbRCrW40BzK8ihIRbZEgVj4+GiM/+A==
|
||||
automation-events@^6.0.1, automation-events@^6.0.6:
|
||||
version "6.0.6"
|
||||
resolved "https://registry.yarnpkg.com/automation-events/-/automation-events-6.0.6.tgz#19981024e1bfc1e393bb786b1a89380114759f06"
|
||||
integrity sha512-0gFiz0TCa0iLm5XBOFtXrcOmA8RB8jOFkj2IWiNnhr0LeahfGQny9ccs1+yYJBJuhKAWUu/lTsXsYELsjvuP0Q==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.22.5"
|
||||
tslib "^2.5.3"
|
||||
tslib "^2.6.0"
|
||||
|
||||
available-typed-arrays@^1.0.5:
|
||||
version "1.0.5"
|
||||
|
|
@ -2710,12 +2689,12 @@ braces@^3.0.2, braces@~3.0.2:
|
|||
fill-range "^7.0.1"
|
||||
|
||||
browserslist@^4.21.3, browserslist@^4.21.5:
|
||||
version "4.21.7"
|
||||
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.7.tgz#e2b420947e5fb0a58e8f4668ae6e23488127e551"
|
||||
integrity sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==
|
||||
version "4.21.9"
|
||||
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.9.tgz#e11bdd3c313d7e2a9e87e8b4b0c7872b13897635"
|
||||
integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==
|
||||
dependencies:
|
||||
caniuse-lite "^1.0.30001489"
|
||||
electron-to-chromium "^1.4.411"
|
||||
caniuse-lite "^1.0.30001503"
|
||||
electron-to-chromium "^1.4.431"
|
||||
node-releases "^2.0.12"
|
||||
update-browserslist-db "^1.0.11"
|
||||
|
||||
|
|
@ -2802,10 +2781,10 @@ callsites@^3.0.0:
|
|||
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
|
||||
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
|
||||
|
||||
caniuse-lite@^1.0.30001489:
|
||||
version "1.0.30001499"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001499.tgz#0235c127d9795c82aaf0a7f43e24018549dac659"
|
||||
integrity sha512-IhoQqRrW6WiecFcfZgoJS1YLEN1/HR1vHP5WNgjCARRW7KUNToHHTX3FrwCM+y4zkRa48D9rE90WFYc2IWhDWQ==
|
||||
caniuse-lite@^1.0.30001503:
|
||||
version "1.0.30001508"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001508.tgz#4461bbc895c692a96da399639cc1e146e7302a33"
|
||||
integrity sha512-sdQZOJdmt3GJs1UMNpCCCyeuS2IEGLXnHyAo9yIO5JJDjbjoVRij4M1qep6P6gFpptD1PqIYgzM+gwJbOi92mw==
|
||||
|
||||
caseless@~0.12.0:
|
||||
version "0.12.0"
|
||||
|
|
@ -3001,9 +2980,9 @@ cookie@^0.4.0:
|
|||
integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==
|
||||
|
||||
core-js-compat@^3.30.1, core-js-compat@^3.30.2:
|
||||
version "3.30.2"
|
||||
resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.30.2.tgz#83f136e375babdb8c80ad3c22d67c69098c1dd8b"
|
||||
integrity sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==
|
||||
version "3.31.0"
|
||||
resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.31.0.tgz#4030847c0766cc0e803dcdfb30055d7ef2064bf1"
|
||||
integrity sha512-hM7YCu1cU6Opx7MXNu0NuumM0ezNeAeRKadixyiQELWY3vT3De9S4J5ZBMraWV2vZnrE1Cirl0GtFtDtMUXzPw==
|
||||
dependencies:
|
||||
browserslist "^4.21.5"
|
||||
|
||||
|
|
@ -3297,10 +3276,10 @@ ejs@^3.1.6:
|
|||
dependencies:
|
||||
jake "^10.8.5"
|
||||
|
||||
electron-to-chromium@^1.4.411:
|
||||
version "1.4.427"
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.427.tgz#67e8069f7a864fc092fe2e09f196e68af5cb88a1"
|
||||
integrity sha512-HK3r9l+Jm8dYAm1ctXEWIC+hV60zfcjS9UA5BDlYvnI5S7PU/yytjpvSrTNrSSRRkuu3tDyZhdkwIczh+0DWaw==
|
||||
electron-to-chromium@^1.4.431:
|
||||
version "1.4.441"
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.441.tgz#94dd9c1cbf081d83f032a4f1cd9f787e21fc24ce"
|
||||
integrity sha512-LlCgQ8zgYZPymf5H4aE9itwiIWH4YlCiv1HFLmmcBeFYi5E+3eaIFnjHzYtcFQbaKfAW+CqZ9pgxo33DZuoqPg==
|
||||
|
||||
emoji-regex@^8.0.0:
|
||||
version "8.0.0"
|
||||
|
|
@ -4286,12 +4265,10 @@ iconv-lite@0.6.3:
|
|||
dependencies:
|
||||
safer-buffer ">= 2.1.2 < 3.0.0"
|
||||
|
||||
idb-keyval@6.2.0:
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/idb-keyval/-/idb-keyval-6.2.0.tgz#3af94a3cc0689d6ee0bc9e045d2a3340ea897173"
|
||||
integrity sha512-uw+MIyQn2jl3+hroD7hF8J7PUviBU7BPKWw4f/ISf32D4LoGu98yHjrzWWJDASu9QNrX10tCJqk9YY0ClWm8Ng==
|
||||
dependencies:
|
||||
safari-14-idb-fix "^3.0.0"
|
||||
idb-keyval@6.2.1:
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/idb-keyval/-/idb-keyval-6.2.1.tgz#94516d625346d16f56f3b33855da11bfded2db33"
|
||||
integrity sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==
|
||||
|
||||
idb@^7.0.1:
|
||||
version "7.1.1"
|
||||
|
|
@ -5577,9 +5554,9 @@ rollup@^2.43.1:
|
|||
fsevents "~2.3.2"
|
||||
|
||||
rollup@^3.21.0, rollup@^3.7.2:
|
||||
version "3.25.0"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.25.0.tgz#71327d396a9decbf23c87b55916ae7204211738a"
|
||||
integrity sha512-FnJkNRst2jEZGw7f+v4hFo6UTzpDKrAKcHZWcEfm5/GJQ5CK7wgb4moNLNAe7npKUev7yQn1AY/YbZRIxOv6Qg==
|
||||
version "3.25.3"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.25.3.tgz#f9a8986f0f244bcfde2208da91ba46b8fd252551"
|
||||
integrity sha512-ZT279hx8gszBj9uy5FfhoG4bZx8c+0A1sbqtr7Q3KNWIizpTdDEPZbV2xcbvHsnFp4MavCQYZyzApJ+virB8Yw==
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
|
|
@ -5597,11 +5574,6 @@ rxjs@^7.5.1:
|
|||
dependencies:
|
||||
tslib "^2.1.0"
|
||||
|
||||
safari-14-idb-fix@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/safari-14-idb-fix/-/safari-14-idb-fix-3.0.0.tgz#450fc049b996ec7f3fd9ca2f89d32e0761583440"
|
||||
integrity sha512-eBNFLob4PMq8JA1dGyFn6G97q3/WzNtFK4RnzT1fnLq+9RyrGknzYiM/9B12MnKAxuj1IXr7UKYtTNtjyKMBog==
|
||||
|
||||
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2:
|
||||
version "5.2.1"
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
|
||||
|
|
@ -5642,7 +5614,14 @@ semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0:
|
|||
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
|
||||
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
|
||||
|
||||
semver@^7.0.0, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8:
|
||||
semver@^7.0.0, semver@^7.3.4, semver@^7.3.5, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8:
|
||||
version "7.5.3"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e"
|
||||
integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==
|
||||
dependencies:
|
||||
lru-cache "^6.0.0"
|
||||
|
||||
semver@^7.3.2:
|
||||
version "7.5.1"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.1.tgz#c90c4d631cf74720e46b21c1d37ea07edfab91ec"
|
||||
integrity sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==
|
||||
|
|
@ -5707,12 +5686,12 @@ sinon@15.0.2:
|
|||
supports-color "^7.2.0"
|
||||
|
||||
sinon@^15.0.4:
|
||||
version "15.1.0"
|
||||
resolved "https://registry.yarnpkg.com/sinon/-/sinon-15.1.0.tgz#87656841545f7c63bd1e291df409fafd0e9aec09"
|
||||
integrity sha512-cS5FgpDdE9/zx7no8bxROHymSlPLZzq0ChbbLk1DrxBfc+eTeBK3y8nIL+nu/0QeYydhhbLIr7ecHJpywjQaoQ==
|
||||
version "15.2.0"
|
||||
resolved "https://registry.yarnpkg.com/sinon/-/sinon-15.2.0.tgz#5e44d4bc5a9b5d993871137fd3560bebfac27565"
|
||||
integrity sha512-nPS85arNqwBXaIsFCkolHjGIkFo+Oxu9vbgmBJizLAhqe6P2o3Qmj3KCUoRkfhHtvgDhZdWD3risLHAUJ8npjw==
|
||||
dependencies:
|
||||
"@sinonjs/commons" "^3.0.0"
|
||||
"@sinonjs/fake-timers" "^10.2.0"
|
||||
"@sinonjs/fake-timers" "^10.3.0"
|
||||
"@sinonjs/samsam" "^8.0.0"
|
||||
diff "^5.1.0"
|
||||
nise "^5.1.4"
|
||||
|
|
@ -5808,23 +5787,14 @@ standardized-audio-context-mock@9.6.18:
|
|||
tslib "^2.5.0"
|
||||
vehicles "^9.0.1"
|
||||
|
||||
standardized-audio-context@25.3.41:
|
||||
version "25.3.41"
|
||||
resolved "https://registry.yarnpkg.com/standardized-audio-context/-/standardized-audio-context-25.3.41.tgz#42689e0653698bba13705e220b78fe1f9cf458da"
|
||||
integrity sha512-NCKY1kLCGN37dnCCIG4NX1LHWRgONvIU6u6GS3nzhMM9CV/M+GR48uIeojjeJBSICfWXfQ+t2N1MTdsgJz3wlA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.21.0"
|
||||
automation-events "^5.0.2"
|
||||
tslib "^2.5.0"
|
||||
|
||||
standardized-audio-context@^25.3.46:
|
||||
version "25.3.52"
|
||||
resolved "https://registry.yarnpkg.com/standardized-audio-context/-/standardized-audio-context-25.3.52.tgz#46683a8230c065dcb00c33ba336df2d7d31a7406"
|
||||
integrity sha512-rVWhfpVwsgmWgx+rb+K8st+nTPiceKCe+/J6RYzFIGsvbAWIM9k0IRMpQXFv7Pysvze9WRFIrnhtwMmfJhw0Xg==
|
||||
standardized-audio-context@25.3.53, standardized-audio-context@^25.3.46:
|
||||
version "25.3.53"
|
||||
resolved "https://registry.yarnpkg.com/standardized-audio-context/-/standardized-audio-context-25.3.53.tgz#b7366724ed95913ed75f235e8cbeffcce5694db7"
|
||||
integrity sha512-uLtKsl/ZDPCwKqw8lzPtJXQJYp4uF4E9A2srNMj6nxmvFaZbJPx0X9pWuYcV/kMsmlIkRxBpofyDG1AdodW0fA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.22.5"
|
||||
automation-events "^6.0.5"
|
||||
tslib "^2.5.3"
|
||||
automation-events "^6.0.6"
|
||||
tslib "^2.6.0"
|
||||
|
||||
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
|
||||
version "4.2.3"
|
||||
|
|
@ -5951,9 +5921,9 @@ symbol-tree@^3.2.4:
|
|||
integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
|
||||
|
||||
tabbable@^6.0.1:
|
||||
version "6.1.2"
|
||||
resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.1.2.tgz#b0d3ca81d582d48a80f71b267d1434b1469a3703"
|
||||
integrity sha512-qCN98uP7i9z0fIS4amQ5zbGBOq+OSigYeGvPy7NDk8Y9yncqDZ9pRPgfsc2PJIVM9RrJj7GIfuRgmjoUU9zTHQ==
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97"
|
||||
integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==
|
||||
|
||||
temp-dir@^2.0.0:
|
||||
version "2.0.0"
|
||||
|
|
@ -5971,9 +5941,9 @@ tempy@^0.6.0:
|
|||
unique-string "^2.0.0"
|
||||
|
||||
terser@^5.0.0:
|
||||
version "5.17.7"
|
||||
resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.7.tgz#2a8b134826fe179b711969fd9d9a0c2479b2a8c3"
|
||||
integrity sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ==
|
||||
version "5.18.2"
|
||||
resolved "https://registry.yarnpkg.com/terser/-/terser-5.18.2.tgz#ff3072a0faf21ffd38f99acc9a0ddf7b5f07b948"
|
||||
integrity sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w==
|
||||
dependencies:
|
||||
"@jridgewell/source-map" "^0.3.3"
|
||||
acorn "^8.8.2"
|
||||
|
|
@ -6097,11 +6067,16 @@ tslib@^1.8.1, tslib@^1.9.3:
|
|||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
|
||||
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
|
||||
|
||||
tslib@^2.1.0, tslib@^2.4.0, tslib@^2.5.0, tslib@^2.5.2, tslib@^2.5.3:
|
||||
tslib@^2.1.0:
|
||||
version "2.5.3"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.3.tgz#24944ba2d990940e6e982c4bea147aba80209913"
|
||||
integrity sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==
|
||||
|
||||
tslib@^2.4.0, tslib@^2.5.0, tslib@^2.5.3, tslib@^2.6.0:
|
||||
version "2.6.0"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.0.tgz#b295854684dbda164e181d259a22cd779dcd7bc3"
|
||||
integrity sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==
|
||||
|
||||
tsutils@^3.21.0:
|
||||
version "3.21.0"
|
||||
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
|
||||
|
|
@ -6305,13 +6280,13 @@ v8-to-istanbul@^9.0.0:
|
|||
convert-source-map "^1.6.0"
|
||||
|
||||
vehicles@^9.0.1:
|
||||
version "9.0.4"
|
||||
resolved "https://registry.yarnpkg.com/vehicles/-/vehicles-9.0.4.tgz#3272981324823f97801daed709ab638f775a5b7b"
|
||||
integrity sha512-s6iOudyZzhaXa3kCN9KuY0rQtO7l7FXD4APctKb7HN0i79bXjJb9VC4a9dKd1T2n7RmnkracFZG0WU4UfLt28Q==
|
||||
version "9.0.5"
|
||||
resolved "https://registry.yarnpkg.com/vehicles/-/vehicles-9.0.5.tgz#573d1920c43675bd2e09c6131f7333e7e4b9f2e6"
|
||||
integrity sha512-bu/ThqkuMSLTVT3/2QMVWbwZJ26h0p0qNWUEIqNcsjbLMEe7qKRbsYxS4FFSaStXbl44fdvuYfv6uFd+ZW84hQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.22.3"
|
||||
"@babel/runtime" "^7.22.5"
|
||||
decimal.js "^10.4.3"
|
||||
tslib "^2.5.2"
|
||||
tslib "^2.5.3"
|
||||
|
||||
verror@1.10.0:
|
||||
version "1.10.0"
|
||||
|
|
@ -6405,15 +6380,15 @@ vue-gettext@2.1.12:
|
|||
resolved "https://registry.yarnpkg.com/vue-gettext/-/vue-gettext-2.1.12.tgz#444d3220149b17fa4c7caeded3f12d439b698f33"
|
||||
integrity sha512-7Kw36xtKvARp8ZafQGPK9WR6EM+dhFUikR5f0+etSkiHuvUM3yf1HsRDLYoLLdJ0AMaXxKwgekumzvCk6KX8rA==
|
||||
|
||||
vue-i18n@9.3.0-beta.16:
|
||||
version "9.3.0-beta.16"
|
||||
resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-9.3.0-beta.16.tgz#7d48c2a16087e47e388e1cd43a95ae38071a8c3d"
|
||||
integrity sha512-huhBeRB0SEvv2gIgCS7Zo06nb8AAhbPQCoB/vwDfbDNs8F+giv9QCmhEed+TkLTih/54JGnXkxN6tw1VZqVY/w==
|
||||
vue-i18n@9.3.0-beta.19:
|
||||
version "9.3.0-beta.19"
|
||||
resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-9.3.0-beta.19.tgz#d660d9b342322d8c3ae62965bf6957ff8e52607b"
|
||||
integrity sha512-1pbEcoAbxaAPuR5hODnQJ5CtIimnVD+aUVnCztuuRaOZPLP1i4FxkWVvb1lu8JIRC5pePyODZxi3yoy3PUYheA==
|
||||
dependencies:
|
||||
"@intlify/core-base" "9.3.0-beta.16"
|
||||
"@intlify/shared" "9.3.0-beta.16"
|
||||
"@intlify/vue-devtools" "9.3.0-beta.16"
|
||||
"@vue/devtools-api" "^6.2.1"
|
||||
"@intlify/core-base" "9.3.0-beta.19"
|
||||
"@intlify/shared" "9.3.0-beta.19"
|
||||
"@intlify/vue-devtools" "9.3.0-beta.19"
|
||||
"@vue/devtools-api" "^6.5.0"
|
||||
|
||||
vue-observe-visibility@^2.0.0-alpha.1:
|
||||
version "2.0.0-alpha.1"
|
||||
|
|
@ -6449,15 +6424,15 @@ vue-tsc@1.6.5:
|
|||
"@volar/vue-typescript" "1.6.5"
|
||||
semver "^7.3.8"
|
||||
|
||||
vue-upload-component@3.1.6:
|
||||
version "3.1.6"
|
||||
resolved "https://registry.yarnpkg.com/vue-upload-component/-/vue-upload-component-3.1.6.tgz#38c9c750b9177c897795a9979c45b7def6e5b374"
|
||||
integrity sha512-MAQ0UCZ39/Y54yJc/K3JdVg2h/IcKMaJISG6CD6y3zacAbVb7YtNz2rYE/zpnyDez+9IOygEvwX8TtUgsl3YGg==
|
||||
vue-upload-component@3.1.8:
|
||||
version "3.1.8"
|
||||
resolved "https://registry.yarnpkg.com/vue-upload-component/-/vue-upload-component-3.1.8.tgz#6c79aaf3c34c596ec40bbdde0f625d4855fb275a"
|
||||
integrity sha512-8LHCrgmEZPg+1hbkKjQgMce2uasmGLEnIsLE8YG+vNyfNDuaQA71T+5t6kdDSG/szeh+E8mjb26uEd9WkVSFtg==
|
||||
|
||||
vue-virtual-scroller@2.0.0-beta.7:
|
||||
version "2.0.0-beta.7"
|
||||
resolved "https://registry.yarnpkg.com/vue-virtual-scroller/-/vue-virtual-scroller-2.0.0-beta.7.tgz#4ea8158638c84b2033b001a8b26c5fcb6896b271"
|
||||
integrity sha512-OrouVj1i2939jaLjVfu8f5fsDlbzhAb4bOsYZYrAkpcVLylAmMoGtIL7eT3hJrdTiaKbwQpRdnv7DKf9Fn+tHg==
|
||||
vue-virtual-scroller@2.0.0-beta.8:
|
||||
version "2.0.0-beta.8"
|
||||
resolved "https://registry.yarnpkg.com/vue-virtual-scroller/-/vue-virtual-scroller-2.0.0-beta.8.tgz#eeceda57e4faa5ba1763994c873923e2a956898b"
|
||||
integrity sha512-b8/f5NQ5nIEBRTNi6GcPItE4s7kxNHw2AIHLtDp+2QvqdTjVN0FgONwX9cr53jWRgnu+HRLPaWDOR2JPI5MTfQ==
|
||||
dependencies:
|
||||
mitt "^2.1.0"
|
||||
vue-observe-visibility "^2.0.0-alpha.1"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue