diff --git a/locales/es-ES.yml b/locales/es-ES.yml index 47799a0917..7323494d61 100644 --- a/locales/es-ES.yml +++ b/locales/es-ES.yml @@ -509,7 +509,7 @@ objectStorageSetPublicRead: "Seleccionar \"public-read\" al subir " serverLogs: "Registros del servidor" deleteAll: "Eliminar todos" showFixedPostForm: "Mostrar el formulario de las entradas encima de la línea de tiempo" -newNoteRecived: "Tienes una nota nuevo" +newNoteRecived: "Tienes una nota nueva" sounds: "Sonidos" sound: "Sonidos" listen: "Escuchar" @@ -918,14 +918,320 @@ tools: "Utilidades" cannotLoad: "No se puede cargar." numberOfProfileView: "Número de vistas de perfil" like: "¡Muy bien!" +unlike: "Quitar 'me gusta'" +numberOfLikes: "Cantidad de 'Me gusta'" show: "Apariencia" +neverShow: "No mostrar de nuevo" +remindMeLater: "Recordar después" +didYouLikeMisskey: "¿Te gusta Misskey?" +pleaseDonate: "Misskey es software libre, y es usado por {host} . Por favor, ¡considera donar al proyecto principal para que podamos continuar!" +roles: "Roles" +role: "Roles" +normalUser: "Usuario normal" +undefined: "Indefinido" +assign: "Asignar" +unassign: "Quitar" color: "Color" +manageCustomEmojis: "Administrar emojis personalizados" +youCannotCreateAnymore: "Se alcanzó el límite de creación" +cannotPerformTemporary: "Indisponible temporalmente" +cannotPerformTemporaryDescription: "Esta acción no se puede realizar porque se excedió el límite de ejecución. Espera un poco y prueba de nuevo." +preset: "Predefinido" +selectFromPresets: "Escoger desde predefinidos" +achievements: "Logros" +_achievements: + earnedAt: "Desbloqueado el" + _types: + _notes1: + title: "Configurando mis espacio" + description: "Publicar tu primera nota" + flavor: "¡Pasándola bien con Misskey!" + _notes10: + title: "Algunas notas" + description: "10 notas publicadas" + _notes100: + title: "¡Muchas notas!" + description: "100 notas publicadas" + _notes500: + title: "¡Cubierto de notas!" + description: "500 notas publicadas" + _notes1000: + title: "¡Una montaña de notas!" + description: "1000 notas publicadas" + _notes5000: + title: "¡Exceso de notas!" + description: "5000 notas publicadas" + _notes10000: + title: "¡Súpernota!" + description: "10000 notas publicadas" + _notes20000: + title: "Necesito... Más... ¡Notas!" + description: "20000 notas publicadas" + _notes30000: + title: "¡Notas! ¡Notas! ¡Notas!" + description: "30000 notas publicadas" + _notes40000: + title: "Fábrica de notas" + description: "40000 notas publicadas" + _notes50000: + title: "¡Un planeta de notas!" + description: "50000 notas publicadas" + _notes60000: + title: "¡Un cuásar de notas!" + description: "60000 notas publicadas" + _notes70000: + title: "¡Un hoyo negro de notas!" + description: "70000 notas publicadas" + _notes80000: + title: "¡Una galaxia de notas!" + description: "80000 notas publicadas" + _notes90000: + title: "¡Todo un universo de notas!" + description: "90000 notas publicadas" + _notes100000: + title: "ALL YOUR NOTE ARE BELONG TO US" + description: "100000 notas publicadas" + flavor: "¿Tienes tanto para publicar?" + _login3: + title: "Principiante I" + description: "Días desde el inicio de sesión: 3" + flavor: "Desde hoy, soy Misskero" + _login7: + title: "Principiante II" + description: "Días desde el inicio de sesión: 7" + flavor: "¿Ya te acostumbraste?" + _login15: + title: "Principiante III" + description: "Días desde el inicio de sesión: 15" + _login30: + title: "Misskero I" + description: "Días desde el inicio de sesión: 30" + _login60: + title: "Misskero II" + description: "Días desde el inicio de sesión: 60" + _login100: + title: "Misskero III" + description: "Días desde el inicio de sesión: 100" + flavor: "Para este usuario, Misskaína" + _login200: + title: "Regular I" + description: "Días desde el inicio de sesión: 200" + _login300: + title: "Regular II" + description: "Días desde el inicio de sesión: 300" + _login400: + title: "Regular III" + description: "Días desde el inicio de sesión: 400" + _login500: + title: "Veterano I" + description: "Días desde el inicio de sesión: 500" + flavor: "Chicos, me encantan las libretas..." + _login600: + title: "Veterano II" + description: "Días desde el inicio de sesión: 600" + _login700: + title: "Veterano III" + description: "Días desde el inicio de sesión: 700" + _login800: + title: "Maestro I" + description: "Días desde el inicio de sesión: 800" + _login900: + title: "Maestro II" + description: "Días desde el inicio de sesión: 900" + _login1000: + title: "Maestro III" + description: "Días desde el inicio de sesión: 1000" + flavor: "¡Gracias por usar Misskey!" + _noteClipped1: + title: "No puedo evitar clipearte..." + description: "Hacer un clip por primera vez" + _noteFavorited1: + title: "Contemplando las estrellas" + description: "Poner una nota como favorito por primera vez" + _myNoteFavorited1: + title: "¡Quiero una estrella!" + description: "Tu nota ha sido marcada como favorito por primera vez" + _profileFilled: + title: "¡Listo!" + description: "Perfil completado" + _markedAsCat: + title: "Soy un gato" + description: "Configurar la cuenta como cuenta de un gato" + flavor: "Aún no tengo nombre" + _following1: + title: "Primera vez siguiendo a alguien" + description: "Seguir a un usuario" + _following10: + title: "Ahí la llevas, ahí la llevas..." + description: "10 usuarios seguidos" + _following50: + title: "¡Un puñado de amigos!" + description: "50 cuentas seguidas" + _following100: + title: "100 amigos" + description: "100 cuentas seguidas" + _following300: + title: "¡Sobrecarga de amigos!" + description: "300 cuentas seguidas" + _followers1: + title: "¡Tu primer seguidor!" + description: "1 seguidor ganado" + _followers10: + title: "¡Sígueme!" + description: "10 seguidores ganados" + _followers50: + title: "Viniendo en manada" + description: "50 seguidores ganados" + _followers100: + title: "Popular" + description: "100 cuentas seguidas" + _followers300: + title: "Por favor, hagan una fila" + description: "300 seguidores ganados" + _followers500: + title: "¡Toda una torre de radio!" + description: "500 seguidores ganados" + _followers1000: + title: "\"Influyente\"" + description: "1000 seguidores gandos" + _collectAchievements30: + title: "Coleccionista" + description: "30 logros ganados" + _viewAchievements3min: + title: "¡Te gustan los logros!" + description: "Mirando tus logros por 3 minutos" + _iLoveMisskey: + title: "¡AMO Misskey!" + description: "\"I ❤ #Misskey\" Publicado" + flavor: "El equipo de desarrollo de Misskey, en verdad, ¡aprecia tu apoyo!" + _foundTreasure: + title: "Búsqueda del tesoro" + description: "Encontraste un tesoro" + _client30min: + title: "Un descansito" + description: "30 minutos dedicados a Misskey" + _noteDeletedWithin1min: + title: "Ah... Mejor no..." + description: "Borrar una nota antes que de pase 1 minuto" + _postedAtLateNight: + title: "Nocturno" + description: "Una nota publicada por la noche" + flavor: "¡Ya casi es hora de dormir!" + _postedAt0min0sec: + title: "Reloj parlante" + description: "Publicar una nota a las 00:00 de la madrugada" + flavor: "Tic, tic, tic ¡TUUUUUN!" + _selfQuote: + title: "Autoreferencia" + description: "Citar tu propia nota" + _htl20npm: + title: "Línea de tiempo fluyendo" + description: "La velocidad de tu línea de tiempo excede las 20 npm (notas por minuto)" + _viewInstanceChart: + title: "Analista" + description: "Gráficas de la instancia mostradas" + _outputHelloWorldOnScratchpad: + title: "¡Hola mundo!" + description: "Escribir \"hello world\" en el compositor" + _open3windows: + title: "Multiventana" + description: "Tener más de 3 ventanas al mismo tiempo" + _driveFolderCircularReference: + title: "Referencia circular" + description: "Intento de crear carpetas recursivamente" + _reactWithoutRead: + title: "¡Sí lo leíste bien?" + description: "Reaccionar a los 3 segundos de publicación de una nota con más de 100 caracteres" + _clickedClickHere: + title: "Pícale aquí" + description: "Le picó ahí" + _justPlainLucky: + title: "Pura suerte" + description: "Obtenido con una probabilidad del 0.01% cada 10 segundos" + _setNameToSyuilo: + title: "Complejo de superioridad" + description: "Configurar el nombre como 'Syuilo'" + _passedSinceAccountCreated1: + title: "Primer aniversario" + description: "Pasó un año desde la creación de la cuenta" + _passedSinceAccountCreated2: + title: "Segundo aniversario" + description: "Pasaron dos años desde la creación de la cuenta" + _passedSinceAccountCreated3: + title: "Tercer aniversario" + description: "Pasaron tres años desde la creación de la cuenta" + _loggedInOnBirthday: + title: "¡Feliz cumpleaños!" + description: "En linea el día de tu cumpleaños" + _loggedInOnNewYearsDay: + title: "¡Feliz Año Nuevo!" + description: "En linea en año nuevo" + flavor: "¡Gracias por tu apoyo a la instancia durante todo este año!" + _cookieClicked: + title: "Un juego para picarle a una galleta" + description: "Picaste una galleta" + flavor: "¿Está mal este juego?" + _brainDiver: + title: "Brain Diver" + description: "Publicaste un vínculo a \"Brain Diver\"" + flavor: "Misskey-Misskey La-Tu-Ma" _role: + new: "Crear rol" + edit: "Editar rol" + name: "Nombre del rol" + description: "Descripción del rol" + permission: "Permisos del rol" + descriptionOfPermission: "<b>Moderador</b> Te permite ejecutar acciones básicas de moderación.\n<b>Administradores</b> puede cambiar todas las configuraciones de la instancia." + assignTarget: "Asignar objetivo" + descriptionOfAssignTarget: "<b>Manual</b> Para cambiar manualmente lo que se incluye en este rol.\n<b>Condicional</b> configura una condición, y los usuarios que cumplan la condición serán incluídos automáticamente." + manual: "manual" + conditional: "condicional" + condition: "condición" + isConditionalRole: "Esto es un rol condicional" + isPublic: "Publicar rol" + descriptionOfIsPublic: "Cualquiera puede ver los usuarios asignados a este rol. También, el perfil del usuario mostrará este rol." + options: "Opción" + policies: "Política" + baseRole: "Rol base" + useBaseValue: "Usar los valores del rol base" + chooseRoleToAssign: "Selecciona el rol para asignar" + canEditMembersByModerator: "Permitir a los moderadores editar los miembros" + descriptionOfCanEditMembersByModerator: "Si se activa, los moderadores, al igual que los administradores, serán capaces de asignar/quitar usuarios a éste rol. Si se desactiva, sólo los administradores podrán hacerlo." priority: "Prioridad" _priority: low: "Baja" middle: "Mediano" high: "Alta" + _options: + gtlAvailable: "Explorar la línea de tiempo global" + ltlAvailable: "Explorar la línea de tiempo local" + canPublicNote: "Permitir la publicación" + canInvite: "Puede crear códigos de invitación" + canManageCustomEmojis: "Administrar emojis personalizados" + driveCapacity: "Capacidad de almacenamiento" + pinMax: "Máximo de notas fijadas" + antennaMax: "Máximo de antenas" + wordMuteMax: "Máximo de caracteres en palabras silenciadas" + webhookMax: "Máximo de Webhooks" + clipMax: "Máximo de clips" + noteEachClipsMax: "Máximo de notas con clip" + userListMax: "Máximo de listas de usuarios" + userEachUserListsMax: "Máximo de usuarios en una lista" + rateLimitFactor: "Limitador" + descriptionOfRateLimitFactor: "Límites más bajos son menos restrictivos, más altos menos restrictivos" + canHideAds: "Puede ocultar anuncios" + _condition: + isLocal: "Usuario local" + isRemote: "Usuario remoto" + createdLessThan: "Menos de X han pasado desde la creación de la cuenta" + createdMoreThan: "Más de X han pasado desde la creación de la cuenta" + followersLessThanOrEq: "Tiene X o menos seguidores" + followersMoreThanOrEq: "Tiene X o más seguidores" + followingLessThanOrEq: "Sigue X o menos cuentas" + followingMoreThanOrEq: "Sigue X o más cuentas" + and: "Condicional AND" + or: "Condicional OR" + not: "Condicional NOT" _sensitiveMediaDetection: description: "Reduce el esfuerzo de la moderación el el servidor a través del reconocimiento automático de contenido NSFW usando 'Machine Learning'. Esto puede incrementar ligeramente la carga en el servidor." sensitivity: "Sensibilidad de detección" @@ -1328,10 +1634,12 @@ _widgets: jobQueue: "Cola de trabajos" serverMetric: "Estadísticas del servidor" aiscript: "Consola de AiScript" + aiscriptApp: "Aplicación AiScript" aichan: "indigo" userList: "Lista de usuarios" _userList: chooseList: "Seleccione una lista" + clicker: "Cliqueador" _cw: hide: "Ocultar" show: "Ver más" @@ -1434,7 +1742,16 @@ _timelines: social: "Social" global: "Global" _play: + new: "Crear guión" + edit: "Editar guión" + created: "Guión creado" + updated: "Guión editado" + deleted: "Guión eliminado" + pageSetting: "Configuración de guión" + editThisPage: "Editar este guión" viewSource: "Ver la fuente" + my: "Mis guiones" + liked: "Guiones que te gustaron" featured: "Popular" title: "Título" script: "Script" @@ -1507,6 +1824,7 @@ _notification: pollEnded: "Estan disponibles los resultados de la encuesta" unreadAntennaNote: "Antena {name}" emptyPushNotificationMessage: "Se han actualizado las notificaciones push" + achievementEarned: "Logro desbloqueado" _types: all: "Todo" follow: "Siguiendo" diff --git a/locales/uk-UA.yml b/locales/uk-UA.yml index e660635d93..52f3f41fcb 100644 --- a/locales/uk-UA.yml +++ b/locales/uk-UA.yml @@ -529,7 +529,7 @@ state: "Стан" sort: "Сортування" ascendingOrder: "За зростанням" descendingOrder: "За спаданням" -scratchpad: "Чернетка" +scratchpad: "Scratchpad" scratchpadDescription: "Scratchpad надає середовище для експериментів з AiScript. Ви можете писати, виконувати його і тестувати взаємодію з Misskey." output: "Вихід" script: "Скрипт" @@ -1084,22 +1084,32 @@ _achievements: description: "Перевищити швидкість домашньої стрічки 20npm (нотаток на хвилину)" _viewInstanceChart: title: "Аналітик" + _outputHelloWorldOnScratchpad: + title: "Hello, world!" + description: "Вивести \"hello world\" у Скретчпаді" _clickedClickHere: title: "Натисніть тут" description: "Натиснуто тут" + _justPlainLucky: + title: "Просто вдача" + description: "Можна отримати з ймовірністю 0,01% кожні 10 секунд" _setNameToSyuilo: title: "Комплекс бога" description: "Встановлено ім'я \"syuilo\"" _passedSinceAccountCreated1: title: "Перша річниця" + description: "Минув рік з моменту створення акаунта" _passedSinceAccountCreated2: title: "Друга річниця" + description: "Минуло 2 роки з моменту створення акаунта" _passedSinceAccountCreated3: title: "Третя річниця" description: "Минуло 3 роки з моменту створення акаунта" _loggedInOnBirthday: title: "З Днем народження!" + description: "Увійти у свій день народження" _loggedInOnNewYearsDay: + title: "З Новим роком!" description: "Увійшли в перший день року" _brainDiver: title: "Brain Diver" diff --git a/locales/zh-CN.yml b/locales/zh-CN.yml index 651221fe6c..fba04147d9 100644 --- a/locales/zh-CN.yml +++ b/locales/zh-CN.yml @@ -1083,7 +1083,7 @@ _achievements: title: "排列成行" description: "关注者超过300人" _followers500: - title: "风向标" + title: "信号塔" description: "关注者超过500人" _collectAchievements30: title: "成就收藏家" @@ -1104,7 +1104,7 @@ _achievements: title: "无话可说" description: "发帖后一分钟内就将其删除" _postedAtLateNight: - title: "夜行者" + title: "夜猫子" description: "深夜发布帖子" flavor: "差不多该去睡了喔。" _postedAt0min0sec: @@ -1114,6 +1114,12 @@ _achievements: _selfQuote: title: "自我提及" description: "引用了自己的帖子" + _htl20npm: + title: "流动的时间线" + description: "在首页时间线的流速超过20npm" + _viewInstanceChart: + title: "分析师" + description: "查看了实例信息中的图表" _outputHelloWorldOnScratchpad: title: "Hello, world!" _open3windows: @@ -1129,7 +1135,7 @@ _achievements: description: "点了这里" _justPlainLucky: title: "超高校级的幸运" - description: "每10秒有0.01的概率获得" + description: "每10秒有0.01的概率自动获得" _setNameToSyuilo: title: "像神一样呐" description: "将名称设定为syuilo" diff --git a/packages/frontend/package.json b/packages/frontend/package.json index 1e0ab6ba26..40183d64ce 100644 --- a/packages/frontend/package.json +++ b/packages/frontend/package.json @@ -62,6 +62,7 @@ "typescript": "4.9.5", "uuid": "9.0.0", "vanilla-tilt": "1.8.0", + "vue-plyr": "7.0.0", "vite": "4.1.1", "vue": "3.2.47", "vue-prism-editor": "2.0.0-alpha.2", diff --git a/packages/frontend/src/components/MkMediaVideo.vue b/packages/frontend/src/components/MkMediaVideo.vue index df0bf84116..5a2da050bb 100644 --- a/packages/frontend/src/components/MkMediaVideo.vue +++ b/packages/frontend/src/components/MkMediaVideo.vue @@ -6,19 +6,20 @@ </div> </div> <div v-else class="kkjnbbplepmiyuadieoenjgutgcmtsvu"> - <video - :poster="video.thumbnailUrl" - :title="video.comment" - :alt="video.comment" - preload="none" - controls - @contextmenu.stop - > - <source - :src="video.url" - :type="video.type" + <vue-plyr> + <video + controls + crossorigin + playsinline + :data-poster="video.thumbnailUrl" > - </video> + <source + size="720" + :src="video.url" + :type="video.type" + /> + </video> + </vue-plyr> <i class="ti ti-eye-off" @click="hide = true"></i> </div> </template> @@ -26,7 +27,9 @@ <script lang="ts" setup> import { ref } from 'vue'; import * as misskey from 'misskey-js'; +import VuePlyr from 'vue-plyr'; import { defaultStore } from '@/store'; +import 'vue-plyr/dist/vue-plyr.css'; const props = defineProps<{ video: misskey.entities.DriveFile; @@ -39,6 +42,8 @@ const hide = ref((defaultStore.state.nsfw === 'force') ? true : props.video.isSe .kkjnbbplepmiyuadieoenjgutgcmtsvu { position: relative; + --plyr-color-main: var(--accent); + > i { display: block; position: absolute; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a2771fadff..1b4df818a6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -453,6 +453,7 @@ importers: vite: 4.1.1 vue: 3.2.47 vue-eslint-parser: 9.1.0 + vue-plyr: 7.0.0 vue-prism-editor: 2.0.0-alpha.2 vue-tsc: 1.0.24 vuedraggable: next @@ -514,8 +515,10 @@ importers: vanilla-tilt: 1.8.0 vite: 4.1.1_f5vcjb3akvjdur4ffzogu2hewu vue: 3.2.47 + vue-plyr: 7.0.0 vue-prism-editor: 2.0.0-alpha.2_vue@3.2.47 vuedraggable: 4.1.0_vue@3.2.47 + vue-plyr: 7.0.0 devDependencies: '@types/escape-regexp': 0.0.1 '@types/glob': 8.0.1 @@ -3111,6 +3114,14 @@ packages: '@vue/compiler-core': 3.2.47 '@vue/shared': 3.2.47 + /@vue/compiler-sfc/2.7.14: + resolution: {integrity: sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==} + dependencies: + '@babel/parser': 7.20.7 + postcss: 8.4.21 + source-map: 0.6.1 + dev: false + /@vue/compiler-sfc/3.2.47: resolution: {integrity: sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==} dependencies: @@ -4907,6 +4918,14 @@ packages: resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==} dev: false + /csstype/3.1.1: + resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} + dev: false + + /custom-event-polyfill/1.0.7: + resolution: {integrity: sha512-TDDkd5DkaZxZFM8p+1I3yAlvM3rSr1wbrOliG4yJiwinMZN8z/iGL7BTlDkrJcYTmgUSb4ywVCc3ZaUtOtC76w==} + dev: false + /cwise-compiler/1.1.3: resolution: {integrity: sha512-WXlK/m+Di8DMMcCjcWr4i+XzcQra9eCdXIJrgh4TUgh0pIS/yJduLxS9JgefsHJ/YVLdgPtXm9r62W92MvanEQ==} dependencies: @@ -9023,6 +9042,10 @@ packages: strip-bom: 2.0.0 dev: false + /loadjs/4.2.0: + resolution: {integrity: sha512-AgQGZisAlTPbTEzrHPb6q+NYBMD+DP9uvGSIjSUM5uG+0jG15cb8axWpxuOIqrmQjn6scaaH8JwloiP27b2KXA==} + dev: false + /locate-path/5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -11096,6 +11119,10 @@ packages: resolution: {integrity: sha512-9CRCUX/w4+fNMzlYgA8GeJz7BZwBPwaGm3FhAm9Hi50k8wNy2CyiJQa8awygWJay87uVVCV0/FwbLcD6+/A9KQ==} dev: false + /rangetouch/2.0.1: + resolution: {integrity: sha512-sln+pNSc8NGaHoLzwNBssFSf/rSYkqeBXzX1AtJlkJiUaVSJSbRAWJk+4omsXkN+EJalzkZhWQ3th1m0FpR5xA==} + dev: false + /ratelimiter/3.4.1: resolution: {integrity: sha512-5FJbRW/Jkkdk29ksedAfWFkQkhbUrMx3QJGwMKAypeIiQf4yrLW+gtPKZiaWt4zPrtw1uGufOjGO7UGM6VllsQ==} dev: false @@ -12988,6 +13015,10 @@ packages: requires-port: 1.0.0 dev: false + /url-polyfill/1.1.12: + resolution: {integrity: sha512-mYFmBHCapZjtcNHW0MDq9967t+z4Dmg5CJ0KqysK3+ZbyoNOWQHksGCTWwDhxGXllkWlOc10Xfko6v4a3ucM6A==} + dev: false + /url/0.10.3: resolution: {integrity: sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==} dependencies: @@ -13206,6 +13237,13 @@ packages: - supports-color dev: true + /vue-plyr/7.0.0: + resolution: {integrity: sha512-NvbO/ZzV1IxlBQQbQlon5Sk8hKuGAj3k4k0XVdi7gM4oSqu8mZMhJ3WM3FfAtNfV790jbLnb8P3dHYqaBqIv6g==} + dependencies: + plyr: github.com/sampotts/plyr/d434c9af16e641400aaee93188594208d88f2658 + vue: 2.7.14 + dev: false + /vue-prism-editor/2.0.0-alpha.2_vue@3.2.47: resolution: {integrity: sha512-Gu42ba9nosrE+gJpnAEuEkDMqG9zSUysIR8SdXUw8MQKDjBnnNR9lHC18uOr/ICz7yrA/5c7jHJr9lpElODC7w==} engines: {node: '>=10'} @@ -13233,6 +13271,13 @@ packages: typescript: 4.9.5 dev: true + /vue/2.7.14: + resolution: {integrity: sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==} + dependencies: + '@vue/compiler-sfc': 2.7.14 + csstype: 3.1.1 + dev: false + /vue/3.2.47: resolution: {integrity: sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==} dependencies: @@ -13655,3 +13700,15 @@ packages: name: browser-image-resizer version: 2.2.1-misskey.3 dev: false + + github.com/sampotts/plyr/d434c9af16e641400aaee93188594208d88f2658: + resolution: {tarball: https://codeload.github.com/sampotts/plyr/tar.gz/d434c9af16e641400aaee93188594208d88f2658} + name: plyr + version: 3.7.0 + dependencies: + core-js: 3.27.1 + custom-event-polyfill: 1.0.7 + loadjs: 4.2.0 + rangetouch: 2.0.1 + url-polyfill: 1.1.12 + dev: false