Merge branch 'dev' into feat/encounter-status-107

This commit is contained in:
Andrian Roshandy
2025-10-12 11:41:49 +07:00
13 changed files with 15 additions and 15 deletions
@@ -74,7 +74,7 @@ function onSelect(item: Item) {
:aria-describedby="`${props.id}-search`" :aria-describedby="`${props.id}-search`"
:class=" :class="
cn( cn(
'w-full justify-between border text-sm font-normal rounded-md px-3 py-2 focus:outline-none focus:ring-1 focus:ring-black dark:focus:ring-white', 'w-full justify-between border md:text-xs 2xl:text-sm font-normal rounded-md px-3 py-2 focus:outline-none focus:ring-1 focus:ring-black dark:focus:ring-white',
{ {
'cursor-not-allowed bg-gray-100 opacity-50 border-gray-300 text-gray-500': props.isDisabled, 'cursor-not-allowed bg-gray-100 opacity-50 border-gray-300 text-gray-500': props.isDisabled,
'bg-white text-black dark:bg-gray-800 dark:text-white dark:border-gray-600 border-gray-400 hover:bg-gray-50 dark:hover:bg-gray-700': !props.isDisabled, 'bg-white text-black dark:bg-gray-800 dark:text-white dark:border-gray-600 border-gray-400 hover:bg-gray-50 dark:hover:bg-gray-700': !props.isDisabled,
@@ -117,7 +117,7 @@ function onSelect(item: Item) {
:value="item.searchValue" :value="item.searchValue"
:class=" :class="
cn( cn(
'flex w-full cursor-pointer items-center justify-between rounded-sm px-2 py-1.5 text-sm', 'flex w-full cursor-pointer items-center justify-between rounded-sm px-2 py-1.5 md:text-xs xl:text-sm',
'focus:outline-none text-black dark:text-white', 'focus:outline-none text-black dark:text-white',
'hover:bg-primary hover:text-white focus:bg-primary focus:text-white', 'hover:bg-primary hover:text-white focus:bg-primary focus:text-white',
'data-[highlighted]:bg-primary data-[highlighted]:text-white', 'data-[highlighted]:bg-primary data-[highlighted]:text-white',
+2 -2
View File
@@ -4,7 +4,7 @@ import { cva } from 'class-variance-authority'
export { default as Button } from './Button.vue' export { default as Button } from './Button.vue'
export const buttonVariants = cva( export const buttonVariants = cva(
'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md md:tex-xs xl:text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0', 'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md md:tex-xs 2xl:text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',
{ {
variants: { variants: {
variant: { variant: {
@@ -19,7 +19,7 @@ export const buttonVariants = cva(
link: 'text-primary underline-offset-4 hover:underline', link: 'text-primary underline-offset-4 hover:underline',
}, },
size: { size: {
default: 'md:h8 xl:h-9 px-4 py-2', default: 'md:h8 2xl:h-9 px-4 py-2',
xs: 'h-7 rounded px-2', xs: 'h-7 rounded px-2',
sm: 'h-8 rounded-md px-3 text-xs', sm: 'h-8 rounded-md px-3 text-xs',
lg: 'h-10 rounded-md px-8', lg: 'h-10 rounded-md px-8',
+1 -1
View File
@@ -21,7 +21,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits)
<CheckboxRoot <CheckboxRoot
v-bind="forwarded" v-bind="forwarded"
:class=" :class="
cn('peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground', cn('peer h-6 w-6 md:h-5 md:w-5 2xl:h-6 2xl:w-6 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground',
props.class)" props.class)"
> >
<CheckboxIndicator class="h-full w-full flex items-center justify-center text-current"> <CheckboxIndicator class="h-full w-full flex items-center justify-center text-current">
@@ -14,7 +14,7 @@ const { formDescriptionId } = useFormField()
<template> <template>
<p <p
:id="formDescriptionId" :id="formDescriptionId"
:class="cn('text-sm text-muted-foreground', props.class)" :class="cn('md:text-xs 2xl:text-sm text-muted-foreground', props.class)"
> >
<slot /> <slot />
</p> </p>
+1 -1
View File
@@ -19,7 +19,7 @@ const delegatedProps = computed(() => {
v-bind="delegatedProps" v-bind="delegatedProps"
:class=" :class="
cn( cn(
'md:!text-xs xl:text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70', 'md:!text-xs 2xl:text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70',
props.class, props.class,
) )
" "
+1 -1
View File
@@ -9,7 +9,7 @@ const props = defineProps<{
<template> <template>
<div class="relative w-full overflow-x-auto"> <div class="relative w-full overflow-x-auto">
<table :class="cn('min-w-full table-fixed caption-bottom text-sm', props.class)"> <table :class="cn('min-w-full table-fixed caption-bottom md:text-xs 2xl:text-sm', props.class)">
<slot /> <slot />
</table> </table>
</div> </div>
+1 -1
View File
@@ -8,7 +8,7 @@ const props = defineProps<{
</script> </script>
<template> <template>
<caption :class="cn('mt-4 text-sm text-muted-foreground', props.class)"> <caption :class="cn('mt-4 md:text-xs 2xl:text-sm text-muted-foreground', props.class)">
<slot /> <slot />
</caption> </caption>
</template> </template>
+1 -1
View File
@@ -25,7 +25,7 @@ const delegatedProps = computed(() => {
<TableCell <TableCell
:class=" :class="
cn( cn(
'p-4 whitespace-nowrap align-middle text-sm text-foreground', 'p-4 whitespace-nowrap align-middle md:text-xs 2xl:text-sm text-foreground',
props.class, props.class,
) )
" "
+1 -1
View File
@@ -20,7 +20,7 @@ const forwardedProps = useForwardProps(delegatedProps)
<TabsTrigger <TabsTrigger
v-bind="forwardedProps" v-bind="forwardedProps"
:class="cn( :class="cn(
'inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm', 'inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 md:text-xs 2xl:text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm',
props.class, props.class,
)" )"
> >
+1 -1
View File
@@ -20,5 +20,5 @@ const modelValue = useVModel(props, 'modelValue', emits, {
</script> </script>
<template> <template>
<textarea v-model="modelValue" :class="cn('flex min-h-20 w-full rounded-md border border-slate-400 bg-white dark:bg-slate-950 px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50', props.class)" /> <textarea v-model="modelValue" :class="cn('flex min-h-20 w-full rounded-md border border-slate-400 bg-white dark:bg-slate-950 px-3 py-2 md:text-xs 2xl:text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50', props.class)" />
</template> </template>
+1 -1
View File
@@ -15,7 +15,7 @@ const delegatedProps = computed(() => {
</script> </script>
<template> <template>
<ToastAction v-bind="delegatedProps" :class="cn('inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive', props.class)"> <ToastAction v-bind="delegatedProps" :class="cn('inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 md:text-xs 2xl:text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive', props.class)">
<slot /> <slot />
</ToastAction> </ToastAction>
</template> </template>
@@ -15,7 +15,7 @@ const delegatedProps = computed(() => {
</script> </script>
<template> <template>
<ToastDescription :class="cn('text-sm opacity-90', props.class)" v-bind="delegatedProps"> <ToastDescription :class="cn('md:text-xs 2xl:text-sm opacity-90', props.class)" v-bind="delegatedProps">
<slot /> <slot />
</ToastDescription> </ToastDescription>
</template> </template>
+1 -1
View File
@@ -15,7 +15,7 @@ const delegatedProps = computed(() => {
</script> </script>
<template> <template>
<ToastTitle v-bind="delegatedProps" :class="cn('text-sm font-semibold [&+div]:text-xs', props.class)"> <ToastTitle v-bind="delegatedProps" :class="cn('md:text-xs 2xl:text-sm font-semibold [&+div]:text-xs', props.class)">
<slot /> <slot />
</ToastTitle> </ToastTitle>
</template> </template>