|
|
|
@ -19,6 +19,7 @@ import { |
|
|
|
import { usePriorityValues } from '@vben/hooks'; |
|
|
|
import { EmptyIcon } from '@vben/icons'; |
|
|
|
import { $t } from '@vben/locales'; |
|
|
|
import { usePreferences } from '@vben/preferences'; |
|
|
|
import { cloneDeep, cn, mergeWithArrayOverride } from '@vben/utils'; |
|
|
|
import { VbenLoading } from '@vben-core/shadcn-ui'; |
|
|
|
|
|
|
|
@ -48,6 +49,8 @@ const { |
|
|
|
formOptions, |
|
|
|
} = usePriorityValues(props, state); |
|
|
|
|
|
|
|
const { isMobile } = usePreferences(); |
|
|
|
|
|
|
|
const slots = useSlots(); |
|
|
|
|
|
|
|
const [Form, formApi] = useTableForm({}); |
|
|
|
@ -91,6 +94,20 @@ const options = computed(() => { |
|
|
|
} |
|
|
|
|
|
|
|
if (mergedOptions.pagerConfig) { |
|
|
|
const mobileLayouts = [ |
|
|
|
'PrevJump', |
|
|
|
'PrevPage', |
|
|
|
'Number', |
|
|
|
'NextPage', |
|
|
|
'NextJump', |
|
|
|
] as any; |
|
|
|
const layouts = [ |
|
|
|
'Total', |
|
|
|
'Sizes', |
|
|
|
'Home', |
|
|
|
...mobileLayouts, |
|
|
|
'End', |
|
|
|
] as readonly string[]; |
|
|
|
mergedOptions.pagerConfig = mergeWithArrayOverride( |
|
|
|
{}, |
|
|
|
mergedOptions.pagerConfig, |
|
|
|
@ -99,18 +116,7 @@ const options = computed(() => { |
|
|
|
background: true, |
|
|
|
pageSizes: [10, 20, 30, 50, 100, 200], |
|
|
|
className: 'mt-2 w-full', |
|
|
|
layouts: [ |
|
|
|
'Total', |
|
|
|
'Sizes', |
|
|
|
'Home', |
|
|
|
'PrevJump', |
|
|
|
'PrevPage', |
|
|
|
'Number', |
|
|
|
'NextPage', |
|
|
|
'NextJump', |
|
|
|
'End', |
|
|
|
// 'FullJump', |
|
|
|
] as any[], |
|
|
|
layouts: isMobile.value ? mobileLayouts : layouts, |
|
|
|
size: 'mini' as const, |
|
|
|
}, |
|
|
|
); |
|
|
|
@ -138,7 +144,6 @@ const vbenFormOptions = computed(() => { |
|
|
|
const formValues = formApi.form.values; |
|
|
|
props.api.reload(formValues); |
|
|
|
}, |
|
|
|
collapseTriggerResize: true, |
|
|
|
commonConfig: { |
|
|
|
componentProps: { |
|
|
|
class: 'w-full', |
|
|
|
@ -150,8 +155,15 @@ const vbenFormOptions = computed(() => { |
|
|
|
}, |
|
|
|
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3', |
|
|
|
}; |
|
|
|
const finalFormOptions: VbenFormProps = mergeWithArrayOverride( |
|
|
|
{}, |
|
|
|
formOptions.value, |
|
|
|
defaultFormProps, |
|
|
|
); |
|
|
|
|
|
|
|
return { |
|
|
|
...mergeWithArrayOverride({}, formOptions.value, defaultFormProps), |
|
|
|
...finalFormOptions, |
|
|
|
collapseTriggerResize: !!finalFormOptions.showCollapseButton, |
|
|
|
}; |
|
|
|
}); |
|
|
|
|
|
|
|
@ -244,7 +256,7 @@ onMounted(() => { |
|
|
|
</Form> |
|
|
|
</slot> |
|
|
|
<div |
|
|
|
class="bg-background-deep z-100 absolute -left-2 bottom-2 h-4 w-[calc(100%+1rem)] overflow-hidden" |
|
|
|
class="bg-background-deep z-100 absolute -left-2 bottom-1 h-2 w-[calc(100%+1rem)] overflow-hidden md:bottom-2 md:h-3" |
|
|
|
></div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|