@chief-editor/ui
Version:
UI Component for chief editor
1 lines • 477 B
JavaScript
import{useRef}from"react";export function useProgressAnimation(e,s){var t=useRef(0),r=Math.abs(e-t.current),o=e>0&&t.current<=0,a=e<=0&&t.current>0;t.current=e;var n=Math.min(4*r+100,400),u=o?100:0;return s?{transition:["stroke "+n+"ms ease-out "+u+"ms","stroke-dashoffset "+n+"ms ease-out "+u+"ms","stroke-dasharray "+n+"ms ease-out "+u+"ms","stroke-width 100ms ease-out "+(a?n:0)+"ms"].join(", ")}:{transition:["width "+n+"ms ease-out","height "+n+"ms ease-out"].join(", ")}}