fix: when opening the tool separately, there is no need to pass the toolbar-tools slot (#4841)
							parent
							
								
									9cf0573921
								
							
						
					
					
						commit
						2c6edafeb2
					
				|  | @ -320,7 +320,7 @@ useVbenForm 返回的第二个参数,是一个对象,包含了一些表单 | |||
| ```ts | ||||
| export interface ActionButtonOptions { | ||||
|   /** 样式 */ | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   /** 是否禁用 */ | ||||
|   disabled?: boolean; | ||||
|   /** 是否加载中 */ | ||||
|  |  | |||
|  | @ -67,7 +67,7 @@ import { SvgTestIcon } from '@vben/icons'; | |||
| </template> | ||||
| ``` | ||||
| 
 | ||||
| ## Tailwind CSS 图标 <Badge text="不推荐" type="danger"/> | ||||
| ## Tailwind CSS 图标 | ||||
| 
 | ||||
| ### 使用 | ||||
| 
 | ||||
|  |  | |||
|  | @ -30,4 +30,6 @@ interface BasicUserInfo { | |||
|   username: string; | ||||
| } | ||||
| 
 | ||||
| export type { BasicOption, BasicUserInfo, SelectOption, TabOption }; | ||||
| type ClassType = Array<object | string> | object | string; | ||||
| 
 | ||||
| export type { BasicOption, BasicUserInfo, ClassType, SelectOption, TabOption }; | ||||
|  |  | |||
|  | @ -40,6 +40,7 @@ | |||
|     "@vben-core/composables": "workspace:*", | ||||
|     "@vben-core/shadcn-ui": "workspace:*", | ||||
|     "@vben-core/shared": "workspace:*", | ||||
|     "@vben-core/typings": "workspace:*", | ||||
|     "@vee-validate/zod": "catalog:", | ||||
|     "@vueuse/core": "catalog:", | ||||
|     "vee-validate": "catalog:", | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| import type { VbenButtonProps } from '@vben-core/shadcn-ui'; | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { FieldOptions, FormContext, GenericObject } from 'vee-validate'; | ||||
| import type { ZodTypeAny } from 'zod'; | ||||
| 
 | ||||
|  | @ -303,7 +304,7 @@ export interface VbenFormProps< | |||
|   /** | ||||
|    * 表单操作区域class | ||||
|    */ | ||||
|   actionWrapperClass?: any; | ||||
|   actionWrapperClass?: ClassType; | ||||
|   /** | ||||
|    * 表单重置回调 | ||||
|    */ | ||||
|  |  | |||
|  | @ -41,6 +41,7 @@ | |||
|     "@vben-core/icons": "workspace:*", | ||||
|     "@vben-core/shadcn-ui": "workspace:*", | ||||
|     "@vben-core/shared": "workspace:*", | ||||
|     "@vben-core/typings": "workspace:*", | ||||
|     "@vueuse/core": "catalog:", | ||||
|     "vue": "catalog:" | ||||
|   } | ||||
|  |  | |||
|  | @ -1,3 +1,5 @@ | |||
| import type { ClassType } from '@vben-core/typings'; | ||||
| 
 | ||||
| import type { DrawerApi } from './drawer-api'; | ||||
| 
 | ||||
| import type { Component, Ref } from 'vue'; | ||||
|  | @ -7,7 +9,7 @@ export interface DrawerProps { | |||
|    * 取消按钮文字 | ||||
|    */ | ||||
|   cancelText?: string; | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   /** | ||||
|    * 是否显示右上角的关闭按钮 | ||||
|    * @default true | ||||
|  | @ -45,11 +47,17 @@ export interface DrawerProps { | |||
|   /** | ||||
|    * 弹窗底部样式 | ||||
|    */ | ||||
|   footerClass?: any; | ||||
|   footerClass?: ClassType; | ||||
|   /** | ||||
|    * 是否显示顶栏 | ||||
|    * @default true | ||||
|    */ | ||||
|   header?: boolean; | ||||
|   /** | ||||
|    * 弹窗头部样式 | ||||
|    */ | ||||
|   headerClass?: any; | ||||
|   headerClass?: ClassType; | ||||
| 
 | ||||
|   /** | ||||
|    * 弹窗是否显示 | ||||
|    * @default false | ||||
|  |  | |||
|  | @ -57,6 +57,7 @@ const { | |||
|   description, | ||||
|   footer: showFooter, | ||||
|   footerClass, | ||||
|   header: showHeader, | ||||
|   headerClass, | ||||
|   loading: showLoading, | ||||
|   modal, | ||||
|  | @ -131,6 +132,7 @@ function handleFocusOutside(e: Event) { | |||
|       @pointer-down-outside="pointerDownOutside" | ||||
|     > | ||||
|       <SheetHeader | ||||
|         v-show="showHeader" | ||||
|         :class=" | ||||
|           cn( | ||||
|             '!flex flex-row items-center justify-between border-b px-6 py-5', | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { | ||||
|   AvatarFallbackProps, | ||||
|   AvatarImageProps, | ||||
|  | @ -11,9 +12,9 @@ import { Avatar, AvatarFallback, AvatarImage } from '../../ui'; | |||
| 
 | ||||
| interface Props extends AvatarRootProps, AvatarFallbackProps, AvatarImageProps { | ||||
|   alt?: string; | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   dot?: boolean; | ||||
|   dotClass?: any; | ||||
|   dotClass?: ClassType; | ||||
| } | ||||
| 
 | ||||
| defineOptions({ | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { | ||||
|   ContextMenuContentProps, | ||||
|   ContextMenuRootEmits, | ||||
|  | @ -22,11 +23,11 @@ import { | |||
| 
 | ||||
| const props = defineProps< | ||||
|   { | ||||
|     class?: any; | ||||
|     contentClass?: any; | ||||
|     class?: ClassType; | ||||
|     contentClass?: ClassType; | ||||
|     contentProps?: ContextMenuContentProps; | ||||
|     handlerData?: Record<string, any>; | ||||
|     itemClass?: any; | ||||
|     itemClass?: ClassType; | ||||
|     menus: (data: any) => IContextMenuItem[]; | ||||
|   } & ContextMenuRootProps | ||||
| >(); | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { | ||||
|   HoverCardContentProps, | ||||
|   HoverCardRootEmits, | ||||
|  | @ -12,8 +13,8 @@ import { useForwardPropsEmits } from 'radix-vue'; | |||
| import { HoverCard, HoverCardContent, HoverCardTrigger } from '../../ui'; | ||||
| 
 | ||||
| interface Props extends HoverCardRootProps { | ||||
|   class?: any; | ||||
|   contentClass?: any; | ||||
|   class?: ClassType; | ||||
|   contentClass?: ClassType; | ||||
|   contentProps?: HoverCardContentProps; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { | ||||
|   PopoverContentProps, | ||||
|   PopoverRootEmits, | ||||
|  | @ -16,8 +17,8 @@ import { | |||
| } from '../../ui'; | ||||
| 
 | ||||
| interface Props extends PopoverRootProps { | ||||
|   class?: any; | ||||
|   contentClass?: any; | ||||
|   class?: ClassType; | ||||
|   contentClass?: ClassType; | ||||
|   contentProps?: PopoverContentProps; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,4 +1,6 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| 
 | ||||
| import { computed, ref } from 'vue'; | ||||
| 
 | ||||
| import { cn } from '@vben-core/shared/utils'; | ||||
|  | @ -6,9 +8,9 @@ import { cn } from '@vben-core/shared/utils'; | |||
| import { ScrollArea, ScrollBar } from '../../ui'; | ||||
| 
 | ||||
| interface Props { | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   horizontal?: boolean; | ||||
|   scrollBarClass?: any; | ||||
|   scrollBarClass?: ClassType; | ||||
|   shadow?: boolean; | ||||
|   shadowBorder?: boolean; | ||||
|   shadowBottom?: boolean; | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| import type { TooltipContentProps } from 'radix-vue'; | ||||
| 
 | ||||
| import type { StyleValue } from 'vue'; | ||||
|  | @ -11,7 +12,7 @@ import { | |||
| } from '../../ui'; | ||||
| 
 | ||||
| interface Props { | ||||
|   contentClass?: any; | ||||
|   contentClass?: ClassType; | ||||
|   contentStyle?: StyleValue; | ||||
|   delayDuration?: number; | ||||
|   side?: TooltipContentProps['side']; | ||||
|  |  | |||
|  | @ -1,4 +1,6 @@ | |||
| <script setup lang="ts"> | ||||
| import type { ClassType } from '@vben-core/typings'; | ||||
| 
 | ||||
| import { computed, ref } from 'vue'; | ||||
| 
 | ||||
| import { cn } from '@vben-core/shared/utils'; | ||||
|  | @ -18,8 +20,8 @@ import DialogOverlay from './DialogOverlay.vue'; | |||
| const props = withDefaults( | ||||
|   defineProps< | ||||
|     { | ||||
|       class?: any; | ||||
|       closeClass?: any; | ||||
|       class?: ClassType; | ||||
|       closeClass?: ClassType; | ||||
|       modal?: boolean; | ||||
|       open?: boolean; | ||||
|       showClose?: boolean; | ||||
|  |  | |||
|  | @ -1,3 +1,5 @@ | |||
| import type { ClassType } from '@vben/types'; | ||||
| 
 | ||||
| import type { CSSProperties } from 'vue'; | ||||
| 
 | ||||
| export interface CaptchaData { | ||||
|  | @ -72,7 +74,7 @@ export interface PointSelectionCaptchaProps | |||
| } | ||||
| 
 | ||||
| export interface SliderCaptchaProps { | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   /** | ||||
|    * @description 滑块的样式 | ||||
|    * @default {} | ||||
|  |  | |||
|  | @ -87,3 +87,11 @@ | |||
| .vxe-table-custom--checkbox-option:hover { | ||||
|   background: none !important; | ||||
| } | ||||
| 
 | ||||
| .vxe-toolbar { | ||||
|   padding-top: 0; | ||||
| } | ||||
| 
 | ||||
| .vxe-tools--operate:not(:has(button)) { | ||||
|   margin-left: 0; | ||||
| } | ||||
|  |  | |||
|  | @ -1,4 +1,4 @@ | |||
| import type { DeepPartial } from '@vben/types'; | ||||
| import type { ClassType, DeepPartial } from '@vben/types'; | ||||
| import type { VbenFormProps } from '@vben-core/form-ui'; | ||||
| import type { | ||||
|   VxeGridListeners, | ||||
|  | @ -30,11 +30,11 @@ export interface VxeGridProps { | |||
|   /** | ||||
|    * 组件class | ||||
|    */ | ||||
|   class?: any; | ||||
|   class?: ClassType; | ||||
|   /** | ||||
|    * vxe-grid class | ||||
|    */ | ||||
|   gridClass?: any; | ||||
|   gridClass?: ClassType; | ||||
|   /** | ||||
|    * vxe-grid 配置 | ||||
|    */ | ||||
|  |  | |||
|  | @ -137,10 +137,6 @@ const options = computed(() => { | |||
|     mergedOptions.proxyConfig.autoLoad = false; | ||||
|   } | ||||
| 
 | ||||
|   if (!showToolbar.value && mergedOptions.toolbarConfig) { | ||||
|     mergedOptions.toolbarConfig.enabled = false; | ||||
|   } | ||||
| 
 | ||||
|   if (mergedOptions.pagerConfig) { | ||||
|     const mobileLayouts = [ | ||||
|       'PrevJump', | ||||
|  |  | |||
|  | @ -87,7 +87,7 @@ function changeLoading() { | |||
|         <Button class="mr-2" type="primary" @click="changeLoading"> | ||||
|           显示loading | ||||
|         </Button> | ||||
|         <Button class="mr-2" type="primary" @click="changeStripe"> | ||||
|         <Button type="primary" @click="changeStripe"> | ||||
|           {{ showStripe ? '隐藏' : '显示' }}斑马纹 | ||||
|         </Button> | ||||
|       </template> | ||||
|  |  | |||
|  | @ -1292,6 +1292,9 @@ importers: | |||
|       '@vben-core/shared': | ||||
|         specifier: workspace:* | ||||
|         version: link:../../base/shared | ||||
|       '@vben-core/typings': | ||||
|         specifier: workspace:* | ||||
|         version: link:../../base/typings | ||||
|       '@vee-validate/zod': | ||||
|         specifier: 'catalog:' | ||||
|         version: 4.14.7(vue@3.5.12(typescript@5.6.3)) | ||||
|  | @ -1370,6 +1373,9 @@ importers: | |||
|       '@vben-core/shared': | ||||
|         specifier: workspace:* | ||||
|         version: link:../../base/shared | ||||
|       '@vben-core/typings': | ||||
|         specifier: workspace:* | ||||
|         version: link:../../base/typings | ||||
|       '@vueuse/core': | ||||
|         specifier: 'catalog:' | ||||
|         version: 11.2.0(vue@3.5.12(typescript@5.6.3)) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Vben
						Vben