This commit is contained in:
Georges KABBOUCHI
2022-07-03 15:12:46 +03:00
parent d7b51a560b
commit e38ebbafe0
6 changed files with 205 additions and 221 deletions
+3 -3
View File
@@ -49,7 +49,7 @@
"prepublishOnly": "yarn build && yarn build:dts"
},
"peerDependencies": {
"vue": "^3.0.0"
"vue": "^3.2.0"
},
"devDependencies": {
"@microsoft/api-extractor": "7.8.1",
@@ -59,7 +59,7 @@
"@rollup/plugin-replace": "^2.3.3",
"@types/webpack": "^4.41.21",
"@types/webpack-env": "^1.15.2",
"@vue/compiler-sfc": "^3.0.0",
"@vue/compiler-sfc": "^3.2.0",
"css-loader": "^4.2.0",
"html-webpack-plugin": "^4.3.0",
"rollup": "^2.23.0",
@@ -71,7 +71,7 @@
"ts-loader": "^8.0.2",
"ts-node": "^8.10.2",
"typescript": "^4.1.3",
"vue": "^3.0.0",
"vue": "^3.2.0",
"vue-loader": "^16.0.0-beta.8",
"vue-router": "4",
"webpack": "^4.44.1",
+2 -2
View File
@@ -1,8 +1,8 @@
<template>
<div class="grid grid-cols-3 gap-4">
<tippy :content="content" :hide-on-click="false">
<Tippy :content="content" :hide-on-click="false" arrow>
<button class="text-sm py-2 px-3 bg-gray-900 text-white rounded-lg w-full" @click="content++">Component</button>
</tippy>
</Tippy>
<button class="text-sm py-2 px-3 bg-gray-900 text-white rounded-lg" ref="btn" @click="content++">Composition</button>
+79 -91
View File
@@ -1,87 +1,88 @@
import { defineComponent, ref, h, ComponentObjectPropsOptions, onMounted, nextTick, watch, unref } from 'vue'
import { defineComponent, ref, h, UnwrapNestedRefs, onMounted, nextTick, watch, unref, reactive } from 'vue'
import { TippyOptions } from '../types'
import { useTippy } from '../composables'
import tippy, { DefaultProps } from 'tippy.js'
import tippy from 'tippy.js'
declare module '@vue/runtime-core' {
interface ComponentCustomProps extends TippyOptions { }
}
// const pluginProps = [
// 'animateFill',
// 'followCursor',
// 'inlinePositioning',
// 'sticky',
// ]
const booleanProps = [
'a11y',
'allowHTML',
'arrow',
'flip',
'flipOnUpdate',
'hideOnClick',
'ignoreAttributes',
'inertia',
'interactive',
'lazy',
'multiple',
'showOnInit',
'touch',
'touchHold',
]
let props: ComponentObjectPropsOptions = {}
props['hideOnClick'] = {
type: [String, Boolean],
default: tippy.defaultProps.hideOnClick,
}
props['to'] = {}
props['tag'] = {
default: 'span'
}
props['contentTag'] = {
default: 'span'
}
props['contentClass'] = {
default: null
}
Object.keys(tippy.defaultProps).forEach((prop: string) => {
if (props[prop]) {
return
interface ComponentCustomProps extends TippyOptions {
to: string | Element
tag: string
contentTag: string
contentClass: string
}
interface ComponentCustomProperties extends UnwrapNestedRefs<ReturnType<typeof useTippy>> { }
}
if (booleanProps.includes(prop)) {
props[prop] = {
// TODO: add SVGElement and DocumentFragment for arrow prop
type: prop === 'arrow' ? [String, Boolean, Function] : Boolean,
default: function () {
return tippy.defaultProps[prop as keyof DefaultProps] as Boolean
},
}
} else {
props[prop] = {
default: function () {
return tippy.defaultProps[prop as keyof DefaultProps]
},
}
}
})
const TippyComponent = defineComponent({
props,
props: {
to: {
type: [String, Element],
},
tag: {
type: String,
default: 'span'
},
contentTag: {
type: String,
default: 'span'
},
contentClass: {
type: String,
default: null
},
appendTo: { default: () => tippy.defaultProps['appendTo'] },
aria: { default: () => tippy.defaultProps['aria'] },
delay: { default: () => tippy.defaultProps['delay'] },
duration: { default: () => tippy.defaultProps['duration'] },
getReferenceClientRect: { default: () => tippy.defaultProps['getReferenceClientRect'] },
hideOnClick: { default: () => tippy.defaultProps['hideOnClick'] },
ignoreAttributes: { default: () => tippy.defaultProps['ignoreAttributes'] },
interactive: { default: () => tippy.defaultProps['interactive'] },
interactiveBorder: { default: () => tippy.defaultProps['interactiveBorder'] },
interactiveDebounce: { default: () => tippy.defaultProps['interactiveDebounce'] },
moveTransition: { default: () => tippy.defaultProps['moveTransition'] },
offset: { default: () => tippy.defaultProps['offset'] },
onAfterUpdate: { default: () => tippy.defaultProps['onAfterUpdate'] },
onBeforeUpdate: { default: () => tippy.defaultProps['onBeforeUpdate'] },
onCreate: { default: () => tippy.defaultProps['onCreate'] },
onDestroy: { default: () => tippy.defaultProps['onDestroy'] },
onHidden: { default: () => tippy.defaultProps['onHidden'] },
onHide: { default: () => tippy.defaultProps['onHide'] },
onMount: { default: () => tippy.defaultProps['onMount'] },
onShow: { default: () => tippy.defaultProps['onShow'] },
onShown: { default: () => tippy.defaultProps['onShown'] },
onTrigger: { default: () => tippy.defaultProps['onTrigger'] },
onUntrigger: { default: () => tippy.defaultProps['onUntrigger'] },
onClickOutside: { default: () => tippy.defaultProps['onClickOutside'] },
placement: { default: () => tippy.defaultProps['placement'] },
plugins: { default: () => tippy.defaultProps['plugins'] },
popperOptions: { default: () => tippy.defaultProps['popperOptions'] },
render: { default: () => tippy.defaultProps['render'] },
showOnCreate: { default: () => tippy.defaultProps['showOnCreate'] },
touch: { default: () => tippy.defaultProps['touch'] },
trigger: { default: () => tippy.defaultProps['trigger'] },
triggerTarget: { default: () => tippy.defaultProps['triggerTarget'] },
animateFill: { default: () => tippy.defaultProps['animateFill'] },
followCursor: { default: () => tippy.defaultProps['followCursor'] },
inlinePositioning: { default: () => tippy.defaultProps['inlinePositioning'] },
sticky: { default: () => tippy.defaultProps['sticky'] },
allowHTML: { default: () => tippy.defaultProps['allowHTML'] },
animation: { default: () => tippy.defaultProps['animation'] },
arrow: { default: () => tippy.defaultProps['arrow'] },
content: { default: () => tippy.defaultProps['content'] },
inertia: { default: () => tippy.defaultProps['inertia'] },
maxWidth: { default: () => tippy.defaultProps['maxWidth'] },
role: { default: () => tippy.defaultProps['role'] },
theme: { default: () => tippy.defaultProps['theme'] },
zIndex: { default: () => tippy.defaultProps['zIndex'] }
},
emits: ['state'],
setup(props, { slots, emit, expose }) {
const elem = ref<Element>()
const contentElem = ref<Element>()
const mounted = ref(false)
const getOptions = () => {
let options = { ...props } as TippyOptions;
for (const prop of ['to', 'tag', 'contentTag', 'contentClass']) {
@@ -100,7 +101,7 @@ const TippyComponent = defineComponent({
if (typeof Element !== 'undefined' && props.to instanceof Element) {
target = () => props.to
} else if (typeof props.to === 'string' || props.to instanceof String) {
target = () => document.querySelector(props.to)
target = () => document.querySelector(props.to as any)
}
}
@@ -126,41 +127,28 @@ const TippyComponent = defineComponent({
tippy.setContent(() => contentElem.value)
})
let exposed = {
let exposed = reactive({
elem,
contentElem,
mounted,
...tippy
}
})
expose(exposed)
return () => {
const slot = slots.default ? slots.default(exposed) : []
let exposedUnref = {
elem: elem.value,
contentElem: contentElem.value,
mounted: mounted.value,
...Object.keys(tippy).reduce((acc, key) => {
//@ts-ignore
acc[key] = unref(tippy[key])
return acc;
}, {})
}
const slot = slots.default ? slots.default(exposedUnref) : []
return h(props.tag, { ref: elem, 'data-v-tippy': '' }, slots.content ? [
return h(props.tag as string, { ref: elem, 'data-v-tippy': '' }, slots.content ? [
slot,
h(
props.contentTag,
props.contentTag as string,
{
ref: contentElem,
style: { display: mounted.value ? 'inherit' : 'none' },
class: props.contentClass
},
slots.content(exposedUnref)
slots.content(exposed)
),
] : slot)
}
+6 -6
View File
@@ -1,20 +1,20 @@
import { h, ref } from 'vue'
import { TippyOptions } from '../types'
import TippyComponent from './../components/Tippy'
import { TippyComponent, TippyOptions } from '../types'
import Tippy from './../components/Tippy'
export function useTippyComponent(
opts: TippyOptions = {},
children?: any
) {
const instance = ref()
const instance = ref<TippyComponent>()
return {
instance,
TippyComponent: h(
TippyComponent,
Tippy,
{
...opts,
onVnodeMounted: vnode => {
...opts as any,
onVnodeMounted: (vnode:any) => {
//@ts-ignore
instance.value = vnode.component.ctx
},
+2 -1
View File
@@ -11,9 +11,10 @@ export declare type TippyTarget =
| null
export declare type TippyOptions = Partial<
Omit<Props, 'content' | 'triggerTarget'> & {
Omit<Props, 'content' | 'triggerTarget' | 'getReferenceClientRect'> & {
content: TippyContent
triggerTarget: TippyTarget
getReferenceClientRect: null | (() => DOMRect & any)
}
>
+113 -118
View File
@@ -9,7 +9,7 @@
dependencies:
"@babel/highlight" "^7.10.4"
"@babel/helper-validator-identifier@^7.10.4", "@babel/helper-validator-identifier@^7.12.11":
"@babel/helper-validator-identifier@^7.10.4":
version "7.12.11"
resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed"
integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==
@@ -23,19 +23,10 @@
chalk "^2.0.0"
js-tokens "^4.0.0"
"@babel/parser@^7.12.0":
version "7.12.11"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.11.tgz#9ce3595bcd74bc5c466905e86c535b8b25011e79"
integrity sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==
"@babel/types@^7.12.0":
version "7.12.12"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.12.tgz#4608a6ec313abbd87afa55004d373ad04a96c299"
integrity sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==
dependencies:
"@babel/helper-validator-identifier" "^7.12.11"
lodash "^4.17.19"
to-fast-properties "^2.0.0"
"@babel/parser@^7.16.4":
version "7.18.6"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.6.tgz#845338edecad65ebffef058d3be851f1d28a63bc"
integrity sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==
"@microsoft/api-extractor-model@7.8.0":
version "7.8.0"
@@ -250,83 +241,95 @@
"@types/webpack-sources" "*"
source-map "^0.6.0"
"@vue/compiler-core@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.0.5.tgz#a6e54cabe9536e74c6513acd2649f311af1d43ac"
integrity sha512-iFXwk2gmU/GGwN4hpBwDWWMLvpkIejf/AybcFtlQ5V1ur+5jwfBaV0Y1RXoR6ePfBPJixtKZ3PmN+M+HgMAtfQ==
"@vue/compiler-core@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.37.tgz#b3c42e04c0e0f2c496ff1784e543fbefe91e215a"
integrity sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==
dependencies:
"@babel/parser" "^7.12.0"
"@babel/types" "^7.12.0"
"@vue/shared" "3.0.5"
estree-walker "^2.0.1"
"@babel/parser" "^7.16.4"
"@vue/shared" "3.2.37"
estree-walker "^2.0.2"
source-map "^0.6.1"
"@vue/compiler-dom@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.0.5.tgz#7885a13e6d18f64dde8ebceec052ed2c102696c2"
integrity sha512-HSOSe2XSPuCkp20h4+HXSiPH9qkhz6YbW9z9ZtL5vef2T2PMugH7/osIFVSrRZP/Ul5twFZ7MIRlp8tPX6e4/g==
"@vue/compiler-dom@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz#10d2427a789e7c707c872da9d678c82a0c6582b5"
integrity sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==
dependencies:
"@vue/compiler-core" "3.0.5"
"@vue/shared" "3.0.5"
"@vue/compiler-core" "3.2.37"
"@vue/shared" "3.2.37"
"@vue/compiler-sfc@^3.0.0":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.0.5.tgz#3ae08e60244a72faf9598361874fb7bdb5b1d37c"
integrity sha512-uOAC4X0Gx3SQ9YvDC7YMpbDvoCmPvP0afVhJoxRotDdJ+r8VO3q4hFf/2f7U62k4Vkdftp6DVni8QixrfYzs+w==
"@vue/compiler-sfc@3.2.37", "@vue/compiler-sfc@^3.2.0":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz#3103af3da2f40286edcd85ea495dcb35bc7f5ff4"
integrity sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==
dependencies:
"@babel/parser" "^7.12.0"
"@babel/types" "^7.12.0"
"@vue/compiler-core" "3.0.5"
"@vue/compiler-dom" "3.0.5"
"@vue/compiler-ssr" "3.0.5"
"@vue/shared" "3.0.5"
consolidate "^0.16.0"
estree-walker "^2.0.1"
hash-sum "^2.0.0"
lru-cache "^5.1.1"
"@babel/parser" "^7.16.4"
"@vue/compiler-core" "3.2.37"
"@vue/compiler-dom" "3.2.37"
"@vue/compiler-ssr" "3.2.37"
"@vue/reactivity-transform" "3.2.37"
"@vue/shared" "3.2.37"
estree-walker "^2.0.2"
magic-string "^0.25.7"
merge-source-map "^1.1.0"
postcss "^7.0.32"
postcss-modules "^3.2.2"
postcss-selector-parser "^6.0.4"
postcss "^8.1.10"
source-map "^0.6.1"
"@vue/compiler-ssr@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.0.5.tgz#7661ad891a0be948726c7f7ad1e425253c587b83"
integrity sha512-Wm//Kuxa1DpgjE4P9W0coZr8wklOfJ35Jtq61CbU+t601CpPTK4+FL2QDBItaG7aoUUDCWL5nnxMkuaOgzTBKg==
"@vue/compiler-ssr@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz#4899d19f3a5fafd61524a9d1aee8eb0505313cff"
integrity sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==
dependencies:
"@vue/compiler-dom" "3.0.5"
"@vue/shared" "3.0.5"
"@vue/compiler-dom" "3.2.37"
"@vue/shared" "3.2.37"
"@vue/reactivity@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.0.5.tgz#e3789e4d523d845f9ae0b4d770e2b45594742fd2"
integrity sha512-3xodUE3sEIJgS7ntwUbopIpzzvi7vDAOjVamfb2l+v1FUg0jpd3gf62N2wggJw3fxBMr+QvyxpD+dBoxLsmAjw==
"@vue/reactivity-transform@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz#0caa47c4344df4ae59f5a05dde2a8758829f8eca"
integrity sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==
dependencies:
"@vue/shared" "3.0.5"
"@babel/parser" "^7.16.4"
"@vue/compiler-core" "3.2.37"
"@vue/shared" "3.2.37"
estree-walker "^2.0.2"
magic-string "^0.25.7"
"@vue/runtime-core@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.0.5.tgz#da6331d5f300d5794e9e0ebdc8a8bd72a9e19962"
integrity sha512-Cnyi2NqREwOLcTEsIi1DQX1hHtkVj4eGm4hBG7HhokS05DqpK4/80jG6PCCnCH9rIJDB2FqtaODX397210plXg==
"@vue/reactivity@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.37.tgz#5bc3847ac58828e2b78526e08219e0a1089f8848"
integrity sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==
dependencies:
"@vue/reactivity" "3.0.5"
"@vue/shared" "3.0.5"
"@vue/shared" "3.2.37"
"@vue/runtime-dom@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.0.5.tgz#1ce2c9c449e26ab06963da0064096e882a7a8935"
integrity sha512-iilX1KySeIzHHtErT6Y44db1rhWK5tAI0CiJIPr+SJoZ2jbjoOSE6ff/jfIQakchbm1d6jq6VtRVnp5xYdOXKA==
"@vue/runtime-core@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.37.tgz#7ba7c54bb56e5d70edfc2f05766e1ca8519966e3"
integrity sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==
dependencies:
"@vue/runtime-core" "3.0.5"
"@vue/shared" "3.0.5"
"@vue/reactivity" "3.2.37"
"@vue/shared" "3.2.37"
"@vue/runtime-dom@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz#002bdc8228fa63949317756fb1e92cdd3f9f4bbd"
integrity sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==
dependencies:
"@vue/runtime-core" "3.2.37"
"@vue/shared" "3.2.37"
csstype "^2.6.8"
"@vue/shared@3.0.5":
version "3.0.5"
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.0.5.tgz#c131d88bd6713cc4d93b3bb1372edb1983225ff0"
integrity sha512-gYsNoGkWejBxNO6SNRjOh/xKeZ0H0V+TFzaPzODfBjkAIb0aQgBuixC1brandC/CDJy1wYPwSoYrXpvul7m6yw==
"@vue/server-renderer@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.2.37.tgz#840a29c8dcc29bddd9b5f5ffa22b95c0e72afdfc"
integrity sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==
dependencies:
"@vue/compiler-ssr" "3.2.37"
"@vue/shared" "3.2.37"
"@vue/shared@3.2.37":
version "3.2.37"
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.37.tgz#8e6adc3f2759af52f0e85863dfb0b711ecc5c702"
integrity sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==
"@webassemblyjs/ast@1.9.0":
version "1.9.0"
@@ -755,7 +758,7 @@ bindings@^1.5.0:
dependencies:
file-uri-to-path "1.0.0"
bluebird@^3.5.5, bluebird@^3.7.2:
bluebird@^3.5.5:
version "3.7.2"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
@@ -1303,13 +1306,6 @@ console-browserify@^1.1.0:
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
consolidate@^0.16.0:
version "0.16.0"
resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.16.0.tgz#a11864768930f2f19431660a65906668f5fbdc16"
integrity sha512-Nhl1wzCslqXYTJVDyJCu3ODohy9OfBMB5uD2BiBTzd7w+QY0lBzafkR8y8755yMYHAaMD4NuzbAw03/xzfw+eQ==
dependencies:
bluebird "^3.7.2"
constants-browserify@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
@@ -2027,7 +2023,7 @@ estree-walker@^1.0.1:
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700"
integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==
estree-walker@^2.0.1:
estree-walker@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
@@ -3466,13 +3462,6 @@ merge-descriptors@1.0.1:
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=
merge-source-map@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646"
integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==
dependencies:
source-map "^0.6.1"
merge-stream@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
@@ -3643,6 +3632,11 @@ nan@^2.12.1:
resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19"
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
nanoid@^3.3.4:
version "3.3.4"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
nanomatch@^1.2.9:
version "1.2.13"
resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
@@ -4054,6 +4048,11 @@ pbkdf2@^3.0.3:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
picocolors@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1, picomatch@^2.2.2:
version "2.2.2"
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
@@ -4262,7 +4261,7 @@ postcss-modules-local-by-default@1.2.0:
css-selector-tokenizer "^0.7.0"
postcss "^6.0.1"
postcss-modules-local-by-default@^3.0.2, postcss-modules-local-by-default@^3.0.3:
postcss-modules-local-by-default@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0"
integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==
@@ -4315,21 +4314,6 @@ postcss-modules@^2.0.0:
postcss "^7.0.1"
string-hash "^1.1.1"
postcss-modules@^3.2.2:
version "3.2.2"
resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-3.2.2.tgz#ee390de0f9f18e761e1778dfb9be26685c02c51f"
integrity sha512-JQ8IAqHELxC0N6tyCg2UF40pACY5oiL6UpiqqcIFRWqgDYO8B0jnxzoQ0EOpPrWXvcpu6BSbQU/3vSiq7w8Nhw==
dependencies:
generic-names "^2.0.1"
icss-replace-symbols "^1.1.0"
lodash.camelcase "^4.3.0"
postcss "^7.0.32"
postcss-modules-extract-imports "^2.0.0"
postcss-modules-local-by-default "^3.0.2"
postcss-modules-scope "^2.2.0"
postcss-modules-values "^3.0.0"
string-hash "^1.1.1"
postcss-normalize-charset@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4"
@@ -4449,7 +4433,7 @@ postcss-selector-parser@^3.0.0:
indexes-of "^1.0.1"
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4:
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
@@ -4515,6 +4499,15 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.27, postcss@^7.0.3
source-map "^0.6.1"
supports-color "^6.1.0"
postcss@^8.1.10:
version "8.4.14"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf"
integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==
dependencies:
nanoid "^3.3.4"
picocolors "^1.0.0"
source-map-js "^1.0.2"
pretty-error@^2.1.1:
version "2.1.2"
resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6"
@@ -5183,6 +5176,11 @@ source-list-map@^2.0.0:
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
source-map-js@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
source-map-resolve@^0.5.0:
version "0.5.3"
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
@@ -5522,11 +5520,6 @@ to-arraybuffer@^1.0.0:
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
to-fast-properties@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
to-object-path@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
@@ -5830,14 +5823,16 @@ vue-router@4:
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.0.3.tgz#8b26050c88b2dec7e27a88835f71046b365823ec"
integrity sha512-AD1OjtVPyQHTSpoRsEGfPpxRQwhAhxcacOYO3zJ3KNkYP/r09mileSp6kdMQKhZWP2cFsPR3E2M3PZguSN5/ww==
vue@^3.0.0:
version "3.0.5"
resolved "https://registry.yarnpkg.com/vue/-/vue-3.0.5.tgz#de1b82eba24abfe71e0970fc9b8d4b2babdc3fe1"
integrity sha512-TfaprOmtsAfhQau7WsomXZ8d9op/dkQLNIq8qPV3A0Vxs6GR5E+c1rfJS1SDkXRQj+dFyfnec7+U0Be1huiScg==
vue@^3.2.0:
version "3.2.37"
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.37.tgz#da220ccb618d78579d25b06c7c21498ca4e5452e"
integrity sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==
dependencies:
"@vue/compiler-dom" "3.0.5"
"@vue/runtime-dom" "3.0.5"
"@vue/shared" "3.0.5"
"@vue/compiler-dom" "3.2.37"
"@vue/compiler-sfc" "3.2.37"
"@vue/runtime-dom" "3.2.37"
"@vue/server-renderer" "3.2.37"
"@vue/shared" "3.2.37"
watchpack-chokidar2@^2.0.1:
version "2.0.1"