resizable

Handle pill with spring scale on drag

Handle pill with spring scale on drag

Загрузка превью…

src/resizable/c-resizable-6.vue

<script setup lang="ts">
import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/components/ui/resizable"
</script>

<template>
  <div class="mx-auto w-full max-w-lg">
    <ResizablePanelGroup direction="horizontal" class="rounded-2xl min-h-[200px] border">
      <ResizablePanel :default-size="30">
        <div class="flex h-full items-center justify-center p-6">
          <span class="text-sm font-semibold">Sidebar</span>
        </div>
      </ResizablePanel>
      <ResizableHandle
        class="before:bg-muted-foreground/20 hover:before:bg-muted-foreground/40 active:before:bg-primary before:pointer-events-none before:absolute before:top-1/2 before:left-1/2 before:z-10 before:h-8 before:w-1 before:-translate-x-1/2 before:-translate-y-1/2 before:scale-y-75 before:rounded-full before:transition-all before:duration-300 before:ease-[cubic-bezier(0.32,0.72,0,1)] hover:before:scale-y-100 active:before:h-14 active:before:w-1.5 active:before:scale-y-100"
      />
      <ResizablePanel :default-size="70">
        <div class="flex h-full items-center justify-center p-6">
          <span class="text-sm font-semibold">Content</span>
        </div>
      </ResizablePanel>
    </ResizablePanelGroup>
  </div>
</template>

Установка

npx shadcn-vue@latest add https://revueui.rootapi.dev/r/c-resizable-6.json

Зависимости реестра

Источник: порт из ReUI (Keenthemes, MIT)