fix(carousel): reading properties of undefined api (#612)
This commit is contained in:
parent
36ad0f846d
commit
edc4ee9437
|
|
@ -29,9 +29,8 @@
|
|||
"clsx": "^2.1.1",
|
||||
"codesandbox": "^2.2.3",
|
||||
"date-fns": "^3.6.0",
|
||||
"embla-carousel": "^8.1.3",
|
||||
"embla-carousel-autoplay": "^8.1.3",
|
||||
"embla-carousel-vue": "^8.1.3",
|
||||
"embla-carousel-autoplay": "^8.1.5",
|
||||
"embla-carousel-vue": "^8.1.5",
|
||||
"lucide-vue-next": "^0.383.0",
|
||||
"magic-string": "^0.30.10",
|
||||
"radix-vue": "^1.8.3",
|
||||
|
|
|
|||
|
|
@ -6,5 +6,5 @@ export { default as CarouselNext } from './CarouselNext.vue'
|
|||
export { useCarousel } from './useCarousel'
|
||||
|
||||
export type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
} from 'embla-carousel'
|
||||
UnwrapRefCarouselApi as CarouselApi,
|
||||
} from './interface'
|
||||
|
|
|
|||
|
|
@ -1,18 +1,24 @@
|
|||
import type { HTMLAttributes, UnwrapRef } from 'vue'
|
||||
import type useEmblaCarousel from 'embla-carousel-vue'
|
||||
import type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
EmblaOptionsType as CarouselOptions,
|
||||
EmblaPluginType as CarouselPlugin,
|
||||
} from 'embla-carousel'
|
||||
import type { HTMLAttributes, Ref } from 'vue'
|
||||
EmblaCarouselVueType,
|
||||
} from 'embla-carousel-vue'
|
||||
|
||||
type CarouselApi = EmblaCarouselVueType[1]
|
||||
type UseCarouselParameters = Parameters<typeof useEmblaCarousel>
|
||||
type CarouselOptions = UseCarouselParameters[0]
|
||||
type CarouselPlugin = UseCarouselParameters[1]
|
||||
|
||||
export type UnwrapRefCarouselApi = UnwrapRef<CarouselApi>
|
||||
|
||||
export interface CarouselProps {
|
||||
opts?: CarouselOptions | Ref<CarouselOptions>
|
||||
plugins?: CarouselPlugin[] | Ref<CarouselPlugin[]>
|
||||
opts?: CarouselOptions
|
||||
plugins?: CarouselPlugin
|
||||
orientation?: 'horizontal' | 'vertical'
|
||||
}
|
||||
|
||||
export interface CarouselEmits {
|
||||
(e: 'init-api', payload: CarouselApi): void
|
||||
(e: 'init-api', payload: UnwrapRefCarouselApi): void
|
||||
}
|
||||
|
||||
export interface WithClassAsProps {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,7 @@
|
|||
import { createInjectionState } from '@vueuse/core'
|
||||
import emblaCarouselVue from 'embla-carousel-vue'
|
||||
import { onMounted, ref } from 'vue'
|
||||
import type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
} from 'embla-carousel'
|
||||
import type { CarouselEmits, CarouselProps } from './interface'
|
||||
import type { UnwrapRefCarouselApi as CarouselApi, CarouselEmits, CarouselProps } from './interface'
|
||||
|
||||
const [useProvideCarousel, useInjectCarousel] = createInjectionState(
|
||||
({
|
||||
|
|
@ -24,12 +21,12 @@ const [useProvideCarousel, useInjectCarousel] = createInjectionState(
|
|||
emblaApi.value?.scrollNext()
|
||||
}
|
||||
|
||||
const canScrollNext = ref(true)
|
||||
const canScrollPrev = ref(true)
|
||||
const canScrollNext = ref(false)
|
||||
const canScrollPrev = ref(false)
|
||||
|
||||
function onSelect(api: CarouselApi) {
|
||||
canScrollNext.value = api.canScrollNext()
|
||||
canScrollPrev.value = api.canScrollPrev()
|
||||
canScrollNext.value = api?.canScrollNext() || false
|
||||
canScrollPrev.value = api?.canScrollPrev() || false
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
|
|
|||
|
|
@ -6,5 +6,5 @@ export { default as CarouselNext } from './CarouselNext.vue'
|
|||
export { useCarousel } from './useCarousel'
|
||||
|
||||
export type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
} from 'embla-carousel'
|
||||
UnwrapRefCarouselApi as CarouselApi,
|
||||
} from './interface'
|
||||
|
|
|
|||
|
|
@ -1,18 +1,24 @@
|
|||
import type { HTMLAttributes, UnwrapRef } from 'vue'
|
||||
import type useEmblaCarousel from 'embla-carousel-vue'
|
||||
import type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
EmblaOptionsType as CarouselOptions,
|
||||
EmblaPluginType as CarouselPlugin,
|
||||
} from 'embla-carousel'
|
||||
import type { HTMLAttributes, Ref } from 'vue'
|
||||
EmblaCarouselVueType,
|
||||
} from 'embla-carousel-vue'
|
||||
|
||||
type CarouselApi = EmblaCarouselVueType[1]
|
||||
type UseCarouselParameters = Parameters<typeof useEmblaCarousel>
|
||||
type CarouselOptions = UseCarouselParameters[0]
|
||||
type CarouselPlugin = UseCarouselParameters[1]
|
||||
|
||||
export type UnwrapRefCarouselApi = UnwrapRef<CarouselApi>
|
||||
|
||||
export interface CarouselProps {
|
||||
opts?: CarouselOptions | Ref<CarouselOptions>
|
||||
plugins?: CarouselPlugin[] | Ref<CarouselPlugin[]>
|
||||
opts?: CarouselOptions
|
||||
plugins?: CarouselPlugin
|
||||
orientation?: 'horizontal' | 'vertical'
|
||||
}
|
||||
|
||||
export interface CarouselEmits {
|
||||
(e: 'init-api', payload: CarouselApi): void
|
||||
(e: 'init-api', payload: UnwrapRefCarouselApi): void
|
||||
}
|
||||
|
||||
export interface WithClassAsProps {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,7 @@
|
|||
import { createInjectionState } from '@vueuse/core'
|
||||
import emblaCarouselVue from 'embla-carousel-vue'
|
||||
import { onMounted, ref } from 'vue'
|
||||
import type {
|
||||
EmblaCarouselType as CarouselApi,
|
||||
} from 'embla-carousel'
|
||||
import type { CarouselEmits, CarouselProps } from './interface'
|
||||
import type { UnwrapRefCarouselApi as CarouselApi, CarouselEmits, CarouselProps } from './interface'
|
||||
|
||||
const [useProvideCarousel, useInjectCarousel] = createInjectionState(
|
||||
({
|
||||
|
|
@ -24,12 +21,12 @@ const [useProvideCarousel, useInjectCarousel] = createInjectionState(
|
|||
emblaApi.value?.scrollNext()
|
||||
}
|
||||
|
||||
const canScrollNext = ref(true)
|
||||
const canScrollPrev = ref(true)
|
||||
const canScrollNext = ref(false)
|
||||
const canScrollPrev = ref(false)
|
||||
|
||||
function onSelect(api: CarouselApi) {
|
||||
canScrollNext.value = api.canScrollNext()
|
||||
canScrollPrev.value = api.canScrollPrev()
|
||||
canScrollNext.value = api?.canScrollNext() || false
|
||||
canScrollPrev.value = api?.canScrollPrev() || false
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ const DEPENDENCIES = new Map<string, string[]>([
|
|||
['v-calendar', []],
|
||||
['@tanstack/vue-table', []],
|
||||
['@unovis/vue', ['@unovis/ts']],
|
||||
['embla-carousel-vue', ['embla-carousel']],
|
||||
['embla-carousel-vue', []],
|
||||
['vee-validate', ['@vee-validate/zod', 'zod']],
|
||||
])
|
||||
// Some dependencies latest tag were not compatible with Vue3.
|
||||
|
|
|
|||
|
|
@ -202,9 +202,8 @@
|
|||
{
|
||||
"name": "carousel",
|
||||
"dependencies": [
|
||||
"@vueuse/core",
|
||||
"embla-carousel-vue",
|
||||
"embla-carousel"
|
||||
"@vueuse/core"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"utils",
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
{
|
||||
"name": "carousel",
|
||||
"dependencies": [
|
||||
"@vueuse/core",
|
||||
"embla-carousel-vue",
|
||||
"embla-carousel"
|
||||
"@vueuse/core"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"utils",
|
||||
|
|
@ -32,15 +31,15 @@
|
|||
},
|
||||
{
|
||||
"name": "index.ts",
|
||||
"content": "export { default as Carousel } from './Carousel.vue'\nexport { default as CarouselContent } from './CarouselContent.vue'\nexport { default as CarouselItem } from './CarouselItem.vue'\nexport { default as CarouselPrevious } from './CarouselPrevious.vue'\nexport { default as CarouselNext } from './CarouselNext.vue'\nexport { useCarousel } from './useCarousel'\n\nexport type {\n EmblaCarouselType as CarouselApi,\n} from 'embla-carousel'\n"
|
||||
"content": "export { default as Carousel } from './Carousel.vue'\nexport { default as CarouselContent } from './CarouselContent.vue'\nexport { default as CarouselItem } from './CarouselItem.vue'\nexport { default as CarouselPrevious } from './CarouselPrevious.vue'\nexport { default as CarouselNext } from './CarouselNext.vue'\nexport { useCarousel } from './useCarousel'\n\nexport type {\n UnwrapRefCarouselApi as CarouselApi,\n} from './interface'\n"
|
||||
},
|
||||
{
|
||||
"name": "interface.ts",
|
||||
"content": "import type {\n EmblaCarouselType as CarouselApi,\n EmblaOptionsType as CarouselOptions,\n EmblaPluginType as CarouselPlugin,\n} from 'embla-carousel'\nimport type { HTMLAttributes, Ref } from 'vue'\n\nexport interface CarouselProps {\n opts?: CarouselOptions | Ref<CarouselOptions>\n plugins?: CarouselPlugin[] | Ref<CarouselPlugin[]>\n orientation?: 'horizontal' | 'vertical'\n}\n\nexport interface CarouselEmits {\n (e: 'init-api', payload: CarouselApi): void\n}\n\nexport interface WithClassAsProps {\n class?: HTMLAttributes['class']\n}\n"
|
||||
"content": "import type { HTMLAttributes, UnwrapRef } from 'vue'\nimport type useEmblaCarousel from 'embla-carousel-vue'\nimport type {\n EmblaCarouselVueType,\n} from 'embla-carousel-vue'\n\ntype CarouselApi = EmblaCarouselVueType[1]\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>\ntype CarouselOptions = UseCarouselParameters[0]\ntype CarouselPlugin = UseCarouselParameters[1]\n\nexport type UnwrapRefCarouselApi = UnwrapRef<CarouselApi>\n\nexport interface CarouselProps {\n opts?: CarouselOptions\n plugins?: CarouselPlugin\n orientation?: 'horizontal' | 'vertical'\n}\n\nexport interface CarouselEmits {\n (e: 'init-api', payload: UnwrapRefCarouselApi): void\n}\n\nexport interface WithClassAsProps {\n class?: HTMLAttributes['class']\n}\n"
|
||||
},
|
||||
{
|
||||
"name": "useCarousel.ts",
|
||||
"content": "import { createInjectionState } from '@vueuse/core'\nimport emblaCarouselVue from 'embla-carousel-vue'\nimport { onMounted, ref } from 'vue'\nimport type {\n EmblaCarouselType as CarouselApi,\n} from 'embla-carousel'\nimport type { CarouselEmits, CarouselProps } from './interface'\n\nconst [useProvideCarousel, useInjectCarousel] = createInjectionState(\n ({\n opts,\n orientation,\n plugins,\n }: CarouselProps, emits: CarouselEmits) => {\n const [emblaNode, emblaApi] = emblaCarouselVue({\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n }, plugins)\n\n function scrollPrev() {\n emblaApi.value?.scrollPrev()\n }\n function scrollNext() {\n emblaApi.value?.scrollNext()\n }\n\n const canScrollNext = ref(true)\n const canScrollPrev = ref(true)\n\n function onSelect(api: CarouselApi) {\n canScrollNext.value = api.canScrollNext()\n canScrollPrev.value = api.canScrollPrev()\n }\n\n onMounted(() => {\n if (!emblaApi.value)\n return\n\n emblaApi.value?.on('init', onSelect)\n emblaApi.value?.on('reInit', onSelect)\n emblaApi.value?.on('select', onSelect)\n\n emits('init-api', emblaApi.value)\n })\n\n return { carouselRef: emblaNode, carouselApi: emblaApi, canScrollPrev, canScrollNext, scrollPrev, scrollNext, orientation }\n },\n)\n\nfunction useCarousel() {\n const carouselState = useInjectCarousel()\n\n if (!carouselState)\n throw new Error('useCarousel must be used within a <Carousel />')\n\n return carouselState\n}\n\nexport { useCarousel, useProvideCarousel }\n"
|
||||
"content": "import { createInjectionState } from '@vueuse/core'\nimport emblaCarouselVue from 'embla-carousel-vue'\nimport { onMounted, ref } from 'vue'\nimport type { UnwrapRefCarouselApi as CarouselApi, CarouselEmits, CarouselProps } from './interface'\n\nconst [useProvideCarousel, useInjectCarousel] = createInjectionState(\n ({\n opts,\n orientation,\n plugins,\n }: CarouselProps, emits: CarouselEmits) => {\n const [emblaNode, emblaApi] = emblaCarouselVue({\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n }, plugins)\n\n function scrollPrev() {\n emblaApi.value?.scrollPrev()\n }\n function scrollNext() {\n emblaApi.value?.scrollNext()\n }\n\n const canScrollNext = ref(false)\n const canScrollPrev = ref(false)\n\n function onSelect(api: CarouselApi) {\n canScrollNext.value = api?.canScrollNext() || false\n canScrollPrev.value = api?.canScrollPrev() || false\n }\n\n onMounted(() => {\n if (!emblaApi.value)\n return\n\n emblaApi.value?.on('init', onSelect)\n emblaApi.value?.on('reInit', onSelect)\n emblaApi.value?.on('select', onSelect)\n\n emits('init-api', emblaApi.value)\n })\n\n return { carouselRef: emblaNode, carouselApi: emblaApi, canScrollPrev, canScrollNext, scrollPrev, scrollNext, orientation }\n },\n)\n\nfunction useCarousel() {\n const carouselState = useInjectCarousel()\n\n if (!carouselState)\n throw new Error('useCarousel must be used within a <Carousel />')\n\n return carouselState\n}\n\nexport { useCarousel, useProvideCarousel }\n"
|
||||
}
|
||||
],
|
||||
"type": "components:ui"
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
{
|
||||
"name": "carousel",
|
||||
"dependencies": [
|
||||
"@vueuse/core",
|
||||
"embla-carousel-vue",
|
||||
"embla-carousel"
|
||||
"@vueuse/core"
|
||||
],
|
||||
"registryDependencies": [
|
||||
"utils",
|
||||
|
|
@ -32,15 +31,15 @@
|
|||
},
|
||||
{
|
||||
"name": "index.ts",
|
||||
"content": "export { default as Carousel } from './Carousel.vue'\nexport { default as CarouselContent } from './CarouselContent.vue'\nexport { default as CarouselItem } from './CarouselItem.vue'\nexport { default as CarouselPrevious } from './CarouselPrevious.vue'\nexport { default as CarouselNext } from './CarouselNext.vue'\nexport { useCarousel } from './useCarousel'\n\nexport type {\n EmblaCarouselType as CarouselApi,\n} from 'embla-carousel'\n"
|
||||
"content": "export { default as Carousel } from './Carousel.vue'\nexport { default as CarouselContent } from './CarouselContent.vue'\nexport { default as CarouselItem } from './CarouselItem.vue'\nexport { default as CarouselPrevious } from './CarouselPrevious.vue'\nexport { default as CarouselNext } from './CarouselNext.vue'\nexport { useCarousel } from './useCarousel'\n\nexport type {\n UnwrapRefCarouselApi as CarouselApi,\n} from './interface'\n"
|
||||
},
|
||||
{
|
||||
"name": "interface.ts",
|
||||
"content": "import type {\n EmblaCarouselType as CarouselApi,\n EmblaOptionsType as CarouselOptions,\n EmblaPluginType as CarouselPlugin,\n} from 'embla-carousel'\nimport type { HTMLAttributes, Ref } from 'vue'\n\nexport interface CarouselProps {\n opts?: CarouselOptions | Ref<CarouselOptions>\n plugins?: CarouselPlugin[] | Ref<CarouselPlugin[]>\n orientation?: 'horizontal' | 'vertical'\n}\n\nexport interface CarouselEmits {\n (e: 'init-api', payload: CarouselApi): void\n}\n\nexport interface WithClassAsProps {\n class?: HTMLAttributes['class']\n}\n"
|
||||
"content": "import type { HTMLAttributes, UnwrapRef } from 'vue'\nimport type useEmblaCarousel from 'embla-carousel-vue'\nimport type {\n EmblaCarouselVueType,\n} from 'embla-carousel-vue'\n\ntype CarouselApi = EmblaCarouselVueType[1]\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>\ntype CarouselOptions = UseCarouselParameters[0]\ntype CarouselPlugin = UseCarouselParameters[1]\n\nexport type UnwrapRefCarouselApi = UnwrapRef<CarouselApi>\n\nexport interface CarouselProps {\n opts?: CarouselOptions\n plugins?: CarouselPlugin\n orientation?: 'horizontal' | 'vertical'\n}\n\nexport interface CarouselEmits {\n (e: 'init-api', payload: UnwrapRefCarouselApi): void\n}\n\nexport interface WithClassAsProps {\n class?: HTMLAttributes['class']\n}\n"
|
||||
},
|
||||
{
|
||||
"name": "useCarousel.ts",
|
||||
"content": "import { createInjectionState } from '@vueuse/core'\nimport emblaCarouselVue from 'embla-carousel-vue'\nimport { onMounted, ref } from 'vue'\nimport type {\n EmblaCarouselType as CarouselApi,\n} from 'embla-carousel'\nimport type { CarouselEmits, CarouselProps } from './interface'\n\nconst [useProvideCarousel, useInjectCarousel] = createInjectionState(\n ({\n opts,\n orientation,\n plugins,\n }: CarouselProps, emits: CarouselEmits) => {\n const [emblaNode, emblaApi] = emblaCarouselVue({\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n }, plugins)\n\n function scrollPrev() {\n emblaApi.value?.scrollPrev()\n }\n function scrollNext() {\n emblaApi.value?.scrollNext()\n }\n\n const canScrollNext = ref(true)\n const canScrollPrev = ref(true)\n\n function onSelect(api: CarouselApi) {\n canScrollNext.value = api.canScrollNext()\n canScrollPrev.value = api.canScrollPrev()\n }\n\n onMounted(() => {\n if (!emblaApi.value)\n return\n\n emblaApi.value?.on('init', onSelect)\n emblaApi.value?.on('reInit', onSelect)\n emblaApi.value?.on('select', onSelect)\n\n emits('init-api', emblaApi.value)\n })\n\n return { carouselRef: emblaNode, carouselApi: emblaApi, canScrollPrev, canScrollNext, scrollPrev, scrollNext, orientation }\n },\n)\n\nfunction useCarousel() {\n const carouselState = useInjectCarousel()\n\n if (!carouselState)\n throw new Error('useCarousel must be used within a <Carousel />')\n\n return carouselState\n}\n\nexport { useCarousel, useProvideCarousel }\n"
|
||||
"content": "import { createInjectionState } from '@vueuse/core'\nimport emblaCarouselVue from 'embla-carousel-vue'\nimport { onMounted, ref } from 'vue'\nimport type { UnwrapRefCarouselApi as CarouselApi, CarouselEmits, CarouselProps } from './interface'\n\nconst [useProvideCarousel, useInjectCarousel] = createInjectionState(\n ({\n opts,\n orientation,\n plugins,\n }: CarouselProps, emits: CarouselEmits) => {\n const [emblaNode, emblaApi] = emblaCarouselVue({\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n }, plugins)\n\n function scrollPrev() {\n emblaApi.value?.scrollPrev()\n }\n function scrollNext() {\n emblaApi.value?.scrollNext()\n }\n\n const canScrollNext = ref(false)\n const canScrollPrev = ref(false)\n\n function onSelect(api: CarouselApi) {\n canScrollNext.value = api?.canScrollNext() || false\n canScrollPrev.value = api?.canScrollPrev() || false\n }\n\n onMounted(() => {\n if (!emblaApi.value)\n return\n\n emblaApi.value?.on('init', onSelect)\n emblaApi.value?.on('reInit', onSelect)\n emblaApi.value?.on('select', onSelect)\n\n emits('init-api', emblaApi.value)\n })\n\n return { carouselRef: emblaNode, carouselApi: emblaApi, canScrollPrev, canScrollNext, scrollPrev, scrollNext, orientation }\n },\n)\n\nfunction useCarousel() {\n const carouselState = useInjectCarousel()\n\n if (!carouselState)\n throw new Error('useCarousel must be used within a <Carousel />')\n\n return carouselState\n}\n\nexport { useCarousel, useProvideCarousel }\n"
|
||||
}
|
||||
],
|
||||
"type": "components:ui"
|
||||
|
|
|
|||
|
|
@ -88,15 +88,12 @@ importers:
|
|||
date-fns:
|
||||
specifier: ^3.6.0
|
||||
version: 3.6.0
|
||||
embla-carousel:
|
||||
specifier: ^8.1.3
|
||||
version: 8.1.3
|
||||
embla-carousel-autoplay:
|
||||
specifier: ^8.1.3
|
||||
version: 8.1.3(embla-carousel@8.1.3)
|
||||
specifier: ^8.1.5
|
||||
version: 8.1.5(embla-carousel@8.1.5)
|
||||
embla-carousel-vue:
|
||||
specifier: ^8.1.3
|
||||
version: 8.1.3(vue@3.4.27(typescript@5.4.5))
|
||||
specifier: ^8.1.5
|
||||
version: 8.1.5(vue@3.4.27(typescript@5.4.5))
|
||||
lucide-vue-next:
|
||||
specifier: ^0.383.0
|
||||
version: 0.383.0(vue@3.4.27(typescript@5.4.5))
|
||||
|
|
@ -3746,23 +3743,23 @@ packages:
|
|||
elkjs@0.8.2:
|
||||
resolution: {integrity: sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==}
|
||||
|
||||
embla-carousel-autoplay@8.1.3:
|
||||
resolution: {integrity: sha512-nMPuOZ+f3yp/RzUEYDOWjO7EkhdNHfdxEoRxfwqIvTGdSQ04LAFAnMLiLWSetAXzB1bP30L391mZb9keZXRcWQ==}
|
||||
embla-carousel-autoplay@8.1.5:
|
||||
resolution: {integrity: sha512-9pHIezRqiO9yism7wRFwmM1j/W9c9hBNX4hq3F4aTPbK84M0M57ryG8QUwhbsTGJbDoBBVTm//YEd0T6i/5YgA==}
|
||||
peerDependencies:
|
||||
embla-carousel: 8.1.3
|
||||
embla-carousel: 8.1.5
|
||||
|
||||
embla-carousel-reactive-utils@8.1.3:
|
||||
resolution: {integrity: sha512-D8tAK6NRQVEubMWb+b/BJ3VvGPsbEeEFOBM6cCCwfiyfLzNlacOAt0q2dtUEA9DbGxeWkB8ExgXzFRxhGV2Hig==}
|
||||
embla-carousel-reactive-utils@8.1.5:
|
||||
resolution: {integrity: sha512-76uZTrSaEGGta+qpiGkMFlLK0I7N04TdjZ2obrBhyggYIFDWlxk1CriIEmt2lisLNsa1IYXM85kr863JoCMSyg==}
|
||||
peerDependencies:
|
||||
embla-carousel: 8.1.3
|
||||
embla-carousel: 8.1.5
|
||||
|
||||
embla-carousel-vue@8.1.3:
|
||||
resolution: {integrity: sha512-29JuRyLGIOu3RQ5jTF35Za3EDBT3XRdjPHlmJKnhsqpqWoiZghQSepw1CAgC1WwaBc/z4XgWNzV3u02HmqMeiA==}
|
||||
embla-carousel-vue@8.1.5:
|
||||
resolution: {integrity: sha512-7R1gQoAy4xwTxE2hNd9yjHWWWDfUDBBcwljX2pP+uh6MnyVp8fUtMUBeQsXfxA1a9lJqKbPVvJTeHiOlfcednA==}
|
||||
peerDependencies:
|
||||
vue: ^3.2.37
|
||||
|
||||
embla-carousel@8.1.3:
|
||||
resolution: {integrity: sha512-GiRpKtzidV3v50oVMly8S+D7iE1r96ttt7fSlvtyKHoSkzrAnVcu8fX3c4j8Ol2hZSQlVfDqDIqdrFPs0u5TWQ==}
|
||||
embla-carousel@8.1.5:
|
||||
resolution: {integrity: sha512-R6xTf7cNdR2UTNM6/yUPZlJFRmZSogMiRjJ5vXHO65II5MoUlrVYUAP0fHQei/py82Vf15lj+WI+QdhnzBxA2g==}
|
||||
|
||||
emoji-regex@10.3.0:
|
||||
resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==}
|
||||
|
|
@ -11725,21 +11722,21 @@ snapshots:
|
|||
|
||||
elkjs@0.8.2: {}
|
||||
|
||||
embla-carousel-autoplay@8.1.3(embla-carousel@8.1.3):
|
||||
embla-carousel-autoplay@8.1.5(embla-carousel@8.1.5):
|
||||
dependencies:
|
||||
embla-carousel: 8.1.3
|
||||
embla-carousel: 8.1.5
|
||||
|
||||
embla-carousel-reactive-utils@8.1.3(embla-carousel@8.1.3):
|
||||
embla-carousel-reactive-utils@8.1.5(embla-carousel@8.1.5):
|
||||
dependencies:
|
||||
embla-carousel: 8.1.3
|
||||
embla-carousel: 8.1.5
|
||||
|
||||
embla-carousel-vue@8.1.3(vue@3.4.27(typescript@5.4.5)):
|
||||
embla-carousel-vue@8.1.5(vue@3.4.27(typescript@5.4.5)):
|
||||
dependencies:
|
||||
embla-carousel: 8.1.3
|
||||
embla-carousel-reactive-utils: 8.1.3(embla-carousel@8.1.3)
|
||||
embla-carousel: 8.1.5
|
||||
embla-carousel-reactive-utils: 8.1.5(embla-carousel@8.1.5)
|
||||
vue: 3.4.27(typescript@5.4.5)
|
||||
|
||||
embla-carousel@8.1.3: {}
|
||||
embla-carousel@8.1.5: {}
|
||||
|
||||
emoji-regex@10.3.0: {}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user