Skip to content
This repository was archived by the owner on Mar 27, 2025. It is now read-only.

Commit bb72530

Browse files
committed
fix: defineSlot issues
fix: import interface from other vue file chore: update packages fix: no-dupe-keys issues
1 parent 2a2b54e commit bb72530

File tree

13 files changed

+1035
-594
lines changed

13 files changed

+1035
-594
lines changed

apps/docs/package.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,24 @@
1212
},
1313
"devDependencies": {
1414
"@iconify-json/bi": "^1.1.17",
15-
"@iconify-json/simple-icons": "^1.1.55",
16-
"@rushstack/eslint-patch": "^1.3.0",
15+
"@iconify-json/simple-icons": "^1.1.57",
16+
"@rushstack/eslint-patch": "^1.3.2",
1717
"@tsconfig/node20": "^1.0.1",
18-
"@types/node": "^20.2.5",
18+
"@types/node": "^20.3.1",
1919
"@vue/eslint-config-prettier": "^7.1.0",
2020
"@vue/eslint-config-typescript": "^11.0.3",
2121
"@vue/tsconfig": "^0.4.0",
22-
"@vueuse/core": "^10.1.2",
22+
"@vueuse/core": "^10.2.0",
2323
"bootstrap": "^5.3.0",
2424
"bootstrap-vue-next": "workspace:^",
2525
"cross-env": "^7.0.3",
26-
"eslint": "^8.42.0",
27-
"eslint-define-config": "^1.20.0",
28-
"eslint-plugin-vue": "^9.14.1",
26+
"eslint": "^8.43.0",
27+
"eslint-define-config": "^1.21.0",
28+
"eslint-plugin-vue": "^9.15.0",
2929
"prettier": "^2.8.8",
3030
"typescript": "^5.1.3",
31-
"unplugin-icons": "^0.16.2",
32-
"vitepress": "1.0.0-beta.1",
31+
"unplugin-icons": "^0.16.3",
32+
"vitepress": "1.0.0-beta.3",
3333
"vue": "^3.3.4"
3434
},
3535
"lint-staged": {

apps/playground/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@
1515
},
1616
"devDependencies": {
1717
"@tsconfig/node20": "^1.0.1",
18-
"@types/node": "^20.2.5",
18+
"@types/node": "^20.3.1",
1919
"@vitejs/plugin-vue": "^4.2.3",
2020
"@vue/tsconfig": "^0.4.0",
21-
"bootstrap-styles": "^5.2.3",
22-
"rollup-plugin-visualizer": "^5.9.0",
21+
"bootstrap-styles": "^5.3.0",
22+
"rollup-plugin-visualizer": "^5.9.2",
2323
"typescript": "^5.1.3",
2424
"vite": "^4.3.9",
25-
"vue-tsc": "^1.6.5"
25+
"vue-tsc": "^1.8.1"
2626
},
2727
"lint-staged": {
2828
"*.{js,ts,vue}": "eslint --cache --fix",

packages/bootstrap-vue-next/package.json

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
"dev": "vite --port 5174",
3030
"build-only": "vite build",
3131
"type-check": "vue-tsc --noEmit -p tsconfig.app.json --composite false",
32+
"type-check-emit": "vue-tsc --declaration --emitDeclarationOnly -p tsconfig.app.json --composite false",
3233
"preview": "vite preview",
3334
"build": "pnpm run type-check && pnpm run build-only",
3435
"lint": "eslint --ext .js,.ts,.vue --ignore-path ../../.gitignore --fix src",
@@ -46,42 +47,42 @@
4647
},
4748
"dependencies": {
4849
"@floating-ui/vue": "^1.0.1",
49-
"@vueuse/core": "^10.1.2"
50+
"@vueuse/core": "^10.2.0"
5051
},
5152
"devDependencies": {
52-
"@floating-ui/core": "^1.2.6",
53-
"@rushstack/eslint-patch": "^1.3.0",
53+
"@floating-ui/core": "^1.3.1",
54+
"@rushstack/eslint-patch": "^1.3.2",
5455
"@tsconfig/node20": "^1.0.1",
55-
"@types/node": "^20.2.5",
56+
"@types/node": "^20.3.1",
5657
"@vitejs/plugin-vue": "^4.2.3",
57-
"@vitest/coverage-c8": "^0.31.4",
58+
"@vitest/coverage-c8": "^0.32.2",
5859
"@vue/compiler-dom": "^3.3.4",
5960
"@vue/eslint-config-prettier": "^7.1.0",
6061
"@vue/eslint-config-typescript": "^11.0.3",
6162
"@vue/runtime-core": "^3.3.4",
6263
"@vue/shared": "^3.3.4",
63-
"@vue/test-utils": "^2.3.2",
64+
"@vue/test-utils": "^2.4.0",
6465
"@vue/tsconfig": "^0.4.0",
65-
"@vueuse/shared": "^10.1.2",
66+
"@vueuse/shared": "^10.2.0",
6667
"bootstrap": "^5.3.0",
67-
"c8": "^7.14.0",
68+
"c8": "^8.0.0",
6869
"csstype": "^3.1.2",
69-
"eslint": "^8.42.0",
70-
"eslint-define-config": "^1.20.0",
71-
"eslint-plugin-vue": "^9.14.1",
70+
"eslint": "^8.43.0",
71+
"eslint-define-config": "^1.21.0",
72+
"eslint-plugin-vue": "^9.15.0",
7273
"happy-dom": "^9.20.3",
7374
"jsdom": "^22.1.0",
7475
"prettier": "^2.8.8",
75-
"rollup": "^3.23.0",
76-
"rollup-plugin-visualizer": "^5.9.0",
77-
"sass": "^1.62.1",
76+
"rollup": "^3.25.1",
77+
"rollup-plugin-visualizer": "^5.9.2",
78+
"sass": "^1.63.6",
7879
"typescript": "^5.1.3",
7980
"vite": "^4.3.9",
8081
"vite-plugin-dts": "^2.3.0",
81-
"vitest": "^0.31.4",
82+
"vitest": "^0.32.2",
8283
"vue": "^3.3.4",
8384
"vue-router": "^4.2.2",
84-
"vue-tsc": "^1.6.5"
85+
"vue-tsc": "^1.8.1"
8586
},
8687
"repository": {
8788
"type": "git",

packages/bootstrap-vue-next/src/components/BBadge/BBadge.vue

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@
88
import {isLink, pluckProps} from '../../utils'
99
import {useBooleanish} from '../../composables'
1010
import {computed} from 'vue'
11-
import type {Booleanish, ColorVariant} from '../../types'
12-
import BLink, {type BLinkProps} from '../BLink/BLink.vue'
11+
import type {Booleanish} from '../../types'
12+
import BLink from '../BLink/BLink.vue'
13+
import type {BLinkProps} from '../../types/BLinkProps'
1314
1415
defineSlots<{
15-
default?: Record<string, never>
16+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
17+
default?: (props: Record<string, never>) => any
1618
}>()
1719
1820
const props = withDefaults(
@@ -22,7 +24,6 @@ const props = withDefaults(
2224
tag?: string
2325
textIndicator?: Booleanish
2426
dotIndicator?: Booleanish
25-
variant?: ColorVariant | null
2627
} & Omit<BLinkProps, 'event' | 'routerTag'>
2728
>(),
2829
{

packages/bootstrap-vue-next/src/components/BBreadcrumb/BBreadcrumbItem.vue

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,27 +17,26 @@
1717
import {pluckProps} from '../../utils'
1818
import {useBooleanish} from '../../composables'
1919
import {computed} from 'vue'
20-
import BLink, {type BLinkProps} from '../BLink/BLink.vue'
21-
import type {Booleanish} from '../../types'
20+
import BLink from '../BLink/BLink.vue'
21+
import type {BLinkProps} from '../../types/BLinkProps'
2222
2323
defineSlots<{
24-
default?: Record<string, never>
24+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
25+
default?: (props: Record<string, never>) => any
2526
}>()
2627
2728
const props = withDefaults(
2829
defineProps<
2930
{
30-
active?: Booleanish
3131
ariaCurrent?: string
32-
disabled?: Booleanish
3332
text?: string
3433
} & Omit<BLinkProps, 'event' | 'routerTag'>
3534
>(),
3635
{
37-
active: false,
3836
ariaCurrent: 'location',
3937
text: undefined,
4038
// Link props
39+
active: false,
4140
activeClass: 'router-link-active',
4241
append: false,
4342
disabled: false,

packages/bootstrap-vue-next/src/components/BButton/BButton.vue

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,35 +28,33 @@
2828
import {computed} from 'vue'
2929
import BSpinner from '../BSpinner.vue'
3030
import {useBooleanish} from '../../composables'
31-
import type {Booleanish, ButtonType, ButtonVariant, LinkTarget, Size} from '../../types'
31+
import type {Booleanish, ButtonType, ButtonVariant, Size} from '../../types'
3232
import {isLink} from '../../utils'
33-
import BLink, {type BLinkProps} from '../BLink/BLink.vue'
33+
import BLink from '../BLink/BLink.vue'
3434
import {useVModel} from '@vueuse/core'
35+
import type {BLinkProps} from '../../types/BLinkProps'
3536
3637
defineSlots<{
37-
default?: Record<string, never>
38-
loading?: Record<string, never>
38+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
39+
default?: (props: Record<string, never>) => any
40+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
41+
loading?: (props: Record<string, never>) => any
3942
}>()
4043
4144
const props = withDefaults(
4245
defineProps<
4346
{
44-
active?: Booleanish
45-
disabled?: Booleanish
46-
href?: string
4747
pill?: Booleanish
4848
pressed?: Booleanish
49-
rel?: string
5049
size?: Size
5150
squared?: Booleanish
5251
tag?: string
53-
target?: LinkTarget
5452
type?: ButtonType
5553
variant?: ButtonVariant | null
5654
loading?: Booleanish
5755
loadingMode?: 'fill' | 'inline'
5856
block?: Booleanish
59-
} & BLinkProps
57+
} & Omit<BLinkProps, 'variant'>
6058
>(),
6159
{
6260
active: false,

packages/bootstrap-vue-next/src/components/BDropdown/BDropdown.vue

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,14 @@
5656
</template>
5757

5858
<script setup lang="ts">
59-
import {flip, type Middleware, offset, shift, type Strategy, useFloating} from '@floating-ui/vue'
59+
import {
60+
flip,
61+
offset as floatingOffset,
62+
type Middleware,
63+
shift,
64+
type Strategy,
65+
useFloating,
66+
} from '@floating-ui/vue'
6067
import {onClickOutside, useToNumber, useVModel} from '@vueuse/core'
6168
import {computed, provide, ref, watch} from 'vue'
6269
import {useBooleanish, useId} from '../../composables'
@@ -218,7 +225,7 @@ const floatingMiddleware = computed<Middleware[]>(() => {
218225
typeof props.offset === 'string' || typeof props.offset === 'number'
219226
? offsetToNumber.value
220227
: props.offset
221-
const arr: Middleware[] = [offset(localOffset)]
228+
const arr: Middleware[] = [floatingOffset(localOffset)]
222229
if (noFlipBoolean.value === false) {
223230
arr.push(flip())
224231
}

packages/bootstrap-vue-next/src/components/BLink/BLink.vue

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -28,37 +28,12 @@ import {useBooleanish} from '../../composables'
2828
import {collapseInjectionKey, navbarInjectionKey} from '../../utils'
2929
import {computed, getCurrentInstance, inject, type PropType, useAttrs} from 'vue'
3030
import type {RouteLocation, RouteLocationRaw} from 'vue-router'
31-
32-
export interface BLinkProps {
33-
active?: Booleanish
34-
activeClass?: string
35-
append?: Booleanish
36-
disabled?: Booleanish
37-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
38-
event?: string | any[]
39-
href?: string
40-
// noPrefetch: {type: [Boolean, String] as PropType<Booleanish>, default: false},
41-
// prefetch: {type: [Boolean, String] as PropType<Booleanish>, default: null},
42-
rel?: string
43-
replace?: Booleanish
44-
routerComponentName?: string
45-
routerTag?: string
46-
target?: LinkTarget
47-
to?: RouteLocationRaw
48-
variant?: ColorVariant | null
49-
opacity?: 10 | 25 | 50 | 75 | 100 | '10' | '25' | '50' | '75' | '100'
50-
opacityHover?: 10 | 25 | 50 | 75 | 100 | '10' | '25' | '50' | '75' | '100'
51-
underlineVariant?: ColorVariant | null
52-
underlineOffset?: 1 | 2 | 3 | '1' | '2' | '3'
53-
underlineOffsetHover?: 1 | 2 | 3 | '1' | '2' | '3'
54-
underlineOpacity?: 0 | 10 | 25 | 50 | 75 | 100 | '0' | '10' | '25' | '50' | '75' | '100'
55-
underlineOpacityHover?: 0 | 10 | 25 | 50 | 75 | 100 | '0' | '10' | '25' | '50' | '75' | '100'
56-
icon?: Booleanish
57-
}
31+
import type {BLinkProps} from '../../types/BLinkProps'
5832
5933
// TODO this component will likely have an issue with inheritAttrs
6034
defineSlots<{
61-
default?: Record<string, never>
35+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
36+
default?: (props: Record<string, never>) => any
6237
}>()
6338
6439
const props = withDefaults(defineProps<BLinkProps>(), {

packages/bootstrap-vue-next/src/components/BNav/BNavItem.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,13 @@
1414
</template>
1515

1616
<script setup lang="ts">
17-
import BLink, {type BLinkProps} from '../BLink/BLink.vue'
17+
import BLink from '../BLink/BLink.vue'
1818
import {useBooleanish} from '../../composables'
19+
import type {BLinkProps} from '../../types/BLinkProps'
1920
2021
defineSlots<{
21-
default?: Record<string, never>
22+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
23+
default?: (props: Record<string, never>) => any
2224
}>()
2325
2426
const props = withDefaults(

packages/bootstrap-vue-next/src/components/BNavbar/BNavbarBrand.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@
77
<script setup lang="ts">
88
import {isLink, pluckProps} from '../../utils'
99
import {computed} from 'vue'
10-
import BLink, {type BLinkProps} from '../BLink/BLink.vue'
10+
import BLink from '../BLink/BLink.vue'
11+
import type {BLinkProps} from '../../types/BLinkProps'
1112
1213
defineSlots<{
13-
default?: Record<string, never>
14+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
15+
default?: (props: Record<string, never>) => any
1416
}>()
1517
1618
const props = withDefaults(
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import type {RouteLocationRaw} from 'vue-router'
2+
import type {ColorVariant} from './ColorVariant'
3+
import type {LinkTarget} from './LinkTarget'
4+
import type {Booleanish} from './Booleanish'
5+
6+
export interface BLinkProps {
7+
active?: Booleanish
8+
activeClass?: string
9+
append?: Booleanish
10+
disabled?: Booleanish
11+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
12+
event?: string | any[]
13+
href?: string
14+
// noPrefetch: {type: [Boolean, String] as PropType<Booleanish>, default: false},
15+
// prefetch: {type: [Boolean, String] as PropType<Booleanish>, default: null},
16+
rel?: string
17+
replace?: Booleanish
18+
routerComponentName?: string
19+
routerTag?: string
20+
target?: LinkTarget
21+
to?: RouteLocationRaw
22+
variant?: ColorVariant | null
23+
opacity?: 10 | 25 | 50 | 75 | 100 | '10' | '25' | '50' | '75' | '100'
24+
opacityHover?: 10 | 25 | 50 | 75 | 100 | '10' | '25' | '50' | '75' | '100'
25+
underlineVariant?: ColorVariant | null
26+
underlineOffset?: 1 | 2 | 3 | '1' | '2' | '3'
27+
underlineOffsetHover?: 1 | 2 | 3 | '1' | '2' | '3'
28+
underlineOpacity?: 0 | 10 | 25 | 50 | 75 | 100 | '0' | '10' | '25' | '50' | '75' | '100'
29+
underlineOpacityHover?: 0 | 10 | 25 | 50 | 75 | 100 | '0' | '10' | '25' | '50' | '75' | '100'
30+
icon?: Booleanish
31+
}

packages/nuxt/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,20 +33,20 @@
3333
"bootstrap-vue-next": "workspace:^"
3434
},
3535
"dependencies": {
36-
"@nuxt/kit": "^3.5.2"
36+
"@nuxt/kit": "^3.6.0"
3737
},
3838
"devDependencies": {
3939
"@nuxt/eslint-config": "^0.1.1",
4040
"@nuxt/module-builder": "^0.4.0",
41-
"@nuxt/schema": "^3.5.2",
42-
"@rushstack/eslint-patch": "^1.3.0",
41+
"@nuxt/schema": "^3.6.0",
42+
"@rushstack/eslint-patch": "^1.3.2",
4343
"@vue/eslint-config-prettier": "^7.1.0",
4444
"bootstrap-vue-next": "workspace:^",
45-
"eslint": "^8.42.0",
46-
"eslint-define-config": "^1.20.0",
47-
"nuxt": "^3.5.2",
45+
"eslint": "^8.43.0",
46+
"eslint-define-config": "^1.21.0",
47+
"nuxt": "^3.6.0",
4848
"prettier": "^2.8.8",
49-
"unimport": "^3.0.7",
49+
"unimport": "^3.0.8",
5050
"vue": "^3.3.4"
5151
},
5252
"repository": {

0 commit comments

Comments
 (0)