Socket
Socket
Sign inDemoInstall

bootstrap-vue-next

Package Overview
Dependencies
31
Maintainers
2
Versions
110
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.12.2 to 0.12.3

dist/src/composables/useModal.d.ts

2

dist/src/components/BAccordion/BAccordionItem.vue.d.ts

@@ -87,4 +87,4 @@ import { BvTriggerableEvent } from '../../utils';

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: (() => any) | undefined;

@@ -91,0 +91,0 @@ onHidden?: (() => any) | undefined;

@@ -77,4 +77,4 @@ import type { Booleanish } from '../types';

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: (() => any) | undefined;

@@ -81,0 +81,0 @@ onHidden?: (() => any) | undefined;

@@ -328,4 +328,4 @@ import { BvTriggerableEvent } from '../../utils';

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: (() => any) | undefined;

@@ -391,3 +391,6 @@ onHidden?: (() => any) | undefined;

}, {}>, {
default?: ((props: Record<string, never>) => any) | undefined;
default?: ((props: {
hide: () => void;
show: () => void;
}) => any) | undefined;
'button-content'?: ((props: Record<string, never>) => any) | undefined;

@@ -394,0 +397,0 @@ 'toggle-text'?: ((props: Record<string, never>) => any) | undefined;

@@ -32,7 +32,7 @@ import { type RendererElement } from 'vue';

};
noFade: {
show: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
show: {
noFade: {
type: import("vue").PropType<Booleanish>;

@@ -220,2 +220,3 @@ default: boolean;

show: () => void;
id: string;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {

@@ -253,7 +254,7 @@ 'update:modelValue': (value: boolean) => void;

};
noFade: {
show: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
show: {
noFade: {
type: import("vue").PropType<Booleanish>;

@@ -440,4 +441,4 @@ default: boolean;

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: ((value: BvTriggerableEvent) => any) | undefined;

@@ -456,4 +457,4 @@ onHidden?: ((value: BvTriggerableEvent) => any) | undefined;

modelValue: Booleanish;
show: Booleanish;
noFade: Booleanish;
show: Booleanish;
bodyBgVariant: keyof import("../types").BaseColorVariant | null;

@@ -460,0 +461,0 @@ bodyTextVariant: keyof import("../types").BaseColorVariant | null;

@@ -328,4 +328,4 @@ import { BvTriggerableEvent } from '../../utils';

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: (() => any) | undefined;

@@ -391,3 +391,6 @@ onHidden?: (() => any) | undefined;

}, {}>, {
default?: ((props: Record<string, never>) => any) | undefined;
default?: ((props: {
hide: () => void;
show: () => void;
}) => any) | undefined;
'toggle-text'?: ((props: Record<string, never>) => any) | undefined;

@@ -394,0 +397,0 @@ 'button-content'?: ((props: Record<string, never>) => any) | undefined;

@@ -189,4 +189,4 @@ import { type RendererElement } from 'vue';

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: ((value: BvTriggerableEvent) => any) | undefined;

@@ -221,4 +221,12 @@ onHidden?: ((value: BvTriggerableEvent) => any) | undefined;

}, {}>, {
default?: ((props: Record<string, never>) => any) | undefined;
title?: ((props: Record<string, never>) => any) | undefined;
default?: ((props: {
visible: boolean;
placement: "top" | "bottom" | "start" | "end";
hide: (trigger?: string | undefined) => void;
}) => any) | undefined;
title?: ((props: {
visible: boolean;
placement: "top" | "bottom" | "start" | "end";
hide: (trigger?: string | undefined) => void;
}) => any) | undefined;
header?: ((props: {

@@ -225,0 +233,0 @@ visible: boolean;

@@ -19,7 +19,7 @@ import type { Booleanish, SpinnerType } from '../../types';

};
noFade: {
show: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
show: {
noFade: {
type: import("vue").PropType<Booleanish>;

@@ -93,7 +93,7 @@ default: boolean;

};
noFade: {
show: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
show: {
noFade: {
type: import("vue").PropType<Booleanish>;

@@ -155,4 +155,4 @@ default: boolean;

blur: string | null;
show: Booleanish;
noFade: Booleanish;
show: Booleanish;
zIndex: string | number;

@@ -159,0 +159,0 @@ rounded: string | boolean;

@@ -36,2 +36,6 @@ import { type Placement as OriginalPlacement, type Strategy } from '@floating-ui/vue';

};
hide: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
container: {

@@ -115,6 +119,2 @@ type: import("vue").PropType<string | HTMLElement | ComponentPublicInstance<HTMLElement>>;

};
hide: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
realtime: {

@@ -175,2 +175,6 @@ type: import("vue").PropType<Booleanish>;

};
hide: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
container: {

@@ -254,6 +258,2 @@ type: import("vue").PropType<string | HTMLElement | ComponentPublicInstance<HTMLElement>>;

};
hide: {
type: import("vue").PropType<Booleanish>;
default: boolean;
};
realtime: {

@@ -273,4 +273,4 @@ type: import("vue").PropType<Booleanish>;

"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onHide?: ((value: BvTriggerableEvent) => any) | undefined;
onShow?: ((value: BvTriggerableEvent) => any) | undefined;
onShown?: ((value: BvTriggerableEvent) => any) | undefined;

@@ -290,2 +290,3 @@ onHidden?: ((value: BvTriggerableEvent) => any) | undefined;

modelValue: Booleanish;
hide: Booleanish;
container: string | HTMLElement | ComponentPublicInstance<HTMLElement>;

@@ -324,3 +325,2 @@ reference: string | HTMLElement | HTMLSpanElement | ComponentPublicInstance<HTMLElement> | (() => HTMLElement | VNode<import("vue").RendererNode, import("vue").RendererElement, {

noAutoClose: Booleanish;
hide: Booleanish;
realtime: Booleanish;

@@ -327,0 +327,0 @@ inline: Booleanish;

@@ -1,1 +0,1 @@

export { useBreadcrumb, useColorMode } from '..';
export { useBreadcrumb, useColorMode, useModal, useModalController } from '..';

@@ -11,2 +11,4 @@ export { default as useAlignment } from './useAlignment';

export { default as useId } from './useId';
export { default as useModal } from './useModal';
export { default as useModalController } from './useModalController';
export { default as useModalManager } from './useModalManager';

@@ -13,0 +15,0 @@ export { default as useSafeScrollLock } from './useSafeScrollLock';

@@ -1,3 +0,13 @@

import { type Ref } from 'vue';
import { type ComponentInternalInstance, type Ref } from 'vue';
export declare const useSharedModalStack: () => {
registry: Ref<ComponentInternalInstance[]>;
stack: Ref<ComponentInternalInstance[]>;
last: import("vue").ComputedRef<ComponentInternalInstance>;
count: import("vue").ComputedRef<number>;
push: (modal: ComponentInternalInstance) => number;
pop: () => ComponentInternalInstance | undefined;
remove: (modal: ComponentInternalInstance) => void;
find: (id: string) => ComponentInternalInstance | null;
};
declare const _default: (modalOpen: Ref<boolean>) => void;
export default _default;

@@ -1,2 +0,2 @@

export type { AlignmentCommon, AlignmentContent, AlignmentHorizontal, AlignmentJustifyContent, AlignmentTextHorizontal, AlignmentVertical, BPopoverDelayObject, BreadcrumbItem, Breakpoint, ButtonType, ButtonVariant, ColorVariant, ContainerPosition, InputType, LinkTarget, Position, Size, SpinnerType, TableField, TableItem, TextColorVariant, TransitionMode, VerticalAlign, } from '..';
export type { AlignmentCommon, AlignmentContent, AlignmentHorizontal, AlignmentJustifyContent, AlignmentTextHorizontal, AlignmentVertical, BModalController, BPopoverDelayObject, BreadcrumbItem, Breakpoint, ButtonType, ButtonVariant, ColorVariant, ContainerPosition, InputType, LinkTarget, Position, Size, SpinnerType, TableField, TableItem, TextColorVariant, TransitionMode, VerticalAlign, } from '..';
export type { BodyProp } from '../../components/BToast/plugin';

@@ -9,2 +9,3 @@ export type { AlignmentCommon } from './AlignmentCommon';

export type { AriaInvalid } from './AriaInvalid';
export type { BModalController } from './BModalController';
export type { BPopoverDelayObject } from './BPopoverDelayObject';

@@ -11,0 +12,0 @@ export type { BPopoverPlacement } from './BPopoverPlacement';

@@ -5,3 +5,3 @@ {

"description": "BootstrapVueNext is an early and lovely component library for Vue 3 & Nuxt 3 based on Bootstrap 5 and Typescript.",
"version": "0.12.2",
"version": "0.12.3",
"license": "MIT",

@@ -8,0 +8,0 @@ "main": "./dist/bootstrap-vue-next.umd.js",

@@ -1,1 +0,1 @@

export {useBreadcrumb, useColorMode} from '..'
export {useBreadcrumb, useColorMode, useModal, useModalController} from '..'

@@ -17,2 +17,4 @@ export {default as useAlignment} from './useAlignment'

export {default as useId} from './useId'
export {default as useModal} from './useModal'
export {default as useModalController} from './useModalController'
export {default as useModalManager} from './useModalManager'

@@ -19,0 +21,0 @@ export {default as useSafeScrollLock} from './useSafeScrollLock'

@@ -0,14 +1,24 @@

import {createSharedComposable, getSSRHandler, tryOnScopeDispose, unrefElement} from '@vueuse/core'
import {
createSharedComposable,
getSSRHandler,
tryOnScopeDispose,
unrefElement,
useCounter,
} from '@vueuse/core'
import {type Ref, watch} from 'vue'
type ComponentInternalInstance,
computed,
getCurrentInstance,
ref,
type Ref,
watch,
} from 'vue'
const MODAL_OPEN_CLASS_NAME = 'modal-open'
const useSharedModalCounter = createSharedComposable(() => {
const {count, inc, dec} = useCounter()
export const useSharedModalStack = createSharedComposable(() => {
const registry: Ref<ComponentInternalInstance[]> = ref([])
const stack: Ref<ComponentInternalInstance[]> = ref([])
const count = computed(() => stack.value.length)
const last = computed(() => stack.value[stack.value.length - 1])
const push = (modal: ComponentInternalInstance) => stack.value.push(modal)
const pop = () => stack.value.pop()
const remove = (modal: ComponentInternalInstance): void => {
stack.value = stack.value.filter((item) => item.uid !== modal.uid)
}
const find = (id: string) => registry.value.find((modal) => modal.exposed!.id === id) || null

@@ -37,8 +47,16 @@ const updateHTMLAttrs = getSSRHandler('updateHTMLAttrs', (selector, attribute, value) => {

return {inc, dec}
return {registry, stack, last, count, push, pop, remove, find}
})
export default (modalOpen: Ref<boolean>): void => {
const {inc, dec} = useSharedModalCounter()
const {registry, push, remove, stack} = useSharedModalStack()
const currentModal = getCurrentInstance()
if (!currentModal || currentModal.type.__name !== 'BModal') {
throw new Error('useModalManager must only use in BModal component')
}
registry.value.push(currentModal)
watch(

@@ -48,5 +66,5 @@ modalOpen,

if (newValue) {
inc()
push(currentModal)
} else if (oldValue && !newValue) {
dec()
remove(currentModal)
}

@@ -53,0 +71,0 @@ },

@@ -68,2 +68,3 @@ import {computed, ref, type Ref} from 'vue'

flags: Record<string, Ref<boolean>>,
usesProvider: Ref<boolean>,
sortBy?: Ref<string | undefined>

@@ -73,7 +74,18 @@ ): TableItem[] => {

if ('isFilterableTable' in flags && flags.isFilterableTable.value === true && props.filter) {
mappedItems = filterItems(mappedItems, props.filter, props.filterable)
const isFilterableTable =
'isFilterableTable' in flags && flags.isFilterableTable.value === true && props.filter
if (
(isFilterableTable && !usesProvider.value) ||
(isFilterableTable && usesProvider.value && flags.noProviderFilteringBoolean.value)
) {
mappedItems = filterItems(mappedItems, props.filter as string, props.filterable)
}
if ('isSortable' in flags && flags.isSortable.value === true) {
const isSortable = 'isSortable' in flags && flags.isSortable.value === true
if (
(isSortable && !usesProvider.value) ||
(isSortable && usesProvider.value && flags.noProviderSortingBoolean.value)
) {
mappedItems = sortItems(

@@ -101,10 +113,7 @@ props.fields,

const computedItems = computed<TableItem[]>(() => {
const items = usesProvider.value
const items = flags.requireItemsMapping.value
? mapItems(internalItems, tableProps, flags, usesProvider, sortBy)
: usesProvider.value
? internalItems.value
: flags.requireItemsMapping.value
? mapItems(internalItems, tableProps, flags, sortBy)
: tableProps.items ?? []
if (usesProvider.value && !flags.noProviderPagingBoolean.value) {
return items
}

@@ -124,5 +133,9 @@ if (tableProps.perPage !== undefined) {

const computedDisplayItems = computed<TableItem[]>(() => {
if (tableProps.perPage === undefined) {
if (
tableProps.perPage === undefined ||
(usesProvider.value && !flags.noProviderPagingBoolean.value)
) {
return computedItems.value
}
return computedItems.value.slice(displayStartEndIdx.value[0], displayStartEndIdx.value[1])

@@ -129,0 +142,0 @@ })

@@ -8,2 +8,3 @@ export type {

AlignmentVertical,
BModalController,
BPopoverDelayObject,

@@ -10,0 +11,0 @@ BreadcrumbItem,

@@ -9,2 +9,3 @@ export type {AlignmentCommon} from './AlignmentCommon'

export type {AriaInvalid} from './AriaInvalid'
export type {BModalController} from './BModalController'
export type {BPopoverDelayObject} from './BPopoverDelayObject'

@@ -11,0 +12,0 @@ export type {BPopoverPlacement} from './BPopoverPlacement'

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc