Skip to content

Commit b14cf27

Browse files
author
issayah
committed
BSpinner script setup conversion
1 parent e356d97 commit b14cf27

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

src/components/BSpinner.vue

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -11,32 +11,32 @@
1111
</component>
1212
</template>
1313

14-
<script lang="ts">
15-
import {computed, defineComponent, PropType} from 'vue'
16-
import {ColorVariant, SpinnerType} from '../types'
14+
<script setup lang="ts">
15+
// import type {BSpinnerProps} from '@/types/components'
16+
import {computed} from 'vue'
17+
import type {ColorVariant, SpinnerType} from '@/types'
1718
18-
export default defineComponent({
19-
name: 'BSpinner',
20-
props: {
21-
label: {type: String},
22-
role: {type: String, default: 'status'},
23-
small: {type: Boolean, default: false},
24-
tag: {type: String, default: 'span'},
25-
type: {type: String as PropType<SpinnerType>, default: 'border'},
26-
variant: {type: String as PropType<ColorVariant>},
27-
},
28-
setup(props) {
29-
const classes = computed(() => ({
30-
'spinner-border': props.type === 'border',
31-
'spinner-border-sm': props.type === 'border' && props.small,
32-
'spinner-grow': props.type === 'grow',
33-
'spinner-grow-sm': props.type === 'grow' && props.small,
34-
[`text-${props.variant}`]: !!props.variant,
35-
}))
19+
interface BSpinnerProps {
20+
label: string
21+
role?: string
22+
small?: boolean
23+
tag?: string
24+
type?: SpinnerType
25+
variant?: ColorVariant
26+
}
3627
37-
return {
38-
classes,
39-
}
40-
},
28+
const props = withDefaults(defineProps<BSpinnerProps>(), {
29+
role: 'status',
30+
small: false,
31+
tag: 'span',
32+
type: 'border',
4133
})
34+
35+
const classes = computed(() => ({
36+
'spinner-border': props.type === 'border',
37+
'spinner-border-sm': props.type === 'border' && props.small,
38+
'spinner-grow': props.type === 'grow',
39+
'spinner-grow-sm': props.type === 'grow' && props.small,
40+
[`text-${props.variant}`]: !!props.variant,
41+
}))
4242
</script>

0 commit comments

Comments
 (0)